From 2d4971c60359feceaf6a5ff01ea36aef7f2d5242 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 29 Mar 2018 14:54:52 +0200 Subject: [PATCH 0001/1272] [ui5-project]Initial commit --- packages/project/.editorconfig | 14 + packages/project/.eslintignore | 13 + packages/project/.eslintrc.js | 50 + packages/project/.gitattributes | 2 + packages/project/.github/ISSUE_TEMPLATE.md | 30 + packages/project/.gitignore | 59 ++ packages/project/.travis.yml | 4 + packages/project/CONTRIBUTING.md | 3 + packages/project/LICENSE.txt | 235 +++++ packages/project/NOTICE.txt | 1 + packages/project/README.md | 242 +++++ packages/project/index.js | 10 + packages/project/jsdoc.json | 22 + packages/project/lib/normalizer.js | 67 ++ packages/project/lib/projectPreprocessor.js | 207 ++++ packages/project/lib/translators/npm.js | 322 ++++++ packages/project/lib/translators/static.js | 38 + packages/project/package.json | 103 ++ .../build/application.a/dest-dev/index.html | 9 + .../build/application.a/dest-dev/test.js | 5 + .../build/application.a/dest/index.html | 9 + .../build/application.a/dest/test-dbg.js | 5 + .../expected/build/application.a/dest/test.js | 1 + .../dest/embedded/i18n/i18n.properties | 1 + .../dest/embedded/i18n/i18n_de.properties | 1 + .../application.b/dest/embedded/manifest.json | 13 + .../application.b/dest/i18n/i18n.properties | 1 + .../dest/i18n/i18n_de.properties | 1 + .../build/application.b/dest/manifest.json | 13 + .../dest/resources/library/d/.library | 11 + .../dest/resources/library/d/some-dbg.js | 4 + .../dest/resources/library/d/some.js | 4 + .../dest/test-resources/library/d/Test.html | 0 .../dest/resources/library/e/.library | 11 + .../dest/resources/library/e/some-dbg.js | 6 + .../dest/resources/library/e/some.js | 6 + .../dest/test-resources/library/e/Test.html | 0 .../application.a/index_bufferTest.html | 9 + .../index_readableStreamTest.html | 9 + .../application.a/index_stringTest.html | 9 + .../test/fixtures/application.a/package.json | 13 + .../test/fixtures/application.a/ui5.yaml | 5 + .../fixtures/application.a/webapp/index.html | 9 + .../fixtures/application.a/webapp/test.js | 5 + .../test/fixtures/application.b/package.json | 13 + .../test/fixtures/application.b/ui5.yaml | 5 + .../webapp/embedded/i18n/i18n.properties | 1 + .../webapp/embedded/i18n/i18n_de.properties | 1 + .../webapp/embedded/i18n_fr.properties | 1 + .../webapp/embedded/manifest.json | 13 + .../application.b/webapp/i18n.properties | 1 + .../application.b/webapp/i18n/i18n.properties | 1 + .../webapp/i18n/i18n_de.properties | 1 + .../application.b/webapp/i18n/l10n.properties | 1 + .../application.b/webapp/manifest.json | 13 + .../test/fixtures/application.c/package.json | 13 + .../fixtures/application.c/src/manifest.json | 13 + .../test/fixtures/application.c/ui5.yaml | 9 + .../test/fixtures/application.c2/package.json | 13 + .../fixtures/application.c2/src/manifest.json | 13 + .../test/fixtures/application.c2/ui5.yaml | 9 + .../test/fixtures/application.c3/package.json | 13 + .../fixtures/application.c3/src/manifest.json | 13 + .../test/fixtures/application.c3/ui5.yaml | 9 + .../test/fixtures/application.d/package.json | 12 + .../test/fixtures/application.d/ui5.yaml | 5 + .../application.d/webapp/manifest.json | 13 + .../test/fixtures/application.e/package.json | 13 + .../test/fixtures/application.e/ui5.yaml | 5 + .../application.e/webapp/manifest.json | 13 + .../test/fixtures/application.f/package.json | 18 + .../test/fixtures/application.f/ui5.yaml | 5 + .../application.f/webapp/manifest.json | 13 + .../collection/library.a/package.json | 9 + .../library.a/src/library/a/.library | 17 + .../library/a/themes/base/library.source.less | 6 + .../library.a/test/library/a/Test.html | 0 .../fixtures/collection/library.a/ui5.yaml | 5 + .../collection/library.b/package.json | 9 + .../library.b/src/library/b/.library | 17 + .../library.b/test/library/b/Test.html | 0 .../fixtures/collection/library.b/ui5.yaml | 5 + .../collection/library.c/package.json | 9 + .../library.c/src/library/c/.library | 17 + .../library.c/test/LibraryC/Test.html | 0 .../fixtures/collection/library.c/ui5.yaml | 5 + .../test/fixtures/collection/package.json | 18 + .../project/test/fixtures/fsInterface/foo.txt | 1 + .../fixtures/glob/application.a/package.json | 0 .../test/fixtures/glob/application.a/ui5.yaml | 5 + .../glob/application.a/webapp/index.html | 0 .../glob/application.a/webapp/test.js | 0 .../fixtures/glob/application.b/package.json | 0 .../test/fixtures/glob/application.b/ui5.yaml | 5 + .../webapp/embedded/i18n/i18n.properties | 0 .../webapp/embedded/i18n/i18n_de.properties | 0 .../webapp/embedded/i18n_fr.properties | 0 .../webapp/embedded/manifest.json | 0 .../glob/application.b/webapp/i18n.properties | 0 .../application.b/webapp/i18n/i18n.properties | 0 .../webapp/i18n/i18n_de.properties | 0 .../application.b/webapp/i18n/l10n.properties | 0 .../glob/application.b/webapp/manifest.json | 0 .../project/test/fixtures/glob/package.json | 0 .../fixtures/init-application/package.json | 12 + .../fixtures/init-application/webapp/.gitkeep | 0 .../webapp/.gitkeep | 0 .../init-invalid-webapp-src/package.json | 12 + .../init-invalid-webapp-src/src/.gitkeep | 0 .../init-invalid-webapp-src/webapp/.gitkeep | 0 .../test/fixtures/init-library/package.json | 12 + .../test/fixtures/init-library/src/.gitkeep | 0 .../test/fixtures/init-library/test/.gitkeep | 0 .../test/fixtures/lbt/modules/bundle.js | 12 + .../modules/declare_function_expr_scope.js | 43 + .../declare_function_invocation_scope.js | 41 + .../fixtures/lbt/modules/declare_toplevel.js | 36 + .../lbt/modules/define_toplevel_named.js | 4 + .../lbt/modules/define_toplevel_unnamed.js | 4 + .../test/fixtures/lbt/modules/not_a_module.js | 1 + .../main/src/library/d/.library | 11 + .../main/src/library/d/some.js | 4 + .../main/test/library/d/Test.html | 0 .../fixtures/library.d-depender/package.json | 11 + .../test/fixtures/library.d-depender/ui5.yaml | 11 + .../library.d/main/src/library/d/.library | 11 + .../library.d/main/src/library/d/some.js | 4 + .../library.d/main/test/library/d/Test.html | 0 .../test/fixtures/library.d/package.json | 9 + .../project/test/fixtures/library.d/ui5.yaml | 10 + .../test/fixtures/library.e/package.json | 11 + .../fixtures/library.e/src/library/e/.library | 11 + .../fixtures/library.e/src/library/e/some.js | 4 + .../library.e/test/library/e/Test.html | 0 .../project/test/fixtures/library.e/ui5.yaml | 9 + .../test/fixtures/library.f/package.json | 11 + .../project/test/fixtures/library.f/ui5.yaml | 5 + .../test/fixtures/library.g/package.json | 11 + .../project/test/fixtures/library.g/ui5.yaml | 5 + .../project/test/lib/projectPreprocessor.js | 973 ++++++++++++++++++ packages/project/test/lib/translators/npm.js | 208 ++++ 141 files changed, 3459 insertions(+) create mode 100644 packages/project/.editorconfig create mode 100644 packages/project/.eslintignore create mode 100644 packages/project/.eslintrc.js create mode 100644 packages/project/.gitattributes create mode 100644 packages/project/.github/ISSUE_TEMPLATE.md create mode 100644 packages/project/.gitignore create mode 100644 packages/project/.travis.yml create mode 100644 packages/project/CONTRIBUTING.md create mode 100644 packages/project/LICENSE.txt create mode 100644 packages/project/NOTICE.txt create mode 100644 packages/project/README.md create mode 100644 packages/project/index.js create mode 100644 packages/project/jsdoc.json create mode 100644 packages/project/lib/normalizer.js create mode 100644 packages/project/lib/projectPreprocessor.js create mode 100644 packages/project/lib/translators/npm.js create mode 100644 packages/project/lib/translators/static.js create mode 100644 packages/project/package.json create mode 100644 packages/project/test/expected/build/application.a/dest-dev/index.html create mode 100644 packages/project/test/expected/build/application.a/dest-dev/test.js create mode 100644 packages/project/test/expected/build/application.a/dest/index.html create mode 100644 packages/project/test/expected/build/application.a/dest/test-dbg.js create mode 100644 packages/project/test/expected/build/application.a/dest/test.js create mode 100644 packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n.properties create mode 100644 packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n_de.properties create mode 100644 packages/project/test/expected/build/application.b/dest/embedded/manifest.json create mode 100644 packages/project/test/expected/build/application.b/dest/i18n/i18n.properties create mode 100644 packages/project/test/expected/build/application.b/dest/i18n/i18n_de.properties create mode 100644 packages/project/test/expected/build/application.b/dest/manifest.json create mode 100644 packages/project/test/expected/build/library.d/dest/resources/library/d/.library create mode 100644 packages/project/test/expected/build/library.d/dest/resources/library/d/some-dbg.js create mode 100644 packages/project/test/expected/build/library.d/dest/resources/library/d/some.js create mode 100644 packages/project/test/expected/build/library.d/dest/test-resources/library/d/Test.html create mode 100644 packages/project/test/expected/build/library.e/dest/resources/library/e/.library create mode 100644 packages/project/test/expected/build/library.e/dest/resources/library/e/some-dbg.js create mode 100644 packages/project/test/expected/build/library.e/dest/resources/library/e/some.js create mode 100644 packages/project/test/expected/build/library.e/dest/test-resources/library/e/Test.html create mode 100644 packages/project/test/expected/resourceLocators/application.a/index_bufferTest.html create mode 100644 packages/project/test/expected/resourceLocators/application.a/index_readableStreamTest.html create mode 100644 packages/project/test/expected/resourceLocators/application.a/index_stringTest.html create mode 100644 packages/project/test/fixtures/application.a/package.json create mode 100644 packages/project/test/fixtures/application.a/ui5.yaml create mode 100644 packages/project/test/fixtures/application.a/webapp/index.html create mode 100644 packages/project/test/fixtures/application.a/webapp/test.js create mode 100644 packages/project/test/fixtures/application.b/package.json create mode 100644 packages/project/test/fixtures/application.b/ui5.yaml create mode 100644 packages/project/test/fixtures/application.b/webapp/embedded/i18n/i18n.properties create mode 100644 packages/project/test/fixtures/application.b/webapp/embedded/i18n/i18n_de.properties create mode 100644 packages/project/test/fixtures/application.b/webapp/embedded/i18n_fr.properties create mode 100644 packages/project/test/fixtures/application.b/webapp/embedded/manifest.json create mode 100644 packages/project/test/fixtures/application.b/webapp/i18n.properties create mode 100644 packages/project/test/fixtures/application.b/webapp/i18n/i18n.properties create mode 100644 packages/project/test/fixtures/application.b/webapp/i18n/i18n_de.properties create mode 100644 packages/project/test/fixtures/application.b/webapp/i18n/l10n.properties create mode 100644 packages/project/test/fixtures/application.b/webapp/manifest.json create mode 100644 packages/project/test/fixtures/application.c/package.json create mode 100644 packages/project/test/fixtures/application.c/src/manifest.json create mode 100644 packages/project/test/fixtures/application.c/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c2/package.json create mode 100644 packages/project/test/fixtures/application.c2/src/manifest.json create mode 100644 packages/project/test/fixtures/application.c2/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c3/package.json create mode 100644 packages/project/test/fixtures/application.c3/src/manifest.json create mode 100644 packages/project/test/fixtures/application.c3/ui5.yaml create mode 100644 packages/project/test/fixtures/application.d/package.json create mode 100644 packages/project/test/fixtures/application.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.d/webapp/manifest.json create mode 100644 packages/project/test/fixtures/application.e/package.json create mode 100644 packages/project/test/fixtures/application.e/ui5.yaml create mode 100644 packages/project/test/fixtures/application.e/webapp/manifest.json create mode 100644 packages/project/test/fixtures/application.f/package.json create mode 100644 packages/project/test/fixtures/application.f/ui5.yaml create mode 100644 packages/project/test/fixtures/application.f/webapp/manifest.json create mode 100644 packages/project/test/fixtures/collection/library.a/package.json create mode 100644 packages/project/test/fixtures/collection/library.a/src/library/a/.library create mode 100644 packages/project/test/fixtures/collection/library.a/src/library/a/themes/base/library.source.less create mode 100644 packages/project/test/fixtures/collection/library.a/test/library/a/Test.html create mode 100644 packages/project/test/fixtures/collection/library.a/ui5.yaml create mode 100644 packages/project/test/fixtures/collection/library.b/package.json create mode 100644 packages/project/test/fixtures/collection/library.b/src/library/b/.library create mode 100644 packages/project/test/fixtures/collection/library.b/test/library/b/Test.html create mode 100644 packages/project/test/fixtures/collection/library.b/ui5.yaml create mode 100644 packages/project/test/fixtures/collection/library.c/package.json create mode 100644 packages/project/test/fixtures/collection/library.c/src/library/c/.library create mode 100644 packages/project/test/fixtures/collection/library.c/test/LibraryC/Test.html create mode 100644 packages/project/test/fixtures/collection/library.c/ui5.yaml create mode 100644 packages/project/test/fixtures/collection/package.json create mode 100644 packages/project/test/fixtures/fsInterface/foo.txt create mode 100644 packages/project/test/fixtures/glob/application.a/package.json create mode 100644 packages/project/test/fixtures/glob/application.a/ui5.yaml create mode 100644 packages/project/test/fixtures/glob/application.a/webapp/index.html create mode 100644 packages/project/test/fixtures/glob/application.a/webapp/test.js create mode 100644 packages/project/test/fixtures/glob/application.b/package.json create mode 100644 packages/project/test/fixtures/glob/application.b/ui5.yaml create mode 100644 packages/project/test/fixtures/glob/application.b/webapp/embedded/i18n/i18n.properties create mode 100644 packages/project/test/fixtures/glob/application.b/webapp/embedded/i18n/i18n_de.properties create mode 100644 packages/project/test/fixtures/glob/application.b/webapp/embedded/i18n_fr.properties create mode 100644 packages/project/test/fixtures/glob/application.b/webapp/embedded/manifest.json create mode 100644 packages/project/test/fixtures/glob/application.b/webapp/i18n.properties create mode 100644 packages/project/test/fixtures/glob/application.b/webapp/i18n/i18n.properties create mode 100644 packages/project/test/fixtures/glob/application.b/webapp/i18n/i18n_de.properties create mode 100644 packages/project/test/fixtures/glob/application.b/webapp/i18n/l10n.properties create mode 100644 packages/project/test/fixtures/glob/application.b/webapp/manifest.json create mode 100644 packages/project/test/fixtures/glob/package.json create mode 100644 packages/project/test/fixtures/init-application/package.json create mode 100644 packages/project/test/fixtures/init-application/webapp/.gitkeep create mode 100644 packages/project/test/fixtures/init-invalid-no-package-json/webapp/.gitkeep create mode 100644 packages/project/test/fixtures/init-invalid-webapp-src/package.json create mode 100644 packages/project/test/fixtures/init-invalid-webapp-src/src/.gitkeep create mode 100644 packages/project/test/fixtures/init-invalid-webapp-src/webapp/.gitkeep create mode 100644 packages/project/test/fixtures/init-library/package.json create mode 100644 packages/project/test/fixtures/init-library/src/.gitkeep create mode 100644 packages/project/test/fixtures/init-library/test/.gitkeep create mode 100644 packages/project/test/fixtures/lbt/modules/bundle.js create mode 100644 packages/project/test/fixtures/lbt/modules/declare_function_expr_scope.js create mode 100644 packages/project/test/fixtures/lbt/modules/declare_function_invocation_scope.js create mode 100644 packages/project/test/fixtures/lbt/modules/declare_toplevel.js create mode 100644 packages/project/test/fixtures/lbt/modules/define_toplevel_named.js create mode 100644 packages/project/test/fixtures/lbt/modules/define_toplevel_unnamed.js create mode 100644 packages/project/test/fixtures/lbt/modules/not_a_module.js create mode 100644 packages/project/test/fixtures/library.d-depender/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/library.d-depender/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/library.d-depender/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/library.d-depender/package.json create mode 100644 packages/project/test/fixtures/library.d-depender/ui5.yaml create mode 100644 packages/project/test/fixtures/library.d/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/library.d/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/library.d/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/library.d/package.json create mode 100644 packages/project/test/fixtures/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/library.e/package.json create mode 100644 packages/project/test/fixtures/library.e/src/library/e/.library create mode 100644 packages/project/test/fixtures/library.e/src/library/e/some.js create mode 100644 packages/project/test/fixtures/library.e/test/library/e/Test.html create mode 100644 packages/project/test/fixtures/library.e/ui5.yaml create mode 100644 packages/project/test/fixtures/library.f/package.json create mode 100644 packages/project/test/fixtures/library.f/ui5.yaml create mode 100644 packages/project/test/fixtures/library.g/package.json create mode 100644 packages/project/test/fixtures/library.g/ui5.yaml create mode 100644 packages/project/test/lib/projectPreprocessor.js create mode 100644 packages/project/test/lib/translators/npm.js diff --git a/packages/project/.editorconfig b/packages/project/.editorconfig new file mode 100644 index 00000000000..bd10a34f302 --- /dev/null +++ b/packages/project/.editorconfig @@ -0,0 +1,14 @@ +# see http://editorconfig.org + +root = true + +[*] +charset = utf-8 + +[*.{css,html,js,json,less,txt}] +trim_trailing_whitespace = true +end_of_line = lf +tab_width = 4 + +[*.md] +trim_trailing_whitespace = false diff --git a/packages/project/.eslintignore b/packages/project/.eslintignore new file mode 100644 index 00000000000..5c9eafbbec4 --- /dev/null +++ b/packages/project/.eslintignore @@ -0,0 +1,13 @@ +# /node_modules/* and /bower_components/* ignored by default + +# Exclude coverage folder +coverage/ + +# Exclude test files +test/tmp/ +test/expected/ +test/fixtures/ + +# Exlucde JSDoc output +docs/ +jsdocs/ diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js new file mode 100644 index 00000000000..9d3ec81b2b3 --- /dev/null +++ b/packages/project/.eslintrc.js @@ -0,0 +1,50 @@ +module.exports = { + "env": { + "node": true, + "es6": true + }, + "parserOptions": { + "ecmaVersion": 8 + }, + "extends": ["eslint:recommended", "google"], + "rules": { + "indent": [ + "error", + "tab" + ], + "linebreak-style": [ + "error", + "unix" + ], + "quotes": [ + "error", + "double" + ], + "semi": [ + "error", + "always" + ], + "no-negated-condition": "off", + "require-jsdoc": "off", + "no-mixed-requires": "off", + "max-len": ["warn", 120], + "no-implicit-coercion": [ + 2, + { "allow": ["!!"] } + ], + "comma-dangle": "off", + "no-var": "off", + "no-tabs": "off", + "no-console": "off", // until we have better logging + 'valid-jsdoc': [ + 2, + { + requireParamDescription: false, + requireReturnDescription: false, + requireReturn: false, + prefer: {return: 'returns'}, + } + ], + }, + "root": true +}; diff --git a/packages/project/.gitattributes b/packages/project/.gitattributes new file mode 100644 index 00000000000..391f0a4e4b0 --- /dev/null +++ b/packages/project/.gitattributes @@ -0,0 +1,2 @@ +* text=auto +*.js text eol=lf diff --git a/packages/project/.github/ISSUE_TEMPLATE.md b/packages/project/.github/ISSUE_TEMPLATE.md new file mode 100644 index 00000000000..504d1f58b9e --- /dev/null +++ b/packages/project/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,30 @@ +## Expected Behavior +{...} + +## Current Behavior +{...} + +## Steps to reproduce the issue +1. {...} +2. {...} +3. {...} + +## Context +- OS/Platform: {...} +- Node.js Version: {...} +- npm Version: {...} +- Browser *(if relevant)*: {...} +- Other information: {...} + +## Affected components +- [ ] [ui5-builder](https://github.com/SAP/ui5-builder) +- [ ] [ui5-server](https://github.com/SAP/ui5-server) +- [ ] [ui5-cli](https://github.com/SAP/ui5-cli) +- [ ] [ui5-fs](https://github.com/SAP/ui5-fs) +- [ ] [ui5-project](https://github.com/SAP/ui5-project) +- [ ] [ui5-logger](https://github.com/SAP/ui5-logger) + +## Stack trace/log output +``` +{logs} +``` diff --git a/packages/project/.gitignore b/packages/project/.gitignore new file mode 100644 index 00000000000..0bae7c160e2 --- /dev/null +++ b/packages/project/.gitignore @@ -0,0 +1,59 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Coverage directory used by tools like istanbul +coverage + +# nyc test coverage +.nyc_output + +# IDEs +.vscode/ +*.~vsdx +.idea/ + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (http://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules +jspm_packages + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# Misc +yarn.lock +.DS_Store + +# Don't include private SSH key for deployment via Travis CI +deploy_key + +# Custom directories +test/tmp/ +jsdocs/ diff --git a/packages/project/.travis.yml b/packages/project/.travis.yml new file mode 100644 index 00000000000..7c3e38eee64 --- /dev/null +++ b/packages/project/.travis.yml @@ -0,0 +1,4 @@ +language: node_js # don't install any environment + +node_js: +- "8" diff --git a/packages/project/CONTRIBUTING.md b/packages/project/CONTRIBUTING.md new file mode 100644 index 00000000000..54d35dd23af --- /dev/null +++ b/packages/project/CONTRIBUTING.md @@ -0,0 +1,3 @@ +# Contributing to the UI5 Build and Development Tooling + +See CONTRIBUTING.md in the [SAP/ui5-tooling](https://github.com/SAP/ui5-tooling/CONTRIBUTING.md) repository. \ No newline at end of file diff --git a/packages/project/LICENSE.txt b/packages/project/LICENSE.txt new file mode 100644 index 00000000000..d107a1f63b0 --- /dev/null +++ b/packages/project/LICENSE.txt @@ -0,0 +1,235 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. + +------------------------------------------------------------------------------ +APIs + +This project may include APIs to SAP or third party products or services. The use of these APIs, products and services may be subject to additional agreements. In no event shall the application of the Apache Software License, v.2 to this project grant any rights in or to these APIs, products or services that would alter, expand, be inconsistent with, or supersede any terms of these additional agreements. “API” means application programming interfaces, as well as their respective specifications and implementing code that allows other software products to communicate with or call on SAP or third party products or services (for example, SAP Enterprise Services, BAPIs, Idocs, RFCs and ABAP calls or other user exits) and may be made available through SAP or third party products, SDKs, documentation or other media. + +------------------------------------------------------------------------------ +SUBCOMPONENTS + +This project includes the following subcomponents that are subject to separate license terms. +Your use of these subcomponents is subject to the separate license terms applicable to +each subcomponent. + +Component: deploy.sh +Licensor: Domenic Denicola +Website: https://gist.github.com/domenic/ec8b0fc8ab45f39403dd/e445116166c79d7ac35eb38a5d348d546f3d1620 +License: MIT License + = 2018 + = Domenic Denicola + +------------------------------------------------------------------------------ + +The MIT License (MIT) + +Copyright + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +------------------------------------------------------------------------------ \ No newline at end of file diff --git a/packages/project/NOTICE.txt b/packages/project/NOTICE.txt new file mode 100644 index 00000000000..8adf0514e50 --- /dev/null +++ b/packages/project/NOTICE.txt @@ -0,0 +1 @@ +Copyright (c) 2018 SAP SE or an SAP affiliate company. All rights reserved. diff --git a/packages/project/README.md b/packages/project/README.md new file mode 100644 index 00000000000..8f9d075ef65 --- /dev/null +++ b/packages/project/README.md @@ -0,0 +1,242 @@ +![UI5 logo](https://github.com/SAP/ui5-tooling/blob/master/docs/images/UI5_logo_wide.png) + +# ui5-project +> Modules for building a UI5 projects dependency tree, including configuration +> Part of the [UI5 Build and Development Tooling](https://github.com/SAP/ui5-tooling) + +**This is a Pre-Alpha release!** +**The UI5 Build and Development Tooling described here is not intended for productive use yet. Breaking changes are to be expected.** + +## Normalizer +The purpose of the normalizer is to collect dependency information and to enrich it with project configuration ([generateProjectTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateProjectTree)). + +[Translators](#translators) are used to collect dependency information. The [Project Preprocessor](#project-preprocessor) enriches this dependency information with project configuration. Typically from a `ui5.yaml` file. A development server and build process can use this information to locate project- and dependency resources. + +To only retrieve the project dependency graph, please use ([generateDependencyTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateDependencyTree)). + +## Translators +Translators collect recursively all dependencies on a package manager specific layer and return information about them in a well-defined tree-structure. + +### Tree structure returned by a translator +The following dependency tree is the expected input structure of the [Project Preprocessor](#project-preprocessor). + +````json +{ + "id": "projectA", + "version": "1.0.0", + "path": "/absolute/path/to/projectA", + "dependencies": [ + { + "id": "projectB", + "version": "1.0.0", + "path": "/path/to/projectB", + "dependencies": [ + { + "id": "projectD", + "path": "/path/to/different/projectD" + } + ] + }, + { + "id": "projectD", + "version": "1.0.0", + "path": "/path/to/projectD" + }, + { + "id": "myStaticServerTool", + "version": "1.0.0", + "path": "/path/to/some/dependency" + } + ] +} +```` + +### npm Translator +The npm translator is currently the default translator and looks for dependencies defined in the `package.json` file of a certain project. `dependencies`, `devDepedencies` and [napa dependencies](https://github.com/shama/napa) (Git repositories which don't have a `package.json` file) are located via the Node.js module resolution logic. + +### Static Translator +*This translator is currently intended for testing purposes only.* + +Can be used to supply the full dependency information of a project in a single structured file. + +Usage example: `ui5 serve -b static:/path/to/projectDependencies.yaml` +`projectDependencies.yaml` contains something like: +````yaml +--- +id: testsuite +version: "", +path: "./" +dependencies: +- id: sap.f + version: "", + path: "../sap.f" + +- id: sap.m + version: "", + path: "../sap.m" +```` + +## Project Preprocessor +Enhances a given dependency tree based on a projects [configuration](#configuration). + +### Enhanced dependency tree structure returned by the Project Preprocessor +````json +{ + "id": "projectA", + "version": "1.0.0", + "path": "/absolute/path/to/projectA", + "specVersion": "0.1", + "type": "application", + "metadata": { + "name": "sap.projectA", + "copyright": "Some copyright ${currentYear}" + }, + "resources": { + "configuration": { + "paths": { + "webapp": "app" + } + }, + "pathMappings": { + "/": "app" + } + }, + "dependencies": [ + { + "id": "projectB", + "version": "1.0.0", + "path": "/path/to/projectB", + "specVersion": "0.1", + "type": "library", + "metadata": { + "name": "sap.ui.projectB" + }, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + }, + "dependencies": [ + { + "id": "projectD", + "version": "1.0.0", + "path": "/path/to/different/projectD", + "specVersion": "0.1", + "type": "library", + "metadata": { + "name": "sap.ui.projectD" + }, + "resources": { + "configuration": { + "paths": { + "src": "src/main/uilib", + "test": "src/test" + } + }, + "pathMappings": { + "/resources/": "src/main/uilib", + "/test-resources/": "src/test" + } + }, + "dependencies": [] + } + ] + }, + { + "id": "projectD", + "version": "1.0.0", + "path": "/path/to/projectD", + "specVersion": "0.1", + "type": "library", + "metadata": { + "name": "sap.ui.projectD" + }, + "resources": { + "configuration": { + "paths": { + "src": "src/main/uilib", + "test": "src/test" + } + }, + "pathMappings": { + "/resources/": "src/main/uilib", + "/test-resources/": "src/test" + } + }, + "dependencies": [] + } + ] +} +```` + +## Configuration +### Project configuration +Typically located in a per-project `ui5.yaml` file. + +#### Structure +##### YAML +````yaml +--- +specVersion: "0.1" +type: application|library|custom +metadata: + name: testsuite + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-${currentYear} SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. +resources: + configuration: + paths: + "": "" + "": "" + shims: + some-dependency-name: + type: library + metadata: + name: library-xy + resources: + configuration: + paths: + "src": "source" +server: + settings: + port: 8099 +```` + +#### Properties +##### \ +- `specVersion`: Version of the specification +- `type`: Either `application`, `library` or `custom` (custom not yet implemented). Defines default path mappings and build steps. Custom doesn't define any specific defaults + +##### metadata +Some general information +- `name`: Name of the application/library/resource +- `copyright` (optional): String to be used for replacement of copyright placeholders in the project + +##### resources (optional) +- `configuration` + - `paths`: Mapping between virtual and physical paths + + For type `application` there can be a setting for mapping the virtual path `webapp` to a physical path within the project + + For type `library` there can be a setting for mapping the virtual paths `src` and `test` to physical paths within the project +- `shims`: Can be used to define, extend or override UI5 configs of dependencies. Inner structure equals the general structure. It is a key-value map where the key equals the project ID as supplied by the translator. + +##### server (optional) +- `settings` (not yet implemented) + - `port`: Project default server port. Can be overwritten via CLI parameters. + +## Contributing +Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/CONTRIBUTING.md). + +## Support +Please follow our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/CONTRIBUTING.md#report-an-issue) on how to report an issue. + +## License +This project is licensed under the Apache Software License, Version 2.0 except as noted otherwise in the [LICENSE](/LICENSE.txt) file. diff --git a/packages/project/index.js b/packages/project/index.js new file mode 100644 index 00000000000..82986dfb7c8 --- /dev/null +++ b/packages/project/index.js @@ -0,0 +1,10 @@ +const ui5Project = { + normalizer: require("./lib/normalizer"), + projectPreprocessor: require("./lib/projectPreprocessor"), + translators: { + "npm": require("./lib/translators/npm"), + "static": require("./lib/translators/static") + } +}; + +module.exports = ui5Project; diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json new file mode 100644 index 00000000000..e08bf7aeab1 --- /dev/null +++ b/packages/project/jsdoc.json @@ -0,0 +1,22 @@ +{ + "tags": { + "allowUnknownTags": true + }, + "source": { + "include": ["README.md"], + "includePattern": ".+\\.js$", + "excludePattern": "(node_modules(\\\\|/))" + }, + "plugins": [], + "opts": { + "template": "node_modules/docdash/", + "encoding": "utf8", + "destination": "jsdocs/", + "recurse": true, + "verbose": true + }, + "templates": { + "cleverLinks": false, + "monospaceLinks": false + } +} diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js new file mode 100644 index 00000000000..afba412c1d4 --- /dev/null +++ b/packages/project/lib/normalizer.js @@ -0,0 +1,67 @@ +const log = require("@ui5/logger").getLogger("normalizer:normalizer"); +const projectPreprocessor = require("./projectPreprocessor"); + +/** + * Generate project and dependency trees via translators. Optionally configure all projects with the projectPreprocessor. + * + * @module normalizer/normalizer + */ + +/** + * Generates a project and dependency tree via translators and configures all projects via the projectPreprocessor + * + * @param {Object} options Options + * @param {string} options.cwd Current working directory + * @param {string} options.configPath Path to configuration file + * @param {string} options.translator Translator to use + * @returns {Promise} Promise resolving to tree object + */ +async function generateProjectTree(options) { + const tree = await generateDependencyTree(options); + + if (options.configPath) { + tree.configPath = options.configPath; + } + return projectPreprocessor.processTree(tree); +} + +/** + * Generates a project and dependency tree via translators + * + * @param {Object} options Options + * @param {string} options.cwd Current working directory + * @param {string} options.configPath Path to configuration file + * @param {string} options.translator Translator to use + * @returns {Promise} Promise resolving to tree object + */ +async function generateDependencyTree(options) { + log.verbose("Building dependency tree..."); + let cwd = options && options.cwd || "."; + + let translatorName = "npm"; // Default is npm translator + let translatorParams = []; + if (options.translator) { + const translatorOptions = options.translator.split(":"); + translatorName = translatorOptions[0]; + translatorParams = translatorOptions.slice(1); + } + + let translator; + switch (translatorName) { + case "static": + translator = require("./translators/static"); + break; + case "npm": + translator = require("./translators/npm"); + break; + default: + throw new Error(`Unkown translator ${translatorName}`); + } + + return translator.generateDependencyTree(cwd, translatorParams); +} + +module.exports = { + generateProjectTree, + generateDependencyTree +}; diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js new file mode 100644 index 00000000000..64bd7162607 --- /dev/null +++ b/packages/project/lib/projectPreprocessor.js @@ -0,0 +1,207 @@ +const log = require("@ui5/logger").getLogger("normalizer:projectPreprocessor"); +const fs = require("graceful-fs"); +const path = require("path"); +const {promisify} = require("util"); +const readFile = promisify(fs.readFile); +const parseYaml = require("js-yaml").safeLoad; +const typeRepository = require("@ui5/builder").types.typeRepository; + +class ProjectPreprocessor { + /* + Adapt and enhance the project tree: + - Replace duplicate projects further away from the root with those closed to the root + - Add configuration to projects + */ + async processTree(tree) { + const processedProjects = {}; + const queue = [{ + project: tree, + parent: null, + level: 0 + }]; + const configPromises = []; + let startTime; + if (log.isLevelEnabled("verbose")) { + startTime = process.hrtime(); + } + + // Breadth-first search to prefer projects closer to root + while (queue.length) { + const {project, parent, level} = queue.shift(); // Get and remove first entry from queue + if (!project.id) { + throw new Error("Encountered project with missing id"); + } + project._level = level; + + // Check whether project ID is already known + const processedProject = processedProjects[project.id]; + if (processedProject) { + if (processedProject.ignored) { + log.verbose(`Dependency of project ${parent.id}, "${project.id}" is flagged as ignored.`); + parent.dependencies.splice(parent.dependencies.indexOf(project), 1); + continue; + } + log.verbose(`Dependency of project ${parent.id}, "${project.id}": Distance to root of ${level}. Will be `+ + `replaced by project with same ID and distance to root of ${processedProject.project._level}.`); + + // Replace with the already processed project (closer to root -> preferred) + parent.dependencies[parent.dependencies.indexOf(project)] = processedProject.project; + processedProject.parents.push(parent); + + // No further processing needed + continue; + } + + processedProjects[project.id] = { + project, + // If a project is referenced multiple times in the dependency tree, + // it is replaced with the occurrence closest to the root. + // Here we collect the different parents, this single project configuration then has + parents: [parent] + }; + + configPromises.push(this.configureProject(project).then((config) => { + if (!config) { + if (project === tree) { + throw new Error(`Failed to configure root project "${project.id}". Please check verbose log for details.`); + } + + // No config available + // => reject this project by removing it from its parents list of dependencies + log.verbose(`Ignoring project ${project.id} with missing configuration `+ + "(might be a non-UI5 dependency)"); + const parents = processedProjects[project.id].parents; + for (var i = parents.length - 1; i >= 0; i--) { + parents[i].dependencies.splice(parents[i].dependencies.indexOf(project), 1); + } + processedProjects[project.id] = {ignored: true}; + } + })); + + if (project.dependencies) { + queue.push(...project.dependencies.map((depProject) => { + return { + project: depProject, + parent: project, + level: level + 1 + }; + })); + } + } + return Promise.all(configPromises).then(() => { + if (log.isLevelEnabled("verbose")) { + const prettyHrtime = require("pretty-hrtime"); + const timeDiff = process.hrtime(startTime); + log.verbose(`Processed ${Object.keys(processedProjects).length} projects in ${prettyHrtime(timeDiff)}`); + } + return tree; + }); + } + + async configureProject(project) { + if (!project.specVersion) { // Project might already be configured (e.g. via inline configuration) + // Currently, specVersion is the indicator for configured projects + const projectConf = await this.getProjectConfiguration(project); + + if (!projectConf) { + return null; + } + // Enhance project with its configuration + Object.assign(project, projectConf); + } + + if (!project.specVersion) { + if (project._level === 0) { + throw new Error(`No specification version defined for root project ${project.id}`); + } + log.verbose(`No specification version defined for project ${project.id}`); + return; // return with empty config + } + + if (project.specVersion !== "0.1") { + throw new Error( + `Invalid specification version defined for project ${project.id}: ${project.specVersion}. ` + + "The currently only allowed version is \"0.1\""); + } + + if (!project.type) { + if (project._level === 0) { + throw new Error(`No type configured for root project ${project.id}`); + } + log.verbose(`No type configured for project ${project.id} (neither in project configuration, nor in any shim)`); + return; // return with empty config + } + + if (project.type === "application" && project._level !== 0) { + // There is only one project of type application allowed + // That project needs to be the root project + log.verbose(`[Warn] Ignoring project ${project.id} with type application`+ + ` (distance to root: ${project._level}). Type application is only allowed for the root project`); + return; // return with empty config + } + + // Apply type + await this.applyType(project); + return project; + } + + async getProjectConfiguration(project) { + // A projects configPath property takes precedence over the default "/ui5.yaml" path + const configPath = project.configPath || path.join(project.path, "/ui5.yaml"); + + let config; + try { + config = await this.readConfigFile(configPath); + } catch (err) { + const errorText = "Failed to read configuration for project " + + `${project.id} at "${configPath}". Error: ${err.message}`; + + if (err.code !== "ENOENT") { // Something else than "File or directory does not exist" + throw new Error(errorText); + } + log.verbose(errorText); + + /* Disabled shimming until shim-plugin is available + // If there is a config shim, use it as fallback + if (configShims[project.id]) { + // It's ok if there is no project configuration in the project if there is a shim for it + log.verbose(`Applying shim for project ${project.id}...`); + config = JSON.parse(JSON.stringify(configShims[project.id])); + } else { + // No configuration available -> return empty config + return null; + }*/ + } + + return config; + } + + async readConfigFile(configPath) { + const configFile = await readFile(configPath); + return parseYaml(configFile, { + filename: path + }); + } + + async applyType(project) { + let type = typeRepository.getType(project.type); + return type.format(project); + } +} + +/** + * The Project Preprocessor enriches the dependency information with project configuration + * + * @module normalizer/translators/static + */ +module.exports = { + /** + * Collects project information and its dependencies to enrich it with project configuration + * + * @param {Object} tree Dependency tree of the project + * @returns {Promise} Promise resolving with the dependency tree and enriched project configuration + */ + processTree: function(tree) { + return new ProjectPreprocessor().processTree(tree); + } +}; diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js new file mode 100644 index 00000000000..8595b10fb63 --- /dev/null +++ b/packages/project/lib/translators/npm.js @@ -0,0 +1,322 @@ +const log = require("@ui5/logger").getLogger("normalizer:translators:npm"); +const path = require("path"); +const readPkgUp = require("read-pkg-up"); +const readPkg = require("read-pkg"); +const {promisify} = require("util"); +const fs = require("fs"); +const realpath = promisify(fs.realpath); +const resolveModulePath = promisify(require("resolve")); + +class NpmTranslator { + constructor() { + this.projectCache = {}; + this.projectsWoUi5Deps = []; + this.pendingDeps = {}; + } + + /* + Returns a promise with an array of projects + */ + async processPkg(data, parentName) { + const cwd = data.path; + const moduleName = data.name; + const pkg = data.pkg; + + log.verbose("Analyzing %s (%s) (depenency of %s)", moduleName, cwd, parentName || "nothing - root project"); + + /* + * Inject collection definitions for some known projects + * until this is either not needed anymore or added to the actual project. + */ + this.shimCollection(moduleName, pkg); + + let dependencies = pkg.dependencies || {}; + let optDependencies = pkg.devDependencies || {}; + let version = pkg.version; + + // Also look for "napa" dependencies (see https://github.com/shama/napa) + if (pkg.napa) { + Object.keys(pkg.napa).forEach((napaName) => { + dependencies[napaName] = pkg.napa[napaName]; + }); + } + + const ui5Deps = pkg.ui5 && pkg.ui5.dependencies; + if (ui5Deps && ui5Deps.length) { + for (let i = 0; i < ui5Deps.length; i++) { + let depName = ui5Deps[i]; + if (!dependencies[depName] && !optDependencies[depName]) { + throw new Error(`Module ${depName} is defined as UI5 dependency ` + + `but missing from npm dependencies of module ${moduleName}`); + } + } + // When UI5-dependencies are defined, we don't care whether an npm dependency is optional or not. + // All UI5-dependendies need to be there. + dependencies = Object.assign({}, dependencies, optDependencies); + optDependencies = {}; + + for (let depName in dependencies) { + if (dependencies.hasOwnProperty(depName) && ui5Deps.indexOf(depName) === -1) { + log.verbose("Ignoring npm depenency %s. Not defined in UI5-dependency configuration.", depName); + delete dependencies[depName]; + } + } + } else { + this.projectsWoUi5Deps.push(moduleName); + } + + /* + It's either a project or a collection but never both! + + We don't care about dependencies of collections for now because we only remember dependencies + on projects. + Although we could add the collections dependencies as project dependencies to the related modules + */ + if (!pkg.collection) { + return this.getDepProjects({ + cwd, + parentName: moduleName, + dependencies + }).then((depProjects) => { + // Array needs to be flattened because: + // getDepProjects returns array * 2 = array with two arrays + let projects = Array.prototype.concat.apply([], depProjects); + + return [{ + id: moduleName, + version, + path: cwd, + dependencies: projects + }]; + }).then(([project]) => { + // Register optional dependencies as "pending" as we do not try to resolve them ourself. + // If we would, we would *always* resolve them for modules that are linked into monorepos. + // In such cases, dev-dependencies are typically always available in the node_modules directory. + // Therefore we register them as pending. And if any other project resolved them, we add them to + // our dependencies later on. + this.registerPendingDependencies({ + parentProject: project, + dependencies: optDependencies + }); + return [project]; + }); + } else { // collection + log.verbose("Found a collection: %s", moduleName); + const modules = pkg.collection && pkg.collection.modules || {}; + return Promise.all( + Object.keys(modules).map((depName) => { + const modulePath = path.join(cwd, modules[depName]); + if (depName === parentName) { // TODO improve recursion detection here + log.verbose("Ignoring module with same name as parent: " + parentName); + return null; + } + return this.readProject({modulePath, moduleName: depName, parentName: moduleName}); + }) + ).then((projects) => { + // Array needs to be flattened because: + // readProject returns an array + Promise.all returns an array = array filled with arrays + // Filter out null values of ignored packages + return Array.prototype.concat.apply([], projects.filter((p) => p !== null)); + }); + } + } + + getDepProjects({cwd, dependencies, parentName}) { + return Promise.all( + Object.keys(dependencies).map((moduleName) => { + return this.findModulePath(cwd, moduleName).then((modulePath) => { + return this.readProject({modulePath, moduleName, parentName}); + }); + }) + ).then((depProjects) => { + // Array needs to be flattened because: + // readProject returns an array + Promise.all returns an array = array filled with arrays + // Filter out null values of ignored packages + return Array.prototype.concat.apply([], depProjects.filter((p) => p !== null)); + }); + } + + readProject({modulePath, moduleName, parentName}) { + if (this.projectCache[modulePath]) { + return this.projectCache[modulePath]; + } + + return this.projectCache[modulePath] = readPkg(modulePath).catch((err) => { + // Failed to read package + // If dependency shim is available, fake the package + + /* Disabled shimming until shim-plugin is available + const id = path.basename(modulePath); + if (pkgDependenciesShims[id]) { + const dependencies = JSON.parse(JSON.stringify(pkgDependenciesShims[id])); + return { // Fake package.json content + name: id, + dependencies, + version: "", + ui5: { + dependencies: Object.keys(dependencies) + } + }; + }*/ + throw err; + }).then((pkg) => { + return this.processPkg({ + name: moduleName, + pkg: pkg, + path: modulePath + }, parentName).then((projects) => { + // Flatten the array of project arrays (yes, because collections) + return Array.prototype.concat.apply([], projects.filter((p) => p !== null)); + }); + }, () => { + // Failed to read package. Create a project anyway + return [{ + id: moduleName, + version: "", + path: modulePath, + dependencies: [] + }]; + }); + } + + /* Returns path to a module + */ + findModulePath(basePath, moduleName) { + return resolveModulePath(moduleName + "/package.json", { + basedir: basePath, + preserveSymlinks: false + }).then((pkgPath) => { + return realpath(pkgPath); + }).then((pkgPath) => { + return path.dirname(pkgPath); + }).catch((err) => { + return readPkgUp({ + cwd: path.dirname(basePath) + }).then((result) => { + const pkg = result.pkg; + + // As of today, collections only exist in shims + this.shimCollection(pkg.name, pkg); + if (pkg.collection) { + log.verbose("Unable to locate module %s via resolve logic but found a collection in parent hierarchy: %s", + moduleName, pkg.name); + const modules = pkg.collection.modules || {}; + if (modules[moduleName]) { + const modulePath = path.join(path.dirname(result.path), modules[moduleName]); + log.verbose("Found module %s in that collection", moduleName); + return modulePath; + } + throw new Error(`Could not find module ${moduleName} in collection ${pkg.name}`); + } + throw new Error(`Could not locate module ${moduleName} via resolve logic ` + + `(error: ${err.message}) or in a collection`); + }); + }).catch((err) => { + throw new Error( + `[npm translator] Failed to locate module ${moduleName} from ${basePath} - Error: ${err.message}`); + }); + } + + registerPendingDependencies({dependencies, parentProject}) { + Object.keys(dependencies).forEach((moduleName) => { + if (this.pendingDeps[moduleName]) { + this.pendingDeps[moduleName].parents.push(parentProject); + } else { + this.pendingDeps[moduleName] = { + parents: [parentProject] + }; + } + }); + } + + processPendingDeps(tree) { + const queue = [tree]; + + // Breadth-first search to prefer projects closer to root + while (queue.length) { + const project = queue.shift(); // Get and remove first entry from queue + if (!project.id) { + throw new Error("Encountered project with missing id"); + } + + if (this.pendingDeps[project.id]) { + for (var i = this.pendingDeps[project.id].parents.length - 1; i >= 0; i--) { + this.pendingDeps[project.id].parents[i].dependencies.push(project); + } + this.pendingDeps[project.id] = null; + } + + if (project.dependencies) { + queue.push(...project.dependencies); + } + } + return tree; + } + + generateDependencyTree(dirPath) { + return readPkgUp({ + cwd: dirPath + }).then((result) => { + result.name = result.pkg.name; + // resolved path points to the package.json, but we want just the folder path + result.path = path.dirname(result.path); + return result; + }).then(this.processPkg.bind(this)).then((tree) => { + if (this.projectsWoUi5Deps.length) { + log.verbose("[PERF] Consider defining UI5-dependencies in the package.json files of the relevant modules " + + "from the following list to improve npm translator execution time: " + + this.projectsWoUi5Deps.join(", ")); + } + + /* + By default, there is just one root project in the tree, + but in case a collection is returned, there are multiple roots. + This can only happen: + 1. when running with a collection project as CWD + => This is not intended and will throw an error as no project will match the CWD + 2. when running in a project without a package.json within a collection project + => In case the CWD matches with a project from the collection, then that + project is picked as root, otherwise an error is thrown + */ + + for (let i = 0; i < tree.length; i++) { + let rootPackage = tree[i]; + if (path.resolve(rootPackage.path) === path.resolve(dirPath)) { + log.verbose("Built tree:"); + log.verbose(rootPackage); + return rootPackage; + } + } + + throw new Error("Could not identify root project."); + }).then(this.processPendingDeps.bind(this)); + } + + /* + * Inject collection definitions for some known projects + * until this is either not needed anymore or added to the actual project. + */ + shimCollection(moduleName, pkg) { + /* Disabled shimming until shim-plugin is available + if (!pkg.collection && pkgCollectionShims[moduleName]) { + pkg.collection = JSON.parse(JSON.stringify(pkgCollectionShims[moduleName])); + }*/ + } +} + +/** + * Translator for npm resources + * + * @module normalizer/translators/npm + */ +module.exports = { + /** + * Generates a dependency tree for npm projects + * + * @param {string} dirPath Project path + * @returns {Promise} Promise resolving with a dependency tree + */ + generateDependencyTree(dirPath) { + return new NpmTranslator().generateDependencyTree(dirPath); + } +}; diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js new file mode 100644 index 00000000000..6488733e505 --- /dev/null +++ b/packages/project/lib/translators/static.js @@ -0,0 +1,38 @@ +const path = require("path"); +const fs = require("graceful-fs"); +const parseYaml = require("js-yaml").safeLoad; + +/** + * Translator for static resources + * + * @module normalizer/translators/static + */ + +/** + * Generates a dependency tree from static resources + * + * This feature is EXPERIMENTAL and used for testing purposes only. + * + * @param {string} dirPath Project path + * @param {Array} [translatorOptions] Configuration options + * @returns {Promise} Promise resolving with a dependency tree + */ +function generateDependencyTree(dirPath, translatorOptions) { + const depFilePath = translatorOptions[0] || path.join(dirPath, "projectDependencies.yaml"); + + return new Promise(function(resolve, reject) { + fs.readFile(depFilePath, function(err, buffer) { + if (err) { + reject(err); + } else { + resolve(parseYaml(buffer.toString(), { + filename: depFilePath + })); + } + }); + }); +} + +module.exports = { + generateDependencyTree: generateDependencyTree +}; diff --git a/packages/project/package.json b/packages/project/package.json new file mode 100644 index 00000000000..2fbac969dae --- /dev/null +++ b/packages/project/package.json @@ -0,0 +1,103 @@ +{ + "name": "@ui5/project", + "version": "0.0.1", + "description": "UI5 Build and Development Tooling - Project ", + "author": "SAP SE (https://www.sap.com)", + "license": "Apache-2.0", + "keywords": [ + "openui5", + "sapui5", + "ui5", + "build", + "development", + "tool" + ], + "main": "index.js", + "engines": { + "node": ">= 8.3", + "npm": ">= 5" + }, + "scripts": { + "test": "npm run lint && npm run jsdoc-generate && npm run coverage", + "lint": "eslint ./", + "unit": "rimraf test/tmp && ava", + "unit-watch": "rimraf test/tmp && ava --watch", + "unit-nyan": "npm run unit -- --tap | tnyan", + "unit-debug": "rimraf test/tmp && cross-env DEBUG=*,-babel,-ava ava", + "unit-inspect": "cross-env DEBUG=*,-babel,-ava node --inspect-brk node_modules/ava/profile.js", + "coverage": "nyc npm run unit", + "jsdoc": "npm run jsdoc-generate && opn jsdocs/index.html", + "jsdoc-generate": "node_modules/.bin/jsdoc -c ./jsdoc.json ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)" + }, + "ava": { + "files": [ + "test/lib/**/*.js" + ], + "source": [ + "lib/**/*.js", + "test/lib/**/*.js" + ] + }, + "nyc": { + "reporter": [ + "lcov", + "text", + "text-summary" + ], + "exclude": [ + "docs/**", + "jsdocs/**", + "coverage/**", + "test/**", + "lib/lbt/**" + ], + "check-coverage": true, + "lines": 70, + "statements": 70, + "functions": 60, + "branches": 50, + "watermarks": { + "lines": [ + 70, + 90 + ], + "functions": [ + 60, + 90 + ], + "branches": [ + 50, + 70 + ], + "statements": [ + 70, + 90 + ] + }, + "cache": true, + "all": true + }, + "repository": { + "type": "git", + "url": "git@github.com:SAP/ui5-builder.git" + }, + "dependencies": { + "graceful-fs": "^4.1.11", + "js-yaml": "^3.10.0", + "pretty-hrtime": "^1.0.3", + "read-pkg": "^3.0.0", + "read-pkg-up": "^3.0.0", + "resolve": "^1.5.0", + "@ui5/builder": "SAP/ui5-builder", + "@ui5/logger": "SAP/ui5-logger" + }, + "devDependencies": { + "ava": "^0.24.0", + "docdash": "^0.4.0", + "eslint": "^4.13.1", + "eslint-config-google": "^0.9.1", + "jsdoc": "^3.5.5", + "nyc": "^11.4.1", + "tap-nyan": "^1.1.0" + } +} diff --git a/packages/project/test/expected/build/application.a/dest-dev/index.html b/packages/project/test/expected/build/application.a/dest-dev/index.html new file mode 100644 index 00000000000..77b0207cc80 --- /dev/null +++ b/packages/project/test/expected/build/application.a/dest-dev/index.html @@ -0,0 +1,9 @@ + + + + Application A + + + + + \ No newline at end of file diff --git a/packages/project/test/expected/build/application.a/dest-dev/test.js b/packages/project/test/expected/build/application.a/dest-dev/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/expected/build/application.a/dest-dev/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/expected/build/application.a/dest/index.html b/packages/project/test/expected/build/application.a/dest/index.html new file mode 100644 index 00000000000..77b0207cc80 --- /dev/null +++ b/packages/project/test/expected/build/application.a/dest/index.html @@ -0,0 +1,9 @@ + + + + Application A + + + + + \ No newline at end of file diff --git a/packages/project/test/expected/build/application.a/dest/test-dbg.js b/packages/project/test/expected/build/application.a/dest/test-dbg.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/expected/build/application.a/dest/test-dbg.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/expected/build/application.a/dest/test.js b/packages/project/test/expected/build/application.a/dest/test.js new file mode 100644 index 00000000000..387af393066 --- /dev/null +++ b/packages/project/test/expected/build/application.a/dest/test.js @@ -0,0 +1 @@ +function test(t){var o=t;console.log(o)}test(); \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n.properties b/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n.properties new file mode 100644 index 00000000000..d93c8a39c0e --- /dev/null +++ b/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n.properties @@ -0,0 +1 @@ +title=embedded-i18n \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n_de.properties b/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n_de.properties new file mode 100644 index 00000000000..e513333c842 --- /dev/null +++ b/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n_de.properties @@ -0,0 +1 @@ +title=embedded-i18n_de \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/embedded/manifest.json b/packages/project/test/expected/build/application.b/dest/embedded/manifest.json new file mode 100644 index 00000000000..5ef0c362425 --- /dev/null +++ b/packages/project/test/expected/build/application.b/dest/embedded/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1.embedded", + "type": "component", + "applicationVersion": { + "version": "1.2.2" + }, + "embeddedBy": "../", + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/i18n/i18n.properties b/packages/project/test/expected/build/application.b/dest/i18n/i18n.properties new file mode 100644 index 00000000000..575fb20d0c3 --- /dev/null +++ b/packages/project/test/expected/build/application.b/dest/i18n/i18n.properties @@ -0,0 +1 @@ +title=app-i18n \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/i18n/i18n_de.properties b/packages/project/test/expected/build/application.b/dest/i18n/i18n_de.properties new file mode 100644 index 00000000000..f5885803892 --- /dev/null +++ b/packages/project/test/expected/build/application.b/dest/i18n/i18n_de.properties @@ -0,0 +1 @@ +title=app-i18n_de \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/manifest.json b/packages/project/test/expected/build/application.b/dest/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/expected/build/application.b/dest/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/expected/build/library.d/dest/resources/library/d/.library b/packages/project/test/expected/build/library.d/dest/resources/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/expected/build/library.d/dest/resources/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/expected/build/library.d/dest/resources/library/d/some-dbg.js b/packages/project/test/expected/build/library.d/dest/resources/library/d/some-dbg.js new file mode 100644 index 00000000000..cb7722a381e --- /dev/null +++ b/packages/project/test/expected/build/library.d/dest/resources/library/d/some-dbg.js @@ -0,0 +1,4 @@ +/*! + * Some fancy copyright + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/expected/build/library.d/dest/resources/library/d/some.js b/packages/project/test/expected/build/library.d/dest/resources/library/d/some.js new file mode 100644 index 00000000000..a5504d86693 --- /dev/null +++ b/packages/project/test/expected/build/library.d/dest/resources/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * Some fancy copyright + */ +console.log("HelloWorld"); \ No newline at end of file diff --git a/packages/project/test/expected/build/library.d/dest/test-resources/library/d/Test.html b/packages/project/test/expected/build/library.d/dest/test-resources/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/expected/build/library.e/dest/resources/library/e/.library b/packages/project/test/expected/build/library.e/dest/resources/library/e/.library new file mode 100644 index 00000000000..20c99070048 --- /dev/null +++ b/packages/project/test/expected/build/library.e/dest/resources/library/e/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library E + + diff --git a/packages/project/test/expected/build/library.e/dest/resources/library/e/some-dbg.js b/packages/project/test/expected/build/library.e/dest/resources/library/e/some-dbg.js new file mode 100644 index 00000000000..dc9e1fc914e --- /dev/null +++ b/packages/project/test/expected/build/library.e/dest/resources/library/e/some-dbg.js @@ -0,0 +1,6 @@ +/*! + * UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/expected/build/library.e/dest/resources/library/e/some.js b/packages/project/test/expected/build/library.e/dest/resources/library/e/some.js new file mode 100644 index 00000000000..39e3277ce6e --- /dev/null +++ b/packages/project/test/expected/build/library.e/dest/resources/library/e/some.js @@ -0,0 +1,6 @@ +/*! + * UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. + */ +console.log("HelloWorld"); \ No newline at end of file diff --git a/packages/project/test/expected/build/library.e/dest/test-resources/library/e/Test.html b/packages/project/test/expected/build/library.e/dest/test-resources/library/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/expected/resourceLocators/application.a/index_bufferTest.html b/packages/project/test/expected/resourceLocators/application.a/index_bufferTest.html new file mode 100644 index 00000000000..77b0207cc80 --- /dev/null +++ b/packages/project/test/expected/resourceLocators/application.a/index_bufferTest.html @@ -0,0 +1,9 @@ + + + + Application A + + + + + \ No newline at end of file diff --git a/packages/project/test/expected/resourceLocators/application.a/index_readableStreamTest.html b/packages/project/test/expected/resourceLocators/application.a/index_readableStreamTest.html new file mode 100644 index 00000000000..77b0207cc80 --- /dev/null +++ b/packages/project/test/expected/resourceLocators/application.a/index_readableStreamTest.html @@ -0,0 +1,9 @@ + + + + Application A + + + + + \ No newline at end of file diff --git a/packages/project/test/expected/resourceLocators/application.a/index_stringTest.html b/packages/project/test/expected/resourceLocators/application.a/index_stringTest.html new file mode 100644 index 00000000000..77b0207cc80 --- /dev/null +++ b/packages/project/test/expected/resourceLocators/application.a/index_stringTest.html @@ -0,0 +1,9 @@ + + + + Application A + + + + + \ No newline at end of file diff --git a/packages/project/test/fixtures/application.a/package.json b/packages/project/test/fixtures/application.a/package.json new file mode 100644 index 00000000000..7da37b86a56 --- /dev/null +++ b/packages/project/test/fixtures/application.a/package.json @@ -0,0 +1,13 @@ +{ + "name": "application.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based application", + "main": "index.html", + "dependencies": { + "library.d": "file:../library.d", + "collection": "file:../collection" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.a/ui5.yaml b/packages/project/test/fixtures/application.a/ui5.yaml new file mode 100644 index 00000000000..7e28c5d7ce5 --- /dev/null +++ b/packages/project/test/fixtures/application.a/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.a diff --git a/packages/project/test/fixtures/application.a/webapp/index.html b/packages/project/test/fixtures/application.a/webapp/index.html new file mode 100644 index 00000000000..77b0207cc80 --- /dev/null +++ b/packages/project/test/fixtures/application.a/webapp/index.html @@ -0,0 +1,9 @@ + + + + Application A + + + + + \ No newline at end of file diff --git a/packages/project/test/fixtures/application.a/webapp/test.js b/packages/project/test/fixtures/application.a/webapp/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/application.a/webapp/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/fixtures/application.b/package.json b/packages/project/test/fixtures/application.b/package.json new file mode 100644 index 00000000000..0243e3a9001 --- /dev/null +++ b/packages/project/test/fixtures/application.b/package.json @@ -0,0 +1,13 @@ +{ + "name": "application.b", + "version": "1.0.0", + "description": "Simple SAPUI5 based application", + "main": "index.html", + "dependencies": { + "library.d": "file:../library.d", + "collection": "file:../collection" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.b/ui5.yaml b/packages/project/test/fixtures/application.b/ui5.yaml new file mode 100644 index 00000000000..25326df459f --- /dev/null +++ b/packages/project/test/fixtures/application.b/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.b diff --git a/packages/project/test/fixtures/application.b/webapp/embedded/i18n/i18n.properties b/packages/project/test/fixtures/application.b/webapp/embedded/i18n/i18n.properties new file mode 100644 index 00000000000..d93c8a39c0e --- /dev/null +++ b/packages/project/test/fixtures/application.b/webapp/embedded/i18n/i18n.properties @@ -0,0 +1 @@ +title=embedded-i18n \ No newline at end of file diff --git a/packages/project/test/fixtures/application.b/webapp/embedded/i18n/i18n_de.properties b/packages/project/test/fixtures/application.b/webapp/embedded/i18n/i18n_de.properties new file mode 100644 index 00000000000..e513333c842 --- /dev/null +++ b/packages/project/test/fixtures/application.b/webapp/embedded/i18n/i18n_de.properties @@ -0,0 +1 @@ +title=embedded-i18n_de \ No newline at end of file diff --git a/packages/project/test/fixtures/application.b/webapp/embedded/i18n_fr.properties b/packages/project/test/fixtures/application.b/webapp/embedded/i18n_fr.properties new file mode 100644 index 00000000000..85e162740f9 --- /dev/null +++ b/packages/project/test/fixtures/application.b/webapp/embedded/i18n_fr.properties @@ -0,0 +1 @@ +title=embedded-i18n_fr-wrong \ No newline at end of file diff --git a/packages/project/test/fixtures/application.b/webapp/embedded/manifest.json b/packages/project/test/fixtures/application.b/webapp/embedded/manifest.json new file mode 100644 index 00000000000..5ef0c362425 --- /dev/null +++ b/packages/project/test/fixtures/application.b/webapp/embedded/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1.embedded", + "type": "component", + "applicationVersion": { + "version": "1.2.2" + }, + "embeddedBy": "../", + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/application.b/webapp/i18n.properties b/packages/project/test/fixtures/application.b/webapp/i18n.properties new file mode 100644 index 00000000000..88b84f602f5 --- /dev/null +++ b/packages/project/test/fixtures/application.b/webapp/i18n.properties @@ -0,0 +1 @@ +title=app-i18n-wrong \ No newline at end of file diff --git a/packages/project/test/fixtures/application.b/webapp/i18n/i18n.properties b/packages/project/test/fixtures/application.b/webapp/i18n/i18n.properties new file mode 100644 index 00000000000..575fb20d0c3 --- /dev/null +++ b/packages/project/test/fixtures/application.b/webapp/i18n/i18n.properties @@ -0,0 +1 @@ +title=app-i18n \ No newline at end of file diff --git a/packages/project/test/fixtures/application.b/webapp/i18n/i18n_de.properties b/packages/project/test/fixtures/application.b/webapp/i18n/i18n_de.properties new file mode 100644 index 00000000000..f5885803892 --- /dev/null +++ b/packages/project/test/fixtures/application.b/webapp/i18n/i18n_de.properties @@ -0,0 +1 @@ +title=app-i18n_de \ No newline at end of file diff --git a/packages/project/test/fixtures/application.b/webapp/i18n/l10n.properties b/packages/project/test/fixtures/application.b/webapp/i18n/l10n.properties new file mode 100644 index 00000000000..88b84f602f5 --- /dev/null +++ b/packages/project/test/fixtures/application.b/webapp/i18n/l10n.properties @@ -0,0 +1 @@ +title=app-i18n-wrong \ No newline at end of file diff --git a/packages/project/test/fixtures/application.b/webapp/manifest.json b/packages/project/test/fixtures/application.b/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/application.b/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/application.c/package.json b/packages/project/test/fixtures/application.c/package.json new file mode 100644 index 00000000000..1cd37e82d67 --- /dev/null +++ b/packages/project/test/fixtures/application.c/package.json @@ -0,0 +1,13 @@ +{ + "name": "application.c", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - test for dev dependencies. Optional dep gets resolved through root project", + "main": "index.html", + "dependencies": { + "library.e": "file:../library.e", + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c/src/manifest.json b/packages/project/test/fixtures/application.c/src/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/application.c/src/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/application.c/ui5.yaml b/packages/project/test/fixtures/application.c/ui5.yaml new file mode 100644 index 00000000000..3c1565db51f --- /dev/null +++ b/packages/project/test/fixtures/application.c/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.c +resources: + configuration: + paths: + webapp: src diff --git a/packages/project/test/fixtures/application.c2/package.json b/packages/project/test/fixtures/application.c2/package.json new file mode 100644 index 00000000000..7af4231b145 --- /dev/null +++ b/packages/project/test/fixtures/application.c2/package.json @@ -0,0 +1,13 @@ +{ + "name": "application.c2", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - test for dev dependencies. Optional dep gets resolved through other project", + "main": "index.html", + "dependencies": { + "library.e": "file:../library.e", + "library.d-depender": "file:../library.d-depender" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c2/src/manifest.json b/packages/project/test/fixtures/application.c2/src/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/application.c2/src/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/application.c2/ui5.yaml b/packages/project/test/fixtures/application.c2/ui5.yaml new file mode 100644 index 00000000000..132223e4280 --- /dev/null +++ b/packages/project/test/fixtures/application.c2/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.c2 +resources: + configuration: + paths: + webapp: src diff --git a/packages/project/test/fixtures/application.c3/package.json b/packages/project/test/fixtures/application.c3/package.json new file mode 100644 index 00000000000..b51a0f27e23 --- /dev/null +++ b/packages/project/test/fixtures/application.c3/package.json @@ -0,0 +1,13 @@ +{ + "name": "application.c3", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - test for dev dependencies. Optional dep gets resolved through other project (but got hoisted)", + "main": "index.html", + "dependencies": { + "library.e": "file:../library.e", + "library.d-depender": "file:../library.d-depender" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c3/src/manifest.json b/packages/project/test/fixtures/application.c3/src/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/application.c3/src/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/application.c3/ui5.yaml b/packages/project/test/fixtures/application.c3/ui5.yaml new file mode 100644 index 00000000000..b0fbde29c18 --- /dev/null +++ b/packages/project/test/fixtures/application.c3/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.c3 +resources: + configuration: + paths: + webapp: src diff --git a/packages/project/test/fixtures/application.d/package.json b/packages/project/test/fixtures/application.d/package.json new file mode 100644 index 00000000000..e99f770892b --- /dev/null +++ b/packages/project/test/fixtures/application.d/package.json @@ -0,0 +1,12 @@ +{ + "name": "application.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - test for dev dependencies", + "main": "index.html", + "dependencies": { + "library.e": "file:../library.e" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.d/ui5.yaml b/packages/project/test/fixtures/application.d/ui5.yaml new file mode 100644 index 00000000000..60bbbc1c38b --- /dev/null +++ b/packages/project/test/fixtures/application.d/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.d diff --git a/packages/project/test/fixtures/application.d/webapp/manifest.json b/packages/project/test/fixtures/application.d/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/application.d/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/application.e/package.json b/packages/project/test/fixtures/application.e/package.json new file mode 100644 index 00000000000..50f927fcc52 --- /dev/null +++ b/packages/project/test/fixtures/application.e/package.json @@ -0,0 +1,13 @@ +{ + "name": "application.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - test for circular dependencies", + "main": "index.html", + "dependencies": { + "library.f": "file:../library.f", + "library.g": "file:../library.g" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.e/ui5.yaml b/packages/project/test/fixtures/application.e/ui5.yaml new file mode 100644 index 00000000000..9828f57ae35 --- /dev/null +++ b/packages/project/test/fixtures/application.e/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.e diff --git a/packages/project/test/fixtures/application.e/webapp/manifest.json b/packages/project/test/fixtures/application.e/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/application.e/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/application.f/package.json b/packages/project/test/fixtures/application.f/package.json new file mode 100644 index 00000000000..68a71be8c58 --- /dev/null +++ b/packages/project/test/fixtures/application.f/package.json @@ -0,0 +1,18 @@ +{ + "name": "application.f", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - test for ui5-dependencies configuration", + "main": "index.html", + "dependencies": { + "library.d": "file:../library.d", + "library.e": "file:../library.e" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "ui5": { + "dependencies": [ + "library.d" + ] + } +} diff --git a/packages/project/test/fixtures/application.f/ui5.yaml b/packages/project/test/fixtures/application.f/ui5.yaml new file mode 100644 index 00000000000..a6eda244408 --- /dev/null +++ b/packages/project/test/fixtures/application.f/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.f diff --git a/packages/project/test/fixtures/application.f/webapp/manifest.json b/packages/project/test/fixtures/application.f/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/application.f/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/collection/library.a/package.json b/packages/project/test/fixtures/collection/library.a/package.json new file mode 100644 index 00000000000..aec498f7283 --- /dev/null +++ b/packages/project/test/fixtures/collection/library.a/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/collection/library.a/src/library/a/.library b/packages/project/test/fixtures/collection/library.a/src/library/a/.library new file mode 100644 index 00000000000..ef0ea1065bc --- /dev/null +++ b/packages/project/test/fixtures/collection/library.a/src/library/a/.library @@ -0,0 +1,17 @@ + + + + library.a + SAP SE + Some fancy copyright ${currentYear} + ${version} + + Library A + + + + library.d + + + + diff --git a/packages/project/test/fixtures/collection/library.a/src/library/a/themes/base/library.source.less b/packages/project/test/fixtures/collection/library.a/src/library/a/themes/base/library.source.less new file mode 100644 index 00000000000..ff0f1d5e3df --- /dev/null +++ b/packages/project/test/fixtures/collection/library.a/src/library/a/themes/base/library.source.less @@ -0,0 +1,6 @@ +@libraryAColor1: lightgoldenrodyellow; + +.library-a-foo { + color: @libraryAColor1; + padding: 1px 2px 3px 4px; +} diff --git a/packages/project/test/fixtures/collection/library.a/test/library/a/Test.html b/packages/project/test/fixtures/collection/library.a/test/library/a/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/collection/library.a/ui5.yaml b/packages/project/test/fixtures/collection/library.a/ui5.yaml new file mode 100644 index 00000000000..676f166c3fc --- /dev/null +++ b/packages/project/test/fixtures/collection/library.a/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.a diff --git a/packages/project/test/fixtures/collection/library.b/package.json b/packages/project/test/fixtures/collection/library.b/package.json new file mode 100644 index 00000000000..2a0243b1683 --- /dev/null +++ b/packages/project/test/fixtures/collection/library.b/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.b", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/collection/library.b/src/library/b/.library b/packages/project/test/fixtures/collection/library.b/src/library/b/.library new file mode 100644 index 00000000000..7128151f3f4 --- /dev/null +++ b/packages/project/test/fixtures/collection/library.b/src/library/b/.library @@ -0,0 +1,17 @@ + + + + library.b + SAP SE + Some fancy copyright ${currentYear} + ${version} + + Library B + + + + library.d + + + + diff --git a/packages/project/test/fixtures/collection/library.b/test/library/b/Test.html b/packages/project/test/fixtures/collection/library.b/test/library/b/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/collection/library.b/ui5.yaml b/packages/project/test/fixtures/collection/library.b/ui5.yaml new file mode 100644 index 00000000000..3275ac753b5 --- /dev/null +++ b/packages/project/test/fixtures/collection/library.b/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.b diff --git a/packages/project/test/fixtures/collection/library.c/package.json b/packages/project/test/fixtures/collection/library.c/package.json new file mode 100644 index 00000000000..64ac75d6ffe --- /dev/null +++ b/packages/project/test/fixtures/collection/library.c/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.c", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/collection/library.c/src/library/c/.library b/packages/project/test/fixtures/collection/library.c/src/library/c/.library new file mode 100644 index 00000000000..4180ce2af2f --- /dev/null +++ b/packages/project/test/fixtures/collection/library.c/src/library/c/.library @@ -0,0 +1,17 @@ + + + + library.c + SAP SE + ${copyright} + ${version} + + Library C + + + + library.d + + + + diff --git a/packages/project/test/fixtures/collection/library.c/test/LibraryC/Test.html b/packages/project/test/fixtures/collection/library.c/test/LibraryC/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/collection/library.c/ui5.yaml b/packages/project/test/fixtures/collection/library.c/ui5.yaml new file mode 100644 index 00000000000..159b141185e --- /dev/null +++ b/packages/project/test/fixtures/collection/library.c/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.c diff --git a/packages/project/test/fixtures/collection/package.json b/packages/project/test/fixtures/collection/package.json new file mode 100644 index 00000000000..81b948438bd --- /dev/null +++ b/packages/project/test/fixtures/collection/package.json @@ -0,0 +1,18 @@ +{ + "name": "collection", + "version": "1.0.0", + "description": "Simple Collection", + "dependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "collection": { + "modules": { + "library.a": "./library.a", + "library.b": "./library.b", + "library.c": "./library.c" + } + } +} diff --git a/packages/project/test/fixtures/fsInterface/foo.txt b/packages/project/test/fixtures/fsInterface/foo.txt new file mode 100644 index 00000000000..538451fc5e6 --- /dev/null +++ b/packages/project/test/fixtures/fsInterface/foo.txt @@ -0,0 +1 @@ +content of /foo.txt \ No newline at end of file diff --git a/packages/project/test/fixtures/glob/application.a/package.json b/packages/project/test/fixtures/glob/application.a/package.json new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.a/ui5.yaml b/packages/project/test/fixtures/glob/application.a/ui5.yaml new file mode 100644 index 00000000000..7e28c5d7ce5 --- /dev/null +++ b/packages/project/test/fixtures/glob/application.a/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.a diff --git a/packages/project/test/fixtures/glob/application.a/webapp/index.html b/packages/project/test/fixtures/glob/application.a/webapp/index.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.a/webapp/test.js b/packages/project/test/fixtures/glob/application.a/webapp/test.js new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.b/package.json b/packages/project/test/fixtures/glob/application.b/package.json new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.b/ui5.yaml b/packages/project/test/fixtures/glob/application.b/ui5.yaml new file mode 100644 index 00000000000..25326df459f --- /dev/null +++ b/packages/project/test/fixtures/glob/application.b/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.b diff --git a/packages/project/test/fixtures/glob/application.b/webapp/embedded/i18n/i18n.properties b/packages/project/test/fixtures/glob/application.b/webapp/embedded/i18n/i18n.properties new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.b/webapp/embedded/i18n/i18n_de.properties b/packages/project/test/fixtures/glob/application.b/webapp/embedded/i18n/i18n_de.properties new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.b/webapp/embedded/i18n_fr.properties b/packages/project/test/fixtures/glob/application.b/webapp/embedded/i18n_fr.properties new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.b/webapp/embedded/manifest.json b/packages/project/test/fixtures/glob/application.b/webapp/embedded/manifest.json new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.b/webapp/i18n.properties b/packages/project/test/fixtures/glob/application.b/webapp/i18n.properties new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.b/webapp/i18n/i18n.properties b/packages/project/test/fixtures/glob/application.b/webapp/i18n/i18n.properties new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.b/webapp/i18n/i18n_de.properties b/packages/project/test/fixtures/glob/application.b/webapp/i18n/i18n_de.properties new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.b/webapp/i18n/l10n.properties b/packages/project/test/fixtures/glob/application.b/webapp/i18n/l10n.properties new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/application.b/webapp/manifest.json b/packages/project/test/fixtures/glob/application.b/webapp/manifest.json new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/glob/package.json b/packages/project/test/fixtures/glob/package.json new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/init-application/package.json b/packages/project/test/fixtures/init-application/package.json new file mode 100644 index 00000000000..63696d06cbd --- /dev/null +++ b/packages/project/test/fixtures/init-application/package.json @@ -0,0 +1,12 @@ +{ + "name": "init-application", + "version": "1.0.0", + "private": true, + "description": "", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "UNLICENSED" +} diff --git a/packages/project/test/fixtures/init-application/webapp/.gitkeep b/packages/project/test/fixtures/init-application/webapp/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/init-invalid-no-package-json/webapp/.gitkeep b/packages/project/test/fixtures/init-invalid-no-package-json/webapp/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/init-invalid-webapp-src/package.json b/packages/project/test/fixtures/init-invalid-webapp-src/package.json new file mode 100644 index 00000000000..a9eff2a7949 --- /dev/null +++ b/packages/project/test/fixtures/init-invalid-webapp-src/package.json @@ -0,0 +1,12 @@ +{ + "name": "init-invalid", + "version": "1.0.0", + "private": true, + "description": "", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "UNLICENSED" +} diff --git a/packages/project/test/fixtures/init-invalid-webapp-src/src/.gitkeep b/packages/project/test/fixtures/init-invalid-webapp-src/src/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/init-invalid-webapp-src/webapp/.gitkeep b/packages/project/test/fixtures/init-invalid-webapp-src/webapp/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/init-library/package.json b/packages/project/test/fixtures/init-library/package.json new file mode 100644 index 00000000000..5037d8cbea4 --- /dev/null +++ b/packages/project/test/fixtures/init-library/package.json @@ -0,0 +1,12 @@ +{ + "name": "init-library", + "version": "1.0.0", + "private": true, + "description": "", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "UNLICENSED" +} diff --git a/packages/project/test/fixtures/init-library/src/.gitkeep b/packages/project/test/fixtures/init-library/src/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/init-library/test/.gitkeep b/packages/project/test/fixtures/init-library/test/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/lbt/modules/bundle.js b/packages/project/test/fixtures/lbt/modules/bundle.js new file mode 100644 index 00000000000..2ee4601c9a3 --- /dev/null +++ b/packages/project/test/fixtures/lbt/modules/bundle.js @@ -0,0 +1,12 @@ +sap.ui.predefine("sap/m/CheckBox",["sap/ui/core/Control"],function(o){"use strict";var n=o.extend("sap.m.CheckBox");return n}); +sap.ui.predefine("sap/ui/core/Core",[],function(){"use strict";return {}}); +sap.ui.predefine("todo/Component",["sap/ui/core/UIComponent"],function(e){"use strict";return e.extend("todo.Component",{metadata:{manifest:"json"}})}); +sap.ui.predefine("todo/controller/App.controller",["sap/ui/core/mvc/Controller"],function(e){"use strict";return e.extend("todo.controller.App")}); +jQuery.sap.registerPreloadedModules({ +"version":"2.0", +"modules":{ + "sap/m/messagebundle.properties":'#This is the resource bundle for the SAPUI5 sar\r\n', + "todo/manifest.json":'{"sap.app":{"id":"todo","type":"application"},"sap.ui5":{"rootView":{"viewName":"todo.view.App","type":"XML","id":"app"},"models":{"i18n":{"type":"sap.ui.model.resource.ResourceModel","settings":{"bundleName":"todo.i18n.messageBundle"}},"":{"type":"sap.ui.model.json.JSONModel","settings":"/model/todoitems.json"}},"resources":{"css":[{"uri":"css/styles.css"}]}}}', + "todo/model/todoitems.json":'{"newTodo":"","todos":[{"title":"Start this app","completed":true},{"title":"Learn OpenUI5","completed":false}],"itemsRemovable":true,"someCompleted":true,"completedCount":1}', + "todo/view/App.view.xml":'
\n' +}}); diff --git a/packages/project/test/fixtures/lbt/modules/declare_function_expr_scope.js b/packages/project/test/fixtures/lbt/modules/declare_function_expr_scope.js new file mode 100644 index 00000000000..661eb022477 --- /dev/null +++ b/packages/project/test/fixtures/lbt/modules/declare_function_expr_scope.js @@ -0,0 +1,43 @@ +// uses a function expr + additional arguments to create a scope +// Note that this scope style is old-fashioned and results in a JSLint warning! +(function($1, window) { + + //declares module sap.ui.testmodule + jQuery.sap.declare("sap.ui.testmodule"); + + // top level statements in the scope + jQuery.sap.require("top.require.void"); + var x = jQuery.sap.require("top.require.var"); + x = jQuery.sap.require("top.require.assign"); + var xs = sap.ui.requireSync("top/requireSync/var"); + xs = sap.ui.requireSync("top/requireSync/assign"); + + // a block with require statements + { + jQuery.sap.require("block.require.void"); + var z = jQuery.sap.require("block.require.var"); + z = jQuery.sap.require("block.require.assign"); + var zs = sap.ui.requireSync("block/requireSync/var"); + zs = sap.ui.requireSync("block/requireSync/assign"); + } + + // a nested function invocation with require statements + (function() { + jQuery.sap.require("nested.scope.require.void"); + var z = jQuery.sap.require("nested.scope.require.var"); + z = jQuery.sap.require("nested.scope.require.assign"); + var zs = sap.ui.requireSync("nested/scope/requireSync/var"); + zs = sap.ui.requireSync("nested/scope/requireSync/assign"); + }()); + + //a nested function expression with require statements + (function() { + jQuery.sap.require("nested.scope2.require.void"); + var z = jQuery.sap.require("nested.scope2.require.var"); + z = jQuery.sap.require("nested.scope2.require.assign"); + var zs = sap.ui.requireSync("nested/scope2/requireSync/var"); + zs = sap.ui.requireSync("nested/scope2/requireSync/assign"); + })(); + +})(jQuery, this); + diff --git a/packages/project/test/fixtures/lbt/modules/declare_function_invocation_scope.js b/packages/project/test/fixtures/lbt/modules/declare_function_invocation_scope.js new file mode 100644 index 00000000000..a1ba6cbba41 --- /dev/null +++ b/packages/project/test/fixtures/lbt/modules/declare_function_invocation_scope.js @@ -0,0 +1,41 @@ +//uses a function invocation expr to create a scope +(function($2, window){ + + //declares module sap.ui.testmodule + jQuery.sap.declare("sap.ui.testmodule"); + + // top level statements in the scope + jQuery.sap.require("top.require.void"); + var x = jQuery.sap.require("top.require.var"); + x = jQuery.sap.require("top.require.assign"); + var xs = sap.ui.requireSync("top/requireSync/var"); + xs = sap.ui.requireSync("top/requireSync/assign"); + + // a block with require statements + { + jQuery.sap.require("block.require.void"); + var z = jQuery.sap.require("block.require.var"); + z = jQuery.sap.require("block.require.assign"); + var zs = sap.ui.requireSync("block/requireSync/var"); + zs = sap.ui.requireSync("block/requireSync/assign"); + } + + // a nested function invocation with require statements + (function() { + jQuery.sap.require("nested.scope.require.void"); + var z = jQuery.sap.require("nested.scope.require.var"); + z = jQuery.sap.require("nested.scope.require.assign"); + var zs = sap.ui.requireSync("nested/scope/requireSync/var"); + zs = sap.ui.requireSync("nested/scope/requireSync/assign"); + }()); + + //a nested function expression with require statements + (function() { + jQuery.sap.require("nested.scope2.require.void"); + var z = jQuery.sap.require("nested.scope2.require.var"); + z = jQuery.sap.require("nested.scope2.require.assign"); + var zs = sap.ui.requireSync("nested/scope2/requireSync/var"); + zs = sap.ui.requireSync("nested/scope2/requireSync/assign"); + })(); + +}(jQuery, this)); diff --git a/packages/project/test/fixtures/lbt/modules/declare_toplevel.js b/packages/project/test/fixtures/lbt/modules/declare_toplevel.js new file mode 100644 index 00000000000..f849f88de0d --- /dev/null +++ b/packages/project/test/fixtures/lbt/modules/declare_toplevel.js @@ -0,0 +1,36 @@ +//declares module sap.ui.testmodule +jQuery.sap.declare("sap.ui.testmodule"); + +// top level statements in the scope +jQuery.sap.require("top.require.void"); +var x = jQuery.sap.require("top.require.var"); +x = jQuery.sap.require("top.require.assign"); +var xs = sap.ui.requireSync("top/requireSync/var"); +xs = sap.ui.requireSync("top/requireSync/assign"); + +// a block with require statements +{ + jQuery.sap.require("block.require.void"); + var z = jQuery.sap.require("block.require.var"); + z = jQuery.sap.require("block.require.assign"); + var zs = sap.ui.requireSync("block/requireSync/var"); + zs = sap.ui.requireSync("block/requireSync/assign"); +} + +// a nested function invocation with require statements +(function() { + jQuery.sap.require("nested.scope.require.void"); + var z = jQuery.sap.require("nested.scope.require.var"); + z = jQuery.sap.require("nested.scope.require.assign"); + var zs = sap.ui.requireSync("nested/scope/requireSync/var"); + zs = sap.ui.requireSync("nested/scope/requireSync/assign"); +}()); + +//a nested function expression with require statements +(function() { + jQuery.sap.require("nested.scope2.require.void"); + var z = jQuery.sap.require("nested.scope2.require.var"); + z = jQuery.sap.require("nested.scope2.require.assign"); + var zs = sap.ui.requireSync("nested/scope2/requireSync/var"); + zs = sap.ui.requireSync("nested/scope2/requireSync/assign"); +})(); diff --git a/packages/project/test/fixtures/lbt/modules/define_toplevel_named.js b/packages/project/test/fixtures/lbt/modules/define_toplevel_named.js new file mode 100644 index 00000000000..4f3f19cbcce --- /dev/null +++ b/packages/project/test/fixtures/lbt/modules/define_toplevel_named.js @@ -0,0 +1,4 @@ +//declares module sap.ui.testmodule +sap.ui.define("sap/ui/testmodule", ["define/arg1","define/arg2"], function(Strings,Dom,Something) { + +}); diff --git a/packages/project/test/fixtures/lbt/modules/define_toplevel_unnamed.js b/packages/project/test/fixtures/lbt/modules/define_toplevel_unnamed.js new file mode 100644 index 00000000000..245c0697a0c --- /dev/null +++ b/packages/project/test/fixtures/lbt/modules/define_toplevel_unnamed.js @@ -0,0 +1,4 @@ +//declares module sap.ui.testmodule +sap.ui.define(["define/arg1","define/arg2"], function(Strings,Dom,Something) { + +}); diff --git a/packages/project/test/fixtures/lbt/modules/not_a_module.js b/packages/project/test/fixtures/lbt/modules/not_a_module.js new file mode 100644 index 00000000000..786cc378cb2 --- /dev/null +++ b/packages/project/test/fixtures/lbt/modules/not_a_module.js @@ -0,0 +1 @@ +// this file does not contain a UI5 module definition \ No newline at end of file diff --git a/packages/project/test/fixtures/library.d-depender/main/src/library/d/.library b/packages/project/test/fixtures/library.d-depender/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/library.d-depender/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/library.d-depender/main/src/library/d/some.js b/packages/project/test/fixtures/library.d-depender/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/library.d-depender/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/library.d-depender/main/test/library/d/Test.html b/packages/project/test/fixtures/library.d-depender/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/library.d-depender/package.json b/packages/project/test/fixtures/library.d-depender/package.json new file mode 100644 index 00000000000..9f88fc95f0c --- /dev/null +++ b/packages/project/test/fixtures/library.d-depender/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.d-depender", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.d-depender/ui5.yaml b/packages/project/test/fixtures/library.d-depender/ui5.yaml new file mode 100644 index 00000000000..d3a67f6da5a --- /dev/null +++ b/packages/project/test/fixtures/library.d-depender/ui5.yaml @@ -0,0 +1,11 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d-depender +resources: + configuration: + paths: + src: main/src + test: main/test + diff --git a/packages/project/test/fixtures/library.d/main/src/library/d/.library b/packages/project/test/fixtures/library.d/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/library.d/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/library.d/main/src/library/d/some.js b/packages/project/test/fixtures/library.d/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/library.d/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/library.d/main/test/library/d/Test.html b/packages/project/test/fixtures/library.d/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/library.d/package.json b/packages/project/test/fixtures/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.d/ui5.yaml b/packages/project/test/fixtures/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/library.e/package.json b/packages/project/test/fixtures/library.e/package.json new file mode 100644 index 00000000000..9ce874ff55a --- /dev/null +++ b/packages/project/test/fixtures/library.e/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.e", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for dev dependencies", + "devDependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.e/src/library/e/.library b/packages/project/test/fixtures/library.e/src/library/e/.library new file mode 100644 index 00000000000..20c99070048 --- /dev/null +++ b/packages/project/test/fixtures/library.e/src/library/e/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library E + + diff --git a/packages/project/test/fixtures/library.e/src/library/e/some.js b/packages/project/test/fixtures/library.e/src/library/e/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/library.e/src/library/e/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/library.e/test/library/e/Test.html b/packages/project/test/fixtures/library.e/test/library/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/library.e/ui5.yaml b/packages/project/test/fixtures/library.e/ui5.yaml new file mode 100644 index 00000000000..5dee17f60a5 --- /dev/null +++ b/packages/project/test/fixtures/library.e/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.e + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/library.f/package.json b/packages/project/test/fixtures/library.f/package.json new file mode 100644 index 00000000000..d8f009d42d7 --- /dev/null +++ b/packages/project/test/fixtures/library.f/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.f", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for circular dependencies", + "dependencies": { + "library.g": "file:../library.g" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.f/ui5.yaml b/packages/project/test/fixtures/library.f/ui5.yaml new file mode 100644 index 00000000000..38440bacbc6 --- /dev/null +++ b/packages/project/test/fixtures/library.f/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.f diff --git a/packages/project/test/fixtures/library.g/package.json b/packages/project/test/fixtures/library.g/package.json new file mode 100644 index 00000000000..fff39011db1 --- /dev/null +++ b/packages/project/test/fixtures/library.g/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.g", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for circular dependencies", + "devDependencies": { + "library.f": "file:../library.f" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.g/ui5.yaml b/packages/project/test/fixtures/library.g/ui5.yaml new file mode 100644 index 00000000000..9c528171825 --- /dev/null +++ b/packages/project/test/fixtures/library.g/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.g diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js new file mode 100644 index 00000000000..11d36d903bd --- /dev/null +++ b/packages/project/test/lib/projectPreprocessor.js @@ -0,0 +1,973 @@ +const {test} = require("ava"); +const path = require("path"); +const projectPreprocessor = require("../..").projectPreprocessor; +const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); +const applicationBPath = path.join(__dirname, "..", "fixtures", "application.b"); +const applicationCPath = path.join(__dirname, "..", "fixtures", "application.c"); +const libraryAPath = path.join(__dirname, "..", "fixtures", "collection", "library.a"); +const libraryBPath = path.join(__dirname, "..", "fixtures", "collection", "library.b"); +// const libraryCPath = path.join(__dirname, "..", "fixtures", "collection", "library.c"); +const libraryDPath = path.join(__dirname, "..", "fixtures", "library.d"); + +test("Project with inline configuration", (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + type: "application", + metadata: { + name: "xy" + } + }; + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + _level: 0, + type: "application", + metadata: { + name: "xy", + }, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + }, + pathMappings: { + "/": "webapp", + } + }, + dependencies: [], + id: "application.a", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath + }, "Parsed correctly"); + }); +}); + +test("Project with configPath", (t) => { + const tree = { + id: "application.a", + path: applicationBPath, // B, not A - just to have something different + dependencies: [], + version: "1.0.0" + }; + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + _level: 0, + type: "application", + metadata: { + name: "application.b", + namespace: "id1" + }, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + }, + pathMappings: { + "/": "webapp", + } + }, + dependencies: [], + id: "application.a", + version: "1.0.0", + specVersion: "0.1", + path: applicationBPath + }, "Parsed correctly"); + }); +}); + +test("Project with ui5.yaml at default location", (t) => { + const tree = { + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [] + }; + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + _level: 0, + type: "application", + metadata: { + name: "application.a" + }, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + }, + pathMappings: { + "/": "webapp", + } + }, + dependencies: [], + id: "application.a", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath + }, "Parsed correctly"); + }); +}); + +test("Project with ui5.yaml at default location and some configuration", (t) => { + const tree = { + id: "application.c", + version: "1.0.0", + path: applicationCPath, + dependencies: [] + }; + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + _level: 0, + type: "application", + metadata: { + name: "application.c", + namespace: "id1" + }, + resources: { + configuration: { + paths: { + webapp: "src" + } + }, + pathMappings: { + "/": "src", + } + }, + dependencies: [], + id: "application.c", + version: "1.0.0", + specVersion: "0.1", + path: applicationCPath + }, "Parsed correctly"); + }); +}); + +test("Missing configuration for root project", (t) => { + const tree = { + id: "application.a", + path: "non-existent", + dependencies: [] + }; + return t.throws(projectPreprocessor.processTree(tree), + "Failed to configure root project \"application.a\". Please check verbose log for details.", + "Rejected with error"); +}); + +test("Missing id for root project", (t) => { + const tree = { + path: path.join(__dirname, "../fixtures/application.a"), + dependencies: [] + }; + return t.throws(projectPreprocessor.processTree(tree), + "Encountered project with missing id", "Rejected with error"); +}); + +test("No type configured for root project", (t) => { + const tree = { + id: "application.a", + version: "1.0.0", + specVersion: "0.1", + path: path.join(__dirname, "../fixtures/application.a"), + dependencies: [], + metadata: { + name: "application.a" + } + }; + return t.throws(projectPreprocessor.processTree(tree), + "No type configured for root project application.a", + "Rejected with error"); +}); + +test("Missing dependencies", (t) => { + const tree = ({ + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [] + }); + return t.notThrows(projectPreprocessor.processTree(tree), + "Gracefully accepted project with no dependency attribute"); +}); + +test("Inconsistent dependencies with same ID", (t) => { + // The one closer to the root should win + const tree = { + id: "application.a", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath, + type: "application", + metadata: { + name: "application.a" + }, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + specVersion: "0.1", + path: libraryDPath, + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + paths: { + src: "main/src", + test: "main/test" + } + } + }, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + specVersion: "0.1", + path: libraryBPath, // B, not A - inconsistency! + type: "library", + metadata: { + name: "library.XY", + }, + dependencies: [] + } + ] + }, + { + id: "library.a", + version: "1.0.0", + specVersion: "0.1", + path: libraryAPath, + type: "library", + metadata: { + name: "library.a", + }, + dependencies: [] + } + ] + }; + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + id: "application.a", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath, + _level: 0, + type: "application", + metadata: { + name: "application.a" + }, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + }, + pathMappings: { + "/": "webapp" + } + }, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + specVersion: "0.1", + path: libraryDPath, + _level: 1, + type: "library", + metadata: { + name: "library.d", + copyright: "Some fancy copyright", + }, + resources: { + configuration: { + paths: { + src: "main/src", + test: "main/test" + } + }, + pathMappings: { + "/resources/": "main/src", + "/test-resources/": "main/test" + } + }, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + specVersion: "0.1", + path: libraryAPath, + _level: 1, + type: "library", + metadata: { + name: "library.a", + copyright: "Some fancy copyright ${currentYear}", + }, + resources: { + configuration: { + paths: { + src: "src", + test: "test" + } + }, + pathMappings: { + "/resources/": "src", + "/test-resources/": "test" + } + }, + dependencies: [] + } + ] + }, + { + id: "library.a", + version: "1.0.0", + specVersion: "0.1", + path: libraryAPath, + _level: 1, + type: "library", + metadata: { + name: "library.a", + copyright: "Some fancy copyright ${currentYear}", + }, + resources: { + configuration: { + paths: { + src: "src", + test: "test" + } + }, + pathMappings: { + "/resources/": "src", + "/test-resources/": "test" + } + }, + dependencies: [] + } + ] + }, "Parsed correctly"); + }); +}); + +test("Project tree A with inline configs", (t) => { + return projectPreprocessor.processTree(treeAWithInlineConfigs).then((parsedTree) => { + t.deepEqual(parsedTree, expectedTreeAWithInlineConfigs, "Parsed correctly"); + }); +}); + +test("Project tree A with configPaths", (t) => { + return projectPreprocessor.processTree(treeAWithConfigPaths).then((parsedTree) => { + t.deepEqual(parsedTree, expectedTreeAWithConfigPaths, "Parsed correctly"); + }); +}); + +test("Project tree A with default YAMLs", (t) => { + return projectPreprocessor.processTree(treeAWithDefaultYamls).then((parsedTree) => { + t.deepEqual(parsedTree, expectedTreeAWithDefaultYamls, "Parsed correctly"); + }); +}); + +test("Project tree B with inline configs", (t) => { + // Tree B depends on Library B which has a dependency to Library D + return projectPreprocessor.processTree(treeBWithInlineConfigs).then((parsedTree) => { + t.deepEqual(parsedTree, expectedTreeBWithInlineConfigs, "Parsed correctly"); + }); +}); + +/* ========================= */ +/* ======= Test data ======= */ + +/* === Tree A === */ +const treeAWithInlineConfigs = { + id: "application.a", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath, + type: "application", + metadata: { + name: "application.a", + }, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + specVersion: "0.1", + path: libraryDPath, + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + paths: { + src: "main/src", + test: "main/test" + } + } + }, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + specVersion: "0.1", + path: libraryAPath, + type: "library", + metadata: { + name: "library.a", + }, + dependencies: [] + } + ] + }, + { + id: "library.a", + version: "1.0.0", + specVersion: "0.1", + path: libraryAPath, + type: "library", + metadata: { + name: "library.a" + }, + dependencies: [] + } + ] +}; + +const treeAWithConfigPaths = { + id: "application.a", + version: "1.0.0", + path: applicationAPath, + configPath: path.join(applicationAPath, "ui5.yaml"), + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: libraryDPath, + configPath: path.join(libraryDPath, "ui5.yaml"), + dependencies: [ + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + configPath: path.join(libraryAPath, "ui5.yaml"), + dependencies: [] + } + ] + }, + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + configPath: path.join(libraryAPath, "ui5.yaml"), + dependencies: [] + } + ] +}; + +const treeAWithDefaultYamls = { + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: libraryDPath, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [] + } + ] + }, + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [] + } + ] +}; + +const expectedTreeAWithInlineConfigs = { + "id": "application.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": applicationAPath, + "_level": 0, + "type": "application", + "metadata": { + "name": "application.a", + }, + "resources": { + "configuration": { + "paths": { + "webapp": "webapp" + } + }, + "pathMappings": { + "/": "webapp" + } + }, + "dependencies": [ + { + "id": "library.d", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryDPath, + "_level": 1, + "type": "library", + "metadata": { + "name": "library.d", + "copyright": "Some fancy copyright" + }, + "resources": { + "configuration": { + "paths": { + "src": "main/src", + "test": "main/test" + } + }, + "pathMappings": { + "/resources/": "main/src", + "/test-resources/": "main/test" + } + }, + "dependencies": [ + { + "id": "library.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryAPath, + "_level": 1, + "type": "library", + "metadata": { + "name": "library.a", + "copyright": "Some fancy copyright ${currentYear}", + }, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + }, + "dependencies": [] + } + ] + }, + { + "id": "library.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryAPath, + "_level": 1, + "type": "library", + "metadata": { + "name": "library.a", + "copyright": "Some fancy copyright ${currentYear}", + }, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + }, + "dependencies": [] + } + ] +}; +const expectedTreeAWithDefaultYamls = expectedTreeAWithInlineConfigs; + +// This is expectedTreeAWithInlineConfigs with added configPath attributes +const expectedTreeAWithConfigPaths = { + "id": "application.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": applicationAPath, + "configPath": path.join(applicationAPath, "ui5.yaml"), + "_level": 0, + "type": "application", + "metadata": { + "name": "application.a", + }, + "resources": { + "configuration": { + "paths": { + "webapp": "webapp" + } + }, + "pathMappings": { + "/": "webapp" + } + }, + "dependencies": [ + { + "id": "library.d", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryDPath, + "configPath": path.join(libraryDPath, "ui5.yaml"), + "_level": 1, + "type": "library", + "metadata": { + "name": "library.d", + "copyright": "Some fancy copyright", + }, + "resources": { + "configuration": { + "paths": { + "src": "main/src", + "test": "main/test" + } + }, + "pathMappings": { + "/resources/": "main/src", + "/test-resources/": "main/test" + } + }, + "dependencies": [ + { + "id": "library.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryAPath, + "configPath": path.join(libraryAPath, "ui5.yaml"), + "_level": 1, + "type": "library", + "metadata": { + "name": "library.a", + "copyright": "Some fancy copyright ${currentYear}", + }, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + }, + "dependencies": [] + } + ] + }, + { + "id": "library.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryAPath, + "configPath": path.join(libraryAPath, "ui5.yaml"), + "_level": 1, + "type": "library", + "metadata": { + "name": "library.a", + "copyright": "Some fancy copyright ${currentYear}", + }, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + }, + "dependencies": [] + } + ] +}; + +/* === Tree B === */ +const treeBWithInlineConfigs = { + id: "application.b", + version: "1.0.0", + specVersion: "0.1", + path: applicationBPath, + type: "application", + metadata: { + name: "application.b" + }, + dependencies: [ + { + id: "library.b", + version: "1.0.0", + specVersion: "0.1", + path: libraryBPath, + type: "library", + metadata: { + name: "library.b", + }, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + specVersion: "0.1", + path: libraryDPath, + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + paths: { + src: "main/src", + test: "main/test" + } + } + }, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + specVersion: "0.1", + path: libraryAPath, + type: "library", + metadata: { + name: "library.a" + }, + dependencies: [] + } + ] + } + ] + }, + { + id: "library.d", + version: "1.0.0", + specVersion: "0.1", + path: libraryDPath, + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + paths: { + src: "main/src", + test: "main/test" + } + } + }, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + specVersion: "0.1", + path: libraryAPath, + type: "library", + metadata: { + name: "library.a" + }, + dependencies: [] + } + ] + } + ] +}; + +const expectedTreeBWithInlineConfigs = { + "id": "application.b", + "version": "1.0.0", + "specVersion": "0.1", + "path": applicationBPath, + "_level": 0, + "type": "application", + "metadata": { + "name": "application.b", + "namespace": "id1" + }, + "resources": { + "configuration": { + "paths": { + "webapp": "webapp" + } + }, + "pathMappings": { + "/": "webapp" + } + }, + "dependencies": [ + { + "id": "library.b", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryBPath, + "_level": 1, + "type": "library", + "metadata": { + "name": "library.b", + "copyright": "Some fancy copyright ${currentYear}", + }, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + }, + "dependencies": [ + { + "id": "library.d", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryDPath, + "_level": 1, + "type": "library", + "metadata": { + "name": "library.d", + "copyright": "Some fancy copyright" + }, + "resources": { + "configuration": { + "paths": { + "src": "main/src", + "test": "main/test" + } + }, + "pathMappings": { + "/resources/": "main/src", + "/test-resources/": "main/test" + } + }, + "dependencies": [ + { + "id": "library.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryAPath, + "_level": 2, + "type": "library", + "metadata": { + "name": "library.a", + "copyright": "Some fancy copyright ${currentYear}", + }, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + }, + "dependencies": [] + } + ] + } + ] + }, + { + "id": "library.d", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryDPath, + "_level": 1, + "type": "library", + "metadata": { + "name": "library.d", + "copyright": "Some fancy copyright" + }, + "resources": { + "configuration": { + "paths": { + "src": "main/src", + "test": "main/test" + } + }, + "pathMappings": { + "/resources/": "main/src", + "/test-resources/": "main/test" + } + }, + "dependencies": [ + { + "id": "library.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": libraryAPath, + "_level": 2, + "type": "library", + "metadata": { + "name": "library.a", + "copyright": "Some fancy copyright ${currentYear}" + }, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + }, + "dependencies": [] + } + ] + } + ] +}; + +test("Application version in package.json data is missing", (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + type: "application", + metadata: { + name: "xy" + } + }; + return t.throws(projectPreprocessor.processTree(tree)).then((error) => { + t.is(error.message, "\"version\" is missing for project " + tree.id); + }); +}); + +test("Library version in package.json data is missing", (t) => { + const tree = { + id: "library.d", + path: libraryDPath, + type: "library", + metadata: { + name: "library.d" + } + }; + return t.throws(projectPreprocessor.processTree(tree)).then((error) => { + t.is(error.message, "\"version\" is missing for project " + tree.id); + }); +}); diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js new file mode 100644 index 00000000000..1633211427a --- /dev/null +++ b/packages/project/test/lib/translators/npm.js @@ -0,0 +1,208 @@ +const {test} = require("ava"); +const path = require("path"); +const npmTranslator = require("../../..").translators.npm; +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const applicationCPath = path.join(__dirname, "..", "..", "fixtures", "application.c"); +const applicationC2Path = path.join(__dirname, "..", "..", "fixtures", "application.c2"); +const applicationC3Path = path.join(__dirname, "..", "..", "fixtures", "application.c3"); +const applicationDPath = path.join(__dirname, "..", "..", "fixtures", "application.d"); +const applicationFPath = path.join(__dirname, "..", "..", "fixtures", "application.f"); + +test("AppA: project with collection dependency", (t) => { + return npmTranslator.generateDependencyTree(applicationAPath).then((parsedTree) => { + t.deepEqual(parsedTree, applicationATree, "Parsed correctly"); + }); +}); + +test("AppC: project with dependency with optional dependency resolved through root project", (t) => { + return npmTranslator.generateDependencyTree(applicationCPath).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCTree, "Parsed correctly"); + }); +}); + +test("AppC2: project with dependency with optional dependency resolved through other project", (t) => { + return npmTranslator.generateDependencyTree(applicationC2Path).then((parsedTree) => { + t.deepEqual(parsedTree, applicationC2Tree, "Parsed correctly"); + }); +}); + +test("AppC3: project with dependency with optional dependency resolved through other project (but got hoisted)", (t) => { + return npmTranslator.generateDependencyTree(applicationC3Path).then((parsedTree) => { + t.deepEqual(parsedTree, applicationC3Tree, "Parsed correctly"); + }); +}); + +test("AppD: project with dependency with unresolved optional dependency", (t) => { + // application.d`s dependency "library.e" has an optional dependency to "library.d" + // which is already present in the node_modules directory of library.e + return npmTranslator.generateDependencyTree(applicationDPath).then((parsedTree) => { + t.deepEqual(parsedTree, applicationDTree, "Parsed correctly. library.d is not in dependency tree."); + }); +}); + +test("AppF: project with UI5-dependencies", (t) => { + return npmTranslator.generateDependencyTree(applicationFPath).then((parsedTree) => { + t.deepEqual(parsedTree, applicationFTree, "Parsed correctly"); + }); +}); + +/* ========================= */ +/* ======= Test data ======= */ + +const applicationATree = { + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "library.d"), + dependencies: [] + }, + { + id: "library.a", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.a"), + dependencies: [] + }, + { + id: "library.b", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.b"), + dependencies: [] + }, + { + id: "library.c", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.c"), + dependencies: [] + } + ] +}; + +const applicationCTree = { + id: "application.c", + version: "1.0.0", + path: applicationCPath, + dependencies: [ + { + id: "library.e", + version: "1.0.0", + path: path.join(applicationCPath, "node_modules", "library.e"), + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: path.join(applicationCPath, "node_modules", "library.d"), + dependencies: [] + } + ] + }, + { + id: "library.d", + version: "1.0.0", + path: path.join(applicationCPath, "node_modules", "library.d"), + dependencies: [] + } + ] +}; + + +const applicationC2Tree = { + id: "application.c2", + version: "1.0.0", + path: applicationC2Path, + dependencies: [ + { + id: "library.e", + version: "1.0.0", + path: path.join(applicationC2Path, "node_modules", "library.e"), + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: path.join(applicationC2Path, "node_modules", "library.d-depender", + "node_modules", "library.d"), + dependencies: [] + } + ] + }, + { + id: "library.d-depender", + version: "1.0.0", + path: path.join(applicationC2Path, "node_modules", "library.d-depender"), + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: path.join(applicationC2Path, "node_modules", "library.d-depender", + "node_modules", "library.d"), + dependencies: [] + } + ] + } + ] +}; + +const applicationC3Tree = { + id: "application.c3", + version: "1.0.0", + path: applicationC3Path, + dependencies: [ + { + id: "library.e", + version: "1.0.0", + path: path.join(applicationC3Path, "node_modules", "library.e"), + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: path.join(applicationC3Path, "node_modules", "library.d"), + dependencies: [] + } + ] + }, + { + id: "library.d-depender", + version: "1.0.0", + path: path.join(applicationC3Path, "node_modules", "library.d-depender"), + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: path.join(applicationC3Path, "node_modules", "library.d"), + dependencies: [] + } + ] + } + ] +}; + +const applicationDTree = { + id: "application.d", + version: "1.0.0", + path: applicationDPath, + dependencies: [ + { + id: "library.e", + version: "1.0.0", + path: path.join(applicationDPath, "node_modules", "library.e"), + dependencies: [] + } + ] +}; + +const applicationFTree = { + id: "application.f", + version: "1.0.0", + path: applicationFPath, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: path.join(applicationFPath, "node_modules", "library.d"), + dependencies: [] + } + ] +}; From b30b55b5b0bd4d38d6414744f8d9989aa5e1ddb4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 30 Mar 2018 17:34:57 +0200 Subject: [PATCH 0002/1272] [ui5-project][INTERNAL] Add missing test module dependencies We simulate the file structure that 'npm install' would have created --- packages/project/.gitignore | 1 + .../collection/library.a/package.json | 17 +++++++++++++++++ .../library.a/src/library/a/.library | 17 +++++++++++++++++ .../library/a/themes/base/library.source.less | 6 ++++++ .../library.a/test/library/a/Test.html | 0 .../node_modules/collection/library.a/ui5.yaml | 5 +++++ .../collection/library.b/package.json | 9 +++++++++ .../library.b/src/library/b/.library | 17 +++++++++++++++++ .../library.b/test/library/b/Test.html | 0 .../node_modules/collection/library.b/ui5.yaml | 5 +++++ .../collection/library.c/package.json | 9 +++++++++ .../library.c/src/library/c/.library | 17 +++++++++++++++++ .../library.c/test/LibraryC/Test.html | 0 .../node_modules/collection/library.c/ui5.yaml | 5 +++++ .../node_modules/library.d/package.json | 9 +++++++++ .../library.d/src/library/d/.library | 11 +++++++++++ .../library.d/test/library/d/Test.html | 0 .../collection/node_modules/library.d/ui5.yaml | 10 ++++++++++ .../node_modules/collection/package.json | 18 ++++++++++++++++++ .../library.d/main/src/library/d/.library | 11 +++++++++++ .../library.d/main/src/library/d/some.js | 4 ++++ .../library.d/main/test/library/d/Test.html | 0 .../node_modules/library.d/package.json | 9 +++++++++ .../node_modules/library.d/ui5.yaml | 10 ++++++++++ .../collection/library.a/package.json | 17 +++++++++++++++++ .../library.a/src/library/a/.library | 17 +++++++++++++++++ .../library/a/themes/base/library.source.less | 6 ++++++ .../library.a/test/library/a/Test.html | 0 .../node_modules/collection/library.a/ui5.yaml | 5 +++++ .../collection/library.b/package.json | 9 +++++++++ .../library.b/src/library/b/.library | 17 +++++++++++++++++ .../library.b/test/library/b/Test.html | 0 .../node_modules/collection/library.b/ui5.yaml | 5 +++++ .../collection/library.c/package.json | 9 +++++++++ .../library.c/src/library/c/.library | 17 +++++++++++++++++ .../library.c/test/LibraryC/Test.html | 0 .../node_modules/collection/library.c/ui5.yaml | 5 +++++ .../node_modules/library.d/package.json | 9 +++++++++ .../library.d/src/library/d/.library | 11 +++++++++++ .../library.d/test/library/d/Test.html | 0 .../collection/node_modules/library.d/ui5.yaml | 10 ++++++++++ .../node_modules/collection/package.json | 18 ++++++++++++++++++ .../library.d/main/src/library/d/.library | 11 +++++++++++ .../library.d/main/src/library/d/some.js | 4 ++++ .../library.d/main/test/library/d/Test.html | 0 .../node_modules/library.d/package.json | 9 +++++++++ .../node_modules/library.d/ui5.yaml | 10 ++++++++++ .../library.d/main/src/library/d/.library | 11 +++++++++++ .../library.d/main/src/library/d/some.js | 4 ++++ .../library.d/main/test/library/d/Test.html | 0 .../node_modules/library.d/package.json | 9 +++++++++ .../node_modules/library.d/ui5.yaml | 10 ++++++++++ .../node_modules/library.d/package.json | 9 +++++++++ .../library.d/src/library/d/.library | 11 +++++++++++ .../library.d/test/library/d/Test.html | 0 .../library.e/node_modules/library.d/ui5.yaml | 3 +++ .../node_modules/library.e/package.json | 11 +++++++++++ .../library.e/src/library/e/.library | 11 +++++++++++ .../library.e/test/library/e/Test.html | 0 .../node_modules/library.e/ui5.yaml | 11 +++++++++++ .../main/src/library/d/.library | 11 +++++++++++ .../main/src/library/d/some.js | 4 ++++ .../main/test/library/d/Test.html | 0 .../library.d/main/src/library/d/.library | 11 +++++++++++ .../library.d/main/src/library/d/some.js | 4 ++++ .../library.d/main/test/library/d/Test.html | 0 .../node_modules/library.d/package.json | 9 +++++++++ .../node_modules/library.d/ui5.yaml | 10 ++++++++++ .../library.d-depender/package.json | 11 +++++++++++ .../node_modules/library.d-depender/ui5.yaml | 11 +++++++++++ .../node_modules/library.d/package.json | 9 +++++++++ .../library.d/src/library/d/.library | 11 +++++++++++ .../library.d/test/library/d/Test.html | 0 .../library.e/node_modules/library.d/ui5.yaml | 10 ++++++++++ .../node_modules/library.e/package.json | 11 +++++++++++ .../library.e/src/library/e/.library | 11 +++++++++++ .../library.e/test/library/e/Test.html | 0 .../node_modules/library.e/ui5.yaml | 11 +++++++++++ .../main/src/library/d/.library | 11 +++++++++++ .../main/src/library/d/some.js | 4 ++++ .../main/test/library/d/Test.html | 0 .../library.d-depender/package.json | 11 +++++++++++ .../node_modules/library.d-depender/ui5.yaml | 11 +++++++++++ .../library.d/main/src/library/d/.library | 11 +++++++++++ .../library.d/main/src/library/d/some.js | 4 ++++ .../library.d/main/test/library/d/Test.html | 0 .../node_modules/library.d/package.json | 9 +++++++++ .../node_modules/library.d/ui5.yaml | 10 ++++++++++ .../node_modules/library.e/package.json | 11 +++++++++++ .../library.e/src/library/e/.library | 11 +++++++++++ .../library.e/test/library/e/Test.html | 0 .../node_modules/library.e/ui5.yaml | 11 +++++++++++ .../node_modules/library.d/package.json | 9 +++++++++ .../library.d/src/library/d/.library | 11 +++++++++++ .../library.d/test/library/d/Test.html | 0 .../library.e/node_modules/library.d/ui5.yaml | 3 +++ .../node_modules/library.e/package.json | 11 +++++++++++ .../library.e/src/library/e/.library | 11 +++++++++++ .../library.e/src/library/e/some.js | 4 ++++ .../library.e/test/library/e/Test.html | 0 .../node_modules/library.e/ui5.yaml | 11 +++++++++++ .../node_modules/library.e/package.json | 11 +++++++++++ .../library.e/src/library/e/.library | 11 +++++++++++ .../library.e/test/library/e/Test.html | 0 .../node_modules/library.e/ui5.yaml | 11 +++++++++++ .../library.d/main/src/library/d/.library | 11 +++++++++++ .../library.d/main/src/library/d/some.js | 4 ++++ .../library.d/main/test/library/d/Test.html | 0 .../node_modules/library.d/package.json | 9 +++++++++ .../node_modules/library.d/ui5.yaml | 10 ++++++++++ .../node_modules/library.e/package.json | 11 +++++++++++ .../library.e/src/library/e/.library | 11 +++++++++++ .../library.e/test/library/e/Test.html | 0 .../node_modules/library.e/ui5.yaml | 11 +++++++++++ .../node_modules/library.d/package.json | 9 +++++++++ .../library.d/src/library/d/.library | 11 +++++++++++ .../library.d/test/library/d/Test.html | 0 .../collection/node_modules/library.d/ui5.yaml | 10 ++++++++++ .../library.d/main/src/library/d/.library | 11 +++++++++++ .../library.d/main/src/library/d/some.js | 4 ++++ .../library.d/main/test/library/d/Test.html | 0 .../node_modules/library.d/package.json | 9 +++++++++ .../node_modules/library.d/ui5.yaml | 10 ++++++++++ .../node_modules/library.d/package.json | 9 +++++++++ .../library.d/src/library/d/.library | 11 +++++++++++ .../library.d/test/library/d/Test.html | 0 .../library.e/node_modules/library.d/ui5.yaml | 3 +++ .../node_modules/library.g/package.json | 11 +++++++++++ .../library.f/node_modules/library.g/ui5.yaml | 5 +++++ .../node_modules/library.f/package.json | 11 +++++++++++ .../library.g/node_modules/library.f/ui5.yaml | 5 +++++ 131 files changed, 986 insertions(+) create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.a/package.json create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.a/src/library/a/.library create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.a/src/library/a/themes/base/library.source.less create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.a/test/library/a/Test.html create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.a/ui5.yaml create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.b/package.json create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.b/src/library/b/.library create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.b/test/library/b/Test.html create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.b/ui5.yaml create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.c/package.json create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.c/src/library/c/.library create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.c/test/LibraryC/Test.html create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/library.c/ui5.yaml create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/package.json create mode 100644 packages/project/test/fixtures/application.a/node_modules/library.d/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.a/node_modules/library.d/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/application.a/node_modules/library.d/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.a/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.a/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.a/package.json create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.a/src/library/a/.library create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.a/src/library/a/themes/base/library.source.less create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.a/test/library/a/Test.html create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.a/ui5.yaml create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.b/package.json create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.b/src/library/b/.library create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.b/test/library/b/Test.html create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.b/ui5.yaml create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.c/package.json create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.c/src/library/c/.library create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.c/test/LibraryC/Test.html create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/library.c/ui5.yaml create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.b/node_modules/collection/package.json create mode 100644 packages/project/test/fixtures/application.b/node_modules/library.d/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.b/node_modules/library.d/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/application.b/node_modules/library.d/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.b/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.b/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.d/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.d/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.d/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.e/package.json create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.e/src/library/e/.library create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.e/test/library/e/Test.html create mode 100644 packages/project/test/fixtures/application.c/node_modules/library.e/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.d-depender/package.json create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.d-depender/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.e/package.json create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.e/src/library/e/.library create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.e/test/library/e/Test.html create mode 100644 packages/project/test/fixtures/application.c2/node_modules/library.e/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.d-depender/package.json create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.d-depender/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.d/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.d/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.d/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.e/package.json create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.e/src/library/e/.library create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.e/test/library/e/Test.html create mode 100644 packages/project/test/fixtures/application.c3/node_modules/library.e/ui5.yaml create mode 100644 packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.d/node_modules/library.e/package.json create mode 100644 packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/.library create mode 100644 packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/some.js create mode 100644 packages/project/test/fixtures/application.d/node_modules/library.e/test/library/e/Test.html create mode 100644 packages/project/test/fixtures/application.d/node_modules/library.e/ui5.yaml create mode 100644 packages/project/test/fixtures/application.e/node_modules/library.e/package.json create mode 100644 packages/project/test/fixtures/application.e/node_modules/library.e/src/library/e/.library create mode 100644 packages/project/test/fixtures/application.e/node_modules/library.e/test/library/e/Test.html create mode 100644 packages/project/test/fixtures/application.e/node_modules/library.e/ui5.yaml create mode 100644 packages/project/test/fixtures/application.f/node_modules/library.d/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.f/node_modules/library.d/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/application.f/node_modules/library.d/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.f/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.f/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/application.f/node_modules/library.e/package.json create mode 100644 packages/project/test/fixtures/application.f/node_modules/library.e/src/library/e/.library create mode 100644 packages/project/test/fixtures/application.f/node_modules/library.e/test/library/e/Test.html create mode 100644 packages/project/test/fixtures/application.f/node_modules/library.e/ui5.yaml create mode 100644 packages/project/test/fixtures/collection/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/collection/node_modules/library.d/src/library/d/.library create mode 100644 packages/project/test/fixtures/collection/node_modules/library.d/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/collection/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/library.d-depender/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/library.d-depender/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/library.e/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/library.e/node_modules/library.d/src/library/d/.library create mode 100644 packages/project/test/fixtures/library.e/node_modules/library.d/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/library.e/node_modules/library.d/ui5.yaml create mode 100644 packages/project/test/fixtures/library.f/node_modules/library.g/package.json create mode 100644 packages/project/test/fixtures/library.f/node_modules/library.g/ui5.yaml create mode 100644 packages/project/test/fixtures/library.g/node_modules/library.f/package.json create mode 100644 packages/project/test/fixtures/library.g/node_modules/library.f/ui5.yaml diff --git a/packages/project/.gitignore b/packages/project/.gitignore index 0bae7c160e2..7745928680a 100644 --- a/packages/project/.gitignore +++ b/packages/project/.gitignore @@ -55,5 +55,6 @@ yarn.lock deploy_key # Custom directories +!test/fixtures/**/node_modules test/tmp/ jsdocs/ diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.a/package.json b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/package.json new file mode 100644 index 00000000000..2179673d41d --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/package.json @@ -0,0 +1,17 @@ +{ + "name": "library.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "ui5": { + "name": "library.a", + "type": "library", + "settings": { + "src": "src", + "test": "test" + } + } +} diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.a/src/library/a/.library b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/src/library/a/.library new file mode 100644 index 00000000000..25c8603f31a --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/src/library/a/.library @@ -0,0 +1,17 @@ + + + + library.a + SAP SE + ${copyright} + ${version} + + Library A + + + + library.d + + + + diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.a/src/library/a/themes/base/library.source.less b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/src/library/a/themes/base/library.source.less new file mode 100644 index 00000000000..ff0f1d5e3df --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/src/library/a/themes/base/library.source.less @@ -0,0 +1,6 @@ +@libraryAColor1: lightgoldenrodyellow; + +.library-a-foo { + color: @libraryAColor1; + padding: 1px 2px 3px 4px; +} diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.a/test/library/a/Test.html b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/test/library/a/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.a/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/ui5.yaml new file mode 100644 index 00000000000..676f166c3fc --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.a diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.b/package.json b/packages/project/test/fixtures/application.a/node_modules/collection/library.b/package.json new file mode 100644 index 00000000000..2a0243b1683 --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.b/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.b", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.b/src/library/b/.library b/packages/project/test/fixtures/application.a/node_modules/collection/library.b/src/library/b/.library new file mode 100644 index 00000000000..36052acebdc --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.b/src/library/b/.library @@ -0,0 +1,17 @@ + + + + library.b + SAP SE + ${copyright} + ${version} + + Library B + + + + library.d + + + + diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.b/test/library/b/Test.html b/packages/project/test/fixtures/application.a/node_modules/collection/library.b/test/library/b/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.b/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/collection/library.b/ui5.yaml new file mode 100644 index 00000000000..3275ac753b5 --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.b/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.b diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.c/package.json b/packages/project/test/fixtures/application.a/node_modules/collection/library.c/package.json new file mode 100644 index 00000000000..64ac75d6ffe --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.c/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.c", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.c/src/library/c/.library b/packages/project/test/fixtures/application.a/node_modules/collection/library.c/src/library/c/.library new file mode 100644 index 00000000000..4180ce2af2f --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.c/src/library/c/.library @@ -0,0 +1,17 @@ + + + + library.c + SAP SE + ${copyright} + ${version} + + Library C + + + + library.d + + + + diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.c/test/LibraryC/Test.html b/packages/project/test/fixtures/application.a/node_modules/collection/library.c/test/LibraryC/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.c/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/collection/library.c/ui5.yaml new file mode 100644 index 00000000000..159b141185e --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.c/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.c diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/package.json b/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/src/library/d/.library b/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/src/library/d/.library new file mode 100644 index 00000000000..21251d1bbba --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/test/library/d/Test.html b/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/package.json b/packages/project/test/fixtures/application.a/node_modules/collection/package.json new file mode 100644 index 00000000000..81b948438bd --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/package.json @@ -0,0 +1,18 @@ +{ + "name": "collection", + "version": "1.0.0", + "description": "Simple Collection", + "dependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "collection": { + "modules": { + "library.a": "./library.a", + "library.b": "./library.b", + "library.c": "./library.c" + } + } +} diff --git a/packages/project/test/fixtures/application.a/node_modules/library.d/main/src/library/d/.library b/packages/project/test/fixtures/application.a/node_modules/library.d/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/library.d/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.a/node_modules/library.d/main/src/library/d/some.js b/packages/project/test/fixtures/application.a/node_modules/library.d/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/library.d/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/application.a/node_modules/library.d/main/test/library/d/Test.html b/packages/project/test/fixtures/application.a/node_modules/library.d/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.a/node_modules/library.d/package.json b/packages/project/test/fixtures/application.a/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.a/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.a/package.json b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/package.json new file mode 100644 index 00000000000..2179673d41d --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/package.json @@ -0,0 +1,17 @@ +{ + "name": "library.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "ui5": { + "name": "library.a", + "type": "library", + "settings": { + "src": "src", + "test": "test" + } + } +} diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.a/src/library/a/.library b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/src/library/a/.library new file mode 100644 index 00000000000..25c8603f31a --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/src/library/a/.library @@ -0,0 +1,17 @@ + + + + library.a + SAP SE + ${copyright} + ${version} + + Library A + + + + library.d + + + + diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.a/src/library/a/themes/base/library.source.less b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/src/library/a/themes/base/library.source.less new file mode 100644 index 00000000000..ff0f1d5e3df --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/src/library/a/themes/base/library.source.less @@ -0,0 +1,6 @@ +@libraryAColor1: lightgoldenrodyellow; + +.library-a-foo { + color: @libraryAColor1; + padding: 1px 2px 3px 4px; +} diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.a/test/library/a/Test.html b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/test/library/a/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.a/ui5.yaml b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/ui5.yaml new file mode 100644 index 00000000000..676f166c3fc --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.a diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.b/package.json b/packages/project/test/fixtures/application.b/node_modules/collection/library.b/package.json new file mode 100644 index 00000000000..2a0243b1683 --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.b/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.b", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.b/src/library/b/.library b/packages/project/test/fixtures/application.b/node_modules/collection/library.b/src/library/b/.library new file mode 100644 index 00000000000..36052acebdc --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.b/src/library/b/.library @@ -0,0 +1,17 @@ + + + + library.b + SAP SE + ${copyright} + ${version} + + Library B + + + + library.d + + + + diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.b/test/library/b/Test.html b/packages/project/test/fixtures/application.b/node_modules/collection/library.b/test/library/b/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.b/ui5.yaml b/packages/project/test/fixtures/application.b/node_modules/collection/library.b/ui5.yaml new file mode 100644 index 00000000000..3275ac753b5 --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.b/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.b diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.c/package.json b/packages/project/test/fixtures/application.b/node_modules/collection/library.c/package.json new file mode 100644 index 00000000000..64ac75d6ffe --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.c/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.c", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.c/src/library/c/.library b/packages/project/test/fixtures/application.b/node_modules/collection/library.c/src/library/c/.library new file mode 100644 index 00000000000..4180ce2af2f --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.c/src/library/c/.library @@ -0,0 +1,17 @@ + + + + library.c + SAP SE + ${copyright} + ${version} + + Library C + + + + library.d + + + + diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.c/test/LibraryC/Test.html b/packages/project/test/fixtures/application.b/node_modules/collection/library.c/test/LibraryC/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.c/ui5.yaml b/packages/project/test/fixtures/application.b/node_modules/collection/library.c/ui5.yaml new file mode 100644 index 00000000000..159b141185e --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.c/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.c diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/package.json b/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/src/library/d/.library b/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/src/library/d/.library new file mode 100644 index 00000000000..21251d1bbba --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/test/library/d/Test.html b/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/package.json b/packages/project/test/fixtures/application.b/node_modules/collection/package.json new file mode 100644 index 00000000000..81b948438bd --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/collection/package.json @@ -0,0 +1,18 @@ +{ + "name": "collection", + "version": "1.0.0", + "description": "Simple Collection", + "dependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "collection": { + "modules": { + "library.a": "./library.a", + "library.b": "./library.b", + "library.c": "./library.c" + } + } +} diff --git a/packages/project/test/fixtures/application.b/node_modules/library.d/main/src/library/d/.library b/packages/project/test/fixtures/application.b/node_modules/library.d/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/library.d/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.b/node_modules/library.d/main/src/library/d/some.js b/packages/project/test/fixtures/application.b/node_modules/library.d/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/library.d/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/application.b/node_modules/library.d/main/test/library/d/Test.html b/packages/project/test/fixtures/application.b/node_modules/library.d/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.b/node_modules/library.d/package.json b/packages/project/test/fixtures/application.b/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.b/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.b/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/application.b/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/application.c/node_modules/library.d/main/src/library/d/.library b/packages/project/test/fixtures/application.c/node_modules/library.d/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/application.c/node_modules/library.d/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.c/node_modules/library.d/main/src/library/d/some.js b/packages/project/test/fixtures/application.c/node_modules/library.d/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/application.c/node_modules/library.d/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/application.c/node_modules/library.d/main/test/library/d/Test.html b/packages/project/test/fixtures/application.c/node_modules/library.d/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.c/node_modules/library.d/package.json b/packages/project/test/fixtures/application.c/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.c/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.c/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/application.c/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/package.json b/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/src/library/d/.library b/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/src/library/d/.library new file mode 100644 index 00000000000..21251d1bbba --- /dev/null +++ b/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/test/library/d/Test.html b/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..7b731df83f6 --- /dev/null +++ b/packages/project/test/fixtures/application.c/node_modules/library.e/node_modules/library.d/ui5.yaml @@ -0,0 +1,3 @@ +--- +name: library.d +type: library diff --git a/packages/project/test/fixtures/application.c/node_modules/library.e/package.json b/packages/project/test/fixtures/application.c/node_modules/library.e/package.json new file mode 100644 index 00000000000..07ed6e5f4bf --- /dev/null +++ b/packages/project/test/fixtures/application.c/node_modules/library.e/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.e", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "devDependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.c/node_modules/library.e/src/library/e/.library new file mode 100644 index 00000000000..20c99070048 --- /dev/null +++ b/packages/project/test/fixtures/application.c/node_modules/library.e/src/library/e/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library E + + diff --git a/packages/project/test/fixtures/application.c/node_modules/library.e/test/library/e/Test.html b/packages/project/test/fixtures/application.c/node_modules/library.e/test/library/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.c/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.c/node_modules/library.e/ui5.yaml new file mode 100644 index 00000000000..a1e7f1214ef --- /dev/null +++ b/packages/project/test/fixtures/application.c/node_modules/library.e/ui5.yaml @@ -0,0 +1,11 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.e +builder: + configuration: + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/src/library/d/.library b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/src/library/d/some.js b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/test/library/d/Test.html b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/src/library/d/.library b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/src/library/d/some.js b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/test/library/d/Test.html b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/package.json b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/package.json b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/package.json new file mode 100644 index 00000000000..9f88fc95f0c --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.d-depender", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/ui5.yaml b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/ui5.yaml new file mode 100644 index 00000000000..d3a67f6da5a --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/ui5.yaml @@ -0,0 +1,11 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d-depender +resources: + configuration: + paths: + src: main/src + test: main/test + diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/package.json b/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/src/library/d/.library b/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/src/library/d/.library new file mode 100644 index 00000000000..21251d1bbba --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/test/library/d/Test.html b/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/package.json b/packages/project/test/fixtures/application.c2/node_modules/library.e/package.json new file mode 100644 index 00000000000..07ed6e5f4bf --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.e/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.e", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "devDependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.c2/node_modules/library.e/src/library/e/.library new file mode 100644 index 00000000000..20c99070048 --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.e/src/library/e/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library E + + diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/test/library/e/Test.html b/packages/project/test/fixtures/application.c2/node_modules/library.e/test/library/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.c2/node_modules/library.e/ui5.yaml new file mode 100644 index 00000000000..a1e7f1214ef --- /dev/null +++ b/packages/project/test/fixtures/application.c2/node_modules/library.e/ui5.yaml @@ -0,0 +1,11 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.e +builder: + configuration: + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/.library b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/some.js b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/test/library/d/Test.html b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/package.json b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/package.json new file mode 100644 index 00000000000..9f88fc95f0c --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.d-depender", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/ui5.yaml b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/ui5.yaml new file mode 100644 index 00000000000..d3a67f6da5a --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/ui5.yaml @@ -0,0 +1,11 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d-depender +resources: + configuration: + paths: + src: main/src + test: main/test + diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d/main/src/library/d/.library b/packages/project/test/fixtures/application.c3/node_modules/library.d/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d/main/src/library/d/some.js b/packages/project/test/fixtures/application.c3/node_modules/library.d/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d/main/test/library/d/Test.html b/packages/project/test/fixtures/application.c3/node_modules/library.d/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d/package.json b/packages/project/test/fixtures/application.c3/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.c3/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.e/package.json b/packages/project/test/fixtures/application.c3/node_modules/library.e/package.json new file mode 100644 index 00000000000..07ed6e5f4bf --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.e/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.e", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "devDependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.c3/node_modules/library.e/src/library/e/.library new file mode 100644 index 00000000000..20c99070048 --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.e/src/library/e/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library E + + diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.e/test/library/e/Test.html b/packages/project/test/fixtures/application.c3/node_modules/library.e/test/library/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.c3/node_modules/library.e/ui5.yaml new file mode 100644 index 00000000000..a1e7f1214ef --- /dev/null +++ b/packages/project/test/fixtures/application.c3/node_modules/library.e/ui5.yaml @@ -0,0 +1,11 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.e +builder: + configuration: + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/package.json b/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/src/library/d/.library b/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/src/library/d/.library new file mode 100644 index 00000000000..21251d1bbba --- /dev/null +++ b/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/test/library/d/Test.html b/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..7b731df83f6 --- /dev/null +++ b/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/ui5.yaml @@ -0,0 +1,3 @@ +--- +name: library.d +type: library diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/package.json b/packages/project/test/fixtures/application.d/node_modules/library.e/package.json new file mode 100644 index 00000000000..9ce874ff55a --- /dev/null +++ b/packages/project/test/fixtures/application.d/node_modules/library.e/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.e", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for dev dependencies", + "devDependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/.library new file mode 100644 index 00000000000..20c99070048 --- /dev/null +++ b/packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library E + + diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/some.js b/packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/test/library/e/Test.html b/packages/project/test/fixtures/application.d/node_modules/library.e/test/library/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.d/node_modules/library.e/ui5.yaml new file mode 100644 index 00000000000..a1e7f1214ef --- /dev/null +++ b/packages/project/test/fixtures/application.d/node_modules/library.e/ui5.yaml @@ -0,0 +1,11 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.e +builder: + configuration: + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/application.e/node_modules/library.e/package.json b/packages/project/test/fixtures/application.e/node_modules/library.e/package.json new file mode 100644 index 00000000000..07ed6e5f4bf --- /dev/null +++ b/packages/project/test/fixtures/application.e/node_modules/library.e/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.e", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "devDependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.e/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.e/node_modules/library.e/src/library/e/.library new file mode 100644 index 00000000000..20c99070048 --- /dev/null +++ b/packages/project/test/fixtures/application.e/node_modules/library.e/src/library/e/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library E + + diff --git a/packages/project/test/fixtures/application.e/node_modules/library.e/test/library/e/Test.html b/packages/project/test/fixtures/application.e/node_modules/library.e/test/library/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.e/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.e/node_modules/library.e/ui5.yaml new file mode 100644 index 00000000000..a1e7f1214ef --- /dev/null +++ b/packages/project/test/fixtures/application.e/node_modules/library.e/ui5.yaml @@ -0,0 +1,11 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.e +builder: + configuration: + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/application.f/node_modules/library.d/main/src/library/d/.library b/packages/project/test/fixtures/application.f/node_modules/library.d/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/application.f/node_modules/library.d/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.f/node_modules/library.d/main/src/library/d/some.js b/packages/project/test/fixtures/application.f/node_modules/library.d/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/application.f/node_modules/library.d/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/application.f/node_modules/library.d/main/test/library/d/Test.html b/packages/project/test/fixtures/application.f/node_modules/library.d/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.f/node_modules/library.d/package.json b/packages/project/test/fixtures/application.f/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.f/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.f/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.f/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/application.f/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/application.f/node_modules/library.e/package.json b/packages/project/test/fixtures/application.f/node_modules/library.e/package.json new file mode 100644 index 00000000000..9ce874ff55a --- /dev/null +++ b/packages/project/test/fixtures/application.f/node_modules/library.e/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.e", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for dev dependencies", + "devDependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.f/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.f/node_modules/library.e/src/library/e/.library new file mode 100644 index 00000000000..20c99070048 --- /dev/null +++ b/packages/project/test/fixtures/application.f/node_modules/library.e/src/library/e/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library E + + diff --git a/packages/project/test/fixtures/application.f/node_modules/library.e/test/library/e/Test.html b/packages/project/test/fixtures/application.f/node_modules/library.e/test/library/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.f/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.f/node_modules/library.e/ui5.yaml new file mode 100644 index 00000000000..a1e7f1214ef --- /dev/null +++ b/packages/project/test/fixtures/application.f/node_modules/library.e/ui5.yaml @@ -0,0 +1,11 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.e +builder: + configuration: + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/collection/node_modules/library.d/package.json b/packages/project/test/fixtures/collection/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/collection/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/collection/node_modules/library.d/src/library/d/.library b/packages/project/test/fixtures/collection/node_modules/library.d/src/library/d/.library new file mode 100644 index 00000000000..21251d1bbba --- /dev/null +++ b/packages/project/test/fixtures/collection/node_modules/library.d/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/collection/node_modules/library.d/test/library/d/Test.html b/packages/project/test/fixtures/collection/node_modules/library.d/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/collection/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/collection/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/collection/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/src/library/d/.library b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/src/library/d/some.js b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/test/library/d/Test.html b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/library.d-depender/node_modules/library.d/package.json b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.d-depender/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/library.e/node_modules/library.d/package.json b/packages/project/test/fixtures/library.e/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/library.e/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.e/node_modules/library.d/src/library/d/.library b/packages/project/test/fixtures/library.e/node_modules/library.d/src/library/d/.library new file mode 100644 index 00000000000..21251d1bbba --- /dev/null +++ b/packages/project/test/fixtures/library.e/node_modules/library.d/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + ${copyright} + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/library.e/node_modules/library.d/test/library/d/Test.html b/packages/project/test/fixtures/library.e/node_modules/library.d/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/library.e/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/library.e/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..7b731df83f6 --- /dev/null +++ b/packages/project/test/fixtures/library.e/node_modules/library.d/ui5.yaml @@ -0,0 +1,3 @@ +--- +name: library.d +type: library diff --git a/packages/project/test/fixtures/library.f/node_modules/library.g/package.json b/packages/project/test/fixtures/library.f/node_modules/library.g/package.json new file mode 100644 index 00000000000..fff39011db1 --- /dev/null +++ b/packages/project/test/fixtures/library.f/node_modules/library.g/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.g", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for circular dependencies", + "devDependencies": { + "library.f": "file:../library.f" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.f/node_modules/library.g/ui5.yaml b/packages/project/test/fixtures/library.f/node_modules/library.g/ui5.yaml new file mode 100644 index 00000000000..9c528171825 --- /dev/null +++ b/packages/project/test/fixtures/library.f/node_modules/library.g/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.g diff --git a/packages/project/test/fixtures/library.g/node_modules/library.f/package.json b/packages/project/test/fixtures/library.g/node_modules/library.f/package.json new file mode 100644 index 00000000000..d8f009d42d7 --- /dev/null +++ b/packages/project/test/fixtures/library.g/node_modules/library.f/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.f", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for circular dependencies", + "dependencies": { + "library.g": "file:../library.g" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.g/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/library.g/node_modules/library.f/ui5.yaml new file mode 100644 index 00000000000..38440bacbc6 --- /dev/null +++ b/packages/project/test/fixtures/library.g/node_modules/library.f/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.f From 4f8e09633bda4d9d05053cd4851fd6e3b85d23b4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 30 Mar 2018 16:02:40 +0200 Subject: [PATCH 0003/1272] [ui5-project][INTERNAL] Fix links to CONTRIBUTING.md file --- packages/project/CONTRIBUTING.md | 2 +- packages/project/README.md | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/CONTRIBUTING.md b/packages/project/CONTRIBUTING.md index 54d35dd23af..19890585eef 100644 --- a/packages/project/CONTRIBUTING.md +++ b/packages/project/CONTRIBUTING.md @@ -1,3 +1,3 @@ # Contributing to the UI5 Build and Development Tooling -See CONTRIBUTING.md in the [SAP/ui5-tooling](https://github.com/SAP/ui5-tooling/CONTRIBUTING.md) repository. \ No newline at end of file +See CONTRIBUTING.md in the [SAP/ui5-tooling](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md) repository. \ No newline at end of file diff --git a/packages/project/README.md b/packages/project/README.md index 8f9d075ef65..5fabbf101dc 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -1,7 +1,7 @@ ![UI5 logo](https://github.com/SAP/ui5-tooling/blob/master/docs/images/UI5_logo_wide.png) # ui5-project -> Modules for building a UI5 projects dependency tree, including configuration +> Modules for building a UI5 projects dependency tree, including configuration > Part of the [UI5 Build and Development Tooling](https://github.com/SAP/ui5-tooling) **This is a Pre-Alpha release!** @@ -233,10 +233,10 @@ Some general information - `port`: Project default server port. Can be overwritten via CLI parameters. ## Contributing -Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/CONTRIBUTING.md). +Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md). ## Support -Please follow our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/CONTRIBUTING.md#report-an-issue) on how to report an issue. +Please follow our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md#report-an-issue) on how to report an issue. ## License This project is licensed under the Apache Software License, Version 2.0 except as noted otherwise in the [LICENSE](/LICENSE.txt) file. From 353cfadeb9fe1abeb1c2edc01083fe343abe5709 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 5 Apr 2018 13:54:35 +0200 Subject: [PATCH 0004/1272] [ui5-project][INTERNAL] Add travis CI badge + package.json cleanup --- packages/project/README.md | 2 ++ packages/project/package.json | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/project/README.md b/packages/project/README.md index 5fabbf101dc..23836d29bd9 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -4,6 +4,8 @@ > Modules for building a UI5 projects dependency tree, including configuration > Part of the [UI5 Build and Development Tooling](https://github.com/SAP/ui5-tooling) +[![Travis CI Build Status](https://travis-ci.org/SAP/ui5-project.svg?branch=master)](https://travis-ci.org/SAP/ui5-project) + **This is a Pre-Alpha release!** **The UI5 Build and Development Tooling described here is not intended for productive use yet. Breaking changes are to be expected.** diff --git a/packages/project/package.json b/packages/project/package.json index 2fbac969dae..a88e6823a95 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -48,8 +48,7 @@ "docs/**", "jsdocs/**", "coverage/**", - "test/**", - "lib/lbt/**" + "test/**" ], "check-coverage": true, "lines": 70, From 2cc652497536e8d79dbf862fd3ccde70b8f06241 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 May 2018 16:14:34 +0200 Subject: [PATCH 0005/1272] [ui5-project][INTERNAL] Travis: Add node.js 10 to test matrix --- packages/project/.travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/project/.travis.yml b/packages/project/.travis.yml index 7c3e38eee64..5a4ce25c97b 100644 --- a/packages/project/.travis.yml +++ b/packages/project/.travis.yml @@ -2,3 +2,4 @@ language: node_js # don't install any environment node_js: - "8" +- "10" From eb3b8aa2edad22152356242d3d739aec1326cc01 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 May 2018 16:16:59 +0200 Subject: [PATCH 0006/1272] [ui5-project][INTERNAL] ESLint: Activate no-var rule Already active through eslint-config-google --- packages/project/.eslintrc.js | 1 - packages/project/lib/projectPreprocessor.js | 2 +- packages/project/lib/translators/npm.js | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js index 9d3ec81b2b3..ff3e2cc53da 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.js @@ -33,7 +33,6 @@ module.exports = { { "allow": ["!!"] } ], "comma-dangle": "off", - "no-var": "off", "no-tabs": "off", "no-console": "off", // until we have better logging 'valid-jsdoc': [ diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 64bd7162607..cb11f17a75c 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -71,7 +71,7 @@ class ProjectPreprocessor { log.verbose(`Ignoring project ${project.id} with missing configuration `+ "(might be a non-UI5 dependency)"); const parents = processedProjects[project.id].parents; - for (var i = parents.length - 1; i >= 0; i--) { + for (let i = parents.length - 1; i >= 0; i--) { parents[i].dependencies.splice(parents[i].dependencies.indexOf(project), 1); } processedProjects[project.id] = {ignored: true}; diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 8595b10fb63..d366a1a48ab 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -240,7 +240,7 @@ class NpmTranslator { } if (this.pendingDeps[project.id]) { - for (var i = this.pendingDeps[project.id].parents.length - 1; i >= 0; i--) { + for (let i = this.pendingDeps[project.id].parents.length - 1; i >= 0; i--) { this.pendingDeps[project.id].parents[i].dependencies.push(project); } this.pendingDeps[project.id] = null; From 08df5d5de067e26ca5f8169845812447969552c6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 May 2018 16:12:09 +0200 Subject: [PATCH 0007/1272] [ui5-project][INTERNAL] npm t8r: Improve handling of missing package.json --- packages/project/lib/translators/npm.js | 14 ++++++++++---- packages/project/test/lib/translators/npm.js | 5 +++++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index d366a1a48ab..351fab9c36b 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -46,7 +46,7 @@ class NpmTranslator { for (let i = 0; i < ui5Deps.length; i++) { let depName = ui5Deps[i]; if (!dependencies[depName] && !optDependencies[depName]) { - throw new Error(`Module ${depName} is defined as UI5 dependency ` + + throw new Error(`[npm translator] Module ${depName} is defined as UI5 dependency ` + `but missing from npm dependencies of module ${moduleName}`); } } @@ -198,7 +198,8 @@ class NpmTranslator { // As of today, collections only exist in shims this.shimCollection(pkg.name, pkg); if (pkg.collection) { - log.verbose("Unable to locate module %s via resolve logic but found a collection in parent hierarchy: %s", + log.verbose( + "Unable to locate module %s via resolve logic but found a collection in parent hierarchy: %s", moduleName, pkg.name); const modules = pkg.collection.modules || {}; if (modules[moduleName]) { @@ -257,13 +258,18 @@ class NpmTranslator { return readPkgUp({ cwd: dirPath }).then((result) => { + if (!result.pkg) { + throw new Error( + `[npm translator] Failed to locate package.json for directory "${path.resolve(dirPath)}"`); + } result.name = result.pkg.name; // resolved path points to the package.json, but we want just the folder path result.path = path.dirname(result.path); return result; }).then(this.processPkg.bind(this)).then((tree) => { if (this.projectsWoUi5Deps.length) { - log.verbose("[PERF] Consider defining UI5-dependencies in the package.json files of the relevant modules " + + log.verbose( + "[PERF] Consider defining UI5-dependencies in the package.json files of the relevant modules " + "from the following list to improve npm translator execution time: " + this.projectsWoUi5Deps.join(", ")); } @@ -288,7 +294,7 @@ class NpmTranslator { } } - throw new Error("Could not identify root project."); + throw new Error("[npm translator] Could not identify root project."); }).then(this.processPendingDeps.bind(this)); } diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index 1633211427a..91e57b8074c 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -46,6 +46,11 @@ test("AppF: project with UI5-dependencies", (t) => { }); }); +test("Error: missing package.json", async (t) => { + const error = await t.throws(npmTranslator.generateDependencyTree(path.parse(__dirname).root)); + t.is(error.message, "[npm translator] Failed to locate package.json for directory \"/\""); +}); + /* ========================= */ /* ======= Test data ======= */ From 0115c569daeda3883311c9699acf936e99684b0a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 15 May 2018 19:52:23 +0200 Subject: [PATCH 0008/1272] [ui5-project][FIX] npm t8r: Fix collection fallback with missing package.json If the dependency resolution falls back to try resolving via a collection it looks for a package.json in the path above the current module. The current implementation throws when no package.json could be found at all. --- packages/project/lib/translators/npm.js | 29 ++++++++++--------- .../fixtures/err.application.a/package.json | 12 ++++++++ packages/project/test/lib/translators/npm.js | 16 +++++++++- 3 files changed, 43 insertions(+), 14 deletions(-) create mode 100644 packages/project/test/fixtures/err.application.a/package.json diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 351fab9c36b..dd494eeda92 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -190,24 +190,27 @@ class NpmTranslator { }).then((pkgPath) => { return path.dirname(pkgPath); }).catch((err) => { + // Fallback: Check for a collection above this module return readPkgUp({ cwd: path.dirname(basePath) }).then((result) => { - const pkg = result.pkg; + if (result.pkg) { + const pkg = result.pkg; - // As of today, collections only exist in shims - this.shimCollection(pkg.name, pkg); - if (pkg.collection) { - log.verbose( - "Unable to locate module %s via resolve logic but found a collection in parent hierarchy: %s", - moduleName, pkg.name); - const modules = pkg.collection.modules || {}; - if (modules[moduleName]) { - const modulePath = path.join(path.dirname(result.path), modules[moduleName]); - log.verbose("Found module %s in that collection", moduleName); - return modulePath; + // As of today, collections only exist in shims + this.shimCollection(pkg.name, pkg); + if (pkg.collection) { + log.verbose( + "Unable to locate module %s via resolve logic but found a collection in parent hierarchy: %s", + moduleName, pkg.name); + const modules = pkg.collection.modules || {}; + if (modules[moduleName]) { + const modulePath = path.join(path.dirname(result.path), modules[moduleName]); + log.verbose("Found module %s in that collection", moduleName); + return modulePath; + } + throw new Error(`Could not find module ${moduleName} in collection ${pkg.name}`); } - throw new Error(`Could not find module ${moduleName} in collection ${pkg.name}`); } throw new Error(`Could not locate module ${moduleName} via resolve logic ` + `(error: ${err.message}) or in a collection`); diff --git a/packages/project/test/fixtures/err.application.a/package.json b/packages/project/test/fixtures/err.application.a/package.json new file mode 100644 index 00000000000..17af8f18fe5 --- /dev/null +++ b/packages/project/test/fixtures/err.application.a/package.json @@ -0,0 +1,12 @@ +{ + "name": "err.application.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - test for missing dependencies", + "main": "index.html", + "dependencies": { + "library.xx": "file:../not.existing" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index 91e57b8074c..90aab2f506f 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -7,6 +7,7 @@ const applicationC2Path = path.join(__dirname, "..", "..", "fixtures", "applicat const applicationC3Path = path.join(__dirname, "..", "..", "fixtures", "application.c3"); const applicationDPath = path.join(__dirname, "..", "..", "fixtures", "application.d"); const applicationFPath = path.join(__dirname, "..", "..", "fixtures", "application.f"); +const errApplicationAPath = path.join(__dirname, "..", "..", "fixtures", "err.application.a"); test("AppA: project with collection dependency", (t) => { return npmTranslator.generateDependencyTree(applicationAPath).then((parsedTree) => { @@ -26,7 +27,8 @@ test("AppC2: project with dependency with optional dependency resolved through o }); }); -test("AppC3: project with dependency with optional dependency resolved through other project (but got hoisted)", (t) => { +test("AppC3: project with dependency with optional dependency resolved " + + "through other project (but got hoisted)", (t) => { return npmTranslator.generateDependencyTree(applicationC3Path).then((parsedTree) => { t.deepEqual(parsedTree, applicationC3Tree, "Parsed correctly"); }); @@ -51,6 +53,18 @@ test("Error: missing package.json", async (t) => { t.is(error.message, "[npm translator] Failed to locate package.json for directory \"/\""); }); +test("Error: missing dependency", async (t) => { + const error = await t.throws(npmTranslator.generateDependencyTree(errApplicationAPath)); + t.is(error.message, "[npm translator] Failed to locate module library.xx from " + + errApplicationAPath + " - Error: Could not locate " + + "module library.xx via resolve logic (error: Cannot find module 'library.xx/package.json' from '" + + errApplicationAPath + "') or in a collection"); +}); + +// TODO: Test for scenarios where a dependency is missing *and there is no package.json* in the path above the root module +// This should test whether the collection-fallback can handle not receiving a .pkg object from readPkgUp +// Currently tricky to test as there is always a package.json located above the test fixtures. + /* ========================= */ /* ======= Test data ======= */ From 53a7d8cc4b03706501d4e4e55c21ecc5112a5f8e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 11 May 2018 17:05:57 +0200 Subject: [PATCH 0009/1272] [ui5-project][INTERNAL] ESLint: Activate no-console Already active through eslint-config-google --- packages/project/.eslintrc.js | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js index ff3e2cc53da..480a895ce48 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.js @@ -34,7 +34,6 @@ module.exports = { ], "comma-dangle": "off", "no-tabs": "off", - "no-console": "off", // until we have better logging 'valid-jsdoc': [ 2, { From ebbb62f77c5efa43b01c7cad8ca18b2280c3adcb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 24 May 2018 17:17:12 +0200 Subject: [PATCH 0010/1272] [ui5-project][INTERNAL] Update dependencies --- packages/project/package-lock.json | 9542 ++++++++++++++++++++++++++++ packages/project/package.json | 4 +- 2 files changed, 9544 insertions(+), 2 deletions(-) create mode 100644 packages/project/package-lock.json diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json new file mode 100644 index 00000000000..cfe3d77bd5d --- /dev/null +++ b/packages/project/package-lock.json @@ -0,0 +1,9542 @@ +{ + "name": "@ui5/project", + "version": "0.0.1", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@ava/babel-plugin-throws-helper": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-2.0.0.tgz", + "integrity": "sha1-L8H+PCEacQcaTsp7j3r1hCzRrnw=", + "dev": true + }, + "@ava/babel-preset-stage-4": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", + "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", + "dev": true, + "requires": { + "babel-plugin-check-es2015-constants": "^6.8.0", + "babel-plugin-syntax-trailing-function-commas": "^6.20.0", + "babel-plugin-transform-async-to-generator": "^6.16.0", + "babel-plugin-transform-es2015-destructuring": "^6.19.0", + "babel-plugin-transform-es2015-function-name": "^6.9.0", + "babel-plugin-transform-es2015-modules-commonjs": "^6.18.0", + "babel-plugin-transform-es2015-parameters": "^6.21.0", + "babel-plugin-transform-es2015-spread": "^6.8.0", + "babel-plugin-transform-es2015-sticky-regex": "^6.8.0", + "babel-plugin-transform-es2015-unicode-regex": "^6.11.0", + "babel-plugin-transform-exponentiation-operator": "^6.8.0", + "package-hash": "^1.2.0" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "package-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", + "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", + "dev": true, + "requires": { + "md5-hex": "^1.3.0" + } + } + } + }, + "@ava/babel-preset-transform-test-files": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-3.0.0.tgz", + "integrity": "sha1-ze0RlqjY2TgaUJJAq5LpGl7Aafc=", + "dev": true, + "requires": { + "@ava/babel-plugin-throws-helper": "^2.0.0", + "babel-plugin-espower": "^2.3.2" + } + }, + "@ava/write-file-atomic": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ava/write-file-atomic/-/write-file-atomic-2.2.0.tgz", + "integrity": "sha512-BTNB3nGbEfJT+69wuqXFr/bQH7Vr7ihx2xGOMNqPgDGhwspoZhiWumDDZNjBy7AScmqS5CELIOGtPVXESyrnDA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + }, + "@concordance/react": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", + "integrity": "sha512-htrsRaQX8Iixlsek8zQU7tE8wcsTQJ5UhZkSPEA8slCDAisKpC/2VgU/ucPn32M5/LjGGXRaUEKvEw1Wiuu4zQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1" + } + }, + "@ladjs/time-require": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@ladjs/time-require/-/time-require-0.1.4.tgz", + "integrity": "sha512-weIbJqTMfQ4r1YX85u54DKfjLZs2jwn1XZ6tIOP/pFgMwhIN5BAtaCp/1wn9DzyLsDR9tW0R2NIePcVJ45ivQQ==", + "dev": true, + "requires": { + "chalk": "^0.4.0", + "date-time": "^0.1.1", + "pretty-ms": "^0.2.1", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "dev": true + }, + "chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "dev": true, + "requires": { + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" + } + }, + "pretty-ms": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", + "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", + "dev": true, + "requires": { + "parse-ms": "^0.1.0" + } + }, + "strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "dev": true + } + } + }, + "@ui5/builder": { + "version": "github:SAP/ui5-builder#f8bd99159c5359edf7bb53425c1650ee46fa0663", + "from": "github:SAP/ui5-builder", + "requires": { + "@ui5/fs": "github:SAP/ui5-fs#d8c8f501eacaf9c8bc47699f39ae7bd933a13784", + "@ui5/logger": "github:SAP/ui5-logger#d9a5ed4940c5357a0c9d312ba7846699ddf223a7", + "archiver": "^2.1.0", + "escope": "^3.6.0", + "esprima": "^2.7.2", + "estraverse": "^4.2.0", + "globby": "^7.1.1", + "graceful-fs": "^4.1.11", + "less-openui5": "^0.5.1", + "pretty-data": "^0.40.0", + "pretty-hrtime": "^1.0.3", + "replacestream": "^4.0.3", + "uglify-es": "^3.2.2", + "xml2js": "^0.4.17" + }, + "dependencies": { + "@ui5/logger": { + "version": "github:SAP/ui5-logger#d9a5ed4940c5357a0c9d312ba7846699ddf223a7", + "from": "github:SAP/ui5-logger", + "requires": { + "npmlog": "^4.1.2" + } + } + } + }, + "@ui5/fs": { + "version": "github:SAP/ui5-fs#d8c8f501eacaf9c8bc47699f39ae7bd933a13784", + "from": "github:SAP/ui5-fs", + "requires": { + "@ui5/logger": "github:SAP/ui5-logger#d9a5ed4940c5357a0c9d312ba7846699ddf223a7", + "clone": "^2.1.0", + "defaults": "^1.0.3", + "globby": "^7.1.1", + "graceful-fs": "^4.1.11", + "make-dir": "^1.1.0", + "micromatch": "^3.1.4", + "minimatch": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^1.0.0" + } + }, + "@ui5/logger": { + "version": "github:SAP/ui5-logger#d9a5ed4940c5357a0c9d312ba7846699ddf223a7", + "from": "github:SAP/ui5-logger", + "requires": { + "npmlog": "^4.1.2" + } + }, + "acorn": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.3.tgz", + "integrity": "sha512-jd5MkIUlbbmb07nXH0DT3y7rDVtkzDi4XZOUVWAer8ajmF/DTSSbl5oNFyDOl/OXA33Bl79+ypHhl2pN20VeOQ==", + "dev": true + }, + "acorn-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", + "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", + "dev": true, + "requires": { + "acorn": "^3.0.4" + }, + "dependencies": { + "acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "dev": true + } + } + }, + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "requires": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, + "ajv-keywords": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", + "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", + "dev": true + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" + }, + "ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "dev": true, + "requires": { + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "ansi-escapes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", + "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "requires": { + "micromatch": "^2.1.5", + "normalize-path": "^2.0.0" + }, + "dependencies": { + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1" + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "^0.1.0" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" + } + } + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "archiver": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz", + "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", + "requires": { + "archiver-utils": "^1.3.0", + "async": "^2.0.0", + "buffer-crc32": "^0.2.1", + "glob": "^7.0.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0", + "tar-stream": "^1.5.0", + "zip-stream": "^1.2.0" + } + }, + "archiver-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", + "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", + "requires": { + "glob": "^7.0.0", + "graceful-fs": "^4.1.0", + "lazystream": "^1.0.0", + "lodash": "^4.8.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" + } + }, + "are-we-there-yet": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", + "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "arr-exclude": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", + "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + }, + "array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + }, + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", + "optional": true + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + }, + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "requires": { + "lodash": "^4.14.0" + } + }, + "async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "optional": true + }, + "atob": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.0.tgz", + "integrity": "sha512-SuiKH8vbsOyCALjA/+EINmt/Kdl+TQPrtFgW7XZZcwtryFu9e5kQoX3bjCW6mIvGH1fbeAZZuvwGR5IlBRznGw==" + }, + "auto-bind": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.2.0.tgz", + "integrity": "sha512-Zw7pZp7tztvKnWWtoII4AmqH5a2PV3ZN5F0BPRTGcc1kpRm4b6QXQnPU7Znbl6BfPfqOVOV29g4JeMqZQaqqOA==", + "dev": true + }, + "ava": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-0.25.0.tgz", + "integrity": "sha512-4lGNJCf6xL8SvsKVEKxEE46se7JAUIAZoKHw9itTQuwcsydhpAMkBs5gOOiWiwt0JKNIuXWc2/r4r8ZdcNrBEw==", + "dev": true, + "requires": { + "@ava/babel-preset-stage-4": "^1.1.0", + "@ava/babel-preset-transform-test-files": "^3.0.0", + "@ava/write-file-atomic": "^2.2.0", + "@concordance/react": "^1.0.0", + "@ladjs/time-require": "^0.1.4", + "ansi-escapes": "^3.0.0", + "ansi-styles": "^3.1.0", + "arr-flatten": "^1.0.1", + "array-union": "^1.0.1", + "array-uniq": "^1.0.2", + "arrify": "^1.0.0", + "auto-bind": "^1.1.0", + "ava-init": "^0.2.0", + "babel-core": "^6.17.0", + "babel-generator": "^6.26.0", + "babel-plugin-syntax-object-rest-spread": "^6.13.0", + "bluebird": "^3.0.0", + "caching-transform": "^1.0.0", + "chalk": "^2.0.1", + "chokidar": "^1.4.2", + "clean-stack": "^1.1.1", + "clean-yaml-object": "^0.1.0", + "cli-cursor": "^2.1.0", + "cli-spinners": "^1.0.0", + "cli-truncate": "^1.0.0", + "co-with-promise": "^4.6.0", + "code-excerpt": "^2.1.1", + "common-path-prefix": "^1.0.0", + "concordance": "^3.0.0", + "convert-source-map": "^1.5.1", + "core-assert": "^0.2.0", + "currently-unhandled": "^0.4.1", + "debug": "^3.0.1", + "dot-prop": "^4.1.0", + "empower-core": "^0.6.1", + "equal-length": "^1.0.0", + "figures": "^2.0.0", + "find-cache-dir": "^1.0.0", + "fn-name": "^2.0.0", + "get-port": "^3.0.0", + "globby": "^6.0.0", + "has-flag": "^2.0.0", + "hullabaloo-config-manager": "^1.1.0", + "ignore-by-default": "^1.0.0", + "import-local": "^0.1.1", + "indent-string": "^3.0.0", + "is-ci": "^1.0.7", + "is-generator-fn": "^1.0.0", + "is-obj": "^1.0.0", + "is-observable": "^1.0.0", + "is-promise": "^2.1.0", + "last-line-stream": "^1.0.0", + "lodash.clonedeepwith": "^4.5.0", + "lodash.debounce": "^4.0.3", + "lodash.difference": "^4.3.0", + "lodash.flatten": "^4.2.0", + "loud-rejection": "^1.2.0", + "make-dir": "^1.0.0", + "matcher": "^1.0.0", + "md5-hex": "^2.0.0", + "meow": "^3.7.0", + "ms": "^2.0.0", + "multimatch": "^2.1.0", + "observable-to-promise": "^0.5.0", + "option-chain": "^1.0.0", + "package-hash": "^2.0.0", + "pkg-conf": "^2.0.0", + "plur": "^2.0.0", + "pretty-ms": "^3.0.0", + "require-precompiled": "^0.1.0", + "resolve-cwd": "^2.0.0", + "safe-buffer": "^5.1.1", + "semver": "^5.4.1", + "slash": "^1.0.0", + "source-map-support": "^0.5.0", + "stack-utils": "^1.0.1", + "strip-ansi": "^4.0.0", + "strip-bom-buf": "^1.0.0", + "supertap": "^1.0.0", + "supports-color": "^5.0.0", + "trim-off-newlines": "^1.0.1", + "unique-temp-dir": "^1.0.0", + "update-notifier": "^2.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "ava-init": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", + "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", + "dev": true, + "requires": { + "arr-exclude": "^1.0.0", + "execa": "^0.7.0", + "has-yarn": "^1.0.0", + "read-pkg-up": "^2.0.0", + "write-pkg": "^3.1.0" + }, + "dependencies": { + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + } + } + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "optional": true + }, + "aws4": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", + "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==", + "optional": true + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "requires": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + } + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true, + "requires": { + "babel-helper-explode-assignable-expression": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-espower": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.4.0.tgz", + "integrity": "sha512-/+SRpy7pKgTI28oEHfn1wkuM5QFAdRq8WNsOOih1dVrdV6A/WbNbRZyl0eX5eyDgtb0lOE27PeDFuCX2j8OxVg==", + "dev": true, + "requires": { + "babel-generator": "^6.1.0", + "babylon": "^6.1.0", + "call-matcher": "^1.0.0", + "core-js": "^2.0.0", + "espower-location-detector": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.1.1" + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", + "dev": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.2", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", + "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", + "dev": true, + "requires": { + "babel-plugin-transform-strict-mode": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-types": "^6.26.0" + } + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "dev": true, + "requires": { + "babel-helper-call-delegate": "^6.24.1", + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "dev": true, + "requires": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "dev": true, + "requires": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "regexpu-core": "^2.0.0" + } + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", + "babel-plugin-syntax-exponentiation-operator": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "requires": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "^0.5.6" + } + } + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", + "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "optional": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary-extensions": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", + "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", + "dev": true + }, + "bl": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "requires": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "bluebird": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", + "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", + "dev": true + }, + "boom": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", + "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", + "optional": true, + "requires": { + "hoek": "4.x.x" + } + }, + "boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dev": true, + "requires": { + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "buf-compare": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", + "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", + "dev": true + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-from": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz", + "integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA==", + "dev": true + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "caching-transform": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", + "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", + "dev": true, + "requires": { + "md5-hex": "^1.2.0", + "mkdirp": "^0.5.1", + "write-file-atomic": "^1.1.4" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "write-file-atomic": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", + "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + } + } + }, + "call-matcher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.0.1.tgz", + "integrity": "sha1-UTTQd5hPcSpU2tPL9i3ijc5BbKg=", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "deep-equal": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.0.0" + } + }, + "call-signature": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", + "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", + "dev": true + }, + "caller-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", + "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", + "dev": true, + "requires": { + "callsites": "^0.2.0" + } + }, + "callsites": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", + "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", + "dev": true + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + } + }, + "capture-stack-trace": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", + "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "optional": true + }, + "catharsis": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", + "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", + "dev": true, + "requires": { + "underscore-contrib": "~0.3.0" + } + }, + "chalk": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", + "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chardet": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", + "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", + "dev": true + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true, + "requires": { + "anymatch": "^1.3.0", + "async-each": "^1.0.0", + "fsevents": "^1.0.0", + "glob-parent": "^2.0.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^2.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0" + } + }, + "ci-info": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.3.tgz", + "integrity": "sha512-SK/846h/Rcy8q9Z9CAwGBLfCJ6EkjJWdpelWDufQpqVDYq2Wnnv8zlSO6AMQap02jvhVruKKpEtQOufo3pFhLg==", + "dev": true + }, + "circular-json": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", + "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-css": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", + "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=", + "optional": true, + "requires": { + "commander": "2.0.x" + } + }, + "clean-stack": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", + "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", + "dev": true + }, + "clean-yaml-object": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", + "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", + "dev": true + }, + "cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-spinners": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", + "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", + "dev": true + }, + "cli-truncate": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", + "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", + "dev": true, + "requires": { + "slice-ansi": "^1.0.0", + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" + }, + "co-with-promise": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", + "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", + "dev": true, + "requires": { + "pinkie-promise": "^1.0.0" + } + }, + "code-excerpt": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", + "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", + "dev": true, + "requires": { + "convert-to-spaces": "^1.0.1" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "^1.1.1" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "combined-stream": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", + "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", + "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", + "optional": true + }, + "common-path-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", + "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" + }, + "compress-commons": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", + "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", + "requires": { + "buffer-crc32": "^0.2.1", + "crc32-stream": "^2.0.0", + "normalize-path": "^2.0.0", + "readable-stream": "^2.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "concordance": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", + "integrity": "sha512-CZBzJ3/l5QJjlZM20WY7+5GP5pMTw+1UEbThcpMw8/rojsi5sBCiD8ZbBLtD+jYpRGAkwuKuqk108c154V9eyQ==", + "dev": true, + "requires": { + "date-time": "^2.1.0", + "esutils": "^2.0.2", + "fast-diff": "^1.1.1", + "function-name-support": "^0.2.0", + "js-string-escape": "^1.0.1", + "lodash.clonedeep": "^4.5.0", + "lodash.flattendeep": "^4.4.0", + "lodash.merge": "^4.6.0", + "md5-hex": "^2.0.0", + "semver": "^5.3.0", + "well-known-symbols": "^1.0.0" + }, + "dependencies": { + "date-time": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", + "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", + "dev": true, + "requires": { + "time-zone": "^1.0.0" + } + } + } + }, + "configstore": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", + "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", + "dev": true + }, + "convert-to-spaces": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", + "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, + "core-assert": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", + "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", + "dev": true, + "requires": { + "buf-compare": "^1.0.0", + "is-error": "^2.2.0" + } + }, + "core-js": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.6.tgz", + "integrity": "sha512-lQUVfQi0aLix2xpyjrrJEvfuYCqPc/HwmTKsC/VNf8q0zsjX7SQZtp4+oRONN5Tsur9GDETPjj+Ub2iDiGZfSQ==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "crc": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz", + "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ=" + }, + "crc32-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", + "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", + "requires": { + "crc": "^3.4.4", + "readable-stream": "^2.0.0" + } + }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "dev": true, + "requires": { + "capture-stack-trace": "^1.0.0" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "cryptiles": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", + "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", + "optional": true, + "requires": { + "boom": "5.x.x" + }, + "dependencies": { + "boom": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", + "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", + "optional": true, + "requires": { + "hoek": "4.x.x" + } + } + } + }, + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true + }, + "css": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.3.tgz", + "integrity": "sha512-0W171WccAjQGGTKLhw4m2nnl0zPHUlTO/I8td4XzJgIB8Hg3ZZx71qT4G4eX8OVsSiaAKiUMy73E3nsbPlg2DQ==", + "requires": { + "inherits": "^2.0.1", + "source-map": "^0.1.38", + "source-map-resolve": "^0.5.1", + "urix": "^0.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "requires": { + "es5-ext": "^0.10.9" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "optional": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-time": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", + "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-extend": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.1.tgz", + "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "requires": { + "clone": "^1.0.2" + }, + "dependencies": { + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" + } + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "del": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", + "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", + "dev": true, + "requires": { + "globby": "^5.0.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" + }, + "dependencies": { + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "dir-glob": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", + "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "requires": { + "arrify": "^1.0.1", + "path-type": "^3.0.0" + } + }, + "docdash": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-0.4.0.tgz", + "integrity": "sha1-BcOlDYMYmYFpnuDAdtOjlQ237AA=", + "dev": true + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dot-prop": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", + "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", + "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "optional": true, + "requires": { + "jsbn": "~0.1.0" + } + }, + "empower-core": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", + "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", + "dev": true, + "requires": { + "call-signature": "0.0.2", + "core-js": "^2.0.0" + } + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "requires": { + "once": "^1.4.0" + } + }, + "equal-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", + "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", + "dev": true + }, + "error-ex": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es5-ext": { + "version": "0.10.42", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.42.tgz", + "integrity": "sha512-AJxO1rmPe1bDEfSR6TJ/FgMFYuTBhR5R57KW58iCkYACMyFbrkqVyzXSurYoScDGvgyMpk7uRF/lPUPPTmsRSA==", + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "1" + } + }, + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "es6-weak-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", + "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "requires": { + "d": "1", + "es5-ext": "^0.10.14", + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "requires": { + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint": { + "version": "4.19.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz", + "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==", + "dev": true, + "requires": { + "ajv": "^5.3.0", + "babel-code-frame": "^6.22.0", + "chalk": "^2.1.0", + "concat-stream": "^1.6.0", + "cross-spawn": "^5.1.0", + "debug": "^3.1.0", + "doctrine": "^2.1.0", + "eslint-scope": "^3.7.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^3.5.4", + "esquery": "^1.0.0", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.0.1", + "ignore": "^3.3.3", + "imurmurhash": "^0.1.4", + "inquirer": "^3.0.6", + "is-resolvable": "^1.0.0", + "js-yaml": "^3.9.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.4", + "minimatch": "^3.0.2", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "pluralize": "^7.0.0", + "progress": "^2.0.0", + "regexpp": "^1.0.1", + "require-uncached": "^1.0.3", + "semver": "^5.3.0", + "strip-ansi": "^4.0.0", + "strip-json-comments": "~2.0.1", + "table": "4.0.2", + "text-table": "~0.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "globals": { + "version": "11.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.4.0.tgz", + "integrity": "sha512-Dyzmifil8n/TmSqYDEXbm+C8yitzJQqQIlJQLNRMwa+BOUJpRC19pyVeN12JAjt61xonvXjtff+hJruTRXn5HA==", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "eslint-config-google": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.9.1.tgz", + "integrity": "sha512-5A83D+lH0PA81QMESKbLJd/a3ic8tPZtwUmqNrxMRo54nfFaUvtt89q/+icQ+fd66c2xQHn0KyFkzJDoAUfpZA==", + "dev": true + }, + "eslint-scope": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", + "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", + "dev": true + }, + "espower-location-detector": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", + "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", + "dev": true, + "requires": { + "is-url": "^1.2.1", + "path-is-absolute": "^1.0.0", + "source-map": "^0.5.0", + "xtend": "^4.0.0" + } + }, + "espree": { + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", + "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", + "dev": true, + "requires": { + "acorn": "^5.5.0", + "acorn-jsx": "^3.0.0" + } + }, + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=" + }, + "espurify": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.0.tgz", + "integrity": "sha512-jdkJG9jswjKCCDmEridNUuIQei9algr+o66ZZ19610ZoBsiWLRsQGNYS4HGez3Z/DsR0lhANGAqiwBUclPuNag==", + "dev": true, + "requires": { + "core-js": "^2.0.0" + } + }, + "esquery": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz", + "integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=", + "dev": true, + "requires": { + "estraverse": "^4.0.0" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "events-to-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", + "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", + "dev": true + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "requires": { + "fill-range": "^2.1.0" + }, + "dependencies": { + "fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "requires": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + } + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", + "optional": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "external-editor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.1.0.tgz", + "integrity": "sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA==", + "dev": true, + "requires": { + "chardet": "^0.4.0", + "iconv-lite": "^0.4.17", + "tmp": "^0.0.33" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" + }, + "fast-diff": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.1.2.tgz", + "integrity": "sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", + "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "dev": true, + "requires": { + "flat-cache": "^1.2.1", + "object-assign": "^4.0.1" + } + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "requires": { + "locate-path": "^2.0.0" + } + }, + "flat-cache": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", + "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", + "dev": true, + "requires": { + "circular-json": "^0.3.1", + "del": "^2.0.2", + "graceful-fs": "^4.1.2", + "write": "^0.2.1" + } + }, + "fn-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", + "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", + "dev": true + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "optional": true + }, + "form-data": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", + "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "optional": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "1.0.6", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", + "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.9.2", + "node-pre-gyp": "^0.10.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.21", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": "^2.1.0" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "minipass": { + "version": "2.2.4", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "^5.1.1", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.2.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.10.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.1.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.1.10", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.0.5" + } + }, + "safe-buffer": { + "version": "5.1.1", + "bundled": true, + "dev": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.5.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.2.4", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.1", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "3.0.2", + "bundled": true, + "dev": true + } + } + }, + "function-name-support": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", + "integrity": "sha1-VdO/qm6v1QWlD5vIH99XVkoLsHE=", + "dev": true + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "get-port": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "optional": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "^2.0.0" + } + }, + "global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "dev": true, + "requires": { + "ini": "^1.3.4" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "globby": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", + "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "requires": { + "array-union": "^1.0.1", + "dir-glob": "^2.0.0", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + } + }, + "got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "dev": true, + "requires": { + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "optional": true + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "optional": true, + "requires": { + "ajv": "^5.1.0", + "har-schema": "^2.0.0" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "has-yarn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", + "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", + "dev": true + }, + "hawk": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", + "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", + "optional": true, + "requires": { + "boom": "4.x.x", + "cryptiles": "3.x.x", + "hoek": "4.x.x", + "sntp": "2.x.x" + } + }, + "hoek": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz", + "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==" + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + } + }, + "hosted-git-info": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz", + "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==" + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "optional": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "hullabaloo-config-manager": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/hullabaloo-config-manager/-/hullabaloo-config-manager-1.1.1.tgz", + "integrity": "sha512-ztKnkZV0TmxnumCDHHgLGNiDnotu4EHCp9YMkznWuo4uTtCyJ+cu+RNcxUeXYKTllpvLFWnbfWry09yzszgg+A==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "es6-error": "^4.0.2", + "graceful-fs": "^4.1.11", + "indent-string": "^3.1.0", + "json5": "^0.5.1", + "lodash.clonedeep": "^4.5.0", + "lodash.clonedeepwith": "^4.5.0", + "lodash.isequal": "^4.5.0", + "lodash.merge": "^4.6.0", + "md5-hex": "^2.0.0", + "package-hash": "^2.0.0", + "pkg-dir": "^2.0.0", + "resolve-from": "^3.0.0", + "safe-buffer": "^5.0.1" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", + "dev": true + }, + "ignore": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz", + "integrity": "sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA==" + }, + "ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", + "dev": true + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, + "import-local": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", + "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", + "dev": true, + "requires": { + "pkg-dir": "^2.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "inquirer": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "dev": true, + "requires": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.4", + "figures": "^2.0.0", + "lodash": "^4.3.0", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rx-lite": "^4.0.8", + "rx-lite-aggregates": "^4.0.8", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "irregular-plurals": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz", + "integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "requires": { + "builtin-modules": "^1.0.0" + } + }, + "is-ci": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz", + "integrity": "sha512-c7TnwxLePuqIlxHgr7xtxzycJPegNHFuIrBkwbf8hc58//+Op1CqFkyS+xnIMkwn9UsJIwc174BIjkyBmSpjKg==", + "dev": true, + "requires": { + "ci-info": "^1.0.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "requires": { + "is-primitive": "^2.0.0" + } + }, + "is-error": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.1.tgz", + "integrity": "sha1-aEqW2EB2V3yY9M20DG0mpRI78Zw=", + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-generator-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", + "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "is-installed-globally": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", + "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "dev": true, + "requires": { + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" + } + }, + "is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "dev": true + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-observable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", + "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", + "dev": true, + "requires": { + "symbol-observable": "^1.1.0" + } + }, + "is-odd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-2.0.0.tgz", + "integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==", + "requires": { + "is-number": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==" + } + } + }, + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "dev": true + }, + "is-path-in-cwd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", + "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", + "dev": true, + "requires": { + "is-path-inside": "^1.0.0" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "^3.0.1" + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "dev": true + }, + "is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", + "dev": true + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "optional": true + }, + "is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "optional": true + }, + "js-string-escape": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", + "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", + "dev": true + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "js-yaml": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz", + "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "dependencies": { + "esprima": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", + "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==" + } + } + }, + "js2xmlparser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", + "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", + "dev": true, + "requires": { + "xmlcreate": "^1.0.1" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "optional": true + }, + "jsdoc": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", + "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", + "dev": true, + "requires": { + "babylon": "7.0.0-beta.19", + "bluebird": "~3.5.0", + "catharsis": "~0.8.9", + "escape-string-regexp": "~1.0.5", + "js2xmlparser": "~3.0.0", + "klaw": "~2.0.0", + "marked": "~0.3.6", + "mkdirp": "~0.5.1", + "requizzle": "~0.2.1", + "strip-json-comments": "~2.0.1", + "taffydb": "2.6.2", + "underscore": "~1.8.3" + }, + "dependencies": { + "babylon": { + "version": "7.0.0-beta.19", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", + "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + } + } + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz", + "integrity": "sha512-xyQpxeWWMKyJps9CuGJYeng6ssI5bpqS9ltQpdVQ90t4ql6NdnxFKh95JcRt2cun/DjMVNrdjniLPuMA69xmCw==" + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "optional": true + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "optional": true + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "optional": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "klaw": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", + "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.9" + } + }, + "last-line-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", + "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", + "dev": true, + "requires": { + "through2": "^2.0.0" + } + }, + "latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "dev": true, + "requires": { + "package-json": "^4.0.0" + } + }, + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "requires": { + "readable-stream": "^2.0.5" + } + }, + "less": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", + "integrity": "sha1-cc6J7DC3dLNWfyVMZ5WPLywZO94=", + "requires": { + "clean-css": "2.0.x", + "mime": "1.2.x", + "mkdirp": "~0.3.5", + "request": ">=2.12.0", + "source-map": "0.1.x" + }, + "dependencies": { + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "less-openui5": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.5.2.tgz", + "integrity": "sha512-9RfQJ+g7PD9tE/cJUgl1SvNjmkblrqbuiVvqsrQhJvWGZZWlvL2dNeWzxCAiPsBmr975lverlzyS3tVHRSgb3A==", + "requires": { + "clone": "^2.1.0", + "css": "^2.2.1", + "less": "1.6.3", + "object-assign": "^4.0.1" + } + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.5", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz", + "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==" + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.clonedeepwith": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", + "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", + "dev": true + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, + "lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "dev": true + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "lodash.merge": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", + "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==", + "dev": true + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "dev": true, + "requires": { + "js-tokens": "^3.0.0" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "lru-cache": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz", + "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "requires": { + "pify": "^3.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "^1.0.0" + } + }, + "marked": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==", + "dev": true + }, + "matcher": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.0.tgz", + "integrity": "sha512-aZGv6JBTHqfqAd09jmAlbKnAICTfIvb5Z8gXVxPB5WZtFfHMaAMdACL7tQflD2V+6/8KNcY8s6DYtWLgpJP5lA==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.4" + } + }, + "math-random": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", + "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", + "dev": true + }, + "md5-hex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", + "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "md5-o-matic": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", + "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", + "dev": true + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", + "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=", + "optional": true + }, + "mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" + }, + "mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "requires": { + "mime-db": "~1.33.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", + "optional": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "multimatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", + "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "dev": true, + "requires": { + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" + } + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "nan": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", + "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.9.tgz", + "integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-odd": "^2.0.0", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "requires": { + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "nyc": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-11.8.0.tgz", + "integrity": "sha512-PUFq1PSsx5OinSk5g5aaZygcDdI3QQT5XUlbR9QRMihtMS6w0Gm8xj4BxmKeeAlpQXC5M2DIhH16Y+KejceivQ==", + "dev": true, + "requires": { + "archy": "^1.0.0", + "arrify": "^1.0.1", + "caching-transform": "^1.0.0", + "convert-source-map": "^1.5.1", + "debug-log": "^1.0.1", + "default-require-extensions": "^1.0.0", + "find-cache-dir": "^0.1.1", + "find-up": "^2.1.0", + "foreground-child": "^1.5.3", + "glob": "^7.0.6", + "istanbul-lib-coverage": "^1.1.2", + "istanbul-lib-hook": "^1.1.0", + "istanbul-lib-instrument": "^1.10.0", + "istanbul-lib-report": "^1.1.3", + "istanbul-lib-source-maps": "^1.2.3", + "istanbul-reports": "^1.4.0", + "md5-hex": "^1.2.0", + "merge-source-map": "^1.1.0", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.0", + "resolve-from": "^2.0.0", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.1", + "spawn-wrap": "^1.4.2", + "test-exclude": "^4.2.0", + "yargs": "11.1.0", + "yargs-parser": "^8.0.0" + }, + "dependencies": { + "align-text": { + "version": "0.1.4", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + } + }, + "amdefine": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "bundled": true, + "dev": true + }, + "append-transform": { + "version": "0.4.0", + "bundled": true, + "dev": true, + "requires": { + "default-require-extensions": "^1.0.0" + } + }, + "archy": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "arr-diff": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "bundled": true, + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "bundled": true, + "dev": true + }, + "arrify": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "async": { + "version": "1.5.2", + "bundled": true, + "dev": true + }, + "atob": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "babel-code-frame": { + "version": "6.26.0", + "bundled": true, + "dev": true, + "requires": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + } + }, + "babel-generator": { + "version": "6.26.1", + "bundled": true, + "dev": true, + "requires": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "bundled": true, + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-runtime": { + "version": "6.26.0", + "bundled": true, + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "babel-template": { + "version": "6.26.0", + "bundled": true, + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "bundled": true, + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + } + }, + "babel-types": { + "version": "6.26.0", + "bundled": true, + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "bundled": true, + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "base": { + "version": "0.11.2", + "bundled": true, + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true + } + } + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "bundled": true, + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "builtin-modules": { + "version": "1.1.1", + "bundled": true, + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + } + } + }, + "caching-transform": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "requires": { + "md5-hex": "^1.2.0", + "mkdirp": "^0.5.1", + "write-file-atomic": "^1.1.4" + } + }, + "camelcase": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true + }, + "center-align": { + "version": "0.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + } + }, + "chalk": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "class-utils": { + "version": "0.3.6", + "bundled": true, + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + } + } + }, + "cliui": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.2", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "commondir": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "component-emitter": { + "version": "1.2.1", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "convert-source-map": { + "version": "1.5.1", + "bundled": true, + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "core-js": { + "version": "2.5.6", + "bundled": true, + "dev": true + }, + "cross-spawn": { + "version": "4.0.2", + "bundled": true, + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "debug-log": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "decamelize": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "bundled": true, + "dev": true + }, + "default-require-extensions": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "strip-bom": "^2.0.0" + } + }, + "define-property": { + "version": "2.0.2", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true + } + } + }, + "detect-indent": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "error-ex": { + "version": "1.3.1", + "bundled": true, + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "bundled": true, + "dev": true + }, + "esutils": { + "version": "2.0.2", + "bundled": true, + "dev": true + }, + "execa": { + "version": "0.7.0", + "bundled": true, + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "bundled": true, + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } + } + }, + "expand-brackets": { + "version": "2.1.4", + "bundled": true, + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "extend-shallow": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "bundled": true, + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true + } + } + }, + "fill-range": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-cache-dir": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "requires": { + "commondir": "^1.0.1", + "mkdirp": "^0.5.1", + "pkg-dir": "^1.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "for-in": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "foreground-child": { + "version": "1.5.6", + "bundled": true, + "dev": true, + "requires": { + "cross-spawn": "^4", + "signal-exit": "^3.0.0" + } + }, + "fragment-cache": { + "version": "0.2.1", + "bundled": true, + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "get-caller-file": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "get-value": { + "version": "2.0.6", + "bundled": true, + "dev": true + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "globals": { + "version": "9.18.0", + "bundled": true, + "dev": true + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true, + "dev": true + }, + "handlebars": { + "version": "4.0.11", + "bundled": true, + "dev": true, + "requires": { + "async": "^1.4.0", + "optimist": "^0.6.1", + "source-map": "^0.4.4", + "uglify-js": "^2.6" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "bundled": true, + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "has-ansi": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-flag": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "has-value": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + } + } + }, + "has-values": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "bundled": true, + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hosted-git-info": { + "version": "2.6.0", + "bundled": true, + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "bundled": true, + "dev": true + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "invariant": { + "version": "2.2.4", + "bundled": true, + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "invert-kv": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-arrayish": { + "version": "0.2.1", + "bundled": true, + "dev": true + }, + "is-buffer": { + "version": "1.1.6", + "bundled": true, + "dev": true + }, + "is-builtin-module": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "builtin-modules": "^1.0.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-descriptor": { + "version": "0.1.6", + "bundled": true, + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "bundled": true, + "dev": true + } + } + }, + "is-extendable": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "is-number": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-odd": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "is-number": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "bundled": true, + "dev": true + } + } + }, + "is-plain-object": { + "version": "2.0.4", + "bundled": true, + "dev": true, + "requires": { + "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + } + } + }, + "is-stream": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "bundled": true, + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "isexe": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + }, + "istanbul-lib-coverage": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "istanbul-lib-hook": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "append-transform": "^0.4.0" + } + }, + "istanbul-lib-instrument": { + "version": "1.10.1", + "bundled": true, + "dev": true, + "requires": { + "babel-generator": "^6.18.0", + "babel-template": "^6.16.0", + "babel-traverse": "^6.18.0", + "babel-types": "^6.18.0", + "babylon": "^6.18.0", + "istanbul-lib-coverage": "^1.2.0", + "semver": "^5.3.0" + } + }, + "istanbul-lib-report": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "requires": { + "istanbul-lib-coverage": "^1.1.2", + "mkdirp": "^0.5.1", + "path-parse": "^1.0.5", + "supports-color": "^3.1.2" + }, + "dependencies": { + "supports-color": { + "version": "3.2.3", + "bundled": true, + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "1.2.3", + "bundled": true, + "dev": true, + "requires": { + "debug": "^3.1.0", + "istanbul-lib-coverage": "^1.1.2", + "mkdirp": "^0.5.1", + "rimraf": "^2.6.1", + "source-map": "^0.5.3" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "istanbul-reports": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "handlebars": "^4.0.3" + } + }, + "js-tokens": { + "version": "3.0.2", + "bundled": true, + "dev": true + }, + "jsesc": { + "version": "1.3.0", + "bundled": true, + "dev": true + }, + "kind-of": { + "version": "3.2.2", + "bundled": true, + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "lazy-cache": { + "version": "1.0.4", + "bundled": true, + "dev": true, + "optional": true + }, + "lcid": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "dependencies": { + "path-exists": { + "version": "3.0.0", + "bundled": true, + "dev": true + } + } + }, + "lodash": { + "version": "4.17.10", + "bundled": true, + "dev": true + }, + "longest": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "loose-envify": { + "version": "1.3.1", + "bundled": true, + "dev": true, + "requires": { + "js-tokens": "^3.0.0" + } + }, + "lru-cache": { + "version": "4.1.3", + "bundled": true, + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "map-cache": { + "version": "0.2.2", + "bundled": true, + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "md5-hex": { + "version": "1.3.0", + "bundled": true, + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "md5-o-matic": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "mem": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "merge-source-map": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true + } + } + }, + "micromatch": { + "version": "3.1.10", + "bundled": true, + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true + } + } + }, + "mimic-fn": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "mixin-deep": { + "version": "1.3.1", + "bundled": true, + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "nanomatch": { + "version": "1.2.9", + "bundled": true, + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-odd": "^2.0.0", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "arr-diff": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "bundled": true, + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true + } + } + }, + "normalize-package-data": { + "version": "2.4.0", + "bundled": true, + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "bundled": true, + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "bundled": true, + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "object-visit": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "requires": { + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + } + } + }, + "object.pick": { + "version": "1.3.0", + "bundled": true, + "dev": true, + "requires": { + "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + } + } + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "optimist": { + "version": "0.6.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "os-locale": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" + } + }, + "p-finally": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "p-limit": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "bundled": true, + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "pascalcase": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "path-exists": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "path-key": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "path-parse": { + "version": "1.0.5", + "bundled": true, + "dev": true + }, + "path-type": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "bundled": true, + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "bundled": true, + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "pkg-dir": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "find-up": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + } + } + }, + "posix-character-classes": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + } + } + }, + "regenerator-runtime": { + "version": "0.11.1", + "bundled": true, + "dev": true + }, + "regex-not": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "repeat-element": { + "version": "1.1.2", + "bundled": true, + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "bundled": true, + "dev": true + }, + "repeating": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "require-directory": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "resolve-from": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "bundled": true, + "dev": true + }, + "ret": { + "version": "0.1.15", + "bundled": true, + "dev": true + }, + "right-align": { + "version": "0.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "align-text": "^0.1.1" + } + }, + "rimraf": { + "version": "2.6.2", + "bundled": true, + "dev": true, + "requires": { + "glob": "^7.0.5" + } + }, + "safe-regex": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "semver": { + "version": "5.5.0", + "bundled": true, + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "set-value": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "shebang-command": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true + }, + "slide": { + "version": "1.1.6", + "bundled": true, + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "bundled": true, + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.2.0" + } + }, + "source-map": { + "version": "0.5.7", + "bundled": true, + "dev": true + }, + "source-map-resolve": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "atob": "^2.0.0", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-url": { + "version": "0.4.0", + "bundled": true, + "dev": true + }, + "spawn-wrap": { + "version": "1.4.2", + "bundled": true, + "dev": true, + "requires": { + "foreground-child": "^1.5.6", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "which": "^1.3.0" + } + }, + "spdx-correct": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.1.0", + "bundled": true, + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "split-string": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "static-extend": { + "version": "0.1.2", + "bundled": true, + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "string-width": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + }, + "strip-eof": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "supports-color": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "test-exclude": { + "version": "4.2.1", + "bundled": true, + "dev": true, + "requires": { + "arrify": "^1.0.1", + "micromatch": "^3.1.8", + "object-assign": "^4.1.0", + "read-pkg-up": "^1.0.1", + "require-main-filename": "^1.0.1" + }, + "dependencies": { + "arr-diff": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "bundled": true, + "dev": true + }, + "braces": { + "version": "2.3.2", + "bundled": true, + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-brackets": { + "version": "2.1.4", + "bundled": true, + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "bundled": true, + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "bundled": true, + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "bundled": true, + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "bundled": true, + "dev": true + } + } + }, + "extglob": { + "version": "2.0.4", + "bundled": true, + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "is-number": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "bundled": true, + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "bundled": true, + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + } + } + }, + "to-fast-properties": { + "version": "1.0.3", + "bundled": true, + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "to-regex": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + } + } + }, + "trim-right": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "uglify-js": { + "version": "2.8.29", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" + }, + "dependencies": { + "yargs": { + "version": "3.10.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "union-value": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "set-value": { + "version": "0.4.3", + "bundled": true, + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" + } + } + } + }, + "unset-value": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "bundled": true, + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "bundled": true, + "dev": true + }, + "isobject": { + "version": "3.0.1", + "bundled": true, + "dev": true + } + } + }, + "urix": { + "version": "0.1.0", + "bundled": true, + "dev": true + }, + "use": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "kind-of": "^6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "bundled": true, + "dev": true + } + } + }, + "validate-npm-package-license": { + "version": "3.0.3", + "bundled": true, + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "which": { + "version": "1.3.0", + "bundled": true, + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "window-size": { + "version": "0.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "wordwrap": { + "version": "0.0.3", + "bundled": true, + "dev": true + }, + "wrap-ansi": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "write-file-atomic": { + "version": "1.3.4", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + }, + "y18n": { + "version": "3.2.1", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "2.1.2", + "bundled": true, + "dev": true + }, + "yargs": { + "version": "11.1.0", + "bundled": true, + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "bundled": true, + "dev": true + }, + "cliui": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "yargs-parser": { + "version": "9.0.2", + "bundled": true, + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + } + } + }, + "yargs-parser": { + "version": "8.1.0", + "bundled": true, + "dev": true, + "requires": { + "camelcase": "^4.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "bundled": true, + "dev": true + } + } + } + } + }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "requires": { + "isobject": "^3.0.0" + } + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "requires": { + "isobject": "^3.0.1" + } + }, + "observable-to-promise": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.5.0.tgz", + "integrity": "sha1-yCjw8NxH6fhq+KSXfF1VB2znqR8=", + "dev": true, + "requires": { + "is-observable": "^0.2.0", + "symbol-observable": "^1.0.4" + }, + "dependencies": { + "is-observable": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", + "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", + "dev": true, + "requires": { + "symbol-observable": "^0.2.2" + }, + "dependencies": { + "symbol-observable": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", + "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", + "dev": true + } + } + } + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "option-chain": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", + "integrity": "sha1-k41zvU4Xg/lI00AjZEraI2aeMPI=", + "dev": true + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-limit": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", + "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" + }, + "package-hash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-2.0.0.tgz", + "integrity": "sha1-eK4ybIngWk2BO2hgGXevBcANKg0=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "lodash.flattendeep": "^4.4.0", + "md5-hex": "^2.0.0", + "release-zalgo": "^1.0.0" + } + }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, + "requires": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse-ms": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", + "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", + "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=" + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "optional": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + }, + "pinkie": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", + "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", + "dev": true + }, + "pinkie-promise": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", + "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", + "dev": true, + "requires": { + "pinkie": "^1.0.0" + } + }, + "pkg-conf": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", + "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "load-json-file": "^4.0.0" + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } + }, + "plur": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", + "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", + "dev": true, + "requires": { + "irregular-plurals": "^1.0.0" + } + }, + "pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", + "dev": true + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, + "pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" + }, + "pretty-ms": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.1.0.tgz", + "integrity": "sha1-6crJx2v27lL+lC3ZxsQhMVOxKIE=", + "dev": true, + "requires": { + "parse-ms": "^1.0.0", + "plur": "^2.1.2" + }, + "dependencies": { + "parse-ms": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", + "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", + "dev": true + } + } + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + }, + "progress": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", + "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "optional": true + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", + "optional": true + }, + "random-int": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", + "integrity": "sha1-5qLtNEisnGZGoGV0Q7HBUhWS7Qg=" + }, + "randomatic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz", + "integrity": "sha512-VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==", + "dev": true, + "requires": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "rc": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.7.tgz", + "integrity": "sha512-LdLD8xD4zzLsAT5xyushXDNscEjB7+2ulnl8+r1pnESlYtlJtVSoCMBGr30eDRJ3+2Gq89jK9P9e4tCEH1+ywA==", + "dev": true, + "requires": { + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "readable-stream": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz", + "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.0.3", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", + "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "minimatch": "^3.0.2", + "readable-stream": "^2.0.2", + "set-immediate-shim": "^1.0.1" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + }, + "dependencies": { + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + } + } + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "^0.1.3" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexpp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", + "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==", + "dev": true + }, + "regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "dev": true, + "requires": { + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" + } + }, + "registry-auth-token": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", + "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", + "dev": true, + "requires": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true, + "requires": { + "rc": "^1.0.1" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + } + }, + "release-zalgo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "dev": true, + "requires": { + "es6-error": "^4.0.1" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + }, + "repeat-element": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", + "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "replacestream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", + "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", + "requires": { + "escape-string-regexp": "^1.0.3", + "object-assign": "^4.0.1", + "readable-stream": "^2.0.2" + } + }, + "request": { + "version": "2.85.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.85.0.tgz", + "integrity": "sha512-8H7Ehijd4js+s6wuVPLjwORxD4zeuyjYugprdOXlPSqaApmL/QOy+EB/beICHVCHkGMKNh5rvihb5ov+IDw4mg==", + "optional": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "hawk": "~6.0.2", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "stringstream": "~0.0.5", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" + } + }, + "require-precompiled": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", + "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", + "dev": true + }, + "require-uncached": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", + "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", + "dev": true, + "requires": { + "caller-path": "^0.1.0", + "resolve-from": "^1.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", + "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", + "dev": true + } + } + }, + "requizzle": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", + "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", + "dev": true, + "requires": { + "underscore": "~1.6.0" + }, + "dependencies": { + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", + "dev": true + } + } + }, + "resolve": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.6.0.tgz", + "integrity": "sha512-mw7JQNu5ExIkcw4LPih0owX/TZXjD/ZUF/ZQ/pDnkw3ZKhDcZZw5klmBlj6gVMwjQ3Pz5Jgu7F3d0jcDVuEWdw==", + "requires": { + "path-parse": "^1.0.5" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "dev": true, + "requires": { + "glob": "^7.0.5" + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, + "rx-lite": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", + "dev": true + }, + "rx-lite-aggregates": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", + "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "dev": true, + "requires": { + "rx-lite": "*" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "requires": { + "ret": "~0.1.10" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" + }, + "semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "dev": true, + "requires": { + "semver": "^5.0.3" + } + }, + "serialize-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", + "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true + }, + "set-value": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + }, + "slice-ansi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", + "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + } + } + }, + "slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "sntp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", + "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", + "optional": true, + "requires": { + "hoek": "4.x.x" + } + }, + "sort-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", + "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "dev": true, + "requires": { + "is-plain-obj": "^1.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-resolve": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.1.tgz", + "integrity": "sha512-0KW2wvzfxm8NCTb30z0LMNyPqWCdDGE2viwzUaucqJdkTRXtZiSY3I+2A6nVAjmdOy0I4gU8DwnVVGsk9jvP2A==", + "requires": { + "atob": "^2.0.0", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", + "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, + "spdx-correct": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", + "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", + "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==" + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", + "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==" + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "sshpk": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz", + "integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=", + "optional": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "tweetnacl": "~0.14.0" + } + }, + "stack-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.1.tgz", + "integrity": "sha1-1PM6tU6OOHeLDKXP07OvsS22hiA=", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "stringstream": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", + "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==", + "optional": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + }, + "strip-bom-buf": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", + "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "dev": true, + "requires": { + "is-utf8": "^0.2.1" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "supertap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", + "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "indent-string": "^3.2.0", + "js-yaml": "^3.10.0", + "serialize-error": "^2.1.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "supports-color": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz", + "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + } + } + }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "dev": true + }, + "table": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", + "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", + "dev": true, + "requires": { + "ajv": "^5.2.3", + "ajv-keywords": "^2.1.0", + "chalk": "^2.1.0", + "lodash": "^4.17.4", + "slice-ansi": "1.0.0", + "string-width": "^2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "taffydb": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", + "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=", + "dev": true + }, + "tap-nyan": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", + "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "duplexer2": "^0.1.4", + "supports-color": "^3.1.2", + "tap-parser": "^3.0.3" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + } + } + }, + "tap-parser": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", + "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", + "dev": true, + "requires": { + "events-to-array": "^1.0.1", + "js-yaml": "^3.2.7", + "readable-stream": "^2" + } + }, + "tar-stream": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", + "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "requires": { + "bl": "^1.0.0", + "end-of-stream": "^1.0.0", + "readable-stream": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, + "requires": { + "execa": "^0.7.0" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, + "requires": { + "readable-stream": "^2.1.5", + "xtend": "~4.0.1" + } + }, + "time-zone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", + "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", + "dev": true + }, + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "tough-cookie": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", + "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "optional": true, + "requires": { + "punycode": "^1.4.1" + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "trim-off-newlines": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", + "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "optional": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "optional": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "uid2": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", + "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", + "dev": true + }, + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", + "dev": true + }, + "underscore-contrib": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", + "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", + "dev": true, + "requires": { + "underscore": "1.6.0" + }, + "dependencies": { + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", + "dev": true + } + } + }, + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" + } + } + } + }, + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, + "requires": { + "crypto-random-string": "^1.0.0" + } + }, + "unique-temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", + "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", + "dev": true, + "requires": { + "mkdirp": "^0.5.1", + "os-tmpdir": "^1.0.1", + "uid2": "0.0.3" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + } + } + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + } + } + }, + "unzip-response": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "dev": true + }, + "update-notifier": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", + "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "dev": true, + "requires": { + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-ci": "^1.0.10", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "requires": { + "prepend-http": "^1.0.1" + } + }, + "use": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz", + "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==", + "requires": { + "kind-of": "^6.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "uuid": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", + "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==", + "optional": true + }, + "validate-npm-package-license": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", + "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "optional": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "well-known-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-1.0.0.tgz", + "integrity": "sha1-c8eK6Bp3Jqj6WY4ogIAcixYiVRg=", + "dev": true + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wide-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", + "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "requires": { + "string-width": "^1.0.2" + } + }, + "widest-line": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz", + "integrity": "sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM=", + "dev": true, + "requires": { + "string-width": "^2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", + "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", + "dev": true, + "requires": { + "mkdirp": "^0.5.1" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + } + } + }, + "write-file-atomic": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", + "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "write-json-file": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", + "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", + "dev": true, + "requires": { + "detect-indent": "^5.0.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "pify": "^3.0.0", + "sort-keys": "^2.0.0", + "write-file-atomic": "^2.0.0" + }, + "dependencies": { + "detect-indent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", + "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", + "dev": true + } + } + }, + "write-pkg": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.1.0.tgz", + "integrity": "sha1-AwqZlMyZk9JbTnWp8aGSNgcpHOk=", + "dev": true, + "requires": { + "sort-keys": "^2.0.0", + "write-json-file": "^2.2.0" + } + }, + "xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true + }, + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" + } + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + }, + "xmlcreate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", + "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=", + "dev": true + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "zip-stream": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", + "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", + "requires": { + "archiver-utils": "^1.3.0", + "compress-commons": "^1.2.0", + "lodash": "^4.8.0", + "readable-stream": "^2.0.0" + } + } + } +} diff --git a/packages/project/package.json b/packages/project/package.json index a88e6823a95..70be1f83dbb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -91,12 +91,12 @@ "@ui5/logger": "SAP/ui5-logger" }, "devDependencies": { - "ava": "^0.24.0", + "ava": "^0.25.0", "docdash": "^0.4.0", "eslint": "^4.13.1", "eslint-config-google": "^0.9.1", "jsdoc": "^3.5.5", - "nyc": "^11.4.1", + "nyc": "^11.8.0", "tap-nyan": "^1.1.0" } } From ac0228195850682de6a03f6c5ca66f6a4c8e1a69 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 6 Jun 2018 15:29:48 +0200 Subject: [PATCH 0011/1272] [ui5-project][INTERNAL] Add chglog config + npm release scripts --- packages/project/.chglog/CHANGELOG.tpl.md | 42 +++++++++++++++++++++ packages/project/.chglog/RELEASE.tpl.md | 34 +++++++++++++++++ packages/project/.chglog/config.yml | 31 +++++++++++++++ packages/project/.chglog/release-config.yml | 30 +++++++++++++++ packages/project/package.json | 6 ++- 5 files changed, 142 insertions(+), 1 deletion(-) create mode 100755 packages/project/.chglog/CHANGELOG.tpl.md create mode 100755 packages/project/.chglog/RELEASE.tpl.md create mode 100755 packages/project/.chglog/config.yml create mode 100755 packages/project/.chglog/release-config.yml diff --git a/packages/project/.chglog/CHANGELOG.tpl.md b/packages/project/.chglog/CHANGELOG.tpl.md new file mode 100755 index 00000000000..1217c371b33 --- /dev/null +++ b/packages/project/.chglog/CHANGELOG.tpl.md @@ -0,0 +1,42 @@ +# Changelog +All notable changes to this project will be documented in this file. +This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +{{ if .Versions -}} +A list of unreleased changes can be found [here]({{ .Info.RepositoryURL }}/compare/{{ $latest := index .Versions 0 }}{{ $latest.Tag.Name }}...HEAD). +{{ end -}} + +{{ range .Versions }} + +## {{ if .Tag.Previous }}[{{ .Tag.Name }}]{{ else }}{{ .Tag.Name }}{{ end }} - {{ datetime "2006-01-02" .Tag.Date }} +{{ range .CommitGroups -}} +### {{ .Title }} +{{ range .Commits -}} +- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }} [`{{ .Hash.Short }}`]({{ $.Info.RepositoryURL }}/commit/{{ .Hash.Long }}) +{{ end }} +{{ end -}} + +{{- if .RevertCommits -}} +### Reverts +{{ range .RevertCommits -}} +- {{ .Revert.Header }} +{{ end }} +{{ end -}} + +{{- if .NoteGroups -}} +{{ range .NoteGroups -}} +### {{ .Title }} +{{ range .Notes }} +{{ .Body }} +{{ end }} +{{ end -}} +{{ end -}} +{{ end -}} + +{{- if .Versions }} +{{ range .Versions -}} +{{ if .Tag.Previous -}} +[{{ .Tag.Name }}]: {{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }} +{{ end -}} +{{ end -}} +{{ end -}} diff --git a/packages/project/.chglog/RELEASE.tpl.md b/packages/project/.chglog/RELEASE.tpl.md new file mode 100755 index 00000000000..29e28ee10fa --- /dev/null +++ b/packages/project/.chglog/RELEASE.tpl.md @@ -0,0 +1,34 @@ +{{ range .Versions }} +{{ range .CommitGroups -}} +### {{ .Title }} +{{ range .Commits -}} +- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }} [`{{ .Hash.Short }}`]({{ $.Info.RepositoryURL }}/commit/{{ .Hash.Long }}) +{{ end }} +{{ end -}} + +{{- if .RevertCommits -}} +### Reverts +{{ range .RevertCommits -}} +- {{ .Revert.Header }} +{{ end }} +{{ end -}} + +{{- if .NoteGroups -}} +{{ range .NoteGroups -}} +### {{ .Title }} +{{ range .Notes }} +{{ .Body }} +{{ end }} +{{ end -}} +{{ end -}} + +{{ if .Tag.Previous }} +### All changes + +`[{{ .Tag.Previous.Name }}...{{ .Tag.Name }}]`` +{{ end }} + +{{ if .Tag.Previous -}} +[{{ .Tag.Previous.Name }}...{{ .Tag.Name }}]: {{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }} +{{ end -}} +{{ end -}} diff --git a/packages/project/.chglog/config.yml b/packages/project/.chglog/config.yml new file mode 100755 index 00000000000..f8e13fd2f03 --- /dev/null +++ b/packages/project/.chglog/config.yml @@ -0,0 +1,31 @@ +style: github +template: CHANGELOG.tpl.md +info: + title: CHANGELOG + repository_url: https://github.com/SAP/ui5-project +options: + commits: + filters: + Type: + - FEATURE + - FIX + - PERF + - INTERNAL + commit_groups: + title_maps: + FEATURE: Features + FIX: Bug Fixes + PERF: Performance Improvements + INTERNAL: Internal Changes + header: + pattern: "^\\[(\\w*)\\]\\s(?:(\\w*)\\:\\s)?(.*)$" + pattern_maps: + - Type + - Scope + - Subject + issues: + prefix: + - "#" + notes: + keywords: + - BREAKING CHANGE diff --git a/packages/project/.chglog/release-config.yml b/packages/project/.chglog/release-config.yml new file mode 100755 index 00000000000..8c9058741bf --- /dev/null +++ b/packages/project/.chglog/release-config.yml @@ -0,0 +1,30 @@ +style: github +template: RELEASE.tpl.md +info: + repository_url: https://github.com/SAP/ui5-project +options: + commits: + filters: + Type: + - FEATURE + - FIX + - PERF + - INTERNAL + commit_groups: + title_maps: + FEATURE: Features + FIX: Bug Fixes + PERF: Performance Improvements + INTERNAL: Internal Changes + header: + pattern: "^\\[(\\w*)\\]\\s(?:(\\w*)\\:\\s)?(.*)$" + pattern_maps: + - Type + - Scope + - Subject + issues: + prefix: + - "#" + notes: + keywords: + - BREAKING CHANGE diff --git a/packages/project/package.json b/packages/project/package.json index 70be1f83dbb..4dd9013fe6d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -27,7 +27,11 @@ "unit-inspect": "cross-env DEBUG=*,-babel,-ava node --inspect-brk node_modules/ava/profile.js", "coverage": "nyc npm run unit", "jsdoc": "npm run jsdoc-generate && opn jsdocs/index.html", - "jsdoc-generate": "node_modules/.bin/jsdoc -c ./jsdoc.json ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)" + "jsdoc-generate": "node_modules/.bin/jsdoc -c ./jsdoc.json ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", + "preversion": "npm test", + "version": "git-chglog --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", + "postversion": "git push --follow-tags", + "release-note": "git-chglog -c .chglog/release-config.yml v$npm_package_version" }, "ava": { "files": [ From 7b0a35b8179fbc7925721725fc6e1adc395aca1d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 6 Jun 2018 15:30:07 +0200 Subject: [PATCH 0012/1272] [ui5-project][INTERNAL] Update .editorconfig --- packages/project/.editorconfig | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/project/.editorconfig b/packages/project/.editorconfig index bd10a34f302..8d305734be3 100644 --- a/packages/project/.editorconfig +++ b/packages/project/.editorconfig @@ -4,11 +4,17 @@ root = true [*] charset = utf-8 +indent_style = tab -[*.{css,html,js,json,less,txt}] +[*.{css,html,js,less,txt,json,yml,md}] trim_trailing_whitespace = true end_of_line = lf -tab_width = 4 +indent_size = 4 +insert_final_newline = true + +[*.yml}] +indent_style = space +indent_size = 2 [*.md] trim_trailing_whitespace = false From b1ca66fb9f1d3807a272bc0ec33d71fd7dcb7bfc Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 6 Jun 2018 15:32:17 +0200 Subject: [PATCH 0013/1272] [ui5-project][INTERNAL] Prepare npm release - Set UI5 Tooling dependencies to npm - Add npm badge to readme - Fix icon URL in readme --- packages/project/README.md | 6 +- packages/project/package-lock.json | 501 ++++++++++++----------------- packages/project/package.json | 4 +- 3 files changed, 210 insertions(+), 301 deletions(-) diff --git a/packages/project/README.md b/packages/project/README.md index 23836d29bd9..ff18e2c0790 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -1,10 +1,11 @@ -![UI5 logo](https://github.com/SAP/ui5-tooling/blob/master/docs/images/UI5_logo_wide.png) +![UI5 icon](https://raw.githubusercontent.com/SAP/ui5-tooling/master/docs/images/UI5_logo_wide.png) # ui5-project > Modules for building a UI5 projects dependency tree, including configuration > Part of the [UI5 Build and Development Tooling](https://github.com/SAP/ui5-tooling) [![Travis CI Build Status](https://travis-ci.org/SAP/ui5-project.svg?branch=master)](https://travis-ci.org/SAP/ui5-project) +[![npm Package Version](https://img.shields.io/npm/v/@ui5/project.svg)](https://www.npmjs.com/package/@ui5/project) **This is a Pre-Alpha release!** **The UI5 Build and Development Tooling described here is not intended for productive use yet. Breaking changes are to be expected.** @@ -240,5 +241,8 @@ Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/bl ## Support Please follow our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md#report-an-issue) on how to report an issue. +## Release History +See [CHANGELOG.md](CHANGELOG.md). + ## License This project is licensed under the Apache Software License, Version 2.0 except as noted otherwise in the [LICENSE](/LICENSE.txt) file. diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index cfe3d77bd5d..ec87a95db98 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -127,39 +127,32 @@ } }, "@ui5/builder": { - "version": "github:SAP/ui5-builder#f8bd99159c5359edf7bb53425c1650ee46fa0663", - "from": "github:SAP/ui5-builder", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.0.1.tgz", + "integrity": "sha512-vw3vZXE/h/ob8tRFksfKJSdNAd4l2cOGqSkmG154aHbo3vcn1skkDVTy2U99xy0W4N7FiiF/BkVgnXIni7oiUQ==", "requires": { - "@ui5/fs": "github:SAP/ui5-fs#d8c8f501eacaf9c8bc47699f39ae7bd933a13784", - "@ui5/logger": "github:SAP/ui5-logger#d9a5ed4940c5357a0c9d312ba7846699ddf223a7", + "@ui5/fs": "^0.0.1", + "@ui5/logger": "^0.0.1", "archiver": "^2.1.0", "escope": "^3.6.0", "esprima": "^2.7.2", "estraverse": "^4.2.0", "globby": "^7.1.1", "graceful-fs": "^4.1.11", - "less-openui5": "^0.5.1", + "less-openui5": "^0.5.3", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "uglify-es": "^3.2.2", "xml2js": "^0.4.17" - }, - "dependencies": { - "@ui5/logger": { - "version": "github:SAP/ui5-logger#d9a5ed4940c5357a0c9d312ba7846699ddf223a7", - "from": "github:SAP/ui5-logger", - "requires": { - "npmlog": "^4.1.2" - } - } } }, "@ui5/fs": { - "version": "github:SAP/ui5-fs#d8c8f501eacaf9c8bc47699f39ae7bd933a13784", - "from": "github:SAP/ui5-fs", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-0.0.1.tgz", + "integrity": "sha512-/AsUkdVmffzf4yj6uiPL766xIBhmrzYRZkQh5L90T+tmMw2buQFHL3ey33xCX8YNM/qhy4zllE8vMv+Y9e1TQw==", "requires": { - "@ui5/logger": "github:SAP/ui5-logger#d9a5ed4940c5357a0c9d312ba7846699ddf223a7", + "@ui5/logger": "^0.0.1", "clone": "^2.1.0", "defaults": "^1.0.3", "globby": "^7.1.1", @@ -172,16 +165,17 @@ } }, "@ui5/logger": { - "version": "github:SAP/ui5-logger#d9a5ed4940c5357a0c9d312ba7846699ddf223a7", - "from": "github:SAP/ui5-logger", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.0.1.tgz", + "integrity": "sha512-1/u0jLU6jCLSOi9mrmY91W6A8qJG0bk4MnKdN6uYB8vVIY4jwktgt17pnWc4fBGRXu4CDQdPr5zWDOoglyBotw==", "requires": { "npmlog": "^4.1.2" } }, "acorn": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.3.tgz", - "integrity": "sha512-jd5MkIUlbbmb07nXH0DT3y7rDVtkzDi4XZOUVWAer8ajmF/DTSSbl5oNFyDOl/OXA33Bl79+ypHhl2pN20VeOQ==", + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.6.2.tgz", + "integrity": "sha512-zUzo1E5dI2Ey8+82egfnttyMlMZ2y0D8xOCO3PNPPlYXpl8NZvF6Qk9L9BEtJs+43FqEmfBViDqc5d1ckRDguw==", "dev": true }, "acorn-jsx": { @@ -405,9 +399,9 @@ } }, "are-we-there-yet": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", - "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", "requires": { "delegates": "^1.0.0", "readable-stream": "^2.0.6" @@ -494,11 +488,11 @@ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" }, "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", "requires": { - "lodash": "^4.14.0" + "lodash": "^4.17.10" } }, "async-each": { @@ -514,9 +508,9 @@ "optional": true }, "atob": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.0.tgz", - "integrity": "sha512-SuiKH8vbsOyCALjA/+EINmt/Kdl+TQPrtFgW7XZZcwtryFu9e5kQoX3bjCW6mIvGH1fbeAZZuvwGR5IlBRznGw==" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz", + "integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio=" }, "auto-bind": { "version": "1.2.0", @@ -621,6 +615,15 @@ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "globby": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", @@ -813,17 +816,6 @@ "private": "^0.1.8", "slash": "^1.0.0", "source-map": "^0.5.7" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } } }, "babel-generator": { @@ -1190,17 +1182,6 @@ "globals": "^9.18.0", "invariant": "^2.2.2", "lodash": "^4.17.4" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } } }, "babel-types": { @@ -1306,15 +1287,6 @@ "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", "dev": true }, - "boom": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", - "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", - "optional": true, - "requires": { - "hoek": "4.x.x" - } - }, "boxen": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", @@ -1411,15 +1383,34 @@ "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", "dev": true }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" + }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" }, - "buffer-from": { + "buffer-fill": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz", - "integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA==", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" + }, + "buffer-from": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", + "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==", "dev": true }, "builtin-modules": { @@ -1556,9 +1547,9 @@ } }, "chalk": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", - "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", @@ -1714,9 +1705,9 @@ "dev": true }, "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz", + "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=" }, "co": { "version": "4.6.0", @@ -1906,9 +1897,9 @@ } }, "core-js": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.6.tgz", - "integrity": "sha512-lQUVfQi0aLix2xpyjrrJEvfuYCqPc/HwmTKsC/VNf8q0zsjX7SQZtp4+oRONN5Tsur9GDETPjj+Ub2iDiGZfSQ==", + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", + "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==", "dev": true }, "core-util-is": { @@ -1950,26 +1941,6 @@ "which": "^1.2.9" } }, - "cryptiles": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", - "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", - "optional": true, - "requires": { - "boom": "5.x.x" - }, - "dependencies": { - "boom": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", - "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", - "optional": true, - "requires": { - "hoek": "4.x.x" - } - } - } - }, "crypto-random-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", @@ -2030,10 +2001,9 @@ "dev": true }, "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { "ms": "2.0.0" } @@ -2056,9 +2026,9 @@ "dev": true }, "deep-extend": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.1.tgz", - "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true }, "deep-is": { @@ -2280,9 +2250,9 @@ } }, "es5-ext": { - "version": "0.10.42", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.42.tgz", - "integrity": "sha512-AJxO1rmPe1bDEfSR6TJ/FgMFYuTBhR5R57KW58iCkYACMyFbrkqVyzXSurYoScDGvgyMpk7uRF/lPUPPTmsRSA==", + "version": "0.10.45", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.45.tgz", + "integrity": "sha512-FkfM6Vxxfmztilbxxz5UKSD4ICMf5tSpRFtDNtkAhOxZ0EKtX6qwmXNyH/sFyIbX2P/nU5AMiA9jilWsUGJzCQ==", "requires": { "es6-iterator": "~2.0.3", "es6-symbol": "~3.1.1", @@ -2428,9 +2398,9 @@ } }, "globals": { - "version": "11.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.4.0.tgz", - "integrity": "sha512-Dyzmifil8n/TmSqYDEXbm+C8yitzJQqQIlJQLNRMwa+BOUJpRC19pyVeN12JAjt61xonvXjtff+hJruTRXn5HA==", + "version": "11.5.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.5.0.tgz", + "integrity": "sha512-hYyf+kI8dm3nORsiiXUQigOU62hDLfJ9G01uyGMxhc6BKsircrUhC4uJPQPUSuq2GrTmiiEt7ewxlMdBewfmKQ==", "dev": true }, "mkdirp": { @@ -2512,9 +2482,9 @@ } }, "esquery": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz", - "integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", "dev": true, "requires": { "estraverse": "^4.0.0" @@ -2583,14 +2553,6 @@ "to-regex": "^3.0.1" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", @@ -2631,6 +2593,15 @@ "repeat-string": "^1.5.2" } }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, "isobject": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", @@ -2639,6 +2610,15 @@ "requires": { "isarray": "1.0.0" } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } } } }, @@ -2668,9 +2648,9 @@ } }, "external-editor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.1.0.tgz", - "integrity": "sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", "dev": true, "requires": { "chardet": "^0.4.0", @@ -2807,22 +2787,6 @@ "requires": { "is-extendable": "^0.1.0" } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } } } }, @@ -2902,6 +2866,11 @@ "map-cache": "^0.2.2" } }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -3640,24 +3609,6 @@ "kind-of": "^4.0.0" }, "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", @@ -3674,23 +3625,6 @@ "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", "dev": true }, - "hawk": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", - "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", - "optional": true, - "requires": { - "boom": "4.x.x", - "cryptiles": "3.x.x", - "hoek": "4.x.x", - "sntp": "2.x.x" - } - }, - "hoek": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz", - "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==" - }, "home-or-tmp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", @@ -3740,15 +3674,18 @@ } }, "iconv-lite": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", - "dev": true + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } }, "ignore": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz", - "integrity": "sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA==" + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.8.tgz", + "integrity": "sha512-pUh+xUQQhQzevjRHHFqqcTy0/dP/kS9I8HSrUydhihjuD09W6ldVWFtIrwhXdUJHis3i2rZNqEHpZH/cbinFbg==" }, "ignore-by-default": { "version": "1.0.1", @@ -4044,10 +3981,9 @@ "dev": true }, "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "requires": { "kind-of": "^3.0.2" }, @@ -4056,7 +3992,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -4231,9 +4166,9 @@ "dev": true }, "js-yaml": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz", - "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==", + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", + "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -4305,9 +4240,9 @@ "dev": true }, "json-parse-better-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz", - "integrity": "sha512-xyQpxeWWMKyJps9CuGJYeng6ssI5bpqS9ltQpdVQ90t4ql6NdnxFKh95JcRt2cun/DjMVNrdjniLPuMA69xmCw==" + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, "json-schema": { "version": "0.2.3", @@ -4414,9 +4349,9 @@ } }, "less-openui5": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.5.2.tgz", - "integrity": "sha512-9RfQJ+g7PD9tE/cJUgl1SvNjmkblrqbuiVvqsrQhJvWGZZWlvL2dNeWzxCAiPsBmr975lverlzyS3tVHRSgb3A==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.5.3.tgz", + "integrity": "sha512-e6k/ZXS2ZIDm+5/mp5bkm8Nnt/fpMAzbe1JG9sw3ax54MKq57597nHA3yBGE+LjMe64OtEjXO/kI25Kyi6HIRw==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", @@ -4455,9 +4390,9 @@ } }, "lodash": { - "version": "4.17.5", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz", - "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==" + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==" }, "lodash.clonedeep": { "version": "4.5.0", @@ -4533,9 +4468,9 @@ "dev": true }, "lru-cache": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz", - "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", + "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", "dev": true, "requires": { "pseudomap": "^1.0.2", @@ -4576,9 +4511,9 @@ "dev": true }, "matcher": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.0.tgz", - "integrity": "sha512-aZGv6JBTHqfqAd09jmAlbKnAICTfIvb5Z8gXVxPB5WZtFfHMaAMdACL7tQflD2V+6/8KNcY8s6DYtWLgpJP5lA==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", + "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", "dev": true, "requires": { "escape-string-regexp": "^1.0.4" @@ -4923,9 +4858,9 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "11.8.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-11.8.0.tgz", - "integrity": "sha512-PUFq1PSsx5OinSk5g5aaZygcDdI3QQT5XUlbR9QRMihtMS6w0Gm8xj4BxmKeeAlpQXC5M2DIhH16Y+KejceivQ==", + "version": "11.9.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-11.9.0.tgz", + "integrity": "sha512-w8OdJAhXL5izerzZMdqzYKMj/pgHJyY3qEPYBjLLxrhcVoHEY9pU5ENIiZyCgG9OR7x3VcUMoD40o6PtVpfR4g==", "dev": true, "requires": { "archy": "^1.0.0", @@ -7907,13 +7842,12 @@ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" }, "pretty-ms": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.1.0.tgz", - "integrity": "sha1-6crJx2v27lL+lC3ZxsQhMVOxKIE=", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.2.0.tgz", + "integrity": "sha512-ZypexbfVUGTFxb0v+m1bUyy92DHe5SyYlnyY0msyms5zd3RwyvNgyxZZsXXgoyzlxjx5MiqtXUdhUfvQbe0A2Q==", "dev": true, "requires": { - "parse-ms": "^1.0.0", - "plur": "^2.1.2" + "parse-ms": "^1.0.0" }, "dependencies": { "parse-ms": { @@ -7954,9 +7888,9 @@ "optional": true }, "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", "optional": true }, "random-int": { @@ -7984,12 +7918,12 @@ } }, "rc": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.7.tgz", - "integrity": "sha512-LdLD8xD4zzLsAT5xyushXDNscEjB7+2ulnl8+r1pnESlYtlJtVSoCMBGr30eDRJ3+2Gq89jK9P9e4tCEH1+ywA==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "dev": true, "requires": { - "deep-extend": "^0.5.1", + "deep-extend": "^0.6.0", "ini": "~1.3.0", "minimist": "^1.2.0", "strip-json-comments": "~2.0.1" @@ -8023,16 +7957,16 @@ } }, "readable-stream": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz", - "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", "isarray": "~1.0.0", "process-nextick-args": "~2.0.0", "safe-buffer": "~5.1.1", - "string_decoder": "~1.0.3", + "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } }, @@ -8194,9 +8128,9 @@ } }, "request": { - "version": "2.85.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.85.0.tgz", - "integrity": "sha512-8H7Ehijd4js+s6wuVPLjwORxD4zeuyjYugprdOXlPSqaApmL/QOy+EB/beICHVCHkGMKNh5rvihb5ov+IDw4mg==", + "version": "2.87.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", + "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", "optional": true, "requires": { "aws-sign2": "~0.7.0", @@ -8207,7 +8141,6 @@ "forever-agent": "~0.6.1", "form-data": "~2.3.1", "har-validator": "~5.0.3", - "hawk": "~6.0.2", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", @@ -8217,7 +8150,6 @@ "performance-now": "^2.1.0", "qs": "~6.5.1", "safe-buffer": "^5.1.1", - "stringstream": "~0.0.5", "tough-cookie": "~2.3.3", "tunnel-agent": "^0.6.0", "uuid": "^3.1.0" @@ -8265,9 +8197,9 @@ } }, "resolve": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.6.0.tgz", - "integrity": "sha512-mw7JQNu5ExIkcw4LPih0owX/TZXjD/ZUF/ZQ/pDnkw3ZKhDcZZw5klmBlj6gVMwjQ3Pz5Jgu7F3d0jcDVuEWdw==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz", + "integrity": "sha512-c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==", "requires": { "path-parse": "^1.0.5" } @@ -8341,9 +8273,9 @@ } }, "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safe-regex": { "version": "1.1.0", @@ -8353,6 +8285,11 @@ "ret": "~0.1.10" } }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", @@ -8473,14 +8410,6 @@ "use": "^3.1.0" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", @@ -8563,15 +8492,6 @@ } } }, - "sntp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", - "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", - "optional": true, - "requires": { - "hoek": "4.x.x" - } - }, "sort-keys": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", @@ -8587,11 +8507,11 @@ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" }, "source-map-resolve": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.1.tgz", - "integrity": "sha512-0KW2wvzfxm8NCTb30z0LMNyPqWCdDGE2viwzUaucqJdkTRXtZiSY3I+2A6nVAjmdOy0I4gU8DwnVVGsk9jvP2A==", + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", "requires": { - "atob": "^2.0.0", + "atob": "^2.1.1", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", @@ -8663,9 +8583,9 @@ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" }, "sshpk": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz", - "integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=", + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", + "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", "optional": true, "requires": { "asn1": "~0.2.3", @@ -8675,6 +8595,7 @@ "ecc-jsbn": "~0.1.1", "getpass": "^0.1.1", "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", "tweetnacl": "~0.14.0" } }, @@ -8714,19 +8635,13 @@ } }, "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "requires": { "safe-buffer": "~5.1.0" } }, - "stringstream": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", - "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==", - "optional": true - }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -8801,9 +8716,9 @@ } }, "supports-color": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz", - "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", "dev": true, "requires": { "has-flag": "^3.0.0" @@ -8944,13 +8859,16 @@ } }, "tar-stream": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", - "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.1.tgz", + "integrity": "sha512-IFLM5wp3QrJODQFPm6/to3LJZrONdBY/otxcvDIQzu217zKye6yVR3hhi9lAjrC2Z+m/j5oDxMPb1qcd8cIvpA==", "requires": { "bl": "^1.0.0", + "buffer-alloc": "^1.1.0", "end-of-stream": "^1.0.0", - "readable-stream": "^2.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.0", "xtend": "^4.0.0" } }, @@ -9006,6 +8924,11 @@ "os-tmpdir": "~1.0.2" } }, + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" + }, "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", @@ -9048,24 +8971,6 @@ "requires": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } } }, "tough-cookie": { @@ -9358,20 +9263,20 @@ "dev": true }, "which": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", - "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "requires": { "isexe": "^2.0.0" } }, "wide-align": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", - "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", "requires": { - "string-width": "^1.0.2" + "string-width": "^1.0.2 || 2" } }, "widest-line": { diff --git a/packages/project/package.json b/packages/project/package.json index 4dd9013fe6d..6e030446534 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -91,8 +91,8 @@ "read-pkg": "^3.0.0", "read-pkg-up": "^3.0.0", "resolve": "^1.5.0", - "@ui5/builder": "SAP/ui5-builder", - "@ui5/logger": "SAP/ui5-logger" + "@ui5/builder": "^0.0.1", + "@ui5/logger": "^0.0.1" }, "devDependencies": { "ava": "^0.25.0", From 2a992483f9c513f6aa2741103b0b1bb2a240d751 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 6 Jun 2018 13:44:29 +0000 Subject: [PATCH 0014/1272] [ui5-project]Release 0.0.1 --- packages/project/CHANGELOG.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 packages/project/CHANGELOG.md diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md new file mode 100644 index 00000000000..5cbcaf47312 --- /dev/null +++ b/packages/project/CHANGELOG.md @@ -0,0 +1,25 @@ +# Changelog +All notable changes to this project will be documented in this file. +This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.0.1...HEAD). + + +## v0.0.1 - 2018-06-06 +### Bug Fixes +- npm t8r: Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) + +### Internal Changes +- Prepare npm release [`0467b6a`](https://github.com/SAP/ui5-project/commit/0467b6ac2e87dadd7319fe02901c3b24a3901663) +- Update .editorconfig [`1644a10`](https://github.com/SAP/ui5-project/commit/1644a105337ff83c1f800b99451881f4d8952b8f) +- Add chglog config + npm release scripts [`574f976`](https://github.com/SAP/ui5-project/commit/574f9761debb0cf527e4dfe9d09a73b7abfecc49) +- Update dependencies [`51ddbc8`](https://github.com/SAP/ui5-project/commit/51ddbc854e1e28c6455cbe98fdf517601e560f71) +- Add missing test module dependencies [`0d1d57a`](https://github.com/SAP/ui5-project/commit/0d1d57a0f4643ea171b134d1639404fc51fdb051) +- npm t8r: Improve handling of missing package.json [`4b32134`](https://github.com/SAP/ui5-project/commit/4b321345139058dc821fb08c4556aff88366ea86) +- Add travis CI badge + package.json cleanup [`7769590`](https://github.com/SAP/ui5-project/commit/776959063ab673a92ebfd4cf4c7ba253aae158a8) +- Fix links to CONTRIBUTING.md file [`734a870`](https://github.com/SAP/ui5-project/commit/734a870d6a68f0370626d5a17906afabf1cd27d1) +- **ESLint:** Activate no-var rule [`6916828`](https://github.com/SAP/ui5-project/commit/6916828560c1765bdd64306c8b1c4950a36f0c8b) +- **ESLint:** Activate no-console [`df406da`](https://github.com/SAP/ui5-project/commit/df406dab0888b16b9c66f4fe5a2d7e026ad9f4f4) +- **Travis:** Add node.js 10 to test matrix [`5f26276`](https://github.com/SAP/ui5-project/commit/5f2627668b7faa554b8c3810899828d3be6fd63f) + + From 4ad86cae0c434301e2fc265329951f2b6e53ab9b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 14 Jun 2018 13:08:47 +0200 Subject: [PATCH 0015/1272] [ui5-project][INTERNAL] README: Pre-Alpha -> Alpha --- packages/project/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/README.md b/packages/project/README.md index ff18e2c0790..dc8151c93e3 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -7,7 +7,7 @@ [![Travis CI Build Status](https://travis-ci.org/SAP/ui5-project.svg?branch=master)](https://travis-ci.org/SAP/ui5-project) [![npm Package Version](https://img.shields.io/npm/v/@ui5/project.svg)](https://www.npmjs.com/package/@ui5/project) -**This is a Pre-Alpha release!** +**This is an alpha release!** **The UI5 Build and Development Tooling described here is not intended for productive use yet. Breaking changes are to be expected.** ## Normalizer From 83bad25c535a5d3953abf5588d4ab7341b27e11e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 21 Jun 2018 13:24:55 +0200 Subject: [PATCH 0016/1272] [ui5-project][INTERNAL] CHANGELOG: Fix GitHub release template --- packages/project/.chglog/RELEASE.tpl.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/project/.chglog/RELEASE.tpl.md b/packages/project/.chglog/RELEASE.tpl.md index 29e28ee10fa..efc482c385d 100755 --- a/packages/project/.chglog/RELEASE.tpl.md +++ b/packages/project/.chglog/RELEASE.tpl.md @@ -24,11 +24,10 @@ {{ if .Tag.Previous }} ### All changes - -`[{{ .Tag.Previous.Name }}...{{ .Tag.Name }}]`` +[`{{ .Tag.Previous.Name }}...{{ .Tag.Name }}`] {{ end }} {{ if .Tag.Previous -}} -[{{ .Tag.Previous.Name }}...{{ .Tag.Name }}]: {{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }} +[`{{ .Tag.Previous.Name }}...{{ .Tag.Name }}`]: {{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }} {{ end -}} {{ end -}} From 4d7fc56ff1175f80114e6b7f7ba4c2c9f71369cd Mon Sep 17 00:00:00 2001 From: Frank Weigel Date: Tue, 26 Jun 2018 09:04:57 +0200 Subject: [PATCH 0017/1272] [ui5-project][FIX] npm translator: Fix endless loop in case of dependency cycles (#15) Fixes https://github.com/SAP/ui5-project/issues/14 . --- packages/project/lib/translators/npm.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index dd494eeda92..bd2b35b1e4d 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -235,6 +235,7 @@ class NpmTranslator { processPendingDeps(tree) { const queue = [tree]; + const visited = new Set(); // Breadth-first search to prefer projects closer to root while (queue.length) { @@ -242,6 +243,10 @@ class NpmTranslator { if (!project.id) { throw new Error("Encountered project with missing id"); } + if (visited.has(project.id)) { + continue; + } + visited.add(project.id); if (this.pendingDeps[project.id]) { for (let i = this.pendingDeps[project.id].parents.length - 1; i >= 0; i--) { From 68274b9e5ce00f3e84af4ec59d779ede21668486 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 25 Jun 2018 19:13:52 +0200 Subject: [PATCH 0018/1272] [ui5-project][INTERNAL] Add coveralls and dm-badges --- packages/project/.travis.yml | 3 + packages/project/README.md | 5 +- packages/project/package-lock.json | 95 ++++++++++++++++-------------- packages/project/package.json | 4 +- 4 files changed, 60 insertions(+), 47 deletions(-) diff --git a/packages/project/.travis.yml b/packages/project/.travis.yml index 5a4ce25c97b..9ac5847bda5 100644 --- a/packages/project/.travis.yml +++ b/packages/project/.travis.yml @@ -3,3 +3,6 @@ language: node_js # don't install any environment node_js: - "8" - "10" + +after_script: +- npm run report-coveralls diff --git a/packages/project/README.md b/packages/project/README.md index dc8151c93e3..e16aa9666b5 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -5,7 +5,10 @@ > Part of the [UI5 Build and Development Tooling](https://github.com/SAP/ui5-tooling) [![Travis CI Build Status](https://travis-ci.org/SAP/ui5-project.svg?branch=master)](https://travis-ci.org/SAP/ui5-project) -[![npm Package Version](https://img.shields.io/npm/v/@ui5/project.svg)](https://www.npmjs.com/package/@ui5/project) +[![npm Package Version](https://badge.fury.io/js/%40ui5%2Fproject.svg)](https://www.npmjs.com/package/@ui5/project) +[![Coverage Status](https://coveralls.io/repos/github/SAP/ui5-project/badge.svg)](https://coveralls.io/github/SAP/ui5-project) +[![Dependency Status](https://david-dm.org/SAP/ui5-project/master.svg)](https://david-dm.org/SAP/ui5-project/master) +[![devDependency Status](https://david-dm.org/SAP/ui5-project/master/dev-status.svg)](https://david-dm.org/SAP/ui5-project/master#info=devDependencies) **This is an alpha release!** **The UI5 Build and Development Tooling described here is not intended for productive use yet. Breaking changes are to be expected.** diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ec87a95db98..d2a29971423 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -474,8 +474,7 @@ "asn1": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", - "optional": true + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" }, "assert-plus": { "version": "1.0.0", @@ -504,8 +503,7 @@ "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "optional": true + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, "atob": { "version": "2.1.1", @@ -744,14 +742,12 @@ "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "optional": true + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", - "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==", - "optional": true + "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==" }, "babel-code-frame": { "version": "6.26.0", @@ -1534,8 +1530,7 @@ "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "optional": true + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, "catharsis": { "version": "0.8.9", @@ -1907,6 +1902,27 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, + "coveralls": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.1.tgz", + "integrity": "sha512-FAzXwiDOYLGDWH+zgoIA+8GbWv50hlx+kpEJyvzLKOdnIBv9uWoVl4DhqGgyUHpiRjAlF8KYZSipWXYtllWH6Q==", + "dev": true, + "requires": { + "js-yaml": "^3.6.1", + "lcov-parse": "^0.0.10", + "log-driver": "^1.2.5", + "minimist": "^1.2.0", + "request": "^2.79.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, "crc": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz", @@ -1989,7 +2005,6 @@ "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "optional": true, "requires": { "assert-plus": "^1.0.0" } @@ -2625,8 +2640,7 @@ "extend": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", - "optional": true + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" }, "extend-shallow": { "version": "3.0.2", @@ -2844,14 +2858,12 @@ "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "optional": true + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" }, "form-data": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", - "optional": true, "requires": { "asynckit": "^0.4.0", "combined-stream": "1.0.6", @@ -3459,7 +3471,6 @@ "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "optional": true, "requires": { "assert-plus": "^1.0.0" } @@ -3551,14 +3562,12 @@ "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "optional": true + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" }, "har-validator": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", - "optional": true, "requires": { "ajv": "^5.1.0", "har-schema": "^2.0.0" @@ -3644,7 +3653,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "optional": true, "requires": { "assert-plus": "^1.0.0", "jsprim": "^1.2.2", @@ -4111,8 +4119,7 @@ "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "optional": true + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" }, "is-url": { "version": "1.2.4", @@ -4150,8 +4157,7 @@ "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "optional": true + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, "js-string-escape": { "version": "1.0.1", @@ -4247,8 +4253,7 @@ "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "optional": true + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" }, "json-schema-traverse": { "version": "0.3.1", @@ -4264,8 +4269,7 @@ "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "optional": true + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, "json5": { "version": "0.5.1", @@ -4277,7 +4281,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "optional": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", @@ -4325,6 +4328,12 @@ "readable-stream": "^2.0.5" } }, + "lcov-parse": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", + "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", + "dev": true + }, "less": { "version": "1.6.3", "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", @@ -4442,6 +4451,12 @@ "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==", "dev": true }, + "log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "dev": true + }, "loose-envify": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", @@ -7490,8 +7505,7 @@ "oauth-sign": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", - "optional": true + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" }, "object-assign": { "version": "4.1.1", @@ -7751,8 +7765,7 @@ "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "optional": true + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "pify": { "version": "3.0.0", @@ -7884,14 +7897,12 @@ "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "optional": true + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" }, "qs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "optional": true + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" }, "random-int": { "version": "1.0.0", @@ -8131,7 +8142,6 @@ "version": "2.87.0", "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", - "optional": true, "requires": { "aws-sign2": "~0.7.0", "aws4": "^1.6.0", @@ -8586,7 +8596,6 @@ "version": "1.14.2", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", - "optional": true, "requires": { "asn1": "~0.2.3", "assert-plus": "^1.0.0", @@ -8977,7 +8986,6 @@ "version": "2.3.4", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", - "optional": true, "requires": { "punycode": "^1.4.1" } @@ -9004,7 +9012,6 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "optional": true, "requires": { "safe-buffer": "^5.0.1" } @@ -9233,8 +9240,7 @@ "uuid": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", - "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==", - "optional": true + "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==" }, "validate-npm-package-license": { "version": "3.0.3", @@ -9249,7 +9255,6 @@ "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "optional": true, "requires": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index 6e030446534..470a19a81ae 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -31,7 +31,8 @@ "preversion": "npm test", "version": "git-chglog --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", "postversion": "git push --follow-tags", - "release-note": "git-chglog -c .chglog/release-config.yml v$npm_package_version" + "release-note": "git-chglog -c .chglog/release-config.yml v$npm_package_version", + "report-coveralls": "nyc report --reporter=text-lcov | coveralls" }, "ava": { "files": [ @@ -96,6 +97,7 @@ }, "devDependencies": { "ava": "^0.25.0", + "coveralls": "^3.0.1", "docdash": "^0.4.0", "eslint": "^4.13.1", "eslint-config-google": "^0.9.1", From 6b5bd1298c161e62f47f09727ed424fb1100d526 Mon Sep 17 00:00:00 2001 From: Frank Weigel Date: Tue, 26 Jun 2018 12:14:00 +0200 Subject: [PATCH 0019/1272] [ui5-project][FIX] Fix some typos in log messages (#17) --- packages/project/lib/translators/npm.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index bd2b35b1e4d..bc84a2f1194 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -22,7 +22,7 @@ class NpmTranslator { const moduleName = data.name; const pkg = data.pkg; - log.verbose("Analyzing %s (%s) (depenency of %s)", moduleName, cwd, parentName || "nothing - root project"); + log.verbose("Analyzing %s (%s) (dependency of %s)", moduleName, cwd, parentName || "nothing - root project"); /* * Inject collection definitions for some known projects @@ -57,7 +57,7 @@ class NpmTranslator { for (let depName in dependencies) { if (dependencies.hasOwnProperty(depName) && ui5Deps.indexOf(depName) === -1) { - log.verbose("Ignoring npm depenency %s. Not defined in UI5-dependency configuration.", depName); + log.verbose("Ignoring npm dependency %s. Not defined in UI5-dependency configuration.", depName); delete dependencies[depName]; } } @@ -201,7 +201,7 @@ class NpmTranslator { this.shimCollection(pkg.name, pkg); if (pkg.collection) { log.verbose( - "Unable to locate module %s via resolve logic but found a collection in parent hierarchy: %s", + "Unable to locate module %s via resolve logic, but found a collection in parent hierarchy: %s", moduleName, pkg.name); const modules = pkg.collection.modules || {}; if (modules[moduleName]) { From 358d37770015bdc15297b202e8225d1d4b551872 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 26 Jun 2018 17:30:28 +0200 Subject: [PATCH 0020/1272] [ui5-project][INTERNAL] Update ui5-builder and ui5-logger dependency --- packages/project/package-lock.json | 24 ++++++++++++------------ packages/project/package.json | 6 +++--- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d2a29971423..a908f52b5ef 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -127,12 +127,12 @@ } }, "@ui5/builder": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.0.1.tgz", - "integrity": "sha512-vw3vZXE/h/ob8tRFksfKJSdNAd4l2cOGqSkmG154aHbo3vcn1skkDVTy2U99xy0W4N7FiiF/BkVgnXIni7oiUQ==", + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.1.0.tgz", + "integrity": "sha512-mELrsG47leCeWV7BXLUTL2eELunHYe38ptKXyQasQKYd1TihE0nuCuS+c99nz4tQ3ivksslIw1xjhk0rtBldOw==", "requires": { - "@ui5/fs": "^0.0.1", - "@ui5/logger": "^0.0.1", + "@ui5/fs": "^0.1.0", + "@ui5/logger": "^0.1.0", "archiver": "^2.1.0", "escope": "^3.6.0", "esprima": "^2.7.2", @@ -148,11 +148,11 @@ } }, "@ui5/fs": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-0.0.1.tgz", - "integrity": "sha512-/AsUkdVmffzf4yj6uiPL766xIBhmrzYRZkQh5L90T+tmMw2buQFHL3ey33xCX8YNM/qhy4zllE8vMv+Y9e1TQw==", + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-0.1.0.tgz", + "integrity": "sha512-S4FK6YjPdVHBpzi1bSnqVCWbH/C6aSR8efZASkAuBl9r84VcRNS+yCuGO+MzD7HRLW9oJWmDFNS/+flaRTGtfQ==", "requires": { - "@ui5/logger": "^0.0.1", + "@ui5/logger": "^0.1.0", "clone": "^2.1.0", "defaults": "^1.0.3", "globby": "^7.1.1", @@ -165,9 +165,9 @@ } }, "@ui5/logger": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.0.1.tgz", - "integrity": "sha512-1/u0jLU6jCLSOi9mrmY91W6A8qJG0bk4MnKdN6uYB8vVIY4jwktgt17pnWc4fBGRXu4CDQdPr5zWDOoglyBotw==", + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.1.0.tgz", + "integrity": "sha512-IlRE/cr9ky45nSw0z5yJSwJGglauego0naCR9BBtSvy2JqYZAdvVRhrBFED05UY/ZmRTScyg2qrsTlokJYYYKw==", "requires": { "npmlog": "^4.1.2" } diff --git a/packages/project/package.json b/packages/project/package.json index 470a19a81ae..66f16e22461 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -86,14 +86,14 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { + "@ui5/builder": "^0.1.0", + "@ui5/logger": "^0.1.0", "graceful-fs": "^4.1.11", "js-yaml": "^3.10.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^3.0.0", - "resolve": "^1.5.0", - "@ui5/builder": "^0.0.1", - "@ui5/logger": "^0.0.1" + "resolve": "^1.5.0" }, "devDependencies": { "ava": "^0.25.0", From 7d60bf9e20d2c3d5df819a66effd4d849f5ddfa4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 26 Jun 2018 15:35:32 +0000 Subject: [PATCH 0021/1272] [ui5-project]Release 0.1.0 --- packages/project/CHANGELOG.md | 16 +++++++++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 5cbcaf47312..29faecf48fa 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,20 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.0.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.1.0...HEAD). + + +## [v0.1.0] - 2018-06-26 +### Bug Fixes +- Fix some typos in log messages ([#17](https://github.com/SAP/ui5-project/issues/17)) [`1f2f2fd`](https://github.com/SAP/ui5-project/commit/1f2f2fd164abaf449cc5e7d94ec792f469710207) +- npm translator: Fix endless loop in case of dependency cycles ([#15](https://github.com/SAP/ui5-project/issues/15)) [`cf31112`](https://github.com/SAP/ui5-project/commit/cf3111288278e8dd36a09b549bd2b254e86af041) + +### Internal Changes +- Update ui5-builder and ui5-logger dependency [`c4aaa81`](https://github.com/SAP/ui5-project/commit/c4aaa81ed813fb96a24a289ceb54bc2537bc70e7) +- Add coveralls and dm-badges [`0fb9132`](https://github.com/SAP/ui5-project/commit/0fb9132ca87e0dd959f1dea4dd3d584f0205baad) +- **CHANGELOG:** Fix GitHub release template [`2ca710b`](https://github.com/SAP/ui5-project/commit/2ca710b04d247e7799266644c1a3099c6621d345) +- **README:** Pre-Alpha -> Alpha [`a988310`](https://github.com/SAP/ui5-project/commit/a988310ae2b810dcff9e8253d32d6474c9ee1da9) + ## v0.0.1 - 2018-06-06 @@ -23,3 +36,4 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - **Travis:** Add node.js 10 to test matrix [`5f26276`](https://github.com/SAP/ui5-project/commit/5f2627668b7faa554b8c3810899828d3be6fd63f) +[v0.1.0]: https://github.com/SAP/ui5-project/compare/v0.0.1...v0.1.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a908f52b5ef..7b81b18bd09 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.0.1", + "version": "0.1.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 66f16e22461..8ea2054d7ab 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.0.1", + "version": "0.1.0", "description": "UI5 Build and Development Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 110f0e23df23c3b615b050aec97d59ca2415b67b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Fri, 6 Jul 2018 10:53:20 +0000 Subject: [PATCH 0022/1272] [ui5-project]Bump eslint from 4.19.1 to 5.0.1 Bumps [eslint](https://github.com/eslint/eslint) from 4.19.1 to 5.0.1. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v4.19.1...v5.0.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 400 +++++++++++++++++++++-------- packages/project/package.json | 2 +- 2 files changed, 299 insertions(+), 103 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7b81b18bd09..edd64537402 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -173,26 +173,18 @@ } }, "acorn": { - "version": "5.6.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.6.2.tgz", - "integrity": "sha512-zUzo1E5dI2Ey8+82egfnttyMlMZ2y0D8xOCO3PNPPlYXpl8NZvF6Qk9L9BEtJs+43FqEmfBViDqc5d1ckRDguw==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.1.tgz", + "integrity": "sha512-d+nbxBUGKg7Arpsvbnlq61mc12ek3EY8EQldM3GPAhWJ1UVxC6TDGbIvUMNU6obBX3i1+ptCIzV4vq0gFPEGVQ==", "dev": true }, "acorn-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", - "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-4.1.1.tgz", + "integrity": "sha512-JY+iV6r+cO21KtntVvFkD+iqjtdpRUpGqKWgfkCdZq1R+kbreEl8EcdcJR4SmiIgsIQT33s6QzheQ9a275Q8xw==", "dev": true, "requires": { - "acorn": "^3.0.4" - }, - "dependencies": { - "acorn": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", - "dev": true - } + "acorn": "^5.0.3" } }, "ajv": { @@ -207,9 +199,9 @@ } }, "ajv-keywords": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", - "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", + "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=", "dev": true }, "amdefine": { @@ -1803,18 +1795,6 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, "concordance": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", @@ -2067,6 +2047,16 @@ } } }, + "define-properties": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", + "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", + "dev": true, + "requires": { + "foreach": "^2.0.5", + "object-keys": "^1.0.8" + } + }, "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", @@ -2264,6 +2254,30 @@ "is-arrayish": "^0.2.1" } }, + "es-abstract": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", + "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", + "dev": true, + "requires": { + "es-to-primitive": "^1.1.1", + "function-bind": "^1.1.1", + "has": "^1.0.1", + "is-callable": "^1.1.3", + "is-regex": "^1.0.4" + } + }, + "es-to-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", + "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", + "dev": true, + "requires": { + "is-callable": "^1.1.1", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.1" + } + }, "es5-ext": { "version": "0.10.45", "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.45.tgz", @@ -2352,57 +2366,82 @@ } }, "eslint": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz", - "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.0.1.tgz", + "integrity": "sha512-D5nG2rErquLUstgUaxJlWB5+gu+U/3VDY0fk/Iuq8y9CUFy/7Y6oF4N2cR1tV8knzQvciIbfqfohd359xTLIKQ==", "dev": true, "requires": { - "ajv": "^5.3.0", - "babel-code-frame": "^6.22.0", + "ajv": "^6.5.0", + "babel-code-frame": "^6.26.0", "chalk": "^2.1.0", - "concat-stream": "^1.6.0", - "cross-spawn": "^5.1.0", + "cross-spawn": "^6.0.5", "debug": "^3.1.0", "doctrine": "^2.1.0", - "eslint-scope": "^3.7.1", + "eslint-scope": "^4.0.0", "eslint-visitor-keys": "^1.0.0", - "espree": "^3.5.4", - "esquery": "^1.0.0", + "espree": "^4.0.0", + "esquery": "^1.0.1", "esutils": "^2.0.2", "file-entry-cache": "^2.0.0", "functional-red-black-tree": "^1.0.1", "glob": "^7.1.2", - "globals": "^11.0.1", + "globals": "^11.5.0", "ignore": "^3.3.3", "imurmurhash": "^0.1.4", - "inquirer": "^3.0.6", - "is-resolvable": "^1.0.0", - "js-yaml": "^3.9.1", + "inquirer": "^5.2.0", + "is-resolvable": "^1.1.0", + "js-yaml": "^3.11.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.3.0", - "lodash": "^4.17.4", - "minimatch": "^3.0.2", + "lodash": "^4.17.5", + "minimatch": "^3.0.4", "mkdirp": "^0.5.1", "natural-compare": "^1.4.0", "optionator": "^0.8.2", "path-is-inside": "^1.0.2", "pluralize": "^7.0.0", "progress": "^2.0.0", - "regexpp": "^1.0.1", + "regexpp": "^1.1.0", "require-uncached": "^1.0.3", - "semver": "^5.3.0", + "semver": "^5.5.0", + "string.prototype.matchall": "^2.0.0", "strip-ansi": "^4.0.0", - "strip-json-comments": "~2.0.1", - "table": "4.0.2", - "text-table": "~0.2.0" + "strip-json-comments": "^2.0.1", + "table": "^4.0.3", + "text-table": "^0.2.0" }, "dependencies": { + "ajv": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz", + "integrity": "sha512-hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.1" + } + }, "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, "debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", @@ -2412,10 +2451,22 @@ "ms": "2.0.0" } }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, "globals": { - "version": "11.5.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.5.0.tgz", - "integrity": "sha512-hYyf+kI8dm3nORsiiXUQigOU62hDLfJ9G01uyGMxhc6BKsircrUhC4uJPQPUSuq2GrTmiiEt7ewxlMdBewfmKQ==", + "version": "11.7.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", + "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, "mkdirp": { @@ -2445,9 +2496,9 @@ "dev": true }, "eslint-scope": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", - "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz", + "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==", "dev": true, "requires": { "esrecurse": "^4.1.0", @@ -2473,13 +2524,13 @@ } }, "espree": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", - "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-4.0.0.tgz", + "integrity": "sha512-kapdTCt1bjmspxStVKX6huolXVV5ZfyZguY1lcfhVVZstce3bqxH9mcLzNn3/mlgW6wQ732+0fuG9v7h0ZQoKg==", "dev": true, "requires": { - "acorn": "^5.5.0", - "acorn-jsx": "^3.0.0" + "acorn": "^5.6.0", + "acorn-jsx": "^4.1.1" } }, "esprima": { @@ -2855,6 +2906,12 @@ "for-in": "^1.0.1" } }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -2908,7 +2965,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -2929,12 +2987,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -2949,17 +3009,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3076,7 +3139,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3088,6 +3152,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3102,6 +3167,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3109,12 +3175,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -3133,6 +3201,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3213,7 +3282,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3225,6 +3295,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3310,7 +3381,8 @@ "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3346,6 +3418,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3365,6 +3438,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3408,15 +3482,23 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, "function-name-support": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", @@ -3573,6 +3655,15 @@ "har-schema": "^2.0.0" } }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", @@ -3594,6 +3685,12 @@ "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", "dev": true }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -3750,22 +3847,21 @@ "dev": true }, "inquirer": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-5.2.0.tgz", + "integrity": "sha512-E9BmnJbAKLPGonz0HeWHtbKf+EeSP93paWO3ZYoUpq/aowXvYGjjCSuashhXPpzbArIjBbji39THkxTz9ZeEUQ==", "dev": true, "requires": { "ansi-escapes": "^3.0.0", "chalk": "^2.0.0", "cli-cursor": "^2.1.0", "cli-width": "^2.0.0", - "external-editor": "^2.0.4", + "external-editor": "^2.1.0", "figures": "^2.0.0", "lodash": "^4.3.0", "mute-stream": "0.0.7", "run-async": "^2.2.0", - "rx-lite": "^4.0.8", - "rx-lite-aggregates": "^4.0.8", + "rxjs": "^5.5.2", "string-width": "^2.1.0", "strip-ansi": "^4.0.0", "through": "^2.3.6" @@ -3864,6 +3960,12 @@ "builtin-modules": "^1.0.0" } }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, "is-ci": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz", @@ -3891,6 +3993,12 @@ } } }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, "is-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", @@ -4098,6 +4206,15 @@ "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", "dev": true }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, "is-resolvable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", @@ -4116,6 +4233,12 @@ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true }, + "is-symbol": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", + "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", + "dev": true + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -4828,6 +4951,12 @@ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" }, + "nice-try": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.4.tgz", + "integrity": "sha512-2NpiFHqC87y/zFke0fC0spBXL3bBsoh/p5H1EFhshxjCR5+0g2d6BiXbUFz9v1sAcxsk2htp2eQnNIci2dIYcA==", + "dev": true + }, "normalize-package-data": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", @@ -4911,6 +5040,7 @@ "version": "0.1.4", "bundled": true, "dev": true, + "optional": true, "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -6093,7 +6223,8 @@ "longest": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "loose-envify": { "version": "1.3.1", @@ -7540,6 +7671,12 @@ } } }, + "object-keys": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", + "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", + "dev": true + }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", @@ -8044,6 +8181,15 @@ "safe-regex": "^1.1.0" } }, + "regexp.prototype.flags": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz", + "integrity": "sha512-ztaw4M1VqgMwl9HlPpOuiYgItcHlunW0He2fE6eNfT6E/CF2FtYi9ofOYe4mKntstYk0Fyh/rDRBdS3AnxjlrA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2" + } + }, "regexpp": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", @@ -8267,19 +8413,21 @@ "is-promise": "^2.1.0" } }, - "rx-lite": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", - "dev": true - }, - "rx-lite-aggregates": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "rxjs": { + "version": "5.5.11", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.11.tgz", + "integrity": "sha512-3bjO7UwWfA2CV7lmwYMBzj4fQ6Cq+ftHc2MvUe+WMS7wcdJ1LosDWmdjPQanYp2dBRj572p7PeU81JUxHKOcBA==", "dev": true, "requires": { - "rx-lite": "*" + "symbol-observable": "1.0.1" + }, + "dependencies": { + "symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "dev": true + } } }, "safe-buffer": { @@ -8643,6 +8791,19 @@ "strip-ansi": "^3.0.0" } }, + "string.prototype.matchall": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-2.0.0.tgz", + "integrity": "sha512-WoZ+B2ypng1dp4iFLF2kmZlwwlE19gmjgKuhL1FJfDgCREWb3ye3SDVHSzLH6bxfnvYmkCxbzkmWcQZHA4P//Q==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.10.0", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "regexp.prototype.flags": "^1.2.0" + } + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -8748,31 +8909,55 @@ "dev": true }, "table": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", - "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/table/-/table-4.0.3.tgz", + "integrity": "sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg==", "dev": true, "requires": { - "ajv": "^5.2.3", - "ajv-keywords": "^2.1.0", + "ajv": "^6.0.1", + "ajv-keywords": "^3.0.0", "chalk": "^2.1.0", "lodash": "^4.17.4", "slice-ansi": "1.0.0", "string-width": "^2.1.1" }, "dependencies": { + "ajv": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz", + "integrity": "sha512-hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.1" + } + }, "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -9031,12 +9216,6 @@ "prelude-ls": "~1.1.2" } }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, "uglify-es": { "version": "3.3.9", "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", @@ -9210,6 +9389,23 @@ "xdg-basedir": "^3.0.0" } }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + }, + "dependencies": { + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + } + } + }, "urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 8ea2054d7ab..0e794065348 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -99,7 +99,7 @@ "ava": "^0.25.0", "coveralls": "^3.0.1", "docdash": "^0.4.0", - "eslint": "^4.13.1", + "eslint": "^5.0.1", "eslint-config-google": "^0.9.1", "jsdoc": "^3.5.5", "nyc": "^11.8.0", From c5ef10a05640bc9242b612837c3e8261687cdd4a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Sun, 8 Jul 2018 20:42:31 +0000 Subject: [PATCH 0023/1272] [ui5-project]Bump nyc from 11.9.0 to 12.0.2 Bumps [nyc](https://github.com/istanbuljs/nyc) from 11.9.0 to 12.0.2. - [Release notes](https://github.com/istanbuljs/nyc/releases) - [Changelog](https://github.com/istanbuljs/nyc/blob/master/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/nyc/compare/v11.9.0...v12.0.2) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 846 ++++++++--------------------- packages/project/package.json | 2 +- 2 files changed, 217 insertions(+), 631 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index edd64537402..71317bb8330 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -71,6 +71,148 @@ "slide": "^1.1.5" } }, + "@babel/code-frame": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-beta.51.tgz", + "integrity": "sha1-vXHZsZKvl435FYKdOdQJRFZDmgw=", + "dev": true, + "requires": { + "@babel/highlight": "7.0.0-beta.51" + } + }, + "@babel/generator": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.0.0-beta.51.tgz", + "integrity": "sha1-bHV1/952HQdIXgS67cA5LG2eMPY=", + "dev": true, + "requires": { + "@babel/types": "7.0.0-beta.51", + "jsesc": "^2.5.1", + "lodash": "^4.17.5", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", + "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.51.tgz", + "integrity": "sha1-IbSHSiJ8+Z7K/MMKkDAtpaJkBWE=", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "7.0.0-beta.51", + "@babel/template": "7.0.0-beta.51", + "@babel/types": "7.0.0-beta.51" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.51.tgz", + "integrity": "sha1-MoGy0EWvlcFyzpGyCCXYXqRnZBE=", + "dev": true, + "requires": { + "@babel/types": "7.0.0-beta.51" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.51.tgz", + "integrity": "sha1-imw/ZsTSZTUvwHdIT59ugKUauXg=", + "dev": true, + "requires": { + "@babel/types": "7.0.0-beta.51" + } + }, + "@babel/highlight": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-beta.51.tgz", + "integrity": "sha1-6IRK4loVlcz9QriWI7Q3bKBtIl0=", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^3.0.0" + } + }, + "@babel/parser": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.0.0-beta.51.tgz", + "integrity": "sha1-J87C30Cd9gr1gnDtj2qlVAnqhvY=", + "dev": true + }, + "@babel/template": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0-beta.51.tgz", + "integrity": "sha1-lgKkCuvPNXrpZ34lMu9fyBD1+/8=", + "dev": true, + "requires": { + "@babel/code-frame": "7.0.0-beta.51", + "@babel/parser": "7.0.0-beta.51", + "@babel/types": "7.0.0-beta.51", + "lodash": "^4.17.5" + } + }, + "@babel/traverse": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.0.0-beta.51.tgz", + "integrity": "sha1-mB2vLOw0emIx06odnhgDsDqqpKg=", + "dev": true, + "requires": { + "@babel/code-frame": "7.0.0-beta.51", + "@babel/generator": "7.0.0-beta.51", + "@babel/helper-function-name": "7.0.0-beta.51", + "@babel/helper-split-export-declaration": "7.0.0-beta.51", + "@babel/parser": "7.0.0-beta.51", + "@babel/types": "7.0.0-beta.51", + "debug": "^3.1.0", + "globals": "^11.1.0", + "invariant": "^2.2.0", + "lodash": "^4.17.5" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "globals": { + "version": "11.7.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", + "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.0.0-beta.51", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0-beta.51.tgz", + "integrity": "sha1-2AK3tUO1g2x3iqaReXq/APPZfqk=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.5", + "to-fast-properties": "^2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + } + } + }, "@concordance/react": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", @@ -4282,6 +4424,27 @@ "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, + "istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-2.3.1.tgz", + "integrity": "sha512-h9Vg3nfbxrF0PK0kZiNiMAyL8zXaLiBP/BXniaKSwVvAi1TaumYV2b0wPdmy1CRX3irYbYD1p4Wjbv4uyECiiQ==", + "dev": true, + "requires": { + "@babel/generator": "7.0.0-beta.51", + "@babel/parser": "7.0.0-beta.51", + "@babel/template": "7.0.0-beta.51", + "@babel/traverse": "7.0.0-beta.51", + "@babel/types": "7.0.0-beta.51", + "istanbul-lib-coverage": "^2.0.1", + "semver": "^5.5.0" + } + }, "js-string-escape": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", @@ -5002,9 +5165,9 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "11.9.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-11.9.0.tgz", - "integrity": "sha512-w8OdJAhXL5izerzZMdqzYKMj/pgHJyY3qEPYBjLLxrhcVoHEY9pU5ENIiZyCgG9OR7x3VcUMoD40o6PtVpfR4g==", + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-12.0.2.tgz", + "integrity": "sha1-ikpO1pCWbBHsWH/4fuoMEsl0upk=", "dev": true, "requires": { "archy": "^1.0.0", @@ -5017,12 +5180,12 @@ "find-up": "^2.1.0", "foreground-child": "^1.5.3", "glob": "^7.0.6", - "istanbul-lib-coverage": "^1.1.2", + "istanbul-lib-coverage": "^1.2.0", "istanbul-lib-hook": "^1.1.0", - "istanbul-lib-instrument": "^1.10.0", + "istanbul-lib-instrument": "^2.1.0", "istanbul-lib-report": "^1.1.3", - "istanbul-lib-source-maps": "^1.2.3", - "istanbul-reports": "^1.4.0", + "istanbul-lib-source-maps": "^1.2.5", + "istanbul-reports": "^1.4.1", "md5-hex": "^1.2.0", "merge-source-map": "^1.1.0", "micromatch": "^3.1.10", @@ -5053,12 +5216,7 @@ "dev": true }, "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", + "version": "3.0.0", "bundled": true, "dev": true }, @@ -5115,92 +5273,6 @@ "bundled": true, "dev": true }, - "babel-code-frame": { - "version": "6.26.0", - "bundled": true, - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - } - }, - "babel-generator": { - "version": "6.26.1", - "bundled": true, - "dev": true, - "requires": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" - } - }, - "babel-messages": { - "version": "6.23.0", - "bundled": true, - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-runtime": { - "version": "6.26.0", - "bundled": true, - "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "babel-template": { - "version": "6.26.0", - "bundled": true, - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "bundled": true, - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - } - }, - "babel-types": { - "version": "6.26.0", - "bundled": true, - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "babylon": { - "version": "6.18.0", - "bundled": true, - "dev": true - }, "balanced-match": { "version": "1.0.0", "bundled": true, @@ -5254,11 +5326,6 @@ "kind-of": "^6.0.2" } }, - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true - }, "kind-of": { "version": "6.0.2", "bundled": true, @@ -5321,13 +5388,6 @@ "to-object-path": "^0.3.0", "union-value": "^1.0.0", "unset-value": "^1.0.0" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true - } } }, "caching-transform": { @@ -5356,18 +5416,6 @@ "lazy-cache": "^1.0.3" } }, - "chalk": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, "class-utils": { "version": "0.3.6", "bundled": true, @@ -5386,11 +5434,6 @@ "requires": { "is-descriptor": "^0.1.0" } - }, - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true } } }, @@ -5452,11 +5495,6 @@ "bundled": true, "dev": true }, - "core-js": { - "version": "2.5.6", - "bundled": true, - "dev": true - }, "cross-spawn": { "version": "4.0.2", "bundled": true, @@ -5467,7 +5505,7 @@ } }, "debug": { - "version": "2.6.9", + "version": "3.1.0", "bundled": true, "dev": true, "requires": { @@ -5532,11 +5570,6 @@ "kind-of": "^6.0.2" } }, - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true - }, "kind-of": { "version": "6.0.2", "bundled": true, @@ -5544,14 +5577,6 @@ } } }, - "detect-indent": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, "error-ex": { "version": "1.3.1", "bundled": true, @@ -5560,16 +5585,6 @@ "is-arrayish": "^0.2.1" } }, - "escape-string-regexp": { - "version": "1.0.5", - "bundled": true, - "dev": true - }, - "esutils": { - "version": "2.0.2", - "bundled": true, - "dev": true - }, "execa": { "version": "0.7.0", "bundled": true, @@ -5610,6 +5625,14 @@ "to-regex": "^3.0.1" }, "dependencies": { + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "bundled": true, @@ -5805,11 +5828,6 @@ "path-is-absolute": "^1.0.0" } }, - "globals": { - "version": "9.18.0", - "bundled": true, - "dev": true - }, "graceful-fs": { "version": "4.1.11", "bundled": true, @@ -5836,19 +5854,6 @@ } } }, - "has-ansi": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, "has-value": { "version": "1.0.0", "bundled": true, @@ -5857,13 +5862,6 @@ "get-value": "^2.0.6", "has-values": "^1.0.0", "isobject": "^3.0.0" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true - } } }, "has-values": { @@ -5875,24 +5873,6 @@ "kind-of": "^4.0.0" }, "dependencies": { - "is-number": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "kind-of": { "version": "4.0.0", "bundled": true, @@ -5927,14 +5907,6 @@ "bundled": true, "dev": true }, - "invariant": { - "version": "2.2.4", - "bundled": true, - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, "invert-kv": { "version": "1.0.0", "bundled": true, @@ -5996,14 +5968,6 @@ "bundled": true, "dev": true }, - "is-finite": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, "is-fullwidth-code-point": { "version": "2.0.0", "bundled": true, @@ -6038,13 +6002,6 @@ "dev": true, "requires": { "isobject": "^3.0.1" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true - } } }, "is-stream": { @@ -6090,20 +6047,6 @@ "append-transform": "^0.4.0" } }, - "istanbul-lib-instrument": { - "version": "1.10.1", - "bundled": true, - "dev": true, - "requires": { - "babel-generator": "^6.18.0", - "babel-template": "^6.16.0", - "babel-traverse": "^6.18.0", - "babel-types": "^6.18.0", - "babylon": "^6.18.0", - "istanbul-lib-coverage": "^1.2.0", - "semver": "^5.3.0" - } - }, "istanbul-lib-report": { "version": "1.1.3", "bundled": true, @@ -6115,8 +6058,13 @@ "supports-color": "^3.1.2" }, "dependencies": { - "supports-color": { - "version": "3.2.3", + "has-flag": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "supports-color": { + "version": "3.2.3", "bundled": true, "dev": true, "requires": { @@ -6126,45 +6074,25 @@ } }, "istanbul-lib-source-maps": { - "version": "1.2.3", + "version": "1.2.5", "bundled": true, "dev": true, "requires": { "debug": "^3.1.0", - "istanbul-lib-coverage": "^1.1.2", + "istanbul-lib-coverage": "^1.2.0", "mkdirp": "^0.5.1", "rimraf": "^2.6.1", "source-map": "^0.5.3" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "ms": "2.0.0" - } - } } }, "istanbul-reports": { - "version": "1.4.0", + "version": "1.4.1", "bundled": true, "dev": true, "requires": { "handlebars": "^4.0.3" } }, - "js-tokens": { - "version": "3.0.2", - "bundled": true, - "dev": true - }, - "jsesc": { - "version": "1.3.0", - "bundled": true, - "dev": true - }, "kind-of": { "version": "3.2.2", "bundled": true, @@ -6215,25 +6143,12 @@ } } }, - "lodash": { - "version": "4.17.10", - "bundled": true, - "dev": true - }, "longest": { "version": "1.0.1", "bundled": true, "dev": true, "optional": true }, - "loose-envify": { - "version": "1.3.1", - "bundled": true, - "dev": true, - "requires": { - "js-tokens": "^3.0.0" - } - }, "lru-cache": { "version": "4.1.3", "bundled": true, @@ -6388,16 +6303,6 @@ "to-regex": "^3.0.1" }, "dependencies": { - "arr-diff": { - "version": "4.0.0", - "bundled": true, - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "bundled": true, - "dev": true - }, "kind-of": { "version": "6.0.2", "bundled": true, @@ -6460,13 +6365,6 @@ "dev": true, "requires": { "isobject": "^3.0.0" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true - } } }, "object.pick": { @@ -6475,13 +6373,6 @@ "dev": true, "requires": { "isobject": "^3.0.1" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true - } } }, "once": { @@ -6665,11 +6556,6 @@ } } }, - "regenerator-runtime": { - "version": "0.11.1", - "bundled": true, - "dev": true - }, "regex-not": { "version": "1.0.2", "bundled": true, @@ -6689,14 +6575,6 @@ "bundled": true, "dev": true }, - "repeating": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, "require-directory": { "version": "2.1.1", "bundled": true, @@ -6816,6 +6694,14 @@ "use": "^3.1.0" }, "dependencies": { + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "bundled": true, @@ -6878,11 +6764,6 @@ "kind-of": "^6.0.2" } }, - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true - }, "kind-of": { "version": "6.0.2", "bundled": true, @@ -6904,11 +6785,11 @@ "dev": true }, "source-map-resolve": { - "version": "0.5.1", + "version": "0.5.2", "bundled": true, "dev": true, "requires": { - "atob": "^2.0.0", + "atob": "^2.1.1", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", @@ -6995,29 +6876,14 @@ "requires": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } } }, "strip-ansi": { - "version": "3.0.1", + "version": "4.0.0", "bundled": true, "dev": true, "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "^3.0.0" } }, "strip-bom": { @@ -7033,11 +6899,6 @@ "bundled": true, "dev": true }, - "supports-color": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, "test-exclude": { "version": "4.2.1", "bundled": true, @@ -7048,263 +6909,8 @@ "object-assign": "^4.1.0", "read-pkg-up": "^1.0.1", "require-main-filename": "^1.0.1" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "bundled": true, - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "bundled": true, - "dev": true - }, - "braces": { - "version": "2.3.2", - "bundled": true, - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-brackets": { - "version": "2.1.4", - "bundled": true, - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "bundled": true, - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "bundled": true, - "dev": true - } - } - }, - "extglob": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-number": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "bundled": true, - "dev": true - }, - "micromatch": { - "version": "3.1.10", - "bundled": true, - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - } } }, - "to-fast-properties": { - "version": "1.0.3", - "bundled": true, - "dev": true - }, "to-object-path": { "version": "0.3.0", "bundled": true, @@ -7331,23 +6937,8 @@ "requires": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - } } }, - "trim-right": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, "uglify-js": { "version": "2.8.29", "bundled": true, @@ -7444,11 +7035,6 @@ "version": "0.1.4", "bundled": true, "dev": true - }, - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true } } }, @@ -7482,7 +7068,7 @@ } }, "which": { - "version": "1.3.0", + "version": "1.3.1", "bundled": true, "dev": true, "requires": { @@ -7514,6 +7100,11 @@ "strip-ansi": "^3.0.1" }, "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, @@ -7531,6 +7122,14 @@ "is-fullwidth-code-point": "^1.0.0", "strip-ansi": "^3.0.0" } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } } } }, @@ -7578,11 +7177,6 @@ "yargs-parser": "^9.0.2" }, "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, "camelcase": { "version": "4.1.0", "bundled": true, @@ -7598,14 +7192,6 @@ "wrap-ansi": "^2.0.0" } }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, "yargs-parser": { "version": "9.0.2", "bundled": true, diff --git a/packages/project/package.json b/packages/project/package.json index 0e794065348..718f5185119 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "eslint": "^5.0.1", "eslint-config-google": "^0.9.1", "jsdoc": "^3.5.5", - "nyc": "^11.8.0", + "nyc": "^12.0.2", "tap-nyan": "^1.1.0" } } From 8338d3112f2053ba12b700b368201827330f91f4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Sun, 8 Jul 2018 20:53:33 +0000 Subject: [PATCH 0024/1272] [ui5-project]Bump @ui5/builder from 0.1.0 to 0.1.1 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 0.1.0 to 0.1.1. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v0.1.0...v0.1.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 35 +++++++++--------------------- 1 file changed, 10 insertions(+), 25 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 71317bb8330..8c74552da83 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -269,9 +269,9 @@ } }, "@ui5/builder": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.1.0.tgz", - "integrity": "sha512-mELrsG47leCeWV7BXLUTL2eELunHYe38ptKXyQasQKYd1TihE0nuCuS+c99nz4tQ3ivksslIw1xjhk0rtBldOw==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.1.1.tgz", + "integrity": "sha512-U4y3mHHZPFeLDsYq9+mCLZqqk6bJIVl4PFdX3SPfCBkq06yntlHyNC8smKaf7uvCSSG1F2jHzZJFxxVk4PuScA==", "requires": { "@ui5/fs": "^0.1.0", "@ui5/logger": "^0.1.0", @@ -285,6 +285,7 @@ "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", + "semver": "^5.5.0", "uglify-es": "^3.2.2", "xml2js": "^0.4.17" } @@ -4271,21 +4272,6 @@ "symbol-observable": "^1.1.0" } }, - "is-odd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-2.0.0.tgz", - "integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==", - "requires": { - "is-number": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==" - } - } - }, "is-path-cwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", @@ -4644,9 +4630,9 @@ } }, "less-openui5": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.5.3.tgz", - "integrity": "sha512-e6k/ZXS2ZIDm+5/mp5bkm8Nnt/fpMAzbe1JG9sw3ax54MKq57597nHA3yBGE+LjMe64OtEjXO/kI25Kyi6HIRw==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.5.4.tgz", + "integrity": "sha512-fpddIPs7extsToLZR461oR69jCra8cc1BW9feJoHkAOdNbWvKhQL/y83I7BNAFzjlt9lG/OSYnUoJx5hTcZbnA==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", @@ -5085,16 +5071,15 @@ "optional": true }, "nanomatch": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.9.tgz", - "integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==", + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "fragment-cache": "^0.2.1", - "is-odd": "^2.0.0", "is-windows": "^1.0.2", "kind-of": "^6.0.2", "object.pick": "^1.3.0", From cd9fbe3f605cd7a968ddc7e0f178e6d85cc2bb98 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Sun, 8 Jul 2018 21:12:08 +0000 Subject: [PATCH 0025/1272] [ui5-project]Bump coveralls from 3.0.1 to 3.0.2 Bumps [coveralls](https://github.com/nickmerwin/node-coveralls) from 3.0.1 to 3.0.2. - [Release notes](https://github.com/nickmerwin/node-coveralls/releases) - [Commits](https://github.com/nickmerwin/node-coveralls/compare/3.0.1...3.0.2) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8c74552da83..7ded3090500 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2026,16 +2026,17 @@ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "coveralls": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.1.tgz", - "integrity": "sha512-FAzXwiDOYLGDWH+zgoIA+8GbWv50hlx+kpEJyvzLKOdnIBv9uWoVl4DhqGgyUHpiRjAlF8KYZSipWXYtllWH6Q==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.2.tgz", + "integrity": "sha512-Tv0LKe/MkBOilH2v7WBiTBdudg2ChfGbdXafc/s330djpF3zKOmuehTeRwjXWc7pzfj9FrDUTA7tEx6Div8NFw==", "dev": true, "requires": { - "js-yaml": "^3.6.1", + "growl": "~> 1.10.0", + "js-yaml": "^3.11.0", "lcov-parse": "^0.0.10", - "log-driver": "^1.2.5", + "log-driver": "^1.2.7", "minimist": "^1.2.0", - "request": "^2.79.0" + "request": "^2.85.0" }, "dependencies": { "minimist": { @@ -3784,6 +3785,12 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", From d526c1062939d86684c7b616e09b48d60a3c19e6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 9 Jul 2018 04:29:51 +0000 Subject: [PATCH 0026/1272] [ui5-project]Bump read-pkg-up from 3.0.0 to 4.0.0 Bumps [read-pkg-up](https://github.com/sindresorhus/read-pkg-up) from 3.0.0 to 4.0.0. - [Release notes](https://github.com/sindresorhus/read-pkg-up/releases) - [Commits](https://github.com/sindresorhus/read-pkg-up/compare/v3.0.0...v4.0.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 55 +++++++++++++++++++++++++++--- packages/project/package.json | 2 +- 2 files changed, 51 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7ded3090500..364450482e1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -3014,6 +3014,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, "requires": { "locate-path": "^2.0.0" } @@ -4672,6 +4673,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, "requires": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" @@ -7369,6 +7371,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", + "dev": true, "requires": { "p-try": "^1.0.0" } @@ -7377,6 +7380,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, "requires": { "p-limit": "^1.1.0" } @@ -7384,7 +7388,8 @@ "p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true }, "package-hash": { "version": "2.0.0", @@ -7674,12 +7679,52 @@ } }, "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", "requires": { - "find-up": "^2.0.0", + "find-up": "^3.0.0", "read-pkg": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==" + } } }, "readable-stream": { diff --git a/packages/project/package.json b/packages/project/package.json index 718f5185119..c5a37ae0cd3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "js-yaml": "^3.10.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", - "read-pkg-up": "^3.0.0", + "read-pkg-up": "^4.0.0", "resolve": "^1.5.0" }, "devDependencies": { From de070505c602a139cf2ffb31ba289b28f8abf006 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 9 Jul 2018 08:33:44 +0000 Subject: [PATCH 0027/1272] [ui5-project]Bump resolve from 1.7.1 to 1.8.1 Bumps [resolve](https://github.com/browserify/resolve) from 1.7.1 to 1.8.1. - [Release notes](https://github.com/browserify/resolve/releases) - [Commits](https://github.com/browserify/resolve/compare/v1.7.1...v1.8.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 364450482e1..720126dd8f4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -7976,9 +7976,9 @@ } }, "resolve": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz", - "integrity": "sha512-c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", "requires": { "path-parse": "^1.0.5" } From 860d99ae25f633c49d73e8ef3450657cee595736 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 10 Jul 2018 17:46:35 +0200 Subject: [PATCH 0028/1272] [ui5-project][INTERNAL] Update min Node.js version to >=8.5 To allow usage of fs.copyFile() API --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index c5a37ae0cd3..acac5986f5c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -14,7 +14,7 @@ ], "main": "index.js", "engines": { - "node": ">= 8.3", + "node": ">= 8.5", "npm": ">= 5" }, "scripts": { From 4c011895eb6f82f1e70d29a01969829d5b077642 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 11 Jul 2018 11:32:00 +0200 Subject: [PATCH 0029/1272] [ui5-project][INTERNAL] package.json: Define files to publish - index.js and lib/ content is required runtime code. - CONTRIBUTING.md should guide people on where to find the source/ report issues. - jsdoc.json is required to generate cross-repo API doc for releases (currently done in SAP/ui5-tooling) --- packages/project/package.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/project/package.json b/packages/project/package.json index acac5986f5c..ffd00b91421 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -34,6 +34,12 @@ "release-note": "git-chglog -c .chglog/release-config.yml v$npm_package_version", "report-coveralls": "nyc report --reporter=text-lcov | coveralls" }, + "files": [ + "index.js", + "CONTRIBUTING.md", + "jsdoc.json", + "lib/**" + ], "ava": { "files": [ "test/lib/**/*.js" From 19422c54d06fd753c00d791825a674f7b18d55ff Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 11 Jul 2018 16:50:03 +0000 Subject: [PATCH 0030/1272] [ui5-project]Bump @ui5/logger from 0.1.0 to 0.2.0 Bumps [@ui5/logger](https://github.com/SAP/ui5-logger) from 0.1.0 to 0.2.0. - [Release notes](https://github.com/SAP/ui5-logger/releases) - [Changelog](https://github.com/SAP/ui5-logger/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-logger/compare/v0.1.0...v0.2.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 26 +++++++++++++++++++++++--- packages/project/package.json | 2 +- 2 files changed, 24 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 720126dd8f4..62d48378e8f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -288,6 +288,16 @@ "semver": "^5.5.0", "uglify-es": "^3.2.2", "xml2js": "^0.4.17" + }, + "dependencies": { + "@ui5/logger": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.1.0.tgz", + "integrity": "sha512-IlRE/cr9ky45nSw0z5yJSwJGglauego0naCR9BBtSvy2JqYZAdvVRhrBFED05UY/ZmRTScyg2qrsTlokJYYYKw==", + "requires": { + "npmlog": "^4.1.2" + } + } } }, "@ui5/fs": { @@ -305,12 +315,22 @@ "minimatch": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^1.0.0" + }, + "dependencies": { + "@ui5/logger": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.1.0.tgz", + "integrity": "sha512-IlRE/cr9ky45nSw0z5yJSwJGglauego0naCR9BBtSvy2JqYZAdvVRhrBFED05UY/ZmRTScyg2qrsTlokJYYYKw==", + "requires": { + "npmlog": "^4.1.2" + } + } } }, "@ui5/logger": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.1.0.tgz", - "integrity": "sha512-IlRE/cr9ky45nSw0z5yJSwJGglauego0naCR9BBtSvy2JqYZAdvVRhrBFED05UY/ZmRTScyg2qrsTlokJYYYKw==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.2.0.tgz", + "integrity": "sha512-LCH8ytK3+eYjnBM2QaRLQjb7iKUGgqsHOgPKHf2ps0UVIZ9moRyTMAaZTizgktiIfSGDbvpswDV7MrKyUH5QBQ==", "requires": { "npmlog": "^4.1.2" } diff --git a/packages/project/package.json b/packages/project/package.json index ffd00b91421..bf4297855c1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ }, "dependencies": { "@ui5/builder": "^0.1.0", - "@ui5/logger": "^0.1.0", + "@ui5/logger": "^0.2.0", "graceful-fs": "^4.1.11", "js-yaml": "^3.10.0", "pretty-hrtime": "^1.0.3", From 8a81e4e192eee491f944a3b1bfccd5d68fba82ae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 11 Jul 2018 17:12:00 +0000 Subject: [PATCH 0031/1272] [ui5-project]Bump @ui5/builder from 0.1.1 to 0.2.0 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 0.1.1 to 0.2.0. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v0.1.1...v0.2.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 40 ++++++++---------------------- packages/project/package.json | 2 +- 2 files changed, 11 insertions(+), 31 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 62d48378e8f..56cd8a5b284 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -269,43 +269,33 @@ } }, "@ui5/builder": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.1.1.tgz", - "integrity": "sha512-U4y3mHHZPFeLDsYq9+mCLZqqk6bJIVl4PFdX3SPfCBkq06yntlHyNC8smKaf7uvCSSG1F2jHzZJFxxVk4PuScA==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.0.tgz", + "integrity": "sha512-Z7fNTCCgl+GEkMUxUjVpbG/sKVGR+O2sC6OUYB6l7isuzKi4QIdIkbEgmItsJfMS+Dwv2XdTB/3Cmeka++Gl1Q==", "requires": { - "@ui5/fs": "^0.1.0", - "@ui5/logger": "^0.1.0", + "@ui5/fs": "^0.2.0", + "@ui5/logger": "^0.2.0", "archiver": "^2.1.0", "escope": "^3.6.0", "esprima": "^2.7.2", "estraverse": "^4.2.0", "globby": "^7.1.1", "graceful-fs": "^4.1.11", - "less-openui5": "^0.5.3", + "less-openui5": "^0.5.4", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "semver": "^5.5.0", "uglify-es": "^3.2.2", "xml2js": "^0.4.17" - }, - "dependencies": { - "@ui5/logger": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.1.0.tgz", - "integrity": "sha512-IlRE/cr9ky45nSw0z5yJSwJGglauego0naCR9BBtSvy2JqYZAdvVRhrBFED05UY/ZmRTScyg2qrsTlokJYYYKw==", - "requires": { - "npmlog": "^4.1.2" - } - } } }, "@ui5/fs": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-0.1.0.tgz", - "integrity": "sha512-S4FK6YjPdVHBpzi1bSnqVCWbH/C6aSR8efZASkAuBl9r84VcRNS+yCuGO+MzD7HRLW9oJWmDFNS/+flaRTGtfQ==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-0.2.0.tgz", + "integrity": "sha512-2ZdvtSdTyPwZRDOgR5x8gWYTitZq7bYyGlIvJYzSdYCrSq21Q36S65DgW8lfwHxs0AXFXoZLRBWgDh3DRswlsA==", "requires": { - "@ui5/logger": "^0.1.0", + "@ui5/logger": "^0.2.0", "clone": "^2.1.0", "defaults": "^1.0.3", "globby": "^7.1.1", @@ -315,16 +305,6 @@ "minimatch": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^1.0.0" - }, - "dependencies": { - "@ui5/logger": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.1.0.tgz", - "integrity": "sha512-IlRE/cr9ky45nSw0z5yJSwJGglauego0naCR9BBtSvy2JqYZAdvVRhrBFED05UY/ZmRTScyg2qrsTlokJYYYKw==", - "requires": { - "npmlog": "^4.1.2" - } - } } }, "@ui5/logger": { diff --git a/packages/project/package.json b/packages/project/package.json index bf4297855c1..4b468d02294 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^0.1.0", + "@ui5/builder": "^0.2.0", "@ui5/logger": "^0.2.0", "graceful-fs": "^4.1.11", "js-yaml": "^3.10.0", From ffdf66917d04debc10e9faaad854895386eea8ce Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 11 Jul 2018 17:23:52 +0000 Subject: [PATCH 0032/1272] [ui5-project]Release 0.2.0 --- packages/project/CHANGELOG.md | 10 +++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 29faecf48fa..5a2c0dc40b1 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,14 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.1.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.0...HEAD). + + +## [v0.2.0] - 2018-07-11 +### Internal Changes +- package.json: Define files to publish [`01d543c`](https://github.com/SAP/ui5-project/commit/01d543c682f4a0f6fbf15fab0a73b91a5424acee) +- Update min Node.js version to >=8.5 [`fc96d87`](https://github.com/SAP/ui5-project/commit/fc96d874c08b54f887cf375eb5028b298c96067f) + ## [v0.1.0] - 2018-06-26 @@ -36,4 +43,5 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - **Travis:** Add node.js 10 to test matrix [`5f26276`](https://github.com/SAP/ui5-project/commit/5f2627668b7faa554b8c3810899828d3be6fd63f) +[v0.2.0]: https://github.com/SAP/ui5-project/compare/v0.1.0...v0.2.0 [v0.1.0]: https://github.com/SAP/ui5-project/compare/v0.0.1...v0.1.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 56cd8a5b284..0032ba4d9d0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.1.0", + "version": "0.2.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 4b468d02294..c84c86a83dd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.1.0", + "version": "0.2.0", "description": "UI5 Build and Development Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 72726309dfddb7d99a3f0c8952af3f1deac38240 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 11 Jul 2018 19:29:18 +0200 Subject: [PATCH 0033/1272] [ui5-project][INTERNAL] CHANGELOG: Fix scope detection in commit messages Scope may contain special characters --- packages/project/.chglog/config.yml | 2 +- packages/project/.chglog/release-config.yml | 2 +- packages/project/CHANGELOG.md | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/.chglog/config.yml b/packages/project/.chglog/config.yml index f8e13fd2f03..b25af0db74d 100755 --- a/packages/project/.chglog/config.yml +++ b/packages/project/.chglog/config.yml @@ -18,7 +18,7 @@ options: PERF: Performance Improvements INTERNAL: Internal Changes header: - pattern: "^\\[(\\w*)\\]\\s(?:(\\w*)\\:\\s)?(.*)$" + pattern: "^\\[(\\w*)\\]\\s(?:([^\\:]*)\\:\\s)?(.*)$" pattern_maps: - Type - Scope diff --git a/packages/project/.chglog/release-config.yml b/packages/project/.chglog/release-config.yml index 8c9058741bf..9575aa4d7dc 100755 --- a/packages/project/.chglog/release-config.yml +++ b/packages/project/.chglog/release-config.yml @@ -17,7 +17,7 @@ options: PERF: Performance Improvements INTERNAL: Internal Changes header: - pattern: "^\\[(\\w*)\\]\\s(?:(\\w*)\\:\\s)?(.*)$" + pattern: "^\\[(\\w*)\\]\\s(?:([^\\:]*)\\:\\s)?(.*)$" pattern_maps: - Type - Scope diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 5a2c0dc40b1..ea5515e5d32 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -15,7 +15,7 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj ## [v0.1.0] - 2018-06-26 ### Bug Fixes - Fix some typos in log messages ([#17](https://github.com/SAP/ui5-project/issues/17)) [`1f2f2fd`](https://github.com/SAP/ui5-project/commit/1f2f2fd164abaf449cc5e7d94ec792f469710207) -- npm translator: Fix endless loop in case of dependency cycles ([#15](https://github.com/SAP/ui5-project/issues/15)) [`cf31112`](https://github.com/SAP/ui5-project/commit/cf3111288278e8dd36a09b549bd2b254e86af041) +- **npm translator:** Fix endless loop in case of dependency cycles ([#15](https://github.com/SAP/ui5-project/issues/15)) [`cf31112`](https://github.com/SAP/ui5-project/commit/cf3111288278e8dd36a09b549bd2b254e86af041) ### Internal Changes - Update ui5-builder and ui5-logger dependency [`c4aaa81`](https://github.com/SAP/ui5-project/commit/c4aaa81ed813fb96a24a289ceb54bc2537bc70e7) @@ -27,7 +27,7 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj ## v0.0.1 - 2018-06-06 ### Bug Fixes -- npm t8r: Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +- **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) ### Internal Changes - Prepare npm release [`0467b6a`](https://github.com/SAP/ui5-project/commit/0467b6ac2e87dadd7319fe02901c3b24a3901663) @@ -35,12 +35,12 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - Add chglog config + npm release scripts [`574f976`](https://github.com/SAP/ui5-project/commit/574f9761debb0cf527e4dfe9d09a73b7abfecc49) - Update dependencies [`51ddbc8`](https://github.com/SAP/ui5-project/commit/51ddbc854e1e28c6455cbe98fdf517601e560f71) - Add missing test module dependencies [`0d1d57a`](https://github.com/SAP/ui5-project/commit/0d1d57a0f4643ea171b134d1639404fc51fdb051) -- npm t8r: Improve handling of missing package.json [`4b32134`](https://github.com/SAP/ui5-project/commit/4b321345139058dc821fb08c4556aff88366ea86) - Add travis CI badge + package.json cleanup [`7769590`](https://github.com/SAP/ui5-project/commit/776959063ab673a92ebfd4cf4c7ba253aae158a8) - Fix links to CONTRIBUTING.md file [`734a870`](https://github.com/SAP/ui5-project/commit/734a870d6a68f0370626d5a17906afabf1cd27d1) - **ESLint:** Activate no-var rule [`6916828`](https://github.com/SAP/ui5-project/commit/6916828560c1765bdd64306c8b1c4950a36f0c8b) - **ESLint:** Activate no-console [`df406da`](https://github.com/SAP/ui5-project/commit/df406dab0888b16b9c66f4fe5a2d7e026ad9f4f4) - **Travis:** Add node.js 10 to test matrix [`5f26276`](https://github.com/SAP/ui5-project/commit/5f2627668b7faa554b8c3810899828d3be6fd63f) +- **npm t8r:** Improve handling of missing package.json [`4b32134`](https://github.com/SAP/ui5-project/commit/4b321345139058dc821fb08c4556aff88366ea86) [v0.2.0]: https://github.com/SAP/ui5-project/compare/v0.1.0...v0.2.0 From 42b8db78836efe9c81a623c80a64ae044ff986b6 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 12 Jul 2018 10:32:41 +0200 Subject: [PATCH 0034/1272] [ui5-project][INTERNAL] Add .npmrc to enforce public registry --- packages/project/.npmrc | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 packages/project/.npmrc diff --git a/packages/project/.npmrc b/packages/project/.npmrc new file mode 100644 index 00000000000..5ea30aae908 --- /dev/null +++ b/packages/project/.npmrc @@ -0,0 +1,2 @@ +# Enforce public npm registry +registry = https://registry.npmjs.org/ From 0b660987e48dc5cda5046b39d70979cc8ce93ff4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 9 Jul 2018 10:03:40 +0000 Subject: [PATCH 0035/1272] [ui5-project]Bump eslint from 5.0.1 to 5.1.0 Bumps [eslint](https://github.com/eslint/eslint) from 5.0.1 to 5.1.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.0.1...v5.1.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0032ba4d9d0..1d4a741a57a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2510,9 +2510,9 @@ } }, "eslint": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.0.1.tgz", - "integrity": "sha512-D5nG2rErquLUstgUaxJlWB5+gu+U/3VDY0fk/Iuq8y9CUFy/7Y6oF4N2cR1tV8knzQvciIbfqfohd359xTLIKQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.1.0.tgz", + "integrity": "sha512-DyH6JsoA1KzA5+OSWFjg56DFJT+sDLO0yokaPZ9qY0UEmYrPA1gEX/G1MnVkmRDsksG4H1foIVz2ZXXM3hHYvw==", "dev": true, "requires": { "ajv": "^6.5.0", @@ -2522,6 +2522,7 @@ "debug": "^3.1.0", "doctrine": "^2.1.0", "eslint-scope": "^4.0.0", + "eslint-utils": "^1.3.1", "eslint-visitor-keys": "^1.0.0", "espree": "^4.0.0", "esquery": "^1.0.1", @@ -2529,7 +2530,7 @@ "file-entry-cache": "^2.0.0", "functional-red-black-tree": "^1.0.1", "glob": "^7.1.2", - "globals": "^11.5.0", + "globals": "^11.7.0", "ignore": "^3.3.3", "imurmurhash": "^0.1.4", "inquirer": "^5.2.0", @@ -2649,6 +2650,12 @@ "estraverse": "^4.1.1" } }, + "eslint-utils": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", + "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", + "dev": true + }, "eslint-visitor-keys": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", From 228ba45897a78df5bbb966a1963ff44aeb3900bf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 17 Jul 2018 09:07:39 +0000 Subject: [PATCH 0036/1272] [ui5-project]Bump @ui5/builder from 0.2.0 to 0.2.1 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 0.2.0 to 0.2.1. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v0.2.0...v0.2.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 43 +++++++++++++++++++++--------- 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1d4a741a57a..89e96419ba8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -269,9 +269,9 @@ } }, "@ui5/builder": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.0.tgz", - "integrity": "sha512-Z7fNTCCgl+GEkMUxUjVpbG/sKVGR+O2sC6OUYB6l7isuzKi4QIdIkbEgmItsJfMS+Dwv2XdTB/3Cmeka++Gl1Q==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.1.tgz", + "integrity": "sha512-gEIoO4ocr9cEIrivU0G1S0AL7pprgF6RyXwzTt7ijatCeDPI6byYpzkK3WYwOlrw102Vwg6nZAEtBPTxR8xaKQ==", "requires": { "@ui5/fs": "^0.2.0", "@ui5/logger": "^0.2.0", @@ -1388,6 +1388,11 @@ } } }, + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==" + }, "bcrypt-pbkdf": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", @@ -1514,6 +1519,15 @@ "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", "dev": true }, + "buffer": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.1.0.tgz", + "integrity": "sha512-YkIRgwsZwJWTnyQrsBTWefizHh+8GYj3kbL1BTiAQ/9pwpino0G7B2gp5tx/FUBqUlvtxV85KNR3mwfAtv15Yw==", + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" + } + }, "buffer-alloc": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", @@ -2048,9 +2062,12 @@ } }, "crc": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz", - "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ=" + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.7.0.tgz", + "integrity": "sha512-ZwmUex488OBjSVOMxnR/dIa1yxisBMJNEi+UxzXpKhax8MPsQtoRQtl5Qgo+W7pcSVkRXa3BEVjaniaWKtvKvw==", + "requires": { + "buffer": "^5.1.0" + } }, "crc32-stream": { "version": "2.0.0", @@ -3945,6 +3962,11 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "ieee754": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", + "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==" + }, "ignore": { "version": "3.3.8", "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.8.tgz", @@ -9051,12 +9073,9 @@ } }, "use": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz", - "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==", - "requires": { - "kind-of": "^6.0.2" - } + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" }, "util-deprecate": { "version": "1.0.2", From 57445845500bb09a951b0931453c56f1dec3f2e8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Sat, 4 Aug 2018 02:22:16 +0000 Subject: [PATCH 0037/1272] [ui5-project]Bump eslint from 5.1.0 to 5.3.0 Bumps [eslint](https://github.com/eslint/eslint) from 5.1.0 to 5.3.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.1.0...v5.3.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 89e96419ba8..8e2c33257b1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2527,9 +2527,9 @@ } }, "eslint": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.1.0.tgz", - "integrity": "sha512-DyH6JsoA1KzA5+OSWFjg56DFJT+sDLO0yokaPZ9qY0UEmYrPA1gEX/G1MnVkmRDsksG4H1foIVz2ZXXM3hHYvw==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.3.0.tgz", + "integrity": "sha512-N/tCqlMKkyNvAvLu+zI9AqDasnSLt00K+Hu8kdsERliC9jYEc8ck12XtjvOXrBKu8fK6RrBcN9bat6Xk++9jAg==", "dev": true, "requires": { "ajv": "^6.5.0", @@ -2548,7 +2548,7 @@ "functional-red-black-tree": "^1.0.1", "glob": "^7.1.2", "globals": "^11.7.0", - "ignore": "^3.3.3", + "ignore": "^4.0.2", "imurmurhash": "^0.1.4", "inquirer": "^5.2.0", "is-resolvable": "^1.1.0", @@ -2563,7 +2563,7 @@ "path-is-inside": "^1.0.2", "pluralize": "^7.0.0", "progress": "^2.0.0", - "regexpp": "^1.1.0", + "regexpp": "^2.0.0", "require-uncached": "^1.0.3", "semver": "^5.5.0", "string.prototype.matchall": "^2.0.0", @@ -2625,6 +2625,12 @@ "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", "dev": true }, + "ignore": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.3.tgz", + "integrity": "sha512-Z/vAH2GGIEATQnBVXMclE2IGV6i0GyVngKThcGZ5kHgHMxLo9Ow2+XHRq1aEKEej5vOF1TPJNbvX6J/anT0M7A==", + "dev": true + }, "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -7843,9 +7849,9 @@ } }, "regexpp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", - "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.0.tgz", + "integrity": "sha512-g2FAVtR8Uh8GO1Nv5wpxW7VFVwHcCEr4wyA8/MHiRkO8uHoR5ntAA8Uq3P1vvMTX/BeQiRVSpDGLd+Wn5HNOTA==", "dev": true }, "regexpu-core": { From 9bba2d262a03d5d83221a4037ae7eb569d964a28 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Fri, 28 Sep 2018 17:23:35 +0000 Subject: [PATCH 0038/1272] [ui5-project]Bump eslint from 5.3.0 to 5.6.1 Bumps [eslint](https://github.com/eslint/eslint) from 5.3.0 to 5.6.1. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.3.0...v5.6.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 281 ++++++++++------------------- 1 file changed, 100 insertions(+), 181 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8e2c33257b1..179da6a9e49 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -316,9 +316,9 @@ } }, "acorn": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.1.tgz", - "integrity": "sha512-d+nbxBUGKg7Arpsvbnlq61mc12ek3EY8EQldM3GPAhWJ1UVxC6TDGbIvUMNU6obBX3i1+ptCIzV4vq0gFPEGVQ==", + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", "dev": true }, "acorn-jsx": { @@ -1702,9 +1702,9 @@ } }, "chardet": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", - "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", "dev": true }, "chokidar": { @@ -2208,16 +2208,6 @@ } } }, - "define-properties": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", - "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", - "dev": true, - "requires": { - "foreach": "^2.0.5", - "object-keys": "^1.0.8" - } - }, "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", @@ -2415,30 +2405,6 @@ "is-arrayish": "^0.2.1" } }, - "es-abstract": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", - "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", - "dev": true, - "requires": { - "es-to-primitive": "^1.1.1", - "function-bind": "^1.1.1", - "has": "^1.0.1", - "is-callable": "^1.1.3", - "is-regex": "^1.0.4" - } - }, - "es-to-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", - "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", - "dev": true, - "requires": { - "is-callable": "^1.1.1", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.1" - } - }, "es5-ext": { "version": "0.10.45", "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.45.tgz", @@ -2527,16 +2493,16 @@ } }, "eslint": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.3.0.tgz", - "integrity": "sha512-N/tCqlMKkyNvAvLu+zI9AqDasnSLt00K+Hu8kdsERliC9jYEc8ck12XtjvOXrBKu8fK6RrBcN9bat6Xk++9jAg==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.6.1.tgz", + "integrity": "sha512-hgrDtGWz368b7Wqf+v1Z69O3ZebNR0+GA7PtDdbmuz4rInFVUV9uw7whjZEiWyLzCjVb5Rs5WRN1TAS6eo7AYA==", "dev": true, "requires": { - "ajv": "^6.5.0", - "babel-code-frame": "^6.26.0", + "@babel/code-frame": "^7.0.0", + "ajv": "^6.5.3", "chalk": "^2.1.0", "cross-spawn": "^6.0.5", - "debug": "^3.1.0", + "debug": "^4.0.1", "doctrine": "^2.1.0", "eslint-scope": "^4.0.0", "eslint-utils": "^1.3.1", @@ -2548,11 +2514,11 @@ "functional-red-black-tree": "^1.0.1", "glob": "^7.1.2", "globals": "^11.7.0", - "ignore": "^4.0.2", + "ignore": "^4.0.6", "imurmurhash": "^0.1.4", - "inquirer": "^5.2.0", + "inquirer": "^6.1.0", "is-resolvable": "^1.1.0", - "js-yaml": "^3.11.0", + "js-yaml": "^3.12.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.3.0", "lodash": "^4.17.5", @@ -2565,24 +2531,43 @@ "progress": "^2.0.0", "regexpp": "^2.0.0", "require-uncached": "^1.0.3", - "semver": "^5.5.0", - "string.prototype.matchall": "^2.0.0", + "semver": "^5.5.1", "strip-ansi": "^4.0.0", "strip-json-comments": "^2.0.1", "table": "^4.0.3", "text-table": "^0.2.0" }, "dependencies": { + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, "ajv": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz", - "integrity": "sha512-hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==", + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.4.tgz", + "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.1" + "uri-js": "^4.2.2" } }, "ansi-regex": { @@ -2605,12 +2590,12 @@ } }, "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.0.1.tgz", + "integrity": "sha512-K23FHJ/Mt404FSlp6gSZCevIbTMLX0j3fmHhUEhQ3Wq0FMODW3+cUSoLdy1Gx4polAf4t/lphhmHH35BB8cLYw==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, "fast-deep-equal": { @@ -2626,9 +2611,15 @@ "dev": true }, "ignore": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.3.tgz", - "integrity": "sha512-Z/vAH2GGIEATQnBVXMclE2IGV6i0GyVngKThcGZ5kHgHMxLo9Ow2+XHRq1aEKEej5vOF1TPJNbvX6J/anT0M7A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, "json-schema-traverse": { @@ -2639,13 +2630,25 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { "minimist": "0.0.8" } }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "semver": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", + "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", + "dev": true + }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", @@ -2887,13 +2890,13 @@ } }, "external-editor": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", - "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", + "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", "dev": true, "requires": { - "chardet": "^0.4.0", - "iconv-lite": "^0.4.17", + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", "tmp": "^0.0.33" } }, @@ -3081,12 +3084,6 @@ "for-in": "^1.0.1" } }, - "foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", - "dev": true - }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -3668,12 +3665,6 @@ } } }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, "function-name-support": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", @@ -3836,15 +3827,6 @@ "har-schema": "^2.0.0" } }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", @@ -3866,12 +3848,6 @@ "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", "dev": true }, - "has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", - "dev": true - }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -3960,9 +3936,9 @@ } }, "iconv-lite": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", - "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, "requires": { "safer-buffer": ">= 2.1.2 < 3" @@ -4033,21 +4009,21 @@ "dev": true }, "inquirer": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-5.2.0.tgz", - "integrity": "sha512-E9BmnJbAKLPGonz0HeWHtbKf+EeSP93paWO3ZYoUpq/aowXvYGjjCSuashhXPpzbArIjBbji39THkxTz9ZeEUQ==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.0.tgz", + "integrity": "sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg==", "dev": true, "requires": { "ansi-escapes": "^3.0.0", "chalk": "^2.0.0", "cli-cursor": "^2.1.0", "cli-width": "^2.0.0", - "external-editor": "^2.1.0", + "external-editor": "^3.0.0", "figures": "^2.0.0", - "lodash": "^4.3.0", + "lodash": "^4.17.10", "mute-stream": "0.0.7", "run-async": "^2.2.0", - "rxjs": "^5.5.2", + "rxjs": "^6.1.0", "string-width": "^2.1.0", "strip-ansi": "^4.0.0", "through": "^2.3.6" @@ -4146,12 +4122,6 @@ "builtin-modules": "^1.0.0" } }, - "is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", - "dev": true - }, "is-ci": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz", @@ -4179,12 +4149,6 @@ } } }, - "is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", - "dev": true - }, "is-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", @@ -4377,15 +4341,6 @@ "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", "dev": true }, - "is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", - "dev": true, - "requires": { - "has": "^1.0.1" - } - }, "is-resolvable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", @@ -4404,12 +4359,6 @@ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true }, - "is-symbol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", - "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", - "dev": true - }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -5144,9 +5093,9 @@ "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" }, "nice-try": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.4.tgz", - "integrity": "sha512-2NpiFHqC87y/zFke0fC0spBXL3bBsoh/p5H1EFhshxjCR5+0g2d6BiXbUFz9v1sAcxsk2htp2eQnNIci2dIYcA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", "dev": true }, "normalize-package-data": { @@ -7286,12 +7235,6 @@ } } }, - "object-keys": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", - "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", - "dev": true - }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", @@ -7839,15 +7782,6 @@ "safe-regex": "^1.1.0" } }, - "regexp.prototype.flags": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz", - "integrity": "sha512-ztaw4M1VqgMwl9HlPpOuiYgItcHlunW0He2fE6eNfT6E/CF2FtYi9ofOYe4mKntstYk0Fyh/rDRBdS3AnxjlrA==", - "dev": true, - "requires": { - "define-properties": "^1.1.2" - } - }, "regexpp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.0.tgz", @@ -8072,20 +8006,12 @@ } }, "rxjs": { - "version": "5.5.11", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.11.tgz", - "integrity": "sha512-3bjO7UwWfA2CV7lmwYMBzj4fQ6Cq+ftHc2MvUe+WMS7wcdJ1LosDWmdjPQanYp2dBRj572p7PeU81JUxHKOcBA==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { - "symbol-observable": "1.0.1" - }, - "dependencies": { - "symbol-observable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", - "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", - "dev": true - } + "tslib": "^1.9.0" } }, "safe-buffer": { @@ -8449,19 +8375,6 @@ "strip-ansi": "^3.0.0" } }, - "string.prototype.matchall": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-2.0.0.tgz", - "integrity": "sha512-WoZ+B2ypng1dp4iFLF2kmZlwwlE19gmjgKuhL1FJfDgCREWb3ye3SDVHSzLH6bxfnvYmkCxbzkmWcQZHA4P//Q==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.10.0", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "regexp.prototype.flags": "^1.2.0" - } - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -8568,7 +8481,7 @@ }, "table": { "version": "4.0.3", - "resolved": "https://registry.npmjs.org/table/-/table-4.0.3.tgz", + "resolved": "http://registry.npmjs.org/table/-/table-4.0.3.tgz", "integrity": "sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg==", "dev": true, "requires": { @@ -8581,15 +8494,15 @@ }, "dependencies": { "ajv": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz", - "integrity": "sha512-hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==", + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.4.tgz", + "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.1" + "uri-js": "^4.2.2" } }, "ansi-regex": { @@ -8741,7 +8654,7 @@ }, "through": { "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", "dev": true }, @@ -8851,6 +8764,12 @@ "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", "dev": true }, + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", + "dev": true + }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", @@ -9199,7 +9118,7 @@ "dependencies": { "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { From f57f97580d1f328c3bbe37e0dd9b6861f73bd479 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 5 Sep 2018 16:03:51 +0000 Subject: [PATCH 0039/1272] [ui5-project]Bump eslint-config-google from 0.9.1 to 0.10.0 Bumps [eslint-config-google](https://github.com/google/eslint-config-google) from 0.9.1 to 0.10.0. - [Release notes](https://github.com/google/eslint-config-google/releases) - [Commits](https://github.com/google/eslint-config-google/compare/0.9.1...0.10.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 179da6a9e49..7e9569ac40c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2661,9 +2661,9 @@ } }, "eslint-config-google": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.9.1.tgz", - "integrity": "sha512-5A83D+lH0PA81QMESKbLJd/a3ic8tPZtwUmqNrxMRo54nfFaUvtt89q/+icQ+fd66c2xQHn0KyFkzJDoAUfpZA==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.10.0.tgz", + "integrity": "sha512-PGlMufI13kljog4HlDkwtyqJ7ZZFOcl0ppEvhDoE1lq+8+nMe0lQs0WIZrXpQJhwxhii3SZuCHW2g/weS6Xpyw==", "dev": true }, "eslint-scope": { diff --git a/packages/project/package.json b/packages/project/package.json index c84c86a83dd..e0220dd5597 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -106,7 +106,7 @@ "coveralls": "^3.0.1", "docdash": "^0.4.0", "eslint": "^5.0.1", - "eslint-config-google": "^0.9.1", + "eslint-config-google": "^0.10.0", "jsdoc": "^3.5.5", "nyc": "^12.0.2", "tap-nyan": "^1.1.0" From 6cbef373d772b4ded6839c70ff068c3f80c3194a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 8 Oct 2018 12:18:54 +0000 Subject: [PATCH 0040/1272] [ui5-project]Bump docdash from 0.4.0 to 1.0.0 Bumps [docdash](https://github.com/clenemt/docdash) from 0.4.0 to 1.0.0. - [Release notes](https://github.com/clenemt/docdash/releases) - [Commits](https://github.com/clenemt/docdash/commits) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7e9569ac40c..a670571baa1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2326,9 +2326,9 @@ } }, "docdash": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-0.4.0.tgz", - "integrity": "sha1-BcOlDYMYmYFpnuDAdtOjlQ237AA=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.0.tgz", + "integrity": "sha512-HhK72PT4z55og8FDqskO/tTYXxU+LovRz+9pCDHLnUoPchkxjdIJidS+96LqW3CLrRdBmnkDRrcVrDFGLIluTw==", "dev": true }, "doctrine": { diff --git a/packages/project/package.json b/packages/project/package.json index e0220dd5597..30cb70e75b9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -104,7 +104,7 @@ "devDependencies": { "ava": "^0.25.0", "coveralls": "^3.0.1", - "docdash": "^0.4.0", + "docdash": "^1.0.0", "eslint": "^5.0.1", "eslint-config-google": "^0.10.0", "jsdoc": "^3.5.5", From 08a4e47bf438bf72ae97b7ab16eb6ad4bf73c550 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 8 Oct 2018 12:18:36 +0000 Subject: [PATCH 0041/1272] [ui5-project]Bump nyc from 12.0.2 to 13.0.1 Bumps [nyc](https://github.com/istanbuljs/nyc) from 12.0.2 to 13.0.1. - [Release notes](https://github.com/istanbuljs/nyc/releases) - [Changelog](https://github.com/istanbuljs/nyc/blob/master/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/nyc/compare/v12.0.2...v13.0.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 1329 +++++----------------------- packages/project/package.json | 2 +- 2 files changed, 209 insertions(+), 1122 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a670571baa1..b3a4ff99ab4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -178,18 +178,24 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, "globals": { - "version": "11.7.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", - "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.8.0.tgz", + "integrity": "sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true } } @@ -4409,9 +4415,9 @@ "dev": true }, "istanbul-lib-instrument": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-2.3.1.tgz", - "integrity": "sha512-h9Vg3nfbxrF0PK0kZiNiMAyL8zXaLiBP/BXniaKSwVvAi1TaumYV2b0wPdmy1CRX3irYbYD1p4Wjbv4uyECiiQ==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-2.3.2.tgz", + "integrity": "sha512-l7TD/VnBsIB2OJvSyxaLW/ab1+92dxZNH9wLH7uHPPioy3JZ8tnx2UXUdKmdkgmP2EFPzg64CToUP6dAS3U32Q==", "dev": true, "requires": { "@babel/generator": "7.0.0-beta.51", @@ -5143,38 +5149,36 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "12.0.2", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-12.0.2.tgz", - "integrity": "sha1-ikpO1pCWbBHsWH/4fuoMEsl0upk=", + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.0.1.tgz", + "integrity": "sha512-Op/bjhEF74IMtzMmgYt+ModTeMHoPZzHe4qseUguPBwg5qC6r4rYMBt1L3yRXQIbjUpEqmn24/1xAC/umQGU7w==", "dev": true, "requires": { "archy": "^1.0.0", "arrify": "^1.0.1", - "caching-transform": "^1.0.0", + "caching-transform": "^2.0.0", "convert-source-map": "^1.5.1", "debug-log": "^1.0.1", - "default-require-extensions": "^1.0.0", - "find-cache-dir": "^0.1.1", - "find-up": "^2.1.0", - "foreground-child": "^1.5.3", - "glob": "^7.0.6", - "istanbul-lib-coverage": "^1.2.0", - "istanbul-lib-hook": "^1.1.0", - "istanbul-lib-instrument": "^2.1.0", - "istanbul-lib-report": "^1.1.3", - "istanbul-lib-source-maps": "^1.2.5", - "istanbul-reports": "^1.4.1", - "md5-hex": "^1.2.0", + "find-cache-dir": "^2.0.0", + "find-up": "^3.0.0", + "foreground-child": "^1.5.6", + "glob": "^7.1.2", + "istanbul-lib-coverage": "^2.0.1", + "istanbul-lib-hook": "^2.0.1", + "istanbul-lib-instrument": "^2.3.2", + "istanbul-lib-report": "^2.0.1", + "istanbul-lib-source-maps": "^2.0.1", + "istanbul-reports": "^2.0.0", + "make-dir": "^1.3.0", "merge-source-map": "^1.1.0", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.0", - "resolve-from": "^2.0.0", + "resolve-from": "^4.0.0", "rimraf": "^2.6.2", - "signal-exit": "^3.0.1", + "signal-exit": "^3.0.2", "spawn-wrap": "^1.4.2", - "test-exclude": "^4.2.0", + "test-exclude": "^5.0.0", + "uuid": "^3.3.2", "yargs": "11.1.0", - "yargs-parser": "^8.0.0" + "yargs-parser": "^9.0.2" }, "dependencies": { "align-text": { @@ -5199,11 +5203,11 @@ "dev": true }, "append-transform": { - "version": "0.4.0", + "version": "1.0.0", "bundled": true, "dev": true, "requires": { - "default-require-extensions": "^1.0.0" + "default-require-extensions": "^2.0.0" } }, "archy": { @@ -5211,106 +5215,21 @@ "bundled": true, "dev": true }, - "arr-diff": { - "version": "4.0.0", - "bundled": true, - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "arr-union": { - "version": "3.1.0", - "bundled": true, - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "bundled": true, - "dev": true - }, "arrify": { "version": "1.0.1", "bundled": true, "dev": true }, - "assign-symbols": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, "async": { "version": "1.5.2", "bundled": true, "dev": true }, - "atob": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, "balanced-match": { "version": "1.0.0", "bundled": true, "dev": true }, - "base": { - "version": "0.11.2", - "bundled": true, - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "bundled": true, - "dev": true - } - } - }, "brace-expansion": { "version": "1.1.11", "bundled": true, @@ -5320,62 +5239,20 @@ "concat-map": "0.0.1" } }, - "braces": { - "version": "2.3.2", - "bundled": true, - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, "builtin-modules": { "version": "1.1.1", "bundled": true, "dev": true }, - "cache-base": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, "caching-transform": { - "version": "1.0.1", + "version": "2.0.0", "bundled": true, "dev": true, "requires": { - "md5-hex": "^1.2.0", - "mkdirp": "^0.5.1", - "write-file-atomic": "^1.1.4" + "make-dir": "^1.0.0", + "md5-hex": "^2.0.0", + "package-hash": "^2.0.0", + "write-file-atomic": "^2.0.0" } }, "camelcase": { @@ -5394,27 +5271,6 @@ "lazy-cache": "^1.0.3" } }, - "class-utils": { - "version": "0.3.6", - "bundled": true, - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, "cliui": { "version": "2.1.0", "bundled": true, @@ -5439,25 +5295,11 @@ "bundled": true, "dev": true }, - "collection-visit": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, "commondir": { "version": "1.0.1", "bundled": true, "dev": true }, - "component-emitter": { - "version": "1.2.1", - "bundled": true, - "dev": true - }, "concat-map": { "version": "0.0.1", "bundled": true, @@ -5468,11 +5310,6 @@ "bundled": true, "dev": true }, - "copy-descriptor": { - "version": "0.1.1", - "bundled": true, - "dev": true - }, "cross-spawn": { "version": "4.0.2", "bundled": true, @@ -5500,69 +5337,27 @@ "bundled": true, "dev": true }, - "decode-uri-component": { - "version": "0.2.0", - "bundled": true, - "dev": true - }, "default-require-extensions": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "strip-bom": "^2.0.0" - } - }, - "define-property": { - "version": "2.0.2", + "version": "2.0.0", "bundled": true, "dev": true, "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "bundled": true, - "dev": true - } + "strip-bom": "^3.0.0" } }, "error-ex": { - "version": "1.3.1", + "version": "1.3.2", "bundled": true, "dev": true, "requires": { "is-arrayish": "^0.2.1" } }, + "es6-error": { + "version": "4.1.1", + "bundled": true, + "dev": true + }, "execa": { "version": "0.7.0", "bundled": true, @@ -5589,197 +5384,40 @@ } } }, - "expand-brackets": { - "version": "2.1.4", + "find-cache-dir": { + "version": "2.0.0", "bundled": true, "dev": true, "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "bundled": true, - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^3.0.0" } }, - "extend-shallow": { - "version": "3.0.2", + "find-up": { + "version": "3.0.0", "bundled": true, "dev": true, "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } + "locate-path": "^3.0.0" } }, - "extglob": { - "version": "2.0.4", + "foreground-child": { + "version": "1.5.6", "bundled": true, "dev": true, "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "bundled": true, - "dev": true - } + "cross-spawn": "^4", + "signal-exit": "^3.0.0" } }, - "fill-range": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-cache-dir": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "requires": { - "commondir": "^1.0.1", - "mkdirp": "^0.5.1", - "pkg-dir": "^1.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "for-in": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "foreground-child": { - "version": "1.5.6", - "bundled": true, - "dev": true, - "requires": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" - } - }, - "fragment-cache": { - "version": "0.2.1", - "bundled": true, - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "fs.realpath": { - "version": "1.0.0", + "fs.realpath": { + "version": "1.0.0", "bundled": true, "dev": true }, "get-caller-file": { - "version": "1.0.2", + "version": "1.0.3", "bundled": true, "dev": true }, @@ -5788,11 +5426,6 @@ "bundled": true, "dev": true }, - "get-value": { - "version": "2.0.6", - "bundled": true, - "dev": true - }, "glob": { "version": "7.1.2", "bundled": true, @@ -5832,37 +5465,13 @@ } } }, - "has-value": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", + "has-flag": { + "version": "3.0.0", "bundled": true, - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } + "dev": true }, "hosted-git-info": { - "version": "2.6.0", + "version": "2.7.1", "bundled": true, "dev": true }, @@ -5890,14 +5499,6 @@ "bundled": true, "dev": true }, - "is-accessor-descriptor": { - "version": "0.1.6", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, "is-arrayish": { "version": "0.2.1", "bundled": true, @@ -5906,7 +5507,8 @@ "is-buffer": { "version": "1.1.6", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "is-builtin-module": { "version": "1.0.0", @@ -5916,165 +5518,81 @@ "builtin-modules": "^1.0.0" } }, - "is-data-descriptor": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-descriptor": { - "version": "0.1.6", - "bundled": true, - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "bundled": true, - "dev": true - } - } - }, - "is-extendable": { - "version": "0.1.1", - "bundled": true, - "dev": true - }, "is-fullwidth-code-point": { "version": "2.0.0", "bundled": true, "dev": true }, - "is-number": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-odd": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "is-number": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "bundled": true, - "dev": true - } - } - }, - "is-plain-object": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, "is-stream": { "version": "1.1.0", "bundled": true, "dev": true }, - "is-utf8": { - "version": "0.2.1", - "bundled": true, - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, "isexe": { "version": "2.0.0", "bundled": true, "dev": true }, - "isobject": { - "version": "3.0.1", - "bundled": true, - "dev": true - }, "istanbul-lib-coverage": { - "version": "1.2.0", + "version": "2.0.1", "bundled": true, "dev": true }, "istanbul-lib-hook": { - "version": "1.1.0", + "version": "2.0.1", "bundled": true, "dev": true, "requires": { - "append-transform": "^0.4.0" + "append-transform": "^1.0.0" } }, "istanbul-lib-report": { - "version": "1.1.3", + "version": "2.0.1", "bundled": true, "dev": true, "requires": { - "istanbul-lib-coverage": "^1.1.2", - "mkdirp": "^0.5.1", - "path-parse": "^1.0.5", - "supports-color": "^3.1.2" - }, - "dependencies": { - "has-flag": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "supports-color": { - "version": "3.2.3", - "bundled": true, - "dev": true, - "requires": { - "has-flag": "^1.0.0" - } - } + "istanbul-lib-coverage": "^2.0.1", + "make-dir": "^1.3.0", + "supports-color": "^5.4.0" } }, "istanbul-lib-source-maps": { - "version": "1.2.5", + "version": "2.0.1", "bundled": true, "dev": true, "requires": { "debug": "^3.1.0", - "istanbul-lib-coverage": "^1.2.0", - "mkdirp": "^0.5.1", - "rimraf": "^2.6.1", - "source-map": "^0.5.3" + "istanbul-lib-coverage": "^2.0.1", + "make-dir": "^1.3.0", + "rimraf": "^2.6.2", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true + } } }, "istanbul-reports": { - "version": "1.4.1", + "version": "2.0.0", "bundled": true, "dev": true, "requires": { - "handlebars": "^4.0.3" + "handlebars": "^4.0.11" } }, + "json-parse-better-errors": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, "kind-of": { "version": "3.2.2", "bundled": true, "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -6094,33 +5612,30 @@ } }, "load-json-file": { - "version": "1.1.0", + "version": "4.0.0", "bundled": true, "dev": true, "requires": { "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" } }, "locate-path": { - "version": "2.0.0", + "version": "3.0.0", "bundled": true, "dev": true, "requires": { - "p-locate": "^2.0.0", + "p-locate": "^3.0.0", "path-exists": "^3.0.0" - }, - "dependencies": { - "path-exists": { - "version": "3.0.0", - "bundled": true, - "dev": true - } } }, + "lodash.flattendeep": { + "version": "4.4.0", + "bundled": true, + "dev": true + }, "longest": { "version": "1.0.1", "bundled": true, @@ -6136,21 +5651,16 @@ "yallist": "^2.1.2" } }, - "map-cache": { - "version": "0.2.2", - "bundled": true, - "dev": true - }, - "map-visit": { - "version": "1.0.0", + "make-dir": { + "version": "1.3.0", "bundled": true, "dev": true, "requires": { - "object-visit": "^1.0.0" + "pify": "^3.0.0" } }, "md5-hex": { - "version": "1.3.0", + "version": "2.0.0", "bundled": true, "dev": true, "requires": { @@ -6185,33 +5695,6 @@ } } }, - "micromatch": { - "version": "3.1.10", - "bundled": true, - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "6.0.2", - "bundled": true, - "dev": true - } - } - }, "mimic-fn": { "version": "1.2.0", "bundled": true, @@ -6226,68 +5709,30 @@ } }, "minimist": { - "version": "0.0.8", + "version": "0.0.10", "bundled": true, "dev": true }, - "mixin-deep": { - "version": "1.3.1", + "mkdirp": { + "version": "0.5.1", "bundled": true, "dev": true, "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" + "minimist": "0.0.8" }, "dependencies": { - "is-extendable": { - "version": "1.0.1", + "minimist": { + "version": "0.0.8", "bundled": true, - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } + "dev": true } } }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, "ms": { "version": "2.0.0", "bundled": true, "dev": true }, - "nanomatch": { - "version": "1.2.9", - "bundled": true, - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-odd": "^2.0.0", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "kind-of": { - "version": "6.0.2", - "bundled": true, - "dev": true - } - } - }, "normalize-package-data": { "version": "2.4.0", "bundled": true, @@ -6312,47 +5757,6 @@ "bundled": true, "dev": true }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "bundled": true, - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "object-visit": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "isobject": "^3.0.0" - } - }, - "object.pick": { - "version": "1.3.0", - "bundled": true, - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, "once": { "version": "1.4.0", "bundled": true, @@ -6391,47 +5795,51 @@ "dev": true }, "p-limit": { - "version": "1.2.0", + "version": "2.0.0", "bundled": true, "dev": true, "requires": { - "p-try": "^1.0.0" + "p-try": "^2.0.0" } }, "p-locate": { - "version": "2.0.0", + "version": "3.0.0", "bundled": true, "dev": true, "requires": { - "p-limit": "^1.1.0" + "p-limit": "^2.0.0" } }, "p-try": { - "version": "1.0.0", + "version": "2.0.0", "bundled": true, "dev": true }, - "parse-json": { - "version": "2.2.0", + "package-hash": { + "version": "2.0.0", "bundled": true, "dev": true, "requires": { - "error-ex": "^1.2.0" + "graceful-fs": "^4.1.11", + "lodash.flattendeep": "^4.4.0", + "md5-hex": "^2.0.0", + "release-zalgo": "^1.0.0" } }, - "pascalcase": { - "version": "0.1.1", - "bundled": true, - "dev": true - }, - "path-exists": { - "version": "2.1.0", + "parse-json": { + "version": "4.0.0", "bundled": true, "dev": true, "requires": { - "pinkie-promise": "^2.0.0" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" } }, + "path-exists": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, "path-is-absolute": { "version": "1.0.1", "bundled": true, @@ -6442,116 +5850,64 @@ "bundled": true, "dev": true }, - "path-parse": { - "version": "1.0.5", - "bundled": true, - "dev": true - }, "path-type": { - "version": "1.1.0", + "version": "3.0.0", "bundled": true, "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "pify": "^3.0.0" } }, "pify": { - "version": "2.3.0", - "bundled": true, - "dev": true - }, - "pinkie": { - "version": "2.0.4", + "version": "3.0.0", "bundled": true, "dev": true }, - "pinkie-promise": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, "pkg-dir": { - "version": "1.0.0", + "version": "3.0.0", "bundled": true, "dev": true, "requires": { - "find-up": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - } + "find-up": "^3.0.0" } }, - "posix-character-classes": { - "version": "0.1.1", - "bundled": true, - "dev": true - }, "pseudomap": { "version": "1.0.2", "bundled": true, "dev": true }, "read-pkg": { - "version": "1.1.0", + "version": "3.0.0", "bundled": true, "dev": true, "requires": { - "load-json-file": "^1.0.0", + "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" + "path-type": "^3.0.0" } }, "read-pkg-up": { - "version": "1.0.1", + "version": "4.0.0", "bundled": true, "dev": true, "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - } + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" } }, - "regex-not": { - "version": "1.0.2", + "release-zalgo": { + "version": "1.0.0", "bundled": true, "dev": true, "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" + "es6-error": "^4.0.1" } }, - "repeat-element": { - "version": "1.1.2", - "bundled": true, - "dev": true - }, "repeat-string": { "version": "1.6.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "require-directory": { "version": "2.1.1", @@ -6564,17 +5920,7 @@ "dev": true }, "resolve-from": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "bundled": true, - "dev": true - }, - "ret": { - "version": "0.1.15", + "version": "4.0.0", "bundled": true, "dev": true }, @@ -6595,14 +5941,6 @@ "glob": "^7.0.5" } }, - "safe-regex": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "requires": { - "ret": "~0.1.10" - } - }, "semver": { "version": "5.5.0", "bundled": true, @@ -6613,27 +5951,6 @@ "bundled": true, "dev": true }, - "set-value": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, "shebang-command": { "version": "1.2.0", "bundled": true, @@ -6652,132 +5969,11 @@ "bundled": true, "dev": true }, - "slide": { - "version": "1.1.6", - "bundled": true, - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "bundled": true, - "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "bundled": true, - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "bundled": true, - "dev": true - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^3.2.0" - } - }, "source-map": { "version": "0.5.7", "bundled": true, - "dev": true - }, - "source-map-resolve": { - "version": "0.5.2", - "bundled": true, "dev": true, - "requires": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-url": { - "version": "0.4.0", - "bundled": true, - "dev": true + "optional": true }, "spawn-wrap": { "version": "1.4.2", @@ -6820,33 +6016,6 @@ "bundled": true, "dev": true }, - "split-string": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "static-extend": { - "version": "0.1.2", - "bundled": true, - "dev": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "bundled": true, - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, "string-width": { "version": "2.1.1", "bundled": true, @@ -6865,56 +6034,32 @@ } }, "strip-bom": { - "version": "2.0.0", + "version": "3.0.0", "bundled": true, - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } + "dev": true }, "strip-eof": { "version": "1.0.0", "bundled": true, "dev": true }, - "test-exclude": { - "version": "4.2.1", - "bundled": true, - "dev": true, - "requires": { - "arrify": "^1.0.1", - "micromatch": "^3.1.8", - "object-assign": "^4.1.0", - "read-pkg-up": "^1.0.1", - "require-main-filename": "^1.0.1" - } - }, - "to-object-path": { - "version": "0.3.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "to-regex": { - "version": "3.0.2", + "supports-color": { + "version": "5.4.0", "bundled": true, "dev": true, "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" + "has-flag": "^3.0.0" } }, - "to-regex-range": { - "version": "2.1.1", + "test-exclude": { + "version": "5.0.0", "bundled": true, "dev": true, "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "arrify": "^1.0.1", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^1.0.1" } }, "uglify-js": { @@ -6948,94 +6093,11 @@ "dev": true, "optional": true }, - "union-value": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "bundled": true, - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } - } - }, - "unset-value": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "bundled": true, - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "bundled": true, - "dev": true - } - } - }, - "urix": { - "version": "0.1.0", + "uuid": { + "version": "3.3.2", "bundled": true, "dev": true }, - "use": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "kind-of": "^6.0.2" - }, - "dependencies": { - "kind-of": { - "version": "6.0.2", - "bundled": true, - "dev": true - } - } - }, "validate-npm-package-license": { "version": "3.0.3", "bundled": true, @@ -7117,13 +6179,13 @@ "dev": true }, "write-file-atomic": { - "version": "1.3.4", + "version": "2.3.0", "bundled": true, "dev": true, "requires": { "graceful-fs": "^4.1.11", "imurmurhash": "^0.1.4", - "slide": "^1.1.5" + "signal-exit": "^3.0.2" } }, "y18n": { @@ -7155,11 +6217,6 @@ "yargs-parser": "^9.0.2" }, "dependencies": { - "camelcase": { - "version": "4.1.0", - "bundled": true, - "dev": true - }, "cliui": { "version": "4.1.0", "bundled": true, @@ -7170,18 +6227,48 @@ "wrap-ansi": "^2.0.0" } }, - "yargs-parser": { - "version": "9.0.2", + "find-up": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "bundled": true, + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", "bundled": true, "dev": true, "requires": { - "camelcase": "^4.1.0" + "p-limit": "^1.1.0" } + }, + "p-try": { + "version": "1.0.0", + "bundled": true, + "dev": true } } }, "yargs-parser": { - "version": "8.1.0", + "version": "9.0.2", "bundled": true, "dev": true, "requires": { diff --git a/packages/project/package.json b/packages/project/package.json index 30cb70e75b9..9b086b2b750 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -108,7 +108,7 @@ "eslint": "^5.0.1", "eslint-config-google": "^0.10.0", "jsdoc": "^3.5.5", - "nyc": "^12.0.2", + "nyc": "^13.0.1", "tap-nyan": "^1.1.0" } } From a767e52130198da44015c351ef356726688de7fd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 9 Oct 2018 11:06:43 +0200 Subject: [PATCH 0042/1272] [ui5-project][INTERNAL] Coveralls: Use parallel setting to reduce number of PR comments As per https://docs.coveralls.io/parallel-build-webhook --- packages/project/.travis.yml | 3 +++ packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/project/.travis.yml b/packages/project/.travis.yml index 9ac5847bda5..5844785d4cb 100644 --- a/packages/project/.travis.yml +++ b/packages/project/.travis.yml @@ -6,3 +6,6 @@ node_js: after_script: - npm run report-coveralls + +notifications: + webhooks: https://coveralls.io/webhook diff --git a/packages/project/package.json b/packages/project/package.json index 9b086b2b750..5bc7145fd5d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -32,7 +32,7 @@ "version": "git-chglog --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", "postversion": "git push --follow-tags", "release-note": "git-chglog -c .chglog/release-config.yml v$npm_package_version", - "report-coveralls": "nyc report --reporter=text-lcov | coveralls" + "report-coveralls": "nyc report --reporter=text-lcov | COVERALLS_PARALLEL=true coveralls" }, "files": [ "index.js", From 41e0950dddef1178993cf9627a04a55ab0e283b4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 9 Oct 2018 13:52:05 +0000 Subject: [PATCH 0043/1272] [ui5-project]Bump @ui5/builder from 0.2.1 to 0.2.3 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 0.2.1 to 0.2.3. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v0.2.1...v0.2.3) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 210 ++++++++++++++++++----------- 1 file changed, 130 insertions(+), 80 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b3a4ff99ab4..4c255ff0d98 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -275,19 +275,20 @@ } }, "@ui5/builder": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.1.tgz", - "integrity": "sha512-gEIoO4ocr9cEIrivU0G1S0AL7pprgF6RyXwzTt7ijatCeDPI6byYpzkK3WYwOlrw102Vwg6nZAEtBPTxR8xaKQ==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.3.tgz", + "integrity": "sha512-BlOwMGJTXze1CHYRUDW3i/3C9T/a4Mg6Yn39/X4doMiT21U5CupcIf0roSMcMb+DtaaP9hWEiUquGUiLuoR+sA==", "requires": { "@ui5/fs": "^0.2.0", "@ui5/logger": "^0.2.0", - "archiver": "^2.1.0", + "archiver": "^3.0.0", + "escodegen": "^1.11.0", "escope": "^3.6.0", "esprima": "^2.7.2", "estraverse": "^4.2.0", "globby": "^7.1.1", "graceful-fs": "^4.1.11", - "less-openui5": "^0.5.4", + "less-openui5": "^0.6.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", @@ -356,7 +357,8 @@ "amdefine": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "optional": true }, "ansi-align": { "version": "2.0.0", @@ -512,31 +514,43 @@ "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, "archiver": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-2.1.1.tgz", - "integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-3.0.0.tgz", + "integrity": "sha512-5QeR6Xc5hSA9X1rbQfcuQ6VZuUXOaEdB65Dhmk9duuRJHYif/ZyJfuyJqsQrj34PFjU5emv5/MmfgA8un06onw==", "requires": { - "archiver-utils": "^1.3.0", + "archiver-utils": "^2.0.0", "async": "^2.0.0", "buffer-crc32": "^0.2.1", "glob": "^7.0.0", - "lodash": "^4.8.0", "readable-stream": "^2.0.0", "tar-stream": "^1.5.0", - "zip-stream": "^1.2.0" + "zip-stream": "^2.0.1" } }, "archiver-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", - "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-2.0.0.tgz", + "integrity": "sha512-JRBgcVvDX4Mwu2RBF8bBaHcQCSxab7afsxAPYDQ5W+19quIPP5CfKE7Ql+UHs9wYvwsaNR8oDuhtf5iqrKmzww==", "requires": { "glob": "^7.0.0", "graceful-fs": "^4.1.0", "lazystream": "^1.0.0", - "lodash": "^4.8.0", - "normalize-path": "^2.0.0", + "lodash.assign": "^4.2.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.toarray": "^4.4.0", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", "readable-stream": "^2.0.0" + }, + "dependencies": { + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + } } }, "are-we-there-yet": { @@ -647,9 +661,9 @@ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, "atob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz", - "integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio=" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "auto-bind": { "version": "1.2.0", @@ -1416,7 +1430,7 @@ }, "bl": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "requires": { "readable-stream": "^2.3.5", @@ -1526,9 +1540,9 @@ "dev": true }, "buffer": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.1.0.tgz", - "integrity": "sha512-YkIRgwsZwJWTnyQrsBTWefizHh+8GYj3kbL1BTiAQ/9pwpino0G7B2gp5tx/FUBqUlvtxV85KNR3mwfAtv15Yw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", + "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", "requires": { "base64-js": "^1.0.2", "ieee754": "^1.1.4" @@ -1855,9 +1869,9 @@ "dev": true }, "clone": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz", - "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" }, "co": { "version": "4.6.0", @@ -1921,7 +1935,7 @@ }, "commander": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", + "resolved": "http://registry.npmjs.org/commander/-/commander-2.0.0.tgz", "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", "optional": true }, @@ -2068,9 +2082,9 @@ } }, "crc": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/crc/-/crc-3.7.0.tgz", - "integrity": "sha512-ZwmUex488OBjSVOMxnR/dIa1yxisBMJNEi+UxzXpKhax8MPsQtoRQtl5Qgo+W7pcSVkRXa3BEVjaniaWKtvKvw==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", "requires": { "buffer": "^5.1.0" } @@ -2111,23 +2125,20 @@ "dev": true }, "css": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.3.tgz", - "integrity": "sha512-0W171WccAjQGGTKLhw4m2nnl0zPHUlTO/I8td4XzJgIB8Hg3ZZx71qT4G4eX8OVsSiaAKiUMy73E3nsbPlg2DQ==", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", "requires": { - "inherits": "^2.0.1", - "source-map": "^0.1.38", - "source-map-resolve": "^0.5.1", + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", "urix": "^0.1.0" }, "dependencies": { "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "requires": { - "amdefine": ">=0.0.4" - } + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, @@ -2196,8 +2207,7 @@ "deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" }, "defaults": { "version": "1.0.3", @@ -2412,9 +2422,9 @@ } }, "es5-ext": { - "version": "0.10.45", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.45.tgz", - "integrity": "sha512-FkfM6Vxxfmztilbxxz5UKSD4ICMf5tSpRFtDNtkAhOxZ0EKtX6qwmXNyH/sFyIbX2P/nU5AMiA9jilWsUGJzCQ==", + "version": "0.10.46", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.46.tgz", + "integrity": "sha512-24XxRvJXNFwEMpJb3nOkiRJKRoupmjYmOPVlI65Qy2SrtxwOTB+g6ODjBKOtwEHbYrhWRty9xxOWLNdClT2djw==", "requires": { "es6-iterator": "~2.0.3", "es6-symbol": "~3.1.1", @@ -2487,6 +2497,31 @@ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, + "escodegen": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz", + "integrity": "sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==", + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true + } + } + }, "escope": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", @@ -2755,8 +2790,7 @@ "esutils": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" }, "event-emitter": { "version": "0.3.5", @@ -2989,8 +3023,7 @@ "fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "figures": { "version": "2.0.0", @@ -3956,9 +3989,9 @@ "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==" }, "ignore": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.8.tgz", - "integrity": "sha512-pUh+xUQQhQzevjRHHFqqcTy0/dP/kS9I8HSrUydhihjuD09W6ldVWFtIrwhXdUJHis3i2rZNqEHpZH/cbinFbg==" + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" }, "ignore-by-default": { "version": "1.0.1", @@ -4628,9 +4661,9 @@ } }, "less-openui5": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.5.4.tgz", - "integrity": "sha512-fpddIPs7extsToLZR461oR69jCra8cc1BW9feJoHkAOdNbWvKhQL/y83I7BNAFzjlt9lG/OSYnUoJx5hTcZbnA==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", + "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", @@ -4642,7 +4675,6 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, "requires": { "prelude-ls": "~1.1.2", "type-check": "~0.3.2" @@ -4674,6 +4706,11 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==" }, + "lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" + }, "lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", @@ -4692,17 +4729,20 @@ "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", "dev": true }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + }, "lodash.difference": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", - "dev": true + "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=" }, "lodash.flatten": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", - "dev": true + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" }, "lodash.flattendeep": { "version": "4.4.0", @@ -4716,12 +4756,27 @@ "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", "dev": true }, + "lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" + }, "lodash.merge": { "version": "4.6.1", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==", "dev": true }, + "lodash.toarray": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.toarray/-/lodash.toarray-4.4.0.tgz", + "integrity": "sha1-JMS/zWsvuji/0FlNsRedjptlZWE=" + }, + "lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=" + }, "log-driver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", @@ -5035,7 +5090,7 @@ }, "mkdirp": { "version": "0.3.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", "optional": true }, @@ -6404,7 +6459,6 @@ "version": "0.8.2", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "dev": true, "requires": { "deep-is": "~0.1.3", "fast-levenshtein": "~2.0.4", @@ -6614,8 +6668,7 @@ "prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" }, "prepend-http": { "version": "1.0.4", @@ -7711,16 +7764,16 @@ } }, "tar-stream": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.1.tgz", - "integrity": "sha512-IFLM5wp3QrJODQFPm6/to3LJZrONdBY/otxcvDIQzu217zKye6yVR3hhi9lAjrC2Z+m/j5oDxMPb1qcd8cIvpA==", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", "requires": { "bl": "^1.0.0", - "buffer-alloc": "^1.1.0", + "buffer-alloc": "^1.2.0", "end-of-stream": "^1.0.0", "fs-constants": "^1.0.0", "readable-stream": "^2.3.0", - "to-buffer": "^1.1.0", + "to-buffer": "^1.1.1", "xtend": "^4.0.0" } }, @@ -7875,7 +7928,6 @@ "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, "requires": { "prelude-ls": "~1.1.2" } @@ -8186,8 +8238,7 @@ "wordwrap": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" }, "wrappy": { "version": "1.0.2", @@ -8295,13 +8346,12 @@ "dev": true }, "zip-stream": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", - "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-2.0.1.tgz", + "integrity": "sha512-c+eUhhkDpaK87G/py74wvWLtz2kzMPNCCkUApkun50ssE0oQliIQzWpTnwjB+MTKVIf2tGzIgHyqW/Y+W77ecQ==", "requires": { - "archiver-utils": "^1.3.0", + "archiver-utils": "^2.0.0", "compress-commons": "^1.2.0", - "lodash": "^4.8.0", "readable-stream": "^2.0.0" } } From 0615ef3da6992dd7a42d33881f4d24db018bdd9a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 9 Apr 2018 08:03:59 +0200 Subject: [PATCH 0044/1272] [ui5-project][FEATURE] Add "extension" projects See [RFC0001](https://github.com/SAP/ui5-tooling/pull/4). Identify and apply extensions in dependency tree so that they can influence the actual project processing. --- packages/project/lib/projectPreprocessor.js | 303 ++++++++++++------ .../project/test/lib/projectPreprocessor.js | 84 ++++- 2 files changed, 288 insertions(+), 99 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index cb11f17a75c..f4f0520c151 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -3,19 +3,22 @@ const fs = require("graceful-fs"); const path = require("path"); const {promisify} = require("util"); const readFile = promisify(fs.readFile); -const parseYaml = require("js-yaml").safeLoad; +const parseYaml = require("js-yaml").safeLoadAll; const typeRepository = require("@ui5/builder").types.typeRepository; class ProjectPreprocessor { + constructor() { + this.processedProjects = {}; + } + /* Adapt and enhance the project tree: - - Replace duplicate projects further away from the root with those closed to the root + - Replace duplicate projects further away from the root with those closer to the root - Add configuration to projects */ async processTree(tree) { - const processedProjects = {}; const queue = [{ - project: tree, + projects: [tree], parent: null, level: 0 }]; @@ -27,95 +30,224 @@ class ProjectPreprocessor { // Breadth-first search to prefer projects closer to root while (queue.length) { - const {project, parent, level} = queue.shift(); // Get and remove first entry from queue - if (!project.id) { - throw new Error("Encountered project with missing id"); - } - project._level = level; - - // Check whether project ID is already known - const processedProject = processedProjects[project.id]; - if (processedProject) { - if (processedProject.ignored) { - log.verbose(`Dependency of project ${parent.id}, "${project.id}" is flagged as ignored.`); - parent.dependencies.splice(parent.dependencies.indexOf(project), 1); - continue; + const {projects, parent, level} = queue.shift(); // Get and remove first entry from queue + + // Before processing all projects on a level concurrently, we need to set all of them as being processed. + // This prevents transitive dependencies pointing to the same projects from being processed first + // by the dependency lookahead + const projectsToProcess = projects.filter((project) => { + if (!project.id) { + throw new Error("Encountered project with missing id"); + } + if (this.isBeingProcessed(parent, project)) { + return false; } - log.verbose(`Dependency of project ${parent.id}, "${project.id}": Distance to root of ${level}. Will be `+ - `replaced by project with same ID and distance to root of ${processedProject.project._level}.`); + // Flag this project as being processed + this.processedProjects[project.id] = { + project, + // If a project is referenced multiple times in the dependency tree it is replaced + // with the instance that is closest to the root. + // Here we track the parents referencing that project + parents: [parent] + }; + return true; + }); - // Replace with the already processed project (closer to root -> preferred) - parent.dependencies[parent.dependencies.indexOf(project)] = processedProject.project; - processedProject.parents.push(parent); + await Promise.all(projectsToProcess.map(async (project) => { + log.verbose(`Processing project ${project.id} on level ${project._level}...`); - // No further processing needed - continue; - } + project._level = level; - processedProjects[project.id] = { - project, - // If a project is referenced multiple times in the dependency tree, - // it is replaced with the occurrence closest to the root. - // Here we collect the different parents, this single project configuration then has - parents: [parent] - }; + if (project.dependencies && project.dependencies.length) { + // Do a dependency lookahead to apply any extensions that might affect this project + await this.dependencyLookahead(project, project.dependencies); + } - configPromises.push(this.configureProject(project).then((config) => { - if (!config) { + await this.loadProjectConfiguration(project); + // this.applyShims(project); // shims not yet implemented + if (this.isConfigValid(project)) { + await this.applyType(project); + queue.push({ + projects: project.dependencies, + parent: project, + level: level + 1 + }); + } else { if (project === tree) { throw new Error(`Failed to configure root project "${project.id}". Please check verbose log for details.`); } - // No config available // => reject this project by removing it from its parents list of dependencies - log.verbose(`Ignoring project ${project.id} with missing configuration `+ + log.verbose(`Ignoring project ${project.id} with missing configuration ` + "(might be a non-UI5 dependency)"); - const parents = processedProjects[project.id].parents; + + const parents = this.processedProjects[project.id].parents; for (let i = parents.length - 1; i >= 0; i--) { parents[i].dependencies.splice(parents[i].dependencies.indexOf(project), 1); } - processedProjects[project.id] = {ignored: true}; + this.processedProjects[project.id] = {ignored: true}; } })); - - if (project.dependencies) { - queue.push(...project.dependencies.map((depProject) => { - return { - project: depProject, - parent: project, - level: level + 1 - }; - })); - } } return Promise.all(configPromises).then(() => { if (log.isLevelEnabled("verbose")) { const prettyHrtime = require("pretty-hrtime"); const timeDiff = process.hrtime(startTime); - log.verbose(`Processed ${Object.keys(processedProjects).length} projects in ${prettyHrtime(timeDiff)}`); + log.verbose(`Processed ${Object.keys(this.processedProjects).length} projects in ${prettyHrtime(timeDiff)}`); } return tree; }); } - async configureProject(project) { - if (!project.specVersion) { // Project might already be configured (e.g. via inline configuration) + async dependencyLookahead(parent, dependencies) { + return Promise.all(dependencies.map(async (project) => { + if (this.isBeingProcessed(parent, project)) { + return; + } + log.verbose(`Processing dependency lookahead for ${parent.id}: ${project.id}`); + // Temporarily flag project as being processed + this.processedProjects[project.id] = { + project, + parents: [parent] + }; + const {extensions} = await this.loadProjectConfiguration(project); + if (extensions && extensions.length) { + // Project contains additional extensions + // => apply them + await Promise.all(extensions.map((extProject) => { + return this.applyExtension(extProject); + })); + } + + if (project.kind === "extension") { + // Not a project but an extension + // => remove it as from any known projects that depend on it + const parents = this.processedProjects[project.id].parents; + for (let i = parents.length - 1; i >= 0; i--) { + parents[i].dependencies.splice(parents[i].dependencies.indexOf(project), 1); + } + // Also ignore it from further processing by other projects depending on it + this.processedProjects[project.id] = {ignored: true}; + + if (this.isConfigValid(project)) { + // Finally apply the extension + await this.applyExtension(project); + } else { + log.verbose(`Ignoring extension ${project.id} with missing configuration`); + } + } else { + // Project is not an extension: Reset processing status of lookahead to allow the real processing + this.processedProjects[project.id] = null; + } + })); + } + + isBeingProcessed(parent, project) { // Check whether a project is currently being or has already been processed + const processedProject = this.processedProjects[project.id]; + if (processedProject) { + if (processedProject.ignored) { + log.verbose(`Dependency of project ${parent.id}, "${project.id}" is flagged as ignored.`); + parent.dependencies.splice(parent.dependencies.indexOf(project), 1); + return true; + } + log.verbose(`Dependency of project ${parent.id}, "${project.id}": Distance to root of ${parent._level + 1}. Will be `+ + `replaced by project with same ID and distance to root of ${processedProject.project._level}.`); + + // Replace with the already processed project (closer to root -> preferred) + parent.dependencies[parent.dependencies.indexOf(project)] = processedProject.project; + processedProject.parents.push(parent); + + // No further processing needed + return true; + } + return false; + } + + async loadProjectConfiguration(project) { + if (project.specVersion) { // Project might already be configured // Currently, specVersion is the indicator for configured projects - const projectConf = await this.getProjectConfiguration(project); + this.normalizeConfig(project); + return {}; + } + + let configs; + + // A projects configPath property takes precedence over the default "/ui5.yaml" path + const configPath = project.configPath || path.join(project.path, "/ui5.yaml"); + try { + configs = await this.readConfigFile(configPath); + } catch (err) { + const errorText = "Failed to read configuration for project " + + `${project.id} at "${configPath}". Error: ${err.message}`; - if (!projectConf) { - return null; + if (err.code !== "ENOENT") { // Something else than "File or directory does not exist" + throw new Error(errorText); } + log.verbose(errorText); + } + + if (!configs || !configs.length) { + return {}; + } + + for (let i = configs.length - 1; i >= 0; i--) { + this.normalizeConfig(configs[i]); + } + + const projectConfigs = configs.filter((config) => { + return config.kind === "project"; + }); + + const extensionConfigs = configs.filter((config) => { + return config.kind === "extension"; + }); + + const projectClone = JSON.parse(JSON.stringify(project)); + + // While a project can contain multiple configurations, + // from a dependency tree perspective it is always a single project + // This means it can represent one "project", plus multiple extensions or + // one extension, plus multiple extensions + + if (projectConfigs.length === 1) { + // All well, this is the one. Merge config into project + Object.assign(project, projectConfigs[0]); + } else if (projectConfigs.length > 1) { + throw new Error(`Found ${projectConfigs.length} configurations of kind 'project' for ` + + `project ${project.id}. There is only one project per configuration allowed.`); + } else if (projectConfigs.length === 0 && extensionConfigs.length) { + // No project, but extensions + // => choose one to represent the project -> the first one + Object.assign(project, extensionConfigs.shift()); + } else { + throw new Error(`Found ${configs.length} configurations for ` + + `project ${project.id}. None are of valid kind.`); + } + + const extensionProjects = extensionConfigs.map((config) => { + // Clone original project + const configuredProject = JSON.parse(JSON.stringify(projectClone)); + // Enhance project with its configuration - Object.assign(project, projectConf); + Object.assign(configuredProject, config); + }); + + return {extensions: extensionProjects}; + } + + normalizeConfig(config) { + if (!config.kind) { + config.kind = "project"; // default } + } + isConfigValid(project) { if (!project.specVersion) { if (project._level === 0) { throw new Error(`No specification version defined for root project ${project.id}`); } log.verbose(`No specification version defined for project ${project.id}`); - return; // return with empty config + return false; // ignore this project } if (project.specVersion !== "0.1") { @@ -128,52 +260,40 @@ class ProjectPreprocessor { if (project._level === 0) { throw new Error(`No type configured for root project ${project.id}`); } - log.verbose(`No type configured for project ${project.id} (neither in project configuration, nor in any shim)`); - return; // return with empty config + log.verbose(`No type configured for project ${project.id}`); + return false; // ignore this project } - if (project.type === "application" && project._level !== 0) { - // There is only one project of type application allowed + if (project.kind !== "project" && project._level === 0) { + // This is arguable. It is not the concern of ui5-project to define the entry point of a project tree + // On the other hand, there is no known use case for anything else right now and failing early here + // makes sense in that regard + throw new Error(`Root project needs to be of kind "project". ${project.id} is of kind ${project.kind}`); + } + + if (project.kind === "project" && project.type === "application" && project._level !== 0) { + // There is only one project project of type application allowed // That project needs to be the root project log.verbose(`[Warn] Ignoring project ${project.id} with type application`+ ` (distance to root: ${project._level}). Type application is only allowed for the root project`); - return; // return with empty config + return false; // ignore this project } - // Apply type - await this.applyType(project); - return project; + return true; } - async getProjectConfiguration(project) { - // A projects configPath property takes precedence over the default "/ui5.yaml" path - const configPath = project.configPath || path.join(project.path, "/ui5.yaml"); - - let config; + async applyType(project) { + let type; try { - config = await this.readConfigFile(configPath); + type = typeRepository.getType(project.type); } catch (err) { - const errorText = "Failed to read configuration for project " + - `${project.id} at "${configPath}". Error: ${err.message}`; - - if (err.code !== "ENOENT") { // Something else than "File or directory does not exist" - throw new Error(errorText); - } - log.verbose(errorText); - - /* Disabled shimming until shim-plugin is available - // If there is a config shim, use it as fallback - if (configShims[project.id]) { - // It's ok if there is no project configuration in the project if there is a shim for it - log.verbose(`Applying shim for project ${project.id}...`); - config = JSON.parse(JSON.stringify(configShims[project.id])); - } else { - // No configuration available -> return empty config - return null; - }*/ + throw new Error(`Failed to retrieve type for project ${project.id}: ${err.message}`); } + await type.format(project); + } - return config; + async applyExtension(project) { + // TOOD } async readConfigFile(configPath) { @@ -182,11 +302,6 @@ class ProjectPreprocessor { filename: path }); } - - async applyType(project) { - let type = typeRepository.getType(project.type); - return type.format(project); - } } /** diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 11d36d903bd..972fa820db5 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -40,6 +40,7 @@ test("Project with inline configuration", (t) => { }, dependencies: [], id: "application.a", + kind: "project", version: "1.0.0", specVersion: "0.1", path: applicationAPath @@ -47,10 +48,62 @@ test("Project with inline configuration", (t) => { }); }); +test("Projects with extension dependency inline configuration", (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "project-type", + metadata: { + name: "z" + } + }], + version: "1.0.0", + specVersion: "0.1", + type: "application", + metadata: { + name: "xy" + } + }; + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + _level: 0, + type: "application", + metadata: { + name: "xy", + }, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + }, + pathMappings: { + "/": "webapp", + } + }, + dependencies: [], + id: "application.a", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath + }, "Parsed correctly"); + }); +}); + + test("Project with configPath", (t) => { const tree = { id: "application.a", - path: applicationBPath, // B, not A - just to have something different + path: applicationAPath, + configPath: path.join(applicationBPath, "ui5.yaml"), // B, not A - just to have something different dependencies: [], version: "1.0.0" }; @@ -59,8 +112,7 @@ test("Project with configPath", (t) => { _level: 0, type: "application", metadata: { - name: "application.b", - namespace: "id1" + name: "application.b" }, resources: { configuration: { @@ -74,9 +126,11 @@ test("Project with configPath", (t) => { }, dependencies: [], id: "application.a", + kind: "project", version: "1.0.0", specVersion: "0.1", - path: applicationBPath + path: applicationAPath, + configPath: path.join(applicationBPath, "ui5.yaml") }, "Parsed correctly"); }); }); @@ -107,6 +161,7 @@ test("Project with ui5.yaml at default location", (t) => { }, dependencies: [], id: "application.a", + kind: "project", version: "1.0.0", specVersion: "0.1", path: applicationAPath @@ -141,6 +196,7 @@ test("Project with ui5.yaml at default location and some configuration", (t) => }, dependencies: [], id: "application.c", + kind: "project", version: "1.0.0", specVersion: "0.1", path: applicationCPath @@ -155,7 +211,7 @@ test("Missing configuration for root project", (t) => { dependencies: [] }; return t.throws(projectPreprocessor.processTree(tree), - "Failed to configure root project \"application.a\". Please check verbose log for details.", + "No specification version defined for root project application.a", "Rejected with error"); }); @@ -254,6 +310,7 @@ test("Inconsistent dependencies with same ID", (t) => { return projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { id: "application.a", + kind: "project", version: "1.0.0", specVersion: "0.1", path: applicationAPath, @@ -275,6 +332,7 @@ test("Inconsistent dependencies with same ID", (t) => { dependencies: [ { id: "library.d", + kind: "project", version: "1.0.0", specVersion: "0.1", path: libraryDPath, @@ -299,6 +357,7 @@ test("Inconsistent dependencies with same ID", (t) => { dependencies: [ { id: "library.a", + kind: "project", version: "1.0.0", specVersion: "0.1", path: libraryAPath, @@ -326,6 +385,7 @@ test("Inconsistent dependencies with same ID", (t) => { }, { id: "library.a", + kind: "project", version: "1.0.0", specVersion: "0.1", path: libraryAPath, @@ -498,6 +558,7 @@ const treeAWithDefaultYamls = { const expectedTreeAWithInlineConfigs = { "id": "application.a", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": applicationAPath, @@ -519,6 +580,7 @@ const expectedTreeAWithInlineConfigs = { "dependencies": [ { "id": "library.d", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryDPath, @@ -543,6 +605,7 @@ const expectedTreeAWithInlineConfigs = { "dependencies": [ { "id": "library.a", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryAPath, @@ -570,6 +633,7 @@ const expectedTreeAWithInlineConfigs = { }, { "id": "library.a", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryAPath, @@ -600,6 +664,7 @@ const expectedTreeAWithDefaultYamls = expectedTreeAWithInlineConfigs; // This is expectedTreeAWithInlineConfigs with added configPath attributes const expectedTreeAWithConfigPaths = { "id": "application.a", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": applicationAPath, @@ -622,6 +687,7 @@ const expectedTreeAWithConfigPaths = { "dependencies": [ { "id": "library.d", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryDPath, @@ -647,6 +713,7 @@ const expectedTreeAWithConfigPaths = { "dependencies": [ { "id": "library.a", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryAPath, @@ -675,6 +742,7 @@ const expectedTreeAWithConfigPaths = { }, { "id": "library.a", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryAPath, @@ -792,6 +860,7 @@ const treeBWithInlineConfigs = { const expectedTreeBWithInlineConfigs = { "id": "application.b", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": applicationBPath, @@ -814,6 +883,7 @@ const expectedTreeBWithInlineConfigs = { "dependencies": [ { "id": "library.b", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryBPath, @@ -838,6 +908,7 @@ const expectedTreeBWithInlineConfigs = { "dependencies": [ { "id": "library.d", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryDPath, @@ -862,6 +933,7 @@ const expectedTreeBWithInlineConfigs = { "dependencies": [ { "id": "library.a", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryAPath, @@ -891,6 +963,7 @@ const expectedTreeBWithInlineConfigs = { }, { "id": "library.d", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryDPath, @@ -915,6 +988,7 @@ const expectedTreeBWithInlineConfigs = { "dependencies": [ { "id": "library.a", + "kind": "project", "version": "1.0.0", "specVersion": "0.1", "path": libraryAPath, From 309316fbb2478024904ce14d57dc0bda996bb0f8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 8 Oct 2018 10:46:55 +0200 Subject: [PATCH 0045/1272] [ui5-project][FEATURE] Add shim extension --- packages/project/lib/projectPreprocessor.js | 114 +++++++++++++- .../node_modules/library.f/package.json | 11 ++ .../node_modules/library.f/ui5.yaml | 5 + .../fixtures/legacy.library.a/package.json | 10 ++ .../src/legacy/library/a/.library | 11 ++ .../src/legacy/library/a/some.js | 4 + .../test/legacy/library/a/Test.html | 0 packages/project/test/lib/extensions.js | 144 ++++++++++++++++++ .../project/test/lib/projectPreprocessor.js | 52 +------ 9 files changed, 297 insertions(+), 54 deletions(-) create mode 100644 packages/project/test/fixtures/legacy.library.a/node_modules/library.f/package.json create mode 100644 packages/project/test/fixtures/legacy.library.a/node_modules/library.f/ui5.yaml create mode 100644 packages/project/test/fixtures/legacy.library.a/package.json create mode 100644 packages/project/test/fixtures/legacy.library.a/src/legacy/library/a/.library create mode 100644 packages/project/test/fixtures/legacy.library.a/src/legacy/library/a/some.js create mode 100644 packages/project/test/fixtures/legacy.library.a/test/legacy/library/a/Test.html create mode 100644 packages/project/test/lib/extensions.js diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index f4f0520c151..7bb274ee424 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -9,6 +9,8 @@ const typeRepository = require("@ui5/builder").types.typeRepository; class ProjectPreprocessor { constructor() { this.processedProjects = {}; + this.configShims = {}; + this.collections = {}; } /* @@ -64,7 +66,7 @@ class ProjectPreprocessor { } await this.loadProjectConfiguration(project); - // this.applyShims(project); // shims not yet implemented + this.applyShims(project); if (this.isConfigValid(project)) { await this.applyType(project); queue.push({ @@ -292,8 +294,20 @@ class ProjectPreprocessor { await type.format(project); } - async applyExtension(project) { - // TOOD + async applyExtension(extension) { + log.verbose(`Applying extension ${extension.id}...`); + + if (!extension.metadata || !extension.metadata.name) { + throw new Error(`metadata.name configuration is missing for extension ${extension.id}`); + } // TODO: more checks? Version? + + switch (extension.type) { + case "project-shim": + this.handleShim(extension); + break; + default: + throw new Error(`Unknown extension type '${extension.type}' for ${extension.id}`); + } } async readConfigFile(configPath) { @@ -302,6 +316,100 @@ class ProjectPreprocessor { filename: path }); } + + handleShim(extension) { + if (extension.configurations) { + const configurations = extension.configurations; + log.verbose(`Project shim ${extension.id} contains ` + + `${Object.keys(configurations)} configuration(s)`); + for (let projectId in configurations) { + if (configurations.hasOwnProperty(projectId)) { + this.normalizeConfig(configurations[projectId]); // TODO: Clone object beforehand? + if (this.configShims[projectId]) { + log.verbose(`Project shim ${extension.id}: A configuration shim for project ${projectId} `+ + "has already been applied. Skipping."); + } else if (this.isConfigValid(configurations[projectId])) { + log.verbose(`Project shim ${extension.id}: Adding project configuration for ${projectId}...`); + this.configShims[projectId] = configurations[projectId]; + } else { + log.verbose(`Project shim ${extension.id}: Ignoring invalid ` + + `configuration shim for project ${projectId}`); + } + } + } + } + + if (extension.dependencies) { + // For the time being, shimmed dependencies only apply to shimmed project configurations + const dependencies = extension.dependencies; + for (let projectId in dependencies) { + if (dependencies.hasOwnProperty(projectId)) { + if (this.configShims[projectId]) { + log.verbose(`Project shim ${extension.id}: Adding dependencies ` + + `to project shim '${projectId}'...`); + this.configShims[projectId].dependencies = dependencies[projectId]; + } else { + log.verbose(`Project shim ${extension.id}: No configuration shim found for ` + + `project ID '${projectId}'. Dependency shims currently only apply ` + + "to projects with configuration shims."); + } + } + } + } + + if (extension.collections) { + const collections = extension.collections; + log.verbose(`Project shim ${extension.id} contains ` + + `${Object.keys(collections)} collection(s)`); + for (let projectId in collections) { + if (collections.hasOwnProperty(projectId)) { + if (this.collections[projectId]) { + log.verbose(`Project shim ${extension.id}: A collection with id '${projectId}' `+ + "is already known. Skipping."); + } else { + log.verbose(`Project shim ${extension.id}: Adding collection with id '${projectId}'...`); + this.collections[projectId] = collections[projectId]; + } + } + } + } + } + + applyShims(project) { + // Apply configuration shims + if (this.configShims[project.id]) { + log.verbose(`Applying configuration shim for project ${project.id}...`); + const configShim = JSON.parse(JSON.stringify(this.configShims[project.id])); + Object.assign(project, configShim); + } + + // Apply collections + for (let i = project.dependencies.length - 1; i >= 0; i--) { + const depId = project.dependencies[i]; + if (this.collections[depId]) { + log.verbose(`Project ${project.id} depends on collection ${depId}. Resolving...`); + // This project contains on a collection + // => replace collection dependency with first collection project. + const collectionDep = project.dependencies[i]; + const collection = this.collections[depId]; + const projects = []; + for (let projectId in collection) { + if (collection.hasOwnProperty(projectId)) { + // Clone and modify collection "project" + const project = JSON.parse(JSON.stringify(collectionDep)); + project.id = projectId; + project.path = path.join(project.path, collection[projectId]); + projects.push(project); + } + } + + // Use first collection project to replace the collection dependency + project.dependencies[i] = projects.shift(); + // Add any additional collection projects to end of dependency array (already processed) + project.dependencies.push(...projects); + } + } + } } /** diff --git a/packages/project/test/fixtures/legacy.library.a/node_modules/library.f/package.json b/packages/project/test/fixtures/legacy.library.a/node_modules/library.f/package.json new file mode 100644 index 00000000000..d8f009d42d7 --- /dev/null +++ b/packages/project/test/fixtures/legacy.library.a/node_modules/library.f/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.f", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for circular dependencies", + "dependencies": { + "library.g": "file:../library.g" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/legacy.library.a/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/legacy.library.a/node_modules/library.f/ui5.yaml new file mode 100644 index 00000000000..38440bacbc6 --- /dev/null +++ b/packages/project/test/fixtures/legacy.library.a/node_modules/library.f/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.f diff --git a/packages/project/test/fixtures/legacy.library.a/package.json b/packages/project/test/fixtures/legacy.library.a/package.json new file mode 100644 index 00000000000..d88840fbbb0 --- /dev/null +++ b/packages/project/test/fixtures/legacy.library.a/package.json @@ -0,0 +1,10 @@ +{ + "name": "legacy.library.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - legacy library missing ui5.yaml", + "devDependencies": { + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/legacy.library.a/src/legacy/library/a/.library b/packages/project/test/fixtures/legacy.library.a/src/legacy/library/a/.library new file mode 100644 index 00000000000..432c95e95db --- /dev/null +++ b/packages/project/test/fixtures/legacy.library.a/src/legacy/library/a/.library @@ -0,0 +1,11 @@ + + + + legacy.library.a + SAP SE + ${copyright} + ${version} + + Legacy Library A + + diff --git a/packages/project/test/fixtures/legacy.library.a/src/legacy/library/a/some.js b/packages/project/test/fixtures/legacy.library.a/src/legacy/library/a/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/legacy.library.a/src/legacy/library/a/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/legacy.library.a/test/legacy/library/a/Test.html b/packages/project/test/fixtures/legacy.library.a/test/legacy/library/a/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js new file mode 100644 index 00000000000..8926e7ecc3b --- /dev/null +++ b/packages/project/test/lib/extensions.js @@ -0,0 +1,144 @@ +const {test} = require("ava"); +const path = require("path"); +const projectPreprocessor = require("../..").projectPreprocessor; +const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); +const legacyLibraryAPath = path.join(__dirname, "..", "fixtures", "legacy.library.a"); + +test("Projects with extension dependency inline configuration", (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + configurations: { + "legacy.library.a": { + specVersion: "0.1", + type: "library", + metadata: { + name: "legacy.library.a", + } + } + } + }, { + id: "legacy.library.a", + version: "1.0.0", + path: legacyLibraryAPath, + dependencies: [] + }], + version: "1.0.0", + specVersion: "0.1", + type: "application", + metadata: { + name: "xy" + } + }; + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + _level: 0, + type: "application", + metadata: { + name: "xy", + }, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + }, + pathMappings: { + "/": "webapp", + } + }, + dependencies: [{ + id: "legacy.library.a", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: legacyLibraryAPath, + _level: 1, + type: "library", + metadata: { + name: "legacy.library.a", + copyright: "${copyright}", + }, + resources: { + configuration: { + paths: { + src: "src", + test: "test" + } + }, + pathMappings: { + "/resources/": "src", + "/test-resources/": "test" + } + }, + dependencies: [] + }], + id: "application.a", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath + }, "Parsed correctly"); + }); +}); + +test("Projects with extension dependency inline configuration", (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "project-type", + metadata: { + name: "z" + } + }], + version: "1.0.0", + specVersion: "0.1", + type: "z", + metadata: { + name: "xy" + } + }; + return t.throws(projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + _level: 0, + type: "z", + metadata: { + name: "xy", + }, + resources: { + configuration: { + paths: { + root: "" + } + }, + pathMappings: { + "/": "", + } + }, + dependencies: [], + id: "application.a", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath + }, "Parsed correctly"); + }), "Unknown extension type 'project-type' for extension.a", "Rejected with error"); +}); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 972fa820db5..20a31455dab 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -48,57 +48,6 @@ test("Project with inline configuration", (t) => { }); }); -test("Projects with extension dependency inline configuration", (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "project-type", - metadata: { - name: "z" - } - }], - version: "1.0.0", - specVersion: "0.1", - type: "application", - metadata: { - name: "xy" - } - }; - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - _level: 0, - type: "application", - metadata: { - name: "xy", - }, - resources: { - configuration: { - paths: { - webapp: "webapp" - } - }, - pathMappings: { - "/": "webapp", - } - }, - dependencies: [], - id: "application.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: applicationAPath - }, "Parsed correctly"); - }); -}); - - test("Project with configPath", (t) => { const tree = { id: "application.a", @@ -1036,6 +985,7 @@ test("Library version in package.json data is missing", (t) => { const tree = { id: "library.d", path: libraryDPath, + dependencies: [], type: "library", metadata: { name: "library.d" From ba226e6aea65e545bd5592040c826d6a29714228 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 8 Oct 2018 10:47:08 +0200 Subject: [PATCH 0046/1272] [ui5-project][INTERNAL] Apply extensions found in root project --- packages/project/lib/projectPreprocessor.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 7bb274ee424..ff2e697914c 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -65,7 +65,15 @@ class ProjectPreprocessor { await this.dependencyLookahead(project, project.dependencies); } - await this.loadProjectConfiguration(project); + const {extensions} = await this.loadProjectConfiguration(project); + if (extensions && extensions.length) { + // Project contains additional extensions + // => apply them + // TODO: Check whether extensions get applied twice in case depLookahead already processed them + await Promise.all(extensions.map((extProject) => { + return this.applyExtension(extProject); + })); + } this.applyShims(project); if (this.isConfigValid(project)) { await this.applyType(project); @@ -232,6 +240,7 @@ class ProjectPreprocessor { // Enhance project with its configuration Object.assign(configuredProject, config); + return configuredProject; }); return {extensions: extensionProjects}; From 2f890a7b34cc6f93760dba8a8d63e972885336ff Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 8 Oct 2018 10:47:21 +0200 Subject: [PATCH 0047/1272] [ui5-project][INTERNAL] Apply extensions only once Also enhance extension metadata checks --- packages/project/lib/projectPreprocessor.js | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index ff2e697914c..ffc5dd49e2d 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -11,6 +11,7 @@ class ProjectPreprocessor { this.processedProjects = {}; this.configShims = {}; this.collections = {}; + this.appliedExtensions = {}; } /* @@ -304,11 +305,25 @@ class ProjectPreprocessor { } async applyExtension(extension) { - log.verbose(`Applying extension ${extension.id}...`); - if (!extension.metadata || !extension.metadata.name) { throw new Error(`metadata.name configuration is missing for extension ${extension.id}`); - } // TODO: more checks? Version? + } + log.verbose(`Applying extension ${extension.metadata.name}...`); + + if (!extension.specVersion) { + throw new Error(`No specification version defined for extension ${extension.metadata.name}`); + } else if (extension.specVersion !== "0.1") { + throw new Error( + `Invalid specification version defined for extension ${extension.metadata.name}: ` + + `${extension.specVersion}. The currently only allowed version is "0.1"`); + } else if (this.appliedExtensions[extension.metadata.name]) { + log.verbose(`Extension with the name ${extension.metadata.name} has already been applied. ` + + "This might have been done during dependency lookahead."); + log.verbose(`Already applied extension ID: ${this.appliedExtensions[extension.metadata.name].id}. ` + + `New extension ID: ${extension.id}`); + return; + } + this.appliedExtensions[extension.metadata.name] = extension; switch (extension.type) { case "project-shim": From 81f8ac6dfaca8295c39b8cde6e03d6ad73be3e37 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 14 Oct 2018 13:24:54 +0200 Subject: [PATCH 0048/1272] [ui5-project][INTERNAL] Add missing cross-env dependency Used in npm scripts. Already a dependency in all other tooling modules --- packages/project/package-lock.json | 89 +++++++++++++++--------------- packages/project/package.json | 1 + 2 files changed, 46 insertions(+), 44 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4c255ff0d98..4a4231fe778 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1430,7 +1430,7 @@ }, "bl": { "version": "1.2.2", - "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "requires": { "readable-stream": "^2.3.5", @@ -1935,7 +1935,7 @@ }, "commander": { "version": "2.0.0", - "resolved": "http://registry.npmjs.org/commander/-/commander-2.0.0.tgz", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", "optional": true }, @@ -2107,6 +2107,31 @@ "capture-stack-trace": "^1.0.0" } }, + "cross-env": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", + "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.5", + "is-windows": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } + } + }, "cross-spawn": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", @@ -2671,7 +2696,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -3176,8 +3201,7 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", @@ -3198,14 +3222,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3220,20 +3242,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -3350,8 +3369,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -3363,7 +3381,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3378,7 +3395,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3386,14 +3402,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -3412,7 +3426,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -3493,8 +3506,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -3506,7 +3518,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -3592,8 +3603,7 @@ "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -3629,7 +3639,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3649,7 +3658,6 @@ "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3693,14 +3701,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true } } }, @@ -5090,7 +5096,7 @@ }, "mkdirp": { "version": "0.3.5", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", "optional": true }, @@ -5240,7 +5246,6 @@ "version": "0.1.4", "bundled": true, "dev": true, - "optional": true, "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -5562,8 +5567,7 @@ "is-buffer": { "version": "1.1.6", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "is-builtin-module": { "version": "1.0.0", @@ -5647,7 +5651,6 @@ "version": "3.2.2", "bundled": true, "dev": true, - "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -5694,8 +5697,7 @@ "longest": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "lru-cache": { "version": "4.1.3", @@ -5961,8 +5963,7 @@ "repeat-string": { "version": "1.6.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "require-directory": { "version": "2.1.1", @@ -7794,7 +7795,7 @@ }, "through": { "version": "2.3.8", - "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", "dev": true }, @@ -8256,7 +8257,7 @@ "dependencies": { "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { diff --git a/packages/project/package.json b/packages/project/package.json index 5bc7145fd5d..4e5768cccc6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -104,6 +104,7 @@ "devDependencies": { "ava": "^0.25.0", "coveralls": "^3.0.1", + "cross-env": "^5.2.0", "docdash": "^1.0.0", "eslint": "^5.0.1", "eslint-config-google": "^0.10.0", From 5c06706539c9b7dcdf0c26891b924f222889ec5e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 14 Oct 2018 14:15:01 +0200 Subject: [PATCH 0049/1272] [ui5-project][INTERNAL] Add addt'l project-shim extension tests And fix shimed dependency and collection handling --- packages/project/lib/projectPreprocessor.js | 54 ++- .../node_modules/library.f/package.json | 11 + .../node_modules/library.f/ui5.yaml | 5 + .../src/legacy.library.x/package.json | 10 + .../src/legacy/library/x/.library | 11 + .../src/legacy/library/x/some.js | 4 + .../test/legacy/library/x/Test.html | 0 .../node_modules/library.f/package.json | 11 + .../node_modules/library.f/ui5.yaml | 5 + .../src/legacy.library.y/package.json | 10 + .../src/legacy/library/y/.library | 11 + .../src/legacy/library/y/some.js | 4 + .../test/legacy/library/y/Test.html | 0 .../node_modules/library.f/package.json | 11 + .../node_modules/library.f/ui5.yaml | 5 + .../fixtures/legacy.library.b/package.json | 10 + .../src/legacy/library/b/.library | 11 + .../src/legacy/library/b/some.js | 4 + .../test/legacy/library/b/Test.html | 0 packages/project/test/lib/extensions.js | 379 +++++++++++++++++- 20 files changed, 533 insertions(+), 23 deletions(-) create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/package.json create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/ui5.yaml create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/package.json create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/src/legacy/library/x/.library create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/src/legacy/library/x/some.js create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/test/legacy/library/x/Test.html create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/package.json create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/ui5.yaml create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/package.json create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/src/legacy/library/y/.library create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/src/legacy/library/y/some.js create mode 100644 packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/test/legacy/library/y/Test.html create mode 100644 packages/project/test/fixtures/legacy.library.b/node_modules/library.f/package.json create mode 100644 packages/project/test/fixtures/legacy.library.b/node_modules/library.f/ui5.yaml create mode 100644 packages/project/test/fixtures/legacy.library.b/package.json create mode 100644 packages/project/test/fixtures/legacy.library.b/src/legacy/library/b/.library create mode 100644 packages/project/test/fixtures/legacy.library.b/src/legacy/library/b/some.js create mode 100644 packages/project/test/fixtures/legacy.library.b/test/legacy/library/b/Test.html diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index ffc5dd49e2d..02fb006cd1f 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -342,8 +342,9 @@ class ProjectPreprocessor { } handleShim(extension) { - if (extension.configurations) { - const configurations = extension.configurations; + const {configurations, dependencies, collections} = extension.shims; + + if (configurations) { log.verbose(`Project shim ${extension.id} contains ` + `${Object.keys(configurations)} configuration(s)`); for (let projectId in configurations) { @@ -363,9 +364,8 @@ class ProjectPreprocessor { } } - if (extension.dependencies) { + if (dependencies) { // For the time being, shimmed dependencies only apply to shimmed project configurations - const dependencies = extension.dependencies; for (let projectId in dependencies) { if (dependencies.hasOwnProperty(projectId)) { if (this.configShims[projectId]) { @@ -381,10 +381,9 @@ class ProjectPreprocessor { } } - if (extension.collections) { - const collections = extension.collections; + if (collections) { log.verbose(`Project shim ${extension.id} contains ` + - `${Object.keys(collections)} collection(s)`); + `${Object.keys(collections).length} collection(s)`); for (let projectId in collections) { if (collections.hasOwnProperty(projectId)) { if (this.collections[projectId]) { @@ -400,29 +399,54 @@ class ProjectPreprocessor { } applyShims(project) { + const configShim = this.configShims[project.id]; // Apply configuration shims - if (this.configShims[project.id]) { + if (configShim) { log.verbose(`Applying configuration shim for project ${project.id}...`); - const configShim = JSON.parse(JSON.stringify(this.configShims[project.id])); + + if (configShim.dependencies && configShim.dependencies.length) { + if (!configShim.shimDependenciesResolved) { + configShim.dependencies = configShim.dependencies.map((depId) => { + const depProject = this.processedProjects[depId].project; + if (!depProject) { + throw new Error( + `Failed to resolve shimmed dependency '${depId}' for project ${project.id}. ` + + `Is a dependency with ID '${depId}' part of the dependency tree?`); + } + return depProject; + }); + configShim.shimDependenciesResolved = true; + } + configShim.dependencies.forEach((depProject) => { + const parents = this.processedProjects[depProject.id].parents; + if (parents.indexOf(project) === -1) { + parents.push(project); + } else { + log.verbose(`Project ${project.id} is already parent of shimmed dependency ${depProject.id}`); + } + }); + } + Object.assign(project, configShim); + delete project.shimDependenciesResolved; // Remove shim processing metadata from project } // Apply collections for (let i = project.dependencies.length - 1; i >= 0; i--) { - const depId = project.dependencies[i]; + const depId = project.dependencies[i].id; if (this.collections[depId]) { log.verbose(`Project ${project.id} depends on collection ${depId}. Resolving...`); - // This project contains on a collection + // This project depends on a collection // => replace collection dependency with first collection project. const collectionDep = project.dependencies[i]; - const collection = this.collections[depId]; + const collectionModules = this.collections[depId].modules; const projects = []; - for (let projectId in collection) { - if (collection.hasOwnProperty(projectId)) { + for (let projectId in collectionModules) { + if (collectionModules.hasOwnProperty(projectId)) { // Clone and modify collection "project" const project = JSON.parse(JSON.stringify(collectionDep)); project.id = projectId; - project.path = path.join(project.path, collection[projectId]); + project.path = path.join(project.path, collectionModules[projectId]); projects.push(project); } } diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/package.json b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/package.json new file mode 100644 index 00000000000..d8f009d42d7 --- /dev/null +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.f", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for circular dependencies", + "dependencies": { + "library.g": "file:../library.g" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/ui5.yaml new file mode 100644 index 00000000000..38440bacbc6 --- /dev/null +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.f diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/package.json b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/package.json new file mode 100644 index 00000000000..d90b72ffa99 --- /dev/null +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/package.json @@ -0,0 +1,10 @@ +{ + "name": "legacy.library.x", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - legacy library missing ui5.yaml", + "devDependencies": { + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/src/legacy/library/x/.library b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/src/legacy/library/x/.library new file mode 100644 index 00000000000..af7a248dd3c --- /dev/null +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/src/legacy/library/x/.library @@ -0,0 +1,11 @@ + + + + legacy.library.x + SAP SE + ${copyright} + ${version} + + Legacy Library X + + diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/src/legacy/library/x/some.js b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/src/legacy/library/x/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/src/legacy/library/x/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/test/legacy/library/x/Test.html b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/test/legacy/library/x/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/package.json b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/package.json new file mode 100644 index 00000000000..d8f009d42d7 --- /dev/null +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.f", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for circular dependencies", + "dependencies": { + "library.g": "file:../library.g" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/ui5.yaml new file mode 100644 index 00000000000..38440bacbc6 --- /dev/null +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.f diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/package.json b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/package.json new file mode 100644 index 00000000000..a46d2e8f452 --- /dev/null +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/package.json @@ -0,0 +1,10 @@ +{ + "name": "legacy.library.y", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - legacy library missing ui5.yaml", + "devDependencies": { + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/src/legacy/library/y/.library b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/src/legacy/library/y/.library new file mode 100644 index 00000000000..6c70bac8492 --- /dev/null +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/src/legacy/library/y/.library @@ -0,0 +1,11 @@ + + + + legacy.library.y + SAP SE + ${copyright} + ${version} + + Legacy Library Y + + diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/src/legacy/library/y/some.js b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/src/legacy/library/y/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/src/legacy/library/y/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/test/legacy/library/y/Test.html b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/test/legacy/library/y/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/legacy.library.b/node_modules/library.f/package.json b/packages/project/test/fixtures/legacy.library.b/node_modules/library.f/package.json new file mode 100644 index 00000000000..d8f009d42d7 --- /dev/null +++ b/packages/project/test/fixtures/legacy.library.b/node_modules/library.f/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.f", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for circular dependencies", + "dependencies": { + "library.g": "file:../library.g" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/legacy.library.b/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/legacy.library.b/node_modules/library.f/ui5.yaml new file mode 100644 index 00000000000..38440bacbc6 --- /dev/null +++ b/packages/project/test/fixtures/legacy.library.b/node_modules/library.f/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.f diff --git a/packages/project/test/fixtures/legacy.library.b/package.json b/packages/project/test/fixtures/legacy.library.b/package.json new file mode 100644 index 00000000000..643d8019f7d --- /dev/null +++ b/packages/project/test/fixtures/legacy.library.b/package.json @@ -0,0 +1,10 @@ +{ + "name": "legacy.library.b", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - legacy library missing ui5.yaml", + "devDependencies": { + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/legacy.library.b/src/legacy/library/b/.library b/packages/project/test/fixtures/legacy.library.b/src/legacy/library/b/.library new file mode 100644 index 00000000000..0a8645fd7d1 --- /dev/null +++ b/packages/project/test/fixtures/legacy.library.b/src/legacy/library/b/.library @@ -0,0 +1,11 @@ + + + + legacy.library.b + SAP SE + ${copyright} + ${version} + + Legacy Library B + + diff --git a/packages/project/test/fixtures/legacy.library.b/src/legacy/library/b/some.js b/packages/project/test/fixtures/legacy.library.b/src/legacy/library/b/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/legacy.library.b/src/legacy/library/b/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/legacy.library.b/test/legacy/library/b/Test.html b/packages/project/test/fixtures/legacy.library.b/test/legacy/library/b/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 8926e7ecc3b..3ce6c4d885b 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -3,8 +3,14 @@ const path = require("path"); const projectPreprocessor = require("../..").projectPreprocessor; const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); const legacyLibraryAPath = path.join(__dirname, "..", "fixtures", "legacy.library.a"); +const legacyLibraryBPath = path.join(__dirname, "..", "fixtures", "legacy.library.b"); +const legacyCollectionAPath = path.join(__dirname, "..", "fixtures", "legacy.collection.a"); +const legacyCollectionLibraryX = path.join(__dirname, "..", "fixtures", "legacy.collection.a", + "src", "legacy.library.x"); +const legacyCollectionLibraryY = path.join(__dirname, "..", "fixtures", "legacy.collection.a", + "src", "legacy.library.y"); -test("Projects with extension dependency inline configuration", (t) => { +test("Project with project-shim extension with dependency configuration", (t) => { const tree = { id: "application.a", path: applicationAPath, @@ -19,12 +25,14 @@ test("Projects with extension dependency inline configuration", (t) => { metadata: { name: "shims.a" }, - configurations: { - "legacy.library.a": { - specVersion: "0.1", - type: "library", - metadata: { - name: "legacy.library.a", + shims: { + configurations: { + "legacy.library.a": { + specVersion: "0.1", + type: "library", + metadata: { + name: "legacy.library.a", + } } } } @@ -41,6 +49,7 @@ test("Projects with extension dependency inline configuration", (t) => { name: "xy" } }; + return projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, @@ -93,7 +102,334 @@ test("Projects with extension dependency inline configuration", (t) => { }); }); -test("Projects with extension dependency inline configuration", (t) => { +test("Project with project-shim extension with dependency declaration and configuration", (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: { + configurations: { + "legacy.library.a": { + specVersion: "0.1", + type: "library", + metadata: { + name: "legacy.library.a", + } + }, + "legacy.library.b": { + specVersion: "0.1", + type: "library", + metadata: { + name: "legacy.library.b", + } + } + }, + dependencies: { + "legacy.library.a": [ + "legacy.library.b" + ] + } + } + }, { + id: "legacy.library.a", + version: "1.0.0", + path: legacyLibraryAPath, + dependencies: [] + }, { + id: "legacy.library.b", + version: "1.0.0", + path: legacyLibraryBPath, + dependencies: [] + }], + version: "1.0.0", + specVersion: "0.1", + type: "application", + metadata: { + name: "xy" + } + }; + // application.a and legacy.library.a will both have a dependency to legacy.library.b + // (one because it's the actual dependency and one because it's a shimmed dependency) + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + _level: 0, + type: "application", + metadata: { + name: "xy", + }, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + }, + pathMappings: { + "/": "webapp", + } + }, + dependencies: [{ + id: "legacy.library.a", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: legacyLibraryAPath, + _level: 1, + type: "library", + metadata: { + name: "legacy.library.a", + copyright: "${copyright}", + }, + resources: { + configuration: { + paths: { + src: "src", + test: "test" + } + }, + pathMappings: { + "/resources/": "src", + "/test-resources/": "test" + } + }, + dependencies: [{ + id: "legacy.library.b", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: legacyLibraryBPath, + _level: 1, + type: "library", + metadata: { + name: "legacy.library.b", + copyright: "${copyright}", + }, + resources: { + configuration: { + paths: { + src: "src", + test: "test" + } + }, + pathMappings: { + "/resources/": "src", + "/test-resources/": "test" + } + }, + dependencies: [] + }] + }, { + id: "legacy.library.b", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: legacyLibraryBPath, + _level: 1, + type: "library", + metadata: { + name: "legacy.library.b", + copyright: "${copyright}", + }, + resources: { + configuration: { + paths: { + src: "src", + test: "test" + } + }, + pathMappings: { + "/resources/": "src", + "/test-resources/": "test" + } + }, + dependencies: [] + }], + id: "application.a", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath + }, "Parsed correctly"); + }); +}); + +test("Project with project-shim extension with collection", (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: { + configurations: { + "legacy.library.x": { + specVersion: "0.1", + type: "library", + metadata: { + name: "legacy.library.x", + } + }, + "legacy.library.y": { + specVersion: "0.1", + type: "library", + metadata: { + name: "legacy.library.y", + } + } + }, + dependencies: { + "application.a": [ + "legacy.library.x", + "legacy.library.y" + ], + "legacy.library.x": [ + "legacy.library.y" + ] + }, + collections: { + "legacy.collection.a": { + modules: { + "legacy.library.x": "src/legacy.library.x", + "legacy.library.y": "src/legacy.library.y" + } + } + } + } + }, { + id: "legacy.collection.a", + version: "1.0.0", + path: legacyCollectionAPath, + dependencies: [] + }], + version: "1.0.0", + specVersion: "0.1", + type: "application", + metadata: { + name: "xy" + } + }; + + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + _level: 0, + type: "application", + metadata: { + name: "xy", + }, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + }, + pathMappings: { + "/": "webapp", + } + }, + dependencies: [{ + id: "legacy.library.x", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: legacyCollectionLibraryX, + _level: 1, + type: "library", + metadata: { + name: "legacy.library.x", + copyright: "${copyright}", + }, + resources: { + configuration: { + paths: { + src: "src", + test: "test" + } + }, + pathMappings: { + "/resources/": "src", + "/test-resources/": "test" + } + }, + dependencies: [{ + id: "legacy.library.y", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: legacyCollectionLibraryY, + _level: 1, + type: "library", + metadata: { + name: "legacy.library.y", + copyright: "${copyright}", + }, + resources: { + configuration: { + paths: { + src: "src", + test: "test" + } + }, + pathMappings: { + "/resources/": "src", + "/test-resources/": "test" + } + }, + dependencies: [] + }] + }, { + id: "legacy.library.y", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: legacyCollectionLibraryY, + _level: 1, + type: "library", + metadata: { + name: "legacy.library.y", + copyright: "${copyright}", + }, + resources: { + configuration: { + paths: { + src: "src", + test: "test" + } + }, + pathMappings: { + "/resources/": "src", + "/test-resources/": "test" + } + }, + dependencies: [] + }], + id: "application.a", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath + }, "Parsed correctly"); + }); +}); + +test("Project with project-type extension dependency inline configuration", (t) => { + // "project-type" extension handling not yet implemented => test currently checks for error const tree = { id: "application.a", path: applicationAPath, @@ -142,3 +478,30 @@ test("Projects with extension dependency inline configuration", (t) => { }, "Parsed correctly"); }), "Unknown extension type 'project-type' for extension.a", "Rejected with error"); }); + +test("Project with unknown extension dependency inline configuration", (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "phony-pony", + metadata: { + name: "pinky.pie" + } + }], + version: "1.0.0", + specVersion: "0.1", + type: "application", + metadata: { + name: "xy" + } + }; + return t.throws(projectPreprocessor.processTree(tree), + "Unknown extension type 'phony-pony' for extension.a", "Rejected with error"); +}); From 4e31e1486bec4aeebf1f47183c9e8d45cb582eae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 29 Oct 2018 17:14:29 +0000 Subject: [PATCH 0050/1272] [ui5-project]Bump @ui5/logger from 0.2.0 to 0.2.1 Bumps [@ui5/logger](https://github.com/SAP/ui5-logger) from 0.2.0 to 0.2.1. - [Release notes](https://github.com/SAP/ui5-logger/releases) - [Changelog](https://github.com/SAP/ui5-logger/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-logger/compare/v0.2.0...v0.2.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 58 +++++++++++++++++++++--------- 1 file changed, 41 insertions(+), 17 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4a4231fe778..4462a769b53 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -315,9 +315,9 @@ } }, "@ui5/logger": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.2.0.tgz", - "integrity": "sha512-LCH8ytK3+eYjnBM2QaRLQjb7iKUGgqsHOgPKHf2ps0UVIZ9moRyTMAaZTizgktiIfSGDbvpswDV7MrKyUH5QBQ==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.2.1.tgz", + "integrity": "sha512-hhZSGF/CSbKlEojS847QLaDTJKsFVvk8AN9b8rNoUyzQh1V0MaVAGQiGEnq5LbBC1vRSZwZT8H+oEDl01PVa6w==", "requires": { "npmlog": "^4.1.2" } @@ -3201,7 +3201,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -3222,12 +3223,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3242,17 +3245,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3369,7 +3375,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3381,6 +3388,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3395,6 +3403,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3402,12 +3411,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -3426,6 +3437,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3506,7 +3518,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3518,6 +3531,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3603,7 +3617,8 @@ "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3639,6 +3654,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3658,6 +3674,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3701,12 +3718,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -5246,6 +5265,7 @@ "version": "0.1.4", "bundled": true, "dev": true, + "optional": true, "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -5567,7 +5587,8 @@ "is-buffer": { "version": "1.1.6", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "is-builtin-module": { "version": "1.0.0", @@ -5651,6 +5672,7 @@ "version": "3.2.2", "bundled": true, "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -5697,7 +5719,8 @@ "longest": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "lru-cache": { "version": "4.1.3", @@ -5963,7 +5986,8 @@ "repeat-string": { "version": "1.6.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "require-directory": { "version": "2.1.1", From 27d52d28a804e6966401ee165ee657cd4b90cb62 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 29 Oct 2018 18:17:40 +0000 Subject: [PATCH 0051/1272] [ui5-project]Bump @ui5/builder from 0.2.3 to 0.2.4 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 0.2.3 to 0.2.4. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v0.2.3...v0.2.4) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4462a769b53..b0463bc2eb5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -275,9 +275,9 @@ } }, "@ui5/builder": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.3.tgz", - "integrity": "sha512-BlOwMGJTXze1CHYRUDW3i/3C9T/a4Mg6Yn39/X4doMiT21U5CupcIf0roSMcMb+DtaaP9hWEiUquGUiLuoR+sA==", + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.4.tgz", + "integrity": "sha512-Rg6JzAfJr51xZpHruOltMr+MDy594/HgEEpN8uOZL7DysAdC0tjNaL4tiaafS/AGDpyVDkkbvH6eA2NlIyy3MQ==", "requires": { "@ui5/fs": "^0.2.0", "@ui5/logger": "^0.2.0", @@ -1430,7 +1430,7 @@ }, "bl": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "requires": { "readable-stream": "^2.3.5", @@ -1935,7 +1935,7 @@ }, "commander": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", + "resolved": "http://registry.npmjs.org/commander/-/commander-2.0.0.tgz", "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", "optional": true }, @@ -5115,7 +5115,7 @@ }, "mkdirp": { "version": "0.3.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", "optional": true }, @@ -7186,7 +7186,7 @@ }, "safe-regex": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "requires": { "ret": "~0.1.10" @@ -8350,7 +8350,7 @@ }, "xmlbuilder": { "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" }, "xmlcreate": { From f6a6bc2539f229a9eb27da338ecde47bd281af0b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 29 Oct 2018 18:26:18 +0000 Subject: [PATCH 0052/1272] [ui5-project]Release 0.2.1 --- packages/project/CHANGELOG.md | 21 +++++++++++++++++++-- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index ea5515e5d32..8ddc0b49541 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,13 +2,29 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.1...HEAD). + + +## [v0.2.1] - 2018-10-29 +### Features +- Add shim extension [`93c9b39`](https://github.com/SAP/ui5-project/commit/93c9b3960ca36f240c5f8453a89f72792a01fe92) +- Add "extension" projects [`476b785`](https://github.com/SAP/ui5-project/commit/476b785810d6993d2a3e21707ffa67e568e67eac) + +### Internal Changes +- Add addt'l project-shim extension tests [`e0ecb7f`](https://github.com/SAP/ui5-project/commit/e0ecb7f6a0da334f423a1267c310e687b9854724) +- Add missing cross-env dependency [`0f2bd76`](https://github.com/SAP/ui5-project/commit/0f2bd76fdc03103d4b88b4764d94ebb353340fd5) +- Apply extensions only once [`0488a59`](https://github.com/SAP/ui5-project/commit/0488a5959a0b2b87d1945866da07bc011103c1b2) +- Apply extensions found in root project [`5866cad`](https://github.com/SAP/ui5-project/commit/5866cadc04348c15c2ae7abefe70b934f6cf5b99) +- Add .npmrc to enforce public registry [`78dd5d7`](https://github.com/SAP/ui5-project/commit/78dd5d7fb72a9c51b56b47179dd823f016255cd3) +- **CHANGELOG:** Fix scope detection in commit messages [`955ab92`](https://github.com/SAP/ui5-project/commit/955ab9275b6ee6d0261f9033ed110ac8b684abcf) +- **Coveralls:** Use parallel setting to reduce number of PR comments [`cbcc8ea`](https://github.com/SAP/ui5-project/commit/cbcc8ea8f15d4f8c5ac0124024bf67f29ef14bd9) + ## [v0.2.0] - 2018-07-11 ### Internal Changes -- package.json: Define files to publish [`01d543c`](https://github.com/SAP/ui5-project/commit/01d543c682f4a0f6fbf15fab0a73b91a5424acee) - Update min Node.js version to >=8.5 [`fc96d87`](https://github.com/SAP/ui5-project/commit/fc96d874c08b54f887cf375eb5028b298c96067f) +- **package.json:** Define files to publish [`01d543c`](https://github.com/SAP/ui5-project/commit/01d543c682f4a0f6fbf15fab0a73b91a5424acee) @@ -43,5 +59,6 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - **npm t8r:** Improve handling of missing package.json [`4b32134`](https://github.com/SAP/ui5-project/commit/4b321345139058dc821fb08c4556aff88366ea86) +[v0.2.1]: https://github.com/SAP/ui5-project/compare/v0.2.0...v0.2.1 [v0.2.0]: https://github.com/SAP/ui5-project/compare/v0.1.0...v0.2.0 [v0.1.0]: https://github.com/SAP/ui5-project/compare/v0.0.1...v0.1.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b0463bc2eb5..7f6435bfdc0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.0", + "version": "0.2.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 4e5768cccc6..a1ba23a9836 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.0", + "version": "0.2.1", "description": "UI5 Build and Development Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 141f0e19029175faba9d479f738a602c44c8be2b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Fri, 9 Nov 2018 18:41:37 +0000 Subject: [PATCH 0053/1272] [ui5-project]Bump eslint from 5.6.1 to 5.9.0 Bumps [eslint](https://github.com/eslint/eslint) from 5.6.1 to 5.9.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.6.1...v5.9.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 154 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 76 insertions(+), 80 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7f6435bfdc0..f1524ce7beb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -323,19 +323,16 @@ } }, "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", - "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.4.tgz", + "integrity": "sha512-VY4i5EKSKkofY2I+6QLTbTTN/UvEQPCo6eiwzzSaSWfpaDhOmStMCMod6wmuPciNq+XS0faCglFu2lHZpdHUtg==", "dev": true }, "acorn-jsx": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-4.1.1.tgz", - "integrity": "sha512-JY+iV6r+cO21KtntVvFkD+iqjtdpRUpGqKWgfkCdZq1R+kbreEl8EcdcJR4SmiIgsIQT33s6QzheQ9a275Q8xw==", - "dev": true, - "requires": { - "acorn": "^5.0.3" - } + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.0.tgz", + "integrity": "sha512-XkB50fn0MURDyww9+UYL3c1yLbOBz0ZFvrdYlGB8l+Ije1oSC75qAqrzSPjYQbdnQUzhlUGNKuesryAv0gxZOg==", + "dev": true }, "ajv": { "version": "5.5.2", @@ -348,12 +345,6 @@ "json-schema-traverse": "^0.3.0" } }, - "ajv-keywords": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", - "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=", - "dev": true - }, "amdefine": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", @@ -2287,40 +2278,40 @@ } }, "del": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", + "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", "dev": true, "requires": { - "globby": "^5.0.0", + "globby": "^6.1.0", "is-path-cwd": "^1.0.0", "is-path-in-cwd": "^1.0.0", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", + "p-map": "^1.1.1", + "pify": "^3.0.0", "rimraf": "^2.2.8" }, "dependencies": { "globby": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", "dev": true, "requires": { "array-union": "^1.0.1", - "arrify": "^1.0.0", "glob": "^7.0.3", "object-assign": "^4.0.1", "pify": "^2.0.0", "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } } }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", @@ -2559,9 +2550,9 @@ } }, "eslint": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.6.1.tgz", - "integrity": "sha512-hgrDtGWz368b7Wqf+v1Z69O3ZebNR0+GA7PtDdbmuz4rInFVUV9uw7whjZEiWyLzCjVb5Rs5WRN1TAS6eo7AYA==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.9.0.tgz", + "integrity": "sha512-g4KWpPdqN0nth+goDNICNXGfJF7nNnepthp46CAlJoJtC5K/cLu3NgCM3AHu1CkJ5Hzt9V0Y0PBAO6Ay/gGb+w==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2595,12 +2586,12 @@ "path-is-inside": "^1.0.2", "pluralize": "^7.0.0", "progress": "^2.0.0", - "regexpp": "^2.0.0", + "regexpp": "^2.0.1", "require-uncached": "^1.0.3", "semver": "^5.5.1", "strip-ansi": "^4.0.0", "strip-json-comments": "^2.0.1", - "table": "^4.0.3", + "table": "^5.0.2", "text-table": "^0.2.0" }, "dependencies": { @@ -2625,9 +2616,9 @@ } }, "ajv": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.4.tgz", - "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz", + "integrity": "sha512-7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -2656,9 +2647,9 @@ } }, "debug": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.0.1.tgz", - "integrity": "sha512-K23FHJ/Mt404FSlp6gSZCevIbTMLX0j3fmHhUEhQ3Wq0FMODW3+cUSoLdy1Gx4polAf4t/lphhmHH35BB8cLYw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", + "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", "dev": true, "requires": { "ms": "^2.1.1" @@ -2671,9 +2662,9 @@ "dev": true }, "globals": { - "version": "11.7.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", - "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.8.0.tgz", + "integrity": "sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA==", "dev": true }, "ignore": { @@ -2696,7 +2687,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -2710,9 +2701,9 @@ "dev": true }, "semver": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", - "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", "dev": true }, "strip-ansi": { @@ -2767,13 +2758,14 @@ } }, "espree": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-4.0.0.tgz", - "integrity": "sha512-kapdTCt1bjmspxStVKX6huolXVV5ZfyZguY1lcfhVVZstce3bqxH9mcLzNn3/mlgW6wQ732+0fuG9v7h0ZQoKg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-4.1.0.tgz", + "integrity": "sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==", "dev": true, "requires": { - "acorn": "^5.6.0", - "acorn-jsx": "^4.1.1" + "acorn": "^6.0.2", + "acorn-jsx": "^5.0.0", + "eslint-visitor-keys": "^1.0.0" } }, "esprima": { @@ -3117,13 +3109,13 @@ } }, "flat-cache": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", - "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.2.tgz", + "integrity": "sha512-KByBY8c98sLUAGpnmjEdWTrtrLZRtZdwds+kAL/ciFXTCb7AZgqKsAnVnYFQj1hxepwO8JKN/8AsRWwLq+RK0A==", "dev": true, "requires": { "circular-json": "^0.3.1", - "del": "^2.0.2", + "del": "^3.0.0", "graceful-fs": "^4.1.2", "write": "^0.2.1" } @@ -6529,6 +6521,12 @@ "p-limit": "^1.1.0" } }, + "p-map": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", + "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", + "dev": true + }, "p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", @@ -6746,9 +6744,9 @@ "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" }, "progress": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", - "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.1.tgz", + "integrity": "sha512-OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg==", "dev": true }, "pseudomap": { @@ -6948,9 +6946,9 @@ } }, "regexpp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.0.tgz", - "integrity": "sha512-g2FAVtR8Uh8GO1Nv5wpxW7VFVwHcCEr4wyA8/MHiRkO8uHoR5ntAA8Uq3P1vvMTX/BeQiRVSpDGLd+Wn5HNOTA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", "dev": true }, "regexpu-core": { @@ -7076,7 +7074,7 @@ }, "require-uncached": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", + "resolved": "http://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", "dev": true, "requires": { @@ -7645,23 +7643,21 @@ "dev": true }, "table": { - "version": "4.0.3", - "resolved": "http://registry.npmjs.org/table/-/table-4.0.3.tgz", - "integrity": "sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/table/-/table-5.1.0.tgz", + "integrity": "sha512-e542in22ZLhD/fOIuXs/8yDZ9W61ltF8daM88rkRNtgTIct+vI2fTnAyu/Db2TCfEcI8i7mjZz6meLq0nW7TYg==", "dev": true, "requires": { - "ajv": "^6.0.1", - "ajv-keywords": "^3.0.0", - "chalk": "^2.1.0", - "lodash": "^4.17.4", + "ajv": "^6.5.3", + "lodash": "^4.17.10", "slice-ansi": "1.0.0", "string-width": "^2.1.1" }, "dependencies": { "ajv": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.4.tgz", - "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz", + "integrity": "sha512-7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -7819,7 +7815,7 @@ }, "through": { "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", "dev": true }, @@ -8281,7 +8277,7 @@ "dependencies": { "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { diff --git a/packages/project/package.json b/packages/project/package.json index a1ba23a9836..745f35efedc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -106,7 +106,7 @@ "coveralls": "^3.0.1", "cross-env": "^5.2.0", "docdash": "^1.0.0", - "eslint": "^5.0.1", + "eslint": "^5.9.0", "eslint-config-google": "^0.10.0", "jsdoc": "^3.5.5", "nyc": "^13.0.1", From e49c30ccf7974afbe8b2f4603515f72515302668 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 12 Nov 2018 11:04:45 +0000 Subject: [PATCH 0054/1272] [ui5-project]Bump nyc from 13.0.1 to 13.1.0 Bumps [nyc](https://github.com/istanbuljs/nyc) from 13.0.1 to 13.1.0. - [Release notes](https://github.com/istanbuljs/nyc/releases) - [Changelog](https://github.com/istanbuljs/nyc/blob/master/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/nyc/compare/v13.0.1...v13.1.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 192 ++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 104 insertions(+), 90 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f1524ce7beb..0e64b541583 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -72,124 +72,130 @@ } }, "@babel/code-frame": { - "version": "7.0.0-beta.51", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-beta.51.tgz", - "integrity": "sha1-vXHZsZKvl435FYKdOdQJRFZDmgw=", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", "dev": true, "requires": { - "@babel/highlight": "7.0.0-beta.51" + "@babel/highlight": "^7.0.0" } }, "@babel/generator": { - "version": "7.0.0-beta.51", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.0.0-beta.51.tgz", - "integrity": "sha1-bHV1/952HQdIXgS67cA5LG2eMPY=", + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.1.5.tgz", + "integrity": "sha512-IO31r62xfMI+wBJVmgx0JR9ZOHty8HkoYpQAjRWUGG9vykBTlGHdArZ8zoFtpUu2gs17K7qTl/TtPpiSi6t+MA==", "dev": true, "requires": { - "@babel/types": "7.0.0-beta.51", + "@babel/types": "^7.1.5", "jsesc": "^2.5.1", - "lodash": "^4.17.5", + "lodash": "^4.17.10", "source-map": "^0.5.0", "trim-right": "^1.0.1" }, "dependencies": { "jsesc": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", - "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true } } }, "@babel/helper-function-name": { - "version": "7.0.0-beta.51", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.51.tgz", - "integrity": "sha1-IbSHSiJ8+Z7K/MMKkDAtpaJkBWE=", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "7.0.0-beta.51", - "@babel/template": "7.0.0-beta.51", - "@babel/types": "7.0.0-beta.51" + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" } }, "@babel/helper-get-function-arity": { - "version": "7.0.0-beta.51", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.51.tgz", - "integrity": "sha1-MoGy0EWvlcFyzpGyCCXYXqRnZBE=", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", "dev": true, "requires": { - "@babel/types": "7.0.0-beta.51" + "@babel/types": "^7.0.0" } }, "@babel/helper-split-export-declaration": { - "version": "7.0.0-beta.51", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.51.tgz", - "integrity": "sha1-imw/ZsTSZTUvwHdIT59ugKUauXg=", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", + "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", "dev": true, "requires": { - "@babel/types": "7.0.0-beta.51" + "@babel/types": "^7.0.0" } }, "@babel/highlight": { - "version": "7.0.0-beta.51", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-beta.51.tgz", - "integrity": "sha1-6IRK4loVlcz9QriWI7Q3bKBtIl0=", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", "dev": true, "requires": { "chalk": "^2.0.0", "esutils": "^2.0.2", - "js-tokens": "^3.0.0" + "js-tokens": "^4.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + } } }, "@babel/parser": { - "version": "7.0.0-beta.51", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.0.0-beta.51.tgz", - "integrity": "sha1-J87C30Cd9gr1gnDtj2qlVAnqhvY=", + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.5.tgz", + "integrity": "sha512-WXKf5K5HT6X0kKiCOezJZFljsfxKV1FpU8Tf1A7ZpGvyd/Q4hlrJm2EwoH2onaUq3O4tLDp+4gk0hHPsMyxmOg==", "dev": true }, "@babel/template": { - "version": "7.0.0-beta.51", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0-beta.51.tgz", - "integrity": "sha1-lgKkCuvPNXrpZ34lMu9fyBD1+/8=", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.1.2.tgz", + "integrity": "sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag==", "dev": true, "requires": { - "@babel/code-frame": "7.0.0-beta.51", - "@babel/parser": "7.0.0-beta.51", - "@babel/types": "7.0.0-beta.51", - "lodash": "^4.17.5" + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.1.2", + "@babel/types": "^7.1.2" } }, "@babel/traverse": { - "version": "7.0.0-beta.51", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.0.0-beta.51.tgz", - "integrity": "sha1-mB2vLOw0emIx06odnhgDsDqqpKg=", + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.5.tgz", + "integrity": "sha512-eU6XokWypl0MVJo+MTSPUtlfPePkrqsF26O+l1qFGlCKWwmiYAYy2Sy44Qw8m2u/LbPCsxYt90rghmqhYMGpPA==", "dev": true, "requires": { - "@babel/code-frame": "7.0.0-beta.51", - "@babel/generator": "7.0.0-beta.51", - "@babel/helper-function-name": "7.0.0-beta.51", - "@babel/helper-split-export-declaration": "7.0.0-beta.51", - "@babel/parser": "7.0.0-beta.51", - "@babel/types": "7.0.0-beta.51", + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.1.5", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/parser": "^7.1.5", + "@babel/types": "^7.1.5", "debug": "^3.1.0", "globals": "^11.1.0", - "invariant": "^2.2.0", - "lodash": "^4.17.5" + "lodash": "^4.17.10" }, "dependencies": { "debug": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", - "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { "ms": "^2.1.1" } }, "globals": { - "version": "11.8.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.8.0.tgz", - "integrity": "sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA==", + "version": "11.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.9.0.tgz", + "integrity": "sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==", "dev": true }, "ms": { @@ -201,13 +207,13 @@ } }, "@babel/types": { - "version": "7.0.0-beta.51", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0-beta.51.tgz", - "integrity": "sha1-2AK3tUO1g2x3iqaReXq/APPZfqk=", + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.1.5.tgz", + "integrity": "sha512-sJeqa/d9eM/bax8Ivg+fXF7FpN3E/ZmTrWbkk6r+g7biVYfALMnLin4dKijsaqEhpd2xvOGfQTkQkD31YCVV4A==", "dev": true, "requires": { "esutils": "^2.0.2", - "lodash": "^4.17.5", + "lodash": "^4.17.10", "to-fast-properties": "^2.0.0" }, "dependencies": { @@ -783,7 +789,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -858,7 +864,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -1268,7 +1274,7 @@ "dependencies": { "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -1612,7 +1618,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -4465,16 +4471,16 @@ "dev": true }, "istanbul-lib-instrument": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-2.3.2.tgz", - "integrity": "sha512-l7TD/VnBsIB2OJvSyxaLW/ab1+92dxZNH9wLH7uHPPioy3JZ8tnx2UXUdKmdkgmP2EFPzg64CToUP6dAS3U32Q==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.0.0.tgz", + "integrity": "sha512-eQY9vN9elYjdgN9Iv6NS/00bptm02EBBk70lRMaVjeA6QYocQgenVrSgC28TJurdnZa80AGO3ASdFN+w/njGiQ==", "dev": true, "requires": { - "@babel/generator": "7.0.0-beta.51", - "@babel/parser": "7.0.0-beta.51", - "@babel/template": "7.0.0-beta.51", - "@babel/traverse": "7.0.0-beta.51", - "@babel/types": "7.0.0-beta.51", + "@babel/generator": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", "istanbul-lib-coverage": "^2.0.1", "semver": "^5.5.0" } @@ -4550,7 +4556,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -4976,7 +4982,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -5221,26 +5227,26 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.0.1.tgz", - "integrity": "sha512-Op/bjhEF74IMtzMmgYt+ModTeMHoPZzHe4qseUguPBwg5qC6r4rYMBt1L3yRXQIbjUpEqmn24/1xAC/umQGU7w==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.1.0.tgz", + "integrity": "sha512-3GyY6TpQ58z9Frpv4GMExE1SV2tAgYqC7HSy2omEhNiCT3mhT9NyiOvIE8zkbuJVFzmvvNTnE4h/7/wQae7xLg==", "dev": true, "requires": { "archy": "^1.0.0", "arrify": "^1.0.1", "caching-transform": "^2.0.0", - "convert-source-map": "^1.5.1", + "convert-source-map": "^1.6.0", "debug-log": "^1.0.1", "find-cache-dir": "^2.0.0", "find-up": "^3.0.0", "foreground-child": "^1.5.6", - "glob": "^7.1.2", + "glob": "^7.1.3", "istanbul-lib-coverage": "^2.0.1", "istanbul-lib-hook": "^2.0.1", - "istanbul-lib-instrument": "^2.3.2", - "istanbul-lib-report": "^2.0.1", + "istanbul-lib-instrument": "^3.0.0", + "istanbul-lib-report": "^2.0.2", "istanbul-lib-source-maps": "^2.0.1", - "istanbul-reports": "^2.0.0", + "istanbul-reports": "^2.0.1", "make-dir": "^1.3.0", "merge-source-map": "^1.1.0", "resolve-from": "^4.0.0", @@ -5378,9 +5384,12 @@ "dev": true }, "convert-source-map": { - "version": "1.5.1", + "version": "1.6.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } }, "cross-spawn": { "version": "4.0.2", @@ -5499,7 +5508,7 @@ "dev": true }, "glob": { - "version": "7.1.2", + "version": "7.1.3", "bundled": true, "dev": true, "requires": { @@ -5619,7 +5628,7 @@ } }, "istanbul-lib-report": { - "version": "2.0.1", + "version": "2.0.2", "bundled": true, "dev": true, "requires": { @@ -5648,7 +5657,7 @@ } }, "istanbul-reports": { - "version": "2.0.0", + "version": "2.0.1", "bundled": true, "dev": true, "requires": { @@ -6013,6 +6022,11 @@ "glob": "^7.0.5" } }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true + }, "semver": { "version": "5.5.0", "bundled": true, @@ -8057,7 +8071,7 @@ "dependencies": { "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { diff --git a/packages/project/package.json b/packages/project/package.json index 745f35efedc..34e63c11660 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -109,7 +109,7 @@ "eslint": "^5.9.0", "eslint-config-google": "^0.10.0", "jsdoc": "^3.5.5", - "nyc": "^13.0.1", + "nyc": "^13.1.0", "tap-nyan": "^1.1.0" } } From cd9bb6a26782d36db80007e58da553b575163622 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 6 Nov 2018 19:03:43 +0100 Subject: [PATCH 0055/1272] [ui5-project][INTERNAL] Travis: Activate Windows and Mac builds --- packages/project/.travis.yml | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/packages/project/.travis.yml b/packages/project/.travis.yml index 5844785d4cb..023f03edb97 100644 --- a/packages/project/.travis.yml +++ b/packages/project/.travis.yml @@ -1,11 +1,24 @@ language: node_js # don't install any environment node_js: -- "8" -- "10" +- "node" + +os: +- linux +- osx +- windows + +matrix: + include: + - os: linux + node_js: + - "10" + - os: linux + node_js: + - "8" after_script: -- npm run report-coveralls +- if [[ "$TRAVIS_OS_NAME" == 'linux' ]]; then npm run report-coveralls; fi notifications: webhooks: https://coveralls.io/webhook From 9c2848906fb89078161630f826f33dca8b28415c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 7 Nov 2018 19:47:56 +0100 Subject: [PATCH 0056/1272] [ui5-project][INTERNAL] npm t8r: Fix tests on Windows --- packages/project/test/lib/translators/npm.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index 90aab2f506f..e9b9d5bd973 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -49,8 +49,9 @@ test("AppF: project with UI5-dependencies", (t) => { }); test("Error: missing package.json", async (t) => { - const error = await t.throws(npmTranslator.generateDependencyTree(path.parse(__dirname).root)); - t.is(error.message, "[npm translator] Failed to locate package.json for directory \"/\""); + const dir = path.parse(__dirname).root; + const error = await t.throws(npmTranslator.generateDependencyTree(dir)); + t.is(error.message, `[npm translator] Failed to locate package.json for directory "${dir}"`); }); test("Error: missing dependency", async (t) => { From 718f0b5051109a3431bce49f44176a1f35c1d967 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 12 Nov 2018 16:40:49 +0100 Subject: [PATCH 0057/1272] [ui5-project][INTERNAL] Git: Apply lf line-ending to all files --- packages/project/.gitattributes | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/project/.gitattributes b/packages/project/.gitattributes index 391f0a4e4b0..6313b56c578 100644 --- a/packages/project/.gitattributes +++ b/packages/project/.gitattributes @@ -1,2 +1 @@ -* text=auto -*.js text eol=lf +* text=auto eol=lf From f374adb90efa0d9da2543c2aaabd7efaf65fa66d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 15 Nov 2018 09:23:18 +0100 Subject: [PATCH 0058/1272] [ui5-project][INTERNAL] ESLint: Allow strings to use backticks --- packages/project/.eslintrc.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js index 480a895ce48..ae146528bbd 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.js @@ -18,7 +18,8 @@ module.exports = { ], "quotes": [ "error", - "double" + "double", + { "allowTemplateLiterals": true } ], "semi": [ "error", From 3178e46406c4455aefdb781413651e1df3e5c22a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 15 Nov 2018 13:36:47 +0100 Subject: [PATCH 0059/1272] [ui5-project][INTERNAL] package.json scripts: Update verbose logging params debug-module is not used in the tooling anymore --- packages/project/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/package.json b/packages/project/package.json index 34e63c11660..686dd3f72e5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -21,10 +21,10 @@ "test": "npm run lint && npm run jsdoc-generate && npm run coverage", "lint": "eslint ./", "unit": "rimraf test/tmp && ava", + "unit-verbose": "rimraf test/tmp && cross-env UI5_LOG_LVL=verbose ava --verbose --serial", "unit-watch": "rimraf test/tmp && ava --watch", "unit-nyan": "npm run unit -- --tap | tnyan", - "unit-debug": "rimraf test/tmp && cross-env DEBUG=*,-babel,-ava ava", - "unit-inspect": "cross-env DEBUG=*,-babel,-ava node --inspect-brk node_modules/ava/profile.js", + "unit-inspect": "cross-env UI5_LOG_LVL=verbose node --inspect-brk node_modules/ava/profile.js", "coverage": "nyc npm run unit", "jsdoc": "npm run jsdoc-generate && opn jsdocs/index.html", "jsdoc-generate": "node_modules/.bin/jsdoc -c ./jsdoc.json ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", From 701d8423a4b06e67c2604ccf2ff1da0a70e2772c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 15 Nov 2018 13:46:51 +0100 Subject: [PATCH 0060/1272] [ui5-project][INTERNAL] ESLint: prefer-const ESLint rule update will follow with eslint-config-google dependency bump. See https://github.com/google/eslint-config-google/pull/52 --- packages/project/lib/normalizer.js | 2 +- packages/project/lib/projectPreprocessor.js | 8 ++++---- packages/project/lib/translators/npm.js | 10 +++++----- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index afba412c1d4..ac3a6ad0c90 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -36,7 +36,7 @@ async function generateProjectTree(options) { */ async function generateDependencyTree(options) { log.verbose("Building dependency tree..."); - let cwd = options && options.cwd || "."; + const cwd = options && options.cwd || "."; let translatorName = "npm"; // Default is npm translator let translatorParams = []; diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 02fb006cd1f..1b503e04d38 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -347,7 +347,7 @@ class ProjectPreprocessor { if (configurations) { log.verbose(`Project shim ${extension.id} contains ` + `${Object.keys(configurations)} configuration(s)`); - for (let projectId in configurations) { + for (const projectId in configurations) { if (configurations.hasOwnProperty(projectId)) { this.normalizeConfig(configurations[projectId]); // TODO: Clone object beforehand? if (this.configShims[projectId]) { @@ -366,7 +366,7 @@ class ProjectPreprocessor { if (dependencies) { // For the time being, shimmed dependencies only apply to shimmed project configurations - for (let projectId in dependencies) { + for (const projectId in dependencies) { if (dependencies.hasOwnProperty(projectId)) { if (this.configShims[projectId]) { log.verbose(`Project shim ${extension.id}: Adding dependencies ` + @@ -384,7 +384,7 @@ class ProjectPreprocessor { if (collections) { log.verbose(`Project shim ${extension.id} contains ` + `${Object.keys(collections).length} collection(s)`); - for (let projectId in collections) { + for (const projectId in collections) { if (collections.hasOwnProperty(projectId)) { if (this.collections[projectId]) { log.verbose(`Project shim ${extension.id}: A collection with id '${projectId}' `+ @@ -441,7 +441,7 @@ class ProjectPreprocessor { const collectionDep = project.dependencies[i]; const collectionModules = this.collections[depId].modules; const projects = []; - for (let projectId in collectionModules) { + for (const projectId in collectionModules) { if (collectionModules.hasOwnProperty(projectId)) { // Clone and modify collection "project" const project = JSON.parse(JSON.stringify(collectionDep)); diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index bc84a2f1194..0188c6197d7 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -32,7 +32,7 @@ class NpmTranslator { let dependencies = pkg.dependencies || {}; let optDependencies = pkg.devDependencies || {}; - let version = pkg.version; + const version = pkg.version; // Also look for "napa" dependencies (see https://github.com/shama/napa) if (pkg.napa) { @@ -44,7 +44,7 @@ class NpmTranslator { const ui5Deps = pkg.ui5 && pkg.ui5.dependencies; if (ui5Deps && ui5Deps.length) { for (let i = 0; i < ui5Deps.length; i++) { - let depName = ui5Deps[i]; + const depName = ui5Deps[i]; if (!dependencies[depName] && !optDependencies[depName]) { throw new Error(`[npm translator] Module ${depName} is defined as UI5 dependency ` + `but missing from npm dependencies of module ${moduleName}`); @@ -55,7 +55,7 @@ class NpmTranslator { dependencies = Object.assign({}, dependencies, optDependencies); optDependencies = {}; - for (let depName in dependencies) { + for (const depName in dependencies) { if (dependencies.hasOwnProperty(depName) && ui5Deps.indexOf(depName) === -1) { log.verbose("Ignoring npm dependency %s. Not defined in UI5-dependency configuration.", depName); delete dependencies[depName]; @@ -80,7 +80,7 @@ class NpmTranslator { }).then((depProjects) => { // Array needs to be flattened because: // getDepProjects returns array * 2 = array with two arrays - let projects = Array.prototype.concat.apply([], depProjects); + const projects = Array.prototype.concat.apply([], depProjects); return [{ id: moduleName, @@ -294,7 +294,7 @@ class NpmTranslator { */ for (let i = 0; i < tree.length; i++) { - let rootPackage = tree[i]; + const rootPackage = tree[i]; if (path.resolve(rootPackage.path) === path.resolve(dirPath)) { log.verbose("Built tree:"); log.verbose(rootPackage); From 378fcd90d8749b46e082f1377c98a11af9d88818 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 15 Nov 2018 14:00:41 +0100 Subject: [PATCH 0061/1272] [ui5-project][INTERNAL] GitHub ISSUE_TEMPLATE: Request UI5 module version info --- packages/project/.github/ISSUE_TEMPLATE.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/project/.github/ISSUE_TEMPLATE.md b/packages/project/.github/ISSUE_TEMPLATE.md index 504d1f58b9e..89eb9692409 100644 --- a/packages/project/.github/ISSUE_TEMPLATE.md +++ b/packages/project/.github/ISSUE_TEMPLATE.md @@ -10,13 +10,14 @@ 3. {...} ## Context +- UI5 Module Version *(output of `ui5 --version` when using the CLI)*: `{...}` +- Node.js Version: `{...}` +- npm Version: `{...}` - OS/Platform: {...} -- Node.js Version: {...} -- npm Version: {...} - Browser *(if relevant)*: {...} - Other information: {...} -## Affected components +## Affected components *(if known)* - [ ] [ui5-builder](https://github.com/SAP/ui5-builder) - [ ] [ui5-server](https://github.com/SAP/ui5-server) - [ ] [ui5-cli](https://github.com/SAP/ui5-cli) @@ -24,7 +25,7 @@ - [ ] [ui5-project](https://github.com/SAP/ui5-project) - [ ] [ui5-logger](https://github.com/SAP/ui5-logger) -## Stack trace/log output +## Log Output / Stack Trace ``` -{logs} +{...} ``` From 21a3ffd2dee2022eb0eda6a6b14d57a59c879f4c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 15 Nov 2018 14:32:10 +0100 Subject: [PATCH 0062/1272] [ui5-project][INTERNAL] GitHub: Add PULL_REQUEST_TEMPLATE --- packages/project/.github/PULL_REQUEST_TEMPLATE.md | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 packages/project/.github/PULL_REQUEST_TEMPLATE.md diff --git a/packages/project/.github/PULL_REQUEST_TEMPLATE.md b/packages/project/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000000..a102a83fcec --- /dev/null +++ b/packages/project/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,9 @@ +**Thank you for your contribution!** 🙌 + +To get it merged faster, kindly review the checklist below: + +## Pull Request Checklist +- [ ] Reviewed the [Contributing Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md#-contributing-code) + + Especially the [How to Contribute](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md#how-to-contribute) section +- [ ] [No merge commits](https://github.com/SAP/ui5-tooling/blob/master/docs/Guidelines.md#no-merge-commits) +- [ ] [Correct commit message style](https://github.com/SAP/ui5-tooling/blob/master/docs/Guidelines.md#commit-message-style) From 1e8a29acb7d613d5d6c61536b3bc3b91ed6f8a93 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 15 Nov 2018 09:26:48 +0100 Subject: [PATCH 0063/1272] [ui5-project][FEATURE] projectPreprocessor: Allow application project dependency on non-root level Resolves #61 --- packages/project/lib/projectPreprocessor.js | 19 ++- .../project/test/lib/projectPreprocessor.js | 137 ++++++++++++++++++ 2 files changed, 150 insertions(+), 6 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 1b503e04d38..fdcf7112e50 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -283,12 +283,19 @@ class ProjectPreprocessor { throw new Error(`Root project needs to be of kind "project". ${project.id} is of kind ${project.kind}`); } - if (project.kind === "project" && project.type === "application" && project._level !== 0) { - // There is only one project project of type application allowed - // That project needs to be the root project - log.verbose(`[Warn] Ignoring project ${project.id} with type application`+ - ` (distance to root: ${project._level}). Type application is only allowed for the root project`); - return false; // ignore this project + if (project.kind === "project" && project.type === "application") { + // There must be exactly one application project per dependency tree + // If multiple are found, all but the one closest to the root are rejected (ignored) + // If there are two projects equally close to the root, an error is being thrown + if (!this.qualifiedApplicationProject) { + this.qualifiedApplicationProject = project; + } else if (this.qualifiedApplicationProject._level === project._level) { + throw new Error(`Found at least two projects ${this.qualifiedApplicationProject.id} and ` + + `${project.id} of type application with the same distance to the root project. ` + + "Only one project of type application can be used. Failed to decide which one to ignore."); + } else { + return false; // ignore this project + } } return true; diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 20a31455dab..d001d88cb87 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -200,6 +200,143 @@ test("Missing dependencies", (t) => { "Gracefully accepted project with no dependency attribute"); }); +test("Single non-root application-project", (t) => { + const tree = ({ + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [{ + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [] + }] + }); + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree.id, "library.a", "Correct root project"); + t.deepEqual(parsedTree.dependencies.length, 1, "application-project dependency was not ignored"); + t.deepEqual(parsedTree.dependencies[0].id, "application.a", "application-project is on second level"); + }); +}); + +test("Multiple non-root application-projects on same level", (t) => { + const tree = ({ + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [{ + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [] + }, { + id: "application.b", + version: "1.0.0", + path: applicationBPath, + dependencies: [] + }] + }); + return t.throws(projectPreprocessor.processTree(tree), + "Found at least two projects application.a and application.b of type application with the same distance to " + + "the root project. Only one project of type application can be used. Failed to decide which one to ignore.", + "Rejected with error"); +}); + +test("Multiple non-root application-projects on different levels", (t) => { + const tree = ({ + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [{ + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [] + }, { + id: "library.b", + version: "1.0.0", + path: libraryBPath, + dependencies: [{ + id: "application.b", + version: "1.0.0", + path: applicationBPath, + dependencies: [] + }] + }] + }); + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree.id, "library.a", "Correct root project"); + t.deepEqual(parsedTree.dependencies.length, 2, "No dependency of the first level got ignored"); + t.deepEqual(parsedTree.dependencies[0].id, "application.a", "First application-project did not get ignored"); + t.deepEqual(parsedTree.dependencies[1].dependencies.length, 0, + "Second (deeper) application-project got ignored"); + }); +}); + +test("Root- and non-root application-projects", (t) => { + const tree = ({ + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [{ + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [{ + id: "application.b", + version: "1.0.0", + path: applicationBPath, + dependencies: [] + }] + }] + }); + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree.id, "application.a", "Correct root project"); + t.deepEqual(parsedTree.dependencies[0].id, "library.a", "Correct library dependency"); + t.deepEqual(parsedTree.dependencies[0].dependencies[0], undefined, + "Second application-project dependency was ignored"); + }); +}); + +test("Ignores additional application-projects", (t) => { + const tree = ({ + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [{ + id: "application.b", + version: "1.0.0", + path: applicationBPath, + dependencies: [] + }] + }); + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree, { + _level: 0, + type: "application", + metadata: { + name: "application.a" + }, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + }, + pathMappings: { + "/": "webapp", + } + }, + dependencies: [], + id: "application.a", + kind: "project", + version: "1.0.0", + specVersion: "0.1", + path: applicationAPath + }, "Parsed correctly"); + }); +}); + test("Inconsistent dependencies with same ID", (t) => { // The one closer to the root should win const tree = { From 46317d9d2bc8b3a0ab184437e58c0be6e495a648 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Thu, 15 Nov 2018 16:22:41 +0000 Subject: [PATCH 0064/1272] [ui5-project]Bump eslint-config-google from 0.10.0 to 0.11.0 Bumps [eslint-config-google](https://github.com/google/eslint-config-google) from 0.10.0 to 0.11.0. - [Release notes](https://github.com/google/eslint-config-google/releases) - [Commits](https://github.com/google/eslint-config-google/compare/0.10.0...0.11.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0e64b541583..2fb5f87dc9a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -789,7 +789,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -864,7 +864,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -1932,7 +1932,7 @@ }, "commander": { "version": "2.0.0", - "resolved": "http://registry.npmjs.org/commander/-/commander-2.0.0.tgz", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", "optional": true }, @@ -2312,7 +2312,7 @@ "dependencies": { "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true } @@ -2724,9 +2724,9 @@ } }, "eslint-config-google": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.10.0.tgz", - "integrity": "sha512-PGlMufI13kljog4HlDkwtyqJ7ZZFOcl0ppEvhDoE1lq+8+nMe0lQs0WIZrXpQJhwxhii3SZuCHW2g/weS6Xpyw==", + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.11.0.tgz", + "integrity": "sha512-z541Fs5TFaY7/35v/z100InQ2f3V2J7e3u/0yKrnImgsHjh6JWgSRngfC/mZepn/+XN16jUydt64k//kxXc1fw==", "dev": true }, "eslint-scope": { @@ -4982,7 +4982,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, diff --git a/packages/project/package.json b/packages/project/package.json index 686dd3f72e5..d0fb5fd67fe 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -107,7 +107,7 @@ "cross-env": "^5.2.0", "docdash": "^1.0.0", "eslint": "^5.9.0", - "eslint-config-google": "^0.10.0", + "eslint-config-google": "^0.11.0", "jsdoc": "^3.5.5", "nyc": "^13.1.0", "tap-nyan": "^1.1.0" From a245fcb05cca48bf03e4ccfd161c1e7e95ef8d19 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 14 Nov 2018 18:47:41 +0100 Subject: [PATCH 0065/1272] [ui5-project][FIX] npm t8r: Handle npm optionalDependencies correctly In the past, optionalDependencies that could not be located caused a "Failed to locate module". Fixes #51 --- packages/project/lib/translators/npm.js | 20 +++++++++++++++++++ .../test/fixtures/application.g/package.json | 12 +++++++++++ .../test/fixtures/application.g/ui5.yaml | 5 +++++ .../application.g/webapp/manifest.json | 13 ++++++++++++ packages/project/test/lib/translators/npm.js | 14 +++++++++++++ 5 files changed, 64 insertions(+) create mode 100644 packages/project/test/fixtures/application.g/package.json create mode 100644 packages/project/test/fixtures/application.g/ui5.yaml create mode 100644 packages/project/test/fixtures/application.g/webapp/manifest.json diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 0188c6197d7..5abccf7ec84 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -32,6 +32,26 @@ class NpmTranslator { let dependencies = pkg.dependencies || {}; let optDependencies = pkg.devDependencies || {}; + + // Due to normalization done by by the "read-pkg-up" module the values + // in optionalDependencies get added to dependencies. Also as described here: + // https://github.com/npm/normalize-package-data#what-normalization-currently-entails + // Note: optionalDependencies are treated the same as devDependencies in the npm translator + if (pkg.optionalDependencies) { + for (let depName in pkg.optionalDependencies) { + if (pkg.optionalDependencies.hasOwnProperty(depName)) { + // Remove entry from "hard" dependencies map + if (dependencies[depName]) { + delete dependencies[depName]; + } + // Add to optional dependencies map (of not already done) + if (optDependencies.hasOwnProperty(depName)) { + optDependencies[depName] = pkg.optionalDependencies[depName]; + } + } + } + } + const version = pkg.version; // Also look for "napa" dependencies (see https://github.com/shama/napa) diff --git a/packages/project/test/fixtures/application.g/package.json b/packages/project/test/fixtures/application.g/package.json new file mode 100644 index 00000000000..5ff741a8276 --- /dev/null +++ b/packages/project/test/fixtures/application.g/package.json @@ -0,0 +1,12 @@ +{ + "name": "application.g", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - test for npm optionalDependencies", + "main": "index.html", + "optionalDependencies": { + "library.nonexistent": "file:../library.nonexistent" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.g/ui5.yaml b/packages/project/test/fixtures/application.g/ui5.yaml new file mode 100644 index 00000000000..7d2ca796454 --- /dev/null +++ b/packages/project/test/fixtures/application.g/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.g diff --git a/packages/project/test/fixtures/application.g/webapp/manifest.json b/packages/project/test/fixtures/application.g/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/application.g/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index e9b9d5bd973..f80f70c8538 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -7,6 +7,7 @@ const applicationC2Path = path.join(__dirname, "..", "..", "fixtures", "applicat const applicationC3Path = path.join(__dirname, "..", "..", "fixtures", "application.c3"); const applicationDPath = path.join(__dirname, "..", "..", "fixtures", "application.d"); const applicationFPath = path.join(__dirname, "..", "..", "fixtures", "application.f"); +const applicationGPath = path.join(__dirname, "..", "..", "fixtures", "application.g"); const errApplicationAPath = path.join(__dirname, "..", "..", "fixtures", "err.application.a"); test("AppA: project with collection dependency", (t) => { @@ -48,6 +49,12 @@ test("AppF: project with UI5-dependencies", (t) => { }); }); +test("AppG: project with npm 'optionalDependencies' should not fail if optional dependency cannot be resolved", (t) => { + return npmTranslator.generateDependencyTree(applicationGPath).then((parsedTree) => { + t.deepEqual(parsedTree, applicationGTree, "Parsed correctly"); + }); +}); + test("Error: missing package.json", async (t) => { const dir = path.parse(__dirname).root; const error = await t.throws(npmTranslator.generateDependencyTree(dir)); @@ -226,3 +233,10 @@ const applicationFTree = { } ] }; + +const applicationGTree = { + id: "application.g", + version: "1.0.0", + path: applicationGPath, + dependencies: [] +}; From c1e86ac6be56372d5ffa1fb6df6f0ebeb8b3ebf1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Fri, 16 Nov 2018 13:55:10 +0000 Subject: [PATCH 0066/1272] [ui5-project]Bump @ui5/logger from 0.2.1 to 0.2.2 Bumps [@ui5/logger](https://github.com/SAP/ui5-logger) from 0.2.1 to 0.2.2. - [Release notes](https://github.com/SAP/ui5-logger/releases) - [Changelog](https://github.com/SAP/ui5-logger/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-logger/compare/v0.2.1...v0.2.2) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2fb5f87dc9a..b9eb285266b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -321,9 +321,9 @@ } }, "@ui5/logger": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.2.1.tgz", - "integrity": "sha512-hhZSGF/CSbKlEojS847QLaDTJKsFVvk8AN9b8rNoUyzQh1V0MaVAGQiGEnq5LbBC1vRSZwZT8H+oEDl01PVa6w==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.2.2.tgz", + "integrity": "sha512-sYEmsgBTNqvWLuBk+9hAqEXNlF1Q1uMxv56V6a6DiDK8gbpRqe+0jaKwKo5pr+FQLEagTX9vIOVw1u9dX+O4Qg==", "requires": { "npmlog": "^4.1.2" } diff --git a/packages/project/package.json b/packages/project/package.json index d0fb5fd67fe..7eb5534a4e4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ }, "dependencies": { "@ui5/builder": "^0.2.0", - "@ui5/logger": "^0.2.0", + "@ui5/logger": "^0.2.2", "graceful-fs": "^4.1.11", "js-yaml": "^3.10.0", "pretty-hrtime": "^1.0.3", From bf25458dbab5b71f362e3d31b925c86654db2267 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 16 Nov 2018 15:34:50 +0100 Subject: [PATCH 0067/1272] [ui5-project][INTERNAL] Fix eslint error --- packages/project/lib/translators/npm.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 5abccf7ec84..59e2ee56a13 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -38,7 +38,7 @@ class NpmTranslator { // https://github.com/npm/normalize-package-data#what-normalization-currently-entails // Note: optionalDependencies are treated the same as devDependencies in the npm translator if (pkg.optionalDependencies) { - for (let depName in pkg.optionalDependencies) { + for (const depName in pkg.optionalDependencies) { if (pkg.optionalDependencies.hasOwnProperty(depName)) { // Remove entry from "hard" dependencies map if (dependencies[depName]) { From c64a6a270dd55084f9a2e24ea5434bb8f38ca4d9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Fri, 16 Nov 2018 14:42:23 +0000 Subject: [PATCH 0068/1272] [ui5-project]Bump @ui5/builder from 0.2.4 to 0.2.5 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 0.2.4 to 0.2.5. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v0.2.4...v0.2.5) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 17 ++++++++++++----- packages/project/package.json | 2 +- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b9eb285266b..8fe40cf6ae6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -281,12 +281,12 @@ } }, "@ui5/builder": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.4.tgz", - "integrity": "sha512-Rg6JzAfJr51xZpHruOltMr+MDy594/HgEEpN8uOZL7DysAdC0tjNaL4tiaafS/AGDpyVDkkbvH6eA2NlIyy3MQ==", + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.5.tgz", + "integrity": "sha512-Xi64vGqT9gdR9lkINc6ShjPy7reSG/Q6FJiSR3z2ya5dEEGrqXe8zJmNY0EgcvkUfyZnVmGzAiQCja1iFqtYDw==", "requires": { "@ui5/fs": "^0.2.0", - "@ui5/logger": "^0.2.0", + "@ui5/logger": "^0.2.2", "archiver": "^3.0.0", "escodegen": "^1.11.0", "escope": "^3.6.0", @@ -298,9 +298,16 @@ "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", - "semver": "^5.5.0", + "semver": "^5.6.0", "uglify-es": "^3.2.2", "xml2js": "^0.4.17" + }, + "dependencies": { + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" + } } }, "@ui5/fs": { diff --git a/packages/project/package.json b/packages/project/package.json index 7eb5534a4e4..d04bfafdbde 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^0.2.0", + "@ui5/builder": "^0.2.5", "@ui5/logger": "^0.2.2", "graceful-fs": "^4.1.11", "js-yaml": "^3.10.0", From b84552410298a25f2efc6fb897b130cd78e03329 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 16 Nov 2018 13:00:09 +0100 Subject: [PATCH 0069/1272] [ui5-project][FEATURE] projectPreprocessor: Add handling for task extensions As per RFC0004: https://github.com/SAP/ui5-tooling/pull/54 Depends on https://github.com/SAP/ui5-builder/pull/106 --- packages/project/lib/projectPreprocessor.js | 21 ++++++ .../test/fixtures/application.a/task.a.js | 1 + packages/project/test/lib/extensions.js | 65 +++++++++++++++++++ 3 files changed, 87 insertions(+) create mode 100644 packages/project/test/fixtures/application.a/task.a.js diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index fdcf7112e50..835a6839b4d 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -336,6 +336,9 @@ class ProjectPreprocessor { case "project-shim": this.handleShim(extension); break; + case "task": + this.handleTask(extension); + break; default: throw new Error(`Unknown extension type '${extension.type}' for ${extension.id}`); } @@ -349,6 +352,9 @@ class ProjectPreprocessor { } handleShim(extension) { + if (!extension.shims) { + throw new Error(`Project shim extension ${extension.id} is missing 'shim' configuration`); + } const {configurations, dependencies, collections} = extension.shims; if (configurations) { @@ -465,6 +471,21 @@ class ProjectPreprocessor { } } } + + handleTask(extension) { + if (!extension.metadata && !extension.metadata.name) { + throw new Error(`Task extension ${extension.id} is missing 'metadata.name' configuration`); + } + if (!extension.task) { + throw new Error(`Task extension ${extension.id} is missing 'task' configuration`); + } + const taskRepository = require("@ui5/builder").tasks.taskRepository; + + const taskPath = path.join(extension.path, extension.task.path); + const task = require(taskPath); // throws if not found + + taskRepository.addTask(extension.metadata.name, task); + } } /** diff --git a/packages/project/test/fixtures/application.a/task.a.js b/packages/project/test/fixtures/application.a/task.a.js new file mode 100644 index 00000000000..ea41b01de46 --- /dev/null +++ b/packages/project/test/fixtures/application.a/task.a.js @@ -0,0 +1 @@ +module.exports = function () {}; diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 3ce6c4d885b..c3226c352f4 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -505,3 +505,68 @@ test("Project with unknown extension dependency inline configuration", (t) => { return t.throws(projectPreprocessor.processTree(tree), "Unknown extension type 'phony-pony' for extension.a", "Rejected with error"); }); + +test("Project with task extension dependency", (t) => { + // "project-type" extension handling not yet implemented => test currently checks for error + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "ext.task.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "task", + metadata: { + name: "task.a" + }, + task: { + path: "task.a.js" + } + }], + version: "1.0.0", + specVersion: "0.1", + type: "application", + metadata: { + name: "xy" + } + }; + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree.dependencies.length, 0, "Application project has no dependencies"); + const taskRepository = require("@ui5/builder").tasks.taskRepository; + t.truthy(taskRepository.getTask("task.a"), "task.a has been added to the task repository"); + }); +}); + +test("Project with task extension dependency - task module not found", async (t) => { + // "project-type" extension handling not yet implemented => test currently checks for error + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "ext.task.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "task", + metadata: { + name: "task.a" + }, + task: { + path: "task.not.existing.js" + } + }], + version: "1.0.0", + specVersion: "0.1", + type: "application", + metadata: { + name: "xy" + } + }; + const error = await t.throws(projectPreprocessor.processTree(tree)); + t.regex(error.message, /^Cannot find module.*/, "Rejected with error"); +}); From 72de14a45ffcd2d4ef73854ff5af54e834decb8b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sat, 17 Nov 2018 11:58:44 +0000 Subject: [PATCH 0070/1272] [ui5-project]Release 0.2.2 --- packages/project/CHANGELOG.md | 24 +++++++++++++++++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 8ddc0b49541..4222bbf711b 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,28 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.2...HEAD). + + +## [v0.2.2] - 2018-11-16 +### Bug Fixes +- **npm t8r:** Handle npm optionalDependencies correctly [`da707d7`](https://github.com/SAP/ui5-project/commit/da707d73b5c75b489e2e499de2b4f54924018844) + +### Features +- **projectPreprocessor:** Add handling for task extensions [`0722865`](https://github.com/SAP/ui5-project/commit/072286591ae3b20cca8e418030c3f2bc048352c5) +- **projectPreprocessor:** Allow application project dependency on non-root level [`b8a59d5`](https://github.com/SAP/ui5-project/commit/b8a59d56c8b5cf4c330fe99cb2162c1701aa51ca) + +### Internal Changes +- Fix eslint error [`d24eeb2`](https://github.com/SAP/ui5-project/commit/d24eeb2f1c3a6582ce8514e49e9c720a05f8a0f5) +- **ESLint:** prefer-const [`340151f`](https://github.com/SAP/ui5-project/commit/340151f4bd01ed8644d2c6b90bc695b30933cf80) +- **ESLint:** Allow strings to use backticks [`ec81373`](https://github.com/SAP/ui5-project/commit/ec813730b08ae173f5490629a5d074301ca88de3) +- **Git:** Apply lf line-ending to all files [`067b026`](https://github.com/SAP/ui5-project/commit/067b026d74a14d5e3807b7926a9292153ceac13e) +- **GitHub:** Add PULL_REQUEST_TEMPLATE [`7f2366f`](https://github.com/SAP/ui5-project/commit/7f2366f0f727d150b52e23151cd8ce8ecbdcabfd) +- **GitHub ISSUE_TEMPLATE:** Request UI5 module version info [`0936053`](https://github.com/SAP/ui5-project/commit/0936053d2c50837643495760b6b4e46eb36cb87d) +- **Travis:** Activate Windows and Mac builds [`fe46588`](https://github.com/SAP/ui5-project/commit/fe46588218e9c85892486dd9ce120a4828b64c55) +- **npm t8r:** Fix tests on Windows [`f304d7c`](https://github.com/SAP/ui5-project/commit/f304d7c26b14b40cd673bae7cafce8f695ea316e) +- **package.json scripts:** Update verbose logging params [`dd232a3`](https://github.com/SAP/ui5-project/commit/dd232a39bde7c787846b89a5207558f39f3074cb) + ## [v0.2.1] - 2018-10-29 @@ -59,6 +80,7 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - **npm t8r:** Improve handling of missing package.json [`4b32134`](https://github.com/SAP/ui5-project/commit/4b321345139058dc821fb08c4556aff88366ea86) +[v0.2.2]: https://github.com/SAP/ui5-project/compare/v0.2.1...v0.2.2 [v0.2.1]: https://github.com/SAP/ui5-project/compare/v0.2.0...v0.2.1 [v0.2.0]: https://github.com/SAP/ui5-project/compare/v0.1.0...v0.2.0 [v0.1.0]: https://github.com/SAP/ui5-project/compare/v0.0.1...v0.1.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8fe40cf6ae6..309a02774ea 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.1", + "version": "0.2.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index d04bfafdbde..2b5d0b45209 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.1", + "version": "0.2.2", "description": "UI5 Build and Development Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 3497a012fef1d04fd4a81ec8c712650661171954 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Sat, 17 Nov 2018 11:39:38 +0000 Subject: [PATCH 0071/1272] [ui5-project]Bump graceful-fs from 4.1.11 to 4.1.15 Bumps [graceful-fs](https://github.com/isaacs/node-graceful-fs) from 4.1.11 to 4.1.15. - [Release notes](https://github.com/isaacs/node-graceful-fs/releases) - [Commits](https://github.com/isaacs/node-graceful-fs/compare/v4.1.11...v4.1.15) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 309a02774ea..19fd1998d94 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -3872,9 +3872,9 @@ } }, "graceful-fs": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" }, "growl": { "version": "1.10.5", diff --git a/packages/project/package.json b/packages/project/package.json index 2b5d0b45209..57aa226a5ad 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -94,7 +94,7 @@ "dependencies": { "@ui5/builder": "^0.2.5", "@ui5/logger": "^0.2.2", - "graceful-fs": "^4.1.11", + "graceful-fs": "^4.1.15", "js-yaml": "^3.10.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", From 277a10a0a12c692d83fce4b817d1449918efe693 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 20 Nov 2018 17:01:09 +0200 Subject: [PATCH 0072/1272] [ui5-project][INTERNAL] npm t8r: Handle projects with explicitly zero UI5 dependencies --- packages/project/lib/translators/npm.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 59e2ee56a13..093a6938c1b 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -62,7 +62,7 @@ class NpmTranslator { } const ui5Deps = pkg.ui5 && pkg.ui5.dependencies; - if (ui5Deps && ui5Deps.length) { + if (ui5Deps && Array.isArray(ui5Deps)) { for (let i = 0; i < ui5Deps.length; i++) { const depName = ui5Deps[i]; if (!dependencies[depName] && !optDependencies[depName]) { From 9055eab9f4755c4150bb1664d6e47b978320a4d8 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 20 Nov 2018 16:14:34 +0100 Subject: [PATCH 0073/1272] [ui5-project][FIX] npm t8r: Again, handle npm optionalDependencies correctly Fixes the fix done in #60. Fixes: #51 --- packages/project/lib/translators/npm.js | 34 +++++++------------ .../library.d/main/src/library/d/.library | 11 ++++++ .../library.d/main/src/library/d/some.js | 4 +++ .../library.d/main/test/library/d/Test.html | 0 .../node_modules/library.d/package.json | 9 +++++ .../node_modules/library.d/ui5.yaml | 10 ++++++ .../test/fixtures/application.g/package.json | 1 + packages/project/test/lib/translators/npm.js | 9 ++++- 8 files changed, 56 insertions(+), 22 deletions(-) create mode 100644 packages/project/test/fixtures/application.g/node_modules/library.d/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/application.g/node_modules/library.d/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/application.g/node_modules/library.d/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/application.g/node_modules/library.d/package.json create mode 100644 packages/project/test/fixtures/application.g/node_modules/library.d/ui5.yaml diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 093a6938c1b..8108adab900 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -33,25 +33,6 @@ class NpmTranslator { let dependencies = pkg.dependencies || {}; let optDependencies = pkg.devDependencies || {}; - // Due to normalization done by by the "read-pkg-up" module the values - // in optionalDependencies get added to dependencies. Also as described here: - // https://github.com/npm/normalize-package-data#what-normalization-currently-entails - // Note: optionalDependencies are treated the same as devDependencies in the npm translator - if (pkg.optionalDependencies) { - for (const depName in pkg.optionalDependencies) { - if (pkg.optionalDependencies.hasOwnProperty(depName)) { - // Remove entry from "hard" dependencies map - if (dependencies[depName]) { - delete dependencies[depName]; - } - // Add to optional dependencies map (of not already done) - if (optDependencies.hasOwnProperty(depName)) { - optDependencies[depName] = pkg.optionalDependencies[depName]; - } - } - } - } - const version = pkg.version; // Also look for "napa" dependencies (see https://github.com/shama/napa) @@ -96,7 +77,8 @@ class NpmTranslator { return this.getDepProjects({ cwd, parentName: moduleName, - dependencies + dependencies, + optionalDependencies: pkg.optionalDependencies }).then((depProjects) => { // Array needs to be flattened because: // getDepProjects returns array * 2 = array with two arrays @@ -141,11 +123,21 @@ class NpmTranslator { } } - getDepProjects({cwd, dependencies, parentName}) { + getDepProjects({cwd, dependencies, optionalDependencies, parentName}) { return Promise.all( Object.keys(dependencies).map((moduleName) => { return this.findModulePath(cwd, moduleName).then((modulePath) => { return this.readProject({modulePath, moduleName, parentName}); + }, (err) => { + // Due to normalization done by by the "read-pkg-up" module the values + // in optionalDependencies get added to dependencies. Also as described here: + // https://github.com/npm/normalize-package-data#what-normalization-currently-entails + // Resolution errors of optionalDependencies are being ignored + if (optionalDependencies && optionalDependencies[moduleName]) { + return null; + } else { + throw err; + } }); }) ).then((depProjects) => { diff --git a/packages/project/test/fixtures/application.g/node_modules/library.d/main/src/library/d/.library b/packages/project/test/fixtures/application.g/node_modules/library.d/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/application.g/node_modules/library.d/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/application.g/node_modules/library.d/main/src/library/d/some.js b/packages/project/test/fixtures/application.g/node_modules/library.d/main/src/library/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/application.g/node_modules/library.d/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/application.g/node_modules/library.d/main/test/library/d/Test.html b/packages/project/test/fixtures/application.g/node_modules/library.d/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/application.g/node_modules/library.d/package.json b/packages/project/test/fixtures/application.g/node_modules/library.d/package.json new file mode 100644 index 00000000000..90c75040abe --- /dev/null +++ b/packages/project/test/fixtures/application.g/node_modules/library.d/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.g/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.g/node_modules/library.d/ui5.yaml new file mode 100644 index 00000000000..c39a8461dd2 --- /dev/null +++ b/packages/project/test/fixtures/application.g/node_modules/library.d/ui5.yaml @@ -0,0 +1,10 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/application.g/package.json b/packages/project/test/fixtures/application.g/package.json index 5ff741a8276..41d1ea32cf2 100644 --- a/packages/project/test/fixtures/application.g/package.json +++ b/packages/project/test/fixtures/application.g/package.json @@ -4,6 +4,7 @@ "description": "Simple SAPUI5 based application - test for npm optionalDependencies", "main": "index.html", "optionalDependencies": { + "library.d": "file:../library.d", "library.nonexistent": "file:../library.nonexistent" }, "scripts": { diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index f80f70c8538..2320b9426b5 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -238,5 +238,12 @@ const applicationGTree = { id: "application.g", version: "1.0.0", path: applicationGPath, - dependencies: [] + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: path.join(applicationGPath, "node_modules", "library.d"), + dependencies: [] + } + ] }; From e275299249bc831b15b9b369187886692a61ae20 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 20 Nov 2018 16:17:07 +0100 Subject: [PATCH 0074/1272] [ui5-project][INTERNAL] npm t8r: Prevent re-throwing own errors --- packages/project/lib/translators/npm.js | 11 ++++++----- packages/project/test/lib/translators/npm.js | 3 +-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 8108adab900..60642d898fe 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -221,15 +221,16 @@ class NpmTranslator { log.verbose("Found module %s in that collection", moduleName); return modulePath; } - throw new Error(`Could not find module ${moduleName} in collection ${pkg.name}`); + throw new Error(`[npm translator] Could not find module ${moduleName} in collection ${pkg.name}`); } } - throw new Error(`Could not locate module ${moduleName} via resolve logic ` + + + throw new Error(`[npm translator] Could not locate module ${moduleName} via resolve logic ` + `(error: ${err.message}) or in a collection`); + }, (err) => { + throw new Error( + `[npm translator] Failed to locate module ${moduleName} from ${basePath} - Error: ${err.message}`); }); - }).catch((err) => { - throw new Error( - `[npm translator] Failed to locate module ${moduleName} from ${basePath} - Error: ${err.message}`); }); } diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index 2320b9426b5..9ede9412fa8 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -63,8 +63,7 @@ test("Error: missing package.json", async (t) => { test("Error: missing dependency", async (t) => { const error = await t.throws(npmTranslator.generateDependencyTree(errApplicationAPath)); - t.is(error.message, "[npm translator] Failed to locate module library.xx from " + - errApplicationAPath + " - Error: Could not locate " + + t.is(error.message, "[npm translator] Could not locate " + "module library.xx via resolve logic (error: Cannot find module 'library.xx/package.json' from '" + errApplicationAPath + "') or in a collection"); }); From 6df21eddc695c0c2caac16241aa7cdc09a3967a5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 20 Nov 2018 16:18:01 +0000 Subject: [PATCH 0075/1272] [ui5-project]Release 0.2.3 --- packages/project/CHANGELOG.md | 15 +++++++++++++-- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 4222bbf711b..6414520efdc 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,20 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.3...HEAD). + + +## [v0.2.3] - 2018-11-20 +### Bug Fixes +- **npm t8r:** Again, handle npm optionalDependencies correctly [`9fd78dc`](https://github.com/SAP/ui5-project/commit/9fd78dca4d836f9a37036fd151a78e9295b28aa1) + +### Internal Changes +- **npm t8r:** Prevent re-throwing own errors [`63f15d3`](https://github.com/SAP/ui5-project/commit/63f15d320b67249c81394d4d4508e83d403e9230) +- **npm t8r:** Handle projects with explicitly zero UI5 dependencies [`7fe6269`](https://github.com/SAP/ui5-project/commit/7fe626943b8a6a4bb53b3e43c93aafbe2b92ef1b) + -## [v0.2.2] - 2018-11-16 +## [v0.2.2] - 2018-11-17 ### Bug Fixes - **npm t8r:** Handle npm optionalDependencies correctly [`da707d7`](https://github.com/SAP/ui5-project/commit/da707d73b5c75b489e2e499de2b4f54924018844) @@ -80,6 +90,7 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - **npm t8r:** Improve handling of missing package.json [`4b32134`](https://github.com/SAP/ui5-project/commit/4b321345139058dc821fb08c4556aff88366ea86) +[v0.2.3]: https://github.com/SAP/ui5-project/compare/v0.2.2...v0.2.3 [v0.2.2]: https://github.com/SAP/ui5-project/compare/v0.2.1...v0.2.2 [v0.2.1]: https://github.com/SAP/ui5-project/compare/v0.2.0...v0.2.1 [v0.2.0]: https://github.com/SAP/ui5-project/compare/v0.1.0...v0.2.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 19fd1998d94..c2f8cf7052c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.2", + "version": "0.2.3", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 57aa226a5ad..80b7379768b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.2", + "version": "0.2.3", "description": "UI5 Build and Development Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 599263e1563f371d1e2f130792addc97d098a4bd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Sat, 1 Dec 2018 07:38:58 +0000 Subject: [PATCH 0076/1272] [ui5-project]Bump docdash from 1.0.0 to 1.0.1 Bumps [docdash](https://github.com/clenemt/docdash) from 1.0.0 to 1.0.1. - [Release notes](https://github.com/clenemt/docdash/releases) - [Changelog](https://github.com/clenemt/docdash/blob/master/CHANGELOG.md) - [Commits](https://github.com/clenemt/docdash/compare/1.0.0...1.0.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c2f8cf7052c..939e15a0504 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2371,9 +2371,9 @@ } }, "docdash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.0.tgz", - "integrity": "sha512-HhK72PT4z55og8FDqskO/tTYXxU+LovRz+9pCDHLnUoPchkxjdIJidS+96LqW3CLrRdBmnkDRrcVrDFGLIluTw==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.1.tgz", + "integrity": "sha512-m6qqQ3zQZnGv+P/GGpKWja9Zrf50X1NJa9HsPe0DYeaZYUbW+afcSAoG2MUY4bQGeOpq0dkuLhsz2QbefXu95g==", "dev": true }, "doctrine": { diff --git a/packages/project/package.json b/packages/project/package.json index 80b7379768b..6af725f05ce 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,7 +105,7 @@ "ava": "^0.25.0", "coveralls": "^3.0.1", "cross-env": "^5.2.0", - "docdash": "^1.0.0", + "docdash": "^1.0.1", "eslint": "^5.9.0", "eslint-config-google": "^0.11.0", "jsdoc": "^3.5.5", From f7b2c7b04a875f32961514f40fd3ce27ddc7f687 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Thu, 6 Dec 2018 14:19:57 +0000 Subject: [PATCH 0077/1272] [ui5-project]Bump @ui5/builder from 0.2.5 to 0.2.6 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 0.2.5 to 0.2.6. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v0.2.5...v0.2.6) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 939e15a0504..fac84963ab8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -281,9 +281,9 @@ } }, "@ui5/builder": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.5.tgz", - "integrity": "sha512-Xi64vGqT9gdR9lkINc6ShjPy7reSG/Q6FJiSR3z2ya5dEEGrqXe8zJmNY0EgcvkUfyZnVmGzAiQCja1iFqtYDw==", + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.6.tgz", + "integrity": "sha512-47jq1UOjhZtU/CVkxTEswv9neyWQgVu5ZtBRjPmLxs4yC/cz72c2ZDO81BStwXZiXjomHR+AhEfSnpCsw+MIsQ==", "requires": { "@ui5/fs": "^0.2.0", "@ui5/logger": "^0.2.2", @@ -293,7 +293,7 @@ "esprima": "^2.7.2", "estraverse": "^4.2.0", "globby": "^7.1.1", - "graceful-fs": "^4.1.11", + "graceful-fs": "^4.1.15", "less-openui5": "^0.6.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index 6af725f05ce..a81f4e26d96 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^0.2.5", + "@ui5/builder": "^0.2.6", "@ui5/logger": "^0.2.2", "graceful-fs": "^4.1.15", "js-yaml": "^3.10.0", From ba569737d8e2757610ea9dcd75d73f0b8b8dbdf6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Sat, 8 Dec 2018 06:14:23 +0000 Subject: [PATCH 0078/1272] [ui5-project]Bump eslint from 5.9.0 to 5.10.0 Bumps [eslint](https://github.com/eslint/eslint) from 5.9.0 to 5.10.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.9.0...v5.10.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 228 +++++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 83 insertions(+), 147 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fac84963ab8..69a7f44d0d9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -342,9 +342,9 @@ "dev": true }, "acorn-jsx": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.0.tgz", - "integrity": "sha512-XkB50fn0MURDyww9+UYL3c1yLbOBz0ZFvrdYlGB8l+Ije1oSC75qAqrzSPjYQbdnQUzhlUGNKuesryAv0gxZOg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", + "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", "dev": true }, "ajv": { @@ -645,6 +645,12 @@ "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, "async": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", @@ -2290,58 +2296,6 @@ } } }, - "del": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", - "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", - "dev": true, - "requires": { - "globby": "^6.1.0", - "is-path-cwd": "^1.0.0", - "is-path-in-cwd": "^1.0.0", - "p-map": "^1.1.1", - "pify": "^3.0.0", - "rimraf": "^2.2.8" - }, - "dependencies": { - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - } - } - }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -2563,9 +2517,9 @@ } }, "eslint": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.9.0.tgz", - "integrity": "sha512-g4KWpPdqN0nth+goDNICNXGfJF7nNnepthp46CAlJoJtC5K/cLu3NgCM3AHu1CkJ5Hzt9V0Y0PBAO6Ay/gGb+w==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.10.0.tgz", + "integrity": "sha512-HpqzC+BHULKlnPwWae9MaVZ5AXJKpkxCVXQHrFaRw3hbDj26V/9ArYM4Rr/SQ8pi6qUPLXSSXC4RBJlyq2Z2OQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2577,7 +2531,7 @@ "eslint-scope": "^4.0.0", "eslint-utils": "^1.3.1", "eslint-visitor-keys": "^1.0.0", - "espree": "^4.0.0", + "espree": "^5.0.0", "esquery": "^1.0.1", "esutils": "^2.0.2", "file-entry-cache": "^2.0.0", @@ -2587,7 +2541,6 @@ "ignore": "^4.0.6", "imurmurhash": "^0.1.4", "inquirer": "^6.1.0", - "is-resolvable": "^1.1.0", "js-yaml": "^3.12.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.3.0", @@ -2608,30 +2561,10 @@ "text-table": "^0.2.0" }, "dependencies": { - "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", - "dev": true, - "requires": { - "@babel/highlight": "^7.0.0" - } - }, - "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, "ajv": { - "version": "6.5.5", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz", - "integrity": "sha512-7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==", + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.1.tgz", + "integrity": "sha512-ZoJjft5B+EJBjUyu9C9Hc0OZyPZSSlOF+plzouTrg6UlA8f+e/n8NIgBFG/9tppJtpPWfthHakK7juJdNDODww==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -2675,9 +2608,9 @@ "dev": true }, "globals": { - "version": "11.8.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.8.0.tgz", - "integrity": "sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA==", + "version": "11.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.9.0.tgz", + "integrity": "sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==", "dev": true }, "ignore": { @@ -2686,12 +2619,6 @@ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -2771,9 +2698,9 @@ } }, "espree": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-4.1.0.tgz", - "integrity": "sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.0.tgz", + "integrity": "sha512-1MpUfwsdS9MMoN7ZXqAr9e9UKdVHDcvrJpyx7mm1WuQlx/ygErEQBzgi5Nh5qBHIoYweprhtMkTCb9GhcAIcsA==", "dev": true, "requires": { "acorn": "^6.0.2", @@ -3122,14 +3049,14 @@ } }, "flat-cache": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.2.tgz", - "integrity": "sha512-KByBY8c98sLUAGpnmjEdWTrtrLZRtZdwds+kAL/ciFXTCb7AZgqKsAnVnYFQj1hxepwO8JKN/8AsRWwLq+RK0A==", + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", + "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", "dev": true, "requires": { "circular-json": "^0.3.1", - "del": "^3.0.0", "graceful-fs": "^4.1.2", + "rimraf": "~2.6.2", "write": "^0.2.1" } }, @@ -4078,9 +4005,9 @@ "dev": true }, "inquirer": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.0.tgz", - "integrity": "sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.1.tgz", + "integrity": "sha512-088kl3DRT2dLU5riVMKKr1DlImd6X7smDhpXUCkJDCKvTEJeRiXh0G132HG9u5a+6Ylw9plFRY7RuTnwohYSpg==", "dev": true, "requires": { "ansi-escapes": "^3.0.0", @@ -4094,7 +4021,7 @@ "run-async": "^2.2.0", "rxjs": "^6.1.0", "string-width": "^2.1.0", - "strip-ansi": "^4.0.0", + "strip-ansi": "^5.0.0", "through": "^2.3.6" }, "dependencies": { @@ -4118,15 +4045,34 @@ "requires": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.0.0.tgz", + "integrity": "sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.0.0.tgz", + "integrity": "sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==", + "dev": true + } } } } @@ -4348,21 +4294,6 @@ "symbol-observable": "^1.1.0" } }, - "is-path-cwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", - "dev": true - }, - "is-path-in-cwd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", - "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", - "dev": true, - "requires": { - "is-path-inside": "^1.0.0" - } - }, "is-path-inside": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", @@ -4410,12 +4341,6 @@ "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", "dev": true }, - "is-resolvable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", - "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", - "dev": true - }, "is-retry-allowed": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", @@ -6542,12 +6467,6 @@ "p-limit": "^1.1.0" } }, - "p-map": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", - "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", - "dev": true - }, "p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", @@ -6765,9 +6684,9 @@ "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" }, "progress": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.1.tgz", - "integrity": "sha512-OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, "pseudomap": { @@ -7664,21 +7583,21 @@ "dev": true }, "table": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/table/-/table-5.1.0.tgz", - "integrity": "sha512-e542in22ZLhD/fOIuXs/8yDZ9W61ltF8daM88rkRNtgTIct+vI2fTnAyu/Db2TCfEcI8i7mjZz6meLq0nW7TYg==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/table/-/table-5.1.1.tgz", + "integrity": "sha512-NUjapYb/qd4PeFW03HnAuOJ7OMcBkJlqeClWxeNlQ0lXGSb52oZXGzkO0/I0ARegQ2eUT1g2VDJH0eUxDRcHmw==", "dev": true, "requires": { - "ajv": "^6.5.3", - "lodash": "^4.17.10", - "slice-ansi": "1.0.0", + "ajv": "^6.6.1", + "lodash": "^4.17.11", + "slice-ansi": "2.0.0", "string-width": "^2.1.1" }, "dependencies": { "ajv": { - "version": "6.5.5", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz", - "integrity": "sha512-7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==", + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.1.tgz", + "integrity": "sha512-ZoJjft5B+EJBjUyu9C9Hc0OZyPZSSlOF+plzouTrg6UlA8f+e/n8NIgBFG/9tppJtpPWfthHakK7juJdNDODww==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -7711,6 +7630,23 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, + "slice-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.0.0.tgz", + "integrity": "sha512-4j2WTWjp3GsZ+AOagyzVbzp4vWGtZ0hEZ/gDY/uTvm6MTxUfTUIsnMIFb1bn8o0RuXiqUw15H1bue8f22Vw2oQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + } + }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index a81f4e26d96..eb0f68b3ea1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -106,7 +106,7 @@ "coveralls": "^3.0.1", "cross-env": "^5.2.0", "docdash": "^1.0.1", - "eslint": "^5.9.0", + "eslint": "^5.10.0", "eslint-config-google": "^0.11.0", "jsdoc": "^3.5.5", "nyc": "^13.1.0", From 11fae0e087c2cf052ae3813e71e2373583b930c0 Mon Sep 17 00:00:00 2001 From: Tommy Vinh Lam Date: Mon, 3 Dec 2018 17:00:12 +0100 Subject: [PATCH 0079/1272] [ui5-project]Add documentation about Build Extensibility --- packages/project/README.md | 16 +++ packages/project/docs/BuildExtensibility.md | 143 ++++++++++++++++++++ 2 files changed, 159 insertions(+) create mode 100644 packages/project/docs/BuildExtensibility.md diff --git a/packages/project/README.md b/packages/project/README.md index e16aa9666b5..c4f97d70d18 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -212,6 +212,16 @@ resources: configuration: paths: "src": "source" +builder: + customTasks: + - name: custom-task-name-1 + beforeTask: standard-task-name + configuration: + configuration-key: value + - name: custom-task-name-2 + afterTask: custom-task-name-1 + configuration: + color: blue server: settings: port: 8099 @@ -234,6 +244,12 @@ Some general information + For type `library` there can be a setting for mapping the virtual paths `src` and `test` to physical paths within the project - `shims`: Can be used to define, extend or override UI5 configs of dependencies. Inner structure equals the general structure. It is a key-value map where the key equals the project ID as supplied by the translator. +##### builder (optional) +- `customTasks` (optional, list): in this block you can define additional custom build tasks. Please see [here](docs/BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: + - `name` (mandatory): the name of the custom task + - `afterTask` or `beforeTask` (only one, mandatory): the name of the build task after or before which your custom task will be executed. + - `configuration` (optional): additional configuration that will be passed to the custom build task + ##### server (optional) - `settings` (not yet implemented) - `port`: Project default server port. Can be overwritten via CLI parameters. diff --git a/packages/project/docs/BuildExtensibility.md b/packages/project/docs/BuildExtensibility.md new file mode 100644 index 00000000000..cf8b6edb82b --- /dev/null +++ b/packages/project/docs/BuildExtensibility.md @@ -0,0 +1,143 @@ +![UI5 icon](https://raw.githubusercontent.com/SAP/ui5-tooling/master/docs/images/UI5_logo_wide.png) + +# UI5 Build Extensibility + +The UI5 Build Extensibility enables a developer to enhance the build process of any UI5 project. In addition to the [standard task list](https://github.com/SAP/ui5-builder/blob/master/README.md#tasks), custom tasks can be created. + +## Configuration of the Custom Build Process + +You can configure your build process with additional build task. The custom tasks can be defined in the project [configuration](https://github.com/SAP/ui5-project/blob/master/README.md#configuration) within the `ui5.yaml` file. + +In the below example, when building the library `my.library` the `babel` task will be executed before the standard task `generateComponentPreload`. Another custom task called `generateMarkdownFiles` is then executed immediatly after the standard task `uglify`. + +### Example: Configuration of project 'my.library' + +````yaml +--- +# In this example configuration two custom tasks are defined: 'babel' and 'generateMarkdownFiles'. +specVersion: "0.1" +type: library +metadata: + name: my.library +builder: + customTasks: + - name: babel + beforeTask: generateComponentPreload + - name: generateMarkdownFiles + afterTask: uglify + configuration: + color: blue +```` + +### Example: Connect multiple custom tasks + +You can also connect multiple custom task with each other. Please be aware that the order of your definitions is important. You have to make sure that the task is defined before you reference it as `beforeTask` or `afterTask`. + +````yaml +--- +# In this example 'myCustomTask2' gets executed after 'myCustomTask1'. +specVersion: "0.1" +type: library +metadata: + name: my.library +builder: + customTasks: + - name: myCustomTask1 + beforeTask: generateComponentPreload + - name: myCustomTask2 + afterTask: myCustomTask1 +```` + +## Custom Task Extension + +A custom task extension consists of a `ui5.yaml` and a [task implementation](#task-implementation). It can be a standalone module or part of an existing UI5 project. + +### Example: ui5.yaml + +````yaml +--- +specVersion: "0.1" +kind: extension +type: task +metadata: + name: generateMarkdownFiles +task: + path: lib/tasks/generateMarkdownFiles.js +```` + +Task extensions can be **standalone modules** which are handled as dependencies. + +On the other hand you can implement a task extension as **part of your UI5 project**. In that case, the configuration of the extension is part of your project configuration inside the `ui5.yaml` as shown below. + +The task extension will then be automatically collected and processed during the processing of the project. + +### Example: Custom Task Extension defined in UI5 project + +````yaml +# ui5.yaml configuration for the above example + +specVersion: "0.1" +kind: project +type: library +metadata: + name: my.library +builder: + customTasks: + - name: generateMarkdownFiles + afterTask: uglify + configuration: + color: blue +--- +# Task extension as part of your project +specVersion: "0.1" +kind: extension +type: task +metadata: + name: generateMarkdownFiles +task: + path: lib/tasks/generateMarkdownFiles.js +```` + +## Task Implementation + +A custom task implementation needs to return a function with the following signature: + +````javascript +/** + * Custom task example + * + * @param {Object} parameters Parameters + * @param {DuplexCollection} parameters.workspace DuplexCollection to read and write files + * @param {AbstractReader} parameters.dependencies Reader or Collection to read dependency files + * @param {Object} parameters.options Options + * @param {string} parameters.options.projectName Project name + * @param {string} [parameters.options.configuration] Task configuration if given in ui5.yaml + * @returns {Promise} Promise resolving with undefined once data has been written + */ +module.exports = function({workspace, options}) { + // [...] +}; +```` + +The following code snippets shows an example how a task implementation could look like: + +### Example: lib/tasks/generateMarkdownFiles.js + +````javascript +// Task implementation +const markdownGenerator = require("./markdownGenerator"); + +module.exports = function({workspace, options}) { + return workspace.byGlob("**/*.txt") + .then((textResources) => { + return markdownGenerator({ + resources: textResources + }); + }) + .then((markdownResources) => { + return Promise.all(markdownResources.map((resource) => { + return workspace.write(resource); + })); + }); +}; +```` \ No newline at end of file From ca240448ddf5b5cf3144ac70be2ad303caa3ce5d Mon Sep 17 00:00:00 2001 From: Sabine Loss <44154356+SabineLoss@users.noreply.github.com> Date: Tue, 11 Dec 2018 08:57:45 +0100 Subject: [PATCH 0080/1272] [ui5-project][INTERNAL] UA Review README.md --- packages/project/README.md | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/packages/project/README.md b/packages/project/README.md index c4f97d70d18..0f604858e63 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -1,7 +1,7 @@ ![UI5 icon](https://raw.githubusercontent.com/SAP/ui5-tooling/master/docs/images/UI5_logo_wide.png) # ui5-project -> Modules for building a UI5 projects dependency tree, including configuration +> Modules for building a UI5 projects dependency tree, including configuration. > Part of the [UI5 Build and Development Tooling](https://github.com/SAP/ui5-tooling) [![Travis CI Build Status](https://travis-ci.org/SAP/ui5-project.svg?branch=master)](https://travis-ci.org/SAP/ui5-project) @@ -16,15 +16,15 @@ ## Normalizer The purpose of the normalizer is to collect dependency information and to enrich it with project configuration ([generateProjectTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateProjectTree)). -[Translators](#translators) are used to collect dependency information. The [Project Preprocessor](#project-preprocessor) enriches this dependency information with project configuration. Typically from a `ui5.yaml` file. A development server and build process can use this information to locate project- and dependency resources. +[Translators](#translators) are used to collect dependency information. The [Project Preprocessor](#project-preprocessor) enriches this dependency information with project configuration, typically from a `ui5.yaml` file. A development server and build process can use this information to locate project and dependency resources. -To only retrieve the project dependency graph, please use ([generateDependencyTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateDependencyTree)). +If you want to retrieve the project dependency graph only, use ([generateDependencyTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateDependencyTree)). ## Translators -Translators collect recursively all dependencies on a package manager specific layer and return information about them in a well-defined tree-structure. +Translators collect recursively all dependencies on a package manager specific layer and return information about them in a well-defined tree structure. -### Tree structure returned by a translator -The following dependency tree is the expected input structure of the [Project Preprocessor](#project-preprocessor). +### Tree Structure Returned by a Translator +The following dependency tree is the expected input structure of the [Project Preprocessor](#project-preprocessor): ````json { @@ -58,14 +58,14 @@ The following dependency tree is the expected input structure of the [Project Pr ```` ### npm Translator -The npm translator is currently the default translator and looks for dependencies defined in the `package.json` file of a certain project. `dependencies`, `devDepedencies` and [napa dependencies](https://github.com/shama/napa) (Git repositories which don't have a `package.json` file) are located via the Node.js module resolution logic. +The npm translator is currently the default translator and looks for dependencies defined in the `package.json` file of a certain project. `dependencies`, `devDepedencies`, and [napa dependencies](https://github.com/shama/napa) (Git repositories which don't have a `package.json` file) are located via the Node.js module resolution logic. ### Static Translator *This translator is currently intended for testing purposes only.* Can be used to supply the full dependency information of a project in a single structured file. -Usage example: `ui5 serve -b static:/path/to/projectDependencies.yaml` +Example: `ui5 serve -b static:/path/to/projectDependencies.yaml` `projectDependencies.yaml` contains something like: ````yaml --- @@ -85,7 +85,7 @@ dependencies: ## Project Preprocessor Enhances a given dependency tree based on a projects [configuration](#configuration). -### Enhanced dependency tree structure returned by the Project Preprocessor +### Enhanced Dependency Tree Structure Returned by the Project Preprocessor ````json { "id": "projectA", @@ -183,8 +183,8 @@ Enhances a given dependency tree based on a projects [configuration](#configurat ```` ## Configuration -### Project configuration -Typically located in a per-project `ui5.yaml` file. +### Project Configuration +Typically located in a `ui5.yaml` file per project. #### Structure ##### YAML @@ -230,10 +230,10 @@ server: #### Properties ##### \ - `specVersion`: Version of the specification -- `type`: Either `application`, `library` or `custom` (custom not yet implemented). Defines default path mappings and build steps. Custom doesn't define any specific defaults +- `type`: Either `application`, `library` or `custom` (custom not yet implemented); defines the default path mappings and build steps. Custom doesn't define any specific defaults. ##### metadata -Some general information +Some general information: - `name`: Name of the application/library/resource - `copyright` (optional): String to be used for replacement of copyright placeholders in the project @@ -242,17 +242,17 @@ Some general information - `paths`: Mapping between virtual and physical paths + For type `application` there can be a setting for mapping the virtual path `webapp` to a physical path within the project + For type `library` there can be a setting for mapping the virtual paths `src` and `test` to physical paths within the project -- `shims`: Can be used to define, extend or override UI5 configs of dependencies. Inner structure equals the general structure. It is a key-value map where the key equals the project ID as supplied by the translator. +- `shims`: Can be used to define, extend, or override UI5 configs of dependencies. Inner structure equals the general structure. It is a key-value map where the key equals the project ID as supplied by the translator. ##### builder (optional) -- `customTasks` (optional, list): in this block you can define additional custom build tasks. Please see [here](docs/BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: - - `name` (mandatory): the name of the custom task - - `afterTask` or `beforeTask` (only one, mandatory): the name of the build task after or before which your custom task will be executed. - - `configuration` (optional): additional configuration that will be passed to the custom build task +- `customTasks` (optional, list): In this block, you define additional custom build tasks, see [here](docs/BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: + - `name` (mandatory): The name of the custom task + - `afterTask` or `beforeTask` (only one, mandatory): The name of the build task after or before which your custom task will be executed. + - `configuration` (optional): Additional configuration that is passed to the custom build task ##### server (optional) - `settings` (not yet implemented) - - `port`: Project default server port. Can be overwritten via CLI parameters. + - `port`: Project default server port; can be overwritten via CLI parameters ## Contributing Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md). From 7a9e4fe8b6c13b3d866b0adef384405e6cf1fd59 Mon Sep 17 00:00:00 2001 From: Roman <6095741+romaniam@users.noreply.github.com> Date: Mon, 17 Dec 2018 15:12:56 +0100 Subject: [PATCH 0081/1272] [ui5-project][INTERNAL] static translator and normalizer: Add tests --- packages/project/lib/normalizer.js | 103 +++++----- packages/project/lib/translators/static.js | 4 +- packages/project/package-lock.json | 193 ++++++++++++++---- packages/project/package.json | 1 + .../application.h/projectDependencies.yaml | 13 ++ packages/project/test/lib/normalizer.js | 38 ++++ .../project/test/lib/translators/static.js | 44 ++++ 7 files changed, 304 insertions(+), 92 deletions(-) create mode 100644 packages/project/test/fixtures/application.h/projectDependencies.yaml create mode 100644 packages/project/test/lib/normalizer.js create mode 100644 packages/project/test/lib/translators/static.js diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index ac3a6ad0c90..d65a632171e 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -1,67 +1,66 @@ const log = require("@ui5/logger").getLogger("normalizer:normalizer"); const projectPreprocessor = require("./projectPreprocessor"); + /** * Generate project and dependency trees via translators. Optionally configure all projects with the projectPreprocessor. * * @module normalizer/normalizer */ +const Normalizer = { -/** - * Generates a project and dependency tree via translators and configures all projects via the projectPreprocessor - * - * @param {Object} options Options - * @param {string} options.cwd Current working directory - * @param {string} options.configPath Path to configuration file - * @param {string} options.translator Translator to use - * @returns {Promise} Promise resolving to tree object - */ -async function generateProjectTree(options) { - const tree = await generateDependencyTree(options); + /** + * Generates a project and dependency tree via translators and configures all projects via the projectPreprocessor + * + * @param {Object} options Options + * @param {string} options.cwd Current working directory + * @param {string} options.configPath Path to configuration file + * @param {string} options.translator Translator to use + * @returns {Promise} Promise resolving to tree object + */ + generateProjectTree: async function(options = {}) { + const tree = await Normalizer.generateDependencyTree(options); - if (options.configPath) { - tree.configPath = options.configPath; - } - return projectPreprocessor.processTree(tree); -} + if (options.configPath) { + tree.configPath = options.configPath; + } + return projectPreprocessor.processTree(tree); + }, + /** + * Generates a project and dependency tree via translators + * + * @param {Object} options Options + * @param {string} options.cwd Current working directory + * @param {string} options.configPath Path to configuration file + * @param {string} options.translator Translator to use + * @returns {Promise} Promise resolving to tree object + */ + generateDependencyTree: async function(options = {}) { + log.verbose("Building dependency tree..."); + const cwd = options && options.cwd || "."; -/** - * Generates a project and dependency tree via translators - * - * @param {Object} options Options - * @param {string} options.cwd Current working directory - * @param {string} options.configPath Path to configuration file - * @param {string} options.translator Translator to use - * @returns {Promise} Promise resolving to tree object - */ -async function generateDependencyTree(options) { - log.verbose("Building dependency tree..."); - const cwd = options && options.cwd || "."; + let translatorName = "npm"; // Default is npm translator + let translatorParams = []; + if (options.translator) { + const translatorOptions = options.translator.split(":"); + translatorName = translatorOptions[0]; + translatorParams = translatorOptions.slice(1); + } - let translatorName = "npm"; // Default is npm translator - let translatorParams = []; - if (options.translator) { - const translatorOptions = options.translator.split(":"); - translatorName = translatorOptions[0]; - translatorParams = translatorOptions.slice(1); - } + let translator; + switch (translatorName) { + case "static": + translator = require("./translators/static"); + break; + case "npm": + translator = require("./translators/npm"); + break; + default: + return Promise.reject(new Error(`Unknown translator ${translatorName}`)); + } - let translator; - switch (translatorName) { - case "static": - translator = require("./translators/static"); - break; - case "npm": - translator = require("./translators/npm"); - break; - default: - throw new Error(`Unkown translator ${translatorName}`); + return translator.generateDependencyTree(cwd, translatorParams); } - - return translator.generateDependencyTree(cwd, translatorParams); -} - -module.exports = { - generateProjectTree, - generateDependencyTree }; + +module.exports = Normalizer; diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index 6488733e505..34ee513cf55 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -17,13 +17,13 @@ const parseYaml = require("js-yaml").safeLoad; * @param {Array} [translatorOptions] Configuration options * @returns {Promise} Promise resolving with a dependency tree */ -function generateDependencyTree(dirPath, translatorOptions) { +function generateDependencyTree(dirPath, translatorOptions = []) { const depFilePath = translatorOptions[0] || path.join(dirPath, "projectDependencies.yaml"); return new Promise(function(resolve, reject) { fs.readFile(depFilePath, function(err, buffer) { if (err) { - reject(err); + reject(new Error(`[static translator] Failed to locate projectDependencies.json at path: "${dirPath}" - Error: ${err.message}`)); } else { resolve(parseYaml(buffer.toString(), { filename: depFilePath diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 69a7f44d0d9..d67d14de7dc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -280,6 +280,35 @@ } } }, + "@sinonjs/commons": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.3.0.tgz", + "integrity": "sha512-j4ZwhaHmwsCb4DlDOIWnI5YyKDNMoNThsmwEpfHx6a1EpsGZ9qYLxP++LMlmBRjtGptGHFsGItJ768snllFWpA==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/formatio": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.1.0.tgz", + "integrity": "sha512-ZAR2bPHOl4Xg6eklUGpsdiIJ4+J1SNag1DHHrG/73Uz/nVwXqjgUtRPLoS+aVyieN9cSbc0E4LsU984tWcDyNg==", + "dev": true, + "requires": { + "@sinonjs/samsam": "^2 || ^3" + } + }, + "@sinonjs/samsam": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.0.2.tgz", + "integrity": "sha512-m08g4CS3J6lwRQk1pj1EO+KEVWbrbXsmi9Pw0ySmrIbcVxVaedoFgLvFsV8wHLwh01EpROVz3KvVcD1Jmks9FQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.0.2", + "array-from": "^2.1.1", + "lodash.get": "^4.4.2" + } + }, "@ui5/builder": { "version": "0.2.6", "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.6.tgz", @@ -607,6 +636,12 @@ "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", "dev": true }, + "array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", + "dev": true + }, "array-union": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", @@ -2315,6 +2350,12 @@ "repeating": "^2.0.0" } }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, "dir-glob": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", @@ -3133,8 +3174,7 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", @@ -3155,14 +3195,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3177,20 +3215,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -3307,8 +3342,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -3320,7 +3354,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3335,7 +3368,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3343,14 +3375,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -3369,7 +3399,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -3450,8 +3479,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -3463,7 +3491,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -3549,8 +3576,7 @@ "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -3586,7 +3612,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3606,7 +3631,6 @@ "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3650,14 +3674,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true } } }, @@ -4546,6 +4568,12 @@ "verror": "1.10.0" } }, + "just-extend": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-3.0.0.tgz", + "integrity": "sha512-Fu3T6pKBuxjWT/p4DkqGHFRsysc8OauWr4ZRTY9dIx07Y9O0RkoR5jcv28aeD1vuAwhm3nLkDurwLXoALp4DpQ==", + "dev": true + }, "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", @@ -4705,6 +4733,12 @@ "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", "dev": true }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, "lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", @@ -4738,6 +4772,12 @@ "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", "dev": true }, + "lolex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-3.0.0.tgz", + "integrity": "sha512-hcnW80h3j2lbUfFdMArd5UPA/vxZJ+G8vobd+wg3nVEQA0EigStbYcrG030FJxL6xiDDPEkoMatV9xIh5OecQQ==", + "dev": true + }, "loose-envify": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", @@ -5114,6 +5154,27 @@ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", "dev": true }, + "nise": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.7.tgz", + "integrity": "sha512-5cxvo/pEAEHBX5s0zl+zd96BvHHuua/zttIHeQuTWSDjGrWsEHamty8xbZNfocC+fx7NMrle7XHvvxtFxobIZQ==", + "dev": true, + "requires": { + "@sinonjs/formatio": "^3.1.0", + "just-extend": "^3.0.0", + "lolex": "^2.3.2", + "path-to-regexp": "^1.7.0", + "text-encoding": "^0.6.4" + }, + "dependencies": { + "lolex": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", + "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", + "dev": true + } + } + }, "normalize-package-data": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", @@ -5195,7 +5256,6 @@ "version": "0.1.4", "bundled": true, "dev": true, - "optional": true, "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -5520,8 +5580,7 @@ "is-buffer": { "version": "1.1.6", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "is-builtin-module": { "version": "1.0.0", @@ -5605,7 +5664,6 @@ "version": "3.2.2", "bundled": true, "dev": true, - "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -5652,8 +5710,7 @@ "longest": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "lru-cache": { "version": "4.1.3", @@ -5919,8 +5976,7 @@ "repeat-string": { "version": "1.6.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "require-directory": { "version": "2.1.1", @@ -6556,6 +6612,23 @@ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=" }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "dev": true, + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, "path-type": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", @@ -7212,6 +7285,38 @@ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, + "sinon": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.2.0.tgz", + "integrity": "sha512-N+ebPVqU55E6IUUGPSia57D5nTlCjfxrVR/33KTMRjsJJP5ZoGW1TXyLa2kDREgMtzqdnnksv7gA9oGC2v2LGw==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.2.0", + "@sinonjs/formatio": "^3.1.0", + "@sinonjs/samsam": "^3.0.1", + "diff": "^3.5.0", + "lolex": "^3.0.0", + "nise": "^1.4.7", + "supports-color": "^5.5.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, "slash": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", @@ -7764,6 +7869,12 @@ "execa": "^0.7.0" } }, + "text-encoding": { + "version": "0.6.4", + "resolved": "http://registry.npmjs.org/text-encoding/-/text-encoding-0.6.4.tgz", + "integrity": "sha1-45mpgiV6J22uQou5KEXLcb3CbRk=", + "dev": true + }, "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -7910,6 +8021,12 @@ "prelude-ls": "~1.1.2" } }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, "uglify-es": { "version": "3.3.9", "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index eb0f68b3ea1..ebe0475f77c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -110,6 +110,7 @@ "eslint-config-google": "^0.11.0", "jsdoc": "^3.5.5", "nyc": "^13.1.0", + "sinon": "^7.2.0", "tap-nyan": "^1.1.0" } } diff --git a/packages/project/test/fixtures/application.h/projectDependencies.yaml b/packages/project/test/fixtures/application.h/projectDependencies.yaml new file mode 100644 index 00000000000..5476e8a0c4b --- /dev/null +++ b/packages/project/test/fixtures/application.h/projectDependencies.yaml @@ -0,0 +1,13 @@ +--- +id: testsuite +version: "0.0.1" +description: "Sample App" +main: "index.html" +path: "./" +dependencies: +- id: sap.f + version: "1.56.1" + path: "../sap.f" +- id: sap.m + version: "1.61.0" + path: "../sap.m" \ No newline at end of file diff --git a/packages/project/test/lib/normalizer.js b/packages/project/test/lib/normalizer.js new file mode 100644 index 00000000000..47e022dd1c4 --- /dev/null +++ b/packages/project/test/lib/normalizer.js @@ -0,0 +1,38 @@ +const {test} = require("ava"); +const sinon = require("sinon"); +const normalizer = require("../..").normalizer; +const npmTranslatorStub = sinon.stub(require("../..").translators.npm); +const staticTranslatorStub = sinon.stub(require("../..").translators.static); +const projectPreprocessor = require("../../lib/projectPreprocessor"); + +test.serial("Uses npm translator as default strategy", (t) => { + normalizer.generateDependencyTree(); + t.truthy(npmTranslatorStub.generateDependencyTree.called); +}); + +test.serial("Uses static translator as strategy", (t) => { + normalizer.generateDependencyTree({ + translator: "static" + }); + t.truthy(staticTranslatorStub.generateDependencyTree.called); +}); + +test.serial("Generate project tree using with overwritten config path", async (t) => { + sinon.stub(normalizer, "generateDependencyTree").resolves({configPath: "defaultPath/config.json"}); + const projectPreprocessorStub = sinon.stub(projectPreprocessor, "processTree").resolves(true); + await normalizer.generateProjectTree({configPath: "newPath/config.json"}); + t.deepEqual(projectPreprocessorStub.getCall(0).args[0], { + configPath: "newPath/config.json" + }, "Process tree with config loaded from custom path"); + projectPreprocessorStub.restore(); + normalizer.generateDependencyTree.restore(); +}); + +test("Error: Throws if unknown translator should be used as strategy", async (t) => { + const translator = "notExistingTranslator"; + return normalizer.generateDependencyTree({ + translator + }).catch((error) => { + t.is(error.message, `Unknown translator ${translator}`); + }); +}); diff --git a/packages/project/test/lib/translators/static.js b/packages/project/test/lib/translators/static.js new file mode 100644 index 00000000000..5004bb8b61c --- /dev/null +++ b/packages/project/test/lib/translators/static.js @@ -0,0 +1,44 @@ +const {test} = require("ava"); +const path = require("path"); +const fs = require("graceful-fs"); +const sinon = require("sinon"); +const staticTranslator = require("../../..").translators.static; +const projectPath = path.join(__dirname, "..", "..", "fixtures", "application.h"); + +test("Generates dependency tree for project with projectDependencies.yaml", (t) => { + return staticTranslator.generateDependencyTree(projectPath) + .then((parsedTree) => { + t.deepEqual(parsedTree, expectedTree, "Parsed correctly"); + }); +}); + + +test("Error: Throws if projectDependencies.yaml was not found", async (t) => { + const projectPath = "notExistingPath"; + const fsError = new Error("File not found"); + const fsStub = sinon.stub(fs, "readFile"); + fsStub.callsArgWith(1, fsError); + const error = await t.throws(staticTranslator.generateDependencyTree(projectPath)); + t.is(error.message, `[static translator] Failed to locate projectDependencies.json at path: "${projectPath}" - Error: ${fsError.message}`); + fsStub.restore(); +}); + +const expectedTree = { + id: "testsuite", + version: "0.0.1", + description: "Sample App", + main: "index.html", + path: "./", + dependencies: [ + { + id: "sap.f", + version: "1.56.1", + path: "../sap.f" + }, + { + id: "sap.m", + version: "1.61.0", + path: "../sap.m" + } + ] +}; From 43861beba7621fc07a1bec87cef6dd49e63e12b0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 29 Oct 2018 16:07:48 +0100 Subject: [PATCH 0082/1272] [ui5-project][INTERNAL] Add tests for cyclic dependency handling --- packages/project/lib/translators/npm.js | 2 +- .../application.cycle.a/package.json | 12 ++ .../node_modules/application.cycle.a/ui5.yaml | 5 + .../application.cycle.a/webapp/index.html | 9 + .../application.cycle.a/webapp/test.js | 5 + .../application.cycle.b/package.json | 13 ++ .../node_modules/application.cycle.b/ui5.yaml | 5 + .../application.cycle.b/webapp/index.html | 9 + .../application.cycle.b/webapp/test.js | 5 + .../application.cycle.c/package.json | 15 ++ .../node_modules/application.cycle.c/ui5.yaml | 5 + .../application.cycle.c/webapp/index.html | 9 + .../application.cycle.c/webapp/test.js | 5 + .../component.cycle.a/package.json | 15 ++ .../src/component/cycle/a/.library | 11 ++ .../src/component/cycle/a/some.js | 4 + .../test/component/cycle/a/Test.html | 0 .../node_modules/component.cycle.a/ui5.yaml | 9 + .../node_modules/library.cycle.a/package.json | 11 ++ .../library.cycle.a/src/cycle/a/.library | 11 ++ .../library.cycle.a/src/cycle/a/some.js | 4 + .../library.cycle.a/test/cycle/a/Test.html | 0 .../node_modules/library.cycle.a/ui5.yaml | 9 + .../node_modules/library.cycle.b/package.json | 11 ++ .../library.cycle.b/src/cycle/b/.library | 11 ++ .../library.cycle.b/src/cycle/b/some.js | 4 + .../library.cycle.b/test/cycle/b/Test.html | 0 .../node_modules/library.cycle.b/ui5.yaml | 9 + .../node_modules/module.a/package.json | 11 ++ .../node_modules/module.b/package.json | 11 ++ .../node_modules/module.c/package.json | 11 ++ .../node_modules/module.d/package.json | 11 ++ .../node_modules/module.e/package.json | 11 ++ .../node_modules/module.f/package.json | 11 ++ .../node_modules/module.g/package.json | 11 ++ packages/project/test/lib/translators/npm.js | 179 ++++++++++++++++++ 36 files changed, 463 insertions(+), 1 deletion(-) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/index.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/test.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/index.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/test.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/index.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/test.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/.library create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/some.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/test/component/cycle/a/Test.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/.library create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/some.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/test/cycle/a/Test.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/.library create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/some.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/test/cycle/b/Test.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.a/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.b/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.c/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.d/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.e/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.f/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.g/package.json diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 60642d898fe..2bfa3c081e3 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -52,7 +52,7 @@ class NpmTranslator { } } // When UI5-dependencies are defined, we don't care whether an npm dependency is optional or not. - // All UI5-dependendies need to be there. + // All UI5-dependencies need to be there. dependencies = Object.assign({}, dependencies, optDependencies); optDependencies = {}; diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/package.json new file mode 100644 index 00000000000..05ce5b9a95f --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/package.json @@ -0,0 +1,12 @@ +{ + "name": "application.cycle.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - Test for cyclic UI5 dependencies", + "main": "index.html", + "dependencies": { + "component.cycle.a": "file:../component.cycle.a" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/ui5.yaml new file mode 100644 index 00000000000..16ac128fb4c --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.cycle.a diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/index.html new file mode 100644 index 00000000000..daa631f7ba8 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/index.html @@ -0,0 +1,9 @@ + + + + Application Cycle A + + + + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/package.json new file mode 100644 index 00000000000..691d79e5632 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/package.json @@ -0,0 +1,13 @@ +{ + "name": "application.cycle.b", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - Test for cyclic npm (non-UI5) dependencies - Cycle on second level via dev dependency", + "main": "index.html", + "dependencies": { + "module.d": "file:../module.d", + "module.e": "file:../module.e" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/ui5.yaml new file mode 100644 index 00000000000..557b0aa636a --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.cycle.b diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/index.html new file mode 100644 index 00000000000..fb845822a8e --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/index.html @@ -0,0 +1,9 @@ + + + + Application Cycle B + + + + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/package.json new file mode 100644 index 00000000000..be7d0f8d266 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/package.json @@ -0,0 +1,15 @@ +{ + "name": "application.cycle.c", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - Test for cyclic npm (non-UI5) dependencies - Cycle on third level", + "_ui5_test_comment": "This scenario can't be tested using file: URLs as npm can't create cyclic symlinks.", + "_ui5_test_comment2": "However publishing to and installing from a registry works.", + "main": "index.html", + "dependencies": { + "module.f": "^1.0.0", + "module.g": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/ui5.yaml new file mode 100644 index 00000000000..44420029d3d --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.cycle.c diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/index.html new file mode 100644 index 00000000000..a845ac4258e --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/index.html @@ -0,0 +1,9 @@ + + + + Application Cycle C + + + + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/package.json new file mode 100644 index 00000000000..5aa7c632aa8 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/package.json @@ -0,0 +1,15 @@ +{ + "name": "component.cycle.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - Test for cyclic dependencies", + "dependencies": { + "library.cycle.a": "file:../library.cycle.a", + "library.cycle.b": "file:../library.cycle.b" + }, + "devDependencies": { + "application.cycle.a": "file:../application.cycle.a" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/.library new file mode 100644 index 00000000000..e2eb7bd4c7c --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/.library @@ -0,0 +1,11 @@ + + + + component.cycle.a + SAP SE + ${copyright} + ${version} + + Component Cycle A + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/test/component/cycle/a/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/test/component/cycle/a/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/ui5.yaml new file mode 100644 index 00000000000..87e92d6d1a1 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: component.cycle.a + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/package.json new file mode 100644 index 00000000000..075a4ecc697 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.cycle.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - Test for cyclic dependencies", + "devDependencies": { + "component.cycle.a": "file:../component.cycle.a" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/.library new file mode 100644 index 00000000000..5fd459a0d3e --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/.library @@ -0,0 +1,11 @@ + + + + library.cycle.a + SAP SE + ${copyright} + ${version} + + Library Cycle A + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/test/cycle/a/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/test/cycle/a/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/ui5.yaml new file mode 100644 index 00000000000..124aef34ff2 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.cycle.a + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/package.json new file mode 100644 index 00000000000..5c96c965895 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.cycle.b", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - Test for cyclic dependencies", + "devDependencies": { + "component.cycle.a": "file:../component.cycle.a" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/.library new file mode 100644 index 00000000000..bc47d278ec7 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/.library @@ -0,0 +1,11 @@ + + + + library.cycle.b + SAP SE + ${copyright} + ${version} + + Library Cycle B + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/test/cycle/b/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/test/cycle/b/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/ui5.yaml new file mode 100644 index 00000000000..13ef9e228a3 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.cycle.b + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.a/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.a/package.json new file mode 100644 index 00000000000..8c1b6acefc2 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.a/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.a", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - cycle via module.c", + "dependencies": { + "module.b": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.b/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.b/package.json new file mode 100644 index 00000000000..d81d5b4d068 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.b/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.b", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies", + "dependencies": { + "module.c": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.c/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.c/package.json new file mode 100644 index 00000000000..d186194e607 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.c/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.c", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies- cycle via module.a", + "dependencies": { + "module.a": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.d/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.d/package.json new file mode 100644 index 00000000000..f591d59bf92 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.d/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.d", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - cycle with module.e", + "dependencies": { + "module.e": "file:../module.e" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.e/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.e/package.json new file mode 100644 index 00000000000..f72159ade34 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.e/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.e", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - cycle with module.d", + "devDependencies": { + "module.d": "file:../module.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.f/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.f/package.json new file mode 100644 index 00000000000..29ff93f8b41 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.f/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.f", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - cycle via module.c", + "dependencies": { + "module.a": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.g/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.g/package.json new file mode 100644 index 00000000000..92ba49c9454 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.g/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.g", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - cycle via module.c", + "dependencies": { + "module.a": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index 9ede9412fa8..ec6da82b4fa 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -55,6 +55,185 @@ test("AppG: project with npm 'optionalDependencies' should not fail if optional }); }); +test("AppCycle: cyclic dev deps", (t) => { + const cycleDepsBasePath = path.join(__dirname, "..", "..", "fixtures", "cyclic-deps", "node_modules"); + const applicationCycleAPath = path.join(cycleDepsBasePath, "application.cycle.a"); + + const applicationCycleTree = { + "id": "application.cycle.a", + "version": "1.0.0", + "path": applicationCycleAPath, + "dependencies": [ + { + "id": "component.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "component.cycle.a"), + "dependencies": [ + { + "id": "library.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "library.cycle.a"), + "dependencies": [ + { + "id": "component.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "component.cycle.a"), + "dependencies": [], + "deduped": true + } + ] + }, + { + "id": "library.cycle.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "library.cycle.b"), + "dependencies": [ + { + "id": "component.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "component.cycle.a"), + "dependencies": [], + "deduped": true + } + ] + }, + { + "id": "application.cycle.a", + "version": "1.0.0", + "path": applicationCycleAPath, + "dependencies": [], + "deduped": true + } + ] + } + ] + }; + + return npmTranslator.generateDependencyTree(applicationCycleAPath).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleTree, "Parsed correctly"); + }); +}); + +test("AppCycle: cyclic npm deps - Cycle via devDependency on second level", (t) => { + const cycleDepsBasePath = path.join(__dirname, "..", "..", "fixtures", "cyclic-deps", "node_modules"); + const applicationCycleBPath = path.join(cycleDepsBasePath, "application.cycle.b"); + + const applicationCycleB = { + id: "application.cycle.b", + version: "1.0.0", + path: applicationCycleBPath, + dependencies: [] + }; + + const moduleD = { + id: "module.d", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "module.d"), + dependencies: [] + }; + + const moduleE = { + id: "module.e", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "module.e"), + dependencies: [] + }; + + applicationCycleB.dependencies.push(moduleD, moduleE); + moduleD.dependencies.push(moduleE); + moduleE.dependencies.push(moduleD); + + const applicationCycleTree = applicationCycleB; + return npmTranslator.generateDependencyTree(applicationCycleBPath).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleTree, "Parsed correctly"); + }); +}); + +test("AppCycle: cyclic npm deps - Cycle on third level (one indirection)", (t) => { + const cycleDepsBasePath = path.join(__dirname, "..", "..", "fixtures", "cyclic-deps", "node_modules"); + const applicationCycleCPath = path.join(cycleDepsBasePath, "application.cycle.c"); + + const applicationCycleTree = { + "id": "application.cycle.c", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.c"), + "dependencies": [ + { + "id": "module.f", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.f"), + "dependencies": [ + { + "id": "module.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.a"), + "dependencies": [ + { + "id": "module.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.b"), + "dependencies": [ + { + "id": "module.c", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.c"), + "dependencies": [ + { + "id": "module.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.a"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] + } + ] + }, + { + "id": "module.g", + "version": "1.0.0", "path": path.join(cycleDepsBasePath, "module.g"), + "dependencies": [ + { + "id": "module.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.a"), + "dependencies": [ + { + "id": "module.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.b"), + "dependencies": [ + { + "id": "module.c", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.c"), + "dependencies": [ + { + "id": "module.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.a"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] + } + ] + } + ] + }; + return npmTranslator.generateDependencyTree(applicationCycleCPath).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleTree, "Parsed correctly"); + }); +}); + test("Error: missing package.json", async (t) => { const dir = path.parse(__dirname).root; const error = await t.throws(npmTranslator.generateDependencyTree(dir)); From b46e4871fd7e8385b398c6623b0f7d38b0c68f70 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 13 Dec 2018 18:02:28 +0100 Subject: [PATCH 0083/1272] [ui5-project][FIX] npm t8r: Add deduplication of npm dependencies --- packages/project/lib/translators/npm.js | 96 ++++++++++++++++++++----- 1 file changed, 78 insertions(+), 18 deletions(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 2bfa3c081e3..d814ccf7730 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -6,6 +6,7 @@ const {promisify} = require("util"); const fs = require("fs"); const realpath = promisify(fs.realpath); const resolveModulePath = promisify(require("resolve")); +const parentNameRegExp = new RegExp(/:([^:]+):$/i); class NpmTranslator { constructor() { @@ -17,12 +18,18 @@ class NpmTranslator { /* Returns a promise with an array of projects */ - async processPkg(data, parentName) { + async processPkg(data, parentPath) { const cwd = data.path; const moduleName = data.name; const pkg = data.pkg; + const parentName = parentPath && this.getParentNameFromPath(parentPath) || "nothing - root project"; - log.verbose("Analyzing %s (%s) (dependency of %s)", moduleName, cwd, parentName || "nothing - root project"); + log.verbose("Analyzing %s (%s) (dependency of %s)", moduleName, cwd, parentName); + + if (!parentPath) { + parentPath = ":"; + } + parentPath += `${moduleName}:`; /* * Inject collection definitions for some known projects @@ -76,7 +83,7 @@ class NpmTranslator { if (!pkg.collection) { return this.getDepProjects({ cwd, - parentName: moduleName, + parentPath, dependencies, optionalDependencies: pkg.optionalDependencies }).then((depProjects) => { @@ -98,6 +105,7 @@ class NpmTranslator { // our dependencies later on. this.registerPendingDependencies({ parentProject: project, + parentPath, dependencies: optDependencies }); return [project]; @@ -112,7 +120,7 @@ class NpmTranslator { log.verbose("Ignoring module with same name as parent: " + parentName); return null; } - return this.readProject({modulePath, moduleName: depName, parentName: moduleName}); + return this.readProject({modulePath, moduleName: depName, parentPath}); }) ).then((projects) => { // Array needs to be flattened because: @@ -123,16 +131,25 @@ class NpmTranslator { } } - getDepProjects({cwd, dependencies, optionalDependencies, parentName}) { + getParentNameFromPath(parentPath) { + const parentNameMatch = parentPath.match(parentNameRegExp); + if (parentNameMatch) { + return parentNameMatch[1]; + } else { + log.error(`Failed to get parent name from path ${parentPath}`); + } + } + + getDepProjects({cwd, dependencies, optionalDependencies, parentPath}) { return Promise.all( Object.keys(dependencies).map((moduleName) => { return this.findModulePath(cwd, moduleName).then((modulePath) => { - return this.readProject({modulePath, moduleName, parentName}); + return this.readProject({modulePath, moduleName, parentPath}); }, (err) => { // Due to normalization done by by the "read-pkg-up" module the values - // in optionalDependencies get added to dependencies. Also as described here: + // in "optionalDependencies" get added to the modules "dependencies". Also described here: // https://github.com/npm/normalize-package-data#what-normalization-currently-entails - // Resolution errors of optionalDependencies are being ignored + // Ignore resolution errors for optional dependencies if (optionalDependencies && optionalDependencies[moduleName]) { return null; } else { @@ -143,17 +160,32 @@ class NpmTranslator { ).then((depProjects) => { // Array needs to be flattened because: // readProject returns an array + Promise.all returns an array = array filled with arrays - // Filter out null values of ignored packages + // Also filter out null values of ignored packages return Array.prototype.concat.apply([], depProjects.filter((p) => p !== null)); }); } - readProject({modulePath, moduleName, parentName}) { + readProject({modulePath, moduleName, parentPath}) { if (this.projectCache[modulePath]) { - return this.projectCache[modulePath]; + const cache = this.projectCache[modulePath]; + // Check whether modules has already been processed in the current subtree (indicates a loop) + if (parentPath.indexOf(`:${moduleName}:`) !== -1) { + // This is a loop => abort further processing + return cache.pPkg.then((pkg) => { + return [{ + id: moduleName, + version: pkg.version, + path: modulePath, + dependencies: [], + deduped: true + }]; + }); + } else { + return cache.pProject; + } } - return this.projectCache[modulePath] = readPkg(modulePath).catch((err) => { + const pPkg = readPkg(modulePath).catch((err) => { // Failed to read package // If dependency shim is available, fake the package @@ -171,12 +203,14 @@ class NpmTranslator { }; }*/ throw err; - }).then((pkg) => { + }); + + const pProject = pPkg.then((pkg) => { return this.processPkg({ name: moduleName, pkg: pkg, path: modulePath - }, parentName).then((projects) => { + }, parentPath).then((projects) => { // Flatten the array of project arrays (yes, because collections) return Array.prototype.concat.apply([], projects.filter((p) => p !== null)); }); @@ -189,6 +223,12 @@ class NpmTranslator { dependencies: [] }]; }); + + this.projectCache[modulePath] = { + pPkg, + pProject + }; + return pProject; } /* Returns path to a module @@ -234,13 +274,19 @@ class NpmTranslator { }); } - registerPendingDependencies({dependencies, parentProject}) { + registerPendingDependencies({dependencies, parentProject, parentPath}) { Object.keys(dependencies).forEach((moduleName) => { if (this.pendingDeps[moduleName]) { - this.pendingDeps[moduleName].parents.push(parentProject); + this.pendingDeps[moduleName].parents.push({ + project: parentProject, + path: parentPath + }); } else { this.pendingDeps[moduleName] = { - parents: [parentProject] + parents: [{ + project: parentProject, + path: parentPath, + }] }; } }); @@ -263,7 +309,21 @@ class NpmTranslator { if (this.pendingDeps[project.id]) { for (let i = this.pendingDeps[project.id].parents.length - 1; i >= 0; i--) { - this.pendingDeps[project.id].parents[i].dependencies.push(project); + const parent = this.pendingDeps[project.id].parents[i]; + // Check whether modules has already been processed in the current subtree (indicates a loop) + if (parent.path.indexOf(`:${project.id}:`) !== -1) { + // This is a loop => abort further processing + const dedupedProject = { + id: project.id, + version: project.version, + path: project.path, + dependencies: [], + deduped: true + }; + parent.project.dependencies.push(dedupedProject); + } else { + parent.project.dependencies.push(project); + } } this.pendingDeps[project.id] = null; } From 7001f0af464eab184a49e8477180605297072b9e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 17 Dec 2018 13:42:29 +0100 Subject: [PATCH 0084/1272] [ui5-project][FIX] projectPreprocessor: Ignore deduped modules --- packages/project/lib/projectPreprocessor.js | 7 +- .../project/test/lib/projectPreprocessor.js | 240 +++++++++++++++++- 2 files changed, 245 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 835a6839b4d..49e6d3f4a9f 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -40,7 +40,8 @@ class ProjectPreprocessor { // by the dependency lookahead const projectsToProcess = projects.filter((project) => { if (!project.id) { - throw new Error("Encountered project with missing id"); + const parentRefText = parent ? `(child of ${parent.id})` : `(root project)`; + throw new Error(`Encountered project with missing id ${parentRefText}`); } if (this.isBeingProcessed(parent, project)) { return false; @@ -155,6 +156,10 @@ class ProjectPreprocessor { isBeingProcessed(parent, project) { // Check whether a project is currently being or has already been processed const processedProject = this.processedProjects[project.id]; + if (project.deduped) { + // Ignore deduped modules + return true; + } if (processedProject) { if (processedProject.ignored) { log.verbose(`Dependency of project ${parent.id}, "${project.id}" is flagged as ignored.`); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index d001d88cb87..2c473cb6de1 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -8,6 +8,7 @@ const libraryAPath = path.join(__dirname, "..", "fixtures", "collection", "libra const libraryBPath = path.join(__dirname, "..", "fixtures", "collection", "library.b"); // const libraryCPath = path.join(__dirname, "..", "fixtures", "collection", "library.c"); const libraryDPath = path.join(__dirname, "..", "fixtures", "library.d"); +const cycleDepsBasePath = path.join(__dirname, "..", "fixtures", "cyclic-deps", "node_modules"); test("Project with inline configuration", (t) => { const tree = { @@ -170,7 +171,7 @@ test("Missing id for root project", (t) => { dependencies: [] }; return t.throws(projectPreprocessor.processTree(tree), - "Encountered project with missing id", "Rejected with error"); + "Encountered project with missing id (root project)", "Rejected with error"); }); test("No type configured for root project", (t) => { @@ -525,6 +526,13 @@ test("Project tree B with inline configs", (t) => { }); }); +test("Project tree B with inline configs", (t) => { + // Tree B depends on Library B which has a dependency to Library D + return projectPreprocessor.processTree(treeApplicationCycleA).then((parsedTree) => { + t.deepEqual(parsedTree, expectedTreeApplicationCycleA, "Parsed correctly"); + }); +}); + /* ========================= */ /* ======= Test data ======= */ @@ -1103,6 +1111,236 @@ const expectedTreeBWithInlineConfigs = { ] }; +const treeApplicationCycleA = { + id: "application.cycle.a", + version: "1.0.0", + specVersion: "0.1", + path: path.join(cycleDepsBasePath, "application.cycle.a"), + type: "application", + metadata: { + name: "application.cycle.a", + }, + dependencies: [ + { + id: "component.cycle.a", + version: "1.0.0", + specVersion: "0.1", + path: path.join(cycleDepsBasePath, "component.cycle.a"), + type: "library", + metadata: { + name: "component.cycle.a", + }, + dependencies: [ + { + id: "library.cycle.a", + version: "1.0.0", + specVersion: "0.1", + path: path.join(cycleDepsBasePath, "library.cycle.a"), + type: "library", + metadata: { + name: "library.cycle.a", + }, + dependencies: [ + { + id: "component.cycle.a", + version: "1.0.0", + specVersion: "0.1", + path: path.join(cycleDepsBasePath, "component.cycle.a"), + type: "library", + metadata: { + name: "component.cycle.a", + }, + dependencies: [], + deduped: true + } + ] + }, + { + id: "library.cycle.b", + version: "1.0.0", + specVersion: "0.1", + path: path.join(cycleDepsBasePath, "library.cycle.b"), + type: "library", + metadata: { + name: "library.cycle.b", + }, + dependencies: [ + { + id: "component.cycle.a", + version: "1.0.0", + specVersion: "0.1", + path: path.join(cycleDepsBasePath, "component.cycle.a"), + type: "library", + metadata: { + name: "component.cycle.a", + }, + dependencies: [], + deduped: true + } + ] + }, + { + id: "application.cycle.a", + version: "1.0.0", + specVersion: "0.1", + path: path.join(cycleDepsBasePath, "application.cycle.a"), + type: "application", + metadata: { + name: "application.cycle.a", + }, + dependencies: [], + deduped: true + } + ] + } + ] +}; + +const expectedTreeApplicationCycleA = { + "id": "application.cycle.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": path.join(cycleDepsBasePath, "application.cycle.a"), + "type": "application", + "metadata": { + "name": "application.cycle.a" + }, + "dependencies": [ + { + "id": "component.cycle.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": path.join(cycleDepsBasePath, "component.cycle.a"), + "type": "library", + "metadata": { + "name": "component.cycle.a", + "copyright": "${copyright}" + }, + "dependencies": [ + { + "id": "library.cycle.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": path.join(cycleDepsBasePath, "library.cycle.a"), + "type": "library", + "metadata": { + "name": "library.cycle.a", + "copyright": "${copyright}" + }, + "dependencies": [ + { + "id": "component.cycle.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": path.join(cycleDepsBasePath, "component.cycle.a"), + "type": "library", + "metadata": { + "name": "component.cycle.a" + }, + "dependencies": [], + "deduped": true + } + ], + "kind": "project", + "_level": 2, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + } + }, + { + "id": "library.cycle.b", + "version": "1.0.0", + "specVersion": "0.1", + "path": path.join(cycleDepsBasePath, "library.cycle.b"), + "type": "library", + "metadata": { + "name": "library.cycle.b", + "copyright": "${copyright}" + }, + "dependencies": [ + { + "id": "component.cycle.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": path.join(cycleDepsBasePath, "component.cycle.a"), + "type": "library", + "metadata": { + "name": "component.cycle.a" + }, + "dependencies": [], + "deduped": true + } + ], + "kind": "project", + "_level": 2, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + } + }, + { + "id": "application.cycle.a", + "version": "1.0.0", + "specVersion": "0.1", + "path": path.join(cycleDepsBasePath, "application.cycle.a"), + "type": "application", + "metadata": { + "name": "application.cycle.a" + }, + "dependencies": [], + "deduped": true + } + ], + "kind": "project", + "_level": 1, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + } + } + ], + "_level": 0, + "kind": "project", + "resources": { + "configuration": { + "paths": { + "webapp": "webapp" + } + }, + "pathMappings": { + "/": "webapp" + } + } +}; + +/* ======= /Test data ======= */ +/* ========================= */ + test("Application version in package.json data is missing", (t) => { const tree = { id: "application.a", From e37617302e77b679c5fb5dcc985a9280a4a47f70 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 17 Dec 2018 14:58:33 +0100 Subject: [PATCH 0085/1272] [ui5-project][INTERNAL] npm t8r: Add includeDeduped option When set to true, deduped modules are still included in the tree rather than silently ignored. This is usefull when analyzing a projects dependency tree. However most modules like builder and server do not really care about deduped modules. --- packages/project/lib/normalizer.js | 41 ++- packages/project/lib/translators/npm.js | 54 +-- packages/project/lib/translators/static.js | 9 +- packages/project/test/lib/translators/npm.js | 364 ++++++++++++------- 4 files changed, 293 insertions(+), 175 deletions(-) diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index d65a632171e..a7cf286b42f 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -8,14 +8,13 @@ const projectPreprocessor = require("./projectPreprocessor"); * @module normalizer/normalizer */ const Normalizer = { - /** * Generates a project and dependency tree via translators and configures all projects via the projectPreprocessor * - * @param {Object} options Options - * @param {string} options.cwd Current working directory - * @param {string} options.configPath Path to configuration file - * @param {string} options.translator Translator to use + * @param {Object} [options] + * @param {string} [options.cwd] Current working directory + * @param {string} [options.configPath] Path to configuration file + * @param {string} [options.translator] Translator to use * @returns {Promise} Promise resolving to tree object */ generateProjectTree: async function(options = {}) { @@ -26,40 +25,42 @@ const Normalizer = { } return projectPreprocessor.processTree(tree); }, + /** * Generates a project and dependency tree via translators * - * @param {Object} options Options - * @param {string} options.cwd Current working directory - * @param {string} options.configPath Path to configuration file - * @param {string} options.translator Translator to use + * @param {Object} [options] + * @param {string} [options.cwd=.] Current working directory + * @param {string} [options.translator=npm] Translator to use + * @param {object} [options.translatorOptions] Options to pass to translator * @returns {Promise} Promise resolving to tree object */ - generateDependencyTree: async function(options = {}) { + generateDependencyTree: async function({cwd = ".", translator="npm", translatorOptions={}} = {}) { + // TODO NEXT MAJOR: Rename "translator" option to "translatorName" log.verbose("Building dependency tree..."); - const cwd = options && options.cwd || "."; - let translatorName = "npm"; // Default is npm translator let translatorParams = []; - if (options.translator) { - const translatorOptions = options.translator.split(":"); - translatorName = translatorOptions[0]; - translatorParams = translatorOptions.slice(1); + let translatorName = translator; + if (translator.indexOf(":") !== -1) { + translatorParams = translator.split(":"); + translatorName = translatorParams[0]; + translatorParams = translatorParams.slice(1); } - let translator; + let translatorModule; switch (translatorName) { case "static": - translator = require("./translators/static"); + translatorModule = require("./translators/static"); break; case "npm": - translator = require("./translators/npm"); + translatorModule = require("./translators/npm"); break; default: return Promise.reject(new Error(`Unknown translator ${translatorName}`)); } - return translator.generateDependencyTree(cwd, translatorParams); + translatorOptions.parameters = translatorParams; + return translatorModule.generateDependencyTree(cwd, translatorOptions); } }; diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index d814ccf7730..9a7d96328fc 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -9,10 +9,11 @@ const resolveModulePath = promisify(require("resolve")); const parentNameRegExp = new RegExp(/:([^:]+):$/i); class NpmTranslator { - constructor() { + constructor({includeDeduped}) { this.projectCache = {}; this.projectsWoUi5Deps = []; this.pendingDeps = {}; + this.includeDeduped = includeDeduped; } /* @@ -171,15 +172,21 @@ class NpmTranslator { // Check whether modules has already been processed in the current subtree (indicates a loop) if (parentPath.indexOf(`:${moduleName}:`) !== -1) { // This is a loop => abort further processing - return cache.pPkg.then((pkg) => { - return [{ - id: moduleName, - version: pkg.version, - path: modulePath, - dependencies: [], - deduped: true - }]; - }); + if (this.includeDeduped) { + // Add module marked as deduped + return cache.pPkg.then((pkg) => { + return { + id: moduleName, + version: pkg.version, + path: modulePath, + dependencies: [], + deduped: true + }; + }); + } else { + // Ignore this dependency + return Promise.resolve(null); + } } else { return cache.pProject; } @@ -312,15 +319,18 @@ class NpmTranslator { const parent = this.pendingDeps[project.id].parents[i]; // Check whether modules has already been processed in the current subtree (indicates a loop) if (parent.path.indexOf(`:${project.id}:`) !== -1) { - // This is a loop => abort further processing - const dedupedProject = { - id: project.id, - version: project.version, - path: project.path, - dependencies: [], - deduped: true - }; - parent.project.dependencies.push(dedupedProject); + // This is a loop + if (this.includeDeduped) { + // Add module marked as deduped + const dedupedProject = { + id: project.id, + version: project.version, + path: project.path, + dependencies: [], + deduped: true + }; + parent.project.dependencies.push(dedupedProject); + } // else: do nothing } else { parent.project.dependencies.push(project); } @@ -401,9 +411,11 @@ module.exports = { * Generates a dependency tree for npm projects * * @param {string} dirPath Project path + * @param {object} [options] + * @param {boolean} [options.includeDeduped=false] * @returns {Promise} Promise resolving with a dependency tree */ - generateDependencyTree(dirPath) { - return new NpmTranslator().generateDependencyTree(dirPath); + generateDependencyTree(dirPath, options = {includeDeduped: false}) { + return new NpmTranslator(options).generateDependencyTree(dirPath); } }; diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index 34ee513cf55..25a9994ee06 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -14,11 +14,14 @@ const parseYaml = require("js-yaml").safeLoad; * This feature is EXPERIMENTAL and used for testing purposes only. * * @param {string} dirPath Project path - * @param {Array} [translatorOptions] Configuration options + * @param {object} [options] + * @param {Array} [options.parameters] CLI configuration options * @returns {Promise} Promise resolving with a dependency tree */ -function generateDependencyTree(dirPath, translatorOptions = []) { - const depFilePath = translatorOptions[0] || path.join(dirPath, "projectDependencies.yaml"); +function generateDependencyTree(dirPath, options = {}) { + // TODO NEXT MAJOR: "options" used to be the the parameters array. We check for that here to stay compatible: + const parameters = Array.isArray(options) ? options : options.parameters; + const depFilePath = parameters && parameters[0] || path.join(dirPath, "projectDependencies.yaml"); return new Promise(function(resolve, reject) { fs.readFile(depFilePath, function(err, buffer) { diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index ec6da82b4fa..091583b2cd6 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -9,6 +9,7 @@ const applicationDPath = path.join(__dirname, "..", "..", "fixtures", "applicati const applicationFPath = path.join(__dirname, "..", "..", "fixtures", "application.f"); const applicationGPath = path.join(__dirname, "..", "..", "fixtures", "application.g"); const errApplicationAPath = path.join(__dirname, "..", "..", "fixtures", "err.application.a"); +const cycleDepsBasePath = path.join(__dirname, "..", "..", "fixtures", "cyclic-deps", "node_modules"); test("AppA: project with collection dependency", (t) => { return npmTranslator.generateDependencyTree(applicationAPath).then((parsedTree) => { @@ -56,61 +57,18 @@ test("AppG: project with npm 'optionalDependencies' should not fail if optional }); test("AppCycle: cyclic dev deps", (t) => { - const cycleDepsBasePath = path.join(__dirname, "..", "..", "fixtures", "cyclic-deps", "node_modules"); const applicationCycleAPath = path.join(cycleDepsBasePath, "application.cycle.a"); - const applicationCycleTree = { - "id": "application.cycle.a", - "version": "1.0.0", - "path": applicationCycleAPath, - "dependencies": [ - { - "id": "component.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "component.cycle.a"), - "dependencies": [ - { - "id": "library.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "library.cycle.a"), - "dependencies": [ - { - "id": "component.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "component.cycle.a"), - "dependencies": [], - "deduped": true - } - ] - }, - { - "id": "library.cycle.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "library.cycle.b"), - "dependencies": [ - { - "id": "component.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "component.cycle.a"), - "dependencies": [], - "deduped": true - } - ] - }, - { - "id": "application.cycle.a", - "version": "1.0.0", - "path": applicationCycleAPath, - "dependencies": [], - "deduped": true - } - ] - } - ] - }; + return npmTranslator.generateDependencyTree(applicationCycleAPath, {includeDeduped: false}).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleATree, "Parsed correctly"); + }); +}); - return npmTranslator.generateDependencyTree(applicationCycleAPath).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleTree, "Parsed correctly"); +test("AppCycle: cyclic dev deps - include deduped", (t) => { + const applicationCycleAPath = path.join(cycleDepsBasePath, "application.cycle.a"); + + return npmTranslator.generateDependencyTree(applicationCycleAPath, {includeDeduped: true}).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleATreeIncDeduped, "Parsed correctly"); }); }); @@ -150,87 +108,16 @@ test("AppCycle: cyclic npm deps - Cycle via devDependency on second level", (t) }); test("AppCycle: cyclic npm deps - Cycle on third level (one indirection)", (t) => { - const cycleDepsBasePath = path.join(__dirname, "..", "..", "fixtures", "cyclic-deps", "node_modules"); const applicationCycleCPath = path.join(cycleDepsBasePath, "application.cycle.c"); + return npmTranslator.generateDependencyTree(applicationCycleCPath, {includeDeduped: false}).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleCTree, "Parsed correctly"); + }); +}); - const applicationCycleTree = { - "id": "application.cycle.c", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.c"), - "dependencies": [ - { - "id": "module.f", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.f"), - "dependencies": [ - { - "id": "module.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.a"), - "dependencies": [ - { - "id": "module.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.b"), - "dependencies": [ - { - "id": "module.c", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.c"), - "dependencies": [ - { - "id": "module.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.a"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] - } - ] - }, - { - "id": "module.g", - "version": "1.0.0", "path": path.join(cycleDepsBasePath, "module.g"), - "dependencies": [ - { - "id": "module.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.a"), - "dependencies": [ - { - "id": "module.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.b"), - "dependencies": [ - { - "id": "module.c", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.c"), - "dependencies": [ - { - "id": "module.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.a"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] - } - ] - } - ] - }; - return npmTranslator.generateDependencyTree(applicationCycleCPath).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleTree, "Parsed correctly"); +test("AppCycle: cyclic npm deps - Cycle on third level (one indirection) - include deduped", (t) => { + const applicationCycleCPath = path.join(cycleDepsBasePath, "application.cycle.c"); + return npmTranslator.generateDependencyTree(applicationCycleCPath, {includeDeduped: true}).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleCTreeIncDeduped, "Parsed correctly"); }); }); @@ -425,3 +312,218 @@ const applicationGTree = { } ] }; + +const applicationCycleATree = { + "id": "application.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.a"), + "dependencies": [ + { + "id": "component.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "component.cycle.a"), + "dependencies": [ + { + "id": "library.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "library.cycle.a"), + "dependencies": [] + }, + { + "id": "library.cycle.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "library.cycle.b"), + "dependencies": [] + } + ] + } + ] +}; + +const applicationCycleATreeIncDeduped = { + "id": "application.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.a"), + "dependencies": [ + { + "id": "component.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "component.cycle.a"), + "dependencies": [ + { + "id": "library.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "library.cycle.a"), + "dependencies": [ + { + "id": "component.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "component.cycle.a"), + "dependencies": [], + "deduped": true + } + ] + }, + { + "id": "library.cycle.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "library.cycle.b"), + "dependencies": [ + { + "id": "component.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "component.cycle.a"), + "dependencies": [], + "deduped": true + } + ] + }, + { + "id": "application.cycle.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.a"), + "dependencies": [], + "deduped": true + } + ] + } + ] +}; + +const applicationCycleCTree = { + "id": "application.cycle.c", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.c"), + "dependencies": [ + { + "id": "module.f", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.f"), + "dependencies": [ + { + "id": "module.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.a"), + "dependencies": [ + { + "id": "module.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.b"), + "dependencies": [ + { + "id": "module.c", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.c"), + "dependencies": [] + } + ] + } + ] + } + ] + }, + { + "id": "module.g", + "version": "1.0.0", "path": path.join(cycleDepsBasePath, "module.g"), + "dependencies": [ + { + "id": "module.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.a"), + "dependencies": [ + { + "id": "module.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.b"), + "dependencies": [ + { + "id": "module.c", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.c"), + "dependencies": [] + } + ] + } + ] + } + ] + } + ] +}; + +const applicationCycleCTreeIncDeduped = { + "id": "application.cycle.c", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.c"), + "dependencies": [ + { + "id": "module.f", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.f"), + "dependencies": [ + { + "id": "module.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.a"), + "dependencies": [ + { + "id": "module.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.b"), + "dependencies": [ + { + "id": "module.c", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.c"), + "dependencies": [ + { + "id": "module.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.a"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] + } + ] + }, + { + "id": "module.g", + "version": "1.0.0", "path": path.join(cycleDepsBasePath, "module.g"), + "dependencies": [ + { + "id": "module.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.a"), + "dependencies": [ + { + "id": "module.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.b"), + "dependencies": [ + { + "id": "module.c", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.c"), + "dependencies": [ + { + "id": "module.a", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.a"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] + } + ] + } + ] +}; From 4c8dcce803487818b2cefbe9e0a98240fdaf0f37 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 17 Dec 2018 16:37:29 +0000 Subject: [PATCH 0086/1272] [ui5-project]Release 0.2.4 --- packages/project/CHANGELOG.md | 16 +++++++++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 6414520efdc..044d9d247b1 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,20 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.4...HEAD). + + +## [v0.2.4] - 2018-12-17 +### Bug Fixes +- **npm t8r:** Add deduplication of npm dependencies [`2717088`](https://github.com/SAP/ui5-project/commit/2717088532d415b6922f290b58d9227b946a965f) +- **projectPreprocessor:** Ignore deduped modules [`84f7b25`](https://github.com/SAP/ui5-project/commit/84f7b25a9e45df3bc55a7957e4f61db580e68509) + +### Internal Changes +- Add tests for cyclic dependency handling [`0378b77`](https://github.com/SAP/ui5-project/commit/0378b77406107294acb3a0103eb6a3464d129be1) +- UA Review README.md [`dd64ff5`](https://github.com/SAP/ui5-project/commit/dd64ff58099d2d21d59a1fe0b05ae7a7e416a5df) +- **npm t8r:** Add includeDeduped option [`eaa2863`](https://github.com/SAP/ui5-project/commit/eaa2863c506f98e011bc0a78776d0f4d61c506d6) +- **static translator and normalizer:** Add tests [`595936d`](https://github.com/SAP/ui5-project/commit/595936d97379bd2ab92967dc7e7e1f568374e4db) + ## [v0.2.3] - 2018-11-20 @@ -90,6 +103,7 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - **npm t8r:** Improve handling of missing package.json [`4b32134`](https://github.com/SAP/ui5-project/commit/4b321345139058dc821fb08c4556aff88366ea86) +[v0.2.4]: https://github.com/SAP/ui5-project/compare/v0.2.3...v0.2.4 [v0.2.3]: https://github.com/SAP/ui5-project/compare/v0.2.2...v0.2.3 [v0.2.2]: https://github.com/SAP/ui5-project/compare/v0.2.1...v0.2.2 [v0.2.1]: https://github.com/SAP/ui5-project/compare/v0.2.0...v0.2.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d67d14de7dc..277dbb25376 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.3", + "version": "0.2.4", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index ebe0475f77c..719714907ac 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.3", + "version": "0.2.4", "description": "UI5 Build and Development Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 535b48076971b9046425a5fc09f35a5330b102f2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 18 Dec 2018 03:15:03 +0000 Subject: [PATCH 0087/1272] [ui5-project]Bump sinon from 7.2.0 to 7.2.2 Bumps [sinon](https://github.com/sinonjs/sinon) from 7.2.0 to 7.2.2. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md) - [Commits](https://github.com/sinonjs/sinon/compare/v7.2.0...v7.2.2) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 74 ++++++++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 50 insertions(+), 26 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 277dbb25376..05af70c6b54 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -3174,7 +3174,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -3195,12 +3196,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3215,17 +3218,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3342,7 +3348,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3354,6 +3361,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3368,6 +3376,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3375,12 +3384,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -3399,6 +3410,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3479,7 +3491,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3491,6 +3504,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3576,7 +3590,8 @@ "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3612,6 +3627,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3631,6 +3647,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3674,12 +3691,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -4569,9 +4588,9 @@ } }, "just-extend": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-3.0.0.tgz", - "integrity": "sha512-Fu3T6pKBuxjWT/p4DkqGHFRsysc8OauWr4ZRTY9dIx07Y9O0RkoR5jcv28aeD1vuAwhm3nLkDurwLXoALp4DpQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", + "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", "dev": true }, "kind-of": { @@ -5155,13 +5174,13 @@ "dev": true }, "nise": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.7.tgz", - "integrity": "sha512-5cxvo/pEAEHBX5s0zl+zd96BvHHuua/zttIHeQuTWSDjGrWsEHamty8xbZNfocC+fx7NMrle7XHvvxtFxobIZQ==", + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.8.tgz", + "integrity": "sha512-kGASVhuL4tlAV0tvA34yJYZIVihrUt/5bDwpp4tTluigxUr2bBlJeDXmivb6NuEdFkqvdv/Ybb9dm16PSKUhtw==", "dev": true, "requires": { "@sinonjs/formatio": "^3.1.0", - "just-extend": "^3.0.0", + "just-extend": "^4.0.2", "lolex": "^2.3.2", "path-to-regexp": "^1.7.0", "text-encoding": "^0.6.4" @@ -5256,6 +5275,7 @@ "version": "0.1.4", "bundled": true, "dev": true, + "optional": true, "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -5580,7 +5600,8 @@ "is-buffer": { "version": "1.1.6", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "is-builtin-module": { "version": "1.0.0", @@ -5664,6 +5685,7 @@ "version": "3.2.2", "bundled": true, "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -5710,7 +5732,8 @@ "longest": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "lru-cache": { "version": "4.1.3", @@ -5976,7 +5999,8 @@ "repeat-string": { "version": "1.6.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "require-directory": { "version": "2.1.1", @@ -7286,14 +7310,14 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, "sinon": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.2.0.tgz", - "integrity": "sha512-N+ebPVqU55E6IUUGPSia57D5nTlCjfxrVR/33KTMRjsJJP5ZoGW1TXyLa2kDREgMtzqdnnksv7gA9oGC2v2LGw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.2.2.tgz", + "integrity": "sha512-WLagdMHiEsrRmee3jr6IIDntOF4kbI6N2pfbi8wkv50qaUQcBglkzkjtoOEbeJ2vf1EsrHhLI+5Ny8//WHdMoA==", "dev": true, "requires": { "@sinonjs/commons": "^1.2.0", "@sinonjs/formatio": "^3.1.0", - "@sinonjs/samsam": "^3.0.1", + "@sinonjs/samsam": "^3.0.2", "diff": "^3.5.0", "lolex": "^3.0.0", "nise": "^1.4.7", diff --git a/packages/project/package.json b/packages/project/package.json index 719714907ac..53f9b423612 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -110,7 +110,7 @@ "eslint-config-google": "^0.11.0", "jsdoc": "^3.5.5", "nyc": "^13.1.0", - "sinon": "^7.2.0", + "sinon": "^7.2.2", "tap-nyan": "^1.1.0" } } From 3ed9640e1bb5b55836ef2dd01d5da07658c6f4a8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 17 Dec 2018 20:34:00 +0100 Subject: [PATCH 0088/1272] [ui5-project][INTERNAL] npm translator: Add addtl. test for cyclic dependencies Heavily influenced by 'es6-map' and its dependencies --- .../application.cycle.d/package.json | 17 +++++++++++++++++ .../node_modules/application.cycle.d/ui5.yaml | 5 +++++ .../application.cycle.d/webapp/index.html | 9 +++++++++ .../application.cycle.d/webapp/test.js | 5 +++++ .../node_modules/module.h/package.json | 12 ++++++++++++ .../node_modules/module.i/package.json | 11 +++++++++++ .../node_modules/module.j/package.json | 11 +++++++++++ .../node_modules/module.k/package.json | 13 +++++++++++++ packages/project/test/lib/translators/npm.js | 9 +++++++++ 9 files changed, 92 insertions(+) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/index.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/test.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.h/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.i/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.j/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.k/package.json diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/package.json new file mode 100644 index 00000000000..73f5fa60145 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/package.json @@ -0,0 +1,17 @@ +{ + "name": "application.cycle.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - Test for cyclic npm (non-UI5) dependencies - Heavily influenced by npm package 'es6-map'", + "_ui5_test_comment": "This scenario can't be tested using file: URLs as npm can't create cyclic symlinks.", + "_ui5_test_comment2": "However publishing to and installing from a registry works.", + "main": "index.html", + "dependencies": { + "module.h": "^1.0.0", + "module.i": "^1.0.0", + "module.j": "^1.0.0", + "module.k": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/ui5.yaml new file mode 100644 index 00000000000..13f735d20c9 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.cycle.d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/index.html new file mode 100644 index 00000000000..a845ac4258e --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/index.html @@ -0,0 +1,9 @@ + + + + Application Cycle C + + + + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.h/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.h/package.json new file mode 100644 index 00000000000..b6dcdd5bf53 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.h/package.json @@ -0,0 +1,12 @@ +{ + "name": "module.h", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - Like npm package 'es6-symbol'", + "dependencies": { + "module.i": "^1.0.0", + "module.j": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.i/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.i/package.json new file mode 100644 index 00000000000..32314cef4ab --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.i/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.i", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - Like npm package 'es5-ext'", + "dependencies": { + "module.k": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.j/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.j/package.json new file mode 100644 index 00000000000..cc198c5133d --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.j/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.j", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - Like npm package 'd'", + "dependencies": { + "module.i": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.k/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.k/package.json new file mode 100644 index 00000000000..c9c1702cd33 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.k/package.json @@ -0,0 +1,13 @@ +{ + "name": "module.k", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - Like npm package 'es6-iterator'", + "dependencies": { + "module.h": "^1.0.0", + "module.i": "^1.0.0", + "module.j": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index 091583b2cd6..90604221526 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -121,6 +121,13 @@ test("AppCycle: cyclic npm deps - Cycle on third level (one indirection) - inclu }); }); +test("AppCycle: cyclic npm deps - Cycles everywhere", (t) => { + const applicationCycleDPath = path.join(cycleDepsBasePath, "application.cycle.d"); + return npmTranslator.generateDependencyTree(applicationCycleDPath, {includeDeduped: true}).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleDTree, "Parsed correctly"); + }); +}); + test("Error: missing package.json", async (t) => { const dir = path.parse(__dirname).root; const error = await t.throws(npmTranslator.generateDependencyTree(dir)); @@ -527,3 +534,5 @@ const applicationCycleCTreeIncDeduped = { } ] }; + +const applicationCycleDTree = {}; From 39dfb830da8f5bcfe23197349e7bca1c200d7472 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 17 Dec 2018 20:34:35 +0100 Subject: [PATCH 0089/1272] [ui5-project][INTERNAL] npm translator: Add silly debug logging --- packages/project/lib/translators/npm.js | 28 ++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 9a7d96328fc..58e5322eb30 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -14,6 +14,7 @@ class NpmTranslator { this.projectsWoUi5Deps = []; this.pendingDeps = {}; this.includeDeduped = includeDeduped; + this.debugUnresolvedProjects = {}; } /* @@ -82,6 +83,14 @@ class NpmTranslator { Although we could add the collections dependencies as project dependencies to the related modules */ if (!pkg.collection) { + if (log.isLevelEnabled("silly")) { + this.debugUnresolvedProjects[cwd] = { + moduleName + }; + const logParentPath = parentPath.replace(":", "(root) ").replace(/([^:]*):$/, "(current) $1"); + log.silly(`Parent path: ${logParentPath.replace(/:/ig, " ➡️ ")}`); + log.silly(`Resolving dependencies of ${moduleName}...`); + } return this.getDepProjects({ cwd, parentPath, @@ -91,6 +100,14 @@ class NpmTranslator { // Array needs to be flattened because: // getDepProjects returns array * 2 = array with two arrays const projects = Array.prototype.concat.apply([], depProjects); + if (log.isLevelEnabled("silly")) { + delete this.debugUnresolvedProjects[cwd]; + log.silly(`Resolved dependencies of ${moduleName}`); + const pendingModules = Object.keys(this.debugUnresolvedProjects).map((key) => { + return this.debugUnresolvedProjects[key].moduleName; + }); + log.silly(`${pendingModules.length} resolutions left: ${pendingModules.join(", ")}`); + } return [{ id: moduleName, @@ -171,6 +188,7 @@ class NpmTranslator { const cache = this.projectCache[modulePath]; // Check whether modules has already been processed in the current subtree (indicates a loop) if (parentPath.indexOf(`:${moduleName}:`) !== -1) { + log.verbose(`Deduping project ${moduleName} with parent path ${parentPath}`); // This is a loop => abort further processing if (this.includeDeduped) { // Add module marked as deduped @@ -188,9 +206,16 @@ class NpmTranslator { return Promise.resolve(null); } } else { + if (log.isLevelEnabled("silly")) { + log.silly( + `${parentPath.match(/([^:]*):$/)[1]} is waiting for ${moduleName} (waiting via cache 🗄 )...`); + } return cache.pProject; } } + if (log.isLevelEnabled("silly")) { + log.silly(`${parentPath.match(/([^:]*):$/)[1]} is waiting for ${moduleName}...`); + } const pPkg = readPkg(modulePath).catch((err) => { // Failed to read package @@ -317,9 +342,10 @@ class NpmTranslator { if (this.pendingDeps[project.id]) { for (let i = this.pendingDeps[project.id].parents.length - 1; i >= 0; i--) { const parent = this.pendingDeps[project.id].parents[i]; - // Check whether modules has already been processed in the current subtree (indicates a loop) + // Check whether module has already been processed in the current subtree (indicates a loop) if (parent.path.indexOf(`:${project.id}:`) !== -1) { // This is a loop + log.verbose(`Deduping pending dependency ${project.id} with parent path ${parent.path}`); if (this.includeDeduped) { // Add module marked as deduped const dedupedProject = { From 3e669f5dfb7ca8287f253258aac7991e8c05a517 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 18 Dec 2018 15:17:09 +0100 Subject: [PATCH 0090/1272] [ui5-project][FIX] npm translator: Fix handling of indirect dependency cycles --- packages/project/lib/translators/npm.js | 128 +++--- packages/project/test/lib/translators/npm.js | 388 +++++++++++++++++-- 2 files changed, 422 insertions(+), 94 deletions(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 58e5322eb30..5bf7fc335f6 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -106,7 +106,11 @@ class NpmTranslator { const pendingModules = Object.keys(this.debugUnresolvedProjects).map((key) => { return this.debugUnresolvedProjects[key].moduleName; }); - log.silly(`${pendingModules.length} resolutions left: ${pendingModules.join(", ")}`); + if (pendingModules.length) { + log.silly(`${pendingModules.length} resolutions left: ${pendingModules.join(", ")}`); + } else { + log.silly("All modules resolved."); + } } return [{ @@ -183,69 +187,85 @@ class NpmTranslator { }); } - readProject({modulePath, moduleName, parentPath}) { - if (this.projectCache[modulePath]) { - const cache = this.projectCache[modulePath]; - // Check whether modules has already been processed in the current subtree (indicates a loop) - if (parentPath.indexOf(`:${moduleName}:`) !== -1) { - log.verbose(`Deduping project ${moduleName} with parent path ${parentPath}`); - // This is a loop => abort further processing - if (this.includeDeduped) { - // Add module marked as deduped - return cache.pPkg.then((pkg) => { - return { - id: moduleName, - version: pkg.version, - path: modulePath, - dependencies: [], - deduped: true - }; - }); - } else { - // Ignore this dependency - return Promise.resolve(null); - } + async readProject({modulePath, moduleName, parentPath}) { + let {pPkg} = this.projectCache[modulePath] || {}; + if (!pPkg) { + pPkg = readPkg(modulePath).catch((err) => { + // Failed to read package + // If dependency shim is available, fake the package + + /* Disabled shimming until shim-plugin is available + const id = path.basename(modulePath); + if (pkgDependenciesShims[id]) { + const dependencies = JSON.parse(JSON.stringify(pkgDependenciesShims[id])); + return { // Fake package.json content + name: id, + dependencies, + version: "", + ui5: { + dependencies: Object.keys(dependencies) + } + }; + }*/ + throw err; + }); + this.projectCache[modulePath] = { + pPkg + }; + } + + // Check whether module has already been processed in the current subtree (indicates a loop) + if (parentPath.indexOf(`:${moduleName}:`) !== -1) { + log.verbose(`Deduping project ${moduleName} with parent path ${parentPath}`); + // This is a loop => abort further processing + if (!this.includeDeduped) { + // Ignore this dependency + return null; } else { - if (log.isLevelEnabled("silly")) { - log.silly( - `${parentPath.match(/([^:]*):$/)[1]} is waiting for ${moduleName} (waiting via cache 🗄 )...`); - } - return cache.pProject; + // Add module marked as deduped + const pkg = await pPkg; + + return { + id: moduleName, + version: pkg.version, + path: modulePath, + dependencies: [], + deduped: true + }; } } + + // Check whether project has already been processed + // Note: We can only cache already *processed* projects, not the promise waiting for the processing to complete + // Otherwise cyclic dependencies might wait for each other, emptying the event loop + // Note 2: Currently caching can't be used at all. If a cached dependency has an indirect dependency to the + // requesting module, a circular reference would be created + /* + if (cachedProject) { + if (log.isLevelEnabled("silly")) { + log.silly(`${parentPath.match(/([^:]*):$/)[1]} retrieved already ` + + `resolved project ${moduleName} from cache 🗄 `); + } + return cachedProject; + }*/ if (log.isLevelEnabled("silly")) { log.silly(`${parentPath.match(/([^:]*):$/)[1]} is waiting for ${moduleName}...`); } - const pPkg = readPkg(modulePath).catch((err) => { - // Failed to read package - // If dependency shim is available, fake the package - - /* Disabled shimming until shim-plugin is available - const id = path.basename(modulePath); - if (pkgDependenciesShims[id]) { - const dependencies = JSON.parse(JSON.stringify(pkgDependenciesShims[id])); - return { // Fake package.json content - name: id, - dependencies, - version: "", - ui5: { - dependencies: Object.keys(dependencies) - } - }; - }*/ - throw err; - }); - - const pProject = pPkg.then((pkg) => { + return pPkg.then((pkg) => { return this.processPkg({ name: moduleName, - pkg: pkg, + pkg, path: modulePath }, parentPath).then((projects) => { // Flatten the array of project arrays (yes, because collections) return Array.prototype.concat.apply([], projects.filter((p) => p !== null)); - }); + })/* + // Currently no project caching, see above + .then((projects) => { + this.projectCache[modulePath].cachedProject = projects; + return projects; + })*/; }, () => { // Failed to read package. Create a project anyway return [{ @@ -255,12 +275,6 @@ class NpmTranslator { dependencies: [] }]; }); - - this.projectCache[modulePath] = { - pPkg, - pProject - }; - return pProject; } /* Returns path to a module diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index 90604221526..031ad4e029c 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -56,7 +56,7 @@ test("AppG: project with npm 'optionalDependencies' should not fail if optional }); }); -test("AppCycle: cyclic dev deps", (t) => { +test("AppCycleA: cyclic dev deps", (t) => { const applicationCycleAPath = path.join(cycleDepsBasePath, "application.cycle.a"); return npmTranslator.generateDependencyTree(applicationCycleAPath, {includeDeduped: false}).then((parsedTree) => { @@ -64,7 +64,7 @@ test("AppCycle: cyclic dev deps", (t) => { }); }); -test("AppCycle: cyclic dev deps - include deduped", (t) => { +test("AppCycleA: cyclic dev deps - include deduped", (t) => { const applicationCycleAPath = path.join(cycleDepsBasePath, "application.cycle.a"); return npmTranslator.generateDependencyTree(applicationCycleAPath, {includeDeduped: true}).then((parsedTree) => { @@ -72,56 +72,28 @@ test("AppCycle: cyclic dev deps - include deduped", (t) => { }); }); -test("AppCycle: cyclic npm deps - Cycle via devDependency on second level", (t) => { - const cycleDepsBasePath = path.join(__dirname, "..", "..", "fixtures", "cyclic-deps", "node_modules"); +test("AppCycleB: cyclic npm deps - Cycle via devDependency on second level", (t) => { const applicationCycleBPath = path.join(cycleDepsBasePath, "application.cycle.b"); - - const applicationCycleB = { - id: "application.cycle.b", - version: "1.0.0", - path: applicationCycleBPath, - dependencies: [] - }; - - const moduleD = { - id: "module.d", - version: "1.0.0", - path: path.join(cycleDepsBasePath, "module.d"), - dependencies: [] - }; - - const moduleE = { - id: "module.e", - version: "1.0.0", - path: path.join(cycleDepsBasePath, "module.e"), - dependencies: [] - }; - - applicationCycleB.dependencies.push(moduleD, moduleE); - moduleD.dependencies.push(moduleE); - moduleE.dependencies.push(moduleD); - - const applicationCycleTree = applicationCycleB; return npmTranslator.generateDependencyTree(applicationCycleBPath).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleTree, "Parsed correctly"); + t.deepEqual(parsedTree, applicationCycleBTree, "Parsed correctly"); }); }); -test("AppCycle: cyclic npm deps - Cycle on third level (one indirection)", (t) => { +test("AppCycleC: cyclic npm deps - Cycle on third level (one indirection)", (t) => { const applicationCycleCPath = path.join(cycleDepsBasePath, "application.cycle.c"); return npmTranslator.generateDependencyTree(applicationCycleCPath, {includeDeduped: false}).then((parsedTree) => { t.deepEqual(parsedTree, applicationCycleCTree, "Parsed correctly"); }); }); -test("AppCycle: cyclic npm deps - Cycle on third level (one indirection) - include deduped", (t) => { +test("AppCycleC: cyclic npm deps - Cycle on third level (one indirection) - include deduped", (t) => { const applicationCycleCPath = path.join(cycleDepsBasePath, "application.cycle.c"); return npmTranslator.generateDependencyTree(applicationCycleCPath, {includeDeduped: true}).then((parsedTree) => { t.deepEqual(parsedTree, applicationCycleCTreeIncDeduped, "Parsed correctly"); }); }); -test("AppCycle: cyclic npm deps - Cycles everywhere", (t) => { +test("AppCycleD: cyclic npm deps - Cycles everywhere", (t) => { const applicationCycleDPath = path.join(cycleDepsBasePath, "application.cycle.d"); return npmTranslator.generateDependencyTree(applicationCycleDPath, {includeDeduped: true}).then((parsedTree) => { t.deepEqual(parsedTree, applicationCycleDTree, "Parsed correctly"); @@ -397,6 +369,47 @@ const applicationCycleATreeIncDeduped = { ] }; +const applicationCycleBTree = { + "id": "application.cycle.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.b"), + "dependencies": [ + { + "id": "module.d", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.d"), + "dependencies": [ + { + "id": "module.e", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.e"), + "dependencies": [] + } + ] + }, + { + "id": "module.e", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.e"), + "dependencies": [ + { + "id": "module.d", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.d"), + "dependencies": [ + { + "id": "module.e", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.e"), + "dependencies": [] + } + ] + } + ] + } + ] +}; + const applicationCycleCTree = { "id": "application.cycle.c", "version": "1.0.0", @@ -500,7 +513,8 @@ const applicationCycleCTreeIncDeduped = { }, { "id": "module.g", - "version": "1.0.0", "path": path.join(cycleDepsBasePath, "module.g"), + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.g"), "dependencies": [ { "id": "module.a", @@ -535,4 +549,304 @@ const applicationCycleCTreeIncDeduped = { ] }; -const applicationCycleDTree = {}; +const applicationCycleDTree = { + "id": "application.cycle.d", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.d"), + "dependencies": [ + { + "id": "module.h", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.h"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [ + { + "id": "module.k", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.k"), + "dependencies": [ + { + "id": "module.h", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.h"), + "dependencies": [], + "deduped": true + }, + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [], + "deduped": true + }, + { + "id": "module.j", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.j"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] + }, + { + "id": "module.j", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.j"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [ + { + "id": "module.k", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.k"), + "dependencies": [ + { + "id": "module.h", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.h"), + "dependencies": [], + "deduped": true + }, + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [], + "deduped": true + }, + { + "id": "module.j", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.j"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] + } + ] + }, + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [ + { + "id": "module.k", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.k"), + "dependencies": [ + { + "id": "module.h", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.h"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [], + "deduped": true + }, + { + "id": "module.j", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.j"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [], + "deduped": true + } + ] + } + ] + }, + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [], + "deduped": true + }, + { + "id": "module.j", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.j"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] + }, + { + "id": "module.j", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.j"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [ + { + "id": "module.k", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.k"), + "dependencies": [ + { + "id": "module.h", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.h"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [], + "deduped": true + }, + { + "id": "module.j", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.j"), + "dependencies": [], + "deduped": true + } + ] + }, + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [], + "deduped": true + }, + { + "id": "module.j", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.j"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] + }, + { + "id": "module.k", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.k"), + "dependencies": [ + { + "id": "module.h", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.h"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [ + { + "id": "module.k", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.k"), + "dependencies": [], + "deduped": true + } + ] + }, + { + "id": "module.j", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.j"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [ + { + "id": "module.k", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.k"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] + }, + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [ + { + "id": "module.k", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.k"), + "dependencies": [], + "deduped": true + } + ] + }, + { + "id": "module.j", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.j"), + "dependencies": [ + { + "id": "module.i", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.i"), + "dependencies": [ + { + "id": "module.k", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.k"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] + } + ] +}; From 8127975f1ef241b2c7f001f5edfb7a924291e6da Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 18 Dec 2018 23:05:39 +0100 Subject: [PATCH 0091/1272] [ui5-project][INTERNAL] npm translator: Ignore packages that can't be read Ignore them rather than faking them. --- packages/project/lib/translators/npm.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 5bf7fc335f6..3b04c90efb6 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -266,14 +266,11 @@ class NpmTranslator { this.projectCache[modulePath].cachedProject = projects; return projects; })*/; - }, () => { + }, (err) => { // Failed to read package. Create a project anyway - return [{ - id: moduleName, - version: "", - path: modulePath, - dependencies: [] - }]; + log.error(`Failed to read package.json of module ${moduleName} at ${modulePath} - Error: ${err.message}`); + log.error(`Ignoring module ${moduleName} due to errors.`); + return null; }); } From a4eb7b98c18ef54ce3c44afd0cce71f75a3b4d77 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 18 Dec 2018 23:07:03 +0100 Subject: [PATCH 0092/1272] [ui5-project]npm translator: Fix code style and add comments --- packages/project/lib/translators/npm.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 3b04c90efb6..2dd1c9a0638 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -295,16 +295,16 @@ class NpmTranslator { // As of today, collections only exist in shims this.shimCollection(pkg.name, pkg); if (pkg.collection) { - log.verbose( - "Unable to locate module %s via resolve logic, but found a collection in parent hierarchy: %s", - moduleName, pkg.name); + log.verbose(`Unable to locate module ${moduleName} via resolve logic, but found ` + + `a collection in parent hierarchy: ${pkg.name}`); const modules = pkg.collection.modules || {}; if (modules[moduleName]) { const modulePath = path.join(path.dirname(result.path), modules[moduleName]); - log.verbose("Found module %s in that collection", moduleName); + log.verbose(`Found module ${moduleName} in that collection`); return modulePath; } - throw new Error(`[npm translator] Could not find module ${moduleName} in collection ${pkg.name}`); + throw new Error( + `[npm translator] Could not find module ${moduleName} in collection ${pkg.name}`); } } @@ -320,11 +320,13 @@ class NpmTranslator { registerPendingDependencies({dependencies, parentProject, parentPath}) { Object.keys(dependencies).forEach((moduleName) => { if (this.pendingDeps[moduleName]) { + // Register additional potential parent for pending dependency this.pendingDeps[moduleName].parents.push({ project: parentProject, path: parentPath }); } else { + // Add new pending dependency this.pendingDeps[moduleName] = { parents: [{ project: parentProject, From 4e5de52bf566eab35ea92328423b1b28688b8f12 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 18 Dec 2018 23:25:46 +0100 Subject: [PATCH 0093/1272] [ui5-project][FIX] npm translator: Deduplicate subtrees of pending dependencies --- packages/project/lib/translators/npm.js | 76 +++++++++++++++---- .../application.cycle.d/webapp/index.html | 2 +- .../application.cycle.e/package.json | 13 ++++ .../node_modules/application.cycle.e/ui5.yaml | 5 ++ .../application.cycle.e/webapp/index.html | 9 +++ .../application.cycle.e/webapp/test.js | 5 ++ .../node_modules/module.l/package.json | 11 +++ .../node_modules/module.m/package.json | 11 +++ packages/project/test/lib/translators/npm.js | 60 ++++++++++++++- 9 files changed, 176 insertions(+), 16 deletions(-) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/index.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/test.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.l/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.m/package.json diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 2dd1c9a0638..9ce588cba99 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -222,16 +222,13 @@ class NpmTranslator { // Ignore this dependency return null; } else { - // Add module marked as deduped + // Create deduped project const pkg = await pPkg; - - return { + return this.createDedupedProject({ id: moduleName, version: pkg.version, - path: modulePath, - dependencies: [], - deduped: true - }; + path: modulePath + }); } } @@ -338,6 +335,11 @@ class NpmTranslator { } processPendingDeps(tree) { + if (Object.keys(this.pendingDeps).length === 0) { + // No pending deps => nothing to do + log.verbose("No pending (optional) dependencies to process"); + return tree; + } const queue = [tree]; const visited = new Set(); @@ -360,21 +362,28 @@ class NpmTranslator { // This is a loop log.verbose(`Deduping pending dependency ${project.id} with parent path ${parent.path}`); if (this.includeDeduped) { - // Add module marked as deduped - const dedupedProject = { + // Create project marked as deduped + const dedupedProject = this.createDedupedProject({ id: project.id, version: project.version, - path: project.path, - dependencies: [], - deduped: true - }; + path: project.path + }); parent.project.dependencies.push(dedupedProject); } // else: do nothing } else { - parent.project.dependencies.push(project); + if (log.isLevelEnabled("silly")) { + log.silly(`Adding optional dependency ${project.id} to project ${parent.project.id} ` + + `(parent path: ${parent.path})...`); + } + const dedupedProject = this.dedupeTree(project, parent.path); + parent.project.dependencies.push(dedupedProject); } } this.pendingDeps[project.id] = null; + + if (log.isLevelEnabled("silly")) { + log.silly(`${Object.keys(this.pendingDeps).length} pending dependencies left`); + } } if (project.dependencies) { @@ -438,6 +447,45 @@ class NpmTranslator { pkg.collection = JSON.parse(JSON.stringify(pkgCollectionShims[moduleName])); }*/ } + + dedupeTree(tree, parentPath) { + const projectsToDedupe = new Set(parentPath.slice(1, -1).split(":")); + const clonedTree = JSON.parse(JSON.stringify(tree)); + const queue = [{project: clonedTree}]; + // BFS + while (queue.length) { + const {project, parent} = queue.shift(); // Get and remove first entry from queue + + if (parent && projectsToDedupe.has(project.id)) { + log.silly(`In tree "${tree.id}" (parent path "${parentPath}"): Deduplicating project ${project.id} `+ + `(child of ${parent.id})`); + + const idx = parent.dependencies.indexOf(project); + const dedupedProject = this.createDedupedProject(project); + parent.dependencies.splice(idx, 1, dedupedProject); + } + + if (project.dependencies) { + queue.push(...project.dependencies.map((dependency) => { + return { + project: dependency, + parent: project + }; + })); + } + } + return clonedTree; + } + + createDedupedProject({id, version, path}) { + return { + id, + version, + path, + dependencies: [], + deduped: true + }; + } } /** diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/index.html index a845ac4258e..aefe63db523 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/index.html +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/index.html @@ -1,7 +1,7 @@ - Application Cycle C + Application Cycle D diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/package.json new file mode 100644 index 00000000000..c7cd88032b1 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/package.json @@ -0,0 +1,13 @@ +{ + "name": "application.cycle.e", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - Test for cyclic npm (non-UI5) dependencies - Indirect cycle via devDependency (pending dev)", + "main": "index.html", + "dependencies": { + "module.l": "^1.0.0", + "module.m": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/ui5.yaml new file mode 100644 index 00000000000..199e29c6dfd --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.cycle.e diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/index.html new file mode 100644 index 00000000000..43cb37dc30b --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/index.html @@ -0,0 +1,9 @@ + + + + Application Cycle E + + + + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.l/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.l/package.json new file mode 100644 index 00000000000..333ca8a2c38 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.l/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.l", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies", + "devDependencies": { + "module.m": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.m/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/module.m/package.json new file mode 100644 index 00000000000..62ae38050ab --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.m/package.json @@ -0,0 +1,11 @@ +{ + "name": "module.m", + "version": "1.0.0", + "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies", + "dependencies": { + "module.l": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index 031ad4e029c..97bf16dd049 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -100,6 +100,13 @@ test("AppCycleD: cyclic npm deps - Cycles everywhere", (t) => { }); }); +test("AppCycleE: cyclic npm deps - Cycle via devDependency", (t) => { + const applicationCycleEPath = path.join(cycleDepsBasePath, "application.cycle.e"); + return npmTranslator.generateDependencyTree(applicationCycleEPath, {includeDeduped: true}).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleETree, "Parsed correctly"); + }); +}); + test("Error: missing package.json", async (t) => { const dir = path.parse(__dirname).root; const error = await t.throws(npmTranslator.generateDependencyTree(dir)); @@ -401,7 +408,8 @@ const applicationCycleBTree = { "id": "module.e", "version": "1.0.0", "path": path.join(cycleDepsBasePath, "module.e"), - "dependencies": [] + "dependencies": [], + "deduped": true } ] } @@ -850,3 +858,53 @@ const applicationCycleDTree = { } ] }; + +const applicationCycleETree = { + "id": "application.cycle.e", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.e"), + "dependencies": [ + { + "id": "module.l", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.l"), + "dependencies": [ + { + "id": "module.m", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.m"), + "dependencies": [ + { + "id": "module.l", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.l"), + "dependencies": [], + "deduped": true + } + ] + } + ] + }, + { + "id": "module.m", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.m"), + "dependencies": [ + { + "id": "module.l", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.l"), + "dependencies": [ + { + "id": "module.m", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.m"), + "dependencies": [], + "deduped": true + } + ] + } + ] + } + ] +}; From 3eb764db543f095c7253782f149e863b79266262 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 19 Dec 2018 12:32:01 +0000 Subject: [PATCH 0094/1272] [ui5-project]Release 0.2.5 --- packages/project/CHANGELOG.md | 15 ++++++++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 044d9d247b1..34e81113407 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,19 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.4...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.5...HEAD). + + +## [v0.2.5] - 2018-12-18 +### Bug Fixes +- **npm translator:** Deduplicate subtrees of pending dependencies [`7e55ae3`](https://github.com/SAP/ui5-project/commit/7e55ae3d88280746f5800bffc7bbd13e1495ba07) +- **npm translator:** Fix handling of indirect dependency cycles [`c99d6d3`](https://github.com/SAP/ui5-project/commit/c99d6d3a19fbb6c197b449dfd6cb8acc48837dba) + +### Internal Changes +- **npm translator:** Ignore packages that can't be read [`d8c2354`](https://github.com/SAP/ui5-project/commit/d8c23545fd8f1180f988417a9c8cee880b668415) +- **npm translator:** Add silly debug logging [`1ae0d5d`](https://github.com/SAP/ui5-project/commit/1ae0d5dbc9ec9630cd405e108529cab83bc87347) +- **npm translator:** Add addtl. test for cyclic dependencies [`299eb2a`](https://github.com/SAP/ui5-project/commit/299eb2af0472ecf9bf79b96895a2864667b535bf) + ## [v0.2.4] - 2018-12-17 @@ -103,6 +115,7 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - **npm t8r:** Improve handling of missing package.json [`4b32134`](https://github.com/SAP/ui5-project/commit/4b321345139058dc821fb08c4556aff88366ea86) +[v0.2.5]: https://github.com/SAP/ui5-project/compare/v0.2.4...v0.2.5 [v0.2.4]: https://github.com/SAP/ui5-project/compare/v0.2.3...v0.2.4 [v0.2.3]: https://github.com/SAP/ui5-project/compare/v0.2.2...v0.2.3 [v0.2.2]: https://github.com/SAP/ui5-project/compare/v0.2.1...v0.2.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 05af70c6b54..a499a0a6907 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.4", + "version": "0.2.5", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 53f9b423612..1ddc093b25b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.4", + "version": "0.2.5", "description": "UI5 Build and Development Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 207f21f8b3bd51679f01a68e4f7470c22e61922e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 19 Dec 2018 14:30:36 +0000 Subject: [PATCH 0095/1272] [ui5-project]Bump @ui5/builder from 0.2.6 to 0.2.7 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 0.2.6 to 0.2.7. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v0.2.6...v0.2.7) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a499a0a6907..995d8e53c87 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -310,9 +310,9 @@ } }, "@ui5/builder": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.6.tgz", - "integrity": "sha512-47jq1UOjhZtU/CVkxTEswv9neyWQgVu5ZtBRjPmLxs4yC/cz72c2ZDO81BStwXZiXjomHR+AhEfSnpCsw+MIsQ==", + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.7.tgz", + "integrity": "sha512-DUB+8UxKu+ZKpKXF1+xuxx7TFo8yamrBcKKEZ19LIg40l5TLptcUkQjYxSP5MzlLSqXp+csKNd7ZDRLszp1NJQ==", "requires": { "@ui5/fs": "^0.2.0", "@ui5/logger": "^0.2.2", diff --git a/packages/project/package.json b/packages/project/package.json index 1ddc093b25b..d9e9747d7dd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^0.2.6", + "@ui5/builder": "^0.2.7", "@ui5/logger": "^0.2.2", "graceful-fs": "^4.1.15", "js-yaml": "^3.10.0", From a1e7a56144e4d9f44c080219dc42511f0ed58a45 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 19 Dec 2018 15:20:03 +0000 Subject: [PATCH 0096/1272] [ui5-project]Bump @ui5/builder from 0.2.7 to 0.2.8 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 0.2.7 to 0.2.8. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v0.2.7...v0.2.8) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 995d8e53c87..238564d095c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -310,9 +310,9 @@ } }, "@ui5/builder": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.7.tgz", - "integrity": "sha512-DUB+8UxKu+ZKpKXF1+xuxx7TFo8yamrBcKKEZ19LIg40l5TLptcUkQjYxSP5MzlLSqXp+csKNd7ZDRLszp1NJQ==", + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.8.tgz", + "integrity": "sha512-HdO/Ct2NWY2JE+1pDoQy7jLRZglWsTejUOYLsf2x8oQllJnRRg57MB7MhRFGnS88c63CGc/H5Mt0Uixur9PdAQ==", "requires": { "@ui5/fs": "^0.2.0", "@ui5/logger": "^0.2.2", diff --git a/packages/project/package.json b/packages/project/package.json index d9e9747d7dd..e8597840a4c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^0.2.7", + "@ui5/builder": "^0.2.8", "@ui5/logger": "^0.2.2", "graceful-fs": "^4.1.15", "js-yaml": "^3.10.0", From d4739a718a9b875ab1181e9f419c291a695aa594 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 17 Dec 2018 17:23:39 +0100 Subject: [PATCH 0097/1272] [ui5-project]Coveralls: Handle PR build result only Ignore push builds. This should reduce the number of comments Coveralls adds to PRs --- packages/project/.travis.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/project/.travis.yml b/packages/project/.travis.yml index 023f03edb97..4fd870b70bd 100644 --- a/packages/project/.travis.yml +++ b/packages/project/.travis.yml @@ -18,7 +18,10 @@ matrix: - "8" after_script: -- if [[ "$TRAVIS_OS_NAME" == 'linux' ]]; then npm run report-coveralls; fi +- if [[ "$TRAVIS_OS_NAME" == "linux" && + (( -n "$TRAVIS_PULL_REQUEST" && "$TRAVIS_PULL_REQUEST" != "false" ) || "$TRAVIS_BRANCH" == "master" ) ]]; then + npm run report-coveralls; + fi notifications: webhooks: https://coveralls.io/webhook From 000ec17727af179b1a8c3286c7fb367545e63e96 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 17 Dec 2018 17:34:31 +0100 Subject: [PATCH 0098/1272] [ui5-project]package.json: Fix unit-nyan script On test failures, npms error logs distorted the nyan cat rendering --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index e8597840a4c..46e6563b818 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -23,7 +23,7 @@ "unit": "rimraf test/tmp && ava", "unit-verbose": "rimraf test/tmp && cross-env UI5_LOG_LVL=verbose ava --verbose --serial", "unit-watch": "rimraf test/tmp && ava --watch", - "unit-nyan": "npm run unit -- --tap | tnyan", + "unit-nyan": "rimraf test/tmp && ava --tap | tnyan", "unit-inspect": "cross-env UI5_LOG_LVL=verbose node --inspect-brk node_modules/ava/profile.js", "coverage": "nyc npm run unit", "jsdoc": "npm run jsdoc-generate && opn jsdocs/index.html", From a3e56090cdb804fe4ddf386a13fc41fc1ca3a8af Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Thu, 27 Dec 2018 01:50:52 +0000 Subject: [PATCH 0099/1272] [ui5-project]Bump eslint from 5.10.0 to 5.11.1 Bumps [eslint](https://github.com/eslint/eslint) from 5.10.0 to 5.11.1. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.10.0...v5.11.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 24 ++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 238564d095c..f9c05ebc769 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2558,9 +2558,9 @@ } }, "eslint": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.10.0.tgz", - "integrity": "sha512-HpqzC+BHULKlnPwWae9MaVZ5AXJKpkxCVXQHrFaRw3hbDj26V/9ArYM4Rr/SQ8pi6qUPLXSSXC4RBJlyq2Z2OQ==", + "version": "5.11.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.11.1.tgz", + "integrity": "sha512-gOKhM8JwlFOc2acbOrkYR05NW8M6DCMSvfcJiBB5NDxRE1gv8kbvxKaC9u69e6ZGEMWXcswA/7eKR229cEIpvg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2603,9 +2603,9 @@ }, "dependencies": { "ajv": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.1.tgz", - "integrity": "sha512-ZoJjft5B+EJBjUyu9C9Hc0OZyPZSSlOF+plzouTrg6UlA8f+e/n8NIgBFG/9tppJtpPWfthHakK7juJdNDODww==", + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.2.tgz", + "integrity": "sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -2634,9 +2634,9 @@ } }, "debug": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", - "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { "ms": "^2.1.1" @@ -7724,9 +7724,9 @@ }, "dependencies": { "ajv": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.1.tgz", - "integrity": "sha512-ZoJjft5B+EJBjUyu9C9Hc0OZyPZSSlOF+plzouTrg6UlA8f+e/n8NIgBFG/9tppJtpPWfthHakK7juJdNDODww==", + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.2.tgz", + "integrity": "sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 46e6563b818..ca08309f705 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -106,7 +106,7 @@ "coveralls": "^3.0.1", "cross-env": "^5.2.0", "docdash": "^1.0.1", - "eslint": "^5.10.0", + "eslint": "^5.11.1", "eslint-config-google": "^0.11.0", "jsdoc": "^3.5.5", "nyc": "^13.1.0", From daea21ee0f1a885af5a3d0b7c841baf1d400ba36 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 27 Dec 2018 13:30:27 +0100 Subject: [PATCH 0100/1272] [ui5-project][INTERNAL] NOTICE: Update copyright year to 2019 --- packages/project/NOTICE.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/NOTICE.txt b/packages/project/NOTICE.txt index 8adf0514e50..efa95dd4cbf 100644 --- a/packages/project/NOTICE.txt +++ b/packages/project/NOTICE.txt @@ -1 +1 @@ -Copyright (c) 2018 SAP SE or an SAP affiliate company. All rights reserved. +Copyright (c) 2018-2019 SAP SE or an SAP affiliate company. All rights reserved. From 6c1f7e69177534385a27bec27fe566b9944a4d23 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Thu, 3 Jan 2019 20:19:57 +0000 Subject: [PATCH 0101/1272] [ui5-project]Bump @ui5/builder from 0.2.8 to 0.2.9 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 0.2.8 to 0.2.9. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v0.2.8...v0.2.9) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 226 +++-------------------------- packages/project/package.json | 2 +- 2 files changed, 22 insertions(+), 206 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f9c05ebc769..fd3414fed76 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -310,13 +310,12 @@ } }, "@ui5/builder": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.8.tgz", - "integrity": "sha512-HdO/Ct2NWY2JE+1pDoQy7jLRZglWsTejUOYLsf2x8oQllJnRRg57MB7MhRFGnS88c63CGc/H5Mt0Uixur9PdAQ==", + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.9.tgz", + "integrity": "sha512-kBCHnDU04HKfbfsoLFW+D0OJK372jHR8XFbrzfCvWyV8vCGPt7MJkJ8PZ5fpKGb3xXO/loZRBSgnrIhwfWk9gw==", "requires": { "@ui5/fs": "^0.2.0", "@ui5/logger": "^0.2.2", - "archiver": "^3.0.0", "escodegen": "^1.11.0", "escope": "^3.6.0", "esprima": "^2.7.2", @@ -329,7 +328,8 @@ "replacestream": "^4.0.3", "semver": "^5.6.0", "uglify-es": "^3.2.2", - "xml2js": "^0.4.17" + "xml2js": "^0.4.17", + "yazl": "^2.5.1" }, "dependencies": { "semver": { @@ -546,46 +546,6 @@ "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, - "archiver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-3.0.0.tgz", - "integrity": "sha512-5QeR6Xc5hSA9X1rbQfcuQ6VZuUXOaEdB65Dhmk9duuRJHYif/ZyJfuyJqsQrj34PFjU5emv5/MmfgA8un06onw==", - "requires": { - "archiver-utils": "^2.0.0", - "async": "^2.0.0", - "buffer-crc32": "^0.2.1", - "glob": "^7.0.0", - "readable-stream": "^2.0.0", - "tar-stream": "^1.5.0", - "zip-stream": "^2.0.1" - } - }, - "archiver-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-2.0.0.tgz", - "integrity": "sha512-JRBgcVvDX4Mwu2RBF8bBaHcQCSxab7afsxAPYDQ5W+19quIPP5CfKE7Ql+UHs9wYvwsaNR8oDuhtf5iqrKmzww==", - "requires": { - "glob": "^7.0.0", - "graceful-fs": "^4.1.0", - "lazystream": "^1.0.0", - "lodash.assign": "^4.2.0", - "lodash.defaults": "^4.2.0", - "lodash.difference": "^4.5.0", - "lodash.flatten": "^4.4.0", - "lodash.isplainobject": "^4.0.6", - "lodash.toarray": "^4.4.0", - "lodash.union": "^4.6.0", - "normalize-path": "^3.0.0", - "readable-stream": "^2.0.0" - }, - "dependencies": { - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - } - } - }, "are-we-there-yet": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", @@ -686,14 +646,6 @@ "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", "dev": true }, - "async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", - "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", - "requires": { - "lodash": "^4.17.10" - } - }, "async-each": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", @@ -1453,11 +1405,6 @@ } } }, - "base64-js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", - "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==" - }, "bcrypt-pbkdf": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", @@ -1473,15 +1420,6 @@ "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", "dev": true }, - "bl": { - "version": "1.2.2", - "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", - "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", - "requires": { - "readable-stream": "^2.3.5", - "safe-buffer": "^5.1.1" - } - }, "bluebird": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", @@ -1584,39 +1522,11 @@ "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", "dev": true }, - "buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", - "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, - "buffer-alloc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", - "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" - } - }, - "buffer-alloc-unsafe": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" - }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" }, - "buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" - }, "buffer-from": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", @@ -2001,17 +1911,6 @@ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" }, - "compress-commons": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", - "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", - "requires": { - "buffer-crc32": "^0.2.1", - "crc32-stream": "^2.0.0", - "normalize-path": "^2.0.0", - "readable-stream": "^2.0.0" - } - }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -2126,23 +2025,6 @@ } } }, - "crc": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", - "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", - "requires": { - "buffer": "^5.1.0" - } - }, - "crc32-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", - "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", - "requires": { - "crc": "^3.4.4", - "readable-stream": "^2.0.0" - } - }, "create-error-class": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", @@ -2423,14 +2305,6 @@ "core-js": "^2.0.0" } }, - "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", - "requires": { - "once": "^1.4.0" - } - }, "equal-length": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", @@ -3144,11 +3018,6 @@ "map-cache": "^0.2.2" } }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -3981,11 +3850,6 @@ "safer-buffer": ">= 2.1.2 < 3" } }, - "ieee754": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", - "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==" - }, "ignore": { "version": "3.3.10", "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", @@ -4625,14 +4489,6 @@ "package-json": "^4.0.0" } }, - "lazystream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", - "requires": { - "readable-stream": "^2.0.5" - } - }, "lcov-parse": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", @@ -4706,12 +4562,8 @@ "lodash": { "version": "4.17.10", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==" - }, - "lodash.assign": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true }, "lodash.clonedeep": { "version": "4.5.0", @@ -4731,20 +4583,17 @@ "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", "dev": true }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" - }, "lodash.difference": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=" + "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", + "dev": true }, "lodash.flatten": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true }, "lodash.flattendeep": { "version": "4.4.0", @@ -4764,27 +4613,12 @@ "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", "dev": true }, - "lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" - }, "lodash.merge": { "version": "4.6.1", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==", "dev": true }, - "lodash.toarray": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.toarray/-/lodash.toarray-4.4.0.tgz", - "integrity": "sha1-JMS/zWsvuji/0FlNsRedjptlZWE=" - }, - "lodash.union": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", - "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=" - }, "log-driver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", @@ -5209,6 +5043,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, "requires": { "remove-trailing-separator": "^1.0.1" } @@ -7045,7 +6880,8 @@ "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true }, "repeat-element": { "version": "1.1.2", @@ -7870,20 +7706,6 @@ "readable-stream": "^2" } }, - "tar-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", - "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", - "requires": { - "bl": "^1.0.0", - "buffer-alloc": "^1.2.0", - "end-of-stream": "^1.0.0", - "fs-constants": "^1.0.0", - "readable-stream": "^2.3.0", - "to-buffer": "^1.1.1", - "xtend": "^4.0.0" - } - }, "term-size": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", @@ -7942,11 +7764,6 @@ "os-tmpdir": "~1.0.2" } }, - "to-buffer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", - "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" - }, "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", @@ -8456,7 +8273,8 @@ "xtend": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true }, "yallist": { "version": "2.1.2", @@ -8464,14 +8282,12 @@ "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", "dev": true }, - "zip-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-2.0.1.tgz", - "integrity": "sha512-c+eUhhkDpaK87G/py74wvWLtz2kzMPNCCkUApkun50ssE0oQliIQzWpTnwjB+MTKVIf2tGzIgHyqW/Y+W77ecQ==", + "yazl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", + "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", "requires": { - "archiver-utils": "^2.0.0", - "compress-commons": "^1.2.0", - "readable-stream": "^2.0.0" + "buffer-crc32": "~0.2.3" } } } diff --git a/packages/project/package.json b/packages/project/package.json index ca08309f705..ecd56354adc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^0.2.8", + "@ui5/builder": "^0.2.9", "@ui5/logger": "^0.2.2", "graceful-fs": "^4.1.15", "js-yaml": "^3.10.0", From a19e45ebb8a225c3f1926fa268221590985c741d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Thu, 3 Jan 2019 10:29:09 +0000 Subject: [PATCH 0102/1272] [ui5-project]Bump docdash from 1.0.1 to 1.0.2 Bumps [docdash](https://github.com/clenemt/docdash) from 1.0.1 to 1.0.2. - [Release notes](https://github.com/clenemt/docdash/releases) - [Changelog](https://github.com/clenemt/docdash/blob/master/CHANGELOG.md) - [Commits](https://github.com/clenemt/docdash/compare/1.0.1...1.0.2) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fd3414fed76..0d67080587c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2248,9 +2248,9 @@ } }, "docdash": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.1.tgz", - "integrity": "sha512-m6qqQ3zQZnGv+P/GGpKWja9Zrf50X1NJa9HsPe0DYeaZYUbW+afcSAoG2MUY4bQGeOpq0dkuLhsz2QbefXu95g==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.2.tgz", + "integrity": "sha512-IEM57bWPLtVXpUeCKbiGvHsHtW9O9ZiiBPfeQDAZ7JdQiAF3aNWQoJ3e/+uJ63lHO009yn0tbJjtKpXJ2AURCQ==", "dev": true }, "doctrine": { diff --git a/packages/project/package.json b/packages/project/package.json index ecd56354adc..23d6f4dac0f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,7 +105,7 @@ "ava": "^0.25.0", "coveralls": "^3.0.1", "cross-env": "^5.2.0", - "docdash": "^1.0.1", + "docdash": "^1.0.2", "eslint": "^5.11.1", "eslint-config-google": "^0.11.0", "jsdoc": "^3.5.5", From 206c3a5aa7adecaeb0165b59840cfffdabbfc879 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 12 Dec 2018 12:23:28 +0100 Subject: [PATCH 0103/1272] [ui5-project][INTERNAL] README: Document project shim extensions --- packages/project/README.md | 209 ++++++++++++++++++++++++++++++++++--- 1 file changed, 196 insertions(+), 13 deletions(-) diff --git a/packages/project/README.md b/packages/project/README.md index 0f604858e63..2a5c8162c70 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -186,6 +186,14 @@ Enhances a given dependency tree based on a projects [configuration](#configurat ### Project Configuration Typically located in a `ui5.yaml` file per project. +#### Example +````yaml +specVersion: "0.1" +type: application +metadata: + name: my-application +```` + #### Structure ##### YAML ````yaml @@ -195,23 +203,13 @@ type: application|library|custom metadata: name: testsuite copyright: |- - UI development toolkit for HTML5 (OpenUI5) - * (c) Copyright 2009-${currentYear} SAP SE or an SAP affiliate company. - * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. + + * (c) Copyright 2009-${currentYear} resources: configuration: paths: "": "" "": "" - shims: - some-dependency-name: - type: library - metadata: - name: library-xy - resources: - configuration: - paths: - "src": "source" builder: customTasks: - name: custom-task-name-1 @@ -242,7 +240,6 @@ Some general information: - `paths`: Mapping between virtual and physical paths + For type `application` there can be a setting for mapping the virtual path `webapp` to a physical path within the project + For type `library` there can be a setting for mapping the virtual paths `src` and `test` to physical paths within the project -- `shims`: Can be used to define, extend, or override UI5 configs of dependencies. Inner structure equals the general structure. It is a key-value map where the key equals the project ID as supplied by the translator. ##### builder (optional) - `customTasks` (optional, list): In this block, you define additional custom build tasks, see [here](docs/BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: @@ -254,6 +251,192 @@ Some general information: - `settings` (not yet implemented) - `port`: Project default server port; can be overwritten via CLI parameters +### Extension Configuration +Typically located in a `ui5.yaml` file. Extensions can be defined in any projects `ui5.yaml`, *after* the project configuration (separated by `---`). In case you'd like to reuse an extension across multiple projects you can make it a module itself. + +Extensions can be identified by the `kind: extension` configuration. If no `kind` configuration is given, [`project`](#project-configuration) is assumed. + +#### Tasks +See [Build Extensibility](docs/BuildExtensibility.md). + +#### Project Shim +A project shim extension can be used to define or extend a project configuration of a module. The most popular use case is probably to add UI5 project configuration to a third party module that otherwise could not be used with the UI5 Tooling. + +Also see [RFC 0002 Project Shims](https://github.com/SAP/ui5-tooling/blob/master/rfcs/0002-project-shims.md). + +##### Structure +```yaml +specVersion: "0.1" +kind: extension +type: project-shim +metadata: + name: +shims: + configurations: + : + specVersion: "0.1", + type: + metadata: + name: + : + specVersion: "0.1", + type: + metadata: + name: + dependencies: + : + - + - + - + - ... + collections: + : + modules: + : + : + : +``` + +"module name" refers to the name of the module as identified by the used translator. E.g. when using the npm translator, name declared in the modules `package.json` is used here. In most cases, the module name also becomes a projects ID. + +###### configurations (optional) +Map of module names. The values represent the configuration that should be applied to the module. This configuration can be defined just like in any `ui5.yaml`. + +Configuration is applied to the module using [`Object.assign()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign). This means that existing configuration properties will be overwritten. + +###### dependencies (optional) +Map of module names. The value is an array of module names that this module depends on. The other modules need to be part of the dependency tree. + + + +###### collections (optional) + +##### Example A: +An application "my-application" defines an npm dependency to [lodash](https://lodash.com/) in its `package.json` and configures it by using a project-shim extension added to its `ui5.yaml`. + +```yaml +specVersion: "0.1" +type: application +metadata: + name: my.application +--- # Everything below this line could also be put into the ui5.yaml of a standalone extension module +specVersion: "0.1" +kind: extension +type: project-shim +metadata: + name: my.application.thirdparty +shims: + configurations: + lodash: # name as defined in package.json + specVersion: "0.1" + type: module # Use module type + metadata: + name: lodash + resources: + configuration: + paths: + /resources/my/application/thirdparty/: "" # map root directory of lodash module +``` + +##### Example B: +An application "application.a" depends on a library "legacy.library.a" which does not contain a `ui5.yaml` or `package.json` yet (nor do its dependencies). + +###### Structure of the legacy library directories (two repositories) +``` +legacy-libs/ + \_ src/ + \_ library.a/ + \_ src/ + \_ test/ + \_ library.b/ + \_ src/ + \_ test/ +legacy-library-x/ + \_ src/ + \_ test/ +``` + +###### Dependencies between the legacy libraries +``` +legacy.library.a depends on legacy.library.b +legacy.library.a depends on legacy.library.x + +legacy.library.b depends on legacy.library.x +``` + +###### application.a +**Directory structure** +``` +application-a/ + \_ node_modules/ + \_ legacy-libs/ + \_ legacy-library-x/ + \_ webapp/ + \_ ui5.yaml + \_ package.json +``` + +**package.json (extract)** +[napa](https://github.com/shama/napa) can install git repositories that are lacking a `package.json` with npm. Within `ui5-project`, the npm translator already detects dependencies defined in the `napa` section of a `package.json` and tries to resolve them. + +```json +{ + "scripts": { + "install": "napa" + }, + "napa": { + "legacy-libs": "", + "legacy-library-x": "" + } +} + +``` + +**ui5.yaml** +The shim defined in the application configures the legacy libraries and defines their dependencies. This shim might as well be a standalone module that is added to the applications dependencies. That would be the typical reuse scenario for shims. + +```yaml +specVersion: "0.1" +type: application +metadata: + name: application.a +---- +specVersion: "0.1" +kind: extension +type: project-shim +metadata: + name: legacy-lib-shims +shims: + configurations: + legacy-library-a: + specVersion: "0.1" + type: library + metadata: + name: legacy.library.a + legacy-library-b: + specVersion: "0.1" + type: library + metadata: + name: legacy.library.b + legacy-library-x: + specVersion: "0.1" + type: library + metadata: + name: legacy.library.x + dependencies: + legacy-library-a: + - legacy-library-b + - legacy-library-x + legacy-library-b: + - legacy-library-x + collections: + legacy-libs: + modules: + legacy-library-a: src/library.a + legacy-library-b: src/library.b +``` + + ## Contributing Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md). From 89a161217b085266a399b9ed96a8808a5d4f320f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 2 Jan 2019 17:45:13 +0100 Subject: [PATCH 0104/1272] [ui5-project][INTERNAL] README: Move Configuration section into separate file --- packages/project/README.md | 282 ++---------------------- packages/project/docs/Configuration.md | 288 +++++++++++++++++++++++++ 2 files changed, 303 insertions(+), 267 deletions(-) create mode 100644 packages/project/docs/Configuration.md diff --git a/packages/project/README.md b/packages/project/README.md index 2a5c8162c70..ac7b64ec374 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -13,19 +13,20 @@ **This is an alpha release!** **The UI5 Build and Development Tooling described here is not intended for productive use yet. Breaking changes are to be expected.** +## Configuration +See [Configuration](docs/Configuration.md). + ## Normalizer -The purpose of the normalizer is to collect dependency information and to enrich it with project configuration ([generateProjectTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateProjectTree)). +The purpose of the normalizer is to collect dependency information and to enrich it with project configuration (both done in [generateProjectTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateProjectTree)). [Translators](#translators) are used to collect dependency information. The [Project Preprocessor](#project-preprocessor) enriches this dependency information with project configuration, typically from a `ui5.yaml` file. A development server and build process can use this information to locate project and dependency resources. -If you want to retrieve the project dependency graph only, use ([generateDependencyTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateDependencyTree)). +If you want to retrieve the project dependency graph without any configuration, you may use use the [generateDependencyTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateDependencyTree) API. ## Translators Translators collect recursively all dependencies on a package manager specific layer and return information about them in a well-defined tree structure. -### Tree Structure Returned by a Translator -The following dependency tree is the expected input structure of the [Project Preprocessor](#project-preprocessor): - +**Tree structure as returned by a Translator:** ````json { "id": "projectA", @@ -56,6 +57,7 @@ The following dependency tree is the expected input structure of the [Project Pr ] } ```` +This dependency tree can be used as input for the [Project Preprocessor](#project-preprocessor): ### npm Translator The npm translator is currently the default translator and looks for dependencies defined in the `package.json` file of a certain project. `dependencies`, `devDepedencies`, and [napa dependencies](https://github.com/shama/napa) (Git repositories which don't have a `package.json` file) are located via the Node.js module resolution logic. @@ -65,27 +67,28 @@ The npm translator is currently the default translator and looks for dependencie Can be used to supply the full dependency information of a project in a single structured file. -Example: `ui5 serve -b static:/path/to/projectDependencies.yaml` -`projectDependencies.yaml` contains something like: +**Example: `projectDependencies.yaml`** ````yaml --- id: testsuite -version: "", +version: "" path: "./" dependencies: - id: sap.f - version: "", + version: "" path: "../sap.f" - id: sap.m - version: "", + version: "" path: "../sap.m" ```` +This can be used via `ui5 serve -b static:/path/to/projectDependencies.yaml` + ## Project Preprocessor -Enhances a given dependency tree based on a projects [configuration](#configuration). +Enhances a given dependency tree based on a projects [configuration](docs/Configuration.md). -### Enhanced Dependency Tree Structure Returned by the Project Preprocessor +**Enhanced dependency tree structure as returned by the Project Preprocessor:** ````json { "id": "projectA", @@ -182,261 +185,6 @@ Enhances a given dependency tree based on a projects [configuration](#configurat } ```` -## Configuration -### Project Configuration -Typically located in a `ui5.yaml` file per project. - -#### Example -````yaml -specVersion: "0.1" -type: application -metadata: - name: my-application -```` - -#### Structure -##### YAML -````yaml ---- -specVersion: "0.1" -type: application|library|custom -metadata: - name: testsuite - copyright: |- - - * (c) Copyright 2009-${currentYear} -resources: - configuration: - paths: - "": "" - "": "" -builder: - customTasks: - - name: custom-task-name-1 - beforeTask: standard-task-name - configuration: - configuration-key: value - - name: custom-task-name-2 - afterTask: custom-task-name-1 - configuration: - color: blue -server: - settings: - port: 8099 -```` - -#### Properties -##### \ -- `specVersion`: Version of the specification -- `type`: Either `application`, `library` or `custom` (custom not yet implemented); defines the default path mappings and build steps. Custom doesn't define any specific defaults. - -##### metadata -Some general information: -- `name`: Name of the application/library/resource -- `copyright` (optional): String to be used for replacement of copyright placeholders in the project - -##### resources (optional) -- `configuration` - - `paths`: Mapping between virtual and physical paths - + For type `application` there can be a setting for mapping the virtual path `webapp` to a physical path within the project - + For type `library` there can be a setting for mapping the virtual paths `src` and `test` to physical paths within the project - -##### builder (optional) -- `customTasks` (optional, list): In this block, you define additional custom build tasks, see [here](docs/BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: - - `name` (mandatory): The name of the custom task - - `afterTask` or `beforeTask` (only one, mandatory): The name of the build task after or before which your custom task will be executed. - - `configuration` (optional): Additional configuration that is passed to the custom build task - -##### server (optional) -- `settings` (not yet implemented) - - `port`: Project default server port; can be overwritten via CLI parameters - -### Extension Configuration -Typically located in a `ui5.yaml` file. Extensions can be defined in any projects `ui5.yaml`, *after* the project configuration (separated by `---`). In case you'd like to reuse an extension across multiple projects you can make it a module itself. - -Extensions can be identified by the `kind: extension` configuration. If no `kind` configuration is given, [`project`](#project-configuration) is assumed. - -#### Tasks -See [Build Extensibility](docs/BuildExtensibility.md). - -#### Project Shim -A project shim extension can be used to define or extend a project configuration of a module. The most popular use case is probably to add UI5 project configuration to a third party module that otherwise could not be used with the UI5 Tooling. - -Also see [RFC 0002 Project Shims](https://github.com/SAP/ui5-tooling/blob/master/rfcs/0002-project-shims.md). - -##### Structure -```yaml -specVersion: "0.1" -kind: extension -type: project-shim -metadata: - name: -shims: - configurations: - : - specVersion: "0.1", - type: - metadata: - name: - : - specVersion: "0.1", - type: - metadata: - name: - dependencies: - : - - - - - - - - ... - collections: - : - modules: - : - : - : -``` - -"module name" refers to the name of the module as identified by the used translator. E.g. when using the npm translator, name declared in the modules `package.json` is used here. In most cases, the module name also becomes a projects ID. - -###### configurations (optional) -Map of module names. The values represent the configuration that should be applied to the module. This configuration can be defined just like in any `ui5.yaml`. - -Configuration is applied to the module using [`Object.assign()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign). This means that existing configuration properties will be overwritten. - -###### dependencies (optional) -Map of module names. The value is an array of module names that this module depends on. The other modules need to be part of the dependency tree. - - - -###### collections (optional) - -##### Example A: -An application "my-application" defines an npm dependency to [lodash](https://lodash.com/) in its `package.json` and configures it by using a project-shim extension added to its `ui5.yaml`. - -```yaml -specVersion: "0.1" -type: application -metadata: - name: my.application ---- # Everything below this line could also be put into the ui5.yaml of a standalone extension module -specVersion: "0.1" -kind: extension -type: project-shim -metadata: - name: my.application.thirdparty -shims: - configurations: - lodash: # name as defined in package.json - specVersion: "0.1" - type: module # Use module type - metadata: - name: lodash - resources: - configuration: - paths: - /resources/my/application/thirdparty/: "" # map root directory of lodash module -``` - -##### Example B: -An application "application.a" depends on a library "legacy.library.a" which does not contain a `ui5.yaml` or `package.json` yet (nor do its dependencies). - -###### Structure of the legacy library directories (two repositories) -``` -legacy-libs/ - \_ src/ - \_ library.a/ - \_ src/ - \_ test/ - \_ library.b/ - \_ src/ - \_ test/ -legacy-library-x/ - \_ src/ - \_ test/ -``` - -###### Dependencies between the legacy libraries -``` -legacy.library.a depends on legacy.library.b -legacy.library.a depends on legacy.library.x - -legacy.library.b depends on legacy.library.x -``` - -###### application.a -**Directory structure** -``` -application-a/ - \_ node_modules/ - \_ legacy-libs/ - \_ legacy-library-x/ - \_ webapp/ - \_ ui5.yaml - \_ package.json -``` - -**package.json (extract)** -[napa](https://github.com/shama/napa) can install git repositories that are lacking a `package.json` with npm. Within `ui5-project`, the npm translator already detects dependencies defined in the `napa` section of a `package.json` and tries to resolve them. - -```json -{ - "scripts": { - "install": "napa" - }, - "napa": { - "legacy-libs": "", - "legacy-library-x": "" - } -} - -``` - -**ui5.yaml** -The shim defined in the application configures the legacy libraries and defines their dependencies. This shim might as well be a standalone module that is added to the applications dependencies. That would be the typical reuse scenario for shims. - -```yaml -specVersion: "0.1" -type: application -metadata: - name: application.a ----- -specVersion: "0.1" -kind: extension -type: project-shim -metadata: - name: legacy-lib-shims -shims: - configurations: - legacy-library-a: - specVersion: "0.1" - type: library - metadata: - name: legacy.library.a - legacy-library-b: - specVersion: "0.1" - type: library - metadata: - name: legacy.library.b - legacy-library-x: - specVersion: "0.1" - type: library - metadata: - name: legacy.library.x - dependencies: - legacy-library-a: - - legacy-library-b - - legacy-library-x - legacy-library-b: - - legacy-library-x - collections: - legacy-libs: - modules: - legacy-library-a: src/library.a - legacy-library-b: src/library.b -``` - - ## Contributing Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md). diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md new file mode 100644 index 00000000000..4091107e954 --- /dev/null +++ b/packages/project/docs/Configuration.md @@ -0,0 +1,288 @@ +# Configuration +This document describes the configuration of UI5 Build and Development Tooling based projects and extensions. + +The content represents the **[Specification Version](#specification-versions) `0.1`**. + +## Table of contents +- [Project Configuration](#project-configuration) +- [Extension Configuration](#extension-configuration) + + [Tasks](#tasks) + + [Project Shims](#project-shims) +- [Specification Versions](#specification-versions) + +## Project Configuration +Typically located in a `ui5.yaml` file per project. + +The preferred way of storing the configuration of a UI5 Build and Development Tooling based project is a [YAML](https://yaml.org/) file named `ui5.yaml` inside that project. + +**Example** +````yaml +--- +specVersion: "0.1" +type: application +metadata: + name: my-application +```` + +Configuration can also be supplied by other means. In cases where a JSON is used, you can still rely on the structure described below. + +### Structure + +````yaml +--- +specVersion: "0.1" +type: application|library|custom +metadata: + name: testsuite + copyright: |- + + * (c) Copyright 2009-${currentYear} +resources: + configuration: + paths: + "": "" + "": "" +builder: + customTasks: + - name: custom-task-name-1 + beforeTask: standard-task-name + configuration: + configuration-key: value + - name: custom-task-name-2 + afterTask: custom-task-name-1 + configuration: + color: blue +server: + settings: + port: 8099 +```` + +### Properties +#### \ +- `specVersion`: Version of the specification this configuration is based on. See [Specification Versions](#specification-versions). +- `type`: Either `application`, `library` or `custom` (custom not yet implemented); defines the default path mappings and build steps. Custom doesn't define any specific defaults. + +#### metadata +Some general information: +- `name`: Name of the application/library/resource +- `copyright` (optional): String to be used for replacement of copyright placeholders in the project + +#### resources (optional) +- `configuration` + - `paths`: Mapping between virtual and physical paths + + For type `application` there can be a setting for mapping the virtual path `webapp` to a physical path within the project + + For type `library` there can be a setting for mapping the virtual paths `src` and `test` to physical paths within the project + +#### builder (optional) +- `customTasks` (optional, list): In this block, you define additional custom build tasks, see [here](./BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: + - `name` (mandatory): The name of the custom task + - `afterTask` or `beforeTask` (only one, mandatory): The name of the build task after or before which your custom task will be executed. + - `configuration` (optional): Additional configuration that is passed to the custom build task + +#### server (optional) +- `settings` (not yet implemented) + - `port`: Project default server port; can be overwritten via CLI parameters + +## Extension Configuration +Extensions configuration can be added to any projects `ui5.yaml`. It should to be located *after* the projects configuration, separated by [three dashes](https://yaml.org/spec/1.2/spec.html#id2760395). + +In cases where an extension shall be reused across multiple projects you can make it a module itself and have its configuration in a standalone `ui5.yaml` located inside that module. + +Extensions can be identified by the `kind: extension` configuration. If no `kind` configuration is given, [`project`](#project-configuration) is assumed. + +### Tasks +See [Build Extensibility](./BuildExtensibility.md). + +### Project Shims +A project shim extension can be used to define or extend a project configuration of a module. The most popular use case is probably to add UI5 project configuration to a third party module that otherwise could not be used with the UI5 Tooling. + +Also see [RFC 0002 Project Shims](https://github.com/SAP/ui5-tooling/blob/master/rfcs/0002-project-shims.md). + +#### Structure +```yaml +specVersion: "0.1" +kind: extension +type: project-shim +metadata: + name: +shims: + configurations: + : + specVersion: "0.1", + type: + metadata: + name: + : + specVersion: "0.1", + type: + metadata: + name: + dependencies: + : + - + - + - + - ... + collections: + : + modules: + : + : + : +``` + +"module name" refers to the name of the module as identified by the used translator. E.g. when using the npm translator, the name declared in the modules `package.json` is used here. In most cases, the module name also becomes the internal ID of the project. + +#### Properties +##### configurations (optional) +Used to add configuration to any module. + +Map of module names. The values represent the configuration that should be applied to the module. + +**Note:** Configuration is applied to the module using [`Object.assign()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign). This means that existing configuration properties will be overwritten. + +##### dependencies (optional) +Used to add dependencies to any module. + +Map of module names. The value is an array of module names that this module depends on. Note that the other modules need to be part of the dependency tree of the root project (not as direct children, just somewhere). + +##### collections (optional) +Used when a dependency contains multiple modules. Also referred to as a [Monorepo](https://en.wikipedia.org/wiki/Monorepo). + +Map of module names. The values are objects with collection-specific configuration: +- `modules`: Map of project IDs and their relative file system paths inside the collection module. The project ID does not have to match the actual module name (as for instance defined in the modules `package.json`). UI5 Project will use it in place of a module name. + +#### Example A: +An application "my-application" defines a npm dependency to [lodash](https://lodash.com/) in its `package.json` and configures it by using a project-shim extension added to its `ui5.yaml`. + +**ui5.yaml** +```yaml +specVersion: "0.1" +type: application +metadata: + name: my.application +--- # Everything below this line could also be put into the ui5.yaml of a standalone extension module +specVersion: "0.1" +kind: extension +type: project-shim +metadata: + name: my.application.thirdparty +shims: + configurations: + lodash: # name as defined in package.json + specVersion: "0.1" + type: module # Use module type + metadata: + name: lodash + resources: + configuration: + paths: + /resources/my/application/thirdparty/: "" # map root directory of lodash module +``` + +#### Example B: +An application "application.a" depends on a library "legacy.library.a" which does not contain a `ui5.yaml` or `package.json` yet (nor do its dependencies). + +##### Structure of the legacy library directories (two repositories) +``` +legacy-libs/ + \_ src/ + \_ library.a/ + \_ src/ + \_ test/ + \_ library.b/ + \_ src/ + \_ test/ +legacy-library-x/ + \_ src/ + \_ test/ +``` + +##### Dependencies between the legacy libraries +``` +legacy.library.a depends on legacy.library.b +legacy.library.a depends on legacy.library.x + +legacy.library.b depends on legacy.library.x +``` + +##### application.a +**Directory structure** +``` +application-a/ + \_ node_modules/ + \_ legacy-libs/ + \_ legacy-library-x/ + \_ webapp/ + \_ ui5.yaml + \_ package.json +``` + +**package.json (extract)** +[napa](https://github.com/shama/napa) can install git repositories that are lacking a `package.json` with npm. Within `ui5-project`, the npm translator already detects dependencies defined in the `napa` section of a `package.json` and tries to resolve them. + +```json +{ + "scripts": { + "install": "napa" + }, + "napa": { + "legacy-libs": "", + "legacy-library-x": "" + } +} + +``` + +**ui5.yaml** +The shim defined in the application configures the legacy libraries and defines their dependencies. This shim might as well be a standalone module that is added to the applications dependencies. That would be the typical reuse scenario for shims. + +```yaml +specVersion: "0.1" +type: application +metadata: + name: application.a +---- +specVersion: "0.1" +kind: extension +type: project-shim +metadata: + name: legacy-lib-shims +shims: + configurations: + legacy-library-a: + specVersion: "0.1" + type: library + metadata: + name: legacy.library.a + legacy-library-b: + specVersion: "0.1" + type: library + metadata: + name: legacy.library.b + legacy-library-x: + specVersion: "0.1" + type: library + metadata: + name: legacy.library.x + dependencies: + legacy-library-a: + - legacy-library-b + - legacy-library-x + legacy-library-b: + - legacy-library-x + collections: + legacy-libs: + modules: + legacy-library-a: src/library.a + legacy-library-b: src/library.b +``` + +## Specification Versions +The specification version as configured in the `specVersion` property, defines the version a configuration is based on. + +**List of all available specification versions:** + +Version | Description +--- | --- +**0.1** | Initial version From 0b0bfc1fe42adc3ad92a88f1449920493079c14e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 3 Jan 2019 22:02:41 +0100 Subject: [PATCH 0105/1272] [ui5-project][INTERNAL] Docs: Clarify project configuration --- packages/project/docs/Configuration.md | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 4091107e954..360a1ed6c51 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -3,7 +3,7 @@ This document describes the configuration of UI5 Build and Development Tooling b The content represents the **[Specification Version](#specification-versions) `0.1`**. -## Table of contents +## Contents - [Project Configuration](#project-configuration) - [Extension Configuration](#extension-configuration) + [Tasks](#tasks) @@ -24,7 +24,7 @@ metadata: name: my-application ```` -Configuration can also be supplied by other means. In cases where a JSON is used, you can still rely on the structure described below. +Configuration can also be supplied by other means. In cases where JSON is used, you can still rely on the structure described below. ### Structure @@ -40,8 +40,8 @@ metadata: resources: configuration: paths: - "": "" - "": "" + "": "" + "": "" builder: customTasks: - name: custom-task-name-1 @@ -59,19 +59,20 @@ server: ### Properties #### \ -- `specVersion`: Version of the specification this configuration is based on. See [Specification Versions](#specification-versions). -- `type`: Either `application`, `library` or `custom` (custom not yet implemented); defines the default path mappings and build steps. Custom doesn't define any specific defaults. +- `specVersion`: Version of the specification this configuration is based on. See [Specification Versions](#specification-versions) +- `type`: Either `application`, `library` or `module`. Defines the default path mappings and build steps. See [UI5 Builder: Types](#types) for details #### metadata Some general information: -- `name`: Name of the application/library/resource +- `name`: Name of the project - `copyright` (optional): String to be used for replacement of copyright placeholders in the project #### resources (optional) - `configuration` - - `paths`: Mapping between virtual and physical paths - + For type `application` there can be a setting for mapping the virtual path `webapp` to a physical path within the project - + For type `library` there can be a setting for mapping the virtual paths `src` and `test` to physical paths within the project + - `paths`: Mapping between virtual paths and physical paths. Physical paths are always relative to the projects root directory + + For projects of type `application` a "webapp" path can be configured that will be mapped to the virtual path `/`. By default this is mapped to `webpp` + + For projects of type `library` a "src" as well as a "test" path can be configured. They will be mapped to the virtual paths `/resources` and `/test-resources` followed by the namespace of the library. By default these paths are mapped to `src` and `test` + + For type `module`, any kind (and number) of mappings can be configured freely. The key will be used as the virtual path. By default, the projects root directory is mapped to the virtual directory `/`. It is recommended that libraries include their namespace in the virtual path and use the `/resources` prefix. #### builder (optional) - `customTasks` (optional, list): In this block, you define additional custom build tasks, see [here](./BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: From 0a0569b9d80e336a2b6ca0d37456327ccd1f8d22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= Date: Fri, 4 Jan 2019 11:24:56 +0100 Subject: [PATCH 0106/1272] [ui5-project][INTERNAL] Docs: Replace custom with module Co-Authored-By: RandomByte --- packages/project/docs/Configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 360a1ed6c51..e9e4e183505 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -31,7 +31,7 @@ Configuration can also be supplied by other means. In cases where JSON is used, ````yaml --- specVersion: "0.1" -type: application|library|custom +type: application|library|module metadata: name: testsuite copyright: |- From 5f1965a613a857b6addd2ae0864062efae2766d6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 4 Jan 2019 13:22:43 +0100 Subject: [PATCH 0107/1272] [ui5-project][INTERNAL] Docs: Clarify virtual path namespaces Virtual paths of libraries do not automatically contain their namespace (yet). --- packages/project/docs/Configuration.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index e9e4e183505..4f2d85ccdf5 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -71,8 +71,8 @@ Some general information: - `configuration` - `paths`: Mapping between virtual paths and physical paths. Physical paths are always relative to the projects root directory + For projects of type `application` a "webapp" path can be configured that will be mapped to the virtual path `/`. By default this is mapped to `webpp` - + For projects of type `library` a "src" as well as a "test" path can be configured. They will be mapped to the virtual paths `/resources` and `/test-resources` followed by the namespace of the library. By default these paths are mapped to `src` and `test` - + For type `module`, any kind (and number) of mappings can be configured freely. The key will be used as the virtual path. By default, the projects root directory is mapped to the virtual directory `/`. It is recommended that libraries include their namespace in the virtual path and use the `/resources` prefix. + + For projects of type `library` a "src" as well as a "test" path can be configured. They will be mapped to the virtual paths `/resources` and `/test-resources`. By default these paths are mapped to `src` and `test` + + For type `module`, any kind (and number) of mappings can be configured freely. The key will be used as the virtual path. By default, the projects root directory is mapped to the virtual directory `/`. It is recommended that libraries include their namespace in the virtual path and use the `/resources` prefix (e.g. `/resources/my/first/library/module-xy`). #### builder (optional) - `customTasks` (optional, list): In this block, you define additional custom build tasks, see [here](./BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: From e5bbf535ee05b3671d5fc5d55fe85241782c391f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 16 Oct 2018 16:56:07 +0200 Subject: [PATCH 0108/1272] [ui5-project][INTERNAL] JSDoc: Make API private by default Also: - prevent use of unkown tags - add some docdash specific page options --- packages/project/jsdoc.json | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json index e08bf7aeab1..4763d04c97d 100644 --- a/packages/project/jsdoc.json +++ b/packages/project/jsdoc.json @@ -1,6 +1,6 @@ { "tags": { - "allowUnknownTags": true + "allowUnknownTags": false }, "source": { "include": ["README.md"], @@ -13,10 +13,37 @@ "encoding": "utf8", "destination": "jsdocs/", "recurse": true, - "verbose": true + "verbose": true, + "access": "public" }, "templates": { "cleverLinks": false, "monospaceLinks": false + }, + "docdash": { + "sectionOrder": [ + "Modules", + "Classes", + "Externals", + "Events", + "Namespaces", + "Mixins", + "Tutorials", + "Interfaces" + ], + "meta": { + "title": "UI5 Project JSDoc", + "description": "UI5 Build and Development Tooling - UI5 Project", + "keyword": "openui5 sapui5 ui5 build development tool" + }, + "search": true, + "menu": { + "GitHub": { + "href": "https://github.com/SAP/ui5-project", + "target": "_blank", + "class": "menu-item", + "id": "github_link" + } + } } } From c28b144210e343b1de2fdfb3315d78a95f492287 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 7 Jan 2019 14:49:29 +0100 Subject: [PATCH 0109/1272] [ui5-project][INTERNAL] JSDoc: Tag public APIs as @public and fix module names --- packages/project/lib/normalizer.js | 5 ++++- packages/project/lib/projectPreprocessor.js | 4 +++- packages/project/lib/translators/npm.js | 2 +- packages/project/lib/translators/static.js | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index a7cf286b42f..17cfa097196 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -5,12 +5,14 @@ const projectPreprocessor = require("./projectPreprocessor"); /** * Generate project and dependency trees via translators. Optionally configure all projects with the projectPreprocessor. * - * @module normalizer/normalizer + * @public + * @module @ui5/project/normalizer */ const Normalizer = { /** * Generates a project and dependency tree via translators and configures all projects via the projectPreprocessor * + * @public * @param {Object} [options] * @param {string} [options.cwd] Current working directory * @param {string} [options.configPath] Path to configuration file @@ -29,6 +31,7 @@ const Normalizer = { /** * Generates a project and dependency tree via translators * + * @public * @param {Object} [options] * @param {string} [options.cwd=.] Current working directory * @param {string} [options.translator=npm] Translator to use diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 49e6d3f4a9f..8901f0b1f3f 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -496,12 +496,14 @@ class ProjectPreprocessor { /** * The Project Preprocessor enriches the dependency information with project configuration * - * @module normalizer/translators/static + * @public + * @module @ui5/project/projectPreprocessor */ module.exports = { /** * Collects project information and its dependencies to enrich it with project configuration * + * @public * @param {Object} tree Dependency tree of the project * @returns {Promise} Promise resolving with the dependency tree and enriched project configuration */ diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 9ce588cba99..3806fcdc3c9 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -491,7 +491,7 @@ class NpmTranslator { /** * Translator for npm resources * - * @module normalizer/translators/npm + * @module @ui5/project/translators/npm */ module.exports = { /** diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index 25a9994ee06..990547df69d 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -5,7 +5,7 @@ const parseYaml = require("js-yaml").safeLoad; /** * Translator for static resources * - * @module normalizer/translators/static + * @module @ui5/project/translators/static */ /** From 6681049164e05d88d0798a1b06c18c7f735db4ae Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 7 Jan 2019 19:17:00 +0100 Subject: [PATCH 0110/1272] [ui5-project][INTERNAL] ESLint: Replace deprecated valid-jsdoc rule with eslint-plugin-jsdoc As suggested by ESLint: https://eslint.org/blog/2018/11/jsdoc-end-of-life#suggested-replacement --- packages/project/.eslintrc.js | 36 +++++-- packages/project/lib/normalizer.js | 2 +- packages/project/lib/translators/npm.js | 2 +- packages/project/lib/translators/static.js | 2 +- packages/project/package-lock.json | 105 +++++++++++---------- packages/project/package.json | 1 + 6 files changed, 88 insertions(+), 60 deletions(-) diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js index ae146528bbd..a710d04b51b 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.js @@ -7,6 +7,9 @@ module.exports = { "ecmaVersion": 8 }, "extends": ["eslint:recommended", "google"], + "plugins": [ + "jsdoc" + ], "rules": { "indent": [ "error", @@ -35,15 +38,32 @@ module.exports = { ], "comma-dangle": "off", "no-tabs": "off", - 'valid-jsdoc': [ - 2, - { - requireParamDescription: false, - requireReturnDescription: false, - requireReturn: false, - prefer: {return: 'returns'}, + "valid-jsdoc": 0, + "jsdoc/check-examples": 2, + "jsdoc/check-param-names": 2, + "jsdoc/check-tag-names": 2, + "jsdoc/check-types": 2, + "jsdoc/newline-after-description": 2, + "jsdoc/no-undefined-types": 0, + "jsdoc/require-description": 0, + "jsdoc/require-description-complete-sentence": 0, + "jsdoc/require-example": 0, + "jsdoc/require-hyphen-before-param-description": 0, + "jsdoc/require-param": 2, + "jsdoc/require-param-description": 0, + "jsdoc/require-param-name": 2, + "jsdoc/require-param-type": 2, + "jsdoc/require-returns": 0, + "jsdoc/require-returns-description": 0, + "jsdoc/require-returns-type": 2, + "jsdoc/valid-types": 2 + }, + "settings": { + "jsdoc": { + "tagNamePreference": { + "return": "returns" } - ], + } }, "root": true }; diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index 17cfa097196..7089fad3a82 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -35,7 +35,7 @@ const Normalizer = { * @param {Object} [options] * @param {string} [options.cwd=.] Current working directory * @param {string} [options.translator=npm] Translator to use - * @param {object} [options.translatorOptions] Options to pass to translator + * @param {Object} [options.translatorOptions] Options to pass to translator * @returns {Promise} Promise resolving to tree object */ generateDependencyTree: async function({cwd = ".", translator="npm", translatorOptions={}} = {}) { diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 3806fcdc3c9..2b219f68904 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -498,7 +498,7 @@ module.exports = { * Generates a dependency tree for npm projects * * @param {string} dirPath Project path - * @param {object} [options] + * @param {Object} [options] * @param {boolean} [options.includeDeduped=false] * @returns {Promise} Promise resolving with a dependency tree */ diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index 990547df69d..97835900401 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -14,7 +14,7 @@ const parseYaml = require("js-yaml").safeLoad; * This feature is EXPERIMENTAL and used for testing purposes only. * * @param {string} dirPath Project path - * @param {object} [options] + * @param {Object} [options] * @param {Array} [options.parameters] CLI configuration options * @returns {Promise} Promise resolving with a dependency tree */ diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0d67080587c..e950a89cfc6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1274,7 +1274,7 @@ "dependencies": { "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -1576,7 +1576,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -1894,6 +1894,12 @@ "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", "optional": true }, + "comment-parser": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.4.tgz", + "integrity": "sha512-0h7W6Y1Kb6zKQMJqdX41C5qf9ITCVIsD2qP2RaqDF3GFkXFrmuAuv5zUOuo19YzyC9scjBNpqzuaRQ2Sy5pxMQ==", + "dev": true + }, "common-path-prefix": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", @@ -2542,7 +2548,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -2578,6 +2584,25 @@ "integrity": "sha512-z541Fs5TFaY7/35v/z100InQ2f3V2J7e3u/0yKrnImgsHjh6JWgSRngfC/mZepn/+XN16jUydt64k//kxXc1fw==", "dev": true }, + "eslint-plugin-jsdoc": { + "version": "3.15.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-3.15.1.tgz", + "integrity": "sha512-xIQ+ajO6M6zsu5XEn5+1QyE1/P1w/l3yAXPCToZjRcrsKsg5yLTsYnrkdoJZJegE70dTZZwQ5bYPCjEbPey6cw==", + "dev": true, + "requires": { + "comment-parser": "^0.5.1", + "jsdoctypeparser": "^2.0.0-alpha-8", + "lodash": "^4.17.11" + }, + "dependencies": { + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + } + } + }, "eslint-scope": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz", @@ -3043,8 +3068,7 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", @@ -3065,14 +3089,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3087,20 +3109,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -3217,8 +3236,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -3230,7 +3248,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3245,7 +3262,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3253,14 +3269,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -3279,7 +3293,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -3360,8 +3373,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -3373,7 +3385,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -3459,8 +3470,7 @@ "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -3496,7 +3506,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3516,7 +3525,6 @@ "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3560,14 +3568,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true } } }, @@ -4393,7 +4399,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -4402,6 +4408,12 @@ } } }, + "jsdoctypeparser": { + "version": "2.0.0-alpha-8", + "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-2.0.0-alpha-8.tgz", + "integrity": "sha1-uvE3+44qVYgQrc8Z0tKi9oDpCl8=", + "dev": true + }, "jsesc": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", @@ -4938,7 +4950,7 @@ }, "mkdirp": { "version": "0.3.5", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", "optional": true }, @@ -5110,7 +5122,6 @@ "version": "0.1.4", "bundled": true, "dev": true, - "optional": true, "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -5435,8 +5446,7 @@ "is-buffer": { "version": "1.1.6", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "is-builtin-module": { "version": "1.0.0", @@ -5520,7 +5530,6 @@ "version": "3.2.2", "bundled": true, "dev": true, - "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -5567,8 +5576,7 @@ "longest": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "lru-cache": { "version": "4.1.3", @@ -5834,8 +5842,7 @@ "repeat-string": { "version": "1.6.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "require-directory": { "version": "2.1.1", @@ -6947,7 +6954,7 @@ }, "require-uncached": { "version": "1.0.3", - "resolved": "http://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", + "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", "dev": true, "requires": { @@ -7057,7 +7064,7 @@ }, "safe-regex": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "requires": { "ret": "~0.1.10" @@ -7729,7 +7736,7 @@ }, "through": { "version": "2.3.8", - "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", "dev": true }, @@ -7972,7 +7979,7 @@ "dependencies": { "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -8192,7 +8199,7 @@ "dependencies": { "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -8261,7 +8268,7 @@ }, "xmlbuilder": { "version": "9.0.7", - "resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" }, "xmlcreate": { diff --git a/packages/project/package.json b/packages/project/package.json index 23d6f4dac0f..64e50196fc4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -108,6 +108,7 @@ "docdash": "^1.0.2", "eslint": "^5.11.1", "eslint-config-google": "^0.11.0", + "eslint-plugin-jsdoc": "^3.15.1", "jsdoc": "^3.5.5", "nyc": "^13.1.0", "sinon": "^7.2.2", From 53e5b2437ccfbc007e9bf953a9e6da1ef176e37a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 7 Jan 2019 19:24:09 +0100 Subject: [PATCH 0111/1272] [ui5-project][INTERNAL] JSDoc: Set wrap option and add openGraph meta data Wrapping navigation names is necessary because our module names are very long. --- packages/project/jsdoc.json | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json index 4763d04c97d..6f74fcc7378 100644 --- a/packages/project/jsdoc.json +++ b/packages/project/jsdoc.json @@ -20,6 +20,13 @@ "cleverLinks": false, "monospaceLinks": false }, + "openGraph": { + "title": "UI5 Build and Development Tooling - API Reference", + "type": "website", + "image": "https://sap.github.io/ui5-tooling/docs/images/UI5_logo_wide.png", + "site_name": "UI5 Build and Development Tooling - API Reference", + "url": "https://sap.github.io/ui5-tooling/" + }, "docdash": { "sectionOrder": [ "Modules", @@ -32,11 +39,12 @@ "Interfaces" ], "meta": { - "title": "UI5 Project JSDoc", - "description": "UI5 Build and Development Tooling - UI5 Project", - "keyword": "openui5 sapui5 ui5 build development tool" + "title": "UI5 Build and Development Tooling - API Reference - UI5 Project", + "description": "UI5 Build and Development Tooling - API Reference - UI5 Project", + "keyword": "openui5 sapui5 ui5 build development tool api reference" }, "search": true, + "wrap": true, "menu": { "GitHub": { "href": "https://github.com/SAP/ui5-project", From 99ebbf87de12a61d75a21be6d8c3c00e01ec050d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 8 Jan 2019 18:54:55 +0100 Subject: [PATCH 0112/1272] [ui5-project][INTERNAL] package.json: Add missing opn-cli module Required for jsdoc script. All other UI5 Toolign modules already have it --- packages/project/package-lock.json | 177 +++++++++++++++++++++++++++++ packages/project/package.json | 1 + 2 files changed, 178 insertions(+) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e950a89cfc6..c7f4e958393 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2145,6 +2145,16 @@ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", "dev": true }, + "decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + } + }, "decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", @@ -2941,6 +2951,12 @@ "object-assign": "^4.0.1" } }, + "file-type": { + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.7.0.tgz", + "integrity": "sha512-AbaGtdWYYRaVrv2MwL/65myuRJ9j3e79e7etJ79US18QHuVlzJBcQHUH+HxDUoLtbyWRTUfLzLkGXX3pP9kfZg==", + "dev": true + }, "filename-regex": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", @@ -4286,6 +4302,12 @@ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", @@ -4929,6 +4951,16 @@ "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, + "minimist-options": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", + "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, "mixin-deep": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", @@ -6334,6 +6366,108 @@ "mimic-fn": "^1.0.0" } }, + "opn": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", + "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "opn-cli": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.0.0.tgz", + "integrity": "sha512-/NxjgPPxgYWAEznUwbvQd3H/vfMBRoIy8ZAvKNNgye2TbFE4pToVwmbi34Xo2rkmlfJIeWPa++zUSj4WBVGJxQ==", + "dev": true, + "requires": { + "file-type": "^10.4.0", + "get-stdin": "^6.0.0", + "meow": "^5.0.0", + "opn": "^5.4.0", + "temp-write": "^3.4.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", + "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0", + "yargs-parser": "^10.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + } + } + }, "option-chain": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", @@ -6644,6 +6778,12 @@ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" }, + "quick-lru": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", + "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "dev": true + }, "random-int": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", @@ -7713,6 +7853,26 @@ "readable-stream": "^2" } }, + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true + }, + "temp-write": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz", + "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "is-stream": "^1.1.0", + "make-dir": "^1.0.0", + "pify": "^3.0.0", + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + } + }, "term-size": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", @@ -8289,6 +8449,23 @@ "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", "dev": true }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + } + } + }, "yazl": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 64e50196fc4..c539388d7e6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -111,6 +111,7 @@ "eslint-plugin-jsdoc": "^3.15.1", "jsdoc": "^3.5.5", "nyc": "^13.1.0", + "opn-cli": "^4.0.0", "sinon": "^7.2.2", "tap-nyan": "^1.1.0" } From 29fc94236458de7e9c2bac01ea1caab8cca8a8db Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 8 Jan 2019 18:55:33 +0100 Subject: [PATCH 0113/1272] [ui5-project][INTERNAL] JSDoc: Restructure modules via namespaces --- packages/project/index.js | 16 +++++++++++++--- packages/project/jsdoc.json | 9 ++++++--- packages/project/lib/normalizer.js | 8 ++++---- packages/project/lib/projectPreprocessor.js | 3 ++- packages/project/lib/translators/npm.js | 2 +- packages/project/lib/translators/static.js | 2 +- 6 files changed, 27 insertions(+), 13 deletions(-) diff --git a/packages/project/index.js b/packages/project/index.js index 82986dfb7c8..0d6fd4b7b09 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -1,10 +1,20 @@ -const ui5Project = { +/** + * @module @ui5/project + * @public + */ +module.exports = { + /** + * @public + * @see @ui5/project.normalizer + */ normalizer: require("./lib/normalizer"), + /** + * @public + * @see @ui5/project.projectPreprocessor + */ projectPreprocessor: require("./lib/projectPreprocessor"), translators: { "npm": require("./lib/translators/npm"), "static": require("./lib/translators/static") } }; - -module.exports = ui5Project; diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json index 6f74fcc7378..0a9afb11b1a 100644 --- a/packages/project/jsdoc.json +++ b/packages/project/jsdoc.json @@ -3,7 +3,7 @@ "allowUnknownTags": false }, "source": { - "include": ["README.md"], + "include": ["README.md", "index.js"], "includePattern": ".+\\.js$", "excludePattern": "(node_modules(\\\\|/))" }, @@ -18,7 +18,10 @@ }, "templates": { "cleverLinks": false, - "monospaceLinks": false + "monospaceLinks": false, + "default": { + "useLongnameInNav": true + } }, "openGraph": { "title": "UI5 Build and Development Tooling - API Reference", @@ -30,10 +33,10 @@ "docdash": { "sectionOrder": [ "Modules", + "Namespaces", "Classes", "Externals", "Events", - "Namespaces", "Mixins", "Tutorials", "Interfaces" diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index 7089fad3a82..e8b394001e9 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -6,13 +6,14 @@ const projectPreprocessor = require("./projectPreprocessor"); * Generate project and dependency trees via translators. Optionally configure all projects with the projectPreprocessor. * * @public - * @module @ui5/project/normalizer + * @namespace @ui5/project.normalizer */ -const Normalizer = { +const Normalizer = module.exports = { /** * Generates a project and dependency tree via translators and configures all projects via the projectPreprocessor * * @public + * @memberof @ui5/project.normalizer * @param {Object} [options] * @param {string} [options.cwd] Current working directory * @param {string} [options.configPath] Path to configuration file @@ -32,6 +33,7 @@ const Normalizer = { * Generates a project and dependency tree via translators * * @public + * @memberof @ui5/project.normalizer * @param {Object} [options] * @param {string} [options.cwd=.] Current working directory * @param {string} [options.translator=npm] Translator to use @@ -66,5 +68,3 @@ const Normalizer = { return translatorModule.generateDependencyTree(cwd, translatorOptions); } }; - -module.exports = Normalizer; diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 8901f0b1f3f..4cd1ae4b940 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -497,13 +497,14 @@ class ProjectPreprocessor { * The Project Preprocessor enriches the dependency information with project configuration * * @public - * @module @ui5/project/projectPreprocessor + * @namespace @ui5/project.projectPreprocessor */ module.exports = { /** * Collects project information and its dependencies to enrich it with project configuration * * @public + * @memberof @ui5/project.projectPreprocessor * @param {Object} tree Dependency tree of the project * @returns {Promise} Promise resolving with the dependency tree and enriched project configuration */ diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 2b219f68904..fd1b4ee99ed 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -491,7 +491,7 @@ class NpmTranslator { /** * Translator for npm resources * - * @module @ui5/project/translators/npm + * @alias @ui5/project.translators/npm */ module.exports = { /** diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index 97835900401..a893f7e68f3 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -5,7 +5,7 @@ const parseYaml = require("js-yaml").safeLoad; /** * Translator for static resources * - * @module @ui5/project/translators/static + * @alias @ui5/project.translators/static */ /** From 4c8500fbeec9a573ef76023a943878b89529f153 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Jan 2019 15:44:31 +0100 Subject: [PATCH 0114/1272] [ui5-project][INTERNAL] JSDoc: Refactor to use module: syntax and fix various docs --- packages/project/.eslintrc.js | 2 +- packages/project/docs/BuildExtensibility.md | 78 ++++++++++----------- packages/project/index.js | 13 ++-- packages/project/lib/normalizer.js | 16 +++-- packages/project/lib/projectPreprocessor.js | 6 +- packages/project/lib/translators/npm.js | 7 +- packages/project/lib/translators/static.js | 62 ++++++++-------- 7 files changed, 94 insertions(+), 90 deletions(-) diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js index a710d04b51b..c456b2910bc 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.js @@ -56,7 +56,7 @@ module.exports = { "jsdoc/require-returns": 0, "jsdoc/require-returns-description": 0, "jsdoc/require-returns-type": 2, - "jsdoc/valid-types": 2 + "jsdoc/valid-types": 0 }, "settings": { "jsdoc": { diff --git a/packages/project/docs/BuildExtensibility.md b/packages/project/docs/BuildExtensibility.md index cf8b6edb82b..b4542495b4e 100644 --- a/packages/project/docs/BuildExtensibility.md +++ b/packages/project/docs/BuildExtensibility.md @@ -18,15 +18,15 @@ In the below example, when building the library `my.library` the `babel` task wi specVersion: "0.1" type: library metadata: - name: my.library + name: my.library builder: - customTasks: - - name: babel - beforeTask: generateComponentPreload - - name: generateMarkdownFiles - afterTask: uglify - configuration: - color: blue + customTasks: + - name: babel + beforeTask: generateComponentPreload + - name: generateMarkdownFiles + afterTask: uglify + configuration: + color: blue ```` ### Example: Connect multiple custom tasks @@ -39,13 +39,13 @@ You can also connect multiple custom task with each other. Please be aware that specVersion: "0.1" type: library metadata: - name: my.library + name: my.library builder: - customTasks: - - name: myCustomTask1 - beforeTask: generateComponentPreload - - name: myCustomTask2 - afterTask: myCustomTask1 + customTasks: + - name: myCustomTask1 + beforeTask: generateComponentPreload + - name: myCustomTask2 + afterTask: myCustomTask1 ```` ## Custom Task Extension @@ -60,9 +60,9 @@ specVersion: "0.1" kind: extension type: task metadata: - name: generateMarkdownFiles + name: generateMarkdownFiles task: - path: lib/tasks/generateMarkdownFiles.js + path: lib/tasks/generateMarkdownFiles.js ```` Task extensions can be **standalone modules** which are handled as dependencies. @@ -80,22 +80,22 @@ specVersion: "0.1" kind: project type: library metadata: - name: my.library + name: my.library builder: - customTasks: - - name: generateMarkdownFiles - afterTask: uglify - configuration: - color: blue + customTasks: + - name: generateMarkdownFiles + afterTask: uglify + configuration: + color: blue --- # Task extension as part of your project specVersion: "0.1" kind: extension type: task metadata: - name: generateMarkdownFiles + name: generateMarkdownFiles task: - path: lib/tasks/generateMarkdownFiles.js + path: lib/tasks/generateMarkdownFiles.js ```` ## Task Implementation @@ -107,15 +107,15 @@ A custom task implementation needs to return a function with the following signa * Custom task example * * @param {Object} parameters Parameters - * @param {DuplexCollection} parameters.workspace DuplexCollection to read and write files - * @param {AbstractReader} parameters.dependencies Reader or Collection to read dependency files + * @param {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files + * @param {module:@ui5/fs.AbstractReader} parameters.dependencies Reader or Collection to read dependency files * @param {Object} parameters.options Options * @param {string} parameters.options.projectName Project name * @param {string} [parameters.options.configuration] Task configuration if given in ui5.yaml * @returns {Promise} Promise resolving with undefined once data has been written */ module.exports = function({workspace, options}) { - // [...] + // [...] }; ```` @@ -128,16 +128,16 @@ The following code snippets shows an example how a task implementation could loo const markdownGenerator = require("./markdownGenerator"); module.exports = function({workspace, options}) { - return workspace.byGlob("**/*.txt") - .then((textResources) => { - return markdownGenerator({ - resources: textResources - }); - }) - .then((markdownResources) => { - return Promise.all(markdownResources.map((resource) => { - return workspace.write(resource); - })); - }); + return workspace.byGlob("**/*.txt") + .then((textResources) => { + return markdownGenerator({ + resources: textResources + }); + }) + .then((markdownResources) => { + return Promise.all(markdownResources.map((resource) => { + return workspace.write(resource); + })); + }); }; -```` \ No newline at end of file +```` diff --git a/packages/project/index.js b/packages/project/index.js index 0d6fd4b7b09..a80314ee513 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -1,18 +1,15 @@ /** - * @module @ui5/project + * @module module:@ui5/project * @public */ module.exports = { - /** - * @public - * @see @ui5/project.normalizer - */ normalizer: require("./lib/normalizer"), + projectPreprocessor: require("./lib/projectPreprocessor"), /** - * @public - * @see @ui5/project.projectPreprocessor + * @private + * @see module:@ui5/project.translators + * @namespace */ - projectPreprocessor: require("./lib/projectPreprocessor"), translators: { "npm": require("./lib/translators/npm"), "static": require("./lib/translators/static") diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index e8b394001e9..7adce26a925 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -3,22 +3,23 @@ const projectPreprocessor = require("./projectPreprocessor"); /** - * Generate project and dependency trees via translators. Optionally configure all projects with the projectPreprocessor. + * Generate project and dependency trees via translators. + * Optionally configure all projects with the projectPreprocessor. * * @public - * @namespace @ui5/project.normalizer + * @namespace + * @alias module:@ui5/project.normalizer */ -const Normalizer = module.exports = { +const Normalizer = { /** * Generates a project and dependency tree via translators and configures all projects via the projectPreprocessor * * @public - * @memberof @ui5/project.normalizer * @param {Object} [options] * @param {string} [options.cwd] Current working directory * @param {string} [options.configPath] Path to configuration file * @param {string} [options.translator] Translator to use - * @returns {Promise} Promise resolving to tree object + * @returns {Promise} Promise resolving to tree object */ generateProjectTree: async function(options = {}) { const tree = await Normalizer.generateDependencyTree(options); @@ -33,12 +34,11 @@ const Normalizer = module.exports = { * Generates a project and dependency tree via translators * * @public - * @memberof @ui5/project.normalizer * @param {Object} [options] * @param {string} [options.cwd=.] Current working directory * @param {string} [options.translator=npm] Translator to use * @param {Object} [options.translatorOptions] Options to pass to translator - * @returns {Promise} Promise resolving to tree object + * @returns {Promise} Promise resolving to tree object */ generateDependencyTree: async function({cwd = ".", translator="npm", translatorOptions={}} = {}) { // TODO NEXT MAJOR: Rename "translator" option to "translatorName" @@ -68,3 +68,5 @@ const Normalizer = module.exports = { return translatorModule.generateDependencyTree(cwd, translatorOptions); } }; + +module.exports = Normalizer; diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 4cd1ae4b940..7ceca20ece0 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -497,16 +497,16 @@ class ProjectPreprocessor { * The Project Preprocessor enriches the dependency information with project configuration * * @public - * @namespace @ui5/project.projectPreprocessor + * @namespace + * @alias module:@ui5/project.projectPreprocessor */ module.exports = { /** * Collects project information and its dependencies to enrich it with project configuration * * @public - * @memberof @ui5/project.projectPreprocessor * @param {Object} tree Dependency tree of the project - * @returns {Promise} Promise resolving with the dependency tree and enriched project configuration + * @returns {Promise} Promise resolving with the dependency tree and enriched project configuration */ processTree: function(tree) { return new ProjectPreprocessor().processTree(tree); diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index fd1b4ee99ed..d360bc87553 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -491,16 +491,19 @@ class NpmTranslator { /** * Translator for npm resources * - * @alias @ui5/project.translators/npm + * @private + * @namespace + * @alias module:@ui5/project.translators.npm */ module.exports = { /** * Generates a dependency tree for npm projects * + * @public * @param {string} dirPath Project path * @param {Object} [options] * @param {boolean} [options.includeDeduped=false] - * @returns {Promise} Promise resolving with a dependency tree + * @returns {Promise} Promise resolving with a dependency tree */ generateDependencyTree(dirPath, options = {includeDeduped: false}) { return new NpmTranslator(options).generateDependencyTree(dirPath); diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index a893f7e68f3..7f640cdca61 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -5,37 +5,39 @@ const parseYaml = require("js-yaml").safeLoad; /** * Translator for static resources * - * @alias @ui5/project.translators/static + * @private + * @namespace + * @alias module:@ui5/project.translators.static */ +module.exports = { + /** + * Generates a dependency tree from static resources + * + * This feature is EXPERIMENTAL and used for testing purposes only. + * + * @public + * @param {string} dirPath Project path + * @param {Object} [options] + * @param {Array} [options.parameters] CLI configuration options + * @returns {Promise} Promise resolving with a dependency tree + */ + generateDependencyTree(dirPath, options = {}) { + // TODO NEXT MAJOR: "options" used to be the the parameters array. We check for that here to stay compatible: + const parameters = Array.isArray(options) ? options : options.parameters; + const depFilePath = parameters && parameters[0] || path.join(dirPath, "projectDependencies.yaml"); -/** - * Generates a dependency tree from static resources - * - * This feature is EXPERIMENTAL and used for testing purposes only. - * - * @param {string} dirPath Project path - * @param {Object} [options] - * @param {Array} [options.parameters] CLI configuration options - * @returns {Promise} Promise resolving with a dependency tree - */ -function generateDependencyTree(dirPath, options = {}) { - // TODO NEXT MAJOR: "options" used to be the the parameters array. We check for that here to stay compatible: - const parameters = Array.isArray(options) ? options : options.parameters; - const depFilePath = parameters && parameters[0] || path.join(dirPath, "projectDependencies.yaml"); - - return new Promise(function(resolve, reject) { - fs.readFile(depFilePath, function(err, buffer) { - if (err) { - reject(new Error(`[static translator] Failed to locate projectDependencies.json at path: "${dirPath}" - Error: ${err.message}`)); - } else { - resolve(parseYaml(buffer.toString(), { - filename: depFilePath - })); - } + return new Promise(function(resolve, reject) { + fs.readFile(depFilePath, function(err, buffer) { + if (err) { + reject(new Error( + `[static translator] Failed to locate projectDependencies.json at path: "${dirPath}" `+ + `- Error: ${err.message}`)); + } else { + resolve(parseYaml(buffer.toString(), { + filename: depFilePath + })); + } + }); }); - }); -} - -module.exports = { - generateDependencyTree: generateDependencyTree + } }; From 400210aa2009dac39372ea800e1478c3cd26a42e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 9 Jan 2019 16:41:24 +0000 Subject: [PATCH 0115/1272] [ui5-project]Bump eslint from 5.11.1 to 5.12.0 Bumps [eslint](https://github.com/eslint/eslint) from 5.11.1 to 5.12.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.11.1...v5.12.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 156 ++++++++++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 99 insertions(+), 59 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c7f4e958393..372420c3586 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -365,9 +365,9 @@ } }, "acorn": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.4.tgz", - "integrity": "sha512-VY4i5EKSKkofY2I+6QLTbTTN/UvEQPCo6eiwzzSaSWfpaDhOmStMCMod6wmuPciNq+XS0faCglFu2lHZpdHUtg==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.5.tgz", + "integrity": "sha512-i33Zgp3XWtmZBMNvCr4azvOFeWVw1Rk6p3hfi3LUDvIFraOMywb1kAtrbi+med14m4Xfpqm3zRZMT+c0FNE7kg==", "dev": true }, "acorn-jsx": { @@ -1614,19 +1614,10 @@ "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", "dev": true }, - "caller-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", - "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", - "dev": true, - "requires": { - "callsites": "^0.2.0" - } - }, "callsites": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", - "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.0.0.tgz", + "integrity": "sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw==", "dev": true }, "camelcase": { @@ -2448,9 +2439,9 @@ } }, "eslint": { - "version": "5.11.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.11.1.tgz", - "integrity": "sha512-gOKhM8JwlFOc2acbOrkYR05NW8M6DCMSvfcJiBB5NDxRE1gv8kbvxKaC9u69e6ZGEMWXcswA/7eKR229cEIpvg==", + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.12.0.tgz", + "integrity": "sha512-LntwyPxtOHrsJdcSwyQKVtHofPHdv+4+mFwEe91r2V13vqpM8yLr7b1sW+Oo/yheOPkWYsYlYJCkzlFAt8KV7g==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2470,6 +2461,7 @@ "glob": "^7.1.2", "globals": "^11.7.0", "ignore": "^4.0.6", + "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "inquirer": "^6.1.0", "js-yaml": "^3.12.0", @@ -2484,7 +2476,6 @@ "pluralize": "^7.0.0", "progress": "^2.0.0", "regexpp": "^2.0.1", - "require-uncached": "^1.0.3", "semver": "^5.5.1", "strip-ansi": "^4.0.0", "strip-json-comments": "^2.0.1", @@ -2539,9 +2530,9 @@ "dev": true }, "globals": { - "version": "11.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.9.0.tgz", - "integrity": "sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==", + "version": "11.10.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.10.0.tgz", + "integrity": "sha512-0GZF1RiPKU97IHUO5TORo9w1PwrH/NBPl+fS7oMLdaTRiYmYbwK4NWoZWrAdd0/abG9R2BU+OiwyQpTpE6pdfQ==", "dev": true }, "ignore": { @@ -3084,7 +3075,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -3105,12 +3097,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3125,17 +3119,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3252,7 +3249,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3264,6 +3262,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3278,6 +3277,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3285,12 +3285,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -3309,6 +3311,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3389,7 +3392,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3401,6 +3405,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3486,7 +3491,8 @@ "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3522,6 +3528,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3541,6 +3548,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -3584,12 +3592,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -3883,6 +3893,24 @@ "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", "dev": true }, + "import-fresh": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", + "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + } + } + }, "import-lazy": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", @@ -5154,6 +5182,7 @@ "version": "0.1.4", "bundled": true, "dev": true, + "optional": true, "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -5478,7 +5507,8 @@ "is-buffer": { "version": "1.1.6", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "is-builtin-module": { "version": "1.0.0", @@ -5562,6 +5592,7 @@ "version": "3.2.2", "bundled": true, "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -5608,7 +5639,8 @@ "longest": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "lru-cache": { "version": "4.1.3", @@ -5874,7 +5906,8 @@ "repeat-string": { "version": "1.6.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "require-directory": { "version": "2.1.1", @@ -6553,6 +6586,15 @@ "semver": "^5.1.0" } }, + "parent-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.0.tgz", + "integrity": "sha512-8Mf5juOMmiE4FcmzYc4IaiS9L3+9paz2KOiXzkRviCP6aDmN49Hz6EMWz0lGNp9pX80GvvAuLADtyGfW/Em3TA==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, "parse-glob": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", @@ -7092,24 +7134,6 @@ "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", "dev": true }, - "require-uncached": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", - "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", - "dev": true, - "requires": { - "caller-path": "^0.1.0", - "resolve-from": "^1.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", - "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", - "dev": true - } - } - }, "requizzle": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", @@ -7171,12 +7195,28 @@ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" }, "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", "dev": true, "requires": { - "glob": "^7.0.5" + "glob": "^7.1.3" + }, + "dependencies": { + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + } } }, "run-async": { diff --git a/packages/project/package.json b/packages/project/package.json index c539388d7e6..e310159c12e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -106,7 +106,7 @@ "coveralls": "^3.0.1", "cross-env": "^5.2.0", "docdash": "^1.0.2", - "eslint": "^5.11.1", + "eslint": "^5.12.0", "eslint-config-google": "^0.11.0", "eslint-plugin-jsdoc": "^3.15.1", "jsdoc": "^3.5.5", From 3fff50f2e7e1067e767324e8786ddfe936e91abb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Jan 2019 19:41:13 +0100 Subject: [PATCH 0116/1272] [ui5-project][INTERNAL] package.json: Add missing rimraf devDep Required for test scripts. All other UI5 Tooling modules already have it --- packages/project/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/project/package.json b/packages/project/package.json index e310159c12e..557b99d57ae 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -112,6 +112,7 @@ "jsdoc": "^3.5.5", "nyc": "^13.1.0", "opn-cli": "^4.0.0", + "rimraf": "^2.6.3", "sinon": "^7.2.2", "tap-nyan": "^1.1.0" } From 1bebd7c41c5633dbf019efe8088368263443d77f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Jan 2019 19:50:08 +0100 Subject: [PATCH 0117/1272] [ui5-project][INTERNAL] Changelog: Remove internal changes + add dependency changes --- packages/project/.chglog/config.yml | 4 ++-- packages/project/.chglog/release-config.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/.chglog/config.yml b/packages/project/.chglog/config.yml index b25af0db74d..5487970ea26 100755 --- a/packages/project/.chglog/config.yml +++ b/packages/project/.chglog/config.yml @@ -10,13 +10,13 @@ options: - FEATURE - FIX - PERF - - INTERNAL + - DEPENDENCY commit_groups: title_maps: FEATURE: Features FIX: Bug Fixes PERF: Performance Improvements - INTERNAL: Internal Changes + DEPENDENCY: Dependency Updates header: pattern: "^\\[(\\w*)\\]\\s(?:([^\\:]*)\\:\\s)?(.*)$" pattern_maps: diff --git a/packages/project/.chglog/release-config.yml b/packages/project/.chglog/release-config.yml index 9575aa4d7dc..18b82993bf4 100755 --- a/packages/project/.chglog/release-config.yml +++ b/packages/project/.chglog/release-config.yml @@ -9,13 +9,13 @@ options: - FEATURE - FIX - PERF - - INTERNAL + - DEPENDENCY commit_groups: title_maps: FEATURE: Features FIX: Bug Fixes PERF: Performance Improvements - INTERNAL: Internal Changes + DEPENDENCY: Dependency Updates header: pattern: "^\\[(\\w*)\\]\\s(?:([^\\:]*)\\:\\s)?(.*)$" pattern_maps: From 51610b2c203f3e8f13f03d6640972286407239d5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Jan 2019 20:23:33 +0100 Subject: [PATCH 0118/1272] [ui5-project][INTERNAL] Changelog: Add BREAKING tag --- packages/project/.chglog/config.yml | 2 ++ packages/project/.chglog/release-config.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/packages/project/.chglog/config.yml b/packages/project/.chglog/config.yml index 5487970ea26..de0a569389b 100755 --- a/packages/project/.chglog/config.yml +++ b/packages/project/.chglog/config.yml @@ -11,12 +11,14 @@ options: - FIX - PERF - DEPENDENCY + - BREAKING commit_groups: title_maps: FEATURE: Features FIX: Bug Fixes PERF: Performance Improvements DEPENDENCY: Dependency Updates + BREAKING: Breaking Changes header: pattern: "^\\[(\\w*)\\]\\s(?:([^\\:]*)\\:\\s)?(.*)$" pattern_maps: diff --git a/packages/project/.chglog/release-config.yml b/packages/project/.chglog/release-config.yml index 18b82993bf4..e90faaaa1f3 100755 --- a/packages/project/.chglog/release-config.yml +++ b/packages/project/.chglog/release-config.yml @@ -10,12 +10,14 @@ options: - FIX - PERF - DEPENDENCY + - BREAKING commit_groups: title_maps: FEATURE: Features FIX: Bug Fixes PERF: Performance Improvements DEPENDENCY: Dependency Updates + BREAKING: Breaking Changes header: pattern: "^\\[(\\w*)\\]\\s(?:([^\\:]*)\\:\\s)?(.*)$" pattern_maps: From 3cbb4bb890993079b88b6e397a17cd7e47a30040 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Jan 2019 21:30:41 +0100 Subject: [PATCH 0119/1272] [ui5-project][FEATURE] Add specification version 1.0 --- packages/project/docs/Configuration.md | 19 +++- packages/project/lib/projectPreprocessor.js | 14 +-- .../test/fixtures/application.a/ui5.yaml | 2 +- packages/project/test/lib/extensions.js | 86 +++++++++++++++++++ .../project/test/lib/projectPreprocessor.js | 80 +++++++++++++++-- 5 files changed, 183 insertions(+), 18 deletions(-) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 4f2d85ccdf5..c7cc73eea36 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -1,7 +1,7 @@ # Configuration This document describes the configuration of UI5 Build and Development Tooling based projects and extensions. -The content represents the **[Specification Version](#specification-versions) `0.1`**. +The content represents the **[Specification Version](#specification-versions) `1.0`**. ## Contents - [Project Configuration](#project-configuration) @@ -282,8 +282,19 @@ shims: ## Specification Versions The specification version as configured in the `specVersion` property, defines the version a configuration is based on. -**List of all available specification versions:** +### Compatibility Matrix -Version | Description +Version | [UI5 CLI](https://github.com/SAP/ui5-cli) Release --- | --- -**0.1** | Initial version +**0.1** | v0.0.1+ +**1.0** | v1.0.0+ + +### Specification Version 0.1 +Initial version. + +Version 0.1 projects are compatible with [UI5 CLI](https://github.com/SAP/ui5-cli) v0.0.1 and above. + +### Specification Version 1.0 +First stable release. + +Version 1.0 projects are supported by [UI5 CLI](https://github.com/SAP/ui5-cli) v1.0.0 and above. diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 7ceca20ece0..bce6df69771 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -267,10 +267,10 @@ class ProjectPreprocessor { return false; // ignore this project } - if (project.specVersion !== "0.1") { + if (project.specVersion !== "0.1" && project.specVersion !== "1.0") { throw new Error( `Invalid specification version defined for project ${project.id}: ${project.specVersion}. ` + - "The currently only allowed version is \"0.1\""); + "See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions"); } if (!project.type) { @@ -324,10 +324,11 @@ class ProjectPreprocessor { if (!extension.specVersion) { throw new Error(`No specification version defined for extension ${extension.metadata.name}`); - } else if (extension.specVersion !== "0.1") { + } else if (extension.specVersion !== "0.1" && extension.specVersion !== "1.0") { throw new Error( - `Invalid specification version defined for extension ${extension.metadata.name}: ` + - `${extension.specVersion}. The currently only allowed version is "0.1"`); + `Invalid specification version defined for extension ` + + `${extension.metadata.name}: ${extension.specVersion}. ` + + `See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions`); } else if (this.appliedExtensions[extension.metadata.name]) { log.verbose(`Extension with the name ${extension.metadata.name} has already been applied. ` + "This might have been done during dependency lookahead."); @@ -510,5 +511,6 @@ module.exports = { */ processTree: function(tree) { return new ProjectPreprocessor().processTree(tree); - } + }, + ProjectPreprocessor }; diff --git a/packages/project/test/fixtures/application.a/ui5.yaml b/packages/project/test/fixtures/application.a/ui5.yaml index 7e28c5d7ce5..898f4e81609 100644 --- a/packages/project/test/fixtures/application.a/ui5.yaml +++ b/packages/project/test/fixtures/application.a/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "1.0" type: application metadata: name: application.a diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index c3226c352f4..cd2c4e91f81 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -1,6 +1,8 @@ const {test} = require("ava"); const path = require("path"); +const sinon = require("sinon"); const projectPreprocessor = require("../..").projectPreprocessor; +const Preprocessor = require("../..").projectPreprocessor.ProjectPreprocessor; const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); const legacyLibraryAPath = path.join(__dirname, "..", "fixtures", "legacy.library.a"); const legacyLibraryBPath = path.join(__dirname, "..", "fixtures", "legacy.library.b"); @@ -10,6 +12,10 @@ const legacyCollectionLibraryX = path.join(__dirname, "..", "fixtures", "legacy. const legacyCollectionLibraryY = path.join(__dirname, "..", "fixtures", "legacy.collection.a", "src", "legacy.library.y"); +test.afterEach.always((t) => { + sinon.restore(); +}); + test("Project with project-shim extension with dependency configuration", (t) => { const tree = { id: "application.a", @@ -570,3 +576,83 @@ test("Project with task extension dependency - task module not found", async (t) const error = await t.throws(projectPreprocessor.processTree(tree)); t.regex(error.message, /^Cannot find module.*/, "Rejected with error"); }); + +test("specVersion: Missing version", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor(); + await t.throws(preprocessor.applyExtension(extension), + "No specification version defined for extension shims.a", + "Rejected with error"); +}); + +test("specVersion: Extension with invalid version", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.9", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor(); + await t.throws(preprocessor.applyExtension(extension), + "Invalid specification version defined for extension shims.a: 0.9. " + + "See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions", + "Rejected with error"); +}); + +test("specVersion: Extension with valid version 0.1", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor(); + const handleShimStub = sinon.stub(preprocessor, "handleShim"); + await preprocessor.applyExtension(extension); + t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "0.1", "Correct spec version"); +}); + +test("specVersion: Extension with valid version 1.0", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "1.0", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor(); + const handleShimStub = sinon.stub(preprocessor, "handleShim"); + await preprocessor.applyExtension(extension); + t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "1.0", "Correct spec version"); +}); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 2c473cb6de1..91a3a764051 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -16,7 +16,7 @@ test("Project with inline configuration", (t) => { path: applicationAPath, dependencies: [], version: "1.0.0", - specVersion: "0.1", + specVersion: "1.0", type: "application", metadata: { name: "xy" @@ -43,7 +43,7 @@ test("Project with inline configuration", (t) => { id: "application.a", kind: "project", version: "1.0.0", - specVersion: "0.1", + specVersion: "1.0", path: applicationAPath }, "Parsed correctly"); }); @@ -113,7 +113,7 @@ test("Project with ui5.yaml at default location", (t) => { id: "application.a", kind: "project", version: "1.0.0", - specVersion: "0.1", + specVersion: "1.0", path: applicationAPath }, "Parsed correctly"); }); @@ -332,7 +332,7 @@ test("Ignores additional application-projects", (t) => { id: "application.a", kind: "project", version: "1.0.0", - specVersion: "0.1", + specVersion: "1.0", path: applicationAPath }, "Parsed correctly"); }); @@ -540,7 +540,7 @@ test("Project tree B with inline configs", (t) => { const treeAWithInlineConfigs = { id: "application.a", version: "1.0.0", - specVersion: "0.1", + specVersion: "1.0", path: applicationAPath, type: "application", metadata: { @@ -654,7 +654,7 @@ const expectedTreeAWithInlineConfigs = { "id": "application.a", "kind": "project", "version": "1.0.0", - "specVersion": "0.1", + "specVersion": "1.0", "path": applicationAPath, "_level": 0, "type": "application", @@ -760,7 +760,7 @@ const expectedTreeAWithConfigPaths = { "id": "application.a", "kind": "project", "version": "1.0.0", - "specVersion": "0.1", + "specVersion": "1.0", "path": applicationAPath, "configPath": path.join(applicationAPath, "ui5.yaml"), "_level": 0, @@ -1370,3 +1370,69 @@ test("Library version in package.json data is missing", (t) => { t.is(error.message, "\"version\" is missing for project " + tree.id); }); }); + +test("specVersion: Missing version", (t) => { + const tree = { + id: "application.a", + path: "non-existent", + dependencies: [], + version: "1.0.0", + type: "application", + metadata: { + name: "xy" + } + }; + return t.throws(projectPreprocessor.processTree(tree), + "No specification version defined for root project application.a", + "Rejected with error"); +}); + +test("specVersion: Project with invalid version", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.9", + type: "application", + metadata: { + name: "xy" + } + }; + await t.throws(projectPreprocessor.processTree(tree), + "Invalid specification version defined for project application.a: 0.9. " + + "See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions", + "Rejected with error"); +}); + +test("specVersion: Project with valid version 0.1", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + type: "application", + metadata: { + name: "xy" + } + }; + const res = await projectPreprocessor.processTree(tree); + t.deepEqual(res.specVersion, "0.1", "Correct spec version"); +}); + +test("specVersion: Project with valid version 1.0", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "1.0", + type: "application", + metadata: { + name: "xy" + } + }; + const res = await projectPreprocessor.processTree(tree); + t.deepEqual(res.specVersion, "1.0", "Correct spec version"); +}); From a37ef254825c65d1e4d5eeba182510e469fa6baf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 9 Jan 2019 18:58:19 +0000 Subject: [PATCH 0120/1272] [ui5-project]Bump js-yaml from 3.12.0 to 3.12.1 Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.12.0 to 3.12.1. - [Release notes](https://github.com/nodeca/js-yaml/releases) - [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md) - [Commits](https://github.com/nodeca/js-yaml/compare/3.12.0...3.12.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 372420c3586..69bd15b0ca3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -4391,18 +4391,18 @@ "dev": true }, "js-yaml": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", - "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.1.tgz", + "integrity": "sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA==", "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" }, "dependencies": { "esprima": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==" + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" } } }, diff --git a/packages/project/package.json b/packages/project/package.json index 557b99d57ae..8493eea15b1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -95,7 +95,7 @@ "@ui5/builder": "^0.2.9", "@ui5/logger": "^0.2.2", "graceful-fs": "^4.1.15", - "js-yaml": "^3.10.0", + "js-yaml": "^3.12.1", "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", From 294731408644c030f1a0d7ee241b423a77e881bd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Jan 2019 22:12:08 +0100 Subject: [PATCH 0121/1272] [ui5-project][INTERNAL] README: Fix JSDoc links --- packages/project/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/README.md b/packages/project/README.md index ac7b64ec374..061bb67bee9 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -17,11 +17,11 @@ See [Configuration](docs/Configuration.md). ## Normalizer -The purpose of the normalizer is to collect dependency information and to enrich it with project configuration (both done in [generateProjectTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateProjectTree)). +The purpose of the normalizer is to collect dependency information and to enrich it with project configuration (both done in [generateProjectTree](https://sap.github.io/ui5-tooling/module-@ui5_project.normalizer.html#.generateProjectTree)). [Translators](#translators) are used to collect dependency information. The [Project Preprocessor](#project-preprocessor) enriches this dependency information with project configuration, typically from a `ui5.yaml` file. A development server and build process can use this information to locate project and dependency resources. -If you want to retrieve the project dependency graph without any configuration, you may use use the [generateDependencyTree](https://github.com/pages/SAP/ui5-tooling/module-normalizer_normalizer.html#~generateDependencyTree) API. +If you want to retrieve the project dependency graph without any configuration, you may use use the [generateDependencyTree](https://sap.github.io/ui5-tooling/module-@ui5_project.normalizer.html#.generateDependencyTree) API. ## Translators Translators collect recursively all dependencies on a package manager specific layer and return information about them in a well-defined tree structure. From 9a3a3e506c147f6f9b2b39f1a543afc3ffec1913 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Jan 2019 22:12:45 +0100 Subject: [PATCH 0122/1272] [ui5-project][BREAKING] normalizer: Rename optional parameter "translator" This should future-proof the normalizer API to allow for eventually passing translator objects/instances instead of a simple string. BREAKING CHANGE: Renamed parameter "translator" of functions generateDependencyTree and generateProjectTree to "translatorName" --- packages/project/lib/normalizer.js | 19 +++++++++---------- packages/project/test/lib/normalizer.js | 8 ++++---- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index 7adce26a925..341f9907817 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -18,7 +18,7 @@ const Normalizer = { * @param {Object} [options] * @param {string} [options.cwd] Current working directory * @param {string} [options.configPath] Path to configuration file - * @param {string} [options.translator] Translator to use + * @param {string} [options.translatorName] Translator to use * @returns {Promise} Promise resolving to tree object */ generateProjectTree: async function(options = {}) { @@ -36,24 +36,23 @@ const Normalizer = { * @public * @param {Object} [options] * @param {string} [options.cwd=.] Current working directory - * @param {string} [options.translator=npm] Translator to use + * @param {string} [options.translatorName=npm] Translator to use * @param {Object} [options.translatorOptions] Options to pass to translator * @returns {Promise} Promise resolving to tree object */ - generateDependencyTree: async function({cwd = ".", translator="npm", translatorOptions={}} = {}) { - // TODO NEXT MAJOR: Rename "translator" option to "translatorName" + generateDependencyTree: async function({cwd = ".", translatorName="npm", translatorOptions={}} = {}) { log.verbose("Building dependency tree..."); let translatorParams = []; - let translatorName = translator; - if (translator.indexOf(":") !== -1) { - translatorParams = translator.split(":"); - translatorName = translatorParams[0]; + let translator = translatorName; + if (translatorName.indexOf(":") !== -1) { + translatorParams = translatorName.split(":"); + translator = translatorParams[0]; translatorParams = translatorParams.slice(1); } let translatorModule; - switch (translatorName) { + switch (translator) { case "static": translatorModule = require("./translators/static"); break; @@ -61,7 +60,7 @@ const Normalizer = { translatorModule = require("./translators/npm"); break; default: - return Promise.reject(new Error(`Unknown translator ${translatorName}`)); + return Promise.reject(new Error(`Unknown translator ${translator}`)); } translatorOptions.parameters = translatorParams; diff --git a/packages/project/test/lib/normalizer.js b/packages/project/test/lib/normalizer.js index 47e022dd1c4..f42a57f77b3 100644 --- a/packages/project/test/lib/normalizer.js +++ b/packages/project/test/lib/normalizer.js @@ -12,7 +12,7 @@ test.serial("Uses npm translator as default strategy", (t) => { test.serial("Uses static translator as strategy", (t) => { normalizer.generateDependencyTree({ - translator: "static" + translatorName: "static" }); t.truthy(staticTranslatorStub.generateDependencyTree.called); }); @@ -29,10 +29,10 @@ test.serial("Generate project tree using with overwritten config path", async (t }); test("Error: Throws if unknown translator should be used as strategy", async (t) => { - const translator = "notExistingTranslator"; + const translatorName = "notExistingTranslator"; return normalizer.generateDependencyTree({ - translator + translatorName }).catch((error) => { - t.is(error.message, `Unknown translator ${translator}`); + t.is(error.message, `Unknown translator ${translatorName}`); }); }); From c85a2716ef01c79460a8d5af990e1295ede11305 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Jan 2019 22:17:01 +0100 Subject: [PATCH 0123/1272] [ui5-project][INTERNAL] static t8r: Remove possibility to pass parameters as second argument Parameters now need to be passed in the options object. No breaking change as the static translator is private API. --- packages/project/lib/translators/static.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index 7f640cdca61..76d575ec9a1 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -22,9 +22,8 @@ module.exports = { * @returns {Promise} Promise resolving with a dependency tree */ generateDependencyTree(dirPath, options = {}) { - // TODO NEXT MAJOR: "options" used to be the the parameters array. We check for that here to stay compatible: - const parameters = Array.isArray(options) ? options : options.parameters; - const depFilePath = parameters && parameters[0] || path.join(dirPath, "projectDependencies.yaml"); + const depFilePath = options.parameters && options.parameters[0] || + path.join(dirPath, "projectDependencies.yaml"); return new Promise(function(resolve, reject) { fs.readFile(depFilePath, function(err, buffer) { From a328bceb241de7f3fe3309fc5effbd320f18b4cd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Jan 2019 23:01:00 +0100 Subject: [PATCH 0124/1272] [ui5-project][INTERNAL] README: Drop alpha release disclaimer --- packages/project/README.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/packages/project/README.md b/packages/project/README.md index 061bb67bee9..4ebc8ecb17b 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -10,9 +10,6 @@ [![Dependency Status](https://david-dm.org/SAP/ui5-project/master.svg)](https://david-dm.org/SAP/ui5-project/master) [![devDependency Status](https://david-dm.org/SAP/ui5-project/master/dev-status.svg)](https://david-dm.org/SAP/ui5-project/master#info=devDependencies) -**This is an alpha release!** -**The UI5 Build and Development Tooling described here is not intended for productive use yet. Breaking changes are to be expected.** - ## Configuration See [Configuration](docs/Configuration.md). From b860627f47a054f5f4af77ebd60a60e937f2a11d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Thu, 10 Jan 2019 08:04:57 +0100 Subject: [PATCH 0125/1272] [ui5-project][DEPENDENCY] Bump @ui5/logger from 0.2.2 to 1.0.0 (#98) Bumps [@ui5/logger](SAP/ui5-logger) from 0.2.2 to 1.0.0. - [Release notes](SAP/ui5-logger/releases) - [Changelog](SAP/ui5-logger:CHANGELOG.md@master) - [Commits](SAP/ui5-logger@v0.2.2...v1.0.0) --- packages/project/package-lock.json | 24 +++++++++++++++++++++--- packages/project/package.json | 2 +- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 69bd15b0ca3..a327c87b818 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -332,6 +332,14 @@ "yazl": "^2.5.1" }, "dependencies": { + "@ui5/logger": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.2.2.tgz", + "integrity": "sha512-sYEmsgBTNqvWLuBk+9hAqEXNlF1Q1uMxv56V6a6DiDK8gbpRqe+0jaKwKo5pr+FQLEagTX9vIOVw1u9dX+O4Qg==", + "requires": { + "npmlog": "^4.1.2" + } + }, "semver": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", @@ -354,12 +362,22 @@ "minimatch": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^1.0.0" + }, + "dependencies": { + "@ui5/logger": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.2.2.tgz", + "integrity": "sha512-sYEmsgBTNqvWLuBk+9hAqEXNlF1Q1uMxv56V6a6DiDK8gbpRqe+0jaKwKo5pr+FQLEagTX9vIOVw1u9dX+O4Qg==", + "requires": { + "npmlog": "^4.1.2" + } + } } }, "@ui5/logger": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.2.2.tgz", - "integrity": "sha512-sYEmsgBTNqvWLuBk+9hAqEXNlF1Q1uMxv56V6a6DiDK8gbpRqe+0jaKwKo5pr+FQLEagTX9vIOVw1u9dX+O4Qg==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.0.tgz", + "integrity": "sha512-bauL02Ut6NPRjJHkOK0POFtbxOzdneLzJA+ZftnZBzjnFZxBIQ+ptY14yqkFfRZbWFcFHojQseW7hV3k9wFtwA==", "requires": { "npmlog": "^4.1.2" } diff --git a/packages/project/package.json b/packages/project/package.json index 8493eea15b1..bb3a550acf0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ }, "dependencies": { "@ui5/builder": "^0.2.9", - "@ui5/logger": "^0.2.2", + "@ui5/logger": "^1.0.0", "graceful-fs": "^4.1.15", "js-yaml": "^3.12.1", "pretty-hrtime": "^1.0.3", From e55e1e6ac2ced9031f72ffe9b716bbc3bffc2c35 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Thu, 10 Jan 2019 08:21:13 +0100 Subject: [PATCH 0126/1272] [ui5-project][DEPENDENCY] Bump @ui5/builder from 0.2.9 to 1.0.0 (#99) Bumps [@ui5/builder](SAP/ui5-builder) from 0.2.9 to 1.0.0. - [Release notes](SAP/ui5-builder/releases) - [Changelog](SAP/ui5-builder:CHANGELOG.md@master) - [Commits](SAP/ui5-builder@v0.2.9...v1.0.0) --- packages/project/package-lock.json | 240 ++++++++++++++++++++++------- packages/project/package.json | 2 +- 2 files changed, 189 insertions(+), 53 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a327c87b818..1868a24e770 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -310,15 +310,16 @@ } }, "@ui5/builder": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-0.2.9.tgz", - "integrity": "sha512-kBCHnDU04HKfbfsoLFW+D0OJK372jHR8XFbrzfCvWyV8vCGPt7MJkJ8PZ5fpKGb3xXO/loZRBSgnrIhwfWk9gw==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.0.tgz", + "integrity": "sha512-bhOSjo4TtDhbppzXfl3XPOKrBFXT+aPxpeuGW7POZI8E4CHp9GDG8gz9fAxNP9TdN4kArPnHbBd3BGD02Y4nwQ==", "requires": { - "@ui5/fs": "^0.2.0", - "@ui5/logger": "^0.2.2", + "@ui5/fs": "^1.0.0", + "@ui5/logger": "^1.0.0", + "cheerio": "^0.22.0", "escodegen": "^1.11.0", "escope": "^3.6.0", - "esprima": "^2.7.2", + "esprima": "^4.0.1", "estraverse": "^4.2.0", "globby": "^7.1.1", "graceful-fs": "^4.1.15", @@ -332,14 +333,6 @@ "yazl": "^2.5.1" }, "dependencies": { - "@ui5/logger": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.2.2.tgz", - "integrity": "sha512-sYEmsgBTNqvWLuBk+9hAqEXNlF1Q1uMxv56V6a6DiDK8gbpRqe+0jaKwKo5pr+FQLEagTX9vIOVw1u9dX+O4Qg==", - "requires": { - "npmlog": "^4.1.2" - } - }, "semver": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", @@ -348,30 +341,20 @@ } }, "@ui5/fs": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-0.2.0.tgz", - "integrity": "sha512-2ZdvtSdTyPwZRDOgR5x8gWYTitZq7bYyGlIvJYzSdYCrSq21Q36S65DgW8lfwHxs0AXFXoZLRBWgDh3DRswlsA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.0.tgz", + "integrity": "sha512-Zn4/wcV9Jk8+GUJbWE1ML1j716geZBf0DM/yT4aGAkklDtmv7rJKglFuEOf6iDFGfMiJ+ja9kh/IhzdVhbEKUQ==", "requires": { - "@ui5/logger": "^0.2.0", + "@ui5/logger": "^1.0.0", "clone": "^2.1.0", - "defaults": "^1.0.3", + "dir-glob": "2.0.0", "globby": "^7.1.1", - "graceful-fs": "^4.1.11", + "graceful-fs": "^4.1.15", "make-dir": "^1.1.0", "micromatch": "^3.1.4", "minimatch": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^1.0.0" - }, - "dependencies": { - "@ui5/logger": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-0.2.2.tgz", - "integrity": "sha512-sYEmsgBTNqvWLuBk+9hAqEXNlF1Q1uMxv56V6a6DiDK8gbpRqe+0jaKwKo5pr+FQLEagTX9vIOVw1u9dX+O4Qg==", - "requires": { - "npmlog": "^4.1.2" - } - } } }, "@ui5/logger": { @@ -1444,6 +1427,11 @@ "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", "dev": true }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, "boxen": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", @@ -1691,6 +1679,29 @@ "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", "dev": true }, + "cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + } + }, "chokidar": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", @@ -2109,6 +2120,22 @@ } } }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.2.tgz", + "integrity": "sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ==" + }, "currently-unhandled": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", @@ -2186,21 +2213,6 @@ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", - "requires": { - "clone": "^1.0.2" - }, - "dependencies": { - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" - } - } - }, "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", @@ -2287,6 +2299,44 @@ "esutils": "^2.0.2" } }, + "dom-serializer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", + "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", + "requires": { + "domelementtype": "~1.1.1", + "entities": "~1.1.1" + }, + "dependencies": { + "domelementtype": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", + "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=" + } + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, "dot-prop": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", @@ -2330,6 +2380,11 @@ "core-js": "^2.0.0" } }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, "equal-length": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", @@ -2668,9 +2723,9 @@ } }, "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=" + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, "espurify": { "version": "1.8.0", @@ -3859,6 +3914,31 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz", "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==" }, + "htmlparser2": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.0.tgz", + "integrity": "sha512-J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ==", + "requires": { + "domelementtype": "^1.3.0", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.0.6" + }, + "dependencies": { + "readable-stream": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.1.1.tgz", + "integrity": "sha512-DkN66hPyqDhnIQ6Jcsvx9bFjhw214O4poMBcIMgPVpQvNy9a0e0Uhg5SqySyDKAmUlwt8LonTBz1ezOnM8pUdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", @@ -4645,6 +4725,16 @@ "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", "dev": true }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" + }, + "lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" + }, "lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", @@ -4663,17 +4753,26 @@ "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", "dev": true }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + }, "lodash.difference": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", "dev": true }, + "lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" + }, "lodash.flatten": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", - "dev": true + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" }, "lodash.flattendeep": { "version": "4.4.0", @@ -4681,6 +4780,11 @@ "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", "dev": true }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" + }, "lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", @@ -4693,11 +4797,35 @@ "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", "dev": true }, + "lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" + }, "lodash.merge": { "version": "4.6.1", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", - "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==", - "dev": true + "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==" + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" + }, + "lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" + }, + "lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=" + }, + "lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" }, "log-driver": { "version": "1.2.7", @@ -5158,6 +5286,14 @@ "set-blocking": "~2.0.0" } }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "requires": { + "boolbase": "~1.0.0" + } + }, "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index bb3a550acf0..ead53332121 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^0.2.9", + "@ui5/builder": "^1.0.0", "@ui5/logger": "^1.0.0", "graceful-fs": "^4.1.15", "js-yaml": "^3.12.1", From eec45a88923d773d6fdcc8795fc5d517008ec751 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 10 Jan 2019 07:24:06 +0000 Subject: [PATCH 0127/1272] [ui5-project]Release 1.0.0 --- packages/project/CHANGELOG.md | 80 ++++++++---------------------- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 22 insertions(+), 62 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 34e81113407..a9509018ed2 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,19 +2,31 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v0.2.5...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.0.0...HEAD). + + +## [v1.0.0] - 2019-01-10 +### Breaking Changes +- **normalizer:** Rename optional parameter "translator" [`92321e0`](https://github.com/SAP/ui5-project/commit/92321e08e43175611b8417047fc957792d539b10) + +### Dependency Updates +- Bump [@ui5](https://github.com/ui5)/builder from 0.2.9 to 1.0.0 ([#99](https://github.com/SAP/ui5-project/issues/99)) [`7dd5d5c`](https://github.com/SAP/ui5-project/commit/7dd5d5cda909e3a109821315cc5a5a80f05cd5d3) +- Bump [@ui5](https://github.com/ui5)/logger from 0.2.2 to 1.0.0 ([#98](https://github.com/SAP/ui5-project/issues/98)) [`8068a76`](https://github.com/SAP/ui5-project/commit/8068a76dc43701f5c8b0467933a83d777ccdee01) + +### Features +- Add specification version 1.0 [`b0c02f6`](https://github.com/SAP/ui5-project/commit/b0c02f67296f6251a7ef4fe5c61146bb169a6705) + +### BREAKING CHANGE + +Renamed parameter "translator" of functions generateDependencyTree and generateProjectTree to "translatorName" + -## [v0.2.5] - 2018-12-18 +## [v0.2.5] - 2018-12-19 ### Bug Fixes - **npm translator:** Deduplicate subtrees of pending dependencies [`7e55ae3`](https://github.com/SAP/ui5-project/commit/7e55ae3d88280746f5800bffc7bbd13e1495ba07) - **npm translator:** Fix handling of indirect dependency cycles [`c99d6d3`](https://github.com/SAP/ui5-project/commit/c99d6d3a19fbb6c197b449dfd6cb8acc48837dba) -### Internal Changes -- **npm translator:** Ignore packages that can't be read [`d8c2354`](https://github.com/SAP/ui5-project/commit/d8c23545fd8f1180f988417a9c8cee880b668415) -- **npm translator:** Add silly debug logging [`1ae0d5d`](https://github.com/SAP/ui5-project/commit/1ae0d5dbc9ec9630cd405e108529cab83bc87347) -- **npm translator:** Add addtl. test for cyclic dependencies [`299eb2a`](https://github.com/SAP/ui5-project/commit/299eb2af0472ecf9bf79b96895a2864667b535bf) - ## [v0.2.4] - 2018-12-17 @@ -22,22 +34,12 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - **npm t8r:** Add deduplication of npm dependencies [`2717088`](https://github.com/SAP/ui5-project/commit/2717088532d415b6922f290b58d9227b946a965f) - **projectPreprocessor:** Ignore deduped modules [`84f7b25`](https://github.com/SAP/ui5-project/commit/84f7b25a9e45df3bc55a7957e4f61db580e68509) -### Internal Changes -- Add tests for cyclic dependency handling [`0378b77`](https://github.com/SAP/ui5-project/commit/0378b77406107294acb3a0103eb6a3464d129be1) -- UA Review README.md [`dd64ff5`](https://github.com/SAP/ui5-project/commit/dd64ff58099d2d21d59a1fe0b05ae7a7e416a5df) -- **npm t8r:** Add includeDeduped option [`eaa2863`](https://github.com/SAP/ui5-project/commit/eaa2863c506f98e011bc0a78776d0f4d61c506d6) -- **static translator and normalizer:** Add tests [`595936d`](https://github.com/SAP/ui5-project/commit/595936d97379bd2ab92967dc7e7e1f568374e4db) - ## [v0.2.3] - 2018-11-20 ### Bug Fixes - **npm t8r:** Again, handle npm optionalDependencies correctly [`9fd78dc`](https://github.com/SAP/ui5-project/commit/9fd78dca4d836f9a37036fd151a78e9295b28aa1) -### Internal Changes -- **npm t8r:** Prevent re-throwing own errors [`63f15d3`](https://github.com/SAP/ui5-project/commit/63f15d320b67249c81394d4d4508e83d403e9230) -- **npm t8r:** Handle projects with explicitly zero UI5 dependencies [`7fe6269`](https://github.com/SAP/ui5-project/commit/7fe626943b8a6a4bb53b3e43c93aafbe2b92ef1b) - ## [v0.2.2] - 2018-11-17 @@ -48,17 +50,6 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - **projectPreprocessor:** Add handling for task extensions [`0722865`](https://github.com/SAP/ui5-project/commit/072286591ae3b20cca8e418030c3f2bc048352c5) - **projectPreprocessor:** Allow application project dependency on non-root level [`b8a59d5`](https://github.com/SAP/ui5-project/commit/b8a59d56c8b5cf4c330fe99cb2162c1701aa51ca) -### Internal Changes -- Fix eslint error [`d24eeb2`](https://github.com/SAP/ui5-project/commit/d24eeb2f1c3a6582ce8514e49e9c720a05f8a0f5) -- **ESLint:** prefer-const [`340151f`](https://github.com/SAP/ui5-project/commit/340151f4bd01ed8644d2c6b90bc695b30933cf80) -- **ESLint:** Allow strings to use backticks [`ec81373`](https://github.com/SAP/ui5-project/commit/ec813730b08ae173f5490629a5d074301ca88de3) -- **Git:** Apply lf line-ending to all files [`067b026`](https://github.com/SAP/ui5-project/commit/067b026d74a14d5e3807b7926a9292153ceac13e) -- **GitHub:** Add PULL_REQUEST_TEMPLATE [`7f2366f`](https://github.com/SAP/ui5-project/commit/7f2366f0f727d150b52e23151cd8ce8ecbdcabfd) -- **GitHub ISSUE_TEMPLATE:** Request UI5 module version info [`0936053`](https://github.com/SAP/ui5-project/commit/0936053d2c50837643495760b6b4e46eb36cb87d) -- **Travis:** Activate Windows and Mac builds [`fe46588`](https://github.com/SAP/ui5-project/commit/fe46588218e9c85892486dd9ce120a4828b64c55) -- **npm t8r:** Fix tests on Windows [`f304d7c`](https://github.com/SAP/ui5-project/commit/f304d7c26b14b40cd673bae7cafce8f695ea316e) -- **package.json scripts:** Update verbose logging params [`dd232a3`](https://github.com/SAP/ui5-project/commit/dd232a39bde7c787846b89a5207558f39f3074cb) - ## [v0.2.1] - 2018-10-29 @@ -66,22 +57,9 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - Add shim extension [`93c9b39`](https://github.com/SAP/ui5-project/commit/93c9b3960ca36f240c5f8453a89f72792a01fe92) - Add "extension" projects [`476b785`](https://github.com/SAP/ui5-project/commit/476b785810d6993d2a3e21707ffa67e568e67eac) -### Internal Changes -- Add addt'l project-shim extension tests [`e0ecb7f`](https://github.com/SAP/ui5-project/commit/e0ecb7f6a0da334f423a1267c310e687b9854724) -- Add missing cross-env dependency [`0f2bd76`](https://github.com/SAP/ui5-project/commit/0f2bd76fdc03103d4b88b4764d94ebb353340fd5) -- Apply extensions only once [`0488a59`](https://github.com/SAP/ui5-project/commit/0488a5959a0b2b87d1945866da07bc011103c1b2) -- Apply extensions found in root project [`5866cad`](https://github.com/SAP/ui5-project/commit/5866cadc04348c15c2ae7abefe70b934f6cf5b99) -- Add .npmrc to enforce public registry [`78dd5d7`](https://github.com/SAP/ui5-project/commit/78dd5d7fb72a9c51b56b47179dd823f016255cd3) -- **CHANGELOG:** Fix scope detection in commit messages [`955ab92`](https://github.com/SAP/ui5-project/commit/955ab9275b6ee6d0261f9033ed110ac8b684abcf) -- **Coveralls:** Use parallel setting to reduce number of PR comments [`cbcc8ea`](https://github.com/SAP/ui5-project/commit/cbcc8ea8f15d4f8c5ac0124024bf67f29ef14bd9) - ## [v0.2.0] - 2018-07-11 -### Internal Changes -- Update min Node.js version to >=8.5 [`fc96d87`](https://github.com/SAP/ui5-project/commit/fc96d874c08b54f887cf375eb5028b298c96067f) -- **package.json:** Define files to publish [`01d543c`](https://github.com/SAP/ui5-project/commit/01d543c682f4a0f6fbf15fab0a73b91a5424acee) - ## [v0.1.0] - 2018-06-26 @@ -89,32 +67,14 @@ A list of unreleased changes can be found [here](https://github.com/SAP/ui5-proj - Fix some typos in log messages ([#17](https://github.com/SAP/ui5-project/issues/17)) [`1f2f2fd`](https://github.com/SAP/ui5-project/commit/1f2f2fd164abaf449cc5e7d94ec792f469710207) - **npm translator:** Fix endless loop in case of dependency cycles ([#15](https://github.com/SAP/ui5-project/issues/15)) [`cf31112`](https://github.com/SAP/ui5-project/commit/cf3111288278e8dd36a09b549bd2b254e86af041) -### Internal Changes -- Update ui5-builder and ui5-logger dependency [`c4aaa81`](https://github.com/SAP/ui5-project/commit/c4aaa81ed813fb96a24a289ceb54bc2537bc70e7) -- Add coveralls and dm-badges [`0fb9132`](https://github.com/SAP/ui5-project/commit/0fb9132ca87e0dd959f1dea4dd3d584f0205baad) -- **CHANGELOG:** Fix GitHub release template [`2ca710b`](https://github.com/SAP/ui5-project/commit/2ca710b04d247e7799266644c1a3099c6621d345) -- **README:** Pre-Alpha -> Alpha [`a988310`](https://github.com/SAP/ui5-project/commit/a988310ae2b810dcff9e8253d32d6474c9ee1da9) - ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) -### Internal Changes -- Prepare npm release [`0467b6a`](https://github.com/SAP/ui5-project/commit/0467b6ac2e87dadd7319fe02901c3b24a3901663) -- Update .editorconfig [`1644a10`](https://github.com/SAP/ui5-project/commit/1644a105337ff83c1f800b99451881f4d8952b8f) -- Add chglog config + npm release scripts [`574f976`](https://github.com/SAP/ui5-project/commit/574f9761debb0cf527e4dfe9d09a73b7abfecc49) -- Update dependencies [`51ddbc8`](https://github.com/SAP/ui5-project/commit/51ddbc854e1e28c6455cbe98fdf517601e560f71) -- Add missing test module dependencies [`0d1d57a`](https://github.com/SAP/ui5-project/commit/0d1d57a0f4643ea171b134d1639404fc51fdb051) -- Add travis CI badge + package.json cleanup [`7769590`](https://github.com/SAP/ui5-project/commit/776959063ab673a92ebfd4cf4c7ba253aae158a8) -- Fix links to CONTRIBUTING.md file [`734a870`](https://github.com/SAP/ui5-project/commit/734a870d6a68f0370626d5a17906afabf1cd27d1) -- **ESLint:** Activate no-var rule [`6916828`](https://github.com/SAP/ui5-project/commit/6916828560c1765bdd64306c8b1c4950a36f0c8b) -- **ESLint:** Activate no-console [`df406da`](https://github.com/SAP/ui5-project/commit/df406dab0888b16b9c66f4fe5a2d7e026ad9f4f4) -- **Travis:** Add node.js 10 to test matrix [`5f26276`](https://github.com/SAP/ui5-project/commit/5f2627668b7faa554b8c3810899828d3be6fd63f) -- **npm t8r:** Improve handling of missing package.json [`4b32134`](https://github.com/SAP/ui5-project/commit/4b321345139058dc821fb08c4556aff88366ea86) - +[v1.0.0]: https://github.com/SAP/ui5-project/compare/v0.2.5...v1.0.0 [v0.2.5]: https://github.com/SAP/ui5-project/compare/v0.2.4...v0.2.5 [v0.2.4]: https://github.com/SAP/ui5-project/compare/v0.2.3...v0.2.4 [v0.2.3]: https://github.com/SAP/ui5-project/compare/v0.2.2...v0.2.3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1868a24e770..599d14f51bf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.5", + "version": "1.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index ead53332121..eeadc3405f7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "0.2.5", + "version": "1.0.0", "description": "UI5 Build and Development Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From fec822ad3fd3e5e7328583b4a628845a755fed14 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 11 Jan 2019 15:36:02 +0100 Subject: [PATCH 0128/1272] [ui5-project][INTERNAL] package.json: Increase coverage requirements and watermarks --- packages/project/package.json | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/project/package.json b/packages/project/package.json index eeadc3405f7..55c72896aec 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -62,24 +62,24 @@ "test/**" ], "check-coverage": true, - "lines": 70, - "statements": 70, - "functions": 60, - "branches": 50, + "statements": 85, + "branches": 75, + "functions": 85, + "lines": 85, "watermarks": { - "lines": [ + "statements": [ 70, 90 ], - "functions": [ - 60, + "branches": [ + 70, 90 ], - "branches": [ - 50, - 70 + "functions": [ + 70, + 90 ], - "statements": [ + "lines": [ 70, 90 ] From df6bb5a2cf6394c6e072047bfc4dfb2da7b454df Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 15 Jan 2019 09:05:13 +0100 Subject: [PATCH 0129/1272] [ui5-project][INTERNAL] Docs: Use specVersion 1.0 --- packages/project/docs/BuildExtensibility.md | 10 ++++---- packages/project/docs/Configuration.md | 26 ++++++++++----------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/packages/project/docs/BuildExtensibility.md b/packages/project/docs/BuildExtensibility.md index b4542495b4e..2133eaa731b 100644 --- a/packages/project/docs/BuildExtensibility.md +++ b/packages/project/docs/BuildExtensibility.md @@ -15,7 +15,7 @@ In the below example, when building the library `my.library` the `babel` task wi ````yaml --- # In this example configuration two custom tasks are defined: 'babel' and 'generateMarkdownFiles'. -specVersion: "0.1" +specVersion: "1.0" type: library metadata: name: my.library @@ -36,7 +36,7 @@ You can also connect multiple custom task with each other. Please be aware that ````yaml --- # In this example 'myCustomTask2' gets executed after 'myCustomTask1'. -specVersion: "0.1" +specVersion: "1.0" type: library metadata: name: my.library @@ -56,7 +56,7 @@ A custom task extension consists of a `ui5.yaml` and a [task implementation](#ta ````yaml --- -specVersion: "0.1" +specVersion: "1.0" kind: extension type: task metadata: @@ -76,7 +76,7 @@ The task extension will then be automatically collected and processed during the ````yaml # ui5.yaml configuration for the above example -specVersion: "0.1" +specVersion: "1.0" kind: project type: library metadata: @@ -89,7 +89,7 @@ builder: color: blue --- # Task extension as part of your project -specVersion: "0.1" +specVersion: "1.0" kind: extension type: task metadata: diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index c7cc73eea36..a08031a1d2a 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -18,7 +18,7 @@ The preferred way of storing the configuration of a UI5 Build and Development To **Example** ````yaml --- -specVersion: "0.1" +specVersion: "1.0" type: application metadata: name: my-application @@ -30,7 +30,7 @@ Configuration can also be supplied by other means. In cases where JSON is used, ````yaml --- -specVersion: "0.1" +specVersion: "1.0" type: application|library|module metadata: name: testsuite @@ -101,7 +101,7 @@ Also see [RFC 0002 Project Shims](https://github.com/SAP/ui5-tooling/blob/master #### Structure ```yaml -specVersion: "0.1" +specVersion: "1.0" kind: extension type: project-shim metadata: @@ -109,12 +109,12 @@ metadata: shims: configurations: : - specVersion: "0.1", + specVersion: "1.0", type: metadata: name: : - specVersion: "0.1", + specVersion: "1.0", type: metadata: name: @@ -158,12 +158,12 @@ An application "my-application" defines a npm dependency to [lodash](https://lod **ui5.yaml** ```yaml -specVersion: "0.1" +specVersion: "1.0" type: application metadata: name: my.application --- # Everything below this line could also be put into the ui5.yaml of a standalone extension module -specVersion: "0.1" +specVersion: "1.0" kind: extension type: project-shim metadata: @@ -171,7 +171,7 @@ metadata: shims: configurations: lodash: # name as defined in package.json - specVersion: "0.1" + specVersion: "1.0" type: module # Use module type metadata: name: lodash @@ -239,12 +239,12 @@ application-a/ The shim defined in the application configures the legacy libraries and defines their dependencies. This shim might as well be a standalone module that is added to the applications dependencies. That would be the typical reuse scenario for shims. ```yaml -specVersion: "0.1" +specVersion: "1.0" type: application metadata: name: application.a ---- -specVersion: "0.1" +specVersion: "1.0" kind: extension type: project-shim metadata: @@ -252,17 +252,17 @@ metadata: shims: configurations: legacy-library-a: - specVersion: "0.1" + specVersion: "1.0" type: library metadata: name: legacy.library.a legacy-library-b: - specVersion: "0.1" + specVersion: "1.0" type: library metadata: name: legacy.library.b legacy-library-x: - specVersion: "0.1" + specVersion: "1.0" type: library metadata: name: legacy.library.x From 8cdd46b8c3b21ab72aec8b4d1ecc2db0ec2e0404 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 15 Jan 2019 12:37:00 +0100 Subject: [PATCH 0130/1272] [ui5-project][INTERNAL] Docs: Fix BuildExtensibility white spaces and use async in sample impl --- packages/project/docs/BuildExtensibility.md | 72 ++++++++++----------- 1 file changed, 34 insertions(+), 38 deletions(-) diff --git a/packages/project/docs/BuildExtensibility.md b/packages/project/docs/BuildExtensibility.md index 2133eaa731b..f9f1f978916 100644 --- a/packages/project/docs/BuildExtensibility.md +++ b/packages/project/docs/BuildExtensibility.md @@ -18,15 +18,15 @@ In the below example, when building the library `my.library` the `babel` task wi specVersion: "1.0" type: library metadata: - name: my.library + name: my.library builder: - customTasks: - - name: babel - beforeTask: generateComponentPreload - - name: generateMarkdownFiles - afterTask: uglify - configuration: - color: blue + customTasks: + - name: babel + beforeTask: generateComponentPreload + - name: generateMarkdownFiles + afterTask: uglify + configuration: + color: blue ```` ### Example: Connect multiple custom tasks @@ -39,13 +39,13 @@ You can also connect multiple custom task with each other. Please be aware that specVersion: "1.0" type: library metadata: - name: my.library + name: my.library builder: - customTasks: - - name: myCustomTask1 - beforeTask: generateComponentPreload - - name: myCustomTask2 - afterTask: myCustomTask1 + customTasks: + - name: myCustomTask1 + beforeTask: generateComponentPreload + - name: myCustomTask2 + afterTask: myCustomTask1 ```` ## Custom Task Extension @@ -60,9 +60,9 @@ specVersion: "1.0" kind: extension type: task metadata: - name: generateMarkdownFiles + name: generateMarkdownFiles task: - path: lib/tasks/generateMarkdownFiles.js + path: lib/tasks/generateMarkdownFiles.js ```` Task extensions can be **standalone modules** which are handled as dependencies. @@ -80,22 +80,22 @@ specVersion: "1.0" kind: project type: library metadata: - name: my.library + name: my.library builder: - customTasks: - - name: generateMarkdownFiles - afterTask: uglify - configuration: - color: blue + customTasks: + - name: generateMarkdownFiles + afterTask: uglify + configuration: + color: blue --- # Task extension as part of your project specVersion: "1.0" kind: extension type: task metadata: - name: generateMarkdownFiles + name: generateMarkdownFiles task: - path: lib/tasks/generateMarkdownFiles.js + path: lib/tasks/generateMarkdownFiles.js ```` ## Task Implementation @@ -112,9 +112,9 @@ A custom task implementation needs to return a function with the following signa * @param {Object} parameters.options Options * @param {string} parameters.options.projectName Project name * @param {string} [parameters.options.configuration] Task configuration if given in ui5.yaml - * @returns {Promise} Promise resolving with undefined once data has been written + * @returns {Promise} Promise resolving with undefined once data has been written */ -module.exports = function({workspace, options}) { +module.exports = async function({workspace, dependencies, options}) { // [...] }; ```` @@ -127,17 +127,13 @@ The following code snippets shows an example how a task implementation could loo // Task implementation const markdownGenerator = require("./markdownGenerator"); -module.exports = function({workspace, options}) { - return workspace.byGlob("**/*.txt") - .then((textResources) => { - return markdownGenerator({ - resources: textResources - }); - }) - .then((markdownResources) => { - return Promise.all(markdownResources.map((resource) => { - return workspace.write(resource); - })); - }); +module.exports = async function({workspace, dependencies, options}) { + const textResources = await workspace.byGlob("**/*.txt"); + const markdownResources = await markdownGenerator({ + resources: textResources + }); + await Promise.all(markdownResources.map((resource) => { + return workspace.write(resource); + })); }; ```` From bb64b1426fda66c9c517b1a02dbfa48f26d0713f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 21 Jan 2019 06:23:06 +0000 Subject: [PATCH 0131/1272] [ui5-project]Bump eslint from 5.12.0 to 5.12.1 Bumps [eslint](https://github.com/eslint/eslint) from 5.12.0 to 5.12.1. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.12.0...v5.12.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 24 ++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 599d14f51bf..cb6186db6e8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2512,9 +2512,9 @@ } }, "eslint": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.12.0.tgz", - "integrity": "sha512-LntwyPxtOHrsJdcSwyQKVtHofPHdv+4+mFwEe91r2V13vqpM8yLr7b1sW+Oo/yheOPkWYsYlYJCkzlFAt8KV7g==", + "version": "5.12.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.12.1.tgz", + "integrity": "sha512-54NV+JkTpTu0d8+UYSA8mMKAG4XAsaOrozA9rCW7tgneg1mevcL7wIotPC+fZ0SkWwdhNqoXoxnQCTBp7UvTsg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2557,9 +2557,9 @@ }, "dependencies": { "ajv": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.2.tgz", - "integrity": "sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g==", + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.7.0.tgz", + "integrity": "sha512-RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -7889,9 +7889,9 @@ "dev": true }, "table": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/table/-/table-5.1.1.tgz", - "integrity": "sha512-NUjapYb/qd4PeFW03HnAuOJ7OMcBkJlqeClWxeNlQ0lXGSb52oZXGzkO0/I0ARegQ2eUT1g2VDJH0eUxDRcHmw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/table/-/table-5.2.1.tgz", + "integrity": "sha512-qmhNs2GEHNqY5fd2Mo+8N1r2sw/rvTAAvBZTaTx+Y7PHLypqyrxr1MdIu0pLw6Xvl/Gi4ONu/sdceP8vvUjkyA==", "dev": true, "requires": { "ajv": "^6.6.1", @@ -7901,9 +7901,9 @@ }, "dependencies": { "ajv": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.2.tgz", - "integrity": "sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g==", + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.7.0.tgz", + "integrity": "sha512-RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 55c72896aec..47078a6f5be 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -106,7 +106,7 @@ "coveralls": "^3.0.1", "cross-env": "^5.2.0", "docdash": "^1.0.2", - "eslint": "^5.12.0", + "eslint": "^5.12.1", "eslint-config-google": "^0.11.0", "eslint-plugin-jsdoc": "^3.15.1", "jsdoc": "^3.5.5", From 425775b9feeaf332b42f399951d6f708892864ae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 23 Jan 2019 09:33:59 +0000 Subject: [PATCH 0132/1272] [ui5-project]Bump eslint-plugin-jsdoc from 3.15.1 to 4.0.1 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 3.15.1 to 4.0.1. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v3.15.1...v4.0.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 17340 +++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 8671 insertions(+), 8671 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index cb6186db6e8..f790c753923 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,8672 +1,8672 @@ { - "name": "@ui5/project", - "version": "1.0.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@ava/babel-plugin-throws-helper": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-2.0.0.tgz", - "integrity": "sha1-L8H+PCEacQcaTsp7j3r1hCzRrnw=", - "dev": true - }, - "@ava/babel-preset-stage-4": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", - "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", - "dev": true, - "requires": { - "babel-plugin-check-es2015-constants": "^6.8.0", - "babel-plugin-syntax-trailing-function-commas": "^6.20.0", - "babel-plugin-transform-async-to-generator": "^6.16.0", - "babel-plugin-transform-es2015-destructuring": "^6.19.0", - "babel-plugin-transform-es2015-function-name": "^6.9.0", - "babel-plugin-transform-es2015-modules-commonjs": "^6.18.0", - "babel-plugin-transform-es2015-parameters": "^6.21.0", - "babel-plugin-transform-es2015-spread": "^6.8.0", - "babel-plugin-transform-es2015-sticky-regex": "^6.8.0", - "babel-plugin-transform-es2015-unicode-regex": "^6.11.0", - "babel-plugin-transform-exponentiation-operator": "^6.8.0", - "package-hash": "^1.2.0" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", - "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "package-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", - "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", - "dev": true, - "requires": { - "md5-hex": "^1.3.0" - } - } - } - }, - "@ava/babel-preset-transform-test-files": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-3.0.0.tgz", - "integrity": "sha1-ze0RlqjY2TgaUJJAq5LpGl7Aafc=", - "dev": true, - "requires": { - "@ava/babel-plugin-throws-helper": "^2.0.0", - "babel-plugin-espower": "^2.3.2" - } - }, - "@ava/write-file-atomic": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ava/write-file-atomic/-/write-file-atomic-2.2.0.tgz", - "integrity": "sha512-BTNB3nGbEfJT+69wuqXFr/bQH7Vr7ihx2xGOMNqPgDGhwspoZhiWumDDZNjBy7AScmqS5CELIOGtPVXESyrnDA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" - } - }, - "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", - "dev": true, - "requires": { - "@babel/highlight": "^7.0.0" - } - }, - "@babel/generator": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.1.5.tgz", - "integrity": "sha512-IO31r62xfMI+wBJVmgx0JR9ZOHty8HkoYpQAjRWUGG9vykBTlGHdArZ8zoFtpUu2gs17K7qTl/TtPpiSi6t+MA==", - "dev": true, - "requires": { - "@babel/types": "^7.1.5", - "jsesc": "^2.5.1", - "lodash": "^4.17.10", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - } - } - }, - "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", - "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", - "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - } - } - }, - "@babel/parser": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.5.tgz", - "integrity": "sha512-WXKf5K5HT6X0kKiCOezJZFljsfxKV1FpU8Tf1A7ZpGvyd/Q4hlrJm2EwoH2onaUq3O4tLDp+4gk0hHPsMyxmOg==", - "dev": true - }, - "@babel/template": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.1.2.tgz", - "integrity": "sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.1.2", - "@babel/types": "^7.1.2" - } - }, - "@babel/traverse": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.5.tgz", - "integrity": "sha512-eU6XokWypl0MVJo+MTSPUtlfPePkrqsF26O+l1qFGlCKWwmiYAYy2Sy44Qw8m2u/LbPCsxYt90rghmqhYMGpPA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.1.5", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/parser": "^7.1.5", - "@babel/types": "^7.1.5", - "debug": "^3.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.10" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.9.0.tgz", - "integrity": "sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==", - "dev": true - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.1.5.tgz", - "integrity": "sha512-sJeqa/d9eM/bax8Ivg+fXF7FpN3E/ZmTrWbkk6r+g7biVYfALMnLin4dKijsaqEhpd2xvOGfQTkQkD31YCVV4A==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.10", - "to-fast-properties": "^2.0.0" - }, - "dependencies": { - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - } - } - }, - "@concordance/react": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", - "integrity": "sha512-htrsRaQX8Iixlsek8zQU7tE8wcsTQJ5UhZkSPEA8slCDAisKpC/2VgU/ucPn32M5/LjGGXRaUEKvEw1Wiuu4zQ==", - "dev": true, - "requires": { - "arrify": "^1.0.1" - } - }, - "@ladjs/time-require": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@ladjs/time-require/-/time-require-0.1.4.tgz", - "integrity": "sha512-weIbJqTMfQ4r1YX85u54DKfjLZs2jwn1XZ6tIOP/pFgMwhIN5BAtaCp/1wn9DzyLsDR9tW0R2NIePcVJ45ivQQ==", - "dev": true, - "requires": { - "chalk": "^0.4.0", - "date-time": "^0.1.1", - "pretty-ms": "^0.2.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", - "dev": true - }, - "chalk": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", - "dev": true, - "requires": { - "ansi-styles": "~1.0.0", - "has-color": "~0.1.0", - "strip-ansi": "~0.1.0" - } - }, - "pretty-ms": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", - "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", - "dev": true, - "requires": { - "parse-ms": "^0.1.0" - } - }, - "strip-ansi": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", - "dev": true - } - } - }, - "@sinonjs/commons": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.3.0.tgz", - "integrity": "sha512-j4ZwhaHmwsCb4DlDOIWnI5YyKDNMoNThsmwEpfHx6a1EpsGZ9qYLxP++LMlmBRjtGptGHFsGItJ768snllFWpA==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/formatio": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.1.0.tgz", - "integrity": "sha512-ZAR2bPHOl4Xg6eklUGpsdiIJ4+J1SNag1DHHrG/73Uz/nVwXqjgUtRPLoS+aVyieN9cSbc0E4LsU984tWcDyNg==", - "dev": true, - "requires": { - "@sinonjs/samsam": "^2 || ^3" - } - }, - "@sinonjs/samsam": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.0.2.tgz", - "integrity": "sha512-m08g4CS3J6lwRQk1pj1EO+KEVWbrbXsmi9Pw0ySmrIbcVxVaedoFgLvFsV8wHLwh01EpROVz3KvVcD1Jmks9FQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.0.2", - "array-from": "^2.1.1", - "lodash.get": "^4.4.2" - } - }, - "@ui5/builder": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.0.tgz", - "integrity": "sha512-bhOSjo4TtDhbppzXfl3XPOKrBFXT+aPxpeuGW7POZI8E4CHp9GDG8gz9fAxNP9TdN4kArPnHbBd3BGD02Y4nwQ==", - "requires": { - "@ui5/fs": "^1.0.0", - "@ui5/logger": "^1.0.0", - "cheerio": "^0.22.0", - "escodegen": "^1.11.0", - "escope": "^3.6.0", - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "globby": "^7.1.1", - "graceful-fs": "^4.1.15", - "less-openui5": "^0.6.0", - "pretty-data": "^0.40.0", - "pretty-hrtime": "^1.0.3", - "replacestream": "^4.0.3", - "semver": "^5.6.0", - "uglify-es": "^3.2.2", - "xml2js": "^0.4.17", - "yazl": "^2.5.1" - }, - "dependencies": { - "semver": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", - "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" - } - } - }, - "@ui5/fs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.0.tgz", - "integrity": "sha512-Zn4/wcV9Jk8+GUJbWE1ML1j716geZBf0DM/yT4aGAkklDtmv7rJKglFuEOf6iDFGfMiJ+ja9kh/IhzdVhbEKUQ==", - "requires": { - "@ui5/logger": "^1.0.0", - "clone": "^2.1.0", - "dir-glob": "2.0.0", - "globby": "^7.1.1", - "graceful-fs": "^4.1.15", - "make-dir": "^1.1.0", - "micromatch": "^3.1.4", - "minimatch": "^3.0.3", - "pretty-hrtime": "^1.0.3", - "random-int": "^1.0.0" - } - }, - "@ui5/logger": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.0.tgz", - "integrity": "sha512-bauL02Ut6NPRjJHkOK0POFtbxOzdneLzJA+ZftnZBzjnFZxBIQ+ptY14yqkFfRZbWFcFHojQseW7hV3k9wFtwA==", - "requires": { - "npmlog": "^4.1.2" - } - }, - "acorn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.5.tgz", - "integrity": "sha512-i33Zgp3XWtmZBMNvCr4azvOFeWVw1Rk6p3hfi3LUDvIFraOMywb1kAtrbi+med14m4Xfpqm3zRZMT+c0FNE7kg==", - "dev": true - }, - "acorn-jsx": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", - "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", - "dev": true - }, - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "optional": true - }, - "ansi-align": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", - "dev": true, - "requires": { - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "ansi-escapes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", - "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", - "dev": true, - "requires": { - "micromatch": "^2.1.5", - "normalize-path": "^2.0.0" - }, - "dependencies": { - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "requires": { - "is-posix-bracket": "^0.1.0" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - } - } - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "arr-exclude": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", - "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" - }, - "array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" - }, - "asn1": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true - }, - "async-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" - }, - "auto-bind": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.2.0.tgz", - "integrity": "sha512-Zw7pZp7tztvKnWWtoII4AmqH5a2PV3ZN5F0BPRTGcc1kpRm4b6QXQnPU7Znbl6BfPfqOVOV29g4JeMqZQaqqOA==", - "dev": true - }, - "ava": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-0.25.0.tgz", - "integrity": "sha512-4lGNJCf6xL8SvsKVEKxEE46se7JAUIAZoKHw9itTQuwcsydhpAMkBs5gOOiWiwt0JKNIuXWc2/r4r8ZdcNrBEw==", - "dev": true, - "requires": { - "@ava/babel-preset-stage-4": "^1.1.0", - "@ava/babel-preset-transform-test-files": "^3.0.0", - "@ava/write-file-atomic": "^2.2.0", - "@concordance/react": "^1.0.0", - "@ladjs/time-require": "^0.1.4", - "ansi-escapes": "^3.0.0", - "ansi-styles": "^3.1.0", - "arr-flatten": "^1.0.1", - "array-union": "^1.0.1", - "array-uniq": "^1.0.2", - "arrify": "^1.0.0", - "auto-bind": "^1.1.0", - "ava-init": "^0.2.0", - "babel-core": "^6.17.0", - "babel-generator": "^6.26.0", - "babel-plugin-syntax-object-rest-spread": "^6.13.0", - "bluebird": "^3.0.0", - "caching-transform": "^1.0.0", - "chalk": "^2.0.1", - "chokidar": "^1.4.2", - "clean-stack": "^1.1.1", - "clean-yaml-object": "^0.1.0", - "cli-cursor": "^2.1.0", - "cli-spinners": "^1.0.0", - "cli-truncate": "^1.0.0", - "co-with-promise": "^4.6.0", - "code-excerpt": "^2.1.1", - "common-path-prefix": "^1.0.0", - "concordance": "^3.0.0", - "convert-source-map": "^1.5.1", - "core-assert": "^0.2.0", - "currently-unhandled": "^0.4.1", - "debug": "^3.0.1", - "dot-prop": "^4.1.0", - "empower-core": "^0.6.1", - "equal-length": "^1.0.0", - "figures": "^2.0.0", - "find-cache-dir": "^1.0.0", - "fn-name": "^2.0.0", - "get-port": "^3.0.0", - "globby": "^6.0.0", - "has-flag": "^2.0.0", - "hullabaloo-config-manager": "^1.1.0", - "ignore-by-default": "^1.0.0", - "import-local": "^0.1.1", - "indent-string": "^3.0.0", - "is-ci": "^1.0.7", - "is-generator-fn": "^1.0.0", - "is-obj": "^1.0.0", - "is-observable": "^1.0.0", - "is-promise": "^2.1.0", - "last-line-stream": "^1.0.0", - "lodash.clonedeepwith": "^4.5.0", - "lodash.debounce": "^4.0.3", - "lodash.difference": "^4.3.0", - "lodash.flatten": "^4.2.0", - "loud-rejection": "^1.2.0", - "make-dir": "^1.0.0", - "matcher": "^1.0.0", - "md5-hex": "^2.0.0", - "meow": "^3.7.0", - "ms": "^2.0.0", - "multimatch": "^2.1.0", - "observable-to-promise": "^0.5.0", - "option-chain": "^1.0.0", - "package-hash": "^2.0.0", - "pkg-conf": "^2.0.0", - "plur": "^2.0.0", - "pretty-ms": "^3.0.0", - "require-precompiled": "^0.1.0", - "resolve-cwd": "^2.0.0", - "safe-buffer": "^5.1.1", - "semver": "^5.4.1", - "slash": "^1.0.0", - "source-map-support": "^0.5.0", - "stack-utils": "^1.0.1", - "strip-ansi": "^4.0.0", - "strip-bom-buf": "^1.0.0", - "supertap": "^1.0.0", - "supports-color": "^5.0.0", - "trim-off-newlines": "^1.0.1", - "unique-temp-dir": "^1.0.0", - "update-notifier": "^2.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "ava-init": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", - "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", - "dev": true, - "requires": { - "arr-exclude": "^1.0.0", - "execa": "^0.7.0", - "has-yarn": "^1.0.0", - "read-pkg-up": "^2.0.0", - "write-pkg": "^3.1.0" - }, - "dependencies": { - "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "requires": { - "pify": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true, - "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - } - }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - } - } - } - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" - }, - "aws4": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", - "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==" - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "babel-core": { - "version": "6.26.3", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", - "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - } - }, - "babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", - "dev": true, - "requires": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true - } - } - }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true, - "requires": { - "babel-helper-explode-assignable-expression": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true, - "requires": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-espower": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.4.0.tgz", - "integrity": "sha512-/+SRpy7pKgTI28oEHfn1wkuM5QFAdRq8WNsOOih1dVrdV6A/WbNbRZyl0eX5eyDgtb0lOE27PeDFuCX2j8OxVg==", - "dev": true, - "requires": { - "babel-generator": "^6.1.0", - "babylon": "^6.1.0", - "call-matcher": "^1.0.0", - "core-js": "^2.0.0", - "espower-location-detector": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.1.1" - } - }, - "babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", - "dev": true - }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", - "dev": true - }, - "babel-plugin-syntax-object-rest-spread": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", - "dev": true - }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", - "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", - "dev": true - }, - "babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-functions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", - "dev": true, - "requires": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" - } - }, - "babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", - "dev": true, - "requires": { - "babel-helper-call-delegate": "^6.24.1", - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "regexpu-core": "^2.0.0" - } - }, - "babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", - "dev": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", - "babel-plugin-syntax-exponentiation-operator": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "^0.5.6" - } - } - } - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "bcrypt-pbkdf": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", - "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", - "optional": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "binary-extensions": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", - "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", - "dev": true - }, - "bluebird": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", - "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", - "dev": true - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" - }, - "boxen": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", - "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", - "dev": true, - "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "buf-compare": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", - "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", - "dev": true - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" - }, - "buffer-from": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", - "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "caching-transform": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", - "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", - "dev": true, - "requires": { - "md5-hex": "^1.2.0", - "mkdirp": "^0.5.1", - "write-file-atomic": "^1.1.4" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", - "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "write-file-atomic": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", - "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" - } - } - } - }, - "call-matcher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.0.1.tgz", - "integrity": "sha1-UTTQd5hPcSpU2tPL9i3ijc5BbKg=", - "dev": true, - "requires": { - "core-js": "^2.0.0", - "deep-equal": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.0.0" - } - }, - "call-signature": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", - "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", - "dev": true - }, - "callsites": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.0.0.tgz", - "integrity": "sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw==", - "dev": true - }, - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, - "capture-stack-trace": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", - "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "catharsis": { - "version": "0.8.9", - "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", - "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", - "dev": true, - "requires": { - "underscore-contrib": "~0.3.0" - } - }, - "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "cheerio": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", - "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", - "requires": { - "css-select": "~1.2.0", - "dom-serializer": "~0.1.0", - "entities": "~1.1.1", - "htmlparser2": "^3.9.1", - "lodash.assignin": "^4.0.9", - "lodash.bind": "^4.1.4", - "lodash.defaults": "^4.0.1", - "lodash.filter": "^4.4.0", - "lodash.flatten": "^4.2.0", - "lodash.foreach": "^4.3.0", - "lodash.map": "^4.4.0", - "lodash.merge": "^4.4.0", - "lodash.pick": "^4.2.1", - "lodash.reduce": "^4.4.0", - "lodash.reject": "^4.4.0", - "lodash.some": "^4.4.0" - } - }, - "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true, - "requires": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "fsevents": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0" - } - }, - "ci-info": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.3.tgz", - "integrity": "sha512-SK/846h/Rcy8q9Z9CAwGBLfCJ6EkjJWdpelWDufQpqVDYq2Wnnv8zlSO6AMQap02jvhVruKKpEtQOufo3pFhLg==", - "dev": true - }, - "circular-json": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", - "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "clean-css": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", - "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=", - "optional": true, - "requires": { - "commander": "2.0.x" - } - }, - "clean-stack": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", - "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", - "dev": true - }, - "clean-yaml-object": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", - "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", - "dev": true - }, - "cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", - "dev": true - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-spinners": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", - "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", - "dev": true - }, - "cli-truncate": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", - "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", - "dev": true, - "requires": { - "slice-ansi": "^1.0.0", - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" - }, - "co-with-promise": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", - "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", - "dev": true, - "requires": { - "pinkie-promise": "^1.0.0" - } - }, - "code-excerpt": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", - "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", - "dev": true, - "requires": { - "convert-to-spaces": "^1.0.1" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", - "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", - "dev": true, - "requires": { - "color-name": "^1.1.1" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", - "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", - "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", - "optional": true - }, - "comment-parser": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.4.tgz", - "integrity": "sha512-0h7W6Y1Kb6zKQMJqdX41C5qf9ITCVIsD2qP2RaqDF3GFkXFrmuAuv5zUOuo19YzyC9scjBNpqzuaRQ2Sy5pxMQ==", - "dev": true - }, - "common-path-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", - "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concordance": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", - "integrity": "sha512-CZBzJ3/l5QJjlZM20WY7+5GP5pMTw+1UEbThcpMw8/rojsi5sBCiD8ZbBLtD+jYpRGAkwuKuqk108c154V9eyQ==", - "dev": true, - "requires": { - "date-time": "^2.1.0", - "esutils": "^2.0.2", - "fast-diff": "^1.1.1", - "function-name-support": "^0.2.0", - "js-string-escape": "^1.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.flattendeep": "^4.4.0", - "lodash.merge": "^4.6.0", - "md5-hex": "^2.0.0", - "semver": "^5.3.0", - "well-known-symbols": "^1.0.0" - }, - "dependencies": { - "date-time": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", - "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", - "dev": true, - "requires": { - "time-zone": "^1.0.0" - } - } - } - }, - "configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "convert-source-map": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", - "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", - "dev": true - }, - "convert-to-spaces": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", - "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", - "dev": true - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" - }, - "core-assert": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", - "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", - "dev": true, - "requires": { - "buf-compare": "^1.0.0", - "is-error": "^2.2.0" - } - }, - "core-js": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", - "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "coveralls": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.2.tgz", - "integrity": "sha512-Tv0LKe/MkBOilH2v7WBiTBdudg2ChfGbdXafc/s330djpF3zKOmuehTeRwjXWc7pzfj9FrDUTA7tEx6Div8NFw==", - "dev": true, - "requires": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.85.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "create-error-class": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", - "dev": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, - "cross-env": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", - "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.5", - "is-windows": "^1.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - } - } - }, - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", - "dev": true - }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "css-what": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.2.tgz", - "integrity": "sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ==" - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", - "requires": { - "es5-ext": "^0.10.9" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "date-time": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", - "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", - "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - } - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" - }, - "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", - "requires": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - } - }, - "docdash": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.2.tgz", - "integrity": "sha512-IEM57bWPLtVXpUeCKbiGvHsHtW9O9ZiiBPfeQDAZ7JdQiAF3aNWQoJ3e/+uJ63lHO009yn0tbJjtKpXJ2AURCQ==", - "dev": true - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-serializer": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", - "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", - "requires": { - "domelementtype": "~1.1.1", - "entities": "~1.1.1" - }, - "dependencies": { - "domelementtype": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", - "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=" - } - } - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" - }, - "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "requires": { - "domelementtype": "1" - } - }, - "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", - "dev": true, - "requires": { - "is-obj": "^1.0.0" - } - }, - "duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - } - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", - "dev": true - }, - "ecc-jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", - "optional": true, - "requires": { - "jsbn": "~0.1.0" - } - }, - "empower-core": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", - "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", - "dev": true, - "requires": { - "call-signature": "0.0.2", - "core-js": "^2.0.0" - } - }, - "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" - }, - "equal-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", - "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", - "dev": true - }, - "error-ex": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", - "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es5-ext": { - "version": "0.10.46", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.46.tgz", - "integrity": "sha512-24XxRvJXNFwEMpJb3nOkiRJKRoupmjYmOPVlI65Qy2SrtxwOTB+g6ODjBKOtwEHbYrhWRty9xxOWLNdClT2djw==", - "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.1", - "next-tick": "1" - } - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "es6-weak-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", - "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", - "requires": { - "d": "1", - "es5-ext": "^0.10.14", - "es6-iterator": "^2.0.1", - "es6-symbol": "^3.1.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "escodegen": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz", - "integrity": "sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==", - "requires": { - "esprima": "^3.1.3", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "optional": true - } - } - }, - "escope": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", - "requires": { - "es6-map": "^0.1.3", - "es6-weak-map": "^2.0.1", - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint": { - "version": "5.12.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.12.1.tgz", - "integrity": "sha512-54NV+JkTpTu0d8+UYSA8mMKAG4XAsaOrozA9rCW7tgneg1mevcL7wIotPC+fZ0SkWwdhNqoXoxnQCTBp7UvTsg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.5.3", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^2.1.0", - "eslint-scope": "^4.0.0", - "eslint-utils": "^1.3.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^5.0.0", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^2.0.0", - "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.7.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^6.1.0", - "js-yaml": "^3.12.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.5", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", - "pluralize": "^7.0.0", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^5.5.1", - "strip-ansi": "^4.0.0", - "strip-json-comments": "^2.0.1", - "table": "^5.0.2", - "text-table": "^0.2.0" - }, - "dependencies": { - "ajv": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.7.0.tgz", - "integrity": "sha512-RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "globals": { - "version": "11.10.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.10.0.tgz", - "integrity": "sha512-0GZF1RiPKU97IHUO5TORo9w1PwrH/NBPl+fS7oMLdaTRiYmYbwK4NWoZWrAdd0/abG9R2BU+OiwyQpTpE6pdfQ==", - "dev": true - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "semver": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", - "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "eslint-config-google": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.11.0.tgz", - "integrity": "sha512-z541Fs5TFaY7/35v/z100InQ2f3V2J7e3u/0yKrnImgsHjh6JWgSRngfC/mZepn/+XN16jUydt64k//kxXc1fw==", - "dev": true - }, - "eslint-plugin-jsdoc": { - "version": "3.15.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-3.15.1.tgz", - "integrity": "sha512-xIQ+ajO6M6zsu5XEn5+1QyE1/P1w/l3yAXPCToZjRcrsKsg5yLTsYnrkdoJZJegE70dTZZwQ5bYPCjEbPey6cw==", - "dev": true, - "requires": { - "comment-parser": "^0.5.1", - "jsdoctypeparser": "^2.0.0-alpha-8", - "lodash": "^4.17.11" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } - } - }, - "eslint-scope": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz", - "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", - "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", - "dev": true - }, - "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", - "dev": true - }, - "espower-location-detector": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", - "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", - "dev": true, - "requires": { - "is-url": "^1.2.1", - "path-is-absolute": "^1.0.0", - "source-map": "^0.5.0", - "xtend": "^4.0.0" - } - }, - "espree": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.0.tgz", - "integrity": "sha512-1MpUfwsdS9MMoN7ZXqAr9e9UKdVHDcvrJpyx7mm1WuQlx/ygErEQBzgi5Nh5qBHIoYweprhtMkTCb9GhcAIcsA==", - "dev": true, - "requires": { - "acorn": "^6.0.2", - "acorn-jsx": "^5.0.0", - "eslint-visitor-keys": "^1.0.0" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "espurify": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.0.tgz", - "integrity": "sha512-jdkJG9jswjKCCDmEridNUuIQei9algr+o66ZZ19610ZoBsiWLRsQGNYS4HGez3Z/DsR0lhANGAqiwBUclPuNag==", - "dev": true, - "requires": { - "core-js": "^2.0.0" - } - }, - "esquery": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", - "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", - "dev": true, - "requires": { - "estraverse": "^4.0.0" - } - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "requires": { - "estraverse": "^4.1.0" - } - }, - "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" - }, - "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" - }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "events-to-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", - "dev": true - }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "dev": true, - "requires": { - "fill-range": "^2.1.0" - }, - "dependencies": { - "fill-range": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", - "dev": true, - "requires": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^3.0.0", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" - } - }, - "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "extend": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", - "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" - }, - "fast-diff": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.1.2.tgz", - "integrity": "sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", - "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", - "dev": true, - "requires": { - "flat-cache": "^1.2.1", - "object-assign": "^4.0.1" - } - }, - "file-type": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.7.0.tgz", - "integrity": "sha512-AbaGtdWYYRaVrv2MwL/65myuRJ9j3e79e7etJ79US18QHuVlzJBcQHUH+HxDUoLtbyWRTUfLzLkGXX3pP9kfZg==", - "dev": true - }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", - "dev": true - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-cache-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "flat-cache": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", - "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", - "dev": true, - "requires": { - "circular-json": "^0.3.1", - "graceful-fs": "^4.1.2", - "rimraf": "~2.6.2", - "write": "^0.2.1" - } - }, - "fn-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", - "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", - "dev": true - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" - }, - "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", - "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "1.0.6", - "mime-types": "^2.1.12" - } - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "requires": { - "map-cache": "^0.2.2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", - "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "2.6.9", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.21", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": "^2.1.0" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.2.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.1", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.2.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.10.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.0", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.1.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.1.10", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.5.1", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.0.5" - } - }, - "safe-buffer": { - "version": "5.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.5.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.0.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.2.4", - "minizlib": "^1.1.0", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.1", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "function-name-support": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", - "integrity": "sha1-VdO/qm6v1QWlD5vIH99XVkoLsHE=", - "dev": true - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-port": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - } - }, - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "^2.0.0" - } - }, - "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", - "dev": true, - "requires": { - "ini": "^1.3.4" - } - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "globby": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", - "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", - "requires": { - "array-union": "^1.0.1", - "dir-glob": "^2.0.0", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - } - }, - "got": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", - "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", - "dev": true, - "requires": { - "create-error-class": "^3.0.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" - }, - "har-validator": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", - "requires": { - "ajv": "^5.1.0", - "har-schema": "^2.0.0" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "dev": true - }, - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "has-yarn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", - "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", - "dev": true - }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz", - "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==" - }, - "htmlparser2": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.0.tgz", - "integrity": "sha512-J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ==", - "requires": { - "domelementtype": "^1.3.0", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.1.1.tgz", - "integrity": "sha512-DkN66hPyqDhnIQ6Jcsvx9bFjhw214O4poMBcIMgPVpQvNy9a0e0Uhg5SqySyDKAmUlwt8LonTBz1ezOnM8pUdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "hullabaloo-config-manager": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/hullabaloo-config-manager/-/hullabaloo-config-manager-1.1.1.tgz", - "integrity": "sha512-ztKnkZV0TmxnumCDHHgLGNiDnotu4EHCp9YMkznWuo4uTtCyJ+cu+RNcxUeXYKTllpvLFWnbfWry09yzszgg+A==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "es6-error": "^4.0.2", - "graceful-fs": "^4.1.11", - "indent-string": "^3.1.0", - "json5": "^0.5.1", - "lodash.clonedeep": "^4.5.0", - "lodash.clonedeepwith": "^4.5.0", - "lodash.isequal": "^4.5.0", - "lodash.merge": "^4.6.0", - "md5-hex": "^2.0.0", - "package-hash": "^2.0.0", - "pkg-dir": "^2.0.0", - "resolve-from": "^3.0.0", - "safe-buffer": "^5.0.1" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" - }, - "ignore-by-default": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", - "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", - "dev": true - }, - "import-fresh": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", - "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } - } - }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", - "dev": true - }, - "import-local": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", - "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", - "dev": true, - "requires": { - "pkg-dir": "^2.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true - }, - "inquirer": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.1.tgz", - "integrity": "sha512-088kl3DRT2dLU5riVMKKr1DlImd6X7smDhpXUCkJDCKvTEJeRiXh0G132HG9u5a+6Ylw9plFRY7RuTnwohYSpg==", - "dev": true, - "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.0", - "figures": "^2.0.0", - "lodash": "^4.17.10", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.1.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "strip-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.0.0.tgz", - "integrity": "sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==", - "dev": true, - "requires": { - "ansi-regex": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.0.0.tgz", - "integrity": "sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==", - "dev": true - } - } - } - } - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "irregular-plurals": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz", - "integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "is-builtin-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "requires": { - "builtin-modules": "^1.0.0" - } - }, - "is-ci": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz", - "integrity": "sha512-c7TnwxLePuqIlxHgr7xtxzycJPegNHFuIrBkwbf8hc58//+Op1CqFkyS+xnIMkwn9UsJIwc174BIjkyBmSpjKg==", - "dev": true, - "requires": { - "ci-info": "^1.0.0" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" - } - } - }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", - "dev": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "dev": true, - "requires": { - "is-primitive": "^2.0.0" - } - }, - "is-error": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.1.tgz", - "integrity": "sha1-aEqW2EB2V3yY9M20DG0mpRI78Zw=", - "dev": true - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-generator-fn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", - "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "is-installed-globally": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", - "dev": true, - "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" - } - }, - "is-npm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "is-observable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", - "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", - "dev": true, - "requires": { - "symbol-observable": "^1.1.0" - } - }, - "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "requires": { - "isobject": "^3.0.1" - } - }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", - "dev": true - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", - "dev": true - }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, - "is-redirect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "dev": true - }, - "is-retry-allowed": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "is-url": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", - "dev": true - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "istanbul-lib-coverage": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", - "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.0.0.tgz", - "integrity": "sha512-eQY9vN9elYjdgN9Iv6NS/00bptm02EBBk70lRMaVjeA6QYocQgenVrSgC28TJurdnZa80AGO3ASdFN+w/njGiQ==", - "dev": true, - "requires": { - "@babel/generator": "^7.0.0", - "@babel/parser": "^7.0.0", - "@babel/template": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "istanbul-lib-coverage": "^2.0.1", - "semver": "^5.5.0" - } - }, - "js-string-escape": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", - "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.12.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.1.tgz", - "integrity": "sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - } - } - }, - "js2xmlparser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", - "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", - "dev": true, - "requires": { - "xmlcreate": "^1.0.1" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "optional": true - }, - "jsdoc": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", - "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", - "dev": true, - "requires": { - "babylon": "7.0.0-beta.19", - "bluebird": "~3.5.0", - "catharsis": "~0.8.9", - "escape-string-regexp": "~1.0.5", - "js2xmlparser": "~3.0.0", - "klaw": "~2.0.0", - "marked": "~0.3.6", - "mkdirp": "~0.5.1", - "requizzle": "~0.2.1", - "strip-json-comments": "~2.0.1", - "taffydb": "2.6.2", - "underscore": "~1.8.3" - }, - "dependencies": { - "babylon": { - "version": "7.0.0-beta.19", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", - "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==", - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - } - } - }, - "jsdoctypeparser": { - "version": "2.0.0-alpha-8", - "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-2.0.0-alpha-8.tgz", - "integrity": "sha1-uvE3+44qVYgQrc8Z0tKi9oDpCl8=", - "dev": true - }, - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "just-extend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", - "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" - }, - "klaw": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", - "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.9" - } - }, - "last-line-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", - "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", - "dev": true, - "requires": { - "through2": "^2.0.0" - } - }, - "latest-version": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", - "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", - "dev": true, - "requires": { - "package-json": "^4.0.0" - } - }, - "lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", - "dev": true - }, - "less": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", - "integrity": "sha1-cc6J7DC3dLNWfyVMZ5WPLywZO94=", - "requires": { - "clean-css": "2.0.x", - "mime": "1.2.x", - "mkdirp": "~0.3.5", - "request": ">=2.12.0", - "source-map": "0.1.x" - }, - "dependencies": { - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "optional": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "less-openui5": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", - "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", - "requires": { - "clone": "^2.1.0", - "css": "^2.2.1", - "less": "1.6.3", - "object-assign": "^4.0.1" - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.10", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", - "dev": true - }, - "lodash.assignin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" - }, - "lodash.bind": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", - "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "lodash.clonedeepwith": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", - "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true - }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" - }, - "lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", - "dev": true - }, - "lodash.filter": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", - "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" - }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" - }, - "lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", - "dev": true - }, - "lodash.foreach": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", - "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" - }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", - "dev": true - }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", - "dev": true - }, - "lodash.map": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", - "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" - }, - "lodash.merge": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", - "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==" - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" - }, - "lodash.reduce": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", - "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" - }, - "lodash.reject": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", - "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=" - }, - "lodash.some": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", - "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" - }, - "log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", - "dev": true - }, - "lolex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-3.0.0.tgz", - "integrity": "sha512-hcnW80h3j2lbUfFdMArd5UPA/vxZJ+G8vobd+wg3nVEQA0EigStbYcrG030FJxL6xiDDPEkoMatV9xIh5OecQQ==", - "dev": true - }, - "loose-envify": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", - "dev": true, - "requires": { - "js-tokens": "^3.0.0" - } - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, - "lru-cache": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", - "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "requires": { - "pify": "^3.0.0" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "requires": { - "object-visit": "^1.0.0" - } - }, - "marked": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==", - "dev": true - }, - "matcher": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", - "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.4" - } - }, - "math-random": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", - "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", - "dev": true - }, - "md5-hex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", - "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "md5-o-matic": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", - "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", - "dev": true - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "mime": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", - "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=", - "optional": true - }, - "mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" - }, - "mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "requires": { - "mime-db": "~1.33.0" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", - "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - } - }, - "mixin-deep": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mkdirp": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", - "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", - "optional": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "multimatch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", - "dev": true, - "requires": { - "array-differ": "^1.0.0", - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "minimatch": "^3.0.0" - } - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "nan": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", - "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==", - "dev": true, - "optional": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "nise": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.8.tgz", - "integrity": "sha512-kGASVhuL4tlAV0tvA34yJYZIVihrUt/5bDwpp4tTluigxUr2bBlJeDXmivb6NuEdFkqvdv/Ybb9dm16PSKUhtw==", - "dev": true, - "requires": { - "@sinonjs/formatio": "^3.1.0", - "just-extend": "^4.0.2", - "lolex": "^2.3.2", - "path-to-regexp": "^1.7.0", - "text-encoding": "^0.6.4" - }, - "dependencies": { - "lolex": { - "version": "2.7.5", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", - "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", - "dev": true - } - } - }, - "normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", - "requires": { - "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "requires": { - "boolbase": "~1.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "nyc": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.1.0.tgz", - "integrity": "sha512-3GyY6TpQ58z9Frpv4GMExE1SV2tAgYqC7HSy2omEhNiCT3mhT9NyiOvIE8zkbuJVFzmvvNTnE4h/7/wQae7xLg==", - "dev": true, - "requires": { - "archy": "^1.0.0", - "arrify": "^1.0.1", - "caching-transform": "^2.0.0", - "convert-source-map": "^1.6.0", - "debug-log": "^1.0.1", - "find-cache-dir": "^2.0.0", - "find-up": "^3.0.0", - "foreground-child": "^1.5.6", - "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.1", - "istanbul-lib-hook": "^2.0.1", - "istanbul-lib-instrument": "^3.0.0", - "istanbul-lib-report": "^2.0.2", - "istanbul-lib-source-maps": "^2.0.1", - "istanbul-reports": "^2.0.1", - "make-dir": "^1.3.0", - "merge-source-map": "^1.1.0", - "resolve-from": "^4.0.0", - "rimraf": "^2.6.2", - "signal-exit": "^3.0.2", - "spawn-wrap": "^1.4.2", - "test-exclude": "^5.0.0", - "uuid": "^3.3.2", - "yargs": "11.1.0", - "yargs-parser": "^9.0.2" - }, - "dependencies": { - "align-text": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" - } - }, - "amdefine": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "ansi-regex": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "append-transform": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "default-require-extensions": "^2.0.0" - } - }, - "archy": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "arrify": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "async": { - "version": "1.5.2", - "bundled": true, - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "builtin-modules": { - "version": "1.1.1", - "bundled": true, - "dev": true - }, - "caching-transform": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "make-dir": "^1.0.0", - "md5-hex": "^2.0.0", - "package-hash": "^2.0.0", - "write-file-atomic": "^2.0.0" - } - }, - "camelcase": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true - }, - "center-align": { - "version": "0.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" - } - }, - "cliui": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - }, - "dependencies": { - "wordwrap": { - "version": "0.0.2", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "commondir": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "convert-source-map": { - "version": "1.6.0", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cross-spawn": { - "version": "4.0.2", - "bundled": true, - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "debug": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "debug-log": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "decamelize": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "default-require-extensions": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "strip-bom": "^3.0.0" - } - }, - "error-ex": { - "version": "1.3.2", - "bundled": true, - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es6-error": { - "version": "4.1.1", - "bundled": true, - "dev": true - }, - "execa": { - "version": "0.7.0", - "bundled": true, - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "5.1.0", - "bundled": true, - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - } - } - }, - "find-cache-dir": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "foreground-child": { - "version": "1.5.6", - "bundled": true, - "dev": true, - "requires": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "get-caller-file": { - "version": "1.0.3", - "bundled": true, - "dev": true - }, - "get-stream": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "glob": { - "version": "7.1.3", - "bundled": true, - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true, - "dev": true - }, - "handlebars": { - "version": "4.0.11", - "bundled": true, - "dev": true, - "requires": { - "async": "^1.4.0", - "optimist": "^0.6.1", - "source-map": "^0.4.4", - "uglify-js": "^2.6" - }, - "dependencies": { - "source-map": { - "version": "0.4.4", - "bundled": true, - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "has-flag": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "hosted-git-info": { - "version": "2.7.1", - "bundled": true, - "dev": true - }, - "imurmurhash": { - "version": "0.1.4", - "bundled": true, - "dev": true - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true - }, - "invert-kv": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "bundled": true, - "dev": true - }, - "is-buffer": { - "version": "1.1.6", - "bundled": true, - "dev": true, - "optional": true - }, - "is-builtin-module": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "builtin-modules": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "isexe": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "istanbul-lib-coverage": { - "version": "2.0.1", - "bundled": true, - "dev": true - }, - "istanbul-lib-hook": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "append-transform": "^1.0.0" - } - }, - "istanbul-lib-report": { - "version": "2.0.2", - "bundled": true, - "dev": true, - "requires": { - "istanbul-lib-coverage": "^2.0.1", - "make-dir": "^1.3.0", - "supports-color": "^5.4.0" - } - }, - "istanbul-lib-source-maps": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "debug": "^3.1.0", - "istanbul-lib-coverage": "^2.0.1", - "make-dir": "^1.3.0", - "rimraf": "^2.6.2", - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true - } - } - }, - "istanbul-reports": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "handlebars": "^4.0.11" - } - }, - "json-parse-better-errors": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "lazy-cache": { - "version": "1.0.4", - "bundled": true, - "dev": true, - "optional": true - }, - "lcid": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "invert-kv": "^1.0.0" - } - }, - "load-json-file": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash.flattendeep": { - "version": "4.4.0", - "bundled": true, - "dev": true - }, - "longest": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "lru-cache": { - "version": "4.1.3", - "bundled": true, - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "make-dir": { - "version": "1.3.0", - "bundled": true, - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "md5-hex": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "md5-o-matic": { - "version": "0.1.1", - "bundled": true, - "dev": true - }, - "mem": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "merge-source-map": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "requires": { - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true - } - } - }, - "mimic-fn": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.10", - "bundled": true, - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true - } - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "normalize-package-data": { - "version": "2.4.0", - "bundled": true, - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-run-path": { - "version": "2.0.2", - "bundled": true, - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "optimist": { - "version": "0.6.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "os-locale": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "execa": "^0.7.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" - } - }, - "p-finally": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "p-limit": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "package-hash": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "lodash.flattendeep": "^4.4.0", - "md5-hex": "^2.0.0", - "release-zalgo": "^1.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "path-exists": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "path-key": { - "version": "2.0.1", - "bundled": true, - "dev": true - }, - "path-type": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "pseudomap": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "read-pkg": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - }, - "release-zalgo": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, - "repeat-string": { - "version": "1.6.1", - "bundled": true, - "dev": true, - "optional": true - }, - "require-directory": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "require-main-filename": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "resolve-from": { - "version": "4.0.0", - "bundled": true, - "dev": true - }, - "right-align": { - "version": "0.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "align-text": "^0.1.1" - } - }, - "rimraf": { - "version": "2.6.2", - "bundled": true, - "dev": true, - "requires": { - "glob": "^7.0.5" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true - }, - "semver": { - "version": "5.5.0", - "bundled": true, - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true - }, - "source-map": { - "version": "0.5.7", - "bundled": true, - "dev": true, - "optional": true - }, - "spawn-wrap": { - "version": "1.4.2", - "bundled": true, - "dev": true, - "requires": { - "foreground-child": "^1.5.6", - "mkdirp": "^0.5.0", - "os-homedir": "^1.0.1", - "rimraf": "^2.6.2", - "signal-exit": "^3.0.2", - "which": "^1.3.0" - } - }, - "spdx-correct": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.1.0", - "bundled": true, - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "string-width": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "strip-eof": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "supports-color": { - "version": "5.4.0", - "bundled": true, - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "test-exclude": { - "version": "5.0.0", - "bundled": true, - "dev": true, - "requires": { - "arrify": "^1.0.1", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^1.0.1" - } - }, - "uglify-js": { - "version": "2.8.29", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" - }, - "dependencies": { - "yargs": { - "version": "3.10.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } - } - } - }, - "uglify-to-browserify": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "uuid": { - "version": "3.3.2", - "bundled": true, - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "which": { - "version": "1.3.1", - "bundled": true, - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "window-size": { - "version": "0.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "wordwrap": { - "version": "0.0.3", - "bundled": true, - "dev": true - }, - "wrap-ansi": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "write-file-atomic": { - "version": "2.3.0", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "y18n": { - "version": "3.2.1", - "bundled": true, - "dev": true - }, - "yallist": { - "version": "2.1.2", - "bundled": true, - "dev": true - }, - "yargs": { - "version": "11.1.0", - "bundled": true, - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.1.1", - "find-up": "^2.1.0", - "get-caller-file": "^1.0.1", - "os-locale": "^2.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^9.0.2" - }, - "dependencies": { - "cliui": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "bundled": true, - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "bundled": true, - "dev": true - } - } - }, - "yargs-parser": { - "version": "9.0.2", - "bundled": true, - "dev": true, - "requires": { - "camelcase": "^4.1.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "bundled": true, - "dev": true - } - } - } - } - }, - "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "requires": { - "isobject": "^3.0.0" - } - }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "dev": true, - "requires": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "requires": { - "isobject": "^3.0.1" - } - }, - "observable-to-promise": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.5.0.tgz", - "integrity": "sha1-yCjw8NxH6fhq+KSXfF1VB2znqR8=", - "dev": true, - "requires": { - "is-observable": "^0.2.0", - "symbol-observable": "^1.0.4" - }, - "dependencies": { - "is-observable": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", - "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", - "dev": true, - "requires": { - "symbol-observable": "^0.2.2" - }, - "dependencies": { - "symbol-observable": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", - "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", - "dev": true - } - } - } - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "opn": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", - "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "opn-cli": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.0.0.tgz", - "integrity": "sha512-/NxjgPPxgYWAEznUwbvQd3H/vfMBRoIy8ZAvKNNgye2TbFE4pToVwmbi34Xo2rkmlfJIeWPa++zUSj4WBVGJxQ==", - "dev": true, - "requires": { - "file-type": "^10.4.0", - "get-stdin": "^6.0.0", - "meow": "^5.0.0", - "opn": "^5.4.0", - "temp-write": "^3.4.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, - "get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - }, - "meow": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", - "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" - } - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - } - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - } - } - }, - "option-chain": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", - "integrity": "sha1-k41zvU4Xg/lI00AjZEraI2aeMPI=", - "dev": true - }, - "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "wordwrap": "~1.0.0" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-limit": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", - "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "package-hash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-2.0.0.tgz", - "integrity": "sha1-eK4ybIngWk2BO2hgGXevBcANKg0=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "lodash.flattendeep": "^4.4.0", - "md5-hex": "^2.0.0", - "release-zalgo": "^1.0.0" - } - }, - "package-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", - "dev": true, - "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" - } - }, - "parent-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.0.tgz", - "integrity": "sha512-8Mf5juOMmiE4FcmzYc4IaiS9L3+9paz2KOiXzkRviCP6aDmN49Hz6EMWz0lGNp9pX80GvvAuLADtyGfW/Em3TA==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "dev": true, - "requires": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parse-ms": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", - "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-parse": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", - "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=" - }, - "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", - "dev": true, - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "requires": { - "pify": "^3.0.0" - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - }, - "pinkie": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", - "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", - "dev": true - }, - "pinkie-promise": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", - "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", - "dev": true, - "requires": { - "pinkie": "^1.0.0" - } - }, - "pkg-conf": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", - "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "load-json-file": "^4.0.0" - } - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } - }, - "plur": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", - "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", - "dev": true, - "requires": { - "irregular-plurals": "^1.0.0" - } - }, - "pluralize": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", - "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", - "dev": true - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true - }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", - "dev": true - }, - "pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" - }, - "pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" - }, - "pretty-ms": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.2.0.tgz", - "integrity": "sha512-ZypexbfVUGTFxb0v+m1bUyy92DHe5SyYlnyY0msyms5zd3RwyvNgyxZZsXXgoyzlxjx5MiqtXUdhUfvQbe0A2Q==", - "dev": true, - "requires": { - "parse-ms": "^1.0.0" - }, - "dependencies": { - "parse-ms": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", - "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", - "dev": true - } - } - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" - }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", - "dev": true - }, - "random-int": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", - "integrity": "sha1-5qLtNEisnGZGoGV0Q7HBUhWS7Qg=" - }, - "randomatic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz", - "integrity": "sha512-VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==", - "dev": true, - "requires": { - "is-number": "^4.0.0", - "kind-of": "^6.0.0", - "math-random": "^1.0.1" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", - "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", - "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==" - } - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "readdirp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", - "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "minimatch": "^3.0.2", - "readable-stream": "^2.0.2", - "set-immediate-shim": "^1.0.1" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - }, - "dependencies": { - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - } - } - }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true, - "requires": { - "is-equal-shallow": "^0.1.3" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", - "dev": true - }, - "regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "registry-auth-token": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", - "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", - "dev": true, - "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", - "dev": true, - "requires": { - "rc": "^1.0.1" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - } - }, - "release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "repeat-element": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "replacestream": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", - "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", - "requires": { - "escape-string-regexp": "^1.0.3", - "object-assign": "^4.0.1", - "readable-stream": "^2.0.2" - } - }, - "request": { - "version": "2.87.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", - "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.6.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.1", - "forever-agent": "~0.6.1", - "form-data": "~2.3.1", - "har-validator": "~5.0.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.17", - "oauth-sign": "~0.8.2", - "performance-now": "^2.1.0", - "qs": "~6.5.1", - "safe-buffer": "^5.1.1", - "tough-cookie": "~2.3.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.1.0" - } - }, - "require-precompiled": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", - "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", - "dev": true - }, - "requizzle": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", - "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", - "dev": true, - "requires": { - "underscore": "~1.6.0" - }, - "dependencies": { - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", - "dev": true - } - } - }, - "resolve": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", - "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", - "requires": { - "path-parse": "^1.0.5" - } - }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" - } - }, - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } - }, - "rxjs": { - "version": "6.3.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", - "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "semver": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", - "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" - }, - "semver-diff": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", - "dev": true, - "requires": { - "semver": "^5.0.3" - } - }, - "serialize-error": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", - "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", - "dev": true - }, - "set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "sinon": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.2.2.tgz", - "integrity": "sha512-WLagdMHiEsrRmee3jr6IIDntOF4kbI6N2pfbi8wkv50qaUQcBglkzkjtoOEbeJ2vf1EsrHhLI+5Ny8//WHdMoA==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.2.0", - "@sinonjs/formatio": "^3.1.0", - "@sinonjs/samsam": "^3.0.2", - "diff": "^3.5.0", - "lolex": "^3.0.0", - "nise": "^1.4.7", - "supports-color": "^5.5.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" - }, - "slice-ansi": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - } - } - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - }, - "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", - "requires": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-support": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", - "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" - }, - "spdx-correct": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", - "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", - "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==" - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", - "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==" - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, - "sshpk": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", - "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "stack-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.1.tgz", - "integrity": "sha1-1PM6tU6OOHeLDKXP07OvsS22hiA=", - "dev": true - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - }, - "strip-bom-buf": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", - "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", - "dev": true, - "requires": { - "is-utf8": "^0.2.1" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supertap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", - "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "indent-string": "^3.2.0", - "js-yaml": "^3.10.0", - "serialize-error": "^2.1.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - } - } - }, - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "dev": true - }, - "table": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/table/-/table-5.2.1.tgz", - "integrity": "sha512-qmhNs2GEHNqY5fd2Mo+8N1r2sw/rvTAAvBZTaTx+Y7PHLypqyrxr1MdIu0pLw6Xvl/Gi4ONu/sdceP8vvUjkyA==", - "dev": true, - "requires": { - "ajv": "^6.6.1", - "lodash": "^4.17.11", - "slice-ansi": "2.0.0", - "string-width": "^2.1.1" - }, - "dependencies": { - "ajv": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.7.0.tgz", - "integrity": "sha512-RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - }, - "slice-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.0.0.tgz", - "integrity": "sha512-4j2WTWjp3GsZ+AOagyzVbzp4vWGtZ0hEZ/gDY/uTvm6MTxUfTUIsnMIFb1bn8o0RuXiqUw15H1bue8f22Vw2oQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - } - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "taffydb": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=", - "dev": true - }, - "tap-nyan": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", - "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "duplexer2": "^0.1.4", - "supports-color": "^3.1.2", - "tap-parser": "^3.0.3" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "dependencies": { - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", - "dev": true - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "dev": true, - "requires": { - "has-flag": "^1.0.0" - } - } - } - }, - "tap-parser": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", - "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", - "dev": true, - "requires": { - "events-to-array": "^1.0.1", - "js-yaml": "^3.2.7", - "readable-stream": "^2" - } - }, - "temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", - "dev": true - }, - "temp-write": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz", - "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "is-stream": "^1.1.0", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^3.0.1" - } - }, - "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dev": true, - "requires": { - "execa": "^0.7.0" - } - }, - "text-encoding": { - "version": "0.6.4", - "resolved": "http://registry.npmjs.org/text-encoding/-/text-encoding-0.6.4.tgz", - "integrity": "sha1-45mpgiV6J22uQou5KEXLcb3CbRk=", - "dev": true - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "through2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", - "dev": true, - "requires": { - "readable-stream": "^2.1.5", - "xtend": "~4.0.1" - } - }, - "time-zone": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", - "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", - "dev": true - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "dev": true - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", - "requires": { - "punycode": "^1.4.1" - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, - "trim-off-newlines": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", - "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", - "dev": true - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, - "tslib": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", - "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "optional": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", - "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, - "uid2": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", - "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", - "dev": true - }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", - "dev": true - }, - "underscore-contrib": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", - "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", - "dev": true, - "requires": { - "underscore": "1.6.0" - }, - "dependencies": { - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", - "dev": true - } - } - }, - "union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } - } - }, - "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", - "dev": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "unique-temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", - "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", - "dev": true, - "requires": { - "mkdirp": "^0.5.1", - "os-tmpdir": "^1.0.1", - "uid2": "0.0.3" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - } - } - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" - } - } - }, - "unzip-response": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", - "dev": true - }, - "update-notifier": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", - "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", - "dev": true, - "requires": { - "boxen": "^1.2.1", - "chalk": "^2.0.1", - "configstore": "^3.0.0", - "import-lazy": "^2.1.0", - "is-ci": "^1.0.10", - "is-installed-globally": "^0.1.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - }, - "dependencies": { - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - } - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" - }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "dev": true, - "requires": { - "prepend-http": "^1.0.1" - } - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "uuid": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", - "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==" - }, - "validate-npm-package-license": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", - "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "well-known-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-1.0.0.tgz", - "integrity": "sha1-c8eK6Bp3Jqj6WY4ogIAcixYiVRg=", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "widest-line": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz", - "integrity": "sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM=", - "dev": true, - "requires": { - "string-width": "^2.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "write": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", - "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", - "dev": true, - "requires": { - "mkdirp": "^0.5.1" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - } - } - }, - "write-file-atomic": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", - "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "write-json-file": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", - "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", - "dev": true, - "requires": { - "detect-indent": "^5.0.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "sort-keys": "^2.0.0", - "write-file-atomic": "^2.0.0" - }, - "dependencies": { - "detect-indent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", - "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", - "dev": true - } - } - }, - "write-pkg": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.1.0.tgz", - "integrity": "sha1-AwqZlMyZk9JbTnWp8aGSNgcpHOk=", - "dev": true, - "requires": { - "sort-keys": "^2.0.0", - "write-json-file": "^2.2.0" - } - }, - "xdg-basedir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", - "dev": true - }, - "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - } - }, - "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" - }, - "xmlcreate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", - "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=", - "dev": true - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - } - } - }, - "yazl": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", - "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", - "requires": { - "buffer-crc32": "~0.2.3" - } - } - } + "name": "@ui5/project", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@ava/babel-plugin-throws-helper": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-2.0.0.tgz", + "integrity": "sha1-L8H+PCEacQcaTsp7j3r1hCzRrnw=", + "dev": true + }, + "@ava/babel-preset-stage-4": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", + "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", + "dev": true, + "requires": { + "babel-plugin-check-es2015-constants": "^6.8.0", + "babel-plugin-syntax-trailing-function-commas": "^6.20.0", + "babel-plugin-transform-async-to-generator": "^6.16.0", + "babel-plugin-transform-es2015-destructuring": "^6.19.0", + "babel-plugin-transform-es2015-function-name": "^6.9.0", + "babel-plugin-transform-es2015-modules-commonjs": "^6.18.0", + "babel-plugin-transform-es2015-parameters": "^6.21.0", + "babel-plugin-transform-es2015-spread": "^6.8.0", + "babel-plugin-transform-es2015-sticky-regex": "^6.8.0", + "babel-plugin-transform-es2015-unicode-regex": "^6.11.0", + "babel-plugin-transform-exponentiation-operator": "^6.8.0", + "package-hash": "^1.2.0" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "package-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", + "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", + "dev": true, + "requires": { + "md5-hex": "^1.3.0" + } + } + } + }, + "@ava/babel-preset-transform-test-files": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-3.0.0.tgz", + "integrity": "sha1-ze0RlqjY2TgaUJJAq5LpGl7Aafc=", + "dev": true, + "requires": { + "@ava/babel-plugin-throws-helper": "^2.0.0", + "babel-plugin-espower": "^2.3.2" + } + }, + "@ava/write-file-atomic": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ava/write-file-atomic/-/write-file-atomic-2.2.0.tgz", + "integrity": "sha512-BTNB3nGbEfJT+69wuqXFr/bQH7Vr7ihx2xGOMNqPgDGhwspoZhiWumDDZNjBy7AScmqS5CELIOGtPVXESyrnDA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + }, + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/generator": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.1.5.tgz", + "integrity": "sha512-IO31r62xfMI+wBJVmgx0JR9ZOHty8HkoYpQAjRWUGG9vykBTlGHdArZ8zoFtpUu2gs17K7qTl/TtPpiSi6t+MA==", + "dev": true, + "requires": { + "@babel/types": "^7.1.5", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", + "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + } + } + }, + "@babel/parser": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.5.tgz", + "integrity": "sha512-WXKf5K5HT6X0kKiCOezJZFljsfxKV1FpU8Tf1A7ZpGvyd/Q4hlrJm2EwoH2onaUq3O4tLDp+4gk0hHPsMyxmOg==", + "dev": true + }, + "@babel/template": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.1.2.tgz", + "integrity": "sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.1.2", + "@babel/types": "^7.1.2" + } + }, + "@babel/traverse": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.5.tgz", + "integrity": "sha512-eU6XokWypl0MVJo+MTSPUtlfPePkrqsF26O+l1qFGlCKWwmiYAYy2Sy44Qw8m2u/LbPCsxYt90rghmqhYMGpPA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.1.5", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/parser": "^7.1.5", + "@babel/types": "^7.1.5", + "debug": "^3.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.10" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "globals": { + "version": "11.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.9.0.tgz", + "integrity": "sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.1.5.tgz", + "integrity": "sha512-sJeqa/d9eM/bax8Ivg+fXF7FpN3E/ZmTrWbkk6r+g7biVYfALMnLin4dKijsaqEhpd2xvOGfQTkQkD31YCVV4A==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + } + } + }, + "@concordance/react": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", + "integrity": "sha512-htrsRaQX8Iixlsek8zQU7tE8wcsTQJ5UhZkSPEA8slCDAisKpC/2VgU/ucPn32M5/LjGGXRaUEKvEw1Wiuu4zQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1" + } + }, + "@ladjs/time-require": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@ladjs/time-require/-/time-require-0.1.4.tgz", + "integrity": "sha512-weIbJqTMfQ4r1YX85u54DKfjLZs2jwn1XZ6tIOP/pFgMwhIN5BAtaCp/1wn9DzyLsDR9tW0R2NIePcVJ45ivQQ==", + "dev": true, + "requires": { + "chalk": "^0.4.0", + "date-time": "^0.1.1", + "pretty-ms": "^0.2.1", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "dev": true + }, + "chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "dev": true, + "requires": { + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" + } + }, + "pretty-ms": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", + "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", + "dev": true, + "requires": { + "parse-ms": "^0.1.0" + } + }, + "strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "dev": true + } + } + }, + "@sinonjs/commons": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.3.0.tgz", + "integrity": "sha512-j4ZwhaHmwsCb4DlDOIWnI5YyKDNMoNThsmwEpfHx6a1EpsGZ9qYLxP++LMlmBRjtGptGHFsGItJ768snllFWpA==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/formatio": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.1.0.tgz", + "integrity": "sha512-ZAR2bPHOl4Xg6eklUGpsdiIJ4+J1SNag1DHHrG/73Uz/nVwXqjgUtRPLoS+aVyieN9cSbc0E4LsU984tWcDyNg==", + "dev": true, + "requires": { + "@sinonjs/samsam": "^2 || ^3" + } + }, + "@sinonjs/samsam": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.0.2.tgz", + "integrity": "sha512-m08g4CS3J6lwRQk1pj1EO+KEVWbrbXsmi9Pw0ySmrIbcVxVaedoFgLvFsV8wHLwh01EpROVz3KvVcD1Jmks9FQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.0.2", + "array-from": "^2.1.1", + "lodash.get": "^4.4.2" + } + }, + "@ui5/builder": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.0.tgz", + "integrity": "sha512-bhOSjo4TtDhbppzXfl3XPOKrBFXT+aPxpeuGW7POZI8E4CHp9GDG8gz9fAxNP9TdN4kArPnHbBd3BGD02Y4nwQ==", + "requires": { + "@ui5/fs": "^1.0.0", + "@ui5/logger": "^1.0.0", + "cheerio": "^0.22.0", + "escodegen": "^1.11.0", + "escope": "^3.6.0", + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "globby": "^7.1.1", + "graceful-fs": "^4.1.15", + "less-openui5": "^0.6.0", + "pretty-data": "^0.40.0", + "pretty-hrtime": "^1.0.3", + "replacestream": "^4.0.3", + "semver": "^5.6.0", + "uglify-es": "^3.2.2", + "xml2js": "^0.4.17", + "yazl": "^2.5.1" + }, + "dependencies": { + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" + } + } + }, + "@ui5/fs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.0.tgz", + "integrity": "sha512-Zn4/wcV9Jk8+GUJbWE1ML1j716geZBf0DM/yT4aGAkklDtmv7rJKglFuEOf6iDFGfMiJ+ja9kh/IhzdVhbEKUQ==", + "requires": { + "@ui5/logger": "^1.0.0", + "clone": "^2.1.0", + "dir-glob": "2.0.0", + "globby": "^7.1.1", + "graceful-fs": "^4.1.15", + "make-dir": "^1.1.0", + "micromatch": "^3.1.4", + "minimatch": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^1.0.0" + } + }, + "@ui5/logger": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.0.tgz", + "integrity": "sha512-bauL02Ut6NPRjJHkOK0POFtbxOzdneLzJA+ZftnZBzjnFZxBIQ+ptY14yqkFfRZbWFcFHojQseW7hV3k9wFtwA==", + "requires": { + "npmlog": "^4.1.2" + } + }, + "acorn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.5.tgz", + "integrity": "sha512-i33Zgp3XWtmZBMNvCr4azvOFeWVw1Rk6p3hfi3LUDvIFraOMywb1kAtrbi+med14m4Xfpqm3zRZMT+c0FNE7kg==", + "dev": true + }, + "acorn-jsx": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", + "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", + "dev": true + }, + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "requires": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "optional": true + }, + "ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "dev": true, + "requires": { + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "ansi-escapes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", + "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "requires": { + "micromatch": "^2.1.5", + "normalize-path": "^2.0.0" + }, + "dependencies": { + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1" + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "^0.1.0" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" + } + } + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "arr-exclude": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", + "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + }, + "array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + }, + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, + "async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + }, + "auto-bind": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.2.0.tgz", + "integrity": "sha512-Zw7pZp7tztvKnWWtoII4AmqH5a2PV3ZN5F0BPRTGcc1kpRm4b6QXQnPU7Znbl6BfPfqOVOV29g4JeMqZQaqqOA==", + "dev": true + }, + "ava": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-0.25.0.tgz", + "integrity": "sha512-4lGNJCf6xL8SvsKVEKxEE46se7JAUIAZoKHw9itTQuwcsydhpAMkBs5gOOiWiwt0JKNIuXWc2/r4r8ZdcNrBEw==", + "dev": true, + "requires": { + "@ava/babel-preset-stage-4": "^1.1.0", + "@ava/babel-preset-transform-test-files": "^3.0.0", + "@ava/write-file-atomic": "^2.2.0", + "@concordance/react": "^1.0.0", + "@ladjs/time-require": "^0.1.4", + "ansi-escapes": "^3.0.0", + "ansi-styles": "^3.1.0", + "arr-flatten": "^1.0.1", + "array-union": "^1.0.1", + "array-uniq": "^1.0.2", + "arrify": "^1.0.0", + "auto-bind": "^1.1.0", + "ava-init": "^0.2.0", + "babel-core": "^6.17.0", + "babel-generator": "^6.26.0", + "babel-plugin-syntax-object-rest-spread": "^6.13.0", + "bluebird": "^3.0.0", + "caching-transform": "^1.0.0", + "chalk": "^2.0.1", + "chokidar": "^1.4.2", + "clean-stack": "^1.1.1", + "clean-yaml-object": "^0.1.0", + "cli-cursor": "^2.1.0", + "cli-spinners": "^1.0.0", + "cli-truncate": "^1.0.0", + "co-with-promise": "^4.6.0", + "code-excerpt": "^2.1.1", + "common-path-prefix": "^1.0.0", + "concordance": "^3.0.0", + "convert-source-map": "^1.5.1", + "core-assert": "^0.2.0", + "currently-unhandled": "^0.4.1", + "debug": "^3.0.1", + "dot-prop": "^4.1.0", + "empower-core": "^0.6.1", + "equal-length": "^1.0.0", + "figures": "^2.0.0", + "find-cache-dir": "^1.0.0", + "fn-name": "^2.0.0", + "get-port": "^3.0.0", + "globby": "^6.0.0", + "has-flag": "^2.0.0", + "hullabaloo-config-manager": "^1.1.0", + "ignore-by-default": "^1.0.0", + "import-local": "^0.1.1", + "indent-string": "^3.0.0", + "is-ci": "^1.0.7", + "is-generator-fn": "^1.0.0", + "is-obj": "^1.0.0", + "is-observable": "^1.0.0", + "is-promise": "^2.1.0", + "last-line-stream": "^1.0.0", + "lodash.clonedeepwith": "^4.5.0", + "lodash.debounce": "^4.0.3", + "lodash.difference": "^4.3.0", + "lodash.flatten": "^4.2.0", + "loud-rejection": "^1.2.0", + "make-dir": "^1.0.0", + "matcher": "^1.0.0", + "md5-hex": "^2.0.0", + "meow": "^3.7.0", + "ms": "^2.0.0", + "multimatch": "^2.1.0", + "observable-to-promise": "^0.5.0", + "option-chain": "^1.0.0", + "package-hash": "^2.0.0", + "pkg-conf": "^2.0.0", + "plur": "^2.0.0", + "pretty-ms": "^3.0.0", + "require-precompiled": "^0.1.0", + "resolve-cwd": "^2.0.0", + "safe-buffer": "^5.1.1", + "semver": "^5.4.1", + "slash": "^1.0.0", + "source-map-support": "^0.5.0", + "stack-utils": "^1.0.1", + "strip-ansi": "^4.0.0", + "strip-bom-buf": "^1.0.0", + "supertap": "^1.0.0", + "supports-color": "^5.0.0", + "trim-off-newlines": "^1.0.1", + "unique-temp-dir": "^1.0.0", + "update-notifier": "^2.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "ava-init": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", + "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", + "dev": true, + "requires": { + "arr-exclude": "^1.0.0", + "execa": "^0.7.0", + "has-yarn": "^1.0.0", + "read-pkg-up": "^2.0.0", + "write-pkg": "^3.1.0" + }, + "dependencies": { + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + } + } + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + }, + "aws4": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", + "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==" + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "requires": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + } + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true, + "requires": { + "babel-helper-explode-assignable-expression": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-espower": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.4.0.tgz", + "integrity": "sha512-/+SRpy7pKgTI28oEHfn1wkuM5QFAdRq8WNsOOih1dVrdV6A/WbNbRZyl0eX5eyDgtb0lOE27PeDFuCX2j8OxVg==", + "dev": true, + "requires": { + "babel-generator": "^6.1.0", + "babylon": "^6.1.0", + "call-matcher": "^1.0.0", + "core-js": "^2.0.0", + "espower-location-detector": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.1.1" + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", + "dev": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.2", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", + "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", + "dev": true, + "requires": { + "babel-plugin-transform-strict-mode": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-types": "^6.26.0" + } + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "dev": true, + "requires": { + "babel-helper-call-delegate": "^6.24.1", + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "dev": true, + "requires": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "dev": true, + "requires": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "regexpu-core": "^2.0.0" + } + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", + "babel-plugin-syntax-exponentiation-operator": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "requires": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "^0.5.6" + } + } + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", + "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "optional": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary-extensions": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", + "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", + "dev": true + }, + "bluebird": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", + "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", + "dev": true + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dev": true, + "requires": { + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "buf-compare": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", + "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", + "dev": true + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-from": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", + "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==", + "dev": true + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "caching-transform": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", + "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", + "dev": true, + "requires": { + "md5-hex": "^1.2.0", + "mkdirp": "^0.5.1", + "write-file-atomic": "^1.1.4" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "write-file-atomic": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", + "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + } + } + }, + "call-matcher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.0.1.tgz", + "integrity": "sha1-UTTQd5hPcSpU2tPL9i3ijc5BbKg=", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "deep-equal": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.0.0" + } + }, + "call-signature": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", + "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", + "dev": true + }, + "callsites": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.0.0.tgz", + "integrity": "sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw==", + "dev": true + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + } + }, + "capture-stack-trace": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", + "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "catharsis": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", + "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", + "dev": true, + "requires": { + "underscore-contrib": "~0.3.0" + } + }, + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + } + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true, + "requires": { + "anymatch": "^1.3.0", + "async-each": "^1.0.0", + "fsevents": "^1.0.0", + "glob-parent": "^2.0.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^2.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0" + } + }, + "ci-info": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.3.tgz", + "integrity": "sha512-SK/846h/Rcy8q9Z9CAwGBLfCJ6EkjJWdpelWDufQpqVDYq2Wnnv8zlSO6AMQap02jvhVruKKpEtQOufo3pFhLg==", + "dev": true + }, + "circular-json": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", + "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-css": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", + "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=", + "optional": true, + "requires": { + "commander": "2.0.x" + } + }, + "clean-stack": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", + "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", + "dev": true + }, + "clean-yaml-object": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", + "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", + "dev": true + }, + "cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-spinners": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", + "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", + "dev": true + }, + "cli-truncate": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", + "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", + "dev": true, + "requires": { + "slice-ansi": "^1.0.0", + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" + }, + "co-with-promise": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", + "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", + "dev": true, + "requires": { + "pinkie-promise": "^1.0.0" + } + }, + "code-excerpt": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", + "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", + "dev": true, + "requires": { + "convert-to-spaces": "^1.0.1" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "^1.1.1" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "combined-stream": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", + "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", + "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", + "optional": true + }, + "comment-parser": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.4.tgz", + "integrity": "sha512-0h7W6Y1Kb6zKQMJqdX41C5qf9ITCVIsD2qP2RaqDF3GFkXFrmuAuv5zUOuo19YzyC9scjBNpqzuaRQ2Sy5pxMQ==", + "dev": true + }, + "common-path-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", + "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concordance": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", + "integrity": "sha512-CZBzJ3/l5QJjlZM20WY7+5GP5pMTw+1UEbThcpMw8/rojsi5sBCiD8ZbBLtD+jYpRGAkwuKuqk108c154V9eyQ==", + "dev": true, + "requires": { + "date-time": "^2.1.0", + "esutils": "^2.0.2", + "fast-diff": "^1.1.1", + "function-name-support": "^0.2.0", + "js-string-escape": "^1.0.1", + "lodash.clonedeep": "^4.5.0", + "lodash.flattendeep": "^4.4.0", + "lodash.merge": "^4.6.0", + "md5-hex": "^2.0.0", + "semver": "^5.3.0", + "well-known-symbols": "^1.0.0" + }, + "dependencies": { + "date-time": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", + "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", + "dev": true, + "requires": { + "time-zone": "^1.0.0" + } + } + } + }, + "configstore": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", + "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", + "dev": true + }, + "convert-to-spaces": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", + "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, + "core-assert": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", + "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", + "dev": true, + "requires": { + "buf-compare": "^1.0.0", + "is-error": "^2.2.0" + } + }, + "core-js": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", + "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "coveralls": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.2.tgz", + "integrity": "sha512-Tv0LKe/MkBOilH2v7WBiTBdudg2ChfGbdXafc/s330djpF3zKOmuehTeRwjXWc7pzfj9FrDUTA7tEx6Div8NFw==", + "dev": true, + "requires": { + "growl": "~> 1.10.0", + "js-yaml": "^3.11.0", + "lcov-parse": "^0.0.10", + "log-driver": "^1.2.7", + "minimist": "^1.2.0", + "request": "^2.85.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "dev": true, + "requires": { + "capture-stack-trace": "^1.0.0" + } + }, + "cross-env": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", + "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.5", + "is-windows": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true + }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "requires": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.2.tgz", + "integrity": "sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ==" + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "requires": { + "es5-ext": "^0.10.9" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-time": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", + "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + } + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "dir-glob": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", + "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "requires": { + "arrify": "^1.0.1", + "path-type": "^3.0.0" + } + }, + "docdash": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.2.tgz", + "integrity": "sha512-IEM57bWPLtVXpUeCKbiGvHsHtW9O9ZiiBPfeQDAZ7JdQiAF3aNWQoJ3e/+uJ63lHO009yn0tbJjtKpXJ2AURCQ==", + "dev": true + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-serializer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", + "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", + "requires": { + "domelementtype": "~1.1.1", + "entities": "~1.1.1" + }, + "dependencies": { + "domelementtype": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", + "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=" + } + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dot-prop": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", + "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", + "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "optional": true, + "requires": { + "jsbn": "~0.1.0" + } + }, + "empower-core": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", + "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", + "dev": true, + "requires": { + "call-signature": "0.0.2", + "core-js": "^2.0.0" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "equal-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", + "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", + "dev": true + }, + "error-ex": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es5-ext": { + "version": "0.10.46", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.46.tgz", + "integrity": "sha512-24XxRvJXNFwEMpJb3nOkiRJKRoupmjYmOPVlI65Qy2SrtxwOTB+g6ODjBKOtwEHbYrhWRty9xxOWLNdClT2djw==", + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "1" + } + }, + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "es6-weak-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", + "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "requires": { + "d": "1", + "es5-ext": "^0.10.14", + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "escodegen": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz", + "integrity": "sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==", + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true + } + } + }, + "escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "requires": { + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint": { + "version": "5.12.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.12.1.tgz", + "integrity": "sha512-54NV+JkTpTu0d8+UYSA8mMKAG4XAsaOrozA9rCW7tgneg1mevcL7wIotPC+fZ0SkWwdhNqoXoxnQCTBp7UvTsg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.5.3", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^2.1.0", + "eslint-scope": "^4.0.0", + "eslint-utils": "^1.3.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^5.0.0", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^2.0.0", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.7.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^6.1.0", + "js-yaml": "^3.12.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.5", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "pluralize": "^7.0.0", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^5.5.1", + "strip-ansi": "^4.0.0", + "strip-json-comments": "^2.0.1", + "table": "^5.0.2", + "text-table": "^0.2.0" + }, + "dependencies": { + "ajv": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.7.0.tgz", + "integrity": "sha512-RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "globals": { + "version": "11.10.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.10.0.tgz", + "integrity": "sha512-0GZF1RiPKU97IHUO5TORo9w1PwrH/NBPl+fS7oMLdaTRiYmYbwK4NWoZWrAdd0/abG9R2BU+OiwyQpTpE6pdfQ==", + "dev": true + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "eslint-config-google": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.11.0.tgz", + "integrity": "sha512-z541Fs5TFaY7/35v/z100InQ2f3V2J7e3u/0yKrnImgsHjh6JWgSRngfC/mZepn/+XN16jUydt64k//kxXc1fw==", + "dev": true + }, + "eslint-plugin-jsdoc": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.0.1.tgz", + "integrity": "sha512-aQ7UeIGmaXGWJhYz1S81Pg5A+P6P+c1ebdV9BfG+RdVlx8WB6HVVKhdnIfvHVmD9vjsma89OjOzVSBNxJQ5x8g==", + "dev": true, + "requires": { + "comment-parser": "^0.5.1", + "jsdoctypeparser": "^2.0.0-alpha-8", + "lodash": "^4.17.11" + }, + "dependencies": { + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + } + } + }, + "eslint-scope": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz", + "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", + "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", + "dev": true + }, + "eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", + "dev": true + }, + "espower-location-detector": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", + "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", + "dev": true, + "requires": { + "is-url": "^1.2.1", + "path-is-absolute": "^1.0.0", + "source-map": "^0.5.0", + "xtend": "^4.0.0" + } + }, + "espree": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.0.tgz", + "integrity": "sha512-1MpUfwsdS9MMoN7ZXqAr9e9UKdVHDcvrJpyx7mm1WuQlx/ygErEQBzgi5Nh5qBHIoYweprhtMkTCb9GhcAIcsA==", + "dev": true, + "requires": { + "acorn": "^6.0.2", + "acorn-jsx": "^5.0.0", + "eslint-visitor-keys": "^1.0.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "espurify": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.0.tgz", + "integrity": "sha512-jdkJG9jswjKCCDmEridNUuIQei9algr+o66ZZ19610ZoBsiWLRsQGNYS4HGez3Z/DsR0lhANGAqiwBUclPuNag==", + "dev": true, + "requires": { + "core-js": "^2.0.0" + } + }, + "esquery": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "dev": true, + "requires": { + "estraverse": "^4.0.0" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "events-to-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", + "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", + "dev": true + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "requires": { + "fill-range": "^2.1.0" + }, + "dependencies": { + "fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "requires": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + } + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "external-editor": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", + "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" + }, + "fast-diff": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.1.2.tgz", + "integrity": "sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", + "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "dev": true, + "requires": { + "flat-cache": "^1.2.1", + "object-assign": "^4.0.1" + } + }, + "file-type": { + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.7.0.tgz", + "integrity": "sha512-AbaGtdWYYRaVrv2MwL/65myuRJ9j3e79e7etJ79US18QHuVlzJBcQHUH+HxDUoLtbyWRTUfLzLkGXX3pP9kfZg==", + "dev": true + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "flat-cache": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", + "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", + "dev": true, + "requires": { + "circular-json": "^0.3.1", + "graceful-fs": "^4.1.2", + "rimraf": "~2.6.2", + "write": "^0.2.1" + } + }, + "fn-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", + "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", + "dev": true + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", + "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "1.0.6", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", + "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.9.2", + "node-pre-gyp": "^0.10.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.21", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": "^2.1.0" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true, + "optional": true + }, + "minipass": { + "version": "2.2.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.1", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.2.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.10.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.1.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.1.10", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.0.5" + } + }, + "safe-buffer": { + "version": "5.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.5.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.2.4", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.1", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "yallist": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "function-name-support": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", + "integrity": "sha1-VdO/qm6v1QWlD5vIH99XVkoLsHE=", + "dev": true + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "get-port": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "^2.0.0" + } + }, + "global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "dev": true, + "requires": { + "ini": "^1.3.4" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "globby": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", + "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "requires": { + "array-union": "^1.0.1", + "dir-glob": "^2.0.0", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + } + }, + "got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "dev": true, + "requires": { + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "requires": { + "ajv": "^5.1.0", + "har-schema": "^2.0.0" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "has-yarn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", + "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", + "dev": true + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + } + }, + "hosted-git-info": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz", + "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==" + }, + "htmlparser2": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.0.tgz", + "integrity": "sha512-J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ==", + "requires": { + "domelementtype": "^1.3.0", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.0.6" + }, + "dependencies": { + "readable-stream": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.1.1.tgz", + "integrity": "sha512-DkN66hPyqDhnIQ6Jcsvx9bFjhw214O4poMBcIMgPVpQvNy9a0e0Uhg5SqySyDKAmUlwt8LonTBz1ezOnM8pUdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "hullabaloo-config-manager": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/hullabaloo-config-manager/-/hullabaloo-config-manager-1.1.1.tgz", + "integrity": "sha512-ztKnkZV0TmxnumCDHHgLGNiDnotu4EHCp9YMkznWuo4uTtCyJ+cu+RNcxUeXYKTllpvLFWnbfWry09yzszgg+A==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "es6-error": "^4.0.2", + "graceful-fs": "^4.1.11", + "indent-string": "^3.1.0", + "json5": "^0.5.1", + "lodash.clonedeep": "^4.5.0", + "lodash.clonedeepwith": "^4.5.0", + "lodash.isequal": "^4.5.0", + "lodash.merge": "^4.6.0", + "md5-hex": "^2.0.0", + "package-hash": "^2.0.0", + "pkg-dir": "^2.0.0", + "resolve-from": "^3.0.0", + "safe-buffer": "^5.0.1" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" + }, + "ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", + "dev": true + }, + "import-fresh": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", + "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + } + } + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, + "import-local": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", + "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", + "dev": true, + "requires": { + "pkg-dir": "^2.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "inquirer": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.1.tgz", + "integrity": "sha512-088kl3DRT2dLU5riVMKKr1DlImd6X7smDhpXUCkJDCKvTEJeRiXh0G132HG9u5a+6Ylw9plFRY7RuTnwohYSpg==", + "dev": true, + "requires": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.0", + "figures": "^2.0.0", + "lodash": "^4.17.10", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.1.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "strip-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.0.0.tgz", + "integrity": "sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==", + "dev": true, + "requires": { + "ansi-regex": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.0.0.tgz", + "integrity": "sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==", + "dev": true + } + } + } + } + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "irregular-plurals": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz", + "integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "requires": { + "builtin-modules": "^1.0.0" + } + }, + "is-ci": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz", + "integrity": "sha512-c7TnwxLePuqIlxHgr7xtxzycJPegNHFuIrBkwbf8hc58//+Op1CqFkyS+xnIMkwn9UsJIwc174BIjkyBmSpjKg==", + "dev": true, + "requires": { + "ci-info": "^1.0.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "requires": { + "is-primitive": "^2.0.0" + } + }, + "is-error": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.1.tgz", + "integrity": "sha1-aEqW2EB2V3yY9M20DG0mpRI78Zw=", + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-generator-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", + "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "is-installed-globally": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", + "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "dev": true, + "requires": { + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" + } + }, + "is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-observable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", + "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", + "dev": true, + "requires": { + "symbol-observable": "^1.1.0" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "^3.0.1" + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "dev": true + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.0.0.tgz", + "integrity": "sha512-eQY9vN9elYjdgN9Iv6NS/00bptm02EBBk70lRMaVjeA6QYocQgenVrSgC28TJurdnZa80AGO3ASdFN+w/njGiQ==", + "dev": true, + "requires": { + "@babel/generator": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "istanbul-lib-coverage": "^2.0.1", + "semver": "^5.5.0" + } + }, + "js-string-escape": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", + "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", + "dev": true + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "js-yaml": { + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.1.tgz", + "integrity": "sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "dependencies": { + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + } + } + }, + "js2xmlparser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", + "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", + "dev": true, + "requires": { + "xmlcreate": "^1.0.1" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "optional": true + }, + "jsdoc": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", + "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", + "dev": true, + "requires": { + "babylon": "7.0.0-beta.19", + "bluebird": "~3.5.0", + "catharsis": "~0.8.9", + "escape-string-regexp": "~1.0.5", + "js2xmlparser": "~3.0.0", + "klaw": "~2.0.0", + "marked": "~0.3.6", + "mkdirp": "~0.5.1", + "requizzle": "~0.2.1", + "strip-json-comments": "~2.0.1", + "taffydb": "2.6.2", + "underscore": "~1.8.3" + }, + "dependencies": { + "babylon": { + "version": "7.0.0-beta.19", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", + "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + } + } + }, + "jsdoctypeparser": { + "version": "2.0.0-alpha-8", + "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-2.0.0-alpha-8.tgz", + "integrity": "sha1-uvE3+44qVYgQrc8Z0tKi9oDpCl8=", + "dev": true + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "just-extend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", + "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "klaw": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", + "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.9" + } + }, + "last-line-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", + "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", + "dev": true, + "requires": { + "through2": "^2.0.0" + } + }, + "latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "dev": true, + "requires": { + "package-json": "^4.0.0" + } + }, + "lcov-parse": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", + "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", + "dev": true + }, + "less": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", + "integrity": "sha1-cc6J7DC3dLNWfyVMZ5WPLywZO94=", + "requires": { + "clean-css": "2.0.x", + "mime": "1.2.x", + "mkdirp": "~0.3.5", + "request": ">=2.12.0", + "source-map": "0.1.x" + }, + "dependencies": { + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "less-openui5": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", + "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", + "requires": { + "clone": "^2.1.0", + "css": "^2.2.1", + "less": "1.6.3", + "object-assign": "^4.0.1" + } + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true + }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" + }, + "lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.clonedeepwith": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", + "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + }, + "lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", + "dev": true + }, + "lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" + }, + "lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "dev": true + }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" + }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" + }, + "lodash.merge": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", + "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==" + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" + }, + "lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" + }, + "lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=" + }, + "lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" + }, + "log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "dev": true + }, + "lolex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-3.0.0.tgz", + "integrity": "sha512-hcnW80h3j2lbUfFdMArd5UPA/vxZJ+G8vobd+wg3nVEQA0EigStbYcrG030FJxL6xiDDPEkoMatV9xIh5OecQQ==", + "dev": true + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "dev": true, + "requires": { + "js-tokens": "^3.0.0" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "lru-cache": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", + "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "requires": { + "pify": "^3.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "^1.0.0" + } + }, + "marked": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==", + "dev": true + }, + "matcher": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", + "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.4" + } + }, + "math-random": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", + "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", + "dev": true + }, + "md5-hex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", + "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "md5-o-matic": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", + "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", + "dev": true + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", + "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=", + "optional": true + }, + "mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" + }, + "mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "requires": { + "mime-db": "~1.33.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "minimist-options": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", + "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", + "optional": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "multimatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", + "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "dev": true, + "requires": { + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" + } + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "nan": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", + "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "nise": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.8.tgz", + "integrity": "sha512-kGASVhuL4tlAV0tvA34yJYZIVihrUt/5bDwpp4tTluigxUr2bBlJeDXmivb6NuEdFkqvdv/Ybb9dm16PSKUhtw==", + "dev": true, + "requires": { + "@sinonjs/formatio": "^3.1.0", + "just-extend": "^4.0.2", + "lolex": "^2.3.2", + "path-to-regexp": "^1.7.0", + "text-encoding": "^0.6.4" + }, + "dependencies": { + "lolex": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", + "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", + "dev": true + } + } + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "requires": { + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "requires": { + "boolbase": "~1.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "nyc": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.1.0.tgz", + "integrity": "sha512-3GyY6TpQ58z9Frpv4GMExE1SV2tAgYqC7HSy2omEhNiCT3mhT9NyiOvIE8zkbuJVFzmvvNTnE4h/7/wQae7xLg==", + "dev": true, + "requires": { + "archy": "^1.0.0", + "arrify": "^1.0.1", + "caching-transform": "^2.0.0", + "convert-source-map": "^1.6.0", + "debug-log": "^1.0.1", + "find-cache-dir": "^2.0.0", + "find-up": "^3.0.0", + "foreground-child": "^1.5.6", + "glob": "^7.1.3", + "istanbul-lib-coverage": "^2.0.1", + "istanbul-lib-hook": "^2.0.1", + "istanbul-lib-instrument": "^3.0.0", + "istanbul-lib-report": "^2.0.2", + "istanbul-lib-source-maps": "^2.0.1", + "istanbul-reports": "^2.0.1", + "make-dir": "^1.3.0", + "merge-source-map": "^1.1.0", + "resolve-from": "^4.0.0", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "spawn-wrap": "^1.4.2", + "test-exclude": "^5.0.0", + "uuid": "^3.3.2", + "yargs": "11.1.0", + "yargs-parser": "^9.0.2" + }, + "dependencies": { + "align-text": { + "version": "0.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + } + }, + "amdefine": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "ansi-regex": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "append-transform": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "default-require-extensions": "^2.0.0" + } + }, + "archy": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "arrify": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "async": { + "version": "1.5.2", + "bundled": true, + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "builtin-modules": { + "version": "1.1.1", + "bundled": true, + "dev": true + }, + "caching-transform": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "make-dir": "^1.0.0", + "md5-hex": "^2.0.0", + "package-hash": "^2.0.0", + "write-file-atomic": "^2.0.0" + } + }, + "camelcase": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true + }, + "center-align": { + "version": "0.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + } + }, + "cliui": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.2", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "commondir": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "convert-source-map": { + "version": "1.6.0", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cross-spawn": { + "version": "4.0.2", + "bundled": true, + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "debug": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "debug-log": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "decamelize": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "default-require-extensions": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "strip-bom": "^3.0.0" + } + }, + "error-ex": { + "version": "1.3.2", + "bundled": true, + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es6-error": { + "version": "4.1.1", + "bundled": true, + "dev": true + }, + "execa": { + "version": "0.7.0", + "bundled": true, + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "bundled": true, + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } + } + }, + "find-cache-dir": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "foreground-child": { + "version": "1.5.6", + "bundled": true, + "dev": true, + "requires": { + "cross-spawn": "^4", + "signal-exit": "^3.0.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "get-caller-file": { + "version": "1.0.3", + "bundled": true, + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true, + "dev": true + }, + "handlebars": { + "version": "4.0.11", + "bundled": true, + "dev": true, + "requires": { + "async": "^1.4.0", + "optimist": "^0.6.1", + "source-map": "^0.4.4", + "uglify-js": "^2.6" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "bundled": true, + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "has-flag": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "hosted-git-info": { + "version": "2.7.1", + "bundled": true, + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "bundled": true, + "dev": true + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "invert-kv": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "is-arrayish": { + "version": "0.2.1", + "bundled": true, + "dev": true + }, + "is-buffer": { + "version": "1.1.6", + "bundled": true, + "dev": true, + "optional": true + }, + "is-builtin-module": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "builtin-modules": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "isexe": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "istanbul-lib-coverage": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "istanbul-lib-hook": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "append-transform": "^1.0.0" + } + }, + "istanbul-lib-report": { + "version": "2.0.2", + "bundled": true, + "dev": true, + "requires": { + "istanbul-lib-coverage": "^2.0.1", + "make-dir": "^1.3.0", + "supports-color": "^5.4.0" + } + }, + "istanbul-lib-source-maps": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "debug": "^3.1.0", + "istanbul-lib-coverage": "^2.0.1", + "make-dir": "^1.3.0", + "rimraf": "^2.6.2", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true + } + } + }, + "istanbul-reports": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "requires": { + "handlebars": "^4.0.11" + } + }, + "json-parse-better-errors": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "kind-of": { + "version": "3.2.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "lazy-cache": { + "version": "1.0.4", + "bundled": true, + "dev": true, + "optional": true + }, + "lcid": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "load-json-file": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash.flattendeep": { + "version": "4.4.0", + "bundled": true, + "dev": true + }, + "longest": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "lru-cache": { + "version": "4.1.3", + "bundled": true, + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "1.3.0", + "bundled": true, + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "md5-hex": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "md5-o-matic": { + "version": "0.1.1", + "bundled": true, + "dev": true + }, + "mem": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "merge-source-map": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true + } + } + }, + "mimic-fn": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.10", + "bundled": true, + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + } + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "normalize-package-data": { + "version": "2.4.0", + "bundled": true, + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "bundled": true, + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "optimist": { + "version": "0.6.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "os-locale": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" + } + }, + "p-finally": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "p-limit": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "package-hash": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "lodash.flattendeep": "^4.4.0", + "md5-hex": "^2.0.0", + "release-zalgo": "^1.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "path-exists": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "path-key": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "path-type": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "pseudomap": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "read-pkg": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + } + }, + "release-zalgo": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "es6-error": "^4.0.1" + } + }, + "repeat-string": { + "version": "1.6.1", + "bundled": true, + "dev": true, + "optional": true + }, + "require-directory": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "resolve-from": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "right-align": { + "version": "0.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "align-text": "^0.1.1" + } + }, + "rimraf": { + "version": "2.6.2", + "bundled": true, + "dev": true, + "requires": { + "glob": "^7.0.5" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true + }, + "semver": { + "version": "5.5.0", + "bundled": true, + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true + }, + "source-map": { + "version": "0.5.7", + "bundled": true, + "dev": true, + "optional": true + }, + "spawn-wrap": { + "version": "1.4.2", + "bundled": true, + "dev": true, + "requires": { + "foreground-child": "^1.5.6", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "which": "^1.3.0" + } + }, + "spdx-correct": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.1.0", + "bundled": true, + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "string-width": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "supports-color": { + "version": "5.4.0", + "bundled": true, + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "test-exclude": { + "version": "5.0.0", + "bundled": true, + "dev": true, + "requires": { + "arrify": "^1.0.1", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^1.0.1" + } + }, + "uglify-js": { + "version": "2.8.29", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" + }, + "dependencies": { + "yargs": { + "version": "3.10.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "uuid": { + "version": "3.3.2", + "bundled": true, + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.3", + "bundled": true, + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "which": { + "version": "1.3.1", + "bundled": true, + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "window-size": { + "version": "0.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "wordwrap": { + "version": "0.0.3", + "bundled": true, + "dev": true + }, + "wrap-ansi": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "write-file-atomic": { + "version": "2.3.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "y18n": { + "version": "3.2.1", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "2.1.2", + "bundled": true, + "dev": true + }, + "yargs": { + "version": "11.1.0", + "bundled": true, + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.1.1", + "find-up": "^2.1.0", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^9.0.2" + }, + "dependencies": { + "cliui": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "bundled": true, + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "bundled": true, + "dev": true + } + } + }, + "yargs-parser": { + "version": "9.0.2", + "bundled": true, + "dev": true, + "requires": { + "camelcase": "^4.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "bundled": true, + "dev": true + } + } + } + } + }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "requires": { + "isobject": "^3.0.0" + } + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "requires": { + "isobject": "^3.0.1" + } + }, + "observable-to-promise": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.5.0.tgz", + "integrity": "sha1-yCjw8NxH6fhq+KSXfF1VB2znqR8=", + "dev": true, + "requires": { + "is-observable": "^0.2.0", + "symbol-observable": "^1.0.4" + }, + "dependencies": { + "is-observable": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", + "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", + "dev": true, + "requires": { + "symbol-observable": "^0.2.2" + }, + "dependencies": { + "symbol-observable": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", + "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", + "dev": true + } + } + } + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "opn": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", + "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "opn-cli": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.0.0.tgz", + "integrity": "sha512-/NxjgPPxgYWAEznUwbvQd3H/vfMBRoIy8ZAvKNNgye2TbFE4pToVwmbi34Xo2rkmlfJIeWPa++zUSj4WBVGJxQ==", + "dev": true, + "requires": { + "file-type": "^10.4.0", + "get-stdin": "^6.0.0", + "meow": "^5.0.0", + "opn": "^5.4.0", + "temp-write": "^3.4.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", + "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0", + "yargs-parser": "^10.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + } + } + }, + "option-chain": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", + "integrity": "sha1-k41zvU4Xg/lI00AjZEraI2aeMPI=", + "dev": true + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-limit": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", + "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "package-hash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-2.0.0.tgz", + "integrity": "sha1-eK4ybIngWk2BO2hgGXevBcANKg0=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "lodash.flattendeep": "^4.4.0", + "md5-hex": "^2.0.0", + "release-zalgo": "^1.0.0" + } + }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, + "requires": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + } + }, + "parent-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.0.tgz", + "integrity": "sha512-8Mf5juOMmiE4FcmzYc4IaiS9L3+9paz2KOiXzkRviCP6aDmN49Hz6EMWz0lGNp9pX80GvvAuLADtyGfW/Em3TA==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse-ms": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", + "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", + "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=" + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "dev": true, + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + }, + "pinkie": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", + "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", + "dev": true + }, + "pinkie-promise": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", + "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", + "dev": true, + "requires": { + "pinkie": "^1.0.0" + } + }, + "pkg-conf": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", + "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "load-json-file": "^4.0.0" + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } + }, + "plur": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", + "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", + "dev": true, + "requires": { + "irregular-plurals": "^1.0.0" + } + }, + "pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", + "dev": true + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, + "pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" + }, + "pretty-ms": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.2.0.tgz", + "integrity": "sha512-ZypexbfVUGTFxb0v+m1bUyy92DHe5SyYlnyY0msyms5zd3RwyvNgyxZZsXXgoyzlxjx5MiqtXUdhUfvQbe0A2Q==", + "dev": true, + "requires": { + "parse-ms": "^1.0.0" + }, + "dependencies": { + "parse-ms": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", + "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", + "dev": true + } + } + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + }, + "quick-lru": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", + "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "dev": true + }, + "random-int": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", + "integrity": "sha1-5qLtNEisnGZGoGV0Q7HBUhWS7Qg=" + }, + "randomatic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz", + "integrity": "sha512-VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==", + "dev": true, + "requires": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "requires": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==" + } + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", + "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "minimatch": "^3.0.2", + "readable-stream": "^2.0.2", + "set-immediate-shim": "^1.0.1" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + }, + "dependencies": { + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + } + } + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "^0.1.3" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true + }, + "regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "dev": true, + "requires": { + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" + } + }, + "registry-auth-token": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", + "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", + "dev": true, + "requires": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true, + "requires": { + "rc": "^1.0.1" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + } + }, + "release-zalgo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "dev": true, + "requires": { + "es6-error": "^4.0.1" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", + "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "replacestream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", + "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", + "requires": { + "escape-string-regexp": "^1.0.3", + "object-assign": "^4.0.1", + "readable-stream": "^2.0.2" + } + }, + "request": { + "version": "2.87.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", + "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" + } + }, + "require-precompiled": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", + "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", + "dev": true + }, + "requizzle": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", + "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", + "dev": true, + "requires": { + "underscore": "~1.6.0" + }, + "dependencies": { + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", + "dev": true + } + } + }, + "resolve": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", + "requires": { + "path-parse": "^1.0.5" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + }, + "dependencies": { + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + } + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, + "rxjs": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" + }, + "semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "dev": true, + "requires": { + "semver": "^5.0.3" + } + }, + "serialize-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", + "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true + }, + "set-value": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "sinon": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.2.2.tgz", + "integrity": "sha512-WLagdMHiEsrRmee3jr6IIDntOF4kbI6N2pfbi8wkv50qaUQcBglkzkjtoOEbeJ2vf1EsrHhLI+5Ny8//WHdMoA==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.2.0", + "@sinonjs/formatio": "^3.1.0", + "@sinonjs/samsam": "^3.0.2", + "diff": "^3.5.0", + "lolex": "^3.0.0", + "nise": "^1.4.7", + "supports-color": "^5.5.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + }, + "slice-ansi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", + "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + } + } + }, + "slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "sort-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", + "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "dev": true, + "requires": { + "is-plain-obj": "^1.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", + "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, + "spdx-correct": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", + "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", + "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==" + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", + "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==" + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "sshpk": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", + "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.1.tgz", + "integrity": "sha1-1PM6tU6OOHeLDKXP07OvsS22hiA=", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + }, + "strip-bom-buf": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", + "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "dev": true, + "requires": { + "is-utf8": "^0.2.1" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "supertap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", + "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "indent-string": "^3.2.0", + "js-yaml": "^3.10.0", + "serialize-error": "^2.1.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "supports-color": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + } + } + }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "dev": true + }, + "table": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/table/-/table-5.2.1.tgz", + "integrity": "sha512-qmhNs2GEHNqY5fd2Mo+8N1r2sw/rvTAAvBZTaTx+Y7PHLypqyrxr1MdIu0pLw6Xvl/Gi4ONu/sdceP8vvUjkyA==", + "dev": true, + "requires": { + "ajv": "^6.6.1", + "lodash": "^4.17.11", + "slice-ansi": "2.0.0", + "string-width": "^2.1.1" + }, + "dependencies": { + "ajv": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.7.0.tgz", + "integrity": "sha512-RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, + "slice-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.0.0.tgz", + "integrity": "sha512-4j2WTWjp3GsZ+AOagyzVbzp4vWGtZ0hEZ/gDY/uTvm6MTxUfTUIsnMIFb1bn8o0RuXiqUw15H1bue8f22Vw2oQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "taffydb": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", + "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=", + "dev": true + }, + "tap-nyan": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", + "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "duplexer2": "^0.1.4", + "supports-color": "^3.1.2", + "tap-parser": "^3.0.3" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + } + } + }, + "tap-parser": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", + "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", + "dev": true, + "requires": { + "events-to-array": "^1.0.1", + "js-yaml": "^3.2.7", + "readable-stream": "^2" + } + }, + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true + }, + "temp-write": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz", + "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "is-stream": "^1.1.0", + "make-dir": "^1.0.0", + "pify": "^3.0.0", + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + } + }, + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, + "requires": { + "execa": "^0.7.0" + } + }, + "text-encoding": { + "version": "0.6.4", + "resolved": "http://registry.npmjs.org/text-encoding/-/text-encoding-0.6.4.tgz", + "integrity": "sha1-45mpgiV6J22uQou5KEXLcb3CbRk=", + "dev": true + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, + "requires": { + "readable-stream": "^2.1.5", + "xtend": "~4.0.1" + } + }, + "time-zone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", + "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", + "dev": true + }, + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "tough-cookie": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", + "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "requires": { + "punycode": "^1.4.1" + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "trim-off-newlines": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", + "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "optional": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "uid2": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", + "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", + "dev": true + }, + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", + "dev": true + }, + "underscore-contrib": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", + "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", + "dev": true, + "requires": { + "underscore": "1.6.0" + }, + "dependencies": { + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", + "dev": true + } + } + }, + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" + } + } + } + }, + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, + "requires": { + "crypto-random-string": "^1.0.0" + } + }, + "unique-temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", + "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", + "dev": true, + "requires": { + "mkdirp": "^0.5.1", + "os-tmpdir": "^1.0.1", + "uid2": "0.0.3" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + } + } + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + } + } + }, + "unzip-response": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "dev": true + }, + "update-notifier": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", + "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "dev": true, + "requires": { + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-ci": "^1.0.10", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + }, + "dependencies": { + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + } + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "requires": { + "prepend-http": "^1.0.1" + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "uuid": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", + "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==" + }, + "validate-npm-package-license": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", + "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "well-known-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-1.0.0.tgz", + "integrity": "sha1-c8eK6Bp3Jqj6WY4ogIAcixYiVRg=", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "widest-line": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz", + "integrity": "sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM=", + "dev": true, + "requires": { + "string-width": "^2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", + "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", + "dev": true, + "requires": { + "mkdirp": "^0.5.1" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + } + } + }, + "write-file-atomic": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", + "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "write-json-file": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", + "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", + "dev": true, + "requires": { + "detect-indent": "^5.0.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "pify": "^3.0.0", + "sort-keys": "^2.0.0", + "write-file-atomic": "^2.0.0" + }, + "dependencies": { + "detect-indent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", + "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", + "dev": true + } + } + }, + "write-pkg": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.1.0.tgz", + "integrity": "sha1-AwqZlMyZk9JbTnWp8aGSNgcpHOk=", + "dev": true, + "requires": { + "sort-keys": "^2.0.0", + "write-json-file": "^2.2.0" + } + }, + "xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true + }, + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" + } + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + }, + "xmlcreate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", + "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=", + "dev": true + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + } + } + }, + "yazl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", + "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", + "requires": { + "buffer-crc32": "~0.2.3" + } + } + } } diff --git a/packages/project/package.json b/packages/project/package.json index 47078a6f5be..b5559a0ffcc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -108,7 +108,7 @@ "docdash": "^1.0.2", "eslint": "^5.12.1", "eslint-config-google": "^0.11.0", - "eslint-plugin-jsdoc": "^3.15.1", + "eslint-plugin-jsdoc": "^4.0.1", "jsdoc": "^3.5.5", "nyc": "^13.1.0", "opn-cli": "^4.0.0", From 850a58c23e3ba9b3a62f127d721ab1cb37d9bc6f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 23 Jan 2019 11:51:09 +0000 Subject: [PATCH 0133/1272] [ui5-project]Bump sinon from 7.2.2 to 7.2.3 Bumps [sinon](https://github.com/sinonjs/sinon) from 7.2.2 to 7.2.3. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md) - [Commits](https://github.com/sinonjs/sinon/compare/v7.2.2...v7.2.3) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f790c753923..de0866c4628 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -7487,17 +7487,17 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, "sinon": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.2.2.tgz", - "integrity": "sha512-WLagdMHiEsrRmee3jr6IIDntOF4kbI6N2pfbi8wkv50qaUQcBglkzkjtoOEbeJ2vf1EsrHhLI+5Ny8//WHdMoA==", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.2.3.tgz", + "integrity": "sha512-i6j7sqcLEqTYqUcMV327waI745VASvYuSuQMCjbAwlpAeuCgKZ3LtrjDxAbu+GjNQR0FEDpywtwGCIh8GicNyg==", "dev": true, "requires": { - "@sinonjs/commons": "^1.2.0", + "@sinonjs/commons": "^1.3.0", "@sinonjs/formatio": "^3.1.0", "@sinonjs/samsam": "^3.0.2", "diff": "^3.5.0", "lolex": "^3.0.0", - "nise": "^1.4.7", + "nise": "^1.4.8", "supports-color": "^5.5.0" }, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index b5559a0ffcc..5efd20c8b6d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -113,7 +113,7 @@ "nyc": "^13.1.0", "opn-cli": "^4.0.0", "rimraf": "^2.6.3", - "sinon": "^7.2.2", + "sinon": "^7.2.3", "tap-nyan": "^1.1.0" } } From 63500613d626e3148e52cab6e518d8c46c7773e7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Fri, 1 Feb 2019 13:09:29 +0100 Subject: [PATCH 0134/1272] [ui5-project][DEPENDENCY] Bump @ui5/builder from 1.0.0 to 1.0.1 (#113) Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 1.0.0 to 1.0.1.
Release notes *Sourced from [@ui5/builder's releases](https://github.com/SAP/ui5-builder/releases).* > ## v1.0.1 > > ### Dependency Updates > - Bump [[**ui5**](https://github.com/ui5)](https://github.com/ui5)/fs from 1.0.0 to 1.0.1 [`55ab125`](https://github.com/SAP/ui5-builder/commit/55ab125e60c138a5a419cae1064590e5e535d893) > > > ### All changes > [`v1.0.0...v1.0.1`] > > > [`v1.0.0...v1.0.1`]: https://github.com/SAP/ui5-builder/compare/v1.0.0...v1.0.1
Changelog *Sourced from [@ui5/builder's changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md).* > ## [v1.0.1] - 2019-02-01 > ### Dependency Updates > - Bump [[**ui5**](https://github.com/ui5)](https://github.com/ui5)/fs from 1.0.0 to 1.0.1 [`55ab125`](https://github.com/SAP/ui5-builder/commit/55ab125e60c138a5a419cae1064590e5e535d893) > > >
Commits - [`574b763`](https://github.com/SAP/ui5-builder/commit/574b7636f24f3e39f6557680b3e4edb6cb51d5de) Release 1.0.1 - [`55ab125`](https://github.com/SAP/ui5-builder/commit/55ab125e60c138a5a419cae1064590e5e535d893) [DEPENDENCY] Bump @ui5/fs from 1.0.0 to 1.0.1 - [`adfd286`](https://github.com/SAP/ui5-builder/commit/adfd286baf32f6dd0100d18cb9a818d6e19482dd) [INTERNAL] Test fixtures: Remove unused and wrong componentPreload configuration - [`cb36f02`](https://github.com/SAP/ui5-builder/commit/cb36f02b0ecf72a4e6a58cdacb27d65e1637c2a5) Bump mock-require from 3.0.2 to 3.0.3 - [`ba73748`](https://github.com/SAP/ui5-builder/commit/ba73748b879464871de8652e8ac698d6e1c9a1d6) Bump sinon from 7.2.2 to 7.2.3 - [`2bbab27`](https://github.com/SAP/ui5-builder/commit/2bbab27a0e0831e4943a7735b511ceeacd950b0f) Bump eslint-plugin-jsdoc from 3.15.1 to 4.0.1 - [`ec8fd8f`](https://github.com/SAP/ui5-builder/commit/ec8fd8fb588f65d5831ca8f0425c64d87671a53e) Bump eslint from 5.12.0 to 5.12.1 - [`83028b5`](https://github.com/SAP/ui5-builder/commit/83028b5245dd6b520556c2cee879aa93a5208ecf) [INTERNAL] ApplicationBuilder: Add test for projects without namespace - [`a83b034`](https://github.com/SAP/ui5-builder/commit/a83b0343dfd6b13df8698dcae3f2be03cff8b53e) [INTERNAL] generateStandaloneAppBundle: Add unit tests - [`184fe52`](https://github.com/SAP/ui5-builder/commit/184fe520c0a844577649fb9821c74be98cfb73a7) [INTERNAL] Improve handling of apps with no namespace configuration - Additional commits viewable in [compare view](https://github.com/SAP/ui5-builder/compare/v1.0.0...v1.0.1)

[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=@ui5/builder&package-manager=npm_and_yarn&previous-version=1.0.0&new-version=1.0.1)](https://dependabot.com/compatibility-score.html?dependency-name=@ui5/builder&package-manager=npm_and_yarn&previous-version=1.0.0&new-version=1.0.1) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot ignore this [patch|minor|major] version` will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Automerge options (never/patch/minor, and dev/runtime dependencies) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) Finally, you can contact us by mentioning @dependabot.
--- packages/project/package-lock.json | 20 ++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index de0866c4628..bc668df0f1c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -310,11 +310,11 @@ } }, "@ui5/builder": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.0.tgz", - "integrity": "sha512-bhOSjo4TtDhbppzXfl3XPOKrBFXT+aPxpeuGW7POZI8E4CHp9GDG8gz9fAxNP9TdN4kArPnHbBd3BGD02Y4nwQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.1.tgz", + "integrity": "sha512-XxlDqwL8oTxpXsSlnI5H20pM/lIYdOC8jP/QQc3rOF6sIaj92Mw/xFnBIWmqriqUEjnBtOvfqvPpoyO6WJzaXw==", "requires": { - "@ui5/fs": "^1.0.0", + "@ui5/fs": "^1.0.1", "@ui5/logger": "^1.0.0", "cheerio": "^0.22.0", "escodegen": "^1.11.0", @@ -341,9 +341,9 @@ } }, "@ui5/fs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.0.tgz", - "integrity": "sha512-Zn4/wcV9Jk8+GUJbWE1ML1j716geZBf0DM/yT4aGAkklDtmv7rJKglFuEOf6iDFGfMiJ+ja9kh/IhzdVhbEKUQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.1.tgz", + "integrity": "sha512-Ic/D1KFVZTbkOEBfwlmMzEFfmxIK9krcczsWVxvQ4xv8TNGqaaz1i4KBVYvM7h7VVMTNLPiHUnKvIyyQkdTa7Q==", "requires": { "@ui5/logger": "^1.0.0", "clone": "^2.1.0", @@ -2400,9 +2400,9 @@ } }, "es5-ext": { - "version": "0.10.46", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.46.tgz", - "integrity": "sha512-24XxRvJXNFwEMpJb3nOkiRJKRoupmjYmOPVlI65Qy2SrtxwOTB+g6ODjBKOtwEHbYrhWRty9xxOWLNdClT2djw==", + "version": "0.10.47", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.47.tgz", + "integrity": "sha512-/1TItLfj+TTfWoeRcDn/0FbGV6SNo4R+On2GGVucPU/j3BWnXE2Co8h8CTo4Tu34gFJtnmwS9xiScKs4EjZhdw==", "requires": { "es6-iterator": "~2.0.3", "es6-symbol": "~3.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index 5efd20c8b6d..5a6c7dd02df 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.0.0", + "@ui5/builder": "^1.0.1", "@ui5/logger": "^1.0.0", "graceful-fs": "^4.1.15", "js-yaml": "^3.12.1", From 84c0b7c94382796ae655b8091d61ad8422229423 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 5 Feb 2019 06:29:03 +0000 Subject: [PATCH 0135/1272] [ui5-project]Bump nyc from 13.1.0 to 13.2.0 Bumps [nyc](https://github.com/istanbuljs/nyc) from 13.1.0 to 13.2.0. - [Release notes](https://github.com/istanbuljs/nyc/releases) - [Changelog](https://github.com/istanbuljs/nyc/blob/master/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/nyc/compare/v13.1.0...v13.2.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 512 +++++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 202 insertions(+), 312 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bc668df0f1c..85406a313b1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -81,12 +81,12 @@ } }, "@babel/generator": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.1.5.tgz", - "integrity": "sha512-IO31r62xfMI+wBJVmgx0JR9ZOHty8HkoYpQAjRWUGG9vykBTlGHdArZ8zoFtpUu2gs17K7qTl/TtPpiSi6t+MA==", + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.3.2.tgz", + "integrity": "sha512-f3QCuPppXxtZOEm5GWPra/uYUjmNQlu9pbAD8D/9jze4pTY83rTtB1igTBSwvkeNlC5gR24zFFkz+2WHLFQhqQ==", "dev": true, "requires": { - "@babel/types": "^7.1.5", + "@babel/types": "^7.3.2", "jsesc": "^2.5.1", "lodash": "^4.17.10", "source-map": "^0.5.0", @@ -150,52 +150,52 @@ } }, "@babel/parser": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.5.tgz", - "integrity": "sha512-WXKf5K5HT6X0kKiCOezJZFljsfxKV1FpU8Tf1A7ZpGvyd/Q4hlrJm2EwoH2onaUq3O4tLDp+4gk0hHPsMyxmOg==", + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.3.2.tgz", + "integrity": "sha512-QzNUC2RO1gadg+fs21fi0Uu0OuGNzRKEmgCxoLNzbCdoprLwjfmZwzUrpUNfJPaVRwBpDY47A17yYEGWyRelnQ==", "dev": true }, "@babel/template": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.1.2.tgz", - "integrity": "sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.2.2.tgz", + "integrity": "sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.1.2", - "@babel/types": "^7.1.2" + "@babel/parser": "^7.2.2", + "@babel/types": "^7.2.2" } }, "@babel/traverse": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.5.tgz", - "integrity": "sha512-eU6XokWypl0MVJo+MTSPUtlfPePkrqsF26O+l1qFGlCKWwmiYAYy2Sy44Qw8m2u/LbPCsxYt90rghmqhYMGpPA==", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.2.3.tgz", + "integrity": "sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.1.5", + "@babel/generator": "^7.2.2", "@babel/helper-function-name": "^7.1.0", "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/parser": "^7.1.5", - "@babel/types": "^7.1.5", - "debug": "^3.1.0", + "@babel/parser": "^7.2.3", + "@babel/types": "^7.2.2", + "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.10" }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { "ms": "^2.1.1" } }, "globals": { - "version": "11.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.9.0.tgz", - "integrity": "sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==", + "version": "11.10.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.10.0.tgz", + "integrity": "sha512-0GZF1RiPKU97IHUO5TORo9w1PwrH/NBPl+fS7oMLdaTRiYmYbwK4NWoZWrAdd0/abG9R2BU+OiwyQpTpE6pdfQ==", "dev": true }, "ms": { @@ -207,9 +207,9 @@ } }, "@babel/types": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.1.5.tgz", - "integrity": "sha512-sJeqa/d9eM/bax8Ivg+fXF7FpN3E/ZmTrWbkk6r+g7biVYfALMnLin4dKijsaqEhpd2xvOGfQTkQkD31YCVV4A==", + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.3.2.tgz", + "integrity": "sha512-3Y6H8xlUlpbGR+XvawiH0UXehqydTmNmEpozWcXymqwcrwYAl5KMvKtQ+TF6f6E08V6Jur7v/ykdDSF+WDEIXQ==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -4456,15 +4456,15 @@ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, "istanbul-lib-coverage": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", - "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==", "dev": true }, "istanbul-lib-instrument": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.0.0.tgz", - "integrity": "sha512-eQY9vN9elYjdgN9Iv6NS/00bptm02EBBk70lRMaVjeA6QYocQgenVrSgC28TJurdnZa80AGO3ASdFN+w/njGiQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.1.0.tgz", + "integrity": "sha512-ooVllVGT38HIk8MxDj/OIHXSYvH+1tq/Vb38s8ixt9GoJadXska4WkGY+0wkmtYCZNYtaARniH/DixUGGLZ0uA==", "dev": true, "requires": { "@babel/generator": "^7.0.0", @@ -4472,7 +4472,7 @@ "@babel/template": "^7.0.0", "@babel/traverse": "^7.0.0", "@babel/types": "^7.0.0", - "istanbul-lib-coverage": "^2.0.1", + "istanbul-lib-coverage": "^2.0.3", "semver": "^5.5.0" } }, @@ -5300,54 +5300,37 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.1.0.tgz", - "integrity": "sha512-3GyY6TpQ58z9Frpv4GMExE1SV2tAgYqC7HSy2omEhNiCT3mhT9NyiOvIE8zkbuJVFzmvvNTnE4h/7/wQae7xLg==", + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.2.0.tgz", + "integrity": "sha512-gQBlOqvfpYt9b2PZ7qElrHWt8x4y8ApNfbMBoDPdl3sY4/4RJwCxDGTSqhA9RnaguZjS5nW7taW8oToe86JLgQ==", "dev": true, "requires": { "archy": "^1.0.0", "arrify": "^1.0.1", - "caching-transform": "^2.0.0", + "caching-transform": "^3.0.1", "convert-source-map": "^1.6.0", - "debug-log": "^1.0.1", "find-cache-dir": "^2.0.0", "find-up": "^3.0.0", "foreground-child": "^1.5.6", "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.1", - "istanbul-lib-hook": "^2.0.1", - "istanbul-lib-instrument": "^3.0.0", - "istanbul-lib-report": "^2.0.2", - "istanbul-lib-source-maps": "^2.0.1", - "istanbul-reports": "^2.0.1", + "istanbul-lib-coverage": "^2.0.3", + "istanbul-lib-hook": "^2.0.3", + "istanbul-lib-instrument": "^3.0.1", + "istanbul-lib-report": "^2.0.4", + "istanbul-lib-source-maps": "^3.0.2", + "istanbul-reports": "^2.1.0", "make-dir": "^1.3.0", "merge-source-map": "^1.1.0", "resolve-from": "^4.0.0", - "rimraf": "^2.6.2", + "rimraf": "^2.6.3", "signal-exit": "^3.0.2", "spawn-wrap": "^1.4.2", - "test-exclude": "^5.0.0", + "test-exclude": "^5.1.0", "uuid": "^3.3.2", - "yargs": "11.1.0", - "yargs-parser": "^9.0.2" + "yargs": "^12.0.5", + "yargs-parser": "^11.1.1" }, "dependencies": { - "align-text": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" - } - }, - "amdefine": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, "ansi-regex": { "version": "3.0.0", "bundled": true, @@ -5372,9 +5355,12 @@ "dev": true }, "async": { - "version": "1.5.2", + "version": "2.6.1", "bundled": true, - "dev": true + "dev": true, + "requires": { + "lodash": "^4.17.10" + } }, "balanced-match": { "version": "1.0.0", @@ -5396,49 +5382,29 @@ "dev": true }, "caching-transform": { - "version": "2.0.0", + "version": "3.0.1", "bundled": true, "dev": true, "requires": { - "make-dir": "^1.0.0", - "md5-hex": "^2.0.0", - "package-hash": "^2.0.0", - "write-file-atomic": "^2.0.0" + "hasha": "^3.0.0", + "make-dir": "^1.3.0", + "package-hash": "^3.0.0", + "write-file-atomic": "^2.3.0" } }, "camelcase": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true - }, - "center-align": { - "version": "0.1.3", + "version": "5.0.0", "bundled": true, - "dev": true, - "optional": true, - "requires": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" - } + "dev": true }, "cliui": { - "version": "2.1.0", + "version": "4.1.0", "bundled": true, "dev": true, - "optional": true, "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - }, - "dependencies": { - "wordwrap": { - "version": "0.0.2", - "bundled": true, - "dev": true, - "optional": true - } + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" } }, "code-point-at": { @@ -5446,6 +5412,12 @@ "bundled": true, "dev": true }, + "commander": { + "version": "2.17.1", + "bundled": true, + "dev": true, + "optional": true + }, "commondir": { "version": "1.0.1", "bundled": true, @@ -5474,18 +5446,13 @@ } }, "debug": { - "version": "3.1.0", + "version": "4.1.1", "bundled": true, "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, - "debug-log": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, "decamelize": { "version": "1.2.0", "bundled": true, @@ -5499,6 +5466,14 @@ "strip-bom": "^3.0.0" } }, + "end-of-stream": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, "error-ex": { "version": "1.3.2", "bundled": true, @@ -5513,12 +5488,12 @@ "dev": true }, "execa": { - "version": "0.7.0", + "version": "1.0.0", "bundled": true, "dev": true, "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", "is-stream": "^1.1.0", "npm-run-path": "^2.0.0", "p-finally": "^1.0.0", @@ -5527,11 +5502,13 @@ }, "dependencies": { "cross-spawn": { - "version": "5.1.0", + "version": "6.0.5", "bundled": true, "dev": true, "requires": { - "lru-cache": "^4.0.1", + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", "shebang-command": "^1.2.0", "which": "^1.2.9" } @@ -5576,9 +5553,12 @@ "dev": true }, "get-stream": { - "version": "3.0.0", + "version": "4.1.0", "bundled": true, - "dev": true + "dev": true, + "requires": { + "pump": "^3.0.0" + } }, "glob": { "version": "7.1.3", @@ -5594,28 +5574,25 @@ } }, "graceful-fs": { - "version": "4.1.11", + "version": "4.1.15", "bundled": true, "dev": true }, "handlebars": { - "version": "4.0.11", + "version": "4.0.12", "bundled": true, "dev": true, "requires": { - "async": "^1.4.0", + "async": "^2.5.0", "optimist": "^0.6.1", - "source-map": "^0.4.4", - "uglify-js": "^2.6" + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" }, "dependencies": { "source-map": { - "version": "0.4.4", + "version": "0.6.1", "bundled": true, - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } + "dev": true } } }, @@ -5624,6 +5601,14 @@ "bundled": true, "dev": true }, + "hasha": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "is-stream": "^1.0.1" + } + }, "hosted-git-info": { "version": "2.7.1", "bundled": true, @@ -5649,7 +5634,7 @@ "dev": true }, "invert-kv": { - "version": "1.0.0", + "version": "2.0.0", "bundled": true, "dev": true }, @@ -5658,12 +5643,6 @@ "bundled": true, "dev": true }, - "is-buffer": { - "version": "1.1.6", - "bundled": true, - "dev": true, - "optional": true - }, "is-builtin-module": { "version": "1.0.0", "bundled": true, @@ -5688,12 +5667,12 @@ "dev": true }, "istanbul-lib-coverage": { - "version": "2.0.1", + "version": "2.0.3", "bundled": true, "dev": true }, "istanbul-lib-hook": { - "version": "2.0.1", + "version": "2.0.3", "bundled": true, "dev": true, "requires": { @@ -5701,22 +5680,32 @@ } }, "istanbul-lib-report": { - "version": "2.0.2", + "version": "2.0.4", "bundled": true, "dev": true, "requires": { - "istanbul-lib-coverage": "^2.0.1", + "istanbul-lib-coverage": "^2.0.3", "make-dir": "^1.3.0", - "supports-color": "^5.4.0" + "supports-color": "^6.0.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "bundled": true, + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, "istanbul-lib-source-maps": { - "version": "2.0.1", + "version": "3.0.2", "bundled": true, "dev": true, "requires": { - "debug": "^3.1.0", - "istanbul-lib-coverage": "^2.0.1", + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.3", "make-dir": "^1.3.0", "rimraf": "^2.6.2", "source-map": "^0.6.1" @@ -5730,7 +5719,7 @@ } }, "istanbul-reports": { - "version": "2.0.1", + "version": "2.1.0", "bundled": true, "dev": true, "requires": { @@ -5742,27 +5731,12 @@ "bundled": true, "dev": true }, - "kind-of": { - "version": "3.2.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "lazy-cache": { - "version": "1.0.4", - "bundled": true, - "dev": true, - "optional": true - }, "lcid": { - "version": "1.0.0", + "version": "2.0.0", "bundled": true, "dev": true, "requires": { - "invert-kv": "^1.0.0" + "invert-kv": "^2.0.0" } }, "load-json-file": { @@ -5785,19 +5759,18 @@ "path-exists": "^3.0.0" } }, - "lodash.flattendeep": { - "version": "4.4.0", + "lodash": { + "version": "4.17.11", "bundled": true, "dev": true }, - "longest": { - "version": "1.0.1", + "lodash.flattendeep": { + "version": "4.4.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "lru-cache": { - "version": "4.1.3", + "version": "4.1.5", "bundled": true, "dev": true, "requires": { @@ -5813,25 +5786,22 @@ "pify": "^3.0.0" } }, - "md5-hex": { - "version": "2.0.0", + "map-age-cleaner": { + "version": "0.1.3", "bundled": true, "dev": true, "requires": { - "md5-o-matic": "^0.1.1" + "p-defer": "^1.0.0" } }, - "md5-o-matic": { - "version": "0.1.1", - "bundled": true, - "dev": true - }, "mem": { - "version": "1.1.0", + "version": "4.0.0", "bundled": true, "dev": true, "requires": { - "mimic-fn": "^1.0.0" + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^1.0.0", + "p-is-promise": "^1.1.0" } }, "merge-source-map": { @@ -5883,7 +5853,12 @@ } }, "ms": { - "version": "2.0.0", + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "nice-try": { + "version": "1.0.5", "bundled": true, "dev": true }, @@ -5934,22 +5909,32 @@ "dev": true }, "os-locale": { - "version": "2.1.0", + "version": "3.1.0", "bundled": true, "dev": true, "requires": { - "execa": "^0.7.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" } }, + "p-defer": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, "p-finally": { "version": "1.0.0", "bundled": true, "dev": true }, + "p-is-promise": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, "p-limit": { - "version": "2.0.0", + "version": "2.1.0", "bundled": true, "dev": true, "requires": { @@ -5970,13 +5955,13 @@ "dev": true }, "package-hash": { - "version": "2.0.0", + "version": "3.0.0", "bundled": true, "dev": true, "requires": { - "graceful-fs": "^4.1.11", + "graceful-fs": "^4.1.15", + "hasha": "^3.0.0", "lodash.flattendeep": "^4.4.0", - "md5-hex": "^2.0.0", "release-zalgo": "^1.0.0" } }, @@ -6030,6 +6015,15 @@ "bundled": true, "dev": true }, + "pump": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, "read-pkg": { "version": "3.0.0", "bundled": true, @@ -6057,12 +6051,6 @@ "es6-error": "^4.0.1" } }, - "repeat-string": { - "version": "1.6.1", - "bundled": true, - "dev": true, - "optional": true - }, "require-directory": { "version": "2.1.1", "bundled": true, @@ -6078,21 +6066,12 @@ "bundled": true, "dev": true }, - "right-align": { - "version": "0.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "align-text": "^0.1.1" - } - }, "rimraf": { - "version": "2.6.2", + "version": "2.6.3", "bundled": true, "dev": true, "requires": { - "glob": "^7.0.5" + "glob": "^7.1.3" } }, "safe-buffer": { @@ -6101,7 +6080,7 @@ "dev": true }, "semver": { - "version": "5.5.0", + "version": "5.6.0", "bundled": true, "dev": true }, @@ -6128,12 +6107,6 @@ "bundled": true, "dev": true }, - "source-map": { - "version": "0.5.7", - "bundled": true, - "dev": true, - "optional": true - }, "spawn-wrap": { "version": "1.4.2", "bundled": true, @@ -6148,7 +6121,7 @@ } }, "spdx-correct": { - "version": "3.0.0", + "version": "3.1.0", "bundled": true, "dev": true, "requires": { @@ -6157,7 +6130,7 @@ } }, "spdx-exceptions": { - "version": "2.1.0", + "version": "2.2.0", "bundled": true, "dev": true }, @@ -6171,7 +6144,7 @@ } }, "spdx-license-ids": { - "version": "3.0.0", + "version": "3.0.3", "bundled": true, "dev": true }, @@ -6202,16 +6175,8 @@ "bundled": true, "dev": true }, - "supports-color": { - "version": "5.4.0", - "bundled": true, - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, "test-exclude": { - "version": "5.0.0", + "version": "5.1.0", "bundled": true, "dev": true, "requires": { @@ -6222,43 +6187,30 @@ } }, "uglify-js": { - "version": "2.8.29", + "version": "3.4.9", "bundled": true, "dev": true, "optional": true, "requires": { - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" + "commander": "~2.17.1", + "source-map": "~0.6.1" }, "dependencies": { - "yargs": { - "version": "3.10.0", + "source-map": { + "version": "0.6.1", "bundled": true, "dev": true, - "optional": true, - "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } + "optional": true } } }, - "uglify-to-browserify": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, "uuid": { "version": "3.3.2", "bundled": true, "dev": true }, "validate-npm-package-license": { - "version": "3.0.3", + "version": "3.0.4", "bundled": true, "dev": true, "requires": { @@ -6279,12 +6231,6 @@ "bundled": true, "dev": true }, - "window-size": { - "version": "0.1.0", - "bundled": true, - "dev": true, - "optional": true - }, "wordwrap": { "version": "0.0.3", "bundled": true, @@ -6338,7 +6284,7 @@ "dev": true }, "write-file-atomic": { - "version": "2.3.0", + "version": "2.4.2", "bundled": true, "dev": true, "requires": { @@ -6348,7 +6294,7 @@ } }, "y18n": { - "version": "3.2.1", + "version": "4.0.0", "bundled": true, "dev": true }, @@ -6358,87 +6304,31 @@ "dev": true }, "yargs": { - "version": "11.1.0", + "version": "12.0.5", "bundled": true, "dev": true, "requires": { "cliui": "^4.0.0", - "decamelize": "^1.1.1", - "find-up": "^2.1.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", "get-caller-file": "^1.0.1", - "os-locale": "^2.0.0", + "os-locale": "^3.0.0", "require-directory": "^2.1.1", "require-main-filename": "^1.0.1", "set-blocking": "^2.0.0", "string-width": "^2.0.0", "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^9.0.2" - }, - "dependencies": { - "cliui": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "bundled": true, - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "bundled": true, - "dev": true - } + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" } }, "yargs-parser": { - "version": "9.0.2", + "version": "11.1.1", "bundled": true, "dev": true, "requires": { - "camelcase": "^4.1.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "bundled": true, - "dev": true - } + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } } } diff --git a/packages/project/package.json b/packages/project/package.json index 5a6c7dd02df..e56c94a7148 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -110,7 +110,7 @@ "eslint-config-google": "^0.11.0", "eslint-plugin-jsdoc": "^4.0.1", "jsdoc": "^3.5.5", - "nyc": "^13.1.0", + "nyc": "^13.2.0", "opn-cli": "^4.0.0", "rimraf": "^2.6.3", "sinon": "^7.2.3", From 10355579aabf68df3749259cc9f06ce65979e1f0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 4 Feb 2019 19:29:44 +0100 Subject: [PATCH 0136/1272] [ui5-project][INTERNAL] Configuration docs: Clarify resources configuration --- packages/project/docs/Configuration.md | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index a08031a1d2a..1e619bd6f66 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -70,9 +70,15 @@ Some general information: #### resources (optional) - `configuration` - `paths`: Mapping between virtual paths and physical paths. Physical paths are always relative to the projects root directory - + For projects of type `application` a "webapp" path can be configured that will be mapped to the virtual path `/`. By default this is mapped to `webpp` - + For projects of type `library` a "src" as well as a "test" path can be configured. They will be mapped to the virtual paths `/resources` and `/test-resources`. By default these paths are mapped to `src` and `test` - + For type `module`, any kind (and number) of mappings can be configured freely. The key will be used as the virtual path. By default, the projects root directory is mapped to the virtual directory `/`. It is recommended that libraries include their namespace in the virtual path and use the `/resources` prefix (e.g. `/resources/my/first/library/module-xy`). + + `webapp: webapp`: This path will be mapped to the virtual path `/`. + *(Only available for projects of type `application`)* + + `src: src`: This path will be mapped to the virtual path `/resources`. + *(Only available for projects of type `library`)* + + `test: test`: This path will be mapped to the virtual path `/test-resources`. + *(Only available for projects of type `library`)* + + `: ` (default `/: ./`): Any virtual path mapping can be defined here. + *(Only available for projects of type `module`)* + It is recommended that modules include their namespace in the virtual path and use the `/resources` prefix (e.g. `/resources/my/first/library/module-xy`). #### builder (optional) - `customTasks` (optional, list): In this block, you define additional custom build tasks, see [here](./BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: From 761afd279f24a35c7736ca14a7ca241a495daee5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 5 Feb 2019 09:23:52 +0000 Subject: [PATCH 0137/1272] [ui5-project]Bump eslint from 5.12.1 to 5.13.0 Bumps [eslint](https://github.com/eslint/eslint) from 5.12.1 to 5.13.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.12.1...v5.13.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 90 ++++++++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 54 insertions(+), 38 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 85406a313b1..37d4f79440e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -366,9 +366,9 @@ } }, "acorn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.5.tgz", - "integrity": "sha512-i33Zgp3XWtmZBMNvCr4azvOFeWVw1Rk6p3hfi3LUDvIFraOMywb1kAtrbi+med14m4Xfpqm3zRZMT+c0FNE7kg==", + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.7.tgz", + "integrity": "sha512-HNJNgE60C9eOTgn974Tlp3dpLZdUr+SoxxDwPaY9J/kDNOLQTkaDgwBUXAF4SSsrAwD9RpdxuHK/EbuF+W9Ahw==", "dev": true }, "acorn-jsx": { @@ -2512,9 +2512,9 @@ } }, "eslint": { - "version": "5.12.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.12.1.tgz", - "integrity": "sha512-54NV+JkTpTu0d8+UYSA8mMKAG4XAsaOrozA9rCW7tgneg1mevcL7wIotPC+fZ0SkWwdhNqoXoxnQCTBp7UvTsg==", + "version": "5.13.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.13.0.tgz", + "integrity": "sha512-nqD5WQMisciZC5EHZowejLKQjWGuFS5c70fxqSKlnDME+oz9zmE8KTlX+lHSg+/5wsC/kf9Q9eMkC8qS3oM2fg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2546,7 +2546,6 @@ "natural-compare": "^1.4.0", "optionator": "^0.8.2", "path-is-inside": "^1.0.2", - "pluralize": "^7.0.0", "progress": "^2.0.0", "regexpp": "^2.0.1", "semver": "^5.5.1", @@ -2557,9 +2556,9 @@ }, "dependencies": { "ajv": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.7.0.tgz", - "integrity": "sha512-RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg==", + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.8.1.tgz", + "integrity": "sha512-eqxCp82P+JfqL683wwsL73XmFs1eG6qjw+RD3YHx+Jll1r0jNd4dh8QG9NYAeNGA/hnZjeEDgtTskgJULbxpWQ==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -4058,38 +4057,61 @@ "dev": true }, "inquirer": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.1.tgz", - "integrity": "sha512-088kl3DRT2dLU5riVMKKr1DlImd6X7smDhpXUCkJDCKvTEJeRiXh0G132HG9u5a+6Ylw9plFRY7RuTnwohYSpg==", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.2.tgz", + "integrity": "sha512-Z2rREiXA6cHRR9KBOarR3WuLlFzlIfAEIiB45ll5SSadMg7WqOh1MKEjjndfuH5ewXdixWCxqnVfGOQzPeiztA==", "dev": true, "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", "cli-cursor": "^2.1.0", "cli-width": "^2.0.0", - "external-editor": "^3.0.0", + "external-editor": "^3.0.3", "figures": "^2.0.0", - "lodash": "^4.17.10", + "lodash": "^4.17.11", "mute-stream": "0.0.7", "run-async": "^2.2.0", - "rxjs": "^6.1.0", + "rxjs": "^6.4.0", "string-width": "^2.1.0", "strip-ansi": "^5.0.0", "through": "^2.3.6" }, "dependencies": { + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true + }, "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -6776,12 +6798,6 @@ "irregular-plurals": "^1.0.0" } }, - "pluralize": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", - "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", - "dev": true - }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -7273,9 +7289,9 @@ } }, "rxjs": { - "version": "6.3.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", - "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.4.0.tgz", + "integrity": "sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -7779,21 +7795,21 @@ "dev": true }, "table": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/table/-/table-5.2.1.tgz", - "integrity": "sha512-qmhNs2GEHNqY5fd2Mo+8N1r2sw/rvTAAvBZTaTx+Y7PHLypqyrxr1MdIu0pLw6Xvl/Gi4ONu/sdceP8vvUjkyA==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/table/-/table-5.2.2.tgz", + "integrity": "sha512-f8mJmuu9beQEDkKHLzOv4VxVYlU68NpdzjbGPl69i4Hx0sTopJuNxuzJd17iV2h24dAfa93u794OnDA5jqXvfQ==", "dev": true, "requires": { "ajv": "^6.6.1", "lodash": "^4.17.11", - "slice-ansi": "2.0.0", + "slice-ansi": "^2.0.0", "string-width": "^2.1.1" }, "dependencies": { "ajv": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.7.0.tgz", - "integrity": "sha512-RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg==", + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.8.1.tgz", + "integrity": "sha512-eqxCp82P+JfqL683wwsL73XmFs1eG6qjw+RD3YHx+Jll1r0jNd4dh8QG9NYAeNGA/hnZjeEDgtTskgJULbxpWQ==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -7833,9 +7849,9 @@ "dev": true }, "slice-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.0.0.tgz", - "integrity": "sha512-4j2WTWjp3GsZ+AOagyzVbzp4vWGtZ0hEZ/gDY/uTvm6MTxUfTUIsnMIFb1bn8o0RuXiqUw15H1bue8f22Vw2oQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", "dev": true, "requires": { "ansi-styles": "^3.2.0", diff --git a/packages/project/package.json b/packages/project/package.json index e56c94a7148..a95bfe82f85 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -106,7 +106,7 @@ "coveralls": "^3.0.1", "cross-env": "^5.2.0", "docdash": "^1.0.2", - "eslint": "^5.12.1", + "eslint": "^5.13.0", "eslint-config-google": "^0.11.0", "eslint-plugin-jsdoc": "^4.0.1", "jsdoc": "^3.5.5", From 9254e6bddcf7ad5682f29876f644eb1fa643f9aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Thu, 7 Feb 2019 19:13:41 +0000 Subject: [PATCH 0138/1272] [ui5-project][Security] Bump lodash from 4.17.10 to 4.17.11 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.10 to 4.17.11. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Changelog](https://github.com/lodash/lodash/blob/master/CHANGELOG) - [Commits](https://github.com/lodash/lodash/compare/4.17.10...4.17.11) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 31 +++--------------------------- 1 file changed, 3 insertions(+), 28 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 37d4f79440e..7c0b363baf9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2666,14 +2666,6 @@ "comment-parser": "^0.5.1", "jsdoctypeparser": "^2.0.0-alpha-8", "lodash": "^4.17.11" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - } } }, "eslint-scope": { @@ -4106,12 +4098,6 @@ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -4742,9 +4728,9 @@ } }, "lodash": { - "version": "4.17.10", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", "dev": true }, "lodash.assignin": { @@ -5781,11 +5767,6 @@ "path-exists": "^3.0.0" } }, - "lodash": { - "version": "4.17.11", - "bundled": true, - "dev": true - }, "lodash.flattendeep": { "version": "4.4.0", "bundled": true, @@ -7842,12 +7823,6 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - }, "slice-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", From c6a2c05bda030af1e9da9d7b8fa7ac8693250d96 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Thu, 7 Feb 2019 18:38:50 +0000 Subject: [PATCH 0139/1272] [ui5-project][Security] Bump extend from 3.0.1 to 3.0.2 Bumps [extend](https://github.com/justmoon/node-extend) from 3.0.1 to 3.0.2. **This update includes security fixes.** - [Release notes](https://github.com/justmoon/node-extend/releases) - [Changelog](https://github.com/justmoon/node-extend/blob/master/CHANGELOG.md) - [Commits](https://github.com/justmoon/node-extend/compare/v3.0.1...v3.0.2) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7c0b363baf9..a3be7cc517e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2868,9 +2868,9 @@ } }, "extend": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, "extend-shallow": { "version": "3.0.2", From 18b8238cccea81c838c069e16263233f979b3543 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Thu, 14 Feb 2019 04:07:34 +0000 Subject: [PATCH 0140/1272] [ui5-project][Security] Bump handlebars from 4.0.12 to 4.1.0 Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.0.12 to 4.1.0. **This update includes security fixes.** - [Release notes](https://github.com/wycats/handlebars.js/releases) - [Changelog](https://github.com/wycats/handlebars.js/blob/v4.1.0/release-notes.md) - [Commits](https://github.com/wycats/handlebars.js/compare/v4.0.12...v4.1.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 107 +++++++++++++++++++++-------- 1 file changed, 77 insertions(+), 30 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a3be7cc517e..95addc69116 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -647,6 +647,15 @@ "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", "dev": true }, + "async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", + "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", + "dev": true, + "requires": { + "lodash": "^4.17.11" + } + }, "async-each": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", @@ -3815,6 +3824,26 @@ "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", "dev": true }, + "handlebars": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.0.tgz", + "integrity": "sha512-l2jRuU1NAWK6AW5qqcTATWQJvNPEwkM7NEKSiv/gqOsoSQbVoWyqVEY5GS+XPQ88zLNmqASRpzfdm8d79hJS+w==", + "dev": true, + "requires": { + "async": "^2.5.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", @@ -4730,8 +4759,7 @@ "lodash": { "version": "4.17.11", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" }, "lodash.assignin": { "version": "4.2.0", @@ -5365,7 +5393,6 @@ "async": { "version": "2.6.1", "bundled": true, - "dev": true, "requires": { "lodash": "^4.17.10" } @@ -5423,7 +5450,6 @@ "commander": { "version": "2.17.1", "bundled": true, - "dev": true, "optional": true }, "commondir": { @@ -5586,24 +5612,6 @@ "bundled": true, "dev": true }, - "handlebars": { - "version": "4.0.12", - "bundled": true, - "dev": true, - "requires": { - "async": "^2.5.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true - } - } - }, "has-flag": { "version": "3.0.0", "bundled": true, @@ -5837,8 +5845,7 @@ }, "minimist": { "version": "0.0.10", - "bundled": true, - "dev": true + "bundled": true }, "mkdirp": { "version": "0.5.1", @@ -5900,7 +5907,6 @@ "optimist": { "version": "0.6.1", "bundled": true, - "dev": true, "requires": { "minimist": "~0.0.1", "wordwrap": "~0.0.2" @@ -6192,8 +6198,6 @@ "uglify-js": { "version": "3.4.9", "bundled": true, - "dev": true, - "optional": true, "requires": { "commander": "~2.17.1", "source-map": "~0.6.1" @@ -6202,7 +6206,6 @@ "source-map": { "version": "0.6.1", "bundled": true, - "dev": true, "optional": true } } @@ -6236,8 +6239,7 @@ }, "wordwrap": { "version": "0.0.3", - "bundled": true, - "dev": true + "bundled": true }, "wrap-ansi": { "version": "2.1.0", @@ -6548,6 +6550,24 @@ } } }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + } + } + }, "option-chain": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", @@ -8131,6 +8151,33 @@ } } }, + "uglify-js": { + "version": "3.4.9", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz", + "integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==", + "dev": true, + "optional": true, + "requires": { + "commander": "~2.17.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true, + "optional": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, "uid2": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", From 8e853c8b366b0a1bb49bb17fb20e832d2747df07 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 14 Feb 2019 14:19:39 +0100 Subject: [PATCH 0141/1272] [ui5-project][INTERNAL] npm translator: Add test fixtures for cyclic UI5 deps --- .../node_modules/application.cycle.f/package.json | 13 +++++++++++++ .../node_modules/application.cycle.f/ui5.yaml | 5 +++++ .../application.cycle.f/webapp/index.html | 9 +++++++++ .../node_modules/application.cycle.f/webapp/test.js | 5 +++++ .../node_modules/library.cycle.d/package.json | 12 ++++++++++++ .../library.cycle.d/src/cycle/d/.library | 11 +++++++++++ .../library.cycle.d/src/cycle/d/some.js | 4 ++++ .../library.cycle.d/test/cycle/d/Test.html | 0 .../node_modules/library.cycle.d/ui5.yaml | 9 +++++++++ .../node_modules/library.cycle.c/package.json | 11 +++++++++++ .../library.cycle.c/src/cycle/c/.library | 11 +++++++++++ .../library.cycle.c/src/cycle/c/some.js | 4 ++++ .../library.cycle.c/test/cycle/c/Test.html | 0 .../node_modules/library.cycle.c/ui5.yaml | 9 +++++++++ .../node_modules/library.cycle.d/package.json | 12 ++++++++++++ .../library.cycle.d/src/cycle/d/.library | 11 +++++++++++ .../library.cycle.d/src/cycle/d/some.js | 4 ++++ .../library.cycle.d/test/cycle/d/Test.html | 0 .../node_modules/library.cycle.d/ui5.yaml | 9 +++++++++ .../node_modules/library.cycle.e/package.json | 11 +++++++++++ .../library.cycle.e/src/cycle/e/.library | 11 +++++++++++ .../library.cycle.e/src/cycle/e/some.js | 4 ++++ .../library.cycle.e/test/cycle/e/Test.html | 0 .../node_modules/library.cycle.e/ui5.yaml | 9 +++++++++ 24 files changed, 174 insertions(+) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/index.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/test.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/.library create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/some.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/test/cycle/d/Test.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/.library create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/some.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/test/cycle/c/Test.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/.library create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/some.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/test/cycle/d/Test.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/package.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/.library create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/some.js create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/test/cycle/e/Test.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/package.json new file mode 100644 index 00000000000..d7ac8e06125 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/package.json @@ -0,0 +1,13 @@ +{ + "name": "application.cycle.f", + "version": "1.0.0", + "description": "Simple SAPUI5 based application - Test for cyclic npm UI5 dependencies - Cycle via projectPreprocessor deduplication", + "main": "index.html", + "dependencies": { + "library.cycle.c": "^1.0.0", + "library.cycle.d": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/ui5.yaml new file mode 100644 index 00000000000..55d3a6d8dd1 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "0.1" +type: application +metadata: + name: application.cycle.f diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/index.html new file mode 100644 index 00000000000..38e2bf69eee --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/index.html @@ -0,0 +1,9 @@ + + + + Application Cycle F + + + + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/package.json new file mode 100644 index 00000000000..a122713c406 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/package.json @@ -0,0 +1,12 @@ +{ + "name": "library.cycle.d", + "version": "0.9.0", + "description": "Simple SAPUI5 based library - Test for cyclic npm UI5 dependencies - Cycle via projectPreprocessor deduplication", + "dependencies": { + "library.cycle.c": "^1.0.0", + "library.cycle.e": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/.library new file mode 100644 index 00000000000..af0aa5c6492 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/.library @@ -0,0 +1,11 @@ + + + + library.cycle.b + SAP SE + ${copyright} + ${version} + + Library Cycle D + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/test/cycle/d/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/test/cycle/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/ui5.yaml new file mode 100644 index 00000000000..3fb70271d3e --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.cycle.d + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/package.json new file mode 100644 index 00000000000..26fcdc68031 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.cycle.c", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - Test for cyclic npm UI5 dependencies - Cycle via projectPreprocessor deduplication", + "dependencies": { + "library.cycle.d": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/.library new file mode 100644 index 00000000000..773fb893c19 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/.library @@ -0,0 +1,11 @@ + + + + library.cycle.b + SAP SE + ${copyright} + ${version} + + Library Cycle C + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/test/cycle/c/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/test/cycle/c/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/ui5.yaml new file mode 100644 index 00000000000..5ebeb043fa5 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.cycle.c + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/package.json new file mode 100644 index 00000000000..8ed04a0846d --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/package.json @@ -0,0 +1,12 @@ +{ + "name": "library.cycle.d", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - Test for cyclic npm UI5 dependencies - Cycle via projectPreprocessor deduplication", + "dependencies": { + "library.cycle.c": "^1.0.0", + "library.cycle.e": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/.library new file mode 100644 index 00000000000..af0aa5c6492 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/.library @@ -0,0 +1,11 @@ + + + + library.cycle.b + SAP SE + ${copyright} + ${version} + + Library Cycle D + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/test/cycle/d/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/test/cycle/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/ui5.yaml new file mode 100644 index 00000000000..3fb70271d3e --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.cycle.d + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/package.json new file mode 100644 index 00000000000..78d17046540 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.cycle.e", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - Test for cyclic npm UI5 dependencies - Cycle via projectPreprocessor deduplication", + "dependencies": { + "library.cycle.c": "^1.0.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/.library new file mode 100644 index 00000000000..dc182abd9b5 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/.library @@ -0,0 +1,11 @@ + + + + library.cycle.b + SAP SE + ${copyright} + ${version} + + Library Cycle E + + diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/test/cycle/e/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/test/cycle/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/ui5.yaml new file mode 100644 index 00000000000..df84c329fef --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "0.1" +type: library +metadata: + name: library.cycle.e + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. From ecb0ec16650694c3d887597b77624051491a93c3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 14 Feb 2019 14:51:07 +0100 Subject: [PATCH 0142/1272] [ui5-project][INTERNAL] normalizer: Add missing parameter to JSDoc --- packages/project/lib/normalizer.js | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index 341f9907817..0a0b69f69b0 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -19,6 +19,7 @@ const Normalizer = { * @param {string} [options.cwd] Current working directory * @param {string} [options.configPath] Path to configuration file * @param {string} [options.translatorName] Translator to use + * @param {Object} [options.translatorOptions] Options to pass to translator * @returns {Promise} Promise resolving to tree object */ generateProjectTree: async function(options = {}) { From 398d3cdb7a794dce6f72b8fc1257c11576f85038 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 14 Feb 2019 14:51:45 +0100 Subject: [PATCH 0143/1272] [ui5-project][INTERNAL] projectPreprocessor: Fix project level logging Project level must be defined before logging --- packages/project/lib/projectPreprocessor.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index bce6df69771..8b979154454 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -58,9 +58,8 @@ class ProjectPreprocessor { }); await Promise.all(projectsToProcess.map(async (project) => { - log.verbose(`Processing project ${project.id} on level ${project._level}...`); - project._level = level; + log.verbose(`Processing project ${project.id} on level ${project._level}...`); if (project.dependencies && project.dependencies.length) { // Do a dependency lookahead to apply any extensions that might affect this project From 0517ed8a02adc33e0de957b84ddd86c23d605112 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 14 Feb 2019 14:52:58 +0100 Subject: [PATCH 0144/1272] [ui5-project][FIX] npm translator: Remove deduped optional dependencies from tree In some cases optional (pending) dependencies that have been deduped have not been removed from the dependency tree, no matter whether the "includeDeduped" flag was set or not. --- packages/project/lib/translators/npm.js | 8 +- packages/project/test/lib/translators/npm.js | 96 +++++++++++++++++++- 2 files changed, 99 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index d360bc87553..6645f3c78e9 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -461,8 +461,12 @@ class NpmTranslator { `(child of ${parent.id})`); const idx = parent.dependencies.indexOf(project); - const dedupedProject = this.createDedupedProject(project); - parent.dependencies.splice(idx, 1, dedupedProject); + if (this.includeDeduped) { + const dedupedProject = this.createDedupedProject(project); + parent.dependencies.splice(idx, 1, dedupedProject); + } else { + parent.dependencies.splice(idx, 1); + } } if (project.dependencies) { diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index 97bf16dd049..c21dd45b20d 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -59,7 +59,7 @@ test("AppG: project with npm 'optionalDependencies' should not fail if optional test("AppCycleA: cyclic dev deps", (t) => { const applicationCycleAPath = path.join(cycleDepsBasePath, "application.cycle.a"); - return npmTranslator.generateDependencyTree(applicationCycleAPath, {includeDeduped: false}).then((parsedTree) => { + return npmTranslator.generateDependencyTree(applicationCycleAPath).then((parsedTree) => { t.deepEqual(parsedTree, applicationCycleATree, "Parsed correctly"); }); }); @@ -72,9 +72,16 @@ test("AppCycleA: cyclic dev deps - include deduped", (t) => { }); }); +test("AppCycleB: cyclic npm deps - Cycle via devDependency on second level - include deduped", (t) => { + const applicationCycleBPath = path.join(cycleDepsBasePath, "application.cycle.b"); + return npmTranslator.generateDependencyTree(applicationCycleBPath, {includeDeduped: true}).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleBTreeIncDeduped, "Parsed correctly"); + }); +}); + test("AppCycleB: cyclic npm deps - Cycle via devDependency on second level", (t) => { const applicationCycleBPath = path.join(cycleDepsBasePath, "application.cycle.b"); - return npmTranslator.generateDependencyTree(applicationCycleBPath).then((parsedTree) => { + return npmTranslator.generateDependencyTree(applicationCycleBPath, {includeDeduped: false}).then((parsedTree) => { t.deepEqual(parsedTree, applicationCycleBTree, "Parsed correctly"); }); }); @@ -100,9 +107,16 @@ test("AppCycleD: cyclic npm deps - Cycles everywhere", (t) => { }); }); -test("AppCycleE: cyclic npm deps - Cycle via devDependency", (t) => { +test("AppCycleE: cyclic npm deps - Cycle via devDependency - include deduped", (t) => { const applicationCycleEPath = path.join(cycleDepsBasePath, "application.cycle.e"); return npmTranslator.generateDependencyTree(applicationCycleEPath, {includeDeduped: true}).then((parsedTree) => { + t.deepEqual(parsedTree, applicationCycleETreeIncDeduped, "Parsed correctly"); + }); +}); + +test("AppCycleE: cyclic npm deps - Cycle via devDependency", (t) => { + const applicationCycleEPath = path.join(cycleDepsBasePath, "application.cycle.e"); + return npmTranslator.generateDependencyTree(applicationCycleEPath, {includeDeduped: false}).then((parsedTree) => { t.deepEqual(parsedTree, applicationCycleETree, "Parsed correctly"); }); }); @@ -394,6 +408,48 @@ const applicationCycleBTree = { } ] }, + { + "id": "module.e", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.e"), + "dependencies": [ + { + "id": "module.d", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.d"), + "dependencies": [] + } + ] + } + ] +}; + +const applicationCycleBTreeIncDeduped = { + "id": "application.cycle.b", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.b"), + "dependencies": [ + { + "id": "module.d", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.d"), + "dependencies": [ + { + "id": "module.e", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.e"), + "dependencies": [ + { + "id": "module.d", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.d"), + "dependencies": [], + "deduped": true + } + ] + } + ] + }, { "id": "module.e", "version": "1.0.0", @@ -860,6 +916,40 @@ const applicationCycleDTree = { }; const applicationCycleETree = { + "id": "application.cycle.e", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "application.cycle.e"), + "dependencies": [ + { + "id": "module.l", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.l"), + "dependencies": [ + { + "id": "module.m", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.m"), + "dependencies": [] + } + ] + }, + { + "id": "module.m", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.m"), + "dependencies": [ + { + "id": "module.l", + "version": "1.0.0", + "path": path.join(cycleDepsBasePath, "module.l"), + "dependencies": [] + } + ] + } + ] +}; + +const applicationCycleETreeIncDeduped = { "id": "application.cycle.e", "version": "1.0.0", "path": path.join(cycleDepsBasePath, "application.cycle.e"), From a7b8198b4a745eb4327cc1373a4080e7534f4e1a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 14 Feb 2019 15:30:08 +0000 Subject: [PATCH 0145/1272] [ui5-project]Release 1.0.1 --- packages/project/CHANGELOG.md | 12 +++++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index a9509018ed2..4d6b0c936e0 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.0.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.0.1...HEAD). + + +## [v1.0.1] - 2019-02-14 +### Bug Fixes +- **npm translator:** Remove deduped optional dependencies from tree [`3481154`](https://github.com/SAP/ui5-project/commit/348115426f03bd3a5bb823ac54a6b15475a84657) + +### Dependency Updates +- Bump [@ui5](https://github.com/ui5)/builder from 1.0.0 to 1.0.1 ([#113](https://github.com/SAP/ui5-project/issues/113)) [`96a3d6a`](https://github.com/SAP/ui5-project/commit/96a3d6a2a54cb1eab190ba89f9da686e8aae2d84) + ## [v1.0.0] - 2019-01-10 @@ -74,6 +83,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v1.0.1]: https://github.com/SAP/ui5-project/compare/v1.0.0...v1.0.1 [v1.0.0]: https://github.com/SAP/ui5-project/compare/v0.2.5...v1.0.0 [v0.2.5]: https://github.com/SAP/ui5-project/compare/v0.2.4...v0.2.5 [v0.2.4]: https://github.com/SAP/ui5-project/compare/v0.2.3...v0.2.4 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 95addc69116..4a5ae2021d4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.0.0", + "version": "1.0.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index a95bfe82f85..4f5f21386e3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.0.0", + "version": "1.0.1", "description": "UI5 Build and Development Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 6f82ab7f67ff119a0d36d92589113f85d810a1b9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Fri, 15 Feb 2019 06:21:56 +0000 Subject: [PATCH 0146/1272] [ui5-project]Bump nyc from 13.2.0 to 13.3.0 Bumps [nyc](https://github.com/istanbuljs/nyc) from 13.2.0 to 13.3.0. - [Release notes](https://github.com/istanbuljs/nyc/releases) - [Changelog](https://github.com/istanbuljs/nyc/blob/master/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/nyc/compare/v13.2.0...v13.3.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 172 +++++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 66 insertions(+), 108 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4a5ae2021d4..d5e146fe5c9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -193,9 +193,9 @@ } }, "globals": { - "version": "11.10.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.10.0.tgz", - "integrity": "sha512-0GZF1RiPKU97IHUO5TORo9w1PwrH/NBPl+fS7oMLdaTRiYmYbwK4NWoZWrAdd0/abG9R2BU+OiwyQpTpE6pdfQ==", + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", + "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", "dev": true }, "ms": { @@ -647,15 +647,6 @@ "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", "dev": true }, - "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", - "dev": true, - "requires": { - "lodash": "^4.17.11" - } - }, "async-each": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", @@ -3824,26 +3815,6 @@ "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", "dev": true }, - "handlebars": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.0.tgz", - "integrity": "sha512-l2jRuU1NAWK6AW5qqcTATWQJvNPEwkM7NEKSiv/gqOsoSQbVoWyqVEY5GS+XPQ88zLNmqASRpzfdm8d79hJS+w==", - "dev": true, - "requires": { - "async": "^2.5.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", @@ -4759,7 +4730,8 @@ "lodash": { "version": "4.17.11", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true }, "lodash.assignin": { "version": "4.2.0", @@ -5336,9 +5308,9 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.2.0.tgz", - "integrity": "sha512-gQBlOqvfpYt9b2PZ7qElrHWt8x4y8ApNfbMBoDPdl3sY4/4RJwCxDGTSqhA9RnaguZjS5nW7taW8oToe86JLgQ==", + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.3.0.tgz", + "integrity": "sha512-P+FwIuro2aFG6B0Esd9ZDWUd51uZrAEoGutqZxzrVmYl3qSfkLgcQpBPBjtDFsUQLFY1dvTQJPOyeqr8S9GF8w==", "dev": true, "requires": { "archy": "^1.0.0", @@ -5351,10 +5323,10 @@ "glob": "^7.1.3", "istanbul-lib-coverage": "^2.0.3", "istanbul-lib-hook": "^2.0.3", - "istanbul-lib-instrument": "^3.0.1", + "istanbul-lib-instrument": "^3.1.0", "istanbul-lib-report": "^2.0.4", "istanbul-lib-source-maps": "^3.0.2", - "istanbul-reports": "^2.1.0", + "istanbul-reports": "^2.1.1", "make-dir": "^1.3.0", "merge-source-map": "^1.1.0", "resolve-from": "^4.0.0", @@ -5391,10 +5363,11 @@ "dev": true }, "async": { - "version": "2.6.1", + "version": "2.6.2", "bundled": true, + "dev": true, "requires": { - "lodash": "^4.17.10" + "lodash": "^4.17.11" } }, "balanced-match": { @@ -5411,11 +5384,6 @@ "concat-map": "0.0.1" } }, - "builtin-modules": { - "version": "1.1.1", - "bundled": true, - "dev": true - }, "caching-transform": { "version": "3.0.1", "bundled": true, @@ -5450,6 +5418,7 @@ "commander": { "version": "2.17.1", "bundled": true, + "dev": true, "optional": true }, "commondir": { @@ -5612,6 +5581,24 @@ "bundled": true, "dev": true }, + "handlebars": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "async": "^2.5.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true + } + } + }, "has-flag": { "version": "3.0.0", "bundled": true, @@ -5659,14 +5646,6 @@ "bundled": true, "dev": true }, - "is-builtin-module": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "builtin-modules": "^1.0.0" - } - }, "is-fullwidth-code-point": { "version": "2.0.0", "bundled": true, @@ -5735,11 +5714,11 @@ } }, "istanbul-reports": { - "version": "2.1.0", + "version": "2.1.1", "bundled": true, "dev": true, "requires": { - "handlebars": "^4.0.11" + "handlebars": "^4.1.0" } }, "json-parse-better-errors": { @@ -5775,6 +5754,11 @@ "path-exists": "^3.0.0" } }, + "lodash": { + "version": "4.17.11", + "bundled": true, + "dev": true + }, "lodash.flattendeep": { "version": "4.4.0", "bundled": true, @@ -5806,13 +5790,13 @@ } }, "mem": { - "version": "4.0.0", + "version": "4.1.0", "bundled": true, "dev": true, "requires": { "map-age-cleaner": "^0.1.1", "mimic-fn": "^1.0.0", - "p-is-promise": "^1.1.0" + "p-is-promise": "^2.0.0" } }, "merge-source-map": { @@ -5845,7 +5829,8 @@ }, "minimist": { "version": "0.0.10", - "bundled": true + "bundled": true, + "dev": true }, "mkdirp": { "version": "0.5.1", @@ -5873,12 +5858,12 @@ "dev": true }, "normalize-package-data": { - "version": "2.4.0", + "version": "2.5.0", "bundled": true, "dev": true, "requires": { "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", + "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" } @@ -5907,6 +5892,7 @@ "optimist": { "version": "0.6.1", "bundled": true, + "dev": true, "requires": { "minimist": "~0.0.1", "wordwrap": "~0.0.2" @@ -5938,7 +5924,7 @@ "dev": true }, "p-is-promise": { - "version": "1.1.0", + "version": "2.0.0", "bundled": true, "dev": true }, @@ -5998,6 +5984,11 @@ "bundled": true, "dev": true }, + "path-parse": { + "version": "1.0.6", + "bundled": true, + "dev": true + }, "path-type": { "version": "3.0.0", "bundled": true, @@ -6070,6 +6061,14 @@ "bundled": true, "dev": true }, + "resolve": { + "version": "1.10.0", + "bundled": true, + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, "resolve-from": { "version": "4.0.0", "bundled": true, @@ -6198,6 +6197,8 @@ "uglify-js": { "version": "3.4.9", "bundled": true, + "dev": true, + "optional": true, "requires": { "commander": "~2.17.1", "source-map": "~0.6.1" @@ -6206,6 +6207,7 @@ "source-map": { "version": "0.6.1", "bundled": true, + "dev": true, "optional": true } } @@ -6239,7 +6241,8 @@ }, "wordwrap": { "version": "0.0.3", - "bundled": true + "bundled": true, + "dev": true }, "wrap-ansi": { "version": "2.1.0", @@ -6550,24 +6553,6 @@ } } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - } - } - }, "option-chain": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", @@ -8151,33 +8136,6 @@ } } }, - "uglify-js": { - "version": "3.4.9", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz", - "integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==", - "dev": true, - "optional": true, - "requires": { - "commander": "~2.17.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "commander": { - "version": "2.17.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", - "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", - "dev": true, - "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, "uid2": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 4f5f21386e3..eb5c59160dc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -110,7 +110,7 @@ "eslint-config-google": "^0.11.0", "eslint-plugin-jsdoc": "^4.0.1", "jsdoc": "^3.5.5", - "nyc": "^13.2.0", + "nyc": "^13.3.0", "opn-cli": "^4.0.0", "rimraf": "^2.6.3", "sinon": "^7.2.3", From 0bd0ccb4fdd176ecf36a27edc0f3ddad8308d090 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 18 Feb 2019 16:47:07 +0100 Subject: [PATCH 0147/1272] [ui5-project][INTERNAL] ISSUE_TEMPLATE: Reference contributing guidelines and check current component --- packages/project/.github/ISSUE_TEMPLATE.md | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/packages/project/.github/ISSUE_TEMPLATE.md b/packages/project/.github/ISSUE_TEMPLATE.md index 89eb9692409..a6a0f8f8512 100644 --- a/packages/project/.github/ISSUE_TEMPLATE.md +++ b/packages/project/.github/ISSUE_TEMPLATE.md @@ -1,3 +1,8 @@ + + ## Expected Behavior {...} @@ -13,16 +18,17 @@ - UI5 Module Version *(output of `ui5 --version` when using the CLI)*: `{...}` - Node.js Version: `{...}` - npm Version: `{...}` -- OS/Platform: {...} -- Browser *(if relevant)*: {...} -- Other information: {...} +- OS/Platform: `{...}` +- Browser *(if relevant)*: `{...}` +- Other information: `{...}` ## Affected components *(if known)* + - [ ] [ui5-builder](https://github.com/SAP/ui5-builder) - [ ] [ui5-server](https://github.com/SAP/ui5-server) - [ ] [ui5-cli](https://github.com/SAP/ui5-cli) - [ ] [ui5-fs](https://github.com/SAP/ui5-fs) -- [ ] [ui5-project](https://github.com/SAP/ui5-project) +- [X] [ui5-project](https://github.com/SAP/ui5-project) - [ ] [ui5-logger](https://github.com/SAP/ui5-logger) ## Log Output / Stack Trace From 5125c1c2f5e13d6c40551eea94741e07f2a0a2ad Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 18 Feb 2019 16:54:14 +0100 Subject: [PATCH 0148/1272] [ui5-project][INTERNAL] Rename UI5 Build and Development Tooling to UI5 Tooling --- packages/project/CONTRIBUTING.md | 4 ++-- packages/project/README.md | 2 +- packages/project/docs/Configuration.md | 4 ++-- packages/project/jsdoc.json | 8 ++++---- packages/project/package.json | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/CONTRIBUTING.md b/packages/project/CONTRIBUTING.md index 19890585eef..5c5d4b7f86d 100644 --- a/packages/project/CONTRIBUTING.md +++ b/packages/project/CONTRIBUTING.md @@ -1,3 +1,3 @@ -# Contributing to the UI5 Build and Development Tooling +# Contributing to the UI5 Tooling -See CONTRIBUTING.md in the [SAP/ui5-tooling](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md) repository. \ No newline at end of file +See CONTRIBUTING.md in the [SAP/ui5-tooling](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md) repository. diff --git a/packages/project/README.md b/packages/project/README.md index 4ebc8ecb17b..ce4f073ffd9 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -2,7 +2,7 @@ # ui5-project > Modules for building a UI5 projects dependency tree, including configuration. -> Part of the [UI5 Build and Development Tooling](https://github.com/SAP/ui5-tooling) +> Part of the [UI5 Tooling](https://github.com/SAP/ui5-tooling) [![Travis CI Build Status](https://travis-ci.org/SAP/ui5-project.svg?branch=master)](https://travis-ci.org/SAP/ui5-project) [![npm Package Version](https://badge.fury.io/js/%40ui5%2Fproject.svg)](https://www.npmjs.com/package/@ui5/project) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 1e619bd6f66..47295d41823 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -1,5 +1,5 @@ # Configuration -This document describes the configuration of UI5 Build and Development Tooling based projects and extensions. +This document describes the configuration of UI5 Tooling based projects and extensions. The content represents the **[Specification Version](#specification-versions) `1.0`**. @@ -13,7 +13,7 @@ The content represents the **[Specification Version](#specification-versions) `1 ## Project Configuration Typically located in a `ui5.yaml` file per project. -The preferred way of storing the configuration of a UI5 Build and Development Tooling based project is a [YAML](https://yaml.org/) file named `ui5.yaml` inside that project. +The preferred way of storing the configuration of a UI5 Tooling based project is a [YAML](https://yaml.org/) file named `ui5.yaml` inside that project. **Example** ````yaml diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json index 0a9afb11b1a..81925e93c46 100644 --- a/packages/project/jsdoc.json +++ b/packages/project/jsdoc.json @@ -24,10 +24,10 @@ } }, "openGraph": { - "title": "UI5 Build and Development Tooling - API Reference", + "title": "UI5 Tooling - API Reference", "type": "website", "image": "https://sap.github.io/ui5-tooling/docs/images/UI5_logo_wide.png", - "site_name": "UI5 Build and Development Tooling - API Reference", + "site_name": "UI5 Tooling - API Reference", "url": "https://sap.github.io/ui5-tooling/" }, "docdash": { @@ -42,8 +42,8 @@ "Interfaces" ], "meta": { - "title": "UI5 Build and Development Tooling - API Reference - UI5 Project", - "description": "UI5 Build and Development Tooling - API Reference - UI5 Project", + "title": "UI5 Tooling - API Reference - UI5 Project", + "description": "UI5 Tooling - API Reference - UI5 Project", "keyword": "openui5 sapui5 ui5 build development tool api reference" }, "search": true, diff --git a/packages/project/package.json b/packages/project/package.json index eb5c59160dc..eb298769a76 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,7 +1,7 @@ { "name": "@ui5/project", "version": "1.0.1", - "description": "UI5 Build and Development Tooling - Project ", + "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", "keywords": [ From 151d8435e48b5140901f24f151bd500ac5338ce6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 18 Feb 2019 17:04:33 +0100 Subject: [PATCH 0149/1272] [ui5-project][INTERNAL] README: Reference UI5 CLI docs in other modules --- packages/project/README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/project/README.md b/packages/project/README.md index ce4f073ffd9..8239e901bbb 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -1,7 +1,7 @@ ![UI5 icon](https://raw.githubusercontent.com/SAP/ui5-tooling/master/docs/images/UI5_logo_wide.png) # ui5-project -> Modules for building a UI5 projects dependency tree, including configuration. +> Modules for building a projects dependency tree, including UI5 specific configuration. > Part of the [UI5 Tooling](https://github.com/SAP/ui5-tooling) [![Travis CI Build Status](https://travis-ci.org/SAP/ui5-project.svg?branch=master)](https://travis-ci.org/SAP/ui5-project) @@ -10,6 +10,8 @@ [![Dependency Status](https://david-dm.org/SAP/ui5-project/master.svg)](https://david-dm.org/SAP/ui5-project/master) [![devDependency Status](https://david-dm.org/SAP/ui5-project/master/dev-status.svg)](https://david-dm.org/SAP/ui5-project/master#info=devDependencies) +**⌨️ CLI reference can be found [here!](https://github.com/SAP/ui5-cli#cli-usage)** + ## Configuration See [Configuration](docs/Configuration.md). From 15a8906c63f147596ce4ddb47d15bf60821e61ce Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 28 Feb 2019 15:02:42 +0100 Subject: [PATCH 0150/1272] [ui5-project][INTERNAL] Clarify error message for invalid or unsupported specVersions Old CLI releases might simply not support a certain specVersion --- packages/project/lib/projectPreprocessor.js | 9 +++++---- packages/project/test/lib/extensions.js | 2 +- packages/project/test/lib/projectPreprocessor.js | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 8b979154454..708c47ef8dd 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -268,8 +268,9 @@ class ProjectPreprocessor { if (project.specVersion !== "0.1" && project.specVersion !== "1.0") { throw new Error( - `Invalid specification version defined for project ${project.id}: ${project.specVersion}. ` + - "See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions"); + `Unsupported specification version ${project.specVersion} defined for project ` + + `${project.id}. ` + + `See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions`); } if (!project.type) { @@ -325,8 +326,8 @@ class ProjectPreprocessor { throw new Error(`No specification version defined for extension ${extension.metadata.name}`); } else if (extension.specVersion !== "0.1" && extension.specVersion !== "1.0") { throw new Error( - `Invalid specification version defined for extension ` + - `${extension.metadata.name}: ${extension.specVersion}. ` + + `Unsupported specification version ${extension.specVersion} defined for extension ` + + `${extension.metadata.name}. ` + `See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions`); } else if (this.appliedExtensions[extension.metadata.name]) { log.verbose(`Extension with the name ${extension.metadata.name} has already been applied. ` + diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index cd2c4e91f81..8a241547b2d 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -612,7 +612,7 @@ test("specVersion: Extension with invalid version", async (t) => { }; const preprocessor = new Preprocessor(); await t.throws(preprocessor.applyExtension(extension), - "Invalid specification version defined for extension shims.a: 0.9. " + + "Unsupported specification version 0.9 defined for extension shims.a. " + "See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions", "Rejected with error"); }); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 91a3a764051..cda2940ed9c 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1400,7 +1400,7 @@ test("specVersion: Project with invalid version", async (t) => { } }; await t.throws(projectPreprocessor.processTree(tree), - "Invalid specification version defined for project application.a: 0.9. " + + "Unsupported specification version 0.9 defined for project application.a. " + "See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions", "Rejected with error"); }); From 0783b6d13a78a1f403672dd5323b9cd007576308 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 5 Mar 2019 06:17:13 +0000 Subject: [PATCH 0151/1272] [ui5-project]Bump sinon from 7.2.3 to 7.2.7 Bumps [sinon](https://github.com/sinonjs/sinon) from 7.2.3 to 7.2.7. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md) - [Commits](https://github.com/sinonjs/sinon/compare/v7.2.3...v7.2.7) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 73 ++++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 35 insertions(+), 40 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d5e146fe5c9..aa61fe0a55f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -281,34 +281,41 @@ } }, "@sinonjs/commons": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.3.0.tgz", - "integrity": "sha512-j4ZwhaHmwsCb4DlDOIWnI5YyKDNMoNThsmwEpfHx6a1EpsGZ9qYLxP++LMlmBRjtGptGHFsGItJ768snllFWpA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.3.1.tgz", + "integrity": "sha512-rgmZk5CrBGAMATk0HlHOFvo8V44/r+On6cKS80tqid0Eljd+fFBWBOXZp9H2/EB3faxdNdzXTx6QZIKLkbJ7mA==", "dev": true, "requires": { "type-detect": "4.0.8" } }, "@sinonjs/formatio": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.1.0.tgz", - "integrity": "sha512-ZAR2bPHOl4Xg6eklUGpsdiIJ4+J1SNag1DHHrG/73Uz/nVwXqjgUtRPLoS+aVyieN9cSbc0E4LsU984tWcDyNg==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz", + "integrity": "sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==", "dev": true, "requires": { - "@sinonjs/samsam": "^2 || ^3" + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" } }, "@sinonjs/samsam": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.0.2.tgz", - "integrity": "sha512-m08g4CS3J6lwRQk1pj1EO+KEVWbrbXsmi9Pw0ySmrIbcVxVaedoFgLvFsV8wHLwh01EpROVz3KvVcD1Jmks9FQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.2.0.tgz", + "integrity": "sha512-j5F1rScewLtx6pbTK0UAjA3jJj4RYiSKOix53YWv+Jzy/AZ69qHxUpU8fwVLjyKbEEud9QrLpv6Ggs7WqTimYw==", "dev": true, "requires": { "@sinonjs/commons": "^1.0.2", "array-from": "^2.1.1", - "lodash.get": "^4.4.2" + "lodash": "^4.17.11" } }, + "@sinonjs/text-encoding": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", + "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "dev": true + }, "@ui5/builder": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.1.tgz", @@ -4793,12 +4800,6 @@ "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", - "dev": true - }, "lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", @@ -4842,9 +4843,9 @@ "dev": true }, "lolex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-3.0.0.tgz", - "integrity": "sha512-hcnW80h3j2lbUfFdMArd5UPA/vxZJ+G8vobd+wg3nVEQA0EigStbYcrG030FJxL6xiDDPEkoMatV9xIh5OecQQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-3.1.0.tgz", + "integrity": "sha512-zFo5MgCJ0rZ7gQg69S4pqBsLURbFw11X68C18OcJjJQbqaXm2NoTrGl1IMM3TIz0/BnN1tIs2tzmmqvCsOMMjw==", "dev": true }, "loose-envify": { @@ -5234,16 +5235,16 @@ "dev": true }, "nise": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.8.tgz", - "integrity": "sha512-kGASVhuL4tlAV0tvA34yJYZIVihrUt/5bDwpp4tTluigxUr2bBlJeDXmivb6NuEdFkqvdv/Ybb9dm16PSKUhtw==", + "version": "1.4.10", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.10.tgz", + "integrity": "sha512-sa0RRbj53dovjc7wombHmVli9ZihXbXCQ2uH3TNm03DyvOSIQbxg+pbqDKrk2oxMK1rtLGVlKxcB9rrc6X5YjA==", "dev": true, "requires": { "@sinonjs/formatio": "^3.1.0", + "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "lolex": "^2.3.2", - "path-to-regexp": "^1.7.0", - "text-encoding": "^0.6.4" + "path-to-regexp": "^1.7.0" }, "dependencies": { "lolex": { @@ -7379,17 +7380,17 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, "sinon": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.2.3.tgz", - "integrity": "sha512-i6j7sqcLEqTYqUcMV327waI745VASvYuSuQMCjbAwlpAeuCgKZ3LtrjDxAbu+GjNQR0FEDpywtwGCIh8GicNyg==", + "version": "7.2.7", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.2.7.tgz", + "integrity": "sha512-rlrre9F80pIQr3M36gOdoCEWzFAMDgHYD8+tocqOw+Zw9OZ8F84a80Ds69eZfcjnzDqqG88ulFld0oin/6rG/g==", "dev": true, "requires": { - "@sinonjs/commons": "^1.3.0", - "@sinonjs/formatio": "^3.1.0", - "@sinonjs/samsam": "^3.0.2", + "@sinonjs/commons": "^1.3.1", + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/samsam": "^3.2.0", "diff": "^3.5.0", - "lolex": "^3.0.0", - "nise": "^1.4.8", + "lolex": "^3.1.0", + "nise": "^1.4.10", "supports-color": "^5.5.0" }, "dependencies": { @@ -7962,12 +7963,6 @@ "execa": "^0.7.0" } }, - "text-encoding": { - "version": "0.6.4", - "resolved": "http://registry.npmjs.org/text-encoding/-/text-encoding-0.6.4.tgz", - "integrity": "sha1-45mpgiV6J22uQou5KEXLcb3CbRk=", - "dev": true - }, "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index eb298769a76..e49346aea57 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -113,7 +113,7 @@ "nyc": "^13.3.0", "opn-cli": "^4.0.0", "rimraf": "^2.6.3", - "sinon": "^7.2.3", + "sinon": "^7.2.7", "tap-nyan": "^1.1.0" } } From bfde6308f70f8320c3262602c062748229fc2ba9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 5 Mar 2019 06:16:52 +0000 Subject: [PATCH 0152/1272] [ui5-project]Bump eslint from 5.13.0 to 5.15.1 Bumps [eslint](https://github.com/eslint/eslint) from 5.13.0 to 5.15.1. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.13.0...v5.15.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 147 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 77 insertions(+), 72 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index aa61fe0a55f..125e57c4d01 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -373,9 +373,9 @@ } }, "acorn": { - "version": "6.0.7", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.7.tgz", - "integrity": "sha512-HNJNgE60C9eOTgn974Tlp3dpLZdUr+SoxxDwPaY9J/kDNOLQTkaDgwBUXAF4SSsrAwD9RpdxuHK/EbuF+W9Ahw==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", + "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", "dev": true }, "acorn-jsx": { @@ -1732,12 +1732,6 @@ "integrity": "sha512-SK/846h/Rcy8q9Z9CAwGBLfCJ6EkjJWdpelWDufQpqVDYq2Wnnv8zlSO6AMQap02jvhVruKKpEtQOufo3pFhLg==", "dev": true }, - "circular-json": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", - "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", - "dev": true - }, "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", @@ -2298,9 +2292,9 @@ "dev": true }, "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "requires": { "esutils": "^2.0.2" @@ -2377,6 +2371,12 @@ "jsbn": "~0.1.0" } }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, "empower-core": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", @@ -2519,35 +2519,35 @@ } }, "eslint": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.13.0.tgz", - "integrity": "sha512-nqD5WQMisciZC5EHZowejLKQjWGuFS5c70fxqSKlnDME+oz9zmE8KTlX+lHSg+/5wsC/kf9Q9eMkC8qS3oM2fg==", + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.15.1.tgz", + "integrity": "sha512-NTcm6vQ+PTgN3UBsALw5BMhgO6i5EpIjQF/Xb5tIh3sk9QhrFafujUOczGz4J24JBlzWclSB9Vmx8d+9Z6bFCg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "ajv": "^6.5.3", + "ajv": "^6.9.1", "chalk": "^2.1.0", "cross-spawn": "^6.0.5", "debug": "^4.0.1", - "doctrine": "^2.1.0", - "eslint-scope": "^4.0.0", + "doctrine": "^3.0.0", + "eslint-scope": "^4.0.2", "eslint-utils": "^1.3.1", "eslint-visitor-keys": "^1.0.0", - "espree": "^5.0.0", + "espree": "^5.0.1", "esquery": "^1.0.1", "esutils": "^2.0.2", - "file-entry-cache": "^2.0.0", + "file-entry-cache": "^5.0.1", "functional-red-black-tree": "^1.0.1", "glob": "^7.1.2", "globals": "^11.7.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", - "inquirer": "^6.1.0", + "inquirer": "^6.2.2", "js-yaml": "^3.12.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.3.0", - "lodash": "^4.17.5", + "lodash": "^4.17.11", "minimatch": "^3.0.4", "mkdirp": "^0.5.1", "natural-compare": "^1.4.0", @@ -2558,14 +2558,14 @@ "semver": "^5.5.1", "strip-ansi": "^4.0.0", "strip-json-comments": "^2.0.1", - "table": "^5.0.2", + "table": "^5.2.3", "text-table": "^0.2.0" }, "dependencies": { "ajv": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.8.1.tgz", - "integrity": "sha512-eqxCp82P+JfqL683wwsL73XmFs1eG6qjw+RD3YHx+Jll1r0jNd4dh8QG9NYAeNGA/hnZjeEDgtTskgJULbxpWQ==", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -2609,9 +2609,9 @@ "dev": true }, "globals": { - "version": "11.10.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.10.0.tgz", - "integrity": "sha512-0GZF1RiPKU97IHUO5TORo9w1PwrH/NBPl+fS7oMLdaTRiYmYbwK4NWoZWrAdd0/abG9R2BU+OiwyQpTpE6pdfQ==", + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", + "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", "dev": true }, "ignore": { @@ -2676,9 +2676,9 @@ } }, "eslint-scope": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz", - "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.2.tgz", + "integrity": "sha512-5q1+B/ogmHl8+paxtOKx38Z8LtWkVGuNt3+GQNErqwLl6ViNp/gdJGMCjZNxZ8j/VYjDNZ2Fo+eQc1TAVPIzbg==", "dev": true, "requires": { "esrecurse": "^4.1.0", @@ -2710,12 +2710,12 @@ } }, "espree": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.0.tgz", - "integrity": "sha512-1MpUfwsdS9MMoN7ZXqAr9e9UKdVHDcvrJpyx7mm1WuQlx/ygErEQBzgi5Nh5qBHIoYweprhtMkTCb9GhcAIcsA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", + "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", "dev": true, "requires": { - "acorn": "^6.0.2", + "acorn": "^6.0.7", "acorn-jsx": "^5.0.0", "eslint-visitor-keys": "^1.0.0" } @@ -3004,13 +3004,12 @@ } }, "file-entry-cache": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", - "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", "dev": true, "requires": { - "flat-cache": "^1.2.1", - "object-assign": "^4.0.1" + "flat-cache": "^2.0.1" } }, "file-type": { @@ -3067,17 +3066,22 @@ } }, "flat-cache": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", - "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", "dev": true, "requires": { - "circular-json": "^0.3.1", - "graceful-fs": "^4.1.2", - "rimraf": "~2.6.2", - "write": "^0.2.1" + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" } }, + "flatted": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", + "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", + "dev": true + }, "fn-name": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", @@ -7782,21 +7786,21 @@ "dev": true }, "table": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/table/-/table-5.2.2.tgz", - "integrity": "sha512-f8mJmuu9beQEDkKHLzOv4VxVYlU68NpdzjbGPl69i4Hx0sTopJuNxuzJd17iV2h24dAfa93u794OnDA5jqXvfQ==", + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/table/-/table-5.2.3.tgz", + "integrity": "sha512-N2RsDAMvDLvYwFcwbPyF3VmVSSkuF+G1e+8inhBLtHpvwXGw4QRPEZhihQNeEN0i1up6/f6ObCJXNdlRG3YVyQ==", "dev": true, "requires": { - "ajv": "^6.6.1", + "ajv": "^6.9.1", "lodash": "^4.17.11", - "slice-ansi": "^2.0.0", - "string-width": "^2.1.1" + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" }, "dependencies": { "ajv": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.8.1.tgz", - "integrity": "sha512-eqxCp82P+JfqL683wwsL73XmFs1eG6qjw+RD3YHx+Jll1r0jNd4dh8QG9NYAeNGA/hnZjeEDgtTskgJULbxpWQ==", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -7806,9 +7810,9 @@ } }, "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.0.0.tgz", + "integrity": "sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==", "dev": true }, "fast-deep-equal": { @@ -7841,22 +7845,23 @@ } }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.0.0.tgz", + "integrity": "sha512-rr8CUxBbvOZDUvc5lNIJ+OC1nPVpz+Siw9VBtUjB9b6jZehZLFt0JMCZzShFHIsI8cbhm0EsNIfWJMFV3cu3Ew==", "dev": true, "requires": { + "emoji-regex": "^7.0.1", "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "strip-ansi": "^5.0.0" } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.0.0.tgz", + "integrity": "sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^4.0.0" } } } @@ -8424,9 +8429,9 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "write": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", - "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", "dev": true, "requires": { "mkdirp": "^0.5.1" diff --git a/packages/project/package.json b/packages/project/package.json index e49346aea57..5bd26ee492e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -106,7 +106,7 @@ "coveralls": "^3.0.1", "cross-env": "^5.2.0", "docdash": "^1.0.2", - "eslint": "^5.13.0", + "eslint": "^5.15.1", "eslint-config-google": "^0.11.0", "eslint-plugin-jsdoc": "^4.0.1", "jsdoc": "^3.5.5", From 91ff5d053ff58952067e0acbfd982f1d0ad2b1cf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 5 Mar 2019 09:43:44 +0000 Subject: [PATCH 0153/1272] [ui5-project]Bump docdash from 1.0.2 to 1.0.3 Bumps [docdash](https://github.com/clenemt/docdash) from 1.0.2 to 1.0.3. - [Release notes](https://github.com/clenemt/docdash/releases) - [Changelog](https://github.com/clenemt/docdash/blob/master/CHANGELOG.md) - [Commits](https://github.com/clenemt/docdash/compare/1.0.2...1.0.3) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 125e57c4d01..b791146ce25 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2286,9 +2286,9 @@ } }, "docdash": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.2.tgz", - "integrity": "sha512-IEM57bWPLtVXpUeCKbiGvHsHtW9O9ZiiBPfeQDAZ7JdQiAF3aNWQoJ3e/+uJ63lHO009yn0tbJjtKpXJ2AURCQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.3.tgz", + "integrity": "sha512-gPepWBPJSWK70PRqOtxLvZ2FLJlw49DZASs73yqmM7uM45WEygQJmHPBrrQ9eLeEkgPKUzDv+sr2SHgQS1OQ0g==", "dev": true }, "doctrine": { diff --git a/packages/project/package.json b/packages/project/package.json index 5bd26ee492e..81d937fdf7f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,7 +105,7 @@ "ava": "^0.25.0", "coveralls": "^3.0.1", "cross-env": "^5.2.0", - "docdash": "^1.0.2", + "docdash": "^1.0.3", "eslint": "^5.15.1", "eslint-config-google": "^0.11.0", "eslint-plugin-jsdoc": "^4.0.1", From 779783952558dc9c95d4e5dcf478b5fd08fc595e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 5 Mar 2019 11:41:09 +0000 Subject: [PATCH 0154/1272] [ui5-project]Bump coveralls from 3.0.2 to 3.0.3 Bumps [coveralls](https://github.com/nickmerwin/node-coveralls) from 3.0.2 to 3.0.3. - [Release notes](https://github.com/nickmerwin/node-coveralls/releases) - [Commits](https://github.com/nickmerwin/node-coveralls/compare/3.0.2...3.0.3) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b791146ce25..d36da9016b9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2031,9 +2031,9 @@ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "coveralls": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.2.tgz", - "integrity": "sha512-Tv0LKe/MkBOilH2v7WBiTBdudg2ChfGbdXafc/s330djpF3zKOmuehTeRwjXWc7pzfj9FrDUTA7tEx6Div8NFw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.3.tgz", + "integrity": "sha512-viNfeGlda2zJr8Gj1zqXpDMRjw9uM54p7wzZdvLRyOgnAfCe974Dq4veZkjJdxQXbmdppu6flEajFYseHYaUhg==", "dev": true, "requires": { "growl": "~> 1.10.0", @@ -2041,7 +2041,7 @@ "lcov-parse": "^0.0.10", "log-driver": "^1.2.7", "minimist": "^1.2.0", - "request": "^2.85.0" + "request": "^2.86.0" }, "dependencies": { "minimist": { diff --git a/packages/project/package.json b/packages/project/package.json index 81d937fdf7f..b39c7ad502c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ }, "devDependencies": { "ava": "^0.25.0", - "coveralls": "^3.0.1", + "coveralls": "^3.0.3", "cross-env": "^5.2.0", "docdash": "^1.0.3", "eslint": "^5.15.1", From b406f8bb315a76e28a4da7a353893f3e5b313168 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 5 Mar 2019 11:40:56 +0000 Subject: [PATCH 0155/1272] [ui5-project]Bump eslint-plugin-jsdoc from 4.0.1 to 4.1.1 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 4.0.1 to 4.1.1. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v4.0.1...v4.1.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d36da9016b9..e9cfd785948 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2665,12 +2665,12 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.0.1.tgz", - "integrity": "sha512-aQ7UeIGmaXGWJhYz1S81Pg5A+P6P+c1ebdV9BfG+RdVlx8WB6HVVKhdnIfvHVmD9vjsma89OjOzVSBNxJQ5x8g==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.1.1.tgz", + "integrity": "sha512-ZsMmZbhnJBJDwTY+iNUDW5qV9pmXMC+6LPtthPExIJHQyv+rNHU87xjfeCbVciecJ/oHb8HK1ho4eOQbHZfvag==", "dev": true, "requires": { - "comment-parser": "^0.5.1", + "comment-parser": "^0.5.4", "jsdoctypeparser": "^2.0.0-alpha-8", "lodash": "^4.17.11" } diff --git a/packages/project/package.json b/packages/project/package.json index b39c7ad502c..cf81eda8c27 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -108,7 +108,7 @@ "docdash": "^1.0.3", "eslint": "^5.15.1", "eslint-config-google": "^0.11.0", - "eslint-plugin-jsdoc": "^4.0.1", + "eslint-plugin-jsdoc": "^4.1.1", "jsdoc": "^3.5.5", "nyc": "^13.3.0", "opn-cli": "^4.0.0", From 0321bf2769ab150e645b700fba1b20be87062899 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 6 Mar 2019 05:26:45 +0000 Subject: [PATCH 0156/1272] [ui5-project]Bump @ui5/builder from 1.0.1 to 1.0.2 Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 1.0.1 to 1.0.2. - [Release notes](https://github.com/SAP/ui5-builder/releases) - [Changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-builder/compare/v1.0.1...v1.0.2) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 57 +++++++++++++----------------- packages/project/package.json | 2 +- 2 files changed, 26 insertions(+), 33 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e9cfd785948..7ed5c151d92 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -317,9 +317,9 @@ "dev": true }, "@ui5/builder": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.1.tgz", - "integrity": "sha512-XxlDqwL8oTxpXsSlnI5H20pM/lIYdOC8jP/QQc3rOF6sIaj92Mw/xFnBIWmqriqUEjnBtOvfqvPpoyO6WJzaXw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.2.tgz", + "integrity": "sha512-HUMZ4H5vFVXmXTuGMSPuYnpmzPzaUWGNkLbYC4MBChCeUZoO6jwcQ7KvP7qYraUFIEiEyBRn2AmUIrFGZuIkmg==", "requires": { "@ui5/fs": "^1.0.1", "@ui5/logger": "^1.0.0", @@ -2133,9 +2133,9 @@ } }, "css-what": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.2.tgz", - "integrity": "sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" }, "currently-unhandled": { "version": "0.4.1", @@ -2301,19 +2301,12 @@ } }, "dom-serializer": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", - "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", "requires": { - "domelementtype": "~1.1.1", - "entities": "~1.1.1" - }, - "dependencies": { - "domelementtype": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", - "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=" - } + "domelementtype": "^1.3.0", + "entities": "^1.1.1" } }, "domelementtype": { @@ -2407,9 +2400,9 @@ } }, "es5-ext": { - "version": "0.10.47", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.47.tgz", - "integrity": "sha512-/1TItLfj+TTfWoeRcDn/0FbGV6SNo4R+On2GGVucPU/j3BWnXE2Co8h8CTo4Tu34gFJtnmwS9xiScKs4EjZhdw==", + "version": "0.10.48", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.48.tgz", + "integrity": "sha512-CdRvPlX/24Mj5L4NVxTs4804sxiS2CjVprgCmrgoDkdmjdY4D+ySHa7K3jJf8R40dFg0tIm3z/dk326LrnuSGw==", "requires": { "es6-iterator": "~2.0.3", "es6-symbol": "~3.1.1", @@ -2483,9 +2476,9 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, "escodegen": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz", - "integrity": "sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", + "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", "requires": { "esprima": "^3.1.3", "estraverse": "^4.2.0", @@ -3917,22 +3910,22 @@ "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==" }, "htmlparser2": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.0.tgz", - "integrity": "sha512-J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", "requires": { - "domelementtype": "^1.3.0", + "domelementtype": "^1.3.1", "domhandler": "^2.3.0", "domutils": "^1.5.1", "entities": "^1.1.1", "inherits": "^2.0.1", - "readable-stream": "^3.0.6" + "readable-stream": "^3.1.1" }, "dependencies": { "readable-stream": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.1.1.tgz", - "integrity": "sha512-DkN66hPyqDhnIQ6Jcsvx9bFjhw214O4poMBcIMgPVpQvNy9a0e0Uhg5SqySyDKAmUlwt8LonTBz1ezOnM8pUdA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.2.0.tgz", + "integrity": "sha512-RV20kLjdmpZuTF1INEb9IA3L68Nmi+Ri7ppZqo78wj//Pn62fCoJyV9zalccNzDD/OuJpMG4f+pfMl8+L6QdGw==", "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index cf81eda8c27..e7ff9eeda1e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.0.1", + "@ui5/builder": "^1.0.2", "@ui5/logger": "^1.0.0", "graceful-fs": "^4.1.15", "js-yaml": "^3.12.1", From 1be7e56ffc3e44957ff27071138f02bc5c261d5e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Tue, 5 Mar 2019 14:02:04 +0000 Subject: [PATCH 0157/1272] [ui5-project]Bump eslint-config-google from 0.11.0 to 0.12.0 Bumps [eslint-config-google](https://github.com/google/eslint-config-google) from 0.11.0 to 0.12.0. - [Release notes](https://github.com/google/eslint-config-google/releases) - [Commits](https://github.com/google/eslint-config-google/compare/0.11.0...0.12.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7ed5c151d92..edd00efe921 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2652,9 +2652,9 @@ } }, "eslint-config-google": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.11.0.tgz", - "integrity": "sha512-z541Fs5TFaY7/35v/z100InQ2f3V2J7e3u/0yKrnImgsHjh6JWgSRngfC/mZepn/+XN16jUydt64k//kxXc1fw==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.12.0.tgz", + "integrity": "sha512-SHDM3nIRCJBACjf8c/H6FvCwRmKbphESNl3gJFBNbw4KYDLCONB3ABYLXDGF+iaVP9XSTND/Q5/PuGoFkp4xbg==", "dev": true }, "eslint-plugin-jsdoc": { diff --git a/packages/project/package.json b/packages/project/package.json index e7ff9eeda1e..8e5d03a0406 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -107,7 +107,7 @@ "cross-env": "^5.2.0", "docdash": "^1.0.3", "eslint": "^5.15.1", - "eslint-config-google": "^0.11.0", + "eslint-config-google": "^0.12.0", "eslint-plugin-jsdoc": "^4.1.1", "jsdoc": "^3.5.5", "nyc": "^13.3.0", From c0b47d1f9860ca4703ead73868d97906ed2fe0c2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 13 Mar 2019 11:07:39 +0100 Subject: [PATCH 0158/1272] [ui5-project][INTERNAL] Configuration docs: Fix YAML indentations --- packages/project/README.md | 13 +-- packages/project/docs/BuildExtensibility.md | 28 ++--- packages/project/docs/Configuration.md | 121 ++++++++++---------- 3 files changed, 80 insertions(+), 82 deletions(-) diff --git a/packages/project/README.md b/packages/project/README.md index 8239e901bbb..6f64491c5a5 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -73,13 +73,12 @@ id: testsuite version: "" path: "./" dependencies: -- id: sap.f - version: "" - path: "../sap.f" - -- id: sap.m - version: "" - path: "../sap.m" + - id: sap.f + version: "" + path: "../sap.f" + - id: sap.m + version: "" + path: "../sap.m" ```` This can be used via `ui5 serve -b static:/path/to/projectDependencies.yaml` diff --git a/packages/project/docs/BuildExtensibility.md b/packages/project/docs/BuildExtensibility.md index f9f1f978916..8574fb6f3a4 100644 --- a/packages/project/docs/BuildExtensibility.md +++ b/packages/project/docs/BuildExtensibility.md @@ -21,12 +21,12 @@ metadata: name: my.library builder: customTasks: - - name: babel - beforeTask: generateComponentPreload - - name: generateMarkdownFiles - afterTask: uglify - configuration: - color: blue + - name: babel + beforeTask: generateComponentPreload + - name: generateMarkdownFiles + afterTask: uglify + configuration: + color: blue ```` ### Example: Connect multiple custom tasks @@ -42,10 +42,10 @@ metadata: name: my.library builder: customTasks: - - name: myCustomTask1 - beforeTask: generateComponentPreload - - name: myCustomTask2 - afterTask: myCustomTask1 + - name: myCustomTask1 + beforeTask: generateComponentPreload + - name: myCustomTask2 + afterTask: myCustomTask1 ```` ## Custom Task Extension @@ -83,10 +83,10 @@ metadata: name: my.library builder: customTasks: - - name: generateMarkdownFiles - afterTask: uglify - configuration: - color: blue + - name: generateMarkdownFiles + afterTask: uglify + configuration: + color: blue --- # Task extension as part of your project specVersion: "1.0" diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 47295d41823..357997eddd7 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -6,8 +6,8 @@ The content represents the **[Specification Version](#specification-versions) `1 ## Contents - [Project Configuration](#project-configuration) - [Extension Configuration](#extension-configuration) - + [Tasks](#tasks) - + [Project Shims](#project-shims) + + [Tasks](#tasks) + + [Project Shims](#project-shims) - [Specification Versions](#specification-versions) ## Project Configuration @@ -70,12 +70,12 @@ Some general information: #### resources (optional) - `configuration` - `paths`: Mapping between virtual paths and physical paths. Physical paths are always relative to the projects root directory - + `webapp: webapp`: This path will be mapped to the virtual path `/`. - *(Only available for projects of type `application`)* - + `src: src`: This path will be mapped to the virtual path `/resources`. - *(Only available for projects of type `library`)* - + `test: test`: This path will be mapped to the virtual path `/test-resources`. - *(Only available for projects of type `library`)* + + `webapp: webapp`: This path will be mapped to the virtual path `/`. + *(Only available for projects of type `application`)* + + `src: src`: This path will be mapped to the virtual path `/resources`. + *(Only available for projects of type `library`)* + + `test: test`: This path will be mapped to the virtual path `/test-resources`. + *(Only available for projects of type `library`)* + `: ` (default `/: ./`): Any virtual path mapping can be defined here. *(Only available for projects of type `module`)* It is recommended that modules include their namespace in the virtual path and use the `/resources` prefix (e.g. `/resources/my/first/library/module-xy`). @@ -111,31 +111,30 @@ specVersion: "1.0" kind: extension type: project-shim metadata: - name: + name: shims: - configurations: - : - specVersion: "1.0", - type: - metadata: - name: - : - specVersion: "1.0", - type: - metadata: - name: - dependencies: - : - - - - - - - - ... - collections: - : - modules: - : - : - : + configurations: + : + specVersion: "1.0", + type: + metadata: + name: + : + specVersion: "1.0", + type: + metadata: + name: + dependencies: + : + - + - + - + collections: + : + modules: + : + : + : ``` "module name" refers to the name of the module as identified by the used translator. E.g. when using the npm translator, the name declared in the modules `package.json` is used here. In most cases, the module name also becomes the internal ID of the project. @@ -248,41 +247,41 @@ The shim defined in the application configures the legacy libraries and defines specVersion: "1.0" type: application metadata: - name: application.a + name: application.a ---- specVersion: "1.0" kind: extension type: project-shim metadata: - name: legacy-lib-shims + name: legacy-lib-shims shims: - configurations: - legacy-library-a: - specVersion: "1.0" - type: library - metadata: - name: legacy.library.a - legacy-library-b: - specVersion: "1.0" - type: library - metadata: - name: legacy.library.b - legacy-library-x: - specVersion: "1.0" - type: library - metadata: - name: legacy.library.x - dependencies: - legacy-library-a: - - legacy-library-b - - legacy-library-x - legacy-library-b: - - legacy-library-x - collections: - legacy-libs: - modules: - legacy-library-a: src/library.a - legacy-library-b: src/library.b + configurations: + legacy-library-a: + specVersion: "1.0" + type: library + metadata: + name: legacy.library.a + legacy-library-b: + specVersion: "1.0" + type: library + metadata: + name: legacy.library.b + legacy-library-x: + specVersion: "1.0" + type: library + metadata: + name: legacy.library.x + dependencies: + legacy-library-a: + - legacy-library-b + - legacy-library-x + legacy-library-b: + - legacy-library-x + collections: + legacy-libs: + modules: + legacy-library-a: src/library.a + legacy-library-b: src/library.b ``` ## Specification Versions From 665e663651f7b691b30358d6ef6c24f9b561d573 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 13 Mar 2019 11:12:03 +0100 Subject: [PATCH 0159/1272] [ui5-project][INTERNAL] Configuration docs: Add JSDoc excludes option --- packages/project/docs/Configuration.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 357997eddd7..7ea1814430c 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -33,15 +33,15 @@ Configuration can also be supplied by other means. In cases where JSON is used, specVersion: "1.0" type: application|library|module metadata: - name: testsuite + name: some.project.name copyright: |- * (c) Copyright 2009-${currentYear} resources: configuration: paths: - "": "" - "": "" + "": "" + "": "" builder: customTasks: - name: custom-task-name-1 @@ -52,6 +52,9 @@ builder: afterTask: custom-task-name-1 configuration: color: blue + jsdoc: + excludes: + - some/project/name/thirdparty/** server: settings: port: 8099 @@ -82,9 +85,11 @@ Some general information: #### builder (optional) - `customTasks` (optional, list): In this block, you define additional custom build tasks, see [here](./BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: - - `name` (mandatory): The name of the custom task - - `afterTask` or `beforeTask` (only one, mandatory): The name of the build task after or before which your custom task will be executed. - - `configuration` (optional): Additional configuration that is passed to the custom build task + - `name` (mandatory): The name of the custom task + - `afterTask` or `beforeTask` (only one, mandatory): The name of the build task after or before which your custom task will be executed. + - `configuration` (optional): Additional configuration that is passed to the custom build task +- `jsdoc` + - `excludes`: List of glob patterns. Matching resources will be ignored from the JSDoc build #### server (optional) - `settings` (not yet implemented) From 34075557c41fa36a177a0fd7f87b6ba1b034bcf5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Fri, 22 Mar 2019 10:56:21 +0100 Subject: [PATCH 0160/1272] [ui5-project][DEPENDENCY] Bump @ui5/builder from 1.0.2 to 1.0.3 (#154) Bumps [@ui5/builder](https://github.com/SAP/ui5-builder) from 1.0.2 to 1.0.3.
Release notes *Sourced from [@ui5/builder's releases](https://github.com/SAP/ui5-builder/releases).* > ## v1.0.3 > > ### Dependency Updates > - Bump [@​ui5](https://github.com/ui5)/fs from 1.0.1 to 1.0.2 ([#214](https://github-redirect.dependabot.com/SAP/ui5-builder/issues/214)) [`eb85e0a`](https://github.com/SAP/ui5-builder/commit/eb85e0afa1e5e82571312448ce8ab7ef87a7bcbc) > - Bump [@​ui5](https://github.com/ui5)/logger from 1.0.0 to 1.0.1 ([#212](https://github-redirect.dependabot.com/SAP/ui5-builder/issues/212)) [`20557e8`](https://github.com/SAP/ui5-builder/commit/20557e85ac0de835b5d5ff455d613d102521d3c7) > > ### Features > - Add JSDoc build functionalities ([#42](https://github-redirect.dependabot.com/SAP/ui5-builder/issues/42)) [`293a4b0`](https://github.com/SAP/ui5-builder/commit/293a4b0ae44706490fb568be69d4032150a2891a) > > > ### All changes > [`v1.0.2...v1.0.3`] > > > [`v1.0.2...v1.0.3`]: https://github.com/SAP/ui5-builder/compare/v1.0.2...v1.0.3
Changelog *Sourced from [@ui5/builder's changelog](https://github.com/SAP/ui5-builder/blob/master/CHANGELOG.md).* > ## [v1.0.3] - 2019-03-21 > ### Dependency Updates > - Bump [@​ui5](https://github.com/ui5)/fs from 1.0.1 to 1.0.2 ([#214](https://github-redirect.dependabot.com/SAP/ui5-builder/issues/214)) [`eb85e0a`](https://github.com/SAP/ui5-builder/commit/eb85e0afa1e5e82571312448ce8ab7ef87a7bcbc) > - Bump [@​ui5](https://github.com/ui5)/logger from 1.0.0 to 1.0.1 ([#212](https://github-redirect.dependabot.com/SAP/ui5-builder/issues/212)) [`20557e8`](https://github.com/SAP/ui5-builder/commit/20557e85ac0de835b5d5ff455d613d102521d3c7) > > ### Features > - Add JSDoc build functionalities ([#42](https://github-redirect.dependabot.com/SAP/ui5-builder/issues/42)) [`293a4b0`](https://github.com/SAP/ui5-builder/commit/293a4b0ae44706490fb568be69d4032150a2891a) > > >
Commits - [`6ec51dc`](https://github.com/SAP/ui5-builder/commit/6ec51dc668a355f3da50f8ded4a20012a5a3e8a0) Release 1.0.3 - [`eb85e0a`](https://github.com/SAP/ui5-builder/commit/eb85e0afa1e5e82571312448ce8ab7ef87a7bcbc) [DEPENDENCY] Bump @ui5/fs from 1.0.1 to 1.0.2 ([#214](https://github-redirect.dependabot.com/SAP/ui5-builder/issues/214)) - [`c5a6ab4`](https://github.com/SAP/ui5-builder/commit/c5a6ab49ee270ec5a6a0649d357c979b2c5e353e) Bump escodegen from 1.11.0 to 1.11.1 - [`20557e8`](https://github.com/SAP/ui5-builder/commit/20557e85ac0de835b5d5ff455d613d102521d3c7) [DEPENDENCY] Bump @ui5/logger from 1.0.0 to 1.0.1 ([#212](https://github-redirect.dependabot.com/SAP/ui5-builder/issues/212)) - [`293a4b0`](https://github.com/SAP/ui5-builder/commit/293a4b0ae44706490fb568be69d4032150a2891a) [FEATURE] Add JSDoc build functionalities ([#42](https://github-redirect.dependabot.com/SAP/ui5-builder/issues/42)) - [`e2c2840`](https://github.com/SAP/ui5-builder/commit/e2c28400ef3f53b9f28bd01b6a8f4fec635bf841) [INTERNAL] ESLint: All promise rejection reasons must be an Error - [`a0a22a9`](https://github.com/SAP/ui5-builder/commit/a0a22a9258e3774db9c818ceef674fbe6dbf003b) Bump eslint-config-google from 0.11.0 to 0.12.0 - [`08d535e`](https://github.com/SAP/ui5-builder/commit/08d535e6e1768e4bc8c903f7018b390ee421f107) Bump eslint-plugin-jsdoc from 4.0.1 to 4.1.1 - [`98b6229`](https://github.com/SAP/ui5-builder/commit/98b6229795ae33ccab36404d1b10ef2b30761ea8) Bump coveralls from 3.0.2 to 3.0.3 - [`0aefbc0`](https://github.com/SAP/ui5-builder/commit/0aefbc03e7e827529d4868c9e54d60fcc5f431c6) Bump docdash from 1.0.2 to 1.0.3 - Additional commits viewable in [compare view](https://github.com/SAP/ui5-builder/compare/v1.0.2...v1.0.3)

[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=@ui5/builder&package-manager=npm_and_yarn&previous-version=1.0.2&new-version=1.0.3)](https://dependabot.com/compatibility-score.html?dependency-name=@ui5/builder&package-manager=npm_and_yarn&previous-version=1.0.2&new-version=1.0.3) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot ignore this [patch|minor|major] version` will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Automerge options (never/patch/minor, and dev/runtime dependencies) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) Finally, you can contact us by mentioning @dependabot.
--- packages/project/package-lock.json | 145 +++++++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 98 insertions(+), 49 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index edd00efe921..b692e6fb4dd 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -317,29 +317,54 @@ "dev": true }, "@ui5/builder": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.2.tgz", - "integrity": "sha512-HUMZ4H5vFVXmXTuGMSPuYnpmzPzaUWGNkLbYC4MBChCeUZoO6jwcQ7KvP7qYraUFIEiEyBRn2AmUIrFGZuIkmg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.3.tgz", + "integrity": "sha512-BLLHIFYCZlJ1Krb+0XEYAtioGYVGFiPsnBVVDP5P2DxEbq7qXevXrLg/f3Mxw+lN7kvKKhHCXRhfyM2+BTjLxA==", "requires": { - "@ui5/fs": "^1.0.1", - "@ui5/logger": "^1.0.0", + "@ui5/fs": "^1.0.2", + "@ui5/logger": "^1.0.1", "cheerio": "^0.22.0", - "escodegen": "^1.11.0", + "escodegen": "^1.11.1", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "^4.2.0", "globby": "^7.1.1", "graceful-fs": "^4.1.15", + "jsdoc": "^3.5.5", "less-openui5": "^0.6.0", + "make-dir": "^2.0.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "semver": "^5.6.0", + "tmp": "0.0.33", "uglify-es": "^3.2.2", "xml2js": "^0.4.17", "yazl": "^2.5.1" }, "dependencies": { + "@ui5/logger": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", + "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", + "requires": { + "npmlog": "^4.1.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, "semver": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", @@ -348,20 +373,50 @@ } }, "@ui5/fs": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.1.tgz", - "integrity": "sha512-Ic/D1KFVZTbkOEBfwlmMzEFfmxIK9krcczsWVxvQ4xv8TNGqaaz1i4KBVYvM7h7VVMTNLPiHUnKvIyyQkdTa7Q==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.2.tgz", + "integrity": "sha512-8Fc4iqpo/sm2KMGV0MiesqWPoCVDf9OnWVWqdoJ0c7GwAh6olt2EDPtnjtQ0tLMW2Uovdh/Nz+S1qecY0Yb1GA==", "requires": { - "@ui5/logger": "^1.0.0", + "@ui5/logger": "^1.0.1", "clone": "^2.1.0", "dir-glob": "2.0.0", "globby": "^7.1.1", "graceful-fs": "^4.1.15", - "make-dir": "^1.1.0", + "make-dir": "^2.1.0", "micromatch": "^3.1.4", "minimatch": "^3.0.3", + "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^1.0.0" + }, + "dependencies": { + "@ui5/logger": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", + "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", + "requires": { + "npmlog": "^4.1.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" + } } }, "@ui5/logger": { @@ -1431,8 +1486,7 @@ "bluebird": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", - "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", - "dev": true + "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==" }, "boolbase": { "version": "1.0.0", @@ -1664,7 +1718,6 @@ "version": "0.8.9", "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", - "dev": true, "requires": { "underscore-contrib": "~0.3.0" } @@ -2400,13 +2453,13 @@ } }, "es5-ext": { - "version": "0.10.48", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.48.tgz", - "integrity": "sha512-CdRvPlX/24Mj5L4NVxTs4804sxiS2CjVprgCmrgoDkdmjdY4D+ySHa7K3jJf8R40dFg0tIm3z/dk326LrnuSGw==", + "version": "0.10.49", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.49.tgz", + "integrity": "sha512-3NMEhi57E31qdzmYp2jwRArIUsj1HI/RxbQ4bgnSB+AIKIxsAmTiK83bYMifIcpWvEc3P1X30DhUKOqEtF/kvg==", "requires": { "es6-iterator": "~2.0.3", "es6-symbol": "~3.1.1", - "next-tick": "1" + "next-tick": "^1.0.0" } }, "es6-error": { @@ -3698,6 +3751,11 @@ "wide-align": "^1.1.0" } }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + }, "get-port": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", @@ -4520,7 +4578,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", - "dev": true, "requires": { "xmlcreate": "^1.0.1" } @@ -4535,7 +4592,6 @@ "version": "3.5.5", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", - "dev": true, "requires": { "babylon": "7.0.0-beta.19", "bluebird": "~3.5.0", @@ -4554,14 +4610,12 @@ "babylon": { "version": "7.0.0-beta.19", "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", - "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==", - "dev": true + "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, "requires": { "minimist": "0.0.8" } @@ -4638,7 +4692,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", - "dev": true, "requires": { "graceful-fs": "^4.1.9" } @@ -4884,6 +4937,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, "requires": { "pify": "^3.0.0" } @@ -4910,8 +4964,7 @@ "marked": { "version": "0.3.19", "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==", - "dev": true + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" }, "matcher": { "version": "1.1.1", @@ -5128,8 +5181,7 @@ "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" }, "minimist-options": { "version": "3.0.2", @@ -5166,6 +5218,15 @@ "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", "optional": true }, + "mock-require": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", + "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", + "requires": { + "get-caller-file": "^1.0.2", + "normalize-path": "^2.1.1" + } + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -5267,7 +5328,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, "requires": { "remove-trailing-separator": "^1.0.1" } @@ -6579,8 +6639,7 @@ "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" }, "p-finally": { "version": "1.0.0", @@ -7113,8 +7172,7 @@ "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" }, "repeat-element": { "version": "1.1.2", @@ -7182,7 +7240,6 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", - "dev": true, "requires": { "underscore": "~1.6.0" }, @@ -7190,8 +7247,7 @@ "underscore": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", - "dev": true + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" } } }, @@ -7722,8 +7778,7 @@ "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" }, "supertap": { "version": "1.0.0", @@ -7862,8 +7917,7 @@ "taffydb": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=", - "dev": true + "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" }, "tap-nyan": { "version": "1.1.0", @@ -7999,7 +8053,6 @@ "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, "requires": { "os-tmpdir": "~1.0.2" } @@ -8138,14 +8191,12 @@ "underscore": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", - "dev": true + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" }, "underscore-contrib": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", - "dev": true, "requires": { "underscore": "1.6.0" }, @@ -8153,8 +8204,7 @@ "underscore": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", - "dev": true + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" } } }, @@ -8507,8 +8557,7 @@ "xmlcreate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", - "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=", - "dev": true + "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" }, "xtend": { "version": "4.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 8e5d03a0406..6a43eaf7cd9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.0.2", + "@ui5/builder": "^1.0.3", "@ui5/logger": "^1.0.0", "graceful-fs": "^4.1.15", "js-yaml": "^3.12.1", From bf891ee9c7c615cb2b43c1957701f2d6f41f7eb7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Fri, 22 Mar 2019 09:58:44 +0000 Subject: [PATCH 0161/1272] [ui5-project]Bump js-yaml from 3.12.1 to 3.13.0 Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.12.1 to 3.13.0. - [Release notes](https://github.com/nodeca/js-yaml/releases) - [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md) - [Commits](https://github.com/nodeca/js-yaml/compare/3.12.1...3.13.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 13 +++---------- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b692e6fb4dd..ccfb9b489bc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -4559,19 +4559,12 @@ "dev": true }, "js-yaml": { - "version": "3.12.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.1.tgz", - "integrity": "sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.0.tgz", + "integrity": "sha512-pZZoSxcCYco+DIKBTimr67J6Hy+EYGZDY/HCWC+iAEA9h1ByhMXAIVUXMcMFpOCxQ/xjXmPI2MkDL5HRm5eFrQ==", "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - } } }, "js2xmlparser": { diff --git a/packages/project/package.json b/packages/project/package.json index 6a43eaf7cd9..a823537e92c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -95,7 +95,7 @@ "@ui5/builder": "^1.0.3", "@ui5/logger": "^1.0.0", "graceful-fs": "^4.1.15", - "js-yaml": "^3.12.1", + "js-yaml": "^3.13.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", From beea2d2057c5c6810b2132782feab861a0ceb6ae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Fri, 22 Mar 2019 13:35:19 +0000 Subject: [PATCH 0162/1272] [ui5-project]Bump @ui5/logger from 1.0.0 to 1.0.1 Bumps [@ui5/logger](https://github.com/SAP/ui5-logger) from 1.0.0 to 1.0.1. - [Release notes](https://github.com/SAP/ui5-logger/releases) - [Changelog](https://github.com/SAP/ui5-logger/blob/master/CHANGELOG.md) - [Commits](https://github.com/SAP/ui5-logger/compare/v1.0.0...v1.0.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ccfb9b489bc..05092a500cc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -420,9 +420,9 @@ } }, "@ui5/logger": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.0.tgz", - "integrity": "sha512-bauL02Ut6NPRjJHkOK0POFtbxOzdneLzJA+ZftnZBzjnFZxBIQ+ptY14yqkFfRZbWFcFHojQseW7hV3k9wFtwA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", + "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", "requires": { "npmlog": "^4.1.2" } diff --git a/packages/project/package.json b/packages/project/package.json index a823537e92c..a1d14ad8187 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ }, "dependencies": { "@ui5/builder": "^1.0.3", - "@ui5/logger": "^1.0.0", + "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.0", "pretty-hrtime": "^1.0.3", From e411150adde248fa14cf188ada21a5d0d9619752 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 1 Apr 2019 19:26:30 +0200 Subject: [PATCH 0163/1272] [ui5-project][INTERNAL] npm translator: Tests log-level based conditionals Currently required to restore code coverage levels from before @ui5/logger v1.0.1 --- packages/project/package.json | 1 + packages/project/test/lib/translators/npm.js | 17 +++++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/packages/project/package.json b/packages/project/package.json index a1d14ad8187..92b00087f1d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,6 +96,7 @@ "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.0", + "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index c21dd45b20d..8f89be973ee 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -1,6 +1,6 @@ const {test} = require("ava"); const path = require("path"); -const npmTranslator = require("../../..").translators.npm; +const mock = require("mock-require"); const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); const applicationCPath = path.join(__dirname, "..", "..", "fixtures", "application.c"); const applicationC2Path = path.join(__dirname, "..", "..", "fixtures", "application.c2"); @@ -11,9 +11,22 @@ const applicationGPath = path.join(__dirname, "..", "..", "fixtures", "applicati const errApplicationAPath = path.join(__dirname, "..", "..", "fixtures", "err.application.a"); const cycleDepsBasePath = path.join(__dirname, "..", "..", "fixtures", "cyclic-deps", "node_modules"); -test("AppA: project with collection dependency", (t) => { +let npmTranslator = require("../../../lib/translators/npm"); + +test.serial("AppA: project with collection dependency", (t) => { + // Also cover log level based conditionals in this test + const logger = require("@ui5/logger"); + mock("@ui5/logger", { + getLogger: () => { + const log = logger.getLogger(); + log.isLevelEnabled = () => true; + return log; + } + }); + npmTranslator = mock.reRequire("../../../lib/translators/npm"); return npmTranslator.generateDependencyTree(applicationAPath).then((parsedTree) => { t.deepEqual(parsedTree, applicationATree, "Parsed correctly"); + mock.stop("@ui5/logger"); }); }); From ea0657437ddc3423952972065e7558245fa4f338 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 2 Apr 2019 13:51:12 +0000 Subject: [PATCH 0164/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 17253 ++++++++++++++------------- packages/project/package.json | 12 +- 2 files changed, 8668 insertions(+), 8597 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 05092a500cc..022e02fc3fe 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,8593 +1,8664 @@ { - "name": "@ui5/project", - "version": "1.0.1", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@ava/babel-plugin-throws-helper": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-2.0.0.tgz", - "integrity": "sha1-L8H+PCEacQcaTsp7j3r1hCzRrnw=", - "dev": true - }, - "@ava/babel-preset-stage-4": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", - "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", - "dev": true, - "requires": { - "babel-plugin-check-es2015-constants": "^6.8.0", - "babel-plugin-syntax-trailing-function-commas": "^6.20.0", - "babel-plugin-transform-async-to-generator": "^6.16.0", - "babel-plugin-transform-es2015-destructuring": "^6.19.0", - "babel-plugin-transform-es2015-function-name": "^6.9.0", - "babel-plugin-transform-es2015-modules-commonjs": "^6.18.0", - "babel-plugin-transform-es2015-parameters": "^6.21.0", - "babel-plugin-transform-es2015-spread": "^6.8.0", - "babel-plugin-transform-es2015-sticky-regex": "^6.8.0", - "babel-plugin-transform-es2015-unicode-regex": "^6.11.0", - "babel-plugin-transform-exponentiation-operator": "^6.8.0", - "package-hash": "^1.2.0" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", - "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "package-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", - "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", - "dev": true, - "requires": { - "md5-hex": "^1.3.0" - } - } - } - }, - "@ava/babel-preset-transform-test-files": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-3.0.0.tgz", - "integrity": "sha1-ze0RlqjY2TgaUJJAq5LpGl7Aafc=", - "dev": true, - "requires": { - "@ava/babel-plugin-throws-helper": "^2.0.0", - "babel-plugin-espower": "^2.3.2" - } - }, - "@ava/write-file-atomic": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ava/write-file-atomic/-/write-file-atomic-2.2.0.tgz", - "integrity": "sha512-BTNB3nGbEfJT+69wuqXFr/bQH7Vr7ihx2xGOMNqPgDGhwspoZhiWumDDZNjBy7AScmqS5CELIOGtPVXESyrnDA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" - } - }, - "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", - "dev": true, - "requires": { - "@babel/highlight": "^7.0.0" - } - }, - "@babel/generator": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.3.2.tgz", - "integrity": "sha512-f3QCuPppXxtZOEm5GWPra/uYUjmNQlu9pbAD8D/9jze4pTY83rTtB1igTBSwvkeNlC5gR24zFFkz+2WHLFQhqQ==", - "dev": true, - "requires": { - "@babel/types": "^7.3.2", - "jsesc": "^2.5.1", - "lodash": "^4.17.10", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - } - } - }, - "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", - "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", - "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - } - } - }, - "@babel/parser": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.3.2.tgz", - "integrity": "sha512-QzNUC2RO1gadg+fs21fi0Uu0OuGNzRKEmgCxoLNzbCdoprLwjfmZwzUrpUNfJPaVRwBpDY47A17yYEGWyRelnQ==", - "dev": true - }, - "@babel/template": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.2.2.tgz", - "integrity": "sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.2.2", - "@babel/types": "^7.2.2" - } - }, - "@babel/traverse": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.2.3.tgz", - "integrity": "sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.2.2", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/parser": "^7.2.3", - "@babel/types": "^7.2.2", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.10" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", - "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", - "dev": true - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.3.2.tgz", - "integrity": "sha512-3Y6H8xlUlpbGR+XvawiH0UXehqydTmNmEpozWcXymqwcrwYAl5KMvKtQ+TF6f6E08V6Jur7v/ykdDSF+WDEIXQ==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.10", - "to-fast-properties": "^2.0.0" - }, - "dependencies": { - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - } - } - }, - "@concordance/react": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", - "integrity": "sha512-htrsRaQX8Iixlsek8zQU7tE8wcsTQJ5UhZkSPEA8slCDAisKpC/2VgU/ucPn32M5/LjGGXRaUEKvEw1Wiuu4zQ==", - "dev": true, - "requires": { - "arrify": "^1.0.1" - } - }, - "@ladjs/time-require": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@ladjs/time-require/-/time-require-0.1.4.tgz", - "integrity": "sha512-weIbJqTMfQ4r1YX85u54DKfjLZs2jwn1XZ6tIOP/pFgMwhIN5BAtaCp/1wn9DzyLsDR9tW0R2NIePcVJ45ivQQ==", - "dev": true, - "requires": { - "chalk": "^0.4.0", - "date-time": "^0.1.1", - "pretty-ms": "^0.2.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", - "dev": true - }, - "chalk": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", - "dev": true, - "requires": { - "ansi-styles": "~1.0.0", - "has-color": "~0.1.0", - "strip-ansi": "~0.1.0" - } - }, - "pretty-ms": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", - "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", - "dev": true, - "requires": { - "parse-ms": "^0.1.0" - } - }, - "strip-ansi": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", - "dev": true - } - } - }, - "@sinonjs/commons": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.3.1.tgz", - "integrity": "sha512-rgmZk5CrBGAMATk0HlHOFvo8V44/r+On6cKS80tqid0Eljd+fFBWBOXZp9H2/EB3faxdNdzXTx6QZIKLkbJ7mA==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/formatio": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz", - "integrity": "sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" - } - }, - "@sinonjs/samsam": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.2.0.tgz", - "integrity": "sha512-j5F1rScewLtx6pbTK0UAjA3jJj4RYiSKOix53YWv+Jzy/AZ69qHxUpU8fwVLjyKbEEud9QrLpv6Ggs7WqTimYw==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.0.2", - "array-from": "^2.1.1", - "lodash": "^4.17.11" - } - }, - "@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", - "dev": true - }, - "@ui5/builder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.3.tgz", - "integrity": "sha512-BLLHIFYCZlJ1Krb+0XEYAtioGYVGFiPsnBVVDP5P2DxEbq7qXevXrLg/f3Mxw+lN7kvKKhHCXRhfyM2+BTjLxA==", - "requires": { - "@ui5/fs": "^1.0.2", - "@ui5/logger": "^1.0.1", - "cheerio": "^0.22.0", - "escodegen": "^1.11.1", - "escope": "^3.6.0", - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "globby": "^7.1.1", - "graceful-fs": "^4.1.15", - "jsdoc": "^3.5.5", - "less-openui5": "^0.6.0", - "make-dir": "^2.0.0", - "pretty-data": "^0.40.0", - "pretty-hrtime": "^1.0.3", - "replacestream": "^4.0.3", - "semver": "^5.6.0", - "tmp": "0.0.33", - "uglify-es": "^3.2.2", - "xml2js": "^0.4.17", - "yazl": "^2.5.1" - }, - "dependencies": { - "@ui5/logger": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", - "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", - "requires": { - "npmlog": "^4.1.2" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - }, - "semver": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", - "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" - } - } - }, - "@ui5/fs": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.2.tgz", - "integrity": "sha512-8Fc4iqpo/sm2KMGV0MiesqWPoCVDf9OnWVWqdoJ0c7GwAh6olt2EDPtnjtQ0tLMW2Uovdh/Nz+S1qecY0Yb1GA==", - "requires": { - "@ui5/logger": "^1.0.1", - "clone": "^2.1.0", - "dir-glob": "2.0.0", - "globby": "^7.1.1", - "graceful-fs": "^4.1.15", - "make-dir": "^2.1.0", - "micromatch": "^3.1.4", - "minimatch": "^3.0.3", - "mock-require": "^3.0.3", - "pretty-hrtime": "^1.0.3", - "random-int": "^1.0.0" - }, - "dependencies": { - "@ui5/logger": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", - "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", - "requires": { - "npmlog": "^4.1.2" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - }, - "semver": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", - "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" - } - } - }, - "@ui5/logger": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", - "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", - "requires": { - "npmlog": "^4.1.2" - } - }, - "acorn": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", - "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", - "dev": true - }, - "acorn-jsx": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", - "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", - "dev": true - }, - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "optional": true - }, - "ansi-align": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", - "dev": true, - "requires": { - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "ansi-escapes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", - "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", - "dev": true, - "requires": { - "micromatch": "^2.1.5", - "normalize-path": "^2.0.0" - }, - "dependencies": { - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "requires": { - "is-posix-bracket": "^0.1.0" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - } - } - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "arr-exclude": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", - "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" - }, - "array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" - }, - "asn1": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true - }, - "async-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" - }, - "auto-bind": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.2.0.tgz", - "integrity": "sha512-Zw7pZp7tztvKnWWtoII4AmqH5a2PV3ZN5F0BPRTGcc1kpRm4b6QXQnPU7Znbl6BfPfqOVOV29g4JeMqZQaqqOA==", - "dev": true - }, - "ava": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-0.25.0.tgz", - "integrity": "sha512-4lGNJCf6xL8SvsKVEKxEE46se7JAUIAZoKHw9itTQuwcsydhpAMkBs5gOOiWiwt0JKNIuXWc2/r4r8ZdcNrBEw==", - "dev": true, - "requires": { - "@ava/babel-preset-stage-4": "^1.1.0", - "@ava/babel-preset-transform-test-files": "^3.0.0", - "@ava/write-file-atomic": "^2.2.0", - "@concordance/react": "^1.0.0", - "@ladjs/time-require": "^0.1.4", - "ansi-escapes": "^3.0.0", - "ansi-styles": "^3.1.0", - "arr-flatten": "^1.0.1", - "array-union": "^1.0.1", - "array-uniq": "^1.0.2", - "arrify": "^1.0.0", - "auto-bind": "^1.1.0", - "ava-init": "^0.2.0", - "babel-core": "^6.17.0", - "babel-generator": "^6.26.0", - "babel-plugin-syntax-object-rest-spread": "^6.13.0", - "bluebird": "^3.0.0", - "caching-transform": "^1.0.0", - "chalk": "^2.0.1", - "chokidar": "^1.4.2", - "clean-stack": "^1.1.1", - "clean-yaml-object": "^0.1.0", - "cli-cursor": "^2.1.0", - "cli-spinners": "^1.0.0", - "cli-truncate": "^1.0.0", - "co-with-promise": "^4.6.0", - "code-excerpt": "^2.1.1", - "common-path-prefix": "^1.0.0", - "concordance": "^3.0.0", - "convert-source-map": "^1.5.1", - "core-assert": "^0.2.0", - "currently-unhandled": "^0.4.1", - "debug": "^3.0.1", - "dot-prop": "^4.1.0", - "empower-core": "^0.6.1", - "equal-length": "^1.0.0", - "figures": "^2.0.0", - "find-cache-dir": "^1.0.0", - "fn-name": "^2.0.0", - "get-port": "^3.0.0", - "globby": "^6.0.0", - "has-flag": "^2.0.0", - "hullabaloo-config-manager": "^1.1.0", - "ignore-by-default": "^1.0.0", - "import-local": "^0.1.1", - "indent-string": "^3.0.0", - "is-ci": "^1.0.7", - "is-generator-fn": "^1.0.0", - "is-obj": "^1.0.0", - "is-observable": "^1.0.0", - "is-promise": "^2.1.0", - "last-line-stream": "^1.0.0", - "lodash.clonedeepwith": "^4.5.0", - "lodash.debounce": "^4.0.3", - "lodash.difference": "^4.3.0", - "lodash.flatten": "^4.2.0", - "loud-rejection": "^1.2.0", - "make-dir": "^1.0.0", - "matcher": "^1.0.0", - "md5-hex": "^2.0.0", - "meow": "^3.7.0", - "ms": "^2.0.0", - "multimatch": "^2.1.0", - "observable-to-promise": "^0.5.0", - "option-chain": "^1.0.0", - "package-hash": "^2.0.0", - "pkg-conf": "^2.0.0", - "plur": "^2.0.0", - "pretty-ms": "^3.0.0", - "require-precompiled": "^0.1.0", - "resolve-cwd": "^2.0.0", - "safe-buffer": "^5.1.1", - "semver": "^5.4.1", - "slash": "^1.0.0", - "source-map-support": "^0.5.0", - "stack-utils": "^1.0.1", - "strip-ansi": "^4.0.0", - "strip-bom-buf": "^1.0.0", - "supertap": "^1.0.0", - "supports-color": "^5.0.0", - "trim-off-newlines": "^1.0.1", - "unique-temp-dir": "^1.0.0", - "update-notifier": "^2.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "ava-init": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", - "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", - "dev": true, - "requires": { - "arr-exclude": "^1.0.0", - "execa": "^0.7.0", - "has-yarn": "^1.0.0", - "read-pkg-up": "^2.0.0", - "write-pkg": "^3.1.0" - }, - "dependencies": { - "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "requires": { - "pify": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true, - "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - } - }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - } - } - } - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" - }, - "aws4": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", - "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==" - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "babel-core": { - "version": "6.26.3", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", - "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - } - }, - "babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", - "dev": true, - "requires": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true - } - } - }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true, - "requires": { - "babel-helper-explode-assignable-expression": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true, - "requires": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-espower": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.4.0.tgz", - "integrity": "sha512-/+SRpy7pKgTI28oEHfn1wkuM5QFAdRq8WNsOOih1dVrdV6A/WbNbRZyl0eX5eyDgtb0lOE27PeDFuCX2j8OxVg==", - "dev": true, - "requires": { - "babel-generator": "^6.1.0", - "babylon": "^6.1.0", - "call-matcher": "^1.0.0", - "core-js": "^2.0.0", - "espower-location-detector": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.1.1" - } - }, - "babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", - "dev": true - }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", - "dev": true - }, - "babel-plugin-syntax-object-rest-spread": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", - "dev": true - }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", - "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", - "dev": true - }, - "babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-functions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", - "dev": true, - "requires": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" - } - }, - "babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", - "dev": true, - "requires": { - "babel-helper-call-delegate": "^6.24.1", - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "regexpu-core": "^2.0.0" - } - }, - "babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", - "dev": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", - "babel-plugin-syntax-exponentiation-operator": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "^0.5.6" - } - } - } - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "bcrypt-pbkdf": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", - "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", - "optional": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "binary-extensions": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", - "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", - "dev": true - }, - "bluebird": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", - "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==" - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" - }, - "boxen": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", - "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", - "dev": true, - "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "buf-compare": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", - "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", - "dev": true - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" - }, - "buffer-from": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", - "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "caching-transform": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", - "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", - "dev": true, - "requires": { - "md5-hex": "^1.2.0", - "mkdirp": "^0.5.1", - "write-file-atomic": "^1.1.4" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", - "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "write-file-atomic": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", - "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" - } - } - } - }, - "call-matcher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.0.1.tgz", - "integrity": "sha1-UTTQd5hPcSpU2tPL9i3ijc5BbKg=", - "dev": true, - "requires": { - "core-js": "^2.0.0", - "deep-equal": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.0.0" - } - }, - "call-signature": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", - "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", - "dev": true - }, - "callsites": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.0.0.tgz", - "integrity": "sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw==", - "dev": true - }, - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, - "capture-stack-trace": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", - "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "catharsis": { - "version": "0.8.9", - "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", - "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", - "requires": { - "underscore-contrib": "~0.3.0" - } - }, - "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "cheerio": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", - "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", - "requires": { - "css-select": "~1.2.0", - "dom-serializer": "~0.1.0", - "entities": "~1.1.1", - "htmlparser2": "^3.9.1", - "lodash.assignin": "^4.0.9", - "lodash.bind": "^4.1.4", - "lodash.defaults": "^4.0.1", - "lodash.filter": "^4.4.0", - "lodash.flatten": "^4.2.0", - "lodash.foreach": "^4.3.0", - "lodash.map": "^4.4.0", - "lodash.merge": "^4.4.0", - "lodash.pick": "^4.2.1", - "lodash.reduce": "^4.4.0", - "lodash.reject": "^4.4.0", - "lodash.some": "^4.4.0" - } - }, - "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true, - "requires": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "fsevents": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0" - } - }, - "ci-info": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.3.tgz", - "integrity": "sha512-SK/846h/Rcy8q9Z9CAwGBLfCJ6EkjJWdpelWDufQpqVDYq2Wnnv8zlSO6AMQap02jvhVruKKpEtQOufo3pFhLg==", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "clean-css": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", - "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=", - "optional": true, - "requires": { - "commander": "2.0.x" - } - }, - "clean-stack": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", - "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", - "dev": true - }, - "clean-yaml-object": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", - "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", - "dev": true - }, - "cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", - "dev": true - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-spinners": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", - "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", - "dev": true - }, - "cli-truncate": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", - "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", - "dev": true, - "requires": { - "slice-ansi": "^1.0.0", - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" - }, - "co-with-promise": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", - "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", - "dev": true, - "requires": { - "pinkie-promise": "^1.0.0" - } - }, - "code-excerpt": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", - "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", - "dev": true, - "requires": { - "convert-to-spaces": "^1.0.1" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", - "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", - "dev": true, - "requires": { - "color-name": "^1.1.1" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", - "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", - "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", - "optional": true - }, - "comment-parser": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.4.tgz", - "integrity": "sha512-0h7W6Y1Kb6zKQMJqdX41C5qf9ITCVIsD2qP2RaqDF3GFkXFrmuAuv5zUOuo19YzyC9scjBNpqzuaRQ2Sy5pxMQ==", - "dev": true - }, - "common-path-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", - "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concordance": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", - "integrity": "sha512-CZBzJ3/l5QJjlZM20WY7+5GP5pMTw+1UEbThcpMw8/rojsi5sBCiD8ZbBLtD+jYpRGAkwuKuqk108c154V9eyQ==", - "dev": true, - "requires": { - "date-time": "^2.1.0", - "esutils": "^2.0.2", - "fast-diff": "^1.1.1", - "function-name-support": "^0.2.0", - "js-string-escape": "^1.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.flattendeep": "^4.4.0", - "lodash.merge": "^4.6.0", - "md5-hex": "^2.0.0", - "semver": "^5.3.0", - "well-known-symbols": "^1.0.0" - }, - "dependencies": { - "date-time": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", - "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", - "dev": true, - "requires": { - "time-zone": "^1.0.0" - } - } - } - }, - "configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "convert-source-map": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", - "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", - "dev": true - }, - "convert-to-spaces": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", - "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", - "dev": true - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" - }, - "core-assert": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", - "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", - "dev": true, - "requires": { - "buf-compare": "^1.0.0", - "is-error": "^2.2.0" - } - }, - "core-js": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", - "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "coveralls": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.3.tgz", - "integrity": "sha512-viNfeGlda2zJr8Gj1zqXpDMRjw9uM54p7wzZdvLRyOgnAfCe974Dq4veZkjJdxQXbmdppu6flEajFYseHYaUhg==", - "dev": true, - "requires": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.86.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "create-error-class": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", - "dev": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, - "cross-env": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", - "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.5", - "is-windows": "^1.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - } - } - }, - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", - "dev": true - }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", - "requires": { - "es5-ext": "^0.10.9" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "date-time": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", - "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", - "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - } - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" - }, - "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", - "requires": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - } - }, - "docdash": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.3.tgz", - "integrity": "sha512-gPepWBPJSWK70PRqOtxLvZ2FLJlw49DZASs73yqmM7uM45WEygQJmHPBrrQ9eLeEkgPKUzDv+sr2SHgQS1OQ0g==", - "dev": true - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-serializer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", - "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", - "requires": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" - } - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" - }, - "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "requires": { - "domelementtype": "1" - } - }, - "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", - "dev": true, - "requires": { - "is-obj": "^1.0.0" - } - }, - "duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - } - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", - "dev": true - }, - "ecc-jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", - "optional": true, - "requires": { - "jsbn": "~0.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "empower-core": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", - "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", - "dev": true, - "requires": { - "call-signature": "0.0.2", - "core-js": "^2.0.0" - } - }, - "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" - }, - "equal-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", - "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", - "dev": true - }, - "error-ex": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", - "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es5-ext": { - "version": "0.10.49", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.49.tgz", - "integrity": "sha512-3NMEhi57E31qdzmYp2jwRArIUsj1HI/RxbQ4bgnSB+AIKIxsAmTiK83bYMifIcpWvEc3P1X30DhUKOqEtF/kvg==", - "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.1", - "next-tick": "^1.0.0" - } - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "es6-weak-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", - "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", - "requires": { - "d": "1", - "es5-ext": "^0.10.14", - "es6-iterator": "^2.0.1", - "es6-symbol": "^3.1.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "escodegen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", - "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", - "requires": { - "esprima": "^3.1.3", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "optional": true - } - } - }, - "escope": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", - "requires": { - "es6-map": "^0.1.3", - "es6-weak-map": "^2.0.1", - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint": { - "version": "5.15.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.15.1.tgz", - "integrity": "sha512-NTcm6vQ+PTgN3UBsALw5BMhgO6i5EpIjQF/Xb5tIh3sk9QhrFafujUOczGz4J24JBlzWclSB9Vmx8d+9Z6bFCg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.9.1", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^4.0.2", - "eslint-utils": "^1.3.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^5.0.1", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.7.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^6.2.2", - "js-yaml": "^3.12.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.11", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^5.5.1", - "strip-ansi": "^4.0.0", - "strip-json-comments": "^2.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0" - }, - "dependencies": { - "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "globals": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", - "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", - "dev": true - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "semver": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", - "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "eslint-config-google": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.12.0.tgz", - "integrity": "sha512-SHDM3nIRCJBACjf8c/H6FvCwRmKbphESNl3gJFBNbw4KYDLCONB3ABYLXDGF+iaVP9XSTND/Q5/PuGoFkp4xbg==", - "dev": true - }, - "eslint-plugin-jsdoc": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.1.1.tgz", - "integrity": "sha512-ZsMmZbhnJBJDwTY+iNUDW5qV9pmXMC+6LPtthPExIJHQyv+rNHU87xjfeCbVciecJ/oHb8HK1ho4eOQbHZfvag==", - "dev": true, - "requires": { - "comment-parser": "^0.5.4", - "jsdoctypeparser": "^2.0.0-alpha-8", - "lodash": "^4.17.11" - } - }, - "eslint-scope": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.2.tgz", - "integrity": "sha512-5q1+B/ogmHl8+paxtOKx38Z8LtWkVGuNt3+GQNErqwLl6ViNp/gdJGMCjZNxZ8j/VYjDNZ2Fo+eQc1TAVPIzbg==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", - "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", - "dev": true - }, - "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", - "dev": true - }, - "espower-location-detector": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", - "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", - "dev": true, - "requires": { - "is-url": "^1.2.1", - "path-is-absolute": "^1.0.0", - "source-map": "^0.5.0", - "xtend": "^4.0.0" - } - }, - "espree": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", - "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", - "dev": true, - "requires": { - "acorn": "^6.0.7", - "acorn-jsx": "^5.0.0", - "eslint-visitor-keys": "^1.0.0" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "espurify": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.0.tgz", - "integrity": "sha512-jdkJG9jswjKCCDmEridNUuIQei9algr+o66ZZ19610ZoBsiWLRsQGNYS4HGez3Z/DsR0lhANGAqiwBUclPuNag==", - "dev": true, - "requires": { - "core-js": "^2.0.0" - } - }, - "esquery": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", - "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", - "dev": true, - "requires": { - "estraverse": "^4.0.0" - } - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "requires": { - "estraverse": "^4.1.0" - } - }, - "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" - }, - "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" - }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "events-to-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", - "dev": true - }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "dev": true, - "requires": { - "fill-range": "^2.1.0" - }, - "dependencies": { - "fill-range": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", - "dev": true, - "requires": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^3.0.0", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" - } - }, - "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", - "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" - }, - "fast-diff": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.1.2.tgz", - "integrity": "sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "dev": true, - "requires": { - "flat-cache": "^2.0.1" - } - }, - "file-type": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.7.0.tgz", - "integrity": "sha512-AbaGtdWYYRaVrv2MwL/65myuRJ9j3e79e7etJ79US18QHuVlzJBcQHUH+HxDUoLtbyWRTUfLzLkGXX3pP9kfZg==", - "dev": true - }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", - "dev": true - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-cache-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - } - }, - "flatted": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", - "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", - "dev": true - }, - "fn-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", - "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", - "dev": true - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" - }, - "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", - "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "1.0.6", - "mime-types": "^2.1.12" - } - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "requires": { - "map-cache": "^0.2.2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", - "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "2.6.9", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.21", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": "^2.1.0" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.2.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.1", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.2.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.10.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.0", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.1.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.1.10", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.5.1", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.0.5" - } - }, - "safe-buffer": { - "version": "5.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.5.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.0.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.2.4", - "minizlib": "^1.1.0", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.1", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "function-name-support": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", - "integrity": "sha1-VdO/qm6v1QWlD5vIH99XVkoLsHE=", - "dev": true - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" - }, - "get-port": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - } - }, - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "^2.0.0" - } - }, - "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", - "dev": true, - "requires": { - "ini": "^1.3.4" - } - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "globby": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", - "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", - "requires": { - "array-union": "^1.0.1", - "dir-glob": "^2.0.0", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - } - }, - "got": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", - "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", - "dev": true, - "requires": { - "create-error-class": "^3.0.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" - }, - "har-validator": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", - "requires": { - "ajv": "^5.1.0", - "har-schema": "^2.0.0" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "dev": true - }, - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "has-yarn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", - "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", - "dev": true - }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz", - "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==" - }, - "htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.2.0.tgz", - "integrity": "sha512-RV20kLjdmpZuTF1INEb9IA3L68Nmi+Ri7ppZqo78wj//Pn62fCoJyV9zalccNzDD/OuJpMG4f+pfMl8+L6QdGw==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "hullabaloo-config-manager": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/hullabaloo-config-manager/-/hullabaloo-config-manager-1.1.1.tgz", - "integrity": "sha512-ztKnkZV0TmxnumCDHHgLGNiDnotu4EHCp9YMkznWuo4uTtCyJ+cu+RNcxUeXYKTllpvLFWnbfWry09yzszgg+A==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "es6-error": "^4.0.2", - "graceful-fs": "^4.1.11", - "indent-string": "^3.1.0", - "json5": "^0.5.1", - "lodash.clonedeep": "^4.5.0", - "lodash.clonedeepwith": "^4.5.0", - "lodash.isequal": "^4.5.0", - "lodash.merge": "^4.6.0", - "md5-hex": "^2.0.0", - "package-hash": "^2.0.0", - "pkg-dir": "^2.0.0", - "resolve-from": "^3.0.0", - "safe-buffer": "^5.0.1" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" - }, - "ignore-by-default": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", - "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", - "dev": true - }, - "import-fresh": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", - "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } - } - }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", - "dev": true - }, - "import-local": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", - "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", - "dev": true, - "requires": { - "pkg-dir": "^2.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true - }, - "inquirer": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.2.tgz", - "integrity": "sha512-Z2rREiXA6cHRR9KBOarR3WuLlFzlIfAEIiB45ll5SSadMg7WqOh1MKEjjndfuH5ewXdixWCxqnVfGOQzPeiztA==", - "dev": true, - "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.11", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "strip-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.0.0.tgz", - "integrity": "sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==", - "dev": true, - "requires": { - "ansi-regex": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.0.0.tgz", - "integrity": "sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==", - "dev": true - } - } - } - } - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "irregular-plurals": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz", - "integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "is-builtin-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "requires": { - "builtin-modules": "^1.0.0" - } - }, - "is-ci": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz", - "integrity": "sha512-c7TnwxLePuqIlxHgr7xtxzycJPegNHFuIrBkwbf8hc58//+Op1CqFkyS+xnIMkwn9UsJIwc174BIjkyBmSpjKg==", - "dev": true, - "requires": { - "ci-info": "^1.0.0" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" - } - } - }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", - "dev": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "dev": true, - "requires": { - "is-primitive": "^2.0.0" - } - }, - "is-error": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.1.tgz", - "integrity": "sha1-aEqW2EB2V3yY9M20DG0mpRI78Zw=", - "dev": true - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-generator-fn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", - "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "is-installed-globally": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", - "dev": true, - "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" - } - }, - "is-npm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "is-observable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", - "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", - "dev": true, - "requires": { - "symbol-observable": "^1.1.0" - } - }, - "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "requires": { - "isobject": "^3.0.1" - } - }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", - "dev": true - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", - "dev": true - }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, - "is-redirect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "dev": true - }, - "is-retry-allowed": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "is-url": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", - "dev": true - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.1.0.tgz", - "integrity": "sha512-ooVllVGT38HIk8MxDj/OIHXSYvH+1tq/Vb38s8ixt9GoJadXska4WkGY+0wkmtYCZNYtaARniH/DixUGGLZ0uA==", - "dev": true, - "requires": { - "@babel/generator": "^7.0.0", - "@babel/parser": "^7.0.0", - "@babel/template": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "istanbul-lib-coverage": "^2.0.3", - "semver": "^5.5.0" - } - }, - "js-string-escape": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", - "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.0.tgz", - "integrity": "sha512-pZZoSxcCYco+DIKBTimr67J6Hy+EYGZDY/HCWC+iAEA9h1ByhMXAIVUXMcMFpOCxQ/xjXmPI2MkDL5HRm5eFrQ==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "js2xmlparser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", - "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", - "requires": { - "xmlcreate": "^1.0.1" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "optional": true - }, - "jsdoc": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", - "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", - "requires": { - "babylon": "7.0.0-beta.19", - "bluebird": "~3.5.0", - "catharsis": "~0.8.9", - "escape-string-regexp": "~1.0.5", - "js2xmlparser": "~3.0.0", - "klaw": "~2.0.0", - "marked": "~0.3.6", - "mkdirp": "~0.5.1", - "requizzle": "~0.2.1", - "strip-json-comments": "~2.0.1", - "taffydb": "2.6.2", - "underscore": "~1.8.3" - }, - "dependencies": { - "babylon": { - "version": "7.0.0-beta.19", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", - "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - } - } - } - }, - "jsdoctypeparser": { - "version": "2.0.0-alpha-8", - "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-2.0.0-alpha-8.tgz", - "integrity": "sha1-uvE3+44qVYgQrc8Z0tKi9oDpCl8=", - "dev": true - }, - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "just-extend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", - "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" - }, - "klaw": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", - "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", - "requires": { - "graceful-fs": "^4.1.9" - } - }, - "last-line-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", - "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", - "dev": true, - "requires": { - "through2": "^2.0.0" - } - }, - "latest-version": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", - "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", - "dev": true, - "requires": { - "package-json": "^4.0.0" - } - }, - "lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", - "dev": true - }, - "less": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", - "integrity": "sha1-cc6J7DC3dLNWfyVMZ5WPLywZO94=", - "requires": { - "clean-css": "2.0.x", - "mime": "1.2.x", - "mkdirp": "~0.3.5", - "request": ">=2.12.0", - "source-map": "0.1.x" - }, - "dependencies": { - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "optional": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "less-openui5": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", - "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", - "requires": { - "clone": "^2.1.0", - "css": "^2.2.1", - "less": "1.6.3", - "object-assign": "^4.0.1" - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - }, - "lodash.assignin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" - }, - "lodash.bind": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", - "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "lodash.clonedeepwith": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", - "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true - }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" - }, - "lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", - "dev": true - }, - "lodash.filter": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", - "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" - }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" - }, - "lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", - "dev": true - }, - "lodash.foreach": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", - "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" - }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", - "dev": true - }, - "lodash.map": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", - "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" - }, - "lodash.merge": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", - "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==" - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" - }, - "lodash.reduce": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", - "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" - }, - "lodash.reject": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", - "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=" - }, - "lodash.some": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", - "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" - }, - "log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", - "dev": true - }, - "lolex": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-3.1.0.tgz", - "integrity": "sha512-zFo5MgCJ0rZ7gQg69S4pqBsLURbFw11X68C18OcJjJQbqaXm2NoTrGl1IMM3TIz0/BnN1tIs2tzmmqvCsOMMjw==", - "dev": true - }, - "loose-envify": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", - "dev": true, - "requires": { - "js-tokens": "^3.0.0" - } - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, - "lru-cache": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", - "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "requires": { - "object-visit": "^1.0.0" - } - }, - "marked": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" - }, - "matcher": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", - "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.4" - } - }, - "math-random": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", - "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", - "dev": true - }, - "md5-hex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", - "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "md5-o-matic": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", - "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", - "dev": true - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "mime": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", - "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=", - "optional": true - }, - "mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" - }, - "mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "requires": { - "mime-db": "~1.33.0" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", - "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - } - }, - "mixin-deep": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mkdirp": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", - "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", - "optional": true - }, - "mock-require": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", - "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", - "requires": { - "get-caller-file": "^1.0.2", - "normalize-path": "^2.1.1" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "multimatch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", - "dev": true, - "requires": { - "array-differ": "^1.0.0", - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "minimatch": "^3.0.0" - } - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "nan": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", - "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==", - "dev": true, - "optional": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "nise": { - "version": "1.4.10", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.10.tgz", - "integrity": "sha512-sa0RRbj53dovjc7wombHmVli9ZihXbXCQ2uH3TNm03DyvOSIQbxg+pbqDKrk2oxMK1rtLGVlKxcB9rrc6X5YjA==", - "dev": true, - "requires": { - "@sinonjs/formatio": "^3.1.0", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^2.3.2", - "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "lolex": { - "version": "2.7.5", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", - "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", - "dev": true - } - } - }, - "normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", - "requires": { - "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "requires": { - "remove-trailing-separator": "^1.0.1" - } - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "requires": { - "boolbase": "~1.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "nyc": { - "version": "13.3.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.3.0.tgz", - "integrity": "sha512-P+FwIuro2aFG6B0Esd9ZDWUd51uZrAEoGutqZxzrVmYl3qSfkLgcQpBPBjtDFsUQLFY1dvTQJPOyeqr8S9GF8w==", - "dev": true, - "requires": { - "archy": "^1.0.0", - "arrify": "^1.0.1", - "caching-transform": "^3.0.1", - "convert-source-map": "^1.6.0", - "find-cache-dir": "^2.0.0", - "find-up": "^3.0.0", - "foreground-child": "^1.5.6", - "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.3", - "istanbul-lib-hook": "^2.0.3", - "istanbul-lib-instrument": "^3.1.0", - "istanbul-lib-report": "^2.0.4", - "istanbul-lib-source-maps": "^3.0.2", - "istanbul-reports": "^2.1.1", - "make-dir": "^1.3.0", - "merge-source-map": "^1.1.0", - "resolve-from": "^4.0.0", - "rimraf": "^2.6.3", - "signal-exit": "^3.0.2", - "spawn-wrap": "^1.4.2", - "test-exclude": "^5.1.0", - "uuid": "^3.3.2", - "yargs": "^12.0.5", - "yargs-parser": "^11.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "append-transform": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "default-require-extensions": "^2.0.0" - } - }, - "archy": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "arrify": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "async": { - "version": "2.6.2", - "bundled": true, - "dev": true, - "requires": { - "lodash": "^4.17.11" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "caching-transform": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "hasha": "^3.0.0", - "make-dir": "^1.3.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.3.0" - } - }, - "camelcase": { - "version": "5.0.0", - "bundled": true, - "dev": true - }, - "cliui": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - } - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "commander": { - "version": "2.17.1", - "bundled": true, - "dev": true, - "optional": true - }, - "commondir": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "convert-source-map": { - "version": "1.6.0", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cross-spawn": { - "version": "4.0.2", - "bundled": true, - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "debug": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "decamelize": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "default-require-extensions": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "strip-bom": "^3.0.0" - } - }, - "end-of-stream": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "error-ex": { - "version": "1.3.2", - "bundled": true, - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es6-error": { - "version": "4.1.1", - "bundled": true, - "dev": true - }, - "execa": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "bundled": true, - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - } - } - }, - "find-cache-dir": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "foreground-child": { - "version": "1.5.6", - "bundled": true, - "dev": true, - "requires": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "get-caller-file": { - "version": "1.0.3", - "bundled": true, - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "glob": { - "version": "7.1.3", - "bundled": true, - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "bundled": true, - "dev": true - }, - "handlebars": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "async": "^2.5.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true - } - } - }, - "has-flag": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "hasha": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "is-stream": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "2.7.1", - "bundled": true, - "dev": true - }, - "imurmurhash": { - "version": "0.1.4", - "bundled": true, - "dev": true - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true - }, - "invert-kv": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "bundled": true, - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "isexe": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "istanbul-lib-coverage": { - "version": "2.0.3", - "bundled": true, - "dev": true - }, - "istanbul-lib-hook": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "requires": { - "append-transform": "^1.0.0" - } - }, - "istanbul-lib-report": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "requires": { - "istanbul-lib-coverage": "^2.0.3", - "make-dir": "^1.3.0", - "supports-color": "^6.0.0" - }, - "dependencies": { - "supports-color": { - "version": "6.1.0", - "bundled": true, - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.3", - "make-dir": "^1.3.0", - "rimraf": "^2.6.2", - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true - } - } - }, - "istanbul-reports": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "requires": { - "handlebars": "^4.1.0" - } - }, - "json-parse-better-errors": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "lcid": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "load-json-file": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.11", - "bundled": true, - "dev": true - }, - "lodash.flattendeep": { - "version": "4.4.0", - "bundled": true, - "dev": true - }, - "lru-cache": { - "version": "4.1.5", - "bundled": true, - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "make-dir": { - "version": "1.3.0", - "bundled": true, - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "map-age-cleaner": { - "version": "0.1.3", - "bundled": true, - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, - "mem": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^1.0.0", - "p-is-promise": "^2.0.0" - } - }, - "merge-source-map": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "requires": { - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true - } - } - }, - "mimic-fn": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.10", - "bundled": true, - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true - } - } - }, - "ms": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "nice-try": { - "version": "1.0.5", - "bundled": true, - "dev": true - }, - "normalize-package-data": { - "version": "2.5.0", - "bundled": true, - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-run-path": { - "version": "2.0.2", - "bundled": true, - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "optimist": { - "version": "0.6.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "os-locale": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-defer": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "p-is-promise": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "p-limit": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "package-hash": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^3.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "path-exists": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "path-key": { - "version": "2.0.1", - "bundled": true, - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "bundled": true, - "dev": true - }, - "path-type": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "pseudomap": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "pump": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "read-pkg": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - }, - "release-zalgo": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, - "require-directory": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "require-main-filename": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "resolve": { - "version": "1.10.0", - "bundled": true, - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - }, - "resolve-from": { - "version": "4.0.0", - "bundled": true, - "dev": true - }, - "rimraf": { - "version": "2.6.3", - "bundled": true, - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true - }, - "semver": { - "version": "5.6.0", - "bundled": true, - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true - }, - "spawn-wrap": { - "version": "1.4.2", - "bundled": true, - "dev": true, - "requires": { - "foreground-child": "^1.5.6", - "mkdirp": "^0.5.0", - "os-homedir": "^1.0.1", - "rimraf": "^2.6.2", - "signal-exit": "^3.0.2", - "which": "^1.3.0" - } - }, - "spdx-correct": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "bundled": true, - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.3", - "bundled": true, - "dev": true - }, - "string-width": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "strip-eof": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "test-exclude": { - "version": "5.1.0", - "bundled": true, - "dev": true, - "requires": { - "arrify": "^1.0.1", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^1.0.1" - } - }, - "uglify-js": { - "version": "3.4.9", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "commander": "~2.17.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "uuid": { - "version": "3.3.2", - "bundled": true, - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "which": { - "version": "1.3.1", - "bundled": true, - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "wordwrap": { - "version": "0.0.3", - "bundled": true, - "dev": true - }, - "wrap-ansi": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "write-file-atomic": { - "version": "2.4.2", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "y18n": { - "version": "4.0.0", - "bundled": true, - "dev": true - }, - "yallist": { - "version": "2.1.2", - "bundled": true, - "dev": true - }, - "yargs": { - "version": "12.0.5", - "bundled": true, - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" - } - }, - "yargs-parser": { - "version": "11.1.1", - "bundled": true, - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "requires": { - "isobject": "^3.0.0" - } - }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "dev": true, - "requires": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "requires": { - "isobject": "^3.0.1" - } - }, - "observable-to-promise": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.5.0.tgz", - "integrity": "sha1-yCjw8NxH6fhq+KSXfF1VB2znqR8=", - "dev": true, - "requires": { - "is-observable": "^0.2.0", - "symbol-observable": "^1.0.4" - }, - "dependencies": { - "is-observable": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", - "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", - "dev": true, - "requires": { - "symbol-observable": "^0.2.2" - }, - "dependencies": { - "symbol-observable": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", - "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", - "dev": true - } - } - } - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "opn": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", - "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "opn-cli": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.0.0.tgz", - "integrity": "sha512-/NxjgPPxgYWAEznUwbvQd3H/vfMBRoIy8ZAvKNNgye2TbFE4pToVwmbi34Xo2rkmlfJIeWPa++zUSj4WBVGJxQ==", - "dev": true, - "requires": { - "file-type": "^10.4.0", - "get-stdin": "^6.0.0", - "meow": "^5.0.0", - "opn": "^5.4.0", - "temp-write": "^3.4.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, - "get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - }, - "meow": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", - "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" - } - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - } - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - } - } - }, - "option-chain": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", - "integrity": "sha1-k41zvU4Xg/lI00AjZEraI2aeMPI=", - "dev": true - }, - "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "wordwrap": "~1.0.0" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-limit": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", - "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "package-hash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-2.0.0.tgz", - "integrity": "sha1-eK4ybIngWk2BO2hgGXevBcANKg0=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "lodash.flattendeep": "^4.4.0", - "md5-hex": "^2.0.0", - "release-zalgo": "^1.0.0" - } - }, - "package-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", - "dev": true, - "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" - } - }, - "parent-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.0.tgz", - "integrity": "sha512-8Mf5juOMmiE4FcmzYc4IaiS9L3+9paz2KOiXzkRviCP6aDmN49Hz6EMWz0lGNp9pX80GvvAuLADtyGfW/Em3TA==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "dev": true, - "requires": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parse-ms": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", - "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-parse": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", - "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=" - }, - "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", - "dev": true, - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "requires": { - "pify": "^3.0.0" - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - }, - "pinkie": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", - "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", - "dev": true - }, - "pinkie-promise": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", - "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", - "dev": true, - "requires": { - "pinkie": "^1.0.0" - } - }, - "pkg-conf": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", - "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "load-json-file": "^4.0.0" - } - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } - }, - "plur": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", - "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", - "dev": true, - "requires": { - "irregular-plurals": "^1.0.0" - } - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true - }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", - "dev": true - }, - "pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" - }, - "pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" - }, - "pretty-ms": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.2.0.tgz", - "integrity": "sha512-ZypexbfVUGTFxb0v+m1bUyy92DHe5SyYlnyY0msyms5zd3RwyvNgyxZZsXXgoyzlxjx5MiqtXUdhUfvQbe0A2Q==", - "dev": true, - "requires": { - "parse-ms": "^1.0.0" - }, - "dependencies": { - "parse-ms": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", - "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", - "dev": true - } - } - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" - }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", - "dev": true - }, - "random-int": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", - "integrity": "sha1-5qLtNEisnGZGoGV0Q7HBUhWS7Qg=" - }, - "randomatic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz", - "integrity": "sha512-VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==", - "dev": true, - "requires": { - "is-number": "^4.0.0", - "kind-of": "^6.0.0", - "math-random": "^1.0.1" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", - "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", - "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==" - } - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "readdirp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", - "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "minimatch": "^3.0.2", - "readable-stream": "^2.0.2", - "set-immediate-shim": "^1.0.1" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - }, - "dependencies": { - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - } - } - }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true, - "requires": { - "is-equal-shallow": "^0.1.3" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", - "dev": true - }, - "regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "registry-auth-token": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", - "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", - "dev": true, - "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", - "dev": true, - "requires": { - "rc": "^1.0.1" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - } - }, - "release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" - }, - "repeat-element": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "replacestream": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", - "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", - "requires": { - "escape-string-regexp": "^1.0.3", - "object-assign": "^4.0.1", - "readable-stream": "^2.0.2" - } - }, - "request": { - "version": "2.87.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", - "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.6.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.1", - "forever-agent": "~0.6.1", - "form-data": "~2.3.1", - "har-validator": "~5.0.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.17", - "oauth-sign": "~0.8.2", - "performance-now": "^2.1.0", - "qs": "~6.5.1", - "safe-buffer": "^5.1.1", - "tough-cookie": "~2.3.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.1.0" - } - }, - "require-precompiled": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", - "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", - "dev": true - }, - "requizzle": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", - "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", - "requires": { - "underscore": "~1.6.0" - }, - "dependencies": { - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" - } - } - }, - "resolve": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", - "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", - "requires": { - "path-parse": "^1.0.5" - } - }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" - } - }, - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } - }, - "rxjs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.4.0.tgz", - "integrity": "sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "semver": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", - "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" - }, - "semver-diff": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", - "dev": true, - "requires": { - "semver": "^5.0.3" - } - }, - "serialize-error": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", - "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", - "dev": true - }, - "set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "sinon": { - "version": "7.2.7", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.2.7.tgz", - "integrity": "sha512-rlrre9F80pIQr3M36gOdoCEWzFAMDgHYD8+tocqOw+Zw9OZ8F84a80Ds69eZfcjnzDqqG88ulFld0oin/6rG/g==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.3.1", - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.2.0", - "diff": "^3.5.0", - "lolex": "^3.1.0", - "nise": "^1.4.10", - "supports-color": "^5.5.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" - }, - "slice-ansi": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - } - } - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - }, - "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", - "requires": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-support": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", - "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" - }, - "spdx-correct": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", - "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", - "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==" - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", - "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==" - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, - "sshpk": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", - "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "stack-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.1.tgz", - "integrity": "sha1-1PM6tU6OOHeLDKXP07OvsS22hiA=", - "dev": true - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - }, - "strip-bom-buf": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", - "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", - "dev": true, - "requires": { - "is-utf8": "^0.2.1" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "supertap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", - "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "indent-string": "^3.2.0", - "js-yaml": "^3.10.0", - "serialize-error": "^2.1.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - } - } - }, - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "dev": true - }, - "table": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/table/-/table-5.2.3.tgz", - "integrity": "sha512-N2RsDAMvDLvYwFcwbPyF3VmVSSkuF+G1e+8inhBLtHpvwXGw4QRPEZhihQNeEN0i1up6/f6ObCJXNdlRG3YVyQ==", - "dev": true, - "requires": { - "ajv": "^6.9.1", - "lodash": "^4.17.11", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "dependencies": { - "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.0.0.tgz", - "integrity": "sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==", - "dev": true - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - } - }, - "string-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.0.0.tgz", - "integrity": "sha512-rr8CUxBbvOZDUvc5lNIJ+OC1nPVpz+Siw9VBtUjB9b6jZehZLFt0JMCZzShFHIsI8cbhm0EsNIfWJMFV3cu3Ew==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.0.0" - } - }, - "strip-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.0.0.tgz", - "integrity": "sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==", - "dev": true, - "requires": { - "ansi-regex": "^4.0.0" - } - } - } - }, - "taffydb": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" - }, - "tap-nyan": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", - "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "duplexer2": "^0.1.4", - "supports-color": "^3.1.2", - "tap-parser": "^3.0.3" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "dependencies": { - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", - "dev": true - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "dev": true, - "requires": { - "has-flag": "^1.0.0" - } - } - } - }, - "tap-parser": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", - "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", - "dev": true, - "requires": { - "events-to-array": "^1.0.1", - "js-yaml": "^3.2.7", - "readable-stream": "^2" - } - }, - "temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", - "dev": true - }, - "temp-write": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz", - "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "is-stream": "^1.1.0", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^3.0.1" - } - }, - "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dev": true, - "requires": { - "execa": "^0.7.0" - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "through2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", - "dev": true, - "requires": { - "readable-stream": "^2.1.5", - "xtend": "~4.0.1" - } - }, - "time-zone": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", - "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", - "dev": true - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "dev": true - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "tough-cookie": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", - "requires": { - "punycode": "^1.4.1" - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, - "trim-off-newlines": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", - "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", - "dev": true - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, - "tslib": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", - "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "optional": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", - "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, - "uid2": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", - "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", - "dev": true - }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" - }, - "underscore-contrib": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", - "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", - "requires": { - "underscore": "1.6.0" - }, - "dependencies": { - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" - } - } - }, - "union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } - } - }, - "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", - "dev": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "unique-temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", - "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", - "dev": true, - "requires": { - "mkdirp": "^0.5.1", - "os-tmpdir": "^1.0.1", - "uid2": "0.0.3" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - } - } - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" - } - } - }, - "unzip-response": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", - "dev": true - }, - "update-notifier": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", - "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", - "dev": true, - "requires": { - "boxen": "^1.2.1", - "chalk": "^2.0.1", - "configstore": "^3.0.0", - "import-lazy": "^2.1.0", - "is-ci": "^1.0.10", - "is-installed-globally": "^0.1.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - }, - "dependencies": { - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - } - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" - }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "dev": true, - "requires": { - "prepend-http": "^1.0.1" - } - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "uuid": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", - "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==" - }, - "validate-npm-package-license": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", - "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "well-known-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-1.0.0.tgz", - "integrity": "sha1-c8eK6Bp3Jqj6WY4ogIAcixYiVRg=", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "widest-line": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz", - "integrity": "sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM=", - "dev": true, - "requires": { - "string-width": "^2.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", - "dev": true, - "requires": { - "mkdirp": "^0.5.1" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - } - } - }, - "write-file-atomic": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", - "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "write-json-file": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", - "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", - "dev": true, - "requires": { - "detect-indent": "^5.0.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "sort-keys": "^2.0.0", - "write-file-atomic": "^2.0.0" - }, - "dependencies": { - "detect-indent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", - "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", - "dev": true - } - } - }, - "write-pkg": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.1.0.tgz", - "integrity": "sha1-AwqZlMyZk9JbTnWp8aGSNgcpHOk=", - "dev": true, - "requires": { - "sort-keys": "^2.0.0", - "write-json-file": "^2.2.0" - } - }, - "xdg-basedir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", - "dev": true - }, - "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - } - }, - "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" - }, - "xmlcreate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", - "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - } - } - }, - "yazl": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", - "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", - "requires": { - "buffer-crc32": "~0.2.3" - } - } - } + "name": "@ui5/project", + "version": "1.0.1", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@ava/babel-plugin-throws-helper": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-2.0.0.tgz", + "integrity": "sha1-L8H+PCEacQcaTsp7j3r1hCzRrnw=", + "dev": true + }, + "@ava/babel-preset-stage-4": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", + "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", + "dev": true, + "requires": { + "babel-plugin-check-es2015-constants": "^6.8.0", + "babel-plugin-syntax-trailing-function-commas": "^6.20.0", + "babel-plugin-transform-async-to-generator": "^6.16.0", + "babel-plugin-transform-es2015-destructuring": "^6.19.0", + "babel-plugin-transform-es2015-function-name": "^6.9.0", + "babel-plugin-transform-es2015-modules-commonjs": "^6.18.0", + "babel-plugin-transform-es2015-parameters": "^6.21.0", + "babel-plugin-transform-es2015-spread": "^6.8.0", + "babel-plugin-transform-es2015-sticky-regex": "^6.8.0", + "babel-plugin-transform-es2015-unicode-regex": "^6.11.0", + "babel-plugin-transform-exponentiation-operator": "^6.8.0", + "package-hash": "^1.2.0" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "package-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", + "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", + "dev": true, + "requires": { + "md5-hex": "^1.3.0" + } + } + } + }, + "@ava/babel-preset-transform-test-files": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-3.0.0.tgz", + "integrity": "sha1-ze0RlqjY2TgaUJJAq5LpGl7Aafc=", + "dev": true, + "requires": { + "@ava/babel-plugin-throws-helper": "^2.0.0", + "babel-plugin-espower": "^2.3.2" + } + }, + "@ava/write-file-atomic": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ava/write-file-atomic/-/write-file-atomic-2.2.0.tgz", + "integrity": "sha512-BTNB3nGbEfJT+69wuqXFr/bQH7Vr7ihx2xGOMNqPgDGhwspoZhiWumDDZNjBy7AScmqS5CELIOGtPVXESyrnDA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + }, + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/generator": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.0.tgz", + "integrity": "sha512-/v5I+a1jhGSKLgZDcmAUZ4K/VePi43eRkUs3yePW1HB1iANOD5tqJXwGSG4BZhSksP8J9ejSlwGeTiiOFZOrXQ==", + "dev": true, + "requires": { + "@babel/types": "^7.4.0", + "jsesc": "^2.5.1", + "lodash": "^4.17.11", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.0.tgz", + "integrity": "sha512-7Cuc6JZiYShaZnybDmfwhY4UYHzI6rlqhWjaIqbsJGsIqPimEYy5uh3akSRLMg65LSdSEnJ8a8/bWQN6u2oMGw==", + "dev": true, + "requires": { + "@babel/types": "^7.4.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + } + } + }, + "@babel/parser": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.2.tgz", + "integrity": "sha512-9fJTDipQFvlfSVdD/JBtkiY0br9BtfvW2R8wo6CX/Ej2eMuV0gWPk1M67Mt3eggQvBqYW1FCEk8BN7WvGm/g5g==", + "dev": true + }, + "@babel/template": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.0.tgz", + "integrity": "sha512-SOWwxxClTTh5NdbbYZ0BmaBVzxzTh2tO/TeLTbF6MO6EzVhHTnff8CdBXx3mEtazFBoysmEM6GU/wF+SuSx4Fw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.4.0", + "@babel/types": "^7.4.0" + } + }, + "@babel/traverse": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.0.tgz", + "integrity": "sha512-/DtIHKfyg2bBKnIN+BItaIlEg5pjAnzHOIQe5w+rHAw/rg9g0V7T4rqPX8BJPfW11kt3koyjAnTNwCzb28Y1PA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.4.0", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.4.0", + "@babel/parser": "^7.4.0", + "@babel/types": "^7.4.0", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.11" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "globals": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", + "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.0.tgz", + "integrity": "sha512-aPvkXyU2SPOnztlgo8n9cEiXW755mgyvueUPcpStqdzoSPm0fjO0vQBjLkt3JKJW7ufikfcnMTTPsN1xaTsBPA==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.11", + "to-fast-properties": "^2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + } + } + }, + "@concordance/react": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", + "integrity": "sha512-htrsRaQX8Iixlsek8zQU7tE8wcsTQJ5UhZkSPEA8slCDAisKpC/2VgU/ucPn32M5/LjGGXRaUEKvEw1Wiuu4zQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1" + } + }, + "@ladjs/time-require": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@ladjs/time-require/-/time-require-0.1.4.tgz", + "integrity": "sha512-weIbJqTMfQ4r1YX85u54DKfjLZs2jwn1XZ6tIOP/pFgMwhIN5BAtaCp/1wn9DzyLsDR9tW0R2NIePcVJ45ivQQ==", + "dev": true, + "requires": { + "chalk": "^0.4.0", + "date-time": "^0.1.1", + "pretty-ms": "^0.2.1", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "dev": true + }, + "chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "dev": true, + "requires": { + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" + } + }, + "pretty-ms": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", + "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", + "dev": true, + "requires": { + "parse-ms": "^0.1.0" + } + }, + "strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "dev": true + } + } + }, + "@sinonjs/commons": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz", + "integrity": "sha512-9jHK3YF/8HtJ9wCAbG+j8cD0i0+ATS9A7gXFqS36TblLPNy6rEEc+SB0imo91eCboGaBYGV/MT1/br/J+EE7Tw==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/formatio": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz", + "integrity": "sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" + } + }, + "@sinonjs/samsam": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.1.tgz", + "integrity": "sha512-wRSfmyd81swH0hA1bxJZJ57xr22kC07a1N4zuIL47yTS04bDk6AoCkczcqHEjcRPmJ+FruGJ9WBQiJwMtIElFw==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.0.2", + "array-from": "^2.1.1", + "lodash": "^4.17.11" + } + }, + "@sinonjs/text-encoding": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", + "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "dev": true + }, + "@ui5/builder": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.4.tgz", + "integrity": "sha512-+eYMylVDYq0g/5v/GuPip9TXghBS78q2fqwLRkSW8GZmZcNSLvIdYY0PuW3W0090xpqkd/6cMNii1UnAZNH0Wg==", + "requires": { + "@ui5/fs": "^1.0.2", + "@ui5/logger": "^1.0.1", + "cheerio": "^0.22.0", + "escodegen": "^1.11.1", + "escope": "^3.6.0", + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "globby": "^7.1.1", + "graceful-fs": "^4.1.15", + "jsdoc": "^3.5.5", + "less-openui5": "^0.6.0", + "make-dir": "^2.0.0", + "pretty-data": "^0.40.0", + "pretty-hrtime": "^1.0.3", + "replacestream": "^4.0.3", + "semver": "^6.0.0", + "tmp": "0.1.0", + "uglify-es": "^3.2.2", + "xml2js": "^0.4.17", + "yazl": "^2.5.1" + } + }, + "@ui5/fs": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.2.tgz", + "integrity": "sha512-8Fc4iqpo/sm2KMGV0MiesqWPoCVDf9OnWVWqdoJ0c7GwAh6olt2EDPtnjtQ0tLMW2Uovdh/Nz+S1qecY0Yb1GA==", + "requires": { + "@ui5/logger": "^1.0.1", + "clone": "^2.1.0", + "dir-glob": "2.0.0", + "globby": "^7.1.1", + "graceful-fs": "^4.1.15", + "make-dir": "^2.1.0", + "micromatch": "^3.1.4", + "minimatch": "^3.0.3", + "mock-require": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^1.0.0" + } + }, + "@ui5/logger": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", + "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", + "requires": { + "npmlog": "^4.1.2" + } + }, + "acorn": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", + "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", + "dev": true + }, + "acorn-jsx": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", + "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", + "dev": true + }, + "ajv": { + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "optional": true + }, + "ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "dev": true, + "requires": { + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "requires": { + "micromatch": "^2.1.5", + "normalize-path": "^2.0.0" + }, + "dependencies": { + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1" + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "^0.1.0" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" + } + } + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "arr-exclude": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", + "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + }, + "array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, + "async-each": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.2.tgz", + "integrity": "sha512-6xrbvN0MOBKSJDdonmSSz2OwFSgxRaVtBDes26mj9KIGtDo+g9xosFRSC+i1gQh2oAN/tQ62AI/pGZGQjVOiRg==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + }, + "auto-bind": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.2.1.tgz", + "integrity": "sha512-/W9yj1yKmBLwpexwAujeD9YHwYmRuWFGV8HWE7smQab797VeHa4/cnE2NFeDhA+E+5e/OGBI8763EhLjfZ/MXA==", + "dev": true + }, + "ava": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-0.25.0.tgz", + "integrity": "sha512-4lGNJCf6xL8SvsKVEKxEE46se7JAUIAZoKHw9itTQuwcsydhpAMkBs5gOOiWiwt0JKNIuXWc2/r4r8ZdcNrBEw==", + "dev": true, + "requires": { + "@ava/babel-preset-stage-4": "^1.1.0", + "@ava/babel-preset-transform-test-files": "^3.0.0", + "@ava/write-file-atomic": "^2.2.0", + "@concordance/react": "^1.0.0", + "@ladjs/time-require": "^0.1.4", + "ansi-escapes": "^3.0.0", + "ansi-styles": "^3.1.0", + "arr-flatten": "^1.0.1", + "array-union": "^1.0.1", + "array-uniq": "^1.0.2", + "arrify": "^1.0.0", + "auto-bind": "^1.1.0", + "ava-init": "^0.2.0", + "babel-core": "^6.17.0", + "babel-generator": "^6.26.0", + "babel-plugin-syntax-object-rest-spread": "^6.13.0", + "bluebird": "^3.0.0", + "caching-transform": "^1.0.0", + "chalk": "^2.0.1", + "chokidar": "^1.4.2", + "clean-stack": "^1.1.1", + "clean-yaml-object": "^0.1.0", + "cli-cursor": "^2.1.0", + "cli-spinners": "^1.0.0", + "cli-truncate": "^1.0.0", + "co-with-promise": "^4.6.0", + "code-excerpt": "^2.1.1", + "common-path-prefix": "^1.0.0", + "concordance": "^3.0.0", + "convert-source-map": "^1.5.1", + "core-assert": "^0.2.0", + "currently-unhandled": "^0.4.1", + "debug": "^3.0.1", + "dot-prop": "^4.1.0", + "empower-core": "^0.6.1", + "equal-length": "^1.0.0", + "figures": "^2.0.0", + "find-cache-dir": "^1.0.0", + "fn-name": "^2.0.0", + "get-port": "^3.0.0", + "globby": "^6.0.0", + "has-flag": "^2.0.0", + "hullabaloo-config-manager": "^1.1.0", + "ignore-by-default": "^1.0.0", + "import-local": "^0.1.1", + "indent-string": "^3.0.0", + "is-ci": "^1.0.7", + "is-generator-fn": "^1.0.0", + "is-obj": "^1.0.0", + "is-observable": "^1.0.0", + "is-promise": "^2.1.0", + "last-line-stream": "^1.0.0", + "lodash.clonedeepwith": "^4.5.0", + "lodash.debounce": "^4.0.3", + "lodash.difference": "^4.3.0", + "lodash.flatten": "^4.2.0", + "loud-rejection": "^1.2.0", + "make-dir": "^1.0.0", + "matcher": "^1.0.0", + "md5-hex": "^2.0.0", + "meow": "^3.7.0", + "ms": "^2.0.0", + "multimatch": "^2.1.0", + "observable-to-promise": "^0.5.0", + "option-chain": "^1.0.0", + "package-hash": "^2.0.0", + "pkg-conf": "^2.0.0", + "plur": "^2.0.0", + "pretty-ms": "^3.0.0", + "require-precompiled": "^0.1.0", + "resolve-cwd": "^2.0.0", + "safe-buffer": "^5.1.1", + "semver": "^5.4.1", + "slash": "^1.0.0", + "source-map-support": "^0.5.0", + "stack-utils": "^1.0.1", + "strip-ansi": "^4.0.0", + "strip-bom-buf": "^1.0.0", + "supertap": "^1.0.0", + "supports-color": "^5.0.0", + "trim-off-newlines": "^1.0.1", + "unique-temp-dir": "^1.0.0", + "update-notifier": "^2.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + }, + "dependencies": { + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "ava-init": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", + "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", + "dev": true, + "requires": { + "arr-exclude": "^1.0.0", + "execa": "^0.7.0", + "has-yarn": "^1.0.0", + "read-pkg-up": "^2.0.0", + "write-pkg": "^3.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + } + } + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "requires": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + } + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true, + "requires": { + "babel-helper-explode-assignable-expression": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-espower": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.4.0.tgz", + "integrity": "sha512-/+SRpy7pKgTI28oEHfn1wkuM5QFAdRq8WNsOOih1dVrdV6A/WbNbRZyl0eX5eyDgtb0lOE27PeDFuCX2j8OxVg==", + "dev": true, + "requires": { + "babel-generator": "^6.1.0", + "babylon": "^6.1.0", + "call-matcher": "^1.0.0", + "core-js": "^2.0.0", + "espower-location-detector": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.1.1" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", + "dev": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.2", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", + "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", + "dev": true, + "requires": { + "babel-plugin-transform-strict-mode": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-types": "^6.26.0" + } + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "dev": true, + "requires": { + "babel-helper-call-delegate": "^6.24.1", + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "dev": true, + "requires": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "dev": true, + "requires": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "regexpu-core": "^2.0.0" + } + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", + "babel-plugin-syntax-exponentiation-operator": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "requires": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + }, + "dependencies": { + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "^0.5.6" + } + } + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "babylon": { + "version": "7.0.0-beta.19", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", + "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "bluebird": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", + "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==" + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dev": true, + "requires": { + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "buf-compare": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", + "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", + "dev": true + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "caching-transform": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", + "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", + "dev": true, + "requires": { + "md5-hex": "^1.2.0", + "mkdirp": "^0.5.1", + "write-file-atomic": "^1.1.4" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "write-file-atomic": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", + "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + } + } + }, + "call-matcher": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.1.0.tgz", + "integrity": "sha512-IoQLeNwwf9KTNbtSA7aEBb1yfDbdnzwjCetjkC8io5oGeOmK2CBNdg0xr+tadRYKO0p7uQyZzvon0kXlZbvGrw==", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "deep-equal": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.0.0" + } + }, + "call-signature": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", + "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", + "dev": true + }, + "callsites": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.0.0.tgz", + "integrity": "sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw==", + "dev": true + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + } + }, + "capture-stack-trace": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", + "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "catharsis": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", + "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", + "requires": { + "underscore-contrib": "~0.3.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + } + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true, + "requires": { + "anymatch": "^1.3.0", + "async-each": "^1.0.0", + "fsevents": "^1.0.0", + "glob-parent": "^2.0.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^2.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0" + } + }, + "ci-info": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", + "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-css": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", + "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=", + "optional": true, + "requires": { + "commander": "2.0.x" + } + }, + "clean-stack": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", + "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", + "dev": true + }, + "clean-yaml-object": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", + "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", + "dev": true + }, + "cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-spinners": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", + "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", + "dev": true + }, + "cli-truncate": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", + "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", + "dev": true, + "requires": { + "slice-ansi": "^1.0.0", + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" + }, + "co-with-promise": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", + "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", + "dev": true, + "requires": { + "pinkie-promise": "^1.0.0" + } + }, + "code-excerpt": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", + "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", + "dev": true, + "requires": { + "convert-to-spaces": "^1.0.1" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "combined-stream": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", + "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", + "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", + "optional": true + }, + "comment-parser": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.4.tgz", + "integrity": "sha512-0h7W6Y1Kb6zKQMJqdX41C5qf9ITCVIsD2qP2RaqDF3GFkXFrmuAuv5zUOuo19YzyC9scjBNpqzuaRQ2Sy5pxMQ==", + "dev": true + }, + "common-path-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", + "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concordance": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", + "integrity": "sha512-CZBzJ3/l5QJjlZM20WY7+5GP5pMTw+1UEbThcpMw8/rojsi5sBCiD8ZbBLtD+jYpRGAkwuKuqk108c154V9eyQ==", + "dev": true, + "requires": { + "date-time": "^2.1.0", + "esutils": "^2.0.2", + "fast-diff": "^1.1.1", + "function-name-support": "^0.2.0", + "js-string-escape": "^1.0.1", + "lodash.clonedeep": "^4.5.0", + "lodash.flattendeep": "^4.4.0", + "lodash.merge": "^4.6.0", + "md5-hex": "^2.0.0", + "semver": "^5.3.0", + "well-known-symbols": "^1.0.0" + }, + "dependencies": { + "date-time": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", + "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", + "dev": true, + "requires": { + "time-zone": "^1.0.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "configstore": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", + "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "convert-source-map": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", + "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "convert-to-spaces": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", + "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, + "core-assert": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", + "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", + "dev": true, + "requires": { + "buf-compare": "^1.0.0", + "is-error": "^2.2.0" + } + }, + "core-js": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz", + "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "coveralls": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.3.tgz", + "integrity": "sha512-viNfeGlda2zJr8Gj1zqXpDMRjw9uM54p7wzZdvLRyOgnAfCe974Dq4veZkjJdxQXbmdppu6flEajFYseHYaUhg==", + "dev": true, + "requires": { + "growl": "~> 1.10.0", + "js-yaml": "^3.11.0", + "lcov-parse": "^0.0.10", + "log-driver": "^1.2.7", + "minimist": "^1.2.0", + "request": "^2.86.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "dev": true, + "requires": { + "capture-stack-trace": "^1.0.0" + } + }, + "cross-env": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", + "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.5", + "is-windows": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true + }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "requires": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "requires": { + "es5-ext": "^0.10.9" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-time": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", + "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + } + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "dir-glob": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", + "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "requires": { + "arrify": "^1.0.1", + "path-type": "^3.0.0" + } + }, + "docdash": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.1.0.tgz", + "integrity": "sha512-sgcessH25PU6CIoJGeOjDCv9CLi6Z6TLwc553s/O+DKCnIRXT58e4CG3WsgI8Zea5ZQcjsfa8u4IwKqR2TKTxQ==", + "dev": true + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "requires": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dot-prop": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", + "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "empower-core": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", + "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", + "dev": true, + "requires": { + "call-signature": "0.0.2", + "core-js": "^2.0.0" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "equal-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", + "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", + "dev": true + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es5-ext": { + "version": "0.10.49", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.49.tgz", + "integrity": "sha512-3NMEhi57E31qdzmYp2jwRArIUsj1HI/RxbQ4bgnSB+AIKIxsAmTiK83bYMifIcpWvEc3P1X30DhUKOqEtF/kvg==", + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "^1.0.0" + } + }, + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "es6-weak-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", + "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "requires": { + "d": "1", + "es5-ext": "^0.10.14", + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "escodegen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", + "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true + } + } + }, + "escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "requires": { + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", + "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.9.1", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^4.0.3", + "eslint-utils": "^1.3.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^5.0.1", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.7.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^6.2.2", + "js-yaml": "^3.13.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.11", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^5.5.1", + "strip-ansi": "^4.0.0", + "strip-json-comments": "^2.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "globals": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", + "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "dev": true + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "eslint-config-google": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.12.0.tgz", + "integrity": "sha512-SHDM3nIRCJBACjf8c/H6FvCwRmKbphESNl3gJFBNbw4KYDLCONB3ABYLXDGF+iaVP9XSTND/Q5/PuGoFkp4xbg==", + "dev": true + }, + "eslint-plugin-jsdoc": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.7.0.tgz", + "integrity": "sha512-ghsgfi4j8rwnCWX/jSDHdyvqt4KzEnuXa0kYXfDhTQvd/ZDt4LNBfBC9ZVXc0ApqZDI8TL3L10og2er2s4O/7g==", + "dev": true, + "requires": { + "comment-parser": "^0.5.4", + "jsdoctypeparser": "^2.0.0-alpha-8", + "lodash": "^4.17.11" + } + }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", + "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", + "dev": true + }, + "eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", + "dev": true + }, + "espower-location-detector": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", + "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", + "dev": true, + "requires": { + "is-url": "^1.2.1", + "path-is-absolute": "^1.0.0", + "source-map": "^0.5.0", + "xtend": "^4.0.0" + } + }, + "espree": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", + "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", + "dev": true, + "requires": { + "acorn": "^6.0.7", + "acorn-jsx": "^5.0.0", + "eslint-visitor-keys": "^1.0.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "espurify": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.1.tgz", + "integrity": "sha512-ZDko6eY/o+D/gHCWyHTU85mKDgYcS4FJj7S+YD6WIInm7GQ6AnOjmcL4+buFV/JOztVLELi/7MmuGU5NHta0Mg==", + "dev": true, + "requires": { + "core-js": "^2.0.0" + } + }, + "esquery": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "dev": true, + "requires": { + "estraverse": "^4.0.0" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "events-to-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", + "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", + "dev": true + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "requires": { + "fill-range": "^2.1.0" + }, + "dependencies": { + "fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "requires": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + } + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "external-editor": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", + "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "dependencies": { + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" + }, + "fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "requires": { + "flat-cache": "^2.0.1" + } + }, + "file-type": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.10.0.tgz", + "integrity": "sha512-3CTQE/db3dnK2jsfd4XiXMKw9nD0QVEMRLdBzqYDRr5BvYMUccDpP8hMc1uPb1VZ9Iw/cAJjYPNwJ5UzxGqsRg==", + "dev": true + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "requires": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + } + }, + "flatted": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", + "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", + "dev": true + }, + "fn-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", + "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", + "dev": true + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.7.tgz", + "integrity": "sha512-Pxm6sI2MeBD7RdD12RYsqaP0nMiwx8eZBXCa6z2L+mRHm2DYrOYwihmhjpkdjUHwQhslWQjRpEgNq4XvBmaAuw==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.9.2", + "node-pre-gyp": "^0.10.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true, + "optional": true + }, + "minipass": { + "version": "2.3.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.2.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.10.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "yallist": { + "version": "3.0.3", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "function-name-support": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", + "integrity": "sha1-VdO/qm6v1QWlD5vIH99XVkoLsHE=", + "dev": true + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + }, + "get-port": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "^2.0.0" + } + }, + "global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "dev": true, + "requires": { + "ini": "^1.3.4" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "globby": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", + "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "requires": { + "array-union": "^1.0.1", + "dir-glob": "^2.0.0", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + } + }, + "got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "dev": true, + "requires": { + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "has-yarn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", + "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", + "dev": true + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + } + }, + "hosted-git-info": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==" + }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz", + "integrity": "sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "hullabaloo-config-manager": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/hullabaloo-config-manager/-/hullabaloo-config-manager-1.1.1.tgz", + "integrity": "sha512-ztKnkZV0TmxnumCDHHgLGNiDnotu4EHCp9YMkznWuo4uTtCyJ+cu+RNcxUeXYKTllpvLFWnbfWry09yzszgg+A==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "es6-error": "^4.0.2", + "graceful-fs": "^4.1.11", + "indent-string": "^3.1.0", + "json5": "^0.5.1", + "lodash.clonedeep": "^4.5.0", + "lodash.clonedeepwith": "^4.5.0", + "lodash.isequal": "^4.5.0", + "lodash.merge": "^4.6.0", + "md5-hex": "^2.0.0", + "package-hash": "^2.0.0", + "pkg-dir": "^2.0.0", + "resolve-from": "^3.0.0", + "safe-buffer": "^5.0.1" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" + }, + "ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", + "dev": true + }, + "import-fresh": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", + "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + } + } + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, + "import-local": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", + "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", + "dev": true, + "requires": { + "pkg-dir": "^2.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "inquirer": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.2.tgz", + "integrity": "sha512-Z2rREiXA6cHRR9KBOarR3WuLlFzlIfAEIiB45ll5SSadMg7WqOh1MKEjjndfuH5ewXdixWCxqnVfGOQzPeiztA==", + "dev": true, + "requires": { + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^2.0.0", + "lodash": "^4.17.11", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + } + } + } + } + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "irregular-plurals": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz", + "integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-ci": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", + "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", + "dev": true, + "requires": { + "ci-info": "^1.5.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "requires": { + "is-primitive": "^2.0.0" + } + }, + "is-error": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.1.tgz", + "integrity": "sha1-aEqW2EB2V3yY9M20DG0mpRI78Zw=", + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-generator-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", + "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "is-installed-globally": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", + "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "dev": true, + "requires": { + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" + } + }, + "is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-observable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", + "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", + "dev": true, + "requires": { + "symbol-observable": "^1.1.0" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "^3.0.1" + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "dev": true + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.1.0.tgz", + "integrity": "sha512-ooVllVGT38HIk8MxDj/OIHXSYvH+1tq/Vb38s8ixt9GoJadXska4WkGY+0wkmtYCZNYtaARniH/DixUGGLZ0uA==", + "dev": true, + "requires": { + "@babel/generator": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "istanbul-lib-coverage": "^2.0.3", + "semver": "^5.5.0" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "js-string-escape": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", + "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", + "dev": true + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "js-yaml": { + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.0.tgz", + "integrity": "sha512-pZZoSxcCYco+DIKBTimr67J6Hy+EYGZDY/HCWC+iAEA9h1ByhMXAIVUXMcMFpOCxQ/xjXmPI2MkDL5HRm5eFrQ==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "js2xmlparser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", + "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", + "requires": { + "xmlcreate": "^1.0.1" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "jsdoc": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", + "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", + "requires": { + "babylon": "7.0.0-beta.19", + "bluebird": "~3.5.0", + "catharsis": "~0.8.9", + "escape-string-regexp": "~1.0.5", + "js2xmlparser": "~3.0.0", + "klaw": "~2.0.0", + "marked": "~0.3.6", + "mkdirp": "~0.5.1", + "requizzle": "~0.2.1", + "strip-json-comments": "~2.0.1", + "taffydb": "2.6.2", + "underscore": "~1.8.3" + } + }, + "jsdoctypeparser": { + "version": "2.0.0-alpha-8", + "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-2.0.0-alpha-8.tgz", + "integrity": "sha1-uvE3+44qVYgQrc8Z0tKi9oDpCl8=", + "dev": true + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "just-extend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", + "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "klaw": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", + "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", + "requires": { + "graceful-fs": "^4.1.9" + } + }, + "last-line-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", + "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", + "dev": true, + "requires": { + "through2": "^2.0.0" + } + }, + "latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "dev": true, + "requires": { + "package-json": "^4.0.0" + } + }, + "lcov-parse": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", + "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", + "dev": true + }, + "less": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", + "integrity": "sha1-cc6J7DC3dLNWfyVMZ5WPLywZO94=", + "requires": { + "clean-css": "2.0.x", + "mime": "1.2.x", + "mkdirp": "~0.3.5", + "request": ">=2.12.0", + "source-map": "0.1.x" + }, + "dependencies": { + "mkdirp": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", + "optional": true + }, + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "less-openui5": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", + "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", + "requires": { + "clone": "^2.1.0", + "css": "^2.2.1", + "less": "1.6.3", + "object-assign": "^4.0.1" + } + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" + }, + "lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.clonedeepwith": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", + "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + }, + "lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", + "dev": true + }, + "lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" + }, + "lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "dev": true + }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" + }, + "lodash.merge": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", + "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==" + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" + }, + "lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" + }, + "lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=" + }, + "lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" + }, + "log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "dev": true + }, + "lolex": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-3.1.0.tgz", + "integrity": "sha512-zFo5MgCJ0rZ7gQg69S4pqBsLURbFw11X68C18OcJjJQbqaXm2NoTrGl1IMM3TIz0/BnN1tIs2tzmmqvCsOMMjw==", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + } + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "^1.0.0" + } + }, + "marked": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" + }, + "matcher": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", + "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.4" + } + }, + "math-random": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", + "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", + "dev": true + }, + "md5-hex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", + "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "md5-o-matic": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", + "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", + "dev": true + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", + "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=", + "optional": true + }, + "mime-db": { + "version": "1.38.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz", + "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==" + }, + "mime-types": { + "version": "2.1.22", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz", + "integrity": "sha512-aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==", + "requires": { + "mime-db": "~1.38.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + }, + "minimist-options": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", + "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + } + }, + "mock-require": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", + "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", + "requires": { + "get-caller-file": "^1.0.2", + "normalize-path": "^2.1.1" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "multimatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", + "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "dev": true, + "requires": { + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" + } + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "nan": { + "version": "2.13.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz", + "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "nise": { + "version": "1.4.10", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.10.tgz", + "integrity": "sha512-sa0RRbj53dovjc7wombHmVli9ZihXbXCQ2uH3TNm03DyvOSIQbxg+pbqDKrk2oxMK1rtLGVlKxcB9rrc6X5YjA==", + "dev": true, + "requires": { + "@sinonjs/formatio": "^3.1.0", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "lolex": "^2.3.2", + "path-to-regexp": "^1.7.0" + }, + "dependencies": { + "lolex": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", + "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", + "dev": true + } + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + } + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "requires": { + "boolbase": "~1.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "nyc": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.3.0.tgz", + "integrity": "sha512-P+FwIuro2aFG6B0Esd9ZDWUd51uZrAEoGutqZxzrVmYl3qSfkLgcQpBPBjtDFsUQLFY1dvTQJPOyeqr8S9GF8w==", + "dev": true, + "requires": { + "archy": "^1.0.0", + "arrify": "^1.0.1", + "caching-transform": "^3.0.1", + "convert-source-map": "^1.6.0", + "find-cache-dir": "^2.0.0", + "find-up": "^3.0.0", + "foreground-child": "^1.5.6", + "glob": "^7.1.3", + "istanbul-lib-coverage": "^2.0.3", + "istanbul-lib-hook": "^2.0.3", + "istanbul-lib-instrument": "^3.1.0", + "istanbul-lib-report": "^2.0.4", + "istanbul-lib-source-maps": "^3.0.2", + "istanbul-reports": "^2.1.1", + "make-dir": "^1.3.0", + "merge-source-map": "^1.1.0", + "resolve-from": "^4.0.0", + "rimraf": "^2.6.3", + "signal-exit": "^3.0.2", + "spawn-wrap": "^1.4.2", + "test-exclude": "^5.1.0", + "uuid": "^3.3.2", + "yargs": "^12.0.5", + "yargs-parser": "^11.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "append-transform": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "default-require-extensions": "^2.0.0" + } + }, + "archy": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "arrify": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "async": { + "version": "2.6.2", + "bundled": true, + "dev": true, + "requires": { + "lodash": "^4.17.11" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "caching-transform": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "hasha": "^3.0.0", + "make-dir": "^1.3.0", + "package-hash": "^3.0.0", + "write-file-atomic": "^2.3.0" + } + }, + "camelcase": { + "version": "5.0.0", + "bundled": true, + "dev": true + }, + "cliui": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "commander": { + "version": "2.17.1", + "bundled": true, + "dev": true, + "optional": true + }, + "commondir": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "convert-source-map": { + "version": "1.6.0", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cross-spawn": { + "version": "4.0.2", + "bundled": true, + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "debug": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "decamelize": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "default-require-extensions": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "strip-bom": "^3.0.0" + } + }, + "end-of-stream": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "error-ex": { + "version": "1.3.2", + "bundled": true, + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es6-error": { + "version": "4.1.1", + "bundled": true, + "dev": true + }, + "execa": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "bundled": true, + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } + } + }, + "find-cache-dir": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "foreground-child": { + "version": "1.5.6", + "bundled": true, + "dev": true, + "requires": { + "cross-spawn": "^4", + "signal-exit": "^3.0.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "get-caller-file": { + "version": "1.0.3", + "bundled": true, + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.15", + "bundled": true, + "dev": true + }, + "handlebars": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "async": "^2.5.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true + } + } + }, + "has-flag": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "hasha": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "is-stream": "^1.0.1" + } + }, + "hosted-git-info": { + "version": "2.7.1", + "bundled": true, + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "bundled": true, + "dev": true + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "invert-kv": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "is-arrayish": { + "version": "0.2.1", + "bundled": true, + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "isexe": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "istanbul-lib-coverage": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "istanbul-lib-hook": { + "version": "2.0.3", + "bundled": true, + "dev": true, + "requires": { + "append-transform": "^1.0.0" + } + }, + "istanbul-lib-report": { + "version": "2.0.4", + "bundled": true, + "dev": true, + "requires": { + "istanbul-lib-coverage": "^2.0.3", + "make-dir": "^1.3.0", + "supports-color": "^6.0.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "bundled": true, + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.3", + "make-dir": "^1.3.0", + "rimraf": "^2.6.2", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true + } + } + }, + "istanbul-reports": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "requires": { + "handlebars": "^4.1.0" + } + }, + "json-parse-better-errors": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "lcid": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "load-json-file": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.11", + "bundled": true, + "dev": true + }, + "lodash.flattendeep": { + "version": "4.4.0", + "bundled": true, + "dev": true + }, + "lru-cache": { + "version": "4.1.5", + "bundled": true, + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "1.3.0", + "bundled": true, + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "map-age-cleaner": { + "version": "0.1.3", + "bundled": true, + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, + "mem": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^1.0.0", + "p-is-promise": "^2.0.0" + } + }, + "merge-source-map": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "requires": { + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true + } + } + }, + "mimic-fn": { + "version": "1.2.0", + "bundled": true, + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.10", + "bundled": true, + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + } + } + }, + "ms": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "bundled": true, + "dev": true + }, + "normalize-package-data": { + "version": "2.5.0", + "bundled": true, + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "bundled": true, + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "optimist": { + "version": "0.6.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "p-defer": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "p-is-promise": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "p-limit": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "package-hash": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.15", + "hasha": "^3.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "path-exists": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "path-key": { + "version": "2.0.1", + "bundled": true, + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "bundled": true, + "dev": true + }, + "path-type": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "pseudomap": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "pump": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "read-pkg": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + } + }, + "release-zalgo": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "es6-error": "^4.0.1" + } + }, + "require-directory": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "resolve": { + "version": "1.10.0", + "bundled": true, + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-from": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "rimraf": { + "version": "2.6.3", + "bundled": true, + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true + }, + "semver": { + "version": "5.6.0", + "bundled": true, + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true + }, + "spawn-wrap": { + "version": "1.4.2", + "bundled": true, + "dev": true, + "requires": { + "foreground-child": "^1.5.6", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "which": "^1.3.0" + } + }, + "spdx-correct": { + "version": "3.1.0", + "bundled": true, + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "bundled": true, + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "bundled": true, + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.3", + "bundled": true, + "dev": true + }, + "string-width": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "bundled": true, + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "test-exclude": { + "version": "5.1.0", + "bundled": true, + "dev": true, + "requires": { + "arrify": "^1.0.1", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^1.0.1" + } + }, + "uglify-js": { + "version": "3.4.9", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "commander": "~2.17.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "uuid": { + "version": "3.3.2", + "bundled": true, + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "which": { + "version": "1.3.1", + "bundled": true, + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "bundled": true, + "dev": true + }, + "wordwrap": { + "version": "0.0.3", + "bundled": true, + "dev": true + }, + "wrap-ansi": { + "version": "2.1.0", + "bundled": true, + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "write-file-atomic": { + "version": "2.4.2", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "y18n": { + "version": "4.0.0", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "2.1.2", + "bundled": true, + "dev": true + }, + "yargs": { + "version": "12.0.5", + "bundled": true, + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "yargs-parser": { + "version": "11.1.1", + "bundled": true, + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "requires": { + "isobject": "^3.0.0" + } + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "requires": { + "isobject": "^3.0.1" + } + }, + "observable-to-promise": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.5.0.tgz", + "integrity": "sha1-yCjw8NxH6fhq+KSXfF1VB2znqR8=", + "dev": true, + "requires": { + "is-observable": "^0.2.0", + "symbol-observable": "^1.0.4" + }, + "dependencies": { + "is-observable": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", + "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", + "dev": true, + "requires": { + "symbol-observable": "^0.2.2" + }, + "dependencies": { + "symbol-observable": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", + "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", + "dev": true + } + } + } + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "opn": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", + "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "opn-cli": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.0.0.tgz", + "integrity": "sha512-/NxjgPPxgYWAEznUwbvQd3H/vfMBRoIy8ZAvKNNgye2TbFE4pToVwmbi34Xo2rkmlfJIeWPa++zUSj4WBVGJxQ==", + "dev": true, + "requires": { + "file-type": "^10.4.0", + "get-stdin": "^6.0.0", + "meow": "^5.0.0", + "opn": "^5.4.0", + "temp-write": "^3.4.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", + "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0", + "yargs-parser": "^10.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + } + } + }, + "option-chain": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", + "integrity": "sha1-k41zvU4Xg/lI00AjZEraI2aeMPI=", + "dev": true + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "package-hash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-2.0.0.tgz", + "integrity": "sha1-eK4ybIngWk2BO2hgGXevBcANKg0=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "lodash.flattendeep": "^4.4.0", + "md5-hex": "^2.0.0", + "release-zalgo": "^1.0.0" + } + }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, + "requires": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse-ms": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", + "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "dev": true, + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + }, + "pinkie": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", + "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", + "dev": true + }, + "pinkie-promise": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", + "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", + "dev": true, + "requires": { + "pinkie": "^1.0.0" + } + }, + "pkg-conf": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", + "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "load-json-file": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + } + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + } + } + }, + "plur": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", + "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", + "dev": true, + "requires": { + "irregular-plurals": "^1.0.0" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, + "pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" + }, + "pretty-ms": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.2.0.tgz", + "integrity": "sha512-ZypexbfVUGTFxb0v+m1bUyy92DHe5SyYlnyY0msyms5zd3RwyvNgyxZZsXXgoyzlxjx5MiqtXUdhUfvQbe0A2Q==", + "dev": true, + "requires": { + "parse-ms": "^1.0.0" + }, + "dependencies": { + "parse-ms": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", + "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", + "dev": true + } + } + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.1.31", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", + "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==" + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + }, + "quick-lru": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", + "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "dev": true + }, + "random-int": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", + "integrity": "sha1-5qLtNEisnGZGoGV0Q7HBUhWS7Qg=" + }, + "randomatic": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", + "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", + "dev": true, + "requires": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "requires": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + }, + "dependencies": { + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + } + } + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "^0.1.3" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true + }, + "regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "dev": true, + "requires": { + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" + } + }, + "registry-auth-token": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", + "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", + "dev": true, + "requires": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true, + "requires": { + "rc": "^1.0.1" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + } + }, + "release-zalgo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "dev": true, + "requires": { + "es6-error": "^4.0.1" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "replacestream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", + "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", + "requires": { + "escape-string-regexp": "^1.0.3", + "object-assign": "^4.0.1", + "readable-stream": "^2.0.2" + } + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "require-precompiled": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", + "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", + "dev": true + }, + "requizzle": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", + "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", + "requires": { + "underscore": "~1.6.0" + }, + "dependencies": { + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" + } + } + }, + "resolve": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.0.tgz", + "integrity": "sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==", + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "requires": { + "glob": "^7.1.3" + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, + "rxjs": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.4.0.tgz", + "integrity": "sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "semver": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.0.0.tgz", + "integrity": "sha512-0UewU+9rFapKFnlbirLi3byoOuhrSsli/z/ihNnvM24vgF+8sNBiI1LZPBSH9wJKUwaUbw+s3hToDLCXkrghrQ==" + }, + "semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "dev": true, + "requires": { + "semver": "^5.0.3" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "serialize-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", + "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-value": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "sinon": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.3.1.tgz", + "integrity": "sha512-eQKMaeWovtOtYe2xThEvaHmmxf870Di+bim10c3ZPrL5bZhLGtu8cz+rOBTFz0CwBV4Q/7dYwZiqZbGVLZ+vjQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.4.0", + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/samsam": "^3.3.1", + "diff": "^3.5.0", + "lolex": "^3.1.0", + "nise": "^1.4.10", + "supports-color": "^5.5.0" + } + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + }, + "slice-ansi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", + "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + } + } + }, + "slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "sort-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", + "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "dev": true, + "requires": { + "is-plain-obj": "^1.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.11", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.11.tgz", + "integrity": "sha512-//sajEx/fGL3iw6fltKMdPvy8kL3kJ2O3iuYlRoT3k9Kb4BjOoZ+BZzaNHeuaruSt+Kf3Zk9tnfAQg9/AJqUVQ==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==" + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz", + "integrity": "sha512-uBIcIl3Ih6Phe3XHK1NqboJLdGfwr1UN3k6wSD1dZpmPsIkb8AGNbZYJ1fOBk834+Gxy8rpfDxrS6XLEMZMY2g==" + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", + "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + }, + "strip-bom-buf": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", + "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "dev": true, + "requires": { + "is-utf8": "^0.2.1" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "supertap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", + "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "indent-string": "^3.2.0", + "js-yaml": "^3.10.0", + "serialize-error": "^2.1.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + } + } + }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "dev": true + }, + "table": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/table/-/table-5.2.3.tgz", + "integrity": "sha512-N2RsDAMvDLvYwFcwbPyF3VmVSSkuF+G1e+8inhBLtHpvwXGw4QRPEZhihQNeEN0i1up6/f6ObCJXNdlRG3YVyQ==", + "dev": true, + "requires": { + "ajv": "^6.9.1", + "lodash": "^4.17.11", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + } + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "taffydb": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", + "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" + }, + "tap-nyan": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", + "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "duplexer2": "^0.1.4", + "supports-color": "^3.1.2", + "tap-parser": "^3.0.3" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + } + } + }, + "tap-parser": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", + "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", + "dev": true, + "requires": { + "events-to-array": "^1.0.1", + "js-yaml": "^3.2.7", + "readable-stream": "^2" + } + }, + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true + }, + "temp-write": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz", + "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "is-stream": "^1.1.0", + "make-dir": "^1.0.0", + "pify": "^3.0.0", + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, + "requires": { + "execa": "^0.7.0" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "time-zone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", + "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", + "dev": true + }, + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true + }, + "tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "requires": { + "rimraf": "^2.6.3" + } + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + } + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "trim-off-newlines": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", + "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "uid2": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", + "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", + "dev": true + }, + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + }, + "underscore-contrib": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", + "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", + "requires": { + "underscore": "1.6.0" + }, + "dependencies": { + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" + } + } + }, + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" + } + } + } + }, + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, + "requires": { + "crypto-random-string": "^1.0.0" + } + }, + "unique-temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", + "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", + "dev": true, + "requires": { + "mkdirp": "^0.5.1", + "os-tmpdir": "^1.0.1", + "uid2": "0.0.3" + } + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + } + } + }, + "unzip-response": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "dev": true + }, + "update-notifier": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", + "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "dev": true, + "requires": { + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-ci": "^1.0.10", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "requires": { + "prepend-http": "^1.0.1" + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "well-known-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-1.0.0.tgz", + "integrity": "sha1-c8eK6Bp3Jqj6WY4ogIAcixYiVRg=", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "widest-line": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", + "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", + "dev": true, + "requires": { + "string-width": "^2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "requires": { + "mkdirp": "^0.5.1" + } + }, + "write-file-atomic": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.2.tgz", + "integrity": "sha512-s0b6vB3xIVRLWywa6X9TOMA7k9zio0TMOsl9ZnDkliA/cfJlpHXAscj0gbHVJiTdIuAYpIyqS5GW91fqm6gG5g==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "write-json-file": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", + "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", + "dev": true, + "requires": { + "detect-indent": "^5.0.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "pify": "^3.0.0", + "sort-keys": "^2.0.0", + "write-file-atomic": "^2.0.0" + }, + "dependencies": { + "detect-indent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", + "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", + "dev": true + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "write-pkg": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.2.0.tgz", + "integrity": "sha512-tX2ifZ0YqEFOF1wjRW2Pk93NLsj02+n1UP5RvO6rCs0K6R2g1padvf006cY74PQJKMGS2r42NK7FD0dG6Y6paw==", + "dev": true, + "requires": { + "sort-keys": "^2.0.0", + "write-json-file": "^2.2.0" + } + }, + "xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true + }, + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" + } + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + }, + "xmlcreate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", + "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + } + } + }, + "yazl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", + "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", + "requires": { + "buffer-crc32": "~0.2.3" + } + } + } } diff --git a/packages/project/package.json b/packages/project/package.json index 92b00087f1d..562f4e53a71 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.0.3", + "@ui5/builder": "^1.0.4", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.0", @@ -100,21 +100,21 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.5.0" + "resolve": "^1.10.0" }, "devDependencies": { "ava": "^0.25.0", "coveralls": "^3.0.3", "cross-env": "^5.2.0", - "docdash": "^1.0.3", - "eslint": "^5.15.1", + "docdash": "^1.1.0", + "eslint": "^5.16.0", "eslint-config-google": "^0.12.0", - "eslint-plugin-jsdoc": "^4.1.1", + "eslint-plugin-jsdoc": "^4.7.0", "jsdoc": "^3.5.5", "nyc": "^13.3.0", "opn-cli": "^4.0.0", "rimraf": "^2.6.3", - "sinon": "^7.2.7", + "sinon": "^7.3.1", "tap-nyan": "^1.1.0" } } From 97a9df8a127f1e847b39eb50a9619420b5218df7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= <1410947+matz3@users.noreply.github.com> Date: Tue, 2 Apr 2019 16:21:23 +0200 Subject: [PATCH 0165/1272] [ui5-project][INTERNAL] Docs: Fix link to types --- packages/project/docs/Configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 7ea1814430c..397ea18a4cc 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -63,7 +63,7 @@ server: ### Properties #### \ - `specVersion`: Version of the specification this configuration is based on. See [Specification Versions](#specification-versions) -- `type`: Either `application`, `library` or `module`. Defines the default path mappings and build steps. See [UI5 Builder: Types](#types) for details +- `type`: Either `application`, `library` or `module`. Defines the default path mappings and build steps. See [UI5 Builder: Types](https://github.com/SAP/ui5-builder#types) for details #### metadata Some general information: From eebd00ce416dfcf34cff024c813bc52359dcdb19 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 3 Apr 2019 09:27:35 +0000 Subject: [PATCH 0166/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.0.4 to 1.0.5 --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 022e02fc3fe..72b8e9e0c7a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -317,9 +317,9 @@ "dev": true }, "@ui5/builder": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.4.tgz", - "integrity": "sha512-+eYMylVDYq0g/5v/GuPip9TXghBS78q2fqwLRkSW8GZmZcNSLvIdYY0PuW3W0090xpqkd/6cMNii1UnAZNH0Wg==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.5.tgz", + "integrity": "sha512-AJC3rMJOxrPB7wsF/Mujqd5OthpBl8LzuHTBr9iA5r+pGgPJeaKU5Nnzeb1093U3Ncp7hjfjnwvSDGgdDGQbZA==", "requires": { "@ui5/fs": "^1.0.2", "@ui5/logger": "^1.0.1", @@ -332,7 +332,7 @@ "graceful-fs": "^4.1.15", "jsdoc": "^3.5.5", "less-openui5": "^0.6.0", - "make-dir": "^2.0.0", + "make-dir": "^2.1.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index 562f4e53a71..2926af7cf9a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.0.4", + "@ui5/builder": "^1.0.5", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.0", From 8294b42aa2d2fc788b0869bb0a6d8881d9fdc782 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 3 Apr 2019 13:44:02 +0000 Subject: [PATCH 0167/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 72b8e9e0c7a..ed7dce7e1c2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -150,9 +150,9 @@ } }, "@babel/parser": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.2.tgz", - "integrity": "sha512-9fJTDipQFvlfSVdD/JBtkiY0br9BtfvW2R8wo6CX/Ej2eMuV0gWPk1M67Mt3eggQvBqYW1FCEk8BN7WvGm/g5g==", + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.3.tgz", + "integrity": "sha512-gxpEUhTS1sGA63EGQGuA+WESPR/6tz6ng7tSHFCmaTJK/cGK8y37cBTspX+U2xCAue2IQVvF6Z0oigmjwD8YGQ==", "dev": true }, "@babel/template": { @@ -167,16 +167,16 @@ } }, "@babel/traverse": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.0.tgz", - "integrity": "sha512-/DtIHKfyg2bBKnIN+BItaIlEg5pjAnzHOIQe5w+rHAw/rg9g0V7T4rqPX8BJPfW11kt3koyjAnTNwCzb28Y1PA==", + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.3.tgz", + "integrity": "sha512-HmA01qrtaCwwJWpSKpA948cBvU5BrmviAief/b3AVw936DtcdsTexlbyzNuDnthwhOQ37xshn7hvQaEQk7ISYQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", "@babel/generator": "^7.4.0", "@babel/helper-function-name": "^7.1.0", "@babel/helper-split-export-declaration": "^7.4.0", - "@babel/parser": "^7.4.0", + "@babel/parser": "^7.4.3", "@babel/types": "^7.4.0", "debug": "^4.1.0", "globals": "^11.1.0", @@ -1524,9 +1524,9 @@ "dev": true }, "bluebird": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", - "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==" + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.4.tgz", + "integrity": "sha512-FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw==" }, "boolbase": { "version": "1.0.0", From 97be9b17833510ef48c79cc5e86b95219a7b88f7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 5 Apr 2019 04:20:40 +0000 Subject: [PATCH 0168/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ed7dce7e1c2..3f617e19697 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2725,9 +2725,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.7.0.tgz", - "integrity": "sha512-ghsgfi4j8rwnCWX/jSDHdyvqt4KzEnuXa0kYXfDhTQvd/ZDt4LNBfBC9ZVXc0ApqZDI8TL3L10og2er2s4O/7g==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.0.tgz", + "integrity": "sha512-kaGr4AAoU38t2CLJKKVSI0PQ0Clmh9lTjxdwopercV5vU0ZkyDyooyKX4ip1HHp2OSGYQYtp1tDjTexVhfQH+A==", "dev": true, "requires": { "comment-parser": "^0.5.4", diff --git a/packages/project/package.json b/packages/project/package.json index 2926af7cf9a..e93c6f16854 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -109,7 +109,7 @@ "docdash": "^1.1.0", "eslint": "^5.16.0", "eslint-config-google": "^0.12.0", - "eslint-plugin-jsdoc": "^4.7.0", + "eslint-plugin-jsdoc": "^4.8.0", "jsdoc": "^3.5.5", "nyc": "^13.3.0", "opn-cli": "^4.0.0", From 45e58b9621ddea8612d85df17876101f1ac71832 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 8 Apr 2019 04:18:19 +0000 Subject: [PATCH 0169/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 36 +++++++++++++++--------------- packages/project/package.json | 4 ++-- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3f617e19697..a7af2142618 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1708,9 +1708,9 @@ "dev": true }, "callsites": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.0.0.tgz", - "integrity": "sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, "camelcase": { @@ -4577,9 +4577,9 @@ "dev": true }, "js-yaml": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.0.tgz", - "integrity": "sha512-pZZoSxcCYco+DIKBTimr67J6Hy+EYGZDY/HCWC+iAEA9h1ByhMXAIVUXMcMFpOCxQ/xjXmPI2MkDL5HRm5eFrQ==", + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -6530,25 +6530,25 @@ "mimic-fn": "^1.0.0" } }, - "opn": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", - "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", + "open": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/open/-/open-6.1.0.tgz", + "integrity": "sha512-Vqch7NFb/WsMujhqfq+B3u0xkssRjZlxh+NSsBSphpcgaFD7gfB0SUBfR91E9ygBlyNGNogXR2cUB8rRfoo2kQ==", "dev": true, "requires": { "is-wsl": "^1.1.0" } }, "opn-cli": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.0.0.tgz", - "integrity": "sha512-/NxjgPPxgYWAEznUwbvQd3H/vfMBRoIy8ZAvKNNgye2TbFE4pToVwmbi34Xo2rkmlfJIeWPa++zUSj4WBVGJxQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.1.0.tgz", + "integrity": "sha512-nVJ9dVb4fEKtmACWxUql+hhQxVWMt7BSRT+6TnB85W3xs5Pgk9sKW3icYeCIwOtOKALBw/6WUCoNmI1+ADfAow==", "dev": true, "requires": { - "file-type": "^10.4.0", + "file-type": "^10.10.0", "get-stdin": "^6.0.0", "meow": "^5.0.0", - "opn": "^5.4.0", + "open": "^6.1.0", "temp-write": "^3.4.0" }, "dependencies": { @@ -7754,9 +7754,9 @@ } }, "spdx-license-ids": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz", - "integrity": "sha512-uBIcIl3Ih6Phe3XHK1NqboJLdGfwr1UN3k6wSD1dZpmPsIkb8AGNbZYJ1fOBk834+Gxy8rpfDxrS6XLEMZMY2g==" + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", + "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==" }, "split-string": { "version": "3.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index e93c6f16854..63a48ce39ff 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -95,7 +95,7 @@ "@ui5/builder": "^1.0.5", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", - "js-yaml": "^3.13.0", + "js-yaml": "^3.13.1", "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", @@ -112,7 +112,7 @@ "eslint-plugin-jsdoc": "^4.8.0", "jsdoc": "^3.5.5", "nyc": "^13.3.0", - "opn-cli": "^4.0.0", + "opn-cli": "^4.1.0", "rimraf": "^2.6.3", "sinon": "^7.3.1", "tap-nyan": "^1.1.0" From 2b79f59fe22a23fcf3d692ba35a0a48115a13907 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 9 Apr 2019 04:24:21 +0000 Subject: [PATCH 0170/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 20 ++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a7af2142618..4ece06a23d2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2725,13 +2725,13 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.0.tgz", - "integrity": "sha512-kaGr4AAoU38t2CLJKKVSI0PQ0Clmh9lTjxdwopercV5vU0ZkyDyooyKX4ip1HHp2OSGYQYtp1tDjTexVhfQH+A==", + "version": "4.8.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.2.tgz", + "integrity": "sha512-4ybjEYqUdrE6fMbsU2PS71Q8H9+iMxoDOI0eNZG0o99T70rOFRV3C4enTNBzoqjAU1UwecnmWONyb8zjdpLneQ==", "dev": true, "requires": { "comment-parser": "^0.5.4", - "jsdoctypeparser": "^2.0.0-alpha-8", + "jsdoctypeparser": "3.1.0", "lodash": "^4.17.11" } }, @@ -4618,9 +4618,9 @@ } }, "jsdoctypeparser": { - "version": "2.0.0-alpha-8", - "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-2.0.0-alpha-8.tgz", - "integrity": "sha1-uvE3+44qVYgQrc8Z0tKi9oDpCl8=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-3.1.0.tgz", + "integrity": "sha512-JNbkKpDFqbYjg+IU3FNo7qjX7Opy7CwjHywT32zgAcz/d4lX6Umn5jOHVETUdnNNgGrMk0nEx1gvP0F4M0hzlQ==", "dev": true }, "jsesc": { @@ -7708,9 +7708,9 @@ } }, "source-map-support": { - "version": "0.5.11", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.11.tgz", - "integrity": "sha512-//sajEx/fGL3iw6fltKMdPvy8kL3kJ2O3iuYlRoT3k9Kb4BjOoZ+BZzaNHeuaruSt+Kf3Zk9tnfAQg9/AJqUVQ==", + "version": "0.5.12", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", + "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", "dev": true, "requires": { "buffer-from": "^1.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 63a48ce39ff..01f92bc2f72 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -109,7 +109,7 @@ "docdash": "^1.1.0", "eslint": "^5.16.0", "eslint-config-google": "^0.12.0", - "eslint-plugin-jsdoc": "^4.8.0", + "eslint-plugin-jsdoc": "^4.8.2", "jsdoc": "^3.5.5", "nyc": "^13.3.0", "opn-cli": "^4.1.0", From d60d63b455057f4d2ee178c5dc3335d0199fa85e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 10 Apr 2019 04:25:10 +0000 Subject: [PATCH 0171/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4ece06a23d2..5686b972f47 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2725,9 +2725,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "4.8.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.2.tgz", - "integrity": "sha512-4ybjEYqUdrE6fMbsU2PS71Q8H9+iMxoDOI0eNZG0o99T70rOFRV3C4enTNBzoqjAU1UwecnmWONyb8zjdpLneQ==", + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.3.tgz", + "integrity": "sha512-lKOaphUUzv0qKJrAdEwQGEWcNN2Foae5W111u1ASKQeliyJkKXCVxia0dakATuI/s2ojr6Q3FVzWwT6uE1icBg==", "dev": true, "requires": { "comment-parser": "^0.5.4", diff --git a/packages/project/package.json b/packages/project/package.json index 01f92bc2f72..cb3c43b6326 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -109,7 +109,7 @@ "docdash": "^1.1.0", "eslint": "^5.16.0", "eslint-config-google": "^0.12.0", - "eslint-plugin-jsdoc": "^4.8.2", + "eslint-plugin-jsdoc": "^4.8.3", "jsdoc": "^3.5.5", "nyc": "^13.3.0", "opn-cli": "^4.1.0", From 5b4f72f390a0373cb9a9f317fd945ca3eb435b0e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 12 Apr 2019 04:21:01 +0000 Subject: [PATCH 0172/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5686b972f47..840d2d842a1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -3084,9 +3084,9 @@ } }, "file-type": { - "version": "10.10.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.10.0.tgz", - "integrity": "sha512-3CTQE/db3dnK2jsfd4XiXMKw9nD0QVEMRLdBzqYDRr5BvYMUccDpP8hMc1uPb1VZ9Iw/cAJjYPNwJ5UzxGqsRg==", + "version": "10.11.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", + "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", "dev": true }, "filename-regex": { From da3629bd3c7e0854b554579fcce4c9c7e6b79eb5 Mon Sep 17 00:00:00 2001 From: Thorsten Hochreuter Date: Wed, 10 Apr 2019 16:40:31 +0200 Subject: [PATCH 0173/1272] [ui5-project][FIX] ProjectPreprocessor: Fix dependency resolution NPM dependencies which cannot be configured (via yaml or shim) are considered invalid and should not be part of the final project tree. --- packages/project/lib/projectPreprocessor.js | 3 +- .../project/test/lib/projectPreprocessor.js | 145 ++++++++++++++++++ 2 files changed, 147 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 708c47ef8dd..eb561e3e9b8 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -79,7 +79,8 @@ class ProjectPreprocessor { if (this.isConfigValid(project)) { await this.applyType(project); queue.push({ - projects: project.dependencies, + // copy array, so that the queue is stable while ignored project dependencies are removed + projects: [...project.dependencies], parent: project, level: level + 1 }); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index cda2940ed9c..47103fb544c 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -9,6 +9,7 @@ const libraryBPath = path.join(__dirname, "..", "fixtures", "collection", "libra // const libraryCPath = path.join(__dirname, "..", "fixtures", "collection", "library.c"); const libraryDPath = path.join(__dirname, "..", "fixtures", "library.d"); const cycleDepsBasePath = path.join(__dirname, "..", "fixtures", "cyclic-deps", "node_modules"); +const pathToInvalidModule = path.join(__dirname, "..", "fixtures", "invalidModule"); test("Project with inline configuration", (t) => { const tree = { @@ -533,9 +534,153 @@ test("Project tree B with inline configs", (t) => { }); }); +test("Project with nested invalid dependencies", (t) => { + return projectPreprocessor.processTree(treeWithInvalidModules).then((parsedTree) => { + t.deepEqual(expectedTreeWithInvalidModules, parsedTree); + }); +}); + /* ========================= */ /* ======= Test data ======= */ +/* === Invalid Modules */ +const treeWithInvalidModules = { + id: "application.a", + path: applicationAPath, + dependencies: [ + // A + { + id: "library.a", + path: libraryAPath, + dependencies: [ + { + // C - invalid - should be missing in preprocessed tree + id: "module.c", + dependencies: [], + path: pathToInvalidModule, + version: "1.0.0" + }, + { + // D - invalid - should be missing in preprocessed tree + id: "module.d", + dependencies: [], + path: pathToInvalidModule, + version: "1.0.0" + } + ], + version: "1.0.0", + specVersion: "1.0", + type: "library", + metadata: {name: "library.a"} + }, + // B + { + id: "library.b", + path: libraryBPath, + dependencies: [ + { + // C - invalid - should be missing in preprocessed tree + id: "module.c", + dependencies: [], + path: pathToInvalidModule, + version: "1.0.0" + }, + { + // D - invalid - should be missing in preprocessed tree + id: "module.d", + dependencies: [], + path: pathToInvalidModule, + version: "1.0.0" + } + ], + version: "1.0.0", + specVersion: "1.0", + type: "library", + metadata: {name: "library.b"} + } + ], + version: "1.0.0", + specVersion: "1.0", + type: "application", + metadata: { + name: "application.a" + } +}; + +const expectedTreeWithInvalidModules = { + "id": "application.a", + "path": applicationAPath, + "dependencies": [{ + "id": "library.a", + "path": libraryAPath, + "dependencies": [], + "version": "1.0.0", + "specVersion": "1.0", + "type": "library", + "metadata": { + "name": "library.a", + "copyright": "Some fancy copyright ${currentYear}" + }, + "kind": "project", + "_level": 1, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + } + }, { + "id": "library.b", + "path": libraryBPath, + "dependencies": [], + "version": "1.0.0", + "specVersion": "1.0", + "type": "library", + "metadata": { + "name": "library.b", + "copyright": "Some fancy copyright ${currentYear}" + }, + "kind": "project", + "_level": 1, + "resources": { + "configuration": { + "paths": { + "src": "src", + "test": "test" + } + }, + "pathMappings": { + "/resources/": "src", + "/test-resources/": "test" + } + } + }], + "version": "1.0.0", + "specVersion": "1.0", + "type": "application", + "metadata": { + "name": "application.a" + }, + "_level": 0, + "kind": "project", + "resources": { + "configuration": { + "paths": { + "webapp": "webapp" + } + }, + "pathMappings": { + "/": "webapp" + } + } +}; + /* === Tree A === */ const treeAWithInlineConfigs = { id: "application.a", From eb291d5503da9c78e8d8e4fec8cd68a5bf1cabbb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 12 Apr 2019 14:02:43 +0000 Subject: [PATCH 0174/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.0.5 to 1.1.0 --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 840d2d842a1..3fa9fa114e7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -317,9 +317,9 @@ "dev": true }, "@ui5/builder": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.0.5.tgz", - "integrity": "sha512-AJC3rMJOxrPB7wsF/Mujqd5OthpBl8LzuHTBr9iA5r+pGgPJeaKU5Nnzeb1093U3Ncp7hjfjnwvSDGgdDGQbZA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.1.0.tgz", + "integrity": "sha512-DnuPmDQdmGddQEb18Jc254ztgLGVEPpSNMq0QGxPQkDIanEEZU+OjZs0fyz9G1WydxMlf9DL9sQF8CKbzT5EYQ==", "requires": { "@ui5/fs": "^1.0.2", "@ui5/logger": "^1.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index cb3c43b6326..132697f4bdd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -92,7 +92,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.0.5", + "@ui5/builder": "^1.1.0", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.1", From 3a240975bd7540129c302cbf8c468bcf602e9c18 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 12 Apr 2019 14:08:46 +0000 Subject: [PATCH 0175/1272] [ui5-project]Release 1.0.2 --- packages/project/CHANGELOG.md | 12 +++++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 4d6b0c936e0..ba28285dd2b 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.0.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.0.2...HEAD). + + +## [v1.0.2] - 2019-04-12 +### Bug Fixes +- **ProjectPreprocessor:** Fix dependency resolution [`0671a8b`](https://github.com/SAP/ui5-project/commit/0671a8bf2de9ca24823df6f041a77e7c8e46f6f0) + +### Dependency Updates +- Bump [@ui5](https://github.com/ui5)/builder from 1.0.2 to 1.0.3 ([#154](https://github.com/SAP/ui5-project/issues/154)) [`cf86764`](https://github.com/SAP/ui5-project/commit/cf867643b8b621019a5d5b0f5d3117ebcdd1cd44) + ## [v1.0.1] - 2019-02-14 @@ -83,6 +92,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v1.0.2]: https://github.com/SAP/ui5-project/compare/v1.0.1...v1.0.2 [v1.0.1]: https://github.com/SAP/ui5-project/compare/v1.0.0...v1.0.1 [v1.0.0]: https://github.com/SAP/ui5-project/compare/v0.2.5...v1.0.0 [v0.2.5]: https://github.com/SAP/ui5-project/compare/v0.2.4...v0.2.5 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3fa9fa114e7..06565178d91 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.0.1", + "version": "1.0.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 132697f4bdd..2d35282022c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.0.1", + "version": "1.0.2", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From af1247b7104bffe9c894be6c0a9058c2721c0573 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 15 Apr 2019 04:23:20 +0000 Subject: [PATCH 0176/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 06565178d91..656e93dbb08 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -4146,9 +4146,9 @@ "dev": true }, "inquirer": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.2.tgz", - "integrity": "sha512-Z2rREiXA6cHRR9KBOarR3WuLlFzlIfAEIiB45ll5SSadMg7WqOh1MKEjjndfuH5ewXdixWCxqnVfGOQzPeiztA==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.3.1.tgz", + "integrity": "sha512-MmL624rfkFt4TG9y/Jvmt8vdmOo836U7Y0Hxr2aFk3RelZEGX4Igk0KabWrcaaZaTv9uzglOqWh1Vly+FAWAXA==", "dev": true, "requires": { "ansi-escapes": "^3.2.0", @@ -4162,7 +4162,7 @@ "run-async": "^2.2.0", "rxjs": "^6.4.0", "string-width": "^2.1.0", - "strip-ansi": "^5.0.0", + "strip-ansi": "^5.1.0", "through": "^2.3.6" }, "dependencies": { From 361df1bbfad110486dadf78928c6ae7d2fd99e89 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 16 Apr 2019 04:25:08 +0000 Subject: [PATCH 0177/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 656e93dbb08..94d962c0cd3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2008,9 +2008,9 @@ "dev": true }, "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" }, "concat-map": { "version": "0.0.1", From 6e31e1c944036fa0d9888984fe0f0a809d33e68a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 17 Apr 2019 04:23:50 +0000 Subject: [PATCH 0178/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 64 +++++++++++++----------------- 1 file changed, 28 insertions(+), 36 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 94d962c0cd3..e97e0e705d9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -655,9 +655,9 @@ "dev": true }, "async-each": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.2.tgz", - "integrity": "sha512-6xrbvN0MOBKSJDdonmSSz2OwFSgxRaVtBDes26mj9KIGtDo+g9xosFRSC+i1gQh2oAN/tQ62AI/pGZGQjVOiRg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", "dev": true }, "asynckit": { @@ -3212,14 +3212,14 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.7.tgz", - "integrity": "sha512-Pxm6sI2MeBD7RdD12RYsqaP0nMiwx8eZBXCa6z2L+mRHm2DYrOYwihmhjpkdjUHwQhslWQjRpEgNq4XvBmaAuw==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.8.tgz", + "integrity": "sha512-tPvHgPGB7m40CZ68xqFGkKuzN+RnpGmSV+hgeKxhRpbxdqKXUFJGC3yonBOLzQBcJyGpdZFDfCsdOC2KFsXzeA==", "dev": true, "optional": true, "requires": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" }, "dependencies": { "abbrev": { @@ -3297,12 +3297,12 @@ "optional": true }, "debug": { - "version": "2.6.9", + "version": "4.1.1", "bundled": true, "dev": true, "optional": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, "deep-extend": { @@ -3473,24 +3473,24 @@ } }, "ms": { - "version": "2.0.0", + "version": "2.1.1", "bundled": true, "dev": true, "optional": true }, "needle": { - "version": "2.2.4", + "version": "2.3.0", "bundled": true, "dev": true, "optional": true, "requires": { - "debug": "^2.1.2", + "debug": "^4.1.0", "iconv-lite": "^0.4.4", "sax": "^1.2.4" } }, "node-pre-gyp": { - "version": "0.10.3", + "version": "0.12.0", "bundled": true, "dev": true, "optional": true, @@ -3518,13 +3518,13 @@ } }, "npm-bundled": { - "version": "1.0.5", + "version": "1.0.6", "bundled": true, "dev": true, "optional": true }, "npm-packlist": { - "version": "1.2.0", + "version": "1.4.1", "bundled": true, "dev": true, "optional": true, @@ -3663,7 +3663,7 @@ "optional": true }, "semver": { - "version": "5.6.0", + "version": "5.7.0", "bundled": true, "dev": true, "optional": true @@ -4330,9 +4330,9 @@ } }, "is-error": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.1.tgz", - "integrity": "sha1-aEqW2EB2V3yY9M20DG0mpRI78Zw=", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", + "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", "dev": true }, "is-extendable": { @@ -4536,15 +4536,15 @@ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, "istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-LXTBICkMARVgo579kWDm8SqfB6nvSDKNqIOBEjmJRnL04JvoMHCYGWaMddQnseJYtkEuEvO/sIcOxPLk9gERug==", "dev": true }, "istanbul-lib-instrument": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.1.0.tgz", - "integrity": "sha512-ooVllVGT38HIk8MxDj/OIHXSYvH+1tq/Vb38s8ixt9GoJadXska4WkGY+0wkmtYCZNYtaARniH/DixUGGLZ0uA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.2.0.tgz", + "integrity": "sha512-06IM3xShbNW4NgZv5AP4QH0oHqf1/ivFo8eFys0ZjPXHGldHJQWb3riYOKXqmOqfxXBfxu4B+g/iuhOPZH0RJg==", "dev": true, "requires": { "@babel/generator": "^7.0.0", @@ -4552,16 +4552,8 @@ "@babel/template": "^7.0.0", "@babel/traverse": "^7.0.0", "@babel/types": "^7.0.0", - "istanbul-lib-coverage": "^2.0.3", - "semver": "^5.5.0" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } + "istanbul-lib-coverage": "^2.0.4", + "semver": "^6.0.0" } }, "js-string-escape": { From f24c2154b32781ae9acfc55a10c93d9772542737 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 18 Apr 2019 04:20:30 +0000 Subject: [PATCH 0179/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e97e0e705d9..b073d0ef8f4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -4885,9 +4885,9 @@ "dev": true }, "lolex": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-3.1.0.tgz", - "integrity": "sha512-zFo5MgCJ0rZ7gQg69S4pqBsLURbFw11X68C18OcJjJQbqaXm2NoTrGl1IMM3TIz0/BnN1tIs2tzmmqvCsOMMjw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.0.1.tgz", + "integrity": "sha512-UHuOBZ5jjsKuzbB/gRNNW8Vg8f00Emgskdq2kvZxgBJCS0aqquAuXai/SkWORlKeZEiNQWZjFZOqIUcH9LqKCw==", "dev": true }, "loose-envify": { @@ -7534,16 +7534,16 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, "sinon": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.3.1.tgz", - "integrity": "sha512-eQKMaeWovtOtYe2xThEvaHmmxf870Di+bim10c3ZPrL5bZhLGtu8cz+rOBTFz0CwBV4Q/7dYwZiqZbGVLZ+vjQ==", + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.3.2.tgz", + "integrity": "sha512-thErC1z64BeyGiPvF8aoSg0LEnptSaWE7YhdWWbWXgelOyThent7uKOnnEh9zBxDbKixtr5dEko+ws1sZMuFMA==", "dev": true, "requires": { "@sinonjs/commons": "^1.4.0", "@sinonjs/formatio": "^3.2.1", "@sinonjs/samsam": "^3.3.1", "diff": "^3.5.0", - "lolex": "^3.1.0", + "lolex": "^4.0.1", "nise": "^1.4.10", "supports-color": "^5.5.0" } diff --git a/packages/project/package.json b/packages/project/package.json index 2d35282022c..b5896c7b325 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -114,7 +114,7 @@ "nyc": "^13.3.0", "opn-cli": "^4.1.0", "rimraf": "^2.6.3", - "sinon": "^7.3.1", + "sinon": "^7.3.2", "tap-nyan": "^1.1.0" } } From 1d484daa0ac983f68a1e6f884d5550ff04ef5da9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 19 Apr 2019 04:20:44 +0000 Subject: [PATCH 0180/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b073d0ef8f4..337c66a2790 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5156,16 +5156,16 @@ "optional": true }, "mime-db": { - "version": "1.38.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz", - "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==" + "version": "1.39.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.39.0.tgz", + "integrity": "sha512-DTsrw/iWVvwHH+9Otxccdyy0Tgiil6TWK/xhfARJZF/QFhwOgZgOIvA2/VIGpM8U7Q8z5nDmdDWC6tuVMJNibw==" }, "mime-types": { - "version": "2.1.22", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz", - "integrity": "sha512-aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==", + "version": "2.1.23", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.23.tgz", + "integrity": "sha512-ROk/m+gMVSrRxTkMlaQOvFmFmYDc7sZgrjjM76abqmd2Cc5fCV7jAMA5XUccEtJ3cYiYdgixUVI+fApc2LkXlw==", "requires": { - "mime-db": "~1.38.0" + "mime-db": "~1.39.0" } }, "mimic-fn": { From 006b2040b0284d33810a97e945f77518f69eae06 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 22 Apr 2019 04:24:04 +0000 Subject: [PATCH 0181/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 337c66a2790..c01e5feaf62 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5156,16 +5156,16 @@ "optional": true }, "mime-db": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.39.0.tgz", - "integrity": "sha512-DTsrw/iWVvwHH+9Otxccdyy0Tgiil6TWK/xhfARJZF/QFhwOgZgOIvA2/VIGpM8U7Q8z5nDmdDWC6tuVMJNibw==" + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" }, "mime-types": { - "version": "2.1.23", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.23.tgz", - "integrity": "sha512-ROk/m+gMVSrRxTkMlaQOvFmFmYDc7sZgrjjM76abqmd2Cc5fCV7jAMA5XUccEtJ3cYiYdgixUVI+fApc2LkXlw==", + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", "requires": { - "mime-db": "~1.39.0" + "mime-db": "1.40.0" } }, "mimic-fn": { From a7c1d0d6d9168cebe4b04d75371226a5856e252b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 Apr 2019 04:25:06 +0000 Subject: [PATCH 0182/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c01e5feaf62..0f67af15222 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -7428,9 +7428,9 @@ } }, "rxjs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.4.0.tgz", - "integrity": "sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw==", + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.1.tgz", + "integrity": "sha512-y0j31WJc83wPu31vS1VlAFW5JGrnGC+j+TtGAa1fRQphy48+fDYiDmX8tjGloToEsMkxnouOg/1IzXGKkJnZMg==", "dev": true, "requires": { "tslib": "^1.9.0" From 641bb54bba29b29c61a9bad4f3791331666e8cfb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 Apr 2019 22:29:16 +0200 Subject: [PATCH 0183/1272] [ui5-project][INTERNAL] Add .eslintrc.js to exclude list of nyc coverage --- packages/project/package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index b5896c7b325..da7aeff5078 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -59,7 +59,8 @@ "docs/**", "jsdocs/**", "coverage/**", - "test/**" + "test/**", + ".eslintrc.js" ], "check-coverage": true, "statements": 85, From a0439f0e64124df829c58ef81f4e36fcb572a2b0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 Apr 2019 22:35:06 +0200 Subject: [PATCH 0184/1272] [ui5-project][INTERNAL] Travis: Pin latest node version to 11 The current version of a JSDoc dependency is not compatible with node 12. Also see: https://github.com/hegemonic/requizzle/issues/5 --- packages/project/.travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.travis.yml b/packages/project/.travis.yml index 4fd870b70bd..78a9124dcca 100644 --- a/packages/project/.travis.yml +++ b/packages/project/.travis.yml @@ -1,7 +1,7 @@ language: node_js # don't install any environment node_js: -- "node" +- "11" os: - linux From 67c4e7a6505fb303a5dc63b9a5e97c210fc09168 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 24 Apr 2019 04:23:06 +0000 Subject: [PATCH 0185/1272] [ui5-project][INTERNAL] In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0f67af15222..c2827b95d62 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -6523,9 +6523,9 @@ } }, "open": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-6.1.0.tgz", - "integrity": "sha512-Vqch7NFb/WsMujhqfq+B3u0xkssRjZlxh+NSsBSphpcgaFD7gfB0SUBfR91E9ygBlyNGNogXR2cUB8rRfoo2kQ==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/open/-/open-6.2.0.tgz", + "integrity": "sha512-Vxf6HJkwrqmvh9UAID3MnMYXntbTxKLOSfOnO7LJdzPf3NE3KQYFNV0/Lcz2VAndbRFil58XVCyh8tiX11fiYw==", "dev": true, "requires": { "is-wsl": "^1.1.0" From e48e48d626cf3dc90415042298283dfc95682b91 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Wed, 24 Apr 2019 04:55:31 +0000 Subject: [PATCH 0186/1272] [ui5-project]Bump nyc from 13.3.0 to 14.0.0 Bumps [nyc](https://github.com/istanbuljs/nyc) from 13.3.0 to 14.0.0. - [Release notes](https://github.com/istanbuljs/nyc/releases) - [Changelog](https://github.com/istanbuljs/nyc/blob/master/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/nyc/compare/v13.3.0...v14.0.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 16935 +++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 8282 insertions(+), 8655 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c2827b95d62..3915ef8ffbc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,8656 +1,8283 @@ { - "name": "@ui5/project", - "version": "1.0.2", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@ava/babel-plugin-throws-helper": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-2.0.0.tgz", - "integrity": "sha1-L8H+PCEacQcaTsp7j3r1hCzRrnw=", - "dev": true - }, - "@ava/babel-preset-stage-4": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", - "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", - "dev": true, - "requires": { - "babel-plugin-check-es2015-constants": "^6.8.0", - "babel-plugin-syntax-trailing-function-commas": "^6.20.0", - "babel-plugin-transform-async-to-generator": "^6.16.0", - "babel-plugin-transform-es2015-destructuring": "^6.19.0", - "babel-plugin-transform-es2015-function-name": "^6.9.0", - "babel-plugin-transform-es2015-modules-commonjs": "^6.18.0", - "babel-plugin-transform-es2015-parameters": "^6.21.0", - "babel-plugin-transform-es2015-spread": "^6.8.0", - "babel-plugin-transform-es2015-sticky-regex": "^6.8.0", - "babel-plugin-transform-es2015-unicode-regex": "^6.11.0", - "babel-plugin-transform-exponentiation-operator": "^6.8.0", - "package-hash": "^1.2.0" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", - "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "package-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", - "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", - "dev": true, - "requires": { - "md5-hex": "^1.3.0" - } - } - } - }, - "@ava/babel-preset-transform-test-files": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-3.0.0.tgz", - "integrity": "sha1-ze0RlqjY2TgaUJJAq5LpGl7Aafc=", - "dev": true, - "requires": { - "@ava/babel-plugin-throws-helper": "^2.0.0", - "babel-plugin-espower": "^2.3.2" - } - }, - "@ava/write-file-atomic": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ava/write-file-atomic/-/write-file-atomic-2.2.0.tgz", - "integrity": "sha512-BTNB3nGbEfJT+69wuqXFr/bQH7Vr7ihx2xGOMNqPgDGhwspoZhiWumDDZNjBy7AScmqS5CELIOGtPVXESyrnDA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" - } - }, - "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", - "dev": true, - "requires": { - "@babel/highlight": "^7.0.0" - } - }, - "@babel/generator": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.0.tgz", - "integrity": "sha512-/v5I+a1jhGSKLgZDcmAUZ4K/VePi43eRkUs3yePW1HB1iANOD5tqJXwGSG4BZhSksP8J9ejSlwGeTiiOFZOrXQ==", - "dev": true, - "requires": { - "@babel/types": "^7.4.0", - "jsesc": "^2.5.1", - "lodash": "^4.17.11", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - } - } - }, - "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", - "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.0.tgz", - "integrity": "sha512-7Cuc6JZiYShaZnybDmfwhY4UYHzI6rlqhWjaIqbsJGsIqPimEYy5uh3akSRLMg65LSdSEnJ8a8/bWQN6u2oMGw==", - "dev": true, - "requires": { - "@babel/types": "^7.4.0" - } - }, - "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - } - } - }, - "@babel/parser": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.3.tgz", - "integrity": "sha512-gxpEUhTS1sGA63EGQGuA+WESPR/6tz6ng7tSHFCmaTJK/cGK8y37cBTspX+U2xCAue2IQVvF6Z0oigmjwD8YGQ==", - "dev": true - }, - "@babel/template": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.0.tgz", - "integrity": "sha512-SOWwxxClTTh5NdbbYZ0BmaBVzxzTh2tO/TeLTbF6MO6EzVhHTnff8CdBXx3mEtazFBoysmEM6GU/wF+SuSx4Fw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.4.0", - "@babel/types": "^7.4.0" - } - }, - "@babel/traverse": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.3.tgz", - "integrity": "sha512-HmA01qrtaCwwJWpSKpA948cBvU5BrmviAief/b3AVw936DtcdsTexlbyzNuDnthwhOQ37xshn7hvQaEQk7ISYQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.4.0", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/types": "^7.4.0", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.11" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", - "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", - "dev": true - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.0.tgz", - "integrity": "sha512-aPvkXyU2SPOnztlgo8n9cEiXW755mgyvueUPcpStqdzoSPm0fjO0vQBjLkt3JKJW7ufikfcnMTTPsN1xaTsBPA==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.11", - "to-fast-properties": "^2.0.0" - }, - "dependencies": { - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - } - } - }, - "@concordance/react": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", - "integrity": "sha512-htrsRaQX8Iixlsek8zQU7tE8wcsTQJ5UhZkSPEA8slCDAisKpC/2VgU/ucPn32M5/LjGGXRaUEKvEw1Wiuu4zQ==", - "dev": true, - "requires": { - "arrify": "^1.0.1" - } - }, - "@ladjs/time-require": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@ladjs/time-require/-/time-require-0.1.4.tgz", - "integrity": "sha512-weIbJqTMfQ4r1YX85u54DKfjLZs2jwn1XZ6tIOP/pFgMwhIN5BAtaCp/1wn9DzyLsDR9tW0R2NIePcVJ45ivQQ==", - "dev": true, - "requires": { - "chalk": "^0.4.0", - "date-time": "^0.1.1", - "pretty-ms": "^0.2.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", - "dev": true - }, - "chalk": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", - "dev": true, - "requires": { - "ansi-styles": "~1.0.0", - "has-color": "~0.1.0", - "strip-ansi": "~0.1.0" - } - }, - "pretty-ms": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", - "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", - "dev": true, - "requires": { - "parse-ms": "^0.1.0" - } - }, - "strip-ansi": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", - "dev": true - } - } - }, - "@sinonjs/commons": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz", - "integrity": "sha512-9jHK3YF/8HtJ9wCAbG+j8cD0i0+ATS9A7gXFqS36TblLPNy6rEEc+SB0imo91eCboGaBYGV/MT1/br/J+EE7Tw==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/formatio": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz", - "integrity": "sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" - } - }, - "@sinonjs/samsam": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.1.tgz", - "integrity": "sha512-wRSfmyd81swH0hA1bxJZJ57xr22kC07a1N4zuIL47yTS04bDk6AoCkczcqHEjcRPmJ+FruGJ9WBQiJwMtIElFw==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.0.2", - "array-from": "^2.1.1", - "lodash": "^4.17.11" - } - }, - "@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", - "dev": true - }, - "@ui5/builder": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.1.0.tgz", - "integrity": "sha512-DnuPmDQdmGddQEb18Jc254ztgLGVEPpSNMq0QGxPQkDIanEEZU+OjZs0fyz9G1WydxMlf9DL9sQF8CKbzT5EYQ==", - "requires": { - "@ui5/fs": "^1.0.2", - "@ui5/logger": "^1.0.1", - "cheerio": "^0.22.0", - "escodegen": "^1.11.1", - "escope": "^3.6.0", - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "globby": "^7.1.1", - "graceful-fs": "^4.1.15", - "jsdoc": "^3.5.5", - "less-openui5": "^0.6.0", - "make-dir": "^2.1.0", - "pretty-data": "^0.40.0", - "pretty-hrtime": "^1.0.3", - "replacestream": "^4.0.3", - "semver": "^6.0.0", - "tmp": "0.1.0", - "uglify-es": "^3.2.2", - "xml2js": "^0.4.17", - "yazl": "^2.5.1" - } - }, - "@ui5/fs": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.2.tgz", - "integrity": "sha512-8Fc4iqpo/sm2KMGV0MiesqWPoCVDf9OnWVWqdoJ0c7GwAh6olt2EDPtnjtQ0tLMW2Uovdh/Nz+S1qecY0Yb1GA==", - "requires": { - "@ui5/logger": "^1.0.1", - "clone": "^2.1.0", - "dir-glob": "2.0.0", - "globby": "^7.1.1", - "graceful-fs": "^4.1.15", - "make-dir": "^2.1.0", - "micromatch": "^3.1.4", - "minimatch": "^3.0.3", - "mock-require": "^3.0.3", - "pretty-hrtime": "^1.0.3", - "random-int": "^1.0.0" - } - }, - "@ui5/logger": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", - "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", - "requires": { - "npmlog": "^4.1.2" - } - }, - "acorn": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", - "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", - "dev": true - }, - "acorn-jsx": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", - "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", - "dev": true - }, - "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "optional": true - }, - "ansi-align": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", - "dev": true, - "requires": { - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", - "dev": true, - "requires": { - "micromatch": "^2.1.5", - "normalize-path": "^2.0.0" - }, - "dependencies": { - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "requires": { - "is-posix-bracket": "^0.1.0" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - } - } - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "arr-exclude": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", - "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" - }, - "array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true - }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" - }, - "auto-bind": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.2.1.tgz", - "integrity": "sha512-/W9yj1yKmBLwpexwAujeD9YHwYmRuWFGV8HWE7smQab797VeHa4/cnE2NFeDhA+E+5e/OGBI8763EhLjfZ/MXA==", - "dev": true - }, - "ava": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-0.25.0.tgz", - "integrity": "sha512-4lGNJCf6xL8SvsKVEKxEE46se7JAUIAZoKHw9itTQuwcsydhpAMkBs5gOOiWiwt0JKNIuXWc2/r4r8ZdcNrBEw==", - "dev": true, - "requires": { - "@ava/babel-preset-stage-4": "^1.1.0", - "@ava/babel-preset-transform-test-files": "^3.0.0", - "@ava/write-file-atomic": "^2.2.0", - "@concordance/react": "^1.0.0", - "@ladjs/time-require": "^0.1.4", - "ansi-escapes": "^3.0.0", - "ansi-styles": "^3.1.0", - "arr-flatten": "^1.0.1", - "array-union": "^1.0.1", - "array-uniq": "^1.0.2", - "arrify": "^1.0.0", - "auto-bind": "^1.1.0", - "ava-init": "^0.2.0", - "babel-core": "^6.17.0", - "babel-generator": "^6.26.0", - "babel-plugin-syntax-object-rest-spread": "^6.13.0", - "bluebird": "^3.0.0", - "caching-transform": "^1.0.0", - "chalk": "^2.0.1", - "chokidar": "^1.4.2", - "clean-stack": "^1.1.1", - "clean-yaml-object": "^0.1.0", - "cli-cursor": "^2.1.0", - "cli-spinners": "^1.0.0", - "cli-truncate": "^1.0.0", - "co-with-promise": "^4.6.0", - "code-excerpt": "^2.1.1", - "common-path-prefix": "^1.0.0", - "concordance": "^3.0.0", - "convert-source-map": "^1.5.1", - "core-assert": "^0.2.0", - "currently-unhandled": "^0.4.1", - "debug": "^3.0.1", - "dot-prop": "^4.1.0", - "empower-core": "^0.6.1", - "equal-length": "^1.0.0", - "figures": "^2.0.0", - "find-cache-dir": "^1.0.0", - "fn-name": "^2.0.0", - "get-port": "^3.0.0", - "globby": "^6.0.0", - "has-flag": "^2.0.0", - "hullabaloo-config-manager": "^1.1.0", - "ignore-by-default": "^1.0.0", - "import-local": "^0.1.1", - "indent-string": "^3.0.0", - "is-ci": "^1.0.7", - "is-generator-fn": "^1.0.0", - "is-obj": "^1.0.0", - "is-observable": "^1.0.0", - "is-promise": "^2.1.0", - "last-line-stream": "^1.0.0", - "lodash.clonedeepwith": "^4.5.0", - "lodash.debounce": "^4.0.3", - "lodash.difference": "^4.3.0", - "lodash.flatten": "^4.2.0", - "loud-rejection": "^1.2.0", - "make-dir": "^1.0.0", - "matcher": "^1.0.0", - "md5-hex": "^2.0.0", - "meow": "^3.7.0", - "ms": "^2.0.0", - "multimatch": "^2.1.0", - "observable-to-promise": "^0.5.0", - "option-chain": "^1.0.0", - "package-hash": "^2.0.0", - "pkg-conf": "^2.0.0", - "plur": "^2.0.0", - "pretty-ms": "^3.0.0", - "require-precompiled": "^0.1.0", - "resolve-cwd": "^2.0.0", - "safe-buffer": "^5.1.1", - "semver": "^5.4.1", - "slash": "^1.0.0", - "source-map-support": "^0.5.0", - "stack-utils": "^1.0.1", - "strip-ansi": "^4.0.0", - "strip-bom-buf": "^1.0.0", - "supertap": "^1.0.0", - "supports-color": "^5.0.0", - "trim-off-newlines": "^1.0.1", - "unique-temp-dir": "^1.0.0", - "update-notifier": "^2.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - }, - "dependencies": { - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - } - } - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "ava-init": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", - "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", - "dev": true, - "requires": { - "arr-exclude": "^1.0.0", - "execa": "^0.7.0", - "has-yarn": "^1.0.0", - "read-pkg-up": "^2.0.0", - "write-pkg": "^3.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "requires": { - "pify": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true, - "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - } - }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - } - } - } - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" - }, - "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "babel-core": { - "version": "6.26.3", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", - "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", - "dev": true, - "requires": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true - } - } - }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true, - "requires": { - "babel-helper-explode-assignable-expression": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true, - "requires": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-espower": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.4.0.tgz", - "integrity": "sha512-/+SRpy7pKgTI28oEHfn1wkuM5QFAdRq8WNsOOih1dVrdV6A/WbNbRZyl0eX5eyDgtb0lOE27PeDFuCX2j8OxVg==", - "dev": true, - "requires": { - "babel-generator": "^6.1.0", - "babylon": "^6.1.0", - "call-matcher": "^1.0.0", - "core-js": "^2.0.0", - "espower-location-detector": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.1.1" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", - "dev": true - }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", - "dev": true - }, - "babel-plugin-syntax-object-rest-spread": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", - "dev": true - }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", - "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", - "dev": true - }, - "babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-functions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", - "dev": true, - "requires": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" - } - }, - "babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", - "dev": true, - "requires": { - "babel-helper-call-delegate": "^6.24.1", - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "regexpu-core": "^2.0.0" - } - }, - "babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", - "dev": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", - "babel-plugin-syntax-exponentiation-operator": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" - }, - "dependencies": { - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "^0.5.6" - } - } - } - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "babylon": { - "version": "7.0.0-beta.19", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", - "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "bluebird": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.4.tgz", - "integrity": "sha512-FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw==" - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" - }, - "boxen": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", - "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", - "dev": true, - "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "buf-compare": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", - "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", - "dev": true - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "caching-transform": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", - "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", - "dev": true, - "requires": { - "md5-hex": "^1.2.0", - "mkdirp": "^0.5.1", - "write-file-atomic": "^1.1.4" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", - "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "write-file-atomic": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", - "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" - } - } - } - }, - "call-matcher": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.1.0.tgz", - "integrity": "sha512-IoQLeNwwf9KTNbtSA7aEBb1yfDbdnzwjCetjkC8io5oGeOmK2CBNdg0xr+tadRYKO0p7uQyZzvon0kXlZbvGrw==", - "dev": true, - "requires": { - "core-js": "^2.0.0", - "deep-equal": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.0.0" - } - }, - "call-signature": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", - "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", - "dev": true - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, - "capture-stack-trace": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", - "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "catharsis": { - "version": "0.8.9", - "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", - "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", - "requires": { - "underscore-contrib": "~0.3.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "cheerio": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", - "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", - "requires": { - "css-select": "~1.2.0", - "dom-serializer": "~0.1.0", - "entities": "~1.1.1", - "htmlparser2": "^3.9.1", - "lodash.assignin": "^4.0.9", - "lodash.bind": "^4.1.4", - "lodash.defaults": "^4.0.1", - "lodash.filter": "^4.4.0", - "lodash.flatten": "^4.2.0", - "lodash.foreach": "^4.3.0", - "lodash.map": "^4.4.0", - "lodash.merge": "^4.4.0", - "lodash.pick": "^4.2.1", - "lodash.reduce": "^4.4.0", - "lodash.reject": "^4.4.0", - "lodash.some": "^4.4.0" - } - }, - "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true, - "requires": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "fsevents": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0" - } - }, - "ci-info": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", - "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "clean-css": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", - "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=", - "optional": true, - "requires": { - "commander": "2.0.x" - } - }, - "clean-stack": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", - "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", - "dev": true - }, - "clean-yaml-object": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", - "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", - "dev": true - }, - "cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", - "dev": true - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-spinners": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", - "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", - "dev": true - }, - "cli-truncate": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", - "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", - "dev": true, - "requires": { - "slice-ansi": "^1.0.0", - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" - }, - "co-with-promise": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", - "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", - "dev": true, - "requires": { - "pinkie-promise": "^1.0.0" - } - }, - "code-excerpt": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", - "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", - "dev": true, - "requires": { - "convert-to-spaces": "^1.0.1" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", - "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", - "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", - "optional": true - }, - "comment-parser": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.4.tgz", - "integrity": "sha512-0h7W6Y1Kb6zKQMJqdX41C5qf9ITCVIsD2qP2RaqDF3GFkXFrmuAuv5zUOuo19YzyC9scjBNpqzuaRQ2Sy5pxMQ==", - "dev": true - }, - "common-path-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", - "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concordance": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", - "integrity": "sha512-CZBzJ3/l5QJjlZM20WY7+5GP5pMTw+1UEbThcpMw8/rojsi5sBCiD8ZbBLtD+jYpRGAkwuKuqk108c154V9eyQ==", - "dev": true, - "requires": { - "date-time": "^2.1.0", - "esutils": "^2.0.2", - "fast-diff": "^1.1.1", - "function-name-support": "^0.2.0", - "js-string-escape": "^1.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.flattendeep": "^4.4.0", - "lodash.merge": "^4.6.0", - "md5-hex": "^2.0.0", - "semver": "^5.3.0", - "well-known-symbols": "^1.0.0" - }, - "dependencies": { - "date-time": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", - "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", - "dev": true, - "requires": { - "time-zone": "^1.0.0" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "convert-source-map": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", - "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "convert-to-spaces": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", - "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", - "dev": true - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" - }, - "core-assert": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", - "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", - "dev": true, - "requires": { - "buf-compare": "^1.0.0", - "is-error": "^2.2.0" - } - }, - "core-js": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz", - "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "coveralls": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.3.tgz", - "integrity": "sha512-viNfeGlda2zJr8Gj1zqXpDMRjw9uM54p7wzZdvLRyOgnAfCe974Dq4veZkjJdxQXbmdppu6flEajFYseHYaUhg==", - "dev": true, - "requires": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.86.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "create-error-class": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", - "dev": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, - "cross-env": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", - "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.5", - "is-windows": "^1.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", - "dev": true - }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", - "requires": { - "es5-ext": "^0.10.9" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "date-time": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", - "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", - "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - } - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" - }, - "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", - "requires": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - } - }, - "docdash": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.1.0.tgz", - "integrity": "sha512-sgcessH25PU6CIoJGeOjDCv9CLi6Z6TLwc553s/O+DKCnIRXT58e4CG3WsgI8Zea5ZQcjsfa8u4IwKqR2TKTxQ==", - "dev": true - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-serializer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", - "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", - "requires": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" - } - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" - }, - "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "requires": { - "domelementtype": "1" - } - }, - "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", - "dev": true, - "requires": { - "is-obj": "^1.0.0" - } - }, - "duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - } - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", - "dev": true - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "empower-core": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", - "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", - "dev": true, - "requires": { - "call-signature": "0.0.2", - "core-js": "^2.0.0" - } - }, - "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" - }, - "equal-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", - "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", - "dev": true - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es5-ext": { - "version": "0.10.49", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.49.tgz", - "integrity": "sha512-3NMEhi57E31qdzmYp2jwRArIUsj1HI/RxbQ4bgnSB+AIKIxsAmTiK83bYMifIcpWvEc3P1X30DhUKOqEtF/kvg==", - "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.1", - "next-tick": "^1.0.0" - } - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "es6-weak-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", - "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", - "requires": { - "d": "1", - "es5-ext": "^0.10.14", - "es6-iterator": "^2.0.1", - "es6-symbol": "^3.1.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "escodegen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", - "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", - "requires": { - "esprima": "^3.1.3", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "optional": true - } - } - }, - "escope": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", - "requires": { - "es6-map": "^0.1.3", - "es6-weak-map": "^2.0.1", - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", - "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.9.1", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^4.0.3", - "eslint-utils": "^1.3.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^5.0.1", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.7.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^6.2.2", - "js-yaml": "^3.13.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.11", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^5.5.1", - "strip-ansi": "^4.0.0", - "strip-json-comments": "^2.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", - "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", - "dev": true - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "eslint-config-google": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.12.0.tgz", - "integrity": "sha512-SHDM3nIRCJBACjf8c/H6FvCwRmKbphESNl3gJFBNbw4KYDLCONB3ABYLXDGF+iaVP9XSTND/Q5/PuGoFkp4xbg==", - "dev": true - }, - "eslint-plugin-jsdoc": { - "version": "4.8.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.3.tgz", - "integrity": "sha512-lKOaphUUzv0qKJrAdEwQGEWcNN2Foae5W111u1ASKQeliyJkKXCVxia0dakATuI/s2ojr6Q3FVzWwT6uE1icBg==", - "dev": true, - "requires": { - "comment-parser": "^0.5.4", - "jsdoctypeparser": "3.1.0", - "lodash": "^4.17.11" - } - }, - "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", - "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", - "dev": true - }, - "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", - "dev": true - }, - "espower-location-detector": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", - "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", - "dev": true, - "requires": { - "is-url": "^1.2.1", - "path-is-absolute": "^1.0.0", - "source-map": "^0.5.0", - "xtend": "^4.0.0" - } - }, - "espree": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", - "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", - "dev": true, - "requires": { - "acorn": "^6.0.7", - "acorn-jsx": "^5.0.0", - "eslint-visitor-keys": "^1.0.0" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "espurify": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.1.tgz", - "integrity": "sha512-ZDko6eY/o+D/gHCWyHTU85mKDgYcS4FJj7S+YD6WIInm7GQ6AnOjmcL4+buFV/JOztVLELi/7MmuGU5NHta0Mg==", - "dev": true, - "requires": { - "core-js": "^2.0.0" - } - }, - "esquery": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", - "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", - "dev": true, - "requires": { - "estraverse": "^4.0.0" - } - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "requires": { - "estraverse": "^4.1.0" - } - }, - "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" - }, - "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" - }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "events-to-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", - "dev": true - }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "dev": true, - "requires": { - "fill-range": "^2.1.0" - }, - "dependencies": { - "fill-range": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", - "dev": true, - "requires": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^3.0.0", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" - } - }, - "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", - "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "dependencies": { - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" - }, - "fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "dev": true, - "requires": { - "flat-cache": "^2.0.1" - } - }, - "file-type": { - "version": "10.11.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", - "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", - "dev": true - }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", - "dev": true - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-cache-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" - }, - "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - } - }, - "flatted": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", - "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", - "dev": true - }, - "fn-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", - "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", - "dev": true - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" - }, - "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "requires": { - "map-cache": "^0.2.2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.8.tgz", - "integrity": "sha512-tPvHgPGB7m40CZ68xqFGkKuzN+RnpGmSV+hgeKxhRpbxdqKXUFJGC3yonBOLzQBcJyGpdZFDfCsdOC2KFsXzeA==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.12.1", - "node-pre-gyp": "^0.12.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.3.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^4.1.0", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.12.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "function-name-support": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", - "integrity": "sha1-VdO/qm6v1QWlD5vIH99XVkoLsHE=", - "dev": true - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" - }, - "get-port": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - } - }, - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "^2.0.0" - } - }, - "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", - "dev": true, - "requires": { - "ini": "^1.3.4" - } - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "globby": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", - "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", - "requires": { - "array-union": "^1.0.1", - "dir-glob": "^2.0.0", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - } - }, - "got": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", - "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", - "dev": true, - "requires": { - "create-error-class": "^3.0.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "dev": true - }, - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "has-yarn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", - "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", - "dev": true - }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", - "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==" - }, - "htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz", - "integrity": "sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "hullabaloo-config-manager": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/hullabaloo-config-manager/-/hullabaloo-config-manager-1.1.1.tgz", - "integrity": "sha512-ztKnkZV0TmxnumCDHHgLGNiDnotu4EHCp9YMkznWuo4uTtCyJ+cu+RNcxUeXYKTllpvLFWnbfWry09yzszgg+A==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "es6-error": "^4.0.2", - "graceful-fs": "^4.1.11", - "indent-string": "^3.1.0", - "json5": "^0.5.1", - "lodash.clonedeep": "^4.5.0", - "lodash.clonedeepwith": "^4.5.0", - "lodash.isequal": "^4.5.0", - "lodash.merge": "^4.6.0", - "md5-hex": "^2.0.0", - "package-hash": "^2.0.0", - "pkg-dir": "^2.0.0", - "resolve-from": "^3.0.0", - "safe-buffer": "^5.0.1" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" - }, - "ignore-by-default": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", - "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", - "dev": true - }, - "import-fresh": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", - "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } - } - }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", - "dev": true - }, - "import-local": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", - "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", - "dev": true, - "requires": { - "pkg-dir": "^2.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true - }, - "inquirer": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.3.1.tgz", - "integrity": "sha512-MmL624rfkFt4TG9y/Jvmt8vdmOo836U7Y0Hxr2aFk3RelZEGX4Igk0KabWrcaaZaTv9uzglOqWh1Vly+FAWAXA==", - "dev": true, - "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.11", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - } - } - } - } - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "irregular-plurals": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz", - "integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "is-ci": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", - "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", - "dev": true, - "requires": { - "ci-info": "^1.5.0" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" - } - } - }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", - "dev": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "dev": true, - "requires": { - "is-primitive": "^2.0.0" - } - }, - "is-error": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", - "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", - "dev": true - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-generator-fn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", - "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "is-installed-globally": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", - "dev": true, - "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" - } - }, - "is-npm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "is-observable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", - "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", - "dev": true, - "requires": { - "symbol-observable": "^1.1.0" - } - }, - "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "requires": { - "isobject": "^3.0.1" - } - }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", - "dev": true - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", - "dev": true - }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, - "is-redirect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "dev": true - }, - "is-retry-allowed": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "is-url": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", - "dev": true - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-LXTBICkMARVgo579kWDm8SqfB6nvSDKNqIOBEjmJRnL04JvoMHCYGWaMddQnseJYtkEuEvO/sIcOxPLk9gERug==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.2.0.tgz", - "integrity": "sha512-06IM3xShbNW4NgZv5AP4QH0oHqf1/ivFo8eFys0ZjPXHGldHJQWb3riYOKXqmOqfxXBfxu4B+g/iuhOPZH0RJg==", - "dev": true, - "requires": { - "@babel/generator": "^7.0.0", - "@babel/parser": "^7.0.0", - "@babel/template": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "istanbul-lib-coverage": "^2.0.4", - "semver": "^6.0.0" - } - }, - "js-string-escape": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", - "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "js2xmlparser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", - "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", - "requires": { - "xmlcreate": "^1.0.1" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" - }, - "jsdoc": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", - "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", - "requires": { - "babylon": "7.0.0-beta.19", - "bluebird": "~3.5.0", - "catharsis": "~0.8.9", - "escape-string-regexp": "~1.0.5", - "js2xmlparser": "~3.0.0", - "klaw": "~2.0.0", - "marked": "~0.3.6", - "mkdirp": "~0.5.1", - "requizzle": "~0.2.1", - "strip-json-comments": "~2.0.1", - "taffydb": "2.6.2", - "underscore": "~1.8.3" - } - }, - "jsdoctypeparser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-3.1.0.tgz", - "integrity": "sha512-JNbkKpDFqbYjg+IU3FNo7qjX7Opy7CwjHywT32zgAcz/d4lX6Umn5jOHVETUdnNNgGrMk0nEx1gvP0F4M0hzlQ==", - "dev": true - }, - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "just-extend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", - "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" - }, - "klaw": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", - "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", - "requires": { - "graceful-fs": "^4.1.9" - } - }, - "last-line-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", - "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", - "dev": true, - "requires": { - "through2": "^2.0.0" - } - }, - "latest-version": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", - "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", - "dev": true, - "requires": { - "package-json": "^4.0.0" - } - }, - "lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", - "dev": true - }, - "less": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", - "integrity": "sha1-cc6J7DC3dLNWfyVMZ5WPLywZO94=", - "requires": { - "clean-css": "2.0.x", - "mime": "1.2.x", - "mkdirp": "~0.3.5", - "request": ">=2.12.0", - "source-map": "0.1.x" - }, - "dependencies": { - "mkdirp": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", - "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", - "optional": true - }, - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "optional": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "less-openui5": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", - "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", - "requires": { - "clone": "^2.1.0", - "css": "^2.2.1", - "less": "1.6.3", - "object-assign": "^4.0.1" - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - }, - "lodash.assignin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" - }, - "lodash.bind": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", - "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "lodash.clonedeepwith": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", - "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true - }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" - }, - "lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", - "dev": true - }, - "lodash.filter": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", - "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" - }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" - }, - "lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", - "dev": true - }, - "lodash.foreach": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", - "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" - }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", - "dev": true - }, - "lodash.map": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", - "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" - }, - "lodash.merge": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", - "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==" - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" - }, - "lodash.reduce": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", - "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" - }, - "lodash.reject": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", - "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=" - }, - "lodash.some": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", - "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" - }, - "log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", - "dev": true - }, - "lolex": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.0.1.tgz", - "integrity": "sha512-UHuOBZ5jjsKuzbB/gRNNW8Vg8f00Emgskdq2kvZxgBJCS0aqquAuXai/SkWORlKeZEiNQWZjFZOqIUcH9LqKCw==", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" - } - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "requires": { - "object-visit": "^1.0.0" - } - }, - "marked": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" - }, - "matcher": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", - "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.4" - } - }, - "math-random": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", - "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", - "dev": true - }, - "md5-hex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", - "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "md5-o-matic": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", - "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", - "dev": true - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "mime": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", - "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=", - "optional": true - }, - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" - }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "requires": { - "mime-db": "1.40.0" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", - "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - } - }, - "mixin-deep": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - } - }, - "mock-require": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", - "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", - "requires": { - "get-caller-file": "^1.0.2", - "normalize-path": "^2.1.1" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "multimatch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", - "dev": true, - "requires": { - "array-differ": "^1.0.0", - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "minimatch": "^3.0.0" - } - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "nan": { - "version": "2.13.2", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz", - "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==", - "dev": true, - "optional": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "nise": { - "version": "1.4.10", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.10.tgz", - "integrity": "sha512-sa0RRbj53dovjc7wombHmVli9ZihXbXCQ2uH3TNm03DyvOSIQbxg+pbqDKrk2oxMK1rtLGVlKxcB9rrc6X5YjA==", - "dev": true, - "requires": { - "@sinonjs/formatio": "^3.1.0", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^2.3.2", - "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "lolex": { - "version": "2.7.5", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", - "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", - "dev": true - } - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" - } - } - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "requires": { - "remove-trailing-separator": "^1.0.1" - } - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "requires": { - "boolbase": "~1.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "nyc": { - "version": "13.3.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-13.3.0.tgz", - "integrity": "sha512-P+FwIuro2aFG6B0Esd9ZDWUd51uZrAEoGutqZxzrVmYl3qSfkLgcQpBPBjtDFsUQLFY1dvTQJPOyeqr8S9GF8w==", - "dev": true, - "requires": { - "archy": "^1.0.0", - "arrify": "^1.0.1", - "caching-transform": "^3.0.1", - "convert-source-map": "^1.6.0", - "find-cache-dir": "^2.0.0", - "find-up": "^3.0.0", - "foreground-child": "^1.5.6", - "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.3", - "istanbul-lib-hook": "^2.0.3", - "istanbul-lib-instrument": "^3.1.0", - "istanbul-lib-report": "^2.0.4", - "istanbul-lib-source-maps": "^3.0.2", - "istanbul-reports": "^2.1.1", - "make-dir": "^1.3.0", - "merge-source-map": "^1.1.0", - "resolve-from": "^4.0.0", - "rimraf": "^2.6.3", - "signal-exit": "^3.0.2", - "spawn-wrap": "^1.4.2", - "test-exclude": "^5.1.0", - "uuid": "^3.3.2", - "yargs": "^12.0.5", - "yargs-parser": "^11.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "append-transform": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "default-require-extensions": "^2.0.0" - } - }, - "archy": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "arrify": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "async": { - "version": "2.6.2", - "bundled": true, - "dev": true, - "requires": { - "lodash": "^4.17.11" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "caching-transform": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "hasha": "^3.0.0", - "make-dir": "^1.3.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.3.0" - } - }, - "camelcase": { - "version": "5.0.0", - "bundled": true, - "dev": true - }, - "cliui": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - } - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "commander": { - "version": "2.17.1", - "bundled": true, - "dev": true, - "optional": true - }, - "commondir": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "convert-source-map": { - "version": "1.6.0", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cross-spawn": { - "version": "4.0.2", - "bundled": true, - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "debug": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "decamelize": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "default-require-extensions": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "strip-bom": "^3.0.0" - } - }, - "end-of-stream": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "error-ex": { - "version": "1.3.2", - "bundled": true, - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es6-error": { - "version": "4.1.1", - "bundled": true, - "dev": true - }, - "execa": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "bundled": true, - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - } - } - }, - "find-cache-dir": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "foreground-child": { - "version": "1.5.6", - "bundled": true, - "dev": true, - "requires": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "get-caller-file": { - "version": "1.0.3", - "bundled": true, - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "glob": { - "version": "7.1.3", - "bundled": true, - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "bundled": true, - "dev": true - }, - "handlebars": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "async": "^2.5.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true - } - } - }, - "has-flag": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "hasha": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "is-stream": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "2.7.1", - "bundled": true, - "dev": true - }, - "imurmurhash": { - "version": "0.1.4", - "bundled": true, - "dev": true - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true - }, - "invert-kv": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "bundled": true, - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "isexe": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "istanbul-lib-coverage": { - "version": "2.0.3", - "bundled": true, - "dev": true - }, - "istanbul-lib-hook": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "requires": { - "append-transform": "^1.0.0" - } - }, - "istanbul-lib-report": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "requires": { - "istanbul-lib-coverage": "^2.0.3", - "make-dir": "^1.3.0", - "supports-color": "^6.0.0" - }, - "dependencies": { - "supports-color": { - "version": "6.1.0", - "bundled": true, - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.3", - "make-dir": "^1.3.0", - "rimraf": "^2.6.2", - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true - } - } - }, - "istanbul-reports": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "requires": { - "handlebars": "^4.1.0" - } - }, - "json-parse-better-errors": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "lcid": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "load-json-file": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.11", - "bundled": true, - "dev": true - }, - "lodash.flattendeep": { - "version": "4.4.0", - "bundled": true, - "dev": true - }, - "lru-cache": { - "version": "4.1.5", - "bundled": true, - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "make-dir": { - "version": "1.3.0", - "bundled": true, - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "map-age-cleaner": { - "version": "0.1.3", - "bundled": true, - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, - "mem": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^1.0.0", - "p-is-promise": "^2.0.0" - } - }, - "merge-source-map": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "requires": { - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true - } - } - }, - "mimic-fn": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.10", - "bundled": true, - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true - } - } - }, - "ms": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "nice-try": { - "version": "1.0.5", - "bundled": true, - "dev": true - }, - "normalize-package-data": { - "version": "2.5.0", - "bundled": true, - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "npm-run-path": { - "version": "2.0.2", - "bundled": true, - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "optimist": { - "version": "0.6.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "os-locale": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-defer": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "p-is-promise": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "p-limit": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "package-hash": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^3.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "path-exists": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "path-key": { - "version": "2.0.1", - "bundled": true, - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "bundled": true, - "dev": true - }, - "path-type": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "pseudomap": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "pump": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "read-pkg": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - }, - "release-zalgo": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, - "require-directory": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "require-main-filename": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "resolve": { - "version": "1.10.0", - "bundled": true, - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - }, - "resolve-from": { - "version": "4.0.0", - "bundled": true, - "dev": true - }, - "rimraf": { - "version": "2.6.3", - "bundled": true, - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true - }, - "semver": { - "version": "5.6.0", - "bundled": true, - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true - }, - "spawn-wrap": { - "version": "1.4.2", - "bundled": true, - "dev": true, - "requires": { - "foreground-child": "^1.5.6", - "mkdirp": "^0.5.0", - "os-homedir": "^1.0.1", - "rimraf": "^2.6.2", - "signal-exit": "^3.0.2", - "which": "^1.3.0" - } - }, - "spdx-correct": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "bundled": true, - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.3", - "bundled": true, - "dev": true - }, - "string-width": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "strip-eof": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "test-exclude": { - "version": "5.1.0", - "bundled": true, - "dev": true, - "requires": { - "arrify": "^1.0.1", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^1.0.1" - } - }, - "uglify-js": { - "version": "3.4.9", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "commander": "~2.17.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "uuid": { - "version": "3.3.2", - "bundled": true, - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "which": { - "version": "1.3.1", - "bundled": true, - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "wordwrap": { - "version": "0.0.3", - "bundled": true, - "dev": true - }, - "wrap-ansi": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "write-file-atomic": { - "version": "2.4.2", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "y18n": { - "version": "4.0.0", - "bundled": true, - "dev": true - }, - "yallist": { - "version": "2.1.2", - "bundled": true, - "dev": true - }, - "yargs": { - "version": "12.0.5", - "bundled": true, - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" - } - }, - "yargs-parser": { - "version": "11.1.1", - "bundled": true, - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "requires": { - "isobject": "^3.0.0" - } - }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "dev": true, - "requires": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "requires": { - "isobject": "^3.0.1" - } - }, - "observable-to-promise": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.5.0.tgz", - "integrity": "sha1-yCjw8NxH6fhq+KSXfF1VB2znqR8=", - "dev": true, - "requires": { - "is-observable": "^0.2.0", - "symbol-observable": "^1.0.4" - }, - "dependencies": { - "is-observable": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", - "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", - "dev": true, - "requires": { - "symbol-observable": "^0.2.2" - }, - "dependencies": { - "symbol-observable": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", - "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", - "dev": true - } - } - } - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "open": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/open/-/open-6.2.0.tgz", - "integrity": "sha512-Vxf6HJkwrqmvh9UAID3MnMYXntbTxKLOSfOnO7LJdzPf3NE3KQYFNV0/Lcz2VAndbRFil58XVCyh8tiX11fiYw==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "opn-cli": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.1.0.tgz", - "integrity": "sha512-nVJ9dVb4fEKtmACWxUql+hhQxVWMt7BSRT+6TnB85W3xs5Pgk9sKW3icYeCIwOtOKALBw/6WUCoNmI1+ADfAow==", - "dev": true, - "requires": { - "file-type": "^10.10.0", - "get-stdin": "^6.0.0", - "meow": "^5.0.0", - "open": "^6.1.0", - "temp-write": "^3.4.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - }, - "meow": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", - "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - } - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - } - } - }, - "option-chain": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", - "integrity": "sha1-k41zvU4Xg/lI00AjZEraI2aeMPI=", - "dev": true - }, - "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "wordwrap": "~1.0.0" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "package-hash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-2.0.0.tgz", - "integrity": "sha1-eK4ybIngWk2BO2hgGXevBcANKg0=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "lodash.flattendeep": "^4.4.0", - "md5-hex": "^2.0.0", - "release-zalgo": "^1.0.0" - } - }, - "package-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", - "dev": true, - "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "dev": true, - "requires": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parse-ms": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", - "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" - }, - "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", - "dev": true, - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "requires": { - "pify": "^3.0.0" - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - }, - "pinkie": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", - "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", - "dev": true - }, - "pinkie-promise": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", - "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", - "dev": true, - "requires": { - "pinkie": "^1.0.0" - } - }, - "pkg-conf": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", - "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "load-json-file": "^4.0.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - } - } - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - } - } - }, - "plur": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", - "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", - "dev": true, - "requires": { - "irregular-plurals": "^1.0.0" - } - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true - }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", - "dev": true - }, - "pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" - }, - "pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" - }, - "pretty-ms": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.2.0.tgz", - "integrity": "sha512-ZypexbfVUGTFxb0v+m1bUyy92DHe5SyYlnyY0msyms5zd3RwyvNgyxZZsXXgoyzlxjx5MiqtXUdhUfvQbe0A2Q==", - "dev": true, - "requires": { - "parse-ms": "^1.0.0" - }, - "dependencies": { - "parse-ms": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", - "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", - "dev": true - } - } - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "psl": { - "version": "1.1.31", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", - "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==" - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" - }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", - "dev": true - }, - "random-int": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", - "integrity": "sha1-5qLtNEisnGZGoGV0Q7HBUhWS7Qg=" - }, - "randomatic": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", - "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", - "dev": true, - "requires": { - "is-number": "^4.0.0", - "kind-of": "^6.0.0", - "math-random": "^1.0.1" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - }, - "dependencies": { - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - } - } - }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true, - "requires": { - "is-equal-shallow": "^0.1.3" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", - "dev": true - }, - "regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "registry-auth-token": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", - "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", - "dev": true, - "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", - "dev": true, - "requires": { - "rc": "^1.0.1" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - } - }, - "release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "replacestream": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", - "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", - "requires": { - "escape-string-regexp": "^1.0.3", - "object-assign": "^4.0.1", - "readable-stream": "^2.0.2" - } - }, - "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-precompiled": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", - "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", - "dev": true - }, - "requizzle": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", - "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", - "requires": { - "underscore": "~1.6.0" - }, - "dependencies": { - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" - } - } - }, - "resolve": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.0.tgz", - "integrity": "sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==", - "requires": { - "path-parse": "^1.0.6" - } - }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" - } - }, - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "requires": { - "glob": "^7.1.3" - } - }, - "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } - }, - "rxjs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.1.tgz", - "integrity": "sha512-y0j31WJc83wPu31vS1VlAFW5JGrnGC+j+TtGAa1fRQphy48+fDYiDmX8tjGloToEsMkxnouOg/1IzXGKkJnZMg==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "semver": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.0.0.tgz", - "integrity": "sha512-0UewU+9rFapKFnlbirLi3byoOuhrSsli/z/ihNnvM24vgF+8sNBiI1LZPBSH9wJKUwaUbw+s3hToDLCXkrghrQ==" - }, - "semver-diff": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", - "dev": true, - "requires": { - "semver": "^5.0.3" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "serialize-error": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", - "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "sinon": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.3.2.tgz", - "integrity": "sha512-thErC1z64BeyGiPvF8aoSg0LEnptSaWE7YhdWWbWXgelOyThent7uKOnnEh9zBxDbKixtr5dEko+ws1sZMuFMA==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.4.0", - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.3.1", - "diff": "^3.5.0", - "lolex": "^4.0.1", - "nise": "^1.4.10", - "supports-color": "^5.5.0" - } - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" - }, - "slice-ansi": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - } - } - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - }, - "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", - "requires": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-support": { - "version": "0.5.12", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", - "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" - }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==" - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", - "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==" - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "stack-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", - "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", - "dev": true - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - }, - "strip-bom-buf": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", - "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", - "dev": true, - "requires": { - "is-utf8": "^0.2.1" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "supertap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", - "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "indent-string": "^3.2.0", - "js-yaml": "^3.10.0", - "serialize-error": "^2.1.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - } - } - }, - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "dev": true - }, - "table": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/table/-/table-5.2.3.tgz", - "integrity": "sha512-N2RsDAMvDLvYwFcwbPyF3VmVSSkuF+G1e+8inhBLtHpvwXGw4QRPEZhihQNeEN0i1up6/f6ObCJXNdlRG3YVyQ==", - "dev": true, - "requires": { - "ajv": "^6.9.1", - "lodash": "^4.17.11", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - } - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "taffydb": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" - }, - "tap-nyan": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", - "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "duplexer2": "^0.1.4", - "supports-color": "^3.1.2", - "tap-parser": "^3.0.3" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "dependencies": { - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", - "dev": true - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "dev": true, - "requires": { - "has-flag": "^1.0.0" - } - } - } - }, - "tap-parser": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", - "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", - "dev": true, - "requires": { - "events-to-array": "^1.0.1", - "js-yaml": "^3.2.7", - "readable-stream": "^2" - } - }, - "temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", - "dev": true - }, - "temp-write": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz", - "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "is-stream": "^1.1.0", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^3.0.1" - }, - "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dev": true, - "requires": { - "execa": "^0.7.0" - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "time-zone": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", - "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", - "dev": true - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "dev": true - }, - "tmp": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", - "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", - "requires": { - "rimraf": "^2.6.3" - } - }, - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - } - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, - "trim-off-newlines": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", - "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", - "dev": true - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, - "tslib": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", - "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", - "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, - "uid2": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", - "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", - "dev": true - }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" - }, - "underscore-contrib": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", - "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", - "requires": { - "underscore": "1.6.0" - }, - "dependencies": { - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" - } - } - }, - "union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } - } - }, - "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", - "dev": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "unique-temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", - "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", - "dev": true, - "requires": { - "mkdirp": "^0.5.1", - "os-tmpdir": "^1.0.1", - "uid2": "0.0.3" - } - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" - } - } - }, - "unzip-response": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", - "dev": true - }, - "update-notifier": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", - "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", - "dev": true, - "requires": { - "boxen": "^1.2.1", - "chalk": "^2.0.1", - "configstore": "^3.0.0", - "import-lazy": "^2.1.0", - "is-ci": "^1.0.10", - "is-installed-globally": "^0.1.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "requires": { - "punycode": "^2.1.0" - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" - }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "dev": true, - "requires": { - "prepend-http": "^1.0.1" - } - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "well-known-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-1.0.0.tgz", - "integrity": "sha1-c8eK6Bp3Jqj6WY4ogIAcixYiVRg=", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "widest-line": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", - "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", - "dev": true, - "requires": { - "string-width": "^2.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", - "dev": true, - "requires": { - "mkdirp": "^0.5.1" - } - }, - "write-file-atomic": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.2.tgz", - "integrity": "sha512-s0b6vB3xIVRLWywa6X9TOMA7k9zio0TMOsl9ZnDkliA/cfJlpHXAscj0gbHVJiTdIuAYpIyqS5GW91fqm6gG5g==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "write-json-file": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", - "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", - "dev": true, - "requires": { - "detect-indent": "^5.0.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "sort-keys": "^2.0.0", - "write-file-atomic": "^2.0.0" - }, - "dependencies": { - "detect-indent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", - "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", - "dev": true - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "write-pkg": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.2.0.tgz", - "integrity": "sha512-tX2ifZ0YqEFOF1wjRW2Pk93NLsj02+n1UP5RvO6rCs0K6R2g1padvf006cY74PQJKMGS2r42NK7FD0dG6Y6paw==", - "dev": true, - "requires": { - "sort-keys": "^2.0.0", - "write-json-file": "^2.2.0" - } - }, - "xdg-basedir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", - "dev": true - }, - "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - } - }, - "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" - }, - "xmlcreate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", - "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - } - } - }, - "yazl": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", - "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", - "requires": { - "buffer-crc32": "~0.2.3" - } - } - } + "name": "@ui5/project", + "version": "1.0.2", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@ava/babel-plugin-throws-helper": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-2.0.0.tgz", + "integrity": "sha1-L8H+PCEacQcaTsp7j3r1hCzRrnw=", + "dev": true + }, + "@ava/babel-preset-stage-4": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", + "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", + "dev": true, + "requires": { + "babel-plugin-check-es2015-constants": "^6.8.0", + "babel-plugin-syntax-trailing-function-commas": "^6.20.0", + "babel-plugin-transform-async-to-generator": "^6.16.0", + "babel-plugin-transform-es2015-destructuring": "^6.19.0", + "babel-plugin-transform-es2015-function-name": "^6.9.0", + "babel-plugin-transform-es2015-modules-commonjs": "^6.18.0", + "babel-plugin-transform-es2015-parameters": "^6.21.0", + "babel-plugin-transform-es2015-spread": "^6.8.0", + "babel-plugin-transform-es2015-sticky-regex": "^6.8.0", + "babel-plugin-transform-es2015-unicode-regex": "^6.11.0", + "babel-plugin-transform-exponentiation-operator": "^6.8.0", + "package-hash": "^1.2.0" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "package-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", + "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", + "dev": true, + "requires": { + "md5-hex": "^1.3.0" + } + } + } + }, + "@ava/babel-preset-transform-test-files": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-3.0.0.tgz", + "integrity": "sha1-ze0RlqjY2TgaUJJAq5LpGl7Aafc=", + "dev": true, + "requires": { + "@ava/babel-plugin-throws-helper": "^2.0.0", + "babel-plugin-espower": "^2.3.2" + } + }, + "@ava/write-file-atomic": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ava/write-file-atomic/-/write-file-atomic-2.2.0.tgz", + "integrity": "sha512-BTNB3nGbEfJT+69wuqXFr/bQH7Vr7ihx2xGOMNqPgDGhwspoZhiWumDDZNjBy7AScmqS5CELIOGtPVXESyrnDA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + }, + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/generator": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.0.tgz", + "integrity": "sha512-/v5I+a1jhGSKLgZDcmAUZ4K/VePi43eRkUs3yePW1HB1iANOD5tqJXwGSG4BZhSksP8J9ejSlwGeTiiOFZOrXQ==", + "dev": true, + "requires": { + "@babel/types": "^7.4.0", + "jsesc": "^2.5.1", + "lodash": "^4.17.11", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.0.tgz", + "integrity": "sha512-7Cuc6JZiYShaZnybDmfwhY4UYHzI6rlqhWjaIqbsJGsIqPimEYy5uh3akSRLMg65LSdSEnJ8a8/bWQN6u2oMGw==", + "dev": true, + "requires": { + "@babel/types": "^7.4.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + } + } + }, + "@babel/parser": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.3.tgz", + "integrity": "sha512-gxpEUhTS1sGA63EGQGuA+WESPR/6tz6ng7tSHFCmaTJK/cGK8y37cBTspX+U2xCAue2IQVvF6Z0oigmjwD8YGQ==", + "dev": true + }, + "@babel/template": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.0.tgz", + "integrity": "sha512-SOWwxxClTTh5NdbbYZ0BmaBVzxzTh2tO/TeLTbF6MO6EzVhHTnff8CdBXx3mEtazFBoysmEM6GU/wF+SuSx4Fw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.4.0", + "@babel/types": "^7.4.0" + } + }, + "@babel/traverse": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.3.tgz", + "integrity": "sha512-HmA01qrtaCwwJWpSKpA948cBvU5BrmviAief/b3AVw936DtcdsTexlbyzNuDnthwhOQ37xshn7hvQaEQk7ISYQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.4.0", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/types": "^7.4.0", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.11" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "globals": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", + "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.0.tgz", + "integrity": "sha512-aPvkXyU2SPOnztlgo8n9cEiXW755mgyvueUPcpStqdzoSPm0fjO0vQBjLkt3JKJW7ufikfcnMTTPsN1xaTsBPA==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.11", + "to-fast-properties": "^2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + } + } + }, + "@concordance/react": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", + "integrity": "sha512-htrsRaQX8Iixlsek8zQU7tE8wcsTQJ5UhZkSPEA8slCDAisKpC/2VgU/ucPn32M5/LjGGXRaUEKvEw1Wiuu4zQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1" + } + }, + "@ladjs/time-require": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@ladjs/time-require/-/time-require-0.1.4.tgz", + "integrity": "sha512-weIbJqTMfQ4r1YX85u54DKfjLZs2jwn1XZ6tIOP/pFgMwhIN5BAtaCp/1wn9DzyLsDR9tW0R2NIePcVJ45ivQQ==", + "dev": true, + "requires": { + "chalk": "^0.4.0", + "date-time": "^0.1.1", + "pretty-ms": "^0.2.1", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "dev": true + }, + "chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "dev": true, + "requires": { + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" + } + }, + "pretty-ms": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", + "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", + "dev": true, + "requires": { + "parse-ms": "^0.1.0" + } + }, + "strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "dev": true + } + } + }, + "@sinonjs/commons": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz", + "integrity": "sha512-9jHK3YF/8HtJ9wCAbG+j8cD0i0+ATS9A7gXFqS36TblLPNy6rEEc+SB0imo91eCboGaBYGV/MT1/br/J+EE7Tw==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/formatio": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz", + "integrity": "sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" + } + }, + "@sinonjs/samsam": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.1.tgz", + "integrity": "sha512-wRSfmyd81swH0hA1bxJZJ57xr22kC07a1N4zuIL47yTS04bDk6AoCkczcqHEjcRPmJ+FruGJ9WBQiJwMtIElFw==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.0.2", + "array-from": "^2.1.1", + "lodash": "^4.17.11" + } + }, + "@sinonjs/text-encoding": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", + "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "dev": true + }, + "@ui5/builder": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.1.0.tgz", + "integrity": "sha512-DnuPmDQdmGddQEb18Jc254ztgLGVEPpSNMq0QGxPQkDIanEEZU+OjZs0fyz9G1WydxMlf9DL9sQF8CKbzT5EYQ==", + "requires": { + "@ui5/fs": "^1.0.2", + "@ui5/logger": "^1.0.1", + "cheerio": "^0.22.0", + "escodegen": "^1.11.1", + "escope": "^3.6.0", + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "globby": "^7.1.1", + "graceful-fs": "^4.1.15", + "jsdoc": "^3.5.5", + "less-openui5": "^0.6.0", + "make-dir": "^2.1.0", + "pretty-data": "^0.40.0", + "pretty-hrtime": "^1.0.3", + "replacestream": "^4.0.3", + "semver": "^6.0.0", + "tmp": "0.1.0", + "uglify-es": "^3.2.2", + "xml2js": "^0.4.17", + "yazl": "^2.5.1" + } + }, + "@ui5/fs": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.2.tgz", + "integrity": "sha512-8Fc4iqpo/sm2KMGV0MiesqWPoCVDf9OnWVWqdoJ0c7GwAh6olt2EDPtnjtQ0tLMW2Uovdh/Nz+S1qecY0Yb1GA==", + "requires": { + "@ui5/logger": "^1.0.1", + "clone": "^2.1.0", + "dir-glob": "2.0.0", + "globby": "^7.1.1", + "graceful-fs": "^4.1.15", + "make-dir": "^2.1.0", + "micromatch": "^3.1.4", + "minimatch": "^3.0.3", + "mock-require": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^1.0.0" + } + }, + "@ui5/logger": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", + "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", + "requires": { + "npmlog": "^4.1.2" + } + }, + "acorn": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", + "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", + "dev": true + }, + "acorn-jsx": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", + "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", + "dev": true + }, + "ajv": { + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "optional": true + }, + "ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "dev": true, + "requires": { + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "requires": { + "micromatch": "^2.1.5", + "normalize-path": "^2.0.0" + }, + "dependencies": { + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1" + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "^0.1.0" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" + } + } + } + }, + "append-transform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", + "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "dev": true, + "requires": { + "default-require-extensions": "^2.0.0" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "arr-exclude": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", + "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + }, + "array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + }, + "auto-bind": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.2.1.tgz", + "integrity": "sha512-/W9yj1yKmBLwpexwAujeD9YHwYmRuWFGV8HWE7smQab797VeHa4/cnE2NFeDhA+E+5e/OGBI8763EhLjfZ/MXA==", + "dev": true + }, + "ava": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-0.25.0.tgz", + "integrity": "sha512-4lGNJCf6xL8SvsKVEKxEE46se7JAUIAZoKHw9itTQuwcsydhpAMkBs5gOOiWiwt0JKNIuXWc2/r4r8ZdcNrBEw==", + "dev": true, + "requires": { + "@ava/babel-preset-stage-4": "^1.1.0", + "@ava/babel-preset-transform-test-files": "^3.0.0", + "@ava/write-file-atomic": "^2.2.0", + "@concordance/react": "^1.0.0", + "@ladjs/time-require": "^0.1.4", + "ansi-escapes": "^3.0.0", + "ansi-styles": "^3.1.0", + "arr-flatten": "^1.0.1", + "array-union": "^1.0.1", + "array-uniq": "^1.0.2", + "arrify": "^1.0.0", + "auto-bind": "^1.1.0", + "ava-init": "^0.2.0", + "babel-core": "^6.17.0", + "babel-generator": "^6.26.0", + "babel-plugin-syntax-object-rest-spread": "^6.13.0", + "bluebird": "^3.0.0", + "caching-transform": "^1.0.0", + "chalk": "^2.0.1", + "chokidar": "^1.4.2", + "clean-stack": "^1.1.1", + "clean-yaml-object": "^0.1.0", + "cli-cursor": "^2.1.0", + "cli-spinners": "^1.0.0", + "cli-truncate": "^1.0.0", + "co-with-promise": "^4.6.0", + "code-excerpt": "^2.1.1", + "common-path-prefix": "^1.0.0", + "concordance": "^3.0.0", + "convert-source-map": "^1.5.1", + "core-assert": "^0.2.0", + "currently-unhandled": "^0.4.1", + "debug": "^3.0.1", + "dot-prop": "^4.1.0", + "empower-core": "^0.6.1", + "equal-length": "^1.0.0", + "figures": "^2.0.0", + "find-cache-dir": "^1.0.0", + "fn-name": "^2.0.0", + "get-port": "^3.0.0", + "globby": "^6.0.0", + "has-flag": "^2.0.0", + "hullabaloo-config-manager": "^1.1.0", + "ignore-by-default": "^1.0.0", + "import-local": "^0.1.1", + "indent-string": "^3.0.0", + "is-ci": "^1.0.7", + "is-generator-fn": "^1.0.0", + "is-obj": "^1.0.0", + "is-observable": "^1.0.0", + "is-promise": "^2.1.0", + "last-line-stream": "^1.0.0", + "lodash.clonedeepwith": "^4.5.0", + "lodash.debounce": "^4.0.3", + "lodash.difference": "^4.3.0", + "lodash.flatten": "^4.2.0", + "loud-rejection": "^1.2.0", + "make-dir": "^1.0.0", + "matcher": "^1.0.0", + "md5-hex": "^2.0.0", + "meow": "^3.7.0", + "ms": "^2.0.0", + "multimatch": "^2.1.0", + "observable-to-promise": "^0.5.0", + "option-chain": "^1.0.0", + "package-hash": "^2.0.0", + "pkg-conf": "^2.0.0", + "plur": "^2.0.0", + "pretty-ms": "^3.0.0", + "require-precompiled": "^0.1.0", + "resolve-cwd": "^2.0.0", + "safe-buffer": "^5.1.1", + "semver": "^5.4.1", + "slash": "^1.0.0", + "source-map-support": "^0.5.0", + "stack-utils": "^1.0.1", + "strip-ansi": "^4.0.0", + "strip-bom-buf": "^1.0.0", + "supertap": "^1.0.0", + "supports-color": "^5.0.0", + "trim-off-newlines": "^1.0.1", + "unique-temp-dir": "^1.0.0", + "update-notifier": "^2.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + }, + "dependencies": { + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "ava-init": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", + "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", + "dev": true, + "requires": { + "arr-exclude": "^1.0.0", + "execa": "^0.7.0", + "has-yarn": "^1.0.0", + "read-pkg-up": "^2.0.0", + "write-pkg": "^3.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + } + } + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "requires": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + } + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true, + "requires": { + "babel-helper-explode-assignable-expression": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-espower": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.4.0.tgz", + "integrity": "sha512-/+SRpy7pKgTI28oEHfn1wkuM5QFAdRq8WNsOOih1dVrdV6A/WbNbRZyl0eX5eyDgtb0lOE27PeDFuCX2j8OxVg==", + "dev": true, + "requires": { + "babel-generator": "^6.1.0", + "babylon": "^6.1.0", + "call-matcher": "^1.0.0", + "core-js": "^2.0.0", + "espower-location-detector": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.1.1" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", + "dev": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.2", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", + "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", + "dev": true, + "requires": { + "babel-plugin-transform-strict-mode": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-types": "^6.26.0" + } + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "dev": true, + "requires": { + "babel-helper-call-delegate": "^6.24.1", + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "dev": true, + "requires": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "dev": true, + "requires": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "regexpu-core": "^2.0.0" + } + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", + "babel-plugin-syntax-exponentiation-operator": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "requires": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + }, + "dependencies": { + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "^0.5.6" + } + } + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "babylon": { + "version": "7.0.0-beta.19", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", + "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "bluebird": { + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.4.tgz", + "integrity": "sha512-FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw==" + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dev": true, + "requires": { + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "buf-compare": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", + "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", + "dev": true + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "caching-transform": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", + "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", + "dev": true, + "requires": { + "md5-hex": "^1.2.0", + "mkdirp": "^0.5.1", + "write-file-atomic": "^1.1.4" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "write-file-atomic": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", + "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + } + } + }, + "call-matcher": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.1.0.tgz", + "integrity": "sha512-IoQLeNwwf9KTNbtSA7aEBb1yfDbdnzwjCetjkC8io5oGeOmK2CBNdg0xr+tadRYKO0p7uQyZzvon0kXlZbvGrw==", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "deep-equal": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.0.0" + } + }, + "call-signature": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", + "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", + "dev": true + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + } + }, + "capture-stack-trace": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", + "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "catharsis": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", + "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", + "requires": { + "underscore-contrib": "~0.3.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + } + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true, + "requires": { + "anymatch": "^1.3.0", + "async-each": "^1.0.0", + "fsevents": "^1.0.0", + "glob-parent": "^2.0.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^2.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0" + } + }, + "ci-info": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", + "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-css": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", + "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=", + "optional": true, + "requires": { + "commander": "2.0.x" + } + }, + "clean-stack": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", + "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", + "dev": true + }, + "clean-yaml-object": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", + "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", + "dev": true + }, + "cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-spinners": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", + "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", + "dev": true + }, + "cli-truncate": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", + "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", + "dev": true, + "requires": { + "slice-ansi": "^1.0.0", + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" + }, + "co-with-promise": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", + "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", + "dev": true, + "requires": { + "pinkie-promise": "^1.0.0" + } + }, + "code-excerpt": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", + "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", + "dev": true, + "requires": { + "convert-to-spaces": "^1.0.1" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "combined-stream": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", + "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", + "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", + "optional": true + }, + "comment-parser": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.4.tgz", + "integrity": "sha512-0h7W6Y1Kb6zKQMJqdX41C5qf9ITCVIsD2qP2RaqDF3GFkXFrmuAuv5zUOuo19YzyC9scjBNpqzuaRQ2Sy5pxMQ==", + "dev": true + }, + "common-path-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", + "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concordance": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", + "integrity": "sha512-CZBzJ3/l5QJjlZM20WY7+5GP5pMTw+1UEbThcpMw8/rojsi5sBCiD8ZbBLtD+jYpRGAkwuKuqk108c154V9eyQ==", + "dev": true, + "requires": { + "date-time": "^2.1.0", + "esutils": "^2.0.2", + "fast-diff": "^1.1.1", + "function-name-support": "^0.2.0", + "js-string-escape": "^1.0.1", + "lodash.clonedeep": "^4.5.0", + "lodash.flattendeep": "^4.4.0", + "lodash.merge": "^4.6.0", + "md5-hex": "^2.0.0", + "semver": "^5.3.0", + "well-known-symbols": "^1.0.0" + }, + "dependencies": { + "date-time": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", + "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", + "dev": true, + "requires": { + "time-zone": "^1.0.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "configstore": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", + "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "convert-source-map": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", + "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "convert-to-spaces": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", + "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, + "core-assert": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", + "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", + "dev": true, + "requires": { + "buf-compare": "^1.0.0", + "is-error": "^2.2.0" + } + }, + "core-js": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz", + "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "coveralls": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.3.tgz", + "integrity": "sha512-viNfeGlda2zJr8Gj1zqXpDMRjw9uM54p7wzZdvLRyOgnAfCe974Dq4veZkjJdxQXbmdppu6flEajFYseHYaUhg==", + "dev": true, + "requires": { + "growl": "~> 1.10.0", + "js-yaml": "^3.11.0", + "lcov-parse": "^0.0.10", + "log-driver": "^1.2.7", + "minimist": "^1.2.0", + "request": "^2.86.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "cp-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", + "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "make-dir": "^2.0.0", + "nested-error-stacks": "^2.0.0", + "pify": "^4.0.1", + "safe-buffer": "^5.0.1" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + } + } + }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "dev": true, + "requires": { + "capture-stack-trace": "^1.0.0" + } + }, + "cross-env": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", + "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.5", + "is-windows": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true + }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "requires": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "requires": { + "es5-ext": "^0.10.9" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-time": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", + "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + } + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + }, + "default-require-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", + "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "dev": true, + "requires": { + "strip-bom": "^3.0.0" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "dir-glob": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", + "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "requires": { + "arrify": "^1.0.1", + "path-type": "^3.0.0" + } + }, + "docdash": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.1.0.tgz", + "integrity": "sha512-sgcessH25PU6CIoJGeOjDCv9CLi6Z6TLwc553s/O+DKCnIRXT58e4CG3WsgI8Zea5ZQcjsfa8u4IwKqR2TKTxQ==", + "dev": true + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "requires": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dot-prop": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", + "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "empower-core": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", + "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", + "dev": true, + "requires": { + "call-signature": "0.0.2", + "core-js": "^2.0.0" + } + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "equal-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", + "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", + "dev": true + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es5-ext": { + "version": "0.10.49", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.49.tgz", + "integrity": "sha512-3NMEhi57E31qdzmYp2jwRArIUsj1HI/RxbQ4bgnSB+AIKIxsAmTiK83bYMifIcpWvEc3P1X30DhUKOqEtF/kvg==", + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "^1.0.0" + } + }, + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "es6-weak-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", + "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "requires": { + "d": "1", + "es5-ext": "^0.10.14", + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "escodegen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", + "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true + } + } + }, + "escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "requires": { + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", + "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.9.1", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^4.0.3", + "eslint-utils": "^1.3.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^5.0.1", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.7.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^6.2.2", + "js-yaml": "^3.13.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.11", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^5.5.1", + "strip-ansi": "^4.0.0", + "strip-json-comments": "^2.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "globals": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", + "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "dev": true + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "eslint-config-google": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.12.0.tgz", + "integrity": "sha512-SHDM3nIRCJBACjf8c/H6FvCwRmKbphESNl3gJFBNbw4KYDLCONB3ABYLXDGF+iaVP9XSTND/Q5/PuGoFkp4xbg==", + "dev": true + }, + "eslint-plugin-jsdoc": { + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.3.tgz", + "integrity": "sha512-lKOaphUUzv0qKJrAdEwQGEWcNN2Foae5W111u1ASKQeliyJkKXCVxia0dakATuI/s2ojr6Q3FVzWwT6uE1icBg==", + "dev": true, + "requires": { + "comment-parser": "^0.5.4", + "jsdoctypeparser": "3.1.0", + "lodash": "^4.17.11" + } + }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", + "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", + "dev": true + }, + "eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", + "dev": true + }, + "espower-location-detector": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", + "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", + "dev": true, + "requires": { + "is-url": "^1.2.1", + "path-is-absolute": "^1.0.0", + "source-map": "^0.5.0", + "xtend": "^4.0.0" + } + }, + "espree": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", + "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", + "dev": true, + "requires": { + "acorn": "^6.0.7", + "acorn-jsx": "^5.0.0", + "eslint-visitor-keys": "^1.0.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "espurify": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.1.tgz", + "integrity": "sha512-ZDko6eY/o+D/gHCWyHTU85mKDgYcS4FJj7S+YD6WIInm7GQ6AnOjmcL4+buFV/JOztVLELi/7MmuGU5NHta0Mg==", + "dev": true, + "requires": { + "core-js": "^2.0.0" + } + }, + "esquery": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "dev": true, + "requires": { + "estraverse": "^4.0.0" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "events-to-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", + "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", + "dev": true + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "requires": { + "fill-range": "^2.1.0" + }, + "dependencies": { + "fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "requires": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + } + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "external-editor": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", + "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "dependencies": { + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" + }, + "fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "requires": { + "flat-cache": "^2.0.1" + } + }, + "file-type": { + "version": "10.11.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", + "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", + "dev": true + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "requires": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + } + }, + "flatted": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", + "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", + "dev": true + }, + "fn-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", + "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", + "dev": true + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "foreground-child": { + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", + "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", + "dev": true, + "requires": { + "cross-spawn": "^4", + "signal-exit": "^3.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", + "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + } + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.8.tgz", + "integrity": "sha512-tPvHgPGB7m40CZ68xqFGkKuzN+RnpGmSV+hgeKxhRpbxdqKXUFJGC3yonBOLzQBcJyGpdZFDfCsdOC2KFsXzeA==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true, + "optional": true + }, + "minipass": { + "version": "2.3.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.3.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^4.1.0", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.12.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.7.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "yallist": { + "version": "3.0.3", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "function-name-support": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", + "integrity": "sha1-VdO/qm6v1QWlD5vIH99XVkoLsHE=", + "dev": true + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + }, + "get-port": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "^2.0.0" + } + }, + "global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "dev": true, + "requires": { + "ini": "^1.3.4" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "globby": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", + "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "requires": { + "array-union": "^1.0.1", + "dir-glob": "^2.0.0", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + } + }, + "got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "dev": true, + "requires": { + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "handlebars": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", + "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", + "dev": true, + "requires": { + "neo-async": "^2.6.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "has-yarn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", + "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", + "dev": true + }, + "hasha": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", + "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", + "dev": true, + "requires": { + "is-stream": "^1.0.1" + } + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + } + }, + "hosted-git-info": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==" + }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz", + "integrity": "sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "hullabaloo-config-manager": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/hullabaloo-config-manager/-/hullabaloo-config-manager-1.1.1.tgz", + "integrity": "sha512-ztKnkZV0TmxnumCDHHgLGNiDnotu4EHCp9YMkznWuo4uTtCyJ+cu+RNcxUeXYKTllpvLFWnbfWry09yzszgg+A==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "es6-error": "^4.0.2", + "graceful-fs": "^4.1.11", + "indent-string": "^3.1.0", + "json5": "^0.5.1", + "lodash.clonedeep": "^4.5.0", + "lodash.clonedeepwith": "^4.5.0", + "lodash.isequal": "^4.5.0", + "lodash.merge": "^4.6.0", + "md5-hex": "^2.0.0", + "package-hash": "^2.0.0", + "pkg-dir": "^2.0.0", + "resolve-from": "^3.0.0", + "safe-buffer": "^5.0.1" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" + }, + "ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", + "dev": true + }, + "import-fresh": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", + "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + } + } + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, + "import-local": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", + "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", + "dev": true, + "requires": { + "pkg-dir": "^2.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "inquirer": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.3.1.tgz", + "integrity": "sha512-MmL624rfkFt4TG9y/Jvmt8vdmOo836U7Y0Hxr2aFk3RelZEGX4Igk0KabWrcaaZaTv9uzglOqWh1Vly+FAWAXA==", + "dev": true, + "requires": { + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^2.0.0", + "lodash": "^4.17.11", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + } + } + } + } + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "irregular-plurals": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz", + "integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-ci": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", + "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", + "dev": true, + "requires": { + "ci-info": "^1.5.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "requires": { + "is-primitive": "^2.0.0" + } + }, + "is-error": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", + "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-generator-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", + "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "is-installed-globally": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", + "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "dev": true, + "requires": { + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" + } + }, + "is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-observable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", + "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", + "dev": true, + "requires": { + "symbol-observable": "^1.1.0" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "^3.0.1" + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "dev": true + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-LXTBICkMARVgo579kWDm8SqfB6nvSDKNqIOBEjmJRnL04JvoMHCYGWaMddQnseJYtkEuEvO/sIcOxPLk9gERug==", + "dev": true + }, + "istanbul-lib-hook": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.6.tgz", + "integrity": "sha512-829DKONApZ7UCiPXcOYWSgkFXa4+vNYoNOt3F+4uDJLKL1OotAoVwvThoEj1i8jmOj7odbYcR3rnaHu+QroaXg==", + "dev": true, + "requires": { + "append-transform": "^1.0.0" + } + }, + "istanbul-lib-instrument": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.2.0.tgz", + "integrity": "sha512-06IM3xShbNW4NgZv5AP4QH0oHqf1/ivFo8eFys0ZjPXHGldHJQWb3riYOKXqmOqfxXBfxu4B+g/iuhOPZH0RJg==", + "dev": true, + "requires": { + "@babel/generator": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "istanbul-lib-coverage": "^2.0.4", + "semver": "^6.0.0" + } + }, + "istanbul-lib-report": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.7.tgz", + "integrity": "sha512-wLH6beJBFbRBLiTlMOBxmb85cnVM1Vyl36N48e4e/aTKSM3WbOx7zbVIH1SQ537fhhsPbX0/C5JB4qsmyRXXyA==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^2.0.4", + "make-dir": "^2.1.0", + "supports-color": "^6.0.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.5.tgz", + "integrity": "sha512-eDhZ7r6r1d1zQPVZehLc3D0K14vRba/eBYkz3rw16DLOrrTzve9RmnkcwrrkWVgO1FL3EK5knujVe5S8QHE9xw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.4", + "make-dir": "^2.1.0", + "rimraf": "^2.6.2", + "source-map": "^0.6.1" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "istanbul-reports": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.3.tgz", + "integrity": "sha512-T6EbPuc8Cb620LWAYyZ4D8SSn06dY9i1+IgUX2lTH8gbwflMc9Obd33zHTyNX653ybjpamAHS9toKS3E6cGhTw==", + "dev": true, + "requires": { + "handlebars": "^4.1.0" + } + }, + "js-string-escape": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", + "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", + "dev": true + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "js2xmlparser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", + "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", + "requires": { + "xmlcreate": "^1.0.1" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "jsdoc": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", + "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", + "requires": { + "babylon": "7.0.0-beta.19", + "bluebird": "~3.5.0", + "catharsis": "~0.8.9", + "escape-string-regexp": "~1.0.5", + "js2xmlparser": "~3.0.0", + "klaw": "~2.0.0", + "marked": "~0.3.6", + "mkdirp": "~0.5.1", + "requizzle": "~0.2.1", + "strip-json-comments": "~2.0.1", + "taffydb": "2.6.2", + "underscore": "~1.8.3" + } + }, + "jsdoctypeparser": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-3.1.0.tgz", + "integrity": "sha512-JNbkKpDFqbYjg+IU3FNo7qjX7Opy7CwjHywT32zgAcz/d4lX6Umn5jOHVETUdnNNgGrMk0nEx1gvP0F4M0hzlQ==", + "dev": true + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "just-extend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", + "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "klaw": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", + "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", + "requires": { + "graceful-fs": "^4.1.9" + } + }, + "last-line-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", + "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", + "dev": true, + "requires": { + "through2": "^2.0.0" + } + }, + "latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "dev": true, + "requires": { + "package-json": "^4.0.0" + } + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "lcov-parse": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", + "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", + "dev": true + }, + "less": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", + "integrity": "sha1-cc6J7DC3dLNWfyVMZ5WPLywZO94=", + "requires": { + "clean-css": "2.0.x", + "mime": "1.2.x", + "mkdirp": "~0.3.5", + "request": ">=2.12.0", + "source-map": "0.1.x" + }, + "dependencies": { + "mkdirp": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", + "optional": true + }, + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "less-openui5": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", + "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", + "requires": { + "clone": "^2.1.0", + "css": "^2.2.1", + "less": "1.6.3", + "object-assign": "^4.0.1" + } + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" + }, + "lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.clonedeepwith": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", + "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + }, + "lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", + "dev": true + }, + "lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" + }, + "lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "dev": true + }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" + }, + "lodash.merge": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", + "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==" + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" + }, + "lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" + }, + "lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=" + }, + "lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" + }, + "log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "dev": true + }, + "lolex": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.0.1.tgz", + "integrity": "sha512-UHuOBZ5jjsKuzbB/gRNNW8Vg8f00Emgskdq2kvZxgBJCS0aqquAuXai/SkWORlKeZEiNQWZjFZOqIUcH9LqKCw==", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + } + } + }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "^1.0.0" + } + }, + "marked": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" + }, + "matcher": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", + "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.4" + } + }, + "math-random": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", + "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", + "dev": true + }, + "md5-hex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", + "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "md5-o-matic": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", + "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", + "dev": true + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + }, + "dependencies": { + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + } + } + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + } + } + }, + "merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", + "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", + "dev": true, + "requires": { + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", + "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=", + "optional": true + }, + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "requires": { + "mime-db": "1.40.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + }, + "minimist-options": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", + "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + } + }, + "mock-require": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", + "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", + "requires": { + "get-caller-file": "^1.0.2", + "normalize-path": "^2.1.1" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "multimatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", + "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "dev": true, + "requires": { + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" + } + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "nan": { + "version": "2.13.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz", + "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "neo-async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz", + "integrity": "sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==", + "dev": true + }, + "nested-error-stacks": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz", + "integrity": "sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug==", + "dev": true + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "nise": { + "version": "1.4.10", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.10.tgz", + "integrity": "sha512-sa0RRbj53dovjc7wombHmVli9ZihXbXCQ2uH3TNm03DyvOSIQbxg+pbqDKrk2oxMK1rtLGVlKxcB9rrc6X5YjA==", + "dev": true, + "requires": { + "@sinonjs/formatio": "^3.1.0", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "lolex": "^2.3.2", + "path-to-regexp": "^1.7.0" + }, + "dependencies": { + "lolex": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", + "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", + "dev": true + } + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + } + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "requires": { + "boolbase": "~1.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "nyc": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.0.0.tgz", + "integrity": "sha512-R1zC6UZak6pzn5BZQorkSH5GdOGafrwyeja+eimS5Tu+KJ/hCgBc8qA1QWSzxQmT2FDl2lbpqPw7tBDbSvhAHg==", + "dev": true, + "requires": { + "archy": "^1.0.0", + "caching-transform": "^3.0.2", + "convert-source-map": "^1.6.0", + "cp-file": "^6.2.0", + "find-cache-dir": "^2.1.0", + "find-up": "^3.0.0", + "foreground-child": "^1.5.6", + "glob": "^7.1.3", + "istanbul-lib-coverage": "^2.0.4", + "istanbul-lib-hook": "^2.0.6", + "istanbul-lib-instrument": "^3.2.0", + "istanbul-lib-report": "^2.0.7", + "istanbul-lib-source-maps": "^3.0.5", + "istanbul-reports": "^2.2.2", + "make-dir": "^2.1.0", + "merge-source-map": "^1.1.0", + "resolve-from": "^4.0.0", + "rimraf": "^2.6.3", + "signal-exit": "^3.0.2", + "spawn-wrap": "^1.4.2", + "test-exclude": "^5.2.2", + "uuid": "^3.3.2", + "yargs": "^13.2.2", + "yargs-parser": "^13.0.0" + }, + "dependencies": { + "caching-transform": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", + "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", + "dev": true, + "requires": { + "hasha": "^3.0.0", + "make-dir": "^2.0.0", + "package-hash": "^3.0.0", + "write-file-atomic": "^2.4.2" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "package-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", + "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.15", + "hasha": "^3.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" + } + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "yargs-parser": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", + "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "requires": { + "isobject": "^3.0.0" + } + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "requires": { + "isobject": "^3.0.1" + } + }, + "observable-to-promise": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.5.0.tgz", + "integrity": "sha1-yCjw8NxH6fhq+KSXfF1VB2znqR8=", + "dev": true, + "requires": { + "is-observable": "^0.2.0", + "symbol-observable": "^1.0.4" + }, + "dependencies": { + "is-observable": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", + "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", + "dev": true, + "requires": { + "symbol-observable": "^0.2.2" + }, + "dependencies": { + "symbol-observable": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", + "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", + "dev": true + } + } + } + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "open": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/open/-/open-6.2.0.tgz", + "integrity": "sha512-Vxf6HJkwrqmvh9UAID3MnMYXntbTxKLOSfOnO7LJdzPf3NE3KQYFNV0/Lcz2VAndbRFil58XVCyh8tiX11fiYw==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "opn-cli": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.1.0.tgz", + "integrity": "sha512-nVJ9dVb4fEKtmACWxUql+hhQxVWMt7BSRT+6TnB85W3xs5Pgk9sKW3icYeCIwOtOKALBw/6WUCoNmI1+ADfAow==", + "dev": true, + "requires": { + "file-type": "^10.10.0", + "get-stdin": "^6.0.0", + "meow": "^5.0.0", + "open": "^6.1.0", + "temp-write": "^3.4.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", + "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0", + "yargs-parser": "^10.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + } + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + } + } + }, + "option-chain": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", + "integrity": "sha1-k41zvU4Xg/lI00AjZEraI2aeMPI=", + "dev": true + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "package-hash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-2.0.0.tgz", + "integrity": "sha1-eK4ybIngWk2BO2hgGXevBcANKg0=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "lodash.flattendeep": "^4.4.0", + "md5-hex": "^2.0.0", + "release-zalgo": "^1.0.0" + } + }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, + "requires": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse-ms": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", + "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "dev": true, + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + }, + "pinkie": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", + "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", + "dev": true + }, + "pinkie-promise": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", + "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", + "dev": true, + "requires": { + "pinkie": "^1.0.0" + } + }, + "pkg-conf": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", + "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "load-json-file": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + } + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + } + } + }, + "plur": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", + "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", + "dev": true, + "requires": { + "irregular-plurals": "^1.0.0" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, + "pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" + }, + "pretty-ms": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.2.0.tgz", + "integrity": "sha512-ZypexbfVUGTFxb0v+m1bUyy92DHe5SyYlnyY0msyms5zd3RwyvNgyxZZsXXgoyzlxjx5MiqtXUdhUfvQbe0A2Q==", + "dev": true, + "requires": { + "parse-ms": "^1.0.0" + }, + "dependencies": { + "parse-ms": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", + "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", + "dev": true + } + } + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.1.31", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", + "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==" + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + }, + "quick-lru": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", + "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "dev": true + }, + "random-int": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", + "integrity": "sha1-5qLtNEisnGZGoGV0Q7HBUhWS7Qg=" + }, + "randomatic": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", + "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", + "dev": true, + "requires": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "requires": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + }, + "dependencies": { + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + } + } + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "^0.1.3" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true + }, + "regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "dev": true, + "requires": { + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" + } + }, + "registry-auth-token": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", + "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", + "dev": true, + "requires": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true, + "requires": { + "rc": "^1.0.1" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + } + }, + "release-zalgo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "dev": true, + "requires": { + "es6-error": "^4.0.1" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "replacestream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", + "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", + "requires": { + "escape-string-regexp": "^1.0.3", + "object-assign": "^4.0.1", + "readable-stream": "^2.0.2" + } + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "require-precompiled": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", + "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", + "dev": true + }, + "requizzle": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", + "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", + "requires": { + "underscore": "~1.6.0" + }, + "dependencies": { + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" + } + } + }, + "resolve": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.0.tgz", + "integrity": "sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==", + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "requires": { + "glob": "^7.1.3" + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, + "rxjs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.1.tgz", + "integrity": "sha512-y0j31WJc83wPu31vS1VlAFW5JGrnGC+j+TtGAa1fRQphy48+fDYiDmX8tjGloToEsMkxnouOg/1IzXGKkJnZMg==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "semver": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.0.0.tgz", + "integrity": "sha512-0UewU+9rFapKFnlbirLi3byoOuhrSsli/z/ihNnvM24vgF+8sNBiI1LZPBSH9wJKUwaUbw+s3hToDLCXkrghrQ==" + }, + "semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "dev": true, + "requires": { + "semver": "^5.0.3" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "serialize-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", + "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-value": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "sinon": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.3.2.tgz", + "integrity": "sha512-thErC1z64BeyGiPvF8aoSg0LEnptSaWE7YhdWWbWXgelOyThent7uKOnnEh9zBxDbKixtr5dEko+ws1sZMuFMA==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.4.0", + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/samsam": "^3.3.1", + "diff": "^3.5.0", + "lolex": "^4.0.1", + "nise": "^1.4.10", + "supports-color": "^5.5.0" + } + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + }, + "slice-ansi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", + "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + } + } + }, + "slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "sort-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", + "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "dev": true, + "requires": { + "is-plain-obj": "^1.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.12", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", + "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, + "spawn-wrap": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.2.tgz", + "integrity": "sha512-vMwR3OmmDhnxCVxM8M+xO/FtIp6Ju/mNaDfCMMW7FDcLRTPFWUswec4LXJHTJE2hwTI9O0YBfygu4DalFl7Ylg==", + "dev": true, + "requires": { + "foreground-child": "^1.5.6", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "which": "^1.3.0" + } + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==" + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", + "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==" + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", + "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + }, + "strip-bom-buf": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", + "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "dev": true, + "requires": { + "is-utf8": "^0.2.1" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "supertap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", + "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "indent-string": "^3.2.0", + "js-yaml": "^3.10.0", + "serialize-error": "^2.1.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + } + } + }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "dev": true + }, + "table": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/table/-/table-5.2.3.tgz", + "integrity": "sha512-N2RsDAMvDLvYwFcwbPyF3VmVSSkuF+G1e+8inhBLtHpvwXGw4QRPEZhihQNeEN0i1up6/f6ObCJXNdlRG3YVyQ==", + "dev": true, + "requires": { + "ajv": "^6.9.1", + "lodash": "^4.17.11", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + } + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "taffydb": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", + "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" + }, + "tap-nyan": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", + "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "duplexer2": "^0.1.4", + "supports-color": "^3.1.2", + "tap-parser": "^3.0.3" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + } + } + }, + "tap-parser": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", + "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", + "dev": true, + "requires": { + "events-to-array": "^1.0.1", + "js-yaml": "^3.2.7", + "readable-stream": "^2" + } + }, + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true + }, + "temp-write": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz", + "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "is-stream": "^1.1.0", + "make-dir": "^1.0.0", + "pify": "^3.0.0", + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, + "requires": { + "execa": "^0.7.0" + } + }, + "test-exclude": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.2.tgz", + "integrity": "sha512-N2pvaLpT8guUpb5Fe1GJlmvmzH3x+DAKmmyEQmFP792QcLYoGE1syxztSvPD1V8yPe6VrcCt6YGQVjSRjCASsA==", + "dev": true, + "requires": { + "glob": "^7.1.3", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^2.0.0" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "time-zone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", + "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", + "dev": true + }, + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true + }, + "tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "requires": { + "rimraf": "^2.6.3" + } + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + } + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "trim-off-newlines": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", + "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "uglify-js": { + "version": "3.5.6", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.6.tgz", + "integrity": "sha512-YDKRX8F0Y+Jr7LhoVk0n4G7ltR3Y7qFAj+DtVBthlOgCcIj1hyMigCfousVfn9HKmvJ+qiFlLDwaHx44/e5ZKw==", + "dev": true, + "optional": true, + "requires": { + "commander": "~2.20.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true, + "optional": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, + "uid2": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", + "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", + "dev": true + }, + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + }, + "underscore-contrib": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", + "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", + "requires": { + "underscore": "1.6.0" + }, + "dependencies": { + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" + } + } + }, + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" + } + } + } + }, + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, + "requires": { + "crypto-random-string": "^1.0.0" + } + }, + "unique-temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", + "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", + "dev": true, + "requires": { + "mkdirp": "^0.5.1", + "os-tmpdir": "^1.0.1", + "uid2": "0.0.3" + } + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + } + } + }, + "unzip-response": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "dev": true + }, + "update-notifier": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", + "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "dev": true, + "requires": { + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-ci": "^1.0.10", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "requires": { + "prepend-http": "^1.0.1" + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "well-known-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-1.0.0.tgz", + "integrity": "sha1-c8eK6Bp3Jqj6WY4ogIAcixYiVRg=", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "widest-line": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", + "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", + "dev": true, + "requires": { + "string-width": "^2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "requires": { + "mkdirp": "^0.5.1" + } + }, + "write-file-atomic": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.2.tgz", + "integrity": "sha512-s0b6vB3xIVRLWywa6X9TOMA7k9zio0TMOsl9ZnDkliA/cfJlpHXAscj0gbHVJiTdIuAYpIyqS5GW91fqm6gG5g==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "write-json-file": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", + "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", + "dev": true, + "requires": { + "detect-indent": "^5.0.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "pify": "^3.0.0", + "sort-keys": "^2.0.0", + "write-file-atomic": "^2.0.0" + }, + "dependencies": { + "detect-indent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", + "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", + "dev": true + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "write-pkg": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.2.0.tgz", + "integrity": "sha512-tX2ifZ0YqEFOF1wjRW2Pk93NLsj02+n1UP5RvO6rCs0K6R2g1padvf006cY74PQJKMGS2r42NK7FD0dG6Y6paw==", + "dev": true, + "requires": { + "sort-keys": "^2.0.0", + "write-json-file": "^2.2.0" + } + }, + "xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true + }, + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" + } + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + }, + "xmlcreate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", + "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.2.tgz", + "integrity": "sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "os-locale": "^3.1.0", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "yargs-parser": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", + "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + } + } + }, + "yazl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", + "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", + "requires": { + "buffer-crc32": "~0.2.3" + } + } + } } diff --git a/packages/project/package.json b/packages/project/package.json index da7aeff5078..fc05639918a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -112,7 +112,7 @@ "eslint-config-google": "^0.12.0", "eslint-plugin-jsdoc": "^4.8.3", "jsdoc": "^3.5.5", - "nyc": "^13.3.0", + "nyc": "^14.0.0", "opn-cli": "^4.1.0", "rimraf": "^2.6.3", "sinon": "^7.3.2", From b1c1396cd03ac0d040177629a94060f755e3656d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 24 Apr 2019 12:48:25 +0000 Subject: [PATCH 0187/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.1.0 to 1.1.1 --- packages/project/package-lock.json | 48 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3915ef8ffbc..813431f461a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -317,9 +317,9 @@ "dev": true }, "@ui5/builder": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.1.0.tgz", - "integrity": "sha512-DnuPmDQdmGddQEb18Jc254ztgLGVEPpSNMq0QGxPQkDIanEEZU+OjZs0fyz9G1WydxMlf9DL9sQF8CKbzT5EYQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.1.1.tgz", + "integrity": "sha512-oXbMoVdOJZnRXaVaS7NOAOre3sfwV2HJiZSBlfHw6YOUlZJt0171Vbd0huE1hBi73Gczrs4vKghulmjXTmWykg==", "requires": { "@ui5/fs": "^1.0.2", "@ui5/logger": "^1.0.1", @@ -341,6 +341,27 @@ "uglify-es": "^3.2.2", "xml2js": "^0.4.17", "yazl": "^2.5.1" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + } + } } }, "@ui5/fs": { @@ -7742,27 +7763,6 @@ "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", "dev": true }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", - "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, "uglify-js": { "version": "3.5.6", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.6.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index fc05639918a..925b3921485 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.1.0", + "@ui5/builder": "^1.1.1", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.1", From 2583af5c1e6babe7a1b24ec3b93c345015551705 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 25 Apr 2019 08:40:14 +0000 Subject: [PATCH 0188/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.1.1 to 1.2.0 --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 813431f461a..a3d7c78ddbc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -317,9 +317,9 @@ "dev": true }, "@ui5/builder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.1.1.tgz", - "integrity": "sha512-oXbMoVdOJZnRXaVaS7NOAOre3sfwV2HJiZSBlfHw6YOUlZJt0171Vbd0huE1hBi73Gczrs4vKghulmjXTmWykg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.2.0.tgz", + "integrity": "sha512-9TtyQUCI7IwYP3D5w3HIjQVNKwYs3aPXXjdkGfKf7Zipsnc1NgAAyRSOGIK02GPxvmltFDgzMXX85SNwOuP7hg==", "requires": { "@ui5/fs": "^1.0.2", "@ui5/logger": "^1.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 925b3921485..24fe63bb272 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.1.1", + "@ui5/builder": "^1.2.0", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.1", From ac2e119ef3aae014e892b508ffacfba85d2ab5ee Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 26 Apr 2019 04:24:27 +0000 Subject: [PATCH 0189/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 16531 +++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 8251 insertions(+), 8282 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a3d7c78ddbc..75be07b4e95 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,8283 +1,8252 @@ { - "name": "@ui5/project", - "version": "1.0.2", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@ava/babel-plugin-throws-helper": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-2.0.0.tgz", - "integrity": "sha1-L8H+PCEacQcaTsp7j3r1hCzRrnw=", - "dev": true - }, - "@ava/babel-preset-stage-4": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", - "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", - "dev": true, - "requires": { - "babel-plugin-check-es2015-constants": "^6.8.0", - "babel-plugin-syntax-trailing-function-commas": "^6.20.0", - "babel-plugin-transform-async-to-generator": "^6.16.0", - "babel-plugin-transform-es2015-destructuring": "^6.19.0", - "babel-plugin-transform-es2015-function-name": "^6.9.0", - "babel-plugin-transform-es2015-modules-commonjs": "^6.18.0", - "babel-plugin-transform-es2015-parameters": "^6.21.0", - "babel-plugin-transform-es2015-spread": "^6.8.0", - "babel-plugin-transform-es2015-sticky-regex": "^6.8.0", - "babel-plugin-transform-es2015-unicode-regex": "^6.11.0", - "babel-plugin-transform-exponentiation-operator": "^6.8.0", - "package-hash": "^1.2.0" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", - "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "package-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", - "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", - "dev": true, - "requires": { - "md5-hex": "^1.3.0" - } - } - } - }, - "@ava/babel-preset-transform-test-files": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-3.0.0.tgz", - "integrity": "sha1-ze0RlqjY2TgaUJJAq5LpGl7Aafc=", - "dev": true, - "requires": { - "@ava/babel-plugin-throws-helper": "^2.0.0", - "babel-plugin-espower": "^2.3.2" - } - }, - "@ava/write-file-atomic": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ava/write-file-atomic/-/write-file-atomic-2.2.0.tgz", - "integrity": "sha512-BTNB3nGbEfJT+69wuqXFr/bQH7Vr7ihx2xGOMNqPgDGhwspoZhiWumDDZNjBy7AScmqS5CELIOGtPVXESyrnDA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" - } - }, - "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", - "dev": true, - "requires": { - "@babel/highlight": "^7.0.0" - } - }, - "@babel/generator": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.0.tgz", - "integrity": "sha512-/v5I+a1jhGSKLgZDcmAUZ4K/VePi43eRkUs3yePW1HB1iANOD5tqJXwGSG4BZhSksP8J9ejSlwGeTiiOFZOrXQ==", - "dev": true, - "requires": { - "@babel/types": "^7.4.0", - "jsesc": "^2.5.1", - "lodash": "^4.17.11", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - } - } - }, - "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", - "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.0.tgz", - "integrity": "sha512-7Cuc6JZiYShaZnybDmfwhY4UYHzI6rlqhWjaIqbsJGsIqPimEYy5uh3akSRLMg65LSdSEnJ8a8/bWQN6u2oMGw==", - "dev": true, - "requires": { - "@babel/types": "^7.4.0" - } - }, - "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - } - } - }, - "@babel/parser": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.3.tgz", - "integrity": "sha512-gxpEUhTS1sGA63EGQGuA+WESPR/6tz6ng7tSHFCmaTJK/cGK8y37cBTspX+U2xCAue2IQVvF6Z0oigmjwD8YGQ==", - "dev": true - }, - "@babel/template": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.0.tgz", - "integrity": "sha512-SOWwxxClTTh5NdbbYZ0BmaBVzxzTh2tO/TeLTbF6MO6EzVhHTnff8CdBXx3mEtazFBoysmEM6GU/wF+SuSx4Fw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.4.0", - "@babel/types": "^7.4.0" - } - }, - "@babel/traverse": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.3.tgz", - "integrity": "sha512-HmA01qrtaCwwJWpSKpA948cBvU5BrmviAief/b3AVw936DtcdsTexlbyzNuDnthwhOQ37xshn7hvQaEQk7ISYQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.4.0", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/types": "^7.4.0", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.11" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", - "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", - "dev": true - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.0.tgz", - "integrity": "sha512-aPvkXyU2SPOnztlgo8n9cEiXW755mgyvueUPcpStqdzoSPm0fjO0vQBjLkt3JKJW7ufikfcnMTTPsN1xaTsBPA==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.11", - "to-fast-properties": "^2.0.0" - }, - "dependencies": { - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - } - } - }, - "@concordance/react": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", - "integrity": "sha512-htrsRaQX8Iixlsek8zQU7tE8wcsTQJ5UhZkSPEA8slCDAisKpC/2VgU/ucPn32M5/LjGGXRaUEKvEw1Wiuu4zQ==", - "dev": true, - "requires": { - "arrify": "^1.0.1" - } - }, - "@ladjs/time-require": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@ladjs/time-require/-/time-require-0.1.4.tgz", - "integrity": "sha512-weIbJqTMfQ4r1YX85u54DKfjLZs2jwn1XZ6tIOP/pFgMwhIN5BAtaCp/1wn9DzyLsDR9tW0R2NIePcVJ45ivQQ==", - "dev": true, - "requires": { - "chalk": "^0.4.0", - "date-time": "^0.1.1", - "pretty-ms": "^0.2.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", - "dev": true - }, - "chalk": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", - "dev": true, - "requires": { - "ansi-styles": "~1.0.0", - "has-color": "~0.1.0", - "strip-ansi": "~0.1.0" - } - }, - "pretty-ms": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", - "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", - "dev": true, - "requires": { - "parse-ms": "^0.1.0" - } - }, - "strip-ansi": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", - "dev": true - } - } - }, - "@sinonjs/commons": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz", - "integrity": "sha512-9jHK3YF/8HtJ9wCAbG+j8cD0i0+ATS9A7gXFqS36TblLPNy6rEEc+SB0imo91eCboGaBYGV/MT1/br/J+EE7Tw==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/formatio": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz", - "integrity": "sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" - } - }, - "@sinonjs/samsam": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.1.tgz", - "integrity": "sha512-wRSfmyd81swH0hA1bxJZJ57xr22kC07a1N4zuIL47yTS04bDk6AoCkczcqHEjcRPmJ+FruGJ9WBQiJwMtIElFw==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.0.2", - "array-from": "^2.1.1", - "lodash": "^4.17.11" - } - }, - "@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", - "dev": true - }, - "@ui5/builder": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.2.0.tgz", - "integrity": "sha512-9TtyQUCI7IwYP3D5w3HIjQVNKwYs3aPXXjdkGfKf7Zipsnc1NgAAyRSOGIK02GPxvmltFDgzMXX85SNwOuP7hg==", - "requires": { - "@ui5/fs": "^1.0.2", - "@ui5/logger": "^1.0.1", - "cheerio": "^0.22.0", - "escodegen": "^1.11.1", - "escope": "^3.6.0", - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "globby": "^7.1.1", - "graceful-fs": "^4.1.15", - "jsdoc": "^3.5.5", - "less-openui5": "^0.6.0", - "make-dir": "^2.1.0", - "pretty-data": "^0.40.0", - "pretty-hrtime": "^1.0.3", - "replacestream": "^4.0.3", - "semver": "^6.0.0", - "tmp": "0.1.0", - "uglify-es": "^3.2.2", - "xml2js": "^0.4.17", - "yazl": "^2.5.1" - }, - "dependencies": { - "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", - "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" - } - } - } - }, - "@ui5/fs": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.2.tgz", - "integrity": "sha512-8Fc4iqpo/sm2KMGV0MiesqWPoCVDf9OnWVWqdoJ0c7GwAh6olt2EDPtnjtQ0tLMW2Uovdh/Nz+S1qecY0Yb1GA==", - "requires": { - "@ui5/logger": "^1.0.1", - "clone": "^2.1.0", - "dir-glob": "2.0.0", - "globby": "^7.1.1", - "graceful-fs": "^4.1.15", - "make-dir": "^2.1.0", - "micromatch": "^3.1.4", - "minimatch": "^3.0.3", - "mock-require": "^3.0.3", - "pretty-hrtime": "^1.0.3", - "random-int": "^1.0.0" - } - }, - "@ui5/logger": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", - "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", - "requires": { - "npmlog": "^4.1.2" - } - }, - "acorn": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", - "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", - "dev": true - }, - "acorn-jsx": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", - "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", - "dev": true - }, - "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "optional": true - }, - "ansi-align": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", - "dev": true, - "requires": { - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", - "dev": true, - "requires": { - "micromatch": "^2.1.5", - "normalize-path": "^2.0.0" - }, - "dependencies": { - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "requires": { - "is-posix-bracket": "^0.1.0" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - } - } - } - }, - "append-transform": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", - "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", - "dev": true, - "requires": { - "default-require-extensions": "^2.0.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", - "dev": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "arr-exclude": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", - "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" - }, - "array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true - }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" - }, - "auto-bind": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.2.1.tgz", - "integrity": "sha512-/W9yj1yKmBLwpexwAujeD9YHwYmRuWFGV8HWE7smQab797VeHa4/cnE2NFeDhA+E+5e/OGBI8763EhLjfZ/MXA==", - "dev": true - }, - "ava": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-0.25.0.tgz", - "integrity": "sha512-4lGNJCf6xL8SvsKVEKxEE46se7JAUIAZoKHw9itTQuwcsydhpAMkBs5gOOiWiwt0JKNIuXWc2/r4r8ZdcNrBEw==", - "dev": true, - "requires": { - "@ava/babel-preset-stage-4": "^1.1.0", - "@ava/babel-preset-transform-test-files": "^3.0.0", - "@ava/write-file-atomic": "^2.2.0", - "@concordance/react": "^1.0.0", - "@ladjs/time-require": "^0.1.4", - "ansi-escapes": "^3.0.0", - "ansi-styles": "^3.1.0", - "arr-flatten": "^1.0.1", - "array-union": "^1.0.1", - "array-uniq": "^1.0.2", - "arrify": "^1.0.0", - "auto-bind": "^1.1.0", - "ava-init": "^0.2.0", - "babel-core": "^6.17.0", - "babel-generator": "^6.26.0", - "babel-plugin-syntax-object-rest-spread": "^6.13.0", - "bluebird": "^3.0.0", - "caching-transform": "^1.0.0", - "chalk": "^2.0.1", - "chokidar": "^1.4.2", - "clean-stack": "^1.1.1", - "clean-yaml-object": "^0.1.0", - "cli-cursor": "^2.1.0", - "cli-spinners": "^1.0.0", - "cli-truncate": "^1.0.0", - "co-with-promise": "^4.6.0", - "code-excerpt": "^2.1.1", - "common-path-prefix": "^1.0.0", - "concordance": "^3.0.0", - "convert-source-map": "^1.5.1", - "core-assert": "^0.2.0", - "currently-unhandled": "^0.4.1", - "debug": "^3.0.1", - "dot-prop": "^4.1.0", - "empower-core": "^0.6.1", - "equal-length": "^1.0.0", - "figures": "^2.0.0", - "find-cache-dir": "^1.0.0", - "fn-name": "^2.0.0", - "get-port": "^3.0.0", - "globby": "^6.0.0", - "has-flag": "^2.0.0", - "hullabaloo-config-manager": "^1.1.0", - "ignore-by-default": "^1.0.0", - "import-local": "^0.1.1", - "indent-string": "^3.0.0", - "is-ci": "^1.0.7", - "is-generator-fn": "^1.0.0", - "is-obj": "^1.0.0", - "is-observable": "^1.0.0", - "is-promise": "^2.1.0", - "last-line-stream": "^1.0.0", - "lodash.clonedeepwith": "^4.5.0", - "lodash.debounce": "^4.0.3", - "lodash.difference": "^4.3.0", - "lodash.flatten": "^4.2.0", - "loud-rejection": "^1.2.0", - "make-dir": "^1.0.0", - "matcher": "^1.0.0", - "md5-hex": "^2.0.0", - "meow": "^3.7.0", - "ms": "^2.0.0", - "multimatch": "^2.1.0", - "observable-to-promise": "^0.5.0", - "option-chain": "^1.0.0", - "package-hash": "^2.0.0", - "pkg-conf": "^2.0.0", - "plur": "^2.0.0", - "pretty-ms": "^3.0.0", - "require-precompiled": "^0.1.0", - "resolve-cwd": "^2.0.0", - "safe-buffer": "^5.1.1", - "semver": "^5.4.1", - "slash": "^1.0.0", - "source-map-support": "^0.5.0", - "stack-utils": "^1.0.1", - "strip-ansi": "^4.0.0", - "strip-bom-buf": "^1.0.0", - "supertap": "^1.0.0", - "supports-color": "^5.0.0", - "trim-off-newlines": "^1.0.1", - "unique-temp-dir": "^1.0.0", - "update-notifier": "^2.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - }, - "dependencies": { - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - } - } - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "ava-init": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", - "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", - "dev": true, - "requires": { - "arr-exclude": "^1.0.0", - "execa": "^0.7.0", - "has-yarn": "^1.0.0", - "read-pkg-up": "^2.0.0", - "write-pkg": "^3.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "requires": { - "pify": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true, - "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - } - }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - } - } - } - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" - }, - "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "babel-core": { - "version": "6.26.3", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", - "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", - "dev": true, - "requires": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true - } - } - }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true, - "requires": { - "babel-helper-explode-assignable-expression": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true, - "requires": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-espower": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.4.0.tgz", - "integrity": "sha512-/+SRpy7pKgTI28oEHfn1wkuM5QFAdRq8WNsOOih1dVrdV6A/WbNbRZyl0eX5eyDgtb0lOE27PeDFuCX2j8OxVg==", - "dev": true, - "requires": { - "babel-generator": "^6.1.0", - "babylon": "^6.1.0", - "call-matcher": "^1.0.0", - "core-js": "^2.0.0", - "espower-location-detector": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.1.1" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", - "dev": true - }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", - "dev": true - }, - "babel-plugin-syntax-object-rest-spread": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", - "dev": true - }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", - "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", - "dev": true - }, - "babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-functions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", - "dev": true, - "requires": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" - } - }, - "babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", - "dev": true, - "requires": { - "babel-helper-call-delegate": "^6.24.1", - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "regexpu-core": "^2.0.0" - } - }, - "babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", - "dev": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", - "babel-plugin-syntax-exponentiation-operator": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" - }, - "dependencies": { - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "^0.5.6" - } - } - } - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "babylon": { - "version": "7.0.0-beta.19", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", - "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "bluebird": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.4.tgz", - "integrity": "sha512-FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw==" - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" - }, - "boxen": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", - "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", - "dev": true, - "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "buf-compare": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", - "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", - "dev": true - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "caching-transform": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", - "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", - "dev": true, - "requires": { - "md5-hex": "^1.2.0", - "mkdirp": "^0.5.1", - "write-file-atomic": "^1.1.4" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", - "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "write-file-atomic": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", - "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" - } - } - } - }, - "call-matcher": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.1.0.tgz", - "integrity": "sha512-IoQLeNwwf9KTNbtSA7aEBb1yfDbdnzwjCetjkC8io5oGeOmK2CBNdg0xr+tadRYKO0p7uQyZzvon0kXlZbvGrw==", - "dev": true, - "requires": { - "core-js": "^2.0.0", - "deep-equal": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.0.0" - } - }, - "call-signature": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", - "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", - "dev": true - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, - "capture-stack-trace": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", - "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "catharsis": { - "version": "0.8.9", - "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", - "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", - "requires": { - "underscore-contrib": "~0.3.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "cheerio": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", - "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", - "requires": { - "css-select": "~1.2.0", - "dom-serializer": "~0.1.0", - "entities": "~1.1.1", - "htmlparser2": "^3.9.1", - "lodash.assignin": "^4.0.9", - "lodash.bind": "^4.1.4", - "lodash.defaults": "^4.0.1", - "lodash.filter": "^4.4.0", - "lodash.flatten": "^4.2.0", - "lodash.foreach": "^4.3.0", - "lodash.map": "^4.4.0", - "lodash.merge": "^4.4.0", - "lodash.pick": "^4.2.1", - "lodash.reduce": "^4.4.0", - "lodash.reject": "^4.4.0", - "lodash.some": "^4.4.0" - } - }, - "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true, - "requires": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "fsevents": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0" - } - }, - "ci-info": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", - "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "clean-css": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", - "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=", - "optional": true, - "requires": { - "commander": "2.0.x" - } - }, - "clean-stack": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", - "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", - "dev": true - }, - "clean-yaml-object": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", - "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", - "dev": true - }, - "cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", - "dev": true - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-spinners": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", - "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", - "dev": true - }, - "cli-truncate": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", - "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", - "dev": true, - "requires": { - "slice-ansi": "^1.0.0", - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true - }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" - }, - "co-with-promise": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", - "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", - "dev": true, - "requires": { - "pinkie-promise": "^1.0.0" - } - }, - "code-excerpt": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", - "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", - "dev": true, - "requires": { - "convert-to-spaces": "^1.0.1" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", - "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", - "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", - "optional": true - }, - "comment-parser": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.4.tgz", - "integrity": "sha512-0h7W6Y1Kb6zKQMJqdX41C5qf9ITCVIsD2qP2RaqDF3GFkXFrmuAuv5zUOuo19YzyC9scjBNpqzuaRQ2Sy5pxMQ==", - "dev": true - }, - "common-path-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", - "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concordance": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", - "integrity": "sha512-CZBzJ3/l5QJjlZM20WY7+5GP5pMTw+1UEbThcpMw8/rojsi5sBCiD8ZbBLtD+jYpRGAkwuKuqk108c154V9eyQ==", - "dev": true, - "requires": { - "date-time": "^2.1.0", - "esutils": "^2.0.2", - "fast-diff": "^1.1.1", - "function-name-support": "^0.2.0", - "js-string-escape": "^1.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.flattendeep": "^4.4.0", - "lodash.merge": "^4.6.0", - "md5-hex": "^2.0.0", - "semver": "^5.3.0", - "well-known-symbols": "^1.0.0" - }, - "dependencies": { - "date-time": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", - "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", - "dev": true, - "requires": { - "time-zone": "^1.0.0" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "convert-source-map": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", - "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "convert-to-spaces": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", - "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", - "dev": true - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" - }, - "core-assert": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", - "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", - "dev": true, - "requires": { - "buf-compare": "^1.0.0", - "is-error": "^2.2.0" - } - }, - "core-js": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz", - "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "coveralls": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.3.tgz", - "integrity": "sha512-viNfeGlda2zJr8Gj1zqXpDMRjw9uM54p7wzZdvLRyOgnAfCe974Dq4veZkjJdxQXbmdppu6flEajFYseHYaUhg==", - "dev": true, - "requires": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.86.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "cp-file": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", - "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "make-dir": "^2.0.0", - "nested-error-stacks": "^2.0.0", - "pify": "^4.0.1", - "safe-buffer": "^5.0.1" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - } - } - }, - "create-error-class": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", - "dev": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, - "cross-env": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", - "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.5", - "is-windows": "^1.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", - "dev": true - }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", - "requires": { - "es5-ext": "^0.10.9" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "date-time": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", - "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", - "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - } - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" - }, - "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - }, - "default-require-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", - "dev": true, - "requires": { - "strip-bom": "^3.0.0" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", - "requires": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - } - }, - "docdash": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.1.0.tgz", - "integrity": "sha512-sgcessH25PU6CIoJGeOjDCv9CLi6Z6TLwc553s/O+DKCnIRXT58e4CG3WsgI8Zea5ZQcjsfa8u4IwKqR2TKTxQ==", - "dev": true - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-serializer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", - "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", - "requires": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" - } - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" - }, - "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "requires": { - "domelementtype": "1" - } - }, - "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", - "dev": true, - "requires": { - "is-obj": "^1.0.0" - } - }, - "duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - } - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", - "dev": true - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "empower-core": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", - "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", - "dev": true, - "requires": { - "call-signature": "0.0.2", - "core-js": "^2.0.0" - } - }, - "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" - }, - "equal-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", - "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", - "dev": true - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es5-ext": { - "version": "0.10.49", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.49.tgz", - "integrity": "sha512-3NMEhi57E31qdzmYp2jwRArIUsj1HI/RxbQ4bgnSB+AIKIxsAmTiK83bYMifIcpWvEc3P1X30DhUKOqEtF/kvg==", - "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.1", - "next-tick": "^1.0.0" - } - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" - } - }, - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "es6-weak-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", - "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", - "requires": { - "d": "1", - "es5-ext": "^0.10.14", - "es6-iterator": "^2.0.1", - "es6-symbol": "^3.1.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "escodegen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", - "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", - "requires": { - "esprima": "^3.1.3", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "optional": true - } - } - }, - "escope": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", - "requires": { - "es6-map": "^0.1.3", - "es6-weak-map": "^2.0.1", - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", - "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.9.1", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^4.0.3", - "eslint-utils": "^1.3.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^5.0.1", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.7.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^6.2.2", - "js-yaml": "^3.13.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.11", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^5.5.1", - "strip-ansi": "^4.0.0", - "strip-json-comments": "^2.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", - "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", - "dev": true - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "eslint-config-google": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.12.0.tgz", - "integrity": "sha512-SHDM3nIRCJBACjf8c/H6FvCwRmKbphESNl3gJFBNbw4KYDLCONB3ABYLXDGF+iaVP9XSTND/Q5/PuGoFkp4xbg==", - "dev": true - }, - "eslint-plugin-jsdoc": { - "version": "4.8.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.3.tgz", - "integrity": "sha512-lKOaphUUzv0qKJrAdEwQGEWcNN2Foae5W111u1ASKQeliyJkKXCVxia0dakATuI/s2ojr6Q3FVzWwT6uE1icBg==", - "dev": true, - "requires": { - "comment-parser": "^0.5.4", - "jsdoctypeparser": "3.1.0", - "lodash": "^4.17.11" - } - }, - "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", - "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", - "dev": true - }, - "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", - "dev": true - }, - "espower-location-detector": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", - "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", - "dev": true, - "requires": { - "is-url": "^1.2.1", - "path-is-absolute": "^1.0.0", - "source-map": "^0.5.0", - "xtend": "^4.0.0" - } - }, - "espree": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", - "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", - "dev": true, - "requires": { - "acorn": "^6.0.7", - "acorn-jsx": "^5.0.0", - "eslint-visitor-keys": "^1.0.0" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "espurify": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.1.tgz", - "integrity": "sha512-ZDko6eY/o+D/gHCWyHTU85mKDgYcS4FJj7S+YD6WIInm7GQ6AnOjmcL4+buFV/JOztVLELi/7MmuGU5NHta0Mg==", - "dev": true, - "requires": { - "core-js": "^2.0.0" - } - }, - "esquery": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", - "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", - "dev": true, - "requires": { - "estraverse": "^4.0.0" - } - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "requires": { - "estraverse": "^4.1.0" - } - }, - "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" - }, - "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" - }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "events-to-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", - "dev": true - }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "dev": true, - "requires": { - "fill-range": "^2.1.0" - }, - "dependencies": { - "fill-range": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", - "dev": true, - "requires": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^3.0.0", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" - } - }, - "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", - "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "dependencies": { - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" - }, - "fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "dev": true, - "requires": { - "flat-cache": "^2.0.1" - } - }, - "file-type": { - "version": "10.11.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", - "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", - "dev": true - }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", - "dev": true - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-cache-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" - }, - "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - } - }, - "flatted": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", - "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", - "dev": true - }, - "fn-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", - "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", - "dev": true - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" - }, - "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "foreground-child": { - "version": "1.5.6", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", - "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", - "dev": true, - "requires": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", - "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - } - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "requires": { - "map-cache": "^0.2.2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.8.tgz", - "integrity": "sha512-tPvHgPGB7m40CZ68xqFGkKuzN+RnpGmSV+hgeKxhRpbxdqKXUFJGC3yonBOLzQBcJyGpdZFDfCsdOC2KFsXzeA==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.12.1", - "node-pre-gyp": "^0.12.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.3.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^4.1.0", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.12.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "function-name-support": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", - "integrity": "sha1-VdO/qm6v1QWlD5vIH99XVkoLsHE=", - "dev": true - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" - }, - "get-port": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - } - }, - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "^2.0.0" - } - }, - "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", - "dev": true, - "requires": { - "ini": "^1.3.4" - } - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "globby": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", - "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", - "requires": { - "array-union": "^1.0.1", - "dir-glob": "^2.0.0", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - } - }, - "got": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", - "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", - "dev": true, - "requires": { - "create-error-class": "^3.0.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, - "handlebars": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", - "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", - "dev": true, - "requires": { - "neo-async": "^2.6.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "dev": true - }, - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "has-yarn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", - "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", - "dev": true - }, - "hasha": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", - "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", - "dev": true, - "requires": { - "is-stream": "^1.0.1" - } - }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", - "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==" - }, - "htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz", - "integrity": "sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "hullabaloo-config-manager": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/hullabaloo-config-manager/-/hullabaloo-config-manager-1.1.1.tgz", - "integrity": "sha512-ztKnkZV0TmxnumCDHHgLGNiDnotu4EHCp9YMkznWuo4uTtCyJ+cu+RNcxUeXYKTllpvLFWnbfWry09yzszgg+A==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "es6-error": "^4.0.2", - "graceful-fs": "^4.1.11", - "indent-string": "^3.1.0", - "json5": "^0.5.1", - "lodash.clonedeep": "^4.5.0", - "lodash.clonedeepwith": "^4.5.0", - "lodash.isequal": "^4.5.0", - "lodash.merge": "^4.6.0", - "md5-hex": "^2.0.0", - "package-hash": "^2.0.0", - "pkg-dir": "^2.0.0", - "resolve-from": "^3.0.0", - "safe-buffer": "^5.0.1" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" - }, - "ignore-by-default": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", - "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", - "dev": true - }, - "import-fresh": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", - "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } - } - }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", - "dev": true - }, - "import-local": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", - "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", - "dev": true, - "requires": { - "pkg-dir": "^2.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true - }, - "inquirer": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.3.1.tgz", - "integrity": "sha512-MmL624rfkFt4TG9y/Jvmt8vdmOo836U7Y0Hxr2aFk3RelZEGX4Igk0KabWrcaaZaTv9uzglOqWh1Vly+FAWAXA==", - "dev": true, - "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.11", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - } - } - } - } - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, - "irregular-plurals": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz", - "integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "is-ci": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", - "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", - "dev": true, - "requires": { - "ci-info": "^1.5.0" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" - } - } - }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", - "dev": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "dev": true, - "requires": { - "is-primitive": "^2.0.0" - } - }, - "is-error": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", - "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", - "dev": true - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-generator-fn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", - "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "is-installed-globally": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", - "dev": true, - "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" - } - }, - "is-npm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "is-observable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", - "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", - "dev": true, - "requires": { - "symbol-observable": "^1.1.0" - } - }, - "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "requires": { - "isobject": "^3.0.1" - } - }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", - "dev": true - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", - "dev": true - }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, - "is-redirect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "dev": true - }, - "is-retry-allowed": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "is-url": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", - "dev": true - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-LXTBICkMARVgo579kWDm8SqfB6nvSDKNqIOBEjmJRnL04JvoMHCYGWaMddQnseJYtkEuEvO/sIcOxPLk9gERug==", - "dev": true - }, - "istanbul-lib-hook": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.6.tgz", - "integrity": "sha512-829DKONApZ7UCiPXcOYWSgkFXa4+vNYoNOt3F+4uDJLKL1OotAoVwvThoEj1i8jmOj7odbYcR3rnaHu+QroaXg==", - "dev": true, - "requires": { - "append-transform": "^1.0.0" - } - }, - "istanbul-lib-instrument": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.2.0.tgz", - "integrity": "sha512-06IM3xShbNW4NgZv5AP4QH0oHqf1/ivFo8eFys0ZjPXHGldHJQWb3riYOKXqmOqfxXBfxu4B+g/iuhOPZH0RJg==", - "dev": true, - "requires": { - "@babel/generator": "^7.0.0", - "@babel/parser": "^7.0.0", - "@babel/template": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "istanbul-lib-coverage": "^2.0.4", - "semver": "^6.0.0" - } - }, - "istanbul-lib-report": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.7.tgz", - "integrity": "sha512-wLH6beJBFbRBLiTlMOBxmb85cnVM1Vyl36N48e4e/aTKSM3WbOx7zbVIH1SQ537fhhsPbX0/C5JB4qsmyRXXyA==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^2.0.4", - "make-dir": "^2.1.0", - "supports-color": "^6.0.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.5.tgz", - "integrity": "sha512-eDhZ7r6r1d1zQPVZehLc3D0K14vRba/eBYkz3rw16DLOrrTzve9RmnkcwrrkWVgO1FL3EK5knujVe5S8QHE9xw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.4", - "make-dir": "^2.1.0", - "rimraf": "^2.6.2", - "source-map": "^0.6.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "istanbul-reports": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.3.tgz", - "integrity": "sha512-T6EbPuc8Cb620LWAYyZ4D8SSn06dY9i1+IgUX2lTH8gbwflMc9Obd33zHTyNX653ybjpamAHS9toKS3E6cGhTw==", - "dev": true, - "requires": { - "handlebars": "^4.1.0" - } - }, - "js-string-escape": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", - "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", - "dev": true - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "js2xmlparser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", - "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", - "requires": { - "xmlcreate": "^1.0.1" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" - }, - "jsdoc": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", - "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", - "requires": { - "babylon": "7.0.0-beta.19", - "bluebird": "~3.5.0", - "catharsis": "~0.8.9", - "escape-string-regexp": "~1.0.5", - "js2xmlparser": "~3.0.0", - "klaw": "~2.0.0", - "marked": "~0.3.6", - "mkdirp": "~0.5.1", - "requizzle": "~0.2.1", - "strip-json-comments": "~2.0.1", - "taffydb": "2.6.2", - "underscore": "~1.8.3" - } - }, - "jsdoctypeparser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-3.1.0.tgz", - "integrity": "sha512-JNbkKpDFqbYjg+IU3FNo7qjX7Opy7CwjHywT32zgAcz/d4lX6Umn5jOHVETUdnNNgGrMk0nEx1gvP0F4M0hzlQ==", - "dev": true - }, - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "just-extend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", - "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" - }, - "klaw": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", - "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", - "requires": { - "graceful-fs": "^4.1.9" - } - }, - "last-line-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", - "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", - "dev": true, - "requires": { - "through2": "^2.0.0" - } - }, - "latest-version": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", - "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", - "dev": true, - "requires": { - "package-json": "^4.0.0" - } - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", - "dev": true - }, - "less": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", - "integrity": "sha1-cc6J7DC3dLNWfyVMZ5WPLywZO94=", - "requires": { - "clean-css": "2.0.x", - "mime": "1.2.x", - "mkdirp": "~0.3.5", - "request": ">=2.12.0", - "source-map": "0.1.x" - }, - "dependencies": { - "mkdirp": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", - "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", - "optional": true - }, - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "optional": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "less-openui5": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", - "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", - "requires": { - "clone": "^2.1.0", - "css": "^2.2.1", - "less": "1.6.3", - "object-assign": "^4.0.1" - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - }, - "lodash.assignin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" - }, - "lodash.bind": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", - "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "lodash.clonedeepwith": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", - "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true - }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" - }, - "lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", - "dev": true - }, - "lodash.filter": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", - "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" - }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" - }, - "lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", - "dev": true - }, - "lodash.foreach": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", - "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" - }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", - "dev": true - }, - "lodash.map": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", - "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" - }, - "lodash.merge": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", - "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==" - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" - }, - "lodash.reduce": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", - "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" - }, - "lodash.reject": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", - "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=" - }, - "lodash.some": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", - "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" - }, - "log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", - "dev": true - }, - "lolex": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.0.1.tgz", - "integrity": "sha512-UHuOBZ5jjsKuzbB/gRNNW8Vg8f00Emgskdq2kvZxgBJCS0aqquAuXai/SkWORlKeZEiNQWZjFZOqIUcH9LqKCw==", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" - } - } - }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "requires": { - "object-visit": "^1.0.0" - } - }, - "marked": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" - }, - "matcher": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", - "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.4" - } - }, - "math-random": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", - "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", - "dev": true - }, - "md5-hex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", - "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "md5-o-matic": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", - "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", - "dev": true - }, - "mem": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", - "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" - }, - "dependencies": { - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - } - } - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - } - } - }, - "merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "mime": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", - "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=", - "optional": true - }, - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" - }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "requires": { - "mime-db": "1.40.0" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", - "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - } - }, - "mixin-deep": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - } - }, - "mock-require": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", - "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", - "requires": { - "get-caller-file": "^1.0.2", - "normalize-path": "^2.1.1" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "multimatch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", - "dev": true, - "requires": { - "array-differ": "^1.0.0", - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "minimatch": "^3.0.0" - } - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "nan": { - "version": "2.13.2", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz", - "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==", - "dev": true, - "optional": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "neo-async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz", - "integrity": "sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==", - "dev": true - }, - "nested-error-stacks": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz", - "integrity": "sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug==", - "dev": true - }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "nise": { - "version": "1.4.10", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.10.tgz", - "integrity": "sha512-sa0RRbj53dovjc7wombHmVli9ZihXbXCQ2uH3TNm03DyvOSIQbxg+pbqDKrk2oxMK1rtLGVlKxcB9rrc6X5YjA==", - "dev": true, - "requires": { - "@sinonjs/formatio": "^3.1.0", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^2.3.2", - "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "lolex": { - "version": "2.7.5", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", - "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", - "dev": true - } - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" - } - } - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "requires": { - "remove-trailing-separator": "^1.0.1" - } - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "requires": { - "boolbase": "~1.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "nyc": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.0.0.tgz", - "integrity": "sha512-R1zC6UZak6pzn5BZQorkSH5GdOGafrwyeja+eimS5Tu+KJ/hCgBc8qA1QWSzxQmT2FDl2lbpqPw7tBDbSvhAHg==", - "dev": true, - "requires": { - "archy": "^1.0.0", - "caching-transform": "^3.0.2", - "convert-source-map": "^1.6.0", - "cp-file": "^6.2.0", - "find-cache-dir": "^2.1.0", - "find-up": "^3.0.0", - "foreground-child": "^1.5.6", - "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.4", - "istanbul-lib-hook": "^2.0.6", - "istanbul-lib-instrument": "^3.2.0", - "istanbul-lib-report": "^2.0.7", - "istanbul-lib-source-maps": "^3.0.5", - "istanbul-reports": "^2.2.2", - "make-dir": "^2.1.0", - "merge-source-map": "^1.1.0", - "resolve-from": "^4.0.0", - "rimraf": "^2.6.3", - "signal-exit": "^3.0.2", - "spawn-wrap": "^1.4.2", - "test-exclude": "^5.2.2", - "uuid": "^3.3.2", - "yargs": "^13.2.2", - "yargs-parser": "^13.0.0" - }, - "dependencies": { - "caching-transform": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", - "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", - "dev": true, - "requires": { - "hasha": "^3.0.0", - "make-dir": "^2.0.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.4.2" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "package-hash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", - "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^3.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - } - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "yargs-parser": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", - "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "requires": { - "isobject": "^3.0.0" - } - }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "dev": true, - "requires": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "requires": { - "isobject": "^3.0.1" - } - }, - "observable-to-promise": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.5.0.tgz", - "integrity": "sha1-yCjw8NxH6fhq+KSXfF1VB2znqR8=", - "dev": true, - "requires": { - "is-observable": "^0.2.0", - "symbol-observable": "^1.0.4" - }, - "dependencies": { - "is-observable": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", - "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", - "dev": true, - "requires": { - "symbol-observable": "^0.2.2" - }, - "dependencies": { - "symbol-observable": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", - "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", - "dev": true - } - } - } - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "open": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/open/-/open-6.2.0.tgz", - "integrity": "sha512-Vxf6HJkwrqmvh9UAID3MnMYXntbTxKLOSfOnO7LJdzPf3NE3KQYFNV0/Lcz2VAndbRFil58XVCyh8tiX11fiYw==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "opn-cli": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.1.0.tgz", - "integrity": "sha512-nVJ9dVb4fEKtmACWxUql+hhQxVWMt7BSRT+6TnB85W3xs5Pgk9sKW3icYeCIwOtOKALBw/6WUCoNmI1+ADfAow==", - "dev": true, - "requires": { - "file-type": "^10.10.0", - "get-stdin": "^6.0.0", - "meow": "^5.0.0", - "open": "^6.1.0", - "temp-write": "^3.4.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - }, - "meow": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", - "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - } - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - } - } - }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - } - } - }, - "option-chain": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", - "integrity": "sha1-k41zvU4Xg/lI00AjZEraI2aeMPI=", - "dev": true - }, - "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "wordwrap": "~1.0.0" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", - "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", - "dev": true - }, - "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "package-hash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-2.0.0.tgz", - "integrity": "sha1-eK4ybIngWk2BO2hgGXevBcANKg0=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "lodash.flattendeep": "^4.4.0", - "md5-hex": "^2.0.0", - "release-zalgo": "^1.0.0" - } - }, - "package-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", - "dev": true, - "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "dev": true, - "requires": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parse-ms": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", - "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" - }, - "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", - "dev": true, - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "requires": { - "pify": "^3.0.0" - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - }, - "pinkie": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", - "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", - "dev": true - }, - "pinkie-promise": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", - "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", - "dev": true, - "requires": { - "pinkie": "^1.0.0" - } - }, - "pkg-conf": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", - "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "load-json-file": "^4.0.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - } - } - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - } - } - }, - "plur": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", - "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", - "dev": true, - "requires": { - "irregular-plurals": "^1.0.0" - } - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true - }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", - "dev": true - }, - "pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" - }, - "pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" - }, - "pretty-ms": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.2.0.tgz", - "integrity": "sha512-ZypexbfVUGTFxb0v+m1bUyy92DHe5SyYlnyY0msyms5zd3RwyvNgyxZZsXXgoyzlxjx5MiqtXUdhUfvQbe0A2Q==", - "dev": true, - "requires": { - "parse-ms": "^1.0.0" - }, - "dependencies": { - "parse-ms": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", - "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", - "dev": true - } - } - }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "psl": { - "version": "1.1.31", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", - "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==" - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" - }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", - "dev": true - }, - "random-int": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", - "integrity": "sha1-5qLtNEisnGZGoGV0Q7HBUhWS7Qg=" - }, - "randomatic": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", - "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", - "dev": true, - "requires": { - "is-number": "^4.0.0", - "kind-of": "^6.0.0", - "math-random": "^1.0.1" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - }, - "dependencies": { - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - } - } - }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true, - "requires": { - "is-equal-shallow": "^0.1.3" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", - "dev": true - }, - "regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "registry-auth-token": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", - "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", - "dev": true, - "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", - "dev": true, - "requires": { - "rc": "^1.0.1" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - } - }, - "release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "replacestream": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", - "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", - "requires": { - "escape-string-regexp": "^1.0.3", - "object-assign": "^4.0.1", - "readable-stream": "^2.0.2" - } - }, - "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "require-precompiled": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", - "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", - "dev": true - }, - "requizzle": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", - "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", - "requires": { - "underscore": "~1.6.0" - }, - "dependencies": { - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" - } - } - }, - "resolve": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.0.tgz", - "integrity": "sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==", - "requires": { - "path-parse": "^1.0.6" - } - }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" - } - }, - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "requires": { - "glob": "^7.1.3" - } - }, - "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } - }, - "rxjs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.1.tgz", - "integrity": "sha512-y0j31WJc83wPu31vS1VlAFW5JGrnGC+j+TtGAa1fRQphy48+fDYiDmX8tjGloToEsMkxnouOg/1IzXGKkJnZMg==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "semver": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.0.0.tgz", - "integrity": "sha512-0UewU+9rFapKFnlbirLi3byoOuhrSsli/z/ihNnvM24vgF+8sNBiI1LZPBSH9wJKUwaUbw+s3hToDLCXkrghrQ==" - }, - "semver-diff": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", - "dev": true, - "requires": { - "semver": "^5.0.3" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, - "serialize-error": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", - "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "sinon": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.3.2.tgz", - "integrity": "sha512-thErC1z64BeyGiPvF8aoSg0LEnptSaWE7YhdWWbWXgelOyThent7uKOnnEh9zBxDbKixtr5dEko+ws1sZMuFMA==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.4.0", - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.3.1", - "diff": "^3.5.0", - "lolex": "^4.0.1", - "nise": "^1.4.10", - "supports-color": "^5.5.0" - } - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" - }, - "slice-ansi": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - } - } - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - }, - "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", - "requires": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-support": { - "version": "0.5.12", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", - "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" - }, - "spawn-wrap": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.2.tgz", - "integrity": "sha512-vMwR3OmmDhnxCVxM8M+xO/FtIp6Ju/mNaDfCMMW7FDcLRTPFWUswec4LXJHTJE2hwTI9O0YBfygu4DalFl7Ylg==", - "dev": true, - "requires": { - "foreground-child": "^1.5.6", - "mkdirp": "^0.5.0", - "os-homedir": "^1.0.1", - "rimraf": "^2.6.2", - "signal-exit": "^3.0.2", - "which": "^1.3.0" - } - }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==" - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", - "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==" - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "stack-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", - "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", - "dev": true - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - }, - "strip-bom-buf": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", - "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", - "dev": true, - "requires": { - "is-utf8": "^0.2.1" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "supertap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", - "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "indent-string": "^3.2.0", - "js-yaml": "^3.10.0", - "serialize-error": "^2.1.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - } - } - }, - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "dev": true - }, - "table": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/table/-/table-5.2.3.tgz", - "integrity": "sha512-N2RsDAMvDLvYwFcwbPyF3VmVSSkuF+G1e+8inhBLtHpvwXGw4QRPEZhihQNeEN0i1up6/f6ObCJXNdlRG3YVyQ==", - "dev": true, - "requires": { - "ajv": "^6.9.1", - "lodash": "^4.17.11", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - } - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "taffydb": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" - }, - "tap-nyan": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", - "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "duplexer2": "^0.1.4", - "supports-color": "^3.1.2", - "tap-parser": "^3.0.3" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "dependencies": { - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", - "dev": true - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "dev": true, - "requires": { - "has-flag": "^1.0.0" - } - } - } - }, - "tap-parser": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", - "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", - "dev": true, - "requires": { - "events-to-array": "^1.0.1", - "js-yaml": "^3.2.7", - "readable-stream": "^2" - } - }, - "temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", - "dev": true - }, - "temp-write": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz", - "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "is-stream": "^1.1.0", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^3.0.1" - }, - "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dev": true, - "requires": { - "execa": "^0.7.0" - } - }, - "test-exclude": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.2.tgz", - "integrity": "sha512-N2pvaLpT8guUpb5Fe1GJlmvmzH3x+DAKmmyEQmFP792QcLYoGE1syxztSvPD1V8yPe6VrcCt6YGQVjSRjCASsA==", - "dev": true, - "requires": { - "glob": "^7.1.3", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^2.0.0" - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "time-zone": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", - "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", - "dev": true - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "dev": true - }, - "tmp": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", - "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", - "requires": { - "rimraf": "^2.6.3" - } - }, - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - } - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, - "trim-off-newlines": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", - "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", - "dev": true - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, - "tslib": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", - "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "uglify-js": { - "version": "3.5.6", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.6.tgz", - "integrity": "sha512-YDKRX8F0Y+Jr7LhoVk0n4G7ltR3Y7qFAj+DtVBthlOgCcIj1hyMigCfousVfn9HKmvJ+qiFlLDwaHx44/e5ZKw==", - "dev": true, - "optional": true, - "requires": { - "commander": "~2.20.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", - "dev": true, - "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "uid2": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", - "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", - "dev": true - }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" - }, - "underscore-contrib": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", - "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", - "requires": { - "underscore": "1.6.0" - }, - "dependencies": { - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" - } - } - }, - "union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } - } - }, - "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", - "dev": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "unique-temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", - "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", - "dev": true, - "requires": { - "mkdirp": "^0.5.1", - "os-tmpdir": "^1.0.1", - "uid2": "0.0.3" - } - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" - } - } - }, - "unzip-response": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", - "dev": true - }, - "update-notifier": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", - "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", - "dev": true, - "requires": { - "boxen": "^1.2.1", - "chalk": "^2.0.1", - "configstore": "^3.0.0", - "import-lazy": "^2.1.0", - "is-ci": "^1.0.10", - "is-installed-globally": "^0.1.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "requires": { - "punycode": "^2.1.0" - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" - }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "dev": true, - "requires": { - "prepend-http": "^1.0.1" - } - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "well-known-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-1.0.0.tgz", - "integrity": "sha1-c8eK6Bp3Jqj6WY4ogIAcixYiVRg=", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "widest-line": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", - "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", - "dev": true, - "requires": { - "string-width": "^2.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" - }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", - "dev": true, - "requires": { - "mkdirp": "^0.5.1" - } - }, - "write-file-atomic": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.2.tgz", - "integrity": "sha512-s0b6vB3xIVRLWywa6X9TOMA7k9zio0TMOsl9ZnDkliA/cfJlpHXAscj0gbHVJiTdIuAYpIyqS5GW91fqm6gG5g==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "write-json-file": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", - "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", - "dev": true, - "requires": { - "detect-indent": "^5.0.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "sort-keys": "^2.0.0", - "write-file-atomic": "^2.0.0" - }, - "dependencies": { - "detect-indent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", - "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", - "dev": true - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "write-pkg": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.2.0.tgz", - "integrity": "sha512-tX2ifZ0YqEFOF1wjRW2Pk93NLsj02+n1UP5RvO6rCs0K6R2g1padvf006cY74PQJKMGS2r42NK7FD0dG6Y6paw==", - "dev": true, - "requires": { - "sort-keys": "^2.0.0", - "write-json-file": "^2.2.0" - } - }, - "xdg-basedir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", - "dev": true - }, - "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - } - }, - "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" - }, - "xmlcreate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", - "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, - "yargs": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.2.tgz", - "integrity": "sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "os-locale": "^3.1.0", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "yargs-parser": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", - "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - } - } - }, - "yazl": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", - "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", - "requires": { - "buffer-crc32": "~0.2.3" - } - } - } + "name": "@ui5/project", + "version": "1.0.2", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@ava/babel-plugin-throws-helper": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-2.0.0.tgz", + "integrity": "sha1-L8H+PCEacQcaTsp7j3r1hCzRrnw=", + "dev": true + }, + "@ava/babel-preset-stage-4": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", + "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", + "dev": true, + "requires": { + "babel-plugin-check-es2015-constants": "^6.8.0", + "babel-plugin-syntax-trailing-function-commas": "^6.20.0", + "babel-plugin-transform-async-to-generator": "^6.16.0", + "babel-plugin-transform-es2015-destructuring": "^6.19.0", + "babel-plugin-transform-es2015-function-name": "^6.9.0", + "babel-plugin-transform-es2015-modules-commonjs": "^6.18.0", + "babel-plugin-transform-es2015-parameters": "^6.21.0", + "babel-plugin-transform-es2015-spread": "^6.8.0", + "babel-plugin-transform-es2015-sticky-regex": "^6.8.0", + "babel-plugin-transform-es2015-unicode-regex": "^6.11.0", + "babel-plugin-transform-exponentiation-operator": "^6.8.0", + "package-hash": "^1.2.0" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "package-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", + "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", + "dev": true, + "requires": { + "md5-hex": "^1.3.0" + } + } + } + }, + "@ava/babel-preset-transform-test-files": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-3.0.0.tgz", + "integrity": "sha1-ze0RlqjY2TgaUJJAq5LpGl7Aafc=", + "dev": true, + "requires": { + "@ava/babel-plugin-throws-helper": "^2.0.0", + "babel-plugin-espower": "^2.3.2" + } + }, + "@ava/write-file-atomic": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ava/write-file-atomic/-/write-file-atomic-2.2.0.tgz", + "integrity": "sha512-BTNB3nGbEfJT+69wuqXFr/bQH7Vr7ihx2xGOMNqPgDGhwspoZhiWumDDZNjBy7AScmqS5CELIOGtPVXESyrnDA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + }, + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/generator": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.0.tgz", + "integrity": "sha512-/v5I+a1jhGSKLgZDcmAUZ4K/VePi43eRkUs3yePW1HB1iANOD5tqJXwGSG4BZhSksP8J9ejSlwGeTiiOFZOrXQ==", + "dev": true, + "requires": { + "@babel/types": "^7.4.0", + "jsesc": "^2.5.1", + "lodash": "^4.17.11", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.0.tgz", + "integrity": "sha512-7Cuc6JZiYShaZnybDmfwhY4UYHzI6rlqhWjaIqbsJGsIqPimEYy5uh3akSRLMg65LSdSEnJ8a8/bWQN6u2oMGw==", + "dev": true, + "requires": { + "@babel/types": "^7.4.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + } + } + }, + "@babel/parser": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.3.tgz", + "integrity": "sha512-gxpEUhTS1sGA63EGQGuA+WESPR/6tz6ng7tSHFCmaTJK/cGK8y37cBTspX+U2xCAue2IQVvF6Z0oigmjwD8YGQ==", + "dev": true + }, + "@babel/template": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.0.tgz", + "integrity": "sha512-SOWwxxClTTh5NdbbYZ0BmaBVzxzTh2tO/TeLTbF6MO6EzVhHTnff8CdBXx3mEtazFBoysmEM6GU/wF+SuSx4Fw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.4.0", + "@babel/types": "^7.4.0" + } + }, + "@babel/traverse": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.3.tgz", + "integrity": "sha512-HmA01qrtaCwwJWpSKpA948cBvU5BrmviAief/b3AVw936DtcdsTexlbyzNuDnthwhOQ37xshn7hvQaEQk7ISYQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.4.0", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/types": "^7.4.0", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.11" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "globals": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", + "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.0.tgz", + "integrity": "sha512-aPvkXyU2SPOnztlgo8n9cEiXW755mgyvueUPcpStqdzoSPm0fjO0vQBjLkt3JKJW7ufikfcnMTTPsN1xaTsBPA==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.11", + "to-fast-properties": "^2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + } + } + }, + "@concordance/react": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", + "integrity": "sha512-htrsRaQX8Iixlsek8zQU7tE8wcsTQJ5UhZkSPEA8slCDAisKpC/2VgU/ucPn32M5/LjGGXRaUEKvEw1Wiuu4zQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1" + } + }, + "@ladjs/time-require": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@ladjs/time-require/-/time-require-0.1.4.tgz", + "integrity": "sha512-weIbJqTMfQ4r1YX85u54DKfjLZs2jwn1XZ6tIOP/pFgMwhIN5BAtaCp/1wn9DzyLsDR9tW0R2NIePcVJ45ivQQ==", + "dev": true, + "requires": { + "chalk": "^0.4.0", + "date-time": "^0.1.1", + "pretty-ms": "^0.2.1", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "dev": true + }, + "chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "dev": true, + "requires": { + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" + } + }, + "pretty-ms": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", + "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", + "dev": true, + "requires": { + "parse-ms": "^0.1.0" + } + }, + "strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "dev": true + } + } + }, + "@sinonjs/commons": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz", + "integrity": "sha512-9jHK3YF/8HtJ9wCAbG+j8cD0i0+ATS9A7gXFqS36TblLPNy6rEEc+SB0imo91eCboGaBYGV/MT1/br/J+EE7Tw==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/formatio": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz", + "integrity": "sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" + } + }, + "@sinonjs/samsam": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.1.tgz", + "integrity": "sha512-wRSfmyd81swH0hA1bxJZJ57xr22kC07a1N4zuIL47yTS04bDk6AoCkczcqHEjcRPmJ+FruGJ9WBQiJwMtIElFw==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.0.2", + "array-from": "^2.1.1", + "lodash": "^4.17.11" + } + }, + "@sinonjs/text-encoding": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", + "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "dev": true + }, + "@ui5/builder": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.2.0.tgz", + "integrity": "sha512-9TtyQUCI7IwYP3D5w3HIjQVNKwYs3aPXXjdkGfKf7Zipsnc1NgAAyRSOGIK02GPxvmltFDgzMXX85SNwOuP7hg==", + "requires": { + "@ui5/fs": "^1.0.2", + "@ui5/logger": "^1.0.1", + "cheerio": "^0.22.0", + "escodegen": "^1.11.1", + "escope": "^3.6.0", + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "globby": "^7.1.1", + "graceful-fs": "^4.1.15", + "jsdoc": "^3.5.5", + "less-openui5": "^0.6.0", + "make-dir": "^2.1.0", + "pretty-data": "^0.40.0", + "pretty-hrtime": "^1.0.3", + "replacestream": "^4.0.3", + "semver": "^6.0.0", + "tmp": "0.1.0", + "uglify-es": "^3.2.2", + "xml2js": "^0.4.17", + "yazl": "^2.5.1" + } + }, + "@ui5/fs": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.2.tgz", + "integrity": "sha512-8Fc4iqpo/sm2KMGV0MiesqWPoCVDf9OnWVWqdoJ0c7GwAh6olt2EDPtnjtQ0tLMW2Uovdh/Nz+S1qecY0Yb1GA==", + "requires": { + "@ui5/logger": "^1.0.1", + "clone": "^2.1.0", + "dir-glob": "2.0.0", + "globby": "^7.1.1", + "graceful-fs": "^4.1.15", + "make-dir": "^2.1.0", + "micromatch": "^3.1.4", + "minimatch": "^3.0.3", + "mock-require": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^1.0.0" + } + }, + "@ui5/logger": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", + "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", + "requires": { + "npmlog": "^4.1.2" + } + }, + "acorn": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", + "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", + "dev": true + }, + "acorn-jsx": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", + "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", + "dev": true + }, + "ajv": { + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "optional": true + }, + "ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "dev": true, + "requires": { + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "requires": { + "micromatch": "^2.1.5", + "normalize-path": "^2.0.0" + }, + "dependencies": { + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1" + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "^0.1.0" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" + } + } + } + }, + "append-transform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", + "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "dev": true, + "requires": { + "default-require-extensions": "^2.0.0" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "arr-exclude": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", + "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + }, + "array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + }, + "auto-bind": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.2.1.tgz", + "integrity": "sha512-/W9yj1yKmBLwpexwAujeD9YHwYmRuWFGV8HWE7smQab797VeHa4/cnE2NFeDhA+E+5e/OGBI8763EhLjfZ/MXA==", + "dev": true + }, + "ava": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-0.25.0.tgz", + "integrity": "sha512-4lGNJCf6xL8SvsKVEKxEE46se7JAUIAZoKHw9itTQuwcsydhpAMkBs5gOOiWiwt0JKNIuXWc2/r4r8ZdcNrBEw==", + "dev": true, + "requires": { + "@ava/babel-preset-stage-4": "^1.1.0", + "@ava/babel-preset-transform-test-files": "^3.0.0", + "@ava/write-file-atomic": "^2.2.0", + "@concordance/react": "^1.0.0", + "@ladjs/time-require": "^0.1.4", + "ansi-escapes": "^3.0.0", + "ansi-styles": "^3.1.0", + "arr-flatten": "^1.0.1", + "array-union": "^1.0.1", + "array-uniq": "^1.0.2", + "arrify": "^1.0.0", + "auto-bind": "^1.1.0", + "ava-init": "^0.2.0", + "babel-core": "^6.17.0", + "babel-generator": "^6.26.0", + "babel-plugin-syntax-object-rest-spread": "^6.13.0", + "bluebird": "^3.0.0", + "caching-transform": "^1.0.0", + "chalk": "^2.0.1", + "chokidar": "^1.4.2", + "clean-stack": "^1.1.1", + "clean-yaml-object": "^0.1.0", + "cli-cursor": "^2.1.0", + "cli-spinners": "^1.0.0", + "cli-truncate": "^1.0.0", + "co-with-promise": "^4.6.0", + "code-excerpt": "^2.1.1", + "common-path-prefix": "^1.0.0", + "concordance": "^3.0.0", + "convert-source-map": "^1.5.1", + "core-assert": "^0.2.0", + "currently-unhandled": "^0.4.1", + "debug": "^3.0.1", + "dot-prop": "^4.1.0", + "empower-core": "^0.6.1", + "equal-length": "^1.0.0", + "figures": "^2.0.0", + "find-cache-dir": "^1.0.0", + "fn-name": "^2.0.0", + "get-port": "^3.0.0", + "globby": "^6.0.0", + "has-flag": "^2.0.0", + "hullabaloo-config-manager": "^1.1.0", + "ignore-by-default": "^1.0.0", + "import-local": "^0.1.1", + "indent-string": "^3.0.0", + "is-ci": "^1.0.7", + "is-generator-fn": "^1.0.0", + "is-obj": "^1.0.0", + "is-observable": "^1.0.0", + "is-promise": "^2.1.0", + "last-line-stream": "^1.0.0", + "lodash.clonedeepwith": "^4.5.0", + "lodash.debounce": "^4.0.3", + "lodash.difference": "^4.3.0", + "lodash.flatten": "^4.2.0", + "loud-rejection": "^1.2.0", + "make-dir": "^1.0.0", + "matcher": "^1.0.0", + "md5-hex": "^2.0.0", + "meow": "^3.7.0", + "ms": "^2.0.0", + "multimatch": "^2.1.0", + "observable-to-promise": "^0.5.0", + "option-chain": "^1.0.0", + "package-hash": "^2.0.0", + "pkg-conf": "^2.0.0", + "plur": "^2.0.0", + "pretty-ms": "^3.0.0", + "require-precompiled": "^0.1.0", + "resolve-cwd": "^2.0.0", + "safe-buffer": "^5.1.1", + "semver": "^5.4.1", + "slash": "^1.0.0", + "source-map-support": "^0.5.0", + "stack-utils": "^1.0.1", + "strip-ansi": "^4.0.0", + "strip-bom-buf": "^1.0.0", + "supertap": "^1.0.0", + "supports-color": "^5.0.0", + "trim-off-newlines": "^1.0.1", + "unique-temp-dir": "^1.0.0", + "update-notifier": "^2.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + }, + "dependencies": { + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "ava-init": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", + "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", + "dev": true, + "requires": { + "arr-exclude": "^1.0.0", + "execa": "^0.7.0", + "has-yarn": "^1.0.0", + "read-pkg-up": "^2.0.0", + "write-pkg": "^3.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + } + } + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-generator": "^6.26.0", + "babel-helpers": "^6.24.1", + "babel-messages": "^6.23.0", + "babel-register": "^6.26.0", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "convert-source-map": "^1.5.1", + "debug": "^2.6.9", + "json5": "^0.5.1", + "lodash": "^4.17.4", + "minimatch": "^3.0.4", + "path-is-absolute": "^1.0.1", + "private": "^0.1.8", + "slash": "^1.0.0", + "source-map": "^0.5.7" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "requires": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + } + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true, + "requires": { + "babel-helper-explode-assignable-expression": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "lodash": "^4.17.4" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-espower": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.4.0.tgz", + "integrity": "sha512-/+SRpy7pKgTI28oEHfn1wkuM5QFAdRq8WNsOOih1dVrdV6A/WbNbRZyl0eX5eyDgtb0lOE27PeDFuCX2j8OxVg==", + "dev": true, + "requires": { + "babel-generator": "^6.1.0", + "babylon": "^6.1.0", + "call-matcher": "^1.0.0", + "core-js": "^2.0.0", + "espower-location-detector": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.1.1" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", + "dev": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "^6.24.1", + "babel-plugin-syntax-async-functions": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "dev": true, + "requires": { + "babel-helper-function-name": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.2", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", + "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", + "dev": true, + "requires": { + "babel-plugin-transform-strict-mode": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-types": "^6.26.0" + } + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "dev": true, + "requires": { + "babel-helper-call-delegate": "^6.24.1", + "babel-helper-get-function-arity": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1", + "babel-traverse": "^6.24.1", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "dev": true, + "requires": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "dev": true, + "requires": { + "babel-helper-regex": "^6.24.1", + "babel-runtime": "^6.22.0", + "regexpu-core": "^2.0.0" + } + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", + "babel-plugin-syntax-exponentiation-operator": "^6.8.0", + "babel-runtime": "^6.22.0" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "requires": { + "babel-core": "^6.26.0", + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "home-or-tmp": "^2.0.0", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "source-map-support": "^0.4.15" + }, + "dependencies": { + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "^0.5.6" + } + } + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "babylon": { + "version": "7.0.0-beta.19", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", + "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "bluebird": { + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.4.tgz", + "integrity": "sha512-FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw==" + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dev": true, + "requires": { + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "buf-compare": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", + "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", + "dev": true + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "caching-transform": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", + "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", + "dev": true, + "requires": { + "md5-hex": "^1.2.0", + "mkdirp": "^0.5.1", + "write-file-atomic": "^1.1.4" + }, + "dependencies": { + "md5-hex": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", + "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "write-file-atomic": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", + "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "slide": "^1.1.5" + } + } + } + }, + "call-matcher": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.1.0.tgz", + "integrity": "sha512-IoQLeNwwf9KTNbtSA7aEBb1yfDbdnzwjCetjkC8io5oGeOmK2CBNdg0xr+tadRYKO0p7uQyZzvon0kXlZbvGrw==", + "dev": true, + "requires": { + "core-js": "^2.0.0", + "deep-equal": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.0.0" + } + }, + "call-signature": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", + "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", + "dev": true + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + } + }, + "capture-stack-trace": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", + "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "catharsis": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", + "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", + "requires": { + "underscore-contrib": "~0.3.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + } + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true, + "requires": { + "anymatch": "^1.3.0", + "async-each": "^1.0.0", + "fsevents": "^1.0.0", + "glob-parent": "^2.0.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^2.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0" + } + }, + "ci-info": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", + "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-css": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", + "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=", + "optional": true, + "requires": { + "commander": "2.0.x" + } + }, + "clean-stack": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", + "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", + "dev": true + }, + "clean-yaml-object": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", + "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", + "dev": true + }, + "cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-spinners": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", + "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", + "dev": true + }, + "cli-truncate": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", + "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", + "dev": true, + "requires": { + "slice-ansi": "^1.0.0", + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" + }, + "co-with-promise": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", + "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", + "dev": true, + "requires": { + "pinkie-promise": "^1.0.0" + } + }, + "code-excerpt": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", + "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", + "dev": true, + "requires": { + "convert-to-spaces": "^1.0.1" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "combined-stream": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", + "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", + "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", + "optional": true + }, + "comment-parser": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.4.tgz", + "integrity": "sha512-0h7W6Y1Kb6zKQMJqdX41C5qf9ITCVIsD2qP2RaqDF3GFkXFrmuAuv5zUOuo19YzyC9scjBNpqzuaRQ2Sy5pxMQ==", + "dev": true + }, + "common-path-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", + "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concordance": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", + "integrity": "sha512-CZBzJ3/l5QJjlZM20WY7+5GP5pMTw+1UEbThcpMw8/rojsi5sBCiD8ZbBLtD+jYpRGAkwuKuqk108c154V9eyQ==", + "dev": true, + "requires": { + "date-time": "^2.1.0", + "esutils": "^2.0.2", + "fast-diff": "^1.1.1", + "function-name-support": "^0.2.0", + "js-string-escape": "^1.0.1", + "lodash.clonedeep": "^4.5.0", + "lodash.flattendeep": "^4.4.0", + "lodash.merge": "^4.6.0", + "md5-hex": "^2.0.0", + "semver": "^5.3.0", + "well-known-symbols": "^1.0.0" + }, + "dependencies": { + "date-time": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", + "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", + "dev": true, + "requires": { + "time-zone": "^1.0.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "configstore": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", + "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "convert-source-map": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", + "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "convert-to-spaces": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", + "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, + "core-assert": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", + "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", + "dev": true, + "requires": { + "buf-compare": "^1.0.0", + "is-error": "^2.2.0" + } + }, + "core-js": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz", + "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "coveralls": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.3.tgz", + "integrity": "sha512-viNfeGlda2zJr8Gj1zqXpDMRjw9uM54p7wzZdvLRyOgnAfCe974Dq4veZkjJdxQXbmdppu6flEajFYseHYaUhg==", + "dev": true, + "requires": { + "growl": "~> 1.10.0", + "js-yaml": "^3.11.0", + "lcov-parse": "^0.0.10", + "log-driver": "^1.2.7", + "minimist": "^1.2.0", + "request": "^2.86.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "cp-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", + "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "make-dir": "^2.0.0", + "nested-error-stacks": "^2.0.0", + "pify": "^4.0.1", + "safe-buffer": "^5.0.1" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + } + } + }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "dev": true, + "requires": { + "capture-stack-trace": "^1.0.0" + } + }, + "cross-env": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", + "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.5", + "is-windows": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true + }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "requires": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "requires": { + "es5-ext": "^0.10.9" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-time": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", + "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + } + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + }, + "default-require-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", + "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "dev": true, + "requires": { + "strip-bom": "^3.0.0" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "dir-glob": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", + "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "requires": { + "arrify": "^1.0.1", + "path-type": "^3.0.0" + } + }, + "docdash": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.1.0.tgz", + "integrity": "sha512-sgcessH25PU6CIoJGeOjDCv9CLi6Z6TLwc553s/O+DKCnIRXT58e4CG3WsgI8Zea5ZQcjsfa8u4IwKqR2TKTxQ==", + "dev": true + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "requires": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dot-prop": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", + "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, + "requires": { + "readable-stream": "^2.0.2" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "empower-core": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", + "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", + "dev": true, + "requires": { + "call-signature": "0.0.2", + "core-js": "^2.0.0" + } + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "equal-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", + "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", + "dev": true + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es5-ext": { + "version": "0.10.49", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.49.tgz", + "integrity": "sha512-3NMEhi57E31qdzmYp2jwRArIUsj1HI/RxbQ4bgnSB+AIKIxsAmTiK83bYMifIcpWvEc3P1X30DhUKOqEtF/kvg==", + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.1", + "next-tick": "^1.0.0" + } + }, + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "es6-weak-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", + "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "requires": { + "d": "1", + "es5-ext": "^0.10.14", + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "escodegen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", + "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true + } + } + }, + "escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "requires": { + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", + "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.9.1", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^4.0.3", + "eslint-utils": "^1.3.1", + "eslint-visitor-keys": "^1.0.0", + "espree": "^5.0.1", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob": "^7.1.2", + "globals": "^11.7.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^6.2.2", + "js-yaml": "^3.13.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.11", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "path-is-inside": "^1.0.2", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^5.5.1", + "strip-ansi": "^4.0.0", + "strip-json-comments": "^2.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "globals": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", + "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "dev": true + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "eslint-config-google": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.12.0.tgz", + "integrity": "sha512-SHDM3nIRCJBACjf8c/H6FvCwRmKbphESNl3gJFBNbw4KYDLCONB3ABYLXDGF+iaVP9XSTND/Q5/PuGoFkp4xbg==", + "dev": true + }, + "eslint-plugin-jsdoc": { + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.3.tgz", + "integrity": "sha512-lKOaphUUzv0qKJrAdEwQGEWcNN2Foae5W111u1ASKQeliyJkKXCVxia0dakATuI/s2ojr6Q3FVzWwT6uE1icBg==", + "dev": true, + "requires": { + "comment-parser": "^0.5.4", + "jsdoctypeparser": "3.1.0", + "lodash": "^4.17.11" + } + }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", + "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", + "dev": true + }, + "eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", + "dev": true + }, + "espower-location-detector": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", + "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", + "dev": true, + "requires": { + "is-url": "^1.2.1", + "path-is-absolute": "^1.0.0", + "source-map": "^0.5.0", + "xtend": "^4.0.0" + } + }, + "espree": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", + "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", + "dev": true, + "requires": { + "acorn": "^6.0.7", + "acorn-jsx": "^5.0.0", + "eslint-visitor-keys": "^1.0.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "espurify": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.1.tgz", + "integrity": "sha512-ZDko6eY/o+D/gHCWyHTU85mKDgYcS4FJj7S+YD6WIInm7GQ6AnOjmcL4+buFV/JOztVLELi/7MmuGU5NHta0Mg==", + "dev": true, + "requires": { + "core-js": "^2.0.0" + } + }, + "esquery": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "dev": true, + "requires": { + "estraverse": "^4.0.0" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "events-to-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", + "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", + "dev": true + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "requires": { + "fill-range": "^2.1.0" + }, + "dependencies": { + "fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "requires": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + } + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "external-editor": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", + "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "dependencies": { + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" + }, + "fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "requires": { + "flat-cache": "^2.0.1" + } + }, + "file-type": { + "version": "10.11.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", + "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", + "dev": true + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "requires": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + } + }, + "flatted": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", + "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", + "dev": true + }, + "fn-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", + "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", + "dev": true + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "foreground-child": { + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", + "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", + "dev": true, + "requires": { + "cross-spawn": "^4", + "signal-exit": "^3.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", + "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + } + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.8.tgz", + "integrity": "sha512-tPvHgPGB7m40CZ68xqFGkKuzN+RnpGmSV+hgeKxhRpbxdqKXUFJGC3yonBOLzQBcJyGpdZFDfCsdOC2KFsXzeA==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true, + "optional": true + }, + "minipass": { + "version": "2.3.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.3.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^4.1.0", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.12.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.7.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "yallist": { + "version": "3.0.3", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "function-name-support": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", + "integrity": "sha1-VdO/qm6v1QWlD5vIH99XVkoLsHE=", + "dev": true + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + }, + "get-port": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "^2.0.0" + } + }, + "global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "dev": true, + "requires": { + "ini": "^1.3.4" + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "globby": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", + "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "requires": { + "array-union": "^1.0.1", + "dir-glob": "^2.0.0", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + } + }, + "got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "dev": true, + "requires": { + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "handlebars": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", + "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", + "dev": true, + "requires": { + "neo-async": "^2.6.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true, + "optional": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "uglify-js": { + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.8.tgz", + "integrity": "sha512-GFSjB1nZIzoIq70qvDRtWRORHX3vFkAnyK/rDExc0BN7r9+/S+Voz3t/fwJuVfjppAMz+ceR2poE7tkhvnVwQQ==", + "dev": true, + "optional": true, + "requires": { + "commander": "~2.20.0", + "source-map": "~0.6.1" + } + } + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "has-yarn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", + "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", + "dev": true + }, + "hasha": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", + "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", + "dev": true, + "requires": { + "is-stream": "^1.0.1" + } + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.1" + } + }, + "hosted-git-info": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==" + }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz", + "integrity": "sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "hullabaloo-config-manager": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/hullabaloo-config-manager/-/hullabaloo-config-manager-1.1.1.tgz", + "integrity": "sha512-ztKnkZV0TmxnumCDHHgLGNiDnotu4EHCp9YMkznWuo4uTtCyJ+cu+RNcxUeXYKTllpvLFWnbfWry09yzszgg+A==", + "dev": true, + "requires": { + "dot-prop": "^4.1.0", + "es6-error": "^4.0.2", + "graceful-fs": "^4.1.11", + "indent-string": "^3.1.0", + "json5": "^0.5.1", + "lodash.clonedeep": "^4.5.0", + "lodash.clonedeepwith": "^4.5.0", + "lodash.isequal": "^4.5.0", + "lodash.merge": "^4.6.0", + "md5-hex": "^2.0.0", + "package-hash": "^2.0.0", + "pkg-dir": "^2.0.0", + "resolve-from": "^3.0.0", + "safe-buffer": "^5.0.1" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" + }, + "ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", + "dev": true + }, + "import-fresh": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", + "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + } + } + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, + "import-local": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", + "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", + "dev": true, + "requires": { + "pkg-dir": "^2.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "inquirer": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.3.1.tgz", + "integrity": "sha512-MmL624rfkFt4TG9y/Jvmt8vdmOo836U7Y0Hxr2aFk3RelZEGX4Igk0KabWrcaaZaTv9uzglOqWh1Vly+FAWAXA==", + "dev": true, + "requires": { + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^2.0.0", + "lodash": "^4.17.11", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + } + } + } + } + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "irregular-plurals": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz", + "integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-ci": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", + "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", + "dev": true, + "requires": { + "ci-info": "^1.5.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "requires": { + "is-primitive": "^2.0.0" + } + }, + "is-error": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", + "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-generator-fn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", + "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "is-installed-globally": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", + "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "dev": true, + "requires": { + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" + } + }, + "is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-observable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", + "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", + "dev": true, + "requires": { + "symbol-observable": "^1.1.0" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "^3.0.1" + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "dev": true + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-LXTBICkMARVgo579kWDm8SqfB6nvSDKNqIOBEjmJRnL04JvoMHCYGWaMddQnseJYtkEuEvO/sIcOxPLk9gERug==", + "dev": true + }, + "istanbul-lib-hook": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.6.tgz", + "integrity": "sha512-829DKONApZ7UCiPXcOYWSgkFXa4+vNYoNOt3F+4uDJLKL1OotAoVwvThoEj1i8jmOj7odbYcR3rnaHu+QroaXg==", + "dev": true, + "requires": { + "append-transform": "^1.0.0" + } + }, + "istanbul-lib-instrument": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.2.0.tgz", + "integrity": "sha512-06IM3xShbNW4NgZv5AP4QH0oHqf1/ivFo8eFys0ZjPXHGldHJQWb3riYOKXqmOqfxXBfxu4B+g/iuhOPZH0RJg==", + "dev": true, + "requires": { + "@babel/generator": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "istanbul-lib-coverage": "^2.0.4", + "semver": "^6.0.0" + } + }, + "istanbul-lib-report": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.7.tgz", + "integrity": "sha512-wLH6beJBFbRBLiTlMOBxmb85cnVM1Vyl36N48e4e/aTKSM3WbOx7zbVIH1SQ537fhhsPbX0/C5JB4qsmyRXXyA==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^2.0.4", + "make-dir": "^2.1.0", + "supports-color": "^6.0.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.5.tgz", + "integrity": "sha512-eDhZ7r6r1d1zQPVZehLc3D0K14vRba/eBYkz3rw16DLOrrTzve9RmnkcwrrkWVgO1FL3EK5knujVe5S8QHE9xw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.4", + "make-dir": "^2.1.0", + "rimraf": "^2.6.2", + "source-map": "^0.6.1" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "istanbul-reports": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.3.tgz", + "integrity": "sha512-T6EbPuc8Cb620LWAYyZ4D8SSn06dY9i1+IgUX2lTH8gbwflMc9Obd33zHTyNX653ybjpamAHS9toKS3E6cGhTw==", + "dev": true, + "requires": { + "handlebars": "^4.1.0" + } + }, + "js-string-escape": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", + "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", + "dev": true + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "js2xmlparser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", + "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", + "requires": { + "xmlcreate": "^1.0.1" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "jsdoc": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", + "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", + "requires": { + "babylon": "7.0.0-beta.19", + "bluebird": "~3.5.0", + "catharsis": "~0.8.9", + "escape-string-regexp": "~1.0.5", + "js2xmlparser": "~3.0.0", + "klaw": "~2.0.0", + "marked": "~0.3.6", + "mkdirp": "~0.5.1", + "requizzle": "~0.2.1", + "strip-json-comments": "~2.0.1", + "taffydb": "2.6.2", + "underscore": "~1.8.3" + } + }, + "jsdoctypeparser": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-3.1.0.tgz", + "integrity": "sha512-JNbkKpDFqbYjg+IU3FNo7qjX7Opy7CwjHywT32zgAcz/d4lX6Umn5jOHVETUdnNNgGrMk0nEx1gvP0F4M0hzlQ==", + "dev": true + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "just-extend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", + "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "klaw": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", + "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", + "requires": { + "graceful-fs": "^4.1.9" + } + }, + "last-line-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", + "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", + "dev": true, + "requires": { + "through2": "^2.0.0" + } + }, + "latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "dev": true, + "requires": { + "package-json": "^4.0.0" + } + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "lcov-parse": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", + "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", + "dev": true + }, + "less": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", + "integrity": "sha1-cc6J7DC3dLNWfyVMZ5WPLywZO94=", + "requires": { + "clean-css": "2.0.x", + "mime": "1.2.x", + "mkdirp": "~0.3.5", + "request": ">=2.12.0", + "source-map": "0.1.x" + }, + "dependencies": { + "mkdirp": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", + "optional": true + }, + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "less-openui5": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", + "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", + "requires": { + "clone": "^2.1.0", + "css": "^2.2.1", + "less": "1.6.3", + "object-assign": "^4.0.1" + } + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" + }, + "lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.clonedeepwith": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", + "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + }, + "lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", + "dev": true + }, + "lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" + }, + "lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "dev": true + }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" + }, + "lodash.merge": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", + "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==" + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" + }, + "lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" + }, + "lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=" + }, + "lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" + }, + "log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "dev": true + }, + "lolex": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.0.1.tgz", + "integrity": "sha512-UHuOBZ5jjsKuzbB/gRNNW8Vg8f00Emgskdq2kvZxgBJCS0aqquAuXai/SkWORlKeZEiNQWZjFZOqIUcH9LqKCw==", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + } + } + }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "^1.0.0" + } + }, + "marked": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" + }, + "matcher": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", + "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.4" + } + }, + "math-random": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", + "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", + "dev": true + }, + "md5-hex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", + "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", + "dev": true, + "requires": { + "md5-o-matic": "^0.1.1" + } + }, + "md5-o-matic": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", + "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", + "dev": true + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + }, + "dependencies": { + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + } + } + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + } + } + }, + "merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", + "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", + "dev": true, + "requires": { + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", + "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=", + "optional": true + }, + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "requires": { + "mime-db": "1.40.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + }, + "minimist-options": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", + "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + } + }, + "mock-require": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", + "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", + "requires": { + "get-caller-file": "^1.0.2", + "normalize-path": "^2.1.1" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "multimatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", + "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", + "dev": true, + "requires": { + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" + } + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "nan": { + "version": "2.13.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz", + "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "neo-async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz", + "integrity": "sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==", + "dev": true + }, + "nested-error-stacks": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz", + "integrity": "sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug==", + "dev": true + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "nise": { + "version": "1.4.10", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.10.tgz", + "integrity": "sha512-sa0RRbj53dovjc7wombHmVli9ZihXbXCQ2uH3TNm03DyvOSIQbxg+pbqDKrk2oxMK1rtLGVlKxcB9rrc6X5YjA==", + "dev": true, + "requires": { + "@sinonjs/formatio": "^3.1.0", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "lolex": "^2.3.2", + "path-to-regexp": "^1.7.0" + }, + "dependencies": { + "lolex": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", + "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", + "dev": true + } + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + } + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "requires": { + "boolbase": "~1.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "nyc": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.0.0.tgz", + "integrity": "sha512-R1zC6UZak6pzn5BZQorkSH5GdOGafrwyeja+eimS5Tu+KJ/hCgBc8qA1QWSzxQmT2FDl2lbpqPw7tBDbSvhAHg==", + "dev": true, + "requires": { + "archy": "^1.0.0", + "caching-transform": "^3.0.2", + "convert-source-map": "^1.6.0", + "cp-file": "^6.2.0", + "find-cache-dir": "^2.1.0", + "find-up": "^3.0.0", + "foreground-child": "^1.5.6", + "glob": "^7.1.3", + "istanbul-lib-coverage": "^2.0.4", + "istanbul-lib-hook": "^2.0.6", + "istanbul-lib-instrument": "^3.2.0", + "istanbul-lib-report": "^2.0.7", + "istanbul-lib-source-maps": "^3.0.5", + "istanbul-reports": "^2.2.2", + "make-dir": "^2.1.0", + "merge-source-map": "^1.1.0", + "resolve-from": "^4.0.0", + "rimraf": "^2.6.3", + "signal-exit": "^3.0.2", + "spawn-wrap": "^1.4.2", + "test-exclude": "^5.2.2", + "uuid": "^3.3.2", + "yargs": "^13.2.2", + "yargs-parser": "^13.0.0" + }, + "dependencies": { + "caching-transform": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", + "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", + "dev": true, + "requires": { + "hasha": "^3.0.0", + "make-dir": "^2.0.0", + "package-hash": "^3.0.0", + "write-file-atomic": "^2.4.2" + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "package-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", + "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.15", + "hasha": "^3.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" + } + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + } + } + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "requires": { + "isobject": "^3.0.0" + } + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "requires": { + "isobject": "^3.0.1" + } + }, + "observable-to-promise": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.5.0.tgz", + "integrity": "sha1-yCjw8NxH6fhq+KSXfF1VB2znqR8=", + "dev": true, + "requires": { + "is-observable": "^0.2.0", + "symbol-observable": "^1.0.4" + }, + "dependencies": { + "is-observable": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", + "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", + "dev": true, + "requires": { + "symbol-observable": "^0.2.2" + }, + "dependencies": { + "symbol-observable": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", + "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", + "dev": true + } + } + } + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "open": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/open/-/open-6.2.0.tgz", + "integrity": "sha512-Vxf6HJkwrqmvh9UAID3MnMYXntbTxKLOSfOnO7LJdzPf3NE3KQYFNV0/Lcz2VAndbRFil58XVCyh8tiX11fiYw==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "opn-cli": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.1.0.tgz", + "integrity": "sha512-nVJ9dVb4fEKtmACWxUql+hhQxVWMt7BSRT+6TnB85W3xs5Pgk9sKW3icYeCIwOtOKALBw/6WUCoNmI1+ADfAow==", + "dev": true, + "requires": { + "file-type": "^10.10.0", + "get-stdin": "^6.0.0", + "meow": "^5.0.0", + "open": "^6.1.0", + "temp-write": "^3.4.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "meow": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", + "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0", + "yargs-parser": "^10.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + } + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + } + } + }, + "option-chain": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", + "integrity": "sha1-k41zvU4Xg/lI00AjZEraI2aeMPI=", + "dev": true + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "package-hash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-2.0.0.tgz", + "integrity": "sha1-eK4ybIngWk2BO2hgGXevBcANKg0=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "lodash.flattendeep": "^4.4.0", + "md5-hex": "^2.0.0", + "release-zalgo": "^1.0.0" + } + }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, + "requires": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse-ms": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", + "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "dev": true, + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + }, + "pinkie": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", + "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", + "dev": true + }, + "pinkie-promise": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", + "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", + "dev": true, + "requires": { + "pinkie": "^1.0.0" + } + }, + "pkg-conf": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", + "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "load-json-file": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + } + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + }, + "dependencies": { + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + } + } + }, + "plur": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", + "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", + "dev": true, + "requires": { + "irregular-plurals": "^1.0.0" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, + "pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" + }, + "pretty-ms": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.2.0.tgz", + "integrity": "sha512-ZypexbfVUGTFxb0v+m1bUyy92DHe5SyYlnyY0msyms5zd3RwyvNgyxZZsXXgoyzlxjx5MiqtXUdhUfvQbe0A2Q==", + "dev": true, + "requires": { + "parse-ms": "^1.0.0" + }, + "dependencies": { + "parse-ms": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", + "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", + "dev": true + } + } + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.1.31", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", + "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==" + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + }, + "quick-lru": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", + "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "dev": true + }, + "random-int": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", + "integrity": "sha1-5qLtNEisnGZGoGV0Q7HBUhWS7Qg=" + }, + "randomatic": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", + "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", + "dev": true, + "requires": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "requires": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + }, + "dependencies": { + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + } + } + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "^0.1.3" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true + }, + "regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "dev": true, + "requires": { + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" + } + }, + "registry-auth-token": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", + "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", + "dev": true, + "requires": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true, + "requires": { + "rc": "^1.0.1" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + } + }, + "release-zalgo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "dev": true, + "requires": { + "es6-error": "^4.0.1" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "replacestream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", + "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", + "requires": { + "escape-string-regexp": "^1.0.3", + "object-assign": "^4.0.1", + "readable-stream": "^2.0.2" + } + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "require-precompiled": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", + "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", + "dev": true + }, + "requizzle": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", + "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", + "requires": { + "underscore": "~1.6.0" + }, + "dependencies": { + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" + } + } + }, + "resolve": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.1.tgz", + "integrity": "sha512-KuIe4mf++td/eFb6wkaPbMDnP6kObCaEtIDuHOUED6MNUo4K670KZUHuuvYPZDxNF0WVLw49n06M2m2dXphEzA==", + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "requires": { + "glob": "^7.1.3" + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, + "rxjs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.1.tgz", + "integrity": "sha512-y0j31WJc83wPu31vS1VlAFW5JGrnGC+j+TtGAa1fRQphy48+fDYiDmX8tjGloToEsMkxnouOg/1IzXGKkJnZMg==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "semver": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.0.0.tgz", + "integrity": "sha512-0UewU+9rFapKFnlbirLi3byoOuhrSsli/z/ihNnvM24vgF+8sNBiI1LZPBSH9wJKUwaUbw+s3hToDLCXkrghrQ==" + }, + "semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "dev": true, + "requires": { + "semver": "^5.0.3" + }, + "dependencies": { + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, + "serialize-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", + "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "set-value": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "sinon": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.3.2.tgz", + "integrity": "sha512-thErC1z64BeyGiPvF8aoSg0LEnptSaWE7YhdWWbWXgelOyThent7uKOnnEh9zBxDbKixtr5dEko+ws1sZMuFMA==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.4.0", + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/samsam": "^3.3.1", + "diff": "^3.5.0", + "lolex": "^4.0.1", + "nise": "^1.4.10", + "supports-color": "^5.5.0" + } + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + }, + "slice-ansi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", + "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + } + } + }, + "slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "sort-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", + "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "dev": true, + "requires": { + "is-plain-obj": "^1.0.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.12", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", + "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, + "spawn-wrap": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.2.tgz", + "integrity": "sha512-vMwR3OmmDhnxCVxM8M+xO/FtIp6Ju/mNaDfCMMW7FDcLRTPFWUswec4LXJHTJE2hwTI9O0YBfygu4DalFl7Ylg==", + "dev": true, + "requires": { + "foreground-child": "^1.5.6", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "which": "^1.3.0" + } + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==" + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", + "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==" + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", + "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + }, + "strip-bom-buf": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", + "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "dev": true, + "requires": { + "is-utf8": "^0.2.1" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "supertap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", + "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "indent-string": "^3.2.0", + "js-yaml": "^3.10.0", + "serialize-error": "^2.1.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + } + } + }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "dev": true + }, + "table": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/table/-/table-5.2.3.tgz", + "integrity": "sha512-N2RsDAMvDLvYwFcwbPyF3VmVSSkuF+G1e+8inhBLtHpvwXGw4QRPEZhihQNeEN0i1up6/f6ObCJXNdlRG3YVyQ==", + "dev": true, + "requires": { + "ajv": "^6.9.1", + "lodash": "^4.17.11", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + } + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "taffydb": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", + "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" + }, + "tap-nyan": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", + "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "duplexer2": "^0.1.4", + "supports-color": "^3.1.2", + "tap-parser": "^3.0.3" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + } + } + }, + "tap-parser": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", + "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", + "dev": true, + "requires": { + "events-to-array": "^1.0.1", + "js-yaml": "^3.2.7", + "readable-stream": "^2" + } + }, + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true + }, + "temp-write": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz", + "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "is-stream": "^1.1.0", + "make-dir": "^1.0.0", + "pify": "^3.0.0", + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, + "requires": { + "execa": "^0.7.0" + } + }, + "test-exclude": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.2.tgz", + "integrity": "sha512-N2pvaLpT8guUpb5Fe1GJlmvmzH3x+DAKmmyEQmFP792QcLYoGE1syxztSvPD1V8yPe6VrcCt6YGQVjSRjCASsA==", + "dev": true, + "requires": { + "glob": "^7.1.3", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^2.0.0" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "time-zone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", + "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", + "dev": true + }, + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true + }, + "tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "requires": { + "rimraf": "^2.6.3" + } + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + } + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "trim-off-newlines": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", + "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "uid2": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", + "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", + "dev": true + }, + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + }, + "underscore-contrib": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", + "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", + "requires": { + "underscore": "1.6.0" + }, + "dependencies": { + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" + } + } + }, + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" + } + } + } + }, + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, + "requires": { + "crypto-random-string": "^1.0.0" + } + }, + "unique-temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", + "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", + "dev": true, + "requires": { + "mkdirp": "^0.5.1", + "os-tmpdir": "^1.0.1", + "uid2": "0.0.3" + } + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + } + } + }, + "unzip-response": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "dev": true + }, + "update-notifier": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", + "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "dev": true, + "requires": { + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-ci": "^1.0.10", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, + "requires": { + "prepend-http": "^1.0.1" + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "well-known-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-1.0.0.tgz", + "integrity": "sha1-c8eK6Bp3Jqj6WY4ogIAcixYiVRg=", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "widest-line": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", + "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", + "dev": true, + "requires": { + "string-width": "^2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "requires": { + "mkdirp": "^0.5.1" + } + }, + "write-file-atomic": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.2.tgz", + "integrity": "sha512-s0b6vB3xIVRLWywa6X9TOMA7k9zio0TMOsl9ZnDkliA/cfJlpHXAscj0gbHVJiTdIuAYpIyqS5GW91fqm6gG5g==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "write-json-file": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", + "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", + "dev": true, + "requires": { + "detect-indent": "^5.0.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "pify": "^3.0.0", + "sort-keys": "^2.0.0", + "write-file-atomic": "^2.0.0" + }, + "dependencies": { + "detect-indent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", + "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", + "dev": true + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + } + } + }, + "write-pkg": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.2.0.tgz", + "integrity": "sha512-tX2ifZ0YqEFOF1wjRW2Pk93NLsj02+n1UP5RvO6rCs0K6R2g1padvf006cY74PQJKMGS2r42NK7FD0dG6Y6paw==", + "dev": true, + "requires": { + "sort-keys": "^2.0.0", + "write-json-file": "^2.2.0" + } + }, + "xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true + }, + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" + } + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + }, + "xmlcreate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", + "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.2.tgz", + "integrity": "sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "os-locale": "^3.1.0", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "yargs-parser": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", + "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + } + } + }, + "yazl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", + "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", + "requires": { + "buffer-crc32": "~0.2.3" + } + } + } } diff --git a/packages/project/package.json b/packages/project/package.json index 24fe63bb272..ea946a2b199 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.10.0" + "resolve": "^1.10.1" }, "devDependencies": { "ava": "^0.25.0", From 2b134af014d937e6c460052dbba94ed7941b97de Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 28 Apr 2019 04:21:06 +0000 Subject: [PATCH 0190/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 58 +++++++++++++++--------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 75be07b4e95..4f41e8575a5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -81,12 +81,12 @@ } }, "@babel/generator": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.0.tgz", - "integrity": "sha512-/v5I+a1jhGSKLgZDcmAUZ4K/VePi43eRkUs3yePW1HB1iANOD5tqJXwGSG4BZhSksP8J9ejSlwGeTiiOFZOrXQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.4.tgz", + "integrity": "sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ==", "dev": true, "requires": { - "@babel/types": "^7.4.0", + "@babel/types": "^7.4.4", "jsesc": "^2.5.1", "lodash": "^4.17.11", "source-map": "^0.5.0", @@ -122,12 +122,12 @@ } }, "@babel/helper-split-export-declaration": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.0.tgz", - "integrity": "sha512-7Cuc6JZiYShaZnybDmfwhY4UYHzI6rlqhWjaIqbsJGsIqPimEYy5uh3akSRLMg65LSdSEnJ8a8/bWQN6u2oMGw==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", + "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", "dev": true, "requires": { - "@babel/types": "^7.4.0" + "@babel/types": "^7.4.4" } }, "@babel/highlight": { @@ -150,34 +150,34 @@ } }, "@babel/parser": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.3.tgz", - "integrity": "sha512-gxpEUhTS1sGA63EGQGuA+WESPR/6tz6ng7tSHFCmaTJK/cGK8y37cBTspX+U2xCAue2IQVvF6Z0oigmjwD8YGQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.4.tgz", + "integrity": "sha512-5pCS4mOsL+ANsFZGdvNLybx4wtqAZJ0MJjMHxvzI3bvIsz6sQvzW8XX92EYIkiPtIvcfG3Aj+Ir5VNyjnZhP7w==", "dev": true }, "@babel/template": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.0.tgz", - "integrity": "sha512-SOWwxxClTTh5NdbbYZ0BmaBVzxzTh2tO/TeLTbF6MO6EzVhHTnff8CdBXx3mEtazFBoysmEM6GU/wF+SuSx4Fw==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz", + "integrity": "sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.4.0", - "@babel/types": "^7.4.0" + "@babel/parser": "^7.4.4", + "@babel/types": "^7.4.4" } }, "@babel/traverse": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.3.tgz", - "integrity": "sha512-HmA01qrtaCwwJWpSKpA948cBvU5BrmviAief/b3AVw936DtcdsTexlbyzNuDnthwhOQ37xshn7hvQaEQk7ISYQ==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.4.tgz", + "integrity": "sha512-Gw6qqkw/e6AGzlyj9KnkabJX7VcubqPtkUQVAwkc0wUMldr3A/hezNB3Rc5eIvId95iSGkGIOe5hh1kMKf951A==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.4.0", + "@babel/generator": "^7.4.4", "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/types": "^7.4.0", + "@babel/helper-split-export-declaration": "^7.4.4", + "@babel/parser": "^7.4.4", + "@babel/types": "^7.4.4", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.11" @@ -207,9 +207,9 @@ } }, "@babel/types": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.0.tgz", - "integrity": "sha512-aPvkXyU2SPOnztlgo8n9cEiXW755mgyvueUPcpStqdzoSPm0fjO0vQBjLkt3JKJW7ufikfcnMTTPsN1xaTsBPA==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.4.tgz", + "integrity": "sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -4058,9 +4058,9 @@ "dev": true }, "uglify-js": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.8.tgz", - "integrity": "sha512-GFSjB1nZIzoIq70qvDRtWRORHX3vFkAnyK/rDExc0BN7r9+/S+Voz3t/fwJuVfjppAMz+ceR2poE7tkhvnVwQQ==", + "version": "3.5.9", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.9.tgz", + "integrity": "sha512-WpT0RqsDtAWPNJK955DEnb6xjymR8Fn0OlK4TT4pS0ASYsVPqr5ELhgwOwLCP5J5vHeJ4xmMmz3DEgdqC10JeQ==", "dev": true, "optional": true, "requires": { From 1c13341952ffee16d71a8f27a4e16a62fa7b9ffb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 5 May 2019 04:28:10 +0000 Subject: [PATCH 0191/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 364 ++++++++++++++++------------- packages/project/package.json | 4 +- 2 files changed, 203 insertions(+), 165 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4f41e8575a5..70d83d04e29 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -152,8 +152,7 @@ "@babel/parser": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.4.tgz", - "integrity": "sha512-5pCS4mOsL+ANsFZGdvNLybx4wtqAZJ0MJjMHxvzI3bvIsz6sQvzW8XX92EYIkiPtIvcfG3Aj+Ir5VNyjnZhP7w==", - "dev": true + "integrity": "sha512-5pCS4mOsL+ANsFZGdvNLybx4wtqAZJ0MJjMHxvzI3bvIsz6sQvzW8XX92EYIkiPtIvcfG3Aj+Ir5VNyjnZhP7w==" }, "@babel/template": { "version": "7.4.4", @@ -193,9 +192,9 @@ } }, "globals": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", - "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true }, "ms": { @@ -1028,6 +1027,12 @@ "supports-color": "^2.0.0" } }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", @@ -1061,14 +1066,6 @@ "private": "^0.1.8", "slash": "^1.0.0", "source-map": "^0.5.7" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } } }, "babel-generator": { @@ -1227,14 +1224,6 @@ "espower-location-detector": "^1.0.0", "espurify": "^1.6.0", "estraverse": "^4.1.1" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } } }, "babel-plugin-syntax-async-functions": { @@ -1417,14 +1406,6 @@ "babel-types": "^6.26.0", "babylon": "^6.18.0", "lodash": "^4.17.4" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } } }, "babel-traverse": { @@ -1442,14 +1423,6 @@ "globals": "^9.18.0", "invariant": "^2.2.2", "lodash": "^4.17.4" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } } }, "babel-types": { @@ -1465,9 +1438,10 @@ } }, "babylon": { - "version": "7.0.0-beta.19", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", - "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true }, "balanced-match": { "version": "1.0.0", @@ -1756,11 +1730,11 @@ "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, "catharsis": { - "version": "0.8.9", - "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.9.tgz", - "integrity": "sha1-mMyJDKZS3S7w5ws3klMQ/56Q/Is=", + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.10.tgz", + "integrity": "sha512-l2OUaz/3PU3MZylspVFJvwHCVfWyvcduPq4lv3AzZ2pJzZCo7kNKFNyatwujD7XgvGkNAE/Jhhbh2uARNwNkfw==", "requires": { - "underscore-contrib": "~0.3.0" + "lodash": "^4.17.11" } }, "chalk": { @@ -1772,6 +1746,14 @@ "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + } } }, "chardet": { @@ -2598,9 +2580,9 @@ } }, "es5-ext": { - "version": "0.10.49", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.49.tgz", - "integrity": "sha512-3NMEhi57E31qdzmYp2jwRArIUsj1HI/RxbQ4bgnSB+AIKIxsAmTiK83bYMifIcpWvEc3P1X30DhUKOqEtF/kvg==", + "version": "0.10.50", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.50.tgz", + "integrity": "sha512-KMzZTPBkeQV/JcSQhI5/z6d9VWJ3EnQ194USTUwIYZ2ZbpN8+SGXQKt1h68EX44+qt+Fzr8DO17vnxrw7c3agw==", "requires": { "es6-iterator": "~2.0.3", "es6-symbol": "~3.1.1", @@ -2669,9 +2651,9 @@ } }, "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" }, "escodegen": { "version": "1.11.1", @@ -2782,9 +2764,9 @@ } }, "globals": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", - "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true }, "ignore": { @@ -2813,6 +2795,12 @@ "requires": { "ansi-regex": "^3.0.0" } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true } } }, @@ -3170,6 +3158,14 @@ "dev": true, "requires": { "escape-string-regexp": "^1.0.5" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + } } }, "file-entry-cache": { @@ -3332,9 +3328,9 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.8.tgz", - "integrity": "sha512-tPvHgPGB7m40CZ68xqFGkKuzN+RnpGmSV+hgeKxhRpbxdqKXUFJGC3yonBOLzQBcJyGpdZFDfCsdOC2KFsXzeA==", + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", + "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", "dev": true, "optional": true, "requires": { @@ -4058,9 +4054,9 @@ "dev": true }, "uglify-js": { - "version": "3.5.9", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.9.tgz", - "integrity": "sha512-WpT0RqsDtAWPNJK955DEnb6xjymR8Fn0OlK4TT4pS0ASYsVPqr5ELhgwOwLCP5J5vHeJ4xmMmz3DEgdqC10JeQ==", + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.10.tgz", + "integrity": "sha512-/GTF0nosyPLbdJBd+AwYiZ+Hu5z8KXWnO0WCGt1BQ/u9Iamhejykqmz5o1OHJ53+VAk6xVxychonnApDjuqGsw==", "dev": true, "optional": true, "requires": { @@ -4709,44 +4705,44 @@ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, "istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-LXTBICkMARVgo579kWDm8SqfB6nvSDKNqIOBEjmJRnL04JvoMHCYGWaMddQnseJYtkEuEvO/sIcOxPLk9gERug==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", "dev": true }, "istanbul-lib-hook": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.6.tgz", - "integrity": "sha512-829DKONApZ7UCiPXcOYWSgkFXa4+vNYoNOt3F+4uDJLKL1OotAoVwvThoEj1i8jmOj7odbYcR3rnaHu+QroaXg==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", + "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", "dev": true, "requires": { "append-transform": "^1.0.0" } }, "istanbul-lib-instrument": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.2.0.tgz", - "integrity": "sha512-06IM3xShbNW4NgZv5AP4QH0oHqf1/ivFo8eFys0ZjPXHGldHJQWb3riYOKXqmOqfxXBfxu4B+g/iuhOPZH0RJg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", "dev": true, "requires": { - "@babel/generator": "^7.0.0", - "@babel/parser": "^7.0.0", - "@babel/template": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "istanbul-lib-coverage": "^2.0.4", + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", "semver": "^6.0.0" } }, "istanbul-lib-report": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.7.tgz", - "integrity": "sha512-wLH6beJBFbRBLiTlMOBxmb85cnVM1Vyl36N48e4e/aTKSM3WbOx7zbVIH1SQ537fhhsPbX0/C5JB4qsmyRXXyA==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", "dev": true, "requires": { - "istanbul-lib-coverage": "^2.0.4", + "istanbul-lib-coverage": "^2.0.5", "make-dir": "^2.1.0", - "supports-color": "^6.0.0" + "supports-color": "^6.1.0" }, "dependencies": { "has-flag": { @@ -4767,15 +4763,15 @@ } }, "istanbul-lib-source-maps": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.5.tgz", - "integrity": "sha512-eDhZ7r6r1d1zQPVZehLc3D0K14vRba/eBYkz3rw16DLOrrTzve9RmnkcwrrkWVgO1FL3EK5knujVe5S8QHE9xw==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", "dev": true, "requires": { "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.4", + "istanbul-lib-coverage": "^2.0.5", "make-dir": "^2.1.0", - "rimraf": "^2.6.2", + "rimraf": "^2.6.3", "source-map": "^0.6.1" }, "dependencies": { @@ -4803,12 +4799,12 @@ } }, "istanbul-reports": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.3.tgz", - "integrity": "sha512-T6EbPuc8Cb620LWAYyZ4D8SSn06dY9i1+IgUX2lTH8gbwflMc9Obd33zHTyNX653ybjpamAHS9toKS3E6cGhTw==", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.4.tgz", + "integrity": "sha512-QCHGyZEK0bfi9GR215QSm+NJwFKEShbtc7tfbUdLAEzn3kKhLDDZqvljn8rPZM9v8CEOhzL1nlYoO4r1ryl67w==", "dev": true, "requires": { - "handlebars": "^4.1.0" + "handlebars": "^4.1.2" } }, "js-string-escape": { @@ -4833,11 +4829,11 @@ } }, "js2xmlparser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", - "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.0.tgz", + "integrity": "sha512-WuNgdZOXVmBk5kUPMcTcVUpbGRzLfNkv7+7APq7WiDihpXVKrgxo6wwRpRl9OQeEBgKCVk9mR7RbzrnNWC8oBw==", "requires": { - "xmlcreate": "^1.0.1" + "xmlcreate": "^2.0.0" } }, "jsbn": { @@ -4846,22 +4842,24 @@ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsdoc": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", - "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", - "requires": { - "babylon": "7.0.0-beta.19", - "bluebird": "~3.5.0", - "catharsis": "~0.8.9", - "escape-string-regexp": "~1.0.5", - "js2xmlparser": "~3.0.0", - "klaw": "~2.0.0", - "marked": "~0.3.6", - "mkdirp": "~0.5.1", - "requizzle": "~0.2.1", - "strip-json-comments": "~2.0.1", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.0.tgz", + "integrity": "sha512-klRPzXUsbNSjXfzfzFMMYRMdYTn/0cjdysCGiiI8rCmm2KEtY5i9gmtC7Sn3jxTgxmeObetQAlepDoYarprzsQ==", + "requires": { + "@babel/parser": "^7.4.4", + "bluebird": "^3.5.4", + "catharsis": "^0.8.10", + "escape-string-regexp": "^2.0.0", + "js2xmlparser": "^4.0.0", + "klaw": "^3.0.0", + "markdown-it": "^8.4.2", + "markdown-it-anchor": "^5.0.2", + "marked": "^0.6.2", + "mkdirp": "^0.5.1", + "requizzle": "^0.2.2", + "strip-json-comments": "^3.0.1", "taffydb": "2.6.2", - "underscore": "~1.8.3" + "underscore": "~1.9.1" } }, "jsdoctypeparser": { @@ -4931,9 +4929,9 @@ "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" }, "klaw": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", - "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", + "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", "requires": { "graceful-fs": "^4.1.9" } @@ -5020,6 +5018,14 @@ "type-check": "~0.3.2" } }, + "linkify-it": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.1.0.tgz", + "integrity": "sha512-4REs8/062kV2DSHxNfq5183zrqXMl7WP0WzABH9IeJI+NLm429FgE1PDecltYfnOoFDFlZGh2T8PfZn0r+GTRg==", + "requires": { + "uc.micro": "^1.0.1" + } + }, "load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", @@ -5043,8 +5049,7 @@ "lodash": { "version": "4.17.11", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" }, "lodash.assignin": { "version": "4.2.0", @@ -5238,10 +5243,27 @@ "object-visit": "^1.0.0" } }, + "markdown-it": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", + "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "requires": { + "argparse": "^1.0.7", + "entities": "~1.1.1", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + } + }, + "markdown-it-anchor": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.0.2.tgz", + "integrity": "sha512-AFM/woBI8QDJMS/9+MmsBMT5/AR+ImfOsunQZTZhzcTmna3rIzAzbOh5E0l6mlFM/i9666BpUtkqQ9bS7WApCg==" + }, "marked": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.6.2.tgz", + "integrity": "sha512-LqxwVH3P/rqKX4EKGz7+c2G9r98WeM/SW34ybhgNGhUQNKtf1GmmSkJ6cDGJ/t6tiyae49qRkpyTw2B9HOrgUA==" }, "matcher": { "version": "1.1.1", @@ -5250,6 +5272,14 @@ "dev": true, "requires": { "escape-string-regexp": "^1.0.4" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + } } }, "math-random": { @@ -5273,6 +5303,11 @@ "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", "dev": true }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + }, "mem": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", @@ -5700,9 +5735,9 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.0.0.tgz", - "integrity": "sha512-R1zC6UZak6pzn5BZQorkSH5GdOGafrwyeja+eimS5Tu+KJ/hCgBc8qA1QWSzxQmT2FDl2lbpqPw7tBDbSvhAHg==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.0.tgz", + "integrity": "sha512-iy9fEV8Emevz3z/AanIZsoGa8F4U2p0JKevZ/F0sk+/B2r9E6Qn+EPs0bpxEhnAt6UPlTL8mQZIaSJy8sK0ZFw==", "dev": true, "requires": { "archy": "^1.0.0", @@ -5713,19 +5748,20 @@ "find-up": "^3.0.0", "foreground-child": "^1.5.6", "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.4", - "istanbul-lib-hook": "^2.0.6", - "istanbul-lib-instrument": "^3.2.0", - "istanbul-lib-report": "^2.0.7", - "istanbul-lib-source-maps": "^3.0.5", - "istanbul-reports": "^2.2.2", + "istanbul-lib-coverage": "^2.0.5", + "istanbul-lib-hook": "^2.0.7", + "istanbul-lib-instrument": "^3.3.0", + "istanbul-lib-report": "^2.0.8", + "istanbul-lib-source-maps": "^3.0.6", + "istanbul-reports": "^2.2.4", + "js-yaml": "^3.13.1", "make-dir": "^2.1.0", "merge-source-map": "^1.1.0", "resolve-from": "^4.0.0", "rimraf": "^2.6.3", "signal-exit": "^3.0.2", "spawn-wrap": "^1.4.2", - "test-exclude": "^5.2.2", + "test-exclude": "^5.2.3", "uuid": "^3.3.2", "yargs": "^13.2.2", "yargs-parser": "^13.0.0" @@ -6603,6 +6639,12 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true } } }, @@ -6793,6 +6835,13 @@ "escape-string-regexp": "^1.0.3", "object-assign": "^4.0.1", "readable-stream": "^2.0.2" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + } } }, "request": { @@ -6841,18 +6890,11 @@ "dev": true }, "requizzle": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.1.tgz", - "integrity": "sha1-aUPDUwxNmn5G8c3dUcFY/GcM294=", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.2.tgz", + "integrity": "sha512-oJ6y7JcUJkblRGhMByGNcszeLgU0qDxNKFCiUZR1XyzHyVsev+Mxb1tyygxLd1ORsKee1SA5BInFdUwY64GE/A==", "requires": { - "underscore": "~1.6.0" - }, - "dependencies": { - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" - } + "lodash": "^4.17.11" } }, "resolve": { @@ -7362,9 +7404,9 @@ } }, "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", + "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==" }, "supertap": { "version": "1.0.0", @@ -7520,6 +7562,12 @@ } } }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, "has-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", @@ -7589,9 +7637,9 @@ } }, "test-exclude": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.2.tgz", - "integrity": "sha512-N2pvaLpT8guUpb5Fe1GJlmvmzH3x+DAKmmyEQmFP792QcLYoGE1syxztSvPD1V8yPe6VrcCt6YGQVjSRjCASsA==", + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", + "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", "dev": true, "requires": { "glob": "^7.1.3", @@ -7753,6 +7801,11 @@ "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", "dev": true }, + "uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + }, "uglify-es": { "version": "3.3.9", "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", @@ -7781,24 +7834,9 @@ "dev": true }, "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" - }, - "underscore-contrib": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/underscore-contrib/-/underscore-contrib-0.3.0.tgz", - "integrity": "sha1-ZltmwkeD+PorGMn4y7Dix9SMJsc=", - "requires": { - "underscore": "1.6.0" - }, - "dependencies": { - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" - } - } + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==" }, "union-value": { "version": "1.0.0", @@ -8141,9 +8179,9 @@ "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" }, "xmlcreate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", - "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.1.tgz", + "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==" }, "xtend": { "version": "4.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index ea946a2b199..342e07b00e3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -111,8 +111,8 @@ "eslint": "^5.16.0", "eslint-config-google": "^0.12.0", "eslint-plugin-jsdoc": "^4.8.3", - "jsdoc": "^3.5.5", - "nyc": "^14.0.0", + "jsdoc": "^3.6.0", + "nyc": "^14.1.0", "opn-cli": "^4.1.0", "rimraf": "^2.6.3", "sinon": "^7.3.2", From 77feb3fa89d21f3b146824c94086f9219abc2b75 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 7 May 2019 08:09:01 +0000 Subject: [PATCH 0192/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.2.0 to 1.2.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.2.1/CHANGELOG.md --- packages/project/package-lock.json | 68 ++++++++++++++++++++++++------ packages/project/package.json | 2 +- 2 files changed, 57 insertions(+), 13 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 70d83d04e29..495fd436a98 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -316,9 +316,9 @@ "dev": true }, "@ui5/builder": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.2.0.tgz", - "integrity": "sha512-9TtyQUCI7IwYP3D5w3HIjQVNKwYs3aPXXjdkGfKf7Zipsnc1NgAAyRSOGIK02GPxvmltFDgzMXX85SNwOuP7hg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.2.1.tgz", + "integrity": "sha512-zodkFTpiDdddhUnz+f80B86ZSrGiopFVrbDJJcSSXriUUuEwEKWTV5FVo32a5H64wtn1SNEm7anVSl7Gk5ggJw==", "requires": { "@ui5/fs": "^1.0.2", "@ui5/logger": "^1.0.1", @@ -329,13 +329,14 @@ "estraverse": "^4.2.0", "globby": "^7.1.1", "graceful-fs": "^4.1.15", - "jsdoc": "^3.5.5", + "jsdoc": "^3.6.0", "less-openui5": "^0.6.0", "make-dir": "^2.1.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "semver": "^6.0.0", + "tap-xunit": "^2.3.0", "tmp": "0.1.0", "uglify-es": "^3.2.2", "xml2js": "^0.4.17", @@ -2511,6 +2512,11 @@ "is-obj": "^1.0.0" } }, + "duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=" + }, "duplexer2": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", @@ -2919,8 +2925,7 @@ "events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", - "dev": true + "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=" }, "execa": { "version": "0.7.0", @@ -7596,6 +7601,37 @@ "readable-stream": "^2" } }, + "tap-xunit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.3.0.tgz", + "integrity": "sha512-YVsURNvn1wfVUWb5wjansxhfbfeo2hOBTUbVgZoaMO8lyZzpiSi9IiZTZ7JG56m6A49LeWjfJIx/SnAre41V/A==", + "requires": { + "duplexer": "~0.1.1", + "minimist": "~1.2.0", + "tap-parser": "~1.2.2", + "through2": "~2.0.0", + "xmlbuilder": "~4.2.0", + "xtend": "~4.0.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "tap-parser": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", + "integrity": "sha1-Xi9pcGEfB5x8+FfeHceqG0gN56U=", + "requires": { + "events-to-array": "^1.0.1", + "inherits": "~2.0.1", + "js-yaml": "^3.2.7", + "readable-stream": "^2" + } + } + } + }, "temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", @@ -7664,7 +7700,6 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" @@ -8171,12 +8206,22 @@ "requires": { "sax": ">=0.6.0", "xmlbuilder": "~9.0.1" + }, + "dependencies": { + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + } } }, "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz", + "integrity": "sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU=", + "requires": { + "lodash": "^4.0.0" + } }, "xmlcreate": { "version": "2.0.1", @@ -8186,8 +8231,7 @@ "xtend": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" }, "y18n": { "version": "4.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 342e07b00e3..74dbc03fc77 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.2.0", + "@ui5/builder": "^1.2.1", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.1", From c098e2382673285bd8822c0393dd9143c6cabbce Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 8 May 2019 14:44:56 +0000 Subject: [PATCH 0193/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.2.1 to 1.2.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.2.2/CHANGELOG.md --- packages/project/package-lock.json | 107 +++++++++++++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 95 insertions(+), 14 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 495fd436a98..c01d08d00cc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -152,7 +152,8 @@ "@babel/parser": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.4.tgz", - "integrity": "sha512-5pCS4mOsL+ANsFZGdvNLybx4wtqAZJ0MJjMHxvzI3bvIsz6sQvzW8XX92EYIkiPtIvcfG3Aj+Ir5VNyjnZhP7w==" + "integrity": "sha512-5pCS4mOsL+ANsFZGdvNLybx4wtqAZJ0MJjMHxvzI3bvIsz6sQvzW8XX92EYIkiPtIvcfG3Aj+Ir5VNyjnZhP7w==", + "dev": true }, "@babel/template": { "version": "7.4.4", @@ -316,9 +317,9 @@ "dev": true }, "@ui5/builder": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.2.1.tgz", - "integrity": "sha512-zodkFTpiDdddhUnz+f80B86ZSrGiopFVrbDJJcSSXriUUuEwEKWTV5FVo32a5H64wtn1SNEm7anVSl7Gk5ggJw==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.2.2.tgz", + "integrity": "sha512-S0UVABkyHW90Dyz+TWoq0kEItO6b/uUWloy46qVMQ6+GAhVRyAMLh3chbdosINuQq3Lyw+xecUs5kOoHeizEMg==", "requires": { "@ui5/fs": "^1.0.2", "@ui5/logger": "^1.0.1", @@ -329,7 +330,7 @@ "estraverse": "^4.2.0", "globby": "^7.1.1", "graceful-fs": "^4.1.15", - "jsdoc": "^3.6.0", + "jsdoc": "3.5.5", "less-openui5": "^0.6.0", "make-dir": "^2.1.0", "pretty-data": "^0.40.0", @@ -341,6 +342,73 @@ "uglify-es": "^3.2.2", "xml2js": "^0.4.17", "yazl": "^2.5.1" + }, + "dependencies": { + "babylon": { + "version": "7.0.0-beta.19", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", + "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "js2xmlparser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", + "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", + "requires": { + "xmlcreate": "^1.0.1" + } + }, + "jsdoc": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", + "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", + "requires": { + "babylon": "7.0.0-beta.19", + "bluebird": "~3.5.0", + "catharsis": "~0.8.9", + "escape-string-regexp": "~1.0.5", + "js2xmlparser": "~3.0.0", + "klaw": "~2.0.0", + "marked": "~0.3.6", + "mkdirp": "~0.5.1", + "requizzle": "~0.2.1", + "strip-json-comments": "~2.0.1", + "taffydb": "2.6.2", + "underscore": "~1.8.3" + } + }, + "klaw": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", + "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", + "requires": { + "graceful-fs": "^4.1.9" + } + }, + "marked": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + }, + "xmlcreate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", + "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" + } } }, "@ui5/fs": { @@ -2659,7 +2727,8 @@ "escape-string-regexp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true }, "escodegen": { "version": "1.11.1", @@ -4837,6 +4906,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.0.tgz", "integrity": "sha512-WuNgdZOXVmBk5kUPMcTcVUpbGRzLfNkv7+7APq7WiDihpXVKrgxo6wwRpRl9OQeEBgKCVk9mR7RbzrnNWC8oBw==", + "dev": true, "requires": { "xmlcreate": "^2.0.0" } @@ -4850,6 +4920,7 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.0.tgz", "integrity": "sha512-klRPzXUsbNSjXfzfzFMMYRMdYTn/0cjdysCGiiI8rCmm2KEtY5i9gmtC7Sn3jxTgxmeObetQAlepDoYarprzsQ==", + "dev": true, "requires": { "@babel/parser": "^7.4.4", "bluebird": "^3.5.4", @@ -4937,6 +5008,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", + "dev": true, "requires": { "graceful-fs": "^4.1.9" } @@ -5027,6 +5099,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.1.0.tgz", "integrity": "sha512-4REs8/062kV2DSHxNfq5183zrqXMl7WP0WzABH9IeJI+NLm429FgE1PDecltYfnOoFDFlZGh2T8PfZn0r+GTRg==", + "dev": true, "requires": { "uc.micro": "^1.0.1" } @@ -5252,6 +5325,7 @@ "version": "8.4.2", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "dev": true, "requires": { "argparse": "^1.0.7", "entities": "~1.1.1", @@ -5263,12 +5337,14 @@ "markdown-it-anchor": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.0.2.tgz", - "integrity": "sha512-AFM/woBI8QDJMS/9+MmsBMT5/AR+ImfOsunQZTZhzcTmna3rIzAzbOh5E0l6mlFM/i9666BpUtkqQ9bS7WApCg==" + "integrity": "sha512-AFM/woBI8QDJMS/9+MmsBMT5/AR+ImfOsunQZTZhzcTmna3rIzAzbOh5E0l6mlFM/i9666BpUtkqQ9bS7WApCg==", + "dev": true }, "marked": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/marked/-/marked-0.6.2.tgz", - "integrity": "sha512-LqxwVH3P/rqKX4EKGz7+c2G9r98WeM/SW34ybhgNGhUQNKtf1GmmSkJ6cDGJ/t6tiyae49qRkpyTw2B9HOrgUA==" + "integrity": "sha512-LqxwVH3P/rqKX4EKGz7+c2G9r98WeM/SW34ybhgNGhUQNKtf1GmmSkJ6cDGJ/t6tiyae49qRkpyTw2B9HOrgUA==", + "dev": true }, "matcher": { "version": "1.1.1", @@ -5311,7 +5387,8 @@ "mdurl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", + "dev": true }, "mem": { "version": "4.3.0", @@ -7411,7 +7488,8 @@ "strip-json-comments": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==" + "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", + "dev": true }, "supertap": { "version": "1.0.0", @@ -7839,7 +7917,8 @@ "uc.micro": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", - "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", + "dev": true }, "uglify-es": { "version": "3.3.9", @@ -7871,7 +7950,8 @@ "underscore": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", - "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==" + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true }, "union-value": { "version": "1.0.0", @@ -8226,7 +8306,8 @@ "xmlcreate": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.1.tgz", - "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==" + "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==", + "dev": true }, "xtend": { "version": "4.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 74dbc03fc77..51a981e0079 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.2.1", + "@ui5/builder": "^1.2.2", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.1", From c88d85dd82742a9cb336e02c580aa67ff41d7f6f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 12 May 2019 04:26:52 +0000 Subject: [PATCH 0194/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 319 +++++++++++++---------------- packages/project/package.json | 6 +- 2 files changed, 149 insertions(+), 176 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c01d08d00cc..d602f4fb21c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -344,24 +344,6 @@ "yazl": "^2.5.1" }, "dependencies": { - "babylon": { - "version": "7.0.0-beta.19", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", - "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "js2xmlparser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", - "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", - "requires": { - "xmlcreate": "^1.0.1" - } - }, "jsdoc": { "version": "3.5.5", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", @@ -380,34 +362,6 @@ "taffydb": "2.6.2", "underscore": "~1.8.3" } - }, - "klaw": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", - "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", - "requires": { - "graceful-fs": "^4.1.9" - } - }, - "marked": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" - }, - "xmlcreate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", - "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" } } }, @@ -1096,12 +1050,6 @@ "supports-color": "^2.0.0" } }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", @@ -1135,6 +1083,14 @@ "private": "^0.1.8", "slash": "^1.0.0", "source-map": "^0.5.7" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } } }, "babel-generator": { @@ -1293,6 +1249,14 @@ "espower-location-detector": "^1.0.0", "espurify": "^1.6.0", "estraverse": "^4.1.1" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } } }, "babel-plugin-syntax-async-functions": { @@ -1475,6 +1439,14 @@ "babel-types": "^6.26.0", "babylon": "^6.18.0", "lodash": "^4.17.4" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } } }, "babel-traverse": { @@ -1492,6 +1464,14 @@ "globals": "^9.18.0", "invariant": "^2.2.2", "lodash": "^4.17.4" + }, + "dependencies": { + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + } } }, "babel-types": { @@ -1507,10 +1487,9 @@ } }, "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true + "version": "7.0.0-beta.19", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", + "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" }, "balanced-match": { "version": "1.0.0", @@ -1815,14 +1794,6 @@ "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } } }, "chardet": { @@ -2725,10 +2696,9 @@ } }, "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, "escodegen": { "version": "1.11.1", @@ -2870,12 +2840,6 @@ "requires": { "ansi-regex": "^3.0.0" } - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true } } }, @@ -2886,9 +2850,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "4.8.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.3.tgz", - "integrity": "sha512-lKOaphUUzv0qKJrAdEwQGEWcNN2Foae5W111u1ASKQeliyJkKXCVxia0dakATuI/s2ojr6Q3FVzWwT6uE1icBg==", + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.4.tgz", + "integrity": "sha512-VDP+BI2hWpKNNdsJDSPofSQ9q7jGLgWbDMI0LzOeEcfsTjSS7jQtHDUuVLQ5E+OV2MPyQPk/3lnVcHfStXk5yA==", "dev": true, "requires": { "comment-parser": "^0.5.4", @@ -3232,14 +3196,6 @@ "dev": true, "requires": { "escape-string-regexp": "^1.0.5" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } } }, "file-entry-cache": { @@ -4013,9 +3969,9 @@ } }, "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -4128,9 +4084,9 @@ "dev": true }, "uglify-js": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.10.tgz", - "integrity": "sha512-/GTF0nosyPLbdJBd+AwYiZ+Hu5z8KXWnO0WCGt1BQ/u9Iamhejykqmz5o1OHJ53+VAk6xVxychonnApDjuqGsw==", + "version": "3.5.11", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.11.tgz", + "integrity": "sha512-izPJg8RsSyqxbdnqX36ExpbH3K7tDBsAU/VfNv89VkMFy3z39zFjunQGsSHOlGlyIfGLGprGeosgQno3bo2/Kg==", "dev": true, "optional": true, "requires": { @@ -4903,12 +4859,11 @@ } }, "js2xmlparser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.0.tgz", - "integrity": "sha512-WuNgdZOXVmBk5kUPMcTcVUpbGRzLfNkv7+7APq7WiDihpXVKrgxo6wwRpRl9OQeEBgKCVk9mR7RbzrnNWC8oBw==", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", + "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", "requires": { - "xmlcreate": "^2.0.0" + "xmlcreate": "^1.0.1" } }, "jsbn": { @@ -4917,9 +4872,9 @@ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsdoc": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.0.tgz", - "integrity": "sha512-klRPzXUsbNSjXfzfzFMMYRMdYTn/0cjdysCGiiI8rCmm2KEtY5i9gmtC7Sn3jxTgxmeObetQAlepDoYarprzsQ==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.1.tgz", + "integrity": "sha512-mMMsst31b8c7/Z6ewnO6ORIdVMwsobg1enX9b/2XAzW8mM3KuMANRWcMD1KMBq91IAUMOIhC5NsXu7xvNQrRyQ==", "dev": true, "requires": { "@babel/parser": "^7.4.4", @@ -4936,6 +4891,56 @@ "strip-json-comments": "^3.0.1", "taffydb": "2.6.2", "underscore": "~1.9.1" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true + }, + "js2xmlparser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.0.tgz", + "integrity": "sha512-WuNgdZOXVmBk5kUPMcTcVUpbGRzLfNkv7+7APq7WiDihpXVKrgxo6wwRpRl9OQeEBgKCVk9mR7RbzrnNWC8oBw==", + "dev": true, + "requires": { + "xmlcreate": "^2.0.0" + } + }, + "klaw": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", + "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.9" + } + }, + "marked": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.6.2.tgz", + "integrity": "sha512-LqxwVH3P/rqKX4EKGz7+c2G9r98WeM/SW34ybhgNGhUQNKtf1GmmSkJ6cDGJ/t6tiyae49qRkpyTw2B9HOrgUA==", + "dev": true + }, + "strip-json-comments": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", + "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", + "dev": true + }, + "underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", + "dev": true + }, + "xmlcreate": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.1.tgz", + "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==", + "dev": true + } } }, "jsdoctypeparser": { @@ -5005,10 +5010,9 @@ "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" }, "klaw": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", - "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", - "dev": true, + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", + "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", "requires": { "graceful-fs": "^4.1.9" } @@ -5341,10 +5345,9 @@ "dev": true }, "marked": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.6.2.tgz", - "integrity": "sha512-LqxwVH3P/rqKX4EKGz7+c2G9r98WeM/SW34ybhgNGhUQNKtf1GmmSkJ6cDGJ/t6tiyae49qRkpyTw2B9HOrgUA==", - "dev": true + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" }, "matcher": { "version": "1.1.1", @@ -5353,14 +5356,6 @@ "dev": true, "requires": { "escape-string-regexp": "^1.0.4" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } } }, "math-random": { @@ -5817,9 +5812,9 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.0.tgz", - "integrity": "sha512-iy9fEV8Emevz3z/AanIZsoGa8F4U2p0JKevZ/F0sk+/B2r9E6Qn+EPs0bpxEhnAt6UPlTL8mQZIaSJy8sK0ZFw==", + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.1.tgz", + "integrity": "sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw==", "dev": true, "requires": { "archy": "^1.0.0", @@ -6721,12 +6716,6 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true } } }, @@ -6917,13 +6906,6 @@ "escape-string-regexp": "^1.0.3", "object-assign": "^4.0.1", "readable-stream": "^2.0.2" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - } } }, "request": { @@ -7040,9 +7022,9 @@ } }, "rxjs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.1.tgz", - "integrity": "sha512-y0j31WJc83wPu31vS1VlAFW5JGrnGC+j+TtGAa1fRQphy48+fDYiDmX8tjGloToEsMkxnouOg/1IzXGKkJnZMg==", + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.2.tgz", + "integrity": "sha512-HUb7j3kvb7p7eCUHE3FqjoDsC1xfZQ4AHFWfTKSpZ+sAhhz5X1WX0ZuUqWbzB2QhSLp3DoLUG+hMdEDKqWo2Zg==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -7486,10 +7468,9 @@ } }, "strip-json-comments": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", - "dev": true + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" }, "supertap": { "version": "1.0.0", @@ -7545,9 +7526,9 @@ "dev": true }, "table": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/table/-/table-5.2.3.tgz", - "integrity": "sha512-N2RsDAMvDLvYwFcwbPyF3VmVSSkuF+G1e+8inhBLtHpvwXGw4QRPEZhihQNeEN0i1up6/f6ObCJXNdlRG3YVyQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/table/-/table-5.3.3.tgz", + "integrity": "sha512-3wUNCgdWX6PNpOe3amTTPWPuF6VGvgzjKCaO1snFj0z7Y3mUPWf5+zDtxUVGispJkDECPmR29wbzh6bVMOHbcw==", "dev": true, "requires": { "ajv": "^6.9.1", @@ -7645,12 +7626,6 @@ } } }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, "has-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", @@ -7665,16 +7640,27 @@ "requires": { "has-flag": "^1.0.0" } + }, + "tap-parser": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", + "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", + "dev": true, + "requires": { + "events-to-array": "^1.0.1", + "js-yaml": "^3.2.7", + "readable-stream": "^2" + } } } }, "tap-parser": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", - "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", - "dev": true, + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", + "integrity": "sha1-Xi9pcGEfB5x8+FfeHceqG0gN56U=", "requires": { "events-to-array": "^1.0.1", + "inherits": "~2.0.1", "js-yaml": "^3.2.7", "readable-stream": "^2" } @@ -7696,17 +7682,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "tap-parser": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", - "integrity": "sha1-Xi9pcGEfB5x8+FfeHceqG0gN56U=", - "requires": { - "events-to-array": "^1.0.1", - "inherits": "~2.0.1", - "js-yaml": "^3.2.7", - "readable-stream": "^2" - } } } }, @@ -7948,10 +7923,9 @@ "dev": true }, "underscore": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", - "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", - "dev": true + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" }, "union-value": { "version": "1.0.0", @@ -8304,10 +8278,9 @@ } }, "xmlcreate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.1.tgz", - "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==", - "dev": true + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", + "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" }, "xtend": { "version": "4.0.1", @@ -8386,9 +8359,9 @@ } }, "yargs-parser": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", - "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.0.tgz", + "integrity": "sha512-Yq+32PrijHRri0vVKQEm+ys8mbqWjLiwQkMFNXEENutzLPP0bE4Lcd4iA3OQY5HF+GD3xXxf0MEHb8E4/SA3AA==", "dev": true, "requires": { "camelcase": "^5.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 51a981e0079..71c053faa0b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -110,9 +110,9 @@ "docdash": "^1.1.0", "eslint": "^5.16.0", "eslint-config-google": "^0.12.0", - "eslint-plugin-jsdoc": "^4.8.3", - "jsdoc": "^3.6.0", - "nyc": "^14.1.0", + "eslint-plugin-jsdoc": "^4.8.4", + "jsdoc": "^3.6.1", + "nyc": "^14.1.1", "opn-cli": "^4.1.0", "rimraf": "^2.6.3", "sinon": "^7.3.2", From d7f3ad3f20e800eb59d7e83fc7912b5ecf3095fb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 15 May 2019 13:33:55 +0000 Subject: [PATCH 0195/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.2.2 to 1.2.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.2.3/CHANGELOG.md --- packages/project/package-lock.json | 16 ++++------------ packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d602f4fb21c..101e0ceb21d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -317,9 +317,9 @@ "dev": true }, "@ui5/builder": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.2.2.tgz", - "integrity": "sha512-S0UVABkyHW90Dyz+TWoq0kEItO6b/uUWloy46qVMQ6+GAhVRyAMLh3chbdosINuQq3Lyw+xecUs5kOoHeizEMg==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.2.3.tgz", + "integrity": "sha512-Yjc9wxFfgibTKeTo43JCvYr+Qaj6vzTTVWyHO63QY9Ab4WVzgfVDRrnRLlFlLn8G5oV30pBDvz+rH7NtZiyE5w==", "requires": { "@ui5/fs": "^1.0.2", "@ui5/logger": "^1.0.1", @@ -336,9 +336,9 @@ "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", + "rimraf": "^2.6.3", "semver": "^6.0.0", "tap-xunit": "^2.3.0", - "tmp": "0.1.0", "uglify-es": "^3.2.2", "xml2js": "^0.4.17", "yazl": "^2.5.1" @@ -7770,14 +7770,6 @@ "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", "dev": true }, - "tmp": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", - "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", - "requires": { - "rimraf": "^2.6.3" - } - }, "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 71c053faa0b..85c07342aa6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.2.2", + "@ui5/builder": "^1.2.3", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.1", From e22d4f2201f1291a7ad7650ecbc9d15e55e12b26 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 19 May 2019 04:25:08 +0000 Subject: [PATCH 0196/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 158 ++++++++++++++++++----------- packages/project/package.json | 4 +- 2 files changed, 98 insertions(+), 64 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 101e0ceb21d..2626ccf64f6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1961,20 +1961,20 @@ "dev": true }, "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", "dev": true, "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, "is-fullwidth-code-point": { @@ -1984,22 +1984,23 @@ "dev": true }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "dev": true, "requires": { + "emoji-regex": "^7.0.1", "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "strip-ansi": "^5.1.0" } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^4.1.0" } } } @@ -2057,9 +2058,9 @@ "dev": true }, "combined-stream": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", - "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "requires": { "delayed-stream": "~1.0.0" } @@ -3091,17 +3092,6 @@ "chardet": "^0.7.0", "iconv-lite": "^0.4.24", "tmp": "^0.0.33" - }, - "dependencies": { - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - } } }, "extglob": { @@ -4084,9 +4074,9 @@ "dev": true }, "uglify-js": { - "version": "3.5.11", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.11.tgz", - "integrity": "sha512-izPJg8RsSyqxbdnqX36ExpbH3K7tDBsAU/VfNv89VkMFy3z39zFjunQGsSHOlGlyIfGLGprGeosgQno3bo2/Kg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.13.tgz", + "integrity": "sha512-Lho+IJlquX6sdJgyKSJx/M9y4XbDd3ekPjD8S6HYmT5yVSwDtlSuca2w5hV4g2dIsp0Y/4orbfWxKexodmFv7w==", "dev": true, "optional": true, "requires": { @@ -4829,9 +4819,9 @@ } }, "istanbul-reports": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.4.tgz", - "integrity": "sha512-QCHGyZEK0bfi9GR215QSm+NJwFKEShbtc7tfbUdLAEzn3kKhLDDZqvljn8rPZM9v8CEOhzL1nlYoO4r1ryl67w==", + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz", + "integrity": "sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==", "dev": true, "requires": { "handlebars": "^4.1.2" @@ -4872,9 +4862,9 @@ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsdoc": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.1.tgz", - "integrity": "sha512-mMMsst31b8c7/Z6ewnO6ORIdVMwsobg1enX9b/2XAzW8mM3KuMANRWcMD1KMBq91IAUMOIhC5NsXu7xvNQrRyQ==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.2.tgz", + "integrity": "sha512-S2vzg99C5+gb7FWlrK4TVdyzVPGGkdvpDkCEJH1JABi2PKzPeLu5/zZffcJUifgWUJqXWl41Hoc+MmuM2GukIg==", "dev": true, "requires": { "@babel/parser": "^7.4.4", @@ -5678,9 +5668,9 @@ "dev": true }, "nan": { - "version": "2.13.2", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz", - "integrity": "sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==", + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", "dev": true, "optional": true }, @@ -5709,9 +5699,9 @@ "dev": true }, "neo-async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz", - "integrity": "sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", "dev": true }, "nested-error-stacks": { @@ -6007,9 +5997,9 @@ } }, "open": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/open/-/open-6.2.0.tgz", - "integrity": "sha512-Vxf6HJkwrqmvh9UAID3MnMYXntbTxKLOSfOnO7LJdzPf3NE3KQYFNV0/Lcz2VAndbRFil58XVCyh8tiX11fiYw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/open/-/open-6.3.0.tgz", + "integrity": "sha512-6AHdrJxPvAXIowO/aIaeHZ8CeMdDf7qCyRNq8NwJpinmCdXhz+NZR7ie1Too94lpciCDsG+qHGO9Mt0svA4OqA==", "dev": true, "requires": { "is-wsl": "^1.1.0" @@ -6962,9 +6952,9 @@ } }, "resolve": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.1.tgz", - "integrity": "sha512-KuIe4mf++td/eFb6wkaPbMDnP6kObCaEtIDuHOUED6MNUo4K670KZUHuuvYPZDxNF0WVLw49n06M2m2dXphEzA==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.0.tgz", + "integrity": "sha512-WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw==", "requires": { "path-parse": "^1.0.6" } @@ -7770,6 +7760,15 @@ "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", "dev": true }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, "to-fast-properties": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", @@ -8164,13 +8163,48 @@ "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" }, "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", "dev": true, "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } } }, "wrappy": { @@ -8292,12 +8326,12 @@ "dev": true }, "yargs": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.2.tgz", - "integrity": "sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA==", + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.4.tgz", + "integrity": "sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg==", "dev": true, "requires": { - "cliui": "^4.0.0", + "cliui": "^5.0.0", "find-up": "^3.0.0", "get-caller-file": "^2.0.1", "os-locale": "^3.1.0", @@ -8307,7 +8341,7 @@ "string-width": "^3.0.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^13.0.0" + "yargs-parser": "^13.1.0" }, "dependencies": { "ansi-regex": { diff --git a/packages/project/package.json b/packages/project/package.json index 85c07342aa6..50febaa1e3c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.10.1" + "resolve": "^1.11.0" }, "devDependencies": { "ava": "^0.25.0", @@ -111,7 +111,7 @@ "eslint": "^5.16.0", "eslint-config-google": "^0.12.0", "eslint-plugin-jsdoc": "^4.8.4", - "jsdoc": "^3.6.1", + "jsdoc": "^3.6.2", "nyc": "^14.1.1", "opn-cli": "^4.1.0", "rimraf": "^2.6.3", From 67f19d0fc61cc224545697f2ffb17be207ccdb12 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 26 May 2019 04:20:05 +0000 Subject: [PATCH 0197/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 62 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2626ccf64f6..ce1d60db11e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -150,9 +150,9 @@ } }, "@babel/parser": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.4.tgz", - "integrity": "sha512-5pCS4mOsL+ANsFZGdvNLybx4wtqAZJ0MJjMHxvzI3bvIsz6sQvzW8XX92EYIkiPtIvcfG3Aj+Ir5VNyjnZhP7w==", + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.5.tgz", + "integrity": "sha512-9mUqkL1FF5T7f0WDFfAoDdiMVPWsdD1gZYzSnaXsxUCUqzuch/8of9G3VUSNiZmMBoRxT3neyVsqeiL/ZPcjew==", "dev": true }, "@babel/template": { @@ -167,16 +167,16 @@ } }, "@babel/traverse": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.4.tgz", - "integrity": "sha512-Gw6qqkw/e6AGzlyj9KnkabJX7VcubqPtkUQVAwkc0wUMldr3A/hezNB3Rc5eIvId95iSGkGIOe5hh1kMKf951A==", + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.5.tgz", + "integrity": "sha512-Vc+qjynwkjRmIFGxy0KYoPj4FdVDxLej89kMHFsWScq999uX+pwcX4v9mWRjW0KcAYTPAuVQl2LKP1wEVLsp+A==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", "@babel/generator": "^7.4.4", "@babel/helper-function-name": "^7.1.0", "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.4.4", + "@babel/parser": "^7.4.5", "@babel/types": "^7.4.4", "debug": "^4.1.0", "globals": "^11.1.0", @@ -1561,9 +1561,9 @@ "dev": true }, "bluebird": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.4.tgz", - "integrity": "sha512-FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw==" + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", + "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==" }, "boolbase": { "version": "1.0.0", @@ -2196,9 +2196,9 @@ } }, "core-js": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz", - "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==", + "version": "2.6.8", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.8.tgz", + "integrity": "sha512-RWlREFU74TEkdXzyl1bka66O3kYp8jeTXrvJZDzVVMH8AiHUSOFpL1yfhQJ+wHocAm1m+4971W1PPzfLuCv1vg==", "dev": true }, "core-util-is": { @@ -2498,9 +2498,9 @@ } }, "docdash": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.1.0.tgz", - "integrity": "sha512-sgcessH25PU6CIoJGeOjDCv9CLi6Z6TLwc553s/O+DKCnIRXT58e4CG3WsgI8Zea5ZQcjsfa8u4IwKqR2TKTxQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.1.1.tgz", + "integrity": "sha512-WQkkr01zL6kcIfq9YCSXtqqevM6NYoTXLdl+Td0OYCEcX0RgsuEMeqHXQaXFt+p6Lo15RIgA5XhLAn7RL+erhA==", "dev": true }, "doctrine": { @@ -4074,9 +4074,9 @@ "dev": true }, "uglify-js": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.13.tgz", - "integrity": "sha512-Lho+IJlquX6sdJgyKSJx/M9y4XbDd3ekPjD8S6HYmT5yVSwDtlSuca2w5hV4g2dIsp0Y/4orbfWxKexodmFv7w==", + "version": "3.5.15", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.15.tgz", + "integrity": "sha512-fe7aYFotptIddkwcm6YuA0HmknBZ52ZzOsUxZEdhhkSsz7RfjHDX2QDxwKTiv4JQ5t5NhfmpgAK+J7LiDhKSqg==", "dev": true, "optional": true, "requires": { @@ -5329,9 +5329,9 @@ } }, "markdown-it-anchor": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.0.2.tgz", - "integrity": "sha512-AFM/woBI8QDJMS/9+MmsBMT5/AR+ImfOsunQZTZhzcTmna3rIzAzbOh5E0l6mlFM/i9666BpUtkqQ9bS7WApCg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.1.0.tgz", + "integrity": "sha512-wJOmyXzDUxI8iuowEsaQAKMQBButhSw8j64SpgcaL75QZYC/OSZV66Fnr50lfMLYNGtV0rJdw2fmLwXCT6T+bw==", "dev": true }, "marked": { @@ -7044,9 +7044,9 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "semver": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.0.0.tgz", - "integrity": "sha512-0UewU+9rFapKFnlbirLi3byoOuhrSsli/z/ihNnvM24vgF+8sNBiI1LZPBSH9wJKUwaUbw+s3hToDLCXkrghrQ==" + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.0.tgz", + "integrity": "sha512-kCqEOOHoBcFs/2Ccuk4Xarm/KiWRSLEX9CAZF8xkJ6ZPlIoTZ8V5f7J16vYLJqDbR7KrxTJpR2lqjIEm2Qx9cQ==" }, "semver-diff": { "version": "2.1.0", @@ -7516,9 +7516,9 @@ "dev": true }, "table": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/table/-/table-5.3.3.tgz", - "integrity": "sha512-3wUNCgdWX6PNpOe3amTTPWPuF6VGvgzjKCaO1snFj0z7Y3mUPWf5+zDtxUVGispJkDECPmR29wbzh6bVMOHbcw==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.0.tgz", + "integrity": "sha512-nHFDrxmbrkU7JAFKqKbDJXfzrX2UBsWmrieXFTGxiI5e4ncg3VqsZeI4EzNmX0ncp4XNGVeoxIWJXfCIXwrsvw==", "dev": true, "requires": { "ajv": "^6.9.1", @@ -8222,9 +8222,9 @@ } }, "write-file-atomic": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.2.tgz", - "integrity": "sha512-s0b6vB3xIVRLWywa6X9TOMA7k9zio0TMOsl9ZnDkliA/cfJlpHXAscj0gbHVJiTdIuAYpIyqS5GW91fqm6gG5g==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", "dev": true, "requires": { "graceful-fs": "^4.1.11", diff --git a/packages/project/package.json b/packages/project/package.json index 50febaa1e3c..318f1c1c4f4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -107,7 +107,7 @@ "ava": "^0.25.0", "coveralls": "^3.0.3", "cross-env": "^5.2.0", - "docdash": "^1.1.0", + "docdash": "^1.1.1", "eslint": "^5.16.0", "eslint-config-google": "^0.12.0", "eslint-plugin-jsdoc": "^4.8.4", From 32057fcbc2a88c9e578b0f02ac5284967cf69854 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 2 Jun 2019 04:22:21 +0000 Subject: [PATCH 0198/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 36 +++++++++++++++--------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ce1d60db11e..62921e9cc87 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2196,9 +2196,9 @@ } }, "core-js": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.8.tgz", - "integrity": "sha512-RWlREFU74TEkdXzyl1bka66O3kYp8jeTXrvJZDzVVMH8AiHUSOFpL1yfhQJ+wHocAm1m+4971W1PPzfLuCv1vg==", + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", + "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", "dev": true }, "core-util-is": { @@ -4074,9 +4074,9 @@ "dev": true }, "uglify-js": { - "version": "3.5.15", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.15.tgz", - "integrity": "sha512-fe7aYFotptIddkwcm6YuA0HmknBZ52ZzOsUxZEdhhkSsz7RfjHDX2QDxwKTiv4JQ5t5NhfmpgAK+J7LiDhKSqg==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz", + "integrity": "sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==", "dev": true, "optional": true, "requires": { @@ -4199,9 +4199,9 @@ }, "dependencies": { "readable-stream": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz", - "integrity": "sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", + "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -5329,9 +5329,9 @@ } }, "markdown-it-anchor": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.1.0.tgz", - "integrity": "sha512-wJOmyXzDUxI8iuowEsaQAKMQBButhSw8j64SpgcaL75QZYC/OSZV66Fnr50lfMLYNGtV0rJdw2fmLwXCT6T+bw==", + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.3.tgz", + "integrity": "sha512-KjEKPZNYoanmTECbh9x1bBsXGJ6dNUTxIFg5YhdBxYkx/+27LNVUzh7Ctlb7jxadgGCWMX9tt46Aaby7Af8xSg==", "dev": true }, "marked": { @@ -6635,9 +6635,9 @@ "dev": true }, "psl": { - "version": "1.1.31", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", - "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==" + "version": "1.1.32", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.32.tgz", + "integrity": "sha512-MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g==" }, "pump": { "version": "3.0.0", @@ -7044,9 +7044,9 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "semver": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.0.tgz", - "integrity": "sha512-kCqEOOHoBcFs/2Ccuk4Xarm/KiWRSLEX9CAZF8xkJ6ZPlIoTZ8V5f7J16vYLJqDbR7KrxTJpR2lqjIEm2Qx9cQ==" + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.1.tgz", + "integrity": "sha512-rWYq2e5iYW+fFe/oPPtYJxYgjBm8sC4rmoGdUOgBB7VnwKt6HrL793l2voH1UlsyYZpJ4g0wfjnTEO1s1NP2eQ==" }, "semver-diff": { "version": "2.1.0", From 5f6008e4344755b61ad611de3552dd26a5bf582c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 3 Jun 2019 13:16:02 +0000 Subject: [PATCH 0199/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.2.3 to 1.3.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.3.0/CHANGELOG.md --- packages/project/package-lock.json | 262 ++++++++++++++++++++++++----- packages/project/package.json | 2 +- 2 files changed, 224 insertions(+), 40 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 62921e9cc87..6b4926bcfc8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -280,6 +280,20 @@ } } }, + "@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", + "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "requires": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + } + }, + "@nodelib/fs.stat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==" + }, "@sinonjs/commons": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz", @@ -316,28 +330,53 @@ "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", "dev": true }, + "@types/events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", + "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==" + }, + "@types/glob": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", + "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "requires": { + "@types/events": "*", + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" + }, + "@types/node": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.4.tgz", + "integrity": "sha512-j8YL2C0fXq7IONwl/Ud5Kt0PeXw22zGERt+HSSnwbKOJVsAGkEz3sFCYwaF9IOuoG1HOtE0vKCj6sXF7Q0+Vaw==" + }, "@ui5/builder": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.2.3.tgz", - "integrity": "sha512-Yjc9wxFfgibTKeTo43JCvYr+Qaj6vzTTVWyHO63QY9Ab4WVzgfVDRrnRLlFlLn8G5oV30pBDvz+rH7NtZiyE5w==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.3.0.tgz", + "integrity": "sha512-tuqAdS4u8NftoCRpUd6vCSR7zRaxftuuOzH3ou8uNFkqMI7WmzbVX79Bc/ZFDPedRqYijN+tPbYMYg5JyDvNcQ==", "requires": { - "@ui5/fs": "^1.0.2", + "@ui5/fs": "^1.1.0", "@ui5/logger": "^1.0.1", "cheerio": "^0.22.0", "escodegen": "^1.11.1", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "^4.2.0", - "globby": "^7.1.1", + "globby": "^9.2.0", "graceful-fs": "^4.1.15", "jsdoc": "3.5.5", "less-openui5": "^0.6.0", - "make-dir": "^2.1.0", + "make-dir": "^3.0.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^2.6.3", - "semver": "^6.0.0", + "semver": "^6.1.1", "tap-xunit": "^2.3.0", "uglify-es": "^3.2.2", "xml2js": "^0.4.17", @@ -362,25 +401,80 @@ "taffydb": "2.6.2", "underscore": "~1.8.3" } + }, + "make-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz", + "integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==", + "requires": { + "semver": "^6.0.0" + } } } }, "@ui5/fs": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.0.2.tgz", - "integrity": "sha512-8Fc4iqpo/sm2KMGV0MiesqWPoCVDf9OnWVWqdoJ0c7GwAh6olt2EDPtnjtQ0tLMW2Uovdh/Nz+S1qecY0Yb1GA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.1.0.tgz", + "integrity": "sha512-3RPbt3cIG5vY34ssSnr5KlROxqSG6y7sn9TarspPd0+7j1VvKY2leWASNOfuFCISmAnJGbNdFZcfmJfhbTWlEA==", "requires": { "@ui5/logger": "^1.0.1", "clone": "^2.1.0", - "dir-glob": "2.0.0", - "globby": "^7.1.1", + "globby": "^9.2.0", "graceful-fs": "^4.1.15", - "make-dir": "^2.1.0", - "micromatch": "^3.1.4", + "make-dir": "^3.0.0", + "micromatch": "^4.0.2", "minimatch": "^3.0.3", "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", - "random-int": "^1.0.0" + "random-int": "^2.0.0" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "make-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz", + "integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==", + "requires": { + "semver": "^6.0.0" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "requires": { + "is-number": "^7.0.0" + } + } } }, "@ui5/logger": { @@ -665,7 +759,8 @@ "arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true }, "asn1": { "version": "0.2.4", @@ -1738,6 +1833,11 @@ "estraverse": "^4.0.0" } }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=" + }, "call-signature": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", @@ -2489,11 +2589,10 @@ "dev": true }, "dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", + "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", "requires": { - "arrify": "^1.0.1", "path-type": "^3.0.0" } }, @@ -3169,6 +3268,53 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", "dev": true }, + "fast-glob": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + }, + "dependencies": { + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "requires": { + "is-extglob": "^2.1.1" + } + } + } + }, "fast-json-stable-stringify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", @@ -3990,6 +4136,11 @@ "is-glob": "^2.0.0" } }, + "glob-to-regexp": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", + "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=" + }, "global-dirs": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", @@ -4006,16 +4157,30 @@ "dev": true }, "globby": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", - "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", - "requires": { - "array-union": "^1.0.1", - "dir-glob": "^2.0.0", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", + "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^1.0.2", + "dir-glob": "^2.2.2", + "fast-glob": "^2.2.6", + "glob": "^7.1.3", + "ignore": "^4.0.3", + "pify": "^4.0.1", + "slash": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + } } }, "got": { @@ -4252,9 +4417,9 @@ } }, "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" }, "ignore-by-default": { "version": "1.0.1", @@ -5270,6 +5435,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, "requires": { "pify": "^4.0.1", "semver": "^5.6.0" @@ -5278,12 +5444,14 @@ "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true }, "semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true } } }, @@ -5540,6 +5708,11 @@ } } }, + "merge2": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.3.tgz", + "integrity": "sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA==" + }, "micromatch": { "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", @@ -6367,6 +6540,11 @@ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + }, "path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", @@ -6424,6 +6602,11 @@ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, + "picomatch": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.0.7.tgz", + "integrity": "sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==" + }, "pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", @@ -6666,9 +6849,9 @@ "dev": true }, "random-int": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-1.0.0.tgz", - "integrity": "sha1-5qLtNEisnGZGoGV0Q7HBUhWS7Qg=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.0.tgz", + "integrity": "sha512-jCJ4a8BJ+z3f4SYSFtYIiRfcdxe2Bvh+Gg2J+LjriL3dVOtrF77u0tklYbO8acHoZQ7JlYJn3lNKfW5TFjcwdQ==" }, "randomatic": { "version": "3.1.1", @@ -7135,7 +7318,8 @@ "slash": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true }, "slice-ansi": { "version": "1.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 318f1c1c4f4..e6dd5edf2dd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.2.3", + "@ui5/builder": "^1.3.0", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.1", From 9092598e2d1fba1e792b10b2e4255866f423256a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 13 Mar 2019 11:12:03 +0100 Subject: [PATCH 0200/1272] [ui5-project][INTERNAL] Configuration docs: Add various resource excludes (#180) --- packages/project/docs/Configuration.md | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 397ea18a4cc..b1a95f8a377 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -52,9 +52,14 @@ builder: afterTask: custom-task-name-1 configuration: color: blue + resources: + excludes: + - "/resources/some/project/name/test_results/**" + - "/test-resources/**" + - "!/test-resources/some/project/name/demo-app/**" jsdoc: excludes: - - some/project/name/thirdparty/** + - "some/project/name/thirdparty/**" server: settings: port: 8099 @@ -84,12 +89,17 @@ Some general information: It is recommended that modules include their namespace in the virtual path and use the `/resources` prefix (e.g. `/resources/my/first/library/module-xy`). #### builder (optional) +- `resources`: General resource configuration for this project + - `excludes`: List of glob patterns. Matching resources of this project will be ignored by the builder (i.e. all tasks). + Patterns are applied to the **virtual** path of resources (i.e. the UI5 runtime paths). Exclude patterns are always applied after any includes. +- `jsdoc`: Configuration specific to the JSDoc build task + - `excludes`: List of glob patterns. Matching resources will be ignored by the JSDoc build task. + Patterns are always applied relative to the projects virtual **source** directory `/resources/`. + Any general builder excludes (as defined in `builder.resources.excludes`) are applied *after* these excludes. - `customTasks` (optional, list): In this block, you define additional custom build tasks, see [here](./BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: - `name` (mandatory): The name of the custom task - `afterTask` or `beforeTask` (only one, mandatory): The name of the build task after or before which your custom task will be executed. - `configuration` (optional): Additional configuration that is passed to the custom build task -- `jsdoc` - - `excludes`: List of glob patterns. Matching resources will be ignored from the JSDoc build #### server (optional) - `settings` (not yet implemented) From e4fdaccfe412700d10b7752cc0e34a3aae2d431a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 3 Jun 2019 19:18:41 +0200 Subject: [PATCH 0201/1272] [ui5-project][INTERNAL] Bump ava to 2.0.0 Relevant changelogs: https://github.com/avajs/ava/releases/tag/v1.0.1 https://github.com/avajs/ava/releases/tag/v2.0.0 Relevant changes: - AVA now requires at least Node.js 8.9.4. We require only 8.5. However, since this is a devDependency I guess we can live with that. - t.throws() does not accept promises anymore. Use t.throwsAsync() - Test titles now must be unique --- packages/project/package-lock.json | 4033 ++++++----------- packages/project/package.json | 4 +- packages/project/test/lib/extensions.js | 12 +- packages/project/test/lib/normalizer.js | 2 +- .../project/test/lib/projectPreprocessor.js | 22 +- packages/project/test/lib/translators/npm.js | 6 +- .../project/test/lib/translators/static.js | 4 +- 7 files changed, 1473 insertions(+), 2610 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6b4926bcfc8..e6ba52b0dbd 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,70 +5,31 @@ "requires": true, "dependencies": { "@ava/babel-plugin-throws-helper": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-2.0.0.tgz", - "integrity": "sha1-L8H+PCEacQcaTsp7j3r1hCzRrnw=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-3.0.0.tgz", + "integrity": "sha512-mN9UolOs4WX09QkheU1ELkVy2WPnwonlO3XMdN8JF8fQqRVgVTR21xDbvEOUsbwz6Zwjq7ji9yzyjuXqDPalxg==", "dev": true }, "@ava/babel-preset-stage-4": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-1.1.0.tgz", - "integrity": "sha512-oWqTnIGXW3k72UFidXzW0ONlO7hnO9x02S/QReJ7NBGeiBH9cUHY9+EfV6C8PXC6YJH++WrliEq03wMSJGNZFg==", - "dev": true, - "requires": { - "babel-plugin-check-es2015-constants": "^6.8.0", - "babel-plugin-syntax-trailing-function-commas": "^6.20.0", - "babel-plugin-transform-async-to-generator": "^6.16.0", - "babel-plugin-transform-es2015-destructuring": "^6.19.0", - "babel-plugin-transform-es2015-function-name": "^6.9.0", - "babel-plugin-transform-es2015-modules-commonjs": "^6.18.0", - "babel-plugin-transform-es2015-parameters": "^6.21.0", - "babel-plugin-transform-es2015-spread": "^6.8.0", - "babel-plugin-transform-es2015-sticky-regex": "^6.8.0", - "babel-plugin-transform-es2015-unicode-regex": "^6.11.0", - "babel-plugin-transform-exponentiation-operator": "^6.8.0", - "package-hash": "^1.2.0" - }, - "dependencies": { - "md5-hex": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", - "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "package-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-1.2.0.tgz", - "integrity": "sha1-AD5WzVe3NqbtYRTMK4FUJnJ3DkQ=", - "dev": true, - "requires": { - "md5-hex": "^1.3.0" - } - } - } - }, - "@ava/babel-preset-transform-test-files": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-3.0.0.tgz", - "integrity": "sha1-ze0RlqjY2TgaUJJAq5LpGl7Aafc=", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-3.0.0.tgz", + "integrity": "sha512-uI5UBx++UsckkfnbF0HH6jvTIvM4r/Kxt1ROO2YXKu5H15sScAtxUIAHiUVbPIw24zPqz/PlF3xxlIDuyFzlQw==", "dev": true, "requires": { - "@ava/babel-plugin-throws-helper": "^2.0.0", - "babel-plugin-espower": "^2.3.2" + "@babel/plugin-proposal-async-generator-functions": "^7.2.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", + "@babel/plugin-transform-dotall-regex": "^7.4.3", + "@babel/plugin-transform-modules-commonjs": "^7.4.3" } }, - "@ava/write-file-atomic": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ava/write-file-atomic/-/write-file-atomic-2.2.0.tgz", - "integrity": "sha512-BTNB3nGbEfJT+69wuqXFr/bQH7Vr7ihx2xGOMNqPgDGhwspoZhiWumDDZNjBy7AScmqS5CELIOGtPVXESyrnDA==", + "@ava/babel-preset-transform-test-files": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-5.0.0.tgz", + "integrity": "sha512-rqgyQwkT0+j2JzYP51dOv80u33rzAvjBtXRzUON+7+6u26mjoudRXci2+1s18rat8r4uOlZfbzm114YS6pwmYw==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" + "@ava/babel-plugin-throws-helper": "^3.0.0", + "babel-plugin-espower": "^3.0.1" } }, "@babel/code-frame": { @@ -80,6 +41,51 @@ "@babel/highlight": "^7.0.0" } }, + "@babel/core": { + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.4.5.tgz", + "integrity": "sha512-OvjIh6aqXtlsA8ujtGKfC7LYWksYSX8yQcM8Ay3LuvVeQ63lcOKgoZWVqcpFwkd29aYU9rVx7jxhfhiEDV9MZA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.4.4", + "@babel/helpers": "^7.4.4", + "@babel/parser": "^7.4.5", + "@babel/template": "^7.4.4", + "@babel/traverse": "^7.4.5", + "@babel/types": "^7.4.4", + "convert-source-map": "^1.1.0", + "debug": "^4.1.0", + "json5": "^2.1.0", + "lodash": "^4.17.11", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, "@babel/generator": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.4.tgz", @@ -101,6 +107,15 @@ } } }, + "@babel/helper-annotate-as-pure": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", + "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, "@babel/helper-function-name": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", @@ -121,6 +136,67 @@ "@babel/types": "^7.0.0" } }, + "@babel/helper-module-imports": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", + "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-module-transforms": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.4.4.tgz", + "integrity": "sha512-3Z1yp8TVQf+B4ynN7WoHPKS8EkdTbgAEy0nU0rs/1Kw4pDgmvYH3rz3aI11KgxKCba2cn7N+tqzV1mY2HMN96w==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-simple-access": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.4.4", + "@babel/template": "^7.4.4", + "@babel/types": "^7.4.4", + "lodash": "^4.17.11" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", + "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", + "dev": true + }, + "@babel/helper-regex": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.4.4.tgz", + "integrity": "sha512-Y5nuB/kESmR3tKjU8Nkn1wMGEx1tjJX076HBMeL3XLQCu6vA/YRzuTW0bbb+qRnXvQGn+d6Rx953yffl8vEy7Q==", + "dev": true, + "requires": { + "lodash": "^4.17.11" + } + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz", + "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-wrap-function": "^7.1.0", + "@babel/template": "^7.1.0", + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-simple-access": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz", + "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==", + "dev": true, + "requires": { + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, "@babel/helper-split-export-declaration": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", @@ -130,6 +206,29 @@ "@babel/types": "^7.4.4" } }, + "@babel/helper-wrap-function": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz", + "integrity": "sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.1.0", + "@babel/template": "^7.1.0", + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.2.0" + } + }, + "@babel/helpers": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.4.4.tgz", + "integrity": "sha512-igczbR/0SeuPR8RFfC7tGrbdTbFL3QTvH6D+Z6zNxnTe//GyqmtHmDkzrqDmyZ3eSwPqB/LhyKoU5DXsp+Vp2A==", + "dev": true, + "requires": { + "@babel/template": "^7.4.4", + "@babel/traverse": "^7.4.4", + "@babel/types": "^7.4.4" + } + }, "@babel/highlight": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", @@ -155,6 +254,76 @@ "integrity": "sha512-9mUqkL1FF5T7f0WDFfAoDdiMVPWsdD1gZYzSnaXsxUCUqzuch/8of9G3VUSNiZmMBoRxT3neyVsqeiL/ZPcjew==", "dev": true }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz", + "integrity": "sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-remap-async-to-generator": "^7.1.0", + "@babel/plugin-syntax-async-generators": "^7.2.0" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", + "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", + "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", + "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", + "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.4.4.tgz", + "integrity": "sha512-P05YEhRc2h53lZDjRPk/OektxCVevFzZs2Gfjd545Wde3k+yFDbXORgl2e0xpbq8mLcKJ7Idss4fAg0zORN/zg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.4.4", + "regexpu-core": "^4.5.4" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.4.4.tgz", + "integrity": "sha512-4sfBOJt58sEo9a2BQXnZq+Q3ZTSAUXyK3E30o36BOGnJ+tvJ6YSxF0PG6kERvbeISgProodWuI9UVG3/FMY6iw==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.4.4", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-simple-access": "^7.1.0" + } + }, "@babel/template": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz", @@ -226,60 +395,14 @@ } }, "@concordance/react": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@concordance/react/-/react-1.0.0.tgz", - "integrity": "sha512-htrsRaQX8Iixlsek8zQU7tE8wcsTQJ5UhZkSPEA8slCDAisKpC/2VgU/ucPn32M5/LjGGXRaUEKvEw1Wiuu4zQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@concordance/react/-/react-2.0.0.tgz", + "integrity": "sha512-huLSkUuM2/P+U0uy2WwlKuixMsTODD8p4JVQBI4VKeopkiN0C7M3N9XYVawb4M+4spN5RrO/eLhk7KoQX6nsfA==", "dev": true, "requires": { "arrify": "^1.0.1" } }, - "@ladjs/time-require": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@ladjs/time-require/-/time-require-0.1.4.tgz", - "integrity": "sha512-weIbJqTMfQ4r1YX85u54DKfjLZs2jwn1XZ6tIOP/pFgMwhIN5BAtaCp/1wn9DzyLsDR9tW0R2NIePcVJ45ivQQ==", - "dev": true, - "requires": { - "chalk": "^0.4.0", - "date-time": "^0.1.1", - "pretty-ms": "^0.2.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", - "dev": true - }, - "chalk": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", - "dev": true, - "requires": { - "ansi-styles": "~1.0.0", - "has-color": "~0.1.0", - "strip-ansi": "~0.1.0" - } - }, - "pretty-ms": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-0.2.2.tgz", - "integrity": "sha1-2oeaaC/zOjcBEEbxPWJ/Z8c7hPY=", - "dev": true, - "requires": { - "parse-ms": "^0.1.0" - } - }, - "strip-ansi": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", - "dev": true - } - } - }, "@mrmlnc/readdir-enhanced": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", @@ -294,6 +417,12 @@ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==" }, + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true + }, "@sinonjs/commons": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz", @@ -330,6 +459,15 @@ "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", "dev": true }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "requires": { + "defer-to-connect": "^1.0.1" + } + }, "@types/events": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", @@ -515,18 +653,18 @@ "optional": true }, "ansi-align": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", + "integrity": "sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw==", "dev": true, "requires": { - "string-width": "^2.0.0" + "string-width": "^3.0.0" }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, "is-fullwidth-code-point": { @@ -536,22 +674,23 @@ "dev": true }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "dev": true, "requires": { + "emoji-regex": "^7.0.1", "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "strip-ansi": "^5.1.0" } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^4.1.0" } } } @@ -577,88 +716,20 @@ } }, "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.0.2.tgz", + "integrity": "sha512-rUe9SxpRQlVg4EM8It7JMNWWYHAirTPpbTuvaSKybb5IejNgWB3PGBBX9rrPKDx2pM/p3Wh+7+ASaWRyyAbxmQ==", "dev": true, "requires": { - "micromatch": "^2.1.5", - "normalize-path": "^2.0.0" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "dependencies": { - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "requires": { - "is-posix-bracket": "^0.1.0" - } - }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" - } } } }, @@ -704,12 +775,6 @@ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" }, - "arr-exclude": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/arr-exclude/-/arr-exclude-1.0.0.tgz", - "integrity": "sha1-38fC5VKicHI8zaBM8xKMjL/lxjE=", - "dev": true - }, "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", @@ -720,12 +785,6 @@ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" }, - "array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=", - "dev": true - }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -802,305 +861,332 @@ "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, - "auto-bind": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-1.2.1.tgz", - "integrity": "sha512-/W9yj1yKmBLwpexwAujeD9YHwYmRuWFGV8HWE7smQab797VeHa4/cnE2NFeDhA+E+5e/OGBI8763EhLjfZ/MXA==", - "dev": true - }, "ava": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-0.25.0.tgz", - "integrity": "sha512-4lGNJCf6xL8SvsKVEKxEE46se7JAUIAZoKHw9itTQuwcsydhpAMkBs5gOOiWiwt0JKNIuXWc2/r4r8ZdcNrBEw==", - "dev": true, - "requires": { - "@ava/babel-preset-stage-4": "^1.1.0", - "@ava/babel-preset-transform-test-files": "^3.0.0", - "@ava/write-file-atomic": "^2.2.0", - "@concordance/react": "^1.0.0", - "@ladjs/time-require": "^0.1.4", - "ansi-escapes": "^3.0.0", - "ansi-styles": "^3.1.0", - "arr-flatten": "^1.0.1", - "array-union": "^1.0.1", - "array-uniq": "^1.0.2", - "arrify": "^1.0.0", - "auto-bind": "^1.1.0", - "ava-init": "^0.2.0", - "babel-core": "^6.17.0", - "babel-generator": "^6.26.0", - "babel-plugin-syntax-object-rest-spread": "^6.13.0", - "bluebird": "^3.0.0", - "caching-transform": "^1.0.0", - "chalk": "^2.0.1", - "chokidar": "^1.4.2", - "clean-stack": "^1.1.1", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-2.0.0.tgz", + "integrity": "sha512-tOfO3yQhKiSECIjST8Xi99l7Bja9EG5hgZFKc92xNZh/6pnct97vWDKENyATBvZIXpdCClSMtGgOX2UaGq+OJA==", + "dev": true, + "requires": { + "@ava/babel-preset-stage-4": "^3.0.0", + "@ava/babel-preset-transform-test-files": "^5.0.0", + "@babel/core": "^7.4.5", + "@babel/generator": "^7.4.4", + "@babel/plugin-syntax-async-generators": "^7.2.0", + "@babel/plugin-syntax-object-rest-spread": "^7.2.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", + "@concordance/react": "^2.0.0", + "ansi-escapes": "^4.1.0", + "ansi-styles": "^4.0.0", + "arr-flatten": "^1.1.0", + "array-union": "^2.1.0", + "array-uniq": "^2.1.0", + "arrify": "^2.0.1", + "bluebird": "^3.5.5", + "chalk": "^2.4.2", + "chokidar": "^3.0.0", + "chunkd": "^1.0.0", + "ci-parallel-vars": "^1.0.0", + "clean-stack": "^2.1.0", "clean-yaml-object": "^0.1.0", - "cli-cursor": "^2.1.0", - "cli-spinners": "^1.0.0", - "cli-truncate": "^1.0.0", - "co-with-promise": "^4.6.0", + "cli-cursor": "^3.0.0", + "cli-truncate": "^1.1.0", "code-excerpt": "^2.1.1", "common-path-prefix": "^1.0.0", - "concordance": "^3.0.0", - "convert-source-map": "^1.5.1", - "core-assert": "^0.2.0", + "concordance": "^4.0.0", + "convert-source-map": "^1.6.0", "currently-unhandled": "^0.4.1", - "debug": "^3.0.1", - "dot-prop": "^4.1.0", - "empower-core": "^0.6.1", + "debug": "^4.1.1", + "del": "^4.1.1", + "dot-prop": "^5.0.0", + "emittery": "^0.4.1", + "empower-core": "^1.2.0", "equal-length": "^1.0.0", - "figures": "^2.0.0", - "find-cache-dir": "^1.0.0", - "fn-name": "^2.0.0", - "get-port": "^3.0.0", - "globby": "^6.0.0", - "has-flag": "^2.0.0", - "hullabaloo-config-manager": "^1.1.0", + "escape-string-regexp": "^2.0.0", + "esm": "^3.2.25", + "figures": "^3.0.0", + "find-up": "^4.0.0", + "get-port": "^5.0.0", + "globby": "^9.2.0", "ignore-by-default": "^1.0.0", - "import-local": "^0.1.1", - "indent-string": "^3.0.0", - "is-ci": "^1.0.7", - "is-generator-fn": "^1.0.0", - "is-obj": "^1.0.0", - "is-observable": "^1.0.0", + "import-local": "^2.0.0", + "indent-string": "^4.0.0", + "is-ci": "^2.0.0", + "is-error": "^2.2.2", + "is-observable": "^2.0.0", + "is-plain-object": "^3.0.0", "is-promise": "^2.1.0", - "last-line-stream": "^1.0.0", - "lodash.clonedeepwith": "^4.5.0", - "lodash.debounce": "^4.0.3", - "lodash.difference": "^4.3.0", - "lodash.flatten": "^4.2.0", - "loud-rejection": "^1.2.0", - "make-dir": "^1.0.0", - "matcher": "^1.0.0", - "md5-hex": "^2.0.0", - "meow": "^3.7.0", - "ms": "^2.0.0", - "multimatch": "^2.1.0", - "observable-to-promise": "^0.5.0", - "option-chain": "^1.0.0", - "package-hash": "^2.0.0", - "pkg-conf": "^2.0.0", - "plur": "^2.0.0", - "pretty-ms": "^3.0.0", + "lodash": "^4.17.11", + "loud-rejection": "^2.1.0", + "make-dir": "^3.0.0", + "matcher": "^2.0.0", + "md5-hex": "^3.0.0", + "meow": "^5.0.0", + "micromatch": "^4.0.2", + "ms": "^2.1.1", + "observable-to-promise": "^1.0.0", + "ora": "^3.4.0", + "package-hash": "^4.0.0", + "pkg-conf": "^3.1.0", + "plur": "^3.1.1", + "pretty-ms": "^5.0.0", "require-precompiled": "^0.1.0", - "resolve-cwd": "^2.0.0", - "safe-buffer": "^5.1.1", - "semver": "^5.4.1", - "slash": "^1.0.0", - "source-map-support": "^0.5.0", - "stack-utils": "^1.0.1", - "strip-ansi": "^4.0.0", - "strip-bom-buf": "^1.0.0", + "resolve-cwd": "^3.0.0", + "slash": "^3.0.0", + "source-map-support": "^0.5.12", + "stack-utils": "^1.0.2", + "strip-ansi": "^5.2.0", + "strip-bom-buf": "^2.0.0", "supertap": "^1.0.0", - "supports-color": "^5.0.0", + "supports-color": "^6.1.0", "trim-off-newlines": "^1.0.1", + "trim-right": "^1.0.1", "unique-temp-dir": "^1.0.0", - "update-notifier": "^2.3.0" + "update-notifier": "^3.0.0", + "write-file-atomic": "^3.0.0" }, "dependencies": { + "ansi-escapes": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.1.0.tgz", + "integrity": "sha512-2VY/iCUZTDLD/qxptS3Zn3c6k2MeIbYqjRXqM8T5oC7N2mMjh3xIU3oYru6cHGbldFa9h5i8N0fP65UaUqrMWA==", + "dev": true, + "requires": { + "type-fest": "^0.3.0" + } + }, "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "ansi-styles": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.0.0.tgz", + "integrity": "sha512-8zjUtFJ3db/QoPXuuEMloS2AUf79/yeyttJ7Abr3hteopJu9HK8vsgGviGUMq+zyA6cZZO6gAyZoMTF6TgaEjA==", + "dev": true, + "requires": { + "color-convert": "^2.0.0" + } + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "array-uniq": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-2.1.0.tgz", + "integrity": "sha512-bdHxtev7FN6+MXI1YFW0Q8mQ8dTJc2S8AMfju+ZR77pbg2yAdVyDlwkaUI7Har0LyOMRFPHrJ9lYdyjZZswdlQ==", + "dev": true + }, + "arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "cli-cursor": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.0.0.tgz", + "integrity": "sha512-m7avcYLWHHQVU+cFxu301q3kKZJlcZcKXQSL9kffYnIvRNtqX+a7gJKXqOKusHoKXr4oquSgiMlAo1R0dDkSZA==", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "color-convert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.0.tgz", + "integrity": "sha512-hzTicsCJIHdxih9+2aLR1tNGZX5qSJGRHDPVwSY26tVrEf55XNajLOBWz2UuWSIergszA09/bqnOiHyqx9fxQg==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { "ms": "^2.1.1" + } + }, + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true + }, + "figures": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.0.0.tgz", + "integrity": "sha512-HKri+WoWoUgr83pehn/SIgLOMZ9nAWC6dcGj26RY2R4F50u4+RTUz0RCrUlOV3nKRAICW1UGzyb+kcX2qK1S/g==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" }, "dependencies": { - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true } } }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "to-regex-range": "^5.0.1" } }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "find-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.0.0.tgz", + "integrity": "sha512-zoH7ZWPkRdgwYCDVoQTzqjG8JSPANhtvLhh4KVUHyKnaUJJrNeFmWIkTcNuJmR3GLMEmGYEf2S2bjgx26JTF+Q==", "dev": true, "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } + "locate-path": "^5.0.0" } }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "is-plain-object": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz", + "integrity": "sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg==", "dev": true, "requires": { - "pinkie": "^2.0.0" + "isobject": "^4.0.0" } }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "isobject": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", + "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", "dev": true }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "p-locate": "^4.1.0" } - } - } - }, - "ava-init": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/ava-init/-/ava-init-0.2.1.tgz", - "integrity": "sha512-lXwK5LM+2g1euDRqW1mcSX/tqzY1QU7EjKpqayFPPtNRmbSYZ8RzPO5tqluTToijmtjp2M+pNpVdbcHssC4glg==", - "dev": true, - "requires": { - "arr-exclude": "^1.0.0", - "execa": "^0.7.0", - "has-yarn": "^1.0.0", - "read-pkg-up": "^2.0.0", - "write-pkg": "^3.1.0" - }, - "dependencies": { - "find-up": { + }, + "loud-rejection": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-2.1.0.tgz", + "integrity": "sha512-g/6MQxUXYHeVqZ4PGpPL1fS1fOvlXoi7bay0pizmjAd/3JhyXwxzwrnr74yzdmhuerlslbRJ3x7IOXzFz0cE5w==", "dev": true, "requires": { - "locate-path": "^2.0.0" + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.2" } }, - "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "make-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz", + "integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" + "semver": "^6.0.0" } }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", "dev": true, "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "braces": "^3.0.1", + "picomatch": "^2.0.5" } }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true }, "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "requires": { - "p-limit": "^1.1.0" + "p-limit": "^2.2.0" } }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "error-ex": "^1.2.0" + "ansi-regex": "^4.1.0" } }, - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "dev": true, "requires": { - "pify": "^2.0.0" + "has-flag": "^3.0.0" } }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" + "is-number": "^7.0.0" } }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "write-file-atomic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.0.tgz", + "integrity": "sha512-EIgkf60l2oWsffja2Sf2AL384dx328c0B+cIYPTQq5q2rOYuDV00/iPFBOUiDKKwKMOhkymH8AidPaRvzfxY+Q==", "dev": true, "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" } } } @@ -1115,476 +1201,25 @@ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "babel-plugin-espower": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-3.0.1.tgz", + "integrity": "sha512-Ms49U7VIAtQ/TtcqRbD6UBmJBUCSxiC3+zPc+eGqxKUIFO1lTshyEDRUjhoAbd2rWfwYf3cZ62oXozrd8W6J0A==", "dev": true, "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } + "@babel/generator": "^7.0.0", + "@babel/parser": "^7.0.0", + "call-matcher": "^1.0.0", + "core-js": "^2.0.0", + "espower-location-detector": "^1.0.0", + "espurify": "^1.6.0", + "estraverse": "^4.1.1" } }, - "babel-core": { - "version": "6.26.3", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", - "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", - "dev": true, - "requires": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true - } - } - }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true, - "requires": { - "babel-helper-explode-assignable-expression": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", - "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true, - "requires": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-espower": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-2.4.0.tgz", - "integrity": "sha512-/+SRpy7pKgTI28oEHfn1wkuM5QFAdRq8WNsOOih1dVrdV6A/WbNbRZyl0eX5eyDgtb0lOE27PeDFuCX2j8OxVg==", - "dev": true, - "requires": { - "babel-generator": "^6.1.0", - "babylon": "^6.1.0", - "call-matcher": "^1.0.0", - "core-js": "^2.0.0", - "espower-location-detector": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.1.1" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", - "dev": true - }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", - "dev": true - }, - "babel-plugin-syntax-object-rest-spread": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", - "dev": true - }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", - "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", - "dev": true - }, - "babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true, - "requires": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-functions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", - "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", - "dev": true, - "requires": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" - } - }, - "babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", - "dev": true, - "requires": { - "babel-helper-call-delegate": "^6.24.1", - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", - "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "regexpu-core": "^2.0.0" - } - }, - "babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", - "dev": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", - "babel-plugin-syntax-exponentiation-operator": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" - }, - "dependencies": { - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "^0.5.6" - } - } - } - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - }, - "dependencies": { - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - } - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "babylon": { - "version": "7.0.0-beta.19", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", - "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" + "babylon": { + "version": "7.0.0-beta.19", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", + "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" }, "balanced-match": { "version": "1.0.0", @@ -1650,9 +1285,9 @@ } }, "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", + "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", "dev": true }, "bluebird": { @@ -1666,30 +1301,31 @@ "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" }, "boxen": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", - "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-3.2.0.tgz", + "integrity": "sha512-cU4J/+NodM3IHdSL2yN8bqYqnmlBTidDR4RC7nJs61ZmtGz8VZzM3HLQX0zY5mrSmPtR3xWwsq2jOUQqFZN8+A==", "dev": true, "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", + "ansi-align": "^3.0.0", + "camelcase": "^5.3.1", + "chalk": "^2.4.2", + "cli-boxes": "^2.2.0", + "string-width": "^3.0.0", "term-size": "^1.2.0", + "type-fest": "^0.3.0", "widest-line": "^2.0.0" }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, "is-fullwidth-code-point": { @@ -1699,22 +1335,23 @@ "dev": true }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "dev": true, "requires": { + "emoji-regex": "^7.0.1", "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "strip-ansi": "^5.1.0" } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^4.1.0" } } } @@ -1755,12 +1392,6 @@ } } }, - "buf-compare": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buf-compare/-/buf-compare-1.0.1.tgz", - "integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=", - "dev": true - }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -1788,35 +1419,28 @@ "unset-value": "^1.0.0" } }, - "caching-transform": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-1.0.1.tgz", - "integrity": "sha1-bb2y8g+Nj7znnz6U6dF0Lc31wKE=", + "cacheable-request": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.0.0.tgz", + "integrity": "sha512-2N7AmszH/WPPpl5Z3XMw1HAP+8d+xugnKQAeKvxFZ/04dbT/CAznqwbl+7eSr3HkwdepNwtb2yx3CAMQWvG01Q==", "dev": true, "requires": { - "md5-hex": "^1.2.0", - "mkdirp": "^0.5.1", - "write-file-atomic": "^1.1.4" + "clone-response": "^1.0.2", + "get-stream": "^4.0.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^1.0.1", + "normalize-url": "^3.1.0", + "responselike": "^1.0.2" }, "dependencies": { - "md5-hex": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-1.3.0.tgz", - "integrity": "sha1-0sSv6YPENwZiF5uMrRRSGRNQRsQ=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "write-file-atomic": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-1.3.4.tgz", - "integrity": "sha1-+Aek8LHZ6ROuekgRLmzDrxmRtF8=", + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "slide": "^1.1.5" + "pump": "^3.0.0" } } } @@ -1851,27 +1475,30 @@ "dev": true }, "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", "dev": true }, "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", "dev": true, "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + }, + "dependencies": { + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + } } }, - "capture-stack-trace": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", - "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", - "dev": true - }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -1926,47 +1553,100 @@ } }, "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true, - "requires": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "fsevents": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0" - } - }, - "ci-info": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", - "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.0.1.tgz", + "integrity": "sha512-2ww34sJWehnbpV0Q4k4V5Hh7juo7po6z7LUWkcIQnSGN1lHOL8GGtLtfwabKvLFQw/hbSUQ0u6V7OgGYgBzlkQ==", + "dev": true, + "requires": { + "anymatch": "^3.0.1", + "async-each": "^1.0.3", + "braces": "^3.0.2", + "fsevents": "^2.0.6", + "glob-parent": "^5.0.0", + "is-binary-path": "^2.1.0", + "is-glob": "^4.0.1", + "normalize-path": "^3.0.0", + "readdirp": "^3.0.2" }, "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "fill-range": "^7.0.1" } - } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "chunkd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/chunkd/-/chunkd-1.0.0.tgz", + "integrity": "sha512-xx3Pb5VF9QaqCotolyZ1ywFBgyuJmu6+9dLiqBxgelEse9Xsr3yUlpoX3O4Oh11M00GT2kYMsRByTKIMJW2Lkg==", + "dev": true + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "ci-parallel-vars": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ci-parallel-vars/-/ci-parallel-vars-1.0.0.tgz", + "integrity": "sha512-u6dx20FBXm+apMi+5x7UVm6EH7BL1gc4XrcnQewjcB7HWRcor/V5qWc3RG2HwpgDJ26gIi2DSEu3B7sXynAw/g==", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } } }, "clean-css": { @@ -1979,9 +1659,9 @@ } }, "clean-stack": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", - "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.1.0.tgz", + "integrity": "sha512-uQWrpRm+iZZUCAp7ZZJQbd4Za9I3AjR/3YTjmcnAtkauaIm/T5CT6U8zVI6e60T6OANqBFAzuR9/HB3NzuZCRA==", "dev": true }, "clean-yaml-object": { @@ -1991,9 +1671,9 @@ "dev": true }, "cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.0.tgz", + "integrity": "sha512-gpaBrMAizVEANOpfZp/EEUixTXDyGt7DFzdK5hU+UbWt/J0lB0w20ncZj59Z9a93xHb9u12zF5BS6i9RKbtg4w==", "dev": true }, "cli-cursor": { @@ -2006,9 +1686,9 @@ } }, "cli-spinners": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", - "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.1.0.tgz", + "integrity": "sha512-8B00fJOEh1HPrx4fo5eW16XmE1PcL1tGpGrxy63CXGP9nHdPBN63X75hA1zhvQuhVztJWLqV58Roj2qlNM7cAA==", "dev": true }, "cli-truncate": { @@ -2110,13 +1790,13 @@ "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" }, - "co-with-promise": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co-with-promise/-/co-with-promise-4.6.0.tgz", - "integrity": "sha1-QT59tvWJOmC5Qs9JLEvsk9tBWrc=", + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", "dev": true, "requires": { - "pinkie-promise": "^1.0.0" + "mimic-response": "^1.0.0" } }, "code-excerpt": { @@ -2200,31 +1880,31 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "concordance": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-3.0.0.tgz", - "integrity": "sha512-CZBzJ3/l5QJjlZM20WY7+5GP5pMTw+1UEbThcpMw8/rojsi5sBCiD8ZbBLtD+jYpRGAkwuKuqk108c154V9eyQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-4.0.0.tgz", + "integrity": "sha512-l0RFuB8RLfCS0Pt2Id39/oCPykE01pyxgAFypWTlaGRgvLkZrtczZ8atEHpTeEIW+zYWXTBuA9cCSeEOScxReQ==", "dev": true, "requires": { "date-time": "^2.1.0", "esutils": "^2.0.2", - "fast-diff": "^1.1.1", - "function-name-support": "^0.2.0", + "fast-diff": "^1.1.2", "js-string-escape": "^1.0.1", "lodash.clonedeep": "^4.5.0", "lodash.flattendeep": "^4.4.0", - "lodash.merge": "^4.6.0", + "lodash.islength": "^4.0.1", + "lodash.merge": "^4.6.1", "md5-hex": "^2.0.0", - "semver": "^5.3.0", - "well-known-symbols": "^1.0.0" + "semver": "^5.5.1", + "well-known-symbols": "^2.0.0" }, "dependencies": { - "date-time": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", - "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", + "md5-hex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", + "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", "dev": true, "requires": { - "time-zone": "^1.0.0" + "md5-o-matic": "^0.1.1" } }, "semver": { @@ -2236,9 +1916,9 @@ } }, "configstore": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", - "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-4.0.0.tgz", + "integrity": "sha512-CmquAXFBocrzaSM8mtGPMM/HiWmyIpr4CcJl/rgY2uCObZ/S7cKU0silxslqJejl+t/T9HS8E0PUNQD81JGUEQ==", "dev": true, "requires": { "dot-prop": "^4.1.0", @@ -2249,6 +1929,15 @@ "xdg-basedir": "^3.0.0" }, "dependencies": { + "dot-prop": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", + "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, "make-dir": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", @@ -2285,16 +1974,6 @@ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" }, - "core-assert": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/core-assert/-/core-assert-0.2.1.tgz", - "integrity": "sha1-+F4s+b/tKPdzzIs/pcW2m9wC/j8=", - "dev": true, - "requires": { - "buf-compare": "^1.0.0", - "is-error": "^2.2.0" - } - }, "core-js": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", @@ -2349,15 +2028,6 @@ } } }, - "create-error-class": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", - "dev": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, "cross-env": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", @@ -2466,10 +2136,13 @@ } }, "date-time": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz", - "integrity": "sha1-7S9tk9l5DOL9ZtW1/z7dW7y/Owc=", - "dev": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", + "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", + "dev": true, + "requires": { + "time-zone": "^1.0.0" + } }, "debug": { "version": "2.6.9", @@ -2500,6 +2173,15 @@ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + } + }, "deep-equal": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", @@ -2526,6 +2208,29 @@ "strip-bom": "^3.0.0" } }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "requires": { + "clone": "^1.0.2" + }, + "dependencies": { + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true + } + } + }, + "defer-to-connect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.0.2.tgz", + "integrity": "sha512-k09hcQcTDY+cwgiwa6PYKLm3jlagNzQ+RSvhjzESOGOx+MNOuXkxTfEvPrO1IOQ81tArCFYQgi631clB70RpQw==", + "dev": true + }, "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", @@ -2563,6 +2268,50 @@ } } }, + "del": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", + "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "globby": "^6.1.0", + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" + }, + "dependencies": { + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + } + } + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -2573,15 +2322,6 @@ "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" }, - "detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, "diff": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", @@ -2643,9 +2383,9 @@ } }, "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.0.0.tgz", + "integrity": "sha512-RTmaF2jx3nOBO2GvtFqjnDLycjFUMqt+2pwRx7JVYa81lDauoj9aNkyrJI2ikR58FbBIchiIlRiGG+muLJ4oHQ==", "dev": true, "requires": { "is-obj": "^1.0.0" @@ -2680,6 +2420,12 @@ "safer-buffer": "^2.1.0" } }, + "emittery": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.4.1.tgz", + "integrity": "sha512-r4eRSeStEGf6M5SKdrQhhLK5bOwOBxQhIE3YSTnZE3GpKiLfnnhE+tPtrJE79+eDJgm39BM6LSoI8SCx4HbwlQ==", + "dev": true + }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", @@ -2687,9 +2433,9 @@ "dev": true }, "empower-core": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz", - "integrity": "sha1-Wt71ZgiOMfuoC6CjbfR9cJQWkUQ=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-1.2.0.tgz", + "integrity": "sha512-g6+K6Geyc1o6FdXs9HwrXleCFan7d66G5xSCfSF7x1mJDCes6t0om9lFQG3zOrzh3Bkb/45N0cZ5Gqsf7YrzGQ==", "dev": true, "requires": { "call-signature": "0.0.2", @@ -2982,6 +2728,12 @@ "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", "dev": true }, + "esm": { + "version": "3.2.25", + "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", + "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", + "dev": true + }, "espower-location-detector": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", @@ -3107,57 +2859,6 @@ } } }, - "expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "dev": true, - "requires": { - "fill-range": "^2.1.0" - }, - "dependencies": { - "fill-range": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", - "dev": true, - "requires": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^3.0.0", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" - } - }, - "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -3306,746 +3007,156 @@ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "requires": { - "is-extglob": "^2.1.1" - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "dev": true, - "requires": { - "flat-cache": "^2.0.1" - } - }, - "file-type": { - "version": "10.11.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", - "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", - "dev": true - }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", - "dev": true - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-cache-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" - }, - "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - } - }, - "flatted": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", - "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", - "dev": true - }, - "fn-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz", - "integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=", - "dev": true - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" - }, - "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "foreground-child": { - "version": "1.5.6", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", - "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", - "dev": true, - "requires": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", - "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - } - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "requires": { - "map-cache": "^0.2.2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", - "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.12.1", - "node-pre-gyp": "^0.12.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.3.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^4.1.0", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.12.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "requires": { - "ansi-regex": "^2.0.0" + "is-extglob": "^2.1.1" } - }, - "strip-json-comments": { + } + } + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "requires": { + "flat-cache": "^2.0.1" + } + }, + "file-type": { + "version": "10.11.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", + "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "bundled": true, - "dev": true, - "optional": true, + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" + "is-extendable": "^0.1.0" } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "requires": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + } + }, + "flatted": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", + "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", + "dev": true + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "foreground-child": { + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", + "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", + "dev": true, + "requires": { + "cross-spawn": "^4", + "signal-exit": "^3.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", + "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", "dev": true, - "optional": true, "requires": { - "string-width": "^1.0.2 || 2" + "lru-cache": "^4.0.1", + "which": "^1.2.9" } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true } } }, - "function-name-support": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz", - "integrity": "sha1-VdO/qm6v1QWlD5vIH99XVkoLsHE=", - "dev": true + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.0.7.tgz", + "integrity": "sha512-a7YT0SV3RB+DjYcppwVDLtn13UQnmg0SWZS7ezZD0UjnLwXmy8Zm21GMVGLaFGimIqcvyMQaOJBrop8MyOp1kQ==", + "dev": true, + "optional": true }, "functional-red-black-tree": { "version": "1.0.1", @@ -4074,16 +3185,13 @@ "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" }, "get-port": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.0.0.tgz", + "integrity": "sha512-imzMU0FjsZqNa6BqOjbbW6w5BivHIuQKopjpPqcnx0AVHJQKCxK1O+Ab3OrVXhrekqfVMjwA9ZYu062R+KcIsQ==", + "dev": true, + "requires": { + "type-fest": "^0.3.0" + } }, "get-stream": { "version": "3.0.0", @@ -4117,23 +3225,13 @@ "path-is-absolute": "^1.0.0" } }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - } - }, "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", + "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", "dev": true, "requires": { - "is-glob": "^2.0.0" + "is-glob": "^4.0.1" } }, "glob-to-regexp": { @@ -4150,12 +3248,6 @@ "ini": "^1.3.4" } }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, "globby": { "version": "9.2.0", "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", @@ -4184,22 +3276,33 @@ } }, "got": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", - "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", "dev": true, "requires": { - "create-error-class": "^3.0.0", + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "dependencies": { + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + } } }, "graceful-fs": { @@ -4274,16 +3377,10 @@ "ansi-regex": "^2.0.0" } }, - "has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "dev": true - }, "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, "has-unicode": { @@ -4321,9 +3418,9 @@ } }, "has-yarn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-1.0.0.tgz", - "integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", "dev": true }, "hasha": { @@ -4335,16 +3432,6 @@ "is-stream": "^1.0.1" } }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - } - }, "hosted-git-info": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", @@ -4375,6 +3462,12 @@ } } }, + "http-cache-semantics": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.0.3.tgz", + "integrity": "sha512-TcIMG3qeVLgDr1TEd2XvHaTnMPwYQUQMIBLy+5pLSDKYFc7UIqj39w8EGzZkaxoLv/l2K8HaI0t5AVA+YYgUew==", + "dev": true + }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", @@ -4385,28 +3478,6 @@ "sshpk": "^1.7.0" } }, - "hullabaloo-config-manager": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/hullabaloo-config-manager/-/hullabaloo-config-manager-1.1.1.tgz", - "integrity": "sha512-ztKnkZV0TmxnumCDHHgLGNiDnotu4EHCp9YMkznWuo4uTtCyJ+cu+RNcxUeXYKTllpvLFWnbfWry09yzszgg+A==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "es6-error": "^4.0.2", - "graceful-fs": "^4.1.11", - "indent-string": "^3.1.0", - "json5": "^0.5.1", - "lodash.clonedeep": "^4.5.0", - "lodash.clonedeepwith": "^4.5.0", - "lodash.isequal": "^4.5.0", - "lodash.merge": "^4.6.0", - "md5-hex": "^2.0.0", - "package-hash": "^2.0.0", - "pkg-dir": "^2.0.0", - "resolve-from": "^3.0.0", - "safe-buffer": "^5.0.1" - } - }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -4452,13 +3523,24 @@ "dev": true }, "import-local": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", - "integrity": "sha1-sReVcqrNwRxqkQCftDDbyrX2aKg=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", "dev": true, "requires": { - "pkg-dir": "^2.0.0", + "pkg-dir": "^3.0.0", "resolve-cwd": "^2.0.0" + }, + "dependencies": { + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + } } }, "imurmurhash": { @@ -4566,15 +3648,6 @@ } } }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, "invert-kv": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", @@ -4582,9 +3655,9 @@ "dev": true }, "irregular-plurals": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz", - "integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-2.0.0.tgz", + "integrity": "sha512-Y75zBYLkh0lJ9qxeHlMjQ7bSbyiSqNW/UOPWDmzC7cXskL1hekSITh1Oc6JV0XCWWZ9DE8VYSB71xocLk3gmGw==", "dev": true }, "is-accessor-descriptor": { @@ -4611,12 +3684,12 @@ "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" }, "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, "requires": { - "binary-extensions": "^1.0.0" + "binary-extensions": "^2.0.0" } }, "is-buffer": { @@ -4625,12 +3698,12 @@ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, "is-ci": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", - "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", "dev": true, "requires": { - "ci-info": "^1.5.0" + "ci-info": "^2.0.0" } }, "is-data-descriptor": { @@ -4668,21 +3741,6 @@ } } }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", - "dev": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "dev": true, - "requires": { - "is-primitive": "^2.0.0" - } - }, "is-error": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", @@ -4695,20 +3753,11 @@ "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" }, "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, - "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", @@ -4717,19 +3766,13 @@ "number-is-nan": "^1.0.0" } }, - "is-generator-fn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-1.0.0.tgz", - "integrity": "sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=", - "dev": true - }, "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "requires": { - "is-extglob": "^1.0.0" + "is-extglob": "^2.1.1" } }, "is-installed-globally": { @@ -4740,12 +3783,23 @@ "requires": { "global-dirs": "^0.1.0", "is-path-inside": "^1.0.0" + }, + "dependencies": { + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + } } }, "is-npm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-3.0.0.tgz", + "integrity": "sha512-wsigDr1Kkschp2opC4G3yA6r9EgVA6NjRpWzIi9axXqeIaAATPRJc4uLujXe3Nd9uO8KoDyA4MD6aZSeXTADhA==", "dev": true }, "is-number": { @@ -4773,21 +3827,33 @@ "dev": true }, "is-observable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", - "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-2.0.0.tgz", + "integrity": "sha512-fhBZv3eFKUbyHXZ1oHujdo2tZ+CNbdpdzzlENgCGZUC8keoGxUew2jYFLYcUB4qo7LDD03o4KK11m/QYD7kEjg==", + "dev": true + }, + "is-path-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.1.0.tgz", + "integrity": "sha512-Sc5j3/YnM8tDeyCsVeKlm/0p95075DyLmDEIkSgQ7mXkrOX+uTCtmQFm0CYzVyJwcCCmO3k8qfJt17SxQwB5Zw==", + "dev": true + }, + "is-path-in-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", + "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", "dev": true, "requires": { - "symbol-observable": "^1.1.0" + "is-path-inside": "^2.1.0" } }, "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", + "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", "dev": true, "requires": { - "path-is-inside": "^1.0.1" + "path-is-inside": "^1.0.2" } }, "is-plain-obj": { @@ -4804,36 +3870,12 @@ "isobject": "^3.0.1" } }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", - "dev": true - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", - "dev": true - }, "is-promise": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", "dev": true }, - "is-redirect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "dev": true - }, - "is-retry-allowed": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", - "dev": true - }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", @@ -4868,6 +3910,12 @@ "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", "dev": true }, + "is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", + "dev": true + }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", @@ -4998,12 +4046,6 @@ "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", "dev": true }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, "js-yaml": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", @@ -5110,6 +4152,12 @@ "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", "dev": true }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true + }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -5137,10 +4185,21 @@ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz", + "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } }, "jsprim": { "version": "1.4.1", @@ -5159,6 +4218,15 @@ "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", "dev": true }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "requires": { + "json-buffer": "3.0.0" + } + }, "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", @@ -5172,22 +4240,13 @@ "graceful-fs": "^4.1.9" } }, - "last-line-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/last-line-stream/-/last-line-stream-1.0.0.tgz", - "integrity": "sha1-0bZNafhv8kry0EiDos7uFFIKVgA=", - "dev": true, - "requires": { - "through2": "^2.0.0" - } - }, "latest-version": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", - "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", "dev": true, "requires": { - "package-json": "^4.0.0" + "package-json": "^6.3.0" } }, "lcid": { @@ -5304,29 +4363,11 @@ "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, - "lodash.clonedeepwith": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", - "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true - }, "lodash.defaults": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" }, - "lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", - "dev": true - }, "lodash.filter": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", @@ -5348,10 +4389,10 @@ "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "lodash.islength": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.islength/-/lodash.islength-4.0.1.tgz", + "integrity": "sha1-Tpho1FJXXXUK/9NYyXlUPcIO1Xc=", "dev": true }, "lodash.map": { @@ -5390,21 +4431,21 @@ "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", "dev": true }, + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, "lolex": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.0.1.tgz", "integrity": "sha512-UHuOBZ5jjsKuzbB/gRNNW8Vg8f00Emgskdq2kvZxgBJCS0aqquAuXai/SkWORlKeZEiNQWZjFZOqIUcH9LqKCw==", "dev": true }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, "loud-rejection": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", @@ -5508,24 +4549,26 @@ "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" }, "matcher": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", - "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-2.0.0.tgz", + "integrity": "sha512-nlmfSlgHBFx36j/Pl/KQPbIaqE8Zf0TqmSMjsuddHDg6PMSVgmyW9HpkLs0o0M1n2GIZ/S2BZBLIww/xjhiGng==", "dev": true, "requires": { - "escape-string-regexp": "^1.0.4" + "escape-string-regexp": "^2.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true + } } }, - "math-random": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", - "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", - "dev": true - }, "md5-hex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", - "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.0.tgz", + "integrity": "sha512-uA+EX5IV1r5lKBJecwTSec3k6xl4ziBUZihRiOpOHCeHjKA0ai6+eImamXQy/cI3Qep5mQgFTeJld9tcwdBNFw==", "dev": true, "requires": { "md5-o-matic": "^0.1.1" @@ -5563,130 +4606,82 @@ } }, "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", + "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", "dev": true, "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", + "minimist-options": "^3.0.1", "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0", + "yargs-parser": "^10.0.0" }, "dependencies": { "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" + "locate-path": "^2.0.0" } }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { - "error-ex": "^1.2.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" } }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { - "pinkie-promise": "^2.0.0" + "p-try": "^1.0.0" } }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "p-limit": "^1.1.0" } }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", "dev": true, "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" } }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", "dev": true, "requires": { - "is-utf8": "^0.2.0" + "camelcase": "^4.1.0" } } } @@ -5758,6 +4753,12 @@ "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "dev": true }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -5822,31 +4823,12 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, - "multimatch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-2.1.0.tgz", - "integrity": "sha1-nHkGoi+0wCkZ4vX3UWG0zb1LKis=", - "dev": true, - "requires": { - "array-differ": "^1.0.0", - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "minimatch": "^3.0.0" - } - }, "mute-stream": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", "dev": true }, - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", - "dev": true, - "optional": true - }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", @@ -5941,6 +4923,12 @@ "remove-trailing-separator": "^1.0.1" } }, + "normalize-url": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", + "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", + "dev": true + }, "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", @@ -6105,16 +5093,6 @@ "isobject": "^3.0.0" } }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "dev": true, - "requires": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" - } - }, "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", @@ -6124,32 +5102,13 @@ } }, "observable-to-promise": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-0.5.0.tgz", - "integrity": "sha1-yCjw8NxH6fhq+KSXfF1VB2znqR8=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-1.0.0.tgz", + "integrity": "sha512-cqnGUrNsE6vdVDTPAX9/WeVzwy/z37vdxupdQXU8vgTXRFH72KCZiZga8aca2ulRPIeem8W3vW9rQHBwfIl2WA==", "dev": true, "requires": { - "is-observable": "^0.2.0", + "is-observable": "^2.0.0", "symbol-observable": "^1.0.4" - }, - "dependencies": { - "is-observable": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-0.2.0.tgz", - "integrity": "sha1-s2ExHYPG5dcmyr9eJQsCNxBvWuI=", - "dev": true, - "requires": { - "symbol-observable": "^0.2.2" - }, - "dependencies": { - "symbol-observable": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-0.2.4.tgz", - "integrity": "sha1-lag9smGG1q9+ehjb2XYKL4bQj0A=", - "dev": true - } - } - } } }, "once": { @@ -6341,12 +5300,6 @@ } } }, - "option-chain": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/option-chain/-/option-chain-1.0.0.tgz", - "integrity": "sha1-k41zvU4Xg/lI00AjZEraI2aeMPI=", - "dev": true - }, "optionator": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", @@ -6360,6 +5313,37 @@ "wordwrap": "~1.0.0" } }, + "ora": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-3.4.0.tgz", + "integrity": "sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-spinners": "^2.0.0", + "log-symbols": "^2.2.0", + "strip-ansi": "^5.2.0", + "wcwidth": "^1.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", @@ -6428,6 +5412,12 @@ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true + }, "p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", @@ -6462,33 +5452,51 @@ "p-limit": "^2.0.0" } }, + "p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "dev": true + }, "p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" }, "package-hash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-2.0.0.tgz", - "integrity": "sha1-eK4ybIngWk2BO2hgGXevBcANKg0=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", + "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", + "graceful-fs": "^4.1.15", + "hasha": "^5.0.0", "lodash.flattendeep": "^4.4.0", - "md5-hex": "^2.0.0", "release-zalgo": "^1.0.0" + }, + "dependencies": { + "hasha": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.0.0.tgz", + "integrity": "sha512-PqWdhnQhq6tqD32hZv+l1e5mJHNSudjnaAzgAHfkGiU0ABN6lmbZF8abJIulQHbZ7oiHhP8yL6O910ICMc+5pw==", + "dev": true, + "requires": { + "is-stream": "^1.1.0", + "type-fest": "^0.3.0" + } + } } }, "package-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", - "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.3.0.tgz", + "integrity": "sha512-XO7WS3EEXd48vmW633Y97Mh9xuENFiOevI9G+ExfTG/k6xuY9cBd3fxkAoDMSEsNZXasaVJIJ1rD/n7GMf18bA==", "dev": true, "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" + "got": "^9.6.0", + "registry-auth-token": "^3.4.0", + "registry-url": "^5.0.0", + "semver": "^5.6.0" }, "dependencies": { "semver": { @@ -6508,18 +5516,6 @@ "callsites": "^3.0.0" } }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "dev": true, - "requires": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.0" - } - }, "parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", @@ -6530,9 +5526,9 @@ } }, "parse-ms": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-0.1.2.tgz", - "integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", + "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", "dev": true }, "pascalcase": { @@ -6613,136 +5609,67 @@ "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" }, "pinkie": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-1.0.0.tgz", - "integrity": "sha1-Wkfyi6EBXQIBvae/DzWOR77Ix+Q=", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", "dev": true }, "pinkie-promise": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-1.0.0.tgz", - "integrity": "sha1-0dpn9UglY7t89X8oauKCLs+/NnA=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { - "pinkie": "^1.0.0" + "pinkie": "^2.0.0" } }, "pkg-conf": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", - "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", + "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, "requires": { - "find-up": "^2.0.0", - "load-json-file": "^4.0.0" + "find-up": "^3.0.0", + "load-json-file": "^5.2.0" }, "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "load-json-file": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, "requires": { - "p-limit": "^1.1.0" + "graceful-fs": "^4.1.15", + "parse-json": "^4.0.0", + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" } }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true } } }, "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", "dev": true, "requires": { - "find-up": "^2.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - } + "find-up": "^3.0.0" } }, "plur": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz", - "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/plur/-/plur-3.1.1.tgz", + "integrity": "sha512-t1Ax8KUvV3FFII8ltczPn2tJdjqbd1sIzu6t4JL7nQ3EyeL/lTrj5PWKb06ic5/6XYDr65rQ4uzQEGN70/6X5w==", "dev": true, "requires": { - "irregular-plurals": "^1.0.0" + "irregular-plurals": "^2.0.0" } }, "posix-character-classes": { @@ -6756,15 +5683,9 @@ "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" }, "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true - }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", "dev": true }, "pretty-data": { @@ -6778,28 +5699,14 @@ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" }, "pretty-ms": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-3.2.0.tgz", - "integrity": "sha512-ZypexbfVUGTFxb0v+m1bUyy92DHe5SyYlnyY0msyms5zd3RwyvNgyxZZsXXgoyzlxjx5MiqtXUdhUfvQbe0A2Q==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-5.0.0.tgz", + "integrity": "sha512-94VRYjL9k33RzfKiGokPBPpsmloBYSf5Ri+Pq19zlsEcUKFob+admeXr5eFDRuPjFmEOcjJvPGdillYOJyvZ7Q==", "dev": true, "requires": { - "parse-ms": "^1.0.0" - }, - "dependencies": { - "parse-ms": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-1.0.1.tgz", - "integrity": "sha1-VjRtR0nXjyNDDKDHE4UK75GqNh0=", - "dev": true - } + "parse-ms": "^2.1.0" } }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", @@ -6853,25 +5760,6 @@ "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.0.tgz", "integrity": "sha512-jCJ4a8BJ+z3f4SYSFtYIiRfcdxe2Bvh+Gg2J+LjriL3dVOtrF77u0tklYbO8acHoZQ7JlYJn3lNKfW5TFjcwdQ==" }, - "randomatic": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", - "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", - "dev": true, - "requires": { - "is-number": "^4.0.0", - "kind-of": "^6.0.0", - "math-random": "^1.0.1" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, "rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -6926,35 +5814,22 @@ } }, "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.0.2.tgz", + "integrity": "sha512-LbyJYv48eywrhOlScq16H/VkCiGKGPC2TpOdZCJ7QXnYEjn3NN/Oblh8QEU3vqfSRBB7OGvh5x45NKiVeNujIQ==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" + "picomatch": "^2.0.4" } }, "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", "dev": true, "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - }, - "dependencies": { - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - } + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" } }, "regenerate": { @@ -6963,19 +5838,13 @@ "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", "dev": true }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "regenerate-unicode-properties": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", + "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", "dev": true, "requires": { - "is-equal-shallow": "^0.1.3" + "regenerate": "^1.4.0" } }, "regex-not": { @@ -6994,14 +5863,17 @@ "dev": true }, "regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.4.tgz", + "integrity": "sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ==", "dev": true, "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" + "regenerate": "^1.4.0", + "regenerate-unicode-properties": "^8.0.2", + "regjsgen": "^0.5.0", + "regjsparser": "^0.6.0", + "unicode-match-property-ecmascript": "^1.0.4", + "unicode-match-property-value-ecmascript": "^1.1.0" } }, "registry-auth-token": { @@ -7015,24 +5887,24 @@ } }, "registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", "dev": true, "requires": { - "rc": "^1.0.1" + "rc": "^1.2.8" } }, "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.0.tgz", + "integrity": "sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA==", "dev": true }, "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", + "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -7062,15 +5934,6 @@ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, "replacestream": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", @@ -7143,12 +6006,20 @@ } }, "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, "requires": { - "resolve-from": "^3.0.0" + "resolve-from": "^5.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } } }, "resolve-from": { @@ -7162,6 +6033,15 @@ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, + "requires": { + "lowercase-keys": "^1.0.0" + } + }, "restore-cursor": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", @@ -7316,9 +6196,9 @@ } }, "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, "slice-ansi": { @@ -7338,12 +6218,6 @@ } } }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, "snapdragon": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", @@ -7441,15 +6315,6 @@ } } }, - "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", @@ -7618,9 +6483,9 @@ "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" }, "strip-bom-buf": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", - "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-2.0.0.tgz", + "integrity": "sha512-gLFNHucd6gzb8jMsl5QmZ3QgnUJmp7qn4uUSHNwEXumAp7YizoGYw19ZUVfuq4aBOQUtyn2k8X/CwzWB73W2lQ==", "dev": true, "requires": { "is-utf8": "^0.2.1" @@ -7633,13 +6498,10 @@ "dev": true }, "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true }, "strip-json-comments": { "version": "2.0.1", @@ -7938,12 +6800,6 @@ "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", "dev": true }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", - "dev": true - }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -7953,12 +6809,6 @@ "os-tmpdir": "~1.0.2" } }, - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true - }, "to-object-path": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", @@ -7977,6 +6827,12 @@ } } }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true + }, "to-regex": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", @@ -8014,9 +6870,9 @@ } }, "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", "dev": true }, "trim-off-newlines": { @@ -8064,6 +6920,21 @@ "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", "dev": true }, + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, "uc.micro": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", @@ -8102,6 +6973,34 @@ "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" }, + "unicode-canonical-property-names-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", + "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^1.0.4", + "unicode-property-aliases-ecmascript": "^1.0.4" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", + "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", + "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", + "dev": true + }, "union-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", @@ -8190,26 +7089,22 @@ } } }, - "unzip-response": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", - "dev": true - }, "update-notifier": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", - "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-3.0.0.tgz", + "integrity": "sha512-6Xe3oF2bvuoj4YECUc52yxVs94yWrxwqHbzyveDktTS1WhnlTRpNcQMxUshcB7nRVGi1jEXiqL5cW1S5WSyzKg==", "dev": true, "requires": { - "boxen": "^1.2.1", + "boxen": "^3.0.0", "chalk": "^2.0.1", - "configstore": "^3.0.0", + "configstore": "^4.0.0", + "has-yarn": "^2.1.0", "import-lazy": "^2.1.0", - "is-ci": "^1.0.10", + "is-ci": "^2.0.0", "is-installed-globally": "^0.1.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", + "is-npm": "^3.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.0.0", "semver-diff": "^2.0.0", "xdg-basedir": "^3.0.0" } @@ -8228,12 +7123,12 @@ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" }, "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", "dev": true, "requires": { - "prepend-http": "^1.0.1" + "prepend-http": "^2.0.0" } }, "use": { @@ -8270,10 +7165,19 @@ "extsprintf": "^1.2.0" } }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "requires": { + "defaults": "^1.0.3" + } + }, "well-known-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-1.0.0.tgz", - "integrity": "sha1-c8eK6Bp3Jqj6WY4ogIAcixYiVRg=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-2.0.0.tgz", + "integrity": "sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q==", "dev": true }, "which": { @@ -8416,47 +7320,6 @@ "signal-exit": "^3.0.2" } }, - "write-json-file": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", - "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", - "dev": true, - "requires": { - "detect-indent": "^5.0.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "sort-keys": "^2.0.0", - "write-file-atomic": "^2.0.0" - }, - "dependencies": { - "detect-indent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", - "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", - "dev": true - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "write-pkg": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-3.2.0.tgz", - "integrity": "sha512-tX2ifZ0YqEFOF1wjRW2Pk93NLsj02+n1UP5RvO6rCs0K6R2g1padvf006cY74PQJKMGS2r42NK7FD0dG6Y6paw==", - "dev": true, - "requires": { - "sort-keys": "^2.0.0", - "write-json-file": "^2.2.0" - } - }, "xdg-basedir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index e6dd5edf2dd..c65d0821acd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -44,7 +44,7 @@ "files": [ "test/lib/**/*.js" ], - "source": [ + "sources": [ "lib/**/*.js", "test/lib/**/*.js" ] @@ -104,7 +104,7 @@ "resolve": "^1.11.0" }, "devDependencies": { - "ava": "^0.25.0", + "ava": "^2.0.0", "coveralls": "^3.0.3", "cross-env": "^5.2.0", "docdash": "^1.1.1", diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 8a241547b2d..eab448f596a 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -1,4 +1,4 @@ -const {test} = require("ava"); +const test = require("ava"); const path = require("path"); const sinon = require("sinon"); const projectPreprocessor = require("../..").projectPreprocessor; @@ -458,7 +458,7 @@ test("Project with project-type extension dependency inline configuration", (t) name: "xy" } }; - return t.throws(projectPreprocessor.processTree(tree).then((parsedTree) => { + return t.throwsAsync(projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, type: "z", @@ -508,7 +508,7 @@ test("Project with unknown extension dependency inline configuration", (t) => { name: "xy" } }; - return t.throws(projectPreprocessor.processTree(tree), + return t.throwsAsync(projectPreprocessor.processTree(tree), "Unknown extension type 'phony-pony' for extension.a", "Rejected with error"); }); @@ -573,7 +573,7 @@ test("Project with task extension dependency - task module not found", async (t) name: "xy" } }; - const error = await t.throws(projectPreprocessor.processTree(tree)); + const error = await t.throwsAsync(projectPreprocessor.processTree(tree)); t.regex(error.message, /^Cannot find module.*/, "Rejected with error"); }); @@ -591,7 +591,7 @@ test("specVersion: Missing version", async (t) => { shims: {} }; const preprocessor = new Preprocessor(); - await t.throws(preprocessor.applyExtension(extension), + await t.throwsAsync(preprocessor.applyExtension(extension), "No specification version defined for extension shims.a", "Rejected with error"); }); @@ -611,7 +611,7 @@ test("specVersion: Extension with invalid version", async (t) => { shims: {} }; const preprocessor = new Preprocessor(); - await t.throws(preprocessor.applyExtension(extension), + await t.throwsAsync(preprocessor.applyExtension(extension), "Unsupported specification version 0.9 defined for extension shims.a. " + "See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions", "Rejected with error"); diff --git a/packages/project/test/lib/normalizer.js b/packages/project/test/lib/normalizer.js index f42a57f77b3..43a48a366e2 100644 --- a/packages/project/test/lib/normalizer.js +++ b/packages/project/test/lib/normalizer.js @@ -1,4 +1,4 @@ -const {test} = require("ava"); +const test = require("ava"); const sinon = require("sinon"); const normalizer = require("../..").normalizer; const npmTranslatorStub = sinon.stub(require("../..").translators.npm); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 47103fb544c..51c1591898d 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1,4 +1,4 @@ -const {test} = require("ava"); +const test = require("ava"); const path = require("path"); const projectPreprocessor = require("../..").projectPreprocessor; const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); @@ -161,7 +161,7 @@ test("Missing configuration for root project", (t) => { path: "non-existent", dependencies: [] }; - return t.throws(projectPreprocessor.processTree(tree), + return t.throwsAsync(projectPreprocessor.processTree(tree), "No specification version defined for root project application.a", "Rejected with error"); }); @@ -171,7 +171,7 @@ test("Missing id for root project", (t) => { path: path.join(__dirname, "../fixtures/application.a"), dependencies: [] }; - return t.throws(projectPreprocessor.processTree(tree), + return t.throwsAsync(projectPreprocessor.processTree(tree), "Encountered project with missing id (root project)", "Rejected with error"); }); @@ -186,7 +186,7 @@ test("No type configured for root project", (t) => { name: "application.a" } }; - return t.throws(projectPreprocessor.processTree(tree), + return t.throwsAsync(projectPreprocessor.processTree(tree), "No type configured for root project application.a", "Rejected with error"); }); @@ -198,7 +198,7 @@ test("Missing dependencies", (t) => { path: applicationAPath, dependencies: [] }); - return t.notThrows(projectPreprocessor.processTree(tree), + return t.notThrowsAsync(projectPreprocessor.processTree(tree), "Gracefully accepted project with no dependency attribute"); }); @@ -238,7 +238,7 @@ test("Multiple non-root application-projects on same level", (t) => { dependencies: [] }] }); - return t.throws(projectPreprocessor.processTree(tree), + return t.throwsAsync(projectPreprocessor.processTree(tree), "Found at least two projects application.a and application.b of type application with the same distance to " + "the root project. Only one project of type application can be used. Failed to decide which one to ignore.", "Rejected with error"); @@ -527,7 +527,7 @@ test("Project tree B with inline configs", (t) => { }); }); -test("Project tree B with inline configs", (t) => { +test("Project tree Cycle A with inline configs", (t) => { // Tree B depends on Library B which has a dependency to Library D return projectPreprocessor.processTree(treeApplicationCycleA).then((parsedTree) => { t.deepEqual(parsedTree, expectedTreeApplicationCycleA, "Parsed correctly"); @@ -1496,7 +1496,7 @@ test("Application version in package.json data is missing", (t) => { name: "xy" } }; - return t.throws(projectPreprocessor.processTree(tree)).then((error) => { + return t.throwsAsync(projectPreprocessor.processTree(tree)).then((error) => { t.is(error.message, "\"version\" is missing for project " + tree.id); }); }); @@ -1511,7 +1511,7 @@ test("Library version in package.json data is missing", (t) => { name: "library.d" } }; - return t.throws(projectPreprocessor.processTree(tree)).then((error) => { + return t.throwsAsync(projectPreprocessor.processTree(tree)).then((error) => { t.is(error.message, "\"version\" is missing for project " + tree.id); }); }); @@ -1527,7 +1527,7 @@ test("specVersion: Missing version", (t) => { name: "xy" } }; - return t.throws(projectPreprocessor.processTree(tree), + return t.throwsAsync(projectPreprocessor.processTree(tree), "No specification version defined for root project application.a", "Rejected with error"); }); @@ -1544,7 +1544,7 @@ test("specVersion: Project with invalid version", async (t) => { name: "xy" } }; - await t.throws(projectPreprocessor.processTree(tree), + await t.throwsAsync(projectPreprocessor.processTree(tree), "Unsupported specification version 0.9 defined for project application.a. " + "See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions", "Rejected with error"); diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js index 8f89be973ee..8e867cc5659 100644 --- a/packages/project/test/lib/translators/npm.js +++ b/packages/project/test/lib/translators/npm.js @@ -1,4 +1,4 @@ -const {test} = require("ava"); +const test = require("ava"); const path = require("path"); const mock = require("mock-require"); const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); @@ -136,12 +136,12 @@ test("AppCycleE: cyclic npm deps - Cycle via devDependency", (t) => { test("Error: missing package.json", async (t) => { const dir = path.parse(__dirname).root; - const error = await t.throws(npmTranslator.generateDependencyTree(dir)); + const error = await t.throwsAsync(npmTranslator.generateDependencyTree(dir)); t.is(error.message, `[npm translator] Failed to locate package.json for directory "${dir}"`); }); test("Error: missing dependency", async (t) => { - const error = await t.throws(npmTranslator.generateDependencyTree(errApplicationAPath)); + const error = await t.throwsAsync(npmTranslator.generateDependencyTree(errApplicationAPath)); t.is(error.message, "[npm translator] Could not locate " + "module library.xx via resolve logic (error: Cannot find module 'library.xx/package.json' from '" + errApplicationAPath + "') or in a collection"); diff --git a/packages/project/test/lib/translators/static.js b/packages/project/test/lib/translators/static.js index 5004bb8b61c..23cfe95d137 100644 --- a/packages/project/test/lib/translators/static.js +++ b/packages/project/test/lib/translators/static.js @@ -1,4 +1,4 @@ -const {test} = require("ava"); +const test = require("ava"); const path = require("path"); const fs = require("graceful-fs"); const sinon = require("sinon"); @@ -18,7 +18,7 @@ test("Error: Throws if projectDependencies.yaml was not found", async (t) => { const fsError = new Error("File not found"); const fsStub = sinon.stub(fs, "readFile"); fsStub.callsArgWith(1, fsError); - const error = await t.throws(staticTranslator.generateDependencyTree(projectPath)); + const error = await t.throwsAsync(staticTranslator.generateDependencyTree(projectPath)); t.is(error.message, `[static translator] Failed to locate projectDependencies.json at path: "${projectPath}" - Error: ${fsError.message}`); fsStub.restore(); }); From ab9882f2202abe68e421ab02da3d5fc7fbb3f20d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 9 Jun 2019 04:27:17 +0000 Subject: [PATCH 0202/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 1305 +++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 608 insertions(+), 701 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e6ba52b0dbd..f95367a8ff9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -73,9 +73,9 @@ } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "semver": { @@ -97,14 +97,6 @@ "lodash": "^4.17.11", "source-map": "^0.5.0", "trim-right": "^1.0.1" - }, - "dependencies": { - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - } } }, "@babel/helper-annotate-as-pure": { @@ -238,14 +230,6 @@ "chalk": "^2.0.0", "esutils": "^2.0.2", "js-tokens": "^4.0.0" - }, - "dependencies": { - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - } } }, "@babel/parser": { @@ -361,16 +345,10 @@ "ms": "^2.1.1" } }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true } } @@ -384,14 +362,6 @@ "esutils": "^2.0.2", "lodash": "^4.17.11", "to-fast-properties": "^2.0.0" - }, - "dependencies": { - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - } } }, "@concordance/react": { @@ -401,6 +371,14 @@ "dev": true, "requires": { "arrify": "^1.0.1" + }, + "dependencies": { + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + } } }, "@mrmlnc/readdir-enhanced": { @@ -489,9 +467,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.4.tgz", - "integrity": "sha512-j8YL2C0fXq7IONwl/Ud5Kt0PeXw22zGERt+HSSnwbKOJVsAGkEz3sFCYwaF9IOuoG1HOtE0vKCj6sXF7Q0+Vaw==" + "version": "12.0.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.7.tgz", + "integrity": "sha512-1YKeT4JitGgE4SOzyB9eMwO0nGVNkNEsm9qlIt1Lqm/tG2QEiSMTD4kS3aO6L+w5SClLVxALmIBESK6Mk5wX0A==" }, "@ui5/builder": { "version": "1.3.0", @@ -539,14 +517,6 @@ "taffydb": "2.6.2", "underscore": "~1.8.3" } - }, - "make-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz", - "integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==", - "requires": { - "semver": "^6.0.0" - } } } }, @@ -565,54 +535,6 @@ "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^2.0.0" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, - "make-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz", - "integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==", - "requires": { - "semver": "^6.0.0" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "requires": { - "is-number": "^7.0.0" - } - } } }, "@ui5/logger": { @@ -696,10 +618,13 @@ } }, "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.1.0.tgz", + "integrity": "sha512-2VY/iCUZTDLD/qxptS3Zn3c6k2MeIbYqjRXqM8T5oC7N2mMjh3xIU3oYru6cHGbldFa9h5i8N0fP65UaUqrMWA==", + "dev": true, + "requires": { + "type-fest": "^0.3.0" + } }, "ansi-regex": { "version": "2.1.1", @@ -707,12 +632,29 @@ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.0.0.tgz", + "integrity": "sha512-8zjUtFJ3db/QoPXuuEMloS2AUf79/yeyttJ7Abr3hteopJu9HK8vsgGviGUMq+zyA6cZZO6gAyZoMTF6TgaEjA==", "dev": true, "requires": { - "color-convert": "^1.9.0" + "color-convert": "^2.0.0" + }, + "dependencies": { + "color-convert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.0.tgz", + "integrity": "sha512-hzTicsCJIHdxih9+2aLR1tNGZX5qSJGRHDPVwSY26tVrEf55XNajLOBWz2UuWSIergszA09/bqnOiHyqx9fxQg==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + } } }, "anymatch": { @@ -816,9 +758,9 @@ "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" }, "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true }, "asn1": { @@ -945,30 +887,12 @@ "write-file-atomic": "^3.0.0" }, "dependencies": { - "ansi-escapes": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.1.0.tgz", - "integrity": "sha512-2VY/iCUZTDLD/qxptS3Zn3c6k2MeIbYqjRXqM8T5oC7N2mMjh3xIU3oYru6cHGbldFa9h5i8N0fP65UaUqrMWA==", - "dev": true, - "requires": { - "type-fest": "^0.3.0" - } - }, "ansi-regex": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, - "ansi-styles": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.0.0.tgz", - "integrity": "sha512-8zjUtFJ3db/QoPXuuEMloS2AUf79/yeyttJ7Abr3hteopJu9HK8vsgGviGUMq+zyA6cZZO6gAyZoMTF6TgaEjA==", - "dev": true, - "requires": { - "color-convert": "^2.0.0" - } - }, "array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", @@ -981,45 +905,6 @@ "integrity": "sha512-bdHxtev7FN6+MXI1YFW0Q8mQ8dTJc2S8AMfju+ZR77pbg2yAdVyDlwkaUI7Har0LyOMRFPHrJ9lYdyjZZswdlQ==", "dev": true }, - "arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "dev": true - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "cli-cursor": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.0.0.tgz", - "integrity": "sha512-m7avcYLWHHQVU+cFxu301q3kKZJlcZcKXQSL9kffYnIvRNtqX+a7gJKXqOKusHoKXr4oquSgiMlAo1R0dDkSZA==", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "color-convert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.0.tgz", - "integrity": "sha512-hzTicsCJIHdxih9+2aLR1tNGZX5qSJGRHDPVwSY26tVrEf55XNajLOBWz2UuWSIergszA09/bqnOiHyqx9fxQg==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", @@ -1035,32 +920,6 @@ "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true }, - "figures": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.0.0.tgz", - "integrity": "sha512-HKri+WoWoUgr83pehn/SIgLOMZ9nAWC6dcGj26RY2R4F50u4+RTUz0RCrUlOV3nKRAICW1UGzyb+kcX2qK1S/g==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, "find-up": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.0.0.tgz", @@ -1070,18 +929,6 @@ "locate-path": "^5.0.0" } }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, "is-plain-object": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz", @@ -1106,39 +953,10 @@ "p-locate": "^4.1.0" } }, - "loud-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-2.1.0.tgz", - "integrity": "sha512-g/6MQxUXYHeVqZ4PGpPL1fS1fOvlXoi7bay0pizmjAd/3JhyXwxzwrnr74yzdmhuerlslbRJ3x7IOXzFz0cE5w==", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.2" - } - }, - "make-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz", - "integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "p-locate": { @@ -1150,6 +968,12 @@ "p-limit": "^2.2.0" } }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -1158,36 +982,6 @@ "requires": { "ansi-regex": "^4.1.0" } - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "write-file-atomic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.0.tgz", - "integrity": "sha512-EIgkf60l2oWsffja2Sf2AL384dx328c0B+cIYPTQq5q2rOYuDV00/iPFBOUiDKKwKMOhkymH8AidPaRvzfxY+Q==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } } } }, @@ -1420,28 +1214,96 @@ } }, "cacheable-request": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.0.0.tgz", - "integrity": "sha512-2N7AmszH/WPPpl5Z3XMw1HAP+8d+xugnKQAeKvxFZ/04dbT/CAznqwbl+7eSr3HkwdepNwtb2yx3CAMQWvG01Q==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", "dev": true, "requires": { "clone-response": "^1.0.2", - "get-stream": "^4.0.0", + "get-stream": "^5.1.0", "http-cache-semantics": "^4.0.0", "keyv": "^3.0.0", - "lowercase-keys": "^1.0.1", - "normalize-url": "^3.1.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", "responselike": "^1.0.2" }, "dependencies": { "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", + "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", "dev": true, "requires": { "pump": "^3.0.0" } + }, + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true + } + } + }, + "caching-transform": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", + "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", + "dev": true, + "requires": { + "hasha": "^3.0.0", + "make-dir": "^2.0.0", + "package-hash": "^3.0.0", + "write-file-atomic": "^2.4.2" + }, + "dependencies": { + "hasha": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", + "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", + "dev": true, + "requires": { + "is-stream": "^1.0.1" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "package-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", + "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.15", + "hasha": "^3.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + }, + "write-file-atomic": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } } } }, @@ -1489,14 +1351,6 @@ "camelcase": "^4.1.0", "map-obj": "^2.0.0", "quick-lru": "^1.0.0" - }, - "dependencies": { - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - } } }, "caseless": { @@ -1521,6 +1375,26 @@ "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, "chardet": { @@ -1587,6 +1461,15 @@ "to-regex-range": "^5.0.1" } }, + "glob-parent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", + "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -1677,9 +1560,9 @@ "dev": true }, "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.0.0.tgz", + "integrity": "sha512-m7avcYLWHHQVU+cFxu301q3kKZJlcZcKXQSL9kffYnIvRNtqX+a7gJKXqOKusHoKXr4oquSgiMlAo1R0dDkSZA==", "dev": true, "requires": { "restore-cursor": "^2.0.0" @@ -1946,6 +1829,23 @@ "requires": { "pify": "^3.0.0" } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "write-file-atomic": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } } } }, @@ -1986,9 +1886,9 @@ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "coveralls": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.3.tgz", - "integrity": "sha512-viNfeGlda2zJr8Gj1zqXpDMRjw9uM54p7wzZdvLRyOgnAfCe974Dq4veZkjJdxQXbmdppu6flEajFYseHYaUhg==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.4.tgz", + "integrity": "sha512-eyqUWA/7RT0JagiL0tThVhjbIjoiEUyWCjtUJoOPcWoeofP5WK/jb2OJYoBFrR6DvplR+AxOyuBqk4JHkk5ykA==", "dev": true, "requires": { "growl": "~> 1.10.0", @@ -2020,10 +1920,20 @@ "safe-buffer": "^5.0.1" }, "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", "dev": true } } @@ -2166,6 +2076,14 @@ "requires": { "decamelize": "^1.1.0", "map-obj": "^1.0.0" + }, + "dependencies": { + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + } } }, "decode-uri-component": { @@ -2303,12 +2221,6 @@ "dev": true } } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true } } }, @@ -2383,9 +2295,9 @@ } }, "dot-prop": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.0.0.tgz", - "integrity": "sha512-RTmaF2jx3nOBO2GvtFqjnDLycjFUMqt+2pwRx7JVYa81lDauoj9aNkyrJI2ikR58FbBIchiIlRiGG+muLJ4oHQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.0.1.tgz", + "integrity": "sha512-5BKAm3KC6kgHOm5WqekMXd0HHRhilE0aJzBuOqtrPo2RDS2FTaOeuF5CEsHvZ8ETfjC9N3BufL6sxEMV8w/IIA==", "dev": true, "requires": { "is-obj": "^1.0.0" @@ -2531,13 +2443,13 @@ } }, "es6-weak-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", - "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", "requires": { "d": "1", - "es5-ext": "^0.10.14", - "es6-iterator": "^2.0.1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", "es6-symbol": "^3.1.1" } }, @@ -2654,22 +2566,10 @@ "ms": "^2.1.1" } }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "semver": { @@ -2982,36 +2882,24 @@ "micromatch": "^3.1.10" }, "dependencies": { - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "requires": { - "is-extglob": "^2.1.1" + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } } } @@ -3027,9 +2915,9 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.0.0.tgz", + "integrity": "sha512-HKri+WoWoUgr83pehn/SIgLOMZ9nAWC6dcGj26RY2R4F50u4+RTUz0RCrUlOV3nKRAICW1UGzyb+kcX2qK1S/g==", "dev": true, "requires": { "escape-string-regexp": "^1.0.5" @@ -3071,6 +2959,35 @@ } } }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + }, + "dependencies": { + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + } + } + }, "find-up": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", @@ -3193,6 +3110,12 @@ "type-fest": "^0.3.0" } }, + "get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true + }, "get-stream": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", @@ -3226,12 +3149,22 @@ } }, "glob-parent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", - "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", - "dev": true, + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "requires": { - "is-glob": "^4.0.1" + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "requires": { + "is-extglob": "^2.1.0" + } + } } }, "glob-to-regexp": { @@ -3248,6 +3181,12 @@ "ini": "^1.3.4" } }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, "globby": { "version": "9.2.0", "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", @@ -3261,18 +3200,6 @@ "ignore": "^4.0.3", "pify": "^4.0.1", "slash": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" - } } }, "got": { @@ -3424,12 +3351,13 @@ "dev": true }, "hasha": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", - "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.0.0.tgz", + "integrity": "sha512-PqWdhnQhq6tqD32hZv+l1e5mJHNSudjnaAzgAHfkGiU0ABN6lmbZF8abJIulQHbZ7oiHhP8yL6O910ICMc+5pw==", "dev": true, "requires": { - "is-stream": "^1.0.1" + "is-stream": "^1.1.0", + "type-fest": "^0.3.0" } }, "hosted-git-info": { @@ -3550,9 +3478,9 @@ "dev": true }, "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true }, "inflight": { @@ -3596,12 +3524,36 @@ "through": "^2.3.6" }, "dependencies": { + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true + }, "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -3755,8 +3707,7 @@ "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, "is-fullwidth-code-point": { "version": "1.0.0", @@ -3770,7 +3721,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, "requires": { "is-extglob": "^2.1.1" } @@ -3978,20 +3928,21 @@ "supports-color": "^6.1.0" }, "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "pify": "^4.0.1", + "semver": "^5.6.0" } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true } } }, @@ -4017,10 +3968,26 @@ "ms": "^2.1.1" } }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", "dev": true }, "source-map": { @@ -4046,6 +4013,12 @@ "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", "dev": true }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, "js-yaml": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", @@ -4147,9 +4120,9 @@ "dev": true }, "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true }, "json-buffer": { @@ -4331,6 +4304,13 @@ "parse-json": "^4.0.0", "pify": "^3.0.0", "strip-bom": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + } } }, "locate-path": { @@ -4441,19 +4421,19 @@ } }, "lolex": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.0.1.tgz", - "integrity": "sha512-UHuOBZ5jjsKuzbB/gRNNW8Vg8f00Emgskdq2kvZxgBJCS0aqquAuXai/SkWORlKeZEiNQWZjFZOqIUcH9LqKCw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.1.0.tgz", + "integrity": "sha512-BYxIEXiVq5lGIXeVHnsFzqa1TxN5acnKnPCdlZSpzm8viNEOhiigupA4vTQ9HEFQ6nLTQ9wQOgBknJgzUYQ9Aw==", "dev": true }, "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-2.1.0.tgz", + "integrity": "sha512-g/6MQxUXYHeVqZ4PGpPL1fS1fOvlXoi7bay0pizmjAd/3JhyXwxzwrnr74yzdmhuerlslbRJ3x7IOXzFz0cE5w==", "dev": true, "requires": { "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" + "signal-exit": "^3.0.2" } }, "lowercase-keys": { @@ -4473,27 +4453,11 @@ } }, "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz", + "integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==", "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } + "semver": "^6.0.0" } }, "map-age-cleaner": { @@ -4511,9 +4475,9 @@ "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" }, "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", "dev": true }, "map-visit": { @@ -4538,9 +4502,9 @@ } }, "markdown-it-anchor": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.3.tgz", - "integrity": "sha512-KjEKPZNYoanmTECbh9x1bBsXGJ6dNUTxIFg5YhdBxYkx/+27LNVUzh7Ctlb7jxadgGCWMX9tt46Aaby7Af8xSg==", + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.4.tgz", + "integrity": "sha512-n8zCGjxA3T+Mx1pG8HEgbJbkB8JFUuRkeTZQuIM8iPY6oQ8sWOPRZJDFC9a/pNg2QkHEjjGkhBEl/RSyzaDZ3A==", "dev": true }, "marked": { @@ -4641,6 +4605,16 @@ "path-exists": "^3.0.0" } }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, "p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", @@ -4674,15 +4648,6 @@ "find-up": "^2.0.0", "read-pkg": "^3.0.0" } - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - } } } }, @@ -4709,23 +4674,43 @@ "integrity": "sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA==" }, "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "requires": { + "is-number": "^7.0.0" + } + } } }, "mime": { @@ -4780,6 +4765,14 @@ "requires": { "arrify": "^1.0.1", "is-plain-obj": "^1.1.0" + }, + "dependencies": { + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + } } }, "mixin-deep": { @@ -4877,24 +4870,16 @@ "dev": true }, "nise": { - "version": "1.4.10", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.4.10.tgz", - "integrity": "sha512-sa0RRbj53dovjc7wombHmVli9ZihXbXCQ2uH3TNm03DyvOSIQbxg+pbqDKrk2oxMK1rtLGVlKxcB9rrc6X5YjA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.0.tgz", + "integrity": "sha512-Z3sfYEkLFzFmL8KY6xnSJLRxwQwYBjOXi/24lb62ZnZiGA0JUzGGTI6TBIgfCSMIDl9Jlu8SRmHNACLTemDHww==", "dev": true, "requires": { "@sinonjs/formatio": "^3.1.0", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", - "lolex": "^2.3.2", + "lolex": "^4.1.0", "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "lolex": { - "version": "2.7.5", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz", - "integrity": "sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==", - "dev": true - } } }, "normalize-package-data": { @@ -4924,9 +4909,9 @@ } }, "normalize-url": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", - "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.3.0.tgz", + "integrity": "sha512-0NLtR71o4k6GLP+mr6Ty34c5GA6CMoEsncKJxvQd8NzPxaHRJNnb5gZE8R1XF4CPIS7QPHLJ74IFszwtNVAHVQ==", "dev": true }, "npm-run-path": { @@ -4995,48 +4980,20 @@ "yargs-parser": "^13.0.0" }, "dependencies": { - "caching-transform": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", - "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", - "dev": true, - "requires": { - "hasha": "^3.0.0", - "make-dir": "^2.0.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.4.2" - } + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true }, - "find-cache-dir": { + "make-dir": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "package-hash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", - "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^3.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - } - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", "dev": true, "requires": { - "find-up": "^3.0.0" + "pify": "^4.0.1", + "semver": "^5.6.0" } }, "resolve-from": { @@ -5044,6 +5001,22 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + }, + "yargs-parser": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.0.tgz", + "integrity": "sha512-Yq+32PrijHRri0vVKQEm+ys8mbqWjLiwQkMFNXEENutzLPP0bE4Lcd4iA3OQY5HF+GD3xXxf0MEHb8E4/SA3AA==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, @@ -5148,138 +5121,6 @@ "meow": "^5.0.0", "open": "^6.1.0", "temp-write": "^3.4.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - }, - "meow": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", - "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - } - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - } - } } }, "optimist": { @@ -5333,6 +5174,15 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -5473,18 +5323,6 @@ "hasha": "^5.0.0", "lodash.flattendeep": "^4.4.0", "release-zalgo": "^1.0.0" - }, - "dependencies": { - "hasha": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.0.0.tgz", - "integrity": "sha512-PqWdhnQhq6tqD32hZv+l1e5mJHNSudjnaAzgAHfkGiU0ABN6lmbZF8abJIulQHbZ7oiHhP8yL6O910ICMc+5pw==", - "dev": true, - "requires": { - "is-stream": "^1.1.0", - "type-fest": "^0.3.0" - } - } } }, "package-json": { @@ -5591,6 +5429,13 @@ "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "requires": { "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + } } }, "performance-now": { @@ -5604,9 +5449,9 @@ "integrity": "sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==" }, "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" }, "pinkie": { "version": "2.0.4", @@ -5645,12 +5490,6 @@ "strip-bom": "^3.0.0", "type-fest": "^0.3.0" } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true } } }, @@ -5830,6 +5669,14 @@ "requires": { "indent-string": "^3.0.0", "strip-indent": "^2.0.0" + }, + "dependencies": { + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + } } }, "regenerate": { @@ -5908,6 +5755,14 @@ "dev": true, "requires": { "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } } }, "release-zalgo": { @@ -5998,9 +5853,9 @@ } }, "resolve": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.0.tgz", - "integrity": "sha512-WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.1.tgz", + "integrity": "sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==", "requires": { "path-parse": "^1.0.6" } @@ -6193,13 +6048,23 @@ "lolex": "^4.0.1", "nise": "^1.4.10", "supports-color": "^5.5.0" + }, + "dependencies": { + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" }, "slice-ansi": { "version": "1.0.0", @@ -6527,6 +6392,18 @@ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", @@ -6539,20 +6416,12 @@ } }, "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "dev": true, "requires": { "has-flag": "^3.0.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - } } }, "symbol-observable": { @@ -6579,6 +6448,15 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -6702,9 +6580,9 @@ } }, "tap-xunit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.3.0.tgz", - "integrity": "sha512-YVsURNvn1wfVUWb5wjansxhfbfeo2hOBTUbVgZoaMO8lyZzpiSi9IiZTZ7JG56m6A49LeWjfJIx/SnAre41V/A==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", + "integrity": "sha512-qcZStDtjjYjMKAo7QNiCtOW256g3tuSyCSe5kNJniG1Q2oeOExJq4vm8CwboHZURpkXAHvtqMl4TVL7mcbMVVA==", "requires": { "duplexer": "~0.1.1", "minimist": "~1.2.0", @@ -6749,6 +6627,12 @@ "requires": { "pify": "^3.0.0" } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true } } }, @@ -6809,6 +6693,12 @@ "os-tmpdir": "~1.0.2" } }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, "to-object-path": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", @@ -7267,6 +7157,15 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -7310,14 +7209,15 @@ } }, "write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", - "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.0.tgz", + "integrity": "sha512-EIgkf60l2oWsffja2Sf2AL384dx328c0B+cIYPTQq5q2rOYuDV00/iPFBOUiDKKwKMOhkymH8AidPaRvzfxY+Q==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" } }, "xdg-basedir": { @@ -7397,6 +7297,12 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, "get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", @@ -7428,25 +7334,26 @@ "requires": { "ansi-regex": "^4.1.0" } + }, + "yargs-parser": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.0.tgz", + "integrity": "sha512-Yq+32PrijHRri0vVKQEm+ys8mbqWjLiwQkMFNXEENutzLPP0bE4Lcd4iA3OQY5HF+GD3xXxf0MEHb8E4/SA3AA==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, "yargs-parser": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.0.tgz", - "integrity": "sha512-Yq+32PrijHRri0vVKQEm+ys8mbqWjLiwQkMFNXEENutzLPP0bE4Lcd4iA3OQY5HF+GD3xXxf0MEHb8E4/SA3AA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", "dev": true, "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } + "camelcase": "^4.1.0" } }, "yazl": { diff --git a/packages/project/package.json b/packages/project/package.json index c65d0821acd..0b71dc542bc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,11 +101,11 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.11.0" + "resolve": "^1.11.1" }, "devDependencies": { "ava": "^2.0.0", - "coveralls": "^3.0.3", + "coveralls": "^3.0.4", "cross-env": "^5.2.0", "docdash": "^1.1.1", "eslint": "^5.16.0", From 0b2148ce984c07c0b765cb77cee2f91e59fc6594 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 13 Jun 2019 23:41:54 +0200 Subject: [PATCH 0203/1272] [ui5-project][INTERNAL] Tests: Fix errors due to new namespace detection of LibraryFormatter --- packages/project/package-lock.json | 28 +++++++++++++------ packages/project/package.json | 2 +- packages/project/test/lib/extensions.js | 7 +++++ .../project/test/lib/projectPreprocessor.js | 27 ++++++++++++++---- 4 files changed, 50 insertions(+), 14 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f95367a8ff9..63fcb7a4339 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -472,9 +472,9 @@ "integrity": "sha512-1YKeT4JitGgE4SOzyB9eMwO0nGVNkNEsm9qlIt1Lqm/tG2QEiSMTD4kS3aO6L+w5SClLVxALmIBESK6Mk5wX0A==" }, "@ui5/builder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.3.0.tgz", - "integrity": "sha512-tuqAdS4u8NftoCRpUd6vCSR7zRaxftuuOzH3ou8uNFkqMI7WmzbVX79Bc/ZFDPedRqYijN+tPbYMYg5JyDvNcQ==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.3.1.tgz", + "integrity": "sha512-AcqI35L3B0fRPsLpGc7mDwf+9lTsWuBOc3ZWHU2AIg4n3MlvoGiahEwSSk1kL/bci5yNqrEskWL+M4jbCE6VmA==", "requires": { "@ui5/fs": "^1.1.0", "@ui5/logger": "^1.0.1", @@ -493,7 +493,8 @@ "replacestream": "^4.0.3", "rimraf": "^2.6.3", "semver": "^6.1.1", - "tap-xunit": "^2.3.0", + "slash": "^3.0.0", + "tap-xunit": "^2.4.1", "uglify-es": "^3.2.2", "xml2js": "^0.4.17", "yazl": "^2.5.1" @@ -517,6 +518,11 @@ "taffydb": "2.6.2", "underscore": "~1.8.3" } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" } } }, @@ -2030,11 +2036,12 @@ } }, "d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", "requires": { - "es5-ext": "^0.10.9" + "es5-ext": "^0.10.50", + "type": "^1.0.1" } }, "dashdash": { @@ -6796,6 +6803,11 @@ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" }, + "type": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/type/-/type-1.0.1.tgz", + "integrity": "sha512-MAM5dBMJCJNKs9E7JXo4CXRAansRfG0nlJxW7Wf6GZzSOvH31zClSaHdIMWLehe/EGMBkqeC55rrkaOr5Oo7Nw==" + }, "type-check": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 0b71dc542bc..79b37f1fa0d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.3.0", + "@ui5/builder": "^1.3.1", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.1", diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index eab448f596a..3eba7fa6d41 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -84,6 +84,7 @@ test("Project with project-shim extension with dependency configuration", (t) => metadata: { name: "legacy.library.a", copyright: "${copyright}", + namespace: "legacy/library/a", }, resources: { configuration: { @@ -194,6 +195,7 @@ test("Project with project-shim extension with dependency declaration and config metadata: { name: "legacy.library.a", copyright: "${copyright}", + namespace: "legacy/library/a", }, resources: { configuration: { @@ -218,6 +220,7 @@ test("Project with project-shim extension with dependency declaration and config metadata: { name: "legacy.library.b", copyright: "${copyright}", + namespace: "legacy/library/b", }, resources: { configuration: { @@ -244,6 +247,7 @@ test("Project with project-shim extension with dependency declaration and config metadata: { name: "legacy.library.b", copyright: "${copyright}", + namespace: "legacy/library/b", }, resources: { configuration: { @@ -360,6 +364,7 @@ test("Project with project-shim extension with collection", (t) => { metadata: { name: "legacy.library.x", copyright: "${copyright}", + namespace: "legacy/library/x", }, resources: { configuration: { @@ -384,6 +389,7 @@ test("Project with project-shim extension with collection", (t) => { metadata: { name: "legacy.library.y", copyright: "${copyright}", + namespace: "legacy/library/y", }, resources: { configuration: { @@ -410,6 +416,7 @@ test("Project with project-shim extension with collection", (t) => { metadata: { name: "legacy.library.y", copyright: "${copyright}", + namespace: "legacy/library/y", }, resources: { configuration: { diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 51c1591898d..46cefe6e092 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -428,6 +428,7 @@ test("Inconsistent dependencies with same ID", (t) => { type: "library", metadata: { name: "library.d", + namespace: "library/d", copyright: "Some fancy copyright", }, resources: { @@ -453,6 +454,7 @@ test("Inconsistent dependencies with same ID", (t) => { type: "library", metadata: { name: "library.a", + namespace: "library/a", copyright: "Some fancy copyright ${currentYear}", }, resources: { @@ -481,6 +483,7 @@ test("Inconsistent dependencies with same ID", (t) => { type: "library", metadata: { name: "library.a", + namespace: "library/a", copyright: "Some fancy copyright ${currentYear}", }, resources: { @@ -536,7 +539,7 @@ test("Project tree Cycle A with inline configs", (t) => { test("Project with nested invalid dependencies", (t) => { return projectPreprocessor.processTree(treeWithInvalidModules).then((parsedTree) => { - t.deepEqual(expectedTreeWithInvalidModules, parsedTree); + t.deepEqual(parsedTree, expectedTreeWithInvalidModules); }); }); @@ -619,6 +622,7 @@ const expectedTreeWithInvalidModules = { "type": "library", "metadata": { "name": "library.a", + "namespace": "library/a", "copyright": "Some fancy copyright ${currentYear}" }, "kind": "project", @@ -644,6 +648,7 @@ const expectedTreeWithInvalidModules = { "type": "library", "metadata": { "name": "library.b", + "namespace": "library/b", "copyright": "Some fancy copyright ${currentYear}" }, "kind": "project", @@ -827,6 +832,7 @@ const expectedTreeAWithInlineConfigs = { "type": "library", "metadata": { "name": "library.d", + "namespace": "library/d", "copyright": "Some fancy copyright" }, "resources": { @@ -852,6 +858,7 @@ const expectedTreeAWithInlineConfigs = { "type": "library", "metadata": { "name": "library.a", + "namespace": "library/a", "copyright": "Some fancy copyright ${currentYear}", }, "resources": { @@ -880,6 +887,7 @@ const expectedTreeAWithInlineConfigs = { "type": "library", "metadata": { "name": "library.a", + "namespace": "library/a", "copyright": "Some fancy copyright ${currentYear}", }, "resources": { @@ -935,6 +943,7 @@ const expectedTreeAWithConfigPaths = { "type": "library", "metadata": { "name": "library.d", + "namespace": "library/d", "copyright": "Some fancy copyright", }, "resources": { @@ -961,6 +970,7 @@ const expectedTreeAWithConfigPaths = { "type": "library", "metadata": { "name": "library.a", + "namespace": "library/a", "copyright": "Some fancy copyright ${currentYear}", }, "resources": { @@ -990,6 +1000,7 @@ const expectedTreeAWithConfigPaths = { "type": "library", "metadata": { "name": "library.a", + "namespace": "library/a", "copyright": "Some fancy copyright ${currentYear}", }, "resources": { @@ -1130,6 +1141,7 @@ const expectedTreeBWithInlineConfigs = { "type": "library", "metadata": { "name": "library.b", + "namespace": "library/b", "copyright": "Some fancy copyright ${currentYear}", }, "resources": { @@ -1155,6 +1167,7 @@ const expectedTreeBWithInlineConfigs = { "type": "library", "metadata": { "name": "library.d", + "namespace": "library/d", "copyright": "Some fancy copyright" }, "resources": { @@ -1180,6 +1193,7 @@ const expectedTreeBWithInlineConfigs = { "type": "library", "metadata": { "name": "library.a", + "namespace": "library/a", "copyright": "Some fancy copyright ${currentYear}", }, "resources": { @@ -1210,6 +1224,7 @@ const expectedTreeBWithInlineConfigs = { "type": "library", "metadata": { "name": "library.d", + "namespace": "library/d", "copyright": "Some fancy copyright" }, "resources": { @@ -1235,6 +1250,7 @@ const expectedTreeBWithInlineConfigs = { "type": "library", "metadata": { "name": "library.a", + "namespace": "library/a", "copyright": "Some fancy copyright ${currentYear}" }, "resources": { @@ -1348,7 +1364,7 @@ const expectedTreeApplicationCycleA = { "path": path.join(cycleDepsBasePath, "application.cycle.a"), "type": "application", "metadata": { - "name": "application.cycle.a" + "name": "application.cycle.a", }, "dependencies": [ { @@ -1359,6 +1375,7 @@ const expectedTreeApplicationCycleA = { "type": "library", "metadata": { "name": "component.cycle.a", + "namespace": "component/cycle/a", "copyright": "${copyright}" }, "dependencies": [ @@ -1380,7 +1397,7 @@ const expectedTreeApplicationCycleA = { "path": path.join(cycleDepsBasePath, "component.cycle.a"), "type": "library", "metadata": { - "name": "component.cycle.a" + "name": "component.cycle.a", }, "dependencies": [], "deduped": true @@ -1419,7 +1436,7 @@ const expectedTreeApplicationCycleA = { "path": path.join(cycleDepsBasePath, "component.cycle.a"), "type": "library", "metadata": { - "name": "component.cycle.a" + "name": "component.cycle.a", }, "dependencies": [], "deduped": true @@ -1447,7 +1464,7 @@ const expectedTreeApplicationCycleA = { "path": path.join(cycleDepsBasePath, "application.cycle.a"), "type": "application", "metadata": { - "name": "application.cycle.a" + "name": "application.cycle.a", }, "dependencies": [], "deduped": true From 84276d3f052f7bff01231cc4b6b1e3c7a8f8edcb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 14 Jun 2019 16:15:26 +0200 Subject: [PATCH 0204/1272] [ui5-project][INTERNAL] Set up CI with Azure Pipelines --- packages/project/.gitignore | 3 ++ packages/project/.travis.yml | 16 ++------- packages/project/README.md | 2 +- packages/project/azure-pipelines.yml | 50 ++++++++++++++++++++++++++++ packages/project/package.json | 6 +++- 5 files changed, 61 insertions(+), 16 deletions(-) create mode 100644 packages/project/azure-pipelines.yml diff --git a/packages/project/.gitignore b/packages/project/.gitignore index 7745928680a..8ba81815932 100644 --- a/packages/project/.gitignore +++ b/packages/project/.gitignore @@ -17,6 +17,9 @@ coverage # nyc test coverage .nyc_output +# CI (Azure Pipelines) xUnit test results +test-results.xml + # IDEs .vscode/ *.~vsdx diff --git a/packages/project/.travis.yml b/packages/project/.travis.yml index 78a9124dcca..ae651868074 100644 --- a/packages/project/.travis.yml +++ b/packages/project/.travis.yml @@ -1,21 +1,9 @@ language: node_js # don't install any environment node_js: -- "11" +- "lts/*" -os: -- linux -- osx -- windows - -matrix: - include: - - os: linux - node_js: - - "10" - - os: linux - node_js: - - "8" +script: npm run coverage after_script: - if [[ "$TRAVIS_OS_NAME" == "linux" && diff --git a/packages/project/README.md b/packages/project/README.md index 6f64491c5a5..f25fe4e90e8 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -4,7 +4,7 @@ > Modules for building a projects dependency tree, including UI5 specific configuration. > Part of the [UI5 Tooling](https://github.com/SAP/ui5-tooling) -[![Travis CI Build Status](https://travis-ci.org/SAP/ui5-project.svg?branch=master)](https://travis-ci.org/SAP/ui5-project) +[![Build Status](https://dev.azure.com/sap/opensource/_apis/build/status/SAP.ui5-project?branchName=master)](https://dev.azure.com/sap/opensource/_build/latest?definitionId=35&branchName=master) [![npm Package Version](https://badge.fury.io/js/%40ui5%2Fproject.svg)](https://www.npmjs.com/package/@ui5/project) [![Coverage Status](https://coveralls.io/repos/github/SAP/ui5-project/badge.svg)](https://coveralls.io/github/SAP/ui5-project) [![Dependency Status](https://david-dm.org/SAP/ui5-project/master.svg)](https://david-dm.org/SAP/ui5-project/master) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml new file mode 100644 index 00000000000..a18da2979af --- /dev/null +++ b/packages/project/azure-pipelines.yml @@ -0,0 +1,50 @@ +# Node.js +# Build a general Node.js project with npm. +# Add steps that analyze code, save build artifacts, deploy, and more: +# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript + +trigger: +- master + +strategy: + matrix: + linux_node_8: + imageName: 'ubuntu-16.04' + node_version: 8.x + linux_node_10: + imageName: 'ubuntu-16.04' + node_version: 10.x + linux_node_latest: + imageName: 'ubuntu-16.04' + node_version: 11.x + mac_node_latest: + imageName: 'macos-10.13' + node_version: 11.x + windows_node_latest: + imageName: 'vs2017-win2016' + node_version: 11.x + +pool: + vmImage: $(imageName) + +steps: +- task: NodeTool@0 + inputs: + versionSpec: $(node_version) + displayName: 'Install Node.js' + +- script: npm ci +- script: npm run test-azure + +- task: PublishTestResults@2 + condition: succeededOrFailed() + inputs: + testResultsFormat: 'JUnit' + testResultsFiles: '$(System.DefaultWorkingDirectory)/test-results.xml' + +- task: PublishCodeCoverageResults@1 + condition: succeededOrFailed() + inputs: + codeCoverageTool: 'cobertura' + summaryFileLocation: '$(System.DefaultWorkingDirectory)/coverage/cobertura-coverage.xml' + diff --git a/packages/project/package.json b/packages/project/package.json index 79b37f1fa0d..4b1c1b6867b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -19,13 +19,16 @@ }, "scripts": { "test": "npm run lint && npm run jsdoc-generate && npm run coverage", + "test-azure": "npm run lint && npm run jsdoc-generate && npm run coverage-xunit", "lint": "eslint ./", "unit": "rimraf test/tmp && ava", "unit-verbose": "rimraf test/tmp && cross-env UI5_LOG_LVL=verbose ava --verbose --serial", "unit-watch": "rimraf test/tmp && ava --watch", "unit-nyan": "rimraf test/tmp && ava --tap | tnyan", + "unit-xunit": "rimraf test/tmp && ava --tap | tap-xunit --dontUseCommentsAsTestNames=true > test-results.xml", "unit-inspect": "cross-env UI5_LOG_LVL=verbose node --inspect-brk node_modules/ava/profile.js", "coverage": "nyc npm run unit", + "coverage-xunit": "nyc --reporter=text --reporter=text-summary --reporter=cobertura npm run unit-xunit", "jsdoc": "npm run jsdoc-generate && opn jsdocs/index.html", "jsdoc-generate": "node_modules/.bin/jsdoc -c ./jsdoc.json ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", "preversion": "npm test", @@ -116,6 +119,7 @@ "opn-cli": "^4.1.0", "rimraf": "^2.6.3", "sinon": "^7.3.2", - "tap-nyan": "^1.1.0" + "tap-nyan": "^1.1.0", + "tap-xunit": "^2.4.1" } } From f62e0bcc0dc208ace3aecfb1a4d0b5603d3be516 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 16 Jun 2019 04:26:16 +0000 Subject: [PATCH 0205/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 226 ++++++++++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 146 insertions(+), 82 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 63fcb7a4339..b6eeca430b6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -467,9 +467,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.0.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.7.tgz", - "integrity": "sha512-1YKeT4JitGgE4SOzyB9eMwO0nGVNkNEsm9qlIt1Lqm/tG2QEiSMTD4kS3aO6L+w5SClLVxALmIBESK6Mk5wX0A==" + "version": "12.0.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.8.tgz", + "integrity": "sha512-b8bbUOTwzIY3V5vDTY1fIJ+ePKDUBqt2hC2woVGotdQQhG/2Sh62HOKHrT7ab+VerXAcPyAiTEipPu/FsreUtg==" }, "@ui5/builder": { "version": "1.3.1", @@ -518,11 +518,6 @@ "taffydb": "2.6.2", "underscore": "~1.8.3" } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" } } }, @@ -624,12 +619,12 @@ } }, "ansi-escapes": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.1.0.tgz", - "integrity": "sha512-2VY/iCUZTDLD/qxptS3Zn3c6k2MeIbYqjRXqM8T5oC7N2mMjh3xIU3oYru6cHGbldFa9h5i8N0fP65UaUqrMWA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.2.0.tgz", + "integrity": "sha512-0+VX4uhi8m3aNbzoqKmkAVOEj6uQzcUHXoFPkKjhZPTpGRUBqVh930KbB6PS4zIyDZccphlLIYlu8nsjFzkXwg==", "dev": true, "requires": { - "type-fest": "^0.3.0" + "type-fest": "^0.5.2" } }, "ansi-regex": { @@ -810,9 +805,9 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-2.0.0.tgz", - "integrity": "sha512-tOfO3yQhKiSECIjST8Xi99l7Bja9EG5hgZFKc92xNZh/6pnct97vWDKENyATBvZIXpdCClSMtGgOX2UaGq+OJA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-2.1.0.tgz", + "integrity": "sha512-IaS+l1KfYtFpJlDZXrNG0M6SGr/DUvwJmTiaTaW2lMdEezCAJc5J/hNAQWIKigkmxIOURYT29atD/qyp+zq+wg==", "dev": true, "requires": { "@ava/babel-preset-stage-4": "^3.0.0", @@ -831,7 +826,7 @@ "arrify": "^2.0.1", "bluebird": "^3.5.5", "chalk": "^2.4.2", - "chokidar": "^3.0.0", + "chokidar": "^3.0.1", "chunkd": "^1.0.0", "ci-parallel-vars": "^1.0.0", "clean-stack": "^2.1.0", @@ -845,7 +840,7 @@ "currently-unhandled": "^0.4.1", "debug": "^4.1.1", "del": "^4.1.1", - "dot-prop": "^5.0.0", + "dot-prop": "^5.0.1", "emittery": "^0.4.1", "empower-core": "^1.2.0", "equal-length": "^1.0.0", @@ -870,7 +865,7 @@ "md5-hex": "^3.0.0", "meow": "^5.0.0", "micromatch": "^4.0.2", - "ms": "^2.1.1", + "ms": "^2.1.2", "observable-to-promise": "^1.0.0", "ora": "^3.4.0", "package-hash": "^4.0.0", @@ -974,12 +969,6 @@ "p-limit": "^2.2.0" } }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -1153,6 +1142,12 @@ "requires": { "ansi-regex": "^4.1.0" } + }, + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true } } }, @@ -1566,12 +1561,12 @@ "dev": true }, "cli-cursor": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.0.0.tgz", - "integrity": "sha512-m7avcYLWHHQVU+cFxu301q3kKZJlcZcKXQSL9kffYnIvRNtqX+a7gJKXqOKusHoKXr4oquSgiMlAo1R0dDkSZA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dev": true, "requires": { - "restore-cursor": "^2.0.0" + "restore-cursor": "^3.1.0" } }, "cli-spinners": { @@ -1827,6 +1822,12 @@ "is-obj": "^1.0.0" } }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, "make-dir": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", @@ -2302,12 +2303,12 @@ } }, "dot-prop": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.0.1.tgz", - "integrity": "sha512-5BKAm3KC6kgHOm5WqekMXd0HHRhilE0aJzBuOqtrPo2RDS2FTaOeuF5CEsHvZ8ETfjC9N3BufL6sxEMV8w/IIA==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.1.0.tgz", + "integrity": "sha512-n1oC6NBF+KM9oVXtjmen4Yo7HyAVWV2UUl50dCYJdw2924K6dX9bf9TTTWaKtYlRn0FEtxG27KS80ayVLixxJA==", "dev": true, "requires": { - "is-obj": "^1.0.0" + "is-obj": "^2.0.0" } }, "duplexer": { @@ -3115,6 +3116,14 @@ "dev": true, "requires": { "type-fest": "^0.3.0" + }, + "dependencies": { + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true + } } }, "get-stdin": { @@ -3207,6 +3216,13 @@ "ignore": "^4.0.3", "pify": "^4.0.1", "slash": "^2.0.0" + }, + "dependencies": { + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + } } }, "got": { @@ -3365,6 +3381,14 @@ "requires": { "is-stream": "^1.1.0", "type-fest": "^0.3.0" + }, + "dependencies": { + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true + } } }, "hosted-git-info": { @@ -3567,6 +3591,31 @@ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -3778,9 +3827,9 @@ } }, "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", "dev": true }, "is-observable": { @@ -4566,14 +4615,6 @@ "map-age-cleaner": "^0.1.1", "mimic-fn": "^2.0.0", "p-is-promise": "^2.0.0" - }, - "dependencies": { - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - } } }, "meow": { @@ -4740,9 +4781,9 @@ } }, "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true }, "mimic-response": { @@ -5016,9 +5057,9 @@ "dev": true }, "yargs-parser": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.0.tgz", - "integrity": "sha512-Yq+32PrijHRri0vVKQEm+ys8mbqWjLiwQkMFNXEENutzLPP0bE4Lcd4iA3OQY5HF+GD3xXxf0MEHb8E4/SA3AA==", + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", + "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -5100,12 +5141,12 @@ } }, "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", + "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", "dev": true, "requires": { - "mimic-fn": "^1.0.0" + "mimic-fn": "^2.1.0" } }, "open": { @@ -5190,6 +5231,31 @@ "restore-cursor": "^2.0.0" } }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -5333,23 +5399,15 @@ } }, "package-json": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.3.0.tgz", - "integrity": "sha512-XO7WS3EEXd48vmW633Y97Mh9xuENFiOevI9G+ExfTG/k6xuY9cBd3fxkAoDMSEsNZXasaVJIJ1rD/n7GMf18bA==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.4.0.tgz", + "integrity": "sha512-bd1T8OBG7hcvMd9c/udgv6u5v9wISP3Oyl9Cm7Weop8EFwrtcQDnS2sb6zhwqus2WslSr5wSTIPiTTpxxmPm7Q==", "dev": true, "requires": { "got": "^9.6.0", "registry-auth-token": "^3.4.0", "registry-url": "^5.0.0", - "semver": "^5.6.0" - }, - "dependencies": { - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } + "semver": "^6.1.1" } }, "parent-module": { @@ -5497,6 +5555,12 @@ "strip-bom": "^3.0.0", "type-fest": "^0.3.0" } + }, + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true } } }, @@ -5905,12 +5969,12 @@ } }, "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "dev": true, "requires": { - "onetime": "^2.0.0", + "onetime": "^5.1.0", "signal-exit": "^3.0.2" } }, @@ -6069,9 +6133,9 @@ } }, "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" }, "slice-ansi": { "version": "1.0.0", @@ -6785,9 +6849,9 @@ "dev": true }, "tslib": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", - "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", + "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", "dev": true }, "tunnel-agent": { @@ -6823,9 +6887,9 @@ "dev": true }, "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.5.2.tgz", + "integrity": "sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw==", "dev": true }, "typedarray-to-buffer": { @@ -7348,9 +7412,9 @@ } }, "yargs-parser": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.0.tgz", - "integrity": "sha512-Yq+32PrijHRri0vVKQEm+ys8mbqWjLiwQkMFNXEENutzLPP0bE4Lcd4iA3OQY5HF+GD3xXxf0MEHb8E4/SA3AA==", + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", + "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", "dev": true, "requires": { "camelcase": "^5.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 4b1c1b6867b..e31effc5b72 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -107,7 +107,7 @@ "resolve": "^1.11.1" }, "devDependencies": { - "ava": "^2.0.0", + "ava": "^2.1.0", "coveralls": "^3.0.4", "cross-env": "^5.2.0", "docdash": "^1.1.1", From 0df9bc4b8334e3ab13fd4fd2d465e06f98a514ee Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 25 Apr 2019 10:27:55 +0200 Subject: [PATCH 0206/1272] [ui5-project][INTERNAL] Document cachebuster signatureType configuration Got implemented with SAP/ui5-builder#241 --- packages/project/docs/Configuration.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index b1a95f8a377..0f53a21a723 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -60,6 +60,8 @@ builder: jsdoc: excludes: - "some/project/name/thirdparty/**" + cachebuster: + signatureType: time server: settings: port: 8099 @@ -87,6 +89,8 @@ Some general information: + `: ` (default `/: ./`): Any virtual path mapping can be defined here. *(Only available for projects of type `module`)* It is recommended that modules include their namespace in the virtual path and use the `/resources` prefix (e.g. `/resources/my/first/library/module-xy`). +- `cachebuster`: + - `signatureType`: `time` or `hash`. By default, the generated cachebuster info file signatures are based on timestamps (`time`). In setups like CI environments, a mechanism based on file hashes (`hash`) might be more reliable. #### builder (optional) - `resources`: General resource configuration for this project From f8f74aa247abe87437e0949110f92c24353dd133 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 23 Jun 2019 04:29:47 +0000 Subject: [PATCH 0207/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 72 +++++++++++++++++------------- 1 file changed, 40 insertions(+), 32 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b6eeca430b6..3681924374f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -421,9 +421,9 @@ } }, "@sinonjs/samsam": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.1.tgz", - "integrity": "sha512-wRSfmyd81swH0hA1bxJZJ57xr22kC07a1N4zuIL47yTS04bDk6AoCkczcqHEjcRPmJ+FruGJ9WBQiJwMtIElFw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.2.tgz", + "integrity": "sha512-ILO/rR8LfAb60Y1Yfp9vxfYAASK43NFC2mLzpvLUbCQY/Qu8YwReboseu8aheCEkyElZF2L2T9mHcR2bgdvZyA==", "dev": true, "requires": { "@sinonjs/commons": "^1.0.2", @@ -467,9 +467,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.0.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.8.tgz", - "integrity": "sha512-b8bbUOTwzIY3V5vDTY1fIJ+ePKDUBqt2hC2woVGotdQQhG/2Sh62HOKHrT7ab+VerXAcPyAiTEipPu/FsreUtg==" + "version": "12.0.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.10.tgz", + "integrity": "sha512-LcsGbPomWsad6wmMNv7nBLw7YYYyfdYcz6xryKYQhx89c3XXan+8Q6AJ43G5XDIaklaVkK3mE4fCb0SBvMiPSQ==" }, "@ui5/builder": { "version": "1.3.1", @@ -522,9 +522,9 @@ } }, "@ui5/fs": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.1.0.tgz", - "integrity": "sha512-3RPbt3cIG5vY34ssSnr5KlROxqSG6y7sn9TarspPd0+7j1VvKY2leWASNOfuFCISmAnJGbNdFZcfmJfhbTWlEA==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.1.1.tgz", + "integrity": "sha512-mMNURrQTesK7yJfPmI+nTF2pBg0PcTy4KsSNfn5tnhZ2OISYGA7ZOE8GwpheVWjvzULp/GETOx+yPdWg6eeDtA==", "requires": { "@ui5/logger": "^1.0.1", "clone": "^2.1.0", @@ -535,7 +535,8 @@ "minimatch": "^3.0.3", "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.0" + "random-int": "^2.0.0", + "slash": "^3.0.0" } }, "@ui5/logger": { @@ -922,12 +923,13 @@ "dev": true }, "find-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.0.0.tgz", - "integrity": "sha512-zoH7ZWPkRdgwYCDVoQTzqjG8JSPANhtvLhh4KVUHyKnaUJJrNeFmWIkTcNuJmR3GLMEmGYEf2S2bjgx26JTF+Q==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { - "locate-path": "^5.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, "is-plain-object": { @@ -969,6 +971,12 @@ "p-limit": "^2.2.0" } }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -1736,9 +1744,9 @@ "optional": true }, "comment-parser": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.4.tgz", - "integrity": "sha512-0h7W6Y1Kb6zKQMJqdX41C5qf9ITCVIsD2qP2RaqDF3GFkXFrmuAuv5zUOuo19YzyC9scjBNpqzuaRQ2Sy5pxMQ==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.5.tgz", + "integrity": "sha512-oB3TinFT+PV3p8UwDQt71+HkG03+zwPwikDlKU6ZDmql6QX2zFlQ+G0GGSDqyJhdZi4PSlzFBm+YJ+ebOX3Vgw==", "dev": true }, "common-path-prefix": { @@ -3524,9 +3532,9 @@ } }, "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "ini": { "version": "1.3.5", @@ -3535,9 +3543,9 @@ "dev": true }, "inquirer": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.3.1.tgz", - "integrity": "sha512-MmL624rfkFt4TG9y/Jvmt8vdmOo836U7Y0Hxr2aFk3RelZEGX4Igk0KabWrcaaZaTv9uzglOqWh1Vly+FAWAXA==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.4.1.tgz", + "integrity": "sha512-/Jw+qPZx4EDYsaT6uz7F4GJRNFMRdKNeUZw3ZnKV8lyuUgz/YWRCSUAJMZSVhSq4Ec0R2oYnyi6b3d4JXcL5Nw==", "dev": true, "requires": { "ansi-escapes": "^3.2.0", @@ -5618,9 +5626,9 @@ } }, "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, "progress": { "version": "2.0.3", @@ -5635,9 +5643,9 @@ "dev": true }, "psl": { - "version": "1.1.32", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.32.tgz", - "integrity": "sha512-MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g==" + "version": "1.1.33", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.33.tgz", + "integrity": "sha512-LTDP2uSrsc7XCb5lO7A8BI1qYxRe/8EqlRvMeEl6rsnYAqDOl8xHR+8lSAIVfrNaSAlTPTNOCgNjWcoUL3AZsw==" }, "pump": { "version": "3.0.0", @@ -6502,9 +6510,9 @@ "dev": true }, "table": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.0.tgz", - "integrity": "sha512-nHFDrxmbrkU7JAFKqKbDJXfzrX2UBsWmrieXFTGxiI5e4ncg3VqsZeI4EzNmX0ncp4XNGVeoxIWJXfCIXwrsvw==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.1.tgz", + "integrity": "sha512-E6CK1/pZe2N75rGZQotFOdmzWQ1AILtgYbMAbAjvms0S1l5IDB47zG3nCnFGB/w+7nB3vKofbLXCH7HPBo864w==", "dev": true, "requires": { "ajv": "^6.9.1", From 62d2cd84e0d25967caff8cba9b341fafa3e07c1c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 24 Jun 2019 17:25:59 +0000 Subject: [PATCH 0208/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.3.1 to 1.3.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.3.2/CHANGELOG.md --- packages/project/package-lock.json | 25 ++++++++++++++++--------- packages/project/package.json | 2 +- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3681924374f..c5ccfb93b12 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -472,11 +472,11 @@ "integrity": "sha512-LcsGbPomWsad6wmMNv7nBLw7YYYyfdYcz6xryKYQhx89c3XXan+8Q6AJ43G5XDIaklaVkK3mE4fCb0SBvMiPSQ==" }, "@ui5/builder": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.3.1.tgz", - "integrity": "sha512-AcqI35L3B0fRPsLpGc7mDwf+9lTsWuBOc3ZWHU2AIg4n3MlvoGiahEwSSk1kL/bci5yNqrEskWL+M4jbCE6VmA==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.3.2.tgz", + "integrity": "sha512-xG8Kh2XmgP4Q238m6O2BdbnuVPu4mfbLJ4fCMhrfY6E0PTX5m7C5vdMuKHgllQ2nH3RvCpfMzvISco9INIR4JA==", "requires": { - "@ui5/fs": "^1.1.0", + "@ui5/fs": "^1.1.1", "@ui5/logger": "^1.0.1", "cheerio": "^0.22.0", "escodegen": "^1.11.1", @@ -494,7 +494,6 @@ "rimraf": "^2.6.3", "semver": "^6.1.1", "slash": "^3.0.0", - "tap-xunit": "^2.4.1", "uglify-es": "^3.2.2", "xml2js": "^0.4.17", "yazl": "^2.5.1" @@ -2322,7 +2321,8 @@ "duplexer": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", - "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=" + "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", + "dev": true }, "duplexer2": { "version": "0.1.4", @@ -2726,7 +2726,8 @@ "events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=" + "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", + "dev": true }, "execa": { "version": "0.7.0", @@ -6651,6 +6652,7 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", "integrity": "sha1-Xi9pcGEfB5x8+FfeHceqG0gN56U=", + "dev": true, "requires": { "events-to-array": "^1.0.1", "inherits": "~2.0.1", @@ -6662,6 +6664,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", "integrity": "sha512-qcZStDtjjYjMKAo7QNiCtOW256g3tuSyCSe5kNJniG1Q2oeOExJq4vm8CwboHZURpkXAHvtqMl4TVL7mcbMVVA==", + "dev": true, "requires": { "duplexer": "~0.1.1", "minimist": "~1.2.0", @@ -6674,7 +6677,8 @@ "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true } } }, @@ -6752,6 +6756,7 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" @@ -7330,6 +7335,7 @@ "version": "4.2.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz", "integrity": "sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU=", + "dev": true, "requires": { "lodash": "^4.0.0" } @@ -7342,7 +7348,8 @@ "xtend": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true }, "y18n": { "version": "4.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index e31effc5b72..b3967a8e78b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.3.1", + "@ui5/builder": "^1.3.2", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.1.15", "js-yaml": "^3.13.1", From 158cfdfc8b679dbe8d4737838469872a974a3589 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 25 Jun 2019 12:56:38 +0200 Subject: [PATCH 0209/1272] [ui5-project][FIX] projectPreprocessor: Do not remove already removed dependencies (#189) This lead to the wrong dependency being removed in some cases. Credits to @nlunets for reporting this issue. --- packages/project/lib/projectPreprocessor.js | 4 +- .../project/test/lib/projectPreprocessor.js | 121 ++++++++++++++++++ 2 files changed, 124 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index eb561e3e9b8..7116badce70 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -163,7 +163,9 @@ class ProjectPreprocessor { if (processedProject) { if (processedProject.ignored) { log.verbose(`Dependency of project ${parent.id}, "${project.id}" is flagged as ignored.`); - parent.dependencies.splice(parent.dependencies.indexOf(project), 1); + if (parent.dependencies.includes(project)) { + parent.dependencies.splice(parent.dependencies.indexOf(project), 1); + } return true; } log.verbose(`Dependency of project ${parent.id}, "${project.id}": Distance to root of ${parent._level + 1}. Will be `+ diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 46cefe6e092..276312c3601 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1598,3 +1598,124 @@ test("specVersion: Project with valid version 1.0", async (t) => { const res = await projectPreprocessor.processTree(tree); t.deepEqual(res.specVersion, "1.0", "Correct spec version"); }); + +test("isBeingProcessed: Is not being processed", (t) => { + const preprocessor = new projectPreprocessor.ProjectPreprocessor(); + + preprocessor.processedProjects = {}; + + const project = { + id: "some.id", + _level: 1337 + }; + const parent = { + dependencies: [project] + }; + const res = preprocessor.isBeingProcessed(parent, project); + t.deepEqual(res, false, "Project is not processed"); + t.deepEqual(parent.dependencies.length, 1, "Parent still has one dependency"); +}); + +test("isBeingProcessed: Is being processed", (t) => { + const preprocessor = new projectPreprocessor.ProjectPreprocessor(); + + const alreadyProcessedProject = { + project: { + id: "some.id", + _level: 42 + }, + parents: [] + }; + preprocessor.processedProjects = { + "some.id": alreadyProcessedProject + }; + + const project = { + id: "some.id", + _level: 1337 + }; + const parent = { + dependencies: [project] + }; + const res = preprocessor.isBeingProcessed(parent, project); + t.deepEqual(res, true, "Project is already processed"); + t.deepEqual(parent.dependencies.length, 1, "parent still has one dependency"); + t.deepEqual(parent.dependencies[0]._level, 42, "Parent dependency got replaced with already processed project"); + t.deepEqual(alreadyProcessedProject.parents.length, 1, "Already processed project now has one parent"); + t.is(alreadyProcessedProject.parents[0], parent, "Parent got added as parent of already processed project"); +}); + +test("isBeingProcessed: Processed project is ignored", (t) => { + const preprocessor = new projectPreprocessor.ProjectPreprocessor(); + + const alreadyProcessedProject = { + project: { + id: "some.id", + _level: 42 + }, + parents: [], + ignored: true + }; + preprocessor.processedProjects = { + "some.id": alreadyProcessedProject + }; + + const project = { + id: "some.id", + _level: 1337 + }; + const parent = { + dependencies: [project] + }; + const res = preprocessor.isBeingProcessed(parent, project); + t.deepEqual(res, true, "Project is already processed"); + t.deepEqual(parent.dependencies.length, 0, "Project got removed from parent dependencies"); + t.deepEqual(alreadyProcessedProject.parents.length, 0, "Already processed project still has no parents"); +}); + +test("isBeingProcessed: Processed project is ignored but already removed from parent", (t) => { + const preprocessor = new projectPreprocessor.ProjectPreprocessor(); + + const alreadyProcessedProject = { + project: { + id: "some.id", + _level: 42 + }, + parents: [], + ignored: true + }; + preprocessor.processedProjects = { + "some.id": alreadyProcessedProject + }; + + const project = { + id: "some.id", + _level: 1337 + }; + const otherProject = { + id: "some.other.id" + }; + const parent = { + dependencies: [otherProject] + }; + const res = preprocessor.isBeingProcessed(parent, project); + t.deepEqual(res, true, "Project is already processed"); + t.deepEqual(parent.dependencies.length, 1, "Parent still has one dependency"); + t.deepEqual(parent.dependencies[0].id, "some.other.id", + "Parent dependency to another project has not been removed"); + t.deepEqual(alreadyProcessedProject.parents.length, 0, "Already processed project still has no parents"); +}); + +test("isBeingProcessed: Deduped project is being ignored", (t) => { + const preprocessor = new projectPreprocessor.ProjectPreprocessor(); + + preprocessor.processedProjects = {}; + + const project = { + deduped: true + }; + const parent = {}; + + const res = preprocessor.isBeingProcessed(parent, project); + t.deepEqual(res, true, "Project is being ignored"); +}); From 8b12eb6b9e676fd65dd5b8c3c5d9f50a379c1ef5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 25 Jun 2019 10:59:28 +0000 Subject: [PATCH 0210/1272] [ui5-project]Release 1.0.3 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index ba28285dd2b..361342a4d81 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.0.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.0.3...HEAD). + + +## [v1.0.3] - 2019-06-25 +### Bug Fixes +- **projectPreprocessor:** Do not remove already removed dependencies ([#189](https://github.com/SAP/ui5-project/issues/189)) [`4600d63`](https://github.com/SAP/ui5-project/commit/4600d63cf323d3e143072c6c3416b5a48e90bb71) + ## [v1.0.2] - 2019-04-12 @@ -92,6 +98,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v1.0.3]: https://github.com/SAP/ui5-project/compare/v1.0.2...v1.0.3 [v1.0.2]: https://github.com/SAP/ui5-project/compare/v1.0.1...v1.0.2 [v1.0.1]: https://github.com/SAP/ui5-project/compare/v1.0.0...v1.0.1 [v1.0.0]: https://github.com/SAP/ui5-project/compare/v0.2.5...v1.0.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c5ccfb93b12..a9e0630e69e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.0.2", + "version": "1.0.3", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index b3967a8e78b..d8dd274835c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.0.2", + "version": "1.0.3", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 6ba0cff09cd7aa9353524b5accdd3d4057078c94 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 30 Jun 2019 04:29:47 +0000 Subject: [PATCH 0211/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 133 ++++++++++++----------------- packages/project/package.json | 2 +- 2 files changed, 56 insertions(+), 79 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a9e0630e69e..5987b76c508 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1577,9 +1577,9 @@ } }, "cli-spinners": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.1.0.tgz", - "integrity": "sha512-8B00fJOEh1HPrx4fo5eW16XmE1PcL1tGpGrxy63CXGP9nHdPBN63X75hA1zhvQuhVztJWLqV58Roj2qlNM7cAA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.2.0.tgz", + "integrity": "sha512-tgU3fKwzYjiLEQgPMD9Jt+JjHVL9kW93FiIMX/l7rivvOD4/LL0Mf7gda3+4U2KJBloybwgj5KEoQgGRioMiKQ==", "dev": true }, "cli-truncate": { @@ -3025,9 +3025,9 @@ } }, "flatted": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", - "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", + "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", "dev": true }, "for-in": { @@ -3265,9 +3265,9 @@ } }, "graceful-fs": { - "version": "4.1.15", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", + "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==" }, "growl": { "version": "1.10.5", @@ -4153,9 +4153,9 @@ } }, "marked": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.6.2.tgz", - "integrity": "sha512-LqxwVH3P/rqKX4EKGz7+c2G9r98WeM/SW34ybhgNGhUQNKtf1GmmSkJ6cDGJ/t6tiyae49qRkpyTw2B9HOrgUA==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.6.3.tgz", + "integrity": "sha512-Fqa7eq+UaxfMriqzYLayfqAE40WN03jf+zHjT18/uXNuzjq3TY0XTbrAoPeqSJrAmPz11VuUA+kBPYOhHt9oOQ==", "dev": true }, "strip-json-comments": { @@ -4833,9 +4833,9 @@ } }, "mixin-deep": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", "requires": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" @@ -5159,9 +5159,9 @@ } }, "open": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/open/-/open-6.3.0.tgz", - "integrity": "sha512-6AHdrJxPvAXIowO/aIaeHZ8CeMdDf7qCyRNq8NwJpinmCdXhz+NZR7ie1Too94lpciCDsG+qHGO9Mt0svA4OqA==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz", + "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", "dev": true, "requires": { "is-wsl": "^1.1.0" @@ -6042,9 +6042,9 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "semver": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.1.tgz", - "integrity": "sha512-rWYq2e5iYW+fFe/oPPtYJxYgjBm8sC4rmoGdUOgBB7VnwKt6HrL793l2voH1UlsyYZpJ4g0wfjnTEO1s1NP2eQ==" + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.2.tgz", + "integrity": "sha512-z4PqiCpomGtWj8633oeAdXm1Kn1W++3T8epkZYnwiVgIYIJ0QHszhInYSJTYxebByQH7KVCEAn8R9duzZW2PhQ==" }, "semver-diff": { "version": "2.1.0", @@ -6075,9 +6075,9 @@ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, "set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", "requires": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", @@ -6634,28 +6634,16 @@ "requires": { "has-flag": "^1.0.0" } - }, - "tap-parser": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", - "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", - "dev": true, - "requires": { - "events-to-array": "^1.0.1", - "js-yaml": "^3.2.7", - "readable-stream": "^2" - } } } }, "tap-parser": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", - "integrity": "sha1-Xi9pcGEfB5x8+FfeHceqG0gN56U=", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", + "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", "dev": true, "requires": { "events-to-array": "^1.0.1", - "inherits": "~2.0.1", "js-yaml": "^3.2.7", "readable-stream": "^2" } @@ -6679,6 +6667,27 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true + }, + "tap-parser": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", + "integrity": "sha1-Xi9pcGEfB5x8+FfeHceqG0gN56U=", + "dev": true, + "requires": { + "events-to-array": "^1.0.1", + "inherits": "~2.0.1", + "js-yaml": "^3.2.7", + "readable-stream": "^2" + } + }, + "xmlbuilder": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz", + "integrity": "sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU=", + "dev": true, + "requires": { + "lodash": "^4.0.0" + } } } }, @@ -6981,35 +6990,14 @@ "dev": true }, "union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } + "set-value": "^2.0.1" } }, "unique-string": { @@ -7322,23 +7310,12 @@ "requires": { "sax": ">=0.6.0", "xmlbuilder": "~9.0.1" - }, - "dependencies": { - "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" - } } }, "xmlbuilder": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz", - "integrity": "sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU=", - "dev": true, - "requires": { - "lodash": "^4.0.0" - } + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" }, "xmlcreate": { "version": "1.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index d8dd274835c..d7765b8045c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,7 +98,7 @@ "dependencies": { "@ui5/builder": "^1.3.2", "@ui5/logger": "^1.0.1", - "graceful-fs": "^4.1.15", + "graceful-fs": "^4.2.0", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", From b7b5af9cf6838a41cd08b0dacb016dedd7540fd8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 1 Jul 2019 13:24:36 +0000 Subject: [PATCH 0212/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.3.2 to 1.3.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.3.3/CHANGELOG.md --- packages/project/package-lock.json | 379 +++++++++++++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 335 insertions(+), 46 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5987b76c508..8ae46cefdc5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -385,15 +385,42 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "dev": true, "requires": { "call-me-maybe": "^1.0.1", "glob-to-regexp": "^0.3.0" } }, + "@nodelib/fs.scandir": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.1.tgz", + "integrity": "sha512-NT/skIZjgotDSiXs0WqYhgcuBKhUMgfekCmCGtkUAiLqZdOnrdjmZr9wRl3ll64J9NF79uZ4fk16Dx0yMc/Xbg==", + "requires": { + "@nodelib/fs.stat": "2.0.1", + "run-parallel": "^1.1.9" + }, + "dependencies": { + "@nodelib/fs.stat": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", + "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==" + } + } + }, "@nodelib/fs.stat": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==" + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.2.tgz", + "integrity": "sha512-J/DR3+W12uCzAJkw7niXDcqcKBg6+5G5Q/ZpThpGNzAUz70eOR6RV4XnnSN01qHZiVl0eavoxJsBypQoKsV2QQ==", + "requires": { + "@nodelib/fs.scandir": "2.1.1", + "fastq": "^1.6.0" + } }, "@sindresorhus/is": { "version": "0.14.0", @@ -472,19 +499,19 @@ "integrity": "sha512-LcsGbPomWsad6wmMNv7nBLw7YYYyfdYcz6xryKYQhx89c3XXan+8Q6AJ43G5XDIaklaVkK3mE4fCb0SBvMiPSQ==" }, "@ui5/builder": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.3.2.tgz", - "integrity": "sha512-xG8Kh2XmgP4Q238m6O2BdbnuVPu4mfbLJ4fCMhrfY6E0PTX5m7C5vdMuKHgllQ2nH3RvCpfMzvISco9INIR4JA==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.3.3.tgz", + "integrity": "sha512-YSgoKasQpndIJSsUIioVXKiaJmrrfYU486rvdS66lbNOJFzLsTygfMKV9vp7FBRIgjSqq8YZCVn2+oiNcb9jxA==", "requires": { - "@ui5/fs": "^1.1.1", + "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.1", "cheerio": "^0.22.0", "escodegen": "^1.11.1", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "^4.2.0", - "globby": "^9.2.0", - "graceful-fs": "^4.1.15", + "globby": "^10.0.0", + "graceful-fs": "^4.2.0", "jsdoc": "3.5.5", "less-openui5": "^0.6.0", "make-dir": "^3.0.0", @@ -492,13 +519,72 @@ "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^2.6.3", - "semver": "^6.1.1", + "semver": "^6.1.2", "slash": "^3.0.0", "uglify-es": "^3.2.2", "xml2js": "^0.4.17", "yazl": "^2.5.1" }, "dependencies": { + "@nodelib/fs.stat": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", + "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==" + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "requires": { + "path-type": "^4.0.0" + } + }, + "fast-glob": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.3.tgz", + "integrity": "sha512-scDJbDhN+6S4ELXzzN96Fqm5y1CMRn+Io3C4Go+n/gUKP+LW26Wma6IxLSsX2eAMBUOFmyHKDBrUSuoHsycQ5A==", + "requires": { + "@nodelib/fs.stat": "^2.0.1", + "@nodelib/fs.walk": "^1.2.1", + "glob-parent": "^5.0.0", + "is-glob": "^4.0.1", + "merge2": "^1.2.3", + "micromatch": "^4.0.2" + } + }, + "glob-parent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", + "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", + "requires": { + "is-glob": "^4.0.1" + } + }, + "globby": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.0.tgz", + "integrity": "sha512-3LifW9M4joGZasyYPz2A1U74zbC/45fvpXUvO/9KbSa+VV0aGZarWkfdgKyR9sExNP0t0x0ss/UMJpNpcaTspw==", + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" + } + }, + "ignore": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.2.tgz", + "integrity": "sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ==" + }, "jsdoc": { "version": "3.5.5", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", @@ -517,18 +603,23 @@ "taffydb": "2.6.2", "underscore": "~1.8.3" } + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" } } }, "@ui5/fs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.1.1.tgz", - "integrity": "sha512-mMNURrQTesK7yJfPmI+nTF2pBg0PcTy4KsSNfn5tnhZ2OISYGA7ZOE8GwpheVWjvzULp/GETOx+yPdWg6eeDtA==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.1.2.tgz", + "integrity": "sha512-WKoHz5IA10jr2rl2BrmJG7RtEnkpLqkQX84phBT+7onX9I+Yv72MspHZCQbHpGoaJxt6G3TavggchZ7FKroGEw==", "requires": { "@ui5/logger": "^1.0.1", "clone": "^2.1.0", - "globby": "^9.2.0", - "graceful-fs": "^4.1.15", + "globby": "^10.0.0", + "graceful-fs": "^4.2.0", "make-dir": "^3.0.0", "micromatch": "^4.0.2", "minimatch": "^3.0.3", @@ -536,6 +627,72 @@ "pretty-hrtime": "^1.0.3", "random-int": "^2.0.0", "slash": "^3.0.0" + }, + "dependencies": { + "@nodelib/fs.stat": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", + "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==" + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "requires": { + "path-type": "^4.0.0" + } + }, + "fast-glob": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.3.tgz", + "integrity": "sha512-scDJbDhN+6S4ELXzzN96Fqm5y1CMRn+Io3C4Go+n/gUKP+LW26Wma6IxLSsX2eAMBUOFmyHKDBrUSuoHsycQ5A==", + "requires": { + "@nodelib/fs.stat": "^2.0.1", + "@nodelib/fs.walk": "^1.2.1", + "glob-parent": "^5.0.0", + "is-glob": "^4.0.1", + "merge2": "^1.2.3", + "micromatch": "^4.0.2" + } + }, + "glob-parent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", + "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", + "requires": { + "is-glob": "^4.0.1" + } + }, + "globby": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.0.tgz", + "integrity": "sha512-3LifW9M4joGZasyYPz2A1U74zbC/45fvpXUvO/9KbSa+VV0aGZarWkfdgKyR9sExNP0t0x0ss/UMJpNpcaTspw==", + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" + } + }, + "ignore": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.2.tgz", + "integrity": "sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ==" + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" + } } }, "@ui5/logger": { @@ -716,17 +873,20 @@ "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true }, "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true }, "arr-union": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true }, "array-find-index": { "version": "1.0.2", @@ -744,6 +904,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, "requires": { "array-uniq": "^1.0.1" } @@ -751,12 +912,14 @@ "array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true }, "arrify": { "version": "2.0.1", @@ -780,7 +943,8 @@ "assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true }, "astral-regex": { "version": "1.0.0", @@ -1026,6 +1190,7 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, "requires": { "cache-base": "^1.0.1", "class-utils": "^0.3.5", @@ -1040,6 +1205,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -1048,6 +1214,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -1056,6 +1223,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -1064,6 +1232,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -1171,6 +1340,7 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, "requires": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", @@ -1188,6 +1358,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -1209,6 +1380,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, "requires": { "collection-visit": "^1.0.0", "component-emitter": "^1.2.1", @@ -1330,7 +1502,8 @@ "call-me-maybe": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", - "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=" + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", + "dev": true }, "call-signature": { "version": "0.0.2", @@ -1523,6 +1696,7 @@ "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, "requires": { "arr-union": "^3.1.0", "define-property": "^0.2.5", @@ -1534,6 +1708,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -1708,6 +1883,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, "requires": { "map-visit": "^1.0.0", "object-visit": "^1.0.0" @@ -1763,7 +1939,8 @@ "component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true }, "concat-map": { "version": "0.0.1", @@ -1886,7 +2063,8 @@ "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true }, "core-js": { "version": "2.6.9", @@ -2073,6 +2251,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { "ms": "2.0.0" } @@ -2168,6 +2347,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, "requires": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" @@ -2177,6 +2357,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -2185,6 +2366,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -2193,6 +2375,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -2259,6 +2442,7 @@ "version": "2.2.2", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "dev": true, "requires": { "path-type": "^3.0.0" } @@ -2748,6 +2932,7 @@ "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, "requires": { "debug": "^2.3.3", "define-property": "^0.2.5", @@ -2762,6 +2947,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -2770,6 +2956,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -2785,6 +2972,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, "requires": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -2794,6 +2982,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, "requires": { "is-plain-object": "^2.0.4" } @@ -2815,6 +3004,7 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, "requires": { "array-unique": "^0.3.2", "define-property": "^1.0.0", @@ -2830,6 +3020,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -2838,6 +3029,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -2846,6 +3038,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -2854,6 +3047,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -2862,6 +3056,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -2890,6 +3085,7 @@ "version": "2.2.7", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "dev": true, "requires": { "@mrmlnc/readdir-enhanced": "^2.2.1", "@nodelib/fs.stat": "^1.1.2", @@ -2903,6 +3099,7 @@ "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -2931,6 +3128,14 @@ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, + "fastq": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.6.0.tgz", + "integrity": "sha512-jmxqQ3Z/nXoeyDmWAzF9kH1aGZSis6e/SbfPmJpUnyZ0ogr6iscHQaml4wsEepEWSdtmpy+eVXmCRIMpxaXqOA==", + "requires": { + "reusify": "^1.0.0" + } + }, "figures": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.0.0.tgz", @@ -2959,6 +3164,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, "requires": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", @@ -2970,6 +3176,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -3033,7 +3240,8 @@ "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true }, "foreground-child": { "version": "1.5.6", @@ -3076,6 +3284,7 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, "requires": { "map-cache": "^0.2.2" } @@ -3150,7 +3359,8 @@ "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true }, "getpass": { "version": "0.1.7", @@ -3177,6 +3387,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, "requires": { "is-glob": "^3.1.0", "path-dirname": "^1.0.0" @@ -3186,6 +3397,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, "requires": { "is-extglob": "^2.1.0" } @@ -3195,7 +3407,8 @@ "glob-to-regexp": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=" + "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", + "dev": true }, "global-dirs": { "version": "0.1.1", @@ -3216,6 +3429,7 @@ "version": "9.2.0", "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", + "dev": true, "requires": { "@types/glob": "^7.1.1", "array-union": "^1.0.2", @@ -3230,7 +3444,8 @@ "slash": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true } } }, @@ -3351,6 +3566,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, "requires": { "get-value": "^2.0.6", "has-values": "^1.0.0", @@ -3361,6 +3577,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, "requires": { "is-number": "^3.0.0", "kind-of": "^4.0.0" @@ -3370,6 +3587,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -3458,7 +3676,8 @@ "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true }, "ignore-by-default": { "version": "1.0.1", @@ -3681,6 +3900,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -3689,6 +3909,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -3712,7 +3933,8 @@ "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true }, "is-ci": { "version": "2.0.0", @@ -3727,6 +3949,7 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -3735,6 +3958,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -3745,6 +3969,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, "requires": { "is-accessor-descriptor": "^0.1.6", "is-data-descriptor": "^0.1.4", @@ -3754,7 +3979,8 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true } } }, @@ -3767,7 +3993,8 @@ "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true }, "is-extglob": { "version": "2.1.1", @@ -3821,6 +4048,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -3829,6 +4057,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -3881,6 +4110,7 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, "requires": { "isobject": "^3.0.1" } @@ -3917,7 +4147,8 @@ "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true }, "is-wsl": { "version": "1.1.0", @@ -3945,7 +4176,8 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true }, "isstream": { "version": "0.1.2", @@ -4268,7 +4500,8 @@ "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true }, "klaw": { "version": "2.0.0", @@ -4537,7 +4770,8 @@ "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true }, "map-obj": { "version": "2.0.0", @@ -4549,6 +4783,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, "requires": { "object-visit": "^1.0.0" } @@ -4836,6 +5071,7 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, "requires": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" @@ -4845,6 +5081,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, "requires": { "is-plain-object": "^2.0.4" } @@ -4871,7 +5108,8 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true }, "mute-stream": { "version": "0.0.7", @@ -4883,6 +5121,7 @@ "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -5091,6 +5330,7 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, "requires": { "copy-descriptor": "^0.1.0", "define-property": "^0.2.5", @@ -5101,6 +5341,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -5109,6 +5350,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -5119,6 +5361,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, "requires": { "isobject": "^3.0.0" } @@ -5127,6 +5370,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, "requires": { "isobject": "^3.0.1" } @@ -5446,12 +5690,14 @@ "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true }, "path-exists": { "version": "3.0.0", @@ -5525,7 +5771,8 @@ "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true }, "pinkie": { "version": "2.0.4", @@ -5594,7 +5841,8 @@ "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true }, "prelude-ls": { "version": "1.1.2", @@ -5778,6 +6026,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, "requires": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" @@ -5862,12 +6111,14 @@ "repeat-element": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true }, "repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true }, "replacestream": { "version": "4.0.3", @@ -5990,7 +6241,13 @@ "ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" }, "rimraf": { "version": "2.6.3", @@ -6009,6 +6266,11 @@ "is-promise": "^2.1.0" } }, + "run-parallel": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", + "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==" + }, "rxjs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.2.tgz", @@ -6027,6 +6289,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, "requires": { "ret": "~0.1.10" } @@ -6078,6 +6341,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, "requires": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", @@ -6089,6 +6353,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -6167,6 +6432,7 @@ "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, "requires": { "base": "^0.11.1", "debug": "^2.2.0", @@ -6182,6 +6448,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -6190,6 +6457,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -6200,6 +6468,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, "requires": { "define-property": "^1.0.0", "isobject": "^3.0.0", @@ -6210,6 +6479,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -6218,6 +6488,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -6226,6 +6497,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -6234,6 +6506,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -6246,6 +6519,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, "requires": { "kind-of": "^3.2.0" }, @@ -6254,6 +6528,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -6263,7 +6538,8 @@ "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true }, "source-map-resolve": { "version": "0.5.2", @@ -6346,6 +6622,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, "requires": { "extend-shallow": "^3.0.0" } @@ -6381,6 +6658,7 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, "requires": { "define-property": "^0.2.5", "object-copy": "^0.1.0" @@ -6390,6 +6668,7 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -6796,6 +7075,7 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -6804,6 +7084,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -6820,6 +7101,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, "requires": { "define-property": "^2.0.2", "extend-shallow": "^3.0.2", @@ -6831,6 +7113,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, "requires": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" @@ -6993,6 +7276,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", @@ -7024,6 +7308,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, "requires": { "has-value": "^0.3.1", "isobject": "^3.0.0" @@ -7033,6 +7318,7 @@ "version": "0.3.1", "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, "requires": { "get-value": "^2.0.3", "has-values": "^0.1.4", @@ -7043,6 +7329,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, "requires": { "isarray": "1.0.0" } @@ -7052,7 +7339,8 @@ "has-values": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true } } }, @@ -7101,7 +7389,8 @@ "use": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true }, "util-deprecate": { "version": "1.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index d7765b8045c..3c677776659 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.3.2", + "@ui5/builder": "^1.3.3", "@ui5/logger": "^1.0.1", "graceful-fs": "^4.2.0", "js-yaml": "^3.13.1", From a86f507c31108a50e19c28ebc6bb66c4616e6372 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 3 Jul 2019 16:57:16 +0200 Subject: [PATCH 0213/1272] [ui5-project][INTERNAL] .editorconfig: Fix yaml config --- packages/project/.editorconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.editorconfig b/packages/project/.editorconfig index 8d305734be3..6ba9c727be5 100644 --- a/packages/project/.editorconfig +++ b/packages/project/.editorconfig @@ -12,7 +12,7 @@ end_of_line = lf indent_size = 4 insert_final_newline = true -[*.yml}] +[*.{yml,yaml}] indent_style = space indent_size = 2 From f1ca247ae75fdcf49c1a6cd67581d19fcaa968f3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 7 Jul 2019 04:25:19 +0000 Subject: [PATCH 0214/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 1222 ++++++++++++++-------------- 1 file changed, 591 insertions(+), 631 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8ae46cefdc5..dc6851db098 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,18 +42,18 @@ } }, "@babel/core": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.4.5.tgz", - "integrity": "sha512-OvjIh6aqXtlsA8ujtGKfC7LYWksYSX8yQcM8Ay3LuvVeQ63lcOKgoZWVqcpFwkd29aYU9rVx7jxhfhiEDV9MZA==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.5.0.tgz", + "integrity": "sha512-6Isr4X98pwXqHvtigw71CKgmhL1etZjPs5A67jL/w0TkLM9eqmFR40YrnJvEc1WnMZFsskjsmid8bHZyxKEAnw==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.4.4", - "@babel/helpers": "^7.4.4", - "@babel/parser": "^7.4.5", + "@babel/generator": "^7.5.0", + "@babel/helpers": "^7.5.0", + "@babel/parser": "^7.5.0", "@babel/template": "^7.4.4", - "@babel/traverse": "^7.4.5", - "@babel/types": "^7.4.4", + "@babel/traverse": "^7.5.0", + "@babel/types": "^7.5.0", "convert-source-map": "^1.1.0", "debug": "^4.1.0", "json5": "^2.1.0", @@ -63,40 +63,39 @@ "source-map": "^0.5.0" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true } } }, "@babel/generator": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.4.tgz", - "integrity": "sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.5.0.tgz", + "integrity": "sha512-1TTVrt7J9rcG5PMjvO7VEG3FrEoEJNHxumRq66GemPmzboLWtIjjcJgk8rokuAS7IiRSpgVSu5Vb9lc99iJkOA==", "dev": true, "requires": { - "@babel/types": "^7.4.4", + "@babel/types": "^7.5.0", "jsesc": "^2.5.1", "lodash": "^4.17.11", "source-map": "^0.5.0", "trim-right": "^1.0.1" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } } }, "@babel/helper-annotate-as-pure": { @@ -211,20 +210,20 @@ } }, "@babel/helpers": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.4.4.tgz", - "integrity": "sha512-igczbR/0SeuPR8RFfC7tGrbdTbFL3QTvH6D+Z6zNxnTe//GyqmtHmDkzrqDmyZ3eSwPqB/LhyKoU5DXsp+Vp2A==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.5.1.tgz", + "integrity": "sha512-rVOTDv8sH8kNI72Unenusxw6u+1vEepZgLxeV+jHkhsQlYhzVhzL1EpfoWT7Ub3zpWSv2WV03V853dqsnyoQzA==", "dev": true, "requires": { "@babel/template": "^7.4.4", - "@babel/traverse": "^7.4.4", - "@babel/types": "^7.4.4" + "@babel/traverse": "^7.5.0", + "@babel/types": "^7.5.0" } }, "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz", + "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==", "dev": true, "requires": { "chalk": "^2.0.0", @@ -233,9 +232,9 @@ } }, "@babel/parser": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.5.tgz", - "integrity": "sha512-9mUqkL1FF5T7f0WDFfAoDdiMVPWsdD1gZYzSnaXsxUCUqzuch/8of9G3VUSNiZmMBoRxT3neyVsqeiL/ZPcjew==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.5.0.tgz", + "integrity": "sha512-I5nW8AhGpOXGCCNYGc+p7ExQIBxRFnS2fd/d862bNOKvmoEPjYPcfIjsfdy0ujagYOIYPczKgD9l3FsgTkAzKA==", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { @@ -298,14 +297,15 @@ } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.4.4.tgz", - "integrity": "sha512-4sfBOJt58sEo9a2BQXnZq+Q3ZTSAUXyK3E30o36BOGnJ+tvJ6YSxF0PG6kERvbeISgProodWuI9UVG3/FMY6iw==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.5.0.tgz", + "integrity": "sha512-xmHq0B+ytyrWJvQTc5OWAC4ii6Dhr0s22STOoydokG51JjWhyYo5mRPXoi+ZmtHQhZZwuXNN+GG5jy5UZZJxIQ==", "dev": true, "requires": { "@babel/helper-module-transforms": "^7.4.4", "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0" + "@babel/helper-simple-access": "^7.1.0", + "babel-plugin-dynamic-import-node": "^2.3.0" } }, "@babel/template": { @@ -320,43 +320,26 @@ } }, "@babel/traverse": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.5.tgz", - "integrity": "sha512-Vc+qjynwkjRmIFGxy0KYoPj4FdVDxLej89kMHFsWScq999uX+pwcX4v9mWRjW0KcAYTPAuVQl2LKP1wEVLsp+A==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.5.0.tgz", + "integrity": "sha512-SnA9aLbyOCcnnbQEGwdfBggnc142h/rbqqsXcaATj2hZcegCl903pUD/lfpsNBlBSuWow/YDfRyJuWi2EPR5cg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.4.4", + "@babel/generator": "^7.5.0", "@babel/helper-function-name": "^7.1.0", "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.4.5", - "@babel/types": "^7.4.4", + "@babel/parser": "^7.5.0", + "@babel/types": "^7.5.0", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.11" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "@babel/types": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.4.4.tgz", - "integrity": "sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.5.0.tgz", + "integrity": "sha512-UFpDVqRABKsW01bvw7/wSUe56uy6RXM5+VJibVVAybDGxEW25jdwiFJEf7ASvSaC7sN7rbE/l3cLp2izav+CtQ==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -398,20 +381,12 @@ "requires": { "@nodelib/fs.stat": "2.0.1", "run-parallel": "^1.1.9" - }, - "dependencies": { - "@nodelib/fs.stat": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", - "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==" - } } }, "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", - "dev": true + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", + "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==" }, "@nodelib/fs.walk": { "version": "1.2.2", @@ -494,9 +469,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.0.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.10.tgz", - "integrity": "sha512-LcsGbPomWsad6wmMNv7nBLw7YYYyfdYcz6xryKYQhx89c3XXan+8Q6AJ43G5XDIaklaVkK3mE4fCb0SBvMiPSQ==" + "version": "12.0.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.12.tgz", + "integrity": "sha512-Uy0PN4R5vgBUXFoJrKryf5aTk3kJ8Rv3PdlHjl6UaX+Cqp1QE0yPQ68MPXGrZOfG7gZVNDIJZYyot0B9ubXUrQ==" }, "@ui5/builder": { "version": "1.3.3", @@ -526,65 +501,6 @@ "yazl": "^2.5.1" }, "dependencies": { - "@nodelib/fs.stat": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", - "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==" - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "requires": { - "path-type": "^4.0.0" - } - }, - "fast-glob": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.3.tgz", - "integrity": "sha512-scDJbDhN+6S4ELXzzN96Fqm5y1CMRn+Io3C4Go+n/gUKP+LW26Wma6IxLSsX2eAMBUOFmyHKDBrUSuoHsycQ5A==", - "requires": { - "@nodelib/fs.stat": "^2.0.1", - "@nodelib/fs.walk": "^1.2.1", - "glob-parent": "^5.0.0", - "is-glob": "^4.0.1", - "merge2": "^1.2.3", - "micromatch": "^4.0.2" - } - }, - "glob-parent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", - "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", - "requires": { - "is-glob": "^4.0.1" - } - }, - "globby": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.0.tgz", - "integrity": "sha512-3LifW9M4joGZasyYPz2A1U74zbC/45fvpXUvO/9KbSa+VV0aGZarWkfdgKyR9sExNP0t0x0ss/UMJpNpcaTspw==", - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", - "slash": "^3.0.0" - } - }, - "ignore": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.2.tgz", - "integrity": "sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ==" - }, "jsdoc": { "version": "3.5.5", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", @@ -603,11 +519,6 @@ "taffydb": "2.6.2", "underscore": "~1.8.3" } - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" } } }, @@ -627,72 +538,6 @@ "pretty-hrtime": "^1.0.3", "random-int": "^2.0.0", "slash": "^3.0.0" - }, - "dependencies": { - "@nodelib/fs.stat": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", - "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==" - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "requires": { - "path-type": "^4.0.0" - } - }, - "fast-glob": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.3.tgz", - "integrity": "sha512-scDJbDhN+6S4ELXzzN96Fqm5y1CMRn+Io3C4Go+n/gUKP+LW26Wma6IxLSsX2eAMBUOFmyHKDBrUSuoHsycQ5A==", - "requires": { - "@nodelib/fs.stat": "^2.0.1", - "@nodelib/fs.walk": "^1.2.1", - "glob-parent": "^5.0.0", - "is-glob": "^4.0.1", - "merge2": "^1.2.3", - "micromatch": "^4.0.2" - } - }, - "glob-parent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", - "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", - "requires": { - "is-glob": "^4.0.1" - } - }, - "globby": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.0.tgz", - "integrity": "sha512-3LifW9M4joGZasyYPz2A1U74zbC/45fvpXUvO/9KbSa+VV0aGZarWkfdgKyR9sExNP0t0x0ss/UMJpNpcaTspw==", - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", - "slash": "^3.0.0" - } - }, - "ignore": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.2.tgz", - "integrity": "sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ==" - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" - } } }, "@ui5/logger": { @@ -704,9 +549,9 @@ } }, "acorn": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", - "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.0.tgz", + "integrity": "sha512-8oe72N3WPMjA+2zVG71Ia0nXZ8DpQH+QyyHO+p06jT8eg8FGG3FbcUIi8KziHlAfheJQZeoqbvq1mQSQHXKYLw==", "dev": true }, "acorn-jsx": { @@ -716,9 +561,9 @@ "dev": true }, "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.1.tgz", + "integrity": "sha512-w1YQaVGNC6t2UCPjEawK/vo/dG8OOrVtUmhBT1uJJYxbl5kU2Tj3v6LGqBcsysN1yhuCStJCCA3GqdvKY8sqXQ==", "requires": { "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", @@ -816,9 +661,9 @@ } }, "anymatch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.0.2.tgz", - "integrity": "sha512-rUe9SxpRQlVg4EM8It7JMNWWYHAirTPpbTuvaSKybb5IejNgWB3PGBBX9rrPKDx2pM/p3Wh+7+ASaWRyyAbxmQ==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.0.3.tgz", + "integrity": "sha512-c6IvoeBECQlMVuYUjSwimnhmztImpErfxJzWZhIQinIvQWoGOnB0dLIgifbPHQt5heS6mNlaZG16f06H3C8t1g==", "dev": true, "requires": { "normalize-path": "^3.0.0", @@ -901,18 +746,14 @@ "dev": true }, "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" }, "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-2.1.0.tgz", + "integrity": "sha512-bdHxtev7FN6+MXI1YFW0Q8mQ8dTJc2S8AMfju+ZR77pbg2yAdVyDlwkaUI7Har0LyOMRFPHrJ9lYdyjZZswdlQ==", "dev": true }, "array-unique": { @@ -952,12 +793,6 @@ "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", "dev": true }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true - }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -1052,31 +887,54 @@ "write-file-atomic": "^3.0.0" }, "dependencies": { + "@nodelib/fs.stat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "dev": true + }, "ansi-regex": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "array-uniq": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-2.1.0.tgz", - "integrity": "sha512-bdHxtev7FN6+MXI1YFW0Q8mQ8dTJc2S8AMfju+ZR77pbg2yAdVyDlwkaUI7Har0LyOMRFPHrJ9lYdyjZZswdlQ==", - "dev": true + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dir-glob": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", + "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", "dev": true, "requires": { - "ms": "^2.1.1" + "path-type": "^3.0.0" } }, "escape-string-regexp": { @@ -1085,6 +943,66 @@ "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true }, + "fast-glob": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "dev": true, + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + }, + "dependencies": { + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -1095,21 +1013,92 @@ "path-exists": "^4.0.0" } }, - "is-plain-object": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz", - "integrity": "sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg==", + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, "requires": { - "isobject": "^4.0.0" + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } } }, - "isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", + "globby": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", + "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^1.0.2", + "dir-glob": "^2.2.2", + "fast-glob": "^2.2.6", + "glob": "^7.1.3", + "ignore": "^4.0.3", + "pify": "^4.0.1", + "slash": "^2.0.0" + }, + "dependencies": { + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true + } + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -1119,12 +1108,6 @@ "p-locate": "^4.1.0" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "p-locate": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", @@ -1140,6 +1123,29 @@ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -1148,6 +1154,16 @@ "requires": { "ansi-regex": "^4.1.0" } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } } } }, @@ -1161,6 +1177,15 @@ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", + "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, "babel-plugin-espower": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-3.0.1.tgz", @@ -1337,32 +1362,11 @@ } }, "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "fill-range": "^7.0.1" } }, "buffer-crc32": { @@ -1468,6 +1472,12 @@ "release-zalgo": "^1.0.0" } }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, "semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", @@ -1608,69 +1618,26 @@ } }, "chokidar": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.0.1.tgz", - "integrity": "sha512-2ww34sJWehnbpV0Q4k4V5Hh7juo7po6z7LUWkcIQnSGN1lHOL8GGtLtfwabKvLFQw/hbSUQ0u6V7OgGYgBzlkQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.0.2.tgz", + "integrity": "sha512-c4PR2egjNjI1um6bamCQ6bUNPDiyofNQruHvKgHQ4gDUP/ITSVSzNsiI5OWtHOsX323i5ha/kk4YmOZ1Ktg7KA==", "dev": true, "requires": { "anymatch": "^3.0.1", - "async-each": "^1.0.3", "braces": "^3.0.2", "fsevents": "^2.0.6", "glob-parent": "^5.0.0", "is-binary-path": "^2.1.0", "is-glob": "^4.0.1", "normalize-path": "^3.0.0", - "readdirp": "^3.0.2" + "readdirp": "^3.1.1" }, "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "glob-parent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", - "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } } } }, @@ -2021,12 +1988,6 @@ "pify": "^3.0.0" } }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - }, "write-file-atomic": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", @@ -2122,6 +2083,12 @@ "semver": "^5.6.0" } }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, "semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", @@ -2187,13 +2154,6 @@ "source-map": "^0.6.1", "source-map-resolve": "^0.5.2", "urix": "^0.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } } }, "css-select": { @@ -2248,12 +2208,12 @@ } }, "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, "decamelize": { @@ -2343,6 +2303,15 @@ "integrity": "sha512-k09hcQcTDY+cwgiwa6PYKLm3jlagNzQ+RSvhjzESOGOx+MNOuXkxTfEvPrO1IOQ81tArCFYQgi631clB70RpQw==", "dev": true }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", @@ -2399,6 +2368,21 @@ "rimraf": "^2.6.3" }, "dependencies": { + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, "globby": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", @@ -2419,6 +2403,12 @@ "dev": true } } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true } } }, @@ -2439,12 +2429,11 @@ "dev": true }, "dir-glob": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", - "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", - "dev": true, + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "requires": { - "path-type": "^3.0.0" + "path-type": "^4.0.0" } }, "docdash": { @@ -2674,12 +2663,6 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "optional": true } } }, @@ -2757,19 +2740,10 @@ "which": "^1.2.9" } }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, "semver": { @@ -2844,6 +2818,14 @@ "path-is-absolute": "^1.0.0", "source-map": "^0.5.0", "xtend": "^4.0.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } } }, "espree": { @@ -2943,6 +2925,15 @@ "to-regex": "^3.0.1" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", @@ -2960,6 +2951,12 @@ "requires": { "is-extendable": "^0.1.0" } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true } } }, @@ -2986,6 +2983,15 @@ "requires": { "is-plain-object": "^2.0.4" } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } } } }, @@ -3082,40 +3088,16 @@ "dev": true }, "fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", - "dev": true, + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.4.tgz", + "integrity": "sha512-wkIbV6qg37xTJwqSsdnIphL1e+LaGz4AIQqr00mIubMaEhv1/HEmJ0uuCGZRNRUkZZmOB5mJKO0ZUTVq+SxMQg==", "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", + "@nodelib/fs.stat": "^2.0.1", + "@nodelib/fs.walk": "^1.2.1", + "glob-parent": "^5.0.0", + "is-glob": "^4.0.1", "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "dependencies": { - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - } + "micromatch": "^4.0.2" } }, "fast-json-stable-stringify": { @@ -3161,26 +3143,11 @@ "dev": true }, "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "to-regex-range": "^5.0.1" } }, "find-cache-dir": { @@ -3204,6 +3171,12 @@ "semver": "^5.6.0" } }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, "semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", @@ -3301,6 +3274,12 @@ "dev": true, "optional": true }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, "functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", @@ -3384,24 +3363,11 @@ } }, "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", + "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } + "is-glob": "^4.0.1" } }, "glob-to-regexp": { @@ -3426,27 +3392,18 @@ "dev": true }, "globby": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", - "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", - "dev": true, + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.1.tgz", + "integrity": "sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A==", "requires": { "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" - }, - "dependencies": { - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - } + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" } }, "got": { @@ -3509,12 +3466,6 @@ "dev": true, "optional": true }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, "uglify-js": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz", @@ -3557,6 +3508,12 @@ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -3583,6 +3540,26 @@ "kind-of": "^4.0.0" }, "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, "kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", @@ -3674,10 +3651,9 @@ } }, "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.2.tgz", + "integrity": "sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ==" }, "ignore-by-default": { "version": "1.0.1", @@ -3686,9 +3662,9 @@ "dev": true }, "import-fresh": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.0.0.tgz", - "integrity": "sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.1.0.tgz", + "integrity": "sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ==", "dev": true, "requires": { "parent-module": "^1.0.0", @@ -4045,24 +4021,9 @@ "dev": true }, "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" }, "is-obj": { "version": "2.0.0", @@ -4077,9 +4038,9 @@ "dev": true }, "is-path-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.1.0.tgz", - "integrity": "sha512-Sc5j3/YnM8tDeyCsVeKlm/0p95075DyLmDEIkSgQ7mXkrOX+uTCtmQFm0CYzVyJwcCCmO3k8qfJt17SxQwB5Zw==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", "dev": true }, "is-path-in-cwd": { @@ -4107,12 +4068,20 @@ "dev": true }, "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz", + "integrity": "sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg==", "dev": true, "requires": { - "isobject": "^3.0.1" + "isobject": "^4.0.0" + }, + "dependencies": { + "isobject": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", + "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", + "dev": true + } } }, "is-promise": { @@ -4235,6 +4204,12 @@ "semver": "^5.6.0" } }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, "semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", @@ -4256,15 +4231,6 @@ "source-map": "^0.6.1" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, "make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", @@ -4275,10 +4241,10 @@ "semver": "^5.6.0" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, "semver": { @@ -4286,12 +4252,6 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true } } }, @@ -4602,13 +4562,6 @@ "parse-json": "^4.0.0", "pify": "^3.0.0", "strip-bom": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } } }, "locate-path": { @@ -4950,14 +4903,6 @@ "dev": true, "requires": { "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } } }, "merge2": { @@ -4972,37 +4917,6 @@ "requires": { "braces": "^3.0.1", "picomatch": "^2.0.5" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "requires": { - "is-number": "^7.0.0" - } - } } }, "mime": { @@ -5085,6 +4999,15 @@ "requires": { "is-plain-object": "^2.0.4" } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } } } }, @@ -5106,9 +5029,9 @@ } }, "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, "mute-stream": { @@ -5292,6 +5215,12 @@ "semver": "^5.6.0" } }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, "resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", @@ -5357,6 +5286,12 @@ } } }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", @@ -5366,6 +5301,18 @@ "isobject": "^3.0.0" } }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", @@ -5744,19 +5691,9 @@ } }, "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "performance-now": { "version": "2.1.0", @@ -5769,10 +5706,9 @@ "integrity": "sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==" }, "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" }, "pinkie": { "version": "2.0.4", @@ -5812,6 +5748,12 @@ "type-fest": "^0.3.0" } }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, "type-fest": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", @@ -5892,9 +5834,9 @@ "dev": true }, "psl": { - "version": "1.1.33", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.33.tgz", - "integrity": "sha512-LTDP2uSrsc7XCb5lO7A8BI1qYxRe/8EqlRvMeEl6rsnYAqDOl8xHR+8lSAIVfrNaSAlTPTNOCgNjWcoUL3AZsw==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.2.0.tgz", + "integrity": "sha512-GEn74ZffufCmkDDLNcl3uuyF/aSD6exEyh1v/ZSdAomB82t6G9hzJVRx0jBmLDW+VfZqks3aScmMw9DszwUalA==" }, "pump": { "version": "3.0.0", @@ -5955,6 +5897,16 @@ "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", "path-type": "^3.0.0" + }, + "dependencies": { + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + } + } } }, "read-pkg-up": { @@ -5981,9 +5933,9 @@ } }, "readdirp": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.0.2.tgz", - "integrity": "sha512-LbyJYv48eywrhOlScq16H/VkCiGKGPC2TpOdZCJ7QXnYEjn3NN/Oblh8QEU3vqfSRBB7OGvh5x45NKiVeNujIQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.1.1.tgz", + "integrity": "sha512-XXdSXZrQuvqoETj50+JAitxz1UPdt5dupjT6T5nVB+WvjMv2XKYj+s7hPeAVCXvmJrL36O4YYyWlIC3an2ePiQ==", "dev": true, "requires": { "picomatch": "^2.0.4" @@ -6305,9 +6257,9 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "semver": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.2.tgz", - "integrity": "sha512-z4PqiCpomGtWj8633oeAdXm1Kn1W++3T8epkZYnwiVgIYIJ0QHszhInYSJTYxebByQH7KVCEAn8R9duzZW2PhQ==" + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.2.0.tgz", + "integrity": "sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A==" }, "semver-diff": { "version": "2.1.0", @@ -6357,6 +6309,15 @@ "requires": { "is-extendable": "^0.1.0" } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } } } }, @@ -6444,6 +6405,15 @@ "use": "^3.1.0" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", @@ -6461,6 +6431,18 @@ "requires": { "is-extendable": "^0.1.0" } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true } } }, @@ -6536,10 +6518,9 @@ } }, "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "source-map-resolve": { "version": "0.5.2", @@ -6561,14 +6542,6 @@ "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } } }, "source-map-url": { @@ -6998,12 +6971,6 @@ "requires": { "pify": "^3.0.0" } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true } } }, @@ -7110,13 +7077,11 @@ } }, "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "is-number": "^7.0.0" } }, "tough-cookie": { @@ -7225,11 +7190,6 @@ "version": "2.13.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, @@ -7345,9 +7305,9 @@ } }, "update-notifier": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-3.0.0.tgz", - "integrity": "sha512-6Xe3oF2bvuoj4YECUc52yxVs94yWrxwqHbzyveDktTS1WhnlTRpNcQMxUshcB7nRVGi1jEXiqL5cW1S5WSyzKg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-3.0.1.tgz", + "integrity": "sha512-grrmrB6Zb8DUiyDIaeRTBCkgISYUgETNe7NglEbVsrLWXeESnlCSP50WfRSj/GmzMPl6Uchj24S/p80nP/ZQrQ==", "dev": true, "requires": { "boxen": "^3.0.0", From 9d61e5a7b7e9509f03c0b478c7861912df4ae0a4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 11 Jul 2019 02:30:27 +0000 Subject: [PATCH 0215/1272] [ui5-project][Security] Bump lodash from 4.17.11 to 4.17.14 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.11 to 4.17.14. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.11...4.17.14) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index dc6851db098..dd13065006b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -4574,9 +4574,9 @@ } }, "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" + "version": "4.17.14", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", + "integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==" }, "lodash.assignin": { "version": "4.2.0", From 2c98eb2afd65be8ef13becd07013847bf545803c Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 10 Jul 2019 22:06:43 +0000 Subject: [PATCH 0216/1272] [ui5-project][Security] Bump lodash.merge from 4.6.1 to 4.6.2 Bumps [lodash.merge](https://github.com/lodash/lodash) from 4.6.1 to 4.6.2. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/commits) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index dd13065006b..bbbb0d589bf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -4632,9 +4632,9 @@ "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" }, "lodash.merge": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz", - "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==" + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" }, "lodash.pick": { "version": "4.4.0", From 90b3a2506ac80bb6d5083a44653ed29c51351565 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 25 Jun 2019 15:11:44 +0200 Subject: [PATCH 0217/1272] [ui5-project][FEATURE] projectPreprocessor: Add handling for server-middleware extensions As per RFC 0005: https://github.com/SAP/ui5-tooling/pull/151 --- packages/project/lib/projectPreprocessor.js | 16 + packages/project/package-lock.json | 2311 +++++++---------- packages/project/package.json | 1 + .../fixtures/application.a/middleware.a.js | 1 + packages/project/test/lib/extensions.js | 65 + 5 files changed, 1080 insertions(+), 1314 deletions(-) create mode 100644 packages/project/test/fixtures/application.a/middleware.a.js diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 7116badce70..09b34220ef6 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -348,6 +348,9 @@ class ProjectPreprocessor { case "task": this.handleTask(extension); break; + case "server-middleware": + this.handleServerMiddleware(extension); + break; default: throw new Error(`Unknown extension type '${extension.type}' for ${extension.id}`); } @@ -495,6 +498,19 @@ class ProjectPreprocessor { taskRepository.addTask(extension.metadata.name, task); } + + handleServerMiddleware(extension) { + if (!extension.metadata && !extension.metadata.name) { + throw new Error(`Middleware extension ${extension.id} is missing 'metadata.name' configuration`); + } + if (!extension.middleware) { + throw new Error(`Middleware extension ${extension.id} is missing 'middleware' configuration`); + } + const {middlewareRepository} = require("@ui5/server"); + + const middlewarePath = path.join(extension.path, extension.middleware.path); + middlewareRepository.addMiddleware(extension.metadata.name, middlewarePath); + } } /** diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bbbb0d589bf..cfcbf538f07 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,14 +42,14 @@ } }, "@babel/core": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.5.0.tgz", - "integrity": "sha512-6Isr4X98pwXqHvtigw71CKgmhL1etZjPs5A67jL/w0TkLM9eqmFR40YrnJvEc1WnMZFsskjsmid8bHZyxKEAnw==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.5.4.tgz", + "integrity": "sha512-+DaeBEpYq6b2+ZmHx3tHspC+ZRflrvLqwfv8E3hNr5LVQoyBnL8RPKSBCg+rK2W2My9PWlujBiqd0ZPsR9Q6zQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", "@babel/generator": "^7.5.0", - "@babel/helpers": "^7.5.0", + "@babel/helpers": "^7.5.4", "@babel/parser": "^7.5.0", "@babel/template": "^7.4.4", "@babel/traverse": "^7.5.0", @@ -63,6 +63,21 @@ "source-map": "^0.5.0" }, "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, "semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", @@ -210,9 +225,9 @@ } }, "@babel/helpers": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.5.1.tgz", - "integrity": "sha512-rVOTDv8sH8kNI72Unenusxw6u+1vEepZgLxeV+jHkhsQlYhzVhzL1EpfoWT7Ub3zpWSv2WV03V853dqsnyoQzA==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.5.4.tgz", + "integrity": "sha512-6LJ6xwUEJP51w0sIgKyfvFMJvIb9mWAfohJp0+m6eHJigkFdcH8duZ1sfhn0ltJRzwUIT/yqqhdSfRpCpL7oow==", "dev": true, "requires": { "@babel/template": "^7.4.4", @@ -334,6 +349,23 @@ "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.11" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } } }, "@babel/types": { @@ -364,16 +396,6 @@ } } }, - "@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", - "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", - "dev": true, - "requires": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - } - }, "@nodelib/fs.scandir": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.1.tgz", @@ -469,9 +491,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.0.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.12.tgz", - "integrity": "sha512-Uy0PN4R5vgBUXFoJrKryf5aTk3kJ8Rv3PdlHjl6UaX+Cqp1QE0yPQ68MPXGrZOfG7gZVNDIJZYyot0B9ubXUrQ==" + "version": "12.6.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.6.2.tgz", + "integrity": "sha512-gojym4tX0FWeV2gsW4Xmzo5wxGjXGm550oVUII7f7G5o4BV6c7DBdiG1RRQd+y1bvqRyYtPfMK85UM95vsapqQ==" }, "@ui5/builder": { "version": "1.3.3", @@ -548,6 +570,40 @@ "npmlog": "^4.1.2" } }, + "@ui5/server": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.2.0.tgz", + "integrity": "sha512-enMatnsimYXwoHPsr99NssCVcie+VNU91Y2trQR9VHoqgZu13kZWDFwl3JttHoHmMZaBedpnU1h58GvLVXj8aQ==", + "requires": { + "@ui5/builder": "^1.3.3", + "@ui5/fs": "^1.1.2", + "@ui5/logger": "^1.0.1", + "compression": "^1.7.4", + "connect-openui5": "^0.7.7", + "cors": "^2.8.5", + "devcert-sanscache": "^0.4.5", + "etag": "^1.8.1", + "express": "^4.17.1", + "fresh": "^0.5.2", + "make-dir": "^3.0.0", + "mime-types": "^2.1.24", + "parseurl": "^1.3.3", + "portscanner": "^2.1.1", + "prompt": "^1.0.0", + "replacestream": "^4.0.3", + "spdy": "^3.4.7", + "treeify": "^1.0.1" + } + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, "acorn": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.0.tgz", @@ -592,6 +648,12 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -715,30 +777,23 @@ "sprintf-js": "~1.0.2" } }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", "dev": true }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", "dev": true }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, "array-from": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", @@ -756,12 +811,6 @@ "integrity": "sha512-bdHxtev7FN6+MXI1YFW0Q8mQ8dTJc2S8AMfju+ZR77pbg2yAdVyDlwkaUI7Har0LyOMRFPHrJ9lYdyjZZswdlQ==", "dev": true }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, "arrify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", @@ -781,18 +830,20 @@ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, "astral-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", "dev": true }, + "async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", + "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", + "requires": { + "lodash": "^4.17.11" + } + }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -804,20 +855,20 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-2.1.0.tgz", - "integrity": "sha512-IaS+l1KfYtFpJlDZXrNG0M6SGr/DUvwJmTiaTaW2lMdEezCAJc5J/hNAQWIKigkmxIOURYT29atD/qyp+zq+wg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-2.2.0.tgz", + "integrity": "sha512-lROj3eQ8L4ZjfiN5P8UGekEQLfKmseGMtat6pUOHgJLEb2K1kT0ZpR/IlWwuytjvwO6nZpzpD+QsTW/XiayIgg==", "dev": true, "requires": { "@ava/babel-preset-stage-4": "^3.0.0", "@ava/babel-preset-transform-test-files": "^5.0.0", - "@babel/core": "^7.4.5", - "@babel/generator": "^7.4.4", + "@babel/core": "^7.5.0", + "@babel/generator": "^7.5.0", "@babel/plugin-syntax-async-generators": "^7.2.0", "@babel/plugin-syntax-object-rest-spread": "^7.2.0", "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", "@concordance/react": "^2.0.0", - "ansi-escapes": "^4.1.0", + "ansi-escapes": "^4.2.0", "ansi-styles": "^4.0.0", "arr-flatten": "^1.1.0", "array-union": "^2.1.0", @@ -825,13 +876,13 @@ "arrify": "^2.0.1", "bluebird": "^3.5.5", "chalk": "^2.4.2", - "chokidar": "^3.0.1", + "chokidar": "^3.0.2", "chunkd": "^1.0.0", "ci-parallel-vars": "^1.0.0", "clean-stack": "^2.1.0", "clean-yaml-object": "^0.1.0", - "cli-cursor": "^3.0.0", - "cli-truncate": "^1.1.0", + "cli-cursor": "^3.1.0", + "cli-truncate": "^2.0.0", "code-excerpt": "^2.1.1", "common-path-prefix": "^1.0.0", "concordance": "^4.0.0", @@ -839,18 +890,18 @@ "currently-unhandled": "^0.4.1", "debug": "^4.1.1", "del": "^4.1.1", - "dot-prop": "^5.0.1", + "dot-prop": "^5.1.0", "emittery": "^0.4.1", "empower-core": "^1.2.0", "equal-length": "^1.0.0", "escape-string-regexp": "^2.0.0", "esm": "^3.2.25", "figures": "^3.0.0", - "find-up": "^4.0.0", + "find-up": "^4.1.0", "get-port": "^5.0.0", - "globby": "^9.2.0", + "globby": "^10.0.1", "ignore-by-default": "^1.0.0", - "import-local": "^2.0.0", + "import-local": "^3.0.1", "indent-string": "^4.0.0", "is-ci": "^2.0.0", "is-error": "^2.2.2", @@ -879,62 +930,27 @@ "strip-ansi": "^5.2.0", "strip-bom-buf": "^2.0.0", "supertap": "^1.0.0", - "supports-color": "^6.1.0", + "supports-color": "^7.0.0", "trim-off-newlines": "^1.0.1", "trim-right": "^1.0.1", "unique-temp-dir": "^1.0.0", - "update-notifier": "^3.0.0", + "update-notifier": "^3.0.1", "write-file-atomic": "^3.0.0" }, "dependencies": { - "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", - "dev": true - }, "ansi-regex": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "dir-glob": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", - "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { - "path-type": "^3.0.0" + "ms": "^2.1.1" } }, "escape-string-regexp": { @@ -943,66 +959,6 @@ "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true }, - "fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", - "dev": true, - "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "dependencies": { - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -1013,90 +969,13 @@ "path-exists": "^4.0.0" } }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "globby": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", - "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", - "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" - }, - "dependencies": { - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - } - } - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "get-port": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.0.0.tgz", + "integrity": "sha512-imzMU0FjsZqNa6BqOjbbW6w5BivHIuQKopjpPqcnx0AVHJQKCxK1O+Ab3OrVXhrekqfVMjwA9ZYu062R+KcIsQ==", "dev": true, "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "type-fest": "^0.3.0" } }, "locate-path": { @@ -1108,6 +987,12 @@ "p-locate": "^4.1.0" } }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, "p-locate": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", @@ -1123,29 +1008,6 @@ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -1155,15 +1017,11 @@ "ansi-regex": "^4.1.0" } }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true } } }, @@ -1211,61 +1069,6 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", @@ -1285,6 +1088,35 @@ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==" }, + "body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "requires": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + }, + "dependencies": { + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + } + } + }, "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", @@ -1318,6 +1150,12 @@ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -1380,22 +1218,10 @@ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "dev": true }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" }, "cacheable-request": { "version": "6.1.0", @@ -1507,14 +1333,16 @@ "deep-equal": "^1.0.0", "espurify": "^1.6.0", "estraverse": "^4.0.0" + }, + "dependencies": { + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + } } }, - "call-me-maybe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", - "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", - "dev": true - }, "call-signature": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", @@ -1659,29 +1487,6 @@ "integrity": "sha512-u6dx20FBXm+apMi+5x7UVm6EH7BL1gc4XrcnQewjcB7HWRcor/V5qWc3RG2HwpgDJ26gIi2DSEu3B7sXynAw/g==", "dev": true }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, "clean-css": { "version": "2.0.8", "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", @@ -1725,44 +1530,45 @@ "dev": true }, "cli-truncate": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", - "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.0.0.tgz", + "integrity": "sha512-C4hp+8GCIFVsUUiXcw+ce+7wexVWImw8rQrgMBFsqerx9LvvcGlwm6sMjQYAEmV/Xb87xc1b5Ttx505MSpZVqg==", "dev": true, "requires": { - "slice-ansi": "^1.0.0", - "string-width": "^2.0.0" + "slice-ansi": "^2.1.0", + "string-width": "^4.1.0" }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.1.0.tgz", + "integrity": "sha512-NrX+1dVVh+6Y9dnQ19pR0pP4FiEIlUvdTGn8pw6CKTNq5sgib2nIhmUNT5TAmhWmvKr3WcxBcP3E8nWezuipuQ==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^5.2.0" } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^4.1.0" } } } @@ -1790,6 +1596,12 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -1846,16 +1658,6 @@ "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", @@ -1871,6 +1673,11 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, + "colors": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.3.tgz", + "integrity": "sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==" + }, "combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -1879,6 +1686,11 @@ "delayed-stream": "~1.0.0" } }, + "command-exists": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.8.tgz", + "integrity": "sha512-PM54PkseWbiiD/mMsbvW351/u+dafwTJ0ye2qB60G1aGQP9j3xK2gmMDc+R34L3nDtx4qMCitXT75mkbkGJDLw==" + }, "commander": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", @@ -1903,11 +1715,27 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true + "compressible": { + "version": "2.0.17", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.17.tgz", + "integrity": "sha512-BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw==", + "requires": { + "mime-db": ">= 1.40.0 < 2" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + } }, "concat-map": { "version": "0.0.1", @@ -2001,11 +1829,36 @@ } } }, + "connect-openui5": { + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.7.7.tgz", + "integrity": "sha512-7tV7ePr4ervxd81LSeIx012U1zWsqnpBRL7tpMsx2c8KKZgm6JGl8OrxGIuANOXX0Rbp5sdfYrpEQW0ztyKQzw==", + "requires": { + "async": "^2.6.0", + "extend": "^3.0.0", + "glob": "^7.1.4", + "http-proxy": "^1.12.0", + "less-openui5": "^0.6.0" + } + }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" }, + "content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, "convert-source-map": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", @@ -2021,11 +1874,15 @@ "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", "dev": true }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, "core-js": { "version": "2.6.9", @@ -2038,6 +1895,15 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, "coveralls": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.4.tgz", @@ -2181,6 +2047,11 @@ "array-find-index": "^1.0.1" } }, + "cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=" + }, "d": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", @@ -2208,12 +2079,11 @@ } }, "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { - "ms": "^2.1.1" + "ms": "2.0.0" } }, "decamelize": { @@ -2255,10 +2125,9 @@ } }, "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-0.2.2.tgz", + "integrity": "sha1-hLdFiW80xoTpjyzg5Cq69Du6AX0=" }, "deep-extend": { "version": "0.6.0", @@ -2312,47 +2181,6 @@ "object-keys": "^1.0.12" } }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, "del": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", @@ -2422,6 +2250,33 @@ "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "detect-node": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" + }, + "devcert-sanscache": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.5.tgz", + "integrity": "sha512-iXepNjlumZdOrjuYdYVzK92jvPyOD6hWdI1XPLS1u0/dr9Qg4u92LaLKt3vuMwWMjNY5BfanXiVe38EFvb5aSA==", + "requires": { + "command-exists": "^1.2.2", + "get-port": "^3.0.0", + "glob": "^7.1.1", + "mkdirp": "^0.5.1", + "rimraf": "^2.6.2" + } + }, "diff": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", @@ -2521,6 +2376,11 @@ "safer-buffer": "^2.1.0" } }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, "emittery": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.4.1.tgz", @@ -2528,9 +2388,9 @@ "dev": true }, "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, "empower-core": { @@ -2543,6 +2403,11 @@ "core-js": "^2.0.0" } }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, "end-of-stream": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", @@ -2642,6 +2507,11 @@ "es6-symbol": "^3.1.1" } }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", @@ -2740,12 +2610,27 @@ "which": "^1.2.9" } }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, "semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", @@ -2880,6 +2765,11 @@ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, "event-emitter": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", @@ -2889,6 +2779,11 @@ "es5-ext": "~0.10.14" } }, + "eventemitter3": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", + "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" + }, "events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", @@ -2910,53 +2805,47 @@ "strip-eof": "^1.0.0" } }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "requires": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" } } }, @@ -2965,40 +2854,10 @@ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - } - } - }, "external-editor": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", - "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dev": true, "requires": { "chardet": "^0.7.0", @@ -3006,76 +2865,16 @@ "tmp": "^0.0.33" } }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, + "eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=" + }, "fast-deep-equal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", @@ -3150,6 +2949,20 @@ "to-regex-range": "^5.0.1" } }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + } + }, "find-cache-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", @@ -3177,6 +2990,15 @@ "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, "semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", @@ -3210,11 +3032,28 @@ "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", "dev": true }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true + "follow-redirects": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.7.0.tgz", + "integrity": "sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ==", + "requires": { + "debug": "^3.2.6" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } }, "foreground-child": { "version": "1.5.6", @@ -3253,14 +3092,15 @@ "mime-types": "^2.1.12" } }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" }, "fs.realpath": { "version": "1.0.0", @@ -3307,21 +3147,9 @@ "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" }, "get-port": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.0.0.tgz", - "integrity": "sha512-imzMU0FjsZqNa6BqOjbbW6w5BivHIuQKopjpPqcnx0AVHJQKCxK1O+Ab3OrVXhrekqfVMjwA9ZYu062R+KcIsQ==", - "dev": true, - "requires": { - "type-fest": "^0.3.0" - }, - "dependencies": { - "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true - } - } + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=" }, "get-stdin": { "version": "6.0.0", @@ -3335,12 +3163,6 @@ "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", "dev": true }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true - }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", @@ -3370,12 +3192,6 @@ "is-glob": "^4.0.1" } }, - "glob-to-regexp": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", - "dev": true - }, "global-dirs": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", @@ -3447,6 +3263,11 @@ "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", "dev": true }, + "handle-thing": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz", + "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" + }, "handlebars": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", @@ -3519,58 +3340,6 @@ "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "has-yarn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", @@ -3600,6 +3369,17 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==" }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "requires": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, "htmlparser2": { "version": "3.10.1", "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", @@ -3631,6 +3411,40 @@ "integrity": "sha512-TcIMG3qeVLgDr1TEd2XvHaTnMPwYQUQMIBLy+5pLSDKYFc7UIqj39w8EGzZkaxoLv/l2K8HaI0t5AVA+YYgUew==", "dev": true }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" + }, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } + } + }, + "http-proxy": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz", + "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", + "requires": { + "eventemitter3": "^3.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", @@ -3641,11 +3455,15 @@ "sshpk": "^1.7.0" } }, + "i": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/i/-/i-0.3.6.tgz", + "integrity": "sha1-2WyScyB28HJxG2sQ/X1PZa2O4j0=" + }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, "requires": { "safer-buffer": ">= 2.1.2 < 3" } @@ -3686,24 +3504,13 @@ "dev": true }, "import-local": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", - "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.1.tgz", + "integrity": "sha512-XlabwTJ9tPOdyjnGdGvxUMnUhmhlnJhdYjp5e8UDb2fO+5Gto1Frlg66ixVAf1Os+zQlrKt3QlTCVodyxYBZjQ==", "dev": true, "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" - }, - "dependencies": { - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" - } - } + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" } }, "imurmurhash": { @@ -3801,6 +3608,12 @@ "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "dev": true }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, "onetime": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", @@ -3866,32 +3679,17 @@ "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", "dev": true }, + "ipaddr.js": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", + "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==" + }, "irregular-plurals": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-2.0.0.tgz", "integrity": "sha512-Y75zBYLkh0lJ9qxeHlMjQ7bSbyiSqNW/UOPWDmzC7cXskL1hekSITh1Oc6JV0XCWWZ9DE8VYSB71xocLk3gmGw==", "dev": true }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", @@ -3906,12 +3704,6 @@ "binary-extensions": "^2.0.0" } }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, "is-ci": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", @@ -3921,57 +3713,12 @@ "ci-info": "^2.0.0" } }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, "is-error": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", "dev": true }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true - }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -4025,6 +3772,14 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" }, + "is-number-like": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", + "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", + "requires": { + "lodash.isfinite": "^3.3.2" + } + }, "is-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", @@ -4074,14 +3829,6 @@ "dev": true, "requires": { "isobject": "^4.0.0" - }, - "dependencies": { - "isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true - } } }, "is-promise": { @@ -4143,9 +3890,9 @@ "dev": true }, "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", + "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", "dev": true }, "isstream": { @@ -4215,6 +3962,15 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -4231,6 +3987,15 @@ "source-map": "^0.6.1" }, "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, "make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", @@ -4241,6 +4006,12 @@ "semver": "^5.6.0" } }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", @@ -4457,12 +4228,6 @@ "json-buffer": "3.0.0" } }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - }, "klaw": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", @@ -4574,9 +4339,9 @@ } }, "lodash": { - "version": "4.17.14", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", - "integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==" + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.13.tgz", + "integrity": "sha512-vm3/XWXfWtRua0FkUyEHBZy8kCPjErNBT9fJx8Zvs+U6zjqPbTUOpkaoum3O5uiA8sm+yNMHXfYkTUHFoMxFNA==" }, "lodash.assignin": { "version": "4.2.0", @@ -4620,6 +4385,11 @@ "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" }, + "lodash.isfinite": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", + "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=" + }, "lodash.islength": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/lodash.islength/-/lodash.islength-4.0.1.tgz", @@ -4720,27 +4490,12 @@ "p-defer": "^1.0.0" } }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, "map-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", "dev": true }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, - "requires": { - "object-visit": "^1.0.0" - } - }, "markdown-it": { "version": "8.4.2", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", @@ -4803,6 +4558,11 @@ "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", "dev": true }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, "mem": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", @@ -4896,6 +4656,11 @@ } } }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, "merge-source-map": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", @@ -4910,6 +4675,11 @@ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.3.tgz", "integrity": "sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA==" }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, "micromatch": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", @@ -4950,6 +4720,11 @@ "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", "dev": true }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -4981,36 +4756,6 @@ } } }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - } - } - }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", @@ -5029,35 +4774,14 @@ } }, "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" }, "natural-compare": { "version": "1.4.0", @@ -5065,6 +4789,16 @@ "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, + "ncp": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ncp/-/ncp-1.0.1.tgz", + "integrity": "sha1-0VNn5cuHQyuhF9K/gP30Wuz7QkY=" + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + }, "neo-async": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", @@ -5099,6 +4833,23 @@ "just-extend": "^4.0.2", "lolex": "^4.1.0", "path-to-regexp": "^1.7.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "dev": true, + "requires": { + "isarray": "0.0.1" + } + } } }, "normalize-package-data": { @@ -5255,52 +5006,12 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "requires": { - "isobject": "^3.0.0" - } - }, "object.assign": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", @@ -5313,15 +5024,6 @@ "object-keys": "^1.0.11" } }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, "observable-to-promise": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-1.0.0.tgz", @@ -5332,6 +5034,24 @@ "symbol-observable": "^1.0.4" } }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" + }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -5634,17 +5354,10 @@ "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", "dev": true }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" }, "path-exists": { "version": "3.0.0", @@ -5674,21 +5387,9 @@ "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" }, "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", - "dev": true, - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" }, "path-type": { "version": "4.0.0", @@ -5763,14 +5464,55 @@ } }, "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "requires": { - "find-up": "^3.0.0" + "find-up": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + } } }, + "pkginfo": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.4.1.tgz", + "integrity": "sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=" + }, "plur": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/plur/-/plur-3.1.1.tgz", @@ -5780,11 +5522,14 @@ "irregular-plurals": "^2.0.0" } }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true + "portscanner": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-2.2.0.tgz", + "integrity": "sha512-IFroCz/59Lqa2uBvzK3bKDbDDIEaAY8XJ1jFxcLWTqosrsc32//P4VuSB2vZXoHiHqOmx8B5L5hnKOxL/7FlPw==", + "requires": { + "async": "^2.6.0", + "is-number-like": "^1.0.3" + } }, "prelude-ls": { "version": "1.1.2", @@ -5827,6 +5572,28 @@ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, + "prompt": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prompt/-/prompt-1.0.0.tgz", + "integrity": "sha1-jlcSPDlquYiJf7Mn/Trtw+c15P4=", + "requires": { + "colors": "^1.1.2", + "pkginfo": "0.x.x", + "read": "1.0.x", + "revalidator": "0.1.x", + "utile": "0.3.x", + "winston": "2.1.x" + } + }, + "proxy-addr": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", + "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==", + "requires": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.9.0" + } + }, "pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", @@ -5869,6 +5636,29 @@ "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.0.tgz", "integrity": "sha512-jCJ4a8BJ+z3f4SYSFtYIiRfcdxe2Bvh+Gg2J+LjriL3dVOtrF77u0tklYbO8acHoZQ7JlYJn3lNKfW5TFjcwdQ==" }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + } + } + }, "rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -5889,6 +5679,14 @@ } } }, + "read": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", + "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=", + "requires": { + "mute-stream": "~0.0.4" + } + }, "read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", @@ -5974,16 +5772,6 @@ "regenerate": "^1.4.0" } }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, "regexpp": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", @@ -6060,18 +5848,6 @@ "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true - }, "replacestream": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", @@ -6127,6 +5903,11 @@ "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", "dev": true }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + }, "requizzle": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.2.tgz", @@ -6150,20 +5931,12 @@ "dev": true, "requires": { "resolve-from": "^5.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - } } }, "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true }, "resolve-url": { @@ -6190,17 +5963,16 @@ "signal-exit": "^3.0.2" } }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true - }, "reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" }, + "revalidator": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/revalidator/-/revalidator-0.1.8.tgz", + "integrity": "sha1-/s5hv6DBtSoga9axgZgYS91SOjs=" + }, "rimraf": { "version": "2.6.3", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", @@ -6237,15 +6009,6 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, - "requires": { - "ret": "~0.1.10" - } - }, "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -6256,6 +6019,11 @@ "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" + }, "semver": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.2.0.tgz", @@ -6278,48 +6046,64 @@ } } }, + "send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "dependencies": { + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + } + } + }, "serialize-error": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", "dev": true }, + "serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + } + }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - } - } + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" }, "shebang-command": { "version": "1.2.0", @@ -6373,150 +6157,33 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" }, "slice-ansi": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", "dev": true, "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", "is-fullwidth-code-point": "^2.0.0" }, "dependencies": { - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - } - } - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "color-convert": "^1.9.0" } }, - "ms": { + "is-fullwidth-code-point": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true } } }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -6591,13 +6258,31 @@ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==" }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, + "spdy": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-3.4.7.tgz", + "integrity": "sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=", + "requires": { + "debug": "^2.6.8", + "handle-thing": "^1.2.5", + "http-deceiver": "^1.2.7", + "safe-buffer": "^5.0.1", + "select-hose": "^2.0.0", + "spdy-transport": "^2.0.18" + } + }, + "spdy-transport": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.1.1.tgz", + "integrity": "sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q==", "requires": { - "extend-shallow": "^3.0.0" + "debug": "^2.6.8", + "detect-node": "^2.0.3", + "hpack.js": "^2.1.6", + "obuf": "^1.1.1", + "readable-stream": "^2.2.9", + "safe-buffer": "^5.0.1", + "wbuf": "^1.7.2" } }, "sprintf-js": { @@ -6621,32 +6306,21 @@ "tweetnacl": "~0.14.0" } }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=" + }, "stack-utils": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", "dev": true }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, "string-width": { "version": "1.0.2", @@ -6748,12 +6422,20 @@ } }, "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.0.0.tgz", + "integrity": "sha512-WRt32iTpYEZWYOpcetGm0NPeSvaebccx7hhS/5M6sAiqnhedtFCHFxkjzZlJvFNCPowiKSFGiZk5USQDFy83vQ==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + } } }, "symbol-observable": { @@ -6780,14 +6462,11 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true }, "is-fullwidth-code-point": { "version": "2.0.0", @@ -6795,17 +6474,6 @@ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, - "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - } - }, "string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -7038,44 +6706,12 @@ "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", "dev": true }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "to-readable-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", "dev": true }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -7084,6 +6720,11 @@ "is-number": "^7.0.0" } }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + }, "tough-cookie": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", @@ -7100,6 +6741,11 @@ } } }, + "treeify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", + "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==" + }, "trim-newlines": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", @@ -7162,6 +6808,15 @@ "integrity": "sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw==", "dev": true }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, "typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -7232,18 +6887,6 @@ "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", "dev": true }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - } - }, "unique-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", @@ -7264,45 +6907,10 @@ "uid2": "0.0.3" } }, - "unset-value": { + "unpipe": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true - } - } + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, "update-notifier": { "version": "3.0.1", @@ -7346,17 +6954,36 @@ "prepend-http": "^2.0.0" } }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true - }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, + "utile": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/utile/-/utile-0.3.0.tgz", + "integrity": "sha1-E1LDQOuCDk2N26A5pPv6oy7U7zo=", + "requires": { + "async": "~0.9.0", + "deep-equal": "~0.2.1", + "i": "0.3.x", + "mkdirp": "0.x.x", + "ncp": "1.0.x", + "rimraf": "2.x.x" + }, + "dependencies": { + "async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" + } + } + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, "uuid": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", @@ -7371,6 +6998,11 @@ "spdx-expression-parse": "^3.0.0" } }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, "verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", @@ -7381,6 +7013,14 @@ "extsprintf": "^1.2.0" } }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, "wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", @@ -7461,6 +7101,37 @@ } } }, + "winston": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/winston/-/winston-2.1.1.tgz", + "integrity": "sha1-PJNJ0ZYgf9G9/51LxD73JRDjoS4=", + "requires": { + "async": "~1.0.0", + "colors": "1.0.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "pkginfo": "0.3.x", + "stack-trace": "0.0.x" + }, + "dependencies": { + "async": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=" + }, + "colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=" + }, + "pkginfo": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", + "integrity": "sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=" + } + } + }, "wordwrap": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", @@ -7492,6 +7163,12 @@ "color-convert": "^1.9.0" } }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -7572,9 +7249,9 @@ "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" }, "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "dev": true }, "y18n": { @@ -7620,6 +7297,12 @@ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, "get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 3c677776659..b32679bb3c8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,6 +98,7 @@ "dependencies": { "@ui5/builder": "^1.3.3", "@ui5/logger": "^1.0.1", + "@ui5/server": "^1.2.0", "graceful-fs": "^4.2.0", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", diff --git a/packages/project/test/fixtures/application.a/middleware.a.js b/packages/project/test/fixtures/application.a/middleware.a.js new file mode 100644 index 00000000000..ea41b01de46 --- /dev/null +++ b/packages/project/test/fixtures/application.a/middleware.a.js @@ -0,0 +1 @@ +module.exports = function () {}; diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 3eba7fa6d41..7e10e44439a 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -584,6 +584,71 @@ test("Project with task extension dependency - task module not found", async (t) t.regex(error.message, /^Cannot find module.*/, "Rejected with error"); }); + +test("Project with middleware extension dependency", (t) => { + // "project-type" extension handling not yet implemented => test currently checks for error + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "ext.middleware.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "server-middleware", + metadata: { + name: "middleware.a" + }, + middleware: { + path: "middleware.a.js" + } + }], + version: "1.0.0", + specVersion: "1.0", + type: "application", + metadata: { + name: "xy" + } + }; + return projectPreprocessor.processTree(tree).then((parsedTree) => { + t.deepEqual(parsedTree.dependencies.length, 0, "Application project has no dependencies"); + const {middlewareRepository} = require("@ui5/server"); + t.truthy(middlewareRepository.getMiddleware("middleware.a"), + "middleware.a has been added to the middleware repository"); + }); +}); + +test("Project with middleware extension dependency - middleware is missing configuration", async (t) => { + // "project-type" extension handling not yet implemented => test currently checks for error + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "ext.middleware.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "server-middleware", + metadata: { + name: "middleware.a" + } + }], + version: "1.0.0", + specVersion: "1.0", + type: "application", + metadata: { + name: "xy" + } + }; + const error = await t.throwsAsync(projectPreprocessor.processTree(tree)); + t.deepEqual(error.message, `Middleware extension ext.middleware.a is missing 'middleware' configuration`, + "Rejected with error"); +}); + test("specVersion: Missing version", async (t) => { const extension = { id: "extension.a", From 3152b9f1b72e3f60676cdd8ed8373bfe065ad671 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 11 Jul 2019 14:19:31 +0000 Subject: [PATCH 0218/1272] [ui5-project]Release 1.1.0 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 361342a4d81..6a8a8e88d67 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.0.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.1.0...HEAD). + + +## [v1.1.0] - 2019-06-25 +### Features +- **projectPreprocessor:** Add handling for server-middleware extensions [`2ce964c`](https://github.com/SAP/ui5-project/commit/2ce964cd9feb6c1da39cd783ad45e0030c46b81a) + ## [v1.0.3] - 2019-06-25 @@ -98,6 +104,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v1.1.0]: https://github.com/SAP/ui5-project/compare/v1.0.3...v1.1.0 [v1.0.3]: https://github.com/SAP/ui5-project/compare/v1.0.2...v1.0.3 [v1.0.2]: https://github.com/SAP/ui5-project/compare/v1.0.1...v1.0.2 [v1.0.1]: https://github.com/SAP/ui5-project/compare/v1.0.0...v1.0.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index cfcbf538f07..f9045f4a37a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.0.3", + "version": "1.1.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index b32679bb3c8..011cdabd1e7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.0.3", + "version": "1.1.0", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 7baf2a38802d23fe02d1e88b07fcb161b3b6175c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 14 Jul 2019 04:22:03 +0000 Subject: [PATCH 0219/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 48 +++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 28 insertions(+), 22 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f9045f4a37a..77cbcb6154a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1088,6 +1088,12 @@ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==" }, + "blueimp-md5": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.10.0.tgz", + "integrity": "sha512-EkNUOi7tpV68TqjpiUz9D9NcT8um2+qtgntmMbi5UKssVX2m/2PLqotcric0RE63pB3HPN/fjf3cKHN2ufGSUQ==", + "dev": true + }, "body-parser": { "version": "1.19.0", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", @@ -1905,13 +1911,13 @@ } }, "coveralls": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.4.tgz", - "integrity": "sha512-eyqUWA/7RT0JagiL0tThVhjbIjoiEUyWCjtUJoOPcWoeofP5WK/jb2OJYoBFrR6DvplR+AxOyuBqk4JHkk5ykA==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.5.tgz", + "integrity": "sha512-/KD7PGfZv/tjKB6LoW97jzIgFqem0Tu9tZL9/iwBnBd8zkIZp7vT1ZSHNvnr0GSQMV/LTMxUstWg8WcDDUVQKg==", "dev": true, "requires": { "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", + "js-yaml": "^3.13.1", "lcov-parse": "^0.0.10", "log-driver": "^1.2.7", "minimist": "^1.2.0", @@ -3546,9 +3552,9 @@ "dev": true }, "inquirer": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.4.1.tgz", - "integrity": "sha512-/Jw+qPZx4EDYsaT6uz7F4GJRNFMRdKNeUZw3ZnKV8lyuUgz/YWRCSUAJMZSVhSq4Ec0R2oYnyi6b3d4JXcL5Nw==", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.0.tgz", + "integrity": "sha512-scfHejeG/lVZSpvCXpsB4j/wQNPM5JC8kiElOI0OUTwmc1RTpXr4H32/HOlQHcZiYl2z2VElwuCVDRG8vFmbnA==", "dev": true, "requires": { "ansi-escapes": "^3.2.0", @@ -3557,7 +3563,7 @@ "cli-width": "^2.0.0", "external-editor": "^3.0.3", "figures": "^2.0.0", - "lodash": "^4.17.11", + "lodash": "^4.17.12", "mute-stream": "0.0.7", "run-async": "^2.2.0", "rxjs": "^6.4.0", @@ -4310,9 +4316,9 @@ } }, "linkify-it": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.1.0.tgz", - "integrity": "sha512-4REs8/062kV2DSHxNfq5183zrqXMl7WP0WzABH9IeJI+NLm429FgE1PDecltYfnOoFDFlZGh2T8PfZn0r+GTRg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", "dev": true, "requires": { "uc.micro": "^1.0.1" @@ -4339,9 +4345,9 @@ } }, "lodash": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.13.tgz", - "integrity": "sha512-vm3/XWXfWtRua0FkUyEHBZy8kCPjErNBT9fJx8Zvs+U6zjqPbTUOpkaoum3O5uiA8sm+yNMHXfYkTUHFoMxFNA==" + "version": "4.17.14", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", + "integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==" }, "lodash.assignin": { "version": "4.2.0", @@ -4538,12 +4544,12 @@ } }, "md5-hex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.0.tgz", - "integrity": "sha512-uA+EX5IV1r5lKBJecwTSec3k6xl4ziBUZihRiOpOHCeHjKA0ai6+eImamXQy/cI3Qep5mQgFTeJld9tcwdBNFw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.1.tgz", + "integrity": "sha512-BUiRtTtV39LIJwinWBjqVsU9xhdnz7/i889V859IBFpuqGAj6LuOvHv5XLbgZ2R7ptJoJaEcxkv88/h25T7Ciw==", "dev": true, "requires": { - "md5-o-matic": "^0.1.1" + "blueimp-md5": "^2.10.0" } }, "md5-o-matic": { @@ -6254,9 +6260,9 @@ } }, "spdx-license-ids": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", - "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==" + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==" }, "spdy": { "version": "3.4.7", diff --git a/packages/project/package.json b/packages/project/package.json index 011cdabd1e7..d562bf0cf16 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -109,7 +109,7 @@ }, "devDependencies": { "ava": "^2.1.0", - "coveralls": "^3.0.4", + "coveralls": "^3.0.5", "cross-env": "^5.2.0", "docdash": "^1.1.1", "eslint": "^5.16.0", From ce17d802c8f8c4648d498e3d3a8874ec5b7f887e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 21 Jul 2019 04:22:38 +0000 Subject: [PATCH 0220/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 299 ++++++++++------------------- packages/project/package.json | 2 +- 2 files changed, 100 insertions(+), 201 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 77cbcb6154a..b2c74660fe9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -33,31 +33,31 @@ } }, "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", + "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", "dev": true, "requires": { "@babel/highlight": "^7.0.0" } }, "@babel/core": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.5.4.tgz", - "integrity": "sha512-+DaeBEpYq6b2+ZmHx3tHspC+ZRflrvLqwfv8E3hNr5LVQoyBnL8RPKSBCg+rK2W2My9PWlujBiqd0ZPsR9Q6zQ==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.5.5.tgz", + "integrity": "sha512-i4qoSr2KTtce0DmkuuQBV4AuQgGPUcPXMr9L5MyYAtk06z068lQ10a4O009fe5OB/DfNV+h+qqT7ddNV8UnRjg==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.5.0", - "@babel/helpers": "^7.5.4", - "@babel/parser": "^7.5.0", + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.5.5", + "@babel/helpers": "^7.5.5", + "@babel/parser": "^7.5.5", "@babel/template": "^7.4.4", - "@babel/traverse": "^7.5.0", - "@babel/types": "^7.5.0", + "@babel/traverse": "^7.5.5", + "@babel/types": "^7.5.5", "convert-source-map": "^1.1.0", "debug": "^4.1.0", "json5": "^2.1.0", - "lodash": "^4.17.11", + "lodash": "^4.17.13", "resolve": "^1.3.2", "semver": "^5.4.1", "source-map": "^0.5.0" @@ -93,14 +93,14 @@ } }, "@babel/generator": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.5.0.tgz", - "integrity": "sha512-1TTVrt7J9rcG5PMjvO7VEG3FrEoEJNHxumRq66GemPmzboLWtIjjcJgk8rokuAS7IiRSpgVSu5Vb9lc99iJkOA==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.5.5.tgz", + "integrity": "sha512-ETI/4vyTSxTzGnU2c49XHv2zhExkv9JHLTwDAFz85kmcwuShvYG2H08FwgIguQf4JC75CBnXAUM5PqeF4fj0nQ==", "dev": true, "requires": { - "@babel/types": "^7.5.0", + "@babel/types": "^7.5.5", "jsesc": "^2.5.1", - "lodash": "^4.17.11", + "lodash": "^4.17.13", "source-map": "^0.5.0", "trim-right": "^1.0.1" }, @@ -152,17 +152,17 @@ } }, "@babel/helper-module-transforms": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.4.4.tgz", - "integrity": "sha512-3Z1yp8TVQf+B4ynN7WoHPKS8EkdTbgAEy0nU0rs/1Kw4pDgmvYH3rz3aI11KgxKCba2cn7N+tqzV1mY2HMN96w==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.5.5.tgz", + "integrity": "sha512-jBeCvETKuJqeiaCdyaheF40aXnnU1+wkSiUs/IQg3tB85up1LyL8x77ClY8qJpuRJUcXQo+ZtdNESmZl4j56Pw==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.0.0", "@babel/helper-simple-access": "^7.1.0", "@babel/helper-split-export-declaration": "^7.4.4", "@babel/template": "^7.4.4", - "@babel/types": "^7.4.4", - "lodash": "^4.17.11" + "@babel/types": "^7.5.5", + "lodash": "^4.17.13" } }, "@babel/helper-plugin-utils": { @@ -172,12 +172,12 @@ "dev": true }, "@babel/helper-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.4.4.tgz", - "integrity": "sha512-Y5nuB/kESmR3tKjU8Nkn1wMGEx1tjJX076HBMeL3XLQCu6vA/YRzuTW0bbb+qRnXvQGn+d6Rx953yffl8vEy7Q==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.5.5.tgz", + "integrity": "sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw==", "dev": true, "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.13" } }, "@babel/helper-remap-async-to-generator": { @@ -225,14 +225,14 @@ } }, "@babel/helpers": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.5.4.tgz", - "integrity": "sha512-6LJ6xwUEJP51w0sIgKyfvFMJvIb9mWAfohJp0+m6eHJigkFdcH8duZ1sfhn0ltJRzwUIT/yqqhdSfRpCpL7oow==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.5.5.tgz", + "integrity": "sha512-nRq2BUhxZFnfEn/ciJuhklHvFOqjJUD5wpx+1bxUF2axL9C+v4DE/dmp5sT2dKnpOs4orZWzpAZqlCy8QqE/7g==", "dev": true, "requires": { "@babel/template": "^7.4.4", - "@babel/traverse": "^7.5.0", - "@babel/types": "^7.5.0" + "@babel/traverse": "^7.5.5", + "@babel/types": "^7.5.5" } }, "@babel/highlight": { @@ -247,9 +247,9 @@ } }, "@babel/parser": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.5.0.tgz", - "integrity": "sha512-I5nW8AhGpOXGCCNYGc+p7ExQIBxRFnS2fd/d862bNOKvmoEPjYPcfIjsfdy0ujagYOIYPczKgD9l3FsgTkAzKA==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.5.5.tgz", + "integrity": "sha512-E5BN68cqR7dhKan1SfqgPGhQ178bkVKpXTPEXnFJBrEt8/DKRZlybmy+IgYLTeN7tp1R5Ccmbm2rBk17sHYU3g==", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { @@ -335,20 +335,20 @@ } }, "@babel/traverse": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.5.0.tgz", - "integrity": "sha512-SnA9aLbyOCcnnbQEGwdfBggnc142h/rbqqsXcaATj2hZcegCl903pUD/lfpsNBlBSuWow/YDfRyJuWi2EPR5cg==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.5.5.tgz", + "integrity": "sha512-MqB0782whsfffYfSjH4TM+LMjrJnhCNEDMDIjeTpl+ASaUvxcjoiVCo/sM1GhS1pHOXYfWVCYneLjMckuUxDaQ==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.5.0", + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.5.5", "@babel/helper-function-name": "^7.1.0", "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.5.0", - "@babel/types": "^7.5.0", + "@babel/parser": "^7.5.5", + "@babel/types": "^7.5.5", "debug": "^4.1.0", "globals": "^11.1.0", - "lodash": "^4.17.11" + "lodash": "^4.17.13" }, "dependencies": { "debug": { @@ -369,13 +369,13 @@ } }, "@babel/types": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.5.0.tgz", - "integrity": "sha512-UFpDVqRABKsW01bvw7/wSUe56uy6RXM5+VJibVVAybDGxEW25jdwiFJEf7ASvSaC7sN7rbE/l3cLp2izav+CtQ==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.5.5.tgz", + "integrity": "sha512-s63F9nJioLqOlW3UkyMd+BYhXt44YuaFm/VV0VwuteqjYwRrObkU7ra9pY4wAJR3oXi8hJrMcrcJdO/HH33vtw==", "dev": true, "requires": { "esutils": "^2.0.2", - "lodash": "^4.17.11", + "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" } }, @@ -491,9 +491,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.6.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.6.2.tgz", - "integrity": "sha512-gojym4tX0FWeV2gsW4Xmzo5wxGjXGm550oVUII7f7G5o4BV6c7DBdiG1RRQd+y1bvqRyYtPfMK85UM95vsapqQ==" + "version": "12.6.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.6.8.tgz", + "integrity": "sha512-aX+gFgA5GHcDi89KG5keey2zf0WfZk/HAQotEamsK2kbey+8yGKcson0hbK8E+v0NArlCJQCqMP161YhV6ZXLg==" }, "@ui5/builder": { "version": "1.3.3", @@ -605,9 +605,9 @@ } }, "acorn": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.0.tgz", - "integrity": "sha512-8oe72N3WPMjA+2zVG71Ia0nXZ8DpQH+QyyHO+p06jT8eg8FGG3FbcUIi8KziHlAfheJQZeoqbvq1mQSQHXKYLw==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.1.tgz", + "integrity": "sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q==", "dev": true }, "acorn-jsx": { @@ -617,9 +617,9 @@ "dev": true }, "ajv": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.1.tgz", - "integrity": "sha512-w1YQaVGNC6t2UCPjEawK/vo/dG8OOrVtUmhBT1uJJYxbl5kU2Tj3v6LGqBcsysN1yhuCStJCCA3GqdvKY8sqXQ==", + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", + "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", "requires": { "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", @@ -837,11 +837,11 @@ "dev": true }, "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.14" } }, "asynckit": { @@ -1089,9 +1089,9 @@ "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==" }, "blueimp-md5": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.10.0.tgz", - "integrity": "sha512-EkNUOi7tpV68TqjpiUz9D9NcT8um2+qtgntmMbi5UKssVX2m/2PLqotcric0RE63pB3HPN/fjf3cKHN2ufGSUQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.11.0.tgz", + "integrity": "sha512-xvA4mdnIevstCvNKTRLMOKi7L76U/X/CTs9Yz+PLWmWAC/7SuYi5Xv2J7bAhJnE2+LcLv+x4+0vusvKgM9LnZQ==", "dev": true }, "body-parser": { @@ -1384,11 +1384,11 @@ "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, "catharsis": { - "version": "0.8.10", - "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.10.tgz", - "integrity": "sha512-l2OUaz/3PU3MZylspVFJvwHCVfWyvcduPq4lv3AzZ2pJzZCo7kNKFNyatwujD7XgvGkNAE/Jhhbh2uARNwNkfw==", + "version": "0.8.11", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.11.tgz", + "integrity": "sha512-a+xUyMV7hD1BrDQA/3iPV7oc+6W26BgVJO05PGEoatMyIuPScQKsde6i3YorWX1qs+AZjnJ18NqdKoCtKiNh1g==", "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.14" } }, "chalk": { @@ -2682,10 +2682,13 @@ } }, "eslint-utils": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.3.1.tgz", - "integrity": "sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==", - "dev": true + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.0.tgz", + "integrity": "sha512-7ehnzPaP5IIEh1r1tkjuIrxqhNkzUJa9z3R92tLJdZIVdWaczEhr3EbhGtsMrVxi1KeR8qA7Off6SWc5WNQqyQ==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.0.0" + } }, "eslint-visitor-keys": { "version": "1.0.0", @@ -3679,12 +3682,6 @@ } } }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, "ipaddr.js": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", @@ -4076,22 +4073,22 @@ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsdoc": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.2.tgz", - "integrity": "sha512-S2vzg99C5+gb7FWlrK4TVdyzVPGGkdvpDkCEJH1JABi2PKzPeLu5/zZffcJUifgWUJqXWl41Hoc+MmuM2GukIg==", + "version": "3.6.3", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.3.tgz", + "integrity": "sha512-Yf1ZKA3r9nvtMWHO1kEuMZTlHOF8uoQ0vyo5eH7SQy5YeIiHM+B0DgKnn+X6y6KDYZcF7G2SPkKF+JORCXWE/A==", "dev": true, "requires": { "@babel/parser": "^7.4.4", "bluebird": "^3.5.4", - "catharsis": "^0.8.10", + "catharsis": "^0.8.11", "escape-string-regexp": "^2.0.0", "js2xmlparser": "^4.0.0", "klaw": "^3.0.0", "markdown-it": "^8.4.2", "markdown-it-anchor": "^5.0.2", - "marked": "^0.6.2", + "marked": "^0.7.0", "mkdirp": "^0.5.1", - "requizzle": "^0.2.2", + "requizzle": "^0.2.3", "strip-json-comments": "^3.0.1", "taffydb": "2.6.2", "underscore": "~1.9.1" @@ -4122,9 +4119,9 @@ } }, "marked": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.6.3.tgz", - "integrity": "sha512-Fqa7eq+UaxfMriqzYLayfqAE40WN03jf+zHjT18/uXNuzjq3TY0XTbrAoPeqSJrAmPz11VuUA+kBPYOhHt9oOQ==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.7.0.tgz", + "integrity": "sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==", "dev": true }, "strip-json-comments": { @@ -4251,15 +4248,6 @@ "package-json": "^6.3.0" } }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, "lcov-parse": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", @@ -4345,9 +4333,9 @@ } }, "lodash": { - "version": "4.17.14", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", - "integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==" + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==" }, "lodash.assignin": { "version": "4.2.0", @@ -4487,15 +4475,6 @@ "semver": "^6.0.0" } }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, "map-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", @@ -4569,17 +4548,6 @@ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, - "mem": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", - "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" - } - }, "meow": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", @@ -5199,62 +5167,6 @@ "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", "dev": true }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true - } - } - }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", @@ -5267,24 +5179,12 @@ "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", "dev": true }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true - }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", "dev": true }, - "p-is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", - "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", - "dev": true - }, "p-limit": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", @@ -5915,11 +5815,11 @@ "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" }, "requizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.2.tgz", - "integrity": "sha512-oJ6y7JcUJkblRGhMByGNcszeLgU0qDxNKFCiUZR1XyzHyVsev+Mxb1tyygxLd1ORsKee1SA5BInFdUwY64GE/A==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.3.tgz", + "integrity": "sha512-YanoyJjykPxGHii0fZP0uUPEXpvqfBDxWV7s6GKAiiOsiqhX6vHNyW3Qzdmqp/iq/ExbhaGbVrjB4ruEVSM4GQ==", "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.14" } }, "resolve": { @@ -6451,13 +6351,13 @@ "dev": true }, "table": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.1.tgz", - "integrity": "sha512-E6CK1/pZe2N75rGZQotFOdmzWQ1AILtgYbMAbAjvms0S1l5IDB47zG3nCnFGB/w+7nB3vKofbLXCH7HPBo864w==", + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.4.tgz", + "integrity": "sha512-IIfEAUx5QlODLblLrGTTLJA7Tk0iLSGBvgY8essPRVNGHAzThujww1YqHLs6h3HfTg55h++RzLHH5Xw/rfv+mg==", "dev": true, "requires": { - "ajv": "^6.9.1", - "lodash": "^4.17.11", + "ajv": "^6.10.2", + "lodash": "^4.17.14", "slice-ansi": "^2.1.0", "string-width": "^3.0.0" }, @@ -7273,22 +7173,21 @@ "dev": true }, "yargs": { - "version": "13.2.4", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.4.tgz", - "integrity": "sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg==", + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", + "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", "dev": true, "requires": { "cliui": "^5.0.0", "find-up": "^3.0.0", "get-caller-file": "^2.0.1", - "os-locale": "^3.1.0", "require-directory": "^2.1.1", "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", "string-width": "^3.0.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^13.1.0" + "yargs-parser": "^13.1.1" }, "dependencies": { "ansi-regex": { diff --git a/packages/project/package.json b/packages/project/package.json index d562bf0cf16..09c588ddf7e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -115,7 +115,7 @@ "eslint": "^5.16.0", "eslint-config-google": "^0.12.0", "eslint-plugin-jsdoc": "^4.8.4", - "jsdoc": "^3.6.2", + "jsdoc": "^3.6.3", "nyc": "^14.1.1", "opn-cli": "^4.1.0", "rimraf": "^2.6.3", From 7de74d62955b63424b4632b622911f0f76dcfd6e Mon Sep 17 00:00:00 2001 From: Thorsten Hochreuter Date: Tue, 16 Jul 2019 16:13:35 +0200 Subject: [PATCH 0221/1272] [ui5-project][INTERNAL] Move Cachebuster config documentation to correct section Feature was implemented with SAP/ui5-builder#241. --- packages/project/docs/Configuration.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 0f53a21a723..029d5b811c7 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -89,8 +89,6 @@ Some general information: + `: ` (default `/: ./`): Any virtual path mapping can be defined here. *(Only available for projects of type `module`)* It is recommended that modules include their namespace in the virtual path and use the `/resources` prefix (e.g. `/resources/my/first/library/module-xy`). -- `cachebuster`: - - `signatureType`: `time` or `hash`. By default, the generated cachebuster info file signatures are based on timestamps (`time`). In setups like CI environments, a mechanism based on file hashes (`hash`) might be more reliable. #### builder (optional) - `resources`: General resource configuration for this project @@ -104,6 +102,8 @@ Some general information: - `name` (mandatory): The name of the custom task - `afterTask` or `beforeTask` (only one, mandatory): The name of the build task after or before which your custom task will be executed. - `configuration` (optional): Additional configuration that is passed to the custom build task +- `cachebuster`: + - `signatureType`: `time` or `hash`. By default, the generated cachebuster info file signatures are based on timestamps (`time`). In setups like CI environments, a mechanism based on file hashes (`hash`) might be more reliable. #### server (optional) - `settings` (not yet implemented) From 8be5723442f72e3743663e62cf55746f922882cb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 Jul 2019 16:38:38 +0200 Subject: [PATCH 0222/1272] [ui5-project][INTERNAL] package.json: Update dependency opn to open --- packages/project/package-lock.json | 56 ++++++++++++++---------------- packages/project/package.json | 4 +-- 2 files changed, 28 insertions(+), 32 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b2c74660fe9..2b03385dfaa 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2945,9 +2945,9 @@ } }, "file-type": { - "version": "10.11.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.11.0.tgz", - "integrity": "sha512-uzk64HRpUZyTGZtVuvrjP0FYxzQrBf4rojot6J65YMEbwBLB0CWm0CLojVpwpmFmxcE/lkvYICgfcGozbBq6rw==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-11.1.0.tgz", + "integrity": "sha512-rM0UO7Qm9K7TWTtA6AShI/t7H5BPjDeGVDaNyg9BjHAj3PysKy7+8C8D137R88jnR3rFJZQB/tFgydl5sN5m7g==", "dev": true }, "fill-range": { @@ -3161,9 +3161,9 @@ "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=" }, "get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", + "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", "dev": true }, "get-stream": { @@ -5052,17 +5052,17 @@ "is-wsl": "^1.1.0" } }, - "opn-cli": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/opn-cli/-/opn-cli-4.1.0.tgz", - "integrity": "sha512-nVJ9dVb4fEKtmACWxUql+hhQxVWMt7BSRT+6TnB85W3xs5Pgk9sKW3icYeCIwOtOKALBw/6WUCoNmI1+ADfAow==", + "open-cli": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-5.0.0.tgz", + "integrity": "sha512-Y2KQDS6NqNtk+PSXzSgwH41vTDMRndwFgVWsfgMhXv7lNe1cImLCe19Vo8oKwMsL7WeNsGmmbX7Ml74Ydj61Cg==", "dev": true, "requires": { - "file-type": "^10.10.0", - "get-stdin": "^6.0.0", + "file-type": "^11.0.0", + "get-stdin": "^7.0.0", "meow": "^5.0.0", - "open": "^6.1.0", - "temp-write": "^3.4.0" + "open": "^6.3.0", + "temp-write": "^4.0.0" } }, "optimist": { @@ -6524,27 +6524,23 @@ "dev": true }, "temp-write": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-3.4.0.tgz", - "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-4.0.0.tgz", + "integrity": "sha512-HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "is-stream": "^1.1.0", - "make-dir": "^1.0.0", - "pify": "^3.0.0", + "graceful-fs": "^4.1.15", + "is-stream": "^2.0.0", + "make-dir": "^3.0.0", "temp-dir": "^1.0.0", - "uuid": "^3.0.1" + "uuid": "^3.3.2" }, "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } + "is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true } } }, diff --git a/packages/project/package.json b/packages/project/package.json index 09c588ddf7e..2892235e283 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -29,7 +29,7 @@ "unit-inspect": "cross-env UI5_LOG_LVL=verbose node --inspect-brk node_modules/ava/profile.js", "coverage": "nyc npm run unit", "coverage-xunit": "nyc --reporter=text --reporter=text-summary --reporter=cobertura npm run unit-xunit", - "jsdoc": "npm run jsdoc-generate && opn jsdocs/index.html", + "jsdoc": "npm run jsdoc-generate && open-cli jsdocs/index.html", "jsdoc-generate": "node_modules/.bin/jsdoc -c ./jsdoc.json ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", "preversion": "npm test", "version": "git-chglog --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", @@ -117,7 +117,7 @@ "eslint-plugin-jsdoc": "^4.8.4", "jsdoc": "^3.6.3", "nyc": "^14.1.1", - "opn-cli": "^4.1.0", + "open-cli": "^5.0.0", "rimraf": "^2.6.3", "sinon": "^7.3.2", "tap-nyan": "^1.1.0", From 2bc2006a9419d1be3f5f784d03036f754c1c852e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 25 Jul 2019 12:23:41 +0200 Subject: [PATCH 0223/1272] [ui5-project][INTERNAL] README: Move documentation to UI5 Tooling repository Related to https://github.com/SAP/ui5-tooling/pull/160 --- packages/project/README.md | 174 +---------- packages/project/docs/BuildExtensibility.md | 139 +-------- packages/project/docs/Configuration.md | 324 +------------------- 3 files changed, 4 insertions(+), 633 deletions(-) diff --git a/packages/project/README.md b/packages/project/README.md index f25fe4e90e8..f160b485740 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -10,178 +10,8 @@ [![Dependency Status](https://david-dm.org/SAP/ui5-project/master.svg)](https://david-dm.org/SAP/ui5-project/master) [![devDependency Status](https://david-dm.org/SAP/ui5-project/master/dev-status.svg)](https://david-dm.org/SAP/ui5-project/master#info=devDependencies) -**⌨️ CLI reference can be found [here!](https://github.com/SAP/ui5-cli#cli-usage)** - -## Configuration -See [Configuration](docs/Configuration.md). - -## Normalizer -The purpose of the normalizer is to collect dependency information and to enrich it with project configuration (both done in [generateProjectTree](https://sap.github.io/ui5-tooling/module-@ui5_project.normalizer.html#.generateProjectTree)). - -[Translators](#translators) are used to collect dependency information. The [Project Preprocessor](#project-preprocessor) enriches this dependency information with project configuration, typically from a `ui5.yaml` file. A development server and build process can use this information to locate project and dependency resources. - -If you want to retrieve the project dependency graph without any configuration, you may use use the [generateDependencyTree](https://sap.github.io/ui5-tooling/module-@ui5_project.normalizer.html#.generateDependencyTree) API. - -## Translators -Translators collect recursively all dependencies on a package manager specific layer and return information about them in a well-defined tree structure. - -**Tree structure as returned by a Translator:** -````json -{ - "id": "projectA", - "version": "1.0.0", - "path": "/absolute/path/to/projectA", - "dependencies": [ - { - "id": "projectB", - "version": "1.0.0", - "path": "/path/to/projectB", - "dependencies": [ - { - "id": "projectD", - "path": "/path/to/different/projectD" - } - ] - }, - { - "id": "projectD", - "version": "1.0.0", - "path": "/path/to/projectD" - }, - { - "id": "myStaticServerTool", - "version": "1.0.0", - "path": "/path/to/some/dependency" - } - ] -} -```` -This dependency tree can be used as input for the [Project Preprocessor](#project-preprocessor): - -### npm Translator -The npm translator is currently the default translator and looks for dependencies defined in the `package.json` file of a certain project. `dependencies`, `devDepedencies`, and [napa dependencies](https://github.com/shama/napa) (Git repositories which don't have a `package.json` file) are located via the Node.js module resolution logic. - -### Static Translator -*This translator is currently intended for testing purposes only.* - -Can be used to supply the full dependency information of a project in a single structured file. - -**Example: `projectDependencies.yaml`** -````yaml ---- -id: testsuite -version: "" -path: "./" -dependencies: - - id: sap.f - version: "" - path: "../sap.f" - - id: sap.m - version: "" - path: "../sap.m" -```` - -This can be used via `ui5 serve -b static:/path/to/projectDependencies.yaml` - -## Project Preprocessor -Enhances a given dependency tree based on a projects [configuration](docs/Configuration.md). - -**Enhanced dependency tree structure as returned by the Project Preprocessor:** -````json -{ - "id": "projectA", - "version": "1.0.0", - "path": "/absolute/path/to/projectA", - "specVersion": "0.1", - "type": "application", - "metadata": { - "name": "sap.projectA", - "copyright": "Some copyright ${currentYear}" - }, - "resources": { - "configuration": { - "paths": { - "webapp": "app" - } - }, - "pathMappings": { - "/": "app" - } - }, - "dependencies": [ - { - "id": "projectB", - "version": "1.0.0", - "path": "/path/to/projectB", - "specVersion": "0.1", - "type": "library", - "metadata": { - "name": "sap.ui.projectB" - }, - "resources": { - "configuration": { - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - }, - "dependencies": [ - { - "id": "projectD", - "version": "1.0.0", - "path": "/path/to/different/projectD", - "specVersion": "0.1", - "type": "library", - "metadata": { - "name": "sap.ui.projectD" - }, - "resources": { - "configuration": { - "paths": { - "src": "src/main/uilib", - "test": "src/test" - } - }, - "pathMappings": { - "/resources/": "src/main/uilib", - "/test-resources/": "src/test" - } - }, - "dependencies": [] - } - ] - }, - { - "id": "projectD", - "version": "1.0.0", - "path": "/path/to/projectD", - "specVersion": "0.1", - "type": "library", - "metadata": { - "name": "sap.ui.projectD" - }, - "resources": { - "configuration": { - "paths": { - "src": "src/main/uilib", - "test": "src/test" - } - }, - "pathMappings": { - "/resources/": "src/main/uilib", - "/test-resources/": "src/test" - } - }, - "dependencies": [] - } - ] -} -```` +## Documentation +Can be found here: [sap.github.io/ui5-tooling](https://sap.github.io/ui5-tooling/pages/Project/) ## Contributing Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md). diff --git a/packages/project/docs/BuildExtensibility.md b/packages/project/docs/BuildExtensibility.md index 8574fb6f3a4..185d4a80448 100644 --- a/packages/project/docs/BuildExtensibility.md +++ b/packages/project/docs/BuildExtensibility.md @@ -1,139 +1,2 @@ -![UI5 icon](https://raw.githubusercontent.com/SAP/ui5-tooling/master/docs/images/UI5_logo_wide.png) - # UI5 Build Extensibility - -The UI5 Build Extensibility enables a developer to enhance the build process of any UI5 project. In addition to the [standard task list](https://github.com/SAP/ui5-builder/blob/master/README.md#tasks), custom tasks can be created. - -## Configuration of the Custom Build Process - -You can configure your build process with additional build task. The custom tasks can be defined in the project [configuration](https://github.com/SAP/ui5-project/blob/master/README.md#configuration) within the `ui5.yaml` file. - -In the below example, when building the library `my.library` the `babel` task will be executed before the standard task `generateComponentPreload`. Another custom task called `generateMarkdownFiles` is then executed immediatly after the standard task `uglify`. - -### Example: Configuration of project 'my.library' - -````yaml ---- -# In this example configuration two custom tasks are defined: 'babel' and 'generateMarkdownFiles'. -specVersion: "1.0" -type: library -metadata: - name: my.library -builder: - customTasks: - - name: babel - beforeTask: generateComponentPreload - - name: generateMarkdownFiles - afterTask: uglify - configuration: - color: blue -```` - -### Example: Connect multiple custom tasks - -You can also connect multiple custom task with each other. Please be aware that the order of your definitions is important. You have to make sure that the task is defined before you reference it as `beforeTask` or `afterTask`. - -````yaml ---- -# In this example 'myCustomTask2' gets executed after 'myCustomTask1'. -specVersion: "1.0" -type: library -metadata: - name: my.library -builder: - customTasks: - - name: myCustomTask1 - beforeTask: generateComponentPreload - - name: myCustomTask2 - afterTask: myCustomTask1 -```` - -## Custom Task Extension - -A custom task extension consists of a `ui5.yaml` and a [task implementation](#task-implementation). It can be a standalone module or part of an existing UI5 project. - -### Example: ui5.yaml - -````yaml ---- -specVersion: "1.0" -kind: extension -type: task -metadata: - name: generateMarkdownFiles -task: - path: lib/tasks/generateMarkdownFiles.js -```` - -Task extensions can be **standalone modules** which are handled as dependencies. - -On the other hand you can implement a task extension as **part of your UI5 project**. In that case, the configuration of the extension is part of your project configuration inside the `ui5.yaml` as shown below. - -The task extension will then be automatically collected and processed during the processing of the project. - -### Example: Custom Task Extension defined in UI5 project - -````yaml -# ui5.yaml configuration for the above example - -specVersion: "1.0" -kind: project -type: library -metadata: - name: my.library -builder: - customTasks: - - name: generateMarkdownFiles - afterTask: uglify - configuration: - color: blue ---- -# Task extension as part of your project -specVersion: "1.0" -kind: extension -type: task -metadata: - name: generateMarkdownFiles -task: - path: lib/tasks/generateMarkdownFiles.js -```` - -## Task Implementation - -A custom task implementation needs to return a function with the following signature: - -````javascript -/** - * Custom task example - * - * @param {Object} parameters Parameters - * @param {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files - * @param {module:@ui5/fs.AbstractReader} parameters.dependencies Reader or Collection to read dependency files - * @param {Object} parameters.options Options - * @param {string} parameters.options.projectName Project name - * @param {string} [parameters.options.configuration] Task configuration if given in ui5.yaml - * @returns {Promise} Promise resolving with undefined once data has been written - */ -module.exports = async function({workspace, dependencies, options}) { - // [...] -}; -```` - -The following code snippets shows an example how a task implementation could look like: - -### Example: lib/tasks/generateMarkdownFiles.js - -````javascript -// Task implementation -const markdownGenerator = require("./markdownGenerator"); - -module.exports = async function({workspace, dependencies, options}) { - const textResources = await workspace.byGlob("**/*.txt"); - const markdownResources = await markdownGenerator({ - resources: textResources - }); - await Promise.all(markdownResources.map((resource) => { - return workspace.write(resource); - })); -}; -```` +This documentation moved to a new place: [sap.github.io/ui5-tooling/pages/extensibility/CustomTasks/](https://sap.github.io/ui5-tooling/pages/extensibility/CustomTasks/) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 029d5b811c7..d5bfaa77b63 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -1,324 +1,2 @@ # Configuration -This document describes the configuration of UI5 Tooling based projects and extensions. - -The content represents the **[Specification Version](#specification-versions) `1.0`**. - -## Contents -- [Project Configuration](#project-configuration) -- [Extension Configuration](#extension-configuration) - + [Tasks](#tasks) - + [Project Shims](#project-shims) -- [Specification Versions](#specification-versions) - -## Project Configuration -Typically located in a `ui5.yaml` file per project. - -The preferred way of storing the configuration of a UI5 Tooling based project is a [YAML](https://yaml.org/) file named `ui5.yaml` inside that project. - -**Example** -````yaml ---- -specVersion: "1.0" -type: application -metadata: - name: my-application -```` - -Configuration can also be supplied by other means. In cases where JSON is used, you can still rely on the structure described below. - -### Structure - -````yaml ---- -specVersion: "1.0" -type: application|library|module -metadata: - name: some.project.name - copyright: |- - - * (c) Copyright 2009-${currentYear} -resources: - configuration: - paths: - "": "" - "": "" -builder: - customTasks: - - name: custom-task-name-1 - beforeTask: standard-task-name - configuration: - configuration-key: value - - name: custom-task-name-2 - afterTask: custom-task-name-1 - configuration: - color: blue - resources: - excludes: - - "/resources/some/project/name/test_results/**" - - "/test-resources/**" - - "!/test-resources/some/project/name/demo-app/**" - jsdoc: - excludes: - - "some/project/name/thirdparty/**" - cachebuster: - signatureType: time -server: - settings: - port: 8099 -```` - -### Properties -#### \ -- `specVersion`: Version of the specification this configuration is based on. See [Specification Versions](#specification-versions) -- `type`: Either `application`, `library` or `module`. Defines the default path mappings and build steps. See [UI5 Builder: Types](https://github.com/SAP/ui5-builder#types) for details - -#### metadata -Some general information: -- `name`: Name of the project -- `copyright` (optional): String to be used for replacement of copyright placeholders in the project - -#### resources (optional) -- `configuration` - - `paths`: Mapping between virtual paths and physical paths. Physical paths are always relative to the projects root directory - + `webapp: webapp`: This path will be mapped to the virtual path `/`. - *(Only available for projects of type `application`)* - + `src: src`: This path will be mapped to the virtual path `/resources`. - *(Only available for projects of type `library`)* - + `test: test`: This path will be mapped to the virtual path `/test-resources`. - *(Only available for projects of type `library`)* - + `: ` (default `/: ./`): Any virtual path mapping can be defined here. - *(Only available for projects of type `module`)* - It is recommended that modules include their namespace in the virtual path and use the `/resources` prefix (e.g. `/resources/my/first/library/module-xy`). - -#### builder (optional) -- `resources`: General resource configuration for this project - - `excludes`: List of glob patterns. Matching resources of this project will be ignored by the builder (i.e. all tasks). - Patterns are applied to the **virtual** path of resources (i.e. the UI5 runtime paths). Exclude patterns are always applied after any includes. -- `jsdoc`: Configuration specific to the JSDoc build task - - `excludes`: List of glob patterns. Matching resources will be ignored by the JSDoc build task. - Patterns are always applied relative to the projects virtual **source** directory `/resources/`. - Any general builder excludes (as defined in `builder.resources.excludes`) are applied *after* these excludes. -- `customTasks` (optional, list): In this block, you define additional custom build tasks, see [here](./BuildExtensibility.md) for a detailed explanation and examples of the build extensibility. Each entry in the `customTasks` list consists of the following options: - - `name` (mandatory): The name of the custom task - - `afterTask` or `beforeTask` (only one, mandatory): The name of the build task after or before which your custom task will be executed. - - `configuration` (optional): Additional configuration that is passed to the custom build task -- `cachebuster`: - - `signatureType`: `time` or `hash`. By default, the generated cachebuster info file signatures are based on timestamps (`time`). In setups like CI environments, a mechanism based on file hashes (`hash`) might be more reliable. - -#### server (optional) -- `settings` (not yet implemented) - - `port`: Project default server port; can be overwritten via CLI parameters - -## Extension Configuration -Extensions configuration can be added to any projects `ui5.yaml`. It should to be located *after* the projects configuration, separated by [three dashes](https://yaml.org/spec/1.2/spec.html#id2760395). - -In cases where an extension shall be reused across multiple projects you can make it a module itself and have its configuration in a standalone `ui5.yaml` located inside that module. - -Extensions can be identified by the `kind: extension` configuration. If no `kind` configuration is given, [`project`](#project-configuration) is assumed. - -### Tasks -See [Build Extensibility](./BuildExtensibility.md). - -### Project Shims -A project shim extension can be used to define or extend a project configuration of a module. The most popular use case is probably to add UI5 project configuration to a third party module that otherwise could not be used with the UI5 Tooling. - -Also see [RFC 0002 Project Shims](https://github.com/SAP/ui5-tooling/blob/master/rfcs/0002-project-shims.md). - -#### Structure -```yaml -specVersion: "1.0" -kind: extension -type: project-shim -metadata: - name: -shims: - configurations: - : - specVersion: "1.0", - type: - metadata: - name: - : - specVersion: "1.0", - type: - metadata: - name: - dependencies: - : - - - - - - - collections: - : - modules: - : - : - : -``` - -"module name" refers to the name of the module as identified by the used translator. E.g. when using the npm translator, the name declared in the modules `package.json` is used here. In most cases, the module name also becomes the internal ID of the project. - -#### Properties -##### configurations (optional) -Used to add configuration to any module. - -Map of module names. The values represent the configuration that should be applied to the module. - -**Note:** Configuration is applied to the module using [`Object.assign()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign). This means that existing configuration properties will be overwritten. - -##### dependencies (optional) -Used to add dependencies to any module. - -Map of module names. The value is an array of module names that this module depends on. Note that the other modules need to be part of the dependency tree of the root project (not as direct children, just somewhere). - -##### collections (optional) -Used when a dependency contains multiple modules. Also referred to as a [Monorepo](https://en.wikipedia.org/wiki/Monorepo). - -Map of module names. The values are objects with collection-specific configuration: -- `modules`: Map of project IDs and their relative file system paths inside the collection module. The project ID does not have to match the actual module name (as for instance defined in the modules `package.json`). UI5 Project will use it in place of a module name. - -#### Example A: -An application "my-application" defines a npm dependency to [lodash](https://lodash.com/) in its `package.json` and configures it by using a project-shim extension added to its `ui5.yaml`. - -**ui5.yaml** -```yaml -specVersion: "1.0" -type: application -metadata: - name: my.application ---- # Everything below this line could also be put into the ui5.yaml of a standalone extension module -specVersion: "1.0" -kind: extension -type: project-shim -metadata: - name: my.application.thirdparty -shims: - configurations: - lodash: # name as defined in package.json - specVersion: "1.0" - type: module # Use module type - metadata: - name: lodash - resources: - configuration: - paths: - /resources/my/application/thirdparty/: "" # map root directory of lodash module -``` - -#### Example B: -An application "application.a" depends on a library "legacy.library.a" which does not contain a `ui5.yaml` or `package.json` yet (nor do its dependencies). - -##### Structure of the legacy library directories (two repositories) -``` -legacy-libs/ - \_ src/ - \_ library.a/ - \_ src/ - \_ test/ - \_ library.b/ - \_ src/ - \_ test/ -legacy-library-x/ - \_ src/ - \_ test/ -``` - -##### Dependencies between the legacy libraries -``` -legacy.library.a depends on legacy.library.b -legacy.library.a depends on legacy.library.x - -legacy.library.b depends on legacy.library.x -``` - -##### application.a -**Directory structure** -``` -application-a/ - \_ node_modules/ - \_ legacy-libs/ - \_ legacy-library-x/ - \_ webapp/ - \_ ui5.yaml - \_ package.json -``` - -**package.json (extract)** -[napa](https://github.com/shama/napa) can install git repositories that are lacking a `package.json` with npm. Within `ui5-project`, the npm translator already detects dependencies defined in the `napa` section of a `package.json` and tries to resolve them. - -```json -{ - "scripts": { - "install": "napa" - }, - "napa": { - "legacy-libs": "", - "legacy-library-x": "" - } -} - -``` - -**ui5.yaml** -The shim defined in the application configures the legacy libraries and defines their dependencies. This shim might as well be a standalone module that is added to the applications dependencies. That would be the typical reuse scenario for shims. - -```yaml -specVersion: "1.0" -type: application -metadata: - name: application.a ----- -specVersion: "1.0" -kind: extension -type: project-shim -metadata: - name: legacy-lib-shims -shims: - configurations: - legacy-library-a: - specVersion: "1.0" - type: library - metadata: - name: legacy.library.a - legacy-library-b: - specVersion: "1.0" - type: library - metadata: - name: legacy.library.b - legacy-library-x: - specVersion: "1.0" - type: library - metadata: - name: legacy.library.x - dependencies: - legacy-library-a: - - legacy-library-b - - legacy-library-x - legacy-library-b: - - legacy-library-x - collections: - legacy-libs: - modules: - legacy-library-a: src/library.a - legacy-library-b: src/library.b -``` - -## Specification Versions -The specification version as configured in the `specVersion` property, defines the version a configuration is based on. - -### Compatibility Matrix - -Version | [UI5 CLI](https://github.com/SAP/ui5-cli) Release ---- | --- -**0.1** | v0.0.1+ -**1.0** | v1.0.0+ - -### Specification Version 0.1 -Initial version. - -Version 0.1 projects are compatible with [UI5 CLI](https://github.com/SAP/ui5-cli) v0.0.1 and above. - -### Specification Version 1.0 -First stable release. - -Version 1.0 projects are supported by [UI5 CLI](https://github.com/SAP/ui5-cli) v1.0.0 and above. +This documentation moved to a new place: [sap.github.io/ui5-tooling/pages/Configuration/](https://sap.github.io/ui5-tooling/pages/Configuration/) From d7b5cdabc180471c7d1bee9743e177ea249e5200 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 Jul 2019 17:33:33 +0200 Subject: [PATCH 0224/1272] [ui5-project][INTERNAL] Azure: Use Node v12 as latest in test matrix Node 11 went end-of-life in June: https://github.com/nodejs/Release#end-of-life-releases --- packages/project/azure-pipelines.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index a18da2979af..acdd36b1828 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -16,13 +16,13 @@ strategy: node_version: 10.x linux_node_latest: imageName: 'ubuntu-16.04' - node_version: 11.x + node_version: 12.x mac_node_latest: imageName: 'macos-10.13' - node_version: 11.x + node_version: 12.x windows_node_latest: imageName: 'vs2017-win2016' - node_version: 11.x + node_version: 12.x pool: vmImage: $(imageName) From c95ae363762dd1ded24ec185cc7e080fac88cb02 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 28 Jul 2019 04:28:23 +0000 Subject: [PATCH 0225/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2b03385dfaa..63216ad16b2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -3513,9 +3513,9 @@ "dev": true }, "import-local": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.1.tgz", - "integrity": "sha512-XlabwTJ9tPOdyjnGdGvxUMnUhmhlnJhdYjp5e8UDb2fO+5Gto1Frlg66ixVAf1Os+zQlrKt3QlTCVodyxYBZjQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", + "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", "dev": true, "requires": { "pkg-dir": "^4.2.0", @@ -5225,15 +5225,15 @@ } }, "package-json": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.4.0.tgz", - "integrity": "sha512-bd1T8OBG7hcvMd9c/udgv6u5v9wISP3Oyl9Cm7Weop8EFwrtcQDnS2sb6zhwqus2WslSr5wSTIPiTTpxxmPm7Q==", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", "dev": true, "requires": { "got": "^9.6.0", - "registry-auth-token": "^3.4.0", + "registry-auth-token": "^4.0.0", "registry-url": "^5.0.0", - "semver": "^6.1.1" + "semver": "^6.2.0" } }, "parent-module": { @@ -5699,12 +5699,12 @@ } }, "registry-auth-token": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", - "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.0.0.tgz", + "integrity": "sha512-lpQkHxd9UL6tb3k/aHAVfnVtn+Bcs9ob5InuFLLEDqSqeq+AljB8GZW9xY0x7F+xYwEcjKe07nyoxzEYz6yvkw==", "dev": true, "requires": { - "rc": "^1.1.6", + "rc": "^1.2.8", "safe-buffer": "^5.0.1" } }, @@ -5931,9 +5931,9 @@ "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" }, "semver": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.2.0.tgz", - "integrity": "sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A==" + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" }, "semver-diff": { "version": "2.1.0", From 5c589ecc1ce76e75af3a6c4ed76ef88563100a5a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 29 Jul 2019 16:56:34 +0200 Subject: [PATCH 0226/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.3.3 to 1.4.0 Changelog of this version: SAP/ui5-builder:CHANGELOG.md@v1.4.0 --- packages/project/package-lock.json | 16 +++++++++++----- packages/project/package.json | 2 +- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 63216ad16b2..04c55f6d698 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -496,18 +496,19 @@ "integrity": "sha512-aX+gFgA5GHcDi89KG5keey2zf0WfZk/HAQotEamsK2kbey+8yGKcson0hbK8E+v0NArlCJQCqMP161YhV6ZXLg==" }, "@ui5/builder": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.3.3.tgz", - "integrity": "sha512-YSgoKasQpndIJSsUIioVXKiaJmrrfYU486rvdS66lbNOJFzLsTygfMKV9vp7FBRIgjSqq8YZCVn2+oiNcb9jxA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.4.0.tgz", + "integrity": "sha512-gc3AVyOMHKKnXcTf9F/QP3S2E5+4flmXmuFAoD9tqlFXAfBcc+9CNJiuLJzj1keaClsVk/ZkMjkloo7Dpx50WA==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.1", "cheerio": "^0.22.0", + "escape-unicode": "^0.2.0", "escodegen": "^1.11.1", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "^4.2.0", - "globby": "^10.0.0", + "globby": "^10.0.1", "graceful-fs": "^4.2.0", "jsdoc": "3.5.5", "less-openui5": "^0.6.0", @@ -516,7 +517,7 @@ "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^2.6.3", - "semver": "^6.1.2", + "semver": "^6.3.0", "slash": "^3.0.0", "uglify-es": "^3.2.2", "xml2js": "^0.4.17", @@ -2523,6 +2524,11 @@ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, + "escape-unicode": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/escape-unicode/-/escape-unicode-0.2.0.tgz", + "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" + }, "escodegen": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 2892235e283..dbfeb9c65d7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.3.3", + "@ui5/builder": "^1.4.0", "@ui5/logger": "^1.0.1", "@ui5/server": "^1.2.0", "graceful-fs": "^4.2.0", From e82eb1d342dd9024e4ba23ed9299a0395036dbf0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 29 Jul 2019 19:22:52 +0200 Subject: [PATCH 0227/1272] [ui5-project][INTERNAL] Adapt project tests to new formatter behavior Application- and LibraryFormatter default the new "propertiesFileSourceEncoding" configuration to "ISO-8859-1" --- packages/project/test/lib/extensions.js | 11 ++++++ .../project/test/lib/projectPreprocessor.js | 34 +++++++++++++++++++ 2 files changed, 45 insertions(+) diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 7e10e44439a..c3a33fb9272 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -65,6 +65,7 @@ test("Project with project-shim extension with dependency configuration", (t) => }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { webapp: "webapp" } @@ -88,6 +89,7 @@ test("Project with project-shim extension with dependency configuration", (t) => }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "src", test: "test" @@ -176,6 +178,7 @@ test("Project with project-shim extension with dependency declaration and config }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { webapp: "webapp" } @@ -199,6 +202,7 @@ test("Project with project-shim extension with dependency declaration and config }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "src", test: "test" @@ -224,6 +228,7 @@ test("Project with project-shim extension with dependency declaration and config }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "src", test: "test" @@ -251,6 +256,7 @@ test("Project with project-shim extension with dependency declaration and config }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "src", test: "test" @@ -345,6 +351,7 @@ test("Project with project-shim extension with collection", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { webapp: "webapp" } @@ -368,6 +375,7 @@ test("Project with project-shim extension with collection", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "src", test: "test" @@ -393,6 +401,7 @@ test("Project with project-shim extension with collection", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "src", test: "test" @@ -420,6 +429,7 @@ test("Project with project-shim extension with collection", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "src", test: "test" @@ -474,6 +484,7 @@ test("Project with project-type extension dependency inline configuration", (t) }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { root: "" } diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 276312c3601..4e6b60ebceb 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -32,6 +32,7 @@ test("Project with inline configuration", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { webapp: "webapp" } @@ -67,6 +68,7 @@ test("Project with configPath", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { webapp: "webapp" } @@ -102,6 +104,7 @@ test("Project with ui5.yaml at default location", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { webapp: "webapp" } @@ -137,6 +140,7 @@ test("Project with ui5.yaml at default location and some configuration", (t) => }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { webapp: "src" } @@ -321,6 +325,7 @@ test("Ignores additional application-projects", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { webapp: "webapp" } @@ -362,6 +367,7 @@ test("Inconsistent dependencies with same ID", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "main/src", test: "main/test" @@ -409,6 +415,7 @@ test("Inconsistent dependencies with same ID", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { webapp: "webapp" } @@ -433,6 +440,7 @@ test("Inconsistent dependencies with same ID", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "main/src", test: "main/test" @@ -459,6 +467,7 @@ test("Inconsistent dependencies with same ID", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "src", test: "test" @@ -488,6 +497,7 @@ test("Inconsistent dependencies with same ID", (t) => { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "src", test: "test" @@ -629,6 +639,7 @@ const expectedTreeWithInvalidModules = { "_level": 1, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -655,6 +666,7 @@ const expectedTreeWithInvalidModules = { "_level": 1, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -676,6 +688,7 @@ const expectedTreeWithInvalidModules = { "kind": "project", "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "webapp": "webapp" } @@ -708,6 +721,7 @@ const treeAWithInlineConfigs = { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "main/src", test: "main/test" @@ -813,6 +827,7 @@ const expectedTreeAWithInlineConfigs = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "webapp": "webapp" } @@ -837,6 +852,7 @@ const expectedTreeAWithInlineConfigs = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "main/src", "test": "main/test" @@ -863,6 +879,7 @@ const expectedTreeAWithInlineConfigs = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -892,6 +909,7 @@ const expectedTreeAWithInlineConfigs = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -923,6 +941,7 @@ const expectedTreeAWithConfigPaths = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "webapp": "webapp" } @@ -948,6 +967,7 @@ const expectedTreeAWithConfigPaths = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "main/src", "test": "main/test" @@ -975,6 +995,7 @@ const expectedTreeAWithConfigPaths = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -1005,6 +1026,7 @@ const expectedTreeAWithConfigPaths = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -1052,6 +1074,7 @@ const treeBWithInlineConfigs = { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "main/src", test: "main/test" @@ -1085,6 +1108,7 @@ const treeBWithInlineConfigs = { }, resources: { configuration: { + propertiesFileSourceEncoding: "ISO-8859-1", paths: { src: "main/src", test: "main/test" @@ -1122,6 +1146,7 @@ const expectedTreeBWithInlineConfigs = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "webapp": "webapp" } @@ -1146,6 +1171,7 @@ const expectedTreeBWithInlineConfigs = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -1172,6 +1198,7 @@ const expectedTreeBWithInlineConfigs = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "main/src", "test": "main/test" @@ -1198,6 +1225,7 @@ const expectedTreeBWithInlineConfigs = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -1229,6 +1257,7 @@ const expectedTreeBWithInlineConfigs = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "main/src", "test": "main/test" @@ -1255,6 +1284,7 @@ const expectedTreeBWithInlineConfigs = { }, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -1407,6 +1437,7 @@ const expectedTreeApplicationCycleA = { "_level": 2, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -1446,6 +1477,7 @@ const expectedTreeApplicationCycleA = { "_level": 2, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -1474,6 +1506,7 @@ const expectedTreeApplicationCycleA = { "_level": 1, "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "src": "src", "test": "test" @@ -1490,6 +1523,7 @@ const expectedTreeApplicationCycleA = { "kind": "project", "resources": { "configuration": { + "propertiesFileSourceEncoding": "ISO-8859-1", "paths": { "webapp": "webapp" } From 0ddbce574c8133a5e8f275d58b9113f038ebd9e0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 31 Jul 2019 15:34:21 +0000 Subject: [PATCH 0228/1272] [ui5-project][INTERNAL] Bump @ui5/server from 1.2.0 to 1.3.0 Changelog of this version: https://github.com/SAP/ui5-server/blob/v1.3.0/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 04c55f6d698..82aa2028e13 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -572,11 +572,11 @@ } }, "@ui5/server": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.2.0.tgz", - "integrity": "sha512-enMatnsimYXwoHPsr99NssCVcie+VNU91Y2trQR9VHoqgZu13kZWDFwl3JttHoHmMZaBedpnU1h58GvLVXj8aQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.3.0.tgz", + "integrity": "sha512-WLHDhFnseWZC+e+wrz/Wu5LwWBHVrXx1Fg7xJ4PK/bn63VDCFRBNdJ8wMC20TbxJjkZxSH9EWUZRDmo7hkhX4w==", "requires": { - "@ui5/builder": "^1.3.3", + "@ui5/builder": "^1.4.0", "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.1", "compression": "^1.7.4", diff --git a/packages/project/package.json b/packages/project/package.json index dbfeb9c65d7..856cb38133e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,7 +98,7 @@ "dependencies": { "@ui5/builder": "^1.4.0", "@ui5/logger": "^1.0.1", - "@ui5/server": "^1.2.0", + "@ui5/server": "^1.3.0", "graceful-fs": "^4.2.0", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", From 63815eade94e1fd516fe54d354373b9fea4235be Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 4 Aug 2019 04:23:19 +0000 Subject: [PATCH 0229/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 54 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 82aa2028e13..cd5c22421f1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -491,9 +491,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.6.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.6.8.tgz", - "integrity": "sha512-aX+gFgA5GHcDi89KG5keey2zf0WfZk/HAQotEamsK2kbey+8yGKcson0hbK8E+v0NArlCJQCqMP161YhV6ZXLg==" + "version": "12.6.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.6.9.tgz", + "integrity": "sha512-+YB9FtyxXGyD54p8rXwWaN1EWEyar5L58GlGWgtH2I9rGmLGBQcw63+0jw+ujqVavNuO47S1ByAjm9zdHMnskw==" }, "@ui5/builder": { "version": "1.4.0", @@ -684,9 +684,9 @@ } }, "ansi-escapes": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.2.0.tgz", - "integrity": "sha512-0+VX4uhi8m3aNbzoqKmkAVOEj6uQzcUHXoFPkKjhZPTpGRUBqVh930KbB6PS4zIyDZccphlLIYlu8nsjFzkXwg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.2.1.tgz", + "integrity": "sha512-Cg3ymMAdN10wOk/VYfLV7KCQyv7EDirJ64500sU7n9UlmioEtDuU5Gd+hj73hXSU/ex7tHJSssmyftDdkMLO8Q==", "dev": true, "requires": { "type-fest": "^0.5.2" @@ -1504,9 +1504,9 @@ } }, "clean-stack": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.1.0.tgz", - "integrity": "sha512-uQWrpRm+iZZUCAp7ZZJQbd4Za9I3AjR/3YTjmcnAtkauaIm/T5CT6U8zVI6e60T6OANqBFAzuR9/HB3NzuZCRA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", "dev": true }, "clean-yaml-object": { @@ -2776,9 +2776,9 @@ "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" }, "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, "etag": { "version": "1.8.1", @@ -4651,9 +4651,9 @@ } }, "merge2": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.3.tgz", - "integrity": "sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA==" + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.4.tgz", + "integrity": "sha512-FYE8xI+6pjFOhokZu0We3S5NKCirLbCzSh2Usf3qEyr4X8U+0jNg9P8RZ4qz+V2UoECLVwSyzU3LxXBaLGtD3A==" }, "methods": { "version": "1.1.2", @@ -5513,9 +5513,9 @@ "dev": true }, "psl": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.2.0.tgz", - "integrity": "sha512-GEn74ZffufCmkDDLNcl3uuyF/aSD6exEyh1v/ZSdAomB82t6G9hzJVRx0jBmLDW+VfZqks3aScmMw9DszwUalA==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.3.0.tgz", + "integrity": "sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag==" }, "pump": { "version": "3.0.0", @@ -5829,9 +5829,9 @@ } }, "resolve": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.1.tgz", - "integrity": "sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", + "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", "requires": { "path-parse": "^1.0.6" } @@ -6114,9 +6114,9 @@ } }, "source-map-support": { - "version": "0.5.12", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", - "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -6357,9 +6357,9 @@ "dev": true }, "table": { - "version": "5.4.4", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.4.tgz", - "integrity": "sha512-IIfEAUx5QlODLblLrGTTLJA7Tk0iLSGBvgY8essPRVNGHAzThujww1YqHLs6h3HfTg55h++RzLHH5Xw/rfv+mg==", + "version": "5.4.5", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.5.tgz", + "integrity": "sha512-oGa2Hl7CQjfoaogtrOHEJroOcYILTx7BZWLGsJIlzoWmB2zmguhNfPJZsWPKYek/MgCxfco54gEi31d1uN2hFA==", "dev": true, "requires": { "ajv": "^6.10.2", diff --git a/packages/project/package.json b/packages/project/package.json index 856cb38133e..63eda405fea 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,7 +105,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.11.1" + "resolve": "^1.12.0" }, "devDependencies": { "ava": "^2.1.0", From 75112f5a8e1b8bf0688741e581518d92986e790a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 11 Aug 2019 04:31:38 +0000 Subject: [PATCH 0230/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 124 ++++++++++++++++++----------- packages/project/package.json | 6 +- 2 files changed, 82 insertions(+), 48 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index cd5c22421f1..b852ba04037 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -491,9 +491,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.6.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.6.9.tgz", - "integrity": "sha512-+YB9FtyxXGyD54p8rXwWaN1EWEyar5L58GlGWgtH2I9rGmLGBQcw63+0jw+ujqVavNuO47S1ByAjm9zdHMnskw==" + "version": "12.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.1.tgz", + "integrity": "sha512-aK9jxMypeSrhiYofWWBf/T7O+KwaiAHzM4sveCdWPn71lzUSMimRnKzhXDKfKwV1kWoBo2P1aGgaIYGLf9/ljw==" }, "@ui5/builder": { "version": "1.4.0", @@ -1090,9 +1090,9 @@ "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==" }, "blueimp-md5": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.11.0.tgz", - "integrity": "sha512-xvA4mdnIevstCvNKTRLMOKi7L76U/X/CTs9Yz+PLWmWAC/7SuYi5Xv2J7bAhJnE2+LcLv+x4+0vusvKgM9LnZQ==", + "version": "2.11.1", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.11.1.tgz", + "integrity": "sha512-4UiOAmql2XO0Sws07OVzYdCKK0K2Va5g6AVgYXoGhEQiKrdSOefjUCm1frPk6E+xiIOHRqaFg+TUGo7cClKg5g==", "dev": true }, "body-parser": { @@ -1912,9 +1912,9 @@ } }, "coveralls": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.5.tgz", - "integrity": "sha512-/KD7PGfZv/tjKB6LoW97jzIgFqem0Tu9tZL9/iwBnBd8zkIZp7vT1ZSHNvnr0GSQMV/LTMxUstWg8WcDDUVQKg==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.6.tgz", + "integrity": "sha512-Pgh4v3gCI4T/9VijVrm8Ym5v0OgjvGLKj3zTUwkvsCiwqae/p6VLzpsFNjQS2i6ewV7ef+DjFJ5TSKxYt/mCrA==", "dev": true, "requires": { "growl": "~> 1.10.0", @@ -2010,6 +2010,24 @@ "lru-cache": "^4.0.1", "shebang-command": "^1.2.0", "which": "^1.2.9" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } } }, "crypto-random-string": { @@ -3089,6 +3107,22 @@ "lru-cache": "^4.0.1", "which": "^1.2.9" } + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true } } }, @@ -3268,9 +3302,9 @@ } }, "graceful-fs": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", - "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==" + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.1.tgz", + "integrity": "sha512-b9usnbDGnD928gJB3LrCmxoibr3VE4U2SMo5PBuBnokWyDADTqDPXg4YpwKF1trpH+UbGp7QLicO3+aWEy0+mw==" }, "growl": { "version": "1.10.5", @@ -3380,9 +3414,12 @@ } }, "hosted-git-info": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", - "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==" + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.2.tgz", + "integrity": "sha512-CyjlXII6LMsPMyUzxpTt8fzh5QwzGqPmQXgY/Jyf4Zfp27t/FvfhwoE/8laaMUcMy816CkWF20I7NeQhwwY88w==", + "requires": { + "lru-cache": "^5.1.1" + } }, "hpack.js": { "version": "2.1.6", @@ -4442,9 +4479,9 @@ } }, "lolex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.1.0.tgz", - "integrity": "sha512-BYxIEXiVq5lGIXeVHnsFzqa1TxN5acnKnPCdlZSpzm8viNEOhiigupA4vTQ9HEFQ6nLTQ9wQOgBknJgzUYQ9Aw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", + "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", "dev": true }, "loud-rejection": { @@ -4464,13 +4501,11 @@ "dev": true }, "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "yallist": "^3.0.2" } }, "make-dir": { @@ -4803,12 +4838,12 @@ "dev": true }, "nise": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.0.tgz", - "integrity": "sha512-Z3sfYEkLFzFmL8KY6xnSJLRxwQwYBjOXi/24lb62ZnZiGA0JUzGGTI6TBIgfCSMIDl9Jlu8SRmHNACLTemDHww==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.1.tgz", + "integrity": "sha512-edFWm0fsFG2n318rfEnKlTZTkjlbVOFF9XIA+fj+Ed+Qz1laYW2lobwavWoMzGrYDHH1EpiNJgDfvGnkZztR/g==", "dev": true, "requires": { - "@sinonjs/formatio": "^3.1.0", + "@sinonjs/formatio": "^3.2.1", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "lolex": "^4.1.0", @@ -5691,13 +5726,13 @@ "dev": true }, "regexpu-core": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.4.tgz", - "integrity": "sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ==", + "version": "4.5.5", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.5.tgz", + "integrity": "sha512-FpI67+ky9J+cDizQUJlIlNZFKual/lUkFr1AG6zOCpwZ9cLrg8UUVakyUQJD7fCDIe9Z2nwTQJNPyonatNmDFQ==", "dev": true, "requires": { "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.0.2", + "regenerate-unicode-properties": "^8.1.0", "regjsgen": "^0.5.0", "regjsparser": "^0.6.0", "unicode-match-property-ecmascript": "^1.0.4", @@ -6038,17 +6073,17 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, "sinon": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.3.2.tgz", - "integrity": "sha512-thErC1z64BeyGiPvF8aoSg0LEnptSaWE7YhdWWbWXgelOyThent7uKOnnEh9zBxDbKixtr5dEko+ws1sZMuFMA==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.4.1.tgz", + "integrity": "sha512-7s9buHGHN/jqoy/v4bJgmt0m1XEkCEd/tqdHXumpBp0JSujaT4Ng84JU5wDdK4E85ZMq78NuDe0I3NAqXY8TFg==", "dev": true, "requires": { "@sinonjs/commons": "^1.4.0", "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.3.1", + "@sinonjs/samsam": "^3.3.2", "diff": "^3.5.0", - "lolex": "^4.0.1", - "nise": "^1.4.10", + "lolex": "^4.2.0", + "nise": "^1.5.1", "supports-color": "^5.5.0" }, "dependencies": { @@ -6692,9 +6727,9 @@ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" }, "type": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/type/-/type-1.0.1.tgz", - "integrity": "sha512-MAM5dBMJCJNKs9E7JXo4CXRAansRfG0nlJxW7Wf6GZzSOvH31zClSaHdIMWLehe/EGMBkqeC55rrkaOr5Oo7Nw==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/type/-/type-1.0.3.tgz", + "integrity": "sha512-51IMtNfVcee8+9GJvj0spSuFcZHe9vSib6Xtgsny1Km9ugyz2mbS08I3rsUIRYgJohFRFU1160sgRodYz378Hg==" }, "type-check": { "version": "0.3.2", @@ -7169,10 +7204,9 @@ "dev": true }, "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==" }, "yargs": { "version": "13.3.0", diff --git a/packages/project/package.json b/packages/project/package.json index 63eda405fea..7111243b2d3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -99,7 +99,7 @@ "@ui5/builder": "^1.4.0", "@ui5/logger": "^1.0.1", "@ui5/server": "^1.3.0", - "graceful-fs": "^4.2.0", + "graceful-fs": "^4.2.1", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", @@ -109,7 +109,7 @@ }, "devDependencies": { "ava": "^2.1.0", - "coveralls": "^3.0.5", + "coveralls": "^3.0.6", "cross-env": "^5.2.0", "docdash": "^1.1.1", "eslint": "^5.16.0", @@ -119,7 +119,7 @@ "nyc": "^14.1.1", "open-cli": "^5.0.0", "rimraf": "^2.6.3", - "sinon": "^7.3.2", + "sinon": "^7.4.1", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 5ab862a106adc40a79d038eede356b2c5a6c0da2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 18 Aug 2019 04:31:57 +0000 Subject: [PATCH 0231/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 391 +++++++++++------------------ packages/project/package.json | 6 +- 2 files changed, 150 insertions(+), 247 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b852ba04037..81508cc2db9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -79,9 +79,9 @@ "dev": true }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, "source-map": { @@ -491,14 +491,14 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.1.tgz", - "integrity": "sha512-aK9jxMypeSrhiYofWWBf/T7O+KwaiAHzM4sveCdWPn71lzUSMimRnKzhXDKfKwV1kWoBo2P1aGgaIYGLf9/ljw==" + "version": "12.7.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.2.tgz", + "integrity": "sha512-dyYO+f6ihZEtNPDcWNR1fkoTDf3zAK3lAABDze3mz6POyIercH0lEUawUFXlG8xaQZmm1yEBON/4TsYv/laDYg==" }, "@ui5/builder": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.4.0.tgz", - "integrity": "sha512-gc3AVyOMHKKnXcTf9F/QP3S2E5+4flmXmuFAoD9tqlFXAfBcc+9CNJiuLJzj1keaClsVk/ZkMjkloo7Dpx50WA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.4.1.tgz", + "integrity": "sha512-YiPYx76g7bNGK7dMmPI/W5Ctns9Alu0QD+j+DZE4nf6oAMShc2rDeJ7cRajzsUS0pimkFcr68sHiwQ7Fa+e9Dg==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.1", @@ -507,9 +507,9 @@ "escodegen": "^1.11.1", "escope": "^3.6.0", "esprima": "^4.0.1", - "estraverse": "^4.2.0", + "estraverse": "^4.3.0", "globby": "^10.0.1", - "graceful-fs": "^4.2.0", + "graceful-fs": "^4.2.1", "jsdoc": "3.5.5", "less-openui5": "^0.6.0", "make-dir": "^3.0.0", @@ -519,7 +519,7 @@ "rimraf": "^2.6.3", "semver": "^6.3.0", "slash": "^3.0.0", - "uglify-es": "^3.2.2", + "terser": "^4.1.4", "xml2js": "^0.4.17", "yazl": "^2.5.1" }, @@ -606,9 +606,9 @@ } }, "acorn": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.1.tgz", - "integrity": "sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz", + "integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==", "dev": true }, "acorn-jsx": { @@ -1222,8 +1222,7 @@ "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, "bytes": { "version": "3.0.0", @@ -1312,9 +1311,9 @@ "dev": true }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, "write-file-atomic": { @@ -1778,9 +1777,9 @@ } }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } @@ -1963,9 +1962,9 @@ "dev": true }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } @@ -1994,9 +1993,9 @@ } }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } @@ -2010,24 +2009,6 @@ "lru-cache": "^4.0.1", "shebang-command": "^1.2.0", "which": "^1.2.9" - }, - "dependencies": { - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - } } }, "crypto-random-string": { @@ -2548,9 +2529,9 @@ "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" }, "escodegen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", - "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz", + "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==", "requires": { "esprima": "^3.1.3", "estraverse": "^4.2.0", @@ -2662,9 +2643,9 @@ "dev": true }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, "strip-ansi": { @@ -2715,9 +2696,9 @@ } }, "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", + "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", "dev": true }, "esm": { @@ -2789,9 +2770,9 @@ } }, "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" }, "esutils": { "version": "2.0.3", @@ -3033,9 +3014,9 @@ } }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } @@ -3057,6 +3038,17 @@ "flatted": "^2.0.0", "rimraf": "2.6.3", "write": "1.0.3" + }, + "dependencies": { + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, "flatted": { @@ -3107,22 +3099,6 @@ "lru-cache": "^4.0.1", "which": "^1.2.9" } - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true } } }, @@ -3302,9 +3278,9 @@ } }, "graceful-fs": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.1.tgz", - "integrity": "sha512-b9usnbDGnD928gJB3LrCmxoibr3VE4U2SMo5PBuBnokWyDADTqDPXg4YpwKF1trpH+UbGp7QLicO3+aWEy0+mw==" + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz", + "integrity": "sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==" }, "growl": { "version": "1.10.5", @@ -3327,26 +3303,6 @@ "optimist": "^0.6.1", "source-map": "^0.6.1", "uglify-js": "^3.1.4" - }, - "dependencies": { - "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", - "dev": true, - "optional": true - }, - "uglify-js": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz", - "integrity": "sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==", - "dev": true, - "optional": true, - "requires": { - "commander": "~2.20.0", - "source-map": "~0.6.1" - } - } } }, "har-schema": { @@ -3414,12 +3370,9 @@ } }, "hosted-git-info": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.2.tgz", - "integrity": "sha512-CyjlXII6LMsPMyUzxpTt8fzh5QwzGqPmQXgY/Jyf4Zfp27t/FvfhwoE/8laaMUcMy816CkWF20I7NeQhwwY88w==", - "requires": { - "lru-cache": "^5.1.1" - } + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.4.tgz", + "integrity": "sha512-pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ==" }, "hpack.js": { "version": "2.1.6", @@ -3521,9 +3474,9 @@ } }, "ignore": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.2.tgz", - "integrity": "sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ==" + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.4.tgz", + "integrity": "sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A==" }, "ignore-by-default": { "version": "1.0.1", @@ -3598,112 +3551,47 @@ "dev": true }, "inquirer": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.0.tgz", - "integrity": "sha512-scfHejeG/lVZSpvCXpsB4j/wQNPM5JC8kiElOI0OUTwmc1RTpXr4H32/HOlQHcZiYl2z2VElwuCVDRG8vFmbnA==", + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.1.tgz", + "integrity": "sha512-uxNHBeQhRXIoHWTSNYUFhQVrHYFThIt6IVo2fFmSe8aBwdR3/w6b58hJpiL/fMukFkvGzjg+hSxFtwvVmKZmXw==", "dev": true, "requires": { - "ansi-escapes": "^3.2.0", + "ansi-escapes": "^4.2.1", "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", + "cli-cursor": "^3.1.0", "cli-width": "^2.0.0", "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.12", - "mute-stream": "0.0.7", + "figures": "^3.0.0", + "lodash": "^4.17.15", + "mute-stream": "0.0.8", "run-async": "^2.2.0", "rxjs": "^6.4.0", - "string-width": "^2.1.0", + "string-width": "^4.1.0", "strip-ansi": "^5.1.0", "through": "^2.3.6" }, "dependencies": { - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.1.0.tgz", + "integrity": "sha512-NrX+1dVVh+6Y9dnQ19pR0pP4FiEIlUvdTGn8pw6CKTNq5sgib2nIhmUNT5TAmhWmvKr3WcxBcP3E8nWezuipuQ==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^5.2.0" } }, "strip-ansi": { @@ -3713,14 +3601,6 @@ "dev": true, "requires": { "ansi-regex": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - } } } } @@ -4004,9 +3884,9 @@ "dev": true }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, "supports-color": { @@ -4065,9 +3945,9 @@ "dev": true }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } @@ -4501,11 +4381,13 @@ "dev": true }, "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, "requires": { - "yallist": "^3.0.2" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, "make-dir": { @@ -4879,9 +4761,9 @@ }, "dependencies": { "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" } } }, @@ -4994,9 +4876,9 @@ "dev": true }, "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, "yargs-parser": { @@ -5678,9 +5560,9 @@ } }, "readdirp": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.1.1.tgz", - "integrity": "sha512-XXdSXZrQuvqoETj50+JAitxz1UPdt5dupjT6T5nVB+WvjMv2XKYj+s7hPeAVCXvmJrL36O4YYyWlIC3an2ePiQ==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.1.2.tgz", + "integrity": "sha512-8rhl0xs2cxfVsqzreYCvs8EwBfn/DhVdqtoLmw19uI3SC5avYX9teCurlErfpPXGmYtMHReGaP2RsLnFvz/lnw==", "dev": true, "requires": { "picomatch": "^2.0.4" @@ -5921,9 +5803,9 @@ "integrity": "sha1-/s5hv6DBtSoga9axgZgYS91SOjs=" }, "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "requires": { "glob": "^7.1.3" } @@ -5986,9 +5868,9 @@ }, "dependencies": { "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } @@ -6152,7 +6034,6 @@ "version": "0.5.13", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - "dev": true, "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -6392,9 +6273,9 @@ "dev": true }, "table": { - "version": "5.4.5", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.5.tgz", - "integrity": "sha512-oGa2Hl7CQjfoaogtrOHEJroOcYILTx7BZWLGsJIlzoWmB2zmguhNfPJZsWPKYek/MgCxfco54gEi31d1uN2hFA==", + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", "dev": true, "requires": { "ajv": "^6.10.2", @@ -6594,6 +6475,23 @@ "execa": "^0.7.0" } }, + "terser": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.1.4.tgz", + "integrity": "sha512-+ZwXJvdSwbd60jG0Illav0F06GDJF0R4ydZ21Q3wGAFKoBGyJGo34F63vzJHgvYxc1ukOtIjvwEvl9MkjzM6Pg==", + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==" + } + } + }, "test-exclude": { "version": "5.2.3", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", @@ -6775,19 +6673,23 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", "dev": true }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "uglify-js": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz", + "integrity": "sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==", + "dev": true, + "optional": true, "requires": { - "commander": "~2.13.0", + "commander": "~2.20.0", "source-map": "~0.6.1" }, "dependencies": { "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==" + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true, + "optional": true } } }, @@ -7204,9 +7106,10 @@ "dev": true }, "yallist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true }, "yargs": { "version": "13.3.0", diff --git a/packages/project/package.json b/packages/project/package.json index 7111243b2d3..4ef1a6fa2fb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,10 +96,10 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.4.0", + "@ui5/builder": "^1.4.1", "@ui5/logger": "^1.0.1", "@ui5/server": "^1.3.0", - "graceful-fs": "^4.2.1", + "graceful-fs": "^4.2.2", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", @@ -118,7 +118,7 @@ "jsdoc": "^3.6.3", "nyc": "^14.1.1", "open-cli": "^5.0.0", - "rimraf": "^2.6.3", + "rimraf": "^2.7.1", "sinon": "^7.4.1", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" From ff79ddc676fc4ad954973329f22dd0a3bb6963e4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 19 Aug 2019 20:21:15 +0000 Subject: [PATCH 0232/1272] [ui5-project]Bump ava from 2.2.0 to 2.3.0 Bumps [ava](https://github.com/avajs/ava) from 2.2.0 to 2.3.0. - [Release notes](https://github.com/avajs/ava/releases) - [Commits](https://github.com/avajs/ava/compare/v2.2.0...v2.3.0) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 70 +++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 40 insertions(+), 32 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 81508cc2db9..8994e755806 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,30 +5,31 @@ "requires": true, "dependencies": { "@ava/babel-plugin-throws-helper": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-3.0.0.tgz", - "integrity": "sha512-mN9UolOs4WX09QkheU1ELkVy2WPnwonlO3XMdN8JF8fQqRVgVTR21xDbvEOUsbwz6Zwjq7ji9yzyjuXqDPalxg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-4.0.0.tgz", + "integrity": "sha512-3diBLIVBPPh3j4+hb5lo0I1D+S/O/VDJPI4Y502apBxmwEqjyXG4gTSPFUlm41sSZeZzMarT/Gzovw9kV7An0w==", "dev": true }, "@ava/babel-preset-stage-4": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-3.0.0.tgz", - "integrity": "sha512-uI5UBx++UsckkfnbF0HH6jvTIvM4r/Kxt1ROO2YXKu5H15sScAtxUIAHiUVbPIw24zPqz/PlF3xxlIDuyFzlQw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-4.0.0.tgz", + "integrity": "sha512-lZEV1ZANzfzSYBU6WHSErsy7jLPbD1iIgAboASPMcKo7woVni5/5IKWeT0RxC8rY802MFktur3OKEw2JY1Tv2w==", "dev": true, "requires": { "@babel/plugin-proposal-async-generator-functions": "^7.2.0", + "@babel/plugin-proposal-dynamic-import": "^7.5.0", "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", - "@babel/plugin-transform-dotall-regex": "^7.4.3", - "@babel/plugin-transform-modules-commonjs": "^7.4.3" + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/plugin-transform-modules-commonjs": "^7.5.0" } }, "@ava/babel-preset-transform-test-files": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-5.0.0.tgz", - "integrity": "sha512-rqgyQwkT0+j2JzYP51dOv80u33rzAvjBtXRzUON+7+6u26mjoudRXci2+1s18rat8r4uOlZfbzm114YS6pwmYw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-6.0.0.tgz", + "integrity": "sha512-8eKhFzZp7Qcq1VLfoC75ggGT8nQs9q8fIxltU47yCB7Wi7Y8Qf6oqY1Bm0z04fIec24vEgr0ENhDHEOUGVDqnA==", "dev": true, "requires": { - "@ava/babel-plugin-throws-helper": "^3.0.0", + "@ava/babel-plugin-throws-helper": "^4.0.0", "babel-plugin-espower": "^3.0.1" } }, @@ -263,6 +264,16 @@ "@babel/plugin-syntax-async-generators": "^7.2.0" } }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.5.0.tgz", + "integrity": "sha512-x/iMjggsKTFHYC6g11PL7Qy58IK8H5zqfm9e6hu4z1iH2IRyAp9u9dL80zA6R76yFovETFLKz2VJIC2iIPBuFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-dynamic-import": "^7.2.0" + } + }, "@babel/plugin-proposal-optional-catch-binding": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", @@ -282,10 +293,10 @@ "@babel/helper-plugin-utils": "^7.0.0" } }, - "@babel/plugin-syntax-object-rest-spread": { + "@babel/plugin-syntax-dynamic-import": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", - "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz", + "integrity": "sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0" @@ -856,20 +867,17 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-2.2.0.tgz", - "integrity": "sha512-lROj3eQ8L4ZjfiN5P8UGekEQLfKmseGMtat6pUOHgJLEb2K1kT0ZpR/IlWwuytjvwO6nZpzpD+QsTW/XiayIgg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-2.3.0.tgz", + "integrity": "sha512-4VaaSnl13vpTZmqW3aMqioSolT0/ozRkjQxTLi3p8wtyRONuX/uLKL3uF0j50w2BNRoLsJqztnkX2h8xeVp2lg==", "dev": true, "requires": { - "@ava/babel-preset-stage-4": "^3.0.0", - "@ava/babel-preset-transform-test-files": "^5.0.0", - "@babel/core": "^7.5.0", - "@babel/generator": "^7.5.0", - "@babel/plugin-syntax-async-generators": "^7.2.0", - "@babel/plugin-syntax-object-rest-spread": "^7.2.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", + "@ava/babel-preset-stage-4": "^4.0.0", + "@ava/babel-preset-transform-test-files": "^6.0.0", + "@babel/core": "^7.5.5", + "@babel/generator": "^7.5.5", "@concordance/react": "^2.0.0", - "ansi-escapes": "^4.2.0", + "ansi-escapes": "^4.2.1", "ansi-styles": "^4.0.0", "arr-flatten": "^1.1.0", "array-union": "^2.1.0", @@ -880,7 +888,7 @@ "chokidar": "^3.0.2", "chunkd": "^1.0.0", "ci-parallel-vars": "^1.0.0", - "clean-stack": "^2.1.0", + "clean-stack": "^2.2.0", "clean-yaml-object": "^0.1.0", "cli-cursor": "^3.1.0", "cli-truncate": "^2.0.0", @@ -902,18 +910,18 @@ "get-port": "^5.0.0", "globby": "^10.0.1", "ignore-by-default": "^1.0.0", - "import-local": "^3.0.1", + "import-local": "^3.0.2", "indent-string": "^4.0.0", "is-ci": "^2.0.0", "is-error": "^2.2.2", "is-observable": "^2.0.0", "is-plain-object": "^3.0.0", "is-promise": "^2.1.0", - "lodash": "^4.17.11", + "lodash": "^4.17.15", "loud-rejection": "^2.1.0", "make-dir": "^3.0.0", "matcher": "^2.0.0", - "md5-hex": "^3.0.0", + "md5-hex": "^3.0.1", "meow": "^5.0.0", "micromatch": "^4.0.2", "ms": "^2.1.2", @@ -926,7 +934,7 @@ "require-precompiled": "^0.1.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", - "source-map-support": "^0.5.12", + "source-map-support": "^0.5.13", "stack-utils": "^1.0.2", "strip-ansi": "^5.2.0", "strip-bom-buf": "^2.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 4ef1a6fa2fb..2784323535b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -108,7 +108,7 @@ "resolve": "^1.12.0" }, "devDependencies": { - "ava": "^2.1.0", + "ava": "^2.3.0", "coveralls": "^3.0.6", "cross-env": "^5.2.0", "docdash": "^1.1.1", From b4130d3eae8e4280b7d26cc2baf405f85f2ef3c5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 20 Aug 2019 08:50:48 +0000 Subject: [PATCH 0233/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 40 +++++++++++++++--------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8994e755806..58fb2ec650b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -437,9 +437,9 @@ "dev": true }, "@sinonjs/commons": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz", - "integrity": "sha512-9jHK3YF/8HtJ9wCAbG+j8cD0i0+ATS9A7gXFqS36TblLPNy6rEEc+SB0imo91eCboGaBYGV/MT1/br/J+EE7Tw==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.6.0.tgz", + "integrity": "sha512-w4/WHG7C4WWFyE5geCieFJF6MZkbW4VAriol5KlmQXpAQdxvV0p26sqNZOW6Qyw6Y0l9K4g+cHvvczR2sEEpqg==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -456,14 +456,14 @@ } }, "@sinonjs/samsam": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.2.tgz", - "integrity": "sha512-ILO/rR8LfAb60Y1Yfp9vxfYAASK43NFC2mLzpvLUbCQY/Qu8YwReboseu8aheCEkyElZF2L2T9mHcR2bgdvZyA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", + "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", "dev": true, "requires": { - "@sinonjs/commons": "^1.0.2", + "@sinonjs/commons": "^1.3.0", "array-from": "^2.1.1", - "lodash": "^4.17.11" + "lodash": "^4.17.15" } }, "@sinonjs/text-encoding": { @@ -718,9 +718,9 @@ }, "dependencies": { "color-convert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.0.tgz", - "integrity": "sha512-hzTicsCJIHdxih9+2aLR1tNGZX5qSJGRHDPVwSY26tVrEf55XNajLOBWz2UuWSIergszA09/bqnOiHyqx9fxQg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { "color-name": "~1.1.4" @@ -5117,9 +5117,9 @@ "dev": true }, "p-limit": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", "requires": { "p-try": "^2.0.0" } @@ -6484,9 +6484,9 @@ } }, "terser": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.1.4.tgz", - "integrity": "sha512-+ZwXJvdSwbd60jG0Illav0F06GDJF0R4ydZ21Q3wGAFKoBGyJGo34F63vzJHgvYxc1ukOtIjvwEvl9MkjzM6Pg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.2.0.tgz", + "integrity": "sha512-6lPt7lZdZ/13icQJp8XasFOwZjFJkxFFIb/N1fhYEQNoNI3Ilo3KABZ9OocZvZoB39r6SiIk/0+v/bt8nZoSeA==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -6838,9 +6838,9 @@ "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", + "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==" }, "validate-npm-package-license": { "version": "3.0.4", From 296532657fe1a4728a430f2f9df369823d51357a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 25 Aug 2019 04:20:48 +0000 Subject: [PATCH 0234/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 147 +++++++++++++++++++++-------- 1 file changed, 110 insertions(+), 37 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 58fb2ec650b..79798d8e51d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -623,9 +623,9 @@ "dev": true }, "acorn-jsx": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", - "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.2.tgz", + "integrity": "sha512-tiNTrP1MP0QrChmD2DdupCr6HWSFeKVw5d/dHTu4Y7rkAkRhU/Dt7dphAfIUyxtHpl/eBVip5uTNSpQJHylpAw==", "dev": true }, "ajv": { @@ -709,12 +709,12 @@ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "ansi-styles": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.0.0.tgz", - "integrity": "sha512-8zjUtFJ3db/QoPXuuEMloS2AUf79/yeyttJ7Abr3hteopJu9HK8vsgGviGUMq+zyA6cZZO6gAyZoMTF6TgaEjA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.1.0.tgz", + "integrity": "sha512-Qts4KCLKG+waHc9C4m07weIY8qyeixoS0h6RnbsNVD6Fw+pEZGW3vTyObL3WXpE09Mq4Oi7/lBEyLmOiLtlYWQ==", "dev": true, "requires": { - "color-convert": "^2.0.0" + "color-convert": "^2.0.1" }, "dependencies": { "color-convert": { @@ -2695,9 +2695,9 @@ } }, "eslint-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.0.tgz", - "integrity": "sha512-7ehnzPaP5IIEh1r1tkjuIrxqhNkzUJa9z3R92tLJdZIVdWaczEhr3EbhGtsMrVxi1KeR8qA7Off6SWc5WNQqyQ==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.2.tgz", + "integrity": "sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q==", "dev": true, "requires": { "eslint-visitor-keys": "^1.0.0" @@ -3559,47 +3559,112 @@ "dev": true }, "inquirer": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.1.tgz", - "integrity": "sha512-uxNHBeQhRXIoHWTSNYUFhQVrHYFThIt6IVo2fFmSe8aBwdR3/w6b58hJpiL/fMukFkvGzjg+hSxFtwvVmKZmXw==", + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz", + "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", "dev": true, "requires": { - "ansi-escapes": "^4.2.1", + "ansi-escapes": "^3.2.0", "chalk": "^2.4.2", - "cli-cursor": "^3.1.0", + "cli-cursor": "^2.1.0", "cli-width": "^2.0.0", "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.15", - "mute-stream": "0.0.8", + "figures": "^2.0.0", + "lodash": "^4.17.12", + "mute-stream": "0.0.7", "run-async": "^2.2.0", "rxjs": "^6.4.0", - "string-width": "^4.1.0", + "string-width": "^2.1.0", "strip-ansi": "^5.1.0", "through": "^2.3.6" }, "dependencies": { + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true + }, "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", "dev": true }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, "string-width": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.1.0.tgz", - "integrity": "sha512-NrX+1dVVh+6Y9dnQ19pR0pP4FiEIlUvdTGn8pw6CKTNq5sgib2nIhmUNT5TAmhWmvKr3WcxBcP3E8nWezuipuQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^5.2.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } } }, "strip-ansi": { @@ -3609,6 +3674,14 @@ "dev": true, "requires": { "ansi-regex": "^4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + } } } } @@ -6053,9 +6126,9 @@ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" }, "spawn-wrap": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.2.tgz", - "integrity": "sha512-vMwR3OmmDhnxCVxM8M+xO/FtIp6Ju/mNaDfCMMW7FDcLRTPFWUswec4LXJHTJE2hwTI9O0YBfygu4DalFl7Ylg==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.3.tgz", + "integrity": "sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw==", "dev": true, "requires": { "foreground-child": "^1.5.6", @@ -6484,9 +6557,9 @@ } }, "terser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.2.0.tgz", - "integrity": "sha512-6lPt7lZdZ/13icQJp8XasFOwZjFJkxFFIb/N1fhYEQNoNI3Ilo3KABZ9OocZvZoB39r6SiIk/0+v/bt8nZoSeA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.2.1.tgz", + "integrity": "sha512-cGbc5utAcX4a9+2GGVX4DsenG6v0x3glnDi5hx8816X1McEAwPlPgRtXPJzSBsbpILxZ8MQMT0KvArLuE0HP5A==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", From 91ed1b574f18ea49b246f85c687df3341a349c20 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 28 Aug 2019 07:36:05 +0000 Subject: [PATCH 0235/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.4.1 to 1.4.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.4.2/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 79798d8e51d..800980065e8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -507,30 +507,30 @@ "integrity": "sha512-dyYO+f6ihZEtNPDcWNR1fkoTDf3zAK3lAABDze3mz6POyIercH0lEUawUFXlG8xaQZmm1yEBON/4TsYv/laDYg==" }, "@ui5/builder": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.4.1.tgz", - "integrity": "sha512-YiPYx76g7bNGK7dMmPI/W5Ctns9Alu0QD+j+DZE4nf6oAMShc2rDeJ7cRajzsUS0pimkFcr68sHiwQ7Fa+e9Dg==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.4.2.tgz", + "integrity": "sha512-QczJVw59yYT1w/9LtK1ZVzYjsteC/fhtQlhnTF2p5R8pO3oFsIxSS2yEEyVSA3OtwYuC6rGDaQSmXHsvRy+f2g==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.1", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", - "escodegen": "^1.11.1", + "escodegen": "^1.12.0", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "^4.3.0", "globby": "^10.0.1", - "graceful-fs": "^4.2.1", + "graceful-fs": "^4.2.2", "jsdoc": "3.5.5", "less-openui5": "^0.6.0", "make-dir": "^3.0.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", - "rimraf": "^2.6.3", + "rimraf": "^2.7.1", "semver": "^6.3.0", "slash": "^3.0.0", - "terser": "^4.1.4", + "terser": "^4.2.1", "xml2js": "^0.4.17", "yazl": "^2.5.1" }, diff --git a/packages/project/package.json b/packages/project/package.json index 2784323535b..50edff025d2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.4.1", + "@ui5/builder": "^1.4.2", "@ui5/logger": "^1.0.1", "@ui5/server": "^1.3.0", "graceful-fs": "^4.2.2", From e70ceb1b2833129949807501985f0ba141871422 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 1 Sep 2019 04:29:40 +0000 Subject: [PATCH 0236/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 136 +++++++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 92 insertions(+), 46 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 800980065e8..5d745545738 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -408,25 +408,25 @@ } }, "@nodelib/fs.scandir": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.1.tgz", - "integrity": "sha512-NT/skIZjgotDSiXs0WqYhgcuBKhUMgfekCmCGtkUAiLqZdOnrdjmZr9wRl3ll64J9NF79uZ4fk16Dx0yMc/Xbg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.2.tgz", + "integrity": "sha512-wrIBsjA5pl13f0RN4Zx4FNWmU71lv03meGKnqRUoCyan17s4V3WL92f3w3AIuWbNnpcrQyFBU5qMavJoB8d27w==", "requires": { - "@nodelib/fs.stat": "2.0.1", + "@nodelib/fs.stat": "2.0.2", "run-parallel": "^1.1.9" } }, "@nodelib/fs.stat": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", - "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==" + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.2.tgz", + "integrity": "sha512-z8+wGWV2dgUhLqrtRYa03yDx4HWMvXKi1z8g3m2JyxAx8F7xk74asqPk5LAETjqDSGLFML/6CDl0+yFunSYicw==" }, "@nodelib/fs.walk": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.2.tgz", - "integrity": "sha512-J/DR3+W12uCzAJkw7niXDcqcKBg6+5G5Q/ZpThpGNzAUz70eOR6RV4XnnSN01qHZiVl0eavoxJsBypQoKsV2QQ==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.3.tgz", + "integrity": "sha512-l6t8xEhfK9Sa4YO5mIRdau7XSOADfmh3jCr0evNHdY+HNkW6xuQhgMH7D73VV6WpZOagrW0UludvMTiifiwTfA==", "requires": { - "@nodelib/fs.scandir": "2.1.1", + "@nodelib/fs.scandir": "2.1.2", "fastq": "^1.6.0" } }, @@ -502,9 +502,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.7.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.2.tgz", - "integrity": "sha512-dyYO+f6ihZEtNPDcWNR1fkoTDf3zAK3lAABDze3mz6POyIercH0lEUawUFXlG8xaQZmm1yEBON/4TsYv/laDYg==" + "version": "12.7.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.3.tgz", + "integrity": "sha512-3SiLAIBkDWDg6vFo0+5YJyHPWU9uwu40Qe+v+0MH8wRKYBimHvvAOyk3EzMrD/TrIlLYfXrqDqrg913PynrMJQ==" }, "@ui5/builder": { "version": "1.4.2", @@ -735,9 +735,9 @@ } }, "anymatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.0.3.tgz", - "integrity": "sha512-c6IvoeBECQlMVuYUjSwimnhmztImpErfxJzWZhIQinIvQWoGOnB0dLIgifbPHQt5heS6mNlaZG16f06H3C8t1g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.0.tgz", + "integrity": "sha512-Ozz7l4ixzI7Oxj2+cw+p0tVUt27BpaJ+1+q1TCeANWxHpvyn2+Un+YamBdfKu0uh8xLodGhoa1v7595NhKDAuA==", "dev": true, "requires": { "normalize-path": "^3.0.0", @@ -1098,9 +1098,9 @@ "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==" }, "blueimp-md5": { - "version": "2.11.1", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.11.1.tgz", - "integrity": "sha512-4UiOAmql2XO0Sws07OVzYdCKK0K2Va5g6AVgYXoGhEQiKrdSOefjUCm1frPk6E+xiIOHRqaFg+TUGo7cClKg5g==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.12.0.tgz", + "integrity": "sha512-zo+HIdIhzojv6F1siQPqPFROyVy7C50KzHv/k/Iz+BtvtVzSHXiMXOpq2wCfNkeBqdCv+V8XOV96tsEt2W/3rQ==", "dev": true }, "body-parser": { @@ -1350,10 +1350,18 @@ }, "dependencies": { "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.0.tgz", + "integrity": "sha512-ZbfWJq/wN1Z273o7mUSjILYqehAktR2NVoSrOukDkU9kg2v/Uv89yU4Cvz8seJeAmtN5oqiefKq8FPuXOboqLw==", + "dev": true, + "requires": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } } } }, @@ -1978,13 +1986,12 @@ } }, "cross-env": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", - "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.1.tgz", + "integrity": "sha512-1yHhtcfAd1r4nwQgknowuUNfIT9E8dOMMspC36g45dN+iD1blloi7xp8X/xAIDnjHWyt1uQ8PHk2fkNaym7soQ==", "dev": true, "requires": { - "cross-spawn": "^6.0.5", - "is-windows": "^1.0.0" + "cross-spawn": "^6.0.5" }, "dependencies": { "cross-spawn": { @@ -2451,9 +2458,9 @@ } }, "es5-ext": { - "version": "0.10.50", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.50.tgz", - "integrity": "sha512-KMzZTPBkeQV/JcSQhI5/z6d9VWJ3EnQ194USTUwIYZ2ZbpN8+SGXQKt1h68EX44+qt+Fzr8DO17vnxrw7c3agw==", + "version": "0.10.51", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.51.tgz", + "integrity": "sha512-oRpWzM2WcLHVKpnrcyB7OW8j/s67Ba04JCm0WnNv3RiABSvs7mrQlutB8DBv793gKcp0XENR8Il8WxGTlZ73gQ==", "requires": { "es6-iterator": "~2.0.3", "es6-symbol": "~3.1.1", @@ -3066,11 +3073,11 @@ "dev": true }, "follow-redirects": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.7.0.tgz", - "integrity": "sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.8.1.tgz", + "integrity": "sha512-micCIbldHioIegeKs41DoH0KS3AXfFzgS30qVkM6z/XOE/GJgvmsoc839NUqa1B9udYe9dQxgv7KFwng6+p/dw==", "requires": { - "debug": "^3.2.6" + "debug": "^3.0.0" }, "dependencies": { "debug": { @@ -3327,6 +3334,15 @@ "har-schema": "^2.0.0" } }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", @@ -3697,6 +3713,12 @@ "integrity": "sha512-Y75zBYLkh0lJ9qxeHlMjQ7bSbyiSqNW/UOPWDmzC7cXskL1hekSITh1Oc6JV0XCWWZ9DE8VYSB71xocLk3gmGw==", "dev": true }, + "is-arguments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", + "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", + "dev": true + }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", @@ -3720,6 +3742,12 @@ "ci-info": "^2.0.0" } }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, "is-error": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", @@ -3844,6 +3872,15 @@ "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", "dev": true }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", @@ -3867,12 +3904,6 @@ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", "dev": true }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true - }, "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", @@ -4801,9 +4832,9 @@ "dev": true }, "nise": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.1.tgz", - "integrity": "sha512-edFWm0fsFG2n318rfEnKlTZTkjlbVOFF9XIA+fj+Ed+Qz1laYW2lobwavWoMzGrYDHH1EpiNJgDfvGnkZztR/g==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.2.tgz", + "integrity": "sha512-/6RhOUlicRCbE9s+94qCUsyE+pKlVJ5AhIv+jEE7ESKwnbXqulKZ1FYU+XAtHHWE9TinYvAxDUJAb912PwPoWA==", "dev": true, "requires": { "@sinonjs/formatio": "^3.2.1", @@ -4984,6 +5015,12 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, + "object-is": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.1.tgz", + "integrity": "sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY=", + "dev": true + }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", @@ -5682,6 +5719,15 @@ "regenerate": "^1.4.0" } }, + "regexp.prototype.flags": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz", + "integrity": "sha512-ztaw4M1VqgMwl9HlPpOuiYgItcHlunW0He2fE6eNfT6E/CF2FtYi9ofOYe4mKntstYk0Fyh/rDRBdS3AnxjlrA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2" + } + }, "regexpp": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 50edff025d2..09279cdb92d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -110,7 +110,7 @@ "devDependencies": { "ava": "^2.3.0", "coveralls": "^3.0.6", - "cross-env": "^5.2.0", + "cross-env": "^5.2.1", "docdash": "^1.1.1", "eslint": "^5.16.0", "eslint-config-google": "^0.12.0", From 4eac29d4026103bc05659a14034b5ba5b2a0c81c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 2 Sep 2019 14:22:29 +0000 Subject: [PATCH 0237/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.4.2 to 1.5.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.5.0/CHANGELOG.md --- packages/project/package-lock.json | 30 +++++++++++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5d745545738..b18441239af 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -507,9 +507,9 @@ "integrity": "sha512-3SiLAIBkDWDg6vFo0+5YJyHPWU9uwu40Qe+v+0MH8wRKYBimHvvAOyk3EzMrD/TrIlLYfXrqDqrg913PynrMJQ==" }, "@ui5/builder": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.4.2.tgz", - "integrity": "sha512-QczJVw59yYT1w/9LtK1ZVzYjsteC/fhtQlhnTF2p5R8pO3oFsIxSS2yEEyVSA3OtwYuC6rGDaQSmXHsvRy+f2g==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.5.0.tgz", + "integrity": "sha512-TYqf5RsAV6aoSz6hNGJP5I+Zy96JRvGz5WHRacym4CBJtEcCuudh/pYvtdplv3aLrctbLPl9ZUmwpyma/ujprA==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.1", @@ -527,7 +527,7 @@ "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", - "rimraf": "^2.7.1", + "rimraf": "^3.0.0", "semver": "^6.3.0", "slash": "^3.0.0", "terser": "^4.2.1", @@ -553,6 +553,14 @@ "taffydb": "2.6.2", "underscore": "~1.8.3" } + }, + "rimraf": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.0.tgz", + "integrity": "sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg==", + "requires": { + "glob": "^7.1.3" + } } } }, @@ -7202,18 +7210,18 @@ "dev": true }, "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "version": "0.4.21", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.21.tgz", + "integrity": "sha512-gHRSAYBSA1JNVbLV2l8mTpQ/zTLcNtyG4YZmNlA3pjMWTgv9swW9muK55cr3fUmSOezLTR24iPQ+FqxilTvppw==", "requires": { "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" + "xmlbuilder": "~13.0.0" } }, "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-13.0.2.tgz", + "integrity": "sha512-Eux0i2QdDYKbdbA6AM6xE4m6ZTZr4G4xF9kahI2ukSEMCzwce2eX9WlTI5J3s+NU7hpasFsr8hWIONae7LluAQ==" }, "xmlcreate": { "version": "1.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index 09279cdb92d..5fc0608c1d7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.4.2", + "@ui5/builder": "^1.5.0", "@ui5/logger": "^1.0.1", "@ui5/server": "^1.3.0", "graceful-fs": "^4.2.2", From 77e34d6bf6642a5bc344b417ef45410436166233 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 4 Sep 2019 07:13:15 +0000 Subject: [PATCH 0238/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.5.0 to 1.5.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.5.1/CHANGELOG.md --- packages/project/package-lock.json | 117 +++++++++++++++++++++++------ packages/project/package.json | 2 +- 2 files changed, 97 insertions(+), 22 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b18441239af..d1ab00224a7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -507,9 +507,9 @@ "integrity": "sha512-3SiLAIBkDWDg6vFo0+5YJyHPWU9uwu40Qe+v+0MH8wRKYBimHvvAOyk3EzMrD/TrIlLYfXrqDqrg913PynrMJQ==" }, "@ui5/builder": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.5.0.tgz", - "integrity": "sha512-TYqf5RsAV6aoSz6hNGJP5I+Zy96JRvGz5WHRacym4CBJtEcCuudh/pYvtdplv3aLrctbLPl9ZUmwpyma/ujprA==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.5.1.tgz", + "integrity": "sha512-wivVhwpdoT0sndhKrS5FTK0FbeI5Rhf0cTVEq0A1UFiXnP5gwV6JG7iR9ufXeTnq9VJphzywUaLejaswvAThXw==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.1", @@ -2205,7 +2205,6 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, "requires": { "object-keys": "^1.0.12" } @@ -2465,6 +2464,33 @@ "is-arrayish": "^0.2.1" } }, + "es-abstract": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.14.1.tgz", + "integrity": "sha512-cp/Tb1oA/rh2X7vqeSOvM+TSo3UkJLX70eNihgVEvnzwAgikjkTFr/QVgRCaxjm0knCNQzNoxxxcw2zO2LJdZA==", + "requires": { + "es-to-primitive": "^1.2.0", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.0", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-inspect": "^1.6.0", + "object-keys": "^1.1.1", + "string.prototype.trimleft": "^2.0.0", + "string.prototype.trimright": "^2.0.0" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, "es5-ext": { "version": "0.10.51", "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.51.tgz", @@ -3165,8 +3191,7 @@ "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "functional-red-black-tree": { "version": "1.0.1", @@ -3346,7 +3371,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "requires": { "function-bind": "^1.1.1" } @@ -3369,8 +3393,7 @@ "has-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", - "dev": true + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=" }, "has-unicode": { "version": "2.0.1", @@ -3741,6 +3764,11 @@ "binary-extensions": "^2.0.0" } }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==" + }, "is-ci": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", @@ -3753,8 +3781,7 @@ "is-date-object": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", - "dev": true + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=" }, "is-error": { "version": "2.2.2", @@ -3884,7 +3911,6 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", - "dev": true, "requires": { "has": "^1.0.1" } @@ -3895,6 +3921,14 @@ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true }, + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "requires": { + "has-symbols": "^1.0.0" + } + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -5023,6 +5057,11 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, + "object-inspect": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.6.0.tgz", + "integrity": "sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ==" + }, "object-is": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.1.tgz", @@ -5032,8 +5071,7 @@ "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" }, "object.assign": { "version": "4.1.0", @@ -5047,6 +5085,15 @@ "object-keys": "^1.0.11" } }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, "observable-to-promise": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-1.0.0.tgz", @@ -6295,6 +6342,24 @@ "strip-ansi": "^3.0.0" } }, + "string.prototype.trimleft": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.0.0.tgz", + "integrity": "sha1-aLaqjhYsaoDnbjqKDC50cYbicf8=", + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.0.2" + } + }, + "string.prototype.trimright": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.0.0.tgz", + "integrity": "sha1-q0pW2AKgH75yk+EehPJNyBZGYd0=", + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.0.2" + } + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -6939,6 +7004,15 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, "utile": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/utile/-/utile-0.3.0.tgz", @@ -7210,18 +7284,19 @@ "dev": true }, "xml2js": { - "version": "0.4.21", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.21.tgz", - "integrity": "sha512-gHRSAYBSA1JNVbLV2l8mTpQ/zTLcNtyG4YZmNlA3pjMWTgv9swW9muK55cr3fUmSOezLTR24iPQ+FqxilTvppw==", + "version": "0.4.22", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.22.tgz", + "integrity": "sha512-MWTbxAQqclRSTnehWWe5nMKzI3VmJ8ltiJEco8akcC6j3miOhjjfzKum5sId+CWhfxdOs/1xauYr8/ZDBtQiRw==", "requires": { "sax": ">=0.6.0", - "xmlbuilder": "~13.0.0" + "util.promisify": "~1.0.0", + "xmlbuilder": "~11.0.0" } }, "xmlbuilder": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-13.0.2.tgz", - "integrity": "sha512-Eux0i2QdDYKbdbA6AM6xE4m6ZTZr4G4xF9kahI2ukSEMCzwce2eX9WlTI5J3s+NU7hpasFsr8hWIONae7LluAQ==" + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" }, "xmlcreate": { "version": "1.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index 5fc0608c1d7..edcc9cf3f04 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.5.0", + "@ui5/builder": "^1.5.1", "@ui5/logger": "^1.0.1", "@ui5/server": "^1.3.0", "graceful-fs": "^4.2.2", From 698aa4683191d4aafc7c4aa74d32b9e781fb2aa7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 8 Sep 2019 04:27:59 +0000 Subject: [PATCH 0239/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 145 ++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 79 insertions(+), 68 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d1ab00224a7..38110fb25da 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,18 +43,18 @@ } }, "@babel/core": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.5.5.tgz", - "integrity": "sha512-i4qoSr2KTtce0DmkuuQBV4AuQgGPUcPXMr9L5MyYAtk06z068lQ10a4O009fe5OB/DfNV+h+qqT7ddNV8UnRjg==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.6.0.tgz", + "integrity": "sha512-FuRhDRtsd6IptKpHXAa+4WPZYY2ZzgowkbLBecEDDSje1X/apG7jQM33or3NdOmjXBKWGOg4JmSiRfUfuTtHXw==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.5.5", - "@babel/helpers": "^7.5.5", - "@babel/parser": "^7.5.5", - "@babel/template": "^7.4.4", - "@babel/traverse": "^7.5.5", - "@babel/types": "^7.5.5", + "@babel/generator": "^7.6.0", + "@babel/helpers": "^7.6.0", + "@babel/parser": "^7.6.0", + "@babel/template": "^7.6.0", + "@babel/traverse": "^7.6.0", + "@babel/types": "^7.6.0", "convert-source-map": "^1.1.0", "debug": "^4.1.0", "json5": "^2.1.0", @@ -94,12 +94,12 @@ } }, "@babel/generator": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.5.5.tgz", - "integrity": "sha512-ETI/4vyTSxTzGnU2c49XHv2zhExkv9JHLTwDAFz85kmcwuShvYG2H08FwgIguQf4JC75CBnXAUM5PqeF4fj0nQ==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.6.0.tgz", + "integrity": "sha512-Ms8Mo7YBdMMn1BYuNtKuP/z0TgEIhbcyB8HVR6PPNYp4P61lMsABiS4A3VG1qznjXVCf3r+fVHhm4efTYVsySA==", "dev": true, "requires": { - "@babel/types": "^7.5.5", + "@babel/types": "^7.6.0", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0", @@ -226,14 +226,14 @@ } }, "@babel/helpers": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.5.5.tgz", - "integrity": "sha512-nRq2BUhxZFnfEn/ciJuhklHvFOqjJUD5wpx+1bxUF2axL9C+v4DE/dmp5sT2dKnpOs4orZWzpAZqlCy8QqE/7g==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.6.0.tgz", + "integrity": "sha512-W9kao7OBleOjfXtFGgArGRX6eCP0UEcA2ZWEWNkJdRZnHhW4eEbeswbG3EwaRsnQUAEGWYgMq1HsIXuNNNy2eQ==", "dev": true, "requires": { - "@babel/template": "^7.4.4", - "@babel/traverse": "^7.5.5", - "@babel/types": "^7.5.5" + "@babel/template": "^7.6.0", + "@babel/traverse": "^7.6.0", + "@babel/types": "^7.6.0" } }, "@babel/highlight": { @@ -248,9 +248,9 @@ } }, "@babel/parser": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.5.5.tgz", - "integrity": "sha512-E5BN68cqR7dhKan1SfqgPGhQ178bkVKpXTPEXnFJBrEt8/DKRZlybmy+IgYLTeN7tp1R5Ccmbm2rBk17sHYU3g==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.6.0.tgz", + "integrity": "sha512-+o2q111WEx4srBs7L9eJmcwi655eD8sXniLqMB93TBK9GrNzGrxDWSjiqz2hLU0Ha8MTXFIP0yd9fNdP+m43ZQ==", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { @@ -323,9 +323,9 @@ } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.5.0.tgz", - "integrity": "sha512-xmHq0B+ytyrWJvQTc5OWAC4ii6Dhr0s22STOoydokG51JjWhyYo5mRPXoi+ZmtHQhZZwuXNN+GG5jy5UZZJxIQ==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.6.0.tgz", + "integrity": "sha512-Ma93Ix95PNSEngqomy5LSBMAQvYKVe3dy+JlVJSHEXZR5ASL9lQBedMiCyVtmTLraIDVRE3ZjTZvmXXD2Ozw3g==", "dev": true, "requires": { "@babel/helper-module-transforms": "^7.4.4", @@ -335,28 +335,28 @@ } }, "@babel/template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz", - "integrity": "sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.6.0.tgz", + "integrity": "sha512-5AEH2EXD8euCk446b7edmgFdub/qfH1SN6Nii3+fyXP807QRx9Q73A2N5hNwRRslC2H9sNzaFhsPubkS4L8oNQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.4.4", - "@babel/types": "^7.4.4" + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.0" } }, "@babel/traverse": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.5.5.tgz", - "integrity": "sha512-MqB0782whsfffYfSjH4TM+LMjrJnhCNEDMDIjeTpl+ASaUvxcjoiVCo/sM1GhS1pHOXYfWVCYneLjMckuUxDaQ==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.6.0.tgz", + "integrity": "sha512-93t52SaOBgml/xY74lsmt7xOR4ufYvhb5c5qiM6lu4J/dWGMAfAh6eKw4PjLes6DI6nQgearoxnFJk60YchpvQ==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.5.5", + "@babel/generator": "^7.6.0", "@babel/helper-function-name": "^7.1.0", "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.5.5", - "@babel/types": "^7.5.5", + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.0", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -380,9 +380,9 @@ } }, "@babel/types": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.5.5.tgz", - "integrity": "sha512-s63F9nJioLqOlW3UkyMd+BYhXt44YuaFm/VV0VwuteqjYwRrObkU7ra9pY4wAJR3oXi8hJrMcrcJdO/HH33vtw==", + "version": "7.6.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.6.1.tgz", + "integrity": "sha512-X7gdiuaCmA0uRjCmRtYJNAVCc/q+5xSgsfKJHqMN4iNLILX39677fJE1O40arPMh0TTtS9ItH67yre6c7k6t0g==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -502,9 +502,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.7.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.3.tgz", - "integrity": "sha512-3SiLAIBkDWDg6vFo0+5YJyHPWU9uwu40Qe+v+0MH8wRKYBimHvvAOyk3EzMrD/TrIlLYfXrqDqrg913PynrMJQ==" + "version": "12.7.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.4.tgz", + "integrity": "sha512-W0+n1Y+gK/8G2P/piTkBBN38Qc5Q1ZSO6B5H3QmPCUewaiXOo2GCAWZ4ElZCcNhjJuBSUSLGFUJnmlCn5+nxOQ==" }, "@ui5/builder": { "version": "1.5.1", @@ -2540,15 +2540,26 @@ "es6-iterator": "~2.0.1", "es6-symbol": "3.1.1", "event-emitter": "~0.3.5" + }, + "dependencies": { + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + } } }, "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.2.tgz", + "integrity": "sha512-/ZypxQsArlv+KHpGvng52/Iz8by3EQPxhmbuz8yFG89N/caTFBSbcXONDw0aMjy827gQg26XAjP4uXFvnfINmQ==", "requires": { - "d": "1", - "es5-ext": "~0.10.14" + "d": "^1.0.1", + "es5-ext": "^0.10.51" } }, "es6-weak-map": { @@ -3107,9 +3118,9 @@ "dev": true }, "follow-redirects": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.8.1.tgz", - "integrity": "sha512-micCIbldHioIegeKs41DoH0KS3AXfFzgS30qVkM6z/XOE/GJgvmsoc839NUqa1B9udYe9dQxgv7KFwng6+p/dw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.9.0.tgz", + "integrity": "sha512-CRcPzsSIbXyVDl0QI01muNDu69S8trU4jArW9LpOt2WtC6LyUJetcIrmfHsRBx7/Jb6GHJUiuqyYxPooFfNt6A==", "requires": { "debug": "^3.0.0" }, @@ -3342,9 +3353,9 @@ "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" }, "handlebars": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", - "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.2.0.tgz", + "integrity": "sha512-Kb4xn5Qh1cxAKvQnzNWZ512DhABzyFNmsaJf3OAkWNa4NkaqWcNI8Tao8Tasi0/F4JD9oyG0YxuFyvyR57d+Gw==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -5603,9 +5614,9 @@ "dev": true }, "psl": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.3.0.tgz", - "integrity": "sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag==" + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.3.1.tgz", + "integrity": "sha512-2KLd5fKOdAfShtY2d/8XDWVRnmp3zp40Qt6ge2zBPFARLXOGUf2fHD5eg+TV/5oxBtQKVhjUaKFsAaE4HnwfSA==" }, "pump": { "version": "3.0.0", @@ -6007,9 +6018,9 @@ "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==" }, "rxjs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.2.tgz", - "integrity": "sha512-HUb7j3kvb7p7eCUHE3FqjoDsC1xfZQ4AHFWfTKSpZ+sAhhz5X1WX0ZuUqWbzB2QhSLp3DoLUG+hMdEDKqWo2Zg==", + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", + "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -6137,17 +6148,17 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, "sinon": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.4.1.tgz", - "integrity": "sha512-7s9buHGHN/jqoy/v4bJgmt0m1XEkCEd/tqdHXumpBp0JSujaT4Ng84JU5wDdK4E85ZMq78NuDe0I3NAqXY8TFg==", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.4.2.tgz", + "integrity": "sha512-pY5RY99DKelU3pjNxcWo6XqeB1S118GBcVIIdDi6V+h6hevn1izcg2xv1hTHW/sViRXU7sUOxt4wTUJ3gsW2CQ==", "dev": true, "requires": { "@sinonjs/commons": "^1.4.0", "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.3.2", + "@sinonjs/samsam": "^3.3.3", "diff": "^3.5.0", "lolex": "^4.2.0", - "nise": "^1.5.1", + "nise": "^1.5.2", "supports-color": "^5.5.0" }, "dependencies": { @@ -6676,9 +6687,9 @@ } }, "terser": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.2.1.tgz", - "integrity": "sha512-cGbc5utAcX4a9+2GGVX4DsenG6v0x3glnDi5hx8816X1McEAwPlPgRtXPJzSBsbpILxZ8MQMT0KvArLuE0HP5A==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.0.tgz", + "integrity": "sha512-w5CzrvQOwYAH54aG22IrUJI4yX1w62XQmMdEOM6H4w0ii6rc3HJ89fmcOGN5mRwBWfUgaqO7RJTp4aoY/uE+qQ==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", diff --git a/packages/project/package.json b/packages/project/package.json index edcc9cf3f04..0abb3878d2a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,7 +119,7 @@ "nyc": "^14.1.1", "open-cli": "^5.0.0", "rimraf": "^2.7.1", - "sinon": "^7.4.1", + "sinon": "^7.4.2", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From fa18e97de97a59d6ca3c485c7a91dfa097b8b63a Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sun, 8 Sep 2019 06:12:54 +0000 Subject: [PATCH 0240/1272] [ui5-project]Bump eslint-config-google from 0.12.0 to 0.14.0 Bumps [eslint-config-google](https://github.com/google/eslint-config-google) from 0.12.0 to 0.14.0. - [Release notes](https://github.com/google/eslint-config-google/releases) - [Commits](https://github.com/google/eslint-config-google/compare/0.12.0...0.14.0) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 38110fb25da..696a4ed3691 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2720,9 +2720,9 @@ } }, "eslint-config-google": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.12.0.tgz", - "integrity": "sha512-SHDM3nIRCJBACjf8c/H6FvCwRmKbphESNl3gJFBNbw4KYDLCONB3ABYLXDGF+iaVP9XSTND/Q5/PuGoFkp4xbg==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz", + "integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==", "dev": true }, "eslint-plugin-jsdoc": { diff --git a/packages/project/package.json b/packages/project/package.json index 0abb3878d2a..eb5dce2204a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -113,7 +113,7 @@ "cross-env": "^5.2.1", "docdash": "^1.1.1", "eslint": "^5.16.0", - "eslint-config-google": "^0.12.0", + "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^4.8.4", "jsdoc": "^3.6.3", "nyc": "^14.1.1", From d365c96966a057204018251570ca4378edaa18a9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 15 Sep 2019 04:28:30 +0000 Subject: [PATCH 0241/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 62 +++++++++++++++--------------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 696a4ed3691..7f7feb50933 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -502,9 +502,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.7.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.4.tgz", - "integrity": "sha512-W0+n1Y+gK/8G2P/piTkBBN38Qc5Q1ZSO6B5H3QmPCUewaiXOo2GCAWZ4ElZCcNhjJuBSUSLGFUJnmlCn5+nxOQ==" + "version": "12.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.5.tgz", + "integrity": "sha512-9fq4jZVhPNW8r+UYKnxF1e2HkDWOWKM5bC2/7c9wPV835I0aOrVbS/Hw/pWPk2uKrNXQqg9Z959Kz+IYDd5p3w==" }, "@ui5/builder": { "version": "1.5.1", @@ -2465,9 +2465,9 @@ } }, "es-abstract": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.14.1.tgz", - "integrity": "sha512-cp/Tb1oA/rh2X7vqeSOvM+TSo3UkJLX70eNihgVEvnzwAgikjkTFr/QVgRCaxjm0knCNQzNoxxxcw2zO2LJdZA==", + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.14.2.tgz", + "integrity": "sha512-DgoQmbpFNOofkjJtKwr87Ma5EW4Dc8fWhD0R+ndq7Oc456ivUfGOOP6oAZTTKl5/CcNMP+EN+e3/iUzgE0veZg==", "requires": { "es-to-primitive": "^1.2.0", "function-bind": "^1.1.1", @@ -4733,9 +4733,9 @@ } }, "merge2": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.4.tgz", - "integrity": "sha512-FYE8xI+6pjFOhokZu0We3S5NKCirLbCzSh2Usf3qEyr4X8U+0jNg9P8RZ4qz+V2UoECLVwSyzU3LxXBaLGtD3A==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz", + "integrity": "sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw==" }, "methods": { "version": "1.1.2", @@ -5614,9 +5614,9 @@ "dev": true }, "psl": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.3.1.tgz", - "integrity": "sha512-2KLd5fKOdAfShtY2d/8XDWVRnmp3zp40Qt6ge2zBPFARLXOGUf2fHD5eg+TV/5oxBtQKVhjUaKFsAaE4HnwfSA==" + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.4.0.tgz", + "integrity": "sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw==" }, "pump": { "version": "3.0.0", @@ -5645,9 +5645,9 @@ "dev": true }, "random-int": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.0.tgz", - "integrity": "sha512-jCJ4a8BJ+z3f4SYSFtYIiRfcdxe2Bvh+Gg2J+LjriL3dVOtrF77u0tklYbO8acHoZQ7JlYJn3lNKfW5TFjcwdQ==" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", + "integrity": "sha512-YALjWK2Rt9EMIv9BF/3mvlzFWQathsvb5UZmN1QmhfIOfcQYXc/UcLzg0ablqesSBpBVLt2Tlwv/eTuBh4LXUQ==" }, "range-parser": { "version": "1.2.1", @@ -5801,9 +5801,9 @@ "dev": true }, "regexpu-core": { - "version": "4.5.5", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.5.tgz", - "integrity": "sha512-FpI67+ky9J+cDizQUJlIlNZFKual/lUkFr1AG6zOCpwZ9cLrg8UUVakyUQJD7fCDIe9Z2nwTQJNPyonatNmDFQ==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", + "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", "dev": true, "requires": { "regenerate": "^1.4.0", @@ -6354,21 +6354,21 @@ } }, "string.prototype.trimleft": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.0.0.tgz", - "integrity": "sha1-aLaqjhYsaoDnbjqKDC50cYbicf8=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz", + "integrity": "sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==", "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.0.2" + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" } }, "string.prototype.trimright": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.0.0.tgz", - "integrity": "sha1-q0pW2AKgH75yk+EehPJNyBZGYd0=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz", + "integrity": "sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==", "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.0.2" + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" } }, "string_decoder": { @@ -6687,9 +6687,9 @@ } }, "terser": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.0.tgz", - "integrity": "sha512-w5CzrvQOwYAH54aG22IrUJI4yX1w62XQmMdEOM6H4w0ii6rc3HJ89fmcOGN5mRwBWfUgaqO7RJTp4aoY/uE+qQ==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.1.tgz", + "integrity": "sha512-pnzH6dnFEsR2aa2SJaKb1uSCl3QmIsJ8dEkj0Fky+2AwMMcC9doMqLOQIH6wVTEKaVfKVvLSk5qxPBEZT9mywg==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", From 88da7d988f88639500a14d0c102b347de7c2255b Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sun, 8 Sep 2019 04:29:53 +0000 Subject: [PATCH 0242/1272] [ui5-project]Bump rimraf from 2.7.1 to 3.0.0 Bumps [rimraf](https://github.com/isaacs/rimraf) from 2.7.1 to 3.0.0. - [Release notes](https://github.com/isaacs/rimraf/releases) - [Changelog](https://github.com/isaacs/rimraf/blob/master/CHANGELOG.md) - [Commits](https://github.com/isaacs/rimraf/compare/v2.7.1...v3.0.0) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 63 ++++++++++++++++++++++++++++-- packages/project/package.json | 2 +- 2 files changed, 61 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7f7feb50933..d6b1a9291bf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2265,6 +2265,15 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } } } }, @@ -2303,6 +2312,16 @@ "glob": "^7.1.1", "mkdirp": "^0.5.1", "rimraf": "^2.6.2" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + } } }, "diff": { @@ -4109,6 +4128,15 @@ "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -5040,6 +5068,15 @@ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -5996,9 +6033,10 @@ "integrity": "sha1-/s5hv6DBtSoga9axgZgYS91SOjs=" }, "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.0.tgz", + "integrity": "sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg==", + "dev": true, "requires": { "glob": "^7.1.3" } @@ -6249,6 +6287,17 @@ "rimraf": "^2.6.2", "signal-exit": "^3.0.2", "which": "^1.3.0" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, "spdx-correct": { @@ -7041,6 +7090,14 @@ "version": "0.9.2", "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } } } }, diff --git a/packages/project/package.json b/packages/project/package.json index eb5dce2204a..bfcfea2d898 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,7 +118,7 @@ "jsdoc": "^3.6.3", "nyc": "^14.1.1", "open-cli": "^5.0.0", - "rimraf": "^2.7.1", + "rimraf": "^3.0.0", "sinon": "^7.4.2", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" From e356d1870870271ca63c4723f7f4f9e86b274fec Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 22 Sep 2019 04:31:33 +0000 Subject: [PATCH 0243/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 67 +++++++++++++----------------- packages/project/package.json | 2 +- 2 files changed, 30 insertions(+), 39 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d6b1a9291bf..116b766fa85 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -553,14 +553,6 @@ "taffydb": "2.6.2", "underscore": "~1.8.3" } - }, - "rimraf": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.0.tgz", - "integrity": "sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg==", - "requires": { - "glob": "^7.1.3" - } } } }, @@ -875,18 +867,18 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-2.3.0.tgz", - "integrity": "sha512-4VaaSnl13vpTZmqW3aMqioSolT0/ozRkjQxTLi3p8wtyRONuX/uLKL3uF0j50w2BNRoLsJqztnkX2h8xeVp2lg==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-2.4.0.tgz", + "integrity": "sha512-CQWtzZZZeU2g4StojRv6MO9RIRi4sLxGSB9+3C3hv0ttUEG1tkJLTLyrBQeFS4WEeK12Z4ovE3f2iPVhSy8elA==", "dev": true, "requires": { "@ava/babel-preset-stage-4": "^4.0.0", "@ava/babel-preset-transform-test-files": "^6.0.0", - "@babel/core": "^7.5.5", - "@babel/generator": "^7.5.5", + "@babel/core": "^7.6.0", + "@babel/generator": "^7.6.0", "@concordance/react": "^2.0.0", "ansi-escapes": "^4.2.1", - "ansi-styles": "^4.0.0", + "ansi-styles": "^4.1.0", "arr-flatten": "^1.1.0", "array-union": "^2.1.0", "array-uniq": "^2.1.0", @@ -1476,12 +1468,12 @@ } }, "chokidar": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.0.2.tgz", - "integrity": "sha512-c4PR2egjNjI1um6bamCQ6bUNPDiyofNQruHvKgHQ4gDUP/ITSVSzNsiI5OWtHOsX323i5ha/kk4YmOZ1Ktg7KA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.1.1.tgz", + "integrity": "sha512-df4o16uZmMHzVQwECZRHwfguOt5ixpuQVaZHjYMvYisgKhE+JXwcj/Tcr3+3bu/XeOJQ9ycYmzu7Mv8XrGxJDQ==", "dev": true, "requires": { - "anymatch": "^3.0.1", + "anymatch": "^3.1.0", "braces": "^3.0.2", "fsevents": "^2.0.6", "glob-parent": "^5.0.0", @@ -2873,9 +2865,9 @@ } }, "eventemitter3": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", - "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.0.tgz", + "integrity": "sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg==" }, "events-to-array": { "version": "1.1.2", @@ -3288,9 +3280,9 @@ } }, "glob-parent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", - "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", + "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", "requires": { "is-glob": "^4.0.1" } @@ -3372,9 +3364,9 @@ "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" }, "handlebars": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.2.0.tgz", - "integrity": "sha512-Kb4xn5Qh1cxAKvQnzNWZ512DhABzyFNmsaJf3OAkWNa4NkaqWcNI8Tao8Tasi0/F4JD9oyG0YxuFyvyR57d+Gw==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.2.1.tgz", + "integrity": "sha512-bqPIlDk06UWbVEIFoYj+LVo42WhK96J+b25l7hbFDpxrOXMphFM3fNIm+cluwg4Pk2jiLjWU5nHQY7igGE75NQ==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -3526,11 +3518,11 @@ } }, "http-proxy": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz", - "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.0.tgz", + "integrity": "sha512-84I2iJM/n1d4Hdgc6y2+qY5mDaz2PUVjlg9znE9byl+q0uC3DeByqBGReQu5tpLK0TAqTIXScRUV+dg7+bUPpQ==", "requires": { - "eventemitter3": "^3.0.0", + "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", "requires-port": "^1.0.0" } @@ -4969,9 +4961,9 @@ } }, "normalize-url": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.3.0.tgz", - "integrity": "sha512-0NLtR71o4k6GLP+mr6Ty34c5GA6CMoEsncKJxvQd8NzPxaHRJNnb5gZE8R1XF4CPIS7QPHLJ74IFszwtNVAHVQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.4.1.tgz", + "integrity": "sha512-rjH3yRt0Ssx19mUwS0hrDUOdG9VI+oRLpLHJ7tXRdjcuQ7v7wo6qPvOZppHRrqfslTKr0L2yBhjj4UXd7c3cQg==", "dev": true }, "npm-run-path": { @@ -6036,7 +6028,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.0.tgz", "integrity": "sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg==", - "dev": true, "requires": { "glob": "^7.1.3" } @@ -6885,9 +6876,9 @@ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" }, "type": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/type/-/type-1.0.3.tgz", - "integrity": "sha512-51IMtNfVcee8+9GJvj0spSuFcZHe9vSib6Xtgsny1Km9ugyz2mbS08I3rsUIRYgJohFRFU1160sgRodYz378Hg==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" }, "type-check": { "version": "0.3.2", diff --git a/packages/project/package.json b/packages/project/package.json index bfcfea2d898..73d115c3eb9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -108,7 +108,7 @@ "resolve": "^1.12.0" }, "devDependencies": { - "ava": "^2.3.0", + "ava": "^2.4.0", "coveralls": "^3.0.6", "cross-env": "^5.2.1", "docdash": "^1.1.1", From 230fbe3c02465eb50dd7e10a17b063689e7c47af Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sun, 22 Sep 2019 06:12:32 +0000 Subject: [PATCH 0244/1272] [ui5-project]Bump cross-env from 5.2.1 to 6.0.0 Bumps [cross-env](https://github.com/kentcdodds/cross-env) from 5.2.1 to 6.0.0. - [Release notes](https://github.com/kentcdodds/cross-env/releases) - [Changelog](https://github.com/kentcdodds/cross-env/blob/master/CHANGELOG.md) - [Commits](https://github.com/kentcdodds/cross-env/compare/v5.2.1...v6.0.0) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 26 ++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 116b766fa85..cfb19a60bed 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1986,31 +1986,29 @@ } }, "cross-env": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.1.tgz", - "integrity": "sha512-1yHhtcfAd1r4nwQgknowuUNfIT9E8dOMMspC36g45dN+iD1blloi7xp8X/xAIDnjHWyt1uQ8PHk2fkNaym7soQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-6.0.0.tgz", + "integrity": "sha512-G/B6gtkjgthT8AP/xN1wdj5Xe18fVyk58JepK8GxpUbqcz3hyWxegocMbvnZK+KoTslwd0ACZ3woi/DVUdVjyQ==", "dev": true, "requires": { - "cross-spawn": "^6.0.5" + "cross-spawn": "^7.0.0" }, "dependencies": { "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.0.tgz", + "integrity": "sha512-6U/8SMK2FBNnB21oQ4+6Nsodxanw1gTkntYA2zBdkFYFu3ZDx65P2ONEXGSvob/QS6REjVHQ9zxzdOafwFdstw==", "dev": true, "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", + "path-key": "^3.1.0", "shebang-command": "^1.2.0", "which": "^1.2.9" } }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "path-key": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.0.tgz", + "integrity": "sha512-8cChqz0RP6SHJkMt48FW0A7+qUOn+OsnOsVtzI59tZ8m+5bCSk7hzwET0pulwOM2YMn9J1efb07KB9l9f30SGg==", "dev": true } } diff --git a/packages/project/package.json b/packages/project/package.json index 73d115c3eb9..ac198f18b7f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -110,7 +110,7 @@ "devDependencies": { "ava": "^2.4.0", "coveralls": "^3.0.6", - "cross-env": "^5.2.1", + "cross-env": "^6.0.0", "docdash": "^1.1.1", "eslint": "^5.16.0", "eslint-config-google": "^0.14.0", From 64d48f736b8dafc1998632499561920daa578125 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 29 Sep 2019 04:23:45 +0000 Subject: [PATCH 0245/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 165 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 86 insertions(+), 81 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index cfb19a60bed..9077d5e6efb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,17 +43,17 @@ } }, "@babel/core": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.6.0.tgz", - "integrity": "sha512-FuRhDRtsd6IptKpHXAa+4WPZYY2ZzgowkbLBecEDDSje1X/apG7jQM33or3NdOmjXBKWGOg4JmSiRfUfuTtHXw==", + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.6.2.tgz", + "integrity": "sha512-l8zto/fuoZIbncm+01p8zPSDZu/VuuJhAfA7d/AbzM09WR7iVhavvfNDYCNpo1VvLk6E6xgAoP9P+/EMJHuRkQ==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.6.0", - "@babel/helpers": "^7.6.0", - "@babel/parser": "^7.6.0", + "@babel/generator": "^7.6.2", + "@babel/helpers": "^7.6.2", + "@babel/parser": "^7.6.2", "@babel/template": "^7.6.0", - "@babel/traverse": "^7.6.0", + "@babel/traverse": "^7.6.2", "@babel/types": "^7.6.0", "convert-source-map": "^1.1.0", "debug": "^4.1.0", @@ -94,16 +94,15 @@ } }, "@babel/generator": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.6.0.tgz", - "integrity": "sha512-Ms8Mo7YBdMMn1BYuNtKuP/z0TgEIhbcyB8HVR6PPNYp4P61lMsABiS4A3VG1qznjXVCf3r+fVHhm4efTYVsySA==", + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.6.2.tgz", + "integrity": "sha512-j8iHaIW4gGPnViaIHI7e9t/Hl8qLjERI6DcV9kEpAIDJsAOrcnXqRS7t+QbhL76pwbtqP+QCQLL0z1CyVmtjjQ==", "dev": true, "requires": { "@babel/types": "^7.6.0", "jsesc": "^2.5.1", "lodash": "^4.17.13", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" + "source-map": "^0.5.0" }, "dependencies": { "source-map": { @@ -226,13 +225,13 @@ } }, "@babel/helpers": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.6.0.tgz", - "integrity": "sha512-W9kao7OBleOjfXtFGgArGRX6eCP0UEcA2ZWEWNkJdRZnHhW4eEbeswbG3EwaRsnQUAEGWYgMq1HsIXuNNNy2eQ==", + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.6.2.tgz", + "integrity": "sha512-3/bAUL8zZxYs1cdX2ilEE0WobqbCmKWr/889lf2SS0PpDcpEIY8pb1CCyz0pEcX3pEb+MCbks1jIokz2xLtGTA==", "dev": true, "requires": { "@babel/template": "^7.6.0", - "@babel/traverse": "^7.6.0", + "@babel/traverse": "^7.6.2", "@babel/types": "^7.6.0" } }, @@ -248,9 +247,9 @@ } }, "@babel/parser": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.6.0.tgz", - "integrity": "sha512-+o2q111WEx4srBs7L9eJmcwi655eD8sXniLqMB93TBK9GrNzGrxDWSjiqz2hLU0Ha8MTXFIP0yd9fNdP+m43ZQ==", + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.6.2.tgz", + "integrity": "sha512-mdFqWrSPCmikBoaBYMuBulzTIKuXVPtEISFbRRVNwMWpCms/hmE2kRq0bblUHaNRKrjRlmVbx1sDHmjmRgD2Xg==", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { @@ -312,14 +311,14 @@ } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.4.4.tgz", - "integrity": "sha512-P05YEhRc2h53lZDjRPk/OektxCVevFzZs2Gfjd545Wde3k+yFDbXORgl2e0xpbq8mLcKJ7Idss4fAg0zORN/zg==", + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.6.2.tgz", + "integrity": "sha512-KGKT9aqKV+9YMZSkowzYoYEiHqgaDhGmPNZlZxX6UeHC4z30nC1J9IrZuGqbYFB1jaIGdv91ujpze0exiVK8bA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0", "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" + "regexpu-core": "^4.6.0" } }, "@babel/plugin-transform-modules-commonjs": { @@ -346,16 +345,16 @@ } }, "@babel/traverse": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.6.0.tgz", - "integrity": "sha512-93t52SaOBgml/xY74lsmt7xOR4ufYvhb5c5qiM6lu4J/dWGMAfAh6eKw4PjLes6DI6nQgearoxnFJk60YchpvQ==", + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.6.2.tgz", + "integrity": "sha512-8fRE76xNwNttVEF2TwxJDGBLWthUkHWSldmfuBzVRmEDWOtu4XdINTgN7TDWzuLg4bbeIMLvfMFD9we5YcWkRQ==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.6.0", + "@babel/generator": "^7.6.2", "@babel/helper-function-name": "^7.1.0", "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.6.0", + "@babel/parser": "^7.6.2", "@babel/types": "^7.6.0", "debug": "^4.1.0", "globals": "^11.1.0", @@ -502,9 +501,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.5.tgz", - "integrity": "sha512-9fq4jZVhPNW8r+UYKnxF1e2HkDWOWKM5bC2/7c9wPV835I0aOrVbS/Hw/pWPk2uKrNXQqg9Z959Kz+IYDd5p3w==" + "version": "12.7.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.8.tgz", + "integrity": "sha512-FMdVn84tJJdV+xe+53sYiZS4R5yn1mAIxfj+DVoNiQjTYz1+OYmjwEZr1ev9nU0axXwda0QDbYl06QHanRVH3A==" }, "@ui5/builder": { "version": "1.5.1", @@ -1290,6 +1289,12 @@ "is-stream": "^1.0.1" } }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, "make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", @@ -1696,9 +1701,9 @@ "dev": true }, "colors": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.3.tgz", - "integrity": "sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==" + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==" }, "combined-stream": { "version": "1.0.8", @@ -2446,9 +2451,9 @@ "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "dev": true, "requires": { "once": "^1.4.0" @@ -2886,6 +2891,14 @@ "p-finally": "^1.0.0", "signal-exit": "^3.0.0", "strip-eof": "^1.0.0" + }, + "dependencies": { + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + } } }, "express": { @@ -3362,9 +3375,9 @@ "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" }, "handlebars": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.2.1.tgz", - "integrity": "sha512-bqPIlDk06UWbVEIFoYj+LVo42WhK96J+b25l7hbFDpxrOXMphFM3fNIm+cluwg4Pk2jiLjWU5nHQY7igGE75NQ==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.3.4.tgz", + "integrity": "sha512-vvpo6mpK4ScNC1DbGRZ2d5BznS6ht0r1hi20RivsibMc6jNvFAeZQ6qk5VNspo6SOwVOJQbjHyBCpuS7BzA1pw==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -3427,19 +3440,19 @@ "dev": true }, "hasha": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.0.0.tgz", - "integrity": "sha512-PqWdhnQhq6tqD32hZv+l1e5mJHNSudjnaAzgAHfkGiU0ABN6lmbZF8abJIulQHbZ7oiHhP8yL6O910ICMc+5pw==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.1.0.tgz", + "integrity": "sha512-OFPDWmzPN1l7atOV1TgBVmNtBxaIysToK6Ve9DK+vT6pYuklw/nPNT+HJbZi0KDcI6vWB+9tgvZ5YD7fA3CXcA==", "dev": true, "requires": { - "is-stream": "^1.1.0", - "type-fest": "^0.3.0" + "is-stream": "^2.0.0", + "type-fest": "^0.8.0" }, "dependencies": { "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true } } @@ -3936,9 +3949,9 @@ } }, "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", "dev": true }, "is-symbol": { @@ -4548,9 +4561,9 @@ "dev": true }, "loud-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-2.1.0.tgz", - "integrity": "sha512-g/6MQxUXYHeVqZ4PGpPL1fS1fOvlXoi7bay0pizmjAd/3JhyXwxzwrnr74yzdmhuerlslbRJ3x7IOXzFz0cE5w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-2.2.0.tgz", + "integrity": "sha512-S0FayMXku80toa5sZ6Ro4C+s+EtFDCsyJNG/AzFMfX3AxD5Si4dZsgzm/kKnbOxHl5Cv8jBlno8+3XYIh2pNjQ==", "dev": true, "requires": { "currently-unhandled": "^0.4.1", @@ -4959,9 +4972,9 @@ } }, "normalize-url": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.4.1.tgz", - "integrity": "sha512-rjH3yRt0Ssx19mUwS0hrDUOdG9VI+oRLpLHJ7tXRdjcuQ7v7wo6qPvOZppHRrqfslTKr0L2yBhjj4UXd7c3cQg==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", + "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", "dev": true }, "npm-run-path": { @@ -6175,9 +6188,9 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, "sinon": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.4.2.tgz", - "integrity": "sha512-pY5RY99DKelU3pjNxcWo6XqeB1S118GBcVIIdDi6V+h6hevn1izcg2xv1hTHW/sViRXU7sUOxt4wTUJ3gsW2CQ==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", + "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", "dev": true, "requires": { "@sinonjs/commons": "^1.4.0", @@ -6499,9 +6512,9 @@ } }, "supports-color": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.0.0.tgz", - "integrity": "sha512-WRt32iTpYEZWYOpcetGm0NPeSvaebccx7hhS/5M6sAiqnhedtFCHFxkjzZlJvFNCPowiKSFGiZk5USQDFy83vQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", "dev": true, "requires": { "has-flag": "^4.0.0" @@ -6705,14 +6718,6 @@ "make-dir": "^3.0.0", "temp-dir": "^1.0.0", "uuid": "^3.3.2" - }, - "dependencies": { - "is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true - } } }, "term-size": { @@ -6725,9 +6730,9 @@ } }, "terser": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.1.tgz", - "integrity": "sha512-pnzH6dnFEsR2aa2SJaKb1uSCl3QmIsJ8dEkj0Fky+2AwMMcC9doMqLOQIH6wVTEKaVfKVvLSk5qxPBEZT9mywg==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.4.tgz", + "integrity": "sha512-Kcrn3RiW8NtHBP0ssOAzwa2MsIRQ8lJWiBG/K7JgqPlomA3mtb2DEmp4/hrUA+Jujx+WZ02zqd7GYD+QRBB/2Q==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -6735,9 +6740,9 @@ }, "dependencies": { "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==" + "version": "2.20.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.1.tgz", + "integrity": "sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==" } } }, @@ -6934,9 +6939,9 @@ }, "dependencies": { "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "version": "2.20.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.1.tgz", + "integrity": "sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==", "dev": true, "optional": true } diff --git a/packages/project/package.json b/packages/project/package.json index ac198f18b7f..bcb5d0bb75a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,7 +119,7 @@ "nyc": "^14.1.1", "open-cli": "^5.0.0", "rimraf": "^3.0.0", - "sinon": "^7.4.2", + "sinon": "^7.5.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 53b8e967c8ffdf25bfe21d9d669ff519b5a25ca8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 6 Oct 2019 04:30:25 +0000 Subject: [PATCH 0246/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 112 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 57 insertions(+), 57 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9077d5e6efb..27c60b38e36 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -407,25 +407,25 @@ } }, "@nodelib/fs.scandir": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.2.tgz", - "integrity": "sha512-wrIBsjA5pl13f0RN4Zx4FNWmU71lv03meGKnqRUoCyan17s4V3WL92f3w3AIuWbNnpcrQyFBU5qMavJoB8d27w==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", + "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", "requires": { - "@nodelib/fs.stat": "2.0.2", + "@nodelib/fs.stat": "2.0.3", "run-parallel": "^1.1.9" } }, "@nodelib/fs.stat": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.2.tgz", - "integrity": "sha512-z8+wGWV2dgUhLqrtRYa03yDx4HWMvXKi1z8g3m2JyxAx8F7xk74asqPk5LAETjqDSGLFML/6CDl0+yFunSYicw==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", + "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==" }, "@nodelib/fs.walk": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.3.tgz", - "integrity": "sha512-l6t8xEhfK9Sa4YO5mIRdau7XSOADfmh3jCr0evNHdY+HNkW6xuQhgMH7D73VV6WpZOagrW0UludvMTiifiwTfA==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", + "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", "requires": { - "@nodelib/fs.scandir": "2.1.2", + "@nodelib/fs.scandir": "2.1.3", "fastq": "^1.6.0" } }, @@ -445,9 +445,9 @@ } }, "@sinonjs/formatio": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz", - "integrity": "sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", + "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", "dev": true, "requires": { "@sinonjs/commons": "^1", @@ -501,9 +501,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.7.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.8.tgz", - "integrity": "sha512-FMdVn84tJJdV+xe+53sYiZS4R5yn1mAIxfj+DVoNiQjTYz1+OYmjwEZr1ev9nU0axXwda0QDbYl06QHanRVH3A==" + "version": "12.7.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.11.tgz", + "integrity": "sha512-Otxmr2rrZLKRYIybtdG/sgeO+tHY20GxeDjcGmUnmmlCWyEnv2a2x1ZXBo3BTec4OiTXMQCiazB8NMBf0iRlFw==" }, "@ui5/builder": { "version": "1.5.1", @@ -734,9 +734,9 @@ } }, "anymatch": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.0.tgz", - "integrity": "sha512-Ozz7l4ixzI7Oxj2+cw+p0tVUt27BpaJ+1+q1TCeANWxHpvyn2+Un+YamBdfKu0uh8xLodGhoa1v7595NhKDAuA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", "dev": true, "requires": { "normalize-path": "^3.0.0", @@ -1473,19 +1473,19 @@ } }, "chokidar": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.1.1.tgz", - "integrity": "sha512-df4o16uZmMHzVQwECZRHwfguOt5ixpuQVaZHjYMvYisgKhE+JXwcj/Tcr3+3bu/XeOJQ9ycYmzu7Mv8XrGxJDQ==", - "dev": true, - "requires": { - "anymatch": "^3.1.0", - "braces": "^3.0.2", - "fsevents": "^2.0.6", - "glob-parent": "^5.0.0", - "is-binary-path": "^2.1.0", - "is-glob": "^4.0.1", - "normalize-path": "^3.0.0", - "readdirp": "^3.1.1" + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.2.1.tgz", + "integrity": "sha512-/j5PPkb5Feyps9e+jo07jUZGvkB5Aj953NrI4s8xSVScrAo/RHeILrtdb4uzR7N6aaFFxxJ+gt8mA8HfNpw76w==", + "dev": true, + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.0", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.1.3" }, "dependencies": { "normalize-path": { @@ -1991,9 +1991,9 @@ } }, "cross-env": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-6.0.0.tgz", - "integrity": "sha512-G/B6gtkjgthT8AP/xN1wdj5Xe18fVyk58JepK8GxpUbqcz3hyWxegocMbvnZK+KoTslwd0ACZ3woi/DVUdVjyQ==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-6.0.3.tgz", + "integrity": "sha512-+KqxF6LCvfhWvADcDPqo64yVIB31gv/jQulX2NGzKS/g3GEVz6/pt4wjHFtFWsHMddebWD/sDthJemzM4MaAag==", "dev": true, "requires": { "cross-spawn": "^7.0.0" @@ -2479,9 +2479,9 @@ } }, "es-abstract": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.14.2.tgz", - "integrity": "sha512-DgoQmbpFNOofkjJtKwr87Ma5EW4Dc8fWhD0R+ndq7Oc456ivUfGOOP6oAZTTKl5/CcNMP+EN+e3/iUzgE0veZg==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.15.0.tgz", + "integrity": "sha512-bhkEqWJ2t2lMeaJDuk7okMkJWI/yqgH/EoGwpcvv0XW9RWQsRspI4wt6xuyuvMvvQE3gg/D9HXppgk21w78GyQ==", "requires": { "es-to-primitive": "^1.2.0", "function-bind": "^1.1.1", @@ -2491,8 +2491,8 @@ "is-regex": "^1.0.4", "object-inspect": "^1.6.0", "object-keys": "^1.1.1", - "string.prototype.trimleft": "^2.0.0", - "string.prototype.trimright": "^2.0.0" + "string.prototype.trimleft": "^2.1.0", + "string.prototype.trimright": "^2.1.0" } }, "es-to-primitive": { @@ -3215,9 +3215,9 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.0.7.tgz", - "integrity": "sha512-a7YT0SV3RB+DjYcppwVDLtn13UQnmg0SWZS7ezZD0UjnLwXmy8Zm21GMVGLaFGimIqcvyMQaOJBrop8MyOp1kQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.0.tgz", + "integrity": "sha512-+iXhW3LuDQsno8dOIrCIT/CBjeBWuP7PXe8w9shnj9Lebny/Gx1ZjVBYwexLz36Ri2jKuXMNpV6CYNh8lHHgrQ==", "dev": true, "optional": true }, @@ -3375,9 +3375,9 @@ "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" }, "handlebars": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.3.4.tgz", - "integrity": "sha512-vvpo6mpK4ScNC1DbGRZ2d5BznS6ht0r1hi20RivsibMc6jNvFAeZQ6qk5VNspo6SOwVOJQbjHyBCpuS7BzA1pw==", + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.2.tgz", + "integrity": "sha512-cIv17+GhL8pHHnRJzGu2wwcthL5sb8uDKBHvZ2Dtu5s1YNt0ljbzKbamnc+gr69y7bzwQiBdr5+hOpRd5pnOdg==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -4308,9 +4308,9 @@ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, "json5": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz", - "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", + "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", "dev": true, "requires": { "minimist": "^1.2.0" @@ -5784,9 +5784,9 @@ } }, "readdirp": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.1.2.tgz", - "integrity": "sha512-8rhl0xs2cxfVsqzreYCvs8EwBfn/DhVdqtoLmw19uI3SC5avYX9teCurlErfpPXGmYtMHReGaP2RsLnFvz/lnw==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.1.3.tgz", + "integrity": "sha512-ZOsfTGkjO2kqeR5Mzr5RYDbTGYneSkdNKX2fOX2P5jF7vMrd/GNnIAUtDldeHHumHUCQ3V05YfWUdxMPAsRu9Q==", "dev": true, "requires": { "picomatch": "^2.0.4" @@ -6730,9 +6730,9 @@ } }, "terser": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.4.tgz", - "integrity": "sha512-Kcrn3RiW8NtHBP0ssOAzwa2MsIRQ8lJWiBG/K7JgqPlomA3mtb2DEmp4/hrUA+Jujx+WZ02zqd7GYD+QRBB/2Q==", + "version": "4.3.8", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.8.tgz", + "integrity": "sha512-otmIRlRVmLChAWsnSFNO0Bfk6YySuBp6G9qrHiJwlLDd4mxe2ta4sjI7TzIR+W1nBMjilzrMcPOz9pSusgx3hQ==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", diff --git a/packages/project/package.json b/packages/project/package.json index bcb5d0bb75a..af05338a29d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -110,7 +110,7 @@ "devDependencies": { "ava": "^2.4.0", "coveralls": "^3.0.6", - "cross-env": "^6.0.0", + "cross-env": "^6.0.3", "docdash": "^1.1.1", "eslint": "^5.16.0", "eslint-config-google": "^0.14.0", From d70d4894f20a965133730c71fa9d21ae6d484973 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Oct 2019 11:30:41 +0000 Subject: [PATCH 0247/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.5.1 to 1.5.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.5.2/CHANGELOG.md --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 27c60b38e36..d57ced2542d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -506,9 +506,9 @@ "integrity": "sha512-Otxmr2rrZLKRYIybtdG/sgeO+tHY20GxeDjcGmUnmmlCWyEnv2a2x1ZXBo3BTec4OiTXMQCiazB8NMBf0iRlFw==" }, "@ui5/builder": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.5.1.tgz", - "integrity": "sha512-wivVhwpdoT0sndhKrS5FTK0FbeI5Rhf0cTVEq0A1UFiXnP5gwV6JG7iR9ufXeTnq9VJphzywUaLejaswvAThXw==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.5.2.tgz", + "integrity": "sha512-3C01CDnl/p/yWj0Va/35//EaZXlqsjIGuJoukjIsJI17Wd00f9TXjo3tbF7ik/zaAhAMO5SMER5C7Lz6+TQUOg==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.1", @@ -529,8 +529,8 @@ "rimraf": "^3.0.0", "semver": "^6.3.0", "slash": "^3.0.0", - "terser": "^4.2.1", - "xml2js": "^0.4.17", + "terser": "^4.3.8", + "xml2js": "^0.4.22", "yazl": "^2.5.1" }, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index af05338a29d..74de7304855 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.5.1", + "@ui5/builder": "^1.5.2", "@ui5/logger": "^1.0.1", "@ui5/server": "^1.3.0", "graceful-fs": "^4.2.2", From 812db1eee3f84bb448ccca135c8e514d228893d0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 11 Oct 2019 15:58:06 +0000 Subject: [PATCH 0248/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.5.2 to 1.5.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.5.3/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d57ced2542d..1f0edbe5996 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -506,9 +506,9 @@ "integrity": "sha512-Otxmr2rrZLKRYIybtdG/sgeO+tHY20GxeDjcGmUnmmlCWyEnv2a2x1ZXBo3BTec4OiTXMQCiazB8NMBf0iRlFw==" }, "@ui5/builder": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.5.2.tgz", - "integrity": "sha512-3C01CDnl/p/yWj0Va/35//EaZXlqsjIGuJoukjIsJI17Wd00f9TXjo3tbF7ik/zaAhAMO5SMER5C7Lz6+TQUOg==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.5.3.tgz", + "integrity": "sha512-AueEHxcQj9VV4ZewhVLV2i9MbNcPO8uUIyzkdQxaoVlQT67wJcx3ar/DQImmAQtbOo36PjjC5ukHX623A4PDmw==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.1", @@ -6740,9 +6740,9 @@ }, "dependencies": { "commander": { - "version": "2.20.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.1.tgz", - "integrity": "sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==" + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" } } }, diff --git a/packages/project/package.json b/packages/project/package.json index 74de7304855..35d3a72c8f3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.5.2", + "@ui5/builder": "^1.5.3", "@ui5/logger": "^1.0.1", "@ui5/server": "^1.3.0", "graceful-fs": "^4.2.2", From 79ad53971e42a8b0a79f60249df3b69663a92515 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 13 Oct 2019 04:23:43 +0000 Subject: [PATCH 0249/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 133 +++++++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 79 insertions(+), 56 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1f0edbe5996..54228b6ba91 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,18 +43,18 @@ } }, "@babel/core": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.6.2.tgz", - "integrity": "sha512-l8zto/fuoZIbncm+01p8zPSDZu/VuuJhAfA7d/AbzM09WR7iVhavvfNDYCNpo1VvLk6E6xgAoP9P+/EMJHuRkQ==", + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.6.4.tgz", + "integrity": "sha512-Rm0HGw101GY8FTzpWSyRbki/jzq+/PkNQJ+nSulrdY6gFGOsNseCqD6KHRYe2E+EdzuBdr2pxCp6s4Uk6eJ+XQ==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.6.2", + "@babel/generator": "^7.6.4", "@babel/helpers": "^7.6.2", - "@babel/parser": "^7.6.2", + "@babel/parser": "^7.6.4", "@babel/template": "^7.6.0", - "@babel/traverse": "^7.6.2", - "@babel/types": "^7.6.0", + "@babel/traverse": "^7.6.3", + "@babel/types": "^7.6.3", "convert-source-map": "^1.1.0", "debug": "^4.1.0", "json5": "^2.1.0", @@ -94,12 +94,12 @@ } }, "@babel/generator": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.6.2.tgz", - "integrity": "sha512-j8iHaIW4gGPnViaIHI7e9t/Hl8qLjERI6DcV9kEpAIDJsAOrcnXqRS7t+QbhL76pwbtqP+QCQLL0z1CyVmtjjQ==", + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.6.4.tgz", + "integrity": "sha512-jsBuXkFoZxk0yWLyGI9llT9oiQ2FeTASmRFE32U+aaDTfoE92t78eroO7PTpU/OrYq38hlcDM6vbfLDaOLy+7w==", "dev": true, "requires": { - "@babel/types": "^7.6.0", + "@babel/types": "^7.6.3", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -247,9 +247,9 @@ } }, "@babel/parser": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.6.2.tgz", - "integrity": "sha512-mdFqWrSPCmikBoaBYMuBulzTIKuXVPtEISFbRRVNwMWpCms/hmE2kRq0bblUHaNRKrjRlmVbx1sDHmjmRgD2Xg==", + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.6.4.tgz", + "integrity": "sha512-D8RHPW5qd0Vbyo3qb+YjO5nvUVRTXFLQ/FsDxJU2Nqz4uB5EnUN0ZQSEYpvTIbRuttig1XbHWU5oMeQwQSAA+A==", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { @@ -345,17 +345,17 @@ } }, "@babel/traverse": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.6.2.tgz", - "integrity": "sha512-8fRE76xNwNttVEF2TwxJDGBLWthUkHWSldmfuBzVRmEDWOtu4XdINTgN7TDWzuLg4bbeIMLvfMFD9we5YcWkRQ==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.6.3.tgz", + "integrity": "sha512-unn7P4LGsijIxaAJo/wpoU11zN+2IaClkQAxcJWBNCMS6cmVh802IyLHNkAjQ0iYnRS3nnxk5O3fuXW28IMxTw==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.6.2", + "@babel/generator": "^7.6.3", "@babel/helper-function-name": "^7.1.0", "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.6.2", - "@babel/types": "^7.6.0", + "@babel/parser": "^7.6.3", + "@babel/types": "^7.6.3", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -379,9 +379,9 @@ } }, "@babel/types": { - "version": "7.6.1", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.6.1.tgz", - "integrity": "sha512-X7gdiuaCmA0uRjCmRtYJNAVCc/q+5xSgsfKJHqMN4iNLILX39677fJE1O40arPMh0TTtS9ItH67yre6c7k6t0g==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.6.3.tgz", + "integrity": "sha512-CqbcpTxMcpuQTMhjI37ZHVgjBkysg5icREQIEZ0eG1yCNwg3oy+5AaLiOKmjsCj6nqOsa6Hf0ObjRVwokb7srA==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -501,9 +501,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.7.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.11.tgz", - "integrity": "sha512-Otxmr2rrZLKRYIybtdG/sgeO+tHY20GxeDjcGmUnmmlCWyEnv2a2x1ZXBo3BTec4OiTXMQCiazB8NMBf0iRlFw==" + "version": "12.7.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.12.tgz", + "integrity": "sha512-KPYGmfD0/b1eXurQ59fXD1GBzhSQfz6/lKBxkaHX9dKTzjXbK68Zt7yGUxUsCS1jeTy/8aL+d9JEr+S54mpkWQ==" }, "@ui5/builder": { "version": "1.5.3", @@ -1932,9 +1932,9 @@ } }, "coveralls": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.6.tgz", - "integrity": "sha512-Pgh4v3gCI4T/9VijVrm8Ym5v0OgjvGLKj3zTUwkvsCiwqae/p6VLzpsFNjQS2i6ewV7ef+DjFJ5TSKxYt/mCrA==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.7.tgz", + "integrity": "sha512-mUuH2MFOYB2oBaA4D4Ykqi9LaEYpMMlsiOMJOrv358yAjP6enPIk55fod2fNJ8AvwoYXStWQls37rA+s5e7boA==", "dev": true, "requires": { "growl": "~> 1.10.0", @@ -2000,14 +2000,14 @@ }, "dependencies": { "cross-spawn": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.0.tgz", - "integrity": "sha512-6U/8SMK2FBNnB21oQ4+6Nsodxanw1gTkntYA2zBdkFYFu3ZDx65P2ONEXGSvob/QS6REjVHQ9zxzdOafwFdstw==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz", + "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", "dev": true, "requires": { "path-key": "^3.1.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "shebang-command": "^2.0.0", + "which": "^2.0.1" } }, "path-key": { @@ -2015,6 +2015,30 @@ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.0.tgz", "integrity": "sha512-8cChqz0RP6SHJkMt48FW0A7+qUOn+OsnOsVtzI59tZ8m+5bCSk7hzwET0pulwOM2YMn9J1efb07KB9l9f30SGg==", "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "which": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.1.tgz", + "integrity": "sha512-N7GBZOTswtB9lkQBZA4+zAXrjEIWAUOB93AvzUiudRzRxhUdLURQ7D/gAIMY1gatT/LTbmbcv8SiYazy3eYB7w==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } } } }, @@ -2983,15 +3007,14 @@ "dev": true }, "fast-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.4.tgz", - "integrity": "sha512-wkIbV6qg37xTJwqSsdnIphL1e+LaGz4AIQqr00mIubMaEhv1/HEmJ0uuCGZRNRUkZZmOB5mJKO0ZUTVq+SxMQg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.1.0.tgz", + "integrity": "sha512-TrUz3THiq2Vy3bjfQUB2wNyPdGBeGmdjbzzBLhfHN4YFurYptCKwGq/TfiRavbGywFRzY6U2CdmQ1zmsY5yYaw==", "requires": { - "@nodelib/fs.stat": "^2.0.1", - "@nodelib/fs.walk": "^1.2.1", - "glob-parent": "^5.0.0", - "is-glob": "^4.0.1", - "merge2": "^1.2.3", + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.0", + "merge2": "^1.3.0", "micromatch": "^4.0.2" } }, @@ -3375,9 +3398,9 @@ "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" }, "handlebars": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.2.tgz", - "integrity": "sha512-cIv17+GhL8pHHnRJzGu2wwcthL5sb8uDKBHvZ2Dtu5s1YNt0ljbzKbamnc+gr69y7bzwQiBdr5+hOpRd5pnOdg==", + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.3.tgz", + "integrity": "sha512-B0W4A2U1ww3q7VVthTKfh+epHx+q4mCt6iK+zEAzbMBpWQAwxCeKxEGpj/1oQTpzPXDNSOG7hmG14TsISH50yw==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -3458,9 +3481,9 @@ } }, "hosted-git-info": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.4.tgz", - "integrity": "sha512-pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ==" + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", + "integrity": "sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg==" }, "hpack.js": { "version": "2.1.6", @@ -6928,20 +6951,20 @@ "dev": true }, "uglify-js": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz", - "integrity": "sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.1.tgz", + "integrity": "sha512-+dSJLJpXBb6oMHP+Yvw8hUgElz4gLTh82XuX68QiJVTXaE5ibl6buzhNkQdYhBlIhozWOC9ge16wyRmjG4TwVQ==", "dev": true, "optional": true, "requires": { - "commander": "~2.20.0", + "commander": "2.20.0", "source-map": "~0.6.1" }, "dependencies": { "commander": { - "version": "2.20.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.1.tgz", - "integrity": "sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==", + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", "dev": true, "optional": true } diff --git a/packages/project/package.json b/packages/project/package.json index 35d3a72c8f3..c99b9a117ee 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -109,7 +109,7 @@ }, "devDependencies": { "ava": "^2.4.0", - "coveralls": "^3.0.6", + "coveralls": "^3.0.7", "cross-env": "^6.0.3", "docdash": "^1.1.1", "eslint": "^5.16.0", From 23efeee9f648f9731ea09b0078f79c5d11764879 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 11 Oct 2019 15:57:30 +0200 Subject: [PATCH 0250/1272] [ui5-project][INTERNAL] Add SECURITY.md --- packages/project/SECURITY.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 packages/project/SECURITY.md diff --git a/packages/project/SECURITY.md b/packages/project/SECURITY.md new file mode 100644 index 00000000000..da276fcb90a --- /dev/null +++ b/packages/project/SECURITY.md @@ -0,0 +1,10 @@ +# Reporting Security Issues + +We take security issues in our projects seriously. We appreciate your efforts to responsibly disclose your findings. + +Please do not report security issues directly on GitHub but using one of the channels listed below. This allows us to provide a fix before an issue can be exploited. + +- **Researchers/Non-SAP Customers:** Please consult SAPs [disclosure guidelines](https://wiki.scn.sap.com/wiki/display/PSR/Disclosure+Guidelines+for+SAP+Security+Advisories) and send the related information in a PGP encrypted e-mail to secure@sap.com. Find the public PGP key [here](https://www.sap.com/dmc/policies/pgp/keyblock.txt). +- **SAP Customers:** If the security issue is not covered by a published security note, please report it by creating a customer message at https://launchpad.support.sap.com. + +Please also refer to the general [SAP security information page](https://www.sap.com/about/trust-center/security/incident-management.html). From ca1d46f3e82e3d26bbadcd68c1f0cab850f9f5bf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 14 Oct 2019 12:16:47 +0000 Subject: [PATCH 0251/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 1.0.1 to 1.0.2 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v1.0.2/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 54228b6ba91..f46d78e503a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -574,9 +574,9 @@ } }, "@ui5/logger": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.1.tgz", - "integrity": "sha512-GxOuiKLjGLNVOJLvE50Mp8NVS6eUuVB1r2MC9u8bqOyUGpRK5P3ULvK2HlR6IjCMNsblbgsOi3VM0JbakPlAVA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.2.tgz", + "integrity": "sha512-k49q5D7EBk4vGzpM81KDNyGL4YaB12v8qYNqR7/5f4xoAksotf7h3VeAjCmJFSttEOnC9LNb9GYTzJAWJoCv7w==", "requires": { "npmlog": "^4.1.2" } diff --git a/packages/project/package.json b/packages/project/package.json index c99b9a117ee..bd5d6a07233 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -97,7 +97,7 @@ }, "dependencies": { "@ui5/builder": "^1.5.3", - "@ui5/logger": "^1.0.1", + "@ui5/logger": "^1.0.2", "@ui5/server": "^1.3.0", "graceful-fs": "^4.2.2", "js-yaml": "^3.13.1", From 9e46465633a9088099b2112a66b39485ecbfe0aa Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 20 Oct 2019 04:27:00 +0000 Subject: [PATCH 0252/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 78 +++++++++++++++--------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f46d78e503a..7f7e5ced66c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -501,9 +501,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.7.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.12.tgz", - "integrity": "sha512-KPYGmfD0/b1eXurQ59fXD1GBzhSQfz6/lKBxkaHX9dKTzjXbK68Zt7yGUxUsCS1jeTy/8aL+d9JEr+S54mpkWQ==" + "version": "12.11.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.11.1.tgz", + "integrity": "sha512-TJtwsqZ39pqcljJpajeoofYRfeZ7/I/OMUQ5pR4q5wOKf2ocrUvBAZUMhWsOvKx3dVc/aaV5GluBivt0sWqA5A==" }, "@ui5/builder": { "version": "1.5.3", @@ -622,9 +622,9 @@ "dev": true }, "acorn-jsx": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.2.tgz", - "integrity": "sha512-tiNTrP1MP0QrChmD2DdupCr6HWSFeKVw5d/dHTu4Y7rkAkRhU/Dt7dphAfIUyxtHpl/eBVip5uTNSpQJHylpAw==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz", + "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==", "dev": true }, "ajv": { @@ -1473,19 +1473,19 @@ } }, "chokidar": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.2.1.tgz", - "integrity": "sha512-/j5PPkb5Feyps9e+jo07jUZGvkB5Aj953NrI4s8xSVScrAo/RHeILrtdb4uzR7N6aaFFxxJ+gt8mA8HfNpw76w==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.2.2.tgz", + "integrity": "sha512-bw3pm7kZ2Wa6+jQWYP/c7bAZy3i4GwiIiMO2EeRjrE48l8vBqC/WvFhSF0xyM8fQiPEGvwMY/5bqDG7sSEOuhg==", "dev": true, "requires": { "anymatch": "~3.1.1", "braces": "~3.0.2", - "fsevents": "~2.1.0", + "fsevents": "~2.1.1", "glob-parent": "~5.1.0", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.1.3" + "readdirp": "~3.2.0" }, "dependencies": { "normalize-path": { @@ -1912,9 +1912,9 @@ "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, "core-js": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", - "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", + "version": "2.6.10", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.10.tgz", + "integrity": "sha512-I39t74+4t+zau64EN1fE5v2W31Adtc/REhzWN+gWRRXg6WH5qAsZm62DHpQ1+Yhe4047T55jvzz7MUqF/dBBlA==", "dev": true }, "core-util-is": { @@ -2503,9 +2503,9 @@ } }, "es-abstract": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.15.0.tgz", - "integrity": "sha512-bhkEqWJ2t2lMeaJDuk7okMkJWI/yqgH/EoGwpcvv0XW9RWQsRspI4wt6xuyuvMvvQE3gg/D9HXppgk21w78GyQ==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.0.tgz", + "integrity": "sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg==", "requires": { "es-to-primitive": "^1.2.0", "function-bind": "^1.1.1", @@ -3238,9 +3238,9 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.0.tgz", - "integrity": "sha512-+iXhW3LuDQsno8dOIrCIT/CBjeBWuP7PXe8w9shnj9Lebny/Gx1ZjVBYwexLz36Ri2jKuXMNpV6CYNh8lHHgrQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.1.tgz", + "integrity": "sha512-4FRPXWETxtigtJW/gxzEDsX1LVbPAM93VleB83kZB+ellqbHMkyt2aJfuzNLRvFPnGi6bcE5SvfxgbXPeKteJw==", "dev": true, "optional": true }, @@ -4637,9 +4637,9 @@ } }, "markdown-it-anchor": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.4.tgz", - "integrity": "sha512-n8zCGjxA3T+Mx1pG8HEgbJbkB8JFUuRkeTZQuIM8iPY6oQ8sWOPRZJDFC9a/pNg2QkHEjjGkhBEl/RSyzaDZ3A==", + "version": "5.2.5", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.5.tgz", + "integrity": "sha512-xLIjLQmtym3QpoY9llBgApknl7pxAcN3WDRc2d3rwpl+/YvDZHPmKscGs+L6E05xf2KrCXPBvosWt7MZukwSpQ==", "dev": true }, "marked": { @@ -5807,9 +5807,9 @@ } }, "readdirp": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.1.3.tgz", - "integrity": "sha512-ZOsfTGkjO2kqeR5Mzr5RYDbTGYneSkdNKX2fOX2P5jF7vMrd/GNnIAUtDldeHHumHUCQ3V05YfWUdxMPAsRu9Q==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", + "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==", "dev": true, "requires": { "picomatch": "^2.0.4" @@ -6753,9 +6753,9 @@ } }, "terser": { - "version": "4.3.8", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.8.tgz", - "integrity": "sha512-otmIRlRVmLChAWsnSFNO0Bfk6YySuBp6G9qrHiJwlLDd4mxe2ta4sjI7TzIR+W1nBMjilzrMcPOz9pSusgx3hQ==", + "version": "4.3.9", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.9.tgz", + "integrity": "sha512-NFGMpHjlzmyOtPL+fDw3G7+6Ueh/sz4mkaUYa4lJCxOPTNzd0Uj0aZJOmsDYoSQyfuVoWDMSWTPU3huyOm2zdA==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -6951,20 +6951,20 @@ "dev": true }, "uglify-js": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.1.tgz", - "integrity": "sha512-+dSJLJpXBb6oMHP+Yvw8hUgElz4gLTh82XuX68QiJVTXaE5ibl6buzhNkQdYhBlIhozWOC9ge16wyRmjG4TwVQ==", + "version": "3.6.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.3.tgz", + "integrity": "sha512-KfQUgOqTkLp2aZxrMbCuKCDGW9slFYu2A23A36Gs7sGzTLcRBDORdOi5E21KWHFIfkY8kzgi/Pr1cXCh0yIp5g==", "dev": true, "optional": true, "requires": { - "commander": "2.20.0", + "commander": "~2.20.3", "source-map": "~0.6.1" }, "dependencies": { "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true, "optional": true } @@ -7351,9 +7351,9 @@ } }, "write-file-atomic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.0.tgz", - "integrity": "sha512-EIgkf60l2oWsffja2Sf2AL384dx328c0B+cIYPTQq5q2rOYuDV00/iPFBOUiDKKwKMOhkymH8AidPaRvzfxY+Q==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.1.tgz", + "integrity": "sha512-JPStrIyyVJ6oCSz/691fAjFtefZ6q+fP6tm+OS4Qw6o+TGQxNp1ziY2PgS+X/m0V8OWhZiO/m4xSj+Pr4RrZvw==", "dev": true, "requires": { "imurmurhash": "^0.1.4", From 7cae204fd525c2293ef5e342e964f9ad3795f040 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 24 Oct 2019 14:25:53 +0000 Subject: [PATCH 0253/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.5.3 to 1.6.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.6.1/CHANGELOG.md --- packages/project/package-lock.json | 104 +++++------------------------ packages/project/package.json | 2 +- 2 files changed, 18 insertions(+), 88 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7f7e5ced66c..f37176f697e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -249,8 +249,7 @@ "@babel/parser": { "version": "7.6.4", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.6.4.tgz", - "integrity": "sha512-D8RHPW5qd0Vbyo3qb+YjO5nvUVRTXFLQ/FsDxJU2Nqz4uB5EnUN0ZQSEYpvTIbRuttig1XbHWU5oMeQwQSAA+A==", - "dev": true + "integrity": "sha512-D8RHPW5qd0Vbyo3qb+YjO5nvUVRTXFLQ/FsDxJU2Nqz4uB5EnUN0ZQSEYpvTIbRuttig1XbHWU5oMeQwQSAA+A==" }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.2.0", @@ -506,12 +505,12 @@ "integrity": "sha512-TJtwsqZ39pqcljJpajeoofYRfeZ7/I/OMUQ5pR4q5wOKf2ocrUvBAZUMhWsOvKx3dVc/aaV5GluBivt0sWqA5A==" }, "@ui5/builder": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.5.3.tgz", - "integrity": "sha512-AueEHxcQj9VV4ZewhVLV2i9MbNcPO8uUIyzkdQxaoVlQT67wJcx3ar/DQImmAQtbOo36PjjC5ukHX623A4PDmw==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.6.1.tgz", + "integrity": "sha512-EaJsWH/IK3aBO4VteeVevcMvYgI23xQ1Ze/NcoPgEy4gnjwqLQ6tMBOS2S2sQ6uETMWTigSZvoeFW0htJQ1TOA==", "requires": { "@ui5/fs": "^1.1.2", - "@ui5/logger": "^1.0.1", + "@ui5/logger": "^1.0.2", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", "escodegen": "^1.12.0", @@ -520,7 +519,7 @@ "estraverse": "^4.3.0", "globby": "^10.0.1", "graceful-fs": "^4.2.2", - "jsdoc": "3.5.5", + "jsdoc": "~3.6.3", "less-openui5": "^0.6.0", "make-dir": "^3.0.0", "pretty-data": "^0.40.0", @@ -529,30 +528,9 @@ "rimraf": "^3.0.0", "semver": "^6.3.0", "slash": "^3.0.0", - "terser": "^4.3.8", + "terser": "^4.3.9", "xml2js": "^0.4.22", "yazl": "^2.5.1" - }, - "dependencies": { - "jsdoc": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz", - "integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==", - "requires": { - "babylon": "7.0.0-beta.19", - "bluebird": "~3.5.0", - "catharsis": "~0.8.9", - "escape-string-regexp": "~1.0.5", - "js2xmlparser": "~3.0.0", - "klaw": "~2.0.0", - "marked": "~0.3.6", - "mkdirp": "~0.5.1", - "requizzle": "~0.2.1", - "strip-json-comments": "~2.0.1", - "taffydb": "2.6.2", - "underscore": "~1.8.3" - } - } } }, "@ui5/fs": { @@ -1067,11 +1045,6 @@ "estraverse": "^4.1.1" } }, - "babylon": { - "version": "7.0.0-beta.19", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz", - "integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A==" - }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", @@ -4201,14 +4174,6 @@ "esprima": "^4.0.0" } }, - "js2xmlparser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-3.0.0.tgz", - "integrity": "sha1-P7YOqgicVED5MZ9RdgzNB+JJlzM=", - "requires": { - "xmlcreate": "^1.0.1" - } - }, "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", @@ -4218,7 +4183,6 @@ "version": "3.6.3", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.3.tgz", "integrity": "sha512-Yf1ZKA3r9nvtMWHO1kEuMZTlHOF8uoQ0vyo5eH7SQy5YeIiHM+B0DgKnn+X6y6KDYZcF7G2SPkKF+JORCXWE/A==", - "dev": true, "requires": { "@babel/parser": "^7.4.4", "bluebird": "^3.5.4", @@ -4239,14 +4203,12 @@ "escape-string-regexp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" }, "js2xmlparser": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.0.tgz", "integrity": "sha512-WuNgdZOXVmBk5kUPMcTcVUpbGRzLfNkv7+7APq7WiDihpXVKrgxo6wwRpRl9OQeEBgKCVk9mR7RbzrnNWC8oBw==", - "dev": true, "requires": { "xmlcreate": "^2.0.0" } @@ -4255,7 +4217,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", - "dev": true, "requires": { "graceful-fs": "^4.1.9" } @@ -4263,26 +4224,22 @@ "marked": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/marked/-/marked-0.7.0.tgz", - "integrity": "sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==", - "dev": true + "integrity": "sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==" }, "strip-json-comments": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", - "dev": true + "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==" }, "underscore": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", - "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==", - "dev": true + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==" }, "xmlcreate": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.1.tgz", - "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==", - "dev": true + "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==" } } }, @@ -4373,14 +4330,6 @@ "json-buffer": "3.0.0" } }, - "klaw": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-2.0.0.tgz", - "integrity": "sha1-WcEo4Nxc5BAgEVEZTuucv4WGUPY=", - "requires": { - "graceful-fs": "^4.1.9" - } - }, "latest-version": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", @@ -4449,7 +4398,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", - "dev": true, "requires": { "uc.micro": "^1.0.1" } @@ -4627,7 +4575,6 @@ "version": "8.4.2", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", - "dev": true, "requires": { "argparse": "^1.0.7", "entities": "~1.1.1", @@ -4639,13 +4586,7 @@ "markdown-it-anchor": { "version": "5.2.5", "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.5.tgz", - "integrity": "sha512-xLIjLQmtym3QpoY9llBgApknl7pxAcN3WDRc2d3rwpl+/YvDZHPmKscGs+L6E05xf2KrCXPBvosWt7MZukwSpQ==", - "dev": true - }, - "marked": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" + "integrity": "sha512-xLIjLQmtym3QpoY9llBgApknl7pxAcN3WDRc2d3rwpl+/YvDZHPmKscGs+L6E05xf2KrCXPBvosWt7MZukwSpQ==" }, "matcher": { "version": "2.0.0", @@ -4682,8 +4623,7 @@ "mdurl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", - "dev": true + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" }, "media-typer": { "version": "0.3.0", @@ -6490,7 +6430,8 @@ "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true }, "supertap": { "version": "1.0.0", @@ -6947,8 +6888,7 @@ "uc.micro": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", - "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", - "dev": true + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "uglify-js": { "version": "3.6.3", @@ -6976,11 +6916,6 @@ "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", "dev": true }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" - }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", @@ -7383,11 +7318,6 @@ "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" }, - "xmlcreate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-1.0.2.tgz", - "integrity": "sha1-+mv3YqYKQT+z3Y9LA8WyaSONMI8=" - }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index bd5d6a07233..91aa521bb38 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.5.3", + "@ui5/builder": "^1.6.1", "@ui5/logger": "^1.0.2", "@ui5/server": "^1.3.0", "graceful-fs": "^4.2.2", From 88179921634a07fe37e2cee101f521782ca6351b Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 24 Oct 2019 14:35:30 +0000 Subject: [PATCH 0254/1272] [ui5-project][INTERNAL] Bump @ui5/server from 1.3.0 to 1.4.0 Changelog of this version: https://github.com/SAP/ui5-server/blob/v1.4.0/CHANGELOG.md --- packages/project/package-lock.json | 180 +++++------------------------ packages/project/package.json | 2 +- 2 files changed, 32 insertions(+), 150 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f37176f697e..2468b0976bf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -560,15 +560,15 @@ } }, "@ui5/server": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.3.0.tgz", - "integrity": "sha512-WLHDhFnseWZC+e+wrz/Wu5LwWBHVrXx1Fg7xJ4PK/bn63VDCFRBNdJ8wMC20TbxJjkZxSH9EWUZRDmo7hkhX4w==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.4.0.tgz", + "integrity": "sha512-ARyFMUFi+kzejK0+ErrR3tYNz0MirRloURwnpL6r0pr7+e/VOCHgrxb/RUrVOVnPqtKug6Tnd+SNqIciNNXswA==", "requires": { - "@ui5/builder": "^1.4.0", + "@ui5/builder": "^1.6.1", "@ui5/fs": "^1.1.2", - "@ui5/logger": "^1.0.1", + "@ui5/logger": "^1.0.2", "compression": "^1.7.4", - "connect-openui5": "^0.7.7", + "connect-openui5": "^0.8.0", "cors": "^2.8.5", "devcert-sanscache": "^0.4.5", "etag": "^1.8.1", @@ -578,10 +578,10 @@ "mime-types": "^2.1.24", "parseurl": "^1.3.3", "portscanner": "^2.1.1", - "prompt": "^1.0.0", "replacestream": "^4.0.3", "spdy": "^3.4.7", - "treeify": "^1.0.1" + "treeify": "^1.0.1", + "yesno": "^0.3.1" } }, "accepts": { @@ -826,12 +826,9 @@ "dev": true }, "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", - "requires": { - "lodash": "^4.17.14" - } + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.1.0.tgz", + "integrity": "sha512-4vx/aaY6j/j3Lw3fbCHNWP0pPaTCew3F6F3hYyl/tHs/ndmV1q7NW9T5yuJ2XAGwdQrP+6Wu20x06U4APo/iQQ==" }, "asynckit": { "version": "0.4.0", @@ -1673,11 +1670,6 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, - "colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==" - }, "combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -1830,14 +1822,14 @@ } }, "connect-openui5": { - "version": "0.7.7", - "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.7.7.tgz", - "integrity": "sha512-7tV7ePr4ervxd81LSeIx012U1zWsqnpBRL7tpMsx2c8KKZgm6JGl8OrxGIuANOXX0Rbp5sdfYrpEQW0ztyKQzw==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.8.0.tgz", + "integrity": "sha512-dfdsj3yHQTHmpcInYfk3PAwhPVXBc5DFYzx6OTCdO3leyIEMcs3CZQL//bmvpu6tH7aEmvXmdaB7AeMYc+j5/g==", "requires": { - "async": "^2.6.0", + "async": "^3.1.0", "extend": "^3.0.0", "glob": "^7.1.4", - "http-proxy": "^1.12.0", + "http-proxy": "^1.18.0", "less-openui5": "^0.6.0" } }, @@ -2068,11 +2060,6 @@ "array-find-index": "^1.0.1" } }, - "cycle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=" - }, "d": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", @@ -2145,11 +2132,6 @@ "mimic-response": "^1.0.0" } }, - "deep-equal": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-0.2.2.tgz", - "integrity": "sha1-hLdFiW80xoTpjyzg5Cq69Du6AX0=" - }, "deep-extend": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", @@ -2963,11 +2945,6 @@ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, - "eyes": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=" - }, "fast-deep-equal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", @@ -3544,11 +3521,6 @@ "sshpk": "^1.7.0" } }, - "i": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/i/-/i-0.3.6.tgz", - "integrity": "sha1-2WyScyB28HJxG2sQ/X1PZa2O4j0=" - }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -4834,22 +4806,12 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" - }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, - "ncp": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ncp/-/ncp-1.0.1.tgz", - "integrity": "sha1-0VNn5cuHQyuhF9K/gP30Wuz7QkY=" - }, "negotiator": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", @@ -5524,11 +5486,6 @@ } } }, - "pkginfo": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.4.1.tgz", - "integrity": "sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=" - }, "plur": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/plur/-/plur-3.1.1.tgz", @@ -5545,6 +5502,16 @@ "requires": { "async": "^2.6.0", "is-number-like": "^1.0.3" + }, + "dependencies": { + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "requires": { + "lodash": "^4.17.14" + } + } } }, "prelude-ls": { @@ -5588,19 +5555,6 @@ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, - "prompt": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prompt/-/prompt-1.0.0.tgz", - "integrity": "sha1-jlcSPDlquYiJf7Mn/Trtw+c15P4=", - "requires": { - "colors": "^1.1.2", - "pkginfo": "0.x.x", - "read": "1.0.x", - "revalidator": "0.1.x", - "utile": "0.3.x", - "winston": "2.1.x" - } - }, "proxy-addr": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", @@ -5695,14 +5649,6 @@ } } }, - "read": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", - "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=", - "requires": { - "mute-stream": "~0.0.4" - } - }, "read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", @@ -5993,11 +5939,6 @@ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" }, - "revalidator": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/revalidator/-/revalidator-0.1.8.tgz", - "integrity": "sha1-/s5hv6DBtSoga9axgZgYS91SOjs=" - }, "rimraf": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.0.tgz", @@ -6341,11 +6282,6 @@ "tweetnacl": "~0.14.0" } }, - "stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=" - }, "stack-utils": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", @@ -7025,34 +6961,6 @@ "object.getownpropertydescriptors": "^2.0.3" } }, - "utile": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/utile/-/utile-0.3.0.tgz", - "integrity": "sha1-E1LDQOuCDk2N26A5pPv6oy7U7zo=", - "requires": { - "async": "~0.9.0", - "deep-equal": "~0.2.1", - "i": "0.3.x", - "mkdirp": "0.x.x", - "ncp": "1.0.x", - "rimraf": "2.x.x" - }, - "dependencies": { - "async": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", - "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - } - } - }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -7175,37 +7083,6 @@ } } }, - "winston": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/winston/-/winston-2.1.1.tgz", - "integrity": "sha1-PJNJ0ZYgf9G9/51LxD73JRDjoS4=", - "requires": { - "async": "~1.0.0", - "colors": "1.0.x", - "cycle": "1.0.x", - "eyes": "0.1.x", - "isstream": "0.1.x", - "pkginfo": "0.3.x", - "stack-trace": "0.0.x" - }, - "dependencies": { - "async": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", - "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=" - }, - "colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=" - }, - "pkginfo": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", - "integrity": "sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=" - } - } - }, "wordwrap": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", @@ -7432,6 +7309,11 @@ "requires": { "buffer-crc32": "~0.2.3" } + }, + "yesno": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/yesno/-/yesno-0.3.1.tgz", + "integrity": "sha512-7RbCXegyu6DykWPWU0YEtW8gFJH8KBL2d5l2fqB0XpkH0Y9rk59YSSWpzEv7yNJBGAouPc67h3kkq0CZkpBdFw==" } } } diff --git a/packages/project/package.json b/packages/project/package.json index 91aa521bb38..897f2ec17d8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,7 +98,7 @@ "dependencies": { "@ui5/builder": "^1.6.1", "@ui5/logger": "^1.0.2", - "@ui5/server": "^1.3.0", + "@ui5/server": "^1.4.0", "graceful-fs": "^4.2.2", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", From adaa1d4ca29a2eb2e9af2d77f604a54bc2c1eae0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 27 Oct 2019 04:19:58 +0000 Subject: [PATCH 0255/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 250 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 134 insertions(+), 118 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2468b0976bf..43263855d42 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -500,9 +500,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.11.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.11.1.tgz", - "integrity": "sha512-TJtwsqZ39pqcljJpajeoofYRfeZ7/I/OMUQ5pR4q5wOKf2ocrUvBAZUMhWsOvKx3dVc/aaV5GluBivt0sWqA5A==" + "version": "12.11.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.11.7.tgz", + "integrity": "sha512-JNbGaHFCLwgHn/iCckiGSOZ1XYHsKFwREtzPwSGCVld1SGhOlmZw2D4ZI94HQCrBHbADzW9m4LER/8olJTRGHA==" }, "@ui5/builder": { "version": "1.6.1", @@ -936,12 +936,6 @@ "ms": "^2.1.1" } }, - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true - }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -1062,9 +1056,9 @@ "dev": true }, "bluebird": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", - "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==" + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.1.tgz", + "integrity": "sha512-DdmyoGCleJnkbp3nkbxTLJ18rjDsE4yCggEwKNXkeV123sPNfOCYeDoeuOY+F2FrSjO1YXcTU+dsy96KMy+gcg==" }, "blueimp-md5": { "version": "2.12.0", @@ -1322,22 +1316,6 @@ "deep-equal": "^1.0.0", "espurify": "^1.6.0", "estraverse": "^4.0.0" - }, - "dependencies": { - "deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.0.tgz", - "integrity": "sha512-ZbfWJq/wN1Z273o7mUSjILYqehAktR2NVoSrOukDkU9kg2v/Uv89yU4Cvz8seJeAmtN5oqiefKq8FPuXOboqLw==", - "dev": true, - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" - } - } } }, "call-signature": { @@ -1402,6 +1380,12 @@ "color-convert": "^1.9.0" } }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -2132,6 +2116,20 @@ "mimic-response": "^1.0.0" } }, + "deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.0.tgz", + "integrity": "sha512-ZbfWJq/wN1Z273o7mUSjILYqehAktR2NVoSrOukDkU9kg2v/Uv89yU4Cvz8seJeAmtN5oqiefKq8FPuXOboqLw==", + "dev": true, + "requires": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } + }, "deep-extend": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", @@ -2359,9 +2357,9 @@ } }, "dot-prop": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.1.0.tgz", - "integrity": "sha512-n1oC6NBF+KM9oVXtjmen4Yo7HyAVWV2UUl50dCYJdw2924K6dX9bf9TTTWaKtYlRn0FEtxG27KS80ayVLixxJA==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.1.1.tgz", + "integrity": "sha512-QCHI6Lkf+9fJMpwfAFsTvbiSh6ujoPmhCLiDvD/n4dGtLvHfhuBwPdN6z2x4YSOwwtTcLoO/LP70xELWGF/JVA==", "dev": true, "requires": { "is-obj": "^2.0.0" @@ -2572,9 +2570,9 @@ "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" }, "escape-unicode": { "version": "0.2.0", @@ -2709,6 +2707,12 @@ "requires": { "ansi-regex": "^3.0.0" } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true } } }, @@ -2740,12 +2744,12 @@ } }, "eslint-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.2.tgz", - "integrity": "sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", "dev": true, "requires": { - "eslint-visitor-keys": "^1.0.0" + "eslint-visitor-keys": "^1.1.0" } }, "eslint-visitor-keys": { @@ -2987,12 +2991,20 @@ } }, "figures": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.0.0.tgz", - "integrity": "sha512-HKri+WoWoUgr83pehn/SIgLOMZ9nAWC6dcGj26RY2R4F50u4+RTUz0RCrUlOV3nKRAICW1UGzyb+kcX2qK1S/g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz", + "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==", "dev": true, "requires": { "escape-string-regexp": "^1.0.5" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + } } }, "file-entry-cache": { @@ -3251,9 +3263,9 @@ } }, "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.5.tgz", + "integrity": "sha512-J9dlskqUXK1OeTOYBEn5s8aMukWMwWfs+rPTn/jn50Ux4MNXVhubL1wu/j2t+H4NVI+cXEcCaYellqaPVGXNqQ==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -3332,9 +3344,9 @@ } }, "graceful-fs": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz", - "integrity": "sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", + "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==" }, "growl": { "version": "1.10.5", @@ -3348,9 +3360,9 @@ "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" }, "handlebars": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.3.tgz", - "integrity": "sha512-B0W4A2U1ww3q7VVthTKfh+epHx+q4mCt6iK+zEAzbMBpWQAwxCeKxEGpj/1oQTpzPXDNSOG7hmG14TsISH50yw==", + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.5.tgz", + "integrity": "sha512-0Ce31oWVB7YidkaTq33ZxEbN+UDxMMgThvCe8ptgQViymL5DPis9uLdTA13MiRPhgvqyxIegugrP97iK3JeBHg==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -3648,6 +3660,12 @@ "restore-cursor": "^2.0.0" } }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, "figures": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", @@ -3669,12 +3687,6 @@ "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "dev": true }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, "onetime": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", @@ -4146,6 +4158,14 @@ "esprima": "^4.0.0" } }, + "js2xmlparser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.0.tgz", + "integrity": "sha512-WuNgdZOXVmBk5kUPMcTcVUpbGRzLfNkv7+7APq7WiDihpXVKrgxo6wwRpRl9OQeEBgKCVk9mR7RbzrnNWC8oBw==", + "requires": { + "xmlcreate": "^2.0.0" + } + }, "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", @@ -4170,49 +4190,6 @@ "strip-json-comments": "^3.0.1", "taffydb": "2.6.2", "underscore": "~1.9.1" - }, - "dependencies": { - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" - }, - "js2xmlparser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.0.tgz", - "integrity": "sha512-WuNgdZOXVmBk5kUPMcTcVUpbGRzLfNkv7+7APq7WiDihpXVKrgxo6wwRpRl9OQeEBgKCVk9mR7RbzrnNWC8oBw==", - "requires": { - "xmlcreate": "^2.0.0" - } - }, - "klaw": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", - "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", - "requires": { - "graceful-fs": "^4.1.9" - } - }, - "marked": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.7.0.tgz", - "integrity": "sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==" - }, - "strip-json-comments": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==" - }, - "underscore": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", - "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==" - }, - "xmlcreate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.1.tgz", - "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==" - } } }, "jsdoctypeparser": { @@ -4302,6 +4279,14 @@ "json-buffer": "3.0.0" } }, + "klaw": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", + "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", + "requires": { + "graceful-fs": "^4.1.9" + } + }, "latest-version": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", @@ -4560,6 +4545,11 @@ "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.5.tgz", "integrity": "sha512-xLIjLQmtym3QpoY9llBgApknl7pxAcN3WDRc2d3rwpl+/YvDZHPmKscGs+L6E05xf2KrCXPBvosWt7MZukwSpQ==" }, + "marked": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.7.0.tgz", + "integrity": "sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==" + }, "matcher": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/matcher/-/matcher-2.0.0.tgz", @@ -4567,14 +4557,6 @@ "dev": true, "requires": { "escape-string-regexp": "^2.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true - } } }, "md5-hex": { @@ -4806,6 +4788,12 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -5646,6 +5634,12 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true } } }, @@ -5783,9 +5777,9 @@ } }, "regjsgen": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.0.tgz", - "integrity": "sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA==", + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", + "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", "dev": true }, "regjsparser": { @@ -5827,6 +5821,13 @@ "escape-string-regexp": "^1.0.3", "object-assign": "^4.0.1", "readable-stream": "^2.0.2" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + } } }, "request": { @@ -6364,10 +6365,9 @@ "dev": true }, "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", + "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==" }, "supertap": { "version": "1.0.0", @@ -6530,6 +6530,12 @@ } } }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, "has-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", @@ -6827,9 +6833,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "uglify-js": { - "version": "3.6.3", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.3.tgz", - "integrity": "sha512-KfQUgOqTkLp2aZxrMbCuKCDGW9slFYu2A23A36Gs7sGzTLcRBDORdOi5E21KWHFIfkY8kzgi/Pr1cXCh0yIp5g==", + "version": "3.6.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.4.tgz", + "integrity": "sha512-9Yc2i881pF4BPGhjteCXQNaXx1DCwm3dtOyBaG2hitHjLWOczw/ki8vD1bqyT3u6K0Ms/FpCShkmfg+FtlOfYA==", "dev": true, "optional": true, "requires": { @@ -6852,6 +6858,11 @@ "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", "dev": true }, + "underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==" + }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", @@ -7195,6 +7206,11 @@ "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" }, + "xmlcreate": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.1.tgz", + "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==" + }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 897f2ec17d8..bad60dcb4b0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -99,7 +99,7 @@ "@ui5/builder": "^1.6.1", "@ui5/logger": "^1.0.2", "@ui5/server": "^1.4.0", - "graceful-fs": "^4.2.2", + "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", From fc028ac5ef2548412694150cb33a838a184cc0ad Mon Sep 17 00:00:00 2001 From: Nicolas Lunet Date: Thu, 31 Oct 2019 16:35:37 +0100 Subject: [PATCH 0256/1272] [ui5-project][INTERNAL] projectPreprocessor: Make sure project dependencies exists --- packages/project/lib/projectPreprocessor.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 09b34220ef6..3d18138570f 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -64,6 +64,9 @@ class ProjectPreprocessor { if (project.dependencies && project.dependencies.length) { // Do a dependency lookahead to apply any extensions that might affect this project await this.dependencyLookahead(project, project.dependencies); + } else { + // When using the static translator for instance dependencies is not defined and will fail later access calls to it + project.dependencies = []; } const {extensions} = await this.loadProjectConfiguration(project); From 4f8a9f764074c1f89554fd68197e17d2e9d70f21 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 3 Nov 2019 04:23:19 +0000 Subject: [PATCH 0257/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 81 ++++++++++++++++++------------ 1 file changed, 48 insertions(+), 33 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 43263855d42..c3bd7d6d36c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -500,9 +500,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.11.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.11.7.tgz", - "integrity": "sha512-JNbGaHFCLwgHn/iCckiGSOZ1XYHsKFwREtzPwSGCVld1SGhOlmZw2D4ZI94HQCrBHbADzW9m4LER/8olJTRGHA==" + "version": "12.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.5.tgz", + "integrity": "sha512-KEjODidV4XYUlJBF3XdjSH5FWoMCtO0utnhtdLf1AgeuZLOrRbvmU/gaRCVg7ZaQDjVf3l84egiY0mRNe5xE4A==" }, "@ui5/builder": { "version": "1.6.1", @@ -1427,9 +1427,9 @@ } }, "chokidar": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.2.2.tgz", - "integrity": "sha512-bw3pm7kZ2Wa6+jQWYP/c7bAZy3i4GwiIiMO2EeRjrE48l8vBqC/WvFhSF0xyM8fQiPEGvwMY/5bqDG7sSEOuhg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz", + "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==", "dev": true, "requires": { "anymatch": "~3.1.1", @@ -2168,9 +2168,9 @@ } }, "defer-to-connect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.0.2.tgz", - "integrity": "sha512-k09hcQcTDY+cwgiwa6PYKLm3jlagNzQ+RSvhjzESOGOx+MNOuXkxTfEvPrO1IOQ81tArCFYQgi631clB70RpQw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.0.tgz", + "integrity": "sha512-WE2sZoctWm/v4smfCAdjYbrfS55JiMRdlY9ZubFhsYbteCK9+BvAx4YV7nPjYM6ZnX5BcoVKwfmyx9sIFTgQMQ==", "dev": true }, "define-properties": { @@ -2357,9 +2357,9 @@ } }, "dot-prop": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.1.1.tgz", - "integrity": "sha512-QCHI6Lkf+9fJMpwfAFsTvbiSh6ujoPmhCLiDvD/n4dGtLvHfhuBwPdN6z2x4YSOwwtTcLoO/LP70xELWGF/JVA==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.2.0.tgz", + "integrity": "sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A==", "dev": true, "requires": { "is-obj": "^2.0.0" @@ -2483,13 +2483,13 @@ } }, "es5-ext": { - "version": "0.10.51", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.51.tgz", - "integrity": "sha512-oRpWzM2WcLHVKpnrcyB7OW8j/s67Ba04JCm0WnNv3RiABSvs7mrQlutB8DBv793gKcp0XENR8Il8WxGTlZ73gQ==", + "version": "0.10.52", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.52.tgz", + "integrity": "sha512-bWCbE9fbpYQY4CU6hJbJ1vSz70EClMlDgJ7BmwI+zEJhxrwjesZRPglGJlsZhu0334U3hI+gaspwksH9IGD6ag==", "requires": { "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.1", - "next-tick": "^1.0.0" + "es6-symbol": "~3.1.2", + "next-tick": "~1.0.0" } }, "es6-error": { @@ -2545,12 +2545,12 @@ } }, "es6-symbol": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.2.tgz", - "integrity": "sha512-/ZypxQsArlv+KHpGvng52/Iz8by3EQPxhmbuz8yFG89N/caTFBSbcXONDw0aMjy827gQg26XAjP4uXFvnfINmQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", "requires": { "d": "^1.0.1", - "es5-ext": "^0.10.51" + "ext": "^1.1.2" } }, "es6-weak-map": { @@ -2928,6 +2928,21 @@ } } }, + "ext": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.1.2.tgz", + "integrity": "sha512-/KLjJdTNyDepCihrk4HQt57nAE1IRCEo5jUt+WgWGCr1oARhibDvmI2DMcSNWood1T9AUWwq+jaV1wvRqaXfnA==", + "requires": { + "type": "^2.0.0" + }, + "dependencies": { + "type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==" + } + } + }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -3360,9 +3375,9 @@ "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" }, "handlebars": { - "version": "4.4.5", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.5.tgz", - "integrity": "sha512-0Ce31oWVB7YidkaTq33ZxEbN+UDxMMgThvCe8ptgQViymL5DPis9uLdTA13MiRPhgvqyxIegugrP97iK3JeBHg==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.1.tgz", + "integrity": "sha512-C29UoFzHe9yM61lOsIlCE5/mQVGrnIOrOq7maQl76L7tYPCgC1og0Ajt6uWnX4ZTxBPnjw+CUvawphwCfJgUnA==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -5368,9 +5383,9 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "picomatch": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.0.7.tgz", - "integrity": "sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.1.0.tgz", + "integrity": "sha512-uhnEDzAbrcJ8R3g2fANnSuXZMBtkpSjxTTgn2LeSiQlfmq72enQJWdQllXW24MBLYnA1SBD2vfvx2o0Zw3Ielw==" }, "pify": { "version": "3.0.0", @@ -6169,9 +6184,9 @@ } }, "source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", + "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -6833,9 +6848,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "uglify-js": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.4.tgz", - "integrity": "sha512-9Yc2i881pF4BPGhjteCXQNaXx1DCwm3dtOyBaG2hitHjLWOczw/ki8vD1bqyT3u6K0Ms/FpCShkmfg+FtlOfYA==", + "version": "3.6.7", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.7.tgz", + "integrity": "sha512-4sXQDzmdnoXiO+xvmTzQsfIiwrjUCSA95rSP4SEd8tDb51W2TiDOlL76Hl+Kw0Ie42PSItCW8/t6pBNCF2R48A==", "dev": true, "optional": true, "requires": { From cdadba9f3a1dc9ef98e667768ba2b27cd5064359 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 4 Nov 2019 17:54:11 +0100 Subject: [PATCH 0258/1272] [ui5-project][INTERNAL] Static translator: Ensure that all project paths are absolute --- packages/project/lib/translators/static.js | 38 ++++++++++++------- .../project/test/lib/translators/static.js | 11 +++--- 2 files changed, 30 insertions(+), 19 deletions(-) diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index 76d575ec9a1..173eef52bf6 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -1,7 +1,17 @@ const path = require("path"); const fs = require("graceful-fs"); +const {promisify} = require("util"); +const readFile = promisify(fs.readFile); const parseYaml = require("js-yaml").safeLoad; +function resolveProjectPaths(project) { + project.path = path.resolve(project.path); + if (project.dependencies) { + project.dependencies.forEach(resolveProjectPaths); + } + return project; +} + /** * Translator for static resources * @@ -21,22 +31,22 @@ module.exports = { * @param {Array} [options.parameters] CLI configuration options * @returns {Promise} Promise resolving with a dependency tree */ - generateDependencyTree(dirPath, options = {}) { + async generateDependencyTree(dirPath, options = {}) { const depFilePath = options.parameters && options.parameters[0] || path.join(dirPath, "projectDependencies.yaml"); - - return new Promise(function(resolve, reject) { - fs.readFile(depFilePath, function(err, buffer) { - if (err) { - reject(new Error( - `[static translator] Failed to locate projectDependencies.json at path: "${dirPath}" `+ - `- Error: ${err.message}`)); - } else { - resolve(parseYaml(buffer.toString(), { - filename: depFilePath - })); - } + try { + const buffer = await readFile(depFilePath); + const tree = parseYaml(buffer.toString(), { + filename: depFilePath }); - }); + + // Ensure that all project paths are absolute + resolveProjectPaths(tree); + return tree; + } catch (err) { + throw new Error( + `[static translator] Failed to load dependency tree from path ${depFilePath} `+ + `- Error: ${err.message}`); + } } }; diff --git a/packages/project/test/lib/translators/static.js b/packages/project/test/lib/translators/static.js index 23cfe95d137..fe2b65a8210 100644 --- a/packages/project/test/lib/translators/static.js +++ b/packages/project/test/lib/translators/static.js @@ -12,14 +12,15 @@ test("Generates dependency tree for project with projectDependencies.yaml", (t) }); }); - test("Error: Throws if projectDependencies.yaml was not found", async (t) => { const projectPath = "notExistingPath"; const fsError = new Error("File not found"); const fsStub = sinon.stub(fs, "readFile"); fsStub.callsArgWith(1, fsError); const error = await t.throwsAsync(staticTranslator.generateDependencyTree(projectPath)); - t.is(error.message, `[static translator] Failed to locate projectDependencies.json at path: "${projectPath}" - Error: ${fsError.message}`); + t.regex(error.message, + new RegExp("\\[static translator\\] Failed to load dependency tree from path " + + "notExistingPath\\/projectDependencies\\.yaml - Error: ENOENT:")); fsStub.restore(); }); @@ -28,17 +29,17 @@ const expectedTree = { version: "0.0.1", description: "Sample App", main: "index.html", - path: "./", + path: path.resolve("./"), dependencies: [ { id: "sap.f", version: "1.56.1", - path: "../sap.f" + path: path.resolve("../sap.f") }, { id: "sap.m", version: "1.61.0", - path: "../sap.m" + path: path.resolve("../sap.m") } ] }; From 542e536a05d8d1877b6e7e285ef4d9a2030dc26a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 4 Nov 2019 18:47:51 +0100 Subject: [PATCH 0259/1272] [ui5-project][INTERNAL] static translator: Fix tests on Windows --- packages/project/test/lib/translators/static.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/project/test/lib/translators/static.js b/packages/project/test/lib/translators/static.js index fe2b65a8210..068011654e3 100644 --- a/packages/project/test/lib/translators/static.js +++ b/packages/project/test/lib/translators/static.js @@ -18,9 +18,13 @@ test("Error: Throws if projectDependencies.yaml was not found", async (t) => { const fsStub = sinon.stub(fs, "readFile"); fsStub.callsArgWith(1, fsError); const error = await t.throwsAsync(staticTranslator.generateDependencyTree(projectPath)); + const escapedYamlPath = path.join(projectPath, "projectDependencies.yaml") + .replace("\\", "\\\\") + .replace("/", "\\/") + .replace(".", "\\."); t.regex(error.message, - new RegExp("\\[static translator\\] Failed to load dependency tree from path " + - "notExistingPath\\/projectDependencies\\.yaml - Error: ENOENT:")); + new RegExp(`\\[static translator\\] Failed to load dependency tree from path ` + + `${escapedYamlPath} - Error: ENOENT:`)); fsStub.restore(); }); From 2876620bd79d6823ce67c48027bb28e6c53dafdd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 7 Nov 2019 16:03:17 +0000 Subject: [PATCH 0260/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.6.1 to 1.7.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.7.0/CHANGELOG.md --- packages/project/package-lock.json | 29 +++++++++++++++++++++-------- packages/project/package.json | 2 +- 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c3bd7d6d36c..ea7e6a7668b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -505,9 +505,9 @@ "integrity": "sha512-KEjODidV4XYUlJBF3XdjSH5FWoMCtO0utnhtdLf1AgeuZLOrRbvmU/gaRCVg7ZaQDjVf3l84egiY0mRNe5xE4A==" }, "@ui5/builder": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.6.1.tgz", - "integrity": "sha512-EaJsWH/IK3aBO4VteeVevcMvYgI23xQ1Ze/NcoPgEy4gnjwqLQ6tMBOS2S2sQ6uETMWTigSZvoeFW0htJQ1TOA==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.7.0.tgz", + "integrity": "sha512-Lcj25NbKreppKmNevGfDwW1IoJsww9oZ5q6Z4WAwvOTIeujTEY51bHwpnXyxCdn3iWdpuBBqTUe0V+ZpSrbYHA==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", @@ -518,9 +518,9 @@ "esprima": "^4.0.1", "estraverse": "^4.3.0", "globby": "^10.0.1", - "graceful-fs": "^4.2.2", + "graceful-fs": "^4.2.3", "jsdoc": "~3.6.3", - "less-openui5": "^0.6.0", + "less-openui5": "^0.7.0", "make-dir": "^3.0.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", @@ -531,6 +531,19 @@ "terser": "^4.3.9", "xml2js": "^0.4.22", "yazl": "^2.5.1" + }, + "dependencies": { + "less-openui5": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.7.0.tgz", + "integrity": "sha512-1Ddxeqp9xkNpD8xFZ20ZZk25nQtIFJ1MCvBr2Ffi/JyxpZMaMaQkHVnRSMAj2IT823S1r3eSu03BwI2MN5oPYA==", + "requires": { + "clone": "^2.1.0", + "css": "^2.2.1", + "less": "1.6.3", + "object-assign": "^4.0.1" + } + } } }, "@ui5/fs": { @@ -2929,9 +2942,9 @@ } }, "ext": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.1.2.tgz", - "integrity": "sha512-/KLjJdTNyDepCihrk4HQt57nAE1IRCEo5jUt+WgWGCr1oARhibDvmI2DMcSNWood1T9AUWwq+jaV1wvRqaXfnA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.2.0.tgz", + "integrity": "sha512-0ccUQK/9e3NreLFg6K6np8aPyRgwycx+oFGtfx1dSp7Wj00Ozw9r05FgBRlzjf2XBM7LAzwgLyDscRrtSU91hA==", "requires": { "type": "^2.0.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index bad60dcb4b0..197d477a2a5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.6.1", + "@ui5/builder": "^1.7.0", "@ui5/logger": "^1.0.2", "@ui5/server": "^1.4.0", "graceful-fs": "^4.2.3", From cf535c0b25750aca858c98e7a18308aa35cf4fff Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 7 Nov 2019 16:14:03 +0000 Subject: [PATCH 0261/1272] [ui5-project][INTERNAL] Bump @ui5/server from 1.4.0 to 1.5.0 Changelog of this version: https://github.com/SAP/ui5-server/blob/v1.5.0/CHANGELOG.md --- packages/project/package-lock.json | 87 +++++++++++++++++++++--------- packages/project/package.json | 2 +- 2 files changed, 64 insertions(+), 25 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ea7e6a7668b..c8baad55cef 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -573,17 +573,18 @@ } }, "@ui5/server": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.4.0.tgz", - "integrity": "sha512-ARyFMUFi+kzejK0+ErrR3tYNz0MirRloURwnpL6r0pr7+e/VOCHgrxb/RUrVOVnPqtKug6Tnd+SNqIciNNXswA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.5.0.tgz", + "integrity": "sha512-dYHZL+JKl7og37ziE/AL4vUnKzQx2OlITH2rjfs2OazHkKH6FGROKDDoCEE1wjyYgcBggEBRqQLlympAjmxHkw==", "requires": { - "@ui5/builder": "^1.6.1", + "@ui5/builder": "^1.7.0", "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", "compression": "^1.7.4", "connect-openui5": "^0.8.0", "cors": "^2.8.5", "devcert-sanscache": "^0.4.5", + "escape-html": "^1.0.3", "etag": "^1.8.1", "express": "^4.17.1", "fresh": "^0.5.2", @@ -592,7 +593,7 @@ "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", - "spdy": "^3.4.7", + "spdy": "^4.0.1", "treeify": "^1.0.1", "yesno": "^0.3.1" } @@ -3383,9 +3384,9 @@ "dev": true }, "handle-thing": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz", - "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", + "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==" }, "handlebars": { "version": "4.5.1", @@ -6264,30 +6265,68 @@ "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==" }, "spdy": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-3.4.7.tgz", - "integrity": "sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.1.tgz", + "integrity": "sha512-HeZS3PBdMA+sZSu0qwpCxl3DeALD5ASx8pAX0jZdKXSpPWbQ6SYGnlg3BBmYLx5LtiZrmkAZfErCm2oECBcioA==", "requires": { - "debug": "^2.6.8", - "handle-thing": "^1.2.5", + "debug": "^4.1.0", + "handle-thing": "^2.0.0", "http-deceiver": "^1.2.7", - "safe-buffer": "^5.0.1", "select-hose": "^2.0.0", - "spdy-transport": "^2.0.18" + "spdy-transport": "^3.0.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } } }, "spdy-transport": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.1.1.tgz", - "integrity": "sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", "requires": { - "debug": "^2.6.8", - "detect-node": "^2.0.3", + "debug": "^4.1.0", + "detect-node": "^2.0.4", "hpack.js": "^2.1.6", - "obuf": "^1.1.1", - "readable-stream": "^2.2.9", - "safe-buffer": "^5.0.1", - "wbuf": "^1.7.2" + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "readable-stream": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", + "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } } }, "sprintf-js": { diff --git a/packages/project/package.json b/packages/project/package.json index 197d477a2a5..b190f0cd63e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,7 +98,7 @@ "dependencies": { "@ui5/builder": "^1.7.0", "@ui5/logger": "^1.0.2", - "@ui5/server": "^1.4.0", + "@ui5/server": "^1.5.0", "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", From ebdc375b9fb33c35fa346330ce2260847070a7af Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 7 Nov 2019 16:24:32 +0000 Subject: [PATCH 0262/1272] [ui5-project]Release 1.1.1 --- packages/project/CHANGELOG.md | 8 ++++++-- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 6a8a8e88d67..3247703655c 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.1.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.1.1...HEAD). + + +## [v1.1.1] - 2019-11-07 -## [v1.1.0] - 2019-06-25 +## [v1.1.0] - 2019-07-11 ### Features - **projectPreprocessor:** Add handling for server-middleware extensions [`2ce964c`](https://github.com/SAP/ui5-project/commit/2ce964cd9feb6c1da39cd783ad45e0030c46b81a) @@ -104,6 +107,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v1.1.1]: https://github.com/SAP/ui5-project/compare/v1.1.0...v1.1.1 [v1.1.0]: https://github.com/SAP/ui5-project/compare/v1.0.3...v1.1.0 [v1.0.3]: https://github.com/SAP/ui5-project/compare/v1.0.2...v1.0.3 [v1.0.2]: https://github.com/SAP/ui5-project/compare/v1.0.1...v1.0.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c8baad55cef..dfa4f68a999 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.1.0", + "version": "1.1.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index b190f0cd63e..bc8926520ad 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.1.0", + "version": "1.1.1", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 863775400d21054bdaacafb8864f82827441fdb7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 10 Nov 2019 04:30:32 +0000 Subject: [PATCH 0263/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 333 +++++++++++++++-------------- 1 file changed, 170 insertions(+), 163 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index dfa4f68a999..e5ae8d017b8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,19 +43,19 @@ } }, "@babel/core": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.6.4.tgz", - "integrity": "sha512-Rm0HGw101GY8FTzpWSyRbki/jzq+/PkNQJ+nSulrdY6gFGOsNseCqD6KHRYe2E+EdzuBdr2pxCp6s4Uk6eJ+XQ==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.2.tgz", + "integrity": "sha512-eeD7VEZKfhK1KUXGiyPFettgF3m513f8FoBSWiQ1xTvl1RAopLs42Wp9+Ze911I6H0N9lNqJMDgoZT7gHsipeQ==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.6.4", - "@babel/helpers": "^7.6.2", - "@babel/parser": "^7.6.4", - "@babel/template": "^7.6.0", - "@babel/traverse": "^7.6.3", - "@babel/types": "^7.6.3", - "convert-source-map": "^1.1.0", + "@babel/generator": "^7.7.2", + "@babel/helpers": "^7.7.0", + "@babel/parser": "^7.7.2", + "@babel/template": "^7.7.0", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.7.2", + "convert-source-map": "^1.7.0", "debug": "^4.1.0", "json5": "^2.1.0", "lodash": "^4.17.13", @@ -94,12 +94,12 @@ } }, "@babel/generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.6.4.tgz", - "integrity": "sha512-jsBuXkFoZxk0yWLyGI9llT9oiQ2FeTASmRFE32U+aaDTfoE92t78eroO7PTpU/OrYq38hlcDM6vbfLDaOLy+7w==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.2.tgz", + "integrity": "sha512-WthSArvAjYLz4TcbKOi88me+KmDJdKSlfwwN8CnUYn9jBkzhq0ZEPuBfkAWIvjJ3AdEV1Cf/+eSQTnp3IDJKlQ==", "dev": true, "requires": { - "@babel/types": "^7.6.3", + "@babel/types": "^7.7.2", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -114,54 +114,64 @@ } }, "@babel/helper-annotate-as-pure": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", - "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.0.tgz", + "integrity": "sha512-k50CQxMlYTYo+GGyUGFwpxKVtxVJi9yh61sXZji3zYHccK9RYliZGSTOgci85T+r+0VFN2nWbGM04PIqwfrpMg==", + "dev": true, + "requires": { + "@babel/types": "^7.7.0" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.2.tgz", + "integrity": "sha512-pAil/ZixjTlrzNpjx+l/C/wJk002Wo7XbbZ8oujH/AoJ3Juv0iN/UTcPUHXKMFLqsfS0Hy6Aow8M31brUYBlQQ==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/helper-regex": "^7.4.4", + "regexpu-core": "^4.6.0" } }, "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", - "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.7.0.tgz", + "integrity": "sha512-tDsJgMUAP00Ugv8O2aGEua5I2apkaQO7lBGUq1ocwN3G23JE5Dcq0uh3GvFTChPa4b40AWiAsLvCZOA2rdnQ7Q==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-get-function-arity": "^7.7.0", + "@babel/template": "^7.7.0", + "@babel/types": "^7.7.0" } }, "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.0.tgz", + "integrity": "sha512-tLdojOTz4vWcEnHWHCuPN5P85JLZWbm5Fx5ZsMEMPhF3Uoe3O7awrbM2nQ04bDOUToH/2tH/ezKEOR8zEYzqyw==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.7.0" } }, "@babel/helper-module-imports": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", - "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.7.0.tgz", + "integrity": "sha512-Dv3hLKIC1jyfTkClvyEkYP2OlkzNvWs5+Q8WgPbxM5LMeorons7iPP91JM+DU7tRbhqA1ZeooPaMFvQrn23RHw==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.7.0" } }, "@babel/helper-module-transforms": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.5.5.tgz", - "integrity": "sha512-jBeCvETKuJqeiaCdyaheF40aXnnU1+wkSiUs/IQg3tB85up1LyL8x77ClY8qJpuRJUcXQo+ZtdNESmZl4j56Pw==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.7.0.tgz", + "integrity": "sha512-rXEefBuheUYQyX4WjV19tuknrJFwyKw0HgzRwbkyTbB+Dshlq7eqkWbyjzToLrMZk/5wKVKdWFluiAsVkHXvuQ==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/template": "^7.4.4", - "@babel/types": "^7.5.5", + "@babel/helper-module-imports": "^7.7.0", + "@babel/helper-simple-access": "^7.7.0", + "@babel/helper-split-export-declaration": "^7.7.0", + "@babel/template": "^7.7.0", + "@babel/types": "^7.7.0", "lodash": "^4.17.13" } }, @@ -181,58 +191,58 @@ } }, "@babel/helper-remap-async-to-generator": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz", - "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.0.tgz", + "integrity": "sha512-pHx7RN8X0UNHPB/fnuDnRXVZ316ZigkO8y8D835JlZ2SSdFKb6yH9MIYRU4fy/KPe5sPHDFOPvf8QLdbAGGiyw==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-wrap-function": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-annotate-as-pure": "^7.7.0", + "@babel/helper-wrap-function": "^7.7.0", + "@babel/template": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0" } }, "@babel/helper-simple-access": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz", - "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.7.0.tgz", + "integrity": "sha512-AJ7IZD7Eem3zZRuj5JtzFAptBw7pMlS3y8Qv09vaBWoFsle0d1kAn5Wq6Q9MyBXITPOKnxwkZKoAm4bopmv26g==", "dev": true, "requires": { - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/template": "^7.7.0", + "@babel/types": "^7.7.0" } }, "@babel/helper-split-export-declaration": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", - "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.0.tgz", + "integrity": "sha512-HgYSI8rH08neWlAH3CcdkFg9qX9YsZysZI5GD8LjhQib/mM0jGOZOVkoUiiV2Hu978fRtjtsGsW6w0pKHUWtqA==", "dev": true, "requires": { - "@babel/types": "^7.4.4" + "@babel/types": "^7.7.0" } }, "@babel/helper-wrap-function": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz", - "integrity": "sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.7.0.tgz", + "integrity": "sha512-sd4QjeMgQqzshSjecZjOp8uKfUtnpmCyQhKQrVJBBgeHAB/0FPi33h3AbVlVp07qQtMD4QgYSzaMI7VwncNK/w==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.2.0" + "@babel/helper-function-name": "^7.7.0", + "@babel/template": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0" } }, "@babel/helpers": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.6.2.tgz", - "integrity": "sha512-3/bAUL8zZxYs1cdX2ilEE0WobqbCmKWr/889lf2SS0PpDcpEIY8pb1CCyz0pEcX3pEb+MCbks1jIokz2xLtGTA==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.7.0.tgz", + "integrity": "sha512-VnNwL4YOhbejHb7x/b5F39Zdg5vIQpUUNzJwx0ww1EcVRt41bbGRZWhAURrfY32T5zTT3qwNOQFWpn+P0i0a2g==", "dev": true, "requires": { - "@babel/template": "^7.6.0", - "@babel/traverse": "^7.6.2", - "@babel/types": "^7.6.0" + "@babel/template": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0" } }, "@babel/highlight": { @@ -247,25 +257,25 @@ } }, "@babel/parser": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.6.4.tgz", - "integrity": "sha512-D8RHPW5qd0Vbyo3qb+YjO5nvUVRTXFLQ/FsDxJU2Nqz4uB5EnUN0ZQSEYpvTIbRuttig1XbHWU5oMeQwQSAA+A==" + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.3.tgz", + "integrity": "sha512-bqv+iCo9i+uLVbI0ILzKkvMorqxouI+GbV13ivcARXn9NNEabi2IEz912IgNpT/60BNXac5dgcfjb94NjsF33A==" }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz", - "integrity": "sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.0.tgz", + "integrity": "sha512-ot/EZVvf3mXtZq0Pd0+tSOfGWMizqmOohXmNZg6LNFjHOV+wOPv7BvVYh8oPR8LhpIP3ye8nNooKL50YRWxpYA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0", + "@babel/helper-remap-async-to-generator": "^7.7.0", "@babel/plugin-syntax-async-generators": "^7.2.0" } }, "@babel/plugin-proposal-dynamic-import": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.5.0.tgz", - "integrity": "sha512-x/iMjggsKTFHYC6g11PL7Qy58IK8H5zqfm9e6hu4z1iH2IRyAp9u9dL80zA6R76yFovETFLKz2VJIC2iIPBuFw==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.0.tgz", + "integrity": "sha512-7poL3Xi+QFPC7sGAzEIbXUyYzGJwbc2+gSD0AkiC5k52kH2cqHdqxm5hNFfLW3cRSTcx9bN0Fl7/6zWcLLnKAQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0", @@ -310,51 +320,50 @@ } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.6.2.tgz", - "integrity": "sha512-KGKT9aqKV+9YMZSkowzYoYEiHqgaDhGmPNZlZxX6UeHC4z30nC1J9IrZuGqbYFB1jaIGdv91ujpze0exiVK8bA==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.0.tgz", + "integrity": "sha512-3QQlF7hSBnSuM1hQ0pS3pmAbWLax/uGNCbPBND9y+oJ4Y776jsyujG2k0Sn2Aj2a0QwVOiOFL5QVPA7spjvzSA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.6.0" + "@babel/helper-create-regexp-features-plugin": "^7.7.0", + "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.6.0.tgz", - "integrity": "sha512-Ma93Ix95PNSEngqomy5LSBMAQvYKVe3dy+JlVJSHEXZR5ASL9lQBedMiCyVtmTLraIDVRE3ZjTZvmXXD2Ozw3g==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.0.tgz", + "integrity": "sha512-KEMyWNNWnjOom8vR/1+d+Ocz/mILZG/eyHHO06OuBQ2aNhxT62fr4y6fGOplRx+CxCSp3IFwesL8WdINfY/3kg==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.4.4", + "@babel/helper-module-transforms": "^7.7.0", "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", + "@babel/helper-simple-access": "^7.7.0", "babel-plugin-dynamic-import-node": "^2.3.0" } }, "@babel/template": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.6.0.tgz", - "integrity": "sha512-5AEH2EXD8euCk446b7edmgFdub/qfH1SN6Nii3+fyXP807QRx9Q73A2N5hNwRRslC2H9sNzaFhsPubkS4L8oNQ==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.7.0.tgz", + "integrity": "sha512-OKcwSYOW1mhWbnTBgQY5lvg1Fxg+VyfQGjcBduZFljfc044J5iDlnDSfhQ867O17XHiSCxYHUxHg2b7ryitbUQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.6.0", - "@babel/types": "^7.6.0" + "@babel/parser": "^7.7.0", + "@babel/types": "^7.7.0" } }, "@babel/traverse": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.6.3.tgz", - "integrity": "sha512-unn7P4LGsijIxaAJo/wpoU11zN+2IaClkQAxcJWBNCMS6cmVh802IyLHNkAjQ0iYnRS3nnxk5O3fuXW28IMxTw==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.7.2.tgz", + "integrity": "sha512-TM01cXib2+rgIZrGJOLaHV/iZUAxf4A0dt5auY6KNZ+cm6aschuJGqKJM3ROTt3raPUdIDk9siAufIFEleRwtw==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.6.3", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.6.3", - "@babel/types": "^7.6.3", + "@babel/generator": "^7.7.2", + "@babel/helper-function-name": "^7.7.0", + "@babel/helper-split-export-declaration": "^7.7.0", + "@babel/parser": "^7.7.2", + "@babel/types": "^7.7.2", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -378,9 +387,9 @@ } }, "@babel/types": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.6.3.tgz", - "integrity": "sha512-CqbcpTxMcpuQTMhjI37ZHVgjBkysg5icREQIEZ0eG1yCNwg3oy+5AaLiOKmjsCj6nqOsa6Hf0ObjRVwokb7srA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.7.2.tgz", + "integrity": "sha512-YTf6PXoh3+eZgRCBzzP25Bugd2ngmpQVrk7kXX0i5N9BO7TFBtIgZYs7WtxtOGs8e6A4ZI7ECkbBCEHeXocvOA==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -500,9 +509,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.12.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.5.tgz", - "integrity": "sha512-KEjODidV4XYUlJBF3XdjSH5FWoMCtO0utnhtdLf1AgeuZLOrRbvmU/gaRCVg7ZaQDjVf3l84egiY0mRNe5xE4A==" + "version": "12.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.7.tgz", + "integrity": "sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w==" }, "@ui5/builder": { "version": "1.7.0", @@ -531,19 +540,6 @@ "terser": "^4.3.9", "xml2js": "^0.4.22", "yazl": "^2.5.1" - }, - "dependencies": { - "less-openui5": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.7.0.tgz", - "integrity": "sha512-1Ddxeqp9xkNpD8xFZ20ZZk25nQtIFJ1MCvBr2Ffi/JyxpZMaMaQkHVnRSMAj2IT823S1r3eSu03BwI2MN5oPYA==", - "requires": { - "clone": "^2.1.0", - "css": "^2.2.1", - "less": "1.6.3", - "object-assign": "^4.0.1" - } - } } }, "@ui5/fs": { @@ -1829,6 +1825,19 @@ "glob": "^7.1.4", "http-proxy": "^1.18.0", "less-openui5": "^0.6.0" + }, + "dependencies": { + "less-openui5": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", + "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", + "requires": { + "clone": "^2.1.0", + "css": "^2.2.1", + "less": "1.6.3", + "object-assign": "^4.0.1" + } + } } }, "console-control-strings": { @@ -1850,9 +1859,9 @@ "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, "convert-source-map": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", - "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", "dev": true, "requires": { "safe-buffer": "~5.1.1" @@ -2487,9 +2496,9 @@ } }, "es-to-primitive": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", - "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -3229,9 +3238,9 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.1.tgz", - "integrity": "sha512-4FRPXWETxtigtJW/gxzEDsX1LVbPAM93VleB83kZB+ellqbHMkyt2aJfuzNLRvFPnGi6bcE5SvfxgbXPeKteJw==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", + "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", "dev": true, "optional": true }, @@ -3292,9 +3301,9 @@ } }, "glob": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.5.tgz", - "integrity": "sha512-J9dlskqUXK1OeTOYBEn5s8aMukWMwWfs+rPTn/jn50Ux4MNXVhubL1wu/j2t+H4NVI+cXEcCaYellqaPVGXNqQ==", + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -4361,9 +4370,9 @@ } }, "less-openui5": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", - "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.7.0.tgz", + "integrity": "sha512-1Ddxeqp9xkNpD8xFZ20ZZk25nQtIFJ1MCvBr2Ffi/JyxpZMaMaQkHVnRSMAj2IT823S1r3eSu03BwI2MN5oPYA==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", @@ -5162,27 +5171,19 @@ "requires": { "minimist": "~0.0.1", "wordwrap": "~0.0.2" - }, - "dependencies": { - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - } } }, "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "requires": { "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", + "fast-levenshtein": "~2.0.6", "levn": "~0.3.0", "prelude-ls": "~1.1.2", "type-check": "~0.3.2", - "wordwrap": "~1.0.0" + "word-wrap": "~1.2.3" } }, "ora": { @@ -5397,9 +5398,9 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "picomatch": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.1.0.tgz", - "integrity": "sha512-uhnEDzAbrcJ8R3g2fANnSuXZMBtkpSjxTTgn2LeSiQlfmq72enQJWdQllXW24MBLYnA1SBD2vfvx2o0Zw3Ielw==" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.1.1.tgz", + "integrity": "sha512-OYMyqkKzK7blWO/+XZYP6w8hH0LDvkBvdvKukti+7kqYFCiEAk+gI3DWnryapc0Dau05ugGTy0foQ6mqn4AHYA==" }, "pify": { "version": "3.0.0", @@ -6703,9 +6704,9 @@ } }, "terser": { - "version": "4.3.9", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.9.tgz", - "integrity": "sha512-NFGMpHjlzmyOtPL+fDw3G7+6Ueh/sz4mkaUYa4lJCxOPTNzd0Uj0aZJOmsDYoSQyfuVoWDMSWTPU3huyOm2zdA==", + "version": "4.3.10", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.10.tgz", + "integrity": "sha512-3xXfyqHzUr8WZ+UvvwUQ/uHNgDu3FsdTTAL5p9UAWxlnAsoIMlCM3BPuFSx5Kb4/Hr+/xnMf6rt1DhRpKYohhw==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -6900,9 +6901,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "uglify-js": { - "version": "3.6.7", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.7.tgz", - "integrity": "sha512-4sXQDzmdnoXiO+xvmTzQsfIiwrjUCSA95rSP4SEd8tDb51W2TiDOlL76Hl+Kw0Ie42PSItCW8/t6pBNCF2R48A==", + "version": "3.6.8", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.8.tgz", + "integrity": "sha512-XhHJ3S3ZyMwP8kY1Gkugqx3CJh2C3O0y8NPiSxtm1tyD/pktLAkFZsFGpuNfTZddKDQ/bbDBLAd2YyA1pbi8HQ==", "dev": true, "optional": true, "requires": { @@ -7161,10 +7162,16 @@ } } }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + }, "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true }, "wrap-ansi": { "version": "5.1.0", From 43d3e353e778d6f08249008c1c9b697f3c008995 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 17 Nov 2019 04:24:29 +0000 Subject: [PATCH 0264/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 125 ++++++++++++++--------------- 1 file changed, 62 insertions(+), 63 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e5ae8d017b8..ec7a6513826 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -488,6 +488,12 @@ "defer-to-connect": "^1.0.1" } }, + "@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "dev": true + }, "@types/events": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", @@ -509,9 +515,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.12.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.7.tgz", - "integrity": "sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w==" + "version": "12.12.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.8.tgz", + "integrity": "sha512-XLla8N+iyfjvsa0KKV+BP/iGSoTmwxsu5Ci5sM33z9TjohF72DEz95iNvD6pPmemvbQgxAv/909G73gUn8QR7w==" }, "@ui5/builder": { "version": "1.7.0", @@ -682,12 +688,12 @@ } }, "ansi-escapes": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.2.1.tgz", - "integrity": "sha512-Cg3ymMAdN10wOk/VYfLV7KCQyv7EDirJ64500sU7n9UlmioEtDuU5Gd+hj73hXSU/ex7tHJSssmyftDdkMLO8Q==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz", + "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==", "dev": true, "requires": { - "type-fest": "^0.5.2" + "type-fest": "^0.8.1" } }, "ansi-regex": { @@ -696,11 +702,12 @@ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "ansi-styles": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.1.0.tgz", - "integrity": "sha512-Qts4KCLKG+waHc9C4m07weIY8qyeixoS0h6RnbsNVD6Fw+pEZGW3vTyObL3WXpE09Mq4Oi7/lBEyLmOiLtlYWQ==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.0.tgz", + "integrity": "sha512-7kFQgnEaMdRtwf6uSfUnVr9gSGC7faurn+J/Mv90/W+iTtN0405/nLdopfMWwchyxhbGYl6TC4Sccn9TUkGAgg==", "dev": true, "requires": { + "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" }, "dependencies": { @@ -1531,9 +1538,9 @@ }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "is-fullwidth-code-point": { @@ -1543,23 +1550,23 @@ "dev": true }, "string-width": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.1.0.tgz", - "integrity": "sha512-NrX+1dVVh+6Y9dnQ19pR0pP4FiEIlUvdTGn8pw6CKTNq5sgib2nIhmUNT5TAmhWmvKr3WcxBcP3E8nWezuipuQ==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^5.2.0" + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" } } } @@ -2140,9 +2147,9 @@ } }, "deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.0.tgz", - "integrity": "sha512-ZbfWJq/wN1Z273o7mUSjILYqehAktR2NVoSrOukDkU9kg2v/Uv89yU4Cvz8seJeAmtN5oqiefKq8FPuXOboqLw==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", "dev": true, "requires": { "is-arguments": "^1.0.4", @@ -3398,9 +3405,9 @@ "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==" }, "handlebars": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.1.tgz", - "integrity": "sha512-C29UoFzHe9yM61lOsIlCE5/mQVGrnIOrOq7maQl76L7tYPCgC1og0Ajt6uWnX4ZTxBPnjw+CUvawphwCfJgUnA==", + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.2.tgz", + "integrity": "sha512-29Zxv/cynYB7mkT1rVWQnV7mGX6v7H/miQ6dbEpYTKq5eJBN7PsRB+ViYJlcT6JINTSu4dVB9kOqEun78h6Exg==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -3447,9 +3454,9 @@ "dev": true }, "has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" }, "has-unicode": { "version": "2.0.1", @@ -3470,14 +3477,6 @@ "requires": { "is-stream": "^2.0.0", "type-fest": "^0.8.0" - }, - "dependencies": { - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - } } }, "hosted-git-info": { @@ -3591,9 +3590,9 @@ "dev": true }, "import-fresh": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.1.0.tgz", - "integrity": "sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", "dev": true, "requires": { "parent-module": "^1.0.0", @@ -4744,16 +4743,16 @@ "optional": true }, "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" + "version": "1.42.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz", + "integrity": "sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ==" }, "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "version": "2.1.25", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.25.tgz", + "integrity": "sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg==", "requires": { - "mime-db": "1.40.0" + "mime-db": "1.42.0" } }, "mimic-fn": { @@ -4886,9 +4885,9 @@ "dev": true }, "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", "dev": true, "requires": { "isarray": "0.0.1" @@ -5060,9 +5059,9 @@ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-inspect": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.6.0.tgz", - "integrity": "sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ==" + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" }, "object-is": { "version": "1.0.1", @@ -6704,9 +6703,9 @@ } }, "terser": { - "version": "4.3.10", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.3.10.tgz", - "integrity": "sha512-3xXfyqHzUr8WZ+UvvwUQ/uHNgDu3FsdTTAL5p9UAWxlnAsoIMlCM3BPuFSx5Kb4/Hr+/xnMf6rt1DhRpKYohhw==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.4.0.tgz", + "integrity": "sha512-oDG16n2WKm27JO8h4y/w3iqBGAOSCtq7k8dRmrn4Wf9NouL0b2WpMHGChFGZq4nFAQy1FsNJrVQHfurXOSTmOA==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -6872,9 +6871,9 @@ "dev": true }, "type-fest": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.5.2.tgz", - "integrity": "sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw==", + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true }, "type-is": { @@ -6901,9 +6900,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "uglify-js": { - "version": "3.6.8", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.8.tgz", - "integrity": "sha512-XhHJ3S3ZyMwP8kY1Gkugqx3CJh2C3O0y8NPiSxtm1tyD/pktLAkFZsFGpuNfTZddKDQ/bbDBLAd2YyA1pbi8HQ==", + "version": "3.6.9", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.9.tgz", + "integrity": "sha512-pcnnhaoG6RtrvHJ1dFncAe8Od6Nuy30oaJ82ts6//sGSXOP5UjBMEthiProjXmMNHOfd93sqlkztifFMcb+4yw==", "dev": true, "optional": true, "requires": { From e0b34d75130cdc3b705555a962666f31ccd0ce85 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 18 Nov 2019 14:43:12 +0000 Subject: [PATCH 0265/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.7.0 to 1.7.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.7.1/CHANGELOG.md --- packages/project/package-lock.json | 28 ++++++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ec7a6513826..49277d7bbb9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -520,9 +520,9 @@ "integrity": "sha512-XLla8N+iyfjvsa0KKV+BP/iGSoTmwxsu5Ci5sM33z9TjohF72DEz95iNvD6pPmemvbQgxAv/909G73gUn8QR7w==" }, "@ui5/builder": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.7.0.tgz", - "integrity": "sha512-Lcj25NbKreppKmNevGfDwW1IoJsww9oZ5q6Z4WAwvOTIeujTEY51bHwpnXyxCdn3iWdpuBBqTUe0V+ZpSrbYHA==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.7.1.tgz", + "integrity": "sha512-xgMqAnCOsBfKQ3hk8CiXFG9RFPktiTJw1KYV+MKEyWMtbrBIg0YdbOFu+PrnKfhI6vOn5YqWi5OA4VyHM8OVBQ==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", @@ -535,7 +535,7 @@ "globby": "^10.0.1", "graceful-fs": "^4.2.3", "jsdoc": "~3.6.3", - "less-openui5": "^0.7.0", + "less-openui5": "^0.8.0", "make-dir": "^3.0.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", @@ -543,7 +543,7 @@ "rimraf": "^3.0.0", "semver": "^6.3.0", "slash": "^3.0.0", - "terser": "^4.3.9", + "terser": "^4.4.0", "xml2js": "^0.4.22", "yazl": "^2.5.1" } @@ -4369,14 +4369,22 @@ } }, "less-openui5": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.7.0.tgz", - "integrity": "sha512-1Ddxeqp9xkNpD8xFZ20ZZk25nQtIFJ1MCvBr2Ffi/JyxpZMaMaQkHVnRSMAj2IT823S1r3eSu03BwI2MN5oPYA==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.0.tgz", + "integrity": "sha512-5rRkKIrX44xRiuBimmoJn+IQe2qvlu/f4TgYULe/kQnwtShlX2eYkRx4N3fBdSnUUyuRsy9MdwYxztxZx/de/w==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", - "less": "1.6.3", - "object-assign": "^4.0.1" + "mime": "^1.6.0", + "object-assign": "^4.0.1", + "request": "^2.88.0" + }, + "dependencies": { + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + } } }, "levn": { diff --git a/packages/project/package.json b/packages/project/package.json index bc8926520ad..21ef02d811e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.7.0", + "@ui5/builder": "^1.7.1", "@ui5/logger": "^1.0.2", "@ui5/server": "^1.5.0", "graceful-fs": "^4.2.3", From c601c4277651d543fc42394a44916ab9a64daf32 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 19 Nov 2019 21:25:31 +0000 Subject: [PATCH 0266/1272] [ui5-project][INTERNAL] Bump @ui5/server from 1.5.0 to 1.5.1 Changelog of this version: https://github.com/SAP/ui5-server/blob/v1.5.1/CHANGELOG.md --- packages/project/package-lock.json | 97 +++++------------------------- packages/project/package.json | 2 +- 2 files changed, 15 insertions(+), 84 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 49277d7bbb9..23f4d6c314c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -575,15 +575,15 @@ } }, "@ui5/server": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.5.0.tgz", - "integrity": "sha512-dYHZL+JKl7og37ziE/AL4vUnKzQx2OlITH2rjfs2OazHkKH6FGROKDDoCEE1wjyYgcBggEBRqQLlympAjmxHkw==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.5.1.tgz", + "integrity": "sha512-+DgQG8VZGAtR09bvESiRVCDaO/FqjYgUPPdp9TXsZ70NV4V3s40UdlIDXwVnonAwRXXYBUsQUyFuxxnw1HQItg==", "requires": { - "@ui5/builder": "^1.7.0", + "@ui5/builder": "^1.7.1", "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", "compression": "^1.7.4", - "connect-openui5": "^0.8.0", + "connect-openui5": "^0.9.0", "cors": "^2.8.5", "devcert-sanscache": "^0.4.5", "escape-html": "^1.0.3", @@ -591,7 +591,7 @@ "express": "^4.17.1", "fresh": "^0.5.2", "make-dir": "^3.0.0", - "mime-types": "^2.1.24", + "mime-types": "^2.1.25", "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", @@ -632,12 +632,6 @@ "uri-js": "^4.2.2" } }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "optional": true - }, "ansi-align": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", @@ -1485,15 +1479,6 @@ "integrity": "sha512-u6dx20FBXm+apMi+5x7UVm6EH7BL1gc4XrcnQewjcB7HWRcor/V5qWc3RG2HwpgDJ26gIi2DSEu3B7sXynAw/g==", "dev": true }, - "clean-css": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz", - "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=", - "optional": true, - "requires": { - "commander": "2.0.x" - } - }, "clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", @@ -1684,12 +1669,6 @@ "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.8.tgz", "integrity": "sha512-PM54PkseWbiiD/mMsbvW351/u+dafwTJ0ye2qB60G1aGQP9j3xK2gmMDc+R34L3nDtx4qMCitXT75mkbkGJDLw==" }, - "commander": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", - "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=", - "optional": true - }, "comment-parser": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.5.tgz", @@ -1823,28 +1802,15 @@ } }, "connect-openui5": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.8.0.tgz", - "integrity": "sha512-dfdsj3yHQTHmpcInYfk3PAwhPVXBc5DFYzx6OTCdO3leyIEMcs3CZQL//bmvpu6tH7aEmvXmdaB7AeMYc+j5/g==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.9.0.tgz", + "integrity": "sha512-mUjS8GqwF3XFBqRw6Ow4CQiN4ZJUL4weSWADtmdgUZAenMzNHNvHq531vKKszWERN9cYUh/bqgXNDCDfGSBEmw==", "requires": { "async": "^3.1.0", "extend": "^3.0.0", - "glob": "^7.1.4", + "glob": "^7.1.6", "http-proxy": "^1.18.0", - "less-openui5": "^0.6.0" - }, - "dependencies": { - "less-openui5": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.6.0.tgz", - "integrity": "sha512-Ncv9fhCkpssBut4Cefqfbf4IRVk8dz44LQJ80zHB6WG9BBsuqoLvWUxbV1VhxRJVGsDNbDcGb2i5s0KvoXJqdg==", - "requires": { - "clone": "^2.1.0", - "css": "^2.2.1", - "less": "1.6.3", - "object-assign": "^4.0.1" - } - } + "less-openui5": "^0.8.0" } }, "console-control-strings": { @@ -4339,35 +4305,6 @@ "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", "dev": true }, - "less": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/less/-/less-1.6.3.tgz", - "integrity": "sha1-cc6J7DC3dLNWfyVMZ5WPLywZO94=", - "requires": { - "clean-css": "2.0.x", - "mime": "1.2.x", - "mkdirp": "~0.3.5", - "request": ">=2.12.0", - "source-map": "0.1.x" - }, - "dependencies": { - "mkdirp": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", - "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", - "optional": true - }, - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "optional": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, "less-openui5": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.0.tgz", @@ -4745,10 +4682,9 @@ } }, "mime": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", - "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=", - "optional": true + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { "version": "1.42.0", @@ -6070,11 +6006,6 @@ "statuses": "~1.5.0" }, "dependencies": { - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, "ms": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 21ef02d811e..4b7a10ff770 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,7 +98,7 @@ "dependencies": { "@ui5/builder": "^1.7.1", "@ui5/logger": "^1.0.2", - "@ui5/server": "^1.5.0", + "@ui5/server": "^1.5.1", "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", From 83a53d2f6d75681fca83262c15d902566980c231 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 24 Nov 2019 04:29:15 +0000 Subject: [PATCH 0267/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 464 +++++++++++++++++------------ packages/project/package.json | 4 +- 2 files changed, 280 insertions(+), 188 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 23f4d6c314c..015a71276a1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,18 +43,18 @@ } }, "@babel/core": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.2.tgz", - "integrity": "sha512-eeD7VEZKfhK1KUXGiyPFettgF3m513f8FoBSWiQ1xTvl1RAopLs42Wp9+Ze911I6H0N9lNqJMDgoZT7gHsipeQ==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.4.tgz", + "integrity": "sha512-+bYbx56j4nYBmpsWtnPUsKW3NdnYxbqyfrP2w9wILBuHzdfIKz9prieZK0DFPyIzkjYVUe4QkusGL07r5pXznQ==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.7.2", - "@babel/helpers": "^7.7.0", - "@babel/parser": "^7.7.2", - "@babel/template": "^7.7.0", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.7.2", + "@babel/generator": "^7.7.4", + "@babel/helpers": "^7.7.4", + "@babel/parser": "^7.7.4", + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@babel/types": "^7.7.4", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "json5": "^2.1.0", @@ -94,12 +94,12 @@ } }, "@babel/generator": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.2.tgz", - "integrity": "sha512-WthSArvAjYLz4TcbKOi88me+KmDJdKSlfwwN8CnUYn9jBkzhq0ZEPuBfkAWIvjJ3AdEV1Cf/+eSQTnp3IDJKlQ==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.4.tgz", + "integrity": "sha512-m5qo2WgdOJeyYngKImbkyQrnUN1mPceaG5BV+G0E3gWsa4l/jCSryWJdM2x8OuGAOyh+3d5pVYfZWCiNFtynxg==", "dev": true, "requires": { - "@babel/types": "^7.7.2", + "@babel/types": "^7.7.4", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -114,18 +114,18 @@ } }, "@babel/helper-annotate-as-pure": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.0.tgz", - "integrity": "sha512-k50CQxMlYTYo+GGyUGFwpxKVtxVJi9yh61sXZji3zYHccK9RYliZGSTOgci85T+r+0VFN2nWbGM04PIqwfrpMg==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.4.tgz", + "integrity": "sha512-2BQmQgECKzYKFPpiycoF9tlb5HA4lrVyAmLLVK177EcQAqjVLciUb2/R+n1boQ9y5ENV3uz2ZqiNw7QMBBw1Og==", "dev": true, "requires": { - "@babel/types": "^7.7.0" + "@babel/types": "^7.7.4" } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.2.tgz", - "integrity": "sha512-pAil/ZixjTlrzNpjx+l/C/wJk002Wo7XbbZ8oujH/AoJ3Juv0iN/UTcPUHXKMFLqsfS0Hy6Aow8M31brUYBlQQ==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.4.tgz", + "integrity": "sha512-Mt+jBKaxL0zfOIWrfQpnfYCN7/rS6GKx6CCCfuoqVVd+17R8zNDlzVYmIi9qyb2wOk002NsmSTDymkIygDUH7A==", "dev": true, "requires": { "@babel/helper-regex": "^7.4.4", @@ -133,45 +133,45 @@ } }, "@babel/helper-function-name": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.7.0.tgz", - "integrity": "sha512-tDsJgMUAP00Ugv8O2aGEua5I2apkaQO7lBGUq1ocwN3G23JE5Dcq0uh3GvFTChPa4b40AWiAsLvCZOA2rdnQ7Q==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz", + "integrity": "sha512-AnkGIdiBhEuiwdoMnKm7jfPfqItZhgRaZfMg1XX3bS25INOnLPjPG1Ppnajh8eqgt5kPJnfqrRHqFqmjKDZLzQ==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.7.0", - "@babel/template": "^7.7.0", - "@babel/types": "^7.7.0" + "@babel/helper-get-function-arity": "^7.7.4", + "@babel/template": "^7.7.4", + "@babel/types": "^7.7.4" } }, "@babel/helper-get-function-arity": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.0.tgz", - "integrity": "sha512-tLdojOTz4vWcEnHWHCuPN5P85JLZWbm5Fx5ZsMEMPhF3Uoe3O7awrbM2nQ04bDOUToH/2tH/ezKEOR8zEYzqyw==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz", + "integrity": "sha512-QTGKEdCkjgzgfJ3bAyRwF4yyT3pg+vDgan8DSivq1eS0gwi+KGKE5x8kRcbeFTb/673mkO5SN1IZfmCfA5o+EA==", "dev": true, "requires": { - "@babel/types": "^7.7.0" + "@babel/types": "^7.7.4" } }, "@babel/helper-module-imports": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.7.0.tgz", - "integrity": "sha512-Dv3hLKIC1jyfTkClvyEkYP2OlkzNvWs5+Q8WgPbxM5LMeorons7iPP91JM+DU7tRbhqA1ZeooPaMFvQrn23RHw==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.7.4.tgz", + "integrity": "sha512-dGcrX6K9l8258WFjyDLJwuVKxR4XZfU0/vTUgOQYWEnRD8mgr+p4d6fCUMq/ys0h4CCt/S5JhbvtyErjWouAUQ==", "dev": true, "requires": { - "@babel/types": "^7.7.0" + "@babel/types": "^7.7.4" } }, "@babel/helper-module-transforms": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.7.0.tgz", - "integrity": "sha512-rXEefBuheUYQyX4WjV19tuknrJFwyKw0HgzRwbkyTbB+Dshlq7eqkWbyjzToLrMZk/5wKVKdWFluiAsVkHXvuQ==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.7.4.tgz", + "integrity": "sha512-ehGBu4mXrhs0FxAqN8tWkzF8GSIGAiEumu4ONZ/hD9M88uHcD+Yu2ttKfOCgwzoesJOJrtQh7trI5YPbRtMmnA==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.7.0", - "@babel/helper-simple-access": "^7.7.0", - "@babel/helper-split-export-declaration": "^7.7.0", - "@babel/template": "^7.7.0", - "@babel/types": "^7.7.0", + "@babel/helper-module-imports": "^7.7.4", + "@babel/helper-simple-access": "^7.7.4", + "@babel/helper-split-export-declaration": "^7.7.4", + "@babel/template": "^7.7.4", + "@babel/types": "^7.7.4", "lodash": "^4.17.13" } }, @@ -191,58 +191,58 @@ } }, "@babel/helper-remap-async-to-generator": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.0.tgz", - "integrity": "sha512-pHx7RN8X0UNHPB/fnuDnRXVZ316ZigkO8y8D835JlZ2SSdFKb6yH9MIYRU4fy/KPe5sPHDFOPvf8QLdbAGGiyw==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.4.tgz", + "integrity": "sha512-Sk4xmtVdM9sA/jCI80f+KS+Md+ZHIpjuqmYPk1M7F/upHou5e4ReYmExAiu6PVe65BhJPZA2CY9x9k4BqE5klw==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.7.0", - "@babel/helper-wrap-function": "^7.7.0", - "@babel/template": "^7.7.0", - "@babel/traverse": "^7.7.0", - "@babel/types": "^7.7.0" + "@babel/helper-annotate-as-pure": "^7.7.4", + "@babel/helper-wrap-function": "^7.7.4", + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@babel/types": "^7.7.4" } }, "@babel/helper-simple-access": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.7.0.tgz", - "integrity": "sha512-AJ7IZD7Eem3zZRuj5JtzFAptBw7pMlS3y8Qv09vaBWoFsle0d1kAn5Wq6Q9MyBXITPOKnxwkZKoAm4bopmv26g==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.7.4.tgz", + "integrity": "sha512-zK7THeEXfan7UlWsG2A6CI/L9jVnI5+xxKZOdej39Y0YtDYKx9raHk5F2EtK9K8DHRTihYwg20ADt9S36GR78A==", "dev": true, "requires": { - "@babel/template": "^7.7.0", - "@babel/types": "^7.7.0" + "@babel/template": "^7.7.4", + "@babel/types": "^7.7.4" } }, "@babel/helper-split-export-declaration": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.0.tgz", - "integrity": "sha512-HgYSI8rH08neWlAH3CcdkFg9qX9YsZysZI5GD8LjhQib/mM0jGOZOVkoUiiV2Hu978fRtjtsGsW6w0pKHUWtqA==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz", + "integrity": "sha512-guAg1SXFcVr04Guk9eq0S4/rWS++sbmyqosJzVs8+1fH5NI+ZcmkaSkc7dmtAFbHFva6yRJnjW3yAcGxjueDug==", "dev": true, "requires": { - "@babel/types": "^7.7.0" + "@babel/types": "^7.7.4" } }, "@babel/helper-wrap-function": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.7.0.tgz", - "integrity": "sha512-sd4QjeMgQqzshSjecZjOp8uKfUtnpmCyQhKQrVJBBgeHAB/0FPi33h3AbVlVp07qQtMD4QgYSzaMI7VwncNK/w==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.7.4.tgz", + "integrity": "sha512-VsfzZt6wmsocOaVU0OokwrIytHND55yvyT4BPB9AIIgwr8+x7617hetdJTsuGwygN5RC6mxA9EJztTjuwm2ofg==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.7.0", - "@babel/template": "^7.7.0", - "@babel/traverse": "^7.7.0", - "@babel/types": "^7.7.0" + "@babel/helper-function-name": "^7.7.4", + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@babel/types": "^7.7.4" } }, "@babel/helpers": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.7.0.tgz", - "integrity": "sha512-VnNwL4YOhbejHb7x/b5F39Zdg5vIQpUUNzJwx0ww1EcVRt41bbGRZWhAURrfY32T5zTT3qwNOQFWpn+P0i0a2g==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.7.4.tgz", + "integrity": "sha512-ak5NGZGJ6LV85Q1Zc9gn2n+ayXOizryhjSUBTdu5ih1tlVCJeuQENzc4ItyCVhINVXvIT/ZQ4mheGIsfBkpskg==", "dev": true, "requires": { - "@babel/template": "^7.7.0", - "@babel/traverse": "^7.7.0", - "@babel/types": "^7.7.0" + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@babel/types": "^7.7.4" } }, "@babel/highlight": { @@ -257,113 +257,113 @@ } }, "@babel/parser": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.3.tgz", - "integrity": "sha512-bqv+iCo9i+uLVbI0ILzKkvMorqxouI+GbV13ivcARXn9NNEabi2IEz912IgNpT/60BNXac5dgcfjb94NjsF33A==" + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.4.tgz", + "integrity": "sha512-jIwvLO0zCL+O/LmEJQjWA75MQTWwx3c3u2JOTDK5D3/9egrWRRA0/0hk9XXywYnXZVVpzrBYeIQTmhwUaePI9g==" }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.0.tgz", - "integrity": "sha512-ot/EZVvf3mXtZq0Pd0+tSOfGWMizqmOohXmNZg6LNFjHOV+wOPv7BvVYh8oPR8LhpIP3ye8nNooKL50YRWxpYA==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.4.tgz", + "integrity": "sha512-1ypyZvGRXriY/QP668+s8sFr2mqinhkRDMPSQLNghCQE+GAkFtp+wkHVvg2+Hdki8gwP+NFzJBJ/N1BfzCCDEw==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.7.0", - "@babel/plugin-syntax-async-generators": "^7.2.0" + "@babel/helper-remap-async-to-generator": "^7.7.4", + "@babel/plugin-syntax-async-generators": "^7.7.4" } }, "@babel/plugin-proposal-dynamic-import": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.0.tgz", - "integrity": "sha512-7poL3Xi+QFPC7sGAzEIbXUyYzGJwbc2+gSD0AkiC5k52kH2cqHdqxm5hNFfLW3cRSTcx9bN0Fl7/6zWcLLnKAQ==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.4.tgz", + "integrity": "sha512-StH+nGAdO6qDB1l8sZ5UBV8AC3F2VW2I8Vfld73TMKyptMU9DY5YsJAS8U81+vEtxcH3Y/La0wG0btDrhpnhjQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-dynamic-import": "^7.2.0" + "@babel/plugin-syntax-dynamic-import": "^7.7.4" } }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", - "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.7.4.tgz", + "integrity": "sha512-DyM7U2bnsQerCQ+sejcTNZh8KQEUuC3ufzdnVnSiUv/qoGJp2Z3hanKL18KDhsBT5Wj6a7CMT5mdyCNJsEaA9w==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" + "@babel/plugin-syntax-optional-catch-binding": "^7.7.4" } }, "@babel/plugin-syntax-async-generators": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", - "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.7.4.tgz", + "integrity": "sha512-Li4+EjSpBgxcsmeEF8IFcfV/+yJGxHXDirDkEoyFjumuwbmfCVHUt0HuowD/iGM7OhIRyXJH9YXxqiH6N815+g==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-syntax-dynamic-import": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz", - "integrity": "sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.7.4.tgz", + "integrity": "sha512-jHQW0vbRGvwQNgyVxwDh4yuXu4bH1f5/EICJLAhl1SblLs2CDhrsmCk+v5XLdE9wxtAFRyxx+P//Iw+a5L/tTg==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", - "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.7.4.tgz", + "integrity": "sha512-4ZSuzWgFxqHRE31Glu+fEr/MirNZOMYmD/0BhBWyLyOOQz/gTAl7QmWm2hX1QxEIXsr2vkdlwxIzTyiYRC4xcQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.0.tgz", - "integrity": "sha512-3QQlF7hSBnSuM1hQ0pS3pmAbWLax/uGNCbPBND9y+oJ4Y776jsyujG2k0Sn2Aj2a0QwVOiOFL5QVPA7spjvzSA==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.4.tgz", + "integrity": "sha512-mk0cH1zyMa/XHeb6LOTXTbG7uIJ8Rrjlzu91pUx/KS3JpcgaTDwMS8kM+ar8SLOvlL2Lofi4CGBAjCo3a2x+lw==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.7.0", + "@babel/helper-create-regexp-features-plugin": "^7.7.4", "@babel/helper-plugin-utils": "^7.0.0" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.0.tgz", - "integrity": "sha512-KEMyWNNWnjOom8vR/1+d+Ocz/mILZG/eyHHO06OuBQ2aNhxT62fr4y6fGOplRx+CxCSp3IFwesL8WdINfY/3kg==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.4.tgz", + "integrity": "sha512-k8iVS7Jhc367IcNF53KCwIXtKAH7czev866ThsTgy8CwlXjnKZna2VHwChglzLleYrcHz1eQEIJlGRQxB53nqA==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.7.0", + "@babel/helper-module-transforms": "^7.7.4", "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.7.0", + "@babel/helper-simple-access": "^7.7.4", "babel-plugin-dynamic-import-node": "^2.3.0" } }, "@babel/template": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.7.0.tgz", - "integrity": "sha512-OKcwSYOW1mhWbnTBgQY5lvg1Fxg+VyfQGjcBduZFljfc044J5iDlnDSfhQ867O17XHiSCxYHUxHg2b7ryitbUQ==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.7.4.tgz", + "integrity": "sha512-qUzihgVPguAzXCK7WXw8pqs6cEwi54s3E+HrejlkuWO6ivMKx9hZl3Y2fSXp9i5HgyWmj7RKP+ulaYnKM4yYxw==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.7.0", - "@babel/types": "^7.7.0" + "@babel/parser": "^7.7.4", + "@babel/types": "^7.7.4" } }, "@babel/traverse": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.7.2.tgz", - "integrity": "sha512-TM01cXib2+rgIZrGJOLaHV/iZUAxf4A0dt5auY6KNZ+cm6aschuJGqKJM3ROTt3raPUdIDk9siAufIFEleRwtw==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.7.4.tgz", + "integrity": "sha512-P1L58hQyupn8+ezVA2z5KBm4/Zr4lCC8dwKCMYzsa5jFMDMQAzaBNy9W5VjB+KAmBjb40U7a/H6ao+Xo+9saIw==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.7.2", - "@babel/helper-function-name": "^7.7.0", - "@babel/helper-split-export-declaration": "^7.7.0", - "@babel/parser": "^7.7.2", - "@babel/types": "^7.7.2", + "@babel/generator": "^7.7.4", + "@babel/helper-function-name": "^7.7.4", + "@babel/helper-split-export-declaration": "^7.7.4", + "@babel/parser": "^7.7.4", + "@babel/types": "^7.7.4", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -387,9 +387,9 @@ } }, "@babel/types": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.7.2.tgz", - "integrity": "sha512-YTf6PXoh3+eZgRCBzzP25Bugd2ngmpQVrk7kXX0i5N9BO7TFBtIgZYs7WtxtOGs8e6A4ZI7ECkbBCEHeXocvOA==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.7.4.tgz", + "integrity": "sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -515,9 +515,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.12.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.8.tgz", - "integrity": "sha512-XLla8N+iyfjvsa0KKV+BP/iGSoTmwxsu5Ci5sM33z9TjohF72DEz95iNvD6pPmemvbQgxAv/909G73gUn8QR7w==" + "version": "12.12.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.12.tgz", + "integrity": "sha512-MGuvYJrPU0HUwqF7LqvIj50RZUX23Z+m583KBygKYUZLlZ88n6w28XRNJRJgsHukLEnLz6w6SvxZoLgbr5wLqQ==" }, "@ui5/builder": { "version": "1.7.1", @@ -1196,6 +1196,12 @@ "fill-range": "^7.0.1" } }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -1627,6 +1633,34 @@ "mimic-response": "^1.0.0" } }, + "cobertura-parse": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/cobertura-parse/-/cobertura-parse-1.0.5.tgz", + "integrity": "sha512-uYJfkGhzw1wibe/8jqqHmSaPNWFguzq/IlSj83u3cSnZho/lUnfj0mLTmZGmB3AiKCOTYr22TYwpR1sXy2JEkg==", + "dev": true, + "requires": { + "mocha": "5.0.5", + "xml2js": "0.4.19" + }, + "dependencies": { + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "dev": true, + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" + } + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", + "dev": true + } + } + }, "code-excerpt": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", @@ -1669,6 +1703,11 @@ "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.8.tgz", "integrity": "sha512-PM54PkseWbiiD/mMsbvW351/u+dafwTJ0ye2qB60G1aGQP9j3xK2gmMDc+R34L3nDtx4qMCitXT75mkbkGJDLw==" }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, "comment-parser": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.5.tgz", @@ -1877,17 +1916,17 @@ } }, "coveralls": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.7.tgz", - "integrity": "sha512-mUuH2MFOYB2oBaA4D4Ykqi9LaEYpMMlsiOMJOrv358yAjP6enPIk55fod2fNJ8AvwoYXStWQls37rA+s5e7boA==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.8.tgz", + "integrity": "sha512-lkQlg29RhV9zwB0gDaEAWoap8xPgFxtPsVIpTNiDDtWNrvtP1/RmGJRRAV/Loz2gihmppObkSL0wnptEGUXaOQ==", "dev": true, "requires": { - "growl": "~> 1.10.0", + "cobertura-parse": "^1.0.5", "js-yaml": "^3.13.1", - "lcov-parse": "^0.0.10", + "lcov-parse": "^1.0.0", "log-driver": "^1.2.7", "minimist": "^1.2.0", - "request": "^2.86.0" + "request": "^2.88.0" }, "dependencies": { "minimist": { @@ -1956,9 +1995,9 @@ } }, "path-key": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.0.tgz", - "integrity": "sha512-8cChqz0RP6SHJkMt48FW0A7+qUOn+OsnOsVtzI59tZ8m+5bCSk7hzwET0pulwOM2YMn9J1efb07KB9l9f30SGg==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true }, "shebang-command": { @@ -1977,9 +2016,9 @@ "dev": true }, "which": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.1.tgz", - "integrity": "sha512-N7GBZOTswtB9lkQBZA4+zAXrjEIWAUOB93AvzUiudRzRxhUdLURQ7D/gAIMY1gatT/LTbmbcv8SiYazy3eYB7w==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "requires": { "isexe": "^2.0.0" @@ -2479,12 +2518,12 @@ } }, "es5-ext": { - "version": "0.10.52", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.52.tgz", - "integrity": "sha512-bWCbE9fbpYQY4CU6hJbJ1vSz70EClMlDgJ7BmwI+zEJhxrwjesZRPglGJlsZhu0334U3hI+gaspwksH9IGD6ag==", + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", "requires": { "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.2", + "es6-symbol": "~3.1.3", "next-tick": "~1.0.0" } }, @@ -3360,9 +3399,9 @@ "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==" }, "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz", + "integrity": "sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q==", "dev": true }, "handle-thing": { @@ -3371,9 +3410,9 @@ "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==" }, "handlebars": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.2.tgz", - "integrity": "sha512-29Zxv/cynYB7mkT1rVWQnV7mGX6v7H/miQ6dbEpYTKq5eJBN7PsRB+ViYJlcT6JINTSu4dVB9kOqEun78h6Exg==", + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.3.tgz", + "integrity": "sha512-3yPecJoJHK/4c6aZhSvxOyG4vJKDshV36VHp0iVCDVh7o9w2vwi3NSnL2MMPj3YdduqaBcu7cGbggJQM0br9xA==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -3445,6 +3484,12 @@ "type-fest": "^0.8.0" } }, + "he": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", + "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "dev": true + }, "hosted-git-info": { "version": "2.8.5", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", @@ -3938,11 +3983,11 @@ "dev": true }, "is-symbol": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", - "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", "requires": { - "has-symbols": "^1.0.0" + "has-symbols": "^1.0.1" } }, "is-typedarray": { @@ -4300,9 +4345,9 @@ } }, "lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-1.0.0.tgz", + "integrity": "sha1-6w1GtUER68VhrLTECO+TY73I9+A=", "dev": true }, "less-openui5": { @@ -4315,13 +4360,6 @@ "mime": "^1.6.0", "object-assign": "^4.0.1", "request": "^2.88.0" - }, - "dependencies": { - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - } } }, "levn": { @@ -4533,9 +4571,9 @@ "integrity": "sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==" }, "matcher": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-2.0.0.tgz", - "integrity": "sha512-nlmfSlgHBFx36j/Pl/KQPbIaqE8Zf0TqmSMjsuddHDg6PMSVgmyW9HpkLs0o0M1n2GIZ/S2BZBLIww/xjhiGng==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-2.1.0.tgz", + "integrity": "sha512-o+nZr+vtJtgPNklyeUKkkH42OsK8WAfdgaJE2FNxcjLPg+5QbeEoT6vRj8Xq/iv18JlQ9cmKsEu0b94ixWf1YQ==", "dev": true, "requires": { "escape-string-regexp": "^2.0.0" @@ -4755,6 +4793,76 @@ "minimist": "0.0.8" } }, + "mocha": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.0.5.tgz", + "integrity": "sha512-3MM3UjZ5p8EJrYpG7s+29HAI9G7sTzKEe4+w37Dg0QP7qL4XGsV+Q2xet2cE37AqdgN1OtYQB6Vl98YiPV3PgA==", + "dev": true, + "requires": { + "browser-stdout": "1.3.1", + "commander": "2.11.0", + "debug": "3.1.0", + "diff": "3.5.0", + "escape-string-regexp": "1.0.5", + "glob": "7.1.2", + "growl": "1.10.3", + "he": "1.1.1", + "mkdirp": "0.5.1", + "supports-color": "4.4.0" + }, + "dependencies": { + "commander": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", + "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", + "dev": true + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "supports-color": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", + "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", + "dev": true, + "requires": { + "has-flag": "^2.0.0" + } + } + } + }, "mock-require": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", @@ -5497,9 +5605,9 @@ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" }, "pretty-ms": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-5.0.0.tgz", - "integrity": "sha512-94VRYjL9k33RzfKiGokPBPpsmloBYSf5Ri+Pq19zlsEcUKFob+admeXr5eFDRuPjFmEOcjJvPGdillYOJyvZ7Q==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-5.1.0.tgz", + "integrity": "sha512-4gaK1skD2gwscCfkswYQRmddUb2GJZtzDGRjHWadVHtK/DIKFufa12MvES6/xu1tVbUYeia5bmLcwJtZJQUqnw==", "dev": true, "requires": { "parse-ms": "^2.1.0" @@ -5862,9 +5970,9 @@ } }, "resolve": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", - "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.2.tgz", + "integrity": "sha512-cAVTI2VLHWYsGOirfeYVVQ7ZDejtQ9fp4YhYckWDEkFfqbVjaT11iM8k6xSAfGFMM+gDpZjMnFssPu8we+mqFw==", "requires": { "path-parse": "^1.0.6" } @@ -6649,13 +6757,6 @@ "commander": "^2.20.0", "source-map": "~0.6.1", "source-map-support": "~0.5.12" - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - } } }, "test-exclude": { @@ -6847,15 +6948,6 @@ "requires": { "commander": "~2.20.3", "source-map": "~0.6.1" - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true, - "optional": true - } } }, "uid2": { diff --git a/packages/project/package.json b/packages/project/package.json index 4b7a10ff770..1e70e094fa3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,11 +105,11 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.12.0" + "resolve": "^1.12.2" }, "devDependencies": { "ava": "^2.4.0", - "coveralls": "^3.0.7", + "coveralls": "^3.0.8", "cross-env": "^6.0.3", "docdash": "^1.1.1", "eslint": "^5.16.0", From 056c71699cc25867a6b094c996d92bac199dd689 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 1 Dec 2019 04:23:41 +0000 Subject: [PATCH 0268/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 183 ++++++----------------------- packages/project/package.json | 4 +- 2 files changed, 35 insertions(+), 152 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 015a71276a1..bce35a95cd0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -515,9 +515,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.12.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.12.tgz", - "integrity": "sha512-MGuvYJrPU0HUwqF7LqvIj50RZUX23Z+m583KBygKYUZLlZ88n6w28XRNJRJgsHukLEnLz6w6SvxZoLgbr5wLqQ==" + "version": "12.12.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.14.tgz", + "integrity": "sha512-u/SJDyXwuihpwjXy7hOOghagLEV1KdAST6syfnOk6QZAMzZuWZqXy5aYYZbh8Jdpd4escVFP0MvftHNDb9pruA==" }, "@ui5/builder": { "version": "1.7.1", @@ -610,9 +610,9 @@ } }, "acorn": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz", - "integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.0.tgz", + "integrity": "sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw==", "dev": true }, "acorn-jsx": { @@ -1019,9 +1019,9 @@ "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.0.tgz", + "integrity": "sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A==" }, "babel-plugin-dynamic-import-node": { "version": "2.3.0", @@ -1067,9 +1067,9 @@ "dev": true }, "bluebird": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.1.tgz", - "integrity": "sha512-DdmyoGCleJnkbp3nkbxTLJ18rjDsE4yCggEwKNXkeV123sPNfOCYeDoeuOY+F2FrSjO1YXcTU+dsy96KMy+gcg==" + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, "blueimp-md5": { "version": "2.12.0", @@ -1196,12 +1196,6 @@ "fill-range": "^7.0.1" } }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -1633,34 +1627,6 @@ "mimic-response": "^1.0.0" } }, - "cobertura-parse": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/cobertura-parse/-/cobertura-parse-1.0.5.tgz", - "integrity": "sha512-uYJfkGhzw1wibe/8jqqHmSaPNWFguzq/IlSj83u3cSnZho/lUnfj0mLTmZGmB3AiKCOTYr22TYwpR1sXy2JEkg==", - "dev": true, - "requires": { - "mocha": "5.0.5", - "xml2js": "0.4.19" - }, - "dependencies": { - "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", - "dev": true, - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - } - }, - "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", - "dev": true - } - } - }, "code-excerpt": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", @@ -1916,12 +1882,11 @@ } }, "coveralls": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.8.tgz", - "integrity": "sha512-lkQlg29RhV9zwB0gDaEAWoap8xPgFxtPsVIpTNiDDtWNrvtP1/RmGJRRAV/Loz2gihmppObkSL0wnptEGUXaOQ==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.9.tgz", + "integrity": "sha512-nNBg3B1+4iDox5A5zqHKzUTiwl2ey4k2o0NEcVZYvl+GOSJdKBj4AJGKLv6h3SvWch7tABHePAQOSZWM9E2hMg==", "dev": true, "requires": { - "cobertura-parse": "^1.0.5", "js-yaml": "^3.13.1", "lcov-parse": "^1.0.0", "log-driver": "^1.2.7", @@ -2491,17 +2456,17 @@ } }, "es-abstract": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.0.tgz", - "integrity": "sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.2.tgz", + "integrity": "sha512-jYo/J8XU2emLXl3OLwfwtuFfuF2w6DYPs+xy9ZfVyPkDcrauu6LYrw/q2TyCtrbc/KUdCiC5e9UajRhgNkVopA==", "requires": { - "es-to-primitive": "^1.2.0", + "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", - "has-symbols": "^1.0.0", + "has-symbols": "^1.0.1", "is-callable": "^1.1.4", "is-regex": "^1.0.4", - "object-inspect": "^1.6.0", + "object-inspect": "^1.7.0", "object-keys": "^1.1.1", "string.prototype.trimleft": "^2.1.0", "string.prototype.trimright": "^2.1.0" @@ -2964,9 +2929,9 @@ } }, "ext": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.2.0.tgz", - "integrity": "sha512-0ccUQK/9e3NreLFg6K6np8aPyRgwycx+oFGtfx1dSp7Wj00Ozw9r05FgBRlzjf2XBM7LAzwgLyDscRrtSU91hA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", "requires": { "type": "^2.0.0" }, @@ -3398,12 +3363,6 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==" }, - "growl": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz", - "integrity": "sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q==", - "dev": true - }, "handle-thing": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", @@ -3484,12 +3443,6 @@ "type-fest": "^0.8.0" } }, - "he": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", - "dev": true - }, "hosted-git-info": { "version": "2.8.5", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", @@ -4793,76 +4746,6 @@ "minimist": "0.0.8" } }, - "mocha": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.0.5.tgz", - "integrity": "sha512-3MM3UjZ5p8EJrYpG7s+29HAI9G7sTzKEe4+w37Dg0QP7qL4XGsV+Q2xet2cE37AqdgN1OtYQB6Vl98YiPV3PgA==", - "dev": true, - "requires": { - "browser-stdout": "1.3.1", - "commander": "2.11.0", - "debug": "3.1.0", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "glob": "7.1.2", - "growl": "1.10.3", - "he": "1.1.1", - "mkdirp": "0.5.1", - "supports-color": "4.4.0" - }, - "dependencies": { - "commander": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", - "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, - "supports-color": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", - "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", - "dev": true, - "requires": { - "has-flag": "^2.0.0" - } - } - } - }, "mock-require": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", @@ -5640,9 +5523,9 @@ "dev": true }, "psl": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.4.0.tgz", - "integrity": "sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw==" + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.5.0.tgz", + "integrity": "sha512-4vqUjKi2huMu1OJiLhi3jN6jeeKvMZdI1tYgi/njW5zV52jNLgSAZSdN16m9bJFe61/cT8ulmw4qFitV9QRsEA==" }, "pump": { "version": "3.0.0", @@ -5970,9 +5853,9 @@ } }, "resolve": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.2.tgz", - "integrity": "sha512-cAVTI2VLHWYsGOirfeYVVQ7ZDejtQ9fp4YhYckWDEkFfqbVjaT11iM8k6xSAfGFMM+gDpZjMnFssPu8we+mqFw==", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.13.1.tgz", + "integrity": "sha512-CxqObCX8K8YtAhOBRg+lrcdn+LK+WYOS8tSjqSFbjtrI5PnS63QPhZl4+yKfrU9tdsbMu9Anr/amegT87M9Z6w==", "requires": { "path-parse": "^1.0.6" } @@ -6940,9 +6823,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "uglify-js": { - "version": "3.6.9", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.9.tgz", - "integrity": "sha512-pcnnhaoG6RtrvHJ1dFncAe8Od6Nuy30oaJ82ts6//sGSXOP5UjBMEthiProjXmMNHOfd93sqlkztifFMcb+4yw==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.7.1.tgz", + "integrity": "sha512-pnOF7jY82wdIhATVn87uUY/FHU+MDUdPLkmGFvGoclQmeu229eTkbG5gjGGBi3R7UuYYSEeYXY/TTY5j2aym2g==", "dev": true, "optional": true, "requires": { diff --git a/packages/project/package.json b/packages/project/package.json index 1e70e094fa3..338e0146785 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,11 +105,11 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.12.2" + "resolve": "^1.13.1" }, "devDependencies": { "ava": "^2.4.0", - "coveralls": "^3.0.8", + "coveralls": "^3.0.9", "cross-env": "^6.0.3", "docdash": "^1.1.1", "eslint": "^5.16.0", From 46c0d5c2ebd7e39ab8afa42c082be4838a34e87e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 8 Dec 2019 04:25:30 +0000 Subject: [PATCH 0269/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 133 ++++++++++++++++------------- 1 file changed, 75 insertions(+), 58 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bce35a95cd0..647b17cdf72 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,15 +43,15 @@ } }, "@babel/core": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.4.tgz", - "integrity": "sha512-+bYbx56j4nYBmpsWtnPUsKW3NdnYxbqyfrP2w9wILBuHzdfIKz9prieZK0DFPyIzkjYVUe4QkusGL07r5pXznQ==", + "version": "7.7.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.5.tgz", + "integrity": "sha512-M42+ScN4+1S9iB6f+TL7QBpoQETxbclx+KNoKJABghnKYE+fMzSGqst0BZJc8CpI625bwPwYgUyRvxZ+0mZzpw==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", "@babel/generator": "^7.7.4", "@babel/helpers": "^7.7.4", - "@babel/parser": "^7.7.4", + "@babel/parser": "^7.7.5", "@babel/template": "^7.7.4", "@babel/traverse": "^7.7.4", "@babel/types": "^7.7.4", @@ -162,9 +162,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.7.4.tgz", - "integrity": "sha512-ehGBu4mXrhs0FxAqN8tWkzF8GSIGAiEumu4ONZ/hD9M88uHcD+Yu2ttKfOCgwzoesJOJrtQh7trI5YPbRtMmnA==", + "version": "7.7.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.7.5.tgz", + "integrity": "sha512-A7pSxyJf1gN5qXVcidwLWydjftUN878VkalhXX5iQDuGyiGK3sOrrKKHF4/A4fwHtnsotv/NipwAeLzY4KQPvw==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.7.4", @@ -257,9 +257,9 @@ } }, "@babel/parser": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.4.tgz", - "integrity": "sha512-jIwvLO0zCL+O/LmEJQjWA75MQTWwx3c3u2JOTDK5D3/9egrWRRA0/0hk9XXywYnXZVVpzrBYeIQTmhwUaePI9g==" + "version": "7.7.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.5.tgz", + "integrity": "sha512-KNlOe9+/nk4i29g0VXgl8PEXIRms5xKLJeuZ6UptN0fHv+jDiriG+y94X6qAgWTR0h3KaoM1wK5G5h7MHFRSig==" }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.7.4", @@ -330,12 +330,12 @@ } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.4.tgz", - "integrity": "sha512-k8iVS7Jhc367IcNF53KCwIXtKAH7czev866ThsTgy8CwlXjnKZna2VHwChglzLleYrcHz1eQEIJlGRQxB53nqA==", + "version": "7.7.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.5.tgz", + "integrity": "sha512-9Cq4zTFExwFhQI6MT1aFxgqhIsMWQWDVwOgLzl7PTWJHsNaqFvklAU+Oz6AQLAS0dJKTwZSOCo20INwktxpi3Q==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.7.4", + "@babel/helper-module-transforms": "^7.7.5", "@babel/helper-plugin-utils": "^7.0.0", "@babel/helper-simple-access": "^7.7.4", "babel-plugin-dynamic-import-node": "^2.3.0" @@ -831,9 +831,9 @@ "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" }, "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, "async": { @@ -1513,13 +1513,13 @@ "dev": true }, "cli-truncate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.0.0.tgz", - "integrity": "sha512-C4hp+8GCIFVsUUiXcw+ce+7wexVWImw8rQrgMBFsqerx9LvvcGlwm6sMjQYAEmV/Xb87xc1b5Ttx505MSpZVqg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", "dev": true, "requires": { - "slice-ansi": "^2.1.0", - "string-width": "^4.1.0" + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" }, "dependencies": { "ansi-regex": { @@ -2168,9 +2168,9 @@ } }, "defer-to-connect": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.0.tgz", - "integrity": "sha512-WE2sZoctWm/v4smfCAdjYbrfS55JiMRdlY9ZubFhsYbteCK9+BvAx4YV7nPjYM6ZnX5BcoVKwfmyx9sIFTgQMQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.1.tgz", + "integrity": "sha512-J7thop4u3mRTkYRQ+Vpfwy2G5Ehoy82I14+14W4YMDLKdWloI9gSzRbV30s/NckQGVJtPkWNcW4oMAUigTdqiQ==", "dev": true }, "define-properties": { @@ -2456,9 +2456,9 @@ } }, "es-abstract": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.2.tgz", - "integrity": "sha512-jYo/J8XU2emLXl3OLwfwtuFfuF2w6DYPs+xy9ZfVyPkDcrauu6LYrw/q2TyCtrbc/KUdCiC5e9UajRhgNkVopA==", + "version": "1.16.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.3.tgz", + "integrity": "sha512-WtY7Fx5LiOnSYgF5eg/1T+GONaGmpvpPdCpSnYij+U2gDTL0UPfWrhDw7b2IYb+9NQJsYpCA0wOQvZfsd6YwRw==", "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -2976,9 +2976,9 @@ "dev": true }, "fast-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.1.0.tgz", - "integrity": "sha512-TrUz3THiq2Vy3bjfQUB2wNyPdGBeGmdjbzzBLhfHN4YFurYptCKwGq/TfiRavbGywFRzY6U2CdmQ1zmsY5yYaw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.1.1.tgz", + "integrity": "sha512-nTCREpBY8w8r+boyFYAx21iL6faSsQynliPHM4Uf56SbkyohCNxpVPEH9xrF5TXKy+IsjkPUHDKiUkzBVRXn9g==", "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -4304,9 +4304,9 @@ "dev": true }, "less-openui5": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.0.tgz", - "integrity": "sha512-5rRkKIrX44xRiuBimmoJn+IQe2qvlu/f4TgYULe/kQnwtShlX2eYkRx4N3fBdSnUUyuRsy9MdwYxztxZx/de/w==", + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.1.tgz", + "integrity": "sha512-2zBAwXHOibeA5F/LgkmojlAkepQ06VCvMxKFuLi5ZOzrKd+uLo5IWFbVCvMSpazfwjCclyL5haWrUU2SSfcHew==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", @@ -5523,9 +5523,9 @@ "dev": true }, "psl": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.5.0.tgz", - "integrity": "sha512-4vqUjKi2huMu1OJiLhi3jN6jeeKvMZdI1tYgi/njW5zV52jNLgSAZSdN16m9bJFe61/cT8ulmw4qFitV9QRsEA==" + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.6.0.tgz", + "integrity": "sha512-SYKKmVel98NCOYXpkwUqZqh0ahZeeKfmisiLIcEZdsb+WbLv02g/dI5BUmZnIyOe7RzZtLax81nnb2HbvC2tzA==" }, "pump": { "version": "3.0.0", @@ -6083,29 +6083,20 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" }, "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", "dev": true, "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true } } @@ -6449,6 +6440,21 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", @@ -6461,6 +6467,17 @@ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, + "slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + } + }, "string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -6633,9 +6650,9 @@ } }, "terser": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.4.0.tgz", - "integrity": "sha512-oDG16n2WKm27JO8h4y/w3iqBGAOSCtq7k8dRmrn4Wf9NouL0b2WpMHGChFGZq4nFAQy1FsNJrVQHfurXOSTmOA==", + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.4.2.tgz", + "integrity": "sha512-Uufrsvhj9O1ikwgITGsZ5EZS6qPokUOkCegS7fYOdGTv+OA90vndUbU6PEjr5ePqHfNUbGyMO7xyIZv2MhsALQ==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", From b15f60a6ae2a75dfeeaf9509604ab73852c52fae Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 15 Dec 2019 04:25:22 +0000 Subject: [PATCH 0270/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 54 +++++++++++++++--------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 647b17cdf72..e80798feea2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -515,9 +515,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.12.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.14.tgz", - "integrity": "sha512-u/SJDyXwuihpwjXy7hOOghagLEV1KdAST6syfnOk6QZAMzZuWZqXy5aYYZbh8Jdpd4escVFP0MvftHNDb9pruA==" + "version": "12.12.17", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.17.tgz", + "integrity": "sha512-Is+l3mcHvs47sKy+afn2O1rV4ldZFU7W8101cNlOd+MRbjM4Onida8jSZnJdTe/0Pcf25g9BNIUsuugmE6puHA==" }, "@ui5/builder": { "version": "1.7.1", @@ -1862,9 +1862,9 @@ "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, "core-js": { - "version": "2.6.10", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.10.tgz", - "integrity": "sha512-I39t74+4t+zau64EN1fE5v2W31Adtc/REhzWN+gWRRXg6WH5qAsZm62DHpQ1+Yhe4047T55jvzz7MUqF/dBBlA==", + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", "dev": true }, "core-util-is": { @@ -2275,9 +2275,9 @@ "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" }, "devcert-sanscache": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.5.tgz", - "integrity": "sha512-iXepNjlumZdOrjuYdYVzK92jvPyOD6hWdI1XPLS1u0/dr9Qg4u92LaLKt3vuMwWMjNY5BfanXiVe38EFvb5aSA==", + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.6.tgz", + "integrity": "sha512-Itp0Y58HtMqZ1v8YHYmtXpSFN5l4NaBcy7vBQUFxy2hs/HpNVTrNEynF9E2N9SK0uqa0vn7LFL8Rwinm500Uag==", "requires": { "command-exists": "^1.2.2", "get-port": "^3.0.0", @@ -2456,9 +2456,9 @@ } }, "es-abstract": { - "version": "1.16.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.3.tgz", - "integrity": "sha512-WtY7Fx5LiOnSYgF5eg/1T+GONaGmpvpPdCpSnYij+U2gDTL0UPfWrhDw7b2IYb+9NQJsYpCA0wOQvZfsd6YwRw==", + "version": "1.17.0-next.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.0-next.1.tgz", + "integrity": "sha512-7MmGr03N7Rnuid6+wyhD9sHNE2n4tFSwExnU2lQl3lIo2ShXWGePY80zYaoMOmILWv57H0amMjZGHNzzGG70Rw==", "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -2468,6 +2468,7 @@ "is-regex": "^1.0.4", "object-inspect": "^1.7.0", "object-keys": "^1.1.1", + "object.assign": "^4.1.0", "string.prototype.trimleft": "^2.1.0", "string.prototype.trimright": "^2.1.0" } @@ -2988,9 +2989,9 @@ } }, "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, "fast-levenshtein": { "version": "2.0.6", @@ -5013,7 +5014,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, "requires": { "define-properties": "^1.1.2", "function-bind": "^1.1.1", @@ -5022,12 +5022,12 @@ } }, "object.getownpropertydescriptors": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", - "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", + "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.5.1" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" } }, "observable-to-promise": { @@ -5747,9 +5747,9 @@ "dev": true }, "regjsparser": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", - "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.1.tgz", + "integrity": "sha512-7LutE94sz/NKSYegK+/4E77+8DipxF+Qn2Tmu362AcmsF2NYq/wx3+ObvU90TKEhjf7hQoFXo23ajjrXP7eUgg==", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -6840,9 +6840,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "uglify-js": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.7.1.tgz", - "integrity": "sha512-pnOF7jY82wdIhATVn87uUY/FHU+MDUdPLkmGFvGoclQmeu229eTkbG5gjGGBi3R7UuYYSEeYXY/TTY5j2aym2g==", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.7.2.tgz", + "integrity": "sha512-uhRwZcANNWVLrxLfNFEdltoPNhECUR3lc+UdJoG9CBpMcSnKyWA94tc3eAujB1GcMY5Uwq8ZMp4qWpxWYDQmaA==", "dev": true, "optional": true, "requires": { From bdc4b0f2f563527b3ca9b0446a7fa64732b5e4ad Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 16 Dec 2019 15:42:33 +0000 Subject: [PATCH 0271/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.7.1 to 1.8.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.8.0/CHANGELOG.md --- packages/project/package-lock.json | 24 +++++++++++++++++++----- packages/project/package.json | 2 +- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e80798feea2..b26bd065c67 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -520,9 +520,9 @@ "integrity": "sha512-Is+l3mcHvs47sKy+afn2O1rV4ldZFU7W8101cNlOd+MRbjM4Onida8jSZnJdTe/0Pcf25g9BNIUsuugmE6puHA==" }, "@ui5/builder": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.7.1.tgz", - "integrity": "sha512-xgMqAnCOsBfKQ3hk8CiXFG9RFPktiTJw1KYV+MKEyWMtbrBIg0YdbOFu+PrnKfhI6vOn5YqWi5OA4VyHM8OVBQ==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.8.0.tgz", + "integrity": "sha512-d+WJRW31jfuw63CWHOBZ20fbWASDdIISx9UY7jZIlpD3Z0hPDLBHvL7aHxn/ZOFLUvifec8NRKt3jxz//Ake3g==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", @@ -535,7 +535,7 @@ "globby": "^10.0.1", "graceful-fs": "^4.2.3", "jsdoc": "~3.6.3", - "less-openui5": "^0.8.0", + "less-openui5": "^0.8.2", "make-dir": "^3.0.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", @@ -543,9 +543,23 @@ "rimraf": "^3.0.0", "semver": "^6.3.0", "slash": "^3.0.0", - "terser": "^4.4.0", + "terser": "^4.4.2", "xml2js": "^0.4.22", "yazl": "^2.5.1" + }, + "dependencies": { + "less-openui5": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.2.tgz", + "integrity": "sha512-9oQ/Dspc07IA3pQxA5SViH/bf5mYInuTY5M/fpu95R/ovrdXR86apMOHTMFxdZUntpeBM+9WYik072uiGpUGqw==", + "requires": { + "clone": "^2.1.0", + "css": "^2.2.1", + "mime": "^1.6.0", + "object-assign": "^4.0.1", + "request": "^2.88.0" + } + } } }, "@ui5/fs": { diff --git a/packages/project/package.json b/packages/project/package.json index 338e0146785..ceb47b2f09e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.7.1", + "@ui5/builder": "^1.8.0", "@ui5/logger": "^1.0.2", "@ui5/server": "^1.5.1", "graceful-fs": "^4.2.3", From 4757ed46538d03ff1cb72e8115283f9da075524e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 16 Dec 2019 16:21:27 +0000 Subject: [PATCH 0272/1272] [ui5-project][INTERNAL] Bump @ui5/server from 1.5.1 to 1.5.2 Changelog of this version: https://github.com/SAP/ui5-server/blob/v1.5.2/CHANGELOG.md --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b26bd065c67..341b47f9f2e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -589,17 +589,17 @@ } }, "@ui5/server": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.5.1.tgz", - "integrity": "sha512-+DgQG8VZGAtR09bvESiRVCDaO/FqjYgUPPdp9TXsZ70NV4V3s40UdlIDXwVnonAwRXXYBUsQUyFuxxnw1HQItg==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.5.2.tgz", + "integrity": "sha512-z49Pj07LCImdX9FzElqaiIscXa5WDJtLcu5axuBjAqpIm+lc2b3DtFmyMLSt63fGOYno+FGb5tVAeJcDESEybA==", "requires": { - "@ui5/builder": "^1.7.1", + "@ui5/builder": "^1.8.0", "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", "compression": "^1.7.4", "connect-openui5": "^0.9.0", "cors": "^2.8.5", - "devcert-sanscache": "^0.4.5", + "devcert-sanscache": "^0.4.6", "escape-html": "^1.0.3", "etag": "^1.8.1", "express": "^4.17.1", @@ -4319,9 +4319,9 @@ "dev": true }, "less-openui5": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.1.tgz", - "integrity": "sha512-2zBAwXHOibeA5F/LgkmojlAkepQ06VCvMxKFuLi5ZOzrKd+uLo5IWFbVCvMSpazfwjCclyL5haWrUU2SSfcHew==", + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.2.tgz", + "integrity": "sha512-9oQ/Dspc07IA3pQxA5SViH/bf5mYInuTY5M/fpu95R/ovrdXR86apMOHTMFxdZUntpeBM+9WYik072uiGpUGqw==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", diff --git a/packages/project/package.json b/packages/project/package.json index ceb47b2f09e..5544c7134c9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,7 +98,7 @@ "dependencies": { "@ui5/builder": "^1.8.0", "@ui5/logger": "^1.0.2", - "@ui5/server": "^1.5.1", + "@ui5/server": "^1.5.2", "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", From 17b56baeb19166680c7d08035e7272f39c94ff69 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 22 Dec 2019 04:30:03 +0000 Subject: [PATCH 0273/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 233 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 109 insertions(+), 126 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 341b47f9f2e..06e496c0457 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,15 +43,15 @@ } }, "@babel/core": { - "version": "7.7.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.5.tgz", - "integrity": "sha512-M42+ScN4+1S9iB6f+TL7QBpoQETxbclx+KNoKJABghnKYE+fMzSGqst0BZJc8CpI625bwPwYgUyRvxZ+0mZzpw==", + "version": "7.7.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.7.tgz", + "integrity": "sha512-jlSjuj/7z138NLZALxVgrx13AOtqip42ATZP7+kYl53GvDV6+4dCek1mVUo8z8c8Xnw/mx2q3d9HWh3griuesQ==", "dev": true, "requires": { "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.7.4", + "@babel/generator": "^7.7.7", "@babel/helpers": "^7.7.4", - "@babel/parser": "^7.7.5", + "@babel/parser": "^7.7.7", "@babel/template": "^7.7.4", "@babel/traverse": "^7.7.4", "@babel/types": "^7.7.4", @@ -94,9 +94,9 @@ } }, "@babel/generator": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.4.tgz", - "integrity": "sha512-m5qo2WgdOJeyYngKImbkyQrnUN1mPceaG5BV+G0E3gWsa4l/jCSryWJdM2x8OuGAOyh+3d5pVYfZWCiNFtynxg==", + "version": "7.7.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.7.tgz", + "integrity": "sha512-/AOIBpHh/JU1l0ZFS4kiRCBnLi6OTHzh0RPk3h9isBxkkqELtQNFi1Vr/tiG9p1yfoUdKVwISuXWQR+hwwM4VQ==", "dev": true, "requires": { "@babel/types": "^7.7.4", @@ -257,9 +257,9 @@ } }, "@babel/parser": { - "version": "7.7.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.5.tgz", - "integrity": "sha512-KNlOe9+/nk4i29g0VXgl8PEXIRms5xKLJeuZ6UptN0fHv+jDiriG+y94X6qAgWTR0h3KaoM1wK5G5h7MHFRSig==" + "version": "7.7.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.7.tgz", + "integrity": "sha512-WtTZMZAZLbeymhkd/sEaPD8IQyGAhmuTuvTzLiCFM7iXiVdY0gc0IaI+cW0fh1BnSMbJSzXX6/fHllgHKwHhXw==" }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.7.4", @@ -320,9 +320,9 @@ } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.4.tgz", - "integrity": "sha512-mk0cH1zyMa/XHeb6LOTXTbG7uIJ8Rrjlzu91pUx/KS3JpcgaTDwMS8kM+ar8SLOvlL2Lofi4CGBAjCo3a2x+lw==", + "version": "7.7.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.7.tgz", + "integrity": "sha512-b4in+YlTeE/QmTgrllnb3bHA0HntYvjz8O3Mcbx75UBPJA2xhb5A8nle498VhxSXJHQefjtQxpnLPehDJ4TRlg==", "dev": true, "requires": { "@babel/helper-create-regexp-features-plugin": "^7.7.4", @@ -444,9 +444,9 @@ "dev": true }, "@sinonjs/commons": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.6.0.tgz", - "integrity": "sha512-w4/WHG7C4WWFyE5geCieFJF6MZkbW4VAriol5KlmQXpAQdxvV0p26sqNZOW6Qyw6Y0l9K4g+cHvvczR2sEEpqg==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.0.tgz", + "integrity": "sha512-qbk9AP+cZUsKdW1GJsBpxPKFmCJ0T8swwzVje3qFd+AkQb74Q/tiuzrdfFg8AD2g5HH/XbE/I8Uc1KYHVYWfhg==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -515,9 +515,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.12.17", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.17.tgz", - "integrity": "sha512-Is+l3mcHvs47sKy+afn2O1rV4ldZFU7W8101cNlOd+MRbjM4Onida8jSZnJdTe/0Pcf25g9BNIUsuugmE6puHA==" + "version": "12.12.21", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.21.tgz", + "integrity": "sha512-8sRGhbpU+ck1n0PGAUgVrWrWdjSW2aqNeyC15W88GRsMpSwzv6RJGlLhE7s2RhVSOdyDmxbqlWSeThq4/7xqlA==" }, "@ui5/builder": { "version": "1.8.0", @@ -546,20 +546,6 @@ "terser": "^4.4.2", "xml2js": "^0.4.22", "yazl": "^2.5.1" - }, - "dependencies": { - "less-openui5": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.2.tgz", - "integrity": "sha512-9oQ/Dspc07IA3pQxA5SViH/bf5mYInuTY5M/fpu95R/ovrdXR86apMOHTMFxdZUntpeBM+9WYik072uiGpUGqw==", - "requires": { - "clone": "^2.1.0", - "css": "^2.2.1", - "mime": "^1.6.0", - "object-assign": "^4.0.1", - "request": "^2.88.0" - } - } } }, "@ui5/fs": { @@ -972,13 +958,10 @@ } }, "get-port": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.0.0.tgz", - "integrity": "sha512-imzMU0FjsZqNa6BqOjbbW6w5BivHIuQKopjpPqcnx0AVHJQKCxK1O+Ab3OrVXhrekqfVMjwA9ZYu062R+KcIsQ==", - "dev": true, - "requires": { - "type-fest": "^0.3.0" - } + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.0.tgz", + "integrity": "sha512-bjioH1E9bTQUvgaB6VycVy1QVbTZI41yTnF9qkZz6ixgy/uhCH6D63bKeZ6Code/07JYA61MeI94jSdHss8PNA==", + "dev": true }, "locate-path": { "version": "5.0.0", @@ -1018,12 +1001,6 @@ "requires": { "ansi-regex": "^4.1.0" } - }, - "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true } } }, @@ -1452,19 +1429,19 @@ } }, "chokidar": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz", - "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", + "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", "dev": true, "requires": { "anymatch": "~3.1.1", "braces": "~3.0.2", - "fsevents": "~2.1.1", + "fsevents": "~2.1.2", "glob-parent": "~5.1.0", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.2.0" + "readdirp": "~3.3.0" }, "dependencies": { "normalize-path": { @@ -2191,6 +2168,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, "requires": { "object-keys": "^1.0.12" } @@ -2470,27 +2448,29 @@ } }, "es-abstract": { - "version": "1.17.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.0-next.1.tgz", - "integrity": "sha512-7MmGr03N7Rnuid6+wyhD9sHNE2n4tFSwExnU2lQl3lIo2ShXWGePY80zYaoMOmILWv57H0amMjZGHNzzGG70Rw==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.0.tgz", + "integrity": "sha512-yYkE07YF+6SIBmg1MsJ9dlub5L48Ek7X0qz+c/CPCHS9EBXfESorzng4cJQjJW5/pB6vDF41u7F8vUhLVDqIug==", + "dev": true, "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.1", - "is-callable": "^1.1.4", - "is-regex": "^1.0.4", + "is-callable": "^1.1.5", + "is-regex": "^1.0.5", "object-inspect": "^1.7.0", "object-keys": "^1.1.1", "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.0", - "string.prototype.trimright": "^2.1.0" + "string.prototype.trimleft": "^2.1.1", + "string.prototype.trimright": "^2.1.1" } }, "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -3239,7 +3219,8 @@ "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true }, "functional-red-black-tree": { "version": "1.0.1", @@ -3413,6 +3394,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, "requires": { "function-bind": "^1.1.1" } @@ -3435,7 +3417,8 @@ "has-symbols": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "dev": true }, "has-unicode": { "version": "2.0.1", @@ -3794,9 +3777,10 @@ } }, "is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==" + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", + "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", + "dev": true }, "is-ci": { "version": "2.0.0", @@ -3808,9 +3792,10 @@ } }, "is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=" + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "dev": true }, "is-error": { "version": "2.2.2", @@ -3937,11 +3922,12 @@ "dev": true }, "is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", + "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", + "dev": true, "requires": { - "has": "^1.0.1" + "has": "^1.0.3" } }, "is-stream": { @@ -3954,6 +3940,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "dev": true, "requires": { "has-symbols": "^1.0.1" } @@ -4816,15 +4803,15 @@ "dev": true }, "nise": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.2.tgz", - "integrity": "sha512-/6RhOUlicRCbE9s+94qCUsyE+pKlVJ5AhIv+jEE7ESKwnbXqulKZ1FYU+XAtHHWE9TinYvAxDUJAb912PwPoWA==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", + "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", "dev": true, "requires": { "@sinonjs/formatio": "^3.2.1", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", - "lolex": "^4.1.0", + "lolex": "^5.0.1", "path-to-regexp": "^1.7.0" }, "dependencies": { @@ -4834,6 +4821,15 @@ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", "dev": true }, + "lolex": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", + "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, "path-to-regexp": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", @@ -5011,23 +5007,26 @@ "object-inspect": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", + "dev": true }, "object-is": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.1.tgz", - "integrity": "sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.2.tgz", + "integrity": "sha512-Epah+btZd5wrrfjkJZq1AOB9O6OxUQto45hzFd7lXGrpHPGE0W1k+426yrZV+k6NJOzLNNW/nVsmZdIWsAqoOQ==", "dev": true }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true }, "object.assign": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, "requires": { "define-properties": "^1.1.2", "function-bind": "^1.1.1", @@ -5035,15 +5034,6 @@ "object-keys": "^1.0.11" } }, - "object.getownpropertydescriptors": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", - "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, "observable-to-promise": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-1.0.0.tgz", @@ -5665,12 +5655,12 @@ } }, "readdirp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", - "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", + "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", "dev": true, "requires": { - "picomatch": "^2.0.4" + "picomatch": "^2.0.7" } }, "redent": { @@ -5707,12 +5697,13 @@ } }, "regexp.prototype.flags": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz", - "integrity": "sha512-ztaw4M1VqgMwl9HlPpOuiYgItcHlunW0He2fE6eNfT6E/CF2FtYi9ofOYe4mKntstYk0Fyh/rDRBdS3AnxjlrA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", "dev": true, "requires": { - "define-properties": "^1.1.2" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" } }, "regexpp": { @@ -5761,9 +5752,9 @@ "dev": true }, "regjsparser": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.1.tgz", - "integrity": "sha512-7LutE94sz/NKSYegK+/4E77+8DipxF+Qn2Tmu362AcmsF2NYq/wx3+ObvU90TKEhjf7hQoFXo23ajjrXP7eUgg==", + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.2.tgz", + "integrity": "sha512-E9ghzUtoLwDekPT0DYCp+c4h+bvuUpe6rRHCTYn6eGoqj1LgKXxT6I0Il4WbjhQkOghzi/V+y03bPKvbllL93Q==", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -5867,9 +5858,9 @@ } }, "resolve": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.13.1.tgz", - "integrity": "sha512-CxqObCX8K8YtAhOBRg+lrcdn+LK+WYOS8tSjqSFbjtrI5PnS63QPhZl4+yKfrU9tdsbMu9Anr/amegT87M9Z6w==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.14.1.tgz", + "integrity": "sha512-fn5Wobh4cxbLzuHaE+nphztHy43/b++4M6SsGFC2gB8uYwf0C8LcarfCz1un7UTW8OFQg9iNjZ4xpcFVGebDPg==", "requires": { "path-parse": "^1.0.6" } @@ -6307,18 +6298,20 @@ } }, "string.prototype.trimleft": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz", - "integrity": "sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", + "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", + "dev": true, "requires": { "define-properties": "^1.1.3", "function-bind": "^1.1.1" } }, "string.prototype.trimright": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz", - "integrity": "sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", + "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", + "dev": true, "requires": { "define-properties": "^1.1.3", "function-bind": "^1.1.1" @@ -6664,9 +6657,9 @@ } }, "terser": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.4.2.tgz", - "integrity": "sha512-Uufrsvhj9O1ikwgITGsZ5EZS6qPokUOkCegS7fYOdGTv+OA90vndUbU6PEjr5ePqHfNUbGyMO7xyIZv2MhsALQ==", + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.4.3.tgz", + "integrity": "sha512-0ikKraVtRDKGzHrzkCv5rUNDzqlhmhowOBqC0XqUHFpW+vJ45+20/IFBcebwKfiS2Z9fJin6Eo+F1zLZsxi8RA==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -6975,15 +6968,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, - "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -7210,12 +7194,11 @@ "dev": true }, "xml2js": { - "version": "0.4.22", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.22.tgz", - "integrity": "sha512-MWTbxAQqclRSTnehWWe5nMKzI3VmJ8ltiJEco8akcC6j3miOhjjfzKum5sId+CWhfxdOs/1xauYr8/ZDBtQiRw==", + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", "requires": { "sax": ">=0.6.0", - "util.promisify": "~1.0.0", "xmlbuilder": "~11.0.0" } }, diff --git a/packages/project/package.json b/packages/project/package.json index 5544c7134c9..a0294591fad 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,7 +105,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.13.1" + "resolve": "^1.14.1" }, "devDependencies": { "ava": "^2.4.0", From 6377d1c66db8ab49e432f7a497b5bec871e8f692 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 29 Dec 2019 04:29:36 +0000 Subject: [PATCH 0274/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 32 +++++++++++++++--------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 06e496c0457..dd223202059 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -515,9 +515,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "12.12.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.21.tgz", - "integrity": "sha512-8sRGhbpU+ck1n0PGAUgVrWrWdjSW2aqNeyC15W88GRsMpSwzv6RJGlLhE7s2RhVSOdyDmxbqlWSeThq4/7xqlA==" + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.1.1.tgz", + "integrity": "sha512-hx6zWtudh3Arsbl3cXay+JnkvVgCKzCWKv42C9J01N2T2np4h8w5X8u6Tpz5mj38kE3M9FM0Pazx8vKFFMnjLQ==" }, "@ui5/builder": { "version": "1.8.0", @@ -5527,9 +5527,9 @@ "dev": true }, "psl": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.6.0.tgz", - "integrity": "sha512-SYKKmVel98NCOYXpkwUqZqh0ahZeeKfmisiLIcEZdsb+WbLv02g/dI5BUmZnIyOe7RzZtLax81nnb2HbvC2tzA==" + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.7.0.tgz", + "integrity": "sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ==" }, "pump": { "version": "3.0.0", @@ -5932,9 +5932,9 @@ "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==" }, "rxjs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", - "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -6112,11 +6112,11 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", "requires": { - "atob": "^2.1.1", + "atob": "^2.1.2", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", @@ -6847,9 +6847,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "uglify-js": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.7.2.tgz", - "integrity": "sha512-uhRwZcANNWVLrxLfNFEdltoPNhECUR3lc+UdJoG9CBpMcSnKyWA94tc3eAujB1GcMY5Uwq8ZMp4qWpxWYDQmaA==", + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.7.3.tgz", + "integrity": "sha512-7tINm46/3puUA4hCkKYo4Xdts+JDaVC9ZPRcG8Xw9R4nhO/gZgUM3TENq8IF4Vatk8qCig4MzP/c8G4u2BkVQg==", "dev": true, "optional": true, "requires": { From 8e806edbde6143d1107dd7acf989dc87839b73a9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 5 Jan 2020 04:27:32 +0000 Subject: [PATCH 0275/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 36 +++++++++++++++--------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index dd223202059..e87a11a9011 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -515,9 +515,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.1.1.tgz", - "integrity": "sha512-hx6zWtudh3Arsbl3cXay+JnkvVgCKzCWKv42C9J01N2T2np4h8w5X8u6Tpz5mj38kE3M9FM0Pazx8vKFFMnjLQ==" + "version": "13.1.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.1.4.tgz", + "integrity": "sha512-Lue/mlp2egZJoHXZr4LndxDAd7i/7SQYhV0EjWfb/a4/OZ6tuVwMCVPiwkU5nsEipxEf7hmkSU7Em5VQ8P5NGA==" }, "@ui5/builder": { "version": "1.8.0", @@ -696,9 +696,9 @@ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "ansi-styles": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.0.tgz", - "integrity": "sha512-7kFQgnEaMdRtwf6uSfUnVr9gSGC7faurn+J/Mv90/W+iTtN0405/nLdopfMWwchyxhbGYl6TC4Sccn9TUkGAgg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", "dev": true, "requires": { "@types/color-name": "^1.1.1", @@ -2575,9 +2575,9 @@ "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" }, "escodegen": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz", - "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.1.tgz", + "integrity": "sha512-Q8t2YZ+0e0pc7NRVj3B4tSQ9rim1oi4Fh46k2xhJ2qOiEwhQfdjyEQddWdj7ZFaKmU+5104vn1qrcjEPWq+bgQ==", "requires": { "esprima": "^3.1.3", "estraverse": "^4.2.0", @@ -5214,9 +5214,9 @@ "dev": true }, "p-limit": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", - "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", + "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", "requires": { "p-try": "^2.0.0" } @@ -5336,9 +5336,9 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "picomatch": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.1.1.tgz", - "integrity": "sha512-OYMyqkKzK7blWO/+XZYP6w8hH0LDvkBvdvKukti+7kqYFCiEAk+gI3DWnryapc0Dau05ugGTy0foQ6mqn4AHYA==" + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.1.tgz", + "integrity": "sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA==" }, "pify": { "version": "3.0.0", @@ -6657,9 +6657,9 @@ } }, "terser": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.4.3.tgz", - "integrity": "sha512-0ikKraVtRDKGzHrzkCv5rUNDzqlhmhowOBqC0XqUHFpW+vJ45+20/IFBcebwKfiS2Z9fJin6Eo+F1zLZsxi8RA==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.5.1.tgz", + "integrity": "sha512-lH9zLIbX8PRBEFCTvfHGCy0s9HEKnNso1Dx9swSopF3VUnFLB8DpQ61tHxoofovNC/sG0spajJM3EIIRSTByiQ==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", From 0c833636c00ac2304cb6ffe5f34d9e3834aae07d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 10 Jan 2020 18:14:41 +0100 Subject: [PATCH 0276/1272] [ui5-project][FEATURE] Add specification version 1.1 (#252) The new 'theme-library' type requires spec version 1.1: https://github.com/SAP/ui5-builder/pull/285 Also change wording of the error message for unsupported spec versions and fix the referenced URL. This should make it clear that the used version of the UI5 CLI might be outdated. Configuration.md: Add deep link to Specification Version documentation --- packages/project/docs/Configuration.md | 4 +++- packages/project/lib/projectPreprocessor.js | 14 ++++++----- packages/project/test/lib/extensions.js | 23 ++++++++++++++++++- .../project/test/lib/projectPreprocessor.js | 19 ++++++++++++++- 4 files changed, 51 insertions(+), 9 deletions(-) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index d5bfaa77b63..4f48f5dca6f 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -1,2 +1,4 @@ # Configuration -This documentation moved to a new place: [sap.github.io/ui5-tooling/pages/Configuration/](https://sap.github.io/ui5-tooling/pages/Configuration/) +This documentation moved to a new place: [sap.github.io/ui5-tooling/pages/Configuration/](https://sap.github.io/ui5-tooling/pages/Configuration/). + +The **Specification Version Documentation** can be found here: [sap.github.io/ui5-tooling/pages/Configuration/#specification-versions](https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 3d18138570f..82625e97997 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -272,11 +272,11 @@ class ProjectPreprocessor { return false; // ignore this project } - if (project.specVersion !== "0.1" && project.specVersion !== "1.0") { + if (project.specVersion !== "0.1" && project.specVersion !== "1.0" && project.specVersion !== "1.1") { throw new Error( `Unsupported specification version ${project.specVersion} defined for project ` + - `${project.id}. ` + - `See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions`); + `${project.id}. Your UI5 CLI installation might be outdated. ` + + `For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`); } if (!project.type) { @@ -330,11 +330,13 @@ class ProjectPreprocessor { if (!extension.specVersion) { throw new Error(`No specification version defined for extension ${extension.metadata.name}`); - } else if (extension.specVersion !== "0.1" && extension.specVersion !== "1.0") { + } else if (extension.specVersion !== "0.1" && + extension.specVersion !== "1.0" && + extension.specVersion !== "1.1") { throw new Error( `Unsupported specification version ${extension.specVersion} defined for extension ` + - `${extension.metadata.name}. ` + - `See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions`); + `${extension.metadata.name}. Your UI5 CLI installation might be outdated. ` + + `For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`); } else if (this.appliedExtensions[extension.metadata.name]) { log.verbose(`Extension with the name ${extension.metadata.name} has already been applied. ` + "This might have been done during dependency lookahead."); diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index c3a33fb9272..7138cbd45ea 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -696,7 +696,8 @@ test("specVersion: Extension with invalid version", async (t) => { const preprocessor = new Preprocessor(); await t.throwsAsync(preprocessor.applyExtension(extension), "Unsupported specification version 0.9 defined for extension shims.a. " + - "See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions", + "Your UI5 CLI installation might be outdated. For details see " + + "https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions", "Rejected with error"); }); @@ -739,3 +740,23 @@ test("specVersion: Extension with valid version 1.0", async (t) => { await preprocessor.applyExtension(extension); t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "1.0", "Correct spec version"); }); + +test("specVersion: Extension with valid version 1.1", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "1.1", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor(); + const handleShimStub = sinon.stub(preprocessor, "handleShim"); + await preprocessor.applyExtension(extension); + t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "1.1", "Correct spec version"); +}); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 4e6b60ebceb..d88b8e20fdb 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1597,7 +1597,8 @@ test("specVersion: Project with invalid version", async (t) => { }; await t.throwsAsync(projectPreprocessor.processTree(tree), "Unsupported specification version 0.9 defined for project application.a. " + - "See https://github.com/SAP/ui5-project/blob/master/docs/Configuration.md#specification-versions", + "Your UI5 CLI installation might be outdated. For details see " + + "https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions", "Rejected with error"); }); @@ -1633,6 +1634,22 @@ test("specVersion: Project with valid version 1.0", async (t) => { t.deepEqual(res.specVersion, "1.0", "Correct spec version"); }); +test("specVersion: Project with valid version 1.1", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "1.1", + type: "application", + metadata: { + name: "xy" + } + }; + const res = await projectPreprocessor.processTree(tree); + t.deepEqual(res.specVersion, "1.1", "Correct spec version"); +}); + test("isBeingProcessed: Is not being processed", (t) => { const preprocessor = new projectPreprocessor.ProjectPreprocessor(); From 77a1b761a8af0b43e23184cba28807beec2e8d4d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 12 Jan 2020 04:29:22 +0000 Subject: [PATCH 0277/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 434 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 202 insertions(+), 234 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e87a11a9011..bc1a5f0d525 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -34,29 +34,30 @@ } }, "@babel/code-frame": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", - "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.0.tgz", + "integrity": "sha512-AN2IR/wCUYsM+PdErq6Bp3RFTXl8W0p9Nmymm7zkpsCmh+r/YYcckaCGpU8Q/mEKmST19kkGRaG42A/jxOWwBA==", "dev": true, "requires": { - "@babel/highlight": "^7.0.0" + "@babel/highlight": "^7.8.0" } }, "@babel/core": { - "version": "7.7.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.7.tgz", - "integrity": "sha512-jlSjuj/7z138NLZALxVgrx13AOtqip42ATZP7+kYl53GvDV6+4dCek1mVUo8z8c8Xnw/mx2q3d9HWh3griuesQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.7.7", - "@babel/helpers": "^7.7.4", - "@babel/parser": "^7.7.7", - "@babel/template": "^7.7.4", - "@babel/traverse": "^7.7.4", - "@babel/types": "^7.7.4", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.0.tgz", + "integrity": "sha512-3rqPi/bv/Xfu2YzHvBz4XqMI1fKVwnhntPA1/fjoECrSjrhbOCxlTrbVu5gUtr8zkxW+RpkDOa/HCW93gzS2Dw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.0", + "@babel/generator": "^7.8.0", + "@babel/helpers": "^7.8.0", + "@babel/parser": "^7.8.0", + "@babel/template": "^7.8.0", + "@babel/traverse": "^7.8.0", + "@babel/types": "^7.8.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", "json5": "^2.1.0", "lodash": "^4.17.13", "resolve": "^1.3.2", @@ -94,12 +95,12 @@ } }, "@babel/generator": { - "version": "7.7.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.7.tgz", - "integrity": "sha512-/AOIBpHh/JU1l0ZFS4kiRCBnLi6OTHzh0RPk3h9isBxkkqELtQNFi1Vr/tiG9p1yfoUdKVwISuXWQR+hwwM4VQ==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.0.tgz", + "integrity": "sha512-2Lp2e02CV2C7j/H4n4D9YvsvdhPVVg9GDIamr6Tu4tU35mL3mzOrzl1lZ8ZJtysfZXh+y+AGORc2rPS7yHxBUg==", "dev": true, "requires": { - "@babel/types": "^7.7.4", + "@babel/types": "^7.8.0", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -114,141 +115,141 @@ } }, "@babel/helper-annotate-as-pure": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.4.tgz", - "integrity": "sha512-2BQmQgECKzYKFPpiycoF9tlb5HA4lrVyAmLLVK177EcQAqjVLciUb2/R+n1boQ9y5ENV3uz2ZqiNw7QMBBw1Og==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.0.tgz", + "integrity": "sha512-WWj+1amBdowU2g18p3/KUc1Y5kWnaNm1paohq2tT4/RreeMNssYkv6ul9wkE2iIqjwLBwNMZGH4pTGlMSUqMMg==", "dev": true, "requires": { - "@babel/types": "^7.7.4" + "@babel/types": "^7.8.0" } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.4.tgz", - "integrity": "sha512-Mt+jBKaxL0zfOIWrfQpnfYCN7/rS6GKx6CCCfuoqVVd+17R8zNDlzVYmIi9qyb2wOk002NsmSTDymkIygDUH7A==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.0.tgz", + "integrity": "sha512-vJj2hPbxxLUWJEV86iZiac5curAnC3ZVc+rFmFeWZigUOcuCPpbF+KxoEmxrkmuCGylHFF9t4lkpcDUcxnhQ5g==", "dev": true, "requires": { - "@babel/helper-regex": "^7.4.4", + "@babel/helper-regex": "^7.8.0", "regexpu-core": "^4.6.0" } }, "@babel/helper-function-name": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz", - "integrity": "sha512-AnkGIdiBhEuiwdoMnKm7jfPfqItZhgRaZfMg1XX3bS25INOnLPjPG1Ppnajh8eqgt5kPJnfqrRHqFqmjKDZLzQ==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.0.tgz", + "integrity": "sha512-x9psucuU0Xalw+0Vpr2FYJMLB7/KnPSLZhlkUyOGbYAWRDfmtZBrguYpJYiaNCRV7vGkYjO/gF6/J6yMvdWTDw==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.7.4", - "@babel/template": "^7.7.4", - "@babel/types": "^7.7.4" + "@babel/helper-get-function-arity": "^7.8.0", + "@babel/template": "^7.8.0", + "@babel/types": "^7.8.0" } }, "@babel/helper-get-function-arity": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz", - "integrity": "sha512-QTGKEdCkjgzgfJ3bAyRwF4yyT3pg+vDgan8DSivq1eS0gwi+KGKE5x8kRcbeFTb/673mkO5SN1IZfmCfA5o+EA==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.0.tgz", + "integrity": "sha512-eUP5grliToMapQiTaYS2AAO/WwaCG7cuJztR1v/a1aPzUzUeGt+AaI9OvLATc/AfFkF8SLJ10d5ugGt/AQ9d6w==", "dev": true, "requires": { - "@babel/types": "^7.7.4" + "@babel/types": "^7.8.0" } }, "@babel/helper-module-imports": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.7.4.tgz", - "integrity": "sha512-dGcrX6K9l8258WFjyDLJwuVKxR4XZfU0/vTUgOQYWEnRD8mgr+p4d6fCUMq/ys0h4CCt/S5JhbvtyErjWouAUQ==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.0.tgz", + "integrity": "sha512-ylY9J6ZxEcjmJaJ4P6aVs/fZdrZVctCGnxxfYXwCnSMapqd544zT8lWK2qI/vBPjE5gS0o2jILnH+AkpsPauEQ==", "dev": true, "requires": { - "@babel/types": "^7.7.4" + "@babel/types": "^7.8.0" } }, "@babel/helper-module-transforms": { - "version": "7.7.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.7.5.tgz", - "integrity": "sha512-A7pSxyJf1gN5qXVcidwLWydjftUN878VkalhXX5iQDuGyiGK3sOrrKKHF4/A4fwHtnsotv/NipwAeLzY4KQPvw==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.0.tgz", + "integrity": "sha512-fvGhX4FY7YwRdWW/zfddNaKpYl8TaA8hvwONIYhv1/a1ZbgxbTrjsmH6IGWUgUNki7QzbpZ27OEh88sZdft3YA==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.7.4", - "@babel/helper-simple-access": "^7.7.4", - "@babel/helper-split-export-declaration": "^7.7.4", - "@babel/template": "^7.7.4", - "@babel/types": "^7.7.4", + "@babel/helper-module-imports": "^7.8.0", + "@babel/helper-simple-access": "^7.8.0", + "@babel/helper-split-export-declaration": "^7.8.0", + "@babel/template": "^7.8.0", + "@babel/types": "^7.8.0", "lodash": "^4.17.13" } }, "@babel/helper-plugin-utils": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", - "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.0.tgz", + "integrity": "sha512-+hAlRGdf8fHQAyNnDBqTHQhwdLURLdrCROoWaEQYiQhk2sV9Rhs+GoFZZfMJExTq9HG8o2NX3uN2G90bFtmFdA==", "dev": true }, "@babel/helper-regex": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.5.5.tgz", - "integrity": "sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.8.0.tgz", + "integrity": "sha512-haD8fRsPtyFZkbtxBIaGBBHRtbn0YsyecdYrxNgO0Bl6SlGokJPQX9M2tDuVbeQBYHZVLUPMSwGQn4obHevsMQ==", "dev": true, "requires": { "lodash": "^4.17.13" } }, "@babel/helper-remap-async-to-generator": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.4.tgz", - "integrity": "sha512-Sk4xmtVdM9sA/jCI80f+KS+Md+ZHIpjuqmYPk1M7F/upHou5e4ReYmExAiu6PVe65BhJPZA2CY9x9k4BqE5klw==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.0.tgz", + "integrity": "sha512-+aKyBd4oHAaIZgOLq/uLjkUz7ExZ0ppdNBc8Qr72BmtKNAy3A6EJa/ifjj0//CIzQtUDPs3E6HjKM2cV6bnXsQ==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.7.4", - "@babel/helper-wrap-function": "^7.7.4", - "@babel/template": "^7.7.4", - "@babel/traverse": "^7.7.4", - "@babel/types": "^7.7.4" + "@babel/helper-annotate-as-pure": "^7.8.0", + "@babel/helper-wrap-function": "^7.8.0", + "@babel/template": "^7.8.0", + "@babel/traverse": "^7.8.0", + "@babel/types": "^7.8.0" } }, "@babel/helper-simple-access": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.7.4.tgz", - "integrity": "sha512-zK7THeEXfan7UlWsG2A6CI/L9jVnI5+xxKZOdej39Y0YtDYKx9raHk5F2EtK9K8DHRTihYwg20ADt9S36GR78A==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.8.0.tgz", + "integrity": "sha512-I+7yKZJnxp7VIC2UFzXfVjLiJuU16rYFF59x27c+boINkO/pLETgZcoesCryg9jmU4jxEa0foFueW+2wjc9Gsw==", "dev": true, "requires": { - "@babel/template": "^7.7.4", - "@babel/types": "^7.7.4" + "@babel/template": "^7.8.0", + "@babel/types": "^7.8.0" } }, "@babel/helper-split-export-declaration": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz", - "integrity": "sha512-guAg1SXFcVr04Guk9eq0S4/rWS++sbmyqosJzVs8+1fH5NI+ZcmkaSkc7dmtAFbHFva6yRJnjW3yAcGxjueDug==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.0.tgz", + "integrity": "sha512-YhYFhH4T6DlbT6CPtVgLfC1Jp2gbCawU/ml7WJvUpBg01bCrXSzTYMZZXbbIGjq/kHmK8YUATxTppcRGzj31pA==", "dev": true, "requires": { - "@babel/types": "^7.7.4" + "@babel/types": "^7.8.0" } }, "@babel/helper-wrap-function": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.7.4.tgz", - "integrity": "sha512-VsfzZt6wmsocOaVU0OokwrIytHND55yvyT4BPB9AIIgwr8+x7617hetdJTsuGwygN5RC6mxA9EJztTjuwm2ofg==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.0.tgz", + "integrity": "sha512-2j6idN2jt8Y+8nJ4UPN/6AZa53DAkcETMVmroJQh50qZc59PuQKVjgOIIqmrLoQf6Ia9bs90MHRcID1OW5tfag==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.7.4", - "@babel/template": "^7.7.4", - "@babel/traverse": "^7.7.4", - "@babel/types": "^7.7.4" + "@babel/helper-function-name": "^7.8.0", + "@babel/template": "^7.8.0", + "@babel/traverse": "^7.8.0", + "@babel/types": "^7.8.0" } }, "@babel/helpers": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.7.4.tgz", - "integrity": "sha512-ak5NGZGJ6LV85Q1Zc9gn2n+ayXOizryhjSUBTdu5ih1tlVCJeuQENzc4ItyCVhINVXvIT/ZQ4mheGIsfBkpskg==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.0.tgz", + "integrity": "sha512-srWKpjAFbiut5JoCReZJ098hLqoZ9HufOnKZPggc7j74XaPuQ+9b3RYPV1M/HfjL63lCNd8uI1O487qIWxAFNA==", "dev": true, "requires": { - "@babel/template": "^7.7.4", - "@babel/traverse": "^7.7.4", - "@babel/types": "^7.7.4" + "@babel/template": "^7.8.0", + "@babel/traverse": "^7.8.0", + "@babel/types": "^7.8.0" } }, "@babel/highlight": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz", - "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.0.tgz", + "integrity": "sha512-OsdTJbHlPtIk2mmtwXItYrdmalJ8T0zpVzNAbKSkHshuywj7zb29Y09McV/jQsQunc/nEyHiPV2oy9llYMLqxw==", "dev": true, "requires": { "chalk": "^2.0.0", @@ -257,113 +258,113 @@ } }, "@babel/parser": { - "version": "7.7.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.7.tgz", - "integrity": "sha512-WtTZMZAZLbeymhkd/sEaPD8IQyGAhmuTuvTzLiCFM7iXiVdY0gc0IaI+cW0fh1BnSMbJSzXX6/fHllgHKwHhXw==" + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.0.tgz", + "integrity": "sha512-VVtsnUYbd1+2A2vOVhm4P2qNXQE8L/W859GpUHfUcdhX8d3pEKThZuIr6fztocWx9HbK+00/CR0tXnhAggJ4CA==" }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.4.tgz", - "integrity": "sha512-1ypyZvGRXriY/QP668+s8sFr2mqinhkRDMPSQLNghCQE+GAkFtp+wkHVvg2+Hdki8gwP+NFzJBJ/N1BfzCCDEw==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.0.tgz", + "integrity": "sha512-8vIQf8JYced7gCeKDsGETNGKE+zdD/JmP1LBlRn+w3UXc1aSpZv2Y330bB/fnOEbUgPbuFv+IEi+gopg+Fu0kQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.7.4", - "@babel/plugin-syntax-async-generators": "^7.7.4" + "@babel/helper-plugin-utils": "^7.8.0", + "@babel/helper-remap-async-to-generator": "^7.8.0", + "@babel/plugin-syntax-async-generators": "^7.8.0" } }, "@babel/plugin-proposal-dynamic-import": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.4.tgz", - "integrity": "sha512-StH+nGAdO6qDB1l8sZ5UBV8AC3F2VW2I8Vfld73TMKyptMU9DY5YsJAS8U81+vEtxcH3Y/La0wG0btDrhpnhjQ==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.0.tgz", + "integrity": "sha512-YzMq0AqeTR4Mh2pz3GrCWqhcEV38HgUMMR/56/YR5GPc4Y2p1KJ4Le6j92vMnW8TJqVj+qJz/KDNglpMeww9Yg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-dynamic-import": "^7.7.4" + "@babel/helper-plugin-utils": "^7.8.0", + "@babel/plugin-syntax-dynamic-import": "^7.8.0" } }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.7.4.tgz", - "integrity": "sha512-DyM7U2bnsQerCQ+sejcTNZh8KQEUuC3ufzdnVnSiUv/qoGJp2Z3hanKL18KDhsBT5Wj6a7CMT5mdyCNJsEaA9w==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.0.tgz", + "integrity": "sha512-tHP3eez6TrpPJYttBZ/6uItRbIuXUIDpQ9xwvzKwR+RboWGMJ7WzFC5dDJ3vjLuCx0/DG1tM0MVkmgcBybth9w==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.7.4" + "@babel/helper-plugin-utils": "^7.8.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" } }, "@babel/plugin-syntax-async-generators": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.7.4.tgz", - "integrity": "sha512-Li4+EjSpBgxcsmeEF8IFcfV/+yJGxHXDirDkEoyFjumuwbmfCVHUt0HuowD/iGM7OhIRyXJH9YXxqiH6N815+g==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.0.tgz", + "integrity": "sha512-a8w8k7pK8nYhem07rXdAq03T+DlTX8LFojUptrh9JEx80AgLqGiuoFIyQOGTWif39kFnDOQqbzl1s6KQqrfV+A==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-dynamic-import": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.7.4.tgz", - "integrity": "sha512-jHQW0vbRGvwQNgyVxwDh4yuXu4bH1f5/EICJLAhl1SblLs2CDhrsmCk+v5XLdE9wxtAFRyxx+P//Iw+a5L/tTg==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.0.tgz", + "integrity": "sha512-Mx2RzpCHJaBfmFdA2abXDKRHVJdzJ6R0Wqwb6TxCgM7NRR5wcC4cyiAsRL7Ga+lwG8GG1cKvb+4ENjic8y15jA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.7.4.tgz", - "integrity": "sha512-4ZSuzWgFxqHRE31Glu+fEr/MirNZOMYmD/0BhBWyLyOOQz/gTAl7QmWm2hX1QxEIXsr2vkdlwxIzTyiYRC4xcQ==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.0.tgz", + "integrity": "sha512-EIgJVy+u1RvR2gJfX4ReLwAupO/twllUue1wPrRxhu18+eC3bGTEcOSXLQdaE9ya9NG1rE0eQs0GSiloUGFEwg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.7.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.7.tgz", - "integrity": "sha512-b4in+YlTeE/QmTgrllnb3bHA0HntYvjz8O3Mcbx75UBPJA2xhb5A8nle498VhxSXJHQefjtQxpnLPehDJ4TRlg==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.0.tgz", + "integrity": "sha512-pq/XLkDB4MPvTe9ktHJInfWksalXogrIGRZJUG7RiDXhEfdNrlducoMPbACZQuCFtelVgVpD0VyreiY0l38G7g==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.7.4", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-create-regexp-features-plugin": "^7.8.0", + "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.7.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.5.tgz", - "integrity": "sha512-9Cq4zTFExwFhQI6MT1aFxgqhIsMWQWDVwOgLzl7PTWJHsNaqFvklAU+Oz6AQLAS0dJKTwZSOCo20INwktxpi3Q==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.0.tgz", + "integrity": "sha512-w2g8tmL7NgBYt6alc8YawMcmPiYqnVvvI0kLB++VOUOssqdJMAkfQOMGV+2M8H5uhJYDaAghAVMUYps3s+jMrw==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.7.5", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.7.4", + "@babel/helper-module-transforms": "^7.8.0", + "@babel/helper-plugin-utils": "^7.8.0", + "@babel/helper-simple-access": "^7.8.0", "babel-plugin-dynamic-import-node": "^2.3.0" } }, "@babel/template": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.7.4.tgz", - "integrity": "sha512-qUzihgVPguAzXCK7WXw8pqs6cEwi54s3E+HrejlkuWO6ivMKx9hZl3Y2fSXp9i5HgyWmj7RKP+ulaYnKM4yYxw==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.0.tgz", + "integrity": "sha512-0NNMDsY2t3ltAVVK1WHNiaePo3tXPUeJpCX4I3xSKFoEl852wJHG8mrgHVADf8Lz1y+8al9cF7cSSfzSnFSYiw==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.7.4", - "@babel/types": "^7.7.4" + "@babel/code-frame": "^7.8.0", + "@babel/parser": "^7.8.0", + "@babel/types": "^7.8.0" } }, "@babel/traverse": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.7.4.tgz", - "integrity": "sha512-P1L58hQyupn8+ezVA2z5KBm4/Zr4lCC8dwKCMYzsa5jFMDMQAzaBNy9W5VjB+KAmBjb40U7a/H6ao+Xo+9saIw==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.0.tgz", + "integrity": "sha512-d/6sPXFLGlJHZO/zWDtgFaKyalCOHLedzxpVJn6el1cw+f2TZa7xZEszeXdOw6EUemqRFBAn106BWBvtSck9Qw==", "dev": true, "requires": { - "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.7.4", - "@babel/helper-function-name": "^7.7.4", - "@babel/helper-split-export-declaration": "^7.7.4", - "@babel/parser": "^7.7.4", - "@babel/types": "^7.7.4", + "@babel/code-frame": "^7.8.0", + "@babel/generator": "^7.8.0", + "@babel/helper-function-name": "^7.8.0", + "@babel/helper-split-export-declaration": "^7.8.0", + "@babel/parser": "^7.8.0", + "@babel/types": "^7.8.0", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -387,9 +388,9 @@ } }, "@babel/types": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.7.4.tgz", - "integrity": "sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.0.tgz", + "integrity": "sha512-1RF84ehyx9HH09dMMwGWl3UTWlVoCPtqqJPjGuC4JzMe1ZIVDJ2DT8mv3cPv/A7veLD6sgR7vi95lJqm+ZayIg==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -515,9 +516,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.1.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.1.4.tgz", - "integrity": "sha512-Lue/mlp2egZJoHXZr4LndxDAd7i/7SQYhV0EjWfb/a4/OZ6tuVwMCVPiwkU5nsEipxEf7hmkSU7Em5VQ8P5NGA==" + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.1.6.tgz", + "integrity": "sha512-Jg1F+bmxcpENHP23sVKkNuU3uaxPnsBMW0cLjleiikFKomJQbsn0Cqk2yDvQArqzZN6ABfBkZ0To7pQ8sLdWDg==" }, "@ui5/builder": { "version": "1.8.0", @@ -1684,11 +1685,11 @@ "dev": true }, "compressible": { - "version": "2.0.17", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.17.tgz", - "integrity": "sha512-BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", "requires": { - "mime-db": ">= 1.40.0 < 2" + "mime-db": ">= 1.43.0 < 2" } }, "compression": { @@ -2267,9 +2268,9 @@ "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" }, "devcert-sanscache": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.6.tgz", - "integrity": "sha512-Itp0Y58HtMqZ1v8YHYmtXpSFN5l4NaBcy7vBQUFxy2hs/HpNVTrNEynF9E2N9SK0uqa0vn7LFL8Rwinm500Uag==", + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.7.tgz", + "integrity": "sha512-mrCZDM/WayeLIRErtbRGjEkb1chxe9Vg0Cwv88oUJiEmt6Ts8VWLe6G0WM9PbMlW0tVeYAOc0KBlIrm5KUkYHw==", "requires": { "command-exists": "^1.2.2", "get-port": "^3.0.0", @@ -3243,6 +3244,12 @@ "wide-align": "^1.1.0" } }, + "gensync": { + "version": "1.0.0-beta.1", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", + "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", + "dev": true + }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -3310,9 +3317,9 @@ "dev": true }, "globby": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.1.tgz", - "integrity": "sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", "requires": { "@types/glob": "^7.1.1", "array-union": "^2.1.0", @@ -3364,18 +3371,6 @@ "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==" }, - "handlebars": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.3.tgz", - "integrity": "sha512-3yPecJoJHK/4c6aZhSvxOyG4vJKDshV36VHp0iVCDVh7o9w2vwi3NSnL2MMPj3YdduqaBcu7cGbggJQM0br9xA==", - "dev": true, - "requires": { - "neo-async": "^2.6.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" - } - }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", @@ -3457,6 +3452,12 @@ "wbuf": "^1.1.0" } }, + "html-escaper": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.0.tgz", + "integrity": "sha512-a4u9BeERWGu/S8JiWEAQcdrg9v4QArtP9keViQjGMdff20fBdd8waotXaNmODqBe6uZ3Nafi7K/ho4gCQHV3Ig==", + "dev": true + }, "htmlparser2": { "version": "3.10.1", "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", @@ -4132,12 +4133,12 @@ } }, "istanbul-reports": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz", - "integrity": "sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==", + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", + "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", "dev": true, "requires": { - "handlebars": "^4.1.2" + "html-escaper": "^2.0.0" } }, "js-string-escape": { @@ -4306,9 +4307,9 @@ "dev": true }, "less-openui5": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.2.tgz", - "integrity": "sha512-9oQ/Dspc07IA3pQxA5SViH/bf5mYInuTY5M/fpu95R/ovrdXR86apMOHTMFxdZUntpeBM+9WYik072uiGpUGqw==", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.3.tgz", + "integrity": "sha512-OPsWCHvICUyJybIeaWFLcAAajZtxd3KTMe5yAazbcxRrh37RCYFMBMaZzHvfcp8M7Ce7oDzVXbh20uKcaaPGWQ==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", @@ -4680,16 +4681,16 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.42.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz", - "integrity": "sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ==" + "version": "1.43.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", + "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==" }, "mime-types": { - "version": "2.1.25", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.25.tgz", - "integrity": "sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg==", + "version": "2.1.26", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", + "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", "requires": { - "mime-db": "1.42.0" + "mime-db": "1.43.0" } }, "mimic-fn": { @@ -4779,12 +4780,6 @@ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" }, - "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", - "dev": true - }, "nested-error-stacks": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz", @@ -5101,16 +5096,6 @@ "temp-write": "^4.0.0" } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - } - }, "optionator": { "version": "0.8.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", @@ -5641,9 +5626,9 @@ } }, "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -5858,9 +5843,9 @@ } }, "resolve": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.14.1.tgz", - "integrity": "sha512-fn5Wobh4cxbLzuHaE+nphztHy43/b++4M6SsGFC2gB8uYwf0C8LcarfCz1un7UTW8OFQg9iNjZ4xpcFVGebDPg==", + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.14.2.tgz", + "integrity": "sha512-EjlOBLBO1kxsUxsKjLt7TAECyKW6fOh1VRkykQkKGzcBbjjPIxBqGh0jf7GJ3k/f5mxMqW3htMD3WdTUVtW8HQ==", "requires": { "path-parse": "^1.0.6" } @@ -6657,9 +6642,9 @@ } }, "terser": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.5.1.tgz", - "integrity": "sha512-lH9zLIbX8PRBEFCTvfHGCy0s9HEKnNso1Dx9swSopF3VUnFLB8DpQ61tHxoofovNC/sG0spajJM3EIIRSTByiQ==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.2.tgz", + "integrity": "sha512-6FUjJdY2i3WZAtYBtnV06OOcOfzl+4hSKYE9wgac8rkLRBToPDDrBB2AcHwQD/OKDxbnvhVy2YgOPWO2SsKWqg==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -6846,17 +6831,6 @@ "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, - "uglify-js": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.7.3.tgz", - "integrity": "sha512-7tINm46/3puUA4hCkKYo4Xdts+JDaVC9ZPRcG8Xw9R4nhO/gZgUM3TENq8IF4Vatk8qCig4MzP/c8G4u2BkVQg==", - "dev": true, - "optional": true, - "requires": { - "commander": "~2.20.3", - "source-map": "~0.6.1" - } - }, "uid2": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", @@ -6864,9 +6838,9 @@ "dev": true }, "underscore": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", - "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==" + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.2.tgz", + "integrity": "sha512-D39qtimx0c1fI3ya1Lnhk3E9nONswSKhnffBI0gME9C99fYOkNi04xs8K6pePLhvl1frbDemkaBQ5ikWllR2HQ==" }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", @@ -7095,12 +7069,6 @@ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - }, "wrap-ansi": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index a0294591fad..c88b116f6d5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,7 +105,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.14.1" + "resolve": "^1.14.2" }, "devDependencies": { "ava": "^2.4.0", From 700d7c85c51cecb0c0517b5cbc15d7910176a4aa Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Jan 2020 10:13:04 +0000 Subject: [PATCH 0278/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.8.0 to 1.9.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.9.0/CHANGELOG.md --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bc1a5f0d525..aeedbc3df39 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -521,22 +521,22 @@ "integrity": "sha512-Jg1F+bmxcpENHP23sVKkNuU3uaxPnsBMW0cLjleiikFKomJQbsn0Cqk2yDvQArqzZN6ABfBkZ0To7pQ8sLdWDg==" }, "@ui5/builder": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.8.0.tgz", - "integrity": "sha512-d+WJRW31jfuw63CWHOBZ20fbWASDdIISx9UY7jZIlpD3Z0hPDLBHvL7aHxn/ZOFLUvifec8NRKt3jxz//Ake3g==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.9.0.tgz", + "integrity": "sha512-JWookHdvFmlGMEGHv8OpE3D0/8lovafWZPpJSUvj27YHqqX/mO0Qxf/KLKxUmrM4GOfLB0feVpwCnYc40HUr2w==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", - "escodegen": "^1.12.0", + "escodegen": "^1.12.1", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "^4.3.0", - "globby": "^10.0.1", + "globby": "^10.0.2", "graceful-fs": "^4.2.3", "jsdoc": "~3.6.3", - "less-openui5": "^0.8.2", + "less-openui5": "^0.8.3", "make-dir": "^3.0.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", @@ -544,8 +544,8 @@ "rimraf": "^3.0.0", "semver": "^6.3.0", "slash": "^3.0.0", - "terser": "^4.4.2", - "xml2js": "^0.4.22", + "terser": "^4.6.2", + "xml2js": "^0.4.23", "yazl": "^2.5.1" } }, diff --git a/packages/project/package.json b/packages/project/package.json index c88b116f6d5..6d6a5be3da0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.8.0", + "@ui5/builder": "^1.9.0", "@ui5/logger": "^1.0.2", "@ui5/server": "^1.5.2", "graceful-fs": "^4.2.3", From b727364bfed82e1b7c23f9a3b4289c8c1c75bfca Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Jan 2020 10:33:57 +0000 Subject: [PATCH 0279/1272] [ui5-project]Release 1.2.0 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 3247703655c..6388d131ddf 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.1.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.2.0...HEAD). + + +## [v1.2.0] - 2020-01-13 +### Features +- Add specification version 1.1 ([#252](https://github.com/SAP/ui5-project/issues/252)) [`5a83308`](https://github.com/SAP/ui5-project/commit/5a833086ccd415c5557c2bc3bbb705c18ac54314) + ## [v1.1.1] - 2019-11-07 @@ -107,6 +113,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v1.2.0]: https://github.com/SAP/ui5-project/compare/v1.1.1...v1.2.0 [v1.1.1]: https://github.com/SAP/ui5-project/compare/v1.1.0...v1.1.1 [v1.1.0]: https://github.com/SAP/ui5-project/compare/v1.0.3...v1.1.0 [v1.0.3]: https://github.com/SAP/ui5-project/compare/v1.0.2...v1.0.3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index aeedbc3df39..42745d3b1b7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.1.1", + "version": "1.2.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 6d6a5be3da0..aaab7da6003 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.1.1", + "version": "1.2.0", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 05231dd291d373b919f6aeec1929bc0de220342b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 19 Jan 2020 04:19:53 +0000 Subject: [PATCH 0280/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 369 ++++++++++++++--------------- 1 file changed, 181 insertions(+), 188 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 42745d3b1b7..72fa8f5ede7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -34,27 +34,27 @@ } }, "@babel/code-frame": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.0.tgz", - "integrity": "sha512-AN2IR/wCUYsM+PdErq6Bp3RFTXl8W0p9Nmymm7zkpsCmh+r/YYcckaCGpU8Q/mEKmST19kkGRaG42A/jxOWwBA==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", + "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", "dev": true, "requires": { - "@babel/highlight": "^7.8.0" + "@babel/highlight": "^7.8.3" } }, "@babel/core": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.0.tgz", - "integrity": "sha512-3rqPi/bv/Xfu2YzHvBz4XqMI1fKVwnhntPA1/fjoECrSjrhbOCxlTrbVu5gUtr8zkxW+RpkDOa/HCW93gzS2Dw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.0", - "@babel/generator": "^7.8.0", - "@babel/helpers": "^7.8.0", - "@babel/parser": "^7.8.0", - "@babel/template": "^7.8.0", - "@babel/traverse": "^7.8.0", - "@babel/types": "^7.8.0", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.3.tgz", + "integrity": "sha512-4XFkf8AwyrEG7Ziu3L2L0Cv+WyY47Tcsp70JFmpftbAA1K7YL/sgE9jh9HyNj08Y/U50ItUchpN0w6HxAoX1rA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/generator": "^7.8.3", + "@babel/helpers": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/traverse": "^7.8.3", + "@babel/types": "^7.8.3", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -95,12 +95,12 @@ } }, "@babel/generator": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.0.tgz", - "integrity": "sha512-2Lp2e02CV2C7j/H4n4D9YvsvdhPVVg9GDIamr6Tu4tU35mL3mzOrzl1lZ8ZJtysfZXh+y+AGORc2rPS7yHxBUg==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", + "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", "dev": true, "requires": { - "@babel/types": "^7.8.0", + "@babel/types": "^7.8.3", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -115,141 +115,141 @@ } }, "@babel/helper-annotate-as-pure": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.0.tgz", - "integrity": "sha512-WWj+1amBdowU2g18p3/KUc1Y5kWnaNm1paohq2tT4/RreeMNssYkv6ul9wkE2iIqjwLBwNMZGH4pTGlMSUqMMg==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz", + "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==", "dev": true, "requires": { - "@babel/types": "^7.8.0" + "@babel/types": "^7.8.3" } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.0.tgz", - "integrity": "sha512-vJj2hPbxxLUWJEV86iZiac5curAnC3ZVc+rFmFeWZigUOcuCPpbF+KxoEmxrkmuCGylHFF9t4lkpcDUcxnhQ5g==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.3.tgz", + "integrity": "sha512-Gcsm1OHCUr9o9TcJln57xhWHtdXbA2pgQ58S0Lxlks0WMGNXuki4+GLfX0p+L2ZkINUGZvfkz8rzoqJQSthI+Q==", "dev": true, "requires": { - "@babel/helper-regex": "^7.8.0", + "@babel/helper-regex": "^7.8.3", "regexpu-core": "^4.6.0" } }, "@babel/helper-function-name": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.0.tgz", - "integrity": "sha512-x9psucuU0Xalw+0Vpr2FYJMLB7/KnPSLZhlkUyOGbYAWRDfmtZBrguYpJYiaNCRV7vGkYjO/gF6/J6yMvdWTDw==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", + "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.8.0", - "@babel/template": "^7.8.0", - "@babel/types": "^7.8.0" + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" } }, "@babel/helper-get-function-arity": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.0.tgz", - "integrity": "sha512-eUP5grliToMapQiTaYS2AAO/WwaCG7cuJztR1v/a1aPzUzUeGt+AaI9OvLATc/AfFkF8SLJ10d5ugGt/AQ9d6w==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", "dev": true, "requires": { - "@babel/types": "^7.8.0" + "@babel/types": "^7.8.3" } }, "@babel/helper-module-imports": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.0.tgz", - "integrity": "sha512-ylY9J6ZxEcjmJaJ4P6aVs/fZdrZVctCGnxxfYXwCnSMapqd544zT8lWK2qI/vBPjE5gS0o2jILnH+AkpsPauEQ==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", + "integrity": "sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==", "dev": true, "requires": { - "@babel/types": "^7.8.0" + "@babel/types": "^7.8.3" } }, "@babel/helper-module-transforms": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.0.tgz", - "integrity": "sha512-fvGhX4FY7YwRdWW/zfddNaKpYl8TaA8hvwONIYhv1/a1ZbgxbTrjsmH6IGWUgUNki7QzbpZ27OEh88sZdft3YA==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.3.tgz", + "integrity": "sha512-C7NG6B7vfBa/pwCOshpMbOYUmrYQDfCpVL/JCRu0ek8B5p8kue1+BCXpg2vOYs7w5ACB9GTOBYQ5U6NwrMg+3Q==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.8.0", - "@babel/helper-simple-access": "^7.8.0", - "@babel/helper-split-export-declaration": "^7.8.0", - "@babel/template": "^7.8.0", - "@babel/types": "^7.8.0", + "@babel/helper-module-imports": "^7.8.3", + "@babel/helper-simple-access": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3", "lodash": "^4.17.13" } }, "@babel/helper-plugin-utils": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.0.tgz", - "integrity": "sha512-+hAlRGdf8fHQAyNnDBqTHQhwdLURLdrCROoWaEQYiQhk2sV9Rhs+GoFZZfMJExTq9HG8o2NX3uN2G90bFtmFdA==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", + "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", "dev": true }, "@babel/helper-regex": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.8.0.tgz", - "integrity": "sha512-haD8fRsPtyFZkbtxBIaGBBHRtbn0YsyecdYrxNgO0Bl6SlGokJPQX9M2tDuVbeQBYHZVLUPMSwGQn4obHevsMQ==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.8.3.tgz", + "integrity": "sha512-BWt0QtYv/cg/NecOAZMdcn/waj/5P26DR4mVLXfFtDokSR6fyuG0Pj+e2FqtSME+MqED1khnSMulkmGl8qWiUQ==", "dev": true, "requires": { "lodash": "^4.17.13" } }, "@babel/helper-remap-async-to-generator": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.0.tgz", - "integrity": "sha512-+aKyBd4oHAaIZgOLq/uLjkUz7ExZ0ppdNBc8Qr72BmtKNAy3A6EJa/ifjj0//CIzQtUDPs3E6HjKM2cV6bnXsQ==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz", + "integrity": "sha512-kgwDmw4fCg7AVgS4DukQR/roGp+jP+XluJE5hsRZwxCYGg+Rv9wSGErDWhlI90FODdYfd4xG4AQRiMDjjN0GzA==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.8.0", - "@babel/helper-wrap-function": "^7.8.0", - "@babel/template": "^7.8.0", - "@babel/traverse": "^7.8.0", - "@babel/types": "^7.8.0" + "@babel/helper-annotate-as-pure": "^7.8.3", + "@babel/helper-wrap-function": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/traverse": "^7.8.3", + "@babel/types": "^7.8.3" } }, "@babel/helper-simple-access": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.8.0.tgz", - "integrity": "sha512-I+7yKZJnxp7VIC2UFzXfVjLiJuU16rYFF59x27c+boINkO/pLETgZcoesCryg9jmU4jxEa0foFueW+2wjc9Gsw==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz", + "integrity": "sha512-VNGUDjx5cCWg4vvCTR8qQ7YJYZ+HBjxOgXEl7ounz+4Sn7+LMD3CFrCTEU6/qXKbA2nKg21CwhhBzO0RpRbdCw==", "dev": true, "requires": { - "@babel/template": "^7.8.0", - "@babel/types": "^7.8.0" + "@babel/template": "^7.8.3", + "@babel/types": "^7.8.3" } }, "@babel/helper-split-export-declaration": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.0.tgz", - "integrity": "sha512-YhYFhH4T6DlbT6CPtVgLfC1Jp2gbCawU/ml7WJvUpBg01bCrXSzTYMZZXbbIGjq/kHmK8YUATxTppcRGzj31pA==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", + "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", "dev": true, "requires": { - "@babel/types": "^7.8.0" + "@babel/types": "^7.8.3" } }, "@babel/helper-wrap-function": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.0.tgz", - "integrity": "sha512-2j6idN2jt8Y+8nJ4UPN/6AZa53DAkcETMVmroJQh50qZc59PuQKVjgOIIqmrLoQf6Ia9bs90MHRcID1OW5tfag==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz", + "integrity": "sha512-LACJrbUET9cQDzb6kG7EeD7+7doC3JNvUgTEQOx2qaO1fKlzE/Bf05qs9w1oXQMmXlPO65lC3Tq9S6gZpTErEQ==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.8.0", - "@babel/template": "^7.8.0", - "@babel/traverse": "^7.8.0", - "@babel/types": "^7.8.0" + "@babel/helper-function-name": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/traverse": "^7.8.3", + "@babel/types": "^7.8.3" } }, "@babel/helpers": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.0.tgz", - "integrity": "sha512-srWKpjAFbiut5JoCReZJ098hLqoZ9HufOnKZPggc7j74XaPuQ+9b3RYPV1M/HfjL63lCNd8uI1O487qIWxAFNA==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.3.tgz", + "integrity": "sha512-LmU3q9Pah/XyZU89QvBgGt+BCsTPoQa+73RxAQh8fb8qkDyIfeQnmgs+hvzhTCKTzqOyk7JTkS3MS1S8Mq5yrQ==", "dev": true, "requires": { - "@babel/template": "^7.8.0", - "@babel/traverse": "^7.8.0", - "@babel/types": "^7.8.0" + "@babel/template": "^7.8.3", + "@babel/traverse": "^7.8.3", + "@babel/types": "^7.8.3" } }, "@babel/highlight": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.0.tgz", - "integrity": "sha512-OsdTJbHlPtIk2mmtwXItYrdmalJ8T0zpVzNAbKSkHshuywj7zb29Y09McV/jQsQunc/nEyHiPV2oy9llYMLqxw==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", + "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", "dev": true, "requires": { "chalk": "^2.0.0", @@ -258,113 +258,113 @@ } }, "@babel/parser": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.0.tgz", - "integrity": "sha512-VVtsnUYbd1+2A2vOVhm4P2qNXQE8L/W859GpUHfUcdhX8d3pEKThZuIr6fztocWx9HbK+00/CR0tXnhAggJ4CA==" + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", + "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==" }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.0.tgz", - "integrity": "sha512-8vIQf8JYced7gCeKDsGETNGKE+zdD/JmP1LBlRn+w3UXc1aSpZv2Y330bB/fnOEbUgPbuFv+IEi+gopg+Fu0kQ==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz", + "integrity": "sha512-NZ9zLv848JsV3hs8ryEh7Uaz/0KsmPLqv0+PdkDJL1cJy0K4kOCFa8zc1E3mp+RHPQcpdfb/6GovEsW4VDrOMw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0", - "@babel/helper-remap-async-to-generator": "^7.8.0", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-remap-async-to-generator": "^7.8.3", "@babel/plugin-syntax-async-generators": "^7.8.0" } }, "@babel/plugin-proposal-dynamic-import": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.0.tgz", - "integrity": "sha512-YzMq0AqeTR4Mh2pz3GrCWqhcEV38HgUMMR/56/YR5GPc4Y2p1KJ4Le6j92vMnW8TJqVj+qJz/KDNglpMeww9Yg==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz", + "integrity": "sha512-NyaBbyLFXFLT9FP+zk0kYlUlA8XtCUbehs67F0nnEg7KICgMc2mNkIeu9TYhKzyXMkrapZFwAhXLdnt4IYHy1w==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0", + "@babel/helper-plugin-utils": "^7.8.3", "@babel/plugin-syntax-dynamic-import": "^7.8.0" } }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.0.tgz", - "integrity": "sha512-tHP3eez6TrpPJYttBZ/6uItRbIuXUIDpQ9xwvzKwR+RboWGMJ7WzFC5dDJ3vjLuCx0/DG1tM0MVkmgcBybth9w==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-0gkX7J7E+AtAw9fcwlVQj8peP61qhdg/89D5swOkjYbkboA2CVckn3kiyum1DE0wskGb7KJJxBdyEBApDLLVdw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0", + "@babel/helper-plugin-utils": "^7.8.3", "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" } }, "@babel/plugin-syntax-async-generators": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.0.tgz", - "integrity": "sha512-a8w8k7pK8nYhem07rXdAq03T+DlTX8LFojUptrh9JEx80AgLqGiuoFIyQOGTWif39kFnDOQqbzl1s6KQqrfV+A==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.0.tgz", - "integrity": "sha512-Mx2RzpCHJaBfmFdA2abXDKRHVJdzJ6R0Wqwb6TxCgM7NRR5wcC4cyiAsRL7Ga+lwG8GG1cKvb+4ENjic8y15jA==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.0.tgz", - "integrity": "sha512-EIgJVy+u1RvR2gJfX4ReLwAupO/twllUue1wPrRxhu18+eC3bGTEcOSXLQdaE9ya9NG1rE0eQs0GSiloUGFEwg==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.0.tgz", - "integrity": "sha512-pq/XLkDB4MPvTe9ktHJInfWksalXogrIGRZJUG7RiDXhEfdNrlducoMPbACZQuCFtelVgVpD0VyreiY0l38G7g==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz", + "integrity": "sha512-kLs1j9Nn4MQoBYdRXH6AeaXMbEJFaFu/v1nQkvib6QzTj8MZI5OQzqmD83/2jEM1z0DLilra5aWO5YpyC0ALIw==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.0", - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-create-regexp-features-plugin": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.0.tgz", - "integrity": "sha512-w2g8tmL7NgBYt6alc8YawMcmPiYqnVvvI0kLB++VOUOssqdJMAkfQOMGV+2M8H5uhJYDaAghAVMUYps3s+jMrw==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.3.tgz", + "integrity": "sha512-JpdMEfA15HZ/1gNuB9XEDlZM1h/gF/YOH7zaZzQu2xCFRfwc01NXBMHHSTT6hRjlXJJs5x/bfODM3LiCk94Sxg==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.8.0", - "@babel/helper-plugin-utils": "^7.8.0", - "@babel/helper-simple-access": "^7.8.0", + "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-simple-access": "^7.8.3", "babel-plugin-dynamic-import-node": "^2.3.0" } }, "@babel/template": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.0.tgz", - "integrity": "sha512-0NNMDsY2t3ltAVVK1WHNiaePo3tXPUeJpCX4I3xSKFoEl852wJHG8mrgHVADf8Lz1y+8al9cF7cSSfzSnFSYiw==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", + "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", "dev": true, "requires": { - "@babel/code-frame": "^7.8.0", - "@babel/parser": "^7.8.0", - "@babel/types": "^7.8.0" + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3" } }, "@babel/traverse": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.0.tgz", - "integrity": "sha512-d/6sPXFLGlJHZO/zWDtgFaKyalCOHLedzxpVJn6el1cw+f2TZa7xZEszeXdOw6EUemqRFBAn106BWBvtSck9Qw==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", + "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", "dev": true, "requires": { - "@babel/code-frame": "^7.8.0", - "@babel/generator": "^7.8.0", - "@babel/helper-function-name": "^7.8.0", - "@babel/helper-split-export-declaration": "^7.8.0", - "@babel/parser": "^7.8.0", - "@babel/types": "^7.8.0", + "@babel/code-frame": "^7.8.3", + "@babel/generator": "^7.8.3", + "@babel/helper-function-name": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/parser": "^7.8.3", + "@babel/types": "^7.8.3", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -388,9 +388,9 @@ } }, "@babel/types": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.0.tgz", - "integrity": "sha512-1RF84ehyx9HH09dMMwGWl3UTWlVoCPtqqJPjGuC4JzMe1ZIVDJ2DT8mv3cPv/A7veLD6sgR7vi95lJqm+ZayIg==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", + "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -516,9 +516,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.1.6.tgz", - "integrity": "sha512-Jg1F+bmxcpENHP23sVKkNuU3uaxPnsBMW0cLjleiikFKomJQbsn0Cqk2yDvQArqzZN6ABfBkZ0To7pQ8sLdWDg==" + "version": "13.1.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.1.8.tgz", + "integrity": "sha512-6XzyyNM9EKQW4HKuzbo/CkOIjn/evtCmsU+MUM1xDfJ+3/rNjBttM1NgN7AOQvN6tP1Sl1D1PIKMreTArnxM9A==" }, "@ui5/builder": { "version": "1.9.0", @@ -623,11 +623,11 @@ "dev": true }, "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.11.0.tgz", + "integrity": "sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==", "requires": { - "fast-deep-equal": "^2.0.1", + "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" @@ -959,9 +959,9 @@ } }, "get-port": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.0.tgz", - "integrity": "sha512-bjioH1E9bTQUvgaB6VycVy1QVbTZI41yTnF9qkZz6ixgy/uhCH6D63bKeZ6Code/07JYA61MeI94jSdHss8PNA==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", + "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", "dev": true }, "locate-path": { @@ -1011,9 +1011,9 @@ "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.0.tgz", - "integrity": "sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A==" + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", + "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==" }, "babel-plugin-dynamic-import-node": { "version": "2.3.0", @@ -2449,9 +2449,9 @@ } }, "es-abstract": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.0.tgz", - "integrity": "sha512-yYkE07YF+6SIBmg1MsJ9dlub5L48Ek7X0qz+c/CPCHS9EBXfESorzng4cJQjJW5/pB6vDF41u7F8vUhLVDqIug==", + "version": "1.17.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.2.tgz", + "integrity": "sha512-YoKuru3Lyoy7yVTBSH2j7UxTqe/je3dWAruC0sHvZX1GNd5zX8SSLvQqEgO9b3Ex8IW+goFI9arEEsFIbulhOw==", "dev": true, "requires": { "es-to-primitive": "^1.2.1", @@ -2576,22 +2576,15 @@ "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" }, "escodegen": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.1.tgz", - "integrity": "sha512-Q8t2YZ+0e0pc7NRVj3B4tSQ9rim1oi4Fh46k2xhJ2qOiEwhQfdjyEQddWdj7ZFaKmU+5104vn1qrcjEPWq+bgQ==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.13.0.tgz", + "integrity": "sha512-eYk2dCkxR07DsHA/X2hRBj0CFAZeri/LyDMc0C8JT1Hqi6JnVpMhJ7XFITbb0+yZS3lVkaPL2oCkZ3AVmeVbMw==", "requires": { - "esprima": "^3.1.3", + "esprima": "^4.0.1", "estraverse": "^4.2.0", "esutils": "^2.0.2", "optionator": "^0.8.1", "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" - } } }, "escope": { @@ -2961,9 +2954,9 @@ "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==" }, "fast-diff": { "version": "1.2.0", @@ -3472,9 +3465,9 @@ }, "dependencies": { "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.5.0.tgz", + "integrity": "sha512-gSz026xs2LfxBPudDuI41V1lka8cxg64E66SGe78zJlsUofOg/yqwezdIcdfwik6B4h8LFmWPA9ef9X3FiNFLA==", "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -5712,9 +5705,9 @@ } }, "registry-auth-token": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.0.0.tgz", - "integrity": "sha512-lpQkHxd9UL6tb3k/aHAVfnVtn+Bcs9ob5InuFLLEDqSqeq+AljB8GZW9xY0x7F+xYwEcjKe07nyoxzEYz6yvkw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.0.tgz", + "integrity": "sha512-7uxS951DeOBOwsv8deX+l7HcjY2VZxaOgHtM6RKzg3HhpE+bJ0O7VbuMJLosC1T5WSFpHm0DuFIbqUl43jHpsA==", "dev": true, "requires": { "rc": "^1.2.8", @@ -6229,9 +6222,9 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.5.0.tgz", + "integrity": "sha512-gSz026xs2LfxBPudDuI41V1lka8cxg64E66SGe78zJlsUofOg/yqwezdIcdfwik6B4h8LFmWPA9ef9X3FiNFLA==", "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -6642,9 +6635,9 @@ } }, "terser": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.2.tgz", - "integrity": "sha512-6FUjJdY2i3WZAtYBtnV06OOcOfzl+4hSKYE9wgac8rkLRBToPDDrBB2AcHwQD/OKDxbnvhVy2YgOPWO2SsKWqg==", + "version": "4.6.3", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.3.tgz", + "integrity": "sha512-Lw+ieAXmY69d09IIc/yqeBqXpEQIpDGZqT34ui1QWXIUpR2RjbqEkT8X7Lgex19hslSqcWM5iMN2kM11eMsESQ==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -6948,9 +6941,9 @@ "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, "uuid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", - "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==" + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" }, "validate-npm-package-license": { "version": "3.0.4", From 2467fbb5e82489ad18b16130c5ba3713ccb1775d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 24 Jan 2020 14:48:31 +0000 Subject: [PATCH 0281/1272] [ui5-project][INTERNAL] Bump @ui5/server from 1.5.2 to 1.5.3 Changelog of this version: https://github.com/SAP/ui5-server/blob/v1.5.3/CHANGELOG.md --- packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 72fa8f5ede7..c8081fcb324 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -576,23 +576,23 @@ } }, "@ui5/server": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.5.2.tgz", - "integrity": "sha512-z49Pj07LCImdX9FzElqaiIscXa5WDJtLcu5axuBjAqpIm+lc2b3DtFmyMLSt63fGOYno+FGb5tVAeJcDESEybA==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.5.3.tgz", + "integrity": "sha512-UWeGCmZ4B1zcUhYm0qKuvJbKv7hPVEDFwFaGphSXB4tIzklhw3SXYxjY+nm4MAJb4Gc1tPT3U66+vF/QhSP7nQ==", "requires": { - "@ui5/builder": "^1.8.0", + "@ui5/builder": "^1.9.0", "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", "compression": "^1.7.4", "connect-openui5": "^0.9.0", "cors": "^2.8.5", - "devcert-sanscache": "^0.4.6", + "devcert-sanscache": "0.4.6", "escape-html": "^1.0.3", "etag": "^1.8.1", "express": "^4.17.1", "fresh": "^0.5.2", "make-dir": "^3.0.0", - "mime-types": "^2.1.25", + "mime-types": "^2.1.26", "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", @@ -2268,9 +2268,9 @@ "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" }, "devcert-sanscache": { - "version": "0.4.7", - "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.7.tgz", - "integrity": "sha512-mrCZDM/WayeLIRErtbRGjEkb1chxe9Vg0Cwv88oUJiEmt6Ts8VWLe6G0WM9PbMlW0tVeYAOc0KBlIrm5KUkYHw==", + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.6.tgz", + "integrity": "sha512-Itp0Y58HtMqZ1v8YHYmtXpSFN5l4NaBcy7vBQUFxy2hs/HpNVTrNEynF9E2N9SK0uqa0vn7LFL8Rwinm500Uag==", "requires": { "command-exists": "^1.2.2", "get-port": "^3.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index aaab7da6003..956ab301fb8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,7 +98,7 @@ "dependencies": { "@ui5/builder": "^1.9.0", "@ui5/logger": "^1.0.2", - "@ui5/server": "^1.5.2", + "@ui5/server": "^1.5.3", "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", From 483312b063b4da1867ac338b5cc0217329f009ae Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 26 Jan 2020 04:28:26 +0000 Subject: [PATCH 0282/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 39 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 20 insertions(+), 21 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c8081fcb324..a4fa9b20e5c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -516,9 +516,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.1.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.1.8.tgz", - "integrity": "sha512-6XzyyNM9EKQW4HKuzbo/CkOIjn/evtCmsU+MUM1xDfJ+3/rNjBttM1NgN7AOQvN6tP1Sl1D1PIKMreTArnxM9A==" + "version": "13.5.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.5.0.tgz", + "integrity": "sha512-Onhn+z72D2O2Pb2ql2xukJ55rglumsVo1H6Fmyi8mlU9SvKdBk/pUSUAiBY/d9bAOF7VVWajX3sths/+g6ZiAQ==" }, "@ui5/builder": { "version": "1.9.0", @@ -838,9 +838,9 @@ "dev": true }, "async": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/async/-/async-3.1.0.tgz", - "integrity": "sha512-4vx/aaY6j/j3Lw3fbCHNWP0pPaTCew3F6F3hYyl/tHs/ndmV1q7NW9T5yuJ2XAGwdQrP+6Wu20x06U4APo/iQQ==" + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/async/-/async-3.1.1.tgz", + "integrity": "sha512-X5Dj8hK1pJNC2Wzo2Rcp9FBVdJMGRR/S7V+lH46s8GVFhtbo5O4Le5GECCF/8PISVdkUA6mMPvgz7qTTD1rf1g==" }, "asynckit": { "version": "0.4.0", @@ -2449,9 +2449,9 @@ } }, "es-abstract": { - "version": "1.17.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.2.tgz", - "integrity": "sha512-YoKuru3Lyoy7yVTBSH2j7UxTqe/je3dWAruC0sHvZX1GNd5zX8SSLvQqEgO9b3Ex8IW+goFI9arEEsFIbulhOw==", + "version": "1.17.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", + "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", "dev": true, "requires": { "es-to-primitive": "^1.2.1", @@ -3129,9 +3129,9 @@ "dev": true }, "follow-redirects": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.9.0.tgz", - "integrity": "sha512-CRcPzsSIbXyVDl0QI01muNDu69S8trU4jArW9LpOt2WtC6LyUJetcIrmfHsRBx7/Jb6GHJUiuqyYxPooFfNt6A==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.9.1.tgz", + "integrity": "sha512-oUNbrdUjHItyCytZQrHxWQ81ebL4xCFLH10sG0poUMgbKWoBnswpICjUBld3PLJ1lF6cCYVUBG7hAdLro0JNvg==", "requires": { "debug": "^3.0.0" }, @@ -5705,13 +5705,12 @@ } }, "registry-auth-token": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.0.tgz", - "integrity": "sha512-7uxS951DeOBOwsv8deX+l7HcjY2VZxaOgHtM6RKzg3HhpE+bJ0O7VbuMJLosC1T5WSFpHm0DuFIbqUl43jHpsA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz", + "integrity": "sha512-9bKS7nTl9+/A1s7tnPeGrUpRcVY+LUh7bfFgzpndALdPfXQBfQV77rQVtqgUV3ti4vc/Ik81Ex8UJDWDQ12zQA==", "dev": true, "requires": { - "rc": "^1.2.8", - "safe-buffer": "^5.0.1" + "rc": "^1.2.8" } }, "registry-url": { @@ -5836,9 +5835,9 @@ } }, "resolve": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.14.2.tgz", - "integrity": "sha512-EjlOBLBO1kxsUxsKjLt7TAECyKW6fOh1VRkykQkKGzcBbjjPIxBqGh0jf7GJ3k/f5mxMqW3htMD3WdTUVtW8HQ==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.0.tgz", + "integrity": "sha512-+hTmAldEGE80U2wJJDC1lebb5jWqvTYAfm3YZ1ckk1gBr0MnCqUKlwK1e+anaFljIl+F5tR5IoZcm4ZDA1zMQw==", "requires": { "path-parse": "^1.0.6" } diff --git a/packages/project/package.json b/packages/project/package.json index 956ab301fb8..db852f3d08d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,7 +105,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.14.2" + "resolve": "^1.15.0" }, "devDependencies": { "ava": "^2.4.0", From 94da83d16426cc2b4314c7e707ed755bb7976156 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 2 Feb 2020 04:32:16 +0000 Subject: [PATCH 0283/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 80 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 42 insertions(+), 42 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a4fa9b20e5c..03d2370d12d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,17 +43,17 @@ } }, "@babel/core": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.3.tgz", - "integrity": "sha512-4XFkf8AwyrEG7Ziu3L2L0Cv+WyY47Tcsp70JFmpftbAA1K7YL/sgE9jh9HyNj08Y/U50ItUchpN0w6HxAoX1rA==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.4.tgz", + "integrity": "sha512-0LiLrB2PwrVI+a2/IEskBopDYSd8BCb3rOvH7D5tzoWd696TBEduBvuLVm4Nx6rltrLZqvI3MCalB2K2aVzQjA==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helpers": "^7.8.3", - "@babel/parser": "^7.8.3", + "@babel/generator": "^7.8.4", + "@babel/helpers": "^7.8.4", + "@babel/parser": "^7.8.4", "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", + "@babel/traverse": "^7.8.4", "@babel/types": "^7.8.3", "convert-source-map": "^1.7.0", "debug": "^4.1.0", @@ -95,9 +95,9 @@ } }, "@babel/generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", - "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.4.tgz", + "integrity": "sha512-PwhclGdRpNAf3IxZb0YVuITPZmmrXz9zf6fH8lT4XbrmfQKr6ryBzhv593P5C6poJRciFCL/eHGW2NuGrgEyxA==", "dev": true, "requires": { "@babel/types": "^7.8.3", @@ -236,13 +236,13 @@ } }, "@babel/helpers": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.3.tgz", - "integrity": "sha512-LmU3q9Pah/XyZU89QvBgGt+BCsTPoQa+73RxAQh8fb8qkDyIfeQnmgs+hvzhTCKTzqOyk7JTkS3MS1S8Mq5yrQ==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.4.tgz", + "integrity": "sha512-VPbe7wcQ4chu4TDQjimHv/5tj73qz88o12EPkO2ValS2QiQS/1F2SsjyIGNnAD0vF/nZS6Cf9i+vW6HIlnaR8w==", "dev": true, "requires": { "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", + "@babel/traverse": "^7.8.4", "@babel/types": "^7.8.3" } }, @@ -258,9 +258,9 @@ } }, "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==" + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.4.tgz", + "integrity": "sha512-0fKu/QqildpXmPVaRBoXOlyBb3MC+J0A66x97qEfLOMkn3u6nfY5esWogQwi/K0BjASYy4DbnsEWnpNL6qT5Mw==" }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.8.3", @@ -354,16 +354,16 @@ } }, "@babel/traverse": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", - "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.4.tgz", + "integrity": "sha512-NGLJPZwnVEyBPLI+bl9y9aSnxMhsKz42so7ApAv9D+b4vAFPpY013FTS9LdKxcABoIYFU52HcYga1pPlx454mg==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", + "@babel/generator": "^7.8.4", "@babel/helper-function-name": "^7.8.3", "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.3", + "@babel/parser": "^7.8.4", "@babel/types": "^7.8.3", "debug": "^4.1.0", "globals": "^11.1.0", @@ -516,9 +516,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.5.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.5.0.tgz", - "integrity": "sha512-Onhn+z72D2O2Pb2ql2xukJ55rglumsVo1H6Fmyi8mlU9SvKdBk/pUSUAiBY/d9bAOF7VVWajX3sths/+g6ZiAQ==" + "version": "13.7.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.0.tgz", + "integrity": "sha512-GnZbirvmqZUzMgkFn70c74OQpTTUcCzlhQliTzYjQMqg+hVKcDnxdL19Ne3UdYzdMA/+W3eb646FWn/ZaT1NfQ==" }, "@ui5/builder": { "version": "1.9.0", @@ -2160,9 +2160,9 @@ } }, "defer-to-connect": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.1.tgz", - "integrity": "sha512-J7thop4u3mRTkYRQ+Vpfwy2G5Ehoy82I14+14W4YMDLKdWloI9gSzRbV30s/NckQGVJtPkWNcW4oMAUigTdqiQ==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", "dev": true }, "define-properties": { @@ -2304,9 +2304,9 @@ } }, "docdash": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.1.1.tgz", - "integrity": "sha512-WQkkr01zL6kcIfq9YCSXtqqevM6NYoTXLdl+Td0OYCEcX0RgsuEMeqHXQaXFt+p6Lo15RIgA5XhLAn7RL+erhA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.2.0.tgz", + "integrity": "sha512-IYZbgYthPTspgqYeciRJNPhSwL51yer7HAwDXhF5p+H7mTDbPvY3PCk/QDjNxdPCpWkaJVFC4t7iCNB/t9E5Kw==", "dev": true }, "doctrine": { @@ -3129,9 +3129,9 @@ "dev": true }, "follow-redirects": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.9.1.tgz", - "integrity": "sha512-oUNbrdUjHItyCytZQrHxWQ81ebL4xCFLH10sG0poUMgbKWoBnswpICjUBld3PLJ1lF6cCYVUBG7hAdLro0JNvg==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.10.0.tgz", + "integrity": "sha512-4eyLK6s6lH32nOvLLwlIOnr9zrL8Sm+OvW4pVTJNoXeGzYIkHVf+pADQi+OJ0E67hiuSLezPVPyBcIZO50TmmQ==", "requires": { "debug": "^3.0.0" }, @@ -5887,9 +5887,9 @@ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" }, "rimraf": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.0.tgz", - "integrity": "sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.1.tgz", + "integrity": "sha512-IQ4ikL8SjBiEDZfk+DFVwqRK8md24RWMEJkdSlgNLkyyAImcjf8SWvU1qFMDOb4igBClbTQ/ugPqXcRwdFTxZw==", "requires": { "glob": "^7.1.3" } @@ -7168,9 +7168,9 @@ "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" }, "xmlcreate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.1.tgz", - "integrity": "sha512-MjGsXhKG8YjTKrDCXseFo3ClbMGvUD4en29H2Cev1dv4P/chlpw6KdYmlCWDkhosBVKRDjM836+3e3pm1cBNJA==" + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.2.tgz", + "integrity": "sha512-15M3q3fRruAiMrkMZwVRkxXOE8oGDJiND/AaBPk5/J5q1LnbS9y7B/d8uvERlUROAly8VsnHIUBwwM59JqH/pA==" }, "xtend": { "version": "4.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index db852f3d08d..5260d8f1c73 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -111,14 +111,14 @@ "ava": "^2.4.0", "coveralls": "^3.0.9", "cross-env": "^6.0.3", - "docdash": "^1.1.1", + "docdash": "^1.2.0", "eslint": "^5.16.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^4.8.4", "jsdoc": "^3.6.3", "nyc": "^14.1.1", "open-cli": "^5.0.0", - "rimraf": "^3.0.0", + "rimraf": "^3.0.1", "sinon": "^7.5.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" From 36e9d7fe0ea14fb024ee9303a95844380fcba063 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 5 Feb 2020 10:18:19 +0000 Subject: [PATCH 0284/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 03d2370d12d..dc806e73980 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -4156,11 +4156,11 @@ } }, "js2xmlparser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.0.tgz", - "integrity": "sha512-WuNgdZOXVmBk5kUPMcTcVUpbGRzLfNkv7+7APq7WiDihpXVKrgxo6wwRpRl9OQeEBgKCVk9mR7RbzrnNWC8oBw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.1.tgz", + "integrity": "sha512-KrPTolcw6RocpYjdC7pL7v62e55q7qOMHvLX1UCLc5AAS8qeJ6nukarEJAF2KL2PZxlbGueEbINqZR2bDe/gUw==", "requires": { - "xmlcreate": "^2.0.0" + "xmlcreate": "^2.0.3" } }, "jsbn": { @@ -7168,9 +7168,9 @@ "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" }, "xmlcreate": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.2.tgz", - "integrity": "sha512-15M3q3fRruAiMrkMZwVRkxXOE8oGDJiND/AaBPk5/J5q1LnbS9y7B/d8uvERlUROAly8VsnHIUBwwM59JqH/pA==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.3.tgz", + "integrity": "sha512-HgS+X6zAztGa9zIK3Y3LXuJes33Lz9x+YyTxgrkIdabu2vqcGOWwdfCpf1hWLRrd553wd4QCDf6BBO6FfdsRiQ==" }, "xtend": { "version": "4.0.2", From 9ce9254a9b86fbec3ac835836c827de82a0940ac Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 9 Feb 2020 04:21:57 +0000 Subject: [PATCH 0285/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index dc806e73980..f4a1558d9ea 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2576,9 +2576,9 @@ "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" }, "escodegen": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.13.0.tgz", - "integrity": "sha512-eYk2dCkxR07DsHA/X2hRBj0CFAZeri/LyDMc0C8JT1Hqi6JnVpMhJ7XFITbb0+yZS3lVkaPL2oCkZ3AVmeVbMw==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.1.tgz", + "integrity": "sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==", "requires": { "esprima": "^4.0.1", "estraverse": "^4.2.0", @@ -5835,9 +5835,9 @@ } }, "resolve": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.0.tgz", - "integrity": "sha512-+hTmAldEGE80U2wJJDC1lebb5jWqvTYAfm3YZ1ckk1gBr0MnCqUKlwK1e+anaFljIl+F5tR5IoZcm4ZDA1zMQw==", + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", + "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", "requires": { "path-parse": "^1.0.6" } diff --git a/packages/project/package.json b/packages/project/package.json index 5260d8f1c73..5d1e3e1e531 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,7 +105,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.15.0" + "resolve": "^1.15.1" }, "devDependencies": { "ava": "^2.4.0", From eed76d1ea952b77ebedcc73d20121411938cfb3a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 16 Feb 2020 04:20:50 +0000 Subject: [PATCH 0286/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 108 ++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 54 insertions(+), 60 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f4a1558d9ea..91a7697e3c3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -516,35 +516,35 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.7.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.0.tgz", - "integrity": "sha512-GnZbirvmqZUzMgkFn70c74OQpTTUcCzlhQliTzYjQMqg+hVKcDnxdL19Ne3UdYzdMA/+W3eb646FWn/ZaT1NfQ==" + "version": "13.7.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.1.tgz", + "integrity": "sha512-Zq8gcQGmn4txQEJeiXo/KiLpon8TzAl0kmKH4zdWctPj05nWwp1ClMdAVEloqrQKfaC48PNLdgN/aVaLqUrluA==" }, "@ui5/builder": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.9.0.tgz", - "integrity": "sha512-JWookHdvFmlGMEGHv8OpE3D0/8lovafWZPpJSUvj27YHqqX/mO0Qxf/KLKxUmrM4GOfLB0feVpwCnYc40HUr2w==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.10.0.tgz", + "integrity": "sha512-PPwnpEzezK5dCRO8YpBUZLRSoH4pMV2b+9ekLek485MOxA731RmGWHMcPTXPawtecT4ijc2WAWi3/a39tpLopg==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", - "escodegen": "^1.12.1", + "escodegen": "^1.14.1", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "^4.3.0", "globby": "^10.0.2", "graceful-fs": "^4.2.3", "jsdoc": "~3.6.3", - "less-openui5": "^0.8.3", + "less-openui5": "^0.8.4", "make-dir": "^3.0.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", - "rimraf": "^3.0.0", + "rimraf": "^3.0.1", "semver": "^6.3.0", "slash": "^3.0.0", - "terser": "^4.6.2", + "terser": "^4.6.3", "xml2js": "^0.4.23", "yazl": "^2.5.1" } @@ -576,9 +576,9 @@ } }, "@ui5/server": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.5.3.tgz", - "integrity": "sha512-UWeGCmZ4B1zcUhYm0qKuvJbKv7hPVEDFwFaGphSXB4tIzklhw3SXYxjY+nm4MAJb4Gc1tPT3U66+vF/QhSP7nQ==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.5.4.tgz", + "integrity": "sha512-RDyTyHGvM6UjUdx22BhohQ98mSh0D9dFVpvxfLCst3eoj9+VjFVpPk/L1JX7lrWoFE9ewmc2c7uONjTNs5aixA==", "requires": { "@ui5/builder": "^1.9.0", "@ui5/fs": "^1.1.2", @@ -591,6 +591,7 @@ "etag": "^1.8.1", "express": "^4.17.1", "fresh": "^0.5.2", + "graceful-fs": "^4.2.3", "make-dir": "^3.0.0", "mime-types": "^2.1.26", "parseurl": "^1.3.3", @@ -2799,9 +2800,9 @@ } }, "esquery": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", - "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.1.0.tgz", + "integrity": "sha512-MxYW9xKmROWF672KqjO75sszsA8Mxhw06YFeS5VHlB98KDHbOSurm3ArsjO60Eaf3QmGMCP1yn+0JQkNLo/97Q==", "dev": true, "requires": { "estraverse": "^4.0.0" @@ -2965,9 +2966,9 @@ "dev": true }, "fast-glob": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.1.1.tgz", - "integrity": "sha512-nTCREpBY8w8r+boyFYAx21iL6faSsQynliPHM4Uf56SbkyohCNxpVPEH9xrF5TXKy+IsjkPUHDKiUkzBVRXn9g==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.0.tgz", + "integrity": "sha512-x0gdwWaaubNqJ2nQV8YDALCZRiCy9zOEHlF7ScpzalxdxMKh78Qc0lcpZ4w2I0LZUfklA/IQPLlPU36YTgUozA==", "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -3465,9 +3466,9 @@ }, "dependencies": { "readable-stream": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.5.0.tgz", - "integrity": "sha512-gSz026xs2LfxBPudDuI41V1lka8cxg64E66SGe78zJlsUofOg/yqwezdIcdfwik6B4h8LFmWPA9ef9X3FiNFLA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -3477,9 +3478,9 @@ } }, "http-cache-semantics": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.0.3.tgz", - "integrity": "sha512-TcIMG3qeVLgDr1TEd2XvHaTnMPwYQUQMIBLy+5pLSDKYFc7UIqj39w8EGzZkaxoLv/l2K8HaI0t5AVA+YYgUew==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-Z2EICWNJou7Tr9Bd2M2UqDJq3A9F2ePG9w3lIpjoyuSyXFP9QbniJVu3XQYytuw5ebmG7dXSXO9PgAjJG8DDKA==", "dev": true }, "http-deceiver": { @@ -4300,9 +4301,9 @@ "dev": true }, "less-openui5": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.3.tgz", - "integrity": "sha512-OPsWCHvICUyJybIeaWFLcAAajZtxd3KTMe5yAazbcxRrh37RCYFMBMaZzHvfcp8M7Ce7oDzVXbh20uKcaaPGWQ==", + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.4.tgz", + "integrity": "sha512-fUBSUUk6r4Kc1neXiaO01LGmHW6uwklnNJN5N8gNbuJAjAEDT5/rijL3uxQxqH9VF4CU3R4wy4PrzOvSZSVDQg==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", @@ -4484,9 +4485,9 @@ } }, "make-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz", - "integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.2.tgz", + "integrity": "sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==", "requires": { "semver": "^6.0.0" } @@ -5729,9 +5730,9 @@ "dev": true }, "regjsparser": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.2.tgz", - "integrity": "sha512-E9ghzUtoLwDekPT0DYCp+c4h+bvuUpe6rRHCTYn6eGoqj1LgKXxT6I0Il4WbjhQkOghzi/V+y03bPKvbllL93Q==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.3.tgz", + "integrity": "sha512-8uZvYbnfAtEm9Ab8NTb3hdLwL4g/LQzEYP7Xs27T96abJCCE2d6r3cPZPQEsLKy0vRSGVNG+/zVGtLr86HQduA==", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -5777,9 +5778,9 @@ } }, "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", "requires": { "aws-sign2": "~0.7.0", "aws4": "^1.8.0", @@ -5788,7 +5789,7 @@ "extend": "~3.0.2", "forever-agent": "~0.6.1", "form-data": "~2.3.2", - "har-validator": "~5.1.0", + "har-validator": "~5.1.3", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", @@ -5798,7 +5799,7 @@ "performance-now": "^2.1.0", "qs": "~6.5.2", "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", + "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" } @@ -5887,9 +5888,9 @@ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" }, "rimraf": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.1.tgz", - "integrity": "sha512-IQ4ikL8SjBiEDZfk+DFVwqRK8md24RWMEJkdSlgNLkyyAImcjf8SWvU1qFMDOb4igBClbTQ/ugPqXcRwdFTxZw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "requires": { "glob": "^7.1.3" } @@ -6221,9 +6222,9 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "readable-stream": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.5.0.tgz", - "integrity": "sha512-gSz026xs2LfxBPudDuI41V1lka8cxg64E66SGe78zJlsUofOg/yqwezdIcdfwik6B4h8LFmWPA9ef9X3FiNFLA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -6718,19 +6719,12 @@ "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" }, "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - } + "psl": "^1.1.28", + "punycode": "^2.1.1" } }, "treeify": { diff --git a/packages/project/package.json b/packages/project/package.json index 5d1e3e1e531..62e2211ae46 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,9 +96,9 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.9.0", + "@ui5/builder": "^1.10.0", "@ui5/logger": "^1.0.2", - "@ui5/server": "^1.5.3", + "@ui5/server": "^1.5.4", "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", @@ -118,7 +118,7 @@ "jsdoc": "^3.6.3", "nyc": "^14.1.1", "open-cli": "^5.0.0", - "rimraf": "^3.0.1", + "rimraf": "^3.0.2", "sinon": "^7.5.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" From e06d267c8408ac69b437bdec20136df6941fea30 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 23 Feb 2020 04:20:29 +0000 Subject: [PATCH 0287/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 53 +++++++++++++++--------------- 1 file changed, 27 insertions(+), 26 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 91a7697e3c3..56e53649f60 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -445,9 +445,9 @@ "dev": true }, "@sinonjs/commons": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.0.tgz", - "integrity": "sha512-qbk9AP+cZUsKdW1GJsBpxPKFmCJ0T8swwzVje3qFd+AkQb74Q/tiuzrdfFg8AD2g5HH/XbE/I8Uc1KYHVYWfhg==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.1.tgz", + "integrity": "sha512-Debi3Baff1Qu1Unc3mjJ96MgpbwTn43S1+9yJ0llWygPwDNu2aaWBD6yc9y/Z8XDRNhx7U+u2UDg2OGQXkclUQ==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -516,9 +516,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.7.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.1.tgz", - "integrity": "sha512-Zq8gcQGmn4txQEJeiXo/KiLpon8TzAl0kmKH4zdWctPj05nWwp1ClMdAVEloqrQKfaC48PNLdgN/aVaLqUrluA==" + "version": "13.7.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.4.tgz", + "integrity": "sha512-oVeL12C6gQS/GAExndigSaLxTrKpQPxewx9bOcwfvJiJge4rr7wNaph4J+ns5hrmIV2as5qxqN8YKthn9qh0jw==" }, "@ui5/builder": { "version": "1.10.0", @@ -624,9 +624,9 @@ "dev": true }, "ajv": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.11.0.tgz", - "integrity": "sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==", + "version": "6.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", + "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -2966,15 +2966,16 @@ "dev": true }, "fast-glob": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.0.tgz", - "integrity": "sha512-x0gdwWaaubNqJ2nQV8YDALCZRiCy9zOEHlF7ScpzalxdxMKh78Qc0lcpZ4w2I0LZUfklA/IQPLlPU36YTgUozA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.2.tgz", + "integrity": "sha512-UDV82o4uQyljznxwMxyVRJgZZt3O5wENYojjzbaGEGZgeOxkLFf+V4cnUD+krzb2F72E18RhamkMZ7AdeggF7A==", "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.0", "merge2": "^1.3.0", - "micromatch": "^4.0.2" + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" } }, "fast-json-stable-stringify": { @@ -2996,9 +2997,9 @@ } }, "figures": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz", - "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, "requires": { "escape-string-regexp": "^1.0.5" @@ -3421,9 +3422,9 @@ "dev": true }, "hasha": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.1.0.tgz", - "integrity": "sha512-OFPDWmzPN1l7atOV1TgBVmNtBxaIysToK6Ve9DK+vT6pYuklw/nPNT+HJbZi0KDcI6vWB+9tgvZ5YD7fA3CXcA==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.0.tgz", + "integrity": "sha512-2W+jKdQbAdSIrggA8Q35Br8qKadTrqCTC8+XZvBWepKDK6m9XkX6Iz1a2yh2KP01kzAR/dpuMeUnocoLYDcskw==", "dev": true, "requires": { "is-stream": "^2.0.0", @@ -4301,15 +4302,15 @@ "dev": true }, "less-openui5": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.4.tgz", - "integrity": "sha512-fUBSUUk6r4Kc1neXiaO01LGmHW6uwklnNJN5N8gNbuJAjAEDT5/rijL3uxQxqH9VF4CU3R4wy4PrzOvSZSVDQg==", + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.5.tgz", + "integrity": "sha512-ESGqzn1iTqcR24YEDMPYPF+I9S/kCXZ9vOjK59R+J1Nyiiu2UF00l6Bp9PWx8NcqQhXRuFlViPZSKraup5AAUA==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", "mime": "^1.6.0", "object-assign": "^4.0.1", - "request": "^2.88.0" + "request": "^2.88.2" } }, "levn": { @@ -6751,9 +6752,9 @@ "dev": true }, "tslib": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", - "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.0.tgz", + "integrity": "sha512-BmndXUtiTn/VDDrJzQE7Mm22Ix3PxgLltW9bSNLoeCY31gnG2OPx0QqJnuc9oMIKioYrz487i6K9o4Pdn0j+Kg==", "dev": true }, "tunnel-agent": { From 0313a94cf6313cd4a2a21fba9a92d0ce75a7148f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 24 Feb 2020 16:00:55 +0000 Subject: [PATCH 0288/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.10.0 to 1.10.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v1.10.1/CHANGELOG.md --- packages/project/package-lock.json | 32 +++++++++++++++++++++--------- packages/project/package.json | 2 +- 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 56e53649f60..f3571f177d3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -521,9 +521,9 @@ "integrity": "sha512-oVeL12C6gQS/GAExndigSaLxTrKpQPxewx9bOcwfvJiJge4rr7wNaph4J+ns5hrmIV2as5qxqN8YKthn9qh0jw==" }, "@ui5/builder": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.10.0.tgz", - "integrity": "sha512-PPwnpEzezK5dCRO8YpBUZLRSoH4pMV2b+9ekLek485MOxA731RmGWHMcPTXPawtecT4ijc2WAWi3/a39tpLopg==", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.10.1.tgz", + "integrity": "sha512-F9L6qoaA81Op+4HWXKbijkSIb9XnW8ucryotscNCj84hnXwpRfDOh8KDL9Jmt4lQyvraYppg+mqpOhxAvsHK2Q==", "requires": { "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", @@ -536,17 +536,31 @@ "globby": "^10.0.2", "graceful-fs": "^4.2.3", "jsdoc": "~3.6.3", - "less-openui5": "^0.8.4", - "make-dir": "^3.0.0", + "less-openui5": "^0.8.6", + "make-dir": "^3.0.2", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", - "rimraf": "^3.0.1", + "rimraf": "^3.0.2", "semver": "^6.3.0", "slash": "^3.0.0", "terser": "^4.6.3", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "less-openui5": { + "version": "0.8.6", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.6.tgz", + "integrity": "sha512-z3htfX9fdNKc9CRjsxO1N88Rnk94FcC7SETB+G0XGyo7PHq13Ai1BP+6OuZklGvNL99R1GsxB+KwApvCLQ5o4g==", + "requires": { + "clone": "^2.1.0", + "css": "^2.2.1", + "mime": "^1.6.0", + "object-assign": "^4.0.1", + "request": "^2.88.2" + } + } } }, "@ui5/fs": { @@ -6636,9 +6650,9 @@ } }, "terser": { - "version": "4.6.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.3.tgz", - "integrity": "sha512-Lw+ieAXmY69d09IIc/yqeBqXpEQIpDGZqT34ui1QWXIUpR2RjbqEkT8X7Lgex19hslSqcWM5iMN2kM11eMsESQ==", + "version": "4.6.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.4.tgz", + "integrity": "sha512-5fqgBPLgVHZ/fVvqRhhUp9YUiGXhFJ9ZkrZWD9vQtFBR4QIGTnbsb+/kKqSqfgp3WnBwGWAFnedGTtmX1YTn0w==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", diff --git a/packages/project/package.json b/packages/project/package.json index 62e2211ae46..1d732416e42 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "url": "git@github.com:SAP/ui5-builder.git" }, "dependencies": { - "@ui5/builder": "^1.10.0", + "@ui5/builder": "^1.10.1", "@ui5/logger": "^1.0.2", "@ui5/server": "^1.5.4", "graceful-fs": "^4.2.3", From d3b34315b5574677be6f9d3b04cd8ce330d710c5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 24 Feb 2020 16:06:39 +0000 Subject: [PATCH 0289/1272] [ui5-project][INTERNAL] Bump @ui5/server from 1.5.4 to 1.6.0 Changelog of this version: https://github.com/SAP/ui5-server/blob/v1.6.0/CHANGELOG.md --- packages/project/package-lock.json | 36 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f3571f177d3..c6eb1a9d11e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -590,11 +590,11 @@ } }, "@ui5/server": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.5.4.tgz", - "integrity": "sha512-RDyTyHGvM6UjUdx22BhohQ98mSh0D9dFVpvxfLCst3eoj9+VjFVpPk/L1JX7lrWoFE9ewmc2c7uONjTNs5aixA==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.6.0.tgz", + "integrity": "sha512-n27IG1TmGzEpb7CZbr6Dssn47SzLcW1D6JOJps9NVTXzFHqX79uT7Ek9BrlV7GPz1pKMf0FQhLaxq1xlum0rHw==", "requires": { - "@ui5/builder": "^1.9.0", + "@ui5/builder": "^1.10.1", "@ui5/fs": "^1.1.2", "@ui5/logger": "^1.0.2", "compression": "^1.7.4", @@ -606,7 +606,7 @@ "express": "^4.17.1", "fresh": "^0.5.2", "graceful-fs": "^4.2.3", - "make-dir": "^3.0.0", + "make-dir": "^3.0.2", "mime-types": "^2.1.26", "parseurl": "^1.3.3", "portscanner": "^2.1.1", @@ -853,9 +853,9 @@ "dev": true }, "async": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/async/-/async-3.1.1.tgz", - "integrity": "sha512-X5Dj8hK1pJNC2Wzo2Rcp9FBVdJMGRR/S7V+lH46s8GVFhtbo5O4Le5GECCF/8PISVdkUA6mMPvgz7qTTD1rf1g==" + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", + "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==" }, "asynckit": { "version": "0.4.0", @@ -3756,9 +3756,9 @@ } }, "ipaddr.js": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", - "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==" + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" }, "irregular-plurals": { "version": "2.0.0", @@ -4316,9 +4316,9 @@ "dev": true }, "less-openui5": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.5.tgz", - "integrity": "sha512-ESGqzn1iTqcR24YEDMPYPF+I9S/kCXZ9vOjK59R+J1Nyiiu2UF00l6Bp9PWx8NcqQhXRuFlViPZSKraup5AAUA==", + "version": "0.8.6", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.6.tgz", + "integrity": "sha512-z3htfX9fdNKc9CRjsxO1N88Rnk94FcC7SETB+G0XGyo7PHq13Ai1BP+6OuZklGvNL99R1GsxB+KwApvCLQ5o4g==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", @@ -5506,12 +5506,12 @@ "dev": true }, "proxy-addr": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", - "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", + "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", "requires": { "forwarded": "~0.1.2", - "ipaddr.js": "1.9.0" + "ipaddr.js": "1.9.1" } }, "pseudomap": { diff --git a/packages/project/package.json b/packages/project/package.json index 1d732416e42..85b12fc7a9d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,7 +98,7 @@ "dependencies": { "@ui5/builder": "^1.10.1", "@ui5/logger": "^1.0.2", - "@ui5/server": "^1.5.4", + "@ui5/server": "^1.6.0", "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", "mock-require": "^3.0.3", From 35d89186597e624403ac0fe1c8ae7079a5732446 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 1 Mar 2020 04:21:19 +0000 Subject: [PATCH 0290/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 170 ++++++++++++++++------------- 1 file changed, 94 insertions(+), 76 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c6eb1a9d11e..a6a7e288f35 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,18 +43,18 @@ } }, "@babel/core": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.4.tgz", - "integrity": "sha512-0LiLrB2PwrVI+a2/IEskBopDYSd8BCb3rOvH7D5tzoWd696TBEduBvuLVm4Nx6rltrLZqvI3MCalB2K2aVzQjA==", + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.6.tgz", + "integrity": "sha512-Sheg7yEJD51YHAvLEV/7Uvw95AeWqYPL3Vk3zGujJKIhJ+8oLw2ALaf3hbucILhKsgSoADOvtKRJuNVdcJkOrg==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.4", + "@babel/generator": "^7.8.6", "@babel/helpers": "^7.8.4", - "@babel/parser": "^7.8.4", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.4", - "@babel/types": "^7.8.3", + "@babel/parser": "^7.8.6", + "@babel/template": "^7.8.6", + "@babel/traverse": "^7.8.6", + "@babel/types": "^7.8.6", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -95,12 +95,12 @@ } }, "@babel/generator": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.4.tgz", - "integrity": "sha512-PwhclGdRpNAf3IxZb0YVuITPZmmrXz9zf6fH8lT4XbrmfQKr6ryBzhv593P5C6poJRciFCL/eHGW2NuGrgEyxA==", + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.6.tgz", + "integrity": "sha512-4bpOR5ZBz+wWcMeVtcf7FbjcFzCp+817z2/gHNncIRcM9MmKzUhtWCYAq27RAfUrAFwb+OCG1s9WEaVxfi6cjg==", "dev": true, "requires": { - "@babel/types": "^7.8.3", + "@babel/types": "^7.8.6", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -124,11 +124,12 @@ } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.3.tgz", - "integrity": "sha512-Gcsm1OHCUr9o9TcJln57xhWHtdXbA2pgQ58S0Lxlks0WMGNXuki4+GLfX0p+L2ZkINUGZvfkz8rzoqJQSthI+Q==", + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.6.tgz", + "integrity": "sha512-bPyujWfsHhV/ztUkwGHz/RPV1T1TDEsSZDsN42JPehndA+p1KKTh3npvTadux0ZhCrytx9tvjpWNowKby3tM6A==", "dev": true, "requires": { + "@babel/helper-annotate-as-pure": "^7.8.3", "@babel/helper-regex": "^7.8.3", "regexpu-core": "^4.6.0" } @@ -153,6 +154,15 @@ "@babel/types": "^7.8.3" } }, + "@babel/helper-member-expression-to-functions": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz", + "integrity": "sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA==", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, "@babel/helper-module-imports": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", @@ -163,19 +173,29 @@ } }, "@babel/helper-module-transforms": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.3.tgz", - "integrity": "sha512-C7NG6B7vfBa/pwCOshpMbOYUmrYQDfCpVL/JCRu0ek8B5p8kue1+BCXpg2vOYs7w5ACB9GTOBYQ5U6NwrMg+3Q==", + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.6.tgz", + "integrity": "sha512-RDnGJSR5EFBJjG3deY0NiL0K9TO8SXxS9n/MPsbPK/s9LbQymuLNtlzvDiNS7IpecuL45cMeLVkA+HfmlrnkRg==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.8.3", + "@babel/helper-replace-supers": "^7.8.6", "@babel/helper-simple-access": "^7.8.3", "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3", + "@babel/template": "^7.8.6", + "@babel/types": "^7.8.6", "lodash": "^4.17.13" } }, + "@babel/helper-optimise-call-expression": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz", + "integrity": "sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ==", + "dev": true, + "requires": { + "@babel/types": "^7.8.3" + } + }, "@babel/helper-plugin-utils": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", @@ -204,6 +224,18 @@ "@babel/types": "^7.8.3" } }, + "@babel/helper-replace-supers": { + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz", + "integrity": "sha512-PeMArdA4Sv/Wf4zXwBKPqVj7n9UF/xg6slNRtZW84FM7JpE1CbG8B612FyM4cxrf4fMAMGO0kR7voy1ForHHFA==", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.8.3", + "@babel/helper-optimise-call-expression": "^7.8.3", + "@babel/traverse": "^7.8.6", + "@babel/types": "^7.8.6" + } + }, "@babel/helper-simple-access": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz", @@ -258,9 +290,9 @@ } }, "@babel/parser": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.4.tgz", - "integrity": "sha512-0fKu/QqildpXmPVaRBoXOlyBb3MC+J0A66x97qEfLOMkn3u6nfY5esWogQwi/K0BjASYy4DbnsEWnpNL6qT5Mw==" + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.6.tgz", + "integrity": "sha512-trGNYSfwq5s0SgM1BMEB8hX3NDmO7EP2wsDGDexiaKMB92BaRpS+qZfpkMqUBhcsOTBwNy9B/jieo4ad/t/z2g==" }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.8.3", @@ -343,28 +375,28 @@ } }, "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", + "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/parser": "^7.8.6", + "@babel/types": "^7.8.6" } }, "@babel/traverse": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.4.tgz", - "integrity": "sha512-NGLJPZwnVEyBPLI+bl9y9aSnxMhsKz42so7ApAv9D+b4vAFPpY013FTS9LdKxcABoIYFU52HcYga1pPlx454mg==", + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.6.tgz", + "integrity": "sha512-2B8l0db/DPi8iinITKuo7cbPznLCEk0kCxDoB9/N6gGNg/gxOXiR/IcymAFPiBwk5w6TtQ27w4wpElgp9btR9A==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.4", + "@babel/generator": "^7.8.6", "@babel/helper-function-name": "^7.8.3", "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.4", - "@babel/types": "^7.8.3", + "@babel/parser": "^7.8.6", + "@babel/types": "^7.8.6", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -388,9 +420,9 @@ } }, "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.6.tgz", + "integrity": "sha512-wqz7pgWMIrht3gquyEFPVXeXCti72Rm8ep9b5tQKz9Yg9LzJA3HxosF1SB3Kc81KD1A3XBkkVYtJvCKS2Z/QrA==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -516,9 +548,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.7.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.4.tgz", - "integrity": "sha512-oVeL12C6gQS/GAExndigSaLxTrKpQPxewx9bOcwfvJiJge4rr7wNaph4J+ns5hrmIV2as5qxqN8YKthn9qh0jw==" + "version": "13.7.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.7.tgz", + "integrity": "sha512-Uo4chgKbnPNlxQwoFmYIwctkQVkMMmsAoGGU4JKwLuvBefF0pCq4FybNSnfkfRCpC7ZW7kttcC/TrRtAJsvGtg==" }, "@ui5/builder": { "version": "1.10.1", @@ -547,20 +579,6 @@ "terser": "^4.6.3", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "less-openui5": { - "version": "0.8.6", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.6.tgz", - "integrity": "sha512-z3htfX9fdNKc9CRjsxO1N88Rnk94FcC7SETB+G0XGyo7PHq13Ai1BP+6OuZklGvNL99R1GsxB+KwApvCLQ5o4g==", - "requires": { - "clone": "^2.1.0", - "css": "^2.2.1", - "mime": "^1.6.0", - "object-assign": "^4.0.1", - "request": "^2.88.2" - } - } } }, "@ui5/fs": { @@ -632,9 +650,9 @@ "dev": true }, "acorn-jsx": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz", - "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", + "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", "dev": true }, "ajv": { @@ -3003,11 +3021,11 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "fastq": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.6.0.tgz", - "integrity": "sha512-jmxqQ3Z/nXoeyDmWAzF9kH1aGZSis6e/SbfPmJpUnyZ0ogr6iscHQaml4wsEepEWSdtmpy+eVXmCRIMpxaXqOA==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.6.1.tgz", + "integrity": "sha512-mpIH5sKYueh3YyeJwqtVo8sORi0CgtmkVbK6kZStpQlZBYQuTzG2CZ7idSiJuA7bY0SFCWUc5WIs+oYumGCQNw==", "requires": { - "reusify": "^1.0.0" + "reusify": "^1.0.4" } }, "figures": { @@ -3446,9 +3464,9 @@ } }, "hosted-git-info": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", - "integrity": "sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg==" + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" }, "hpack.js": { "version": "2.1.6", @@ -4278,9 +4296,9 @@ } }, "just-extend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz", - "integrity": "sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", + "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==", "dev": true }, "keyv": { @@ -5911,9 +5929,9 @@ } }, "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", + "integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==", "dev": true, "requires": { "is-promise": "^2.1.0" @@ -6766,9 +6784,9 @@ "dev": true }, "tslib": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.0.tgz", - "integrity": "sha512-BmndXUtiTn/VDDrJzQE7Mm22Ix3PxgLltW9bSNLoeCY31gnG2OPx0QqJnuc9oMIKioYrz487i6K9o4Pdn0j+Kg==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", + "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", "dev": true }, "tunnel-agent": { @@ -7145,9 +7163,9 @@ } }, "write-file-atomic": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.1.tgz", - "integrity": "sha512-JPStrIyyVJ6oCSz/691fAjFtefZ6q+fP6tm+OS4Qw6o+TGQxNp1ziY2PgS+X/m0V8OWhZiO/m4xSj+Pr4RrZvw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", "dev": true, "requires": { "imurmurhash": "^0.1.4", From bc9881889184844f13df363296e5a21498f4ea3f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 8 Mar 2020 04:20:36 +0000 Subject: [PATCH 0291/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 72 +++++++++++++++++------------- 1 file changed, 40 insertions(+), 32 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a6a7e288f35..6cda75756d1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,18 +43,18 @@ } }, "@babel/core": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.6.tgz", - "integrity": "sha512-Sheg7yEJD51YHAvLEV/7Uvw95AeWqYPL3Vk3zGujJKIhJ+8oLw2ALaf3hbucILhKsgSoADOvtKRJuNVdcJkOrg==", + "version": "7.8.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.7.tgz", + "integrity": "sha512-rBlqF3Yko9cynC5CCFy6+K/w2N+Sq/ff2BPy+Krp7rHlABIr5epbA7OxVeKoMHB39LZOp1UY5SuLjy6uWi35yA==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.6", + "@babel/generator": "^7.8.7", "@babel/helpers": "^7.8.4", - "@babel/parser": "^7.8.6", + "@babel/parser": "^7.8.7", "@babel/template": "^7.8.6", "@babel/traverse": "^7.8.6", - "@babel/types": "^7.8.6", + "@babel/types": "^7.8.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -95,12 +95,12 @@ } }, "@babel/generator": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.6.tgz", - "integrity": "sha512-4bpOR5ZBz+wWcMeVtcf7FbjcFzCp+817z2/gHNncIRcM9MmKzUhtWCYAq27RAfUrAFwb+OCG1s9WEaVxfi6cjg==", + "version": "7.8.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.7.tgz", + "integrity": "sha512-DQwjiKJqH4C3qGiyQCAExJHoZssn49JTMJgZ8SANGgVFdkupcUhLOdkAeoC6kmHZCPfoDG5M0b6cFlSN5wW7Ew==", "dev": true, "requires": { - "@babel/types": "^7.8.6", + "@babel/types": "^7.8.7", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -290,9 +290,9 @@ } }, "@babel/parser": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.6.tgz", - "integrity": "sha512-trGNYSfwq5s0SgM1BMEB8hX3NDmO7EP2wsDGDexiaKMB92BaRpS+qZfpkMqUBhcsOTBwNy9B/jieo4ad/t/z2g==" + "version": "7.8.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.7.tgz", + "integrity": "sha512-9JWls8WilDXFGxs0phaXAZgpxTZhSk/yOYH2hTHC0X1yC7Z78IJfvR1vJ+rmJKq3I35td2XzXzN6ZLYlna+r/A==" }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.8.3", @@ -420,9 +420,9 @@ } }, "@babel/types": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.6.tgz", - "integrity": "sha512-wqz7pgWMIrht3gquyEFPVXeXCti72Rm8ep9b5tQKz9Yg9LzJA3HxosF1SB3Kc81KD1A3XBkkVYtJvCKS2Z/QrA==", + "version": "7.8.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.7.tgz", + "integrity": "sha512-k2TreEHxFA4CjGkL+GYjRyx35W0Mr7DP5+9q6WMkyKXB+904bYmG40syjMFV0oLlhhFCwWl0vA0DyzTDkwAiJw==", "dev": true, "requires": { "esutils": "^2.0.2", @@ -548,9 +548,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.7.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.7.tgz", - "integrity": "sha512-Uo4chgKbnPNlxQwoFmYIwctkQVkMMmsAoGGU4JKwLuvBefF0pCq4FybNSnfkfRCpC7ZW7kttcC/TrRtAJsvGtg==" + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.0.tgz", + "integrity": "sha512-0ARSQootUG1RljH2HncpsY2TJBfGQIKOOi7kxzUY6z54ePu/ZD+wJA8zI2Q6v8rol2qpG/rvqsReco8zNMPvhQ==" }, "@ui5/builder": { "version": "1.10.1", @@ -716,12 +716,12 @@ } }, "ansi-escapes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz", - "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", "dev": true, "requires": { - "type-fest": "^0.8.1" + "type-fest": "^0.11.0" } }, "ansi-regex": { @@ -3461,6 +3461,14 @@ "requires": { "is-stream": "^2.0.0", "type-fest": "^0.8.0" + }, + "dependencies": { + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + } } }, "hosted-git-info": { @@ -3511,9 +3519,9 @@ } }, "http-cache-semantics": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", - "integrity": "sha512-Z2EICWNJou7Tr9Bd2M2UqDJq3A9F2ePG9w3lIpjoyuSyXFP9QbniJVu3XQYytuw5ebmG7dXSXO9PgAjJG8DDKA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", "dev": true }, "http-deceiver": { @@ -6668,9 +6676,9 @@ } }, "terser": { - "version": "4.6.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.4.tgz", - "integrity": "sha512-5fqgBPLgVHZ/fVvqRhhUp9YUiGXhFJ9ZkrZWD9vQtFBR4QIGTnbsb+/kKqSqfgp3WnBwGWAFnedGTtmX1YTn0w==", + "version": "4.6.6", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.6.tgz", + "integrity": "sha512-4lYPyeNmstjIIESr/ysHg2vUPRGf2tzF9z2yYwnowXVuVzLEamPN1Gfrz7f8I9uEPuHcbFlW4PLIAsJoxXyJ1g==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -6822,9 +6830,9 @@ "dev": true }, "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", "dev": true }, "type-is": { From 7ebb65e4af36fd254e91c964f790006e7bad7e41 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 9 Mar 2020 12:32:56 +0100 Subject: [PATCH 0292/1272] [ui5-project][FEATURE] projectPreprocessor: Log warning when using a deprecated or restricted dependency (#268) Projects in the tree that are not the root project may trigger a warning log if they configure any of the following metadata flags: - deprecated: true - sapInternal: true The latter may not trigger a warning if its parent project defines a metadata flag "allowSapInternal: true". --- packages/project/lib/projectPreprocessor.js | 33 +++- packages/project/test/lib/extensions.js | 12 +- .../project/test/lib/projectPreprocessor.js | 160 +++++++++++++++++- 3 files changed, 185 insertions(+), 20 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 82625e97997..5a59f85ac89 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -7,7 +7,8 @@ const parseYaml = require("js-yaml").safeLoadAll; const typeRepository = require("@ui5/builder").types.typeRepository; class ProjectPreprocessor { - constructor() { + constructor({tree}) { + this.tree = tree; this.processedProjects = {}; this.configShims = {}; this.collections = {}; @@ -19,9 +20,9 @@ class ProjectPreprocessor { - Replace duplicate projects further away from the root with those closer to the root - Add configuration to projects */ - async processTree(tree) { + async processTree() { const queue = [{ - projects: [tree], + projects: [this.tree], parent: null, level: 0 }]; @@ -65,7 +66,8 @@ class ProjectPreprocessor { // Do a dependency lookahead to apply any extensions that might affect this project await this.dependencyLookahead(project, project.dependencies); } else { - // When using the static translator for instance dependencies is not defined and will fail later access calls to it + // When using the static translator for instance, dependencies is not defined and will + // fail later access calls to it project.dependencies = []; } @@ -81,6 +83,7 @@ class ProjectPreprocessor { this.applyShims(project); if (this.isConfigValid(project)) { await this.applyType(project); + this.checkProjectMetadata(parent, project); queue.push({ // copy array, so that the queue is stable while ignored project dependencies are removed projects: [...project.dependencies], @@ -88,7 +91,7 @@ class ProjectPreprocessor { level: level + 1 }); } else { - if (project === tree) { + if (project === this.tree) { throw new Error(`Failed to configure root project "${project.id}". Please check verbose log for details.`); } // No config available @@ -110,7 +113,7 @@ class ProjectPreprocessor { const timeDiff = process.hrtime(startTime); log.verbose(`Processed ${Object.keys(this.processedProjects).length} projects in ${prettyHrtime(timeDiff)}`); } - return tree; + return this.tree; }); } @@ -322,6 +325,20 @@ class ProjectPreprocessor { await type.format(project); } + checkProjectMetadata(parent, project) { + if (parent && project.metadata.deprecated) { + // Do not warn for deprecated root project + log.warn(`Dependency ${project.metadata.name} is deprecated and should not be used for new projects!`); + } + + if (parent && project.metadata.sapInternal && !parent.metadata.allowSapInternal) { + // Do not warn for sapInternal root project + log.warn(`Dependency ${project.metadata.name} is restricted for use by SAP internal projects only! ` + + `If the project ${parent.metadata.name} is an SAP internal project, add the attribute ` + + `"allowSapInternal: true" to its metadata configuration`); + } + } + async applyExtension(extension) { if (!extension.metadata || !extension.metadata.name) { throw new Error(`metadata.name configuration is missing for extension ${extension.id}`); @@ -534,7 +551,7 @@ module.exports = { * @returns {Promise} Promise resolving with the dependency tree and enriched project configuration */ processTree: function(tree) { - return new ProjectPreprocessor().processTree(tree); + return new ProjectPreprocessor({tree}).processTree(); }, - ProjectPreprocessor + _ProjectPreprocessor: ProjectPreprocessor }; diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 7138cbd45ea..a1c2835054d 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -2,7 +2,7 @@ const test = require("ava"); const path = require("path"); const sinon = require("sinon"); const projectPreprocessor = require("../..").projectPreprocessor; -const Preprocessor = require("../..").projectPreprocessor.ProjectPreprocessor; +const Preprocessor = require("../..").projectPreprocessor._ProjectPreprocessor; const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); const legacyLibraryAPath = path.join(__dirname, "..", "fixtures", "legacy.library.a"); const legacyLibraryBPath = path.join(__dirname, "..", "fixtures", "legacy.library.b"); @@ -673,7 +673,7 @@ test("specVersion: Missing version", async (t) => { }, shims: {} }; - const preprocessor = new Preprocessor(); + const preprocessor = new Preprocessor({}); await t.throwsAsync(preprocessor.applyExtension(extension), "No specification version defined for extension shims.a", "Rejected with error"); @@ -693,7 +693,7 @@ test("specVersion: Extension with invalid version", async (t) => { }, shims: {} }; - const preprocessor = new Preprocessor(); + const preprocessor = new Preprocessor({}); await t.throwsAsync(preprocessor.applyExtension(extension), "Unsupported specification version 0.9 defined for extension shims.a. " + "Your UI5 CLI installation might be outdated. For details see " + @@ -715,7 +715,7 @@ test("specVersion: Extension with valid version 0.1", async (t) => { }, shims: {} }; - const preprocessor = new Preprocessor(); + const preprocessor = new Preprocessor({}); const handleShimStub = sinon.stub(preprocessor, "handleShim"); await preprocessor.applyExtension(extension); t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "0.1", "Correct spec version"); @@ -735,7 +735,7 @@ test("specVersion: Extension with valid version 1.0", async (t) => { }, shims: {} }; - const preprocessor = new Preprocessor(); + const preprocessor = new Preprocessor({}); const handleShimStub = sinon.stub(preprocessor, "handleShim"); await preprocessor.applyExtension(extension); t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "1.0", "Correct spec version"); @@ -755,7 +755,7 @@ test("specVersion: Extension with valid version 1.1", async (t) => { }, shims: {} }; - const preprocessor = new Preprocessor(); + const preprocessor = new Preprocessor({}); const handleShimStub = sinon.stub(preprocessor, "handleShim"); await preprocessor.applyExtension(extension); t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "1.1", "Correct spec version"); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index d88b8e20fdb..35c88cabb76 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1,6 +1,8 @@ const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); const path = require("path"); -const projectPreprocessor = require("../..").projectPreprocessor; +const projectPreprocessor = require("../../lib/projectPreprocessor"); const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); const applicationBPath = path.join(__dirname, "..", "fixtures", "application.b"); const applicationCPath = path.join(__dirname, "..", "fixtures", "application.c"); @@ -11,6 +13,11 @@ const libraryDPath = path.join(__dirname, "..", "fixtures", "library.d"); const cycleDepsBasePath = path.join(__dirname, "..", "fixtures", "cyclic-deps", "node_modules"); const pathToInvalidModule = path.join(__dirname, "..", "fixtures", "invalidModule"); +test.afterEach.always((t) => { + mock.stopAll(); + sinon.restore(); +}); + test("Project with inline configuration", (t) => { const tree = { id: "application.a", @@ -1651,7 +1658,7 @@ test("specVersion: Project with valid version 1.1", async (t) => { }); test("isBeingProcessed: Is not being processed", (t) => { - const preprocessor = new projectPreprocessor.ProjectPreprocessor(); + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); preprocessor.processedProjects = {}; @@ -1668,7 +1675,7 @@ test("isBeingProcessed: Is not being processed", (t) => { }); test("isBeingProcessed: Is being processed", (t) => { - const preprocessor = new projectPreprocessor.ProjectPreprocessor(); + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); const alreadyProcessedProject = { project: { @@ -1697,7 +1704,7 @@ test("isBeingProcessed: Is being processed", (t) => { }); test("isBeingProcessed: Processed project is ignored", (t) => { - const preprocessor = new projectPreprocessor.ProjectPreprocessor(); + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); const alreadyProcessedProject = { project: { @@ -1725,7 +1732,7 @@ test("isBeingProcessed: Processed project is ignored", (t) => { }); test("isBeingProcessed: Processed project is ignored but already removed from parent", (t) => { - const preprocessor = new projectPreprocessor.ProjectPreprocessor(); + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); const alreadyProcessedProject = { project: { @@ -1758,7 +1765,7 @@ test("isBeingProcessed: Processed project is ignored but already removed from pa }); test("isBeingProcessed: Deduped project is being ignored", (t) => { - const preprocessor = new projectPreprocessor.ProjectPreprocessor(); + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); preprocessor.processedProjects = {}; @@ -1770,3 +1777,144 @@ test("isBeingProcessed: Deduped project is being ignored", (t) => { const res = preprocessor.isBeingProcessed(parent, project); t.deepEqual(res, true, "Project is being ignored"); }); + + +test.serial("applyType", async (t) => { + const formatStub = sinon.stub(); + const getTypeStub = sinon.stub(require("@ui5/builder").types.typeRepository, "getType") + .returns({ + format: formatStub + }); + + const project = { + type: "pony", + metadata: {} + }; + + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + await preprocessor.applyType(project); + + t.is(getTypeStub.callCount, 1, "getType got called once"); + t.deepEqual(getTypeStub.getCall(0).args[0], "pony", "getType got called with correct type"); + + t.is(formatStub.callCount, 1, "format got called once"); + t.is(formatStub.getCall(0).args[0], project, "format got called with correct project"); +}); + +test.serial("checkProjectMetadata: Warning logged for deprecated dependencies", async (t) => { + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("pony"); + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + const logWarnSpy = sinon.spy(loggerInstance, "warn"); + + // Re-require tested module + const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); + + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + + const project1 = { + metadata: { + name: "root.project", + deprecated: true + } + }; + + // no warning should be logged for root level project + await preprocessor.checkProjectMetadata(null, project1); + + const project2 = { + _level: 1, + metadata: { + name: "my.project", + deprecated: true + } + }; + + // one warning should be logged for deprecated dependency + await preprocessor.checkProjectMetadata(project1, project2); + + t.is(logWarnSpy.callCount, 1, "One warning got logged"); + t.deepEqual(logWarnSpy.getCall(0).args[0], + "Dependency my.project is deprecated and should not be used for new projects!", + "Logged expected warning message"); +}); + +test.serial("checkProjectMetadata: Warning logged for SAP internal dependencies", async (t) => { + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("pony"); + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + const logWarnSpy = sinon.spy(loggerInstance, "warn"); + + // Re-require tested module + const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); + + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + + const project1 = { + metadata: { + name: "root.project", + sapInternal: true + } + }; + + // no warning should be logged for root level project + await preprocessor.checkProjectMetadata(null, project1); + + const project2 = { + _level: 1, + metadata: { + name: "my.project", + sapInternal: true + } + }; + + // one warning should be logged for internal dependency + await preprocessor.checkProjectMetadata(project1, project2); + + t.is(logWarnSpy.callCount, 1, "One warning got logged"); + t.deepEqual(logWarnSpy.getCall(0).args[0], + `Dependency my.project is restricted for use by SAP internal projects only! ` + + `If the project root.project is an SAP internal project, add the attribute ` + + `"allowSapInternal: true" to its metadata configuration`, + "Logged expected warning message"); +}); + +test.serial("checkProjectMetadata: No warning logged for allowed SAP internal libraries", async (t) => { + sinon.stub(require("@ui5/builder").types.typeRepository, "getType") + .returns({format: () => {}}); + + // Spying logger of processors/bootstrapHtmlTransformer + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("pony"); + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + const logWarnSpy = sinon.spy(loggerInstance, "warn"); + + // Re-require tested module + const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); + + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + + const parent = { + metadata: { + name: "parent.project", + allowSapInternal: true // parent project allows sap internal project use + } + }; + + const project = { + metadata: { + name: "my.project", + sapInternal: true + } + }; + + await preprocessor.checkProjectMetadata(parent, project); + + t.is(logWarnSpy.callCount, 0, "No warning got logged"); +}); From f32c9f245bac9b55b2585a0cc24fe551dec40518 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sun, 8 Mar 2020 06:13:21 +0000 Subject: [PATCH 0293/1272] [ui5-project]Bump cross-env from 6.0.3 to 7.0.2 Bumps [cross-env](https://github.com/kentcdodds/cross-env) from 6.0.3 to 7.0.2. - [Release notes](https://github.com/kentcdodds/cross-env/releases) - [Changelog](https://github.com/kentcdodds/cross-env/blob/master/CHANGELOG.md) - [Commits](https://github.com/kentcdodds/cross-env/compare/v6.0.3...v7.0.2) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6cda75756d1..3a834e3be67 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1965,12 +1965,12 @@ } }, "cross-env": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-6.0.3.tgz", - "integrity": "sha512-+KqxF6LCvfhWvADcDPqo64yVIB31gv/jQulX2NGzKS/g3GEVz6/pt4wjHFtFWsHMddebWD/sDthJemzM4MaAag==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.2.tgz", + "integrity": "sha512-KZP/bMEOJEDCkDQAyRhu3RL2ZO/SUVrxQVI0G3YEQ+OLbRA3c6zgixe8Mq8a/z7+HKlNEjo8oiLUs8iRijY2Rw==", "dev": true, "requires": { - "cross-spawn": "^7.0.0" + "cross-spawn": "^7.0.1" }, "dependencies": { "cross-spawn": { diff --git a/packages/project/package.json b/packages/project/package.json index 85b12fc7a9d..47f31debe57 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -110,7 +110,7 @@ "devDependencies": { "ava": "^2.4.0", "coveralls": "^3.0.9", - "cross-env": "^6.0.3", + "cross-env": "^7.0.2", "docdash": "^1.2.0", "eslint": "^5.16.0", "eslint-config-google": "^0.14.0", From 2702a609b7b251841e075d53710dcabe24c2f86f Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sun, 23 Feb 2020 04:22:49 +0000 Subject: [PATCH 0294/1272] [ui5-project]Bump sinon from 7.5.0 to 9.0.0 Bumps [sinon](https://github.com/sinonjs/sinon) from 7.5.0 to 9.0.0. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md) - [Commits](https://github.com/sinonjs/sinon/compare/v7.5.0...v9.0.0) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 109 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 48 insertions(+), 63 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3a834e3be67..252bd9de56f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -485,25 +485,35 @@ "type-detect": "4.0.8" } }, + "@sinonjs/fake-timers": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.0.tgz", + "integrity": "sha512-atR1J/jRXvQAb47gfzSK8zavXy7BcpnYq21ALon0U99etu99vsir0trzIO3wpeLtW+LLVY6X7EkfVTbjGSH8Ww==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, "@sinonjs/formatio": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", - "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-5.0.1.tgz", + "integrity": "sha512-KaiQ5pBf1MpS09MuA0kp6KBQt2JUOQycqVG1NZXvzeaXe5LGFqAKueIS0bw4w0P9r7KuBSVdUk5QjXsUdu2CxQ==", "dev": true, "requires": { "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" + "@sinonjs/samsam": "^5.0.2" } }, "@sinonjs/samsam": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", - "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.0.2.tgz", + "integrity": "sha512-p3yrEVB5F/1wI+835n+X8llOGRgV8+jw5BHQ/cJoLBUXXZ5U8Tr5ApwPc4L4av/vjla48kVPoN0t6dykQm+Rvg==", "dev": true, "requires": { - "@sinonjs/commons": "^1.3.0", - "array-from": "^2.1.1", - "lodash": "^4.17.15" + "@sinonjs/commons": "^1.6.0", + "@sinonjs/formatio": "^5.0.0", + "lodash.get": "^4.4.2", + "type-detect": "^4.0.8" } }, "@sinonjs/text-encoding": { @@ -828,12 +838,6 @@ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "dev": true - }, "array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", @@ -2323,9 +2327,9 @@ } }, "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", "dev": true }, "dir-glob": { @@ -4437,6 +4441,12 @@ "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, "lodash.isfinite": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", @@ -4493,12 +4503,6 @@ "chalk": "^2.0.1" } }, - "lolex": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", - "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", - "dev": true - }, "loud-rejection": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-2.2.0.tgz", @@ -4833,15 +4837,16 @@ "dev": true }, "nise": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", - "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/nise/-/nise-4.0.2.tgz", + "integrity": "sha512-ALDnm0pTTyeGdbg5FCpWGd58Nmp3qO8d8x+dU2Fw8lApeJTEBSjkBZZM4S8t6GpKh+czxkfM/TKxpRMroZzwOg==", "dev": true, "requires": { - "@sinonjs/formatio": "^3.2.1", + "@sinonjs/commons": "^1.7.0", + "@sinonjs/fake-timers": "^6.0.0", + "@sinonjs/formatio": "^5.0.1", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", - "lolex": "^5.0.1", "path-to-regexp": "^1.7.0" }, "dependencies": { @@ -4851,15 +4856,6 @@ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", "dev": true }, - "lolex": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", - "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, "path-to-regexp": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", @@ -6076,29 +6072,18 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, "sinon": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", - "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.4.0", - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.3.3", - "diff": "^3.5.0", - "lolex": "^4.2.0", - "nise": "^1.5.2", - "supports-color": "^5.5.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.0.0.tgz", + "integrity": "sha512-c4bREcvuK5VuEGyMW/Oim9I3Rq49Vzb0aMdxouFaA44QCFpilc5LJOugrX+mkrvikbqCimxuK+4cnHVNnLR41g==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0", + "@sinonjs/fake-timers": "^6.0.0", + "@sinonjs/formatio": "^5.0.0", + "@sinonjs/samsam": "^5.0.1", + "diff": "^4.0.2", + "nise": "^4.0.1", + "supports-color": "^7.1.0" } }, "slash": { diff --git a/packages/project/package.json b/packages/project/package.json index 47f31debe57..0fe6da2eeff 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,7 +119,7 @@ "nyc": "^14.1.1", "open-cli": "^5.0.0", "rimraf": "^3.0.2", - "sinon": "^7.5.0", + "sinon": "^9.0.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From a8574398823ff22bbbc846ee114422e43f1bcfa8 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 10 Mar 2020 11:49:50 +0000 Subject: [PATCH 0295/1272] [ui5-project]Bump nyc from 14.1.1 to 15.0.0 Bumps [nyc](https://github.com/istanbuljs/nyc) from 14.1.1 to 15.0.0. - [Release notes](https://github.com/istanbuljs/nyc/releases) - [Changelog](https://github.com/istanbuljs/nyc/blob/master/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/nyc/compare/v14.1.1...v15.0.0) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 892 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 441 insertions(+), 453 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 252bd9de56f..185c6468c0e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -447,6 +447,66 @@ } } }, + "@istanbuljs/load-nyc-config": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz", + "integrity": "sha512-ZR0rq/f/E4f4XcgnDvtMWXCUJpi8eO0rssVhmztsZqLIEFA9UUP9zmpE0VxlM+kv/E1ul2I876Fwil2ayptDVg==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + } + } + }, + "@istanbuljs/schema": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", + "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", + "dev": true + }, "@nodelib/fs.scandir": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", @@ -665,6 +725,16 @@ "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", "dev": true }, + "aggregate-error": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", + "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, "ajv": { "version": "6.12.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", @@ -785,12 +855,12 @@ } }, "append-transform": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", - "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", + "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", "dev": true, "requires": { - "default-require-extensions": "^2.0.0" + "default-require-extensions": "^3.0.0" } }, "aproba": { @@ -1273,77 +1343,15 @@ } }, "caching-transform": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", - "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", + "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", "dev": true, "requires": { - "hasha": "^3.0.0", - "make-dir": "^2.0.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.4.2" - }, - "dependencies": { - "hasha": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", - "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", - "dev": true, - "requires": { - "is-stream": "^1.0.1" - } - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "package-hash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", - "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^3.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", - "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - } + "hasha": "^5.0.0", + "make-dir": "^3.0.0", + "package-hash": "^4.0.0", + "write-file-atomic": "^3.0.0" } }, "call-matcher": { @@ -1592,52 +1600,46 @@ "dev": true }, "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", "dev": true, "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" } } } @@ -1931,43 +1933,6 @@ } } }, - "cp-file": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", - "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "make-dir": "^2.0.0", - "nested-error-stacks": "^2.0.0", - "pify": "^4.0.1", - "safe-buffer": "^5.0.1" - }, - "dependencies": { - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, "cross-env": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.2.tgz", @@ -2171,12 +2136,20 @@ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" }, "default-require-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz", + "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==", "dev": true, "requires": { - "strip-bom": "^3.0.0" + "strip-bom": "^4.0.0" + }, + "dependencies": { + "strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true + } } }, "defaults": { @@ -3087,47 +3060,14 @@ } }, "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", + "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", "dev": true, "requires": { "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - }, - "dependencies": { - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" } }, "find-up": { @@ -3190,23 +3130,54 @@ } }, "foreground-child": { - "version": "1.5.6", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", - "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", "dev": true, "requires": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" }, "dependencies": { "cross-spawn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", - "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz", + "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", "dev": true, "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" } } } @@ -3236,6 +3207,12 @@ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" }, + "fromentries": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.2.0.tgz", + "integrity": "sha512-33X7H/wdfO99GdRLLgkjUrD4geAFdq/Uv0kl3HD4da6HDixd2GUg8Mw7dahLCV9r/EARkmtYBB6Tch4EEokFTQ==", + "dev": true + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -4002,6 +3979,12 @@ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", "dev": true }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", @@ -4037,109 +4020,131 @@ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", "dev": true }, "istanbul-lib-hook": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", - "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", + "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", "dev": true, "requires": { - "append-transform": "^1.0.0" + "append-transform": "^2.0.0" } }, "istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.1.tgz", + "integrity": "sha512-imIchxnodll7pvQBYOqUu88EufLCU56LMeFPZZM/fJZ1irYcYdqroaV+ACK1Ila8ls09iEYArp+nqyC6lW1Vfg==", "dev": true, "requires": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" + "@babel/core": "^7.7.5", + "@babel/parser": "^7.7.5", + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" } }, - "istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "istanbul-lib-processinfo": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.2.tgz", + "integrity": "sha512-kOwpa7z9hme+IBPZMzQ5vdQj8srYgAtaRqeI48NGmAQ+/5yKiHLV0QbYqQpxsdEF0+w14SoB8YbnHKcXE2KnYw==", "dev": true, "requires": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" + "archy": "^1.0.0", + "cross-spawn": "^7.0.0", + "istanbul-lib-coverage": "^3.0.0-alpha.1", + "make-dir": "^3.0.0", + "p-map": "^3.0.0", + "rimraf": "^3.0.0", + "uuid": "^3.3.3" }, "dependencies": { - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "cross-spawn": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz", + "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", "dev": true, "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" } }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "isexe": "^2.0.0" } } } }, + "istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + } + }, "istanbul-lib-source-maps": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", - "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", + "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", "dev": true, "requires": { "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "rimraf": "^2.6.3", + "istanbul-lib-coverage": "^3.0.0", "source-map": "^0.6.1" }, "dependencies": { "debug": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" + "ms": "^2.1.1" } }, "ms": { @@ -4147,37 +4152,17 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true } } }, "istanbul-reports": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", - "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.0.tgz", + "integrity": "sha512-2osTcC8zcOSUkImzN2EWQta3Vdi4WjjKw99P2yWx5mLnigAM0Rd5uYFn1cf2i/Ois45GkNjaoTqc5CxgMSX80A==", "dev": true, "requires": { - "html-escaper": "^2.0.0" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" } }, "js-string-escape": { @@ -4686,15 +4671,6 @@ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" }, - "merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - } - }, "merge2": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz", @@ -4819,12 +4795,6 @@ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" }, - "nested-error-stacks": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz", - "integrity": "sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug==", - "dev": true - }, "next-tick": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", @@ -4867,6 +4837,15 @@ } } }, + "node-preload": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", + "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", + "dev": true, + "requires": { + "process-on-spawn": "^1.0.0" + } + }, "normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", @@ -4933,90 +4912,83 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.1.tgz", - "integrity": "sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw==", + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.0.0.tgz", + "integrity": "sha512-qcLBlNCKMDVuKb7d1fpxjPR8sHeMVX0CHarXAVzrVWoFrigCkYR8xcrjfXSPi5HXM7EU78L6ywO7w1c5rZNCNg==", "dev": true, "requires": { - "archy": "^1.0.0", - "caching-transform": "^3.0.2", - "convert-source-map": "^1.6.0", - "cp-file": "^6.2.0", - "find-cache-dir": "^2.1.0", - "find-up": "^3.0.0", - "foreground-child": "^1.5.6", - "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.5", - "istanbul-lib-hook": "^2.0.7", - "istanbul-lib-instrument": "^3.3.0", - "istanbul-lib-report": "^2.0.8", - "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.4", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "caching-transform": "^4.0.0", + "convert-source-map": "^1.7.0", + "decamelize": "^1.2.0", + "find-cache-dir": "^3.2.0", + "find-up": "^4.1.0", + "foreground-child": "^2.0.0", + "glob": "^7.1.6", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-hook": "^3.0.0", + "istanbul-lib-instrument": "^4.0.0", + "istanbul-lib-processinfo": "^2.0.2", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.0", "js-yaml": "^3.13.1", - "make-dir": "^2.1.0", - "merge-source-map": "^1.1.0", - "resolve-from": "^4.0.0", - "rimraf": "^2.6.3", + "make-dir": "^3.0.0", + "node-preload": "^0.2.0", + "p-map": "^3.0.0", + "process-on-spawn": "^1.0.0", + "resolve-from": "^5.0.0", + "rimraf": "^3.0.0", "signal-exit": "^3.0.2", - "spawn-wrap": "^1.4.2", - "test-exclude": "^5.2.3", - "uuid": "^3.3.2", - "yargs": "^13.2.2", - "yargs-parser": "^13.0.0" + "spawn-wrap": "^2.0.0", + "test-exclude": "^6.0.0", + "uuid": "^3.3.3", + "yargs": "^15.0.2" }, "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { - "glob": "^7.1.3" + "p-locate": "^4.1.0" } }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } }, - "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", "dev": true, "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "aggregate-error": "^3.0.0" } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true } } }, @@ -5205,12 +5177,6 @@ } } }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", @@ -5521,6 +5487,15 @@ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, + "process-on-spawn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", + "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", + "dev": true, + "requires": { + "fromentries": "^1.2.0" + } + }, "progress": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", @@ -6142,26 +6117,26 @@ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" }, "spawn-wrap": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.3.tgz", - "integrity": "sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", + "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", "dev": true, "requires": { - "foreground-child": "^1.5.6", - "mkdirp": "^0.5.0", - "os-homedir": "^1.0.1", - "rimraf": "^2.6.2", + "foreground-child": "^2.0.0", + "is-windows": "^1.0.2", + "make-dir": "^3.0.0", + "rimraf": "^3.0.0", "signal-exit": "^3.0.2", - "which": "^1.3.0" + "which": "^2.0.1" }, "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "requires": { - "glob": "^7.1.3" + "isexe": "^2.0.0" } } } @@ -6671,15 +6646,14 @@ } }, "test-exclude": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", - "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, "requires": { - "glob": "^7.1.3", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^2.0.0" + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" } }, "text-table": { @@ -7082,61 +7056,46 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" }, "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" } } } @@ -7211,27 +7170,28 @@ "dev": true }, "yargs": { - "version": "13.3.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", - "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.0.tgz", + "integrity": "sha512-g/QCnmjgOl1YJjGsnUg2SatC7NUYEiLXJqxNOQU9qSpjzGtGXda9b+OKccr1kLTy8BN9yqEyqfq5lxlwdc13TA==", "dev": true, "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^3.0.0", + "string-width": "^4.2.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^13.1.1" + "yargs-parser": "^18.1.0" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "camelcase": { @@ -7240,11 +7200,15 @@ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } }, "get-caller-file": { "version": "2.0.5", @@ -7253,35 +7217,59 @@ "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" } }, "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "version": "18.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.0.tgz", + "integrity": "sha512-o/Jr6JBOv6Yx3pL+5naWSoIA2jJ+ZkMYQG/ie9qFbukBe4uzmBatlXFOiu/tNKRWEtyf+n5w7jc/O16ufqOTdQ==", "dev": true, "requires": { "camelcase": "^5.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 0fe6da2eeff..b88aa85cf68 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^4.8.4", "jsdoc": "^3.6.3", - "nyc": "^14.1.1", + "nyc": "^15.0.0", "open-cli": "^5.0.0", "rimraf": "^3.0.2", "sinon": "^9.0.0", From 920a6583c1f9f4b828a73f5de5c9b3bc3eb41ba7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= <1410947+matz3@users.noreply.github.com> Date: Tue, 10 Mar 2020 17:56:25 +0100 Subject: [PATCH 0296/1272] [ui5-project][FEATURE] Add ui5Framework translator and resolvers (#265) --- packages/project/index.js | 9 + packages/project/lib/normalizer.js | 17 +- packages/project/lib/translators/npm.js | 2 +- .../project/lib/translators/ui5Framework.js | 221 +++++ .../lib/ui5Framework/AbstractResolver.js | 157 +++ .../lib/ui5Framework/Openui5Resolver.js | 77 ++ .../lib/ui5Framework/Sapui5Resolver.js | 71 ++ .../project/lib/ui5Framework/npm/Installer.js | 120 +++ .../project/lib/ui5Framework/npm/Registry.js | 54 ++ packages/project/package-lock.json | 913 +++++++++++++++++- packages/project/package.json | 6 +- packages/project/test/lib/normalizer.js | 46 +- .../translators/ui5Framework.integration.js | 801 +++++++++++++++ .../test/lib/translators/ui5Framework.js | 316 ++++++ .../test/lib/ui5framework/AbstractResolver.js | 263 +++++ .../test/lib/ui5framework/Openui5Resolver.js | 113 +++ .../test/lib/ui5framework/Sapui5Resolver.js | 96 ++ .../test/lib/ui5framework/npm/Installer.js | 370 +++++++ 18 files changed, 3621 insertions(+), 31 deletions(-) create mode 100644 packages/project/lib/translators/ui5Framework.js create mode 100644 packages/project/lib/ui5Framework/AbstractResolver.js create mode 100644 packages/project/lib/ui5Framework/Openui5Resolver.js create mode 100644 packages/project/lib/ui5Framework/Sapui5Resolver.js create mode 100644 packages/project/lib/ui5Framework/npm/Installer.js create mode 100644 packages/project/lib/ui5Framework/npm/Registry.js create mode 100644 packages/project/test/lib/translators/ui5Framework.integration.js create mode 100644 packages/project/test/lib/translators/ui5Framework.js create mode 100644 packages/project/test/lib/ui5framework/AbstractResolver.js create mode 100644 packages/project/test/lib/ui5framework/Openui5Resolver.js create mode 100644 packages/project/test/lib/ui5framework/Sapui5Resolver.js create mode 100644 packages/project/test/lib/ui5framework/npm/Installer.js diff --git a/packages/project/index.js b/packages/project/index.js index a80314ee513..8779e596384 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -5,6 +5,15 @@ module.exports = { normalizer: require("./lib/normalizer"), projectPreprocessor: require("./lib/projectPreprocessor"), + /** + * @public + * @see module:@ui5/project.ui5Framework + * @namespace + */ + ui5Framework: { + Openui5Resolver: require("./lib/ui5Framework/Openui5Resolver"), + Sapui5Resolver: require("./lib/ui5Framework/Sapui5Resolver") + }, /** * @private * @see module:@ui5/project.translators diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index 0a0b69f69b0..2d3d2d4618f 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -20,15 +20,28 @@ const Normalizer = { * @param {string} [options.configPath] Path to configuration file * @param {string} [options.translatorName] Translator to use * @param {Object} [options.translatorOptions] Options to pass to translator + * @param {Object} [options.frameworkOptions] Options to pass to the framework installer * @returns {Promise} Promise resolving to tree object */ generateProjectTree: async function(options = {}) { - const tree = await Normalizer.generateDependencyTree(options); + let tree = await Normalizer.generateDependencyTree(options); if (options.configPath) { tree.configPath = options.configPath; } - return projectPreprocessor.processTree(tree); + tree = await projectPreprocessor.processTree(tree); + + if (tree.framework) { + const ui5Framework = require("./translators/ui5Framework"); + log.verbose(`Root project ${tree.metadata.name} defines framework ` + + `configuration. Installing UI5 dependencies...`); + let frameworkTree = await ui5Framework.generateDependencyTree(tree, options.frameworkOptions); + if (frameworkTree) { + frameworkTree = await projectPreprocessor.processTree(frameworkTree); + ui5Framework.mergeTrees(tree, frameworkTree); + } + } + return tree; }, /** diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 6645f3c78e9..11797924f7f 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -3,7 +3,7 @@ const path = require("path"); const readPkgUp = require("read-pkg-up"); const readPkg = require("read-pkg"); const {promisify} = require("util"); -const fs = require("fs"); +const fs = require("graceful-fs"); const realpath = promisify(fs.realpath); const resolveModulePath = promisify(require("resolve")); const parentNameRegExp = new RegExp(/:([^:]+):$/i); diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js new file mode 100644 index 00000000000..f395b3c7de7 --- /dev/null +++ b/packages/project/lib/translators/ui5Framework.js @@ -0,0 +1,221 @@ +const log = require("@ui5/logger").getLogger("normalizer:translators:ui5Framework"); + +class ProjectProcessor { + constructor({libraryMetadata}) { + this._libraryMetadata = libraryMetadata; + this._projectCache = {}; + } + getProject(libName) { + log.verbose(`Creating project for library ${libName}...`); + + if (this._projectCache[libName]) { + log.verbose(`Returning cached project for library ${libName}`); + return this._projectCache[libName]; + } + + if (!this._libraryMetadata[libName]) { + throw new Error(`Failed to find library ${libName} in dist packages metadata.json`); + } + + const depMetadata = this._libraryMetadata[libName]; + + const dependencies = []; + dependencies.push(...depMetadata.dependencies.map((depName) => { + return this.getProject(depName); + })); + + if (depMetadata.optionalDependencies) { + const resolvedOptionals = depMetadata.optionalDependencies.map((depName) => { + if (this._libraryMetadata[depName]) { + log.verbose(`Resolving optional dependency ${depName} for project ${libName}...`); + return this.getProject(depName); + } + }).filter(($)=>$); + + dependencies.push(...resolvedOptionals); + } + + this._projectCache[libName] = { + id: depMetadata.id, + version: depMetadata.version, + path: depMetadata.path, + dependencies + }; + return this._projectCache[libName]; + } +} + +const utils = { + getAllNodesOfTree(tree) { + const nodes = {}; + const queue = [...tree]; + while (queue.length) { + const project = queue.shift(); + if (!nodes[project.metadata.name]) { + nodes[project.metadata.name] = project; + queue.push(...project.dependencies); + } + } + return nodes; + }, + isFrameworkProject(project) { + return project.id.startsWith("@openui5/") || project.id.startsWith("@sapui5/"); + }, + shouldIncludeDependency({optional, development}, root) { + // Root project should include all dependencies + // Otherwise only non-optional and non-development dependencies should be included + return root || (optional !== true && development !== true); + }, + getFrameworkLibrariesFromTree(project, ui5Dependencies = [], root = true) { + if (utils.isFrameworkProject(project)) { + // Ignoring UI5 Framework libraries in dependencies + return ui5Dependencies; + } + if (project.framework && project.framework.libraries) { + project.framework.libraries.forEach((dependency) => { + if (!ui5Dependencies.includes(dependency.name) && utils.shouldIncludeDependency(dependency, root)) { + ui5Dependencies.push(dependency.name); + } + }); + } else { + log.verbose(`Project ${project.metadata.name} defines no framework.libraries configuration`); + // Possible future enhancement: Fallback to detect OpenUI5 framework dependencies in package.json + } + project.dependencies.map((depProject) => { + utils.getFrameworkLibrariesFromTree(depProject, ui5Dependencies, false); + }); + return ui5Dependencies; + }, + ProjectProcessor +}; + +/** + * + * + * @private + * @namespace + * @alias module:@ui5/project.translators.ui5Framework + */ +module.exports = { + /** + * + * + * @public + * @param {Object} tree + * @param {Object} [options] + * @param {Object} [options.versionOverride] Framework version to use instead of the root projects framework + * version from the provided tree + * @returns {Promise} Promise + */ + generateDependencyTree: async function(tree, options = {}) { + // Don't create a tree when root project doesn't have a framework configuration + if (!tree.framework) { + return null; + } + + const frameworkName = tree.framework.name; + if (frameworkName !== "SAPUI5" && frameworkName !== "OpenUI5") { + throw new Error( + `Unknown framework.name "${frameworkName}" for project ${tree.id}. Must be "OpenUI5" or "SAPUI5"` + ); + } + + let version; + if (!tree.framework.version) { + throw new Error( + `framework.version is not defined for project ${tree.id}` + ); + } else if (options.versionOverride) { + log.info( + `Overriding configured ${frameworkName} version ` + + `${tree.framework.version} with supplied version ${options.versionOverride}` + ); + version = options.versionOverride; + } else { + version = tree.framework.version; + } + + log.info(`Using ${frameworkName} version: ${version}`); + + const referencedLibraries = utils.getFrameworkLibrariesFromTree(tree); + + let resolver; + if (frameworkName === "OpenUI5") { + const Openui5Resolver = require("../ui5Framework/Openui5Resolver"); + resolver = new Openui5Resolver({cwd: tree.path, version}); + } else if (frameworkName === "SAPUI5") { + const Sapui5Resolver = require("../ui5Framework/Sapui5Resolver"); + resolver = new Sapui5Resolver({cwd: tree.path, version}); + } + + let startTime; + if (log.isLevelEnabled("verbose")) { + startTime = process.hrtime(); + } + + const {libraryMetadata} = await resolver.install(referencedLibraries); + + if (log.isLevelEnabled("verbose")) { + const timeDiff = process.hrtime(startTime); + const prettyHrtime = require("pretty-hrtime"); + log.verbose(`${frameworkName} dependencies ${referencedLibraries.join(", ")} resolved in ${prettyHrtime(timeDiff)}`); + } + + const projectProcessor = new utils.ProjectProcessor({ + libraryMetadata + }); + + const libraries = referencedLibraries.map((libName) => { + return projectProcessor.getProject(libName); + }); + + // Use root project (=requesting project) as root of framework tree + const frameworkTree = { + id: tree.id, + version: tree.version, + path: tree.path, + dependencies: libraries + }; + return frameworkTree; + }, + + mergeTrees: function(projectTree, frameworkTree) { + const frameworkLibs = utils.getAllNodesOfTree(frameworkTree.dependencies); + + log.verbose(`Merging framework tree into project tree "${projectTree.metadata.name}"`); + + const queue = [projectTree]; + while (queue.length) { + const project = queue.shift(); + + project.dependencies = project.dependencies.filter((depProject) => { + if (utils.isFrameworkProject(depProject)) { + log.verbose( + `A translator has already added the UI5 framework library ${depProject.metadata.name} ` + + `(id: ${depProject.id}) to the dependencies of project ${project.metadata.name}. ` + + `This dependency will be ignored.`); + log.info(`If project ${project.metadata.name} contains a package.json in which it defines a ` + + `dependency to the UI5 framework library ${depProject.id}, this dependency should be removed.`); + return false; + } + return true; + }); + queue.push(...project.dependencies); + + if (project.framework && project.framework.libraries) { + const frameworkDeps = project.framework.libraries.map((dependency) => { + if (!frameworkLibs[dependency.name]) { + throw new Error(`Missing framework library ${dependency.name} ` + + `required by project ${project.metadata.name}`); + } + return frameworkLibs[dependency.name]; + }); + project.dependencies.push(...frameworkDeps); + } + } + return projectTree; + }, + + // Export for testing only + _utils: process.env.NODE_ENV === "test" ? utils : undefined +}; diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js new file mode 100644 index 00000000000..05cf66710cc --- /dev/null +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -0,0 +1,157 @@ +const path = require("path"); +const log = require("@ui5/logger").getLogger("ui5Framework:AbstractResolver"); + +/** + * Abstract Resolver + * + * @public + * @abstract + * @memberof module:@ui5/project.ui5Framework + */ +class AbstractResolver { + /** + * @param {*} options options + * @param {string} options.version Framework version to use + * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc + * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, metadata and configuration used by the resolvers. Relative to `process.cwd()` + */ + constructor({cwd, version, ui5HomeDir}) { + if (new.target === AbstractResolver) { + throw new TypeError("Class 'AbstractResolver' is abstract"); + } + + if (!version) { + throw new Error(`AbstractResolver: Missing parameter "version"`); + } + + this._ui5HomeDir = ui5HomeDir || path.join(require("os").homedir(), ".ui5"); + + this._cwd = cwd || process.cwd(); + this._version = version; + } + + async _processLibrary(libraryName, libraryMetadata, errors) { + // Check if library is already processed + if (libraryMetadata[libraryName]) { + return; + } + // Mark library as handled + libraryMetadata[libraryName] = {}; + + log.verbose("Processing " + libraryName); + + const promises = await this.handleLibrary(libraryName); + + const [metadata, {pkgPath}] = await Promise.all([ + promises.metadata.then((metadata) => + this._processDependencies(libraryName, metadata, libraryMetadata, errors)), + promises.install + ]); + + // Add path to installed package to metadata + metadata.path = pkgPath; + + // Add metadata entry + libraryMetadata[libraryName] = metadata; + } + + async _processDependencies(libraryName, metadata, libraryMetadata, errors) { + if (metadata.dependencies.length > 0) { + log.verbose("Processing dependencies of " + libraryName); + await this._processLibraries(metadata.dependencies, libraryMetadata, errors); + log.verbose("Done processing dependencies of " + libraryName); + } + return metadata; + } + + async _processLibraries(libraryNames, libraryMetadata, errors) { + const results = await Promise.all(libraryNames.map(async (libraryName) => { + try { + await this._processLibrary(libraryName, libraryMetadata, errors); + } catch (err) { + return `Failed to resolve library ${libraryName}: ${err.message}`; + } + })); + // Don't add empty results (success) + errors.push(...results.filter(($) => $)); + } + + /** + * Library metadata entry + * + * @example + * { + * "id": "@openui5/sap.ui.core", + * "version": "1.75.0", + * "path": "~/.ui5/framework/packages/@openui5/sap.ui.core/1.75.0", + * "dependencies": [], + * "optionalDependencies": [] + * } + * + * @public + * @typedef {Object} LibraryMetadataEntry + * @property {string} id Identifier + * @property {string} version Version + * @property {string} path Path + * @property {string[]} dependencies List of dependency ids + * @property {string[]} optionalDependencies List of optional dependency ids + * @memberof module:@ui5/project.ui5Framework + */ + /** + * Install result + * + * @example + * { + * "libraryMetadata": { + * "sap.ui.core": { + * // ... + * }, + * "sap.m": { + * // ... + * } + * } + * } + * + * @public + * @typedef {Object} ResolverInstallResult + * @property {Object.} libraryMetadata + * Object containing all installed libraries with library name as key + * @memberof module:@ui5/project.ui5Framework + */ + /** + * Installs the provided libraries and their dependencies + * + * @example + * resolver.install(["sap.ui.core", "sap.m"]).then(({libraryMetadata}) => { + * // Installation done + * }).catch((err) => { + * // Handle installation errors + * }); + * + * @public + * @param {string[]} libraryNames List of library names to be installed + * @returns {module:@ui5/project.ui5Framework.ResolverInstallResult} + * Resolves with an object containing the libraryMetadata + */ + async install(libraryNames) { + const libraryMetadata = {}; + const errors = []; + + await this._processLibraries(libraryNames, libraryMetadata, errors); + + if (errors.length > 0) { + throw new Error("Resolution of framework libraries failed with errors:\n" + errors.join("\n")); + } + + return { + libraryMetadata + }; + } + + // To be implemented by resolver + async handleLibrary(libraryName) { + throw new Error("AbstractResolver: handleLibrary must be implemented!"); + } +} + +module.exports = AbstractResolver; diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js new file mode 100644 index 00000000000..d14c5e7d5ba --- /dev/null +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -0,0 +1,77 @@ +const AbstractResolver = require("./AbstractResolver"); +const Installer = require("./npm/Installer"); + +/** + * Resolver for the OpenUI5 framework + * + * @public + * @memberof module:@ui5/project.ui5Framework + * @extends module:@ui5/project.ui5Framework.AbstractResolver + */ +class Openui5Resolver extends AbstractResolver { + /** + * @param {*} options options + * @param {string} options.version OpenUI5 version to use + * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc + * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, metadata and configuration used by the resolvers. Relative to `process.cwd()` + */ + constructor(options) { + super(options); + + this._installer = new Installer({ + cwd: this._cwd, + ui5HomeDir: this._ui5HomeDir + }); + this._loadLibraryMetadata = {}; + } + static _getNpmPackageName(libraryName) { + return "@openui5/" + libraryName; + } + static _getLibaryName(pkgName) { + return pkgName.replace(/^@openui5\//, ""); + } + _getLibraryMetadata(libraryName) { + if (!this._loadLibraryMetadata[libraryName]) { + this._loadLibraryMetadata[libraryName] = Promise.resolve().then(async () => { + // Trigger manifest request to gather transitive dependencies + const pkgName = Openui5Resolver._getNpmPackageName(libraryName); + const libraryManifest = await this._installer.fetchPackageManifest({pkgName, version: this._version}); + let dependencies = []; + if (libraryManifest.dependencies) { + const depNames = Object.keys(libraryManifest.dependencies); + dependencies = depNames.map(Openui5Resolver._getLibaryName); + } + + // npm devDependencies are handled as "optionalDependencies" + // in terms of the UI5 framework metadata structure + let optionalDependencies = []; + if (libraryManifest.devDependencies) { + const devDepNames = Object.keys(libraryManifest.devDependencies); + optionalDependencies = devDepNames.map(Openui5Resolver._getLibaryName); + } + + return { + id: pkgName, + version: this._version, + dependencies, + optionalDependencies + }; + }); + } + return this._loadLibraryMetadata[libraryName]; + } + async handleLibrary(libraryName) { + const pkgName = Openui5Resolver._getNpmPackageName(libraryName); + return { + // Trigger metadata request + metadata: this._getLibraryMetadata(libraryName), + // Also trigger installation of package + install: this._installer.installPackage({ + pkgName, + version: this._version + }) + }; + } +} + +module.exports = Openui5Resolver; diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js new file mode 100644 index 00000000000..4b3d171a5aa --- /dev/null +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -0,0 +1,71 @@ +const path = require("path"); +const AbstractResolver = require("./AbstractResolver"); +const Installer = require("./npm/Installer"); +const log = require("@ui5/logger").getLogger("normalizer:ui5Framework:Sapui5Resolver"); + +const DIST_PKG_NAME = "@sapui5/distribution-metadata"; + +/** + * Resolver for the SAPUI5 framework + * + * @public + * @memberof module:@ui5/project.ui5Framework + * @extends module:@ui5/project.ui5Framework.AbstractResolver + */ +class Sapui5Resolver extends AbstractResolver { + /** + * @param {*} options options + * @param {string} options.version SAPUI5 version to use + * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc + * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, metadata and configuration used by the resolvers. Relative to `process.cwd()` + */ + constructor(options) { + super(options); + + this._installer = new Installer({ + cwd: this._cwd, + ui5HomeDir: this._ui5HomeDir + }); + this._loadDistMetadata = null; + } + loadDistMetadata() { + if (!this._loadDistMetadata) { + this._loadDistMetadata = Promise.resolve().then(async () => { + const version = this._version; + log.verbose(`Installing ${DIST_PKG_NAME} in version ${version}...`); + const pkgName = DIST_PKG_NAME; + const {pkgPath} = await this._installer.installPackage({ + pkgName, + version + }); + + const metadata = await this._installer.readJson(path.join(pkgPath, "metadata.json")); + return metadata; + }); + } + return this._loadDistMetadata; + } + async handleLibrary(libraryName) { + const distMetadata = await this.loadDistMetadata(); + const metadata = distMetadata.libraries[libraryName]; + if (!metadata) { + throw new Error(`Could not find library "${libraryName}"`); + } + + return { + metadata: Promise.resolve({ + id: metadata.npmPackageName, + version: metadata.version, + dependencies: metadata.dependencies, + optionalDependencies: metadata.optionalDependencies + }), + // Trigger installation of package + install: this._installer.installPackage({ + pkgName: metadata.npmPackageName, + version: metadata.version + }) + }; + } +} + +module.exports = Sapui5Resolver; diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js new file mode 100644 index 00000000000..ff56acb442b --- /dev/null +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -0,0 +1,120 @@ +const path = require("path"); +const fs = require("graceful-fs"); +const {promisify} = require("util"); +const stat = promisify(fs.stat); +const readFile = promisify(fs.readFile); +const lockfile = require("lockfile"); +const lock = promisify(lockfile.lock); +const unlock = promisify(lockfile.unlock); +const mkdirp = require("mkdirp"); +const Registry = require("./Registry"); +const log = require("@ui5/logger").getLogger("normalizer:ui5Framework:npm:Installer"); + +class Installer { + constructor({cwd, ui5HomeDir}) { + if (!cwd) { + throw new Error(`Installer: Missing parameter "cwd"`); + } + if (!ui5HomeDir) { + throw new Error(`Installer: Missing parameter "ui5HomeDir"`); + } + this._baseDir = path.join(ui5HomeDir, "framework", "packages"); + log.verbose(`Installing to: ${this._baseDir}`); + this._registry = new Registry({ + cwd, + cacheDir: path.join(ui5HomeDir, "framework", "cacache") + }); + this._lockDir = path.join(ui5HomeDir, "framework", "locks"); + } + + async readJson(jsonPath) { + return JSON.parse(await readFile(jsonPath, {encoding: "utf8"})); + } + + async fetchPackageManifest({pkgName, version}) { + const targetDir = this._getTargetDirForPackage({pkgName, version}); + try { + const pkg = await this.readJson(path.join(targetDir, "package.json")); + return { + name: pkg.name, + dependencies: pkg.dependencies, + devDependencies: pkg.devDependencies + }; + } catch (err) { + if (err.code === "ENOENT") { // "File or directory does not exist" + const manifest = await this._registry.requestPackageManifest(pkgName, version); + return { + name: manifest.name, + dependencies: manifest.dependencies, + devDependencies: manifest.devDependencies + }; + } else { + throw err; + } + } + } + + async installPackage({pkgName, version}) { + const targetDir = this._getTargetDirForPackage({pkgName, version}); + const installed = await this._packageJsonExists(targetDir); + if (!installed) { + await this._synchronize({pkgName, version}, async () => { + // check again whether package is now installed + const installed = await this._packageJsonExists(targetDir); + if (!installed) { + log.info(`Installing missing package ${pkgName}...`); + log.verbose(`Installing ${pkgName} in version ${version} to ${targetDir}...`); + await this._registry.extractPackage(pkgName, version, targetDir); + } else { + log.verbose(`Alrady installed: ${pkgName} in version ${version}`); + } + }); + } else { + log.verbose(`Alrady installed: ${pkgName} in version ${version}`); + } + return { + pkgPath: targetDir + }; + } + + async _packageJsonExists(targetDir) { + try { + await stat(path.join(targetDir, "package.json")); + return true; + } catch (err) { + if (err.code === "ENOENT") { // "File or directory does not exist" + return false; + } else { + throw err; + } + } + } + + async _synchronize({pkgName, version}, callback) { + const lockPath = this._getLockPath({pkgName, version}); + await mkdirp(this._lockDir); + log.verbose("Locking " + lockPath); + await lock(lockPath, { + wait: 10000, + stale: 60000, + retries: 10 + }); + try { + await callback(); + } finally { + log.verbose("Unlocking " + lockPath); + await unlock(lockPath); + } + } + + _getLockPath({pkgName, version}) { + const lockName = pkgName.replace(/\//g, "-"); + return path.join(this._lockDir, `package-${lockName}@${version}.lock`); + } + + _getTargetDirForPackage({pkgName, version}) { + return path.join(this._baseDir, ...pkgName.split("/"), version); + } +} + +module.exports = Installer; diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js new file mode 100644 index 00000000000..0d4716f41db --- /dev/null +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -0,0 +1,54 @@ +const log = require("@ui5/logger").getLogger("normalizer:ui5Framework:npm:Registry"); + +function logConfig(config, configName) { + const configValue = config[configName]; + if (configValue) { + log.verbose(` ${configName}: ${configValue}`); + } +} + +class Registry { + constructor({cwd, cacheDir}) { + this._pacote = require("pacote"); + this._cwd = cwd; + this._cacheDir = cacheDir; + } + requestPackageManifest(pkgName, version) { + return this._pacote.manifest(`${pkgName}@${version}`, this._getPacoteOptions()); + } + extractPackage(pkgName, version, targetDir) { + return this._pacote.extract(`${pkgName}@${version}`, targetDir, this._getPacoteOptions()); + } + _getPacoteOptions() { + if (!this._npmConfig) { + const libnpmconfig = require("libnpmconfig"); + const opts = { + cache: this._cacheDir + }; + if (log.isLevelEnabled("verbose")) { + opts.log = log._getLogger(); + } + const config = libnpmconfig.read(opts, { + cwd: this._cwd + }).toJSON(); + + log.verbose(`Using npm configuration (extract):`); + // Do not log full configuration as it may contain authentication tokens + logConfig(config, "registry"); + logConfig(config, "@sapui5:registry"); + logConfig(config, "@openui5:registry"); + logConfig(config, "proxy"); + logConfig(config, "globalconfig"); + logConfig(config, "userconfig"); + logConfig(config, "cache"); + logConfig(config, "cwd"); + + this._npmConfig = config; + } + + // Use cached config + return this._npmConfig; + } +} + +module.exports = Registry; diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 185c6468c0e..917ba19b083 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -530,6 +530,22 @@ "fastq": "^1.6.0" } }, + "@npmcli/ci-detect": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.2.0.tgz", + "integrity": "sha512-JtktVH7ASBVIWsQTFlFpeOzhBJskvoBCTfeeRhhZy7ybATcUvwiwotZ8j5rkqUUyB69lIy/AvboiiiGBjYBKBA==" + }, + "@npmcli/installed-package-contents": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.5.tgz", + "integrity": "sha512-aKIwguaaqb6ViwSOFytniGvLPb9SMCUm39TgM3SfUo7n0TxUMbwoXfpwyvQ4blm10lzbAwTsvjr7QZ85LvTi4A==", + "requires": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1", + "read-package-json-fast": "^1.1.1", + "readdir-scoped-modules": "^1.1.0" + } + }, "@sindresorhus/is": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", @@ -725,11 +741,40 @@ "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", "dev": true }, + "agent-base": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-5.1.1.tgz", + "integrity": "sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g==" + }, + "agentkeepalive": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.1.0.tgz", + "integrity": "sha512-CW/n1wxF8RpEuuiq6Vbn9S8m0VSYDMnZESqaJ6F2cWN9fY8rei2qaxweIaRgq+ek8TqfoFIsUjaGNKGGEHElSg==", + "requires": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, "aggregate-error": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", - "dev": true, "requires": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -925,6 +970,11 @@ "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, "asn1": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", @@ -1305,11 +1355,76 @@ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, + "builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=" + }, "bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" }, + "cacache": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.0.tgz", + "integrity": "sha512-L0JpXHhplbJSiDGzyJJnJCTL7er7NzbBgxzVqLswEb4bO91Zbv17OUMuUeu/q0ZwKn3V+1HM4wb9tO4eVE/K8g==", + "requires": { + "chownr": "^1.1.2", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^5.1.1", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "move-concurrently": "^1.0.1", + "p-map": "^3.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^2.7.1", + "ssri": "^8.0.0", + "tar": "^6.0.1", + "unique-filename": "^1.1.1" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "mkdirp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", + "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==" + }, + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } + } + }, "cacheable-request": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", @@ -1498,6 +1613,11 @@ } } }, + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, "chunkd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/chunkd/-/chunkd-1.0.0.tgz", @@ -1519,8 +1639,7 @@ "clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" }, "clean-yaml-object": { "version": "0.1.0", @@ -1892,6 +2011,37 @@ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + } + } + }, "core-js": { "version": "2.6.11", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", @@ -2072,6 +2222,11 @@ "ms": "2.0.0" } }, + "debuglog": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", + "integrity": "sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=" + }, "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", @@ -2289,6 +2444,14 @@ "rimraf": "^2.6.2" }, "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + } + }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -2299,6 +2462,15 @@ } } }, + "dezalgo": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz", + "integrity": "sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY=", + "requires": { + "asap": "^2.0.0", + "wrappy": "1" + } + }, "diff": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", @@ -2430,6 +2602,15 @@ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "optional": true, + "requires": { + "iconv-lite": "~0.4.13" + } + }, "end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -2450,6 +2631,11 @@ "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", "dev": true }, + "err-code": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", + "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=" + }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -2527,6 +2713,19 @@ "event-emitter": "~0.3.5" } }, + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, + "es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "requires": { + "es6-promise": "^4.0.3" + } + }, "es6-set": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", @@ -2686,6 +2885,15 @@ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -3005,6 +3213,11 @@ "reusify": "^1.0.4" } }, + "figgy-pudding": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", + "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==" + }, "figures": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", @@ -3213,6 +3426,25 @@ "integrity": "sha512-33X7H/wdfO99GdRLLgkjUrD4geAFdq/Uv0kl3HD4da6HDixd2GUg8Mw7dahLCV9r/EARkmtYBB6Tch4EEokFTQ==", "dev": true }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -3502,8 +3734,7 @@ "http-cache-semantics": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" }, "http-deceiver": { "version": "1.2.7", @@ -3539,6 +3770,30 @@ "requires-port": "^1.0.0" } }, + "http-proxy-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-3.0.0.tgz", + "integrity": "sha512-uGuJaBWQWDQCJI5ip0d/VTYZW0nRrlLWXA4A7P1jrsa+f77rW2yXz315oBt6zGCF6l8C2tlMxY7ffULCj+5FhA==", + "requires": { + "agent-base": "5", + "debug": "4" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", @@ -3549,6 +3804,38 @@ "sshpk": "^1.7.0" } }, + "https-proxy-agent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz", + "integrity": "sha512-zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg==", + "requires": { + "agent-base": "5", + "debug": "4" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "requires": { + "ms": "^2.0.0" + } + }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -3557,6 +3844,11 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" + }, "ignore": { "version": "5.1.4", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.4.tgz", @@ -3568,6 +3860,14 @@ "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", "dev": true }, + "ignore-walk": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz", + "integrity": "sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==", + "requires": { + "minimatch": "^3.0.4" + } + }, "import-fresh": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", @@ -3605,14 +3905,17 @@ "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" }, "indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" }, "inflight": { "version": "1.0.6", @@ -3631,8 +3934,7 @@ "ini": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, "inquirer": { "version": "6.5.2", @@ -3762,6 +4064,11 @@ } } }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" + }, "ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", @@ -3862,6 +4169,11 @@ } } }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=" + }, "is-npm": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-3.0.0.tgz", @@ -4005,8 +4317,7 @@ "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "isobject": { "version": "4.0.0", @@ -4218,6 +4529,16 @@ "strip-json-comments": "^3.0.1", "taffydb": "2.6.2", "underscore": "~1.9.1" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + } + } } }, "jsdoctypeparser": { @@ -4243,6 +4564,11 @@ "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, + "json-parse-even-better-errors": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.0.1.tgz", + "integrity": "sha512-XFY2Mbnmg+8r7MRsxfArVkZcfjxGlF/NjM3LsPXVeCX/GBF/1FTCv+idHBYC4qLPtK7q8HC8bapLoWqnhP/bXw==" + }, "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", @@ -4281,6 +4607,11 @@ } } }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=" + }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", @@ -4351,6 +4682,16 @@ "type-check": "~0.3.2" } }, + "libnpmconfig": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/libnpmconfig/-/libnpmconfig-1.2.1.tgz", + "integrity": "sha512-9esX8rTQAHqarx6qeZqmGQKBNZR5OIbl/Ayr0qQDy3oXja2iFVQQI81R6GZ2a02bSNZ9p3YOGX1O6HHCb1X7kA==", + "requires": { + "figgy-pudding": "^3.5.1", + "find-up": "^3.0.0", + "ini": "^1.3.5" + } + }, "linkify-it": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", @@ -4379,6 +4720,14 @@ "path-exists": "^3.0.0" } }, + "lockfile": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lockfile/-/lockfile-1.0.4.tgz", + "integrity": "sha512-cvbTwETRfsFh4nHsL1eGWapU1XFi5Ot9E85sWAwia7Y7EgB7vfqcZhTKZ+l7hCGxSPoushMv5GKhT5PdLv03WA==", + "requires": { + "signal-exit": "^3.0.2" + } + }, "lodash": { "version": "4.17.15", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", @@ -4522,6 +4871,43 @@ "semver": "^6.0.0" } }, + "make-fetch-happen": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.1.tgz", + "integrity": "sha512-oiK8xz6+IxaPqmOCW+rmlH922RTZ+fi4TAULGRih8ryqIju0x6WriDR3smm7Z+8NZRxDIK/iDLM096F/gLfiWg==", + "requires": { + "agentkeepalive": "^4.1.0", + "cacache": "^15.0.0", + "http-cache-semantics": "^4.0.4", + "http-proxy-agent": "^3.0.0", + "https-proxy-agent": "^4.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^5.1.1", + "minipass": "^3.0.0", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.1.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "promise-retry": "^1.1.1", + "socks-proxy-agent": "^4.0.0", + "ssri": "^8.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } + } + }, "map-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", @@ -4756,14 +5142,95 @@ } } }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "minipass": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.1.tgz", + "integrity": "sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w==", "requires": { - "minimist": "0.0.8" + "yallist": "^4.0.0" + }, + "dependencies": { + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-fetch": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.2.1.tgz", + "integrity": "sha512-ssHt0dkljEDaKmTgQ04DQgx2ag6G2gMPxA5hpcsoeTbfDgRf2fC2gNSRc6kISjD7ckCpHwwQvXxuTBK8402fXg==", + "requires": { + "encoding": "^0.1.12", + "minipass": "^3.1.0", + "minipass-pipeline": "^1.2.2", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "requires": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.2.tgz", + "integrity": "sha512-3JS5A2DKhD2g0Gg8x3yamO0pj7YeKGwVlDS90pF++kxptwx/F+B//roxf9SqYil5tQo65bijy+dAuAFZmYOouA==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz", + "integrity": "sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==", + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "dependencies": { + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "mkdirp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", + "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==" + }, "mock-require": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", @@ -4773,6 +5240,37 @@ "normalize-path": "^2.1.1" } }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + } + } + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -4878,6 +5376,131 @@ "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", "dev": true }, + "npm-bundled": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.1.tgz", + "integrity": "sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==", + "requires": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-install-checks": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz", + "integrity": "sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w==", + "requires": { + "semver": "^7.1.1" + }, + "dependencies": { + "semver": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", + "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" + } + } + }, + "npm-normalize-package-bin": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", + "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==" + }, + "npm-package-arg": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.0.0.tgz", + "integrity": "sha512-JgqZHCEUKvhX7EehLNdySiuB227a0QYra9wpZOkW+jvwsRYKkce7y5Rv2axkxScJU1EP+L32jT2PLhQz7IWHlw==", + "requires": { + "hosted-git-info": "^3.0.2", + "osenv": "^0.1.5", + "semver": "^7.0.0", + "validate-npm-package-name": "^3.0.0" + }, + "dependencies": { + "hosted-git-info": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.2.tgz", + "integrity": "sha512-ezZMWtHXm7Eb7Rq4Mwnx2vs79WUx2QmRg3+ZqeGroKzfDO+EprOcgRPYghsOP9JuYBfK18VojmRTGCg8Ma+ktw==", + "requires": { + "lru-cache": "^5.1.1" + } + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "semver": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", + "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } + } + }, + "npm-packlist": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.1.0.tgz", + "integrity": "sha512-XXqrT4WXVc8M1cdL7LCOUflEdyvCu9lKmM5j5mFwXAK8hUMRxzClNml8ox2d8YIDhS7p51AP6zYWNsgNiWuSLQ==", + "requires": { + "glob": "^7.1.6", + "ignore-walk": "^3.0.3", + "npm-bundled": "^1.0.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-pick-manifest": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.0.0.tgz", + "integrity": "sha512-PdJpXMvjqt4nftNEDpCgjBUF8yI3Q3MyuAmVB9nemnnCg32F4BPL/JFBfdj8DubgHCYUFQhtLWmBPvdsFtjWMg==", + "requires": { + "npm-install-checks": "^4.0.0", + "npm-package-arg": "^8.0.0", + "semver": "^7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", + "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" + } + } + }, + "npm-registry-fetch": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-7.0.0.tgz", + "integrity": "sha512-XABSG02i/03EfnXM8azGksxICQO8g5MSiaxIUBsNTLXnQLBcdQNS67aOZsF5Yn97RV9o9g+fBUUN2Sg8u7iCBw==", + "requires": { + "@npmcli/ci-detect": "^1.0.0", + "lru-cache": "^5.1.1", + "make-fetch-happen": "^8.0.1", + "minipass": "^3.0.0", + "minipass-fetch": "^1.1.2", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.0.0", + "npm-package-arg": "^8.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } + } + }, "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", @@ -5177,11 +5800,24 @@ } } }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } }, "p-cancelable": { "version": "1.1.0", @@ -5246,6 +5882,67 @@ "semver": "^6.2.0" } }, + "pacote": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-11.0.0.tgz", + "integrity": "sha512-Q8H9lfzlZTZyWWtYNGETtFp2qmzd9XHfuF3gas5xd8T6vf/6E7BOmhybWU2PxSVeSYjIw4hLpaf7hCqY+T2TbQ==", + "requires": { + "@npmcli/installed-package-contents": "^1.0.5", + "cacache": "^15.0.0", + "chownr": "^1.1.3", + "fs-minipass": "^2.1.0", + "infer-owner": "^1.0.4", + "lru-cache": "^5.1.1", + "minipass": "^3.0.1", + "minipass-fetch": "^1.2.1", + "mkdirp": "^1.0.3", + "npm-package-arg": "^8.0.0", + "npm-packlist": "^2.0.3", + "npm-pick-manifest": "^6.0.0", + "npm-registry-fetch": "^7.0.0", + "osenv": "^0.1.5", + "promise-inflight": "^1.0.1", + "promise-retry": "^1.1.1", + "read-package-json-fast": "^1.1.3", + "semver": "^7.1.1", + "ssri": "^8.0.0", + "tar": "^6.0.0", + "which": "^2.0.2" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "mkdirp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", + "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==" + }, + "semver": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", + "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "requires": { + "isexe": "^2.0.0" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } + } + }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -5502,6 +6199,20 @@ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" + }, + "promise-retry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", + "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", + "requires": { + "err-code": "^1.0.0", + "retry": "^0.10.0" + } + }, "proxy-addr": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", @@ -5602,6 +6313,15 @@ } } }, + "read-package-json-fast": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-1.1.3.tgz", + "integrity": "sha512-MmFqiyfCXV2Dmm4jH24DEGhxdkUDFivJQj4oPZQPOKywxR7HWBE6WnMWDAapfFHi3wm1b+mhR+XHlUH0CL8axg==", + "requires": { + "json-parse-even-better-errors": "^2.0.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, "read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", @@ -5645,6 +6365,17 @@ "util-deprecate": "~1.0.1" } }, + "readdir-scoped-modules": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", + "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", + "requires": { + "debuglog": "^1.0.1", + "dezalgo": "^1.0.0", + "graceful-fs": "^4.1.2", + "once": "^1.3.0" + } + }, "readdirp": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", @@ -5894,6 +6625,11 @@ "signal-exit": "^3.0.2" } }, + "retry": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", + "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=" + }, "reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", @@ -5921,6 +6657,14 @@ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==" }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "requires": { + "aproba": "^1.1.1" + } + }, "rxjs": { "version": "6.5.4", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", @@ -6085,6 +6829,39 @@ } } }, + "smart-buffer": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz", + "integrity": "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==" + }, + "socks": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", + "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", + "requires": { + "ip": "1.1.5", + "smart-buffer": "^4.1.0" + } + }, + "socks-proxy-agent": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", + "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", + "requires": { + "agent-base": "~4.2.1", + "socks": "~2.3.2" + }, + "dependencies": { + "agent-base": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", + "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", + "requires": { + "es6-promisify": "^5.0.0" + } + } + } + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -6130,6 +6907,23 @@ "which": "^2.0.1" }, "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -6255,6 +7049,14 @@ "tweetnacl": "~0.14.0" } }, + "ssri": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.0.tgz", + "integrity": "sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==", + "requires": { + "minipass": "^3.1.1" + } + }, "stack-utils": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", @@ -6607,6 +7409,31 @@ } } }, + "tar": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.0.1.tgz", + "integrity": "sha512-bKhKrrz2FJJj5s7wynxy/fyxpE0CmCjmOQ1KV4KkgXFWOgoIT/NbTMnB1n+LFNrNk0SSBVGGxcK5AGsyC+pW5Q==", + "requires": { + "chownr": "^1.1.3", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.0", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", + "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, "temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", @@ -6856,6 +7683,22 @@ "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", "dev": true }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "requires": { + "imurmurhash": "^0.1.4" + } + }, "unique-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", @@ -6874,6 +7717,17 @@ "mkdirp": "^0.5.1", "os-tmpdir": "^1.0.1", "uid2": "0.0.3" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + } } }, "unpipe": { @@ -6947,6 +7801,14 @@ "spdx-expression-parse": "^3.0.0" } }, + "validate-npm-package-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", + "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "requires": { + "builtins": "^1.0.3" + } + }, "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", @@ -7112,6 +7974,17 @@ "dev": true, "requires": { "mkdirp": "^0.5.1" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + } } }, "write-file-atomic": { diff --git a/packages/project/package.json b/packages/project/package.json index b88aa85cf68..9e486f241ba 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,10 @@ "@ui5/server": "^1.6.0", "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", - "mock-require": "^3.0.3", + "libnpmconfig": "^1.2.1", + "lockfile": "^1.0.4", + "mkdirp": "^1.0.3", + "pacote": "^11.0.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", @@ -116,6 +119,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^4.8.4", "jsdoc": "^3.6.3", + "mock-require": "^3.0.3", "nyc": "^15.0.0", "open-cli": "^5.0.0", "rimraf": "^3.0.2", diff --git a/packages/project/test/lib/normalizer.js b/packages/project/test/lib/normalizer.js index 43a48a366e2..e5d0d4d1040 100644 --- a/packages/project/test/lib/normalizer.js +++ b/packages/project/test/lib/normalizer.js @@ -1,20 +1,28 @@ const test = require("ava"); const sinon = require("sinon"); const normalizer = require("../..").normalizer; -const npmTranslatorStub = sinon.stub(require("../..").translators.npm); -const staticTranslatorStub = sinon.stub(require("../..").translators.static); const projectPreprocessor = require("../../lib/projectPreprocessor"); +const ui5Framework = require("../../lib/translators/ui5Framework"); + +test.beforeEach((t) => { + t.context.npmTranslatorStub = sinon.stub(require("../..").translators.npm); + t.context.staticTranslatorStub = sinon.stub(require("../..").translators.static); +}); + +test.afterEach.always(() => { + sinon.restore(); +}); test.serial("Uses npm translator as default strategy", (t) => { normalizer.generateDependencyTree(); - t.truthy(npmTranslatorStub.generateDependencyTree.called); + t.truthy(t.context.npmTranslatorStub.generateDependencyTree.called); }); test.serial("Uses static translator as strategy", (t) => { normalizer.generateDependencyTree({ translatorName: "static" }); - t.truthy(staticTranslatorStub.generateDependencyTree.called); + t.truthy(t.context.staticTranslatorStub.generateDependencyTree.called); }); test.serial("Generate project tree using with overwritten config path", async (t) => { @@ -24,11 +32,35 @@ test.serial("Generate project tree using with overwritten config path", async (t t.deepEqual(projectPreprocessorStub.getCall(0).args[0], { configPath: "newPath/config.json" }, "Process tree with config loaded from custom path"); - projectPreprocessorStub.restore(); - normalizer.generateDependencyTree.restore(); }); -test("Error: Throws if unknown translator should be used as strategy", async (t) => { +test.serial("Pass frameworkOptions to ui5Framework translator", async (t) => { + const options = { + frameworkOptions: { + versionOverride: "1.2.3" + } + }; + const tree = { + metadata: { + name: "test" + }, + framework: {} + }; + + sinon.stub(normalizer, "generateDependencyTree").resolves({configPath: "defaultPath/config.json"}); + sinon.stub(projectPreprocessor, "processTree").resolves(tree); + + const ui5FrameworkGenerateDependencyTreeStub = sinon.stub(ui5Framework, "generateDependencyTree").resolves(null); + + await normalizer.generateProjectTree(options); + + t.is(ui5FrameworkGenerateDependencyTreeStub.callCount, 1, + "ui5Framework.generateDependencyTree should be called once"); + t.deepEqual(ui5FrameworkGenerateDependencyTreeStub.getCall(0).args, [tree, {versionOverride: "1.2.3"}], + "ui5Framework.generateDependencyTree should be called with expected args"); +}); + +test.serial("Error: Throws if unknown translator should be used as strategy", async (t) => { const translatorName = "notExistingTranslator"; return normalizer.generateDependencyTree({ translatorName diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js new file mode 100644 index 00000000000..4b7f507b8aa --- /dev/null +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -0,0 +1,801 @@ +const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); +const path = require("path"); +const os = require("os"); + +const pacote = require("pacote"); +const libnpmconfig = require("libnpmconfig"); +const lockfile = require("lockfile"); +const logger = require("@ui5/logger"); +const normalizer = require("../../../lib/normalizer"); +const projectPreprocessor = require("../../../lib/projectPreprocessor"); +let ui5Framework; +let Installer; + +// Use path within project as mocking base directory to reduce chance of side effects +// in case mocks/stubs do not work and real fs is used +const fakeBaseDir = path.join(__dirname, "fake-tmp"); +const ui5FrameworkBaseDir = path.join(fakeBaseDir, "homedir", ".ui5", "framework"); +const ui5PackagesBaseDir = path.join(ui5FrameworkBaseDir, "packages"); + +test.beforeEach((t) => { + sinon.stub(libnpmconfig, "read").returns({ + toJSON: () => { + return { + registry: "https://registry.fake", + cache: path.join(ui5FrameworkBaseDir, "cacache"), + proxy: "" + }; + } + }); + sinon.stub(os, "homedir").returns(path.join(fakeBaseDir, "homedir")); + + sinon.stub(lockfile, "lock").yieldsAsync(); + sinon.stub(lockfile, "unlock").yieldsAsync(); + + mock("mkdirp", sinon.stub().resolves()); + + // Re-require to ensure that mocked modules are used + ui5Framework = mock.reRequire("../../../lib/translators/ui5Framework"); + Installer = require("../../../lib/ui5Framework/npm/Installer"); +}); + +test.afterEach.always((t) => { + sinon.restore(); + mock.stopAll(); + logger.setLevel("info"); // default log level +}); + +function defineTest(testName, { + frameworkName, + verbose = false +}) { + const npmScope = frameworkName === "SAPUI5" ? "@sapui5" : "@openui5"; + + const distributionMetadata = { + libraries: { + "sap.ui.lib1": { + npmPackageName: "@sapui5/sap.ui.lib1", + version: "1.75.1", + dependencies: [], + optionalDependencies: [] + }, + "sap.ui.lib2": { + npmPackageName: "@sapui5/sap.ui.lib2", + version: "1.75.2", + dependencies: [ + "sap.ui.lib3" + ], + optionalDependencies: [] + }, + "sap.ui.lib3": { + npmPackageName: "@sapui5/sap.ui.lib3", + version: "1.75.3", + dependencies: [], + optionalDependencies: [ + "sap.ui.lib4" + ] + }, + "sap.ui.lib4": { + npmPackageName: "@openui5/sap.ui.lib4", + version: "1.75.4", + dependencies: [ + "sap.ui.lib1" + ], + optionalDependencies: [] + } + } + }; + + function project({name, version, type, framework, _level, dependencies = []}) { + const proj = { + _level, + id: name + "-id", + version, + path: path.join(fakeBaseDir, "project-" + name), + specVersion: "1.1", + kind: "project", + type, + metadata: { + name + }, + dependencies + }; + if (framework) { + proj.framework = framework; + } + return proj; + } + function frameworkProject({name, _level, dependencies = []}) { + const metadata = frameworkName === "SAPUI5" ? distributionMetadata.libraries[name] : null; + const id = frameworkName === "SAPUI5" ? metadata.npmPackageName : npmScope + "/" + name; + const version = frameworkName === "SAPUI5" ? metadata.version : "1.75.0"; + return { + _level, + id, + version, + path: path.join( + ui5PackagesBaseDir, + // sap.ui.lib4 is in @openui5 scope in SAPUI5 and OpenUI5 + name === "sap.ui.lib4" ? "@openui5" : npmScope, + name, version + ), + specVersion: "1.0", + kind: "project", + type: "library", + metadata: { + name + }, + framework: { + libraries: [] + }, + dependencies + }; + } + + test.serial(`${frameworkName}: ${verbose ? "(verbose) " : ""}${testName}`, async (t) => { + // Enable verbose logging + if (verbose) { + logger.setLevel("verbose"); + } + + const translatorTree = { + id: "test-application-id", + version: "1.2.3", + path: path.join(fakeBaseDir, "project-test-application"), + dependencies: [ + { + id: "test-dependency-id", + version: "4.5.6", + path: path.join(fakeBaseDir, "project-test-dependency"), + dependencies: [] + }, + { + id: "test-dependency-no-framework-id", + version: "7.8.9", + path: path.join(fakeBaseDir, "project-test-dependency-no-framework"), + dependencies: [] + } + ] + }; + + sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); + + sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "readConfigFile") + .callsFake(async (configPath) => { + throw new Error("ProjectPreprocessor#readConfigFile stub called with unknown configPath: " + configPath); + }) + .withArgs(path.join(fakeBaseDir, "project-test-application", "ui5.yaml")) + .resolves([{ + specVersion: "1.1", + type: "application", + metadata: { + name: "test-application" + }, + framework: { + name: frameworkName, + version: "1.75.0", + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib4", + optional: true + } + ] + } + }]) + .withArgs(path.join(fakeBaseDir, "project-test-dependency", "ui5.yaml")) + .resolves([{ + specVersion: "1.1", + type: "library", + metadata: { + name: "test-dependency" + }, + framework: { + version: "1.99.0", + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib2" + } + ] + } + }]) + .withArgs(path.join(fakeBaseDir, "project-test-dependency-no-framework", "ui5.yaml")) + .resolves([{ + specVersion: "1.1", + type: "library", + metadata: { + name: "test-dependency-no-framework" + } + }]) + .withArgs(path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib1", + frameworkName === "SAPUI5" ? "1.75.1" : "1.75.0", "ui5.yaml" + )) + .resolves([{ + specVersion: "1.0", + type: "library", + metadata: { + name: "sap.ui.lib1" + }, + framework: {libraries: []} + }]) + .withArgs(path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib2", + frameworkName === "SAPUI5" ? "1.75.2" : "1.75.0", "ui5.yaml" + )) + .resolves([{ + specVersion: "1.0", + type: "library", + metadata: { + name: "sap.ui.lib2" + }, + framework: {libraries: []} + }]) + .withArgs(path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib3", + frameworkName === "SAPUI5" ? "1.75.3" : "1.75.0", "ui5.yaml" + )) + .resolves([{ + specVersion: "1.0", + type: "library", + metadata: { + name: "sap.ui.lib3" + }, + framework: {libraries: []} + }]) + .withArgs(path.join(ui5PackagesBaseDir, "@openui5", "sap.ui.lib4", + frameworkName === "SAPUI5" ? "1.75.4" : "1.75.0", "ui5.yaml" + )) + .resolves([{ + specVersion: "1.0", + type: "library", + metadata: { + name: "sap.ui.lib4" + }, + framework: {libraries: []} + }]); + + // Prevent applying types as this would require a lot of mocking + sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "applyType"); + + sinon.stub(pacote, "extract").resolves(); + + if (frameworkName === "OpenUI5") { + sinon.stub(pacote, "manifest") + .callsFake(async (spec) => { + throw new Error("pacote.manifest stub called with unknown spec: " + spec); + }) + .withArgs("@openui5/sap.ui.lib1@1.75.0") + .resolves({ + name: "@openui5/sap.ui.lib1", + version: "1.75.0", + dependencies: {} + }) + .withArgs("@openui5/sap.ui.lib2@1.75.0") + .resolves({ + name: "@openui5/sap.ui.lib2", + version: "1.75.0", + dependencies: { + "@openui5/sap.ui.lib3": "1.75.0" + } + }) + .withArgs("@openui5/sap.ui.lib3@1.75.0") + .resolves({ + name: "@openui5/sap.ui.lib3", + version: "1.75.0", + devDependencies: { + "@openui5/sap.ui.lib4": "1.75.0" + } + }) + .withArgs("@openui5/sap.ui.lib4@1.75.0") + .resolves({ + name: "@openui5/sap.ui.lib4", + version: "1.75.0", + dependencies: { + "@openui5/sap.ui.lib1": "1.75.0" + } + }); + } else if (frameworkName === "SAPUI5") { + sinon.stub(Installer.prototype, "readJson") + .callsFake(async (path) => { + throw new Error("Installer#readJson stub called with unknown path: " + path); + }) + .withArgs(path.join(fakeBaseDir, + "homedir", ".ui5", "framework", "packages", + "@sapui5", "distribution-metadata", "1.75.0", + "metadata.json")) + .resolves(distributionMetadata); + } + + const expectedTree = project({ + _level: 0, + name: "test-application", + version: "1.2.3", + type: "application", + framework: { + name: frameworkName, + version: "1.75.0", + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib4", + optional: true + } + ] + }, + dependencies: [ + project({ + _level: 1, + name: "test-dependency", + version: "4.5.6", + type: "library", + framework: { + version: "1.99.0", + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib2" + } + ] + }, + dependencies: [ + frameworkProject({ + _level: 1, + name: "sap.ui.lib1", + }), + frameworkProject({ + _level: 1, + name: "sap.ui.lib2", + dependencies: [ + frameworkProject({ + _level: 2, + name: "sap.ui.lib3", + dependencies: [ + frameworkProject({ + name: "sap.ui.lib4", + _level: 1, + dependencies: [ + frameworkProject({ + _level: 1, + name: "sap.ui.lib1" + }) + ] + }) + ] + }) + ] + }) + ] + }), + project({ + _level: 1, + name: "test-dependency-no-framework", + version: "7.8.9", + type: "library" + }), + frameworkProject({ + _level: 1, + name: "sap.ui.lib1", + }), + frameworkProject({ + name: "sap.ui.lib4", + _level: 1, + dependencies: [ + frameworkProject({ + _level: 1, + name: "sap.ui.lib1" + }) + ] + }) + ] + }); + + const tree = await normalizer.generateProjectTree(); + + t.deepEqual(tree, expectedTree, "Returned tree should be correct"); + }); +} + +defineTest("ui5Framework translator should enhance tree with UI5 framework libraries", { + frameworkName: "SAPUI5" +}); +defineTest("ui5Framework translator should enhance tree with UI5 framework libraries", { + frameworkName: "SAPUI5", + verbose: true +}); +defineTest("ui5Framework translator should enhance tree with UI5 framework libraries", { + frameworkName: "OpenUI5" +}); +defineTest("ui5Framework translator should enhance tree with UI5 framework libraries", { + frameworkName: "OpenUI5", + verbose: true +}); + +function defineErrorTest(testName, { + frameworkName, + failExtract = false, + failMetadata = false, + expectedErrorMessage +}) { + test.serial(testName, async (t) => { + const translatorTree = { + id: "test-id", + version: "1.2.3", + path: path.join(fakeBaseDir, "application-project"), + dependencies: [] + }; + + sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); + + sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "readConfigFile") + .callsFake(async (configPath) => { + throw new Error("ProjectPreprocessor#readConfigFile stub called with unknown configPath: " + configPath); + }) + .withArgs(path.join(fakeBaseDir, "application-project", "ui5.yaml")) + .resolves([{ + specVersion: "1.1", + type: "application", + metadata: { + name: "test-project" + }, + framework: { + name: frameworkName, + version: "1.75.0", + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib4", + optional: true + } + ] + } + }]); + + // Prevent applying types as this would require a lot of mocking + sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "applyType"); + + const extractStub = sinon.stub(pacote, "extract"); + extractStub.callsFake(async (spec) => { + throw new Error("pacote.extract stub called with unknown spec: " + spec); + }); + + const manifestStub = sinon.stub(pacote, "manifest"); + manifestStub.callsFake(async (spec) => { + throw new Error("pacote.manifest stub called with unknown spec: " + spec); + }); + + if (frameworkName === "SAPUI5") { + if (failExtract) { + extractStub + .withArgs("@sapui5/sap.ui.lib1@1.75.1") + .rejects(new Error("Failed extracting package @sapui5/sap.ui.lib1@1.75.1")) + .withArgs("@openui5/sap.ui.lib4@1.75.4") + .rejects(new Error("Failed extracting package @openui5/sap.ui.lib4@1.75.4")); + } else { + extractStub + .withArgs("@sapui5/sap.ui.lib1@1.75.1").resolves() + .withArgs("@openui5/sap.ui.lib4@1.75.4").resolves(); + } + if (failMetadata) { + extractStub + .withArgs("@sapui5/distribution-metadata@1.75.0") + .rejects(new Error("Failed extracting package @sapui5/distribution-metadata@1.75.0")); + } else { + extractStub + .withArgs("@sapui5/distribution-metadata@1.75.0") + .resolves(); + sinon.stub(Installer.prototype, "readJson") + .callThrough() + .withArgs(path.join(fakeBaseDir, + "homedir", ".ui5", "framework", "packages", + "@sapui5", "distribution-metadata", "1.75.0", + "metadata.json")) + .resolves({ + libraries: { + "sap.ui.lib1": { + npmPackageName: "@sapui5/sap.ui.lib1", + version: "1.75.1", + dependencies: [], + optionalDependencies: [] + }, + "sap.ui.lib2": { + npmPackageName: "@sapui5/sap.ui.lib2", + version: "1.75.2", + dependencies: [ + "sap.ui.lib3" + ], + optionalDependencies: [] + }, + "sap.ui.lib3": { + npmPackageName: "@sapui5/sap.ui.lib3", + version: "1.75.3", + dependencies: [], + optionalDependencies: [ + "sap.ui.lib4" + ] + }, + "sap.ui.lib4": { + npmPackageName: "@openui5/sap.ui.lib4", + version: "1.75.4", + dependencies: [ + "sap.ui.lib1" + ], + optionalDependencies: [] + } + } + }); + } + } else if (frameworkName === "OpenUI5") { + if (failExtract) { + extractStub + .withArgs("@openui5/sap.ui.lib1@1.75.0") + .rejects(new Error("Failed extracting package @openui5/sap.ui.lib1@1.75.0")) + .withArgs("@openui5/sap.ui.lib4@1.75.0") + .rejects(new Error("Failed extracting package @openui5/sap.ui.lib4@1.75.0")); + } else { + extractStub + .withArgs("@openui5/sap.ui.lib1@1.75.0") + .resolves() + .withArgs("@openui5/sap.ui.lib4@1.75.0") + .resolves(); + } + if (failMetadata) { + manifestStub + .withArgs("@openui5/sap.ui.lib1@1.75.0") + .rejects(new Error("Failed to read manifest of @openui5/sap.ui.lib1@1.75.0")) + .withArgs("@openui5/sap.ui.lib4@1.75.0") + .rejects(new Error("Failed to read manifest of @openui5/sap.ui.lib4@1.75.0")); + } else { + manifestStub + .withArgs("@openui5/sap.ui.lib1@1.75.0") + .resolves({ + name: "@openui5/sap.ui.lib1", + version: "1.75.0", + dependencies: {} + }) + .withArgs("@openui5/sap.ui.lib4@1.75.0") + .resolves({ + name: "@openui5/sap.ui.lib4", + version: "1.75.0" + }); + } + } + + await t.throwsAsync(async () => { + await normalizer.generateProjectTree(); + }, expectedErrorMessage); + }); +} + +defineErrorTest("SAPUI5: ui5Framework translator should throw a proper error when metadata request fails", { + frameworkName: "SAPUI5", + failMetadata: true, + expectedErrorMessage: `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib1: Failed extracting package @sapui5/distribution-metadata@1.75.0 +Failed to resolve library sap.ui.lib4: Failed extracting package @sapui5/distribution-metadata@1.75.0` // TODO: should only be returned once? +}); +defineErrorTest("SAPUI5: ui5Framework translator should throw a proper error when package extraction fails", { + frameworkName: "SAPUI5", + failExtract: true, + expectedErrorMessage: `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib1: Failed extracting package @sapui5/sap.ui.lib1@1.75.1 +Failed to resolve library sap.ui.lib4: Failed extracting package @openui5/sap.ui.lib4@1.75.4` +}); +defineErrorTest("SAPUI5: ui5Framework translator should throw a proper error when metadata request and package extraction fails", { + frameworkName: "SAPUI5", + failMetadata: true, + failExtract: true, + expectedErrorMessage: `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib1: Failed extracting package @sapui5/distribution-metadata@1.75.0 +Failed to resolve library sap.ui.lib4: Failed extracting package @sapui5/distribution-metadata@1.75.0` +}); + + +defineErrorTest("OpenUI5: ui5Framework translator should throw a proper error when metadata request fails", { + frameworkName: "OpenUI5", + failMetadata: true, + expectedErrorMessage: `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib1: Failed to read manifest of @openui5/sap.ui.lib1@1.75.0 +Failed to resolve library sap.ui.lib4: Failed to read manifest of @openui5/sap.ui.lib4@1.75.0` +}); +defineErrorTest("OpenUI5: ui5Framework translator should throw a proper error when package extraction fails", { + frameworkName: "OpenUI5", + failExtract: true, + expectedErrorMessage: `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib1: Failed extracting package @openui5/sap.ui.lib1@1.75.0 +Failed to resolve library sap.ui.lib4: Failed extracting package @openui5/sap.ui.lib4@1.75.0` +}); +defineErrorTest("OpenUI5: ui5Framework translator should throw a proper error when metadata request and package extraction fails", { + frameworkName: "OpenUI5", + failMetadata: true, + failExtract: true, + expectedErrorMessage: `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib1: Failed to read manifest of @openui5/sap.ui.lib1@1.75.0 +Failed to resolve library sap.ui.lib4: Failed to read manifest of @openui5/sap.ui.lib4@1.75.0` +}); + +test.serial("ui5Framework translator should not be called when no framework configuration is given", async (t) => { + const translatorTree = { + id: "test-id", + version: "1.2.3", + path: path.join(fakeBaseDir, "application-project"), + dependencies: [] + }; + const projectPreprocessorTree = Object.assign({}, translatorTree, { + specVersion: "1.1", + type: "application", + metadata: { + name: "test-project" + } + }); + + sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); + sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); + + const ui5FrameworkMock = sinon.mock(ui5Framework); + ui5FrameworkMock.expects("generateDependencyTree").never(); + + const expectedTree = projectPreprocessorTree; + + const tree = await normalizer.generateProjectTree(); + + t.deepEqual(tree, expectedTree, "Returned tree should be correct"); + ui5FrameworkMock.verify(); +}); + +test.serial("ui5Framework translator should not try to install anything when no library is referenced", async (t) => { + const translatorTree = { + id: "test-id", + version: "1.2.3", + path: path.join(fakeBaseDir, "application-project"), + dependencies: [] + }; + const projectPreprocessorTree = Object.assign({}, translatorTree, { + specVersion: "1.1", + type: "application", + metadata: { + name: "test-project" + }, + framework: { + name: "SAPUI5", + version: "1.75.0" + } + }); + + sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); + sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); + + const extractStub = sinon.stub(pacote, "extract"); + const manifestStub = sinon.stub(pacote, "manifest"); + + await normalizer.generateProjectTree(); + + t.is(extractStub.callCount, 0, "No package should be extracted"); + t.is(manifestStub.callCount, 0, "No manifest should be requested"); +}); + +test.serial("ui5Framework translator should throw an error when framework version is not defined", async (t) => { + const translatorTree = { + id: "test-id", + version: "1.2.3", + path: path.join(fakeBaseDir, "application-project"), + dependencies: [] + }; + const projectPreprocessorTree = Object.assign({}, translatorTree, { + specVersion: "1.1", + type: "application", + metadata: { + name: "test-project" + }, + framework: { + name: "SAPUI5" + } + }); + + sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); + sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); + + await t.throwsAsync(async () => { + await normalizer.generateProjectTree(); + }, `framework.version is not defined for project test-id`); +}); + +test.serial("ui5Framework translator should throw an error when framework name is not supported", async (t) => { + const translatorTree = { + id: "test-id", + version: "1.2.3", + path: path.join(fakeBaseDir, "application-project"), + dependencies: [] + }; + const projectPreprocessorTree = Object.assign({}, translatorTree, { + specVersion: "1.1", + type: "application", + metadata: { + name: "test-project" + }, + framework: { + name: "UI5" + } + }); + + sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); + sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); + + await t.throwsAsync(async () => { + await normalizer.generateProjectTree(); + }, `Unknown framework.name "UI5" for project test-id. Must be "OpenUI5" or "SAPUI5"`); +}); + +test.serial("SAPUI5: ui5Framework translator should throw error when using a library that is not part of the dist metadata", async (t) => { + const translatorTree = { + id: "test-id", + version: "1.2.3", + path: path.join(fakeBaseDir, "application-project"), + dependencies: [] + }; + const projectPreprocessorTree = Object.assign({}, translatorTree, { + specVersion: "1.1", + type: "application", + metadata: { + name: "test-project" + }, + framework: { + name: "SAPUI5", + version: "1.75.0", + libraries: [ + {name: "sap.ui.lib1"}, + {name: "does.not.exist"}, + {name: "sap.ui.lib4"}, + ] + } + }); + + sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); + sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); + + sinon.stub(pacote, "extract").resolves(); + + sinon.stub(Installer.prototype, "readJson") + .callThrough() + .withArgs(path.join(fakeBaseDir, + "homedir", ".ui5", "framework", "packages", + "@sapui5", "distribution-metadata", "1.75.0", + "metadata.json")) + .resolves({ + libraries: { + "sap.ui.lib1": { + npmPackageName: "@sapui5/sap.ui.lib1", + version: "1.75.1", + dependencies: [], + optionalDependencies: [] + }, + "sap.ui.lib4": { + npmPackageName: "@openui5/sap.ui.lib4", + version: "1.75.4", + dependencies: [ + "sap.ui.lib1" + ], + optionalDependencies: [] + } + } + }); + + await t.throwsAsync(async () => { + await normalizer.generateProjectTree(); + }, `Resolution of framework libraries failed with errors: +Failed to resolve library does.not.exist: Could not find library "does.not.exist"`); +}); + +// TODO test: Should not download packages again in case they are already installed + +// TODO test: Should ignore framework libraries in dependencies diff --git a/packages/project/test/lib/translators/ui5Framework.js b/packages/project/test/lib/translators/ui5Framework.js new file mode 100644 index 00000000000..91908449938 --- /dev/null +++ b/packages/project/test/lib/translators/ui5Framework.js @@ -0,0 +1,316 @@ +const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); + +let ui5Framework; +let utils; + +test.beforeEach((t) => { + t.context.Sapui5ResolverStub = sinon.stub(); + t.context.Sapui5ResolverInstallStub = sinon.stub(); + t.context.Sapui5ResolverStub.callsFake(() => { + return { + install: t.context.Sapui5ResolverInstallStub + }; + }); + mock("../../../lib/ui5Framework/Sapui5Resolver", t.context.Sapui5ResolverStub); + + t.context.Openui5ResolverStub = sinon.stub(); + mock("../../../lib/ui5Framework/Openui5Resolver", t.context.Openui5ResolverStub); + + ui5Framework = mock.reRequire("../../../lib/translators/ui5Framework"); + utils = ui5Framework._utils; +}); + +test.afterEach.always((t) => { + sinon.restore(); + mock.stopAll(); +}); + +test.serial("generateDependencyTree", async (t) => { + const tree = { + id: "test1", + version: "1.0.0", + path: "/test-project/", + framework: { + name: "SAPUI5", + version: "1.75.0" + } + }; + + const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; + const libraryMetadata = {fake: "metadata"}; + + const getFrameworkLibrariesFromTreeStub = sinon.stub(utils, "getFrameworkLibrariesFromTree") + .returns(referencedLibraries); + + t.context.Sapui5ResolverInstallStub.resolves({libraryMetadata}); + + const getProjectStub = sinon.stub(); + getProjectStub.onFirstCall().returns({fake: "metadata-project-1"}); + getProjectStub.onSecondCall().returns({fake: "metadata-project-2"}); + getProjectStub.onThirdCall().returns({fake: "metadata-project-3"}); + const ProjectProcessorStub = sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + getProject: getProjectStub + }; + }); + + const ui5FrameworkTree = await ui5Framework.generateDependencyTree(tree); + + t.is(getFrameworkLibrariesFromTreeStub.callCount, 1, "getFrameworkLibrariesFromTree should be called once"); + t.deepEqual(getFrameworkLibrariesFromTreeStub.getCall(0).args, [tree], + "getFrameworkLibrariesFromTree should be called with expected args"); + + t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{cwd: tree.path, version: tree.framework.version}], + "Sapui5Resolver#constructor should be called with expected args"); + + t.is(t.context.Sapui5ResolverInstallStub.callCount, 1, "Sapui5Resolver#install should be called once"); + t.deepEqual(t.context.Sapui5ResolverInstallStub.getCall(0).args, [referencedLibraries], + "Sapui5Resolver#install should be called with expected args"); + + t.is(ProjectProcessorStub.callCount, 1, "ProjectProcessor#constructor should be called once"); + t.deepEqual(ProjectProcessorStub.getCall(0).args, [{libraryMetadata}], + "ProjectProcessor#constructor should be called with expected args"); + + t.is(getProjectStub.callCount, 3, "ProjectProcessor#getProject should be called 3 times"); + t.deepEqual(getProjectStub.getCall(0).args, [referencedLibraries[0]], + "Sapui5Resolver#getProject should be called with expected args (call 1)"); + t.deepEqual(getProjectStub.getCall(1).args, [referencedLibraries[1]], + "Sapui5Resolver#getProject should be called with expected args (call 2)"); + t.deepEqual(getProjectStub.getCall(2).args, [referencedLibraries[2]], + "Sapui5Resolver#getProject should be called with expected args (call 3)"); + + t.deepEqual(ui5FrameworkTree, { + id: "test1", + version: "1.0.0", + path: "/test-project/", + dependencies: [ + {fake: "metadata-project-1"}, + {fake: "metadata-project-2"}, + {fake: "metadata-project-3"} + ] + }); +}); + +test.serial("generateDependencyTree (with versionOverride)", async (t) => { + const tree = { + id: "test1", + version: "1.0.0", + path: "/test-project/", + framework: { + name: "SAPUI5", + version: "1.75.0" + } + }; + + const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; + const libraryMetadata = {fake: "metadata"}; + + sinon.stub(utils, "getFrameworkLibrariesFromTree").returns(referencedLibraries); + + t.context.Sapui5ResolverInstallStub.resolves({libraryMetadata}); + + const getProjectStub = sinon.stub(); + getProjectStub.onFirstCall().returns({fake: "metadata-project-1"}); + getProjectStub.onSecondCall().returns({fake: "metadata-project-2"}); + getProjectStub.onThirdCall().returns({fake: "metadata-project-3"}); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + getProject: getProjectStub + }; + }); + + await ui5Framework.generateDependencyTree(tree, {versionOverride: "1.99.0"}); + + t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{cwd: tree.path, version: "1.99.0"}], + "Sapui5Resolver#constructor should be called with expected args"); +}); + +test.serial("generateDependencyTree should throw error when no framework version is provided in tree", async (t) => { + const tree = { + id: "test-id", + version: "1.2.3", + path: "/test-project/", + metadata: { + name: "test-name" + }, + framework: { + name: "SAPUI5" + } + }; + + await t.throwsAsync(async () => { + await ui5Framework.generateDependencyTree(tree); + }, "framework.version is not defined for project test-id"); + + await t.throwsAsync(async () => { + await ui5Framework.generateDependencyTree(tree, { + versionOverride: "1.75.0" + }); + }, "framework.version is not defined for project test-id"); +}); + +test.serial("generateDependencyTree should ignore root project without framework configuration", async (t) => { + const tree = { + id: "test-id", + version: "1.2.3", + path: "/test-project/", + metadata: { + name: "test-name" + }, + dependencies: [] + }; + const ui5FrameworkTree = await ui5Framework.generateDependencyTree(tree); + + t.is(ui5FrameworkTree, null, "No framework tree should be returned"); +}); +test.serial("utils.isFrameworkProject", (t) => { + t.true(utils.isFrameworkProject({id: "@sapui5/foo"}), "@sapui5/foo"); + t.true(utils.isFrameworkProject({id: "@openui5/foo"}), "@openui5/foo"); + t.false(utils.isFrameworkProject({id: "sapui5"}), "sapui5"); + t.false(utils.isFrameworkProject({id: "openui5"}), "openui5"); +}); +test.serial("utils.shouldIncludeDependency", (t) => { + // root project dependency should always be included + t.true(utils.shouldIncludeDependency({}, true)); + t.true(utils.shouldIncludeDependency({optional: true}, true)); + t.true(utils.shouldIncludeDependency({optional: false}, true)); + t.true(utils.shouldIncludeDependency({optional: null}, true)); + t.true(utils.shouldIncludeDependency({optional: "abc"}, true)); + t.true(utils.shouldIncludeDependency({development: true}, true)); + t.true(utils.shouldIncludeDependency({development: false}, true)); + t.true(utils.shouldIncludeDependency({development: null}, true)); + t.true(utils.shouldIncludeDependency({development: "abc"}, true)); + t.true(utils.shouldIncludeDependency({foo: true}, true)); + + t.true(utils.shouldIncludeDependency({}, false)); + t.false(utils.shouldIncludeDependency({optional: true}, false)); + t.true(utils.shouldIncludeDependency({optional: false}, false)); + t.true(utils.shouldIncludeDependency({optional: null}, false)); + t.true(utils.shouldIncludeDependency({optional: "abc"}, false)); + t.false(utils.shouldIncludeDependency({development: true}, false)); + t.true(utils.shouldIncludeDependency({development: false}, false)); + t.true(utils.shouldIncludeDependency({development: null}, false)); + t.true(utils.shouldIncludeDependency({development: "abc"}, false)); + t.true(utils.shouldIncludeDependency({foo: true}, false)); + + // Having both optional and development should not be the case, but that should be validated beforehand + t.true(utils.shouldIncludeDependency({optional: true, development: true}, true)); + t.false(utils.shouldIncludeDependency({optional: true, development: true}, false)); +}); +test.serial("utils.getFrameworkLibrariesFromTree: Project without dependencies", (t) => { + const tree = { + id: "test", + metadata: { + name: "test" + }, + framework: { + libraries: [] + }, + dependencies: [] + }; + const ui5Dependencies = utils.getFrameworkLibrariesFromTree(tree); + t.deepEqual(ui5Dependencies, []); +}); + +test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dependency with libraries", (t) => { + const tree = { + id: "test1", + metadata: { + name: "test1" + }, + framework: { + libraries: [ + { + name: "lib1" + }, + { + name: "lib2", + optional: true + }, + { + name: "lib6", + development: true + } + ] + }, + dependencies: [ + { + id: "test2", + metadata: { + name: "test2" + }, + framework: { + libraries: [ + { + name: "lib3" + }, + { + name: "lib4", + optional: true + } + ] + }, + dependencies: [ + { + id: "test3", + metadata: { + name: "test3" + }, + framework: { + libraries: [ + { + name: "lib5" + }, + { + name: "lib7", + development: true + } + ] + }, + dependencies: [] + } + ] + }, + { + id: "@sapui5/lib8", + metadata: { + name: "lib8" + }, + framework: { + libraries: [ + { + name: "should.be.ignored" + } + ] + }, + dependencies: [] + }, + { + id: "@openui5/lib9", + metadata: { + name: "lib9" + }, + dependencies: [] + }, + { + id: "@foo/library", + metadata: { + name: "foo.library" + }, + dependencies: [] + } + ] + }; + const ui5Dependencies = utils.getFrameworkLibrariesFromTree(tree); + t.deepEqual(ui5Dependencies, ["lib1", "lib2", "lib6", "lib3", "lib5"]); +}); + +// TODO test: utils.getAllNodesOfTree + +// TODO test: ProjectProcessor diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js new file mode 100644 index 00000000000..6117e4ae6ac --- /dev/null +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -0,0 +1,263 @@ +const test = require("ava"); +const sinon = require("sinon"); +const path = require("path"); + +const AbstractResolver = require("../../../lib/ui5Framework/AbstractResolver"); + +class MyResolver extends AbstractResolver {} + +test("AbstractResolver: abstract constructor should throw", async (t) => { + await t.throwsAsync(async () => { + new AbstractResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + }, `Class 'AbstractResolver' is abstract`); +}); + +test("AbstractResolver: constructor", (t) => { + const resolver = new MyResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + t.true(resolver instanceof MyResolver, "Constructor returns instance of sub-class"); + t.true(resolver instanceof AbstractResolver, "Constructor returns instance of abstract class"); +}); + +test("AbstractResolver: constructor requires 'version'", (t) => { + t.throws(() => { + new MyResolver({}); + }, `AbstractResolver: Missing parameter "version"`); +}); + +test("AbstractResolver: Set 'cwd'", (t) => { + const resolver = new MyResolver({ + version: "1.75.0", + cwd: "/my-cwd/" + }); + t.is(resolver._cwd, "/my-cwd/", "Should be given 'cwd'"); +}); + +test("AbstractResolver: Defaults 'cwd' to process.cwd()", (t) => { + const resolver = new MyResolver({ + version: "1.75.0", + ui5HomeDir: "/ui5home/" + }); + t.is(resolver._cwd, process.cwd(), "Should default to process.cwd()"); +}); + +test("AbstractResolver: Set 'ui5HomeDir'", (t) => { + const resolver = new MyResolver({ + version: "1.75.0", + ui5HomeDir: "/my-ui5HomeDir/" + }); + t.is(resolver._ui5HomeDir, "/my-ui5HomeDir/", "Should be given 'ui5HomeDir'"); +}); + +test("AbstractResolver: Defaults 'ui5HomeDir' to ~/.ui5", (t) => { + const resolver = new MyResolver({ + version: "1.75.0", + cwd: "/test-project/" + }); + t.is(resolver._ui5HomeDir, path.join(require("os").homedir(), ".ui5"), "Should default to ~/.ui5"); +}); + +test("AbstractResolver: handleLibrary should throw an Error when not implemented", async (t) => { + await t.throwsAsync(async () => { + const resolver = new MyResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + await resolver.handleLibrary(); + }, `AbstractResolver: handleLibrary must be implemented!`); +}); + +test("AbstractResolver: install", async (t) => { + const resolver = new MyResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const metadata = { + libraries: { + "sap.ui.lib1": { + "npmPackageName": "@openui5/sap.ui.lib1", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [] + }, + "sap.ui.lib2": { + "npmPackageName": "@openui5/sap.ui.lib2", + "version": "1.75.0", + "dependencies": [ + "sap.ui.lib3" + ], + "optionalDependencies": [] + }, + "sap.ui.lib3": { + "npmPackageName": "@openui5/sap.ui.lib3", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [ + "sap.ui.lib4" + ] + }, + "sap.ui.lib4": { + "npmPackageName": "@openui5/sap.ui.lib4", + "version": "1.75.0", + "dependencies": [ + "sap.ui.lib1" + ], + "optionalDependencies": [] + } + } + }; + + const handleLibraryStub = sinon.stub(resolver, "handleLibrary"); + handleLibraryStub + .callsFake(async (libraryName) => { + throw new Error(`Unknown handleLibrary call: ${libraryName}`); + }) + .withArgs("sap.ui.lib1").resolves({ + metadata: Promise.resolve(metadata.libraries["sap.ui.lib1"]), + install: Promise.resolve({pkgPath: "/foo/sap.ui.lib1"}) + }) + .withArgs("sap.ui.lib2").resolves({ + metadata: Promise.resolve(metadata.libraries["sap.ui.lib2"]), + install: Promise.resolve({pkgPath: "/foo/sap.ui.lib2"}) + }) + .withArgs("sap.ui.lib3").resolves({ + metadata: Promise.resolve(metadata.libraries["sap.ui.lib3"]), + install: Promise.resolve({pkgPath: "/foo/sap.ui.lib3"}) + }) + .withArgs("sap.ui.lib4").resolves({ + metadata: Promise.resolve(metadata.libraries["sap.ui.lib4"]), + install: Promise.resolve({pkgPath: "/foo/sap.ui.lib4"}) + }); + + await resolver.install(["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib4"]); + + t.is(handleLibraryStub.callCount, 4, "Each library should be handled once"); +}); + +test("AbstractResolver: install error handling (rejection of metadata/install)", async (t) => { + const resolver = new MyResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const handleLibraryStub = sinon.stub(resolver, "handleLibrary"); + handleLibraryStub + .callsFake(async (libraryName) => { + throw new Error(`Unknown handleLibrary call: ${libraryName}`); + }) + .withArgs("sap.ui.lib1").resolves({ + metadata: Promise.reject(new Error("Error loading metadata for sap.ui.lib1")), + install: Promise.reject(new Error("Error installing sap.ui.lib1")) + }) + .withArgs("sap.ui.lib2").resolves({ + metadata: Promise.reject(new Error("Error loading metadata for sap.ui.lib2")), + install: Promise.reject(new Error("Error installing sap.ui.lib2")) + }); + + await t.throwsAsync(async () => { + await resolver.install(["sap.ui.lib1", "sap.ui.lib2"]); + }, `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib1: Error installing sap.ui.lib1 +Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`); + + t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); +}); + +test("AbstractResolver: install error handling (rejection of dependency metadata/install)", async (t) => { + const resolver = new MyResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const handleLibraryStub = sinon.stub(resolver, "handleLibrary"); + handleLibraryStub + .callsFake(async (libraryName) => { + throw new Error(`Unknown handleLibrary call: ${libraryName}`); + }) + .withArgs("sap.ui.lib1").resolves({ + metadata: Promise.resolve({ + dependencies: ["sap.ui.lib2"] + }), + install: Promise.resolve({pkgPath: "/foo/sap.ui.lib1"}) + }) + .withArgs("sap.ui.lib2").resolves({ + metadata: Promise.reject(new Error("Error loading metadata for sap.ui.lib2")), + install: Promise.reject(new Error("Error installing sap.ui.lib2")) + }); + + await t.throwsAsync(async () => { + await resolver.install(["sap.ui.lib1"]); + }, `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`); + + t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); +}); + +test("AbstractResolver: install error handling (rejection of dependency install)", async (t) => { + const resolver = new MyResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const handleLibraryStub = sinon.stub(resolver, "handleLibrary"); + handleLibraryStub + .callsFake(async (libraryName) => { + throw new Error(`Unknown handleLibrary call: ${libraryName}`); + }) + .withArgs("sap.ui.lib1").resolves({ + metadata: Promise.resolve({ + dependencies: ["sap.ui.lib2"] + }), + install: Promise.resolve({pkgPath: "/foo/sap.ui.lib1"}) + }) + .withArgs("sap.ui.lib2").callsFake(() => { + return { + metadata: Promise.resolve({ + dependencies: ["sap.ui.lib3"] + }), + install: Promise.resolve({pkgPath: "/foo/sap.ui.lib1"}) + }; + }) + .withArgs("sap.ui.lib3").callsFake(() => { + return { + metadata: Promise.resolve({ + dependencies: [] + }), + install: Promise.reject(new Error("Error installing sap.ui.lib3")) + }; + }); + + await t.throwsAsync(async () => { + await resolver.install(["sap.ui.lib1"]); + }, `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib3: Error installing sap.ui.lib3`); + + t.is(handleLibraryStub.callCount, 3, "Each library should be handled once"); +}); + +test("AbstractResolver: install error handling (handleLibrary throws error)", async (t) => { + const resolver = new MyResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const handleLibraryStub = sinon.stub(resolver, "handleLibrary"); + handleLibraryStub + .callsFake(async (libraryName) => { + throw new Error(`Error within handleLibrary: ${libraryName}`); + }); + + await t.throwsAsync(async () => { + await resolver.install(["sap.ui.lib1", "sap.ui.lib2"]); + }, `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib1: Error within handleLibrary: sap.ui.lib1 +Failed to resolve library sap.ui.lib2: Error within handleLibrary: sap.ui.lib2`); + + t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); +}); diff --git a/packages/project/test/lib/ui5framework/Openui5Resolver.js b/packages/project/test/lib/ui5framework/Openui5Resolver.js new file mode 100644 index 00000000000..1f8c0e0d18f --- /dev/null +++ b/packages/project/test/lib/ui5framework/Openui5Resolver.js @@ -0,0 +1,113 @@ +const test = require("ava"); +const sinon = require("sinon"); + +const Openui5Resolver = require("../../../lib/ui5Framework/Openui5Resolver"); + +test("Openui5Resolver: _getNpmPackageName", (t) => { + t.is(Openui5Resolver._getNpmPackageName("foo"), "@openui5/foo"); +}); + +test("Openui5Resolver: _getLibaryName", (t) => { + t.is(Openui5Resolver._getLibaryName("@openui5/foo"), "foo"); + t.is(Openui5Resolver._getLibaryName("@something/else"), "@something/else"); +}); + +test("Openui5Resolver: _getLibraryMetadata", async (t) => { + const resolver = new Openui5Resolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const fetchPackageManifest = sinon.stub(resolver._installer, "fetchPackageManifest"); + fetchPackageManifest + .callsFake(async ({pkgName}) => { + throw new Error(`Unknown install call: ${pkgName}`); + }) + .withArgs({pkgName: "@openui5/sap.ui.lib1", version: "1.75.0"}).resolves({}) + .withArgs({pkgName: "@openui5/sap.ui.lib2", version: "1.75.0"}).resolves({ + dependencies: { + "sap.ui.lib3": "1.2.3" + }, + devDependencies: { + "sap.ui.lib4": "4.5.6" + } + }); + + async function assert(libraryName, expectedMetadata) { + const pLibraryMetadata = resolver._getLibraryMetadata(libraryName); + const pLibraryMetadata2 = resolver._getLibraryMetadata(libraryName); + + const libraryMetadata = await pLibraryMetadata; + t.deepEqual(libraryMetadata, expectedMetadata, + libraryName + ": First call should resolve with expected metadata"); + const libraryMetadata2 = await pLibraryMetadata2; + t.deepEqual(libraryMetadata2, expectedMetadata, + libraryName + ": Second call should also resolve with expected metadata"); + + const libraryMetadata3 = await resolver._getLibraryMetadata(libraryName); + + t.deepEqual(libraryMetadata3, expectedMetadata, + libraryName + ": Third call should still return the same metadata"); + } + + await assert("sap.ui.lib1", { + id: "@openui5/sap.ui.lib1", + version: "1.75.0", + dependencies: [], + optionalDependencies: [] + }); + + await assert("sap.ui.lib2", { + id: "@openui5/sap.ui.lib2", + version: "1.75.0", + dependencies: [ + "sap.ui.lib3" + ], + optionalDependencies: [ + "sap.ui.lib4" + ] + }); + + t.is(fetchPackageManifest.callCount, 2, "fetchPackageManifest should be called twice"); +}); + +test("Openui5Resolver: handleLibrary", async (t) => { + const resolver = new Openui5Resolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const getLibraryMetadataStub = sinon.stub(resolver, "_getLibraryMetadata"); + getLibraryMetadataStub + .callsFake(async (libraryName) => { + throw new Error("_getLibraryMetadata stub called with unknown libraryName: " + libraryName); + }) + .withArgs("sap.ui.lib1").resolves({ + "id": "@openui5/sap.ui.lib1", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [] + }); + + const _installPackage = sinon.stub(resolver._installer, "installPackage"); + _installPackage + .callsFake(async ({pkgName, version}) => { + throw new Error(`Unknown install call: ${pkgName}@${version}`); + }) + .withArgs({pkgName: "@openui5/sap.ui.lib1", version: "1.75.0"}).resolves({pkgPath: "/foo/sap.ui.lib1"}); + + const promises = await resolver.handleLibrary("sap.ui.lib1"); + + t.true(promises.metadata instanceof Promise, "Metadata promise should be returned"); + t.true(promises.install instanceof Promise, "Install promise should be returned"); + + const metadata = await promises.metadata; + t.deepEqual(metadata, { + "id": "@openui5/sap.ui.lib1", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [] + }, "Expected library metadata should be returned"); + + t.deepEqual(await promises.install, {pkgPath: "/foo/sap.ui.lib1"}, "Install should resolve with expected object"); +}); diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.js new file mode 100644 index 00000000000..bd8b7d7e314 --- /dev/null +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.js @@ -0,0 +1,96 @@ +const test = require("ava"); +const sinon = require("sinon"); +const path = require("path"); + +const Sapui5Resolver = require("../../../lib/ui5Framework/Sapui5Resolver"); + +test.serial("Sapui5Resolver: loadDistMetadata loads metadata once from @sapui5/distribution-metadata package", async (t) => { + const resolver = new Sapui5Resolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const getTargetDirForPackage = sinon.stub(resolver._installer, "_getTargetDirForPackage"); + getTargetDirForPackage.callsFake(({pkgName, version}) => { + throw new Error(`_getTargetDirForPackage stub called with unknown arguments pkgName: ${pkgName}, version: ${version}}`); + }); + getTargetDirForPackage.withArgs({ + pkgName: "@sapui5/distribution-metadata", + version: "1.75.0" + }).returns(path.join("/path", "to", "distribution-metadata", "1.75.0")); + const installPackage = sinon.stub(resolver._installer, "installPackage"); + installPackage.withArgs({ + pkgName: "@sapui5/distribution-metadata", + version: "1.75.0" + }).resolves({pkgPath: path.join("/path", "to", "distribution-metadata", "1.75.0")}); + + const expectedMetadata = { + libraries: { + "sap.ui.foo": { + "npmPackageName": "@openui5/sap.ui.foo", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [] + } + } + }; + sinon.stub(resolver._installer, "readJson") + .callThrough() + .withArgs(path.join("/path", "to", "distribution-metadata", "1.75.0", "metadata.json")) + .resolves(expectedMetadata); + + let distMetadata = await resolver.loadDistMetadata(); + t.is(installPackage.callCount, 1, "Distribution metadata package should be installed once"); + t.deepEqual(distMetadata, expectedMetadata, + "loadDistMetadata should resolve with expected metadata"); + + // Calling loadDistMetadata again should not load package again + distMetadata = await resolver.loadDistMetadata(); + + t.is(installPackage.callCount, 1, "Distribution metadata package should still be installed once"); + t.deepEqual(distMetadata, expectedMetadata, + "Metadata should still be the expected metadata after calling loadDistMetadata again"); +}); + +test("Sapui5Resolver: handleLibrary", async (t) => { + const resolver = new Sapui5Resolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const loadDistMetadataStub = sinon.stub(resolver, "loadDistMetadata"); + loadDistMetadataStub.resolves({ + libraries: { + "sap.ui.lib1": { + "npmPackageName": "@openui5/sap.ui.lib1", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [] + } + } + }); + + const installPackage = sinon.stub(resolver._installer, "installPackage"); + installPackage + .callsFake(async ({pkgName, version}) => { + throw new Error(`Unknown install call: ${pkgName}@${version}`); + }) + .withArgs({pkgName: "@openui5/sap.ui.lib1", version: "1.75.0"}).resolves({pkgPath: "/foo/sap.ui.lib1"}); + + + const promises = await resolver.handleLibrary("sap.ui.lib1"); + + t.true(promises.metadata instanceof Promise, "Metadata promise should be returned"); + t.true(promises.install instanceof Promise, "Install promise should be returned"); + + const metadata = await promises.metadata; + t.deepEqual(metadata, { + "id": "@openui5/sap.ui.lib1", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [] + }, "Expected library metadata should be returned"); + + t.deepEqual(await promises.install, {pkgPath: "/foo/sap.ui.lib1"}, "Install should resolve with expected object"); + t.is(loadDistMetadataStub.callCount, 1, "loadDistMetadata should be called once"); +}); diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js new file mode 100644 index 00000000000..66caa47d6cc --- /dev/null +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -0,0 +1,370 @@ +const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); +const path = require("path"); + +const lockfile = require("lockfile"); + +let Installer; + +test.beforeEach((t) => { + t.context.mkdirpStub = sinon.stub().resolves(); + mock("mkdirp", t.context.mkdirpStub); + + t.context.lockStub = sinon.stub(lockfile, "lock"); + t.context.unlockStub = sinon.stub(lockfile, "unlock"); + + // Re-require to ensure that mocked modules are used + Installer = mock.reRequire("../../../../lib/ui5Framework/npm/Installer"); +}); + +test.afterEach.always(() => { + sinon.restore(); + mock.stopAll(); +}); + +test.serial("Installer: constructor", (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + t.true(installer instanceof Installer, "Constructor returns instance of class"); + t.is(installer._baseDir, path.join("/ui5Home/", "framework", "packages")); + t.is(installer._lockDir, path.join("/ui5Home/", "framework", "locks")); +}); + +test.serial("Installer: constructor requires 'cwd'", (t) => { + t.throws(() => { + new Installer({}); + }, `Installer: Missing parameter "cwd"`); +}); + +test.serial("Installer: constructor requires 'ui5HomeDir'", (t) => { + t.throws(() => { + new Installer({ + cwd: "/cwd/" + }); + }, `Installer: Missing parameter "ui5HomeDir"`); +}); + +test.serial("Installer: _getLockPath", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + const lockPath = installer._getLockPath({ + pkgName: "@openui5/sap.ui.lib1", + version: "1.2.3" + }); + + t.is(lockPath, path.join("/ui5Home/", "framework", "locks", "package-@openui5-sap.ui.lib1@1.2.3.lock")); +}); + +test.serial("Installer: fetchPackageManifest (without existing package.json)", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + const mockedManifest = { + name: "myPackage", + dependencies: { + "foo": "1.2.3" + }, + devDependencies: { + "bar": "4.5.6" + }, + foo: "bar" + }; + + const expectedManifest = { + name: "myPackage", + dependencies: { + "foo": "1.2.3" + }, + devDependencies: { + "bar": "4.5.6" + } + }; + + const requestPackageManifestStub = sinon.stub(installer._registry, "requestPackageManifest") + .callsFake((pkgName, version) => { + throw new Error( + "_registry.requestPackageManifest stub called with unknown arguments " + + `pkgName: ${pkgName}, version: ${version}}` + ); + }) + .withArgs("myPackage", "1.2.3").resolves(mockedManifest); + + const readJsonStub = sinon.stub(installer, "readJson") + .callsFake((path) => { + throw new Error( + `readJson stub called with unknown path: ${path}` + ); + }) + .withArgs(path.join("/path", "to", "myPackage", "1.2.3", "package.json")) + .callsFake(async (path) => { + const error = new Error(`ENOENT: no such file or directory, open '${path}'`); + error.code = "ENOENT"; + throw error; + }); + + const getTargetDirForPackageStub = sinon.stub(installer, "_getTargetDirForPackage") + .callsFake(({pkgName, version}) => { + throw new Error( + `_getTargetDirForPackage stub called with unknown arguments pkgName: ${pkgName}, version: ${version}}` + ); + }) + .withArgs({ + pkgName: "myPackage", + version: "1.2.3" + }).returns(path.join("/path", "to", "myPackage", "1.2.3")); + + const manifest = await installer.fetchPackageManifest({pkgName: "myPackage", version: "1.2.3"}); + + t.deepEqual(manifest, expectedManifest, "Should return expected manifest object"); + t.is(getTargetDirForPackageStub.callCount, 1, "_getTargetDirForPackage should be called once"); + t.is(readJsonStub.callCount, 1, "readJson should be called once"); + t.is(requestPackageManifestStub.callCount, 1, "requestPackageManifest should be called once"); +}); + +test.serial("Installer: fetchPackageManifest (with existing package.json)", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + const mockedManifest = { + name: "myPackage", + dependencies: { + "foo": "1.2.3" + }, + devDependencies: { + "bar": "4.5.6" + }, + foo: "bar" + }; + + const expectedManifest = { + name: "myPackage", + dependencies: { + "foo": "1.2.3" + }, + devDependencies: { + "bar": "4.5.6" + } + }; + + const requestPackageManifestStub = sinon.stub(installer._registry, "requestPackageManifest") + .rejects(new Error("Unexpected call")); + + const readJsonStub = sinon.stub(installer, "readJson") + .callsFake((path) => { + throw new Error( + `readJson stub called with unknown path: ${path}` + ); + }) + .withArgs(path.join("/path", "to", "myPackage", "1.2.3", "package.json")) + .resolves(mockedManifest); + + const getTargetDirForPackageStub = sinon.stub(installer, "_getTargetDirForPackage") + .callsFake(({pkgName, version}) => { + throw new Error( + `_getTargetDirForPackage stub called with unknown arguments pkgName: ${pkgName}, version: ${version}}` + ); + }) + .withArgs({ + pkgName: "myPackage", + version: "1.2.3" + }).returns(path.join("/path", "to", "myPackage", "1.2.3")); + + const manifest = await installer.fetchPackageManifest({pkgName: "myPackage", version: "1.2.3"}); + + t.deepEqual(manifest, expectedManifest, "Should return expected manifest object"); + t.is(getTargetDirForPackageStub.callCount, 1, "_getTargetDirForPackage should be called once"); + t.is(readJsonStub.callCount, 1, "readJson should be called once"); + t.is(requestPackageManifestStub.callCount, 0, "requestPackageManifest should not be called"); +}); + +test.serial("Installer: fetchPackageManifest (readJson throws error)", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + const requestPackageManifestStub = sinon.stub(installer._registry, "requestPackageManifest") + .rejects(new Error("Unexpected call")); + + const readJsonStub = sinon.stub(installer, "readJson") + .rejects(new Error("Error from readJson")); + + const getTargetDirForPackageStub = sinon.stub(installer, "_getTargetDirForPackage") + .callsFake(({pkgName, version}) => { + throw new Error( + `_getTargetDirForPackage stub called with unknown arguments pkgName: ${pkgName}, version: ${version}}` + ); + }) + .withArgs({ + pkgName: "myPackage", + version: "1.2.3" + }).returns(path.join("/path", "to", "myPackage", "1.2.3")); + + await t.throwsAsync(async () => { + await installer.fetchPackageManifest({pkgName: "myPackage", version: "1.2.3"}); + }, "Error from readJson"); + + t.is(getTargetDirForPackageStub.callCount, 1, "_getTargetDirForPackage should be called once"); + t.is(readJsonStub.callCount, 1, "readJson should be called once"); + t.is(requestPackageManifestStub.callCount, 0, "requestPackageManifest should not be called"); +}); + +test.serial("Installer: _synchronize", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + t.context.mkdirpStub.resolves(); + t.context.lockStub.yieldsAsync(); + t.context.unlockStub.yieldsAsync(); + + const getLockPathStub = sinon.stub(installer, "_getLockPath").returns("/locks/lockfile.lock"); + + const callback = sinon.stub().resolves(); + + await installer._synchronize({ + pkgName: "@openui5/sap.ui.lib1", + version: "1.2.3" + }, callback); + + t.is(getLockPathStub.callCount, 1, "_getLockPath should be called once"); + t.deepEqual(getLockPathStub.getCall(0).args, [{pkgName: "@openui5/sap.ui.lib1", version: "1.2.3"}], + "_getLockPath should be called with expected args"); + + t.is(t.context.mkdirpStub.callCount, 1, "_mkdirp should be called once"); + t.deepEqual(t.context.mkdirpStub.getCall(0).args, [path.join("/ui5Home/", "framework", "locks")], + "_mkdirp should be called with expected args"); + + t.is(t.context.lockStub.callCount, 1, "lock should be called once"); + t.deepEqual(t.context.lockStub.getCall(0).args[0], "/locks/lockfile.lock", + "lock should be called with expected path"); + t.deepEqual(t.context.lockStub.getCall(0).args[1], {wait: 10000, stale: 60000, retries: 10}, + "lock should be called with expected options"); + + t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); + t.deepEqual(t.context.unlockStub.getCall(0).args[0], "/locks/lockfile.lock", + "unlock should be called with expected path"); + + t.is(callback.callCount, 1, "callback should be called once"); + + t.true(t.context.lockStub.calledBefore(callback), "Lock should be called before invoking the callback"); + t.true(t.context.unlockStub.calledAfter(callback), "Unlock should be called after invoking the callback"); +}); + +test.serial("Installer: _synchronize should unlock when callback promise has resolved", async (t) => { + t.plan(4); + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + t.context.mkdirpStub.resolves(); + t.context.lockStub.yieldsAsync(); + t.context.unlockStub.yieldsAsync(); + + sinon.stub(installer, "_getLockPath").returns("/locks/lockfile.lock"); + + const callback = sinon.stub().callsFake(() => { + t.is(t.context.lockStub.callCount, 1, "lock should have been called when the callback is invoked"); + return Promise.resolve().then(() => { + t.is(t.context.unlockStub.callCount, 0, + "unlock should not be called when the callback did not fully resolve, yet"); + }); + }); + + await installer._synchronize({ + pkgName: "@openui5/sap.ui.lib1", + version: "1.2.3" + }, callback); + + t.is(callback.callCount, 1, "callback should be called once"); + t.is(t.context.unlockStub.callCount, 1, "unlock should be called after _synchronize has resolved"); +}); + +test.serial("Installer: _synchronize should throw when locking fails", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + t.context.mkdirpStub.resolves(); + t.context.lockStub.yieldsAsync(new Error("Locking error")); + + sinon.stub(installer, "_getLockPath").returns("/locks/lockfile.lock"); + + const callback = sinon.stub(); + + await t.throwsAsync(async () => { + await installer._synchronize({ + pkgName: "@openui5/sap.ui.lib1", + version: "1.2.3" + }, callback); + }, "Locking error"); + + t.is(callback.callCount, 0, "callback should not be called"); + t.is(t.context.unlockStub.callCount, 0, "unlock should not be called"); +}); + +test.serial("Installer: _synchronize should still unlock when callback throws an error", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + t.context.mkdirpStub.resolves(); + t.context.lockStub.yieldsAsync(); + t.context.unlockStub.yieldsAsync(); + + sinon.stub(installer, "_getLockPath").returns("/locks/lockfile.lock"); + + const callback = sinon.stub().throws(new Error("Callback throws error")); + + await t.throwsAsync(async () => { + await installer._synchronize({ + pkgName: "@openui5/sap.ui.lib1", + version: "1.2.3" + }, callback); + }, "Callback throws error"); + + t.is(callback.callCount, 1, "callback should be called once"); + t.is(t.context.lockStub.callCount, 1, "lock should be called once"); + t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); +}); + +test.serial("Installer: _synchronize should still unlock when callback rejects with error", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + t.context.mkdirpStub.resolves(); + t.context.lockStub.yieldsAsync(); + t.context.unlockStub.yieldsAsync(); + + sinon.stub(installer, "_getLockPath").returns("/locks/lockfile.lock"); + + const callback = sinon.stub().rejects(new Error("Callback rejects with error")); + + await t.throwsAsync(async () => { + await installer._synchronize({ + pkgName: "@openui5/sap.ui.lib1", + version: "1.2.3" + }, callback); + }, "Callback rejects with error"); + + t.is(callback.callCount, 1, "callback should be called once"); + t.is(t.context.lockStub.callCount, 1, "lock should be called once"); + t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); +}); From a6c97f4a29fb60a2ed547e50660a1bfd69d5bf24 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 10 Mar 2020 17:58:13 +0100 Subject: [PATCH 0297/1272] [ui5-project][INTERNAL] Do not log deprecated and internal warnings for deeply nested dependencies Only for direct dependencies --- packages/project/lib/projectPreprocessor.js | 8 +- .../project/test/lib/projectPreprocessor.js | 92 ++++++++++++++++++- 2 files changed, 91 insertions(+), 9 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 5a59f85ac89..de883d97e36 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -326,13 +326,13 @@ class ProjectPreprocessor { } checkProjectMetadata(parent, project) { - if (parent && project.metadata.deprecated) { - // Do not warn for deprecated root project + if (project.metadata.deprecated && parent && parent._level === 0) { + // Only warn for direct dependencies of the root project log.warn(`Dependency ${project.metadata.name} is deprecated and should not be used for new projects!`); } - if (parent && project.metadata.sapInternal && !parent.metadata.allowSapInternal) { - // Do not warn for sapInternal root project + if (project.metadata.sapInternal && parent && parent._level === 0 && !parent.metadata.allowSapInternal) { + // Only warn for direct dependencies of the root project, except it defines "allowSapInternal" log.warn(`Dependency ${project.metadata.name} is restricted for use by SAP internal projects only! ` + `If the project ${parent.metadata.name} is an SAP internal project, add the attribute ` + `"allowSapInternal: true" to its metadata configuration`); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 35c88cabb76..c55ec6e714c 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1815,6 +1815,7 @@ test.serial("checkProjectMetadata: Warning logged for deprecated dependencies", const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); const project1 = { + _level: 0, metadata: { name: "root.project", deprecated: true @@ -1841,6 +1842,46 @@ test.serial("checkProjectMetadata: Warning logged for deprecated dependencies", "Logged expected warning message"); }); +test.serial("checkProjectMetadata: No warning logged for nested deprecated libraries", async (t) => { + sinon.stub(require("@ui5/builder").types.typeRepository, "getType") + .returns({format: () => {}}); + + // Spying logger of processors/bootstrapHtmlTransformer + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("pony"); + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + const logWarnSpy = sinon.spy(loggerInstance, "warn"); + + // Re-require tested module + const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); + + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + + const project1 = { + _level: 1, + metadata: { + name: "some.project", + deprecated: true + } + }; + + // no warning should be logged for nested project + await preprocessor.checkProjectMetadata(null, project1); + + const project2 = { + _level: 2, + metadata: { + name: "my.project", + deprecated: true + } + }; + await preprocessor.checkProjectMetadata(project1, project2); + + t.is(logWarnSpy.callCount, 0, "No warning got logged"); +}); + test.serial("checkProjectMetadata: Warning logged for SAP internal dependencies", async (t) => { const log = require("@ui5/logger"); const loggerInstance = log.getLogger("pony"); @@ -1855,6 +1896,7 @@ test.serial("checkProjectMetadata: Warning logged for SAP internal dependencies" const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); const project1 = { + _level: 0, metadata: { name: "root.project", sapInternal: true @@ -1900,21 +1942,61 @@ test.serial("checkProjectMetadata: No warning logged for allowed SAP internal li const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - const parent = { + const project1 = { + _level: 0, metadata: { - name: "parent.project", - allowSapInternal: true // parent project allows sap internal project use + name: "root.project", + allowSapInternal: true // parent project (=root) allows sap internal project use } }; - const project = { + const project2 = { + _level: 1, + metadata: { + name: "my.project", + sapInternal: true + } + }; + + await preprocessor.checkProjectMetadata(project1, project2); + + t.is(logWarnSpy.callCount, 0, "No warning got logged"); +}); + +test.serial("checkProjectMetadata: No warning logged for nested SAP internal libraries", async (t) => { + sinon.stub(require("@ui5/builder").types.typeRepository, "getType") + .returns({format: () => {}}); + + // Spying logger of processors/bootstrapHtmlTransformer + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("pony"); + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + const logWarnSpy = sinon.spy(loggerInstance, "warn"); + + // Re-require tested module + const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); + + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + + const project1 = { + _level: 1, + metadata: { + name: "some.project", + allowSapInternal: true // this flag doesn't matter for deeply nested internal dependency + } + }; + + const project2 = { + _level: 2, metadata: { name: "my.project", sapInternal: true } }; - await preprocessor.checkProjectMetadata(parent, project); + await preprocessor.checkProjectMetadata(project1, project2); t.is(logWarnSpy.callCount, 0, "No warning got logged"); }); From b00de8cd7842bbf13562bc5977451f140bebee2a Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 10 Mar 2020 18:23:03 +0100 Subject: [PATCH 0298/1272] [ui5-project][INTERNAL] AbstractResolver: Resolve cwd / ui5HomeDir paths --- .../lib/ui5Framework/AbstractResolver.js | 5 ++-- .../test/lib/ui5framework/AbstractResolver.js | 30 ++++++++++++++----- 2 files changed, 25 insertions(+), 10 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 05cf66710cc..1b155b41bea 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -24,9 +24,8 @@ class AbstractResolver { throw new Error(`AbstractResolver: Missing parameter "version"`); } - this._ui5HomeDir = ui5HomeDir || path.join(require("os").homedir(), ".ui5"); - - this._cwd = cwd || process.cwd(); + this._ui5HomeDir = ui5HomeDir ? path.resolve(ui5HomeDir) : path.join(require("os").homedir(), ".ui5"); + this._cwd = cwd ? path.resolve(cwd) : process.cwd(); this._version = version; } diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 6117e4ae6ac..4585da9fcdb 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -30,28 +30,44 @@ test("AbstractResolver: constructor requires 'version'", (t) => { }, `AbstractResolver: Missing parameter "version"`); }); -test("AbstractResolver: Set 'cwd'", (t) => { +test("AbstractResolver: Set absolute 'cwd'", (t) => { const resolver = new MyResolver({ version: "1.75.0", - cwd: "/my-cwd/" + cwd: "/my-cwd" }); - t.is(resolver._cwd, "/my-cwd/", "Should be given 'cwd'"); + t.is(resolver._cwd, path.resolve("/my-cwd"), "Should be resolved 'cwd'"); +}); + +test("AbstractResolver: Set relative 'cwd'", (t) => { + const resolver = new MyResolver({ + version: "1.75.0", + cwd: "./my-cwd" + }); + t.is(resolver._cwd, path.resolve("./my-cwd"), "Should be resolved 'cwd'"); }); test("AbstractResolver: Defaults 'cwd' to process.cwd()", (t) => { const resolver = new MyResolver({ version: "1.75.0", - ui5HomeDir: "/ui5home/" + ui5HomeDir: "/ui5home" }); t.is(resolver._cwd, process.cwd(), "Should default to process.cwd()"); }); -test("AbstractResolver: Set 'ui5HomeDir'", (t) => { +test("AbstractResolver: Set absolute 'ui5HomeDir'", (t) => { + const resolver = new MyResolver({ + version: "1.75.0", + ui5HomeDir: "/my-ui5HomeDir" + }); + t.is(resolver._ui5HomeDir, path.resolve("/my-ui5HomeDir"), "Should be resolved 'ui5HomeDir'"); +}); + +test("AbstractResolver: Set relative 'ui5HomeDir'", (t) => { const resolver = new MyResolver({ version: "1.75.0", - ui5HomeDir: "/my-ui5HomeDir/" + ui5HomeDir: "./my-ui5HomeDir" }); - t.is(resolver._ui5HomeDir, "/my-ui5HomeDir/", "Should be given 'ui5HomeDir'"); + t.is(resolver._ui5HomeDir, path.resolve("./my-ui5HomeDir"), "Should be resolved 'ui5HomeDir'"); }); test("AbstractResolver: Defaults 'ui5HomeDir' to ~/.ui5", (t) => { From de1384199cb3c353401e9aa886da3e50596e8873 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 10 Mar 2020 14:30:51 +0100 Subject: [PATCH 0299/1272] [ui5-project][BREAKING] Require Node.js >= 10 BREAKING CHANGE: Support for older Node.js releases has been dropped. Only Node.js v10 or higher is supported. --- packages/project/azure-pipelines.yml | 3 --- packages/project/package.json | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index acdd36b1828..96a127147f2 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -8,9 +8,6 @@ trigger: strategy: matrix: - linux_node_8: - imageName: 'ubuntu-16.04' - node_version: 8.x linux_node_10: imageName: 'ubuntu-16.04' node_version: 10.x diff --git a/packages/project/package.json b/packages/project/package.json index 9e486f241ba..2f6ca7a6795 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -14,7 +14,7 @@ ], "main": "index.js", "engines": { - "node": ">= 8.5", + "node": ">= 10", "npm": ">= 5" }, "scripts": { From 810686d4cbd125fb79c17568eae6d9429297e773 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 11 Mar 2020 18:11:58 +0100 Subject: [PATCH 0300/1272] [ui5-project][INTERNAL] Ugrade Azure Pipeline images Some are being removed: https://devblogs.microsoft.com/devops/removing-older-images-in-azure-pipelines-hosted-pools/ --- packages/project/azure-pipelines.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 96a127147f2..e47a462810f 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -9,16 +9,16 @@ trigger: strategy: matrix: linux_node_10: - imageName: 'ubuntu-16.04' + imageName: 'ubuntu-18.04' node_version: 10.x linux_node_latest: - imageName: 'ubuntu-16.04' + imageName: 'ubuntu-18.04' node_version: 12.x mac_node_latest: - imageName: 'macos-10.13' + imageName: 'macOS-10.15' node_version: 12.x windows_node_latest: - imageName: 'vs2017-win2016' + imageName: 'windows-2019' node_version: 12.x pool: From 33545c9648d99fbbbda07a78edbd8a88aa98eb6e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 11 Mar 2020 18:14:45 +0100 Subject: [PATCH 0301/1272] [ui5-project][INTERNAL] Add Node.js 13 to Azure pipeline test matrix --- packages/project/azure-pipelines.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index e47a462810f..51131ed4880 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -14,6 +14,9 @@ strategy: linux_node_latest: imageName: 'ubuntu-18.04' node_version: 12.x + linux_node_latest: + imageName: 'ubuntu-18.04' + node_version: 13.x mac_node_latest: imageName: 'macOS-10.15' node_version: 12.x From 98ad6869d5469a40facd5c3dd480301270b79c15 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 11 Mar 2020 18:29:08 +0100 Subject: [PATCH 0302/1272] [ui5-project][INTERNAL] Azure Pipeline: Make Node 13 latest and Node 12 lts --- packages/project/azure-pipelines.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 51131ed4880..9f4665dd930 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -11,7 +11,7 @@ strategy: linux_node_10: imageName: 'ubuntu-18.04' node_version: 10.x - linux_node_latest: + linux_node_lts: imageName: 'ubuntu-18.04' node_version: 12.x linux_node_latest: @@ -19,10 +19,10 @@ strategy: node_version: 13.x mac_node_latest: imageName: 'macOS-10.15' - node_version: 12.x + node_version: 13.x windows_node_latest: imageName: 'windows-2019' - node_version: 12.x + node_version: 13.x pool: vmImage: $(imageName) From 9f6ae923a785c5bb881739bef02aa0846747d5b9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 15 Mar 2020 03:22:17 +0000 Subject: [PATCH 0303/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 578 ++++++++++++----------------- packages/project/package.json | 4 +- 2 files changed, 241 insertions(+), 341 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 917ba19b083..78dcc852294 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -95,9 +95,9 @@ } }, "@babel/generator": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.7.tgz", - "integrity": "sha512-DQwjiKJqH4C3qGiyQCAExJHoZssn49JTMJgZ8SANGgVFdkupcUhLOdkAeoC6kmHZCPfoDG5M0b6cFlSN5wW7Ew==", + "version": "7.8.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.8.tgz", + "integrity": "sha512-HKyUVu69cZoclptr8t8U5b6sx6zoWjh8jiUhnuj3MpZuKT2dJ8zPTuiy31luq32swhI0SpwItCIlU8XW7BZeJg==", "dev": true, "requires": { "@babel/types": "^7.8.7", @@ -124,14 +124,14 @@ } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.6.tgz", - "integrity": "sha512-bPyujWfsHhV/ztUkwGHz/RPV1T1TDEsSZDsN42JPehndA+p1KKTh3npvTadux0ZhCrytx9tvjpWNowKby3tM6A==", + "version": "7.8.8", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.8.tgz", + "integrity": "sha512-LYVPdwkrQEiX9+1R29Ld/wTrmQu1SSKYnuOk3g0CkcZMA1p0gsNxJFj/3gBdaJ7Cg0Fnek5z0DsMULePP7Lrqg==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.8.3", "@babel/helper-regex": "^7.8.3", - "regexpu-core": "^4.6.0" + "regexpu-core": "^4.7.0" } }, "@babel/helper-function-name": { @@ -290,9 +290,9 @@ } }, "@babel/parser": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.7.tgz", - "integrity": "sha512-9JWls8WilDXFGxs0phaXAZgpxTZhSk/yOYH2hTHC0X1yC7Z78IJfvR1vJ+rmJKq3I35td2XzXzN6ZLYlna+r/A==" + "version": "7.8.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.8.tgz", + "integrity": "sha512-mO5GWzBPsPf6865iIbzNE0AvkKF3NE+2S3eRUpE+FE07BOAkXh6G+GW/Pj01hhXjve1WScbaIO4UlY1JKeqCcA==" }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.8.3", @@ -535,6 +535,20 @@ "resolved": "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.2.0.tgz", "integrity": "sha512-JtktVH7ASBVIWsQTFlFpeOzhBJskvoBCTfeeRhhZy7ybATcUvwiwotZ8j5rkqUUyB69lIy/AvboiiiGBjYBKBA==" }, + "@npmcli/git": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-2.0.1.tgz", + "integrity": "sha512-hVatexiBtx71F01Ars38Hr5AFUGmJgHAfQtRlO5fJlnAawRGSXwEFgjB5i3XdUUmElZU/RXy7fefN02dZKxgPw==", + "requires": { + "@npmcli/promise-spawn": "^1.1.0", + "mkdirp": "^1.0.3", + "npm-pick-manifest": "^6.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^1.1.1", + "unique-filename": "^1.1.1", + "which": "^2.0.2" + } + }, "@npmcli/installed-package-contents": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.5.tgz", @@ -546,6 +560,14 @@ "readdir-scoped-modules": "^1.1.0" } }, + "@npmcli/promise-spawn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.1.0.tgz", + "integrity": "sha512-FwbuYN9KXBkloLeIR3xRgI8dyOdfK/KzaJlChszNuwmUXD1lHXfLlSeo4n4KrKt2udIK9K9/TzlnyCA3ubM2fA==", + "requires": { + "infer-owner": "^1.0.4" + } + }, "@sindresorhus/is": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", @@ -581,13 +603,12 @@ } }, "@sinonjs/samsam": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.0.2.tgz", - "integrity": "sha512-p3yrEVB5F/1wI+835n+X8llOGRgV8+jw5BHQ/cJoLBUXXZ5U8Tr5ApwPc4L4av/vjla48kVPoN0t6dykQm+Rvg==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.0.3.tgz", + "integrity": "sha512-QucHkc2uMJ0pFGjJUDP3F9dq5dx8QIaqISl9QgwLOh6P9yv877uONPGXh/OH/0zmM3tW1JjuJltAZV2l7zU+uQ==", "dev": true, "requires": { "@sinonjs/commons": "^1.6.0", - "@sinonjs/formatio": "^5.0.0", "lodash.get": "^4.4.2", "type-detect": "^4.0.8" } @@ -607,6 +628,11 @@ "defer-to-connect": "^1.0.1" } }, + "@tootallnate/once": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.0.0.tgz", + "integrity": "sha512-KYyTT/T6ALPkIRd2Ge080X/BsXvy9O0hcWTtMWkPvwAwF99+vn6Dv4GzrFT/Nn1LePr+FFDbRXXlqmsy9lw2zA==" + }, "@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", @@ -634,9 +660,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.9.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.0.tgz", - "integrity": "sha512-0ARSQootUG1RljH2HncpsY2TJBfGQIKOOi7kxzUY6z54ePu/ZD+wJA8zI2Q6v8rol2qpG/rvqsReco8zNMPvhQ==" + "version": "13.9.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.1.tgz", + "integrity": "sha512-E6M6N0blf/jiZx8Q3nb0vNaswQeEyn0XlupO+xN6DtJ6r6IT4nXrTry7zhIfYvFCl3/8Cu6WIysmUBKiqV0bqQ==" }, "@ui5/builder": { "version": "1.10.1", @@ -730,9 +756,9 @@ } }, "acorn": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.0.tgz", - "integrity": "sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", "dev": true }, "acorn-jsx": { @@ -742,9 +768,27 @@ "dev": true }, "agent-base": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-5.1.1.tgz", - "integrity": "sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g==" + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.0.tgz", + "integrity": "sha512-j1Q7cSCqN+AwrmDd+pzgqc0/NpC655x2bUf5ZjRIO77DcNBFmh+OgRNzF6OKdCC9RSCb19fGd99+bhXFdkRNqw==", + "requires": { + "debug": "4" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } }, "agentkeepalive": { "version": "4.1.0", @@ -1389,27 +1433,6 @@ "unique-filename": "^1.1.1" }, "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "requires": { - "yallist": "^3.0.2" - } - }, - "mkdirp": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", - "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==" - }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "requires": { - "aggregate-error": "^3.0.0" - } - }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -1417,11 +1440,6 @@ "requires": { "glob": "^7.1.3" } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, @@ -2076,9 +2094,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true } } @@ -2123,15 +2141,6 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } } } }, @@ -2144,6 +2153,33 @@ "lru-cache": "^4.0.1", "shebang-command": "^1.2.0", "which": "^1.2.9" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } } }, "crypto-random-string": { @@ -2390,6 +2426,12 @@ } } }, + "p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "dev": true + }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", @@ -2713,19 +2755,6 @@ "event-emitter": "~0.3.5" } }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" - }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", - "requires": { - "es6-promise": "^4.0.3" - } - }, "es6-set": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", @@ -2920,6 +2949,15 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } } } }, @@ -3383,15 +3421,6 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } } } }, @@ -3685,9 +3714,12 @@ } }, "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.4.tgz", + "integrity": "sha512-4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ==", + "requires": { + "lru-cache": "^5.1.1" + } }, "hpack.js": { "version": "2.1.6", @@ -3771,11 +3803,12 @@ } }, "http-proxy-agent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-3.0.0.tgz", - "integrity": "sha512-uGuJaBWQWDQCJI5ip0d/VTYZW0nRrlLWXA4A7P1jrsa+f77rW2yXz315oBt6zGCF6l8C2tlMxY7ffULCj+5FhA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "requires": { - "agent-base": "5", + "@tootallnate/once": "1", + "agent-base": "6", "debug": "4" }, "dependencies": { @@ -3805,11 +3838,11 @@ } }, "https-proxy-agent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz", - "integrity": "sha512-zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", "requires": { - "agent-base": "5", + "agent-base": "6", "debug": "4" }, "dependencies": { @@ -4386,15 +4419,6 @@ "which": "^2.0.1" } }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, "path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", @@ -4415,15 +4439,6 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } } } }, @@ -4565,9 +4580,9 @@ "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, "json-parse-even-better-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.0.1.tgz", - "integrity": "sha512-XFY2Mbnmg+8r7MRsxfArVkZcfjxGlF/NjM3LsPXVeCX/GBF/1FTCv+idHBYC4qLPtK7q8HC8bapLoWqnhP/bXw==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.2.0.tgz", + "integrity": "sha512-2tLgY7LRNZ9Hd6gmCuBG5/OjRHQpSgJQqJoYyLLOhUgn8LdOYrjaZLcxkWnDads+AD/haWWioPNziXQcgvQJ/g==" }, "json-schema": { "version": "0.2.3", @@ -4600,9 +4615,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true } } @@ -4854,13 +4869,11 @@ "dev": true }, "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "yallist": "^3.0.2" } }, "make-dir": { @@ -4872,15 +4885,15 @@ } }, "make-fetch-happen": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.1.tgz", - "integrity": "sha512-oiK8xz6+IxaPqmOCW+rmlH922RTZ+fi4TAULGRih8ryqIju0x6WriDR3smm7Z+8NZRxDIK/iDLM096F/gLfiWg==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.4.tgz", + "integrity": "sha512-hIFoqGq1db0QMiy/Atr/pI1Rs4rDV+ZdGSey2SQyF3KK3u1z4aj9mS5UdNnZkdQpA+H3pGn0J3KlEwsi2x4EqA==", "requires": { "agentkeepalive": "^4.1.0", "cacache": "^15.0.0", "http-cache-semantics": "^4.0.4", - "http-proxy-agent": "^3.0.0", - "https-proxy-agent": "^4.0.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", "lru-cache": "^5.1.1", "minipass": "^3.0.0", @@ -4889,23 +4902,8 @@ "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.2", "promise-retry": "^1.1.1", - "socks-proxy-agent": "^4.0.0", + "socks-proxy-agent": "^5.0.0", "ssri": "^8.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "requires": { - "yallist": "^3.0.2" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - } } }, "map-obj": { @@ -5305,14 +5303,13 @@ "dev": true }, "nise": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/nise/-/nise-4.0.2.tgz", - "integrity": "sha512-ALDnm0pTTyeGdbg5FCpWGd58Nmp3qO8d8x+dU2Fw8lApeJTEBSjkBZZM4S8t6GpKh+czxkfM/TKxpRMroZzwOg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-4.0.3.tgz", + "integrity": "sha512-EGlhjm7/4KvmmE6B/UFsKh7eHykRl9VH+au8dduHLCyWUO/hr7+N+WtTvDUwc9zHuM1IaIJs/0lQ6Ag1jDkQSg==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.0", "@sinonjs/fake-timers": "^6.0.0", - "@sinonjs/formatio": "^5.0.1", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "path-to-regexp": "^1.7.0" @@ -5355,6 +5352,11 @@ "validate-npm-package-license": "^3.0.1" }, "dependencies": { + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" + }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -5405,52 +5407,30 @@ "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==" }, "npm-package-arg": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.0.0.tgz", - "integrity": "sha512-JgqZHCEUKvhX7EehLNdySiuB227a0QYra9wpZOkW+jvwsRYKkce7y5Rv2axkxScJU1EP+L32jT2PLhQz7IWHlw==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.0.1.tgz", + "integrity": "sha512-/h5Fm6a/exByzFSTm7jAyHbgOqErl9qSNJDQF32Si/ZzgwT2TERVxRxn3Jurw1wflgyVVAxnFR4fRHPM7y1ClQ==", "requires": { "hosted-git-info": "^3.0.2", - "osenv": "^0.1.5", "semver": "^7.0.0", "validate-npm-package-name": "^3.0.0" }, "dependencies": { - "hosted-git-info": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.2.tgz", - "integrity": "sha512-ezZMWtHXm7Eb7Rq4Mwnx2vs79WUx2QmRg3+ZqeGroKzfDO+EprOcgRPYghsOP9JuYBfK18VojmRTGCg8Ma+ktw==", - "requires": { - "lru-cache": "^5.1.1" - } - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "requires": { - "yallist": "^3.0.2" - } - }, "semver": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, "npm-packlist": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.1.0.tgz", - "integrity": "sha512-XXqrT4WXVc8M1cdL7LCOUflEdyvCu9lKmM5j5mFwXAK8hUMRxzClNml8ox2d8YIDhS7p51AP6zYWNsgNiWuSLQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.1.1.tgz", + "integrity": "sha512-95TSDvGwujIhqfSpIiRRLodEF+y6mJMopuZdahoGzqtRDFZXGav46S0p6ngeWaiAkb5R72w6eVARhzej0HvZeQ==", "requires": { "glob": "^7.1.6", "ignore-walk": "^3.0.3", - "npm-bundled": "^1.0.1", + "npm-bundled": "^1.1.1", "npm-normalize-package-bin": "^1.0.1" } }, @@ -5472,33 +5452,18 @@ } }, "npm-registry-fetch": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-7.0.0.tgz", - "integrity": "sha512-XABSG02i/03EfnXM8azGksxICQO8g5MSiaxIUBsNTLXnQLBcdQNS67aOZsF5Yn97RV9o9g+fBUUN2Sg8u7iCBw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-8.0.0.tgz", + "integrity": "sha512-975WwLvZjX97y9UWWQ8nAyr7bw02s9xKPHqvEm5T900LQsB1HXb8Gb9ebYtCBLSX+K8gSOrO5KS/9yV/naLZmQ==", "requires": { "@npmcli/ci-detect": "^1.0.0", "lru-cache": "^5.1.1", - "make-fetch-happen": "^8.0.1", + "make-fetch-happen": "^8.0.2", "minipass": "^3.0.0", "minipass-fetch": "^1.1.2", "minipass-json-stream": "^1.0.1", "minizlib": "^2.0.0", "npm-package-arg": "^8.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "requires": { - "yallist": "^3.0.2" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - } } }, "npm-run-path": { @@ -5598,15 +5563,6 @@ "p-limit": "^2.2.0" } }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, "path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -5800,24 +5756,11 @@ } } }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true }, "p-cancelable": { "version": "1.1.0", @@ -5848,10 +5791,12 @@ } }, "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "requires": { + "aggregate-error": "^3.0.0" + } }, "p-try": { "version": "2.2.0", @@ -5883,63 +5828,47 @@ } }, "pacote": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-11.0.0.tgz", - "integrity": "sha512-Q8H9lfzlZTZyWWtYNGETtFp2qmzd9XHfuF3gas5xd8T6vf/6E7BOmhybWU2PxSVeSYjIw4hLpaf7hCqY+T2TbQ==", + "version": "11.1.4", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-11.1.4.tgz", + "integrity": "sha512-eUGJvSSpWFZKn3z8gig/HgnBmUl6gIWByIIaHzSyEr3tOWX0w8tFEADXtpu8HGv5E0ShCeTP6enRq8iHKCHSvw==", "requires": { + "@npmcli/git": "^2.0.1", "@npmcli/installed-package-contents": "^1.0.5", + "@npmcli/promise-spawn": "^1.1.0", "cacache": "^15.0.0", - "chownr": "^1.1.3", + "chownr": "^1.1.4", "fs-minipass": "^2.1.0", "infer-owner": "^1.0.4", "lru-cache": "^5.1.1", "minipass": "^3.0.1", "minipass-fetch": "^1.2.1", "mkdirp": "^1.0.3", - "npm-package-arg": "^8.0.0", - "npm-packlist": "^2.0.3", + "npm-package-arg": "^8.0.1", + "npm-packlist": "^2.1.0", "npm-pick-manifest": "^6.0.0", - "npm-registry-fetch": "^7.0.0", - "osenv": "^0.1.5", + "npm-registry-fetch": "^8.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^1.1.1", "read-package-json-fast": "^1.1.3", - "semver": "^7.1.1", + "rimraf": "^2.7.1", + "semver": "^7.1.3", "ssri": "^8.0.0", - "tar": "^6.0.0", + "tar": "^6.0.1", "which": "^2.0.2" }, "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "requires": { - "yallist": "^3.0.2" + "glob": "^7.1.3" } }, - "mkdirp": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", - "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==" - }, "semver": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "requires": { - "isexe": "^2.0.0" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, @@ -6300,9 +6229,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "strip-json-comments": { @@ -6410,9 +6339,9 @@ "dev": true }, "regenerate-unicode-properties": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", - "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", + "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", "dev": true, "requires": { "regenerate": "^1.4.0" @@ -6435,17 +6364,17 @@ "dev": true }, "regexpu-core": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", - "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", + "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", "dev": true, "requires": { "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.1.0", - "regjsgen": "^0.5.0", - "regjsparser": "^0.6.0", + "regenerate-unicode-properties": "^8.2.0", + "regjsgen": "^0.5.1", + "regjsparser": "^0.6.4", "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.1.0" + "unicode-match-property-value-ecmascript": "^1.2.0" } }, "registry-auth-token": { @@ -6473,9 +6402,9 @@ "dev": true }, "regjsparser": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.3.tgz", - "integrity": "sha512-8uZvYbnfAtEm9Ab8NTb3hdLwL4g/LQzEYP7Xs27T96abJCCE2d6r3cPZPQEsLKy0vRSGVNG+/zVGtLr86HQduA==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", + "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -6791,15 +6720,15 @@ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, "sinon": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.0.0.tgz", - "integrity": "sha512-c4bREcvuK5VuEGyMW/Oim9I3Rq49Vzb0aMdxouFaA44QCFpilc5LJOugrX+mkrvikbqCimxuK+4cnHVNnLR41g==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.0.1.tgz", + "integrity": "sha512-iTTyiQo5T94jrOx7X7QLBZyucUJ2WvL9J13+96HMfm2CGoJYbIPqRfl6wgNcqmzk0DI28jeGx5bUTXizkrqBmg==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.0", "@sinonjs/fake-timers": "^6.0.0", - "@sinonjs/formatio": "^5.0.0", - "@sinonjs/samsam": "^5.0.1", + "@sinonjs/formatio": "^5.0.1", + "@sinonjs/samsam": "^5.0.3", "diff": "^4.0.2", "nise": "^4.0.1", "supports-color": "^7.1.0" @@ -6844,21 +6773,27 @@ } }, "socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.0.tgz", + "integrity": "sha512-lEpa1zsWCChxiynk+lCycKuC502RxDWLKJZoIhnxrWNjLSDGYRFflHA1/228VkRcnv9TIb8w98derGbpKxJRgA==", "requires": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" + "agent-base": "6", + "debug": "4", + "socks": "^2.3.3" }, "dependencies": { - "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "requires": { - "es6-promisify": "^5.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" } } }, @@ -6905,34 +6840,6 @@ "rimraf": "^3.0.0", "signal-exit": "^3.0.2", "which": "^2.0.1" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } } }, "spdx-correct": { @@ -7381,9 +7288,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "tap-parser": { @@ -7422,11 +7329,6 @@ "yallist": "^4.0.0" }, "dependencies": { - "mkdirp": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", - "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==" - }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -7672,15 +7574,15 @@ } }, "unicode-match-property-value-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", - "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", + "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", "dev": true }, "unicode-property-aliases-ecmascript": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", - "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", + "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", "dev": true }, "unique-filename": { @@ -7848,10 +7750,9 @@ "dev": true }, "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "requires": { "isexe": "^2.0.0" } @@ -8037,10 +7938,9 @@ "dev": true }, "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "yargs": { "version": "15.3.0", diff --git a/packages/project/package.json b/packages/project/package.json index 2f6ca7a6795..770b5b5a517 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -104,7 +104,7 @@ "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", "mkdirp": "^1.0.3", - "pacote": "^11.0.0", + "pacote": "^11.1.4", "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", @@ -123,7 +123,7 @@ "nyc": "^15.0.0", "open-cli": "^5.0.0", "rimraf": "^3.0.2", - "sinon": "^9.0.0", + "sinon": "^9.0.1", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 35d0d31ac9cd8290146f5ab3e704847bd6644be8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 16 Mar 2020 17:50:32 +0100 Subject: [PATCH 0304/1272] [ui5-project][INTERNAL] ui5Framework/projectPreprocessor: Do not process root project again Since the root project of a framework tree has already been processed, do not apply its type and additional checks again. This is to prevent duplicate logging of infos and warnings and to reduce the overhead of formatting the project again. --- packages/project/lib/projectPreprocessor.js | 8 ++++++-- .../project/lib/translators/ui5Framework.js | 19 +++++++++++++------ .../translators/ui5Framework.integration.js | 7 ++++++- .../test/lib/translators/ui5Framework.js | 9 ++++++++- 4 files changed, 33 insertions(+), 10 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index de883d97e36..14642924e1e 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -82,8 +82,12 @@ class ProjectPreprocessor { } this.applyShims(project); if (this.isConfigValid(project)) { - await this.applyType(project); - this.checkProjectMetadata(parent, project); + // Do not apply transparent projects. + // Their only purpose might be to have their dependencies processed + if (!project._transparentProject) { + await this.applyType(project); + this.checkProjectMetadata(parent, project); + } queue.push({ // copy array, so that the queue is stable while ignored project dependencies are removed projects: [...project.dependencies], diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index f395b3c7de7..1b58a10d38f 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -170,12 +170,19 @@ module.exports = { }); // Use root project (=requesting project) as root of framework tree - const frameworkTree = { - id: tree.id, - version: tree.version, - path: tree.path, - dependencies: libraries - }; + // For this we clone all properties of the root project, + // except the dependencies since they will be overwritten anyways + const frameworkTree = {}; + for (const attribute in tree) { + if (tree.hasOwnProperty(attribute) && attribute !== "dependencies") { + frameworkTree[attribute] = JSON.parse(JSON.stringify(tree[attribute])); + } + } + + // Overwrite dependencies to exclusively contain framework libraries + frameworkTree.dependencies = libraries; + // Flag as transparent so that the project type is not applied again + frameworkTree._transparentProject = true; return frameworkTree; }, diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index 4b7f507b8aa..9a59742eb5d 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -671,9 +671,14 @@ test.serial("ui5Framework translator should not try to install anything when no version: "1.75.0" } }); + const frameworkTree = Object.assign({}, projectPreprocessorTree, { + _transparentProject: true + }); sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); - sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); + sinon.stub(projectPreprocessor, "processTree") + .withArgs(translatorTree).resolves(projectPreprocessorTree) + .withArgs(frameworkTree).resolves(frameworkTree); const extractStub = sinon.stub(pacote, "extract"); const manifestStub = sinon.stub(pacote, "manifest"); diff --git a/packages/project/test/lib/translators/ui5Framework.js b/packages/project/test/lib/translators/ui5Framework.js index 91908449938..831bbc5ec3f 100644 --- a/packages/project/test/lib/translators/ui5Framework.js +++ b/packages/project/test/lib/translators/ui5Framework.js @@ -29,6 +29,7 @@ test.afterEach.always((t) => { test.serial("generateDependencyTree", async (t) => { const tree = { + specVersion: "2.0", id: "test1", version: "1.0.0", path: "/test-project/", @@ -84,14 +85,20 @@ test.serial("generateDependencyTree", async (t) => { "Sapui5Resolver#getProject should be called with expected args (call 3)"); t.deepEqual(ui5FrameworkTree, { + specVersion: "2.0", // specVersion must not be lost to prevent config re-loading in projectPreprocessor id: "test1", version: "1.0.0", path: "/test-project/", + framework: { + name: "SAPUI5", + version: "1.75.0" + }, dependencies: [ {fake: "metadata-project-1"}, {fake: "metadata-project-2"}, {fake: "metadata-project-3"} - ] + ], + _transparentProject: true }); }); From fa6901ddc767b4dc76e2aa5497a8d32e8b45f55b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 19 Mar 2020 21:14:59 +0100 Subject: [PATCH 0305/1272] [ui5-project][INTERNAL] package.json: Fix repository URL --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index 770b5b5a517..cf54125fd15 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ }, "repository": { "type": "git", - "url": "git@github.com:SAP/ui5-builder.git" + "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { "@ui5/builder": "^1.10.1", From 5ac33f2329598a3c17c6054dda917b04e6b7cf54 Mon Sep 17 00:00:00 2001 From: Sven Bender Date: Fri, 20 Mar 2020 13:13:40 +0100 Subject: [PATCH 0306/1272] [ui5-project][FEATURE] Support for spec version 2.0 (#277) [FEATURE] Support for spec version 2.0 Support for spec version 2.0 in ui5Framework translator and projectPreprocessor. --- packages/project/lib/projectPreprocessor.js | 6 ++- .../project/lib/translators/ui5Framework.js | 25 ++++++---- packages/project/test/lib/extensions.js | 20 ++++++++ .../project/test/lib/projectPreprocessor.js | 16 ++++++ .../translators/ui5Framework.integration.js | 49 ++++++++++++++++--- .../test/lib/translators/ui5Framework.js | 13 +++++ 6 files changed, 111 insertions(+), 18 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 14642924e1e..4f404e3ba8e 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -279,7 +279,8 @@ class ProjectPreprocessor { return false; // ignore this project } - if (project.specVersion !== "0.1" && project.specVersion !== "1.0" && project.specVersion !== "1.1") { + if (project.specVersion !== "0.1" && project.specVersion !== "1.0" && + project.specVersion !== "1.1" && project.specVersion !== "2.0") { throw new Error( `Unsupported specification version ${project.specVersion} defined for project ` + `${project.id}. Your UI5 CLI installation might be outdated. ` + @@ -353,7 +354,8 @@ class ProjectPreprocessor { throw new Error(`No specification version defined for extension ${extension.metadata.name}`); } else if (extension.specVersion !== "0.1" && extension.specVersion !== "1.0" && - extension.specVersion !== "1.1") { + extension.specVersion !== "1.1" && + extension.specVersion !== "2.0") { throw new Error( `Unsupported specification version ${extension.specVersion} defined for extension ` + `${extension.metadata.name}. Your UI5 CLI installation might be outdated. ` + diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 1b58a10d38f..eef2ea5c187 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -71,16 +71,23 @@ const utils = { // Ignoring UI5 Framework libraries in dependencies return ui5Dependencies; } - if (project.framework && project.framework.libraries) { - project.framework.libraries.forEach((dependency) => { - if (!ui5Dependencies.includes(dependency.name) && utils.shouldIncludeDependency(dependency, root)) { - ui5Dependencies.push(dependency.name); - } - }); + + if (project.specVersion === "2.0") { + if (project.framework && project.framework.libraries) { + project.framework.libraries.forEach((dependency) => { + if (!ui5Dependencies.includes(dependency.name) && utils.shouldIncludeDependency(dependency, root)) { + ui5Dependencies.push(dependency.name); + } + }); + } else { + log.verbose(`Project ${project.metadata.name} defines no framework.libraries configuration`); + // Possible future enhancement: Fallback to detect OpenUI5 framework dependencies in package.json + } } else { - log.verbose(`Project ${project.metadata.name} defines no framework.libraries configuration`); - // Possible future enhancement: Fallback to detect OpenUI5 framework dependencies in package.json + log.verbose(`Project ${project.metadata.name} defines invalid ` + + `specification version ${project.specVersion} for framework.libraries configuration`); } + project.dependencies.map((depProject) => { utils.getFrameworkLibrariesFromTree(depProject, ui5Dependencies, false); }); @@ -209,7 +216,7 @@ module.exports = { }); queue.push(...project.dependencies); - if (project.framework && project.framework.libraries) { + if (project.specVersion === "2.0" && project.framework && project.framework.libraries) { const frameworkDeps = project.framework.libraries.map((dependency) => { if (!frameworkLibs[dependency.name]) { throw new Error(`Missing framework library ${dependency.name} ` + diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index a1c2835054d..a490e7e1fa9 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -760,3 +760,23 @@ test("specVersion: Extension with valid version 1.1", async (t) => { await preprocessor.applyExtension(extension); t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "1.1", "Correct spec version"); }); + +test("specVersion: Extension with valid version 2.0", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.0", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor({}); + const handleShimStub = sinon.stub(preprocessor, "handleShim"); + await preprocessor.applyExtension(extension); + t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.0", "Correct spec version"); +}); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index c55ec6e714c..8d764c2af39 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1657,6 +1657,22 @@ test("specVersion: Project with valid version 1.1", async (t) => { t.deepEqual(res.specVersion, "1.1", "Correct spec version"); }); +test("specVersion: Project with valid version 2.0", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.0", + type: "application", + metadata: { + name: "xy" + } + }; + const res = await projectPreprocessor.processTree(tree); + t.deepEqual(res.specVersion, "2.0", "Correct spec version"); +}); + test("isBeingProcessed: Is not being processed", (t) => { const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index 9a59742eb5d..a7e66d0fb00 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -88,13 +88,13 @@ function defineTest(testName, { } }; - function project({name, version, type, framework, _level, dependencies = []}) { + function project({name, version, type, specVersion = "2.0", framework, _level, dependencies = []}) { const proj = { _level, id: name + "-id", version, path: path.join(fakeBaseDir, "project-" + name), - specVersion: "1.1", + specVersion, kind: "project", type, metadata: { @@ -156,6 +156,12 @@ function defineTest(testName, { version: "7.8.9", path: path.join(fakeBaseDir, "project-test-dependency-no-framework"), dependencies: [] + }, + { + id: "test-dependency-framework-old-spec-version-id", + version: "10.11.12", + path: path.join(fakeBaseDir, "project-test-dependency-framework-old-spec-version"), + dependencies: [] } ] }; @@ -168,7 +174,7 @@ function defineTest(testName, { }) .withArgs(path.join(fakeBaseDir, "project-test-application", "ui5.yaml")) .resolves([{ - specVersion: "1.1", + specVersion: "2.0", type: "application", metadata: { name: "test-application" @@ -189,7 +195,7 @@ function defineTest(testName, { }]) .withArgs(path.join(fakeBaseDir, "project-test-dependency", "ui5.yaml")) .resolves([{ - specVersion: "1.1", + specVersion: "2.0", type: "library", metadata: { name: "test-dependency" @@ -208,12 +214,27 @@ function defineTest(testName, { }]) .withArgs(path.join(fakeBaseDir, "project-test-dependency-no-framework", "ui5.yaml")) .resolves([{ - specVersion: "1.1", + specVersion: "2.0", type: "library", metadata: { name: "test-dependency-no-framework" } }]) + .withArgs(path.join(fakeBaseDir, "project-test-dependency-framework-old-spec-version", "ui5.yaml")) + .resolves([{ + specVersion: "1.1", + type: "library", + metadata: { + name: "test-dependency-framework-old-spec-version" + }, + framework: { + libraries: [ + { + name: "sap.ui.lib5" + } + ] + } + }]) .withArgs(path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib1", frameworkName === "SAPUI5" ? "1.75.1" : "1.75.0", "ui5.yaml" )) @@ -381,6 +402,20 @@ function defineTest(testName, { version: "7.8.9", type: "library" }), + project({ + _level: 1, + name: "test-dependency-framework-old-spec-version", + specVersion: "1.1", + version: "10.11.12", + type: "library", + framework: { + libraries: [ + { + name: "sap.ui.lib5" + } + ] + }, + }), frameworkProject({ _level: 1, name: "sap.ui.lib1", @@ -441,7 +476,7 @@ function defineErrorTest(testName, { }) .withArgs(path.join(fakeBaseDir, "application-project", "ui5.yaml")) .resolves([{ - specVersion: "1.1", + specVersion: "2.0", type: "application", metadata: { name: "test-project" @@ -749,7 +784,7 @@ test.serial("SAPUI5: ui5Framework translator should throw error when using a lib dependencies: [] }; const projectPreprocessorTree = Object.assign({}, translatorTree, { - specVersion: "1.1", + specVersion: "2.0", type: "application", metadata: { name: "test-project" diff --git a/packages/project/test/lib/translators/ui5Framework.js b/packages/project/test/lib/translators/ui5Framework.js index 831bbc5ec3f..7ac9a640075 100644 --- a/packages/project/test/lib/translators/ui5Framework.js +++ b/packages/project/test/lib/translators/ui5Framework.js @@ -228,6 +228,7 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project without dependencies", test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dependency with libraries", (t) => { const tree = { id: "test1", + specVersion: "2.0", metadata: { name: "test1" }, @@ -249,6 +250,7 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dep dependencies: [ { id: "test2", + specVersion: "2.0", metadata: { name: "test2" }, @@ -266,6 +268,7 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dep dependencies: [ { id: "test3", + specVersion: "2.0", metadata: { name: "test3" }, @@ -286,6 +289,7 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dep }, { id: "@sapui5/lib8", + specVersion: "2.0", metadata: { name: "lib8" }, @@ -300,6 +304,7 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dep }, { id: "@openui5/lib9", + specVersion: "1.1", metadata: { name: "lib9" }, @@ -307,9 +312,17 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dep }, { id: "@foo/library", + specVersion: "1.1", metadata: { name: "foo.library" }, + framework: { + libraries: [ + { + name: "should.also.be.ignored" + } + ] + }, dependencies: [] } ] From f9f0978db02cb253795e4860fb9f9949c70d9774 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 22 Mar 2020 03:21:36 +0000 Subject: [PATCH 0307/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 243 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 112 insertions(+), 133 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 78dcc852294..804d10e103e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,22 +43,23 @@ } }, "@babel/core": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.7.tgz", - "integrity": "sha512-rBlqF3Yko9cynC5CCFy6+K/w2N+Sq/ff2BPy+Krp7rHlABIr5epbA7OxVeKoMHB39LZOp1UY5SuLjy6uWi35yA==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz", + "integrity": "sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.7", - "@babel/helpers": "^7.8.4", - "@babel/parser": "^7.8.7", + "@babel/generator": "^7.9.0", + "@babel/helper-module-transforms": "^7.9.0", + "@babel/helpers": "^7.9.0", + "@babel/parser": "^7.9.0", "@babel/template": "^7.8.6", - "@babel/traverse": "^7.8.6", - "@babel/types": "^7.8.7", + "@babel/traverse": "^7.9.0", + "@babel/types": "^7.9.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", - "json5": "^2.1.0", + "json5": "^2.1.2", "lodash": "^4.17.13", "resolve": "^1.3.2", "semver": "^5.4.1", @@ -95,12 +96,12 @@ } }, "@babel/generator": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.8.tgz", - "integrity": "sha512-HKyUVu69cZoclptr8t8U5b6sx6zoWjh8jiUhnuj3MpZuKT2dJ8zPTuiy31luq32swhI0SpwItCIlU8XW7BZeJg==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.0.tgz", + "integrity": "sha512-onl4Oy46oGCzymOXtKMQpI7VXtCbTSHK1kqBydZ6AmzuNcacEVqGk9tZtAS+48IA9IstZcDCgIg8hQKnb7suRw==", "dev": true, "requires": { - "@babel/types": "^7.8.7", + "@babel/types": "^7.9.0", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -173,9 +174,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.6.tgz", - "integrity": "sha512-RDnGJSR5EFBJjG3deY0NiL0K9TO8SXxS9n/MPsbPK/s9LbQymuLNtlzvDiNS7IpecuL45cMeLVkA+HfmlrnkRg==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz", + "integrity": "sha512-0FvKyu0gpPfIQ8EkxlrAydOWROdHpBmiCiRwLkUiBGhCUPRRbVD2/tm3sFr/c/GWFrQ/ffutGUAnx7V0FzT2wA==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.8.3", @@ -183,7 +184,7 @@ "@babel/helper-simple-access": "^7.8.3", "@babel/helper-split-export-declaration": "^7.8.3", "@babel/template": "^7.8.6", - "@babel/types": "^7.8.6", + "@babel/types": "^7.9.0", "lodash": "^4.17.13" } }, @@ -255,6 +256,12 @@ "@babel/types": "^7.8.3" } }, + "@babel/helper-validator-identifier": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz", + "integrity": "sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==", + "dev": true + }, "@babel/helper-wrap-function": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz", @@ -268,31 +275,31 @@ } }, "@babel/helpers": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.4.tgz", - "integrity": "sha512-VPbe7wcQ4chu4TDQjimHv/5tj73qz88o12EPkO2ValS2QiQS/1F2SsjyIGNnAD0vF/nZS6Cf9i+vW6HIlnaR8w==", + "version": "7.9.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.2.tgz", + "integrity": "sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA==", "dev": true, "requires": { "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.4", - "@babel/types": "^7.8.3" + "@babel/traverse": "^7.9.0", + "@babel/types": "^7.9.0" } }, "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", + "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", "dev": true, "requires": { + "@babel/helper-validator-identifier": "^7.9.0", "chalk": "^2.0.0", - "esutils": "^2.0.2", "js-tokens": "^4.0.0" } }, "@babel/parser": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.8.tgz", - "integrity": "sha512-mO5GWzBPsPf6865iIbzNE0AvkKF3NE+2S3eRUpE+FE07BOAkXh6G+GW/Pj01hhXjve1WScbaIO4UlY1JKeqCcA==" + "version": "7.9.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.2.tgz", + "integrity": "sha512-2jyvKdoOS1aWAFL2rjJZmamyDDkPCx/AAz4/Wh1Dfxvw8qqnOvek/ZlHQ2noO/o8JpnXa/WiUUFOv48meBKkpA==" }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.8.3", @@ -363,12 +370,12 @@ } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.3.tgz", - "integrity": "sha512-JpdMEfA15HZ/1gNuB9XEDlZM1h/gF/YOH7zaZzQu2xCFRfwc01NXBMHHSTT6hRjlXJJs5x/bfODM3LiCk94Sxg==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.9.0.tgz", + "integrity": "sha512-qzlCrLnKqio4SlgJ6FMMLBe4bySNis8DFn1VkGmOcxG9gqEyPIOzeQrA//u0HAKrWpJlpZbZMPB1n/OPa4+n8g==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-module-transforms": "^7.9.0", "@babel/helper-plugin-utils": "^7.8.3", "@babel/helper-simple-access": "^7.8.3", "babel-plugin-dynamic-import-node": "^2.3.0" @@ -386,17 +393,17 @@ } }, "@babel/traverse": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.6.tgz", - "integrity": "sha512-2B8l0db/DPi8iinITKuo7cbPznLCEk0kCxDoB9/N6gGNg/gxOXiR/IcymAFPiBwk5w6TtQ27w4wpElgp9btR9A==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.0.tgz", + "integrity": "sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.6", + "@babel/generator": "^7.9.0", "@babel/helper-function-name": "^7.8.3", "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6", + "@babel/parser": "^7.9.0", + "@babel/types": "^7.9.0", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -420,12 +427,12 @@ } }, "@babel/types": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.7.tgz", - "integrity": "sha512-k2TreEHxFA4CjGkL+GYjRyx35W0Mr7DP5+9q6WMkyKXB+904bYmG40syjMFV0oLlhhFCwWl0vA0DyzTDkwAiJw==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", + "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", "dev": true, "requires": { - "esutils": "^2.0.2", + "@babel/helper-validator-identifier": "^7.9.0", "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" } @@ -660,9 +667,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.9.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.1.tgz", - "integrity": "sha512-E6M6N0blf/jiZx8Q3nb0vNaswQeEyn0XlupO+xN6DtJ6r6IT4nXrTry7zhIfYvFCl3/8Cu6WIysmUBKiqV0bqQ==" + "version": "13.9.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.2.tgz", + "integrity": "sha512-bnoqK579sAYrQbp73wwglccjJ4sfRdKU7WNEZ5FW4K2U6Kc0/eZ5kvXG0JKsEKFB50zrFmfFt52/cvBbZa7eXg==" }, "@ui5/builder": { "version": "1.10.1", @@ -2043,11 +2050,11 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", + "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } }, "rimraf": { @@ -2081,24 +2088,16 @@ } }, "coveralls": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.9.tgz", - "integrity": "sha512-nNBg3B1+4iDox5A5zqHKzUTiwl2ey4k2o0NEcVZYvl+GOSJdKBj4AJGKLv6h3SvWch7tABHePAQOSZWM9E2hMg==", + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.11.tgz", + "integrity": "sha512-LZPWPR2NyGKyaABnc49dR0fpeP6UqhvGq4B5nUrTQ1UBy55z96+ga7r+/ChMdMJUwBgyJDXBi88UBgz2rs9IiQ==", "dev": true, "requires": { "js-yaml": "^3.13.1", "lcov-parse": "^1.0.0", "log-driver": "^1.2.7", - "minimist": "^1.2.0", + "minimist": "^1.2.5", "request": "^2.88.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - } } }, "cross-env": { @@ -2487,11 +2486,11 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", + "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } }, "rimraf": { @@ -2915,12 +2914,12 @@ "dev": true }, "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", + "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", "dev": true, "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } }, "ms": { @@ -3563,9 +3562,9 @@ } }, "glob-parent": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", - "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", "requires": { "is-glob": "^4.0.1" } @@ -3733,9 +3732,9 @@ } }, "html-escaper": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.0.tgz", - "integrity": "sha512-a4u9BeERWGu/S8JiWEAQcdrg9v4QArtP9keViQjGMdff20fBdd8waotXaNmODqBe6uZ3Nafi7K/ho4gCQHV3Ig==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.1.tgz", + "integrity": "sha512-hNX23TjWwD3q56HpWjUHOKj1+4KKlnjv9PcmBUYKVpga+2cnb9nDx/B1o0yO4n+RZXZdiNxzx6B24C9aNMTkkQ==", "dev": true }, "htmlparser2": { @@ -4547,11 +4546,11 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", + "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } } } @@ -4606,20 +4605,12 @@ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, "json5": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", - "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.2.tgz", + "integrity": "sha512-MoUOQ4WdiN3yxhm7NEVJSJrieAo5hNSLQ5sj05OTRHPL9HOBy8u4Bu88jsC1jvqAdN+E1bJmsUcZH+1HQxliqQ==", "dev": true, "requires": { - "minimist": "^1.2.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - } + "minimist": "^1.2.5" } }, "jsonparse": { @@ -5118,9 +5109,9 @@ } }, "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "minimist-options": { "version": "3.0.2", @@ -5252,11 +5243,11 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", + "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } }, "rimraf": { @@ -5944,9 +5935,9 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "picomatch": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.1.tgz", - "integrity": "sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA==" + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" }, "pify": { "version": "3.0.0", @@ -6228,12 +6219,6 @@ "strip-json-comments": "~2.0.1" }, "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -7287,12 +7272,6 @@ "xtend": "~4.0.0" }, "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, "tap-parser": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", @@ -7365,9 +7344,9 @@ } }, "terser": { - "version": "4.6.6", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.6.tgz", - "integrity": "sha512-4lYPyeNmstjIIESr/ysHg2vUPRGf2tzF9z2yYwnowXVuVzLEamPN1Gfrz7f8I9uEPuHcbFlW4PLIAsJoxXyJ1g==", + "version": "4.6.7", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.7.tgz", + "integrity": "sha512-fmr7M1f7DBly5cX2+rFDvmGBAaaZyPrHYK4mMdHEDAdNTqXSZgSOfqsfGq2HqPGT/1V0foZZuCZFx8CHKgAk3g==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -7622,12 +7601,12 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", + "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", "dev": true, "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } } } @@ -7878,12 +7857,12 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", + "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", "dev": true, "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } } } @@ -7943,9 +7922,9 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "yargs": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.0.tgz", - "integrity": "sha512-g/QCnmjgOl1YJjGsnUg2SatC7NUYEiLXJqxNOQU9qSpjzGtGXda9b+OKccr1kLTy8BN9yqEyqfq5lxlwdc13TA==", + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", + "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", "dev": true, "requires": { "cliui": "^6.0.0", @@ -7958,7 +7937,7 @@ "string-width": "^4.2.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^18.1.0" + "yargs-parser": "^18.1.1" }, "dependencies": { "ansi-regex": { @@ -8040,9 +8019,9 @@ } }, "yargs-parser": { - "version": "18.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.0.tgz", - "integrity": "sha512-o/Jr6JBOv6Yx3pL+5naWSoIA2jJ+ZkMYQG/ie9qFbukBe4uzmBatlXFOiu/tNKRWEtyf+n5w7jc/O16ufqOTdQ==", + "version": "18.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.1.tgz", + "integrity": "sha512-KRHEsOM16IX7XuLnMOqImcPNbLVXMNHYAoFc3BKR8Ortl5gzDbtXvvEoGx9imk5E+X1VeNKNlcHr8B8vi+7ipA==", "dev": true, "requires": { "camelcase": "^5.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index cf54125fd15..a7d6712ee7b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -112,7 +112,7 @@ }, "devDependencies": { "ava": "^2.4.0", - "coveralls": "^3.0.9", + "coveralls": "^3.0.11", "cross-env": "^7.0.2", "docdash": "^1.2.0", "eslint": "^5.16.0", From 3b9aa07a5dec0e9ccf29b58708ea700e266dd053 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 23 Mar 2020 19:12:17 +0100 Subject: [PATCH 0308/1272] [ui5-project][INTERNAL] ui5Framework: Improve error handling and logging Registry 404 errors should include package version --- .../project/lib/translators/ui5Framework.js | 43 ++++++++++++------- .../project/lib/ui5Framework/npm/Registry.js | 8 +++- .../translators/ui5Framework.integration.js | 34 +++++++++------ 3 files changed, 55 insertions(+), 30 deletions(-) diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index eef2ea5c187..f38f8f93d15 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -72,27 +72,36 @@ const utils = { return ui5Dependencies; } - if (project.specVersion === "2.0") { - if (project.framework && project.framework.libraries) { - project.framework.libraries.forEach((dependency) => { - if (!ui5Dependencies.includes(dependency.name) && utils.shouldIncludeDependency(dependency, root)) { - ui5Dependencies.push(dependency.name); - } - }); - } else { - log.verbose(`Project ${project.metadata.name} defines no framework.libraries configuration`); - // Possible future enhancement: Fallback to detect OpenUI5 framework dependencies in package.json - } - } else { - log.verbose(`Project ${project.metadata.name} defines invalid ` + - `specification version ${project.specVersion} for framework.libraries configuration`); - } + this._addFrameworkLibrariesFromProject(project, ui5Dependencies, root); project.dependencies.map((depProject) => { utils.getFrameworkLibrariesFromTree(depProject, ui5Dependencies, false); }); return ui5Dependencies; }, + _addFrameworkLibrariesFromProject(project, ui5Dependencies, root) { + if (!project.framework) { + return; + } + if (project.specVersion !== "2.0") { + log.warn(`Project ${project.metadata.name} defines invalid ` + + `specification version ${project.specVersion} for framework.libraries configuration`); + return; + } + + if (!project.framework.libraries || !project.framework.libraries.length) { + log.verbose(`Project ${project.metadata.name} defines no framework.libraries configuration`); + // Possible future enhancement: Fallback to detect OpenUI5 framework dependencies in package.json + return; + } + + project.framework.libraries.forEach((dependency) => { + if (!ui5Dependencies.includes(dependency.name) && + utils.shouldIncludeDependency(dependency, root)) { + ui5Dependencies.push(dependency.name); + } + }); + }, ProjectProcessor }; @@ -145,6 +154,10 @@ module.exports = { log.info(`Using ${frameworkName} version: ${version}`); const referencedLibraries = utils.getFrameworkLibrariesFromTree(tree); + if (!referencedLibraries.length) { + log.verbose(`No ${frameworkName} libraries referenced in project ${tree.id} or its dependencies`); + return null; + } let resolver; if (frameworkName === "OpenUI5") { diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index 0d4716f41db..31bada49a7b 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -16,8 +16,12 @@ class Registry { requestPackageManifest(pkgName, version) { return this._pacote.manifest(`${pkgName}@${version}`, this._getPacoteOptions()); } - extractPackage(pkgName, version, targetDir) { - return this._pacote.extract(`${pkgName}@${version}`, targetDir, this._getPacoteOptions()); + async extractPackage(pkgName, version, targetDir) { + try { + await this._pacote.extract(`${pkgName}@${version}`, targetDir, this._getPacoteOptions()); + } catch (err) { + throw new Error(`Failed to extract package ${pkgName}@${version}: ${err.message}`); + } } _getPacoteOptions() { if (!this._npmConfig) { diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index a7e66d0fb00..c22c90b524f 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -513,9 +513,9 @@ function defineErrorTest(testName, { if (failExtract) { extractStub .withArgs("@sapui5/sap.ui.lib1@1.75.1") - .rejects(new Error("Failed extracting package @sapui5/sap.ui.lib1@1.75.1")) + .rejects(new Error("404 - @sapui5/sap.ui.lib1")) .withArgs("@openui5/sap.ui.lib4@1.75.4") - .rejects(new Error("Failed extracting package @openui5/sap.ui.lib4@1.75.4")); + .rejects(new Error("404 - @openui5/sap.ui.lib4")); } else { extractStub .withArgs("@sapui5/sap.ui.lib1@1.75.1").resolves() @@ -524,7 +524,7 @@ function defineErrorTest(testName, { if (failMetadata) { extractStub .withArgs("@sapui5/distribution-metadata@1.75.0") - .rejects(new Error("Failed extracting package @sapui5/distribution-metadata@1.75.0")); + .rejects(new Error("404 - @sapui5/distribution-metadata")); } else { extractStub .withArgs("@sapui5/distribution-metadata@1.75.0") @@ -574,9 +574,9 @@ function defineErrorTest(testName, { if (failExtract) { extractStub .withArgs("@openui5/sap.ui.lib1@1.75.0") - .rejects(new Error("Failed extracting package @openui5/sap.ui.lib1@1.75.0")) + .rejects(new Error("404 - @openui5/sap.ui.lib1")) .withArgs("@openui5/sap.ui.lib4@1.75.0") - .rejects(new Error("Failed extracting package @openui5/sap.ui.lib4@1.75.0")); + .rejects(new Error("404 - @openui5/sap.ui.lib4")); } else { extractStub .withArgs("@openui5/sap.ui.lib1@1.75.0") @@ -616,23 +616,29 @@ defineErrorTest("SAPUI5: ui5Framework translator should throw a proper error whe frameworkName: "SAPUI5", failMetadata: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Failed extracting package @sapui5/distribution-metadata@1.75.0 -Failed to resolve library sap.ui.lib4: Failed extracting package @sapui5/distribution-metadata@1.75.0` // TODO: should only be returned once? +Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + +`404 - @sapui5/distribution-metadata +Failed to resolve library sap.ui.lib4: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + +`404 - @sapui5/distribution-metadata` // TODO: should only be returned once? }); defineErrorTest("SAPUI5: ui5Framework translator should throw a proper error when package extraction fails", { frameworkName: "SAPUI5", failExtract: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Failed extracting package @sapui5/sap.ui.lib1@1.75.1 -Failed to resolve library sap.ui.lib4: Failed extracting package @openui5/sap.ui.lib4@1.75.4` +Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/sap.ui.lib1@1.75.1: ` + +`404 - @sapui5/sap.ui.lib1 +Failed to resolve library sap.ui.lib4: Failed to extract package @openui5/sap.ui.lib4@1.75.4: ` + +`404 - @openui5/sap.ui.lib4` }); defineErrorTest("SAPUI5: ui5Framework translator should throw a proper error when metadata request and package extraction fails", { frameworkName: "SAPUI5", failMetadata: true, failExtract: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Failed extracting package @sapui5/distribution-metadata@1.75.0 -Failed to resolve library sap.ui.lib4: Failed extracting package @sapui5/distribution-metadata@1.75.0` +Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + +`404 - @sapui5/distribution-metadata +Failed to resolve library sap.ui.lib4: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + +`404 - @sapui5/distribution-metadata` }); @@ -647,8 +653,10 @@ defineErrorTest("OpenUI5: ui5Framework translator should throw a proper error wh frameworkName: "OpenUI5", failExtract: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Failed extracting package @openui5/sap.ui.lib1@1.75.0 -Failed to resolve library sap.ui.lib4: Failed extracting package @openui5/sap.ui.lib4@1.75.0` +Failed to resolve library sap.ui.lib1: Failed to extract package @openui5/sap.ui.lib1@1.75.0: ` + +`404 - @openui5/sap.ui.lib1 +Failed to resolve library sap.ui.lib4: Failed to extract package @openui5/sap.ui.lib4@1.75.0: ` + +`404 - @openui5/sap.ui.lib4` }); defineErrorTest("OpenUI5: ui5Framework translator should throw a proper error when metadata request and package extraction fails", { frameworkName: "OpenUI5", From 0a300531552e6b1cc8004f9b514c11757bdb1fb8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 23 Mar 2020 19:12:54 +0100 Subject: [PATCH 0309/1272] [ui5-project][INTERNAL] ui5Framework: Fix mergeTrees() handling of optional and dev-dependencies --- .../project/lib/translators/ui5Framework.js | 29 ++++++++++++++----- .../translators/ui5Framework.integration.js | 16 ++++++++++ 2 files changed, 37 insertions(+), 8 deletions(-) diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index f38f8f93d15..994ec832905 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -230,14 +230,27 @@ module.exports = { queue.push(...project.dependencies); if (project.specVersion === "2.0" && project.framework && project.framework.libraries) { - const frameworkDeps = project.framework.libraries.map((dependency) => { - if (!frameworkLibs[dependency.name]) { - throw new Error(`Missing framework library ${dependency.name} ` + - `required by project ${project.metadata.name}`); - } - return frameworkLibs[dependency.name]; - }); - project.dependencies.push(...frameworkDeps); + const frameworkDeps = project.framework.libraries + .filter((dependency) => { + // Filter out development and unresolved optional dependencies + if (dependency.development) { + return false; + } + if (!frameworkLibs[dependency.name] && dependency.optional) { + return false; + } + return true; + }) + .map((dependency) => { + if (!frameworkLibs[dependency.name]) { + throw new Error(`Missing framework library ${dependency.name} ` + + `required by project ${project.metadata.name}`); + } + return frameworkLibs[dependency.name]; + }); + if (frameworkDeps.length) { + project.dependencies.push(...frameworkDeps); + } } } return projectTree; diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index c22c90b524f..be7480f87f6 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -208,6 +208,14 @@ function defineTest(testName, { }, { name: "sap.ui.lib2" + }, + { + name: "sap.ui.lib5", + optional: true + }, + { + name: "sap.ui.lib6", + development: true } ] } @@ -364,6 +372,14 @@ function defineTest(testName, { }, { name: "sap.ui.lib2" + }, + { + name: "sap.ui.lib5", + optional: true + }, + { + name: "sap.ui.lib6", + development: true } ] }, From d6d9a375acef36a1200a90a278d657c26a07e901 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 23 Mar 2020 20:31:28 +0100 Subject: [PATCH 0310/1272] [ui5-project][INTERNAL] projectPreprocessor tests: Adopt to required namespaces Tests are failing due to https://github.com/SAP/ui5-builder/pull/430 Adopt tests to provide necessary manifest.json files and expect the corresponding namespace information. --- .../application.a/webapp/manifest.json | 13 ++++++++++ .../application.cycle.a/webapp/manifest.json | 13 ++++++++++ .../library.cycle.a/src/cycle/a/.library | 2 +- .../library.cycle.b/src/cycle/b/.library | 2 +- packages/project/test/lib/extensions.js | 3 +++ .../project/test/lib/projectPreprocessor.js | 24 ++++++++++++++----- 6 files changed, 49 insertions(+), 8 deletions(-) create mode 100644 packages/project/test/fixtures/application.a/webapp/manifest.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/manifest.json diff --git a/packages/project/test/fixtures/application.a/webapp/manifest.json b/packages/project/test/fixtures/application.a/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/application.a/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/.library index 5fd459a0d3e..f9cfdf7313d 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/.library +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/.library @@ -1,7 +1,7 @@ - library.cycle.a + cycle.a SAP SE ${copyright} ${version} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/.library index bc47d278ec7..d7b129ae80e 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/.library +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/.library @@ -1,7 +1,7 @@ - library.cycle.b + cycle.b SAP SE ${copyright} ${version} diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index a490e7e1fa9..c518efe9e9a 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -62,6 +62,7 @@ test("Project with project-shim extension with dependency configuration", (t) => type: "application", metadata: { name: "xy", + namespace: "id1" }, resources: { configuration: { @@ -175,6 +176,7 @@ test("Project with project-shim extension with dependency declaration and config type: "application", metadata: { name: "xy", + namespace: "id1" }, resources: { configuration: { @@ -348,6 +350,7 @@ test("Project with project-shim extension with collection", (t) => { type: "application", metadata: { name: "xy", + namespace: "id1" }, resources: { configuration: { diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 8d764c2af39..be02538a612 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -36,6 +36,7 @@ test("Project with inline configuration", (t) => { type: "application", metadata: { name: "xy", + namespace: "id1" }, resources: { configuration: { @@ -71,7 +72,8 @@ test("Project with configPath", (t) => { _level: 0, type: "application", metadata: { - name: "application.b" + name: "application.b", + namespace: "id1" }, resources: { configuration: { @@ -107,7 +109,8 @@ test("Project with ui5.yaml at default location", (t) => { _level: 0, type: "application", metadata: { - name: "application.a" + name: "application.a", + namespace: "id1" }, resources: { configuration: { @@ -194,7 +197,8 @@ test("No type configured for root project", (t) => { path: path.join(__dirname, "../fixtures/application.a"), dependencies: [], metadata: { - name: "application.a" + name: "application.a", + namespace: "id1" } }; return t.throwsAsync(projectPreprocessor.processTree(tree), @@ -328,7 +332,8 @@ test("Ignores additional application-projects", (t) => { _level: 0, type: "application", metadata: { - name: "application.a" + name: "application.a", + namespace: "id1" }, resources: { configuration: { @@ -418,7 +423,8 @@ test("Inconsistent dependencies with same ID", (t) => { _level: 0, type: "application", metadata: { - name: "application.a" + name: "application.a", + namespace: "id1" }, resources: { configuration: { @@ -689,7 +695,8 @@ const expectedTreeWithInvalidModules = { "specVersion": "1.0", "type": "application", "metadata": { - "name": "application.a" + "name": "application.a", + "namespace": "id1" }, "_level": 0, "kind": "project", @@ -831,6 +838,7 @@ const expectedTreeAWithInlineConfigs = { "type": "application", "metadata": { "name": "application.a", + "namespace": "id1" }, "resources": { "configuration": { @@ -945,6 +953,7 @@ const expectedTreeAWithConfigPaths = { "type": "application", "metadata": { "name": "application.a", + "namespace": "id1" }, "resources": { "configuration": { @@ -1402,6 +1411,7 @@ const expectedTreeApplicationCycleA = { "type": "application", "metadata": { "name": "application.cycle.a", + "namespace": "id1" }, "dependencies": [ { @@ -1424,6 +1434,7 @@ const expectedTreeApplicationCycleA = { "type": "library", "metadata": { "name": "library.cycle.a", + "namespace": "cycle/a", "copyright": "${copyright}" }, "dependencies": [ @@ -1464,6 +1475,7 @@ const expectedTreeApplicationCycleA = { "type": "library", "metadata": { "name": "library.cycle.b", + "namespace": "cycle/b", "copyright": "${copyright}" }, "dependencies": [ From 9c0d7374938432df42688742fdb62576952d1fee Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 24 Mar 2020 13:44:33 +0100 Subject: [PATCH 0311/1272] [ui5-project][INTERNAL] Azure Pipelines: Rerun tests with native AVA output on failure Also name all steps properly --- packages/project/azure-pipelines.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 9f4665dd930..b17d1ff63ed 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -31,20 +31,28 @@ steps: - task: NodeTool@0 inputs: versionSpec: $(node_version) - displayName: 'Install Node.js' + displayName: Install Node.js - script: npm ci + displayName: Install Dependencies + - script: npm run test-azure + displayName: Run Tests - task: PublishTestResults@2 + displayName: Publish Test Results condition: succeededOrFailed() inputs: testResultsFormat: 'JUnit' testResultsFiles: '$(System.DefaultWorkingDirectory)/test-results.xml' - task: PublishCodeCoverageResults@1 + displayName: Publish Test Coverage Results condition: succeededOrFailed() inputs: codeCoverageTool: 'cobertura' summaryFileLocation: '$(System.DefaultWorkingDirectory)/coverage/cobertura-coverage.xml' +- script: npm run test + displayName: Run Test Natively in Case of Failures + condition: failed() From daa2eaafe6e7c90d30113bc480cf212d7d6de3ac Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 24 Mar 2020 09:24:49 +0100 Subject: [PATCH 0312/1272] [ui5-project][INTERNAL] Add jsdoc-watch script --- packages/project/package-lock.json | 135 +++++++++++++++++++++++++++++ packages/project/package.json | 2 + 2 files changed, 137 insertions(+) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 804d10e103e..a7fdb2f5eee 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1638,6 +1638,129 @@ } } }, + "chokidar-cli": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-2.1.0.tgz", + "integrity": "sha512-6n21AVpW6ywuEPoxJcLXMA2p4T+SLjWsXKny/9yTWFz0kKxESI3eUylpeV97LylING/27T/RVTY0f2/0QaWq9Q==", + "dev": true, + "requires": { + "chokidar": "^3.2.3", + "lodash.debounce": "^4.0.8", + "lodash.throttle": "^4.1.1", + "yargs": "^13.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, "chownr": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", @@ -4755,6 +4878,12 @@ "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", "dev": true }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, "lodash.defaults": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", @@ -4828,6 +4957,12 @@ "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" }, + "lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", + "dev": true + }, "log-driver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index a7d6712ee7b..eb47b05ee37 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -31,6 +31,7 @@ "coverage-xunit": "nyc --reporter=text --reporter=text-summary --reporter=cobertura npm run unit-xunit", "jsdoc": "npm run jsdoc-generate && open-cli jsdocs/index.html", "jsdoc-generate": "node_modules/.bin/jsdoc -c ./jsdoc.json ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", + "jsdoc-watch": "npm run jsdoc && chokidar \"./lib/**/*.js\" -c \"npm run jsdoc-generate\"", "preversion": "npm test", "version": "git-chglog --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", "postversion": "git push --follow-tags", @@ -112,6 +113,7 @@ }, "devDependencies": { "ava": "^2.4.0", + "chokidar-cli": "^2.1.0", "coveralls": "^3.0.11", "cross-env": "^7.0.2", "docdash": "^1.2.0", From 17910aac9476f28c2f5026daeae13cc8b3632336 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 24 Mar 2020 19:46:52 +0100 Subject: [PATCH 0313/1272] [ui5-project][INTERNAL] ui5Framework: Fix handling of optional dependencies on root project --- .../project/lib/translators/ui5Framework.js | 12 ++--- .../translators/ui5Framework.integration.js | 47 +++++++++++++++++++ 2 files changed, 52 insertions(+), 7 deletions(-) diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 994ec832905..ebe0d337149 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -232,14 +232,12 @@ module.exports = { if (project.specVersion === "2.0" && project.framework && project.framework.libraries) { const frameworkDeps = project.framework.libraries .filter((dependency) => { - // Filter out development and unresolved optional dependencies - if (dependency.development) { - return false; + if (dependency.optional && frameworkLibs[dependency.name]) { + // Resolved optional dependencies shall be used + return true; } - if (!frameworkLibs[dependency.name] && dependency.optional) { - return false; - } - return true; + // Filter out development and unresolved optional dependencies for non-root projects + return utils.shouldIncludeDependency(dependency, project._level === 0); }) .map((dependency) => { if (!frameworkLibs[dependency.name]) { diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index be7480f87f6..6614c7f9308 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -84,6 +84,12 @@ function defineTest(testName, { "sap.ui.lib1" ], optionalDependencies: [] + }, + "sap.ui.lib8": { + npmPackageName: "@sapui5/sap.ui.lib8", + version: "1.75.8", + dependencies: [], + optionalDependencies: [] } } }; @@ -189,6 +195,10 @@ function defineTest(testName, { { name: "sap.ui.lib4", optional: true + }, + { + name: "sap.ui.lib8", + development: true } ] } @@ -216,6 +226,10 @@ function defineTest(testName, { { name: "sap.ui.lib6", development: true + }, + { + name: "sap.ui.lib8", + optional: true // optional dependency gets resolved by dev-dependency of root project } ] } @@ -286,6 +300,17 @@ function defineTest(testName, { name: "sap.ui.lib4" }, framework: {libraries: []} + }]) + .withArgs(path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib8", + frameworkName === "SAPUI5" ? "1.75.8" : "1.75.0", "ui5.yaml" + )) + .resolves([{ + specVersion: "1.0", + type: "library", + metadata: { + name: "sap.ui.lib8" + }, + framework: {libraries: []} }]); // Prevent applying types as this would require a lot of mocking @@ -327,6 +352,12 @@ function defineTest(testName, { dependencies: { "@openui5/sap.ui.lib1": "1.75.0" } + }) + .withArgs("@openui5/sap.ui.lib8@1.75.0") + .resolves({ + name: "@openui5/sap.ui.lib8", + version: "1.75.0", + dependencies: {} }); } else if (frameworkName === "SAPUI5") { sinon.stub(Installer.prototype, "readJson") @@ -355,6 +386,10 @@ function defineTest(testName, { { name: "sap.ui.lib4", optional: true + }, + { + name: "sap.ui.lib8", + development: true } ] }, @@ -380,6 +415,10 @@ function defineTest(testName, { { name: "sap.ui.lib6", development: true + }, + { + name: "sap.ui.lib8", + optional: true } ] }, @@ -409,6 +448,10 @@ function defineTest(testName, { ] }) ] + }), + frameworkProject({ + _level: 1, + name: "sap.ui.lib8", }) ] }), @@ -445,6 +488,10 @@ function defineTest(testName, { name: "sap.ui.lib1" }) ] + }), + frameworkProject({ + _level: 1, + name: "sap.ui.lib8", }) ] }); From 7a8915d1b1f2eb63939754e03a5369ecd22d7316 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= <1410947+matz3@users.noreply.github.com> Date: Tue, 24 Mar 2020 21:01:41 +0100 Subject: [PATCH 0314/1272] [ui5-project][FEATURE] Add Configuration Schema (#274) Adds a JSON Schema to validate a UI5 configuration and report errors. For projects with "specVersion" lower than 2.0 all properties are allowed and no validation is done apart from the specVersion itself. --- packages/project/index.js | 9 + packages/project/lib/projectPreprocessor.js | 133 ++- .../project/lib/validation/ValidationError.js | 274 +++++ .../validation/schema/specVersion/2.0.json | 40 + .../specVersion/2.0/kind/extension.json | 60 ++ .../2.0/kind/extension/project-shim.json | 68 ++ .../2.0/kind/extension/server-middleware.json | 29 + .../specVersion/2.0/kind/extension/task.json | 29 + .../schema/specVersion/2.0/kind/project.json | 330 ++++++ .../2.0/kind/project/application.json | 88 ++ .../specVersion/2.0/kind/project/library.json | 92 ++ .../specVersion/2.0/kind/project/module.json | 41 + .../2.0/kind/project/theme-library.json | 47 + .../project/lib/validation/schema/ui5.json | 55 + packages/project/lib/validation/validator.js | 83 ++ packages/project/package-lock.json | 536 ++++++++-- packages/project/package.json | 13 +- packages/project/test/lib/extensions.js | 45 + .../project/test/lib/projectPreprocessor.js | 280 +++++- .../translators/ui5Framework.integration.js | 306 +++--- .../test/lib/validation/ValidationError.js | 938 ++++++++++++++++++ .../schema/specVersion/2.0/kind/extension.js | 152 +++ .../2.0/kind/extension/project-shim.js | 164 +++ .../2.0/kind/extension/server-middleware.js | 71 ++ .../specVersion/2.0/kind/extension/task.js | 69 ++ .../schema/specVersion/2.0/kind/project.js | 305 ++++++ .../2.0/kind/project/application.js | 632 ++++++++++++ .../specVersion/2.0/kind/project/library.js | 704 +++++++++++++ .../specVersion/2.0/kind/project/module.js | 124 +++ .../2.0/kind/project/theme-library.js | 299 ++++++ .../project/test/lib/validation/schema/ui5.js | 269 +++++ .../project/test/lib/validation/validator.js | 22 + packages/project/test/utils/AjvCoverage.js | 146 +++ 33 files changed, 6198 insertions(+), 255 deletions(-) create mode 100644 packages/project/lib/validation/ValidationError.js create mode 100644 packages/project/lib/validation/schema/specVersion/2.0.json create mode 100644 packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json create mode 100644 packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json create mode 100644 packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json create mode 100644 packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json create mode 100644 packages/project/lib/validation/schema/specVersion/2.0/kind/project.json create mode 100644 packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json create mode 100644 packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json create mode 100644 packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json create mode 100644 packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json create mode 100644 packages/project/lib/validation/schema/ui5.json create mode 100644 packages/project/lib/validation/validator.js create mode 100644 packages/project/test/lib/validation/ValidationError.js create mode 100644 packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js create mode 100644 packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js create mode 100644 packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js create mode 100644 packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js create mode 100644 packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js create mode 100644 packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js create mode 100644 packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js create mode 100644 packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js create mode 100644 packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js create mode 100644 packages/project/test/lib/validation/schema/ui5.js create mode 100644 packages/project/test/lib/validation/validator.js create mode 100644 packages/project/test/utils/AjvCoverage.js diff --git a/packages/project/index.js b/packages/project/index.js index 8779e596384..dd95a207b25 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -14,6 +14,15 @@ module.exports = { Openui5Resolver: require("./lib/ui5Framework/Openui5Resolver"), Sapui5Resolver: require("./lib/ui5Framework/Sapui5Resolver") }, + /** + * @public + * @see module:@ui5/project.validation + * @namespace + */ + validation: { + validator: require("./lib/validation/validator"), + ValidationError: require("./lib/validation/ValidationError") + }, /** * @private * @see module:@ui5/project.translators diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 4f404e3ba8e..f6e2402d66c 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -3,8 +3,9 @@ const fs = require("graceful-fs"); const path = require("path"); const {promisify} = require("util"); const readFile = promisify(fs.readFile); -const parseYaml = require("js-yaml").safeLoadAll; +const jsyaml = require("js-yaml"); const typeRepository = require("@ui5/builder").types.typeRepository; +const {validate} = require("./validation/validator"); class ProjectPreprocessor { constructor({tree}) { @@ -80,7 +81,7 @@ class ProjectPreprocessor { return this.applyExtension(extProject); })); } - this.applyShims(project); + await this.applyShims(project); if (this.isConfigValid(project)) { // Do not apply transparent projects. // Their only purpose might be to have their dependencies processed @@ -194,26 +195,19 @@ class ProjectPreprocessor { async loadProjectConfiguration(project) { if (project.specVersion) { // Project might already be configured // Currently, specVersion is the indicator for configured projects - this.normalizeConfig(project); - return {}; - } - let configs; + if (project._transparentProject) { + // Assume that project is already processed + return {}; + } - // A projects configPath property takes precedence over the default "/ui5.yaml" path - const configPath = project.configPath || path.join(project.path, "/ui5.yaml"); - try { - configs = await this.readConfigFile(configPath); - } catch (err) { - const errorText = "Failed to read configuration for project " + - `${project.id} at "${configPath}". Error: ${err.message}`; + await this.validateAndNormalizeExistingProject(project); - if (err.code !== "ENOENT") { // Something else than "File or directory does not exist" - throw new Error(errorText); - } - log.verbose(errorText); + return {}; } + const configs = await this.readConfigFile(project); + if (!configs || !configs.length) { return {}; } @@ -384,11 +378,77 @@ class ProjectPreprocessor { } } - async readConfigFile(configPath) { - const configFile = await readFile(configPath); - return parseYaml(configFile, { - filename: path - }); + async readConfigFile(project) { + // A projects configPath property takes precedence over the default "/ui5.yaml" path + const configPath = project.configPath || path.join(project.path, "ui5.yaml"); + let configFile; + try { + configFile = await readFile(configPath, {encoding: "utf8"}); + } catch (err) { + const errorText = "Failed to read configuration for project " + + `${project.id} at "${configPath}". Error: ${err.message}`; + + // Something else than "File or directory does not exist" or root project + if (err.code !== "ENOENT" || project._level === 0) { + throw new Error(errorText); + } else { + log.verbose(errorText); + return null; + } + } + + let configs; + + try { + // Using loadAll with DEFAULT_SAFE_SCHEMA instead of safeLoadAll to pass "filename". + // safeLoadAll doesn't handle its parameters properly. + // See https://github.com/nodeca/js-yaml/issues/456 and https://github.com/nodeca/js-yaml/pull/381 + configs = jsyaml.loadAll(configFile, undefined, { + filename: configPath, + schema: jsyaml.DEFAULT_SAFE_SCHEMA + }); + } catch (err) { + if (err.name === "YAMLException") { + throw new Error("Failed to parse configuration for project " + + `${project.id} at "${configPath}"\nError: ${err.message}`); + } else { + throw err; + } + } + + if (!configs || !configs.length) { + return configs; + } + + const validationResults = await Promise.all( + configs.map(async (config, documentIndex) => { + // Catch validation errors to ensure proper order of rejections within Promise.all + try { + await validate({ + config, + project: { + id: project.id + }, + yaml: { + path: configPath, + source: configFile, + documentIndex + } + }); + } catch (error) { + return error; + } + }) + ); + + const validationErrors = validationResults.filter(($) => $); + + if (validationErrors.length > 0) { + // For now just throw the error of the first invalid document + throw validationErrors[0]; + } + + return configs; } handleShim(extension) { @@ -451,7 +511,7 @@ class ProjectPreprocessor { } } - applyShims(project) { + async applyShims(project) { const configShim = this.configShims[project.id]; // Apply configuration shims if (configShim) { @@ -482,6 +542,8 @@ class ProjectPreprocessor { Object.assign(project, configShim); delete project.shimDependenciesResolved; // Remove shim processing metadata from project + + await this.validateAndNormalizeExistingProject(project); } // Apply collections @@ -539,6 +601,31 @@ class ProjectPreprocessor { const middlewarePath = path.join(extension.path, extension.middleware.path); middlewareRepository.addMiddleware(extension.metadata.name, middlewarePath); } + + async validateAndNormalizeExistingProject(project) { + // Validate project config, but exclude additional properties + const excludedProperties = [ + "id", + "version", + "path", + "dependencies", + "_level" + ]; + const config = {}; + for (const key in project) { + if (project.hasOwnProperty(key) && !excludedProperties.includes(key)) { + config[key] = project[key]; + } + } + await validate({ + config, + project: { + id: project.id + } + }); + + this.normalizeConfig(project); + } } /** diff --git a/packages/project/lib/validation/ValidationError.js b/packages/project/lib/validation/ValidationError.js new file mode 100644 index 00000000000..bc21e9630b4 --- /dev/null +++ b/packages/project/lib/validation/ValidationError.js @@ -0,0 +1,274 @@ +const chalk = require("chalk"); +const escapeStringRegExp = require("escape-string-regexp"); +const matchAll = require("string.prototype.matchall"); + +/** + * Error class for validation of project configuration. + * + * @public + * @hideconstructor + * @extends Error + * @memberof module:@ui5/project.validation + */ +class ValidationError extends Error { + constructor({errors, project, yaml}) { + super(); + + /** + * ValidationError + * + * @const + * @default + * @type {string} + * @readonly + * @public + */ + this.name = "ValidationError"; + + this.project = project; + this.yaml = yaml; + + this.errors = ValidationError.filterErrors(errors); + + /** + * Formatted error message + * + * @type {string} + * @readonly + * @public + */ + this.message = this.formatErrors(); + + Error.captureStackTrace(this, this.constructor); + } + + formatErrors() { + let separator = "\n\n"; + if (process.stdout.isTTY) { + // Add a horizontal separator line between errors in case a terminal is used + separator += chalk.grey.dim("\u2500".repeat(process.stdout.columns || 80)); + } + separator += "\n\n"; + let message = chalk.red(`Invalid ui5.yaml configuration for project ${this.project.id}`) + "\n\n"; + message += this.errors.map((error) => { + return this.formatError(error); + }).join(separator); + return message; + } + + formatError(error) { + let errorMessage = ValidationError.formatMessage(error); + if (this.yaml && this.yaml.path && this.yaml.source) { + const yamlExtract = ValidationError.getYamlExtract({error, yaml: this.yaml}); + const errorLines = errorMessage.split("\n"); + errorLines.splice(1, 0, "\n" + yamlExtract); + errorMessage = errorLines.join("\n"); + } + return errorMessage; + } + + static formatMessage(error) { + if (error.keyword === "errorMessage") { + return error.message; + } + + let message = "Configuration "; + if (error.dataPath) { + message += chalk.underline(chalk.red(error.dataPath.substr(1))) + " "; + } + + switch (error.keyword) { + case "additionalProperties": + message += `property ${error.params.additionalProperty} is not expected to be here`; + break; + case "type": + message += `should be of type '${error.params.type}'`; + break; + case "enum": + message += error.message + "\n"; + message += "Allowed values: " + error.params.allowedValues.join(", "); + break; + default: + message += error.message; + } + + return message; + } + + static _findDuplicateError(error, errorIndex, errors) { + const foundIndex = errors.findIndex(($) => { + if ($.dataPath !== error.dataPath) { + return false; + } else if ($.keyword !== error.keyword) { + return false; + } else if (JSON.stringify($.params) !== JSON.stringify(error.params)) { + return false; + } else { + return true; + } + }); + return foundIndex !== errorIndex; + } + + static filterErrors(allErrors) { + return allErrors.filter((error, i, errors) => { + if (error.keyword === "if" || error.keyword === "oneOf") { + return false; + } + + return !ValidationError._findDuplicateError(error, i, errors); + }); + } + + static analyzeYamlError({error, yaml}) { + if (error.dataPath === "" && error.keyword === "required") { + // There is no line/column for a missing required property on root level + return {line: -1, column: -1}; + } + + // Skip leading / + const objectPath = error.dataPath.substr(1).split("/"); + + if (error.keyword === "additionalProperties") { + objectPath.push(error.params.additionalProperty); + } + + let currentSubstring; + let currentIndex; + if (yaml.documentIndex) { + const matchDocumentSeparator = /^---/gm; + const documents = matchAll(yaml.source, matchDocumentSeparator); + let currentDocumentIndex = 0; + for (const document of documents) { + // If the first separator is not at the beginning of the file + // we are already at document index 1 + // Using String#trim() to remove any whitespace characters + if (currentDocumentIndex === 0 && yaml.source.substring(0, document.index).trim().length > 0) { + currentDocumentIndex = 1; + } + + if (currentDocumentIndex === yaml.documentIndex) { + currentIndex = document.index; + currentSubstring = yaml.source.substring(currentIndex); + break; + } + + currentDocumentIndex++; + } + // Document could not be found + if (!currentSubstring) { + return {line: -1, column: -1}; + } + } else { + // In case of index 0 or no index, use whole source + currentIndex = 0; + currentSubstring = yaml.source; + } + + + const matchArrayElement = /(^|\r?\n)([ ]*-[^\r\n]*)/g; + const matchArrayElementIndentation = /([ ]*)-/; + + for (let i = 0; i < objectPath.length; i++) { + const property = objectPath[i]; + let newIndex; + + if (isNaN(property)) { + // Try to find a property + + // Creating a regular expression that matches the property name a line + // except for comments, indicated by a hash sign "#". + const propertyRegExp = new RegExp(`^[^#]*?${escapeStringRegExp(property)}`, "m"); + + const propertyMatch = propertyRegExp.exec(currentSubstring); + if (!propertyMatch) { + return {line: -1, column: -1}; + } + newIndex = propertyMatch.index + propertyMatch[0].length; + } else { + // Try to find the right index within an array definition. + // This currently only works for arrays defined with "-" in multiple lines. + // Arrays using square brackets are not supported. + + const arrayIndex = parseInt(property); + const arrayIndicators = matchAll(currentSubstring, matchArrayElement); + let a = 0; + let firstIndentation = -1; + for (const match of arrayIndicators) { + const indentationMatch = match[2].match(matchArrayElementIndentation); + if (!indentationMatch) { + return {line: -1, column: -1}; + } + const currentIndentation = indentationMatch[1].length; + if (firstIndentation === -1) { + firstIndentation = currentIndentation; + } else if (currentIndentation !== firstIndentation) { + continue; + } + if (a === arrayIndex) { + // match[1] might be a line-break + newIndex = match.index + match[1].length + currentIndentation; + break; + } + a++; + } + if (!newIndex) { + // Could not find array element + return {line: -1, column: -1}; + } + } + currentIndex += newIndex; + currentSubstring = yaml.source.substring(currentIndex); + } + + const linesUntilMatch = yaml.source.substring(0, currentIndex).split(/\r?\n/); + const line = linesUntilMatch.length; + let column = linesUntilMatch[line - 1].length + 1; + const lastPathSegment = objectPath[objectPath.length - 1]; + if (isNaN(lastPathSegment)) { + column -= lastPathSegment.length; + } + + return { + line, + column + }; + } + + static getSourceExtract(yamlSource, line, column) { + let source = ""; + const lines = yamlSource.split(/\r?\n/); + + // Using line numbers instead of array indices + const startLine = Math.max(line - 2, 1); + const endLine = Math.min(line, lines.length); + const padLength = String(endLine).length; + + for (let currentLine = startLine; currentLine <= endLine; currentLine++) { + const currentLineContent = lines[currentLine - 1]; + let string = chalk.gray( + String(currentLine).padStart(padLength, " ") + ":" + ) + " " + currentLineContent + "\n"; + if (currentLine === line) { + string = chalk.bgRed(string); + } + source += string; + } + + source += " ".repeat(column + padLength + 1) + chalk.red("^"); + + return source; + } + + static getYamlExtract({error, yaml}) { + const {line, column} = ValidationError.analyzeYamlError({error, yaml}); + if (line !== -1 && column !== -1) { + return chalk.grey(yaml.path + ":" + line) + + "\n\n" + ValidationError.getSourceExtract(yaml.source, line, column); + } else { + return chalk.grey(yaml.path) + "\n"; + } + } +} + +module.exports = ValidationError; diff --git a/packages/project/lib/validation/schema/specVersion/2.0.json b/packages/project/lib/validation/schema/specVersion/2.0.json new file mode 100644 index 00000000000..27bd1f9e8c7 --- /dev/null +++ b/packages/project/lib/validation/schema/specVersion/2.0.json @@ -0,0 +1,40 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/specVersion/2.0.json", + + "type": "object", + "required": ["specVersion", "metadata"], + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", "extension", null], + "$comment": "Using null to allow not defining 'kind' which defaults to project" + }, + "metadata": { + "$ref": "../ui5.json#/definitions/metadata" + } + }, + "if": { + "properties": { + "kind": { + "enum": ["project", null], + "$comment": "Using null to allow not defining 'kind' which defaults to project" + } + } + }, + "then": { + "$ref": "2.0/kind/project.json" + }, + "else": { + "if": { + "properties": { + "kind": { + "enum": ["extension"] + } + } + }, + "then": { + "$ref": "2.0/kind/extension.json" + } + } +} diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json new file mode 100644 index 00000000000..d49c9613d46 --- /dev/null +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json @@ -0,0 +1,60 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension.json", + + "type": "object", + "required": ["specVersion", "kind", "type", "metadata"], + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": [ + "task", + "server-middleware", + "project-shim" + ] + }, + "metadata": { + "$ref": "../../../ui5.json#/definitions/metadata" + } + }, + "if": { + "properties": { + "type": {"const": null} + }, + "$comment": "Using 'if' with null and empty 'then' to ensure no other schemas are applied when the property is not set. Otherwise the first 'if' condition might still be met, causing unexpected errors." + }, + "then": {}, + "else": { + "if": { + "properties": { + "type": {"const": "task"} + } + }, + "then": { + "$ref": "extension/task.json" + }, + "else": { + "if": { + "properties": { + "type": {"const": "server-middleware"} + } + }, + "then": { + "$ref": "extension/server-middleware.json" + }, + "else": { + "if": { + "properties": { + "type": {"const": "project-shim"} + } + }, + "then": { + "$ref": "extension/project-shim.json" + } + } + } + } +} diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json new file mode 100644 index 00000000000..52e98656160 --- /dev/null +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json @@ -0,0 +1,68 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension/project-shim.json", + + "type": "object", + "additionalProperties": false, + "required": ["specVersion", "kind", "type", "metadata", "shims"], + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["project-shim"] + }, + "metadata": { + "$ref": "../../../../ui5.json#/definitions/metadata" + }, + "shims": { + "type": "object", + "additionalProperties": false, + "properties": { + "configurations": { + "type": "object", + "additionalProperties": false, + "patternProperties": { + ".+": { + "type": "object" + } + } + }, + "dependencies": { + "type": "object", + "additionalProperties": false, + "patternProperties": { + ".+": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "collections": { + "type": "object", + "additionalProperties": false, + "patternProperties": { + ".+": { + "type": "object", + "additionalProperties": false, + "properties": { + "modules": { + "type": "object", + "additionalProperties": false, + "patternProperties": { + ".+": { + "type": "string" + } + } + } + } + } + } + } + } + } + } +} diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json new file mode 100644 index 00000000000..82e6869272c --- /dev/null +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json @@ -0,0 +1,29 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension/server-middleware.json", + + "type": "object", + "additionalProperties": false, + "required": ["specVersion", "kind", "type", "metadata", "middleware"], + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["server-middleware"] + }, + "metadata": { + "$ref": "../../../../ui5.json#/definitions/metadata" + }, + "middleware": { + "type": "object", + "additionalProperties": false, + "properties": { + "path": { + "type": "string" + } + } + } + } +} diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json new file mode 100644 index 00000000000..0dd6a7a022b --- /dev/null +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json @@ -0,0 +1,29 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension/task.json", + + "type": "object", + "additionalProperties": false, + "required": ["specVersion", "kind", "type", "metadata", "task"], + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["task"] + }, + "metadata": { + "$ref": "../../../../ui5.json#/definitions/metadata" + }, + "task": { + "type": "object", + "additionalProperties": false, + "properties": { + "path": { + "type": "string" + } + } + } + } +} diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json new file mode 100644 index 00000000000..17a82151e95 --- /dev/null +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -0,0 +1,330 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project.json", + + "type": "object", + "required": ["specVersion", "type", "metadata"], + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null], + "$comment": "Using null to allow not defining 'kind' which defaults to project" + }, + "type": { + "enum": [ + "application", + "library", + "theme-library", + "module" + ] + }, + "metadata": { + "$ref": "../../../ui5.json#/definitions/metadata" + } + }, + "if": { + "properties": { + "type": {"const": null} + }, + "$comment": "Using 'if' with null and empty 'then' to ensure no other schemas are applied when the property is not set. Otherwise the first 'if' condition might still be met, causing unexpected errors." + }, + "then": {}, + "else": { + "if": { + "properties": { + "type": {"const": "application"} + } + }, + "then": { + "$ref": "project/application.json" + }, + "else": { + "if": { + "properties": { + "type": {"const": "library"} + } + }, + "then": { + "$ref": "project/library.json" + }, + "else": { + "if": { + "properties": { + "type": {"const": "theme-library"} + } + }, + "then": { + "$ref": "project/theme-library.json" + }, + "else": { + "if": { + "properties": { + "type": {"const": "module"} + } + }, + "then": { + "$ref": "project/module.json" + } + } + } + } + }, + + "definitions": { + "resources-configuration-propertiesFileSourceEncoding": { + "enum": ["UTF-8", "ISO-8859-1"], + "default": "ISO-8859-1", + "title": "Encoding of *.properties files", + "description": "By default, the UI5 Tooling expects *.properties files to be ISO-8859-1 encoded." + }, + "builder-resources": { + "type": "object", + "additionalProperties": false, + "properties": { + "excludes": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "builder-bundles": { + "type": "array", + "additionalProperties": false, + "items": { + "type": "object", + "additionalProperties": false, + "properties": { + "bundleDefinition": { + "type": "object", + "additionalProperties": false, + "required": ["name"], + "properties": { + "name": { + "type": "string" + }, + "defaultFileTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "sections": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": false, + "required": ["mode", "filters"], + "properties": { + "mode": { + "enum": ["raw", "preload", "require", "provided"] + }, + "filters": { + "type": "array", + "items": { + "type": "string" + } + }, + "resolve": { + "type": "boolean", + "default": false + }, + "resolveConditional": { + "type": "boolean", + "default": false + }, + "renderer": { + "type": "boolean", + "default": false + }, + "sort": { + "type": "boolean", + "default": true + } + } + } + } + } + }, + "bundleOptions": { + "type": "object", + "additionalProperties": false, + "properties": { + "optimize": { + "type": "boolean", + "default": false + }, + "decorateBootstrapModule": { + "type": "boolean", + "default": true + }, + "addTryCatchRestartWrapper": { + "type": "boolean", + "default": false + }, + "usePredefineCalls": { + "type": "boolean", + "default": false + }, + "numberOfParts": { + "type": "number", + "default": 1 + } + } + } + } + } + }, + "builder-componentPreload": { + "type": "object", + "additionalProperties": false, + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + } + }, + "namespaces": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "server": { + "type": "object", + "additionalProperties": false, + "properties": { + "settings": { + "type": "object", + "additionalProperties": false, + "properties": { + "httpPort": { + "type": "number" + }, + "httpsPort": { + "type": "number" + } + } + }, + "customMiddleware": { + "type": "array", + "items": { + "oneOf": [ + { + "type": "object", + "additionalProperties": false, + "required": ["name", "beforeMiddleware"], + "properties": { + "name": { + "type": "string" + }, + "mountPath": { + "type": "string" + }, + "beforeMiddleware": { + "type": "string" + }, + "configuration": {} + } + }, + { + "type": "object", + "additionalProperties": false, + "required": ["name", "afterMiddleware"], + "properties": { + "name": { + "type": "string" + }, + "mountPath": { + "type": "string" + }, + "afterMiddleware": { + "type": "string" + }, + "configuration": {} + } + } + ] + } + } + } + }, + "framework": { + "type": "object", + "additionalProperties": false, + "required": ["name", "version"], + "properties": { + "name": { + "enum": ["OpenUI5", "SAPUI5"] + }, + "version": { + "type": "string", + "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$", + "title": "Version", + "description": "Framework version to use in this project", + "errorMessage": "Not a valid version according to the Semantic Versioning specification (https://semver.org/)" + }, + "libraries": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": false, + "required": ["name"], + "properties": { + "name": { + "type": "string" + }, + "optional": { + "type": "boolean", + "default": false + }, + "development": { + "type": "boolean", + "default": false + } + } + } + } + } + }, + "customTasks": { + "type": "array", + "items": { + "oneOf": [ + { + "type": "object", + "additionalProperties": false, + "required": ["name", "beforeTask"], + "properties": { + "name": { + "type": "string" + }, + "beforeTask": { + "type": "string" + }, + "configuration": {} + } + }, + { + "type": "object", + "additionalProperties": false, + "required": ["name", "afterTask"], + "properties": { + "name": { + "type": "string" + }, + "afterTask": { + "type": "string" + }, + "configuration": {} + } + } + ] + } + } + } +} diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json new file mode 100644 index 00000000000..8ad7f7120ba --- /dev/null +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json @@ -0,0 +1,88 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/application.json", + + "type": "object", + "additionalProperties": false, + "required": ["specVersion", "type", "metadata"], + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../../../../ui5.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } + }, + + "definitions": { + + "resources": { + "type": "object", + "additionalProperties": false, + "properties": { + "configuration": { + "type": "object", + "additionalProperties": false, + "properties": { + "propertiesFileSourceEncoding": { + "$ref": "../project.json#/definitions/resources-configuration-propertiesFileSourceEncoding" + }, + "paths": { + "type": "object", + "additionalProperties": false, + "properties": { + "webapp": { + "type": "string" + } + } + } + } + } + } + }, + + "builder": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "cachebuster": { + "type": "object", + "additionalProperties": false, + "properties": { + "signatureType": { + "enum": ["time", "hash"] + } + } + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + } + } + } + } +} diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json new file mode 100644 index 00000000000..8d1cf93d431 --- /dev/null +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json @@ -0,0 +1,92 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/library.json", + + "type": "object", + "additionalProperties": false, + "required": ["specVersion", "type", "metadata"], + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../../../../ui5.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } + }, + + "definitions": { + "resources": { + "type": "object", + "additionalProperties": false, + "properties": { + "configuration": { + "type": "object", + "additionalProperties": false, + "properties": { + "propertiesFileSourceEncoding": { + "$ref": "../project.json#/definitions/resources-configuration-propertiesFileSourceEncoding" + }, + "paths": { + "type": "object", + "additionalProperties": false, + "properties": { + "src": { + "type": "string" + }, + "test": { + "type": "string" + } + } + } + } + } + } + }, + "builder": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "jsdoc": { + "type": "object", + "additionalProperties": false, + "properties": { + "excludes": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + } + } + } + } +} diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json new file mode 100644 index 00000000000..1ea690cc39d --- /dev/null +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json @@ -0,0 +1,41 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/module.json", + + "type": "object", + "additionalProperties": false, + "required": ["specVersion", "type", "metadata"], + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["module"] + }, + "metadata": { + "$ref": "../../../../ui5.json#/definitions/metadata" + }, + "resources": { + "type": "object", + "additionalProperties": false, + "properties": { + "configuration": { + "type": "object", + "additionalProperties": false, + "properties": { + "paths": { + "type": "object", + "additionalProperties": false, + "patternProperties": { + ".+": { + "type": "string" + } + } + } + } + } + } + } + } +} diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json new file mode 100644 index 00000000000..46dccd07a27 --- /dev/null +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json @@ -0,0 +1,47 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/theme-library.json", + + "type": "object", + "additionalProperties": false, + "required": ["specVersion", "type", "metadata"], + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["theme-library"] + }, + "metadata": { + "$ref": "../../../../ui5.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "library.json#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } + }, + + "definitions": { + "builder": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + } + } + } + } +} diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json new file mode 100644 index 00000000000..a9a5ae54f91 --- /dev/null +++ b/packages/project/lib/validation/schema/ui5.json @@ -0,0 +1,55 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/ui5.json", + "title": "ui5.yaml", + "description": "Schema for UI5 Tooling Configuration File (ui5.yaml)", + "$comment": "See https://sap.github.io/ui5-tooling/", + + "type": "object", + "required": ["specVersion"], + "properties": { + "specVersion": { + "enum": [ + "2.0", + "1.1", "1.0", "0.1" + ], + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + } + }, + + "if": { + "properties": { + "specVersion": { "const": "2.0" } + } + }, + "then": { + "$ref": "specVersion/2.0.json" + }, + "else": { + "if": { + "properties": { + "specVersion": { "enum": ["1.1", "1.0", "0.1"] } + } + }, + "then": { + "additionalProperties": true + } + }, + + "definitions": { + + "metadata": { + "type": "object", + "required": ["name"], + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "copyright": { + "type": "string" + } + } + } + } +} diff --git a/packages/project/lib/validation/validator.js b/packages/project/lib/validation/validator.js new file mode 100644 index 00000000000..07682a94c62 --- /dev/null +++ b/packages/project/lib/validation/validator.js @@ -0,0 +1,83 @@ +const Ajv = require("ajv"); +const ajvErrors = require("ajv-errors"); +const path = require("path"); +const {promisify} = require("util"); +const readFile = promisify(require("fs").readFile); + +const ValidationError = require("./ValidationError"); + +async function loadSchema(schemaPath) { + const filePath = schemaPath.replace("http://ui5.sap/schema/", ""); + const schemaFile = await readFile(path.join(__dirname, "schema", filePath), {encoding: "utf8"}); + return JSON.parse(schemaFile); +} + +/** + * @private + * @memberof module:@ui5/project.validation + */ +class Validator { + constructor() { + this.ajv = new Ajv({ + allErrors: true, + jsonPointers: true, + loadSchema + }); + ajvErrors(this.ajv); + } + + _compileSchema() { + if (!this._compiling) { + this._compiling = Promise.resolve().then(async () => { + const schema = await loadSchema("ui5.json"); + const validate = await this.ajv.compileAsync(schema); + return validate; + }); + } + return this._compiling; + } + + async validate({config, project, yaml}) { + const fnValidate = await this._compileSchema(); + const valid = fnValidate(config); + if (!valid) { + throw new ValidationError({ + errors: fnValidate.errors, + schema: fnValidate.schema, + project, + yaml + }); + } + } +} + +const validator = new Validator(); + +/** + * @public + * @namespace + * @alias module:@ui5/project.validation.validator + */ +module.exports = { + /** + * Validates the given configuration. + * + * @param {Object} options + * @param {Object} options.config UI5 Configuration to validate + * @param {Object} options.project Project information + * @param {string} options.project.id ID of the project + * @param {Object} [options.yaml] YAML information + * @param {string} options.yaml.path Path of the YAML file + * @param {string} options.yaml.source Content of the YAML file + * @param {number} [options.yaml.documentIndex=0] Document index in case the YAML file contains multiple documents + * @throws {module:@ui5/project.validation.ValidationError} + * Rejects with a {@link module:@ui5/project.validation.ValidationError ValidationError} + * when the validation fails. + * @returns {Promise} Returns a Promise that resolves when the validation succeeds + * @public + */ + validate: async (options) => { + await validator.validate(options); + }, + _Validator: Validator // For testing only +}; diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a7fdb2f5eee..6455fbe5835 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -286,14 +286,51 @@ } }, "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", + "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.9.0", "chalk": "^2.0.0", + "esutils": "^2.0.2", "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, "@babel/parser": { @@ -643,8 +680,7 @@ "@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "dev": true + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" }, "@types/events": { "version": "3.0.0", @@ -753,6 +789,12 @@ "yesno": "^0.3.1" } }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, "accepts": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", @@ -842,6 +884,11 @@ "uri-js": "^4.2.2" } }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" + }, "ansi-align": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", @@ -909,7 +956,6 @@ "version": "4.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, "requires": { "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" @@ -919,7 +965,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "requires": { "color-name": "~1.1.4" } @@ -927,8 +972,7 @@ "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" } } }, @@ -1147,6 +1191,43 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", @@ -1333,18 +1414,44 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, "camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -1371,6 +1478,15 @@ "ansi-regex": "^4.1.0" } }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, "type-fest": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", @@ -1549,40 +1665,12 @@ } }, "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, "chardet": { @@ -2053,6 +2141,16 @@ } } }, + "config-chain": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz", + "integrity": "sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA==", + "dev": true, + "requires": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, "configstore": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/configstore/-/configstore-4.0.0.tgz", @@ -2492,7 +2590,6 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, "requires": { "object-keys": "^1.0.12" } @@ -2734,6 +2831,42 @@ "safer-buffer": "^2.1.0" } }, + "editorconfig": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", + "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", + "dev": true, + "requires": { + "commander": "^2.19.0", + "lru-cache": "^4.1.5", + "semver": "^5.6.0", + "sigmund": "^1.0.1" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } + } + }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -2812,7 +2945,6 @@ "version": "1.17.4", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", - "dev": true, "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -2831,7 +2963,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -3008,6 +3139,26 @@ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -3030,6 +3181,12 @@ "ms": "^2.1.1" } }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -3072,6 +3229,15 @@ "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -3611,8 +3777,7 @@ "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "functional-red-black-tree": { "version": "1.0.1", @@ -3780,7 +3945,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "requires": { "function-bind": "^1.1.1" } @@ -3797,14 +3961,12 @@ "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" }, "has-symbols": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" }, "has-unicode": { "version": "2.0.1", @@ -4124,6 +4286,26 @@ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, "cli-cursor": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", @@ -4216,9 +4398,28 @@ "dev": true } } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, + "internal-slot": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.2.tgz", + "integrity": "sha512-2cQNfwhAfJIkU4KZPkDI+Gj5yNNnbqi40W9Gge6dfnk4TocEVm00B3bdiL+JINrbGJil2TeHvM4rETGzk/f/0g==", + "requires": { + "es-abstract": "^1.17.0-next.1", + "has": "^1.0.3", + "side-channel": "^1.0.2" + } + }, "ip": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", @@ -4258,8 +4459,7 @@ "is-callable": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", - "dev": true + "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==" }, "is-ci": { "version": "2.0.0", @@ -4273,8 +4473,7 @@ "is-date-object": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" }, "is-error": { "version": "2.2.2", @@ -4409,7 +4608,6 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", - "dev": true, "requires": { "has": "^1.0.3" } @@ -4424,7 +4622,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "dev": true, "requires": { "has-symbols": "^1.0.1" } @@ -4613,6 +4810,36 @@ "istanbul-lib-report": "^3.0.0" } }, + "js-beautify": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.10.3.tgz", + "integrity": "sha512-wfk/IAWobz1TfApSdivH5PJ0miIHgDoYb1ugSqHcODPmaYu46rYe5FVuIEkhjg8IQiv6rDNPyhsqbsohI/C2vQ==", + "dev": true, + "requires": { + "config-chain": "^1.1.12", + "editorconfig": "^0.15.3", + "glob": "^7.1.3", + "mkdirp": "~0.5.1", + "nopt": "~4.0.1" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + } + } + }, "js-string-escape": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", @@ -4976,6 +5203,43 @@ "dev": true, "requires": { "chalk": "^2.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, "loud-rejection": { @@ -5467,6 +5731,16 @@ "process-on-spawn": "^1.0.0" } }, + "nopt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", + "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", + "dev": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, "normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", @@ -5710,8 +5984,7 @@ "object-inspect": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", - "dev": true + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" }, "object-is": { "version": "1.0.2", @@ -5722,14 +5995,12 @@ "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" }, "object.assign": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, "requires": { "define-properties": "^1.1.2", "function-bind": "^1.1.1", @@ -5837,6 +6108,26 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, "cli-cursor": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", @@ -5846,6 +6137,12 @@ "restore-cursor": "^2.0.0" } }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, "mimic-fn": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", @@ -5879,15 +6176,40 @@ "requires": { "ansi-regex": "^4.1.0" } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, "p-cancelable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", @@ -6268,6 +6590,12 @@ "retry": "^0.10.0" } }, + "proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", + "dev": true + }, "proxy-addr": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", @@ -6359,6 +6687,14 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -6471,7 +6807,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", - "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1" @@ -6834,6 +7169,21 @@ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "dev": true }, + "side-channel": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.2.tgz", + "integrity": "sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA==", + "requires": { + "es-abstract": "^1.17.0-next.1", + "object-inspect": "^1.7.0" + } + }, + "sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", + "dev": true + }, "signal-exit": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", @@ -7105,11 +7455,23 @@ "strip-ansi": "^3.0.0" } }, + "string.prototype.matchall": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.2.tgz", + "integrity": "sha512-N/jp6O5fMf9os0JU3E72Qhf590RSRZU/ungsL/qJUYVTNv7hTG0P/dbPjxINVN9jpscu3nzYwKESU3P3RY5tOg==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0", + "has-symbols": "^1.0.1", + "internal-slot": "^1.0.2", + "regexp.prototype.flags": "^1.3.0", + "side-channel": "^1.0.2" + } + }, "string.prototype.trimleft": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", - "dev": true, "requires": { "define-properties": "^1.1.3", "function-bind": "^1.1.1" @@ -7119,7 +7481,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", - "dev": true, "requires": { "define-properties": "^1.1.3", "function-bind": "^1.1.1" @@ -7218,7 +7579,6 @@ "version": "7.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, "requires": { "has-flag": "^4.0.0" }, @@ -7226,8 +7586,7 @@ "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" } } }, @@ -7769,6 +8128,43 @@ "latest-version": "^5.0.0", "semver-diff": "^2.0.0", "xdg-basedir": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, "uri-js": { diff --git a/packages/project/package.json b/packages/project/package.json index eb47b05ee37..9154063aaee 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -50,6 +50,7 @@ ], "sources": [ "lib/**/*.js", + "lib/validation/schema/**/*.json", "test/lib/**/*.js" ] }, @@ -100,6 +101,10 @@ "@ui5/builder": "^1.10.1", "@ui5/logger": "^1.0.2", "@ui5/server": "^1.6.0", + "ajv": "^6.12.0", + "ajv-errors": "^1.0.1", + "chalk": "^3.0.0", + "escape-string-regexp": "^2.0.0", "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", "libnpmconfig": "^1.2.1", @@ -109,7 +114,8 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^3.0.0", "read-pkg-up": "^4.0.0", - "resolve": "^1.15.1" + "resolve": "^1.15.1", + "string.prototype.matchall": "^4.0.2" }, "devDependencies": { "ava": "^2.4.0", @@ -120,6 +126,11 @@ "eslint": "^5.16.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^4.8.4", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^4.0.1", + "istanbul-lib-report": "^3.0.0", + "istanbul-reports": "^3.0.0", + "js-beautify": "^1.10.3", "jsdoc": "^3.6.3", "mock-require": "^3.0.3", "nyc": "^15.0.0", diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index c518efe9e9a..acb9e1de583 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -1,6 +1,7 @@ const test = require("ava"); const path = require("path"); const sinon = require("sinon"); +const ValidationError = require("../../lib/validation/ValidationError"); const projectPreprocessor = require("../..").projectPreprocessor; const Preprocessor = require("../..").projectPreprocessor._ProjectPreprocessor; const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); @@ -112,6 +113,50 @@ test("Project with project-shim extension with dependency configuration", (t) => }); }); +test("Project with project-shim extension with invalid dependency configuration", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [{ + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "0.1", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: { + configurations: { + "legacy.library.a": { + specVersion: "2.0", + type: "library" + } + } + } + }, { + id: "legacy.library.a", + version: "1.0.0", + path: legacyLibraryAPath, + dependencies: [] + }], + version: "1.0.0", + specVersion: "0.1", + type: "application", + metadata: { + name: "xy" + } + }; + + const validationError = await t.throwsAsync(projectPreprocessor.processTree(tree), { + instanceOf: ValidationError + }); + t.true(validationError.message.includes("Configuration should have required property 'metadata'"), + "ValidationError should contain error about missing metadata configuration"); +}); + test("Project with project-shim extension with dependency declaration and configuration", (t) => { const tree = { id: "application.a", diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index be02538a612..426a5dc841a 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -2,6 +2,9 @@ const test = require("ava"); const sinon = require("sinon"); const mock = require("mock-require"); const path = require("path"); +const gracefulFs = require("graceful-fs"); +const validator = require("../../lib/validation/validator"); +const ValidationError = require("../../lib/validation/ValidationError"); const projectPreprocessor = require("../../lib/projectPreprocessor"); const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); const applicationBPath = path.join(__dirname, "..", "fixtures", "application.b"); @@ -169,15 +172,16 @@ test("Project with ui5.yaml at default location and some configuration", (t) => }); }); -test("Missing configuration for root project", (t) => { +test("Missing configuration for root project", async (t) => { const tree = { id: "application.a", path: "non-existent", dependencies: [] }; - return t.throwsAsync(projectPreprocessor.processTree(tree), - "No specification version defined for root project application.a", - "Rejected with error"); + const exception = await t.throwsAsync(projectPreprocessor.processTree(tree)); + + t.true(exception.message.includes("Failed to read configuration for project application.a"), + "Error message should contain expected reason"); }); test("Missing id for root project", (t) => { @@ -1586,7 +1590,7 @@ test("Library version in package.json data is missing", (t) => { }); }); -test("specVersion: Missing version", (t) => { +test("specVersion: Missing version", async (t) => { const tree = { id: "application.a", path: "non-existent", @@ -1597,9 +1601,10 @@ test("specVersion: Missing version", (t) => { name: "xy" } }; - return t.throwsAsync(projectPreprocessor.processTree(tree), - "No specification version defined for root project application.a", - "Rejected with error"); + const exception = await t.throwsAsync(projectPreprocessor.processTree(tree)); + + t.true(exception.message.includes("Failed to read configuration for project application.a"), + "Error message should contain expected reason"); }); test("specVersion: Project with invalid version", async (t) => { @@ -1614,11 +1619,12 @@ test("specVersion: Project with invalid version", async (t) => { name: "xy" } }; - await t.throwsAsync(projectPreprocessor.processTree(tree), - "Unsupported specification version 0.9 defined for project application.a. " + - "Your UI5 CLI installation might be outdated. For details see " + - "https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions", - "Rejected with error"); + const validationError = await t.throwsAsync(projectPreprocessor.processTree(tree), { + instanceOf: ValidationError + }); + + t.is(validationError.errors.length, 1, "ValidationError should have one error object"); + t.is(validationError.errors[0].dataPath, "/specVersion", "Error should be for the specVersion"); }); test("specVersion: Project with valid version 0.1", async (t) => { @@ -2028,3 +2034,251 @@ test.serial("checkProjectMetadata: No warning logged for nested SAP internal lib t.is(logWarnSpy.callCount, 0, "No warning got logged"); }); + + +test.serial("readConfigFile: No exception for valid config", async (t) => { + const configPath = path.join("/application", "ui5.yaml"); + const ui5yaml = ` +--- +specVersion: "2.0" +type: application +metadata: + name: application.a +`; + + const validateSpy = sinon.spy(validator, "validate"); + + sinon.stub(gracefulFs, "readFile") + .callsFake((path) => { + throw new Error("readFileStub called with unexpected path: " + path); + }) + .withArgs(configPath).yieldsAsync(null, ui5yaml); + + // Re-require tested module + const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + + await t.notThrowsAsync(async () => { + await preprocessor.readConfigFile({path: "/application", id: "id"}); + }); + + t.is(validateSpy.callCount, 1, "validate should be called once"); + t.deepEqual(validateSpy.getCall(0).args, [{ + config: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + } + }, + project: { + id: "id", + }, + yaml: { + documentIndex: 0, + path: configPath, + source: ui5yaml + }, + + }], + "validate should be called with expected args"); +}); + +test.serial("readConfigFile: Exception for invalid config", async (t) => { + const configPath = path.join("/application", "ui5.yaml"); + const ui5yaml = ` +--- +specVersion: "2.0" +type: application +metadata: + name: application.a +--- +specVersion: "2.0" +kind: extension +type: task +metadata: + name: my-task +--- +specVersion: "2.0" +kind: extension +type: server-middleware +metadata: + name: my-middleware +`; + + const validateSpy = sinon.spy(validator, "validate"); + + sinon.stub(gracefulFs, "readFile") + .callsFake((path) => { + throw new Error("readFileStub called with unexpected path: " + path); + }) + .withArgs(configPath).yieldsAsync(null, ui5yaml); + + // Re-require tested module + const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + + const validationError = await t.throwsAsync(async () => { + await preprocessor.readConfigFile({path: "/application", id: "id"}); + }, { + instanceOf: ValidationError, + name: "ValidationError" + }); + + t.is(validationError.yaml.documentIndex, 1, "Error of first invalid document should be thrown"); + + t.is(validateSpy.callCount, 3, "validate should be called 3 times"); + t.deepEqual(validateSpy.getCall(0).args, [{ + config: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + } + }, + project: { + id: "id", + }, + yaml: { + documentIndex: 0, + path: configPath, + source: ui5yaml, + }, + }], + "validate should be called first time with expected args"); + t.deepEqual(validateSpy.getCall(1).args, [{ + config: { + specVersion: "2.0", + kind: "extension", + type: "task", + metadata: { + name: "my-task" + } + }, + project: { + id: "id", + }, + yaml: { + documentIndex: 1, + path: configPath, + source: ui5yaml, + }, + }], + "validate should be called second time with expected args"); + t.deepEqual(validateSpy.getCall(2).args, [{ + config: { + specVersion: "2.0", + kind: "extension", + type: "server-middleware", + metadata: { + name: "my-middleware" + } + }, + project: { + id: "id", + }, + yaml: { + documentIndex: 2, + path: configPath, + source: ui5yaml, + }, + }], + "validate should be called third time with expected args"); +}); + +test.serial("readConfigFile: Exception for invalid YAML file", async (t) => { + const configPath = path.join("/application", "ui5.yaml"); + const ui5yaml = ` +-- +specVersion: "2.0" +foo: bar +metadata: + name: application.a +`; + + const validateSpy = sinon.spy(validator, "validate"); + + sinon.stub(gracefulFs, "readFile") + .callsFake((path) => { + throw new Error("readFileStub called with unexpected path: " + path); + }) + .withArgs(configPath).yieldsAsync(null, ui5yaml); + + // Re-require tested module + const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + + const error = await t.throwsAsync(async () => { + await preprocessor.readConfigFile({path: "/application", id: "my-project"}); + }); + + t.true(error.message.includes("Failed to parse configuration for project my-project"), + "Error message should contain information about parsing error"); + + t.is(validateSpy.callCount, 0, "validate should not be called"); +}); + +test.serial("readConfigFile: Empty YAML", async (t) => { + const configPath = path.join("/application", "ui5.yaml"); + const ui5yaml = ""; + + const validateSpy = sinon.spy(validator, "validate"); + + sinon.stub(gracefulFs, "readFile") + .callsFake((path) => { + throw new Error("readFileStub called with unexpected path: " + path); + }) + .withArgs(configPath).yieldsAsync(null, ui5yaml); + + // Re-require tested module + const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + + const configs = await preprocessor.readConfigFile({path: "/application", id: "my-project"}); + + t.deepEqual(configs, [], "Empty YAML should result in empty array"); + t.is(validateSpy.callCount, 0, "validate should not be called"); +}); + +test.serial("loadProjectConfiguration: Runs validation if specVersion already exists (error)", async (t) => { + const config = { + specVersion: "2.0", + foo: "bar", + metadata: { + name: "application.a" + }, + + id: "id", + version: "1.0.0", + path: "path", + dependencies: [] + }; + + const validateSpy = sinon.spy(validator, "validate"); + + // Re-require tested module + const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); + const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); + + await t.throwsAsync(async () => { + await preprocessor.loadProjectConfiguration(config); + }, { + instanceOf: ValidationError, + name: "ValidationError" + }); + + t.is(validateSpy.callCount, 1, "validate should be called once"); + t.deepEqual(validateSpy.getCall(0).args, [{ + config: { + specVersion: "2.0", + foo: "bar", + metadata: { + name: "application.a" + } + }, + project: { + id: "id" + } + }], + "validate should be called with expected args"); +}); diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index 6614c7f9308..3d0ac756a17 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -175,143 +175,146 @@ function defineTest(testName, { sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "readConfigFile") - .callsFake(async (configPath) => { - throw new Error("ProjectPreprocessor#readConfigFile stub called with unknown configPath: " + configPath); - }) - .withArgs(path.join(fakeBaseDir, "project-test-application", "ui5.yaml")) - .resolves([{ - specVersion: "2.0", - type: "application", - metadata: { - name: "test-application" - }, - framework: { - name: frameworkName, - version: "1.75.0", - libraries: [ - { - name: "sap.ui.lib1" + .callsFake(async (project) => { + switch (project.path) { + case path.join(fakeBaseDir, "project-test-application"): + return [{ + specVersion: "2.0", + type: "application", + metadata: { + name: "test-application" }, - { - name: "sap.ui.lib4", - optional: true + framework: { + name: frameworkName, + version: "1.75.0", + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib4", + optional: true + }, + { + name: "sap.ui.lib8", + development: true + } + ] + } + }]; + case path.join(fakeBaseDir, "project-test-dependency"): + return [{ + specVersion: "2.0", + type: "library", + metadata: { + name: "test-dependency" }, - { - name: "sap.ui.lib8", - development: true + framework: { + version: "1.99.0", + name: frameworkName, + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib2" + }, + { + name: "sap.ui.lib5", + optional: true + }, + { + name: "sap.ui.lib6", + development: true + }, + { + name: "sap.ui.lib8", + // optional dependency gets resolved by dev-dependency of root project + optional: true + } + ] } - ] - } - }]) - .withArgs(path.join(fakeBaseDir, "project-test-dependency", "ui5.yaml")) - .resolves([{ - specVersion: "2.0", - type: "library", - metadata: { - name: "test-dependency" - }, - framework: { - version: "1.99.0", - libraries: [ - { + }]; + case path.join(fakeBaseDir, "project-test-dependency-no-framework"): + return [{ + specVersion: "2.0", + type: "library", + metadata: { + name: "test-dependency-no-framework" + } + }]; + case path.join(fakeBaseDir, "project-test-dependency-framework-old-spec-version"): + return [{ + specVersion: "1.1", + type: "library", + metadata: { + name: "test-dependency-framework-old-spec-version" + }, + framework: { + libraries: [ + { + name: "sap.ui.lib5" + } + ] + } + }]; + case path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib1", + frameworkName === "SAPUI5" ? "1.75.1" : "1.75.0"): + return [{ + specVersion: "1.0", + type: "library", + metadata: { name: "sap.ui.lib1" }, - { + framework: {libraries: []} + }]; + case path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib2", + frameworkName === "SAPUI5" ? "1.75.2" : "1.75.0"): + return [{ + specVersion: "1.0", + type: "library", + metadata: { name: "sap.ui.lib2" }, - { - name: "sap.ui.lib5", - optional: true + framework: {libraries: []} + }]; + case path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib3", + frameworkName === "SAPUI5" ? "1.75.3" : "1.75.0"): + return [{ + specVersion: "1.0", + type: "library", + metadata: { + name: "sap.ui.lib3" }, - { - name: "sap.ui.lib6", - development: true + framework: {libraries: []} + }]; + case path.join(ui5PackagesBaseDir, "@openui5", "sap.ui.lib4", + frameworkName === "SAPUI5" ? "1.75.4" : "1.75.0"): + return [{ + specVersion: "1.0", + type: "library", + metadata: { + name: "sap.ui.lib4" }, - { - name: "sap.ui.lib8", - optional: true // optional dependency gets resolved by dev-dependency of root project - } - ] - } - }]) - .withArgs(path.join(fakeBaseDir, "project-test-dependency-no-framework", "ui5.yaml")) - .resolves([{ - specVersion: "2.0", - type: "library", - metadata: { - name: "test-dependency-no-framework" - } - }]) - .withArgs(path.join(fakeBaseDir, "project-test-dependency-framework-old-spec-version", "ui5.yaml")) - .resolves([{ - specVersion: "1.1", - type: "library", - metadata: { - name: "test-dependency-framework-old-spec-version" - }, - framework: { - libraries: [ - { - name: "sap.ui.lib5" - } - ] + framework: {libraries: []} + }]; + case path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib8", + frameworkName === "SAPUI5" ? "1.75.8" : "1.75.0"): + return [{ + specVersion: "1.0", + type: "library", + metadata: { + name: "sap.ui.lib8" + }, + framework: {libraries: []} + }]; + default: + throw new Error( + "ProjectPreprocessor#readConfigFile stub called with unknown project: " + + (project && project.path) + ); } - }]) - .withArgs(path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib1", - frameworkName === "SAPUI5" ? "1.75.1" : "1.75.0", "ui5.yaml" - )) - .resolves([{ - specVersion: "1.0", - type: "library", - metadata: { - name: "sap.ui.lib1" - }, - framework: {libraries: []} - }]) - .withArgs(path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib2", - frameworkName === "SAPUI5" ? "1.75.2" : "1.75.0", "ui5.yaml" - )) - .resolves([{ - specVersion: "1.0", - type: "library", - metadata: { - name: "sap.ui.lib2" - }, - framework: {libraries: []} - }]) - .withArgs(path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib3", - frameworkName === "SAPUI5" ? "1.75.3" : "1.75.0", "ui5.yaml" - )) - .resolves([{ - specVersion: "1.0", - type: "library", - metadata: { - name: "sap.ui.lib3" - }, - framework: {libraries: []} - }]) - .withArgs(path.join(ui5PackagesBaseDir, "@openui5", "sap.ui.lib4", - frameworkName === "SAPUI5" ? "1.75.4" : "1.75.0", "ui5.yaml" - )) - .resolves([{ - specVersion: "1.0", - type: "library", - metadata: { - name: "sap.ui.lib4" - }, - framework: {libraries: []} - }]) - .withArgs(path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib8", - frameworkName === "SAPUI5" ? "1.75.8" : "1.75.0", "ui5.yaml" - )) - .resolves([{ - specVersion: "1.0", - type: "library", - metadata: { - name: "sap.ui.lib8" - }, - framework: {libraries: []} - }]); + }); // Prevent applying types as this would require a lot of mocking sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "applyType"); @@ -401,6 +404,7 @@ function defineTest(testName, { type: "library", framework: { version: "1.99.0", + name: frameworkName, libraries: [ { name: "sap.ui.lib1" @@ -534,30 +538,36 @@ function defineErrorTest(testName, { sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "readConfigFile") - .callsFake(async (configPath) => { - throw new Error("ProjectPreprocessor#readConfigFile stub called with unknown configPath: " + configPath); - }) - .withArgs(path.join(fakeBaseDir, "application-project", "ui5.yaml")) - .resolves([{ - specVersion: "2.0", - type: "application", - metadata: { - name: "test-project" - }, - framework: { - name: frameworkName, - version: "1.75.0", - libraries: [ - { - name: "sap.ui.lib1" + .callsFake(async (project) => { + switch (project.path) { + case path.join(fakeBaseDir, "application-project"): + return [{ + specVersion: "2.0", + type: "application", + metadata: { + name: "test-project" }, - { - name: "sap.ui.lib4", - optional: true + framework: { + name: frameworkName, + version: "1.75.0", + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib4", + optional: true + } + ] } - ] + }]; + default: + throw new Error( + "ProjectPreprocessor#readConfigFile stub called with unknown project: " + + (project && project.path) + ); } - }]); + }); // Prevent applying types as this would require a lot of mocking sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "applyType"); diff --git a/packages/project/test/lib/validation/ValidationError.js b/packages/project/test/lib/validation/ValidationError.js new file mode 100644 index 00000000000..25d69f4dd33 --- /dev/null +++ b/packages/project/test/lib/validation/ValidationError.js @@ -0,0 +1,938 @@ +const test = require("ava"); +const sinon = require("sinon"); +const chalk = require("chalk"); + +const ValidationError = require("../../../lib/validation/ValidationError"); + +test.afterEach.always((t) => { + sinon.restore(); +}); + +test.serial("ValidationError constructor", (t) => { + const errors = [ + {dataPath: "", keyword: "", message: "error1", params: {}}, + {dataPath: "", keyword: "", message: "error2", params: {}} + ]; + const project = {id: "id"}; + const schema = {schema: "schema"}; + const data = {data: "data"}; + const yaml = {path: "path", source: "source", documentIndex: 0}; + + const filteredErrors = [{dataPath: "", keyword: "", message: "error1", params: {}}]; + + const filterErrorsStub = sinon.stub(ValidationError, "filterErrors"); + filterErrorsStub.returns(filteredErrors); + + const formatErrorsStub = sinon.stub(ValidationError.prototype, "formatErrors"); + formatErrorsStub.returns("Formatted Message"); + + const validationError = new ValidationError({errors, schema, data, project, yaml}); + + t.true(validationError instanceof ValidationError, "ValidationError constructor returns instance"); + t.true(validationError instanceof Error, "ValidationError inherits from Error"); + t.is(validationError.name, "ValidationError", "ValidationError should have 'name' property"); + + t.deepEqual(validationError.errors, filteredErrors, + "ValidationError should have 'errors' property with filtered errors"); + t.deepEqual(validationError.project, project, "ValidationError should have 'project' property"); + t.deepEqual(validationError.yaml, yaml, "≈ should have 'yaml' property"); + t.is(validationError.message, "Formatted Message", "ValidationError should have 'message' property"); + + t.is(filterErrorsStub.callCount, 1, "ValidationError.filterErrors should be called once"); + t.deepEqual(filterErrorsStub.getCall(0).args, [errors], + "ValidationError.filterErrors should be called with errors, project and yaml"); + + t.is(formatErrorsStub.callCount, 1, "ValidationError#formatErrors should be called once"); + t.deepEqual(formatErrorsStub.getCall(0).args, [], + "ValidationError.formatErrors should be called without args"); +}); + +test.serial("ValidationError.filterErrors", (t) => { + const allErrors = [ + { + keyword: "if" + }, + { + dataPath: "dataPath1", + keyword: "keyword1" + }, + { + dataPath: "dataPath1", + keyword: "keyword2" + }, + { + dataPath: "dataPath3", + keyword: "keyword2" + }, + { + dataPath: "dataPath1", + keyword: "keyword1" + }, + { + dataPath: "dataPath1", + keyword: "keyword1", + params: { + type: "foo" + } + }, + { + dataPath: "dataPath4", + keyword: "keyword5", + params: { + type: "foo" + } + }, + { + dataPath: "dataPath6", + keyword: "keyword6", + params: { + errors: [ + { + "type": "foo" + }, + { + "type": "bar" + } + ] + } + }, + { + dataPath: "dataPath6", + keyword: "keyword6", + params: { + errors: [ + { + "type": "foo" + }, + { + "type": "bar" + } + ] + } + }, + { + dataPath: "dataPath6", + keyword: "keyword6", + params: { + errors: [ + { + "type": "foo" + }, + { + "type": "foo" + } + ] + } + } + ]; + + const expectedErrors = [ + { + dataPath: "dataPath1", + keyword: "keyword1" + }, + { + dataPath: "dataPath1", + keyword: "keyword2" + }, + { + dataPath: "dataPath3", + keyword: "keyword2" + }, + { + dataPath: "dataPath1", + keyword: "keyword1", + params: { + type: "foo" + } + }, + { + dataPath: "dataPath4", + keyword: "keyword5", + params: { + type: "foo" + } + }, + { + dataPath: "dataPath6", + keyword: "keyword6", + params: { + errors: [ + { + "type": "foo" + }, + { + "type": "bar" + } + ] + } + }, + { + dataPath: "dataPath6", + keyword: "keyword6", + params: { + errors: [ + { + "type": "foo" + }, + { + "type": "foo" + } + ] + } + } + ]; + + const filteredErrors = ValidationError.filterErrors(allErrors); + + t.deepEqual(filteredErrors, expectedErrors, "filterErrors should return expected errors"); +}); + +test.serial("ValidationError.formatErrors", (t) => { + const fakeValidationErrorInstance = { + errors: [{}, {}], + project: {id: "my-project"} + }; + + const formatErrorStub = sinon.stub(); + formatErrorStub.onFirstCall().returns("Error message 1"); + formatErrorStub.onSecondCall().returns("Error message 2"); + fakeValidationErrorInstance.formatError = formatErrorStub; + + const message = ValidationError.prototype.formatErrors.apply(fakeValidationErrorInstance); + + const expectedMessage = +`${chalk.red("Invalid ui5.yaml configuration for project my-project")} + +Error message 1 + +${process.stdout.isTTY ? chalk.grey.dim("─".repeat(process.stdout.columns || 80)) : ""} + +Error message 2`; + + t.is(message, expectedMessage); + + t.is(formatErrorStub.callCount, 2, "formatErrorStub should be called twice"); + t.deepEqual(formatErrorStub.getCall(0).args, [ + fakeValidationErrorInstance.errors[0] + ], "formatErrorStub should be called with first error"); + t.deepEqual(formatErrorStub.getCall(1).args, [ + fakeValidationErrorInstance.errors[1] + ], "formatErrorStub should be called with second error"); +}); + +test.serial("ValidationError.formatError (with yaml)", (t) => { + const fakeValidationErrorInstance = { + yaml: { + path: "/path", + source: "source" + } + }; + const error = {"error": true}; + + const formatMessageStub = sinon.stub(ValidationError, "formatMessage"); + formatMessageStub.returns("First line\nSecond line\nThird line"); + + const getYamlExtractStub = sinon.stub(ValidationError, "getYamlExtract"); + getYamlExtractStub.returns("YAML"); + + const message = ValidationError.prototype.formatError.call(fakeValidationErrorInstance, error); + + const expectedMessage = +`First line + +YAML +Second line +Third line`; + + t.is(message, expectedMessage); + + t.is(formatMessageStub.callCount, 1, "formatMessageStub should be called once"); + t.deepEqual(formatMessageStub.getCall(0).args, [error], "formatMessageStub should be called with error"); + + t.is(getYamlExtractStub.callCount, 1, "getYamlExtractStub should be called once"); + t.deepEqual(getYamlExtractStub.getCall(0).args, [ + {error, yaml: fakeValidationErrorInstance.yaml}], + "getYamlExtractStub should be called with error and yaml"); +}); + +test.serial("ValidationError.getYamlExtract", (t) => { + const error = {}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property1: value1 +property2: value2 +property3: value3 +property4: value4 +property5: value5 +`, + documentIndex: 0 + }; + + const analyzeYamlErrorStub = sinon.stub(ValidationError, "analyzeYamlError"); + analyzeYamlErrorStub.returns({line: 3, column: 12}); + + const expectedYamlExtract = + chalk.grey("/my-project/ui5.yaml:3") + + "\n\n" + + chalk.grey("1:") + " property1: value1\n" + + chalk.grey("2:") + " property2: value2\n" + + chalk.bgRed(chalk.grey("3:") + " property3: value3\n") + + " ".repeat(14) + chalk.red("^"); + + const yamlExtract = ValidationError.getYamlExtract({error, yaml}); + + t.is(yamlExtract, expectedYamlExtract); +}); + +test.serial("ValidationError.getSourceExtract", (t) => { + const yamlSource = +`property1: value1 +property2: value2 +`; + const line = 2; + const column = 1; + + const expected = + chalk.grey("1:") + " property1: value1\n" + + chalk.bgRed(chalk.grey("2:") + " property2: value2\n") + + " ".repeat(3) + chalk.red("^"); + + const sourceExtract = ValidationError.getSourceExtract(yamlSource, line, column); + + t.is(sourceExtract, expected, "getSourceExtract should return expected string"); +}); + +test.serial("ValidationError.getSourceExtract (Windows Line-Endings)", (t) => { + const yamlSource = +"property1: value1\r\n" + +"property2: value2\r\n"; + const line = 2; + const column = 1; + + const expected = + chalk.grey("1:") + " property1: value1\n" + + chalk.bgRed(chalk.grey("2:") + " property2: value2\n") + + " ".repeat(3) + chalk.red("^"); + + const sourceExtract = ValidationError.getSourceExtract(yamlSource, line, column); + + t.is(sourceExtract, expected, "getSourceExtract should return expected string"); +}); + +test.serial("ValidationError.analyzeYamlError: Property", (t) => { + const error = {dataPath: "/property3"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property1: value1 +property2: value2 +property3: value3 +property4: value4 +property5: value5 +`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 3, column: 1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Nested property", (t) => { + const error = {dataPath: "/property2/property3"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property1: value1 +property2: + property3: value3 +property3: value3 +`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 3, column: 3}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Array", (t) => { + const error = {dataPath: "/property/list/2/name"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property: + list: + - name: ' - - - - -' + - name: other - name- with- hyphens + - name: name3 +`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 5, column: 7}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Nested array", (t) => { + const error = {dataPath: "/items/2/subItems/1"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`items: + - subItems: + - foo + - bar + - subItems: + - foo + - bar + - subItems: + - foo + - bar +`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 10, column: 7}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Nested array (Windows Line-Endings)", (t) => { + const error = {dataPath: "/items/2/subItems/1"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +"items:\r\n" + +" - subItems:\r\n" + +" - foo\r\n" + +" - bar\r\n" + +" - subItems:\r\n" + +" - foo\r\n" + +" - bar\r\n" + +" - subItems:\r\n" + +" - foo\r\n" + +" - bar\r\n", + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 10, column: 7}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Array with square brackets (not supported)", (t) => { + const error = {dataPath: "/items/2"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`items: [1, 2, 3] +`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: -1, column: -1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Multiline array with square brackets (not supported)", (t) => { + const error = {dataPath: "/items/2"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`items: [ + 1, + 2, + 3 +] +`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: -1, column: -1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Nested property with comments", (t) => { + const error = {dataPath: "/property1/property2/property3/property4"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property1: + property2: + property3: + # property4: value4444 + property4: value4 +`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 5, column: 7}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Nested properties with same name", (t) => { + const error = {dataPath: "/property/property/property/property"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property: + property: + property: + # property: foo + property: bar +`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 5, column: 7}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Error keyword=required, no dataPath", (t) => { + const error = {dataPath: "", keyword: "required"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: ``, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: -1, column: -1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Error keyword=required", (t) => { + const error = {dataPath: "/property2", keyword: "required"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property1: true +property2: + property3: true +`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 2, column: 1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Error keyword=additionalProperties", (t) => { + const error = { + dataPath: "/property2", + keyword: "additionalProperties", + params: { + additionalProperty: "property3" + } + }; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property1: true +property2: + property3: true +`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 3, column: 3}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: documentIndex=0 (Without leading separator)", (t) => { + const error = {dataPath: "/property3"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property1: value1document1 +property2: value2document1 +property3: value3document1 +property4: value4document1 +property5: value5document1 +--- +property1: value1document2 +property2: value2document2 +property3: value3document2 +property4: value4document2 +property5: value5document2`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 3, column: 1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: documentIndex=0 (With leading separator)", (t) => { + const error = {dataPath: "/property3"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`--- +property1: value1document1 +property2: value2document1 +property3: value3document1 +property4: value4document1 +property5: value5document1 +--- +property1: value1document2 +property2: value2document2 +property3: value3document2 +property4: value4document2 +property5: value5document2`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 4, column: 1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: documentIndex=0 (With leading separator and empty lines)", (t) => { + const error = {dataPath: "/property3"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +` + + + +--- +property1: value1document1 +property2: value2document1 +property3: value3document1 +property4: value4document1 +property5: value5document1 +--- +property1: value1document2 +property2: value2document2 +property3: value3document2 +property4: value4document2 +property5: value5document2`, + documentIndex: 0 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 8, column: 1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: documentIndex=2 (Without leading separator)", (t) => { + const error = {dataPath: "/property3"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property1: value1document1 +property2: value2document1 +property3: value3document1 +property4: value4document1 +property5: value5document1 +--- +property1: value1document2 +property2: value2document2 +property3: value3document2 +property4: value4document2 +property5: value5document2 +--- +property1: value1document3 +property2: value2document3 +property3: value3document3 +property4: value4document3 +property5: value5document3 +`, + documentIndex: 2 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 15, column: 1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: documentIndex=2 (With leading separator)", (t) => { + const error = {dataPath: "/property3"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`--- +property1: value1document1 +property2: value2document1 +property3: value3document1 +property4: value4document1 +property5: value5document1 +--- +property1: value1document2 +property2: value2document2 +property3: value3document2 +property4: value4document2 +property5: value5document2 +--- +property1: value1document3 +property2: value2document3 +property3: value3document3 +property4: value4document3 +property5: value5document3 +`, + documentIndex: 2 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 16, column: 1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: documentIndex=2 (With leading separator and empty lines)", (t) => { + const error = {dataPath: "/property3"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +` + + + + +--- +property1: value1document1 +property2: value2document1 +property3: value3document1 +property4: value4document1 +property5: value5document1 +--- +property1: value1document2 +property2: value2document2 +property3: value3document2 +property4: value4document2 +property5: value5document2 +--- +property1: value1document3 +property2: value2document3 +property3: value3document3 +property4: value4document3 +property5: value5document3 +`, + documentIndex: 2 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: 21, column: 1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Invalid documentIndex=1 (With leading separator)", (t) => { + const error = {dataPath: "/property3"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`--- +property1: value1document1 +property2: value2document1 +property3: value3document1 +property4: value4document1 +property5: value5document1 +`, + documentIndex: 1 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: -1, column: -1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.analyzeYamlError: Invalid documentIndex=1 (Without leading separator)", (t) => { + const error = {dataPath: "/property3"}; + const yaml = { + path: "/my-project/ui5.yaml", + source: +`property1: value1document1 +property2: value2document1 +property3: value3document1 +property4: value4document1 +property5: value5document1 +`, + documentIndex: 1 + }; + + const info = ValidationError.analyzeYamlError({error, yaml}); + + t.deepEqual(info, {line: -1, column: -1}, + "analyzeYamlError should return expected results"); +}); + +test.serial("ValidationError.formatMessage: keyword=type dataPath=", (t) => { + const error = { + dataPath: "", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "#/type", + }; + + const expectedErrorMessage = "Configuration should be of type 'object'"; + + const errorMessage = ValidationError.formatMessage(error); + t.is(errorMessage, expectedErrorMessage); +}); + +test.serial("ValidationError.formatMessage: keyword=type", (t) => { + const error = { + dataPath: "/foo", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "#/type", + }; + + const expectedErrorMessage = `Configuration ${chalk.underline(chalk.red("foo"))} should be of type 'object'`; + + const errorMessage = ValidationError.formatMessage(error); + t.is(errorMessage, expectedErrorMessage); +}); + +test.serial("ValidationError.formatMessage: keyword=required w/o dataPath", (t) => { + const error = { + dataPath: "", + keyword: "required", + message: "should have required property 'specVersion'", + params: { + missingProperty: "specVersion", + }, + schemaPath: "#/required", + }; + + const expectedErrorMessage = "Configuration should have required property 'specVersion'"; + + const errorMessage = ValidationError.formatMessage(error); + t.is(errorMessage, expectedErrorMessage); +}); + +test.serial("ValidationError.formatMessage: keyword=required", (t) => { + const error = { + keyword: "required", + dataPath: "/metadata", + schemaPath: "../ui5.json#/definitions/metadata/required", + params: {missingProperty: "name"}, + message: "should have required property 'name'" + }; + + const expectedErrorMessage = `Configuration ${chalk.underline(chalk.red("metadata"))} should have required property 'name'`; + + const errorMessage = ValidationError.formatMessage(error); + t.is(errorMessage, expectedErrorMessage); +}); + +test.serial("ValidationError.formatMessage: keyword=errorMessage", (t) => { + const error = { + dataPath: "/specVersion", + keyword: "errorMessage", + message: +`Unsupported "specVersion" +Your UI5 CLI installation might be outdated. +Supported specification versions: "2.0", "1.1", "1.0", "0.1" +For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, + params: { + errors: [ + { + dataPath: "/specVersion", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "2.0", + "1.1", + "1.0", + "0.1", + ], + }, + schemaPath: "#/properties/specVersion/enum", + }, + ], + }, + schemaPath: "#/properties/specVersion/errorMessage", + }; + + const expectedErrorMessage = +`Unsupported "specVersion" +Your UI5 CLI installation might be outdated. +Supported specification versions: "2.0", "1.1", "1.0", "0.1" +For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`; + + const errorMessage = ValidationError.formatMessage(error, {}); + t.is(errorMessage, expectedErrorMessage); +}); + +test.serial("ValidationError.formatMessage: keyword=additionalProperties", (t) => { + const error = { + keyword: "additionalProperties", + dataPath: "/resources/configuration", + schemaPath: "#/properties/configuration/additionalProperties", + params: {additionalProperty: "propertiesFileEncoding"}, + message: "should NOT have additional properties" + }; + + const expectedErrorMessage = +`Configuration ${chalk.underline(chalk.red("resources/configuration"))} property propertiesFileEncoding is not expected to be here`; + + const errorMessage = ValidationError.formatMessage(error); + t.is(errorMessage, expectedErrorMessage); +}); + +test.serial("ValidationError.formatMessage: keyword=enum", (t) => { + const error = { + keyword: "enum", + dataPath: "/type", + schemaPath: "#/properties/type/enum", + params: { + allowedValues: ["application", "library", "theme-library", "module"] + }, + message: "should be equal to one of the allowed values" + }; + + const expectedErrorMessage = +`Configuration ${chalk.underline(chalk.red("type"))} should be equal to one of the allowed values +Allowed values: application, library, theme-library, module`; + + const errorMessage = ValidationError.formatMessage(error); + t.is(errorMessage, expectedErrorMessage); +}); + +// test.serial.skip("ValidationError.formatMessage: keyword=pattern", (t) => { +// const error = {}; + +// const expectedErrorMessage = +// ``; + +// const errorMessage = ValidationError.formatMessage(error); +// t.is(errorMessage, expectedErrorMessage); +// }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js new file mode 100644 index 00000000000..af46f8e76d8 --- /dev/null +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js @@ -0,0 +1,152 @@ +const test = require("ava"); +const AjvCoverage = require("../../../../../../utils/AjvCoverage"); +const {_Validator: Validator} = require("../../../../../../../lib/validation/validator"); +const ValidationError = require("../../../../../../../lib/validation/ValidationError"); + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({config, project: {id: "my-project"}}); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError" + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator(); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/specVersion/2.0/kind/extension.json"] + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-extension"}); + const thresholds = { + statements: 80, + branches: 70, + functions: 100, + lines: 80 + }; + t.context.ajvCoverage.verify(thresholds); +}); + +test("Type project-shim", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "my-project-shim" + }, + "shims": {} + }); +}); + +test("Type server-middleware", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "server-middleware", + "metadata": { + "name": "my-server-middleware" + }, + "middleware": { + "path": "middleware.js" + } + }); +}); + +test("Type task", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "task", + "metadata": { + "name": "my-task" + }, + "task": { + "path": "task.js" + } + }); +}); + +test("No type", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "metadata": { + "name": "my-project" + } + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'type'", + params: { + missingProperty: "type", + }, + schemaPath: "#/required", + }]); +}); + +test("Invalid type", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "foo", + "metadata": { + "name": "my-project" + } + }, [{ + dataPath: "/type", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "task", + "server-middleware", + "project-shim" + ], + }, + schemaPath: "#/properties/type/enum", + }]); +}); + +test("No specVersion", async (t) => { + await assertValidation(t, { + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "my-library" + }, + "shims": {} + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'specVersion'", + params: { + missingProperty: "specVersion", + }, + schemaPath: "#/required", + }]); +}); + +test("No metadata", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "project-shim", + "shims": {} + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + schemaPath: "#/required", + }]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js new file mode 100644 index 00000000000..121bdb180b9 --- /dev/null +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js @@ -0,0 +1,164 @@ +const test = require("ava"); +const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); +const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); +const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({config, project: {id: "my-project"}}); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError" + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator(); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/specVersion/2.0/kind/extension/project-shim.json"] + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-extension-project-shim"}); + const thresholds = { + statements: 70, + branches: 55, + functions: 100, + lines: 65 + }; + t.context.ajvCoverage.verify(thresholds); +}); + + +test("kind: extension / type: project-shim", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "my-project-shim" + }, + "shims": { + "configurations": { + "my-dependency": { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application" + } + }, + "my-other-dependency": { + "specVersion": "3.0", + "type": "does-not-exist", + "metadata": { + "name": "my-application" + } + } + }, + "dependencies": { + "my-dependency": [ + "my-other-dependency" + ], + "my-other-dependency": [ + "some-lib", + "some-other-lib" + ] + }, + "collections": { + "my-dependency": { + "modules": { + "lib-1": "src/lib1", + "lib-2": "src/lib2" + } + } + } + } + }); + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "my-project-shim" + }, + "shims": { + "configurations": { + "invalid": { + "specVersion": "3.0", + "type": "does-not-exist", + "metadata": { + "name": "my-application" + } + } + }, + "dependencies": { + "my-dependency": { + "foo": "bar" + } + }, + "collections": { + "foo": { + "modules": { + "lib-1": { + "path": "src/lib1" + } + }, + "notAllowed": true + } + }, + "notAllowed": true + }, + "middleware": {} + }, [ + { + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "middleware" + }, + schemaPath: "#/additionalProperties", + }, + { + dataPath: "/shims", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "#/properties/shims/additionalProperties", + }, + { + dataPath: "/shims/dependencies/my-dependency", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "#/properties/shims/properties/dependencies/patternProperties/.%2B/type", + }, + { + dataPath: "/shims/collections/foo", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "#/properties/shims/properties/collections/patternProperties/.%2B/additionalProperties" + }, + { + dataPath: "/shims/collections/foo/modules/lib-1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "#/properties/shims/properties/collections/patternProperties/.%2B/properties/modules/patternProperties/.%2B/type" + } + ]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js new file mode 100644 index 00000000000..fd14e20259e --- /dev/null +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js @@ -0,0 +1,71 @@ +const test = require("ava"); +const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); +const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); +const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({config, project: {id: "my-project"}}); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError" + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator(); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/specVersion/2.0/kind/extension/server-middleware.json"] + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-extension-server-middleware"}); + const thresholds = { + statements: 60, + branches: 50, + functions: 100, + lines: 60 + }; + t.context.ajvCoverage.verify(thresholds); +}); + +test("kind: extension / type: server-middleware", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "server-middleware", + "metadata": { + "name": "my-server-middleware" + }, + "middleware": { + "path": "/foo" + } + }); + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "server-middleware", + "metadata": { + "name": "my-server-middleware" + }, + "middleware": { + "path": "/foo" + }, + "task": { + "path": "/bar" + } + }, [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "task" + }, + schemaPath: "#/additionalProperties" + }]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js new file mode 100644 index 00000000000..ceee57c1e53 --- /dev/null +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js @@ -0,0 +1,69 @@ +const test = require("ava"); +const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); +const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); +const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({config, project: {id: "my-project"}}); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError" + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator(); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/specVersion/2.0/kind/extension/task.json"] + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-extension-task"}); + const thresholds = { + statements: 60, + branches: 50, + functions: 100, + lines: 60 + }; + t.context.ajvCoverage.verify(thresholds); +}); + +test("kind: extension / type: task", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "task", + "metadata": { + "name": "my-task" + }, + "task": { + "path": "/foo" + } + }); + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "task", + "metadata": { + "name": "my-task" + }, + "task": { + "path": "/foo" + }, + "resources": {} + }, [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "resources" + }, + schemaPath: "#/additionalProperties" + }]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js new file mode 100644 index 00000000000..69b83b20b7e --- /dev/null +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js @@ -0,0 +1,305 @@ +const test = require("ava"); +const AjvCoverage = require("../../../../../../utils/AjvCoverage"); +const {_Validator: Validator} = require("../../../../../../../lib/validation/validator"); +const ValidationError = require("../../../../../../../lib/validation/ValidationError"); + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({config, project: {id: "my-project"}}); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError" + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator(); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/specVersion/2.0/kind/project.json"] + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project"}); + const thresholds = { + statements: 90, + branches: 80, + functions: 100, + lines: 90 + }; + t.context.ajvCoverage.verify(thresholds); +}); + +test("Type application", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "project", + "type": "application", + "metadata": { + "name": "my-application" + } + }); +}); + +test("Type application (no kind)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application" + } + }); +}); + +test("Type library", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "project", + "type": "library", + "metadata": { + "name": "my-library" + } + }); +}); + +test("Type library (no kind)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library" + } + }); +}); + +test("Type theme-library", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "project", + "type": "theme-library", + "metadata": { + "name": "my-theme-library" + } + }); +}); + +test("Type theme-library (no kind)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library" + } + }); +}); + +test("Type module", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "project", + "type": "module", + "metadata": { + "name": "my-module" + } + }); +}); + +test("Type module (no kind)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module" + } + }); +}); + +test("No type", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "project", + "metadata": { + "name": "my-project" + } + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'type'", + params: { + missingProperty: "type", + }, + schemaPath: "#/required", + }]); +}); + +test("No type, no kind", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "metadata": { + "name": "my-project" + } + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'type'", + params: { + missingProperty: "type", + }, + schemaPath: "#/required", + }]); +}); + +test("Invalid type", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "project", + "type": "foo", + "metadata": { + "name": "my-project" + } + }, [{ + dataPath: "/type", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "application", + "library", + "theme-library", + "module", + ], + }, + schemaPath: "#/properties/type/enum", + }]); +}); + +test("No specVersion", async (t) => { + await assertValidation(t, { + "kind": "project", + "type": "library", + "metadata": { + "name": "my-library" + } + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'specVersion'", + params: { + missingProperty: "specVersion", + }, + schemaPath: "#/required", + }]); +}); + +test("No metadata", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application" + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + schemaPath: "#/required", + }]); +}); + +test("Metadata not type object", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": "foo" + }, [{ + dataPath: "/metadata", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../ui5.json#/definitions/metadata/type", + }]); +}); + +test("No metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": {} + }, [{ + dataPath: "/metadata", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../ui5.json#/definitions/metadata/required", + }]); +}); + +test("Invalid metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": {} + } + }, [ + { + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../ui5.json#/definitions/metadata/properties/name/type", + } + ]); +}); + +test("Invalid metadata.copyright", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "foo", + "copyright": 123 + } + }, [ + { + dataPath: "/metadata/copyright", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../ui5.json#/definitions/metadata/properties/copyright/type", + } + ]); +}); + +test("Additional metadata property", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "foo", + "copyrihgt": "typo" + } + }, [ + { + dataPath: "/metadata", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "copyrihgt" + }, + schemaPath: "../ui5.json#/definitions/metadata/additionalProperties", + } + ]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js new file mode 100644 index 00000000000..29ea1a362ed --- /dev/null +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -0,0 +1,632 @@ +const test = require("ava"); +const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); +const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); +const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({config, project: {id: "my-project"}}); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError" + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator(); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/specVersion/2.0/kind/project/application.json"] + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-application"}); + const thresholds = { + statements: 75, + branches: 65, + functions: 100, + lines: 75 + }; + t.context.ajvCoverage.verify(thresholds); +}); + +test("Valid configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "project", + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "okay" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF-8", + "paths": { + "webapp": "my/path" + } + } + }, + "builder": { + "resources": { + "excludes": [ + "/resources/some/project/name/test_results/**", + "/test-resources/**", + "!/test-resources/some/project/name/demo-app/**" + ] + }, + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "resolveConditional": true, + "renderer": true, + "sort": true + }, + { + "mode": "provided", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": false, + "resolveConditional": false, + "renderer": false, + "sort": false + } + ] + }, + "bundleOptions": { + "optimize": true, + "decorateBootstrapModule": true, + "addTryCatchRestartWrapper": true, + "usePredefineCalls": true + } + }, + { + "bundleDefinition": { + "name": "app.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "preload", + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true + }, + { + "mode": "require", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true + } + ] + }, + "bundleOptions": { + "optimize": true, + "numberOfParts": 3 + } + } + ], + "componentPreload": { + "paths": [ + "some/glob/**/pattern/Component.js", + "some/other/glob/**/pattern/Component.js" + ], + "namespaces": [ + "some/namespace", + "some/other/namespace" + ] + }, + "cachebuster": { + "signatureType": "hash" + }, + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "configuration": { + "some-key": "some value" + } + }, + { + "name": "custom-task-2", + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } + }, + { + "name": "custom-task-2", + "beforeTask": "not-valid", + "configuration": false + } + ] + }, + "server": { + "settings": { + "httpPort": 1337, + "httpsPort": 1443 + }, + "customMiddleware": [ + { + "name": "myCustomMiddleware", + "mountPath": "/myapp", + "afterMiddleware": "compression", + "configuration": { + "debug": true + } + }, + { + "name": "myCustomMiddleware-2", + "beforeMiddleware": "myCustomMiddleware", + "configuration": { + "debug": true + } + } + ] + } + }); +}); + +test("Additional property", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application" + }, + "notAllowed": true + }, [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "#/additionalProperties", + }]); +}); + +test("Invalid resources configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "com.sap.ui5.test" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "FOO", + "paths": { + "app": "webapp", + "webapp": { + "path": "invalid" + } + }, + "notAllowed": true + }, + "notAllowed": true + } + }, [ + { + dataPath: "/resources", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "#/additionalProperties", + }, + { + dataPath: "/resources/configuration", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "#/properties/configuration/additionalProperties", + }, + { + dataPath: "/resources/configuration/propertiesFileSourceEncoding", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "UTF-8", + "ISO-8859-1" + ], + }, + schemaPath: "../project.json#/definitions/resources-configuration-propertiesFileSourceEncoding/enum" + }, + { + dataPath: "/resources/configuration/paths", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "app", + }, + schemaPath: "#/properties/configuration/properties/paths/additionalProperties", + }, + { + dataPath: "/resources/configuration/paths/webapp", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "#/properties/configuration/properties/paths/properties/webapp/type" + } + ]); + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "com.sap.ui5.test" + }, + "resources": { + "configuration": { + "paths": "webapp" + } + } + }, [ + { + dataPath: "/resources/configuration/paths", + keyword: "type", + message: "should be object", + params: { + type: "object" + }, + schemaPath: "#/properties/configuration/properties/paths/type", + } + ]); +}); + +test("Invalid builder configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + // jsdoc is not supported for type application + "jsdoc": { + "excludes": [ + "some/project/name/thirdparty/**" + ] + }, + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "sort": true + } + ] + }, + "bundleOptions": { + "optimize": true + } + }, + { + "bundleDefinition": { + "defaultFileTypes": [ + ".js", true + ], + "sections": [ + { + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true + }, + { + "mode": "provide", + "filters": "*", + "resolve": true + } + ] + }, + "bundleOptions": { + "optimize": "true", + "numberOfParts": "3", + "notAllowed": true + } + } + ], + "componentPreload": { + "path": "some/invalid/path", + "paths": "some/invalid/glob/**/pattern/Component.js", + "namespaces": "some/invalid/namespace", + } + } + }, [ + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "jsdoc" + }, + schemaPath: "#/additionalProperties" + }, + { + dataPath: "/builder/bundles/1/bundleDefinition", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/required", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/defaultFileTypes/items/type", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0", + keyword: "required", + message: "should have required property 'mode'", + params: { + missingProperty: "mode", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/required", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "raw", + "preload", + "require", + "provided", + ], + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/mode/enum", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/filters/type", + }, + { + dataPath: "/builder/bundles/1/bundleOptions", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/additionalProperties", + }, + { + dataPath: "/builder/bundles/1/bundleOptions/optimize", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/optimize/type", + }, + { + dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", + keyword: "type", + message: "should be number", + params: { + type: "number", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/numberOfParts/type", + }, + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "path", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/additionalProperties", + }, + { + dataPath: "/builder/componentPreload/paths", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/properties/paths/type", + }, + { + dataPath: "/builder/componentPreload/namespaces", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/properties/namespaces/type", + } + ]); +}); + +test("framework configuration: OpenUI5", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application" + }, + "framework": { + "name": "OpenUI5", + "version": "1.75.0", + "libraries": [ + {"name": "sap.ui.core"}, + {"name": "sap.m"}, + {"name": "sap.f", "optional": true}, + {"name": "sap.ui.support", "development": true} + ] + } + }); +}); + +test("framework configuration: SAPUI5", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application" + }, + "framework": { + "name": "SAPUI5", + "version": "1.75.0", + "libraries": [ + {"name": "sap.ui.core"}, + {"name": "sap.m"}, + {"name": "sap.f", "optional": true}, + {"name": "sap.ui.support", "development": true} + ] + } + }); +}); + +test("framework configuration: Invalid", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application" + }, + "framework": { + "name": "FooUI5", + "version": "1.75", + "libraries": [ + "sap.ui.core", + {"library": "sap.m"}, + {"name": "sap.f", "optional": "x"}, + {"name": "sap.f", "development": "no"} + ] + } + }, [ + { + dataPath: "/framework/name", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "OpenUI5", + "SAPUI5", + ], + }, + schemaPath: "../project.json#/definitions/framework/properties/name/enum", + }, + { + dataPath: "/framework/version", + keyword: "errorMessage", + message: "Not a valid version according to the Semantic Versioning specification (https://semver.org/)", + params: { + errors: [ + { + dataPath: "/framework/version", + keyword: "pattern", + message: + "should match pattern \"^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*" + + "|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(" + + "[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$\"", + params: { + pattern: "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-]" + + "[0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(" + + "?:\\.[0-9a-zA-Z-]+)*))?$", + }, + schemaPath: "../project.json#/definitions/framework/properties/version/pattern", + } + ] + }, + schemaPath: "../project.json#/definitions/framework/properties/version/errorMessage", + }, + { + dataPath: "/framework/libraries/0", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/type" + + }, + { + dataPath: "/framework/libraries/1", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "library", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/additionalProperties", + }, + { + dataPath: "/framework/libraries/1", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/required", + }, + { + dataPath: "/framework/libraries/2/optional", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean" + }, + + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", + }, + { + dataPath: "/framework/libraries/3/development", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean" + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type" + } + ]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js new file mode 100644 index 00000000000..12c70596476 --- /dev/null +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -0,0 +1,704 @@ +const test = require("ava"); +const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); +const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); +const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({config, project: {id: "my-project"}}); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError" + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator(); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/specVersion/2.0/kind/project/library.json"] + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-library"}); + const thresholds = { + statements: 75, + branches: 65, + functions: 100, + lines: 75 + }; + t.context.ajvCoverage.verify(thresholds); +}); + +test("Valid configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF-8", + "paths": { + "src": "src/main/uilib", + "test": "src/test/uilib" + } + } + }, + "builder": { + "resources": { + "excludes": [ + "/resources/some/project/name/test_results/**", + "!/test-resources/some/project/name/demo-app/**" + ] + }, + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "resolveConditional": true, + "renderer": true, + "sort": true + }, + { + "mode": "provided", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": false, + "resolveConditional": false, + "renderer": false, + "sort": false + } + ] + }, + "bundleOptions": { + "optimize": true, + "decorateBootstrapModule": true, + "addTryCatchRestartWrapper": true, + "usePredefineCalls": true + } + }, + { + "bundleDefinition": { + "name": "app.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "preload", + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true + }, + { + "mode": "require", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true + } + ] + }, + "bundleOptions": { + "optimize": true, + "numberOfParts": 3 + } + } + ], + "componentPreload": { + "paths": [ + "some/glob/**/pattern/Component.js", + "some/other/glob/**/pattern/Component.js" + ], + "namespaces": [ + "some/namespace", + "some/other/namespace" + ] + }, + "jsdoc": { + "excludes": [ + "some/project/name/thirdparty/**" + ] + }, + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "configuration": { + "some-key": "some value" + } + }, + { + "name": "custom-task-2", + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } + } + ] + }, + "server": { + "settings": { + "httpPort": 1337, + "httpsPort": 1443 + }, + "customMiddleware": [ + { + "name": "myCustomMiddleware", + "mountPath": "/myapp", + "afterMiddleware": "compression", + "configuration": { + "debug": true + } + } + ] + } + }); +}); + +test("Invalid configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF8", + "paths": { + "src": {"path": "src"}, + "test": {"path": "test"}, + "webapp": "app" + } + } + }, + "builder": { + "resources": { + "excludes": "/resources/some/project/name/test_results/**" + }, + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "sort": true + } + ] + }, + "bundleOptions": { + "optimize": true + } + }, + { + "bundleDefinition": { + "defaultFileTypes": [ + ".js", true + ], + "sections": [ + { + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true + }, + { + "mode": "provide", + "filters": "*", + "resolve": true + } + ] + }, + "bundleOptions": { + "optimize": "true", + "numberOfParts": "3", + "notAllowed": true + } + } + ], + "componentPreload": { + "path": "some/invalid/path", + "paths": "some/invalid/glob/**/pattern/Component.js", + "namespaces": "some/invalid/namespace", + }, + "jsdoc": { + "excludes": "some/project/name/thirdparty/**" + }, + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "afterTask": "replaceCopyright", + }, + { + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } + }, + "my-task" + ] + }, + "server": { + "settings": { + "httpPort": "1337", + "httpsPort": "1443" + } + } + }, [ + { + dataPath: "/resources/configuration/propertiesFileSourceEncoding", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "UTF-8", + "ISO-8859-1", + ], + }, + schemaPath: "../project.json#/definitions/resources-configuration-propertiesFileSourceEncoding/enum", + }, + { + dataPath: "/resources/configuration/paths", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "webapp", + }, + schemaPath: "#/properties/configuration/properties/paths/additionalProperties", + }, + { + dataPath: "/resources/configuration/paths/src", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "#/properties/configuration/properties/paths/properties/src/type", + }, + { + dataPath: "/resources/configuration/paths/test", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "#/properties/configuration/properties/paths/properties/test/type", + }, + { + dataPath: "/builder/resources/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-resources/properties/excludes/type", + }, + { + dataPath: "/builder/jsdoc/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "#/properties/jsdoc/properties/excludes/type", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/required", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/defaultFileTypes/items/type", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0", + keyword: "required", + message: "should have required property 'mode'", + params: { + missingProperty: "mode", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/required", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "raw", + "preload", + "require", + "provided", + ], + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/mode/enum", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/filters/type", + }, + { + dataPath: "/builder/bundles/1/bundleOptions", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/additionalProperties", + }, + { + dataPath: "/builder/bundles/1/bundleOptions/optimize", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/optimize/type", + }, + { + dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", + keyword: "type", + message: "should be number", + params: { + type: "number", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/numberOfParts/type", + }, + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "path", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/additionalProperties", + }, + { + dataPath: "/builder/componentPreload/paths", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/properties/paths/type", + }, + { + dataPath: "/builder/componentPreload/namespaces", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/properties/namespaces/type", + }, + { + dataPath: "/builder/customTasks/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "afterTask", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/additionalProperties", + }, + { + dataPath: "/builder/customTasks/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "beforeTask", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/1/additionalProperties", + }, + { + dataPath: "/builder/customTasks/1", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "afterTask", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/additionalProperties", + }, + { + dataPath: "/builder/customTasks/1", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/required", + }, + { + dataPath: "/builder/customTasks/1", + keyword: "required", + message: "should have required property 'beforeTask'", + params: { + missingProperty: "beforeTask", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/required", + }, + { + dataPath: "/builder/customTasks/2", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/type", + }, + { + dataPath: "/server/settings/httpPort", + keyword: "type", + message: "should be number", + params: { + type: "number", + }, + schemaPath: "../project.json#/definitions/server/properties/settings/properties/httpPort/type", + }, + { + dataPath: "/server/settings/httpsPort", + keyword: "type", + message: "should be number", + params: { + type: "number", + }, + schemaPath: "../project.json#/definitions/server/properties/settings/properties/httpsPort/type", + } + ]); +}); + +test("Additional property", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "foo": true + }, [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "foo" + }, + schemaPath: "#/additionalProperties" + }]); +}); + +test("Invalid builder configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + // cachebuster is only supported for type application + "cachebuster": { + "signatureType": "time" + } + } + }, [{ + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "cachebuster" + }, + schemaPath: "#/additionalProperties" + }]); +}); + +test("framework configuration: OpenUI5", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library" + }, + "framework": { + "name": "OpenUI5", + "version": "1.75.0", + "libraries": [ + {"name": "sap.ui.core"}, + {"name": "sap.m"}, + {"name": "sap.f", "optional": true}, + {"name": "sap.ui.support", "development": true} + ] + } + }); +}); + +test("framework configuration: SAPUI5", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library" + }, + "framework": { + "name": "SAPUI5", + "version": "1.75.0", + "libraries": [ + {"name": "sap.ui.core"}, + {"name": "sap.m"}, + {"name": "sap.f", "optional": true}, + {"name": "sap.ui.support", "development": true} + ] + } + }); +}); + +test("framework configuration: Invalid", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library" + }, + "framework": { + "name": "FooUI5", + "version": "1.75", + "libraries": [ + "sap.ui.core", + {"library": "sap.m"}, + {"name": "sap.f", "optional": "x"}, + {"name": "sap.f", "development": "no"} + ] + } + }, [ + { + dataPath: "/framework/name", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "OpenUI5", + "SAPUI5", + ], + }, + schemaPath: "../project.json#/definitions/framework/properties/name/enum", + }, + { + dataPath: "/framework/version", + keyword: "errorMessage", + message: "Not a valid version according to the Semantic Versioning specification (https://semver.org/)", + params: { + errors: [ + { + dataPath: "/framework/version", + keyword: "pattern", + message: + "should match pattern \"^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*" + + "|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(" + + "[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$\"", + params: { + pattern: "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-]" + + "[0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(" + + "?:\\.[0-9a-zA-Z-]+)*))?$", + }, + schemaPath: "../project.json#/definitions/framework/properties/version/pattern", + } + ] + }, + schemaPath: "../project.json#/definitions/framework/properties/version/errorMessage", + }, + { + dataPath: "/framework/libraries/0", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/type" + + }, + { + dataPath: "/framework/libraries/1", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "library", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/additionalProperties", + }, + { + dataPath: "/framework/libraries/1", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/required", + }, + { + dataPath: "/framework/libraries/2/optional", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean" + }, + + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", + }, + { + dataPath: "/framework/libraries/3/development", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean" + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type" + } + ]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js new file mode 100644 index 00000000000..35c30ae34dd --- /dev/null +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js @@ -0,0 +1,124 @@ +const test = require("ava"); +const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); +const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); +const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({config, project: {id: "my-project"}}); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError" + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator(); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/specVersion/2.0/kind/project/module.json"] + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-module"}); + const thresholds = { + statements: 65, + branches: 55, + functions: 100, + lines: 65 + }; + t.context.ajvCoverage.verify(thresholds); +}); + +test("Valid configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "project", + "type": "module", + "metadata": { + "name": "my-module" + }, + "resources": { + "configuration": { + "paths": { + "/resources/my/library/module-xy/": "lib", + "/resources/my/library/module-xy-min/": "dist" + } + } + } + }); +}); + +test("No framework configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module" + }, + "framework": {} + }, [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "framework" + }, + schemaPath: "#/additionalProperties" + }]); +}); + +test("No propertiesFileSourceEncoding configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF-8" + } + } + }, [{ + dataPath: "/resources/configuration", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "propertiesFileSourceEncoding" + }, + schemaPath: "#/properties/resources/properties/configuration/additionalProperties" + }]); +}); + +test("No builder, server configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module" + }, + "builder": {}, + "server": {} + }, [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "builder" + }, + schemaPath: "#/additionalProperties" + }, { + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "server" + }, + schemaPath: "#/additionalProperties" + }]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js new file mode 100644 index 00000000000..2ca97d50b5f --- /dev/null +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -0,0 +1,299 @@ +const test = require("ava"); +const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); +const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); +const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({config, project: {id: "my-project"}}); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError" + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator(); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/specVersion/2.0/kind/project/theme-library.json"] + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-theme-library"}); + const thresholds = { + statements: 70, + branches: 60, + functions: 100, + lines: 70 + }; + t.context.ajvCoverage.verify(thresholds); +}); + +test("Valid configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "copyright": "Copyright goes here" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF-8", + "paths": { + "src": "src/main/uilib", + "test": "src/test/uilib" + } + } + }, + "builder": { + "resources": { + "excludes": [ + "/resources/some/project/name/test_results/**", + "/test-resources/**", + "!/test-resources/some/project/name/demo-app/**" + ] + }, + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "configuration": { + "some-key": "some value" + } + }, + { + "name": "custom-task-2", + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } + } + ] + }, + "server": { + "settings": { + "httpPort": 1337, + "httpsPort": 1443 + }, + "customMiddleware": [ + { + "name": "myCustomMiddleware", + "mountPath": "/myapp", + "afterMiddleware": "compression", + "configuration": { + "debug": true + } + } + ] + } + }); +}); + +test("Additional property", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library" + }, + "foo": true + }, [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "foo" + }, + schemaPath: "#/additionalProperties" + }]); +}); + +test("Invalid builder configuration", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + // cachebuster is only supported for type application + "cachebuster": { + "signatureType": "time" + }, + // jsdoc is only supported for type library + "jsdoc": { + "excludes": [ + "some/project/name/thirdparty/**" + ] + } + } + }, [{ + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "cachebuster" + }, + schemaPath: "#/additionalProperties" + }, + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "jsdoc" + }, + schemaPath: "#/additionalProperties" + }]); +}); + +test("framework configuration: OpenUI5", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library" + }, + "framework": { + "name": "OpenUI5", + "version": "1.75.0", + "libraries": [ + {"name": "sap.ui.core"}, + {"name": "sap.m"}, + {"name": "sap.f", "optional": true}, + {"name": "sap.ui.support", "development": true} + ] + } + }); +}); + +test("framework configuration: SAPUI5", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library" + }, + "framework": { + "name": "SAPUI5", + "version": "1.75.0", + "libraries": [ + {"name": "sap.ui.core"}, + {"name": "sap.m"}, + {"name": "sap.f", "optional": true}, + {"name": "sap.ui.support", "development": true} + ] + } + }); +}); + +test("framework configuration: Invalid", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library" + }, + "framework": { + "name": "FooUI5", + "version": "1.75", + "libraries": [ + "sap.ui.core", + {"library": "sap.m"}, + {"name": "sap.f", "optional": "x"}, + {"name": "sap.f", "development": "no"} + ] + } + }, [ + { + dataPath: "/framework/name", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "OpenUI5", + "SAPUI5", + ], + }, + schemaPath: "../project.json#/definitions/framework/properties/name/enum", + }, + { + dataPath: "/framework/version", + keyword: "errorMessage", + message: "Not a valid version according to the Semantic Versioning specification (https://semver.org/)", + params: { + errors: [ + { + dataPath: "/framework/version", + keyword: "pattern", + message: + "should match pattern \"^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*" + + "|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(" + + "[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$\"", + params: { + pattern: "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-]" + + "[0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(" + + "?:\\.[0-9a-zA-Z-]+)*))?$", + }, + schemaPath: "../project.json#/definitions/framework/properties/version/pattern", + } + ] + }, + schemaPath: "../project.json#/definitions/framework/properties/version/errorMessage", + }, + { + dataPath: "/framework/libraries/0", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/type" + + }, + { + dataPath: "/framework/libraries/1", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "library", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/additionalProperties", + }, + { + dataPath: "/framework/libraries/1", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/required", + }, + { + dataPath: "/framework/libraries/2/optional", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean" + }, + + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", + }, + { + dataPath: "/framework/libraries/3/development", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean" + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type" + } + ]); +}); diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js new file mode 100644 index 00000000000..f90da6fa8b0 --- /dev/null +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -0,0 +1,269 @@ +const test = require("ava"); +const AjvCoverage = require("../../../utils/AjvCoverage"); +const {_Validator: Validator} = require("../../../../lib/validation/validator"); +const ValidationError = require("../../../../lib/validation/ValidationError"); + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({config, project: {id: "my-project"}}); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError" + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator(); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/ui5.json"] + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-ui5"}); + const thresholds = { + statements: 95, + branches: 80, + functions: 100, + lines: 95 + }; + t.context.ajvCoverage.verify(thresholds); +}); + +test("Undefined", async (t) => { + await assertValidation(t, undefined, [{ + dataPath: "", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "#/type", + }]); +}); + +test("Missing specVersion, type, metadata", async (t) => { + await assertValidation(t, {}, [ + { + dataPath: "", + keyword: "required", + message: "should have required property 'specVersion'", + params: { + missingProperty: "specVersion", + }, + schemaPath: "#/required", + }, + { + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + schemaPath: "#/required", + }, + { + dataPath: "", + keyword: "required", + message: "should have required property 'type'", + params: { + missingProperty: "type", + }, + schemaPath: "#/required", + } + + ]); +}); + +test("Missing type, metadata", async (t) => { + await assertValidation(t, { + "specVersion": "2.0" + }, [ + { + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + schemaPath: "#/required", + }, + { + dataPath: "", + keyword: "required", + message: "should have required property 'type'", + params: { + missingProperty: "type", + }, + schemaPath: "#/required", + } + ]); +}); + +test("Invalid specVersion", async (t) => { + await assertValidation(t, { + "specVersion": "0.0" + }, [ + { + dataPath: "/specVersion", + keyword: "errorMessage", + message: +`Unsupported "specVersion" +Your UI5 CLI installation might be outdated. +Supported specification versions: "2.0", "1.1", "1.0", "0.1" +For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, + params: { + errors: [ + { + dataPath: "/specVersion", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "2.0", + "1.1", + "1.0", + "0.1", + ], + }, + schemaPath: "#/properties/specVersion/enum", + }, + ], + }, + schemaPath: "#/properties/specVersion/errorMessage", + } + ]); +}); + +test("Invalid type", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "foo", + "metadata": { + "name": "foo" + } + }, [ + { + dataPath: "/type", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "application", + "library", + "theme-library", + "module" + ] + }, + schemaPath: "#/properties/type/enum", + } + ]); +}); + +test("Invalid kind", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "foo", + "metadata": { + "name": "foo" + } + }, [ + { + dataPath: "/kind", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "project", + "extension", + null + ], + }, + schemaPath: "#/properties/kind/enum", + } + ]); +}); + +test("Invalid metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": {} + } + }, [ + { + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../ui5.json#/definitions/metadata/properties/name/type", + } + ]); +}); + +test("Invalid metadata.copyright", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "foo", + "copyright": 123 + } + }, [ + { + dataPath: "/metadata/copyright", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../ui5.json#/definitions/metadata/properties/copyright/type", + } + ]); +}); + +test("Additional metadata property", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "foo", + "copyrihgt": "typo" + } + }, [ + { + dataPath: "/metadata", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "copyrihgt" + }, + schemaPath: "../ui5.json#/definitions/metadata/additionalProperties", + } + ]); +}); + +test("specVersion 0.1", async (t) => { + await assertValidation(t, { + "specVersion": "0.1" + }); +}); + +test("specVersion 1.0", async (t) => { + await assertValidation(t, { + "specVersion": "1.0" + }); +}); + +test("specVersion 1.1", async (t) => { + await assertValidation(t, { + "specVersion": "1.1" + }); +}); diff --git a/packages/project/test/lib/validation/validator.js b/packages/project/test/lib/validation/validator.js new file mode 100644 index 00000000000..b9bd6863677 --- /dev/null +++ b/packages/project/test/lib/validation/validator.js @@ -0,0 +1,22 @@ +const test = require("ava"); +const sinon = require("sinon"); +const {validate, _Validator: Validator} = require("../../../lib/validation/validator"); + +test.afterEach.always((t) => { + sinon.restore(); +}); + +test.serial("validate function calls Validator#validate method", async (t) => { + const config = {config: true}; + const project = {project: true}; + const yaml = {yaml: true}; + + const validateStub = sinon.stub(Validator.prototype, "validate"); + validateStub.resolves(); + + const result = await validate({config, project, yaml}); + + t.is(result, undefined, "validate should return undefined"); + t.is(validateStub.callCount, 1, "validate should be called once"); + t.deepEqual(validateStub.getCall(0).args, [{config, project, yaml}]); +}); diff --git a/packages/project/test/utils/AjvCoverage.js b/packages/project/test/utils/AjvCoverage.js new file mode 100644 index 00000000000..e674c8d670a --- /dev/null +++ b/packages/project/test/utils/AjvCoverage.js @@ -0,0 +1,146 @@ +// Inspired by https://github.com/epoberezkin/ajv-istanbul + +const crypto = require("crypto"); +const beautify = require("js-beautify").js_beautify; +const libReport = require("istanbul-lib-report"); +const reports = require("istanbul-reports"); +const libCoverage = require("istanbul-lib-coverage"); +const {createInstrumenter} = require("istanbul-lib-instrument"); + +const rSchemaName = new RegExp(/sourceURL=([^\s]*)/); + +const rRootDataUndefined = /\n(?:\s)*if \(rootData === undefined\) rootData = data;/g; +const rEnsureErrorArray = /\n(?:\s)*if \(vErrors === null\) vErrors = \[err\];(?:\s)*else vErrors\.push\(err\);/g; +const rDataPathOrEmptyString = /dataPath: \(dataPath \|\| ''\)/g; + +function hash(content) { + return crypto.createHash("sha1").update(content).digest("hex").substr(0, 16); +} + +function randomCoverageVar() { + return "__ajv-coverage__" + hash((String(Date.now()) + Math.random())); +} + +class AjvCoverage { + constructor(ajv, options = {}) { + this.ajv = ajv; + this.ajv._opts.processCode = this._processCode.bind(this); + if (options.meta === true) { + this.ajv._metaOpts.processCode = this._processCode.bind(this); + } + this._processFileName = options.processFileName; + this._includes = options.includes; + this._sources = {}; + this._globalCoverageVar = options.globalCoverage === true ? "__coverage__" : randomCoverageVar(); + this._instrumenter = createInstrumenter({ + coverageVariable: this._globalCoverageVar + }); + } + getSummary() { + const coverageMap = this._createCoverageMap(); + const summary = libCoverage.createCoverageSummary(); + + const files = coverageMap.files(); + files.forEach(function(file) { + const fileCoverageSummary = coverageMap.fileCoverageFor(file).toSummary(); + summary.merge(fileCoverageSummary); + return; + }); + + if (files.length === 0 || summary.lines.covered === 0) { + throw new Error("AjvCoverage#getSummary: No coverage data found!"); + } + + return { + branches: summary.branches.pct, + lines: summary.lines.pct, + statements: summary.statements.pct, + functions: summary.functions.pct + }; + } + verify(thresholds) { + const thresholdEntries = Object.entries(thresholds); + if (thresholdEntries.length === 0) { + throw new Error("AjvCoverage#verify: No thresholds defined!"); + } + + const summary = this.getSummary(); + const errors = []; + + thresholdEntries.forEach(function([threshold, expectedPct]) { + const pct = summary[threshold]; + if (pct === undefined) { + errors.push(`Invalid coverage threshold '${threshold}'`); + } else if (pct < expectedPct) { + errors.push( + `Coverage for '${threshold}' (${pct}%) ` + + `does not meet global threshold (${expectedPct}%)`); + } + }); + + if (errors.length > 0) { + const errorMessage = "ERROR:\n" + errors.join("\n"); + throw new Error(errorMessage); + } + } + createReport(name, contextOptions = {}, reportOptions = {}) { + const coverageMap = this._createCoverageMap(); + const context = libReport.createContext(Object.assign({}, contextOptions, { + coverageMap, + sourceFinder: (filePath) => { + if (this._sources[filePath]) { + return this._sources[filePath]; + } + const sourceFinder = contextOptions.sourceFinder; + if (typeof sourceFinder === "function") { + return sourceFinder(filePath); + } + } + })); + const report = reports.create(name, reportOptions); + report.execute(context); + } + _createCoverageMap() { + return libCoverage.createCoverageMap(global[this._globalCoverageVar]); + } + _processCode(originalCode) { + let fileName; + const schemaNameMatch = rSchemaName.exec(originalCode); + if (schemaNameMatch) { + fileName = schemaNameMatch[1]; + } else { + // Probably a definition of a schema that is compiled separately + // Try to find the schema that is currently compiling + const schemas = Object.entries(this.ajv._schemas); + const compilingSchemas = schemas.filter(([, schema]) => schema.compiling); + if (compilingSchemas.length > 0) { + // Last schema is the current one + const lastSchemaEntry = compilingSchemas[compilingSchemas.length - 1]; + fileName = lastSchemaEntry[0] + "-" + hash(originalCode); + } else { + fileName = hash(originalCode); + } + } + + if (typeof this._processFileName === "function") { + fileName = this._processFileName.call(null, fileName); + } + + if (this._includes && this._includes.every((pattern) => !fileName.includes(pattern))) { + return originalCode; + } + + const code = AjvCoverage.insertIgnoreComments(beautify(originalCode, {indent_size: 2})); + const instrumentedCode = this._instrumenter.instrumentSync(code, fileName); + this._sources[fileName] = code; + return instrumentedCode; + } + static insertIgnoreComments(code) { + code = code.replace(rRootDataUndefined, "\n/* istanbul ignore next */$&"); + code = code.replace(rEnsureErrorArray, "\n/* istanbul ignore next */$&"); + code = code.replace(rDataPathOrEmptyString, "dataPath: (dataPath || /* istanbul ignore next */ '')"); + return code; + } +} + +module.exports = AjvCoverage; From fabf2fa1fe7f829f694073850c139b09bcecb14a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 17 Mar 2020 10:35:13 +0100 Subject: [PATCH 0315/1272] [ui5-project][INTERNAL] projectPreprocessor: Add _isRoot flag to root project Alternative to (_level === 0) checks. --- packages/project/lib/projectPreprocessor.js | 18 +++++++++++------- .../project/lib/translators/ui5Framework.js | 2 +- packages/project/test/lib/extensions.js | 4 ++++ .../project/test/lib/projectPreprocessor.js | 14 ++++++++++++++ .../translators/ui5Framework.integration.js | 3 +++ 5 files changed, 33 insertions(+), 8 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index f6e2402d66c..41ab309e7c0 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -61,6 +61,9 @@ class ProjectPreprocessor { await Promise.all(projectsToProcess.map(async (project) => { project._level = level; + if (level === 0) { + project._isRoot = true; + } log.verbose(`Processing project ${project.id} on level ${project._level}...`); if (project.dependencies && project.dependencies.length) { @@ -266,7 +269,7 @@ class ProjectPreprocessor { isConfigValid(project) { if (!project.specVersion) { - if (project._level === 0) { + if (project._isRoot) { throw new Error(`No specification version defined for root project ${project.id}`); } log.verbose(`No specification version defined for project ${project.id}`); @@ -282,14 +285,14 @@ class ProjectPreprocessor { } if (!project.type) { - if (project._level === 0) { + if (project._isRoot) { throw new Error(`No type configured for root project ${project.id}`); } log.verbose(`No type configured for project ${project.id}`); return false; // ignore this project } - if (project.kind !== "project" && project._level === 0) { + if (project.kind !== "project" && project._isRoot) { // This is arguable. It is not the concern of ui5-project to define the entry point of a project tree // On the other hand, there is no known use case for anything else right now and failing early here // makes sense in that regard @@ -325,12 +328,12 @@ class ProjectPreprocessor { } checkProjectMetadata(parent, project) { - if (project.metadata.deprecated && parent && parent._level === 0) { + if (project.metadata.deprecated && parent && parent._isRoot) { // Only warn for direct dependencies of the root project log.warn(`Dependency ${project.metadata.name} is deprecated and should not be used for new projects!`); } - if (project.metadata.sapInternal && parent && parent._level === 0 && !parent.metadata.allowSapInternal) { + if (project.metadata.sapInternal && parent && parent._isRoot && !parent.metadata.allowSapInternal) { // Only warn for direct dependencies of the root project, except it defines "allowSapInternal" log.warn(`Dependency ${project.metadata.name} is restricted for use by SAP internal projects only! ` + `If the project ${parent.metadata.name} is an SAP internal project, add the attribute ` + @@ -389,7 +392,7 @@ class ProjectPreprocessor { `${project.id} at "${configPath}". Error: ${err.message}`; // Something else than "File or directory does not exist" or root project - if (err.code !== "ENOENT" || project._level === 0) { + if (err.code !== "ENOENT" || project._isRoot) { throw new Error(errorText); } else { log.verbose(errorText); @@ -609,7 +612,8 @@ class ProjectPreprocessor { "version", "path", "dependencies", - "_level" + "_level", + "_isRoot" ]; const config = {}; for (const key in project) { diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index ebe0d337149..96b35c873ad 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -237,7 +237,7 @@ module.exports = { return true; } // Filter out development and unresolved optional dependencies for non-root projects - return utils.shouldIncludeDependency(dependency, project._level === 0); + return utils.shouldIncludeDependency(dependency, project._isRoot); }) .map((dependency) => { if (!frameworkLibs[dependency.name]) { diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index acb9e1de583..e1008cadcf0 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -60,6 +60,7 @@ test("Project with project-shim extension with dependency configuration", (t) => return projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, + _isRoot: true, type: "application", metadata: { name: "xy", @@ -218,6 +219,7 @@ test("Project with project-shim extension with dependency declaration and config return projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, + _isRoot: true, type: "application", metadata: { name: "xy", @@ -392,6 +394,7 @@ test("Project with project-shim extension with collection", (t) => { return projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, + _isRoot: true, type: "application", metadata: { name: "xy", @@ -526,6 +529,7 @@ test("Project with project-type extension dependency inline configuration", (t) return t.throwsAsync(projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, + _isRoot: true, type: "z", metadata: { name: "xy", diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 426a5dc841a..42a663a0e5e 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -36,6 +36,7 @@ test("Project with inline configuration", (t) => { return projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, + _isRoot: true, type: "application", metadata: { name: "xy", @@ -73,6 +74,7 @@ test("Project with configPath", (t) => { return projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, + _isRoot: true, type: "application", metadata: { name: "application.b", @@ -110,6 +112,7 @@ test("Project with ui5.yaml at default location", (t) => { return projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, + _isRoot: true, type: "application", metadata: { name: "application.a", @@ -146,6 +149,7 @@ test("Project with ui5.yaml at default location and some configuration", (t) => return projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, + _isRoot: true, type: "application", metadata: { name: "application.c", @@ -334,6 +338,7 @@ test("Ignores additional application-projects", (t) => { return projectPreprocessor.processTree(tree).then((parsedTree) => { t.deepEqual(parsedTree, { _level: 0, + _isRoot: true, type: "application", metadata: { name: "application.a", @@ -425,6 +430,7 @@ test("Inconsistent dependencies with same ID", (t) => { specVersion: "0.1", path: applicationAPath, _level: 0, + _isRoot: true, type: "application", metadata: { name: "application.a", @@ -703,6 +709,7 @@ const expectedTreeWithInvalidModules = { "namespace": "id1" }, "_level": 0, + "_isRoot": true, "kind": "project", "resources": { "configuration": { @@ -839,6 +846,7 @@ const expectedTreeAWithInlineConfigs = { "specVersion": "1.0", "path": applicationAPath, "_level": 0, + "_isRoot": true, "type": "application", "metadata": { "name": "application.a", @@ -954,6 +962,7 @@ const expectedTreeAWithConfigPaths = { "path": applicationAPath, "configPath": path.join(applicationAPath, "ui5.yaml"), "_level": 0, + "_isRoot": true, "type": "application", "metadata": { "name": "application.a", @@ -1159,6 +1168,7 @@ const expectedTreeBWithInlineConfigs = { "specVersion": "0.1", "path": applicationBPath, "_level": 0, + "_isRoot": true, "type": "application", "metadata": { "name": "application.b", @@ -1543,6 +1553,7 @@ const expectedTreeApplicationCycleA = { } ], "_level": 0, + "_isRoot": true, "kind": "project", "resources": { "configuration": { @@ -1850,6 +1861,7 @@ test.serial("checkProjectMetadata: Warning logged for deprecated dependencies", const project1 = { _level: 0, + _isRoot: true, metadata: { name: "root.project", deprecated: true @@ -1931,6 +1943,7 @@ test.serial("checkProjectMetadata: Warning logged for SAP internal dependencies" const project1 = { _level: 0, + _isRoot: true, metadata: { name: "root.project", sapInternal: true @@ -1978,6 +1991,7 @@ test.serial("checkProjectMetadata: No warning logged for allowed SAP internal li const project1 = { _level: 0, + _isRoot: true, metadata: { name: "root.project", allowSapInternal: true // parent project (=root) allows sap internal project use diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index 3d0ac756a17..0fbda9cffb2 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -108,6 +108,9 @@ function defineTest(testName, { }, dependencies }; + if (_level === 0) { + proj._isRoot = true; + } if (framework) { proj.framework = framework; } From 808286f0be1c4e199a9a420f61036919347a8dba Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 25 Mar 2020 11:30:33 +0100 Subject: [PATCH 0316/1272] [ui5-project][INTERNAL] ui5Framework: Don't log info when no libs are found This might especially happen when the root project does not use specVersion 2.0 and defines framework libraries. The info log might then be confusing. --- packages/project/lib/translators/ui5Framework.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 96b35c873ad..d5534f31eda 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -151,14 +151,14 @@ module.exports = { version = tree.framework.version; } - log.info(`Using ${frameworkName} version: ${version}`); - const referencedLibraries = utils.getFrameworkLibrariesFromTree(tree); if (!referencedLibraries.length) { log.verbose(`No ${frameworkName} libraries referenced in project ${tree.id} or its dependencies`); return null; } + log.info(`Using ${frameworkName} version: ${version}`); + let resolver; if (frameworkName === "OpenUI5") { const Openui5Resolver = require("../ui5Framework/Openui5Resolver"); From 570493159eca9d42f76487fe1bac33951d264506 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 29 Mar 2020 02:21:00 +0000 Subject: [PATCH 0317/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 810 +++++++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 478 insertions(+), 334 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6455fbe5835..e6eb7dc0be7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -96,9 +96,9 @@ } }, "@babel/generator": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.0.tgz", - "integrity": "sha512-onl4Oy46oGCzymOXtKMQpI7VXtCbTSHK1kqBydZ6AmzuNcacEVqGk9tZtAS+48IA9IstZcDCgIg8hQKnb7suRw==", + "version": "7.9.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.4.tgz", + "integrity": "sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA==", "dev": true, "requires": { "@babel/types": "^7.9.0", @@ -286,13 +286,13 @@ } }, "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", + "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", "dev": true, "requires": { + "@babel/helper-validator-identifier": "^7.9.0", "chalk": "^2.0.0", - "esutils": "^2.0.2", "js-tokens": "^4.0.0" }, "dependencies": { @@ -316,12 +316,33 @@ "supports-color": "^5.3.0" } }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -334,9 +355,9 @@ } }, "@babel/parser": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.2.tgz", - "integrity": "sha512-2jyvKdoOS1aWAFL2rjJZmamyDDkPCx/AAz4/Wh1Dfxvw8qqnOvek/ZlHQ2noO/o8JpnXa/WiUUFOv48meBKkpA==" + "version": "7.9.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", + "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==" }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.8.3", @@ -628,9 +649,9 @@ } }, "@sinonjs/fake-timers": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.0.tgz", - "integrity": "sha512-atR1J/jRXvQAb47gfzSK8zavXy7BcpnYq21ALon0U99etu99vsir0trzIO3wpeLtW+LLVY6X7EkfVTbjGSH8Ww==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", + "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.0" @@ -703,9 +724,9 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { - "version": "13.9.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.2.tgz", - "integrity": "sha512-bnoqK579sAYrQbp73wwglccjJ4sfRdKU7WNEZ5FW4K2U6Kc0/eZ5kvXG0JKsEKFB50zrFmfFt52/cvBbZa7eXg==" + "version": "13.9.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.5.tgz", + "integrity": "sha512-hkzMMD3xu6BrJpGVLeQ3htQQNAcOrJjX7WFmtK8zWQpz2UJf13LCFF2ALA7c9OVdvc2vQJeDdjfR35M0sBCxvw==" }, "@ui5/builder": { "version": "1.10.1", @@ -959,21 +980,6 @@ "requires": { "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" - }, - "dependencies": { - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - } } }, "anymatch": { @@ -1228,6 +1234,21 @@ } } }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", @@ -1253,6 +1274,12 @@ "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", "dev": true }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -1353,9 +1380,9 @@ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, "blueimp-md5": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.12.0.tgz", - "integrity": "sha512-zo+HIdIhzojv6F1siQPqPFROyVy7C50KzHv/k/Iz+BtvtVzSHXiMXOpq2wCfNkeBqdCv+V8XOV96tsEt2W/3rQ==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.13.0.tgz", + "integrity": "sha512-lmp0m647R5e77ORduxLW5mISIDcvgJZa52vMBv5uVI3UmSWTQjkJsZVBfaFqQPw/QFogJwvY6e3Gl9nP+Loe+Q==", "dev": true }, "body-parser": { @@ -1440,6 +1467,21 @@ "supports-color": "^5.3.0" } }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", @@ -1452,6 +1494,12 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -1736,117 +1784,6 @@ "lodash.debounce": "^4.0.8", "lodash.throttle": "^4.1.1", "yargs": "^13.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - } - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } } }, "chownr": { @@ -1955,46 +1892,52 @@ "dev": true }, "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", "dev": true, "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "dev": true, "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^4.1.0" } } } @@ -2028,19 +1971,17 @@ "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "requires": { - "color-name": "1.1.3" + "color-name": "~1.1.4" } }, "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "combined-stream": { "version": "1.0.8", @@ -2271,9 +2212,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", - "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", "requires": { "minimist": "^1.2.5" } @@ -2706,9 +2647,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", - "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", "requires": { "minimist": "^1.2.5" } @@ -2942,9 +2883,9 @@ } }, "es-abstract": { - "version": "1.17.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", - "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", + "version": "1.17.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz", + "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==", "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -3159,6 +3100,21 @@ "supports-color": "^5.3.0" } }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -3187,6 +3143,12 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -3194,9 +3156,9 @@ "dev": true }, "mkdirp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", - "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -3343,12 +3305,20 @@ } }, "esquery": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.1.0.tgz", - "integrity": "sha512-MxYW9xKmROWF672KqjO75sszsA8Mxhw06YFeS5VHlB98KDHbOSurm3ArsjO60Eaf3QmGMCP1yn+0JQkNLo/97Q==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.2.0.tgz", + "integrity": "sha512-weltsSqdeWIX9G2qQZz7KlTRJdkkOCTPgLYJUz1Hacf48R4YOwGPHO3+ORfWedqJKbq5WQmsgK90n+pFLIKt/Q==", "dev": true, "requires": { - "estraverse": "^4.0.0" + "estraverse": "^5.0.0" + }, + "dependencies": { + "estraverse": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz", + "integrity": "sha512-j3acdrMzqrxmJTNj5dbr1YbjacrYgAxVMeF0gK16E3j494mOe7xygM/ZLIguEQ0ETwAg2hlJCtHRGav+y0Ny5A==", + "dev": true + } } }, "esrecurse": { @@ -3540,9 +3510,9 @@ } }, "figgy-pudding": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", - "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==" + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" }, "figures": { "version": "3.2.0", @@ -3923,9 +3893,9 @@ "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==" }, "handle-thing": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", - "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" }, "har-schema": { "version": "2.0.0", @@ -3959,9 +3929,9 @@ } }, "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "has-symbols": { "version": "1.0.1", @@ -4017,9 +3987,9 @@ } }, "html-escaper": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.1.tgz", - "integrity": "sha512-hNX23TjWwD3q56HpWjUHOKj1+4KKlnjv9PcmBUYKVpga+2cnb9nDx/B1o0yO4n+RZXZdiNxzx6B24C9aNMTkkQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, "htmlparser2": { @@ -4315,6 +4285,21 @@ "restore-cursor": "^2.0.0" } }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", @@ -4330,6 +4315,12 @@ "escape-string-regexp": "^1.0.5" } }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -4801,9 +4792,9 @@ } }, "istanbul-reports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.0.tgz", - "integrity": "sha512-2osTcC8zcOSUkImzN2EWQta3Vdi4WjjKw99P2yWx5mLnigAM0Rd5uYFn1cf2i/Ois45GkNjaoTqc5CxgMSX80A==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-Vm9xwCiQ8t2cNNnckyeAV0UdxKpcQUz4nMxsBvIu8n2kmPSiyb5uaF/8LpmKr+yqL/MdOXaX2Nmdo4Qyxium9Q==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -4823,19 +4814,13 @@ "nopt": "~4.0.1" }, "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - }, "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", "dev": true, "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } } } @@ -4896,9 +4881,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", - "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", "requires": { "minimist": "^1.2.5" } @@ -5225,12 +5210,33 @@ "supports-color": "^5.3.0" } }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -5642,9 +5648,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", - "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", "requires": { "minimist": "^1.2.5" } @@ -5935,7 +5941,30 @@ "yargs": "^15.0.2" }, "dependencies": { - "find-up": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", @@ -5945,6 +5974,18 @@ "path-exists": "^4.0.0" } }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -5968,6 +6009,66 @@ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", + "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", + "dev": true, + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.1" + } + }, + "yargs-parser": { + "version": "18.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", + "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, @@ -6137,12 +6238,33 @@ "restore-cursor": "^2.0.0" } }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, "mimic-fn": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", @@ -6612,9 +6734,9 @@ "dev": true }, "psl": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.7.0.tgz", - "integrity": "sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ==" + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" }, "pump": { "version": "3.0.0", @@ -6687,14 +6809,6 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } } } }, @@ -7185,9 +7299,9 @@ "dev": true }, "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { "version": "9.0.1", @@ -7581,13 +7695,6 @@ "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", "requires": { "has-flag": "^4.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - } } }, "symbol-observable": { @@ -7629,6 +7736,21 @@ "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", "dev": true }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", @@ -8095,9 +8217,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", - "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -8150,12 +8272,33 @@ "supports-color": "^5.3.0" } }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -8329,46 +8472,76 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" }, "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", "dev": true, "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "dev": true, "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^4.1.0" } } } @@ -8388,9 +8561,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", - "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -8453,28 +8626,27 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", "dev": true, "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", + "cliui": "^5.0.0", + "find-up": "^3.0.0", "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^4.2.0", + "string-width": "^3.0.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^18.1.1" + "yargs-parser": "^13.1.2" }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, "camelcase": { @@ -8483,15 +8655,11 @@ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true }, "get-caller-file": { "version": "2.0.5", @@ -8500,59 +8668,35 @@ "dev": true }, "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "dev": true, "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^4.1.0" } }, "yargs-parser": { - "version": "18.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.1.tgz", - "integrity": "sha512-KRHEsOM16IX7XuLnMOqImcPNbLVXMNHYAoFc3BKR8Ortl5gzDbtXvvEoGx9imk5E+X1VeNKNlcHr8B8vi+7ipA==", + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", "dev": true, "requires": { "camelcase": "^5.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 9154063aaee..e8bd38e619d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.1", "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.0.0", + "istanbul-reports": "^3.0.1", "js-beautify": "^1.10.3", "jsdoc": "^3.6.3", "mock-require": "^3.0.3", From c61cd910555eb774454dda3c1a3e06962981f802 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 26 Mar 2020 16:36:52 +0100 Subject: [PATCH 0318/1272] [ui5-project][INTERNAL] Schema: Update error messages / fix framework schema --- .../project/lib/validation/ValidationError.js | 9 +++++--- .../schema/specVersion/2.0/kind/project.json | 2 +- packages/project/test/lib/extensions.js | 2 +- .../test/lib/validation/ValidationError.js | 12 +++++------ .../2.0/kind/project/application.js | 21 +++++++++++++++++++ .../specVersion/2.0/kind/project/library.js | 21 +++++++++++++++++++ 6 files changed, 56 insertions(+), 11 deletions(-) diff --git a/packages/project/lib/validation/ValidationError.js b/packages/project/lib/validation/ValidationError.js index bc21e9630b4..d29770fbce2 100644 --- a/packages/project/lib/validation/ValidationError.js +++ b/packages/project/lib/validation/ValidationError.js @@ -79,13 +79,16 @@ class ValidationError extends Error { switch (error.keyword) { case "additionalProperties": - message += `property ${error.params.additionalProperty} is not expected to be here`; + message += `property ${error.params.additionalProperty} must not be provided here`; break; case "type": - message += `should be of type '${error.params.type}'`; + message += `must be of type '${error.params.type}'`; + break; + case "required": + message += `must have required property '${error.params.missingProperty}'`; break; case "enum": - message += error.message + "\n"; + message += "must be equal to one of the allowed values\n"; message += "Allowed values: " + error.params.allowedValues.join(", "); break; default: diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index 17a82151e95..27d2a96fc50 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -256,7 +256,7 @@ "framework": { "type": "object", "additionalProperties": false, - "required": ["name", "version"], + "required": ["name"], "properties": { "name": { "enum": ["OpenUI5", "SAPUI5"] diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index e1008cadcf0..8c72710920b 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -154,7 +154,7 @@ test("Project with project-shim extension with invalid dependency configuration" const validationError = await t.throwsAsync(projectPreprocessor.processTree(tree), { instanceOf: ValidationError }); - t.true(validationError.message.includes("Configuration should have required property 'metadata'"), + t.true(validationError.message.includes("Configuration must have required property 'metadata'"), "ValidationError should contain error about missing metadata configuration"); }); diff --git a/packages/project/test/lib/validation/ValidationError.js b/packages/project/test/lib/validation/ValidationError.js index 25d69f4dd33..dc1c32b9edd 100644 --- a/packages/project/test/lib/validation/ValidationError.js +++ b/packages/project/test/lib/validation/ValidationError.js @@ -797,7 +797,7 @@ test.serial("ValidationError.formatMessage: keyword=type dataPath=", (t) => { schemaPath: "#/type", }; - const expectedErrorMessage = "Configuration should be of type 'object'"; + const expectedErrorMessage = "Configuration must be of type 'object'"; const errorMessage = ValidationError.formatMessage(error); t.is(errorMessage, expectedErrorMessage); @@ -814,7 +814,7 @@ test.serial("ValidationError.formatMessage: keyword=type", (t) => { schemaPath: "#/type", }; - const expectedErrorMessage = `Configuration ${chalk.underline(chalk.red("foo"))} should be of type 'object'`; + const expectedErrorMessage = `Configuration ${chalk.underline(chalk.red("foo"))} must be of type 'object'`; const errorMessage = ValidationError.formatMessage(error); t.is(errorMessage, expectedErrorMessage); @@ -831,7 +831,7 @@ test.serial("ValidationError.formatMessage: keyword=required w/o dataPath", (t) schemaPath: "#/required", }; - const expectedErrorMessage = "Configuration should have required property 'specVersion'"; + const expectedErrorMessage = "Configuration must have required property 'specVersion'"; const errorMessage = ValidationError.formatMessage(error); t.is(errorMessage, expectedErrorMessage); @@ -846,7 +846,7 @@ test.serial("ValidationError.formatMessage: keyword=required", (t) => { message: "should have required property 'name'" }; - const expectedErrorMessage = `Configuration ${chalk.underline(chalk.red("metadata"))} should have required property 'name'`; + const expectedErrorMessage = `Configuration ${chalk.underline(chalk.red("metadata"))} must have required property 'name'`; const errorMessage = ValidationError.formatMessage(error); t.is(errorMessage, expectedErrorMessage); @@ -902,7 +902,7 @@ test.serial("ValidationError.formatMessage: keyword=additionalProperties", (t) = }; const expectedErrorMessage = -`Configuration ${chalk.underline(chalk.red("resources/configuration"))} property propertiesFileEncoding is not expected to be here`; +`Configuration ${chalk.underline(chalk.red("resources/configuration"))} property propertiesFileEncoding must not be provided here`; const errorMessage = ValidationError.formatMessage(error); t.is(errorMessage, expectedErrorMessage); @@ -920,7 +920,7 @@ test.serial("ValidationError.formatMessage: keyword=enum", (t) => { }; const expectedErrorMessage = -`Configuration ${chalk.underline(chalk.red("type"))} should be equal to one of the allowed values +`Configuration ${chalk.underline(chalk.red("type"))} must be equal to one of the allowed values Allowed values: application, library, theme-library, module`; const errorMessage = ValidationError.formatMessage(error); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index 29ea1a362ed..d20efdeea71 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -630,3 +630,24 @@ test("framework configuration: Invalid", async (t) => { } ]); }); + +test("framework configuration: Missing 'name'", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application" + }, + "framework": {} + }, [ + { + dataPath: "/framework", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name" + }, + schemaPath: "../project.json#/definitions/framework/required", + } + ]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index 12c70596476..f2bd254a1d9 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -702,3 +702,24 @@ test("framework configuration: Invalid", async (t) => { } ]); }); + +test("framework configuration: Missing 'name'", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library" + }, + "framework": {} + }, [ + { + dataPath: "/framework", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name" + }, + schemaPath: "../project.json#/definitions/framework/required", + } + ]); +}); From 31c8f48bc59f3aefa107a23ba823488f60a4c46a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 27 Mar 2020 23:52:39 +0100 Subject: [PATCH 0319/1272] [ui5-project][INTERNAL] Schema: Change propertiesFileSourceEncoding default to UTF-8 --- .../lib/validation/schema/specVersion/2.0/kind/project.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index 27d2a96fc50..69f85507537 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -73,9 +73,9 @@ "definitions": { "resources-configuration-propertiesFileSourceEncoding": { "enum": ["UTF-8", "ISO-8859-1"], - "default": "ISO-8859-1", + "default": "UTF-8", "title": "Encoding of *.properties files", - "description": "By default, the UI5 Tooling expects *.properties files to be ISO-8859-1 encoded." + "description": "By default, the UI5 Tooling expects *.properties files to be UTF-8 encoded." }, "builder-resources": { "type": "object", From 88f7b7f036c9f54d139905b3e1cdb6290942270b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 26 Mar 2020 16:27:28 +0100 Subject: [PATCH 0320/1272] [ui5-project][INTERNAL] Project shims: Fix error message for missing configuration --- packages/project/lib/projectPreprocessor.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 41ab309e7c0..fa985424499 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -456,7 +456,7 @@ class ProjectPreprocessor { handleShim(extension) { if (!extension.shims) { - throw new Error(`Project shim extension ${extension.id} is missing 'shim' configuration`); + throw new Error(`Project shim extension ${extension.id} is missing 'shims' configuration`); } const {configurations, dependencies, collections} = extension.shims; From 9716c18cd314a690b46ed0eca714c7cc749b4e24 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 26 Mar 2020 16:27:56 +0100 Subject: [PATCH 0321/1272] [ui5-project][INTERNAL] ui5Framework.AbstractResolver: Enhance install example for full use case --- packages/project/lib/ui5Framework/AbstractResolver.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 1b155b41bea..049ec43a2c3 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -121,6 +121,10 @@ class AbstractResolver { * Installs the provided libraries and their dependencies * * @example + * const resolver = new Sapui5Resolver({version: "1.76.0"}); + * // Or for OpenUI5: + * // const resolver = new Openui5Resolver({version: "1.76.0"}); + * * resolver.install(["sap.ui.core", "sap.m"]).then(({libraryMetadata}) => { * // Installation done * }).catch((err) => { From 8e20e4c2578419010fc4114c74b4649b96774649 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 31 Mar 2020 12:29:47 +0200 Subject: [PATCH 0322/1272] [ui5-project]Bump read-pkg from 3.0.0 to 5.2.0 (#223) * Bump read-pkg from 3.0.0 to 5.2.0 Bumps [read-pkg](https://github.com/sindresorhus/read-pkg) from 3.0.0 to 5.2.0. - [Release notes](https://github.com/sindresorhus/read-pkg/releases) - [Commits](https://github.com/sindresorhus/read-pkg/compare/v3.0.0...v5.2.0) Signed-off-by: dependabot-preview[bot] * [INTERNAL] Update usage of read-pkg Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Matthias Osswald --- packages/project/lib/translators/npm.js | 2 +- packages/project/package-lock.json | 104 ++++++++++++++++++------ packages/project/package.json | 2 +- 3 files changed, 79 insertions(+), 29 deletions(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 11797924f7f..19fb95a174e 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -190,7 +190,7 @@ class NpmTranslator { async readProject({modulePath, moduleName, parentPath}) { let {pPkg} = this.projectCache[modulePath] || {}; if (!pPkg) { - pPkg = readPkg(modulePath).catch((err) => { + pPkg = readPkg({cwd: modulePath}).catch((err) => { // Failed to read package // If dependency shim is available, fake the package diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e6eb7dc0be7..c91aae4320a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -37,7 +37,6 @@ "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, "requires": { "@babel/highlight": "^7.8.3" } @@ -259,8 +258,7 @@ "@babel/helper-validator-identifier": { "version": "7.9.0", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz", - "integrity": "sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==", - "dev": true + "integrity": "sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==" }, "@babel/helper-wrap-function": { "version": "7.8.3", @@ -289,7 +287,6 @@ "version": "7.9.0", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", - "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.9.0", "chalk": "^2.0.0", @@ -300,7 +297,6 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, "requires": { "color-convert": "^1.9.0" } @@ -309,7 +305,6 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -320,7 +315,6 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, "requires": { "color-name": "1.1.3" } @@ -328,26 +322,22 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, "requires": { "has-flag": "^3.0.0" } @@ -728,6 +718,11 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.5.tgz", "integrity": "sha512-hkzMMD3xu6BrJpGVLeQ3htQQNAcOrJjX7WFmtK8zWQpz2UJf13LCFF2ALA7c9OVdvc2vQJeDdjfR35M0sBCxvw==" }, + "@types/normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" + }, "@ui5/builder": { "version": "1.10.1", "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.10.1.tgz", @@ -4834,8 +4829,7 @@ "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "js-yaml": { "version": "3.13.1", @@ -5033,6 +5027,11 @@ "ini": "^1.3.5" } }, + "lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=" + }, "linkify-it": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", @@ -5434,6 +5433,15 @@ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, "read-pkg-up": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", @@ -5442,6 +5450,19 @@ "requires": { "find-up": "^2.0.0", "read-pkg": "^3.0.0" + }, + "dependencies": { + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + } } } } @@ -6822,22 +6843,31 @@ } }, "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "dependencies": { - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "parse-json": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", + "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", "requires": { - "pify": "^3.0.0" + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" } + }, + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" } } }, @@ -6848,6 +6878,26 @@ "requires": { "find-up": "^3.0.0", "read-pkg": "^3.0.0" + }, + "dependencies": { + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + } } }, "readable-stream": { diff --git a/packages/project/package.json b/packages/project/package.json index e8bd38e619d..9d9be01e88a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -112,7 +112,7 @@ "mkdirp": "^1.0.3", "pacote": "^11.1.4", "pretty-hrtime": "^1.0.3", - "read-pkg": "^3.0.0", + "read-pkg": "^5.2.0", "read-pkg-up": "^4.0.0", "resolve": "^1.15.1", "string.prototype.matchall": "^4.0.2" From 18ef0db6a7dacb0eda0a3c33c88e1fc80a5f60f8 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 31 Mar 2020 12:44:09 +0200 Subject: [PATCH 0323/1272] [ui5-project]Bump read-pkg-up from 4.0.0 to 7.0.1 (#244) * Bump read-pkg-up from 4.0.0 to 7.0.1 Bumps [read-pkg-up](https://github.com/sindresorhus/read-pkg-up) from 4.0.0 to 7.0.1. - [Release notes](https://github.com/sindresorhus/read-pkg-up/releases) - [Commits](https://github.com/sindresorhus/read-pkg-up/compare/v4.0.0...v7.0.1) Signed-off-by: dependabot-preview[bot] * [INTERNAL] Update usage of read-pkg-up Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Matthias Osswald --- packages/project/lib/translators/npm.js | 16 ++++--- packages/project/package-lock.json | 60 +++++++++++++++++-------- packages/project/package.json | 2 +- 3 files changed, 51 insertions(+), 27 deletions(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 19fb95a174e..bada71fd1b5 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -286,8 +286,8 @@ class NpmTranslator { return readPkgUp({ cwd: path.dirname(basePath) }).then((result) => { - if (result.pkg) { - const pkg = result.pkg; + if (result && result.packageJson) { + const pkg = result.packageJson; // As of today, collections only exist in shims this.shimCollection(pkg.name, pkg); @@ -397,14 +397,16 @@ class NpmTranslator { return readPkgUp({ cwd: dirPath }).then((result) => { - if (!result.pkg) { + if (!result || !result.packageJson) { throw new Error( `[npm translator] Failed to locate package.json for directory "${path.resolve(dirPath)}"`); } - result.name = result.pkg.name; - // resolved path points to the package.json, but we want just the folder path - result.path = path.dirname(result.path); - return result; + return { + // resolved path points to the package.json, but we want just the folder path + path: path.dirname(result.path), + name: result.packageJson.name, + pkg: result.packageJson + }; }).then(this.processPkg.bind(this)).then((tree) => { if (this.projectsWoUi5Deps.length) { log.verbose( diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c91aae4320a..b2976831574 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5044,6 +5044,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, "requires": { "graceful-fs": "^4.1.2", "parse-json": "^4.0.0", @@ -6476,6 +6477,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, "requires": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -6542,7 +6544,8 @@ "pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true }, "pinkie": { "version": "2.0.4", @@ -6872,31 +6875,49 @@ } }, "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" }, "dependencies": { - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "requires": { - "pify": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" + "p-limit": "^2.2.0" } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" } } }, @@ -7669,7 +7690,8 @@ "strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true }, "strip-bom-buf": { "version": "2.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 9d9be01e88a..1594da35548 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -113,7 +113,7 @@ "pacote": "^11.1.4", "pretty-hrtime": "^1.0.3", "read-pkg": "^5.2.0", - "read-pkg-up": "^4.0.0", + "read-pkg-up": "^7.0.1", "resolve": "^1.15.1", "string.prototype.matchall": "^4.0.2" }, From 05aec44fa729b814e4c71a82eb5dba256a8c3fd8 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 31 Mar 2020 10:32:15 +0000 Subject: [PATCH 0324/1272] [ui5-project]Bump open-cli from 5.0.0 to 6.0.1 Bumps [open-cli](https://github.com/sindresorhus/open-cli) from 5.0.0 to 6.0.1. - [Release notes](https://github.com/sindresorhus/open-cli/releases) - [Commits](https://github.com/sindresorhus/open-cli/compare/v5.0.0...v6.0.1) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 286 +++++++++++++++++++++++++++-- packages/project/package.json | 2 +- 2 files changed, 270 insertions(+), 18 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b2976831574..283ad6ac564 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -683,6 +683,12 @@ "defer-to-connect": "^1.0.1" } }, + "@tokenizer/token": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", + "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", + "dev": true + }, "@tootallnate/once": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.0.0.tgz", @@ -693,6 +699,12 @@ "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" }, + "@types/debug": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.5.tgz", + "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==", + "dev": true + }, "@types/events": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", @@ -713,6 +725,12 @@ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, + "@types/minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=", + "dev": true + }, "@types/node": { "version": "13.9.5", "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.5.tgz", @@ -3536,10 +3554,16 @@ } }, "file-type": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-11.1.0.tgz", - "integrity": "sha512-rM0UO7Qm9K7TWTtA6AShI/t7H5BPjDeGVDaNyg9BjHAj3PysKy7+8C8D137R88jnR3rFJZQB/tFgydl5sN5m7g==", - "dev": true + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.1.4.tgz", + "integrity": "sha512-1n6FczX8n73Y/cLjTiMboeTGHfm/i2AWk2oQE7m9a/G5YTCZHCEHEGr32thhLm3iQNUYzTKVQUcYcNHtOLwqgQ==", + "dev": true, + "requires": { + "readable-web-to-node-stream": "^2.0.0", + "strtok3": "^6.0.0", + "token-types": "^2.0.0", + "typedarray-to-buffer": "^3.1.5" + } }, "fill-range": { "version": "7.0.1", @@ -3906,6 +3930,12 @@ "har-schema": "^2.0.0" } }, + "hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true + }, "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -4126,6 +4156,12 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "dev": true + }, "iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", @@ -4461,6 +4497,12 @@ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" }, + "is-docker": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.0.0.tgz", + "integrity": "sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ==", + "dev": true + }, "is-error": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", @@ -4636,9 +4678,9 @@ "dev": true }, "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.1.1.tgz", + "integrity": "sha512-umZHcSrwlDHo2TGMXv0DZ8dIUGunZ2Iv68YZnrmCiBPkZ4aaOhtv7pXJKeki9k3qJ3RJr0cDyitcl5wEH3AYog==", "dev": true }, "is-yarn-global": { @@ -5522,6 +5564,12 @@ "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", "dev": true }, + "min-indent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.0.tgz", + "integrity": "sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY=", + "dev": true + }, "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", @@ -6177,25 +6225,178 @@ } }, "open": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz", - "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/open/-/open-7.0.3.tgz", + "integrity": "sha512-sP2ru2v0P290WFfv49Ap8MF6PkzGNnGlAwHweB4WR4mr5d2d0woiCluUeJ218w7/+PmoBy9JmYgD5A4mLcWOFA==", "dev": true, "requires": { - "is-wsl": "^1.1.0" + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" } }, "open-cli": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-5.0.0.tgz", - "integrity": "sha512-Y2KQDS6NqNtk+PSXzSgwH41vTDMRndwFgVWsfgMhXv7lNe1cImLCe19Vo8oKwMsL7WeNsGmmbX7Ml74Ydj61Cg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-6.0.1.tgz", + "integrity": "sha512-A5h8MF3GrT1efn9TiO9LPajDnLtuEiGQT5G8TxWObBlgt1cZJF1YbQo/kNtsD1bJb7HxnT6SaSjzeLq0Rfhygw==", "dev": true, "requires": { - "file-type": "^11.0.0", + "file-type": "^14.1.4", "get-stdin": "^7.0.0", - "meow": "^5.0.0", - "open": "^6.3.0", + "meow": "^6.1.0", + "open": "^7.0.3", "temp-write": "^4.0.0" + }, + "dependencies": { + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "camelcase-keys": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.1.tgz", + "integrity": "sha512-BPCNVH56RVIxQQIXskp5tLQXUNGQ6sXr7iCv1FHDt81xBOQ/1r6H8SPxf19InVP6DexWar4s87q9thfuk8X9HA==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "map-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", + "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", + "dev": true + }, + "meow": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.0.tgz", + "integrity": "sha512-iIAoeI01v6pmSfObAAWFoITAA4GgiT45m4SmJgoxtZfvI0fyZwhV4d0lTwiUXvAKIPlma05Feb2Xngl52Mj5Cg==", + "dev": true, + "requires": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.1.1", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.0.0", + "minimist-options": "^4.0.1", + "normalize-package-data": "^2.5.0", + "read-pkg-up": "^7.0.0", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.8.1", + "yargs-parser": "^18.1.1" + } + }, + "minimist-options": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.0.2.tgz", + "integrity": "sha512-seq4hpWkYSUh1y7NXxzucwAN9yVlBc3Upgdjz8vLCP97jG8kaOmzYrVH/m7tQ1NYD1wdtZbSLfdy4zFmRWuc/w==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true + }, + "read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "requires": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + } + }, + "redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "requires": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + } + }, + "strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "requires": { + "min-indent": "^1.0.0" + } + }, + "trim-newlines": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", + "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", + "dev": true + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + }, + "yargs-parser": { + "version": "18.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", + "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } } }, "optionator": { @@ -6531,6 +6732,12 @@ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, + "peek-readable": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.0.tgz", + "integrity": "sha512-KGuODSTV6hcgdZvDrIDBUkN0utcAVj1LL7FfGbM0viKTtCHmtZcuEJ+lGqsp0fTFkGqesdtemV2yUSMeyy3ddA==", + "dev": true + }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -6935,6 +7142,12 @@ "util-deprecate": "~1.0.1" } }, + "readable-web-to-node-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-2.0.0.tgz", + "integrity": "sha512-+oZJurc4hXpaaqsN68GoZGQAQIA3qr09Or4fqEsargABnbe5Aau8hFn6ISVleT3cpY/0n/8drn7huyyEvTbghA==", + "dev": true + }, "readdir-scoped-modules": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", @@ -7719,6 +7932,35 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==" }, + "strtok3": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.0.tgz", + "integrity": "sha512-ZXlmE22LZnIBvEU3n/kZGdh770fYFie65u5+2hLK9s74DoFtpkQIdBZVeYEzlolpGa+52G5IkzjUWn+iXynOEQ==", + "dev": true, + "requires": { + "@tokenizer/token": "^0.1.1", + "@types/debug": "^4.1.5", + "debug": "^4.1.1", + "peek-readable": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, "supertap": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", @@ -8114,6 +8356,16 @@ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" }, + "token-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.0.0.tgz", + "integrity": "sha512-WWvu8sGK8/ZmGusekZJJ5NM6rRVTTDO7/bahz4NGiSDb/XsmdYBn6a1N/bymUHuWYTWeuLUg98wUzvE4jPdCZw==", + "dev": true, + "requires": { + "@tokenizer/token": "^0.1.0", + "ieee754": "^1.1.13" + } + }, "tough-cookie": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 1594da35548..a708a9ff11d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -134,7 +134,7 @@ "jsdoc": "^3.6.3", "mock-require": "^3.0.3", "nyc": "^15.0.0", - "open-cli": "^5.0.0", + "open-cli": "^6.0.1", "rimraf": "^3.0.2", "sinon": "^9.0.1", "tap-nyan": "^1.1.0", From 62fafa549187ae4544fa8794dc9618c04fa6782e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 31 Mar 2020 13:10:01 +0000 Subject: [PATCH 0325/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 1.0.2 to 2.0.0 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v2.0.0/CHANGELOG.md --- packages/project/package-lock.json | 36 +++++++++++++++++++++++++++--- packages/project/package.json | 2 +- 2 files changed, 34 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 283ad6ac564..ec209a9d034 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -768,6 +768,16 @@ "terser": "^4.6.3", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "@ui5/logger": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.2.tgz", + "integrity": "sha512-k49q5D7EBk4vGzpM81KDNyGL4YaB12v8qYNqR7/5f4xoAksotf7h3VeAjCmJFSttEOnC9LNb9GYTzJAWJoCv7w==", + "requires": { + "npmlog": "^4.1.2" + } + } } }, "@ui5/fs": { @@ -786,12 +796,22 @@ "pretty-hrtime": "^1.0.3", "random-int": "^2.0.0", "slash": "^3.0.0" + }, + "dependencies": { + "@ui5/logger": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.2.tgz", + "integrity": "sha512-k49q5D7EBk4vGzpM81KDNyGL4YaB12v8qYNqR7/5f4xoAksotf7h3VeAjCmJFSttEOnC9LNb9GYTzJAWJoCv7w==", + "requires": { + "npmlog": "^4.1.2" + } + } } }, "@ui5/logger": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.2.tgz", - "integrity": "sha512-k49q5D7EBk4vGzpM81KDNyGL4YaB12v8qYNqR7/5f4xoAksotf7h3VeAjCmJFSttEOnC9LNb9GYTzJAWJoCv7w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.0.tgz", + "integrity": "sha512-uBkUCqenF5IpUN+y//7FUHHiVN/AVzYwMleUcV27q1SRjD7Y3E84/fpOABPekEd1cgmJcPvOPRAd0X0btfPQVA==", "requires": { "npmlog": "^4.1.2" } @@ -821,6 +841,16 @@ "spdy": "^4.0.1", "treeify": "^1.0.1", "yesno": "^0.3.1" + }, + "dependencies": { + "@ui5/logger": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.2.tgz", + "integrity": "sha512-k49q5D7EBk4vGzpM81KDNyGL4YaB12v8qYNqR7/5f4xoAksotf7h3VeAjCmJFSttEOnC9LNb9GYTzJAWJoCv7w==", + "requires": { + "npmlog": "^4.1.2" + } + } } }, "abbrev": { diff --git a/packages/project/package.json b/packages/project/package.json index a708a9ff11d..0a0771026bd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -99,7 +99,7 @@ }, "dependencies": { "@ui5/builder": "^1.10.1", - "@ui5/logger": "^1.0.2", + "@ui5/logger": "^2.0.0", "@ui5/server": "^1.6.0", "ajv": "^6.12.0", "ajv-errors": "^1.0.1", From cf77a02aabd5d0f910424666164974ad0039ff61 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 25 Mar 2020 01:19:51 +0100 Subject: [PATCH 0326/1272] [ui5-project][INTERNAL] Adopt to task- and middlewareRepository refactorings taskRepository refactoring: https://github.com/SAP/ui5-builder/pull/438 middlewareRepository refactoring: https://github.com/SAP/ui5-server/pull/302 --- packages/project/lib/projectPreprocessor.js | 13 ++++++++++--- packages/project/test/lib/extensions.js | 7 +++---- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index fa985424499..4db7bf4c080 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -587,9 +587,12 @@ class ProjectPreprocessor { const taskRepository = require("@ui5/builder").tasks.taskRepository; const taskPath = path.join(extension.path, extension.task.path); - const task = require(taskPath); // throws if not found - taskRepository.addTask(extension.metadata.name, task); + taskRepository.addTask({ + name: extension.metadata.name, + specVersion: extension.specVersion, + taskPath, + }); } handleServerMiddleware(extension) { @@ -602,7 +605,11 @@ class ProjectPreprocessor { const {middlewareRepository} = require("@ui5/server"); const middlewarePath = path.join(extension.path, extension.middleware.path); - middlewareRepository.addMiddleware(extension.metadata.name, middlewarePath); + middlewareRepository.addMiddleware({ + name: extension.metadata.name, + specVersion: extension.specVersion, + middlewarePath + }); } async validateAndNormalizeExistingProject(project) { diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 8c72710920b..97d404a310a 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -616,7 +616,7 @@ test("Project with task extension dependency", (t) => { }); }); -test("Project with task extension dependency - task module not found", async (t) => { +test("Project with task extension dependency - does not throw for invalid task path", async (t) => { // "project-type" extension handling not yet implemented => test currently checks for error const tree = { id: "application.a", @@ -630,7 +630,7 @@ test("Project with task extension dependency - task module not found", async (t) kind: "extension", type: "task", metadata: { - name: "task.a" + name: "task.b" }, task: { path: "task.not.existing.js" @@ -643,8 +643,7 @@ test("Project with task extension dependency - task module not found", async (t) name: "xy" } }; - const error = await t.throwsAsync(projectPreprocessor.processTree(tree)); - t.regex(error.message, /^Cannot find module.*/, "Rejected with error"); + await t.notThrowsAsync(projectPreprocessor.processTree(tree)); }); From 0a8978179f8309e342ac81f247712ae196ab804f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 25 Jun 2019 18:39:39 +0200 Subject: [PATCH 0327/1272] [ui5-project][INTERNAL] index.js: Implement lazy require Exported modules are required on access --- packages/project/index.js | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/packages/project/index.js b/packages/project/index.js index dd95a207b25..9908abea703 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -2,9 +2,9 @@ * @module module:@ui5/project * @public */ -module.exports = { - normalizer: require("./lib/normalizer"), - projectPreprocessor: require("./lib/projectPreprocessor"), +const modules = { + normalizer: "./lib/normalizer", + projectPreprocessor: "./lib/projectPreprocessor", /** * @public * @see module:@ui5/project.ui5Framework @@ -29,7 +29,26 @@ module.exports = { * @namespace */ translators: { - "npm": require("./lib/translators/npm"), - "static": require("./lib/translators/static") + "npm": "./lib/translators/npm", + "static": "./lib/translators/static" } }; + +function exportModules(exportRoot, modulePaths) { + for (const moduleName in modulePaths) { + if (modulePaths.hasOwnProperty(moduleName)) { + if (typeof modulePaths[moduleName] === "object") { + exportRoot[moduleName] = {}; + exportModules(exportRoot[moduleName], modulePaths[moduleName]); + } else { + Object.defineProperty(exportRoot, moduleName, { + get() { + return require(modulePaths[moduleName]); + } + }); + } + } + } +} + +exportModules(module.exports, modules); From e824697c41469d024f92f986d84474390900df47 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 27 Mar 2020 11:18:56 +0100 Subject: [PATCH 0328/1272] [ui5-project][INTERNAL] index.js: Fix export and add tests --- packages/project/index.js | 12 ++++++------ packages/project/test/lib/index.js | 16 ++++++++++++++++ 2 files changed, 22 insertions(+), 6 deletions(-) create mode 100644 packages/project/test/lib/index.js diff --git a/packages/project/index.js b/packages/project/index.js index 9908abea703..3cdf7eed911 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -11,8 +11,8 @@ const modules = { * @namespace */ ui5Framework: { - Openui5Resolver: require("./lib/ui5Framework/Openui5Resolver"), - Sapui5Resolver: require("./lib/ui5Framework/Sapui5Resolver") + Openui5Resolver: "./lib/ui5Framework/Openui5Resolver", + Sapui5Resolver: "./lib/ui5Framework/Sapui5Resolver" }, /** * @public @@ -20,8 +20,8 @@ const modules = { * @namespace */ validation: { - validator: require("./lib/validation/validator"), - ValidationError: require("./lib/validation/ValidationError") + validator: "./lib/validation/validator", + ValidationError: "./lib/validation/ValidationError" }, /** * @private @@ -29,8 +29,8 @@ const modules = { * @namespace */ translators: { - "npm": "./lib/translators/npm", - "static": "./lib/translators/static" + npm: "./lib/translators/npm", + static: "./lib/translators/static" } }; diff --git a/packages/project/test/lib/index.js b/packages/project/test/lib/index.js new file mode 100644 index 00000000000..7c4d78f9f99 --- /dev/null +++ b/packages/project/test/lib/index.js @@ -0,0 +1,16 @@ +const test = require("ava"); +const index = require("../../index"); + +test("index.js exports all expected modules", (t) => { + t.truthy(index.normalizer, "Module exported"); + t.truthy(index.projectPreprocessor, "Module exported"); + + t.truthy(index.ui5Framework.Openui5Resolver, "Module exported"); + t.truthy(index.ui5Framework.Sapui5Resolver, "Module exported"); + + t.truthy(index.validation.validator, "Module exported"); + t.truthy(index.validation.ValidationError, "Module exported"); + + t.truthy(index.translators.npm, "Module exported"); + t.truthy(index.translators.static, "Module exported"); +}); From 23ed0e8c667e7bdffb00219937d6a20a505c94d8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 31 Mar 2020 18:42:23 +0200 Subject: [PATCH 0329/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 1.10.1 to 2.0.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.0.0/CHANGELOG.md --- packages/project/package-lock.json | 96 ++++++++++++++++++++++++------ packages/project/package.json | 2 +- 2 files changed, 80 insertions(+), 18 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ec209a9d034..c5f118a650c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -742,19 +742,19 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.10.1.tgz", - "integrity": "sha512-F9L6qoaA81Op+4HWXKbijkSIb9XnW8ucryotscNCj84hnXwpRfDOh8KDL9Jmt4lQyvraYppg+mqpOhxAvsHK2Q==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.0.tgz", + "integrity": "sha512-P0WwayMF0nO8l1jTQolbtMzt5TV66e3xPsDeyn0QTCyc+lDBixFFl4sbRfL31wf4B4062nRG/iXTv4P06rMGHA==", "requires": { - "@ui5/fs": "^1.1.2", - "@ui5/logger": "^1.0.2", + "@ui5/fs": "^2.0.0", + "@ui5/logger": "^2.0.0", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", "escodegen": "^1.14.1", "escope": "^3.6.0", "esprima": "^4.0.1", - "estraverse": "^4.3.0", - "globby": "^10.0.2", + "estraverse": "^5.0.0", + "globby": "^11.0.0", "graceful-fs": "^4.2.3", "jsdoc": "~3.6.3", "less-openui5": "^0.8.6", @@ -763,20 +763,53 @@ "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^3.0.2", - "semver": "^6.3.0", + "semver": "^7.1.3", "slash": "^3.0.0", - "terser": "^4.6.3", + "terser": "^4.6.7", "xml2js": "^0.4.23", "yazl": "^2.5.1" }, "dependencies": { - "@ui5/logger": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.2.tgz", - "integrity": "sha512-k49q5D7EBk4vGzpM81KDNyGL4YaB12v8qYNqR7/5f4xoAksotf7h3VeAjCmJFSttEOnC9LNb9GYTzJAWJoCv7w==", + "@ui5/fs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.0.tgz", + "integrity": "sha512-oc3eoLUBSXCgABXNV7Bt2onwKldG5TDUaEGczcb0aPqiUDtu5+PiI6UdwQ+2DMGnz465KvGtKE94AxURwlmveA==", + "requires": { + "@ui5/logger": "^2.0.0", + "clone": "^2.1.0", + "globby": "^11.0.0", + "graceful-fs": "^4.2.3", + "make-dir": "^3.0.2", + "micromatch": "^4.0.2", + "minimatch": "^3.0.3", + "mock-require": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^2.0.1", + "slash": "^3.0.0" + } + }, + "estraverse": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz", + "integrity": "sha512-j3acdrMzqrxmJTNj5dbr1YbjacrYgAxVMeF0gK16E3j494mOe7xygM/ZLIguEQ0ETwAg2hlJCtHRGav+y0Ny5A==" + }, + "globby": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.0.tgz", + "integrity": "sha512-iuehFnR3xu5wBBtm4xi0dMe92Ob87ufyu/dHwpDYfbcpYpIbrO5OnS8M1vWvrBhSGEJ3/Ecj7gnX76P8YxpPEg==", "requires": { - "npmlog": "^4.1.2" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" } + }, + "semver": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", + "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" } } }, @@ -843,6 +876,35 @@ "yesno": "^0.3.1" }, "dependencies": { + "@ui5/builder": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.10.1.tgz", + "integrity": "sha512-F9L6qoaA81Op+4HWXKbijkSIb9XnW8ucryotscNCj84hnXwpRfDOh8KDL9Jmt4lQyvraYppg+mqpOhxAvsHK2Q==", + "requires": { + "@ui5/fs": "^1.1.2", + "@ui5/logger": "^1.0.2", + "cheerio": "^0.22.0", + "escape-unicode": "^0.2.0", + "escodegen": "^1.14.1", + "escope": "^3.6.0", + "esprima": "^4.0.1", + "estraverse": "^4.3.0", + "globby": "^10.0.2", + "graceful-fs": "^4.2.3", + "jsdoc": "~3.6.3", + "less-openui5": "^0.8.6", + "make-dir": "^3.0.2", + "pretty-data": "^0.40.0", + "pretty-hrtime": "^1.0.3", + "replacestream": "^4.0.3", + "rimraf": "^3.0.2", + "semver": "^6.3.0", + "slash": "^3.0.0", + "terser": "^4.6.3", + "xml2js": "^0.4.23", + "yazl": "^2.5.1" + } + }, "@ui5/logger": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.2.tgz", @@ -8304,9 +8366,9 @@ } }, "terser": { - "version": "4.6.7", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.7.tgz", - "integrity": "sha512-fmr7M1f7DBly5cX2+rFDvmGBAaaZyPrHYK4mMdHEDAdNTqXSZgSOfqsfGq2HqPGT/1V0foZZuCZFx8CHKgAk3g==", + "version": "4.6.10", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.10.tgz", + "integrity": "sha512-qbF/3UOo11Hggsbsqm2hPa6+L4w7bkr+09FNseEe8xrcVD3APGLFqE+Oz1ZKAxjYnFsj80rLOfgAtJ0LNJjtTA==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", diff --git a/packages/project/package.json b/packages/project/package.json index 0a0771026bd..b1b4fd49b7e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,7 +98,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^1.10.1", + "@ui5/builder": "^2.0.0", "@ui5/logger": "^2.0.0", "@ui5/server": "^1.6.0", "ajv": "^6.12.0", From 61ec442a8a12af42a0cd1dc6f0a565c048c08b0d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 31 Mar 2020 18:43:22 +0200 Subject: [PATCH 0330/1272] [ui5-project][INTERNAL] Bump @ui5/server from 1.6.0 to 2.0.0 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.0.0/CHANGELOG.md --- packages/project/package-lock.json | 134 ++++++++--------------------- packages/project/package.json | 2 +- 2 files changed, 37 insertions(+), 99 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c5f118a650c..3cc063c46c3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -708,12 +708,14 @@ "@types/events": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", - "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==" + "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", + "dev": true }, "@types/glob": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "dev": true, "requires": { "@types/events": "*", "@types/minimatch": "*", @@ -723,7 +725,8 @@ "@types/minimatch": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", + "dev": true }, "@types/minimist": { "version": "1.2.0", @@ -734,7 +737,8 @@ "@types/node": { "version": "13.9.5", "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.5.tgz", - "integrity": "sha512-hkzMMD3xu6BrJpGVLeQ3htQQNAcOrJjX7WFmtK8zWQpz2UJf13LCFF2ALA7c9OVdvc2vQJeDdjfR35M0sBCxvw==" + "integrity": "sha512-hkzMMD3xu6BrJpGVLeQ3htQQNAcOrJjX7WFmtK8zWQpz2UJf13LCFF2ALA7c9OVdvc2vQJeDdjfR35M0sBCxvw==", + "dev": true }, "@types/normalize-package-data": { "version": "2.4.0", @@ -770,24 +774,6 @@ "yazl": "^2.5.1" }, "dependencies": { - "@ui5/fs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.0.tgz", - "integrity": "sha512-oc3eoLUBSXCgABXNV7Bt2onwKldG5TDUaEGczcb0aPqiUDtu5+PiI6UdwQ+2DMGnz465KvGtKE94AxURwlmveA==", - "requires": { - "@ui5/logger": "^2.0.0", - "clone": "^2.1.0", - "globby": "^11.0.0", - "graceful-fs": "^4.2.3", - "make-dir": "^3.0.2", - "micromatch": "^4.0.2", - "minimatch": "^3.0.3", - "mock-require": "^3.0.3", - "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.1", - "slash": "^3.0.0" - } - }, "estraverse": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz", @@ -814,29 +800,34 @@ } }, "@ui5/fs": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-1.1.2.tgz", - "integrity": "sha512-WKoHz5IA10jr2rl2BrmJG7RtEnkpLqkQX84phBT+7onX9I+Yv72MspHZCQbHpGoaJxt6G3TavggchZ7FKroGEw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.0.tgz", + "integrity": "sha512-oc3eoLUBSXCgABXNV7Bt2onwKldG5TDUaEGczcb0aPqiUDtu5+PiI6UdwQ+2DMGnz465KvGtKE94AxURwlmveA==", "requires": { - "@ui5/logger": "^1.0.1", + "@ui5/logger": "^2.0.0", "clone": "^2.1.0", - "globby": "^10.0.0", - "graceful-fs": "^4.2.0", - "make-dir": "^3.0.0", + "globby": "^11.0.0", + "graceful-fs": "^4.2.3", + "make-dir": "^3.0.2", "micromatch": "^4.0.2", "minimatch": "^3.0.3", "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.0", + "random-int": "^2.0.1", "slash": "^3.0.0" }, "dependencies": { - "@ui5/logger": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.2.tgz", - "integrity": "sha512-k49q5D7EBk4vGzpM81KDNyGL4YaB12v8qYNqR7/5f4xoAksotf7h3VeAjCmJFSttEOnC9LNb9GYTzJAWJoCv7w==", + "globby": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.0.tgz", + "integrity": "sha512-iuehFnR3xu5wBBtm4xi0dMe92Ob87ufyu/dHwpDYfbcpYpIbrO5OnS8M1vWvrBhSGEJ3/Ecj7gnX76P8YxpPEg==", "requires": { - "npmlog": "^4.1.2" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" } } } @@ -850,13 +841,13 @@ } }, "@ui5/server": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-1.6.0.tgz", - "integrity": "sha512-n27IG1TmGzEpb7CZbr6Dssn47SzLcW1D6JOJps9NVTXzFHqX79uT7Ek9BrlV7GPz1pKMf0FQhLaxq1xlum0rHw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.0.0.tgz", + "integrity": "sha512-SnF4dJ7M0i56FaB3ZLny7FsQ7kh7EfeNo+OP3iIqmBYGzgbw9DlX7M6wEJwEcwm7Z0hpDMeMHSm85d3G9eQ1hg==", "requires": { - "@ui5/builder": "^1.10.1", - "@ui5/fs": "^1.1.2", - "@ui5/logger": "^1.0.2", + "@ui5/builder": "^2.0.0", + "@ui5/fs": "^2.0.0", + "@ui5/logger": "^2.0.0", "compression": "^1.7.4", "connect-openui5": "^0.9.0", "cors": "^2.8.5", @@ -874,45 +865,6 @@ "spdy": "^4.0.1", "treeify": "^1.0.1", "yesno": "^0.3.1" - }, - "dependencies": { - "@ui5/builder": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-1.10.1.tgz", - "integrity": "sha512-F9L6qoaA81Op+4HWXKbijkSIb9XnW8ucryotscNCj84hnXwpRfDOh8KDL9Jmt4lQyvraYppg+mqpOhxAvsHK2Q==", - "requires": { - "@ui5/fs": "^1.1.2", - "@ui5/logger": "^1.0.2", - "cheerio": "^0.22.0", - "escape-unicode": "^0.2.0", - "escodegen": "^1.14.1", - "escope": "^3.6.0", - "esprima": "^4.0.1", - "estraverse": "^4.3.0", - "globby": "^10.0.2", - "graceful-fs": "^4.2.3", - "jsdoc": "~3.6.3", - "less-openui5": "^0.8.6", - "make-dir": "^3.0.2", - "pretty-data": "^0.40.0", - "pretty-hrtime": "^1.0.3", - "replacestream": "^4.0.3", - "rimraf": "^3.0.2", - "semver": "^6.3.0", - "slash": "^3.0.0", - "terser": "^4.6.3", - "xml2js": "^0.4.23", - "yazl": "^2.5.1" - } - }, - "@ui5/logger": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-1.0.2.tgz", - "integrity": "sha512-k49q5D7EBk4vGzpM81KDNyGL4YaB12v8qYNqR7/5f4xoAksotf7h3VeAjCmJFSttEOnC9LNb9GYTzJAWJoCv7w==", - "requires": { - "npmlog": "^4.1.2" - } - } } }, "abbrev": { @@ -3727,9 +3679,9 @@ "dev": true }, "follow-redirects": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.10.0.tgz", - "integrity": "sha512-4eyLK6s6lH32nOvLLwlIOnr9zrL8Sm+OvW4pVTJNoXeGzYIkHVf+pADQi+OJ0E67hiuSLezPVPyBcIZO50TmmQ==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.11.0.tgz", + "integrity": "sha512-KZm0V+ll8PfBrKwMzdo5D13b1bur9Iq9Zd/RMmAoQQcl2PxxFml8cxXPaaPYVbV0RjNjq1CU7zIzAOqtUPudmA==", "requires": { "debug": "^3.0.0" }, @@ -3957,6 +3909,7 @@ "version": "10.0.2", "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "dev": true, "requires": { "@types/glob": "^7.1.1", "array-union": "^2.1.0", @@ -6366,7 +6319,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, "requires": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -6376,7 +6328,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, "requires": { "p-locate": "^4.1.0" } @@ -6420,7 +6371,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, "requires": { "p-limit": "^2.2.0" } @@ -6428,8 +6378,7 @@ "path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" }, "quick-lru": { "version": "4.0.1", @@ -6437,17 +6386,6 @@ "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", "dev": true }, - "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - } - }, "redent": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index b1b4fd49b7e..1e37e0f696b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -100,7 +100,7 @@ "dependencies": { "@ui5/builder": "^2.0.0", "@ui5/logger": "^2.0.0", - "@ui5/server": "^1.6.0", + "@ui5/server": "^2.0.0", "ajv": "^6.12.0", "ajv-errors": "^1.0.1", "chalk": "^3.0.0", From 70df281b824a2a96546c82d1eb3c6fa2a65c3ed5 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 24 Mar 2020 20:18:43 +0100 Subject: [PATCH 0331/1272] [ui5-project][INTERNAL] ui5framework resolvers: Add resolveVersion/getLibraryMetadata --- .../lib/ui5Framework/AbstractResolver.js | 31 ++++ .../lib/ui5Framework/Openui5Resolver.js | 18 +- .../lib/ui5Framework/Sapui5Resolver.js | 15 +- .../project/lib/ui5Framework/npm/Installer.js | 5 + .../project/lib/ui5Framework/npm/Registry.js | 3 + packages/project/package-lock.json | 29 ++- packages/project/package.json | 1 + .../test/lib/ui5framework/AbstractResolver.js | 169 +++++++++++++++++- .../test/lib/ui5framework/Openui5Resolver.js | 100 +++++++++-- .../test/lib/ui5framework/Sapui5Resolver.js | 103 +++++++++-- .../test/lib/ui5framework/npm/Installer.js | 24 +++ 11 files changed, 461 insertions(+), 37 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 049ec43a2c3..f4b2c9cd720 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -1,5 +1,8 @@ const path = require("path"); const log = require("@ui5/logger").getLogger("ui5Framework:AbstractResolver"); +const semver = require("semver"); + +const versionRegExp = /^(0|[1-9]\d*)\.(0|[1-9]\d*)(?:\.(0|[1-9]\d*))?$/; /** * Abstract Resolver @@ -151,10 +154,38 @@ class AbstractResolver { }; } + /** + * + * @param {string} version + * @param {Object} options + */ + static async resolveVersion(version, {ui5HomeDir, cwd} = {}) { + let spec; + if (version === "latest") { + spec = "*"; + } else if (versionRegExp.test(version)) { + spec = version; + } else { + throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); + } + const versions = await this.fetchAllVersions({ui5HomeDir, cwd}); + const resolvedVersion = semver.maxSatisfying(versions, spec); + if (!resolvedVersion) { + throw new Error(`Could not resolve framework version ${version}`); + } + return resolvedVersion; + } + // To be implemented by resolver + async getLibraryMetadata(libraryName) { + throw new Error("AbstractResolver: getLibraryMetadata must be implemented!"); + } async handleLibrary(libraryName) { throw new Error("AbstractResolver: handleLibrary must be implemented!"); } + static fetchAllVersions(options) { + throw new Error("AbstractResolver: static fetchAllVersions must be implemented!"); + } } module.exports = AbstractResolver; diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js index d14c5e7d5ba..f7a1beb9428 100644 --- a/packages/project/lib/ui5Framework/Openui5Resolver.js +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -1,6 +1,11 @@ +const path = require("path"); + const AbstractResolver = require("./AbstractResolver"); const Installer = require("./npm/Installer"); +const OPENUI5_CORE_PACKAGE = "@openui5/sap.ui.core"; + + /** * Resolver for the OpenUI5 framework * @@ -30,7 +35,7 @@ class Openui5Resolver extends AbstractResolver { static _getLibaryName(pkgName) { return pkgName.replace(/^@openui5\//, ""); } - _getLibraryMetadata(libraryName) { + getLibraryMetadata(libraryName) { if (!this._loadLibraryMetadata[libraryName]) { this._loadLibraryMetadata[libraryName] = Promise.resolve().then(async () => { // Trigger manifest request to gather transitive dependencies @@ -64,7 +69,7 @@ class Openui5Resolver extends AbstractResolver { const pkgName = Openui5Resolver._getNpmPackageName(libraryName); return { // Trigger metadata request - metadata: this._getLibraryMetadata(libraryName), + metadata: this.getLibraryMetadata(libraryName), // Also trigger installation of package install: this._installer.installPackage({ pkgName, @@ -72,6 +77,15 @@ class Openui5Resolver extends AbstractResolver { }) }; } + static async fetchAllVersions({ui5HomeDir, cwd} = {}) { + const installer = new Installer({ + cwd: cwd ? path.resolve(cwd) : process.cwd(), + ui5HomeDir: + ui5HomeDir ? path.resolve(ui5HomeDir) : + path.join(require("os").homedir(), ".ui5") + }); + return await installer.fetchPackageVersions({pkgName: OPENUI5_CORE_PACKAGE}); + } } module.exports = Openui5Resolver; diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index 4b3d171a5aa..447f9bc8660 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -45,12 +45,16 @@ class Sapui5Resolver extends AbstractResolver { } return this._loadDistMetadata; } - async handleLibrary(libraryName) { + async getLibraryMetadata(libraryName) { const distMetadata = await this.loadDistMetadata(); const metadata = distMetadata.libraries[libraryName]; if (!metadata) { throw new Error(`Could not find library "${libraryName}"`); } + return metadata; + } + async handleLibrary(libraryName) { + const metadata = await this.getLibraryMetadata(libraryName); return { metadata: Promise.resolve({ @@ -66,6 +70,15 @@ class Sapui5Resolver extends AbstractResolver { }) }; } + static async fetchAllVersions({ui5HomeDir, cwd} = {}) { + const installer = new Installer({ + cwd: cwd ? path.resolve(cwd) : process.cwd(), + ui5HomeDir: + ui5HomeDir ? path.resolve(ui5HomeDir) : + path.join(require("os").homedir(), ".ui5") + }); + return await installer.fetchPackageVersions({pkgName: DIST_PKG_NAME}); + } } module.exports = Sapui5Resolver; diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index ff56acb442b..b2356390240 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -31,6 +31,11 @@ class Installer { return JSON.parse(await readFile(jsonPath, {encoding: "utf8"})); } + async fetchPackageVersions({pkgName}) { + const packument = await this._registry.requestPackagePackument(pkgName); + return Object.keys(packument.versions); + } + async fetchPackageManifest({pkgName, version}) { const targetDir = this._getTargetDirForPackage({pkgName, version}); try { diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index 31bada49a7b..cb908dcb552 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -13,6 +13,9 @@ class Registry { this._cwd = cwd; this._cacheDir = cacheDir; } + requestPackagePackument(pkgName) { + return this._pacote.packument(pkgName, this._getPacoteOptions()); + } requestPackageManifest(pkgName, version) { return this._pacote.manifest(`${pkgName}@${version}`, this._getPacoteOptions()); } diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3cc063c46c3..6f65e047698 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -4783,6 +4783,14 @@ "@istanbuljs/schema": "^0.1.2", "istanbul-lib-coverage": "^3.0.0", "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, "istanbul-lib-processinfo": { @@ -5365,6 +5373,13 @@ "integrity": "sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==", "requires": { "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } } }, "make-fetch-happen": { @@ -6648,6 +6663,14 @@ "registry-auth-token": "^4.0.0", "registry-url": "^5.0.0", "semver": "^6.2.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, "pacote": { @@ -7507,9 +7530,9 @@ "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" }, "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", + "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" }, "semver-diff": { "version": "2.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index 1e37e0f696b..a95bcc6c4bc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -115,6 +115,7 @@ "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", "resolve": "^1.15.1", + "semver": "^7.1.3", "string.prototype.matchall": "^4.0.2" }, "devDependencies": { diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 4585da9fcdb..72b3bc367ba 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -4,7 +4,13 @@ const path = require("path"); const AbstractResolver = require("../../../lib/ui5Framework/AbstractResolver"); -class MyResolver extends AbstractResolver {} +class MyResolver extends AbstractResolver { + static async fetchAllVersions() {} +} + +test.afterEach.always(() => { + sinon.restore(); +}); test("AbstractResolver: abstract constructor should throw", async (t) => { await t.throwsAsync(async () => { @@ -78,6 +84,16 @@ test("AbstractResolver: Defaults 'ui5HomeDir' to ~/.ui5", (t) => { t.is(resolver._ui5HomeDir, path.join(require("os").homedir(), ".ui5"), "Should default to ~/.ui5"); }); +test("AbstractResolver: getLibraryMetadata should throw an Error when not implemented", async (t) => { + await t.throwsAsync(async () => { + const resolver = new MyResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + await resolver.getLibraryMetadata(); + }, `AbstractResolver: getLibraryMetadata must be implemented!`); +}); + test("AbstractResolver: handleLibrary should throw an Error when not implemented", async (t) => { await t.throwsAsync(async () => { const resolver = new MyResolver({ @@ -277,3 +293,154 @@ Failed to resolve library sap.ui.lib2: Error within handleLibrary: sap.ui.lib2`) t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); }); + +test("AbstractResolver: static fetchAllVersions should throw an Error when not implemented", async (t) => { + await t.throwsAsync(async () => { + await AbstractResolver.fetchAllVersions(); + }, `AbstractResolver: static fetchAllVersions must be implemented!`); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves 'latest'", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0"]); + + const version = await MyResolver.resolveVersion("latest", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.76.0", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR'", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0"]); + + const version = await MyResolver.resolveVersion("1.75", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.75.1", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH'", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0"]); + + const version = await MyResolver.resolveVersion("1.75.0", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.75.0", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion without options", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0"]); + + await MyResolver.resolveVersion("1.75.0"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: undefined, + ui5HomeDir: undefined + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion throws error for 'lts'", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); + + const error = await t.throwsAsync(MyResolver.resolveVersion("lts", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Framework version specifier "lts" is incorrect or not supported`); + + t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); +}); + +test.serial("AbstractResolver: Static resolveVersion throws error for '1'", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); + + const error = await t.throwsAsync(MyResolver.resolveVersion("1", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Framework version specifier "1" is incorrect or not supported`); + + t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); +}); + +test.serial("AbstractResolver: Static resolveVersion throws error for '1.x'", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); + + const error = await t.throwsAsync(MyResolver.resolveVersion("1.x", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Framework version specifier "1.x" is incorrect or not supported`); + + t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); +}); + +test.serial("AbstractResolver: Static resolveVersion throws error for '1.75.x'", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); + + const error = await t.throwsAsync(MyResolver.resolveVersion("1.75.x", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Framework version specifier "1.75.x" is incorrect or not supported`); + + t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); +}); + +test.serial("AbstractResolver: Static resolveVersion throws error for '^1.75.0'", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); + + const error = await t.throwsAsync(MyResolver.resolveVersion("^1.75.0", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Framework version specifier "^1.75.0" is incorrect or not supported`); + + t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); +}); + +test.serial("AbstractResolver: Static resolveVersion throws error for '~1.75.0'", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); + + const error = await t.throwsAsync(MyResolver.resolveVersion("~1.75.0", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Framework version specifier "~1.75.0" is incorrect or not supported`); + + t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); +}); diff --git a/packages/project/test/lib/ui5framework/Openui5Resolver.js b/packages/project/test/lib/ui5framework/Openui5Resolver.js index 1f8c0e0d18f..f4e9e72c10c 100644 --- a/packages/project/test/lib/ui5framework/Openui5Resolver.js +++ b/packages/project/test/lib/ui5framework/Openui5Resolver.js @@ -1,25 +1,50 @@ const test = require("ava"); const sinon = require("sinon"); +const mock = require("mock-require"); +const path = require("path"); +const os = require("os"); + +let Openui5Resolver; + +test.beforeEach((t) => { + t.context.InstallerStub = sinon.stub(); + t.context.fetchPackageManifestStub = sinon.stub(); + t.context.fetchPackageVersionsStub = sinon.stub(); + t.context.installPackageStub = sinon.stub(); + t.context.InstallerStub.callsFake(() => { + return { + fetchPackageManifest: t.context.fetchPackageManifestStub, + fetchPackageVersions: t.context.fetchPackageVersionsStub, + installPackage: t.context.installPackageStub + }; + }); + + mock("../../../lib/ui5Framework/npm/Installer", t.context.InstallerStub); -const Openui5Resolver = require("../../../lib/ui5Framework/Openui5Resolver"); + Openui5Resolver = mock.reRequire("../../../lib/ui5Framework/Openui5Resolver"); +}); + +test.afterEach.always(() => { + sinon.restore(); + mock.stopAll(); +}); -test("Openui5Resolver: _getNpmPackageName", (t) => { +test.serial("Openui5Resolver: _getNpmPackageName", (t) => { t.is(Openui5Resolver._getNpmPackageName("foo"), "@openui5/foo"); }); -test("Openui5Resolver: _getLibaryName", (t) => { +test.serial("Openui5Resolver: _getLibaryName", (t) => { t.is(Openui5Resolver._getLibaryName("@openui5/foo"), "foo"); t.is(Openui5Resolver._getLibaryName("@something/else"), "@something/else"); }); -test("Openui5Resolver: _getLibraryMetadata", async (t) => { +test.serial("Openui5Resolver: getLibraryMetadata", async (t) => { const resolver = new Openui5Resolver({ cwd: "/test-project/", version: "1.75.0" }); - const fetchPackageManifest = sinon.stub(resolver._installer, "fetchPackageManifest"); - fetchPackageManifest + t.context.fetchPackageManifestStub .callsFake(async ({pkgName}) => { throw new Error(`Unknown install call: ${pkgName}`); }) @@ -34,8 +59,8 @@ test("Openui5Resolver: _getLibraryMetadata", async (t) => { }); async function assert(libraryName, expectedMetadata) { - const pLibraryMetadata = resolver._getLibraryMetadata(libraryName); - const pLibraryMetadata2 = resolver._getLibraryMetadata(libraryName); + const pLibraryMetadata = resolver.getLibraryMetadata(libraryName); + const pLibraryMetadata2 = resolver.getLibraryMetadata(libraryName); const libraryMetadata = await pLibraryMetadata; t.deepEqual(libraryMetadata, expectedMetadata, @@ -44,7 +69,7 @@ test("Openui5Resolver: _getLibraryMetadata", async (t) => { t.deepEqual(libraryMetadata2, expectedMetadata, libraryName + ": Second call should also resolve with expected metadata"); - const libraryMetadata3 = await resolver._getLibraryMetadata(libraryName); + const libraryMetadata3 = await resolver.getLibraryMetadata(libraryName); t.deepEqual(libraryMetadata3, expectedMetadata, libraryName + ": Third call should still return the same metadata"); @@ -68,19 +93,19 @@ test("Openui5Resolver: _getLibraryMetadata", async (t) => { ] }); - t.is(fetchPackageManifest.callCount, 2, "fetchPackageManifest should be called twice"); + t.is(t.context.fetchPackageManifestStub.callCount, 2, "fetchPackageManifest should be called twice"); }); -test("Openui5Resolver: handleLibrary", async (t) => { +test.serial("Openui5Resolver: handleLibrary", async (t) => { const resolver = new Openui5Resolver({ cwd: "/test-project/", version: "1.75.0" }); - const getLibraryMetadataStub = sinon.stub(resolver, "_getLibraryMetadata"); + const getLibraryMetadataStub = sinon.stub(resolver, "getLibraryMetadata"); getLibraryMetadataStub .callsFake(async (libraryName) => { - throw new Error("_getLibraryMetadata stub called with unknown libraryName: " + libraryName); + throw new Error("getLibraryMetadata stub called with unknown libraryName: " + libraryName); }) .withArgs("sap.ui.lib1").resolves({ "id": "@openui5/sap.ui.lib1", @@ -89,8 +114,7 @@ test("Openui5Resolver: handleLibrary", async (t) => { "optionalDependencies": [] }); - const _installPackage = sinon.stub(resolver._installer, "installPackage"); - _installPackage + t.context.installPackageStub .callsFake(async ({pkgName, version}) => { throw new Error(`Unknown install call: ${pkgName}@${version}`); }) @@ -111,3 +135,49 @@ test("Openui5Resolver: handleLibrary", async (t) => { t.deepEqual(await promises.install, {pkgPath: "/foo/sap.ui.lib1"}, "Install should resolve with expected object"); }); + +test.serial("Openui5Resolver: Static fetchAllVersions", async (t) => { + const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; + const options = { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }; + + t.context.fetchPackageVersionsStub.returns(expectedVersions); + + const versions = await Openui5Resolver.fetchAllVersions(options); + + t.deepEqual(versions, expectedVersions, "Fetched versions should be correct"); + + t.is(t.context.fetchPackageVersionsStub.callCount, 1, "fetchPackageVersions should be called once"); + t.deepEqual(t.context.fetchPackageVersionsStub.getCall(0).args, [{pkgName: "@openui5/sap.ui.core"}], + "fetchPackageVersions should be called with expected arguments"); + + t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); + t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); + t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ + cwd: path.resolve("/cwd"), + ui5HomeDir: path.resolve("/ui5HomeDir") + }], "Installer should be called with expected arguments"); +}); + +test.serial("Openui5Resolver: Static fetchAllVersions without options", async (t) => { + const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; + + t.context.fetchPackageVersionsStub.returns(expectedVersions); + + const versions = await Openui5Resolver.fetchAllVersions(); + + t.deepEqual(versions, expectedVersions, "Fetched versions should be correct"); + + t.is(t.context.fetchPackageVersionsStub.callCount, 1, "fetchPackageVersions should be called once"); + t.deepEqual(t.context.fetchPackageVersionsStub.getCall(0).args, [{pkgName: "@openui5/sap.ui.core"}], + "fetchPackageVersions should be called with expected arguments"); + + t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); + t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); + t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ + cwd: process.cwd(), + ui5HomeDir: path.join(os.homedir(), ".ui5") + }], "Installer should be called with expected arguments"); +}); diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.js index bd8b7d7e314..cbb171bcaf1 100644 --- a/packages/project/test/lib/ui5framework/Sapui5Resolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.js @@ -1,8 +1,35 @@ const test = require("ava"); const sinon = require("sinon"); +const mock = require("mock-require"); const path = require("path"); +const os = require("os"); -const Sapui5Resolver = require("../../../lib/ui5Framework/Sapui5Resolver"); +let Sapui5Resolver; + +test.beforeEach((t) => { + t.context.InstallerStub = sinon.stub(); + t.context.fetchPackageVersionsStub = sinon.stub(); + t.context.installPackageStub = sinon.stub(); + t.context.getTargetDirForPackageStub = sinon.stub(); + t.context.readJsonStub = sinon.stub(); + t.context.InstallerStub.callsFake(() => { + return { + fetchPackageVersions: t.context.fetchPackageVersionsStub, + installPackage: t.context.installPackageStub, + getTargetDirForPackage: t.context.getTargetDirForPackageStub, + readJson: t.context.readJsonStub + }; + }); + + mock("../../../lib/ui5Framework/npm/Installer", t.context.InstallerStub); + + Sapui5Resolver = mock.reRequire("../../../lib/ui5Framework/Sapui5Resolver"); +}); + +test.afterEach.always(() => { + sinon.restore(); + mock.stopAll(); +}); test.serial("Sapui5Resolver: loadDistMetadata loads metadata once from @sapui5/distribution-metadata package", async (t) => { const resolver = new Sapui5Resolver({ @@ -10,16 +37,13 @@ test.serial("Sapui5Resolver: loadDistMetadata loads metadata once from @sapui5/d version: "1.75.0" }); - const getTargetDirForPackage = sinon.stub(resolver._installer, "_getTargetDirForPackage"); - getTargetDirForPackage.callsFake(({pkgName, version}) => { - throw new Error(`_getTargetDirForPackage stub called with unknown arguments pkgName: ${pkgName}, version: ${version}}`); - }); - getTargetDirForPackage.withArgs({ + t.context.getTargetDirForPackageStub.callsFake(({pkgName, version}) => { + throw new Error(`getTargetDirForPackage stub called with unknown arguments pkgName: ${pkgName}, version: ${version}}`); + }).withArgs({ pkgName: "@sapui5/distribution-metadata", version: "1.75.0" }).returns(path.join("/path", "to", "distribution-metadata", "1.75.0")); - const installPackage = sinon.stub(resolver._installer, "installPackage"); - installPackage.withArgs({ + t.context.installPackageStub.withArgs({ pkgName: "@sapui5/distribution-metadata", version: "1.75.0" }).resolves({pkgPath: path.join("/path", "to", "distribution-metadata", "1.75.0")}); @@ -34,25 +58,28 @@ test.serial("Sapui5Resolver: loadDistMetadata loads metadata once from @sapui5/d } } }; - sinon.stub(resolver._installer, "readJson") - .callThrough() + t.context.readJsonStub .withArgs(path.join("/path", "to", "distribution-metadata", "1.75.0", "metadata.json")) .resolves(expectedMetadata); let distMetadata = await resolver.loadDistMetadata(); - t.is(installPackage.callCount, 1, "Distribution metadata package should be installed once"); + t.is(t.context.installPackageStub.callCount, 1, "Distribution metadata package should be installed once"); t.deepEqual(distMetadata, expectedMetadata, "loadDistMetadata should resolve with expected metadata"); // Calling loadDistMetadata again should not load package again distMetadata = await resolver.loadDistMetadata(); - t.is(installPackage.callCount, 1, "Distribution metadata package should still be installed once"); + t.is(t.context.installPackageStub.callCount, 1, "Distribution metadata package should still be installed once"); t.deepEqual(distMetadata, expectedMetadata, "Metadata should still be the expected metadata after calling loadDistMetadata again"); + + const libraryMetadata = await resolver.getLibraryMetadata("sap.ui.foo"); + t.deepEqual(libraryMetadata, expectedMetadata.libraries["sap.ui.foo"], + "getLibraryMetadata returns metadata for one library"); }); -test("Sapui5Resolver: handleLibrary", async (t) => { +test.serial("Sapui5Resolver: handleLibrary", async (t) => { const resolver = new Sapui5Resolver({ cwd: "/test-project/", version: "1.75.0" @@ -70,8 +97,7 @@ test("Sapui5Resolver: handleLibrary", async (t) => { } }); - const installPackage = sinon.stub(resolver._installer, "installPackage"); - installPackage + t.context.installPackageStub .callsFake(async ({pkgName, version}) => { throw new Error(`Unknown install call: ${pkgName}@${version}`); }) @@ -94,3 +120,50 @@ test("Sapui5Resolver: handleLibrary", async (t) => { t.deepEqual(await promises.install, {pkgPath: "/foo/sap.ui.lib1"}, "Install should resolve with expected object"); t.is(loadDistMetadataStub.callCount, 1, "loadDistMetadata should be called once"); }); + +test.serial("Sapui5Resolver: Static fetchAllVersions", async (t) => { + const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; + const options = { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }; + + t.context.fetchPackageVersionsStub.returns(expectedVersions); + + const versions = await Sapui5Resolver.fetchAllVersions(options); + + t.deepEqual(versions, expectedVersions, "Fetched versions should be correct"); + + t.is(t.context.fetchPackageVersionsStub.callCount, 1, "fetchPackageVersions should be called once"); + t.deepEqual(t.context.fetchPackageVersionsStub.getCall(0).args, [{pkgName: "@sapui5/distribution-metadata"}], + "fetchPackageVersions should be called with expected arguments"); + + t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); + t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); + t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ + cwd: path.resolve("/cwd"), + ui5HomeDir: path.resolve("/ui5HomeDir") + }], "Installer should be called with expected arguments"); +}); + +test.serial("Sapui5Resolver: Static fetchAllVersions without options", async (t) => { + const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; + + t.context.fetchPackageVersionsStub.returns(expectedVersions); + + const versions = await Sapui5Resolver.fetchAllVersions(); + + t.deepEqual(versions, expectedVersions, "Fetched versions should be correct"); + + t.is(t.context.fetchPackageVersionsStub.callCount, 1, "fetchPackageVersions should be called once"); + t.deepEqual(t.context.fetchPackageVersionsStub.getCall(0).args, [{pkgName: "@sapui5/distribution-metadata"}], + "fetchPackageVersions should be called with expected arguments"); + + t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); + t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); + t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ + cwd: process.cwd(), + ui5HomeDir: path.join(os.homedir(), ".ui5") + }], "Installer should be called with expected arguments"); +}); + diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index 66caa47d6cc..76defe5a6d6 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -47,6 +47,30 @@ test.serial("Installer: constructor requires 'ui5HomeDir'", (t) => { }, `Installer: Missing parameter "ui5HomeDir"`); }); +test.serial("Installer: fetchPackageVersions", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + const requestPackagePackumentStub = sinon.stub(installer._registry, "requestPackagePackument") + .resolves({ + versions: { + "1.0.0": {}, + "2.0.0": {}, + "3.0.0": {} + } + }); + + const packageVersions = await installer.fetchPackageVersions({pkgName: "@openui5/sap.ui.lib1"}); + + t.deepEqual(packageVersions, ["1.0.0", "2.0.0", "3.0.0"], "Should resolve with expected versions"); + + t.is(requestPackagePackumentStub.callCount, 1, "requestPackagePackument should be called once"); + t.deepEqual(requestPackagePackumentStub.getCall(0).args, ["@openui5/sap.ui.lib1"], + "requestPackagePackument should be called with pkgName"); +}); + test.serial("Installer: _getLockPath", async (t) => { const installer = new Installer({ cwd: "/cwd/", From c4a808e2bbb4c30fc11e74a5142709e09c248996 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 31 Mar 2020 18:11:27 +0200 Subject: [PATCH 0332/1272] [ui5-project][INTERNAL] Schema: Add declareRawModules to bundleDefinition schema --- .../schema/specVersion/2.0/kind/project.json | 4 +++ .../2.0/kind/project/application.js | 30 ++++++++++++++++--- .../specVersion/2.0/kind/project/library.js | 30 ++++++++++++++++--- 3 files changed, 56 insertions(+), 8 deletions(-) diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index 69f85507537..5b30c89c8b3 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -141,6 +141,10 @@ "sort": { "type": "boolean", "default": true + }, + "declareRawModules": { + "type": "boolean", + "default": false } } } diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index d20efdeea71..15d3877951d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -85,7 +85,8 @@ test("Valid configuration", async (t) => { "resolve": false, "resolveConditional": false, "renderer": false, - "sort": false + "sort": false, + "declareRawModules": true } ] }, @@ -109,7 +110,8 @@ test("Valid configuration", async (t) => { "some/app/Component.js" ], "resolve": true, - "sort": true + "sort": true, + "declareRawModules": false }, { "mode": "require", @@ -329,7 +331,8 @@ test("Invalid builder configuration", async (t) => { "ui5loader-autoconfig.js" ], "resolve": true, - "sort": true + "sort": true, + "declareModules": true } ] }, @@ -348,7 +351,8 @@ test("Invalid builder configuration", async (t) => { "some/app/Component.js" ], "resolve": true, - "sort": true + "sort": true, + "declareRawModules": [] }, { "mode": "provide", @@ -380,6 +384,15 @@ test("Invalid builder configuration", async (t) => { }, schemaPath: "#/additionalProperties" }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "declareModules", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/additionalProperties", + }, { dataPath: "/builder/bundles/1/bundleDefinition", keyword: "required", @@ -407,6 +420,15 @@ test("Invalid builder configuration", async (t) => { }, schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/required", }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/declareRawModules/type", + }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", keyword: "enum", diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index f2bd254a1d9..d6444c38121 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -85,7 +85,8 @@ test("Valid configuration", async (t) => { "resolve": false, "resolveConditional": false, "renderer": false, - "sort": false + "sort": false, + "declareRawModules": true } ] }, @@ -109,7 +110,8 @@ test("Valid configuration", async (t) => { "some/app/Component.js" ], "resolve": true, - "sort": true + "sort": true, + "declareRawModules": false }, { "mode": "require", @@ -213,7 +215,8 @@ test("Invalid configuration", async (t) => { "ui5loader-autoconfig.js" ], "resolve": true, - "sort": true + "sort": true, + "declareModules": true } ] }, @@ -232,7 +235,8 @@ test("Invalid configuration", async (t) => { "some/app/Component.js" ], "resolve": true, - "sort": true + "sort": true, + "declareRawModules": [] }, { "mode": "provide", @@ -335,6 +339,15 @@ test("Invalid configuration", async (t) => { }, schemaPath: "#/properties/jsdoc/properties/excludes/type", }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "declareModules", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/additionalProperties", + }, { dataPath: "/builder/bundles/1/bundleDefinition", keyword: "required", @@ -362,6 +375,15 @@ test("Invalid configuration", async (t) => { }, schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/required", }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/declareRawModules/type", + }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", keyword: "enum", From f8ddc55511f6525ba292e0b5a45e8ae0f09daa47 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 31 Mar 2020 18:11:51 +0200 Subject: [PATCH 0333/1272] [ui5-project][INTERNAL] Schema: Validate optional/development flag in framework libraries --- .../schema/specVersion/2.0/kind/project.json | 41 +++++++++ .../2.0/kind/project/application.js | 85 +++++++++++++++++-- .../specVersion/2.0/kind/project/library.js | 84 +++++++++++++++++- .../2.0/kind/project/theme-library.js | 84 +++++++++++++++++- 4 files changed, 281 insertions(+), 13 deletions(-) diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index 5b30c89c8b3..d287584fda4 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -290,6 +290,47 @@ "type": "boolean", "default": false } + }, + "if": { + "not": { + "anyOf": [ + { + "properties": { + "optional": {"enum": [false, null]} + } + }, + { + "properties": { + "development": {"enum": [false, null]} + } + }, + { + "not": { + "properties": { + "optional": {"type": "boolean"} + } + } + }, + { + "not": { + "properties": { + "development": {"type": "boolean"} + } + } + } + ], + "$comment": "Unfortunately it doesn't seem to work to check for both properties to be true, so instead checking for not having any of the properties to other values like false, not defined or any other type." + } + }, + "then": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "errorMessage": "Either \"development\" or \"optional\" can be true, but not both", + "$comment": "Defining a custom error message and only allowing the \"name\" property causes editors to show the custom error on both properties." } } } diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index 15d3877951d..986f6e9c436 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -26,10 +26,10 @@ test.before((t) => { test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-application"}); const thresholds = { - statements: 75, - branches: 65, + statements: 80, + branches: 70, functions: 100, - lines: 75 + lines: 80 }; t.context.ajvCoverage.verify(thresholds); }); @@ -543,7 +543,10 @@ test("framework configuration: SAPUI5", async (t) => { {"name": "sap.ui.core"}, {"name": "sap.m"}, {"name": "sap.f", "optional": true}, - {"name": "sap.ui.support", "development": true} + {"name": "sap.ui.support", "development": true}, + {"name": "sap.ui.comp", "development": true, "optional": false}, + {"name": "sap.fe", "development": false, "optional": true}, + {"name": "sap.ui.export", "development": false, "optional": false} ] } }); @@ -638,7 +641,6 @@ test("framework configuration: Invalid", async (t) => { params: { type: "boolean" }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", }, { @@ -673,3 +675,76 @@ test("framework configuration: Missing 'name'", async (t) => { } ]); }); + +test("framework configuration: library with optional and development", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application" + }, + "framework": { + "name": "OpenUI5", + "libraries": [ + { + name: "sap.ui.lib1", + development: true, + optional: true + }, + { + // This should only complain about wrong types, not that both are true + name: "sap.ui.lib2", + development: "true", + optional: "true" + } + ] + } + }, [ + { + dataPath: "/framework/libraries/0", + keyword: "errorMessage", + message: "Either \"development\" or \"optional\" can be true, but not both", + params: { + errors: [ + { + dataPath: "/framework/libraries/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "development", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + }, + { + dataPath: "/framework/libraries/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "optional", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + }, + ], + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/errorMessage", + }, + { + dataPath: "/framework/libraries/1/optional", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", + }, + { + dataPath: "/framework/libraries/1/development", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type", + }, + ]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index d6444c38121..821fb099dac 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -26,10 +26,10 @@ test.before((t) => { test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-library"}); const thresholds = { - statements: 75, - branches: 65, + statements: 80, + branches: 70, functions: 100, - lines: 75 + lines: 80 }; t.context.ajvCoverage.verify(thresholds); }); @@ -615,7 +615,10 @@ test("framework configuration: SAPUI5", async (t) => { {"name": "sap.ui.core"}, {"name": "sap.m"}, {"name": "sap.f", "optional": true}, - {"name": "sap.ui.support", "development": true} + {"name": "sap.ui.support", "development": true}, + {"name": "sap.ui.comp", "development": true, "optional": false}, + {"name": "sap.fe", "development": false, "optional": true}, + {"name": "sap.ui.export", "development": false, "optional": false} ] } }); @@ -745,3 +748,76 @@ test("framework configuration: Missing 'name'", async (t) => { } ]); }); + +test("framework configuration: library with optional and development", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library" + }, + "framework": { + "name": "OpenUI5", + "libraries": [ + { + name: "sap.ui.lib1", + development: true, + optional: true + }, + { + // This should only complain about wrong types, not that both are true + name: "sap.ui.lib2", + development: "true", + optional: "true" + } + ] + } + }, [ + { + dataPath: "/framework/libraries/0", + keyword: "errorMessage", + message: "Either \"development\" or \"optional\" can be true, but not both", + params: { + errors: [ + { + dataPath: "/framework/libraries/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "development", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + }, + { + dataPath: "/framework/libraries/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "optional", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + }, + ], + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/errorMessage", + }, + { + dataPath: "/framework/libraries/1/optional", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", + }, + { + dataPath: "/framework/libraries/1/development", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type", + }, + ]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js index 2ca97d50b5f..0c172f0d992 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -26,10 +26,10 @@ test.before((t) => { test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-theme-library"}); const thresholds = { - statements: 70, - branches: 60, + statements: 75, + branches: 65, functions: 100, - lines: 70 + lines: 75 }; t.context.ajvCoverage.verify(thresholds); }); @@ -188,7 +188,10 @@ test("framework configuration: SAPUI5", async (t) => { {"name": "sap.ui.core"}, {"name": "sap.m"}, {"name": "sap.f", "optional": true}, - {"name": "sap.ui.support", "development": true} + {"name": "sap.ui.support", "development": true}, + {"name": "sap.ui.comp", "development": true, "optional": false}, + {"name": "sap.fe", "development": false, "optional": true}, + {"name": "sap.ui.export", "development": false, "optional": false} ] } }); @@ -297,3 +300,76 @@ test("framework configuration: Invalid", async (t) => { } ]); }); + +test("framework configuration: library with optional and development", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library" + }, + "framework": { + "name": "OpenUI5", + "libraries": [ + { + name: "sap.ui.lib1", + development: true, + optional: true + }, + { + // This should only complain about wrong types, not that both are true + name: "sap.ui.lib2", + development: "true", + optional: "true" + } + ] + } + }, [ + { + dataPath: "/framework/libraries/0", + keyword: "errorMessage", + message: "Either \"development\" or \"optional\" can be true, but not both", + params: { + errors: [ + { + dataPath: "/framework/libraries/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "development", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + }, + { + dataPath: "/framework/libraries/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "optional", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + }, + ], + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/errorMessage", + }, + { + dataPath: "/framework/libraries/1/optional", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", + }, + { + dataPath: "/framework/libraries/1/development", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type", + }, + ]); +}); From d111e553f27240d9543312a17854a29f3981fb23 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 31 Mar 2020 19:29:15 +0000 Subject: [PATCH 0334/1272] [ui5-project]Release 2.0.0 --- packages/project/CHANGELOG.md | 20 +++++++++++++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 6388d131ddf..18d71fcf1ca 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,24 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v1.2.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.0.0...HEAD). + + +## [v2.0.0] - 2020-03-31 +### Breaking Changes +- Require Node.js >= 10 [`f21e704`](https://github.com/SAP/ui5-project/commit/f21e704f85297e3fa774c59bf5d4e8282b947b41) + +### Features +- Add Configuration Schema ([#274](https://github.com/SAP/ui5-project/issues/274)) [`eb961c3`](https://github.com/SAP/ui5-project/commit/eb961c3377d42d3c93f7b7db5033f4e6716ddc71) +- Support for spec version 2.0 ([#277](https://github.com/SAP/ui5-project/issues/277)) [`770a56f`](https://github.com/SAP/ui5-project/commit/770a56feed331a3157c9f9fad486a4674dc12c87) +- Add ui5Framework translator and resolvers ([#265](https://github.com/SAP/ui5-project/issues/265)) [`5183e5c`](https://github.com/SAP/ui5-project/commit/5183e5cf99ac8cae6e4ccc8030d94214bce0563c) +- **projectPreprocessor:** Log warning when using a deprecated or restricted dependency ([#268](https://github.com/SAP/ui5-project/issues/268)) [`b776a4f`](https://github.com/SAP/ui5-project/commit/b776a4fcc4604f3ecb0d3fc1e6418ed190c11756) + +### BREAKING CHANGE + +Support for older Node.js releases has been dropped. +Only Node.js v10 or higher is supported. + ## [v1.2.0] - 2020-01-13 @@ -113,6 +130,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.0.0]: https://github.com/SAP/ui5-project/compare/v1.2.0...v2.0.0 [v1.2.0]: https://github.com/SAP/ui5-project/compare/v1.1.1...v1.2.0 [v1.1.1]: https://github.com/SAP/ui5-project/compare/v1.1.0...v1.1.1 [v1.1.0]: https://github.com/SAP/ui5-project/compare/v1.0.3...v1.1.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6f65e047698..6951d4eb46f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.2.0", + "version": "2.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index a95bcc6c4bc..de1fb993919 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "1.2.0", + "version": "2.0.0", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 5086baa5e3bab2fc7418f7e4976bd76b761a0a1a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 1 Apr 2020 02:05:23 +0200 Subject: [PATCH 0335/1272] [ui5-project][FIX] ui5Framework.mergeTrees: Do not process the same project multiple times Since projects are deduped by the projectPreprocessor, repeated processing of a project that appears multiple times in the project tree is done on the same object. This leads to issues like the isFrameworkProject detecting previously added framework libraries as ... "already added UI5 framework libraries", thus producing incorrect log messages --- .../project/lib/translators/ui5Framework.js | 10 ++ .../translators/ui5Framework.integration.js | 139 ++++++++++-------- 2 files changed, 86 insertions(+), 63 deletions(-) diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index d5534f31eda..7b20ad330e4 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -212,8 +212,18 @@ module.exports = { log.verbose(`Merging framework tree into project tree "${projectTree.metadata.name}"`); const queue = [projectTree]; + const processedProjects = []; while (queue.length) { const project = queue.shift(); + if (processedProjects.includes(project.id)) { + // projectTree must be duplicate free. A second occurrence of the same project + // is always the same object. Therefore a single processing needs to be ensured. + // Otherwise the isFrameworkProject check would detect framework dependencies added + // at an earlier processing of the project and yield incorrect logging. + log.verbose(`Project ${project.metadata.name} (${project.id}) has already been processed`); + return; + } + processedProjects.push(project.id); project.dependencies = project.dependencies.filter((depProject) => { if (utils.isFrameworkProject(depProject)) { diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index 0fbda9cffb2..384692a50e4 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -34,6 +34,10 @@ test.beforeEach((t) => { sinon.stub(lockfile, "lock").yieldsAsync(); sinon.stub(lockfile, "unlock").yieldsAsync(); + const testLogger = logger.getLogger(); + sinon.stub(logger, "getLogger").returns(testLogger); + t.context.logInfoSpy = sinon.spy(testLogger, "info"); + mock("mkdirp", sinon.stub().resolves()); // Re-require to ensure that mocked modules are used @@ -149,22 +153,25 @@ function defineTest(testName, { logger.setLevel("verbose"); } + const testDependency = { + id: "test-dependency-id", + version: "4.5.6", + path: path.join(fakeBaseDir, "project-test-dependency"), + dependencies: [] + }; const translatorTree = { id: "test-application-id", version: "1.2.3", path: path.join(fakeBaseDir, "project-test-application"), dependencies: [ - { - id: "test-dependency-id", - version: "4.5.6", - path: path.join(fakeBaseDir, "project-test-dependency"), - dependencies: [] - }, + testDependency, { id: "test-dependency-no-framework-id", version: "7.8.9", path: path.join(fakeBaseDir, "project-test-dependency-no-framework"), - dependencies: [] + dependencies: [ + testDependency + ] }, { id: "test-dependency-framework-old-spec-version-id", @@ -377,96 +384,98 @@ function defineTest(testName, { .resolves(distributionMetadata); } - const expectedTree = project({ - _level: 0, - name: "test-application", - version: "1.2.3", - type: "application", + const testDependencyProject = project({ + _level: 1, + name: "test-dependency", + version: "4.5.6", + type: "library", framework: { + version: "1.99.0", name: frameworkName, - version: "1.75.0", libraries: [ { name: "sap.ui.lib1" }, { - name: "sap.ui.lib4", + name: "sap.ui.lib2" + }, + { + name: "sap.ui.lib5", optional: true }, { - name: "sap.ui.lib8", + name: "sap.ui.lib6", development: true + }, + { + name: "sap.ui.lib8", + optional: true } ] }, dependencies: [ - project({ + frameworkProject({ _level: 1, - name: "test-dependency", - version: "4.5.6", - type: "library", - framework: { - version: "1.99.0", - name: frameworkName, - libraries: [ - { - name: "sap.ui.lib1" - }, - { - name: "sap.ui.lib2" - }, - { - name: "sap.ui.lib5", - optional: true - }, - { - name: "sap.ui.lib6", - development: true - }, - { - name: "sap.ui.lib8", - optional: true - } - ] - }, + name: "sap.ui.lib1", + }), + frameworkProject({ + _level: 1, + name: "sap.ui.lib2", dependencies: [ frameworkProject({ - _level: 1, - name: "sap.ui.lib1", - }), - frameworkProject({ - _level: 1, - name: "sap.ui.lib2", + _level: 2, + name: "sap.ui.lib3", dependencies: [ frameworkProject({ - _level: 2, - name: "sap.ui.lib3", + name: "sap.ui.lib4", + _level: 1, dependencies: [ frameworkProject({ - name: "sap.ui.lib4", _level: 1, - dependencies: [ - frameworkProject({ - _level: 1, - name: "sap.ui.lib1" - }) - ] + name: "sap.ui.lib1" }) ] }) ] - }), - frameworkProject({ - _level: 1, - name: "sap.ui.lib8", }) ] }), + frameworkProject({ + _level: 1, + name: "sap.ui.lib8", + }) + ] + }); + const expectedTree = project({ + _level: 0, + name: "test-application", + version: "1.2.3", + type: "application", + framework: { + name: frameworkName, + version: "1.75.0", + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib4", + optional: true + }, + { + name: "sap.ui.lib8", + development: true + } + ] + }, + dependencies: [ + testDependencyProject, project({ _level: 1, name: "test-dependency-no-framework", version: "7.8.9", - type: "library" + type: "library", + dependencies: [testDependencyProject] }), project({ _level: 1, @@ -506,6 +515,10 @@ function defineTest(testName, { const tree = await normalizer.generateProjectTree(); t.deepEqual(tree, expectedTree, "Returned tree should be correct"); + const frameworkLibAlreadyAddedInfoLogged = (t.context.logInfoSpy.getCalls() + .map(($) => $.firstArg) + .findIndex(($) => $.includes("defines a dependency to the UI5 framework library")) !== -1); + t.false(frameworkLibAlreadyAddedInfoLogged, "No info regarding already added UI5 framework libraries logged"); }); } From ac895e1ae7ef1c136255c0dbbd6585aea344ad4a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 1 Apr 2020 02:09:39 +0200 Subject: [PATCH 0336/1272] [ui5-project][INTERNAL] npm t8r: Minor logging change The logged tree is only showing the top level projects. Dependencies are shown as "[Array]". I got confused by this more than once, yet seeing the top level makes sense especially when it comes to collections. Maybe this renaming helps. --- packages/project/lib/translators/npm.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index bada71fd1b5..78281e8eef1 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -429,7 +429,7 @@ class NpmTranslator { for (let i = 0; i < tree.length; i++) { const rootPackage = tree[i]; if (path.resolve(rootPackage.path) === path.resolve(dirPath)) { - log.verbose("Built tree:"); + log.verbose("Treetop:"); log.verbose(rootPackage); return rootPackage; } From 7385424695a838f97aaa4b2d75dbf019329566f4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 1 Apr 2020 08:06:05 +0000 Subject: [PATCH 0337/1272] [ui5-project]Release 2.0.1 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 18d71fcf1ca..dd0cb35daca 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.0.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.0.1...HEAD). + + +## [v2.0.1] - 2020-04-01 +### Bug Fixes +- **ui5Framework.mergeTrees:** Do not process the same project multiple times [`1377ec2`](https://github.com/SAP/ui5-project/commit/1377ec2ecea71a2470a9ea9b1e0698e466154838) + ## [v2.0.0] - 2020-03-31 @@ -130,6 +136,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.0.1]: https://github.com/SAP/ui5-project/compare/v2.0.0...v2.0.1 [v2.0.0]: https://github.com/SAP/ui5-project/compare/v1.2.0...v2.0.0 [v1.2.0]: https://github.com/SAP/ui5-project/compare/v1.1.1...v1.2.0 [v1.1.1]: https://github.com/SAP/ui5-project/compare/v1.1.0...v1.1.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6951d4eb46f..c70cb38ddd8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.0.0", + "version": "2.0.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index de1fb993919..284cfc9233e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.0.0", + "version": "2.0.1", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 33d15654a2a1e075d3ff6bd0c4c1780ddc7eeb6d Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 1 Apr 2020 11:07:31 +0200 Subject: [PATCH 0338/1272] [ui5-project][FIX] ui5Framework t8r: Resolve versionOverride string Resolve "latest" to latest version. --- .../project/lib/translators/ui5Framework.js | 20 +++++++++---------- .../test/lib/translators/ui5Framework.js | 8 ++++++-- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 7b20ad330e4..7399d3a863e 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -136,17 +136,24 @@ module.exports = { ); } + let Resolver; + if (frameworkName === "OpenUI5") { + Resolver = require("../ui5Framework/Openui5Resolver"); + } else if (frameworkName === "SAPUI5") { + Resolver = require("../ui5Framework/Sapui5Resolver"); + } + let version; if (!tree.framework.version) { throw new Error( `framework.version is not defined for project ${tree.id}` ); } else if (options.versionOverride) { + version = await Resolver.resolveVersion(options.versionOverride, {cwd: tree.path}); log.info( `Overriding configured ${frameworkName} version ` + - `${tree.framework.version} with supplied version ${options.versionOverride}` + `${tree.framework.version} with version ${version}` ); - version = options.versionOverride; } else { version = tree.framework.version; } @@ -159,14 +166,7 @@ module.exports = { log.info(`Using ${frameworkName} version: ${version}`); - let resolver; - if (frameworkName === "OpenUI5") { - const Openui5Resolver = require("../ui5Framework/Openui5Resolver"); - resolver = new Openui5Resolver({cwd: tree.path, version}); - } else if (frameworkName === "SAPUI5") { - const Sapui5Resolver = require("../ui5Framework/Sapui5Resolver"); - resolver = new Sapui5Resolver({cwd: tree.path, version}); - } + const resolver = new Resolver({cwd: tree.path, version}); let startTime; if (log.isLevelEnabled("verbose")) { diff --git a/packages/project/test/lib/translators/ui5Framework.js b/packages/project/test/lib/translators/ui5Framework.js index 7ac9a640075..711f60c6d0b 100644 --- a/packages/project/test/lib/translators/ui5Framework.js +++ b/packages/project/test/lib/translators/ui5Framework.js @@ -13,6 +13,8 @@ test.beforeEach((t) => { install: t.context.Sapui5ResolverInstallStub }; }); + t.context.Sapui5ResolverResolveVersionStub = sinon.stub(); + t.context.Sapui5ResolverStub.resolveVersion = t.context.Sapui5ResolverResolveVersionStub; mock("../../../lib/ui5Framework/Sapui5Resolver", t.context.Sapui5ResolverStub); t.context.Openui5ResolverStub = sinon.stub(); @@ -120,6 +122,8 @@ test.serial("generateDependencyTree (with versionOverride)", async (t) => { t.context.Sapui5ResolverInstallStub.resolves({libraryMetadata}); + t.context.Sapui5ResolverResolveVersionStub.resolves("1.99.9"); + const getProjectStub = sinon.stub(); getProjectStub.onFirstCall().returns({fake: "metadata-project-1"}); getProjectStub.onSecondCall().returns({fake: "metadata-project-2"}); @@ -131,10 +135,10 @@ test.serial("generateDependencyTree (with versionOverride)", async (t) => { }; }); - await ui5Framework.generateDependencyTree(tree, {versionOverride: "1.99.0"}); + await ui5Framework.generateDependencyTree(tree, {versionOverride: "1.99"}); t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); - t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{cwd: tree.path, version: "1.99.0"}], + t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{cwd: tree.path, version: "1.99.9"}], "Sapui5Resolver#constructor should be called with expected args"); }); From 9f8dd3f1c0cd8810b6ff480181eb0bc6bb2fd0ed Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 1 Apr 2020 09:32:08 +0000 Subject: [PATCH 0339/1272] [ui5-project]Release 2.0.2 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index dd0cb35daca..d1fcf4a9b30 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.0.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.0.2...HEAD). + + +## [v2.0.2] - 2020-04-01 +### Bug Fixes +- **ui5Framework t8r:** Resolve versionOverride string [`4fffabe`](https://github.com/SAP/ui5-project/commit/4fffabe2a417b1ea46a47546c6269ac0ffbc3931) + ## [v2.0.1] - 2020-04-01 @@ -136,6 +142,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.0.2]: https://github.com/SAP/ui5-project/compare/v2.0.1...v2.0.2 [v2.0.1]: https://github.com/SAP/ui5-project/compare/v2.0.0...v2.0.1 [v2.0.0]: https://github.com/SAP/ui5-project/compare/v1.2.0...v2.0.0 [v1.2.0]: https://github.com/SAP/ui5-project/compare/v1.1.1...v1.2.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c70cb38ddd8..ccc014ef3ec 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.0.1", + "version": "2.0.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 284cfc9233e..e3d0fc30f90 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.0.1", + "version": "2.0.2", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From fecb33c24225da8c013da22bbe5f42f34fb012bf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 2 Apr 2020 12:21:20 +0200 Subject: [PATCH 0340/1272] [ui5-project][FIX] package.json: Downgrade pacote from 11.1.4 to 9.5.12 There has been a lot of development in pacote since v9: https://github.com/npm/pacote/compare/v9...latest It seems that some things don't work as expected with the newer releases, maybe because of newer transitive dependencies. For once I got "invalid json response body" errors while fetching from an internal registry. Then there's also #298. This change resolves both issues (and possibly more we don't know of yet). Resolves #298 --- packages/project/package-lock.json | 776 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 380 insertions(+), 398 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ccc014ef3ec..18e65f40aa7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -585,44 +585,6 @@ "fastq": "^1.6.0" } }, - "@npmcli/ci-detect": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.2.0.tgz", - "integrity": "sha512-JtktVH7ASBVIWsQTFlFpeOzhBJskvoBCTfeeRhhZy7ybATcUvwiwotZ8j5rkqUUyB69lIy/AvboiiiGBjYBKBA==" - }, - "@npmcli/git": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-2.0.1.tgz", - "integrity": "sha512-hVatexiBtx71F01Ars38Hr5AFUGmJgHAfQtRlO5fJlnAawRGSXwEFgjB5i3XdUUmElZU/RXy7fefN02dZKxgPw==", - "requires": { - "@npmcli/promise-spawn": "^1.1.0", - "mkdirp": "^1.0.3", - "npm-pick-manifest": "^6.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^1.1.1", - "unique-filename": "^1.1.1", - "which": "^2.0.2" - } - }, - "@npmcli/installed-package-contents": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.5.tgz", - "integrity": "sha512-aKIwguaaqb6ViwSOFytniGvLPb9SMCUm39TgM3SfUo7n0TxUMbwoXfpwyvQ4blm10lzbAwTsvjr7QZ85LvTi4A==", - "requires": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1", - "read-package-json-fast": "^1.1.1", - "readdir-scoped-modules": "^1.1.0" - } - }, - "@npmcli/promise-spawn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.1.0.tgz", - "integrity": "sha512-FwbuYN9KXBkloLeIR3xRgI8dyOdfK/KzaJlChszNuwmUXD1lHXfLlSeo4n4KrKt2udIK9K9/TzlnyCA3ubM2fA==", - "requires": { - "infer-owner": "^1.0.4" - } - }, "@sindresorhus/is": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", @@ -689,11 +651,6 @@ "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", "dev": true }, - "@tootallnate/once": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.0.0.tgz", - "integrity": "sha512-KYyTT/T6ALPkIRd2Ge080X/BsXvy9O0hcWTtMWkPvwAwF99+vn6Dv4GzrFT/Nn1LePr+FFDbRXXlqmsy9lw2zA==" - }, "@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", @@ -867,6 +824,15 @@ "yesno": "^0.3.1" } }, + "JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } + }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -895,57 +861,26 @@ "dev": true }, "agent-base": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.0.tgz", - "integrity": "sha512-j1Q7cSCqN+AwrmDd+pzgqc0/NpC655x2bUf5ZjRIO77DcNBFmh+OgRNzF6OKdCC9RSCb19fGd99+bhXFdkRNqw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", "requires": { - "debug": "4" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } + "es6-promisify": "^5.0.0" } }, "agentkeepalive": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.1.0.tgz", - "integrity": "sha512-CW/n1wxF8RpEuuiq6Vbn9S8m0VSYDMnZESqaJ6F2cWN9fY8rei2qaxweIaRgq+ek8TqfoFIsUjaGNKGGEHElSg==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", + "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", "requires": { - "debug": "^4.1.0", - "depd": "^1.1.2", "humanize-ms": "^1.2.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } } }, "aggregate-error": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", + "dev": true, "requires": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -1128,11 +1063,6 @@ "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" - }, "asn1": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", @@ -1638,29 +1568,35 @@ "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" }, "cacache": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.0.tgz", - "integrity": "sha512-L0JpXHhplbJSiDGzyJJnJCTL7er7NzbBgxzVqLswEb4bO91Zbv17OUMuUeu/q0ZwKn3V+1HM4wb9tO4eVE/K8g==", + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", "requires": { - "chownr": "^1.1.2", - "fs-minipass": "^2.0.0", + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", "glob": "^7.1.4", - "infer-owner": "^1.0.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", "lru-cache": "^5.1.1", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^8.0.0", - "tar": "^6.0.1", - "unique-filename": "^1.1.1" + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" }, "dependencies": { + "mkdirp": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "requires": { + "minimist": "^1.2.5" + } + }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -1869,7 +1805,8 @@ "clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true }, "clean-yaml-object": { "version": "0.1.0", @@ -2103,6 +2040,17 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, "concordance": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/concordance/-/concordance-4.0.0.tgz", @@ -2442,6 +2390,11 @@ "array-find-index": "^1.0.1" } }, + "cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=" + }, "d": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", @@ -2476,11 +2429,6 @@ "ms": "2.0.0" } }, - "debuglog": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", - "integrity": "sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=" - }, "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", @@ -2721,15 +2669,6 @@ } } }, - "dezalgo": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz", - "integrity": "sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY=", - "requires": { - "asap": "^2.0.0", - "wrappy": "1" - } - }, "diff": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", @@ -2820,6 +2759,17 @@ "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", "dev": true }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, "ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", @@ -2901,7 +2851,6 @@ "version": "0.1.12", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", - "optional": true, "requires": { "iconv-lite": "~0.4.13" } @@ -2910,7 +2859,6 @@ "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, "requires": { "once": "^1.4.0" } @@ -3006,6 +2954,19 @@ "event-emitter": "~0.3.5" } }, + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, + "es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "requires": { + "es6-promise": "^4.0.3" + } + }, "es6-set": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", @@ -3678,6 +3639,15 @@ "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", "dev": true }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, "follow-redirects": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.11.0.tgz", @@ -3770,6 +3740,15 @@ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, "fromentries": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.2.0.tgz", @@ -3777,11 +3756,11 @@ "dev": true }, "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", + "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", "requires": { - "minipass": "^3.0.0" + "minipass": "^2.6.0" } }, "fs-write-stream-atomic": { @@ -3833,6 +3812,11 @@ "wide-align": "^1.1.0" } }, + "genfun": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", + "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==" + }, "gensync": { "version": "1.0.0-beta.1", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", @@ -4038,12 +4022,9 @@ } }, "hosted-git-info": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.4.tgz", - "integrity": "sha512-4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ==", - "requires": { - "lru-cache": "^5.1.1" - } + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" }, "hpack.js": { "version": "2.1.6", @@ -4090,7 +4071,8 @@ "http-cache-semantics": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true }, "http-deceiver": { "version": "1.2.7", @@ -4127,27 +4109,21 @@ } }, "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", + "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" + "agent-base": "4", + "debug": "3.1.0" }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "requires": { - "ms": "^2.1.1" + "ms": "2.0.0" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" } } }, @@ -4162,18 +4138,18 @@ } }, "https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", "requires": { - "agent-base": "6", - "debug": "4" + "agent-base": "^4.3.0", + "debug": "^3.1.0" }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "requires": { "ms": "^2.1.1" } @@ -4273,7 +4249,8 @@ "indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true }, "infer-owner": { "version": "1.0.4", @@ -4596,11 +4573,6 @@ } } }, - "is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=" - }, "is-npm": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-3.0.0.tgz", @@ -5002,11 +4974,6 @@ "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, - "json-parse-even-better-errors": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.2.0.tgz", - "integrity": "sha512-2tLgY7LRNZ9Hd6gmCuBG5/OjRHQpSgJQqJoYyLLOhUgn8LdOYrjaZLcxkWnDads+AD/haWWioPNziXQcgvQJ/g==" - }, "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", @@ -5383,25 +5350,28 @@ } }, "make-fetch-happen": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.4.tgz", - "integrity": "sha512-hIFoqGq1db0QMiy/Atr/pI1Rs4rDV+ZdGSey2SQyF3KK3u1z4aj9mS5UdNnZkdQpA+H3pGn0J3KlEwsi2x4EqA==", - "requires": { - "agentkeepalive": "^4.1.0", - "cacache": "^15.0.0", - "http-cache-semantics": "^4.0.4", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz", + "integrity": "sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag==", + "requires": { + "agentkeepalive": "^3.4.1", + "cacache": "^12.0.0", + "http-cache-semantics": "^3.8.1", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.3", "lru-cache": "^5.1.1", - "minipass": "^3.0.0", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^1.1.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", + "mississippi": "^3.0.0", + "node-fetch-npm": "^2.0.2", "promise-retry": "^1.1.1", - "socks-proxy-agent": "^5.0.0", - "ssri": "^8.0.0" + "socks-proxy-agent": "^4.0.0", + "ssri": "^6.0.0" + }, + "dependencies": { + "http-cache-semantics": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", + "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" + } } }, "map-obj": { @@ -5667,87 +5637,37 @@ } }, "minipass": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.1.tgz", - "integrity": "sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w==", - "requires": { - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-fetch": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.2.1.tgz", - "integrity": "sha512-ssHt0dkljEDaKmTgQ04DQgx2ag6G2gMPxA5hpcsoeTbfDgRf2fC2gNSRc6kISjD7ckCpHwwQvXxuTBK8402fXg==", - "requires": { - "encoding": "^0.1.12", - "minipass": "^3.1.0", - "minipass-pipeline": "^1.2.2", - "minipass-sized": "^1.0.3", - "minizlib": "^2.0.0" - } - }, - "minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", + "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", "requires": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "minipass-pipeline": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.2.tgz", - "integrity": "sha512-3JS5A2DKhD2g0Gg8x3yamO0pj7YeKGwVlDS90pF++kxptwx/F+B//roxf9SqYil5tQo65bijy+dAuAFZmYOouA==", - "requires": { - "minipass": "^3.0.0" + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" } }, - "minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "minizlib": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", + "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", "requires": { - "minipass": "^3.0.0" + "minipass": "^2.9.0" } }, - "minizlib": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz", - "integrity": "sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==", + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" } }, "mkdirp": { @@ -5858,6 +5778,16 @@ } } }, + "node-fetch-npm": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz", + "integrity": "sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg==", + "requires": { + "encoding": "^0.1.11", + "json-parse-better-errors": "^1.0.0", + "safe-buffer": "^5.1.1" + } + }, "node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -5922,84 +5852,75 @@ "npm-normalize-package-bin": "^1.0.1" } }, - "npm-install-checks": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz", - "integrity": "sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w==", - "requires": { - "semver": "^7.1.1" - }, - "dependencies": { - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" - } - } - }, "npm-normalize-package-bin": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==" }, "npm-package-arg": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.0.1.tgz", - "integrity": "sha512-/h5Fm6a/exByzFSTm7jAyHbgOqErl9qSNJDQF32Si/ZzgwT2TERVxRxn3Jurw1wflgyVVAxnFR4fRHPM7y1ClQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", + "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", "requires": { - "hosted-git-info": "^3.0.2", - "semver": "^7.0.0", + "hosted-git-info": "^2.7.1", + "osenv": "^0.1.5", + "semver": "^5.6.0", "validate-npm-package-name": "^3.0.0" }, "dependencies": { "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" } } }, "npm-packlist": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.1.1.tgz", - "integrity": "sha512-95TSDvGwujIhqfSpIiRRLodEF+y6mJMopuZdahoGzqtRDFZXGav46S0p6ngeWaiAkb5R72w6eVARhzej0HvZeQ==", + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", + "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", "requires": { - "glob": "^7.1.6", - "ignore-walk": "^3.0.3", - "npm-bundled": "^1.1.1", + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1", "npm-normalize-package-bin": "^1.0.1" } }, "npm-pick-manifest": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.0.0.tgz", - "integrity": "sha512-PdJpXMvjqt4nftNEDpCgjBUF8yI3Q3MyuAmVB9nemnnCg32F4BPL/JFBfdj8DubgHCYUFQhtLWmBPvdsFtjWMg==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz", + "integrity": "sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw==", "requires": { - "npm-install-checks": "^4.0.0", - "npm-package-arg": "^8.0.0", - "semver": "^7.0.0" + "figgy-pudding": "^3.5.1", + "npm-package-arg": "^6.0.0", + "semver": "^5.4.1" }, "dependencies": { "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" } } }, "npm-registry-fetch": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-8.0.0.tgz", - "integrity": "sha512-975WwLvZjX97y9UWWQ8nAyr7bw02s9xKPHqvEm5T900LQsB1HXb8Gb9ebYtCBLSX+K8gSOrO5KS/9yV/naLZmQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.3.tgz", + "integrity": "sha512-WGvUx0lkKFhu9MbiGFuT9nG2NpfQ+4dCJwRwwtK2HK5izJEvwDxMeUyqbuMS7N/OkpVCqDorV6rO5E4V9F8lJw==", "requires": { - "@npmcli/ci-detect": "^1.0.0", + "JSONStream": "^1.3.4", + "bluebird": "^3.5.1", + "figgy-pudding": "^3.4.1", "lru-cache": "^5.1.1", - "make-fetch-happen": "^8.0.2", - "minipass": "^3.0.0", - "minipass-fetch": "^1.1.2", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.0.0", - "npm-package-arg": "^8.0.0" + "make-fetch-happen": "^5.0.0", + "npm-package-arg": "^6.1.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", + "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" + } } }, "npm-run-path": { @@ -6581,20 +6502,17 @@ "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" }, "osenv": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, "requires": { "os-homedir": "^1.0.0", "os-tmpdir": "^1.0.0" @@ -6632,6 +6550,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, "requires": { "aggregate-error": "^3.0.0" } @@ -6674,35 +6593,58 @@ } }, "pacote": { - "version": "11.1.4", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-11.1.4.tgz", - "integrity": "sha512-eUGJvSSpWFZKn3z8gig/HgnBmUl6gIWByIIaHzSyEr3tOWX0w8tFEADXtpu8HGv5E0ShCeTP6enRq8iHKCHSvw==", - "requires": { - "@npmcli/git": "^2.0.1", - "@npmcli/installed-package-contents": "^1.0.5", - "@npmcli/promise-spawn": "^1.1.0", - "cacache": "^15.0.0", - "chownr": "^1.1.4", - "fs-minipass": "^2.1.0", + "version": "9.5.12", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.12.tgz", + "integrity": "sha512-BUIj/4kKbwWg4RtnBncXPJd15piFSVNpTzY0rysSr3VnMowTYgkGKcaHrbReepAkjTr8lH2CVWRi58Spg2CicQ==", + "requires": { + "bluebird": "^3.5.3", + "cacache": "^12.0.2", + "chownr": "^1.1.2", + "figgy-pudding": "^3.5.1", + "get-stream": "^4.1.0", + "glob": "^7.1.3", "infer-owner": "^1.0.4", "lru-cache": "^5.1.1", - "minipass": "^3.0.1", - "minipass-fetch": "^1.2.1", - "mkdirp": "^1.0.3", - "npm-package-arg": "^8.0.1", - "npm-packlist": "^2.1.0", - "npm-pick-manifest": "^6.0.0", - "npm-registry-fetch": "^8.0.0", + "make-fetch-happen": "^5.0.0", + "minimatch": "^3.0.4", + "minipass": "^2.3.5", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "normalize-package-data": "^2.4.0", + "npm-normalize-package-bin": "^1.0.0", + "npm-package-arg": "^6.1.0", + "npm-packlist": "^1.1.12", + "npm-pick-manifest": "^3.0.0", + "npm-registry-fetch": "^4.0.0", + "osenv": "^0.1.5", "promise-inflight": "^1.0.1", "promise-retry": "^1.1.1", - "read-package-json-fast": "^1.1.3", - "rimraf": "^2.7.1", - "semver": "^7.1.3", - "ssri": "^8.0.0", - "tar": "^6.0.1", - "which": "^2.0.2" + "protoduck": "^5.0.1", + "rimraf": "^2.6.2", + "safe-buffer": "^5.1.2", + "semver": "^5.6.0", + "ssri": "^6.0.1", + "tar": "^4.4.10", + "unique-filename": "^1.1.1", + "which": "^1.3.1" }, "dependencies": { + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + }, + "mkdirp": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "requires": { + "minimist": "^1.2.5" + } + }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -6712,12 +6654,30 @@ } }, "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } } } }, + "parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "requires": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -7002,6 +6962,14 @@ "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", "dev": true }, + "protoduck": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", + "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", + "requires": { + "genfun": "^5.0.0" + } + }, "proxy-addr": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", @@ -7026,12 +6994,32 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, "requires": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -7096,15 +7084,6 @@ } } }, - "read-package-json-fast": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-1.1.3.tgz", - "integrity": "sha512-MmFqiyfCXV2Dmm4jH24DEGhxdkUDFivJQj4oPZQPOKywxR7HWBE6WnMWDAapfFHi3wm1b+mhR+XHlUH0CL8axg==", - "requires": { - "json-parse-even-better-errors": "^2.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, "read-pkg": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", @@ -7201,17 +7180,6 @@ "integrity": "sha512-+oZJurc4hXpaaqsN68GoZGQAQIA3qr09Or4fqEsargABnbe5Aau8hFn6ISVleT3cpY/0n/8drn7huyyEvTbghA==", "dev": true }, - "readdir-scoped-modules": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", - "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", - "requires": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" - } - }, "readdirp": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", @@ -7694,27 +7662,21 @@ } }, "socks-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.0.tgz", - "integrity": "sha512-lEpa1zsWCChxiynk+lCycKuC502RxDWLKJZoIhnxrWNjLSDGYRFflHA1/228VkRcnv9TIb8w98derGbpKxJRgA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", + "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", "requires": { - "agent-base": "6", - "debug": "4", - "socks": "^2.3.3" + "agent-base": "~4.2.1", + "socks": "~2.3.2" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "agent-base": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", + "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", "requires": { - "ms": "^2.1.1" + "es6-promisify": "^5.0.0" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" } } }, @@ -7878,11 +7840,11 @@ } }, "ssri": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.0.tgz", - "integrity": "sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", "requires": { - "minipass": "^3.1.1" + "figgy-pudding": "^3.5.1" } }, "stack-utils": { @@ -7896,6 +7858,20 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" + }, "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", @@ -8279,22 +8255,26 @@ } }, "tar": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.0.1.tgz", - "integrity": "sha512-bKhKrrz2FJJj5s7wynxy/fyxpE0CmCjmOQ1KV4KkgXFWOgoIT/NbTMnB1n+LFNrNk0SSBVGGxcK5AGsyC+pW5Q==", - "requires": { - "chownr": "^1.1.3", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.0", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" + "version": "4.4.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", + "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.8.6", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" }, "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "mkdirp": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "requires": { + "minimist": "^1.2.5" + } } } }, @@ -8356,14 +8336,12 @@ "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" }, "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" @@ -8504,6 +8482,11 @@ "mime-types": "~2.1.24" } }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, "typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -8783,6 +8766,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, "requires": { "isexe": "^2.0.0" } @@ -8988,14 +8972,12 @@ "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" }, "y18n": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" }, "yallist": { "version": "3.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index e3d0fc30f90..cdb052359df 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -110,7 +110,7 @@ "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", "mkdirp": "^1.0.3", - "pacote": "^11.1.4", + "pacote": "^9.5.12", "pretty-hrtime": "^1.0.3", "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", From 60265727e2e4f8fb112b2674920f07191bf0fb64 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 2 Apr 2020 18:35:59 +0200 Subject: [PATCH 0341/1272] [ui5-project][FIX] Schema: Add missing metadata properties Also refactored the schema to only test and validate the metadata where required. --- .../validation/schema/specVersion/2.0.json | 5 +- .../specVersion/2.0/kind/extension.json | 17 +- .../2.0/kind/extension/project-shim.json | 2 +- .../2.0/kind/extension/server-middleware.json | 2 +- .../specVersion/2.0/kind/extension/task.json | 2 +- .../schema/specVersion/2.0/kind/project.json | 30 ++- .../2.0/kind/project/application.json | 2 +- .../specVersion/2.0/kind/project/library.json | 2 +- .../specVersion/2.0/kind/project/module.json | 2 +- .../2.0/kind/project/theme-library.json | 2 +- .../project/lib/validation/schema/ui5.json | 17 -- .../test/lib/validation/ValidationError.js | 2 +- .../schema/specVersion/2.0/kind/project.js | 113 +-------- .../2.0/kind/project/application.js | 239 ++++++++++++++++++ .../specVersion/2.0/kind/project/library.js | 238 +++++++++++++++++ .../specVersion/2.0/kind/project/module.js | 238 +++++++++++++++++ .../2.0/kind/project/theme-library.js | 238 +++++++++++++++++ .../project/test/lib/validation/schema/ui5.js | 94 +------ 18 files changed, 1010 insertions(+), 235 deletions(-) diff --git a/packages/project/lib/validation/schema/specVersion/2.0.json b/packages/project/lib/validation/schema/specVersion/2.0.json index 27bd1f9e8c7..99e66b6ae74 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0.json +++ b/packages/project/lib/validation/schema/specVersion/2.0.json @@ -3,15 +3,12 @@ "$id": "http://ui5.sap/schema/specVersion/2.0.json", "type": "object", - "required": ["specVersion", "metadata"], + "required": ["specVersion"], "properties": { "specVersion": { "enum": ["2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" - }, - "metadata": { - "$ref": "../ui5.json#/definitions/metadata" } }, "if": { diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json index d49c9613d46..a580e4f9e14 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json @@ -17,7 +17,7 @@ ] }, "metadata": { - "$ref": "../../../ui5.json#/definitions/metadata" + "$ref": "#/definitions/metadata" } }, "if": { @@ -56,5 +56,20 @@ } } } + }, + "definitions": { + "metadata": { + "type": "object", + "required": ["name"], + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "copyright": { + "type": "string" + } + } + } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json index 52e98656160..b80f377f309 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json @@ -14,7 +14,7 @@ "enum": ["project-shim"] }, "metadata": { - "$ref": "../../../../ui5.json#/definitions/metadata" + "$ref": "../extension.json#/definitions/metadata" }, "shims": { "type": "object", diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json index 82e6869272c..662f7b48875 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json @@ -14,7 +14,7 @@ "enum": ["server-middleware"] }, "metadata": { - "$ref": "../../../../ui5.json#/definitions/metadata" + "$ref": "../extension.json#/definitions/metadata" }, "middleware": { "type": "object", diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json index 0dd6a7a022b..6b34aac8f6b 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json @@ -14,7 +14,7 @@ "enum": ["task"] }, "metadata": { - "$ref": "../../../../ui5.json#/definitions/metadata" + "$ref": "../extension.json#/definitions/metadata" }, "task": { "type": "object", diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index d287584fda4..ec3f467646b 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -3,7 +3,7 @@ "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project.json", "type": "object", - "required": ["specVersion", "type", "metadata"], + "required": ["specVersion", "type"], "properties": { "specVersion": { "enum": ["2.0"] }, "kind": { @@ -17,9 +17,6 @@ "theme-library", "module" ] - }, - "metadata": { - "$ref": "../../../ui5.json#/definitions/metadata" } }, "if": { @@ -71,6 +68,31 @@ }, "definitions": { + "metadata": { + "type": "object", + "required": ["name"], + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "copyright": { + "type": "string" + }, + "deprecated": { + "type": "boolean", + "default": false + }, + "sapInternal": { + "type": "boolean", + "default": false + }, + "allowSapInternal": { + "type": "boolean", + "default": false + } + } + }, "resources-configuration-propertiesFileSourceEncoding": { "enum": ["UTF-8", "ISO-8859-1"], "default": "UTF-8", diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json index 8ad7f7120ba..f66bb1af4ee 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json @@ -14,7 +14,7 @@ "enum": ["application"] }, "metadata": { - "$ref": "../../../../ui5.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata" }, "framework": { "$ref": "../project.json#/definitions/framework" diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json index 8d1cf93d431..6b1b14e915c 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json @@ -14,7 +14,7 @@ "enum": ["library"] }, "metadata": { - "$ref": "../../../../ui5.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata" }, "framework": { "$ref": "../project.json#/definitions/framework" diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json index 1ea690cc39d..41d2d2c4bc6 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json @@ -14,7 +14,7 @@ "enum": ["module"] }, "metadata": { - "$ref": "../../../../ui5.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata" }, "resources": { "type": "object", diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json index 46dccd07a27..2dda935f121 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json @@ -14,7 +14,7 @@ "enum": ["theme-library"] }, "metadata": { - "$ref": "../../../../ui5.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata" }, "framework": { "$ref": "../project.json#/definitions/framework" diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index a9a5ae54f91..3e9d58b053b 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -34,22 +34,5 @@ "then": { "additionalProperties": true } - }, - - "definitions": { - - "metadata": { - "type": "object", - "required": ["name"], - "additionalProperties": false, - "properties": { - "name": { - "type": "string" - }, - "copyright": { - "type": "string" - } - } - } } } diff --git a/packages/project/test/lib/validation/ValidationError.js b/packages/project/test/lib/validation/ValidationError.js index dc1c32b9edd..6b82090c965 100644 --- a/packages/project/test/lib/validation/ValidationError.js +++ b/packages/project/test/lib/validation/ValidationError.js @@ -841,7 +841,7 @@ test.serial("ValidationError.formatMessage: keyword=required", (t) => { const error = { keyword: "required", dataPath: "/metadata", - schemaPath: "../ui5.json#/definitions/metadata/required", + schemaPath: "#/definitions/metadata/required", params: {missingProperty: "name"}, message: "should have required property 'name'" }; diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js index 69b83b20b7e..39c41a93323 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js @@ -26,8 +26,8 @@ test.before((t) => { test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project"}); const thresholds = { - statements: 90, - branches: 80, + statements: 85, + branches: 75, functions: 100, lines: 90 }; @@ -194,112 +194,3 @@ test("No specVersion", async (t) => { schemaPath: "#/required", }]); }); - -test("No metadata", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application" - }, [{ - dataPath: "", - keyword: "required", - message: "should have required property 'metadata'", - params: { - missingProperty: "metadata", - }, - schemaPath: "#/required", - }]); -}); - -test("Metadata not type object", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": "foo" - }, [{ - dataPath: "/metadata", - keyword: "type", - message: "should be object", - params: { - type: "object", - }, - schemaPath: "../ui5.json#/definitions/metadata/type", - }]); -}); - -test("No metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": {} - }, [{ - dataPath: "/metadata", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - }, - schemaPath: "../ui5.json#/definitions/metadata/required", - }]); -}); - -test("Invalid metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": {} - } - }, [ - { - dataPath: "/metadata/name", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../ui5.json#/definitions/metadata/properties/name/type", - } - ]); -}); - -test("Invalid metadata.copyright", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "foo", - "copyright": 123 - } - }, [ - { - dataPath: "/metadata/copyright", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../ui5.json#/definitions/metadata/properties/copyright/type", - } - ]); -}); - -test("Additional metadata property", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "foo", - "copyrihgt": "typo" - } - }, [ - { - dataPath: "/metadata", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "copyrihgt" - }, - schemaPath: "../ui5.json#/definitions/metadata/additionalProperties", - } - ]); -}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index 986f6e9c436..1acf2f6dd3a 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -748,3 +748,242 @@ test("framework configuration: library with optional and development", async (t) }, ]); }); + + +test("No metadata", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application" + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + schemaPath: "#/required", + }]); +}); + +test("Metadata not type object", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": "foo" + }, [{ + dataPath: "/metadata", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/metadata/type", + }]); +}); + +test("No metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": {} + }, [{ + dataPath: "/metadata", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/metadata/required", + }]); +}); + +test("Invalid metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": {} + } + }, [ + { + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../project.json#/definitions/metadata/properties/name/type", + } + ]); +}); + +test("Invalid metadata.copyright", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "foo", + "copyright": 123 + } + }, [ + { + dataPath: "/metadata/copyright", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../project.json#/definitions/metadata/properties/copyright/type", + } + ]); +}); + +test("Additional metadata property", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "foo", + "copyrihgt": "typo" + } + }, [ + { + dataPath: "/metadata", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "copyrihgt" + }, + schemaPath: "../project.json#/definitions/metadata/additionalProperties", + } + ]); +}); + +test("metadata.deprecated: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application", + "deprecated": true + } + }); +}); + +test("metadata.deprecated: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application", + "deprecated": false + } + }); +}); + +test("Invalid metadata.deprecated", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application", + "deprecated": "Yes" + } + }, [ + { + dataPath: "/metadata/deprecated", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/deprecated/type", + } + ]); +}); + +test("metadata.sapInternal: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application", + "sapInternal": true + } + }); +}); + +test("metadata.sapInternal: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application", + "sapInternal": false + } + }); +}); + +test("Invalid metadata.sapInternal", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application", + "sapInternal": "Yes" + } + }, [ + { + dataPath: "/metadata/sapInternal", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/sapInternal/type", + } + ]); +}); + +test("metadata.allowSapInternal: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application", + "allowSapInternal": true + } + }); +}); + +test("metadata.allowSapInternal: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application", + "allowSapInternal": false + } + }); +}); + +test("Invalid metadata.allowSapInternal", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application", + "allowSapInternal": "Yes" + } + }, [ + { + dataPath: "/metadata/allowSapInternal", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/allowSapInternal/type", + } + ]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index 821fb099dac..8d908875c0c 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -821,3 +821,241 @@ test("framework configuration: library with optional and development", async (t) }, ]); }); + +test("No metadata", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application" + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + schemaPath: "#/required", + }]); +}); + +test("Metadata not type object", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": "foo" + }, [{ + dataPath: "/metadata", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/metadata/type", + }]); +}); + +test("No metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": {} + }, [{ + dataPath: "/metadata", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/metadata/required", + }]); +}); + +test("Invalid metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": {} + } + }, [ + { + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../project.json#/definitions/metadata/properties/name/type", + } + ]); +}); + +test("Invalid metadata.copyright", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "foo", + "copyright": 123 + } + }, [ + { + dataPath: "/metadata/copyright", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../project.json#/definitions/metadata/properties/copyright/type", + } + ]); +}); + +test("Additional metadata property", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "foo", + "copyrihgt": "typo" + } + }, [ + { + dataPath: "/metadata", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "copyrihgt" + }, + schemaPath: "../project.json#/definitions/metadata/additionalProperties", + } + ]); +}); + +test("metadata.deprecated: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library", + "deprecated": true + } + }); +}); + +test("metadata.deprecated: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library", + "deprecated": false + } + }); +}); + +test("Invalid metadata.deprecated", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library", + "deprecated": "Yes" + } + }, [ + { + dataPath: "/metadata/deprecated", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/deprecated/type", + } + ]); +}); + +test("metadata.sapInternal: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library", + "sapInternal": true + } + }); +}); + +test("metadata.sapInternal: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library", + "sapInternal": false + } + }); +}); + +test("Invalid metadata.sapInternal", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library", + "sapInternal": "Yes" + } + }, [ + { + dataPath: "/metadata/sapInternal", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/sapInternal/type", + } + ]); +}); + +test("metadata.allowSapInternal: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library", + "allowSapInternal": true + } + }); +}); + +test("metadata.allowSapInternal: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library", + "allowSapInternal": false + } + }); +}); + +test("Invalid metadata.allowSapInternal", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my-library", + "allowSapInternal": "Yes" + } + }, [ + { + dataPath: "/metadata/allowSapInternal", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/allowSapInternal/type", + } + ]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js index 35c30ae34dd..41f10c19121 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js @@ -122,3 +122,241 @@ test("No builder, server configuration", async (t) => { schemaPath: "#/additionalProperties" }]); }); + +test("No metadata", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module" + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + schemaPath: "#/required", + }]); +}); + +test("Metadata not type object", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": "foo" + }, [{ + dataPath: "/metadata", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/metadata/type", + }]); +}); + +test("No metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": {} + }, [{ + dataPath: "/metadata", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/metadata/required", + }]); +}); + +test("Invalid metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": {} + } + }, [ + { + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../project.json#/definitions/metadata/properties/name/type", + } + ]); +}); + +test("Invalid metadata.copyright", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "foo", + "copyright": 123 + } + }, [ + { + dataPath: "/metadata/copyright", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../project.json#/definitions/metadata/properties/copyright/type", + } + ]); +}); + +test("Additional metadata property", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "foo", + "copyrihgt": "typo" + } + }, [ + { + dataPath: "/metadata", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "copyrihgt" + }, + schemaPath: "../project.json#/definitions/metadata/additionalProperties", + } + ]); +}); + +test("metadata.deprecated: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module", + "deprecated": true + } + }); +}); + +test("metadata.deprecated: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module", + "deprecated": false + } + }); +}); + +test("Invalid metadata.deprecated", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module", + "deprecated": "Yes" + } + }, [ + { + dataPath: "/metadata/deprecated", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/deprecated/type", + } + ]); +}); + +test("metadata.sapInternal: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module", + "sapInternal": true + } + }); +}); + +test("metadata.sapInternal: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module", + "sapInternal": false + } + }); +}); + +test("Invalid metadata.sapInternal", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module", + "sapInternal": "Yes" + } + }, [ + { + dataPath: "/metadata/sapInternal", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/sapInternal/type", + } + ]); +}); + +test("metadata.allowSapInternal: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module", + "allowSapInternal": true + } + }); +}); + +test("metadata.allowSapInternal: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module", + "allowSapInternal": false + } + }); +}); + +test("Invalid metadata.allowSapInternal", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my-module", + "allowSapInternal": "Yes" + } + }, [ + { + dataPath: "/metadata/allowSapInternal", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/allowSapInternal/type", + } + ]); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js index 0c172f0d992..8e72c26c977 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -373,3 +373,241 @@ test("framework configuration: library with optional and development", async (t) }, ]); }); + +test("No metadata", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library" + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + schemaPath: "#/required", + }]); +}); + +test("Metadata not type object", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": "foo" + }, [{ + dataPath: "/metadata", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/metadata/type", + }]); +}); + +test("No metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": {} + }, [{ + dataPath: "/metadata", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/metadata/required", + }]); +}); + +test("Invalid metadata.name", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": {} + } + }, [ + { + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../project.json#/definitions/metadata/properties/name/type", + } + ]); +}); + +test("Invalid metadata.copyright", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "foo", + "copyright": 123 + } + }, [ + { + dataPath: "/metadata/copyright", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../project.json#/definitions/metadata/properties/copyright/type", + } + ]); +}); + +test("Additional metadata property", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "foo", + "copyrihgt": "typo" + } + }, [ + { + dataPath: "/metadata", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "copyrihgt" + }, + schemaPath: "../project.json#/definitions/metadata/additionalProperties", + } + ]); +}); + +test("metadata.deprecated: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "deprecated": true + } + }); +}); + +test("metadata.deprecated: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "deprecated": false + } + }); +}); + +test("Invalid metadata.deprecated", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "deprecated": "Yes" + } + }, [ + { + dataPath: "/metadata/deprecated", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/deprecated/type", + } + ]); +}); + +test("metadata.sapInternal: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "sapInternal": true + } + }); +}); + +test("metadata.sapInternal: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "sapInternal": false + } + }); +}); + +test("Invalid metadata.sapInternal", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "sapInternal": "Yes" + } + }, [ + { + dataPath: "/metadata/sapInternal", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/sapInternal/type", + } + ]); +}); + +test("metadata.allowSapInternal: true", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "allowSapInternal": true + } + }); +}); + +test("metadata.allowSapInternal: false", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "allowSapInternal": false + } + }); +}); + +test("Invalid metadata.allowSapInternal", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "allowSapInternal": "Yes" + } + }, [ + { + dataPath: "/metadata/allowSapInternal", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/allowSapInternal/type", + } + ]); +}); diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index f90da6fa8b0..abee6c794d8 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -46,7 +46,7 @@ test("Undefined", async (t) => { }]); }); -test("Missing specVersion, type, metadata", async (t) => { +test("Missing specVersion, type", async (t) => { await assertValidation(t, {}, [ { dataPath: "", @@ -57,15 +57,6 @@ test("Missing specVersion, type, metadata", async (t) => { }, schemaPath: "#/required", }, - { - dataPath: "", - keyword: "required", - message: "should have required property 'metadata'", - params: { - missingProperty: "metadata", - }, - schemaPath: "#/required", - }, { dataPath: "", keyword: "required", @@ -79,19 +70,10 @@ test("Missing specVersion, type, metadata", async (t) => { ]); }); -test("Missing type, metadata", async (t) => { +test("Missing type", async (t) => { await assertValidation(t, { "specVersion": "2.0" }, [ - { - dataPath: "", - keyword: "required", - message: "should have required property 'metadata'", - params: { - missingProperty: "metadata", - }, - schemaPath: "#/required", - }, { dataPath: "", keyword: "required", @@ -142,10 +124,7 @@ For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specific test("Invalid type", async (t) => { await assertValidation(t, { "specVersion": "2.0", - "type": "foo", - "metadata": { - "name": "foo" - } + "type": "foo" }, [ { dataPath: "/type", @@ -167,10 +146,7 @@ test("Invalid type", async (t) => { test("Invalid kind", async (t) => { await assertValidation(t, { "specVersion": "2.0", - "kind": "foo", - "metadata": { - "name": "foo" - } + "kind": "foo" }, [ { dataPath: "/kind", @@ -188,68 +164,6 @@ test("Invalid kind", async (t) => { ]); }); -test("Invalid metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": {} - } - }, [ - { - dataPath: "/metadata/name", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../ui5.json#/definitions/metadata/properties/name/type", - } - ]); -}); - -test("Invalid metadata.copyright", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "foo", - "copyright": 123 - } - }, [ - { - dataPath: "/metadata/copyright", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../ui5.json#/definitions/metadata/properties/copyright/type", - } - ]); -}); - -test("Additional metadata property", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "foo", - "copyrihgt": "typo" - } - }, [ - { - dataPath: "/metadata", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "copyrihgt" - }, - schemaPath: "../ui5.json#/definitions/metadata/additionalProperties", - } - ]); -}); - test("specVersion 0.1", async (t) => { await assertValidation(t, { "specVersion": "0.1" From 47e81ac491d43e41390bef5588a35b4e06e8948e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 2 Apr 2020 16:34:25 +0200 Subject: [PATCH 0342/1272] [ui5-project][INTERNAL] AbstractResolver: Throw more precise error when requested framework version is known to be unavailable If the requested framework version is lower than what is the lowest version currently available in the public npm registry, throw a more precise error message if it can't be resolved. --- .../lib/ui5Framework/AbstractResolver.js | 10 ++++ .../test/lib/ui5framework/AbstractResolver.js | 50 +++++++++++++++++++ 2 files changed, 60 insertions(+) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index f4b2c9cd720..d5a07aa7cec 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -171,6 +171,16 @@ class AbstractResolver { const versions = await this.fetchAllVersions({ui5HomeDir, cwd}); const resolvedVersion = semver.maxSatisfying(versions, spec); if (!resolvedVersion) { + if (this.name === "Sapui5Resolver" && semver.lt(spec, "1.76.0")) { + throw new Error(`Could not resolve framework version ${version}. ` + + `Note that SAPUI5 framework libraries can only be consumed by the UI5 Tooling ` + + `starting with SAPUI5 v1.76.0`); + } else + if (this.name === "Openui5Resolver" && semver.lt(spec, "1.52.5")) { + throw new Error(`Could not resolve framework version ${version}. ` + + `Note that OpenUI5 framework libraries can only be consumed by the UI5 Tooling ` + + `starting with OpenUI5 v1.52.5`); + } throw new Error(`Could not resolve framework version ${version}`); } return resolvedVersion; diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 72b3bc367ba..582ed51e41d 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -444,3 +444,53 @@ test.serial("AbstractResolver: Static resolveVersion throws error for '~1.75.0'" t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); }); + +test.serial("AbstractResolver: Static resolveVersion throws error for version not found", async (t) => { + sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0"]); + + const error = await t.throwsAsync(MyResolver.resolveVersion("1.74.0", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Could not resolve framework version 1.74.0`); +}); + +test.serial( + "AbstractResolver: Static resolveVersion throws error for version lower than lowest OpenUI5 version", async (t) => { + class Openui5Resolver extends AbstractResolver { + static async fetchAllVersions() {} + } + + sinon.stub(Openui5Resolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0"]); + + const error = await t.throwsAsync(Openui5Resolver.resolveVersion("1.50.0", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, + `Could not resolve framework version 1.50.0. Note that OpenUI5 framework libraries can only be ` + + `consumed by the UI5 Tooling starting with OpenUI5 v1.52.5`); + }); + +test.serial( + "AbstractResolver: Static resolveVersion throws error for version lower than lowest SAPUI5 version", async (t) => { + class Sapui5Resolver extends AbstractResolver { + static async fetchAllVersions() {} + } + + sinon.stub(Sapui5Resolver, "fetchAllVersions") + .returns(["1.76.0", "1.76.1", "1.90.0"]); + + const error = await t.throwsAsync(Sapui5Resolver.resolveVersion("1.75.0", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, + `Could not resolve framework version 1.75.0. Note that SAPUI5 framework libraries can only be ` + + `consumed by the UI5 Tooling starting with SAPUI5 v1.76.0`); + }); From 4c842b7c7a4d27cdd390eb87922afe340a5268e6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 2 Apr 2020 16:52:56 +0000 Subject: [PATCH 0343/1272] [ui5-project]Release 2.0.3 --- packages/project/CHANGELOG.md | 10 +++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index d1fcf4a9b30..dcfd72f444d 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,14 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.0.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.0.3...HEAD). + + +## [v2.0.3] - 2020-04-02 +### Bug Fixes +- **Schema:** Add missing metadata properties [`16894e1`](https://github.com/SAP/ui5-project/commit/16894e11c5c21a77a405431dfaf5d8642accfc1d) +- **package.json:** Downgrade pacote from 11.1.4 to 9.5.12 [`c76fb49`](https://github.com/SAP/ui5-project/commit/c76fb49e64b5905a3cd592d94fc0076cecc909b5) + ## [v2.0.2] - 2020-04-01 @@ -142,6 +149,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.0.3]: https://github.com/SAP/ui5-project/compare/v2.0.2...v2.0.3 [v2.0.2]: https://github.com/SAP/ui5-project/compare/v2.0.1...v2.0.2 [v2.0.1]: https://github.com/SAP/ui5-project/compare/v2.0.0...v2.0.1 [v2.0.0]: https://github.com/SAP/ui5-project/compare/v1.2.0...v2.0.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 18e65f40aa7..64ec6dbb2e3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.0.2", + "version": "2.0.3", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index cdb052359df..167a779fcd2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.0.2", + "version": "2.0.3", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 49eae637c30b062c56e17c6c7fe16450b904f815 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 5 Apr 2020 02:21:44 +0000 Subject: [PATCH 0344/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 642 +++++++++++++++-------------- packages/project/package.json | 6 +- 2 files changed, 332 insertions(+), 316 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 64ec6dbb2e3..017b8aad744 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -692,9 +692,9 @@ "dev": true }, "@types/node": { - "version": "13.9.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.5.tgz", - "integrity": "sha512-hkzMMD3xu6BrJpGVLeQ3htQQNAcOrJjX7WFmtK8zWQpz2UJf13LCFF2ALA7c9OVdvc2vQJeDdjfR35M0sBCxvw==", + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.11.0.tgz", + "integrity": "sha512-uM4mnmsIIPK/yeO+42F2RQhGUIs39K2RFmugcJANppXe6J1nvH87PvzPZYpza7Xhhs8Yn9yIAVdLZ84z61+0xQ==", "dev": true }, "@types/normalize-package-data": { @@ -729,31 +729,6 @@ "terser": "^4.6.7", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "estraverse": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz", - "integrity": "sha512-j3acdrMzqrxmJTNj5dbr1YbjacrYgAxVMeF0gK16E3j494mOe7xygM/ZLIguEQ0ETwAg2hlJCtHRGav+y0Ny5A==" - }, - "globby": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.0.tgz", - "integrity": "sha512-iuehFnR3xu5wBBtm4xi0dMe92Ob87ufyu/dHwpDYfbcpYpIbrO5OnS8M1vWvrBhSGEJ3/Ecj7gnX76P8YxpPEg==", - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - } - }, - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" - } } }, "@ui5/fs": { @@ -772,21 +747,6 @@ "pretty-hrtime": "^1.0.3", "random-int": "^2.0.1", "slash": "^3.0.0" - }, - "dependencies": { - "globby": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.0.tgz", - "integrity": "sha512-iuehFnR3xu5wBBtm4xi0dMe92Ob87ufyu/dHwpDYfbcpYpIbrO5OnS8M1vWvrBhSGEJ3/Ecj7gnX76P8YxpPEg==", - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - } - } } }, "@ui5/logger": { @@ -958,6 +918,14 @@ "dev": true, "requires": { "type-fest": "^0.11.0" + }, + "dependencies": { + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true + } } }, "ansi-regex": { @@ -1261,6 +1229,22 @@ "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", "dev": true }, + "globby": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" + } + }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -1340,6 +1324,14 @@ "espower-location-detector": "^1.0.0", "espurify": "^1.6.0", "estraverse": "^4.1.1" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + } } }, "balanced-match": { @@ -1590,9 +1582,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "requires": { "minimist": "^1.2.5" } @@ -1631,6 +1623,12 @@ "pump": "^3.0.0" } }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true + }, "lowercase-keys": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", @@ -1661,6 +1659,14 @@ "deep-equal": "^1.0.0", "espurify": "^1.6.0", "estraverse": "^4.0.0" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + } } }, "call-signature": { @@ -2135,6 +2141,12 @@ "pify": "^3.0.0" } }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, "write-file-atomic": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", @@ -2217,9 +2229,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "requires": { "minimist": "^1.2.5" } @@ -2277,9 +2289,9 @@ }, "dependencies": { "cross-spawn": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz", - "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", + "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -2307,6 +2319,15 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } } } }, @@ -2331,15 +2352,6 @@ "yallist": "^2.1.2" } }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", @@ -2591,18 +2603,6 @@ } } }, - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -2652,9 +2652,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "requires": { "minimist": "^1.2.5" } @@ -3035,6 +3035,13 @@ "esutils": "^2.0.2", "optionator": "^0.8.1", "source-map": "~0.6.1" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + } } }, "escope": { @@ -3046,6 +3053,13 @@ "es6-weak-map": "^2.0.1", "esrecurse": "^4.1.0", "estraverse": "^4.1.1" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + } } }, "eslint": { @@ -3174,9 +3188,9 @@ "dev": true }, "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -3217,15 +3231,6 @@ "requires": { "has-flag": "^3.0.0" } - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } } } }, @@ -3254,6 +3259,14 @@ "requires": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + } } }, "eslint-utils": { @@ -3329,14 +3342,6 @@ "dev": true, "requires": { "estraverse": "^5.0.0" - }, - "dependencies": { - "estraverse": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz", - "integrity": "sha512-j3acdrMzqrxmJTNj5dbr1YbjacrYgAxVMeF0gK16E3j494mOe7xygM/ZLIguEQ0ETwAg2hlJCtHRGav+y0Ny5A==", - "dev": true - } } }, "esrecurse": { @@ -3345,12 +3350,19 @@ "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", "requires": { "estraverse": "^4.1.0" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + } } }, "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz", + "integrity": "sha512-j3acdrMzqrxmJTNj5dbr1YbjacrYgAxVMeF0gK16E3j494mOe7xygM/ZLIguEQ0ETwAg2hlJCtHRGav+y0Ny5A==" }, "esutils": { "version": "2.0.3", @@ -3397,6 +3409,12 @@ "strip-eof": "^1.0.0" }, "dependencies": { + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", @@ -3520,9 +3538,9 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "fastq": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.6.1.tgz", - "integrity": "sha512-mpIH5sKYueh3YyeJwqtVo8sORi0CgtmkVbK6kZStpQlZBYQuTzG2CZ7idSiJuA7bY0SFCWUc5WIs+oYumGCQNw==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.7.0.tgz", + "integrity": "sha512-YOadQRnHd5q6PogvAR/x62BGituF2ufiEA6s8aavQANw5YKHERI4AREboX6KotzP8oX2klxYF2wcV/7bn1clfQ==", "requires": { "reusify": "^1.0.4" } @@ -3634,9 +3652,9 @@ } }, "flatted": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", - "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", "dev": true }, "flush-write-stream": { @@ -3682,9 +3700,9 @@ }, "dependencies": { "cross-spawn": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz", - "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", + "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -3712,6 +3730,15 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } } } }, @@ -3840,10 +3867,12 @@ "dev": true }, "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } }, "getpass": { "version": "0.1.7", @@ -3890,18 +3919,15 @@ "dev": true }, "globby": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", - "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", - "dev": true, + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.0.tgz", + "integrity": "sha512-iuehFnR3xu5wBBtm4xi0dMe92Ob87ufyu/dHwpDYfbcpYpIbrO5OnS8M1vWvrBhSGEJ3/Ecj7gnX76P8YxpPEg==", "requires": { - "@types/glob": "^7.1.1", "array-union": "^2.1.0", "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", "slash": "^3.0.0" } }, @@ -3922,17 +3948,6 @@ "p-cancelable": "^1.0.0", "to-readable-stream": "^1.0.0", "url-parse-lax": "^3.0.0" - }, - "dependencies": { - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - } } }, "graceful-fs": { @@ -4069,10 +4084,9 @@ } }, "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", + "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" }, "http-deceiver": { "version": "1.2.7", @@ -4781,9 +4795,9 @@ }, "dependencies": { "cross-spawn": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz", - "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", + "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -4791,6 +4805,15 @@ "which": "^2.0.1" } }, + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, "path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", @@ -4811,6 +4834,15 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } } } }, @@ -4854,9 +4886,9 @@ } }, "istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-Vm9xwCiQ8t2cNNnckyeAV0UdxKpcQUz4nMxsBvIu8n2kmPSiyb5uaF/8LpmKr+yqL/MdOXaX2Nmdo4Qyxium9Q==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", + "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -4877,9 +4909,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -4942,9 +4974,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "requires": { "minimist": "^1.2.5" } @@ -4996,9 +5028,9 @@ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, "json5": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.2.tgz", - "integrity": "sha512-MoUOQ4WdiN3yxhm7NEVJSJrieAo5hNSLQ5sj05OTRHPL9HOBy8u4Bu88jsC1jvqAdN+E1bJmsUcZH+1HQxliqQ==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -5112,6 +5144,24 @@ "parse-json": "^4.0.0", "pify": "^3.0.0", "strip-bom": "^3.0.0" + }, + "dependencies": { + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } } }, "locate-path": { @@ -5365,13 +5415,6 @@ "promise-retry": "^1.1.1", "socks-proxy-agent": "^4.0.0", "ssri": "^6.0.0" - }, - "dependencies": { - "http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" - } } }, "map-obj": { @@ -5393,9 +5436,9 @@ } }, "markdown-it-anchor": { - "version": "5.2.5", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.5.tgz", - "integrity": "sha512-xLIjLQmtym3QpoY9llBgApknl7pxAcN3WDRc2d3rwpl+/YvDZHPmKscGs+L6E05xf2KrCXPBvosWt7MZukwSpQ==" + "version": "5.2.7", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.7.tgz", + "integrity": "sha512-REFmIaSS6szaD1bye80DMbp7ePwsPNvLTR5HunsUcZ0SG0rWJQ+Pz24R4UlTKtjKBPhxo0v0tOBDYjZQQknW8Q==" }, "marked": { "version": "0.7.0", @@ -5515,6 +5558,23 @@ "pify": "^3.0.0" } }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, "read-pkg-up": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", @@ -5523,19 +5583,6 @@ "requires": { "find-up": "^2.0.0", "read-pkg": "^3.0.0" - }, - "dependencies": { - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - } } } } @@ -5671,9 +5718,9 @@ } }, "mkdirp": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", - "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==" + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" }, "mock-require": { "version": "3.0.3", @@ -5698,9 +5745,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "requires": { "minimist": "^1.2.5" } @@ -5818,11 +5865,6 @@ "validate-npm-package-license": "^3.0.1" }, "dependencies": { - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" - }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -5957,9 +5999,9 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.0.0.tgz", - "integrity": "sha512-qcLBlNCKMDVuKb7d1fpxjPR8sHeMVX0CHarXAVzrVWoFrigCkYR8xcrjfXSPi5HXM7EU78L6ywO7w1c5rZNCNg==", + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.0.1.tgz", + "integrity": "sha512-n0MBXYBYRqa67IVt62qW1r/d9UH/Qtr7SF1w/nQLJ9KxvWF6b2xCHImRAixHN9tnMMYHC2P14uo6KddNGwMgGg==", "dev": true, "requires": { "@istanbuljs/load-nyc-config": "^1.0.0", @@ -5977,10 +6019,9 @@ "istanbul-lib-processinfo": "^2.0.2", "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.0", - "js-yaml": "^3.13.1", + "istanbul-reports": "^3.0.2", "make-dir": "^3.0.0", - "node-preload": "^0.2.0", + "node-preload": "^0.2.1", "p-map": "^3.0.0", "process-on-spawn": "^1.0.0", "resolve-from": "^5.0.0", @@ -5988,7 +6029,6 @@ "signal-exit": "^3.0.2", "spawn-wrap": "^2.0.0", "test-exclude": "^6.0.0", - "uuid": "^3.3.3", "yargs": "^15.0.2" }, "dependencies": { @@ -6055,6 +6095,15 @@ "p-limit": "^2.2.0" } }, + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, "path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -6241,9 +6290,9 @@ "dev": true }, "camelcase-keys": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.1.tgz", - "integrity": "sha512-BPCNVH56RVIxQQIXskp5tLQXUNGQ6sXr7iCv1FHDt81xBOQ/1r6H8SPxf19InVP6DexWar4s87q9thfuk8X9HA==", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", "dev": true, "requires": { "camelcase": "^5.3.1", @@ -6251,23 +6300,6 @@ "quick-lru": "^4.0.1" } }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "requires": { - "p-locate": "^4.1.0" - } - }, "map-obj": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", @@ -6303,19 +6335,6 @@ "is-plain-obj": "^1.1.0" } }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - }, "quick-lru": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", @@ -6547,13 +6566,10 @@ } }, "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "dev": true }, "p-try": { "version": "2.2.0", @@ -6629,18 +6645,10 @@ "which": "^1.3.1" }, "dependencies": { - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "requires": { - "pump": "^3.0.0" - } - }, "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "requires": { "minimist": "^1.2.5" } @@ -6657,14 +6665,6 @@ "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "requires": { - "isexe": "^2.0.0" - } } } }, @@ -6688,13 +6688,14 @@ } }, "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", + "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", "requires": { + "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" } }, "parse-ms": { @@ -6762,9 +6763,9 @@ "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" }, "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, "pinkie": { @@ -6805,11 +6806,15 @@ "type-fest": "^0.3.0" } }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } }, "type-fest": { "version": "0.3.1", @@ -7093,24 +7098,6 @@ "normalize-package-data": "^2.5.0", "parse-json": "^5.0.0", "type-fest": "^0.6.0" - }, - "dependencies": { - "parse-json": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", - "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1", - "lines-and-columns": "^1.1.6" - } - }, - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" - } } }, "read-pkg-up": { @@ -7469,9 +7456,9 @@ } }, "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz", + "integrity": "sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -7723,6 +7710,17 @@ "rimraf": "^3.0.0", "signal-exit": "^3.0.2", "which": "^2.0.1" + }, + "dependencies": { + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } } }, "spdx-correct": { @@ -7754,9 +7752,9 @@ "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==" }, "spdy": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.1.tgz", - "integrity": "sha512-HeZS3PBdMA+sZSu0qwpCxl3DeALD5ASx8pAX0jZdKXSpPWbQ6SYGnlg3BBmYLx5LtiZrmkAZfErCm2oECBcioA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", "requires": { "debug": "^4.1.0", "handle-thing": "^2.0.0", @@ -7895,22 +7893,42 @@ "side-channel": "^1.0.2" } }, + "string.prototype.trimend": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.0.tgz", + "integrity": "sha512-EEJnGqa/xNfIg05SxiPSqRS7S9qwDhYts1TSLR1BQfYUfPe1stofgGKvwERK9+9yf+PpfBMlpBaCHucXGPQfUA==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, "string.prototype.trimleft": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", - "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz", + "integrity": "sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==", "requires": { "define-properties": "^1.1.3", - "function-bind": "^1.1.1" + "es-abstract": "^1.17.5", + "string.prototype.trimstart": "^1.0.0" } }, "string.prototype.trimright": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", - "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz", + "integrity": "sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==", "requires": { "define-properties": "^1.1.3", - "function-bind": "^1.1.1" + "es-abstract": "^1.17.5", + "string.prototype.trimend": "^1.0.0" + } + }, + "string.prototype.trimstart": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.0.tgz", + "integrity": "sha512-iCP8g01NFYiiBOnwG1Xc3WZLyoo+RuBymwIlWncShXDDJYWN6DbnM3odslBJdgCdRlq94B5s63NWAZlcn2CS4w==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" } }, "string_decoder": { @@ -8269,9 +8287,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "requires": { "minimist": "^1.2.5" } @@ -8468,10 +8486,9 @@ "dev": true }, "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" }, "type-is": { "version": "1.6.18", @@ -8577,9 +8594,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -8763,10 +8780,9 @@ "dev": true }, "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "requires": { "isexe": "^2.0.0" } @@ -8922,9 +8938,9 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "dev": true, "requires": { "minimist": "^1.2.5" diff --git a/packages/project/package.json b/packages/project/package.json index 167a779fcd2..674174e395d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -109,7 +109,7 @@ "js-yaml": "^3.13.1", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "mkdirp": "^1.0.3", + "mkdirp": "^1.0.4", "pacote": "^9.5.12", "pretty-hrtime": "^1.0.3", "read-pkg": "^5.2.0", @@ -130,11 +130,11 @@ "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.1", "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.0.1", + "istanbul-reports": "^3.0.2", "js-beautify": "^1.10.3", "jsdoc": "^3.6.3", "mock-require": "^3.0.3", - "nyc": "^15.0.0", + "nyc": "^15.0.1", "open-cli": "^6.0.1", "rimraf": "^3.0.2", "sinon": "^9.0.1", From 9a34ebb322b335e8734ed977be5c529d994c4bcc Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 12 Apr 2020 04:22:29 +0000 Subject: [PATCH 0345/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 188 +++++++++++++---------------- packages/project/package.json | 8 +- 2 files changed, 91 insertions(+), 105 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 017b8aad744..17b4c5d8906 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -95,12 +95,12 @@ } }, "@babel/generator": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.4.tgz", - "integrity": "sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA==", + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.5.tgz", + "integrity": "sha512-GbNIxVB3ZJe3tLeDm1HSn2AhuD/mVcyLDpgtLXa5tplmWrJdF/elxB56XNqCuD6szyNkDi6wuoKXln3QeBmCHQ==", "dev": true, "requires": { - "@babel/types": "^7.9.0", + "@babel/types": "^7.9.5", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -135,14 +135,14 @@ } }, "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz", + "integrity": "sha512-JVcQZeXM59Cd1qanDUxv9fgJpt3NeKUaqBqUEvfmQ+BCOKq2xUgaWZW2hr0dkbyJgezYuplEoh5knmrnS68efw==", "dev": true, "requires": { "@babel/helper-get-function-arity": "^7.8.3", "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/types": "^7.9.5" } }, "@babel/helper-get-function-arity": { @@ -256,9 +256,9 @@ } }, "@babel/helper-validator-identifier": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz", - "integrity": "sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==" + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz", + "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==" }, "@babel/helper-wrap-function": { "version": "7.8.3", @@ -441,17 +441,17 @@ } }, "@babel/traverse": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.0.tgz", - "integrity": "sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w==", + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.5.tgz", + "integrity": "sha512-c4gH3jsvSuGUezlP6rzSJ6jf8fYjLj3hsMZRx/nX0h+fmHN0w+ekubRrHPqnMec0meycA2nwCsJ7dC8IPem2FQ==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", - "@babel/helper-function-name": "^7.8.3", + "@babel/generator": "^7.9.5", + "@babel/helper-function-name": "^7.9.5", "@babel/helper-split-export-declaration": "^7.8.3", "@babel/parser": "^7.9.0", - "@babel/types": "^7.9.0", + "@babel/types": "^7.9.5", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -475,12 +475,12 @@ } }, "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.5.tgz", + "integrity": "sha512-XjnvNqenk818r5zMaba+sLQjnbda31UfUURv3ei0qPQw4u+j2jMyJ5b11y8ZHYTRSI3NnInQkkkRT4fLqqPdHg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.9.0", + "@babel/helper-validator-identifier": "^7.9.5", "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" } @@ -592,9 +592,9 @@ "dev": true }, "@sinonjs/commons": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.1.tgz", - "integrity": "sha512-Debi3Baff1Qu1Unc3mjJ96MgpbwTn43S1+9yJ0llWygPwDNu2aaWBD6yc9y/Z8XDRNhx7U+u2UDg2OGQXkclUQ==", + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.2.tgz", + "integrity": "sha512-+DUO6pnp3udV/v2VfUWgaY5BIE1IfT7lLfeDzPVeMT1XKkaAp9LgSI9x5RtrFQoZ9Oi0PgXQQHPaoKu7dCjVxw==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -692,9 +692,9 @@ "dev": true }, "@types/node": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.11.0.tgz", - "integrity": "sha512-uM4mnmsIIPK/yeO+42F2RQhGUIs39K2RFmugcJANppXe6J1nvH87PvzPZYpza7Xhhs8Yn9yIAVdLZ84z61+0xQ==", + "version": "13.11.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.11.1.tgz", + "integrity": "sha512-eWQGP3qtxwL8FGneRrC5DwrJLGN4/dH1clNTuLfN81HCrxVtxRjygDTUoZJ5ASlDEeo0ppYFQjQIlXhtXpOn6g==", "dev": true }, "@types/normalize-package-data": { @@ -1836,9 +1836,9 @@ } }, "cli-spinners": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.2.0.tgz", - "integrity": "sha512-tgU3fKwzYjiLEQgPMD9Jt+JjHVL9kW93FiIMX/l7rivvOD4/LL0Mf7gda3+4U2KJBloybwgj5KEoQgGRioMiKQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.3.0.tgz", + "integrity": "sha512-Xs2Hf2nzrvJMFKimOR7YR0QwZ8fc0u98kdtwN1eNAZzNQgH3vK2pXzff6GJtKh7S5hoJ87ECiAiZFS2fb5Ii2w==", "dev": true }, "cli-truncate": { @@ -4896,27 +4896,16 @@ } }, "js-beautify": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.10.3.tgz", - "integrity": "sha512-wfk/IAWobz1TfApSdivH5PJ0miIHgDoYb1ugSqHcODPmaYu46rYe5FVuIEkhjg8IQiv6rDNPyhsqbsohI/C2vQ==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.11.0.tgz", + "integrity": "sha512-a26B+Cx7USQGSWnz9YxgJNMmML/QG2nqIaL7VVYPCXbqiKz8PN0waSNvroMtvAK6tY7g/wPdNWGEP+JTNIBr6A==", "dev": true, "requires": { "config-chain": "^1.1.12", "editorconfig": "^0.15.3", "glob": "^7.1.3", - "mkdirp": "~0.5.1", - "nopt": "~4.0.1" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - } + "mkdirp": "~1.0.3", + "nopt": "^4.0.3" } }, "js-string-escape": { @@ -4953,34 +4942,24 @@ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsdoc": { - "version": "3.6.3", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.3.tgz", - "integrity": "sha512-Yf1ZKA3r9nvtMWHO1kEuMZTlHOF8uoQ0vyo5eH7SQy5YeIiHM+B0DgKnn+X6y6KDYZcF7G2SPkKF+JORCXWE/A==", + "version": "3.6.4", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.4.tgz", + "integrity": "sha512-3G9d37VHv7MFdheviDCjUfQoIjdv4TC5zTTf5G9VODLtOnVS6La1eoYBDlbWfsRT3/Xo+j2MIqki2EV12BZfwA==", "requires": { - "@babel/parser": "^7.4.4", - "bluebird": "^3.5.4", + "@babel/parser": "^7.9.4", + "bluebird": "^3.7.2", "catharsis": "^0.8.11", "escape-string-regexp": "^2.0.0", - "js2xmlparser": "^4.0.0", + "js2xmlparser": "^4.0.1", "klaw": "^3.0.0", - "markdown-it": "^8.4.2", - "markdown-it-anchor": "^5.0.2", - "marked": "^0.7.0", - "mkdirp": "^0.5.1", + "markdown-it": "^10.0.0", + "markdown-it-anchor": "^5.2.7", + "marked": "^0.8.2", + "mkdirp": "^1.0.4", "requizzle": "^0.2.3", - "strip-json-comments": "^3.0.1", + "strip-json-comments": "^3.1.0", "taffydb": "2.6.2", - "underscore": "~1.9.1" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "requires": { - "minimist": "^1.2.5" - } - } + "underscore": "~1.10.2" } }, "jsdoctypeparser": { @@ -5424,15 +5403,22 @@ "dev": true }, "markdown-it": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", - "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz", + "integrity": "sha512-YWOP1j7UbDNz+TumYP1kpwnP0aEa711cJjrAQrzd0UXlbJfc5aAq0F/PZHjiioqDC1NKgvIMX+o+9Bk7yuM2dg==", "requires": { "argparse": "^1.0.7", - "entities": "~1.1.1", + "entities": "~2.0.0", "linkify-it": "^2.0.0", "mdurl": "^1.0.1", "uc.micro": "^1.0.5" + }, + "dependencies": { + "entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.0.tgz", + "integrity": "sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw==" + } } }, "markdown-it-anchor": { @@ -5441,9 +5427,9 @@ "integrity": "sha512-REFmIaSS6szaD1bye80DMbp7ePwsPNvLTR5HunsUcZ0SG0rWJQ+Pz24R4UlTKtjKBPhxo0v0tOBDYjZQQknW8Q==" }, "marked": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.7.0.tgz", - "integrity": "sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==" + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.8.2.tgz", + "integrity": "sha512-EGwzEeCcLniFX51DhTpmTom+dSA/MG/OBUDjnWtHbEnjAH180VzUeAw+oE4+Zv+CoYBWyRlYOTR0N8SO9R1PVw==" }, "matcher": { "version": "2.1.0", @@ -6550,9 +6536,9 @@ "dev": true }, "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "requires": { "p-try": "^2.0.0" } @@ -7485,9 +7471,9 @@ "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" }, "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==" + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.2.2.tgz", + "integrity": "sha512-Zo84u6o2PebMSK3zjJ6Zp5wi8VnQZnEaCP13Ul/lt1ANsLACxnJxq4EEm1PY94/por1Hm9+7xpIswdS5AkieMA==" }, "semver-diff": { "version": "2.1.0", @@ -7596,13 +7582,13 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.0.1.tgz", - "integrity": "sha512-iTTyiQo5T94jrOx7X7QLBZyucUJ2WvL9J13+96HMfm2CGoJYbIPqRfl6wgNcqmzk0DI28jeGx5bUTXizkrqBmg==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.0.2.tgz", + "integrity": "sha512-0uF8Q/QHkizNUmbK3LRFqx5cpTttEVXudywY9Uwzy8bTfZUhljZ7ARzSxnRHWYWtVTeh4Cw+tTb3iU21FQVO9A==", "dev": true, "requires": { - "@sinonjs/commons": "^1.7.0", - "@sinonjs/fake-timers": "^6.0.0", + "@sinonjs/commons": "^1.7.2", + "@sinonjs/fake-timers": "^6.0.1", "@sinonjs/formatio": "^5.0.1", "@sinonjs/samsam": "^5.0.3", "diff": "^4.0.2", @@ -7894,9 +7880,9 @@ } }, "string.prototype.trimend": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.0.tgz", - "integrity": "sha512-EEJnGqa/xNfIg05SxiPSqRS7S9qwDhYts1TSLR1BQfYUfPe1stofgGKvwERK9+9yf+PpfBMlpBaCHucXGPQfUA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", + "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" @@ -7923,9 +7909,9 @@ } }, "string.prototype.trimstart": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.0.tgz", - "integrity": "sha512-iCP8g01NFYiiBOnwG1Xc3WZLyoo+RuBymwIlWncShXDDJYWN6DbnM3odslBJdgCdRlq94B5s63NWAZlcn2CS4w==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", + "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" @@ -7975,9 +7961,9 @@ "dev": true }, "strip-json-comments": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz", + "integrity": "sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w==" }, "strtok3": { "version": "6.0.0", @@ -8325,9 +8311,9 @@ } }, "terser": { - "version": "4.6.10", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.10.tgz", - "integrity": "sha512-qbF/3UOo11Hggsbsqm2hPa6+L4w7bkr+09FNseEe8xrcVD3APGLFqE+Oz1ZKAxjYnFsj80rLOfgAtJ0LNJjtTA==", + "version": "4.6.11", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.11.tgz", + "integrity": "sha512-76Ynm7OXUG5xhOpblhytE7X58oeNSmC8xnNhjWVo8CksHit0U0kO4hfNbPrrYwowLWFgM2n9L176VNx2QaHmtA==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -8525,9 +8511,9 @@ "dev": true }, "underscore": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.2.tgz", - "integrity": "sha512-D39qtimx0c1fI3ya1Lnhk3E9nONswSKhnffBI0gME9C99fYOkNi04xs8K6pePLhvl1frbDemkaBQ5ikWllR2HQ==" + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.10.2.tgz", + "integrity": "sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg==" }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", diff --git a/packages/project/package.json b/packages/project/package.json index 674174e395d..efbb7ae9fa3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -115,7 +115,7 @@ "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", "resolve": "^1.15.1", - "semver": "^7.1.3", + "semver": "^7.2.2", "string.prototype.matchall": "^4.0.2" }, "devDependencies": { @@ -131,13 +131,13 @@ "istanbul-lib-instrument": "^4.0.1", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", - "js-beautify": "^1.10.3", - "jsdoc": "^3.6.3", + "js-beautify": "^1.11.0", + "jsdoc": "^3.6.4", "mock-require": "^3.0.3", "nyc": "^15.0.1", "open-cli": "^6.0.1", "rimraf": "^3.0.2", - "sinon": "^9.0.1", + "sinon": "^9.0.2", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 6ee3ee08c0137d6ca3524b6736fbcff309c53619 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 15 Apr 2020 10:12:33 +0000 Subject: [PATCH 0346/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.0.0 to 2.0.1 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.0.1/CHANGELOG.md --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 17b4c5d8906..c5705172baa 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -758,9 +758,9 @@ } }, "@ui5/server": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.0.0.tgz", - "integrity": "sha512-SnF4dJ7M0i56FaB3ZLny7FsQ7kh7EfeNo+OP3iIqmBYGzgbw9DlX7M6wEJwEcwm7Z0hpDMeMHSm85d3G9eQ1hg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.0.1.tgz", + "integrity": "sha512-Ej3gDoMiPrFcALP4JfdRfU5ge8cSnqkU6Zs+aIys7J+lMAANc5QXlyPbZtluvdoIdwsf0MZL0bXEjGtOxXIgbQ==", "requires": { "@ui5/builder": "^2.0.0", "@ui5/fs": "^2.0.0", @@ -768,7 +768,7 @@ "compression": "^1.7.4", "connect-openui5": "^0.9.0", "cors": "^2.8.5", - "devcert-sanscache": "0.4.6", + "devcert-sanscache": "^0.4.8", "escape-html": "^1.0.3", "etag": "^1.8.1", "express": "^4.17.1", @@ -779,7 +779,7 @@ "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", - "spdy": "^4.0.1", + "spdy": "^4.0.2", "treeify": "^1.0.1", "yesno": "^0.3.1" } @@ -2640,9 +2640,9 @@ "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" }, "devcert-sanscache": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.6.tgz", - "integrity": "sha512-Itp0Y58HtMqZ1v8YHYmtXpSFN5l4NaBcy7vBQUFxy2hs/HpNVTrNEynF9E2N9SK0uqa0vn7LFL8Rwinm500Uag==", + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.8.tgz", + "integrity": "sha512-AcuD5yTpKdY5VnZdADR2wIZMOaEqNQnIEIxuvSzu7iAWLh/I/g3Bhm6FebUby1tfd6RGtPwN5/Gp0nNT67ZSRQ==", "requires": { "command-exists": "^1.2.2", "get-port": "^3.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index efbb7ae9fa3..f101952d476 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -100,7 +100,7 @@ "dependencies": { "@ui5/builder": "^2.0.0", "@ui5/logger": "^2.0.0", - "@ui5/server": "^2.0.0", + "@ui5/server": "^2.0.1", "ajv": "^6.12.0", "ajv-errors": "^1.0.1", "chalk": "^3.0.0", From 1b5fd623c0e648a44ca0d91fed781c4382bea4f2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 19 Apr 2020 02:20:38 +0000 Subject: [PATCH 0347/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 80 +++++++++++++++++------------- packages/project/package.json | 6 +-- 2 files changed, 48 insertions(+), 38 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c5705172baa..9f89609a190 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -692,9 +692,9 @@ "dev": true }, "@types/node": { - "version": "13.11.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.11.1.tgz", - "integrity": "sha512-eWQGP3qtxwL8FGneRrC5DwrJLGN4/dH1clNTuLfN81HCrxVtxRjygDTUoZJ5ASlDEeo0ppYFQjQIlXhtXpOn6g==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.0.tgz", + "integrity": "sha512-WE4IOAC6r/yBZss1oQGM5zs2D7RuKR6Q+w+X2SouPofnWn+LbCqClRyhO3ZE7Ix8nmFgo/oVuuE01cJT2XB13A==", "dev": true }, "@types/normalize-package-data": { @@ -847,13 +847,14 @@ } }, "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "version": "6.12.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.1.tgz", + "integrity": "sha512-AUh2mDlJDAnzSRaKkMHopTD1GKwC1ApUq8oCzdjAOM5tavncgqWU+JoRu5Y3iYY0Q/euiU+1LWp0/O/QY8CcHw==", "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", + "opencollective-postinstall": "^2.0.2", "uri-js": "^4.2.2" } }, @@ -1886,9 +1887,9 @@ } }, "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", "dev": true }, "cliui": { @@ -1992,9 +1993,9 @@ } }, "command-exists": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.8.tgz", - "integrity": "sha512-PM54PkseWbiiD/mMsbvW351/u+dafwTJ0ye2qB60G1aGQP9j3xK2gmMDc+R34L3nDtx4qMCitXT75mkbkGJDLw==" + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", + "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==" }, "commander": { "version": "2.20.3", @@ -3336,12 +3337,12 @@ } }, "esquery": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.2.0.tgz", - "integrity": "sha512-weltsSqdeWIX9G2qQZz7KlTRJdkkOCTPgLYJUz1Hacf48R4YOwGPHO3+ORfWedqJKbq5WQmsgK90n+pFLIKt/Q==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", "dev": true, "requires": { - "estraverse": "^5.0.0" + "estraverse": "^5.1.0" } }, "esrecurse": { @@ -3360,9 +3361,9 @@ } }, "estraverse": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz", - "integrity": "sha512-j3acdrMzqrxmJTNj5dbr1YbjacrYgAxVMeF0gK16E3j494mOe7xygM/ZLIguEQ0ETwAg2hlJCtHRGav+y0Ny5A==" + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", + "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==" }, "esutils": { "version": "2.0.3", @@ -6147,9 +6148,9 @@ } }, "yargs-parser": { - "version": "18.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", - "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -6174,10 +6175,14 @@ "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" }, "object-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.2.tgz", - "integrity": "sha512-Epah+btZd5wrrfjkJZq1AOB9O6OxUQto45hzFd7lXGrpHPGE0W1k+426yrZV+k6NJOzLNNW/nVsmZdIWsAqoOQ==", - "dev": true + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", + "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } }, "object-keys": { "version": "1.1.1", @@ -6359,9 +6364,9 @@ "dev": true }, "yargs-parser": { - "version": "18.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", - "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -6370,6 +6375,11 @@ } } }, + "opencollective-postinstall": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz", + "integrity": "sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw==" + }, "optionator": { "version": "0.8.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", @@ -7355,9 +7365,9 @@ } }, "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.16.1.tgz", + "integrity": "sha512-rmAglCSqWWMrrBv/XM6sW0NuRFiKViw/W4d9EbC4pt+49H8JwHy+mcGmALTEg504AUDcLTvb1T2q3E9AnmY+ig==", "requires": { "path-parse": "^1.0.6" } @@ -7471,9 +7481,9 @@ "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" }, "semver": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.2.2.tgz", - "integrity": "sha512-Zo84u6o2PebMSK3zjJ6Zp5wi8VnQZnEaCP13Ul/lt1ANsLACxnJxq4EEm1PY94/por1Hm9+7xpIswdS5AkieMA==" + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==" }, "semver-diff": { "version": "2.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index f101952d476..f82fb996ef1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "@ui5/builder": "^2.0.0", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.0.1", - "ajv": "^6.12.0", + "ajv": "^6.12.1", "ajv-errors": "^1.0.1", "chalk": "^3.0.0", "escape-string-regexp": "^2.0.0", @@ -114,8 +114,8 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", - "resolve": "^1.15.1", - "semver": "^7.2.2", + "resolve": "^1.16.1", + "semver": "^7.3.2", "string.prototype.matchall": "^4.0.2" }, "devDependencies": { From 8045b6a13e50c8d76c458c444673bcf677d53be8 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 23 Apr 2020 14:27:22 +0200 Subject: [PATCH 0348/1272] [ui5-project][FIX] Namespaces in API Reference (JSDoc) --- packages/project/index.js | 6 +++--- packages/project/lib/normalizer.js | 1 + packages/project/lib/translators/ui5Framework.js | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/project/index.js b/packages/project/index.js index 3cdf7eed911..7c449e55ae0 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -7,7 +7,7 @@ const modules = { projectPreprocessor: "./lib/projectPreprocessor", /** * @public - * @see module:@ui5/project.ui5Framework + * @alias module:@ui5/project.ui5Framework * @namespace */ ui5Framework: { @@ -16,7 +16,7 @@ const modules = { }, /** * @public - * @see module:@ui5/project.validation + * @alias module:@ui5/project.validation * @namespace */ validation: { @@ -25,7 +25,7 @@ const modules = { }, /** * @private - * @see module:@ui5/project.translators + * @alias module:@ui5/project.translators * @namespace */ translators: { diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index 2d3d2d4618f..e3af65ea100 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -21,6 +21,7 @@ const Normalizer = { * @param {string} [options.translatorName] Translator to use * @param {Object} [options.translatorOptions] Options to pass to translator * @param {Object} [options.frameworkOptions] Options to pass to the framework installer + * @param {string} [options.frameworkOptions.versionOverride] Framework version to use instead of the root projects framework * @returns {Promise} Promise resolving to tree object */ generateProjectTree: async function(options = {}) { diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 7399d3a863e..89dc0884430 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -119,7 +119,7 @@ module.exports = { * @public * @param {Object} tree * @param {Object} [options] - * @param {Object} [options.versionOverride] Framework version to use instead of the root projects framework + * @param {string} [options.versionOverride] Framework version to use instead of the root projects framework * version from the provided tree * @returns {Promise} Promise */ From ba282f816917984bc17d8e579ee670c314397062 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 28 Apr 2020 11:29:24 +0000 Subject: [PATCH 0349/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 121 +++++++++++++---------------- packages/project/package.json | 6 +- 2 files changed, 59 insertions(+), 68 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9f89609a190..a97cbd51026 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -692,9 +692,9 @@ "dev": true }, "@types/node": { - "version": "13.13.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.0.tgz", - "integrity": "sha512-WE4IOAC6r/yBZss1oQGM5zs2D7RuKR6Q+w+X2SouPofnWn+LbCqClRyhO3ZE7Ix8nmFgo/oVuuE01cJT2XB13A==", + "version": "13.13.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.4.tgz", + "integrity": "sha512-x26ur3dSXgv5AwKS0lNfbjpCakGIduWU1DU91Zz58ONRWrIKGunmZBNv4P7N+e27sJkiGDsw/3fT4AtsqQBrBA==", "dev": true }, "@types/normalize-package-data": { @@ -847,14 +847,13 @@ } }, "ajv": { - "version": "6.12.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.1.tgz", - "integrity": "sha512-AUh2mDlJDAnzSRaKkMHopTD1GKwC1ApUq8oCzdjAOM5tavncgqWU+JoRu5Y3iYY0Q/euiU+1LWp0/O/QY8CcHw==", + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", - "opencollective-postinstall": "^2.0.2", "uri-js": "^4.2.2" } }, @@ -1304,9 +1303,9 @@ "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==" }, "babel-plugin-dynamic-import-node": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", - "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", "dev": true, "requires": { "object.assign": "^4.1.0" @@ -1751,9 +1750,9 @@ } }, "chokidar": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", - "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.0.tgz", + "integrity": "sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==", "dev": true, "requires": { "anymatch": "~3.1.1", @@ -1763,7 +1762,7 @@ "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.3.0" + "readdirp": "~3.4.0" }, "dependencies": { "normalize-path": { @@ -2268,16 +2267,16 @@ } }, "coveralls": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.11.tgz", - "integrity": "sha512-LZPWPR2NyGKyaABnc49dR0fpeP6UqhvGq4B5nUrTQ1UBy55z96+ga7r+/ChMdMJUwBgyJDXBi88UBgz2rs9IiQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.1.0.tgz", + "integrity": "sha512-sHxOu2ELzW8/NC1UP5XVLbZDzO4S3VxfFye3XYCznopHy02YjNkHcj5bKaVw2O7hVaBdBjEdQGpie4II1mWhuQ==", "dev": true, "requires": { "js-yaml": "^3.13.1", "lcov-parse": "^1.0.0", "log-driver": "^1.2.7", "minimist": "^1.2.5", - "request": "^2.88.0" + "request": "^2.88.2" } }, "cross-env": { @@ -3578,9 +3577,9 @@ } }, "file-type": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.1.4.tgz", - "integrity": "sha512-1n6FczX8n73Y/cLjTiMboeTGHfm/i2AWk2oQE7m9a/G5YTCZHCEHEGr32thhLm3iQNUYzTKVQUcYcNHtOLwqgQ==", + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.2.0.tgz", + "integrity": "sha512-CAkX5G5jq8LIgFu++dpM3giMZadYdU+QVQoPLajjNboo8IzaR4cKpBCVEuz+suhd/vHqoAJeSWhEubKjRPQHJg==", "dev": true, "requires": { "readable-web-to-node-stream": "^2.0.0", @@ -3808,9 +3807,9 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", "dev": true, "optional": true }, @@ -4659,9 +4658,9 @@ } }, "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", "dev": true }, "is-regex": { @@ -5365,9 +5364,9 @@ } }, "make-dir": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.2.tgz", - "integrity": "sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "requires": { "semver": "^6.0.0" }, @@ -5604,16 +5603,16 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==" + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" }, "mime-types": { - "version": "2.1.26", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", - "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "requires": { - "mime-db": "1.43.0" + "mime-db": "1.44.0" } }, "mimic-fn": { @@ -6375,11 +6374,6 @@ } } }, - "opencollective-postinstall": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz", - "integrity": "sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw==" - }, "optionator": { "version": "0.8.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", @@ -7164,12 +7158,12 @@ "dev": true }, "readdirp": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", - "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", + "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", "dev": true, "requires": { - "picomatch": "^2.0.7" + "picomatch": "^2.2.1" } }, "redent": { @@ -7365,9 +7359,9 @@ } }, "resolve": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.16.1.tgz", - "integrity": "sha512-rmAglCSqWWMrrBv/XM6sW0NuRFiKViw/W4d9EbC4pt+49H8JwHy+mcGmALTEg504AUDcLTvb1T2q3E9AnmY+ig==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "requires": { "path-parse": "^1.0.6" } @@ -7430,13 +7424,10 @@ } }, "run-async": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", - "integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true }, "run-parallel": { "version": "1.1.9", @@ -7681,9 +7672,9 @@ } }, "source-map-support": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", - "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -7729,9 +7720,9 @@ } }, "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==" + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" }, "spdx-expression-parse": { "version": "3.0.0", @@ -8321,9 +8312,9 @@ } }, "terser": { - "version": "4.6.11", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.11.tgz", - "integrity": "sha512-76Ynm7OXUG5xhOpblhytE7X58oeNSmC8xnNhjWVo8CksHit0U0kO4hfNbPrrYwowLWFgM2n9L176VNx2QaHmtA==", + "version": "4.6.12", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.12.tgz", + "integrity": "sha512-fnIwuaKjFPANG6MAixC/k1TDtnl1YlPLUlLVIxxGZUn1gfUx2+l3/zGNB72wya+lgsb50QBi2tUV75RiODwnww==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", diff --git a/packages/project/package.json b/packages/project/package.json index f82fb996ef1..f473aee2f97 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "@ui5/builder": "^2.0.0", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.0.1", - "ajv": "^6.12.1", + "ajv": "^6.12.2", "ajv-errors": "^1.0.1", "chalk": "^3.0.0", "escape-string-regexp": "^2.0.0", @@ -114,14 +114,14 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", - "resolve": "^1.16.1", + "resolve": "^1.17.0", "semver": "^7.3.2", "string.prototype.matchall": "^4.0.2" }, "devDependencies": { "ava": "^2.4.0", "chokidar-cli": "^2.1.0", - "coveralls": "^3.0.11", + "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", "eslint": "^5.16.0", From cdcb4d7856ec6f723949f8ec01186e7b44c83f0b Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 28 Apr 2020 11:32:24 +0000 Subject: [PATCH 0350/1272] [ui5-project]Bump chalk from 3.0.0 to 4.0.0 Bumps [chalk](https://github.com/chalk/chalk) from 3.0.0 to 4.0.0. - [Release notes](https://github.com/chalk/chalk/releases) - [Commits](https://github.com/chalk/chalk/compare/v3.0.0...v4.0.0) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a97cbd51026..977468c56ac 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1712,9 +1712,9 @@ } }, "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz", + "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" diff --git a/packages/project/package.json b/packages/project/package.json index f473aee2f97..ddf2cfc175e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "@ui5/server": "^2.0.1", "ajv": "^6.12.2", "ajv-errors": "^1.0.1", - "chalk": "^3.0.0", + "chalk": "^4.0.0", "escape-string-regexp": "^2.0.0", "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", From b086a1b4e07ac47713f1f07f5256f42d7c02a63f Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 29 Apr 2020 08:58:39 +0200 Subject: [PATCH 0351/1272] [ui5-project]Bump ava from 2.4.0 to 3.8.1 (#317) * Bump ava from 2.4.0 to 3.8.1 Bumps [ava](https://github.com/avajs/ava) from 2.4.0 to 3.8.1. - [Release notes](https://github.com/avajs/ava/releases) - [Commits](https://github.com/avajs/ava/compare/v2.4.0...v3.8.1) Signed-off-by: dependabot-preview[bot] * Migrate to AVA 3 Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Matthias Osswald --- packages/project/package-lock.json | 1868 ++++------------- packages/project/package.json | 7 +- packages/project/test/lib/extensions.js | 12 +- .../project/test/lib/projectPreprocessor.js | 10 +- .../translators/ui5Framework.integration.js | 10 +- .../test/lib/translators/ui5Framework.js | 4 +- .../test/lib/ui5framework/AbstractResolver.js | 26 +- .../test/lib/ui5framework/npm/Installer.js | 12 +- 8 files changed, 453 insertions(+), 1496 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 977468c56ac..538f76d0310 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -4,35 +4,6 @@ "lockfileVersion": 1, "requires": true, "dependencies": { - "@ava/babel-plugin-throws-helper": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-plugin-throws-helper/-/babel-plugin-throws-helper-4.0.0.tgz", - "integrity": "sha512-3diBLIVBPPh3j4+hb5lo0I1D+S/O/VDJPI4Y502apBxmwEqjyXG4gTSPFUlm41sSZeZzMarT/Gzovw9kV7An0w==", - "dev": true - }, - "@ava/babel-preset-stage-4": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-stage-4/-/babel-preset-stage-4-4.0.0.tgz", - "integrity": "sha512-lZEV1ZANzfzSYBU6WHSErsy7jLPbD1iIgAboASPMcKo7woVni5/5IKWeT0RxC8rY802MFktur3OKEw2JY1Tv2w==", - "dev": true, - "requires": { - "@babel/plugin-proposal-async-generator-functions": "^7.2.0", - "@babel/plugin-proposal-dynamic-import": "^7.5.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/plugin-transform-modules-commonjs": "^7.5.0" - } - }, - "@ava/babel-preset-transform-test-files": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@ava/babel-preset-transform-test-files/-/babel-preset-transform-test-files-6.0.0.tgz", - "integrity": "sha512-8eKhFzZp7Qcq1VLfoC75ggGT8nQs9q8fIxltU47yCB7Wi7Y8Qf6oqY1Bm0z04fIec24vEgr0ENhDHEOUGVDqnA==", - "dev": true, - "requires": { - "@ava/babel-plugin-throws-helper": "^4.0.0", - "babel-plugin-espower": "^3.0.1" - } - }, "@babel/code-frame": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", @@ -114,26 +85,6 @@ } } }, - "@babel/helper-annotate-as-pure": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz", - "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.8.tgz", - "integrity": "sha512-LYVPdwkrQEiX9+1R29Ld/wTrmQu1SSKYnuOk3g0CkcZMA1p0gsNxJFj/3gBdaJ7Cg0Fnek5z0DsMULePP7Lrqg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-regex": "^7.8.3", - "regexpu-core": "^4.7.0" - } - }, "@babel/helper-function-name": { "version": "7.9.5", "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz", @@ -196,34 +147,6 @@ "@babel/types": "^7.8.3" } }, - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - }, - "@babel/helper-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.8.3.tgz", - "integrity": "sha512-BWt0QtYv/cg/NecOAZMdcn/waj/5P26DR4mVLXfFtDokSR6fyuG0Pj+e2FqtSME+MqED1khnSMulkmGl8qWiUQ==", - "dev": true, - "requires": { - "lodash": "^4.17.13" - } - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz", - "integrity": "sha512-kgwDmw4fCg7AVgS4DukQR/roGp+jP+XluJE5hsRZwxCYGg+Rv9wSGErDWhlI90FODdYfd4xG4AQRiMDjjN0GzA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-wrap-function": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, "@babel/helper-replace-supers": { "version": "7.8.6", "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz", @@ -260,18 +183,6 @@ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz", "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==" }, - "@babel/helper-wrap-function": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz", - "integrity": "sha512-LACJrbUET9cQDzb6kG7EeD7+7doC3JNvUgTEQOx2qaO1fKlzE/Bf05qs9w1oXQMmXlPO65lC3Tq9S6gZpTErEQ==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, "@babel/helpers": { "version": "7.9.2", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.2.tgz", @@ -349,86 +260,6 @@ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==" }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz", - "integrity": "sha512-NZ9zLv848JsV3hs8ryEh7Uaz/0KsmPLqv0+PdkDJL1cJy0K4kOCFa8zc1E3mp+RHPQcpdfb/6GovEsW4VDrOMw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-remap-async-to-generator": "^7.8.3", - "@babel/plugin-syntax-async-generators": "^7.8.0" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz", - "integrity": "sha512-NyaBbyLFXFLT9FP+zk0kYlUlA8XtCUbehs67F0nnEg7KICgMc2mNkIeu9TYhKzyXMkrapZFwAhXLdnt4IYHy1w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-dynamic-import": "^7.8.0" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-0gkX7J7E+AtAw9fcwlVQj8peP61qhdg/89D5swOkjYbkboA2CVckn3kiyum1DE0wskGb7KJJxBdyEBApDLLVdw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz", - "integrity": "sha512-kLs1j9Nn4MQoBYdRXH6AeaXMbEJFaFu/v1nQkvib6QzTj8MZI5OQzqmD83/2jEM1z0DLilra5aWO5YpyC0ALIw==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.9.0.tgz", - "integrity": "sha512-qzlCrLnKqio4SlgJ6FMMLBe4bySNis8DFn1VkGmOcxG9gqEyPIOzeQrA//u0HAKrWpJlpZbZMPB1n/OPa4+n8g==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-simple-access": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" - } - }, "@babel/template": { "version": "7.8.6", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", @@ -820,6 +651,12 @@ "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", "dev": true }, + "acorn-walk": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.1.1.tgz", + "integrity": "sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ==", + "dev": true + }, "agent-base": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", @@ -911,23 +748,6 @@ } } }, - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - }, - "dependencies": { - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } - } - }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -997,12 +817,6 @@ "sprintf-js": "~1.0.2" } }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true - }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -1019,10 +833,10 @@ "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" }, - "array-uniq": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-2.1.0.tgz", - "integrity": "sha512-bdHxtev7FN6+MXI1YFW0Q8mQ8dTJc2S8AMfju+ZR77pbg2yAdVyDlwkaUI7Har0LyOMRFPHrJ9lYdyjZZswdlQ==", + "arrgv": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/arrgv/-/arrgv-1.0.2.tgz", + "integrity": "sha512-a4eg4yhp7mmruZDQFqVMlxNRFGi/i1r87pt8SDHy0/I8PqSXoUTlWZRdAZo0VXgvEARcujbtTk8kiZRi1uDGRw==", "dev": true }, "arrify": { @@ -1066,144 +880,101 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-2.4.0.tgz", - "integrity": "sha512-CQWtzZZZeU2g4StojRv6MO9RIRi4sLxGSB9+3C3hv0ttUEG1tkJLTLyrBQeFS4WEeK12Z4ovE3f2iPVhSy8elA==", + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.8.1.tgz", + "integrity": "sha512-OPWrTxcf1EbtAaGGFQPLbx4AaVqPrFMumKOKn2SzIRo+RTKb33lF2aoVnWqBeZaJ68uSc9R6jqIE7qkG6O33uQ==", "dev": true, "requires": { - "@ava/babel-preset-stage-4": "^4.0.0", - "@ava/babel-preset-transform-test-files": "^6.0.0", - "@babel/core": "^7.6.0", - "@babel/generator": "^7.6.0", "@concordance/react": "^2.0.0", - "ansi-escapes": "^4.2.1", - "ansi-styles": "^4.1.0", - "arr-flatten": "^1.1.0", - "array-union": "^2.1.0", - "array-uniq": "^2.1.0", + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1", + "ansi-styles": "^4.2.1", + "arrgv": "^1.0.2", "arrify": "^2.0.1", - "bluebird": "^3.5.5", - "chalk": "^2.4.2", - "chokidar": "^3.0.2", - "chunkd": "^1.0.0", + "callsites": "^3.1.0", + "chalk": "^4.0.0", + "chokidar": "^3.4.0", + "chunkd": "^2.0.1", + "ci-info": "^2.0.0", "ci-parallel-vars": "^1.0.0", - "clean-stack": "^2.2.0", "clean-yaml-object": "^0.1.0", "cli-cursor": "^3.1.0", - "cli-truncate": "^2.0.0", + "cli-truncate": "^2.1.0", "code-excerpt": "^2.1.1", - "common-path-prefix": "^1.0.0", + "common-path-prefix": "^3.0.0", "concordance": "^4.0.0", - "convert-source-map": "^1.6.0", + "convert-source-map": "^1.7.0", "currently-unhandled": "^0.4.1", "debug": "^4.1.1", - "del": "^4.1.1", - "dot-prop": "^5.1.0", - "emittery": "^0.4.1", - "empower-core": "^1.2.0", + "del": "^5.1.0", + "emittery": "^0.6.0", "equal-length": "^1.0.0", - "escape-string-regexp": "^2.0.0", - "esm": "^3.2.25", - "figures": "^3.0.0", - "find-up": "^4.1.0", - "get-port": "^5.0.0", - "globby": "^10.0.1", + "figures": "^3.2.0", + "globby": "^11.0.0", "ignore-by-default": "^1.0.0", "import-local": "^3.0.2", "indent-string": "^4.0.0", - "is-ci": "^2.0.0", "is-error": "^2.2.2", - "is-observable": "^2.0.0", "is-plain-object": "^3.0.0", - "is-promise": "^2.1.0", + "is-promise": "^3.0.0", "lodash": "^4.17.15", - "loud-rejection": "^2.1.0", - "make-dir": "^3.0.0", - "matcher": "^2.0.0", + "matcher": "^3.0.0", "md5-hex": "^3.0.1", - "meow": "^5.0.0", - "micromatch": "^4.0.2", + "mem": "^6.1.0", "ms": "^2.1.2", - "observable-to-promise": "^1.0.0", - "ora": "^3.4.0", - "package-hash": "^4.0.0", + "ora": "^4.0.4", + "p-map": "^4.0.0", + "picomatch": "^2.2.2", "pkg-conf": "^3.1.0", - "plur": "^3.1.1", - "pretty-ms": "^5.0.0", - "require-precompiled": "^0.1.0", + "plur": "^4.0.0", + "pretty-ms": "^6.0.1", + "read-pkg": "^5.2.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", - "source-map-support": "^0.5.13", - "stack-utils": "^1.0.2", - "strip-ansi": "^5.2.0", - "strip-bom-buf": "^2.0.0", + "source-map-support": "^0.5.19", + "stack-utils": "^2.0.1", + "strip-ansi": "^6.0.0", "supertap": "^1.0.0", - "supports-color": "^7.0.0", + "temp-dir": "^2.0.0", "trim-off-newlines": "^1.0.1", - "trim-right": "^1.0.1", - "unique-temp-dir": "^1.0.0", - "update-notifier": "^3.0.1", - "write-file-atomic": "^3.0.0" + "update-notifier": "^4.1.0", + "write-file-atomic": "^3.0.3", + "yargs": "^15.3.1" }, "dependencies": { + "acorn": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", + "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", + "dev": true + }, "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz", + "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", "dev": true, "requires": { - "color-name": "1.1.3" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" } }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", @@ -1223,32 +994,16 @@ "path-exists": "^4.0.0" } }, - "get-port": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", - "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, - "globby": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", - "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", - "slash": "^3.0.0" - } - }, - "has-flag": { + "is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "locate-path": { @@ -1281,13 +1036,60 @@ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" + } + }, + "temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "dev": true + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", + "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", + "dev": true, + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.1" } } } @@ -1302,38 +1104,6 @@ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==" }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-espower": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-espower/-/babel-plugin-espower-3.0.1.tgz", - "integrity": "sha512-Ms49U7VIAtQ/TtcqRbD6UBmJBUCSxiC3+zPc+eGqxKUIFO1lTshyEDRUjhoAbd2rWfwYf3cZ62oXozrd8W6J0A==", - "dev": true, - "requires": { - "@babel/generator": "^7.0.0", - "@babel/parser": "^7.0.0", - "call-matcher": "^1.0.0", - "core-js": "^2.0.0", - "espower-location-detector": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.1.1" - }, - "dependencies": { - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - } - } - }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", @@ -1386,138 +1156,70 @@ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" - } - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" - }, - "boxen": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-3.2.0.tgz", - "integrity": "sha512-cU4J/+NodM3IHdSL2yN8bqYqnmlBTidDR4RC7nJs61ZmtGz8VZzM3HLQX0zY5mrSmPtR3xWwsq2jOUQqFZN8+A==", - "dev": true, - "requires": { - "ansi-align": "^3.0.0", - "camelcase": "^5.3.1", - "chalk": "^2.4.2", - "cli-boxes": "^2.2.0", - "string-width": "^3.0.0", - "term-size": "^1.2.0", - "type-fest": "^0.3.0", - "widest-line": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + } + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "boxen": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", + "integrity": "sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==", + "dev": true, + "requires": { + "ansi-align": "^3.0.0", + "camelcase": "^5.3.1", + "chalk": "^3.0.0", + "cli-boxes": "^2.2.0", + "string-width": "^4.1.0", + "term-size": "^2.1.0", + "type-fest": "^0.8.1", + "widest-line": "^3.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "ansi-regex": "^5.0.0" } }, "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true } } @@ -1649,32 +1351,6 @@ "write-file-atomic": "^3.0.0" } }, - "call-matcher": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.1.0.tgz", - "integrity": "sha512-IoQLeNwwf9KTNbtSA7aEBb1yfDbdnzwjCetjkC8io5oGeOmK2CBNdg0xr+tadRYKO0p7uQyZzvon0kXlZbvGrw==", - "dev": true, - "requires": { - "core-js": "^2.0.0", - "deep-equal": "^1.0.0", - "espurify": "^1.6.0", - "estraverse": "^4.0.0" - }, - "dependencies": { - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - } - } - }, - "call-signature": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/call-signature/-/call-signature-0.0.2.tgz", - "integrity": "sha1-qEq8glpV70yysCi9dOIFpluaSZY=", - "dev": true - }, "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -1682,22 +1358,11 @@ "dev": true }, "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -1791,9 +1456,9 @@ "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" }, "chunkd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/chunkd/-/chunkd-1.0.0.tgz", - "integrity": "sha512-xx3Pb5VF9QaqCotolyZ1ywFBgyuJmu6+9dLiqBxgelEse9Xsr3yUlpoX3O4Oh11M00GT2kYMsRByTKIMJW2Lkg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/chunkd/-/chunkd-2.0.1.tgz", + "integrity": "sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==", "dev": true }, "ci-info": { @@ -2008,9 +1673,9 @@ "dev": true }, "common-path-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-1.0.0.tgz", - "integrity": "sha1-zVL28HEuC6q5fW+XModPIvR3UsA=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", "dev": true }, "commondir": { @@ -2104,60 +1769,17 @@ } }, "configstore": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-4.0.0.tgz", - "integrity": "sha512-CmquAXFBocrzaSM8mtGPMM/HiWmyIpr4CcJl/rgY2uCObZ/S7cKU0silxslqJejl+t/T9HS8E0PUNQD81JGUEQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", "dev": true, "requires": { - "dot-prop": "^4.1.0", + "dot-prop": "^5.2.0", "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "dependencies": { - "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", - "dev": true, - "requires": { - "is-obj": "^1.0.0" - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - }, - "write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", - "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - } + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" } }, "connect-openui5": { @@ -2246,12 +1868,6 @@ } } }, - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", - "dev": true - }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", @@ -2331,39 +1947,10 @@ } } }, - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "dependencies": { - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - } - } - }, "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", "dev": true }, "css": { @@ -2479,20 +2066,6 @@ "mimic-response": "^1.0.0" } }, - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" - } - }, "deep-extend": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", @@ -2553,63 +2126,44 @@ } }, "del": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", - "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/del/-/del-5.1.0.tgz", + "integrity": "sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==", "dev": true, "requires": { - "@types/glob": "^7.1.1", - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" + "globby": "^10.0.1", + "graceful-fs": "^4.2.2", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.1", + "p-map": "^3.0.0", + "rimraf": "^3.0.0", + "slash": "^3.0.0" }, "dependencies": { - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", "dev": true, "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" } }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", "dev": true, "requires": { - "glob": "^7.1.3" + "aggregate-error": "^3.0.0" } } } @@ -2821,9 +2375,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "emittery": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.4.1.tgz", - "integrity": "sha512-r4eRSeStEGf6M5SKdrQhhLK5bOwOBxQhIE3YSTnZE3GpKiLfnnhE+tPtrJE79+eDJgm39BM6LSoI8SCx4HbwlQ==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.6.0.tgz", + "integrity": "sha512-6EMRGr9KzYWp8DzHFZsKVZBsMO6QhAeHMeHND8rhyBNCHKMLpgW9tZv40bwN3rAIKRS5CxcK8oLRKUJSB9h7yQ==", "dev": true }, "emoji-regex": { @@ -2832,16 +2386,6 @@ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, - "empower-core": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/empower-core/-/empower-core-1.2.0.tgz", - "integrity": "sha512-g6+K6Geyc1o6FdXs9HwrXleCFan7d66G5xSCfSF7x1mJDCes6t0om9lFQG3zOrzh3Bkb/45N0cZ5Gqsf7YrzGQ==", - "dev": true, - "requires": { - "call-signature": "0.0.2", - "core-js": "^2.0.0" - } - }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -3010,6 +2554,12 @@ "es6-symbol": "^3.1.1" } }, + "escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "dev": true + }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -3284,32 +2834,6 @@ "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", "dev": true }, - "esm": { - "version": "3.2.25", - "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", - "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", - "dev": true - }, - "espower-location-detector": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/espower-location-detector/-/espower-location-detector-1.0.0.tgz", - "integrity": "sha1-oXt+zFnTDheeK+9z+0E3cEyzMbU=", - "dev": true, - "requires": { - "is-url": "^1.2.1", - "path-is-absolute": "^1.0.0", - "source-map": "^0.5.0", - "xtend": "^4.0.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } - } - }, "espree": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", @@ -3326,15 +2850,6 @@ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, - "espurify": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.1.tgz", - "integrity": "sha512-ZDko6eY/o+D/gHCWyHTU85mKDgYcS4FJj7S+YD6WIInm7GQ6AnOjmcL4+buFV/JOztVLELi/7MmuGU5NHta0Mg==", - "dev": true, - "requires": { - "core-js": "^2.0.0" - } - }, "esquery": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", @@ -3394,35 +2909,6 @@ "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", "dev": true }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "dependencies": { - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - } - } - }, "express": { "version": "4.17.1", "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", @@ -3904,12 +3390,12 @@ } }, "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.0.1.tgz", + "integrity": "sha512-5HqUqdhkEovj2Of/ms3IeS/EekcO54ytHRLV4PEY2rhRwrHXLQjeVEES0Lhka0xwNDtGYn58wyC4s5+MHsOO6A==", "dev": true, "requires": { - "ini": "^1.3.4" + "ini": "^1.3.5" } }, "globals": { @@ -4489,15 +3975,9 @@ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" }, "irregular-plurals": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-2.0.0.tgz", - "integrity": "sha512-Y75zBYLkh0lJ9qxeHlMjQ7bSbyiSqNW/UOPWDmzC7cXskL1hekSITh1Oc6JV0XCWWZ9DE8VYSB71xocLk3gmGw==", - "dev": true - }, - "is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.2.0.tgz", + "integrity": "sha512-YqTdPLfwP7YFN0SsD3QUVCkm9ZG2VzOXv3DOrw5G5mkMbVwptTwVcFv7/C0vOpBmgTxAeTG19XpUs1E522LW9Q==", "dev": true }, "is-arrayish": { @@ -4567,30 +4047,25 @@ } }, "is-installed-globally": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", - "dev": true, - "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" - }, - "dependencies": { - "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - } + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", + "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", + "dev": true, + "requires": { + "global-dirs": "^2.0.1", + "is-path-inside": "^3.0.1" } }, + "is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true + }, "is-npm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-3.0.0.tgz", - "integrity": "sha512-wsigDr1Kkschp2opC4G3yA6r9EgVA6NjRpWzIi9axXqeIaAATPRJc4uLujXe3Nd9uO8KoDyA4MD6aZSeXTADhA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", + "integrity": "sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig==", "dev": true }, "is-number": { @@ -4612,35 +4087,17 @@ "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", "dev": true }, - "is-observable": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-2.0.0.tgz", - "integrity": "sha512-fhBZv3eFKUbyHXZ1oHujdo2tZ+CNbdpdzzlENgCGZUC8keoGxUew2jYFLYcUB4qo7LDD03o4KK11m/QYD7kEjg==", - "dev": true - }, "is-path-cwd": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", "dev": true }, - "is-path-in-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", - "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", - "dev": true, - "requires": { - "is-path-inside": "^2.1.0" - } - }, "is-path-inside": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", - "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", - "dev": true, - "requires": { - "path-is-inside": "^1.0.2" - } + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", + "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", + "dev": true }, "is-plain-obj": { "version": "1.1.0", @@ -4658,9 +4115,9 @@ } }, "is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-3.0.0.tgz", + "integrity": "sha512-aTHJ4BvETyySzLhguH+7sL4b8765eecqq7ZrHVuhZr3FjCL/IV+LsvisEeH+9d0AkChYny3ad1KEL+mKy4ot7A==", "dev": true }, "is-regex": { @@ -4690,18 +4147,6 @@ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" }, - "is-url": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", - "dev": true - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", @@ -5114,15 +4559,16 @@ } }, "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", + "graceful-fs": "^4.1.15", "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" }, "dependencies": { "parse-json": { @@ -5135,10 +4581,10 @@ "json-parse-better-errors": "^1.0.1" } }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", "dev": true } } @@ -5273,12 +4719,12 @@ "dev": true }, "log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", "dev": true, "requires": { - "chalk": "^2.0.1" + "chalk": "^2.4.2" }, "dependencies": { "ansi-styles": { @@ -5339,16 +4785,6 @@ } } }, - "loud-rejection": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-2.2.0.tgz", - "integrity": "sha512-S0FayMXku80toa5sZ6Ro4C+s+EtFDCsyJNG/AzFMfX3AxD5Si4dZsgzm/kKnbOxHl5Cv8jBlno8+3XYIh2pNjQ==", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.2" - } - }, "lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", @@ -5396,11 +4832,14 @@ "ssri": "^6.0.0" } }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } }, "markdown-it": { "version": "10.0.0", @@ -5432,12 +4871,20 @@ "integrity": "sha512-EGwzEeCcLniFX51DhTpmTom+dSA/MG/OBUDjnWtHbEnjAH180VzUeAw+oE4+Zv+CoYBWyRlYOTR0N8SO9R1PVw==" }, "matcher": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-2.1.0.tgz", - "integrity": "sha512-o+nZr+vtJtgPNklyeUKkkH42OsK8WAfdgaJE2FNxcjLPg+5QbeEoT6vRj8Xq/iv18JlQ9cmKsEu0b94ixWf1YQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", "dev": true, "requires": { - "escape-string-regexp": "^2.0.0" + "escape-string-regexp": "^4.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + } } }, "md5-hex": { @@ -5465,111 +4912,21 @@ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, - "meow": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", - "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" + "mem": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-6.1.0.tgz", + "integrity": "sha512-RlbnLQgRHk5lwqTtpEkBTQ2ll/CG/iB+J4Hy2Wh97PjgZgXgWJWrFF+XXujh3UUVLvR4OOTgZzcWMMwnehlEUg==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.3", + "mimic-fn": "^3.0.0" }, "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { + "mimic-fn": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.0.0.tgz", + "integrity": "sha512-PiVO95TKvhiwgSwg1IdLYlCTdul38yZxZMIcnDSFIBUm4BNZha2qpQ4GpJ++15bHoKDtrW2D69lMfFwdFYtNZQ==", "dev": true - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - } } } }, @@ -5651,24 +5008,6 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", - "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - }, - "dependencies": { - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - } - } - }, "minipass": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", @@ -5951,15 +5290,6 @@ } } }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, "npmlog": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", @@ -6173,16 +5503,6 @@ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" }, - "object-is": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", - "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", @@ -6199,16 +5519,6 @@ "object-keys": "^1.0.11" } }, - "observable-to-promise": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/observable-to-promise/-/observable-to-promise-1.0.0.tgz", - "integrity": "sha512-cqnGUrNsE6vdVDTPAX9/WeVzwy/z37vdxupdQXU8vgTXRFH72KCZiZga8aca2ulRPIeem8W3vW9rQHBwfIl2WA==", - "dev": true, - "requires": { - "is-observable": "^2.0.0", - "symbol-observable": "^1.0.4" - } - }, "obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", @@ -6388,122 +5698,40 @@ } }, "ora": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-3.4.0.tgz", - "integrity": "sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/ora/-/ora-4.0.4.tgz", + "integrity": "sha512-77iGeVU1cIdRhgFzCK8aw1fbtT1B/iZAvWjS+l/o1x0RShMgxHUZaD2yDpWsNCPwXg9z1ZA78Kbdvr8kBmG/Ww==", "dev": true, "requires": { - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-spinners": "^2.0.0", - "log-symbols": "^2.2.0", - "strip-ansi": "^5.2.0", + "chalk": "^3.0.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.2.0", + "is-interactive": "^1.0.0", + "log-symbols": "^3.0.0", + "mute-stream": "0.0.8", + "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "ansi-regex": "^5.0.0" } } } @@ -6533,10 +5761,10 @@ "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", "dev": true }, - "p-finally": { + "p-defer": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", "dev": true }, "p-limit": { @@ -6552,15 +5780,18 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "requires": { - "p-limit": "^2.0.0" + "p-limit": "^2.0.0" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" } }, - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true - }, "p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", @@ -6758,21 +5989,6 @@ "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, "pkg-conf": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", @@ -6781,37 +5997,6 @@ "requires": { "find-up": "^3.0.0", "load-json-file": "^5.2.0" - }, - "dependencies": { - "load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true - } } }, "pkg-dir": { @@ -6860,12 +6045,12 @@ } }, "plur": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/plur/-/plur-3.1.1.tgz", - "integrity": "sha512-t1Ax8KUvV3FFII8ltczPn2tJdjqbd1sIzu6t4JL7nQ3EyeL/lTrj5PWKb06ic5/6XYDr65rQ4uzQEGN70/6X5w==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/plur/-/plur-4.0.0.tgz", + "integrity": "sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg==", "dev": true, "requires": { - "irregular-plurals": "^2.0.0" + "irregular-plurals": "^3.2.0" } }, "portscanner": { @@ -6909,9 +6094,9 @@ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" }, "pretty-ms": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-5.1.0.tgz", - "integrity": "sha512-4gaK1skD2gwscCfkswYQRmddUb2GJZtzDGRjHWadVHtK/DIKFufa12MvES6/xu1tVbUYeia5bmLcwJtZJQUqnw==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-6.0.1.tgz", + "integrity": "sha512-ke4njoVmlotekHlHyCZ3wI/c5AMT8peuHs8rKJqekj/oR5G8lND2dVpicFlUz5cbZgE290vvkMuDwfj/OcW1kw==", "dev": true, "requires": { "parse-ms": "^2.1.0" @@ -7020,17 +6205,20 @@ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, + "pupa": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.0.1.tgz", + "integrity": "sha512-hEJH0s8PXLY/cdXh66tNEQGndDrIKNqNC5xmrysZy3i5C3oEoLna7YAOad+7u125+zH1HNXUmGEkrhb3c2VriA==", + "dev": true, + "requires": { + "escape-goat": "^2.0.0" + } + }, "qs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", - "dev": true - }, "random-int": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", @@ -7166,39 +6354,6 @@ "picomatch": "^2.2.1" } }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - }, - "dependencies": { - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "dev": true - } - } - }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", - "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", - "dev": true, - "requires": { - "regenerate": "^1.4.0" - } - }, "regexp.prototype.flags": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", @@ -7214,20 +6369,6 @@ "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", "dev": true }, - "regexpu-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", - "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", - "dev": true, - "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" - } - }, "registry-auth-token": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz", @@ -7246,29 +6387,6 @@ "rc": "^1.2.8" } }, - "regjsgen": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", - "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", - "dev": true - }, - "regjsparser": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", - "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - } - } - }, "release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", @@ -7339,12 +6457,6 @@ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "dev": true }, - "require-precompiled": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz", - "integrity": "sha1-WhtS63Dr7UPrmC6XTIWrWVceVvo=", - "dev": true - }, "requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", @@ -7477,18 +6589,18 @@ "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==" }, "semver-diff": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", "dev": true, "requires": { - "semver": "^5.0.3" + "semver": "^6.3.0" }, "dependencies": { "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } } @@ -7833,10 +6945,13 @@ } }, "stack-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", - "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", - "dev": true + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-BvBTnHGm8boe+HiJFqP19ywEsGlfQAKqW78pbfvUuzCbUuxPPUyLrH5dYFY+Xn9IpLY3b5ZmMcl8jAqXB4wddg==", + "dev": true, + "requires": { + "escape-string-regexp": "^2.0.0" + } }, "statuses": { "version": "1.5.0", @@ -7940,27 +7055,6 @@ "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true }, - "strip-bom-buf": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-2.0.0.tgz", - "integrity": "sha512-gLFNHucd6gzb8jMsl5QmZ3QgnUJmp7qn4uUSHNwEXumAp7YizoGYw19ZUVfuq4aBOQUtyn2k8X/CwzWB73W2lQ==", - "dev": true, - "requires": { - "is-utf8": "^0.2.1" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - }, "strip-json-comments": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz", @@ -8045,12 +7139,6 @@ "has-flag": "^4.0.0" } }, - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "dev": true - }, "table": { "version": "5.4.6", "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", @@ -8303,13 +7391,10 @@ } }, "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dev": true, - "requires": { - "execa": "^0.7.0" - } + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.0.tgz", + "integrity": "sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==", + "dev": true }, "terser": { "version": "4.6.12", @@ -8416,24 +7501,12 @@ "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==" }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - }, "trim-off-newlines": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", "dev": true }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, "tslib": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", @@ -8505,45 +7578,11 @@ "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, - "uid2": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz", - "integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=", - "dev": true - }, "underscore": { "version": "1.10.2", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.10.2.tgz", "integrity": "sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg==" }, - "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", - "dev": true - }, "unique-filename": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", @@ -8561,34 +7600,12 @@ } }, "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", - "dev": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "unique-temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-temp-dir/-/unique-temp-dir-1.0.0.tgz", - "integrity": "sha1-bc6VsmgcoAPuv7MEpBX5y6vMU4U=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", "dev": true, "requires": { - "mkdirp": "^0.5.1", - "os-tmpdir": "^1.0.1", - "uid2": "0.0.3" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - } + "crypto-random-string": "^2.0.0" } }, "unpipe": { @@ -8597,81 +7614,24 @@ "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, "update-notifier": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-3.0.1.tgz", - "integrity": "sha512-grrmrB6Zb8DUiyDIaeRTBCkgISYUgETNe7NglEbVsrLWXeESnlCSP50WfRSj/GmzMPl6Uchj24S/p80nP/ZQrQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.0.tgz", + "integrity": "sha512-w3doE1qtI0/ZmgeoDoARmI5fjDoT93IfKgEGqm26dGUOh8oNpaSTsGNdYRN/SjOuo10jcJGwkEL3mroKzktkew==", "dev": true, "requires": { - "boxen": "^3.0.0", - "chalk": "^2.0.1", - "configstore": "^4.0.0", + "boxen": "^4.2.0", + "chalk": "^3.0.0", + "configstore": "^5.0.1", "has-yarn": "^2.1.0", "import-lazy": "^2.1.0", "is-ci": "^2.0.0", - "is-installed-globally": "^0.1.0", - "is-npm": "^3.0.0", + "is-installed-globally": "^0.3.1", + "is-npm": "^4.0.0", "is-yarn-global": "^0.3.0", "latest-version": "^5.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "pupa": "^2.0.1", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" } }, "uri-js": { @@ -8789,43 +7749,44 @@ } }, "widest-line": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", - "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", "dev": true, "requires": { - "string-width": "^2.1.1" + "string-width": "^4.0.0" }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^5.0.0" } } } @@ -8948,9 +7909,9 @@ } }, "xdg-basedir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, "xml2js": { @@ -9068,12 +8029,13 @@ } }, "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, "requires": { - "camelcase": "^4.1.0" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } }, "yazl": { diff --git a/packages/project/package.json b/packages/project/package.json index ddf2cfc175e..d64902d3267 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -47,11 +47,6 @@ "ava": { "files": [ "test/lib/**/*.js" - ], - "sources": [ - "lib/**/*.js", - "lib/validation/schema/**/*.json", - "test/lib/**/*.js" ] }, "nyc": { @@ -119,7 +114,7 @@ "string.prototype.matchall": "^4.0.2" }, "devDependencies": { - "ava": "^2.4.0", + "ava": "^3.8.1", "chokidar-cli": "^2.1.0", "coveralls": "^3.1.0", "cross-env": "^7.0.2", diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 97d404a310a..6cb14ba8371 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -552,7 +552,7 @@ test("Project with project-type extension dependency inline configuration", (t) specVersion: "0.1", path: applicationAPath }, "Parsed correctly"); - }), "Unknown extension type 'project-type' for extension.a", "Rejected with error"); + }), {message: "Unknown extension type 'project-type' for extension.a"}, "Rejected with error"); }); test("Project with unknown extension dependency inline configuration", (t) => { @@ -579,7 +579,7 @@ test("Project with unknown extension dependency inline configuration", (t) => { } }; return t.throwsAsync(projectPreprocessor.processTree(tree), - "Unknown extension type 'phony-pony' for extension.a", "Rejected with error"); + {message: "Unknown extension type 'phony-pony' for extension.a"}, "Rejected with error"); }); test("Project with task extension dependency", (t) => { @@ -726,7 +726,7 @@ test("specVersion: Missing version", async (t) => { }; const preprocessor = new Preprocessor({}); await t.throwsAsync(preprocessor.applyExtension(extension), - "No specification version defined for extension shims.a", + {message: "No specification version defined for extension shims.a"}, "Rejected with error"); }); @@ -745,11 +745,11 @@ test("specVersion: Extension with invalid version", async (t) => { shims: {} }; const preprocessor = new Preprocessor({}); - await t.throwsAsync(preprocessor.applyExtension(extension), + await t.throwsAsync(preprocessor.applyExtension(extension), {message: "Unsupported specification version 0.9 defined for extension shims.a. " + "Your UI5 CLI installation might be outdated. For details see " + - "https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions", - "Rejected with error"); + "https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions"}, + "Rejected with error"); }); test("specVersion: Extension with valid version 0.1", async (t) => { diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 42a663a0e5e..c5784c8d1f0 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -194,7 +194,7 @@ test("Missing id for root project", (t) => { dependencies: [] }; return t.throwsAsync(projectPreprocessor.processTree(tree), - "Encountered project with missing id (root project)", "Rejected with error"); + {message: "Encountered project with missing id (root project)"}, "Rejected with error"); }); test("No type configured for root project", (t) => { @@ -210,7 +210,7 @@ test("No type configured for root project", (t) => { } }; return t.throwsAsync(projectPreprocessor.processTree(tree), - "No type configured for root project application.a", + {message: "No type configured for root project application.a"}, "Rejected with error"); }); @@ -261,10 +261,10 @@ test("Multiple non-root application-projects on same level", (t) => { dependencies: [] }] }); - return t.throwsAsync(projectPreprocessor.processTree(tree), + return t.throwsAsync(projectPreprocessor.processTree(tree), {message: "Found at least two projects application.a and application.b of type application with the same distance to " + - "the root project. Only one project of type application can be used. Failed to decide which one to ignore.", - "Rejected with error"); + "the root project. Only one project of type application can be used. Failed to decide which one to ignore."}, + "Rejected with error"); }); test("Multiple non-root application-projects on different levels", (t) => { diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index 384692a50e4..2237e11e4d1 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -697,7 +697,7 @@ function defineErrorTest(testName, { await t.throwsAsync(async () => { await normalizer.generateProjectTree(); - }, expectedErrorMessage); + }, {message: expectedErrorMessage}); }); } @@ -844,7 +844,7 @@ test.serial("ui5Framework translator should throw an error when framework versio await t.throwsAsync(async () => { await normalizer.generateProjectTree(); - }, `framework.version is not defined for project test-id`); + }, {message: `framework.version is not defined for project test-id`}); }); test.serial("ui5Framework translator should throw an error when framework name is not supported", async (t) => { @@ -870,7 +870,7 @@ test.serial("ui5Framework translator should throw an error when framework name i await t.throwsAsync(async () => { await normalizer.generateProjectTree(); - }, `Unknown framework.name "UI5" for project test-id. Must be "OpenUI5" or "SAPUI5"`); + }, {message: `Unknown framework.name "UI5" for project test-id. Must be "OpenUI5" or "SAPUI5"`}); }); test.serial("SAPUI5: ui5Framework translator should throw error when using a library that is not part of the dist metadata", async (t) => { @@ -929,8 +929,8 @@ test.serial("SAPUI5: ui5Framework translator should throw error when using a lib await t.throwsAsync(async () => { await normalizer.generateProjectTree(); - }, `Resolution of framework libraries failed with errors: -Failed to resolve library does.not.exist: Could not find library "does.not.exist"`); + }, {message: `Resolution of framework libraries failed with errors: +Failed to resolve library does.not.exist: Could not find library "does.not.exist"`}); }); // TODO test: Should not download packages again in case they are already installed diff --git a/packages/project/test/lib/translators/ui5Framework.js b/packages/project/test/lib/translators/ui5Framework.js index 711f60c6d0b..6661b2cdd93 100644 --- a/packages/project/test/lib/translators/ui5Framework.js +++ b/packages/project/test/lib/translators/ui5Framework.js @@ -157,13 +157,13 @@ test.serial("generateDependencyTree should throw error when no framework version await t.throwsAsync(async () => { await ui5Framework.generateDependencyTree(tree); - }, "framework.version is not defined for project test-id"); + }, {message: "framework.version is not defined for project test-id"}); await t.throwsAsync(async () => { await ui5Framework.generateDependencyTree(tree, { versionOverride: "1.75.0" }); - }, "framework.version is not defined for project test-id"); + }, {message: "framework.version is not defined for project test-id"}); }); test.serial("generateDependencyTree should ignore root project without framework configuration", async (t) => { diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 582ed51e41d..9f84408ce0f 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -18,7 +18,7 @@ test("AbstractResolver: abstract constructor should throw", async (t) => { cwd: "/test-project/", version: "1.75.0" }); - }, `Class 'AbstractResolver' is abstract`); + }, {message: `Class 'AbstractResolver' is abstract`}); }); test("AbstractResolver: constructor", (t) => { @@ -33,7 +33,7 @@ test("AbstractResolver: constructor", (t) => { test("AbstractResolver: constructor requires 'version'", (t) => { t.throws(() => { new MyResolver({}); - }, `AbstractResolver: Missing parameter "version"`); + }, {message: `AbstractResolver: Missing parameter "version"`}); }); test("AbstractResolver: Set absolute 'cwd'", (t) => { @@ -91,7 +91,7 @@ test("AbstractResolver: getLibraryMetadata should throw an Error when not implem version: "1.75.0" }); await resolver.getLibraryMetadata(); - }, `AbstractResolver: getLibraryMetadata must be implemented!`); + }, {message: `AbstractResolver: getLibraryMetadata must be implemented!`}); }); test("AbstractResolver: handleLibrary should throw an Error when not implemented", async (t) => { @@ -101,7 +101,7 @@ test("AbstractResolver: handleLibrary should throw an Error when not implemented version: "1.75.0" }); await resolver.handleLibrary(); - }, `AbstractResolver: handleLibrary must be implemented!`); + }, {message: `AbstractResolver: handleLibrary must be implemented!`}); }); test("AbstractResolver: install", async (t) => { @@ -194,9 +194,9 @@ test("AbstractResolver: install error handling (rejection of metadata/install)", await t.throwsAsync(async () => { await resolver.install(["sap.ui.lib1", "sap.ui.lib2"]); - }, `Resolution of framework libraries failed with errors: + }, {message: `Resolution of framework libraries failed with errors: Failed to resolve library sap.ui.lib1: Error installing sap.ui.lib1 -Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`); +Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`}); t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); }); @@ -225,8 +225,8 @@ test("AbstractResolver: install error handling (rejection of dependency metadata await t.throwsAsync(async () => { await resolver.install(["sap.ui.lib1"]); - }, `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`); + }, {message: `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`}); t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); }); @@ -267,8 +267,8 @@ test("AbstractResolver: install error handling (rejection of dependency install) await t.throwsAsync(async () => { await resolver.install(["sap.ui.lib1"]); - }, `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib3: Error installing sap.ui.lib3`); + }, {message: `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib3: Error installing sap.ui.lib3`}); t.is(handleLibraryStub.callCount, 3, "Each library should be handled once"); }); @@ -287,9 +287,9 @@ test("AbstractResolver: install error handling (handleLibrary throws error)", as await t.throwsAsync(async () => { await resolver.install(["sap.ui.lib1", "sap.ui.lib2"]); - }, `Resolution of framework libraries failed with errors: + }, {message: `Resolution of framework libraries failed with errors: Failed to resolve library sap.ui.lib1: Error within handleLibrary: sap.ui.lib1 -Failed to resolve library sap.ui.lib2: Error within handleLibrary: sap.ui.lib2`); +Failed to resolve library sap.ui.lib2: Error within handleLibrary: sap.ui.lib2`}); t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); }); @@ -297,7 +297,7 @@ Failed to resolve library sap.ui.lib2: Error within handleLibrary: sap.ui.lib2`) test("AbstractResolver: static fetchAllVersions should throw an Error when not implemented", async (t) => { await t.throwsAsync(async () => { await AbstractResolver.fetchAllVersions(); - }, `AbstractResolver: static fetchAllVersions must be implemented!`); + }, {message: `AbstractResolver: static fetchAllVersions must be implemented!`}); }); test.serial("AbstractResolver: Static resolveVersion resolves 'latest'", async (t) => { diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index 76defe5a6d6..26606dc0296 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -36,7 +36,7 @@ test.serial("Installer: constructor", (t) => { test.serial("Installer: constructor requires 'cwd'", (t) => { t.throws(() => { new Installer({}); - }, `Installer: Missing parameter "cwd"`); + }, {message: `Installer: Missing parameter "cwd"`}); }); test.serial("Installer: constructor requires 'ui5HomeDir'", (t) => { @@ -44,7 +44,7 @@ test.serial("Installer: constructor requires 'ui5HomeDir'", (t) => { new Installer({ cwd: "/cwd/" }); - }, `Installer: Missing parameter "ui5HomeDir"`); + }, {message: `Installer: Missing parameter "ui5HomeDir"`}); }); test.serial("Installer: fetchPackageVersions", async (t) => { @@ -236,7 +236,7 @@ test.serial("Installer: fetchPackageManifest (readJson throws error)", async (t) await t.throwsAsync(async () => { await installer.fetchPackageManifest({pkgName: "myPackage", version: "1.2.3"}); - }, "Error from readJson"); + }, {message: "Error from readJson"}); t.is(getTargetDirForPackageStub.callCount, 1, "_getTargetDirForPackage should be called once"); t.is(readJsonStub.callCount, 1, "readJson should be called once"); @@ -335,7 +335,7 @@ test.serial("Installer: _synchronize should throw when locking fails", async (t) pkgName: "@openui5/sap.ui.lib1", version: "1.2.3" }, callback); - }, "Locking error"); + }, {message: "Locking error"}); t.is(callback.callCount, 0, "callback should not be called"); t.is(t.context.unlockStub.callCount, 0, "unlock should not be called"); @@ -360,7 +360,7 @@ test.serial("Installer: _synchronize should still unlock when callback throws an pkgName: "@openui5/sap.ui.lib1", version: "1.2.3" }, callback); - }, "Callback throws error"); + }, {message: "Callback throws error"}); t.is(callback.callCount, 1, "callback should be called once"); t.is(t.context.lockStub.callCount, 1, "lock should be called once"); @@ -386,7 +386,7 @@ test.serial("Installer: _synchronize should still unlock when callback rejects w pkgName: "@openui5/sap.ui.lib1", version: "1.2.3" }, callback); - }, "Callback rejects with error"); + }, {message: "Callback rejects with error"}); t.is(callback.callCount, 1, "callback should be called once"); t.is(t.context.lockStub.callCount, 1, "lock should be called once"); From 1961c7a114703e0cbfbdab4531a084aa0a36bdd4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 29 Apr 2020 12:04:57 +0200 Subject: [PATCH 0352/1272] [ui5-project]Bump eslint from 5.16.0 to 6.8.0 (#246) * Bump eslint from 5.16.0 to 6.8.0 Bumps [eslint](https://github.com/eslint/eslint) from 5.16.0 to 6.8.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v5.16.0...v6.8.0) Signed-off-by: dependabot-preview[bot] * Fix ESLint issues Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Matthias Osswald --- packages/project/index.js | 22 +- packages/project/lib/projectPreprocessor.js | 66 ++-- packages/project/lib/translators/npm.js | 4 +- .../project/lib/translators/ui5Framework.js | 4 +- packages/project/package-lock.json | 360 ++++++++---------- packages/project/package.json | 2 +- 6 files changed, 201 insertions(+), 257 deletions(-) diff --git a/packages/project/index.js b/packages/project/index.js index 7c449e55ae0..19140fb97d3 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -35,18 +35,16 @@ const modules = { }; function exportModules(exportRoot, modulePaths) { - for (const moduleName in modulePaths) { - if (modulePaths.hasOwnProperty(moduleName)) { - if (typeof modulePaths[moduleName] === "object") { - exportRoot[moduleName] = {}; - exportModules(exportRoot[moduleName], modulePaths[moduleName]); - } else { - Object.defineProperty(exportRoot, moduleName, { - get() { - return require(modulePaths[moduleName]); - } - }); - } + for (const moduleName of Object.keys(modulePaths)) { + if (typeof modulePaths[moduleName] === "object") { + exportRoot[moduleName] = {}; + exportModules(exportRoot[moduleName], modulePaths[moduleName]); + } else { + Object.defineProperty(exportRoot, moduleName, { + get() { + return require(modulePaths[moduleName]); + } + }); } } } diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 4db7bf4c080..949fde567c8 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -463,36 +463,32 @@ class ProjectPreprocessor { if (configurations) { log.verbose(`Project shim ${extension.id} contains ` + `${Object.keys(configurations)} configuration(s)`); - for (const projectId in configurations) { - if (configurations.hasOwnProperty(projectId)) { - this.normalizeConfig(configurations[projectId]); // TODO: Clone object beforehand? - if (this.configShims[projectId]) { - log.verbose(`Project shim ${extension.id}: A configuration shim for project ${projectId} `+ + for (const projectId of Object.keys(configurations)) { + this.normalizeConfig(configurations[projectId]); // TODO: Clone object beforehand? + if (this.configShims[projectId]) { + log.verbose(`Project shim ${extension.id}: A configuration shim for project ${projectId} `+ "has already been applied. Skipping."); - } else if (this.isConfigValid(configurations[projectId])) { - log.verbose(`Project shim ${extension.id}: Adding project configuration for ${projectId}...`); - this.configShims[projectId] = configurations[projectId]; - } else { - log.verbose(`Project shim ${extension.id}: Ignoring invalid ` + + } else if (this.isConfigValid(configurations[projectId])) { + log.verbose(`Project shim ${extension.id}: Adding project configuration for ${projectId}...`); + this.configShims[projectId] = configurations[projectId]; + } else { + log.verbose(`Project shim ${extension.id}: Ignoring invalid ` + `configuration shim for project ${projectId}`); - } } } } if (dependencies) { // For the time being, shimmed dependencies only apply to shimmed project configurations - for (const projectId in dependencies) { - if (dependencies.hasOwnProperty(projectId)) { - if (this.configShims[projectId]) { - log.verbose(`Project shim ${extension.id}: Adding dependencies ` + + for (const projectId of Object.keys(dependencies)) { + if (this.configShims[projectId]) { + log.verbose(`Project shim ${extension.id}: Adding dependencies ` + `to project shim '${projectId}'...`); - this.configShims[projectId].dependencies = dependencies[projectId]; - } else { - log.verbose(`Project shim ${extension.id}: No configuration shim found for ` + + this.configShims[projectId].dependencies = dependencies[projectId]; + } else { + log.verbose(`Project shim ${extension.id}: No configuration shim found for ` + `project ID '${projectId}'. Dependency shims currently only apply ` + "to projects with configuration shims."); - } } } } @@ -500,15 +496,13 @@ class ProjectPreprocessor { if (collections) { log.verbose(`Project shim ${extension.id} contains ` + `${Object.keys(collections).length} collection(s)`); - for (const projectId in collections) { - if (collections.hasOwnProperty(projectId)) { - if (this.collections[projectId]) { - log.verbose(`Project shim ${extension.id}: A collection with id '${projectId}' `+ + for (const projectId of Object.keys(collections)) { + if (this.collections[projectId]) { + log.verbose(`Project shim ${extension.id}: A collection with id '${projectId}' `+ "is already known. Skipping."); - } else { - log.verbose(`Project shim ${extension.id}: Adding collection with id '${projectId}'...`); - this.collections[projectId] = collections[projectId]; - } + } else { + log.verbose(`Project shim ${extension.id}: Adding collection with id '${projectId}'...`); + this.collections[projectId] = collections[projectId]; } } } @@ -559,14 +553,12 @@ class ProjectPreprocessor { const collectionDep = project.dependencies[i]; const collectionModules = this.collections[depId].modules; const projects = []; - for (const projectId in collectionModules) { - if (collectionModules.hasOwnProperty(projectId)) { - // Clone and modify collection "project" - const project = JSON.parse(JSON.stringify(collectionDep)); - project.id = projectId; - project.path = path.join(project.path, collectionModules[projectId]); - projects.push(project); - } + for (const projectId of Object.keys(collectionModules)) { + // Clone and modify collection "project" + const project = JSON.parse(JSON.stringify(collectionDep)); + project.id = projectId; + project.path = path.join(project.path, collectionModules[projectId]); + projects.push(project); } // Use first collection project to replace the collection dependency @@ -623,8 +615,8 @@ class ProjectPreprocessor { "_isRoot" ]; const config = {}; - for (const key in project) { - if (project.hasOwnProperty(key) && !excludedProperties.includes(key)) { + for (const key of Object.keys(project)) { + if (!excludedProperties.includes(key)) { config[key] = project[key]; } } diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 78281e8eef1..4f38c2fce45 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -65,8 +65,8 @@ class NpmTranslator { dependencies = Object.assign({}, dependencies, optDependencies); optDependencies = {}; - for (const depName in dependencies) { - if (dependencies.hasOwnProperty(depName) && ui5Deps.indexOf(depName) === -1) { + for (const depName of Object.keys(dependencies)) { + if (ui5Deps.indexOf(depName) === -1) { log.verbose("Ignoring npm dependency %s. Not defined in UI5-dependency configuration.", depName); delete dependencies[depName]; } diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 89dc0884430..bb85222ac6e 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -193,8 +193,8 @@ module.exports = { // For this we clone all properties of the root project, // except the dependencies since they will be overwritten anyways const frameworkTree = {}; - for (const attribute in tree) { - if (tree.hasOwnProperty(attribute) && attribute !== "dependencies") { + for (const attribute of Object.keys(tree)) { + if (attribute !== "dependencies") { frameworkTree[attribute] = JSON.parse(JSON.stringify(tree[attribute])); } } diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 538f76d0310..135add684e3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -640,9 +640,9 @@ } }, "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", + "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", "dev": true }, "acorn-jsx": { @@ -748,6 +748,23 @@ } } }, + "ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "requires": { + "type-fest": "^0.11.0" + }, + "dependencies": { + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true + } + } + }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -1190,6 +1207,16 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -2613,53 +2640,54 @@ } }, "eslint": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", - "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "ajv": "^6.9.1", + "ajv": "^6.10.0", "chalk": "^2.1.0", "cross-spawn": "^6.0.5", "debug": "^4.0.1", "doctrine": "^3.0.0", - "eslint-scope": "^4.0.3", - "eslint-utils": "^1.3.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^5.0.1", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", "esquery": "^1.0.1", "esutils": "^2.0.2", "file-entry-cache": "^5.0.1", "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.7.0", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", - "inquirer": "^6.2.2", - "js-yaml": "^3.13.0", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.3.0", - "lodash": "^4.17.11", + "lodash": "^4.17.14", "minimatch": "^3.0.4", "mkdirp": "^0.5.1", "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", + "optionator": "^0.8.3", "progress": "^2.0.0", "regexpp": "^2.0.1", - "semver": "^5.5.1", - "strip-ansi": "^4.0.0", - "strip-json-comments": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", "table": "^5.2.3", - "text-table": "^0.2.0" + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, "ansi-styles": { @@ -2708,6 +2736,14 @@ "semver": "^5.5.0", "shebang-command": "^1.2.0", "which": "^1.2.9" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "debug": { @@ -2725,6 +2761,15 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, + "globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "requires": { + "type-fest": "^0.8.1" + } + }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -2753,26 +2798,20 @@ "dev": true }, "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^4.1.0" } }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -2781,6 +2820,12 @@ "requires": { "has-flag": "^3.0.0" } + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true } } }, @@ -2802,9 +2847,9 @@ } }, "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", + "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", "dev": true, "requires": { "esrecurse": "^4.1.0", @@ -2835,14 +2880,14 @@ "dev": true }, "espree": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", - "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", "dev": true, "requires": { - "acorn": "^6.0.7", - "acorn-jsx": "^5.0.0", - "eslint-visitor-keys": "^1.0.0" + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" } }, "esprima": { @@ -3777,179 +3822,66 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, "inquirer": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz", - "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz", + "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==", "dev": true, "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", + "ansi-escapes": "^4.2.1", + "chalk": "^3.0.0", + "cli-cursor": "^3.1.0", "cli-width": "^2.0.0", "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.12", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", + "figures": "^3.0.0", + "lodash": "^4.17.15", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.5.3", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", "through": "^2.3.6" }, "dependencies": { - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", "dev": true, "requires": { - "escape-string-regexp": "^1.0.5" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - } - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "ansi-regex": "^5.0.0" } } } @@ -5093,9 +5025,9 @@ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, "natural-compare": { @@ -5719,6 +5651,16 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, "mute-stream": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", @@ -5940,12 +5882,6 @@ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, "path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", @@ -7632,6 +7568,18 @@ "pupa": "^2.0.1", "semver-diff": "^3.1.1", "xdg-basedir": "^4.0.0" + }, + "dependencies": { + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + } } }, "uri-js": { @@ -7671,6 +7619,12 @@ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" }, + "v8-compile-cache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", + "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", + "dev": true + }, "validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index d64902d3267..70a89463f06 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,7 +119,7 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^5.16.0", + "eslint": "^6.8.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^4.8.4", "istanbul-lib-coverage": "^3.0.0", From 60c6a988b893b3715dacdf80d5491a141a8f71f7 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 29 Apr 2020 15:33:07 +0200 Subject: [PATCH 0353/1272] [ui5-project]Bump eslint-plugin-jsdoc from 4.8.4 to 24.0.0 (#318) * Bump eslint-plugin-jsdoc from 4.8.4 to 24.0.0 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 4.8.4 to 24.0.0. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v4.8.4...v24.0.0) Signed-off-by: dependabot-preview[bot] * Set jsdoc/check-examples temporarily to "warn" See: gajus/eslint-plugin-jsdoc#508 * Migrate to eslint-plugin-jsdoc v24 Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Matthias Osswald --- packages/project/.eslintrc.js | 4 +- packages/project/lib/normalizer.js | 14 ++--- packages/project/lib/projectPreprocessor.js | 4 +- packages/project/lib/translators/npm.js | 4 +- packages/project/lib/translators/static.js | 2 +- .../project/lib/translators/ui5Framework.js | 6 +- .../lib/ui5Framework/AbstractResolver.js | 6 +- .../lib/ui5Framework/Openui5Resolver.js | 2 +- .../lib/ui5Framework/Sapui5Resolver.js | 2 +- .../project/lib/validation/ValidationError.js | 4 +- packages/project/lib/validation/validator.js | 8 +-- packages/project/package-lock.json | 57 +++++++++++++++---- packages/project/package.json | 2 +- 13 files changed, 75 insertions(+), 40 deletions(-) diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js index c456b2910bc..62cf3b72423 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.js @@ -39,7 +39,9 @@ module.exports = { "comma-dangle": "off", "no-tabs": "off", "valid-jsdoc": 0, - "jsdoc/check-examples": 2, + // jsdoc/check-examples is temporarily set to "warn" as the rule causes issues in our CI + // See: https://github.com/gajus/eslint-plugin-jsdoc/issues/508 + "jsdoc/check-examples": 1, "jsdoc/check-param-names": 2, "jsdoc/check-tag-names": 2, "jsdoc/check-types": 2, diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index e3af65ea100..1c3055d0fe6 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -15,14 +15,14 @@ const Normalizer = { * Generates a project and dependency tree via translators and configures all projects via the projectPreprocessor * * @public - * @param {Object} [options] + * @param {object} [options] * @param {string} [options.cwd] Current working directory * @param {string} [options.configPath] Path to configuration file * @param {string} [options.translatorName] Translator to use - * @param {Object} [options.translatorOptions] Options to pass to translator - * @param {Object} [options.frameworkOptions] Options to pass to the framework installer + * @param {object} [options.translatorOptions] Options to pass to translator + * @param {object} [options.frameworkOptions] Options to pass to the framework installer * @param {string} [options.frameworkOptions.versionOverride] Framework version to use instead of the root projects framework - * @returns {Promise} Promise resolving to tree object + * @returns {Promise} Promise resolving to tree object */ generateProjectTree: async function(options = {}) { let tree = await Normalizer.generateDependencyTree(options); @@ -49,11 +49,11 @@ const Normalizer = { * Generates a project and dependency tree via translators * * @public - * @param {Object} [options] + * @param {object} [options] * @param {string} [options.cwd=.] Current working directory * @param {string} [options.translatorName=npm] Translator to use - * @param {Object} [options.translatorOptions] Options to pass to translator - * @returns {Promise} Promise resolving to tree object + * @param {object} [options.translatorOptions] Options to pass to translator + * @returns {Promise} Promise resolving to tree object */ generateDependencyTree: async function({cwd = ".", translatorName="npm", translatorOptions={}} = {}) { log.verbose("Building dependency tree..."); diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 949fde567c8..90228784822 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -643,8 +643,8 @@ module.exports = { * Collects project information and its dependencies to enrich it with project configuration * * @public - * @param {Object} tree Dependency tree of the project - * @returns {Promise} Promise resolving with the dependency tree and enriched project configuration + * @param {object} tree Dependency tree of the project + * @returns {Promise} Promise resolving with the dependency tree and enriched project configuration */ processTree: function(tree) { return new ProjectPreprocessor({tree}).processTree(); diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 4f38c2fce45..2d27750da7e 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -507,9 +507,9 @@ module.exports = { * * @public * @param {string} dirPath Project path - * @param {Object} [options] + * @param {object} [options] * @param {boolean} [options.includeDeduped=false] - * @returns {Promise} Promise resolving with a dependency tree + * @returns {Promise} Promise resolving with a dependency tree */ generateDependencyTree(dirPath, options = {includeDeduped: false}) { return new NpmTranslator(options).generateDependencyTree(dirPath); diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index 173eef52bf6..a3c33a60fe2 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -27,7 +27,7 @@ module.exports = { * * @public * @param {string} dirPath Project path - * @param {Object} [options] + * @param {object} [options] * @param {Array} [options.parameters] CLI configuration options * @returns {Promise} Promise resolving with a dependency tree */ diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index bb85222ac6e..a1c18dda93c 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -117,11 +117,11 @@ module.exports = { * * * @public - * @param {Object} tree - * @param {Object} [options] + * @param {object} tree + * @param {object} [options] * @param {string} [options.versionOverride] Framework version to use instead of the root projects framework * version from the provided tree - * @returns {Promise} Promise + * @returns {Promise} Promise */ generateDependencyTree: async function(tree, options = {}) { // Don't create a tree when root project doesn't have a framework configuration diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index d5a07aa7cec..a96c116c07a 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -91,7 +91,7 @@ class AbstractResolver { * } * * @public - * @typedef {Object} LibraryMetadataEntry + * @typedef {object} LibraryMetadataEntry * @property {string} id Identifier * @property {string} version Version * @property {string} path Path @@ -115,7 +115,7 @@ class AbstractResolver { * } * * @public - * @typedef {Object} ResolverInstallResult + * @typedef {object} ResolverInstallResult * @property {Object.} libraryMetadata * Object containing all installed libraries with library name as key * @memberof module:@ui5/project.ui5Framework @@ -157,7 +157,7 @@ class AbstractResolver { /** * * @param {string} version - * @param {Object} options + * @param {object} options */ static async resolveVersion(version, {ui5HomeDir, cwd} = {}) { let spec; diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js index f7a1beb9428..3beb287ab4c 100644 --- a/packages/project/lib/ui5Framework/Openui5Resolver.js +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -11,7 +11,7 @@ const OPENUI5_CORE_PACKAGE = "@openui5/sap.ui.core"; * * @public * @memberof module:@ui5/project.ui5Framework - * @extends module:@ui5/project.ui5Framework.AbstractResolver + * @augments module:@ui5/project.ui5Framework.AbstractResolver */ class Openui5Resolver extends AbstractResolver { /** diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index 447f9bc8660..2b42d39c5b3 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -10,7 +10,7 @@ const DIST_PKG_NAME = "@sapui5/distribution-metadata"; * * @public * @memberof module:@ui5/project.ui5Framework - * @extends module:@ui5/project.ui5Framework.AbstractResolver + * @augments module:@ui5/project.ui5Framework.AbstractResolver */ class Sapui5Resolver extends AbstractResolver { /** diff --git a/packages/project/lib/validation/ValidationError.js b/packages/project/lib/validation/ValidationError.js index d29770fbce2..3ecd54f06d2 100644 --- a/packages/project/lib/validation/ValidationError.js +++ b/packages/project/lib/validation/ValidationError.js @@ -7,7 +7,7 @@ const matchAll = require("string.prototype.matchall"); * * @public * @hideconstructor - * @extends Error + * @augments Error * @memberof module:@ui5/project.validation */ class ValidationError extends Error { @@ -17,7 +17,7 @@ class ValidationError extends Error { /** * ValidationError * - * @const + * @constant * @default * @type {string} * @readonly diff --git a/packages/project/lib/validation/validator.js b/packages/project/lib/validation/validator.js index 07682a94c62..dc2a08e3fb5 100644 --- a/packages/project/lib/validation/validator.js +++ b/packages/project/lib/validation/validator.js @@ -62,11 +62,11 @@ module.exports = { /** * Validates the given configuration. * - * @param {Object} options - * @param {Object} options.config UI5 Configuration to validate - * @param {Object} options.project Project information + * @param {object} options + * @param {object} options.config UI5 Configuration to validate + * @param {object} options.project Project information * @param {string} options.project.id ID of the project - * @param {Object} [options.yaml] YAML information + * @param {object} [options.yaml] YAML information * @param {string} options.yaml.path Path of the YAML file * @param {string} options.yaml.source Content of the YAML file * @param {number} [options.yaml.documentIndex=0] Document index in case the YAML file contains multiple documents diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 135add684e3..da293c1da39 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1694,9 +1694,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.5.5.tgz", - "integrity": "sha512-oB3TinFT+PV3p8UwDQt71+HkG03+zwPwikDlKU6ZDmql6QX2zFlQ+G0GGSDqyJhdZi4PSlzFBm+YJ+ebOX3Vgw==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.7.2.tgz", + "integrity": "sha512-4Rjb1FnxtOcv9qsfuaNuVsmmVn4ooVoBHzYfyKteiXwIU84PClyGA5jASoFMwPV93+FPh9spwueXauxFJZkGAg==", "dev": true }, "common-path-prefix": { @@ -2836,14 +2836,41 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "4.8.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-4.8.4.tgz", - "integrity": "sha512-VDP+BI2hWpKNNdsJDSPofSQ9q7jGLgWbDMI0LzOeEcfsTjSS7jQtHDUuVLQ5E+OV2MPyQPk/3lnVcHfStXk5yA==", + "version": "24.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-24.0.0.tgz", + "integrity": "sha512-AGAc9PYpramsJGVmqtxnXBYlq+AMh+hIZdbJ52OLvyJS3f+PaT/PzuckRFOLnth2uhCDv4IjgsB3r5jUFWqUnw==", "dev": true, "requires": { - "comment-parser": "^0.5.4", - "jsdoctypeparser": "3.1.0", - "lodash": "^4.17.11" + "comment-parser": "^0.7.2", + "debug": "^4.1.1", + "jsdoctypeparser": "^6.1.0", + "lodash": "^4.17.15", + "regextras": "^0.7.0", + "semver": "^6.3.0", + "spdx-expression-parse": "^3.0.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, "eslint-scope": { @@ -4340,9 +4367,9 @@ } }, "jsdoctypeparser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-3.1.0.tgz", - "integrity": "sha512-JNbkKpDFqbYjg+IU3FNo7qjX7Opy7CwjHywT32zgAcz/d4lX6Umn5jOHVETUdnNNgGrMk0nEx1gvP0F4M0hzlQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-6.1.0.tgz", + "integrity": "sha512-UCQBZ3xCUBv/PLfwKAJhp6jmGOSLFNKzrotXGNgbKhWvz27wPsCsVeP7gIcHPElQw2agBmynAitXqhxR58XAmA==", "dev": true }, "jsesc": { @@ -6305,6 +6332,12 @@ "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", "dev": true }, + "regextras": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.7.0.tgz", + "integrity": "sha512-ds+fL+Vhl918gbAUb0k2gVKbTZLsg84Re3DI6p85Et0U0tYME3hyW4nMK8Px4dtDaBA2qNjvG5uWyW7eK5gfmw==", + "dev": true + }, "registry-auth-token": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 70a89463f06..04b2b0f23b8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ "docdash": "^1.2.0", "eslint": "^6.8.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^4.8.4", + "eslint-plugin-jsdoc": "^24.0.0", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.1", "istanbul-lib-report": "^3.0.0", From a912fe5536b31d65f97370cd9c837a0351dbcd99 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 29 Apr 2020 10:06:53 +0000 Subject: [PATCH 0354/1272] [ui5-project]Bump escape-string-regexp from 2.0.0 to 4.0.0 Bumps [escape-string-regexp](https://github.com/sindresorhus/escape-string-regexp) from 2.0.0 to 4.0.0. - [Release notes](https://github.com/sindresorhus/escape-string-regexp/releases) - [Commits](https://github.com/sindresorhus/escape-string-regexp/compare/v2.0.0...v4.0.0) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 21 ++++++++++++++++++--- packages/project/package.json | 2 +- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index da293c1da39..ec184a0474a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2593,9 +2593,9 @@ "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" }, "escape-unicode": { "version": "0.2.0", @@ -4364,6 +4364,13 @@ "strip-json-comments": "^3.1.0", "taffydb": "2.6.2", "underscore": "~1.10.2" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" + } } }, "jsdoctypeparser": { @@ -6920,6 +6927,14 @@ "dev": true, "requires": { "escape-string-regexp": "^2.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true + } } }, "statuses": { diff --git a/packages/project/package.json b/packages/project/package.json index 04b2b0f23b8..d74cfd26847 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -99,7 +99,7 @@ "ajv": "^6.12.2", "ajv-errors": "^1.0.1", "chalk": "^4.0.0", - "escape-string-regexp": "^2.0.0", + "escape-string-regexp": "^4.0.0", "graceful-fs": "^4.2.3", "js-yaml": "^3.13.1", "libnpmconfig": "^1.2.1", From f49ad52b0665e55506c9f4b140ae2d2a80c54f2a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 30 Apr 2020 14:38:45 +0200 Subject: [PATCH 0355/1272] [ui5-project][FIX] Workaround missing dependency info for OpenUI5 packages in version 1.77.x The SAPUI5 distribution metadata package is missing dependency information for all OpenUI5 libraries. Therefore we need to fallback to requesting the dependency information from the registry (like it is done in OpenUI5 projects). --- .../lib/ui5Framework/Sapui5Resolver.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index 2b42d39c5b3..5bfc49e7713 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -1,4 +1,5 @@ const path = require("path"); +const semver = require("semver"); const AbstractResolver = require("./AbstractResolver"); const Installer = require("./npm/Installer"); const log = require("@ui5/logger").getLogger("normalizer:ui5Framework:Sapui5Resolver"); @@ -48,9 +49,27 @@ class Sapui5Resolver extends AbstractResolver { async getLibraryMetadata(libraryName) { const distMetadata = await this.loadDistMetadata(); const metadata = distMetadata.libraries[libraryName]; + if (!metadata) { throw new Error(`Could not find library "${libraryName}"`); } + + if (metadata.npmPackageName.startsWith("@openui5/") && + semver.satisfies(this._version, "1.77.x")) { + const Openui5Resolver = require("./Openui5Resolver"); + const openui5Resolver = new Openui5Resolver({ + cwd: this._cwd, + version: this._version + }); + const openui5Metadata = await openui5Resolver.getLibraryMetadata(libraryName); + return { + npmPackageName: openui5Metadata.id, + version: openui5Metadata.version, + dependencies: openui5Metadata.dependencies, + optionalDependencies: openui5Metadata.optionalDependencies + }; + } + return metadata; } async handleLibrary(libraryName) { From 73184b484cffc8f22c8f0de0ad312472a9718019 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 30 Apr 2020 14:30:46 +0000 Subject: [PATCH 0356/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.0.0 to 2.0.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.0.1/CHANGELOG.md --- packages/project/package-lock.json | 38 +++++++++++++++++++++++------- packages/project/package.json | 2 +- 2 files changed, 30 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ec184a0474a..d36263220cf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -534,32 +534,52 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.0.tgz", - "integrity": "sha512-P0WwayMF0nO8l1jTQolbtMzt5TV66e3xPsDeyn0QTCyc+lDBixFFl4sbRfL31wf4B4062nRG/iXTv4P06rMGHA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.1.tgz", + "integrity": "sha512-+Xdbj2Ev3jJSSMHc0KZMZU3mb/kV5roZQ/R9tW8PTYVFp8U8vlvqSaLB2eoErAUfTQiZvB9Pa/2lhhnn22t6LA==", "requires": { - "@ui5/fs": "^2.0.0", + "@ui5/fs": "^2.0.1", "@ui5/logger": "^2.0.0", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", "escodegen": "^1.14.1", "escope": "^3.6.0", "esprima": "^4.0.1", - "estraverse": "^5.0.0", + "estraverse": "^5.1.0", "globby": "^11.0.0", "graceful-fs": "^4.2.3", - "jsdoc": "~3.6.3", + "jsdoc": "^3.6.4", "less-openui5": "^0.8.6", - "make-dir": "^3.0.2", + "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^3.0.2", - "semver": "^7.1.3", + "semver": "^7.3.2", "slash": "^3.0.0", - "terser": "^4.6.7", + "terser": "^4.6.12", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "@ui5/fs": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.1.tgz", + "integrity": "sha512-k/R9P5yXHDB/rjRLEqnHElfd0j7+eo1txT8JxMmILctsidxLYleT4CcUNDWbzc40n9Sa3MqqAp+p8VJlmShSWg==", + "requires": { + "@ui5/logger": "^2.0.0", + "clone": "^2.1.0", + "globby": "^11.0.0", + "graceful-fs": "^4.2.3", + "make-dir": "^3.1.0", + "micromatch": "^4.0.2", + "minimatch": "^3.0.3", + "mock-require": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^2.0.1", + "slash": "^3.0.0" + } + } } }, "@ui5/fs": { diff --git a/packages/project/package.json b/packages/project/package.json index d74cfd26847..8e69e9f6fb4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -93,7 +93,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.0.0", + "@ui5/builder": "^2.0.1", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.0.1", "ajv": "^6.12.2", From c56763efa05b6bc3ec3a14b87ed6a8035edc23e7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 30 Apr 2020 14:36:49 +0000 Subject: [PATCH 0357/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.0.1 to 2.0.2 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.0.2/CHANGELOG.md --- packages/project/package-lock.json | 22 +++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d36263220cf..86ffe153277 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -583,15 +583,15 @@ } }, "@ui5/fs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.0.tgz", - "integrity": "sha512-oc3eoLUBSXCgABXNV7Bt2onwKldG5TDUaEGczcb0aPqiUDtu5+PiI6UdwQ+2DMGnz465KvGtKE94AxURwlmveA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.1.tgz", + "integrity": "sha512-k/R9P5yXHDB/rjRLEqnHElfd0j7+eo1txT8JxMmILctsidxLYleT4CcUNDWbzc40n9Sa3MqqAp+p8VJlmShSWg==", "requires": { "@ui5/logger": "^2.0.0", "clone": "^2.1.0", "globby": "^11.0.0", "graceful-fs": "^4.2.3", - "make-dir": "^3.0.2", + "make-dir": "^3.1.0", "micromatch": "^4.0.2", "minimatch": "^3.0.3", "mock-require": "^3.0.3", @@ -609,12 +609,12 @@ } }, "@ui5/server": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.0.1.tgz", - "integrity": "sha512-Ej3gDoMiPrFcALP4JfdRfU5ge8cSnqkU6Zs+aIys7J+lMAANc5QXlyPbZtluvdoIdwsf0MZL0bXEjGtOxXIgbQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.0.2.tgz", + "integrity": "sha512-6Vh1siee4rYqagcAfnDhO0dRk+ir3Ui5dsT4ePaPUnWzL1fvSdExNLueoYrY4B8raky8AUWnYD6wZCWa0qE/8w==", "requires": { - "@ui5/builder": "^2.0.0", - "@ui5/fs": "^2.0.0", + "@ui5/builder": "^2.0.1", + "@ui5/fs": "^2.0.1", "@ui5/logger": "^2.0.0", "compression": "^1.7.4", "connect-openui5": "^0.9.0", @@ -625,8 +625,8 @@ "express": "^4.17.1", "fresh": "^0.5.2", "graceful-fs": "^4.2.3", - "make-dir": "^3.0.2", - "mime-types": "^2.1.26", + "make-dir": "^3.1.0", + "mime-types": "^2.1.27", "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index 8e69e9f6fb4..fb64143564e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -95,7 +95,7 @@ "dependencies": { "@ui5/builder": "^2.0.1", "@ui5/logger": "^2.0.0", - "@ui5/server": "^2.0.1", + "@ui5/server": "^2.0.2", "ajv": "^6.12.2", "ajv-errors": "^1.0.1", "chalk": "^4.0.0", From 6518ac4d3545648f699c7c9cc42280854a751577 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 30 Apr 2020 14:39:42 +0000 Subject: [PATCH 0358/1272] [ui5-project]Release 2.0.4 --- packages/project/CHANGELOG.md | 10 +++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index dcfd72f444d..1182cda40bf 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,14 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.0.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.0.4...HEAD). + + +## [v2.0.4] - 2020-04-30 +### Bug Fixes +- Workaround missing dependency info for OpenUI5 packages in version 1.77.x [`3dfb812`](https://github.com/SAP/ui5-project/commit/3dfb8126e347fd1e7f6cc87e20318298e19eaf70) +- Namespaces in API Reference (JSDoc) [`3174d9f`](https://github.com/SAP/ui5-project/commit/3174d9f21f471252d2a39b8cb085eeeb5debe0a6) + ## [v2.0.3] - 2020-04-02 @@ -149,6 +156,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.0.4]: https://github.com/SAP/ui5-project/compare/v2.0.3...v2.0.4 [v2.0.3]: https://github.com/SAP/ui5-project/compare/v2.0.2...v2.0.3 [v2.0.2]: https://github.com/SAP/ui5-project/compare/v2.0.1...v2.0.2 [v2.0.1]: https://github.com/SAP/ui5-project/compare/v2.0.0...v2.0.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 86ffe153277..9fa618334db 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.0.3", + "version": "2.0.4", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index fb64143564e..7d32b94b87a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.0.3", + "version": "2.0.4", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 2b91ba6cdd9bf7ffb91881d4449bfccc2dd51b34 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 3 May 2020 02:21:00 +0000 Subject: [PATCH 0359/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 1140 +++++++++++----------------- packages/project/package.json | 4 +- 2 files changed, 449 insertions(+), 695 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9fa618334db..26f12437cf0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,19 +13,19 @@ } }, "@babel/core": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz", - "integrity": "sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.6.tgz", + "integrity": "sha512-nD3deLvbsApbHAHttzIssYqgb883yU/d9roe4RZymBCDaZryMJDbptVpEpeQuRh4BJ+SYI8le9YGxKvFEvl1Wg==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", + "@babel/generator": "^7.9.6", "@babel/helper-module-transforms": "^7.9.0", - "@babel/helpers": "^7.9.0", - "@babel/parser": "^7.9.0", + "@babel/helpers": "^7.9.6", + "@babel/parser": "^7.9.6", "@babel/template": "^7.8.6", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0", + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -66,12 +66,12 @@ } }, "@babel/generator": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.5.tgz", - "integrity": "sha512-GbNIxVB3ZJe3tLeDm1HSn2AhuD/mVcyLDpgtLXa5tplmWrJdF/elxB56XNqCuD6szyNkDi6wuoKXln3QeBmCHQ==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.6.tgz", + "integrity": "sha512-+htwWKJbH2bL72HRluF8zumBxzuX0ZZUFl3JLNyoUjM/Ho8wnVpPXM6aUz8cfKDqQ/h7zHqKt4xzJteUosckqQ==", "dev": true, "requires": { - "@babel/types": "^7.9.5", + "@babel/types": "^7.9.6", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -148,15 +148,15 @@ } }, "@babel/helper-replace-supers": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz", - "integrity": "sha512-PeMArdA4Sv/Wf4zXwBKPqVj7n9UF/xg6slNRtZW84FM7JpE1CbG8B612FyM4cxrf4fMAMGO0kR7voy1ForHHFA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.9.6.tgz", + "integrity": "sha512-qX+chbxkbArLyCImk3bWV+jB5gTNU/rsze+JlcF6Nf8tVTigPJSI1o1oBow/9Resa1yehUO9lIipsmu9oG4RzA==", "dev": true, "requires": { "@babel/helper-member-expression-to-functions": "^7.8.3", "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/traverse": "^7.8.6", - "@babel/types": "^7.8.6" + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6" } }, "@babel/helper-simple-access": { @@ -184,14 +184,14 @@ "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==" }, "@babel/helpers": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.2.tgz", - "integrity": "sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.6.tgz", + "integrity": "sha512-tI4bUbldloLcHWoRUMAj4g1bF313M/o6fBKhIsb3QnGVPwRm9JsNf/gqMkQ7zjqReABiffPV6RWj7hEglID5Iw==", "dev": true, "requires": { "@babel/template": "^7.8.3", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0" + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6" } }, "@babel/highlight": { @@ -256,9 +256,9 @@ } }, "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==" + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.6.tgz", + "integrity": "sha512-AoeIEJn8vt+d/6+PXDRPaksYhnlbMIiejioBZvvMQsOjW/JYK6k/0dKnvvP3EhK5GfMBWDPtrxRtegWdAcdq9Q==" }, "@babel/template": { "version": "7.8.6", @@ -272,17 +272,17 @@ } }, "@babel/traverse": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.5.tgz", - "integrity": "sha512-c4gH3jsvSuGUezlP6rzSJ6jf8fYjLj3hsMZRx/nX0h+fmHN0w+ekubRrHPqnMec0meycA2nwCsJ7dC8IPem2FQ==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.6.tgz", + "integrity": "sha512-b3rAHSjbxy6VEAvlxM8OV/0X4XrG72zoxme6q1MOoe2vd0bEc+TwayhuC1+Dfgqh1QEG+pj7atQqvUprHIccsg==", "dev": true, "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.5", + "@babel/generator": "^7.9.6", "@babel/helper-function-name": "^7.9.5", "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.9.0", - "@babel/types": "^7.9.5", + "@babel/parser": "^7.9.6", + "@babel/types": "^7.9.6", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -297,6 +297,12 @@ "ms": "^2.1.1" } }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -306,9 +312,9 @@ } }, "@babel/types": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.5.tgz", - "integrity": "sha512-XjnvNqenk818r5zMaba+sLQjnbda31UfUURv3ei0qPQw4u+j2jMyJ5b11y8ZHYTRSI3NnInQkkkRT4fLqqPdHg==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.6.tgz", + "integrity": "sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.9.5", @@ -345,12 +351,6 @@ "resolve-from": "^5.0.0" }, "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -560,26 +560,6 @@ "terser": "^4.6.12", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "@ui5/fs": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.1.tgz", - "integrity": "sha512-k/R9P5yXHDB/rjRLEqnHElfd0j7+eo1txT8JxMmILctsidxLYleT4CcUNDWbzc40n9Sa3MqqAp+p8VJlmShSWg==", - "requires": { - "@ui5/logger": "^2.0.0", - "clone": "^2.1.0", - "globby": "^11.0.0", - "graceful-fs": "^4.2.3", - "make-dir": "^3.1.0", - "micromatch": "^4.0.2", - "minimatch": "^3.0.3", - "mock-require": "^3.0.3", - "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.1", - "slash": "^3.0.0" - } - } } }, "@ui5/fs": { @@ -979,39 +959,12 @@ "yargs": "^15.3.1" }, "dependencies": { - "acorn": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", - "dev": true - }, "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "chalk": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz", - "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", @@ -1021,69 +974,12 @@ "ms": "^2.1.1" } }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -1092,42 +988,6 @@ "requires": { "ansi-regex": "^5.0.0" } - }, - "temp-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", - "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", - "dev": true - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.1" - } } } }, @@ -1410,6 +1270,17 @@ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, + "camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + } + }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -1495,6 +1366,126 @@ "lodash.debounce": "^4.0.8", "lodash.throttle": "^4.1.1", "yargs": "^13.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } } }, "chownr": { @@ -1604,52 +1595,46 @@ "dev": true }, "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", "dev": true, "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" } } } @@ -1949,40 +1934,19 @@ "dev": true, "requires": { "cross-spawn": "^7.0.1" + } + }, + "cross-spawn": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", + "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "dependencies": { - "cross-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", - "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -2781,15 +2745,6 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - } - }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -2817,12 +2772,33 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -2840,12 +2816,6 @@ "requires": { "has-flag": "^3.0.0" } - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true } } }, @@ -2856,9 +2826,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "24.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-24.0.0.tgz", - "integrity": "sha512-AGAc9PYpramsJGVmqtxnXBYlq+AMh+hIZdbJ52OLvyJS3f+PaT/PzuckRFOLnth2uhCDv4IjgsB3r5jUFWqUnw==", + "version": "24.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-24.0.1.tgz", + "integrity": "sha512-lVTBsiufOO55Vo924WLa6UyxzQRB5qDifaCBafPzzO6NsTv44Y79Y9a6fkLiYeLg/77yiKAMJoyeYR7xddxgEw==", "dev": true, "requires": { "comment-parser": "^0.7.2", @@ -3275,49 +3245,6 @@ "requires": { "cross-spawn": "^7.0.0", "signal-exit": "^3.0.2" - }, - "dependencies": { - "cross-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", - "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } } }, "forever-agent": { @@ -3491,10 +3418,21 @@ } }, "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "requires": { + "type-fest": "^0.8.1" + }, + "dependencies": { + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + } + } }, "globby": { "version": "11.0.0", @@ -3529,9 +3467,9 @@ } }, "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==" + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" }, "handle-thing": { "version": "2.0.1", @@ -4218,17 +4156,6 @@ "uuid": "^3.3.3" }, "dependencies": { - "cross-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", - "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, "p-map": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", @@ -4237,36 +4164,6 @@ "requires": { "aggregate-error": "^3.0.0" } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } } } }, @@ -4827,6 +4724,12 @@ "p-defer": "^1.0.0" } }, + "map-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", + "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", + "dev": true + }, "markdown-it": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz", @@ -4863,14 +4766,6 @@ "dev": true, "requires": { "escape-string-regexp": "^4.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - } } }, "md5-hex": { @@ -4916,6 +4811,33 @@ } } }, + "meow": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz", + "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==", + "dev": true, + "requires": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "^4.0.2", + "normalize-package-data": "^2.5.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.13.1", + "yargs-parser": "^18.1.3" + }, + "dependencies": { + "type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true + } + } + }, "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -4994,6 +4916,24 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, + "minimist-options": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.0.2.tgz", + "integrity": "sha512-seq4hpWkYSUh1y7NXxzucwAN9yVlBc3Upgdjz8vLCP97jG8kaOmzYrVH/m7tQ1NYD1wdtZbSLfdy4zFmRWuc/w==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + }, + "dependencies": { + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + } + } + }, "minipass": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", @@ -5256,9 +5196,9 @@ } }, "npm-registry-fetch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.3.tgz", - "integrity": "sha512-WGvUx0lkKFhu9MbiGFuT9nG2NpfQ+4dCJwRwwtK2HK5izJEvwDxMeUyqbuMS7N/OkpVCqDorV6rO5E4V9F8lJw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.4.tgz", + "integrity": "sha512-6jb34hX/iYNQebqWUHtU8YF6Cjb1H6ouTFPClYsyiW6lpFkljTpdeftm53rRojtja1rKAvKNIIiTS5Sjpw4wsA==", "requires": { "JSONStream": "^1.3.4", "bluebird": "^3.5.1", @@ -5334,29 +5274,6 @@ "yargs": "^15.0.2" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -5367,18 +5284,6 @@ "path-exists": "^4.0.0" } }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -5394,83 +5299,23 @@ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "requires": { - "p-limit": "^2.2.0" - } - }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.1" + "p-limit": "^2.2.0" } }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", "dev": true, "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "aggregate-error": "^3.0.0" } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true } } }, @@ -5561,113 +5406,6 @@ "meow": "^6.1.0", "open": "^7.0.3", "temp-write": "^4.0.0" - }, - "dependencies": { - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - } - }, - "map-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", - "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", - "dev": true - }, - "meow": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.0.tgz", - "integrity": "sha512-iIAoeI01v6pmSfObAAWFoITAA4GgiT45m4SmJgoxtZfvI0fyZwhV4d0lTwiUXvAKIPlma05Feb2Xngl52Mj5Cg==", - "dev": true, - "requires": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.1.1", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.0.0", - "minimist-options": "^4.0.1", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.0", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.8.1", - "yargs-parser": "^18.1.1" - } - }, - "minimist-options": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.0.2.tgz", - "integrity": "sha512-seq4hpWkYSUh1y7NXxzucwAN9yVlBc3Upgdjz8vLCP97jG8kaOmzYrVH/m7tQ1NYD1wdtZbSLfdy4zFmRWuc/w==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - } - }, - "quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", - "dev": true - }, - "redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, - "requires": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - } - }, - "strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "requires": { - "min-indent": "^1.0.0" - } - }, - "trim-newlines": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", - "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", - "dev": true - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } } }, "optionator": { @@ -5715,12 +5453,6 @@ "supports-color": "^7.1.0" } }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -5937,9 +5669,9 @@ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true }, "path-parse": { @@ -6209,6 +5941,12 @@ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" }, + "quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true + }, "random-int": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", @@ -6344,6 +6082,16 @@ "picomatch": "^2.2.1" } }, + "redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "requires": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + } + }, "regexp.prototype.flags": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", @@ -6656,18 +6404,18 @@ "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" }, "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "requires": { - "shebang-regex": "^1.0.0" + "shebang-regex": "^3.0.0" } }, "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, "side-channel": { @@ -6941,9 +6689,9 @@ } }, "stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-BvBTnHGm8boe+HiJFqP19ywEsGlfQAKqW78pbfvUuzCbUuxPPUyLrH5dYFY+Xn9IpLY3b5ZmMcl8jAqXB4wddg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.2.tgz", + "integrity": "sha512-0H7QK2ECz3fyZMzQ8rH0j2ykpfbnd20BFtfg/SqVC2+sCTtcw0aDTGB7dk+de4U4uUeuz6nOtJcrkFFLG1B0Rg==", "dev": true, "requires": { "escape-string-regexp": "^2.0.0" @@ -7059,6 +6807,15 @@ "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true }, + "strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "requires": { + "min-indent": "^1.0.0" + } + }, "strip-json-comments": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz", @@ -7376,9 +7133,9 @@ } }, "temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", "dev": true }, "temp-write": { @@ -7392,6 +7149,14 @@ "make-dir": "^3.0.0", "temp-dir": "^1.0.0", "uuid": "^3.3.2" + }, + "dependencies": { + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true + } } }, "term-size": { @@ -7401,9 +7166,9 @@ "dev": true }, "terser": { - "version": "4.6.12", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.12.tgz", - "integrity": "sha512-fnIwuaKjFPANG6MAixC/k1TDtnl1YlPLUlLVIxxGZUn1gfUx2+l3/zGNB72wya+lgsb50QBi2tUV75RiODwnww==", + "version": "4.6.13", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.13.tgz", + "integrity": "sha512-wMvqukYgVpQlymbnNbabVZbtM6PN63AzqexpwJL8tbh/mRT9LE5o+ruVduAGL7D6Fpjl+Q+06U5I9Ul82odAhw==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -7505,6 +7270,12 @@ "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==" }, + "trim-newlines": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", + "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", + "dev": true + }, "trim-off-newlines": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", @@ -7819,76 +7590,46 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" }, "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" } } } @@ -7971,40 +7712,39 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", + "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", "dev": true, "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^3.0.0", + "string-width": "^4.2.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "yargs-parser": "^18.1.1" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } }, "get-caller-file": { "version": "2.0.5", @@ -8013,39 +7753,53 @@ "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "p-locate": "^4.1.0" } }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "p-limit": "^2.2.0" } }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" } } } diff --git a/packages/project/package.json b/packages/project/package.json index 7d32b94b87a..26bf1ce1d82 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -100,7 +100,7 @@ "ajv-errors": "^1.0.1", "chalk": "^4.0.0", "escape-string-regexp": "^4.0.0", - "graceful-fs": "^4.2.3", + "graceful-fs": "^4.2.4", "js-yaml": "^3.13.1", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", @@ -121,7 +121,7 @@ "docdash": "^1.2.0", "eslint": "^6.8.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^24.0.0", + "eslint-plugin-jsdoc": "^24.0.1", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.1", "istanbul-lib-report": "^3.0.0", From b394f0196fa52628d4956cfaa0b411c282bdf0fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= <1410947+matz3@users.noreply.github.com> Date: Tue, 5 May 2020 15:42:10 +0200 Subject: [PATCH 0360/1272] [ui5-project][FEATURE] specVersion 2.1: Add support for "customConfiguration" (#308) Adds support for the "customConfiguration" configuration to provide custom data. Must be handled by custom tools. Can be consumed when using @ui5/project API. Resolves: #304 --- packages/project/lib/projectPreprocessor.js | 3 +- .../validation/schema/specVersion/2.0.json | 2 +- .../specVersion/2.0/kind/extension.json | 2 +- .../2.0/kind/extension/project-shim.json | 62 +- .../2.0/kind/extension/server-middleware.json | 59 +- .../specVersion/2.0/kind/extension/task.json | 58 +- .../schema/specVersion/2.0/kind/project.json | 2 +- .../2.0/kind/project/application.json | 82 +- .../specVersion/2.0/kind/project/library.json | 82 +- .../specVersion/2.0/kind/project/module.json | 55 +- .../2.0/kind/project/theme-library.json | 67 +- .../project/lib/validation/schema/ui5.json | 6 +- packages/project/package.json | 3 +- packages/project/test/lib/extensions.js | 20 + .../schema/__helper__/customConfiguration.js | 52 + .../validation/schema/__helper__/extension.js | 73 + .../validation/schema/__helper__/framework.js | 262 +++ .../validation/schema/__helper__/project.js | 287 ++++ .../schema/specVersion/2.0/kind/extension.js | 215 +-- .../2.0/kind/extension/project-shim.js | 236 +-- .../2.0/kind/extension/server-middleware.js | 49 +- .../specVersion/2.0/kind/extension/task.js | 47 +- .../2.0/kind/project/application.js | 1350 +++++---------- .../specVersion/2.0/kind/project/library.js | 1487 ++++++----------- .../specVersion/2.0/kind/project/module.js | 253 +-- .../2.0/kind/project/theme-library.js | 637 +------ .../project/test/lib/validation/schema/ui5.js | 3 +- 27 files changed, 2363 insertions(+), 3091 deletions(-) create mode 100644 packages/project/test/lib/validation/schema/__helper__/customConfiguration.js create mode 100644 packages/project/test/lib/validation/schema/__helper__/extension.js create mode 100644 packages/project/test/lib/validation/schema/__helper__/framework.js create mode 100644 packages/project/test/lib/validation/schema/__helper__/project.js diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 90228784822..6132866b279 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -352,7 +352,8 @@ class ProjectPreprocessor { } else if (extension.specVersion !== "0.1" && extension.specVersion !== "1.0" && extension.specVersion !== "1.1" && - extension.specVersion !== "2.0") { + extension.specVersion !== "2.0" && + extension.specVersion !== "2.1") { throw new Error( `Unsupported specification version ${extension.specVersion} defined for extension ` + `${extension.metadata.name}. Your UI5 CLI installation might be outdated. ` + diff --git a/packages/project/lib/validation/schema/specVersion/2.0.json b/packages/project/lib/validation/schema/specVersion/2.0.json index 99e66b6ae74..48e48d3833f 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0.json +++ b/packages/project/lib/validation/schema/specVersion/2.0.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion"], "properties": { - "specVersion": { "enum": ["2.0"] }, + "specVersion": { "enum": ["2.1", "2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json index a580e4f9e14..be984e61961 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "kind", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.0"] }, + "specVersion": { "enum": ["2.1", "2.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json index b80f377f309..57ae24120cb 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json @@ -3,19 +3,57 @@ "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension/project-shim.json", "type": "object", - "additionalProperties": false, "required": ["specVersion", "kind", "type", "metadata", "shims"], - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["extension"] - }, - "type": { - "enum": ["project-shim"] - }, - "metadata": { - "$ref": "../extension.json#/definitions/metadata" - }, + "if": { + "properties": { + "specVersion": { "enum": ["2.1"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { + "enum": ["2.1"] + }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["project-shim"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "shims": { + "$ref": "#/definitions/shims" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { + "enum": ["2.0"] + }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["project-shim"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "shims": { + "$ref": "#/definitions/shims" + } + } + }, + "definitions": { "shims": { "type": "object", "additionalProperties": false, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json index 662f7b48875..c1330f4adc9 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json @@ -3,19 +3,54 @@ "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension/server-middleware.json", "type": "object", - "additionalProperties": false, + "required": ["specVersion", "kind", "type", "metadata", "middleware"], - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["extension"] - }, - "type": { - "enum": ["server-middleware"] - }, - "metadata": { - "$ref": "../extension.json#/definitions/metadata" - }, + "if": { + "properties": { + "specVersion": { "enum": ["2.1"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["server-middleware"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "middleware": { + "$ref": "#/definitions/middleware" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["server-middleware"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "middleware": { + "$ref": "#/definitions/middleware" + } + } + }, + "definitions": { "middleware": { "type": "object", "additionalProperties": false, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json index 6b34aac8f6b..57e3cbe9c26 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json @@ -3,19 +3,53 @@ "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension/task.json", "type": "object", - "additionalProperties": false, "required": ["specVersion", "kind", "type", "metadata", "task"], - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["extension"] - }, - "type": { - "enum": ["task"] - }, - "metadata": { - "$ref": "../extension.json#/definitions/metadata" - }, + "if": { + "properties": { + "specVersion": { "enum": ["2.1"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["task"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "task": { + "$ref": "#/definitions/task" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["task"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "task": { + "$ref": "#/definitions/task" + } + } + }, + "definitions": { "task": { "type": "object", "additionalProperties": false, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index ec3f467646b..d0d6b77a081 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "type"], "properties": { - "specVersion": { "enum": ["2.0"] }, + "specVersion": { "enum": ["2.1", "2.0"] }, "kind": { "enum": ["project", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json index f66bb1af4ee..e9f5a88a7a5 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json @@ -3,30 +3,78 @@ "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/application.json", "type": "object", - "additionalProperties": false, "required": ["specVersion", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.0"] }, + "specVersion": { "enum": ["2.1", "2.0"] }, "kind": { "enum": ["project", null] }, "type": { "enum": ["application"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + } + }, + + "if": { + "properties": { + "specVersion": { "enum": ["2.1"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json index 6b1b14e915c..cc66e431764 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json @@ -3,30 +3,78 @@ "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/library.json", "type": "object", - "additionalProperties": false, "required": ["specVersion", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.0"] }, + "specVersion": { "enum": ["2.1","2.0"] }, "kind": { "enum": ["project", null] }, "type": { "enum": ["library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + } + }, + + "if": { + "properties": { + "specVersion": { "enum": ["2.1"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json index 41d2d2c4bc6..e4978c6e76d 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json @@ -3,10 +3,9 @@ "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/module.json", "type": "object", - "additionalProperties": false, "required": ["specVersion", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.0"] }, + "specVersion": { "enum": ["2.1","2.0"] }, "kind": { "enum": ["project", null] }, @@ -16,6 +15,58 @@ "metadata": { "$ref": "../project.json#/definitions/metadata" }, + "resources": { + "$ref": "#/definitions/resources" + } + }, + + "if": { + "properties": { + "specVersion": { "enum": ["2.1"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["module"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["module"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "resources": { + "$ref": "#/definitions/resources" + } + } + }, + + "definitions": { "resources": { "type": "object", "additionalProperties": false, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json index 2dda935f121..a9a074c3cec 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json @@ -3,10 +3,9 @@ "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/theme-library.json", "type": "object", - "additionalProperties": false, "required": ["specVersion", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.0"] }, + "specVersion": { "enum": ["2.1", "2.0"] }, "kind": { "enum": ["project", null] }, @@ -30,6 +29,70 @@ } }, + "if": { + "properties": { + "specVersion": { "enum": ["2.1"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["theme-library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "library.json#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["theme-library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "library.json#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } + } + }, + "definitions": { "builder": { "type": "object", diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index 3e9d58b053b..a9614c1b1ea 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -10,16 +10,16 @@ "properties": { "specVersion": { "enum": [ - "2.0", + "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, "if": { "properties": { - "specVersion": { "const": "2.0" } + "specVersion": { "enum": ["2.1", "2.0"] } } }, "then": { diff --git a/packages/project/package.json b/packages/project/package.json index 26bf1ce1d82..bd1802769e0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -46,7 +46,8 @@ ], "ava": { "files": [ - "test/lib/**/*.js" + "test/lib/**/*.js", + "!test/**/__helper__/**" ] }, "nyc": { diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 6cb14ba8371..6c30f4831fa 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -831,3 +831,23 @@ test("specVersion: Extension with valid version 2.0", async (t) => { await preprocessor.applyExtension(extension); t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.0", "Correct spec version"); }); + +test("specVersion: Extension with valid version 2.1", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.1", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor({}); + const handleShimStub = sinon.stub(preprocessor, "handleShim"); + await preprocessor.applyExtension(extension); + t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.1", "Correct spec version"); +}); diff --git a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js new file mode 100644 index 00000000000..6157fe6d099 --- /dev/null +++ b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js @@ -0,0 +1,52 @@ +/** + * Common test functionality for customConfiguration section in config + */ +module.exports = { + /** + * Executes the tests for different kind of projects, e.g. "application", "library", "theme-library" and "module" + * + * @param {Function} test ava test + * @param {Function} assertValidation assertion function + * @param {string} type one of "project-shim", "server-middleware" "task", + * "application", "library", "theme-library" and "module" + * @param {object} additionalConfiguration additional configuration content + */ + defineTests: function(test, assertValidation, type, additionalConfiguration) { + additionalConfiguration = additionalConfiguration || {}; + + // version specific tests for customConfiguration + test(`${type}: Invalid customConfiguration (specVersion 2.0)`, async (t) => { + await assertValidation(t, Object.assign({ + "specVersion": "2.0", + "type": type, + "metadata": { + "name": "my-" + type + }, + "customConfiguration": {} + }, additionalConfiguration), [ + { + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "customConfiguration", + }, + schemaPath: "#/else/additionalProperties", + } + ]); + }); + + test(`${type}: Valid customConfiguration (specVersion 2.1)`, async (t) => { + await assertValidation(t, Object.assign( { + "specVersion": "2.1", + "type": type, + "metadata": { + "name": "my-" + type + }, + "customConfiguration": { + "foo": "bar" + } + }, additionalConfiguration)); + }); + } +}; diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js new file mode 100644 index 00000000000..af552d2492e --- /dev/null +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -0,0 +1,73 @@ +const customConfiguration = require("./customConfiguration"); + +/** + * Common test functionality to be able to run the same tests for different types of kind "extension" + */ +module.exports = { + /** + * Executes the tests for different types of kind extension, e.g. "project-shim", "server-middleware" and "task" + * + * @param {Function} test ava test + * @param {Function} assertValidation assertion function + * @param {string} type one of "project-shim", "server-middleware" and "task" + * @param {object} additionalConfiguration additional configuration content + */ + defineTests: function(test, assertValidation, type, additionalConfiguration) { + additionalConfiguration = additionalConfiguration || {}; + additionalConfiguration = Object.assign({"kind": "extension"}, additionalConfiguration); + + customConfiguration.defineTests(test, assertValidation, type, additionalConfiguration); + + ["2.0", "2.1"].forEach((specVersion) => { + test(`kind: extension / type: ${type} basic (${specVersion})`, async (t) => { + await assertValidation(t, Object.assign({ + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + } + }, additionalConfiguration)); + }); + + test(`kind: extension / type: ${type} additionalProperties (${specVersion})`, async (t) => { + await assertValidation(t, Object.assign({ + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + }, + "resources": {} + }, additionalConfiguration), [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "resources" + }, + schemaPath: specVersion === "2.1" ? "#/then/additionalProperties" : "#/else/additionalProperties" + }]); + }); + + test(`kind: extension / type: ${type} Invalid configuration: Additional property (${specVersion})`, + async (t) => { + await assertValidation(t, Object.assign( { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + }, + "notAllowed": true + }, additionalConfiguration), [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: + specVersion === "2.1" ? "#/then/additionalProperties" : "#/else/additionalProperties" + }]); + }); + }); + } +}; diff --git a/packages/project/test/lib/validation/schema/__helper__/framework.js b/packages/project/test/lib/validation/schema/__helper__/framework.js new file mode 100644 index 00000000000..b3531db66c4 --- /dev/null +++ b/packages/project/test/lib/validation/schema/__helper__/framework.js @@ -0,0 +1,262 @@ +/** + * Common test functionality for framework section in config + */ +module.exports = { + /** + * Executes the tests for different types of kind project, e.g. "application", "library" and "theme-library" + * + * @param {Function} test ava test + * @param {Function} assertValidation assertion function + * @param {string} type one of "application", "library" and "theme-library" + */ + defineTests: function(test, assertValidation, type) { + ["2.0", "2.1"].forEach((specVersion) => { + test(`${type} (specVersion ${specVersion}): framework configuration: OpenUI5`, async (t) => { + const config = { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + }, + "framework": { + "name": "OpenUI5", + "version": "1.75.0", + "libraries": [ + {"name": "sap.ui.core"}, + {"name": "sap.m"}, + {"name": "sap.f", "optional": true}, + {"name": "sap.ui.support", "development": true} + ] + } + }; + await assertValidation(t, config); + }); + + test(`${type} (specVersion ${specVersion}): framework configuration: SAPUI5`, async (t) => { + const config = { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + }, + "framework": { + "name": "SAPUI5", + "version": "1.75.0", + "libraries": [ + {"name": "sap.ui.core"}, + {"name": "sap.m"}, + {"name": "sap.f", "optional": true}, + {"name": "sap.ui.support", "development": true}, + {"name": "sap.ui.comp", "development": true, "optional": false}, + {"name": "sap.fe", "development": false, "optional": true}, + { + "name": "sap.ui.export", + "development": false, + "optional": false + } + ] + } + }; + await assertValidation(t, config); + }); + + test(`${type} (specVersion ${specVersion}): framework configuration: Invalid`, async (t) => { + const config = { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + }, + "framework": { + "name": "FooUI5", + "version": "1.75", + "libraries": [ + "sap.ui.core", + {"library": "sap.m"}, + {"name": "sap.f", "optional": "x"}, + {"name": "sap.f", "development": "no"} + ] + } + }; + + await assertValidation(t, config, [ + { + dataPath: "/framework/name", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "OpenUI5", + "SAPUI5", + ], + }, + schemaPath: "../project.json#/definitions/framework/properties/name/enum", + }, + { + dataPath: "/framework/version", + keyword: "errorMessage", + message: "Not a valid version according to the Semantic Versioning specification (https://semver.org/)", + params: { + errors: [ + { + dataPath: "/framework/version", + keyword: "pattern", + message: + "should match pattern \"^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*" + + "|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(" + + "[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$\"", + params: { + pattern: "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-]" + + "[0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(" + + "?:\\.[0-9a-zA-Z-]+)*))?$", + }, + schemaPath: "../project.json#/definitions/framework/properties/version/pattern", + } + ] + }, + schemaPath: "../project.json#/definitions/framework/properties/version/errorMessage", + }, + { + dataPath: "/framework/libraries/0", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/type" + }, + { + dataPath: "/framework/libraries/1", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "library", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/additionalProperties", + }, + { + dataPath: "/framework/libraries/1", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/required", + }, + { + dataPath: "/framework/libraries/2/optional", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean" + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", + }, + { + dataPath: "/framework/libraries/3/development", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean" + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type" + } + ]); + }); + + test(`${type} (specVersion ${specVersion}): framework configuration: Missing 'name'`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + }, + "framework": {} + }, [ + { + dataPath: "/framework", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name" + }, + schemaPath: "../project.json#/definitions/framework/required", + } + ]); + }); + + test(`${type} (specVersion ${specVersion}): framework configuration: library with optional and development`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + }, + "framework": { + "name": "OpenUI5", + "libraries": [ + { + name: "sap.ui.lib1", + development: true, + optional: true + }, + { + // This should only complain about wrong types, not that both are true + name: "sap.ui.lib2", + development: "true", + optional: "true" + } + ] + } + }, [ + { + dataPath: "/framework/libraries/0", + keyword: "errorMessage", + message: "Either \"development\" or \"optional\" can be true, but not both", + params: { + errors: [ + { + dataPath: "/framework/libraries/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "development", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + }, + { + dataPath: "/framework/libraries/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "optional", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + }, + ], + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/errorMessage", + }, + { + dataPath: "/framework/libraries/1/optional", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", + }, + { + dataPath: "/framework/libraries/1/development", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type", + }, + ]); + }); + }); + } +}; diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js new file mode 100644 index 00000000000..97c75d8a7cc --- /dev/null +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -0,0 +1,287 @@ +const framework = require("./framework"); +const customConfiguration = require("./customConfiguration"); + +/** + * Common test functionality to be able to run the same tests for different types of kind "project" + */ +module.exports = { + /** + * Executes the tests for different types of kind project, + * e.g. "application", "library", "theme-library" and "module" + * + * @param {Function} test ava test + * @param {Function} assertValidation assertion function + * @param {string} type one of "application", "library", "theme-library" and "module" + */ + defineTests: function(test, assertValidation, type) { + // framework tests + if (["application", "library", "theme-library"].includes(type)) { + framework.defineTests(test, assertValidation, type); + } + + // customConfiguration tests + customConfiguration.defineTests(test, assertValidation, type); + + + // version specific tests + ["2.0", "2.1"].forEach((specVersion) => { + // tests for all kinds and version 2.0 and 2.1 + test(`${type} (specVersion ${specVersion}): No metadata`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + schemaPath: "#/required", + }]); + }); + + test(`${type} (specVersion ${specVersion}): Metadata not type object`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": "foo" + }, [{ + dataPath: "/metadata", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/metadata/type", + }]); + }); + + test(`${type} (specVersion ${specVersion}): No metadata.name`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": {} + }, [{ + dataPath: "/metadata", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/metadata/required", + }]); + }); + + test(`${type} (specVersion ${specVersion}): Invalid metadata.name`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": {} + } + }, [ + { + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../project.json#/definitions/metadata/properties/name/type", + } + ]); + }); + + test(`${type} (specVersion ${specVersion}): Invalid metadata.copyright`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "foo", + "copyright": 123 + } + }, [ + { + dataPath: "/metadata/copyright", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "../project.json#/definitions/metadata/properties/copyright/type", + } + ]); + }); + + test(`${type} (specVersion ${specVersion}): Additional metadata property`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "foo", + "copyrihgt": "typo" + } + }, [ + { + dataPath: "/metadata", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "copyrihgt" + }, + schemaPath: "../project.json#/definitions/metadata/additionalProperties", + } + ]); + }); + + test(`${type} (specVersion ${specVersion}): metadata.deprecated: true`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type, + "deprecated": true + } + }); + }); + + test(`${type} (specVersion ${specVersion}): metadata.deprecated: false`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type, + "deprecated": false + } + }); + }); + + test(`${type} (specVersion ${specVersion}): Invalid metadata.deprecated`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type, + "deprecated": "Yes" + } + }, [ + { + dataPath: "/metadata/deprecated", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/deprecated/type", + } + ]); + }); + + test(`${type} (specVersion ${specVersion}): metadata.sapInternal: true`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type, + "sapInternal": true + } + }); + }); + + test(`${type} (specVersion ${specVersion}): metadata.sapInternal: false`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type, + "sapInternal": false + } + }); + }); + + test(`${type} (specVersion ${specVersion}): Invalid metadata.sapInternal`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type, + "sapInternal": "Yes" + } + }, [ + { + dataPath: "/metadata/sapInternal", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/sapInternal/type", + } + ]); + }); + + test(`${type} (specVersion ${specVersion}): metadata.allowSapInternal: true`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type, + "allowSapInternal": true + } + }); + }); + + test(`${type} (specVersion ${specVersion}): metadata.allowSapInternal: false`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type, + "allowSapInternal": false + } + }); + }); + + test(`${type} (specVersion ${specVersion}): Invalid metadata.allowSapInternal`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type, + "allowSapInternal": "Yes" + } + }, [ + { + dataPath: "/metadata/allowSapInternal", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/metadata/properties/allowSapInternal/type", + } + ]); + }); + + test(`${type} (specVersion ${specVersion}) Invalid configuration: Additional property`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + }, + "notAllowed": true + }, [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: specVersion === "2.1" ? "#/then/additionalProperties" : "#/else/additionalProperties", + }]); + }); + }); + } +}; diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js index af46f8e76d8..abbfc0cc0b5 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js @@ -33,120 +33,121 @@ test.after.always((t) => { }; t.context.ajvCoverage.verify(thresholds); }); - -test("Type project-shim", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "project-shim", - "metadata": { - "name": "my-project-shim" - }, - "shims": {} +["2.0", "2.1"].forEach((specVersion) => { + test(`Type project-shim (${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "my-project-shim" + }, + "shims": {} + }); }); -}); -test("Type server-middleware", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "server-middleware", - "metadata": { - "name": "my-server-middleware" - }, - "middleware": { - "path": "middleware.js" - } + test(`Type server-middleware (${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "server-middleware", + "metadata": { + "name": "my-server-middleware" + }, + "middleware": { + "path": "middleware.js" + } + }); }); -}); -test("Type task", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "task", - "metadata": { - "name": "my-task" - }, - "task": { - "path": "task.js" - } + test(`Type task (${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "task", + "metadata": { + "name": "my-task" + }, + "task": { + "path": "task.js" + } + }); }); -}); -test("No type", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "metadata": { - "name": "my-project" - } - }, [{ - dataPath: "", - keyword: "required", - message: "should have required property 'type'", - params: { - missingProperty: "type", - }, - schemaPath: "#/required", - }]); -}); + test(`No type (${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "metadata": { + "name": "my-project" + } + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'type'", + params: { + missingProperty: "type", + }, + schemaPath: "#/required", + }]); + }); -test("Invalid type", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "foo", - "metadata": { - "name": "my-project" - } - }, [{ - dataPath: "/type", - keyword: "enum", - message: "should be equal to one of the allowed values", - params: { - allowedValues: [ - "task", - "server-middleware", - "project-shim" - ], - }, - schemaPath: "#/properties/type/enum", - }]); -}); + test(`Invalid type (${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "foo", + "metadata": { + "name": "my-project" + } + }, [{ + dataPath: "/type", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "task", + "server-middleware", + "project-shim" + ], + }, + schemaPath: "#/properties/type/enum", + }]); + }); -test("No specVersion", async (t) => { - await assertValidation(t, { - "kind": "extension", - "type": "project-shim", - "metadata": { - "name": "my-library" - }, - "shims": {} - }, [{ - dataPath: "", - keyword: "required", - message: "should have required property 'specVersion'", - params: { - missingProperty: "specVersion", - }, - schemaPath: "#/required", - }]); -}); + test(`No specVersion (${specVersion})`, async (t) => { + await assertValidation(t, { + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "my-library" + }, + "shims": {} + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'specVersion'", + params: { + missingProperty: "specVersion", + }, + schemaPath: "#/required", + }]); + }); -test("No metadata", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "project-shim", - "shims": {} - }, [{ - dataPath: "", - keyword: "required", - message: "should have required property 'metadata'", - params: { - missingProperty: "metadata", - }, - schemaPath: "#/required", - }]); + test(`No metadata (${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "project-shim", + "shims": {} + }, [{ + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + schemaPath: "#/required", + }]); + }); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js index 121bdb180b9..072b504abb3 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js @@ -2,6 +2,7 @@ const test = require("ava"); const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); +const extension = require("../../../../__helper__/extension"); async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -26,139 +27,138 @@ test.before((t) => { test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-extension-project-shim"}); const thresholds = { - statements: 70, - branches: 55, + statements: 75, + branches: 60, functions: 100, - lines: 65 + lines: 70 }; t.context.ajvCoverage.verify(thresholds); }); - -test("kind: extension / type: project-shim", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "project-shim", - "metadata": { - "name": "my-project-shim" - }, - "shims": { - "configurations": { - "my-dependency": { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application" +["2.0", "2.1"].forEach((specVersion) => { + test(`kind: extension / type: project-shim (${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "my-project-shim" + }, + "shims": { + "configurations": { + "invalid": { + "specVersion": "3.0", + "type": "does-not-exist", + "metadata": { + "name": "my-application" + } } }, - "my-other-dependency": { - "specVersion": "3.0", - "type": "does-not-exist", - "metadata": { - "name": "my-application" + "dependencies": { + "my-dependency": { + "foo": "bar" } - } - }, - "dependencies": { - "my-dependency": [ - "my-other-dependency" - ], - "my-other-dependency": [ - "some-lib", - "some-other-lib" - ] - }, - "collections": { - "my-dependency": { - "modules": { - "lib-1": "src/lib1", - "lib-2": "src/lib2" - } - } - } - } - }); - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "project-shim", - "metadata": { - "name": "my-project-shim" - }, - "shims": { - "configurations": { - "invalid": { - "specVersion": "3.0", - "type": "does-not-exist", - "metadata": { - "name": "my-application" + }, + "collections": { + "foo": { + "modules": { + "lib-1": { + "path": "src/lib1" + } + }, + "notAllowed": true } - } + }, + "notAllowed": true }, - "dependencies": { - "my-dependency": { - "foo": "bar" - } + "middleware": {} + }, [ + { + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "middleware" + }, + schemaPath: specVersion === "2.1" ? "#/then/additionalProperties" : "#/else/additionalProperties", }, - "collections": { - "foo": { - "modules": { - "lib-1": { - "path": "src/lib1" - } - }, - "notAllowed": true - } + { + dataPath: "/shims", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "#/definitions/shims/additionalProperties", }, - "notAllowed": true - }, - "middleware": {} - }, [ - { - dataPath: "", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - "additionalProperty": "middleware" + { + dataPath: "/shims/dependencies/my-dependency", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "#/definitions/shims/properties/dependencies/patternProperties/.%2B/type", }, - schemaPath: "#/additionalProperties", - }, - { - dataPath: "/shims", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", + { + dataPath: "/shims/collections/foo", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "#/definitions/shims/properties/collections/patternProperties/.%2B/additionalProperties" }, - schemaPath: "#/properties/shims/additionalProperties", - }, - { - dataPath: "/shims/dependencies/my-dependency", - keyword: "type", - message: "should be array", - params: { - type: "array", + { + dataPath: "/shims/collections/foo/modules/lib-1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "#/definitions/shims/properties/collections/patternProperties/.%2B/properties/modules/patternProperties/.%2B/type" + } + ]); + }); +}); + + +const additionalConfiguration = { + "shims": { + "configurations": { + "my-dependency": { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "my-application" + } }, - schemaPath: "#/properties/shims/properties/dependencies/patternProperties/.%2B/type", + "my-other-dependency": { + "specVersion": "3.0", + "type": "does-not-exist", + "metadata": { + "name": "my-application" + } + } }, - { - dataPath: "/shims/collections/foo", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", - }, - schemaPath: "#/properties/shims/properties/collections/patternProperties/.%2B/additionalProperties" + "dependencies": { + "my-dependency": [ + "my-other-dependency" + ], + "my-other-dependency": [ + "some-lib", + "some-other-lib" + ] }, - { - dataPath: "/shims/collections/foo/modules/lib-1", - keyword: "type", - message: "should be string", - params: { - type: "string", - }, - schemaPath: "#/properties/shims/properties/collections/patternProperties/.%2B/properties/modules/patternProperties/.%2B/type" + "collections": { + "my-dependency": { + "modules": { + "lib-1": "src/lib1", + "lib-2": "src/lib2" + } + } } - ]); -}); + } +}; + +extension.defineTests(test, assertValidation, "project-shim", additionalConfiguration); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js index fd14e20259e..5e1d906a5f3 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js @@ -2,6 +2,7 @@ const test = require("ava"); const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); +const extension = require("../../../../__helper__/extension"); async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -26,46 +27,18 @@ test.before((t) => { test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-extension-server-middleware"}); const thresholds = { - statements: 60, - branches: 50, + statements: 70, + branches: 55, functions: 100, - lines: 60 + lines: 70 }; t.context.ajvCoverage.verify(thresholds); }); -test("kind: extension / type: server-middleware", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "server-middleware", - "metadata": { - "name": "my-server-middleware" - }, - "middleware": { - "path": "/foo" - } - }); - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "server-middleware", - "metadata": { - "name": "my-server-middleware" - }, - "middleware": { - "path": "/foo" - }, - "task": { - "path": "/bar" - } - }, [{ - dataPath: "", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - "additionalProperty": "task" - }, - schemaPath: "#/additionalProperties" - }]); -}); +const additionalConfiguration = { + "middleware": { + "path": "/foo" + } +}; + +extension.defineTests(test, assertValidation, "server-middleware", additionalConfiguration); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js index ceee57c1e53..936ff2dda40 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js @@ -2,6 +2,7 @@ const test = require("ava"); const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); +const extension = require("../../../../__helper__/extension"); async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -26,44 +27,18 @@ test.before((t) => { test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-extension-task"}); const thresholds = { - statements: 60, - branches: 50, + statements: 70, + branches: 55, functions: 100, - lines: 60 + lines: 70 }; t.context.ajvCoverage.verify(thresholds); }); -test("kind: extension / type: task", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "task", - "metadata": { - "name": "my-task" - }, - "task": { - "path": "/foo" - } - }); - await assertValidation(t, { - "specVersion": "2.0", - "kind": "extension", - "type": "task", - "metadata": { - "name": "my-task" - }, - "task": { - "path": "/foo" - }, - "resources": {} - }, [{ - dataPath: "", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - "additionalProperty": "resources" - }, - schemaPath: "#/additionalProperties" - }]); -}); +const additionalConfiguration = { + "task": { + "path": "/foo" + } +}; + +extension.defineTests(test, assertValidation, "task", additionalConfiguration); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index 1acf2f6dd3a..2e56d96523e 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -2,6 +2,7 @@ const test = require("ava"); const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); +const project = require("../../../../__helper__/project"); async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -34,956 +35,463 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -test("Valid configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "project", - "type": "application", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "okay" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "UTF-8", - "paths": { - "webapp": "my/path" - } - } - }, - "builder": { - "resources": { - "excludes": [ - "/resources/some/project/name/test_results/**", - "/test-resources/**", - "!/test-resources/some/project/name/demo-app/**" - ] +["2.1", "2.0"].forEach(function(specVersion) { + test(`Valid configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "okay" }, - "bundles": [ - { - "bundleDefinition": { - "name": "sap-ui-custom.js", - "defaultFileTypes": [ - ".js" - ], - "sections": [ - { - "mode": "raw", - "filters": [ - "ui5loader-autoconfig.js" - ], - "resolve": true, - "resolveConditional": true, - "renderer": true, - "sort": true - }, - { - "mode": "provided", - "filters": [ - "ui5loader-autoconfig.js" - ], - "resolve": false, - "resolveConditional": false, - "renderer": false, - "sort": false, - "declareRawModules": true - } - ] - }, - "bundleOptions": { - "optimize": true, - "decorateBootstrapModule": true, - "addTryCatchRestartWrapper": true, - "usePredefineCalls": true + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF-8", + "paths": { + "webapp": "my/path" } + } + }, + "builder": { + "resources": { + "excludes": [ + "/resources/some/project/name/test_results/**", + "/test-resources/**", + "!/test-resources/some/project/name/demo-app/**" + ] }, - { - "bundleDefinition": { - "name": "app.js", - "defaultFileTypes": [ - ".js" - ], - "sections": [ - { - "mode": "preload", - "filters": [ - "some/app/Component.js" - ], - "resolve": true, - "sort": true, - "declareRawModules": false - }, - { - "mode": "require", - "filters": [ - "ui5loader-autoconfig.js" - ], - "resolve": true - } - ] + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "resolveConditional": true, + "renderer": true, + "sort": true + }, + { + "mode": "provided", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": false, + "resolveConditional": false, + "renderer": false, + "sort": false, + "declareRawModules": true + } + ] + }, + "bundleOptions": { + "optimize": true, + "decorateBootstrapModule": true, + "addTryCatchRestartWrapper": true, + "usePredefineCalls": true + } }, - "bundleOptions": { - "optimize": true, - "numberOfParts": 3 + { + "bundleDefinition": { + "name": "app.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "preload", + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true, + "declareRawModules": false + }, + { + "mode": "require", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true + } + ] + }, + "bundleOptions": { + "optimize": true, + "numberOfParts": 3 + } } - } - ], - "componentPreload": { - "paths": [ - "some/glob/**/pattern/Component.js", - "some/other/glob/**/pattern/Component.js" ], - "namespaces": [ - "some/namespace", - "some/other/namespace" - ] - }, - "cachebuster": { - "signatureType": "hash" - }, - "customTasks": [ - { - "name": "custom-task-1", - "beforeTask": "replaceCopyright", - "configuration": { - "some-key": "some value" - } + "componentPreload": { + "paths": [ + "some/glob/**/pattern/Component.js", + "some/other/glob/**/pattern/Component.js" + ], + "namespaces": [ + "some/namespace", + "some/other/namespace" + ] }, - { - "name": "custom-task-2", - "afterTask": "custom-task-1", - "configuration": { - "color": "blue" - } + "cachebuster": { + "signatureType": "hash" }, - { - "name": "custom-task-2", - "beforeTask": "not-valid", - "configuration": false - } - ] - }, - "server": { - "settings": { - "httpPort": 1337, - "httpsPort": 1443 - }, - "customMiddleware": [ - { - "name": "myCustomMiddleware", - "mountPath": "/myapp", - "afterMiddleware": "compression", - "configuration": { - "debug": true + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "configuration": { + "some-key": "some value" + } + }, + { + "name": "custom-task-2", + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } + }, + { + "name": "custom-task-2", + "beforeTask": "not-valid", + "configuration": false } + ] + }, + "server": { + "settings": { + "httpPort": 1337, + "httpsPort": 1443 }, - { - "name": "myCustomMiddleware-2", - "beforeMiddleware": "myCustomMiddleware", - "configuration": { - "debug": true + "customMiddleware": [ + { + "name": "myCustomMiddleware", + "mountPath": "/myapp", + "afterMiddleware": "compression", + "configuration": { + "debug": true + } + }, + { + "name": "myCustomMiddleware-2", + "beforeMiddleware": "myCustomMiddleware", + "configuration": { + "debug": true + } } - } - ] - } + ] + } + }); }); -}); - -test("Additional property", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application" - }, - "notAllowed": true - }, [{ - dataPath: "", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", - }, - schemaPath: "#/additionalProperties", - }]); -}); -test("Invalid resources configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "com.sap.ui5.test" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "FOO", - "paths": { - "app": "webapp", - "webapp": { - "path": "invalid" - } + test(`Invalid resources configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "FOO", + "paths": { + "app": "webapp", + "webapp": { + "path": "invalid" + } + }, + "notAllowed": true }, "notAllowed": true - }, - "notAllowed": true - } - }, [ - { - dataPath: "/resources", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", - }, - schemaPath: "#/additionalProperties", - }, - { - dataPath: "/resources/configuration", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", - }, - schemaPath: "#/properties/configuration/additionalProperties", - }, - { - dataPath: "/resources/configuration/propertiesFileSourceEncoding", - keyword: "enum", - message: "should be equal to one of the allowed values", - params: { - allowedValues: [ - "UTF-8", - "ISO-8859-1" - ], - }, - schemaPath: "../project.json#/definitions/resources-configuration-propertiesFileSourceEncoding/enum" - }, - { - dataPath: "/resources/configuration/paths", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "app", - }, - schemaPath: "#/properties/configuration/properties/paths/additionalProperties", - }, - { - dataPath: "/resources/configuration/paths/webapp", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "#/properties/configuration/properties/paths/properties/webapp/type" - } - ]); - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "com.sap.ui5.test" - }, - "resources": { - "configuration": { - "paths": "webapp" } - } - }, [ - { - dataPath: "/resources/configuration/paths", - keyword: "type", - message: "should be object", - params: { - type: "object" - }, - schemaPath: "#/properties/configuration/properties/paths/type", - } - ]); -}); - -test("Invalid builder configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - // jsdoc is not supported for type application - "jsdoc": { - "excludes": [ - "some/project/name/thirdparty/**" - ] - }, - "bundles": [ - { - "bundleDefinition": { - "name": "sap-ui-custom.js", - "defaultFileTypes": [ - ".js" - ], - "sections": [ - { - "mode": "raw", - "filters": [ - "ui5loader-autoconfig.js" - ], - "resolve": true, - "sort": true, - "declareModules": true - } - ] - }, - "bundleOptions": { - "optimize": true - } + }, [ + { + dataPath: "/resources", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", }, - { - "bundleDefinition": { - "defaultFileTypes": [ - ".js", true - ], - "sections": [ - { - "filters": [ - "some/app/Component.js" - ], - "resolve": true, - "sort": true, - "declareRawModules": [] - }, - { - "mode": "provide", - "filters": "*", - "resolve": true - } - ] - }, - "bundleOptions": { - "optimize": "true", - "numberOfParts": "3", - "notAllowed": true - } - } - ], - "componentPreload": { - "path": "some/invalid/path", - "paths": "some/invalid/glob/**/pattern/Component.js", - "namespaces": "some/invalid/namespace", + schemaPath: "#/additionalProperties", + }, + { + dataPath: "/resources/configuration", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "#/properties/configuration/additionalProperties", + }, + { + dataPath: "/resources/configuration/propertiesFileSourceEncoding", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "UTF-8", + "ISO-8859-1" + ], + }, + schemaPath: "../project.json#/definitions/resources-configuration-propertiesFileSourceEncoding/enum" + }, + { + dataPath: "/resources/configuration/paths", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "app", + }, + schemaPath: "#/properties/configuration/properties/paths/additionalProperties", + }, + { + dataPath: "/resources/configuration/paths/webapp", + keyword: "type", + message: "should be string", + params: { + type: "string" + }, + schemaPath: "#/properties/configuration/properties/paths/properties/webapp/type" } - } - }, [ - { - dataPath: "/builder", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "jsdoc" - }, - schemaPath: "#/additionalProperties" - }, - { - dataPath: "/builder/bundles/0/bundleDefinition/sections/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "declareModules", + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test" }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/additionalProperties", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/required", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", - keyword: "type", - message: "should be string", - params: { - type: "string", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/defaultFileTypes/items/type", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/0", - keyword: "required", - message: "should have required property 'mode'", - params: { - missingProperty: "mode", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/required", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/declareRawModules/type", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", - keyword: "enum", - message: "should be equal to one of the allowed values", - params: { - allowedValues: [ - "raw", - "preload", - "require", - "provided", - ], - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/mode/enum", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", - keyword: "type", - message: "should be array", - params: { - type: "array", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/filters/type", - }, - { - dataPath: "/builder/bundles/1/bundleOptions", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/additionalProperties", - }, - { - dataPath: "/builder/bundles/1/bundleOptions/optimize", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/optimize/type", - }, - { - dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", - keyword: "type", - message: "should be number", - params: { - type: "number", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/numberOfParts/type", - }, - { - dataPath: "/builder/componentPreload", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "path", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/additionalProperties", - }, - { - dataPath: "/builder/componentPreload/paths", - keyword: "type", - message: "should be array", - params: { - type: "array", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/properties/paths/type", - }, - { - dataPath: "/builder/componentPreload/namespaces", - keyword: "type", - message: "should be array", - params: { - type: "array", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/properties/namespaces/type", - } - ]); -}); - -test("framework configuration: OpenUI5", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application" - }, - "framework": { - "name": "OpenUI5", - "version": "1.75.0", - "libraries": [ - {"name": "sap.ui.core"}, - {"name": "sap.m"}, - {"name": "sap.f", "optional": true}, - {"name": "sap.ui.support", "development": true} - ] - } - }); -}); - -test("framework configuration: SAPUI5", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application" - }, - "framework": { - "name": "SAPUI5", - "version": "1.75.0", - "libraries": [ - {"name": "sap.ui.core"}, - {"name": "sap.m"}, - {"name": "sap.f", "optional": true}, - {"name": "sap.ui.support", "development": true}, - {"name": "sap.ui.comp", "development": true, "optional": false}, - {"name": "sap.fe", "development": false, "optional": true}, - {"name": "sap.ui.export", "development": false, "optional": false} - ] - } + "resources": { + "configuration": { + "paths": "webapp" + } + } + }, [ + { + dataPath: "/resources/configuration/paths", + keyword: "type", + message: "should be object", + params: { + type: "object" + }, + schemaPath: "#/properties/configuration/properties/paths/type", + } + ]); }); -}); - -test("framework configuration: Invalid", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application" - }, - "framework": { - "name": "FooUI5", - "version": "1.75", - "libraries": [ - "sap.ui.core", - {"library": "sap.m"}, - {"name": "sap.f", "optional": "x"}, - {"name": "sap.f", "development": "no"} - ] - } - }, [ - { - dataPath: "/framework/name", - keyword: "enum", - message: "should be equal to one of the allowed values", - params: { - allowedValues: [ - "OpenUI5", - "SAPUI5", - ], - }, - schemaPath: "../project.json#/definitions/framework/properties/name/enum", - }, - { - dataPath: "/framework/version", - keyword: "errorMessage", - message: "Not a valid version according to the Semantic Versioning specification (https://semver.org/)", - params: { - errors: [ - { - dataPath: "/framework/version", - keyword: "pattern", - message: - "should match pattern \"^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*" + - "|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(" + - "[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$\"", - params: { - pattern: "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-]" + - "[0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(" + - "?:\\.[0-9a-zA-Z-]+)*))?$", - }, - schemaPath: "../project.json#/definitions/framework/properties/version/pattern", - } - ] - }, - schemaPath: "../project.json#/definitions/framework/properties/version/errorMessage", - }, - { - dataPath: "/framework/libraries/0", - keyword: "type", - message: "should be object", - params: { - type: "object", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/type" - - }, - { - dataPath: "/framework/libraries/1", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "library", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/additionalProperties", - }, - { - dataPath: "/framework/libraries/1", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/required", - }, - { - dataPath: "/framework/libraries/2/optional", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean" - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", - }, - { - dataPath: "/framework/libraries/3/development", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean" - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type" - } - ]); -}); - -test("framework configuration: Missing 'name'", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application" - }, - "framework": {} - }, [ - { - dataPath: "/framework", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name" - }, - schemaPath: "../project.json#/definitions/framework/required", - } - ]); -}); -test("framework configuration: library with optional and development", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application" - }, - "framework": { - "name": "OpenUI5", - "libraries": [ - { - name: "sap.ui.lib1", - development: true, - optional: true + test(`Invalid builder configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + // jsdoc is not supported for type application + "jsdoc": { + "excludes": [ + "some/project/name/thirdparty/**" + ] }, - { - // This should only complain about wrong types, not that both are true - name: "sap.ui.lib2", - development: "true", - optional: "true" - } - ] - } - }, [ - { - dataPath: "/framework/libraries/0", - keyword: "errorMessage", - message: "Either \"development\" or \"optional\" can be true, but not both", - params: { - errors: [ + "bundles": [ { - dataPath: "/framework/libraries/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "development", + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "sort": true, + "declareModules": true + } + ] }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + "bundleOptions": { + "optimize": true + } }, { - dataPath: "/framework/libraries/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "optional", + "bundleDefinition": { + "defaultFileTypes": [ + ".js", true + ], + "sections": [ + { + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true, + "declareRawModules": [] + }, + { + "mode": "provide", + "filters": "*", + "resolve": true + } + ] }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", - }, + "bundleOptions": { + "optimize": "true", + "numberOfParts": "3", + "notAllowed": true + } + } ], - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/errorMessage", - }, - { - dataPath: "/framework/libraries/1/optional", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", - }, - { - dataPath: "/framework/libraries/1/development", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type", - }, - ]); -}); - - -test("No metadata", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application" - }, [{ - dataPath: "", - keyword: "required", - message: "should have required property 'metadata'", - params: { - missingProperty: "metadata", - }, - schemaPath: "#/required", - }]); -}); - -test("Metadata not type object", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": "foo" - }, [{ - dataPath: "/metadata", - keyword: "type", - message: "should be object", - params: { - type: "object", - }, - schemaPath: "../project.json#/definitions/metadata/type", - }]); -}); - -test("No metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": {} - }, [{ - dataPath: "/metadata", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/metadata/required", - }]); -}); - -test("Invalid metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": {} - } - }, [ - { - dataPath: "/metadata/name", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../project.json#/definitions/metadata/properties/name/type", - } - ]); -}); - -test("Invalid metadata.copyright", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "foo", - "copyright": 123 - } - }, [ - { - dataPath: "/metadata/copyright", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../project.json#/definitions/metadata/properties/copyright/type", - } - ]); -}); - -test("Additional metadata property", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "foo", - "copyrihgt": "typo" - } - }, [ - { - dataPath: "/metadata", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "copyrihgt" - }, - schemaPath: "../project.json#/definitions/metadata/additionalProperties", - } - ]); -}); - -test("metadata.deprecated: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application", - "deprecated": true - } - }); -}); - -test("metadata.deprecated: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application", - "deprecated": false - } - }); -}); - -test("Invalid metadata.deprecated", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application", - "deprecated": "Yes" - } - }, [ - { - dataPath: "/metadata/deprecated", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/deprecated/type", - } - ]); -}); - -test("metadata.sapInternal: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application", - "sapInternal": true - } - }); -}); - -test("metadata.sapInternal: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application", - "sapInternal": false - } - }); -}); - -test("Invalid metadata.sapInternal", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application", - "sapInternal": "Yes" - } - }, [ - { - dataPath: "/metadata/sapInternal", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/sapInternal/type", - } - ]); -}); - -test("metadata.allowSapInternal: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application", - "allowSapInternal": true - } + "componentPreload": { + "path": "some/invalid/path", + "paths": "some/invalid/glob/**/pattern/Component.js", + "namespaces": "some/invalid/namespace", + } + } + }, [ + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "jsdoc" + }, + schemaPath: "#/additionalProperties" + }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "declareModules", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/additionalProperties", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/required", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/defaultFileTypes/items/type", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0", + keyword: "required", + message: "should have required property 'mode'", + params: { + missingProperty: "mode", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/required", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/declareRawModules/type", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "raw", + "preload", + "require", + "provided", + ], + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/mode/enum", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/filters/type", + }, + { + dataPath: "/builder/bundles/1/bundleOptions", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/additionalProperties", + }, + { + dataPath: "/builder/bundles/1/bundleOptions/optimize", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/optimize/type", + }, + { + dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", + keyword: "type", + message: "should be number", + params: { + type: "number", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/numberOfParts/type", + }, + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "path", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/additionalProperties", + }, + { + dataPath: "/builder/componentPreload/paths", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/properties/paths/type", + }, + { + dataPath: "/builder/componentPreload/namespaces", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/properties/namespaces/type", + } + ]); }); }); -test("metadata.allowSapInternal: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application", - "allowSapInternal": false - } - }); -}); -test("Invalid metadata.allowSapInternal", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": { - "name": "my-application", - "allowSapInternal": "Yes" - } - }, [ - { - dataPath: "/metadata/allowSapInternal", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/allowSapInternal/type", - } - ]); -}); +project.defineTests(test, assertValidation, "application"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index 8d908875c0c..189ae4920eb 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -2,6 +2,7 @@ const test = require("ava"); const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); +const project = require("../../../../__helper__/project"); async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -34,1028 +35,534 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -test("Valid configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "project", - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "UTF-8", - "paths": { - "src": "src/main/uilib", - "test": "src/test/uilib" - } - } - }, - "builder": { - "resources": { - "excludes": [ - "/resources/some/project/name/test_results/**", - "!/test-resources/some/project/name/demo-app/**" - ] +["2.1", "2.0"].forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): Valid configuration`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" }, - "bundles": [ - { - "bundleDefinition": { - "name": "sap-ui-custom.js", - "defaultFileTypes": [ - ".js" - ], - "sections": [ - { - "mode": "raw", - "filters": [ - "ui5loader-autoconfig.js" - ], - "resolve": true, - "resolveConditional": true, - "renderer": true, - "sort": true - }, - { - "mode": "provided", - "filters": [ - "ui5loader-autoconfig.js" - ], - "resolve": false, - "resolveConditional": false, - "renderer": false, - "sort": false, - "declareRawModules": true - } - ] - }, - "bundleOptions": { - "optimize": true, - "decorateBootstrapModule": true, - "addTryCatchRestartWrapper": true, - "usePredefineCalls": true - } - }, - { - "bundleDefinition": { - "name": "app.js", - "defaultFileTypes": [ - ".js" - ], - "sections": [ - { - "mode": "preload", - "filters": [ - "some/app/Component.js" - ], - "resolve": true, - "sort": true, - "declareRawModules": false - }, - { - "mode": "require", - "filters": [ - "ui5loader-autoconfig.js" - ], - "resolve": true - } - ] - }, - "bundleOptions": { - "optimize": true, - "numberOfParts": 3 + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF-8", + "paths": { + "src": "src/main/uilib", + "test": "src/test/uilib" } } - ], - "componentPreload": { - "paths": [ - "some/glob/**/pattern/Component.js", - "some/other/glob/**/pattern/Component.js" - ], - "namespaces": [ - "some/namespace", - "some/other/namespace" - ] - }, - "jsdoc": { - "excludes": [ - "some/project/name/thirdparty/**" - ] }, - "customTasks": [ - { - "name": "custom-task-1", - "beforeTask": "replaceCopyright", - "configuration": { - "some-key": "some value" - } + "builder": { + "resources": { + "excludes": [ + "/resources/some/project/name/test_results/**", + "!/test-resources/some/project/name/demo-app/**" + ] }, - { - "name": "custom-task-2", - "afterTask": "custom-task-1", - "configuration": { - "color": "blue" - } - } - ] - }, - "server": { - "settings": { - "httpPort": 1337, - "httpsPort": 1443 - }, - "customMiddleware": [ - { - "name": "myCustomMiddleware", - "mountPath": "/myapp", - "afterMiddleware": "compression", - "configuration": { - "debug": true - } - } - ] - } - }); -}); - -test("Invalid configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "UTF8", - "paths": { - "src": {"path": "src"}, - "test": {"path": "test"}, - "webapp": "app" - } - } - }, - "builder": { - "resources": { - "excludes": "/resources/some/project/name/test_results/**" - }, - "bundles": [ - { - "bundleDefinition": { - "name": "sap-ui-custom.js", - "defaultFileTypes": [ - ".js" - ], - "sections": [ - { - "mode": "raw", - "filters": [ - "ui5loader-autoconfig.js" - ], - "resolve": true, - "sort": true, - "declareModules": true - } - ] + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "resolveConditional": true, + "renderer": true, + "sort": true + }, + { + "mode": "provided", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": false, + "resolveConditional": false, + "renderer": false, + "sort": false, + "declareRawModules": true + } + ] + }, + "bundleOptions": { + "optimize": true, + "decorateBootstrapModule": true, + "addTryCatchRestartWrapper": true, + "usePredefineCalls": true + } }, - "bundleOptions": { - "optimize": true + { + "bundleDefinition": { + "name": "app.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "preload", + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true, + "declareRawModules": false + }, + { + "mode": "require", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true + } + ] + }, + "bundleOptions": { + "optimize": true, + "numberOfParts": 3 + } } + ], + "componentPreload": { + "paths": [ + "some/glob/**/pattern/Component.js", + "some/other/glob/**/pattern/Component.js" + ], + "namespaces": [ + "some/namespace", + "some/other/namespace" + ] }, - { - "bundleDefinition": { - "defaultFileTypes": [ - ".js", true - ], - "sections": [ - { - "filters": [ - "some/app/Component.js" - ], - "resolve": true, - "sort": true, - "declareRawModules": [] - }, - { - "mode": "provide", - "filters": "*", - "resolve": true - } - ] + "jsdoc": { + "excludes": [ + "some/project/name/thirdparty/**" + ] + }, + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "configuration": { + "some-key": "some value" + } }, - "bundleOptions": { - "optimize": "true", - "numberOfParts": "3", - "notAllowed": true + { + "name": "custom-task-2", + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } } - } - ], - "componentPreload": { - "path": "some/invalid/path", - "paths": "some/invalid/glob/**/pattern/Component.js", - "namespaces": "some/invalid/namespace", - }, - "jsdoc": { - "excludes": "some/project/name/thirdparty/**" + ] }, - "customTasks": [ - { - "name": "custom-task-1", - "beforeTask": "replaceCopyright", - "afterTask": "replaceCopyright", + "server": { + "settings": { + "httpPort": 1337, + "httpsPort": 1443 }, - { - "afterTask": "custom-task-1", - "configuration": { - "color": "blue" + "customMiddleware": [ + { + "name": "myCustomMiddleware", + "mountPath": "/myapp", + "afterMiddleware": "compression", + "configuration": { + "debug": true + } } - }, - "my-task" - ] - }, - "server": { - "settings": { - "httpPort": "1337", - "httpsPort": "1443" - } - } - }, [ - { - dataPath: "/resources/configuration/propertiesFileSourceEncoding", - keyword: "enum", - message: "should be equal to one of the allowed values", - params: { - allowedValues: [ - "UTF-8", - "ISO-8859-1", - ], - }, - schemaPath: "../project.json#/definitions/resources-configuration-propertiesFileSourceEncoding/enum", - }, - { - dataPath: "/resources/configuration/paths", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "webapp", - }, - schemaPath: "#/properties/configuration/properties/paths/additionalProperties", - }, - { - dataPath: "/resources/configuration/paths/src", - keyword: "type", - message: "should be string", - params: { - type: "string", - }, - schemaPath: "#/properties/configuration/properties/paths/properties/src/type", - }, - { - dataPath: "/resources/configuration/paths/test", - keyword: "type", - message: "should be string", - params: { - type: "string", - }, - schemaPath: "#/properties/configuration/properties/paths/properties/test/type", - }, - { - dataPath: "/builder/resources/excludes", - keyword: "type", - message: "should be array", - params: { - type: "array", - }, - schemaPath: "../project.json#/definitions/builder-resources/properties/excludes/type", - }, - { - dataPath: "/builder/jsdoc/excludes", - keyword: "type", - message: "should be array", - params: { - type: "array", - }, - schemaPath: "#/properties/jsdoc/properties/excludes/type", - }, - { - dataPath: "/builder/bundles/0/bundleDefinition/sections/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "declareModules", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/additionalProperties", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/required", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", - keyword: "type", - message: "should be string", - params: { - type: "string", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/defaultFileTypes/items/type", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/0", - keyword: "required", - message: "should have required property 'mode'", - params: { - missingProperty: "mode", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/required", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/declareRawModules/type", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", - keyword: "enum", - message: "should be equal to one of the allowed values", - params: { - allowedValues: [ - "raw", - "preload", - "require", - "provided", - ], - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/mode/enum", - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", - keyword: "type", - message: "should be array", - params: { - type: "array", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/filters/type", - }, - { - dataPath: "/builder/bundles/1/bundleOptions", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/additionalProperties", - }, - { - dataPath: "/builder/bundles/1/bundleOptions/optimize", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/optimize/type", - }, - { - dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", - keyword: "type", - message: "should be number", - params: { - type: "number", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/numberOfParts/type", - }, - { - dataPath: "/builder/componentPreload", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "path", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/additionalProperties", - }, - { - dataPath: "/builder/componentPreload/paths", - keyword: "type", - message: "should be array", - params: { - type: "array", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/properties/paths/type", - }, - { - dataPath: "/builder/componentPreload/namespaces", - keyword: "type", - message: "should be array", - params: { - type: "array", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/properties/namespaces/type", - }, - { - dataPath: "/builder/customTasks/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "afterTask", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/additionalProperties", - }, - { - dataPath: "/builder/customTasks/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "beforeTask", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/1/additionalProperties", - }, - { - dataPath: "/builder/customTasks/1", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "afterTask", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/additionalProperties", - }, - { - dataPath: "/builder/customTasks/1", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/required", - }, - { - dataPath: "/builder/customTasks/1", - keyword: "required", - message: "should have required property 'beforeTask'", - params: { - missingProperty: "beforeTask", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/required", - }, - { - dataPath: "/builder/customTasks/2", - keyword: "type", - message: "should be object", - params: { - type: "object", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/type", - }, - { - dataPath: "/server/settings/httpPort", - keyword: "type", - message: "should be number", - params: { - type: "number", - }, - schemaPath: "../project.json#/definitions/server/properties/settings/properties/httpPort/type", - }, - { - dataPath: "/server/settings/httpsPort", - keyword: "type", - message: "should be number", - params: { - type: "number", - }, - schemaPath: "../project.json#/definitions/server/properties/settings/properties/httpsPort/type", - } - ]); -}); - -test("Additional property", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "foo": true - }, [{ - dataPath: "", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "foo" - }, - schemaPath: "#/additionalProperties" - }]); -}); - -test("Invalid builder configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - // cachebuster is only supported for type application - "cachebuster": { - "signatureType": "time" + ] } - } - }, [{ - dataPath: "/builder", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "cachebuster" - }, - schemaPath: "#/additionalProperties" - }]); -}); - -test("framework configuration: OpenUI5", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library" - }, - "framework": { - "name": "OpenUI5", - "version": "1.75.0", - "libraries": [ - {"name": "sap.ui.core"}, - {"name": "sap.m"}, - {"name": "sap.f", "optional": true}, - {"name": "sap.ui.support", "development": true} - ] - } + }); }); -}); -test("framework configuration: SAPUI5", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library" - }, - "framework": { - "name": "SAPUI5", - "version": "1.75.0", - "libraries": [ - {"name": "sap.ui.core"}, - {"name": "sap.m"}, - {"name": "sap.f", "optional": true}, - {"name": "sap.ui.support", "development": true}, - {"name": "sap.ui.comp", "development": true, "optional": false}, - {"name": "sap.fe", "development": false, "optional": true}, - {"name": "sap.ui.export", "development": false, "optional": false} - ] - } - }); -}); - -test("framework configuration: Invalid", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library" - }, - "framework": { - "name": "FooUI5", - "version": "1.75", - "libraries": [ - "sap.ui.core", - {"library": "sap.m"}, - {"name": "sap.f", "optional": "x"}, - {"name": "sap.f", "development": "no"} - ] - } - }, [ - { - dataPath: "/framework/name", - keyword: "enum", - message: "should be equal to one of the allowed values", - params: { - allowedValues: [ - "OpenUI5", - "SAPUI5", - ], + test(`library (specVersion ${specVersion}): Invalid configuration`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" }, - schemaPath: "../project.json#/definitions/framework/properties/name/enum", - }, - { - dataPath: "/framework/version", - keyword: "errorMessage", - message: "Not a valid version according to the Semantic Versioning specification (https://semver.org/)", - params: { - errors: [ - { - dataPath: "/framework/version", - keyword: "pattern", - message: - "should match pattern \"^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*" + - "|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(" + - "[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$\"", - params: { - pattern: "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-]" + - "[0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(" + - "?:\\.[0-9a-zA-Z-]+)*))?$", - }, - schemaPath: "../project.json#/definitions/framework/properties/version/pattern", + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF8", + "paths": { + "src": {"path": "src"}, + "test": {"path": "test"}, + "webapp": "app" } - ] - }, - schemaPath: "../project.json#/definitions/framework/properties/version/errorMessage", - }, - { - dataPath: "/framework/libraries/0", - keyword: "type", - message: "should be object", - params: { - type: "object", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/type" - - }, - { - dataPath: "/framework/libraries/1", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "library", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/additionalProperties", - }, - { - dataPath: "/framework/libraries/1", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/required", - }, - { - dataPath: "/framework/libraries/2/optional", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean" - }, - - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", - }, - { - dataPath: "/framework/libraries/3/development", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean" - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type" - } - ]); -}); - -test("framework configuration: Missing 'name'", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library" - }, - "framework": {} - }, [ - { - dataPath: "/framework", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name" + } }, - schemaPath: "../project.json#/definitions/framework/required", - } - ]); -}); - -test("framework configuration: library with optional and development", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library" - }, - "framework": { - "name": "OpenUI5", - "libraries": [ - { - name: "sap.ui.lib1", - development: true, - optional: true + "builder": { + "resources": { + "excludes": "/resources/some/project/name/test_results/**" }, - { - // This should only complain about wrong types, not that both are true - name: "sap.ui.lib2", - development: "true", - optional: "true" - } - ] - } - }, [ - { - dataPath: "/framework/libraries/0", - keyword: "errorMessage", - message: "Either \"development\" or \"optional\" can be true, but not both", - params: { - errors: [ + "bundles": [ { - dataPath: "/framework/libraries/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "development", + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "sort": true, + "declareModules": true + } + ] }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + "bundleOptions": { + "optimize": true + } }, { - dataPath: "/framework/libraries/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "optional", + "bundleDefinition": { + "defaultFileTypes": [ + ".js", true + ], + "sections": [ + { + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true, + "declareRawModules": [] + }, + { + "mode": "provide", + "filters": "*", + "resolve": true + } + ] }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", - }, + "bundleOptions": { + "optimize": "true", + "numberOfParts": "3", + "notAllowed": true + } + } ], + "componentPreload": { + "path": "some/invalid/path", + "paths": "some/invalid/glob/**/pattern/Component.js", + "namespaces": "some/invalid/namespace", + }, + "jsdoc": { + "excludes": "some/project/name/thirdparty/**" + }, + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "afterTask": "replaceCopyright", + }, + { + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } + }, + "my-task" + ] }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/errorMessage", - }, - { - dataPath: "/framework/libraries/1/optional", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", - }, - { - dataPath: "/framework/libraries/1/development", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type", - }, - ]); -}); - -test("No metadata", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application" - }, [{ - dataPath: "", - keyword: "required", - message: "should have required property 'metadata'", - params: { - missingProperty: "metadata", - }, - schemaPath: "#/required", - }]); -}); - -test("Metadata not type object", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": "foo" - }, [{ - dataPath: "/metadata", - keyword: "type", - message: "should be object", - params: { - type: "object", - }, - schemaPath: "../project.json#/definitions/metadata/type", - }]); -}); - -test("No metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "application", - "metadata": {} - }, [{ - dataPath: "/metadata", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/metadata/required", - }]); -}); - -test("Invalid metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": {} - } - }, [ - { - dataPath: "/metadata/name", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../project.json#/definitions/metadata/properties/name/type", - } - ]); -}); - -test("Invalid metadata.copyright", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "foo", - "copyright": 123 - } - }, [ - { - dataPath: "/metadata/copyright", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../project.json#/definitions/metadata/properties/copyright/type", - } - ]); -}); + "server": { + "settings": { + "httpPort": "1337", + "httpsPort": "1443" + } + } + }, [ + { + dataPath: "/resources/configuration/propertiesFileSourceEncoding", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "UTF-8", + "ISO-8859-1", + ], + }, + schemaPath: "../project.json#/definitions/resources-configuration-propertiesFileSourceEncoding/enum", + }, + { + dataPath: "/resources/configuration/paths", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "webapp", + }, + schemaPath: "#/properties/configuration/properties/paths/additionalProperties", + }, + { + dataPath: "/resources/configuration/paths/src", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "#/properties/configuration/properties/paths/properties/src/type", + }, + { + dataPath: "/resources/configuration/paths/test", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "#/properties/configuration/properties/paths/properties/test/type", + }, + { + dataPath: "/builder/resources/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-resources/properties/excludes/type", + }, + { + dataPath: "/builder/jsdoc/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "#/properties/jsdoc/properties/excludes/type", + }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "declareModules", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/additionalProperties", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/required", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/defaultFileTypes/items/type", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0", + keyword: "required", + message: "should have required property 'mode'", + params: { + missingProperty: "mode", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/required", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/declareRawModules/type", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "raw", + "preload", + "require", + "provided", + ], + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/mode/enum", + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/filters/type", + }, + { + dataPath: "/builder/bundles/1/bundleOptions", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/additionalProperties", + }, + { + dataPath: "/builder/bundles/1/bundleOptions/optimize", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/optimize/type", + }, + { + dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", + keyword: "type", + message: "should be number", + params: { + type: "number", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/numberOfParts/type", + }, + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "path", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/additionalProperties", + }, + { + dataPath: "/builder/componentPreload/paths", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/properties/paths/type", + }, + { + dataPath: "/builder/componentPreload/namespaces", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + schemaPath: "../project.json#/definitions/builder-componentPreload/properties/namespaces/type", + }, + { + dataPath: "/builder/customTasks/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "afterTask", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/additionalProperties", + }, + { + dataPath: "/builder/customTasks/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "beforeTask", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/1/additionalProperties", + }, + { + dataPath: "/builder/customTasks/1", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "afterTask", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/additionalProperties", + }, + { + dataPath: "/builder/customTasks/1", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/required", + }, + { + dataPath: "/builder/customTasks/1", + keyword: "required", + message: "should have required property 'beforeTask'", + params: { + missingProperty: "beforeTask", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/required", + }, + { + dataPath: "/builder/customTasks/2", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/type", + }, + { + dataPath: "/server/settings/httpPort", + keyword: "type", + message: "should be number", + params: { + type: "number", + }, + schemaPath: "../project.json#/definitions/server/properties/settings/properties/httpPort/type", + }, + { + dataPath: "/server/settings/httpsPort", + keyword: "type", + message: "should be number", + params: { + type: "number", + }, + schemaPath: "../project.json#/definitions/server/properties/settings/properties/httpsPort/type", + } + ]); + }); -test("Additional metadata property", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "foo", - "copyrihgt": "typo" - } - }, [ - { - dataPath: "/metadata", + test(`library (specVersion ${specVersion}): Invalid builder configuration`, async (t) => { + const config = { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + // cachebuster is only supported for type application + "cachebuster": { + "signatureType": "time" + } + } + }; + await assertValidation(t, config, [{ + dataPath: "/builder", keyword: "additionalProperties", message: "should NOT have additional properties", params: { - additionalProperty: "copyrihgt" - }, - schemaPath: "../project.json#/definitions/metadata/additionalProperties", - } - ]); -}); - -test("metadata.deprecated: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library", - "deprecated": true - } - }); -}); - -test("metadata.deprecated: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library", - "deprecated": false - } - }); -}); - -test("Invalid metadata.deprecated", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library", - "deprecated": "Yes" - } - }, [ - { - dataPath: "/metadata/deprecated", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/deprecated/type", - } - ]); -}); - -test("metadata.sapInternal: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library", - "sapInternal": true - } - }); -}); - -test("metadata.sapInternal: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library", - "sapInternal": false - } - }); -}); - -test("Invalid metadata.sapInternal", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library", - "sapInternal": "Yes" - } - }, [ - { - dataPath: "/metadata/sapInternal", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", + additionalProperty: "cachebuster" }, - schemaPath: "../project.json#/definitions/metadata/properties/sapInternal/type", - } - ]); -}); - -test("metadata.allowSapInternal: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library", - "allowSapInternal": true - } - }); -}); - -test("metadata.allowSapInternal: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library", - "allowSapInternal": false - } + schemaPath: "#/additionalProperties" + }]); }); }); -test("Invalid metadata.allowSapInternal", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "my-library", - "allowSapInternal": "Yes" - } - }, [ - { - dataPath: "/metadata/allowSapInternal", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/allowSapInternal/type", - } - ]); -}); +project.defineTests(test, assertValidation, "library"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js index 41f10c19121..4e4eb2fba7b 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js @@ -2,6 +2,7 @@ const test = require("ava"); const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); +const project = require("../../../../__helper__/project"); async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -26,10 +27,10 @@ test.before((t) => { test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-module"}); const thresholds = { - statements: 65, - branches: 55, + statements: 75, + branches: 65, functions: 100, - lines: 65 + lines: 75 }; t.context.ajvCoverage.verify(thresholds); }); @@ -68,7 +69,7 @@ test("No framework configuration", async (t) => { params: { "additionalProperty": "framework" }, - schemaPath: "#/additionalProperties" + schemaPath: "#/else/additionalProperties" }]); }); @@ -91,7 +92,7 @@ test("No propertiesFileSourceEncoding configuration", async (t) => { params: { "additionalProperty": "propertiesFileSourceEncoding" }, - schemaPath: "#/properties/resources/properties/configuration/additionalProperties" + schemaPath: "#/definitions/resources/properties/configuration/additionalProperties" }]); }); @@ -111,7 +112,7 @@ test("No builder, server configuration", async (t) => { params: { "additionalProperty": "builder" }, - schemaPath: "#/additionalProperties" + schemaPath: "#/else/additionalProperties" }, { dataPath: "", keyword: "additionalProperties", @@ -119,244 +120,8 @@ test("No builder, server configuration", async (t) => { params: { "additionalProperty": "server" }, - schemaPath: "#/additionalProperties" + schemaPath: "#/else/additionalProperties" }]); }); -test("No metadata", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module" - }, [{ - dataPath: "", - keyword: "required", - message: "should have required property 'metadata'", - params: { - missingProperty: "metadata", - }, - schemaPath: "#/required", - }]); -}); - -test("Metadata not type object", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": "foo" - }, [{ - dataPath: "/metadata", - keyword: "type", - message: "should be object", - params: { - type: "object", - }, - schemaPath: "../project.json#/definitions/metadata/type", - }]); -}); - -test("No metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": {} - }, [{ - dataPath: "/metadata", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/metadata/required", - }]); -}); - -test("Invalid metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": {} - } - }, [ - { - dataPath: "/metadata/name", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../project.json#/definitions/metadata/properties/name/type", - } - ]); -}); - -test("Invalid metadata.copyright", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "foo", - "copyright": 123 - } - }, [ - { - dataPath: "/metadata/copyright", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../project.json#/definitions/metadata/properties/copyright/type", - } - ]); -}); - -test("Additional metadata property", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "foo", - "copyrihgt": "typo" - } - }, [ - { - dataPath: "/metadata", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "copyrihgt" - }, - schemaPath: "../project.json#/definitions/metadata/additionalProperties", - } - ]); -}); - -test("metadata.deprecated: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module", - "deprecated": true - } - }); -}); - -test("metadata.deprecated: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module", - "deprecated": false - } - }); -}); - -test("Invalid metadata.deprecated", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module", - "deprecated": "Yes" - } - }, [ - { - dataPath: "/metadata/deprecated", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/deprecated/type", - } - ]); -}); - -test("metadata.sapInternal: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module", - "sapInternal": true - } - }); -}); - -test("metadata.sapInternal: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module", - "sapInternal": false - } - }); -}); - -test("Invalid metadata.sapInternal", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module", - "sapInternal": "Yes" - } - }, [ - { - dataPath: "/metadata/sapInternal", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/sapInternal/type", - } - ]); -}); - -test("metadata.allowSapInternal: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module", - "allowSapInternal": true - } - }); -}); - -test("metadata.allowSapInternal: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module", - "allowSapInternal": false - } - }); -}); - -test("Invalid metadata.allowSapInternal", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module", - "allowSapInternal": "Yes" - } - }, [ - { - dataPath: "/metadata/allowSapInternal", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/allowSapInternal/type", - } - ]); -}); +project.defineTests(test, assertValidation, "module"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js index 8e72c26c977..77e02daaa37 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -2,6 +2,7 @@ const test = require("ava"); const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); +const project = require("../../../../__helper__/project"); async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -27,587 +28,115 @@ test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-theme-library"}); const thresholds = { statements: 75, - branches: 65, + branches: 70, functions: 100, lines: 75 }; t.context.ajvCoverage.verify(thresholds); }); -test("Valid configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library", - "copyright": "Copyright goes here" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "UTF-8", - "paths": { - "src": "src/main/uilib", - "test": "src/test/uilib" - } - } - }, - "builder": { - "resources": { - "excludes": [ - "/resources/some/project/name/test_results/**", - "/test-resources/**", - "!/test-resources/some/project/name/demo-app/**" - ] + +["2.1", "2.0"].forEach(function(specVersion) { + test(`Valid configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "theme-library", + "metadata": { + "name": "my-theme-library", + "copyright": "Copyright goes here" }, - "customTasks": [ - { - "name": "custom-task-1", - "beforeTask": "replaceCopyright", - "configuration": { - "some-key": "some value" - } - }, - { - "name": "custom-task-2", - "afterTask": "custom-task-1", - "configuration": { - "color": "blue" + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF-8", + "paths": { + "src": "src/main/uilib", + "test": "src/test/uilib" } } - ] - }, - "server": { - "settings": { - "httpPort": 1337, - "httpsPort": 1443 }, - "customMiddleware": [ - { - "name": "myCustomMiddleware", - "mountPath": "/myapp", - "afterMiddleware": "compression", - "configuration": { - "debug": true + "builder": { + "resources": { + "excludes": [ + "/resources/some/project/name/test_results/**", + "/test-resources/**", + "!/test-resources/some/project/name/demo-app/**" + ] + }, + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "configuration": { + "some-key": "some value" + } + }, + { + "name": "custom-task-2", + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } } - } - ] - } - }); -}); - -test("Additional property", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library" - }, - "foo": true - }, [{ - dataPath: "", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - "additionalProperty": "foo" - }, - schemaPath: "#/additionalProperties" - }]); -}); - -test("Invalid builder configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - // cachebuster is only supported for type application - "cachebuster": { - "signatureType": "time" - }, - // jsdoc is only supported for type library - "jsdoc": { - "excludes": [ - "some/project/name/thirdparty/**" ] - } - } - }, [{ - dataPath: "/builder", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "cachebuster" - }, - schemaPath: "#/additionalProperties" - }, - { - dataPath: "/builder", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "jsdoc" - }, - schemaPath: "#/additionalProperties" - }]); -}); - -test("framework configuration: OpenUI5", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library" - }, - "framework": { - "name": "OpenUI5", - "version": "1.75.0", - "libraries": [ - {"name": "sap.ui.core"}, - {"name": "sap.m"}, - {"name": "sap.f", "optional": true}, - {"name": "sap.ui.support", "development": true} - ] - } - }); -}); - -test("framework configuration: SAPUI5", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library" - }, - "framework": { - "name": "SAPUI5", - "version": "1.75.0", - "libraries": [ - {"name": "sap.ui.core"}, - {"name": "sap.m"}, - {"name": "sap.f", "optional": true}, - {"name": "sap.ui.support", "development": true}, - {"name": "sap.ui.comp", "development": true, "optional": false}, - {"name": "sap.fe", "development": false, "optional": true}, - {"name": "sap.ui.export", "development": false, "optional": false} - ] - } - }); -}); - -test("framework configuration: Invalid", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library" - }, - "framework": { - "name": "FooUI5", - "version": "1.75", - "libraries": [ - "sap.ui.core", - {"library": "sap.m"}, - {"name": "sap.f", "optional": "x"}, - {"name": "sap.f", "development": "no"} - ] - } - }, [ - { - dataPath: "/framework/name", - keyword: "enum", - message: "should be equal to one of the allowed values", - params: { - allowedValues: [ - "OpenUI5", - "SAPUI5", - ], }, - schemaPath: "../project.json#/definitions/framework/properties/name/enum", - }, - { - dataPath: "/framework/version", - keyword: "errorMessage", - message: "Not a valid version according to the Semantic Versioning specification (https://semver.org/)", - params: { - errors: [ + "server": { + "settings": { + "httpPort": 1337, + "httpsPort": 1443 + }, + "customMiddleware": [ { - dataPath: "/framework/version", - keyword: "pattern", - message: - "should match pattern \"^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*" + - "|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(" + - "[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$\"", - params: { - pattern: "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-]" + - "[0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(" + - "?:\\.[0-9a-zA-Z-]+)*))?$", - }, - schemaPath: "../project.json#/definitions/framework/properties/version/pattern", + "name": "myCustomMiddleware", + "mountPath": "/myapp", + "afterMiddleware": "compression", + "configuration": { + "debug": true + } } ] - }, - schemaPath: "../project.json#/definitions/framework/properties/version/errorMessage", - }, - { - dataPath: "/framework/libraries/0", - keyword: "type", - message: "should be object", - params: { - type: "object", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/type" - - }, - { - dataPath: "/framework/libraries/1", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "library", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/additionalProperties", - }, - { - dataPath: "/framework/libraries/1", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/required", - }, - { - dataPath: "/framework/libraries/2/optional", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean" - }, - - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", - }, - { - dataPath: "/framework/libraries/3/development", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean" - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type" - } - ]); -}); + } + }); + }); -test("framework configuration: library with optional and development", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library" - }, - "framework": { - "name": "OpenUI5", - "libraries": [ - { - name: "sap.ui.lib1", - development: true, - optional: true + test(`Invalid builder configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "theme-library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + // cachebuster is only supported for type application + "cachebuster": { + "signatureType": "time" }, - { - // This should only complain about wrong types, not that both are true - name: "sap.ui.lib2", - development: "true", - optional: "true" + // jsdoc is only supported for type library + "jsdoc": { + "excludes": [ + "some/project/name/thirdparty/**" + ] } - ] - } - }, [ - { - dataPath: "/framework/libraries/0", - keyword: "errorMessage", - message: "Either \"development\" or \"optional\" can be true, but not both", - params: { - errors: [ - { - dataPath: "/framework/libraries/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "development", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", - }, - { - dataPath: "/framework/libraries/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "optional", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", - }, - ], - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/errorMessage", - }, - { - dataPath: "/framework/libraries/1/optional", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", - }, - { - dataPath: "/framework/libraries/1/development", - keyword: "type", - message: "should be boolean", + } + }, [{ + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", params: { - type: "boolean", + additionalProperty: "cachebuster" }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type", - }, - ]); -}); - -test("No metadata", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library" - }, [{ - dataPath: "", - keyword: "required", - message: "should have required property 'metadata'", - params: { - missingProperty: "metadata", - }, - schemaPath: "#/required", - }]); -}); - -test("Metadata not type object", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": "foo" - }, [{ - dataPath: "/metadata", - keyword: "type", - message: "should be object", - params: { - type: "object", - }, - schemaPath: "../project.json#/definitions/metadata/type", - }]); -}); - -test("No metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": {} - }, [{ - dataPath: "/metadata", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", + schemaPath: "#/additionalProperties" }, - schemaPath: "../project.json#/definitions/metadata/required", - }]); -}); - -test("Invalid metadata.name", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": {} - } - }, [ { - dataPath: "/metadata/name", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../project.json#/definitions/metadata/properties/name/type", - } - ]); -}); - -test("Invalid metadata.copyright", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "foo", - "copyright": 123 - } - }, [ - { - dataPath: "/metadata/copyright", - keyword: "type", - message: "should be string", - params: { - type: "string" - }, - schemaPath: "../project.json#/definitions/metadata/properties/copyright/type", - } - ]); -}); - -test("Additional metadata property", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "library", - "metadata": { - "name": "foo", - "copyrihgt": "typo" - } - }, [ - { - dataPath: "/metadata", + dataPath: "/builder", keyword: "additionalProperties", message: "should NOT have additional properties", params: { - additionalProperty: "copyrihgt" - }, - schemaPath: "../project.json#/definitions/metadata/additionalProperties", - } - ]); -}); - -test("metadata.deprecated: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library", - "deprecated": true - } - }); -}); - -test("metadata.deprecated: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library", - "deprecated": false - } - }); -}); - -test("Invalid metadata.deprecated", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library", - "deprecated": "Yes" - } - }, [ - { - dataPath: "/metadata/deprecated", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", + additionalProperty: "jsdoc" }, - schemaPath: "../project.json#/definitions/metadata/properties/deprecated/type", - } - ]); -}); - -test("metadata.sapInternal: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library", - "sapInternal": true - } + schemaPath: "#/additionalProperties" + }]); }); }); -test("metadata.sapInternal: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library", - "sapInternal": false - } - }); -}); - -test("Invalid metadata.sapInternal", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library", - "sapInternal": "Yes" - } - }, [ - { - dataPath: "/metadata/sapInternal", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/sapInternal/type", - } - ]); -}); - -test("metadata.allowSapInternal: true", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library", - "allowSapInternal": true - } - }); -}); - -test("metadata.allowSapInternal: false", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library", - "allowSapInternal": false - } - }); -}); - -test("Invalid metadata.allowSapInternal", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "theme-library", - "metadata": { - "name": "my-theme-library", - "allowSapInternal": "Yes" - } - }, [ - { - dataPath: "/metadata/allowSapInternal", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/allowSapInternal/type", - } - ]); -}); +project.defineTests(test, assertValidation, "theme-library"); diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index abee6c794d8..87ead2b64b2 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -96,7 +96,7 @@ test("Invalid specVersion", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. -Supported specification versions: "2.0", "1.1", "1.0", "0.1" +Supported specification versions: "2.1", "2.0", "1.1", "1.0", "0.1" For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, params: { errors: [ @@ -106,6 +106,7 @@ For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specific message: "should be equal to one of the allowed values", params: { allowedValues: [ + "2.1", "2.0", "1.1", "1.0", From 60d05619a839cc63007593749e8885afa084281d Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 5 May 2020 17:12:08 +0000 Subject: [PATCH 0361/1272] [ui5-project]Release 2.1.0 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 1182cda40bf..8c16648e72d 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.0.4...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.0...HEAD). + + +## [v2.1.0] - 2020-05-05 +### Features +- **specVersion 2.1:** Add support for "customConfiguration" ([#308](https://github.com/SAP/ui5-project/issues/308)) [`201aaab`](https://github.com/SAP/ui5-project/commit/201aaab6beb8ad86fefdf371ae20c971970f6547) + ## [v2.0.4] - 2020-04-30 @@ -156,6 +162,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.1.0]: https://github.com/SAP/ui5-project/compare/v2.0.4...v2.1.0 [v2.0.4]: https://github.com/SAP/ui5-project/compare/v2.0.3...v2.0.4 [v2.0.3]: https://github.com/SAP/ui5-project/compare/v2.0.2...v2.0.3 [v2.0.2]: https://github.com/SAP/ui5-project/compare/v2.0.1...v2.0.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 26f12437cf0..ef21c1db2c4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.0.4", + "version": "2.1.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index bd1802769e0..3de5546c6ca 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.0.4", + "version": "2.1.0", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 0630b38aa3f08e866439f92fe0599a6c180e549a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 10 May 2020 02:20:41 +0000 Subject: [PATCH 0362/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 85 ++++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 46 insertions(+), 43 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ef21c1db2c4..54905c3a811 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -523,9 +523,9 @@ "dev": true }, "@types/node": { - "version": "13.13.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.4.tgz", - "integrity": "sha512-x26ur3dSXgv5AwKS0lNfbjpCakGIduWU1DU91Zz58ONRWrIKGunmZBNv4P7N+e27sJkiGDsw/3fT4AtsqQBrBA==", + "version": "13.13.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.5.tgz", + "integrity": "sha512-3ySmiBYJPqgjiHA7oEaIo2Rzz0HrOZ7yrNO5HWyaE5q0lQ3BppDZ3N53Miz8bw2I7gh1/zir2MGVZBvpb1zq9g==", "dev": true }, "@types/normalize-package-data": { @@ -640,9 +640,9 @@ } }, "acorn": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.2.0.tgz", + "integrity": "sha512-apwXVmYVpQ34m/i71vrApRrRKCWQnZZF1+npOD0WV5xZFfwWOmKGQ2RWlfdy9vWITsenisM8M0Qeq8agcFHNiQ==", "dev": true }, "acorn-jsx": { @@ -897,9 +897,9 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.8.1.tgz", - "integrity": "sha512-OPWrTxcf1EbtAaGGFQPLbx4AaVqPrFMumKOKn2SzIRo+RTKb33lF2aoVnWqBeZaJ68uSc9R6jqIE7qkG6O33uQ==", + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.8.2.tgz", + "integrity": "sha512-sph3oUsVTGsq4qbgeWys03QKCmXjkZUO3oPnFWXEW6g1SReCY9vuONGghMgw1G6VOzkg1k+niqJsOzwfO8h9Ng==", "dev": true, "requires": { "@concordance/react": "^2.0.0", @@ -933,7 +933,7 @@ "indent-string": "^4.0.0", "is-error": "^2.2.2", "is-plain-object": "^3.0.0", - "is-promise": "^3.0.0", + "is-promise": "^4.0.0", "lodash": "^4.17.15", "matcher": "^3.0.0", "md5-hex": "^3.0.1", @@ -944,12 +944,12 @@ "picomatch": "^2.2.2", "pkg-conf": "^3.1.0", "plur": "^4.0.0", - "pretty-ms": "^6.0.1", + "pretty-ms": "^7.0.0", "read-pkg": "^5.2.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", "source-map-support": "^0.5.19", - "stack-utils": "^2.0.1", + "stack-utils": "^2.0.2", "strip-ansi": "^6.0.0", "supertap": "^1.0.0", "temp-dir": "^2.0.0", @@ -1026,9 +1026,9 @@ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, "blueimp-md5": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.13.0.tgz", - "integrity": "sha512-lmp0m647R5e77ORduxLW5mISIDcvgJZa52vMBv5uVI3UmSWTQjkJsZVBfaFqQPw/QFogJwvY6e3Gl9nP+Loe+Q==", + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.15.0.tgz", + "integrity": "sha512-Zc6sowqlCWu3+V0bocZwdaPPXlRv14EHtYcQDCOghj9EdyKLMkAOODBh3HHAx5r7QRylDYCOaXa/b/edgBLDpA==", "dev": true }, "body-parser": { @@ -1699,9 +1699,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.7.2.tgz", - "integrity": "sha512-4Rjb1FnxtOcv9qsfuaNuVsmmVn4ooVoBHzYfyKteiXwIU84PClyGA5jASoFMwPV93+FPh9spwueXauxFJZkGAg==", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.7.4.tgz", + "integrity": "sha512-Nnl77/mt6sj1BiYSVMeMWzvD0183F2MFOJyFRmZHimUVDYS9J40AvXpiFA7RpU5pQH+HkvYc0dnsHpwW2xmbyQ==", "dev": true }, "common-path-prefix": { @@ -2826,12 +2826,12 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "24.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-24.0.1.tgz", - "integrity": "sha512-lVTBsiufOO55Vo924WLa6UyxzQRB5qDifaCBafPzzO6NsTv44Y79Y9a6fkLiYeLg/77yiKAMJoyeYR7xddxgEw==", + "version": "24.0.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-24.0.6.tgz", + "integrity": "sha512-WDzUgShMK7Zg9N6s19LxUqy71At/PxCuMEXaKyBzybhABq6iU4DaZtWZ+4fkCMBvMzMwMAPa2oRD/+fQGORMhg==", "dev": true, "requires": { - "comment-parser": "^0.7.2", + "comment-parser": "^0.7.4", "debug": "^4.1.1", "jsdoctypeparser": "^6.1.0", "lodash": "^4.17.15", @@ -3125,9 +3125,9 @@ } }, "file-type": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.2.0.tgz", - "integrity": "sha512-CAkX5G5jq8LIgFu++dpM3giMZadYdU+QVQoPLajjNboo8IzaR4cKpBCVEuz+suhd/vHqoAJeSWhEubKjRPQHJg==", + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.3.0.tgz", + "integrity": "sha512-s71v6jMkbfwVdj87csLeNpL5K93mv4lN+lzgzifoICtPHhnXokDwBa3jrzfg+z6FK872iYJ0vS0i74v8XmoFDA==", "dev": true, "requires": { "readable-web-to-node-stream": "^2.0.0", @@ -4032,9 +4032,9 @@ } }, "is-promise": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-3.0.0.tgz", - "integrity": "sha512-aTHJ4BvETyySzLhguH+7sL4b8765eecqq7ZrHVuhZr3FjCL/IV+LsvisEeH+9d0AkChYny3ad1KEL+mKy4ot7A==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", + "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", "dev": true }, "is-regex": { @@ -4071,10 +4071,13 @@ "dev": true }, "is-wsl": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.1.1.tgz", - "integrity": "sha512-umZHcSrwlDHo2TGMXv0DZ8dIUGunZ2Iv68YZnrmCiBPkZ4aaOhtv7pXJKeki9k3qJ3RJr0cDyitcl5wEH3AYog==", - "dev": true + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "requires": { + "is-docker": "^2.0.0" + } }, "is-yarn-global": { "version": "0.3.0", @@ -4743,9 +4746,9 @@ }, "dependencies": { "entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.0.tgz", - "integrity": "sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw==" + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.2.tgz", + "integrity": "sha512-dmD3AvJQBUjKpcNkoqr+x+IF0SdRtPz9Vk0uTy4yWqga9ibB6s4v++QFWNohjiUGoMlF552ZvNyXDxz5iW0qmw==" } } }, @@ -5816,9 +5819,9 @@ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" }, "pretty-ms": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-6.0.1.tgz", - "integrity": "sha512-ke4njoVmlotekHlHyCZ3wI/c5AMT8peuHs8rKJqekj/oR5G8lND2dVpicFlUz5cbZgE290vvkMuDwfj/OcW1kw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.0.tgz", + "integrity": "sha512-J3aPWiC5e9ZeZFuSeBraGxSkGMOvulSWsxDByOcbD1Pr75YL3LSNIKIb52WXbCLE1sS5s4inBBbryjF4Y05Ceg==", "dev": true, "requires": { "parse-ms": "^2.1.0" @@ -7283,9 +7286,9 @@ "dev": true }, "tslib": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.2.tgz", + "integrity": "sha512-tTSkux6IGPnUGUd1XAZHcpu85MOkIl5zX49pO+jfsie3eP0B6pyhOlLXm3cAC6T7s+euSDDUUV+Acop5WmtkVg==", "dev": true }, "tunnel-agent": { diff --git a/packages/project/package.json b/packages/project/package.json index 3de5546c6ca..771dd663978 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -115,14 +115,14 @@ "string.prototype.matchall": "^4.0.2" }, "devDependencies": { - "ava": "^3.8.1", + "ava": "^3.8.2", "chokidar-cli": "^2.1.0", "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", "eslint": "^6.8.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^24.0.1", + "eslint-plugin-jsdoc": "^24.0.6", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.1", "istanbul-lib-report": "^3.0.0", From b966d1dc127467b1f91606e91f3748120b13172c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 11 May 2020 10:59:23 +0200 Subject: [PATCH 0363/1272] [ui5-project][FIX] Allow the use of specVersion 2.1 for projects https://github.com/SAP/ui5-project/pull/308 only allowed the use of the new spec version for extensions. --- packages/project/lib/projectPreprocessor.js | 3 ++- packages/project/test/lib/projectPreprocessor.js | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 6132866b279..b85870ce010 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -277,7 +277,8 @@ class ProjectPreprocessor { } if (project.specVersion !== "0.1" && project.specVersion !== "1.0" && - project.specVersion !== "1.1" && project.specVersion !== "2.0") { + project.specVersion !== "1.1" && project.specVersion !== "2.0" && + project.specVersion !== "2.1") { throw new Error( `Unsupported specification version ${project.specVersion} defined for project ` + `${project.id}. Your UI5 CLI installation might be outdated. ` + diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index c5784c8d1f0..bfd55f0fb7f 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1702,6 +1702,22 @@ test("specVersion: Project with valid version 2.0", async (t) => { t.deepEqual(res.specVersion, "2.0", "Correct spec version"); }); +test("specVersion: Project with valid version 2.1", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.1", + type: "application", + metadata: { + name: "xy" + } + }; + const res = await projectPreprocessor.processTree(tree); + t.deepEqual(res.specVersion, "2.1", "Correct spec version"); +}); + test("isBeingProcessed: Is not being processed", (t) => { const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); From 61adccae3abc3fe59f3a6698884708f27c467034 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 11 May 2020 11:55:45 +0000 Subject: [PATCH 0364/1272] [ui5-project]Release 2.1.1 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 8c16648e72d..2e9b8c3886f 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.1...HEAD). + + +## [v2.1.1] - 2020-05-11 +### Bug Fixes +- Allow the use of specVersion 2.1 for projects [`a42172f`](https://github.com/SAP/ui5-project/commit/a42172fc341666b8d9a9b6049c365b28c55c76f0) + ## [v2.1.0] - 2020-05-05 @@ -162,6 +168,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.1.1]: https://github.com/SAP/ui5-project/compare/v2.1.0...v2.1.1 [v2.1.0]: https://github.com/SAP/ui5-project/compare/v2.0.4...v2.1.0 [v2.0.4]: https://github.com/SAP/ui5-project/compare/v2.0.3...v2.0.4 [v2.0.3]: https://github.com/SAP/ui5-project/compare/v2.0.2...v2.0.3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 54905c3a811..0a177e247bf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.0", + "version": "2.1.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 771dd663978..99d95949bab 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.0", + "version": "2.1.1", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From f3d90c1d1b5a41697b23ab1055fe7717f3d40dd5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 11 May 2020 15:31:12 +0200 Subject: [PATCH 0365/1272] [ui5-project][FIX] framework t8r: Allow use of specVersion 2.1 --- packages/project/lib/translators/ui5Framework.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index a1c18dda93c..40482e0e055 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -83,7 +83,7 @@ const utils = { if (!project.framework) { return; } - if (project.specVersion !== "2.0") { + if (project.specVersion !== "2.0" && project.specVersion !== "2.1") { log.warn(`Project ${project.metadata.name} defines invalid ` + `specification version ${project.specVersion} for framework.libraries configuration`); return; @@ -239,7 +239,8 @@ module.exports = { }); queue.push(...project.dependencies); - if (project.specVersion === "2.0" && project.framework && project.framework.libraries) { + if ((project.specVersion === "2.0" || project.specVersion === "2.1") && + project.framework && project.framework.libraries) { const frameworkDeps = project.framework.libraries .filter((dependency) => { if (dependency.optional && frameworkLibs[dependency.name]) { From e892c25bd77e58be15ee1f7fcab42b0269f56430 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 11 May 2020 13:55:02 +0000 Subject: [PATCH 0366/1272] [ui5-project]Release 2.1.2 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 2e9b8c3886f..22a6a6c9dbe 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.2...HEAD). + + +## [v2.1.2] - 2020-05-11 +### Bug Fixes +- **framework t8r:** Allow use of specVersion 2.1 [`961847d`](https://github.com/SAP/ui5-project/commit/961847d113e6f594526201ab9ecccb898d2497e2) + ## [v2.1.1] - 2020-05-11 @@ -168,6 +174,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.1.2]: https://github.com/SAP/ui5-project/compare/v2.1.1...v2.1.2 [v2.1.1]: https://github.com/SAP/ui5-project/compare/v2.1.0...v2.1.1 [v2.1.0]: https://github.com/SAP/ui5-project/compare/v2.0.4...v2.1.0 [v2.0.4]: https://github.com/SAP/ui5-project/compare/v2.0.3...v2.0.4 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0a177e247bf..40531af0155 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.1", + "version": "2.1.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 99d95949bab..942e6514520 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.1", + "version": "2.1.2", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From fa521574eab912a8f979a62271fe25aecfc93df4 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 14 May 2020 09:35:11 +0000 Subject: [PATCH 0367/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.0.1 to 2.0.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.0.2/CHANGELOG.md --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 40531af0155..265fb343a9a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -534,9 +534,9 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.1.tgz", - "integrity": "sha512-+Xdbj2Ev3jJSSMHc0KZMZU3mb/kV5roZQ/R9tW8PTYVFp8U8vlvqSaLB2eoErAUfTQiZvB9Pa/2lhhnn22t6LA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.2.tgz", + "integrity": "sha512-RiR2H8Vi7ctR992QSqJyc49Cqtx3PzQMvwswesG9EBmPWT1QWwXvqLIK8eM5Q6Rx1wU73CHYfd7k9wR7xPdjtw==", "requires": { "@ui5/fs": "^2.0.1", "@ui5/logger": "^2.0.0", @@ -547,7 +547,7 @@ "esprima": "^4.0.1", "estraverse": "^5.1.0", "globby": "^11.0.0", - "graceful-fs": "^4.2.3", + "graceful-fs": "^4.2.4", "jsdoc": "^3.6.4", "less-openui5": "^0.8.6", "make-dir": "^3.1.0", @@ -557,7 +557,7 @@ "rimraf": "^3.0.2", "semver": "^7.3.2", "slash": "^3.0.0", - "terser": "^4.6.12", + "terser": "^4.6.13", "xml2js": "^0.4.23", "yazl": "^2.5.1" } diff --git a/packages/project/package.json b/packages/project/package.json index 942e6514520..f9b6475ae5d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -94,7 +94,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.0.1", + "@ui5/builder": "^2.0.2", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.0.2", "ajv": "^6.12.2", From 1f4ec02c13a6895a72cc5e34863d9862d000b8ef Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 14 May 2020 10:41:12 +0000 Subject: [PATCH 0368/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.0.2 to 2.0.3 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.0.3/CHANGELOG.md --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 265fb343a9a..1299f708a43 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -589,11 +589,11 @@ } }, "@ui5/server": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.0.2.tgz", - "integrity": "sha512-6Vh1siee4rYqagcAfnDhO0dRk+ir3Ui5dsT4ePaPUnWzL1fvSdExNLueoYrY4B8raky8AUWnYD6wZCWa0qE/8w==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.0.3.tgz", + "integrity": "sha512-dgYuyTwa5WF7dGuicxvRs/r1/k3fWhu4KOXs975HYT4qETRxkUCECZJecD/kpvFQJn1R3IaJFoCQezweMaCyxQ==", "requires": { - "@ui5/builder": "^2.0.1", + "@ui5/builder": "^2.0.2", "@ui5/fs": "^2.0.1", "@ui5/logger": "^2.0.0", "compression": "^1.7.4", @@ -604,7 +604,7 @@ "etag": "^1.8.1", "express": "^4.17.1", "fresh": "^0.5.2", - "graceful-fs": "^4.2.3", + "graceful-fs": "^4.2.4", "make-dir": "^3.1.0", "mime-types": "^2.1.27", "parseurl": "^1.3.3", @@ -2961,9 +2961,9 @@ } }, "eventemitter3": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.0.tgz", - "integrity": "sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg==" + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" }, "events-to-array": { "version": "1.1.2", diff --git a/packages/project/package.json b/packages/project/package.json index f9b6475ae5d..cb3b9705ff2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "dependencies": { "@ui5/builder": "^2.0.2", "@ui5/logger": "^2.0.0", - "@ui5/server": "^2.0.2", + "@ui5/server": "^2.0.3", "ajv": "^6.12.2", "ajv-errors": "^1.0.1", "chalk": "^4.0.0", From 0784c387f66ee5299d67e0b6ad03a190fc66f94f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 14 May 2020 10:44:12 +0000 Subject: [PATCH 0369/1272] [ui5-project]Release 2.1.3 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 22a6a6c9dbe..f12e89811dd 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.3...HEAD). + + +## [v2.1.3] - 2020-05-14 ## [v2.1.2] - 2020-05-11 @@ -174,6 +177,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.1.3]: https://github.com/SAP/ui5-project/compare/v2.1.2...v2.1.3 [v2.1.2]: https://github.com/SAP/ui5-project/compare/v2.1.1...v2.1.2 [v2.1.1]: https://github.com/SAP/ui5-project/compare/v2.1.0...v2.1.1 [v2.1.0]: https://github.com/SAP/ui5-project/compare/v2.0.4...v2.1.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1299f708a43..2e08fed1d71 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.2", + "version": "2.1.3", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index cb3b9705ff2..2852ea6b754 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.2", + "version": "2.1.3", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From da909d63bf191ef211a682aea334de24843ada1d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 17 May 2020 02:21:21 +0000 Subject: [PATCH 0370/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 84 ++++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 45 insertions(+), 41 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2e08fed1d71..94b056ffc56 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -523,9 +523,9 @@ "dev": true }, "@types/node": { - "version": "13.13.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.5.tgz", - "integrity": "sha512-3ySmiBYJPqgjiHA7oEaIo2Rzz0HrOZ7yrNO5HWyaE5q0lQ3BppDZ3N53Miz8bw2I7gh1/zir2MGVZBvpb1zq9g==", + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.1.tgz", + "integrity": "sha512-FAYBGwC+W6F9+huFIDtn43cpy7+SzG+atzRiTfdp3inUKL2hXnd4rG8hylJLIh4+hqrQy1P17kvJByE/z825hA==", "dev": true }, "@types/normalize-package-data": { @@ -1026,9 +1026,9 @@ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, "blueimp-md5": { - "version": "2.15.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.15.0.tgz", - "integrity": "sha512-Zc6sowqlCWu3+V0bocZwdaPPXlRv14EHtYcQDCOghj9EdyKLMkAOODBh3HHAx5r7QRylDYCOaXa/b/edgBLDpA==", + "version": "2.16.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.16.0.tgz", + "integrity": "sha512-j4nzWIqEFpLSbdhUApHRGDwfXbV8ALhqOn+FY5L6XBdKPAXU9BpGgFSbDsgqogfqPPR9R2WooseWCsfhfEC6uQ==", "dev": true }, "body-parser": { @@ -3086,9 +3086,9 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "fastq": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.7.0.tgz", - "integrity": "sha512-YOadQRnHd5q6PogvAR/x62BGituF2ufiEA6s8aavQANw5YKHERI4AREboX6KotzP8oX2klxYF2wcV/7bn1clfQ==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz", + "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==", "requires": { "reusify": "^1.0.4" } @@ -3125,9 +3125,9 @@ } }, "file-type": { - "version": "14.3.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.3.0.tgz", - "integrity": "sha512-s71v6jMkbfwVdj87csLeNpL5K93mv4lN+lzgzifoICtPHhnXokDwBa3jrzfg+z6FK872iYJ0vS0i74v8XmoFDA==", + "version": "14.4.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.4.0.tgz", + "integrity": "sha512-U5Q2lHPcERmBsg+DpS/+0r+g7PCsJmyW+aggHnGbMimCyNCpIerLv/VzHJHqtc0O91AXr4Puz4DL7LzA5hMdwA==", "dev": true, "requires": { "readable-web-to-node-stream": "^2.0.0", @@ -4122,15 +4122,12 @@ } }, "istanbul-lib-instrument": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.1.tgz", - "integrity": "sha512-imIchxnodll7pvQBYOqUu88EufLCU56LMeFPZZM/fJZ1irYcYdqroaV+ACK1Ila8ls09iEYArp+nqyC6lW1Vfg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", "dev": true, "requires": { "@babel/core": "^7.7.5", - "@babel/parser": "^7.7.5", - "@babel/template": "^7.7.4", - "@babel/traverse": "^7.7.4", "@istanbuljs/schema": "^0.1.2", "istanbul-lib-coverage": "^3.0.0", "semver": "^6.3.0" @@ -4377,6 +4374,12 @@ "json-buffer": "3.0.0" } }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + }, "klaw": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", @@ -4753,9 +4756,9 @@ } }, "markdown-it-anchor": { - "version": "5.2.7", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.2.7.tgz", - "integrity": "sha512-REFmIaSS6szaD1bye80DMbp7ePwsPNvLTR5HunsUcZ0SG0rWJQ+Pz24R4UlTKtjKBPhxo0v0tOBDYjZQQknW8Q==" + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.3.0.tgz", + "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==" }, "marked": { "version": "0.8.2", @@ -4920,13 +4923,14 @@ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "minimist-options": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.0.2.tgz", - "integrity": "sha512-seq4hpWkYSUh1y7NXxzucwAN9yVlBc3Upgdjz8vLCP97jG8kaOmzYrVH/m7tQ1NYD1wdtZbSLfdy4zFmRWuc/w==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", "dev": true, "requires": { "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" }, "dependencies": { "arrify": { @@ -5213,9 +5217,9 @@ }, "dependencies": { "safe-buffer": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", - "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" } } }, @@ -5389,9 +5393,9 @@ } }, "open": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/open/-/open-7.0.3.tgz", - "integrity": "sha512-sP2ru2v0P290WFfv49Ap8MF6PkzGNnGlAwHweB4WR4mr5d2d0woiCluUeJ218w7/+PmoBy9JmYgD5A4mLcWOFA==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/open/-/open-7.0.4.tgz", + "integrity": "sha512-brSA+/yq+b08Hsr4c8fsEW2CRzk1BmfN3SAK/5VCHQ9bdoZJ4qa/+AfR0xHjlbbZUyPkUHs1b8x1RqdyZdkVqQ==", "dev": true, "requires": { "is-docker": "^2.0.0", @@ -6111,9 +6115,9 @@ "dev": true }, "regextras": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.7.0.tgz", - "integrity": "sha512-ds+fL+Vhl918gbAUb0k2gVKbTZLsg84Re3DI6p85Et0U0tYME3hyW4nMK8Px4dtDaBA2qNjvG5uWyW7eK5gfmw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.7.1.tgz", + "integrity": "sha512-9YXf6xtW+qzQ+hcMQXx95MOvfqXFgsKDZodX3qZB0x2n5Z94ioetIITsBtvJbiOyxa/6s9AtyweBLCdPmPko/w==", "dev": true }, "registry-auth-token": { @@ -6584,9 +6588,9 @@ "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" }, "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "requires": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -7286,9 +7290,9 @@ "dev": true }, "tslib": { - "version": "1.11.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.2.tgz", - "integrity": "sha512-tTSkux6IGPnUGUd1XAZHcpu85MOkIl5zX49pO+jfsie3eP0B6pyhOlLXm3cAC6T7s+euSDDUUV+Acop5WmtkVg==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", "dev": true }, "tunnel-agent": { diff --git a/packages/project/package.json b/packages/project/package.json index 2852ea6b754..8b993fa3ec4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -124,7 +124,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^24.0.6", "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.1", + "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", "js-beautify": "^1.11.0", From 4f48620a20e93549c4708345a79b873b908f2333 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 19 May 2020 19:42:32 +0000 Subject: [PATCH 0371/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.0.2 to 2.0.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.0.3/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 94b056ffc56..3c67b6795cb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -534,9 +534,9 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.2.tgz", - "integrity": "sha512-RiR2H8Vi7ctR992QSqJyc49Cqtx3PzQMvwswesG9EBmPWT1QWwXvqLIK8eM5Q6Rx1wU73CHYfd7k9wR7xPdjtw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.3.tgz", + "integrity": "sha512-EfUEFr6OPF/Oz1+kLgxLGbtSqcuKE0oewEbMyj0t9LvRfMhevqFoW2GzB5PN0iXXeeDGLiACyzJX5TEyzEQjeA==", "requires": { "@ui5/fs": "^2.0.1", "@ui5/logger": "^2.0.0", @@ -7173,9 +7173,9 @@ "dev": true }, "terser": { - "version": "4.6.13", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.13.tgz", - "integrity": "sha512-wMvqukYgVpQlymbnNbabVZbtM6PN63AzqexpwJL8tbh/mRT9LE5o+ruVduAGL7D6Fpjl+Q+06U5I9Ul82odAhw==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.7.0.tgz", + "integrity": "sha512-Lfb0RiZcjRDXCC3OSHJpEkxJ9Qeqs6mp2v4jf2MHfy8vGERmVDuvjXdd/EnP5Deme5F2yBRBymKmKHCBg2echw==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", diff --git a/packages/project/package.json b/packages/project/package.json index 8b993fa3ec4..0121b87712f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -94,7 +94,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.0.2", + "@ui5/builder": "^2.0.3", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.0.3", "ajv": "^6.12.2", From f731a8a2a925eb9e86851b746fbd44c0ae28d6c8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 24 May 2020 02:20:44 +0000 Subject: [PATCH 0372/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 61 +++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 35 insertions(+), 28 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3c67b6795cb..a6e3e3c9c19 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -340,13 +340,14 @@ } }, "@istanbuljs/load-nyc-config": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz", - "integrity": "sha512-ZR0rq/f/E4f4XcgnDvtMWXCUJpi8eO0rssVhmztsZqLIEFA9UUP9zmpE0VxlM+kv/E1ul2I876Fwil2ayptDVg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", "dev": true, "requires": { "camelcase": "^5.3.1", "find-up": "^4.1.0", + "get-package-type": "^0.1.0", "js-yaml": "^3.13.1", "resolve-from": "^5.0.0" }, @@ -423,9 +424,9 @@ "dev": true }, "@sinonjs/commons": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.2.tgz", - "integrity": "sha512-+DUO6pnp3udV/v2VfUWgaY5BIE1IfT7lLfeDzPVeMT1XKkaAp9LgSI9x5RtrFQoZ9Oi0PgXQQHPaoKu7dCjVxw==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.0.tgz", + "integrity": "sha512-wEj54PfsZ5jGSwMX68G8ZXFawcSglQSXqCftWX3ec8MDUzQdHgcKvw97awHbY0efQEL5iKUOAmmVtoYgmrSG4Q==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -523,9 +524,9 @@ "dev": true }, "@types/node": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.1.tgz", - "integrity": "sha512-FAYBGwC+W6F9+huFIDtn43cpy7+SzG+atzRiTfdp3inUKL2hXnd4rG8hylJLIh4+hqrQy1P17kvJByE/z825hA==", + "version": "14.0.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.5.tgz", + "integrity": "sha512-90hiq6/VqtQgX8Sp0EzeIsv3r+ellbGj4URKj5j30tLlZvRUpnAe9YbYnjl3pJM93GyXU0tghHhvXHq+5rnCKA==", "dev": true }, "@types/normalize-package-data": { @@ -997,9 +998,9 @@ "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", - "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==" + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", + "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==" }, "balanced-match": { "version": "1.0.0", @@ -3125,9 +3126,9 @@ } }, "file-type": { - "version": "14.4.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.4.0.tgz", - "integrity": "sha512-U5Q2lHPcERmBsg+DpS/+0r+g7PCsJmyW+aggHnGbMimCyNCpIerLv/VzHJHqtc0O91AXr4Puz4DL7LzA5hMdwA==", + "version": "14.5.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.5.0.tgz", + "integrity": "sha512-hIxIT/8DPClkKbC+IEoZvcQ5aBhsivh4aWzLMvmkp9Uabzey7gFNNPmTOwp8O/b2DkJ8a4FkFMkyFzkyRVsJXg==", "dev": true, "requires": { "readable-web-to-node-stream": "^2.0.0", @@ -3360,6 +3361,12 @@ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" }, + "get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true + }, "get-port": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", @@ -3629,9 +3636,9 @@ } }, "http-proxy": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.0.tgz", - "integrity": "sha512-84I2iJM/n1d4Hdgc6y2+qY5mDaz2PUVjlg9znE9byl+q0uC3DeByqBGReQu5tpLK0TAqTIXScRUV+dg7+bUPpQ==", + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "requires": { "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", @@ -3719,9 +3726,9 @@ "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" }, "ignore": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.4.tgz", - "integrity": "sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A==" + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.6.tgz", + "integrity": "sha512-cgXgkypZBcCnOgSihyeqbo6gjIaIyDqPQB7Ra4vhE9m6kigdGoQDMHjviFhRZo3IMlRy6yElosoviMs5YxZXUA==" }, "ignore-by-default": { "version": "1.0.1", @@ -4241,9 +4248,9 @@ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", + "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -6574,9 +6581,9 @@ } }, "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "requires": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index 0121b87712f..a263395526a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "chalk": "^4.0.0", "escape-string-regexp": "^4.0.0", "graceful-fs": "^4.2.4", - "js-yaml": "^3.13.1", + "js-yaml": "^3.14.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", "mkdirp": "^1.0.4", From 80ca74f79209ad86bbf25e4ef5aa7d5d9d7aaeb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= <1410947+matz3@users.noreply.github.com> Date: Fri, 29 May 2020 14:34:23 +0200 Subject: [PATCH 0373/1272] [ui5-project][FIX] ui5Framework: Allow providing exact prerelease versions (#326) - Prereleases can now be passed, but "latest" won't resolve to them. - Add comments about RegExp patterns / test against schema pattern - Adopt error handling / add tests --- .../lib/ui5Framework/AbstractResolver.js | 39 +++++-- .../test/lib/ui5framework/AbstractResolver.js | 110 ++++++++++++++++++ 2 files changed, 138 insertions(+), 11 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index a96c116c07a..8a6047929bf 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -2,7 +2,18 @@ const path = require("path"); const log = require("@ui5/logger").getLogger("ui5Framework:AbstractResolver"); const semver = require("semver"); -const versionRegExp = /^(0|[1-9]\d*)\.(0|[1-9]\d*)(?:\.(0|[1-9]\d*))?$/; +// Matches Semantic Versioning 2.0.0 versions +// https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string +// +// This needs to be aligned with the ui5.yaml JSON schema: +// lib/validation/schema/specVersion/2.0/kind/project.json#/definitions/framework/properties/version/pattern +// +// eslint-disable-next-line max-len +const SEMVER_VERSION_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/; + +// Reduced Semantic Versioning pattern +// Matches MAJOR.MINOR as a simple version range to be resolved to the latest patch +const VERSION_RANGE_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)$/; /** * Abstract Resolver @@ -163,7 +174,7 @@ class AbstractResolver { let spec; if (version === "latest") { spec = "*"; - } else if (versionRegExp.test(version)) { + } else if (VERSION_RANGE_REGEXP.test(version) || SEMVER_VERSION_REGEXP.test(version)) { spec = version; } else { throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); @@ -171,15 +182,16 @@ class AbstractResolver { const versions = await this.fetchAllVersions({ui5HomeDir, cwd}); const resolvedVersion = semver.maxSatisfying(versions, spec); if (!resolvedVersion) { - if (this.name === "Sapui5Resolver" && semver.lt(spec, "1.76.0")) { - throw new Error(`Could not resolve framework version ${version}. ` + - `Note that SAPUI5 framework libraries can only be consumed by the UI5 Tooling ` + - `starting with SAPUI5 v1.76.0`); - } else - if (this.name === "Openui5Resolver" && semver.lt(spec, "1.52.5")) { - throw new Error(`Could not resolve framework version ${version}. ` + - `Note that OpenUI5 framework libraries can only be consumed by the UI5 Tooling ` + - `starting with OpenUI5 v1.52.5`); + if (semver.valid(spec)) { + if (this.name === "Sapui5Resolver" && semver.lt(spec, "1.76.0")) { + throw new Error(`Could not resolve framework version ${version}. ` + + `Note that SAPUI5 framework libraries can only be consumed by the UI5 Tooling ` + + `starting with SAPUI5 v1.76.0`); + } else if (this.name === "Openui5Resolver" && semver.lt(spec, "1.52.5")) { + throw new Error(`Could not resolve framework version ${version}. ` + + `Note that OpenUI5 framework libraries can only be consumed by the UI5 Tooling ` + + `starting with OpenUI5 v1.52.5`); + } } throw new Error(`Could not resolve framework version ${version}`); } @@ -198,4 +210,9 @@ class AbstractResolver { } } +if (process.env.NODE_ENV === "test") { + // Export pattern for testing to be checked against JSON schema pattern + AbstractResolver._SEMVER_VERSION_REGEXP = SEMVER_VERSION_REGEXP; +} + module.exports = AbstractResolver; diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 9f84408ce0f..0d38f755c9e 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -354,6 +354,42 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH }], "fetchAllVersions should be called with expected arguments"); }); +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH-prerelease'", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.76.0", "1.77.0", "1.78.0", "1.79.0-SNAPSHOT"]); + + const version = await MyResolver.resolveVersion("1.79.0-SNAPSHOT", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.79.0-SNAPSHOT", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion does not include prereleases for 'latest' version", async (t) => { + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.76.0", "1.77.0", "1.78.0", "1.79.0-SNAPSHOT"]); + + const version = await MyResolver.resolveVersion("latest", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.78.0", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + test.serial("AbstractResolver: Static resolveVersion without options", async (t) => { const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.75.0"]); @@ -494,3 +530,77 @@ test.serial( `Could not resolve framework version 1.75.0. Note that SAPUI5 framework libraries can only be ` + `consumed by the UI5 Tooling starting with SAPUI5 v1.76.0`); }); + +test.serial( + "AbstractResolver: Static resolveVersion throws error when latest OpenUI5 version cannot be found", async (t) => { + class Openui5Resolver extends AbstractResolver { + static async fetchAllVersions() {} + } + + sinon.stub(Openui5Resolver, "fetchAllVersions") + .returns([]); + + const error = await t.throwsAsync(Openui5Resolver.resolveVersion("latest", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Could not resolve framework version latest`); + }); + +test.serial( + "AbstractResolver: Static resolveVersion throws error when latest SAPUI5 version cannot be found", async (t) => { + class Sapui5Resolver extends AbstractResolver { + static async fetchAllVersions() {} + } + + sinon.stub(Sapui5Resolver, "fetchAllVersions") + .returns([]); + + const error = await t.throwsAsync(Sapui5Resolver.resolveVersion("latest", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Could not resolve framework version latest`); + }); + +test.serial( + "AbstractResolver: Static resolveVersion throws error when OpenUI5 version range cannot be resolved", async (t) => { + class Openui5Resolver extends AbstractResolver { + static async fetchAllVersions() {} + } + + sinon.stub(Openui5Resolver, "fetchAllVersions") + .returns([]); + + const error = await t.throwsAsync(Openui5Resolver.resolveVersion("1.99", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Could not resolve framework version 1.99`); + }); + +test.serial( + "AbstractResolver: Static resolveVersion throws error when SAPUI5 version range cannot be resolved", async (t) => { + class Sapui5Resolver extends AbstractResolver { + static async fetchAllVersions() {} + } + + sinon.stub(Sapui5Resolver, "fetchAllVersions") + .returns([]); + + const error = await t.throwsAsync(Sapui5Resolver.resolveVersion("1.99", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Could not resolve framework version 1.99`); + }); + +test.serial("AbstractResolver: SEMVER_VERSION_REGEXP should be aligned with JSON schema", async (t) => { + const projectSchema = require("../../../lib/validation/schema/specVersion/2.0/kind/project.json"); + const schemaPattern = projectSchema.definitions.framework.properties.version.pattern; + t.is(schemaPattern, AbstractResolver._SEMVER_VERSION_REGEXP.source); +}); From 5d770f9b540b22dea1b60154b5ae52dda3e0b19c Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 29 May 2020 14:08:13 +0000 Subject: [PATCH 0374/1272] [ui5-project]Release 2.1.4 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index f12e89811dd..5af70702aa6 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.4...HEAD). + + +## [v2.1.4] - 2020-05-29 +### Bug Fixes +- **ui5Framework:** Allow providing exact prerelease versions ([#326](https://github.com/SAP/ui5-project/issues/326)) [`6ce985c`](https://github.com/SAP/ui5-project/commit/6ce985c8feab26e6a97ca4570b3931f507773666) + ## [v2.1.3] - 2020-05-14 @@ -177,6 +183,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.1.4]: https://github.com/SAP/ui5-project/compare/v2.1.3...v2.1.4 [v2.1.3]: https://github.com/SAP/ui5-project/compare/v2.1.2...v2.1.3 [v2.1.2]: https://github.com/SAP/ui5-project/compare/v2.1.1...v2.1.2 [v2.1.1]: https://github.com/SAP/ui5-project/compare/v2.1.0...v2.1.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a6e3e3c9c19..4aa05f2eccb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.3", + "version": "2.1.4", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index a263395526a..3abdd290869 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.3", + "version": "2.1.4", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 76a0ccbe4d0b1cb4d3c14ce9105a6842ffcdc32c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 31 May 2020 02:21:46 +0000 Subject: [PATCH 0375/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 242 ++++++++++++++--------------- 1 file changed, 121 insertions(+), 121 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4aa05f2eccb..438d63bdbf9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,27 +5,27 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.1.tgz", + "integrity": "sha512-IGhtTmpjGbYzcEDOw7DcQtbQSXcG9ftmAXtWTu9V936vDye4xjjekktFAtgZsWpzTj/X01jocB46mTywm/4SZw==", "requires": { - "@babel/highlight": "^7.8.3" + "@babel/highlight": "^7.10.1" } }, "@babel/core": { - "version": "7.9.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.6.tgz", - "integrity": "sha512-nD3deLvbsApbHAHttzIssYqgb883yU/d9roe4RZymBCDaZryMJDbptVpEpeQuRh4BJ+SYI8le9YGxKvFEvl1Wg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.6", - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helpers": "^7.9.6", - "@babel/parser": "^7.9.6", - "@babel/template": "^7.8.6", - "@babel/traverse": "^7.9.6", - "@babel/types": "^7.9.6", + "version": "7.10.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.10.2.tgz", + "integrity": "sha512-KQmV9yguEjQsXqyOUGKjS4+3K8/DlOCE2pZcq4augdQmtTy5iv5EHtmMSJ7V4c1BIPjuwtZYqYLCq9Ga+hGBRQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.1", + "@babel/generator": "^7.10.2", + "@babel/helper-module-transforms": "^7.10.1", + "@babel/helpers": "^7.10.1", + "@babel/parser": "^7.10.2", + "@babel/template": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.2", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -66,12 +66,12 @@ } }, "@babel/generator": { - "version": "7.9.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.6.tgz", - "integrity": "sha512-+htwWKJbH2bL72HRluF8zumBxzuX0ZZUFl3JLNyoUjM/Ho8wnVpPXM6aUz8cfKDqQ/h7zHqKt4xzJteUosckqQ==", + "version": "7.10.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.10.2.tgz", + "integrity": "sha512-AxfBNHNu99DTMvlUPlt1h2+Hn7knPpH5ayJ8OqDWSeLld+Fi2AYBTC/IejWDM9Edcii4UzZRCsbUt0WlSDsDsA==", "dev": true, "requires": { - "@babel/types": "^7.9.6", + "@babel/types": "^7.10.2", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -86,120 +86,120 @@ } }, "@babel/helper-function-name": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz", - "integrity": "sha512-JVcQZeXM59Cd1qanDUxv9fgJpt3NeKUaqBqUEvfmQ+BCOKq2xUgaWZW2hr0dkbyJgezYuplEoh5knmrnS68efw==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.1.tgz", + "integrity": "sha512-fcpumwhs3YyZ/ttd5Rz0xn0TpIwVkN7X0V38B9TWNfVF42KEkhkAAuPCQ3oXmtTRtiPJrmZ0TrfS0GKF0eMaRQ==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.9.5" + "@babel/helper-get-function-arity": "^7.10.1", + "@babel/template": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.1.tgz", + "integrity": "sha512-F5qdXkYGOQUb0hpRaPoetF9AnsXknKjWMZ+wmsIRsp5ge5sFh4c3h1eH2pRTTuy9KKAA2+TTYomGXAtEL2fQEw==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.10.1" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz", - "integrity": "sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.1.tgz", + "integrity": "sha512-u7XLXeM2n50gb6PWJ9hoO5oO7JFPaZtrh35t8RqKLT1jFKj9IWeD1zrcrYp1q1qiZTdEarfDWfTIP8nGsu0h5g==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.10.1" } }, "@babel/helper-module-imports": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", - "integrity": "sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.1.tgz", + "integrity": "sha512-SFxgwYmZ3HZPyZwJRiVNLRHWuW2OgE5k2nrVs6D9Iv4PPnXVffuEHy83Sfx/l4SqF+5kyJXjAyUmrG7tNm+qVg==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.10.1" } }, "@babel/helper-module-transforms": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz", - "integrity": "sha512-0FvKyu0gpPfIQ8EkxlrAydOWROdHpBmiCiRwLkUiBGhCUPRRbVD2/tm3sFr/c/GWFrQ/ffutGUAnx7V0FzT2wA==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.10.1.tgz", + "integrity": "sha512-RLHRCAzyJe7Q7sF4oy2cB+kRnU4wDZY/H2xJFGof+M+SJEGhZsb+GFj5j1AD8NiSaVBJ+Pf0/WObiXu/zxWpFg==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.6", - "@babel/helper-simple-access": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/template": "^7.8.6", - "@babel/types": "^7.9.0", + "@babel/helper-module-imports": "^7.10.1", + "@babel/helper-replace-supers": "^7.10.1", + "@babel/helper-simple-access": "^7.10.1", + "@babel/helper-split-export-declaration": "^7.10.1", + "@babel/template": "^7.10.1", + "@babel/types": "^7.10.1", "lodash": "^4.17.13" } }, "@babel/helper-optimise-call-expression": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz", - "integrity": "sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.1.tgz", + "integrity": "sha512-a0DjNS1prnBsoKx83dP2falChcs7p3i8VMzdrSbfLhuQra/2ENC4sbri34dz/rWmDADsmF1q5GbfaXydh0Jbjg==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.10.1" } }, "@babel/helper-replace-supers": { - "version": "7.9.6", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.9.6.tgz", - "integrity": "sha512-qX+chbxkbArLyCImk3bWV+jB5gTNU/rsze+JlcF6Nf8tVTigPJSI1o1oBow/9Resa1yehUO9lIipsmu9oG4RzA==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.1.tgz", + "integrity": "sha512-SOwJzEfpuQwInzzQJGjGaiG578UYmyi2Xw668klPWV5n07B73S0a9btjLk/52Mlcxa+5AdIYqws1KyXRfMoB7A==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.8.3", - "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/traverse": "^7.9.6", - "@babel/types": "^7.9.6" + "@babel/helper-member-expression-to-functions": "^7.10.1", + "@babel/helper-optimise-call-expression": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helper-simple-access": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz", - "integrity": "sha512-VNGUDjx5cCWg4vvCTR8qQ7YJYZ+HBjxOgXEl7ounz+4Sn7+LMD3CFrCTEU6/qXKbA2nKg21CwhhBzO0RpRbdCw==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.1.tgz", + "integrity": "sha512-VSWpWzRzn9VtgMJBIWTZ+GP107kZdQ4YplJlCmIrjoLVSi/0upixezHCDG8kpPVTBJpKfxTH01wDhh+jS2zKbw==", "dev": true, "requires": { - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/template": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.1.tgz", + "integrity": "sha512-UQ1LVBPrYdbchNhLwj6fetj46BcFwfS4NllJo/1aJsT+1dLTEnXJL0qHqtY7gPzF8S2fXBJamf1biAXV3X077g==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.10.1" } }, "@babel/helper-validator-identifier": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz", - "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==" + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.1.tgz", + "integrity": "sha512-5vW/JXLALhczRCWP0PnFDMCJAchlBvM7f4uk/jXritBnIa6E1KmqmtrS3yn1LAnxFBypQ3eneLuXjsnfQsgILw==" }, "@babel/helpers": { - "version": "7.9.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.6.tgz", - "integrity": "sha512-tI4bUbldloLcHWoRUMAj4g1bF313M/o6fBKhIsb3QnGVPwRm9JsNf/gqMkQ7zjqReABiffPV6RWj7hEglID5Iw==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.1.tgz", + "integrity": "sha512-muQNHF+IdU6wGgkaJyhhEmI54MOZBKsFfsXFhboz1ybwJ1Kl7IHlbm2a++4jwrmY5UYsgitt5lfqo1wMFcHmyw==", "dev": true, "requires": { - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.9.6", - "@babel/types": "^7.9.6" + "@babel/template": "^7.10.1", + "@babel/traverse": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.1.tgz", + "integrity": "sha512-8rMof+gVP8mxYZApLF/JgNDAkdKa+aJt3ZYxF8z6+j/hpeXL7iMsKCPHa2jNMHu/qqBwzQF4OHNoYi8dMA/rYg==", "requires": { - "@babel/helper-validator-identifier": "^7.9.0", + "@babel/helper-validator-identifier": "^7.10.1", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -256,33 +256,33 @@ } }, "@babel/parser": { - "version": "7.9.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.6.tgz", - "integrity": "sha512-AoeIEJn8vt+d/6+PXDRPaksYhnlbMIiejioBZvvMQsOjW/JYK6k/0dKnvvP3EhK5GfMBWDPtrxRtegWdAcdq9Q==" + "version": "7.10.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.10.2.tgz", + "integrity": "sha512-PApSXlNMJyB4JiGVhCOlzKIif+TKFTvu0aQAhnTvfP/z3vVSN6ZypH5bfUNwFXXjRQtUEBNFd2PtmCmG2Py3qQ==" }, "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.1.tgz", + "integrity": "sha512-OQDg6SqvFSsc9A0ej6SKINWrpJiNonRIniYondK2ViKhB06i3c0s+76XUft71iqBEe9S1OKsHwPAjfHnuvnCig==", "dev": true, "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" + "@babel/code-frame": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1" } }, "@babel/traverse": { - "version": "7.9.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.6.tgz", - "integrity": "sha512-b3rAHSjbxy6VEAvlxM8OV/0X4XrG72zoxme6q1MOoe2vd0bEc+TwayhuC1+Dfgqh1QEG+pj7atQqvUprHIccsg==", + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.10.1.tgz", + "integrity": "sha512-C/cTuXeKt85K+p08jN6vMDz8vSV0vZcI0wmQ36o6mjbuo++kPMdpOYw23W2XH04dbRt9/nMEfA4W3eR21CD+TQ==", "dev": true, "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.6", - "@babel/helper-function-name": "^7.9.5", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.9.6", - "@babel/types": "^7.9.6", + "@babel/code-frame": "^7.10.1", + "@babel/generator": "^7.10.1", + "@babel/helper-function-name": "^7.10.1", + "@babel/helper-split-export-declaration": "^7.10.1", + "@babel/parser": "^7.10.1", + "@babel/types": "^7.10.1", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -312,12 +312,12 @@ } }, "@babel/types": { - "version": "7.9.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.6.tgz", - "integrity": "sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA==", + "version": "7.10.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.10.2.tgz", + "integrity": "sha512-AD3AwWBSz0AWF0AkCN9VPiWrvldXq+/e3cHa4J89vo4ymjz1XwrBFFVZmkJTsQIPNk+ZVomPSXUJqq8yyjZsng==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.9.5", + "@babel/helper-validator-identifier": "^7.10.1", "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" } @@ -524,9 +524,9 @@ "dev": true }, "@types/node": { - "version": "14.0.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.5.tgz", - "integrity": "sha512-90hiq6/VqtQgX8Sp0EzeIsv3r+ellbGj4URKj5j30tLlZvRUpnAe9YbYnjl3pJM93GyXU0tghHhvXHq+5rnCKA==", + "version": "14.0.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.6.tgz", + "integrity": "sha512-FbNmu4F67d3oZMWBV6Y4MaPER+0EpE9eIYf2yaHhCWovc1dlXCZkqGX4NLHfVVr6umt20TNBdRzrNJIzIKfdbw==", "dev": true }, "@types/normalize-package-data": { @@ -1700,9 +1700,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.7.4.tgz", - "integrity": "sha512-Nnl77/mt6sj1BiYSVMeMWzvD0183F2MFOJyFRmZHimUVDYS9J40AvXpiFA7RpU5pQH+HkvYc0dnsHpwW2xmbyQ==", + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.7.5.tgz", + "integrity": "sha512-iH9YA35ccw94nx5244GVkpyC9eVTsL71jZz6iz5w6RIf79JLF2AsXHXq9p6Oaohyl3sx5qSMnGsWUDFIAfWL4w==", "dev": true }, "common-path-prefix": { @@ -1938,9 +1938,9 @@ } }, "cross-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", - "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -3726,9 +3726,9 @@ "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" }, "ignore": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.6.tgz", - "integrity": "sha512-cgXgkypZBcCnOgSihyeqbo6gjIaIyDqPQB7Ra4vhE9m6kigdGoQDMHjviFhRZo3IMlRy6yElosoviMs5YxZXUA==" + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" }, "ignore-by-default": { "version": "1.0.1", @@ -4906,9 +4906,9 @@ "dev": true }, "min-indent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.0.tgz", - "integrity": "sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", "dev": true }, "minimalistic-assert": { @@ -7473,9 +7473,9 @@ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" }, "v8-compile-cache": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", - "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz", + "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", "dev": true }, "validate-npm-package-license": { From 84a26ce8be491c418b46be4b9698b6439efb5caa Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 5 Jun 2020 10:25:37 +0200 Subject: [PATCH 0376/1272] [ui5-project][INTERNAL] Document 1.77 workaround (#321) Co-authored-by: Matthias Osswald --- .../lib/ui5Framework/Sapui5Resolver.js | 7 ++- .../test/lib/ui5framework/Sapui5Resolver.js | 53 +++++++++++++++++++ 2 files changed, 59 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index 5bfc49e7713..3fabf8868d8 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -56,10 +56,15 @@ class Sapui5Resolver extends AbstractResolver { if (metadata.npmPackageName.startsWith("@openui5/") && semver.satisfies(this._version, "1.77.x")) { + // TODO 3.0: Remove this workaround + // 1.77.x (at least 1.77.0-1.77.2) distribution metadata.json is missing + // dependency information for all OpenUI5 libraries. + // Therefore we need to request those from the registry like it is done + // for OpenUI5 projects. const Openui5Resolver = require("./Openui5Resolver"); const openui5Resolver = new Openui5Resolver({ cwd: this._cwd, - version: this._version + version: metadata.version }); const openui5Metadata = await openui5Resolver.getLibraryMetadata(libraryName); return { diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.js index cbb171bcaf1..3ba395e0b39 100644 --- a/packages/project/test/lib/ui5framework/Sapui5Resolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.js @@ -167,3 +167,56 @@ test.serial("Sapui5Resolver: Static fetchAllVersions without options", async (t) }], "Installer should be called with expected arguments"); }); +test.serial( + "Sapui5Resolver: getLibraryMetadata should use Openui5Resolver for @openui5/ modules in 1.77.x", async (t) => { + const resolver = new Sapui5Resolver({ + cwd: "/test-project/", + version: "1.77.7" + }); + + const openui5LibraryMetadata = { + "id": "@openui5/sap.ui.lib3", + "version": "1.77.4", + "dependencies": [ + "@openui5/sap.ui.lib1" + ], + "optionalDependencies": [ + "@openui5/sap.ui.lib2" + ] + }; + const expectedMetadata = { + "npmPackageName": "@openui5/sap.ui.lib3", + "version": "1.77.4", + "dependencies": [ + "@openui5/sap.ui.lib1" + ], + "optionalDependencies": [ + "@openui5/sap.ui.lib2" + ] + }; + + const Openui5Resolver = require("../../../lib/ui5Framework/Openui5Resolver"); + const openui5GetLibraryMetadataStub = sinon.stub(Openui5Resolver.prototype, "getLibraryMetadata"); + openui5GetLibraryMetadataStub.resolves(openui5LibraryMetadata); + + const loadDistMetadataStub = sinon.stub(resolver, "loadDistMetadata"); + loadDistMetadataStub.resolves({ + libraries: { + "sap.ui.lib1": { + "npmPackageName": "@openui5/sap.ui.lib1", + "version": "1.77.4", + "dependencies": [], + "optionalDependencies": [] + } + } + }); + + const metadata = await resolver.getLibraryMetadata("sap.ui.lib1"); + t.deepEqual(metadata, expectedMetadata, "Metadata should be equal to expected OpenUI5 metadata"); + + t.is(openui5GetLibraryMetadataStub.callCount, 1, "Openui5Resolver#getLibraryMetadata should be called once"); + t.deepEqual(openui5GetLibraryMetadataStub.getCall(0).args, ["sap.ui.lib1"], + "Openui5Resolver#getLibraryMetadata should be called with library name"); + t.is(openui5GetLibraryMetadataStub.getCall(0).thisValue._version, "1.77.4", + "Openui5Resolver should be created with @openui5 library version"); + }); From bce9bffdb7a19fd562f0f15d59dc40abc758f74d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 7 Jun 2020 02:20:50 +0000 Subject: [PATCH 0377/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 82 ++++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 39 insertions(+), 45 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 438d63bdbf9..ff824c13d64 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -494,19 +494,12 @@ "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==", "dev": true }, - "@types/events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", - "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", - "dev": true - }, "@types/glob": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", - "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-VgNIkxK+j7Nz5P7jvUZlRvhuPSmsEfS03b0alKcq5V/STUKAa3Plemsn5mrQUO7am6OErJ4rhGEGJbACclrtRA==", "dev": true, "requires": { - "@types/events": "*", "@types/minimatch": "*", "@types/node": "*" } @@ -524,9 +517,9 @@ "dev": true }, "@types/node": { - "version": "14.0.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.6.tgz", - "integrity": "sha512-FbNmu4F67d3oZMWBV6Y4MaPER+0EpE9eIYf2yaHhCWovc1dlXCZkqGX4NLHfVVr6umt20TNBdRzrNJIzIKfdbw==", + "version": "14.0.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.11.tgz", + "integrity": "sha512-lCvvI24L21ZVeIiyIUHZ5Oflv1hhHQ5E1S25IRlKIXaRkVgmXpJMI3wUJkmym2bTbCe+WoIibQnMVAU3FguaOg==", "dev": true }, "@types/normalize-package-data": { @@ -2588,9 +2581,9 @@ "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" }, "escodegen": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.1.tgz", - "integrity": "sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==", + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.2.tgz", + "integrity": "sha512-InuOIiKk8wwuOFg6x9BQXbzjrQhtyXh46K9bqVTPzSo2FnyMBaYGBMC6PhQy7yxxil9vIedFBweQBMK74/7o8A==", "requires": { "esprima": "^4.0.1", "estraverse": "^4.2.0", @@ -2865,9 +2858,9 @@ } }, "eslint-scope": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", - "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz", + "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==", "dev": true, "requires": { "esrecurse": "^4.1.0", @@ -2892,9 +2885,9 @@ } }, "eslint-visitor-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", - "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.2.0.tgz", + "integrity": "sha512-WFb4ihckKil6hu3Dp798xdzSfddwKKU3+nGniKF6HfeW6OLd2OUDEPP7TcHtB5+QXOKg2s6B2DaMPE1Nn/kxKQ==", "dev": true }, "espree": { @@ -3126,9 +3119,9 @@ } }, "file-type": { - "version": "14.5.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.5.0.tgz", - "integrity": "sha512-hIxIT/8DPClkKbC+IEoZvcQ5aBhsivh4aWzLMvmkp9Uabzey7gFNNPmTOwp8O/b2DkJ8a4FkFMkyFzkyRVsJXg==", + "version": "14.6.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.6.0.tgz", + "integrity": "sha512-/Lg6yw7NtOVBe4wynSTDGyL32Jm+mqjYA7wZScjnEjYN1a68fhFhE75V2YEQPAfCoVtq6Mi02thUEYiOfTgLnQ==", "dev": true, "requires": { "readable-web-to-node-stream": "^2.0.0", @@ -3442,9 +3435,9 @@ } }, "globby": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.0.tgz", - "integrity": "sha512-iuehFnR3xu5wBBtm4xi0dMe92Ob87ufyu/dHwpDYfbcpYpIbrO5OnS8M1vWvrBhSGEJ3/Ecj7gnX76P8YxpPEg==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", + "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", "requires": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -3919,9 +3912,9 @@ } }, "is-callable": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==" }, "is-ci": { "version": "2.0.0", @@ -4045,11 +4038,11 @@ "dev": true }, "is-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", + "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", "requires": { - "has": "^1.0.3" + "has-symbols": "^1.0.1" } }, "is-stream": { @@ -4756,9 +4749,9 @@ }, "dependencies": { "entities": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.2.tgz", - "integrity": "sha512-dmD3AvJQBUjKpcNkoqr+x+IF0SdRtPz9Vk0uTy4yWqga9ibB6s4v++QFWNohjiUGoMlF552ZvNyXDxz5iW0qmw==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", + "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" } } }, @@ -4857,9 +4850,9 @@ "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" }, "merge2": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz", - "integrity": "sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" }, "methods": { "version": "1.1.2", @@ -5255,9 +5248,9 @@ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nyc": { - "version": "15.0.1", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.0.1.tgz", - "integrity": "sha512-n0MBXYBYRqa67IVt62qW1r/d9UH/Qtr7SF1w/nQLJ9KxvWF6b2xCHImRAixHN9tnMMYHC2P14uo6KddNGwMgGg==", + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", + "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", "dev": true, "requires": { "@istanbuljs/load-nyc-config": "^1.0.0", @@ -5268,6 +5261,7 @@ "find-cache-dir": "^3.2.0", "find-up": "^4.1.0", "foreground-child": "^2.0.0", + "get-package-type": "^0.1.0", "glob": "^7.1.6", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-hook": "^3.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 3abdd290869..478e72cf93d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -130,7 +130,7 @@ "js-beautify": "^1.11.0", "jsdoc": "^3.6.4", "mock-require": "^3.0.3", - "nyc": "^15.0.1", + "nyc": "^15.1.0", "open-cli": "^6.0.1", "rimraf": "^3.0.2", "sinon": "^9.0.2", From b4bd39d835a2d5d2ea7c5c3106a0dc7516fc038d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 14 Jun 2020 02:21:05 +0000 Subject: [PATCH 0378/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 36 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ff824c13d64..549ad1697e2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -517,9 +517,9 @@ "dev": true }, "@types/node": { - "version": "14.0.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.11.tgz", - "integrity": "sha512-lCvvI24L21ZVeIiyIUHZ5Oflv1hhHQ5E1S25IRlKIXaRkVgmXpJMI3wUJkmym2bTbCe+WoIibQnMVAU3FguaOg==", + "version": "14.0.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.13.tgz", + "integrity": "sha512-rouEWBImiRaSJsVA+ITTFM6ZxibuAlTuNOCyxVbwreu6k6+ujs7DfnU9o+PShFhET78pMBl3eH+AGSI5eOTkPA==", "dev": true }, "@types/normalize-package-data": { @@ -634,9 +634,9 @@ } }, "acorn": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.2.0.tgz", - "integrity": "sha512-apwXVmYVpQ34m/i71vrApRrRKCWQnZZF1+npOD0WV5xZFfwWOmKGQ2RWlfdy9vWITsenisM8M0Qeq8agcFHNiQ==", + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.3.1.tgz", + "integrity": "sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==", "dev": true }, "acorn-jsx": { @@ -1289,9 +1289,9 @@ } }, "chalk": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz", - "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -3046,9 +3046,9 @@ "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fast-deep-equal": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", - "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==" + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, "fast-diff": { "version": "1.2.0", @@ -3119,9 +3119,9 @@ } }, "file-type": { - "version": "14.6.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.6.0.tgz", - "integrity": "sha512-/Lg6yw7NtOVBe4wynSTDGyL32Jm+mqjYA7wZScjnEjYN1a68fhFhE75V2YEQPAfCoVtq6Mi02thUEYiOfTgLnQ==", + "version": "14.6.1", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.6.1.tgz", + "integrity": "sha512-h8TJ6Ff9UuhSOHr44Xh2J2r7Gg5ED8jNZKQ2XA2WyFCRum9qTcY3Qy1Q6mG5xMTeIT3IJcLlSReD4WEr/nL9vw==", "dev": true, "requires": { "readable-web-to-node-stream": "^2.0.0", @@ -6830,9 +6830,9 @@ "integrity": "sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w==" }, "strtok3": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.0.tgz", - "integrity": "sha512-ZXlmE22LZnIBvEU3n/kZGdh770fYFie65u5+2hLK9s74DoFtpkQIdBZVeYEzlolpGa+52G5IkzjUWn+iXynOEQ==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.3.tgz", + "integrity": "sha512-/3RaYN9rW5WEYNHSvn081CgL4HziT027hfi5tsksbPfeWxi3BSLb8tolZDzpYU3I78/0ZqRiFpMDAqN2t4YShA==", "dev": true, "requires": { "@tokenizer/token": "^0.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index 478e72cf93d..3dd7289514a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -99,7 +99,7 @@ "@ui5/server": "^2.0.3", "ajv": "^6.12.2", "ajv-errors": "^1.0.1", - "chalk": "^4.0.0", + "chalk": "^4.1.0", "escape-string-regexp": "^4.0.0", "graceful-fs": "^4.2.4", "js-yaml": "^3.14.0", From cb9546906b60d8fac5e701722c4442938baa4051 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 9 Jun 2020 17:14:25 +0200 Subject: [PATCH 0379/1272] [ui5-project][INTERNAL] Azure Pipeline: Make Node 14 latest --- packages/project/azure-pipelines.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index b17d1ff63ed..4df1e78b061 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -16,13 +16,13 @@ strategy: node_version: 12.x linux_node_latest: imageName: 'ubuntu-18.04' - node_version: 13.x + node_version: 14.x mac_node_latest: imageName: 'macOS-10.15' - node_version: 13.x + node_version: 14.x windows_node_latest: imageName: 'windows-2019' - node_version: 13.x + node_version: 14.x pool: vmImage: $(imageName) From 8ca92b83455e5a8cd09da852d0f2bb3fc105436e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 15 Jun 2020 16:41:35 +0000 Subject: [PATCH 0380/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.0.3 to 2.0.4 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.0.4/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 549ad1697e2..9aa3dac82a2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -528,19 +528,19 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.3.tgz", - "integrity": "sha512-EfUEFr6OPF/Oz1+kLgxLGbtSqcuKE0oewEbMyj0t9LvRfMhevqFoW2GzB5PN0iXXeeDGLiACyzJX5TEyzEQjeA==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.4.tgz", + "integrity": "sha512-Ei65EqG0+YA7MSBmJA7vQ3qBRHIXOg8N8PLKlnUII9clMkZG1MqcCwhGL9ui+WDoBZlAnCmDlZH1T7fc5lLOEg==", "requires": { "@ui5/fs": "^2.0.1", "@ui5/logger": "^2.0.0", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", - "escodegen": "^1.14.1", + "escodegen": "^1.14.2", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "^5.1.0", - "globby": "^11.0.0", + "globby": "^11.0.1", "graceful-fs": "^4.2.4", "jsdoc": "^3.6.4", "less-openui5": "^0.8.6", @@ -551,7 +551,7 @@ "rimraf": "^3.0.2", "semver": "^7.3.2", "slash": "^3.0.0", - "terser": "^4.6.13", + "terser": "^4.7.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" } diff --git a/packages/project/package.json b/packages/project/package.json index 3dd7289514a..f6a2ee4fa55 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -94,7 +94,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.0.3", + "@ui5/builder": "^2.0.4", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.0.3", "ajv": "^6.12.2", From 5d71fe67385322888b2c8548ea44dd99424458b9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 15 Jun 2020 16:47:49 +0000 Subject: [PATCH 0381/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.0.3 to 2.1.0 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.1.0/CHANGELOG.md --- packages/project/package-lock.json | 61 ++++++++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 43 insertions(+), 20 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9aa3dac82a2..807297f84b1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -583,13 +583,14 @@ } }, "@ui5/server": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.0.3.tgz", - "integrity": "sha512-dgYuyTwa5WF7dGuicxvRs/r1/k3fWhu4KOXs975HYT4qETRxkUCECZJecD/kpvFQJn1R3IaJFoCQezweMaCyxQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.1.0.tgz", + "integrity": "sha512-d44j2QGbS9YRI+Vd9krR6ETUkjQ5Q7WeCtzEL0Xhfs4vUtdA+HpaARMasW7QMsxcpaN4iIVqTj0Rx7K37w7kRQ==", "requires": { - "@ui5/builder": "^2.0.2", + "@ui5/builder": "^2.0.4", "@ui5/fs": "^2.0.1", "@ui5/logger": "^2.0.0", + "body-parser": "^1.19.0", "compression": "^1.7.4", "connect-openui5": "^0.9.0", "cors": "^2.8.5", @@ -604,6 +605,7 @@ "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", + "router": "^1.3.5", "spdy": "^4.0.2", "treeify": "^1.0.1", "yesno": "^0.3.1" @@ -1042,11 +1044,6 @@ "type-is": "~1.6.17" }, "dependencies": { - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" - }, "qs": { "version": "6.7.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", @@ -1158,9 +1155,9 @@ "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=" }, "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" }, "cacache": { "version": "12.0.4", @@ -1730,6 +1727,13 @@ "on-headers": "~1.0.2", "safe-buffer": "5.1.2", "vary": "~1.1.2" + }, + "dependencies": { + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + } } }, "concat-map": { @@ -5974,13 +5978,6 @@ "http-errors": "1.7.2", "iconv-lite": "0.4.24", "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" - } } }, "rc": { @@ -6287,6 +6284,32 @@ "glob": "^7.1.3" } }, + "router": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/router/-/router-1.3.5.tgz", + "integrity": "sha512-kozCJZUhuSJ5VcLhSb3F8fsmGXy+8HaDbKCAerR1G6tq3mnMZFMuSohbFvGv1c5oMFipijDjRZuuN/Sq5nMf3g==", + "requires": { + "array-flatten": "3.0.0", + "debug": "2.6.9", + "methods": "~1.1.2", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "setprototypeof": "1.2.0", + "utils-merge": "1.0.1" + }, + "dependencies": { + "array-flatten": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz", + "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==" + }, + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + } + } + }, "run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index f6a2ee4fa55..fb31cd21e89 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "dependencies": { "@ui5/builder": "^2.0.4", "@ui5/logger": "^2.0.0", - "@ui5/server": "^2.0.3", + "@ui5/server": "^2.1.0", "ajv": "^6.12.2", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From 2885b5fef5ebf88d4d1cdc56e9db93cc179083b6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 21 Jun 2020 02:21:21 +0000 Subject: [PATCH 0382/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 334 +++++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 130 insertions(+), 206 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 807297f84b1..1fef83e6ec2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,27 +5,27 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.1.tgz", - "integrity": "sha512-IGhtTmpjGbYzcEDOw7DcQtbQSXcG9ftmAXtWTu9V936vDye4xjjekktFAtgZsWpzTj/X01jocB46mTywm/4SZw==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.3.tgz", + "integrity": "sha512-fDx9eNW0qz0WkUeqL6tXEXzVlPh6Y5aCDEZesl0xBGA8ndRukX91Uk44ZqnkECp01NAZUdCAl+aiQNGi0k88Eg==", "requires": { - "@babel/highlight": "^7.10.1" + "@babel/highlight": "^7.10.3" } }, "@babel/core": { - "version": "7.10.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.10.2.tgz", - "integrity": "sha512-KQmV9yguEjQsXqyOUGKjS4+3K8/DlOCE2pZcq4augdQmtTy5iv5EHtmMSJ7V4c1BIPjuwtZYqYLCq9Ga+hGBRQ==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.10.3.tgz", + "integrity": "sha512-5YqWxYE3pyhIi84L84YcwjeEgS+fa7ZjK6IBVGTjDVfm64njkR2lfDhVR5OudLk8x2GK59YoSyVv+L/03k1q9w==", "dev": true, "requires": { - "@babel/code-frame": "^7.10.1", - "@babel/generator": "^7.10.2", + "@babel/code-frame": "^7.10.3", + "@babel/generator": "^7.10.3", "@babel/helper-module-transforms": "^7.10.1", "@babel/helpers": "^7.10.1", - "@babel/parser": "^7.10.2", - "@babel/template": "^7.10.1", - "@babel/traverse": "^7.10.1", - "@babel/types": "^7.10.2", + "@babel/parser": "^7.10.3", + "@babel/template": "^7.10.3", + "@babel/traverse": "^7.10.3", + "@babel/types": "^7.10.3", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -66,12 +66,12 @@ } }, "@babel/generator": { - "version": "7.10.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.10.2.tgz", - "integrity": "sha512-AxfBNHNu99DTMvlUPlt1h2+Hn7knPpH5ayJ8OqDWSeLld+Fi2AYBTC/IejWDM9Edcii4UzZRCsbUt0WlSDsDsA==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.10.3.tgz", + "integrity": "sha512-drt8MUHbEqRzNR0xnF8nMehbY11b1SDkRw03PSNH/3Rb2Z35oxkddVSi3rcaak0YJQ86PCuE7Qx1jSFhbLNBMA==", "dev": true, "requires": { - "@babel/types": "^7.10.2", + "@babel/types": "^7.10.3", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -86,41 +86,41 @@ } }, "@babel/helper-function-name": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.1.tgz", - "integrity": "sha512-fcpumwhs3YyZ/ttd5Rz0xn0TpIwVkN7X0V38B9TWNfVF42KEkhkAAuPCQ3oXmtTRtiPJrmZ0TrfS0GKF0eMaRQ==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.3.tgz", + "integrity": "sha512-FvSj2aiOd8zbeqijjgqdMDSyxsGHaMt5Tr0XjQsGKHD3/1FP3wksjnLAWzxw7lvXiej8W1Jt47SKTZ6upQNiRw==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.10.1", - "@babel/template": "^7.10.1", - "@babel/types": "^7.10.1" + "@babel/helper-get-function-arity": "^7.10.3", + "@babel/template": "^7.10.3", + "@babel/types": "^7.10.3" } }, "@babel/helper-get-function-arity": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.1.tgz", - "integrity": "sha512-F5qdXkYGOQUb0hpRaPoetF9AnsXknKjWMZ+wmsIRsp5ge5sFh4c3h1eH2pRTTuy9KKAA2+TTYomGXAtEL2fQEw==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.3.tgz", + "integrity": "sha512-iUD/gFsR+M6uiy69JA6fzM5seno8oE85IYZdbVVEuQaZlEzMO2MXblh+KSPJgsZAUx0EEbWXU0yJaW7C9CdAVg==", "dev": true, "requires": { - "@babel/types": "^7.10.1" + "@babel/types": "^7.10.3" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.1.tgz", - "integrity": "sha512-u7XLXeM2n50gb6PWJ9hoO5oO7JFPaZtrh35t8RqKLT1jFKj9IWeD1zrcrYp1q1qiZTdEarfDWfTIP8nGsu0h5g==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.3.tgz", + "integrity": "sha512-q7+37c4EPLSjNb2NmWOjNwj0+BOyYlssuQ58kHEWk1Z78K5i8vTUsteq78HMieRPQSl/NtpQyJfdjt3qZ5V2vw==", "dev": true, "requires": { - "@babel/types": "^7.10.1" + "@babel/types": "^7.10.3" } }, "@babel/helper-module-imports": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.1.tgz", - "integrity": "sha512-SFxgwYmZ3HZPyZwJRiVNLRHWuW2OgE5k2nrVs6D9Iv4PPnXVffuEHy83Sfx/l4SqF+5kyJXjAyUmrG7tNm+qVg==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.3.tgz", + "integrity": "sha512-Jtqw5M9pahLSUWA+76nhK9OG8nwYXzhQzVIGFoNaHnXF/r4l7kz4Fl0UAW7B6mqC5myoJiBP5/YQlXQTMfHI9w==", "dev": true, "requires": { - "@babel/types": "^7.10.1" + "@babel/types": "^7.10.3" } }, "@babel/helper-module-transforms": { @@ -139,12 +139,12 @@ } }, "@babel/helper-optimise-call-expression": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.1.tgz", - "integrity": "sha512-a0DjNS1prnBsoKx83dP2falChcs7p3i8VMzdrSbfLhuQra/2ENC4sbri34dz/rWmDADsmF1q5GbfaXydh0Jbjg==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.3.tgz", + "integrity": "sha512-kT2R3VBH/cnSz+yChKpaKRJQJWxdGoc6SjioRId2wkeV3bK0wLLioFpJROrX0U4xr/NmxSSAWT/9Ih5snwIIzg==", "dev": true, "requires": { - "@babel/types": "^7.10.1" + "@babel/types": "^7.10.3" } }, "@babel/helper-replace-supers": { @@ -179,9 +179,9 @@ } }, "@babel/helper-validator-identifier": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.1.tgz", - "integrity": "sha512-5vW/JXLALhczRCWP0PnFDMCJAchlBvM7f4uk/jXritBnIa6E1KmqmtrS3yn1LAnxFBypQ3eneLuXjsnfQsgILw==" + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.3.tgz", + "integrity": "sha512-bU8JvtlYpJSBPuj1VUmKpFGaDZuLxASky3LhaKj3bmpSTY6VWooSM8msk+Z0CZoErFye2tlABF6yDkT3FOPAXw==" }, "@babel/helpers": { "version": "7.10.1", @@ -195,11 +195,11 @@ } }, "@babel/highlight": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.1.tgz", - "integrity": "sha512-8rMof+gVP8mxYZApLF/JgNDAkdKa+aJt3ZYxF8z6+j/hpeXL7iMsKCPHa2jNMHu/qqBwzQF4OHNoYi8dMA/rYg==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.3.tgz", + "integrity": "sha512-Ih9B/u7AtgEnySE2L2F0Xm0GaM729XqqLfHkalTsbjXGyqmf/6M0Cu0WpvqueUlW+xk88BHw9Nkpj49naU+vWw==", "requires": { - "@babel/helper-validator-identifier": "^7.10.1", + "@babel/helper-validator-identifier": "^7.10.3", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -256,33 +256,33 @@ } }, "@babel/parser": { - "version": "7.10.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.10.2.tgz", - "integrity": "sha512-PApSXlNMJyB4JiGVhCOlzKIif+TKFTvu0aQAhnTvfP/z3vVSN6ZypH5bfUNwFXXjRQtUEBNFd2PtmCmG2Py3qQ==" + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.10.3.tgz", + "integrity": "sha512-oJtNJCMFdIMwXGmx+KxuaD7i3b8uS7TTFYW/FNG2BT8m+fmGHoiPYoH0Pe3gya07WuFmM5FCDIr1x0irkD/hyA==" }, "@babel/template": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.1.tgz", - "integrity": "sha512-OQDg6SqvFSsc9A0ej6SKINWrpJiNonRIniYondK2ViKhB06i3c0s+76XUft71iqBEe9S1OKsHwPAjfHnuvnCig==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.3.tgz", + "integrity": "sha512-5BjI4gdtD+9fHZUsaxPHPNpwa+xRkDO7c7JbhYn2afvrkDu5SfAAbi9AIMXw2xEhO/BR35TqiW97IqNvCo/GqA==", "dev": true, "requires": { - "@babel/code-frame": "^7.10.1", - "@babel/parser": "^7.10.1", - "@babel/types": "^7.10.1" + "@babel/code-frame": "^7.10.3", + "@babel/parser": "^7.10.3", + "@babel/types": "^7.10.3" } }, "@babel/traverse": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.10.1.tgz", - "integrity": "sha512-C/cTuXeKt85K+p08jN6vMDz8vSV0vZcI0wmQ36o6mjbuo++kPMdpOYw23W2XH04dbRt9/nMEfA4W3eR21CD+TQ==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.10.3.tgz", + "integrity": "sha512-qO6623eBFhuPm0TmmrUFMT1FulCmsSeJuVGhiLodk2raUDFhhTECLd9E9jC4LBIWziqt4wgF6KuXE4d+Jz9yug==", "dev": true, "requires": { - "@babel/code-frame": "^7.10.1", - "@babel/generator": "^7.10.1", - "@babel/helper-function-name": "^7.10.1", + "@babel/code-frame": "^7.10.3", + "@babel/generator": "^7.10.3", + "@babel/helper-function-name": "^7.10.3", "@babel/helper-split-export-declaration": "^7.10.1", - "@babel/parser": "^7.10.1", - "@babel/types": "^7.10.1", + "@babel/parser": "^7.10.3", + "@babel/types": "^7.10.3", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -312,12 +312,12 @@ } }, "@babel/types": { - "version": "7.10.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.10.2.tgz", - "integrity": "sha512-AD3AwWBSz0AWF0AkCN9VPiWrvldXq+/e3cHa4J89vo4ymjz1XwrBFFVZmkJTsQIPNk+ZVomPSXUJqq8yyjZsng==", + "version": "7.10.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.10.3.tgz", + "integrity": "sha512-nZxaJhBXBQ8HVoIcGsf9qWep3Oh3jCENK54V4mRF7qaJabVsAYdbTtmSD8WmAp1R6ytPiu5apMwSXyxB1WlaBA==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.10.1", + "@babel/helper-validator-identifier": "^7.10.3", "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" } @@ -648,9 +648,9 @@ "dev": true }, "acorn-walk": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.1.1.tgz", - "integrity": "sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", "dev": true }, "agent-base": { @@ -893,19 +893,19 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.8.2.tgz", - "integrity": "sha512-sph3oUsVTGsq4qbgeWys03QKCmXjkZUO3oPnFWXEW6g1SReCY9vuONGghMgw1G6VOzkg1k+niqJsOzwfO8h9Ng==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.9.0.tgz", + "integrity": "sha512-EnK5I/AX1U5nF4X1YG3QQYg2+jWnpvMW3z2y096DBvbwITkq9rB7Gu1j5clWcuizAJUlYbvcX6YfP+zkRFgC8Q==", "dev": true, "requires": { "@concordance/react": "^2.0.0", - "acorn": "^7.1.1", + "acorn": "^7.3.1", "acorn-walk": "^7.1.1", "ansi-styles": "^4.2.1", "arrgv": "^1.0.2", "arrify": "^2.0.1", "callsites": "^3.1.0", - "chalk": "^4.0.0", + "chalk": "^4.1.0", "chokidar": "^3.4.0", "chunkd": "^2.0.1", "ci-info": "^2.0.0", @@ -915,16 +915,16 @@ "cli-truncate": "^2.1.0", "code-excerpt": "^2.1.1", "common-path-prefix": "^3.0.0", - "concordance": "^4.0.0", + "concordance": "^5.0.0", "convert-source-map": "^1.7.0", "currently-unhandled": "^0.4.1", "debug": "^4.1.1", "del": "^5.1.0", - "emittery": "^0.6.0", + "emittery": "^0.7.0", "equal-length": "^1.0.0", "figures": "^3.2.0", - "globby": "^11.0.0", - "ignore-by-default": "^1.0.0", + "globby": "^11.0.1", + "ignore-by-default": "^2.0.0", "import-local": "^3.0.2", "indent-string": "^4.0.0", "is-error": "^2.2.2", @@ -1497,9 +1497,9 @@ "dev": true }, "ci-parallel-vars": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ci-parallel-vars/-/ci-parallel-vars-1.0.0.tgz", - "integrity": "sha512-u6dx20FBXm+apMi+5x7UVm6EH7BL1gc4XrcnQewjcB7HWRcor/V5qWc3RG2HwpgDJ26gIi2DSEu3B7sXynAw/g==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ci-parallel-vars/-/ci-parallel-vars-1.0.1.tgz", + "integrity": "sha512-uvzpYrpmidaoxvIQHM+rKSrigjOe9feHYbw4uOI2gdfe1C3xIlxO+kVXq83WQWNniTf8bAxVpy+cQeFQsMERKg==", "dev": true }, "clean-stack": { @@ -1753,39 +1753,19 @@ } }, "concordance": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-4.0.0.tgz", - "integrity": "sha512-l0RFuB8RLfCS0Pt2Id39/oCPykE01pyxgAFypWTlaGRgvLkZrtczZ8atEHpTeEIW+zYWXTBuA9cCSeEOScxReQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.0.tgz", + "integrity": "sha512-stOCz9ffg0+rytwTaL2njUOIyMfANwfwmqc9Dr4vTUS/x/KkVFlWx9Zlzu6tHYtjKxxaCF/cEAZgPDac+n35sg==", "dev": true, "requires": { - "date-time": "^2.1.0", - "esutils": "^2.0.2", - "fast-diff": "^1.1.2", + "date-time": "^3.1.0", + "esutils": "^2.0.3", + "fast-diff": "^1.2.0", "js-string-escape": "^1.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.flattendeep": "^4.4.0", - "lodash.islength": "^4.0.1", - "lodash.merge": "^4.6.1", - "md5-hex": "^2.0.0", - "semver": "^5.5.1", + "lodash": "^4.17.15", + "md5-hex": "^3.0.1", + "semver": "^7.3.2", "well-known-symbols": "^2.0.0" - }, - "dependencies": { - "md5-hex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", - "integrity": "sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM=", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } } }, "config-chain": { @@ -2021,9 +2001,9 @@ } }, "date-time": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", - "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-3.1.0.tgz", + "integrity": "sha512-uqCUKXE5q1PNBXjPqvwhwJf9SwMoAHBgWJ6DcrnS5o+W2JOiIILl0JEdVD8SGujrNS02GGxgwAg2PN2zONgtjg==", "dev": true, "requires": { "time-zone": "^1.0.0" @@ -2384,9 +2364,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "emittery": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.6.0.tgz", - "integrity": "sha512-6EMRGr9KzYWp8DzHFZsKVZBsMO6QhAeHMeHND8rhyBNCHKMLpgW9tZv40bwN3rAIKRS5CxcK8oLRKUJSB9h7yQ==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.0.tgz", + "integrity": "sha512-/kshvS+tZaggOPQDLGzXopumRRIzxciGILDlYTGIU+PmqbSfhn4wDVphFPry4H+2TNl2QxLduexPhxcWLULA5A==", "dev": true }, "emoji-regex": { @@ -2441,21 +2421,21 @@ } }, "es-abstract": { - "version": "1.17.5", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz", - "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==", + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.1", - "is-callable": "^1.1.5", - "is-regex": "^1.0.5", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", "object-inspect": "^1.7.0", "object-keys": "^1.1.1", "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.1", - "string.prototype.trimright": "^2.1.1" + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" } }, "es-to-primitive": { @@ -2889,9 +2869,9 @@ } }, "eslint-visitor-keys": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.2.0.tgz", - "integrity": "sha512-WFb4ihckKil6hu3Dp798xdzSfddwKKU3+nGniKF6HfeW6OLd2OUDEPP7TcHtB5+QXOKg2s6B2DaMPE1Nn/kxKQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true }, "espree": { @@ -3061,9 +3041,9 @@ "dev": true }, "fast-glob": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.2.tgz", - "integrity": "sha512-UDV82o4uQyljznxwMxyVRJgZZt3O5wENYojjzbaGEGZgeOxkLFf+V4cnUD+krzb2F72E18RhamkMZ7AdeggF7A==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", + "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -3123,13 +3103,13 @@ } }, "file-type": { - "version": "14.6.1", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.6.1.tgz", - "integrity": "sha512-h8TJ6Ff9UuhSOHr44Xh2J2r7Gg5ED8jNZKQ2XA2WyFCRum9qTcY3Qy1Q6mG5xMTeIT3IJcLlSReD4WEr/nL9vw==", + "version": "14.6.2", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.6.2.tgz", + "integrity": "sha512-kSZTAJxPXBdBgJyoC7TexkBWoMI/D1Gas6aTtAn9VIRFwCehwiluGV5O8O2GwqO5zIqeEvXxEKl/xfcaAKB0Yg==", "dev": true, "requires": { "readable-web-to-node-stream": "^2.0.0", - "strtok3": "^6.0.0", + "strtok3": "^6.0.3", "token-types": "^2.0.0", "typedarray-to-buffer": "^3.1.5" } @@ -3213,27 +3193,9 @@ } }, "follow-redirects": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.11.0.tgz", - "integrity": "sha512-KZm0V+ll8PfBrKwMzdo5D13b1bur9Iq9Zd/RMmAoQQcl2PxxFml8cxXPaaPYVbV0RjNjq1CU7zIzAOqtUPudmA==", - "requires": { - "debug": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.12.1.tgz", + "integrity": "sha512-tmRv0AVuR7ZyouUHLeNSiO6pqulF7dYa3s19c6t+wz9LD69/uSzdMxJ2S91nTI9U3rt/IldxpzMOFejp6f0hjg==" }, "foreground-child": { "version": "2.0.0", @@ -3728,9 +3690,9 @@ "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" }, "ignore-by-default": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", - "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-2.0.0.tgz", + "integrity": "sha512-+mQSgMRiFD3L3AOxLYOCxjIq4OnAmo5CIuC+lj5ehCJcPtV++QacEV7FdpzvYxH6DaOySWzQU6RR0lPLy37ckA==", "dev": true }, "ignore-walk": { @@ -3811,9 +3773,9 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, "inquirer": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz", - "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.2.0.tgz", + "integrity": "sha512-E0c4rPwr9ByePfNlTIB8z51kK1s2n6jrHuJeEHENl/sbq2G/S1auvibgEwNR4uSyiU+PiYHqSwsgGiXjG8p5ZQ==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", @@ -4514,12 +4476,6 @@ "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -4563,12 +4519,6 @@ "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=" }, - "lodash.islength": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.islength/-/lodash.islength-4.0.1.tgz", - "integrity": "sha1-Tpho1FJXXXUK/9NYyXlUPcIO1Xc=", - "dev": true - }, "lodash.map": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", @@ -4787,12 +4737,6 @@ "blueimp-md5": "^2.10.0" } }, - "md5-o-matic": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", - "integrity": "sha1-givM1l4RfFFPqxdrJZRdVBAKA8M=", - "dev": true - }, "mdurl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", @@ -5342,9 +5286,9 @@ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-inspect": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", + "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==" }, "object-keys": { "version": "1.1.1", @@ -6787,26 +6731,6 @@ "es-abstract": "^1.17.5" } }, - "string.prototype.trimleft": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz", - "integrity": "sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5", - "string.prototype.trimstart": "^1.0.0" - } - }, - "string.prototype.trimright": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz", - "integrity": "sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5", - "string.prototype.trimend": "^1.0.0" - } - }, "string.prototype.trimstart": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", @@ -7197,9 +7121,9 @@ "dev": true }, "terser": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.7.0.tgz", - "integrity": "sha512-Lfb0RiZcjRDXCC3OSHJpEkxJ9Qeqs6mp2v4jf2MHfy8vGERmVDuvjXdd/EnP5Deme5F2yBRBymKmKHCBg2echw==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", + "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", diff --git a/packages/project/package.json b/packages/project/package.json index fb31cd21e89..1565669dfd0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -115,7 +115,7 @@ "string.prototype.matchall": "^4.0.2" }, "devDependencies": { - "ava": "^3.8.2", + "ava": "^3.9.0", "chokidar-cli": "^2.1.0", "coveralls": "^3.1.0", "cross-env": "^7.0.2", From 4bada36f1322b5622f94806b4c67b4f76c0e95b3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 28 Jun 2020 02:20:36 +0000 Subject: [PATCH 0383/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 47 ++++++++++++------------------ 1 file changed, 19 insertions(+), 28 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1fef83e6ec2..13faff96ed6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -517,9 +517,9 @@ "dev": true }, "@types/node": { - "version": "14.0.13", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.13.tgz", - "integrity": "sha512-rouEWBImiRaSJsVA+ITTFM6ZxibuAlTuNOCyxVbwreu6k6+ujs7DfnU9o+PShFhET78pMBl3eH+AGSI5eOTkPA==", + "version": "14.0.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.14.tgz", + "integrity": "sha512-syUgf67ZQpaJj01/tRTknkMNoBBLWJOBODF0Zm4NrXmiSuxjymFrxnTu1QVYRubhVkRcZLYZG8STTwJRdVm/WQ==", "dev": true }, "@types/normalize-package-data": { @@ -1011,9 +1011,9 @@ } }, "binary-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", - "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", + "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", "dev": true }, "bluebird": { @@ -2565,9 +2565,9 @@ "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" }, "escodegen": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.2.tgz", - "integrity": "sha512-InuOIiKk8wwuOFg6x9BQXbzjrQhtyXh46K9bqVTPzSo2FnyMBaYGBMC6PhQy7yxxil9vIedFBweQBMK74/7o8A==", + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", "requires": { "esprima": "^4.0.1", "estraverse": "^4.2.0", @@ -3989,13 +3989,10 @@ "dev": true }, "is-plain-object": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz", - "integrity": "sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg==", - "dev": true, - "requires": { - "isobject": "^4.0.0" - } + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.1.tgz", + "integrity": "sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==", + "dev": true }, "is-promise": { "version": "4.0.0", @@ -4061,12 +4058,6 @@ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, - "isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true - }, "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", @@ -4370,9 +4361,9 @@ "dev": true }, "less-openui5": { - "version": "0.8.6", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.6.tgz", - "integrity": "sha512-z3htfX9fdNKc9CRjsxO1N88Rnk94FcC7SETB+G0XGyo7PHq13Ai1BP+6OuZklGvNL99R1GsxB+KwApvCLQ5o4g==", + "version": "0.8.7", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.7.tgz", + "integrity": "sha512-U5OmMVE4Lkke4RHSSKDTe55P5+6lKtiK3ovRqjkXx0c+iYqEfwQTa88qlo33u7ULJ6lhVWUF0fuu9gKRAaiGfg==", "requires": { "clone": "^2.1.0", "css": "^2.2.1", @@ -5002,9 +4993,9 @@ "dev": true }, "nise": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/nise/-/nise-4.0.3.tgz", - "integrity": "sha512-EGlhjm7/4KvmmE6B/UFsKh7eHykRl9VH+au8dduHLCyWUO/hr7+N+WtTvDUwc9zHuM1IaIJs/0lQ6Ag1jDkQSg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/nise/-/nise-4.0.4.tgz", + "integrity": "sha512-bTTRUNlemx6deJa+ZyoCUTRvH3liK5+N6VQZ4NIw90AgDXY6iPnsqplNFf6STcj+ePk0H/xqxnP75Lr0J0Fq3A==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.0", From 03527b494acb0e6c052f83e8a05af7ab06394ba6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 1 Jul 2020 14:03:24 +0000 Subject: [PATCH 0384/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.1.0 to 2.2.0 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.0/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 13faff96ed6..d1455d17900 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -583,9 +583,9 @@ } }, "@ui5/server": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.1.0.tgz", - "integrity": "sha512-d44j2QGbS9YRI+Vd9krR6ETUkjQ5Q7WeCtzEL0Xhfs4vUtdA+HpaARMasW7QMsxcpaN4iIVqTj0Rx7K37w7kRQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.0.tgz", + "integrity": "sha512-VyW8hX1SHzDUP70UquK3vVpr/cHRXrBAmvMXEYiUMQ+uKhX7taJGXjl6KiIwMVTUFJ7LvkUfXV1VnLDIw0O0YA==", "requires": { "@ui5/builder": "^2.0.4", "@ui5/fs": "^2.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 1565669dfd0..d6de55b42de 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "dependencies": { "@ui5/builder": "^2.0.4", "@ui5/logger": "^2.0.0", - "@ui5/server": "^2.1.0", + "@ui5/server": "^2.2.0", "ajv": "^6.12.2", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From e3865d488029f9a5d2b70cf95a7d56c98451487a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 5 Jul 2020 02:22:19 +0000 Subject: [PATCH 0385/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 330 +++++++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 191 insertions(+), 141 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d1455d17900..9c9360b874e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,27 +5,27 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.3.tgz", - "integrity": "sha512-fDx9eNW0qz0WkUeqL6tXEXzVlPh6Y5aCDEZesl0xBGA8ndRukX91Uk44ZqnkECp01NAZUdCAl+aiQNGi0k88Eg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", "requires": { - "@babel/highlight": "^7.10.3" + "@babel/highlight": "^7.10.4" } }, "@babel/core": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.10.3.tgz", - "integrity": "sha512-5YqWxYE3pyhIi84L84YcwjeEgS+fa7ZjK6IBVGTjDVfm64njkR2lfDhVR5OudLk8x2GK59YoSyVv+L/03k1q9w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.3", - "@babel/generator": "^7.10.3", - "@babel/helper-module-transforms": "^7.10.1", - "@babel/helpers": "^7.10.1", - "@babel/parser": "^7.10.3", - "@babel/template": "^7.10.3", - "@babel/traverse": "^7.10.3", - "@babel/types": "^7.10.3", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.10.4.tgz", + "integrity": "sha512-3A0tS0HWpy4XujGc7QtOIHTeNwUgWaZc/WuS5YQrfhU67jnVmsD6OGPc1AKHH0LJHQICGncy3+YUjIhVlfDdcA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.10.4", + "@babel/helper-module-transforms": "^7.10.4", + "@babel/helpers": "^7.10.4", + "@babel/parser": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -66,12 +66,12 @@ } }, "@babel/generator": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.10.3.tgz", - "integrity": "sha512-drt8MUHbEqRzNR0xnF8nMehbY11b1SDkRw03PSNH/3Rb2Z35oxkddVSi3rcaak0YJQ86PCuE7Qx1jSFhbLNBMA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.10.4.tgz", + "integrity": "sha512-toLIHUIAgcQygFZRAQcsLQV3CBuX6yOIru1kJk/qqqvcRmZrYe6WavZTSG+bB8MxhnL9YPf+pKQfuiP161q7ng==", "dev": true, "requires": { - "@babel/types": "^7.10.3", + "@babel/types": "^7.10.4", "jsesc": "^2.5.1", "lodash": "^4.17.13", "source-map": "^0.5.0" @@ -86,120 +86,120 @@ } }, "@babel/helper-function-name": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.3.tgz", - "integrity": "sha512-FvSj2aiOd8zbeqijjgqdMDSyxsGHaMt5Tr0XjQsGKHD3/1FP3wksjnLAWzxw7lvXiej8W1Jt47SKTZ6upQNiRw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", + "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.10.3", - "@babel/template": "^7.10.3", - "@babel/types": "^7.10.3" + "@babel/helper-get-function-arity": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/helper-get-function-arity": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.3.tgz", - "integrity": "sha512-iUD/gFsR+M6uiy69JA6fzM5seno8oE85IYZdbVVEuQaZlEzMO2MXblh+KSPJgsZAUx0EEbWXU0yJaW7C9CdAVg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", + "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", "dev": true, "requires": { - "@babel/types": "^7.10.3" + "@babel/types": "^7.10.4" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.3.tgz", - "integrity": "sha512-q7+37c4EPLSjNb2NmWOjNwj0+BOyYlssuQ58kHEWk1Z78K5i8vTUsteq78HMieRPQSl/NtpQyJfdjt3qZ5V2vw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.4.tgz", + "integrity": "sha512-m5j85pK/KZhuSdM/8cHUABQTAslV47OjfIB9Cc7P+PvlAoBzdb79BGNfw8RhT5Mq3p+xGd0ZfAKixbrUZx0C7A==", "dev": true, "requires": { - "@babel/types": "^7.10.3" + "@babel/types": "^7.10.4" } }, "@babel/helper-module-imports": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.3.tgz", - "integrity": "sha512-Jtqw5M9pahLSUWA+76nhK9OG8nwYXzhQzVIGFoNaHnXF/r4l7kz4Fl0UAW7B6mqC5myoJiBP5/YQlXQTMfHI9w==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz", + "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==", "dev": true, "requires": { - "@babel/types": "^7.10.3" + "@babel/types": "^7.10.4" } }, "@babel/helper-module-transforms": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.10.1.tgz", - "integrity": "sha512-RLHRCAzyJe7Q7sF4oy2cB+kRnU4wDZY/H2xJFGof+M+SJEGhZsb+GFj5j1AD8NiSaVBJ+Pf0/WObiXu/zxWpFg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.10.4.tgz", + "integrity": "sha512-Er2FQX0oa3nV7eM1o0tNCTx7izmQtwAQsIiaLRWtavAAEcskb0XJ5OjJbVrYXWOTr8om921Scabn4/tzlx7j1Q==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.10.1", - "@babel/helper-replace-supers": "^7.10.1", - "@babel/helper-simple-access": "^7.10.1", - "@babel/helper-split-export-declaration": "^7.10.1", - "@babel/template": "^7.10.1", - "@babel/types": "^7.10.1", + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-replace-supers": "^7.10.4", + "@babel/helper-simple-access": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4", "lodash": "^4.17.13" } }, "@babel/helper-optimise-call-expression": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.3.tgz", - "integrity": "sha512-kT2R3VBH/cnSz+yChKpaKRJQJWxdGoc6SjioRId2wkeV3bK0wLLioFpJROrX0U4xr/NmxSSAWT/9Ih5snwIIzg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", + "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", "dev": true, "requires": { - "@babel/types": "^7.10.3" + "@babel/types": "^7.10.4" } }, "@babel/helper-replace-supers": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.1.tgz", - "integrity": "sha512-SOwJzEfpuQwInzzQJGjGaiG578UYmyi2Xw668klPWV5n07B73S0a9btjLk/52Mlcxa+5AdIYqws1KyXRfMoB7A==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz", + "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.10.1", - "@babel/helper-optimise-call-expression": "^7.10.1", - "@babel/traverse": "^7.10.1", - "@babel/types": "^7.10.1" + "@babel/helper-member-expression-to-functions": "^7.10.4", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/helper-simple-access": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.1.tgz", - "integrity": "sha512-VSWpWzRzn9VtgMJBIWTZ+GP107kZdQ4YplJlCmIrjoLVSi/0upixezHCDG8kpPVTBJpKfxTH01wDhh+jS2zKbw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz", + "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==", "dev": true, "requires": { - "@babel/template": "^7.10.1", - "@babel/types": "^7.10.1" + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/helper-split-export-declaration": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.1.tgz", - "integrity": "sha512-UQ1LVBPrYdbchNhLwj6fetj46BcFwfS4NllJo/1aJsT+1dLTEnXJL0qHqtY7gPzF8S2fXBJamf1biAXV3X077g==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.4.tgz", + "integrity": "sha512-pySBTeoUff56fL5CBU2hWm9TesA4r/rOkI9DyJLvvgz09MB9YtfIYe3iBriVaYNaPe+Alua0vBIOVOLs2buWhg==", "dev": true, "requires": { - "@babel/types": "^7.10.1" + "@babel/types": "^7.10.4" } }, "@babel/helper-validator-identifier": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.3.tgz", - "integrity": "sha512-bU8JvtlYpJSBPuj1VUmKpFGaDZuLxASky3LhaKj3bmpSTY6VWooSM8msk+Z0CZoErFye2tlABF6yDkT3FOPAXw==" + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", + "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==" }, "@babel/helpers": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.1.tgz", - "integrity": "sha512-muQNHF+IdU6wGgkaJyhhEmI54MOZBKsFfsXFhboz1ybwJ1Kl7IHlbm2a++4jwrmY5UYsgitt5lfqo1wMFcHmyw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz", + "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==", "dev": true, "requires": { - "@babel/template": "^7.10.1", - "@babel/traverse": "^7.10.1", - "@babel/types": "^7.10.1" + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/highlight": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.3.tgz", - "integrity": "sha512-Ih9B/u7AtgEnySE2L2F0Xm0GaM729XqqLfHkalTsbjXGyqmf/6M0Cu0WpvqueUlW+xk88BHw9Nkpj49naU+vWw==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", "requires": { - "@babel/helper-validator-identifier": "^7.10.3", + "@babel/helper-validator-identifier": "^7.10.4", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -256,33 +256,43 @@ } }, "@babel/parser": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.10.3.tgz", - "integrity": "sha512-oJtNJCMFdIMwXGmx+KxuaD7i3b8uS7TTFYW/FNG2BT8m+fmGHoiPYoH0Pe3gya07WuFmM5FCDIr1x0irkD/hyA==" + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.10.4.tgz", + "integrity": "sha512-8jHII4hf+YVDsskTF6WuMB3X4Eh+PsUkC2ljq22so5rHvH+T8BzyL94VOdyFLNR8tBSVXOTbNHOKpR4TfRxVtA==" + }, + "@babel/runtime-corejs3": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.10.4.tgz", + "integrity": "sha512-BFlgP2SoLO9HJX9WBwN67gHWMBhDX/eDz64Jajd6mR/UAUzqrNMm99d4qHnVaKscAElZoFiPv+JpR/Siud5lXw==", + "dev": true, + "requires": { + "core-js-pure": "^3.0.0", + "regenerator-runtime": "^0.13.4" + } }, "@babel/template": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.3.tgz", - "integrity": "sha512-5BjI4gdtD+9fHZUsaxPHPNpwa+xRkDO7c7JbhYn2afvrkDu5SfAAbi9AIMXw2xEhO/BR35TqiW97IqNvCo/GqA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", + "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", "dev": true, "requires": { - "@babel/code-frame": "^7.10.3", - "@babel/parser": "^7.10.3", - "@babel/types": "^7.10.3" + "@babel/code-frame": "^7.10.4", + "@babel/parser": "^7.10.4", + "@babel/types": "^7.10.4" } }, "@babel/traverse": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.10.3.tgz", - "integrity": "sha512-qO6623eBFhuPm0TmmrUFMT1FulCmsSeJuVGhiLodk2raUDFhhTECLd9E9jC4LBIWziqt4wgF6KuXE4d+Jz9yug==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.10.4.tgz", + "integrity": "sha512-aSy7p5THgSYm4YyxNGz6jZpXf+Ok40QF3aA2LyIONkDHpAcJzDUqlCKXv6peqYUs2gmic849C/t2HKw2a2K20Q==", "dev": true, "requires": { - "@babel/code-frame": "^7.10.3", - "@babel/generator": "^7.10.3", - "@babel/helper-function-name": "^7.10.3", - "@babel/helper-split-export-declaration": "^7.10.1", - "@babel/parser": "^7.10.3", - "@babel/types": "^7.10.3", + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.10.4", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.10.4", + "@babel/parser": "^7.10.4", + "@babel/types": "^7.10.4", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.13" @@ -312,12 +322,12 @@ } }, "@babel/types": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.10.3.tgz", - "integrity": "sha512-nZxaJhBXBQ8HVoIcGsf9qWep3Oh3jCENK54V4mRF7qaJabVsAYdbTtmSD8WmAp1R6ytPiu5apMwSXyxB1WlaBA==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.10.4.tgz", + "integrity": "sha512-UTCFOxC3FsFHb7lkRMVvgLzaRVamXuAs2Tz4wajva4WxtVY82eZeaUBtC2Zt95FU9TiznuC0Zk35tsim8jeVpg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.10.3", + "@babel/helper-validator-identifier": "^7.10.4", "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" } @@ -680,9 +690,9 @@ } }, "ajv": { - "version": "6.12.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", - "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", + "version": "6.12.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", + "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -1400,6 +1410,12 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", @@ -1580,9 +1596,9 @@ } }, "cli-width": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", "dev": true }, "cliui": { @@ -1878,6 +1894,12 @@ } } }, + "core-js-pure": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.6.5.tgz", + "integrity": "sha512-lacdXOimsiD0QyNf9BC/mxivNJ/ybBGJXQFKzRekp1WTHoVUWsUHEn+2T8GJAzzIhyOuXA+gOxCVN3l+5PLPUA==", + "dev": true + }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", @@ -2018,10 +2040,13 @@ } }, "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-3.2.0.tgz", + "integrity": "sha512-4TgkVUsmmu7oCSyGBm5FvfMoACuoh9EOidm7V5/J2X2djAwwt57qb3F2KMP2ITqODTCSwb+YRV+0Zqrv18k/hw==", + "dev": true, + "requires": { + "xregexp": "^4.2.4" + } }, "decamelize-keys": { "version": "1.1.0", @@ -2033,6 +2058,12 @@ "map-obj": "^1.0.0" }, "dependencies": { + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, "map-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", @@ -3773,21 +3804,21 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, "inquirer": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.2.0.tgz", - "integrity": "sha512-E0c4rPwr9ByePfNlTIB8z51kK1s2n6jrHuJeEHENl/sbq2G/S1auvibgEwNR4uSyiU+PiYHqSwsgGiXjG8p5ZQ==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.0.tgz", + "integrity": "sha512-K+LZp6L/6eE5swqIcVXrxl21aGDU4S50gKH0/d96OMQnSBCyGyZl/oZhbkVmdp5sBoINHd4xZvFSARh2dk6DWA==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", + "chalk": "^4.1.0", "cli-cursor": "^3.1.0", - "cli-width": "^2.0.0", + "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", "lodash": "^4.17.15", "mute-stream": "0.0.8", "run-async": "^2.4.0", - "rxjs": "^6.5.3", + "rxjs": "^6.6.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0", "through": "^2.3.6" @@ -3799,16 +3830,6 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -5142,9 +5163,9 @@ } }, "npm-registry-fetch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.4.tgz", - "integrity": "sha512-6jb34hX/iYNQebqWUHtU8YF6Cjb1H6ouTFPClYsyiW6lpFkljTpdeftm53rRojtja1rKAvKNIIiTS5Sjpw4wsA==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.5.tgz", + "integrity": "sha512-yQ0/U4fYpCCqmueB2g8sc+89ckQ3eXpmU4+Yi2j5o/r0WkKvE2+Y0tK3DEILAtn2UaQTkjTHxIXe2/CSdit+/Q==", "requires": { "JSONStream": "^1.3.4", "bluebird": "^3.5.1", @@ -5221,6 +5242,12 @@ "yargs": "^15.0.2" }, "dependencies": { + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -6032,6 +6059,12 @@ "strip-indent": "^3.0.0" } }, + "regenerator-runtime": { + "version": "0.13.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", + "dev": true + }, "regexp.prototype.flags": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", @@ -6265,9 +6298,9 @@ } }, "rxjs": { - "version": "6.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz", - "integrity": "sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==", + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.0.tgz", + "integrity": "sha512-3HMA8z/Oz61DUHe+SdOiQyzIf4tOx5oQHmMir7IZEu6TMqCLHT4LRcmNaUS0NwOz8VLvmmBduMsoaUvMaIiqzg==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -7642,6 +7675,15 @@ "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.3.tgz", "integrity": "sha512-HgS+X6zAztGa9zIK3Y3LXuJes33Lz9x+YyTxgrkIdabu2vqcGOWwdfCpf1hWLRrd553wd4QCDf6BBO6FfdsRiQ==" }, + "xregexp": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.3.0.tgz", + "integrity": "sha512-7jXDIFXh5yJ/orPn4SXjuVrWWoi4Cr8jfV1eHv9CixKSbU+jY4mxfrBwAuDvupPNKpMUY+FeIqsVw/JLT9+B8g==", + "dev": true, + "requires": { + "@babel/runtime-corejs3": "^7.8.3" + } + }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", @@ -7658,13 +7700,13 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", + "version": "15.4.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.0.tgz", + "integrity": "sha512-D3fRFnZwLWp8jVAAhPZBsmeIHY8tTsb8ItV9KaAaopmC6wde2u6Yw29JBIZHXw14kgkRnYmDgmQU4FVMDlIsWw==", "dev": true, "requires": { "cliui": "^6.0.0", - "decamelize": "^1.2.0", + "decamelize": "^3.2.0", "find-up": "^4.1.0", "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", @@ -7673,7 +7715,7 @@ "string-width": "^4.2.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^18.1.1" + "yargs-parser": "^18.1.2" }, "dependencies": { "ansi-regex": { @@ -7758,6 +7800,14 @@ "requires": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" + }, + "dependencies": { + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + } } }, "yazl": { diff --git a/packages/project/package.json b/packages/project/package.json index d6de55b42de..4ea9973dccb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -97,7 +97,7 @@ "@ui5/builder": "^2.0.4", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.2.0", - "ajv": "^6.12.2", + "ajv": "^6.12.3", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", "escape-string-regexp": "^4.0.0", From 266ba6a29b72aaa1a8c271fc99f98cfd311ce6cf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 12 Jul 2020 02:20:47 +0000 Subject: [PATCH 0386/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 148 ++++++++++------------------- packages/project/package.json | 2 +- 2 files changed, 50 insertions(+), 100 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9c9360b874e..a9ebbd66e90 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -260,16 +260,6 @@ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.10.4.tgz", "integrity": "sha512-8jHII4hf+YVDsskTF6WuMB3X4Eh+PsUkC2ljq22so5rHvH+T8BzyL94VOdyFLNR8tBSVXOTbNHOKpR4TfRxVtA==" }, - "@babel/runtime-corejs3": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.10.4.tgz", - "integrity": "sha512-BFlgP2SoLO9HJX9WBwN67gHWMBhDX/eDz64Jajd6mR/UAUzqrNMm99d4qHnVaKscAElZoFiPv+JpR/Siud5lXw==", - "dev": true, - "requires": { - "core-js-pure": "^3.0.0", - "regenerator-runtime": "^0.13.4" - } - }, "@babel/template": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", @@ -505,9 +495,9 @@ "dev": true }, "@types/glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-VgNIkxK+j7Nz5P7jvUZlRvhuPSmsEfS03b0alKcq5V/STUKAa3Plemsn5mrQUO7am6OErJ4rhGEGJbACclrtRA==", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==", "dev": true, "requires": { "@types/minimatch": "*", @@ -527,9 +517,9 @@ "dev": true }, "@types/node": { - "version": "14.0.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.14.tgz", - "integrity": "sha512-syUgf67ZQpaJj01/tRTknkMNoBBLWJOBODF0Zm4NrXmiSuxjymFrxnTu1QVYRubhVkRcZLYZG8STTwJRdVm/WQ==", + "version": "14.0.22", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.22.tgz", + "integrity": "sha512-emeGcJvdiZ4Z3ohbmw93E/64jRzUHAItSHt8nF7M4TGgQTiWqFVGB8KNpLGFmUHmHLvjvBgFwVlqNcq+VuGv9g==", "dev": true }, "@types/normalize-package-data": { @@ -903,14 +893,14 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.9.0.tgz", - "integrity": "sha512-EnK5I/AX1U5nF4X1YG3QQYg2+jWnpvMW3z2y096DBvbwITkq9rB7Gu1j5clWcuizAJUlYbvcX6YfP+zkRFgC8Q==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.10.1.tgz", + "integrity": "sha512-+w86ZHyFHIGCABi7NUrn/WJMyC+fDj0BSIlFNVS45WDKAD5vxbIiDWeclctxOOc2KDPfQD7tFOURSBz0FBLD0A==", "dev": true, "requires": { "@concordance/react": "^2.0.0", "acorn": "^7.3.1", - "acorn-walk": "^7.1.1", + "acorn-walk": "^7.2.0", "ansi-styles": "^4.2.1", "arrgv": "^1.0.2", "arrify": "^2.0.1", @@ -919,11 +909,11 @@ "chokidar": "^3.4.0", "chunkd": "^2.0.1", "ci-info": "^2.0.0", - "ci-parallel-vars": "^1.0.0", + "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-cursor": "^3.1.0", "cli-truncate": "^2.1.0", - "code-excerpt": "^2.1.1", + "code-excerpt": "^3.0.0", "common-path-prefix": "^3.0.0", "concordance": "^5.0.0", "convert-source-map": "^1.7.0", @@ -938,7 +928,7 @@ "import-local": "^3.0.2", "indent-string": "^4.0.0", "is-error": "^2.2.2", - "is-plain-object": "^3.0.0", + "is-plain-object": "^3.0.1", "is-promise": "^4.0.0", "lodash": "^4.17.15", "matcher": "^3.0.0", @@ -962,7 +952,7 @@ "trim-off-newlines": "^1.0.1", "update-notifier": "^4.1.0", "write-file-atomic": "^3.0.3", - "yargs": "^15.3.1" + "yargs": "^15.4.0" }, "dependencies": { "ansi-regex": { @@ -1410,12 +1400,6 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", @@ -1661,9 +1645,9 @@ } }, "code-excerpt": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", - "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-3.0.0.tgz", + "integrity": "sha512-VHNTVhd7KsLGOqfX3SyeO8RyYPMp1GJOg194VITk04WMYCv4plV68YWe6TJZxd9MhobjtpMRnVky01gqZsalaw==", "dev": true, "requires": { "convert-to-spaces": "^1.0.1" @@ -1894,12 +1878,6 @@ } } }, - "core-js-pure": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.6.5.tgz", - "integrity": "sha512-lacdXOimsiD0QyNf9BC/mxivNJ/ybBGJXQFKzRekp1WTHoVUWsUHEn+2T8GJAzzIhyOuXA+gOxCVN3l+5PLPUA==", - "dev": true - }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", @@ -2040,13 +2018,10 @@ } }, "decamelize": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-3.2.0.tgz", - "integrity": "sha512-4TgkVUsmmu7oCSyGBm5FvfMoACuoh9EOidm7V5/J2X2djAwwt57qb3F2KMP2ITqODTCSwb+YRV+0Zqrv18k/hw==", - "dev": true, - "requires": { - "xregexp": "^4.2.4" - } + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true }, "decamelize-keys": { "version": "1.1.0", @@ -2058,12 +2033,6 @@ "map-obj": "^1.0.0" }, "dependencies": { - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, "map-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", @@ -2395,9 +2364,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "emittery": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.0.tgz", - "integrity": "sha512-/kshvS+tZaggOPQDLGzXopumRRIzxciGILDlYTGIU+PmqbSfhn4wDVphFPry4H+2TNl2QxLduexPhxcWLULA5A==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.1.tgz", + "integrity": "sha512-d34LN4L6h18Bzz9xpoku2nPwKxCPlPMr3EEKTkoEBi+1/+b0lcRkRJ1UVyyZaKNeqGR3swcGl6s390DNO4YVgQ==", "dev": true }, "emoji-regex": { @@ -2412,11 +2381,21 @@ "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, "encoding": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", "requires": { - "iconv-lite": "~0.4.13" + "iconv-lite": "^0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", + "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } } }, "end-of-stream": { @@ -3804,9 +3783,9 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, "inquirer": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.0.tgz", - "integrity": "sha512-K+LZp6L/6eE5swqIcVXrxl21aGDU4S50gKH0/d96OMQnSBCyGyZl/oZhbkVmdp5sBoINHd4xZvFSARh2dk6DWA==", + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.1.tgz", + "integrity": "sha512-/+vOpHQHhoh90Znev8BXiuw1TDQ7IDxWsQnFafUEoK5+4uN5Eoz1p+3GqOj/NtzEi9VzWKQcV9Bm+i8moxedsA==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", @@ -3815,7 +3794,7 @@ "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", - "lodash": "^4.17.15", + "lodash": "^4.17.16", "mute-stream": "0.0.8", "run-async": "^2.4.0", "rxjs": "^6.6.0", @@ -4474,9 +4453,9 @@ } }, "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==" + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" }, "lodash.assignin": { "version": "4.2.0", @@ -5242,12 +5221,6 @@ "yargs": "^15.0.2" }, "dependencies": { - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -6059,12 +6032,6 @@ "strip-indent": "^3.0.0" } }, - "regenerator-runtime": { - "version": "0.13.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", - "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", - "dev": true - }, "regexp.prototype.flags": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", @@ -7675,15 +7642,6 @@ "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.3.tgz", "integrity": "sha512-HgS+X6zAztGa9zIK3Y3LXuJes33Lz9x+YyTxgrkIdabu2vqcGOWwdfCpf1hWLRrd553wd4QCDf6BBO6FfdsRiQ==" }, - "xregexp": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.3.0.tgz", - "integrity": "sha512-7jXDIFXh5yJ/orPn4SXjuVrWWoi4Cr8jfV1eHv9CixKSbU+jY4mxfrBwAuDvupPNKpMUY+FeIqsVw/JLT9+B8g==", - "dev": true, - "requires": { - "@babel/runtime-corejs3": "^7.8.3" - } - }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", @@ -7700,13 +7658,13 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "yargs": { - "version": "15.4.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.0.tgz", - "integrity": "sha512-D3fRFnZwLWp8jVAAhPZBsmeIHY8tTsb8ItV9KaAaopmC6wde2u6Yw29JBIZHXw14kgkRnYmDgmQU4FVMDlIsWw==", + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", "dev": true, "requires": { "cliui": "^6.0.0", - "decamelize": "^3.2.0", + "decamelize": "^1.2.0", "find-up": "^4.1.0", "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", @@ -7800,14 +7758,6 @@ "requires": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" - }, - "dependencies": { - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - } } }, "yazl": { diff --git a/packages/project/package.json b/packages/project/package.json index 4ea9973dccb..ff4e188b4b1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -115,7 +115,7 @@ "string.prototype.matchall": "^4.0.2" }, "devDependencies": { - "ava": "^3.9.0", + "ava": "^3.10.1", "chokidar-cli": "^2.1.0", "coveralls": "^3.1.0", "cross-env": "^7.0.2", From 5a59a16b6cc61a513e0d40edfbec137dec38a55c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= <1410947+matz3@users.noreply.github.com> Date: Tue, 14 Jul 2020 13:59:33 +0200 Subject: [PATCH 0387/1272] [ui5-project][FIX] Node.js API: TypeScript type definition support (#335) Lazy-loading in the index.js breaks the automatic type definition detection from TypeScript when using the module via require. Therefore we need to manually declare the exported types. Adds a small jsdoc-plugin to remove the import() comments as JSDoc is unable to parse them. --- packages/project/index.js | 28 +++++++- packages/project/jsdoc-plugin.js | 13 ++++ packages/project/jsdoc.json | 118 ++++++++++++++++--------------- 3 files changed, 99 insertions(+), 60 deletions(-) create mode 100644 packages/project/jsdoc-plugin.js diff --git a/packages/project/index.js b/packages/project/index.js index 19140fb97d3..e21fbfee6df 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -2,8 +2,14 @@ * @module module:@ui5/project * @public */ -const modules = { +module.exports = { + /** + * @type {import('./lib/normalizer')} + */ normalizer: "./lib/normalizer", + /** + * @type {import('./lib/projectPreprocessor')} + */ projectPreprocessor: "./lib/projectPreprocessor", /** * @public @@ -11,7 +17,13 @@ const modules = { * @namespace */ ui5Framework: { + /** + * @type {typeof import('./lib/ui5Framework/Openui5Resolver')} + */ Openui5Resolver: "./lib/ui5Framework/Openui5Resolver", + /** + * @type {typeof import('./lib/ui5Framework/Sapui5Resolver')} + */ Sapui5Resolver: "./lib/ui5Framework/Sapui5Resolver" }, /** @@ -20,7 +32,13 @@ const modules = { * @namespace */ validation: { + /** + * @type {import('./lib/validation/validator')} + */ validator: "./lib/validation/validator", + /** + * @type {typeof import('./lib/validation/ValidationError')} + */ ValidationError: "./lib/validation/ValidationError" }, /** @@ -29,7 +47,13 @@ const modules = { * @namespace */ translators: { + /** + * @type {import('./lib/translators/npm')} + */ npm: "./lib/translators/npm", + /** + * @type {import('./lib/translators/static')} + */ static: "./lib/translators/static" } }; @@ -49,4 +73,4 @@ function exportModules(exportRoot, modulePaths) { } } -exportModules(module.exports, modules); +exportModules(module.exports, JSON.parse(JSON.stringify(module.exports))); diff --git a/packages/project/jsdoc-plugin.js b/packages/project/jsdoc-plugin.js new file mode 100644 index 00000000000..bf94fbc6e25 --- /dev/null +++ b/packages/project/jsdoc-plugin.js @@ -0,0 +1,13 @@ +/* + * Removes JSDoc comments with TypeScript import() declarations (used in index.js) + */ + +const IMPORT_PATTERN = /{(?:typeof )?import\(["'][^"']*["']\)[ .|}><,)=#\n]/; + +exports.handlers = { + jsdocCommentFound: function(e) { + if (IMPORT_PATTERN.test(e.comment)) { + e.comment = ""; + } + } +}; diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json index 81925e93c46..bce77a4bd75 100644 --- a/packages/project/jsdoc.json +++ b/packages/project/jsdoc.json @@ -1,60 +1,62 @@ { - "tags": { - "allowUnknownTags": false - }, - "source": { - "include": ["README.md", "index.js"], - "includePattern": ".+\\.js$", - "excludePattern": "(node_modules(\\\\|/))" - }, - "plugins": [], - "opts": { - "template": "node_modules/docdash/", - "encoding": "utf8", - "destination": "jsdocs/", - "recurse": true, - "verbose": true, - "access": "public" - }, - "templates": { - "cleverLinks": false, - "monospaceLinks": false, - "default": { - "useLongnameInNav": true - } - }, - "openGraph": { - "title": "UI5 Tooling - API Reference", - "type": "website", - "image": "https://sap.github.io/ui5-tooling/docs/images/UI5_logo_wide.png", - "site_name": "UI5 Tooling - API Reference", - "url": "https://sap.github.io/ui5-tooling/" - }, - "docdash": { - "sectionOrder": [ - "Modules", - "Namespaces", - "Classes", - "Externals", - "Events", - "Mixins", - "Tutorials", - "Interfaces" - ], - "meta": { - "title": "UI5 Tooling - API Reference - UI5 Project", - "description": "UI5 Tooling - API Reference - UI5 Project", - "keyword": "openui5 sapui5 ui5 build development tool api reference" - }, - "search": true, - "wrap": true, - "menu": { - "GitHub": { - "href": "https://github.com/SAP/ui5-project", - "target": "_blank", - "class": "menu-item", - "id": "github_link" - } - } - } + "tags": { + "allowUnknownTags": false + }, + "source": { + "include": ["README.md", "index.js"], + "includePattern": ".+\\.js$", + "excludePattern": "(node_modules(\\\\|/))" + }, + "plugins": [ + "./jsdoc-plugin" + ], + "opts": { + "template": "node_modules/docdash/", + "encoding": "utf8", + "destination": "jsdocs/", + "recurse": true, + "verbose": true, + "access": "public" + }, + "templates": { + "cleverLinks": false, + "monospaceLinks": false, + "default": { + "useLongnameInNav": true + } + }, + "openGraph": { + "title": "UI5 Tooling - API Reference", + "type": "website", + "image": "https://sap.github.io/ui5-tooling/docs/images/UI5_logo_wide.png", + "site_name": "UI5 Tooling - API Reference", + "url": "https://sap.github.io/ui5-tooling/" + }, + "docdash": { + "sectionOrder": [ + "Modules", + "Namespaces", + "Classes", + "Externals", + "Events", + "Mixins", + "Tutorials", + "Interfaces" + ], + "meta": { + "title": "UI5 Tooling - API Reference - UI5 Project", + "description": "UI5 Tooling - API Reference - UI5 Project", + "keyword": "openui5 sapui5 ui5 build development tool api reference" + }, + "search": true, + "wrap": true, + "menu": { + "GitHub": { + "href": "https://github.com/SAP/ui5-project", + "target": "_blank", + "class": "menu-item", + "id": "github_link" + } + } + } } From a63488700c91a157cbeef098a193d55056b837dc Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Jul 2020 12:49:40 +0000 Subject: [PATCH 0388/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.0.4 to 2.0.5 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.0.5/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a9ebbd66e90..b8e877b24a4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -528,22 +528,22 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.4.tgz", - "integrity": "sha512-Ei65EqG0+YA7MSBmJA7vQ3qBRHIXOg8N8PLKlnUII9clMkZG1MqcCwhGL9ui+WDoBZlAnCmDlZH1T7fc5lLOEg==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.5.tgz", + "integrity": "sha512-wUPOcQ7ZDzZPyfMaklS6wMLzUcMuMlluEYD2pJHufw8J/GNqRvUJqURFq4mBYjb/roQmBk+TXqvCZeX++sU/yA==", "requires": { "@ui5/fs": "^2.0.1", "@ui5/logger": "^2.0.0", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", - "escodegen": "^1.14.2", + "escodegen": "^1.14.3", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "^5.1.0", "globby": "^11.0.1", "graceful-fs": "^4.2.4", "jsdoc": "^3.6.4", - "less-openui5": "^0.8.6", + "less-openui5": "^0.8.7", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", @@ -551,7 +551,7 @@ "rimraf": "^3.0.2", "semver": "^7.3.2", "slash": "^3.0.0", - "terser": "^4.7.0", + "terser": "^4.8.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" } diff --git a/packages/project/package.json b/packages/project/package.json index ff4e188b4b1..d6488bb57f8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -94,7 +94,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.0.4", + "@ui5/builder": "^2.0.5", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.2.0", "ajv": "^6.12.3", From e63140dd17ed90ced520718f7806e8edaa81a0b6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Jul 2020 12:55:55 +0000 Subject: [PATCH 0389/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.0 to 2.2.1 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.1/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b8e877b24a4..ea352eac18d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -583,11 +583,11 @@ } }, "@ui5/server": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.0.tgz", - "integrity": "sha512-VyW8hX1SHzDUP70UquK3vVpr/cHRXrBAmvMXEYiUMQ+uKhX7taJGXjl6KiIwMVTUFJ7LvkUfXV1VnLDIw0O0YA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.1.tgz", + "integrity": "sha512-DJyxc8Ccp2NDL1z9Jw27gnzL64DzqbRPUJHeUIK+bos9KWiV6+TDlqEJcYomNznhL9TgkUZweQD7WXiKrUiTfw==", "requires": { - "@ui5/builder": "^2.0.4", + "@ui5/builder": "^2.0.5", "@ui5/fs": "^2.0.1", "@ui5/logger": "^2.0.0", "body-parser": "^1.19.0", diff --git a/packages/project/package.json b/packages/project/package.json index d6488bb57f8..e3d0b4ca5f5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -96,7 +96,7 @@ "dependencies": { "@ui5/builder": "^2.0.5", "@ui5/logger": "^2.0.0", - "@ui5/server": "^2.2.0", + "@ui5/server": "^2.2.1", "ajv": "^6.12.3", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From 28f3d6bf1fa212bbea592adaae6c5486ddfef1fe Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Jul 2020 12:58:56 +0000 Subject: [PATCH 0390/1272] [ui5-project]Release 2.1.5 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 5af70702aa6..00728e70930 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.4...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.5...HEAD). + + +## [v2.1.5] - 2020-07-14 +### Bug Fixes +- **Node.js API:** TypeScript type definition support ([#335](https://github.com/SAP/ui5-project/issues/335)) [`c610305`](https://github.com/SAP/ui5-project/commit/c610305e8fb869461a8dd5ba876270c7f7b71a22) + ## [v2.1.4] - 2020-05-29 @@ -183,6 +189,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.1.5]: https://github.com/SAP/ui5-project/compare/v2.1.4...v2.1.5 [v2.1.4]: https://github.com/SAP/ui5-project/compare/v2.1.3...v2.1.4 [v2.1.3]: https://github.com/SAP/ui5-project/compare/v2.1.2...v2.1.3 [v2.1.2]: https://github.com/SAP/ui5-project/compare/v2.1.1...v2.1.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ea352eac18d..771e76f05e1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.4", + "version": "2.1.5", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index e3d0b4ca5f5..6dfb05cccd2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.4", + "version": "2.1.5", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From c061b6db14b2f16f89260c55d904d19b162123dd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 19 Jul 2020 02:20:56 +0000 Subject: [PATCH 0391/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 127 ++++++++++++++--------------- 1 file changed, 63 insertions(+), 64 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 771e76f05e1..a12012e7b15 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,24 +13,24 @@ } }, "@babel/core": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.10.4.tgz", - "integrity": "sha512-3A0tS0HWpy4XujGc7QtOIHTeNwUgWaZc/WuS5YQrfhU67jnVmsD6OGPc1AKHH0LJHQICGncy3+YUjIhVlfDdcA==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.10.5.tgz", + "integrity": "sha512-O34LQooYVDXPl7QWCdW9p4NR+QlzOr7xShPPJz8GsuCU3/8ua/wqTr7gmnxXv+WBESiGU/G5s16i6tUvHkNb+w==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.10.4", - "@babel/helper-module-transforms": "^7.10.4", + "@babel/generator": "^7.10.5", + "@babel/helper-module-transforms": "^7.10.5", "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.10.4", + "@babel/parser": "^7.10.5", "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4", + "@babel/traverse": "^7.10.5", + "@babel/types": "^7.10.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", "json5": "^2.1.2", - "lodash": "^4.17.13", + "lodash": "^4.17.19", "resolve": "^1.3.2", "semver": "^5.4.1", "source-map": "^0.5.0" @@ -66,14 +66,13 @@ } }, "@babel/generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.10.4.tgz", - "integrity": "sha512-toLIHUIAgcQygFZRAQcsLQV3CBuX6yOIru1kJk/qqqvcRmZrYe6WavZTSG+bB8MxhnL9YPf+pKQfuiP161q7ng==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.10.5.tgz", + "integrity": "sha512-3vXxr3FEW7E7lJZiWQ3bM4+v/Vyr9C+hpolQ8BGFr9Y8Ri2tFLWTixmwKBafDujO1WVah4fhZBeU1bieKdghig==", "dev": true, "requires": { - "@babel/types": "^7.10.4", + "@babel/types": "^7.10.5", "jsesc": "^2.5.1", - "lodash": "^4.17.13", "source-map": "^0.5.0" }, "dependencies": { @@ -106,12 +105,12 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.4.tgz", - "integrity": "sha512-m5j85pK/KZhuSdM/8cHUABQTAslV47OjfIB9Cc7P+PvlAoBzdb79BGNfw8RhT5Mq3p+xGd0ZfAKixbrUZx0C7A==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.5.tgz", + "integrity": "sha512-HiqJpYD5+WopCXIAbQDG0zye5XYVvcO9w/DHp5GsaGkRUaamLj2bEtu6i8rnGGprAhHM3qidCMgp71HF4endhA==", "dev": true, "requires": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.10.5" } }, "@babel/helper-module-imports": { @@ -124,9 +123,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.10.4.tgz", - "integrity": "sha512-Er2FQX0oa3nV7eM1o0tNCTx7izmQtwAQsIiaLRWtavAAEcskb0XJ5OjJbVrYXWOTr8om921Scabn4/tzlx7j1Q==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.10.5.tgz", + "integrity": "sha512-4P+CWMJ6/j1W915ITJaUkadLObmCRRSC234uctJfn/vHrsLNxsR8dwlcXv9ZhJWzl77awf+mWXSZEKt5t0OnlA==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.10.4", @@ -134,8 +133,8 @@ "@babel/helper-simple-access": "^7.10.4", "@babel/helper-split-export-declaration": "^7.10.4", "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4", - "lodash": "^4.17.13" + "@babel/types": "^7.10.5", + "lodash": "^4.17.19" } }, "@babel/helper-optimise-call-expression": { @@ -256,9 +255,9 @@ } }, "@babel/parser": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.10.4.tgz", - "integrity": "sha512-8jHII4hf+YVDsskTF6WuMB3X4Eh+PsUkC2ljq22so5rHvH+T8BzyL94VOdyFLNR8tBSVXOTbNHOKpR4TfRxVtA==" + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.10.5.tgz", + "integrity": "sha512-wfryxy4bE1UivvQKSQDU4/X6dr+i8bctjUjj8Zyt3DQy7NtPizJXT8M52nqpNKL+nq2PW8lxk4ZqLj0fD4B4hQ==" }, "@babel/template": { "version": "7.10.4", @@ -272,20 +271,20 @@ } }, "@babel/traverse": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.10.4.tgz", - "integrity": "sha512-aSy7p5THgSYm4YyxNGz6jZpXf+Ok40QF3aA2LyIONkDHpAcJzDUqlCKXv6peqYUs2gmic849C/t2HKw2a2K20Q==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.10.5.tgz", + "integrity": "sha512-yc/fyv2gUjPqzTz0WHeRJH2pv7jA9kA7mBX2tXl/x5iOE81uaVPuGPtaYk7wmkx4b67mQ7NqI8rmT2pF47KYKQ==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.10.4", + "@babel/generator": "^7.10.5", "@babel/helper-function-name": "^7.10.4", "@babel/helper-split-export-declaration": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4", + "@babel/parser": "^7.10.5", + "@babel/types": "^7.10.5", "debug": "^4.1.0", "globals": "^11.1.0", - "lodash": "^4.17.13" + "lodash": "^4.17.19" }, "dependencies": { "debug": { @@ -312,13 +311,13 @@ } }, "@babel/types": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.10.4.tgz", - "integrity": "sha512-UTCFOxC3FsFHb7lkRMVvgLzaRVamXuAs2Tz4wajva4WxtVY82eZeaUBtC2Zt95FU9TiznuC0Zk35tsim8jeVpg==", + "version": "7.10.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.10.5.tgz", + "integrity": "sha512-ixV66KWfCI6GKoA/2H9v6bQdbfXEwwpOdQ8cRvb4F+eyvhlaHxWFMQB4+3d9QFJXZsiiiqVrewNV0DFEQpyT4Q==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.13", + "lodash": "^4.17.19", "to-fast-properties": "^2.0.0" } }, @@ -424,9 +423,9 @@ "dev": true }, "@sinonjs/commons": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.0.tgz", - "integrity": "sha512-wEj54PfsZ5jGSwMX68G8ZXFawcSglQSXqCftWX3ec8MDUzQdHgcKvw97awHbY0efQEL5iKUOAmmVtoYgmrSG4Q==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", + "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -517,9 +516,9 @@ "dev": true }, "@types/node": { - "version": "14.0.22", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.22.tgz", - "integrity": "sha512-emeGcJvdiZ4Z3ohbmw93E/64jRzUHAItSHt8nF7M4TGgQTiWqFVGB8KNpLGFmUHmHLvjvBgFwVlqNcq+VuGv9g==", + "version": "14.0.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.23.tgz", + "integrity": "sha512-Z4U8yDAl5TFkmYsZdFPdjeMa57NOvnaf1tljHzhouaPEp7LCj2JKkejpI1ODviIAQuW4CcQmxkQ77rnLsOOoKw==", "dev": true }, "@types/normalize-package-data": { @@ -1324,9 +1323,9 @@ } }, "chokidar": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.0.tgz", - "integrity": "sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", + "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", "dev": true, "requires": { "anymatch": "~3.1.1", @@ -1530,9 +1529,9 @@ } }, "cli-spinners": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.3.0.tgz", - "integrity": "sha512-Xs2Hf2nzrvJMFKimOR7YR0QwZ8fc0u98kdtwN1eNAZzNQgH3vK2pXzff6GJtKh7S5hoJ87ECiAiZFS2fb5Ii2w==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.4.0.tgz", + "integrity": "sha512-sJAofoarcm76ZGpuooaO0eDy8saEy+YoZBLjC4h8srt4jeBnkYeOgqxgsJQTpyt2LjI5PTfLJHSL+41Yu4fEJA==", "dev": true }, "cli-truncate": { @@ -3252,9 +3251,9 @@ } }, "fromentries": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.2.0.tgz", - "integrity": "sha512-33X7H/wdfO99GdRLLgkjUrD4geAFdq/Uv0kl3HD4da6HDixd2GUg8Mw7dahLCV9r/EARkmtYBB6Tch4EEokFTQ==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.2.1.tgz", + "integrity": "sha512-Xu2Qh8yqYuDhQGOhD5iJGninErSfI9A3FrriD3tjUgV5VbJFeH8vfgZ9HnC6jWN80QDVNQK5vmxRAmEAp7Mevw==", "dev": true }, "fs-minipass": { @@ -3783,9 +3782,9 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, "inquirer": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.1.tgz", - "integrity": "sha512-/+vOpHQHhoh90Znev8BXiuw1TDQ7IDxWsQnFafUEoK5+4uN5Eoz1p+3GqOj/NtzEi9VzWKQcV9Bm+i8moxedsA==", + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.2.tgz", + "integrity": "sha512-DF4osh1FM6l0RJc5YWYhSDB6TawiBRlbV9Cox8MWlidU218Tb7fm3lQTULyUJDfJ0tjbzl0W4q651mrCCEM55w==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", @@ -5369,9 +5368,9 @@ } }, "ora": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.0.4.tgz", - "integrity": "sha512-77iGeVU1cIdRhgFzCK8aw1fbtT1B/iZAvWjS+l/o1x0RShMgxHUZaD2yDpWsNCPwXg9z1ZA78Kbdvr8kBmG/Ww==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/ora/-/ora-4.0.5.tgz", + "integrity": "sha512-jCDgm9DqvRcNIAEv2wZPrh7E5PcQiDUnbnWbAfu4NGAE2ZNqPFbDixmWldy1YG2QfLeQhuiu6/h5VRrk6cG50w==", "dev": true, "requires": { "chalk": "^3.0.0", @@ -6054,9 +6053,9 @@ "dev": true }, "registry-auth-token": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz", - "integrity": "sha512-9bKS7nTl9+/A1s7tnPeGrUpRcVY+LUh7bfFgzpndALdPfXQBfQV77rQVtqgUV3ti4vc/Ik81Ex8UJDWDQ12zQA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.0.tgz", + "integrity": "sha512-P+lWzPrsgfN+UEpDS3U8AQKg/UjZX6mQSJueZj3EK+vNESoqBSpBUD3gmu4sF9lOsjXWjF11dQKUqemf3veq1w==", "dev": true, "requires": { "rc": "^1.2.8" @@ -6763,9 +6762,9 @@ } }, "strip-json-comments": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz", - "integrity": "sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w==" + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { "version": "6.0.3", From 32ea33dd2906f2a3f08044df49bf3ca59d94acaa Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 21 Jul 2020 13:10:07 +0000 Subject: [PATCH 0392/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.0.5 to 2.0.6 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.0.6/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a12012e7b15..de20341d4a4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -527,9 +527,9 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.5.tgz", - "integrity": "sha512-wUPOcQ7ZDzZPyfMaklS6wMLzUcMuMlluEYD2pJHufw8J/GNqRvUJqURFq4mBYjb/roQmBk+TXqvCZeX++sU/yA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.6.tgz", + "integrity": "sha512-1YpfjKz3kHl3Wrq8Qorfw9wXCECebNhXiLMS4/vAmlbZUH73fwqzzGRW+X/Bs14wpcEMjMczN9NS+D6YUsVKGQ==", "requires": { "@ui5/fs": "^2.0.1", "@ui5/logger": "^2.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 6dfb05cccd2..fcc1d80e08a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -94,7 +94,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.0.5", + "@ui5/builder": "^2.0.6", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.2.1", "ajv": "^6.12.3", From bb565b9fa928d8da17c29a35d7fe851b90313ffc Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 26 Jul 2020 02:21:44 +0000 Subject: [PATCH 0393/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 38 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index de20341d4a4..541fd71d2a7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -516,9 +516,9 @@ "dev": true }, "@types/node": { - "version": "14.0.23", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.23.tgz", - "integrity": "sha512-Z4U8yDAl5TFkmYsZdFPdjeMa57NOvnaf1tljHzhouaPEp7LCj2JKkejpI1ODviIAQuW4CcQmxkQ77rnLsOOoKw==", + "version": "14.0.26", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.26.tgz", + "integrity": "sha512-W+fpe5s91FBGE0pEa0lnqGLL4USgpLgs4nokw16SrBBco/gQxuua7KnArSEOd5iaMqbbSHV10vUDkJYJJqpXKA==", "dev": true }, "@types/normalize-package-data": { @@ -3782,9 +3782,9 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, "inquirer": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.2.tgz", - "integrity": "sha512-DF4osh1FM6l0RJc5YWYhSDB6TawiBRlbV9Cox8MWlidU218Tb7fm3lQTULyUJDfJ0tjbzl0W4q651mrCCEM55w==", + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", @@ -3793,7 +3793,7 @@ "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", - "lodash": "^4.17.16", + "lodash": "^4.17.19", "mute-stream": "0.0.8", "run-async": "^2.4.0", "rxjs": "^6.6.0", @@ -4219,9 +4219,9 @@ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsdoc": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.4.tgz", - "integrity": "sha512-3G9d37VHv7MFdheviDCjUfQoIjdv4TC5zTTf5G9VODLtOnVS6La1eoYBDlbWfsRT3/Xo+j2MIqki2EV12BZfwA==", + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.5.tgz", + "integrity": "sha512-SbY+i9ONuxSK35cgVHaI8O9senTE4CDYAmGSDJ5l3+sfe62Ff4gy96osy6OW84t4K4A8iGnMrlRrsSItSNp3RQ==", "requires": { "@babel/parser": "^7.9.4", "bluebird": "^3.7.2", @@ -4748,9 +4748,9 @@ }, "dependencies": { "mimic-fn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.0.0.tgz", - "integrity": "sha512-PiVO95TKvhiwgSwg1IdLYlCTdul38yZxZMIcnDSFIBUm4BNZha2qpQ4GpJ++15bHoKDtrW2D69lMfFwdFYtNZQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", + "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", "dev": true } } @@ -5332,9 +5332,9 @@ } }, "open": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/open/-/open-7.0.4.tgz", - "integrity": "sha512-brSA+/yq+b08Hsr4c8fsEW2CRzk1BmfN3SAK/5VCHQ9bdoZJ4qa/+AfR0xHjlbbZUyPkUHs1b8x1RqdyZdkVqQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/open/-/open-7.1.0.tgz", + "integrity": "sha512-lLPI5KgOwEYCDKXf4np7y1PBEkj7HYIyP2DY8mVDRnx0VIIu6bNrRB0R66TuO7Mack6EnTNLm4uvcl1UoklTpA==", "dev": true, "requires": { "is-docker": "^2.0.0", @@ -5583,9 +5583,9 @@ } }, "parse-json": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", - "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.1.tgz", + "integrity": "sha512-ztoZ4/DYeXQq4E21v169sC8qWINGpcosGv9XhTDvg9/hWvx/zrFkc9BiWxR58OJLHGk28j5BL0SDLeV2WmFZlQ==", "requires": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", diff --git a/packages/project/package.json b/packages/project/package.json index fcc1d80e08a..e41c60649f4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -128,7 +128,7 @@ "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", "js-beautify": "^1.11.0", - "jsdoc": "^3.6.4", + "jsdoc": "^3.6.5", "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", From 93f311d86a2ae11f75586418884e75519e4194d3 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 31 Jul 2020 11:28:24 +0200 Subject: [PATCH 0394/1272] [ui5-project][INTERNAL] Bump eslint from 6.8.0 to 7.5.0 --- packages/project/.eslintrc.js | 138 ++++++------ packages/project/package-lock.json | 341 +++++++---------------------- packages/project/package.json | 2 +- 3 files changed, 145 insertions(+), 336 deletions(-) diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js index 62cf3b72423..b6b26aa9e39 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.js @@ -1,71 +1,71 @@ module.exports = { - "env": { - "node": true, - "es6": true - }, - "parserOptions": { - "ecmaVersion": 8 - }, - "extends": ["eslint:recommended", "google"], - "plugins": [ - "jsdoc" - ], - "rules": { - "indent": [ - "error", - "tab" - ], - "linebreak-style": [ - "error", - "unix" - ], - "quotes": [ - "error", - "double", - { "allowTemplateLiterals": true } - ], - "semi": [ - "error", - "always" - ], - "no-negated-condition": "off", - "require-jsdoc": "off", - "no-mixed-requires": "off", - "max-len": ["warn", 120], - "no-implicit-coercion": [ - 2, - { "allow": ["!!"] } - ], - "comma-dangle": "off", - "no-tabs": "off", - "valid-jsdoc": 0, - // jsdoc/check-examples is temporarily set to "warn" as the rule causes issues in our CI - // See: https://github.com/gajus/eslint-plugin-jsdoc/issues/508 - "jsdoc/check-examples": 1, - "jsdoc/check-param-names": 2, - "jsdoc/check-tag-names": 2, - "jsdoc/check-types": 2, - "jsdoc/newline-after-description": 2, - "jsdoc/no-undefined-types": 0, - "jsdoc/require-description": 0, - "jsdoc/require-description-complete-sentence": 0, - "jsdoc/require-example": 0, - "jsdoc/require-hyphen-before-param-description": 0, - "jsdoc/require-param": 2, - "jsdoc/require-param-description": 0, - "jsdoc/require-param-name": 2, - "jsdoc/require-param-type": 2, - "jsdoc/require-returns": 0, - "jsdoc/require-returns-description": 0, - "jsdoc/require-returns-type": 2, - "jsdoc/valid-types": 0 - }, - "settings": { - "jsdoc": { - "tagNamePreference": { - "return": "returns" - } - } - }, - "root": true + "env": { + "node": true, + "es6": true + }, + "parserOptions": { + "ecmaVersion": 8 + }, + "extends": ["eslint:recommended", "google"], + "plugins": [ + "jsdoc" + ], + "rules": { + "indent": [ + "error", + "tab" + ], + "linebreak-style": [ + "error", + "unix" + ], + "quotes": [ + "error", + "double", + {"allowTemplateLiterals": true} + ], + "semi": [ + "error", + "always" + ], + "no-negated-condition": "off", + "require-jsdoc": "off", + "no-mixed-requires": "off", + "max-len": ["warn", 120], + "no-implicit-coercion": [ + 2, + {"allow": ["!!"]} + ], + "comma-dangle": "off", + "no-tabs": "off", + "valid-jsdoc": 0, + // jsdoc/check-examples is temporarily set to "warn" as the rule causes issues in our CI + // See: https://github.com/gajus/eslint-plugin-jsdoc/issues/508 + "jsdoc/check-examples": 1, + "jsdoc/check-param-names": 2, + "jsdoc/check-tag-names": 2, + "jsdoc/check-types": 2, + "jsdoc/newline-after-description": 2, + "jsdoc/no-undefined-types": 0, + "jsdoc/require-description": 0, + "jsdoc/require-description-complete-sentence": 0, + "jsdoc/require-example": 0, + "jsdoc/require-hyphen-before-param-description": 0, + "jsdoc/require-param": 2, + "jsdoc/require-param-description": 0, + "jsdoc/require-param-name": 2, + "jsdoc/require-param-type": 2, + "jsdoc/require-returns": 0, + "jsdoc/require-returns-description": 0, + "jsdoc/require-returns-type": 2, + "jsdoc/valid-types": 0 + }, + "settings": { + "jsdoc": { + "tagNamePreference": { + "return": "returns" + } + } + }, + "root": true }; diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 541fd71d2a7..a896cc3c76c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -743,22 +743,11 @@ } } }, - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - }, - "dependencies": { - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } - } + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true }, "ansi-regex": { "version": "2.1.1", @@ -1293,12 +1282,6 @@ "supports-color": "^7.1.0" } }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, "cheerio": { "version": "0.22.0", "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", @@ -1578,12 +1561,6 @@ } } }, - "cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true - }, "cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -2405,6 +2382,15 @@ "once": "^1.4.0" } }, + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1" + } + }, "entities": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", @@ -2611,22 +2597,23 @@ } }, "eslint": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", - "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.5.0.tgz", + "integrity": "sha512-vlUP10xse9sWt9SGRtcr1LAC67BENcQMFeV+w5EvLEoFe3xJ8cF1Skd0msziRx/VMC+72B4DxreCE+OR12OA6Q==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", "debug": "^4.0.1", "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.0", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^1.3.0", + "espree": "^7.2.0", + "esquery": "^1.2.0", "esutils": "^2.0.2", "file-entry-cache": "^5.0.1", "functional-red-black-tree": "^1.0.1", @@ -2635,88 +2622,30 @@ "ignore": "^4.0.6", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", - "inquirer": "^7.0.0", "is-glob": "^4.0.0", "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.14", + "levn": "^0.4.1", + "lodash": "^4.17.19", "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", "natural-compare": "^1.4.0", - "optionator": "^0.8.3", + "optionator": "^0.9.1", "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", "table": "^5.2.3", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", @@ -2726,31 +2655,20 @@ "ms": "^2.1.1" } }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "requires": { - "minimist": "^1.2.5" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" } }, "ms": { @@ -2759,49 +2677,42 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", "dev": true, "requires": { - "shebang-regex": "^1.0.0" + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" } }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" } }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "prelude-ls": "^1.2.1" } } } @@ -2869,9 +2780,9 @@ } }, "eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" @@ -2884,14 +2795,14 @@ "dev": true }, "espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.2.0.tgz", + "integrity": "sha512-H+cQ3+3JYRMEIOl87e7QdHX70ocly5iW4+dttuR8iYSPr/hXKFb+7dBsZ7+u1adC4VrnPlTkv0+OwuPnDop19g==", "dev": true, "requires": { - "acorn": "^7.1.1", + "acorn": "^7.3.1", "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" + "eslint-visitor-keys": "^1.3.0" } }, "esprima": { @@ -3022,17 +2933,6 @@ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", @@ -3781,61 +3681,6 @@ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, - "inquirer": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", - "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, "internal-slot": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.2.tgz", @@ -4985,12 +4830,6 @@ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, "nise": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/nise/-/nise-4.0.4.tgz", @@ -6041,9 +5880,9 @@ } }, "regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", "dev": true }, "regextras": { @@ -6244,12 +6083,6 @@ } } }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true - }, "run-parallel": { "version": "1.1.9", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", @@ -6263,15 +6096,6 @@ "aproba": "^1.1.1" } }, - "rxjs": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.0.tgz", - "integrity": "sha512-3HMA8z/Oz61DUHe+SdOiQyzIf4tOx5oQHmMir7IZEu6TMqCLHT4LRcmNaUS0NwOz8VLvmmBduMsoaUvMaIiqzg==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -7157,15 +6981,6 @@ "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", "dev": true }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -7227,12 +7042,6 @@ "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", "dev": true }, - "tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", - "dev": true - }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index e41c60649f4..e8241ac363a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^6.8.0", + "eslint": "^7.5.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^24.0.6", "istanbul-lib-coverage": "^3.0.0", From e5c9ae0995c4f2b31f8f856581594e9618513c3c Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 31 Jul 2020 11:13:51 +0200 Subject: [PATCH 0395/1272] [ui5-project][INTERNAL] Coverage: Exclude jsdoc-plugin.js --- packages/project/package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index e8241ac363a..028c4cc10e9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -61,7 +61,8 @@ "jsdocs/**", "coverage/**", "test/**", - ".eslintrc.js" + ".eslintrc.js", + "jsdoc-plugin.js" ], "check-coverage": true, "statements": 85, From f9ddb9a0fd9ac2814ba4183858c52949ccc90586 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 2 Aug 2020 02:22:48 +0000 Subject: [PATCH 0396/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 160 +++++++++++++---------------- packages/project/package.json | 4 +- 2 files changed, 73 insertions(+), 91 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a896cc3c76c..c34a3dbae5b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,19 +13,19 @@ } }, "@babel/core": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.10.5.tgz", - "integrity": "sha512-O34LQooYVDXPl7QWCdW9p4NR+QlzOr7xShPPJz8GsuCU3/8ua/wqTr7gmnxXv+WBESiGU/G5s16i6tUvHkNb+w==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.0.tgz", + "integrity": "sha512-mkLq8nwaXmDtFmRkQ8ED/eA2CnVw4zr7dCztKalZXBvdK5EeNUAesrrwUqjQEzFgomJssayzB0aqlOsP1vGLqg==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.10.5", - "@babel/helper-module-transforms": "^7.10.5", + "@babel/generator": "^7.11.0", + "@babel/helper-module-transforms": "^7.11.0", "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.10.5", + "@babel/parser": "^7.11.0", "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.5", - "@babel/types": "^7.10.5", + "@babel/traverse": "^7.11.0", + "@babel/types": "^7.11.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -66,12 +66,12 @@ } }, "@babel/generator": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.10.5.tgz", - "integrity": "sha512-3vXxr3FEW7E7lJZiWQ3bM4+v/Vyr9C+hpolQ8BGFr9Y8Ri2tFLWTixmwKBafDujO1WVah4fhZBeU1bieKdghig==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.0.tgz", + "integrity": "sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ==", "dev": true, "requires": { - "@babel/types": "^7.10.5", + "@babel/types": "^7.11.0", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -105,12 +105,12 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.5.tgz", - "integrity": "sha512-HiqJpYD5+WopCXIAbQDG0zye5XYVvcO9w/DHp5GsaGkRUaamLj2bEtu6i8rnGGprAhHM3qidCMgp71HF4endhA==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz", + "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==", "dev": true, "requires": { - "@babel/types": "^7.10.5" + "@babel/types": "^7.11.0" } }, "@babel/helper-module-imports": { @@ -123,17 +123,17 @@ } }, "@babel/helper-module-transforms": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.10.5.tgz", - "integrity": "sha512-4P+CWMJ6/j1W915ITJaUkadLObmCRRSC234uctJfn/vHrsLNxsR8dwlcXv9ZhJWzl77awf+mWXSZEKt5t0OnlA==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz", + "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.10.4", "@babel/helper-replace-supers": "^7.10.4", "@babel/helper-simple-access": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", "@babel/template": "^7.10.4", - "@babel/types": "^7.10.5", + "@babel/types": "^7.11.0", "lodash": "^4.17.19" } }, @@ -169,12 +169,12 @@ } }, "@babel/helper-split-export-declaration": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.4.tgz", - "integrity": "sha512-pySBTeoUff56fL5CBU2hWm9TesA4r/rOkI9DyJLvvgz09MB9YtfIYe3iBriVaYNaPe+Alua0vBIOVOLs2buWhg==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", + "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", "dev": true, "requires": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.11.0" } }, "@babel/helper-validator-identifier": { @@ -255,9 +255,9 @@ } }, "@babel/parser": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.10.5.tgz", - "integrity": "sha512-wfryxy4bE1UivvQKSQDU4/X6dr+i8bctjUjj8Zyt3DQy7NtPizJXT8M52nqpNKL+nq2PW8lxk4ZqLj0fD4B4hQ==" + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.0.tgz", + "integrity": "sha512-qvRvi4oI8xii8NllyEc4MDJjuZiNaRzyb7Y7lup1NqJV8TZHF4O27CcP+72WPn/k1zkgJ6WJfnIbk4jTsVAZHw==" }, "@babel/template": { "version": "7.10.4", @@ -271,17 +271,17 @@ } }, "@babel/traverse": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.10.5.tgz", - "integrity": "sha512-yc/fyv2gUjPqzTz0WHeRJH2pv7jA9kA7mBX2tXl/x5iOE81uaVPuGPtaYk7wmkx4b67mQ7NqI8rmT2pF47KYKQ==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.0.tgz", + "integrity": "sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.10.5", + "@babel/generator": "^7.11.0", "@babel/helper-function-name": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4", - "@babel/parser": "^7.10.5", - "@babel/types": "^7.10.5", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/parser": "^7.11.0", + "@babel/types": "^7.11.0", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" @@ -311,9 +311,9 @@ } }, "@babel/types": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.10.5.tgz", - "integrity": "sha512-ixV66KWfCI6GKoA/2H9v6bQdbfXEwwpOdQ8cRvb4F+eyvhlaHxWFMQB4+3d9QFJXZsiiiqVrewNV0DFEQpyT4Q==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", + "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.10.4", @@ -516,9 +516,9 @@ "dev": true }, "@types/node": { - "version": "14.0.26", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.26.tgz", - "integrity": "sha512-W+fpe5s91FBGE0pEa0lnqGLL4USgpLgs4nokw16SrBBco/gQxuua7KnArSEOd5iaMqbbSHV10vUDkJYJJqpXKA==", + "version": "14.0.27", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.27.tgz", + "integrity": "sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==", "dev": true }, "@types/normalize-package-data": { @@ -556,14 +556,14 @@ } }, "@ui5/fs": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.1.tgz", - "integrity": "sha512-k/R9P5yXHDB/rjRLEqnHElfd0j7+eo1txT8JxMmILctsidxLYleT4CcUNDWbzc40n9Sa3MqqAp+p8VJlmShSWg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.2.tgz", + "integrity": "sha512-C0Z/tGi7S1NziveyQZdgKKwy/OacFhq9HKfZ051Oi8idWVQdLbK6vvL1J6stdkVFaSAMuKhCIun7gjpGMZnp6w==", "requires": { "@ui5/logger": "^2.0.0", "clone": "^2.1.0", - "globby": "^11.0.0", - "graceful-fs": "^4.2.3", + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", "make-dir": "^3.1.0", "micromatch": "^4.0.2", "minimatch": "^3.0.3", @@ -881,9 +881,9 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.10.1.tgz", - "integrity": "sha512-+w86ZHyFHIGCABi7NUrn/WJMyC+fDj0BSIlFNVS45WDKAD5vxbIiDWeclctxOOc2KDPfQD7tFOURSBz0FBLD0A==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.11.0.tgz", + "integrity": "sha512-y5U8BGeSRjs/OypsC4CJxr+L1KtLKU5kUyHr5hcghXn7HNr2f4LE/4gvl0Q5lNkLX1obdRW1oODphNdU/glwmA==", "dev": true, "requires": { "@concordance/react": "^2.0.0", @@ -894,7 +894,7 @@ "arrify": "^2.0.1", "callsites": "^3.1.0", "chalk": "^4.1.0", - "chokidar": "^3.4.0", + "chokidar": "^3.4.1", "chunkd": "^2.0.1", "ci-info": "^2.0.0", "ci-parallel-vars": "^1.0.1", @@ -908,7 +908,7 @@ "currently-unhandled": "^0.4.1", "debug": "^4.1.1", "del": "^5.1.0", - "emittery": "^0.7.0", + "emittery": "^0.7.1", "equal-length": "^1.0.0", "figures": "^3.2.0", "globby": "^11.0.1", @@ -916,14 +916,14 @@ "import-local": "^3.0.2", "indent-string": "^4.0.0", "is-error": "^2.2.2", - "is-plain-object": "^3.0.1", + "is-plain-object": "^4.1.1", "is-promise": "^4.0.0", - "lodash": "^4.17.15", + "lodash": "^4.17.19", "matcher": "^3.0.0", "md5-hex": "^3.0.1", "mem": "^6.1.0", "ms": "^2.1.2", - "ora": "^4.0.4", + "ora": "^4.0.5", "p-map": "^4.0.0", "picomatch": "^2.2.2", "pkg-conf": "^3.1.0", @@ -940,7 +940,7 @@ "trim-off-newlines": "^1.0.1", "update-notifier": "^4.1.0", "write-file-atomic": "^3.0.3", - "yargs": "^15.4.0" + "yargs": "^15.4.1" }, "dependencies": { "ansi-regex": { @@ -1010,9 +1010,9 @@ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, "blueimp-md5": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.16.0.tgz", - "integrity": "sha512-j4nzWIqEFpLSbdhUApHRGDwfXbV8ALhqOn+FY5L6XBdKPAXU9BpGgFSbDsgqogfqPPR9R2WooseWCsfhfEC6uQ==", + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.17.0.tgz", + "integrity": "sha512-x5PKJHY5rHQYaADj6NwPUR2QRCUVSggPzrUKkeENpj871o9l9IefJbO2jkT5UvYykeOK9dx0VmkIo6dZ+vThYw==", "dev": true }, "body-parser": { @@ -2597,9 +2597,9 @@ } }, "eslint": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.5.0.tgz", - "integrity": "sha512-vlUP10xse9sWt9SGRtcr1LAC67BENcQMFeV+w5EvLEoFe3xJ8cF1Skd0msziRx/VMC+72B4DxreCE+OR12OA6Q==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.6.0.tgz", + "integrity": "sha512-QlAManNtqr7sozWm5TF4wIH9gmUm2hE3vNRUvyoYAa4y1l5/jxD/PQStEjBMQtCqZmSep8UxrcecI60hOpe61w==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -3357,11 +3357,11 @@ "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" }, "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", "requires": { - "ajv": "^6.5.5", + "ajv": "^6.12.3", "har-schema": "^2.0.0" } }, @@ -3833,9 +3833,9 @@ "dev": true }, "is-plain-object": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.1.tgz", - "integrity": "sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-4.1.1.tgz", + "integrity": "sha512-5Aw8LLVsDlZsETVMhoMXzqsXwQqr/0vlnBYzIXJbYo2F4yYlhLHs+Ez7Bod7IIQKWkJbJfxrWD7pA1Dw1TKrwA==", "dev": true }, "is-promise": { @@ -6591,32 +6591,14 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.3.tgz", - "integrity": "sha512-/3RaYN9rW5WEYNHSvn081CgL4HziT027hfi5tsksbPfeWxi3BSLb8tolZDzpYU3I78/0ZqRiFpMDAqN2t4YShA==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.4.tgz", + "integrity": "sha512-rqWMKwsbN9APU47bQTMEYTPcwdpKDtmf1jVhHzNW2cL1WqAxaM9iBb9t5P2fj+RV2YsErUWgQzHD5JwV0uCTEQ==", "dev": true, "requires": { "@tokenizer/token": "^0.1.1", "@types/debug": "^4.1.5", - "debug": "^4.1.1", "peek-readable": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "supertap": { diff --git a/packages/project/package.json b/packages/project/package.json index 028c4cc10e9..a33d123e5a1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,12 +116,12 @@ "string.prototype.matchall": "^4.0.2" }, "devDependencies": { - "ava": "^3.10.1", + "ava": "^3.11.0", "chokidar-cli": "^2.1.0", "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^7.5.0", + "eslint": "^7.6.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^24.0.6", "istanbul-lib-coverage": "^3.0.0", From bd70c7625a9d8157e0f5daf2e8d55f7f07cb276c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 9 Aug 2020 02:20:55 +0000 Subject: [PATCH 0397/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 68 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 35 insertions(+), 35 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c34a3dbae5b..e6405a301bf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,16 +13,16 @@ } }, "@babel/core": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.0.tgz", - "integrity": "sha512-mkLq8nwaXmDtFmRkQ8ED/eA2CnVw4zr7dCztKalZXBvdK5EeNUAesrrwUqjQEzFgomJssayzB0aqlOsP1vGLqg==", + "version": "7.11.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", + "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", "@babel/generator": "^7.11.0", "@babel/helper-module-transforms": "^7.11.0", "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.11.0", + "@babel/parser": "^7.11.1", "@babel/template": "^7.10.4", "@babel/traverse": "^7.11.0", "@babel/types": "^7.11.0", @@ -255,9 +255,9 @@ } }, "@babel/parser": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.0.tgz", - "integrity": "sha512-qvRvi4oI8xii8NllyEc4MDJjuZiNaRzyb7Y7lup1NqJV8TZHF4O27CcP+72WPn/k1zkgJ6WJfnIbk4jTsVAZHw==" + "version": "7.11.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.3.tgz", + "integrity": "sha512-REo8xv7+sDxkKvoxEywIdsNFiZLybwdI7hcT5uEPyQrSMB4YQ973BfC9OOrD/81MaIjh6UxdulIQXkjmiH3PcA==" }, "@babel/template": { "version": "7.10.4", @@ -635,9 +635,9 @@ } }, "acorn": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.3.1.tgz", - "integrity": "sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", + "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", "dev": true }, "acorn-jsx": { @@ -881,9 +881,9 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.11.0.tgz", - "integrity": "sha512-y5U8BGeSRjs/OypsC4CJxr+L1KtLKU5kUyHr5hcghXn7HNr2f4LE/4gvl0Q5lNkLX1obdRW1oODphNdU/glwmA==", + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.11.1.tgz", + "integrity": "sha512-yGPD0msa5Qronw7GHDNlLaB7oU5zryYtXeuvny40YV6TMskSghqK7Ky3NisM/sr+aqI3DY7sfmORx8dIWQgMoQ==", "dev": true, "requires": { "@concordance/react": "^2.0.0", @@ -1306,9 +1306,9 @@ } }, "chokidar": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", - "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz", + "integrity": "sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==", "dev": true, "requires": { "anymatch": "~3.1.1", @@ -2835,9 +2835,9 @@ } }, "estraverse": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", - "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==" + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" }, "esutils": { "version": "2.0.3", @@ -3012,9 +3012,9 @@ } }, "file-type": { - "version": "14.6.2", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.6.2.tgz", - "integrity": "sha512-kSZTAJxPXBdBgJyoC7TexkBWoMI/D1Gas6aTtAn9VIRFwCehwiluGV5O8O2GwqO5zIqeEvXxEKl/xfcaAKB0Yg==", + "version": "14.7.1", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.7.1.tgz", + "integrity": "sha512-sXAMgFk67fQLcetXustxfKX+PZgHIUFn96Xld9uH8aXPdX3xOp0/jg9OdouVTvQrf7mrn+wAa4jN/y9fUOOiRA==", "dev": true, "requires": { "readable-web-to-node-stream": "^2.0.0", @@ -3741,9 +3741,9 @@ "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" }, "is-docker": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.0.0.tgz", - "integrity": "sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz", + "integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==", "dev": true }, "is-error": { @@ -3845,9 +3845,9 @@ "dev": true }, "is-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", - "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", + "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", "requires": { "has-symbols": "^1.0.1" } @@ -5162,9 +5162,9 @@ } }, "onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.1.tgz", + "integrity": "sha512-ZpZpjcJeugQfWsfyQlshVoowIIQ1qBGSVll4rfDq6JJVO//fesjoX808hXWfBjY+ROZgpKDI5TRSRBSoJiZ8eg==", "dev": true, "requires": { "mimic-fn": "^2.1.0" @@ -5207,9 +5207,9 @@ } }, "ora": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.0.5.tgz", - "integrity": "sha512-jCDgm9DqvRcNIAEv2wZPrh7E5PcQiDUnbnWbAfu4NGAE2ZNqPFbDixmWldy1YG2QfLeQhuiu6/h5VRrk6cG50w==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", + "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", "dev": true, "requires": { "chalk": "^3.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index a33d123e5a1..c4e426ebca6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "string.prototype.matchall": "^4.0.2" }, "devDependencies": { - "ava": "^3.11.0", + "ava": "^3.11.1", "chokidar-cli": "^2.1.0", "coveralls": "^3.1.0", "cross-env": "^7.0.2", From bf5c87661fb83a9104589dfff98ae223a3461498 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sun, 9 Aug 2020 10:14:32 +0000 Subject: [PATCH 0398/1272] [ui5-project]Bump eslint-plugin-jsdoc from 24.0.6 to 30.2.1 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 24.0.6 to 30.2.1. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v24.0.6...v30.2.1) Signed-off-by: dependabot-preview[bot] --- packages/project/package-lock.json | 30 ++++++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 13 insertions(+), 19 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e6405a301bf..dfdeccfc3cf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2724,18 +2724,18 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "24.0.6", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-24.0.6.tgz", - "integrity": "sha512-WDzUgShMK7Zg9N6s19LxUqy71At/PxCuMEXaKyBzybhABq6iU4DaZtWZ+4fkCMBvMzMwMAPa2oRD/+fQGORMhg==", + "version": "30.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.2.1.tgz", + "integrity": "sha512-9Nx+BKMBoCTDRIbVpMV4MYfw+lvfnfsWTWYX9vwRRZrkXBpZkKtE3dsFcG6MhF7N/vW1cwpjEnoAIAtn0+a6gw==", "dev": true, "requires": { - "comment-parser": "^0.7.4", + "comment-parser": "^0.7.5", "debug": "^4.1.1", - "jsdoctypeparser": "^6.1.0", - "lodash": "^4.17.15", - "regextras": "^0.7.0", - "semver": "^6.3.0", - "spdx-expression-parse": "^3.0.0" + "jsdoctypeparser": "^9.0.0", + "lodash": "^4.17.19", + "regextras": "^0.7.1", + "semver": "^7.3.2", + "spdx-expression-parse": "^3.0.1" }, "dependencies": { "debug": { @@ -2752,12 +2752,6 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true } } }, @@ -4092,9 +4086,9 @@ } }, "jsdoctypeparser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-6.1.0.tgz", - "integrity": "sha512-UCQBZ3xCUBv/PLfwKAJhp6jmGOSLFNKzrotXGNgbKhWvz27wPsCsVeP7gIcHPElQw2agBmynAitXqhxR58XAmA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-9.0.0.tgz", + "integrity": "sha512-jrTA2jJIL6/DAEILBEh2/w9QxCuwmvNXIry39Ay/HVfhE3o2yVV0U44blYkqdHA/OKloJEqvJy0xU+GSdE2SIw==", "dev": true }, "jsesc": { diff --git a/packages/project/package.json b/packages/project/package.json index c4e426ebca6..fe8433ed08e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -123,7 +123,7 @@ "docdash": "^1.2.0", "eslint": "^7.6.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^24.0.6", + "eslint-plugin-jsdoc": "^30.2.1", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From b93ed627a5ed77f2c9d4355c531b0ac0464919e5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 9 Aug 2020 18:24:05 +0200 Subject: [PATCH 0399/1272] [ui5-project][INTERNAL] Resolve eslint-jsdoc errors --- packages/project/lib/ui5Framework/AbstractResolver.js | 5 ----- 1 file changed, 5 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 8a6047929bf..d638c65053c 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -165,11 +165,6 @@ class AbstractResolver { }; } - /** - * - * @param {string} version - * @param {object} options - */ static async resolveVersion(version, {ui5HomeDir, cwd} = {}) { let spec; if (version === "latest") { From f3f6ff38306285d848079313a152f76a6bc6e6a8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 10 Aug 2020 14:20:29 +0000 Subject: [PATCH 0400/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.0.6 to 2.0.7 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.0.7/CHANGELOG.md --- packages/project/package-lock.json | 22 +++++++++++++++------- packages/project/package.json | 2 +- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index dfdeccfc3cf..da79198beb3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -527,21 +527,21 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.6.tgz", - "integrity": "sha512-1YpfjKz3kHl3Wrq8Qorfw9wXCECebNhXiLMS4/vAmlbZUH73fwqzzGRW+X/Bs14wpcEMjMczN9NS+D6YUsVKGQ==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.7.tgz", + "integrity": "sha512-eDQrLKfezyviwb5trPdCZ0siL4duP6tk3VjlJVKfzYSBIcK3ZCprf7bpv5n/15Jw6Fifz0BjTak6MN0sQHsHOw==", "requires": { - "@ui5/fs": "^2.0.1", + "@ui5/fs": "^2.0.2", "@ui5/logger": "^2.0.0", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", "escodegen": "^1.14.3", "escope": "^3.6.0", "esprima": "^4.0.1", - "estraverse": "^5.1.0", + "estraverse": "5.1.0", "globby": "^11.0.1", "graceful-fs": "^4.2.4", - "jsdoc": "^3.6.4", + "jsdoc": "^3.6.5", "less-openui5": "^0.8.7", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", @@ -553,6 +553,13 @@ "terser": "^4.8.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "estraverse": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", + "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==" + } } }, "@ui5/fs": { @@ -2831,7 +2838,8 @@ "estraverse": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true }, "esutils": { "version": "2.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index fe8433ed08e..3d616de53bc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -95,7 +95,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.0.6", + "@ui5/builder": "^2.0.7", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.2.1", "ajv": "^6.12.3", From c338cbe39a19abf4c7c3705fd131da6b27c61ced Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= <1410947+matz3@users.noreply.github.com> Date: Tue, 11 Aug 2020 15:56:11 +0200 Subject: [PATCH 0401/1272] [ui5-project][FEATURE] specVersion 2.2 (#341) - Allows custom task extensions to use the new `taskUtil` API. - No structural changes to the ui5.yaml schema RFC: SAP/ui5-tooling#243 --- packages/project/lib/projectPreprocessor.js | 5 +- .../project/lib/translators/ui5Framework.js | 4 +- .../validation/schema/specVersion/2.0.json | 2 +- .../specVersion/2.0/kind/extension.json | 2 +- .../2.0/kind/extension/project-shim.json | 4 +- .../2.0/kind/extension/server-middleware.json | 4 +- .../specVersion/2.0/kind/extension/task.json | 4 +- .../schema/specVersion/2.0/kind/project.json | 2 +- .../2.0/kind/project/application.json | 14 +- .../specVersion/2.0/kind/project/library.json | 14 +- .../specVersion/2.0/kind/project/module.json | 20 +-- .../2.0/kind/project/theme-library.json | 29 +--- .../project/lib/validation/schema/ui5.json | 6 +- .../project/test/lib/projectPreprocessor.js | 16 ++ .../schema/__helper__/customConfiguration.js | 24 +-- .../validation/schema/__helper__/extension.js | 6 +- .../validation/schema/__helper__/framework.js | 2 +- .../validation/schema/__helper__/project.js | 7 +- .../schema/specVersion/2.0/kind/extension.js | 2 +- .../2.0/kind/extension/project-shim.js | 4 +- .../2.0/kind/project/application.js | 2 +- .../specVersion/2.0/kind/project/library.js | 2 +- .../specVersion/2.0/kind/project/module.js | 162 +++++++++--------- .../2.0/kind/project/theme-library.js | 2 +- .../project/test/lib/validation/schema/ui5.js | 3 +- 25 files changed, 151 insertions(+), 191 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index b85870ce010..4771a5a408e 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -278,7 +278,7 @@ class ProjectPreprocessor { if (project.specVersion !== "0.1" && project.specVersion !== "1.0" && project.specVersion !== "1.1" && project.specVersion !== "2.0" && - project.specVersion !== "2.1") { + project.specVersion !== "2.1" && project.specVersion !== "2.2") { throw new Error( `Unsupported specification version ${project.specVersion} defined for project ` + `${project.id}. Your UI5 CLI installation might be outdated. ` + @@ -354,7 +354,8 @@ class ProjectPreprocessor { extension.specVersion !== "1.0" && extension.specVersion !== "1.1" && extension.specVersion !== "2.0" && - extension.specVersion !== "2.1") { + extension.specVersion !== "2.1" && + extension.specVersion !== "2.2") { throw new Error( `Unsupported specification version ${extension.specVersion} defined for extension ` + `${extension.metadata.name}. Your UI5 CLI installation might be outdated. ` + diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 40482e0e055..7596c4fa6ab 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -83,7 +83,7 @@ const utils = { if (!project.framework) { return; } - if (project.specVersion !== "2.0" && project.specVersion !== "2.1") { + if (project.specVersion !== "2.0" && project.specVersion !== "2.1" && project.specVersion !== "2.2") { log.warn(`Project ${project.metadata.name} defines invalid ` + `specification version ${project.specVersion} for framework.libraries configuration`); return; @@ -239,7 +239,7 @@ module.exports = { }); queue.push(...project.dependencies); - if ((project.specVersion === "2.0" || project.specVersion === "2.1") && + if ((project.specVersion === "2.0" || project.specVersion === "2.1" || project.specVersion === "2.2") && project.framework && project.framework.libraries) { const frameworkDeps = project.framework.libraries .filter((dependency) => { diff --git a/packages/project/lib/validation/schema/specVersion/2.0.json b/packages/project/lib/validation/schema/specVersion/2.0.json index 48e48d3833f..35a7eac0b58 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0.json +++ b/packages/project/lib/validation/schema/specVersion/2.0.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion"], "properties": { - "specVersion": { "enum": ["2.1", "2.0"] }, + "specVersion": { "enum": ["2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json index be984e61961..fcff79e4083 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "kind", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.1", "2.0"] }, + "specVersion": { "enum": ["2.2", "2.1", "2.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json index 57ae24120cb..cfafd18347a 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json @@ -6,14 +6,14 @@ "required": ["specVersion", "kind", "type", "metadata", "shims"], "if": { "properties": { - "specVersion": { "enum": ["2.1"] } + "specVersion": { "enum": ["2.1", "2.2"] } } }, "then": { "additionalProperties": false, "properties": { "specVersion": { - "enum": ["2.1"] + "enum": ["2.1", "2.2"] }, "kind": { "enum": ["extension"] diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json index c1330f4adc9..3f37e16be44 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json @@ -7,13 +7,13 @@ "required": ["specVersion", "kind", "type", "metadata", "middleware"], "if": { "properties": { - "specVersion": { "enum": ["2.1"] } + "specVersion": { "enum": ["2.1", "2.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1"] }, + "specVersion": { "enum": ["2.1", "2.2"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json index 57e3cbe9c26..8656ef15ad4 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json @@ -6,13 +6,13 @@ "required": ["specVersion", "kind", "type", "metadata", "task"], "if": { "properties": { - "specVersion": { "enum": ["2.1"] } + "specVersion": { "enum": ["2.1", "2.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1"] }, + "specVersion": { "enum": ["2.1", "2.2"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index d0d6b77a081..eb193c2056e 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "type"], "properties": { - "specVersion": { "enum": ["2.1", "2.0"] }, + "specVersion": { "enum": ["2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json index e9f5a88a7a5..3ce92af51d1 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json @@ -4,25 +4,15 @@ "type": "object", "required": ["specVersion", "type", "metadata"], - "properties": { - "specVersion": { "enum": ["2.1", "2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["application"] - } - }, - "if": { "properties": { - "specVersion": { "enum": ["2.1"] } + "specVersion": { "enum": ["2.1", "2.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1"] }, + "specVersion": { "enum": ["2.1", "2.2"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json index cc66e431764..cd2086013eb 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json @@ -4,25 +4,15 @@ "type": "object", "required": ["specVersion", "type", "metadata"], - "properties": { - "specVersion": { "enum": ["2.1","2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["library"] - } - }, - "if": { "properties": { - "specVersion": { "enum": ["2.1"] } + "specVersion": { "enum": ["2.1", "2.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1"] }, + "specVersion": { "enum": ["2.1", "2.2"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json index e4978c6e76d..d315140a486 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json @@ -4,31 +4,15 @@ "type": "object", "required": ["specVersion", "type", "metadata"], - "properties": { - "specVersion": { "enum": ["2.1","2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["module"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "resources": { - "$ref": "#/definitions/resources" - } - }, - "if": { "properties": { - "specVersion": { "enum": ["2.1"] } + "specVersion": { "enum": ["2.1", "2.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1"] }, + "specVersion": { "enum": ["2.1", "2.2"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json index a9a074c3cec..210949d2da8 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json @@ -4,40 +4,15 @@ "type": "object", "required": ["specVersion", "type", "metadata"], - "properties": { - "specVersion": { "enum": ["2.1", "2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["theme-library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "library.json#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" - } - }, - "if": { "properties": { - "specVersion": { "enum": ["2.1"] } + "specVersion": { "enum": ["2.1", "2.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1"] }, + "specVersion": { "enum": ["2.1", "2.2"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index a9614c1b1ea..0671a590a55 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -10,16 +10,16 @@ "properties": { "specVersion": { "enum": [ - "2.1", "2.0", + "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.0"] } + "specVersion": { "enum": ["2.2", "2.1", "2.0"] } } }, "then": { diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index bfd55f0fb7f..a05323049b2 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1718,6 +1718,22 @@ test("specVersion: Project with valid version 2.1", async (t) => { t.deepEqual(res.specVersion, "2.1", "Correct spec version"); }); +test("specVersion: Project with valid version 2.2", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.2", + type: "application", + metadata: { + name: "xy" + } + }; + const res = await projectPreprocessor.processTree(tree); + t.deepEqual(res.specVersion, "2.2", "Correct spec version"); +}); + test("isBeingProcessed: Is not being processed", (t) => { const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); diff --git a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js index 6157fe6d099..cae65621945 100644 --- a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js +++ b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js @@ -36,17 +36,19 @@ module.exports = { ]); }); - test(`${type}: Valid customConfiguration (specVersion 2.1)`, async (t) => { - await assertValidation(t, Object.assign( { - "specVersion": "2.1", - "type": type, - "metadata": { - "name": "my-" + type - }, - "customConfiguration": { - "foo": "bar" - } - }, additionalConfiguration)); + ["2.2", "2.1"].forEach((specVersion) => { + test(`${type}: Valid customConfiguration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, Object.assign( { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + }, + "customConfiguration": { + "foo": "bar" + } + }, additionalConfiguration)); + }); }); } }; diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js index af552d2492e..0770622c30c 100644 --- a/packages/project/test/lib/validation/schema/__helper__/extension.js +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -18,7 +18,7 @@ module.exports = { customConfiguration.defineTests(test, assertValidation, type, additionalConfiguration); - ["2.0", "2.1"].forEach((specVersion) => { + ["2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: ${type} basic (${specVersion})`, async (t) => { await assertValidation(t, Object.assign({ "specVersion": specVersion, @@ -44,7 +44,7 @@ module.exports = { params: { "additionalProperty": "resources" }, - schemaPath: specVersion === "2.1" ? "#/then/additionalProperties" : "#/else/additionalProperties" + schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties" }]); }); @@ -65,7 +65,7 @@ module.exports = { additionalProperty: "notAllowed", }, schemaPath: - specVersion === "2.1" ? "#/then/additionalProperties" : "#/else/additionalProperties" + specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties" }]); }); }); diff --git a/packages/project/test/lib/validation/schema/__helper__/framework.js b/packages/project/test/lib/validation/schema/__helper__/framework.js index b3531db66c4..742a9d30786 100644 --- a/packages/project/test/lib/validation/schema/__helper__/framework.js +++ b/packages/project/test/lib/validation/schema/__helper__/framework.js @@ -10,7 +10,7 @@ module.exports = { * @param {string} type one of "application", "library" and "theme-library" */ defineTests: function(test, assertValidation, type) { - ["2.0", "2.1"].forEach((specVersion) => { + ["2.2", "2.1", "2.0"].forEach((specVersion) => { test(`${type} (specVersion ${specVersion}): framework configuration: OpenUI5`, async (t) => { const config = { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index 97c75d8a7cc..418e920ee28 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -22,10 +22,9 @@ module.exports = { // customConfiguration tests customConfiguration.defineTests(test, assertValidation, type); - // version specific tests - ["2.0", "2.1"].forEach((specVersion) => { - // tests for all kinds and version 2.0 and 2.1 + ["2.2", "2.1", "2.0"].forEach((specVersion) => { + // tests for all kinds and version 2.0 and above test(`${type} (specVersion ${specVersion}): No metadata`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -279,7 +278,7 @@ module.exports = { params: { additionalProperty: "notAllowed", }, - schemaPath: specVersion === "2.1" ? "#/then/additionalProperties" : "#/else/additionalProperties", + schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties", }]); }); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js index abbfc0cc0b5..a7cb45a129c 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js @@ -33,7 +33,7 @@ test.after.always((t) => { }; t.context.ajvCoverage.verify(thresholds); }); -["2.0", "2.1"].forEach((specVersion) => { +["2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Type project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js index 072b504abb3..81a6ba4e741 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js @@ -35,7 +35,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.0", "2.1"].forEach((specVersion) => { +["2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -80,7 +80,7 @@ test.after.always((t) => { params: { "additionalProperty": "middleware" }, - schemaPath: specVersion === "2.1" ? "#/then/additionalProperties" : "#/else/additionalProperties", + schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties", }, { dataPath: "/shims", diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index 2e56d96523e..6070023b193 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -35,7 +35,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.1", "2.0"].forEach(function(specVersion) { +["2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index 189ae4920eb..7a1bc1de4b9 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -35,7 +35,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.1", "2.0"].forEach(function(specVersion) { +["2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): Valid configuration`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js index 4e4eb2fba7b..d4b3d801131 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js @@ -35,93 +35,95 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -test("Valid configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "kind": "project", - "type": "module", - "metadata": { - "name": "my-module" - }, - "resources": { - "configuration": { - "paths": { - "/resources/my/library/module-xy/": "lib", - "/resources/my/library/module-xy-min/": "dist" +["2.2", "2.1", "2.0"].forEach((specVersion) => { + test(`Valid configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "module", + "metadata": { + "name": "my-module" + }, + "resources": { + "configuration": { + "paths": { + "/resources/my/library/module-xy/": "lib", + "/resources/my/library/module-xy-min/": "dist" + } } } - } + }); }); -}); -test("No framework configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module" - }, - "framework": {} - }, [{ - dataPath: "", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - "additionalProperty": "framework" - }, - schemaPath: "#/else/additionalProperties" - }]); -}); + test(`No framework configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "module", + "metadata": { + "name": "my-module" + }, + "framework": {} + }, [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "framework" + }, + schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties", + }]); + }); -test("No propertiesFileSourceEncoding configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "UTF-8" + test(`No propertiesFileSourceEncoding configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "module", + "metadata": { + "name": "my-module" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF-8" + } } - } - }, [{ - dataPath: "/resources/configuration", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - "additionalProperty": "propertiesFileSourceEncoding" - }, - schemaPath: "#/definitions/resources/properties/configuration/additionalProperties" - }]); -}); + }, [{ + dataPath: "/resources/configuration", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "propertiesFileSourceEncoding" + }, + schemaPath: "#/definitions/resources/properties/configuration/additionalProperties" + }]); + }); -test("No builder, server configuration", async (t) => { - await assertValidation(t, { - "specVersion": "2.0", - "type": "module", - "metadata": { - "name": "my-module" - }, - "builder": {}, - "server": {} - }, [{ - dataPath: "", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - "additionalProperty": "builder" - }, - schemaPath: "#/else/additionalProperties" - }, { - dataPath: "", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - "additionalProperty": "server" - }, - schemaPath: "#/else/additionalProperties" - }]); + test(`No builder, server configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "module", + "metadata": { + "name": "my-module" + }, + "builder": {}, + "server": {} + }, [{ + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "builder" + }, + schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties", + }, { + dataPath: "", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + "additionalProperty": "server" + }, + schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties", + }]); + }); }); project.defineTests(test, assertValidation, "module"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js index 77e02daaa37..197792b8210 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -36,7 +36,7 @@ test.after.always((t) => { }); -["2.1", "2.0"].forEach(function(specVersion) { +["2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 87ead2b64b2..8ea7abfca4c 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -96,7 +96,7 @@ test("Invalid specVersion", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. -Supported specification versions: "2.1", "2.0", "1.1", "1.0", "0.1" +Supported specification versions: "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, params: { errors: [ @@ -106,6 +106,7 @@ For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specific message: "should be equal to one of the allowed values", params: { allowedValues: [ + "2.2", "2.1", "2.0", "1.1", From f33e607a541e8d1acf4100c975e396e4b5a3fcd9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 11 Aug 2020 14:26:41 +0000 Subject: [PATCH 0402/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.0.7 to 2.1.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.1.0/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index da79198beb3..6c87f9529f0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -527,9 +527,9 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.0.7.tgz", - "integrity": "sha512-eDQrLKfezyviwb5trPdCZ0siL4duP6tk3VjlJVKfzYSBIcK3ZCprf7bpv5n/15Jw6Fifz0BjTak6MN0sQHsHOw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.1.0.tgz", + "integrity": "sha512-eOXYhL7BmhtEFU/mLKJWGGBxiy/0amJ5+lMjZN7yXdMc20aY5GtrJpYq2EDTZrp6xrj0b0E2yD34yxBaKYAbqg==", "requires": { "@ui5/fs": "^2.0.2", "@ui5/logger": "^2.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 3d616de53bc..bcb40abea28 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -95,7 +95,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.0.7", + "@ui5/builder": "^2.1.0", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.2.1", "ajv": "^6.12.3", From 400c3b6457d99a87dd909a36f74d51cec18be237 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 11 Aug 2020 14:32:49 +0000 Subject: [PATCH 0403/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.1 to 2.2.2 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.2/CHANGELOG.md --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6c87f9529f0..fb57bae03e7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -589,12 +589,12 @@ } }, "@ui5/server": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.1.tgz", - "integrity": "sha512-DJyxc8Ccp2NDL1z9Jw27gnzL64DzqbRPUJHeUIK+bos9KWiV6+TDlqEJcYomNznhL9TgkUZweQD7WXiKrUiTfw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.2.tgz", + "integrity": "sha512-cBvxdlSOIaHAfwAbSS6nCk+u21rVNFgkz+LteQkTN0r8ZByXVW3qE2rspC4eALpbiTHc7EuvRs5v+eEA3PksgQ==", "requires": { - "@ui5/builder": "^2.0.5", - "@ui5/fs": "^2.0.1", + "@ui5/builder": "^2.1.0", + "@ui5/fs": "^2.0.2", "@ui5/logger": "^2.0.0", "body-parser": "^1.19.0", "compression": "^1.7.4", @@ -3104,9 +3104,9 @@ } }, "follow-redirects": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.12.1.tgz", - "integrity": "sha512-tmRv0AVuR7ZyouUHLeNSiO6pqulF7dYa3s19c6t+wz9LD69/uSzdMxJ2S91nTI9U3rt/IldxpzMOFejp6f0hjg==" + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.0.tgz", + "integrity": "sha512-aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA==" }, "foreground-child": { "version": "2.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index bcb40abea28..2bb1016af26 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -97,7 +97,7 @@ "dependencies": { "@ui5/builder": "^2.1.0", "@ui5/logger": "^2.0.0", - "@ui5/server": "^2.2.1", + "@ui5/server": "^2.2.2", "ajv": "^6.12.3", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From 2f7e8115e5417f8c51536ad1347bcecaeca62953 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 11 Aug 2020 14:35:45 +0000 Subject: [PATCH 0404/1272] [ui5-project]Release 2.2.0 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 00728e70930..e7fe6e6e2c7 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.1.5...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.0...HEAD). + + +## [v2.2.0] - 2020-08-11 +### Features +- specVersion 2.2 ([#341](https://github.com/SAP/ui5-project/issues/341)) [`f44d14e`](https://github.com/SAP/ui5-project/commit/f44d14e136a4163d59dd8fd8c0be0ea2b59930be) + ## [v2.1.5] - 2020-07-14 @@ -189,6 +195,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.2.0]: https://github.com/SAP/ui5-project/compare/v2.1.5...v2.2.0 [v2.1.5]: https://github.com/SAP/ui5-project/compare/v2.1.4...v2.1.5 [v2.1.4]: https://github.com/SAP/ui5-project/compare/v2.1.3...v2.1.4 [v2.1.3]: https://github.com/SAP/ui5-project/compare/v2.1.2...v2.1.3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fb57bae03e7..1ba6760e9d3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.5", + "version": "2.2.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 2bb1016af26..a5c74c3aa14 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.1.5", + "version": "2.2.0", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 2c1f1d63e26f127e2f97edeae9df036be1cbbde2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 16 Aug 2020 02:20:37 +0000 Subject: [PATCH 0405/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 104 +++++++++++++---------------- packages/project/package.json | 10 +-- 2 files changed, 53 insertions(+), 61 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1ba6760e9d3..6acd1d0c525 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -451,9 +451,9 @@ } }, "@sinonjs/samsam": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.0.3.tgz", - "integrity": "sha512-QucHkc2uMJ0pFGjJUDP3F9dq5dx8QIaqISl9QgwLOh6P9yv877uONPGXh/OH/0zmM3tW1JjuJltAZV2l7zU+uQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.1.0.tgz", + "integrity": "sha512-42nyaQOVunX5Pm6GRJobmzbS7iLI+fhERITnETXzzwDZh+TtDr/Au3yAvXVjFmZ4wEUaE4Y3NFZfKv0bV0cbtg==", "dev": true, "requires": { "@sinonjs/commons": "^1.6.0", @@ -553,19 +553,12 @@ "terser": "^4.8.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "estraverse": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", - "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==" - } } }, "@ui5/fs": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.2.tgz", - "integrity": "sha512-C0Z/tGi7S1NziveyQZdgKKwy/OacFhq9HKfZ051Oi8idWVQdLbK6vvL1J6stdkVFaSAMuKhCIun7gjpGMZnp6w==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.3.tgz", + "integrity": "sha512-rrkqGiNI1+RaIIa472dBx+6dAh6G27k0VaXM43kTkyYUXTyotpWxXJR9Vbl8U+H4rqtqsVTFaU4eHmDbYHQxJw==", "requires": { "@ui5/logger": "^2.0.0", "clone": "^2.1.0", @@ -686,9 +679,9 @@ } }, "ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", + "version": "6.12.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.4.tgz", + "integrity": "sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ==", "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -988,9 +981,9 @@ "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", - "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==" + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.1.tgz", + "integrity": "sha512-zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA==" }, "balanced-match": { "version": "1.0.0", @@ -1210,9 +1203,9 @@ }, "dependencies": { "get-stream": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", - "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", "dev": true, "requires": { "pump": "^3.0.0" @@ -1673,9 +1666,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.7.5.tgz", - "integrity": "sha512-iH9YA35ccw94nx5244GVkpyC9eVTsL71jZz6iz5w6RIf79JLF2AsXHXq9p6Oaohyl3sx5qSMnGsWUDFIAfWL4w==", + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.7.6.tgz", + "integrity": "sha512-GKNxVA7/iuTnAqGADlTWX4tkhzxZKXp5fLJqKTlQLHkE65XDUKutZ3BHaJC5IGcper2tT3QRD1xr4o3jNpgXXg==", "dev": true }, "common-path-prefix": { @@ -2265,9 +2258,9 @@ } }, "duplexer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", - "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", "dev": true }, "duplexer2": { @@ -2604,9 +2597,9 @@ } }, "eslint": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.6.0.tgz", - "integrity": "sha512-QlAManNtqr7sozWm5TF4wIH9gmUm2hE3vNRUvyoYAa4y1l5/jxD/PQStEjBMQtCqZmSep8UxrcecI60hOpe61w==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.7.0.tgz", + "integrity": "sha512-1KUxLzos0ZVsyL81PnRN335nDtQ8/vZUD6uMtWbF+5zDtjKcsklIi78XoE0MVL93QvWTu+E5y44VyyCsOMBrIg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2731,9 +2724,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.2.1.tgz", - "integrity": "sha512-9Nx+BKMBoCTDRIbVpMV4MYfw+lvfnfsWTWYX9vwRRZrkXBpZkKtE3dsFcG6MhF7N/vW1cwpjEnoAIAtn0+a6gw==", + "version": "30.2.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.2.2.tgz", + "integrity": "sha512-588zVyRy+g7s8VU3D0AL75r7xBYN0UX6tZEwP5EQ4JvpVavwu2iPJRaBxwuG3QAj99WZkUBlrLU16p4qST6vSw==", "dev": true, "requires": { "comment-parser": "^0.7.5", @@ -2836,10 +2829,9 @@ } }, "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", + "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==" }, "esutils": { "version": "2.0.3", @@ -4020,15 +4012,15 @@ } }, "js-beautify": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.11.0.tgz", - "integrity": "sha512-a26B+Cx7USQGSWnz9YxgJNMmML/QG2nqIaL7VVYPCXbqiKz8PN0waSNvroMtvAK6tY7g/wPdNWGEP+JTNIBr6A==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.12.0.tgz", + "integrity": "sha512-hZCm93+sWHqrsB2ac38cPX4A9t6mfReq13ZUr/0dk6rCXNLIq0R4lu0EiuJc0Ip6RiWNtE0vECjXOhcy/jMt9Q==", "dev": true, "requires": { "config-chain": "^1.1.12", "editorconfig": "^0.15.3", "glob": "^7.1.3", - "mkdirp": "~1.0.3", + "mkdirp": "^1.0.4", "nopt": "^4.0.3" } }, @@ -4299,9 +4291,9 @@ } }, "lodash": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" }, "lodash.assignin": { "version": "4.2.0", @@ -4982,9 +4974,9 @@ } }, "npm-registry-fetch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.5.tgz", - "integrity": "sha512-yQ0/U4fYpCCqmueB2g8sc+89ckQ3eXpmU4+Yi2j5o/r0WkKvE2+Y0tK3DEILAtn2UaQTkjTHxIXe2/CSdit+/Q==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.6.tgz", + "integrity": "sha512-SEp9m7fPe8FIKzhg2JS+xs+w4YY9mEwRlMcEZRELph7rdoygIQGY6B+g0+wdZqokHE8f57ZkexxYWqFO0FkfCw==", "requires": { "JSONStream": "^1.3.4", "bluebird": "^3.5.1", @@ -5164,9 +5156,9 @@ } }, "onetime": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.1.tgz", - "integrity": "sha512-ZpZpjcJeugQfWsfyQlshVoowIIQ1qBGSVll4rfDq6JJVO//fesjoX808hXWfBjY+ROZgpKDI5TRSRBSoJiZ8eg==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, "requires": { "mimic-fn": "^2.1.0" @@ -6230,17 +6222,17 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.0.2.tgz", - "integrity": "sha512-0uF8Q/QHkizNUmbK3LRFqx5cpTttEVXudywY9Uwzy8bTfZUhljZ7ARzSxnRHWYWtVTeh4Cw+tTb3iU21FQVO9A==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.0.3.tgz", + "integrity": "sha512-IKo9MIM111+smz9JGwLmw5U1075n1YXeAq8YeSFlndCLhAL5KGn6bLgu7b/4AYHTV/LcEMcRm2wU2YiL55/6Pg==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.2", "@sinonjs/fake-timers": "^6.0.1", "@sinonjs/formatio": "^5.0.1", - "@sinonjs/samsam": "^5.0.3", + "@sinonjs/samsam": "^5.1.0", "diff": "^4.0.2", - "nise": "^4.0.1", + "nise": "^4.0.4", "supports-color": "^7.1.0" } }, diff --git a/packages/project/package.json b/packages/project/package.json index a5c74c3aa14..d0ed90f57af 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -98,7 +98,7 @@ "@ui5/builder": "^2.1.0", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.2.2", - "ajv": "^6.12.3", + "ajv": "^6.12.4", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", "escape-string-regexp": "^4.0.0", @@ -121,20 +121,20 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^7.6.0", + "eslint": "^7.7.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.2.1", + "eslint-plugin-jsdoc": "^30.2.2", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", - "js-beautify": "^1.11.0", + "js-beautify": "^1.12.0", "jsdoc": "^3.6.5", "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", "rimraf": "^3.0.2", - "sinon": "^9.0.2", + "sinon": "^9.0.3", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 961e7cc4f6a98387d1c17f614ca8c4d889b887d6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 13 Aug 2020 16:55:00 +0200 Subject: [PATCH 0406/1272] [ui5-project][INTERNAL] Adopt REUSE Specification 3.0 See https://reuse.software/spec/ The MIT licensed deploy/deploy.sh mentioned in LICENSE.txt was actually never part of this repository but of the ui5-tooling. --- packages/project/.reuse/dep5 | 29 ++ packages/project/LICENSE.txt | 433 +++++++++++------------ packages/project/LICENSES/Apache-2.0.txt | 208 +++++++++++ packages/project/NOTICE.txt | 1 - packages/project/README.md | 3 - packages/project/package.json | 4 +- 6 files changed, 443 insertions(+), 235 deletions(-) create mode 100644 packages/project/.reuse/dep5 create mode 100644 packages/project/LICENSES/Apache-2.0.txt delete mode 100644 packages/project/NOTICE.txt diff --git a/packages/project/.reuse/dep5 b/packages/project/.reuse/dep5 new file mode 100644 index 00000000000..c81916ad08a --- /dev/null +++ b/packages/project/.reuse/dep5 @@ -0,0 +1,29 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: ui5-project +Upstream-Contact: SAP OpenUI5 +Source: https://github.com/SAP/ui5-project +Disclaimer: The code in this project may include calls to APIs (“API Calls”) of + SAP or third-party products or services developed outside of this project + (“External Products”). + “APIs” means application programming interfaces, as well as their respective + specifications and implementing code that allows software to communicate with + other software. + API Calls to External Products are not licensed under the open source license + that governs this project. The use of such API Calls and related External + Products are subject to applicable additional agreements with the relevant + provider of the External Products. In no event shall the open source license + that governs this project grant any rights in or to any External Products,or + alter, expand or supersede any terms of the applicable additional agreements. + If you have a valid license agreement with SAP for the use of a particular SAP + External Product, then you may make use of any API Calls included in this + project’s code for that SAP External Product, subject to the terms of such + license agreement. If you do not have a valid license agreement for the use of + a particular SAP External Product, then you may only make use of any API Calls + in this project for that SAP External Product for your internal, non-productive + and non-commercial test and evaluation of such API Calls. Nothing herein grants + you any rights to use or access any SAP External Product, or provide any third + parties the right to use of access any SAP External Product, through API Calls. + +Files: * +Copyright: 2018-2020 SAP SE or an SAP affiliate company and UI5 Tooling contributors +License: Apache-2.0 diff --git a/packages/project/LICENSE.txt b/packages/project/LICENSE.txt index d107a1f63b0..4ed90b95224 100644 --- a/packages/project/LICENSE.txt +++ b/packages/project/LICENSE.txt @@ -1,235 +1,208 @@ +Apache License - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ +Version 2.0, January 2004 - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, +AND DISTRIBUTION 1. Definitions. - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed 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. - ------------------------------------------------------------------------------- -APIs - -This project may include APIs to SAP or third party products or services. The use of these APIs, products and services may be subject to additional agreements. In no event shall the application of the Apache Software License, v.2 to this project grant any rights in or to these APIs, products or services that would alter, expand, be inconsistent with, or supersede any terms of these additional agreements. “API” means application programming interfaces, as well as their respective specifications and implementing code that allows other software products to communicate with or call on SAP or third party products or services (for example, SAP Enterprise Services, BAPIs, Idocs, RFCs and ABAP calls or other user exits) and may be made available through SAP or third party products, SDKs, documentation or other media. - ------------------------------------------------------------------------------- -SUBCOMPONENTS - -This project includes the following subcomponents that are subject to separate license terms. -Your use of these subcomponents is subject to the separate license terms applicable to -each subcomponent. - -Component: deploy.sh -Licensor: Domenic Denicola -Website: https://gist.github.com/domenic/ec8b0fc8ab45f39403dd/e445116166c79d7ac35eb38a5d348d546f3d1620 -License: MIT License - = 2018 - = Domenic Denicola - ------------------------------------------------------------------------------- - -The MIT License (MIT) - -Copyright - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ------------------------------------------------------------------------------- \ No newline at end of file + + +"License" shall mean the terms and conditions for use, reproduction, and distribution +as defined by Sections 1 through 9 of this document. + + + +"Licensor" shall mean the copyright owner or entity authorized by the copyright +owner that is granting the License. + + + +"Legal Entity" shall mean the union of the acting entity and all other entities +that control, are controlled by, or are under common control with that entity. +For the purposes of this definition, "control" means (i) the power, direct +or indirect, to cause the direction or management of such entity, whether +by contract or otherwise, or (ii) ownership of fifty percent (50%) or more +of the outstanding shares, or (iii) beneficial ownership of such entity. + + + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions +granted by this License. + + + +"Source" form shall mean the preferred form for making modifications, including +but not limited to software source code, documentation source, and configuration +files. + + + +"Object" form shall mean any form resulting from mechanical transformation +or translation of a Source form, including but not limited to compiled object +code, generated documentation, and conversions to other media types. + + + +"Work" shall mean the work of authorship, whether in Source or Object form, +made available under the License, as indicated by a copyright notice that +is included in or attached to the work (an example is provided in the Appendix +below). + + + +"Derivative Works" shall mean any work, whether in Source or Object form, +that is based on (or derived from) the Work and for which the editorial revisions, +annotations, elaborations, or other modifications represent, as a whole, an +original work of authorship. For the purposes of this License, Derivative +Works shall not include works that remain separable from, or merely link (or +bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + +"Contribution" shall mean any work of authorship, including the original version +of the Work and any modifications or additions to that Work or Derivative +Works thereof, that is intentionally submitted to Licensor for inclusion in +the Work by the copyright owner or by an individual or Legal Entity authorized +to submit on behalf of the copyright owner. For the purposes of this definition, +"submitted" means any form of electronic, verbal, or written communication +sent to the Licensor or its representatives, including but not limited to +communication on electronic mailing lists, source code control systems, and +issue tracking systems that are managed by, or on behalf of, the Licensor +for the purpose of discussing and improving the Work, but excluding communication +that is conspicuously marked or otherwise designated in writing by the copyright +owner as "Not a Contribution." + + + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf +of whom a Contribution has been received by Licensor and subsequently incorporated +within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of this +License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, +no-charge, royalty-free, irrevocable copyright license to reproduce, prepare +Derivative Works of, publicly display, publicly perform, sublicense, and distribute +the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of this License, +each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, +no-charge, royalty-free, irrevocable (except as stated in this section) patent +license to make, have made, use, offer to sell, sell, import, and otherwise +transfer the Work, where such license applies only to those patent claims +licensable by such Contributor that are necessarily infringed by their Contribution(s) +alone or by combination of their Contribution(s) with the Work to which such +Contribution(s) was submitted. If You institute patent litigation against +any entity (including a cross-claim or counterclaim in a lawsuit) alleging +that the Work or a Contribution incorporated within the Work constitutes direct +or contributory patent infringement, then any patent licenses granted to You +under this License for that Work shall terminate as of the date such litigation +is filed. + +4. Redistribution. You may reproduce and distribute copies of the Work or +Derivative Works thereof in any medium, with or without modifications, and +in Source or Object form, provided that You meet the following conditions: + +(a) You must give any other recipients of the Work or Derivative Works a copy +of this License; and + +(b) You must cause any modified files to carry prominent notices stating that +You changed the files; and + +(c) You must retain, in the Source form of any Derivative Works that You distribute, +all copyright, patent, trademark, and attribution notices from the Source +form of the Work, excluding those notices that do not pertain to any part +of the Derivative Works; and + +(d) If the Work includes a "NOTICE" text file as part of its distribution, +then any Derivative Works that You distribute must include a readable copy +of the attribution notices contained within such NOTICE file, excluding those +notices that do not pertain to any part of the Derivative Works, in at least +one of the following places: within a NOTICE text file distributed as part +of the Derivative Works; within the Source form or documentation, if provided +along with the Derivative Works; or, within a display generated by the Derivative +Works, if and wherever such third-party notices normally appear. The contents +of the NOTICE file are for informational purposes only and do not modify the +License. You may add Your own attribution notices within Derivative Works +that You distribute, alongside or as an addendum to the NOTICE text from the +Work, provided that such additional attribution notices cannot be construed +as modifying the License. + +You may add Your own copyright statement to Your modifications and may provide +additional or different license terms and conditions for use, reproduction, +or distribution of Your modifications, or for any such Derivative Works as +a whole, provided Your use, reproduction, and distribution of the Work otherwise +complies with the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, any +Contribution intentionally submitted for inclusion in the Work by You to the +Licensor shall be under the terms and conditions of this License, without +any additional terms or conditions. Notwithstanding the above, nothing herein +shall supersede or modify the terms of any separate license agreement you +may have executed with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade names, +trademarks, service marks, or product names of the Licensor, except as required +for reasonable and customary use in describing the origin of the Work and +reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or agreed to +in writing, Licensor provides the Work (and each Contributor provides its +Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied, including, without limitation, any warranties +or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR +A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness +of using or redistributing the Work and assume any risks associated with Your +exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, whether +in tort (including negligence), contract, or otherwise, unless required by +applicable law (such as deliberate and grossly negligent acts) or agreed to +in writing, shall any Contributor be liable to You for damages, including +any direct, indirect, special, incidental, or consequential damages of any +character arising as a result of this License or out of the use or inability +to use the Work (including but not limited to damages for loss of goodwill, +work stoppage, computer failure or malfunction, or any and all other commercial +damages or losses), even if such Contributor has been advised of the possibility +of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing the Work +or Derivative Works thereof, You may choose to offer, and charge a fee for, +acceptance of support, warranty, indemnity, or other liability obligations +and/or rights consistent with this License. However, in accepting such obligations, +You may act only on Your own behalf and on Your sole responsibility, not on +behalf of any other Contributor, and only if You agree to indemnify, defend, +and hold each Contributor harmless for any liability incurred by, or claims +asserted against, such Contributor by reason of your accepting any such warranty +or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate +notice, with the fields enclosed by brackets "[]" replaced with your own identifying +information. (Don't include the brackets!) The text should be enclosed in +the appropriate comment syntax for the file format. We also recommend that +a file or class name and description of purpose be included on the same "printed +page" as the copyright notice for easier identification within third-party +archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed 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. diff --git a/packages/project/LICENSES/Apache-2.0.txt b/packages/project/LICENSES/Apache-2.0.txt new file mode 100644 index 00000000000..4ed90b95224 --- /dev/null +++ b/packages/project/LICENSES/Apache-2.0.txt @@ -0,0 +1,208 @@ +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, +AND DISTRIBUTION + + 1. Definitions. + + + +"License" shall mean the terms and conditions for use, reproduction, and distribution +as defined by Sections 1 through 9 of this document. + + + +"Licensor" shall mean the copyright owner or entity authorized by the copyright +owner that is granting the License. + + + +"Legal Entity" shall mean the union of the acting entity and all other entities +that control, are controlled by, or are under common control with that entity. +For the purposes of this definition, "control" means (i) the power, direct +or indirect, to cause the direction or management of such entity, whether +by contract or otherwise, or (ii) ownership of fifty percent (50%) or more +of the outstanding shares, or (iii) beneficial ownership of such entity. + + + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions +granted by this License. + + + +"Source" form shall mean the preferred form for making modifications, including +but not limited to software source code, documentation source, and configuration +files. + + + +"Object" form shall mean any form resulting from mechanical transformation +or translation of a Source form, including but not limited to compiled object +code, generated documentation, and conversions to other media types. + + + +"Work" shall mean the work of authorship, whether in Source or Object form, +made available under the License, as indicated by a copyright notice that +is included in or attached to the work (an example is provided in the Appendix +below). + + + +"Derivative Works" shall mean any work, whether in Source or Object form, +that is based on (or derived from) the Work and for which the editorial revisions, +annotations, elaborations, or other modifications represent, as a whole, an +original work of authorship. For the purposes of this License, Derivative +Works shall not include works that remain separable from, or merely link (or +bind by name) to the interfaces of, the Work and Derivative Works thereof. + + + +"Contribution" shall mean any work of authorship, including the original version +of the Work and any modifications or additions to that Work or Derivative +Works thereof, that is intentionally submitted to Licensor for inclusion in +the Work by the copyright owner or by an individual or Legal Entity authorized +to submit on behalf of the copyright owner. For the purposes of this definition, +"submitted" means any form of electronic, verbal, or written communication +sent to the Licensor or its representatives, including but not limited to +communication on electronic mailing lists, source code control systems, and +issue tracking systems that are managed by, or on behalf of, the Licensor +for the purpose of discussing and improving the Work, but excluding communication +that is conspicuously marked or otherwise designated in writing by the copyright +owner as "Not a Contribution." + + + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf +of whom a Contribution has been received by Licensor and subsequently incorporated +within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of this +License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, +no-charge, royalty-free, irrevocable copyright license to reproduce, prepare +Derivative Works of, publicly display, publicly perform, sublicense, and distribute +the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of this License, +each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, +no-charge, royalty-free, irrevocable (except as stated in this section) patent +license to make, have made, use, offer to sell, sell, import, and otherwise +transfer the Work, where such license applies only to those patent claims +licensable by such Contributor that are necessarily infringed by their Contribution(s) +alone or by combination of their Contribution(s) with the Work to which such +Contribution(s) was submitted. If You institute patent litigation against +any entity (including a cross-claim or counterclaim in a lawsuit) alleging +that the Work or a Contribution incorporated within the Work constitutes direct +or contributory patent infringement, then any patent licenses granted to You +under this License for that Work shall terminate as of the date such litigation +is filed. + +4. Redistribution. You may reproduce and distribute copies of the Work or +Derivative Works thereof in any medium, with or without modifications, and +in Source or Object form, provided that You meet the following conditions: + +(a) You must give any other recipients of the Work or Derivative Works a copy +of this License; and + +(b) You must cause any modified files to carry prominent notices stating that +You changed the files; and + +(c) You must retain, in the Source form of any Derivative Works that You distribute, +all copyright, patent, trademark, and attribution notices from the Source +form of the Work, excluding those notices that do not pertain to any part +of the Derivative Works; and + +(d) If the Work includes a "NOTICE" text file as part of its distribution, +then any Derivative Works that You distribute must include a readable copy +of the attribution notices contained within such NOTICE file, excluding those +notices that do not pertain to any part of the Derivative Works, in at least +one of the following places: within a NOTICE text file distributed as part +of the Derivative Works; within the Source form or documentation, if provided +along with the Derivative Works; or, within a display generated by the Derivative +Works, if and wherever such third-party notices normally appear. The contents +of the NOTICE file are for informational purposes only and do not modify the +License. You may add Your own attribution notices within Derivative Works +that You distribute, alongside or as an addendum to the NOTICE text from the +Work, provided that such additional attribution notices cannot be construed +as modifying the License. + +You may add Your own copyright statement to Your modifications and may provide +additional or different license terms and conditions for use, reproduction, +or distribution of Your modifications, or for any such Derivative Works as +a whole, provided Your use, reproduction, and distribution of the Work otherwise +complies with the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, any +Contribution intentionally submitted for inclusion in the Work by You to the +Licensor shall be under the terms and conditions of this License, without +any additional terms or conditions. Notwithstanding the above, nothing herein +shall supersede or modify the terms of any separate license agreement you +may have executed with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade names, +trademarks, service marks, or product names of the Licensor, except as required +for reasonable and customary use in describing the origin of the Work and +reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or agreed to +in writing, Licensor provides the Work (and each Contributor provides its +Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied, including, without limitation, any warranties +or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR +A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness +of using or redistributing the Work and assume any risks associated with Your +exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, whether +in tort (including negligence), contract, or otherwise, unless required by +applicable law (such as deliberate and grossly negligent acts) or agreed to +in writing, shall any Contributor be liable to You for damages, including +any direct, indirect, special, incidental, or consequential damages of any +character arising as a result of this License or out of the use or inability +to use the Work (including but not limited to damages for loss of goodwill, +work stoppage, computer failure or malfunction, or any and all other commercial +damages or losses), even if such Contributor has been advised of the possibility +of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing the Work +or Derivative Works thereof, You may choose to offer, and charge a fee for, +acceptance of support, warranty, indemnity, or other liability obligations +and/or rights consistent with this License. However, in accepting such obligations, +You may act only on Your own behalf and on Your sole responsibility, not on +behalf of any other Contributor, and only if You agree to indemnify, defend, +and hold each Contributor harmless for any liability incurred by, or claims +asserted against, such Contributor by reason of your accepting any such warranty +or additional liability. END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate +notice, with the fields enclosed by brackets "[]" replaced with your own identifying +information. (Don't include the brackets!) The text should be enclosed in +the appropriate comment syntax for the file format. We also recommend that +a file or class name and description of purpose be included on the same "printed +page" as the copyright notice for easier identification within third-party +archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed 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. diff --git a/packages/project/NOTICE.txt b/packages/project/NOTICE.txt deleted file mode 100644 index efa95dd4cbf..00000000000 --- a/packages/project/NOTICE.txt +++ /dev/null @@ -1 +0,0 @@ -Copyright (c) 2018-2019 SAP SE or an SAP affiliate company. All rights reserved. diff --git a/packages/project/README.md b/packages/project/README.md index f160b485740..8a93596f0e0 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -21,6 +21,3 @@ Please follow our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/b ## Release History See [CHANGELOG.md](CHANGELOG.md). - -## License -This project is licensed under the Apache Software License, Version 2.0 except as noted otherwise in the [LICENSE](/LICENSE.txt) file. diff --git a/packages/project/package.json b/packages/project/package.json index d0ed90f57af..5548a22f15e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -42,7 +42,9 @@ "index.js", "CONTRIBUTING.md", "jsdoc.json", - "lib/**" + "lib/**", + "LICENSES/**", + ".reuse/**" ], "ava": { "files": [ From ca9f67cf3f56bb4c700f169f86aa08b6a05917be Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 7 Aug 2020 14:30:09 +0200 Subject: [PATCH 0407/1272] [ui5-project][INTERNAL] Add GitHub Action 'REUSE Compliance Check' --- .../project/.github/workflows/reuse-compliance.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 packages/project/.github/workflows/reuse-compliance.yml diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml new file mode 100644 index 00000000000..082f4438b3d --- /dev/null +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -0,0 +1,11 @@ +name: REUSE Compliance Check + +on: [push, pull_request] + +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: REUSE Compliance Check + uses: fsfe/reuse-action@v1.1 From 5330776781086919bf4b20bf950c76a6cb33d278 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 18 Aug 2020 12:17:58 +0200 Subject: [PATCH 0408/1272] [ui5-project][INTERNAL] Add REUSE compliance badge --- packages/project/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/project/README.md b/packages/project/README.md index 8a93596f0e0..38161b44c72 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -4,6 +4,7 @@ > Modules for building a projects dependency tree, including UI5 specific configuration. > Part of the [UI5 Tooling](https://github.com/SAP/ui5-tooling) +[![REUSE status](https://api.reuse.software/badge/github.com/SAP/ui5-project)](https://api.reuse.software/info/github.com/SAP/ui5-project) [![Build Status](https://dev.azure.com/sap/opensource/_apis/build/status/SAP.ui5-project?branchName=master)](https://dev.azure.com/sap/opensource/_build/latest?definitionId=35&branchName=master) [![npm Package Version](https://badge.fury.io/js/%40ui5%2Fproject.svg)](https://www.npmjs.com/package/@ui5/project) [![Coverage Status](https://coveralls.io/repos/github/SAP/ui5-project/badge.svg)](https://coveralls.io/github/SAP/ui5-project) From d32ee38f658d0859df830036963731bc6764505f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 26 Aug 2020 10:42:12 +0000 Subject: [PATCH 0409/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 282 +++++++++++++---------------- packages/project/package.json | 6 +- 2 files changed, 129 insertions(+), 159 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6acd1d0c525..af3f6a0b4f1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,16 +13,16 @@ } }, "@babel/core": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", - "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", + "version": "7.11.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.4.tgz", + "integrity": "sha512-5deljj5HlqRXN+5oJTY7Zs37iH3z3b++KjiKtIsJy1NrjOOVSEaJHEetLBhyu0aQOSNNZ/0IuEAan9GzRuDXHg==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", + "@babel/generator": "^7.11.4", "@babel/helper-module-transforms": "^7.11.0", "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.11.1", + "@babel/parser": "^7.11.4", "@babel/template": "^7.10.4", "@babel/traverse": "^7.11.0", "@babel/types": "^7.11.0", @@ -66,9 +66,9 @@ } }, "@babel/generator": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.0.tgz", - "integrity": "sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ==", + "version": "7.11.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.4.tgz", + "integrity": "sha512-Rn26vueFx0eOoz7iifCN2UHT6rGtnkSGWSoDRIy8jZN3B91PzeSULbswfLoOWuTuAcNwpG/mxy+uCTDnZ9Mp1g==", "dev": true, "requires": { "@babel/types": "^7.11.0", @@ -255,9 +255,9 @@ } }, "@babel/parser": { - "version": "7.11.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.3.tgz", - "integrity": "sha512-REo8xv7+sDxkKvoxEywIdsNFiZLybwdI7hcT5uEPyQrSMB4YQ973BfC9OOrD/81MaIjh6UxdulIQXkjmiH3PcA==" + "version": "7.11.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.4.tgz", + "integrity": "sha512-MggwidiH+E9j5Sh8pbrX5sJvMcsqS5o+7iB42M9/k0CD63MjYbdP4nhSh7uB5wnv2/RVzTZFTxzF/kIa5mrCqA==" }, "@babel/template": { "version": "7.10.4", @@ -516,9 +516,9 @@ "dev": true }, "@types/node": { - "version": "14.0.27", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.27.tgz", - "integrity": "sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==", + "version": "14.6.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.6.0.tgz", + "integrity": "sha512-mikldZQitV94akrc4sCcSjtJfsTKt4p+e/s0AGscVA6XArQ9kFclP+ZiYUMnq987rc6QlYxXv/EivqlfSLxpKA==", "dev": true }, "@types/normalize-package-data": { @@ -635,9 +635,9 @@ } }, "acorn": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", - "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.1.tgz", + "integrity": "sha512-dmKn4pqZ29iQl2Pvze1zTrps2luvls2PBY//neO2WJ0s10B3AxJXshN+Ph7B4GrhfGhHXrl4dnUwyNNXQcnWGQ==", "dev": true }, "acorn-jsx": { @@ -647,9 +647,9 @@ "dev": true }, "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.0.0.tgz", + "integrity": "sha512-oZRad/3SMOI/pxbbmqyurIx7jHw1wZDcR9G44L8pUVFEomX/0dH89SrM1KaDXuv1NpzAXz6Op/Xu/Qd5XXzdEA==", "dev": true }, "agent-base": { @@ -669,9 +669,9 @@ } }, "aggregate-error": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", - "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "dev": true, "requires": { "clean-stack": "^2.0.0", @@ -881,20 +881,20 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.11.1.tgz", - "integrity": "sha512-yGPD0msa5Qronw7GHDNlLaB7oU5zryYtXeuvny40YV6TMskSghqK7Ky3NisM/sr+aqI3DY7sfmORx8dIWQgMoQ==", + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.12.1.tgz", + "integrity": "sha512-cS41+X+UfrcPed+CIgne/YV/6eWxaUjHEPH+W8WvNSqWTWku5YitjZGE5cMHFuJxwHELdR541xTBRn8Uwi4PSw==", "dev": true, "requires": { "@concordance/react": "^2.0.0", - "acorn": "^7.3.1", - "acorn-walk": "^7.2.0", + "acorn": "^8.0.1", + "acorn-walk": "^8.0.0", "ansi-styles": "^4.2.1", "arrgv": "^1.0.2", "arrify": "^2.0.1", "callsites": "^3.1.0", "chalk": "^4.1.0", - "chokidar": "^3.4.1", + "chokidar": "^3.4.2", "chunkd": "^2.0.1", "ci-info": "^2.0.0", "ci-parallel-vars": "^1.0.1", @@ -903,7 +903,7 @@ "cli-truncate": "^2.1.0", "code-excerpt": "^3.0.0", "common-path-prefix": "^3.0.0", - "concordance": "^5.0.0", + "concordance": "^5.0.1", "convert-source-map": "^1.7.0", "currently-unhandled": "^0.4.1", "debug": "^4.1.1", @@ -918,12 +918,12 @@ "is-error": "^2.2.2", "is-plain-object": "^4.1.1", "is-promise": "^4.0.0", - "lodash": "^4.17.19", + "lodash": "^4.17.20", "matcher": "^3.0.0", "md5-hex": "^3.0.1", "mem": "^6.1.0", "ms": "^2.1.2", - "ora": "^4.0.5", + "ora": "^5.0.0", "p-map": "^4.0.0", "picomatch": "^2.2.2", "pkg-conf": "^3.1.0", @@ -938,7 +938,7 @@ "supertap": "^1.0.0", "temp-dir": "^2.0.0", "trim-off-newlines": "^1.0.1", - "update-notifier": "^4.1.0", + "update-notifier": "^4.1.1", "write-file-atomic": "^3.0.3", "yargs": "^15.4.1" }, @@ -1729,9 +1729,9 @@ } }, "concordance": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.0.tgz", - "integrity": "sha512-stOCz9ffg0+rytwTaL2njUOIyMfANwfwmqc9Dr4vTUS/x/KkVFlWx9Zlzu6tHYtjKxxaCF/cEAZgPDac+n35sg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.1.tgz", + "integrity": "sha512-TbNtInKVElgEBnJ1v2Xg+MFX2lvFLbmlv3EuSC5wTfCwpB8kC3w3mffF6cKuUhkn475Ym1f1I4qmuXzx2+uXpw==", "dev": true, "requires": { "date-time": "^3.1.0", @@ -2724,15 +2724,15 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.2.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.2.2.tgz", - "integrity": "sha512-588zVyRy+g7s8VU3D0AL75r7xBYN0UX6tZEwP5EQ4JvpVavwu2iPJRaBxwuG3QAj99WZkUBlrLU16p4qST6vSw==", + "version": "30.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.3.0.tgz", + "integrity": "sha512-RvDLH26ILwX2J60P7tlNdz5IlTFeC52TEFgAC12+nz/lOx4a7n3/hP8fBPFZrQP07WA1t9ZOO8H/i7cEs2BTnA==", "dev": true, "requires": { - "comment-parser": "^0.7.5", + "comment-parser": "^0.7.6", "debug": "^4.1.1", "jsdoctypeparser": "^9.0.0", - "lodash": "^4.17.19", + "lodash": "^4.17.20", "regextras": "^0.7.1", "semver": "^7.3.2", "spdx-expression-parse": "^3.0.1" @@ -2789,14 +2789,22 @@ "dev": true }, "espree": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.2.0.tgz", - "integrity": "sha512-H+cQ3+3JYRMEIOl87e7QdHX70ocly5iW4+dttuR8iYSPr/hXKFb+7dBsZ7+u1adC4VrnPlTkv0+OwuPnDop19g==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.0.tgz", + "integrity": "sha512-dksIWsvKCixn1yrEXO8UosNSxaDoSYpq9reEjZSbHLpT5hpaCAKTLBwq0RHtLrIr+c0ByiYzWT8KTMRzoRCNlw==", "dev": true, "requires": { - "acorn": "^7.3.1", + "acorn": "^7.4.0", "acorn-jsx": "^5.2.0", "eslint-visitor-keys": "^1.3.0" + }, + "dependencies": { + "acorn": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", + "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", + "dev": true + } } }, "esprima": { @@ -2853,9 +2861,9 @@ } }, "eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.6.tgz", + "integrity": "sha512-s3GJL04SQoM+gn2c14oyqxvZ3Pcq7cduSDqy3sBFXx6UPSUmgVYwQM9zwkTn9je0lrfg0gHEwR42pF3Q2dCQkQ==" }, "events-to-array": { "version": "1.1.2", @@ -2916,9 +2924,9 @@ }, "dependencies": { "type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", - "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.1.0.tgz", + "integrity": "sha512-G9absDWvhAWCV2gmF1zKud3OyC61nZDwWvBL2DApaVFogI07CprggiQAOOjvp2NRjYWFzPyu7vwtDrQFq8jeSA==" } } }, @@ -3783,6 +3791,11 @@ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true }, + "is-negative-zero": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.0.tgz", + "integrity": "sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE=" + }, "is-npm": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", @@ -4012,16 +4025,16 @@ } }, "js-beautify": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.12.0.tgz", - "integrity": "sha512-hZCm93+sWHqrsB2ac38cPX4A9t6mfReq13ZUr/0dk6rCXNLIq0R4lu0EiuJc0Ip6RiWNtE0vECjXOhcy/jMt9Q==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.0.tgz", + "integrity": "sha512-/Tbp1OVzZjbwzwJQFIlYLm9eWQ+3aYbBXLSaqb1mEJzhcQAfrqMMQYtjb6io+U6KpD0ID4F+Id3/xcjH3l/sqA==", "dev": true, "requires": { "config-chain": "^1.1.12", "editorconfig": "^0.15.3", "glob": "^7.1.3", "mkdirp": "^1.0.4", - "nopt": "^4.0.3" + "nopt": "^5.0.0" } }, "js-string-escape": { @@ -4108,6 +4121,11 @@ "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, + "json-parse-even-better-errors": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.0.tgz", + "integrity": "sha512-o3aP+RsWDJZayj1SbHNQAI8x0v3T3SKiGoZlNYfbUP1S3omJQ6i9CnqADqkSPaOAxwua4/1YWx5CM7oiChJt2Q==" + }, "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", @@ -4391,70 +4409,12 @@ "dev": true }, "log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", "dev": true, "requires": { - "chalk": "^2.4.2" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "chalk": "^4.0.0" } }, "lowercase-keys": { @@ -4874,13 +4834,12 @@ } }, "nopt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", - "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "dev": true, "requires": { - "abbrev": "1", - "osenv": "^0.1.4" + "abbrev": "1" } }, "normalize-package-data": { @@ -4974,9 +4933,9 @@ } }, "npm-registry-fetch": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.6.tgz", - "integrity": "sha512-SEp9m7fPe8FIKzhg2JS+xs+w4YY9mEwRlMcEZRELph7rdoygIQGY6B+g0+wdZqokHE8f57ZkexxYWqFO0FkfCw==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.7.tgz", + "integrity": "sha512-cny9v0+Mq6Tjz+e0erFAB+RYJ/AVGzkjnISiobqP8OWj9c9FLoZZu8/SPSKJWE17F1tk4018wfjV+ZbIbqC7fQ==", "requires": { "JSONStream": "^1.3.4", "bluebird": "^3.5.1", @@ -5165,9 +5124,9 @@ } }, "open": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-7.1.0.tgz", - "integrity": "sha512-lLPI5KgOwEYCDKXf4np7y1PBEkj7HYIyP2DY8mVDRnx0VIIu6bNrRB0R66TuO7Mack6EnTNLm4uvcl1UoklTpA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/open/-/open-7.2.0.tgz", + "integrity": "sha512-4HeyhxCvBTI5uBePsAdi55C5fmqnWZ2e2MlmvWi5KW5tdH5rxoiv/aMtbeVxKZc3eWkT1GymMnLG8XC4Rq4TDQ==", "dev": true, "requires": { "is-docker": "^2.0.0", @@ -5201,16 +5160,16 @@ } }, "ora": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", - "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.0.0.tgz", + "integrity": "sha512-s26qdWqke2kjN/wC4dy+IQPBIMWBJlSU/0JZhk30ZDBLelW25rv66yutUWARMigpGPzcXHb+Nac5pNhN/WsARw==", "dev": true, "requires": { - "chalk": "^3.0.0", + "chalk": "^4.1.0", "cli-cursor": "^3.1.0", - "cli-spinners": "^2.2.0", + "cli-spinners": "^2.4.0", "is-interactive": "^1.0.0", - "log-symbols": "^3.0.0", + "log-symbols": "^4.0.0", "mute-stream": "0.0.8", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" @@ -5222,16 +5181,6 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -5416,13 +5365,13 @@ } }, "parse-json": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.1.tgz", - "integrity": "sha512-ztoZ4/DYeXQq4E21v169sC8qWINGpcosGv9XhTDvg9/hWvx/zrFkc9BiWxR58OJLHGk28j5BL0SDLeV2WmFZlQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", + "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", "requires": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1", + "json-parse-even-better-errors": "^2.3.0", "lines-and-columns": "^1.1.6" } }, @@ -6202,12 +6151,33 @@ "dev": true }, "side-channel": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.2.tgz", - "integrity": "sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.3.tgz", + "integrity": "sha512-A6+ByhlLkksFoUepsGxfj5x1gTSrs+OydsRptUxeNCabQpCFUvcwIczgOigI8vhY/OJCnPnyE9rGiwgvr9cS1g==", "requires": { - "es-abstract": "^1.17.0-next.1", - "object-inspect": "^1.7.0" + "es-abstract": "^1.18.0-next.0", + "object-inspect": "^1.8.0" + }, + "dependencies": { + "es-abstract": { + "version": "1.18.0-next.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.0.tgz", + "integrity": "sha512-elZXTZXKn51hUBdJjSZGYRujuzilgXo8vSPQzjGYXLvSlGiCo8VO8ZGV3kjo9a0WNJJ57hENagwbtlRuHuzkcQ==", + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-negative-zero": "^2.0.0", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "sigmund": { @@ -7119,9 +7089,9 @@ "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, "update-notifier": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.0.tgz", - "integrity": "sha512-w3doE1qtI0/ZmgeoDoARmI5fjDoT93IfKgEGqm26dGUOh8oNpaSTsGNdYRN/SjOuo10jcJGwkEL3mroKzktkew==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.1.tgz", + "integrity": "sha512-9y+Kds0+LoLG6yN802wVXoIfxYEwh3FlZwzMwpCZp62S2i1/Jzeqb9Eeeju3NSHccGGasfGlK5/vEHbAifYRDg==", "dev": true, "requires": { "boxen": "^4.2.0", diff --git a/packages/project/package.json b/packages/project/package.json index 5548a22f15e..0cb5726317e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,19 +118,19 @@ "string.prototype.matchall": "^4.0.2" }, "devDependencies": { - "ava": "^3.11.1", + "ava": "^3.12.1", "chokidar-cli": "^2.1.0", "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", "eslint": "^7.7.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.2.2", + "eslint-plugin-jsdoc": "^30.3.0", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", - "js-beautify": "^1.12.0", + "js-beautify": "^1.13.0", "jsdoc": "^3.6.5", "mock-require": "^3.0.3", "nyc": "^15.1.0", From 68cf524f4c651732e7d377afad2001b0d8930bb0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 30 Aug 2020 02:20:53 +0000 Subject: [PATCH 0410/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 36 +++++++++++++++--------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index af3f6a0b4f1..fa083128f7b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -516,9 +516,9 @@ "dev": true }, "@types/node": { - "version": "14.6.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.6.0.tgz", - "integrity": "sha512-mikldZQitV94akrc4sCcSjtJfsTKt4p+e/s0AGscVA6XArQ9kFclP+ZiYUMnq987rc6QlYxXv/EivqlfSLxpKA==", + "version": "14.6.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.6.2.tgz", + "integrity": "sha512-onlIwbaeqvZyniGPfdw/TEhKIh79pz66L1q06WUQqJLnAb6wbjvOtepLYTGHTqzdXgBYIE3ZdmqHDGsRsbBz7A==", "dev": true }, "@types/normalize-package-data": { @@ -2861,9 +2861,9 @@ } }, "eventemitter3": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.6.tgz", - "integrity": "sha512-s3GJL04SQoM+gn2c14oyqxvZ3Pcq7cduSDqy3sBFXx6UPSUmgVYwQM9zwkTn9je0lrfg0gHEwR42pF3Q2dCQkQ==" + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" }, "events-to-array": { "version": "1.1.2", @@ -4537,9 +4537,9 @@ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, "mem": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-6.1.0.tgz", - "integrity": "sha512-RlbnLQgRHk5lwqTtpEkBTQ2ll/CG/iB+J4Hy2Wh97PjgZgXgWJWrFF+XXujh3UUVLvR4OOTgZzcWMMwnehlEUg==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/mem/-/mem-6.1.1.tgz", + "integrity": "sha512-Ci6bIfq/UgcxPTYa8dQQ5FY3BzKkT894bwXWXxC/zqs0XgMO2cT20CGkOqda7gZNkmK5VP4x89IGZ6K7hfbn3Q==", "dev": true, "requires": { "map-age-cleaner": "^0.1.3", @@ -5124,9 +5124,9 @@ } }, "open": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/open/-/open-7.2.0.tgz", - "integrity": "sha512-4HeyhxCvBTI5uBePsAdi55C5fmqnWZ2e2MlmvWi5KW5tdH5rxoiv/aMtbeVxKZc3eWkT1GymMnLG8XC4Rq4TDQ==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/open/-/open-7.2.1.tgz", + "integrity": "sha512-xbYCJib4spUdmcs0g/2mK1nKo/jO2T7INClWd/beL7PFkXRWgr8B23ssDHX/USPn2M2IjDR5UdpYs6I67SnTSA==", "dev": true, "requires": { "is-docker": "^2.0.0", @@ -6608,9 +6608,9 @@ } }, "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "requires": { "has-flag": "^4.0.0" } @@ -7122,9 +7122,9 @@ } }, "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.3.0.tgz", + "integrity": "sha512-Q9Q9RlMM08eWfdPPmDDrXd8Ny3R1sY/DaRDR2zTPPneJ6GYiLx3++fPiZobv49ovkYAnHl/P72Ie3HWXIRVVYA==", "requires": { "punycode": "^2.1.0" } From cb8f91d898003469e265069d715efaa1860a6522 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 31 Aug 2020 13:01:23 +0200 Subject: [PATCH 0411/1272] [ui5-project][INTERNAL] test/lib/translators/npm.js -> test/lib/translators/npm.integration.js --- .../project/test/lib/translators/{npm.js => npm.integration.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename packages/project/test/lib/translators/{npm.js => npm.integration.js} (100%) diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.integration.js similarity index 100% rename from packages/project/test/lib/translators/npm.js rename to packages/project/test/lib/translators/npm.integration.js From 90bdaf3f62195b04204ac75e5f3dce78695e6d9b Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 31 Aug 2020 13:24:13 +0200 Subject: [PATCH 0412/1272] [ui5-project][INTERNAL] npm translator: Improve detection of collection projects A collection must have an object property "collection" with a nested object "modules" in its package.json. Other types or structures should be ignored and the project should not be handled as collection. This might happen when other projects define a "collection" property that is meant to be used for a different purpose (e.g. https://stenciljs.com/docs/publishing#package-json). --- packages/project/lib/translators/npm.js | 10 +- packages/project/test/lib/translators/npm.js | 128 +++++++++++++++++++ 2 files changed, 136 insertions(+), 2 deletions(-) create mode 100644 packages/project/test/lib/translators/npm.js diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js index 2d27750da7e..7cb11556c83 100644 --- a/packages/project/lib/translators/npm.js +++ b/packages/project/lib/translators/npm.js @@ -82,7 +82,8 @@ class NpmTranslator { on projects. Although we could add the collections dependencies as project dependencies to the related modules */ - if (!pkg.collection) { + const isCollection = typeof pkg.collection === "object" && typeof pkg.collection.modules === "object"; + if (!isCollection) { if (log.isLevelEnabled("silly")) { this.debugUnresolvedProjects[cwd] = { moduleName @@ -134,7 +135,7 @@ class NpmTranslator { }); } else { // collection log.verbose("Found a collection: %s", moduleName); - const modules = pkg.collection && pkg.collection.modules || {}; + const modules = pkg.collection.modules; return Promise.all( Object.keys(modules).map((depName) => { const modulePath = path.join(cwd, modules[depName]); @@ -515,3 +516,8 @@ module.exports = { return new NpmTranslator(options).generateDependencyTree(dirPath); } }; + +// Export NpmTranslator class for testing only +if (process.env.NODE_ENV === "test") { + module.exports._NpmTranslator = NpmTranslator; +} diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js new file mode 100644 index 00000000000..c7fe9a454f5 --- /dev/null +++ b/packages/project/test/lib/translators/npm.js @@ -0,0 +1,128 @@ +const test = require("ava"); +const sinon = require("sinon"); +const path = require("path"); + +const NpmTranslator = require("../../../lib/translators/npm")._NpmTranslator; + +test.afterEach.always((t) => { + sinon.restore(); +}); + +test.serial("processPkg - single package", async (t) => { + const npmTranslator = new NpmTranslator({ + includeDeduped: false + }); + const result = await npmTranslator.processPkg({ + path: path.join("/", "sample-package"), + name: "sample-package", + pkg: { + version: "1.2.3" + } + }, ":parent:"); + t.deepEqual(result, [{ + dependencies: [], + id: "sample-package", + path: path.join("/", "sample-package"), + version: "1.2.3" + }]); +}); + +test.serial("processPkg - collection", async (t) => { + const npmTranslator = new NpmTranslator({ + includeDeduped: false + }); + + const readProjectStub = sinon.stub(npmTranslator, "readProject").resolves({ + dependencies: [], + id: "other-package", + path: path.join("/", "sample-package", "packages", "other-package"), + version: "4.5.6" + }); + + const result = await npmTranslator.processPkg({ + path: path.join("/", "sample-package"), + name: "sample-package", + pkg: { + version: "1.2.3", + collection: { + modules: { + "other-package": "./packages/other-package" + } + } + } + }, ":parent:"); + + t.deepEqual(result, [{ + dependencies: [], + id: "other-package", + path: path.join("/", "sample-package", "packages", "other-package"), + version: "4.5.6" + }]); + + t.is(readProjectStub.callCount, 1, "readProject should be called once"); + t.deepEqual(readProjectStub.getCall(0).args, [ + { + moduleName: "other-package", + modulePath: path.join("/", "sample-package", "packages", "other-package"), + parentPath: ":parent:sample-package:", + }, + ], "readProject should be called with the expected args"); +}); + +test.serial("processPkg - pkg.collection (type string)", async (t) => { + const npmTranslator = new NpmTranslator({ + includeDeduped: false + }); + + const readProjectStub = sinon.stub(npmTranslator, "readProject").resolves(null); + + const result = await npmTranslator.processPkg({ + path: path.join("/", "sample-package"), + name: "sample-package", + pkg: { + version: "1.2.3", + + // collection of type string should not be detected as UI5 collection + collection: "foo" + } + }, ":parent:"); + + t.deepEqual(result, [{ + dependencies: [], + id: "sample-package", + path: path.join("/", "sample-package"), + version: "1.2.3" + }]); + + t.is(readProjectStub.callCount, 0, "readProject should not be called once"); +}); + +test.serial("processPkg - pkg.collection (without modules)", async (t) => { + const npmTranslator = new NpmTranslator({ + includeDeduped: false + }); + + const readProjectStub = sinon.stub(npmTranslator, "readProject").resolves(null); + + const result = await npmTranslator.processPkg({ + path: path.join("/", "sample-package"), + name: "sample-package", + pkg: { + version: "1.2.3", + + // collection without modules object should not be detected as UI5 collection + collection: { + modules: true + } + } + }, ":parent:"); + + t.deepEqual(result, [{ + dependencies: [], + id: "sample-package", + path: path.join("/", "sample-package"), + version: "1.2.3" + }]); + + t.is(readProjectStub.callCount, 0, "readProject should not be called once"); +}); From 60e3e92d0b0db73db04fc5c1d584d662a22d98b4 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 2 Sep 2020 10:33:26 +0200 Subject: [PATCH 0413/1272] [ui5-project][INTERNAL] Fix missing peerDependency to acorn / Add CI check Due to a bug in npm, acorn-jsx can't find the correct version of acorn. Downgrading to ava@3.11 solves the issue as only one acorn version (v7) is present. Also adding an 'npm ls' check to detect such issues before they get merged into master. --- packages/project/azure-pipelines.yml | 3 + packages/project/package-lock.json | 126 +++++++++++++++++++++------ packages/project/package.json | 2 +- 3 files changed, 101 insertions(+), 30 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 4df1e78b061..fd9cd9987c1 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -36,6 +36,9 @@ steps: - script: npm ci displayName: Install Dependencies +- script: npm ls + displayName: Check for missing / extraneous Dependencies + - script: npm run test-azure displayName: Run Tests diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fa083128f7b..63a3d8cff5a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -635,9 +635,9 @@ } }, "acorn": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.1.tgz", - "integrity": "sha512-dmKn4pqZ29iQl2Pvze1zTrps2luvls2PBY//neO2WJ0s10B3AxJXshN+Ph7B4GrhfGhHXrl4dnUwyNNXQcnWGQ==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", + "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", "dev": true }, "acorn-jsx": { @@ -647,9 +647,9 @@ "dev": true }, "acorn-walk": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.0.0.tgz", - "integrity": "sha512-oZRad/3SMOI/pxbbmqyurIx7jHw1wZDcR9G44L8pUVFEomX/0dH89SrM1KaDXuv1NpzAXz6Op/Xu/Qd5XXzdEA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", "dev": true }, "agent-base": { @@ -881,20 +881,20 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.12.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.12.1.tgz", - "integrity": "sha512-cS41+X+UfrcPed+CIgne/YV/6eWxaUjHEPH+W8WvNSqWTWku5YitjZGE5cMHFuJxwHELdR541xTBRn8Uwi4PSw==", + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.11.1.tgz", + "integrity": "sha512-yGPD0msa5Qronw7GHDNlLaB7oU5zryYtXeuvny40YV6TMskSghqK7Ky3NisM/sr+aqI3DY7sfmORx8dIWQgMoQ==", "dev": true, "requires": { "@concordance/react": "^2.0.0", - "acorn": "^8.0.1", - "acorn-walk": "^8.0.0", + "acorn": "^7.3.1", + "acorn-walk": "^7.2.0", "ansi-styles": "^4.2.1", "arrgv": "^1.0.2", "arrify": "^2.0.1", "callsites": "^3.1.0", "chalk": "^4.1.0", - "chokidar": "^3.4.2", + "chokidar": "^3.4.1", "chunkd": "^2.0.1", "ci-info": "^2.0.0", "ci-parallel-vars": "^1.0.1", @@ -903,7 +903,7 @@ "cli-truncate": "^2.1.0", "code-excerpt": "^3.0.0", "common-path-prefix": "^3.0.0", - "concordance": "^5.0.1", + "concordance": "^5.0.0", "convert-source-map": "^1.7.0", "currently-unhandled": "^0.4.1", "debug": "^4.1.1", @@ -918,12 +918,12 @@ "is-error": "^2.2.2", "is-plain-object": "^4.1.1", "is-promise": "^4.0.0", - "lodash": "^4.17.20", + "lodash": "^4.17.19", "matcher": "^3.0.0", "md5-hex": "^3.0.1", "mem": "^6.1.0", "ms": "^2.1.2", - "ora": "^5.0.0", + "ora": "^4.0.5", "p-map": "^4.0.0", "picomatch": "^2.2.2", "pkg-conf": "^3.1.0", @@ -938,7 +938,7 @@ "supertap": "^1.0.0", "temp-dir": "^2.0.0", "trim-off-newlines": "^1.0.1", - "update-notifier": "^4.1.1", + "update-notifier": "^4.1.0", "write-file-atomic": "^3.0.3", "yargs": "^15.4.1" }, @@ -1497,9 +1497,9 @@ "dev": true }, "cli-boxes": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.0.tgz", - "integrity": "sha512-gpaBrMAizVEANOpfZp/EEUixTXDyGt7DFzdK5hU+UbWt/J0lB0w20ncZj59Z9a93xHb9u12zF5BS6i9RKbtg4w==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", "dev": true }, "cli-cursor": { @@ -4409,12 +4409,70 @@ "dev": true }, "log-symbols": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", - "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", "dev": true, "requires": { - "chalk": "^4.0.0" + "chalk": "^2.4.2" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, "lowercase-keys": { @@ -5160,16 +5218,16 @@ } }, "ora": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.0.0.tgz", - "integrity": "sha512-s26qdWqke2kjN/wC4dy+IQPBIMWBJlSU/0JZhk30ZDBLelW25rv66yutUWARMigpGPzcXHb+Nac5pNhN/WsARw==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", + "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", "dev": true, "requires": { - "chalk": "^4.1.0", + "chalk": "^3.0.0", "cli-cursor": "^3.1.0", - "cli-spinners": "^2.4.0", + "cli-spinners": "^2.2.0", "is-interactive": "^1.0.0", - "log-symbols": "^4.0.0", + "log-symbols": "^3.0.0", "mute-stream": "0.0.8", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" @@ -5181,6 +5239,16 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 0cb5726317e..30ad7c85d9e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,7 +118,7 @@ "string.prototype.matchall": "^4.0.2" }, "devDependencies": { - "ava": "^3.12.1", + "ava": "3.11.1", "chokidar-cli": "^2.1.0", "coveralls": "^3.1.0", "cross-env": "^7.0.2", From f38de80fd654712e134fead7e30fa07763cde745 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 2 Sep 2020 10:41:27 +0000 Subject: [PATCH 0414/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.1.0 to 2.2.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.2.0/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 63a3d8cff5a..671a5980c36 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -527,11 +527,11 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.1.0.tgz", - "integrity": "sha512-eOXYhL7BmhtEFU/mLKJWGGBxiy/0amJ5+lMjZN7yXdMc20aY5GtrJpYq2EDTZrp6xrj0b0E2yD34yxBaKYAbqg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.2.0.tgz", + "integrity": "sha512-EBFFPShP7jWYYG1qCcRG1uZj5nHXxZjxFI9/JRHSV1rjYH1tRQviC4CjP/RUtovJ4D9yOe6HcPRha9wH+kfkBg==", "requires": { - "@ui5/fs": "^2.0.2", + "@ui5/fs": "^2.0.3", "@ui5/logger": "^2.0.0", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", diff --git a/packages/project/package.json b/packages/project/package.json index 30ad7c85d9e..b5385fec4c3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -97,7 +97,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.1.0", + "@ui5/builder": "^2.2.0", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.2.2", "ajv": "^6.12.4", From 3747532b08c851ba2ead340f62710566e29e0fc7 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 2 Sep 2020 10:48:14 +0000 Subject: [PATCH 0415/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.2 to 2.2.3 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.3/CHANGELOG.md --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 671a5980c36..1edf9a25b8f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -582,12 +582,12 @@ } }, "@ui5/server": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.2.tgz", - "integrity": "sha512-cBvxdlSOIaHAfwAbSS6nCk+u21rVNFgkz+LteQkTN0r8ZByXVW3qE2rspC4eALpbiTHc7EuvRs5v+eEA3PksgQ==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.3.tgz", + "integrity": "sha512-itQamqrPWvwynQGGQWJNszC20YMwGAvQMxoWSGkUu8VvnQiKSRBCCPDVfY5nEAzQnUIdy2Czh3z6bcjIYt+n7Q==", "requires": { - "@ui5/builder": "^2.1.0", - "@ui5/fs": "^2.0.2", + "@ui5/builder": "^2.2.0", + "@ui5/fs": "^2.0.3", "@ui5/logger": "^2.0.0", "body-parser": "^1.19.0", "compression": "^1.7.4", diff --git a/packages/project/package.json b/packages/project/package.json index b5385fec4c3..2c2b1786d97 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -99,7 +99,7 @@ "dependencies": { "@ui5/builder": "^2.2.0", "@ui5/logger": "^2.0.0", - "@ui5/server": "^2.2.2", + "@ui5/server": "^2.2.3", "ajv": "^6.12.4", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From 6ef59854df9b674e3d5a569348192db928d8325d Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 2 Sep 2020 10:51:26 +0000 Subject: [PATCH 0416/1272] [ui5-project]Release 2.2.1 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index e7fe6e6e2c7..5117ea42100 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.1...HEAD). + + +## [v2.2.1] - 2020-09-02 ## [v2.2.0] - 2020-08-11 @@ -195,6 +198,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.2.1]: https://github.com/SAP/ui5-project/compare/v2.2.0...v2.2.1 [v2.2.0]: https://github.com/SAP/ui5-project/compare/v2.1.5...v2.2.0 [v2.1.5]: https://github.com/SAP/ui5-project/compare/v2.1.4...v2.1.5 [v2.1.4]: https://github.com/SAP/ui5-project/compare/v2.1.3...v2.1.4 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1edf9a25b8f..f7a61e5317f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.0", + "version": "2.2.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 2c2b1786d97..12b41f2a9b5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.0", + "version": "2.2.1", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From a4e5e619f58641250af52afc16ee2ce58cf278c7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 6 Sep 2020 02:21:50 +0000 Subject: [PATCH 0417/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 142 ++++++++++++++++++----------- packages/project/package.json | 4 +- 2 files changed, 90 insertions(+), 56 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f7a61e5317f..2c82f986ef2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,19 +13,19 @@ } }, "@babel/core": { - "version": "7.11.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.4.tgz", - "integrity": "sha512-5deljj5HlqRXN+5oJTY7Zs37iH3z3b++KjiKtIsJy1NrjOOVSEaJHEetLBhyu0aQOSNNZ/0IuEAan9GzRuDXHg==", + "version": "7.11.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.6.tgz", + "integrity": "sha512-Wpcv03AGnmkgm6uS6k8iwhIwTrcP0m17TL1n1sy7qD0qelDu4XNeW0dN0mHfa+Gei211yDaLoEe/VlbXQzM4Bg==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.4", + "@babel/generator": "^7.11.6", "@babel/helper-module-transforms": "^7.11.0", "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.11.4", + "@babel/parser": "^7.11.5", "@babel/template": "^7.10.4", - "@babel/traverse": "^7.11.0", - "@babel/types": "^7.11.0", + "@babel/traverse": "^7.11.5", + "@babel/types": "^7.11.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -66,12 +66,12 @@ } }, "@babel/generator": { - "version": "7.11.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.4.tgz", - "integrity": "sha512-Rn26vueFx0eOoz7iifCN2UHT6rGtnkSGWSoDRIy8jZN3B91PzeSULbswfLoOWuTuAcNwpG/mxy+uCTDnZ9Mp1g==", + "version": "7.11.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.6.tgz", + "integrity": "sha512-DWtQ1PV3r+cLbySoHrwn9RWEgKMBLLma4OBQloPRyDYvc5msJM9kvTLo1YnlJd1P/ZuKbdli3ijr5q3FvAF3uA==", "dev": true, "requires": { - "@babel/types": "^7.11.0", + "@babel/types": "^7.11.5", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -255,9 +255,9 @@ } }, "@babel/parser": { - "version": "7.11.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.4.tgz", - "integrity": "sha512-MggwidiH+E9j5Sh8pbrX5sJvMcsqS5o+7iB42M9/k0CD63MjYbdP4nhSh7uB5wnv2/RVzTZFTxzF/kIa5mrCqA==" + "version": "7.11.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.5.tgz", + "integrity": "sha512-X9rD8qqm695vgmeaQ4fvz/o3+Wk4ZzQvSHkDBgpYKxpD4qTAUm88ZKtHkVqIOsYFFbIQ6wQYhC6q7pjqVK0E0Q==" }, "@babel/template": { "version": "7.10.4", @@ -271,17 +271,17 @@ } }, "@babel/traverse": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.0.tgz", - "integrity": "sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg==", + "version": "7.11.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.5.tgz", + "integrity": "sha512-EjiPXt+r7LiCZXEfRpSJd+jUMnBd4/9OUv7Nx3+0u9+eimMwJmG0Q98lw4/289JCoxSE8OolDMNZaaF/JZ69WQ==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", + "@babel/generator": "^7.11.5", "@babel/helper-function-name": "^7.10.4", "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.11.0", - "@babel/types": "^7.11.0", + "@babel/parser": "^7.11.5", + "@babel/types": "^7.11.5", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" @@ -311,9 +311,9 @@ } }, "@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", + "version": "7.11.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.5.tgz", + "integrity": "sha512-bvM7Qz6eKnJVFIn+1LPtjlBFPVN5jNDc1XmN15vWe7Q3DPBufWWsLiIvUu7xW87uTG6QoggpIDnUgLQvPheU+Q==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.10.4", @@ -338,6 +338,47 @@ } } }, + "@eslint/eslintrc": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.1.3.tgz", + "integrity": "sha512-4YVwPkANLeNtRjMekzux1ci8hIaH5eGKktGqR0d3LWsKNn5B2X/1Z6Trxy7jQXl9EBGE6Yj02O+t09FMeRllaA==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, "@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -516,9 +557,9 @@ "dev": true }, "@types/node": { - "version": "14.6.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.6.2.tgz", - "integrity": "sha512-onlIwbaeqvZyniGPfdw/TEhKIh79pz66L1q06WUQqJLnAb6wbjvOtepLYTGHTqzdXgBYIE3ZdmqHDGsRsbBz7A==", + "version": "14.6.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.6.4.tgz", + "integrity": "sha512-Wk7nG1JSaMfMpoMJDKUsWYugliB2Vy55pdjLpmLixeyMi7HizW2I/9QoxsPCkXl3dO+ZOVqPumKaDUv5zJu2uQ==", "dev": true }, "@types/normalize-package-data": { @@ -2597,12 +2638,13 @@ } }, "eslint": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.7.0.tgz", - "integrity": "sha512-1KUxLzos0ZVsyL81PnRN335nDtQ8/vZUD6uMtWbF+5zDtjKcsklIi78XoE0MVL93QvWTu+E5y44VyyCsOMBrIg==", + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.8.1.tgz", + "integrity": "sha512-/2rX2pfhyUG0y+A123d0ccXtMm7DV7sH1m3lk9nk2DZ2LReq39FXHueR9xZwshE5MdfSf0xunSaMWRqyIA6M1w==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", + "@eslint/eslintrc": "^0.1.3", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2612,7 +2654,7 @@ "eslint-scope": "^5.1.0", "eslint-utils": "^2.1.0", "eslint-visitor-keys": "^1.3.0", - "espree": "^7.2.0", + "espree": "^7.3.0", "esquery": "^1.2.0", "esutils": "^2.0.2", "file-entry-cache": "^5.0.1", @@ -2724,9 +2766,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.3.0.tgz", - "integrity": "sha512-RvDLH26ILwX2J60P7tlNdz5IlTFeC52TEFgAC12+nz/lOx4a7n3/hP8fBPFZrQP07WA1t9ZOO8H/i7cEs2BTnA==", + "version": "30.3.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.3.2.tgz", + "integrity": "sha512-52p1xlKNm2Rodo51jUPIQ1ytKXH6Uj88mDJgmZ1znRKjynDQOO4ZS9cx5FqFoRXk/iqHv15QxHkQCBVeWViIog==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -2797,14 +2839,6 @@ "acorn": "^7.4.0", "acorn-jsx": "^5.2.0", "eslint-visitor-keys": "^1.3.0" - }, - "dependencies": { - "acorn": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", - "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", - "dev": true - } } }, "esprima": { @@ -2822,17 +2856,17 @@ } }, "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "requires": { - "estraverse": "^4.1.0" + "estraverse": "^5.2.0" }, "dependencies": { "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" } } }, @@ -4122,9 +4156,9 @@ "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, "json-parse-even-better-errors": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.0.tgz", - "integrity": "sha512-o3aP+RsWDJZayj1SbHNQAI8x0v3T3SKiGoZlNYfbUP1S3omJQ6i9CnqADqkSPaOAxwua4/1YWx5CM7oiChJt2Q==" + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" }, "json-schema": { "version": "0.2.3", @@ -7190,9 +7224,9 @@ } }, "uri-js": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.3.0.tgz", - "integrity": "sha512-Q9Q9RlMM08eWfdPPmDDrXd8Ny3R1sY/DaRDR2zTPPneJ6GYiLx3++fPiZobv49ovkYAnHl/P72Ie3HWXIRVVYA==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz", + "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==", "requires": { "punycode": "^2.1.0" } diff --git a/packages/project/package.json b/packages/project/package.json index 12b41f2a9b5..63e1998eefa 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -123,9 +123,9 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^7.7.0", + "eslint": "^7.8.1", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.3.0", + "eslint-plugin-jsdoc": "^30.3.2", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From bde6fc59e7b8335179484de4ac3545fbb7809586 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 10 Sep 2020 14:27:52 +0000 Subject: [PATCH 0418/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.3 to 2.2.4 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.4/CHANGELOG.md --- packages/project/package-lock.json | 38 ++++++++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2c82f986ef2..bea6b185bb4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -623,16 +623,16 @@ } }, "@ui5/server": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.3.tgz", - "integrity": "sha512-itQamqrPWvwynQGGQWJNszC20YMwGAvQMxoWSGkUu8VvnQiKSRBCCPDVfY5nEAzQnUIdy2Czh3z6bcjIYt+n7Q==", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.4.tgz", + "integrity": "sha512-x/Yt4usrX6baDT+B+CMWg0Ev+BXJo3wtj3WcvZSGvSaGQ7AKkuK/xDC8me+lpgmzpo7dxZZ2lFHW/DKb8WAokA==", "requires": { "@ui5/builder": "^2.2.0", "@ui5/fs": "^2.0.3", "@ui5/logger": "^2.0.0", "body-parser": "^1.19.0", "compression": "^1.7.4", - "connect-openui5": "^0.9.0", + "connect-openui5": "^0.9.1", "cors": "^2.8.5", "devcert-sanscache": "^0.4.8", "escape-html": "^1.0.3", @@ -1810,15 +1810,17 @@ } }, "connect-openui5": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.9.0.tgz", - "integrity": "sha512-mUjS8GqwF3XFBqRw6Ow4CQiN4ZJUL4weSWADtmdgUZAenMzNHNvHq531vKKszWERN9cYUh/bqgXNDCDfGSBEmw==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.9.1.tgz", + "integrity": "sha512-ASyhFawqwKhqmRz3TRAUEBn0GoxBbio6XOlWuSSxq18xaQue8yiLOAnyRNT0aB0nlWlCb08OnkV5losPiaW3SQ==", "requires": { - "async": "^3.1.0", + "async": "^3.2.0", + "cookie": "^0.4.1", "extend": "^3.0.0", "glob": "^7.1.6", - "http-proxy": "^1.18.0", - "less-openui5": "^0.8.0" + "http-proxy": "^1.18.1", + "less-openui5": "^0.8.7", + "set-cookie-parser": "^2.4.6" } }, "console-control-strings": { @@ -1855,9 +1857,9 @@ "dev": true }, "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==" }, "cookie-signature": { "version": "1.0.6", @@ -2942,6 +2944,11 @@ "vary": "~1.1.2" }, "dependencies": { + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + }, "qs": { "version": "6.7.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", @@ -6232,6 +6239,11 @@ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, + "set-cookie-parser": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.4.6.tgz", + "integrity": "sha512-mNCnTUF0OYPwYzSHbdRdCfNNHqrne+HS5tS5xNb6yJbdP9wInV0q5xPLE0EyfV/Q3tImo3y/OXpD8Jn0Jtnjrg==" + }, "setprototypeof": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 63e1998eefa..cf857dd37d2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -99,7 +99,7 @@ "dependencies": { "@ui5/builder": "^2.2.0", "@ui5/logger": "^2.0.0", - "@ui5/server": "^2.2.3", + "@ui5/server": "^2.2.4", "ajv": "^6.12.4", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From 2dd9fc83140fda4a4b2dbfb1381c2b15034f845f Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 11 Sep 2020 11:18:05 +0000 Subject: [PATCH 0419/1272] [ui5-project]Create Dependabot config file --- packages/project/.github/dependabot.yml | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 packages/project/.github/dependabot.yml diff --git a/packages/project/.github/dependabot.yml b/packages/project/.github/dependabot.yml new file mode 100644 index 00000000000..645a3f89f0b --- /dev/null +++ b/packages/project/.github/dependabot.yml @@ -0,0 +1,26 @@ +version: 2 +updates: +- package-ecosystem: npm + directory: "/" + schedule: + interval: weekly + day: sunday + time: "10:00" + timezone: Etc/UCT + reviewers: + - RandomByte + - matz3 + versioning-strategy: increase + ignore: + - dependency-name: ava + versions: + - "< 1.0.2" + - ">= 1.0.1.a" + - dependency-name: pacote + versions: + - ">= 10.a" + - "< 11" + - dependency-name: pacote + versions: + - ">= 11.a" + - "< 12" From ff88a01db55f6c6d0d48d1b6f473a825ec3813d4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 11 Sep 2020 13:59:39 +0200 Subject: [PATCH 0420/1272] [ui5-project][INTERNAL] Dependabot: Remove obsolete ignores --- packages/project/.github/dependabot.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/packages/project/.github/dependabot.yml b/packages/project/.github/dependabot.yml index 645a3f89f0b..f21f718c1a6 100644 --- a/packages/project/.github/dependabot.yml +++ b/packages/project/.github/dependabot.yml @@ -12,10 +12,6 @@ updates: - matz3 versioning-strategy: increase ignore: - - dependency-name: ava - versions: - - "< 1.0.2" - - ">= 1.0.1.a" - dependency-name: pacote versions: - ">= 10.a" From 3b783f0de00d710b02e7f6cca6be4fa89a7e417b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 13 Sep 2020 02:20:56 +0000 Subject: [PATCH 0421/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 91 ++++++++++++++++++------------ packages/project/package.json | 4 +- 2 files changed, 58 insertions(+), 37 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bea6b185bb4..a476e4fab35 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -557,9 +557,9 @@ "dev": true }, "@types/node": { - "version": "14.6.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.6.4.tgz", - "integrity": "sha512-Wk7nG1JSaMfMpoMJDKUsWYugliB2Vy55pdjLpmLixeyMi7HizW2I/9QoxsPCkXl3dO+ZOVqPumKaDUv5zJu2uQ==", + "version": "14.10.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.10.1.tgz", + "integrity": "sha512-aYNbO+FZ/3KGeQCEkNhHFRIzBOUgc7QvcVNKXbfnhDkSfwUv91JsQQa10rDgKSTSLkXZ1UIyPe4FJJNVgw1xWQ==", "dev": true }, "@types/normalize-package-data": { @@ -682,9 +682,9 @@ "dev": true }, "acorn-jsx": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", "dev": true }, "acorn-walk": { @@ -1051,9 +1051,9 @@ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, "blueimp-md5": { - "version": "2.17.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.17.0.tgz", - "integrity": "sha512-x5PKJHY5rHQYaADj6NwPUR2QRCUVSggPzrUKkeENpj871o9l9IefJbO2jkT5UvYykeOK9dx0VmkIo6dZ+vThYw==", + "version": "2.18.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.18.0.tgz", + "integrity": "sha512-vE52okJvzsVWhcgUHOv+69OG3Mdg151xyn41aVQN/5W5S+S43qZhxECtYLAEHMSFWX6Mv5IZrzj3T5+JqXfj5Q==", "dev": true }, "body-parser": { @@ -2292,9 +2292,9 @@ } }, "dot-prop": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.2.0.tgz", - "integrity": "sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", "dev": true, "requires": { "is-obj": "^2.0.0" @@ -2640,9 +2640,9 @@ } }, "eslint": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.8.1.tgz", - "integrity": "sha512-/2rX2pfhyUG0y+A123d0ccXtMm7DV7sH1m3lk9nk2DZ2LReq39FXHueR9xZwshE5MdfSf0xunSaMWRqyIA6M1w==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.9.0.tgz", + "integrity": "sha512-V6QyhX21+uXp4T+3nrNfI3hQNBDa/P8ga7LoQOenwrlEFXrEnUEE+ok1dMtaS3b6rmLXhT1TkTIsG75HMLbknA==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2768,9 +2768,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.3.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.3.2.tgz", - "integrity": "sha512-52p1xlKNm2Rodo51jUPIQ1ytKXH6Uj88mDJgmZ1znRKjynDQOO4ZS9cx5FqFoRXk/iqHv15QxHkQCBVeWViIog==", + "version": "30.4.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.4.2.tgz", + "integrity": "sha512-Czm3gXyP1Ztibyh+J3t7osQ+AUrXhJp9CQfpo6cME8LwrlDpl2newDL18UO1Yk+TngcLKUyMt0byfpHjwhqNBg==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -2800,12 +2800,12 @@ } }, "eslint-scope": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz", - "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "requires": { - "esrecurse": "^4.1.0", + "esrecurse": "^4.3.0", "estraverse": "^4.1.1" }, "dependencies": { @@ -3765,9 +3765,9 @@ } }, "is-callable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", - "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==" + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.1.tgz", + "integrity": "sha512-wliAfSzx6V+6WfMOmus1xy0XvSgf/dlStkvTfq7F0g4bOIW0PSUbnyse3NhDwdyYS1ozfUtAAySqTws3z9Eqgg==" }, "is-ci": { "version": "2.0.0", @@ -4214,9 +4214,9 @@ } }, "just-extend": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", - "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.1.tgz", + "integrity": "sha512-aWgeGFW67BP3e5181Ep1Fv2v8z//iBJfrvyTnq8wG86vEESwmonn1zPBJ0VfmT9CJq2FIT0VsETtrNFm2a+SHA==", "dev": true }, "keyv": { @@ -5177,14 +5177,35 @@ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" }, "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.1.tgz", + "integrity": "sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==", "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.0", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "dependencies": { + "es-abstract": { + "version": "1.18.0-next.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.0.tgz", + "integrity": "sha512-elZXTZXKn51hUBdJjSZGYRujuzilgXo8vSPQzjGYXLvSlGiCo8VO8ZGV3kjo9a0WNJJ57hENagwbtlRuHuzkcQ==", + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-negative-zero": "^2.0.0", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "obuf": { diff --git a/packages/project/package.json b/packages/project/package.json index cf857dd37d2..69c0b1b3ee9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -123,9 +123,9 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^7.8.1", + "eslint": "^7.9.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.3.2", + "eslint-plugin-jsdoc": "^30.4.2", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 58f953517280c6ad45463218a26868778ace2f52 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 11 Sep 2020 16:31:56 +0200 Subject: [PATCH 0422/1272] [ui5-project][INTERNAL] package.json: Increase test timeout to 1 minute (xunit only) Hopefully this will reduce the number of random failures on Windows on Azure. Presumably they are caused by some sort of timeout within AVA. Related: https://github.com/SAP/ui5-builder/pull/510 --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index 69c0b1b3ee9..1888a80f414 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -25,7 +25,7 @@ "unit-verbose": "rimraf test/tmp && cross-env UI5_LOG_LVL=verbose ava --verbose --serial", "unit-watch": "rimraf test/tmp && ava --watch", "unit-nyan": "rimraf test/tmp && ava --tap | tnyan", - "unit-xunit": "rimraf test/tmp && ava --tap | tap-xunit --dontUseCommentsAsTestNames=true > test-results.xml", + "unit-xunit": "rimraf test/tmp && ava --tap --timeout=1m | tap-xunit --dontUseCommentsAsTestNames=true > test-results.xml", "unit-inspect": "cross-env UI5_LOG_LVL=verbose node --inspect-brk node_modules/ava/profile.js", "coverage": "nyc npm run unit", "coverage-xunit": "nyc --reporter=text --reporter=text-summary --reporter=cobertura npm run unit-xunit", From e95edee92e6a65cc9377877e476fbaf225f998ce Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 14 Sep 2020 19:05:58 +0200 Subject: [PATCH 0423/1272] [ui5-project][FIX] ui5Framework.mergeTrees: Do not abort merge if a project has already been processed Resolves #354 --- .../project/lib/translators/ui5Framework.js | 2 +- .../test/lib/translators/ui5Framework.js | 535 ++++++++++++++++++ 2 files changed, 536 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 7596c4fa6ab..5c2c7f3bd4b 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -221,7 +221,7 @@ module.exports = { // Otherwise the isFrameworkProject check would detect framework dependencies added // at an earlier processing of the project and yield incorrect logging. log.verbose(`Project ${project.metadata.name} (${project.id}) has already been processed`); - return; + continue; } processedProjects.push(project.id); diff --git a/packages/project/test/lib/translators/ui5Framework.js b/packages/project/test/lib/translators/ui5Framework.js index 6661b2cdd93..050b808209e 100644 --- a/packages/project/test/lib/translators/ui5Framework.js +++ b/packages/project/test/lib/translators/ui5Framework.js @@ -236,6 +236,7 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dep metadata: { name: "test1" }, + _isRoot: true, framework: { libraries: [ { @@ -335,6 +336,540 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dep t.deepEqual(ui5Dependencies, ["lib1", "lib2", "lib6", "lib3", "lib5"]); }); +test.serial("utils.mergeTrees", (t) => { + const projectTree = { + id: "test1", + specVersion: "2.0", + metadata: { + name: "test1" + }, + _isRoot: true, + framework: { + libraries: [ + { + name: "lib1" + }, + { + name: "lib2", + optional: true + }, + { + name: "lib6", + development: true + } + ] + }, + dependencies: [ + { + id: "test2", + specVersion: "2.0", + metadata: { + name: "test2" + }, + framework: { + libraries: [ + { + name: "lib3" + }, + { + name: "lib4", + optional: true + } + ] + }, + dependencies: [ + { + id: "test3", + specVersion: "2.0", + metadata: { + name: "test3" + }, + framework: { + libraries: [ + { + name: "lib5" + }, + { + name: "lib7", + development: true + } + ] + }, + dependencies: [] + } + ] + }, + { + id: "@openui5/lib9", + specVersion: "1.1", + metadata: { + name: "lib9" + }, + dependencies: [] + }, + { + id: "@foo/library", + specVersion: "1.1", + metadata: { + name: "foo.library" + }, + framework: { + libraries: [ + { + name: "should.also.be.ignored" + } + ] + }, + dependencies: [] + } + ] + }; + const frameworkTree = { + metadata: { + name: "test1" + }, + _transparentProject: true, + dependencies: [ + { + metadata: { + name: "lib1" + }, + dependencies: [] + }, + { + metadata: { + name: "lib2" + }, + dependencies: [] + }, + { + metadata: { + name: "lib3" + }, + dependencies: [ + { + metadata: { + name: "lib4" + }, + dependencies: [ + { + metadata: { + name: "lib6" + }, + dependencies: [] + } + ] + } + ] + }, + { + metadata: { + name: "lib4" + }, + dependencies: [ + { + metadata: { + name: "lib6" + }, + dependencies: [] + } + ] + }, + { + metadata: { + name: "lib5" + }, + dependencies: [] + }, + { + metadata: { + name: "lib6" + }, + dependencies: [] + }, + { + metadata: { + name: "lib7" + }, + dependencies: [] + } + ] + }; + const mergedProjectTree = ui5Framework.mergeTrees(projectTree, frameworkTree); + t.deepEqual(mergedProjectTree, { + id: "test1", + specVersion: "2.0", + metadata: { + name: "test1" + }, + _isRoot: true, + framework: { + libraries: [ + { + name: "lib1" + }, + { + name: "lib2", + optional: true + }, + { + name: "lib6", + development: true + } + ] + }, + dependencies: [ + { + id: "test2", + specVersion: "2.0", + metadata: { + name: "test2" + }, + framework: { + libraries: [ + { + name: "lib3" + }, + { + name: "lib4", + optional: true + } + ] + }, + dependencies: [ + { + id: "test3", + specVersion: "2.0", + metadata: { + name: "test3" + }, + framework: { + libraries: [ + { + name: "lib5" + }, + { + name: "lib7", + development: true + } + ] + }, + dependencies: [ + { + metadata: { + name: "lib5" + }, + dependencies: [] + } + ] + }, + { + metadata: { + name: "lib3" + }, + dependencies: [ + { + metadata: { + name: "lib4" + }, + dependencies: [ + { + metadata: { + name: "lib6" + }, + dependencies: [] + } + ] + } + ] + }, + { + metadata: { + name: "lib4" + }, + dependencies: [ + { + metadata: { + name: "lib6" + }, + dependencies: [] + } + ] + } + ] + }, + { + id: "@foo/library", + specVersion: "1.1", + metadata: { + name: "foo.library" + }, + framework: { + libraries: [ + { + name: "should.also.be.ignored" + } + ] + }, + dependencies: [] + }, + { + metadata: { + name: "lib1" + }, + dependencies: [] + }, + { + metadata: { + name: "lib2" + }, + dependencies: [] + }, + { + metadata: { + name: "lib6" + }, + dependencies: [] + }, + ] + }); +}); + +test.serial("utils.mergeTrees: Missing framework library", (t) => { + const projectTree = { + id: "test1", + specVersion: "2.0", + metadata: { + name: "test1" + }, + _isRoot: true, + framework: { + libraries: [ + { + name: "lib1" + } + ] + }, + dependencies: [] + }; + const frameworkTree = { + metadata: { + name: "test1" + }, + _transparentProject: true, + dependencies: [ + { + metadata: { + name: "lib2" + }, + dependencies: [] + } + ] + }; + const error = t.throws(() => { + ui5Framework.mergeTrees(projectTree, frameworkTree); + }); + t.is(error.message, `Missing framework library lib1 required by project test1`); +}); + +test.serial("utils.mergeTrees: Do not abort merge if project has already been processed", (t) => { + const projectTree = { + id: "test1", + specVersion: "2.0", + metadata: { + name: "test1" + }, + _isRoot: true, + framework: { + libraries: [ + { + name: "lib1" + } + ] + }, + dependencies: [ + { + id: "test2", + specVersion: "2.0", + metadata: { + name: "test2" + }, + dependencies: [ + { + id: "test4", + specVersion: "2.0", + metadata: { + name: "test4" + }, + framework: { + libraries: [ + { + name: "lib1" + } + ] + }, + dependencies: [] + } + ] + }, + { + id: "test3", + specVersion: "2.0", + metadata: { + name: "test3" + }, + dependencies: [ + { + id: "test4", + specVersion: "2.0", + metadata: { + name: "test4" + }, + framework: { + libraries: [ + { + name: "lib1" + } + ] + }, + dependencies: [] + }, + { + id: "test5", + specVersion: "2.0", + metadata: { + name: "test5" + }, + framework: { + libraries: [ + { + name: "lib1" + } + ] + }, + dependencies: [] + } + ] + } + ] + }; + const frameworkTree = { + metadata: { + name: "test1" + }, + _transparentProject: true, + dependencies: [ + { + metadata: { + name: "lib1" + }, + dependencies: [] + } + ] + }; + const mergedProjectTree = ui5Framework.mergeTrees(projectTree, frameworkTree); + t.deepEqual(mergedProjectTree, { + id: "test1", + specVersion: "2.0", + metadata: { + name: "test1" + }, + _isRoot: true, + framework: { + libraries: [ + { + name: "lib1" + } + ] + }, + dependencies: [ + { + id: "test2", + specVersion: "2.0", + metadata: { + name: "test2" + }, + dependencies: [ + { + id: "test4", + specVersion: "2.0", + metadata: { + name: "test4" + }, + framework: { + libraries: [ + { + name: "lib1" + } + ] + }, + dependencies: [ + { + metadata: { + name: "lib1" + }, + dependencies: [] + } + ] + } + ] + }, + { + id: "test3", + specVersion: "2.0", + metadata: { + name: "test3" + }, + dependencies: [ + { + id: "test4", + specVersion: "2.0", + metadata: { + name: "test4" + }, + framework: { + libraries: [ + { + name: "lib1" + } + ] + }, + dependencies: [] + }, + { + id: "test5", + specVersion: "2.0", + metadata: { + name: "test5" + }, + framework: { + libraries: [ + { + name: "lib1" + } + ] + }, + dependencies: [ + { + metadata: { + name: "lib1" + }, + dependencies: [] + } + ] + } + ] + }, + { + metadata: { + name: "lib1" + }, + dependencies: [] + } + ] + }); +}); + // TODO test: utils.getAllNodesOfTree // TODO test: ProjectProcessor From 88560851d157028ad54a8671fdbbb672bb1d88fd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 15 Sep 2020 08:31:11 +0000 Subject: [PATCH 0424/1272] [ui5-project]Release 2.2.2 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 5117ea42100..7240edf5948 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.2...HEAD). + + +## [v2.2.2] - 2020-09-14 +### Bug Fixes +- **ui5Framework.mergeTrees:** Do not abort merge if a project has already been processed [`264c353`](https://github.com/SAP/ui5-project/commit/264c353b6973bade57164aded4f10a668986482d) + ## [v2.2.1] - 2020-09-02 @@ -198,6 +204,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.2.2]: https://github.com/SAP/ui5-project/compare/v2.2.1...v2.2.2 [v2.2.1]: https://github.com/SAP/ui5-project/compare/v2.2.0...v2.2.1 [v2.2.0]: https://github.com/SAP/ui5-project/compare/v2.1.5...v2.2.0 [v2.1.5]: https://github.com/SAP/ui5-project/compare/v2.1.4...v2.1.5 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a476e4fab35..ad7017793ad 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.1", + "version": "2.2.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 1888a80f414..940c8c68c25 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.1", + "version": "2.2.2", "description": "UI5 Tooling - Project ", "author": "SAP SE (https://www.sap.com)", "license": "Apache-2.0", From 1961982043084f3a3a2e9e8619b1d77adf03c434 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 20 Sep 2020 02:23:04 +0000 Subject: [PATCH 0425/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 96 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 50 insertions(+), 50 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ad7017793ad..9863e5e3286 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -37,12 +37,12 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -288,12 +288,12 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "globals": { @@ -357,12 +357,12 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ignore": { @@ -557,9 +557,9 @@ "dev": true }, "@types/node": { - "version": "14.10.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.10.1.tgz", - "integrity": "sha512-aYNbO+FZ/3KGeQCEkNhHFRIzBOUgc7QvcVNKXbfnhDkSfwUv91JsQQa10rDgKSTSLkXZ1UIyPe4FJJNVgw1xWQ==", + "version": "14.11.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.1.tgz", + "integrity": "sha512-oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==", "dev": true }, "@types/normalize-package-data": { @@ -720,9 +720,9 @@ } }, "ajv": { - "version": "6.12.4", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.4.tgz", - "integrity": "sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ==", + "version": "6.12.5", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.5.tgz", + "integrity": "sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag==", "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -991,12 +991,12 @@ "dev": true }, "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -2691,12 +2691,12 @@ "dev": true }, "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ignore": { @@ -2768,9 +2768,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.4.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.4.2.tgz", - "integrity": "sha512-Czm3gXyP1Ztibyh+J3t7osQ+AUrXhJp9CQfpo6cME8LwrlDpl2newDL18UO1Yk+TngcLKUyMt0byfpHjwhqNBg==", + "version": "30.5.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.5.1.tgz", + "integrity": "sha512-cY3YNxdhFcQVkcQLnZw/iZGsTPMuWa9yWZclorMWkjdHprBQX0TMWMEcmJYM3IjHp1HJr7aD0Z0sCRifEBhnzg==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -2783,12 +2783,12 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -4039,12 +4039,12 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -6478,9 +6478,9 @@ } }, "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==" + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.6.tgz", + "integrity": "sha512-+orQK83kyMva3WyPf59k1+Y525csj5JejicWut55zeTWANuN17qSiSLUXWtzHeNWORSvT7GLDJ/E/XiIWoXBTw==" }, "spdy": { "version": "4.0.2", @@ -6495,11 +6495,11 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -6523,11 +6523,11 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { diff --git a/packages/project/package.json b/packages/project/package.json index 940c8c68c25..3930d6cd936 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -100,7 +100,7 @@ "@ui5/builder": "^2.2.0", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.2.4", - "ajv": "^6.12.4", + "ajv": "^6.12.5", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", "escape-string-regexp": "^4.0.0", @@ -125,7 +125,7 @@ "docdash": "^1.2.0", "eslint": "^7.9.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.4.2", + "eslint-plugin-jsdoc": "^30.5.1", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From b6e554b6efa516c27db542be5b27f3cad0a87912 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 27 Sep 2020 02:22:33 +0000 Subject: [PATCH 0426/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 38 +++++++++++++++--------------- packages/project/package.json | 6 ++--- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9863e5e3286..9ffbc04db59 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -557,9 +557,9 @@ "dev": true }, "@types/node": { - "version": "14.11.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.1.tgz", - "integrity": "sha512-oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==", + "version": "14.11.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.2.tgz", + "integrity": "sha512-jiE3QIxJ8JLNcb1Ps6rDbysDhN4xa8DJJvuC9prr6w+1tIh+QAbYyNF3tyiZNLDBIuBCf4KEcV2UvQm/V60xfA==", "dev": true }, "@types/normalize-package-data": { @@ -2640,9 +2640,9 @@ } }, "eslint": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.9.0.tgz", - "integrity": "sha512-V6QyhX21+uXp4T+3nrNfI3hQNBDa/P8ga7LoQOenwrlEFXrEnUEE+ok1dMtaS3b6rmLXhT1TkTIsG75HMLbknA==", + "version": "7.10.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.10.0.tgz", + "integrity": "sha512-BDVffmqWl7JJXqCjAK6lWtcQThZB/aP1HXSH1JKwGwv0LQEdvpR7qzNrUT487RM39B5goWuboFad5ovMBmD8yA==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2653,7 +2653,7 @@ "debug": "^4.0.1", "doctrine": "^3.0.0", "enquirer": "^2.3.5", - "eslint-scope": "^5.1.0", + "eslint-scope": "^5.1.1", "eslint-utils": "^2.1.0", "eslint-visitor-keys": "^1.3.0", "espree": "^7.3.0", @@ -2768,9 +2768,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.5.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.5.1.tgz", - "integrity": "sha512-cY3YNxdhFcQVkcQLnZw/iZGsTPMuWa9yWZclorMWkjdHprBQX0TMWMEcmJYM3IjHp1HJr7aD0Z0sCRifEBhnzg==", + "version": "30.5.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.5.2.tgz", + "integrity": "sha512-LJfjqVGYrPUZv4Gt+1OB5NHhySVPeX4Sdd1qUUjTPnBSwbezry7j3NdPVIeU67VwCVJU2rmqd6jhZ7VYec37Cw==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -3765,9 +3765,9 @@ } }, "is-callable": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.1.tgz", - "integrity": "sha512-wliAfSzx6V+6WfMOmus1xy0XvSgf/dlStkvTfq7F0g4bOIW0PSUbnyse3NhDwdyYS1ozfUtAAySqTws3z9Eqgg==" + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", + "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==" }, "is-ci": { "version": "2.0.0", @@ -4112,9 +4112,9 @@ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsdoc": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.5.tgz", - "integrity": "sha512-SbY+i9ONuxSK35cgVHaI8O9senTE4CDYAmGSDJ5l3+sfe62Ff4gy96osy6OW84t4K4A8iGnMrlRrsSItSNp3RQ==", + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.6.tgz", + "integrity": "sha512-znR99e1BHeyEkSvgDDpX0sTiTu+8aQyDl9DawrkOGZTTW8hv0deIFXx87114zJ7gRaDZKVQD/4tr1ifmJp9xhQ==", "requires": { "@babel/parser": "^7.9.4", "bluebird": "^3.7.2", @@ -5674,9 +5674,9 @@ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" }, "pretty-ms": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.0.tgz", - "integrity": "sha512-J3aPWiC5e9ZeZFuSeBraGxSkGMOvulSWsxDByOcbD1Pr75YL3LSNIKIb52WXbCLE1sS5s4inBBbryjF4Y05Ceg==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz", + "integrity": "sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==", "dev": true, "requires": { "parse-ms": "^2.1.0" diff --git a/packages/project/package.json b/packages/project/package.json index 3930d6cd936..6633be73b4e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -123,15 +123,15 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^7.9.0", + "eslint": "^7.10.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.5.1", + "eslint-plugin-jsdoc": "^30.5.2", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", "js-beautify": "^1.13.0", - "jsdoc": "^3.6.5", + "jsdoc": "^3.6.6", "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", From 4c1cdfabda480b02d2a0b0d2c0bd5f9548b195c9 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 4 Oct 2020 02:22:55 +0000 Subject: [PATCH 0427/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 64 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 34 insertions(+), 34 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9ffbc04db59..cb849e93a55 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2459,19 +2459,19 @@ } }, "es-abstract": { - "version": "1.17.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", - "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.1", - "is-callable": "^1.2.0", - "is-regex": "^1.1.0", - "object-inspect": "^1.7.0", + "is-callable": "^1.2.2", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", "object-keys": "^1.1.1", - "object.assign": "^4.1.0", + "object.assign": "^4.1.1", "string.prototype.trimend": "^1.0.1", "string.prototype.trimstart": "^1.0.1" } @@ -2768,9 +2768,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.5.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.5.2.tgz", - "integrity": "sha512-LJfjqVGYrPUZv4Gt+1OB5NHhySVPeX4Sdd1qUUjTPnBSwbezry7j3NdPVIeU67VwCVJU2rmqd6jhZ7VYec37Cw==", + "version": "30.6.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.6.3.tgz", + "integrity": "sha512-RnyM+a3SKRfPs/jqO2qOGAEZnOJT2dOhiwhBlYVp8/yRUUBNPlvkwZm0arrnyFKvfZX6WqSwlK5OcNnM5W1Etg==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -3453,9 +3453,9 @@ "dev": true }, "hasha": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.0.tgz", - "integrity": "sha512-2W+jKdQbAdSIrggA8Q35Br8qKadTrqCTC8+XZvBWepKDK6m9XkX6Iz1a2yh2KP01kzAR/dpuMeUnocoLYDcskw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.1.tgz", + "integrity": "sha512-x15jnRSHTi3VmH+oHtVb9kgU/HuKOK8mjK8iCL3dPQXh4YJlUb9YSI8ZLiiqLAIvY2wuDIlZYZppy8vB2XISkQ==", "dev": true, "requires": { "is-stream": "^2.0.0", @@ -5188,20 +5188,20 @@ }, "dependencies": { "es-abstract": { - "version": "1.18.0-next.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.0.tgz", - "integrity": "sha512-elZXTZXKn51hUBdJjSZGYRujuzilgXo8vSPQzjGYXLvSlGiCo8VO8ZGV3kjo9a0WNJJ57hENagwbtlRuHuzkcQ==", + "version": "1.18.0-next.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", + "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.1", - "is-callable": "^1.2.0", + "is-callable": "^1.2.2", "is-negative-zero": "^2.0.0", "is-regex": "^1.1.1", "object-inspect": "^1.8.0", "object-keys": "^1.1.1", - "object.assign": "^4.1.0", + "object.assign": "^4.1.1", "string.prototype.trimend": "^1.0.1", "string.prototype.trimstart": "^1.0.1" } @@ -5244,9 +5244,9 @@ } }, "open": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/open/-/open-7.2.1.tgz", - "integrity": "sha512-xbYCJib4spUdmcs0g/2mK1nKo/jO2T7INClWd/beL7PFkXRWgr8B23ssDHX/USPn2M2IjDR5UdpYs6I67SnTSA==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/open/-/open-7.3.0.tgz", + "integrity": "sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==", "dev": true, "requires": { "is-docker": "^2.0.0", @@ -6295,20 +6295,20 @@ }, "dependencies": { "es-abstract": { - "version": "1.18.0-next.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.0.tgz", - "integrity": "sha512-elZXTZXKn51hUBdJjSZGYRujuzilgXo8vSPQzjGYXLvSlGiCo8VO8ZGV3kjo9a0WNJJ57hENagwbtlRuHuzkcQ==", + "version": "1.18.0-next.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", + "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.1", - "is-callable": "^1.2.0", + "is-callable": "^1.2.2", "is-negative-zero": "^2.0.0", "is-regex": "^1.1.1", "object-inspect": "^1.8.0", "object-keys": "^1.1.1", - "object.assign": "^4.1.0", + "object.assign": "^4.1.1", "string.prototype.trimend": "^1.0.1", "string.prototype.trimstart": "^1.0.1" } @@ -6327,9 +6327,9 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.0.3.tgz", - "integrity": "sha512-IKo9MIM111+smz9JGwLmw5U1075n1YXeAq8YeSFlndCLhAL5KGn6bLgu7b/4AYHTV/LcEMcRm2wU2YiL55/6Pg==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.1.0.tgz", + "integrity": "sha512-9zQShgaeylYH6qtsnNXlTvv0FGTTckuDfHBi+qhgj5PvW2r2WslHZpgc3uy3e/ZAoPkqaOASPi+juU6EdYRYxA==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.2", @@ -7224,9 +7224,9 @@ "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, "update-notifier": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.1.tgz", - "integrity": "sha512-9y+Kds0+LoLG6yN802wVXoIfxYEwh3FlZwzMwpCZp62S2i1/Jzeqb9Eeeju3NSHccGGasfGlK5/vEHbAifYRDg==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.3.tgz", + "integrity": "sha512-Yld6Z0RyCYGB6ckIjffGOSOmHXj1gMeE7aROz4MG+XMkmixBX4jUngrGXNYz7wPKBmtoD4MnBa2Anu7RSKht/A==", "dev": true, "requires": { "boxen": "^4.2.0", diff --git a/packages/project/package.json b/packages/project/package.json index 6633be73b4e..a63c4e85525 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -125,7 +125,7 @@ "docdash": "^1.2.0", "eslint": "^7.10.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.5.2", + "eslint-plugin-jsdoc": "^30.6.3", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", @@ -136,7 +136,7 @@ "nyc": "^15.1.0", "open-cli": "^6.0.1", "rimraf": "^3.0.2", - "sinon": "^9.0.3", + "sinon": "^9.1.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 396c47348112ee59cb49495f1fbb37ca977c3615 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 5 Oct 2020 15:03:45 +0200 Subject: [PATCH 0428/1272] [ui5-project][INTERNAL] package.json: Add author email adress Tools like npq [1] try to rate a packages trustworthiness based on the availability of information like the authors e-mail. [1]: https://github.com/lirantal/npq --- packages/project/package.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index a63c4e85525..4a9dfbc7548 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -2,7 +2,11 @@ "name": "@ui5/project", "version": "2.2.2", "description": "UI5 Tooling - Project ", - "author": "SAP SE (https://www.sap.com)", + "author": { + "name": "SAP SE", + "email": "openui5@sap.com", + "url": "https://www.sap.com" + }, "license": "Apache-2.0", "keywords": [ "openui5", From e969c3bcc1d8e1c663be0ac1e80091f7b9bd93f0 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 6 Oct 2020 12:10:25 +0000 Subject: [PATCH 0429/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.2.0 to 2.2.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.2.1/CHANGELOG.md --- packages/project/package-lock.json | 27 +++++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index cb849e93a55..acef29c4b00 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -568,9 +568,9 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.2.0.tgz", - "integrity": "sha512-EBFFPShP7jWYYG1qCcRG1uZj5nHXxZjxFI9/JRHSV1rjYH1tRQviC4CjP/RUtovJ4D9yOe6HcPRha9wH+kfkBg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.2.1.tgz", + "integrity": "sha512-dFuf7D10gvlFSszwoOORu6Zj7BFI3t1LMkdPSvlD5HUFDhWIka5MUDr8S/CKF9dcXv6wuhJGx2eQWOaK0OQVYw==", "requires": { "@ui5/fs": "^2.0.3", "@ui5/logger": "^2.0.0", @@ -582,7 +582,7 @@ "estraverse": "5.1.0", "globby": "^11.0.1", "graceful-fs": "^4.2.4", - "jsdoc": "^3.6.5", + "jsdoc": "^3.6.6", "less-openui5": "^0.8.7", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", @@ -591,7 +591,7 @@ "rimraf": "^3.0.2", "semver": "^7.3.2", "slash": "^3.0.0", - "terser": "^4.8.0", + "terser": "^5.3.4", "xml2js": "^0.4.23", "yazl": "^2.5.1" } @@ -7016,13 +7016,20 @@ "dev": true }, "terser": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", - "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.4.tgz", + "integrity": "sha512-dxuB8KQo8Gt6OVOeLg/rxfcxdNZI/V1G6ze1czFUzPeCFWZRtvZMgSzlZZ5OYBZ4HoG607F6pFPNLekJyV+yVw==", "requires": { "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" + "source-map": "~0.7.2", + "source-map-support": "~0.5.19" + }, + "dependencies": { + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" + } } }, "test-exclude": { diff --git a/packages/project/package.json b/packages/project/package.json index 4a9dfbc7548..2bdb2b7cbac 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.2.0", + "@ui5/builder": "^2.2.1", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.2.4", "ajv": "^6.12.5", From ceb658ff2007acc0c7b7908b145b83a5dd7d8306 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 6 Oct 2020 12:17:01 +0000 Subject: [PATCH 0430/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.4 to 2.2.5 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.5/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index acef29c4b00..f8204afe76d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -623,11 +623,11 @@ } }, "@ui5/server": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.4.tgz", - "integrity": "sha512-x/Yt4usrX6baDT+B+CMWg0Ev+BXJo3wtj3WcvZSGvSaGQ7AKkuK/xDC8me+lpgmzpo7dxZZ2lFHW/DKb8WAokA==", + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.5.tgz", + "integrity": "sha512-Osd9ilB4zP7Mk67burIMsqLGqabfjBY9TfHGSFoZDC0uhitArwvpCTWrqAl2JoBmKF+mSD8MLHaEqTApDSKrHA==", "requires": { - "@ui5/builder": "^2.2.0", + "@ui5/builder": "^2.2.1", "@ui5/fs": "^2.0.3", "@ui5/logger": "^2.0.0", "body-parser": "^1.19.0", diff --git a/packages/project/package.json b/packages/project/package.json index 2bdb2b7cbac..c220195b6a5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^2.2.1", "@ui5/logger": "^2.0.0", - "@ui5/server": "^2.2.4", + "@ui5/server": "^2.2.5", "ajv": "^6.12.5", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From ad99c9c845b569e5b5a9e7cdd1a55ccb30fca7f2 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 11 Oct 2020 02:22:33 +0000 Subject: [PATCH 0431/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 90 +++++++++++++++++------------- packages/project/package.json | 8 +-- 2 files changed, 54 insertions(+), 44 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f8204afe76d..46ce1cc4154 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -492,9 +492,9 @@ } }, "@sinonjs/samsam": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.1.0.tgz", - "integrity": "sha512-42nyaQOVunX5Pm6GRJobmzbS7iLI+fhERITnETXzzwDZh+TtDr/Au3yAvXVjFmZ4wEUaE4Y3NFZfKv0bV0cbtg==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.2.0.tgz", + "integrity": "sha512-CaIcyX5cDsjcW/ab7HposFWzV1kC++4HNsfnEdFJa7cP1QIuILAKV+BgfeqRXhcnSAc76r/Rh/O5C+300BwUIw==", "dev": true, "requires": { "@sinonjs/commons": "^1.6.0", @@ -523,11 +523,6 @@ "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", "dev": true }, - "@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" - }, "@types/debug": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.5.tgz", @@ -557,9 +552,9 @@ "dev": true }, "@types/node": { - "version": "14.11.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.2.tgz", - "integrity": "sha512-jiE3QIxJ8JLNcb1Ps6rDbysDhN4xa8DJJvuC9prr6w+1tIh+QAbYyNF3tyiZNLDBIuBCf4KEcV2UvQm/V60xfA==", + "version": "14.11.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.8.tgz", + "integrity": "sha512-KPcKqKm5UKDkaYPTuXSx8wEP7vE9GnuaXIZKijwRYcePpZFDVuy2a57LarFKiORbHOuTOOwYzxVxcUzsh2P2Pw==", "dev": true }, "@types/normalize-package-data": { @@ -676,9 +671,9 @@ } }, "acorn": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", - "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true }, "acorn-jsx": { @@ -720,9 +715,9 @@ } }, "ajv": { - "version": "6.12.5", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.5.tgz", - "integrity": "sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag==", + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -796,11 +791,10 @@ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -2640,9 +2634,9 @@ } }, "eslint": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.10.0.tgz", - "integrity": "sha512-BDVffmqWl7JJXqCjAK6lWtcQThZB/aP1HXSH1JKwGwv0LQEdvpR7qzNrUT487RM39B5goWuboFad5ovMBmD8yA==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.11.0.tgz", + "integrity": "sha512-G9+qtYVCHaDi1ZuWzBsOWo2wSwd70TXnU6UHA3cTYHp7gCTXZcpggWFoUVAMRarg68qtPoNfFbzPh+VdOgmwmw==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2655,7 +2649,7 @@ "enquirer": "^2.3.5", "eslint-scope": "^5.1.1", "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^1.3.0", + "eslint-visitor-keys": "^2.0.0", "espree": "^7.3.0", "esquery": "^1.2.0", "esutils": "^2.0.2", @@ -2768,13 +2762,13 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.6.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.6.3.tgz", - "integrity": "sha512-RnyM+a3SKRfPs/jqO2qOGAEZnOJT2dOhiwhBlYVp8/yRUUBNPlvkwZm0arrnyFKvfZX6WqSwlK5OcNnM5W1Etg==", + "version": "30.6.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.6.4.tgz", + "integrity": "sha512-aDTsAkKwyMsIYtytjH5zPtv+LkbCORN6oy/T4L40ssU5pgXWRSs0ULyJb6e4p2jT8y5nmG3IgpawYarL4tKunw==", "dev": true, "requires": { "comment-parser": "^0.7.6", - "debug": "^4.1.1", + "debug": "^4.2.0", "jsdoctypeparser": "^9.0.0", "lodash": "^4.17.20", "regextras": "^0.7.1", @@ -2824,12 +2818,20 @@ "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } } }, "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", "dev": true }, "espree": { @@ -2841,6 +2843,14 @@ "acorn": "^7.4.0", "acorn-jsx": "^5.2.0", "eslint-visitor-keys": "^1.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } } }, "esprima": { @@ -3453,9 +3463,9 @@ "dev": true }, "hasha": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.1.tgz", - "integrity": "sha512-x15jnRSHTi3VmH+oHtVb9kgU/HuKOK8mjK8iCL3dPQXh4YJlUb9YSI8ZLiiqLAIvY2wuDIlZYZppy8vB2XISkQ==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", + "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==", "dev": true, "requires": { "is-stream": "^2.0.0", @@ -6327,15 +6337,15 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.1.0.tgz", - "integrity": "sha512-9zQShgaeylYH6qtsnNXlTvv0FGTTckuDfHBi+qhgj5PvW2r2WslHZpgc3uy3e/ZAoPkqaOASPi+juU6EdYRYxA==", + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.0.tgz", + "integrity": "sha512-eSNXz1XMcGEMHw08NJXSyTHIu6qTCOiN8x9ODACmZpNQpr0aXTBXBnI4xTzQzR+TEpOmLiKowGf9flCuKIzsbw==", "dev": true, "requires": { - "@sinonjs/commons": "^1.7.2", + "@sinonjs/commons": "^1.8.1", "@sinonjs/fake-timers": "^6.0.1", "@sinonjs/formatio": "^5.0.1", - "@sinonjs/samsam": "^5.1.0", + "@sinonjs/samsam": "^5.2.0", "diff": "^4.0.2", "nise": "^4.0.4", "supports-color": "^7.1.0" diff --git a/packages/project/package.json b/packages/project/package.json index c220195b6a5..5f8bf61886a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -104,7 +104,7 @@ "@ui5/builder": "^2.2.1", "@ui5/logger": "^2.0.0", "@ui5/server": "^2.2.5", - "ajv": "^6.12.5", + "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", "escape-string-regexp": "^4.0.0", @@ -127,9 +127,9 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^7.10.0", + "eslint": "^7.11.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.6.3", + "eslint-plugin-jsdoc": "^30.6.4", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", @@ -140,7 +140,7 @@ "nyc": "^15.1.0", "open-cli": "^6.0.1", "rimraf": "^3.0.2", - "sinon": "^9.1.0", + "sinon": "^9.2.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 29cf01f38dc8b3ad6f3dde22e4effd053f828448 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 18 Oct 2020 02:21:22 +0000 Subject: [PATCH 0432/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 157 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 80 insertions(+), 79 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 46ce1cc4154..0b2ebd96a08 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,19 +13,19 @@ } }, "@babel/core": { - "version": "7.11.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.6.tgz", - "integrity": "sha512-Wpcv03AGnmkgm6uS6k8iwhIwTrcP0m17TL1n1sy7qD0qelDu4XNeW0dN0mHfa+Gei211yDaLoEe/VlbXQzM4Bg==", + "version": "7.12.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.3.tgz", + "integrity": "sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.6", - "@babel/helper-module-transforms": "^7.11.0", - "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.11.5", + "@babel/generator": "^7.12.1", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.1", + "@babel/parser": "^7.12.3", "@babel/template": "^7.10.4", - "@babel/traverse": "^7.11.5", - "@babel/types": "^7.11.5", + "@babel/traverse": "^7.12.1", + "@babel/types": "^7.12.1", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -66,12 +66,12 @@ } }, "@babel/generator": { - "version": "7.11.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.6.tgz", - "integrity": "sha512-DWtQ1PV3r+cLbySoHrwn9RWEgKMBLLma4OBQloPRyDYvc5msJM9kvTLo1YnlJd1P/ZuKbdli3ijr5q3FvAF3uA==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.1.tgz", + "integrity": "sha512-DB+6rafIdc9o72Yc3/Ph5h+6hUjeOp66pF0naQBgUFFuPqzQwIlPTm3xZR7YNvduIMtkDIj2t21LSQwnbCrXvg==", "dev": true, "requires": { - "@babel/types": "^7.11.5", + "@babel/types": "^7.12.1", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -105,35 +105,37 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz", - "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.1.tgz", + "integrity": "sha512-k0CIe3tXUKTRSoEx1LQEPFU9vRQfqHtl+kf8eNnDqb4AUJEy5pz6aIiog+YWtVm2jpggjS1laH68bPsR+KWWPQ==", "dev": true, "requires": { - "@babel/types": "^7.11.0" + "@babel/types": "^7.12.1" } }, "@babel/helper-module-imports": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz", - "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.1.tgz", + "integrity": "sha512-ZeC1TlMSvikvJNy1v/wPIazCu3NdOwgYZLIkmIyAsGhqkNpiDoQQRmaCK8YP4Pq3GPTLPV9WXaPCJKvx06JxKA==", "dev": true, "requires": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.12.1" } }, "@babel/helper-module-transforms": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz", - "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz", + "integrity": "sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", + "@babel/helper-module-imports": "^7.12.1", + "@babel/helper-replace-supers": "^7.12.1", + "@babel/helper-simple-access": "^7.12.1", "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/helper-validator-identifier": "^7.10.4", "@babel/template": "^7.10.4", - "@babel/types": "^7.11.0", + "@babel/traverse": "^7.12.1", + "@babel/types": "^7.12.1", "lodash": "^4.17.19" } }, @@ -147,25 +149,24 @@ } }, "@babel/helper-replace-supers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz", - "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.1.tgz", + "integrity": "sha512-zJjTvtNJnCFsCXVi5rUInstLd/EIVNmIKA1Q9ynESmMBWPWd+7sdR+G4/wdu+Mppfep0XLyG2m7EBPvjCeFyrw==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.10.4", + "@babel/helper-member-expression-to-functions": "^7.12.1", "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/traverse": "^7.12.1", + "@babel/types": "^7.12.1" } }, "@babel/helper-simple-access": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz", - "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz", + "integrity": "sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA==", "dev": true, "requires": { - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/types": "^7.12.1" } }, "@babel/helper-split-export-declaration": { @@ -183,14 +184,14 @@ "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==" }, "@babel/helpers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz", - "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.1.tgz", + "integrity": "sha512-9JoDSBGoWtmbay98efmT2+mySkwjzeFeAL9BuWNoVQpkPFQF8SIIFUfY5os9u8wVzglzoiPRSW7cuJmBDUt43g==", "dev": true, "requires": { "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/traverse": "^7.12.1", + "@babel/types": "^7.12.1" } }, "@babel/highlight": { @@ -255,9 +256,9 @@ } }, "@babel/parser": { - "version": "7.11.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.5.tgz", - "integrity": "sha512-X9rD8qqm695vgmeaQ4fvz/o3+Wk4ZzQvSHkDBgpYKxpD4qTAUm88ZKtHkVqIOsYFFbIQ6wQYhC6q7pjqVK0E0Q==" + "version": "7.12.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.3.tgz", + "integrity": "sha512-kFsOS0IbsuhO5ojF8Hc8z/8vEIOkylVBrjiZUbLTE3XFe0Qi+uu6HjzQixkFaqr0ZPAMZcBVxEwmsnsLPZ2Xsw==" }, "@babel/template": { "version": "7.10.4", @@ -271,17 +272,17 @@ } }, "@babel/traverse": { - "version": "7.11.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.5.tgz", - "integrity": "sha512-EjiPXt+r7LiCZXEfRpSJd+jUMnBd4/9OUv7Nx3+0u9+eimMwJmG0Q98lw4/289JCoxSE8OolDMNZaaF/JZ69WQ==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.1.tgz", + "integrity": "sha512-MA3WPoRt1ZHo2ZmoGKNqi20YnPt0B1S0GTZEPhhd+hw2KGUzBlHuVunj6K4sNuK+reEvyiPwtp0cpaqLzJDmAw==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.5", + "@babel/generator": "^7.12.1", "@babel/helper-function-name": "^7.10.4", "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.11.5", - "@babel/types": "^7.11.5", + "@babel/parser": "^7.12.1", + "@babel/types": "^7.12.1", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" @@ -311,9 +312,9 @@ } }, "@babel/types": { - "version": "7.11.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.5.tgz", - "integrity": "sha512-bvM7Qz6eKnJVFIn+1LPtjlBFPVN5jNDc1XmN15vWe7Q3DPBufWWsLiIvUu7xW87uTG6QoggpIDnUgLQvPheU+Q==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.1.tgz", + "integrity": "sha512-BzSY3NJBKM4kyatSOWh3D/JJ2O3CVzBybHWxtgxnggaxEuaSTTDqeiSb/xk9lrkw2Tbqyivw5ZU4rT+EfznQsA==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.10.4", @@ -552,9 +553,9 @@ "dev": true }, "@types/node": { - "version": "14.11.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.8.tgz", - "integrity": "sha512-KPcKqKm5UKDkaYPTuXSx8wEP7vE9GnuaXIZKijwRYcePpZFDVuy2a57LarFKiORbHOuTOOwYzxVxcUzsh2P2Pw==", + "version": "14.11.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.10.tgz", + "integrity": "sha512-yV1nWZPlMFpoXyoknm4S56y2nlTAuFYaJuQtYRAOU7xA/FJ9RY0Xm7QOkaYMMmr8ESdHIuUb6oQgR/0+2NqlyA==", "dev": true }, "@types/normalize-package-data": { @@ -1341,9 +1342,9 @@ } }, "chokidar": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz", - "integrity": "sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.3.tgz", + "integrity": "sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ==", "dev": true, "requires": { "anymatch": "~3.1.1", @@ -1353,7 +1354,7 @@ "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.4.0" + "readdirp": "~3.5.0" }, "dependencies": { "normalize-path": { @@ -1547,9 +1548,9 @@ } }, "cli-spinners": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.4.0.tgz", - "integrity": "sha512-sJAofoarcm76ZGpuooaO0eDy8saEy+YoZBLjC4h8srt4jeBnkYeOgqxgsJQTpyt2LjI5PTfLJHSL+41Yu4fEJA==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.5.0.tgz", + "integrity": "sha512-PC+AmIuK04E6aeSs/pUccSujsTzBhu4HzC2dL+CfJB/Jcc2qTRbEwZQDfIUpt2Xl8BodYBEq8w4fc0kU2I9DjQ==", "dev": true }, "cli-truncate": { @@ -2377,9 +2378,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "emittery": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.1.tgz", - "integrity": "sha512-d34LN4L6h18Bzz9xpoku2nPwKxCPlPMr3EEKTkoEBi+1/+b0lcRkRJ1UVyyZaKNeqGR3swcGl6s390DNO4YVgQ==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.2.tgz", + "integrity": "sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ==", "dev": true }, "emoji-regex": { @@ -2762,9 +2763,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.6.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.6.4.tgz", - "integrity": "sha512-aDTsAkKwyMsIYtytjH5zPtv+LkbCORN6oy/T4L40ssU5pgXWRSs0ULyJb6e4p2jT8y5nmG3IgpawYarL4tKunw==", + "version": "30.6.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.6.5.tgz", + "integrity": "sha512-obC3wi1/b5hsPLXa3ZDs571QXGqkVsphndMsIsVQzWRdZOaRbxdvGiKhLzzZytbRZAL1M1Bkdc/3Af7eNxJ/Hg==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -5935,9 +5936,9 @@ "dev": true }, "readdirp": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", - "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", "dev": true, "requires": { "picomatch": "^2.2.1" @@ -7026,9 +7027,9 @@ "dev": true }, "terser": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.4.tgz", - "integrity": "sha512-dxuB8KQo8Gt6OVOeLg/rxfcxdNZI/V1G6ze1czFUzPeCFWZRtvZMgSzlZZ5OYBZ4HoG607F6pFPNLekJyV+yVw==", + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.5.tgz", + "integrity": "sha512-Qw3CZAMmmfU824AoGKalx+riwocSI5Cs0PoGp9RdSLfmxkmJgyBxqLBP/isDNtFyhHnitikvRMZzyVgeq+U+Tg==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", diff --git a/packages/project/package.json b/packages/project/package.json index 5f8bf61886a..811311ecbbd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.11.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.6.4", + "eslint-plugin-jsdoc": "^30.6.5", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From edf2a258903c6dab3fb61494fa42c49879cd9995 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 19 Oct 2020 10:47:05 +0200 Subject: [PATCH 0433/1272] [ui5-project][FIX] Schema: Add missing bundle section "name" --- .../schema/specVersion/2.0/kind/project.json | 3 +++ .../specVersion/2.0/kind/project/application.js | 12 ++++++++++++ .../schema/specVersion/2.0/kind/project/library.js | 12 ++++++++++++ 3 files changed, 27 insertions(+) diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index eb193c2056e..6f86b942a45 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -139,6 +139,9 @@ "additionalProperties": false, "required": ["mode", "filters"], "properties": { + "name": { + "type": "string" + }, "mode": { "enum": ["raw", "preload", "require", "provided"] }, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index 6070023b193..7321e031811 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -70,6 +70,7 @@ test.after.always((t) => { ], "sections": [ { + "name": "my-raw-section", "mode": "raw", "filters": [ "ui5loader-autoconfig.js" @@ -107,6 +108,7 @@ test.after.always((t) => { ], "sections": [ { + "name": "some-app-preload", "mode": "preload", "filters": [ "some/app/Component.js" @@ -309,6 +311,7 @@ test.after.always((t) => { ], "sections": [ { + "name": true, "mode": "raw", "filters": [ "ui5loader-autoconfig.js" @@ -376,6 +379,15 @@ test.after.always((t) => { }, schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/additionalProperties", }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0/name", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/name/type", + }, { dataPath: "/builder/bundles/1/bundleDefinition", keyword: "required", diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index 7a1bc1de4b9..4f329e1316b 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -70,6 +70,7 @@ test.after.always((t) => { ], "sections": [ { + "name": "my-raw-section", "mode": "raw", "filters": [ "ui5loader-autoconfig.js" @@ -107,6 +108,7 @@ test.after.always((t) => { ], "sections": [ { + "name": "some-app-preload", "mode": "preload", "filters": [ "some/app/Component.js" @@ -212,6 +214,7 @@ test.after.always((t) => { ], "sections": [ { + "name": true, "mode": "raw", "filters": [ "ui5loader-autoconfig.js" @@ -350,6 +353,15 @@ test.after.always((t) => { }, schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/additionalProperties", }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0/name", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/name/type", + }, { dataPath: "/builder/bundles/1/bundleDefinition", keyword: "required", From 15905ec468d4b26222c9e98a8373be08e9a7bb32 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 18 Oct 2020 02:23:49 +0000 Subject: [PATCH 0434/1272] [ui5-project]Bump ava from 3.11.1 to 3.13.0 Bumps [ava](https://github.com/avajs/ava) from 3.11.1 to 3.13.0. - [Release notes](https://github.com/avajs/ava/releases) - [Commits](https://github.com/avajs/ava/compare/v3.11.1...v3.13.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 306 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 150 insertions(+), 158 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0b2ebd96a08..17e88240529 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -530,34 +530,12 @@ "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==", "dev": true }, - "@types/glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==", - "dev": true, - "requires": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", - "dev": true - }, "@types/minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=", "dev": true }, - "@types/node": { - "version": "14.11.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.10.tgz", - "integrity": "sha512-yV1nWZPlMFpoXyoknm4S56y2nlTAuFYaJuQtYRAOU7xA/FJ9RY0Xm7QOkaYMMmr8ESdHIuUb6oQgR/0+2NqlyA==", - "dev": true - }, "@types/normalize-package-data": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", @@ -684,9 +662,9 @@ "dev": true }, "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.0.0.tgz", + "integrity": "sha512-oZRad/3SMOI/pxbbmqyurIx7jHw1wZDcR9G44L8pUVFEomX/0dH89SrM1KaDXuv1NpzAXz6Op/Xu/Qd5XXzdEA==", "dev": true }, "agent-base": { @@ -917,20 +895,20 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.11.1.tgz", - "integrity": "sha512-yGPD0msa5Qronw7GHDNlLaB7oU5zryYtXeuvny40YV6TMskSghqK7Ky3NisM/sr+aqI3DY7sfmORx8dIWQgMoQ==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.13.0.tgz", + "integrity": "sha512-yzky+gark5PdsFFlZ4CnBVxm/OgBUWtn9vAsSSnuooVJNOk5ER17HJXVeUzy63LIt06Zy34oThcn+2ZqgMs7SA==", "dev": true, "requires": { "@concordance/react": "^2.0.0", - "acorn": "^7.3.1", - "acorn-walk": "^7.2.0", + "acorn": "^8.0.1", + "acorn-walk": "^8.0.0", "ansi-styles": "^4.2.1", "arrgv": "^1.0.2", "arrify": "^2.0.1", "callsites": "^3.1.0", "chalk": "^4.1.0", - "chokidar": "^3.4.1", + "chokidar": "^3.4.2", "chunkd": "^2.0.1", "ci-info": "^2.0.0", "ci-parallel-vars": "^1.0.1", @@ -939,11 +917,11 @@ "cli-truncate": "^2.1.0", "code-excerpt": "^3.0.0", "common-path-prefix": "^3.0.0", - "concordance": "^5.0.0", + "concordance": "^5.0.1", "convert-source-map": "^1.7.0", "currently-unhandled": "^0.4.1", - "debug": "^4.1.1", - "del": "^5.1.0", + "debug": "^4.2.0", + "del": "^6.0.0", "emittery": "^0.7.1", "equal-length": "^1.0.0", "figures": "^3.2.0", @@ -952,19 +930,20 @@ "import-local": "^3.0.2", "indent-string": "^4.0.0", "is-error": "^2.2.2", - "is-plain-object": "^4.1.1", + "is-plain-object": "^5.0.0", "is-promise": "^4.0.0", - "lodash": "^4.17.19", + "lodash": "^4.17.20", "matcher": "^3.0.0", "md5-hex": "^3.0.1", - "mem": "^6.1.0", + "mem": "^6.1.1", "ms": "^2.1.2", - "ora": "^4.0.5", + "ora": "^5.1.0", + "p-event": "^4.2.0", "p-map": "^4.0.0", "picomatch": "^2.2.2", "pkg-conf": "^3.1.0", "plur": "^4.0.0", - "pretty-ms": "^7.0.0", + "pretty-ms": "^7.0.1", "read-pkg": "^5.2.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", @@ -974,17 +953,34 @@ "supertap": "^1.0.0", "temp-dir": "^2.0.0", "trim-off-newlines": "^1.0.1", - "update-notifier": "^4.1.0", + "update-notifier": "^4.1.1", "write-file-atomic": "^3.0.3", - "yargs": "^15.4.1" + "yargs": "^16.0.3" }, "dependencies": { + "acorn": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.4.tgz", + "integrity": "sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ==", + "dev": true + }, "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, + "cliui": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.3.tgz", + "integrity": "sha512-Gj3QHTkVMPKqwP3f7B4KPkBZRMR9r4rfi5bXFpg1a+Svvj8l7q5CnkBkVQzfxT5DFSsGk2+PascOgL0JYkL2kw==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, "debug": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", @@ -994,12 +990,35 @@ "ms": "2.1.2" } }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -1008,6 +1027,44 @@ "requires": { "ansi-regex": "^5.0.0" } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "y18n": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.4.tgz", + "integrity": "sha512-deLOfD+RvFgrpAmSZgfGdWYE+OKyHcVHaRQ7NphG/63scpRvTHHeQMAxGGvaLVGJ+HYVcCXlzcTK0ZehFf+eHQ==", + "dev": true + }, + "yargs": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.1.0.tgz", + "integrity": "sha512-upWFJOmDdHN0syLuESuvXDmrRcWd1QafJolHskzaw79uZa7/x53gxQKiR07W59GWY1tFhhU/Th9DrtSfpS782g==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.2", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.3.tgz", + "integrity": "sha512-emOFRT9WVHw03QSvN5qor9QQT9+sw5vwxfYweivSMHTcAXPefwVae2FjO7JJjj8hCE4CzPOPeFM83VwT29HCww==", + "dev": true } } }, @@ -2129,46 +2186,19 @@ } }, "del": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/del/-/del-5.1.0.tgz", - "integrity": "sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", "dev": true, "requires": { - "globby": "^10.0.1", - "graceful-fs": "^4.2.2", + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", "is-glob": "^4.0.1", "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.1", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", "slash": "^3.0.0" - }, - "dependencies": { - "globby": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", - "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", - "slash": "^3.0.0" - } - }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - } } }, "delayed-stream": { @@ -2576,6 +2606,12 @@ "es6-symbol": "^3.1.1" } }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, "escape-goat": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", @@ -3892,9 +3928,9 @@ "dev": true }, "is-plain-object": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-4.1.1.tgz", - "integrity": "sha512-5Aw8LLVsDlZsETVMhoMXzqsXwQqr/0vlnBYzIXJbYo2F4yYlhLHs+Ez7Bod7IIQKWkJbJfxrWD7pA1Dw1TKrwA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "dev": true }, "is-promise": { @@ -4461,70 +4497,12 @@ "dev": true }, "log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", "dev": true, "requires": { - "chalk": "^2.4.2" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "chalk": "^4.0.0" } }, "lowercase-keys": { @@ -5291,16 +5269,16 @@ } }, "ora": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", - "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.1.0.tgz", + "integrity": "sha512-9tXIMPvjZ7hPTbk8DFq1f7Kow/HU/pQYB60JbNq+QnGwcyhWVZaQ4hM9zQDEsPxw/muLpgiHSaumUZxCAmod/w==", "dev": true, "requires": { - "chalk": "^3.0.0", + "chalk": "^4.1.0", "cli-cursor": "^3.1.0", - "cli-spinners": "^2.2.0", + "cli-spinners": "^2.4.0", "is-interactive": "^1.0.0", - "log-symbols": "^3.0.0", + "log-symbols": "^4.0.0", "mute-stream": "0.0.8", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" @@ -5312,16 +5290,6 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -5364,6 +5332,21 @@ "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", "dev": true }, + "p-event": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", + "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "dev": true, + "requires": { + "p-timeout": "^3.1.0" + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, "p-limit": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", @@ -5389,6 +5372,15 @@ "aggregate-error": "^3.0.0" } }, + "p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "dev": true, + "requires": { + "p-finally": "^1.0.0" + } + }, "p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 811311ecbbd..66635ce7d41 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -122,7 +122,7 @@ "string.prototype.matchall": "^4.0.2" }, "devDependencies": { - "ava": "3.11.1", + "ava": "3.13.0", "chokidar-cli": "^2.1.0", "coveralls": "^3.1.0", "cross-env": "^7.0.2", From dae387c25521d0ce5e5b220240b568bf1fec886e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 21 Oct 2020 18:22:06 +0200 Subject: [PATCH 0435/1272] [ui5-project][INTERNAL] package.json: Re-add range to ava dependency See https://github.com/SAP/ui5-logger/pull/199#issuecomment-696626900 --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index 66635ce7d41..33fd54dce70 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -122,7 +122,7 @@ "string.prototype.matchall": "^4.0.2" }, "devDependencies": { - "ava": "3.13.0", + "ava": "^3.13.0", "chokidar-cli": "^2.1.0", "coveralls": "^3.1.0", "cross-env": "^7.0.2", From ab678184e5a387a016b6174f4db3b78b147fb828 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 22 Oct 2020 15:30:30 +0000 Subject: [PATCH 0436/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 2.0.0 to 2.0.1 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v2.0.1/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 17e88240529..916696f6bff 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -589,9 +589,9 @@ } }, "@ui5/logger": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.0.tgz", - "integrity": "sha512-uBkUCqenF5IpUN+y//7FUHHiVN/AVzYwMleUcV27q1SRjD7Y3E84/fpOABPekEd1cgmJcPvOPRAd0X0btfPQVA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.1.tgz", + "integrity": "sha512-FU5moQF9HATZEIJVQxXWRsUKMveIRJNPSmH3Mptcuc05f6gKu1BWcamDaDHXmMSyoKRounY9Aok94NTQMi7eDw==", "requires": { "npmlog": "^4.1.2" } diff --git a/packages/project/package.json b/packages/project/package.json index 33fd54dce70..6dcb3427b4f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ }, "dependencies": { "@ui5/builder": "^2.2.1", - "@ui5/logger": "^2.0.0", + "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.5", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 32d40c40ae9d31dc9884e783b8b6091072d1da90 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 22 Oct 2020 15:44:50 +0000 Subject: [PATCH 0437/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.2.1 to 2.3.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.3.0/CHANGELOG.md --- packages/project/package-lock.json | 54 ++++++++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 38 insertions(+), 18 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 916696f6bff..d8c9e139652 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -542,15 +542,15 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.2.1.tgz", - "integrity": "sha512-dFuf7D10gvlFSszwoOORu6Zj7BFI3t1LMkdPSvlD5HUFDhWIka5MUDr8S/CKF9dcXv6wuhJGx2eQWOaK0OQVYw==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.3.0.tgz", + "integrity": "sha512-N+/Bou//fSdCNMfx5ASfpIpaJ9k3zNXMUq7F59qwJKUQZOg2if+hHWqdKSrEErqbKoiu1eevIexgvC3E8vHViw==", "requires": { - "@ui5/fs": "^2.0.3", - "@ui5/logger": "^2.0.0", + "@ui5/fs": "^2.0.4", + "@ui5/logger": "^2.0.1", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", - "escodegen": "^1.14.3", + "escodegen": "^2.0.0", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "5.1.0", @@ -565,9 +565,29 @@ "rimraf": "^3.0.2", "semver": "^7.3.2", "slash": "^3.0.0", - "terser": "^5.3.4", + "terser": "^5.3.5", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "@ui5/fs": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.4.tgz", + "integrity": "sha512-qyS6ybWUPmEcslotu+dRV33IisfOAwoy3otHXiLOSNjwhZuNBGFRXSSKwCIG00yxzu7m6lRpGjXpEbb4KTQGNg==", + "requires": { + "@ui5/logger": "^2.0.1", + "clone": "^2.1.0", + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "make-dir": "^3.1.0", + "micromatch": "^4.0.2", + "minimatch": "^3.0.3", + "mock-require": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^2.0.1", + "slash": "^3.0.0" + } + } } }, "@ui5/fs": { @@ -2634,21 +2654,21 @@ "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" }, "escodegen": { - "version": "1.14.3", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", - "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", + "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", "requires": { "esprima": "^4.0.1", - "estraverse": "^4.2.0", + "estraverse": "^5.2.0", "esutils": "^2.0.2", "optionator": "^0.8.1", "source-map": "~0.6.1" }, "dependencies": { "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" } } }, @@ -7019,9 +7039,9 @@ "dev": true }, "terser": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.5.tgz", - "integrity": "sha512-Qw3CZAMmmfU824AoGKalx+riwocSI5Cs0PoGp9RdSLfmxkmJgyBxqLBP/isDNtFyhHnitikvRMZzyVgeq+U+Tg==", + "version": "5.3.8", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.8.tgz", + "integrity": "sha512-zVotuHoIfnYjtlurOouTazciEfL7V38QMAOhGqpXDEg6yT13cF4+fEP9b0rrCEQTn+tT46uxgFsTZzhygk+CzQ==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", diff --git a/packages/project/package.json b/packages/project/package.json index 6dcb3427b4f..b45ad93f6ff 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.2.1", + "@ui5/builder": "^2.3.0", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.5", "ajv": "^6.12.6", From 2c5c0a47be31ac698b739e7a9ce0721de9d8c094 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 22 Oct 2020 15:51:35 +0000 Subject: [PATCH 0438/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.5 to 2.2.6 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.6/CHANGELOG.md --- packages/project/package-lock.json | 20 ++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d8c9e139652..f9b88b60e46 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -591,11 +591,11 @@ } }, "@ui5/fs": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.3.tgz", - "integrity": "sha512-rrkqGiNI1+RaIIa472dBx+6dAh6G27k0VaXM43kTkyYUXTyotpWxXJR9Vbl8U+H4rqtqsVTFaU4eHmDbYHQxJw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.4.tgz", + "integrity": "sha512-qyS6ybWUPmEcslotu+dRV33IisfOAwoy3otHXiLOSNjwhZuNBGFRXSSKwCIG00yxzu7m6lRpGjXpEbb4KTQGNg==", "requires": { - "@ui5/logger": "^2.0.0", + "@ui5/logger": "^2.0.1", "clone": "^2.1.0", "globby": "^11.0.1", "graceful-fs": "^4.2.4", @@ -617,13 +617,13 @@ } }, "@ui5/server": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.5.tgz", - "integrity": "sha512-Osd9ilB4zP7Mk67burIMsqLGqabfjBY9TfHGSFoZDC0uhitArwvpCTWrqAl2JoBmKF+mSD8MLHaEqTApDSKrHA==", + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.6.tgz", + "integrity": "sha512-a0E+tKITgbTpqnPCdLDZ6YRxCKGBp4Arm0TKFG3aRQwRyll1JMHXWCFTQLexrn4AHwcdTaVCM6QK12DzgP6Okg==", "requires": { - "@ui5/builder": "^2.2.1", - "@ui5/fs": "^2.0.3", - "@ui5/logger": "^2.0.0", + "@ui5/builder": "^2.3.0", + "@ui5/fs": "^2.0.4", + "@ui5/logger": "^2.0.1", "body-parser": "^1.19.0", "compression": "^1.7.4", "connect-openui5": "^0.9.1", diff --git a/packages/project/package.json b/packages/project/package.json index b45ad93f6ff..5283e7cb5ea 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^2.3.0", "@ui5/logger": "^2.0.1", - "@ui5/server": "^2.2.5", + "@ui5/server": "^2.2.6", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From d30aea7a4ff665623b1dbf9f730601ea73a490a1 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 22 Oct 2020 15:54:42 +0000 Subject: [PATCH 0439/1272] [ui5-project]Release 2.2.3 --- packages/project/CHANGELOG.md | 11 +++++++++-- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 7240edf5948..033460ff3f1 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.3...HEAD). + + +## [v2.2.3] - 2020-10-22 +### Bug Fixes +- **Schema:** Add missing bundle section "name" [`ba2d601`](https://github.com/SAP/ui5-project/commit/ba2d6015b6a04af92edb8f1b779a229fe73b705a) + -## [v2.2.2] - 2020-09-14 +## [v2.2.2] - 2020-09-15 ### Bug Fixes - **ui5Framework.mergeTrees:** Do not abort merge if a project has already been processed [`264c353`](https://github.com/SAP/ui5-project/commit/264c353b6973bade57164aded4f10a668986482d) @@ -204,6 +210,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.2.3]: https://github.com/SAP/ui5-project/compare/v2.2.2...v2.2.3 [v2.2.2]: https://github.com/SAP/ui5-project/compare/v2.2.1...v2.2.2 [v2.2.1]: https://github.com/SAP/ui5-project/compare/v2.2.0...v2.2.1 [v2.2.0]: https://github.com/SAP/ui5-project/compare/v2.1.5...v2.2.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f9b88b60e46..d754d2f38f1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.2", + "version": "2.2.3", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 5283e7cb5ea..5def5cd2e5c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.2", + "version": "2.2.3", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 5b478400a97fe35ce67935e7c52d32eab99937b7 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 25 Oct 2020 03:21:06 +0000 Subject: [PATCH 0440/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 400 +++++++++++++++-------------- packages/project/package.json | 6 +- 2 files changed, 214 insertions(+), 192 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d754d2f38f1..18880934b45 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -340,9 +340,9 @@ } }, "@eslint/eslintrc": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.1.3.tgz", - "integrity": "sha512-4YVwPkANLeNtRjMekzux1ci8hIaH5eGKktGqR0d3LWsKNn5B2X/1Z6Trxy7jQXl9EBGE6Yj02O+t09FMeRllaA==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.0.tgz", + "integrity": "sha512-+cIGPCBdLCzqxdtwppswP+zTsH9BOIGzAeKfBIbtb4gW/giMlfMwP0HUSFfhzh20f9u8uZ8hOp62+4GPquTbwQ==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -568,26 +568,6 @@ "terser": "^5.3.5", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "@ui5/fs": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.4.tgz", - "integrity": "sha512-qyS6ybWUPmEcslotu+dRV33IisfOAwoy3otHXiLOSNjwhZuNBGFRXSSKwCIG00yxzu7m6lRpGjXpEbb4KTQGNg==", - "requires": { - "@ui5/logger": "^2.0.1", - "clone": "^2.1.0", - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "make-dir": "^3.1.0", - "micromatch": "^4.0.2", - "minimatch": "^3.0.3", - "mock-require": "^3.0.3", - "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.1", - "slash": "^3.0.0" - } - } } }, "@ui5/fs": { @@ -670,9 +650,9 @@ } }, "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.4.tgz", + "integrity": "sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ==", "dev": true }, "acorn-jsx": { @@ -978,29 +958,12 @@ "yargs": "^16.0.3" }, "dependencies": { - "acorn": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.4.tgz", - "integrity": "sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ==", - "dev": true - }, "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "cliui": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.3.tgz", - "integrity": "sha512-Gj3QHTkVMPKqwP3f7B4KPkBZRMR9r4rfi5bXFpg1a+Svvj8l7q5CnkBkVQzfxT5DFSsGk2+PascOgL0JYkL2kw==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, "debug": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", @@ -1010,35 +973,12 @@ "ms": "2.1.2" } }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -1047,44 +987,6 @@ "requires": { "ansi-regex": "^5.0.0" } - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.4.tgz", - "integrity": "sha512-deLOfD+RvFgrpAmSZgfGdWYE+OKyHcVHaRQ7NphG/63scpRvTHHeQMAxGGvaLVGJ+HYVcCXlzcTK0ZehFf+eHQ==", - "dev": true - }, - "yargs": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.1.0.tgz", - "integrity": "sha512-upWFJOmDdHN0syLuESuvXDmrRcWd1QafJolHskzaw79uZa7/x53gxQKiR07W59GWY1tFhhU/Th9DrtSfpS782g==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.2", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.3.tgz", - "integrity": "sha512-emOFRT9WVHw03QSvN5qor9QQT9+sw5vwxfYweivSMHTcAXPefwVae2FjO7JJjj8hCE4CzPOPeFM83VwT29HCww==", - "dev": true } } }, @@ -1675,14 +1577,14 @@ } }, "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.3.tgz", + "integrity": "sha512-Gj3QHTkVMPKqwP3f7B4KPkBZRMR9r4rfi5bXFpg1a+Svvj8l7q5CnkBkVQzfxT5DFSsGk2+PascOgL0JYkL2kw==", "dev": true, "requires": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" + "wrap-ansi": "^7.0.0" }, "dependencies": { "ansi-regex": { @@ -2691,13 +2593,13 @@ } }, "eslint": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.11.0.tgz", - "integrity": "sha512-G9+qtYVCHaDi1ZuWzBsOWo2wSwd70TXnU6UHA3cTYHp7gCTXZcpggWFoUVAMRarg68qtPoNfFbzPh+VdOgmwmw==", + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.12.0.tgz", + "integrity": "sha512-n5pEU27DRxCSlOhJ2rO57GDLcNsxO0LPpAbpFdh7xmcDmjmlGUfoyrsB3I7yYdQXO5N3gkSTiDrPSPNFiiirXA==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@eslint/eslintrc": "^0.1.3", + "@eslint/eslintrc": "^0.2.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2819,9 +2721,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.6.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.6.5.tgz", - "integrity": "sha512-obC3wi1/b5hsPLXa3ZDs571QXGqkVsphndMsIsVQzWRdZOaRbxdvGiKhLzzZytbRZAL1M1Bkdc/3Af7eNxJ/Hg==", + "version": "30.7.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.3.tgz", + "integrity": "sha512-slzJeKrm3vXabRYcFBpbUgWgdnATN9rNOFAr7IhmkxmR9Vk/6qN1c/IdvTqVSEctDRQ08chR+Lvk8fRayXgYZg==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -2902,6 +2804,12 @@ "eslint-visitor-keys": "^1.3.0" }, "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + }, "eslint-visitor-keys": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", @@ -3261,9 +3169,9 @@ } }, "fromentries": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.2.1.tgz", - "integrity": "sha512-Xu2Qh8yqYuDhQGOhD5iJGninErSfI9A3FrriD3tjUgV5VbJFeH8vfgZ9HnC6jWN80QDVNQK5vmxRAmEAp7Mevw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.0.tgz", + "integrity": "sha512-+pKvlQHvpxxSTF+tWZ4DjxD0Sz4G26EjAP4z7D2k8VLJ19hrLbSgaQLx/u2mVQn7hiA2s/3DyutOyFwTuDsRgA==", "dev": true }, "fs-minipass": { @@ -3845,6 +3753,14 @@ "ci-info": "^2.0.0" } }, + "is-core-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.0.0.tgz", + "integrity": "sha512-jq1AH6C8MuteOoBPwkxHafmByhL9j5q4OaPGdbuD+ZtQJVzH+i6E3BJDQcBA09k57i2Hh2yQbEG8yObZ0jdlWw==", + "requires": { + "has": "^1.0.3" + } + }, "is-date-object": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", @@ -4686,6 +4602,16 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", "dev": true + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, @@ -5120,6 +5046,23 @@ "yargs": "^15.0.2" }, "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -5130,6 +5073,18 @@ "path-exists": "^4.0.0" } }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -5162,6 +5117,66 @@ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, @@ -5809,9 +5824,9 @@ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, "pupa": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.0.1.tgz", - "integrity": "sha512-hEJH0s8PXLY/cdXh66tNEQGndDrIKNqNC5xmrysZy3i5C3oEoLna7YAOad+7u125+zH1HNXUmGEkrhb3c2VriA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.0.tgz", + "integrity": "sha512-Pj8EhJzFiPwnf4dEXpuUWwH8M/Yl4vpl4cN2RX1i3R77DWvbY5ZPKni7CCKkOYxz+XKt2fieemsV+WTZbIlYzg==", "dev": true, "requires": { "escape-goat": "^2.0.0" @@ -6089,10 +6104,11 @@ } }, "resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.18.1.tgz", + "integrity": "sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==", "requires": { + "is-core-module": "^2.0.0", "path-parse": "^1.0.6" } }, @@ -6659,21 +6675,63 @@ } }, "string.prototype.trimend": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", - "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.2.tgz", + "integrity": "sha512-8oAG/hi14Z4nOVP0z6mdiVZ/wqjDtWSLygMigTzAb+7aPEDTleeFf+WrF+alzecxIRkckkJVn+dTlwzJXORATw==", "requires": { "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "es-abstract": "^1.18.0-next.1" + }, + "dependencies": { + "es-abstract": { + "version": "1.18.0-next.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", + "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.0", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "string.prototype.trimstart": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", - "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.2.tgz", + "integrity": "sha512-7F6CdBTl5zyu30BJFdzSTlSlLPwODC23Od+iLoVH8X6+3fvDPPuBVVj9iaB1GOsSTSIgVfsfm27R2FGrAPznWg==", "requires": { "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "es-abstract": "^1.18.0-next.1" + }, + "dependencies": { + "es-abstract": { + "version": "1.18.0-next.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", + "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.0", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "string_decoder": { @@ -7455,9 +7513,9 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" }, "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, "requires": { "ansi-styles": "^4.0.0", @@ -7577,22 +7635,18 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.1.0.tgz", + "integrity": "sha512-upWFJOmDdHN0syLuESuvXDmrRcWd1QafJolHskzaw79uZa7/x53gxQKiR07W59GWY1tFhhU/Th9DrtSfpS782g==", "dev": true, "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" + "y18n": "^5.0.2", + "yargs-parser": "^20.2.2" }, "dependencies": { "ansi-regex": { @@ -7601,16 +7655,6 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, "get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", @@ -7623,30 +7667,6 @@ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, "string-width": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", @@ -7666,18 +7686,20 @@ "requires": { "ansi-regex": "^5.0.0" } + }, + "y18n": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.4.tgz", + "integrity": "sha512-deLOfD+RvFgrpAmSZgfGdWYE+OKyHcVHaRQ7NphG/63scpRvTHHeQMAxGGvaLVGJ+HYVcCXlzcTK0ZehFf+eHQ==", + "dev": true } } }, "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } + "version": "20.2.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.3.tgz", + "integrity": "sha512-emOFRT9WVHw03QSvN5qor9QQT9+sw5vwxfYweivSMHTcAXPefwVae2FjO7JJjj8hCE4CzPOPeFM83VwT29HCww==", + "dev": true }, "yazl": { "version": "2.5.1", diff --git a/packages/project/package.json b/packages/project/package.json index 5def5cd2e5c..0dc60dfc781 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", - "resolve": "^1.17.0", + "resolve": "^1.18.1", "semver": "^7.3.2", "string.prototype.matchall": "^4.0.2" }, @@ -127,9 +127,9 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^7.11.0", + "eslint": "^7.12.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.6.5", + "eslint-plugin-jsdoc": "^30.7.3", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From a40d7a8e8b5668c4f507e8ed10b559366a3a7ae9 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 1 Nov 2020 03:21:13 +0000 Subject: [PATCH 0441/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 134 ++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 69 insertions(+), 71 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 18880934b45..d6bcbff4ba4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -340,9 +340,9 @@ } }, "@eslint/eslintrc": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.0.tgz", - "integrity": "sha512-+cIGPCBdLCzqxdtwppswP+zTsH9BOIGzAeKfBIbtb4gW/giMlfMwP0HUSFfhzh20f9u8uZ8hOp62+4GPquTbwQ==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.1.tgz", + "integrity": "sha512-XRUeBZ5zBWLYgSANMpThFddrZZkEbGHgUdt5UJjZfnlN9BGCiUBrf+nvbRupSjMvqzwnQN0qwCmOxITt1cfywA==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -996,9 +996,9 @@ "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.1.tgz", - "integrity": "sha512-zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA==" + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" }, "balanced-match": { "version": "1.0.0", @@ -1252,6 +1252,15 @@ "write-file-atomic": "^3.0.0" } }, + "call-bind": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.0.tgz", + "integrity": "sha512-AEXsYIyyDY3MCzbwdhzG3Jx1R0J2wetQyUynn6dYHAO+bg8l1k7jwZtRv4ryryFs7EP+NDlikJlVe59jr0cM2w==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.0" + } + }, "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -2593,13 +2602,13 @@ } }, "eslint": { - "version": "7.12.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.12.0.tgz", - "integrity": "sha512-n5pEU27DRxCSlOhJ2rO57GDLcNsxO0LPpAbpFdh7xmcDmjmlGUfoyrsB3I7yYdQXO5N3gkSTiDrPSPNFiiirXA==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.12.1.tgz", + "integrity": "sha512-HlMTEdr/LicJfN08LB3nM1rRYliDXOmfoO4vj39xN6BLpFzF00hbwBoqHk8UcJ2M/3nlARZWy/mslvGEuZFvsg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@eslint/eslintrc": "^0.2.0", + "@eslint/eslintrc": "^0.2.1", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2721,9 +2730,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.7.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.3.tgz", - "integrity": "sha512-slzJeKrm3vXabRYcFBpbUgWgdnATN9rNOFAr7IhmkxmR9Vk/6qN1c/IdvTqVSEctDRQ08chR+Lvk8fRayXgYZg==", + "version": "30.7.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.5.tgz", + "integrity": "sha512-Fue8NQruLtniEuQSv3LO1rzQ+wOTX+nGaKPSiiNtkfJTUuYYXu255IvJBtMzV6bCfWe/AfPvPNHOV36l40hqjw==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -2991,9 +3000,9 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "fastq": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz", - "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.9.0.tgz", + "integrity": "sha512-i7FVWL8HhVY+CTkwFxkN2mk3h+787ixS5S63eb78diVRc1MCssarHq3W5cj0av7YDSwmaV928RNag+U1etRQ7w==", "requires": { "reusify": "^1.0.4" } @@ -3169,9 +3178,9 @@ } }, "fromentries": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.0.tgz", - "integrity": "sha512-+pKvlQHvpxxSTF+tWZ4DjxD0Sz4G26EjAP4z7D2k8VLJ19hrLbSgaQLx/u2mVQn7hiA2s/3DyutOyFwTuDsRgA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.1.tgz", + "integrity": "sha512-w4t/zm2J+uAcrpeKyW0VmYiIs3aqe/xKQ+2qwazVNZSCklQHhaVjk6XzKw5GtImq5thgL0IVRjGRAOastb08RQ==", "dev": true }, "fs-minipass": { @@ -3237,9 +3246,9 @@ "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==" }, "gensync": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true }, "get-caller-file": { @@ -3247,6 +3256,16 @@ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" }, + "get-intrinsic": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.1.tgz", + "integrity": "sha512-ZnWP+AmS1VUaLgTRy47+zKtjTxz+0xMpx3I52i+aalBK1QP19ggLF3Db89KJX7kjfOfP2eoa01qc++GwPgufPg==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, "get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", @@ -3601,9 +3620,9 @@ } }, "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true }, "iferr": { @@ -5201,35 +5220,14 @@ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" }, "object.assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.1.tgz", - "integrity": "sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "requires": { + "call-bind": "^1.0.0", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.0", "has-symbols": "^1.0.1", "object-keys": "^1.1.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } } }, "obuf": { @@ -5824,9 +5822,9 @@ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, "pupa": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.0.tgz", - "integrity": "sha512-Pj8EhJzFiPwnf4dEXpuUWwH8M/Yl4vpl4cN2RX1i3R77DWvbY5ZPKni7CCKkOYxz+XKt2fieemsV+WTZbIlYzg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", "dev": true, "requires": { "escape-goat": "^2.0.0" @@ -6196,9 +6194,9 @@ } }, "run-parallel": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", - "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==" + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.10.tgz", + "integrity": "sha512-zb/1OuZ6flOlH6tQyMPUrE3x3Ulxjlo9WIVXR4yVYi4H9UXQaeIsPbLn2R3O3vQCnDKkAl2qHiuocKKX4Tz/Sw==" }, "run-queue": { "version": "1.0.3", @@ -6366,9 +6364,9 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.0.tgz", - "integrity": "sha512-eSNXz1XMcGEMHw08NJXSyTHIu6qTCOiN8x9ODACmZpNQpr0aXTBXBnI4xTzQzR+TEpOmLiKowGf9flCuKIzsbw==", + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.1.tgz", + "integrity": "sha512-naPfsamB5KEE1aiioaoqJ6MEhdUs/2vtI5w1hPAXX/UwvoPjXcwh1m5HiKx0HGgKR8lQSoFIgY5jM6KK8VrS9w==", "dev": true, "requires": { "@sinonjs/commons": "^1.8.1", @@ -7091,9 +7089,9 @@ } }, "term-size": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.0.tgz", - "integrity": "sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", + "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", "dev": true }, "terser": { @@ -7382,9 +7380,9 @@ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" }, "v8-compile-cache": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz", - "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", + "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", "dev": true }, "validate-npm-package-license": { @@ -7688,9 +7686,9 @@ } }, "y18n": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.4.tgz", - "integrity": "sha512-deLOfD+RvFgrpAmSZgfGdWYE+OKyHcVHaRQ7NphG/63scpRvTHHeQMAxGGvaLVGJ+HYVcCXlzcTK0ZehFf+eHQ==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.5.tgz", + "integrity": "sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg==", "dev": true } } diff --git a/packages/project/package.json b/packages/project/package.json index 0dc60dfc781..3cb619374e3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,9 +127,9 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^7.12.0", + "eslint": "^7.12.1", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.7.3", + "eslint-plugin-jsdoc": "^30.7.5", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", @@ -140,7 +140,7 @@ "nyc": "^15.1.0", "open-cli": "^6.0.1", "rimraf": "^3.0.2", - "sinon": "^9.2.0", + "sinon": "^9.2.1", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From d52d9fc13d1695d373a4605c66dba2f6f3936859 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 3 Nov 2020 09:56:59 +0000 Subject: [PATCH 0442/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.3.0 to 2.4.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.4.0/CHANGELOG.md --- packages/project/package-lock.json | 101 +++++++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 61 insertions(+), 42 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d6bcbff4ba4..0311f099087 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -533,8 +533,7 @@ "@types/minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=", - "dev": true + "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=" }, "@types/normalize-package-data": { "version": "2.4.0", @@ -542,9 +541,9 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.3.0.tgz", - "integrity": "sha512-N+/Bou//fSdCNMfx5ASfpIpaJ9k3zNXMUq7F59qwJKUQZOg2if+hHWqdKSrEErqbKoiu1eevIexgvC3E8vHViw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.0.tgz", + "integrity": "sha512-XYkULG3P90mTbi95g67eZk0xSLqYvsMPmoEkYfL3pPuIxmZ3lf+a8NMa6a+KQcalRJNWfI0Q4crUwsroCkS8vw==", "requires": { "@ui5/fs": "^2.0.4", "@ui5/logger": "^2.0.1", @@ -559,13 +558,13 @@ "jsdoc": "^3.6.6", "less-openui5": "^0.8.7", "make-dir": "^3.1.0", - "pretty-data": "^0.40.0", + "minify-xml": "^2.1.2", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.2", "slash": "^3.0.0", - "terser": "^5.3.5", + "terser": "^5.3.8", "xml2js": "^0.4.23", "yazl": "^2.5.1" } @@ -1270,14 +1269,12 @@ "camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" }, "camelcase-keys": { "version": "6.2.2", "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", - "dev": true, "requires": { "camelcase": "^5.3.1", "map-obj": "^4.0.0", @@ -2022,14 +2019,12 @@ "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, "decamelize-keys": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", - "dev": true, "requires": { "decamelize": "^1.1.0", "map-obj": "^1.0.0" @@ -2038,8 +2033,7 @@ "map-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" } } }, @@ -3405,8 +3399,7 @@ "hard-rejection": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==" }, "has": { "version": "1.0.3", @@ -3691,8 +3684,7 @@ "indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" }, "infer-owner": { "version": "1.0.4", @@ -3879,8 +3871,7 @@ "is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" }, "is-plain-object": { "version": "5.0.0", @@ -4233,8 +4224,7 @@ "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" }, "klaw": { "version": "3.0.0", @@ -4519,8 +4509,7 @@ "map-obj": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", - "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", - "dev": true + "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==" }, "markdown-it": { "version": "10.0.0", @@ -4691,8 +4680,49 @@ "min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==" + }, + "minify-xml": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minify-xml/-/minify-xml-2.1.2.tgz", + "integrity": "sha512-tDoKi3gw9TIGr3pu6+m2BFwGd2fHyJPrAHJOkARE+1DKkYPMakdHnKDeOqKJGceWPobGeBXrBIAFxK86S/qWWQ==", + "requires": { + "meow": "^7.0.1" + }, + "dependencies": { + "meow": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-7.1.1.tgz", + "integrity": "sha512-GWHvA5QOcS412WCo8vwKDlTelGLsCGBVevQB5Kva961rmNfun0PCbv5+xta2kUMFJyR8/oWnn7ddeKdosbAPbA==", + "requires": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^2.5.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.13.1", + "yargs-parser": "^18.1.3" + } + }, + "type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==" + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } }, "minimalistic-assert": { "version": "1.0.1", @@ -4716,7 +4746,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dev": true, "requires": { "arrify": "^1.0.1", "is-plain-obj": "^1.1.0", @@ -4726,8 +4755,7 @@ "arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" } } }, @@ -5699,11 +5727,6 @@ "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", "dev": true }, - "pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" - }, "pretty-hrtime": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", @@ -5838,8 +5861,7 @@ "quick-lru": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", - "dev": true + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==" }, "random-int": { "version": "2.0.1", @@ -5973,7 +5995,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, "requires": { "indent-string": "^4.0.0", "strip-indent": "^3.0.0" @@ -6758,7 +6779,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, "requires": { "min-indent": "^1.0.0" } @@ -7200,8 +7220,7 @@ "trim-newlines": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", - "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", - "dev": true + "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==" }, "trim-off-newlines": { "version": "1.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 3cb619374e3..2f6ef080926 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.3.0", + "@ui5/builder": "^2.4.0", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.6", "ajv": "^6.12.6", From 40b9c9508e701800cbc1dd9e27bac6a40771e969 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 3 Nov 2020 19:02:48 +0000 Subject: [PATCH 0443/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.4.0 to 2.4.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.4.1/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0311f099087..62a153b2e75 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -541,9 +541,9 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.0.tgz", - "integrity": "sha512-XYkULG3P90mTbi95g67eZk0xSLqYvsMPmoEkYfL3pPuIxmZ3lf+a8NMa6a+KQcalRJNWfI0Q4crUwsroCkS8vw==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.1.tgz", + "integrity": "sha512-lAd3+yEjDJ4E/qNxh++bf1EbwUTKeMnLoP09ST69kA/SCpGT2wyeUryQTvjQ7GRyCLXrS3UL6NZV0EQe6bC1zw==", "requires": { "@ui5/fs": "^2.0.4", "@ui5/logger": "^2.0.1", @@ -558,7 +558,7 @@ "jsdoc": "^3.6.6", "less-openui5": "^0.8.7", "make-dir": "^3.1.0", - "minify-xml": "^2.1.2", + "minify-xml": "^2.1.3", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^3.0.2", @@ -4683,9 +4683,9 @@ "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==" }, "minify-xml": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minify-xml/-/minify-xml-2.1.2.tgz", - "integrity": "sha512-tDoKi3gw9TIGr3pu6+m2BFwGd2fHyJPrAHJOkARE+1DKkYPMakdHnKDeOqKJGceWPobGeBXrBIAFxK86S/qWWQ==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/minify-xml/-/minify-xml-2.1.3.tgz", + "integrity": "sha512-/u1Yn2emHMA3JG4Y17qDUtXbzCz8JKzNHXEtU3JH1mKBQD1BV4M78vwIS2YRoIV7sXTkxcCx9pXQHzwSMqLxOw==", "requires": { "meow": "^7.0.1" }, diff --git a/packages/project/package.json b/packages/project/package.json index 2f6ef080926..ec89dd5cb7c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.4.0", + "@ui5/builder": "^2.4.1", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.6", "ajv": "^6.12.6", From 69d8198d2a64962aef0fd459c14370f101a47d50 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 4 Nov 2020 18:12:05 +0000 Subject: [PATCH 0444/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.4.1 to 2.4.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.4.2/CHANGELOG.md --- packages/project/package-lock.json | 99 ++++++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 41 insertions(+), 60 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 62a153b2e75..954ab4fa85d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -533,7 +533,8 @@ "@types/minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=" + "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=", + "dev": true }, "@types/normalize-package-data": { "version": "2.4.0", @@ -541,9 +542,9 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.1.tgz", - "integrity": "sha512-lAd3+yEjDJ4E/qNxh++bf1EbwUTKeMnLoP09ST69kA/SCpGT2wyeUryQTvjQ7GRyCLXrS3UL6NZV0EQe6bC1zw==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.2.tgz", + "integrity": "sha512-zlFn0nFyKaUZrFbxT2A1JzMIOoidG3NPlhiL3AsceYXVm+k/lF7g2gQGFt8wxsQ1/fDXWxhpMpiTPoF19EJeNw==", "requires": { "@ui5/fs": "^2.0.4", "@ui5/logger": "^2.0.1", @@ -558,7 +559,7 @@ "jsdoc": "^3.6.6", "less-openui5": "^0.8.7", "make-dir": "^3.1.0", - "minify-xml": "^2.1.3", + "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^3.0.2", @@ -1269,12 +1270,14 @@ "camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true }, "camelcase-keys": { "version": "6.2.2", "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, "requires": { "camelcase": "^5.3.1", "map-obj": "^4.0.0", @@ -2019,12 +2022,14 @@ "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true }, "decamelize-keys": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, "requires": { "decamelize": "^1.1.0", "map-obj": "^1.0.0" @@ -2033,7 +2038,8 @@ "map-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true } } }, @@ -3399,7 +3405,8 @@ "hard-rejection": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==" + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true }, "has": { "version": "1.0.3", @@ -3684,7 +3691,8 @@ "indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true }, "infer-owner": { "version": "1.0.4", @@ -3871,7 +3879,8 @@ "is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true }, "is-plain-object": { "version": "5.0.0", @@ -4224,7 +4233,8 @@ "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true }, "klaw": { "version": "3.0.0", @@ -4509,7 +4519,8 @@ "map-obj": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", - "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==" + "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", + "dev": true }, "markdown-it": { "version": "10.0.0", @@ -4680,49 +4691,8 @@ "min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==" - }, - "minify-xml": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/minify-xml/-/minify-xml-2.1.3.tgz", - "integrity": "sha512-/u1Yn2emHMA3JG4Y17qDUtXbzCz8JKzNHXEtU3JH1mKBQD1BV4M78vwIS2YRoIV7sXTkxcCx9pXQHzwSMqLxOw==", - "requires": { - "meow": "^7.0.1" - }, - "dependencies": { - "meow": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-7.1.1.tgz", - "integrity": "sha512-GWHvA5QOcS412WCo8vwKDlTelGLsCGBVevQB5Kva961rmNfun0PCbv5+xta2kUMFJyR8/oWnn7ddeKdosbAPbA==", - "requires": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" - } - }, - "type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==" - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true }, "minimalistic-assert": { "version": "1.0.1", @@ -4746,6 +4716,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, "requires": { "arrify": "^1.0.1", "is-plain-obj": "^1.1.0", @@ -4755,7 +4726,8 @@ "arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true } } }, @@ -5727,6 +5699,11 @@ "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", "dev": true }, + "pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" + }, "pretty-hrtime": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", @@ -5861,7 +5838,8 @@ "quick-lru": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==" + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true }, "random-int": { "version": "2.0.1", @@ -5995,6 +5973,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, "requires": { "indent-string": "^4.0.0", "strip-indent": "^3.0.0" @@ -6779,6 +6758,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, "requires": { "min-indent": "^1.0.0" } @@ -7220,7 +7200,8 @@ "trim-newlines": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", - "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==" + "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", + "dev": true }, "trim-off-newlines": { "version": "1.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index ec89dd5cb7c..ab341a88b16 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.4.1", + "@ui5/builder": "^2.4.2", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.6", "ajv": "^6.12.6", From d576bb82ecef2b142d6c4662fd374c5ef65ee654 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 6 Nov 2020 12:02:17 +0100 Subject: [PATCH 0445/1272] [ui5-project][PERF] Reduce install size by removing 'string.prototype.matchall' dependency --- .../project/lib/validation/ValidationError.js | 12 +- packages/project/package-lock.json | 234 ------------------ packages/project/package.json | 3 +- 3 files changed, 6 insertions(+), 243 deletions(-) diff --git a/packages/project/lib/validation/ValidationError.js b/packages/project/lib/validation/ValidationError.js index 3ecd54f06d2..609891f782d 100644 --- a/packages/project/lib/validation/ValidationError.js +++ b/packages/project/lib/validation/ValidationError.js @@ -1,6 +1,5 @@ const chalk = require("chalk"); const escapeStringRegExp = require("escape-string-regexp"); -const matchAll = require("string.prototype.matchall"); /** * Error class for validation of project configuration. @@ -140,9 +139,9 @@ class ValidationError extends Error { let currentIndex; if (yaml.documentIndex) { const matchDocumentSeparator = /^---/gm; - const documents = matchAll(yaml.source, matchDocumentSeparator); let currentDocumentIndex = 0; - for (const document of documents) { + let document; + while ((document = matchDocumentSeparator.exec(yaml.source)) !== null) { // If the first separator is not at the beginning of the file // we are already at document index 1 // Using String#trim() to remove any whitespace characters @@ -168,8 +167,6 @@ class ValidationError extends Error { currentSubstring = yaml.source; } - - const matchArrayElement = /(^|\r?\n)([ ]*-[^\r\n]*)/g; const matchArrayElementIndentation = /([ ]*)-/; for (let i = 0; i < objectPath.length; i++) { @@ -193,11 +190,12 @@ class ValidationError extends Error { // This currently only works for arrays defined with "-" in multiple lines. // Arrays using square brackets are not supported. + const matchArrayElement = /(^|\r?\n)([ ]*-[^\r\n]*)/g; const arrayIndex = parseInt(property); - const arrayIndicators = matchAll(currentSubstring, matchArrayElement); let a = 0; let firstIndentation = -1; - for (const match of arrayIndicators) { + let match; + while ((match = matchArrayElement.exec(currentSubstring)) !== null) { const indentationMatch = match[2].match(matchArrayElementIndentation); if (!indentationMatch) { return {line: -1, column: -1}; diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 954ab4fa85d..eb8530f26ec 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1252,15 +1252,6 @@ "write-file-atomic": "^3.0.0" } }, - "call-bind": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.0.tgz", - "integrity": "sha512-AEXsYIyyDY3MCzbwdhzG3Jx1R0J2wetQyUynn6dYHAO+bg8l1k7jwZtRv4ryryFs7EP+NDlikJlVe59jr0cM2w==", - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.0" - } - }, "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -2108,14 +2099,6 @@ "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", "dev": true }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "requires": { - "object-keys": "^1.0.12" - } - }, "del": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", @@ -2414,34 +2397,6 @@ "is-arrayish": "^0.2.1" } }, - "es-abstract": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", - "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, "es5-ext": { "version": "0.10.53", "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", @@ -3256,16 +3211,6 @@ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" }, - "get-intrinsic": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.1.tgz", - "integrity": "sha512-ZnWP+AmS1VUaLgTRy47+zKtjTxz+0xMpx3I52i+aalBK1QP19ggLF3Db89KJX7kjfOfP2eoa01qc++GwPgufPg==", - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - } - }, "get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", @@ -3430,11 +3375,6 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" - }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -3718,16 +3658,6 @@ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, - "internal-slot": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.2.tgz", - "integrity": "sha512-2cQNfwhAfJIkU4KZPkDI+Gj5yNNnbqi40W9Gge6dfnk4TocEVm00B3bdiL+JINrbGJil2TeHvM4rETGzk/f/0g==", - "requires": { - "es-abstract": "^1.17.0-next.1", - "has": "^1.0.3", - "side-channel": "^1.0.2" - } - }, "ip": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", @@ -3758,11 +3688,6 @@ "binary-extensions": "^2.0.0" } }, - "is-callable": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", - "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==" - }, "is-ci": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", @@ -3780,11 +3705,6 @@ "has": "^1.0.3" } }, - "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" - }, "is-docker": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz", @@ -3834,11 +3754,6 @@ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true }, - "is-negative-zero": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.0.tgz", - "integrity": "sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE=" - }, "is-npm": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", @@ -3894,28 +3809,12 @@ "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", "dev": true }, - "is-regex": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", - "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", - "requires": { - "has-symbols": "^1.0.1" - } - }, "is-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", "dev": true }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "requires": { - "has-symbols": "^1.0.1" - } - }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -5209,27 +5108,6 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, - "object-inspect": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", - "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==" - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" - }, - "object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - } - }, "obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", @@ -5979,15 +5857,6 @@ "strip-indent": "^3.0.0" } }, - "regexp.prototype.flags": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", - "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, "regexpp": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", @@ -6322,36 +6191,6 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, - "side-channel": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.3.tgz", - "integrity": "sha512-A6+ByhlLkksFoUepsGxfj5x1gTSrs+OydsRptUxeNCabQpCFUvcwIczgOigI8vhY/OJCnPnyE9rGiwgvr9cS1g==", - "requires": { - "es-abstract": "^1.18.0-next.0", - "object-inspect": "^1.8.0" - }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } - } - }, "sigmund": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", @@ -6659,79 +6498,6 @@ "strip-ansi": "^3.0.0" } }, - "string.prototype.matchall": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.2.tgz", - "integrity": "sha512-N/jp6O5fMf9os0JU3E72Qhf590RSRZU/ungsL/qJUYVTNv7hTG0P/dbPjxINVN9jpscu3nzYwKESU3P3RY5tOg==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0", - "has-symbols": "^1.0.1", - "internal-slot": "^1.0.2", - "regexp.prototype.flags": "^1.3.0", - "side-channel": "^1.0.2" - } - }, - "string.prototype.trimend": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.2.tgz", - "integrity": "sha512-8oAG/hi14Z4nOVP0z6mdiVZ/wqjDtWSLygMigTzAb+7aPEDTleeFf+WrF+alzecxIRkckkJVn+dTlwzJXORATw==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } - } - }, - "string.prototype.trimstart": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.2.tgz", - "integrity": "sha512-7F6CdBTl5zyu30BJFdzSTlSlLPwODC23Od+iLoVH8X6+3fvDPPuBVVj9iaB1GOsSTSIgVfsfm27R2FGrAPznWg==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } - } - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index ab341a88b16..a98093c36c1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,8 +118,7 @@ "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", "resolve": "^1.18.1", - "semver": "^7.3.2", - "string.prototype.matchall": "^4.0.2" + "semver": "^7.3.2" }, "devDependencies": { "ava": "^3.13.0", From 705e6692621ad576a56994b313141ce869a9b383 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 4 Nov 2020 18:34:33 +0100 Subject: [PATCH 0446/1272] [ui5-project][PERF] validator: Lazy load dependencies - Only require modules / dependencies when needed - Create singleton validator instance only on first usage --- packages/project/lib/validation/validator.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/validation/validator.js b/packages/project/lib/validation/validator.js index dc2a08e3fb5..bdee5de46da 100644 --- a/packages/project/lib/validation/validator.js +++ b/packages/project/lib/validation/validator.js @@ -1,11 +1,7 @@ -const Ajv = require("ajv"); -const ajvErrors = require("ajv-errors"); const path = require("path"); const {promisify} = require("util"); const readFile = promisify(require("fs").readFile); -const ValidationError = require("./ValidationError"); - async function loadSchema(schemaPath) { const filePath = schemaPath.replace("http://ui5.sap/schema/", ""); const schemaFile = await readFile(path.join(__dirname, "schema", filePath), {encoding: "utf8"}); @@ -18,11 +14,13 @@ async function loadSchema(schemaPath) { */ class Validator { constructor() { + const Ajv = require("ajv"); this.ajv = new Ajv({ allErrors: true, jsonPointers: true, loadSchema }); + const ajvErrors = require("ajv-errors"); ajvErrors(this.ajv); } @@ -41,6 +39,7 @@ class Validator { const fnValidate = await this._compileSchema(); const valid = fnValidate(config); if (!valid) { + const ValidationError = require("./ValidationError"); throw new ValidationError({ errors: fnValidate.errors, schema: fnValidate.schema, @@ -51,7 +50,7 @@ class Validator { } } -const validator = new Validator(); +let validator; /** * @public @@ -77,6 +76,9 @@ module.exports = { * @public */ validate: async (options) => { + if (!validator) { + validator = new Validator(); + } await validator.validate(options); }, _Validator: Validator // For testing only From cfe9a8de1c561ff8b721c828f3e79e8ac7825160 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 6 Nov 2020 15:05:12 +0000 Subject: [PATCH 0447/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.4.2 to 2.4.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.4.3/CHANGELOG.md --- packages/project/package-lock.json | 58 +++++++++++++++++++++++++++--- packages/project/package.json | 2 +- 2 files changed, 54 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index eb8530f26ec..e2dc8186751 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -542,11 +542,11 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, "@ui5/builder": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.2.tgz", - "integrity": "sha512-zlFn0nFyKaUZrFbxT2A1JzMIOoidG3NPlhiL3AsceYXVm+k/lF7g2gQGFt8wxsQ1/fDXWxhpMpiTPoF19EJeNw==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.3.tgz", + "integrity": "sha512-+S72/r0B41VbTfmikKeREnWwNi0Lr4T60C46Vepx9L+U9VKrwaxD4owfq5ctF1P5ESyXH3aTHfMUCzy2MJKjrg==", "requires": { - "@ui5/fs": "^2.0.4", + "@ui5/fs": "^2.0.5", "@ui5/logger": "^2.0.1", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", @@ -557,7 +557,7 @@ "globby": "^11.0.1", "graceful-fs": "^4.2.4", "jsdoc": "^3.6.6", - "less-openui5": "^0.8.7", + "less-openui5": "^0.9.0", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", @@ -568,6 +568,54 @@ "terser": "^5.3.8", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "@ui5/fs": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.5.tgz", + "integrity": "sha512-jLkECzETgqUiRx9UBiJInaPQts7k+4tw9XUYVmvlXDGyY5kKJwA0RX0gqzVzAJeYgW+EvnwU1qHy9L0J0i1vTg==", + "requires": { + "@ui5/logger": "^2.0.1", + "clone": "^2.1.0", + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "make-dir": "^3.1.0", + "micromatch": "^4.0.2", + "minimatch": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^2.0.1", + "slash": "^3.0.0" + } + }, + "css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", + "requires": { + "inherits": "^2.0.4", + "source-map": "^0.6.1", + "source-map-resolve": "^0.6.0" + } + }, + "less-openui5": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.9.0.tgz", + "integrity": "sha512-RwZJ7ZXEJwv2HTeuZp6JJzfbZFMlMyXyWuqH95n+roDy+8EpI3nQdvMhxYG5fzciJ+c5ACrNhoZ7Nv2xqkEmig==", + "requires": { + "clone": "^2.1.0", + "css": "^3.0.0", + "mime": "^1.6.0" + } + }, + "source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + } } }, "@ui5/fs": { diff --git a/packages/project/package.json b/packages/project/package.json index a98093c36c1..60d9481d21e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.4.2", + "@ui5/builder": "^2.4.3", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.6", "ajv": "^6.12.6", From 452bfcfd894a9615e2ed1ef0789be2c5de0100e3 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 6 Nov 2020 15:08:21 +0000 Subject: [PATCH 0448/1272] [ui5-project]Release 2.2.4 --- packages/project/CHANGELOG.md | 10 +++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 033460ff3f1..0f0b259b864 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,14 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.4...HEAD). + + +## [v2.2.4] - 2020-11-06 +### Performance Improvements +- Reduce install size by removing 'string.prototype.matchall' dependency [`b69d75e`](https://github.com/SAP/ui5-project/commit/b69d75e740bfc594668ea73273bb03fdd40a4ce2) +- **validator:** Lazy load dependencies [`609346b`](https://github.com/SAP/ui5-project/commit/609346b2b1bb0417fde36a35ec43e9970c68504f) + ## [v2.2.3] - 2020-10-22 @@ -210,6 +217,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.2.4]: https://github.com/SAP/ui5-project/compare/v2.2.3...v2.2.4 [v2.2.3]: https://github.com/SAP/ui5-project/compare/v2.2.2...v2.2.3 [v2.2.2]: https://github.com/SAP/ui5-project/compare/v2.2.1...v2.2.2 [v2.2.1]: https://github.com/SAP/ui5-project/compare/v2.2.0...v2.2.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e2dc8186751..fc36971efdd 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.3", + "version": "2.2.4", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 60d9481d21e..caa6ea97112 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.3", + "version": "2.2.4", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 9953c431fd06075744a60bbf66472f73111963f9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 6 Nov 2020 16:00:41 +0000 Subject: [PATCH 0449/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.6 to 2.2.7 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.7/CHANGELOG.md --- packages/project/package-lock.json | 159 ++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 89 insertions(+), 72 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fc36971efdd..42e084633aa 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -619,9 +619,9 @@ } }, "@ui5/fs": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.4.tgz", - "integrity": "sha512-qyS6ybWUPmEcslotu+dRV33IisfOAwoy3otHXiLOSNjwhZuNBGFRXSSKwCIG00yxzu7m6lRpGjXpEbb4KTQGNg==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.5.tgz", + "integrity": "sha512-jLkECzETgqUiRx9UBiJInaPQts7k+4tw9XUYVmvlXDGyY5kKJwA0RX0gqzVzAJeYgW+EvnwU1qHy9L0J0i1vTg==", "requires": { "@ui5/logger": "^2.0.1", "clone": "^2.1.0", @@ -630,7 +630,6 @@ "make-dir": "^3.1.0", "micromatch": "^4.0.2", "minimatch": "^3.0.3", - "mock-require": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^2.0.1", "slash": "^3.0.0" @@ -645,16 +644,16 @@ } }, "@ui5/server": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.6.tgz", - "integrity": "sha512-a0E+tKITgbTpqnPCdLDZ6YRxCKGBp4Arm0TKFG3aRQwRyll1JMHXWCFTQLexrn4AHwcdTaVCM6QK12DzgP6Okg==", + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.7.tgz", + "integrity": "sha512-cnn09YuUEy0bddkDRiZ4Yw5xlNZdSylx/wlRqXq+rI1hNZfkUJRBv2KzK+ZIOYQHkWy9j12XNH6n/SAsyUvMUg==", "requires": { - "@ui5/builder": "^2.3.0", - "@ui5/fs": "^2.0.4", + "@ui5/builder": "^2.4.3", + "@ui5/fs": "^2.0.5", "@ui5/logger": "^2.0.1", "body-parser": "^1.19.0", "compression": "^1.7.4", - "connect-openui5": "^0.9.1", + "connect-openui5": "^0.10.0", "cors": "^2.8.5", "devcert-sanscache": "^0.4.8", "escape-html": "^1.0.3", @@ -912,6 +911,7 @@ "version": "0.2.4", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, "requires": { "safer-buffer": "~2.1.0" } @@ -919,7 +919,8 @@ "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true }, "astral-regex": { "version": "2.0.0", @@ -935,7 +936,8 @@ "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true }, "atob": { "version": "2.1.2", @@ -1041,12 +1043,14 @@ "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true }, "aws4": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true }, "balanced-match": { "version": "1.0.0", @@ -1057,6 +1061,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, "requires": { "tweetnacl": "^0.14.3" } @@ -1326,7 +1331,8 @@ "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true }, "catharsis": { "version": "0.8.11", @@ -1714,6 +1720,7 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, "requires": { "delayed-stream": "~1.0.0" } @@ -1832,16 +1839,16 @@ } }, "connect-openui5": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.9.1.tgz", - "integrity": "sha512-ASyhFawqwKhqmRz3TRAUEBn0GoxBbio6XOlWuSSxq18xaQue8yiLOAnyRNT0aB0nlWlCb08OnkV5losPiaW3SQ==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.10.0.tgz", + "integrity": "sha512-vu/2K9+BrEKSO0+pvNGD87QQJB1PxqX70CmZrZ7URcQHWblXDMZVLSCclvPUYDmSJOkLn42SHIlIs0TukrQZ3w==", "requires": { "async": "^3.2.0", "cookie": "^0.4.1", "extend": "^3.0.0", "glob": "^7.1.6", "http-proxy": "^1.18.1", - "less-openui5": "^0.8.7", + "less-openui5": "^0.9.0", "set-cookie-parser": "^2.4.6" } }, @@ -1984,14 +1991,13 @@ "dev": true }, "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", "requires": { - "inherits": "^2.0.3", + "inherits": "^2.0.4", "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" + "source-map-resolve": "^0.6.0" } }, "css-select": { @@ -2037,6 +2043,7 @@ "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, "requires": { "assert-plus": "^1.0.0" } @@ -2166,7 +2173,8 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true }, "delegates": { "version": "1.0.0", @@ -2323,6 +2331,7 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, "requires": { "jsbn": "~0.1.0", "safer-buffer": "^2.1.0" @@ -2966,7 +2975,8 @@ "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true }, "fast-deep-equal": { "version": "3.1.3", @@ -3149,12 +3159,14 @@ "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true }, "form-data": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, "requires": { "asynckit": "^0.4.0", "combined-stream": "^1.0.6", @@ -3257,7 +3269,8 @@ "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true }, "get-package-type": { "version": "0.1.0", @@ -3288,6 +3301,7 @@ "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, "requires": { "assert-plus": "^1.0.0" } @@ -3384,12 +3398,14 @@ "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true }, "har-validator": { "version": "5.1.5", "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "dev": true, "requires": { "ajv": "^6.12.3", "har-schema": "^2.0.0" @@ -3561,6 +3577,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, "requires": { "assert-plus": "^1.0.0", "jsprim": "^1.2.2", @@ -3866,7 +3883,8 @@ "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true }, "is-windows": { "version": "1.0.2", @@ -3902,7 +3920,8 @@ "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true }, "istanbul-lib-coverage": { "version": "3.0.0", @@ -4058,7 +4077,8 @@ "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true }, "jsdoc": { "version": "3.6.6", @@ -4119,7 +4139,8 @@ "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true }, "json-schema-traverse": { "version": "0.4.1", @@ -4135,7 +4156,8 @@ "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true }, "json5": { "version": "2.1.3", @@ -4155,6 +4177,7 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", @@ -4207,15 +4230,13 @@ "dev": true }, "less-openui5": { - "version": "0.8.7", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.8.7.tgz", - "integrity": "sha512-U5OmMVE4Lkke4RHSSKDTe55P5+6lKtiK3ovRqjkXx0c+iYqEfwQTa88qlo33u7ULJ6lhVWUF0fuu9gKRAaiGfg==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.9.0.tgz", + "integrity": "sha512-RwZJ7ZXEJwv2HTeuZp6JJzfbZFMlMyXyWuqH95n+roDy+8EpI3nQdvMhxYG5fzciJ+c5ACrNhoZ7Nv2xqkEmig==", "requires": { "clone": "^2.1.0", - "css": "^2.2.1", - "mime": "^1.6.0", - "object-assign": "^4.0.1", - "request": "^2.88.2" + "css": "^3.0.0", + "mime": "^1.6.0" } }, "levn": { @@ -4721,6 +4742,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", + "dev": true, "requires": { "get-caller-file": "^1.0.2", "normalize-path": "^2.1.1" @@ -4864,6 +4886,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, "requires": { "remove-trailing-separator": "^1.0.1" } @@ -5149,7 +5172,8 @@ "oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true }, "object-assign": { "version": "4.1.1", @@ -5518,7 +5542,8 @@ "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true }, "picomatch": { "version": "2.2.2", @@ -5710,7 +5735,8 @@ "psl": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true }, "pump": { "version": "3.0.0", @@ -5759,7 +5785,8 @@ "qs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true }, "quick-lru": { "version": "4.0.1", @@ -5947,7 +5974,8 @@ "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true }, "replacestream": { "version": "4.0.3", @@ -5970,6 +5998,7 @@ "version": "2.88.2", "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, "requires": { "aws-sign2": "~0.7.0", "aws4": "^1.8.0", @@ -6042,11 +6071,6 @@ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" - }, "responselike": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", @@ -6328,15 +6352,12 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", "requires": { "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "decode-uri-component": "^0.2.0" } }, "source-map-support": { @@ -6348,11 +6369,6 @@ "source-map": "^0.6.0" } }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" - }, "spawn-wrap": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", @@ -6480,6 +6496,7 @@ "version": "1.16.1", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, "requires": { "asn1": "~0.2.3", "assert-plus": "^1.0.0", @@ -7001,6 +7018,7 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, "requires": { "psl": "^1.1.28", "punycode": "^2.1.1" @@ -7027,6 +7045,7 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, "requires": { "safe-buffer": "^5.0.1" } @@ -7034,7 +7053,8 @@ "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true }, "type": { "version": "1.2.0", @@ -7164,11 +7184,6 @@ "punycode": "^2.1.0" } }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" - }, "url-parse-lax": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", @@ -7191,7 +7206,8 @@ "uuid": { "version": "3.4.0", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true }, "v8-compile-cache": { "version": "2.2.0", @@ -7225,6 +7241,7 @@ "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, "requires": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index caa6ea97112..65512a7de08 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^2.4.3", "@ui5/logger": "^2.0.1", - "@ui5/server": "^2.2.6", + "@ui5/server": "^2.2.7", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From f7f1566bda11c71f8b4971be31088260209b8641 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 8 Nov 2020 03:21:00 +0000 Subject: [PATCH 0450/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 233 ++++++++++------------------- packages/project/package.json | 4 +- 2 files changed, 82 insertions(+), 155 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 42e084633aa..c7c6d000bc4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -66,12 +66,12 @@ } }, "@babel/generator": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.1.tgz", - "integrity": "sha512-DB+6rafIdc9o72Yc3/Ph5h+6hUjeOp66pF0naQBgUFFuPqzQwIlPTm3xZR7YNvduIMtkDIj2t21LSQwnbCrXvg==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.5.tgz", + "integrity": "sha512-m16TQQJ8hPt7E+OS/XVQg/7U184MLXtvuGbCdA7na61vha+ImkyyNM/9DDA0unYCVZn3ZOhng+qz48/KBOT96A==", "dev": true, "requires": { - "@babel/types": "^7.12.1", + "@babel/types": "^7.12.5", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -114,12 +114,12 @@ } }, "@babel/helper-module-imports": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.1.tgz", - "integrity": "sha512-ZeC1TlMSvikvJNy1v/wPIazCu3NdOwgYZLIkmIyAsGhqkNpiDoQQRmaCK8YP4Pq3GPTLPV9WXaPCJKvx06JxKA==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.5.tgz", + "integrity": "sha512-SR713Ogqg6++uexFRORf/+nPXMmWIn80TALu0uaFb+iQIUoR7bOC7zBWyzBs5b3tBBJXuyD0cRu1F15GyzjOWA==", "dev": true, "requires": { - "@babel/types": "^7.12.1" + "@babel/types": "^7.12.5" } }, "@babel/helper-module-transforms": { @@ -149,15 +149,15 @@ } }, "@babel/helper-replace-supers": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.1.tgz", - "integrity": "sha512-zJjTvtNJnCFsCXVi5rUInstLd/EIVNmIKA1Q9ynESmMBWPWd+7sdR+G4/wdu+Mppfep0XLyG2m7EBPvjCeFyrw==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.5.tgz", + "integrity": "sha512-5YILoed0ZyIpF4gKcpZitEnXEJ9UoDRki1Ey6xz46rxOzfNMAhVIJMoune1hmPVxh40LRv1+oafz7UsWX+vyWA==", "dev": true, "requires": { "@babel/helper-member-expression-to-functions": "^7.12.1", "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/traverse": "^7.12.1", - "@babel/types": "^7.12.1" + "@babel/traverse": "^7.12.5", + "@babel/types": "^7.12.5" } }, "@babel/helper-simple-access": { @@ -184,14 +184,14 @@ "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==" }, "@babel/helpers": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.1.tgz", - "integrity": "sha512-9JoDSBGoWtmbay98efmT2+mySkwjzeFeAL9BuWNoVQpkPFQF8SIIFUfY5os9u8wVzglzoiPRSW7cuJmBDUt43g==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.5.tgz", + "integrity": "sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA==", "dev": true, "requires": { "@babel/template": "^7.10.4", - "@babel/traverse": "^7.12.1", - "@babel/types": "^7.12.1" + "@babel/traverse": "^7.12.5", + "@babel/types": "^7.12.5" } }, "@babel/highlight": { @@ -256,9 +256,9 @@ } }, "@babel/parser": { - "version": "7.12.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.3.tgz", - "integrity": "sha512-kFsOS0IbsuhO5ojF8Hc8z/8vEIOkylVBrjiZUbLTE3XFe0Qi+uu6HjzQixkFaqr0ZPAMZcBVxEwmsnsLPZ2Xsw==" + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.5.tgz", + "integrity": "sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ==" }, "@babel/template": { "version": "7.10.4", @@ -272,17 +272,17 @@ } }, "@babel/traverse": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.1.tgz", - "integrity": "sha512-MA3WPoRt1ZHo2ZmoGKNqi20YnPt0B1S0GTZEPhhd+hw2KGUzBlHuVunj6K4sNuK+reEvyiPwtp0cpaqLzJDmAw==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.5.tgz", + "integrity": "sha512-xa15FbQnias7z9a62LwYAA5SZZPkHIXpd42C6uW68o8uTuua96FHZy1y61Va5P/i83FAAcMpW8+A/QayntzuqA==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.1", + "@babel/generator": "^7.12.5", "@babel/helper-function-name": "^7.10.4", "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.12.1", - "@babel/types": "^7.12.1", + "@babel/parser": "^7.12.5", + "@babel/types": "^7.12.5", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" @@ -312,9 +312,9 @@ } }, "@babel/types": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.1.tgz", - "integrity": "sha512-BzSY3NJBKM4kyatSOWh3D/JJ2O3CVzBybHWxtgxnggaxEuaSTTDqeiSb/xk9lrkw2Tbqyivw5ZU4rT+EfznQsA==", + "version": "7.12.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.6.tgz", + "integrity": "sha512-hwyjw6GvjBLiyy3W0YQf0Z5Zf4NpYejUnKFcfcUhZCSffoBBp30w6wP2Wn6pk31jMYZvcOrB/1b7cGXvEoKogA==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.10.4", @@ -568,54 +568,6 @@ "terser": "^5.3.8", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "@ui5/fs": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.5.tgz", - "integrity": "sha512-jLkECzETgqUiRx9UBiJInaPQts7k+4tw9XUYVmvlXDGyY5kKJwA0RX0gqzVzAJeYgW+EvnwU1qHy9L0J0i1vTg==", - "requires": { - "@ui5/logger": "^2.0.1", - "clone": "^2.1.0", - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "make-dir": "^3.1.0", - "micromatch": "^4.0.2", - "minimatch": "^3.0.3", - "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.1", - "slash": "^3.0.0" - } - }, - "css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "requires": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - } - }, - "less-openui5": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.9.0.tgz", - "integrity": "sha512-RwZJ7ZXEJwv2HTeuZp6JJzfbZFMlMyXyWuqH95n+roDy+8EpI3nQdvMhxYG5fzciJ+c5ACrNhoZ7Nv2xqkEmig==", - "requires": { - "clone": "^2.1.0", - "css": "^3.0.0", - "mime": "^1.6.0" - } - }, - "source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - } } }, "@ui5/fs": { @@ -832,14 +784,6 @@ "requires": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" - }, - "dependencies": { - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - } } }, "append-transform": { @@ -1098,13 +1042,6 @@ "qs": "6.7.0", "raw-body": "2.4.0", "type-is": "~1.6.17" - }, - "dependencies": { - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" - } } }, "boolbase": { @@ -1388,14 +1325,6 @@ "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.5.0" - }, - "dependencies": { - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - } } }, "chokidar-cli": { @@ -1457,12 +1386,6 @@ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -2614,9 +2537,9 @@ } }, "eslint": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.12.1.tgz", - "integrity": "sha512-HlMTEdr/LicJfN08LB3nM1rRYliDXOmfoO4vj39xN6BLpFzF00hbwBoqHk8UcJ2M/3nlARZWy/mslvGEuZFvsg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.13.0.tgz", + "integrity": "sha512-uCORMuOO8tUzJmsdRtrvcGq5qposf7Rw0LwkTJkoDbOycVQtQjmnhZSuLQnozLE4TmAzlMVV45eCHmQ1OpDKUQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2742,9 +2665,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.7.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.5.tgz", - "integrity": "sha512-Fue8NQruLtniEuQSv3LO1rzQ+wOTX+nGaKPSiiNtkfJTUuYYXu255IvJBtMzV6bCfWe/AfPvPNHOV36l40hqjw==", + "version": "30.7.7", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.7.tgz", + "integrity": "sha512-DmVMJC2AbpYX7X1KhnVT1a9ex1AUvG+q9G8i6hzjp3cpjW8vmKQTUmZnRS0//W+7HvMqeb+eXPANdCOzGVVZBQ==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -2944,11 +2867,6 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" } } }, @@ -3193,9 +3111,9 @@ } }, "fromentries": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.1.tgz", - "integrity": "sha512-w4t/zm2J+uAcrpeKyW0VmYiIs3aqe/xKQ+2qwazVNZSCklQHhaVjk6XzKw5GtImq5thgL0IVRjGRAOastb08RQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", + "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==", "dev": true }, "fs-minipass": { @@ -3267,9 +3185,9 @@ "dev": true }, "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, "get-package-type": { @@ -3655,9 +3573,9 @@ } }, "import-fresh": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", - "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.2.tgz", + "integrity": "sha512-cTPNrlvJT6twpYy+YmKUKrTSjWFs3bjYjAhCwm+z4EOCubZxAuO+hHpRN64TqjEaYSHs7tJAE0w1CKMGmsG/lw==", "dev": true, "requires": { "parent-module": "^1.0.0", @@ -3763,9 +3681,9 @@ } }, "is-core-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.0.0.tgz", - "integrity": "sha512-jq1AH6C8MuteOoBPwkxHafmByhL9j5q4OaPGdbuD+ZtQJVzH+i6E3BJDQcBA09k57i2Hh2yQbEG8yObZ0jdlWw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.1.0.tgz", + "integrity": "sha512-YcV7BgVMRFRua2FqQzKtTDMz8iCuLEyGKjr70q8Zm1yy2qKcurbFEd79PAdHV77oL3NrAaOVQIbMmiHQCHB7ZA==", "requires": { "has": "^1.0.3" } @@ -4746,6 +4664,23 @@ "requires": { "get-caller-file": "^1.0.2", "normalize-path": "^2.1.1" + }, + "dependencies": { + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } } }, "move-concurrently": { @@ -4883,13 +4818,10 @@ } }, "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true }, "normalize-url": { "version": "4.5.0", @@ -5062,12 +4994,6 @@ "path-exists": "^4.0.0" } }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -5783,10 +5709,9 @@ } }, "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" }, "quick-lru": { "version": "4.0.1", @@ -6020,6 +5945,14 @@ "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" + }, + "dependencies": { + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + } } }, "require-directory": { @@ -7484,12 +7417,6 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 65512a7de08..6a541421e51 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -126,9 +126,9 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^7.12.1", + "eslint": "^7.13.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.7.5", + "eslint-plugin-jsdoc": "^30.7.7", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 04b3dfead5199bc979adc0966a8f556fcff704d2 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 15 Nov 2020 03:21:03 +0000 Subject: [PATCH 0451/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 44 +++++++++++++++--------------- packages/project/package.json | 4 +-- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c7c6d000bc4..6eb443e40f7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -531,9 +531,9 @@ "dev": true }, "@types/minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", + "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", "dev": true }, "@types/normalize-package-data": { @@ -1554,9 +1554,9 @@ } }, "cliui": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.3.tgz", - "integrity": "sha512-Gj3QHTkVMPKqwP3f7B4KPkBZRMR9r4rfi5bXFpg1a+Svvj8l7q5CnkBkVQzfxT5DFSsGk2+PascOgL0JYkL2kw==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, "requires": { "string-width": "^4.2.0", @@ -2665,9 +2665,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.7.7", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.7.tgz", - "integrity": "sha512-DmVMJC2AbpYX7X1KhnVT1a9ex1AUvG+q9G8i6hzjp3cpjW8vmKQTUmZnRS0//W+7HvMqeb+eXPANdCOzGVVZBQ==", + "version": "30.7.8", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.8.tgz", + "integrity": "sha512-OWm2AYvXjCl7nRbpcw5xisfSVkpVAyp4lGqL9T+DeK4kaPm6ecnmTc/G5s1PtcRrwbaI8bIWGzwScqv5CdGyxA==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -5870,9 +5870,9 @@ "dev": true }, "registry-auth-token": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.0.tgz", - "integrity": "sha512-P+lWzPrsgfN+UEpDS3U8AQKg/UjZX6mQSJueZj3EK+vNESoqBSpBUD3gmu4sF9lOsjXWjF11dQKUqemf3veq1w==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", + "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", "dev": true, "requires": { "rc": "^1.2.8" @@ -5981,11 +5981,11 @@ } }, "resolve": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.18.1.tgz", - "integrity": "sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==", + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", + "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", "requires": { - "is-core-module": "^2.0.0", + "is-core-module": "^2.1.0", "path-parse": "^1.0.6" } }, @@ -6451,9 +6451,9 @@ } }, "stack-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.2.tgz", - "integrity": "sha512-0H7QK2ECz3fyZMzQ8rH0j2ykpfbnd20BFtfg/SqVC2+sCTtcw0aDTGB7dk+de4U4uUeuz6nOtJcrkFFLG1B0Rg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==", "dev": true, "requires": { "escape-string-regexp": "^2.0.0" @@ -7452,9 +7452,9 @@ } }, "yargs-parser": { - "version": "20.2.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.3.tgz", - "integrity": "sha512-emOFRT9WVHw03QSvN5qor9QQT9+sw5vwxfYweivSMHTcAXPefwVae2FjO7JJjj8hCE4CzPOPeFM83VwT29HCww==", + "version": "20.2.4", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", + "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", "dev": true }, "yazl": { diff --git a/packages/project/package.json b/packages/project/package.json index 6a541421e51..1bbb8ab05a6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", - "resolve": "^1.18.1", + "resolve": "^1.19.0", "semver": "^7.3.2" }, "devDependencies": { @@ -128,7 +128,7 @@ "docdash": "^1.2.0", "eslint": "^7.13.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.7.7", + "eslint-plugin-jsdoc": "^30.7.8", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 0e2cf1bf6c5c29b4eb7c541033e15792c3a5a353 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 22 Nov 2020 03:21:11 +0000 Subject: [PATCH 0452/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 152 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 77 insertions(+), 77 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6eb443e40f7..fb878f8ca78 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,19 +13,19 @@ } }, "@babel/core": { - "version": "7.12.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.3.tgz", - "integrity": "sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.7.tgz", + "integrity": "sha512-tRKx9B53kJe8NCGGIxEQb2Bkr0riUIEuN7Sc1fxhs5H8lKlCWUvQCSNMVIB0Meva7hcbCRJ76de15KoLltdoqw==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.1", + "@babel/generator": "^7.12.5", "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.1", - "@babel/parser": "^7.12.3", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.12.1", - "@babel/types": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.7", + "@babel/types": "^7.12.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -37,9 +37,9 @@ }, "dependencies": { "debug": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -105,12 +105,12 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.1.tgz", - "integrity": "sha512-k0CIe3tXUKTRSoEx1LQEPFU9vRQfqHtl+kf8eNnDqb4AUJEy5pz6aIiog+YWtVm2jpggjS1laH68bPsR+KWWPQ==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.7.tgz", + "integrity": "sha512-DCsuPyeWxeHgh1Dus7APn7iza42i/qXqiFPWyBDdOFtvS581JQePsc1F/nD+fHrcswhLlRc2UpYS1NwERxZhHw==", "dev": true, "requires": { - "@babel/types": "^7.12.1" + "@babel/types": "^7.12.7" } }, "@babel/helper-module-imports": { @@ -140,12 +140,12 @@ } }, "@babel/helper-optimise-call-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", - "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.7.tgz", + "integrity": "sha512-I5xc9oSJ2h59OwyUqjv95HRyzxj53DAubUERgQMrpcCEYQyToeHA+NEcUEsVWB4j53RDeskeBJ0SgRAYHDBckw==", "dev": true, "requires": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.12.7" } }, "@babel/helper-replace-supers": { @@ -256,42 +256,42 @@ } }, "@babel/parser": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.5.tgz", - "integrity": "sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ==" + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.7.tgz", + "integrity": "sha512-oWR02Ubp4xTLCAqPRiNIuMVgNO5Aif/xpXtabhzW2HWUD47XJsAB4Zd/Rg30+XeQA3juXigV7hlquOTmwqLiwg==" }, "@babel/template": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", - "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz", + "integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/parser": "^7.12.7", + "@babel/types": "^7.12.7" } }, "@babel/traverse": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.5.tgz", - "integrity": "sha512-xa15FbQnias7z9a62LwYAA5SZZPkHIXpd42C6uW68o8uTuua96FHZy1y61Va5P/i83FAAcMpW8+A/QayntzuqA==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.7.tgz", + "integrity": "sha512-nMWaqsQEeSvMNypswUDzjqQ+0rR6pqCtoQpsqGJC4/Khm9cISwPTSpai57F6/jDaOoEGz8yE/WxcO3PV6tKSmQ==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", "@babel/generator": "^7.12.5", "@babel/helper-function-name": "^7.10.4", "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.12.5", - "@babel/types": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/types": "^7.12.7", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" }, "dependencies": { "debug": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -312,9 +312,9 @@ } }, "@babel/types": { - "version": "7.12.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.6.tgz", - "integrity": "sha512-hwyjw6GvjBLiyy3W0YQf0Z5Zf4NpYejUnKFcfcUhZCSffoBBp30w6wP2Wn6pk31jMYZvcOrB/1b7cGXvEoKogA==", + "version": "7.12.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.7.tgz", + "integrity": "sha512-MNyI92qZq6jrQkXvtIiykvl4WtoRrVV9MPn+ZfsoEENjiWcBQ3ZSHrkxnJWgWtLX3XXqX5hrSQ+X69wkmesXuQ==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.10.4", @@ -358,9 +358,9 @@ }, "dependencies": { "debug": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -493,9 +493,9 @@ } }, "@sinonjs/samsam": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.2.0.tgz", - "integrity": "sha512-CaIcyX5cDsjcW/ab7HposFWzV1kC++4HNsfnEdFJa7cP1QIuILAKV+BgfeqRXhcnSAc76r/Rh/O5C+300BwUIw==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.3.0.tgz", + "integrity": "sha512-hXpcfx3aq+ETVBwPlRFICld5EnrkexXuXDwqUNhDdr5L8VjvMeSRwyOa0qL7XFmR+jVWR4rUZtnxlG7RX72sBg==", "dev": true, "requires": { "@sinonjs/commons": "^1.6.0", @@ -959,9 +959,9 @@ "dev": true }, "debug": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -2537,9 +2537,9 @@ } }, "eslint": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.13.0.tgz", - "integrity": "sha512-uCORMuOO8tUzJmsdRtrvcGq5qposf7Rw0LwkTJkoDbOycVQtQjmnhZSuLQnozLE4TmAzlMVV45eCHmQ1OpDKUQ==", + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.14.0.tgz", + "integrity": "sha512-5YubdnPXrlrYAFCKybPuHIAH++PINe1pmKNc5wQRB9HSbqIK1ywAnntE3Wwua4giKu0bjligf1gLF6qxMGOYRA==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2588,9 +2588,9 @@ "dev": true }, "debug": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -2680,9 +2680,9 @@ }, "dependencies": { "debug": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -3512,9 +3512,9 @@ }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "requires": { "ms": "^2.1.1" } @@ -3925,9 +3925,9 @@ }, "dependencies": { "debug": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -6368,9 +6368,9 @@ }, "dependencies": { "debug": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "requires": { "ms": "2.1.2" } @@ -6396,9 +6396,9 @@ }, "dependencies": { "debug": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "requires": { "ms": "2.1.2" } @@ -6859,9 +6859,9 @@ "dev": true }, "terser": { - "version": "5.3.8", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.8.tgz", - "integrity": "sha512-zVotuHoIfnYjtlurOouTazciEfL7V38QMAOhGqpXDEg6yT13cF4+fEP9b0rrCEQTn+tT46uxgFsTZzhygk+CzQ==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.5.0.tgz", + "integrity": "sha512-eopt1Gf7/AQyPhpygdKePTzaet31TvQxXvrf7xYUvD/d8qkCJm4SKPDzu+GHK5ZaYTn8rvttfqaZc3swK21e5g==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", @@ -7397,9 +7397,9 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "yargs": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.1.0.tgz", - "integrity": "sha512-upWFJOmDdHN0syLuESuvXDmrRcWd1QafJolHskzaw79uZa7/x53gxQKiR07W59GWY1tFhhU/Th9DrtSfpS782g==", + "version": "16.1.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.1.1.tgz", + "integrity": "sha512-hAD1RcFP/wfgfxgMVswPE+z3tlPFtxG8/yWUrG2i17sTWGCGqWnxKcLTF4cUKDUK8fzokwsmO9H0TDkRbMHy8w==", "dev": true, "requires": { "cliui": "^7.0.2", @@ -7407,7 +7407,7 @@ "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", "string-width": "^4.2.0", - "y18n": "^5.0.2", + "y18n": "^5.0.5", "yargs-parser": "^20.2.2" }, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 1bbb8ab05a6..8189cf3cfb3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -126,7 +126,7 @@ "coveralls": "^3.1.0", "cross-env": "^7.0.2", "docdash": "^1.2.0", - "eslint": "^7.13.0", + "eslint": "^7.14.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^30.7.8", "istanbul-lib-coverage": "^3.0.0", From a22a9ad149d17d0b0b136e0a6169cec1f4e376dd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 20 Nov 2020 20:14:47 +0100 Subject: [PATCH 0453/1272] [ui5-project][INTERNAL] Refer to UI5 Tooling repository for creating issues --- packages/project/.github/ISSUE_TEMPLATE.md | 38 +------------------ .../project/.github/ISSUE_TEMPLATE/config.yml | 5 +++ packages/project/README.md | 2 + 3 files changed, 9 insertions(+), 36 deletions(-) create mode 100644 packages/project/.github/ISSUE_TEMPLATE/config.yml diff --git a/packages/project/.github/ISSUE_TEMPLATE.md b/packages/project/.github/ISSUE_TEMPLATE.md index a6a0f8f8512..d0c440ed229 100644 --- a/packages/project/.github/ISSUE_TEMPLATE.md +++ b/packages/project/.github/ISSUE_TEMPLATE.md @@ -1,37 +1,3 @@ - +## 🚨 Issues Have Been Transferred to UI5 Tooling Repository -## Expected Behavior -{...} - -## Current Behavior -{...} - -## Steps to reproduce the issue -1. {...} -2. {...} -3. {...} - -## Context -- UI5 Module Version *(output of `ui5 --version` when using the CLI)*: `{...}` -- Node.js Version: `{...}` -- npm Version: `{...}` -- OS/Platform: `{...}` -- Browser *(if relevant)*: `{...}` -- Other information: `{...}` - -## Affected components *(if known)* - -- [ ] [ui5-builder](https://github.com/SAP/ui5-builder) -- [ ] [ui5-server](https://github.com/SAP/ui5-server) -- [ ] [ui5-cli](https://github.com/SAP/ui5-cli) -- [ ] [ui5-fs](https://github.com/SAP/ui5-fs) -- [X] [ui5-project](https://github.com/SAP/ui5-project) -- [ ] [ui5-logger](https://github.com/SAP/ui5-logger) - -## Log Output / Stack Trace -``` -{...} -``` +Please create new issues in the UI5 Tooling repository: https://github.com/SAP/ui5-tooling/issues/new/choose diff --git a/packages/project/.github/ISSUE_TEMPLATE/config.yml b/packages/project/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000000..afeecf17b89 --- /dev/null +++ b/packages/project/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,5 @@ +blank_issues_enabled: false +contact_links: + - name: Report UI5 Tooling Issues or Request a Feature + url: https://github.com/SAP/ui5-tooling/issues/new/choose + about: Please create new issues in the UI5 Tooling repository diff --git a/packages/project/README.md b/packages/project/README.md index 38161b44c72..4e5e2e796e8 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -20,5 +20,7 @@ Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/bl ## Support Please follow our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md#report-an-issue) on how to report an issue. +Please report issues in the main [UI5 Tooling](https://github.com/SAP/ui5-tooling) repository. + ## Release History See [CHANGELOG.md](CHANGELOG.md). From 09233b920c0f67870f68645bc7d00d5b668d45cb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 20 Nov 2020 20:17:36 +0100 Subject: [PATCH 0454/1272] [ui5-project][INTERNAL] README: Remove dependency status badges Apparently david-dm.org is regularly unavailable. Plus I question the benefit of these badges --- packages/project/README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/project/README.md b/packages/project/README.md index 4e5e2e796e8..b3134e9366a 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -8,8 +8,6 @@ [![Build Status](https://dev.azure.com/sap/opensource/_apis/build/status/SAP.ui5-project?branchName=master)](https://dev.azure.com/sap/opensource/_build/latest?definitionId=35&branchName=master) [![npm Package Version](https://badge.fury.io/js/%40ui5%2Fproject.svg)](https://www.npmjs.com/package/@ui5/project) [![Coverage Status](https://coveralls.io/repos/github/SAP/ui5-project/badge.svg)](https://coveralls.io/github/SAP/ui5-project) -[![Dependency Status](https://david-dm.org/SAP/ui5-project/master.svg)](https://david-dm.org/SAP/ui5-project/master) -[![devDependency Status](https://david-dm.org/SAP/ui5-project/master/dev-status.svg)](https://david-dm.org/SAP/ui5-project/master#info=devDependencies) ## Documentation Can be found here: [sap.github.io/ui5-tooling](https://sap.github.io/ui5-tooling/pages/Project/) From 32dd85b5a1bc96d34956014947d8b5acd96f0f64 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 20 Nov 2020 20:18:25 +0100 Subject: [PATCH 0455/1272] [ui5-project][INTERNAL] Align GitHub workflows across all repositories Based on https://github.com/SAP/ui5-builder/pull/542/files and https://github.com/SAP/ui5-builder/pull/537/files --- .../.github/workflows/codeql-analysis.yml | 32 ++ .../project/.github/workflows/github-ci.yml | 40 ++ .../.github/workflows/reuse-compliance.yml | 13 +- packages/project/.travis.yml | 15 - packages/project/package-lock.json | 510 +++++++----------- packages/project/package.json | 10 +- 6 files changed, 295 insertions(+), 325 deletions(-) create mode 100644 packages/project/.github/workflows/codeql-analysis.yml create mode 100644 packages/project/.github/workflows/github-ci.yml delete mode 100644 packages/project/.travis.yml diff --git a/packages/project/.github/workflows/codeql-analysis.yml b/packages/project/.github/workflows/codeql-analysis.yml new file mode 100644 index 00000000000..5941848224b --- /dev/null +++ b/packages/project/.github/workflows/codeql-analysis.yml @@ -0,0 +1,32 @@ +name: "CodeQL" + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + codeql-analyze: + name: "CodeQL Analyze" + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v1 + with: + languages: 'javascript' + # If you wish to specify custom queries, you can do so here or in a config file. + # By default, queries listed here will override any specified in a config file. + # Prefix the list here with "+" to use these queries and those in the config file. + # queries: ./path/to/local/query, your-org/your-repo/queries@main + + # ℹ️ Command-line programs to run using the OS shell. + # 📚 https://git.io/JvXDl + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v1 diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml new file mode 100644 index 00000000000..f6916f54913 --- /dev/null +++ b/packages/project/.github/workflows/github-ci.yml @@ -0,0 +1,40 @@ +name: GitHub CI + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + test: + name: General checks, tests and coverage reporting + runs-on: ubuntu-latest + steps: + + - uses: actions/checkout@v2 + + - name: Use Node.js LTS 14.x + uses: actions/setup-node@v1 + with: + node-version: 14.x + + - name: Install dependencies + run: npm ci + + - name: Lint + run: npm run lint + + - name: Check for unused and missing dependencies + run: npm run depcheck + + - name: Test JSDoc generation + run: npm run jsdoc-generate + + - name: Generate test coverage report + run: npm run coverage + + - name: Send report to Coveralls + uses: coverallsapp/github-action@v1.1.2 + with: + github-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index 082f4438b3d..1ecfdb5d084 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -1,11 +1,16 @@ -name: REUSE Compliance Check +name: REUSE -on: [push, pull_request] +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] jobs: - test: + compliance-check: + name: Compliance Check runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - name: REUSE Compliance Check + - name: Execute REUSE Compliance Check uses: fsfe/reuse-action@v1.1 diff --git a/packages/project/.travis.yml b/packages/project/.travis.yml deleted file mode 100644 index ae651868074..00000000000 --- a/packages/project/.travis.yml +++ /dev/null @@ -1,15 +0,0 @@ -language: node_js # don't install any environment - -node_js: -- "lts/*" - -script: npm run coverage - -after_script: -- if [[ "$TRAVIS_OS_NAME" == "linux" && - (( -n "$TRAVIS_PULL_REQUEST" && "$TRAVIS_PULL_REQUEST" != "false" ) || "$TRAVIS_BRANCH" == "master" ) ]]; then - npm run report-coveralls; - fi - -notifications: - webhooks: https://coveralls.io/webhook diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fb878f8ca78..04e9407f0b6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -530,6 +530,12 @@ "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==", "dev": true }, + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", + "dev": true + }, "@types/minimist": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", @@ -541,6 +547,12 @@ "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, "@ui5/builder": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.3.tgz", @@ -823,6 +835,12 @@ "sprintf-js": "~1.0.2" } }, + "array-differ": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", + "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", + "dev": true + }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -851,21 +869,6 @@ "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, "astral-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", @@ -877,12 +880,6 @@ "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==" }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, "atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", @@ -984,32 +981,11 @@ } } }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, "binary-extensions": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", @@ -1142,6 +1118,12 @@ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, + "builtin-modules": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz", + "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==", + "dev": true + }, "builtins": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", @@ -1265,12 +1247,6 @@ "quick-lru": "^4.0.1" } }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, "catharsis": { "version": "0.8.11", "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.11.tgz", @@ -1639,15 +1615,6 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, "command-exists": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", @@ -1863,17 +1830,17 @@ "vary": "^1" } }, - "coveralls": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.1.0.tgz", - "integrity": "sha512-sHxOu2ELzW8/NC1UP5XVLbZDzO4S3VxfFye3XYCznopHy02YjNkHcj5bKaVw2O7hVaBdBjEdQGpie4II1mWhuQ==", + "cosmiconfig": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", + "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", "dev": true, "requires": { - "js-yaml": "^3.13.1", - "lcov-parse": "^1.0.0", - "log-driver": "^1.2.7", - "minimist": "^1.2.5", - "request": "^2.88.2" + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" } }, "cross-env": { @@ -1962,15 +1929,6 @@ "type": "^1.0.1" } }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, "date-time": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/date-time/-/date-time-3.1.0.tgz", @@ -1980,6 +1938,12 @@ "time-zone": "^1.0.0" } }, + "de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=", + "dev": true + }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -2093,22 +2057,76 @@ "slash": "^3.0.0" } }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, "delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" }, + "depcheck": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.3.1.tgz", + "integrity": "sha512-lLMfqX2J+ZF3xUEqHpgCNk+dA8erAfW6XURGNAIyUS4KL2i3lezXGYDevYk3G0rWCwy/3CpxE8ek10NrURFOtQ==", + "dev": true, + "requires": { + "@babel/parser": "^7.12.5", + "@babel/traverse": "^7.12.5", + "builtin-modules": "^3.1.0", + "camelcase": "^6.2.0", + "cosmiconfig": "^7.0.0", + "debug": "^4.2.0", + "deps-regex": "^0.1.4", + "ignore": "^5.1.8", + "js-yaml": "^3.14.0", + "json5": "^2.1.3", + "lodash": "^4.17.20", + "minimatch": "^3.0.4", + "multimatch": "^5.0.0", + "please-upgrade-node": "^3.2.0", + "query-ast": "^1.0.3", + "readdirp": "^3.5.0", + "require-package-name": "^2.0.1", + "resolve": "^1.18.1", + "sass": "^1.29.0", + "scss-parser": "^1.0.4", + "semver": "^7.3.2", + "vue-template-compiler": "^2.6.12", + "yargs": "^16.1.0" + }, + "dependencies": { + "camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", + "dev": true + }, + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" }, + "deps-regex": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", + "integrity": "sha1-UYZnt2kUYKXn4KNBvnbrfOgJAYQ=", + "dev": true + }, "destroy": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", @@ -2250,16 +2268,6 @@ "stream-shift": "^1.0.0" } }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, "editorconfig": { "version": "0.15.3", "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", @@ -2890,12 +2898,6 @@ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -3074,23 +3076,6 @@ "signal-exit": "^3.0.2" } }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, "forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", @@ -3215,15 +3200,6 @@ "pump": "^3.0.0" } }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, "glob": { "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", @@ -3313,22 +3289,6 @@ "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, "hard-rejection": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", @@ -3386,6 +3346,12 @@ } } }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, "hosted-git-info": { "version": "2.8.8", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", @@ -3491,17 +3457,6 @@ } } }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, "https-proxy-agent": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", @@ -3641,6 +3596,15 @@ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, "ip": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", @@ -3835,12 +3799,6 @@ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, "istanbul-lib-coverage": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", @@ -3992,12 +3950,6 @@ "xmlcreate": "^2.0.3" } }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, "jsdoc": { "version": "3.6.6", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.6.tgz", @@ -4054,12 +4006,6 @@ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true - }, "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -4071,12 +4017,6 @@ "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, "json5": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", @@ -4091,18 +4031,6 @@ "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=" }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, "just-extend": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.1.tgz", @@ -4141,12 +4069,6 @@ "package-json": "^6.3.0" } }, - "lcov-parse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-1.0.0.tgz", - "integrity": "sha1-6w1GtUER68VhrLTECO+TY73I9+A=", - "dev": true - }, "less-openui5": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.9.0.tgz", @@ -4331,12 +4253,6 @@ "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", "dev": true }, - "log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", - "dev": true - }, "log-symbols": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", @@ -4346,6 +4262,15 @@ "chalk": "^4.0.0" } }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, "lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", @@ -4719,6 +4644,19 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "multimatch": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", + "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", + "dev": true, + "requires": { + "@types/minimatch": "^3.0.3", + "array-differ": "^3.0.0", + "array-union": "^2.1.0", + "arrify": "^2.0.1", + "minimatch": "^3.0.4" + } + }, "mute-stream": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", @@ -5095,12 +5033,6 @@ } } }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -5465,12 +5397,6 @@ "integrity": "sha512-KGuODSTV6hcgdZvDrIDBUkN0utcAVj1LL7FfGbM0viKTtCHmtZcuEJ+lGqsp0fTFkGqesdtemV2yUSMeyy3ddA==", "dev": true }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, "picomatch": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", @@ -5537,6 +5463,15 @@ } } }, + "please-upgrade-node": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "dev": true, + "requires": { + "semver-compare": "^1.0.0" + } + }, "plur": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/plur/-/plur-4.0.0.tgz", @@ -5658,12 +5593,6 @@ "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", "dev": true }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, "pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -5713,6 +5642,16 @@ "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" }, + "query-ast": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.3.tgz", + "integrity": "sha512-k7z4jilpZCujhiJ+QeKSwYXHc9HxqiVKlVE7/em0zBfPpcqnXKUP8F7ld7XaAkO6oXeAD7yonqcNJWqOF2pSGA==", + "dev": true, + "requires": { + "invariant": "2.2.2", + "lodash": "^4.17.15" + } + }, "quick-lru": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", @@ -5919,42 +5858,6 @@ } } }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - } - } - }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -5967,6 +5870,12 @@ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "dev": true }, + "require-package-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/require-package-name/-/require-package-name-2.0.1.tgz", + "integrity": "sha1-wR6XJ2tluOKSP3Xav1+y7ww4Qbk=", + "dev": true + }, "requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", @@ -6090,11 +5999,41 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, + "sass": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.29.0.tgz", + "integrity": "sha512-ZpwAUFgnvAUCdkjwPREny+17BpUj8nh5Yr6zKPGtLNTLrmtoRYIjm7njP24COhjJldjwW1dcv52Lpf4tNZVVRA==", + "dev": true, + "requires": { + "chokidar": ">=2.0.0 <4.0.0" + } + }, "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, + "scss-parser": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/scss-parser/-/scss-parser-1.0.4.tgz", + "integrity": "sha512-oDZwDfY2JhnDrHNZPcdcPNVTpAXsJBY2/uhFfN0IzMy1xExAfJDcI1Yl/VXhfRsdQL3wLeg6/Oxt3cafBOuMzQ==", + "dev": true, + "requires": { + "invariant": "2.2.4", + "lodash": "^4.17.4" + }, + "dependencies": { + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + } + } + }, "select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", @@ -6105,6 +6044,12 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==" }, + "semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "dev": true + }, "semver-diff": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", @@ -6425,23 +6370,6 @@ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, "ssri": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", @@ -6947,16 +6875,6 @@ "ieee754": "^1.1.13" } }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, "treeify": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", @@ -6974,21 +6892,6 @@ "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", "dev": true }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, "type": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", @@ -7170,15 +7073,14 @@ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "vue-template-compiler": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.12.tgz", + "integrity": "sha512-OzzZ52zS41YUbkCBfdXShQTe69j1gQDZ9HIX8miuC9C3rBCk9wIRjLiZZLrmX9V+Ftq/YEyv1JaVr5Y/hNtByg==", "dev": true, "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "de-indent": "^1.0.2", + "he": "^1.1.0" } }, "wbuf": { @@ -7396,6 +7298,12 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, + "yaml": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", + "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "dev": true + }, "yargs": { "version": "16.1.1", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.1.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 8189cf3cfb3..2f26f7a7843 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -22,15 +22,15 @@ "npm": ">= 5" }, "scripts": { - "test": "npm run lint && npm run jsdoc-generate && npm run coverage", - "test-azure": "npm run lint && npm run jsdoc-generate && npm run coverage-xunit", + "test": "npm run lint && npm run jsdoc-generate && npm run coverage && npm run depcheck", + "test-azure": "npm run coverage-xunit", "lint": "eslint ./", "unit": "rimraf test/tmp && ava", "unit-verbose": "rimraf test/tmp && cross-env UI5_LOG_LVL=verbose ava --verbose --serial", "unit-watch": "rimraf test/tmp && ava --watch", "unit-nyan": "rimraf test/tmp && ava --tap | tnyan", "unit-xunit": "rimraf test/tmp && ava --tap --timeout=1m | tap-xunit --dontUseCommentsAsTestNames=true > test-results.xml", - "unit-inspect": "cross-env UI5_LOG_LVL=verbose node --inspect-brk node_modules/ava/profile.js", + "unit-inspect": "cross-env UI5_LOG_LVL=verbose ava debug --break", "coverage": "nyc npm run unit", "coverage-xunit": "nyc --reporter=text --reporter=text-summary --reporter=cobertura npm run unit-xunit", "jsdoc": "npm run jsdoc-generate && open-cli jsdocs/index.html", @@ -40,7 +40,7 @@ "version": "git-chglog --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", "postversion": "git push --follow-tags", "release-note": "git-chglog -c .chglog/release-config.yml v$npm_package_version", - "report-coveralls": "nyc report --reporter=text-lcov | COVERALLS_PARALLEL=true coveralls" + "depcheck": "depcheck --ignores docdash" }, "files": [ "index.js", @@ -123,8 +123,8 @@ "devDependencies": { "ava": "^3.13.0", "chokidar-cli": "^2.1.0", - "coveralls": "^3.1.0", "cross-env": "^7.0.2", + "depcheck": "^1.3.1", "docdash": "^1.2.0", "eslint": "^7.14.0", "eslint-config-google": "^0.14.0", From 2a5b19c222f4ff7d5b16e3a98d342ca6e9f16a0a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 24 Nov 2020 12:58:04 +0100 Subject: [PATCH 0456/1272] [ui5-project][INTERNAL] GitHub CI workflow: Execute npm test instead of individual scripts --- packages/project/.github/workflows/github-ci.yml | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index f6916f54913..932ab27fde8 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -22,17 +22,8 @@ jobs: - name: Install dependencies run: npm ci - - name: Lint - run: npm run lint - - - name: Check for unused and missing dependencies - run: npm run depcheck - - - name: Test JSDoc generation - run: npm run jsdoc-generate - - - name: Generate test coverage report - run: npm run coverage + - name: Perform checks and tests + run: npm test - name: Send report to Coveralls uses: coverallsapp/github-action@v1.1.2 From 64319228329a90d35af49e8cb75971f1385c8680 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 25 Nov 2020 12:49:21 +0000 Subject: [PATCH 0457/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.4.3 to 2.4.4 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.4.4/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 04e9407f0b6..4a8093e35d2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -554,9 +554,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.3.tgz", - "integrity": "sha512-+S72/r0B41VbTfmikKeREnWwNi0Lr4T60C46Vepx9L+U9VKrwaxD4owfq5ctF1P5ESyXH3aTHfMUCzy2MJKjrg==", + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.4.tgz", + "integrity": "sha512-x/LVz+r5xf76JkTGUBPn0gCgBgRv/KR39oBUZcD0qUV/IVSNMtl0XMTSwxQ42H837FT5P9TIBRsDnCdVr1iZdg==", "requires": { "@ui5/fs": "^2.0.5", "@ui5/logger": "^2.0.1", @@ -577,7 +577,7 @@ "rimraf": "^3.0.2", "semver": "^7.3.2", "slash": "^3.0.0", - "terser": "^5.3.8", + "terser": "^5.5.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" } diff --git a/packages/project/package.json b/packages/project/package.json index 2f26f7a7843..38cbe2057e1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.4.3", + "@ui5/builder": "^2.4.4", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.7", "ajv": "^6.12.6", From e7813f215d1f78eab1b937321be1129ab572fa95 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 20 Nov 2020 21:26:55 +0100 Subject: [PATCH 0458/1272] [ui5-project][INTERNAL] ESLint: Enforce max line length --- packages/project/.eslintrc.js | 9 +- packages/project/lib/normalizer.js | 3 +- packages/project/lib/projectPreprocessor.js | 12 +- .../project/lib/translators/ui5Framework.js | 4 +- .../lib/ui5Framework/AbstractResolver.js | 41 ++--- .../lib/ui5Framework/Openui5Resolver.js | 3 +- .../lib/ui5Framework/Sapui5Resolver.js | 3 +- .../test/lib/translators/npm.integration.js | 3 +- .../translators/ui5Framework.integration.js | 137 ++++++++------- .../test/lib/ui5framework/Sapui5Resolver.js | 82 ++++----- .../test/lib/validation/ValidationError.js | 6 +- .../validation/schema/__helper__/framework.js | 165 ++++++++++-------- .../2.0/kind/extension/project-shim.js | 4 +- .../2.0/kind/project/application.js | 40 +++-- .../specVersion/2.0/kind/project/library.js | 40 +++-- 15 files changed, 319 insertions(+), 233 deletions(-) diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js index b6b26aa9e39..52b9f68366c 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.js @@ -31,7 +31,14 @@ module.exports = { "no-negated-condition": "off", "require-jsdoc": "off", "no-mixed-requires": "off", - "max-len": ["warn", 120], + "max-len": [ + "error", + { + "code": 120, + "ignoreUrls": true, + "ignoreRegExpLiterals": true + } + ], "no-implicit-coercion": [ 2, {"allow": ["!!"]} diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js index 1c3055d0fe6..00b38a2fa71 100644 --- a/packages/project/lib/normalizer.js +++ b/packages/project/lib/normalizer.js @@ -21,7 +21,8 @@ const Normalizer = { * @param {string} [options.translatorName] Translator to use * @param {object} [options.translatorOptions] Options to pass to translator * @param {object} [options.frameworkOptions] Options to pass to the framework installer - * @param {string} [options.frameworkOptions.versionOverride] Framework version to use instead of the root projects framework + * @param {string} [options.frameworkOptions.versionOverride] Framework version to use instead of the root projects + * framework * @returns {Promise} Promise resolving to tree object */ generateProjectTree: async function(options = {}) { diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 4771a5a408e..fae7a620ab7 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -100,7 +100,8 @@ class ProjectPreprocessor { }); } else { if (project === this.tree) { - throw new Error(`Failed to configure root project "${project.id}". Please check verbose log for details.`); + throw new Error( + `Failed to configure root project "${project.id}". Please check verbose log for details.`); } // No config available // => reject this project by removing it from its parents list of dependencies @@ -119,7 +120,8 @@ class ProjectPreprocessor { if (log.isLevelEnabled("verbose")) { const prettyHrtime = require("pretty-hrtime"); const timeDiff = process.hrtime(startTime); - log.verbose(`Processed ${Object.keys(this.processedProjects).length} projects in ${prettyHrtime(timeDiff)}`); + log.verbose( + `Processed ${Object.keys(this.processedProjects).length} projects in ${prettyHrtime(timeDiff)}`); } return this.tree; }); @@ -182,8 +184,10 @@ class ProjectPreprocessor { } return true; } - log.verbose(`Dependency of project ${parent.id}, "${project.id}": Distance to root of ${parent._level + 1}. Will be `+ - `replaced by project with same ID and distance to root of ${processedProject.project._level}.`); + log.verbose( + `Dependency of project ${parent.id}, "${project.id}": ` + + `Distance to root of ${parent._level + 1}. Will be replaced `+ + `by project with same ID and distance to root of ${processedProject.project._level}.`); // Replace with the already processed project (closer to root -> preferred) parent.dependencies[parent.dependencies.indexOf(project)] = processedProject.project; diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 5c2c7f3bd4b..09eb4f8666f 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -178,7 +178,9 @@ module.exports = { if (log.isLevelEnabled("verbose")) { const timeDiff = process.hrtime(startTime); const prettyHrtime = require("pretty-hrtime"); - log.verbose(`${frameworkName} dependencies ${referencedLibraries.join(", ")} resolved in ${prettyHrtime(timeDiff)}`); + log.verbose( + `${frameworkName} dependencies ${referencedLibraries.join(", ")} ` + + `resolved in ${prettyHrtime(timeDiff)}`); } const projectProcessor = new utils.ProjectProcessor({ diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index d638c65053c..2e895454e1e 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -27,7 +27,8 @@ class AbstractResolver { * @param {*} options options * @param {string} options.version Framework version to use * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc - * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, metadata and configuration used by the resolvers. Relative to `process.cwd()` + * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, + * metadata and configuration used by the resolvers. Relative to `process.cwd()` */ constructor({cwd, version, ui5HomeDir}) { if (new.target === AbstractResolver) { @@ -93,13 +94,13 @@ class AbstractResolver { * Library metadata entry * * @example - * { - * "id": "@openui5/sap.ui.core", - * "version": "1.75.0", - * "path": "~/.ui5/framework/packages/@openui5/sap.ui.core/1.75.0", - * "dependencies": [], - * "optionalDependencies": [] - * } + * const libraryMetadataEntry = { + * "id": "@openui5/sap.ui.core", + * "version": "1.75.0", + * "path": "~/.ui5/framework/packages/@openui5/sap.ui.core/1.75.0", + * "dependencies": [], + * "optionalDependencies": [] + * }; * * @public * @typedef {object} LibraryMetadataEntry @@ -114,16 +115,16 @@ class AbstractResolver { * Install result * * @example - * { - * "libraryMetadata": { - * "sap.ui.core": { - * // ... - * }, - * "sap.m": { - * // ... - * } - * } - * } + * const resolverInstallResult = { + * "libraryMetadata": { + * "sap.ui.core": { + * // ... + * }, + * "sap.m": { + * // ... + * } + * } + * }; * * @public * @typedef {object} ResolverInstallResult @@ -140,9 +141,9 @@ class AbstractResolver { * // const resolver = new Openui5Resolver({version: "1.76.0"}); * * resolver.install(["sap.ui.core", "sap.m"]).then(({libraryMetadata}) => { - * // Installation done + * // Installation done * }).catch((err) => { - * // Handle installation errors + * // Handle installation errors * }); * * @public diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js index 3beb287ab4c..6f1d4942472 100644 --- a/packages/project/lib/ui5Framework/Openui5Resolver.js +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -18,7 +18,8 @@ class Openui5Resolver extends AbstractResolver { * @param {*} options options * @param {string} options.version OpenUI5 version to use * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc - * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, metadata and configuration used by the resolvers. Relative to `process.cwd()` + * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, + * metadata and configuration used by the resolvers. Relative to `process.cwd()` */ constructor(options) { super(options); diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index 3fabf8868d8..221e241829c 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -18,7 +18,8 @@ class Sapui5Resolver extends AbstractResolver { * @param {*} options options * @param {string} options.version SAPUI5 version to use * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc - * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, metadata and configuration used by the resolvers. Relative to `process.cwd()` + * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, + * metadata and configuration used by the resolvers. Relative to `process.cwd()` */ constructor(options) { super(options); diff --git a/packages/project/test/lib/translators/npm.integration.js b/packages/project/test/lib/translators/npm.integration.js index 8e867cc5659..7bab081bf7a 100644 --- a/packages/project/test/lib/translators/npm.integration.js +++ b/packages/project/test/lib/translators/npm.integration.js @@ -147,7 +147,8 @@ test("Error: missing dependency", async (t) => { errApplicationAPath + "') or in a collection"); }); -// TODO: Test for scenarios where a dependency is missing *and there is no package.json* in the path above the root module +// TODO: Test for scenarios where a dependency is missing *and there is no package.json* in the path above +// the root module // This should test whether the collection-fallback can handle not receiving a .pkg object from readPkgUp // Currently tricky to test as there is always a package.json located above the test fixtures. diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index 2237e11e4d1..7c3a4b48040 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -719,16 +719,17 @@ Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/sap.ui. Failed to resolve library sap.ui.lib4: Failed to extract package @openui5/sap.ui.lib4@1.75.4: ` + `404 - @openui5/sap.ui.lib4` }); -defineErrorTest("SAPUI5: ui5Framework translator should throw a proper error when metadata request and package extraction fails", { - frameworkName: "SAPUI5", - failMetadata: true, - failExtract: true, - expectedErrorMessage: `Resolution of framework libraries failed with errors: +defineErrorTest( + "SAPUI5: ui5Framework translator should throw a proper error when metadata request and package extraction fails", { + frameworkName: "SAPUI5", + failMetadata: true, + failExtract: true, + expectedErrorMessage: `Resolution of framework libraries failed with errors: Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + `404 - @sapui5/distribution-metadata Failed to resolve library sap.ui.lib4: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + `404 - @sapui5/distribution-metadata` -}); + }); defineErrorTest("OpenUI5: ui5Framework translator should throw a proper error when metadata request fails", { @@ -747,14 +748,15 @@ Failed to resolve library sap.ui.lib1: Failed to extract package @openui5/sap.ui Failed to resolve library sap.ui.lib4: Failed to extract package @openui5/sap.ui.lib4@1.75.0: ` + `404 - @openui5/sap.ui.lib4` }); -defineErrorTest("OpenUI5: ui5Framework translator should throw a proper error when metadata request and package extraction fails", { - frameworkName: "OpenUI5", - failMetadata: true, - failExtract: true, - expectedErrorMessage: `Resolution of framework libraries failed with errors: +defineErrorTest( + "OpenUI5: ui5Framework translator should throw a proper error when metadata request and package extraction fails", { + frameworkName: "OpenUI5", + failMetadata: true, + failExtract: true, + expectedErrorMessage: `Resolution of framework libraries failed with errors: Failed to resolve library sap.ui.lib1: Failed to read manifest of @openui5/sap.ui.lib1@1.75.0 Failed to resolve library sap.ui.lib4: Failed to read manifest of @openui5/sap.ui.lib4@1.75.0` -}); + }); test.serial("ui5Framework translator should not be called when no framework configuration is given", async (t) => { const translatorTree = { @@ -873,65 +875,68 @@ test.serial("ui5Framework translator should throw an error when framework name i }, {message: `Unknown framework.name "UI5" for project test-id. Must be "OpenUI5" or "SAPUI5"`}); }); -test.serial("SAPUI5: ui5Framework translator should throw error when using a library that is not part of the dist metadata", async (t) => { - const translatorTree = { - id: "test-id", - version: "1.2.3", - path: path.join(fakeBaseDir, "application-project"), - dependencies: [] - }; - const projectPreprocessorTree = Object.assign({}, translatorTree, { - specVersion: "2.0", - type: "application", - metadata: { - name: "test-project" - }, - framework: { - name: "SAPUI5", - version: "1.75.0", - libraries: [ - {name: "sap.ui.lib1"}, - {name: "does.not.exist"}, - {name: "sap.ui.lib4"}, - ] - } - }); +test.serial( + "SAPUI5: ui5Framework translator should throw error when using a library that is not part of the dist metadata", + async (t) => { + const translatorTree = { + id: "test-id", + version: "1.2.3", + path: path.join(fakeBaseDir, "application-project"), + dependencies: [] + }; + const projectPreprocessorTree = Object.assign({}, translatorTree, { + specVersion: "2.0", + type: "application", + metadata: { + name: "test-project" + }, + framework: { + name: "SAPUI5", + version: "1.75.0", + libraries: [ + {name: "sap.ui.lib1"}, + {name: "does.not.exist"}, + {name: "sap.ui.lib4"}, + ] + } + }); - sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); - sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); + sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); + sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); - sinon.stub(pacote, "extract").resolves(); - - sinon.stub(Installer.prototype, "readJson") - .callThrough() - .withArgs(path.join(fakeBaseDir, - "homedir", ".ui5", "framework", "packages", - "@sapui5", "distribution-metadata", "1.75.0", - "metadata.json")) - .resolves({ - libraries: { - "sap.ui.lib1": { - npmPackageName: "@sapui5/sap.ui.lib1", - version: "1.75.1", - dependencies: [], - optionalDependencies: [] - }, - "sap.ui.lib4": { - npmPackageName: "@openui5/sap.ui.lib4", - version: "1.75.4", - dependencies: [ - "sap.ui.lib1" - ], - optionalDependencies: [] + sinon.stub(pacote, "extract").resolves(); + + sinon.stub(Installer.prototype, "readJson") + .callThrough() + .withArgs(path.join(fakeBaseDir, + "homedir", ".ui5", "framework", "packages", + "@sapui5", "distribution-metadata", "1.75.0", + "metadata.json")) + .resolves({ + libraries: { + "sap.ui.lib1": { + npmPackageName: "@sapui5/sap.ui.lib1", + version: "1.75.1", + dependencies: [], + optionalDependencies: [] + }, + "sap.ui.lib4": { + npmPackageName: "@openui5/sap.ui.lib4", + version: "1.75.4", + dependencies: [ + "sap.ui.lib1" + ], + optionalDependencies: [] + } } - } - }); + }); - await t.throwsAsync(async () => { - await normalizer.generateProjectTree(); - }, {message: `Resolution of framework libraries failed with errors: + await t.throwsAsync(async () => { + await normalizer.generateProjectTree(); + }, { + message: `Resolution of framework libraries failed with errors: Failed to resolve library does.not.exist: Could not find library "does.not.exist"`}); -}); + }); // TODO test: Should not download packages again in case they are already installed diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.js index 3ba395e0b39..9b6dd0677a3 100644 --- a/packages/project/test/lib/ui5framework/Sapui5Resolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.js @@ -31,53 +31,55 @@ test.afterEach.always(() => { mock.stopAll(); }); -test.serial("Sapui5Resolver: loadDistMetadata loads metadata once from @sapui5/distribution-metadata package", async (t) => { - const resolver = new Sapui5Resolver({ - cwd: "/test-project/", - version: "1.75.0" - }); +test.serial( + "Sapui5Resolver: loadDistMetadata loads metadata once from @sapui5/distribution-metadata package", async (t) => { + const resolver = new Sapui5Resolver({ + cwd: "/test-project/", + version: "1.75.0" + }); - t.context.getTargetDirForPackageStub.callsFake(({pkgName, version}) => { - throw new Error(`getTargetDirForPackage stub called with unknown arguments pkgName: ${pkgName}, version: ${version}}`); - }).withArgs({ - pkgName: "@sapui5/distribution-metadata", - version: "1.75.0" - }).returns(path.join("/path", "to", "distribution-metadata", "1.75.0")); - t.context.installPackageStub.withArgs({ - pkgName: "@sapui5/distribution-metadata", - version: "1.75.0" - }).resolves({pkgPath: path.join("/path", "to", "distribution-metadata", "1.75.0")}); + t.context.getTargetDirForPackageStub.callsFake(({pkgName, version}) => { + throw new Error( + `getTargetDirForPackage stub called with unknown arguments pkgName: ${pkgName}, version: ${version}}`); + }).withArgs({ + pkgName: "@sapui5/distribution-metadata", + version: "1.75.0" + }).returns(path.join("/path", "to", "distribution-metadata", "1.75.0")); + t.context.installPackageStub.withArgs({ + pkgName: "@sapui5/distribution-metadata", + version: "1.75.0" + }).resolves({pkgPath: path.join("/path", "to", "distribution-metadata", "1.75.0")}); - const expectedMetadata = { - libraries: { - "sap.ui.foo": { - "npmPackageName": "@openui5/sap.ui.foo", - "version": "1.75.0", - "dependencies": [], - "optionalDependencies": [] + const expectedMetadata = { + libraries: { + "sap.ui.foo": { + "npmPackageName": "@openui5/sap.ui.foo", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [] + } } - } - }; - t.context.readJsonStub - .withArgs(path.join("/path", "to", "distribution-metadata", "1.75.0", "metadata.json")) - .resolves(expectedMetadata); + }; + t.context.readJsonStub + .withArgs(path.join("/path", "to", "distribution-metadata", "1.75.0", "metadata.json")) + .resolves(expectedMetadata); - let distMetadata = await resolver.loadDistMetadata(); - t.is(t.context.installPackageStub.callCount, 1, "Distribution metadata package should be installed once"); - t.deepEqual(distMetadata, expectedMetadata, - "loadDistMetadata should resolve with expected metadata"); + let distMetadata = await resolver.loadDistMetadata(); + t.is(t.context.installPackageStub.callCount, 1, "Distribution metadata package should be installed once"); + t.deepEqual(distMetadata, expectedMetadata, + "loadDistMetadata should resolve with expected metadata"); - // Calling loadDistMetadata again should not load package again - distMetadata = await resolver.loadDistMetadata(); + // Calling loadDistMetadata again should not load package again + distMetadata = await resolver.loadDistMetadata(); - t.is(t.context.installPackageStub.callCount, 1, "Distribution metadata package should still be installed once"); - t.deepEqual(distMetadata, expectedMetadata, - "Metadata should still be the expected metadata after calling loadDistMetadata again"); + t.is(t.context.installPackageStub.callCount, 1, "Distribution metadata package should still be installed once"); + t.deepEqual(distMetadata, expectedMetadata, + "Metadata should still be the expected metadata after calling loadDistMetadata again"); - const libraryMetadata = await resolver.getLibraryMetadata("sap.ui.foo"); - t.deepEqual(libraryMetadata, expectedMetadata.libraries["sap.ui.foo"], - "getLibraryMetadata returns metadata for one library"); -}); + const libraryMetadata = await resolver.getLibraryMetadata("sap.ui.foo"); + t.deepEqual(libraryMetadata, expectedMetadata.libraries["sap.ui.foo"], + "getLibraryMetadata returns metadata for one library"); + }); test.serial("Sapui5Resolver: handleLibrary", async (t) => { const resolver = new Sapui5Resolver({ diff --git a/packages/project/test/lib/validation/ValidationError.js b/packages/project/test/lib/validation/ValidationError.js index 6b82090c965..e53f3cee211 100644 --- a/packages/project/test/lib/validation/ValidationError.js +++ b/packages/project/test/lib/validation/ValidationError.js @@ -846,7 +846,8 @@ test.serial("ValidationError.formatMessage: keyword=required", (t) => { message: "should have required property 'name'" }; - const expectedErrorMessage = `Configuration ${chalk.underline(chalk.red("metadata"))} must have required property 'name'`; + const expectedErrorMessage = + `Configuration ${chalk.underline(chalk.red("metadata"))} must have required property 'name'`; const errorMessage = ValidationError.formatMessage(error); t.is(errorMessage, expectedErrorMessage); @@ -902,7 +903,8 @@ test.serial("ValidationError.formatMessage: keyword=additionalProperties", (t) = }; const expectedErrorMessage = -`Configuration ${chalk.underline(chalk.red("resources/configuration"))} property propertiesFileEncoding must not be provided here`; + `Configuration ${chalk.underline(chalk.red("resources/configuration"))} ` + + `property propertiesFileEncoding must not be provided here`; const errorMessage = ValidationError.formatMessage(error); t.is(errorMessage, expectedErrorMessage); diff --git a/packages/project/test/lib/validation/schema/__helper__/framework.js b/packages/project/test/lib/validation/schema/__helper__/framework.js index 742a9d30786..71a1181e54c 100644 --- a/packages/project/test/lib/validation/schema/__helper__/framework.js +++ b/packages/project/test/lib/validation/schema/__helper__/framework.js @@ -102,13 +102,14 @@ module.exports = { dataPath: "/framework/version", keyword: "pattern", message: - "should match pattern \"^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*" + - "|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(" + - "[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$\"", + "should match pattern \"^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)" + + "(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*" + + "[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$\"", params: { - pattern: "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-]" + - "[0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(" + - "?:\\.[0-9a-zA-Z-]+)*))?$", + pattern: + "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*" + + "[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-]" + + "[0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$", }, schemaPath: "../project.json#/definitions/framework/properties/version/pattern", } @@ -132,7 +133,8 @@ module.exports = { params: { additionalProperty: "library", }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/additionalProperties", + schemaPath: + "../project.json#/definitions/framework/properties/libraries/items/additionalProperties", }, { dataPath: "/framework/libraries/1", @@ -150,7 +152,9 @@ module.exports = { params: { type: "boolean" }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", + schemaPath: + "../project.json#/definitions/framework/properties/libraries" + + "/items/properties/optional/type", }, { dataPath: "/framework/libraries/3/development", @@ -159,7 +163,9 @@ module.exports = { params: { type: "boolean" }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type" + schemaPath: + "../project.json#/definitions/framework/properties/libraries" + + "/items/properties/development/type" } ]); }); @@ -185,78 +191,89 @@ module.exports = { ]); }); - test(`${type} (specVersion ${specVersion}): framework configuration: library with optional and development`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "type": type, - "metadata": { - "name": "my-" + type - }, - "framework": { - "name": "OpenUI5", - "libraries": [ - { - name: "sap.ui.lib1", - development: true, - optional: true - }, - { - // This should only complain about wrong types, not that both are true - name: "sap.ui.lib2", - development: "true", - optional: "true" - } - ] - } - }, [ - { - dataPath: "/framework/libraries/0", - keyword: "errorMessage", - message: "Either \"development\" or \"optional\" can be true, but not both", - params: { - errors: [ + test( + `${type} (specVersion ${specVersion}): framework configuration: library with optional and development`, + async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": "my-" + type + }, + "framework": { + "name": "OpenUI5", + "libraries": [ { - dataPath: "/framework/libraries/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "development", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", + name: "sap.ui.lib1", + development: true, + optional: true }, { - dataPath: "/framework/libraries/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "optional", + // This should only complain about wrong types, not that both are true + name: "sap.ui.lib2", + development: "true", + optional: "true" + } + ] + } + }, [ + { + dataPath: "/framework/libraries/0", + keyword: "errorMessage", + message: "Either \"development\" or \"optional\" can be true, but not both", + params: { + errors: [ + { + dataPath: "/framework/libraries/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "development", + }, + schemaPath: + "../project.json#/definitions/framework/properties/libraries/items/" + + "then/additionalProperties", }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/additionalProperties", - }, - ], + { + dataPath: "/framework/libraries/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "optional", + }, + schemaPath: + "../project.json#/definitions/framework/properties/libraries/items/then/" + + "additionalProperties", + }, + ], + }, + schemaPath: + "../project.json#/definitions/framework/properties/libraries/items/then/errorMessage", }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/then/errorMessage", - }, - { - dataPath: "/framework/libraries/1/optional", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", + { + dataPath: "/framework/libraries/1/optional", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: + "../project.json#/definitions/framework/properties/libraries/items/properties/" + + "optional/type", }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/optional/type", - }, - { - dataPath: "/framework/libraries/1/development", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", + { + dataPath: "/framework/libraries/1/development", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + }, + schemaPath: + "../project.json#/definitions/framework/properties/libraries/items/properties/" + + "development/type", }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/properties/development/type", - }, - ]); - }); + ]); + }); }); } }; diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js index 81a6ba4e741..6b5391fb65f 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js @@ -116,7 +116,9 @@ test.after.always((t) => { params: { type: "string", }, - schemaPath: "#/definitions/shims/properties/collections/patternProperties/.%2B/properties/modules/patternProperties/.%2B/type" + schemaPath: + "#/definitions/shims/properties/collections/patternProperties/.%2B/properties/" + + "modules/patternProperties/.%2B/type" } ]); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index 7321e031811..bb286726d0d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -377,7 +377,9 @@ test.after.always((t) => { params: { additionalProperty: "declareModules", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/additionalProperties", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/additionalProperties", }, { dataPath: "/builder/bundles/0/bundleDefinition/sections/0/name", @@ -386,7 +388,9 @@ test.after.always((t) => { params: { type: "string", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/name/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/properties/name/type", }, { dataPath: "/builder/bundles/1/bundleDefinition", @@ -404,7 +408,9 @@ test.after.always((t) => { params: { type: "string", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/defaultFileTypes/items/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/defaultFileTypes/items/type", }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/0", @@ -413,7 +419,9 @@ test.after.always((t) => { params: { missingProperty: "mode", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/required", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/required", }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", @@ -422,7 +430,9 @@ test.after.always((t) => { params: { type: "boolean", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/declareRawModules/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/properties/declareRawModules/type", }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", @@ -436,7 +446,9 @@ test.after.always((t) => { "provided", ], }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/mode/enum", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/properties/mode/enum", }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", @@ -445,7 +457,9 @@ test.after.always((t) => { params: { type: "array", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/filters/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/properties/filters/type", }, { dataPath: "/builder/bundles/1/bundleOptions", @@ -454,7 +468,9 @@ test.after.always((t) => { params: { additionalProperty: "notAllowed", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/additionalProperties", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + + "additionalProperties", }, { dataPath: "/builder/bundles/1/bundleOptions/optimize", @@ -463,7 +479,9 @@ test.after.always((t) => { params: { type: "boolean", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/optimize/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + + "properties/optimize/type", }, { dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", @@ -472,7 +490,9 @@ test.after.always((t) => { params: { type: "number", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/numberOfParts/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + + "properties/numberOfParts/type", }, { dataPath: "/builder/componentPreload", diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index 4f329e1316b..69f5e9f01d7 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -351,7 +351,9 @@ test.after.always((t) => { params: { additionalProperty: "declareModules", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/additionalProperties", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/additionalProperties", }, { dataPath: "/builder/bundles/0/bundleDefinition/sections/0/name", @@ -360,7 +362,9 @@ test.after.always((t) => { params: { type: "string", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/name/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/properties/name/type", }, { dataPath: "/builder/bundles/1/bundleDefinition", @@ -378,7 +382,9 @@ test.after.always((t) => { params: { type: "string", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/defaultFileTypes/items/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/defaultFileTypes/items/type", }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/0", @@ -387,7 +393,9 @@ test.after.always((t) => { params: { missingProperty: "mode", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/required", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/required", }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", @@ -396,7 +404,9 @@ test.after.always((t) => { params: { type: "boolean", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/declareRawModules/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/properties/declareRawModules/type", }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", @@ -410,7 +420,9 @@ test.after.always((t) => { "provided", ], }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/mode/enum", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/properties/mode/enum", }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", @@ -419,7 +431,9 @@ test.after.always((t) => { params: { type: "array", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/properties/sections/items/properties/filters/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + + "properties/sections/items/properties/filters/type", }, { dataPath: "/builder/bundles/1/bundleOptions", @@ -428,7 +442,9 @@ test.after.always((t) => { params: { additionalProperty: "notAllowed", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/additionalProperties", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + + "additionalProperties", }, { dataPath: "/builder/bundles/1/bundleOptions/optimize", @@ -437,7 +453,9 @@ test.after.always((t) => { params: { type: "boolean", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/optimize/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + + "properties/optimize/type", }, { dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", @@ -446,7 +464,9 @@ test.after.always((t) => { params: { type: "number", }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/properties/numberOfParts/type", + schemaPath: + "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + + "properties/numberOfParts/type", }, { dataPath: "/builder/componentPreload", From 8cab25e699dbe7f1e5d26cfc20d840d166d20e7e Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 29 Nov 2020 03:20:42 +0000 Subject: [PATCH 0459/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 87 +++++++++++++++++------------- 1 file changed, 50 insertions(+), 37 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4a8093e35d2..0ff17bef564 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,9 +13,9 @@ } }, "@babel/core": { - "version": "7.12.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.7.tgz", - "integrity": "sha512-tRKx9B53kJe8NCGGIxEQb2Bkr0riUIEuN7Sc1fxhs5H8lKlCWUvQCSNMVIB0Meva7hcbCRJ76de15KoLltdoqw==", + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", @@ -24,7 +24,7 @@ "@babel/helpers": "^7.12.5", "@babel/parser": "^7.12.7", "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.7", + "@babel/traverse": "^7.12.9", "@babel/types": "^7.12.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", @@ -272,9 +272,9 @@ } }, "@babel/traverse": { - "version": "7.12.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.7.tgz", - "integrity": "sha512-nMWaqsQEeSvMNypswUDzjqQ+0rR6pqCtoQpsqGJC4/Khm9cISwPTSpai57F6/jDaOoEGz8yE/WxcO3PV6tKSmQ==", + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.9.tgz", + "integrity": "sha512-iX9ajqnLdoU1s1nHt36JDI9KG4k+vmI8WgjK5d+aDTwQbL2fUnzedNedssA645Ede3PM2ma1n8Q4h2ohwXgMXw==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", @@ -297,12 +297,6 @@ "ms": "2.1.2" } }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -366,6 +360,15 @@ "ms": "2.1.2" } }, + "globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "requires": { + "type-fest": "^0.8.1" + } + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -377,6 +380,12 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true } } }, @@ -2604,6 +2613,15 @@ "ms": "2.1.2" } }, + "globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "requires": { + "type-fest": "^0.8.1" + } + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -2663,6 +2681,12 @@ "requires": { "prelude-ls": "^1.2.1" } + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true } } }, @@ -3231,21 +3255,10 @@ } }, "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - }, - "dependencies": { - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - } - } + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true }, "globby": { "version": "11.0.1", @@ -3645,9 +3658,9 @@ } }, "is-core-module": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.1.0.tgz", - "integrity": "sha512-YcV7BgVMRFRua2FqQzKtTDMz8iCuLEyGKjr70q8Zm1yy2qKcurbFEd79PAdHV77oL3NrAaOVQIbMmiHQCHB7ZA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", + "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", "requires": { "has": "^1.0.3" } @@ -6296,9 +6309,9 @@ } }, "spdx-license-ids": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.6.tgz", - "integrity": "sha512-+orQK83kyMva3WyPf59k1+Y525csj5JejicWut55zeTWANuN17qSiSLUXWtzHeNWORSvT7GLDJ/E/XiIWoXBTw==" + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", + "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==" }, "spdy": { "version": "4.0.2", @@ -6787,9 +6800,9 @@ "dev": true }, "terser": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.5.0.tgz", - "integrity": "sha512-eopt1Gf7/AQyPhpygdKePTzaet31TvQxXvrf7xYUvD/d8qkCJm4SKPDzu+GHK5ZaYTn8rvttfqaZc3swK21e5g==", + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.5.1.tgz", + "integrity": "sha512-6VGWZNVP2KTUcltUQJ25TtNjx/XgdDsBDKGt8nN0MpydU36LmbPPcMBd2kmtZNNGVVDLg44k7GKeHHj+4zPIBQ==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", From b2864afc392697f69bbb0c140b44831deaec0681 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 30 Nov 2020 16:26:37 +0000 Subject: [PATCH 0460/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.4.4 to 2.4.5 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.4.5/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0ff17bef564..922297f2c58 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -563,9 +563,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.4.tgz", - "integrity": "sha512-x/LVz+r5xf76JkTGUBPn0gCgBgRv/KR39oBUZcD0qUV/IVSNMtl0XMTSwxQ42H837FT5P9TIBRsDnCdVr1iZdg==", + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.5.tgz", + "integrity": "sha512-dcubgRtbmySbHAUS95dYAjZ8SHNEsbzBfe8dzbh+lkKz1RU1/GiT8yVc72IsxrGkD2NBKqEYR1aYsC1fSlWM0Q==", "requires": { "@ui5/fs": "^2.0.5", "@ui5/logger": "^2.0.1", @@ -586,7 +586,7 @@ "rimraf": "^3.0.2", "semver": "^7.3.2", "slash": "^3.0.0", - "terser": "^5.5.0", + "terser": "^5.5.1", "xml2js": "^0.4.23", "yazl": "^2.5.1" } diff --git a/packages/project/package.json b/packages/project/package.json index 38cbe2057e1..cbd4c99d0fe 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.4.4", + "@ui5/builder": "^2.4.5", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.7", "ajv": "^6.12.6", From 4baedfab3c7d744666ea04c371d7fe406c43ccbe Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 1 Dec 2020 11:14:17 +0100 Subject: [PATCH 0461/1272] [ui5-project][INTERNAL] Properly escape path for RegExp in test --- packages/project/test/lib/translators/static.js | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/packages/project/test/lib/translators/static.js b/packages/project/test/lib/translators/static.js index 068011654e3..f9ecf2c3eea 100644 --- a/packages/project/test/lib/translators/static.js +++ b/packages/project/test/lib/translators/static.js @@ -2,6 +2,7 @@ const test = require("ava"); const path = require("path"); const fs = require("graceful-fs"); const sinon = require("sinon"); +const escapeStringRegexp = require("escape-string-regexp"); const staticTranslator = require("../../..").translators.static; const projectPath = path.join(__dirname, "..", "..", "fixtures", "application.h"); @@ -18,13 +19,10 @@ test("Error: Throws if projectDependencies.yaml was not found", async (t) => { const fsStub = sinon.stub(fs, "readFile"); fsStub.callsArgWith(1, fsError); const error = await t.throwsAsync(staticTranslator.generateDependencyTree(projectPath)); - const escapedYamlPath = path.join(projectPath, "projectDependencies.yaml") - .replace("\\", "\\\\") - .replace("/", "\\/") - .replace(".", "\\."); + const yamlPath = path.join(projectPath, "projectDependencies.yaml"); t.regex(error.message, new RegExp(`\\[static translator\\] Failed to load dependency tree from path ` + - `${escapedYamlPath} - Error: ENOENT:`)); + `${escapeStringRegexp(yamlPath)} - Error: ENOENT:`)); fsStub.restore(); }); From a346d80172f28b4f3aa1168b3bcbb150e9ac6dfd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 1 Dec 2020 15:55:21 +0100 Subject: [PATCH 0462/1272] [ui5-project][INTERNAL] CodeQL: Schedule at least one execution per week CodeQL constantly adds new queries --- packages/project/.github/workflows/codeql-analysis.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/project/.github/workflows/codeql-analysis.yml b/packages/project/.github/workflows/codeql-analysis.yml index 5941848224b..36467c52be5 100644 --- a/packages/project/.github/workflows/codeql-analysis.yml +++ b/packages/project/.github/workflows/codeql-analysis.yml @@ -6,6 +6,10 @@ on: pull_request: branches: [ master ] + # Execute at least once per week to get new findings without active development taking place + schedule: + - cron: '42 19 * * 6' + jobs: codeql-analyze: name: "CodeQL Analyze" From b1b68f136d7cb24929b888efc774925db7da5b75 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 6 Dec 2020 03:21:08 +0000 Subject: [PATCH 0463/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 195 +++++++++++++++++------------ packages/project/package.json | 6 +- 2 files changed, 119 insertions(+), 82 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 922297f2c58..f60d113552f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -334,9 +334,9 @@ } }, "@eslint/eslintrc": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.1.tgz", - "integrity": "sha512-XRUeBZ5zBWLYgSANMpThFddrZZkEbGHgUdt5UJjZfnlN9BGCiUBrf+nvbRupSjMvqzwnQN0qwCmOxITt1cfywA==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", + "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -1165,6 +1165,14 @@ "y18n": "^4.0.0" }, "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, "mkdirp": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", @@ -1180,6 +1188,11 @@ "requires": { "glob": "^7.1.3" } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, @@ -1853,9 +1866,9 @@ } }, "cross-env": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.2.tgz", - "integrity": "sha512-KZP/bMEOJEDCkDQAyRhu3RL2ZO/SUVrxQVI0G3YEQ+OLbRA3c6zgixe8Mq8a/z7+HKlNEjo8oiLUs8iRijY2Rw==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", "dev": true, "requires": { "cross-spawn": "^7.0.1" @@ -2554,13 +2567,13 @@ } }, "eslint": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.14.0.tgz", - "integrity": "sha512-5YubdnPXrlrYAFCKybPuHIAH++PINe1pmKNc5wQRB9HSbqIK1ywAnntE3Wwua4giKu0bjligf1gLF6qxMGOYRA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.15.0.tgz", + "integrity": "sha512-Vr64xFDT8w30wFll643e7cGrIkPEU50yIiI36OdSIDoSGguIeaLzBo0vpGvzo9RECUqq7htURfwEtKqwytkqzA==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@eslint/eslintrc": "^0.2.1", + "@eslint/eslintrc": "^0.2.2", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2570,10 +2583,10 @@ "eslint-scope": "^5.1.1", "eslint-utils": "^2.1.0", "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.0", + "espree": "^7.3.1", "esquery": "^1.2.0", "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", + "file-entry-cache": "^6.0.0", "functional-red-black-tree": "^1.0.1", "glob-parent": "^5.0.0", "globals": "^12.1.0", @@ -2770,13 +2783,13 @@ "dev": true }, "espree": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.0.tgz", - "integrity": "sha512-dksIWsvKCixn1yrEXO8UosNSxaDoSYpq9reEjZSbHLpT5hpaCAKTLBwq0RHtLrIr+c0ByiYzWT8KTMRzoRCNlw==", + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, "requires": { "acorn": "^7.4.0", - "acorn-jsx": "^5.2.0", + "acorn-jsx": "^5.3.1", "eslint-visitor-keys": "^1.3.0" }, "dependencies": { @@ -2987,12 +3000,12 @@ } }, "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.0.tgz", + "integrity": "sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA==", "dev": true, "requires": { - "flat-cache": "^2.0.1" + "flat-cache": "^3.0.4" } }, "file-type": { @@ -3049,31 +3062,19 @@ } }, "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - }, - "dependencies": { - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } + "flatted": "^3.1.0", + "rimraf": "^3.0.2" } }, "flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.0.tgz", + "integrity": "sha512-tW+UkmtNg/jv9CSofAKvgVcO7c2URjhTdW1ZTkcAritblu8tajiYy7YisnIflEwtKssCtOxpnBRoCB7iap0/TA==", "dev": true }, "flush-write-stream": { @@ -4291,11 +4292,11 @@ "dev": true }, "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "requires": { - "yallist": "^3.0.2" + "yallist": "^4.0.0" } }, "make-dir": { @@ -4329,6 +4330,21 @@ "promise-retry": "^1.1.1", "socks-proxy-agent": "^4.0.0", "ssri": "^6.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } } }, "map-age-cleaner": { @@ -4562,6 +4578,13 @@ "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" + }, + "dependencies": { + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } } }, "minizlib": { @@ -4852,10 +4875,23 @@ "safe-buffer": "^5.2.0" }, "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, @@ -5309,6 +5345,14 @@ "which": "^1.3.1" }, "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, "mkdirp": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", @@ -5329,6 +5373,11 @@ "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, @@ -6013,9 +6062,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.29.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.29.0.tgz", - "integrity": "sha512-ZpwAUFgnvAUCdkjwPREny+17BpUj8nh5Yr6zKPGtLNTLrmtoRYIjm7njP24COhjJldjwW1dcv52Lpf4tNZVVRA==", + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.30.0.tgz", + "integrity": "sha512-26EUhOXRLaUY7+mWuRFqGeGGNmhB1vblpTENO1Z7mAzzIZeVxZr9EZoaY1kyGLFWdSOZxRMAufiN2mkbO6dAlw==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" @@ -6053,9 +6102,12 @@ "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" }, "semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==" + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "requires": { + "lru-cache": "^6.0.0" + } }, "semver-compare": { "version": "1.0.0", @@ -6763,6 +6815,11 @@ "requires": { "minimist": "^1.2.5" } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, @@ -7239,26 +7296,6 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, - "write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", - "dev": true, - "requires": { - "mkdirp": "^0.5.1" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - } - } - }, "write-file-atomic": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", @@ -7302,14 +7339,14 @@ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" }, "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz", + "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==" }, "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yaml": { "version": "1.10.0", @@ -7318,9 +7355,9 @@ "dev": true }, "yargs": { - "version": "16.1.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.1.1.tgz", - "integrity": "sha512-hAD1RcFP/wfgfxgMVswPE+z3tlPFtxG8/yWUrG2i17sTWGCGqWnxKcLTF4cUKDUK8fzokwsmO9H0TDkRbMHy8w==", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "requires": { "cliui": "^7.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index cbd4c99d0fe..e0ac9b8bbdf 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,15 +118,15 @@ "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", "resolve": "^1.19.0", - "semver": "^7.3.2" + "semver": "^7.3.4" }, "devDependencies": { "ava": "^3.13.0", "chokidar-cli": "^2.1.0", - "cross-env": "^7.0.2", + "cross-env": "^7.0.3", "depcheck": "^1.3.1", "docdash": "^1.2.0", - "eslint": "^7.14.0", + "eslint": "^7.15.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^30.7.8", "istanbul-lib-coverage": "^3.0.0", From 5b01902c58bfba114929f2ebb6630d54aa7b7a32 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 13 Dec 2020 03:21:04 +0000 Subject: [PATCH 0464/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 176 +++++++++++++++-------------- packages/project/package.json | 6 +- 2 files changed, 92 insertions(+), 90 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f60d113552f..7fbb29ecdfd 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,25 +13,24 @@ } }, "@babel/core": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", - "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.10.tgz", + "integrity": "sha512-eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", + "@babel/generator": "^7.12.10", "@babel/helper-module-transforms": "^7.12.1", "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.7", + "@babel/parser": "^7.12.10", "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.9", - "@babel/types": "^7.12.7", + "@babel/traverse": "^7.12.10", + "@babel/types": "^7.12.10", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", "json5": "^2.1.2", "lodash": "^4.17.19", - "resolve": "^1.3.2", "semver": "^5.4.1", "source-map": "^0.5.0" }, @@ -66,12 +65,12 @@ } }, "@babel/generator": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.5.tgz", - "integrity": "sha512-m16TQQJ8hPt7E+OS/XVQg/7U184MLXtvuGbCdA7na61vha+ImkyyNM/9DDA0unYCVZn3ZOhng+qz48/KBOT96A==", + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.10.tgz", + "integrity": "sha512-6mCdfhWgmqLdtTkhXjnIz0LcdVCd26wS2JXRtj2XY0u5klDsXBREA/pG5NVOuVnF2LUrBGNFtQkIqqTbblg0ww==", "dev": true, "requires": { - "@babel/types": "^7.12.5", + "@babel/types": "^7.12.10", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -96,12 +95,12 @@ } }, "@babel/helper-get-function-arity": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", - "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz", + "integrity": "sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag==", "dev": true, "requires": { - "@babel/types": "^7.10.4" + "@babel/types": "^7.12.10" } }, "@babel/helper-member-expression-to-functions": { @@ -140,12 +139,12 @@ } }, "@babel/helper-optimise-call-expression": { - "version": "7.12.7", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.7.tgz", - "integrity": "sha512-I5xc9oSJ2h59OwyUqjv95HRyzxj53DAubUERgQMrpcCEYQyToeHA+NEcUEsVWB4j53RDeskeBJ0SgRAYHDBckw==", + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.10.tgz", + "integrity": "sha512-4tpbU0SrSTjjt65UMWSrUOPZTsgvPgGG4S8QSTNHacKzpS51IVWGDj0yCwyeZND/i+LSN2g/O63jEXEWm49sYQ==", "dev": true, "requires": { - "@babel/types": "^7.12.7" + "@babel/types": "^7.12.10" } }, "@babel/helper-replace-supers": { @@ -256,9 +255,9 @@ } }, "@babel/parser": { - "version": "7.12.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.7.tgz", - "integrity": "sha512-oWR02Ubp4xTLCAqPRiNIuMVgNO5Aif/xpXtabhzW2HWUD47XJsAB4Zd/Rg30+XeQA3juXigV7hlquOTmwqLiwg==" + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.10.tgz", + "integrity": "sha512-PJdRPwyoOqFAWfLytxrWwGrAxghCgh/yTNCYciOz8QgjflA7aZhECPZAa2VUedKg2+QMWkI0L9lynh2SNmNEgA==" }, "@babel/template": { "version": "7.12.7", @@ -272,17 +271,17 @@ } }, "@babel/traverse": { - "version": "7.12.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.9.tgz", - "integrity": "sha512-iX9ajqnLdoU1s1nHt36JDI9KG4k+vmI8WgjK5d+aDTwQbL2fUnzedNedssA645Ede3PM2ma1n8Q4h2ohwXgMXw==", + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.10.tgz", + "integrity": "sha512-6aEtf0IeRgbYWzta29lePeYSk+YAFIC3kyqESeft8o5CkFlYIMX+EQDDWEiAQ9LHOA3d0oHdgrSsID/CKqXJlg==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.5", + "@babel/generator": "^7.12.10", "@babel/helper-function-name": "^7.10.4", "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.12.7", - "@babel/types": "^7.12.7", + "@babel/parser": "^7.12.10", + "@babel/types": "^7.12.10", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" @@ -306,9 +305,9 @@ } }, "@babel/types": { - "version": "7.12.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.7.tgz", - "integrity": "sha512-MNyI92qZq6jrQkXvtIiykvl4WtoRrVV9MPn+ZfsoEENjiWcBQ3ZSHrkxnJWgWtLX3XXqX5hrSQ+X69wkmesXuQ==", + "version": "7.12.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.10.tgz", + "integrity": "sha512-sf6wboJV5mGyip2hIpDSKsr80RszPinEFjsHTalMxZAZkoQ2/2yQzxlcFN52SJqsyPfLtPmenL4g2KB3KJXPDw==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.10.4", @@ -895,20 +894,20 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.13.0.tgz", - "integrity": "sha512-yzky+gark5PdsFFlZ4CnBVxm/OgBUWtn9vAsSSnuooVJNOk5ER17HJXVeUzy63LIt06Zy34oThcn+2ZqgMs7SA==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.14.0.tgz", + "integrity": "sha512-AkXNi3DBXZE8A1z1JiNvdK6WmpN8oJQcZLkaWU24C3knCN9WVaxoDy90IVQlwjjPySeyQFqWDrsW9KomSNlRmQ==", "dev": true, "requires": { "@concordance/react": "^2.0.0", - "acorn": "^8.0.1", + "acorn": "^8.0.4", "acorn-walk": "^8.0.0", - "ansi-styles": "^4.2.1", + "ansi-styles": "^5.0.0", "arrgv": "^1.0.2", "arrify": "^2.0.1", "callsites": "^3.1.0", "chalk": "^4.1.0", - "chokidar": "^3.4.2", + "chokidar": "^3.4.3", "chunkd": "^2.0.1", "ci-info": "^2.0.0", "ci-parallel-vars": "^1.0.1", @@ -920,9 +919,9 @@ "concordance": "^5.0.1", "convert-source-map": "^1.7.0", "currently-unhandled": "^0.4.1", - "debug": "^4.2.0", + "debug": "^4.3.1", "del": "^6.0.0", - "emittery": "^0.7.1", + "emittery": "^0.7.2", "equal-length": "^1.0.0", "figures": "^3.2.0", "globby": "^11.0.1", @@ -935,7 +934,7 @@ "lodash": "^4.17.20", "matcher": "^3.0.0", "md5-hex": "^3.0.1", - "mem": "^6.1.1", + "mem": "^8.0.0", "ms": "^2.1.2", "ora": "^5.1.0", "p-event": "^4.2.0", @@ -948,14 +947,14 @@ "resolve-cwd": "^3.0.0", "slash": "^3.0.0", "source-map-support": "^0.5.19", - "stack-utils": "^2.0.2", + "stack-utils": "^2.0.3", "strip-ansi": "^6.0.0", "supertap": "^1.0.0", "temp-dir": "^2.0.0", "trim-off-newlines": "^1.0.1", - "update-notifier": "^4.1.1", + "update-notifier": "^5.0.1", "write-file-atomic": "^3.0.3", - "yargs": "^16.0.3" + "yargs": "^16.2.0" }, "dependencies": { "ansi-regex": { @@ -964,6 +963,12 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, + "ansi-styles": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.0.0.tgz", + "integrity": "sha512-6564t0m0fuQMnockqBv7wJxo9T5C2V9JpYXyNScfRDPVLusOQQhkpMGrFC17QbiolraQ1sMXX+Y5nJpjqozL4g==", + "dev": true + }, "debug": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", @@ -971,12 +976,20 @@ "dev": true, "requires": { "ms": "2.1.2" + }, + "dependencies": { + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } } }, "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true }, "strip-ansi": { @@ -3489,9 +3502,9 @@ } }, "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" } } }, @@ -3606,9 +3619,9 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" }, "invariant": { "version": "2.2.2", @@ -3716,9 +3729,9 @@ "dev": true }, "is-npm": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", - "integrity": "sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", "dev": true }, "is-number": { @@ -3948,9 +3961,9 @@ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -4420,13 +4433,13 @@ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, "mem": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/mem/-/mem-6.1.1.tgz", - "integrity": "sha512-Ci6bIfq/UgcxPTYa8dQQ5FY3BzKkT894bwXWXxC/zqs0XgMO2cT20CGkOqda7gZNkmK5VP4x89IGZ6K7hfbn3Q==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-8.0.0.tgz", + "integrity": "sha512-qrcJOe6uD+EW8Wrci1Vdiua/15Xw3n/QnaNXE7varnB6InxSk7nu3/i5jfy3S6kWxr8WYJ6R1o0afMUtvorTsA==", "dev": true, "requires": { "map-age-cleaner": "^0.1.3", - "mimic-fn": "^3.0.0" + "mimic-fn": "^3.1.0" }, "dependencies": { "mimic-fn": { @@ -6218,15 +6231,15 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.1.tgz", - "integrity": "sha512-naPfsamB5KEE1aiioaoqJ6MEhdUs/2vtI5w1hPAXX/UwvoPjXcwh1m5HiKx0HGgKR8lQSoFIgY5jM6KK8VrS9w==", + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.2.tgz", + "integrity": "sha512-9Owi+RisvCZpB0bdOVFfL314I6I4YoRlz6Isi4+fr8q8YQsDPoCe5UnmNtKHRThX3negz2bXHWIuiPa42vM8EQ==", "dev": true, "requires": { "@sinonjs/commons": "^1.8.1", "@sinonjs/fake-timers": "^6.0.1", "@sinonjs/formatio": "^5.0.1", - "@sinonjs/samsam": "^5.2.0", + "@sinonjs/samsam": "^5.3.0", "diff": "^4.0.2", "nise": "^4.0.4", "supports-color": "^7.1.0" @@ -7050,36 +7063,25 @@ "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, "update-notifier": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.3.tgz", - "integrity": "sha512-Yld6Z0RyCYGB6ckIjffGOSOmHXj1gMeE7aROz4MG+XMkmixBX4jUngrGXNYz7wPKBmtoD4MnBa2Anu7RSKht/A==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.0.1.tgz", + "integrity": "sha512-BuVpRdlwxeIOvmc32AGYvO1KVdPlsmqSh8KDDBxS6kDE5VR7R8OMP1d8MdhaVBvxl4H3551k9akXr0Y1iIB2Wg==", "dev": true, "requires": { "boxen": "^4.2.0", - "chalk": "^3.0.0", + "chalk": "^4.1.0", "configstore": "^5.0.1", "has-yarn": "^2.1.0", "import-lazy": "^2.1.0", "is-ci": "^2.0.0", - "is-installed-globally": "^0.3.1", - "is-npm": "^4.0.0", + "is-installed-globally": "^0.3.2", + "is-npm": "^5.0.0", "is-yarn-global": "^0.3.0", - "latest-version": "^5.0.0", - "pupa": "^2.0.1", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.2", "semver-diff": "^3.1.1", "xdg-basedir": "^4.0.0" - }, - "dependencies": { - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - } } }, "uri-js": { diff --git a/packages/project/package.json b/packages/project/package.json index e0ac9b8bbdf..f16064b5f80 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -109,7 +109,7 @@ "chalk": "^4.1.0", "escape-string-regexp": "^4.0.0", "graceful-fs": "^4.2.4", - "js-yaml": "^3.14.0", + "js-yaml": "^3.14.1", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", "mkdirp": "^1.0.4", @@ -121,7 +121,7 @@ "semver": "^7.3.4" }, "devDependencies": { - "ava": "^3.13.0", + "ava": "^3.14.0", "chokidar-cli": "^2.1.0", "cross-env": "^7.0.3", "depcheck": "^1.3.1", @@ -139,7 +139,7 @@ "nyc": "^15.1.0", "open-cli": "^6.0.1", "rimraf": "^3.0.2", - "sinon": "^9.2.1", + "sinon": "^9.2.2", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 079c10c80fd893ffe0bec730d7a949fa37d18aa9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 15 Dec 2020 17:37:04 +0000 Subject: [PATCH 0465/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.4.5 to 2.5.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.5.0/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7fbb29ecdfd..1d08b1343e6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -562,9 +562,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.4.5.tgz", - "integrity": "sha512-dcubgRtbmySbHAUS95dYAjZ8SHNEsbzBfe8dzbh+lkKz1RU1/GiT8yVc72IsxrGkD2NBKqEYR1aYsC1fSlWM0Q==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.5.0.tgz", + "integrity": "sha512-7SH4lbQqhKiU6OV5yboJf+k08G/1m3VscxOLhKfPjgJQcV642dzxIIqTnRzcdtiI3/Oi3SHhuc77NpbBLAgu/g==", "requires": { "@ui5/fs": "^2.0.5", "@ui5/logger": "^2.0.1", @@ -583,7 +583,7 @@ "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^3.0.2", - "semver": "^7.3.2", + "semver": "^7.3.4", "slash": "^3.0.0", "terser": "^5.5.1", "xml2js": "^0.4.23", diff --git a/packages/project/package.json b/packages/project/package.json index f16064b5f80..1ca396f267e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.4.5", + "@ui5/builder": "^2.5.0", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.7", "ajv": "^6.12.6", From 46c67083da077e110b92bd8e32e76e6823084324 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 18 Dec 2020 10:13:05 +0000 Subject: [PATCH 0466/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.5.0 to 2.5.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.5.1/CHANGELOG.md --- packages/project/package-lock.json | 27 ++++++++++++++++++++++----- packages/project/package.json | 2 +- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1d08b1343e6..80df2cc9d85 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -562,11 +562,11 @@ "dev": true }, "@ui5/builder": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.5.0.tgz", - "integrity": "sha512-7SH4lbQqhKiU6OV5yboJf+k08G/1m3VscxOLhKfPjgJQcV642dzxIIqTnRzcdtiI3/Oi3SHhuc77NpbBLAgu/g==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.5.1.tgz", + "integrity": "sha512-uDYhmTD4AhBSBwe2DXFKKE74oAJ51ybHTJ80klyomhuXFYaccHwyxo+dGLRuVs2FvGmTCeyIinD30XfNLmIMKw==", "requires": { - "@ui5/fs": "^2.0.5", + "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", @@ -584,10 +584,27 @@ "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.4", - "slash": "^3.0.0", "terser": "^5.5.1", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "@ui5/fs": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.6.tgz", + "integrity": "sha512-dBugwsHP7F7IrfVAaqf7FSDhknK6RhrLOpgkp7FmL/WRA02Q3FQzroFJc7CZEP4bOnAvWC3TpghOfHV2/RqR3A==", + "requires": { + "@ui5/logger": "^2.0.1", + "clone": "^2.1.0", + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "make-dir": "^3.1.0", + "micromatch": "^4.0.2", + "minimatch": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^2.0.1" + } + } } }, "@ui5/fs": { diff --git a/packages/project/package.json b/packages/project/package.json index 1ca396f267e..351bc80fa79 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.5.0", + "@ui5/builder": "^2.5.1", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.7", "ajv": "^6.12.6", From 72436e4ba1d460da00bbe66edf9fce64531df0de Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 20 Dec 2020 03:20:52 +0000 Subject: [PATCH 0467/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 229 ++++++++++++----------------- packages/project/package.json | 4 +- 2 files changed, 93 insertions(+), 140 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 80df2cc9d85..74ea27e8a9c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,9 +5,9 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", - "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "requires": { "@babel/highlight": "^7.10.4" } @@ -65,12 +65,12 @@ } }, "@babel/generator": { - "version": "7.12.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.10.tgz", - "integrity": "sha512-6mCdfhWgmqLdtTkhXjnIz0LcdVCd26wS2JXRtj2XY0u5klDsXBREA/pG5NVOuVnF2LUrBGNFtQkIqqTbblg0ww==", + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.11.tgz", + "integrity": "sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA==", "dev": true, "requires": { - "@babel/types": "^7.12.10", + "@babel/types": "^7.12.11", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -84,14 +84,14 @@ } }, "@babel/helper-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", - "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz", + "integrity": "sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" + "@babel/helper-get-function-arity": "^7.12.10", + "@babel/template": "^7.12.7", + "@babel/types": "^7.12.11" } }, "@babel/helper-get-function-arity": { @@ -148,15 +148,15 @@ } }, "@babel/helper-replace-supers": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.5.tgz", - "integrity": "sha512-5YILoed0ZyIpF4gKcpZitEnXEJ9UoDRki1Ey6xz46rxOzfNMAhVIJMoune1hmPVxh40LRv1+oafz7UsWX+vyWA==", + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.11.tgz", + "integrity": "sha512-q+w1cqmhL7R0FNzth/PLLp2N+scXEK/L2AHbXUyydxp828F4FEa5WcVoqui9vFRiHDQErj9Zof8azP32uGVTRA==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.12.1", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/traverse": "^7.12.5", - "@babel/types": "^7.12.5" + "@babel/helper-member-expression-to-functions": "^7.12.7", + "@babel/helper-optimise-call-expression": "^7.12.10", + "@babel/traverse": "^7.12.10", + "@babel/types": "^7.12.11" } }, "@babel/helper-simple-access": { @@ -169,18 +169,18 @@ } }, "@babel/helper-split-export-declaration": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", - "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz", + "integrity": "sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g==", "dev": true, "requires": { - "@babel/types": "^7.11.0" + "@babel/types": "^7.12.11" } }, "@babel/helper-validator-identifier": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", - "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==" + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", + "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" }, "@babel/helpers": { "version": "7.12.5", @@ -255,9 +255,9 @@ } }, "@babel/parser": { - "version": "7.12.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.10.tgz", - "integrity": "sha512-PJdRPwyoOqFAWfLytxrWwGrAxghCgh/yTNCYciOz8QgjflA7aZhECPZAa2VUedKg2+QMWkI0L9lynh2SNmNEgA==" + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.11.tgz", + "integrity": "sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==" }, "@babel/template": { "version": "7.12.7", @@ -305,12 +305,12 @@ } }, "@babel/types": { - "version": "7.12.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.10.tgz", - "integrity": "sha512-sf6wboJV5mGyip2hIpDSKsr80RszPinEFjsHTalMxZAZkoQ2/2yQzxlcFN52SJqsyPfLtPmenL4g2KB3KJXPDw==", + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.11.tgz", + "integrity": "sha512-ukA9SQtKThINm++CX1CwmliMrE54J6nIYB5XTwL5f/CLFW9owfls+YSU8tVW15RQ2w+a3fSbPjC6HdQNtWZkiA==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.10.4", + "@babel/helper-validator-identifier": "^7.12.11", "lodash": "^4.17.19", "to-fast-properties": "^2.0.0" } @@ -587,30 +587,12 @@ "terser": "^5.5.1", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "@ui5/fs": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.6.tgz", - "integrity": "sha512-dBugwsHP7F7IrfVAaqf7FSDhknK6RhrLOpgkp7FmL/WRA02Q3FQzroFJc7CZEP4bOnAvWC3TpghOfHV2/RqR3A==", - "requires": { - "@ui5/logger": "^2.0.1", - "clone": "^2.1.0", - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "make-dir": "^3.1.0", - "micromatch": "^4.0.2", - "minimatch": "^3.0.3", - "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.1" - } - } } }, "@ui5/fs": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.5.tgz", - "integrity": "sha512-jLkECzETgqUiRx9UBiJInaPQts7k+4tw9XUYVmvlXDGyY5kKJwA0RX0gqzVzAJeYgW+EvnwU1qHy9L0J0i1vTg==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.6.tgz", + "integrity": "sha512-dBugwsHP7F7IrfVAaqf7FSDhknK6RhrLOpgkp7FmL/WRA02Q3FQzroFJc7CZEP4bOnAvWC3TpghOfHV2/RqR3A==", "requires": { "@ui5/logger": "^2.0.1", "clone": "^2.1.0", @@ -620,8 +602,7 @@ "micromatch": "^4.0.2", "minimatch": "^3.0.3", "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.1", - "slash": "^3.0.0" + "random-int": "^2.0.1" } }, "@ui5/logger": { @@ -2597,9 +2578,9 @@ } }, "eslint": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.15.0.tgz", - "integrity": "sha512-Vr64xFDT8w30wFll643e7cGrIkPEU50yIiI36OdSIDoSGguIeaLzBo0vpGvzo9RECUqq7htURfwEtKqwytkqzA==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.16.0.tgz", + "integrity": "sha512-iVWPS785RuDA4dWuhhgXTNrGxHHK3a8HLSMBgbbU59ruJDubUraXN8N5rn7kb8tG6sjg74eE0RA3YWT51eusEw==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2636,7 +2617,7 @@ "semver": "^7.2.1", "strip-ansi": "^6.0.0", "strip-json-comments": "^3.1.0", - "table": "^5.2.3", + "table": "^6.0.4", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, @@ -2740,17 +2721,17 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.7.8", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.8.tgz", - "integrity": "sha512-OWm2AYvXjCl7nRbpcw5xisfSVkpVAyp4lGqL9T+DeK4kaPm6ecnmTc/G5s1PtcRrwbaI8bIWGzwScqv5CdGyxA==", + "version": "30.7.9", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.9.tgz", + "integrity": "sha512-qMM0fNx7/6OCnIh3jRpIrEBAhTG1THNXXbr3yfJ8yqLrDbzJR98xsstX25xt9GCPlrjNc/bBpTHfJQOvn7nVMA==", "dev": true, "requires": { "comment-parser": "^0.7.6", - "debug": "^4.2.0", + "debug": "^4.3.1", "jsdoctypeparser": "^9.0.0", "lodash": "^4.17.20", "regextras": "^0.7.1", - "semver": "^7.3.2", + "semver": "^7.3.4", "spdx-expression-parse": "^3.0.1" }, "dependencies": { @@ -3117,9 +3098,9 @@ } }, "follow-redirects": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.0.tgz", - "integrity": "sha512-aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA==" + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.1.tgz", + "integrity": "sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==" }, "foreground-child": { "version": "2.0.0", @@ -3277,12 +3258,20 @@ } }, "global-dirs": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.0.1.tgz", - "integrity": "sha512-5HqUqdhkEovj2Of/ms3IeS/EekcO54ytHRLV4PEY2rhRwrHXLQjeVEES0Lhka0xwNDtGYn58wyC4s5+MHsOO6A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.1.0.tgz", + "integrity": "sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ==", "dev": true, "requires": { - "ini": "^1.3.5" + "ini": "1.3.7" + }, + "dependencies": { + "ini": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", + "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", + "dev": true + } } }, "globals": { @@ -6617,94 +6606,58 @@ } }, "table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/table/-/table-6.0.4.tgz", + "integrity": "sha512-sBT4xRLdALd+NFBvwOz8bw4b15htyythha+q+DVZqy2RS08PPC8O2sZFgJYEY7bJvbCFKccs+WIZ/cd+xxTWCw==", "dev": true, "requires": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" + "ajv": "^6.12.4", + "lodash": "^4.17.20", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.0" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" } }, "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" } } } diff --git a/packages/project/package.json b/packages/project/package.json index 351bc80fa79..c06c90a28e7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -126,9 +126,9 @@ "cross-env": "^7.0.3", "depcheck": "^1.3.1", "docdash": "^1.2.0", - "eslint": "^7.15.0", + "eslint": "^7.16.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.7.8", + "eslint-plugin-jsdoc": "^30.7.9", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 0c41a86c831b0c7017a86c71ddcfd5cba7a961b4 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 27 Dec 2020 03:20:56 +0000 Subject: [PATCH 0468/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 42 +++++++++++++++--------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 74ea27e8a9c..8444190d6f1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -271,17 +271,17 @@ } }, "@babel/traverse": { - "version": "7.12.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.10.tgz", - "integrity": "sha512-6aEtf0IeRgbYWzta29lePeYSk+YAFIC3kyqESeft8o5CkFlYIMX+EQDDWEiAQ9LHOA3d0oHdgrSsID/CKqXJlg==", + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.12.tgz", + "integrity": "sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w==", "dev": true, "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.10", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.12.10", - "@babel/types": "^7.12.10", + "@babel/code-frame": "^7.12.11", + "@babel/generator": "^7.12.11", + "@babel/helper-function-name": "^7.12.11", + "@babel/helper-split-export-declaration": "^7.12.11", + "@babel/parser": "^7.12.11", + "@babel/types": "^7.12.12", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" @@ -305,9 +305,9 @@ } }, "@babel/types": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.11.tgz", - "integrity": "sha512-ukA9SQtKThINm++CX1CwmliMrE54J6nIYB5XTwL5f/CLFW9owfls+YSU8tVW15RQ2w+a3fSbPjC6HdQNtWZkiA==", + "version": "7.12.12", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.12.tgz", + "integrity": "sha512-lnIX7piTxOH22xE7fDXDbSHg9MM1/6ORnafpJmov5rs0kX5g4BZxeXNJLXsMRiO0U5Rb8/FvMS6xlTnTHvxonQ==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.12.11", @@ -1139,9 +1139,9 @@ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, "builtin-modules": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz", - "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", + "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", "dev": true }, "builtins": { @@ -2981,9 +2981,9 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "fastq": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.9.0.tgz", - "integrity": "sha512-i7FVWL8HhVY+CTkwFxkN2mk3h+787ixS5S63eb78diVRc1MCssarHq3W5cj0av7YDSwmaV928RNag+U1etRQ7w==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.10.0.tgz", + "integrity": "sha512-NL2Qc5L3iQEsyYzweq7qfgy5OtXCmGzGvhElGEd/SoFWEMOEczNh5s5ocaF01HDetxz+p8ecjNPA6cZxxIHmzA==", "requires": { "reusify": "^1.0.4" } @@ -3561,9 +3561,9 @@ } }, "import-fresh": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.2.tgz", - "integrity": "sha512-cTPNrlvJT6twpYy+YmKUKrTSjWFs3bjYjAhCwm+z4EOCubZxAuO+hHpRN64TqjEaYSHs7tJAE0w1CKMGmsG/lw==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "requires": { "parent-module": "^1.0.0", From ddca8775a86585ab6a984f0e98f7c606dd8d1695 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 3 Jan 2021 03:21:03 +0000 Subject: [PATCH 0469/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 223 ++++++++++++++++++----------- packages/project/package.json | 6 +- 2 files changed, 143 insertions(+), 86 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8444190d6f1..be9673427d1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -444,25 +444,25 @@ "dev": true }, "@nodelib/fs.scandir": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", - "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz", + "integrity": "sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==", "requires": { - "@nodelib/fs.stat": "2.0.3", + "@nodelib/fs.stat": "2.0.4", "run-parallel": "^1.1.9" } }, "@nodelib/fs.stat": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", - "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz", + "integrity": "sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==" }, "@nodelib/fs.walk": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", - "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz", + "integrity": "sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==", "requires": { - "@nodelib/fs.scandir": "2.1.3", + "@nodelib/fs.scandir": "2.1.4", "fastq": "^1.6.0" } }, @@ -892,9 +892,9 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.14.0.tgz", - "integrity": "sha512-AkXNi3DBXZE8A1z1JiNvdK6WmpN8oJQcZLkaWU24C3knCN9WVaxoDy90IVQlwjjPySeyQFqWDrsW9KomSNlRmQ==", + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.15.0.tgz", + "integrity": "sha512-HGAnk1SHPk4Sx6plFAUkzV/XC1j9+iQhOzt4vBly18/yo0AV8Oytx7mtJd/CR8igCJ5p160N/Oo/cNJi2uSeWA==", "dev": true, "requires": { "@concordance/react": "^2.0.0", @@ -919,7 +919,7 @@ "currently-unhandled": "^0.4.1", "debug": "^4.3.1", "del": "^6.0.0", - "emittery": "^0.7.2", + "emittery": "^0.8.0", "equal-length": "^1.0.0", "figures": "^3.2.0", "globby": "^11.0.1", @@ -933,8 +933,8 @@ "matcher": "^3.0.0", "md5-hex": "^3.0.1", "mem": "^8.0.0", - "ms": "^2.1.2", - "ora": "^5.1.0", + "ms": "^2.1.3", + "ora": "^5.2.0", "p-event": "^4.2.0", "p-map": "^4.0.0", "picomatch": "^2.2.2", @@ -947,7 +947,7 @@ "source-map-support": "^0.5.19", "stack-utils": "^2.0.3", "strip-ansi": "^6.0.0", - "supertap": "^1.0.0", + "supertap": "^2.0.0", "temp-dir": "^2.0.0", "trim-off-newlines": "^1.0.1", "update-notifier": "^5.0.1", @@ -1006,12 +1006,42 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true + }, "binary-extensions": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", "dev": true }, + "bl": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.3.tgz", + "integrity": "sha512-fs4G6/Hu4/EE+F75J8DuN/0IpQqNjAdC7aEQv7Qt8MHGUH7Ckv2MwTEEeN9QehD0pfIDkMI1bkHYkKy7xHyKIg==", + "dev": true, + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, "bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", @@ -1128,6 +1158,16 @@ "fill-range": "^7.0.1" } }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -2343,9 +2383,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "emittery": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.2.tgz", - "integrity": "sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.0.tgz", + "integrity": "sha512-XMGToId3CejfmZg/0qOzdTT3WFuAN8fQYtcKXccabRfCzGiWMSTydMshHGLyx9C/ejMl4nw9tvqrn12QVFPIUg==", "dev": true }, "emoji-regex": { @@ -2578,9 +2618,9 @@ } }, "eslint": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.16.0.tgz", - "integrity": "sha512-iVWPS785RuDA4dWuhhgXTNrGxHHK3a8HLSMBgbbU59ruJDubUraXN8N5rn7kb8tG6sjg74eE0RA3YWT51eusEw==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.17.0.tgz", + "integrity": "sha512-zJk08MiBgwuGoxes5sSQhOtibZ75pz0J35XTRlZOk9xMffhpA9BTbQZxoXZzOl5zMbleShbGwtw+1kGferfFwQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2721,9 +2761,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.7.9", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.9.tgz", - "integrity": "sha512-qMM0fNx7/6OCnIh3jRpIrEBAhTG1THNXXbr3yfJ8yqLrDbzJR98xsstX25xt9GCPlrjNc/bBpTHfJQOvn7nVMA==", + "version": "30.7.10", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.10.tgz", + "integrity": "sha512-4ksmbfZ4nIG5xFahmyqBhoCzlOIw6/KU+Ld1zxGXWW4quXMcaZQE6L7WL74c0bpU9Iz/Ms8gbPaPZdW3sk1kSg==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -4523,16 +4563,16 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz", + "integrity": "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==" }, "mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "version": "2.1.28", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz", + "integrity": "sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==", "requires": { - "mime-db": "1.44.0" + "mime-db": "1.45.0" } }, "mimic-fn": { @@ -4712,12 +4752,6 @@ "minimatch": "^3.0.4" } }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -5178,17 +5212,17 @@ } }, "ora": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.1.0.tgz", - "integrity": "sha512-9tXIMPvjZ7hPTbk8DFq1f7Kow/HU/pQYB60JbNq+QnGwcyhWVZaQ4hM9zQDEsPxw/muLpgiHSaumUZxCAmod/w==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.2.0.tgz", + "integrity": "sha512-+wG2v8TUU8EgzPHun1k/n45pXquQ9fHnbXVetl9rRgO6kjZszGGbraF3XPTIdgeA+s1lbRjSEftAnyT0w8ZMvQ==", "dev": true, "requires": { + "bl": "^4.0.3", "chalk": "^4.1.0", "cli-cursor": "^3.1.0", - "cli-spinners": "^2.4.0", + "cli-spinners": "^2.5.0", "is-interactive": "^1.0.0", "log-symbols": "^4.0.0", - "mute-stream": "0.0.8", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" }, @@ -5945,6 +5979,12 @@ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "dev": true }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true + }, "require-main-filename": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", @@ -6081,9 +6121,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.30.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.30.0.tgz", - "integrity": "sha512-26EUhOXRLaUY7+mWuRFqGeGGNmhB1vblpTENO1Z7mAzzIZeVxZr9EZoaY1kyGLFWdSOZxRMAufiN2mkbO6dAlw==", + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.0.tgz", + "integrity": "sha512-fhyqEbMIycQA4blrz/C0pYhv2o4x2y6FYYAH0CshBw3DXh5D5wyERgxw0ptdau1orc/GhNrhF7DFN2etyOCEng==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" @@ -6179,10 +6219,21 @@ } }, "serialize-error": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", - "integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=", - "dev": true + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dev": true, + "requires": { + "type-fest": "^0.13.1" + }, + "dependencies": { + "type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true + } + } }, "serve-static": { "version": "1.14.1", @@ -6556,43 +6607,31 @@ } }, "supertap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", - "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supertap/-/supertap-2.0.0.tgz", + "integrity": "sha512-jRzcXlCeDYvKoZGA5oRhYyR3jUIYu0enkSxtmAgHRlD7HwrovTpH4bDSi0py9FtuA8si9cW/fKommJHuaoDHJA==", "dev": true, "requires": { - "arrify": "^1.0.1", - "indent-string": "^3.2.0", - "js-yaml": "^3.10.0", - "serialize-error": "^2.1.0", - "strip-ansi": "^4.0.0" + "arrify": "^2.0.1", + "indent-string": "^4.0.0", + "js-yaml": "^3.14.0", + "serialize-error": "^7.0.1", + "strip-ansi": "^6.0.0" }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^5.0.0" } } } @@ -6606,17 +6645,29 @@ } }, "table": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.4.tgz", - "integrity": "sha512-sBT4xRLdALd+NFBvwOz8bw4b15htyythha+q+DVZqy2RS08PPC8O2sZFgJYEY7bJvbCFKccs+WIZ/cd+xxTWCw==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/table/-/table-6.0.6.tgz", + "integrity": "sha512-OInCtPmDNieVBkVFi6C8RwU2S2H0h8mF3e3TQK4nreaUNCpooQUkI+A/KuEkm5FawfhWIfNqG+qfelVVR+V00g==", "dev": true, "requires": { - "ajv": "^6.12.4", + "ajv": "^7.0.2", "lodash": "^4.17.20", "slice-ansi": "^4.0.0", "string-width": "^4.2.0" }, "dependencies": { + "ajv": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.0.3.tgz", + "integrity": "sha512-R50QRlXSxqXcQP5SvKUrw8VZeypvo12i2IX0EeR5PiZ7bEKeHWgzgo264LDadUsCU42lTJVhFikTqJwNeH34gQ==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", @@ -6629,6 +6680,12 @@ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, "slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index c06c90a28e7..451e1cc1791 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,14 +121,14 @@ "semver": "^7.3.4" }, "devDependencies": { - "ava": "^3.14.0", + "ava": "^3.15.0", "chokidar-cli": "^2.1.0", "cross-env": "^7.0.3", "depcheck": "^1.3.1", "docdash": "^1.2.0", - "eslint": "^7.16.0", + "eslint": "^7.17.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.7.9", + "eslint-plugin-jsdoc": "^30.7.10", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From c36fb2fc98456cdcd0290059e18a403bd04be40f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 10 Jan 2021 03:20:57 +0000 Subject: [PATCH 0470/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 99 +++++++++++++----------------- packages/project/package.json | 6 +- 2 files changed, 47 insertions(+), 58 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index be9673427d1..78aede2a89d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -490,16 +490,6 @@ "@sinonjs/commons": "^1.7.0" } }, - "@sinonjs/formatio": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-5.0.1.tgz", - "integrity": "sha512-KaiQ5pBf1MpS09MuA0kp6KBQt2JUOQycqVG1NZXvzeaXe5LGFqAKueIS0bw4w0P9r7KuBSVdUk5QjXsUdu2CxQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^5.0.2" - } - }, "@sinonjs/samsam": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.3.0.tgz", @@ -679,9 +669,9 @@ "dev": true }, "acorn-walk": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.0.0.tgz", - "integrity": "sha512-oZRad/3SMOI/pxbbmqyurIx7jHw1wZDcR9G44L8pUVFEomX/0dH89SrM1KaDXuv1NpzAXz6Op/Xu/Qd5XXzdEA==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.0.1.tgz", + "integrity": "sha512-zn/7dYtoTVkG4EoMU55QlQU4F+m+T7Kren6Vj3C2DapWPnakG/DL9Ns5aPAPW5Ixd3uxXrV/BoMKKVFIazPcdg==", "dev": true }, "agent-base": { @@ -1361,14 +1351,14 @@ } }, "chokidar": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.3.tgz", - "integrity": "sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.0.tgz", + "integrity": "sha512-JgQM9JS92ZbFR4P90EvmzNpSGhpPBGBSj10PILeDyYFwp4h2/D9OM03wsJ4zW1fEp4ka2DGrnUeD7FuvQ2aZ2Q==", "dev": true, "requires": { "anymatch": "~3.1.1", "braces": "~3.0.2", - "fsevents": "~2.1.2", + "fsevents": "~2.3.1", "glob-parent": "~5.1.0", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", @@ -2383,9 +2373,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "emittery": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.0.tgz", - "integrity": "sha512-XMGToId3CejfmZg/0qOzdTT3WFuAN8fQYtcKXccabRfCzGiWMSTydMshHGLyx9C/ejMl4nw9tvqrn12QVFPIUg==", + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", "dev": true }, "emoji-regex": { @@ -2761,9 +2751,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.7.10", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.10.tgz", - "integrity": "sha512-4ksmbfZ4nIG5xFahmyqBhoCzlOIw6/KU+Ld1zxGXWW4quXMcaZQE6L7WL74c0bpU9Iz/Ms8gbPaPZdW3sk1kSg==", + "version": "30.7.13", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.13.tgz", + "integrity": "sha512-YM4WIsmurrp0rHX6XiXQppqKB8Ne5ATiZLJe2+/fkp9l9ExXFr43BbAbjZaVrpCT+tuPYOZ8k1MICARHnURUNQ==", "dev": true, "requires": { "comment-parser": "^0.7.6", @@ -3202,9 +3192,9 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", "dev": true, "optional": true }, @@ -3321,9 +3311,9 @@ "dev": true }, "globby": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", - "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz", + "integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==", "requires": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -3983,9 +3973,9 @@ } }, "js-beautify": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.0.tgz", - "integrity": "sha512-/Tbp1OVzZjbwzwJQFIlYLm9eWQ+3aYbBXLSaqb1mEJzhcQAfrqMMQYtjb6io+U6KpD0ID4F+Id3/xcjH3l/sqA==", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.1.tgz", + "integrity": "sha512-RGc3cSmQR3xPzTtIFAMwHK0R84MwDNpxpZgoQGySGdzShfNjBjHXqz99kMFwXDGlMSFVJVlsUXBFfqKUzJbzUg==", "dev": true, "requires": { "config-chain": "^1.1.12", @@ -5176,9 +5166,9 @@ } }, "open": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/open/-/open-7.3.0.tgz", - "integrity": "sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==", + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/open/-/open-7.3.1.tgz", + "integrity": "sha512-f2wt9DCBKKjlFbjzGb8MOAW8LH8F0mrs1zc7KTjAJ9PZNQbfenzWbNP1VZJvw6ICMG9r14Ah6yfwPn7T7i646A==", "dev": true, "requires": { "is-docker": "^2.0.0", @@ -5507,9 +5497,9 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "peek-readable": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.0.tgz", - "integrity": "sha512-KGuODSTV6hcgdZvDrIDBUkN0utcAVj1LL7FfGbM0viKTtCHmtZcuEJ+lGqsp0fTFkGqesdtemV2yUSMeyy3ddA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.1.tgz", + "integrity": "sha512-QHJag0oYYPVkx6rVPEgCLEUMo6VRYbV3GUrqy00lxXJBEIw9LhPCP5MQI6mEfahJO9KYUP8W8qD8kC0V9RyZFQ==", "dev": true }, "picomatch": { @@ -6121,9 +6111,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.0.tgz", - "integrity": "sha512-fhyqEbMIycQA4blrz/C0pYhv2o4x2y6FYYAH0CshBw3DXh5D5wyERgxw0ptdau1orc/GhNrhF7DFN2etyOCEng==", + "version": "1.32.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.2.tgz", + "integrity": "sha512-u1pUuzqwz3SAgvHSWp1k0mRhX82b2DdlVnP6UIetQPZtYbuJUDaPQhZE12jyjB7vYeOScfz9WPsZJB6Rpk7heA==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" @@ -6288,14 +6278,13 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.2.tgz", - "integrity": "sha512-9Owi+RisvCZpB0bdOVFfL314I6I4YoRlz6Isi4+fr8q8YQsDPoCe5UnmNtKHRThX3negz2bXHWIuiPa42vM8EQ==", + "version": "9.2.3", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.3.tgz", + "integrity": "sha512-m+DyAWvqVHZtjnjX/nuShasykFeiZ+nPuEfD4G3gpvKGkXRhkF/6NSt2qN2FjZhfrcHXFzUzI+NLnk+42fnLEw==", "dev": true, "requires": { "@sinonjs/commons": "^1.8.1", "@sinonjs/fake-timers": "^6.0.1", - "@sinonjs/formatio": "^5.0.1", "@sinonjs/samsam": "^5.3.0", "diff": "^4.0.2", "nise": "^4.0.4", @@ -6596,14 +6585,14 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.4.tgz", - "integrity": "sha512-rqWMKwsbN9APU47bQTMEYTPcwdpKDtmf1jVhHzNW2cL1WqAxaM9iBb9t5P2fj+RV2YsErUWgQzHD5JwV0uCTEQ==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.6.tgz", + "integrity": "sha512-fVxvAEKDwHFfbQO1yKxKBPfkWZyBr0Zf20UQ/mblbkAQe5h0Xdd2jDb3Mh7yRZd7LSItJ9JWgQWelpEmVoBe2g==", "dev": true, "requires": { "@tokenizer/token": "^0.1.1", "@types/debug": "^4.1.5", - "peek-readable": "^3.1.0" + "peek-readable": "^3.1.1" } }, "supertap": { @@ -6645,9 +6634,9 @@ } }, "table": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.6.tgz", - "integrity": "sha512-OInCtPmDNieVBkVFi6C8RwU2S2H0h8mF3e3TQK4nreaUNCpooQUkI+A/KuEkm5FawfhWIfNqG+qfelVVR+V00g==", + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", + "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", "dev": true, "requires": { "ajv": "^7.0.2", @@ -7112,9 +7101,9 @@ } }, "uri-js": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz", - "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "requires": { "punycode": "^2.1.0" } diff --git a/packages/project/package.json b/packages/project/package.json index 451e1cc1791..d05b1ae2ed0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -128,18 +128,18 @@ "docdash": "^1.2.0", "eslint": "^7.17.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.7.10", + "eslint-plugin-jsdoc": "^30.7.13", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", - "js-beautify": "^1.13.0", + "js-beautify": "^1.13.1", "jsdoc": "^3.6.6", "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", "rimraf": "^3.0.2", - "sinon": "^9.2.2", + "sinon": "^9.2.3", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From cc4954955bf5c1a68cd6d79ceda2fa245f686583 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 14 Jan 2021 14:23:31 +0000 Subject: [PATCH 0471/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.5.1 to 2.6.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.6.0/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 78aede2a89d..66022146992 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -552,9 +552,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.5.1.tgz", - "integrity": "sha512-uDYhmTD4AhBSBwe2DXFKKE74oAJ51ybHTJ80klyomhuXFYaccHwyxo+dGLRuVs2FvGmTCeyIinD30XfNLmIMKw==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.6.0.tgz", + "integrity": "sha512-PJGl+E0ip3Ndl1viM0XFq4R5qycMonbtTfzg+x9RKyRJO/B6NYXn+oWCBVZU8HR1GtQzIEjK+inFhFr36ydz0A==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -564,7 +564,7 @@ "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "5.1.0", - "globby": "^11.0.1", + "globby": "^11.0.2", "graceful-fs": "^4.2.4", "jsdoc": "^3.6.6", "less-openui5": "^0.9.0", diff --git a/packages/project/package.json b/packages/project/package.json index d05b1ae2ed0..60bd8459c48 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.5.1", + "@ui5/builder": "^2.6.0", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.7", "ajv": "^6.12.6", From aedef6a4aad784fa4bbbbcb7c416772826733240 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 14 Jan 2021 14:39:02 +0100 Subject: [PATCH 0472/1272] [ui5-project][INTERNAL] Azure: Add Node v15, upgrade Ubuntu image --- packages/project/azure-pipelines.yml | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index fd9cd9987c1..3bcefc00167 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -9,20 +9,23 @@ trigger: strategy: matrix: linux_node_10: - imageName: 'ubuntu-18.04' + imageName: 'ubuntu-20.04' node_version: 10.x - linux_node_lts: - imageName: 'ubuntu-18.04' + linux_node_lts_12: + imageName: 'ubuntu-20.04' node_version: 12.x - linux_node_latest: - imageName: 'ubuntu-18.04' + linux_node_lts_14: + imageName: 'ubuntu-20.04' node_version: 14.x + linux_node_latest: + imageName: 'ubuntu-20.04' + node_version: 15.x mac_node_latest: imageName: 'macOS-10.15' - node_version: 14.x + node_version: 15.x windows_node_latest: imageName: 'windows-2019' - node_version: 14.x + node_version: 15.x pool: vmImage: $(imageName) From 11318f0831f825d403606ef771777f93361930cb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 14 Jan 2021 14:44:35 +0100 Subject: [PATCH 0473/1272] [ui5-project][INTERNAL] Dependabot: Add GitHub actions configuration --- packages/project/.github/dependabot.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/project/.github/dependabot.yml b/packages/project/.github/dependabot.yml index f21f718c1a6..34876dd803c 100644 --- a/packages/project/.github/dependabot.yml +++ b/packages/project/.github/dependabot.yml @@ -1,5 +1,9 @@ version: 2 updates: +- package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" - package-ecosystem: npm directory: "/" schedule: From 774db54751c654af0cf6e3212a7feb535077393f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 17 Jan 2021 03:21:11 +0000 Subject: [PATCH 0474/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 84 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 44 insertions(+), 44 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 66022146992..3c03aaff55c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -333,9 +333,9 @@ } }, "@eslint/eslintrc": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", - "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.3.0.tgz", + "integrity": "sha512-1JTKgrOKAHVivSvOYw+sJOunkBjUOvjqWk1DPja7ZFhIS2mX/4EgTT8M7eTK9jrKhL/FvXXEbQwIs3pg1xp3dg==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -345,7 +345,7 @@ "ignore": "^4.0.6", "import-fresh": "^3.2.1", "js-yaml": "^3.13.1", - "lodash": "^4.17.19", + "lodash": "^4.17.20", "minimatch": "^3.0.4", "strip-json-comments": "^3.1.1" }, @@ -473,9 +473,9 @@ "dev": true }, "@sinonjs/commons": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", - "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.2.tgz", + "integrity": "sha512-sruwd86RJHdsVf/AtBoijDmUqJp3B6hF/DGC23C+JaegnDHaZyewCjoVGTdg3J0uz3Zs7NnIT05OBOmML72lQw==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -491,9 +491,9 @@ } }, "@sinonjs/samsam": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.3.0.tgz", - "integrity": "sha512-hXpcfx3aq+ETVBwPlRFICld5EnrkexXuXDwqUNhDdr5L8VjvMeSRwyOa0qL7XFmR+jVWR4rUZtnxlG7RX72sBg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.3.1.tgz", + "integrity": "sha512-1Hc0b1TtyfBu8ixF/tpfSHTVWKwCBLY4QJbkgnE7HcwyvT2xArDxb4K7dMgqRm3szI+LJbzmW/s4xxEhv6hwDg==", "dev": true, "requires": { "@sinonjs/commons": "^1.6.0", @@ -1003,9 +1003,9 @@ "dev": true }, "binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true }, "bl": { @@ -1351,9 +1351,9 @@ } }, "chokidar": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.0.tgz", - "integrity": "sha512-JgQM9JS92ZbFR4P90EvmzNpSGhpPBGBSj10PILeDyYFwp4h2/D9OM03wsJ4zW1fEp4ka2DGrnUeD7FuvQ2aZ2Q==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", "dev": true, "requires": { "anymatch": "~3.1.1", @@ -2608,13 +2608,13 @@ } }, "eslint": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.17.0.tgz", - "integrity": "sha512-zJk08MiBgwuGoxes5sSQhOtibZ75pz0J35XTRlZOk9xMffhpA9BTbQZxoXZzOl5zMbleShbGwtw+1kGferfFwQ==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.18.0.tgz", + "integrity": "sha512-fbgTiE8BfUJZuBeq2Yi7J3RB3WGUQ9PNuNbmgi6jt9Iv8qrkxfy19Ds3OpL1Pm7zg3BtTVhvcUZbIRQ0wmSjAQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@eslint/eslintrc": "^0.2.2", + "@eslint/eslintrc": "^0.3.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2638,7 +2638,7 @@ "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", - "lodash": "^4.17.19", + "lodash": "^4.17.20", "minimatch": "^3.0.4", "natural-compare": "^1.4.0", "optionator": "^0.9.1", @@ -3973,9 +3973,9 @@ } }, "js-beautify": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.1.tgz", - "integrity": "sha512-RGc3cSmQR3xPzTtIFAMwHK0R84MwDNpxpZgoQGySGdzShfNjBjHXqz99kMFwXDGlMSFVJVlsUXBFfqKUzJbzUg==", + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.4.tgz", + "integrity": "sha512-M5yEWwonlEO3kPcCZ3K3KBSpFRZAEO3FAWC6wtbIGeyg7dusStxvF0WG+HRLBoMZqREXSRSxkkqClDE865x1sg==", "dev": true, "requires": { "config-chain": "^1.1.12", @@ -5497,9 +5497,9 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "peek-readable": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.1.tgz", - "integrity": "sha512-QHJag0oYYPVkx6rVPEgCLEUMo6VRYbV3GUrqy00lxXJBEIw9LhPCP5MQI6mEfahJO9KYUP8W8qD8kC0V9RyZFQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.3.tgz", + "integrity": "sha512-mpAcysyRJxmICBcBa5IXH7SZPvWkcghm6Fk8RekoS3v+BpbSzlZzuWbMx+GXrlUwESi9qHar4nVEZNMKylIHvg==", "dev": true }, "picomatch": { @@ -6111,9 +6111,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.2.tgz", - "integrity": "sha512-u1pUuzqwz3SAgvHSWp1k0mRhX82b2DdlVnP6UIetQPZtYbuJUDaPQhZE12jyjB7vYeOScfz9WPsZJB6Rpk7heA==", + "version": "1.32.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.4.tgz", + "integrity": "sha512-N0BT0PI/t3+gD8jKa83zJJUb7ssfQnRRfqN+GIErokW6U4guBpfYl8qYB+OFLEho+QvnV5ZH1R9qhUC/Z2Ch9w==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" @@ -6242,9 +6242,9 @@ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, "set-cookie-parser": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.4.6.tgz", - "integrity": "sha512-mNCnTUF0OYPwYzSHbdRdCfNNHqrne+HS5tS5xNb6yJbdP9wInV0q5xPLE0EyfV/Q3tImo3y/OXpD8Jn0Jtnjrg==" + "version": "2.4.7", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.4.7.tgz", + "integrity": "sha512-VaSdYN1DlYuKOzBKqhYJnwaPeirZdNNUNmYdnp9/6Umr9s8amidctYitrX2Gk8wCqiBuiG5mpOYCiVhG5o4iMQ==" }, "setprototypeof": { "version": "1.1.1", @@ -6585,14 +6585,14 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.6.tgz", - "integrity": "sha512-fVxvAEKDwHFfbQO1yKxKBPfkWZyBr0Zf20UQ/mblbkAQe5h0Xdd2jDb3Mh7yRZd7LSItJ9JWgQWelpEmVoBe2g==", + "version": "6.0.8", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.8.tgz", + "integrity": "sha512-QLgv+oiXwXgCgp2PdPPa+Jpp4D9imK9e/0BsyfeFMr6QL6wMVqoVn9+OXQ9I7MZbmUzN6lmitTJ09uwS2OmGcw==", "dev": true, "requires": { "@tokenizer/token": "^0.1.1", "@types/debug": "^4.1.5", - "peek-readable": "^3.1.1" + "peek-readable": "^3.1.3" } }, "supertap": { @@ -6965,13 +6965,13 @@ "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" }, "token-types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.0.0.tgz", - "integrity": "sha512-WWvu8sGK8/ZmGusekZJJ5NM6rRVTTDO7/bahz4NGiSDb/XsmdYBn6a1N/bymUHuWYTWeuLUg98wUzvE4jPdCZw==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.1.1.tgz", + "integrity": "sha512-wnQcqlreS6VjthyHO3Y/kpK/emflxDBNhlNUPfh7wE39KnuDdOituXomIbyI79vBtF0Ninpkh72mcuRHo+RG3Q==", "dev": true, "requires": { - "@tokenizer/token": "^0.1.0", - "ieee754": "^1.1.13" + "@tokenizer/token": "^0.1.1", + "ieee754": "^1.2.1" } }, "treeify": { diff --git a/packages/project/package.json b/packages/project/package.json index 60bd8459c48..588bf180f46 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -126,14 +126,14 @@ "cross-env": "^7.0.3", "depcheck": "^1.3.1", "docdash": "^1.2.0", - "eslint": "^7.17.0", + "eslint": "^7.18.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^30.7.13", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", - "js-beautify": "^1.13.1", + "js-beautify": "^1.13.4", "jsdoc": "^3.6.6", "mock-require": "^3.0.3", "nyc": "^15.1.0", From b92fb285f111e2a2e19b141beba0957cc82193ae Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 18 Jan 2021 08:17:17 +0000 Subject: [PATCH 0475/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3c03aaff55c..bd94a093e04 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2988,9 +2988,9 @@ "dev": true }, "fast-glob": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", - "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", + "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", From 55b4b8eba650bf7bdd6c8e3b0e5b7313de012461 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 Jan 2021 16:39:24 +0000 Subject: [PATCH 0476/1272] [ui5-project]Bump actions/setup-node from v1 to v2.1.4 Bumps [actions/setup-node](https://github.com/actions/setup-node) from v1 to v2.1.4. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v1...c46424eee26de4078d34105d3de3cc4992202b1e) Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 932ab27fde8..590fcf0b427 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -15,7 +15,7 @@ jobs: - uses: actions/checkout@v2 - name: Use Node.js LTS 14.x - uses: actions/setup-node@v1 + uses: actions/setup-node@v2.1.4 with: node-version: 14.x From 5cdbe2c240e32a0caad8fc5cfc0391a44ac55e32 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 19 Jan 2021 10:10:03 +0000 Subject: [PATCH 0477/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bd94a093e04..55a6b0ae01a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5444,9 +5444,9 @@ } }, "parse-json": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", - "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "requires": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", From 2d586c8fd6b92138b8b9afa21c19fdc1539c30f6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 17 Jan 2021 03:30:14 +0000 Subject: [PATCH 0478/1272] [ui5-project]Bump eslint-plugin-jsdoc from 30.7.13 to 31.0.5 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 30.7.13 to 31.0.5. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v30.7.13...v31.0.5) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 55a6b0ae01a..f0926ff5241 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1689,9 +1689,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "0.7.6", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.7.6.tgz", - "integrity": "sha512-GKNxVA7/iuTnAqGADlTWX4tkhzxZKXp5fLJqKTlQLHkE65XDUKutZ3BHaJC5IGcper2tT3QRD1xr4o3jNpgXXg==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.0.1.tgz", + "integrity": "sha512-korDJ16mBVZexVd485jz4AeAcAFP1UzeecfVgfBCBojLFjMEHEHOY9vgk3e9o1zRSP0EscavonLki4JZDCKmrg==", "dev": true }, "common-path-prefix": { @@ -2751,12 +2751,12 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "30.7.13", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.13.tgz", - "integrity": "sha512-YM4WIsmurrp0rHX6XiXQppqKB8Ne5ATiZLJe2+/fkp9l9ExXFr43BbAbjZaVrpCT+tuPYOZ8k1MICARHnURUNQ==", + "version": "31.0.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-31.0.5.tgz", + "integrity": "sha512-TiBVItHnBAtSAY4YfYq0PBIfcCqmInYpK7ziCgCQgBUdRT30JtIqZ6TLrH5kF237fpfSdFUFYCVkdlc+MZPd0g==", "dev": true, "requires": { - "comment-parser": "^0.7.6", + "comment-parser": "1.0.1", "debug": "^4.3.1", "jsdoctypeparser": "^9.0.0", "lodash": "^4.17.20", diff --git a/packages/project/package.json b/packages/project/package.json index 588bf180f46..657228d47dc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -128,7 +128,7 @@ "docdash": "^1.2.0", "eslint": "^7.18.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^30.7.13", + "eslint-plugin-jsdoc": "^31.0.5", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 1d764b6308313285f640529a06e668a3436f6e09 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 19 Jan 2021 11:09:14 +0100 Subject: [PATCH 0479/1272] [ui5-project][INTERNAL] ESLint: Resolve new JSDoc indent warnings --- packages/project/lib/ui5Framework/AbstractResolver.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 2e895454e1e..2804565bbbd 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -95,11 +95,11 @@ class AbstractResolver { * * @example * const libraryMetadataEntry = { - * "id": "@openui5/sap.ui.core", - * "version": "1.75.0", - * "path": "~/.ui5/framework/packages/@openui5/sap.ui.core/1.75.0", - * "dependencies": [], - * "optionalDependencies": [] + * "id": "@openui5/sap.ui.core", + * "version": "1.75.0", + * "path": "~/.ui5/framework/packages/@openui5/sap.ui.core/1.75.0", + * "dependencies": [], + * "optionalDependencies": [] * }; * * @public From 27033f5718193f319de180d85b846007897d21b2 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 21 Jan 2021 12:17:13 +0000 Subject: [PATCH 0480/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.6.0 to 2.6.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.6.1/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f0926ff5241..2e6233a1557 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -552,9 +552,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.6.0.tgz", - "integrity": "sha512-PJGl+E0ip3Ndl1viM0XFq4R5qycMonbtTfzg+x9RKyRJO/B6NYXn+oWCBVZU8HR1GtQzIEjK+inFhFr36ydz0A==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.6.1.tgz", + "integrity": "sha512-4cILVl+KtOlnbcfe6aaUSd08tFWKCDhdSxkbLK+P3eD+CLzW83fJvz7Oi58t3dR65IeqMVvic+APmyK5HhpX1g==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 657228d47dc..7714b2d8074 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.6.0", + "@ui5/builder": "^2.6.1", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.7", "ajv": "^6.12.6", From c30c3ded51c69d4a8f109701dcd3d95e87dff626 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 21 Jan 2021 16:42:12 +0100 Subject: [PATCH 0481/1272] [ui5-project][FIX] ui5Framework.Installer: Ensure atomic install process Start a package install into a dedicated staging directory. Only if download and extraction have completed, rename the staging- to the target directory. If subsequent ui5Framework translator executions detect an existing staging directory during installation of a package, this directory shall be removed first to ensure a complete install. Alternative approach to https://github.com/SAP/ui5-project/pull/382 Resolves https://github.com/SAP/ui5-tooling/issues/478 --- .../lib/ui5Framework/AbstractResolver.js | 3 + .../project/lib/ui5Framework/npm/Installer.js | 34 +- packages/project/package.json | 2 +- .../translators/ui5Framework.integration.js | 5 + .../test/lib/ui5framework/npm/Installer.js | 328 +++++++++++++++++- 5 files changed, 359 insertions(+), 13 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 2804565bbbd..59228d74239 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -83,6 +83,9 @@ class AbstractResolver { try { await this._processLibrary(libraryName, libraryMetadata, errors); } catch (err) { + log.verbose(`Failed to process library ${libraryName}`); + log.verbose(`Error: ${err.message}`); + log.verbose(`Call stack: ${err.stack}`); return `Failed to resolve library ${libraryName}: ${err.message}`; } })); diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index b2356390240..ec4fce710a3 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -3,6 +3,7 @@ const fs = require("graceful-fs"); const {promisify} = require("util"); const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); +const rename = promisify(fs.rename); const lockfile = require("lockfile"); const lock = promisify(lockfile.lock); const unlock = promisify(lockfile.unlock); @@ -18,13 +19,14 @@ class Installer { if (!ui5HomeDir) { throw new Error(`Installer: Missing parameter "ui5HomeDir"`); } - this._baseDir = path.join(ui5HomeDir, "framework", "packages"); - log.verbose(`Installing to: ${this._baseDir}`); + this._packagesDir = path.join(ui5HomeDir, "framework", "packages"); + log.verbose(`Installing to: ${this._packagesDir}`); this._registry = new Registry({ cwd, cacheDir: path.join(ui5HomeDir, "framework", "cacache") }); this._lockDir = path.join(ui5HomeDir, "framework", "locks"); + this._stagingDir = path.join(ui5HomeDir, "framework", "staging"); } async readJson(jsonPath) { @@ -67,9 +69,21 @@ class Installer { // check again whether package is now installed const installed = await this._packageJsonExists(targetDir); if (!installed) { + const stagingDir = this._getStagingDirForPackage({pkgName, version}); log.info(`Installing missing package ${pkgName}...`); - log.verbose(`Installing ${pkgName} in version ${version} to ${targetDir}...`); - await this._registry.extractPackage(pkgName, version, targetDir); + + // Check whether staging dir already exists and remove it + if (await this._pathExists(stagingDir)) { + const rimraf = promisify(require("rimraf")); + log.verbose(`Removing existing staging directory at ${stagingDir}...`); + await rimraf(stagingDir); + } + + log.verbose(`Installing ${pkgName} in version ${version} to ${stagingDir}...`); + await this._registry.extractPackage(pkgName, version, stagingDir); + await mkdirp(targetDir); + log.verbose(`Promoting staging directory from ${stagingDir} to ${targetDir}...`); + await rename(stagingDir, targetDir); } else { log.verbose(`Alrady installed: ${pkgName} in version ${version}`); } @@ -83,8 +97,12 @@ class Installer { } async _packageJsonExists(targetDir) { + return this._pathExists(path.join(targetDir, "package.json")); + } + + async _pathExists(targetPath) { try { - await stat(path.join(targetDir, "package.json")); + await stat(targetPath); return true; } catch (err) { if (err.code === "ENOENT") { // "File or directory does not exist" @@ -118,7 +136,11 @@ class Installer { } _getTargetDirForPackage({pkgName, version}) { - return path.join(this._baseDir, ...pkgName.split("/"), version); + return path.join(this._packagesDir, ...pkgName.split("/"), version); + } + + _getStagingDirForPackage({pkgName, version}) { + return path.join(this._stagingDir, `${pkgName.replace("/", "-")}-${version}`); } } diff --git a/packages/project/package.json b/packages/project/package.json index 7714b2d8074..0f140d515f4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,6 +118,7 @@ "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", "resolve": "^1.19.0", + "rimraf": "^3.0.2", "semver": "^7.3.4" }, "devDependencies": { @@ -138,7 +139,6 @@ "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", - "rimraf": "^3.0.2", "sinon": "^9.2.3", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/translators/ui5Framework.integration.js index 7c3a4b48040..ad68421950a 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/translators/ui5Framework.integration.js @@ -3,6 +3,7 @@ const sinon = require("sinon"); const mock = require("mock-require"); const path = require("path"); const os = require("os"); +const fs = require("graceful-fs"); const pacote = require("pacote"); const libnpmconfig = require("libnpmconfig"); @@ -19,6 +20,10 @@ const fakeBaseDir = path.join(__dirname, "fake-tmp"); const ui5FrameworkBaseDir = path.join(fakeBaseDir, "homedir", ".ui5", "framework"); const ui5PackagesBaseDir = path.join(ui5FrameworkBaseDir, "packages"); +test.before((t) => { + sinon.stub(fs, "rename").yieldsAsync(); +}); + test.beforeEach((t) => { sinon.stub(libnpmconfig, "read").returns({ toJSON: () => { diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index 26606dc0296..a37e1daa469 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -2,6 +2,7 @@ const test = require("ava"); const sinon = require("sinon"); const mock = require("mock-require"); const path = require("path"); +const fs = require("graceful-fs"); const lockfile = require("lockfile"); @@ -11,8 +12,13 @@ test.beforeEach((t) => { t.context.mkdirpStub = sinon.stub().resolves(); mock("mkdirp", t.context.mkdirpStub); + t.context.rimrafStub = sinon.stub().yieldsAsync(); + mock("rimraf", t.context.rimrafStub); + t.context.lockStub = sinon.stub(lockfile, "lock"); t.context.unlockStub = sinon.stub(lockfile, "unlock"); + t.context.renameStub = sinon.stub(fs, "rename").yieldsAsync(); + t.context.statStub = sinon.stub(fs, "stat").callThrough(); // Re-require to ensure that mocked modules are used Installer = mock.reRequire("../../../../lib/ui5Framework/npm/Installer"); @@ -29,8 +35,9 @@ test.serial("Installer: constructor", (t) => { ui5HomeDir: "/ui5Home/" }); t.true(installer instanceof Installer, "Constructor returns instance of class"); - t.is(installer._baseDir, path.join("/ui5Home/", "framework", "packages")); + t.is(installer._packagesDir, path.join("/ui5Home/", "framework", "packages")); t.is(installer._lockDir, path.join("/ui5Home/", "framework", "locks")); + t.is(installer._stagingDir, path.join("/ui5Home/", "framework", "staging")); }); test.serial("Installer: constructor requires 'cwd'", (t) => { @@ -249,7 +256,6 @@ test.serial("Installer: _synchronize", async (t) => { ui5HomeDir: "/ui5Home/" }); - t.context.mkdirpStub.resolves(); t.context.lockStub.yieldsAsync(); t.context.unlockStub.yieldsAsync(); @@ -294,7 +300,6 @@ test.serial("Installer: _synchronize should unlock when callback promise has res ui5HomeDir: "/ui5Home/" }); - t.context.mkdirpStub.resolves(); t.context.lockStub.yieldsAsync(); t.context.unlockStub.yieldsAsync(); @@ -323,7 +328,6 @@ test.serial("Installer: _synchronize should throw when locking fails", async (t) ui5HomeDir: "/ui5Home/" }); - t.context.mkdirpStub.resolves(); t.context.lockStub.yieldsAsync(new Error("Locking error")); sinon.stub(installer, "_getLockPath").returns("/locks/lockfile.lock"); @@ -347,7 +351,6 @@ test.serial("Installer: _synchronize should still unlock when callback throws an ui5HomeDir: "/ui5Home/" }); - t.context.mkdirpStub.resolves(); t.context.lockStub.yieldsAsync(); t.context.unlockStub.yieldsAsync(); @@ -373,7 +376,6 @@ test.serial("Installer: _synchronize should still unlock when callback rejects w ui5HomeDir: "/ui5Home/" }); - t.context.mkdirpStub.resolves(); t.context.lockStub.yieldsAsync(); t.context.unlockStub.yieldsAsync(); @@ -392,3 +394,317 @@ test.serial("Installer: _synchronize should still unlock when callback rejects w t.is(t.context.lockStub.callCount, 1, "lock should be called once"); t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); }); + +test.serial("Installer: installPackage with new package", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + t.context.lockStub.yieldsAsync(); + t.context.unlockStub.yieldsAsync(); + + const getTargetDirForPackageStub = sinon.stub(installer, "_getTargetDirForPackage") + .returns("package-dir-path"); + + const packageJsonExistsStub = sinon.stub(installer, "_packageJsonExists").resolves(false); + const synchronizeSpy = sinon.spy(installer, "_synchronize"); + + const getStagingDirForPackageStub = sinon.stub(installer, "_getStagingDirForPackage") + .returns("staging-dir-path"); + const pathExistsStub = sinon.stub(installer, "_pathExists").resolves(false); + + const extractPackageStub = sinon.stub(installer._registry, "extractPackage").resolves(); + + const res = await installer.installPackage({ + pkgName: "myPackage", + version: "1.2.3" + }); + + t.deepEqual(res, { + pkgPath: "package-dir-path" + }, "Should return correct values"); + + t.is(getTargetDirForPackageStub.callCount, 1, "_getTargetDirForPackage should be called once"); + t.deepEqual(getTargetDirForPackageStub.getCall(0).args[0], { + pkgName: "myPackage", + version: "1.2.3" + }, "_getTargetDirForPackage should be called with the correct arguments"); + + t.is(packageJsonExistsStub.callCount, 2, "_packageJsonExists should be called twice"); + t.is(packageJsonExistsStub.getCall(0).args[0], "package-dir-path", + "_packageJsonExists should be called with the correct arguments on first call"); + t.is(packageJsonExistsStub.getCall(1).args[0], "package-dir-path", + "_packageJsonExists should be called with the correct arguments on second call"); + + t.is(synchronizeSpy.callCount, 1, "_synchronize should be called once"); + t.deepEqual(synchronizeSpy.getCall(0).args[0], { + pkgName: "myPackage", + version: "1.2.3" + }, "_synchronize should be called with the correct first argument"); + t.is(t.context.lockStub.callCount, 1, "lock should be called once"); + t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); + + t.is(getStagingDirForPackageStub.callCount, 1, "_getStagingDirForPackage should be called once"); + t.deepEqual(getStagingDirForPackageStub.getCall(0).args[0], { + pkgName: "myPackage", + version: "1.2.3" + }, "_getStagingDirForPackage should be called with the correct arguments"); + + t.is(pathExistsStub.callCount, 1, "_pathExists should be called once"); + t.is(pathExistsStub.getCall(0).args[0], "staging-dir-path", + "_packageJsonExists should be called with the correct arguments"); + t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); + + t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); + + t.is(t.context.mkdirpStub.callCount, 2, "mkdirp should be called twice"); + t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + "mkdirp should be called with the correct arguments on first call"); + t.is(t.context.mkdirpStub.getCall(1).args[0], "package-dir-path", + "mkdirp should be called with the correct arguments on second call"); + + t.is(t.context.renameStub.callCount, 1, "fs.rename should be called once"); + t.is(t.context.renameStub.getCall(0).args[0], "staging-dir-path", + "fs.rename should be called with the correct first argument"); + t.is(t.context.renameStub.getCall(0).args[1], "package-dir-path", + "fs.rename should be called with the correct second argument"); +}); + +test.serial("Installer: installPackage with already installed package", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + t.context.lockStub.yieldsAsync(); + t.context.unlockStub.yieldsAsync(); + + const getTargetDirForPackageStub = sinon.stub(installer, "_getTargetDirForPackage") + .returns("package-dir-path"); + + const packageJsonExistsStub = sinon.stub(installer, "_packageJsonExists").resolves(true); + const synchronizeSpy = sinon.spy(installer, "_synchronize"); + + const getStagingDirForPackageStub = sinon.stub(installer, "_getStagingDirForPackage") + .returns("staging-dir-path"); + const pathExistsStub = sinon.stub(installer, "_pathExists").resolves(false); + + const extractPackageStub = sinon.stub(installer._registry, "extractPackage").resolves(); + + const res = await installer.installPackage({ + pkgName: "myPackage", + version: "1.2.3" + }); + + t.deepEqual(res, { + pkgPath: "package-dir-path" + }, "Should return correct values"); + + t.is(getTargetDirForPackageStub.callCount, 1, "_getTargetDirForPackage should be called once"); + t.deepEqual(getTargetDirForPackageStub.getCall(0).args[0], { + pkgName: "myPackage", + version: "1.2.3" + }, "_getTargetDirForPackage should be called with the correct arguments"); + + t.is(packageJsonExistsStub.callCount, 1, "_packageJsonExists should be called once"); + t.is(packageJsonExistsStub.getCall(0).args[0], "package-dir-path", + "_packageJsonExists should be called with the correct arguments on first call"); + + t.is(synchronizeSpy.callCount, 0, "_synchronize should never be called"); + t.is(t.context.lockStub.callCount, 0, "lock should never be called"); + t.is(t.context.unlockStub.callCount, 0, "unlock should never be called"); + t.is(getStagingDirForPackageStub.callCount, 0, "_getStagingDirForPackage should never be called"); + t.is(pathExistsStub.callCount, 0, "_pathExists should never be called"); + t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); + t.is(extractPackageStub.callCount, 0, "_extractPackage should never be called"); + t.is(t.context.mkdirpStub.callCount, 0, "mkdirp should never be called"); + t.is(t.context.renameStub.callCount, 0, "fs.rename should never be called"); +}); + +test.serial("Installer: installPackage with install already in progress", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + t.context.lockStub.yieldsAsync(); + t.context.unlockStub.yieldsAsync(); + + const getTargetDirForPackageStub = sinon.stub(installer, "_getTargetDirForPackage") + .returns("package-dir-path"); + + const packageJsonExistsStub = sinon.stub(installer, "_packageJsonExists") + .onFirstCall().resolves(false) + .onSecondCall().resolves(true); // After lock got acquired, package has been installed + + const synchronizeSpy = sinon.spy(installer, "_synchronize"); + + const getStagingDirForPackageStub = sinon.stub(installer, "_getStagingDirForPackage") + .returns("staging-dir-path"); + const pathExistsStub = sinon.stub(installer, "_pathExists").resolves(false); + + const extractPackageStub = sinon.stub(installer._registry, "extractPackage").resolves(); + + await installer.installPackage({ + pkgName: "myPackage", + version: "1.2.3" + }); + + t.is(getTargetDirForPackageStub.callCount, 1, "_getTargetDirForPackage should be called once"); + t.deepEqual(getTargetDirForPackageStub.getCall(0).args[0], { + pkgName: "myPackage", + version: "1.2.3" + }, "_getTargetDirForPackage should be called with the correct arguments"); + + t.is(packageJsonExistsStub.callCount, 2, "_packageJsonExists should be called twice"); + t.is(packageJsonExistsStub.getCall(0).args[0], "package-dir-path", + "_packageJsonExists should be called with the correct arguments on first call"); + t.is(packageJsonExistsStub.getCall(1).args[0], "package-dir-path", + "_packageJsonExists should be called with the correct arguments on second call"); + + t.is(synchronizeSpy.callCount, 1, "_synchronize should be called once"); + t.deepEqual(synchronizeSpy.getCall(0).args[0], { + pkgName: "myPackage", + version: "1.2.3" + }, "_synchronize should be called with the correct first argument"); + t.is(t.context.lockStub.callCount, 1, "lock should be called once"); + t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); + + t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); + + t.is(t.context.mkdirpStub.callCount, 1, "mkdirp should be called once"); + t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + "mkdirp should be called with the correct arguments"); + + t.is(getStagingDirForPackageStub.callCount, 0, "_getStagingDirForPackage should never be called"); + t.is(pathExistsStub.callCount, 0, "_pathExists should never be called"); + t.is(extractPackageStub.callCount, 0, "_extractPackage should never be called"); + t.is(t.context.renameStub.callCount, 0, "fs.rename should never be called"); +}); + +test.serial("Installer: installPackage with new package and existing staging", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + t.context.lockStub.yieldsAsync(); + t.context.unlockStub.yieldsAsync(); + + const getTargetDirForPackageStub = sinon.stub(installer, "_getTargetDirForPackage") + .returns("package-dir-path"); + + const packageJsonExistsStub = sinon.stub(installer, "_packageJsonExists").resolves(false); + const synchronizeSpy = sinon.spy(installer, "_synchronize"); + + const getStagingDirForPackageStub = sinon.stub(installer, "_getStagingDirForPackage") + .returns("staging-dir-path"); + const pathExistsStub = sinon.stub(installer, "_pathExists").resolves(true); // Staging dir exists + + const extractPackageStub = sinon.stub(installer._registry, "extractPackage").resolves(); + + const res = await installer.installPackage({ + pkgName: "myPackage", + version: "1.2.3" + }); + + t.deepEqual(res, { + pkgPath: "package-dir-path" + }, "Should return correct values"); + + t.is(getTargetDirForPackageStub.callCount, 1, "_getTargetDirForPackage should be called once"); + t.deepEqual(getTargetDirForPackageStub.getCall(0).args[0], { + pkgName: "myPackage", + version: "1.2.3" + }, "_getTargetDirForPackage should be called with the correct arguments"); + + t.is(packageJsonExistsStub.callCount, 2, "_packageJsonExists should be called twice"); + t.is(packageJsonExistsStub.getCall(0).args[0], "package-dir-path", + "_packageJsonExists should be called with the correct arguments on first call"); + t.is(packageJsonExistsStub.getCall(1).args[0], "package-dir-path", + "_packageJsonExists should be called with the correct arguments on second call"); + + t.is(synchronizeSpy.callCount, 1, "_synchronize should be called once"); + t.deepEqual(synchronizeSpy.getCall(0).args[0], { + pkgName: "myPackage", + version: "1.2.3" + }, "_synchronize should be called with the correct first argument"); + t.is(t.context.lockStub.callCount, 1, "lock should be called once"); + t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); + + t.is(getStagingDirForPackageStub.callCount, 1, "_getStagingDirForPackage should be called once"); + t.deepEqual(getStagingDirForPackageStub.getCall(0).args[0], { + pkgName: "myPackage", + version: "1.2.3" + }, "_getStagingDirForPackage should be called with the correct arguments"); + + t.is(pathExistsStub.callCount, 1, "_pathExists should be called once"); + t.is(pathExistsStub.getCall(0).args[0], "staging-dir-path", + "_packageJsonExists should be called with the correct arguments"); + + t.is(t.context.rimrafStub.callCount, 1, "rimraf should be called once"); + t.is(t.context.rimrafStub.getCall(0).args[0], "staging-dir-path", + "rimraf should be called with the correct arguments"); + + t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); + + t.is(t.context.mkdirpStub.callCount, 2, "mkdirp should be called twice"); + t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + "mkdirp should be called with the correct arguments on first call"); + t.is(t.context.mkdirpStub.getCall(1).args[0], "package-dir-path", + "mkdirp should be called with the correct arguments on second call"); + + t.is(t.context.renameStub.callCount, 1, "fs.rename should be called once"); + t.is(t.context.renameStub.getCall(0).args[0], "staging-dir-path", + "fs.rename should be called with the correct first argument"); + t.is(t.context.renameStub.getCall(0).args[1], "package-dir-path", + "fs.rename should be called with the correct second argument"); +}); + +test.serial("Installer: _pathExists - exists", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + const res = await installer._pathExists(__dirname); + + t.is(res, true, "Path should exist"); + t.is(t.context.statStub.getCall(0).args[0], __dirname, + "fs.stat should be called with correct arguments"); +}); + +test.serial("Installer: _pathExists - does not exist", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + const notFoundError = new Error("Not found"); + notFoundError.code = "ENOENT"; + t.context.statStub.yieldsAsync(notFoundError); + + const res = await installer._pathExists("my-path"); + + t.is(res, false, "Path should not exist"); + t.is(t.context.statStub.getCall(0).args[0], "my-path", + "fs.stat should be called with correct arguments"); +}); + +test.serial("Installer: _pathExists - re-throws unexpected errors", async (t) => { + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + const notFoundError = new Error("Pony Error"); + notFoundError.code = "PONY"; + t.context.statStub.yieldsAsync(notFoundError); + + const err = await t.throwsAsync(installer._pathExists("my-path")); + + t.is(err, notFoundError, "Should throw with expected exception"); + t.is(t.context.statStub.getCall(0).args[0], "my-path", + "fs.stat should be called with correct arguments"); +}); From 15aca0be2989676fae07d7f292eb11d5730ac4c8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 26 Jan 2021 10:26:43 +0000 Subject: [PATCH 0482/1272] [ui5-project]Release 2.2.5 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 0f0b259b864..02617fba981 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.4...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.5...HEAD). + + +## [v2.2.5] - 2021-01-21 +### Bug Fixes +- **ui5Framework.Installer:** Ensure atomic install process [`72568a9`](https://github.com/SAP/ui5-project/commit/72568a990620cee69ffaf2470c684a7ba02c200c) + ## [v2.2.4] - 2020-11-06 @@ -217,6 +223,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.2.5]: https://github.com/SAP/ui5-project/compare/v2.2.4...v2.2.5 [v2.2.4]: https://github.com/SAP/ui5-project/compare/v2.2.3...v2.2.4 [v2.2.3]: https://github.com/SAP/ui5-project/compare/v2.2.2...v2.2.3 [v2.2.2]: https://github.com/SAP/ui5-project/compare/v2.2.1...v2.2.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2e6233a1557..326ba64da88 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.4", + "version": "2.2.5", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 0f140d515f4..bae5693d7bb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.4", + "version": "2.2.5", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 38c51bcdfa0d0d692f8eae043513897ffff483a1 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 26 Jan 2021 16:43:07 +0000 Subject: [PATCH 0483/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 64 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 34 insertions(+), 34 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 326ba64da88..0b3fa1deafb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -657,9 +657,9 @@ } }, "acorn": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.4.tgz", - "integrity": "sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ==", + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.5.tgz", + "integrity": "sha512-v+DieK/HJkJOpFBETDJioequtc3PfxsWMaxIdIwujtF7FEV/MAyDQLlm6/zPvr7Mix07mLh6ccVwIsloceodlg==", "dev": true }, "acorn-jsx": { @@ -669,9 +669,9 @@ "dev": true }, "acorn-walk": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.0.1.tgz", - "integrity": "sha512-zn/7dYtoTVkG4EoMU55QlQU4F+m+T7Kren6Vj3C2DapWPnakG/DL9Ns5aPAPW5Ixd3uxXrV/BoMKKVFIazPcdg==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.0.2.tgz", + "integrity": "sha512-+bpA9MJsHdZ4bgfDcpk0ozQyhhVct7rzOmO0s1IIr0AGGgKBljss8n2zp11rRP2wid5VGeh04CgeKzgat5/25A==", "dev": true }, "agent-base": { @@ -952,9 +952,9 @@ "dev": true }, "ansi-styles": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.0.0.tgz", - "integrity": "sha512-6564t0m0fuQMnockqBv7wJxo9T5C2V9JpYXyNScfRDPVLusOQQhkpMGrFC17QbiolraQ1sMXX+Y5nJpjqozL4g==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.1.0.tgz", + "integrity": "sha512-osxifZo3ar56+e8tdYreU6p8FZGciBHo5O0JoDAxMUqZuyNUb+yHEwYtJZ+Z32R459jEgtwVf1u8D7qYwU0l6w==", "dev": true }, "debug": { @@ -1689,9 +1689,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.0.1.tgz", - "integrity": "sha512-korDJ16mBVZexVd485jz4AeAcAFP1UzeecfVgfBCBojLFjMEHEHOY9vgk3e9o1zRSP0EscavonLki4JZDCKmrg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.1.1.tgz", + "integrity": "sha512-vue7cRi1ZO5/72FJ+wZ5+siTSBlUv3ZksTk8bWD2IkaA6obitzMZP3yI65azTJLckwmi8lxfPP5Sd9oGuZ8e2g==", "dev": true }, "common-path-prefix": { @@ -2751,12 +2751,12 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "31.0.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-31.0.5.tgz", - "integrity": "sha512-TiBVItHnBAtSAY4YfYq0PBIfcCqmInYpK7ziCgCQgBUdRT30JtIqZ6TLrH5kF237fpfSdFUFYCVkdlc+MZPd0g==", + "version": "31.3.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-31.3.3.tgz", + "integrity": "sha512-7kmYu7qQpwe4gCLTBGSpwkiCzmsDlQui7HNlEArUE6Jbqb6ddWpn4Q4X26bOpcByRsyAwm+0xwZtWmJVSue+kw==", "dev": true, "requires": { - "comment-parser": "1.0.1", + "comment-parser": "1.1.1", "debug": "^4.3.1", "jsdoctypeparser": "^9.0.0", "lodash": "^4.17.20", @@ -3113,9 +3113,9 @@ } }, "flatted": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.0.tgz", - "integrity": "sha512-tW+UkmtNg/jv9CSofAKvgVcO7c2URjhTdW1ZTkcAritblu8tajiYy7YisnIflEwtKssCtOxpnBRoCB7iap0/TA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", + "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, "flush-write-stream": { @@ -3128,9 +3128,9 @@ } }, "follow-redirects": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.1.tgz", - "integrity": "sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.2.tgz", + "integrity": "sha512-6mPTgLxYm3r6Bkkg0vNM0HTjfGrOEtsfbhagQvbxDEsEkpNhw582upBaoRZylzen6krEmxXJgt9Ju6HiI4O7BA==" }, "foreground-child": { "version": "2.0.0", @@ -5202,9 +5202,9 @@ } }, "ora": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.2.0.tgz", - "integrity": "sha512-+wG2v8TUU8EgzPHun1k/n45pXquQ9fHnbXVetl9rRgO6kjZszGGbraF3XPTIdgeA+s1lbRjSEftAnyT0w8ZMvQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz", + "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==", "dev": true, "requires": { "bl": "^4.0.3", @@ -6111,9 +6111,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.4", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.4.tgz", - "integrity": "sha512-N0BT0PI/t3+gD8jKa83zJJUb7ssfQnRRfqN+GIErokW6U4guBpfYl8qYB+OFLEho+QvnV5ZH1R9qhUC/Z2Ch9w==", + "version": "1.32.5", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.5.tgz", + "integrity": "sha512-kU1yJ5zUAmPxr7f3q0YXTAd1oZjSR1g3tYyv+xu0HZSl5JiNOaE987eiz7wCUvbm4I9fGWGU2TgApTtcP4GMNQ==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" @@ -6278,14 +6278,14 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "9.2.3", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.3.tgz", - "integrity": "sha512-m+DyAWvqVHZtjnjX/nuShasykFeiZ+nPuEfD4G3gpvKGkXRhkF/6NSt2qN2FjZhfrcHXFzUzI+NLnk+42fnLEw==", + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.4.tgz", + "integrity": "sha512-zljcULZQsJxVra28qIAL6ow1Z9tpattkCTEJR4RBP3TGc00FcttsP5pK284Nas5WjMZU5Yzy3kAIp3B3KRf5Yg==", "dev": true, "requires": { "@sinonjs/commons": "^1.8.1", "@sinonjs/fake-timers": "^6.0.1", - "@sinonjs/samsam": "^5.3.0", + "@sinonjs/samsam": "^5.3.1", "diff": "^4.0.2", "nise": "^4.0.4", "supports-color": "^7.1.0" diff --git a/packages/project/package.json b/packages/project/package.json index bae5693d7bb..26140f42961 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.18.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^31.0.5", + "eslint-plugin-jsdoc": "^31.3.3", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", @@ -139,7 +139,7 @@ "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", - "sinon": "^9.2.3", + "sinon": "^9.2.4", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From cde1cb9e9921af678daa09d2fe36de7c10a2a5ba Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 26 Jan 2021 18:23:52 +0000 Subject: [PATCH 0484/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.6.1 to 2.7.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.7.0/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0b3fa1deafb..c91464760bb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -552,9 +552,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.6.1.tgz", - "integrity": "sha512-4cILVl+KtOlnbcfe6aaUSd08tFWKCDhdSxkbLK+P3eD+CLzW83fJvz7Oi58t3dR65IeqMVvic+APmyK5HhpX1g==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.7.0.tgz", + "integrity": "sha512-UMcCCbgXL4kbMC3lIMLqu4rmIni2318MiReA+EmGFGBuNlsELCm2eHmclGqd9ZYVo3/6T+utigV2tnH8ioXb9A==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 26140f42961..adbaa023371 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.6.1", + "@ui5/builder": "^2.7.0", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.7", "ajv": "^6.12.6", From 5a32d2aa6917d956ba2885e03d9e29a8ee586d8c Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 27 Jan 2021 11:50:45 +0000 Subject: [PATCH 0485/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c91464760bb..6686c95a756 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2751,9 +2751,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "31.3.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-31.3.3.tgz", - "integrity": "sha512-7kmYu7qQpwe4gCLTBGSpwkiCzmsDlQui7HNlEArUE6Jbqb6ddWpn4Q4X26bOpcByRsyAwm+0xwZtWmJVSue+kw==", + "version": "31.4.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-31.4.0.tgz", + "integrity": "sha512-NX387IVQrA/ZE9F1tpeEFzZDsXb/BJS4HdT1ZH0RME3O/4DJF8GNQnjMSia8O3gFx/kjfASsdmK5LglVs+xGLA==", "dev": true, "requires": { "comment-parser": "1.1.1", @@ -3973,9 +3973,9 @@ } }, "js-beautify": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.4.tgz", - "integrity": "sha512-M5yEWwonlEO3kPcCZ3K3KBSpFRZAEO3FAWC6wtbIGeyg7dusStxvF0WG+HRLBoMZqREXSRSxkkqClDE865x1sg==", + "version": "1.13.5", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.5.tgz", + "integrity": "sha512-MsXlH6Z/BiRYSkSRW3clNDqDjSpiSNOiG8xYVUBXt4k0LnGvDhlTGOlHX1VFtAdoLmtwjxMG5qiWKy/g+Ipv5w==", "dev": true, "requires": { "config-chain": "^1.1.12", diff --git a/packages/project/package.json b/packages/project/package.json index adbaa023371..5d28acf08a8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,12 +129,12 @@ "docdash": "^1.2.0", "eslint": "^7.18.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^31.3.3", + "eslint-plugin-jsdoc": "^31.4.0", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", - "js-beautify": "^1.13.4", + "js-beautify": "^1.13.5", "jsdoc": "^3.6.6", "mock-require": "^3.0.3", "nyc": "^15.1.0", From 9d7187a24d7338a618400c55fd7cf3abe7ceb8b6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 28 Jan 2021 12:45:08 +0100 Subject: [PATCH 0486/1272] [ui5-project][FIX] ui5Framework.Installer: Ensure target directory does not exist before rename (#390) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Renaming a directory might fail with an EPERM error on Windows if the target already exists. Therefore we stop creating the target directory before the rename (this was probably the main problem) and also ensure that it does not exist for whatever other reasons. Related: #389 Resolves: SAP/ui5-tooling#487 Co-authored-by: Matthias Oßwald <1410947+matz3@users.noreply.github.com> --- .../project/lib/ui5Framework/npm/Installer.js | 15 ++++++- .../test/lib/ui5framework/npm/Installer.js | 40 +++++++++++-------- 2 files changed, 38 insertions(+), 17 deletions(-) diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index ec4fce710a3..91814ba3bbd 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -79,9 +79,22 @@ class Installer { await rimraf(stagingDir); } + // Check whether target dir already exists and remove it. + // A target directory already existing but missing a package.json should + // never happen. However, we want to be *really* sure that there is no target + // directory so that the rename operation won't have any no trouble. + if (await this._pathExists(targetDir)) { + const rimraf = promisify(require("rimraf")); + log.verbose(`Removing existing target directory at ${targetDir}...`); + await rimraf(targetDir); + } + log.verbose(`Installing ${pkgName} in version ${version} to ${stagingDir}...`); await this._registry.extractPackage(pkgName, version, stagingDir); - await mkdirp(targetDir); + + // Do not create target dir itself to prevent EPERM error in following rename operation + // (https://github.com/SAP/ui5-tooling/issues/487) + await mkdirp(path.dirname(targetDir)); log.verbose(`Promoting staging directory from ${stagingDir} to ${targetDir}...`); await rename(stagingDir, targetDir); } else { diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index a37e1daa469..dd6e8f73e6c 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -404,8 +404,9 @@ test.serial("Installer: installPackage with new package", async (t) => { t.context.lockStub.yieldsAsync(); t.context.unlockStub.yieldsAsync(); + const targetDir = path.join("my", "package", "dir"); const getTargetDirForPackageStub = sinon.stub(installer, "_getTargetDirForPackage") - .returns("package-dir-path"); + .returns(targetDir); const packageJsonExistsStub = sinon.stub(installer, "_packageJsonExists").resolves(false); const synchronizeSpy = sinon.spy(installer, "_synchronize"); @@ -422,7 +423,7 @@ test.serial("Installer: installPackage with new package", async (t) => { }); t.deepEqual(res, { - pkgPath: "package-dir-path" + pkgPath: targetDir }, "Should return correct values"); t.is(getTargetDirForPackageStub.callCount, 1, "_getTargetDirForPackage should be called once"); @@ -432,9 +433,9 @@ test.serial("Installer: installPackage with new package", async (t) => { }, "_getTargetDirForPackage should be called with the correct arguments"); t.is(packageJsonExistsStub.callCount, 2, "_packageJsonExists should be called twice"); - t.is(packageJsonExistsStub.getCall(0).args[0], "package-dir-path", + t.is(packageJsonExistsStub.getCall(0).args[0], targetDir, "_packageJsonExists should be called with the correct arguments on first call"); - t.is(packageJsonExistsStub.getCall(1).args[0], "package-dir-path", + t.is(packageJsonExistsStub.getCall(1).args[0], targetDir, "_packageJsonExists should be called with the correct arguments on second call"); t.is(synchronizeSpy.callCount, 1, "_synchronize should be called once"); @@ -451,9 +452,11 @@ test.serial("Installer: installPackage with new package", async (t) => { version: "1.2.3" }, "_getStagingDirForPackage should be called with the correct arguments"); - t.is(pathExistsStub.callCount, 1, "_pathExists should be called once"); + t.is(pathExistsStub.callCount, 2, "_pathExists should be called twice"); t.is(pathExistsStub.getCall(0).args[0], "staging-dir-path", "_packageJsonExists should be called with the correct arguments"); + t.is(pathExistsStub.getCall(1).args[0], targetDir, + "_packageJsonExists should be called with the correct arguments"); t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); @@ -461,13 +464,13 @@ test.serial("Installer: installPackage with new package", async (t) => { t.is(t.context.mkdirpStub.callCount, 2, "mkdirp should be called twice"); t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), "mkdirp should be called with the correct arguments on first call"); - t.is(t.context.mkdirpStub.getCall(1).args[0], "package-dir-path", + t.is(t.context.mkdirpStub.getCall(1).args[0], path.join("my", "package"), "mkdirp should be called with the correct arguments on second call"); t.is(t.context.renameStub.callCount, 1, "fs.rename should be called once"); t.is(t.context.renameStub.getCall(0).args[0], "staging-dir-path", "fs.rename should be called with the correct first argument"); - t.is(t.context.renameStub.getCall(0).args[1], "package-dir-path", + t.is(t.context.renameStub.getCall(0).args[1], targetDir, "fs.rename should be called with the correct second argument"); }); @@ -583,7 +586,7 @@ test.serial("Installer: installPackage with install already in progress", async t.is(t.context.renameStub.callCount, 0, "fs.rename should never be called"); }); -test.serial("Installer: installPackage with new package and existing staging", async (t) => { +test.serial("Installer: installPackage with new package and existing target and staging", async (t) => { const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -592,8 +595,9 @@ test.serial("Installer: installPackage with new package and existing staging", a t.context.lockStub.yieldsAsync(); t.context.unlockStub.yieldsAsync(); + const targetDir = path.join("my", "package", "dir"); const getTargetDirForPackageStub = sinon.stub(installer, "_getTargetDirForPackage") - .returns("package-dir-path"); + .returns(targetDir); const packageJsonExistsStub = sinon.stub(installer, "_packageJsonExists").resolves(false); const synchronizeSpy = sinon.spy(installer, "_synchronize"); @@ -610,7 +614,7 @@ test.serial("Installer: installPackage with new package and existing staging", a }); t.deepEqual(res, { - pkgPath: "package-dir-path" + pkgPath: targetDir }, "Should return correct values"); t.is(getTargetDirForPackageStub.callCount, 1, "_getTargetDirForPackage should be called once"); @@ -620,9 +624,9 @@ test.serial("Installer: installPackage with new package and existing staging", a }, "_getTargetDirForPackage should be called with the correct arguments"); t.is(packageJsonExistsStub.callCount, 2, "_packageJsonExists should be called twice"); - t.is(packageJsonExistsStub.getCall(0).args[0], "package-dir-path", + t.is(packageJsonExistsStub.getCall(0).args[0], targetDir, "_packageJsonExists should be called with the correct arguments on first call"); - t.is(packageJsonExistsStub.getCall(1).args[0], "package-dir-path", + t.is(packageJsonExistsStub.getCall(1).args[0], targetDir, "_packageJsonExists should be called with the correct arguments on second call"); t.is(synchronizeSpy.callCount, 1, "_synchronize should be called once"); @@ -639,26 +643,30 @@ test.serial("Installer: installPackage with new package and existing staging", a version: "1.2.3" }, "_getStagingDirForPackage should be called with the correct arguments"); - t.is(pathExistsStub.callCount, 1, "_pathExists should be called once"); + t.is(pathExistsStub.callCount, 2, "_pathExists should be called twice"); t.is(pathExistsStub.getCall(0).args[0], "staging-dir-path", "_packageJsonExists should be called with the correct arguments"); + t.is(pathExistsStub.getCall(1).args[0], targetDir, + "_packageJsonExists should be called with the correct arguments"); - t.is(t.context.rimrafStub.callCount, 1, "rimraf should be called once"); + t.is(t.context.rimrafStub.callCount, 2, "rimraf should be called twice"); t.is(t.context.rimrafStub.getCall(0).args[0], "staging-dir-path", "rimraf should be called with the correct arguments"); + t.is(t.context.rimrafStub.getCall(1).args[0], targetDir, + "rimraf should be called with the correct arguments"); t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); t.is(t.context.mkdirpStub.callCount, 2, "mkdirp should be called twice"); t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), "mkdirp should be called with the correct arguments on first call"); - t.is(t.context.mkdirpStub.getCall(1).args[0], "package-dir-path", + t.is(t.context.mkdirpStub.getCall(1).args[0], path.join("my", "package"), "mkdirp should be called with the correct arguments on second call"); t.is(t.context.renameStub.callCount, 1, "fs.rename should be called once"); t.is(t.context.renameStub.getCall(0).args[0], "staging-dir-path", "fs.rename should be called with the correct first argument"); - t.is(t.context.renameStub.getCall(0).args[1], "package-dir-path", + t.is(t.context.renameStub.getCall(0).args[1], targetDir, "fs.rename should be called with the correct second argument"); }); From 09855ba013fc755066b9b435200f558a325f5734 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 28 Jan 2021 13:10:02 +0000 Subject: [PATCH 0487/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.7.0 to 2.7.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.7.1/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6686c95a756..a176f3f78de 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -552,9 +552,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.7.0.tgz", - "integrity": "sha512-UMcCCbgXL4kbMC3lIMLqu4rmIni2318MiReA+EmGFGBuNlsELCm2eHmclGqd9ZYVo3/6T+utigV2tnH8ioXb9A==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.7.1.tgz", + "integrity": "sha512-pKbvrNjHcwPeAutTRcA3h9W5o321LVpUFsfnJ4YkLX5lKYSLwhGRx9d9KzMjqnVRrylwnz10/TztsmAKJEezWw==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 5d28acf08a8..ac992f55004 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.7.0", + "@ui5/builder": "^2.7.1", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.7", "ajv": "^6.12.6", From d7e5c73c190307c734d50c6b5d6e683b51664d7e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 28 Jan 2021 14:28:08 +0000 Subject: [PATCH 0488/1272] [ui5-project]Release 2.2.6 --- packages/project/CHANGELOG.md | 11 +++++++++-- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 02617fba981..328be4efaca 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.5...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.6...HEAD). + + +## [v2.2.6] - 2021-01-28 +### Bug Fixes +- **ui5Framework.Installer:** Ensure target directory does not exist before rename ([#390](https://github.com/SAP/ui5-project/issues/390)) [`f107cdf`](https://github.com/SAP/ui5-project/commit/f107cdf2b1703791c153009150a5e1713e123b73) + -## [v2.2.5] - 2021-01-21 +## [v2.2.5] - 2021-01-26 ### Bug Fixes - **ui5Framework.Installer:** Ensure atomic install process [`72568a9`](https://github.com/SAP/ui5-project/commit/72568a990620cee69ffaf2470c684a7ba02c200c) @@ -223,6 +229,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.2.6]: https://github.com/SAP/ui5-project/compare/v2.2.5...v2.2.6 [v2.2.5]: https://github.com/SAP/ui5-project/compare/v2.2.4...v2.2.5 [v2.2.4]: https://github.com/SAP/ui5-project/compare/v2.2.3...v2.2.4 [v2.2.3]: https://github.com/SAP/ui5-project/compare/v2.2.2...v2.2.3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a176f3f78de..d0482d20a76 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.5", + "version": "2.2.6", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index ac992f55004..3fdc27fd6cd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.5", + "version": "2.2.6", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From fcb61c436a7fd6de28345490caee30b3a789c9b7 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 29 Jan 2021 10:30:14 +0000 Subject: [PATCH 0489/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.7.1 to 2.7.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.7.2/CHANGELOG.md --- packages/project/package-lock.json | 20 ++++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d0482d20a76..be7a16ee0f7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -552,9 +552,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.7.1.tgz", - "integrity": "sha512-pKbvrNjHcwPeAutTRcA3h9W5o321LVpUFsfnJ4YkLX5lKYSLwhGRx9d9KzMjqnVRrylwnz10/TztsmAKJEezWw==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.7.2.tgz", + "integrity": "sha512-n6itXI2cIYEIUHfXwgkfyRwGzqrYyakjoOKPE7+ivzvi/jdMycOI0rgBsc3LSCg0pW1D37HwHNCEBDlwxAJboA==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -567,7 +567,7 @@ "globby": "^11.0.2", "graceful-fs": "^4.2.4", "jsdoc": "^3.6.6", - "less-openui5": "^0.9.0", + "less-openui5": "^0.10.0", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", @@ -577,6 +577,18 @@ "terser": "^5.5.1", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "less-openui5": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.10.0.tgz", + "integrity": "sha512-cCIkMgyg797U0tl00/eathD5MvnQqo/aUIDn7y9wL2L5mMWhZbi0RFOGmzvVyVUOUAUCkjWTLu3pbV7Rd7IYSw==", + "requires": { + "clone": "^2.1.0", + "css": "^3.0.0", + "mime": "^1.6.0" + } + } } }, "@ui5/fs": { diff --git a/packages/project/package.json b/packages/project/package.json index 3fdc27fd6cd..8c0bc9b2358 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.7.1", + "@ui5/builder": "^2.7.2", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.7", "ajv": "^6.12.6", From 2ba0978c40223b22158e2df1b3d8bb6b52f8afa7 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 31 Jan 2021 03:20:43 +0000 Subject: [PATCH 0490/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 34 ++++++++++-------------------- 1 file changed, 11 insertions(+), 23 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index be7a16ee0f7..97d73fe1644 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -577,18 +577,6 @@ "terser": "^5.5.1", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "less-openui5": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.10.0.tgz", - "integrity": "sha512-cCIkMgyg797U0tl00/eathD5MvnQqo/aUIDn7y9wL2L5mMWhZbi0RFOGmzvVyVUOUAUCkjWTLu3pbV7Rd7IYSw==", - "requires": { - "clone": "^2.1.0", - "css": "^3.0.0", - "mime": "^1.6.0" - } - } } }, "@ui5/fs": { @@ -1804,17 +1792,17 @@ } }, "connect-openui5": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.10.0.tgz", - "integrity": "sha512-vu/2K9+BrEKSO0+pvNGD87QQJB1PxqX70CmZrZ7URcQHWblXDMZVLSCclvPUYDmSJOkLn42SHIlIs0TukrQZ3w==", + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.10.1.tgz", + "integrity": "sha512-g78ucDcgYYTI2oToiVWUSqNvIj24JebbwusLBtNb6t1rVofr9OnSMbWQKebePb383TC1+TFUBJkjyn28YK/zTQ==", "requires": { "async": "^3.2.0", "cookie": "^0.4.1", "extend": "^3.0.0", "glob": "^7.1.6", "http-proxy": "^1.18.1", - "less-openui5": "^0.9.0", - "set-cookie-parser": "^2.4.6" + "less-openui5": "^0.10.0", + "set-cookie-parser": "^2.4.7" } }, "console-control-strings": { @@ -3023,9 +3011,9 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "fastq": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.10.0.tgz", - "integrity": "sha512-NL2Qc5L3iQEsyYzweq7qfgy5OtXCmGzGvhElGEd/SoFWEMOEczNh5s5ocaF01HDetxz+p8ecjNPA6cZxxIHmzA==", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.10.1.tgz", + "integrity": "sha512-AWuv6Ery3pM+dY7LYS8YIaCiQvUaos9OB1RyNgaOWnaX+Tik7Onvcsf8x8c+YtDeT0maYLniBip2hox5KtEXXA==", "requires": { "reusify": "^1.0.4" } @@ -4145,9 +4133,9 @@ } }, "less-openui5": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.9.0.tgz", - "integrity": "sha512-RwZJ7ZXEJwv2HTeuZp6JJzfbZFMlMyXyWuqH95n+roDy+8EpI3nQdvMhxYG5fzciJ+c5ACrNhoZ7Nv2xqkEmig==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.10.0.tgz", + "integrity": "sha512-cCIkMgyg797U0tl00/eathD5MvnQqo/aUIDn7y9wL2L5mMWhZbi0RFOGmzvVyVUOUAUCkjWTLu3pbV7Rd7IYSw==", "requires": { "clone": "^2.1.0", "css": "^3.0.0", From 42c90224fb7829e7c2f06584508ef56cbc192caa Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 1 Feb 2021 13:00:23 +0000 Subject: [PATCH 0491/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 146 +++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 80 insertions(+), 70 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 97d73fe1644..a66094c1c26 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -401,6 +401,12 @@ "resolve-from": "^5.0.0" }, "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -1066,19 +1072,19 @@ "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" }, "boxen": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", - "integrity": "sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.0.0.tgz", + "integrity": "sha512-5bvsqw+hhgUi3oYGK0Vf4WpIkyemp60WBInn7+WNfoISzAqk/HX4L7WNROq38E6UR/y3YADpv6pEm4BfkeEAdA==", "dev": true, "requires": { "ansi-align": "^3.0.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "cli-boxes": "^2.2.0", - "string-width": "^4.1.0", - "term-size": "^2.1.0", - "type-fest": "^0.8.1", - "widest-line": "^3.1.0" + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.0", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" }, "dependencies": { "ansi-regex": { @@ -1087,16 +1093,6 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -1124,9 +1120,9 @@ } }, "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true } } @@ -1294,9 +1290,9 @@ "dev": true }, "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", "dev": true }, "camelcase-keys": { @@ -1308,6 +1304,14 @@ "camelcase": "^5.3.1", "map-obj": "^4.0.0", "quick-lru": "^4.0.1" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + } } }, "catharsis": { @@ -1393,6 +1397,12 @@ "color-convert": "^1.9.0" } }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, "cliui": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", @@ -2156,12 +2166,6 @@ "yargs": "^16.1.0" }, "dependencies": { - "camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", - "dev": true - }, "debug": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", @@ -2608,9 +2612,9 @@ } }, "eslint": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.18.0.tgz", - "integrity": "sha512-fbgTiE8BfUJZuBeq2Yi7J3RB3WGUQ9PNuNbmgi6jt9Iv8qrkxfy19Ds3OpL1Pm7zg3BtTVhvcUZbIRQ0wmSjAQ==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.19.0.tgz", + "integrity": "sha512-CGlMgJY56JZ9ZSYhJuhow61lMPPjUzWmChFya71Z/jilVos7mR/jPgaEfVGgMBY5DshbKdG8Ezb8FDCHcoMEMg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -2751,9 +2755,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "31.4.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-31.4.0.tgz", - "integrity": "sha512-NX387IVQrA/ZE9F1tpeEFzZDsXb/BJS4HdT1ZH0RME3O/4DJF8GNQnjMSia8O3gFx/kjfASsdmK5LglVs+xGLA==", + "version": "31.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-31.6.0.tgz", + "integrity": "sha512-kYhdW+BXHij9n12oHvAC27oDHKEFITz1YJP/C0NPtb+gsGJWxejh5B6dEmmj6oLYOsmNvuCVkdIcqYOyabP2QA==", "dev": true, "requires": { "comment-parser": "1.1.1", @@ -3288,18 +3292,18 @@ } }, "global-dirs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.1.0.tgz", - "integrity": "sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", + "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", "dev": true, "requires": { - "ini": "1.3.7" + "ini": "2.0.0" }, "dependencies": { "ini": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", - "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", "dev": true } } @@ -3749,13 +3753,13 @@ } }, "is-installed-globally": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", - "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", "dev": true, "requires": { - "global-dirs": "^2.0.1", - "is-path-inside": "^3.0.1" + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" } }, "is-interactive": { @@ -4081,9 +4085,9 @@ "dev": true }, "json5": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", - "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -4505,6 +4509,12 @@ "yargs-parser": "^18.1.3" }, "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, "type-fest": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", @@ -5003,6 +5013,12 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, "cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -5166,9 +5182,9 @@ } }, "open": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/open/-/open-7.3.1.tgz", - "integrity": "sha512-f2wt9DCBKKjlFbjzGb8MOAW8LH8F0mrs1zc7KTjAJ9PZNQbfenzWbNP1VZJvw6ICMG9r14Ah6yfwPn7T7i646A==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.0.tgz", + "integrity": "sha512-PGoBCX/lclIWlpS/R2PQuIR4NJoXh6X5AwVzE7WXnWRGvHg7+4TBCgsujUgiPpm0K1y4qvQeWnCWVTpTKZBtvA==", "dev": true, "requires": { "is-docker": "^2.0.0", @@ -6879,12 +6895,6 @@ } } }, - "term-size": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", - "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", - "dev": true - }, "terser": { "version": "5.5.1", "resolved": "https://registry.npmjs.org/terser/-/terser-5.5.1.tgz", @@ -7079,23 +7089,23 @@ "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, "update-notifier": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.0.1.tgz", - "integrity": "sha512-BuVpRdlwxeIOvmc32AGYvO1KVdPlsmqSh8KDDBxS6kDE5VR7R8OMP1d8MdhaVBvxl4H3551k9akXr0Y1iIB2Wg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", "dev": true, "requires": { - "boxen": "^4.2.0", + "boxen": "^5.0.0", "chalk": "^4.1.0", "configstore": "^5.0.1", "has-yarn": "^2.1.0", "import-lazy": "^2.1.0", "is-ci": "^2.0.0", - "is-installed-globally": "^0.3.2", + "is-installed-globally": "^0.4.0", "is-npm": "^5.0.0", "is-yarn-global": "^0.3.0", "latest-version": "^5.1.0", "pupa": "^2.1.1", - "semver": "^7.3.2", + "semver": "^7.3.4", "semver-diff": "^3.1.1", "xdg-basedir": "^4.0.0" } diff --git a/packages/project/package.json b/packages/project/package.json index 8c0bc9b2358..08c33a30751 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,9 +127,9 @@ "cross-env": "^7.0.3", "depcheck": "^1.3.1", "docdash": "^1.2.0", - "eslint": "^7.18.0", + "eslint": "^7.19.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^31.4.0", + "eslint-plugin-jsdoc": "^31.6.0", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From a2ef50944102a3a0c43811a3a4058cdb17d07689 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 7 Feb 2021 03:20:32 +0000 Subject: [PATCH 0492/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 240 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 121 insertions(+), 121 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a66094c1c26..5ec31a07120 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,27 +5,27 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", + "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", "requires": { - "@babel/highlight": "^7.10.4" + "@babel/highlight": "^7.12.13" } }, "@babel/core": { - "version": "7.12.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.10.tgz", - "integrity": "sha512-eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.10", - "@babel/helper-module-transforms": "^7.12.1", - "@babel/helpers": "^7.12.5", - "@babel/parser": "^7.12.10", - "@babel/template": "^7.12.7", - "@babel/traverse": "^7.12.10", - "@babel/types": "^7.12.10", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.13.tgz", + "integrity": "sha512-BQKE9kXkPlXHPeqissfxo0lySWJcYdEP0hdtJOH/iJfDdhOCcgtNCjftCJg3qqauB4h+lz2N6ixM++b9DN1Tcw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@babel/generator": "^7.12.13", + "@babel/helper-module-transforms": "^7.12.13", + "@babel/helpers": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -65,12 +65,12 @@ } }, "@babel/generator": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.11.tgz", - "integrity": "sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA==", + "version": "7.12.15", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.15.tgz", + "integrity": "sha512-6F2xHxBiFXWNSGb7vyCUTBF8RCLY66rS0zEPcP8t/nQyXjha5EuK4z7H5o7fWG8B4M7y6mqVWq1J+1PuwRhecQ==", "dev": true, "requires": { - "@babel/types": "^7.12.11", + "@babel/types": "^7.12.13", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -84,97 +84,97 @@ } }, "@babel/helper-function-name": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz", - "integrity": "sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", + "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.12.10", - "@babel/template": "^7.12.7", - "@babel/types": "^7.12.11" + "@babel/helper-get-function-arity": "^7.12.13", + "@babel/template": "^7.12.13", + "@babel/types": "^7.12.13" } }, "@babel/helper-get-function-arity": { - "version": "7.12.10", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz", - "integrity": "sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", + "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", "dev": true, "requires": { - "@babel/types": "^7.12.10" + "@babel/types": "^7.12.13" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.12.7", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.7.tgz", - "integrity": "sha512-DCsuPyeWxeHgh1Dus7APn7iza42i/qXqiFPWyBDdOFtvS581JQePsc1F/nD+fHrcswhLlRc2UpYS1NwERxZhHw==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.13.tgz", + "integrity": "sha512-B+7nN0gIL8FZ8SvMcF+EPyB21KnCcZHQZFczCxbiNGV/O0rsrSBlWGLzmtBJ3GMjSVMIm4lpFhR+VdVBuIsUcQ==", "dev": true, "requires": { - "@babel/types": "^7.12.7" + "@babel/types": "^7.12.13" } }, "@babel/helper-module-imports": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.5.tgz", - "integrity": "sha512-SR713Ogqg6++uexFRORf/+nPXMmWIn80TALu0uaFb+iQIUoR7bOC7zBWyzBs5b3tBBJXuyD0cRu1F15GyzjOWA==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.13.tgz", + "integrity": "sha512-NGmfvRp9Rqxy0uHSSVP+SRIW1q31a7Ji10cLBcqSDUngGentY4FRiHOFZFE1CLU5eiL0oE8reH7Tg1y99TDM/g==", "dev": true, "requires": { - "@babel/types": "^7.12.5" + "@babel/types": "^7.12.13" } }, "@babel/helper-module-transforms": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz", - "integrity": "sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.12.1", - "@babel/helper-replace-supers": "^7.12.1", - "@babel/helper-simple-access": "^7.12.1", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/helper-validator-identifier": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.12.1", - "@babel/types": "^7.12.1", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.13.tgz", + "integrity": "sha512-acKF7EjqOR67ASIlDTupwkKM1eUisNAjaSduo5Cz+793ikfnpe7p4Q7B7EWU2PCoSTPWsQkR7hRUWEIZPiVLGA==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-replace-supers": "^7.12.13", + "@babel/helper-simple-access": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/helper-validator-identifier": "^7.12.11", + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13", "lodash": "^4.17.19" } }, "@babel/helper-optimise-call-expression": { - "version": "7.12.10", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.10.tgz", - "integrity": "sha512-4tpbU0SrSTjjt65UMWSrUOPZTsgvPgGG4S8QSTNHacKzpS51IVWGDj0yCwyeZND/i+LSN2g/O63jEXEWm49sYQ==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", + "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", "dev": true, "requires": { - "@babel/types": "^7.12.10" + "@babel/types": "^7.12.13" } }, "@babel/helper-replace-supers": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.11.tgz", - "integrity": "sha512-q+w1cqmhL7R0FNzth/PLLp2N+scXEK/L2AHbXUyydxp828F4FEa5WcVoqui9vFRiHDQErj9Zof8azP32uGVTRA==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.13.tgz", + "integrity": "sha512-pctAOIAMVStI2TMLhozPKbf5yTEXc0OJa0eENheb4w09SrgOWEs+P4nTOZYJQCqs8JlErGLDPDJTiGIp3ygbLg==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.12.7", - "@babel/helper-optimise-call-expression": "^7.12.10", - "@babel/traverse": "^7.12.10", - "@babel/types": "^7.12.11" + "@babel/helper-member-expression-to-functions": "^7.12.13", + "@babel/helper-optimise-call-expression": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13" } }, "@babel/helper-simple-access": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz", - "integrity": "sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.13.tgz", + "integrity": "sha512-0ski5dyYIHEfwpWGx5GPWhH35j342JaflmCeQmsPWcrOQDtCN6C1zKAVRFVbK53lPW2c9TsuLLSUDf0tIGJ5hA==", "dev": true, "requires": { - "@babel/types": "^7.12.1" + "@babel/types": "^7.12.13" } }, "@babel/helper-split-export-declaration": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz", - "integrity": "sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", + "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", "dev": true, "requires": { - "@babel/types": "^7.12.11" + "@babel/types": "^7.12.13" } }, "@babel/helper-validator-identifier": { @@ -183,22 +183,22 @@ "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" }, "@babel/helpers": { - "version": "7.12.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.5.tgz", - "integrity": "sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.13.tgz", + "integrity": "sha512-oohVzLRZ3GQEk4Cjhfs9YkJA4TdIDTObdBEZGrd6F/T0GPSnuV6l22eMcxlvcvzVIPH3VTtxbseudM1zIE+rPQ==", "dev": true, "requires": { - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.12.5", - "@babel/types": "^7.12.5" + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13" } }, "@babel/highlight": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", - "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", + "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", "requires": { - "@babel/helper-validator-identifier": "^7.10.4", + "@babel/helper-validator-identifier": "^7.12.11", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -255,33 +255,33 @@ } }, "@babel/parser": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.11.tgz", - "integrity": "sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==" + "version": "7.12.15", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.15.tgz", + "integrity": "sha512-AQBOU2Z9kWwSZMd6lNjCX0GUgFonL1wAM1db8L8PMk9UDaGsRCArBkU4Sc+UCM3AE4hjbXx+h58Lb3QT4oRmrA==" }, "@babel/template": { - "version": "7.12.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz", - "integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", + "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", "dev": true, "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.12.7", - "@babel/types": "^7.12.7" + "@babel/code-frame": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/types": "^7.12.13" } }, "@babel/traverse": { - "version": "7.12.12", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.12.tgz", - "integrity": "sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.13.tgz", + "integrity": "sha512-3Zb4w7eE/OslI0fTp8c7b286/cQps3+vdLW3UcwC8VSJC6GbKn55aeVVu2QJNuCDoeKyptLOFrPq8WqZZBodyA==", "dev": true, "requires": { - "@babel/code-frame": "^7.12.11", - "@babel/generator": "^7.12.11", - "@babel/helper-function-name": "^7.12.11", - "@babel/helper-split-export-declaration": "^7.12.11", - "@babel/parser": "^7.12.11", - "@babel/types": "^7.12.12", + "@babel/code-frame": "^7.12.13", + "@babel/generator": "^7.12.13", + "@babel/helper-function-name": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/types": "^7.12.13", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" @@ -305,9 +305,9 @@ } }, "@babel/types": { - "version": "7.12.12", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.12.tgz", - "integrity": "sha512-lnIX7piTxOH22xE7fDXDbSHg9MM1/6ORnafpJmov5rs0kX5g4BZxeXNJLXsMRiO0U5Rb8/FvMS6xlTnTHvxonQ==", + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz", + "integrity": "sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.12.11", @@ -1015,9 +1015,9 @@ "dev": true }, "bl": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.3.tgz", - "integrity": "sha512-fs4G6/Hu4/EE+F75J8DuN/0IpQqNjAdC7aEQv7Qt8MHGUH7Ckv2MwTEEeN9QehD0pfIDkMI1bkHYkKy7xHyKIg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.4.tgz", + "integrity": "sha512-7tdr4EpSd7jJ6tuQ21vu2ke8w7pNEstzj1O8wwq6sNNzO3UDi5MA8Gny/gquCj7r2C6fHudg8tKRGyjRgmvNxQ==", "dev": true, "requires": { "buffer": "^5.5.0", @@ -2858,9 +2858,9 @@ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, "esquery": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", - "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "requires": { "estraverse": "^5.1.0" @@ -3196,9 +3196,9 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", - "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, "optional": true }, @@ -3347,9 +3347,9 @@ } }, "graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.5.tgz", + "integrity": "sha512-kBBSQbz2K0Nyn+31j/w36fUfxkBW9/gfwRWdUY1ULReH3iokVJgddZAFcD1D0xlgTmFxJCbUkUclAlc6/IDJkw==" }, "handle-thing": { "version": "2.0.1", @@ -6127,9 +6127,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.5", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.5.tgz", - "integrity": "sha512-kU1yJ5zUAmPxr7f3q0YXTAd1oZjSR1g3tYyv+xu0HZSl5JiNOaE987eiz7wCUvbm4I9fGWGU2TgApTtcP4GMNQ==", + "version": "1.32.6", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.6.tgz", + "integrity": "sha512-1bcDHDcSqeFtMr0JXI3xc/CXX6c4p0wHHivJdru8W7waM7a1WjKMm4m/Z5sY7CbVw4Whi2Chpcw6DFfSWwGLzQ==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" @@ -6662,9 +6662,9 @@ }, "dependencies": { "ajv": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.0.3.tgz", - "integrity": "sha512-R50QRlXSxqXcQP5SvKUrw8VZeypvo12i2IX0EeR5PiZ7bEKeHWgzgo264LDadUsCU42lTJVhFikTqJwNeH34gQ==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.0.4.tgz", + "integrity": "sha512-xzzzaqgEQfmuhbhAoqjJ8T/1okb6gAzXn/eQRNpAN1AEUoHJTNF9xCDRTtf/s3SKldtZfa+RJeTs+BQq+eZ/sw==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index 08c33a30751..b1694252b84 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -108,7 +108,7 @@ "ajv-errors": "^1.0.1", "chalk": "^4.1.0", "escape-string-regexp": "^4.0.0", - "graceful-fs": "^4.2.4", + "graceful-fs": "^4.2.5", "js-yaml": "^3.14.1", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", From 46594c1d6fa3c488c434f0c0e3411c7269b77708 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= <1410947+matz3@users.noreply.github.com> Date: Tue, 9 Feb 2021 17:34:32 +0100 Subject: [PATCH 0493/1272] [ui5-project][FEATURE] specVersion 2.3 (#388) - Adds libraryPreload/componentPreload excludes configuration JIRA: CPOUI5FOUNDATION-233 --- packages/project/lib/projectPreprocessor.js | 6 +- .../project/lib/translators/ui5Framework.js | 12 +- .../validation/schema/specVersion/2.0.json | 2 +- .../specVersion/2.0/kind/extension.json | 2 +- .../2.0/kind/extension/project-shim.json | 4 +- .../2.0/kind/extension/server-middleware.json | 4 +- .../specVersion/2.0/kind/extension/task.json | 4 +- .../schema/specVersion/2.0/kind/project.json | 38 +- .../2.0/kind/project/application.json | 117 ++++-- .../specVersion/2.0/kind/project/library.json | 138 +++++-- .../specVersion/2.0/kind/project/module.json | 4 +- .../2.0/kind/project/theme-library.json | 4 +- .../project/lib/validation/schema/ui5.json | 6 +- packages/project/test/lib/extensions.js | 40 ++ .../project/test/lib/projectPreprocessor.js | 16 + .../schema/__helper__/customConfiguration.js | 5 +- .../validation/schema/__helper__/extension.js | 9 +- .../validation/schema/__helper__/framework.js | 58 +-- .../validation/schema/__helper__/project.js | 30 +- .../schema/specVersion/2.0/kind/extension.js | 17 +- .../2.0/kind/extension/project-shim.js | 20 +- .../2.0/kind/extension/server-middleware.js | 3 + .../specVersion/2.0/kind/extension/task.js | 3 + .../schema/specVersion/2.0/kind/project.js | 15 +- .../2.0/kind/project/application.js | 232 +++++++---- .../specVersion/2.0/kind/project/library.js | 364 ++++++++++++++---- .../specVersion/2.0/kind/project/module.js | 17 +- .../2.0/kind/project/theme-library.js | 42 +- .../project/test/lib/validation/schema/ui5.js | 35 +- 29 files changed, 883 insertions(+), 364 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index fae7a620ab7..451bc7e113b 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -282,7 +282,8 @@ class ProjectPreprocessor { if (project.specVersion !== "0.1" && project.specVersion !== "1.0" && project.specVersion !== "1.1" && project.specVersion !== "2.0" && - project.specVersion !== "2.1" && project.specVersion !== "2.2") { + project.specVersion !== "2.1" && project.specVersion !== "2.2" && + project.specVersion !== "2.3") { throw new Error( `Unsupported specification version ${project.specVersion} defined for project ` + `${project.id}. Your UI5 CLI installation might be outdated. ` + @@ -359,7 +360,8 @@ class ProjectPreprocessor { extension.specVersion !== "1.1" && extension.specVersion !== "2.0" && extension.specVersion !== "2.1" && - extension.specVersion !== "2.2") { + extension.specVersion !== "2.2" && + extension.specVersion !== "2.3") { throw new Error( `Unsupported specification version ${extension.specVersion} defined for extension ` + `${extension.metadata.name}. Your UI5 CLI installation might be outdated. ` + diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 09eb4f8666f..7f550b56007 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -83,7 +83,10 @@ const utils = { if (!project.framework) { return; } - if (project.specVersion !== "2.0" && project.specVersion !== "2.1" && project.specVersion !== "2.2") { + if ( + project.specVersion !== "2.0" && project.specVersion !== "2.1" && + project.specVersion !== "2.2" && project.specVersion !== "2.3" + ) { log.warn(`Project ${project.metadata.name} defines invalid ` + `specification version ${project.specVersion} for framework.libraries configuration`); return; @@ -241,8 +244,11 @@ module.exports = { }); queue.push(...project.dependencies); - if ((project.specVersion === "2.0" || project.specVersion === "2.1" || project.specVersion === "2.2") && - project.framework && project.framework.libraries) { + if ( + ( + project.specVersion === "2.0" || project.specVersion === "2.1" || + project.specVersion === "2.2" || project.specVersion === "2.3" + ) && project.framework && project.framework.libraries) { const frameworkDeps = project.framework.libraries .filter((dependency) => { if (dependency.optional && frameworkLibs[dependency.name]) { diff --git a/packages/project/lib/validation/schema/specVersion/2.0.json b/packages/project/lib/validation/schema/specVersion/2.0.json index 35a7eac0b58..dd569fc0eac 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0.json +++ b/packages/project/lib/validation/schema/specVersion/2.0.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion"], "properties": { - "specVersion": { "enum": ["2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json index fcff79e4083..37c1ef9deda 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "kind", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json index cfafd18347a..b62b77e3571 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json @@ -6,14 +6,14 @@ "required": ["specVersion", "kind", "type", "metadata", "shims"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3"] } } }, "then": { "additionalProperties": false, "properties": { "specVersion": { - "enum": ["2.1", "2.2"] + "enum": ["2.1", "2.2", "2.3"] }, "kind": { "enum": ["extension"] diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json index 3f37e16be44..0e227f4a387 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json @@ -7,13 +7,13 @@ "required": ["specVersion", "kind", "type", "metadata", "middleware"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json index 8656ef15ad4..496d73cbaf0 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json @@ -6,13 +6,13 @@ "required": ["specVersion", "kind", "type", "metadata", "task"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index 6f86b942a45..13f83e3539c 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "type"], "properties": { - "specVersion": { "enum": ["2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" @@ -223,6 +223,42 @@ } } }, + "builder-componentPreload-specVersion-2.3": { + "type": "object", + "additionalProperties": false, + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + } + }, + "namespaces": { + "type": "array", + "items": { + "type": "string" + } + }, + "excludes": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "builder-libraryPreload": { + "type": "object", + "additionalProperties": false, + "properties": { + "excludes": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, "server": { "type": "object", "additionalProperties": false, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json index 3ce92af51d1..c48a5cbac18 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -41,29 +41,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["application"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } }, @@ -121,6 +159,33 @@ "$ref": "../project.json#/definitions/customTasks" } } + }, + "builder-specVersion-2.3": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "cachebuster": { + "type": "object", + "additionalProperties": false, + "properties": { + "signatureType": { + "enum": ["time", "hash"] + } + } + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json index cd2086013eb..2e4f0cbbc45 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -41,33 +41,70 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } }, - "definitions": { "resources": { "type": "object", @@ -96,6 +133,18 @@ } } }, + "builder-jsdoc": { + "type": "object", + "additionalProperties": false, + "properties": { + "excludes": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, "builder": { "type": "object", "additionalProperties": false, @@ -104,16 +153,7 @@ "$ref": "../project.json#/definitions/builder-resources" }, "jsdoc": { - "type": "object", - "additionalProperties": false, - "properties": { - "excludes": { - "type": "array", - "items": { - "type": "string" - } - } - } + "$ref": "#/definitions/builder-jsdoc" }, "bundles": { "$ref": "../project.json#/definitions/builder-bundles" @@ -125,6 +165,30 @@ "$ref": "../project.json#/definitions/customTasks" } } + }, + "builder-specVersion-2.3": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "jsdoc": { + "$ref": "#/definitions/builder-jsdoc" + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "libraryPreload": { + "$ref": "../project.json#/definitions/builder-libraryPreload" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json index d315140a486..afdeb12ab41 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json index 210949d2da8..45ec55dad2b 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index 0671a590a55..1fd8e141ac1 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -10,16 +10,16 @@ "properties": { "specVersion": { "enum": [ - "2.2", "2.1", "2.0", + "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, "if": { "properties": { - "specVersion": { "enum": ["2.2", "2.1", "2.0"] } + "specVersion": { "enum": ["2.3", "2.2", "2.1", "2.0"] } } }, "then": { diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 6c30f4831fa..6ecc68978b3 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -851,3 +851,43 @@ test("specVersion: Extension with valid version 2.1", async (t) => { await preprocessor.applyExtension(extension); t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.1", "Correct spec version"); }); + +test("specVersion: Extension with valid version 2.2", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.2", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor({}); + const handleShimStub = sinon.stub(preprocessor, "handleShim"); + await preprocessor.applyExtension(extension); + t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.2", "Correct spec version"); +}); + +test("specVersion: Extension with valid version 2.3", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.3", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor({}); + const handleShimStub = sinon.stub(preprocessor, "handleShim"); + await preprocessor.applyExtension(extension); + t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.3", "Correct spec version"); +}); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index a05323049b2..cead35f2436 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1734,6 +1734,22 @@ test("specVersion: Project with valid version 2.2", async (t) => { t.deepEqual(res.specVersion, "2.2", "Correct spec version"); }); +test("specVersion: Project with valid version 2.3", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.3", + type: "application", + metadata: { + name: "xy" + } + }; + const res = await projectPreprocessor.processTree(tree); + t.deepEqual(res.specVersion, "2.3", "Correct spec version"); +}); + test("isBeingProcessed: Is not being processed", (t) => { const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); diff --git a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js index cae65621945..ba4218237c0 100644 --- a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js +++ b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js @@ -30,13 +30,12 @@ module.exports = { message: "should NOT have additional properties", params: { additionalProperty: "customConfiguration", - }, - schemaPath: "#/else/additionalProperties", + } } ]); }); - ["2.2", "2.1"].forEach((specVersion) => { + ["2.3", "2.2", "2.1"].forEach((specVersion) => { test(`${type}: Valid customConfiguration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, Object.assign( { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js index 0770622c30c..a7ce990ba1a 100644 --- a/packages/project/test/lib/validation/schema/__helper__/extension.js +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -18,7 +18,7 @@ module.exports = { customConfiguration.defineTests(test, assertValidation, type, additionalConfiguration); - ["2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: ${type} basic (${specVersion})`, async (t) => { await assertValidation(t, Object.assign({ "specVersion": specVersion, @@ -43,8 +43,7 @@ module.exports = { message: "should NOT have additional properties", params: { "additionalProperty": "resources" - }, - schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties" + } }]); }); @@ -63,9 +62,7 @@ module.exports = { message: "should NOT have additional properties", params: { additionalProperty: "notAllowed", - }, - schemaPath: - specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties" + } }]); }); }); diff --git a/packages/project/test/lib/validation/schema/__helper__/framework.js b/packages/project/test/lib/validation/schema/__helper__/framework.js index 71a1181e54c..9595112f4dc 100644 --- a/packages/project/test/lib/validation/schema/__helper__/framework.js +++ b/packages/project/test/lib/validation/schema/__helper__/framework.js @@ -10,7 +10,7 @@ module.exports = { * @param {string} type one of "application", "library" and "theme-library" */ defineTests: function(test, assertValidation, type) { - ["2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`${type} (specVersion ${specVersion}): framework configuration: OpenUI5`, async (t) => { const config = { "specVersion": specVersion, @@ -89,8 +89,7 @@ module.exports = { "OpenUI5", "SAPUI5", ], - }, - schemaPath: "../project.json#/definitions/framework/properties/name/enum", + } }, { dataPath: "/framework/version", @@ -110,12 +109,10 @@ module.exports = { "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*" + "[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-]" + "[0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$", - }, - schemaPath: "../project.json#/definitions/framework/properties/version/pattern", + } } ] - }, - schemaPath: "../project.json#/definitions/framework/properties/version/errorMessage", + } }, { dataPath: "/framework/libraries/0", @@ -123,8 +120,7 @@ module.exports = { message: "should be object", params: { type: "object", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/type" + } }, { dataPath: "/framework/libraries/1", @@ -132,9 +128,7 @@ module.exports = { message: "should NOT have additional properties", params: { additionalProperty: "library", - }, - schemaPath: - "../project.json#/definitions/framework/properties/libraries/items/additionalProperties", + } }, { dataPath: "/framework/libraries/1", @@ -142,8 +136,7 @@ module.exports = { message: "should have required property 'name'", params: { missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/framework/properties/libraries/items/required", + } }, { dataPath: "/framework/libraries/2/optional", @@ -151,10 +144,7 @@ module.exports = { message: "should be boolean", params: { type: "boolean" - }, - schemaPath: - "../project.json#/definitions/framework/properties/libraries" + - "/items/properties/optional/type", + } }, { dataPath: "/framework/libraries/3/development", @@ -162,10 +152,7 @@ module.exports = { message: "should be boolean", params: { type: "boolean" - }, - schemaPath: - "../project.json#/definitions/framework/properties/libraries" + - "/items/properties/development/type" + } } ]); }); @@ -185,8 +172,7 @@ module.exports = { message: "should have required property 'name'", params: { missingProperty: "name" - }, - schemaPath: "../project.json#/definitions/framework/required", + } } ]); }); @@ -229,10 +215,7 @@ module.exports = { message: "should NOT have additional properties", params: { additionalProperty: "development", - }, - schemaPath: - "../project.json#/definitions/framework/properties/libraries/items/" + - "then/additionalProperties", + } }, { dataPath: "/framework/libraries/0", @@ -240,15 +223,10 @@ module.exports = { message: "should NOT have additional properties", params: { additionalProperty: "optional", - }, - schemaPath: - "../project.json#/definitions/framework/properties/libraries/items/then/" + - "additionalProperties", + } }, ], - }, - schemaPath: - "../project.json#/definitions/framework/properties/libraries/items/then/errorMessage", + } }, { dataPath: "/framework/libraries/1/optional", @@ -256,10 +234,7 @@ module.exports = { message: "should be boolean", params: { type: "boolean", - }, - schemaPath: - "../project.json#/definitions/framework/properties/libraries/items/properties/" + - "optional/type", + } }, { dataPath: "/framework/libraries/1/development", @@ -267,10 +242,7 @@ module.exports = { message: "should be boolean", params: { type: "boolean", - }, - schemaPath: - "../project.json#/definitions/framework/properties/libraries/items/properties/" + - "development/type", + } }, ]); }); diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index 418e920ee28..9b5aeb93b19 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -23,7 +23,7 @@ module.exports = { customConfiguration.defineTests(test, assertValidation, type); // version specific tests - ["2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { // tests for all kinds and version 2.0 and above test(`${type} (specVersion ${specVersion}): No metadata`, async (t) => { await assertValidation(t, { @@ -35,8 +35,7 @@ module.exports = { message: "should have required property 'metadata'", params: { missingProperty: "metadata", - }, - schemaPath: "#/required", + } }]); }); @@ -51,8 +50,7 @@ module.exports = { message: "should be object", params: { type: "object", - }, - schemaPath: "../project.json#/definitions/metadata/type", + } }]); }); @@ -67,8 +65,7 @@ module.exports = { message: "should have required property 'name'", params: { missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/metadata/required", + } }]); }); @@ -86,8 +83,7 @@ module.exports = { message: "should be string", params: { type: "string" - }, - schemaPath: "../project.json#/definitions/metadata/properties/name/type", + } } ]); }); @@ -107,8 +103,7 @@ module.exports = { message: "should be string", params: { type: "string" - }, - schemaPath: "../project.json#/definitions/metadata/properties/copyright/type", + } } ]); }); @@ -128,8 +123,7 @@ module.exports = { message: "should NOT have additional properties", params: { additionalProperty: "copyrihgt" - }, - schemaPath: "../project.json#/definitions/metadata/additionalProperties", + } } ]); }); @@ -171,8 +165,7 @@ module.exports = { message: "should be boolean", params: { type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/deprecated/type", + } } ]); }); @@ -214,8 +207,7 @@ module.exports = { message: "should be boolean", params: { type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/sapInternal/type", + } } ]); }); @@ -257,8 +249,7 @@ module.exports = { message: "should be boolean", params: { type: "boolean", - }, - schemaPath: "../project.json#/definitions/metadata/properties/allowSapInternal/type", + } } ]); }); @@ -278,7 +269,6 @@ module.exports = { params: { additionalProperty: "notAllowed", }, - schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties", }]); }); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js index a7cb45a129c..3dee7a1b044 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js @@ -10,6 +10,9 @@ async function assertValidation(t, config, expectedErrors = undefined) { instanceOf: ValidationError, name: "ValidationError" }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + }); t.deepEqual(validationError.errors, expectedErrors); } else { await t.notThrowsAsync(validation); @@ -33,7 +36,7 @@ test.after.always((t) => { }; t.context.ajvCoverage.verify(thresholds); }); -["2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Type project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -87,8 +90,7 @@ test.after.always((t) => { message: "should have required property 'type'", params: { missingProperty: "type", - }, - schemaPath: "#/required", + } }]); }); @@ -110,8 +112,7 @@ test.after.always((t) => { "server-middleware", "project-shim" ], - }, - schemaPath: "#/properties/type/enum", + } }]); }); @@ -129,8 +130,7 @@ test.after.always((t) => { message: "should have required property 'specVersion'", params: { missingProperty: "specVersion", - }, - schemaPath: "#/required", + } }]); }); @@ -146,8 +146,7 @@ test.after.always((t) => { message: "should have required property 'metadata'", params: { missingProperty: "metadata", - }, - schemaPath: "#/required", + } }]); }); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js index 6b5391fb65f..11442a3584d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js @@ -11,6 +11,9 @@ async function assertValidation(t, config, expectedErrors = undefined) { instanceOf: ValidationError, name: "ValidationError" }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + }); t.deepEqual(validationError.errors, expectedErrors); } else { await t.notThrowsAsync(validation); @@ -79,8 +82,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { "additionalProperty": "middleware" - }, - schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties", + } }, { dataPath: "/shims", @@ -88,8 +90,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "notAllowed", - }, - schemaPath: "#/definitions/shims/additionalProperties", + } }, { dataPath: "/shims/dependencies/my-dependency", @@ -97,8 +98,7 @@ test.after.always((t) => { message: "should be array", params: { type: "array", - }, - schemaPath: "#/definitions/shims/properties/dependencies/patternProperties/.%2B/type", + } }, { dataPath: "/shims/collections/foo", @@ -106,8 +106,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "notAllowed", - }, - schemaPath: "#/definitions/shims/properties/collections/patternProperties/.%2B/additionalProperties" + } }, { dataPath: "/shims/collections/foo/modules/lib-1", @@ -115,10 +114,7 @@ test.after.always((t) => { message: "should be string", params: { type: "string", - }, - schemaPath: - "#/definitions/shims/properties/collections/patternProperties/.%2B/properties/" + - "modules/patternProperties/.%2B/type" + } } ]); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js index 5e1d906a5f3..ee89dc9c7f9 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js @@ -11,6 +11,9 @@ async function assertValidation(t, config, expectedErrors = undefined) { instanceOf: ValidationError, name: "ValidationError" }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + }); t.deepEqual(validationError.errors, expectedErrors); } else { await t.notThrowsAsync(validation); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js index 936ff2dda40..809d0f13795 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js @@ -11,6 +11,9 @@ async function assertValidation(t, config, expectedErrors = undefined) { instanceOf: ValidationError, name: "ValidationError" }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + }); t.deepEqual(validationError.errors, expectedErrors); } else { await t.notThrowsAsync(validation); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js index 39c41a93323..d02ef6cc4d5 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js @@ -10,6 +10,9 @@ async function assertValidation(t, config, expectedErrors = undefined) { instanceOf: ValidationError, name: "ValidationError" }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + }); t.deepEqual(validationError.errors, expectedErrors); } else { await t.notThrowsAsync(validation); @@ -131,8 +134,7 @@ test("No type", async (t) => { message: "should have required property 'type'", params: { missingProperty: "type", - }, - schemaPath: "#/required", + } }]); }); @@ -148,8 +150,7 @@ test("No type, no kind", async (t) => { message: "should have required property 'type'", params: { missingProperty: "type", - }, - schemaPath: "#/required", + } }]); }); @@ -172,8 +173,7 @@ test("Invalid type", async (t) => { "theme-library", "module", ], - }, - schemaPath: "#/properties/type/enum", + } }]); }); @@ -190,7 +190,6 @@ test("No specVersion", async (t) => { message: "should have required property 'specVersion'", params: { missingProperty: "specVersion", - }, - schemaPath: "#/required", + } }]); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index bb286726d0d..8c168dec435 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -11,6 +11,14 @@ async function assertValidation(t, config, expectedErrors = undefined) { instanceOf: ValidationError, name: "ValidationError" }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + if (error.params && Array.isArray(error.params.errors)) { + error.params.errors.forEach(($) => { + delete $.schemaPath; + }); + } + }); t.deepEqual(validationError.errors, expectedErrors); } else { await t.notThrowsAsync(validation); @@ -28,14 +36,14 @@ test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-application"}); const thresholds = { statements: 80, - branches: 70, + branches: 75, functions: 100, lines: 80 }; t.context.ajvCoverage.verify(thresholds); }); -["2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -220,8 +228,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "notAllowed", - }, - schemaPath: "#/additionalProperties", + } }, { dataPath: "/resources/configuration", @@ -229,8 +236,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "notAllowed", - }, - schemaPath: "#/properties/configuration/additionalProperties", + } }, { dataPath: "/resources/configuration/propertiesFileSourceEncoding", @@ -241,8 +247,7 @@ test.after.always((t) => { "UTF-8", "ISO-8859-1" ], - }, - schemaPath: "../project.json#/definitions/resources-configuration-propertiesFileSourceEncoding/enum" + } }, { dataPath: "/resources/configuration/paths", @@ -250,8 +255,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "app", - }, - schemaPath: "#/properties/configuration/properties/paths/additionalProperties", + } }, { dataPath: "/resources/configuration/paths/webapp", @@ -259,8 +263,7 @@ test.after.always((t) => { message: "should be string", params: { type: "string" - }, - schemaPath: "#/properties/configuration/properties/paths/properties/webapp/type" + } } ]); await assertValidation(t, { @@ -281,8 +284,7 @@ test.after.always((t) => { message: "should be object", params: { type: "object" - }, - schemaPath: "#/properties/configuration/properties/paths/type", + } } ]); }); @@ -358,7 +360,8 @@ test.after.always((t) => { "path": "some/invalid/path", "paths": "some/invalid/glob/**/pattern/Component.js", "namespaces": "some/invalid/namespace", - } + }, + "libraryPreload": {} // Only supported for type library } }, [ { @@ -367,8 +370,15 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "jsdoc" - }, - schemaPath: "#/additionalProperties" + } + }, + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "libraryPreload" + } }, { dataPath: "/builder/bundles/0/bundleDefinition/sections/0", @@ -376,10 +386,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "declareModules", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/additionalProperties", + } }, { dataPath: "/builder/bundles/0/bundleDefinition/sections/0/name", @@ -387,10 +394,7 @@ test.after.always((t) => { message: "should be string", params: { type: "string", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/properties/name/type", + } }, { dataPath: "/builder/bundles/1/bundleDefinition", @@ -398,8 +402,7 @@ test.after.always((t) => { message: "should have required property 'name'", params: { missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/required", + } }, { dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", @@ -407,10 +410,7 @@ test.after.always((t) => { message: "should be string", params: { type: "string", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/defaultFileTypes/items/type", + } }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/0", @@ -418,10 +418,7 @@ test.after.always((t) => { message: "should have required property 'mode'", params: { missingProperty: "mode", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/required", + } }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", @@ -429,10 +426,7 @@ test.after.always((t) => { message: "should be boolean", params: { type: "boolean", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/properties/declareRawModules/type", + } }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", @@ -445,10 +439,7 @@ test.after.always((t) => { "require", "provided", ], - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/properties/mode/enum", + } }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", @@ -456,10 +447,7 @@ test.after.always((t) => { message: "should be array", params: { type: "array", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/properties/filters/type", + } }, { dataPath: "/builder/bundles/1/bundleOptions", @@ -467,10 +455,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "notAllowed", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + - "additionalProperties", + } }, { dataPath: "/builder/bundles/1/bundleOptions/optimize", @@ -478,10 +463,7 @@ test.after.always((t) => { message: "should be boolean", params: { type: "boolean", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + - "properties/optimize/type", + } }, { dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", @@ -489,10 +471,7 @@ test.after.always((t) => { message: "should be number", params: { type: "number", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + - "properties/numberOfParts/type", + } }, { dataPath: "/builder/componentPreload", @@ -500,8 +479,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "path", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/additionalProperties", + } }, { dataPath: "/builder/componentPreload/paths", @@ -509,8 +487,7 @@ test.after.always((t) => { message: "should be array", params: { type: "array", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/properties/paths/type", + } }, { dataPath: "/builder/componentPreload/namespaces", @@ -518,12 +495,137 @@ test.after.always((t) => { message: "should be array", params: { type: "array", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/properties/namespaces/type", + } } ]); }); }); +["2.2", "2.1", "2.0"].forEach(function(specVersion) { + test(`Unsupported builder/componentPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }, [ + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "excludes", + }, + }, + ]); + }); +}); + +["2.3"].forEach(function(specVersion) { + test(`application (specVersion ${specVersion}): builder/componentPreload/excludes`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }); + }); + test(`Invalid builder/componentPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": "some/excluded/files/**" + } + } + }, [ + { + dataPath: "/builder/componentPreload/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/componentPreload/excludes/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/componentPreload/excludes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/componentPreload/excludes/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); project.defineTests(test, assertValidation, "application"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index 69f5e9f01d7..b3b1da8d561 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -11,6 +11,14 @@ async function assertValidation(t, config, expectedErrors = undefined) { instanceOf: ValidationError, name: "ValidationError" }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + if (error.params && Array.isArray(error.params.errors)) { + error.params.errors.forEach(($) => { + delete $.schemaPath; + }); + } + }); t.deepEqual(validationError.errors, expectedErrors); } else { await t.notThrowsAsync(validation); @@ -28,14 +36,14 @@ test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-library"}); const thresholds = { statements: 80, - branches: 70, + branches: 75, functions: 100, lines: 80 }; t.context.ajvCoverage.verify(thresholds); }); -["2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): Valid configuration`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -296,8 +304,7 @@ test.after.always((t) => { "UTF-8", "ISO-8859-1", ], - }, - schemaPath: "../project.json#/definitions/resources-configuration-propertiesFileSourceEncoding/enum", + } }, { dataPath: "/resources/configuration/paths", @@ -305,8 +312,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "webapp", - }, - schemaPath: "#/properties/configuration/properties/paths/additionalProperties", + } }, { dataPath: "/resources/configuration/paths/src", @@ -314,8 +320,7 @@ test.after.always((t) => { message: "should be string", params: { type: "string", - }, - schemaPath: "#/properties/configuration/properties/paths/properties/src/type", + } }, { dataPath: "/resources/configuration/paths/test", @@ -323,8 +328,7 @@ test.after.always((t) => { message: "should be string", params: { type: "string", - }, - schemaPath: "#/properties/configuration/properties/paths/properties/test/type", + } }, { dataPath: "/builder/resources/excludes", @@ -332,8 +336,7 @@ test.after.always((t) => { message: "should be array", params: { type: "array", - }, - schemaPath: "../project.json#/definitions/builder-resources/properties/excludes/type", + } }, { dataPath: "/builder/jsdoc/excludes", @@ -341,8 +344,7 @@ test.after.always((t) => { message: "should be array", params: { type: "array", - }, - schemaPath: "#/properties/jsdoc/properties/excludes/type", + } }, { dataPath: "/builder/bundles/0/bundleDefinition/sections/0", @@ -350,10 +352,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "declareModules", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/additionalProperties", + } }, { dataPath: "/builder/bundles/0/bundleDefinition/sections/0/name", @@ -361,10 +360,7 @@ test.after.always((t) => { message: "should be string", params: { type: "string", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/properties/name/type", + } }, { dataPath: "/builder/bundles/1/bundleDefinition", @@ -372,8 +368,7 @@ test.after.always((t) => { message: "should have required property 'name'", params: { missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/required", + } }, { dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", @@ -381,10 +376,7 @@ test.after.always((t) => { message: "should be string", params: { type: "string", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/defaultFileTypes/items/type", + } }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/0", @@ -392,10 +384,7 @@ test.after.always((t) => { message: "should have required property 'mode'", params: { missingProperty: "mode", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/required", + } }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", @@ -403,10 +392,7 @@ test.after.always((t) => { message: "should be boolean", params: { type: "boolean", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/properties/declareRawModules/type", + } }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", @@ -419,10 +405,7 @@ test.after.always((t) => { "require", "provided", ], - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/properties/mode/enum", + } }, { dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", @@ -430,10 +413,7 @@ test.after.always((t) => { message: "should be array", params: { type: "array", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleDefinition/" + - "properties/sections/items/properties/filters/type", + } }, { dataPath: "/builder/bundles/1/bundleOptions", @@ -441,10 +421,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "notAllowed", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + - "additionalProperties", + } }, { dataPath: "/builder/bundles/1/bundleOptions/optimize", @@ -452,10 +429,7 @@ test.after.always((t) => { message: "should be boolean", params: { type: "boolean", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + - "properties/optimize/type", + } }, { dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", @@ -463,10 +437,7 @@ test.after.always((t) => { message: "should be number", params: { type: "number", - }, - schemaPath: - "../project.json#/definitions/builder-bundles/items/properties/bundleOptions/" + - "properties/numberOfParts/type", + } }, { dataPath: "/builder/componentPreload", @@ -474,8 +445,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "path", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/additionalProperties", + } }, { dataPath: "/builder/componentPreload/paths", @@ -483,8 +453,7 @@ test.after.always((t) => { message: "should be array", params: { type: "array", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/properties/paths/type", + } }, { dataPath: "/builder/componentPreload/namespaces", @@ -492,8 +461,7 @@ test.after.always((t) => { message: "should be array", params: { type: "array", - }, - schemaPath: "../project.json#/definitions/builder-componentPreload/properties/namespaces/type", + } }, { dataPath: "/builder/customTasks/0", @@ -501,8 +469,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "afterTask", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/additionalProperties", + } }, { dataPath: "/builder/customTasks/0", @@ -510,8 +477,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "beforeTask", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/1/additionalProperties", + } }, { dataPath: "/builder/customTasks/1", @@ -519,8 +485,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "afterTask", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/additionalProperties", + } }, { dataPath: "/builder/customTasks/1", @@ -528,8 +493,7 @@ test.after.always((t) => { message: "should have required property 'name'", params: { missingProperty: "name", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/required", + } }, { dataPath: "/builder/customTasks/1", @@ -537,8 +501,7 @@ test.after.always((t) => { message: "should have required property 'beforeTask'", params: { missingProperty: "beforeTask", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/required", + } }, { dataPath: "/builder/customTasks/2", @@ -546,8 +509,7 @@ test.after.always((t) => { message: "should be object", params: { type: "object", - }, - schemaPath: "../project.json#/definitions/customTasks/items/oneOf/0/type", + } }, { dataPath: "/server/settings/httpPort", @@ -555,8 +517,7 @@ test.after.always((t) => { message: "should be number", params: { type: "number", - }, - schemaPath: "../project.json#/definitions/server/properties/settings/properties/httpPort/type", + } }, { dataPath: "/server/settings/httpsPort", @@ -564,8 +525,7 @@ test.after.always((t) => { message: "should be number", params: { type: "number", - }, - schemaPath: "../project.json#/definitions/server/properties/settings/properties/httpsPort/type", + } } ]); }); @@ -591,10 +551,254 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "cachebuster" - }, - schemaPath: "#/additionalProperties" + } }]); }); }); +["2.2", "2.1", "2.0"].forEach(function(specVersion) { + test(`Unsupported builder/libraryPreload configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "libraryPreload": {} + } + }, [ + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "libraryPreload", + }, + }, + ]); + }); + test(`Unsupported builder/componentPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }, [ + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "excludes", + }, + }, + ]); + }); +}); + +["2.3"].forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): builder/libraryPreload/excludes`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "libraryPreload": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }); + }); + test(`Invalid builder/libraryPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "libraryPreload": { + "excludes": "some/excluded/files/**" + } + } + }, [ + { + dataPath: "/builder/libraryPreload/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "libraryPreload": { + "excludes": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/libraryPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/libraryPreload/excludes/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/libraryPreload/excludes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/libraryPreload/excludes/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); + + + test(`library (specVersion ${specVersion}): builder/componentPreload/excludes`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }); + }); + test(`Invalid builder/componentPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": "some/excluded/files/**" + } + } + }, [ + { + dataPath: "/builder/componentPreload/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/componentPreload/excludes/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/componentPreload/excludes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/componentPreload/excludes/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); + project.defineTests(test, assertValidation, "library"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js index d4b3d801131..b3b6c148436 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js @@ -11,6 +11,9 @@ async function assertValidation(t, config, expectedErrors = undefined) { instanceOf: ValidationError, name: "ValidationError" }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + }); t.deepEqual(validationError.errors, expectedErrors); } else { await t.notThrowsAsync(validation); @@ -35,7 +38,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -69,8 +72,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { "additionalProperty": "framework" - }, - schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties", + } }]); }); @@ -92,8 +94,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { "additionalProperty": "propertiesFileSourceEncoding" - }, - schemaPath: "#/definitions/resources/properties/configuration/additionalProperties" + } }]); }); @@ -112,16 +113,14 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { "additionalProperty": "builder" - }, - schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties", + } }, { dataPath: "", keyword: "additionalProperties", message: "should NOT have additional properties", params: { "additionalProperty": "server" - }, - schemaPath: specVersion !== "2.0" ? "#/then/additionalProperties" : "#/else/additionalProperties", + } }]); }); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js index 197792b8210..7060baf327d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -11,6 +11,14 @@ async function assertValidation(t, config, expectedErrors = undefined) { instanceOf: ValidationError, name: "ValidationError" }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + if (error.params && Array.isArray(error.params.errors)) { + error.params.errors.forEach(($) => { + delete $.schemaPath; + }); + } + }); t.deepEqual(validationError.errors, expectedErrors); } else { await t.notThrowsAsync(validation); @@ -27,16 +35,16 @@ test.before((t) => { test.after.always((t) => { t.context.ajvCoverage.createReport("html", {dir: "coverage/ajv-project-theme-library"}); const thresholds = { - statements: 75, + statements: 80, branches: 70, functions: 100, - lines: 75 + lines: 80 }; t.context.ajvCoverage.verify(thresholds); }); -["2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -116,7 +124,11 @@ test.after.always((t) => { "excludes": [ "some/project/name/thirdparty/**" ] - } + }, + // componentPreload is only supported for types application/library + "componentPreload": {}, + // libraryPreload is only supported for type library + "libraryPreload": {}, } }, [{ dataPath: "/builder", @@ -124,8 +136,7 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "cachebuster" - }, - schemaPath: "#/additionalProperties" + } }, { dataPath: "/builder", @@ -133,8 +144,23 @@ test.after.always((t) => { message: "should NOT have additional properties", params: { additionalProperty: "jsdoc" - }, - schemaPath: "#/additionalProperties" + } + }, + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "componentPreload" + } + }, + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "libraryPreload" + } }]); }); }); diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 8ea7abfca4c..2bd9b6a3508 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -10,6 +10,14 @@ async function assertValidation(t, config, expectedErrors = undefined) { instanceOf: ValidationError, name: "ValidationError" }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + if (error.params && Array.isArray(error.params.errors)) { + error.params.errors.forEach(($) => { + delete $.schemaPath; + }); + } + }); t.deepEqual(validationError.errors, expectedErrors); } else { await t.notThrowsAsync(validation); @@ -41,8 +49,7 @@ test("Undefined", async (t) => { message: "should be object", params: { type: "object", - }, - schemaPath: "#/type", + } }]); }); @@ -54,8 +61,7 @@ test("Missing specVersion, type", async (t) => { message: "should have required property 'specVersion'", params: { missingProperty: "specVersion", - }, - schemaPath: "#/required", + } }, { dataPath: "", @@ -63,8 +69,7 @@ test("Missing specVersion, type", async (t) => { message: "should have required property 'type'", params: { missingProperty: "type", - }, - schemaPath: "#/required", + } } ]); @@ -80,8 +85,7 @@ test("Missing type", async (t) => { message: "should have required property 'type'", params: { missingProperty: "type", - }, - schemaPath: "#/required", + } } ]); }); @@ -96,7 +100,7 @@ test("Invalid specVersion", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. -Supported specification versions: "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" +Supported specification versions: "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, params: { errors: [ @@ -106,6 +110,7 @@ For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specific message: "should be equal to one of the allowed values", params: { allowedValues: [ + "2.3", "2.2", "2.1", "2.0", @@ -113,12 +118,10 @@ For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specific "1.0", "0.1", ], - }, - schemaPath: "#/properties/specVersion/enum", + } }, ], - }, - schemaPath: "#/properties/specVersion/errorMessage", + } } ]); }); @@ -139,8 +142,7 @@ test("Invalid type", async (t) => { "theme-library", "module" ] - }, - schemaPath: "#/properties/type/enum", + } } ]); }); @@ -160,8 +162,7 @@ test("Invalid kind", async (t) => { "extension", null ], - }, - schemaPath: "#/properties/kind/enum", + } } ]); }); From 26ccbd6e98bbbf39329fa1d81db7a2a397c8dffe Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 9 Feb 2021 17:57:04 +0000 Subject: [PATCH 0494/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.7.2 to 2.8.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.8.0/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5ec31a07120..2c0b226fd78 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -558,9 +558,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.7.2.tgz", - "integrity": "sha512-n6itXI2cIYEIUHfXwgkfyRwGzqrYyakjoOKPE7+ivzvi/jdMycOI0rgBsc3LSCg0pW1D37HwHNCEBDlwxAJboA==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.8.0.tgz", + "integrity": "sha512-/hJDtJjZ5yS7QdB7ZXVCokEg2ddSlw9wZeVI4pFBu+w7+5Zhb2wu955yr2HJm9OtOaGqlGbndbNgX86MniFgzA==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -571,7 +571,7 @@ "esprima": "^4.0.1", "estraverse": "5.1.0", "globby": "^11.0.2", - "graceful-fs": "^4.2.4", + "graceful-fs": "^4.2.5", "jsdoc": "^3.6.6", "less-openui5": "^0.10.0", "make-dir": "^3.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index b1694252b84..a3f54ef0fbd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.7.2", + "@ui5/builder": "^2.8.0", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.7", "ajv": "^6.12.6", From e00b4b4e0290c071eab17c73bd7c055d02c0d8e0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 9 Feb 2021 18:04:02 +0000 Subject: [PATCH 0495/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.7 to 2.2.8 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.8/CHANGELOG.md --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2c0b226fd78..8d4baf4c581 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -610,25 +610,25 @@ } }, "@ui5/server": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.7.tgz", - "integrity": "sha512-cnn09YuUEy0bddkDRiZ4Yw5xlNZdSylx/wlRqXq+rI1hNZfkUJRBv2KzK+ZIOYQHkWy9j12XNH6n/SAsyUvMUg==", + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.8.tgz", + "integrity": "sha512-K0z0IDpINZtcKrbaAD+SOLh4n2i7Eath+5qLDb+e9ajch4SherzhVvhfUHW+lxkEERopDQM2U9o85MCKQ55Z8A==", "requires": { - "@ui5/builder": "^2.4.3", - "@ui5/fs": "^2.0.5", + "@ui5/builder": "^2.8.0", + "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", "body-parser": "^1.19.0", "compression": "^1.7.4", - "connect-openui5": "^0.10.0", + "connect-openui5": "^0.10.1", "cors": "^2.8.5", "devcert-sanscache": "^0.4.8", "escape-html": "^1.0.3", "etag": "^1.8.1", "express": "^4.17.1", "fresh": "^0.5.2", - "graceful-fs": "^4.2.4", + "graceful-fs": "^4.2.5", "make-dir": "^3.1.0", - "mime-types": "^2.1.27", + "mime-types": "^2.1.28", "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index a3f54ef0fbd..9dd7df164c3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^2.8.0", "@ui5/logger": "^2.0.1", - "@ui5/server": "^2.2.7", + "@ui5/server": "^2.2.8", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From a630a15d9f962bc786744af7a48d9f0078bbd82b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 9 Feb 2021 18:07:33 +0000 Subject: [PATCH 0496/1272] [ui5-project]Release 2.3.0 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 328be4efaca..74d3f214a57 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.2.6...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.3.0...HEAD). + + +## [v2.3.0] - 2021-02-09 +### Features +- specVersion 2.3 ([#388](https://github.com/SAP/ui5-project/issues/388)) [`3e28026`](https://github.com/SAP/ui5-project/commit/3e280267b60a9a72183d5ab0905d838b6fcfaf33) + ## [v2.2.6] - 2021-01-28 @@ -229,6 +235,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.3.0]: https://github.com/SAP/ui5-project/compare/v2.2.6...v2.3.0 [v2.2.6]: https://github.com/SAP/ui5-project/compare/v2.2.5...v2.2.6 [v2.2.5]: https://github.com/SAP/ui5-project/compare/v2.2.4...v2.2.5 [v2.2.4]: https://github.com/SAP/ui5-project/compare/v2.2.3...v2.2.4 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8d4baf4c581..26a568a386f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.6", + "version": "2.3.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 9dd7df164c3..cb67d35f75f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.2.6", + "version": "2.3.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 27bbcd9958bbd8181faaea279eae0035ad0e3ec9 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 14 Feb 2021 03:20:52 +0000 Subject: [PATCH 0497/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 131 ++++++++++++++++------------- packages/project/package.json | 8 +- 2 files changed, 78 insertions(+), 61 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 26a568a386f..19ddb3ce8ef 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,16 +13,16 @@ } }, "@babel/core": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.13.tgz", - "integrity": "sha512-BQKE9kXkPlXHPeqissfxo0lySWJcYdEP0hdtJOH/iJfDdhOCcgtNCjftCJg3qqauB4h+lz2N6ixM++b9DN1Tcw==", + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.16.tgz", + "integrity": "sha512-t/hHIB504wWceOeaOoONOhu+gX+hpjfeN6YRBT209X/4sibZQfSF1I0HFRRlBe97UZZosGx5XwUg1ZgNbelmNw==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.13", + "@babel/generator": "^7.12.15", "@babel/helper-module-transforms": "^7.12.13", "@babel/helpers": "^7.12.13", - "@babel/parser": "^7.12.13", + "@babel/parser": "^7.12.16", "@babel/template": "^7.12.13", "@babel/traverse": "^7.12.13", "@babel/types": "^7.12.13", @@ -104,9 +104,9 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.13.tgz", - "integrity": "sha512-B+7nN0gIL8FZ8SvMcF+EPyB21KnCcZHQZFczCxbiNGV/O0rsrSBlWGLzmtBJ3GMjSVMIm4lpFhR+VdVBuIsUcQ==", + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.16.tgz", + "integrity": "sha512-zYoZC1uvebBFmj1wFAlXwt35JLEgecefATtKp20xalwEK8vHAixLBXTGxNrVGEmTT+gzOThUgr8UEdgtalc1BQ==", "dev": true, "requires": { "@babel/types": "^7.12.13" @@ -255,9 +255,9 @@ } }, "@babel/parser": { - "version": "7.12.15", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.15.tgz", - "integrity": "sha512-AQBOU2Z9kWwSZMd6lNjCX0GUgFonL1wAM1db8L8PMk9UDaGsRCArBkU4Sc+UCM3AE4hjbXx+h58Lb3QT4oRmrA==" + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.16.tgz", + "integrity": "sha512-c/+u9cqV6F0+4Hpq01jnJO+GLp2DdT63ppz9Xa+6cHaajM9VFzK/iDXiKK65YtpeVwu+ctfS6iqlMqRgQRzeCw==" }, "@babel/template": { "version": "7.12.13", @@ -444,9 +444,9 @@ } }, "@istanbuljs/schema": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", - "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true }, "@nodelib/fs.scandir": { @@ -1015,9 +1015,9 @@ "dev": true }, "bl": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.4.tgz", - "integrity": "sha512-7tdr4EpSd7jJ6tuQ21vu2ke8w7pNEstzj1O8wwq6sNNzO3UDi5MA8Gny/gquCj7r2C6fHudg8tKRGyjRgmvNxQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dev": true, "requires": { "buffer": "^5.5.0", @@ -1699,9 +1699,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.1.1.tgz", - "integrity": "sha512-vue7cRi1ZO5/72FJ+wZ5+siTSBlUv3ZksTk8bWD2IkaA6obitzMZP3yI65azTJLckwmi8lxfPP5Sd9oGuZ8e2g==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.1.2.tgz", + "integrity": "sha512-AOdq0i8ghZudnYv8RUnHrhTgafUGs61Rdz9jemU5x2lnZwAWyOq7vySo626K59e1fVKH1xSRorJwPVRLSWOoAQ==", "dev": true }, "common-path-prefix": { @@ -1762,9 +1762,9 @@ } }, "concordance": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.1.tgz", - "integrity": "sha512-TbNtInKVElgEBnJ1v2Xg+MFX2lvFLbmlv3EuSC5wTfCwpB8kC3w3mffF6cKuUhkn475Ym1f1I4qmuXzx2+uXpw==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.2.tgz", + "integrity": "sha512-hC63FKdGM9tBcd4VQIa+LQjmrgorrnxESb8B3J21Qe/FzL0blBv0pb8iNyymt+bmsvGSUqO0uhPi2ZSLgLtLdg==", "dev": true, "requires": { "date-time": "^3.1.0", @@ -2612,12 +2612,12 @@ } }, "eslint": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.19.0.tgz", - "integrity": "sha512-CGlMgJY56JZ9ZSYhJuhow61lMPPjUzWmChFya71Z/jilVos7mR/jPgaEfVGgMBY5DshbKdG8Ezb8FDCHcoMEMg==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.20.0.tgz", + "integrity": "sha512-qGi0CTcOGP2OtCQBgWZlQjcTuP0XkIpYFj25XtRTQSHC+umNnp7UMshr2G8SLsRFYDdAPFeHOsiteadmMH02Yw==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", + "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.3.0", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -2629,7 +2629,7 @@ "eslint-utils": "^2.1.0", "eslint-visitor-keys": "^2.0.0", "espree": "^7.3.1", - "esquery": "^1.2.0", + "esquery": "^1.4.0", "esutils": "^2.0.2", "file-entry-cache": "^6.0.0", "functional-red-black-tree": "^1.0.1", @@ -2656,6 +2656,15 @@ "v8-compile-cache": "^2.0.3" }, "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", @@ -2755,12 +2764,12 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "31.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-31.6.0.tgz", - "integrity": "sha512-kYhdW+BXHij9n12oHvAC27oDHKEFITz1YJP/C0NPtb+gsGJWxejh5B6dEmmj6oLYOsmNvuCVkdIcqYOyabP2QA==", + "version": "31.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-31.6.1.tgz", + "integrity": "sha512-5hCV3u+1VSEUMyfdTl+dpWsioD7tqQr2ILQw+KbXrF42AVxCLO8gnNLR6zDCDjqGGpt79V1sgY0RRchCWuCigg==", "dev": true, "requires": { - "comment-parser": "1.1.1", + "comment-parser": "1.1.2", "debug": "^4.3.1", "jsdoctypeparser": "^9.0.0", "lodash": "^4.17.20", @@ -2969,9 +2978,9 @@ }, "dependencies": { "type": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.1.0.tgz", - "integrity": "sha512-G9absDWvhAWCV2gmF1zKud3OyC61nZDwWvBL2DApaVFogI07CprggiQAOOjvp2NRjYWFzPyu7vwtDrQFq8jeSA==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.2.0.tgz", + "integrity": "sha512-M/u37b4oSGlusaU8ZB96BfFPWQ8MbsZYXB+kXGMiDj6IKinkcNaQvmirBuWj8mAXqP6LYn1rQvbTYum3yPhaOA==" } } }, @@ -3347,9 +3356,9 @@ } }, "graceful-fs": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.5.tgz", - "integrity": "sha512-kBBSQbz2K0Nyn+31j/w36fUfxkBW9/gfwRWdUY1ULReH3iokVJgddZAFcD1D0xlgTmFxJCbUkUclAlc6/IDJkw==" + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" }, "handle-thing": { "version": "2.0.1", @@ -5773,6 +5782,11 @@ "lodash": "^4.17.15" } }, + "queue-microtask": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.2.tgz", + "integrity": "sha512-dB15eXv3p2jDlbOiNLyMabYg1/sXvppd8DP2J3EOCQ0AkuSXCW2tP7mnVouVLJKgUMY6yP0kcQDVpLCN13h4Xg==" + }, "quick-lru": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", @@ -6017,11 +6031,11 @@ } }, "resolve": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", - "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "requires": { - "is-core-module": "^2.1.0", + "is-core-module": "^2.2.0", "path-parse": "^1.0.6" } }, @@ -6104,9 +6118,12 @@ } }, "run-parallel": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.10.tgz", - "integrity": "sha512-zb/1OuZ6flOlH6tQyMPUrE3x3Ulxjlo9WIVXR4yVYi4H9UXQaeIsPbLn2R3O3vQCnDKkAl2qHiuocKKX4Tz/Sw==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "requires": { + "queue-microtask": "^1.2.2" + } }, "run-queue": { "version": "1.0.3", @@ -6127,9 +6144,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.6.tgz", - "integrity": "sha512-1bcDHDcSqeFtMr0JXI3xc/CXX6c4p0wHHivJdru8W7waM7a1WjKMm4m/Z5sY7CbVw4Whi2Chpcw6DFfSWwGLzQ==", + "version": "1.32.7", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.7.tgz", + "integrity": "sha512-C8Z4bjqGWnsYa11o8hpKAuoyFdRhrSHcYjCr+XAWVPSIQqC8mp2f5Dx4em0dKYehPzg5XSekmCjqJnEZbIls9A==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" @@ -6662,9 +6679,9 @@ }, "dependencies": { "ajv": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.0.4.tgz", - "integrity": "sha512-xzzzaqgEQfmuhbhAoqjJ8T/1okb6gAzXn/eQRNpAN1AEUoHJTNF9xCDRTtf/s3SKldtZfa+RJeTs+BQq+eZ/sw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.0.tgz", + "integrity": "sha512-svS9uILze/cXbH0z2myCK2Brqprx/+JJYK5pHicT/GQiBfzzhUVAIT6MwqJg8y4xV/zoGsUeuPuwtoiKSGE15g==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -6896,9 +6913,9 @@ } }, "terser": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.5.1.tgz", - "integrity": "sha512-6VGWZNVP2KTUcltUQJ25TtNjx/XgdDsBDKGt8nN0MpydU36LmbPPcMBd2kmtZNNGVVDLg44k7GKeHHj+4zPIBQ==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.6.0.tgz", + "integrity": "sha512-vyqLMoqadC1uR0vywqOZzriDYzgEkNJFK4q9GeyOBHIbiECHiWLKcWfbQWAUaPfxkjDhapSlZB9f7fkMrvkVjA==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", @@ -7438,9 +7455,9 @@ } }, "yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "version": "20.2.5", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.5.tgz", + "integrity": "sha512-jYRGS3zWy20NtDtK2kBgo/TlAoy5YUuhD9/LZ7z7W4j1Fdw2cqD0xEEclf8fxc8xjD6X5Qr+qQQwCEsP8iRiYg==", "dev": true }, "yazl": { diff --git a/packages/project/package.json b/packages/project/package.json index cb67d35f75f..979400800c0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -108,7 +108,7 @@ "ajv-errors": "^1.0.1", "chalk": "^4.1.0", "escape-string-regexp": "^4.0.0", - "graceful-fs": "^4.2.5", + "graceful-fs": "^4.2.6", "js-yaml": "^3.14.1", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", @@ -117,7 +117,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", - "resolve": "^1.19.0", + "resolve": "^1.20.0", "rimraf": "^3.0.2", "semver": "^7.3.4" }, @@ -127,9 +127,9 @@ "cross-env": "^7.0.3", "depcheck": "^1.3.1", "docdash": "^1.2.0", - "eslint": "^7.19.0", + "eslint": "^7.20.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^31.6.0", + "eslint-plugin-jsdoc": "^31.6.1", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 44db2956b016546e0712fa5a62c5ae7ab2b81e81 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 21 Feb 2021 03:21:20 +0000 Subject: [PATCH 0498/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 533 ++++++++++++++++++++++++----- packages/project/package.json | 2 +- 2 files changed, 441 insertions(+), 94 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 19ddb3ce8ef..d7e25bc1594 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,19 +13,19 @@ } }, "@babel/core": { - "version": "7.12.16", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.16.tgz", - "integrity": "sha512-t/hHIB504wWceOeaOoONOhu+gX+hpjfeN6YRBT209X/4sibZQfSF1I0HFRRlBe97UZZosGx5XwUg1ZgNbelmNw==", + "version": "7.12.17", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.17.tgz", + "integrity": "sha512-V3CuX1aBywbJvV2yzJScRxeiiw0v2KZZYYE3giywxzFJL13RiyPjaaDwhDnxmgFTTS7FgvM2ijr4QmKNIu0AtQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.15", - "@babel/helper-module-transforms": "^7.12.13", - "@babel/helpers": "^7.12.13", - "@babel/parser": "^7.12.16", + "@babel/generator": "^7.12.17", + "@babel/helper-module-transforms": "^7.12.17", + "@babel/helpers": "^7.12.17", + "@babel/parser": "^7.12.17", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.13", - "@babel/types": "^7.12.13", + "@babel/traverse": "^7.12.17", + "@babel/types": "^7.12.17", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", @@ -65,12 +65,12 @@ } }, "@babel/generator": { - "version": "7.12.15", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.15.tgz", - "integrity": "sha512-6F2xHxBiFXWNSGb7vyCUTBF8RCLY66rS0zEPcP8t/nQyXjha5EuK4z7H5o7fWG8B4M7y6mqVWq1J+1PuwRhecQ==", + "version": "7.12.17", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.17.tgz", + "integrity": "sha512-DSA7ruZrY4WI8VxuS1jWSRezFnghEoYEFrZcw9BizQRmOZiUsiHl59+qEARGPqPikwA/GPTyRCi7isuCK/oyqg==", "dev": true, "requires": { - "@babel/types": "^7.12.13", + "@babel/types": "^7.12.17", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -104,12 +104,12 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.12.16", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.16.tgz", - "integrity": "sha512-zYoZC1uvebBFmj1wFAlXwt35JLEgecefATtKp20xalwEK8vHAixLBXTGxNrVGEmTT+gzOThUgr8UEdgtalc1BQ==", + "version": "7.12.17", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.17.tgz", + "integrity": "sha512-Bzv4p3ODgS/qpBE0DiJ9qf5WxSmrQ8gVTe8ClMfwwsY2x/rhykxxy3bXzG7AGTnPB2ij37zGJ/Q/6FruxHxsxg==", "dev": true, "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.12.17" } }, "@babel/helper-module-imports": { @@ -122,9 +122,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.13.tgz", - "integrity": "sha512-acKF7EjqOR67ASIlDTupwkKM1eUisNAjaSduo5Cz+793ikfnpe7p4Q7B7EWU2PCoSTPWsQkR7hRUWEIZPiVLGA==", + "version": "7.12.17", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.17.tgz", + "integrity": "sha512-sFL+p6zOCQMm9vilo06M4VHuTxUAwa6IxgL56Tq1DVtA0ziAGTH1ThmJq7xwPqdQlgAbKX3fb0oZNbtRIyA5KQ==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.12.13", @@ -133,8 +133,8 @@ "@babel/helper-split-export-declaration": "^7.12.13", "@babel/helper-validator-identifier": "^7.12.11", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.13", - "@babel/types": "^7.12.13", + "@babel/traverse": "^7.12.17", + "@babel/types": "^7.12.17", "lodash": "^4.17.19" } }, @@ -183,14 +183,14 @@ "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" }, "@babel/helpers": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.13.tgz", - "integrity": "sha512-oohVzLRZ3GQEk4Cjhfs9YkJA4TdIDTObdBEZGrd6F/T0GPSnuV6l22eMcxlvcvzVIPH3VTtxbseudM1zIE+rPQ==", + "version": "7.12.17", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.17.tgz", + "integrity": "sha512-tEpjqSBGt/SFEsFikKds1sLNChKKGGR17flIgQKXH4fG6m9gTgl3gnOC1giHNyaBCSKuTfxaSzHi7UnvqiVKxg==", "dev": true, "requires": { "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.13", - "@babel/types": "^7.12.13" + "@babel/traverse": "^7.12.17", + "@babel/types": "^7.12.17" } }, "@babel/highlight": { @@ -255,9 +255,9 @@ } }, "@babel/parser": { - "version": "7.12.16", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.16.tgz", - "integrity": "sha512-c/+u9cqV6F0+4Hpq01jnJO+GLp2DdT63ppz9Xa+6cHaajM9VFzK/iDXiKK65YtpeVwu+ctfS6iqlMqRgQRzeCw==" + "version": "7.12.17", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.17.tgz", + "integrity": "sha512-r1yKkiUTYMQ8LiEI0UcQx5ETw5dpTLn9wijn9hk6KkTtOK95FndDN10M+8/s6k/Ymlbivw0Av9q4SlgF80PtHg==" }, "@babel/template": { "version": "7.12.13", @@ -271,17 +271,17 @@ } }, "@babel/traverse": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.13.tgz", - "integrity": "sha512-3Zb4w7eE/OslI0fTp8c7b286/cQps3+vdLW3UcwC8VSJC6GbKn55aeVVu2QJNuCDoeKyptLOFrPq8WqZZBodyA==", + "version": "7.12.17", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.17.tgz", + "integrity": "sha512-LGkTqDqdiwC6Q7fWSwQoas/oyiEYw6Hqjve5KOSykXkmFJFqzvGMb9niaUEag3Rlve492Mkye3gLw9FTv94fdQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.13", + "@babel/generator": "^7.12.17", "@babel/helper-function-name": "^7.12.13", "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13", + "@babel/parser": "^7.12.17", + "@babel/types": "^7.12.17", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" @@ -305,9 +305,9 @@ } }, "@babel/types": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz", - "integrity": "sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ==", + "version": "7.12.17", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", + "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.12.11", @@ -638,6 +638,86 @@ "yesno": "^0.3.1" } }, + "@vue/compiler-core": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.5.tgz", + "integrity": "sha512-iFXwk2gmU/GGwN4hpBwDWWMLvpkIejf/AybcFtlQ5V1ur+5jwfBaV0Y1RXoR6ePfBPJixtKZ3PmN+M+HgMAtfQ==", + "dev": true, + "requires": { + "@babel/parser": "^7.12.0", + "@babel/types": "^7.12.0", + "@vue/shared": "3.0.5", + "estree-walker": "^2.0.1", + "source-map": "^0.6.1" + } + }, + "@vue/compiler-dom": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.5.tgz", + "integrity": "sha512-HSOSe2XSPuCkp20h4+HXSiPH9qkhz6YbW9z9ZtL5vef2T2PMugH7/osIFVSrRZP/Ul5twFZ7MIRlp8tPX6e4/g==", + "dev": true, + "requires": { + "@vue/compiler-core": "3.0.5", + "@vue/shared": "3.0.5" + } + }, + "@vue/compiler-sfc": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.5.tgz", + "integrity": "sha512-uOAC4X0Gx3SQ9YvDC7YMpbDvoCmPvP0afVhJoxRotDdJ+r8VO3q4hFf/2f7U62k4Vkdftp6DVni8QixrfYzs+w==", + "dev": true, + "requires": { + "@babel/parser": "^7.12.0", + "@babel/types": "^7.12.0", + "@vue/compiler-core": "3.0.5", + "@vue/compiler-dom": "3.0.5", + "@vue/compiler-ssr": "3.0.5", + "@vue/shared": "3.0.5", + "consolidate": "^0.16.0", + "estree-walker": "^2.0.1", + "hash-sum": "^2.0.0", + "lru-cache": "^5.1.1", + "magic-string": "^0.25.7", + "merge-source-map": "^1.1.0", + "postcss": "^7.0.32", + "postcss-modules": "^3.2.2", + "postcss-selector-parser": "^6.0.4", + "source-map": "^0.6.1" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + } + } + }, + "@vue/compiler-ssr": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.5.tgz", + "integrity": "sha512-Wm//Kuxa1DpgjE4P9W0coZr8wklOfJ35Jtq61CbU+t601CpPTK4+FL2QDBItaG7aoUUDCWL5nnxMkuaOgzTBKg==", + "dev": true, + "requires": { + "@vue/compiler-dom": "3.0.5", + "@vue/shared": "3.0.5" + } + }, + "@vue/shared": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.0.5.tgz", + "integrity": "sha512-gYsNoGkWejBxNO6SNRjOh/xKeZ0H0V+TFzaPzODfBjkAIb0aQgBuixC1brandC/CDJy1wYPwSoYrXpvul7m6yw==", + "dev": true + }, "JSONStream": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", @@ -1008,6 +1088,12 @@ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, "binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -1820,6 +1906,15 @@ "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" }, + "consolidate": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/consolidate/-/consolidate-0.16.0.tgz", + "integrity": "sha512-Nhl1wzCslqXYTJVDyJCu3ODohy9OfBMB5uD2BiBTzd7w+QY0lBzafkR8y8755yMYHAaMD4NuzbAw03/xzfw+eQ==", + "dev": true, + "requires": { + "bluebird": "^3.7.2" + } + }, "content-disposition": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", @@ -1979,6 +2074,12 @@ "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, "currently-unhandled": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", @@ -2011,12 +2112,6 @@ "time-zone": "^1.0.0" } }, - "de-indent": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", - "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=", - "dev": true - }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -2136,13 +2231,14 @@ "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" }, "depcheck": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.3.1.tgz", - "integrity": "sha512-lLMfqX2J+ZF3xUEqHpgCNk+dA8erAfW6XURGNAIyUS4KL2i3lezXGYDevYk3G0rWCwy/3CpxE8ek10NrURFOtQ==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.0.tgz", + "integrity": "sha512-zn63rsHvFfWVgHV/SW4wXT5vqjQpCIGukpnoU2IspU3Lp0Va8/9wFWAsd2V1VzU+AFiFZGdjHZU9nLZQra+1Tg==", "dev": true, "requires": { "@babel/parser": "^7.12.5", "@babel/traverse": "^7.12.5", + "@vue/compiler-sfc": "^3.0.5", "builtin-modules": "^3.1.0", "camelcase": "^6.2.0", "cosmiconfig": "^7.0.0", @@ -2162,7 +2258,6 @@ "sass": "^1.29.0", "scss-parser": "^1.0.4", "semver": "^7.3.2", - "vue-template-compiler": "^2.6.12", "yargs": "^16.1.0" }, "dependencies": { @@ -2388,6 +2483,12 @@ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true + }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -2895,6 +2996,12 @@ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==" }, + "estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, "esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -2978,9 +3085,9 @@ }, "dependencies": { "type": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.2.0.tgz", - "integrity": "sha512-M/u37b4oSGlusaU8ZB96BfFPWQ8MbsZYXB+kXGMiDj6IKinkcNaQvmirBuWj8mAXqP6LYn1rQvbTYum3yPhaOA==" + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.3.0.tgz", + "integrity": "sha512-rgPIqOdfK/4J9FhiVrZ3cveAjRRo5rsQBAIhnylX874y1DX/kEKSVdLsnuHB6l1KTjHyU01VjiMBHgU2adejyg==" } } }, @@ -3054,9 +3161,9 @@ } }, "file-entry-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.0.tgz", - "integrity": "sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "requires": { "flat-cache": "^3.0.4" @@ -3237,6 +3344,15 @@ "wide-align": "^1.1.0" } }, + "generic-names": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/generic-names/-/generic-names-2.0.1.tgz", + "integrity": "sha512-kPCHWa1m9wGG/OwQpeweTwM/PYiQLrUIxXbt/P4Nic3LbGjCP0YwrALHW1uNLKZ0LIMg+RF+XRlj2ekT9ZlZAQ==", + "dev": true, + "requires": { + "loader-utils": "^1.1.0" + } + }, "genfun": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", @@ -3404,6 +3520,12 @@ "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", "dev": true }, + "hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", + "dev": true + }, "hasha": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", @@ -3422,12 +3544,6 @@ } } }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true - }, "hosted-git-info": { "version": "2.8.8", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", @@ -3573,6 +3689,21 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "icss-replace-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", + "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", + "dev": true + }, + "icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + } + }, "ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", @@ -3648,6 +3779,12 @@ "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, "infer-owner": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", @@ -4218,6 +4355,28 @@ } } }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + } + } + }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -4236,9 +4395,9 @@ } }, "lodash": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", - "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "lodash.assignin": { "version": "4.2.0", @@ -4250,6 +4409,12 @@ "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" }, + "lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", + "dev": true + }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -4361,6 +4526,15 @@ "yallist": "^4.0.0" } }, + "magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.4" + } + }, "make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -4547,6 +4721,15 @@ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" }, + "merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", + "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", + "dev": true, + "requires": { + "source-map": "^0.6.1" + } + }, "merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -4572,16 +4755,16 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.45.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz", - "integrity": "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==" + "version": "1.46.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.46.0.tgz", + "integrity": "sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ==" }, "mime-types": { - "version": "2.1.28", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz", - "integrity": "sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==", + "version": "2.1.29", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.29.tgz", + "integrity": "sha512-Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ==", "requires": { - "mime-db": "1.45.0" + "mime-db": "1.46.0" } }, "mimic-fn": { @@ -4778,9 +4961,9 @@ "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" }, "nise": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/nise/-/nise-4.0.4.tgz", - "integrity": "sha512-bTTRUNlemx6deJa+ZyoCUTRvH3liK5+N6VQZ4NIw90AgDXY6iPnsqplNFf6STcj+ePk0H/xqxnP75Lr0J0Fq3A==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/nise/-/nise-4.1.0.tgz", + "integrity": "sha512-eQMEmGN/8arp0xsvGoQ+B1qvSkR73B1nWSCh7nOt5neMCtwcQVYQGdzQMhcNscktTsWB54xnlSQFzOAPJD8nXA==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.0", @@ -5191,9 +5374,9 @@ } }, "open": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-7.4.0.tgz", - "integrity": "sha512-PGoBCX/lclIWlpS/R2PQuIR4NJoXh6X5AwVzE7WXnWRGvHg7+4TBCgsujUgiPpm0K1y4qvQeWnCWVTpTKZBtvA==", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", "dev": true, "requires": { "is-docker": "^2.0.0", @@ -5630,6 +5813,162 @@ } } }, + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-modules": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-3.2.2.tgz", + "integrity": "sha512-JQ8IAqHELxC0N6tyCg2UF40pACY5oiL6UpiqqcIFRWqgDYO8B0jnxzoQ0EOpPrWXvcpu6BSbQU/3vSiq7w8Nhw==", + "dev": true, + "requires": { + "generic-names": "^2.0.1", + "icss-replace-symbols": "^1.1.0", + "lodash.camelcase": "^4.3.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.2", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "string-hash": "^1.1.1" + } + }, + "postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "dev": true, + "requires": { + "postcss": "^7.0.5" + } + }, + "postcss-modules-local-by-default": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", + "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "dev": true, + "requires": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "dev": true, + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + } + }, + "postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "dev": true, + "requires": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + } + }, + "postcss-selector-parser": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz", + "integrity": "sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1", + "util-deprecate": "^1.0.2" + } + }, + "postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", + "dev": true + }, "prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", @@ -6144,9 +6483,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.7", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.7.tgz", - "integrity": "sha512-C8Z4bjqGWnsYa11o8hpKAuoyFdRhrSHcYjCr+XAWVPSIQqC8mp2f5Dx4em0dKYehPzg5XSekmCjqJnEZbIls9A==", + "version": "1.32.8", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.8.tgz", + "integrity": "sha512-Sl6mIeGpzjIUZqvKnKETfMf0iDAswD9TNlv13A7aAF3XZlRPMq4VvJWBC2N2DXbp94MQVdNSFG6LfF/iOXrPHQ==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" @@ -6404,6 +6743,12 @@ "source-map": "^0.6.0" } }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, "spawn-wrap": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", @@ -6571,6 +6916,12 @@ "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" }, + "string-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz", + "integrity": "sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs=", + "dev": true + }, "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", @@ -6679,9 +7030,9 @@ }, "dependencies": { "ajv": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.0.tgz", - "integrity": "sha512-svS9uILze/cXbH0z2myCK2Brqprx/+JJYK5pHicT/GQiBfzzhUVAIT6MwqJg8y4xV/zoGsUeuPuwtoiKSGE15g==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.1.tgz", + "integrity": "sha512-ga/aqDYnUy/o7vbsRTFhhTsNeXiYb5JWDIcRIeZfwRNCefwjNTVYCGdGSUrEmiu3yDK3vFvNbgJxvrQW4JXrYQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7075,6 +7426,12 @@ "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.10.2.tgz", "integrity": "sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg==" }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, "unique-filename": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", @@ -7188,16 +7545,6 @@ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" }, - "vue-template-compiler": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.12.tgz", - "integrity": "sha512-OzzZ52zS41YUbkCBfdXShQTe69j1gQDZ9HIX8miuC9C3rBCk9wIRjLiZZLrmX9V+Ftq/YEyv1JaVr5Y/hNtByg==", - "dev": true, - "requires": { - "de-indent": "^1.0.2", - "he": "^1.1.0" - } - }, "wbuf": { "version": "1.7.3", "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 979400800c0..6eff8c21645 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -125,7 +125,7 @@ "ava": "^3.15.0", "chokidar-cli": "^2.1.0", "cross-env": "^7.0.3", - "depcheck": "^1.3.1", + "depcheck": "^1.4.0", "docdash": "^1.2.0", "eslint": "^7.20.0", "eslint-config-google": "^0.14.0", From cf722fc16f2601bcc52e7638caecab47a3e8e2d0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 17 Feb 2021 19:36:50 +0100 Subject: [PATCH 0499/1272] [ui5-project][FIX] ui5Framework: Don't access metadata of deduped projects Because they don't have any. Otherwise a "Cannot read property 'name' of undefined" error will be thrown. This can only occur when using the "ui5 tree --full" command without the --dedupe option or directly via API. --- packages/project/lib/translators/ui5Framework.js | 5 +++++ packages/project/test/lib/translators/ui5Framework.js | 10 +++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 7f550b56007..ae72520ba04 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -220,6 +220,11 @@ module.exports = { const processedProjects = []; while (queue.length) { const project = queue.shift(); + if (project.deduped) { + // Deduped projects have certainly already been processed + // Note: Deduped dependencies don't have any metadata or other configuration. + continue; + } if (processedProjects.includes(project.id)) { // projectTree must be duplicate free. A second occurrence of the same project // is always the same object. Therefore a single processing needs to be ensured. diff --git a/packages/project/test/lib/translators/ui5Framework.js b/packages/project/test/lib/translators/ui5Framework.js index 050b808209e..7be4b5c9edc 100644 --- a/packages/project/test/lib/translators/ui5Framework.js +++ b/packages/project/test/lib/translators/ui5Framework.js @@ -708,7 +708,11 @@ test.serial("utils.mergeTrees: Do not abort merge if project has already been pr } ] }, - dependencies: [] + dependencies: [{ + id: "test2", + deduped: true, + dependencies: [] + }] } ] }, @@ -805,6 +809,10 @@ test.serial("utils.mergeTrees: Do not abort merge if project has already been pr }, dependencies: [ { + id: "test2", + deduped: true, + dependencies: [] + }, { metadata: { name: "lib1" }, From 47eb5558717c30eefed5d538a13b2b3d8b793839 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 22 Feb 2021 16:26:12 +0100 Subject: [PATCH 0500/1272] [ui5-project][INTERNAL] Azure: Only check productive npm dependencies Should resolve failures caused by missing peer-deps of devDependencies --- packages/project/azure-pipelines.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 3bcefc00167..0e1845b5149 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -39,7 +39,7 @@ steps: - script: npm ci displayName: Install Dependencies -- script: npm ls +- script: npm ls --prod displayName: Check for missing / extraneous Dependencies - script: npm run test-azure From db12d96c2f8d27255cf3ed0308b17d3ee5ecaaa3 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 28 Feb 2021 03:22:11 +0000 Subject: [PATCH 0501/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 470 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 234 insertions(+), 238 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d7e25bc1594..262d75785bb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -12,26 +12,33 @@ "@babel/highlight": "^7.12.13" } }, + "@babel/compat-data": { + "version": "7.13.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.8.tgz", + "integrity": "sha512-EaI33z19T4qN3xLXsGf48M2cDqa6ei9tPZlfLdb2HC+e/cFtREiRd8hdSqDbwdLB0/+gLwqJmCYASH0z2bUdog==", + "dev": true + }, "@babel/core": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.17.tgz", - "integrity": "sha512-V3CuX1aBywbJvV2yzJScRxeiiw0v2KZZYYE3giywxzFJL13RiyPjaaDwhDnxmgFTTS7FgvM2ijr4QmKNIu0AtQ==", + "version": "7.13.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.8.tgz", + "integrity": "sha512-oYapIySGw1zGhEFRd6lzWNLWFX2s5dA/jm+Pw/+59ZdXtjyIuwlXbrId22Md0rgZVop+aVoqow2riXhBLNyuQg==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.17", - "@babel/helper-module-transforms": "^7.12.17", - "@babel/helpers": "^7.12.17", - "@babel/parser": "^7.12.17", + "@babel/generator": "^7.13.0", + "@babel/helper-compilation-targets": "^7.13.8", + "@babel/helper-module-transforms": "^7.13.0", + "@babel/helpers": "^7.13.0", + "@babel/parser": "^7.13.4", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.17", - "@babel/types": "^7.12.17", + "@babel/traverse": "^7.13.0", + "@babel/types": "^7.13.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", + "gensync": "^1.0.0-beta.2", "json5": "^2.1.2", "lodash": "^4.17.19", - "semver": "^5.4.1", + "semver": "^6.3.0", "source-map": "^0.5.0" }, "dependencies": { @@ -51,9 +58,9 @@ "dev": true }, "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true }, "source-map": { @@ -65,12 +72,12 @@ } }, "@babel/generator": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.17.tgz", - "integrity": "sha512-DSA7ruZrY4WI8VxuS1jWSRezFnghEoYEFrZcw9BizQRmOZiUsiHl59+qEARGPqPikwA/GPTyRCi7isuCK/oyqg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.13.0.tgz", + "integrity": "sha512-zBZfgvBB/ywjx0Rgc2+BwoH/3H+lDtlgD4hBOpEv5LxRnYsm/753iRuLepqnYlynpjC3AdQxtxsoeHJoEEwOAw==", "dev": true, "requires": { - "@babel/types": "^7.12.17", + "@babel/types": "^7.13.0", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -83,6 +90,26 @@ } } }, + "@babel/helper-compilation-targets": { + "version": "7.13.8", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.8.tgz", + "integrity": "sha512-pBljUGC1y3xKLn1nrx2eAhurLMA8OqBtBP/JwG4U8skN7kf8/aqwwxpV1N6T0e7r6+7uNitIa/fUxPFagSXp3A==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.13.8", + "@babel/helper-validator-option": "^7.12.17", + "browserslist": "^4.14.5", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, "@babel/helper-function-name": { "version": "7.12.13", "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", @@ -104,12 +131,12 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.17.tgz", - "integrity": "sha512-Bzv4p3ODgS/qpBE0DiJ9qf5WxSmrQ8gVTe8ClMfwwsY2x/rhykxxy3bXzG7AGTnPB2ij37zGJ/Q/6FruxHxsxg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.0.tgz", + "integrity": "sha512-yvRf8Ivk62JwisqV1rFRMxiSMDGnN6KH1/mDMmIrij4jztpQNRoHqqMG3U6apYbGRPJpgPalhva9Yd06HlUxJQ==", "dev": true, "requires": { - "@babel/types": "^7.12.17" + "@babel/types": "^7.13.0" } }, "@babel/helper-module-imports": { @@ -122,19 +149,19 @@ } }, "@babel/helper-module-transforms": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.17.tgz", - "integrity": "sha512-sFL+p6zOCQMm9vilo06M4VHuTxUAwa6IxgL56Tq1DVtA0ziAGTH1ThmJq7xwPqdQlgAbKX3fb0oZNbtRIyA5KQ==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.0.tgz", + "integrity": "sha512-Ls8/VBwH577+pw7Ku1QkUWIyRRNHpYlts7+qSqBBFCW3I8QteB9DxfcZ5YJpOwH6Ihe/wn8ch7fMGOP1OhEIvw==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-replace-supers": "^7.12.13", + "@babel/helper-replace-supers": "^7.13.0", "@babel/helper-simple-access": "^7.12.13", "@babel/helper-split-export-declaration": "^7.12.13", "@babel/helper-validator-identifier": "^7.12.11", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.17", - "@babel/types": "^7.12.17", + "@babel/traverse": "^7.13.0", + "@babel/types": "^7.13.0", "lodash": "^4.17.19" } }, @@ -148,15 +175,15 @@ } }, "@babel/helper-replace-supers": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.13.tgz", - "integrity": "sha512-pctAOIAMVStI2TMLhozPKbf5yTEXc0OJa0eENheb4w09SrgOWEs+P4nTOZYJQCqs8JlErGLDPDJTiGIp3ygbLg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.0.tgz", + "integrity": "sha512-Segd5me1+Pz+rmN/NFBOplMbZG3SqRJOBlY+mA0SxAv6rjj7zJqr1AVr3SfzUVTLCv7ZLU5FycOM/SBGuLPbZw==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.12.13", + "@babel/helper-member-expression-to-functions": "^7.13.0", "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/traverse": "^7.12.13", - "@babel/types": "^7.12.13" + "@babel/traverse": "^7.13.0", + "@babel/types": "^7.13.0" } }, "@babel/helper-simple-access": { @@ -182,21 +209,27 @@ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" }, - "@babel/helpers": { + "@babel/helper-validator-option": { "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.17.tgz", - "integrity": "sha512-tEpjqSBGt/SFEsFikKds1sLNChKKGGR17flIgQKXH4fG6m9gTgl3gnOC1giHNyaBCSKuTfxaSzHi7UnvqiVKxg==", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz", + "integrity": "sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==", + "dev": true + }, + "@babel/helpers": { + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.0.tgz", + "integrity": "sha512-aan1MeFPxFacZeSz6Ld7YZo5aPuqnKlD7+HZY75xQsueczFccP9A7V05+oe0XpLwHK3oLorPe9eaAUljL7WEaQ==", "dev": true, "requires": { "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.17", - "@babel/types": "^7.12.17" + "@babel/traverse": "^7.13.0", + "@babel/types": "^7.13.0" } }, "@babel/highlight": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", - "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", + "version": "7.13.8", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.8.tgz", + "integrity": "sha512-4vrIhfJyfNf+lCtXC2ck1rKSzDwciqF7IWFhXXrSOUC2O5DrVp+w4c6ed4AllTxhTkUP5x2tYj41VaxdVMMRDw==", "requires": { "@babel/helper-validator-identifier": "^7.12.11", "chalk": "^2.0.0", @@ -255,9 +288,9 @@ } }, "@babel/parser": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.17.tgz", - "integrity": "sha512-r1yKkiUTYMQ8LiEI0UcQx5ETw5dpTLn9wijn9hk6KkTtOK95FndDN10M+8/s6k/Ymlbivw0Av9q4SlgF80PtHg==" + "version": "7.13.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.4.tgz", + "integrity": "sha512-uvoOulWHhI+0+1f9L4BoozY7U5cIkZ9PgJqvb041d6vypgUmtVPG4vmGm4pSggjl8BELzvHyUeJSUyEMY6b+qA==" }, "@babel/template": { "version": "7.12.13", @@ -271,17 +304,17 @@ } }, "@babel/traverse": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.17.tgz", - "integrity": "sha512-LGkTqDqdiwC6Q7fWSwQoas/oyiEYw6Hqjve5KOSykXkmFJFqzvGMb9niaUEag3Rlve492Mkye3gLw9FTv94fdQ==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz", + "integrity": "sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.17", + "@babel/generator": "^7.13.0", "@babel/helper-function-name": "^7.12.13", "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.12.17", - "@babel/types": "^7.12.17", + "@babel/parser": "^7.13.0", + "@babel/types": "^7.13.0", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" @@ -305,9 +338,9 @@ } }, "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.0.tgz", + "integrity": "sha512-hE+HE8rnG1Z6Wzo+MhaKE5lM5eMx71T4EHJgku2E3xIfaULhDcxiiRxUYgwX8qwP1BBSlag+TdGOt6JAidIZTA==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.12.11", @@ -333,9 +366,9 @@ } }, "@eslint/eslintrc": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.3.0.tgz", - "integrity": "sha512-1JTKgrOKAHVivSvOYw+sJOunkBjUOvjqWk1DPja7ZFhIS2mX/4EgTT8M7eTK9jrKhL/FvXXEbQwIs3pg1xp3dg==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz", + "integrity": "sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -345,7 +378,6 @@ "ignore": "^4.0.6", "import-fresh": "^3.2.1", "js-yaml": "^3.13.1", - "lodash": "^4.17.20", "minimatch": "^3.0.4", "strip-json-comments": "^3.1.1" }, @@ -639,48 +671,48 @@ } }, "@vue/compiler-core": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.5.tgz", - "integrity": "sha512-iFXwk2gmU/GGwN4hpBwDWWMLvpkIejf/AybcFtlQ5V1ur+5jwfBaV0Y1RXoR6ePfBPJixtKZ3PmN+M+HgMAtfQ==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.6.tgz", + "integrity": "sha512-O7QzQ39DskOoPpEDWRvKwDX7Py9UNT7SvLHvBdIfckGA3OsAEBdiAtuYQNcVmUDeBajm+08v5wyvHWBbWgkilQ==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.0.5", + "@vue/shared": "3.0.6", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.5.tgz", - "integrity": "sha512-HSOSe2XSPuCkp20h4+HXSiPH9qkhz6YbW9z9ZtL5vef2T2PMugH7/osIFVSrRZP/Ul5twFZ7MIRlp8tPX6e4/g==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.6.tgz", + "integrity": "sha512-q1wfHzYwvDRAhBlx+Qa+n3Bu5nHr1qL/j0UbpNlbQDwIlt9zpvmXUrUCL+i55Bh5lLKvSe+mNo0qlwNEApm+jA==", "dev": true, "requires": { - "@vue/compiler-core": "3.0.5", - "@vue/shared": "3.0.5" + "@vue/compiler-core": "3.0.6", + "@vue/shared": "3.0.6" } }, "@vue/compiler-sfc": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.5.tgz", - "integrity": "sha512-uOAC4X0Gx3SQ9YvDC7YMpbDvoCmPvP0afVhJoxRotDdJ+r8VO3q4hFf/2f7U62k4Vkdftp6DVni8QixrfYzs+w==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.6.tgz", + "integrity": "sha512-g1tkswnhtiJpj4ELQ3SzeGxtOd0t8E5GkT+n2VlElEnTI1BzueSvr41D5QthnUS+TNWZd52ZnPtdaNz+Lfum1w==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/compiler-core": "3.0.5", - "@vue/compiler-dom": "3.0.5", - "@vue/compiler-ssr": "3.0.5", - "@vue/shared": "3.0.5", + "@vue/compiler-core": "3.0.6", + "@vue/compiler-dom": "3.0.6", + "@vue/compiler-ssr": "3.0.6", + "@vue/shared": "3.0.6", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", "lru-cache": "^5.1.1", "magic-string": "^0.25.7", "merge-source-map": "^1.1.0", - "postcss": "^7.0.32", - "postcss-modules": "^3.2.2", + "postcss": "^8.1.10", + "postcss-modules": "^4.0.0", "postcss-selector-parser": "^6.0.4", "source-map": "^0.6.1" }, @@ -703,19 +735,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.5.tgz", - "integrity": "sha512-Wm//Kuxa1DpgjE4P9W0coZr8wklOfJ35Jtq61CbU+t601CpPTK4+FL2QDBItaG7aoUUDCWL5nnxMkuaOgzTBKg==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.6.tgz", + "integrity": "sha512-Y4amPwRevUiiNQDho0cq1Ith9q6UU5N6CD6YiXkHIboFPeXEiGvH3ULJWjFzlGqn1eUV1AReNJpFJrhjtQNc7g==", "dev": true, "requires": { - "@vue/compiler-dom": "3.0.5", - "@vue/shared": "3.0.5" + "@vue/compiler-dom": "3.0.6", + "@vue/shared": "3.0.6" } }, "@vue/shared": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.0.5.tgz", - "integrity": "sha512-gYsNoGkWejBxNO6SNRjOh/xKeZ0H0V+TFzaPzODfBjkAIb0aQgBuixC1brandC/CDJy1wYPwSoYrXpvul7m6yw==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.0.6.tgz", + "integrity": "sha512-c37C60HpelUZIx+SNZVEINSxkFzQYhIXFg5AynnIA4QDBmY4iSPoACfGSwSUTCTKImukPeCgY2oqRJVP3R1Mnw==", "dev": true }, "JSONStream": { @@ -1186,9 +1218,9 @@ "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -1230,6 +1262,19 @@ "fill-range": "^7.0.1" } }, + "browserslist": { + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", + "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001181", + "colorette": "^1.2.1", + "electron-to-chromium": "^1.3.649", + "escalade": "^3.1.1", + "node-releases": "^1.1.70" + } + }, "buffer": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", @@ -1400,6 +1445,12 @@ } } }, + "caniuse-lite": { + "version": "1.0.30001192", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001192.tgz", + "integrity": "sha512-63OrUnwJj5T1rUmoyqYTdRWBqFFxZFlyZnRRjDR8NSUQFB6A+j/uBORU/SyJ5WzDLg4SPiZH40hQCBNdZ/jmAw==", + "dev": true + }, "catharsis": { "version": "0.8.11", "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.11.tgz", @@ -1667,9 +1718,9 @@ "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -1712,9 +1763,9 @@ "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -1774,6 +1825,12 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "colorette": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", + "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==", + "dev": true + }, "command-exists": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", @@ -2471,6 +2528,12 @@ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, + "electron-to-chromium": { + "version": "1.3.675", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.675.tgz", + "integrity": "sha512-GEQw+6dNWjueXGkGfjgm7dAMtXfEqrfDG3uWcZdeaD4cZ3dKYdPRQVruVXQRXtPLtOr5GNVVlNLRMChOZ611pQ==", + "dev": true + }, "emittery": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", @@ -2713,13 +2776,13 @@ } }, "eslint": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.20.0.tgz", - "integrity": "sha512-qGi0CTcOGP2OtCQBgWZlQjcTuP0XkIpYFj25XtRTQSHC+umNnp7UMshr2G8SLsRFYDdAPFeHOsiteadmMH02Yw==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.21.0.tgz", + "integrity": "sha512-W2aJbXpMNofUp0ztQaF40fveSsJBjlSCSWpy//gzfTvwC+USs/nceBrKmlJOiM8r1bLwP2EuYkCqArn/6QTIgg==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.3.0", + "@eslint/eslintrc": "^0.4.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2732,7 +2795,7 @@ "espree": "^7.3.1", "esquery": "^1.4.0", "esutils": "^2.0.2", - "file-entry-cache": "^6.0.0", + "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", "glob-parent": "^5.0.0", "globals": "^12.1.0", @@ -3131,9 +3194,9 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "fastq": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.10.1.tgz", - "integrity": "sha512-AWuv6Ery3pM+dY7LYS8YIaCiQvUaos9OB1RyNgaOWnaX+Tik7Onvcsf8x8c+YtDeT0maYLniBip2hox5KtEXXA==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", + "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", "requires": { "reusify": "^1.0.4" } @@ -3248,9 +3311,9 @@ } }, "follow-redirects": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.2.tgz", - "integrity": "sha512-6mPTgLxYm3r6Bkkg0vNM0HTjfGrOEtsfbhagQvbxDEsEkpNhw582upBaoRZylzen6krEmxXJgt9Ju6HiI4O7BA==" + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.3.tgz", + "integrity": "sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA==" }, "foreground-child": { "version": "2.0.0", @@ -3696,13 +3759,10 @@ "dev": true }, "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "requires": { - "postcss": "^7.0.14" - } + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true }, "ieee754": { "version": "1.2.1", @@ -4944,6 +5004,12 @@ "minimatch": "^3.0.4" } }, + "nanoid": { + "version": "3.1.20", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", + "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", + "dev": true + }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -5009,6 +5075,12 @@ "process-on-spawn": "^1.0.0" } }, + "node-releases": { + "version": "1.1.71", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz", + "integrity": "sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==", + "dev": true + }, "nopt": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", @@ -5272,9 +5344,9 @@ "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -5814,141 +5886,65 @@ } }, "postcss": { - "version": "7.0.35", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", - "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.6.tgz", + "integrity": "sha512-xpB8qYxgPuly166AGlpRjUdEYtmOWx2iCwGmrv4vqZL9YPVviDVPZPRXxnXr6xPZOdxQ9lp3ZBFCRgWJ7LE3Sg==", "dev": true, "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "colorette": "^1.2.1", + "nanoid": "^3.1.20", + "source-map": "^0.6.1" } }, "postcss-modules": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-3.2.2.tgz", - "integrity": "sha512-JQ8IAqHELxC0N6tyCg2UF40pACY5oiL6UpiqqcIFRWqgDYO8B0jnxzoQ0EOpPrWXvcpu6BSbQU/3vSiq7w8Nhw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.0.0.tgz", + "integrity": "sha512-ghS/ovDzDqARm4Zj6L2ntadjyQMoyJmi0JkLlYtH2QFLrvNlxH5OAVRPWPeKilB0pY7SbuhO173KOWkPAxRJcw==", "dev": true, "requires": { "generic-names": "^2.0.1", "icss-replace-symbols": "^1.1.0", "lodash.camelcase": "^4.3.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", "string-hash": "^1.1.1" } }, "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "requires": { - "postcss": "^7.0.5" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "dev": true }, "postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", "dev": true, "requires": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", + "icss-utils": "^5.0.0", "postcss-selector-parser": "^6.0.2", "postcss-value-parser": "^4.1.0" } }, "postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", "dev": true, "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" + "postcss-selector-parser": "^6.0.4" } }, "postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", "dev": true, "requires": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" + "icss-utils": "^5.0.0" } }, "postcss-selector-parser": { @@ -6614,9 +6610,9 @@ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, "set-cookie-parser": { - "version": "2.4.7", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.4.7.tgz", - "integrity": "sha512-VaSdYN1DlYuKOzBKqhYJnwaPeirZdNNUNmYdnp9/6Umr9s8amidctYitrX2Gk8wCqiBuiG5mpOYCiVhG5o4iMQ==" + "version": "2.4.8", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.4.8.tgz", + "integrity": "sha512-edRH8mBKEWNVIVMKejNnuJxleqYE/ZSdcT8/Nem9/mmosx12pctd80s2Oy00KNZzrogMZS5mauK2/ymL1bvlvg==" }, "setprototypeof": { "version": "1.1.1", @@ -7071,9 +7067,9 @@ } }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -7612,9 +7608,9 @@ "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -7662,9 +7658,9 @@ "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -7774,9 +7770,9 @@ "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", + "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -7802,9 +7798,9 @@ } }, "yargs-parser": { - "version": "20.2.5", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.5.tgz", - "integrity": "sha512-jYRGS3zWy20NtDtK2kBgo/TlAoy5YUuhD9/LZ7z7W4j1Fdw2cqD0xEEclf8fxc8xjD6X5Qr+qQQwCEsP8iRiYg==", + "version": "20.2.6", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.6.tgz", + "integrity": "sha512-AP1+fQIWSM/sMiET8fyayjx/J+JmTPt2Mr0FkrgqB4todtfa53sOsrSAcIrJRD5XS20bKUwaDIuMkWKCEiQLKA==", "dev": true }, "yazl": { diff --git a/packages/project/package.json b/packages/project/package.json index 6eff8c21645..f836a5441cd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.0", "docdash": "^1.2.0", - "eslint": "^7.20.0", + "eslint": "^7.21.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^31.6.1", "istanbul-lib-coverage": "^3.0.0", From 32aa5b9c444863b32e5b27b1680907ca8d2a39bd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Mar 2021 11:10:26 +0100 Subject: [PATCH 0502/1272] [ui5-project][INTERNAL] Bump actions/setup-node from v2.1.4 to v2.1.5 (#399) Bumps [actions/setup-node](https://github.com/actions/setup-node) from v2.1.4 to v2.1.5. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.1.4...46071b5c7a2e0c34e49c3cb8a0e792e86e18d5ea) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 590fcf0b427..2bcc0ec0cbd 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -15,7 +15,7 @@ jobs: - uses: actions/checkout@v2 - name: Use Node.js LTS 14.x - uses: actions/setup-node@v2.1.4 + uses: actions/setup-node@v2.1.5 with: node-version: 14.x From e2e7a767cc8094d6b90fb467988ab928a4330a52 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Mar 2021 17:44:31 +0100 Subject: [PATCH 0503/1272] [ui5-project][DEPENDENCY] Bump js-yaml from 3.14.1 to 4.0.0 (#380) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Osswald --- packages/project/lib/projectPreprocessor.js | 6 +- packages/project/lib/translators/static.js | 2 +- packages/project/package-lock.json | 90 +++++++++++++++++++-- packages/project/package.json | 2 +- 4 files changed, 88 insertions(+), 12 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 451bc7e113b..03fd3d5d1a1 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -412,12 +412,8 @@ class ProjectPreprocessor { let configs; try { - // Using loadAll with DEFAULT_SAFE_SCHEMA instead of safeLoadAll to pass "filename". - // safeLoadAll doesn't handle its parameters properly. - // See https://github.com/nodeca/js-yaml/issues/456 and https://github.com/nodeca/js-yaml/pull/381 configs = jsyaml.loadAll(configFile, undefined, { - filename: configPath, - schema: jsyaml.DEFAULT_SAFE_SCHEMA + filename: configPath }); } catch (err) { if (err.name === "YAMLException") { diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index a3c33a60fe2..4db8a20558d 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -2,7 +2,7 @@ const path = require("path"); const fs = require("graceful-fs"); const {promisify} = require("util"); const readFile = promisify(fs.readFile); -const parseYaml = require("js-yaml").safeLoad; +const parseYaml = require("js-yaml").load; function resolveProjectPaths(project) { project.path = path.resolve(project.path); diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 262d75785bb..bf71d15a971 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -406,6 +406,16 @@ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -449,6 +459,16 @@ "path-exists": "^4.0.0" } }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -2327,6 +2347,16 @@ "ms": "2.1.2" } }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -2859,6 +2889,16 @@ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -4207,12 +4247,18 @@ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", + "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "argparse": "^2.0.1" + }, + "dependencies": { + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + } } }, "js2xmlparser": { @@ -6994,6 +7040,16 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -7164,6 +7220,18 @@ "events-to-array": "^1.0.1", "js-yaml": "^3.2.7", "readable-stream": "^2" + }, + "dependencies": { + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + } } }, "tap-xunit": { @@ -7190,6 +7258,18 @@ "inherits": "~2.0.1", "js-yaml": "^3.2.7", "readable-stream": "^2" + }, + "dependencies": { + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + } } }, "xmlbuilder": { diff --git a/packages/project/package.json b/packages/project/package.json index f836a5441cd..01ebe745103 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -109,7 +109,7 @@ "chalk": "^4.1.0", "escape-string-regexp": "^4.0.0", "graceful-fs": "^4.2.6", - "js-yaml": "^3.14.1", + "js-yaml": "^4.0.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", "mkdirp": "^1.0.4", From cbc26dab686e38166c575f1aafa36cdfe8b0e6e2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 4 Mar 2021 18:44:32 +0000 Subject: [PATCH 0504/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.8.0 to 2.8.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.8.1/CHANGELOG.md --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bf71d15a971..79c162b08a0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -610,9 +610,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.8.0.tgz", - "integrity": "sha512-/hJDtJjZ5yS7QdB7ZXVCokEg2ddSlw9wZeVI4pFBu+w7+5Zhb2wu955yr2HJm9OtOaGqlGbndbNgX86MniFgzA==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.8.1.tgz", + "integrity": "sha512-Y8p/V+mDSvkGymzX6+BITyv5qc+YUBTYqUca6uc7KnlYi1w5SueZwkarIXxuM5icjqzTyVvqLCKCwR965OBgYA==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -623,7 +623,7 @@ "esprima": "^4.0.1", "estraverse": "5.1.0", "globby": "^11.0.2", - "graceful-fs": "^4.2.5", + "graceful-fs": "^4.2.6", "jsdoc": "^3.6.6", "less-openui5": "^0.10.0", "make-dir": "^3.1.0", @@ -632,7 +632,7 @@ "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.4", - "terser": "^5.5.1", + "terser": "^5.6.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" } diff --git a/packages/project/package.json b/packages/project/package.json index 01ebe745103..c45517746e2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.8.0", + "@ui5/builder": "^2.8.1", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.8", "ajv": "^6.12.6", From 4ec2c191495810b0c3648306bd03356e58a087c0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 4 Mar 2021 18:48:10 +0000 Subject: [PATCH 0505/1272] [ui5-project]Release 2.3.1 --- packages/project/CHANGELOG.md | 12 +++++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 74d3f214a57..8f313fb5fc6 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.3.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.3.1...HEAD). + + +## [v2.3.1] - 2021-03-04 +### Bug Fixes +- **ui5Framework:** Don't access metadata of deduped projects [`0255f8f`](https://github.com/SAP/ui5-project/commit/0255f8f628281ecb3cbbdb50192d2d4721bccea2) + +### Dependency Updates +- Bump js-yaml from 3.14.1 to 4.0.0 ([#380](https://github.com/SAP/ui5-project/issues/380)) [`a862186`](https://github.com/SAP/ui5-project/commit/a86218657703a5b607ebd09f8f71dd7ea810c6be) + ## [v2.3.0] - 2021-02-09 @@ -235,6 +244,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.3.1]: https://github.com/SAP/ui5-project/compare/v2.3.0...v2.3.1 [v2.3.0]: https://github.com/SAP/ui5-project/compare/v2.2.6...v2.3.0 [v2.2.6]: https://github.com/SAP/ui5-project/compare/v2.2.5...v2.2.6 [v2.2.5]: https://github.com/SAP/ui5-project/compare/v2.2.4...v2.2.5 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 79c162b08a0..416045a31cf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.3.0", + "version": "2.3.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index c45517746e2..340bd58424c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.3.0", + "version": "2.3.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From b6adbe5ecdb9d4381147ce725e08ac3d05a7bfd1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 28 Feb 2021 03:24:13 +0000 Subject: [PATCH 0506/1272] [ui5-project]Bump eslint-plugin-jsdoc from 31.6.1 to 32.2.0 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 31.6.1 to 32.2.0. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v31.6.1...v32.2.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 416045a31cf..206741c79a4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2968,9 +2968,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "31.6.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-31.6.1.tgz", - "integrity": "sha512-5hCV3u+1VSEUMyfdTl+dpWsioD7tqQr2ILQw+KbXrF42AVxCLO8gnNLR6zDCDjqGGpt79V1sgY0RRchCWuCigg==", + "version": "32.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-32.2.0.tgz", + "integrity": "sha512-ikeVeF3JVmzjcmGd04OZK0rXjgiw46TWtNX+OhyF2jQlw3w1CAU1vyAyLv8PZcIjp7WxP4N20Vg1CI9bp/52dw==", "dev": true, "requires": { "comment-parser": "1.1.2", diff --git a/packages/project/package.json b/packages/project/package.json index 340bd58424c..39568785119 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.21.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^31.6.1", + "eslint-plugin-jsdoc": "^32.2.0", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 3d0886c7382d514729d12f3b832bc9bc1885a517 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 7 Mar 2021 03:20:29 +0000 Subject: [PATCH 0507/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 168 ++++++++++++++--------------- 1 file changed, 83 insertions(+), 85 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 206741c79a4..2aa5b3b7861 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -72,9 +72,9 @@ } }, "@babel/generator": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.13.0.tgz", - "integrity": "sha512-zBZfgvBB/ywjx0Rgc2+BwoH/3H+lDtlgD4hBOpEv5LxRnYsm/753iRuLepqnYlynpjC3AdQxtxsoeHJoEEwOAw==", + "version": "7.13.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.13.9.tgz", + "integrity": "sha512-mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw==", "dev": true, "requires": { "@babel/types": "^7.13.0", @@ -288,9 +288,9 @@ } }, "@babel/parser": { - "version": "7.13.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.4.tgz", - "integrity": "sha512-uvoOulWHhI+0+1f9L4BoozY7U5cIkZ9PgJqvb041d6vypgUmtVPG4vmGm4pSggjl8BELzvHyUeJSUyEMY6b+qA==" + "version": "7.13.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.9.tgz", + "integrity": "sha512-nEUfRiARCcaVo3ny3ZQjURjHQZUo/JkEw7rLlSZy/psWGnvwXFtPcr6jb7Yb41DVW5LTe6KRq9LGleRNsg1Frw==" }, "@babel/template": { "version": "7.12.13", @@ -691,40 +691,40 @@ } }, "@vue/compiler-core": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.6.tgz", - "integrity": "sha512-O7QzQ39DskOoPpEDWRvKwDX7Py9UNT7SvLHvBdIfckGA3OsAEBdiAtuYQNcVmUDeBajm+08v5wyvHWBbWgkilQ==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.7.tgz", + "integrity": "sha512-JFohgBXoyUc3mdeI2WxlhjQZ5fakfemJkZHX8Gu/nFbEg3+lKVUZmNKWmmnp9aOzJQZKoj77LjmFxiP+P+7lMQ==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.0.6", + "@vue/shared": "3.0.7", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.6.tgz", - "integrity": "sha512-q1wfHzYwvDRAhBlx+Qa+n3Bu5nHr1qL/j0UbpNlbQDwIlt9zpvmXUrUCL+i55Bh5lLKvSe+mNo0qlwNEApm+jA==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.7.tgz", + "integrity": "sha512-VnIH9EbWQm/Tkcp+8dCaNVsVvhm/vxCrIKWRkXY9215hTqOqQOvejT8IMjd2kc++nIsYMsdQk6H9qqBvoLe/Cw==", "dev": true, "requires": { - "@vue/compiler-core": "3.0.6", - "@vue/shared": "3.0.6" + "@vue/compiler-core": "3.0.7", + "@vue/shared": "3.0.7" } }, "@vue/compiler-sfc": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.6.tgz", - "integrity": "sha512-g1tkswnhtiJpj4ELQ3SzeGxtOd0t8E5GkT+n2VlElEnTI1BzueSvr41D5QthnUS+TNWZd52ZnPtdaNz+Lfum1w==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.7.tgz", + "integrity": "sha512-37/QILpGE+J3V+bP9Slg9e6xGqfk+MmS2Yj8ChR4fS0/qWUU/YoYHE0GPIzjmBdH0JVOOmJqunxowIXmqNiHng==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/compiler-core": "3.0.6", - "@vue/compiler-dom": "3.0.6", - "@vue/compiler-ssr": "3.0.6", - "@vue/shared": "3.0.6", + "@vue/compiler-core": "3.0.7", + "@vue/compiler-dom": "3.0.7", + "@vue/compiler-ssr": "3.0.7", + "@vue/shared": "3.0.7", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -755,19 +755,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.6.tgz", - "integrity": "sha512-Y4amPwRevUiiNQDho0cq1Ith9q6UU5N6CD6YiXkHIboFPeXEiGvH3ULJWjFzlGqn1eUV1AReNJpFJrhjtQNc7g==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.7.tgz", + "integrity": "sha512-nHRbHeSpfXwjypettjrA16TjgfDcPEwq3m/zHnGyLC1QqdLtklXmpSM43/CPwwTCRa/qdt0pldJf22MiCEuTSQ==", "dev": true, "requires": { - "@vue/compiler-dom": "3.0.6", - "@vue/shared": "3.0.6" + "@vue/compiler-dom": "3.0.7", + "@vue/shared": "3.0.7" } }, "@vue/shared": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.0.6.tgz", - "integrity": "sha512-c37C60HpelUZIx+SNZVEINSxkFzQYhIXFg5AynnIA4QDBmY4iSPoACfGSwSUTCTKImukPeCgY2oqRJVP3R1Mnw==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.0.7.tgz", + "integrity": "sha512-dn5FyfSc4ky424jH4FntiHno7Ss5yLkqKNmM/NXwANRnlkmqu74pnGetexDFVG5phMk9/FhwovUZCWGxsotVKg==", "dev": true }, "JSONStream": { @@ -1238,9 +1238,9 @@ "dev": true }, "string-width": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", - "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -1466,9 +1466,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001192", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001192.tgz", - "integrity": "sha512-63OrUnwJj5T1rUmoyqYTdRWBqFFxZFlyZnRRjDR8NSUQFB6A+j/uBORU/SyJ5WzDLg4SPiZH40hQCBNdZ/jmAw==", + "version": "1.0.30001196", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001196.tgz", + "integrity": "sha512-CPvObjD3ovWrNBaXlAIGWmg2gQQuJ5YhuciUOjPRox6hIQttu8O+b51dx6VIpIY9ESd2d0Vac1RKpICdG4rGUg==", "dev": true }, "catharsis": { @@ -1738,9 +1738,9 @@ "dev": true }, "string-width": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", - "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -1783,9 +1783,9 @@ "dev": true }, "string-width": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", - "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -1925,9 +1925,9 @@ } }, "concordance": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.2.tgz", - "integrity": "sha512-hC63FKdGM9tBcd4VQIa+LQjmrgorrnxESb8B3J21Qe/FzL0blBv0pb8iNyymt+bmsvGSUqO0uhPi2ZSLgLtLdg==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.3.tgz", + "integrity": "sha512-niSG8GwnplIe5fXZCmIrbAaF41Eqt2A1PVG269flPzndjccwKbyIhyZYsbTBW+0IF5lWf4RWn9WstSxyKq8hIg==", "dev": true, "requires": { "date-time": "^3.1.0", @@ -2559,9 +2559,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.675", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.675.tgz", - "integrity": "sha512-GEQw+6dNWjueXGkGfjgm7dAMtXfEqrfDG3uWcZdeaD4cZ3dKYdPRQVruVXQRXtPLtOr5GNVVlNLRMChOZ611pQ==", + "version": "1.3.682", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.682.tgz", + "integrity": "sha512-zok2y37qR00U14uM6qBz/3iIjWHom2eRfC2S1StA0RslP7x34jX+j4mxv80t8OEOHLJPVG54ZPeaFxEI7gPrwg==", "dev": true }, "emittery": { @@ -3512,9 +3512,9 @@ } }, "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "requires": { "is-glob": "^4.0.1" } @@ -5390,9 +5390,9 @@ "dev": true }, "string-width": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", - "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -5932,12 +5932,12 @@ } }, "postcss": { - "version": "8.2.6", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.6.tgz", - "integrity": "sha512-xpB8qYxgPuly166AGlpRjUdEYtmOWx2iCwGmrv4vqZL9YPVviDVPZPRXxnXr6xPZOdxQ9lp3ZBFCRgWJ7LE3Sg==", + "version": "8.2.7", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.7.tgz", + "integrity": "sha512-DsVLH3xJzut+VT+rYr0mtvOtpTjSyqDwPf5EZWXcb0uAKfitGpTY9Ec+afi2+TgdN8rWS9Cs88UDYehKo/RvOw==", "dev": true, "requires": { - "colorette": "^1.2.1", + "colorette": "^1.2.2", "nanoid": "^3.1.20", "source-map": "^0.6.1" } @@ -7123,9 +7123,9 @@ } }, "string-width": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", - "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -7248,6 +7248,16 @@ "xtend": "~4.0.0" }, "dependencies": { + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "tap-parser": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", @@ -7258,18 +7268,6 @@ "inherits": "~2.0.1", "js-yaml": "^3.2.7", "readable-stream": "^2" - }, - "dependencies": { - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } } }, "xmlbuilder": { @@ -7594,9 +7592,9 @@ "dev": true }, "v8-compile-cache": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", - "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, "validate-npm-package-license": { @@ -7688,9 +7686,9 @@ "dev": true }, "string-width": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", - "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -7738,9 +7736,9 @@ "dev": true }, "string-width": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", - "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", @@ -7850,9 +7848,9 @@ "dev": true }, "string-width": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.1.tgz", - "integrity": "sha512-LL0OLyN6AnfV9xqGQpDBwedT2Rt63737LxvsRxbcwpa2aIeynBApG2Sm//F3TaLHIR1aJBN52DWklc06b94o5Q==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "dev": true, "requires": { "emoji-regex": "^8.0.0", From a78a90c8370474f422998b2190cf96cc00b3bbbf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 11 Mar 2021 09:43:23 +0000 Subject: [PATCH 0508/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.8.1 to 2.8.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.8.2/CHANGELOG.md --- packages/project/package-lock.json | 26 +++++++++++++++++++------- packages/project/package.json | 2 +- 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2aa5b3b7861..aafe50b6408 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -610,9 +610,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.8.1.tgz", - "integrity": "sha512-Y8p/V+mDSvkGymzX6+BITyv5qc+YUBTYqUca6uc7KnlYi1w5SueZwkarIXxuM5icjqzTyVvqLCKCwR965OBgYA==", + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.8.2.tgz", + "integrity": "sha512-rIYAeS7w0YllmWTAB9x+C6lVCzGsaPrJUT4Q1sly5gShZI+rTd61K12m62DLuBwAtnEkJqQ6aOYR5PRPFjgnDw==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -625,7 +625,7 @@ "globby": "^11.0.2", "graceful-fs": "^4.2.6", "jsdoc": "^3.6.6", - "less-openui5": "^0.10.0", + "less-openui5": "^0.11.0", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", @@ -635,6 +635,18 @@ "terser": "^5.6.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "less-openui5": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.0.tgz", + "integrity": "sha512-mbitxLR8yOQ85UbDJ8uABDwJR8DBw9huu2V+3vdCB/bAtUFHsNYwyz9laZ55K0IYIWY/ZQJwwVFwQtUNP/ij2w==", + "requires": { + "clone": "^2.1.0", + "css": "^3.0.0", + "mime": "^1.6.0" + } + } } }, "@ui5/fs": { @@ -3188,9 +3200,9 @@ }, "dependencies": { "type": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.3.0.tgz", - "integrity": "sha512-rgPIqOdfK/4J9FhiVrZ3cveAjRRo5rsQBAIhnylX874y1DX/kEKSVdLsnuHB6l1KTjHyU01VjiMBHgU2adejyg==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.5.0.tgz", + "integrity": "sha512-180WMDQaIMm3+7hGXWf12GtdniDEy7nYcyFMKJn/eZz/6tSLXrUN9V0wKSbMjej0I1WHWbpREDEKHtqPQa9NNw==" } } }, diff --git a/packages/project/package.json b/packages/project/package.json index 39568785119..a9621b31fa8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.8.1", + "@ui5/builder": "^2.8.2", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.8", "ajv": "^6.12.6", From 46ddc61091a74aceb0e9fcd16cbd4bdb3a451294 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 11 Mar 2021 09:49:52 +0000 Subject: [PATCH 0509/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.8 to 2.2.9 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.9/CHANGELOG.md --- packages/project/package-lock.json | 30 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index aafe50b6408..43eec565263 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -674,25 +674,25 @@ } }, "@ui5/server": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.8.tgz", - "integrity": "sha512-K0z0IDpINZtcKrbaAD+SOLh4n2i7Eath+5qLDb+e9ajch4SherzhVvhfUHW+lxkEERopDQM2U9o85MCKQ55Z8A==", + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.9.tgz", + "integrity": "sha512-u5mnlqPuo7DRuCoy5BruLr5fz8UiPgsCfxEcxIcH7+K20jRPaBWiSImrRb3aCxRgF561zDWuhZndDTkluJWKkg==", "requires": { - "@ui5/builder": "^2.8.0", + "@ui5/builder": "^2.8.2", "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", "body-parser": "^1.19.0", "compression": "^1.7.4", - "connect-openui5": "^0.10.1", + "connect-openui5": "^0.10.2", "cors": "^2.8.5", "devcert-sanscache": "^0.4.8", "escape-html": "^1.0.3", "etag": "^1.8.1", "express": "^4.17.1", "fresh": "^0.5.2", - "graceful-fs": "^4.2.5", + "graceful-fs": "^4.2.6", "make-dir": "^3.1.0", - "mime-types": "^2.1.28", + "mime-types": "^2.1.29", "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", @@ -1977,17 +1977,17 @@ } }, "connect-openui5": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.10.1.tgz", - "integrity": "sha512-g78ucDcgYYTI2oToiVWUSqNvIj24JebbwusLBtNb6t1rVofr9OnSMbWQKebePb383TC1+TFUBJkjyn28YK/zTQ==", + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.10.2.tgz", + "integrity": "sha512-41c5WbJIMvQlexQYG7++bmXePPQ+EoFKtkGRWPTXFo1BmYIQxp5JE84tTbonhOKfyRut/LgRVGp+sv/UjZqkew==", "requires": { "async": "^3.2.0", "cookie": "^0.4.1", "extend": "^3.0.0", "glob": "^7.1.6", "http-proxy": "^1.18.1", - "less-openui5": "^0.10.0", - "set-cookie-parser": "^2.4.7" + "less-openui5": "^0.11.0", + "set-cookie-parser": "^2.4.8" } }, "console-control-strings": { @@ -4401,9 +4401,9 @@ } }, "less-openui5": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.10.0.tgz", - "integrity": "sha512-cCIkMgyg797U0tl00/eathD5MvnQqo/aUIDn7y9wL2L5mMWhZbi0RFOGmzvVyVUOUAUCkjWTLu3pbV7Rd7IYSw==", + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.0.tgz", + "integrity": "sha512-mbitxLR8yOQ85UbDJ8uABDwJR8DBw9huu2V+3vdCB/bAtUFHsNYwyz9laZ55K0IYIWY/ZQJwwVFwQtUNP/ij2w==", "requires": { "clone": "^2.1.0", "css": "^3.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index a9621b31fa8..4dffaa394ed 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^2.8.2", "@ui5/logger": "^2.0.1", - "@ui5/server": "^2.2.8", + "@ui5/server": "^2.2.9", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.0", From 7816935e6e4efdaa9f755f46c17f3e38acc66074 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 14 Mar 2021 03:21:47 +0000 Subject: [PATCH 0510/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 140 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 65 insertions(+), 77 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 43eec565263..0d3d00f8a65 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -19,17 +19,17 @@ "dev": true }, "@babel/core": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.8.tgz", - "integrity": "sha512-oYapIySGw1zGhEFRd6lzWNLWFX2s5dA/jm+Pw/+59ZdXtjyIuwlXbrId22Md0rgZVop+aVoqow2riXhBLNyuQg==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.10.tgz", + "integrity": "sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.13.0", - "@babel/helper-compilation-targets": "^7.13.8", + "@babel/generator": "^7.13.9", + "@babel/helper-compilation-targets": "^7.13.10", "@babel/helper-module-transforms": "^7.13.0", - "@babel/helpers": "^7.13.0", - "@babel/parser": "^7.13.4", + "@babel/helpers": "^7.13.10", + "@babel/parser": "^7.13.10", "@babel/template": "^7.12.13", "@babel/traverse": "^7.13.0", "@babel/types": "^7.13.0", @@ -91,9 +91,9 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.8.tgz", - "integrity": "sha512-pBljUGC1y3xKLn1nrx2eAhurLMA8OqBtBP/JwG4U8skN7kf8/aqwwxpV1N6T0e7r6+7uNitIa/fUxPFagSXp3A==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.10.tgz", + "integrity": "sha512-/Xju7Qg1GQO4mHZ/Kcs6Au7gfafgZnwm+a7sy/ow/tV1sHeraRUHbjdat8/UvDor4Tez+siGKDk6zIKtCPKVJA==", "dev": true, "requires": { "@babel/compat-data": "^7.13.8", @@ -216,9 +216,9 @@ "dev": true }, "@babel/helpers": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.0.tgz", - "integrity": "sha512-aan1MeFPxFacZeSz6Ld7YZo5aPuqnKlD7+HZY75xQsueczFccP9A7V05+oe0XpLwHK3oLorPe9eaAUljL7WEaQ==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.10.tgz", + "integrity": "sha512-4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ==", "dev": true, "requires": { "@babel/template": "^7.12.13", @@ -227,9 +227,9 @@ } }, "@babel/highlight": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.8.tgz", - "integrity": "sha512-4vrIhfJyfNf+lCtXC2ck1rKSzDwciqF7IWFhXXrSOUC2O5DrVp+w4c6ed4AllTxhTkUP5x2tYj41VaxdVMMRDw==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz", + "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==", "requires": { "@babel/helper-validator-identifier": "^7.12.11", "chalk": "^2.0.0", @@ -288,9 +288,9 @@ } }, "@babel/parser": { - "version": "7.13.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.9.tgz", - "integrity": "sha512-nEUfRiARCcaVo3ny3ZQjURjHQZUo/JkEw7rLlSZy/psWGnvwXFtPcr6jb7Yb41DVW5LTe6KRq9LGleRNsg1Frw==" + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.10.tgz", + "integrity": "sha512-0s7Mlrw9uTWkYua7xWr99Wpk2bnGa0ANleKfksYAES8LpWH4gW1OUr42vqKNf0us5UQNfru2wPqMqRITzq/SIQ==" }, "@babel/template": { "version": "7.12.13", @@ -635,18 +635,6 @@ "terser": "^5.6.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "less-openui5": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.0.tgz", - "integrity": "sha512-mbitxLR8yOQ85UbDJ8uABDwJR8DBw9huu2V+3vdCB/bAtUFHsNYwyz9laZ55K0IYIWY/ZQJwwVFwQtUNP/ij2w==", - "requires": { - "clone": "^2.1.0", - "css": "^3.0.0", - "mime": "^1.6.0" - } - } } }, "@ui5/fs": { @@ -807,9 +795,9 @@ } }, "acorn": { - "version": "8.0.5", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.5.tgz", - "integrity": "sha512-v+DieK/HJkJOpFBETDJioequtc3PfxsWMaxIdIwujtF7FEV/MAyDQLlm6/zPvr7Mix07mLh6ccVwIsloceodlg==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.1.0.tgz", + "integrity": "sha512-LWCF/Wn0nfHOmJ9rzQApGnxnvgfROzGilS8936rqN/lfcYkY9MYZzdMqN+2NJ4SlTc+m5HiSa+kNfDtI64dwUA==", "dev": true }, "acorn-jsx": { @@ -1478,9 +1466,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001196", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001196.tgz", - "integrity": "sha512-CPvObjD3ovWrNBaXlAIGWmg2gQQuJ5YhuciUOjPRox6hIQttu8O+b51dx6VIpIY9ESd2d0Vac1RKpICdG4rGUg==", + "version": "1.0.30001199", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001199.tgz", + "integrity": "sha512-ifbK2eChUCFUwGhlEzIoVwzFt1+iriSjyKKFYNfv6hN34483wyWpLLavYQXhnR036LhkdUYaSDpHg1El++VgHQ==", "dev": true }, "catharsis": { @@ -1937,9 +1925,9 @@ } }, "concordance": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.3.tgz", - "integrity": "sha512-niSG8GwnplIe5fXZCmIrbAaF41Eqt2A1PVG269flPzndjccwKbyIhyZYsbTBW+0IF5lWf4RWn9WstSxyKq8hIg==", + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.4.tgz", + "integrity": "sha512-OAcsnTEYu1ARJqWVGwf4zh4JDfHZEaSNlNccFmt8YjB2l/n19/PF2viLINHc57vO4FKIAFl2FWASIGZZWZ2Kxw==", "dev": true, "requires": { "date-time": "^3.1.0", @@ -2571,9 +2559,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.682", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.682.tgz", - "integrity": "sha512-zok2y37qR00U14uM6qBz/3iIjWHom2eRfC2S1StA0RslP7x34jX+j4mxv80t8OEOHLJPVG54ZPeaFxEI7gPrwg==", + "version": "1.3.687", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.687.tgz", + "integrity": "sha512-IpzksdQNl3wdgkzf7dnA7/v10w0Utf1dF2L+B4+gKrloBrxCut+au+kky3PYvle3RMdSxZP+UiCZtLbcYRxSNQ==", "dev": true }, "emittery": { @@ -2818,9 +2806,9 @@ } }, "eslint": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.21.0.tgz", - "integrity": "sha512-W2aJbXpMNofUp0ztQaF40fveSsJBjlSCSWpy//gzfTvwC+USs/nceBrKmlJOiM8r1bLwP2EuYkCqArn/6QTIgg==", + "version": "7.22.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.22.0.tgz", + "integrity": "sha512-3VawOtjSJUQiiqac8MQc+w457iGLfuNGLFn8JmF051tTKbh5/x/0vlcEj8OgDCaw7Ysa2Jn8paGshV7x2abKXg==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", @@ -2840,7 +2828,7 @@ "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", "glob-parent": "^5.0.0", - "globals": "^12.1.0", + "globals": "^13.6.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", @@ -2848,7 +2836,7 @@ "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", - "lodash": "^4.17.20", + "lodash": "^4.17.21", "minimatch": "^3.0.4", "natural-compare": "^1.4.0", "optionator": "^0.9.1", @@ -2887,12 +2875,12 @@ } }, "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "version": "13.6.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.6.0.tgz", + "integrity": "sha512-YFKCX0SiPg7l5oKYCJ2zZGxcXprVXHcSnVuvzrT3oSENQonVLqM5pf9fN5dLGZGyCjhw8TN8Btwe/jKnZ0pjvQ==", "dev": true, "requires": { - "type-fest": "^0.8.1" + "type-fest": "^0.20.2" } }, "ignore": { @@ -2966,9 +2954,9 @@ } }, "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true } } @@ -4058,9 +4046,9 @@ "dev": true }, "is-path-inside": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", - "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "dev": true }, "is-plain-obj": { @@ -4711,9 +4699,9 @@ } }, "map-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", - "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.2.0.tgz", + "integrity": "sha512-NAq0fCmZYGz9UFEQyndp7sisrow4GroyGeKluyKC/chuITZsPyOyC1UJZPJlVFImhXdROIP5xqouRLThT3BbpQ==", "dev": true }, "markdown-it": { @@ -5063,9 +5051,9 @@ } }, "nanoid": { - "version": "3.1.20", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", - "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", + "version": "3.1.21", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.21.tgz", + "integrity": "sha512-A6oZraK4DJkAOICstsGH98dvycPr/4GGDH7ZWKmMdd3vGcOurZ6JmWFUt0DA5bzrrn2FrUjmv6mFNWvv8jpppA==", "dev": true }, "natural-compare": { @@ -5944,9 +5932,9 @@ } }, "postcss": { - "version": "8.2.7", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.7.tgz", - "integrity": "sha512-DsVLH3xJzut+VT+rYr0mtvOtpTjSyqDwPf5EZWXcb0uAKfitGpTY9Ec+afi2+TgdN8rWS9Cs88UDYehKo/RvOw==", + "version": "8.2.8", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.8.tgz", + "integrity": "sha512-1F0Xb2T21xET7oQV9eKuctbM9S7BC0fetoHCc4H13z0PT6haiRLP4T0ZY4XWh7iLP0usgqykT6p9B2RtOf4FPw==", "dev": true, "requires": { "colorette": "^1.2.2", @@ -7094,9 +7082,9 @@ }, "dependencies": { "ajv": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.1.tgz", - "integrity": "sha512-ga/aqDYnUy/o7vbsRTFhhTsNeXiYb5JWDIcRIeZfwRNCefwjNTVYCGdGSUrEmiu3yDK3vFvNbgJxvrQW4JXrYQ==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.1.tgz", + "integrity": "sha512-+nu0HDv7kNSOua9apAVc979qd932rrZeb3WOvoiD31A/p1mIE5/9bN2027pE2rOPYEdS3UHzsvof4hY+lM9/WQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7827,9 +7815,9 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yaml": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", - "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "dev": true }, "yargs": { @@ -7888,9 +7876,9 @@ } }, "yargs-parser": { - "version": "20.2.6", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.6.tgz", - "integrity": "sha512-AP1+fQIWSM/sMiET8fyayjx/J+JmTPt2Mr0FkrgqB4todtfa53sOsrSAcIrJRD5XS20bKUwaDIuMkWKCEiQLKA==", + "version": "20.2.7", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", + "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", "dev": true }, "yazl": { diff --git a/packages/project/package.json b/packages/project/package.json index 4dffaa394ed..23047631f7c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.0", "docdash": "^1.2.0", - "eslint": "^7.21.0", + "eslint": "^7.22.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^32.2.0", "istanbul-lib-coverage": "^3.0.0", From 06a5861bfb3155ef9d25de74ade711e0f742383f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 21 Mar 2021 03:21:39 +0000 Subject: [PATCH 0511/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 104 ++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 57 insertions(+), 49 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0d3d00f8a65..50e45f0cc8c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,9 +13,9 @@ } }, "@babel/compat-data": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.8.tgz", - "integrity": "sha512-EaI33z19T4qN3xLXsGf48M2cDqa6ei9tPZlfLdb2HC+e/cFtREiRd8hdSqDbwdLB0/+gLwqJmCYASH0z2bUdog==", + "version": "7.13.11", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.11.tgz", + "integrity": "sha512-BwKEkO+2a67DcFeS3RLl0Z3Gs2OvdXewuWjc1Hfokhb5eQWP9YRYH1/+VrVZvql2CfjOiNGqSAFOYt4lsqTHzg==", "dev": true }, "@babel/core": { @@ -288,9 +288,9 @@ } }, "@babel/parser": { - "version": "7.13.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.10.tgz", - "integrity": "sha512-0s7Mlrw9uTWkYua7xWr99Wpk2bnGa0ANleKfksYAES8LpWH4gW1OUr42vqKNf0us5UQNfru2wPqMqRITzq/SIQ==" + "version": "7.13.11", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.11.tgz", + "integrity": "sha512-PhuoqeHoO9fc4ffMEVk4qb/w/s2iOSWohvbHxLtxui0eBg3Lg5gN1U8wp1V1u61hOWkPQJJyJzGH6Y+grwkq8Q==" }, "@babel/template": { "version": "7.12.13", @@ -1466,9 +1466,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001199", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001199.tgz", - "integrity": "sha512-ifbK2eChUCFUwGhlEzIoVwzFt1+iriSjyKKFYNfv6hN34483wyWpLLavYQXhnR036LhkdUYaSDpHg1El++VgHQ==", + "version": "1.0.30001203", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001203.tgz", + "integrity": "sha512-/I9tvnzU/PHMH7wBPrfDMSuecDeUKerjCPX7D0xBbaJZPxoT9m+yYxt0zCTkcijCkjTdim3H56Zm0i5Adxch4w==", "dev": true }, "catharsis": { @@ -1710,9 +1710,9 @@ } }, "cli-spinners": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.5.0.tgz", - "integrity": "sha512-PC+AmIuK04E6aeSs/pUccSujsTzBhu4HzC2dL+CfJB/Jcc2qTRbEwZQDfIUpt2Xl8BodYBEq8w4fc0kU2I9DjQ==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.0.tgz", + "integrity": "sha512-t+4/y50K/+4xcCRosKkA7W4gTr1MySvLV0q+PxmG7FJ5g+66ChKurYjxBCjHggHH3HA5Hh9cy+lcUGWDqVH+4Q==", "dev": true }, "cli-truncate": { @@ -2382,9 +2382,9 @@ "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, "detect-node": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", - "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.5.tgz", + "integrity": "sha512-qi86tE6hRcFHy8jI1m2VG+LaPUR1LhqDa5G8tVjuUXmOrpuAgqsA1pN0+ldgr3aKUH+QLI9hCY/OcRYisERejw==" }, "devcert-sanscache": { "version": "0.4.8", @@ -2559,9 +2559,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.687", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.687.tgz", - "integrity": "sha512-IpzksdQNl3wdgkzf7dnA7/v10w0Utf1dF2L+B4+gKrloBrxCut+au+kky3PYvle3RMdSxZP+UiCZtLbcYRxSNQ==", + "version": "1.3.693", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.693.tgz", + "integrity": "sha512-vUdsE8yyeu30RecppQtI+XTz2++LWLVEIYmzeCaCRLSdtKZ2eXqdJcrs85KwLiPOPVc6PELgWyXBsfqIvzGZag==", "dev": true }, "emittery": { @@ -2875,9 +2875,9 @@ } }, "globals": { - "version": "13.6.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.6.0.tgz", - "integrity": "sha512-YFKCX0SiPg7l5oKYCJ2zZGxcXprVXHcSnVuvzrT3oSENQonVLqM5pf9fN5dLGZGyCjhw8TN8Btwe/jKnZ0pjvQ==", + "version": "13.7.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.7.0.tgz", + "integrity": "sha512-Aipsz6ZKRxa/xQkZhNg0qIWXT6x6rD46f6x/PCnBomlttdIyAPak4YD9jTmKpZ72uROSMU87qJtcgpgHaVchiA==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -2968,9 +2968,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "32.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-32.2.0.tgz", - "integrity": "sha512-ikeVeF3JVmzjcmGd04OZK0rXjgiw46TWtNX+OhyF2jQlw3w1CAU1vyAyLv8PZcIjp7WxP4N20Vg1CI9bp/52dw==", + "version": "32.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-32.3.0.tgz", + "integrity": "sha512-zyx7kajDK+tqS1bHuY5sapkad8P8KT0vdd/lE55j47VPG2MeenSYuIY/M/Pvmzq5g0+3JB+P3BJGUXmHxtuKPQ==", "dev": true, "requires": { "comment-parser": "1.1.2", @@ -4081,6 +4081,12 @@ "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", "dev": true }, + "is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true + }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", @@ -4389,9 +4395,9 @@ } }, "less-openui5": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.0.tgz", - "integrity": "sha512-mbitxLR8yOQ85UbDJ8uABDwJR8DBw9huu2V+3vdCB/bAtUFHsNYwyz9laZ55K0IYIWY/ZQJwwVFwQtUNP/ij2w==", + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.1.tgz", + "integrity": "sha512-jzEWIAV5F3VlsNifHNkAB5pBBVy643Mw9UGZIpAPbQ56RO04BSHcVW05TlZyNnGnrfUF11RmTjvhZxiWs0Ovag==", "requires": { "clone": "^2.1.0", "css": "^3.0.0", @@ -4601,12 +4607,13 @@ "dev": true }, "log-symbols": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", - "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, "requires": { - "chalk": "^4.0.0" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" } }, "loose-envify": { @@ -4762,9 +4769,9 @@ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, "mem": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-8.0.0.tgz", - "integrity": "sha512-qrcJOe6uD+EW8Wrci1Vdiua/15Xw3n/QnaNXE7varnB6InxSk7nu3/i5jfy3S6kWxr8WYJ6R1o0afMUtvorTsA==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.0.tgz", + "integrity": "sha512-FIkgXo0kTi3XpvaznV5Muk6Y6w8SkdmRXcY7ZLonQesuYezp59UooLxAVBcGuN6PH2tXN84mR3vyzSc6oSMUfA==", "dev": true, "requires": { "map-age-cleaner": "^0.1.3", @@ -5051,9 +5058,9 @@ } }, "nanoid": { - "version": "3.1.21", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.21.tgz", - "integrity": "sha512-A6oZraK4DJkAOICstsGH98dvycPr/4GGDH7ZWKmMdd3vGcOurZ6JmWFUt0DA5bzrrn2FrUjmv6mFNWvv8jpppA==", + "version": "3.1.22", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.22.tgz", + "integrity": "sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ==", "dev": true }, "natural-compare": { @@ -5528,17 +5535,18 @@ } }, "ora": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz", - "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.0.tgz", + "integrity": "sha512-1StwyXQGoU6gdjYkyVcqOLnVlbKj+6yPNNOxJVgpt9t4eksKjiriiHuxktLYkgllwk+D6MbC4ihH84L1udRXPg==", "dev": true, "requires": { - "bl": "^4.0.3", + "bl": "^4.1.0", "chalk": "^4.1.0", "cli-cursor": "^3.1.0", "cli-spinners": "^2.5.0", "is-interactive": "^1.0.0", - "log-symbols": "^4.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" }, @@ -7082,9 +7090,9 @@ }, "dependencies": { "ajv": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.1.tgz", - "integrity": "sha512-+nu0HDv7kNSOua9apAVc979qd932rrZeb3WOvoiD31A/p1mIE5/9bN2027pE2rOPYEdS3UHzsvof4hY+lM9/WQ==", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.3.tgz", + "integrity": "sha512-idv5WZvKVXDqKralOImQgPM9v6WOdLNa0IY3B3doOjw/YxRGT8I+allIJ6kd7Uaj+SF1xZUSU+nPM5aDNBVtnw==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7338,9 +7346,9 @@ } }, "terser": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.6.0.tgz", - "integrity": "sha512-vyqLMoqadC1uR0vywqOZzriDYzgEkNJFK4q9GeyOBHIbiECHiWLKcWfbQWAUaPfxkjDhapSlZB9f7fkMrvkVjA==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.6.1.tgz", + "integrity": "sha512-yv9YLFQQ+3ZqgWCUk+pvNJwgUTdlIxUk1WTN+RnaFJe2L7ipG2csPT0ra2XRm7Cs8cxN7QXmK1rFzEwYEQkzXw==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", diff --git a/packages/project/package.json b/packages/project/package.json index 23047631f7c..3d45811723c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.22.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^32.2.0", + "eslint-plugin-jsdoc": "^32.3.0", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From f25912d83a1b7e20189fd02728955b6b009e41e2 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 28 Mar 2021 02:21:09 +0000 Subject: [PATCH 0512/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 206 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 104 insertions(+), 106 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 50e45f0cc8c..502a24dfe3c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,26 +13,26 @@ } }, "@babel/compat-data": { - "version": "7.13.11", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.11.tgz", - "integrity": "sha512-BwKEkO+2a67DcFeS3RLl0Z3Gs2OvdXewuWjc1Hfokhb5eQWP9YRYH1/+VrVZvql2CfjOiNGqSAFOYt4lsqTHzg==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.12.tgz", + "integrity": "sha512-3eJJ841uKxeV8dcN/2yGEUy+RfgQspPEgQat85umsE1rotuquQ2AbIub4S6j7c50a2d+4myc+zSlnXeIHrOnhQ==", "dev": true }, "@babel/core": { - "version": "7.13.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.10.tgz", - "integrity": "sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw==", + "version": "7.13.13", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.13.tgz", + "integrity": "sha512-1xEs9jZAyKIouOoCmpsgk/I26PoKyvzQ2ixdRpRzfbcp1fL+ozw7TUgdDgwonbTovqRaTfRh50IXuw4QrWO0GA==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", "@babel/generator": "^7.13.9", - "@babel/helper-compilation-targets": "^7.13.10", - "@babel/helper-module-transforms": "^7.13.0", + "@babel/helper-compilation-targets": "^7.13.13", + "@babel/helper-module-transforms": "^7.13.12", "@babel/helpers": "^7.13.10", - "@babel/parser": "^7.13.10", + "@babel/parser": "^7.13.13", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.0", + "@babel/traverse": "^7.13.13", + "@babel/types": "^7.13.13", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -91,12 +91,12 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.13.10", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.10.tgz", - "integrity": "sha512-/Xju7Qg1GQO4mHZ/Kcs6Au7gfafgZnwm+a7sy/ow/tV1sHeraRUHbjdat8/UvDor4Tez+siGKDk6zIKtCPKVJA==", + "version": "7.13.13", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.13.tgz", + "integrity": "sha512-q1kcdHNZehBwD9jYPh3WyXcsFERi39X4I59I3NadciWtNDyZ6x+GboOxncFK0kXlKIv6BJm5acncehXWUjWQMQ==", "dev": true, "requires": { - "@babel/compat-data": "^7.13.8", + "@babel/compat-data": "^7.13.12", "@babel/helper-validator-option": "^7.12.17", "browserslist": "^4.14.5", "semver": "^6.3.0" @@ -131,38 +131,37 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.0.tgz", - "integrity": "sha512-yvRf8Ivk62JwisqV1rFRMxiSMDGnN6KH1/mDMmIrij4jztpQNRoHqqMG3U6apYbGRPJpgPalhva9Yd06HlUxJQ==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz", + "integrity": "sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==", "dev": true, "requires": { - "@babel/types": "^7.13.0" + "@babel/types": "^7.13.12" } }, "@babel/helper-module-imports": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.13.tgz", - "integrity": "sha512-NGmfvRp9Rqxy0uHSSVP+SRIW1q31a7Ji10cLBcqSDUngGentY4FRiHOFZFE1CLU5eiL0oE8reH7Tg1y99TDM/g==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz", + "integrity": "sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==", "dev": true, "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.13.12" } }, "@babel/helper-module-transforms": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.0.tgz", - "integrity": "sha512-Ls8/VBwH577+pw7Ku1QkUWIyRRNHpYlts7+qSqBBFCW3I8QteB9DxfcZ5YJpOwH6Ihe/wn8ch7fMGOP1OhEIvw==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.12.tgz", + "integrity": "sha512-7zVQqMO3V+K4JOOj40kxiCrMf6xlQAkewBB0eu2b03OO/Q21ZutOzjpfD79A5gtE/2OWi1nv625MrDlGlkbknQ==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-replace-supers": "^7.13.0", - "@babel/helper-simple-access": "^7.12.13", + "@babel/helper-module-imports": "^7.13.12", + "@babel/helper-replace-supers": "^7.13.12", + "@babel/helper-simple-access": "^7.13.12", "@babel/helper-split-export-declaration": "^7.12.13", "@babel/helper-validator-identifier": "^7.12.11", "@babel/template": "^7.12.13", "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.0", - "lodash": "^4.17.19" + "@babel/types": "^7.13.12" } }, "@babel/helper-optimise-call-expression": { @@ -175,24 +174,24 @@ } }, "@babel/helper-replace-supers": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.0.tgz", - "integrity": "sha512-Segd5me1+Pz+rmN/NFBOplMbZG3SqRJOBlY+mA0SxAv6rjj7zJqr1AVr3SfzUVTLCv7ZLU5FycOM/SBGuLPbZw==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz", + "integrity": "sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.13.0", + "@babel/helper-member-expression-to-functions": "^7.13.12", "@babel/helper-optimise-call-expression": "^7.12.13", "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.0" + "@babel/types": "^7.13.12" } }, "@babel/helper-simple-access": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.13.tgz", - "integrity": "sha512-0ski5dyYIHEfwpWGx5GPWhH35j342JaflmCeQmsPWcrOQDtCN6C1zKAVRFVbK53lPW2c9TsuLLSUDf0tIGJ5hA==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz", + "integrity": "sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==", "dev": true, "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.13.12" } }, "@babel/helper-split-export-declaration": { @@ -288,9 +287,9 @@ } }, "@babel/parser": { - "version": "7.13.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.11.tgz", - "integrity": "sha512-PhuoqeHoO9fc4ffMEVk4qb/w/s2iOSWohvbHxLtxui0eBg3Lg5gN1U8wp1V1u61hOWkPQJJyJzGH6Y+grwkq8Q==" + "version": "7.13.13", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.13.tgz", + "integrity": "sha512-OhsyMrqygfk5v8HmWwOzlYjJrtLaFhF34MrfG/Z73DgYCI6ojNUTUp2TYbtnjo8PegeJp12eamsNettCQjKjVw==" }, "@babel/template": { "version": "7.12.13", @@ -304,20 +303,19 @@ } }, "@babel/traverse": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz", - "integrity": "sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ==", + "version": "7.13.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.13.tgz", + "integrity": "sha512-CblEcwmXKR6eP43oQGG++0QMTtCjAsa3frUuzHoiIJWpaIIi8dwMyEFUJoXRLxagGqCK+jALRwIO+o3R9p/uUg==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.13.0", + "@babel/generator": "^7.13.9", "@babel/helper-function-name": "^7.12.13", "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.13.0", - "@babel/types": "^7.13.0", + "@babel/parser": "^7.13.13", + "@babel/types": "^7.13.13", "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" + "globals": "^11.1.0" }, "dependencies": { "debug": { @@ -338,9 +336,9 @@ } }, "@babel/types": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.0.tgz", - "integrity": "sha512-hE+HE8rnG1Z6Wzo+MhaKE5lM5eMx71T4EHJgku2E3xIfaULhDcxiiRxUYgwX8qwP1BBSlag+TdGOt6JAidIZTA==", + "version": "7.13.13", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.13.tgz", + "integrity": "sha512-kt+EpC6qDfIaqlP+DIbIJOclYy/A1YXs9dAf/ljbi+39Bcbc073H6jKVpXEr/EoIh5anGn5xq/yRVzKl+uIc9w==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.12.11", @@ -587,9 +585,9 @@ "dev": true }, "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==", "dev": true }, "@types/minimist": { @@ -691,40 +689,40 @@ } }, "@vue/compiler-core": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.7.tgz", - "integrity": "sha512-JFohgBXoyUc3mdeI2WxlhjQZ5fakfemJkZHX8Gu/nFbEg3+lKVUZmNKWmmnp9aOzJQZKoj77LjmFxiP+P+7lMQ==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.9.tgz", + "integrity": "sha512-bHAPwfVoLhGx8d6KV/OfGf/3gwpymVirgfmSyhgv5YuXDybLa6BwjSLvhNMAyDP+4q4pp0p6g248LuoOy5W6OA==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.0.7", + "@vue/shared": "3.0.9", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.7.tgz", - "integrity": "sha512-VnIH9EbWQm/Tkcp+8dCaNVsVvhm/vxCrIKWRkXY9215hTqOqQOvejT8IMjd2kc++nIsYMsdQk6H9qqBvoLe/Cw==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.9.tgz", + "integrity": "sha512-tkq6umPSELaghvOExWfGNwrCRc7FTul3RLykKzBZWhb87sSESq0XxiKELfBOfEbzdhWg6BJ1WXKDeq+al/viEQ==", "dev": true, "requires": { - "@vue/compiler-core": "3.0.7", - "@vue/shared": "3.0.7" + "@vue/compiler-core": "3.0.9", + "@vue/shared": "3.0.9" } }, "@vue/compiler-sfc": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.7.tgz", - "integrity": "sha512-37/QILpGE+J3V+bP9Slg9e6xGqfk+MmS2Yj8ChR4fS0/qWUU/YoYHE0GPIzjmBdH0JVOOmJqunxowIXmqNiHng==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.9.tgz", + "integrity": "sha512-meneFRb9xIDgv/gYWCr9xKryvPi0tVffQzLjCkyN4RF1EndqLS71xugUX9wQsS4F1SAP+zlZbcgMFmTSC4OpHw==", "dev": true, "requires": { - "@babel/parser": "^7.12.0", - "@babel/types": "^7.12.0", - "@vue/compiler-core": "3.0.7", - "@vue/compiler-dom": "3.0.7", - "@vue/compiler-ssr": "3.0.7", - "@vue/shared": "3.0.7", + "@babel/parser": "^7.13.9", + "@babel/types": "^7.13.0", + "@vue/compiler-core": "3.0.9", + "@vue/compiler-dom": "3.0.9", + "@vue/compiler-ssr": "3.0.9", + "@vue/shared": "3.0.9", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -755,19 +753,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.7.tgz", - "integrity": "sha512-nHRbHeSpfXwjypettjrA16TjgfDcPEwq3m/zHnGyLC1QqdLtklXmpSM43/CPwwTCRa/qdt0pldJf22MiCEuTSQ==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.9.tgz", + "integrity": "sha512-99h5k6Up+s8AzTNH1ljtXE/QlnG8yaGLePwQ4XQaWfk23ESUnmGZWEC+y+ZXznf8pIfJ0uPeD9EVgQzQAyZ2aA==", "dev": true, "requires": { - "@vue/compiler-dom": "3.0.7", - "@vue/shared": "3.0.7" + "@vue/compiler-dom": "3.0.9", + "@vue/shared": "3.0.9" } }, "@vue/shared": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.0.7.tgz", - "integrity": "sha512-dn5FyfSc4ky424jH4FntiHno7Ss5yLkqKNmM/NXwANRnlkmqu74pnGetexDFVG5phMk9/FhwovUZCWGxsotVKg==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.0.9.tgz", + "integrity": "sha512-lv20q1O5dybwro+V+vnxHCmSIxi9mvTORSgAbGrANGYK8zF4K1S9TOankIvdkcvfZ88IR95O2pTI2Pb3c3BaNg==", "dev": true }, "JSONStream": { @@ -1466,9 +1464,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001203", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001203.tgz", - "integrity": "sha512-/I9tvnzU/PHMH7wBPrfDMSuecDeUKerjCPX7D0xBbaJZPxoT9m+yYxt0zCTkcijCkjTdim3H56Zm0i5Adxch4w==", + "version": "1.0.30001204", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001204.tgz", + "integrity": "sha512-JUdjWpcxfJ9IPamy2f5JaRDCaqJOxDzOSKtbdx4rH9VivMd1vIzoPumsJa9LoMIi4Fx2BV2KZOxWhNkBjaYivQ==", "dev": true }, "catharsis": { @@ -2559,9 +2557,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.693", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.693.tgz", - "integrity": "sha512-vUdsE8yyeu30RecppQtI+XTz2++LWLVEIYmzeCaCRLSdtKZ2eXqdJcrs85KwLiPOPVc6PELgWyXBsfqIvzGZag==", + "version": "1.3.701", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.701.tgz", + "integrity": "sha512-Zd9ofdIMYHYhG1gvnejQDvC/kqSeXQvtXF0yRURGxgwGqDZm9F9Fm3dYFnm5gyuA7xpXfBlzVLN1sz0FjxpKfw==", "dev": true }, "emittery": { @@ -2806,9 +2804,9 @@ } }, "eslint": { - "version": "7.22.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.22.0.tgz", - "integrity": "sha512-3VawOtjSJUQiiqac8MQc+w457iGLfuNGLFn8JmF051tTKbh5/x/0vlcEj8OgDCaw7Ysa2Jn8paGshV7x2abKXg==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.23.0.tgz", + "integrity": "sha512-kqvNVbdkjzpFy0XOszNwjkKzZ+6TcwCQ/h+ozlcIWwaimBBuhlQ4nN6kbiM2L+OjDcznkTJxzYfRFH92sx4a0Q==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", @@ -3543,9 +3541,9 @@ "dev": true }, "globby": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz", - "integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz", + "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==", "requires": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -6172,9 +6170,9 @@ } }, "queue-microtask": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.2.tgz", - "integrity": "sha512-dB15eXv3p2jDlbOiNLyMabYg1/sXvppd8DP2J3EOCQ0AkuSXCW2tP7mnVouVLJKgUMY6yP0kcQDVpLCN13h4Xg==" + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" }, "quick-lru": { "version": "4.0.1", @@ -6573,9 +6571,9 @@ "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } @@ -7090,9 +7088,9 @@ }, "dependencies": { "ajv": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.3.tgz", - "integrity": "sha512-idv5WZvKVXDqKralOImQgPM9v6WOdLNa0IY3B3doOjw/YxRGT8I+allIJ6kd7Uaj+SF1xZUSU+nPM5aDNBVtnw==", + "version": "7.2.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.4.tgz", + "integrity": "sha512-nBeQgg/ZZA3u3SYxyaDvpvDtgZ/EZPF547ARgZBrG9Bhu1vKDwAIjtIf+sDtJUKa2zOcEbmRLBRSyMraS/Oy1A==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index 3d45811723c..691fd2feaae 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,7 +119,7 @@ "read-pkg-up": "^7.0.1", "resolve": "^1.20.0", "rimraf": "^3.0.2", - "semver": "^7.3.4" + "semver": "^7.3.5" }, "devDependencies": { "ava": "^3.15.0", @@ -127,7 +127,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.0", "docdash": "^1.2.0", - "eslint": "^7.22.0", + "eslint": "^7.23.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^32.3.0", "istanbul-lib-coverage": "^3.0.0", From 5b0802bb7ee0dd598324e1c38ab405570ee4c2f8 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 4 Apr 2021 02:20:32 +0000 Subject: [PATCH 0513/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 200 +++++++++++++++++++---------- 1 file changed, 132 insertions(+), 68 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 502a24dfe3c..b9f9db199fc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -19,25 +19,24 @@ "dev": true }, "@babel/core": { - "version": "7.13.13", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.13.tgz", - "integrity": "sha512-1xEs9jZAyKIouOoCmpsgk/I26PoKyvzQ2ixdRpRzfbcp1fL+ozw7TUgdDgwonbTovqRaTfRh50IXuw4QrWO0GA==", + "version": "7.13.14", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.14.tgz", + "integrity": "sha512-wZso/vyF4ki0l0znlgM4inxbdrUvCb+cVz8grxDq+6C9k6qbqoIJteQOKicaKjCipU3ISV+XedCqpL2RJJVehA==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", "@babel/generator": "^7.13.9", "@babel/helper-compilation-targets": "^7.13.13", - "@babel/helper-module-transforms": "^7.13.12", + "@babel/helper-module-transforms": "^7.13.14", "@babel/helpers": "^7.13.10", "@babel/parser": "^7.13.13", "@babel/template": "^7.12.13", "@babel/traverse": "^7.13.13", - "@babel/types": "^7.13.13", + "@babel/types": "^7.13.14", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", "json5": "^2.1.2", - "lodash": "^4.17.19", "semver": "^6.3.0", "source-map": "^0.5.0" }, @@ -149,9 +148,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.12.tgz", - "integrity": "sha512-7zVQqMO3V+K4JOOj40kxiCrMf6xlQAkewBB0eu2b03OO/Q21ZutOzjpfD79A5gtE/2OWi1nv625MrDlGlkbknQ==", + "version": "7.13.14", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.14.tgz", + "integrity": "sha512-QuU/OJ0iAOSIatyVZmfqB0lbkVP0kDRiKj34xy+QNsnVZi/PA6BoSoreeqnxxa9EHFAIL0R9XOaAR/G9WlIy5g==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.13.12", @@ -160,8 +159,8 @@ "@babel/helper-split-export-declaration": "^7.12.13", "@babel/helper-validator-identifier": "^7.12.11", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.12" + "@babel/traverse": "^7.13.13", + "@babel/types": "^7.13.14" } }, "@babel/helper-optimise-call-expression": { @@ -336,9 +335,9 @@ } }, "@babel/types": { - "version": "7.13.13", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.13.tgz", - "integrity": "sha512-kt+EpC6qDfIaqlP+DIbIJOclYy/A1YXs9dAf/ljbi+39Bcbc073H6jKVpXEr/EoIh5anGn5xq/yRVzKl+uIc9w==", + "version": "7.13.14", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz", + "integrity": "sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.12.11", @@ -689,40 +688,40 @@ } }, "@vue/compiler-core": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.9.tgz", - "integrity": "sha512-bHAPwfVoLhGx8d6KV/OfGf/3gwpymVirgfmSyhgv5YuXDybLa6BwjSLvhNMAyDP+4q4pp0p6g248LuoOy5W6OA==", + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.11.tgz", + "integrity": "sha512-6sFj6TBac1y2cWCvYCA8YzHJEbsVkX7zdRs/3yK/n1ilvRqcn983XvpBbnN3v4mZ1UiQycTvOiajJmOgN9EVgw==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.0.9", + "@vue/shared": "3.0.11", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.9.tgz", - "integrity": "sha512-tkq6umPSELaghvOExWfGNwrCRc7FTul3RLykKzBZWhb87sSESq0XxiKELfBOfEbzdhWg6BJ1WXKDeq+al/viEQ==", + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.11.tgz", + "integrity": "sha512-+3xB50uGeY5Fv9eMKVJs2WSRULfgwaTJsy23OIltKgMrynnIj8hTYY2UL97HCoz78aDw1VDXdrBQ4qepWjnQcw==", "dev": true, "requires": { - "@vue/compiler-core": "3.0.9", - "@vue/shared": "3.0.9" + "@vue/compiler-core": "3.0.11", + "@vue/shared": "3.0.11" } }, "@vue/compiler-sfc": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.9.tgz", - "integrity": "sha512-meneFRb9xIDgv/gYWCr9xKryvPi0tVffQzLjCkyN4RF1EndqLS71xugUX9wQsS4F1SAP+zlZbcgMFmTSC4OpHw==", + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.11.tgz", + "integrity": "sha512-7fNiZuCecRleiyVGUWNa6pn8fB2fnuJU+3AGjbjl7r1P5wBivfl02H4pG+2aJP5gh2u+0wXov1W38tfWOphsXw==", "dev": true, "requires": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", - "@vue/compiler-core": "3.0.9", - "@vue/compiler-dom": "3.0.9", - "@vue/compiler-ssr": "3.0.9", - "@vue/shared": "3.0.9", + "@vue/compiler-core": "3.0.11", + "@vue/compiler-dom": "3.0.11", + "@vue/compiler-ssr": "3.0.11", + "@vue/shared": "3.0.11", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -753,19 +752,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.9.tgz", - "integrity": "sha512-99h5k6Up+s8AzTNH1ljtXE/QlnG8yaGLePwQ4XQaWfk23ESUnmGZWEC+y+ZXznf8pIfJ0uPeD9EVgQzQAyZ2aA==", + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.11.tgz", + "integrity": "sha512-66yUGI8SGOpNvOcrQybRIhl2M03PJ+OrDPm78i7tvVln86MHTKhM3ERbALK26F7tXl0RkjX4sZpucCpiKs3MnA==", "dev": true, "requires": { - "@vue/compiler-dom": "3.0.9", - "@vue/shared": "3.0.9" + "@vue/compiler-dom": "3.0.11", + "@vue/shared": "3.0.11" } }, "@vue/shared": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.0.9.tgz", - "integrity": "sha512-lv20q1O5dybwro+V+vnxHCmSIxi9mvTORSgAbGrANGYK8zF4K1S9TOankIvdkcvfZ88IR95O2pTI2Pb3c3BaNg==", + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.0.11.tgz", + "integrity": "sha512-b+zB8A2so8eCE0JsxjL24J7vdGl8rzPQ09hZNhystm+KqSbKcAej1A+Hbva1rCMmTTqA+hFnUSDc5kouEo0JzA==", "dev": true }, "JSONStream": { @@ -1088,9 +1087,9 @@ "dev": true }, "ansi-styles": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.1.0.tgz", - "integrity": "sha512-osxifZo3ar56+e8tdYreU6p8FZGciBHo5O0JoDAxMUqZuyNUb+yHEwYtJZ+Z32R459jEgtwVf1u8D7qYwU0l6w==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true }, "debug": { @@ -1432,6 +1431,16 @@ "write-file-atomic": "^3.0.0" } }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -1464,9 +1473,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001204", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001204.tgz", - "integrity": "sha512-JUdjWpcxfJ9IPamy2f5JaRDCaqJOxDzOSKtbdx4rH9VivMd1vIzoPumsJa9LoMIi4Fx2BV2KZOxWhNkBjaYivQ==", + "version": "1.0.30001205", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001205.tgz", + "integrity": "sha512-TL1GrS5V6LElbitPazidkBMD9sa448bQDDLrumDqaggmKFcuU2JW1wTOHJPukAcOMtEmLcmDJEzfRrf+GjM0Og==", "dev": true }, "catharsis": { @@ -2557,9 +2566,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.701", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.701.tgz", - "integrity": "sha512-Zd9ofdIMYHYhG1gvnejQDvC/kqSeXQvtXF0yRURGxgwGqDZm9F9Fm3dYFnm5gyuA7xpXfBlzVLN1sz0FjxpKfw==", + "version": "1.3.707", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.707.tgz", + "integrity": "sha512-BqddgxNPrcWnbDdJw7SzXVzPmp+oiyjVrc7tkQVaznPGSS9SKZatw6qxoP857M+HbOyyqJQwYQtsuFIMSTNSZA==", "dev": true }, "emittery": { @@ -3471,6 +3480,17 @@ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, "get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", @@ -3610,6 +3630,12 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true + }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -3946,6 +3972,15 @@ "binary-extensions": "^2.0.0" } }, + "is-boolean-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz", + "integrity": "sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA==", + "dev": true, + "requires": { + "call-bind": "^1.0.0" + } + }, "is-ci": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", @@ -4031,6 +4066,12 @@ "lodash.isfinite": "^3.3.2" } }, + "is-number-object": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", + "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==", + "dev": true + }, "is-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", @@ -4073,6 +4114,12 @@ "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", "dev": true }, + "is-string": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", + "dev": true + }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -4525,6 +4572,12 @@ "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", "dev": true }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -4604,6 +4657,12 @@ "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", "dev": true }, + "lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", + "dev": true + }, "log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", @@ -4866,16 +4925,16 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.46.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.46.0.tgz", - "integrity": "sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ==" + "version": "1.47.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz", + "integrity": "sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==" }, "mime-types": { - "version": "2.1.29", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.29.tgz", - "integrity": "sha512-Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ==", + "version": "2.1.30", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.30.tgz", + "integrity": "sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg==", "requires": { - "mime-db": "1.46.0" + "mime-db": "1.47.0" } }, "mimic-fn": { @@ -5938,13 +5997,13 @@ } }, "postcss": { - "version": "8.2.8", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.8.tgz", - "integrity": "sha512-1F0Xb2T21xET7oQV9eKuctbM9S7BC0fetoHCc4H13z0PT6haiRLP4T0ZY4XWh7iLP0usgqykT6p9B2RtOf4FPw==", + "version": "8.2.9", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.9.tgz", + "integrity": "sha512-b+TmuIL4jGtCHtoLi+G/PisuIl9avxs8IZMSmlABRwNz5RLUUACrC+ws81dcomz1nRezm5YPdXiMEzBEKgYn+Q==", "dev": true, "requires": { "colorette": "^1.2.2", - "nanoid": "^3.1.20", + "nanoid": "^3.1.22", "source-map": "^0.6.1" } }, @@ -7076,21 +7135,26 @@ } }, "table": { - "version": "6.0.7", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", - "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", - "dev": true, - "requires": { - "ajv": "^7.0.2", - "lodash": "^4.17.20", + "version": "6.0.9", + "resolved": "https://registry.npmjs.org/table/-/table-6.0.9.tgz", + "integrity": "sha512-F3cLs9a3hL1Z7N4+EkSscsel3z55XT950AvB05bwayrNg5T1/gykXtigioTAjbltvbMSJvvhFCbnf6mX+ntnJQ==", + "dev": true, + "requires": { + "ajv": "^8.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "lodash.clonedeep": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.truncate": "^4.4.2", "slice-ansi": "^4.0.0", "string-width": "^4.2.0" }, "dependencies": { "ajv": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.2.4.tgz", - "integrity": "sha512-nBeQgg/ZZA3u3SYxyaDvpvDtgZ/EZPF547ARgZBrG9Bhu1vKDwAIjtIf+sDtJUKa2zOcEbmRLBRSyMraS/Oy1A==", + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.0.5.tgz", + "integrity": "sha512-RkiLa/AeJx7+9OvniQ/qeWu0w74A8DiPPBclQ6ji3ZQkv5KamO+QGpqmi7O4JIw3rHGUXZ6CoP9tsAkn3gyazg==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", From e14b680bebd7d4507c85f8951e70e285b2a29e1b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 4 Apr 2021 02:23:02 +0000 Subject: [PATCH 0514/1272] [ui5-project]Bump sinon from 9.2.4 to 10.0.0 Bumps [sinon](https://github.com/sinonjs/sinon) from 9.2.4 to 10.0.0. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md) - [Commits](https://github.com/sinonjs/sinon/compare/v9.2.4...v10.0.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b9f9db199fc..37b1063ce5d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -6757,16 +6757,16 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.4.tgz", - "integrity": "sha512-zljcULZQsJxVra28qIAL6ow1Z9tpattkCTEJR4RBP3TGc00FcttsP5pK284Nas5WjMZU5Yzy3kAIp3B3KRf5Yg==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-10.0.0.tgz", + "integrity": "sha512-XAn5DxtGVJBlBWYrcYKEhWCz7FLwZGdyvANRyK06419hyEpdT0dMc5A8Vcxg5SCGHc40CsqoKsc1bt1CbJPfNw==", "dev": true, "requires": { "@sinonjs/commons": "^1.8.1", "@sinonjs/fake-timers": "^6.0.1", "@sinonjs/samsam": "^5.3.1", "diff": "^4.0.2", - "nise": "^4.0.4", + "nise": "^4.1.0", "supports-color": "^7.1.0" } }, diff --git a/packages/project/package.json b/packages/project/package.json index 691fd2feaae..e814b04ab31 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,7 +139,7 @@ "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", - "sinon": "^9.2.4", + "sinon": "^10.0.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From f14545eda10de71eeb3e80542cf6b3622ad96c49 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 11 Apr 2021 02:21:32 +0000 Subject: [PATCH 0515/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 136 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 69 insertions(+), 69 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 37b1063ce5d..ab91f8f16ae 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,15 +13,15 @@ } }, "@babel/compat-data": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.12.tgz", - "integrity": "sha512-3eJJ841uKxeV8dcN/2yGEUy+RfgQspPEgQat85umsE1rotuquQ2AbIub4S6j7c50a2d+4myc+zSlnXeIHrOnhQ==", + "version": "7.13.15", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.15.tgz", + "integrity": "sha512-ltnibHKR1VnrU4ymHyQ/CXtNXI6yZC0oJThyW78Hft8XndANwi+9H+UIklBDraIjFEJzw8wmcM427oDd9KS5wA==", "dev": true }, "@babel/core": { - "version": "7.13.14", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.14.tgz", - "integrity": "sha512-wZso/vyF4ki0l0znlgM4inxbdrUvCb+cVz8grxDq+6C9k6qbqoIJteQOKicaKjCipU3ISV+XedCqpL2RJJVehA==", + "version": "7.13.15", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.15.tgz", + "integrity": "sha512-6GXmNYeNjS2Uz+uls5jalOemgIhnTMeaXo+yBUA72kC2uX/8VW6XyhVIo2L8/q0goKQA3EVKx0KOQpVKSeWadQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", @@ -29,9 +29,9 @@ "@babel/helper-compilation-targets": "^7.13.13", "@babel/helper-module-transforms": "^7.13.14", "@babel/helpers": "^7.13.10", - "@babel/parser": "^7.13.13", + "@babel/parser": "^7.13.15", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.13.13", + "@babel/traverse": "^7.13.15", "@babel/types": "^7.13.14", "convert-source-map": "^1.7.0", "debug": "^4.1.0", @@ -286,9 +286,9 @@ } }, "@babel/parser": { - "version": "7.13.13", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.13.tgz", - "integrity": "sha512-OhsyMrqygfk5v8HmWwOzlYjJrtLaFhF34MrfG/Z73DgYCI6ojNUTUp2TYbtnjo8PegeJp12eamsNettCQjKjVw==" + "version": "7.13.15", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.15.tgz", + "integrity": "sha512-b9COtcAlVEQljy/9fbcMHpG+UIW9ReF+gpaxDHTlZd0c6/UU9ng8zdySAW9sRTzpvcdCHn6bUcbuYUgGzLAWVQ==" }, "@babel/template": { "version": "7.12.13", @@ -302,17 +302,17 @@ } }, "@babel/traverse": { - "version": "7.13.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.13.tgz", - "integrity": "sha512-CblEcwmXKR6eP43oQGG++0QMTtCjAsa3frUuzHoiIJWpaIIi8dwMyEFUJoXRLxagGqCK+jALRwIO+o3R9p/uUg==", + "version": "7.13.15", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.15.tgz", + "integrity": "sha512-/mpZMNvj6bce59Qzl09fHEs8Bt8NnpEDQYleHUPZQ3wXUMvXi+HJPLars68oAbmp839fGoOkv2pSL2z9ajCIaQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", "@babel/generator": "^7.13.9", "@babel/helper-function-name": "^7.12.13", "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.13.13", - "@babel/types": "^7.13.13", + "@babel/parser": "^7.13.15", + "@babel/types": "^7.13.14", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -528,9 +528,9 @@ "dev": true }, "@sinonjs/commons": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.2.tgz", - "integrity": "sha512-sruwd86RJHdsVf/AtBoijDmUqJp3B6hF/DGC23C+JaegnDHaZyewCjoVGTdg3J0uz3Zs7NnIT05OBOmML72lQw==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", + "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -920,9 +920,9 @@ } }, "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", "dev": true, "requires": { "normalize-path": "^3.0.0", @@ -1127,9 +1127,9 @@ } }, "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "base64-js": { "version": "1.5.1", @@ -1207,9 +1207,9 @@ "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" }, "boxen": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.0.0.tgz", - "integrity": "sha512-5bvsqw+hhgUi3oYGK0Vf4WpIkyemp60WBInn7+WNfoISzAqk/HX4L7WNROq38E6UR/y3YADpv6pEm4BfkeEAdA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.0.1.tgz", + "integrity": "sha512-49VBlw+PrWEF51aCmy7QIteYPIFZxSpvqBdP/2itCPPlJ49kj9zg/XPRFrdkne2W+CfwXUls8exMvu1RysZpKA==", "dev": true, "requires": { "ansi-align": "^3.0.0", @@ -1473,9 +1473,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001205", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001205.tgz", - "integrity": "sha512-TL1GrS5V6LElbitPazidkBMD9sa448bQDDLrumDqaggmKFcuU2JW1wTOHJPukAcOMtEmLcmDJEzfRrf+GjM0Og==", + "version": "1.0.30001208", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001208.tgz", + "integrity": "sha512-OE5UE4+nBOro8Dyvv0lfx+SRtfVIOM9uhKqFmJeUbGriqhhStgp1A0OyBpgy3OUF8AhYCT+PVwPC1gMl2ZcQMA==", "dev": true }, "catharsis": { @@ -2566,9 +2566,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.707", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.707.tgz", - "integrity": "sha512-BqddgxNPrcWnbDdJw7SzXVzPmp+oiyjVrc7tkQVaznPGSS9SKZatw6qxoP857M+HbOyyqJQwYQtsuFIMSTNSZA==", + "version": "1.3.712", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.712.tgz", + "integrity": "sha512-3kRVibBeCM4vsgoHHGKHmPocLqtFAGTrebXxxtgKs87hNUzXrX2NuS3jnBys7IozCnw7viQlozxKkmty2KNfrw==", "dev": true }, "emittery": { @@ -2813,9 +2813,9 @@ } }, "eslint": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.23.0.tgz", - "integrity": "sha512-kqvNVbdkjzpFy0XOszNwjkKzZ+6TcwCQ/h+ozlcIWwaimBBuhlQ4nN6kbiM2L+OjDcznkTJxzYfRFH92sx4a0Q==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.24.0.tgz", + "integrity": "sha512-k9gaHeHiFmGCDQ2rEfvULlSLruz6tgfA8DEn+rY9/oYPFFTlz55mM/Q/Rij1b2Y42jwZiK3lXvNTw6w6TXzcKQ==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", @@ -2882,9 +2882,9 @@ } }, "globals": { - "version": "13.7.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.7.0.tgz", - "integrity": "sha512-Aipsz6ZKRxa/xQkZhNg0qIWXT6x6rD46f6x/PCnBomlttdIyAPak4YD9jTmKpZ72uROSMU87qJtcgpgHaVchiA==", + "version": "13.8.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.8.0.tgz", + "integrity": "sha512-rHtdA6+PDBIjeEvA91rpqzEvk/k3/i7EeNQiryiWuJH0Hw9cpyJMAt2jtbAwUaRdhD+573X4vWw6IcjKPasi9Q==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -3672,9 +3672,9 @@ } }, "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" }, "hpack.js": { "version": "2.1.6", @@ -3999,9 +3999,9 @@ } }, "is-docker": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz", - "integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "dev": true }, "is-error": { @@ -4402,9 +4402,9 @@ "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=" }, "just-extend": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.1.tgz", - "integrity": "sha512-aWgeGFW67BP3e5181Ep1Fv2v8z//iBJfrvyTnq8wG86vEESwmonn1zPBJ0VfmT9CJq2FIT0VsETtrNFm2a+SHA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", "dev": true }, "keyv": { @@ -4763,9 +4763,9 @@ } }, "map-obj": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.2.0.tgz", - "integrity": "sha512-NAq0fCmZYGz9UFEQyndp7sisrow4GroyGeKluyKC/chuITZsPyOyC1UJZPJlVFImhXdROIP5xqouRLThT3BbpQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.2.1.tgz", + "integrity": "sha512-+WA2/1sPmDj1dlvvJmB5G6JKfY9dpn7EVBUL06+y6PoljPkh+6V1QihwxNkbcGxCRjt2b0F9K0taiCuo7MbdFQ==", "dev": true }, "markdown-it": { @@ -4911,12 +4911,12 @@ "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" }, "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", "requires": { "braces": "^3.0.1", - "picomatch": "^2.0.5" + "picomatch": "^2.2.3" } }, "mime": { @@ -5894,9 +5894,9 @@ "dev": true }, "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.3.tgz", + "integrity": "sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg==" }, "pify": { "version": "4.0.1", @@ -6980,9 +6980,9 @@ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" }, "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", + "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", "requires": { "figgy-pudding": "^3.5.1" } @@ -7875,9 +7875,9 @@ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" }, "y18n": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz", - "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==" + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" }, "yallist": { "version": "4.0.0", @@ -7938,9 +7938,9 @@ } }, "y18n": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.5.tgz", - "integrity": "sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg==", + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true } } diff --git a/packages/project/package.json b/packages/project/package.json index e814b04ab31..57062402132 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.0", "docdash": "^1.2.0", - "eslint": "^7.23.0", + "eslint": "^7.24.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^32.3.0", "istanbul-lib-coverage": "^3.0.0", From 063a34f644d68e13b107a7407951fa0c9c246dda Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 18 Apr 2021 02:20:44 +0000 Subject: [PATCH 0516/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 76 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 40 insertions(+), 40 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ab91f8f16ae..9750e80c26a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -792,9 +792,9 @@ } }, "acorn": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.1.0.tgz", - "integrity": "sha512-LWCF/Wn0nfHOmJ9rzQApGnxnvgfROzGilS8936rqN/lfcYkY9MYZzdMqN+2NJ4SlTc+m5HiSa+kNfDtI64dwUA==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.1.1.tgz", + "integrity": "sha512-xYiIVjNuqtKXMxlRMDc6mZUhXehod4a3gbZ1qRlM7icK4EbxUFNLhWoPblCvFtB2Y9CIqHP3CF/rdxLItaQv8g==", "dev": true }, "acorn-jsx": { @@ -1280,16 +1280,16 @@ } }, "browserslist": { - "version": "4.16.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", - "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.4.tgz", + "integrity": "sha512-d7rCxYV8I9kj41RH8UKYnvDYCRENUlHRgyXy/Rhr/1BaeLGfiCptEdFE8MIrvGfWbBFNjVYx76SQWvNX1j+/cQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001181", - "colorette": "^1.2.1", - "electron-to-chromium": "^1.3.649", + "caniuse-lite": "^1.0.30001208", + "colorette": "^1.2.2", + "electron-to-chromium": "^1.3.712", "escalade": "^3.1.1", - "node-releases": "^1.1.70" + "node-releases": "^1.1.71" } }, "buffer": { @@ -1473,9 +1473,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001208", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001208.tgz", - "integrity": "sha512-OE5UE4+nBOro8Dyvv0lfx+SRtfVIOM9uhKqFmJeUbGriqhhStgp1A0OyBpgy3OUF8AhYCT+PVwPC1gMl2ZcQMA==", + "version": "1.0.30001209", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001209.tgz", + "integrity": "sha512-2Ktt4OeRM7EM/JaOZjuLzPYAIqmbwQMNnYbgooT+icoRGrKOyAxA1xhlnotBD1KArRSPsuJp3TdYcZYrL7qNxA==", "dev": true }, "catharsis": { @@ -2566,9 +2566,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.712", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.712.tgz", - "integrity": "sha512-3kRVibBeCM4vsgoHHGKHmPocLqtFAGTrebXxxtgKs87hNUzXrX2NuS3jnBys7IozCnw7viQlozxKkmty2KNfrw==", + "version": "1.3.717", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.717.tgz", + "integrity": "sha512-OfzVPIqD1MkJ7fX+yTl2nKyOE4FReeVfMCzzxQS+Kp43hZYwHwThlGP+EGIZRXJsxCM7dqo8Y65NOX/HP12iXQ==", "dev": true }, "emittery": { @@ -3953,9 +3953,9 @@ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" }, "irregular-plurals": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.2.0.tgz", - "integrity": "sha512-YqTdPLfwP7YFN0SsD3QUVCkm9ZG2VzOXv3DOrw5G5mkMbVwptTwVcFv7/C0vOpBmgTxAeTG19XpUs1E522LW9Q==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.3.0.tgz", + "integrity": "sha512-MVBLKUTangM3EfRPFROhmWQQKRDsrgI83J8GS3jXy+OwYqiR2/aoWndYQ5416jLE3uaGgLH7ncme3X9y09gZ3g==", "dev": true }, "is-arrayish": { @@ -4274,9 +4274,9 @@ } }, "js-beautify": { - "version": "1.13.5", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.5.tgz", - "integrity": "sha512-MsXlH6Z/BiRYSkSRW3clNDqDjSpiSNOiG8xYVUBXt4k0LnGvDhlTGOlHX1VFtAdoLmtwjxMG5qiWKy/g+Ipv5w==", + "version": "1.13.13", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.13.tgz", + "integrity": "sha512-oH+nc0U5mOAqX8M5JO1J0Pw/7Q35sAdOsM5W3i87pir9Ntx6P/5Gx1xLNoK+MGyvHk4rqqRCE4Oq58H6xl2W7A==", "dev": true, "requires": { "config-chain": "^1.1.12", @@ -4298,9 +4298,9 @@ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "js-yaml": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", - "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "requires": { "argparse": "^2.0.1" }, @@ -5997,9 +5997,9 @@ } }, "postcss": { - "version": "8.2.9", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.9.tgz", - "integrity": "sha512-b+TmuIL4jGtCHtoLi+G/PisuIl9avxs8IZMSmlABRwNz5RLUUACrC+ws81dcomz1nRezm5YPdXiMEzBEKgYn+Q==", + "version": "8.2.10", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.10.tgz", + "integrity": "sha512-b/h7CPV7QEdrqIxtAf2j31U5ef05uBDuvoXv6L51Q4rcS1jdlXAVKJv+atCFdUXYl9dyTHGyoMzIepwowRJjFw==", "dev": true, "requires": { "colorette": "^1.2.2", @@ -6590,12 +6590,12 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.8", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.8.tgz", - "integrity": "sha512-Sl6mIeGpzjIUZqvKnKETfMf0iDAswD9TNlv13A7aAF3XZlRPMq4VvJWBC2N2DXbp94MQVdNSFG6LfF/iOXrPHQ==", + "version": "1.32.10", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.10.tgz", + "integrity": "sha512-Nx0pcWoonAkn7CRp0aE/hket1UP97GiR1IFw3kcjV3pnenhWgZEWUf0ZcfPOV2fK52fnOcK3JdC/YYZ9E47DTQ==", "dev": true, "requires": { - "chokidar": ">=2.0.0 <4.0.0" + "chokidar": ">=3.0.0 <4.0.0" } }, "sax": { @@ -7135,9 +7135,9 @@ } }, "table": { - "version": "6.0.9", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.9.tgz", - "integrity": "sha512-F3cLs9a3hL1Z7N4+EkSscsel3z55XT950AvB05bwayrNg5T1/gykXtigioTAjbltvbMSJvvhFCbnf6mX+ntnJQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.1.0.tgz", + "integrity": "sha512-T4G5KMmqIk6X87gLKWyU5exPpTjLjY5KyrFWaIjv3SvgaIUGXV7UEzGEnZJdTA38/yUS6f9PlKezQ0bYXG3iIQ==", "dev": true, "requires": { "ajv": "^8.0.1", @@ -7152,9 +7152,9 @@ }, "dependencies": { "ajv": { - "version": "8.0.5", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.0.5.tgz", - "integrity": "sha512-RkiLa/AeJx7+9OvniQ/qeWu0w74A8DiPPBclQ6ji3ZQkv5KamO+QGpqmi7O4JIw3rHGUXZ6CoP9tsAkn3gyazg==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.1.0.tgz", + "integrity": "sha512-B/Sk2Ix7A36fs/ZkuGLIR86EdjbgR6fsAcbx9lOP/QBSXujDNbVmIS/U4Itz5k8fPFDeVZl/zQ/gJW4Jrq6XjQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index 57062402132..8b6926eb92c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -109,7 +109,7 @@ "chalk": "^4.1.0", "escape-string-regexp": "^4.0.0", "graceful-fs": "^4.2.6", - "js-yaml": "^4.0.0", + "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", "mkdirp": "^1.0.4", @@ -134,7 +134,7 @@ "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", - "js-beautify": "^1.13.5", + "js-beautify": "^1.13.13", "jsdoc": "^3.6.6", "mock-require": "^3.0.3", "nyc": "^15.1.0", From 12e922f03f0b9c6151697a0647e5245edebcc9a5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 19 Apr 2021 15:15:07 +0000 Subject: [PATCH 0517/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.8.2 to 2.8.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.8.3/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9750e80c26a..74ef8cb7f83 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -607,9 +607,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.8.2.tgz", - "integrity": "sha512-rIYAeS7w0YllmWTAB9x+C6lVCzGsaPrJUT4Q1sly5gShZI+rTd61K12m62DLuBwAtnEkJqQ6aOYR5PRPFjgnDw==", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.8.3.tgz", + "integrity": "sha512-EESeSg6+cZdj7k1C2K1dMxjyXd4vXoNEflnGRmhUCm3e2uVyBOX54q2tdNiNhmbXf69kZyxXmyv8kK1/UYjKmA==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -619,17 +619,17 @@ "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "5.1.0", - "globby": "^11.0.2", + "globby": "^11.0.3", "graceful-fs": "^4.2.6", "jsdoc": "^3.6.6", - "less-openui5": "^0.11.0", + "less-openui5": "^0.11.1", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^3.0.2", - "semver": "^7.3.4", - "terser": "^5.6.0", + "semver": "^7.3.5", + "terser": "^5.6.1", "xml2js": "^0.4.23", "yazl": "^2.5.1" } diff --git a/packages/project/package.json b/packages/project/package.json index 8b6926eb92c..b41e66e5bb7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.8.2", + "@ui5/builder": "^2.8.3", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.9", "ajv": "^6.12.6", From 83e140d985029bbdb76cc3dff32bb08a08af77bc Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 25 Apr 2021 02:21:28 +0000 Subject: [PATCH 0518/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 229 +++++++++++------------------ packages/project/package.json | 6 +- 2 files changed, 85 insertions(+), 150 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 74ef8cb7f83..759e807a103 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -19,20 +19,20 @@ "dev": true }, "@babel/core": { - "version": "7.13.15", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.15.tgz", - "integrity": "sha512-6GXmNYeNjS2Uz+uls5jalOemgIhnTMeaXo+yBUA72kC2uX/8VW6XyhVIo2L8/q0goKQA3EVKx0KOQpVKSeWadQ==", + "version": "7.13.16", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.16.tgz", + "integrity": "sha512-sXHpixBiWWFti0AV2Zq7avpTasr6sIAu7Y396c608541qAU2ui4a193m0KSQmfPSKFZLnQ3cvlKDOm3XkuXm3Q==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.13.9", - "@babel/helper-compilation-targets": "^7.13.13", + "@babel/generator": "^7.13.16", + "@babel/helper-compilation-targets": "^7.13.16", "@babel/helper-module-transforms": "^7.13.14", - "@babel/helpers": "^7.13.10", - "@babel/parser": "^7.13.15", + "@babel/helpers": "^7.13.16", + "@babel/parser": "^7.13.16", "@babel/template": "^7.12.13", "@babel/traverse": "^7.13.15", - "@babel/types": "^7.13.14", + "@babel/types": "^7.13.16", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.13.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.13.9.tgz", - "integrity": "sha512-mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw==", + "version": "7.13.16", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.13.16.tgz", + "integrity": "sha512-grBBR75UnKOcUWMp8WoDxNsWCFl//XCK6HWTrBQKTr5SV9f5g0pNOjdyzi/DTBv12S9GnYPInIXQBTky7OXEMg==", "dev": true, "requires": { - "@babel/types": "^7.13.0", + "@babel/types": "^7.13.16", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -90,12 +90,12 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.13.13", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.13.tgz", - "integrity": "sha512-q1kcdHNZehBwD9jYPh3WyXcsFERi39X4I59I3NadciWtNDyZ6x+GboOxncFK0kXlKIv6BJm5acncehXWUjWQMQ==", + "version": "7.13.16", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.16.tgz", + "integrity": "sha512-3gmkYIrpqsLlieFwjkGgLaSHmhnvlAYzZLlYVjlW+QwI+1zE17kGxuJGmIqDQdYp56XdmGeD+Bswx0UTyG18xA==", "dev": true, "requires": { - "@babel/compat-data": "^7.13.12", + "@babel/compat-data": "^7.13.15", "@babel/helper-validator-option": "^7.12.17", "browserslist": "^4.14.5", "semver": "^6.3.0" @@ -214,14 +214,14 @@ "dev": true }, "@babel/helpers": { - "version": "7.13.10", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.10.tgz", - "integrity": "sha512-4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ==", + "version": "7.13.17", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.17.tgz", + "integrity": "sha512-Eal4Gce4kGijo1/TGJdqp3WuhllaMLSrW6XcL0ulyUAQOuxHcCafZE8KHg9857gcTehsm/v7RcOx2+jp0Ryjsg==", "dev": true, "requires": { "@babel/template": "^7.12.13", - "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.0" + "@babel/traverse": "^7.13.17", + "@babel/types": "^7.13.17" } }, "@babel/highlight": { @@ -286,9 +286,9 @@ } }, "@babel/parser": { - "version": "7.13.15", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.15.tgz", - "integrity": "sha512-b9COtcAlVEQljy/9fbcMHpG+UIW9ReF+gpaxDHTlZd0c6/UU9ng8zdySAW9sRTzpvcdCHn6bUcbuYUgGzLAWVQ==" + "version": "7.13.16", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.16.tgz", + "integrity": "sha512-6bAg36mCwuqLO0hbR+z7PHuqWiCeP7Dzg73OpQwsAB1Eb8HnGEz5xYBzCfbu+YjoaJsJs+qheDxVAuqbt3ILEw==" }, "@babel/template": { "version": "7.12.13", @@ -302,17 +302,17 @@ } }, "@babel/traverse": { - "version": "7.13.15", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.15.tgz", - "integrity": "sha512-/mpZMNvj6bce59Qzl09fHEs8Bt8NnpEDQYleHUPZQ3wXUMvXi+HJPLars68oAbmp839fGoOkv2pSL2z9ajCIaQ==", + "version": "7.13.17", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.17.tgz", + "integrity": "sha512-BMnZn0R+X6ayqm3C3To7o1j7Q020gWdqdyP50KEoVqaCO2c/Im7sYZSmVgvefp8TTMQ+9CtwuBp0Z1CZ8V3Pvg==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.13.9", + "@babel/generator": "^7.13.16", "@babel/helper-function-name": "^7.12.13", "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.13.15", - "@babel/types": "^7.13.14", + "@babel/parser": "^7.13.16", + "@babel/types": "^7.13.17", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -335,13 +335,12 @@ } }, "@babel/types": { - "version": "7.13.14", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.14.tgz", - "integrity": "sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==", + "version": "7.13.17", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.17.tgz", + "integrity": "sha512-RawydLgxbOPDlTLJNtoIypwdmAy//uQIzlKt2+iBiJaRlVuI6QLUxVAyWGNfOzp8Yu4L4lLIacoCyTNtpb4wiA==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", "to-fast-properties": "^2.0.0" } }, @@ -792,9 +791,9 @@ } }, "acorn": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.1.1.tgz", - "integrity": "sha512-xYiIVjNuqtKXMxlRMDc6mZUhXehod4a3gbZ1qRlM7icK4EbxUFNLhWoPblCvFtB2Y9CIqHP3CF/rdxLItaQv8g==", + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.2.1.tgz", + "integrity": "sha512-z716cpm5TX4uzOzILx8PavOE6C6DKshHDw1aQN52M/yNSqE9s5O8SMfyhCCfCJ3HmTL0NkVOi+8a/55T7YB3bg==", "dev": true }, "acorn-jsx": { @@ -804,9 +803,9 @@ "dev": true }, "acorn-walk": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.0.2.tgz", - "integrity": "sha512-+bpA9MJsHdZ4bgfDcpk0ozQyhhVct7rzOmO0s1IIr0AGGgKBljss8n2zp11rRP2wid5VGeh04CgeKzgat5/25A==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.1.0.tgz", + "integrity": "sha512-mjmzmv12YIG/G8JQdQuz2MUDShEJ6teYpT5bmWA4q7iwoGen8xtt3twF3OvzIUl+Q06aWIjvnwQUKvQ6TtMRjg==", "dev": true }, "agent-base": { @@ -1280,14 +1279,14 @@ } }, "browserslist": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.4.tgz", - "integrity": "sha512-d7rCxYV8I9kj41RH8UKYnvDYCRENUlHRgyXy/Rhr/1BaeLGfiCptEdFE8MIrvGfWbBFNjVYx76SQWvNX1j+/cQ==", + "version": "4.16.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.5.tgz", + "integrity": "sha512-C2HAjrM1AI/djrpAUU/tr4pml1DqLIzJKSLDBXBrNErl9ZCCTXdhwxdJjYc16953+mBWf7Lw+uUJgpgb8cN71A==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001208", + "caniuse-lite": "^1.0.30001214", "colorette": "^1.2.2", - "electron-to-chromium": "^1.3.712", + "electron-to-chromium": "^1.3.719", "escalade": "^3.1.1", "node-releases": "^1.1.71" } @@ -1431,16 +1430,6 @@ "write-file-atomic": "^3.0.0" } }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -1473,9 +1462,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001209", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001209.tgz", - "integrity": "sha512-2Ktt4OeRM7EM/JaOZjuLzPYAIqmbwQMNnYbgooT+icoRGrKOyAxA1xhlnotBD1KArRSPsuJp3TdYcZYrL7qNxA==", + "version": "1.0.30001214", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001214.tgz", + "integrity": "sha512-O2/SCpuaU3eASWVaesQirZv1MSjUNOvmugaD8zNSJqw6Vv5SGwoOpA9LJs3pNPfM745nxqPvfZY3MQKY4AKHYg==", "dev": true }, "catharsis": { @@ -1487,9 +1476,9 @@ } }, "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -2566,9 +2555,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.717", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.717.tgz", - "integrity": "sha512-OfzVPIqD1MkJ7fX+yTl2nKyOE4FReeVfMCzzxQS+Kp43hZYwHwThlGP+EGIZRXJsxCM7dqo8Y65NOX/HP12iXQ==", + "version": "1.3.720", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.720.tgz", + "integrity": "sha512-B6zLTxxaOFP4WZm6DrvgRk8kLFYWNhQ5TrHMC0l5WtkMXhU5UbnvWoTfeEwqOruUSlNMhVLfYak7REX6oC5Yfw==", "dev": true }, "emittery": { @@ -2813,9 +2802,9 @@ } }, "eslint": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.24.0.tgz", - "integrity": "sha512-k9gaHeHiFmGCDQ2rEfvULlSLruz6tgfA8DEn+rY9/oYPFFTlz55mM/Q/Rij1b2Y42jwZiK3lXvNTw6w6TXzcKQ==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.25.0.tgz", + "integrity": "sha512-TVpSovpvCNpLURIScDRB6g5CYu/ZFq9GfX2hLNIV4dSBKxIWojeDODvYl3t0k0VtMxYeR8OXPCFE5+oHMlGfhw==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", @@ -2975,9 +2964,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "32.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-32.3.0.tgz", - "integrity": "sha512-zyx7kajDK+tqS1bHuY5sapkad8P8KT0vdd/lE55j47VPG2MeenSYuIY/M/Pvmzq5g0+3JB+P3BJGUXmHxtuKPQ==", + "version": "32.3.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-32.3.1.tgz", + "integrity": "sha512-Xcbc8Cr79QveH+MndVwtZ3uafDdXyrsIkS8lP71Fhn5Qi1Lr8TU2QZNkMYIJSvmuLqDB5Jj/VVULMCvaBZBkvg==", "dev": true, "requires": { "comment-parser": "1.1.2", @@ -3480,17 +3469,6 @@ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, - "get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - } - }, "get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", @@ -3630,12 +3608,6 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, - "has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", - "dev": true - }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -3903,12 +3875,6 @@ "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true }, - "indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", - "dev": true - }, "infer-owner": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", @@ -3972,15 +3938,6 @@ "binary-extensions": "^2.0.0" } }, - "is-boolean-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz", - "integrity": "sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA==", - "dev": true, - "requires": { - "call-bind": "^1.0.0" - } - }, "is-ci": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", @@ -3991,9 +3948,9 @@ } }, "is-core-module": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", - "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.3.0.tgz", + "integrity": "sha512-xSphU2KG9867tsYdLD4RWQ1VqdFl4HTO9Thf3I/3dLEfr0dbPTWKsuCKrgqMljg4nPE+Gq0VCnzT3gr0CyBmsw==", "requires": { "has": "^1.0.3" } @@ -4066,12 +4023,6 @@ "lodash.isfinite": "^3.3.2" } }, - "is-number-object": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", - "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==", - "dev": true - }, "is-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", @@ -4114,12 +4065,6 @@ "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", "dev": true }, - "is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", - "dev": true - }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -4826,9 +4771,9 @@ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, "mem": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.0.tgz", - "integrity": "sha512-FIkgXo0kTi3XpvaznV5Muk6Y6w8SkdmRXcY7ZLonQesuYezp59UooLxAVBcGuN6PH2tXN84mR3vyzSc6oSMUfA==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz", + "integrity": "sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==", "dev": true, "requires": { "map-age-cleaner": "^0.1.3", @@ -5231,9 +5176,9 @@ "dev": true }, "npm-bundled": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.1.tgz", - "integrity": "sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", + "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", "requires": { "npm-normalize-package-bin": "^1.0.1" } @@ -5997,9 +5942,9 @@ } }, "postcss": { - "version": "8.2.10", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.10.tgz", - "integrity": "sha512-b/h7CPV7QEdrqIxtAf2j31U5ef05uBDuvoXv6L51Q4rcS1jdlXAVKJv+atCFdUXYl9dyTHGyoMzIepwowRJjFw==", + "version": "8.2.12", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.12.tgz", + "integrity": "sha512-BJnGT5+0q2tzvs6oQfnY2NpEJ7rIXNfBnZtQOKCIsweeWXBXeDd5k31UgTdS3d/c02ouspufn37mTaHWkJyzMQ==", "dev": true, "requires": { "colorette": "^1.2.2", @@ -6059,14 +6004,12 @@ } }, "postcss-selector-parser": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz", - "integrity": "sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.5.tgz", + "integrity": "sha512-aFYPoYmXbZ1V6HZaSvat08M97A8HqO6Pjz+PiNpw/DhuRrC72XWAdp3hL6wusDCN31sSmcZyMGa2hZEuX+Xfhg==", "dev": true, "requires": { "cssesc": "^3.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1", "util-deprecate": "^1.0.2" } }, @@ -6590,9 +6533,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.10", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.10.tgz", - "integrity": "sha512-Nx0pcWoonAkn7CRp0aE/hket1UP97GiR1IFw3kcjV3pnenhWgZEWUf0ZcfPOV2fK52fnOcK3JdC/YYZ9E47DTQ==", + "version": "1.32.11", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.11.tgz", + "integrity": "sha512-O9tRcob/fegUVSIV1ihLLZcftIOh0AF1VpKgusUfLqnb2jQ0GLDwI5ivv1FYWivGv8eZ/AwntTyTzjcHu0c/qw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -7135,20 +7078,18 @@ } }, "table": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.1.0.tgz", - "integrity": "sha512-T4G5KMmqIk6X87gLKWyU5exPpTjLjY5KyrFWaIjv3SvgaIUGXV7UEzGEnZJdTA38/yUS6f9PlKezQ0bYXG3iIQ==", + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.5.1.tgz", + "integrity": "sha512-xGDXWTBJxahkzPQCsn1S9ESHEenU7TbMD5Iv4FeopXv/XwJyWatFjfbor+6ipI10/MNPXBYUamYukOrbPZ9L/w==", "dev": true, "requires": { "ajv": "^8.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", "lodash.clonedeep": "^4.5.0", "lodash.flatten": "^4.4.0", "lodash.truncate": "^4.4.2", "slice-ansi": "^4.0.0", - "string-width": "^4.2.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0" }, "dependencies": { "ajv": { @@ -7570,12 +7511,6 @@ "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.10.2.tgz", "integrity": "sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg==" }, - "uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", - "dev": true - }, "unique-filename": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index b41e66e5bb7..b0656437f2e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -106,7 +106,7 @@ "@ui5/server": "^2.2.9", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^4.1.0", + "chalk": "^4.1.1", "escape-string-regexp": "^4.0.0", "graceful-fs": "^4.2.6", "js-yaml": "^4.1.0", @@ -127,9 +127,9 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.0", "docdash": "^1.2.0", - "eslint": "^7.24.0", + "eslint": "^7.25.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^32.3.0", + "eslint-plugin-jsdoc": "^32.3.1", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 33d98c0b27a08e7bf088141d8b2228655c812212 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 2 May 2021 02:20:54 +0000 Subject: [PATCH 0519/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 176 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 89 insertions(+), 89 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 759e807a103..17b6c404a47 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,26 +13,26 @@ } }, "@babel/compat-data": { - "version": "7.13.15", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.15.tgz", - "integrity": "sha512-ltnibHKR1VnrU4ymHyQ/CXtNXI6yZC0oJThyW78Hft8XndANwi+9H+UIklBDraIjFEJzw8wmcM427oDd9KS5wA==", + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.0.tgz", + "integrity": "sha512-vu9V3uMM/1o5Hl5OekMUowo3FqXLJSw+s+66nt0fSWVWTtmosdzn45JHOB3cPtZoe6CTBDzvSw0RdOY85Q37+Q==", "dev": true }, "@babel/core": { - "version": "7.13.16", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.16.tgz", - "integrity": "sha512-sXHpixBiWWFti0AV2Zq7avpTasr6sIAu7Y396c608541qAU2ui4a193m0KSQmfPSKFZLnQ3cvlKDOm3XkuXm3Q==", + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.0.tgz", + "integrity": "sha512-8YqpRig5NmIHlMLw09zMlPTvUVMILjqCOtVgu+TVNWEBvy9b5I3RRyhqnrV4hjgEK7n8P9OqvkWJAFmEL6Wwfw==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.13.16", + "@babel/generator": "^7.14.0", "@babel/helper-compilation-targets": "^7.13.16", - "@babel/helper-module-transforms": "^7.13.14", - "@babel/helpers": "^7.13.16", - "@babel/parser": "^7.13.16", + "@babel/helper-module-transforms": "^7.14.0", + "@babel/helpers": "^7.14.0", + "@babel/parser": "^7.14.0", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.13.15", - "@babel/types": "^7.13.16", + "@babel/traverse": "^7.14.0", + "@babel/types": "^7.14.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.13.16", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.13.16.tgz", - "integrity": "sha512-grBBR75UnKOcUWMp8WoDxNsWCFl//XCK6HWTrBQKTr5SV9f5g0pNOjdyzi/DTBv12S9GnYPInIXQBTky7OXEMg==", + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.0.tgz", + "integrity": "sha512-C6u00HbmsrNPug6A+CiNl8rEys7TsdcXwg12BHi2ca5rUfAs3+UwZsuDQSXnc+wCElCXMB8gMaJ3YXDdh8fAlg==", "dev": true, "requires": { - "@babel/types": "^7.13.16", + "@babel/types": "^7.14.0", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -148,19 +148,19 @@ } }, "@babel/helper-module-transforms": { - "version": "7.13.14", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.14.tgz", - "integrity": "sha512-QuU/OJ0iAOSIatyVZmfqB0lbkVP0kDRiKj34xy+QNsnVZi/PA6BoSoreeqnxxa9EHFAIL0R9XOaAR/G9WlIy5g==", + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.0.tgz", + "integrity": "sha512-L40t9bxIuGOfpIGA3HNkJhU9qYrf4y5A5LUSw7rGMSn+pcG8dfJ0g6Zval6YJGd2nEjI7oP00fRdnhLKndx6bw==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.13.12", "@babel/helper-replace-supers": "^7.13.12", "@babel/helper-simple-access": "^7.13.12", "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/helper-validator-identifier": "^7.12.11", + "@babel/helper-validator-identifier": "^7.14.0", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.13.13", - "@babel/types": "^7.13.14" + "@babel/traverse": "^7.14.0", + "@babel/types": "^7.14.0" } }, "@babel/helper-optimise-call-expression": { @@ -203,9 +203,9 @@ } }, "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", + "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==" }, "@babel/helper-validator-option": { "version": "7.12.17", @@ -214,22 +214,22 @@ "dev": true }, "@babel/helpers": { - "version": "7.13.17", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.17.tgz", - "integrity": "sha512-Eal4Gce4kGijo1/TGJdqp3WuhllaMLSrW6XcL0ulyUAQOuxHcCafZE8KHg9857gcTehsm/v7RcOx2+jp0Ryjsg==", + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.0.tgz", + "integrity": "sha512-+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg==", "dev": true, "requires": { "@babel/template": "^7.12.13", - "@babel/traverse": "^7.13.17", - "@babel/types": "^7.13.17" + "@babel/traverse": "^7.14.0", + "@babel/types": "^7.14.0" } }, "@babel/highlight": { - "version": "7.13.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz", - "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==", + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz", + "integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==", "requires": { - "@babel/helper-validator-identifier": "^7.12.11", + "@babel/helper-validator-identifier": "^7.14.0", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -286,9 +286,9 @@ } }, "@babel/parser": { - "version": "7.13.16", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.16.tgz", - "integrity": "sha512-6bAg36mCwuqLO0hbR+z7PHuqWiCeP7Dzg73OpQwsAB1Eb8HnGEz5xYBzCfbu+YjoaJsJs+qheDxVAuqbt3ILEw==" + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.0.tgz", + "integrity": "sha512-AHbfoxesfBALg33idaTBVUkLnfXtsgvJREf93p4p0Lwsz4ppfE7g1tpEXVm4vrxUcH4DVhAa9Z1m1zqf9WUC7Q==" }, "@babel/template": { "version": "7.12.13", @@ -302,17 +302,17 @@ } }, "@babel/traverse": { - "version": "7.13.17", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.17.tgz", - "integrity": "sha512-BMnZn0R+X6ayqm3C3To7o1j7Q020gWdqdyP50KEoVqaCO2c/Im7sYZSmVgvefp8TTMQ+9CtwuBp0Z1CZ8V3Pvg==", + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.0.tgz", + "integrity": "sha512-dZ/a371EE5XNhTHomvtuLTUyx6UEoJmYX+DT5zBCQN3McHemsuIaKKYqsc/fs26BEkHs/lBZy0J571LP5z9kQA==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.13.16", + "@babel/generator": "^7.14.0", "@babel/helper-function-name": "^7.12.13", "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.13.16", - "@babel/types": "^7.13.17", + "@babel/parser": "^7.14.0", + "@babel/types": "^7.14.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -335,12 +335,12 @@ } }, "@babel/types": { - "version": "7.13.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.17.tgz", - "integrity": "sha512-RawydLgxbOPDlTLJNtoIypwdmAy//uQIzlKt2+iBiJaRlVuI6QLUxVAyWGNfOzp8Yu4L4lLIacoCyTNtpb4wiA==", + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.0.tgz", + "integrity": "sha512-O2LVLdcnWplaGxiPBz12d0HcdN8QdxdsWYhz5LSeuukV/5mn2xUUc3gBeU4QBYPJ18g/UToe8F532XJ608prmg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.12.11", + "@babel/helper-validator-identifier": "^7.14.0", "to-fast-properties": "^2.0.0" } }, @@ -791,9 +791,9 @@ } }, "acorn": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.2.1.tgz", - "integrity": "sha512-z716cpm5TX4uzOzILx8PavOE6C6DKshHDw1aQN52M/yNSqE9s5O8SMfyhCCfCJ3HmTL0NkVOi+8a/55T7YB3bg==", + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.2.2.tgz", + "integrity": "sha512-VrMS8kxT0e7J1EX0p6rI/E0FbfOVcvBpbIqHThFv+f8YrZIlMfVotYcXKVPmTvPW8sW5miJzfUFrrvthUZg8VQ==", "dev": true }, "acorn-jsx": { @@ -1279,14 +1279,14 @@ } }, "browserslist": { - "version": "4.16.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.5.tgz", - "integrity": "sha512-C2HAjrM1AI/djrpAUU/tr4pml1DqLIzJKSLDBXBrNErl9ZCCTXdhwxdJjYc16953+mBWf7Lw+uUJgpgb8cN71A==", + "version": "4.16.6", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", + "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001214", + "caniuse-lite": "^1.0.30001219", "colorette": "^1.2.2", - "electron-to-chromium": "^1.3.719", + "electron-to-chromium": "^1.3.723", "escalade": "^3.1.1", "node-releases": "^1.1.71" } @@ -1462,9 +1462,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001214", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001214.tgz", - "integrity": "sha512-O2/SCpuaU3eASWVaesQirZv1MSjUNOvmugaD8zNSJqw6Vv5SGwoOpA9LJs3pNPfM745nxqPvfZY3MQKY4AKHYg==", + "version": "1.0.30001219", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001219.tgz", + "integrity": "sha512-c0yixVG4v9KBc/tQ2rlbB3A/bgBFRvl8h8M4IeUbqCca4gsiCfvtaheUssbnux/Mb66Vjz7x8yYjDgYcNQOhyQ==", "dev": true }, "catharsis": { @@ -1858,9 +1858,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.1.2.tgz", - "integrity": "sha512-AOdq0i8ghZudnYv8RUnHrhTgafUGs61Rdz9jemU5x2lnZwAWyOq7vySo626K59e1fVKH1xSRorJwPVRLSWOoAQ==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.1.5.tgz", + "integrity": "sha512-RePCE4leIhBlmrqiYTvaqEeGYg7qpSl4etaIabKtdOQVi+mSTIBBklGUwIr79GXYnl3LpMwmDw4KeR2stNc6FA==", "dev": true }, "common-path-prefix": { @@ -2555,9 +2555,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.720", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.720.tgz", - "integrity": "sha512-B6zLTxxaOFP4WZm6DrvgRk8kLFYWNhQ5TrHMC0l5WtkMXhU5UbnvWoTfeEwqOruUSlNMhVLfYak7REX6oC5Yfw==", + "version": "1.3.725", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.725.tgz", + "integrity": "sha512-2BbeAESz7kc6KBzs7WVrMc1BY5waUphk4D4DX5dSQXJhsc3tP5ZFaiyuL0AB7vUKzDYpIeYwTYlEfxyjsGUrhw==", "dev": true }, "emittery": { @@ -2964,17 +2964,17 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "32.3.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-32.3.1.tgz", - "integrity": "sha512-Xcbc8Cr79QveH+MndVwtZ3uafDdXyrsIkS8lP71Fhn5Qi1Lr8TU2QZNkMYIJSvmuLqDB5Jj/VVULMCvaBZBkvg==", + "version": "32.3.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-32.3.4.tgz", + "integrity": "sha512-xSWfsYvffXnN0OkwLnB7MoDDDDjqcp46W7YlY1j7JyfAQBQ+WnGCfLov3gVNZjUGtK9Otj8mEhTZTqJu4QtIGA==", "dev": true, "requires": { - "comment-parser": "1.1.2", + "comment-parser": "1.1.5", "debug": "^4.3.1", "jsdoctypeparser": "^9.0.0", - "lodash": "^4.17.20", + "lodash": "^4.17.21", "regextras": "^0.7.1", - "semver": "^7.3.4", + "semver": "^7.3.5", "spdx-expression-parse": "^3.0.1" }, "dependencies": { @@ -3347,9 +3347,9 @@ } }, "follow-redirects": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.3.tgz", - "integrity": "sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA==" + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.0.tgz", + "integrity": "sha512-0vRwd7RKQBTt+mgu87mtYeofLFZpTas2S9zY+jIeuLJMNvudIgF52nr19q40HOwH5RrhWIPuj9puybzSJiRrVg==" }, "foreground-child": { "version": "2.0.0", @@ -5942,9 +5942,9 @@ } }, "postcss": { - "version": "8.2.12", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.12.tgz", - "integrity": "sha512-BJnGT5+0q2tzvs6oQfnY2NpEJ7rIXNfBnZtQOKCIsweeWXBXeDd5k31UgTdS3d/c02ouspufn37mTaHWkJyzMQ==", + "version": "8.2.13", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.13.tgz", + "integrity": "sha512-FCE5xLH+hjbzRdpbRb1IMCvPv9yZx2QnDarBEYSN0N0HYk+TcXsEhwdFcFb+SRWOKzKGErhIEbBK2ogyLdTtfQ==", "dev": true, "requires": { "colorette": "^1.2.2", @@ -6533,9 +6533,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.11", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.11.tgz", - "integrity": "sha512-O9tRcob/fegUVSIV1ihLLZcftIOh0AF1VpKgusUfLqnb2jQ0GLDwI5ivv1FYWivGv8eZ/AwntTyTzjcHu0c/qw==", + "version": "1.32.12", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.12.tgz", + "integrity": "sha512-zmXn03k3hN0KaiVTjohgkg98C3UowhL1/VSGdj4/VAAiMKGQOE80PFPxFP2Kyq0OUskPKcY5lImkhBKEHlypJA==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -7078,9 +7078,9 @@ } }, "table": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.5.1.tgz", - "integrity": "sha512-xGDXWTBJxahkzPQCsn1S9ESHEenU7TbMD5Iv4FeopXv/XwJyWatFjfbor+6ipI10/MNPXBYUamYukOrbPZ9L/w==", + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.6.0.tgz", + "integrity": "sha512-iZMtp5tUvcnAdtHpZTWLPF0M7AgiQsURR2DwmxnJwSy8I3+cY+ozzVvYha3BOLG2TB+L0CqjIz+91htuj6yCXg==", "dev": true, "requires": { "ajv": "^8.0.1", @@ -7093,9 +7093,9 @@ }, "dependencies": { "ajv": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.1.0.tgz", - "integrity": "sha512-B/Sk2Ix7A36fs/ZkuGLIR86EdjbgR6fsAcbx9lOP/QBSXujDNbVmIS/U4Itz5k8fPFDeVZl/zQ/gJW4Jrq6XjQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.2.0.tgz", + "integrity": "sha512-WSNGFuyWd//XO8n/m/EaOlNLtO0yL8EXT/74LqT4khdhpZjP7lkj/kT5uwRmGitKEVp/Oj7ZUHeGfPtgHhQ5CA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7349,9 +7349,9 @@ } }, "terser": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.6.1.tgz", - "integrity": "sha512-yv9YLFQQ+3ZqgWCUk+pvNJwgUTdlIxUk1WTN+RnaFJe2L7ipG2csPT0ra2XRm7Cs8cxN7QXmK1rFzEwYEQkzXw==", + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz", + "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", diff --git a/packages/project/package.json b/packages/project/package.json index b0656437f2e..32b0043a63c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.25.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^32.3.1", + "eslint-plugin-jsdoc": "^32.3.4", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 152624fe46bab7de993af878c373cb1e7438f7d1 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 9 May 2021 02:21:18 +0000 Subject: [PATCH 0520/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 83 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 42 insertions(+), 43 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 17b6c404a47..9ea7b64f715 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.0.tgz", - "integrity": "sha512-C6u00HbmsrNPug6A+CiNl8rEys7TsdcXwg12BHi2ca5rUfAs3+UwZsuDQSXnc+wCElCXMB8gMaJ3YXDdh8fAlg==", + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.1.tgz", + "integrity": "sha512-TMGhsXMXCP/O1WtQmZjpEYDhCYC9vFhayWZPJSZCGkPJgUqX0rF0wwtrYvnzVxIjcF80tkUertXVk5cwqi5cAQ==", "dev": true, "requires": { - "@babel/types": "^7.14.0", + "@babel/types": "^7.14.1", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -286,9 +286,9 @@ } }, "@babel/parser": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.0.tgz", - "integrity": "sha512-AHbfoxesfBALg33idaTBVUkLnfXtsgvJREf93p4p0Lwsz4ppfE7g1tpEXVm4vrxUcH4DVhAa9Z1m1zqf9WUC7Q==" + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.1.tgz", + "integrity": "sha512-muUGEKu8E/ftMTPlNp+mc6zL3E9zKWmF5sDHZ5MSsoTP9Wyz64AhEf9kD08xYJ7w6Hdcu8H550ircnPyWSIF0Q==" }, "@babel/template": { "version": "7.12.13", @@ -335,9 +335,9 @@ } }, "@babel/types": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.0.tgz", - "integrity": "sha512-O2LVLdcnWplaGxiPBz12d0HcdN8QdxdsWYhz5LSeuukV/5mn2xUUc3gBeU4QBYPJ18g/UToe8F532XJ608prmg==", + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.1.tgz", + "integrity": "sha512-S13Qe85fzLs3gYRUnrpyeIrBJIMYv33qSTg1qoBwiG6nPKwUWAD9odSzWhEedpwOIzSEI6gbdQIWEMiCI42iBA==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.0", @@ -362,9 +362,9 @@ } }, "@eslint/eslintrc": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz", - "integrity": "sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.1.tgz", + "integrity": "sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -791,9 +791,9 @@ } }, "acorn": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.2.2.tgz", - "integrity": "sha512-VrMS8kxT0e7J1EX0p6rI/E0FbfOVcvBpbIqHThFv+f8YrZIlMfVotYcXKVPmTvPW8sW5miJzfUFrrvthUZg8VQ==", + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.2.4.tgz", + "integrity": "sha512-Ibt84YwBDDA890eDiDCEqcbwvHlBvzzDkU2cGBBDDI1QWT12jTiXIOn2CIw5KK4i6N5Z2HUxwYjzriDyqaqqZg==", "dev": true }, "acorn-jsx": { @@ -1462,9 +1462,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001219", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001219.tgz", - "integrity": "sha512-c0yixVG4v9KBc/tQ2rlbB3A/bgBFRvl8h8M4IeUbqCca4gsiCfvtaheUssbnux/Mb66Vjz7x8yYjDgYcNQOhyQ==", + "version": "1.0.30001223", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001223.tgz", + "integrity": "sha512-k/RYs6zc/fjbxTjaWZemeSmOjO0JJV+KguOBA3NwPup8uzxM1cMhR2BD9XmO86GuqaqTCO8CgkgH9Rz//vdDiA==", "dev": true }, "catharsis": { @@ -2555,9 +2555,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.725", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.725.tgz", - "integrity": "sha512-2BbeAESz7kc6KBzs7WVrMc1BY5waUphk4D4DX5dSQXJhsc3tP5ZFaiyuL0AB7vUKzDYpIeYwTYlEfxyjsGUrhw==", + "version": "1.3.727", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.727.tgz", + "integrity": "sha512-Mfz4FIB4FSvEwBpDfdipRIrwd6uo8gUDoRDF4QEYb4h4tSuI3ov594OrjU6on042UlFHouIJpClDODGkPcBSbg==", "dev": true }, "emittery": { @@ -2802,13 +2802,13 @@ } }, "eslint": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.25.0.tgz", - "integrity": "sha512-TVpSovpvCNpLURIScDRB6g5CYu/ZFq9GfX2hLNIV4dSBKxIWojeDODvYl3t0k0VtMxYeR8OXPCFE5+oHMlGfhw==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.26.0.tgz", + "integrity": "sha512-4R1ieRf52/izcZE7AlLy56uIHHDLT74Yzz2Iv2l6kDaYvEu9x+wMB5dZArVL8SYGXSYV2YAg70FcW5Y5nGGNIg==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.0", + "@eslint/eslintrc": "^0.4.1", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -3031,9 +3031,9 @@ } }, "eslint-visitor-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", - "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true }, "espree": { @@ -3495,9 +3495,9 @@ } }, "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -3823,9 +3823,9 @@ "dev": true }, "ignore-walk": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz", - "integrity": "sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz", + "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", "requires": { "minimatch": "^3.0.4" } @@ -5942,9 +5942,9 @@ } }, "postcss": { - "version": "8.2.13", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.13.tgz", - "integrity": "sha512-FCE5xLH+hjbzRdpbRb1IMCvPv9yZx2QnDarBEYSN0N0HYk+TcXsEhwdFcFb+SRWOKzKGErhIEbBK2ogyLdTtfQ==", + "version": "8.2.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.14.tgz", + "integrity": "sha512-+jD0ZijcvyCqPQo/m/CW0UcARpdFylq04of+Q7RKX6f/Tu+dvpUI/9Sp81+i6/vJThnOBX09Quw0ZLOVwpzX3w==", "dev": true, "requires": { "colorette": "^1.2.2", @@ -7078,14 +7078,13 @@ } }, "table": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.6.0.tgz", - "integrity": "sha512-iZMtp5tUvcnAdtHpZTWLPF0M7AgiQsURR2DwmxnJwSy8I3+cY+ozzVvYha3BOLG2TB+L0CqjIz+91htuj6yCXg==", + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.0.tgz", + "integrity": "sha512-SAM+5p6V99gYiiy2gT5ArdzgM1dLDed0nkrWmG6Fry/bUS/m9x83BwpJUOf1Qj/x2qJd+thL6IkIx7qPGRxqBw==", "dev": true, "requires": { "ajv": "^8.0.1", "lodash.clonedeep": "^4.5.0", - "lodash.flatten": "^4.4.0", "lodash.truncate": "^4.4.2", "slice-ansi": "^4.0.0", "string-width": "^4.2.0", diff --git a/packages/project/package.json b/packages/project/package.json index 32b0043a63c..4dc11bd01c7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.0", "docdash": "^1.2.0", - "eslint": "^7.25.0", + "eslint": "^7.26.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^32.3.4", "istanbul-lib-coverage": "^3.0.0", From 4f3168f2214960f9f859f1fd82b6a4c02f640019 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 16 May 2021 02:23:05 +0000 Subject: [PATCH 0521/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 181 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 89 insertions(+), 96 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9ea7b64f715..f04be538376 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -19,20 +19,20 @@ "dev": true }, "@babel/core": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.0.tgz", - "integrity": "sha512-8YqpRig5NmIHlMLw09zMlPTvUVMILjqCOtVgu+TVNWEBvy9b5I3RRyhqnrV4hjgEK7n8P9OqvkWJAFmEL6Wwfw==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.2.tgz", + "integrity": "sha512-OgC1mON+l4U4B4wiohJlQNUU3H73mpTyYY3j/c8U9dr9UagGGSm+WFpzjy/YLdoyjiG++c1kIDgxCo/mLwQJeQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.14.0", + "@babel/generator": "^7.14.2", "@babel/helper-compilation-targets": "^7.13.16", - "@babel/helper-module-transforms": "^7.14.0", + "@babel/helper-module-transforms": "^7.14.2", "@babel/helpers": "^7.14.0", - "@babel/parser": "^7.14.0", + "@babel/parser": "^7.14.2", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.0", - "@babel/types": "^7.14.0", + "@babel/traverse": "^7.14.2", + "@babel/types": "^7.14.2", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.1.tgz", - "integrity": "sha512-TMGhsXMXCP/O1WtQmZjpEYDhCYC9vFhayWZPJSZCGkPJgUqX0rF0wwtrYvnzVxIjcF80tkUertXVk5cwqi5cAQ==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.2.tgz", + "integrity": "sha512-OnADYbKrffDVai5qcpkMxQ7caomHOoEwjkouqnN2QhydAjowFAZcsdecFIRUBdb+ZcruwYE4ythYmF1UBZU5xQ==", "dev": true, "requires": { - "@babel/types": "^7.14.1", + "@babel/types": "^7.14.2", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -110,14 +110,14 @@ } }, "@babel/helper-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", - "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz", + "integrity": "sha512-NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ==", "dev": true, "requires": { "@babel/helper-get-function-arity": "^7.12.13", "@babel/template": "^7.12.13", - "@babel/types": "^7.12.13" + "@babel/types": "^7.14.2" } }, "@babel/helper-get-function-arity": { @@ -148,9 +148,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.0.tgz", - "integrity": "sha512-L40t9bxIuGOfpIGA3HNkJhU9qYrf4y5A5LUSw7rGMSn+pcG8dfJ0g6Zval6YJGd2nEjI7oP00fRdnhLKndx6bw==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz", + "integrity": "sha512-OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.13.12", @@ -159,8 +159,8 @@ "@babel/helper-split-export-declaration": "^7.12.13", "@babel/helper-validator-identifier": "^7.14.0", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.0", - "@babel/types": "^7.14.0" + "@babel/traverse": "^7.14.2", + "@babel/types": "^7.14.2" } }, "@babel/helper-optimise-call-expression": { @@ -286,9 +286,9 @@ } }, "@babel/parser": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.1.tgz", - "integrity": "sha512-muUGEKu8E/ftMTPlNp+mc6zL3E9zKWmF5sDHZ5MSsoTP9Wyz64AhEf9kD08xYJ7w6Hdcu8H550ircnPyWSIF0Q==" + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.2.tgz", + "integrity": "sha512-IoVDIHpsgE/fu7eXBeRWt8zLbDrSvD7H1gpomOkPpBoEN8KCruCqSDdqo8dddwQQrui30KSvQBaMUOJiuFu6QQ==" }, "@babel/template": { "version": "7.12.13", @@ -302,17 +302,17 @@ } }, "@babel/traverse": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.0.tgz", - "integrity": "sha512-dZ/a371EE5XNhTHomvtuLTUyx6UEoJmYX+DT5zBCQN3McHemsuIaKKYqsc/fs26BEkHs/lBZy0J571LP5z9kQA==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.2.tgz", + "integrity": "sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.14.0", - "@babel/helper-function-name": "^7.12.13", + "@babel/generator": "^7.14.2", + "@babel/helper-function-name": "^7.14.2", "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.14.0", - "@babel/types": "^7.14.0", + "@babel/parser": "^7.14.2", + "@babel/types": "^7.14.2", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -335,9 +335,9 @@ } }, "@babel/types": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.1.tgz", - "integrity": "sha512-S13Qe85fzLs3gYRUnrpyeIrBJIMYv33qSTg1qoBwiG6nPKwUWAD9odSzWhEedpwOIzSEI6gbdQIWEMiCI42iBA==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.2.tgz", + "integrity": "sha512-SdjAG/3DikRHpUOjxZgnkbR11xUlyDMUFJdvnIgZEE16mqmY0BINMmc4//JMJglEmn6i7sq6p+mGrFWyZ98EEw==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.0", @@ -1311,12 +1311,6 @@ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, - "builtin-modules": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", - "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", - "dev": true - }, "builtins": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", @@ -1462,17 +1456,17 @@ } }, "caniuse-lite": { - "version": "1.0.30001223", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001223.tgz", - "integrity": "sha512-k/RYs6zc/fjbxTjaWZemeSmOjO0JJV+KguOBA3NwPup8uzxM1cMhR2BD9XmO86GuqaqTCO8CgkgH9Rz//vdDiA==", + "version": "1.0.30001228", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001228.tgz", + "integrity": "sha512-QQmLOGJ3DEgokHbMSA8cj2a+geXqmnpyOFT0lhQV6P3/YOJvGDEwoedcwxEQ30gJIwIIunHIicunJ2rzK5gB2A==", "dev": true }, "catharsis": { - "version": "0.8.11", - "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.8.11.tgz", - "integrity": "sha512-a+xUyMV7hD1BrDQA/3iPV7oc+6W26BgVJO05PGEoatMyIuPScQKsde6i3YorWX1qs+AZjnJ18NqdKoCtKiNh1g==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.9.0.tgz", + "integrity": "sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==", "requires": { - "lodash": "^4.17.14" + "lodash": "^4.17.15" } }, "chalk": { @@ -2304,15 +2298,14 @@ "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" }, "depcheck": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.0.tgz", - "integrity": "sha512-zn63rsHvFfWVgHV/SW4wXT5vqjQpCIGukpnoU2IspU3Lp0Va8/9wFWAsd2V1VzU+AFiFZGdjHZU9nLZQra+1Tg==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.1.tgz", + "integrity": "sha512-ecX8zIXE9TlVu14ebnZTwgIeP/t/Rq2WpowjWbMuqG6ayozVVf9zKW4EBEQ/HsS1dxhY+J9+UiRetu2UMxG9ww==", "dev": true, "requires": { "@babel/parser": "^7.12.5", "@babel/traverse": "^7.12.5", "@vue/compiler-sfc": "^3.0.5", - "builtin-modules": "^3.1.0", "camelcase": "^6.2.0", "cosmiconfig": "^7.0.0", "debug": "^4.2.0", @@ -2555,9 +2548,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.727", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.727.tgz", - "integrity": "sha512-Mfz4FIB4FSvEwBpDfdipRIrwd6uo8gUDoRDF4QEYb4h4tSuI3ov594OrjU6on042UlFHouIJpClDODGkPcBSbg==", + "version": "1.3.728", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.728.tgz", + "integrity": "sha512-SHv4ziXruBpb1Nz4aTuqEHBYi/9GNCJMYIJgDEXrp/2V01nFXMNFUTli5Z85f5ivSkioLilQatqBYFB44wNJrA==", "dev": true }, "emittery": { @@ -3347,9 +3340,9 @@ } }, "follow-redirects": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.0.tgz", - "integrity": "sha512-0vRwd7RKQBTt+mgu87mtYeofLFZpTas2S9zY+jIeuLJMNvudIgF52nr19q40HOwH5RrhWIPuj9puybzSJiRrVg==" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", + "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==" }, "foreground-child": { "version": "2.0.0", @@ -3948,9 +3941,9 @@ } }, "is-core-module": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.3.0.tgz", - "integrity": "sha512-xSphU2KG9867tsYdLD4RWQ1VqdFl4HTO9Thf3I/3dLEfr0dbPTWKsuCKrgqMljg4nPE+Gq0VCnzT3gr0CyBmsw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", + "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", "requires": { "has": "^1.0.3" } @@ -4266,24 +4259,24 @@ } }, "jsdoc": { - "version": "3.6.6", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.6.tgz", - "integrity": "sha512-znR99e1BHeyEkSvgDDpX0sTiTu+8aQyDl9DawrkOGZTTW8hv0deIFXx87114zJ7gRaDZKVQD/4tr1ifmJp9xhQ==", + "version": "3.6.7", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.7.tgz", + "integrity": "sha512-sxKt7h0vzCd+3Y81Ey2qinupL6DpRSZJclS04ugHDNmRUXGzqicMJ6iwayhSA0S0DwwX30c5ozyUthr1QKF6uw==", "requires": { "@babel/parser": "^7.9.4", "bluebird": "^3.7.2", - "catharsis": "^0.8.11", + "catharsis": "^0.9.0", "escape-string-regexp": "^2.0.0", "js2xmlparser": "^4.0.1", "klaw": "^3.0.0", "markdown-it": "^10.0.0", "markdown-it-anchor": "^5.2.7", - "marked": "^0.8.2", + "marked": "^2.0.3", "mkdirp": "^1.0.4", "requizzle": "^0.2.3", "strip-json-comments": "^3.1.0", "taffydb": "2.6.2", - "underscore": "~1.10.2" + "underscore": "~1.13.1" }, "dependencies": { "escape-string-regexp": { @@ -4738,9 +4731,9 @@ "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==" }, "marked": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.8.2.tgz", - "integrity": "sha512-EGwzEeCcLniFX51DhTpmTom+dSA/MG/OBUDjnWtHbEnjAH180VzUeAw+oE4+Zv+CoYBWyRlYOTR0N8SO9R1PVw==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.3.tgz", + "integrity": "sha512-5otztIIcJfPc2qGTN8cVtOJEjNJZ0jwa46INMagrYfk0EvqtRuEHLsEe0LrFS0/q+ZRKT0+kXK7P2T1AN5lWRA==" }, "matcher": { "version": "3.0.0", @@ -5060,9 +5053,9 @@ } }, "nanoid": { - "version": "3.1.22", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.22.tgz", - "integrity": "sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ==", + "version": "3.1.23", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", + "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==", "dev": true }, "natural-compare": { @@ -5131,9 +5124,9 @@ } }, "node-releases": { - "version": "1.1.71", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz", - "integrity": "sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==", + "version": "1.1.72", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.72.tgz", + "integrity": "sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==", "dev": true }, "nopt": { @@ -5942,13 +5935,13 @@ } }, "postcss": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.14.tgz", - "integrity": "sha512-+jD0ZijcvyCqPQo/m/CW0UcARpdFylq04of+Q7RKX6f/Tu+dvpUI/9Sp81+i6/vJThnOBX09Quw0ZLOVwpzX3w==", + "version": "8.2.15", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.15.tgz", + "integrity": "sha512-2zO3b26eJD/8rb106Qu2o7Qgg52ND5HPjcyQiK2B98O388h43A448LCslC0dI2P97wCAQRJsFvwTRcXxTKds+Q==", "dev": true, "requires": { "colorette": "^1.2.2", - "nanoid": "^3.1.22", + "nanoid": "^3.1.23", "source-map": "^0.6.1" } }, @@ -6004,9 +5997,9 @@ } }, "postcss-selector-parser": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.5.tgz", - "integrity": "sha512-aFYPoYmXbZ1V6HZaSvat08M97A8HqO6Pjz+PiNpw/DhuRrC72XWAdp3hL6wusDCN31sSmcZyMGa2hZEuX+Xfhg==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", "dev": true, "requires": { "cssesc": "^3.0.0", @@ -6533,9 +6526,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.12", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.12.tgz", - "integrity": "sha512-zmXn03k3hN0KaiVTjohgkg98C3UowhL1/VSGdj4/VAAiMKGQOE80PFPxFP2Kyq0OUskPKcY5lImkhBKEHlypJA==", + "version": "1.32.13", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.13.tgz", + "integrity": "sha512-dEgI9nShraqP7cXQH+lEXVf73WOPCse0QlFzSD8k+1TcOxCMwVXfQlr0jtoluZysQOyJGnfr21dLvYKDJq8HkA==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -7078,9 +7071,9 @@ } }, "table": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.0.tgz", - "integrity": "sha512-SAM+5p6V99gYiiy2gT5ArdzgM1dLDed0nkrWmG6Fry/bUS/m9x83BwpJUOf1Qj/x2qJd+thL6IkIx7qPGRxqBw==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", + "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", "dev": true, "requires": { "ajv": "^8.0.1", @@ -7092,9 +7085,9 @@ }, "dependencies": { "ajv": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.2.0.tgz", - "integrity": "sha512-WSNGFuyWd//XO8n/m/EaOlNLtO0yL8EXT/74LqT4khdhpZjP7lkj/kT5uwRmGitKEVp/Oj7ZUHeGfPtgHhQ5CA==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.4.0.tgz", + "integrity": "sha512-7QD2l6+KBSLwf+7MuYocbWvRPdOu63/trReTLu2KFwkgctnub1auoF+Y1WYcm09CTM7quuscrzqmASaLHC/K4Q==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7506,9 +7499,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "underscore": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.10.2.tgz", - "integrity": "sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg==" + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.1.tgz", + "integrity": "sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g==" }, "unique-filename": { "version": "1.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index 4dc11bd01c7..0db90d198e9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -125,7 +125,7 @@ "ava": "^3.15.0", "chokidar-cli": "^2.1.0", "cross-env": "^7.0.3", - "depcheck": "^1.4.0", + "depcheck": "^1.4.1", "docdash": "^1.2.0", "eslint": "^7.26.0", "eslint-config-google": "^0.14.0", @@ -135,7 +135,7 @@ "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", "js-beautify": "^1.13.13", - "jsdoc": "^3.6.6", + "jsdoc": "^3.6.7", "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", From 13a841f83f1fc42d9f5049de2fa204c39870219e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 16 May 2021 02:24:42 +0000 Subject: [PATCH 0522/1272] [ui5-project]Bump eslint-plugin-jsdoc from 32.3.4 to 34.6.1 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 32.3.4 to 34.6.1. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v32.3.4...v34.6.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 19 ++++++++++++++++--- packages/project/package.json | 2 +- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f04be538376..c75fbf246e4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -361,6 +361,17 @@ } } }, + "@es-joy/jsdoccomment": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.6.0.tgz", + "integrity": "sha512-zT1EtysKMITJ7vE4RvOJqitxk/Str6It8hq+fykxkwLuTyzgak+TnVuVSIyovT/qrEz3i46ypCSXgNtIDYwNOg==", + "dev": true, + "requires": { + "comment-parser": "^1.1.5", + "esquery": "^1.4.0", + "jsdoctypeparser": "^9.0.0" + } + }, "@eslint/eslintrc": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.1.tgz", @@ -2957,13 +2968,15 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "32.3.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-32.3.4.tgz", - "integrity": "sha512-xSWfsYvffXnN0OkwLnB7MoDDDDjqcp46W7YlY1j7JyfAQBQ+WnGCfLov3gVNZjUGtK9Otj8mEhTZTqJu4QtIGA==", + "version": "34.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-34.6.1.tgz", + "integrity": "sha512-9FPCKDRBNv4akNIc+XNWR+zaiPBEumhH2Wce9TTQA7X3UBNiPbDTAiqfM9jHslMQBTsdI64S0AaKa0XY1AIUVg==", "dev": true, "requires": { + "@es-joy/jsdoccomment": "^0.6.0", "comment-parser": "1.1.5", "debug": "^4.3.1", + "esquery": "^1.4.0", "jsdoctypeparser": "^9.0.0", "lodash": "^4.17.21", "regextras": "^0.7.1", diff --git a/packages/project/package.json b/packages/project/package.json index 0db90d198e9..b80f7faacfc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.26.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^32.3.4", + "eslint-plugin-jsdoc": "^34.6.1", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 4c32e4613f79296f41241e01c2a58d12945a372b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 17 May 2021 15:38:15 +0000 Subject: [PATCH 0523/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.8.3 to 2.8.4 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.8.4/CHANGELOG.md --- packages/project/package-lock.json | 77 +++++------------------------- packages/project/package.json | 2 +- 2 files changed, 14 insertions(+), 65 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c75fbf246e4..0f9e6ec2285 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -617,21 +617,20 @@ "dev": true }, "@ui5/builder": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.8.3.tgz", - "integrity": "sha512-EESeSg6+cZdj7k1C2K1dMxjyXd4vXoNEflnGRmhUCm3e2uVyBOX54q2tdNiNhmbXf69kZyxXmyv8kK1/UYjKmA==", + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.8.4.tgz", + "integrity": "sha512-/u0kveWXc5kQNRoN1CqdHbxHMudcYFWCb1eDn3acdBoevdJ3MajMT9oWu7xHB287JnDXoQIhJFPIuDdqW2aZ3Q==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", "cheerio": "^0.22.0", "escape-unicode": "^0.2.0", - "escodegen": "^2.0.0", "escope": "^3.6.0", "esprima": "^4.0.1", "estraverse": "5.1.0", "globby": "^11.0.3", "graceful-fs": "^4.2.6", - "jsdoc": "^3.6.6", + "jsdoc": "^3.6.7", "less-openui5": "^0.11.1", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", @@ -639,7 +638,7 @@ "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.5", - "terser": "^5.6.1", + "terser": "^5.7.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" } @@ -2245,7 +2244,8 @@ "deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true }, "default-require-extensions": { "version": "3.0.0", @@ -2768,25 +2768,6 @@ "resolved": "https://registry.npmjs.org/escape-unicode/-/escape-unicode-0.2.0.tgz", "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" }, - "escodegen": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", - "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", - "requires": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" - } - } - }, "escope": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", @@ -3110,7 +3091,8 @@ "esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true }, "etag": { "version": "1.8.1", @@ -3233,7 +3215,8 @@ "fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true }, "fastq": { "version": "1.11.0", @@ -4400,15 +4383,6 @@ "mime": "^1.6.0" } }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, "libnpmconfig": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/libnpmconfig/-/libnpmconfig-1.2.1.tgz", @@ -5529,19 +5503,6 @@ "temp-write": "^4.0.0" } }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, "ora": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.0.tgz", @@ -6025,11 +5986,6 @@ "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", "dev": true }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" - }, "prepend-http": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", @@ -7464,14 +7420,6 @@ "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "requires": { - "prelude-ls": "~1.1.2" - } - }, "type-detect": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", @@ -7720,7 +7668,8 @@ "word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true }, "wrap-ansi": { "version": "7.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index b80f7faacfc..b968e964f55 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.8.3", + "@ui5/builder": "^2.8.4", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.9", "ajv": "^6.12.6", From c43182d39ed4b6269079917fd14d9025e447aaae Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 23 May 2021 02:22:36 +0000 Subject: [PATCH 0524/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 184 +++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 98 insertions(+), 90 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0f9e6ec2285..4df5e8bbb2e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -19,17 +19,17 @@ "dev": true }, "@babel/core": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.2.tgz", - "integrity": "sha512-OgC1mON+l4U4B4wiohJlQNUU3H73mpTyYY3j/c8U9dr9UagGGSm+WFpzjy/YLdoyjiG++c1kIDgxCo/mLwQJeQ==", + "version": "7.14.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.3.tgz", + "integrity": "sha512-jB5AmTKOCSJIZ72sd78ECEhuPiDMKlQdDI/4QRI6lzYATx5SSogS1oQA2AoPecRCknm30gHi2l+QVvNUu3wZAg==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.14.2", + "@babel/generator": "^7.14.3", "@babel/helper-compilation-targets": "^7.13.16", "@babel/helper-module-transforms": "^7.14.2", "@babel/helpers": "^7.14.0", - "@babel/parser": "^7.14.2", + "@babel/parser": "^7.14.3", "@babel/template": "^7.12.13", "@babel/traverse": "^7.14.2", "@babel/types": "^7.14.2", @@ -71,9 +71,9 @@ } }, "@babel/generator": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.2.tgz", - "integrity": "sha512-OnADYbKrffDVai5qcpkMxQ7caomHOoEwjkouqnN2QhydAjowFAZcsdecFIRUBdb+ZcruwYE4ythYmF1UBZU5xQ==", + "version": "7.14.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.3.tgz", + "integrity": "sha512-bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA==", "dev": true, "requires": { "@babel/types": "^7.14.2", @@ -173,15 +173,15 @@ } }, "@babel/helper-replace-supers": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz", - "integrity": "sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw==", + "version": "7.14.3", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.3.tgz", + "integrity": "sha512-Rlh8qEWZSTfdz+tgNV/N4gz1a0TMNwCUcENhMjHTHKp3LseYH5Jha0NSlyTQWMnjbYcwFt+bqAMqSLHVXkQ6UA==", "dev": true, "requires": { "@babel/helper-member-expression-to-functions": "^7.13.12", "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.12" + "@babel/traverse": "^7.14.2", + "@babel/types": "^7.14.2" } }, "@babel/helper-simple-access": { @@ -286,9 +286,9 @@ } }, "@babel/parser": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.2.tgz", - "integrity": "sha512-IoVDIHpsgE/fu7eXBeRWt8zLbDrSvD7H1gpomOkPpBoEN8KCruCqSDdqo8dddwQQrui30KSvQBaMUOJiuFu6QQ==" + "version": "7.14.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.3.tgz", + "integrity": "sha512-7MpZDIfI7sUC5zWo2+foJ50CSI5lcqDehZ0lVgIhSi4bFEk94fLAKlF3Q0nzSQQ+ca0lm+O6G9ztKVBeu8PMRQ==" }, "@babel/template": { "version": "7.12.13", @@ -2382,9 +2382,9 @@ "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, "detect-node": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.5.tgz", - "integrity": "sha512-qi86tE6hRcFHy8jI1m2VG+LaPUR1LhqDa5G8tVjuUXmOrpuAgqsA1pN0+ldgr3aKUH+QLI9hCY/OcRYisERejw==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" }, "devcert-sanscache": { "version": "0.4.8", @@ -2559,9 +2559,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.728", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.728.tgz", - "integrity": "sha512-SHv4ziXruBpb1Nz4aTuqEHBYi/9GNCJMYIJgDEXrp/2V01nFXMNFUTli5Z85f5ivSkioLilQatqBYFB44wNJrA==", + "version": "1.3.735", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.735.tgz", + "integrity": "sha512-cp7MWzC3NseUJV2FJFgaiesdrS+A8ZUjX5fLAxdRlcaPDkaPGFplX930S5vf84yqDp4LjuLdKouWuVOTwUfqHQ==", "dev": true }, "emittery": { @@ -2787,9 +2787,9 @@ } }, "eslint": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.26.0.tgz", - "integrity": "sha512-4R1ieRf52/izcZE7AlLy56uIHHDLT74Yzz2Iv2l6kDaYvEu9x+wMB5dZArVL8SYGXSYV2YAg70FcW5Y5nGGNIg==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.27.0.tgz", + "integrity": "sha512-JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", @@ -2800,12 +2800,14 @@ "debug": "^4.0.1", "doctrine": "^3.0.0", "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", "eslint-scope": "^5.1.1", "eslint-utils": "^2.1.0", "eslint-visitor-keys": "^2.0.0", "espree": "^7.3.1", "esquery": "^1.4.0", "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", "glob-parent": "^5.0.0", @@ -2817,7 +2819,7 @@ "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", - "lodash": "^4.17.21", + "lodash.merge": "^4.6.2", "minimatch": "^3.0.4", "natural-compare": "^1.4.0", "optionator": "^0.9.1", @@ -2826,7 +2828,7 @@ "semver": "^7.2.1", "strip-ansi": "^6.0.0", "strip-json-comments": "^3.1.0", - "table": "^6.0.4", + "table": "^6.0.9", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, @@ -2880,42 +2882,12 @@ "esprima": "^4.0.0" } }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "requires": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - } - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -2925,15 +2897,6 @@ "ansi-regex": "^5.0.0" } }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -2949,9 +2912,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "34.6.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-34.6.1.tgz", - "integrity": "sha512-9FPCKDRBNv4akNIc+XNWR+zaiPBEumhH2Wce9TTQA7X3UBNiPbDTAiqfM9jHslMQBTsdI64S0AaKa0XY1AIUVg==", + "version": "34.8.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-34.8.2.tgz", + "integrity": "sha512-UOU9A40Cl806JMtla2vF+RM6sNqfLPbhLv9FZqhcC7+LmChD3DVaWqM7ADxpF0kMyZNWe1QKUnqGnXaA3NTn+w==", "dev": true, "requires": { "@es-joy/jsdoccomment": "^0.6.0", @@ -4383,6 +4346,16 @@ "mime": "^1.6.0" } }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, "libnpmconfig": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/libnpmconfig/-/libnpmconfig-1.2.1.tgz", @@ -4718,9 +4691,9 @@ "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==" }, "marked": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.3.tgz", - "integrity": "sha512-5otztIIcJfPc2qGTN8cVtOJEjNJZ0jwa46INMagrYfk0EvqtRuEHLsEe0LrFS0/q+ZRKT0+kXK7P2T1AN5lWRA==" + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.5.tgz", + "integrity": "sha512-yfCEUXmKhBPLOzEC7c+tc4XZdIeTdGoRCZakFMkCxodr7wDXqoapIME4wjcpBPJLNyUnKJ3e8rb8wlAgnLnaDw==" }, "matcher": { "version": "3.0.0", @@ -5503,6 +5476,20 @@ "temp-write": "^4.0.0" } }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "requires": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + } + }, "ora": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.0.tgz", @@ -5806,9 +5793,9 @@ "dev": true }, "picomatch": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.3.tgz", - "integrity": "sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg==" + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==" }, "pify": { "version": "4.0.1", @@ -5909,14 +5896,14 @@ } }, "postcss": { - "version": "8.2.15", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.15.tgz", - "integrity": "sha512-2zO3b26eJD/8rb106Qu2o7Qgg52ND5HPjcyQiK2B98O388h43A448LCslC0dI2P97wCAQRJsFvwTRcXxTKds+Q==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.0.tgz", + "integrity": "sha512-+ogXpdAjWGa+fdYY5BQ96V/6tAo+TdSSIMP5huJBIygdWwKtVoB5JWZ7yUd4xZ8r+8Kvvx4nyg/PQ071H4UtcQ==", "dev": true, "requires": { "colorette": "^1.2.2", "nanoid": "^3.1.23", - "source-map": "^0.6.1" + "source-map-js": "^0.6.2" } }, "postcss-modules": { @@ -5986,6 +5973,12 @@ "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", "dev": true }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, "prepend-http": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", @@ -6495,9 +6488,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.32.13", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.13.tgz", - "integrity": "sha512-dEgI9nShraqP7cXQH+lEXVf73WOPCse0QlFzSD8k+1TcOxCMwVXfQlr0jtoluZysQOyJGnfr21dLvYKDJq8HkA==", + "version": "1.34.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.34.0.tgz", + "integrity": "sha512-rHEN0BscqjUYuomUEaqq3BMgsXqQfkcMVR7UhscsAVub0/spUrZGBMxQXFS2kfiDsPLZw5yuU9iJEFNC2x38Qw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -6737,6 +6730,12 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, + "source-map-js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz", + "integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==", + "dev": true + }, "source-map-resolve": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", @@ -6810,9 +6809,9 @@ } }, "spdx-license-ids": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", - "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==" + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", + "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==" }, "spdy": { "version": "4.0.2", @@ -7054,9 +7053,9 @@ }, "dependencies": { "ajv": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.4.0.tgz", - "integrity": "sha512-7QD2l6+KBSLwf+7MuYocbWvRPdOu63/trReTLu2KFwkgctnub1auoF+Y1WYcm09CTM7quuscrzqmASaLHC/K4Q==", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.5.0.tgz", + "integrity": "sha512-Y2l399Tt1AguU3BPRP9Fn4eN+Or+StUGWCUpbnFyXSo8NZ9S4uj+AG2pjs5apK+ZMOwYOz1+a+VKvKH7CudXgQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7420,6 +7419,15 @@ "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, "type-detect": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index b968e964f55..0d5711c268e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,9 +127,9 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.1", "docdash": "^1.2.0", - "eslint": "^7.26.0", + "eslint": "^7.27.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^34.6.1", + "eslint-plugin-jsdoc": "^34.8.2", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 46a0963d004252d0bfec0b6128b054bd22f8d024 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 30 May 2021 02:20:38 +0000 Subject: [PATCH 0525/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 84 +++++++++++++++--------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4df5e8bbb2e..06426b55301 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,9 +13,9 @@ } }, "@babel/compat-data": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.0.tgz", - "integrity": "sha512-vu9V3uMM/1o5Hl5OekMUowo3FqXLJSw+s+66nt0fSWVWTtmosdzn45JHOB3cPtZoe6CTBDzvSw0RdOY85Q37+Q==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.4.tgz", + "integrity": "sha512-i2wXrWQNkH6JplJQGn3Rd2I4Pij8GdHkXwHMxm+zV5YG/Jci+bCNrWZEWC4o+umiDkRrRs4dVzH3X4GP7vyjQQ==", "dev": true }, "@babel/core": { @@ -90,14 +90,14 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.13.16", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.16.tgz", - "integrity": "sha512-3gmkYIrpqsLlieFwjkGgLaSHmhnvlAYzZLlYVjlW+QwI+1zE17kGxuJGmIqDQdYp56XdmGeD+Bswx0UTyG18xA==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.4.tgz", + "integrity": "sha512-JgdzOYZ/qGaKTVkn5qEDV/SXAh8KcyUVkCoSWGN8T3bwrgd6m+/dJa2kVGi6RJYJgEYPBdZ84BZp9dUjNWkBaA==", "dev": true, "requires": { - "@babel/compat-data": "^7.13.15", + "@babel/compat-data": "^7.14.4", "@babel/helper-validator-option": "^7.12.17", - "browserslist": "^4.14.5", + "browserslist": "^4.16.6", "semver": "^6.3.0" }, "dependencies": { @@ -173,15 +173,15 @@ } }, "@babel/helper-replace-supers": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.3.tgz", - "integrity": "sha512-Rlh8qEWZSTfdz+tgNV/N4gz1a0TMNwCUcENhMjHTHKp3LseYH5Jha0NSlyTQWMnjbYcwFt+bqAMqSLHVXkQ6UA==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.4.tgz", + "integrity": "sha512-zZ7uHCWlxfEAAOVDYQpEf/uyi1dmeC7fX4nCf2iz9drnCwi1zvwXL3HwWWNXUQEJ1k23yVn3VbddiI9iJEXaTQ==", "dev": true, "requires": { "@babel/helper-member-expression-to-functions": "^7.13.12", "@babel/helper-optimise-call-expression": "^7.12.13", "@babel/traverse": "^7.14.2", - "@babel/types": "^7.14.2" + "@babel/types": "^7.14.4" } }, "@babel/helper-simple-access": { @@ -286,9 +286,9 @@ } }, "@babel/parser": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.3.tgz", - "integrity": "sha512-7MpZDIfI7sUC5zWo2+foJ50CSI5lcqDehZ0lVgIhSi4bFEk94fLAKlF3Q0nzSQQ+ca0lm+O6G9ztKVBeu8PMRQ==" + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.4.tgz", + "integrity": "sha512-ArliyUsWDUqEGfWcmzpGUzNfLxTdTp6WU4IuP6QFSp9gGfWS6boxFCkJSJ/L4+RG8z/FnIU3WxCk6hPL9SSWeA==" }, "@babel/template": { "version": "7.12.13", @@ -335,9 +335,9 @@ } }, "@babel/types": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.2.tgz", - "integrity": "sha512-SdjAG/3DikRHpUOjxZgnkbR11xUlyDMUFJdvnIgZEE16mqmY0BINMmc4//JMJglEmn6i7sq6p+mGrFWyZ98EEw==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.4.tgz", + "integrity": "sha512-lCj4aIs0xUefJFQnwwQv2Bxg7Omd6bgquZ6LGC+gGMh6/s5qDVfjuCMlDmYQ15SLsWHd9n+X3E75lKIhl5Lkiw==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.0", @@ -1466,9 +1466,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001228", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001228.tgz", - "integrity": "sha512-QQmLOGJ3DEgokHbMSA8cj2a+geXqmnpyOFT0lhQV6P3/YOJvGDEwoedcwxEQ30gJIwIIunHIicunJ2rzK5gB2A==", + "version": "1.0.30001230", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001230.tgz", + "integrity": "sha512-5yBd5nWCBS+jWKTcHOzXwo5xzcj4ePE/yjtkZyUV1BTUmrBaA9MRGC+e7mxnqXSA90CmCA8L3eKLaSUkt099IQ==", "dev": true }, "catharsis": { @@ -2559,9 +2559,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.735", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.735.tgz", - "integrity": "sha512-cp7MWzC3NseUJV2FJFgaiesdrS+A8ZUjX5fLAxdRlcaPDkaPGFplX930S5vf84yqDp4LjuLdKouWuVOTwUfqHQ==", + "version": "1.3.742", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.742.tgz", + "integrity": "sha512-ihL14knI9FikJmH2XUIDdZFWJxvr14rPSdOhJ7PpS27xbz8qmaRwCwyg/bmFwjWKmWK9QyamiCZVCvXm5CH//Q==", "dev": true }, "emittery": { @@ -2596,9 +2596,9 @@ }, "dependencies": { "iconv-lite": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", - "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "requires": { "safer-buffer": ">= 2.1.2 < 3.0.0" } @@ -2858,9 +2858,9 @@ } }, "globals": { - "version": "13.8.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.8.0.tgz", - "integrity": "sha512-rHtdA6+PDBIjeEvA91rpqzEvk/k3/i7EeNQiryiWuJH0Hw9cpyJMAt2jtbAwUaRdhD+573X4vWw6IcjKPasi9Q==", + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", + "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -4691,9 +4691,9 @@ "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==" }, "marked": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.5.tgz", - "integrity": "sha512-yfCEUXmKhBPLOzEC7c+tc4XZdIeTdGoRCZakFMkCxodr7wDXqoapIME4wjcpBPJLNyUnKJ3e8rb8wlAgnLnaDw==" + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.6.tgz", + "integrity": "sha512-S2mYj0FzTQa0dLddssqwRVW4EOJOVJ355Xm2Vcbm+LU7GQRGWvwbO5K87OaPSOux2AwTSgtPPaXmc8sDPrhn2A==" }, "matcher": { "version": "3.0.0", @@ -5123,9 +5123,9 @@ "dev": true }, "normalize-url": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", - "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", "dev": true }, "npm-bundled": { @@ -5772,9 +5772,9 @@ "dev": true }, "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "path-to-regexp": { "version": "0.1.7", @@ -7403,9 +7403,9 @@ "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==" }, "trim-newlines": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", - "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", "dev": true }, "trim-off-newlines": { From 2c10bfc3652b64cd52b0c6d24f40d8972fa751b1 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 26 May 2021 11:50:32 +0200 Subject: [PATCH 0526/1272] [ui5-project][FEATURE] specVersion 2.4 - Adds new bundle section mode "bundleInfo" JIRA: CPOUI5FOUNDATION-141 --- packages/project/lib/projectPreprocessor.js | 5 +- .../project/lib/translators/ui5Framework.js | 6 +- .../validation/schema/specVersion/2.0.json | 2 +- .../specVersion/2.0/kind/extension.json | 2 +- .../2.0/kind/extension/project-shim.json | 4 +- .../2.0/kind/extension/server-middleware.json | 4 +- .../specVersion/2.0/kind/extension/task.json | 4 +- .../schema/specVersion/2.0/kind/project.json | 110 +++++++++++++--- .../2.0/kind/project/application.json | 123 +++++++++++++----- .../specVersion/2.0/kind/project/library.json | 120 ++++++++++++----- .../specVersion/2.0/kind/project/module.json | 4 +- .../2.0/kind/project/theme-library.json | 4 +- .../project/lib/validation/schema/ui5.json | 6 +- packages/project/test/lib/extensions.js | 20 +++ .../project/test/lib/projectPreprocessor.js | 16 +++ .../schema/__helper__/customConfiguration.js | 2 +- .../validation/schema/__helper__/extension.js | 2 +- .../validation/schema/__helper__/framework.js | 2 +- .../validation/schema/__helper__/project.js | 2 +- .../schema/specVersion/2.0/kind/extension.js | 2 +- .../2.0/kind/extension/project-shim.js | 2 +- .../2.0/kind/project/application.js | 43 +++++- .../specVersion/2.0/kind/project/library.js | 42 +++++- .../specVersion/2.0/kind/project/module.js | 2 +- .../2.0/kind/project/theme-library.js | 2 +- .../project/test/lib/validation/schema/ui5.js | 3 +- 26 files changed, 422 insertions(+), 112 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 03fd3d5d1a1..4bd39d9cb35 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -283,7 +283,7 @@ class ProjectPreprocessor { if (project.specVersion !== "0.1" && project.specVersion !== "1.0" && project.specVersion !== "1.1" && project.specVersion !== "2.0" && project.specVersion !== "2.1" && project.specVersion !== "2.2" && - project.specVersion !== "2.3") { + project.specVersion !== "2.3" && project.specVersion !== "2.4") { throw new Error( `Unsupported specification version ${project.specVersion} defined for project ` + `${project.id}. Your UI5 CLI installation might be outdated. ` + @@ -361,7 +361,8 @@ class ProjectPreprocessor { extension.specVersion !== "2.0" && extension.specVersion !== "2.1" && extension.specVersion !== "2.2" && - extension.specVersion !== "2.3") { + extension.specVersion !== "2.3" && + extension.specVersion !== "2.4") { throw new Error( `Unsupported specification version ${extension.specVersion} defined for extension ` + `${extension.metadata.name}. Your UI5 CLI installation might be outdated. ` + diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index ae72520ba04..f991c8aa369 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -85,7 +85,8 @@ const utils = { } if ( project.specVersion !== "2.0" && project.specVersion !== "2.1" && - project.specVersion !== "2.2" && project.specVersion !== "2.3" + project.specVersion !== "2.2" && project.specVersion !== "2.3" && + project.specVersion !== "2.4" ) { log.warn(`Project ${project.metadata.name} defines invalid ` + `specification version ${project.specVersion} for framework.libraries configuration`); @@ -252,7 +253,8 @@ module.exports = { if ( ( project.specVersion === "2.0" || project.specVersion === "2.1" || - project.specVersion === "2.2" || project.specVersion === "2.3" + project.specVersion === "2.2" || project.specVersion === "2.3" || + project.specVersion === "2.4" ) && project.framework && project.framework.libraries) { const frameworkDeps = project.framework.libraries .filter((dependency) => { diff --git a/packages/project/lib/validation/schema/specVersion/2.0.json b/packages/project/lib/validation/schema/specVersion/2.0.json index dd569fc0eac..67ffb59c77d 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0.json +++ b/packages/project/lib/validation/schema/specVersion/2.0.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion"], "properties": { - "specVersion": { "enum": ["2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json index 37c1ef9deda..fc8c06f6d60 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "kind", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json index b62b77e3571..ddacc2d03db 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json @@ -6,14 +6,14 @@ "required": ["specVersion", "kind", "type", "metadata", "shims"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } } }, "then": { "additionalProperties": false, "properties": { "specVersion": { - "enum": ["2.1", "2.2", "2.3"] + "enum": ["2.1", "2.2", "2.3", "2.4"] }, "kind": { "enum": ["extension"] diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json index 0e227f4a387..4f7724e5a63 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json @@ -7,13 +7,13 @@ "required": ["specVersion", "kind", "type", "metadata", "middleware"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json index 496d73cbaf0..78d9c2d36b4 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json @@ -6,13 +6,13 @@ "required": ["specVersion", "kind", "type", "metadata", "task"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index 13f83e3539c..8919e7137eb 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "type"], "properties": { - "specVersion": { "enum": ["2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" @@ -177,34 +177,108 @@ } }, "bundleOptions": { + "$ref": "#/definitions/builder-bundles-bundleOptions" + } + } + } + }, + "builder-bundles-2.4": { + "type": "array", + "additionalProperties": false, + "items": { + "type": "object", + "additionalProperties": false, + "properties": { + "bundleDefinition": { "type": "object", "additionalProperties": false, + "required": ["name"], "properties": { - "optimize": { - "type": "boolean", - "default": false - }, - "decorateBootstrapModule": { - "type": "boolean", - "default": true - }, - "addTryCatchRestartWrapper": { - "type": "boolean", - "default": false + "name": { + "type": "string" }, - "usePredefineCalls": { - "type": "boolean", - "default": false + "defaultFileTypes": { + "type": "array", + "items": { + "type": "string" + } }, - "numberOfParts": { - "type": "number", - "default": 1 + "sections": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": false, + "required": ["mode", "filters"], + "properties": { + "name": { + "type": "string" + }, + "mode": { + "enum": ["raw", "preload", "require", "provided", "bundleInfo"] + }, + "filters": { + "type": "array", + "items": { + "type": "string" + } + }, + "resolve": { + "type": "boolean", + "default": false + }, + "resolveConditional": { + "type": "boolean", + "default": false + }, + "renderer": { + "type": "boolean", + "default": false + }, + "sort": { + "type": "boolean", + "default": true + }, + "declareRawModules": { + "type": "boolean", + "default": false + } + } + } } } + }, + "bundleOptions": { + "$ref": "#/definitions/builder-bundles-bundleOptions" } } } }, + "builder-bundles-bundleOptions": { + "type": "object", + "additionalProperties": false, + "properties": { + "optimize": { + "type": "boolean", + "default": false + }, + "decorateBootstrapModule": { + "type": "boolean", + "default": true + }, + "addTryCatchRestartWrapper": { + "type": "boolean", + "default": false + }, + "usePredefineCalls": { + "type": "boolean", + "default": false + }, + "numberOfParts": { + "type": "number", + "default": 1 + } + } + }, "builder-componentPreload": { "type": "object", "additionalProperties": false, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json index c48a5cbac18..7ebcf1895cc 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -43,13 +43,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -66,7 +66,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -78,29 +78,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["application"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -186,6 +224,33 @@ "$ref": "../project.json#/definitions/customTasks" } } + }, + "builder-specVersion-2.4": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "cachebuster": { + "type": "object", + "additionalProperties": false, + "properties": { + "signatureType": { + "enum": ["time", "hash"] + } + } + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-2.4" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json index 2e4f0cbbc45..ba39116245c 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -43,13 +43,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -66,7 +66,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -78,29 +78,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -189,6 +227,30 @@ "$ref": "../project.json#/definitions/customTasks" } } + }, + "builder-specVersion-2.4": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "jsdoc": { + "$ref": "#/definitions/builder-jsdoc" + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-2.4" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "libraryPreload": { + "$ref": "../project.json#/definitions/builder-libraryPreload" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json index afdeb12ab41..b02a91578df 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json index 45ec55dad2b..bde0aa58a72 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index 1fd8e141ac1..b1e238afaea 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -10,16 +10,16 @@ "properties": { "specVersion": { "enum": [ - "2.3", "2.2", "2.1", "2.0", + "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, "if": { "properties": { - "specVersion": { "enum": ["2.3", "2.2", "2.1", "2.0"] } + "specVersion": { "enum": ["2.4", "2.3", "2.2", "2.1", "2.0"] } } }, "then": { diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index 6ecc68978b3..a5eabe58734 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -891,3 +891,23 @@ test("specVersion: Extension with valid version 2.3", async (t) => { await preprocessor.applyExtension(extension); t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.3", "Correct spec version"); }); + +test("specVersion: Extension with valid version 2.4", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.4", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor({}); + const handleShimStub = sinon.stub(preprocessor, "handleShim"); + await preprocessor.applyExtension(extension); + t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.4", "Correct spec version"); +}); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index cead35f2436..d3d301c791c 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1750,6 +1750,22 @@ test("specVersion: Project with valid version 2.3", async (t) => { t.deepEqual(res.specVersion, "2.3", "Correct spec version"); }); +test("specVersion: Project with valid version 2.4", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.4", + type: "application", + metadata: { + name: "xy" + } + }; + const res = await projectPreprocessor.processTree(tree); + t.deepEqual(res.specVersion, "2.4", "Correct spec version"); +}); + test("isBeingProcessed: Is not being processed", (t) => { const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); diff --git a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js index ba4218237c0..61fe0b3dd8e 100644 --- a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js +++ b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js @@ -35,7 +35,7 @@ module.exports = { ]); }); - ["2.3", "2.2", "2.1"].forEach((specVersion) => { + ["2.4", "2.3", "2.2", "2.1"].forEach((specVersion) => { test(`${type}: Valid customConfiguration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, Object.assign( { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js index a7ce990ba1a..5585363fc75 100644 --- a/packages/project/test/lib/validation/schema/__helper__/extension.js +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -18,7 +18,7 @@ module.exports = { customConfiguration.defineTests(test, assertValidation, type, additionalConfiguration); - ["2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: ${type} basic (${specVersion})`, async (t) => { await assertValidation(t, Object.assign({ "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/framework.js b/packages/project/test/lib/validation/schema/__helper__/framework.js index 9595112f4dc..4c02714fd8d 100644 --- a/packages/project/test/lib/validation/schema/__helper__/framework.js +++ b/packages/project/test/lib/validation/schema/__helper__/framework.js @@ -10,7 +10,7 @@ module.exports = { * @param {string} type one of "application", "library" and "theme-library" */ defineTests: function(test, assertValidation, type) { - ["2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`${type} (specVersion ${specVersion}): framework configuration: OpenUI5`, async (t) => { const config = { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index 9b5aeb93b19..d1060cc0b6e 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -23,7 +23,7 @@ module.exports = { customConfiguration.defineTests(test, assertValidation, type); // version specific tests - ["2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { // tests for all kinds and version 2.0 and above test(`${type} (specVersion ${specVersion}): No metadata`, async (t) => { await assertValidation(t, { diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js index 3dee7a1b044..6b317530917 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js @@ -36,7 +36,7 @@ test.after.always((t) => { }; t.context.ajvCoverage.verify(thresholds); }); -["2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Type project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js index 11442a3584d..ace0a042606 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js @@ -38,7 +38,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index 8c168dec435..58558aa2041 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -43,7 +43,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -433,12 +433,18 @@ test.after.always((t) => { keyword: "enum", message: "should be equal to one of the allowed values", params: { - allowedValues: [ + allowedValues: ["2.4"].includes(specVersion) ? [ "raw", "preload", "require", "provided", - ], + "bundleInfo" + ] : [ + "raw", + "preload", + "require", + "provided" + ] } }, { @@ -531,7 +537,7 @@ test.after.always((t) => { }); }); -["2.3"].forEach(function(specVersion) { +["2.4", "2.3"].forEach(function(specVersion) { test(`application (specVersion ${specVersion}): builder/componentPreload/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -628,4 +634,33 @@ test.after.always((t) => { }); }); +["2.4"].forEach(function(specVersion) { + // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above + test(`application (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, + async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "bundles": [{ + "bundleDefinition": { + "name": "my-bundle.js", + "sections": [{ + "name": "my-bundle-info", + "mode": "bundleInfo", + "filters": [] + }] + } + }] + } + }); + }); +}); + + project.defineTests(test, assertValidation, "application"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index b3b1da8d561..2362a4aed5e 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -43,7 +43,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): Valid configuration`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -399,12 +399,18 @@ test.after.always((t) => { keyword: "enum", message: "should be equal to one of the allowed values", params: { - allowedValues: [ + allowedValues: ["2.4"].includes(specVersion) ? [ "raw", "preload", "require", "provided", - ], + "bundleInfo" + ] : [ + "raw", + "preload", + "require", + "provided" + ] } }, { @@ -608,7 +614,7 @@ test.after.always((t) => { }); }); -["2.3"].forEach(function(specVersion) { +["2.4", "2.3"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): builder/libraryPreload/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -801,4 +807,32 @@ test.after.always((t) => { }); }); +["2.4"].forEach(function(specVersion) { + // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above + test(`library (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, + async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "bundles": [{ + "bundleDefinition": { + "name": "my-bundle.js", + "sections": [{ + "name": "my-bundle-info", + "mode": "bundleInfo", + "filters": [] + }] + } + }] + } + }); + }); +}); + project.defineTests(test, assertValidation, "library"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js index b3b6c148436..a977ba17fb6 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js @@ -38,7 +38,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js index 7060baf327d..50f818243eb 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -44,7 +44,7 @@ test.after.always((t) => { }); -["2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 2bd9b6a3508..263c2ce5eb3 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -100,7 +100,7 @@ test("Invalid specVersion", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. -Supported specification versions: "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" +Supported specification versions: "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, params: { errors: [ @@ -110,6 +110,7 @@ For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specific message: "should be equal to one of the allowed values", params: { allowedValues: [ + "2.4", "2.3", "2.2", "2.1", From 51a805f5cfce2c90a4de94f98d18e1b3945c92d7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 May 2021 02:23:00 +0000 Subject: [PATCH 0527/1272] [ui5-project]Bump sinon from 10.0.0 to 11.1.1 Bumps [sinon](https://github.com/sinonjs/sinon) from 10.0.0 to 11.1.1. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md) - [Commits](https://github.com/sinonjs/sinon/compare/v10.0.0...v11.1.1) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 44 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 06426b55301..b02de79f5a4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -547,18 +547,18 @@ } }, "@sinonjs/fake-timers": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", - "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz", + "integrity": "sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.0" } }, "@sinonjs/samsam": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.3.1.tgz", - "integrity": "sha512-1Hc0b1TtyfBu8ixF/tpfSHTVWKwCBLY4QJbkgnE7HcwyvT2xArDxb4K7dMgqRm3szI+LJbzmW/s4xxEhv6hwDg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-6.0.2.tgz", + "integrity": "sha512-jxPRPp9n93ci7b8hMfJOFDPRLFYadN6FSpeROFTR4UNF4i5b+EK6m4QXPO46BDhFgRy1JuS87zAnFOzCUwMJcQ==", "dev": true, "requires": { "@sinonjs/commons": "^1.6.0", @@ -2417,9 +2417,9 @@ } }, "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", + "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", "dev": true }, "dir-glob": { @@ -5035,13 +5035,13 @@ "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" }, "nise": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/nise/-/nise-4.1.0.tgz", - "integrity": "sha512-eQMEmGN/8arp0xsvGoQ+B1qvSkR73B1nWSCh7nOt5neMCtwcQVYQGdzQMhcNscktTsWB54xnlSQFzOAPJD8nXA==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.0.tgz", + "integrity": "sha512-W5WlHu+wvo3PaKLsJJkgPup2LrsXCcm7AWwyNZkUnn5rwPkuPBi3Iwk5SQtN0mv+K65k7nKKjwNQ30wg3wLAQQ==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.0", - "@sinonjs/fake-timers": "^6.0.0", + "@sinonjs/fake-timers": "^7.0.4", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "path-to-regexp": "^1.7.0" @@ -6655,17 +6655,17 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-10.0.0.tgz", - "integrity": "sha512-XAn5DxtGVJBlBWYrcYKEhWCz7FLwZGdyvANRyK06419hyEpdT0dMc5A8Vcxg5SCGHc40CsqoKsc1bt1CbJPfNw==", + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-11.1.1.tgz", + "integrity": "sha512-ZSSmlkSyhUWbkF01Z9tEbxZLF/5tRC9eojCdFh33gtQaP7ITQVaMWQHGuFM7Cuf/KEfihuh1tTl3/ABju3AQMg==", "dev": true, "requires": { - "@sinonjs/commons": "^1.8.1", - "@sinonjs/fake-timers": "^6.0.1", - "@sinonjs/samsam": "^5.3.1", - "diff": "^4.0.2", - "nise": "^4.1.0", - "supports-color": "^7.1.0" + "@sinonjs/commons": "^1.8.3", + "@sinonjs/fake-timers": "^7.1.0", + "@sinonjs/samsam": "^6.0.2", + "diff": "^5.0.0", + "nise": "^5.1.0", + "supports-color": "^7.2.0" } }, "slash": { diff --git a/packages/project/package.json b/packages/project/package.json index 0d5711c268e..c8453fba968 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,7 +139,7 @@ "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", - "sinon": "^10.0.0", + "sinon": "^11.1.1", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From e193ce99a1c6ae6558ee7d74191daa85a5be4a82 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Jun 2021 11:17:59 +0000 Subject: [PATCH 0528/1272] [ui5-project]Bump eslint-plugin-jsdoc from 34.8.2 to 35.1.2 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 34.8.2 to 35.1.2. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v34.8.2...v35.1.2) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 42 ++++++++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 26 insertions(+), 18 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b02de79f5a4..9061215d883 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -362,14 +362,22 @@ } }, "@es-joy/jsdoccomment": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.6.0.tgz", - "integrity": "sha512-zT1EtysKMITJ7vE4RvOJqitxk/Str6It8hq+fykxkwLuTyzgak+TnVuVSIyovT/qrEz3i46ypCSXgNtIDYwNOg==", + "version": "0.8.0-alpha.2", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.8.0-alpha.2.tgz", + "integrity": "sha512-fjRY13Bh8sxDZkzO27U2R9L6xFqkh5fAbHuMGvGLXLfrTes8nTTMyOi6wIPt+CG0XPAxEUge8cDjhG+0aag6ew==", "dev": true, "requires": { "comment-parser": "^1.1.5", "esquery": "^1.4.0", - "jsdoctypeparser": "^9.0.0" + "jsdoc-type-pratt-parser": "1.0.0-alpha.23" + }, + "dependencies": { + "jsdoc-type-pratt-parser": { + "version": "1.0.0-alpha.23", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.0.0-alpha.23.tgz", + "integrity": "sha512-COtimMd97eo5W0h6R9ISFj9ufg/9EiAzVAeQpKBJ1xJs/x8znWE155HGBDR2rwOuZsCes1gBXGmFVfvRZxGrhg==", + "dev": true + } } }, "@eslint/eslintrc": { @@ -2912,18 +2920,18 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "34.8.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-34.8.2.tgz", - "integrity": "sha512-UOU9A40Cl806JMtla2vF+RM6sNqfLPbhLv9FZqhcC7+LmChD3DVaWqM7ADxpF0kMyZNWe1QKUnqGnXaA3NTn+w==", + "version": "35.1.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.1.2.tgz", + "integrity": "sha512-IPChTbaL9rWe6DCinKOpUdqsBV7r2dKEId1nweSKsjJqZp1VAQyzQJ5N6ogji2AWmrPU1jdjfHA5HIG2RaiRBA==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "^0.6.0", + "@es-joy/jsdoccomment": "^0.8.0-alpha.2", "comment-parser": "1.1.5", "debug": "^4.3.1", "esquery": "^1.4.0", - "jsdoctypeparser": "^9.0.0", + "jsdoc-type-pratt-parser": "^1.0.2", "lodash": "^4.17.21", - "regextras": "^0.7.1", + "regextras": "^0.8.0", "semver": "^7.3.5", "spdx-expression-parse": "^3.0.1" }, @@ -4245,10 +4253,10 @@ } } }, - "jsdoctypeparser": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-9.0.0.tgz", - "integrity": "sha512-jrTA2jJIL6/DAEILBEh2/w9QxCuwmvNXIry39Ay/HVfhE3o2yVV0U44blYkqdHA/OKloJEqvJy0xU+GSdE2SIw==", + "jsdoc-type-pratt-parser": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.0.3.tgz", + "integrity": "sha512-AGJxvTU6WjdFr1qQ3l+EjtXUgA6vRYowG9L9JMc7wml0ow5xzKnureo36Xtu7YzB8apnTAhFY38AR+WRU+UxwA==", "dev": true }, "jsesc": { @@ -6282,9 +6290,9 @@ "dev": true }, "regextras": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.7.1.tgz", - "integrity": "sha512-9YXf6xtW+qzQ+hcMQXx95MOvfqXFgsKDZodX3qZB0x2n5Z94ioetIITsBtvJbiOyxa/6s9AtyweBLCdPmPko/w==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.8.0.tgz", + "integrity": "sha512-k519uI04Z3SaY0fLX843MRXnDeG2+vHOFsyhiPZvNLe7r8rD2YNRjq4BQLZZ0oAr2NrtvZlICsXysGNFPGa3CQ==", "dev": true }, "registry-auth-token": { diff --git a/packages/project/package.json b/packages/project/package.json index c8453fba968..5f18ff3d9c4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.27.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^34.8.2", + "eslint-plugin-jsdoc": "^35.1.2", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 9cad94db90860963b5a586ef343a896eba84d375 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 1 Jun 2021 13:23:23 +0200 Subject: [PATCH 0529/1272] [ui5-project][INTERNAL] Resolve eslint-jsdoc error --- packages/project/lib/ui5Framework/AbstractResolver.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 59228d74239..ae8dbc52f9b 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -131,7 +131,7 @@ class AbstractResolver { * * @public * @typedef {object} ResolverInstallResult - * @property {Object.} libraryMetadata + * @property {object.} libraryMetadata * Object containing all installed libraries with library name as key * @memberof module:@ui5/project.ui5Framework */ From 7e8cd24b61a1b0747fa348e1330fc364f550763d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 1 Jun 2021 12:12:59 +0000 Subject: [PATCH 0530/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.8.4 to 2.9.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.9.0/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9061215d883..b121e8d8188 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -625,9 +625,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.8.4.tgz", - "integrity": "sha512-/u0kveWXc5kQNRoN1CqdHbxHMudcYFWCb1eDn3acdBoevdJ3MajMT9oWu7xHB287JnDXoQIhJFPIuDdqW2aZ3Q==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.0.tgz", + "integrity": "sha512-cLPgL9MgwXzdDyfJsDHZQEyPuB3vV963lf6pKuU315gRjzlJBLy0+x/ZyQCF6zOW0u2MqaBJ+ZiNWAo/ajA5dQ==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 5f18ff3d9c4..7455fd68fa7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.8.4", + "@ui5/builder": "^2.9.0", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.9", "ajv": "^6.12.6", From d4bef1c88e2979ef24222bce68e4be560a7b8f2d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 1 Jun 2021 12:20:34 +0000 Subject: [PATCH 0531/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.9 to 2.2.10 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.2.10/CHANGELOG.md --- packages/project/package-lock.json | 24 ++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b121e8d8188..fe139dc2c8d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -676,11 +676,11 @@ } }, "@ui5/server": { - "version": "2.2.9", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.9.tgz", - "integrity": "sha512-u5mnlqPuo7DRuCoy5BruLr5fz8UiPgsCfxEcxIcH7+K20jRPaBWiSImrRb3aCxRgF561zDWuhZndDTkluJWKkg==", + "version": "2.2.10", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.10.tgz", + "integrity": "sha512-mUACR9sxwWpmNeSZ/F9G7rXCYsEfO7Mp+MI/Qr3Ej1+IHSr4rluqaFZh5uIITBQtuOHb+9aQMVLFVbGe6HFO+g==", "requires": { - "@ui5/builder": "^2.8.2", + "@ui5/builder": "^2.9.0", "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", "body-parser": "^1.19.0", @@ -694,7 +694,7 @@ "fresh": "^0.5.2", "graceful-fs": "^4.2.6", "make-dir": "^3.1.0", - "mime-types": "^2.1.29", + "mime-types": "^2.1.30", "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", @@ -3322,9 +3322,9 @@ } }, "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" }, "fresh": { "version": "0.5.2", @@ -6061,11 +6061,11 @@ } }, "proxy-addr": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", - "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "requires": { - "forwarded": "~0.1.2", + "forwarded": "0.2.0", "ipaddr.js": "1.9.1" } }, diff --git a/packages/project/package.json b/packages/project/package.json index 7455fd68fa7..b62ffbd7458 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^2.9.0", "@ui5/logger": "^2.0.1", - "@ui5/server": "^2.2.9", + "@ui5/server": "^2.2.10", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.1", From 41f8658cfe597f368beb01ce68f832b40b6c9c50 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 1 Jun 2021 12:24:49 +0000 Subject: [PATCH 0532/1272] [ui5-project]Release 2.4.0 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 8f313fb5fc6..fcdee9d5b7c 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.3.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.4.0...HEAD). + + +## [v2.4.0] - 2021-06-01 +### Features +- specVersion 2.4 [`69ffc6c`](https://github.com/SAP/ui5-project/commit/69ffc6c34e387bcaaaf7b703559181b78fd33d54) + ## [v2.3.1] - 2021-03-04 @@ -244,6 +250,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.4.0]: https://github.com/SAP/ui5-project/compare/v2.3.1...v2.4.0 [v2.3.1]: https://github.com/SAP/ui5-project/compare/v2.3.0...v2.3.1 [v2.3.0]: https://github.com/SAP/ui5-project/compare/v2.2.6...v2.3.0 [v2.2.6]: https://github.com/SAP/ui5-project/compare/v2.2.5...v2.2.6 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fe139dc2c8d..efb46194934 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.3.1", + "version": "2.4.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index b62ffbd7458..20733c0f6c6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.3.1", + "version": "2.4.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From ec6fb5bfeb7def71eec4b2764e7f215a6a8d09ef Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 6 Jun 2021 02:22:12 +0000 Subject: [PATCH 0533/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 116 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 59 insertions(+), 59 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index efb46194934..8ef8613cc6d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -381,15 +381,15 @@ } }, "@eslint/eslintrc": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.1.tgz", - "integrity": "sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", + "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.1.1", "espree": "^7.3.0", - "globals": "^12.1.0", + "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", "js-yaml": "^3.13.1", @@ -407,12 +407,12 @@ } }, "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", + "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, "requires": { - "type-fest": "^0.8.1" + "type-fest": "^0.20.2" } }, "ignore": { @@ -438,9 +438,9 @@ "dev": true }, "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true } } @@ -517,25 +517,25 @@ "dev": true }, "@nodelib/fs.scandir": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz", - "integrity": "sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "requires": { - "@nodelib/fs.stat": "2.0.4", + "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" } }, "@nodelib/fs.stat": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz", - "integrity": "sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==" + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" }, "@nodelib/fs.walk": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz", - "integrity": "sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.7.tgz", + "integrity": "sha512-BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA==", "requires": { - "@nodelib/fs.scandir": "2.1.4", + "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" } }, @@ -809,9 +809,9 @@ } }, "acorn": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.2.4.tgz", - "integrity": "sha512-Ibt84YwBDDA890eDiDCEqcbwvHlBvzzDkU2cGBBDDI1QWT12jTiXIOn2CIw5KK4i6N5Z2HUxwYjzriDyqaqqZg==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.3.0.tgz", + "integrity": "sha512-tqPKHZ5CaBJw0Xmy0ZZvLs1qTV+BNFSyvn77ASXkpBNfIRk8ev26fKrD9iLGwGA9zedPao52GSHzq8lyZG0NUw==", "dev": true }, "acorn-jsx": { @@ -1474,9 +1474,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001230", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001230.tgz", - "integrity": "sha512-5yBd5nWCBS+jWKTcHOzXwo5xzcj4ePE/yjtkZyUV1BTUmrBaA9MRGC+e7mxnqXSA90CmCA8L3eKLaSUkt099IQ==", + "version": "1.0.30001234", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001234.tgz", + "integrity": "sha512-a3gjUVKkmwLdNysa1xkUAwN2VfJUJyVW47rsi3aCbkRCtbHAfo+rOsCqVw29G6coQ8gzAPb5XBXwiGHwme3isA==", "dev": true }, "catharsis": { @@ -1949,9 +1949,9 @@ } }, "config-chain": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz", - "integrity": "sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", "dev": true, "requires": { "ini": "^1.3.4", @@ -2567,9 +2567,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.742", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.742.tgz", - "integrity": "sha512-ihL14knI9FikJmH2XUIDdZFWJxvr14rPSdOhJ7PpS27xbz8qmaRwCwyg/bmFwjWKmWK9QyamiCZVCvXm5CH//Q==", + "version": "1.3.749", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.749.tgz", + "integrity": "sha512-F+v2zxZgw/fMwPz/VUGIggG4ZndDsYy0vlpthi3tjmDZlcfbhN5mYW0evXUsBr2sUtuDANFtle410A9u/sd/4A==", "dev": true }, "emittery": { @@ -2795,13 +2795,13 @@ } }, "eslint": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.27.0.tgz", - "integrity": "sha512-JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.28.0.tgz", + "integrity": "sha512-UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.1", + "@eslint/eslintrc": "^0.4.2", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2818,7 +2818,7 @@ "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", + "glob-parent": "^5.1.2", "globals": "^13.6.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", @@ -4254,9 +4254,9 @@ } }, "jsdoc-type-pratt-parser": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.0.3.tgz", - "integrity": "sha512-AGJxvTU6WjdFr1qQ3l+EjtXUgA6vRYowG9L9JMc7wml0ow5xzKnureo36Xtu7YzB8apnTAhFY38AR+WRU+UxwA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.0.4.tgz", + "integrity": "sha512-jzmW9gokeq9+bHPDR1nCeidMyFUikdZlbOhKzh9+/nJqB75XhpNKec1/UuxW5c4+O+Pi31Gc/dCboyfSm/pSpQ==", "dev": true }, "jsesc": { @@ -4699,9 +4699,9 @@ "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==" }, "marked": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.6.tgz", - "integrity": "sha512-S2mYj0FzTQa0dLddssqwRVW4EOJOVJ355Xm2Vcbm+LU7GQRGWvwbO5K87OaPSOux2AwTSgtPPaXmc8sDPrhn2A==" + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.7.tgz", + "integrity": "sha512-BJXxkuIfJchcXOJWTT2DOL+yFWifFv2yGYOUzvXg8Qz610QKw+sHCvTMYwA+qWGhlA2uivBezChZ/pBy1tWdkQ==" }, "matcher": { "version": "3.0.0", @@ -4831,16 +4831,16 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.47.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz", - "integrity": "sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==" + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", + "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==" }, "mime-types": { - "version": "2.1.30", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.30.tgz", - "integrity": "sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg==", + "version": "2.1.31", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", + "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", "requires": { - "mime-db": "1.47.0" + "mime-db": "1.48.0" } }, "mimic-fn": { @@ -5915,9 +5915,9 @@ } }, "postcss-modules": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.0.0.tgz", - "integrity": "sha512-ghS/ovDzDqARm4Zj6L2ntadjyQMoyJmi0JkLlYtH2QFLrvNlxH5OAVRPWPeKilB0pY7SbuhO173KOWkPAxRJcw==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.1.3.tgz", + "integrity": "sha512-dBT39hrXe4OAVYJe/2ZuIZ9BzYhOe7t+IhedYeQ2OxKwDpAGlkEN/fR0fGnrbx4BvgbMReRX4hCubYK9cE/pJQ==", "dev": true, "requires": { "generic-names": "^2.0.1", @@ -6496,9 +6496,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.34.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.34.0.tgz", - "integrity": "sha512-rHEN0BscqjUYuomUEaqq3BMgsXqQfkcMVR7UhscsAVub0/spUrZGBMxQXFS2kfiDsPLZw5yuU9iJEFNC2x38Qw==", + "version": "1.34.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.34.1.tgz", + "integrity": "sha512-scLA7EIZM+MmYlej6sdVr0HRbZX5caX5ofDT9asWnUJj21oqgsC+1LuNfm0eg+vM0fCTZHhwImTiCU0sx9h9CQ==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index 20733c0f6c6..4fac8fc0571 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.1", "docdash": "^1.2.0", - "eslint": "^7.27.0", + "eslint": "^7.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^35.1.2", "istanbul-lib-coverage": "^3.0.0", From c344d82ae2dd4afd50f62577f0cee620d5aba9c8 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 7 Jun 2021 17:26:58 +0000 Subject: [PATCH 0534/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 74 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8ef8613cc6d..256ab494fa3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -705,40 +705,40 @@ } }, "@vue/compiler-core": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.11.tgz", - "integrity": "sha512-6sFj6TBac1y2cWCvYCA8YzHJEbsVkX7zdRs/3yK/n1ilvRqcn983XvpBbnN3v4mZ1UiQycTvOiajJmOgN9EVgw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.0.tgz", + "integrity": "sha512-fj1yKsjpKpmKXMCUO1uoY1CUcU6g4tiEiqwxSZMlJOEXWhCl6Dwa+tLprIC3r6IdPx4R1HrZK3iuqO98r8ENDQ==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.0.11", + "@vue/shared": "3.1.0", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.11.tgz", - "integrity": "sha512-+3xB50uGeY5Fv9eMKVJs2WSRULfgwaTJsy23OIltKgMrynnIj8hTYY2UL97HCoz78aDw1VDXdrBQ4qepWjnQcw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.0.tgz", + "integrity": "sha512-Nz3XImMHiMpuJjgW1eTG952KkBgovjQ3KL5juzeXgU9dcHnjPMdWtfR3v1GxV5jq8q6IoXJtQIufytJEpBwGuA==", "dev": true, "requires": { - "@vue/compiler-core": "3.0.11", - "@vue/shared": "3.0.11" + "@vue/compiler-core": "3.1.0", + "@vue/shared": "3.1.0" } }, "@vue/compiler-sfc": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.11.tgz", - "integrity": "sha512-7fNiZuCecRleiyVGUWNa6pn8fB2fnuJU+3AGjbjl7r1P5wBivfl02H4pG+2aJP5gh2u+0wXov1W38tfWOphsXw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.1.0.tgz", + "integrity": "sha512-MzSXtuNTnJVXSsjm30bc3ef/XIitz5F8UVruRvp1k7c72zc3US4jKI7bkMS0r2UjT4aW9mF+4JgPpieG0n+5cg==", "dev": true, "requires": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", - "@vue/compiler-core": "3.0.11", - "@vue/compiler-dom": "3.0.11", - "@vue/compiler-ssr": "3.0.11", - "@vue/shared": "3.0.11", + "@vue/compiler-core": "3.1.0", + "@vue/compiler-dom": "3.1.0", + "@vue/compiler-ssr": "3.1.0", + "@vue/shared": "3.1.0", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -769,19 +769,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.11.tgz", - "integrity": "sha512-66yUGI8SGOpNvOcrQybRIhl2M03PJ+OrDPm78i7tvVln86MHTKhM3ERbALK26F7tXl0RkjX4sZpucCpiKs3MnA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.1.0.tgz", + "integrity": "sha512-O4VnFIgD9KVebv5r6Xi6v/JPcoKqfLX/lgUMoC/E9LkKbhGDWzTt7U+K0TM1CyOC1fmILYQaWlG4Osq6Sf325w==", "dev": true, "requires": { - "@vue/compiler-dom": "3.0.11", - "@vue/shared": "3.0.11" + "@vue/compiler-dom": "3.1.0", + "@vue/shared": "3.1.0" } }, "@vue/shared": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.0.11.tgz", - "integrity": "sha512-b+zB8A2so8eCE0JsxjL24J7vdGl8rzPQ09hZNhystm+KqSbKcAej1A+Hbva1rCMmTTqA+hFnUSDc5kouEo0JzA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.0.tgz", + "integrity": "sha512-ThLOuFq7ZicNV1Cmlhij0m/S7oyboO5laE727s+kP5oVTpO7awjHhDe5T0hLyd6euosdBKcoBbfd8JkIhcB4dw==", "dev": true }, "JSONStream": { @@ -1474,9 +1474,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001234", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001234.tgz", - "integrity": "sha512-a3gjUVKkmwLdNysa1xkUAwN2VfJUJyVW47rsi3aCbkRCtbHAfo+rOsCqVw29G6coQ8gzAPb5XBXwiGHwme3isA==", + "version": "1.0.30001235", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001235.tgz", + "integrity": "sha512-zWEwIVqnzPkSAXOUlQnPW2oKoYb2aLQ4Q5ejdjBcnH63rfypaW34CxaeBn1VMya2XaEU3P/R2qHpWyj+l0BT1A==", "dev": true }, "catharsis": { @@ -2920,16 +2920,16 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "35.1.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.1.2.tgz", - "integrity": "sha512-IPChTbaL9rWe6DCinKOpUdqsBV7r2dKEId1nweSKsjJqZp1VAQyzQJ5N6ogji2AWmrPU1jdjfHA5HIG2RaiRBA==", + "version": "35.1.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.1.3.tgz", + "integrity": "sha512-9AVpCssb7+cfEx3GJtnhJ8yLOVsHDKGMgngcfvwFBxdcOVPFhLENReL5aX1R2gNiG3psqIWFVBpSPnPQTrMZUA==", "dev": true, "requires": { "@es-joy/jsdoccomment": "^0.8.0-alpha.2", "comment-parser": "1.1.5", "debug": "^4.3.1", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "^1.0.2", + "jsdoc-type-pratt-parser": "^1.0.4", "lodash": "^4.17.21", "regextras": "^0.8.0", "semver": "^7.3.5", @@ -5092,9 +5092,9 @@ } }, "node-releases": { - "version": "1.1.72", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.72.tgz", - "integrity": "sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==", + "version": "1.1.73", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz", + "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==", "dev": true }, "nopt": { @@ -7061,9 +7061,9 @@ }, "dependencies": { "ajv": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.5.0.tgz", - "integrity": "sha512-Y2l399Tt1AguU3BPRP9Fn4eN+Or+StUGWCUpbnFyXSo8NZ9S4uj+AG2pjs5apK+ZMOwYOz1+a+VKvKH7CudXgQ==", + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", + "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index 4fac8fc0571..15a090d0b6c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.28.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^35.1.2", + "eslint-plugin-jsdoc": "^35.1.3", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 9f3a0f7c2bbabaf73512f38e27f16768f122261b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 8 Jun 2021 10:32:49 +0000 Subject: [PATCH 0535/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.9.0 to 2.9.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.9.1/CHANGELOG.md --- packages/project/package-lock.json | 228 ++++++++++++----------------- packages/project/package.json | 2 +- 2 files changed, 93 insertions(+), 137 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 256ab494fa3..45c1aaaa5b9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -625,13 +625,13 @@ "dev": true }, "@ui5/builder": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.0.tgz", - "integrity": "sha512-cLPgL9MgwXzdDyfJsDHZQEyPuB3vV963lf6pKuU315gRjzlJBLy0+x/ZyQCF6zOW0u2MqaBJ+ZiNWAo/ajA5dQ==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.1.tgz", + "integrity": "sha512-me90rEMtw3v8abiJzXlazPRo+8/zq0sSKqVUU6M6mDchSo5TgsFH18nvBoWNL546ikFpzjxnT5Vm8MOs7ysubA==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", - "cheerio": "^0.22.0", + "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", "esprima": "^4.0.1", @@ -1497,26 +1497,29 @@ } }, "cheerio": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", - "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", - "requires": { - "css-select": "~1.2.0", - "dom-serializer": "~0.1.0", - "entities": "~1.1.1", - "htmlparser2": "^3.9.1", - "lodash.assignin": "^4.0.9", - "lodash.bind": "^4.1.4", - "lodash.defaults": "^4.0.1", - "lodash.filter": "^4.4.0", - "lodash.flatten": "^4.2.0", - "lodash.foreach": "^4.3.0", - "lodash.map": "^4.4.0", - "lodash.merge": "^4.4.0", - "lodash.pick": "^4.2.1", - "lodash.reduce": "^4.4.0", - "lodash.reject": "^4.4.0", - "lodash.some": "^4.4.0" + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.9.tgz", + "integrity": "sha512-QF6XVdrLONO6DXRF5iaolY+odmhj2CLj+xzNod7INPWMi/x9X4SOylH0S/vaPpX+AUU6t04s34SQNh7DbkuCng==", + "requires": { + "cheerio-select": "^1.4.0", + "dom-serializer": "^1.3.1", + "domhandler": "^4.2.0", + "htmlparser2": "^6.1.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "tslib": "^2.2.0" + } + }, + "cheerio-select": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.5.0.tgz", + "integrity": "sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==", + "requires": { + "css-select": "^4.1.3", + "css-what": "^5.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0", + "domutils": "^2.7.0" } }, "chokidar": { @@ -2144,20 +2147,21 @@ } }, "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", + "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" + "boolbase": "^1.0.0", + "css-what": "^5.0.0", + "domhandler": "^4.2.0", + "domutils": "^2.6.0", + "nth-check": "^2.0.0" } }, "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz", + "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==" }, "cssesc": { "version": "3.0.0", @@ -2454,34 +2458,36 @@ } }, "dom-serializer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", - "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", + "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", "requires": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" } }, "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==" }, "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz", + "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==", "requires": { - "domelementtype": "1" + "domelementtype": "^2.2.0" } }, "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz", + "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==", "requires": { - "dom-serializer": "0", - "domelementtype": "1" + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" } }, "dot-prop": { @@ -2631,9 +2637,9 @@ } }, "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" }, "equal-length": { "version": "1.0.1", @@ -3626,28 +3632,14 @@ "dev": true }, "htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" } }, "http-cache-semantics": { @@ -4462,16 +4454,6 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "lodash.assignin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" - }, - "lodash.bind": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", - "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=" - }, "lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", @@ -4490,32 +4472,12 @@ "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", "dev": true }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" - }, - "lodash.filter": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", - "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" - }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" - }, "lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", "dev": true }, - "lodash.foreach": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", - "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" - }, "lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", @@ -4527,35 +4489,11 @@ "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=" }, - "lodash.map": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", - "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" - }, "lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" - }, - "lodash.reduce": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", - "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" - }, - "lodash.reject": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", - "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=" - }, - "lodash.some": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", - "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=" + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true }, "lodash.throttle": { "version": "4.1.1", @@ -5240,11 +5178,11 @@ } }, "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz", + "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==", "requires": { - "boolbase": "~1.0.0" + "boolbase": "^1.0.0" } }, "number-is-nan": { @@ -5758,6 +5696,19 @@ "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", "dev": true }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "requires": { + "parse5": "^6.0.1" + } + }, "parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -7422,6 +7373,11 @@ "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", "dev": true }, + "tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + }, "type": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 15a090d0b6c..5929986291b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.9.0", + "@ui5/builder": "^2.9.1", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.10", "ajv": "^6.12.6", From 400db2fc27fce7869f0def71c91c6ed7ab7e3b69 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 13 Jun 2021 02:20:56 +0000 Subject: [PATCH 0536/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 336 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 174 insertions(+), 164 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 45c1aaaa5b9..a5017b571d4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,34 +5,34 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", + "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", "requires": { - "@babel/highlight": "^7.12.13" + "@babel/highlight": "^7.14.5" } }, "@babel/compat-data": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.4.tgz", - "integrity": "sha512-i2wXrWQNkH6JplJQGn3Rd2I4Pij8GdHkXwHMxm+zV5YG/Jci+bCNrWZEWC4o+umiDkRrRs4dVzH3X4GP7vyjQQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.5.tgz", + "integrity": "sha512-kixrYn4JwfAVPa0f2yfzc2AWti6WRRyO3XjWW5PJAvtE11qhSayrrcrEnee05KAtNaPC+EwehE8Qt1UedEVB8w==", "dev": true }, "@babel/core": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.3.tgz", - "integrity": "sha512-jB5AmTKOCSJIZ72sd78ECEhuPiDMKlQdDI/4QRI6lzYATx5SSogS1oQA2AoPecRCknm30gHi2l+QVvNUu3wZAg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.14.3", - "@babel/helper-compilation-targets": "^7.13.16", - "@babel/helper-module-transforms": "^7.14.2", - "@babel/helpers": "^7.14.0", - "@babel/parser": "^7.14.3", - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.2", - "@babel/types": "^7.14.2", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.5.tgz", + "integrity": "sha512-RN/AwP2DJmQTZSfiDaD+JQQ/J99KsIpOCfBE5pL+5jJSt7nI3nYGoAXZu+ffYSQ029NLs2DstZb+eR81uuARgg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.14.5", + "@babel/helper-compilation-targets": "^7.14.5", + "@babel/helper-module-transforms": "^7.14.5", + "@babel/helpers": "^7.14.5", + "@babel/parser": "^7.14.5", + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.3.tgz", - "integrity": "sha512-bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.5.tgz", + "integrity": "sha512-y3rlP+/G25OIX3mYKKIOlQRcqj7YgrvHxOLbVmyLJ9bPmi5ttvUmpydVjcFjZphOktWuA7ovbx91ECloWTfjIA==", "dev": true, "requires": { - "@babel/types": "^7.14.2", + "@babel/types": "^7.14.5", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -90,13 +90,13 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.4.tgz", - "integrity": "sha512-JgdzOYZ/qGaKTVkn5qEDV/SXAh8KcyUVkCoSWGN8T3bwrgd6m+/dJa2kVGi6RJYJgEYPBdZ84BZp9dUjNWkBaA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz", + "integrity": "sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==", "dev": true, "requires": { - "@babel/compat-data": "^7.14.4", - "@babel/helper-validator-option": "^7.12.17", + "@babel/compat-data": "^7.14.5", + "@babel/helper-validator-option": "^7.14.5", "browserslist": "^4.16.6", "semver": "^6.3.0" }, @@ -110,126 +110,135 @@ } }, "@babel/helper-function-name": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz", - "integrity": "sha512-NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz", + "integrity": "sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.14.2" + "@babel/helper-get-function-arity": "^7.14.5", + "@babel/template": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz", + "integrity": "sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==", "dev": true, "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz", + "integrity": "sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==", + "dev": true, + "requires": { + "@babel/types": "^7.14.5" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz", - "integrity": "sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.5.tgz", + "integrity": "sha512-UxUeEYPrqH1Q/k0yRku1JE7dyfyehNwT6SVkMHvYvPDv4+uu627VXBckVj891BO8ruKBkiDoGnZf4qPDD8abDQ==", "dev": true, "requires": { - "@babel/types": "^7.13.12" + "@babel/types": "^7.14.5" } }, "@babel/helper-module-imports": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz", - "integrity": "sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz", + "integrity": "sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==", "dev": true, "requires": { - "@babel/types": "^7.13.12" + "@babel/types": "^7.14.5" } }, "@babel/helper-module-transforms": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz", - "integrity": "sha512-OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz", + "integrity": "sha512-iXpX4KW8LVODuAieD7MzhNjmM6dzYY5tfRqT+R9HDXWl0jPn/djKmA+G9s/2C2T9zggw5tK1QNqZ70USfedOwA==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.13.12", - "@babel/helper-replace-supers": "^7.13.12", - "@babel/helper-simple-access": "^7.13.12", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/helper-validator-identifier": "^7.14.0", - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.2", - "@babel/types": "^7.14.2" + "@babel/helper-module-imports": "^7.14.5", + "@babel/helper-replace-supers": "^7.14.5", + "@babel/helper-simple-access": "^7.14.5", + "@babel/helper-split-export-declaration": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.5", + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/helper-optimise-call-expression": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", - "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz", + "integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==", "dev": true, "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.14.5" } }, "@babel/helper-replace-supers": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.4.tgz", - "integrity": "sha512-zZ7uHCWlxfEAAOVDYQpEf/uyi1dmeC7fX4nCf2iz9drnCwi1zvwXL3HwWWNXUQEJ1k23yVn3VbddiI9iJEXaTQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz", + "integrity": "sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.13.12", - "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/traverse": "^7.14.2", - "@babel/types": "^7.14.4" + "@babel/helper-member-expression-to-functions": "^7.14.5", + "@babel/helper-optimise-call-expression": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/helper-simple-access": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz", - "integrity": "sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.5.tgz", + "integrity": "sha512-nfBN9xvmCt6nrMZjfhkl7i0oTV3yxR4/FztsbOASyTvVcoYd0TRHh7eMLdlEcCqobydC0LAF3LtC92Iwxo0wyw==", "dev": true, "requires": { - "@babel/types": "^7.13.12" + "@babel/types": "^7.14.5" } }, "@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz", + "integrity": "sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==", "dev": true, "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.14.5" } }, "@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==" }, "@babel/helper-validator-option": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz", - "integrity": "sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", + "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", "dev": true }, "@babel/helpers": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.0.tgz", - "integrity": "sha512-+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.5.tgz", + "integrity": "sha512-xtcWOuN9VL6nApgVHtq3PPcQv5qFBJzoSZzJ/2c0QK/IP/gxVcoWSNQwFEGvmbQsuS9rhYqjILDGGXcTkA705Q==", "dev": true, "requires": { - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.0", - "@babel/types": "^7.14.0" + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/highlight": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz", - "integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "requires": { - "@babel/helper-validator-identifier": "^7.14.0", + "@babel/helper-validator-identifier": "^7.14.5", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -286,33 +295,34 @@ } }, "@babel/parser": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.4.tgz", - "integrity": "sha512-ArliyUsWDUqEGfWcmzpGUzNfLxTdTp6WU4IuP6QFSp9gGfWS6boxFCkJSJ/L4+RG8z/FnIU3WxCk6hPL9SSWeA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.5.tgz", + "integrity": "sha512-TM8C+xtH/9n1qzX+JNHi7AN2zHMTiPUtspO0ZdHflW8KaskkALhMmuMHb4bCmNdv9VAPzJX3/bXqkVLnAvsPfg==" }, "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz", + "integrity": "sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==", "dev": true, "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" + "@babel/code-frame": "^7.14.5", + "@babel/parser": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/traverse": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.2.tgz", - "integrity": "sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.14.2", - "@babel/helper-function-name": "^7.14.2", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.14.2", - "@babel/types": "^7.14.2", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.5.tgz", + "integrity": "sha512-G3BiS15vevepdmFqmUc9X+64y0viZYygubAMO8SvBmKARuF6CPSZtH4Ng9vi/lrWlZFGe3FWdXNy835akH8Glg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.14.5", + "@babel/helper-function-name": "^7.14.5", + "@babel/helper-hoist-variables": "^7.14.5", + "@babel/helper-split-export-declaration": "^7.14.5", + "@babel/parser": "^7.14.5", + "@babel/types": "^7.14.5", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -335,12 +345,12 @@ } }, "@babel/types": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.4.tgz", - "integrity": "sha512-lCj4aIs0xUefJFQnwwQv2Bxg7Omd6bgquZ6LGC+gGMh6/s5qDVfjuCMlDmYQ15SLsWHd9n+X3E75lKIhl5Lkiw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.5.tgz", + "integrity": "sha512-M/NzBpEL95I5Hh4dwhin5JlE7EzO5PHMAuzjxss3tiOBD46KfQvVedN/3jEPZvdRvtsK2222XfdHogNIttFgcg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.14.0", + "@babel/helper-validator-identifier": "^7.14.5", "to-fast-properties": "^2.0.0" } }, @@ -705,40 +715,40 @@ } }, "@vue/compiler-core": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.0.tgz", - "integrity": "sha512-fj1yKsjpKpmKXMCUO1uoY1CUcU6g4tiEiqwxSZMlJOEXWhCl6Dwa+tLprIC3r6IdPx4R1HrZK3iuqO98r8ENDQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.1.tgz", + "integrity": "sha512-Z1RO3T6AEtAUFf2EqqovFm3ohAeTvFzRtB0qUENW2nEerJfdlk13/LS1a0EgsqlzxmYfR/S/S/gW9PLbFZZxkA==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.1.0", + "@vue/shared": "3.1.1", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.0.tgz", - "integrity": "sha512-Nz3XImMHiMpuJjgW1eTG952KkBgovjQ3KL5juzeXgU9dcHnjPMdWtfR3v1GxV5jq8q6IoXJtQIufytJEpBwGuA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.1.tgz", + "integrity": "sha512-nobRIo0t5ibzg+q8nC31m+aJhbq8FbWUoKvk6h3Vs1EqTDJaj6lBTcVTq5or8AYht7FbSpdAJ81isbJ1rWNX7A==", "dev": true, "requires": { - "@vue/compiler-core": "3.1.0", - "@vue/shared": "3.1.0" + "@vue/compiler-core": "3.1.1", + "@vue/shared": "3.1.1" } }, "@vue/compiler-sfc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.1.0.tgz", - "integrity": "sha512-MzSXtuNTnJVXSsjm30bc3ef/XIitz5F8UVruRvp1k7c72zc3US4jKI7bkMS0r2UjT4aW9mF+4JgPpieG0n+5cg==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.1.1.tgz", + "integrity": "sha512-lSgMsZaYHF+bAgryq5aUqpvyfhu52GJI2/4LoiJCE5uaxc6FCZfxfgqgw/d9ltiZghv+HiISFtmQVAVvlsk+/w==", "dev": true, "requires": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", - "@vue/compiler-core": "3.1.0", - "@vue/compiler-dom": "3.1.0", - "@vue/compiler-ssr": "3.1.0", - "@vue/shared": "3.1.0", + "@vue/compiler-core": "3.1.1", + "@vue/compiler-dom": "3.1.1", + "@vue/compiler-ssr": "3.1.1", + "@vue/shared": "3.1.1", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -769,19 +779,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.1.0.tgz", - "integrity": "sha512-O4VnFIgD9KVebv5r6Xi6v/JPcoKqfLX/lgUMoC/E9LkKbhGDWzTt7U+K0TM1CyOC1fmILYQaWlG4Osq6Sf325w==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.1.1.tgz", + "integrity": "sha512-7H6krZtVt3h/YzfNp7eYK41hMDz8ZskiBy+Wby+EDRINX6BD9JQ5C8zyy2xAa7T6Iz2VrQzsaJ/Bb52lTPSS5A==", "dev": true, "requires": { - "@vue/compiler-dom": "3.1.0", - "@vue/shared": "3.1.0" + "@vue/compiler-dom": "3.1.1", + "@vue/shared": "3.1.1" } }, "@vue/shared": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.0.tgz", - "integrity": "sha512-ThLOuFq7ZicNV1Cmlhij0m/S7oyboO5laE727s+kP5oVTpO7awjHhDe5T0hLyd6euosdBKcoBbfd8JkIhcB4dw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.1.tgz", + "integrity": "sha512-g+4pzAw7PYSjARtLBoDq6DmcblX8i9KJHSCnyM5VDDFFifUaUT9iHbFpOF/KOizQ9f7QAqU2JH3Y6aXjzUMhVA==", "dev": true }, "JSONStream": { @@ -809,9 +819,9 @@ } }, "acorn": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.3.0.tgz", - "integrity": "sha512-tqPKHZ5CaBJw0Xmy0ZZvLs1qTV+BNFSyvn77ASXkpBNfIRk8ev26fKrD9iLGwGA9zedPao52GSHzq8lyZG0NUw==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.0.tgz", + "integrity": "sha512-ULr0LDaEqQrMFGyQ3bhJkLsbtrQ8QibAseGZeaSUiT/6zb9IvIkomWHJIvgvwad+hinRAgsI51JcWk2yvwyL+w==", "dev": true }, "acorn-jsx": { @@ -1474,9 +1484,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001235", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001235.tgz", - "integrity": "sha512-zWEwIVqnzPkSAXOUlQnPW2oKoYb2aLQ4Q5ejdjBcnH63rfypaW34CxaeBn1VMya2XaEU3P/R2qHpWyj+l0BT1A==", + "version": "1.0.30001237", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001237.tgz", + "integrity": "sha512-pDHgRndit6p1NR2GhzMbQ6CkRrp4VKuSsqbcLeOQppYPKOYkKT/6ZvZDvKJUqcmtyWIAHuZq3SVS2vc1egCZzw==", "dev": true }, "catharsis": { @@ -2573,9 +2583,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.749", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.749.tgz", - "integrity": "sha512-F+v2zxZgw/fMwPz/VUGIggG4ZndDsYy0vlpthi3tjmDZlcfbhN5mYW0evXUsBr2sUtuDANFtle410A9u/sd/4A==", + "version": "1.3.752", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.752.tgz", + "integrity": "sha512-2Tg+7jSl3oPxgsBsWKh5H83QazTkmWG/cnNwJplmyZc7KcN61+I10oUgaXSVk/NwfvN3BdkKDR4FYuRBQQ2v0A==", "dev": true }, "emittery": { @@ -2926,9 +2936,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "35.1.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.1.3.tgz", - "integrity": "sha512-9AVpCssb7+cfEx3GJtnhJ8yLOVsHDKGMgngcfvwFBxdcOVPFhLENReL5aX1R2gNiG3psqIWFVBpSPnPQTrMZUA==", + "version": "35.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.2.0.tgz", + "integrity": "sha512-kMka7QWeQkgenwfazdgmdiYojS2QMI+pWtv/+3gjQJBdCWGPNXPmPQr+WO5slhiTRA+3MO3b2ZnBflXtUmq7wA==", "dev": true, "requires": { "@es-joy/jsdoccomment": "^0.8.0-alpha.2", @@ -5437,9 +5447,9 @@ } }, "ora": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.0.tgz", - "integrity": "sha512-1StwyXQGoU6gdjYkyVcqOLnVlbKj+6yPNNOxJVgpt9t4eksKjiriiHuxktLYkgllwk+D6MbC4ihH84L1udRXPg==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", "dev": true, "requires": { "bl": "^4.1.0", @@ -5855,9 +5865,9 @@ } }, "postcss": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.0.tgz", - "integrity": "sha512-+ogXpdAjWGa+fdYY5BQ96V/6tAo+TdSSIMP5huJBIygdWwKtVoB5JWZ7yUd4xZ8r+8Kvvx4nyg/PQ071H4UtcQ==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.2.tgz", + "integrity": "sha512-y1FK/AWdZlBF5lusS5j5l4/vF67+vQZt1SXPVJ32y1kRGDQyrs1zk32hG1cInRTu14P0V+orPz+ifwW/7rR4bg==", "dev": true, "requires": { "colorette": "^1.2.2", @@ -7374,9 +7384,9 @@ "dev": true }, "tslib": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", - "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" }, "type": { "version": "1.2.0", diff --git a/packages/project/package.json b/packages/project/package.json index 5929986291b..75b4eff5871 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.28.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^35.1.3", + "eslint-plugin-jsdoc": "^35.2.0", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 9390c244e4caee02fa9be09ea631bf539a756a7f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 17 Jun 2021 16:18:27 +0000 Subject: [PATCH 0537/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.9.1 to 2.9.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.9.2/CHANGELOG.md --- packages/project/package-lock.json | 36 ++++++++++++++++++++++++------ packages/project/package.json | 2 +- 2 files changed, 30 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a5017b571d4..c974a72e5af 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -635,16 +635,16 @@ "dev": true }, "@ui5/builder": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.1.tgz", - "integrity": "sha512-me90rEMtw3v8abiJzXlazPRo+8/zq0sSKqVUU6M6mDchSo5TgsFH18nvBoWNL546ikFpzjxnT5Vm8MOs7ysubA==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.2.tgz", + "integrity": "sha512-W3S/fWHYxIqg9lNKtjGfXO5+/wlD7lHkEJqIyiLBukxKCGyzJUOvogquBDQKTuFHInevydtjONcGHq9LhxNcqQ==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", - "esprima": "^4.0.1", + "espree": "^6.2.1", "estraverse": "5.1.0", "globby": "^11.0.3", "graceful-fs": "^4.2.6", @@ -659,6 +659,28 @@ "terser": "^5.7.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + }, + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + }, + "espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "requires": { + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" + } + } } }, "@ui5/fs": { @@ -827,8 +849,7 @@ "acorn-jsx": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", - "dev": true + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==" }, "acorn-walk": { "version": "8.1.0", @@ -3038,7 +3059,8 @@ "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true }, "esquery": { "version": "1.4.0", diff --git a/packages/project/package.json b/packages/project/package.json index 75b4eff5871..f7726395818 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.9.1", + "@ui5/builder": "^2.9.2", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.10", "ajv": "^6.12.6", From 5b6ddf60fad3b68e9a4774a9b809dd07ecee00b4 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 20 Jun 2021 02:27:52 +0000 Subject: [PATCH 0538/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 216 ++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 108 insertions(+), 114 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c974a72e5af..08989221468 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -19,17 +19,17 @@ "dev": true }, "@babel/core": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.5.tgz", - "integrity": "sha512-RN/AwP2DJmQTZSfiDaD+JQQ/J99KsIpOCfBE5pL+5jJSt7nI3nYGoAXZu+ffYSQ029NLs2DstZb+eR81uuARgg==", + "version": "7.14.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.6.tgz", + "integrity": "sha512-gJnOEWSqTk96qG5BoIrl5bVtc23DCycmIePPYnamY9RboYdI4nFy5vAQMSl81O5K/W0sLDWfGysnOECC+KUUCA==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", "@babel/generator": "^7.14.5", "@babel/helper-compilation-targets": "^7.14.5", "@babel/helper-module-transforms": "^7.14.5", - "@babel/helpers": "^7.14.5", - "@babel/parser": "^7.14.5", + "@babel/helpers": "^7.14.6", + "@babel/parser": "^7.14.6", "@babel/template": "^7.14.5", "@babel/traverse": "^7.14.5", "@babel/types": "^7.14.5", @@ -223,9 +223,9 @@ "dev": true }, "@babel/helpers": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.5.tgz", - "integrity": "sha512-xtcWOuN9VL6nApgVHtq3PPcQv5qFBJzoSZzJ/2c0QK/IP/gxVcoWSNQwFEGvmbQsuS9rhYqjILDGGXcTkA705Q==", + "version": "7.14.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.6.tgz", + "integrity": "sha512-yesp1ENQBiLI+iYHSJdoZKUtRpfTlL1grDIX9NRlAVppljLw/4tTyYupIB7uIYmC3stW/imAv8EqaKaS/ibmeA==", "dev": true, "requires": { "@babel/template": "^7.14.5", @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.5.tgz", - "integrity": "sha512-TM8C+xtH/9n1qzX+JNHi7AN2zHMTiPUtspO0ZdHflW8KaskkALhMmuMHb4bCmNdv9VAPzJX3/bXqkVLnAvsPfg==" + "version": "7.14.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.6.tgz", + "integrity": "sha512-oG0ej7efjEXxb4UgE+klVx+3j4MVo+A2vCzm7OUN4CLo6WhQ+vSOD2yJ8m7B+DghObxtLxt3EfgMWpq+AsWehQ==" }, "@babel/template": { "version": "7.14.5", @@ -416,6 +416,17 @@ "ms": "2.1.2" } }, + "espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "requires": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + } + }, "globals": { "version": "13.9.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", @@ -659,28 +670,6 @@ "terser": "^5.7.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" - }, - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" - }, - "espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", - "requires": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - } - } } }, "@ui5/fs": { @@ -841,10 +830,9 @@ } }, "acorn": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.0.tgz", - "integrity": "sha512-ULr0LDaEqQrMFGyQ3bhJkLsbtrQ8QibAseGZeaSUiT/6zb9IvIkomWHJIvgvwad+hinRAgsI51JcWk2yvwyL+w==", - "dev": true + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" }, "acorn-jsx": { "version": "5.3.1", @@ -1128,6 +1116,12 @@ "yargs": "^16.2.0" }, "dependencies": { + "acorn": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.0.tgz", + "integrity": "sha512-ULr0LDaEqQrMFGyQ3bhJkLsbtrQ8QibAseGZeaSUiT/6zb9IvIkomWHJIvgvwad+hinRAgsI51JcWk2yvwyL+w==", + "dev": true + }, "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", @@ -1505,9 +1499,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001237", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001237.tgz", - "integrity": "sha512-pDHgRndit6p1NR2GhzMbQ6CkRrp4VKuSsqbcLeOQppYPKOYkKT/6ZvZDvKJUqcmtyWIAHuZq3SVS2vc1egCZzw==", + "version": "1.0.30001239", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001239.tgz", + "integrity": "sha512-cyBkXJDMeI4wthy8xJ2FvDU6+0dtcZSJW3voUF8+e9f1bBeuvyZfc3PNbkOETyhbR+dGCPzn9E7MA3iwzusOhQ==", "dev": true }, "catharsis": { @@ -1554,19 +1548,19 @@ } }, "chokidar": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", - "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", "dev": true, "requires": { - "anymatch": "~3.1.1", + "anymatch": "~3.1.2", "braces": "~3.0.2", - "fsevents": "~2.3.1", - "glob-parent": "~5.1.0", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.5.0" + "readdirp": "~3.6.0" } }, "chokidar-cli": { @@ -2048,9 +2042,9 @@ "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", "dev": true, "requires": { "safe-buffer": "~5.1.1" @@ -2832,9 +2826,9 @@ } }, "eslint": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.28.0.tgz", - "integrity": "sha512-UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.29.0.tgz", + "integrity": "sha512-82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", @@ -2902,6 +2896,31 @@ "ms": "2.1.2" } }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "requires": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } + } + }, "globals": { "version": "13.9.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", @@ -2957,9 +2976,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "35.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.2.0.tgz", - "integrity": "sha512-kMka7QWeQkgenwfazdgmdiYojS2QMI+pWtv/+3gjQJBdCWGPNXPmPQr+WO5slhiTRA+3MO3b2ZnBflXtUmq7wA==", + "version": "35.3.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.3.2.tgz", + "integrity": "sha512-r3qfbByMZ4O5Y8O6aHxo1AdgdpwTQSD72anIZuhjNI6ZkMtjhpSkkPN3cY/tsZtmWeMH+1pB/nblWIAr3F0lxA==", "dev": true, "requires": { "@es-joy/jsdoccomment": "^0.8.0-alpha.2", @@ -3015,45 +3034,21 @@ "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } } }, "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" }, "espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dev": true, + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", "requires": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - }, - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" } }, "esprima": { @@ -3537,9 +3532,9 @@ "dev": true }, "globby": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz", - "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==", + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", + "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", "requires": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -4203,15 +4198,14 @@ } }, "js-beautify": { - "version": "1.13.13", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.13.tgz", - "integrity": "sha512-oH+nc0U5mOAqX8M5JO1J0Pw/7Q35sAdOsM5W3i87pir9Ntx6P/5Gx1xLNoK+MGyvHk4rqqRCE4Oq58H6xl2W7A==", + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.0.tgz", + "integrity": "sha512-yuck9KirNSCAwyNJbqW+BxJqJ0NLJ4PwBUzQQACl5O3qHMBXVkXb/rD0ilh/Lat/tn88zSZ+CAHOlk0DsY7GuQ==", "dev": true, "requires": { "config-chain": "^1.1.12", "editorconfig": "^0.15.3", "glob": "^7.1.3", - "mkdirp": "^1.0.4", "nopt": "^5.0.0" } }, @@ -4669,9 +4663,9 @@ "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==" }, "marked": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.7.tgz", - "integrity": "sha512-BJXxkuIfJchcXOJWTT2DOL+yFWifFv2yGYOUzvXg8Qz610QKw+sHCvTMYwA+qWGhlA2uivBezChZ/pBy1tWdkQ==" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/marked/-/marked-2.1.1.tgz", + "integrity": "sha512-5XFS69o9CzDpQDSpUYC+AN2xvq8yl1EGa5SG/GI1hP78/uTeo3PDfiDNmsUyiahpyhToDDJhQk7fNtJsga+KVw==" }, "matcher": { "version": "3.0.0", @@ -5887,9 +5881,9 @@ } }, "postcss": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.2.tgz", - "integrity": "sha512-y1FK/AWdZlBF5lusS5j5l4/vF67+vQZt1SXPVJ32y1kRGDQyrs1zk32hG1cInRTu14P0V+orPz+ifwW/7rR4bg==", + "version": "8.3.5", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.5.tgz", + "integrity": "sha512-NxTuJocUhYGsMiMFHDUkmjSKT3EdH4/WbGF6GCi1NDGk+vbcUTun4fpbOqaPtD8IIsztA2ilZm2DhYCuyN58gA==", "dev": true, "requires": { "colorette": "^1.2.2", @@ -6248,9 +6242,9 @@ "dev": true }, "readdirp": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", - "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "requires": { "picomatch": "^2.2.1" @@ -6267,9 +6261,9 @@ } }, "regexpp": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", - "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true }, "regextras": { @@ -6479,9 +6473,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.34.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.34.1.tgz", - "integrity": "sha512-scLA7EIZM+MmYlej6sdVr0HRbZX5caX5ofDT9asWnUJj21oqgsC+1LuNfm0eg+vM0fCTZHhwImTiCU0sx9h9CQ==", + "version": "1.35.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.35.1.tgz", + "integrity": "sha512-oCisuQJstxMcacOPmxLNiLlj4cUyN2+8xJnG7VanRoh2GOLr9RqkvI4AxA4a6LHVg/rsu+PmxXeGhrdSF9jCiQ==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index f7726395818..23c1737423d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,14 +127,14 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.1", "docdash": "^1.2.0", - "eslint": "^7.28.0", + "eslint": "^7.29.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^35.2.0", + "eslint-plugin-jsdoc": "^35.3.2", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", - "js-beautify": "^1.13.13", + "js-beautify": "^1.14.0", "jsdoc": "^3.6.7", "mock-require": "^3.0.3", "nyc": "^15.1.0", From a6daf1e6a227dea1a627b969c79be6197159668f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 27 Jun 2021 02:21:11 +0000 Subject: [PATCH 0539/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 140 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 72 insertions(+), 72 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 08989221468..9b8acda7341 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,9 +13,9 @@ } }, "@babel/compat-data": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.5.tgz", - "integrity": "sha512-kixrYn4JwfAVPa0f2yfzc2AWti6WRRyO3XjWW5PJAvtE11qhSayrrcrEnee05KAtNaPC+EwehE8Qt1UedEVB8w==", + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.7.tgz", + "integrity": "sha512-nS6dZaISCXJ3+518CWiBfEr//gHyMO02uDxBkXTKZDN5POruCnOZ1N4YBRZDCabwF8nZMWBpRxIicmXtBs+fvw==", "dev": true }, "@babel/core": { @@ -139,9 +139,9 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.5.tgz", - "integrity": "sha512-UxUeEYPrqH1Q/k0yRku1JE7dyfyehNwT6SVkMHvYvPDv4+uu627VXBckVj891BO8ruKBkiDoGnZf4qPDD8abDQ==", + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.7.tgz", + "integrity": "sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==", "dev": true, "requires": { "@babel/types": "^7.14.5" @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.6.tgz", - "integrity": "sha512-oG0ej7efjEXxb4UgE+klVx+3j4MVo+A2vCzm7OUN4CLo6WhQ+vSOD2yJ8m7B+DghObxtLxt3EfgMWpq+AsWehQ==" + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.7.tgz", + "integrity": "sha512-X67Z5y+VBJuHB/RjwECp8kSl5uYi0BvRbNeWqkaJCVh+LiTPl19WBUfG627psSgp9rSf6ojuXghQM3ha6qHHdA==" }, "@babel/template": { "version": "7.14.5", @@ -311,9 +311,9 @@ } }, "@babel/traverse": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.5.tgz", - "integrity": "sha512-G3BiS15vevepdmFqmUc9X+64y0viZYygubAMO8SvBmKARuF6CPSZtH4Ng9vi/lrWlZFGe3FWdXNy835akH8Glg==", + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.7.tgz", + "integrity": "sha512-9vDr5NzHu27wgwejuKL7kIOm4bwEtaPQ4Z6cpCmjSuaRqpH/7xc4qcGEscwMqlkwgcXl6MvqoAjZkQ24uSdIZQ==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", @@ -321,7 +321,7 @@ "@babel/helper-function-name": "^7.14.5", "@babel/helper-hoist-variables": "^7.14.5", "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/parser": "^7.14.5", + "@babel/parser": "^7.14.7", "@babel/types": "^7.14.5", "debug": "^4.1.0", "globals": "^11.1.0" @@ -372,22 +372,14 @@ } }, "@es-joy/jsdoccomment": { - "version": "0.8.0-alpha.2", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.8.0-alpha.2.tgz", - "integrity": "sha512-fjRY13Bh8sxDZkzO27U2R9L6xFqkh5fAbHuMGvGLXLfrTes8nTTMyOi6wIPt+CG0XPAxEUge8cDjhG+0aag6ew==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.8.0.tgz", + "integrity": "sha512-Xd3GzYsL2sz2pcdtYt5Q0Wz1ol/o9Nt2UQL4nFPDcaEomvPmwjJsbjkKx1SKhl2h3TgwazNBLdcNr2m0UiGiFA==", "dev": true, "requires": { "comment-parser": "^1.1.5", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "1.0.0-alpha.23" - }, - "dependencies": { - "jsdoc-type-pratt-parser": { - "version": "1.0.0-alpha.23", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.0.0-alpha.23.tgz", - "integrity": "sha512-COtimMd97eo5W0h6R9ISFj9ufg/9EiAzVAeQpKBJ1xJs/x8znWE155HGBDR2rwOuZsCes1gBXGmFVfvRZxGrhg==", - "dev": true - } + "jsdoc-type-pratt-parser": "1.0.4" } }, "@eslint/eslintrc": { @@ -622,6 +614,12 @@ "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==", "dev": true }, + "@types/estree": { + "version": "0.0.48", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.48.tgz", + "integrity": "sha512-LfZwXoGUDo0C3me81HXgkBg5CTQYb6xzEl+fNmbO4JdRiSKQ8A0GD1OBBvKAIsbCUgoyAty7m99GqqMQe784ew==", + "dev": true + }, "@types/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz", @@ -726,40 +724,41 @@ } }, "@vue/compiler-core": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.1.tgz", - "integrity": "sha512-Z1RO3T6AEtAUFf2EqqovFm3ohAeTvFzRtB0qUENW2nEerJfdlk13/LS1a0EgsqlzxmYfR/S/S/gW9PLbFZZxkA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.2.tgz", + "integrity": "sha512-nHmq7vLjq/XM2IMbZUcKWoH5sPXa2uR/nIKZtjbK5F3TcbnYE/zKsrSUR9WZJ03unlwotNBX1OyxVt9HbWD7/Q==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.1.1", + "@vue/shared": "3.1.2", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.1.tgz", - "integrity": "sha512-nobRIo0t5ibzg+q8nC31m+aJhbq8FbWUoKvk6h3Vs1EqTDJaj6lBTcVTq5or8AYht7FbSpdAJ81isbJ1rWNX7A==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.2.tgz", + "integrity": "sha512-k2+SWcWH0jL6WQAX7Or2ONqu5MbtTgTO0dJrvebQYzgqaKMXNI90RNeWeCxS4BnNFMDONpHBeFgbwbnDWIkmRg==", "dev": true, "requires": { - "@vue/compiler-core": "3.1.1", - "@vue/shared": "3.1.1" + "@vue/compiler-core": "3.1.2", + "@vue/shared": "3.1.2" } }, "@vue/compiler-sfc": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.1.1.tgz", - "integrity": "sha512-lSgMsZaYHF+bAgryq5aUqpvyfhu52GJI2/4LoiJCE5uaxc6FCZfxfgqgw/d9ltiZghv+HiISFtmQVAVvlsk+/w==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.1.2.tgz", + "integrity": "sha512-SeG/2+DvwejQ7oAiSx8BrDh5qOdqCYHGClPiTvVIHTfSIHiS2JjMbCANdDCjHkTOh/O7WZzo2JhdKm98bRBxTw==", "dev": true, "requires": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", - "@vue/compiler-core": "3.1.1", - "@vue/compiler-dom": "3.1.1", - "@vue/compiler-ssr": "3.1.1", - "@vue/shared": "3.1.1", + "@types/estree": "^0.0.48", + "@vue/compiler-core": "3.1.2", + "@vue/compiler-dom": "3.1.2", + "@vue/compiler-ssr": "3.1.2", + "@vue/shared": "3.1.2", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -790,19 +789,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.1.1.tgz", - "integrity": "sha512-7H6krZtVt3h/YzfNp7eYK41hMDz8ZskiBy+Wby+EDRINX6BD9JQ5C8zyy2xAa7T6Iz2VrQzsaJ/Bb52lTPSS5A==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.1.2.tgz", + "integrity": "sha512-BwXo9LFk5OSWdMyZQ4bX1ELHX0Z/9F+ld/OaVnpUPzAZCHslBYLvyKUVDwv2C/lpLjRffpC2DOUEdl1+RP1aGg==", "dev": true, "requires": { - "@vue/compiler-dom": "3.1.1", - "@vue/shared": "3.1.1" + "@vue/compiler-dom": "3.1.2", + "@vue/shared": "3.1.2" } }, "@vue/shared": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.1.tgz", - "integrity": "sha512-g+4pzAw7PYSjARtLBoDq6DmcblX8i9KJHSCnyM5VDDFFifUaUT9iHbFpOF/KOizQ9f7QAqU2JH3Y6aXjzUMhVA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.2.tgz", + "integrity": "sha512-EmH/poaDWBPJaPILXNI/1fvUbArJQmmTyVCwvvyDYDFnkPoTclAbHRAtyIvqfez7jybTDn077HTNILpxlsoWhg==", "dev": true }, "JSONStream": { @@ -1117,9 +1116,9 @@ }, "dependencies": { "acorn": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.0.tgz", - "integrity": "sha512-ULr0LDaEqQrMFGyQ3bhJkLsbtrQ8QibAseGZeaSUiT/6zb9IvIkomWHJIvgvwad+hinRAgsI51JcWk2yvwyL+w==", + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz", + "integrity": "sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==", "dev": true }, "ansi-regex": { @@ -1499,9 +1498,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001239", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001239.tgz", - "integrity": "sha512-cyBkXJDMeI4wthy8xJ2FvDU6+0dtcZSJW3voUF8+e9f1bBeuvyZfc3PNbkOETyhbR+dGCPzn9E7MA3iwzusOhQ==", + "version": "1.0.30001240", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001240.tgz", + "integrity": "sha512-nb8mDzfMdxBDN7ZKx8chWafAdBp5DAAlpWvNyUGe5tcDWd838zpzDN3Rah9cjCqhfOKkrvx40G2SDtP0qiWX/w==", "dev": true }, "catharsis": { @@ -2346,9 +2345,9 @@ "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" }, "depcheck": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.1.tgz", - "integrity": "sha512-ecX8zIXE9TlVu14ebnZTwgIeP/t/Rq2WpowjWbMuqG6ayozVVf9zKW4EBEQ/HsS1dxhY+J9+UiRetu2UMxG9ww==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.2.tgz", + "integrity": "sha512-oYaBLRbF5NMkYxc5rltnqtuPAn25Lx5xPBIJXy5oUVBgrEDDtotCoYUfFH8lvcmSWzgk1Ts9H+f4Rk0oWL51LQ==", "dev": true, "requires": { "@babel/parser": "^7.12.5", @@ -2359,6 +2358,7 @@ "debug": "^4.2.0", "deps-regex": "^0.1.4", "ignore": "^5.1.8", + "is-core-module": "^2.4.0", "js-yaml": "^3.14.0", "json5": "^2.1.3", "lodash": "^4.17.20", @@ -2598,9 +2598,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.752", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.752.tgz", - "integrity": "sha512-2Tg+7jSl3oPxgsBsWKh5H83QazTkmWG/cnNwJplmyZc7KcN61+I10oUgaXSVk/NwfvN3BdkKDR4FYuRBQQ2v0A==", + "version": "1.3.759", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.759.tgz", + "integrity": "sha512-nM76xH0t2FBH5iMEZDVc3S/qbdKjGH7TThezxC8k1Q7w7WHvIAyJh8lAe2UamGfdRqBTjHfPDn82LJ0ksCiB9g==", "dev": true }, "emittery": { @@ -2976,9 +2976,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "35.3.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.3.2.tgz", - "integrity": "sha512-r3qfbByMZ4O5Y8O6aHxo1AdgdpwTQSD72anIZuhjNI6ZkMtjhpSkkPN3cY/tsZtmWeMH+1pB/nblWIAr3F0lxA==", + "version": "35.4.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.4.0.tgz", + "integrity": "sha512-0cr+NkPTxpTiMCtYOd8W5fd2IyC/CmaTHKb+0bzkpP9p8HfmJ3B2/M6FWj97rQJOLwLMkx+g2MIEZsrttpbFmQ==", "dev": true, "requires": { "@es-joy/jsdoccomment": "^0.8.0-alpha.2", @@ -4663,9 +4663,9 @@ "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==" }, "marked": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/marked/-/marked-2.1.1.tgz", - "integrity": "sha512-5XFS69o9CzDpQDSpUYC+AN2xvq8yl1EGa5SG/GI1hP78/uTeo3PDfiDNmsUyiahpyhToDDJhQk7fNtJsga+KVw==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/marked/-/marked-2.1.3.tgz", + "integrity": "sha512-/Q+7MGzaETqifOMWYEA7HVMaZb4XbcRfaOzcSsHZEith83KGlvaSG33u0SKu89Mj5h+T8V2hM+8O45Qc5XTgwA==" }, "matcher": { "version": "3.0.0", @@ -7833,9 +7833,9 @@ } }, "yargs-parser": { - "version": "20.2.7", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", - "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true }, "yazl": { diff --git a/packages/project/package.json b/packages/project/package.json index 23c1737423d..2df5750a7c7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -125,11 +125,11 @@ "ava": "^3.15.0", "chokidar-cli": "^2.1.0", "cross-env": "^7.0.3", - "depcheck": "^1.4.1", + "depcheck": "^1.4.2", "docdash": "^1.2.0", "eslint": "^7.29.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^35.3.2", + "eslint-plugin-jsdoc": "^35.4.0", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From fcb86561201e996b3375df53ca98b398e57e84d1 Mon Sep 17 00:00:00 2001 From: Sebastian Wolf Date: Mon, 28 Jun 2021 18:06:35 +0200 Subject: [PATCH 0540/1272] [ui5-project][INTERNAL] Chore: Use GitHub license template --- packages/project/LICENSE.txt | 401 +++++++++++++++++------------------ 1 file changed, 197 insertions(+), 204 deletions(-) diff --git a/packages/project/LICENSE.txt b/packages/project/LICENSE.txt index 4ed90b95224..b5eb61dc1dc 100644 --- a/packages/project/LICENSE.txt +++ b/packages/project/LICENSE.txt @@ -1,208 +1,201 @@ -Apache License + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ -Version 2.0, January 2004 - -http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, -AND DISTRIBUTION + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. - - -"License" shall mean the terms and conditions for use, reproduction, and distribution -as defined by Sections 1 through 9 of this document. - - - -"Licensor" shall mean the copyright owner or entity authorized by the copyright -owner that is granting the License. - - - -"Legal Entity" shall mean the union of the acting entity and all other entities -that control, are controlled by, or are under common control with that entity. -For the purposes of this definition, "control" means (i) the power, direct -or indirect, to cause the direction or management of such entity, whether -by contract or otherwise, or (ii) ownership of fifty percent (50%) or more -of the outstanding shares, or (iii) beneficial ownership of such entity. - - - -"You" (or "Your") shall mean an individual or Legal Entity exercising permissions -granted by this License. - - - -"Source" form shall mean the preferred form for making modifications, including -but not limited to software source code, documentation source, and configuration -files. - - - -"Object" form shall mean any form resulting from mechanical transformation -or translation of a Source form, including but not limited to compiled object -code, generated documentation, and conversions to other media types. - - - -"Work" shall mean the work of authorship, whether in Source or Object form, -made available under the License, as indicated by a copyright notice that -is included in or attached to the work (an example is provided in the Appendix -below). - - - -"Derivative Works" shall mean any work, whether in Source or Object form, -that is based on (or derived from) the Work and for which the editorial revisions, -annotations, elaborations, or other modifications represent, as a whole, an -original work of authorship. For the purposes of this License, Derivative -Works shall not include works that remain separable from, or merely link (or -bind by name) to the interfaces of, the Work and Derivative Works thereof. - - - -"Contribution" shall mean any work of authorship, including the original version -of the Work and any modifications or additions to that Work or Derivative -Works thereof, that is intentionally submitted to Licensor for inclusion in -the Work by the copyright owner or by an individual or Legal Entity authorized -to submit on behalf of the copyright owner. For the purposes of this definition, -"submitted" means any form of electronic, verbal, or written communication -sent to the Licensor or its representatives, including but not limited to -communication on electronic mailing lists, source code control systems, and -issue tracking systems that are managed by, or on behalf of, the Licensor -for the purpose of discussing and improving the Work, but excluding communication -that is conspicuously marked or otherwise designated in writing by the copyright -owner as "Not a Contribution." - - - -"Contributor" shall mean Licensor and any individual or Legal Entity on behalf -of whom a Contribution has been received by Licensor and subsequently incorporated -within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of this -License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, -no-charge, royalty-free, irrevocable copyright license to reproduce, prepare -Derivative Works of, publicly display, publicly perform, sublicense, and distribute -the Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of this License, -each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, -no-charge, royalty-free, irrevocable (except as stated in this section) patent -license to make, have made, use, offer to sell, sell, import, and otherwise -transfer the Work, where such license applies only to those patent claims -licensable by such Contributor that are necessarily infringed by their Contribution(s) -alone or by combination of their Contribution(s) with the Work to which such -Contribution(s) was submitted. If You institute patent litigation against -any entity (including a cross-claim or counterclaim in a lawsuit) alleging -that the Work or a Contribution incorporated within the Work constitutes direct -or contributory patent infringement, then any patent licenses granted to You -under this License for that Work shall terminate as of the date such litigation -is filed. - -4. Redistribution. You may reproduce and distribute copies of the Work or -Derivative Works thereof in any medium, with or without modifications, and -in Source or Object form, provided that You meet the following conditions: - -(a) You must give any other recipients of the Work or Derivative Works a copy -of this License; and - -(b) You must cause any modified files to carry prominent notices stating that -You changed the files; and - -(c) You must retain, in the Source form of any Derivative Works that You distribute, -all copyright, patent, trademark, and attribution notices from the Source -form of the Work, excluding those notices that do not pertain to any part -of the Derivative Works; and - -(d) If the Work includes a "NOTICE" text file as part of its distribution, -then any Derivative Works that You distribute must include a readable copy -of the attribution notices contained within such NOTICE file, excluding those -notices that do not pertain to any part of the Derivative Works, in at least -one of the following places: within a NOTICE text file distributed as part -of the Derivative Works; within the Source form or documentation, if provided -along with the Derivative Works; or, within a display generated by the Derivative -Works, if and wherever such third-party notices normally appear. The contents -of the NOTICE file are for informational purposes only and do not modify the -License. You may add Your own attribution notices within Derivative Works -that You distribute, alongside or as an addendum to the NOTICE text from the -Work, provided that such additional attribution notices cannot be construed -as modifying the License. - -You may add Your own copyright statement to Your modifications and may provide -additional or different license terms and conditions for use, reproduction, -or distribution of Your modifications, or for any such Derivative Works as -a whole, provided Your use, reproduction, and distribution of the Work otherwise -complies with the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, any -Contribution intentionally submitted for inclusion in the Work by You to the -Licensor shall be under the terms and conditions of this License, without -any additional terms or conditions. Notwithstanding the above, nothing herein -shall supersede or modify the terms of any separate license agreement you -may have executed with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade names, -trademarks, service marks, or product names of the Licensor, except as required -for reasonable and customary use in describing the origin of the Work and -reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or agreed to -in writing, Licensor provides the Work (and each Contributor provides its -Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -KIND, either express or implied, including, without limitation, any warranties -or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR -A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness -of using or redistributing the Work and assume any risks associated with Your -exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, whether -in tort (including negligence), contract, or otherwise, unless required by -applicable law (such as deliberate and grossly negligent acts) or agreed to -in writing, shall any Contributor be liable to You for damages, including -any direct, indirect, special, incidental, or consequential damages of any -character arising as a result of this License or out of the use or inability -to use the Work (including but not limited to damages for loss of goodwill, -work stoppage, computer failure or malfunction, or any and all other commercial -damages or losses), even if such Contributor has been advised of the possibility -of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing the Work -or Derivative Works thereof, You may choose to offer, and charge a fee for, -acceptance of support, warranty, indemnity, or other liability obligations -and/or rights consistent with this License. However, in accepting such obligations, -You may act only on Your own behalf and on Your sole responsibility, not on -behalf of any other Contributor, and only if You agree to indemnify, defend, -and hold each Contributor harmless for any liability incurred by, or claims -asserted against, such Contributor by reason of your accepting any such warranty -or additional liability. END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - -To apply the Apache License to your work, attach the following boilerplate -notice, with the fields enclosed by brackets "[]" replaced with your own identifying -information. (Don't include the brackets!) The text should be enclosed in -the appropriate comment syntax for the file format. We also recommend that -a file or class name and description of purpose be included on the same "printed -page" as the copyright notice for easier identification within third-party -archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed 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. + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2018-2021 SAP SE or an SAP affiliate company and UI5 Tooling contributors + + Licensed 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. From d8ae0128fb190bcc1606810e0b56595ec7ba217a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 1 Jul 2021 10:25:53 +0000 Subject: [PATCH 0541/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.9.2 to 2.9.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.9.3/CHANGELOG.md --- packages/project/package-lock.json | 28 ++++++++++++++++++++-------- packages/project/package.json | 2 +- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9b8acda7341..f89f6c2d8a7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -644,9 +644,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.2.tgz", - "integrity": "sha512-W3S/fWHYxIqg9lNKtjGfXO5+/wlD7lHkEJqIyiLBukxKCGyzJUOvogquBDQKTuFHInevydtjONcGHq9LhxNcqQ==", + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.3.tgz", + "integrity": "sha512-OUGrbFNxRT0xCryrJ5npr5muvoQ71Icm6O2wzxy7tX/UGDmSqsUzupwqBzHQVi2uZyWI5nGEKL4kkny1cjiMZQ==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -655,10 +655,10 @@ "escope": "^3.6.0", "espree": "^6.2.1", "estraverse": "5.1.0", - "globby": "^11.0.3", + "globby": "^11.0.4", "graceful-fs": "^4.2.6", "jsdoc": "^3.6.7", - "less-openui5": "^0.11.1", + "less-openui5": "^0.11.2", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "pretty-hrtime": "^1.0.3", @@ -668,6 +668,18 @@ "terser": "^5.7.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "less-openui5": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.2.tgz", + "integrity": "sha512-FkAT0JDB3NGroia/hdYInzVzpERINovKEgjeijfYgLK7C4eef8a0midlgdBfTZanv3Gz8zUSjfGYXNWL82jEBA==", + "requires": { + "clone": "^2.1.0", + "css": "^3.0.0", + "mime": "^1.6.0" + } + } } }, "@ui5/fs": { @@ -7294,9 +7306,9 @@ } }, "terser": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz", - "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.1.tgz", + "integrity": "sha512-b3e+d5JbHAe/JSjwsC3Zn55wsBIM7AsHLjKxT31kGCldgbpFePaFo+PiddtO6uwRZWRw7sPXmAN8dTW61xmnSg==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", diff --git a/packages/project/package.json b/packages/project/package.json index 2df5750a7c7..750ca546cb2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.9.2", + "@ui5/builder": "^2.9.3", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.2.10", "ajv": "^6.12.6", From 6116b885f520dc96ba6037eb2cce7dfaa86e9e8e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 1 Jul 2021 10:33:56 +0000 Subject: [PATCH 0542/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.2.10 to 2.3.0 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.3.0/CHANGELOG.md --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f89f6c2d8a7..47a0054bac1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -707,11 +707,11 @@ } }, "@ui5/server": { - "version": "2.2.10", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.2.10.tgz", - "integrity": "sha512-mUACR9sxwWpmNeSZ/F9G7rXCYsEfO7Mp+MI/Qr3Ej1+IHSr4rluqaFZh5uIITBQtuOHb+9aQMVLFVbGe6HFO+g==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.3.0.tgz", + "integrity": "sha512-IPxvvyyCVhMbfaip+egC1pUB5/DwFMqobuiGmMiolybeGKsTsE27LORNmaCJHNQcZ0JgBVuPclk+gvJ1/58wXw==", "requires": { - "@ui5/builder": "^2.9.0", + "@ui5/builder": "^2.9.3", "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", "body-parser": "^1.19.0", @@ -725,7 +725,7 @@ "fresh": "^0.5.2", "graceful-fs": "^4.2.6", "make-dir": "^3.1.0", - "mime-types": "^2.1.30", + "mime-types": "^2.1.31", "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", @@ -4375,9 +4375,9 @@ } }, "less-openui5": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.1.tgz", - "integrity": "sha512-jzEWIAV5F3VlsNifHNkAB5pBBVy643Mw9UGZIpAPbQ56RO04BSHcVW05TlZyNnGnrfUF11RmTjvhZxiWs0Ovag==", + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.2.tgz", + "integrity": "sha512-FkAT0JDB3NGroia/hdYInzVzpERINovKEgjeijfYgLK7C4eef8a0midlgdBfTZanv3Gz8zUSjfGYXNWL82jEBA==", "requires": { "clone": "^2.1.0", "css": "^3.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 750ca546cb2..4544cebf6fe 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^2.9.3", "@ui5/logger": "^2.0.1", - "@ui5/server": "^2.2.10", + "@ui5/server": "^2.3.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.1", From 944b545c4787fe412b6da4bcc8ca8f57142d5f36 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 4 Jul 2021 02:20:49 +0000 Subject: [PATCH 0543/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 150 +++++++++++++++++------------ packages/project/package.json | 4 +- 2 files changed, 88 insertions(+), 66 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 47a0054bac1..3fc7b9832b7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -458,6 +458,40 @@ } } }, + "@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + }, + "dependencies": { + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "@humanwhocodes/object-schema": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", + "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "dev": true + }, "@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -609,9 +643,9 @@ "dev": true }, "@types/debug": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.5.tgz", - "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==", + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.6.tgz", + "integrity": "sha512-7fDOJFA/x8B+sO1901BmHlf5dE1cxBU8mRXj8QOEDnn16hhGJv/IHxJtZhvsabZsIMn0eLIyeOKAeqSNJJYTpA==", "dev": true }, "@types/estree": { @@ -668,18 +702,6 @@ "terser": "^5.7.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "less-openui5": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.2.tgz", - "integrity": "sha512-FkAT0JDB3NGroia/hdYInzVzpERINovKEgjeijfYgLK7C4eef8a0midlgdBfTZanv3Gz8zUSjfGYXNWL82jEBA==", - "requires": { - "clone": "^2.1.0", - "css": "^3.0.0", - "mime": "^1.6.0" - } - } } }, "@ui5/fs": { @@ -736,41 +758,41 @@ } }, "@vue/compiler-core": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.2.tgz", - "integrity": "sha512-nHmq7vLjq/XM2IMbZUcKWoH5sPXa2uR/nIKZtjbK5F3TcbnYE/zKsrSUR9WZJ03unlwotNBX1OyxVt9HbWD7/Q==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.4.tgz", + "integrity": "sha512-TnUz+1z0y74O/A4YKAbzsdUfamyHV73MihrEfvettWpm9bQKVoZd1nEmR1cGN9LsXWlwAvVQBetBlWdOjmQO5Q==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.1.2", + "@vue/shared": "3.1.4", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.2.tgz", - "integrity": "sha512-k2+SWcWH0jL6WQAX7Or2ONqu5MbtTgTO0dJrvebQYzgqaKMXNI90RNeWeCxS4BnNFMDONpHBeFgbwbnDWIkmRg==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.4.tgz", + "integrity": "sha512-3tG2ScHkghhUBuFwl9KgyZhrS8CPFZsO7hUDekJgIp5b1OMkROr4AvxHu6rRMl4WkyvYkvidFNBS2VfOnwa6Kw==", "dev": true, "requires": { - "@vue/compiler-core": "3.1.2", - "@vue/shared": "3.1.2" + "@vue/compiler-core": "3.1.4", + "@vue/shared": "3.1.4" } }, "@vue/compiler-sfc": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.1.2.tgz", - "integrity": "sha512-SeG/2+DvwejQ7oAiSx8BrDh5qOdqCYHGClPiTvVIHTfSIHiS2JjMbCANdDCjHkTOh/O7WZzo2JhdKm98bRBxTw==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.1.4.tgz", + "integrity": "sha512-4KDQg60Khy3SgnF+V/TB2NZqzmM4TyGRmzsxqG1SebGdMSecCweFDSlI/F1vDYk6dKiCHgmpoT9A1sLxswkJ0A==", "dev": true, "requires": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.1.2", - "@vue/compiler-dom": "3.1.2", - "@vue/compiler-ssr": "3.1.2", - "@vue/shared": "3.1.2", + "@vue/compiler-core": "3.1.4", + "@vue/compiler-dom": "3.1.4", + "@vue/compiler-ssr": "3.1.4", + "@vue/shared": "3.1.4", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -801,19 +823,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.1.2.tgz", - "integrity": "sha512-BwXo9LFk5OSWdMyZQ4bX1ELHX0Z/9F+ld/OaVnpUPzAZCHslBYLvyKUVDwv2C/lpLjRffpC2DOUEdl1+RP1aGg==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.1.4.tgz", + "integrity": "sha512-Box8fCuCFPp0FuimIswjDkjwiSDCBkHvt/xVALyFkYCiIMWv2eR53fIjmlsnEHhcBuZ+VgRC+UanCTcKvSA1gA==", "dev": true, "requires": { - "@vue/compiler-dom": "3.1.2", - "@vue/shared": "3.1.2" + "@vue/compiler-dom": "3.1.4", + "@vue/shared": "3.1.4" } }, "@vue/shared": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.2.tgz", - "integrity": "sha512-EmH/poaDWBPJaPILXNI/1fvUbArJQmmTyVCwvvyDYDFnkPoTclAbHRAtyIvqfez7jybTDn077HTNILpxlsoWhg==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.4.tgz", + "integrity": "sha512-6O45kZAmkLvzGLToBxEz4lR2W6kXohCtebV2UxjH9GXjd8X9AhEn68FN9eNanFtWNzvgw1hqd6HkPRVQalqf7Q==", "dev": true }, "JSONStream": { @@ -851,9 +873,9 @@ "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==" }, "acorn-walk": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.1.0.tgz", - "integrity": "sha512-mjmzmv12YIG/G8JQdQuz2MUDShEJ6teYpT5bmWA4q7iwoGen8xtt3twF3OvzIUl+Q06aWIjvnwQUKvQ6TtMRjg==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.1.1.tgz", + "integrity": "sha512-FbJdceMlPHEAWJOILDk1fXD8lnTlEIWFkqtfk+MvmL5q/qlHfN7GEHcsFZWt/Tea9jRNPWUZG4G976nqAAmU9w==", "dev": true }, "agent-base": { @@ -1510,9 +1532,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001240", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001240.tgz", - "integrity": "sha512-nb8mDzfMdxBDN7ZKx8chWafAdBp5DAAlpWvNyUGe5tcDWd838zpzDN3Rah9cjCqhfOKkrvx40G2SDtP0qiWX/w==", + "version": "1.0.30001241", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001241.tgz", + "integrity": "sha512-1uoSZ1Pq1VpH0WerIMqwptXHNNGfdl7d1cJUFs80CwQ/lVzdhTvsFZCeNFslze7AjsQnb4C85tzclPa1VShbeQ==", "dev": true }, "catharsis": { @@ -2610,9 +2632,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.759", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.759.tgz", - "integrity": "sha512-nM76xH0t2FBH5iMEZDVc3S/qbdKjGH7TThezxC8k1Q7w7WHvIAyJh8lAe2UamGfdRqBTjHfPDn82LJ0ksCiB9g==", + "version": "1.3.766", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.766.tgz", + "integrity": "sha512-u2quJ862q9reRKh/je3GXis3w38+RoXH1J9N3XjtsS6NzmUAosNsyZgUVFZPN/ZlJ3v6T0rTyZR3q/J5c6Sy5w==", "dev": true }, "emittery": { @@ -2838,13 +2860,14 @@ } }, "eslint": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.29.0.tgz", - "integrity": "sha512-82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==", + "version": "7.30.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.30.0.tgz", + "integrity": "sha512-VLqz80i3as3NdloY44BQSJpFw534L9Oh+6zJOUaViV4JPd+DaHwutqP7tcpkW3YiXbK6s05RZl7yl7cQn+lijg==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.2", + "@humanwhocodes/config-array": "^0.5.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2988,12 +3011,12 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "35.4.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.4.0.tgz", - "integrity": "sha512-0cr+NkPTxpTiMCtYOd8W5fd2IyC/CmaTHKb+0bzkpP9p8HfmJ3B2/M6FWj97rQJOLwLMkx+g2MIEZsrttpbFmQ==", + "version": "35.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.4.1.tgz", + "integrity": "sha512-lnpu2Bj+ta2eAqwCWnb6f3Xjc78TWKo/oMCpDH5NfpPhYnePNtGZJzoAMgU5uo9BQqmXJ8pql8aiodOhg82ofw==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "^0.8.0-alpha.2", + "@es-joy/jsdoccomment": "^0.8.0", "comment-parser": "1.1.5", "debug": "^4.3.1", "esquery": "^1.4.0", @@ -3211,16 +3234,15 @@ "dev": true }, "fast-glob": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", - "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.6.tgz", + "integrity": "sha512-GnLuqj/pvQ7pX8/L4J84nijv6sAnlwvSDpMkJi9i7nPmPxGtRPkBSStfvDW5l6nMdX9VWe+pkKWFTgD+vF2QSQ==", "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", + "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" + "micromatch": "^4.0.4" } }, "fast-json-stable-stringify": { @@ -3337,9 +3359,9 @@ } }, "flatted": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.0.tgz", + "integrity": "sha512-XprP7lDrVT+kE2c2YlfiV+IfS9zxukiIOvNamPNsImNhXadSsQEbosItdL9bUQlCZXR13SvPk20BjWSWLA7m4A==", "dev": true }, "flush-write-stream": { diff --git a/packages/project/package.json b/packages/project/package.json index 4544cebf6fe..fe28368a28c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,9 +127,9 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.2", "docdash": "^1.2.0", - "eslint": "^7.29.0", + "eslint": "^7.30.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^35.4.0", + "eslint-plugin-jsdoc": "^35.4.1", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 7d7c1d3d24d087bb10c9487ac952cecca969db77 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 11 Jul 2021 02:21:18 +0000 Subject: [PATCH 0544/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 219 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 104 insertions(+), 117 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3fc7b9832b7..d17f9567c9c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,9 +42,9 @@ }, "dependencies": { "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { "ms": "2.1.2" @@ -328,9 +328,9 @@ }, "dependencies": { "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { "ms": "2.1.2" @@ -372,12 +372,12 @@ } }, "@es-joy/jsdoccomment": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.8.0.tgz", - "integrity": "sha512-Xd3GzYsL2sz2pcdtYt5Q0Wz1ol/o9Nt2UQL4nFPDcaEomvPmwjJsbjkKx1SKhl2h3TgwazNBLdcNr2m0UiGiFA==", + "version": "0.9.0-alpha.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.9.0-alpha.1.tgz", + "integrity": "sha512-Clxxc0PwpISoYYBibA+1L2qFJ7gvFVhI2Hos87S06K+Q0cXdOhZQJNKWuaQGPAeHjZEuUB/YoWOfwjuF2wirqA==", "dev": true, "requires": { - "comment-parser": "^1.1.5", + "comment-parser": "1.1.6-beta.0", "esquery": "^1.4.0", "jsdoc-type-pratt-parser": "1.0.4" } @@ -400,9 +400,9 @@ }, "dependencies": { "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { "ms": "2.1.2" @@ -420,9 +420,9 @@ } }, "globals": { - "version": "13.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", - "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", + "version": "13.10.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz", + "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -470,9 +470,9 @@ }, "dependencies": { "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { "ms": "2.1.2" @@ -578,9 +578,9 @@ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" }, "@nodelib/fs.walk": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.7.tgz", - "integrity": "sha512-BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "requires": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -655,21 +655,21 @@ "dev": true }, "@types/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", "dev": true }, "@types/minimist": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", - "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", "dev": true }, "@types/normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" }, "@types/parse-json": { "version": "4.0.0", @@ -868,9 +868,9 @@ "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" }, "acorn-jsx": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==" + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" }, "acorn-walk": { "version": "8.1.1", @@ -1168,9 +1168,9 @@ "dev": true }, "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { "ms": "2.1.2" @@ -1532,9 +1532,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001241", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001241.tgz", - "integrity": "sha512-1uoSZ1Pq1VpH0WerIMqwptXHNNGfdl7d1cJUFs80CwQ/lVzdhTvsFZCeNFslze7AjsQnb4C85tzclPa1VShbeQ==", + "version": "1.0.30001243", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001243.tgz", + "integrity": "sha512-vNxw9mkTBtkmLFnJRv/2rhs1yufpDfCkBZexG3Y0xdOH2Z/eE/85E4Dl5j1YUN34nZVsSp6vVRFQRrez9wJMRA==", "dev": true }, "catharsis": { @@ -1931,9 +1931,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.1.5.tgz", - "integrity": "sha512-RePCE4leIhBlmrqiYTvaqEeGYg7qpSl4etaIabKtdOQVi+mSTIBBklGUwIr79GXYnl3LpMwmDw4KeR2stNc6FA==", + "version": "1.1.6-beta.0", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.1.6-beta.0.tgz", + "integrity": "sha512-q3cA8TSMyqW7wcPSYWzbO/rMahnXgzs4SLG/UIWXdEsnXTFPZkEkWAdNgPiHig2OzxgpPLOh4WwsmClDxndwHw==", "dev": true }, "common-path-prefix": { @@ -2410,9 +2410,9 @@ }, "dependencies": { "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { "ms": "2.1.2" @@ -2632,9 +2632,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.766", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.766.tgz", - "integrity": "sha512-u2quJ862q9reRKh/je3GXis3w38+RoXH1J9N3XjtsS6NzmUAosNsyZgUVFZPN/ZlJ3v6T0rTyZR3q/J5c6Sy5w==", + "version": "1.3.772", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.772.tgz", + "integrity": "sha512-X/6VRCXWALzdX+RjCtBU6cyg8WZgoxm9YA02COmDOiNJEZ59WkQggDbWZ4t/giHi/3GS+cvdrP6gbLISANAGYA==", "dev": true }, "emittery": { @@ -2923,9 +2923,9 @@ "dev": true }, "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { "ms": "2.1.2" @@ -2957,9 +2957,9 @@ } }, "globals": { - "version": "13.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", - "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", + "version": "13.10.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz", + "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -3011,14 +3011,14 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "35.4.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.4.1.tgz", - "integrity": "sha512-lnpu2Bj+ta2eAqwCWnb6f3Xjc78TWKo/oMCpDH5NfpPhYnePNtGZJzoAMgU5uo9BQqmXJ8pql8aiodOhg82ofw==", + "version": "35.4.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.4.3.tgz", + "integrity": "sha512-hBEn+VNjVX0IKoZ2OdZs0Z1fU8CqZkBSzLqD8ZpwZEamrdi2TUgKvujvETe8gXYQ/67hpRtbR5iPFTgmWpRevw==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "^0.8.0", - "comment-parser": "1.1.5", - "debug": "^4.3.1", + "@es-joy/jsdoccomment": "^0.9.0-alpha.1", + "comment-parser": "1.1.6-beta.0", + "debug": "^4.3.2", "esquery": "^1.4.0", "jsdoc-type-pratt-parser": "^1.0.4", "lodash": "^4.17.21", @@ -3028,9 +3028,9 @@ }, "dependencies": { "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { "ms": "2.1.2" @@ -3234,9 +3234,9 @@ "dev": true }, "fast-glob": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.6.tgz", - "integrity": "sha512-GnLuqj/pvQ7pX8/L4J84nijv6sAnlwvSDpMkJi9i7nPmPxGtRPkBSStfvDW5l6nMdX9VWe+pkKWFTgD+vF2QSQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -3257,9 +3257,9 @@ "dev": true }, "fastq": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", - "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz", + "integrity": "sha512-HOnr8Mc60eNYl1gzwp6r5RoUyAn5/glBolUzP/Ez6IFVPMPirxn/9phgL6zhOtaTy7ISwPvQ+wT+hfcRZh/bzw==", "requires": { "reusify": "^1.0.4" } @@ -3359,9 +3359,9 @@ } }, "flatted": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.0.tgz", - "integrity": "sha512-XprP7lDrVT+kE2c2YlfiV+IfS9zxukiIOvNamPNsImNhXadSsQEbosItdL9bUQlCZXR13SvPk20BjWSWLA7m4A==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.1.tgz", + "integrity": "sha512-OMQjaErSFHmHqZe+PSidH5n8j3O0F2DdnVh8JB4j4eUQ2k6KvB0qGfrKIhapvez5JerBbmWkaLYUYWISaESoXg==", "dev": true }, "flush-write-stream": { @@ -3913,9 +3913,9 @@ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" }, "invariant": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", "dev": true, "requires": { "loose-envify": "^1.0.0" @@ -4205,9 +4205,9 @@ }, "dependencies": { "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "dev": true, "requires": { "ms": "2.1.2" @@ -6136,13 +6136,12 @@ "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" }, "query-ast": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.3.tgz", - "integrity": "sha512-k7z4jilpZCujhiJ+QeKSwYXHc9HxqiVKlVE7/em0zBfPpcqnXKUP8F7ld7XaAkO6oXeAD7yonqcNJWqOF2pSGA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.4.tgz", + "integrity": "sha512-KFJFSvODCBjIH5HbHvITj9EEZKYUU6VX0T5CuB1ayvjUoUaZkKMi6eeby5Tf8DMukyZHlJQOE1+f3vevKUe6eg==", "dev": true, "requires": { - "invariant": "2.2.2", - "lodash": "^4.17.15" + "invariant": "2.2.4" } }, "queue-microtask": { @@ -6507,9 +6506,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.35.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.35.1.tgz", - "integrity": "sha512-oCisuQJstxMcacOPmxLNiLlj4cUyN2+8xJnG7VanRoh2GOLr9RqkvI4AxA4a6LHVg/rsu+PmxXeGhrdSF9jCiQ==", + "version": "1.35.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.35.2.tgz", + "integrity": "sha512-jhO5KAR+AMxCEwIH3v+4zbB2WB0z67V1X0jbapfVwQQdjHZUGUyukpnoM6+iCMfsIUC016w9OPKQ5jrNOS9uXw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -6521,24 +6520,12 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "scss-parser": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/scss-parser/-/scss-parser-1.0.4.tgz", - "integrity": "sha512-oDZwDfY2JhnDrHNZPcdcPNVTpAXsJBY2/uhFfN0IzMy1xExAfJDcI1Yl/VXhfRsdQL3wLeg6/Oxt3cafBOuMzQ==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/scss-parser/-/scss-parser-1.0.5.tgz", + "integrity": "sha512-RZOtvCmCnwkDo7kdcYBi807Y5EoTIxJ34AgEgJNDmOH1jl0/xG0FyYZFbH6Ga3Iwu7q8LSdxJ4C5UkzNXjQxKQ==", "dev": true, "requires": { - "invariant": "2.2.4", - "lodash": "^4.17.4" - }, - "dependencies": { - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - } + "invariant": "2.2.4" } }, "select-hose": { @@ -6845,9 +6832,9 @@ }, "dependencies": { "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "requires": { "ms": "2.1.2" } @@ -6873,9 +6860,9 @@ }, "dependencies": { "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", "requires": { "ms": "2.1.2" } @@ -6999,13 +6986,13 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { - "version": "6.0.8", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.0.8.tgz", - "integrity": "sha512-QLgv+oiXwXgCgp2PdPPa+Jpp4D9imK9e/0BsyfeFMr6QL6wMVqoVn9+OXQ9I7MZbmUzN6lmitTJ09uwS2OmGcw==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.1.1.tgz", + "integrity": "sha512-Q2YbTf17/GPyhWnYGPcxZdPuXvVvstHEKdgxgdaj+SI2c5//KezIgAQJAT2/RYI0H+CQt2fDVvPiLBdl82i0yA==", "dev": true, "requires": { "@tokenizer/token": "^0.1.1", - "@types/debug": "^4.1.5", + "@types/debug": "^4.1.6", "peek-readable": "^3.1.3" } }, @@ -7072,9 +7059,9 @@ }, "dependencies": { "ajv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", - "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", + "version": "8.6.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.1.tgz", + "integrity": "sha512-42VLtQUOLefAvKFAQIxIZDaThq6om/PrfP0CYk3/vn+y4BMNkKnbli8ON2QCiHov4KkzOSJ/xSoBJdayiiYvVQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index fe28368a28c..03ac0de0be2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.30.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^35.4.1", + "eslint-plugin-jsdoc": "^35.4.3", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 5e561623cd7d1c9f15af6fd7baa238bdc01b80a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Jul 2021 05:02:38 +0000 Subject: [PATCH 0545/1272] [ui5-project]Bump coverallsapp/github-action from 1.1.2 to 1.1.3 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 1.1.2 to 1.1.3. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v1.1.2...1.1.3) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 2bcc0ec0cbd..3bfe37c76cb 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -26,6 +26,6 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v1.1.2 + uses: coverallsapp/github-action@1.1.3 with: github-token: ${{ secrets.GITHUB_TOKEN }} From d07babcc69c0d41e251d03e8bc2d64ce126c4b9f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 18 Jul 2021 02:21:26 +0000 Subject: [PATCH 0546/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 108 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 51 insertions(+), 59 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d17f9567c9c..858a31ee13a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -383,9 +383,9 @@ } }, "@eslint/eslintrc": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", - "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -642,12 +642,6 @@ "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", "dev": true }, - "@types/debug": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.6.tgz", - "integrity": "sha512-7fDOJFA/x8B+sO1901BmHlf5dE1cxBU8mRXj8QOEDnn16hhGJv/IHxJtZhvsabZsIMn0eLIyeOKAeqSNJJYTpA==", - "dev": true - }, "@types/estree": { "version": "0.0.48", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.48.tgz", @@ -758,41 +752,41 @@ } }, "@vue/compiler-core": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.4.tgz", - "integrity": "sha512-TnUz+1z0y74O/A4YKAbzsdUfamyHV73MihrEfvettWpm9bQKVoZd1nEmR1cGN9LsXWlwAvVQBetBlWdOjmQO5Q==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.5.tgz", + "integrity": "sha512-TXBhFinoBaXKDykJzY26UEuQU1K07FOp/0Ie+OXySqqk0bS0ZO7Xvl7UmiTUPYcLrWbxWBR7Bs/y55AI0MNc2Q==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.1.4", + "@vue/shared": "3.1.5", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.4.tgz", - "integrity": "sha512-3tG2ScHkghhUBuFwl9KgyZhrS8CPFZsO7hUDekJgIp5b1OMkROr4AvxHu6rRMl4WkyvYkvidFNBS2VfOnwa6Kw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.5.tgz", + "integrity": "sha512-ZsL3jqJ52OjGU/YiT/9XiuZAmWClKInZM2aFJh9gnsAPqOrj2JIELMbkIFpVKR/CrVO/f2VxfPiiQdQTr65jcQ==", "dev": true, "requires": { - "@vue/compiler-core": "3.1.4", - "@vue/shared": "3.1.4" + "@vue/compiler-core": "3.1.5", + "@vue/shared": "3.1.5" } }, "@vue/compiler-sfc": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.1.4.tgz", - "integrity": "sha512-4KDQg60Khy3SgnF+V/TB2NZqzmM4TyGRmzsxqG1SebGdMSecCweFDSlI/F1vDYk6dKiCHgmpoT9A1sLxswkJ0A==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.1.5.tgz", + "integrity": "sha512-mtMY6xMvZeSRx9MTa1+NgJWndrkzVTdJ1pQAmAKQuxyb5LsHVvrgP7kcQFvxPHVpLVTORbTJWHaiqoKrJvi1iA==", "dev": true, "requires": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.1.4", - "@vue/compiler-dom": "3.1.4", - "@vue/compiler-ssr": "3.1.4", - "@vue/shared": "3.1.4", + "@vue/compiler-core": "3.1.5", + "@vue/compiler-dom": "3.1.5", + "@vue/compiler-ssr": "3.1.5", + "@vue/shared": "3.1.5", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -823,19 +817,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.1.4.tgz", - "integrity": "sha512-Box8fCuCFPp0FuimIswjDkjwiSDCBkHvt/xVALyFkYCiIMWv2eR53fIjmlsnEHhcBuZ+VgRC+UanCTcKvSA1gA==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.1.5.tgz", + "integrity": "sha512-CU5N7Di/a4lyJ18LGJxJYZS2a8PlLdWpWHX9p/XcsjT2TngMpj3QvHVRkuik2u8QrIDZ8OpYmTyj1WDNsOV+Dg==", "dev": true, "requires": { - "@vue/compiler-dom": "3.1.4", - "@vue/shared": "3.1.4" + "@vue/compiler-dom": "3.1.5", + "@vue/shared": "3.1.5" } }, "@vue/shared": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.4.tgz", - "integrity": "sha512-6O45kZAmkLvzGLToBxEz4lR2W6kXohCtebV2UxjH9GXjd8X9AhEn68FN9eNanFtWNzvgw1hqd6HkPRVQalqf7Q==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", + "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==", "dev": true }, "JSONStream": { @@ -1532,9 +1526,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001243", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001243.tgz", - "integrity": "sha512-vNxw9mkTBtkmLFnJRv/2rhs1yufpDfCkBZexG3Y0xdOH2Z/eE/85E4Dl5j1YUN34nZVsSp6vVRFQRrez9wJMRA==", + "version": "1.0.30001245", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz", + "integrity": "sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA==", "dev": true }, "catharsis": { @@ -2632,9 +2626,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.772", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.772.tgz", - "integrity": "sha512-X/6VRCXWALzdX+RjCtBU6cyg8WZgoxm9YA02COmDOiNJEZ59WkQggDbWZ4t/giHi/3GS+cvdrP6gbLISANAGYA==", + "version": "1.3.779", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.779.tgz", + "integrity": "sha512-nreave0y/1Qhmo8XtO6C/LpawNyC6U26+q7d814/e+tIqUK073pM+4xW7WUXyqCRa5K4wdxHmNMBAi8ap9nEew==", "dev": true }, "emittery": { @@ -2860,13 +2854,13 @@ } }, "eslint": { - "version": "7.30.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.30.0.tgz", - "integrity": "sha512-VLqz80i3as3NdloY44BQSJpFw534L9Oh+6zJOUaViV4JPd+DaHwutqP7tcpkW3YiXbK6s05RZl7yl7cQn+lijg==", + "version": "7.31.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.31.0.tgz", + "integrity": "sha512-vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.2", + "@eslint/eslintrc": "^0.4.3", "@humanwhocodes/config-array": "^0.5.0", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -3961,9 +3955,9 @@ } }, "is-core-module": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", - "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz", + "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==", "requires": { "has": "^1.0.3" } @@ -5806,9 +5800,9 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "peek-readable": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.3.tgz", - "integrity": "sha512-mpAcysyRJxmICBcBa5IXH7SZPvWkcghm6Fk8RekoS3v+BpbSzlZzuWbMx+GXrlUwESi9qHar4nVEZNMKylIHvg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.0.tgz", + "integrity": "sha512-kLbU4cz6h86poGVBKgAVMpFmD47nX04fPPQNKnv9fuj+IJZYkEBjsYAVu5nDbZWx0ZsWwWlMzeG90zQa5KLBaA==", "dev": true }, "picomatch": { @@ -6986,14 +6980,12 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.1.1.tgz", - "integrity": "sha512-Q2YbTf17/GPyhWnYGPcxZdPuXvVvstHEKdgxgdaj+SI2c5//KezIgAQJAT2/RYI0H+CQt2fDVvPiLBdl82i0yA==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.0.tgz", + "integrity": "sha512-hBbPN4+f9fypbfTs0NImALgzYcb6k/blFr2mJVX6bUOmJCbXe/trDHdIC+Ir5XUXRMGFvq487ecwLitDoHVoew==", "dev": true, "requires": { - "@tokenizer/token": "^0.1.1", - "@types/debug": "^4.1.6", - "peek-readable": "^3.1.3" + "peek-readable": "^4.0.0" } }, "supertap": { @@ -7059,9 +7051,9 @@ }, "dependencies": { "ajv": { - "version": "8.6.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.1.tgz", - "integrity": "sha512-42VLtQUOLefAvKFAQIxIZDaThq6om/PrfP0CYk3/vn+y4BMNkKnbli8ON2QCiHov4KkzOSJ/xSoBJdayiiYvVQ==", + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", + "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index 03ac0de0be2..a282ee5c7bc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.2", "docdash": "^1.2.0", - "eslint": "^7.30.0", + "eslint": "^7.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^35.4.3", "istanbul-lib-coverage": "^3.0.0", From bf0d4c01a950bf167a4954d1bdc5eda10cb3e696 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 19 Jul 2021 17:45:27 +0000 Subject: [PATCH 0547/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 858a31ee13a..d1a3bd9c06e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -3005,9 +3005,9 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "35.4.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.4.3.tgz", - "integrity": "sha512-hBEn+VNjVX0IKoZ2OdZs0Z1fU8CqZkBSzLqD8ZpwZEamrdi2TUgKvujvETe8gXYQ/67hpRtbR5iPFTgmWpRevw==", + "version": "35.4.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.4.5.tgz", + "integrity": "sha512-CguI9uhIJoihCsW5WTUY9xX2w9EpovmmHCz/JzAevC7Fcop+wyJLDjzaBnTh2LlSJvG9qVfkr7OJ+9i4cv1Kzg==", "dev": true, "requires": { "@es-joy/jsdoccomment": "^0.9.0-alpha.1", @@ -6980,9 +6980,9 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.0.tgz", - "integrity": "sha512-hBbPN4+f9fypbfTs0NImALgzYcb6k/blFr2mJVX6bUOmJCbXe/trDHdIC+Ir5XUXRMGFvq487ecwLitDoHVoew==", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.2.tgz", + "integrity": "sha512-iUzLl3UhF2RfqQah80JngnfltQFLEidGyTX8+hHFMQFjzUj3UpIpOx824FtFmRI9bwyywReENpdHGDkFJwJlGQ==", "dev": true, "requires": { "peek-readable": "^4.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index a282ee5c7bc..af5e3bdc4e6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.31.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^35.4.3", + "eslint-plugin-jsdoc": "^35.4.5", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 7287f98ad7fe526d323c60b30abb35cc4a7d7ec6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 5 Jul 2021 05:02:54 +0000 Subject: [PATCH 0548/1272] [ui5-project]Bump actions/setup-node from 2.1.5 to 2.2.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.1.5 to 2.2.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.1.5...v2.2.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 3bfe37c76cb..3d456695022 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -15,7 +15,7 @@ jobs: - uses: actions/checkout@v2 - name: Use Node.js LTS 14.x - uses: actions/setup-node@v2.1.5 + uses: actions/setup-node@v2.2.0 with: node-version: 14.x From 212c67ac453fe6b790c6fe27d73060a8a0de47e6 Mon Sep 17 00:00:00 2001 From: Lars Kissel Date: Mon, 12 Jul 2021 14:03:54 +0200 Subject: [PATCH 0549/1272] [ui5-project][FEATURE] specVersion 2.5 Adds support for build configuration includeDependency JIRA: CPOUI5FOUNDATION-208 --- packages/project/lib/projectPreprocessor.js | 6 +- .../project/lib/translators/ui5Framework.js | 4 +- .../validation/schema/specVersion/2.0.json | 2 +- .../specVersion/2.0/kind/extension.json | 2 +- .../2.0/kind/extension/project-shim.json | 4 +- .../2.0/kind/extension/server-middleware.json | 4 +- .../specVersion/2.0/kind/extension/task.json | 4 +- .../schema/specVersion/2.0/kind/project.json | 26 ++- .../2.0/kind/project/application.json | 132 +++++++++--- .../specVersion/2.0/kind/project/library.json | 129 ++++++++--- .../specVersion/2.0/kind/project/module.json | 73 +++++-- .../2.0/kind/project/theme-library.json | 105 ++++++--- .../project/lib/validation/schema/ui5.json | 6 +- packages/project/test/lib/extensions.js | 20 ++ .../project/test/lib/projectPreprocessor.js | 16 ++ .../schema/__helper__/customConfiguration.js | 2 +- .../validation/schema/__helper__/extension.js | 2 +- .../validation/schema/__helper__/framework.js | 2 +- .../validation/schema/__helper__/project.js | 2 +- .../schema/specVersion/2.0/kind/extension.js | 2 +- .../2.0/kind/extension/project-shim.js | 2 +- .../2.0/kind/project/application.js | 188 +++++++++++++++- .../specVersion/2.0/kind/project/library.js | 189 +++++++++++++++- .../specVersion/2.0/kind/project/module.js | 202 +++++++++++++++++- .../2.0/kind/project/theme-library.js | 183 +++++++++++++++- .../project/test/lib/validation/schema/ui5.js | 3 +- 26 files changed, 1166 insertions(+), 144 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 4bd39d9cb35..963d353b402 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -283,7 +283,8 @@ class ProjectPreprocessor { if (project.specVersion !== "0.1" && project.specVersion !== "1.0" && project.specVersion !== "1.1" && project.specVersion !== "2.0" && project.specVersion !== "2.1" && project.specVersion !== "2.2" && - project.specVersion !== "2.3" && project.specVersion !== "2.4") { + project.specVersion !== "2.3" && project.specVersion !== "2.4" && + project.specVersion !== "2.5") { throw new Error( `Unsupported specification version ${project.specVersion} defined for project ` + `${project.id}. Your UI5 CLI installation might be outdated. ` + @@ -362,7 +363,8 @@ class ProjectPreprocessor { extension.specVersion !== "2.1" && extension.specVersion !== "2.2" && extension.specVersion !== "2.3" && - extension.specVersion !== "2.4") { + extension.specVersion !== "2.4" && + extension.specVersion !== "2.5") { throw new Error( `Unsupported specification version ${extension.specVersion} defined for extension ` + `${extension.metadata.name}. Your UI5 CLI installation might be outdated. ` + diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index f991c8aa369..eb27afb7ece 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -86,7 +86,7 @@ const utils = { if ( project.specVersion !== "2.0" && project.specVersion !== "2.1" && project.specVersion !== "2.2" && project.specVersion !== "2.3" && - project.specVersion !== "2.4" + project.specVersion !== "2.4" && project.specVersion !== "2.5" ) { log.warn(`Project ${project.metadata.name} defines invalid ` + `specification version ${project.specVersion} for framework.libraries configuration`); @@ -254,7 +254,7 @@ module.exports = { ( project.specVersion === "2.0" || project.specVersion === "2.1" || project.specVersion === "2.2" || project.specVersion === "2.3" || - project.specVersion === "2.4" + project.specVersion === "2.4" || project.specVersion === "2.5" ) && project.framework && project.framework.libraries) { const frameworkDeps = project.framework.libraries .filter((dependency) => { diff --git a/packages/project/lib/validation/schema/specVersion/2.0.json b/packages/project/lib/validation/schema/specVersion/2.0.json index 67ffb59c77d..9f2c563b1a9 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0.json +++ b/packages/project/lib/validation/schema/specVersion/2.0.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion"], "properties": { - "specVersion": { "enum": ["2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json index fc8c06f6d60..8b2f679a78a 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "kind", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json index ddacc2d03db..fedd06fb48e 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json @@ -6,14 +6,14 @@ "required": ["specVersion", "kind", "type", "metadata", "shims"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] } } }, "then": { "additionalProperties": false, "properties": { "specVersion": { - "enum": ["2.1", "2.2", "2.3", "2.4"] + "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] }, "kind": { "enum": ["extension"] diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json index 4f7724e5a63..4482680de78 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json @@ -7,13 +7,13 @@ "required": ["specVersion", "kind", "type", "metadata", "middleware"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json index 78d9c2d36b4..a0cd872b0d4 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json @@ -6,13 +6,13 @@ "required": ["specVersion", "kind", "type", "metadata", "task"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index 8919e7137eb..8d3b8fb9820 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "type"], "properties": { - "specVersion": { "enum": ["2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" @@ -505,6 +505,30 @@ } ] } + }, + "builder-settings": { + "type": "object", + "additionalProperties": false, + "properties": { + "includeDependency": { + "type": "array", + "items": { + "type": "string" + } + }, + "includeDependencyRegExp": { + "type": "array", + "items": { + "type": "string" + } + }, + "includeDependencyTree": { + "type": "array", + "items": { + "type": "string" + } + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json index 7ebcf1895cc..15af57a5819 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.4" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -43,13 +43,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -66,7 +66,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -80,13 +80,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -103,7 +103,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -115,29 +115,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["application"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -251,6 +289,36 @@ "$ref": "../project.json#/definitions/customTasks" } } + }, + "builder-specVersion-2.5": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "cachebuster": { + "type": "object", + "additionalProperties": false, + "properties": { + "signatureType": { + "enum": ["time", "hash"] + } + } + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-2.4" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json index ba39116245c..6c624e64fa4 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.4" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -43,13 +43,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -66,7 +66,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -80,13 +80,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -103,7 +103,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -115,29 +115,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -251,6 +289,33 @@ "$ref": "../project.json#/definitions/customTasks" } } + }, + "builder-specVersion-2.5": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "jsdoc": { + "$ref": "#/definitions/builder-jsdoc" + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-2.4" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "libraryPreload": { + "$ref": "../project.json#/definitions/builder-libraryPreload" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json index b02a91578df..bb2cdb8992f 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -25,6 +25,9 @@ "resources": { "$ref": "#/definitions/resources" }, + "builder": { + "$ref": "#/definitions/builder-specVersion-2.5" + }, "customConfiguration": { "type": "object", "additionalProperties": true @@ -32,20 +35,49 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["module"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "resources": { - "$ref": "#/definitions/resources" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["module"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["module"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "resources": { + "$ref": "#/definitions/resources" + } } } }, @@ -71,6 +103,15 @@ } } } + }, + "builder-specVersion-2.5": { + "type": "object", + "additionalProperties": false, + "properties": { + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json index bde0aa58a72..41a61f2fa3c 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "library.json#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -41,29 +41,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["theme-library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "library.json#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["theme-library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "library.json#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["theme-library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "library.json#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } }, @@ -80,6 +118,21 @@ "$ref": "../project.json#/definitions/customTasks" } } + }, + "builder-specVersion-2.5": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index b1e238afaea..fa249710eee 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -10,16 +10,16 @@ "properties": { "specVersion": { "enum": [ - "2.4", "2.3", "2.2", "2.1", "2.0", + "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, "if": { "properties": { - "specVersion": { "enum": ["2.4", "2.3", "2.2", "2.1", "2.0"] } + "specVersion": { "enum": ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } } }, "then": { diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index a5eabe58734..c4b76689aec 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -911,3 +911,23 @@ test("specVersion: Extension with valid version 2.4", async (t) => { await preprocessor.applyExtension(extension); t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.4", "Correct spec version"); }); + +test("specVersion: Extension with valid version 2.5", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.5", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor({}); + const handleShimStub = sinon.stub(preprocessor, "handleShim"); + await preprocessor.applyExtension(extension); + t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.5", "Correct spec version"); +}); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index d3d301c791c..9876838eaa4 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1766,6 +1766,22 @@ test("specVersion: Project with valid version 2.4", async (t) => { t.deepEqual(res.specVersion, "2.4", "Correct spec version"); }); +test("specVersion: Project with valid version 2.5", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.5", + type: "application", + metadata: { + name: "xy" + } + }; + const res = await projectPreprocessor.processTree(tree); + t.deepEqual(res.specVersion, "2.5", "Correct spec version"); +}); + test("isBeingProcessed: Is not being processed", (t) => { const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); diff --git a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js index 61fe0b3dd8e..184e984bd0d 100644 --- a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js +++ b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js @@ -35,7 +35,7 @@ module.exports = { ]); }); - ["2.4", "2.3", "2.2", "2.1"].forEach((specVersion) => { + ["2.5", "2.4", "2.3", "2.2", "2.1"].forEach((specVersion) => { test(`${type}: Valid customConfiguration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, Object.assign( { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js index 5585363fc75..cfe07820e41 100644 --- a/packages/project/test/lib/validation/schema/__helper__/extension.js +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -18,7 +18,7 @@ module.exports = { customConfiguration.defineTests(test, assertValidation, type, additionalConfiguration); - ["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: ${type} basic (${specVersion})`, async (t) => { await assertValidation(t, Object.assign({ "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/framework.js b/packages/project/test/lib/validation/schema/__helper__/framework.js index 4c02714fd8d..70bc9919c25 100644 --- a/packages/project/test/lib/validation/schema/__helper__/framework.js +++ b/packages/project/test/lib/validation/schema/__helper__/framework.js @@ -10,7 +10,7 @@ module.exports = { * @param {string} type one of "application", "library" and "theme-library" */ defineTests: function(test, assertValidation, type) { - ["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`${type} (specVersion ${specVersion}): framework configuration: OpenUI5`, async (t) => { const config = { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index d1060cc0b6e..eafad2afe25 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -23,7 +23,7 @@ module.exports = { customConfiguration.defineTests(test, assertValidation, type); // version specific tests - ["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { // tests for all kinds and version 2.0 and above test(`${type} (specVersion ${specVersion}): No metadata`, async (t) => { await assertValidation(t, { diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js index 6b317530917..41eaa279f9c 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js @@ -36,7 +36,7 @@ test.after.always((t) => { }; t.context.ajvCoverage.verify(thresholds); }); -["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Type project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js index ace0a042606..133144e5fc1 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js @@ -38,7 +38,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index 58558aa2041..e3a58782912 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -43,7 +43,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -433,7 +433,7 @@ test.after.always((t) => { keyword: "enum", message: "should be equal to one of the allowed values", params: { - allowedValues: ["2.4"].includes(specVersion) ? [ + allowedValues: ["2.5", "2.4"].includes(specVersion) ? [ "raw", "preload", "require", @@ -537,7 +537,7 @@ test.after.always((t) => { }); }); -["2.4", "2.3"].forEach(function(specVersion) { +["2.5", "2.4", "2.3"].forEach(function(specVersion) { test(`application (specVersion ${specVersion}): builder/componentPreload/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -634,7 +634,7 @@ test.after.always((t) => { }); }); -["2.4"].forEach(function(specVersion) { +["2.5", "2.4"].forEach(function(specVersion) { // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above test(`application (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, async (t) => { @@ -662,5 +662,185 @@ test.after.always((t) => { }); }); +["2.5"].forEach(function(specVersion) { + test(`application (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": [ + "sap.a", + "sap.b" + ], + "includeDependencyRegExp": [ + ".ui.[a-z]+", + "^sap.[mf]$" + ], + "includeDependencyTree": [ + "sap.c", + "sap.d" + ] + } + } + }); + }); + test(`Invalid builder/settings/includeDependency* configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": "a", + "includeDependencyRegExp": "b", + "includeDependencyTree": "c" + } + } + }, [ + { + dataPath: "/builder/settings/includeDependency", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": [ + true, + 1, + {} + ], + "includeDependencyRegExp": [ + true, + 1, + {} + ], + "includeDependencyTree": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/settings", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/settings/includeDependency/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependency/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependency/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); project.defineTests(test, assertValidation, "application"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index 2362a4aed5e..ce4e8facb09 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -43,7 +43,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): Valid configuration`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -399,7 +399,7 @@ test.after.always((t) => { keyword: "enum", message: "should be equal to one of the allowed values", params: { - allowedValues: ["2.4"].includes(specVersion) ? [ + allowedValues: ["2.5", "2.4"].includes(specVersion) ? [ "raw", "preload", "require", @@ -614,7 +614,7 @@ test.after.always((t) => { }); }); -["2.4", "2.3"].forEach(function(specVersion) { +["2.5", "2.4", "2.3"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): builder/libraryPreload/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -807,7 +807,7 @@ test.after.always((t) => { }); }); -["2.4"].forEach(function(specVersion) { +["2.5", "2.4"].forEach(function(specVersion) { // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above test(`library (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, async (t) => { @@ -835,4 +835,185 @@ test.after.always((t) => { }); }); +["2.5"].forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": [ + "sap.a", + "sap.b" + ], + "includeDependencyRegExp": [ + ".ui.[a-z]+", + "^sap.[mf]$" + ], + "includeDependencyTree": [ + "sap.c", + "sap.d" + ] + } + } + }); + }); + test(`Invalid builder/settings/includeDependency* configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": "a", + "includeDependencyRegExp": "b", + "includeDependencyTree": "c" + } + } + }, [ + { + dataPath: "/builder/settings/includeDependency", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": [ + true, + 1, + {} + ], + "includeDependencyRegExp": [ + true, + 1, + {} + ], + "includeDependencyTree": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/settings", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/settings/includeDependency/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependency/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependency/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); + project.defineTests(test, assertValidation, "library"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js index a977ba17fb6..b1ea5647ac4 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js @@ -38,7 +38,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -98,31 +98,221 @@ test.after.always((t) => { }]); }); - test(`No builder, server configuration (specVersion ${specVersion})`, async (t) => { + test(`No server configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, "type": "module", "metadata": { "name": "my-module" }, - "builder": {}, "server": {} }, [{ dataPath: "", keyword: "additionalProperties", message: "should NOT have additional properties", params: { - "additionalProperty": "builder" + "additionalProperty": "server" } - }, { + }]); + }); +}); + +["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + test(`No builder configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "module", + "metadata": { + "name": "my-module" + }, + "builder": {} + }, [{ dataPath: "", keyword: "additionalProperties", message: "should NOT have additional properties", params: { - "additionalProperty": "server" + "additionalProperty": "builder" } }]); }); }); +["2.5"].forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "module", + "metadata": { + "name": "my-module" + }, + "builder": { + "settings": { + "includeDependency": [ + "sap.a", + "sap.b" + ], + "includeDependencyRegExp": [ + ".ui.[a-z]+", + "^sap.[mf]$" + ], + "includeDependencyTree": [ + "sap.c", + "sap.d" + ] + } + } + }); + }); + test(`Invalid builder/settings/includeDependency* configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "module", + "metadata": { + "name": "my-module" + }, + "builder": { + "settings": { + "includeDependency": "a", + "includeDependencyRegExp": "b", + "includeDependencyTree": "c" + } + } + }, [ + { + dataPath: "/builder/settings/includeDependency", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "module", + "metadata": { + "name": "my-module" + }, + "builder": { + "settings": { + "includeDependency": [ + true, + 1, + {} + ], + "includeDependencyRegExp": [ + true, + 1, + {} + ], + "includeDependencyTree": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/settings", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/settings/includeDependency/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependency/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependency/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); + project.defineTests(test, assertValidation, "module"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js index 50f818243eb..40995e5f5b3 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -44,7 +44,7 @@ test.after.always((t) => { }); -["2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -165,4 +165,185 @@ test.after.always((t) => { }); }); +["2.5"].forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "theme-library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": [ + "sap.a", + "sap.b" + ], + "includeDependencyRegExp": [ + ".ui.[a-z]+", + "^sap.[mf]$" + ], + "includeDependencyTree": [ + "sap.c", + "sap.d" + ] + } + } + }); + }); + test(`Invalid builder/settings/includeDependency* configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "theme-library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": "a", + "includeDependencyRegExp": "b", + "includeDependencyTree": "c" + } + } + }, [ + { + dataPath: "/builder/settings/includeDependency", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "theme-library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": [ + true, + 1, + {} + ], + "includeDependencyRegExp": [ + true, + 1, + {} + ], + "includeDependencyTree": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/settings", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/settings/includeDependency/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependency/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependency/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); + project.defineTests(test, assertValidation, "theme-library"); diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 263c2ce5eb3..483a38badf9 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -100,7 +100,7 @@ test("Invalid specVersion", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. -Supported specification versions: "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" +Supported specification versions: "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, params: { errors: [ @@ -110,6 +110,7 @@ For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specific message: "should be equal to one of the allowed values", params: { allowedValues: [ + "2.5", "2.4", "2.3", "2.2", From f671a9176d3ca93446029c6c54976c2621366e7f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 16 Jul 2021 10:38:02 +0200 Subject: [PATCH 0550/1272] [ui5-project][INTERNAL] Schema: Allow server configuration for type module Resolves: https://github.com/SAP/ui5-tooling/issues/536 JIRA: CPOUI5FOUNDATION-376 --- .../specVersion/2.0/kind/project/module.json | 3 ++ .../specVersion/2.0/kind/project/module.js | 33 +++++++++++++++++-- .../2.0/kind/project/theme-library.js | 2 +- 3 files changed, 34 insertions(+), 4 deletions(-) diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json index bb2cdb8992f..44b9063bce9 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json @@ -28,6 +28,9 @@ "builder": { "$ref": "#/definitions/builder-specVersion-2.5" }, + "server": { + "$ref": "../project.json#/definitions/server" + }, "customConfiguration": { "type": "object", "additionalProperties": true diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js index b1ea5647ac4..3deb5f31351 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js @@ -97,7 +97,9 @@ test.after.always((t) => { } }]); }); +}); +["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`No server configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -115,9 +117,7 @@ test.after.always((t) => { } }]); }); -}); -["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`No builder configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -138,7 +138,33 @@ test.after.always((t) => { }); ["2.5"].forEach(function(specVersion) { - test(`library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { + test(`Server configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "module", + "metadata": { + "name": "my-module" + }, + "server": { + "settings": { + "httpPort": 1337, + "httpsPort": 1443 + }, + "customMiddleware": [ + { + "name": "myCustomMiddleware", + "mountPath": "/myapp", + "afterMiddleware": "compression", + "configuration": { + "debug": true + } + } + ] + } + }); + }); + + test(`module (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, "kind": "project", @@ -164,6 +190,7 @@ test.after.always((t) => { } }); }); + test(`Invalid builder/settings/includeDependency* configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js index 40995e5f5b3..c6d5cfd19da 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -166,7 +166,7 @@ test.after.always((t) => { }); ["2.5"].forEach(function(specVersion) { - test(`library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { + test(`theme-library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, "kind": "project", From cc6bffa52033e791845d3e96a124f78f3a09b8c1 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 23 Jul 2021 13:24:16 +0000 Subject: [PATCH 0551/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.9.3 to 2.9.4 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.9.4/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d1a3bd9c06e..6c8765b2bfc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -672,9 +672,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.3.tgz", - "integrity": "sha512-OUGrbFNxRT0xCryrJ5npr5muvoQ71Icm6O2wzxy7tX/UGDmSqsUzupwqBzHQVi2uZyWI5nGEKL4kkny1cjiMZQ==", + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.4.tgz", + "integrity": "sha512-KfoGfS2Wek0qojX+QvaU6otkknEf97RK111aMfxHlos+N7YPL4f190aFqaTp+LE5YI5BrTz23VGH/By+Qqo0cw==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -682,7 +682,6 @@ "escape-unicode": "^0.2.0", "escope": "^3.6.0", "espree": "^6.2.1", - "estraverse": "5.1.0", "globby": "^11.0.4", "graceful-fs": "^4.2.6", "jsdoc": "^3.6.7", @@ -693,7 +692,7 @@ "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.5", - "terser": "^5.7.0", + "terser": "^5.7.1", "xml2js": "^0.4.23", "yazl": "^2.5.1" } @@ -3113,7 +3112,8 @@ "estraverse": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", - "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==" + "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==", + "dev": true }, "estree-walker": { "version": "2.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index af5e3bdc4e6..169f22cc205 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.9.3", + "@ui5/builder": "^2.9.4", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.3.0", "ajv": "^6.12.6", From 19e010f41b05fe01767cf542451d4979727b01e2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 23 Jul 2021 13:33:26 +0000 Subject: [PATCH 0552/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.3.0 to 2.3.1 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.3.1/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6c8765b2bfc..f36a3038c85 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -722,11 +722,11 @@ } }, "@ui5/server": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.3.0.tgz", - "integrity": "sha512-IPxvvyyCVhMbfaip+egC1pUB5/DwFMqobuiGmMiolybeGKsTsE27LORNmaCJHNQcZ0JgBVuPclk+gvJ1/58wXw==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.3.1.tgz", + "integrity": "sha512-TsqAngYwZLanG2I3H3Fd9NFsdaa+NfWwM/v5PgQopTdYno7h839hfcxccrpDYS/1BHDkv0PhxoDD4mZQJnexIw==", "requires": { - "@ui5/builder": "^2.9.3", + "@ui5/builder": "^2.9.4", "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", "body-parser": "^1.19.0", diff --git a/packages/project/package.json b/packages/project/package.json index 169f22cc205..58080313d71 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^2.9.4", "@ui5/logger": "^2.0.1", - "@ui5/server": "^2.3.0", + "@ui5/server": "^2.3.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.1", From 2d35d7dea20a42f44a67b2fe83bf67752b251600 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 23 Jul 2021 13:37:05 +0000 Subject: [PATCH 0553/1272] [ui5-project]Release 2.5.0 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index fcdee9d5b7c..8bfe13ce363 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.4.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.5.0...HEAD). + + +## [v2.5.0] - 2021-07-23 +### Features +- specVersion 2.5 [`3008dac`](https://github.com/SAP/ui5-project/commit/3008dace09109ba0fac49f0ddfc79255038f192c) + ## [v2.4.0] - 2021-06-01 @@ -250,6 +256,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.5.0]: https://github.com/SAP/ui5-project/compare/v2.4.0...v2.5.0 [v2.4.0]: https://github.com/SAP/ui5-project/compare/v2.3.1...v2.4.0 [v2.3.1]: https://github.com/SAP/ui5-project/compare/v2.3.0...v2.3.1 [v2.3.0]: https://github.com/SAP/ui5-project/compare/v2.2.6...v2.3.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f36a3038c85..a428a9564d7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.4.0", + "version": "2.5.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 58080313d71..85f16d91c27 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.4.0", + "version": "2.5.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From e97cda3ea75f8f8cf308f886372050d5809ceff6 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 25 Jul 2021 02:20:41 +0000 Subject: [PATCH 0554/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 164 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 79 insertions(+), 87 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a428a9564d7..547b19656ad 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -19,20 +19,20 @@ "dev": true }, "@babel/core": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.6.tgz", - "integrity": "sha512-gJnOEWSqTk96qG5BoIrl5bVtc23DCycmIePPYnamY9RboYdI4nFy5vAQMSl81O5K/W0sLDWfGysnOECC+KUUCA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.8.tgz", + "integrity": "sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.5", + "@babel/generator": "^7.14.8", "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helpers": "^7.14.6", - "@babel/parser": "^7.14.6", + "@babel/helper-module-transforms": "^7.14.8", + "@babel/helpers": "^7.14.8", + "@babel/parser": "^7.14.8", "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5", + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.5.tgz", - "integrity": "sha512-y3rlP+/G25OIX3mYKKIOlQRcqj7YgrvHxOLbVmyLJ9bPmi5ttvUmpydVjcFjZphOktWuA7ovbx91ECloWTfjIA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.8.tgz", + "integrity": "sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==", "dev": true, "requires": { - "@babel/types": "^7.14.5", + "@babel/types": "^7.14.8", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -157,19 +157,19 @@ } }, "@babel/helper-module-transforms": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz", - "integrity": "sha512-iXpX4KW8LVODuAieD7MzhNjmM6dzYY5tfRqT+R9HDXWl0jPn/djKmA+G9s/2C2T9zggw5tK1QNqZ70USfedOwA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.8.tgz", + "integrity": "sha512-RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.14.5", "@babel/helper-replace-supers": "^7.14.5", - "@babel/helper-simple-access": "^7.14.5", + "@babel/helper-simple-access": "^7.14.8", "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/helper-validator-identifier": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.8", "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8" } }, "@babel/helper-optimise-call-expression": { @@ -194,12 +194,12 @@ } }, "@babel/helper-simple-access": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.5.tgz", - "integrity": "sha512-nfBN9xvmCt6nrMZjfhkl7i0oTV3yxR4/FztsbOASyTvVcoYd0TRHh7eMLdlEcCqobydC0LAF3LtC92Iwxo0wyw==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz", + "integrity": "sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==", "dev": true, "requires": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.14.8" } }, "@babel/helper-split-export-declaration": { @@ -212,9 +212,9 @@ } }, "@babel/helper-validator-identifier": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", - "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==" + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz", + "integrity": "sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==" }, "@babel/helper-validator-option": { "version": "7.14.5", @@ -223,14 +223,14 @@ "dev": true }, "@babel/helpers": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.6.tgz", - "integrity": "sha512-yesp1ENQBiLI+iYHSJdoZKUtRpfTlL1grDIX9NRlAVppljLw/4tTyYupIB7uIYmC3stW/imAv8EqaKaS/ibmeA==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.8.tgz", + "integrity": "sha512-ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==", "dev": true, "requires": { "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8" } }, "@babel/highlight": { @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.7.tgz", - "integrity": "sha512-X67Z5y+VBJuHB/RjwECp8kSl5uYi0BvRbNeWqkaJCVh+LiTPl19WBUfG627psSgp9rSf6ojuXghQM3ha6qHHdA==" + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.8.tgz", + "integrity": "sha512-syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==" }, "@babel/template": { "version": "7.14.5", @@ -311,18 +311,18 @@ } }, "@babel/traverse": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.7.tgz", - "integrity": "sha512-9vDr5NzHu27wgwejuKL7kIOm4bwEtaPQ4Z6cpCmjSuaRqpH/7xc4qcGEscwMqlkwgcXl6MvqoAjZkQ24uSdIZQ==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.8.tgz", + "integrity": "sha512-kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.5", + "@babel/generator": "^7.14.8", "@babel/helper-function-name": "^7.14.5", "@babel/helper-hoist-variables": "^7.14.5", "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/parser": "^7.14.7", - "@babel/types": "^7.14.5", + "@babel/parser": "^7.14.8", + "@babel/types": "^7.14.8", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -345,12 +345,12 @@ } }, "@babel/types": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.5.tgz", - "integrity": "sha512-M/NzBpEL95I5Hh4dwhin5JlE7EzO5PHMAuzjxss3tiOBD46KfQvVedN/3jEPZvdRvtsK2222XfdHogNIttFgcg==", + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.8.tgz", + "integrity": "sha512-iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.8", "to-fast-properties": "^2.0.0" } }, @@ -1525,9 +1525,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001245", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz", - "integrity": "sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA==", + "version": "1.0.30001247", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001247.tgz", + "integrity": "sha512-4rS7co+7+AoOSPRPOPUt5/GdaqZc0EsUpWk66ofE3HJTAajUK2Ss2VwoNzVN69ghg8lYYlh0an0Iy4LIHHo9UQ==", "dev": true }, "catharsis": { @@ -2625,9 +2625,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.779", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.779.tgz", - "integrity": "sha512-nreave0y/1Qhmo8XtO6C/LpawNyC6U26+q7d814/e+tIqUK073pM+4xW7WUXyqCRa5K4wdxHmNMBAi8ap9nEew==", + "version": "1.3.786", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.786.tgz", + "integrity": "sha512-AmvbLBj3hepRk8v/DHrFF8gINxOFfDbrn6Ts3PcK46/FBdQb5OMmpamSpZQXSkfi77FfBzYtQtAk+00LCLYMVw==", "dev": true }, "emittery": { @@ -2843,13 +2843,6 @@ "es6-weak-map": "^2.0.1", "esrecurse": "^4.1.0", "estraverse": "^4.1.1" - }, - "dependencies": { - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" - } } }, "eslint": { @@ -3004,12 +2997,12 @@ "dev": true }, "eslint-plugin-jsdoc": { - "version": "35.4.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.4.5.tgz", - "integrity": "sha512-CguI9uhIJoihCsW5WTUY9xX2w9EpovmmHCz/JzAevC7Fcop+wyJLDjzaBnTh2LlSJvG9qVfkr7OJ+9i4cv1Kzg==", + "version": "35.5.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.5.1.tgz", + "integrity": "sha512-pPYPWtsykwVEue1tYEyoppBj4dgF7XicF67tLLLraY6RQYBq7qMKjUHji19+hfiTtYKKBD0YfeK8hgjPAE5viw==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "^0.9.0-alpha.1", + "@es-joy/jsdoccomment": "0.9.0-alpha.1", "comment-parser": "1.1.6-beta.0", "debug": "^4.3.2", "esquery": "^1.4.0", @@ -3045,14 +3038,6 @@ "requires": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" - }, - "dependencies": { - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - } } }, "eslint-utils": { @@ -3092,6 +3077,14 @@ "dev": true, "requires": { "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } } }, "esrecurse": { @@ -3110,10 +3103,9 @@ } }, "estraverse": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", - "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==", - "dev": true + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" }, "estree-walker": { "version": "2.0.2", @@ -5909,9 +5901,9 @@ } }, "postcss": { - "version": "8.3.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.5.tgz", - "integrity": "sha512-NxTuJocUhYGsMiMFHDUkmjSKT3EdH4/WbGF6GCi1NDGk+vbcUTun4fpbOqaPtD8IIsztA2ilZm2DhYCuyN58gA==", + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.6.tgz", + "integrity": "sha512-wG1cc/JhRgdqB6WHEuyLTedf3KIRuD0hG6ldkFEZNCjRxiC+3i6kkWUUbiJQayP28iwG35cEmAbe98585BYV0A==", "dev": true, "requires": { "colorette": "^1.2.2", @@ -5920,9 +5912,9 @@ } }, "postcss-modules": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.1.3.tgz", - "integrity": "sha512-dBT39hrXe4OAVYJe/2ZuIZ9BzYhOe7t+IhedYeQ2OxKwDpAGlkEN/fR0fGnrbx4BvgbMReRX4hCubYK9cE/pJQ==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.2.2.tgz", + "integrity": "sha512-/H08MGEmaalv/OU8j6bUKi/kZr2kqGF6huAW8m9UAgOLWtpFdhA14+gPBoymtqyv+D4MLsmqaF2zvIegdCxJXg==", "dev": true, "requires": { "generic-names": "^2.0.1", @@ -6500,9 +6492,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.35.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.35.2.tgz", - "integrity": "sha512-jhO5KAR+AMxCEwIH3v+4zbB2WB0z67V1X0jbapfVwQQdjHZUGUyukpnoM6+iCMfsIUC016w9OPKQ5jrNOS9uXw==", + "version": "1.36.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.36.0.tgz", + "integrity": "sha512-fQzEjipfOv5kh930nu3Imzq3ie/sGDc/4KtQMJlt7RRdrkQSfe37Bwi/Rf/gfuYHsIuE1fIlDMvpyMcEwjnPvg==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -7251,9 +7243,9 @@ } }, "tar": { - "version": "4.4.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", - "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", + "version": "4.4.14", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.14.tgz", + "integrity": "sha512-ouN3XcSWYOAHmXZ+P4NEFJvqXL50To9OZBSQNNP30vBUFJFZZ0PLX15fnwupv6azfxMUfUDUr2fhYw4zGAEPcg==", "requires": { "chownr": "^1.1.1", "fs-minipass": "^1.2.5", diff --git a/packages/project/package.json b/packages/project/package.json index 85f16d91c27..df745e86581 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "docdash": "^1.2.0", "eslint": "^7.31.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^35.4.5", + "eslint-plugin-jsdoc": "^35.5.1", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 79cd3d9ba5614ee26839779150e3ddcbb775d147 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Jul 2021 05:02:50 +0000 Subject: [PATCH 0555/1272] [ui5-project]Bump actions/setup-node from 2.2.0 to 2.3.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.2.0 to 2.3.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.2.0...v2.3.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 3d456695022..c276230fd7a 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -15,7 +15,7 @@ jobs: - uses: actions/checkout@v2 - name: Use Node.js LTS 14.x - uses: actions/setup-node@v2.2.0 + uses: actions/setup-node@v2.3.0 with: node-version: 14.x From 423207bab1aeb02ed8ff87a0a45db3944eadcfd9 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 1 Aug 2021 02:21:41 +0000 Subject: [PATCH 0556/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 111 +++++++++++++++++------------ packages/project/package.json | 6 +- 2 files changed, 67 insertions(+), 50 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 547b19656ad..144d7996ea6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -380,6 +380,14 @@ "comment-parser": "1.1.6-beta.0", "esquery": "^1.4.0", "jsdoc-type-pratt-parser": "1.0.4" + }, + "dependencies": { + "jsdoc-type-pratt-parser": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.0.4.tgz", + "integrity": "sha512-jzmW9gokeq9+bHPDR1nCeidMyFUikdZlbOhKzh9+/nJqB75XhpNKec1/UuxW5c4+O+Pi31Gc/dCboyfSm/pSpQ==", + "dev": true + } } }, "@eslint/eslintrc": { @@ -637,9 +645,9 @@ } }, "@tokenizer/token": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", - "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", "dev": true }, "@types/estree": { @@ -1376,9 +1384,9 @@ "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" }, "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, "builtins": { "version": "1.0.3", @@ -1525,9 +1533,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001247", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001247.tgz", - "integrity": "sha512-4rS7co+7+AoOSPRPOPUt5/GdaqZc0EsUpWk66ofE3HJTAajUK2Ss2VwoNzVN69ghg8lYYlh0an0Iy4LIHHo9UQ==", + "version": "1.0.30001248", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001248.tgz", + "integrity": "sha512-NwlQbJkxUFJ8nMErnGtT0QTM2TJ33xgz4KXJSMIrjXIbDVdaYueGyjOrLKRtJC+rTiWfi6j5cnZN1NBiSBJGNw==", "dev": true }, "catharsis": { @@ -1539,9 +1547,9 @@ } }, "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -2625,9 +2633,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.786", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.786.tgz", - "integrity": "sha512-AmvbLBj3hepRk8v/DHrFF8gINxOFfDbrn6Ts3PcK46/FBdQb5OMmpamSpZQXSkfi77FfBzYtQtAk+00LCLYMVw==", + "version": "1.3.792", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.792.tgz", + "integrity": "sha512-RM2O2xrNarM7Cs+XF/OE2qX/aBROyOZqqgP+8FXMXSuWuUqCfUUzg7NytQrzZU3aSqk1Qq6zqnVkJsbfMkIatg==", "dev": true }, "emittery": { @@ -2846,9 +2854,9 @@ } }, "eslint": { - "version": "7.31.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.31.0.tgz", - "integrity": "sha512-vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==", + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", @@ -3345,9 +3353,9 @@ } }, "flatted": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.1.tgz", - "integrity": "sha512-OMQjaErSFHmHqZe+PSidH5n8j3O0F2DdnVh8JB4j4eUQ2k6KvB0qGfrKIhapvez5JerBbmWkaLYUYWISaESoXg==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", "dev": true }, "flush-write-stream": { @@ -4059,9 +4067,9 @@ "dev": true }, "is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true }, "is-typedarray": { @@ -4292,9 +4300,9 @@ } }, "jsdoc-type-pratt-parser": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.0.4.tgz", - "integrity": "sha512-jzmW9gokeq9+bHPDR1nCeidMyFUikdZlbOhKzh9+/nJqB75XhpNKec1/UuxW5c4+O+Pi31Gc/dCboyfSm/pSpQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.1.1.tgz", + "integrity": "sha512-uelRmpghNwPBuZScwgBG/OzodaFk5RbO5xaivBdsAY70icWfShwZ7PCMO0x1zSkOa8T1FzHThmrdoyg/0AwV5g==", "dev": true }, "jsesc": { @@ -4815,16 +4823,16 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.48.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", - "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==" + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", + "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==" }, "mime-types": { - "version": "2.1.31", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", - "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", + "version": "2.1.32", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", + "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", "requires": { - "mime-db": "1.48.0" + "mime-db": "1.49.0" } }, "mimic-fn": { @@ -6492,9 +6500,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.36.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.36.0.tgz", - "integrity": "sha512-fQzEjipfOv5kh930nu3Imzq3ie/sGDc/4KtQMJlt7RRdrkQSfe37Bwi/Rf/gfuYHsIuE1fIlDMvpyMcEwjnPvg==", + "version": "1.37.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.37.0.tgz", + "integrity": "sha512-B+Tu6cSAG8ffs/cqsZl/bgSH2pCmavDaPTYAoW8QA1qNHh/RqndNfVKuABKYkLjUQ5aq/BnCENVpE80cqdSM1w==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -6647,13 +6655,13 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "sinon": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-11.1.1.tgz", - "integrity": "sha512-ZSSmlkSyhUWbkF01Z9tEbxZLF/5tRC9eojCdFh33gtQaP7ITQVaMWQHGuFM7Cuf/KEfihuh1tTl3/ABju3AQMg==", + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-11.1.2.tgz", + "integrity": "sha512-59237HChms4kg7/sXhiRcUzdSkKuydDeTiamT/jesUVHshBgL8XAmhgFo0GfK6RruMDM/iRSij1EybmMog9cJw==", "dev": true, "requires": { "@sinonjs/commons": "^1.8.3", - "@sinonjs/fake-timers": "^7.1.0", + "@sinonjs/fake-timers": "^7.1.2", "@sinonjs/samsam": "^6.0.2", "diff": "^5.0.0", "nise": "^5.1.0", @@ -6972,11 +6980,12 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.2.tgz", - "integrity": "sha512-iUzLl3UhF2RfqQah80JngnfltQFLEidGyTX8+hHFMQFjzUj3UpIpOx824FtFmRI9bwyywReENpdHGDkFJwJlGQ==", + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.3.tgz", + "integrity": "sha512-38HR/U8nF9mXQdncLgwHq6Sso8VSRG9P6cIpwaHjLKqwkk4qpaxJGyE8t15ZjegDGIsdOU01pIpXSrfWjxemig==", "dev": true, "requires": { + "@tokenizer/token": "^0.3.0", "peek-readable": "^4.0.0" } }, @@ -7243,9 +7252,9 @@ } }, "tar": { - "version": "4.4.14", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.14.tgz", - "integrity": "sha512-ouN3XcSWYOAHmXZ+P4NEFJvqXL50To9OZBSQNNP30vBUFJFZZ0PLX15fnwupv6azfxMUfUDUr2fhYw4zGAEPcg==", + "version": "4.4.15", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.15.tgz", + "integrity": "sha512-ItbufpujXkry7bHH9NpQyTXPbJ72iTlXgkBAYsAjDXk3Ds8t/3NfO5P4xZGy7u+sYuQUbimgzswX4uQIEeNVOA==", "requires": { "chownr": "^1.1.1", "fs-minipass": "^1.2.5", @@ -7385,6 +7394,14 @@ "requires": { "@tokenizer/token": "^0.1.1", "ieee754": "^1.2.1" + }, + "dependencies": { + "@tokenizer/token": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", + "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", + "dev": true + } } }, "treeify": { diff --git a/packages/project/package.json b/packages/project/package.json index df745e86581..fc31325b0e7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -106,7 +106,7 @@ "@ui5/server": "^2.3.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^4.1.1", + "chalk": "^4.1.2", "escape-string-regexp": "^4.0.0", "graceful-fs": "^4.2.6", "js-yaml": "^4.1.0", @@ -127,7 +127,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.2", "docdash": "^1.2.0", - "eslint": "^7.31.0", + "eslint": "^7.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^35.5.1", "istanbul-lib-coverage": "^3.0.0", @@ -139,7 +139,7 @@ "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", - "sinon": "^11.1.1", + "sinon": "^11.1.2", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From c9d7393d69fcfb47d02a376a6552fd00f5656ca4 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 2 Aug 2021 09:48:36 +0000 Subject: [PATCH 0557/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 60 +++++++++++++++--------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 144d7996ea6..c10bfc6e6cb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,9 +13,9 @@ } }, "@babel/compat-data": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.7.tgz", - "integrity": "sha512-nS6dZaISCXJ3+518CWiBfEr//gHyMO02uDxBkXTKZDN5POruCnOZ1N4YBRZDCabwF8nZMWBpRxIicmXtBs+fvw==", + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.9.tgz", + "integrity": "sha512-p3QjZmMGHDGdpcwEYYWu7i7oJShJvtgMjJeb0W95PPhSm++3lm8YXYOh45Y6iCN9PkZLTZ7CIX5nFrp7pw7TXw==", "dev": true }, "@babel/core": { @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.8.tgz", - "integrity": "sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==", + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.9.tgz", + "integrity": "sha512-4yoHbhDYzFa0GLfCzLp5GxH7vPPMAHdZjyE7M/OajM9037zhx0rf+iNsJwp4PT0MSFpwjG7BsHEbPkBQpZ6cYA==", "dev": true, "requires": { - "@babel/types": "^7.14.8", + "@babel/types": "^7.14.9", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -212,9 +212,9 @@ } }, "@babel/helper-validator-identifier": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz", - "integrity": "sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==" + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", + "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==" }, "@babel/helper-validator-option": { "version": "7.14.5", @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.8.tgz", - "integrity": "sha512-syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==" + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.9.tgz", + "integrity": "sha512-RdUTOseXJ8POjjOeEBEvNMIZU/nm4yu2rufRkcibzkkg7DmQvXU8v3M4Xk9G7uuI86CDGkKcuDWgioqZm+mScQ==" }, "@babel/template": { "version": "7.14.5", @@ -311,18 +311,18 @@ } }, "@babel/traverse": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.8.tgz", - "integrity": "sha512-kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==", + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.9.tgz", + "integrity": "sha512-bldh6dtB49L8q9bUyB7bC20UKgU+EFDwKJylwl234Kv+ySZeMD31Xeht6URyueQ6LrRRpF2tmkfcZooZR9/e8g==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.8", + "@babel/generator": "^7.14.9", "@babel/helper-function-name": "^7.14.5", "@babel/helper-hoist-variables": "^7.14.5", "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/parser": "^7.14.8", - "@babel/types": "^7.14.8", + "@babel/parser": "^7.14.9", + "@babel/types": "^7.14.9", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -345,12 +345,12 @@ } }, "@babel/types": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.8.tgz", - "integrity": "sha512-iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==", + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.9.tgz", + "integrity": "sha512-u0bLTnv3DFHeaQLYzb7oRJ1JHr1sv/SYDM7JSqHFFLwXG1wTZRughxFI5NCP8qBEo1rVVsn7Yg2Lvw49nne/Ow==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.14.8", + "@babel/helper-validator-identifier": "^7.14.9", "to-fast-properties": "^2.0.0" } }, @@ -5800,9 +5800,9 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "peek-readable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.0.tgz", - "integrity": "sha512-kLbU4cz6h86poGVBKgAVMpFmD47nX04fPPQNKnv9fuj+IJZYkEBjsYAVu5nDbZWx0ZsWwWlMzeG90zQa5KLBaA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.1.tgz", + "integrity": "sha512-7qmhptnR0WMSpxT5rMHG9bW/mYSR1uqaPFj2MHvT+y/aOUu6msJijpKt5SkTDKySwg65OWG2JwTMBlgcbwMHrQ==", "dev": true }, "picomatch": { @@ -6980,13 +6980,13 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.3.tgz", - "integrity": "sha512-38HR/U8nF9mXQdncLgwHq6Sso8VSRG9P6cIpwaHjLKqwkk4qpaxJGyE8t15ZjegDGIsdOU01pIpXSrfWjxemig==", + "version": "6.2.4", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.4.tgz", + "integrity": "sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw==", "dev": true, "requires": { "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.0.0" + "peek-readable": "^4.0.1" } }, "supertap": { From 2a8e2355ef9776ed561508c7dd0f9d66d85f4683 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 8 Aug 2021 02:20:33 +0000 Subject: [PATCH 0558/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 146 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 74 insertions(+), 74 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c10bfc6e6cb..f8877d23443 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,26 +13,26 @@ } }, "@babel/compat-data": { - "version": "7.14.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.9.tgz", - "integrity": "sha512-p3QjZmMGHDGdpcwEYYWu7i7oJShJvtgMjJeb0W95PPhSm++3lm8YXYOh45Y6iCN9PkZLTZ7CIX5nFrp7pw7TXw==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz", + "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==", "dev": true }, "@babel/core": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.8.tgz", - "integrity": "sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.0.tgz", + "integrity": "sha512-tXtmTminrze5HEUPn/a0JtOzzfp0nk+UEXQ/tqIJo3WDGypl/2OFQEMll/zSFU8f/lfmfLXvTaORHF3cfXIQMw==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.8", - "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-module-transforms": "^7.14.8", + "@babel/generator": "^7.15.0", + "@babel/helper-compilation-targets": "^7.15.0", + "@babel/helper-module-transforms": "^7.15.0", "@babel/helpers": "^7.14.8", - "@babel/parser": "^7.14.8", + "@babel/parser": "^7.15.0", "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.8", - "@babel/types": "^7.14.8", + "@babel/traverse": "^7.15.0", + "@babel/types": "^7.15.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.14.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.9.tgz", - "integrity": "sha512-4yoHbhDYzFa0GLfCzLp5GxH7vPPMAHdZjyE7M/OajM9037zhx0rf+iNsJwp4PT0MSFpwjG7BsHEbPkBQpZ6cYA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.0.tgz", + "integrity": "sha512-eKl4XdMrbpYvuB505KTta4AV9g+wWzmVBW69tX0H2NwKVKd2YJbKgyK6M8j/rgLbmHOYJn6rUklV677nOyJrEQ==", "dev": true, "requires": { - "@babel/types": "^7.14.9", + "@babel/types": "^7.15.0", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -90,12 +90,12 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz", - "integrity": "sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.0.tgz", + "integrity": "sha512-h+/9t0ncd4jfZ8wsdAsoIxSa61qhBYlycXiHWqJaQBCXAhDCMbPRSMTGnZIkkmt1u4ag+UQmuqcILwqKzZ4N2A==", "dev": true, "requires": { - "@babel/compat-data": "^7.14.5", + "@babel/compat-data": "^7.15.0", "@babel/helper-validator-option": "^7.14.5", "browserslist": "^4.16.6", "semver": "^6.3.0" @@ -139,12 +139,12 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.7.tgz", - "integrity": "sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.0.tgz", + "integrity": "sha512-Jq8H8U2kYiafuj2xMTPQwkTBnEEdGKpT35lJEQsRRjnG0LW3neucsaMWLgKcwu3OHKNeYugfw+Z20BXBSEs2Lg==", "dev": true, "requires": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.15.0" } }, "@babel/helper-module-imports": { @@ -157,19 +157,19 @@ } }, "@babel/helper-module-transforms": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.8.tgz", - "integrity": "sha512-RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.0.tgz", + "integrity": "sha512-RkGiW5Rer7fpXv9m1B3iHIFDZdItnO2/BLfWVW/9q7+KqQSDY5kUfQEbzdXM1MVhJGcugKV7kRrNVzNxmk7NBg==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5", + "@babel/helper-replace-supers": "^7.15.0", "@babel/helper-simple-access": "^7.14.8", "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/helper-validator-identifier": "^7.14.8", + "@babel/helper-validator-identifier": "^7.14.9", "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.8", - "@babel/types": "^7.14.8" + "@babel/traverse": "^7.15.0", + "@babel/types": "^7.15.0" } }, "@babel/helper-optimise-call-expression": { @@ -182,15 +182,15 @@ } }, "@babel/helper-replace-supers": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz", - "integrity": "sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.0.tgz", + "integrity": "sha512-6O+eWrhx+HEra/uJnifCwhwMd6Bp5+ZfZeJwbqUTuqkhIT6YcRhiZCOOFChRypOIe0cV46kFrRBlm+t5vHCEaA==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.14.5", + "@babel/helper-member-expression-to-functions": "^7.15.0", "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/traverse": "^7.15.0", + "@babel/types": "^7.15.0" } }, "@babel/helper-simple-access": { @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.14.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.9.tgz", - "integrity": "sha512-RdUTOseXJ8POjjOeEBEvNMIZU/nm4yu2rufRkcibzkkg7DmQvXU8v3M4Xk9G7uuI86CDGkKcuDWgioqZm+mScQ==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.0.tgz", + "integrity": "sha512-0v7oNOjr6YT9Z2RAOTv4T9aP+ubfx4Q/OhVtAet7PFDt0t9Oy6Jn+/rfC6b8HJ5zEqrQCiMxJfgtHpmIminmJQ==" }, "@babel/template": { "version": "7.14.5", @@ -311,18 +311,18 @@ } }, "@babel/traverse": { - "version": "7.14.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.9.tgz", - "integrity": "sha512-bldh6dtB49L8q9bUyB7bC20UKgU+EFDwKJylwl234Kv+ySZeMD31Xeht6URyueQ6LrRRpF2tmkfcZooZR9/e8g==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.0.tgz", + "integrity": "sha512-392d8BN0C9eVxVWd8H6x9WfipgVH5IaIoLp23334Sc1vbKKWINnvwRpb4us0xtPaCumlwbTtIYNA0Dv/32sVFw==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.9", + "@babel/generator": "^7.15.0", "@babel/helper-function-name": "^7.14.5", "@babel/helper-hoist-variables": "^7.14.5", "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/parser": "^7.14.9", - "@babel/types": "^7.14.9", + "@babel/parser": "^7.15.0", + "@babel/types": "^7.15.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -345,9 +345,9 @@ } }, "@babel/types": { - "version": "7.14.9", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.9.tgz", - "integrity": "sha512-u0bLTnv3DFHeaQLYzb7oRJ1JHr1sv/SYDM7JSqHFFLwXG1wTZRughxFI5NCP8qBEo1rVVsn7Yg2Lvw49nne/Ow==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.0.tgz", + "integrity": "sha512-OBvfqnllOIdX4ojTHpwZbpvz4j3EWyjkZEdmjH0/cgsd6QOdSgU8rLSk6ard/pcW7rlmjdVSX/AWOaORR1uNOQ==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.9", @@ -1077,9 +1077,9 @@ "dev": true }, "async": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", - "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==" + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.1.tgz", + "integrity": "sha512-XdD5lRO/87udXCMC9meWdYiR+Nq6ZjUfXidViUZGu2F1MO4T3XwZ1et0hb2++BgLfhyJwy44BGB/yx80ABx8hg==" }, "atob": { "version": "2.1.2", @@ -1356,16 +1356,16 @@ } }, "browserslist": { - "version": "4.16.6", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", - "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", + "version": "4.16.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.7.tgz", + "integrity": "sha512-7I4qVwqZltJ7j37wObBe3SoTz+nS8APaNcrBOlgoirb6/HbEU2XxW/LpUDTCngM6iauwFqmRTuOMfyKnFGY5JA==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001219", + "caniuse-lite": "^1.0.30001248", "colorette": "^1.2.2", - "electron-to-chromium": "^1.3.723", + "electron-to-chromium": "^1.3.793", "escalade": "^3.1.1", - "node-releases": "^1.1.71" + "node-releases": "^1.1.73" } }, "buffer": { @@ -1533,9 +1533,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001248", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001248.tgz", - "integrity": "sha512-NwlQbJkxUFJ8nMErnGtT0QTM2TJ33xgz4KXJSMIrjXIbDVdaYueGyjOrLKRtJC+rTiWfi6j5cnZN1NBiSBJGNw==", + "version": "1.0.30001249", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001249.tgz", + "integrity": "sha512-vcX4U8lwVXPdqzPWi6cAJ3FnQaqXbBqy/GZseKNQzRj37J7qZdGcBtxq/QLFNLLlfsoXLUdHw8Iwenri86Tagw==", "dev": true }, "catharsis": { @@ -2633,9 +2633,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.792", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.792.tgz", - "integrity": "sha512-RM2O2xrNarM7Cs+XF/OE2qX/aBROyOZqqgP+8FXMXSuWuUqCfUUzg7NytQrzZU3aSqk1Qq6zqnVkJsbfMkIatg==", + "version": "1.3.799", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.799.tgz", + "integrity": "sha512-V2rbYWdGvSqrg+95KjkVuSi41bGfrhrOzjl1tSi2VLnm0mRe3FsSvhiqidSiSll9WiMhrQAhpDcW/wcqK3c+Yw==", "dev": true }, "emittery": { @@ -3592,9 +3592,9 @@ } }, "graceful-fs": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" }, "handle-thing": { "version": "2.0.1", @@ -6500,9 +6500,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.37.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.37.0.tgz", - "integrity": "sha512-B+Tu6cSAG8ffs/cqsZl/bgSH2pCmavDaPTYAoW8QA1qNHh/RqndNfVKuABKYkLjUQ5aq/BnCENVpE80cqdSM1w==", + "version": "1.37.5", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.37.5.tgz", + "integrity": "sha512-Cx3ewxz9QB/ErnVIiWg2cH0kiYZ0FPvheDTVC6BsiEGBTZKKZJ1Gq5Kq6jy3PKtL6+EJ8NIoaBW/RSd2R6cZOA==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -6693,9 +6693,9 @@ } }, "smart-buffer": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz", - "integrity": "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==" + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==" }, "socks": { "version": "2.3.3", diff --git a/packages/project/package.json b/packages/project/package.json index fc31325b0e7..dabe7efc0ed 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -108,7 +108,7 @@ "ajv-errors": "^1.0.1", "chalk": "^4.1.2", "escape-string-regexp": "^4.0.0", - "graceful-fs": "^4.2.6", + "graceful-fs": "^4.2.8", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", From e7e4b152166d77bd550c43b034700ecfb9bd0dbc Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 15 Aug 2021 02:21:38 +0000 Subject: [PATCH 0559/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 145 +++++++++++++++-------------- 1 file changed, 75 insertions(+), 70 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f8877d23443..4f18d1b097c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -223,14 +223,14 @@ "dev": true }, "@babel/helpers": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.8.tgz", - "integrity": "sha512-ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==", + "version": "7.15.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.3.tgz", + "integrity": "sha512-HwJiz52XaS96lX+28Tnbu31VeFSQJGOeKHJeaEPQlTl7PnlhFElWPj8tUXtqFIzeN86XxXoBr+WFAyK2PPVz6g==", "dev": true, "requires": { "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.8", - "@babel/types": "^7.14.8" + "@babel/traverse": "^7.15.0", + "@babel/types": "^7.15.0" } }, "@babel/highlight": { @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.0.tgz", - "integrity": "sha512-0v7oNOjr6YT9Z2RAOTv4T9aP+ubfx4Q/OhVtAet7PFDt0t9Oy6Jn+/rfC6b8HJ5zEqrQCiMxJfgtHpmIminmJQ==" + "version": "7.15.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.3.tgz", + "integrity": "sha512-O0L6v/HvqbdJawj0iBEfVQMc3/6WP+AeOsovsIgBFyJaG+W2w7eqvZB7puddATmWuARlm1SX7DwxJ/JJUnDpEA==" }, "@babel/template": { "version": "7.14.5", @@ -428,9 +428,9 @@ } }, "globals": { - "version": "13.10.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz", - "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==", + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -759,41 +759,41 @@ } }, "@vue/compiler-core": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.5.tgz", - "integrity": "sha512-TXBhFinoBaXKDykJzY26UEuQU1K07FOp/0Ie+OXySqqk0bS0ZO7Xvl7UmiTUPYcLrWbxWBR7Bs/y55AI0MNc2Q==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.2.tgz", + "integrity": "sha512-QhCI0ZU5nAR0LMcLgzW3v75374tIrHGp8XG5CzJS7Nsy+iuignbE4MZ2XJfh5TGIrtpuzfWA4eTIfukZf/cRdg==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.1.5", + "@vue/shared": "3.2.2", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.5.tgz", - "integrity": "sha512-ZsL3jqJ52OjGU/YiT/9XiuZAmWClKInZM2aFJh9gnsAPqOrj2JIELMbkIFpVKR/CrVO/f2VxfPiiQdQTr65jcQ==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.2.tgz", + "integrity": "sha512-ggcc+NV/ENIE0Uc3TxVE/sKrhYVpLepMAAmEiQ047332mbKOvUkowz4TTFZ+YkgOIuBOPP0XpCxmCMg7p874mA==", "dev": true, "requires": { - "@vue/compiler-core": "3.1.5", - "@vue/shared": "3.1.5" + "@vue/compiler-core": "3.2.2", + "@vue/shared": "3.2.2" } }, "@vue/compiler-sfc": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.1.5.tgz", - "integrity": "sha512-mtMY6xMvZeSRx9MTa1+NgJWndrkzVTdJ1pQAmAKQuxyb5LsHVvrgP7kcQFvxPHVpLVTORbTJWHaiqoKrJvi1iA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.2.tgz", + "integrity": "sha512-hrtqpQ5L6IPn5v7yVRo7uvLcQxv0z1+KBjZBWMBOcrXz4t+PKUxU/SWd6Tl9T8FDmYlunzKUh6lcx+2CLo6f5A==", "dev": true, "requires": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.1.5", - "@vue/compiler-dom": "3.1.5", - "@vue/compiler-ssr": "3.1.5", - "@vue/shared": "3.1.5", + "@vue/compiler-core": "3.2.2", + "@vue/compiler-dom": "3.2.2", + "@vue/compiler-ssr": "3.2.2", + "@vue/shared": "3.2.2", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -824,19 +824,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.1.5.tgz", - "integrity": "sha512-CU5N7Di/a4lyJ18LGJxJYZS2a8PlLdWpWHX9p/XcsjT2TngMpj3QvHVRkuik2u8QrIDZ8OpYmTyj1WDNsOV+Dg==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.2.tgz", + "integrity": "sha512-rVl1agMFhdEN3Go0bCriXo+3cysxKIuRP0yh1Wd8ysRrKfAmokyDhUA8PrGSq2Ymj/LdZTh+4OKfj3p2+C+hlA==", "dev": true, "requires": { - "@vue/compiler-dom": "3.1.5", - "@vue/shared": "3.1.5" + "@vue/compiler-dom": "3.2.2", + "@vue/shared": "3.2.2" } }, "@vue/shared": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", - "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.2.tgz", + "integrity": "sha512-dvYb318tk9uOzHtSaT3WII/HscQSIRzoCZ5GyxEb3JlkEXASpAUAQwKnvSe2CudnF8XHFRTB7VITWSnWNLZUtA==", "dev": true }, "JSONStream": { @@ -1533,9 +1533,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001249", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001249.tgz", - "integrity": "sha512-vcX4U8lwVXPdqzPWi6cAJ3FnQaqXbBqy/GZseKNQzRj37J7qZdGcBtxq/QLFNLLlfsoXLUdHw8Iwenri86Tagw==", + "version": "1.0.30001251", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001251.tgz", + "integrity": "sha512-HOe1r+9VkU4TFmnU70z+r7OLmtR+/chB1rdcJUeQlAinjEeb0cKL20tlAtOagNZhbrtLnCvV19B4FmF1rgzl6A==", "dev": true }, "catharsis": { @@ -1916,9 +1916,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "colorette": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz", + "integrity": "sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w==", "dev": true }, "command-exists": { @@ -2633,9 +2633,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.799", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.799.tgz", - "integrity": "sha512-V2rbYWdGvSqrg+95KjkVuSi41bGfrhrOzjl1tSi2VLnm0mRe3FsSvhiqidSiSll9WiMhrQAhpDcW/wcqK3c+Yw==", + "version": "1.3.806", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.806.tgz", + "integrity": "sha512-AH/otJLAAecgyrYp0XK1DPiGVWcOgwPeJBOLeuFQ5l//vhQhwC9u6d+GijClqJAmsHG4XDue81ndSQPohUu0xA==", "dev": true }, "emittery": { @@ -2951,9 +2951,9 @@ } }, "globals": { - "version": "13.10.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz", - "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==", + "version": "13.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", + "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -5013,9 +5013,9 @@ } }, "nanoid": { - "version": "3.1.23", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", - "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==", + "version": "3.1.25", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz", + "integrity": "sha512-rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==", "dev": true }, "natural-compare": { @@ -5084,9 +5084,9 @@ } }, "node-releases": { - "version": "1.1.73", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz", - "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==", + "version": "1.1.74", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.74.tgz", + "integrity": "sha512-caJBVempXZPepZoZAPCWRTNxYQ+xtG/KAi4ozTA5A+nJ7IU+kLQCbqaUjb5Rwy14M9upBWiQ4NutcmW04LJSRw==", "dev": true }, "nopt": { @@ -6809,9 +6809,9 @@ } }, "spdx-license-ids": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", - "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==" + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz", + "integrity": "sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==" }, "spdy": { "version": "4.0.2", @@ -7252,17 +7252,17 @@ } }, "tar": { - "version": "4.4.15", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.15.tgz", - "integrity": "sha512-ItbufpujXkry7bHH9NpQyTXPbJ72iTlXgkBAYsAjDXk3Ds8t/3NfO5P4xZGy7u+sYuQUbimgzswX4uQIEeNVOA==", - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" + "version": "4.4.17", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.17.tgz", + "integrity": "sha512-q7OwXq6NTdcYIa+k58nEMV3j1euhDhGCs/VRw9ymx/PbH0jtIM2+VTgDE/BW3rbLkrBUXs5fzEKgic5oUciu7g==", + "requires": { + "chownr": "^1.1.4", + "fs-minipass": "^1.2.7", + "minipass": "^2.9.0", + "minizlib": "^1.3.3", + "mkdirp": "^0.5.5", + "safe-buffer": "^5.2.1", + "yallist": "^3.1.1" }, "dependencies": { "mkdirp": { @@ -7273,6 +7273,11 @@ "minimist": "^1.2.5" } }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, "yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", @@ -7422,9 +7427,9 @@ "dev": true }, "tslib": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", - "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" }, "type": { "version": "1.2.0", From 2a9ff74b04912e89b956e404671508bbb166f610 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 22 Aug 2021 02:21:21 +0000 Subject: [PATCH 0560/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 110 ++++++++++++++--------------- 1 file changed, 55 insertions(+), 55 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4f18d1b097c..6e810ec9b31 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -759,41 +759,41 @@ } }, "@vue/compiler-core": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.2.tgz", - "integrity": "sha512-QhCI0ZU5nAR0LMcLgzW3v75374tIrHGp8XG5CzJS7Nsy+iuignbE4MZ2XJfh5TGIrtpuzfWA4eTIfukZf/cRdg==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.4.tgz", + "integrity": "sha512-c8NuQq7mUXXxA4iqD5VUKpyVeklK53+DMbojYMyZ0VPPrb0BUWrZWFiqSDT+MFDv0f6Hv3QuLiHWb1BWMXBbrw==", "dev": true, "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.2.2", + "@vue/shared": "3.2.4", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.2.tgz", - "integrity": "sha512-ggcc+NV/ENIE0Uc3TxVE/sKrhYVpLepMAAmEiQ047332mbKOvUkowz4TTFZ+YkgOIuBOPP0XpCxmCMg7p874mA==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.4.tgz", + "integrity": "sha512-uj1nwO4794fw2YsYas5QT+FU/YGrXbS0Qk+1c7Kp1kV7idhZIghWLTjyvYibpGoseFbYLPd+sW2/noJG5H04EQ==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.2", - "@vue/shared": "3.2.2" + "@vue/compiler-core": "3.2.4", + "@vue/shared": "3.2.4" } }, "@vue/compiler-sfc": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.2.tgz", - "integrity": "sha512-hrtqpQ5L6IPn5v7yVRo7uvLcQxv0z1+KBjZBWMBOcrXz4t+PKUxU/SWd6Tl9T8FDmYlunzKUh6lcx+2CLo6f5A==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.4.tgz", + "integrity": "sha512-GM+ouDdDzhqgkLmBH4bgq4kiZxJQArSppJiZHWHIx9XRaefHLmc1LBNPmN8ivm4SVfi2i7M2t9k8ZnjsScgzPQ==", "dev": true, "requires": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.2.2", - "@vue/compiler-dom": "3.2.2", - "@vue/compiler-ssr": "3.2.2", - "@vue/shared": "3.2.2", + "@vue/compiler-core": "3.2.4", + "@vue/compiler-dom": "3.2.4", + "@vue/compiler-ssr": "3.2.4", + "@vue/shared": "3.2.4", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -824,19 +824,19 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.2.tgz", - "integrity": "sha512-rVl1agMFhdEN3Go0bCriXo+3cysxKIuRP0yh1Wd8ysRrKfAmokyDhUA8PrGSq2Ymj/LdZTh+4OKfj3p2+C+hlA==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.4.tgz", + "integrity": "sha512-bKZuXu9/4XwsFHFWIKQK+5kN7mxIIWmMmT2L4VVek7cvY/vm3p4WTsXYDGZJy0htOTXvM2ifr6sflg012T0hsw==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.2", - "@vue/shared": "3.2.2" + "@vue/compiler-dom": "3.2.4", + "@vue/shared": "3.2.4" } }, "@vue/shared": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.2.tgz", - "integrity": "sha512-dvYb318tk9uOzHtSaT3WII/HscQSIRzoCZ5GyxEb3JlkEXASpAUAQwKnvSe2CudnF8XHFRTB7VITWSnWNLZUtA==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.4.tgz", + "integrity": "sha512-j2j1MRmjalVKr3YBTxl/BClSIc8UQ8NnPpLYclxerK65JIowI4O7n8O8lElveEtEoHxy1d7BelPUDI0Q4bumqg==", "dev": true }, "JSONStream": { @@ -1356,16 +1356,16 @@ } }, "browserslist": { - "version": "4.16.7", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.7.tgz", - "integrity": "sha512-7I4qVwqZltJ7j37wObBe3SoTz+nS8APaNcrBOlgoirb6/HbEU2XxW/LpUDTCngM6iauwFqmRTuOMfyKnFGY5JA==", + "version": "4.16.8", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.8.tgz", + "integrity": "sha512-sc2m9ohR/49sWEbPj14ZSSZqp+kbi16aLao42Hmn3Z8FpjuMaq2xCA2l4zl9ITfyzvnvyE0hcg62YkIGKxgaNQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001248", - "colorette": "^1.2.2", - "electron-to-chromium": "^1.3.793", + "caniuse-lite": "^1.0.30001251", + "colorette": "^1.3.0", + "electron-to-chromium": "^1.3.811", "escalade": "^3.1.1", - "node-releases": "^1.1.73" + "node-releases": "^1.1.75" } }, "buffer": { @@ -2146,9 +2146,9 @@ } }, "cosmiconfig": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", - "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", + "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", "dev": true, "requires": { "@types/parse-json": "^4.0.0", @@ -2633,9 +2633,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.806", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.806.tgz", - "integrity": "sha512-AH/otJLAAecgyrYp0XK1DPiGVWcOgwPeJBOLeuFQ5l//vhQhwC9u6d+GijClqJAmsHG4XDue81ndSQPohUu0xA==", + "version": "1.3.814", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.814.tgz", + "integrity": "sha512-0mH03cyjh6OzMlmjauGg0TLd87ErIJqWiYxMcOLKf5w6p0YEOl7DJAj7BDlXEFmCguY5CQaKVOiMjAMODO2XDw==", "dev": true }, "emittery": { @@ -3251,9 +3251,9 @@ "dev": true }, "fastq": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz", - "integrity": "sha512-HOnr8Mc60eNYl1gzwp6r5RoUyAn5/glBolUzP/Ez6IFVPMPirxn/9phgL6zhOtaTy7ISwPvQ+wT+hfcRZh/bzw==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.12.0.tgz", + "integrity": "sha512-VNX0QkHK3RsXVKr9KrlUv/FoTa0NdbYoHHl7uXHv2rzyHSlxjdNAKug2twd9luJxpcyNeAgf5iPPMutJO67Dfg==", "requires": { "reusify": "^1.0.4" } @@ -3368,9 +3368,9 @@ } }, "follow-redirects": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", - "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==" + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.2.tgz", + "integrity": "sha512-yLR6WaE2lbF0x4K2qE2p9PEXKLDjUjnR/xmjS3wHAYxtlsI9MLLBJUZirAHKzUZDGLxje7w/cXR49WOUo4rbsA==" }, "foreground-child": { "version": "2.0.0", @@ -3955,9 +3955,9 @@ } }, "is-core-module": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz", - "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz", + "integrity": "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==", "requires": { "has": "^1.0.3" } @@ -5084,9 +5084,9 @@ } }, "node-releases": { - "version": "1.1.74", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.74.tgz", - "integrity": "sha512-caJBVempXZPepZoZAPCWRTNxYQ+xtG/KAi4ozTA5A+nJ7IU+kLQCbqaUjb5Rwy14M9upBWiQ4NutcmW04LJSRw==", + "version": "1.1.75", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.75.tgz", + "integrity": "sha512-Qe5OUajvqrqDSy6wrWFmMwfJ0jVgwiw4T3KqmbTcZ62qW0gQkheXYhcFM1+lOVcGUoRxcEcfyvFMAnDgaF1VWw==", "dev": true }, "nopt": { @@ -6500,9 +6500,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.37.5", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.37.5.tgz", - "integrity": "sha512-Cx3ewxz9QB/ErnVIiWg2cH0kiYZ0FPvheDTVC6BsiEGBTZKKZJ1Gq5Kq6jy3PKtL6+EJ8NIoaBW/RSd2R6cZOA==", + "version": "1.38.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.38.0.tgz", + "integrity": "sha512-WBccZeMigAGKoI+NgD7Adh0ab1HUq+6BmyBUEaGxtErbUtWUevEbdgo5EZiJQofLUGcKtlNaO2IdN73AHEua5g==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -7252,9 +7252,9 @@ } }, "tar": { - "version": "4.4.17", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.17.tgz", - "integrity": "sha512-q7OwXq6NTdcYIa+k58nEMV3j1euhDhGCs/VRw9ymx/PbH0jtIM2+VTgDE/BW3rbLkrBUXs5fzEKgic5oUciu7g==", + "version": "4.4.19", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", + "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", "requires": { "chownr": "^1.1.4", "fs-minipass": "^1.2.7", From ffaa5880c98d716ffc64dfb06f8417eec0e2a667 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 25 Aug 2021 11:58:40 +0000 Subject: [PATCH 0561/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.9.4 to 2.9.5 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.9.5/CHANGELOG.md --- packages/project/package-lock.json | 22 +++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6e810ec9b31..90f9241360a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -680,9 +680,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.9.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.4.tgz", - "integrity": "sha512-KfoGfS2Wek0qojX+QvaU6otkknEf97RK111aMfxHlos+N7YPL4f190aFqaTp+LE5YI5BrTz23VGH/By+Qqo0cw==", + "version": "2.9.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.5.tgz", + "integrity": "sha512-aq/RSweNPKWMNW7Izp7X5PBuaSaUKXd3OBSKcXn7Q2aRl2eznIuMPK1UsSlMCU9nsO2w9/Mp3Uh77XPHGe2i0A==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -691,7 +691,7 @@ "escope": "^3.6.0", "espree": "^6.2.1", "globby": "^11.0.4", - "graceful-fs": "^4.2.6", + "graceful-fs": "^4.2.8", "jsdoc": "^3.6.7", "less-openui5": "^0.11.2", "make-dir": "^3.1.0", @@ -3197,11 +3197,11 @@ } }, "ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.5.0.tgz", + "integrity": "sha512-+ONcYoWj/SoQwUofMr94aGu05Ou4FepKi7N7b+O8T4jVfyIsZQV1/xeS8jpaBzF0csAk0KLXoHCxU7cKYZjo1Q==", "requires": { - "type": "^2.0.0" + "type": "^2.5.0" }, "dependencies": { "type": { @@ -7313,9 +7313,9 @@ } }, "terser": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.1.tgz", - "integrity": "sha512-b3e+d5JbHAe/JSjwsC3Zn55wsBIM7AsHLjKxT31kGCldgbpFePaFo+PiddtO6uwRZWRw7sPXmAN8dTW61xmnSg==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.2.tgz", + "integrity": "sha512-0Omye+RD4X7X69O0eql3lC4Heh/5iLj3ggxR/B5ketZLOtLiOqukUgjw3q4PDnNQbsrkKr3UMypqStQG3XKRvw==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", diff --git a/packages/project/package.json b/packages/project/package.json index dabe7efc0ed..631a95673cb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.9.4", + "@ui5/builder": "^2.9.5", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.3.1", "ajv": "^6.12.6", From 5fd352515b1df3ae48086c8f36e20f7d5d29deea Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 29 Aug 2021 02:21:34 +0000 Subject: [PATCH 0562/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 98 +++++++++++++++++------------- 1 file changed, 56 insertions(+), 42 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 90f9241360a..00e5194ab80 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -759,43 +759,44 @@ } }, "@vue/compiler-core": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.4.tgz", - "integrity": "sha512-c8NuQq7mUXXxA4iqD5VUKpyVeklK53+DMbojYMyZ0VPPrb0BUWrZWFiqSDT+MFDv0f6Hv3QuLiHWb1BWMXBbrw==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.6.tgz", + "integrity": "sha512-vbwnz7+OhtLO5p5i630fTuQCL+MlUpEMTKHuX+RfetQ+3pFCkItt2JUH+9yMaBG2Hkz6av+T9mwN/acvtIwpbw==", "dev": true, "requires": { - "@babel/parser": "^7.12.0", - "@babel/types": "^7.12.0", - "@vue/shared": "3.2.4", - "estree-walker": "^2.0.1", + "@babel/parser": "^7.15.0", + "@babel/types": "^7.15.0", + "@vue/shared": "3.2.6", + "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.4.tgz", - "integrity": "sha512-uj1nwO4794fw2YsYas5QT+FU/YGrXbS0Qk+1c7Kp1kV7idhZIghWLTjyvYibpGoseFbYLPd+sW2/noJG5H04EQ==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.6.tgz", + "integrity": "sha512-+a/3oBAzFIXhHt8L5IHJOTP4a5egzvpXYyi13jR7CUYOR1S+Zzv7vBWKYBnKyJLwnrxTZnTQVjeHCgJq743XKg==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.4", - "@vue/shared": "3.2.4" + "@vue/compiler-core": "3.2.6", + "@vue/shared": "3.2.6" } }, "@vue/compiler-sfc": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.4.tgz", - "integrity": "sha512-GM+ouDdDzhqgkLmBH4bgq4kiZxJQArSppJiZHWHIx9XRaefHLmc1LBNPmN8ivm4SVfi2i7M2t9k8ZnjsScgzPQ==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.6.tgz", + "integrity": "sha512-Ariz1eDsf+2fw6oWXVwnBNtfKHav72RjlWXpEgozYBLnfRPzP+7jhJRw4Nq0OjSsLx2HqjF3QX7HutTjYB0/eA==", "dev": true, "requires": { - "@babel/parser": "^7.13.9", - "@babel/types": "^7.13.0", + "@babel/parser": "^7.15.0", + "@babel/types": "^7.15.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.2.4", - "@vue/compiler-dom": "3.2.4", - "@vue/compiler-ssr": "3.2.4", - "@vue/shared": "3.2.4", + "@vue/compiler-core": "3.2.6", + "@vue/compiler-dom": "3.2.6", + "@vue/compiler-ssr": "3.2.6", + "@vue/ref-transform": "3.2.6", + "@vue/shared": "3.2.6", "consolidate": "^0.16.0", - "estree-walker": "^2.0.1", + "estree-walker": "^2.0.2", "hash-sum": "^2.0.0", "lru-cache": "^5.1.1", "magic-string": "^0.25.7", @@ -824,19 +825,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.4.tgz", - "integrity": "sha512-bKZuXu9/4XwsFHFWIKQK+5kN7mxIIWmMmT2L4VVek7cvY/vm3p4WTsXYDGZJy0htOTXvM2ifr6sflg012T0hsw==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.6.tgz", + "integrity": "sha512-A7IKRKHSyPnTC4w1FxHkjzoyjXInsXkcs/oX22nBQ+6AWlXj2Tt1le96CWPOXy5vYlsTYkF1IgfBaKIdeN/39g==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.4", - "@vue/shared": "3.2.4" + "@vue/compiler-dom": "3.2.6", + "@vue/shared": "3.2.6" + } + }, + "@vue/ref-transform": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.6.tgz", + "integrity": "sha512-ie39+Y4nbirDLvH+WEq6Eo/l3n3mFATayqR+kEMSphrtMW6Uh/eEMx1Gk2Jnf82zmj3VLRq7dnmPx72JLcBYkQ==", + "dev": true, + "requires": { + "@babel/parser": "^7.15.0", + "@vue/compiler-core": "3.2.6", + "@vue/shared": "3.2.6", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.4.tgz", - "integrity": "sha512-j2j1MRmjalVKr3YBTxl/BClSIc8UQ8NnPpLYclxerK65JIowI4O7n8O8lElveEtEoHxy1d7BelPUDI0Q4bumqg==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.6.tgz", + "integrity": "sha512-uwX0Qs2e6kdF+WmxwuxJxOnKs/wEkMArtYpHSm7W+VY/23Tl8syMRyjnzEeXrNCAP0/8HZxEGkHJsjPEDNRuHw==", "dev": true }, "JSONStream": { @@ -1533,9 +1547,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001251", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001251.tgz", - "integrity": "sha512-HOe1r+9VkU4TFmnU70z+r7OLmtR+/chB1rdcJUeQlAinjEeb0cKL20tlAtOagNZhbrtLnCvV19B4FmF1rgzl6A==", + "version": "1.0.30001252", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001252.tgz", + "integrity": "sha512-I56jhWDGMtdILQORdusxBOH+Nl/KgQSdDmpJezYddnAkVOmnoU8zwjTV9xAjMIYxr0iPreEAVylCGcmHCjfaOw==", "dev": true }, "catharsis": { @@ -2541,9 +2555,9 @@ } }, "domutils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz", - "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", "requires": { "dom-serializer": "^1.0.1", "domelementtype": "^2.2.0", @@ -2633,9 +2647,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.814", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.814.tgz", - "integrity": "sha512-0mH03cyjh6OzMlmjauGg0TLd87ErIJqWiYxMcOLKf5w6p0YEOl7DJAj7BDlXEFmCguY5CQaKVOiMjAMODO2XDw==", + "version": "1.3.822", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.822.tgz", + "integrity": "sha512-k7jG5oYYHxF4jx6PcqwHX3JVME/OjzolqOZiIogi9xtsfsmTjTdie4x88OakYFPEa8euciTgCCzvVNwvmjHb1Q==", "dev": true }, "emittery": { @@ -6500,9 +6514,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.38.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.38.0.tgz", - "integrity": "sha512-WBccZeMigAGKoI+NgD7Adh0ab1HUq+6BmyBUEaGxtErbUtWUevEbdgo5EZiJQofLUGcKtlNaO2IdN73AHEua5g==", + "version": "1.38.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.38.2.tgz", + "integrity": "sha512-Bz1fG6qiyF0FX6m/I+VxtdVKz1Dfmg/e9kfDy2PhWOkq3T384q2KxwIfP0fXpeI+EyyETdOauH+cRHQDFASllA==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" From f409a8acde98d0f9be4b6b177779c49e863a3dc1 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 2 Sep 2021 09:07:20 +0200 Subject: [PATCH 0563/1272] [ui5-project][INTERNAL] Azure: Test on Node 16 --- packages/project/azure-pipelines.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 0e1845b5149..dd0d98b00ca 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -19,13 +19,13 @@ strategy: node_version: 14.x linux_node_latest: imageName: 'ubuntu-20.04' - node_version: 15.x + node_version: 16.x mac_node_latest: imageName: 'macOS-10.15' - node_version: 15.x + node_version: 16.x windows_node_latest: imageName: 'windows-2019' - node_version: 15.x + node_version: 16.x pool: vmImage: $(imageName) From e098501eed08f30ae500c6a0bcc821fe3221ed65 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 5 Sep 2021 02:22:21 +0000 Subject: [PATCH 0564/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 304 ++++++++++++++--------------- 1 file changed, 152 insertions(+), 152 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 00e5194ab80..2353f431cee 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -19,20 +19,20 @@ "dev": true }, "@babel/core": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.0.tgz", - "integrity": "sha512-tXtmTminrze5HEUPn/a0JtOzzfp0nk+UEXQ/tqIJo3WDGypl/2OFQEMll/zSFU8f/lfmfLXvTaORHF3cfXIQMw==", + "version": "7.15.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.5.tgz", + "integrity": "sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.0", - "@babel/helper-compilation-targets": "^7.15.0", - "@babel/helper-module-transforms": "^7.15.0", - "@babel/helpers": "^7.14.8", - "@babel/parser": "^7.15.0", - "@babel/template": "^7.14.5", - "@babel/traverse": "^7.15.0", - "@babel/types": "^7.15.0", + "@babel/generator": "^7.15.4", + "@babel/helper-compilation-targets": "^7.15.4", + "@babel/helper-module-transforms": "^7.15.4", + "@babel/helpers": "^7.15.4", + "@babel/parser": "^7.15.5", + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.4", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.0.tgz", - "integrity": "sha512-eKl4XdMrbpYvuB505KTta4AV9g+wWzmVBW69tX0H2NwKVKd2YJbKgyK6M8j/rgLbmHOYJn6rUklV677nOyJrEQ==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.4.tgz", + "integrity": "sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw==", "dev": true, "requires": { - "@babel/types": "^7.15.0", + "@babel/types": "^7.15.4", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -90,9 +90,9 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.0.tgz", - "integrity": "sha512-h+/9t0ncd4jfZ8wsdAsoIxSa61qhBYlycXiHWqJaQBCXAhDCMbPRSMTGnZIkkmt1u4ag+UQmuqcILwqKzZ4N2A==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz", + "integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==", "dev": true, "requires": { "@babel/compat-data": "^7.15.0", @@ -110,105 +110,105 @@ } }, "@babel/helper-function-name": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz", - "integrity": "sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz", + "integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.14.5", - "@babel/template": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/helper-get-function-arity": "^7.15.4", + "@babel/template": "^7.15.4", + "@babel/types": "^7.15.4" } }, "@babel/helper-get-function-arity": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz", - "integrity": "sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz", + "integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==", "dev": true, "requires": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.15.4" } }, "@babel/helper-hoist-variables": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz", - "integrity": "sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz", + "integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==", "dev": true, "requires": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.15.4" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.0.tgz", - "integrity": "sha512-Jq8H8U2kYiafuj2xMTPQwkTBnEEdGKpT35lJEQsRRjnG0LW3neucsaMWLgKcwu3OHKNeYugfw+Z20BXBSEs2Lg==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz", + "integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==", "dev": true, "requires": { - "@babel/types": "^7.15.0" + "@babel/types": "^7.15.4" } }, "@babel/helper-module-imports": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz", - "integrity": "sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz", + "integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==", "dev": true, "requires": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.15.4" } }, "@babel/helper-module-transforms": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.0.tgz", - "integrity": "sha512-RkGiW5Rer7fpXv9m1B3iHIFDZdItnO2/BLfWVW/9q7+KqQSDY5kUfQEbzdXM1MVhJGcugKV7kRrNVzNxmk7NBg==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.4.tgz", + "integrity": "sha512-9fHHSGE9zTC++KuXLZcB5FKgvlV83Ox+NLUmQTawovwlJ85+QMhk1CnVk406CQVj97LaWod6KVjl2Sfgw9Aktw==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.14.5", - "@babel/helper-replace-supers": "^7.15.0", - "@babel/helper-simple-access": "^7.14.8", - "@babel/helper-split-export-declaration": "^7.14.5", + "@babel/helper-module-imports": "^7.15.4", + "@babel/helper-replace-supers": "^7.15.4", + "@babel/helper-simple-access": "^7.15.4", + "@babel/helper-split-export-declaration": "^7.15.4", "@babel/helper-validator-identifier": "^7.14.9", - "@babel/template": "^7.14.5", - "@babel/traverse": "^7.15.0", - "@babel/types": "^7.15.0" + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.4" } }, "@babel/helper-optimise-call-expression": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz", - "integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz", + "integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==", "dev": true, "requires": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.15.4" } }, "@babel/helper-replace-supers": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.0.tgz", - "integrity": "sha512-6O+eWrhx+HEra/uJnifCwhwMd6Bp5+ZfZeJwbqUTuqkhIT6YcRhiZCOOFChRypOIe0cV46kFrRBlm+t5vHCEaA==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz", + "integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.15.0", - "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/traverse": "^7.15.0", - "@babel/types": "^7.15.0" + "@babel/helper-member-expression-to-functions": "^7.15.4", + "@babel/helper-optimise-call-expression": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.4" } }, "@babel/helper-simple-access": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz", - "integrity": "sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz", + "integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==", "dev": true, "requires": { - "@babel/types": "^7.14.8" + "@babel/types": "^7.15.4" } }, "@babel/helper-split-export-declaration": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz", - "integrity": "sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz", + "integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==", "dev": true, "requires": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.15.4" } }, "@babel/helper-validator-identifier": { @@ -223,14 +223,14 @@ "dev": true }, "@babel/helpers": { - "version": "7.15.3", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.3.tgz", - "integrity": "sha512-HwJiz52XaS96lX+28Tnbu31VeFSQJGOeKHJeaEPQlTl7PnlhFElWPj8tUXtqFIzeN86XxXoBr+WFAyK2PPVz6g==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz", + "integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==", "dev": true, "requires": { - "@babel/template": "^7.14.5", - "@babel/traverse": "^7.15.0", - "@babel/types": "^7.15.0" + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.4" } }, "@babel/highlight": { @@ -295,34 +295,34 @@ } }, "@babel/parser": { - "version": "7.15.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.3.tgz", - "integrity": "sha512-O0L6v/HvqbdJawj0iBEfVQMc3/6WP+AeOsovsIgBFyJaG+W2w7eqvZB7puddATmWuARlm1SX7DwxJ/JJUnDpEA==" + "version": "7.15.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.5.tgz", + "integrity": "sha512-2hQstc6I7T6tQsWzlboMh3SgMRPaS4H6H7cPQsJkdzTzEGqQrpLDsE2BGASU5sBPoEQyHzeqU6C8uKbFeEk6sg==" }, "@babel/template": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz", - "integrity": "sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz", + "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", - "@babel/parser": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/parser": "^7.15.4", + "@babel/types": "^7.15.4" } }, "@babel/traverse": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.0.tgz", - "integrity": "sha512-392d8BN0C9eVxVWd8H6x9WfipgVH5IaIoLp23334Sc1vbKKWINnvwRpb4us0xtPaCumlwbTtIYNA0Dv/32sVFw==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz", + "integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==", "dev": true, "requires": { "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.0", - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-hoist-variables": "^7.14.5", - "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/parser": "^7.15.0", - "@babel/types": "^7.15.0", + "@babel/generator": "^7.15.4", + "@babel/helper-function-name": "^7.15.4", + "@babel/helper-hoist-variables": "^7.15.4", + "@babel/helper-split-export-declaration": "^7.15.4", + "@babel/parser": "^7.15.4", + "@babel/types": "^7.15.4", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -345,9 +345,9 @@ } }, "@babel/types": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.0.tgz", - "integrity": "sha512-OBvfqnllOIdX4ojTHpwZbpvz4j3EWyjkZEdmjH0/cgsd6QOdSgU8rLSk6ard/pcW7rlmjdVSX/AWOaORR1uNOQ==", + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.4.tgz", + "integrity": "sha512-0f1HJFuGmmbrKTCZtbm3cU+b/AqdEYk5toj5iQur58xkVMlS0JWaKxTBSmCXd47uiN7vbcozAupm6Mvs80GNhw==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.9", @@ -759,42 +759,42 @@ } }, "@vue/compiler-core": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.6.tgz", - "integrity": "sha512-vbwnz7+OhtLO5p5i630fTuQCL+MlUpEMTKHuX+RfetQ+3pFCkItt2JUH+9yMaBG2Hkz6av+T9mwN/acvtIwpbw==", + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.8.tgz", + "integrity": "sha512-Sx8qJ030+QM/NakUrkQuUGCeDEb+0d0AgFOl5W4qRvR6e+YgLnW2ew0jREf4T1hak9Fdk8Edl67StECHrhEuew==", "dev": true, "requires": { "@babel/parser": "^7.15.0", "@babel/types": "^7.15.0", - "@vue/shared": "3.2.6", + "@vue/shared": "3.2.8", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.6.tgz", - "integrity": "sha512-+a/3oBAzFIXhHt8L5IHJOTP4a5egzvpXYyi13jR7CUYOR1S+Zzv7vBWKYBnKyJLwnrxTZnTQVjeHCgJq743XKg==", + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.8.tgz", + "integrity": "sha512-nxBW6k8FMWQ74294CRbqR+iEJRO5vIjx85I3YCOyZFD6FsDHyFL60g76TcJzucp+F2XXIDaYz+A+F4gQlDatjw==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.6", - "@vue/shared": "3.2.6" + "@vue/compiler-core": "3.2.8", + "@vue/shared": "3.2.8" } }, "@vue/compiler-sfc": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.6.tgz", - "integrity": "sha512-Ariz1eDsf+2fw6oWXVwnBNtfKHav72RjlWXpEgozYBLnfRPzP+7jhJRw4Nq0OjSsLx2HqjF3QX7HutTjYB0/eA==", + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.8.tgz", + "integrity": "sha512-XClueQAXoWtN2EToKgfYH9FCL70Ac4bxx6OZFZzxYSg1bei8IB9srJP1UOfnJb2IpnM1heikAz1dp1HI1wHcyQ==", "dev": true, "requires": { "@babel/parser": "^7.15.0", "@babel/types": "^7.15.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.2.6", - "@vue/compiler-dom": "3.2.6", - "@vue/compiler-ssr": "3.2.6", - "@vue/ref-transform": "3.2.6", - "@vue/shared": "3.2.6", + "@vue/compiler-core": "3.2.8", + "@vue/compiler-dom": "3.2.8", + "@vue/compiler-ssr": "3.2.8", + "@vue/ref-transform": "3.2.8", + "@vue/shared": "3.2.8", "consolidate": "^0.16.0", "estree-walker": "^2.0.2", "hash-sum": "^2.0.0", @@ -825,32 +825,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.6.tgz", - "integrity": "sha512-A7IKRKHSyPnTC4w1FxHkjzoyjXInsXkcs/oX22nBQ+6AWlXj2Tt1le96CWPOXy5vYlsTYkF1IgfBaKIdeN/39g==", + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.8.tgz", + "integrity": "sha512-QqyiFRiIl55W0abDNQ6cNG/7iIfBHmbXVtssUAjX3IlI87ELeT0xackmrCyTSnfIX12ixljg9AN0COIZwlvt5A==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.6", - "@vue/shared": "3.2.6" + "@vue/compiler-dom": "3.2.8", + "@vue/shared": "3.2.8" } }, "@vue/ref-transform": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.6.tgz", - "integrity": "sha512-ie39+Y4nbirDLvH+WEq6Eo/l3n3mFATayqR+kEMSphrtMW6Uh/eEMx1Gk2Jnf82zmj3VLRq7dnmPx72JLcBYkQ==", + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.8.tgz", + "integrity": "sha512-9LdADd4JM3klt+b2qNT8a7b7JvBETNBy2Btv5rDzyPrAVS4Vrw+1WWay6gZBgnxfJ9TPSvG8f/9zu6gNGHmJLA==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@vue/compiler-core": "3.2.6", - "@vue/shared": "3.2.6", + "@vue/compiler-core": "3.2.8", + "@vue/shared": "3.2.8", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.6.tgz", - "integrity": "sha512-uwX0Qs2e6kdF+WmxwuxJxOnKs/wEkMArtYpHSm7W+VY/23Tl8syMRyjnzEeXrNCAP0/8HZxEGkHJsjPEDNRuHw==", + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.8.tgz", + "integrity": "sha512-E2DQQnG7Qr4GwTs3GlfPPlHliGVADoufTnhpwfoViw7JlyLMmYtjfnTwM6nXAwvSJWiF7D+7AxpnWBBT3VWo6Q==", "dev": true }, "JSONStream": { @@ -1034,9 +1034,9 @@ "dev": true }, "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", "requires": { "delegates": "^1.0.0", "readable-stream": "^2.0.6" @@ -1547,9 +1547,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001252", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001252.tgz", - "integrity": "sha512-I56jhWDGMtdILQORdusxBOH+Nl/KgQSdDmpJezYddnAkVOmnoU8zwjTV9xAjMIYxr0iPreEAVylCGcmHCjfaOw==", + "version": "1.0.30001254", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001254.tgz", + "integrity": "sha512-GxeHOvR0LFMYPmFGA+NiTOt9uwYDxB3h154tW2yBYwfz2EMX3i1IBgr6gmJGfU0K8KQsqPa5XqLD8zVdP5lUzA==", "dev": true }, "catharsis": { @@ -2146,9 +2146,9 @@ } }, "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, "cors": { "version": "2.8.5", @@ -2327,9 +2327,9 @@ "dev": true }, "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, "default-require-extensions": { @@ -2547,9 +2547,9 @@ "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==" }, "domhandler": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz", - "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.2.tgz", + "integrity": "sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==", "requires": { "domelementtype": "^2.2.0" } @@ -2647,9 +2647,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.822", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.822.tgz", - "integrity": "sha512-k7jG5oYYHxF4jx6PcqwHX3JVME/OjzolqOZiIogi9xtsfsmTjTdie4x88OakYFPEa8euciTgCCzvVNwvmjHb1Q==", + "version": "1.3.830", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.830.tgz", + "integrity": "sha512-gBN7wNAxV5vl1430dG+XRcQhD4pIeYeak6p6rjdCtlz5wWNwDad8jwvphe5oi1chL5MV6RNRikfffBBiFuj+rQ==", "dev": true }, "emittery": { @@ -3338,9 +3338,9 @@ } }, "find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", "dev": true, "requires": { "commondir": "^1.0.1", @@ -3382,9 +3382,9 @@ } }, "follow-redirects": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.2.tgz", - "integrity": "sha512-yLR6WaE2lbF0x4K2qE2p9PEXKLDjUjnR/xmjS3wHAYxtlsI9MLLBJUZirAHKzUZDGLxje7w/cXR49WOUo4rbsA==" + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.3.tgz", + "integrity": "sha512-3MkHxknWMUtb23apkgz/83fDoe+y+qr0TdgacGIA7bew+QLBo3vdgEN2xEsuXNivpFy4CyDhBBZnNZOtalmenw==" }, "foreground-child": { "version": "2.0.0", @@ -6514,9 +6514,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.38.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.38.2.tgz", - "integrity": "sha512-Bz1fG6qiyF0FX6m/I+VxtdVKz1Dfmg/e9kfDy2PhWOkq3T384q2KxwIfP0fXpeI+EyyETdOauH+cRHQDFASllA==", + "version": "1.39.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.39.0.tgz", + "integrity": "sha512-F4o+RhJkNOIG0b6QudYU8c78ZADKZjKDk5cyrf8XTKWfrgbtyVVXImFstJrc+1pkQDCggyidIOytq6gS4gCCZg==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" From aeebfe0a49511132a6ad18b751878ff46d73581e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Aug 2021 05:02:17 +0000 Subject: [PATCH 0565/1272] [ui5-project]Bump actions/setup-node from 2.3.0 to 2.4.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.3.0 to 2.4.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.3.0...v2.4.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index c276230fd7a..32b8d0e647d 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -15,7 +15,7 @@ jobs: - uses: actions/checkout@v2 - name: Use Node.js LTS 14.x - uses: actions/setup-node@v2.3.0 + uses: actions/setup-node@v2.4.0 with: node-version: 14.x From e76cbcb3b707c2ecdceaa029fe522c00a1e582cb Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 12 Sep 2021 02:20:43 +0000 Subject: [PATCH 0566/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 130 ++++++++++++++--------------- 1 file changed, 65 insertions(+), 65 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2353f431cee..bc7f91b2373 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.15.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.5.tgz", - "integrity": "sha512-2hQstc6I7T6tQsWzlboMh3SgMRPaS4H6H7cPQsJkdzTzEGqQrpLDsE2BGASU5sBPoEQyHzeqU6C8uKbFeEk6sg==" + "version": "7.15.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.6.tgz", + "integrity": "sha512-S/TSCcsRuCkmpUuoWijua0Snt+f3ewU/8spLo+4AXJCZfT0bVCzLD5MuOKdrx0mlAptbKzn5AdgEIIKXxXkz9Q==" }, "@babel/template": { "version": "7.15.4", @@ -345,9 +345,9 @@ } }, "@babel/types": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.4.tgz", - "integrity": "sha512-0f1HJFuGmmbrKTCZtbm3cU+b/AqdEYk5toj5iQur58xkVMlS0JWaKxTBSmCXd47uiN7vbcozAupm6Mvs80GNhw==", + "version": "7.15.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz", + "integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.9", @@ -759,42 +759,42 @@ } }, "@vue/compiler-core": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.8.tgz", - "integrity": "sha512-Sx8qJ030+QM/NakUrkQuUGCeDEb+0d0AgFOl5W4qRvR6e+YgLnW2ew0jREf4T1hak9Fdk8Edl67StECHrhEuew==", + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.11.tgz", + "integrity": "sha512-bcbsLx5XyQg8WDDEGwmpX0BfEfv82wIs9fWFelpyVhNRGMaABvUTalYINyfhVT+jOqNaD4JBhJiVKd/8TmsHWg==", "dev": true, "requires": { "@babel/parser": "^7.15.0", "@babel/types": "^7.15.0", - "@vue/shared": "3.2.8", + "@vue/shared": "3.2.11", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.8.tgz", - "integrity": "sha512-nxBW6k8FMWQ74294CRbqR+iEJRO5vIjx85I3YCOyZFD6FsDHyFL60g76TcJzucp+F2XXIDaYz+A+F4gQlDatjw==", + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.11.tgz", + "integrity": "sha512-DNvhUHI/1Hn0/+ZYDYGAuDGasUm+XHKC3FE4GqkNCTO/fcLaJMRg/7eT1m1lkc7jPffUwwfh1rZru5mwzOjrNw==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.8", - "@vue/shared": "3.2.8" + "@vue/compiler-core": "3.2.11", + "@vue/shared": "3.2.11" } }, "@vue/compiler-sfc": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.8.tgz", - "integrity": "sha512-XClueQAXoWtN2EToKgfYH9FCL70Ac4bxx6OZFZzxYSg1bei8IB9srJP1UOfnJb2IpnM1heikAz1dp1HI1wHcyQ==", + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.11.tgz", + "integrity": "sha512-cUIaS8mgJrQ6yucj2AupWAwBRITK3W/a8wCOn9g5fJGtOl8h4APY8vN3lzP8HIJDyEeRF3I8SfRhL+oX97kSnw==", "dev": true, "requires": { "@babel/parser": "^7.15.0", "@babel/types": "^7.15.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.2.8", - "@vue/compiler-dom": "3.2.8", - "@vue/compiler-ssr": "3.2.8", - "@vue/ref-transform": "3.2.8", - "@vue/shared": "3.2.8", + "@vue/compiler-core": "3.2.11", + "@vue/compiler-dom": "3.2.11", + "@vue/compiler-ssr": "3.2.11", + "@vue/ref-transform": "3.2.11", + "@vue/shared": "3.2.11", "consolidate": "^0.16.0", "estree-walker": "^2.0.2", "hash-sum": "^2.0.0", @@ -825,32 +825,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.8.tgz", - "integrity": "sha512-QqyiFRiIl55W0abDNQ6cNG/7iIfBHmbXVtssUAjX3IlI87ELeT0xackmrCyTSnfIX12ixljg9AN0COIZwlvt5A==", + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.11.tgz", + "integrity": "sha512-+ptAdUlFDij+Z0VGCbRRkxQlNev5LkbZAntvkxrFjc08CTMhZmiV4Js48n2hAmuSXaKNEpmGkDGU26c/vf1+xw==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.8", - "@vue/shared": "3.2.8" + "@vue/compiler-dom": "3.2.11", + "@vue/shared": "3.2.11" } }, "@vue/ref-transform": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.8.tgz", - "integrity": "sha512-9LdADd4JM3klt+b2qNT8a7b7JvBETNBy2Btv5rDzyPrAVS4Vrw+1WWay6gZBgnxfJ9TPSvG8f/9zu6gNGHmJLA==", + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.11.tgz", + "integrity": "sha512-7rX0YsfYb7+1PeKPME1tQyUQcQgt0sIXRRnPD1Vw8Zs2KIo90YLy9CrvwalcRCxGw0ScsjBEhVjJtWIT79TElg==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@vue/compiler-core": "3.2.8", - "@vue/shared": "3.2.8", + "@vue/compiler-core": "3.2.11", + "@vue/shared": "3.2.11", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.8.tgz", - "integrity": "sha512-E2DQQnG7Qr4GwTs3GlfPPlHliGVADoufTnhpwfoViw7JlyLMmYtjfnTwM6nXAwvSJWiF7D+7AxpnWBBT3VWo6Q==", + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.11.tgz", + "integrity": "sha512-ovfXAsSsCvV9JVceWjkqC/7OF5HbgLOtCWjCIosmPGG8lxbPuavhIxRH1dTx4Dg9xLgRTNLvI3pVxG4ItQZekg==", "dev": true }, "JSONStream": { @@ -888,9 +888,9 @@ "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" }, "acorn-walk": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.1.1.tgz", - "integrity": "sha512-FbJdceMlPHEAWJOILDk1fXD8lnTlEIWFkqtfk+MvmL5q/qlHfN7GEHcsFZWt/Tea9jRNPWUZG4G976nqAAmU9w==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", "dev": true }, "agent-base": { @@ -1165,9 +1165,9 @@ }, "dependencies": { "acorn": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz", - "integrity": "sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", + "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", "dev": true }, "ansi-regex": { @@ -1370,14 +1370,14 @@ } }, "browserslist": { - "version": "4.16.8", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.8.tgz", - "integrity": "sha512-sc2m9ohR/49sWEbPj14ZSSZqp+kbi16aLao42Hmn3Z8FpjuMaq2xCA2l4zl9ITfyzvnvyE0hcg62YkIGKxgaNQ==", + "version": "4.17.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.0.tgz", + "integrity": "sha512-g2BJ2a0nEYvEFQC208q8mVAhfNwpZ5Mu8BwgtCdZKO3qx98HChmeg448fPdUzld8aFmfLgVh7yymqV+q1lJZ5g==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001251", + "caniuse-lite": "^1.0.30001254", "colorette": "^1.3.0", - "electron-to-chromium": "^1.3.811", + "electron-to-chromium": "^1.3.830", "escalade": "^3.1.1", "node-releases": "^1.1.75" } @@ -1547,9 +1547,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001254", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001254.tgz", - "integrity": "sha512-GxeHOvR0LFMYPmFGA+NiTOt9uwYDxB3h154tW2yBYwfz2EMX3i1IBgr6gmJGfU0K8KQsqPa5XqLD8zVdP5lUzA==", + "version": "1.0.30001256", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001256.tgz", + "integrity": "sha512-QirrvMLmB4txNnxiaG/xbm6FSzv9LqOZ3Jp9VtCYb3oPIfCHpr/oGn38pFq0udwlkctvXQgPthaXqJ76DaYGnA==", "dev": true }, "catharsis": { @@ -1930,9 +1930,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "colorette": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz", - "integrity": "sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", "dev": true }, "command-exists": { @@ -2647,9 +2647,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.830", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.830.tgz", - "integrity": "sha512-gBN7wNAxV5vl1430dG+XRcQhD4pIeYeak6p6rjdCtlz5wWNwDad8jwvphe5oi1chL5MV6RNRikfffBBiFuj+rQ==", + "version": "1.3.836", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.836.tgz", + "integrity": "sha512-Ney3pHOJBWkG/AqYjrW0hr2AUCsao+2uvq9HUlRP8OlpSdk/zOHOUJP7eu0icDvePC9DlgffuelP4TnOJmMRUg==", "dev": true }, "emittery": { @@ -3265,9 +3265,9 @@ "dev": true }, "fastq": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.12.0.tgz", - "integrity": "sha512-VNX0QkHK3RsXVKr9KrlUv/FoTa0NdbYoHHl7uXHv2rzyHSlxjdNAKug2twd9luJxpcyNeAgf5iPPMutJO67Dfg==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", "requires": { "reusify": "^1.0.4" } @@ -6514,9 +6514,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.39.0.tgz", - "integrity": "sha512-F4o+RhJkNOIG0b6QudYU8c78ZADKZjKDk5cyrf8XTKWfrgbtyVVXImFstJrc+1pkQDCggyidIOytq6gS4gCCZg==", + "version": "1.39.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.39.2.tgz", + "integrity": "sha512-4/6Vn2RPc+qNwSclUSKvssh7dqK1Ih3FfHBW16I/GfH47b3scbYeOw65UIrYG7PkweFiKbpJjgkf5CV8EMmvzw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -6760,9 +6760,9 @@ } }, "source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "version": "0.5.20", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz", + "integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==", "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" From 1002775f8793d61ab83d66851ed5bd146bccc80c Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 19 Sep 2021 02:20:49 +0000 Subject: [PATCH 0567/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 224 ++++++++++++++--------------- 1 file changed, 112 insertions(+), 112 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bc7f91b2373..0db47effcd2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -157,19 +157,19 @@ } }, "@babel/helper-module-transforms": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.4.tgz", - "integrity": "sha512-9fHHSGE9zTC++KuXLZcB5FKgvlV83Ox+NLUmQTawovwlJ85+QMhk1CnVk406CQVj97LaWod6KVjl2Sfgw9Aktw==", + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.7.tgz", + "integrity": "sha512-ZNqjjQG/AuFfekFTY+7nY4RgBSklgTu970c7Rj3m/JOhIu5KPBUuTA9AY6zaKcUvk4g6EbDXdBnhi35FAssdSw==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.15.4", "@babel/helper-replace-supers": "^7.15.4", "@babel/helper-simple-access": "^7.15.4", "@babel/helper-split-export-declaration": "^7.15.4", - "@babel/helper-validator-identifier": "^7.14.9", + "@babel/helper-validator-identifier": "^7.15.7", "@babel/template": "^7.15.4", "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" + "@babel/types": "^7.15.6" } }, "@babel/helper-optimise-call-expression": { @@ -212,9 +212,9 @@ } }, "@babel/helper-validator-identifier": { - "version": "7.14.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", - "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==" + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", + "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==" }, "@babel/helper-validator-option": { "version": "7.14.5", @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.15.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.6.tgz", - "integrity": "sha512-S/TSCcsRuCkmpUuoWijua0Snt+f3ewU/8spLo+4AXJCZfT0bVCzLD5MuOKdrx0mlAptbKzn5AdgEIIKXxXkz9Q==" + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.7.tgz", + "integrity": "sha512-rycZXvQ+xS9QyIcJ9HXeDWf1uxqlbVFAUq0Rq0dbc50Zb/+wUe/ehyfzGfm9KZZF0kBejYgxltBXocP+gKdL2g==" }, "@babel/template": { "version": "7.15.4", @@ -759,42 +759,42 @@ } }, "@vue/compiler-core": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.11.tgz", - "integrity": "sha512-bcbsLx5XyQg8WDDEGwmpX0BfEfv82wIs9fWFelpyVhNRGMaABvUTalYINyfhVT+jOqNaD4JBhJiVKd/8TmsHWg==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.12.tgz", + "integrity": "sha512-IGJ0JmrAaAl5KBBegPAKkoXvsfDFgN/h7K1t/+0MxqpZF1fTDVUOp3tG7q9gWa7fwzGEaIsPhjtT5C3qztdLKg==", "dev": true, "requires": { "@babel/parser": "^7.15.0", "@babel/types": "^7.15.0", - "@vue/shared": "3.2.11", + "@vue/shared": "3.2.12", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.11.tgz", - "integrity": "sha512-DNvhUHI/1Hn0/+ZYDYGAuDGasUm+XHKC3FE4GqkNCTO/fcLaJMRg/7eT1m1lkc7jPffUwwfh1rZru5mwzOjrNw==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.12.tgz", + "integrity": "sha512-MulvKilA2USm8ubPfvXvNY55HVTn+zHERsXeNg437TXrmM4FRCis6zjWW47QZ3ZyxEkCdqOmuiFCtXbpnuthyw==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.11", - "@vue/shared": "3.2.11" + "@vue/compiler-core": "3.2.12", + "@vue/shared": "3.2.12" } }, "@vue/compiler-sfc": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.11.tgz", - "integrity": "sha512-cUIaS8mgJrQ6yucj2AupWAwBRITK3W/a8wCOn9g5fJGtOl8h4APY8vN3lzP8HIJDyEeRF3I8SfRhL+oX97kSnw==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.12.tgz", + "integrity": "sha512-EjzeMQ7H2ICj+JRw2buSFXTocdCg8e5yWQTlNM/6h/u68sTwMbIfiOJBFEwBhG/wCG7Nb6Nnz888AfHTU3hdrA==", "dev": true, "requires": { "@babel/parser": "^7.15.0", "@babel/types": "^7.15.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.2.11", - "@vue/compiler-dom": "3.2.11", - "@vue/compiler-ssr": "3.2.11", - "@vue/ref-transform": "3.2.11", - "@vue/shared": "3.2.11", + "@vue/compiler-core": "3.2.12", + "@vue/compiler-dom": "3.2.12", + "@vue/compiler-ssr": "3.2.12", + "@vue/ref-transform": "3.2.12", + "@vue/shared": "3.2.12", "consolidate": "^0.16.0", "estree-walker": "^2.0.2", "hash-sum": "^2.0.0", @@ -825,32 +825,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.11.tgz", - "integrity": "sha512-+ptAdUlFDij+Z0VGCbRRkxQlNev5LkbZAntvkxrFjc08CTMhZmiV4Js48n2hAmuSXaKNEpmGkDGU26c/vf1+xw==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.12.tgz", + "integrity": "sha512-sY+VbLQ17FPr1CgirnqEgY+jbC7wI5c2Ma6u8le0+b4UKMYF9urI2pybAZc1nKz6O78FWA3OSnQFxTTLppe+9Q==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.11", - "@vue/shared": "3.2.11" + "@vue/compiler-dom": "3.2.12", + "@vue/shared": "3.2.12" } }, "@vue/ref-transform": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.11.tgz", - "integrity": "sha512-7rX0YsfYb7+1PeKPME1tQyUQcQgt0sIXRRnPD1Vw8Zs2KIo90YLy9CrvwalcRCxGw0ScsjBEhVjJtWIT79TElg==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.12.tgz", + "integrity": "sha512-lS7TDda61iSf3ljokXVfN0VbOsQdmpST6MZLjxzBydFCECCJaEAr6o+K8VZ7NhUCSrl+gKXHpdXxmcvwdk66aQ==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@vue/compiler-core": "3.2.11", - "@vue/shared": "3.2.11", + "@vue/compiler-core": "3.2.12", + "@vue/shared": "3.2.12", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.11.tgz", - "integrity": "sha512-ovfXAsSsCvV9JVceWjkqC/7OF5HbgLOtCWjCIosmPGG8lxbPuavhIxRH1dTx4Dg9xLgRTNLvI3pVxG4ItQZekg==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.12.tgz", + "integrity": "sha512-5CkaifUCJwcTuru7FDwKFacPJuEoGUTw0LKSa5bw40B23s0TS+MGlYR1285nbV/ju3QUGlA6d6PD+GJkWy7uFg==", "dev": true }, "JSONStream": { @@ -1171,9 +1171,9 @@ "dev": true }, "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "ansi-styles": { @@ -1297,25 +1297,25 @@ "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" }, "boxen": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.0.1.tgz", - "integrity": "sha512-49VBlw+PrWEF51aCmy7QIteYPIFZxSpvqBdP/2itCPPlJ49kj9zg/XPRFrdkne2W+CfwXUls8exMvu1RysZpKA==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", "dev": true, "requires": { "ansi-align": "^3.0.0", "camelcase": "^6.2.0", "chalk": "^4.1.0", "cli-boxes": "^2.2.1", - "string-width": "^4.2.0", + "string-width": "^4.2.2", "type-fest": "^0.20.2", "widest-line": "^3.1.0", "wrap-ansi": "^7.0.0" }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "is-fullwidth-code-point": { @@ -1547,9 +1547,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001256", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001256.tgz", - "integrity": "sha512-QirrvMLmB4txNnxiaG/xbm6FSzv9LqOZ3Jp9VtCYb3oPIfCHpr/oGn38pFq0udwlkctvXQgPthaXqJ76DaYGnA==", + "version": "1.0.30001258", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001258.tgz", + "integrity": "sha512-RBByOG6xWXUp0CR2/WU2amXz3stjKpSl5J1xU49F1n2OxD//uBZO4wCKUiG+QMGf7CHGfDDcqoKriomoGVxTeA==", "dev": true }, "catharsis": { @@ -1810,9 +1810,9 @@ }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "is-fullwidth-code-point": { @@ -1855,9 +1855,9 @@ }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "is-fullwidth-code-point": { @@ -2647,9 +2647,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.836", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.836.tgz", - "integrity": "sha512-Ney3pHOJBWkG/AqYjrW0hr2AUCsao+2uvq9HUlRP8OlpSdk/zOHOUJP7eu0icDvePC9DlgffuelP4TnOJmMRUg==", + "version": "1.3.843", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.843.tgz", + "integrity": "sha512-OWEwAbzaVd1Lk9MohVw8LxMXFlnYd9oYTYxfX8KS++kLLjDfbovLOcEEXwRhG612dqGQ6+44SZvim0GXuBRiKg==", "dev": true }, "emittery": { @@ -2925,9 +2925,9 @@ } }, "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "debug": { @@ -3382,9 +3382,9 @@ } }, "follow-redirects": { - "version": "1.14.3", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.3.tgz", - "integrity": "sha512-3MkHxknWMUtb23apkgz/83fDoe+y+qr0TdgacGIA7bew+QLBo3vdgEN2xEsuXNivpFy4CyDhBBZnNZOtalmenw==" + "version": "1.14.4", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.4.tgz", + "integrity": "sha512-zwGkiSXC1MUJG/qmeIFH2HBJx9u0V46QGUe3YR1fXG8bXQxq7fLj0RjLZQ5nubr9qNJUZrH+xUcwXEoXNpfS+g==" }, "foreground-child": { "version": "2.0.0", @@ -5246,9 +5246,9 @@ } }, "nth-check": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz", - "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", + "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", "requires": { "boolbase": "^1.0.0" } @@ -5294,9 +5294,9 @@ }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "camelcase": { @@ -5522,9 +5522,9 @@ }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "strip-ansi": { @@ -6514,9 +6514,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.39.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.39.2.tgz", - "integrity": "sha512-4/6Vn2RPc+qNwSclUSKvssh7dqK1Ih3FfHBW16I/GfH47b3scbYeOw65UIrYG7PkweFiKbpJjgkf5CV8EMmvzw==", + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.41.1.tgz", + "integrity": "sha512-vIjX7izRxw3Wsiez7SX7D+j76v7tenfO18P59nonjr/nzCkZuoHuF7I/Fo0ZRZPKr88v29ivIdE9BqGDgQD/Nw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -6664,9 +6664,9 @@ "dev": true }, "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.4.tgz", + "integrity": "sha512-rqYhcAnZ6d/vTPGghdrw7iumdcbXpsk1b8IG/rz+VWV51DM0p7XCtMoJ3qhPLIbp3tvyt3pKRbaaEMZYpHto8Q==" }, "sinon": { "version": "11.1.2", @@ -6906,9 +6906,9 @@ } }, "stack-utils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz", - "integrity": "sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", + "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", "dev": true, "requires": { "escape-string-regexp": "^2.0.0" @@ -7017,9 +7017,9 @@ }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "js-yaml": { @@ -7066,9 +7066,9 @@ }, "dependencies": { "ajv": { - "version": "8.6.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", - "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", + "version": "8.6.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", + "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7078,9 +7078,9 @@ } }, "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "is-fullwidth-code-point": { @@ -7327,13 +7327,13 @@ } }, "terser": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.2.tgz", - "integrity": "sha512-0Omye+RD4X7X69O0eql3lC4Heh/5iLj3ggxR/B5ketZLOtLiOqukUgjw3q4PDnNQbsrkKr3UMypqStQG3XKRvw==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.8.0.tgz", + "integrity": "sha512-f0JH+6yMpneYcRJN314lZrSwu9eKkUFEHLN/kNy8ceh8gaRiLgFPJqrB9HsXjhEGdv4e/ekjTOFxIlL6xlma8A==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", - "source-map-support": "~0.5.19" + "source-map-support": "~0.5.20" }, "dependencies": { "source-map": { @@ -7435,9 +7435,9 @@ "dev": true }, "trim-off-newlines": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", - "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.2.tgz", + "integrity": "sha512-DAnbtY4lNoOTLw05HLuvPoBFAGV4zOKQ9d1Q45JB+bcDwYIEkCr0xNgwKtygtKFBbRlFA/8ytkAM1V09QGWksg==", "dev": true }, "tslib": { @@ -7671,9 +7671,9 @@ }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "is-fullwidth-code-point": { @@ -7722,9 +7722,9 @@ }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "is-fullwidth-code-point": { @@ -7834,9 +7834,9 @@ }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "is-fullwidth-code-point": { From 888de09088703d503921e2d8d4e146f204cce600 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 26 Sep 2021 02:22:14 +0000 Subject: [PATCH 0568/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 533 ++++++++++------------------- packages/project/package.json | 2 +- 2 files changed, 179 insertions(+), 356 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0db47effcd2..943b07628e2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -650,12 +650,6 @@ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", "dev": true }, - "@types/estree": { - "version": "0.0.48", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.48.tgz", - "integrity": "sha512-LfZwXoGUDo0C3me81HXgkBg5CTQYb6xzEl+fNmbO4JdRiSKQ8A0GD1OBBvKAIsbCUgoyAty7m99GqqMQe784ew==", - "dev": true - }, "@types/minimatch": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", @@ -759,98 +753,72 @@ } }, "@vue/compiler-core": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.12.tgz", - "integrity": "sha512-IGJ0JmrAaAl5KBBegPAKkoXvsfDFgN/h7K1t/+0MxqpZF1fTDVUOp3tG7q9gWa7fwzGEaIsPhjtT5C3qztdLKg==", + "version": "3.2.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.19.tgz", + "integrity": "sha512-8dOPX0YOtaXol0Zf2cfLQ4NU/yHYl2H7DCKsLEZ7gdvPK6ZSEwGLJ7IdghhY2YEshEpC5RB9QKdC5I07z8Dtjg==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@babel/types": "^7.15.0", - "@vue/shared": "3.2.12", + "@vue/shared": "3.2.19", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.12.tgz", - "integrity": "sha512-MulvKilA2USm8ubPfvXvNY55HVTn+zHERsXeNg437TXrmM4FRCis6zjWW47QZ3ZyxEkCdqOmuiFCtXbpnuthyw==", + "version": "3.2.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.19.tgz", + "integrity": "sha512-WzQoE8rfkFjPtIioc7SSgTsnz9g2oG61DU8KHnzPrRS7fW/lji6H2uCYJfp4Z6kZE8GjnHc1Ljwl3/gxDes0cw==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.12", - "@vue/shared": "3.2.12" + "@vue/compiler-core": "3.2.19", + "@vue/shared": "3.2.19" } }, "@vue/compiler-sfc": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.12.tgz", - "integrity": "sha512-EjzeMQ7H2ICj+JRw2buSFXTocdCg8e5yWQTlNM/6h/u68sTwMbIfiOJBFEwBhG/wCG7Nb6Nnz888AfHTU3hdrA==", + "version": "3.2.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.19.tgz", + "integrity": "sha512-pLlbgkO1UHTO02MSpa/sFOXUwIDxSMiKZ1ozE5n71CY4DM+YmI+G3gT/ZHZ46WBId7f3VTF/D8pGwMygcQbrQA==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@babel/types": "^7.15.0", - "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.2.12", - "@vue/compiler-dom": "3.2.12", - "@vue/compiler-ssr": "3.2.12", - "@vue/ref-transform": "3.2.12", - "@vue/shared": "3.2.12", - "consolidate": "^0.16.0", + "@vue/compiler-core": "3.2.19", + "@vue/compiler-dom": "3.2.19", + "@vue/compiler-ssr": "3.2.19", + "@vue/ref-transform": "3.2.19", + "@vue/shared": "3.2.19", "estree-walker": "^2.0.2", - "hash-sum": "^2.0.0", - "lru-cache": "^5.1.1", "magic-string": "^0.25.7", - "merge-source-map": "^1.1.0", "postcss": "^8.1.10", - "postcss-modules": "^4.0.0", - "postcss-selector-parser": "^6.0.4", "source-map": "^0.6.1" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } } }, "@vue/compiler-ssr": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.12.tgz", - "integrity": "sha512-sY+VbLQ17FPr1CgirnqEgY+jbC7wI5c2Ma6u8le0+b4UKMYF9urI2pybAZc1nKz6O78FWA3OSnQFxTTLppe+9Q==", + "version": "3.2.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.19.tgz", + "integrity": "sha512-oLon0Cn3O7WEYzzmzZavGoqXH+199LT+smdjBT3Uf3UX4HwDNuBFCmvL0TsqV9SQnIgKvBRbQ7lhbpnd4lqM3w==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.12", - "@vue/shared": "3.2.12" + "@vue/compiler-dom": "3.2.19", + "@vue/shared": "3.2.19" } }, "@vue/ref-transform": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.12.tgz", - "integrity": "sha512-lS7TDda61iSf3ljokXVfN0VbOsQdmpST6MZLjxzBydFCECCJaEAr6o+K8VZ7NhUCSrl+gKXHpdXxmcvwdk66aQ==", + "version": "3.2.19", + "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.19.tgz", + "integrity": "sha512-03wwUnoIAeKti5IGGx6Vk/HEBJ+zUcm5wrUM3+PQsGf7IYnXTbeIfHHpx4HeSeWhnLAjqZjADQwW8uA4rBmVbg==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@vue/compiler-core": "3.2.12", - "@vue/shared": "3.2.12", + "@vue/compiler-core": "3.2.19", + "@vue/shared": "3.2.19", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.12.tgz", - "integrity": "sha512-5CkaifUCJwcTuru7FDwKFacPJuEoGUTw0LKSa5bw40B23s0TS+MGlYR1285nbV/ju3QUGlA6d6PD+GJkWy7uFg==", + "version": "3.2.19", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.19.tgz", + "integrity": "sha512-Knqhx7WieLdVgwCAZgTVrDCXZ50uItuecLh9JdLC8O+a5ayaSyIQYveUK3hCRNC7ws5zalHmZwfdLMGaS8r4Ew==", "dev": true }, "JSONStream": { @@ -1206,12 +1174,12 @@ "dev": true }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } } } @@ -1227,12 +1195,6 @@ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, "binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -1269,9 +1231,9 @@ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, "blueimp-md5": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.18.0.tgz", - "integrity": "sha512-vE52okJvzsVWhcgUHOv+69OG3Mdg151xyn41aVQN/5W5S+S43qZhxECtYLAEHMSFWX6Mv5IZrzj3T5+JqXfj5Q==", + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.19.0.tgz", + "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", "dev": true }, "body-parser": { @@ -1325,23 +1287,23 @@ "dev": true }, "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } }, "type-fest": { @@ -1370,16 +1332,24 @@ } }, "browserslist": { - "version": "4.17.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.0.tgz", - "integrity": "sha512-g2BJ2a0nEYvEFQC208q8mVAhfNwpZ5Mu8BwgtCdZKO3qx98HChmeg448fPdUzld8aFmfLgVh7yymqV+q1lJZ5g==", + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.1.tgz", + "integrity": "sha512-aLD0ZMDSnF4lUt4ZDNgqi5BUn9BZ7YdQdI/cYlILrhdSSZJLU9aNZoD5/NBmM4SK34APB2e83MOsRt1EnkuyaQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001254", - "colorette": "^1.3.0", - "electron-to-chromium": "^1.3.830", + "caniuse-lite": "^1.0.30001259", + "electron-to-chromium": "^1.3.846", "escalade": "^3.1.1", - "node-releases": "^1.1.75" + "nanocolors": "^0.1.5", + "node-releases": "^1.1.76" + }, + "dependencies": { + "nanocolors": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.1.12.tgz", + "integrity": "sha512-2nMHqg1x5PU+unxX7PGY7AuYxl2qDx7PSrTRjizr8sxdd3l/3hBuWWaki62qmtYm2U5i4Z5E7GbjlyDFhs9/EQ==", + "dev": true + } } }, "buffer": { @@ -1547,10 +1517,21 @@ } }, "caniuse-lite": { - "version": "1.0.30001258", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001258.tgz", - "integrity": "sha512-RBByOG6xWXUp0CR2/WU2amXz3stjKpSl5J1xU49F1n2OxD//uBZO4wCKUiG+QMGf7CHGfDDcqoKriomoGVxTeA==", - "dev": true + "version": "1.0.30001260", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001260.tgz", + "integrity": "sha512-Fhjc/k8725ItmrvW5QomzxLeojewxvqiYCKeFcfFEhut28IVLdpHU19dneOmltZQIE5HNbawj1HYD+1f2bM1Dg==", + "dev": true, + "requires": { + "nanocolors": "^0.1.0" + }, + "dependencies": { + "nanocolors": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.1.12.tgz", + "integrity": "sha512-2nMHqg1x5PU+unxX7PGY7AuYxl2qDx7PSrTRjizr8sxdd3l/3hBuWWaki62qmtYm2U5i4Z5E7GbjlyDFhs9/EQ==", + "dev": true + } + } }, "catharsis": { "version": "0.9.0", @@ -1822,23 +1803,23 @@ "dev": true }, "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } } } @@ -1867,23 +1848,23 @@ "dev": true }, "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } } } @@ -1929,12 +1910,6 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", - "dev": true - }, "command-exists": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", @@ -2067,15 +2042,6 @@ "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" }, - "consolidate": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/consolidate/-/consolidate-0.16.0.tgz", - "integrity": "sha512-Nhl1wzCslqXYTJVDyJCu3ODohy9OfBMB5uD2BiBTzd7w+QY0lBzafkR8y8755yMYHAaMD4NuzbAw03/xzfw+eQ==", - "dev": true, - "requires": { - "bluebird": "^3.7.2" - } - }, "content-disposition": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", @@ -2236,12 +2202,6 @@ "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz", "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==" }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, "currently-unhandled": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", @@ -2647,9 +2607,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.843", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.843.tgz", - "integrity": "sha512-OWEwAbzaVd1Lk9MohVw8LxMXFlnYd9oYTYxfX8KS++kLLjDfbovLOcEEXwRhG612dqGQ6+44SZvim0GXuBRiKg==", + "version": "1.3.850", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.850.tgz", + "integrity": "sha512-ZzkDcdzePeF4dhoGZQT77V2CyJOpwfTZEOg4h0x6R/jQhGt/rIRpbRyVreWLtD7B/WsVxo91URm2WxMKR9JQZA==", "dev": true }, "emittery": { @@ -2664,12 +2624,6 @@ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true - }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -2996,12 +2950,12 @@ "dev": true }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } }, "type-fest": { @@ -3211,9 +3165,9 @@ } }, "ext": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.5.0.tgz", - "integrity": "sha512-+ONcYoWj/SoQwUofMr94aGu05Ou4FepKi7N7b+O8T4jVfyIsZQV1/xeS8jpaBzF0csAk0KLXoHCxU7cKYZjo1Q==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", + "integrity": "sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==", "requires": { "type": "^2.5.0" }, @@ -3478,15 +3432,6 @@ "wide-align": "^1.1.0" } }, - "generic-names": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/generic-names/-/generic-names-2.0.1.tgz", - "integrity": "sha512-kPCHWa1m9wGG/OwQpeweTwM/PYiQLrUIxXbt/P4Nic3LbGjCP0YwrALHW1uNLKZ0LIMg+RF+XRlj2ekT9ZlZAQ==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0" - } - }, "genfun": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", @@ -3530,9 +3475,9 @@ } }, "glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -3654,12 +3599,6 @@ "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", "dev": true }, - "hash-sum": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", - "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", - "dev": true - }, "hasha": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", @@ -3809,18 +3748,6 @@ "safer-buffer": ">= 2.1.2 < 3" } }, - "icss-replace-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", - "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", - "dev": true - }, - "icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true - }, "ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", @@ -4130,9 +4057,9 @@ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.1.tgz", + "integrity": "sha512-GvCYYTxaCPqwMjobtVcVKvSHtAGe48MNhGjpK8LtVF8K0ISX7hCKl85LgtuaSneWVyQmaGcW3iXVV3GaZSLpmQ==", "dev": true }, "istanbul-lib-hook": { @@ -4478,28 +4405,6 @@ } } }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - } - } - }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -4522,12 +4427,6 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", - "dev": true - }, "lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", @@ -4675,9 +4574,9 @@ } }, "map-obj": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.2.1.tgz", - "integrity": "sha512-+WA2/1sPmDj1dlvvJmB5G6JKfY9dpn7EVBUL06+y6PoljPkh+6V1QihwxNkbcGxCRjt2b0F9K0taiCuo7MbdFQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", "dev": true }, "markdown-it": { @@ -4803,15 +4702,6 @@ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" }, - "merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - } - }, "merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -5026,6 +4916,12 @@ "minimatch": "^3.0.4" } }, + "nanocolors": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.6.tgz", + "integrity": "sha512-lP8hjPSXTQ7qpYl5hFPVTBXGdd7+Rn3oi8GqIPNZP63L09tewRzWYFxAy26B1BYOOYaPWgmVF/BFIhDAHihwUQ==", + "dev": true + }, "nanoid": { "version": "3.1.25", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz", @@ -5098,9 +4994,9 @@ } }, "node-releases": { - "version": "1.1.75", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.75.tgz", - "integrity": "sha512-Qe5OUajvqrqDSy6wrWFmMwfJ0jVgwiw4T3KqmbTcZ62qW0gQkheXYhcFM1+lOVcGUoRxcEcfyvFMAnDgaF1VWw==", + "version": "1.1.76", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.76.tgz", + "integrity": "sha512-9/IECtNr8dXNmPWmFXepT0/7o5eolGesHUa3mtr0KlgnCvnZxwh2qensKL42JJY2vQKC3nIBXetFAqR+PW1CmA==", "dev": true }, "nopt": { @@ -5366,23 +5262,23 @@ "dev": true }, "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } }, "wrap-ansi": { @@ -5528,12 +5424,12 @@ "dev": true }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } } } @@ -5923,83 +5819,16 @@ } }, "postcss": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.6.tgz", - "integrity": "sha512-wG1cc/JhRgdqB6WHEuyLTedf3KIRuD0hG6ldkFEZNCjRxiC+3i6kkWUUbiJQayP28iwG35cEmAbe98585BYV0A==", + "version": "8.3.8", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.8.tgz", + "integrity": "sha512-GT5bTjjZnwDifajzczOC+r3FI3Cu+PgPvrsjhQdRqa2kTJ4968/X9CUce9xttIB0xOs5c6xf0TCWZo/y9lF6bA==", "dev": true, "requires": { - "colorette": "^1.2.2", - "nanoid": "^3.1.23", + "nanocolors": "^0.2.2", + "nanoid": "^3.1.25", "source-map-js": "^0.6.2" } }, - "postcss-modules": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.2.2.tgz", - "integrity": "sha512-/H08MGEmaalv/OU8j6bUKi/kZr2kqGF6huAW8m9UAgOLWtpFdhA14+gPBoymtqyv+D4MLsmqaF2zvIegdCxJXg==", - "dev": true, - "requires": { - "generic-names": "^2.0.1", - "icss-replace-symbols": "^1.1.0", - "lodash.camelcase": "^4.3.0", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "string-hash": "^1.1.1" - } - }, - "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true - }, - "postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0" - } - }, - "postcss-selector-parser": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", - "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-value-parser": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", - "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", - "dev": true - }, "prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -6514,9 +6343,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.41.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.41.1.tgz", - "integrity": "sha512-vIjX7izRxw3Wsiez7SX7D+j76v7tenfO18P59nonjr/nzCkZuoHuF7I/Fo0ZRZPKr88v29ivIdE9BqGDgQD/Nw==", + "version": "1.42.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.42.1.tgz", + "integrity": "sha512-/zvGoN8B7dspKc5mC6HlaygyCBRvnyzzgD5khiaCfglWztY99cYoiTUksVx11NlnemrcfH5CEaCpsUKoW0cQqg==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -6941,12 +6770,6 @@ "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" }, - "string-hash": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz", - "integrity": "sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs=", - "dev": true - }, "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", @@ -7033,12 +6856,12 @@ } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } } } @@ -7107,23 +6930,23 @@ } }, "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } } } @@ -7327,9 +7150,9 @@ } }, "terser": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.8.0.tgz", - "integrity": "sha512-f0JH+6yMpneYcRJN314lZrSwu9eKkUFEHLN/kNy8ceh8gaRiLgFPJqrB9HsXjhEGdv4e/ekjTOFxIlL6xlma8A==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz", + "integrity": "sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", @@ -7683,23 +7506,23 @@ "dev": true }, "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } } } @@ -7734,23 +7557,23 @@ "dev": true }, "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } } } @@ -7846,23 +7669,23 @@ "dev": true }, "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } }, "y18n": { diff --git a/packages/project/package.json b/packages/project/package.json index 631a95673cb..71fa3727ebc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -130,7 +130,7 @@ "eslint": "^7.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^35.5.1", - "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-coverage": "^3.0.1", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.2", From cd9b1d7371d9f6b370e362ecb5d323605332bd6f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 3 Oct 2021 02:20:38 +0000 Subject: [PATCH 0569/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 163 ++++++++++++----------------- 1 file changed, 69 insertions(+), 94 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 943b07628e2..353678f2ce2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -904,50 +904,44 @@ "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" }, "ansi-align": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", - "integrity": "sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", "dev": true, "requires": { - "string-width": "^3.0.0" + "string-width": "^4.1.0" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.1" } } } @@ -1332,24 +1326,16 @@ } }, "browserslist": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.1.tgz", - "integrity": "sha512-aLD0ZMDSnF4lUt4ZDNgqi5BUn9BZ7YdQdI/cYlILrhdSSZJLU9aNZoD5/NBmM4SK34APB2e83MOsRt1EnkuyaQ==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.2.tgz", + "integrity": "sha512-jSDZyqJmkKMEMi7SZAgX5UltFdR5NAO43vY0AwTpu4X3sGH7GLLQ83KiUomgrnvZRCeW0yPPnKqnxPqQOER9zQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001259", - "electron-to-chromium": "^1.3.846", + "caniuse-lite": "^1.0.30001261", + "electron-to-chromium": "^1.3.854", "escalade": "^3.1.1", - "nanocolors": "^0.1.5", + "nanocolors": "^0.2.12", "node-releases": "^1.1.76" - }, - "dependencies": { - "nanocolors": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.1.12.tgz", - "integrity": "sha512-2nMHqg1x5PU+unxX7PGY7AuYxl2qDx7PSrTRjizr8sxdd3l/3hBuWWaki62qmtYm2U5i4Z5E7GbjlyDFhs9/EQ==", - "dev": true - } } }, "buffer": { @@ -1517,21 +1503,10 @@ } }, "caniuse-lite": { - "version": "1.0.30001260", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001260.tgz", - "integrity": "sha512-Fhjc/k8725ItmrvW5QomzxLeojewxvqiYCKeFcfFEhut28IVLdpHU19dneOmltZQIE5HNbawj1HYD+1f2bM1Dg==", - "dev": true, - "requires": { - "nanocolors": "^0.1.0" - }, - "dependencies": { - "nanocolors": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.1.12.tgz", - "integrity": "sha512-2nMHqg1x5PU+unxX7PGY7AuYxl2qDx7PSrTRjizr8sxdd3l/3hBuWWaki62qmtYm2U5i4Z5E7GbjlyDFhs9/EQ==", - "dev": true - } - } + "version": "1.0.30001263", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001263.tgz", + "integrity": "sha512-doiV5dft6yzWO1WwU19kt8Qz8R0/8DgEziz6/9n2FxUasteZNwNNYSmJO3GLBH8lCVE73AB1RPDPAeYbcO5Cvw==", + "dev": true }, "catharsis": { "version": "0.9.0", @@ -1775,9 +1750,9 @@ } }, "cli-spinners": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.0.tgz", - "integrity": "sha512-t+4/y50K/+4xcCRosKkA7W4gTr1MySvLV0q+PxmG7FJ5g+66ChKurYjxBCjHggHH3HA5Hh9cy+lcUGWDqVH+4Q==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", + "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", "dev": true }, "cli-truncate": { @@ -2607,9 +2582,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.850", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.850.tgz", - "integrity": "sha512-ZzkDcdzePeF4dhoGZQT77V2CyJOpwfTZEOg4h0x6R/jQhGt/rIRpbRyVreWLtD7B/WsVxo91URm2WxMKR9JQZA==", + "version": "1.3.857", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.857.tgz", + "integrity": "sha512-a5kIr2lajm4bJ5E4D3fp8Y/BRB0Dx2VOcCRE5Gtb679mXIME/OFhWler8Gy2ksrf8gFX+EFCSIGA33FB3gqYpg==", "dev": true }, "emittery": { @@ -3896,9 +3871,9 @@ } }, "is-core-module": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz", - "integrity": "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.7.0.tgz", + "integrity": "sha512-ByY+tjCciCr+9nLryBYcSD50EOGWt95c7tIsKTG1J2ixKKXPvF7Ej3AVd+UfDydAJom3biBGDBALaO79ktwgEQ==", "requires": { "has": "^1.0.3" } @@ -3929,9 +3904,9 @@ } }, "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "requires": { "is-extglob": "^2.1.1" } @@ -4241,9 +4216,9 @@ } }, "jsdoc-type-pratt-parser": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.1.1.tgz", - "integrity": "sha512-uelRmpghNwPBuZScwgBG/OzodaFk5RbO5xaivBdsAY70icWfShwZ7PCMO0x1zSkOa8T1FzHThmrdoyg/0AwV5g==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.2.0.tgz", + "integrity": "sha512-4STjeF14jp4bqha44nKMY1OUI6d2/g6uclHWUCZ7B4DoLzaB5bmpTkQrpqU+vSVzMD0LsKAOskcnI3I3VfIpmg==", "dev": true }, "jsesc": { @@ -4727,16 +4702,16 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.49.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", - "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==" + "version": "1.50.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.50.0.tgz", + "integrity": "sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==" }, "mime-types": { - "version": "2.1.32", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", - "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", + "version": "2.1.33", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.33.tgz", + "integrity": "sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==", "requires": { - "mime-db": "1.49.0" + "mime-db": "1.50.0" } }, "mimic-fn": { @@ -4917,15 +4892,15 @@ } }, "nanocolors": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.6.tgz", - "integrity": "sha512-lP8hjPSXTQ7qpYl5hFPVTBXGdd7+Rn3oi8GqIPNZP63L09tewRzWYFxAy26B1BYOOYaPWgmVF/BFIhDAHihwUQ==", + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.12.tgz", + "integrity": "sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug==", "dev": true }, "nanoid": { - "version": "3.1.25", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz", - "integrity": "sha512-rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==", + "version": "3.1.28", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.28.tgz", + "integrity": "sha512-gSu9VZ2HtmoKYe/lmyPFES5nknFrHa+/DT9muUFWFMi6Jh9E1I7bkvlQ8xxf1Kos9pi9o8lBnIOkatMhKX/YUw==", "dev": true }, "natural-compare": { @@ -4994,9 +4969,9 @@ } }, "node-releases": { - "version": "1.1.76", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.76.tgz", - "integrity": "sha512-9/IECtNr8dXNmPWmFXepT0/7o5eolGesHUa3mtr0KlgnCvnZxwh2qensKL42JJY2vQKC3nIBXetFAqR+PW1CmA==", + "version": "1.1.77", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", + "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==", "dev": true }, "nopt": { @@ -6493,9 +6468,9 @@ "dev": true }, "signal-exit": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.4.tgz", - "integrity": "sha512-rqYhcAnZ6d/vTPGghdrw7iumdcbXpsk1b8IG/rz+VWV51DM0p7XCtMoJ3qhPLIbp3tvyt3pKRbaaEMZYpHto8Q==" + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", + "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" }, "sinon": { "version": "11.1.2", @@ -6875,17 +6850,17 @@ } }, "table": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", - "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", + "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==", "dev": true, "requires": { "ajv": "^8.0.1", "lodash.clonedeep": "^4.5.0", "lodash.truncate": "^4.4.2", "slice-ansi": "^4.0.0", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0" + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" }, "dependencies": { "ajv": { From 37b711459846e782f83bc8e432ad81507af95524 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 4 Oct 2021 05:03:31 +0000 Subject: [PATCH 0570/1272] [ui5-project]Bump actions/setup-node from 2.4.0 to 2.4.1 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.4.0 to 2.4.1. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v2.4.0...v2.4.1) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 32b8d0e647d..f467e7e3c53 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -15,7 +15,7 @@ jobs: - uses: actions/checkout@v2 - name: Use Node.js LTS 14.x - uses: actions/setup-node@v2.4.0 + uses: actions/setup-node@v2.4.1 with: node-version: 14.x From 57110674cfb78d84fa2894149bb4c2382d4bd8bc Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 5 Oct 2021 11:16:10 +0000 Subject: [PATCH 0571/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.9.5 to 2.10.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.10.0/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 353678f2ce2..edd6f4bdb10 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -674,9 +674,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.9.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.9.5.tgz", - "integrity": "sha512-aq/RSweNPKWMNW7Izp7X5PBuaSaUKXd3OBSKcXn7Q2aRl2eznIuMPK1UsSlMCU9nsO2w9/Mp3Uh77XPHGe2i0A==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.10.0.tgz", + "integrity": "sha512-VEKoLAs+wWkhpUZe+jWEeg7sGBS0tmuTSGHn/jY6YZgG5RsljcPH2Dlf+6a5IPZSjkEGttiyT9qnEOsnhazIhw==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -694,7 +694,7 @@ "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.5", - "terser": "^5.7.1", + "terser": "^5.9.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" } diff --git a/packages/project/package.json b/packages/project/package.json index 71fa3727ebc..ba22c976b5d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.9.5", + "@ui5/builder": "^2.10.0", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.3.1", "ajv": "^6.12.6", From 7e9ee73d8cd931077c6f95df2b7b3abe972ba55f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= <1410947+matz3@users.noreply.github.com> Date: Thu, 7 Oct 2021 15:21:44 +0200 Subject: [PATCH 0572/1272] [ui5-project][FIX] ui5Framework: Skip processing of framework libs (#424) - Framework dependencies of OpenUI5 / SAPUI5 libraries are currently ignored anyways (as getFrameworkLibrariesFromTree always returns an empty array). This means that regardless of the existence of a framework version, all UI5 framework translator related steps can be skipped. - This allows execution of "ui5 build" for SAPUI5 framework projects, which previously failed due to the missing version. It might still fail in case no dependencies are provided by other means (npm/static translator). JIRA: CPOUI5FOUNDATION-352 JIRA: CPOUI5FOUNDATION-397 --- .../project/lib/translators/ui5Framework.js | 7 ++ .../test/lib/translators/ui5Framework.js | 74 +++++++++++++++++++ 2 files changed, 81 insertions(+) diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index eb27afb7ece..5287764ecbd 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -133,6 +133,13 @@ module.exports = { return null; } + // Ignoring UI5 Framework libraries + if (utils.isFrameworkProject(tree)) { + log.verbose(`UI5 framework dependency resolution is currently not supported ` + + `for framework libraries. Skipping project "${tree.id}"`); + return null; + } + const frameworkName = tree.framework.name; if (frameworkName !== "SAPUI5" && frameworkName !== "OpenUI5") { throw new Error( diff --git a/packages/project/test/lib/translators/ui5Framework.js b/packages/project/test/lib/translators/ui5Framework.js index 7be4b5c9edc..177646dbb6a 100644 --- a/packages/project/test/lib/translators/ui5Framework.js +++ b/packages/project/test/lib/translators/ui5Framework.js @@ -166,6 +166,46 @@ test.serial("generateDependencyTree should throw error when no framework version }, {message: "framework.version is not defined for project test-id"}); }); +test.serial("generateDependencyTree should skip framework project without version", async (t) => { + const tree = { + id: "@sapui5/project", + version: "1.2.3", + path: "/sapui5-project/", + metadata: { + name: "sapui5.project" + }, + framework: { + name: "SAPUI5" + } + }; + + const result = await ui5Framework.generateDependencyTree(tree); + t.is(result, null, "Framework projects should be skipped"); +}); + +test.serial("generateDependencyTree should skip framework project with version and framework config", async (t) => { + const tree = { + id: "@sapui5/project", + version: "1.2.3", + path: "/sapui5-project/", + metadata: { + name: "sapui5.project" + }, + framework: { + name: "SAPUI5", + version: "1.2.3", + libraries: [ + { + name: "lib1" + } + ] + } + }; + + const result = await ui5Framework.generateDependencyTree(tree); + t.is(result, null, "Framework projects should be skipped"); +}); + test.serial("generateDependencyTree should ignore root project without framework configuration", async (t) => { const tree = { id: "test-id", @@ -229,6 +269,40 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project without dependencies", t.deepEqual(ui5Dependencies, []); }); +test.serial("utils.getFrameworkLibrariesFromTree: Framework project", (t) => { + const tree = { + id: "@sapui5/project", + metadata: { + name: "project" + }, + framework: { + libraries: [ + { + name: "lib1" + } + ] + }, + dependencies: [ + { + id: "test1", + specVersion: "2.0", + metadata: { + name: "test1" + }, + framework: { + libraries: [ + { + name: "lib2" + } + ] + } + } + ] + }; + const ui5Dependencies = utils.getFrameworkLibrariesFromTree(tree); + t.deepEqual(ui5Dependencies, []); // Framework projects should be skipped +}); + test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dependency with libraries", (t) => { const tree = { id: "test1", From d36c935137ec739a2db7f8bca3cfa824ffb36d43 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 10 Oct 2021 02:21:53 +0000 Subject: [PATCH 0573/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 168 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 85 insertions(+), 85 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index edd6f4bdb10..79632472ca0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,9 +5,9 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", - "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.15.8.tgz", + "integrity": "sha512-2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg==", "requires": { "@babel/highlight": "^7.14.5" } @@ -19,20 +19,20 @@ "dev": true }, "@babel/core": { - "version": "7.15.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.5.tgz", - "integrity": "sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.8.tgz", + "integrity": "sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og==", "dev": true, "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.4", + "@babel/code-frame": "^7.15.8", + "@babel/generator": "^7.15.8", "@babel/helper-compilation-targets": "^7.15.4", - "@babel/helper-module-transforms": "^7.15.4", + "@babel/helper-module-transforms": "^7.15.8", "@babel/helpers": "^7.15.4", - "@babel/parser": "^7.15.5", + "@babel/parser": "^7.15.8", "@babel/template": "^7.15.4", "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4", + "@babel/types": "^7.15.6", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.4.tgz", - "integrity": "sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.8.tgz", + "integrity": "sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g==", "dev": true, "requires": { - "@babel/types": "^7.15.4", + "@babel/types": "^7.15.6", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -157,9 +157,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.7.tgz", - "integrity": "sha512-ZNqjjQG/AuFfekFTY+7nY4RgBSklgTu970c7Rj3m/JOhIu5KPBUuTA9AY6zaKcUvk4g6EbDXdBnhi35FAssdSw==", + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz", + "integrity": "sha512-DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.15.4", @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.7.tgz", - "integrity": "sha512-rycZXvQ+xS9QyIcJ9HXeDWf1uxqlbVFAUq0Rq0dbc50Zb/+wUe/ehyfzGfm9KZZF0kBejYgxltBXocP+gKdL2g==" + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.8.tgz", + "integrity": "sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA==" }, "@babel/template": { "version": "7.15.4", @@ -753,39 +753,39 @@ } }, "@vue/compiler-core": { - "version": "3.2.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.19.tgz", - "integrity": "sha512-8dOPX0YOtaXol0Zf2cfLQ4NU/yHYl2H7DCKsLEZ7gdvPK6ZSEwGLJ7IdghhY2YEshEpC5RB9QKdC5I07z8Dtjg==", + "version": "3.2.20", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.20.tgz", + "integrity": "sha512-vcEXlKXoPwBXFP5aUTHN9GTZaDfwCofa9Yu9bbW2C5O/QSa9Esdt7OG4+0RRd3EHEMxUvEdj4RZrd/KpQeiJbA==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@vue/shared": "3.2.19", + "@vue/shared": "3.2.20", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.19.tgz", - "integrity": "sha512-WzQoE8rfkFjPtIioc7SSgTsnz9g2oG61DU8KHnzPrRS7fW/lji6H2uCYJfp4Z6kZE8GjnHc1Ljwl3/gxDes0cw==", + "version": "3.2.20", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.20.tgz", + "integrity": "sha512-QnI77ec/JtV7R0YBbcVayYTDCRcI9OCbxiUQK6izVyqQO0658n0zQuoNwe+bYgtqnvGAIqTR3FShTd5y4oOjdg==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.19", - "@vue/shared": "3.2.19" + "@vue/compiler-core": "3.2.20", + "@vue/shared": "3.2.20" } }, "@vue/compiler-sfc": { - "version": "3.2.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.19.tgz", - "integrity": "sha512-pLlbgkO1UHTO02MSpa/sFOXUwIDxSMiKZ1ozE5n71CY4DM+YmI+G3gT/ZHZ46WBId7f3VTF/D8pGwMygcQbrQA==", + "version": "3.2.20", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.20.tgz", + "integrity": "sha512-03aZo+6tQKiFLfunHKSPZvdK4Jsn/ftRCyaro8AQIWkuxJbvSosbKK6HTTn+D2c3nPScG155akJoxKENw7rftQ==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@vue/compiler-core": "3.2.19", - "@vue/compiler-dom": "3.2.19", - "@vue/compiler-ssr": "3.2.19", - "@vue/ref-transform": "3.2.19", - "@vue/shared": "3.2.19", + "@vue/compiler-core": "3.2.20", + "@vue/compiler-dom": "3.2.20", + "@vue/compiler-ssr": "3.2.20", + "@vue/ref-transform": "3.2.20", + "@vue/shared": "3.2.20", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -793,32 +793,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.19.tgz", - "integrity": "sha512-oLon0Cn3O7WEYzzmzZavGoqXH+199LT+smdjBT3Uf3UX4HwDNuBFCmvL0TsqV9SQnIgKvBRbQ7lhbpnd4lqM3w==", + "version": "3.2.20", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.20.tgz", + "integrity": "sha512-rzzVVYivm+EjbfiGQvNeyiYZWzr6Hkej97RZLZvcumacQlnKv9176Xo9rRyeWwFbBlxmtNdrVMslRXtipMXk2w==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.19", - "@vue/shared": "3.2.19" + "@vue/compiler-dom": "3.2.20", + "@vue/shared": "3.2.20" } }, "@vue/ref-transform": { - "version": "3.2.19", - "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.19.tgz", - "integrity": "sha512-03wwUnoIAeKti5IGGx6Vk/HEBJ+zUcm5wrUM3+PQsGf7IYnXTbeIfHHpx4HeSeWhnLAjqZjADQwW8uA4rBmVbg==", + "version": "3.2.20", + "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.20.tgz", + "integrity": "sha512-Y42d3PGlYZ1lXcF3dbd3+qU/C/a3wYEZ949fyOI5ptzkjDWlkfU6vn74fmOjsLjEcjs10BXK2qO99FqQIK2r1Q==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@vue/compiler-core": "3.2.19", - "@vue/shared": "3.2.19", + "@vue/compiler-core": "3.2.20", + "@vue/shared": "3.2.20", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.19", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.19.tgz", - "integrity": "sha512-Knqhx7WieLdVgwCAZgTVrDCXZ50uItuecLh9JdLC8O+a5ayaSyIQYveUK3hCRNC7ws5zalHmZwfdLMGaS8r4Ew==", + "version": "3.2.20", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.20.tgz", + "integrity": "sha512-FbpX+hD5BvXCQerEYO7jtAGHlhAkhTQ4KIV73kmLWNlawWhTiVuQxizgVb0BOkX5oG9cIRZ42EG++d/k/Efp0w==", "dev": true }, "JSONStream": { @@ -1326,16 +1326,16 @@ } }, "browserslist": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.2.tgz", - "integrity": "sha512-jSDZyqJmkKMEMi7SZAgX5UltFdR5NAO43vY0AwTpu4X3sGH7GLLQ83KiUomgrnvZRCeW0yPPnKqnxPqQOER9zQ==", + "version": "4.17.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.3.tgz", + "integrity": "sha512-59IqHJV5VGdcJZ+GZ2hU5n4Kv3YiASzW6Xk5g9tf5a/MAzGeFwgGWU39fVzNIOVcgB3+Gp+kiQu0HEfTVU/3VQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001261", - "electron-to-chromium": "^1.3.854", + "caniuse-lite": "^1.0.30001264", + "electron-to-chromium": "^1.3.857", "escalade": "^3.1.1", - "nanocolors": "^0.2.12", - "node-releases": "^1.1.76" + "node-releases": "^1.1.77", + "picocolors": "^0.2.1" } }, "buffer": { @@ -1503,9 +1503,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001263", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001263.tgz", - "integrity": "sha512-doiV5dft6yzWO1WwU19kt8Qz8R0/8DgEziz6/9n2FxUasteZNwNNYSmJO3GLBH8lCVE73AB1RPDPAeYbcO5Cvw==", + "version": "1.0.30001265", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz", + "integrity": "sha512-YzBnspggWV5hep1m9Z6sZVLOt7vrju8xWooFAgN6BA5qvy98qPAPb7vNUzypFaoh2pb3vlfzbDO8tB57UPGbtw==", "dev": true }, "catharsis": { @@ -2582,9 +2582,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.857", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.857.tgz", - "integrity": "sha512-a5kIr2lajm4bJ5E4D3fp8Y/BRB0Dx2VOcCRE5Gtb679mXIME/OFhWler8Gy2ksrf8gFX+EFCSIGA33FB3gqYpg==", + "version": "1.3.864", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.864.tgz", + "integrity": "sha512-v4rbad8GO6/yVI92WOeU9Wgxc4NA0n4f6P1FvZTY+jyY7JHEhw3bduYu60v3Q1h81Cg6eo4ApZrFPuycwd5hGw==", "dev": true }, "emittery": { @@ -3778,9 +3778,9 @@ "dev": true }, "import-local": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", - "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.3.tgz", + "integrity": "sha512-bE9iaUY3CXH8Cwfan/abDKAxe1KGT9kyGsBPqf6DMK/z0a2OzAsrukeYNgIH6cH5Xr452jb1TUL8rSfCLjZ9uA==", "dev": true, "requires": { "pkg-dir": "^4.2.0", @@ -4132,9 +4132,9 @@ } }, "istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.3.tgz", + "integrity": "sha512-0i77ZFLsb9U3DHi22WzmIngVzfoyxxbQcZRqlF3KoKmCJGq9nhFHoGi8FqBztN2rE8w6hURnZghetn0xpkVb6A==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -4891,16 +4891,10 @@ "minimatch": "^3.0.4" } }, - "nanocolors": { - "version": "0.2.12", - "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.12.tgz", - "integrity": "sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug==", - "dev": true - }, "nanoid": { - "version": "3.1.28", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.28.tgz", - "integrity": "sha512-gSu9VZ2HtmoKYe/lmyPFES5nknFrHa+/DT9muUFWFMi6Jh9E1I7bkvlQ8xxf1Kos9pi9o8lBnIOkatMhKX/YUw==", + "version": "3.1.29", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.29.tgz", + "integrity": "sha512-dW2pUSGZ8ZnCFIlBIA31SV8huOGCHb6OwzVCc7A69rb/a+SgPBwfmLvK5TKQ3INPbRkcI8a/Owo0XbiTNH19wg==", "dev": true }, "natural-compare": { @@ -5690,6 +5684,12 @@ "integrity": "sha512-7qmhptnR0WMSpxT5rMHG9bW/mYSR1uqaPFj2MHvT+y/aOUu6msJijpKt5SkTDKySwg65OWG2JwTMBlgcbwMHrQ==", "dev": true }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, "picomatch": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", @@ -5794,13 +5794,13 @@ } }, "postcss": { - "version": "8.3.8", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.8.tgz", - "integrity": "sha512-GT5bTjjZnwDifajzczOC+r3FI3Cu+PgPvrsjhQdRqa2kTJ4968/X9CUce9xttIB0xOs5c6xf0TCWZo/y9lF6bA==", + "version": "8.3.9", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.9.tgz", + "integrity": "sha512-f/ZFyAKh9Dnqytx5X62jgjhhzttjZS7hMsohcI7HEI5tjELX/HxCy3EFhsRxyzGvrzFF+82XPvCS8T9TFleVJw==", "dev": true, "requires": { - "nanocolors": "^0.2.2", - "nanoid": "^3.1.25", + "nanoid": "^3.1.28", + "picocolors": "^0.2.1", "source-map-js": "^0.6.2" } }, diff --git a/packages/project/package.json b/packages/project/package.json index ba22c976b5d..a7f3ec19689 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -133,7 +133,7 @@ "istanbul-lib-coverage": "^3.0.1", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.0.2", + "istanbul-reports": "^3.0.3", "js-beautify": "^1.14.0", "jsdoc": "^3.6.7", "mock-require": "^3.0.3", From c2ca88cabdc9494d6c3feb4970e1c4fa779989ed Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 17 Oct 2021 02:22:28 +0000 Subject: [PATCH 0574/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 90 ++++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 51 insertions(+), 43 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 79632472ca0..83f2aa4186f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1326,16 +1326,24 @@ } }, "browserslist": { - "version": "4.17.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.3.tgz", - "integrity": "sha512-59IqHJV5VGdcJZ+GZ2hU5n4Kv3YiASzW6Xk5g9tf5a/MAzGeFwgGWU39fVzNIOVcgB3+Gp+kiQu0HEfTVU/3VQ==", + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.4.tgz", + "integrity": "sha512-Zg7RpbZpIJRW3am9Lyckue7PLytvVxxhJj1CaJVlCWENsGEAOlnlt8X0ZxGRPp7Bt9o8tIRM5SEXy4BCPMJjLQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001264", - "electron-to-chromium": "^1.3.857", + "caniuse-lite": "^1.0.30001265", + "electron-to-chromium": "^1.3.867", "escalade": "^3.1.1", - "node-releases": "^1.1.77", - "picocolors": "^0.2.1" + "node-releases": "^2.0.0", + "picocolors": "^1.0.0" + }, + "dependencies": { + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + } } }, "buffer": { @@ -1503,9 +1511,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001265", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz", - "integrity": "sha512-YzBnspggWV5hep1m9Z6sZVLOt7vrju8xWooFAgN6BA5qvy98qPAPb7vNUzypFaoh2pb3vlfzbDO8tB57UPGbtw==", + "version": "1.0.30001267", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001267.tgz", + "integrity": "sha512-r1mjTzAuJ9W8cPBGbbus8E0SKcUP7gn03R14Wk8FlAlqhH9hroy9nLqmpuXlfKEw/oILW+FGz47ipXV2O7x8lg==", "dev": true }, "catharsis": { @@ -2173,9 +2181,9 @@ } }, "css-what": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz", - "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==" + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", + "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==" }, "currently-unhandled": { "version": "0.4.1", @@ -2582,9 +2590,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.864", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.864.tgz", - "integrity": "sha512-v4rbad8GO6/yVI92WOeU9Wgxc4NA0n4f6P1FvZTY+jyY7JHEhw3bduYu60v3Q1h81Cg6eo4ApZrFPuycwd5hGw==", + "version": "1.3.871", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.871.tgz", + "integrity": "sha512-qcLvDUPf8DSIMWarHT2ptgcqrYg62n3vPA7vhrOF24d8UNzbUBaHu2CySiENR3nEDzYgaN60071t0F6KLYMQ7Q==", "dev": true }, "emittery": { @@ -3871,9 +3879,9 @@ } }, "is-core-module": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.7.0.tgz", - "integrity": "sha512-ByY+tjCciCr+9nLryBYcSD50EOGWt95c7tIsKTG1J2ixKKXPvF7Ej3AVd+UfDydAJom3biBGDBALaO79ktwgEQ==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", + "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", "requires": { "has": "^1.0.3" } @@ -4032,9 +4040,9 @@ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "istanbul-lib-coverage": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.1.tgz", - "integrity": "sha512-GvCYYTxaCPqwMjobtVcVKvSHtAGe48MNhGjpK8LtVF8K0ISX7hCKl85LgtuaSneWVyQmaGcW3iXVV3GaZSLpmQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.2.tgz", + "integrity": "sha512-o5+eTUYzCJ11/+JhW5/FUCdfsdoYVdQ/8I/OveE2XsjehYn5DdeSnNQAbjYaO8gQ6hvGTN6GM6ddQqpTVG5j8g==", "dev": true }, "istanbul-lib-hook": { @@ -4104,9 +4112,9 @@ } }, "istanbul-lib-source-maps": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", - "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, "requires": { "debug": "^4.1.1", @@ -4132,9 +4140,9 @@ } }, "istanbul-reports": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.3.tgz", - "integrity": "sha512-0i77ZFLsb9U3DHi22WzmIngVzfoyxxbQcZRqlF3KoKmCJGq9nhFHoGi8FqBztN2rE8w6hURnZghetn0xpkVb6A==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.5.tgz", + "integrity": "sha512-5+19PlhnGabNWB7kOFnuxT8H3T/iIyQzIbQMxXsURmmvKg86P2sbkrGOT77VnHw0Qr0gc2XzRaRfMZYYbSQCJQ==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -4892,9 +4900,9 @@ } }, "nanoid": { - "version": "3.1.29", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.29.tgz", - "integrity": "sha512-dW2pUSGZ8ZnCFIlBIA31SV8huOGCHb6OwzVCc7A69rb/a+SgPBwfmLvK5TKQ3INPbRkcI8a/Owo0XbiTNH19wg==", + "version": "3.1.30", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz", + "integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==", "dev": true }, "natural-compare": { @@ -4963,9 +4971,9 @@ } }, "node-releases": { - "version": "1.1.77", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", - "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.0.tgz", + "integrity": "sha512-aA87l0flFYMzCHpTM3DERFSYxc6lv/BltdbRTOMZuxZ0cwZCD3mejE5n9vLhSJCN++/eOqr77G1IO5uXxlQYWA==", "dev": true }, "nopt": { @@ -6318,9 +6326,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.42.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.42.1.tgz", - "integrity": "sha512-/zvGoN8B7dspKc5mC6HlaygyCBRvnyzzgD5khiaCfglWztY99cYoiTUksVx11NlnemrcfH5CEaCpsUKoW0cQqg==", + "version": "1.43.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.43.2.tgz", + "integrity": "sha512-DncYhjl3wBaPMMJR0kIUaH3sF536rVrOcqqVGmTZHQRRzj7LQlyGV7Mb8aCKFyILMr5VsPHwRYtyKpnKYlmQSQ==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -7452,11 +7460,11 @@ "dev": true }, "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "requires": { - "string-width": "^1.0.2 || 2" + "string-width": "^1.0.2 || 2 || 3 || 4" } }, "widest-line": { diff --git a/packages/project/package.json b/packages/project/package.json index a7f3ec19689..1f110f4e523 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -130,10 +130,10 @@ "eslint": "^7.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^35.5.1", - "istanbul-lib-coverage": "^3.0.1", + "istanbul-lib-coverage": "^3.0.2", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.0.3", + "istanbul-reports": "^3.0.5", "js-beautify": "^1.14.0", "jsdoc": "^3.6.7", "mock-require": "^3.0.3", From 56b5ed5ae3f620ea7e7ffa288f3c00595148af9e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 19 Oct 2021 07:58:56 +0000 Subject: [PATCH 0575/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.10.0 to 2.11.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.11.0/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 83f2aa4186f..4a08d9602b0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -674,9 +674,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.10.0.tgz", - "integrity": "sha512-VEKoLAs+wWkhpUZe+jWEeg7sGBS0tmuTSGHn/jY6YZgG5RsljcPH2Dlf+6a5IPZSjkEGttiyT9qnEOsnhazIhw==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.11.0.tgz", + "integrity": "sha512-38tUz3M5QJDkrnjzCpa9SsMBC5ff4M/PvGlZg2H7q6s/le6k3wW5f3gHFtA9ZDtbt3T6+GA+GPbK0To0Jgt6PQ==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 1f110f4e523..9be9f9e02d3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.10.0", + "@ui5/builder": "^2.11.0", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.3.1", "ajv": "^6.12.6", From 86fdafd9249365606cab1fd9c2a5d3f956a68ff0 Mon Sep 17 00:00:00 2001 From: Lars Kissel Date: Wed, 13 Oct 2021 17:29:44 +0200 Subject: [PATCH 0576/1272] [ui5-project][FEATURE] specVersion 2.6 Adds support for build configuration: minification excludes JIRA: CPOUI5FOUNDATION-405 --- packages/project/lib/projectPreprocessor.js | 5 +- .../project/lib/translators/ui5Framework.js | 6 +- .../validation/schema/specVersion/2.0.json | 2 +- .../specVersion/2.0/kind/extension.json | 2 +- .../2.0/kind/extension/project-shim.json | 4 +- .../2.0/kind/extension/server-middleware.json | 4 +- .../specVersion/2.0/kind/extension/task.json | 4 +- .../schema/specVersion/2.0/kind/project.json | 14 +- .../2.0/kind/project/application.json | 141 +++++++++++++----- .../specVersion/2.0/kind/project/library.json | 138 ++++++++++++----- .../specVersion/2.0/kind/project/module.json | 4 +- .../2.0/kind/project/theme-library.json | 4 +- .../project/lib/validation/schema/ui5.json | 6 +- packages/project/test/lib/extensions.js | 20 +++ .../project/test/lib/projectPreprocessor.js | 16 ++ .../schema/__helper__/customConfiguration.js | 2 +- .../validation/schema/__helper__/extension.js | 2 +- .../validation/schema/__helper__/framework.js | 2 +- .../validation/schema/__helper__/project.js | 2 +- .../schema/specVersion/2.0/kind/extension.js | 2 +- .../2.0/kind/extension/project-shim.js | 2 +- .../2.0/kind/project/application.js | 107 ++++++++++++- .../specVersion/2.0/kind/project/library.js | 107 ++++++++++++- .../specVersion/2.0/kind/project/module.js | 4 +- .../2.0/kind/project/theme-library.js | 4 +- .../project/test/lib/validation/schema/ui5.js | 3 +- 26 files changed, 496 insertions(+), 111 deletions(-) diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js index 963d353b402..c4f080f61a9 100644 --- a/packages/project/lib/projectPreprocessor.js +++ b/packages/project/lib/projectPreprocessor.js @@ -284,7 +284,7 @@ class ProjectPreprocessor { project.specVersion !== "1.1" && project.specVersion !== "2.0" && project.specVersion !== "2.1" && project.specVersion !== "2.2" && project.specVersion !== "2.3" && project.specVersion !== "2.4" && - project.specVersion !== "2.5") { + project.specVersion !== "2.5" && project.specVersion !== "2.6") { throw new Error( `Unsupported specification version ${project.specVersion} defined for project ` + `${project.id}. Your UI5 CLI installation might be outdated. ` + @@ -364,7 +364,8 @@ class ProjectPreprocessor { extension.specVersion !== "2.2" && extension.specVersion !== "2.3" && extension.specVersion !== "2.4" && - extension.specVersion !== "2.5") { + extension.specVersion !== "2.5" && + extension.specVersion !== "2.6") { throw new Error( `Unsupported specification version ${extension.specVersion} defined for extension ` + `${extension.metadata.name}. Your UI5 CLI installation might be outdated. ` + diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js index 5287764ecbd..de086bb1006 100644 --- a/packages/project/lib/translators/ui5Framework.js +++ b/packages/project/lib/translators/ui5Framework.js @@ -86,7 +86,8 @@ const utils = { if ( project.specVersion !== "2.0" && project.specVersion !== "2.1" && project.specVersion !== "2.2" && project.specVersion !== "2.3" && - project.specVersion !== "2.4" && project.specVersion !== "2.5" + project.specVersion !== "2.4" && project.specVersion !== "2.5" && + project.specVersion !== "2.6" ) { log.warn(`Project ${project.metadata.name} defines invalid ` + `specification version ${project.specVersion} for framework.libraries configuration`); @@ -261,7 +262,8 @@ module.exports = { ( project.specVersion === "2.0" || project.specVersion === "2.1" || project.specVersion === "2.2" || project.specVersion === "2.3" || - project.specVersion === "2.4" || project.specVersion === "2.5" + project.specVersion === "2.4" || project.specVersion === "2.5" || + project.specVersion === "2.6" ) && project.framework && project.framework.libraries) { const frameworkDeps = project.framework.libraries .filter((dependency) => { diff --git a/packages/project/lib/validation/schema/specVersion/2.0.json b/packages/project/lib/validation/schema/specVersion/2.0.json index 9f2c563b1a9..c9b9b127f7e 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0.json +++ b/packages/project/lib/validation/schema/specVersion/2.0.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion"], "properties": { - "specVersion": { "enum": ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json index 8b2f679a78a..a6f47474aad 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "kind", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json index fedd06fb48e..8aa4c6b18d3 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json @@ -6,14 +6,14 @@ "required": ["specVersion", "kind", "type", "metadata", "shims"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] } } }, "then": { "additionalProperties": false, "properties": { "specVersion": { - "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] + "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] }, "kind": { "enum": ["extension"] diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json index 4482680de78..5385bdd9fda 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json @@ -7,13 +7,13 @@ "required": ["specVersion", "kind", "type", "metadata", "middleware"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json index a0cd872b0d4..f75d2723d38 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json @@ -6,13 +6,13 @@ "required": ["specVersion", "kind", "type", "metadata", "task"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json index 8d3b8fb9820..5936a8e8302 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "type"], "properties": { - "specVersion": { "enum": ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" @@ -529,6 +529,18 @@ } } } + }, + "builder-minification": { + "type": "object", + "additionalProperties": false, + "properties": { + "excludes": { + "type": "array", + "items": { + "type": "string" + } + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json index 15af57a5819..83883649173 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.5"] } + "specVersion": { "enum": ["2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5"] }, + "specVersion": { "enum": ["2.6"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.5" + "$ref": "#/definitions/builder-specVersion-2.6" }, "server": { "$ref": "../project.json#/definitions/server" @@ -43,13 +43,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -66,7 +66,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.4" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -80,13 +80,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -103,7 +103,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -117,13 +117,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -140,7 +140,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -152,29 +152,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["application"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -319,6 +357,39 @@ "$ref": "../project.json#/definitions/builder-settings" } } + }, + "builder-specVersion-2.6": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "cachebuster": { + "type": "object", + "additionalProperties": false, + "properties": { + "signatureType": { + "enum": ["time", "hash"] + } + } + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-2.4" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "minification": { + "$ref": "../project.json#/definitions/builder-minification" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json index 6c624e64fa4..c38e0a3ab4d 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.5"] } + "specVersion": { "enum": ["2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5"] }, + "specVersion": { "enum": ["2.6"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.5" + "$ref": "#/definitions/builder-specVersion-2.6" }, "server": { "$ref": "../project.json#/definitions/server" @@ -43,13 +43,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -66,7 +66,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.4" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -80,13 +80,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -103,7 +103,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -117,13 +117,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -140,7 +140,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -152,29 +152,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -316,6 +354,36 @@ "$ref": "../project.json#/definitions/builder-settings" } } + }, + "builder-specVersion-2.6": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "jsdoc": { + "$ref": "#/definitions/builder-jsdoc" + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-2.4" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "libraryPreload": { + "$ref": "../project.json#/definitions/builder-libraryPreload" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "minification": { + "$ref": "../project.json#/definitions/builder-minification" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json index 44b9063bce9..e1b55526f84 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.5"] } + "specVersion": { "enum": ["2.5", "2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5"] }, + "specVersion": { "enum": ["2.5", "2.6"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json index 41a61f2fa3c..ed5f32f8972 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.5"] } + "specVersion": { "enum": ["2.5", "2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5"] }, + "specVersion": { "enum": ["2.5", "2.6"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index fa249710eee..68ca4530890 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -10,16 +10,16 @@ "properties": { "specVersion": { "enum": [ - "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", + "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, "if": { "properties": { - "specVersion": { "enum": ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } + "specVersion": { "enum": ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } } }, "then": { diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js index c4b76689aec..9b309d06d80 100644 --- a/packages/project/test/lib/extensions.js +++ b/packages/project/test/lib/extensions.js @@ -931,3 +931,23 @@ test("specVersion: Extension with valid version 2.5", async (t) => { await preprocessor.applyExtension(extension); t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.5", "Correct spec version"); }); + +test("specVersion: Extension with valid version 2.6", async (t) => { + const extension = { + id: "extension.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.6", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: {} + }; + const preprocessor = new Preprocessor({}); + const handleShimStub = sinon.stub(preprocessor, "handleShim"); + await preprocessor.applyExtension(extension); + t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.6", "Correct spec version"); +}); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js index 9876838eaa4..4b821ad2b23 100644 --- a/packages/project/test/lib/projectPreprocessor.js +++ b/packages/project/test/lib/projectPreprocessor.js @@ -1782,6 +1782,22 @@ test("specVersion: Project with valid version 2.5", async (t) => { t.deepEqual(res.specVersion, "2.5", "Correct spec version"); }); +test("specVersion: Project with valid version 2.6", async (t) => { + const tree = { + id: "application.a", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + specVersion: "2.6", + type: "application", + metadata: { + name: "xy" + } + }; + const res = await projectPreprocessor.processTree(tree); + t.deepEqual(res.specVersion, "2.6", "Correct spec version"); +}); + test("isBeingProcessed: Is not being processed", (t) => { const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); diff --git a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js index 184e984bd0d..df5507e8443 100644 --- a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js +++ b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js @@ -35,7 +35,7 @@ module.exports = { ]); }); - ["2.5", "2.4", "2.3", "2.2", "2.1"].forEach((specVersion) => { + ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1"].forEach((specVersion) => { test(`${type}: Valid customConfiguration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, Object.assign( { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js index cfe07820e41..49b5279666f 100644 --- a/packages/project/test/lib/validation/schema/__helper__/extension.js +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -18,7 +18,7 @@ module.exports = { customConfiguration.defineTests(test, assertValidation, type, additionalConfiguration); - ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: ${type} basic (${specVersion})`, async (t) => { await assertValidation(t, Object.assign({ "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/framework.js b/packages/project/test/lib/validation/schema/__helper__/framework.js index 70bc9919c25..47d20efc5d1 100644 --- a/packages/project/test/lib/validation/schema/__helper__/framework.js +++ b/packages/project/test/lib/validation/schema/__helper__/framework.js @@ -10,7 +10,7 @@ module.exports = { * @param {string} type one of "application", "library" and "theme-library" */ defineTests: function(test, assertValidation, type) { - ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`${type} (specVersion ${specVersion}): framework configuration: OpenUI5`, async (t) => { const config = { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index eafad2afe25..2b368408036 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -23,7 +23,7 @@ module.exports = { customConfiguration.defineTests(test, assertValidation, type); // version specific tests - ["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { // tests for all kinds and version 2.0 and above test(`${type} (specVersion ${specVersion}): No metadata`, async (t) => { await assertValidation(t, { diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js index 41eaa279f9c..cb24debe8ef 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js @@ -36,7 +36,7 @@ test.after.always((t) => { }; t.context.ajvCoverage.verify(thresholds); }); -["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Type project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js index 133144e5fc1..9a1db288b21 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js @@ -38,7 +38,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index e3a58782912..06d8373afa6 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -43,7 +43,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -433,7 +433,7 @@ test.after.always((t) => { keyword: "enum", message: "should be equal to one of the allowed values", params: { - allowedValues: ["2.5", "2.4"].includes(specVersion) ? [ + allowedValues: ["2.6", "2.5", "2.4"].includes(specVersion) ? [ "raw", "preload", "require", @@ -537,7 +537,7 @@ test.after.always((t) => { }); }); -["2.5", "2.4", "2.3"].forEach(function(specVersion) { +["2.6", "2.5", "2.4", "2.3"].forEach(function(specVersion) { test(`application (specVersion ${specVersion}): builder/componentPreload/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -634,7 +634,7 @@ test.after.always((t) => { }); }); -["2.5", "2.4"].forEach(function(specVersion) { +["2.6", "2.5", "2.4"].forEach(function(specVersion) { // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above test(`application (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, async (t) => { @@ -662,7 +662,7 @@ test.after.always((t) => { }); }); -["2.5"].forEach(function(specVersion) { +["2.6", "2.5"].forEach(function(specVersion) { test(`application (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -843,4 +843,101 @@ test.after.always((t) => { }); }); +["2.6"].forEach(function(specVersion) { + test(`application (specVersion ${specVersion}): builder/minification/excludes`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "minification": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }); + }); + test(`Invalid builder/minification/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "minification": { + "excludes": "some/excluded/files/**" + } + } + }, [ + { + dataPath: "/builder/minification/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "minification": { + "excludes": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/minification", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/minification/excludes/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/minification/excludes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/minification/excludes/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); + project.defineTests(test, assertValidation, "application"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index ce4e8facb09..aa75ced89dd 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -43,7 +43,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): Valid configuration`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -399,7 +399,7 @@ test.after.always((t) => { keyword: "enum", message: "should be equal to one of the allowed values", params: { - allowedValues: ["2.5", "2.4"].includes(specVersion) ? [ + allowedValues: ["2.6", "2.5", "2.4"].includes(specVersion) ? [ "raw", "preload", "require", @@ -614,7 +614,7 @@ test.after.always((t) => { }); }); -["2.5", "2.4", "2.3"].forEach(function(specVersion) { +["2.6", "2.5", "2.4", "2.3"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): builder/libraryPreload/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -807,7 +807,7 @@ test.after.always((t) => { }); }); -["2.5", "2.4"].forEach(function(specVersion) { +["2.6", "2.5", "2.4"].forEach(function(specVersion) { // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above test(`library (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, async (t) => { @@ -835,7 +835,7 @@ test.after.always((t) => { }); }); -["2.5"].forEach(function(specVersion) { +["2.6", "2.5"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -1016,4 +1016,101 @@ test.after.always((t) => { }); }); +["2.6"].forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): builder/minification/excludes`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "minification": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }); + }); + test(`Invalid builder/minification/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "minification": { + "excludes": "some/excluded/files/**" + } + } + }, [ + { + dataPath: "/builder/minification/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "minification": { + "excludes": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/minification", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/minification/excludes/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/minification/excludes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/minification/excludes/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); + project.defineTests(test, assertValidation, "library"); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js index 3deb5f31351..0bd35330297 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js @@ -38,7 +38,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -137,7 +137,7 @@ test.after.always((t) => { }); }); -["2.5"].forEach(function(specVersion) { +["2.6", "2.5"].forEach(function(specVersion) { test(`Server configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js index c6d5cfd19da..f194b551452 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -44,7 +44,7 @@ test.after.always((t) => { }); -["2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -165,7 +165,7 @@ test.after.always((t) => { }); }); -["2.5"].forEach(function(specVersion) { +["2.6", "2.5"].forEach(function(specVersion) { test(`theme-library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 483a38badf9..1a0c7e30a58 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -100,7 +100,7 @@ test("Invalid specVersion", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. -Supported specification versions: "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" +Supported specification versions: "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, params: { errors: [ @@ -110,6 +110,7 @@ For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specific message: "should be equal to one of the allowed values", params: { allowedValues: [ + "2.6", "2.5", "2.4", "2.3", From 1f194e74d5b1ecdf4d01b985230a5d5853184a82 Mon Sep 17 00:00:00 2001 From: Lars Kissel Date: Tue, 19 Oct 2021 12:39:09 +0000 Subject: [PATCH 0577/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.11.0 to 2.11.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.11.1/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4a08d9602b0..060fe132791 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -674,9 +674,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.11.0.tgz", - "integrity": "sha512-38tUz3M5QJDkrnjzCpa9SsMBC5ff4M/PvGlZg2H7q6s/le6k3wW5f3gHFtA9ZDtbt3T6+GA+GPbK0To0Jgt6PQ==", + "version": "2.11.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.11.1.tgz", + "integrity": "sha512-6WAJwuilKVxYFg9qYGUQ4O36qC0VmjEjArJzwftnORbUuEqN4F1ygLYiTqNnImvuCILDzoq4OBj2ecxYOItFiQ==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 9be9f9e02d3..1051cdc3cd9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.11.0", + "@ui5/builder": "^2.11.1", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.3.1", "ajv": "^6.12.6", From d4e36774bbce40b6be06d3150f705388b08d8349 Mon Sep 17 00:00:00 2001 From: Lars Kissel Date: Tue, 19 Oct 2021 12:46:32 +0000 Subject: [PATCH 0578/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.3.1 to 2.4.0 Changelog of this version: https://github.com/SAP/ui5-server/blob/v2.4.0/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 060fe132791..5de43715512 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -724,11 +724,11 @@ } }, "@ui5/server": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.3.1.tgz", - "integrity": "sha512-TsqAngYwZLanG2I3H3Fd9NFsdaa+NfWwM/v5PgQopTdYno7h839hfcxccrpDYS/1BHDkv0PhxoDD4mZQJnexIw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.4.0.tgz", + "integrity": "sha512-qw5BQ4Jnyk/r2SutucRDGKCgBy6bRl/6nb/ZKEpmSiGwlBMrk8zCH9nCEv4GW8Uz6nnyGqUAYTjuU9srIE08DQ==", "requires": { - "@ui5/builder": "^2.9.4", + "@ui5/builder": "^2.11.1", "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", "body-parser": "^1.19.0", @@ -740,9 +740,9 @@ "etag": "^1.8.1", "express": "^4.17.1", "fresh": "^0.5.2", - "graceful-fs": "^4.2.6", + "graceful-fs": "^4.2.8", "make-dir": "^3.1.0", - "mime-types": "^2.1.31", + "mime-types": "^2.1.33", "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index 1051cdc3cd9..3286f3bff4f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^2.11.1", "@ui5/logger": "^2.0.1", - "@ui5/server": "^2.3.1", + "@ui5/server": "^2.4.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", From ea23e7d7252a570c99991976d08bfacdb5ed9462 Mon Sep 17 00:00:00 2001 From: Lars Kissel Date: Tue, 19 Oct 2021 12:50:05 +0000 Subject: [PATCH 0579/1272] [ui5-project]Release 2.6.0 --- packages/project/CHANGELOG.md | 12 +++++++++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 8bfe13ce363..0605c4e727f 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.5.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.6.0...HEAD). + + +## [v2.6.0] - 2021-10-19 +### Bug Fixes +- **ui5Framework:** Skip processing of framework libs ([#424](https://github.com/SAP/ui5-project/issues/424)) [`539d953`](https://github.com/SAP/ui5-project/commit/539d9539a5d2aaa6d01c4f539e3c86d8269788f2) + +### Features +- specVersion 2.6 [`9bd921a`](https://github.com/SAP/ui5-project/commit/9bd921a05bd5c0d8b6c6d94a864e60e4e181ad63) + ## [v2.5.0] - 2021-07-23 @@ -256,6 +265,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v2.6.0]: https://github.com/SAP/ui5-project/compare/v2.5.0...v2.6.0 [v2.5.0]: https://github.com/SAP/ui5-project/compare/v2.4.0...v2.5.0 [v2.4.0]: https://github.com/SAP/ui5-project/compare/v2.3.1...v2.4.0 [v2.3.1]: https://github.com/SAP/ui5-project/compare/v2.3.0...v2.3.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5de43715512..02b5c4a28cd 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.5.0", + "version": "2.6.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index 3286f3bff4f..6feea214a54 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.5.0", + "version": "2.6.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 69f4a258216169a80a100f88bce4acc730da2636 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 31 Oct 2021 03:20:38 +0000 Subject: [PATCH 0580/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 352 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 173 insertions(+), 181 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 02b5c4a28cd..d71696c5bbc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,34 +5,34 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.15.8.tgz", - "integrity": "sha512-2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.0.tgz", + "integrity": "sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==", "requires": { - "@babel/highlight": "^7.14.5" + "@babel/highlight": "^7.16.0" } }, "@babel/compat-data": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz", - "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.0.tgz", + "integrity": "sha512-DGjt2QZse5SGd9nfOSqO4WLJ8NN/oHkijbXbPrxuoJO3oIPJL3TciZs9FX+cOHNiY9E9l0opL8g7BmLe3T+9ew==", "dev": true }, "@babel/core": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.8.tgz", - "integrity": "sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.15.8", - "@babel/generator": "^7.15.8", - "@babel/helper-compilation-targets": "^7.15.4", - "@babel/helper-module-transforms": "^7.15.8", - "@babel/helpers": "^7.15.4", - "@babel/parser": "^7.15.8", - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.6", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.0.tgz", + "integrity": "sha512-mYZEvshBRHGsIAiyH5PzCFTCfbWfoYbO/jcSdXQSUQu1/pW0xDZAUP7KEc32heqWTAfAHhV9j1vH8Sav7l+JNQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/generator": "^7.16.0", + "@babel/helper-compilation-targets": "^7.16.0", + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helpers": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.8.tgz", - "integrity": "sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.0.tgz", + "integrity": "sha512-RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew==", "dev": true, "requires": { - "@babel/types": "^7.15.6", + "@babel/types": "^7.16.0", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -90,12 +90,12 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz", - "integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.0.tgz", + "integrity": "sha512-S7iaOT1SYlqK0sQaCi21RX4+13hmdmnxIEAnQUB/eh7GeAnRjOUgTYpLkUOiRXzD+yog1JxP0qyAQZ7ZxVxLVg==", "dev": true, "requires": { - "@babel/compat-data": "^7.15.0", + "@babel/compat-data": "^7.16.0", "@babel/helper-validator-option": "^7.14.5", "browserslist": "^4.16.6", "semver": "^6.3.0" @@ -110,105 +110,105 @@ } }, "@babel/helper-function-name": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz", - "integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz", + "integrity": "sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.15.4", - "@babel/template": "^7.15.4", - "@babel/types": "^7.15.4" + "@babel/helper-get-function-arity": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/types": "^7.16.0" } }, "@babel/helper-get-function-arity": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz", - "integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz", + "integrity": "sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ==", "dev": true, "requires": { - "@babel/types": "^7.15.4" + "@babel/types": "^7.16.0" } }, "@babel/helper-hoist-variables": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz", - "integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz", + "integrity": "sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg==", "dev": true, "requires": { - "@babel/types": "^7.15.4" + "@babel/types": "^7.16.0" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz", - "integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.0.tgz", + "integrity": "sha512-bsjlBFPuWT6IWhl28EdrQ+gTvSvj5tqVP5Xeftp07SEuz5pLnsXZuDkDD3Rfcxy0IsHmbZ+7B2/9SHzxO0T+sQ==", "dev": true, "requires": { - "@babel/types": "^7.15.4" + "@babel/types": "^7.16.0" } }, "@babel/helper-module-imports": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz", - "integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz", + "integrity": "sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg==", "dev": true, "requires": { - "@babel/types": "^7.15.4" + "@babel/types": "^7.16.0" } }, "@babel/helper-module-transforms": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz", - "integrity": "sha512-DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.0.tgz", + "integrity": "sha512-My4cr9ATcaBbmaEa8M0dZNA74cfI6gitvUAskgDtAFmAqyFKDSHQo5YstxPbN+lzHl2D9l/YOEFqb2mtUh4gfA==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.15.4", - "@babel/helper-replace-supers": "^7.15.4", - "@babel/helper-simple-access": "^7.15.4", - "@babel/helper-split-export-declaration": "^7.15.4", + "@babel/helper-module-imports": "^7.16.0", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-simple-access": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", "@babel/helper-validator-identifier": "^7.15.7", - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.6" + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" } }, "@babel/helper-optimise-call-expression": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz", - "integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.0.tgz", + "integrity": "sha512-SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw==", "dev": true, "requires": { - "@babel/types": "^7.15.4" + "@babel/types": "^7.16.0" } }, "@babel/helper-replace-supers": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz", - "integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.0.tgz", + "integrity": "sha512-TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.15.4", - "@babel/helper-optimise-call-expression": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" + "@babel/helper-member-expression-to-functions": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" } }, "@babel/helper-simple-access": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz", - "integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.0.tgz", + "integrity": "sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw==", "dev": true, "requires": { - "@babel/types": "^7.15.4" + "@babel/types": "^7.16.0" } }, "@babel/helper-split-export-declaration": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz", - "integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz", + "integrity": "sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw==", "dev": true, "requires": { - "@babel/types": "^7.15.4" + "@babel/types": "^7.16.0" } }, "@babel/helper-validator-identifier": { @@ -223,22 +223,22 @@ "dev": true }, "@babel/helpers": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz", - "integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.0.tgz", + "integrity": "sha512-dVRM0StFMdKlkt7cVcGgwD8UMaBfWJHl3A83Yfs8GQ3MO0LHIIIMvK7Fa0RGOGUQ10qikLaX6D7o5htcQWgTMQ==", "dev": true, "requires": { - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" } }, "@babel/highlight": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.0.tgz", + "integrity": "sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==", "requires": { - "@babel/helper-validator-identifier": "^7.14.5", + "@babel/helper-validator-identifier": "^7.15.7", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -295,34 +295,34 @@ } }, "@babel/parser": { - "version": "7.15.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.8.tgz", - "integrity": "sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA==" + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.0.tgz", + "integrity": "sha512-TEHWXf0xxpi9wKVyBCmRcSSDjbJ/cl6LUdlbYUHEaNQUJGhreJbZrXT6sR4+fZLxVUJqNRB4KyOvjuy/D9009A==" }, "@babel/template": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz", - "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", + "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", "dev": true, "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/parser": "^7.15.4", - "@babel/types": "^7.15.4" + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" } }, "@babel/traverse": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz", - "integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.4", - "@babel/helper-function-name": "^7.15.4", - "@babel/helper-hoist-variables": "^7.15.4", - "@babel/helper-split-export-declaration": "^7.15.4", - "@babel/parser": "^7.15.4", - "@babel/types": "^7.15.4", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.0.tgz", + "integrity": "sha512-qQ84jIs1aRQxaGaxSysII9TuDaguZ5yVrEuC0BN2vcPlalwfLovVmCjbFDPECPXcYM/wLvNFfp8uDOliLxIoUQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/generator": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-hoist-variables": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -345,12 +345,12 @@ } }, "@babel/types": { - "version": "7.15.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz", - "integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.0.tgz", + "integrity": "sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.14.9", + "@babel/helper-validator-identifier": "^7.15.7", "to-fast-properties": "^2.0.0" } }, @@ -428,9 +428,9 @@ } }, "globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", + "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -1053,9 +1053,9 @@ "dev": true }, "async": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.1.tgz", - "integrity": "sha512-XdD5lRO/87udXCMC9meWdYiR+Nq6ZjUfXidViUZGu2F1MO4T3XwZ1et0hb2++BgLfhyJwy44BGB/yx80ABx8hg==" + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.2.tgz", + "integrity": "sha512-H0E+qZaDEfx/FY4t7iLRv1W2fFI6+pyCeTw1uN20AQPiwqwM6ojPxHxdLv4z8hi2DtnW9BOckSspLucW7pIE5g==" }, "atob": { "version": "2.1.2", @@ -1326,24 +1326,16 @@ } }, "browserslist": { - "version": "4.17.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.4.tgz", - "integrity": "sha512-Zg7RpbZpIJRW3am9Lyckue7PLytvVxxhJj1CaJVlCWENsGEAOlnlt8X0ZxGRPp7Bt9o8tIRM5SEXy4BCPMJjLQ==", + "version": "4.17.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.5.tgz", + "integrity": "sha512-I3ekeB92mmpctWBoLXe0d5wPS2cBuRvvW0JyyJHMrk9/HmP2ZjrTboNAZ8iuGqaEIlKguljbQY32OkOJIRrgoA==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001265", - "electron-to-chromium": "^1.3.867", + "caniuse-lite": "^1.0.30001271", + "electron-to-chromium": "^1.3.878", "escalade": "^3.1.1", - "node-releases": "^2.0.0", + "node-releases": "^2.0.1", "picocolors": "^1.0.0" - }, - "dependencies": { - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - } } }, "buffer": { @@ -1511,9 +1503,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001267", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001267.tgz", - "integrity": "sha512-r1mjTzAuJ9W8cPBGbbus8E0SKcUP7gn03R14Wk8FlAlqhH9hroy9nLqmpuXlfKEw/oILW+FGz47ipXV2O7x8lg==", + "version": "1.0.30001274", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001274.tgz", + "integrity": "sha512-+Nkvv0fHyhISkiMIjnyjmf5YJcQ1IQHZN6U9TLUMroWR38FNwpsC51Gb68yueafX1V6ifOisInSgP9WJFS13ew==", "dev": true }, "catharsis": { @@ -2590,9 +2582,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.871", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.871.tgz", - "integrity": "sha512-qcLvDUPf8DSIMWarHT2ptgcqrYg62n3vPA7vhrOF24d8UNzbUBaHu2CySiENR3nEDzYgaN60071t0F6KLYMQ7Q==", + "version": "1.3.885", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.885.tgz", + "integrity": "sha512-JXKFJcVWrdHa09n4CNZYfYaK6EW5aAew7/wr3L1OnsD1L+JHL+RCtd7QgIsxUbFPeTwPlvnpqNNTOLkoefmtXg==", "dev": true }, "emittery": { @@ -2902,9 +2894,9 @@ } }, "globals": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", - "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", + "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -3039,9 +3031,9 @@ }, "dependencies": { "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true } } @@ -3055,9 +3047,9 @@ }, "dependencies": { "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" } } }, @@ -3319,9 +3311,9 @@ } }, "follow-redirects": { - "version": "1.14.4", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.4.tgz", - "integrity": "sha512-zwGkiSXC1MUJG/qmeIFH2HBJx9u0V46QGUe3YR1fXG8bXQxq7fLj0RjLZQ5nubr9qNJUZrH+xUcwXEoXNpfS+g==" + "version": "1.14.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz", + "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==" }, "foreground-child": { "version": "2.0.0", @@ -4040,9 +4032,9 @@ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "istanbul-lib-coverage": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.2.tgz", - "integrity": "sha512-o5+eTUYzCJ11/+JhW5/FUCdfsdoYVdQ/8I/OveE2XsjehYn5DdeSnNQAbjYaO8gQ6hvGTN6GM6ddQqpTVG5j8g==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", "dev": true }, "istanbul-lib-hook": { @@ -4188,11 +4180,11 @@ } }, "js2xmlparser": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.1.tgz", - "integrity": "sha512-KrPTolcw6RocpYjdC7pL7v62e55q7qOMHvLX1UCLc5AAS8qeJ6nukarEJAF2KL2PZxlbGueEbINqZR2bDe/gUw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.2.tgz", + "integrity": "sha512-6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA==", "requires": { - "xmlcreate": "^2.0.3" + "xmlcreate": "^2.0.4" } }, "jsdoc": { @@ -4971,9 +4963,9 @@ } }, "node-releases": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.0.tgz", - "integrity": "sha512-aA87l0flFYMzCHpTM3DERFSYxc6lv/BltdbRTOMZuxZ0cwZCD3mejE5n9vLhSJCN++/eOqr77G1IO5uXxlQYWA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", + "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==", "dev": true }, "nopt": { @@ -5693,9 +5685,9 @@ "dev": true }, "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", "dev": true }, "picomatch": { @@ -5802,13 +5794,13 @@ } }, "postcss": { - "version": "8.3.9", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.9.tgz", - "integrity": "sha512-f/ZFyAKh9Dnqytx5X62jgjhhzttjZS7hMsohcI7HEI5tjELX/HxCy3EFhsRxyzGvrzFF+82XPvCS8T9TFleVJw==", + "version": "8.3.11", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz", + "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==", "dev": true, "requires": { - "nanoid": "^3.1.28", - "picocolors": "^0.2.1", + "nanoid": "^3.1.30", + "picocolors": "^1.0.0", "source-map-js": "^0.6.2" } }, @@ -6326,9 +6318,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.43.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.43.2.tgz", - "integrity": "sha512-DncYhjl3wBaPMMJR0kIUaH3sF536rVrOcqqVGmTZHQRRzj7LQlyGV7Mb8aCKFyILMr5VsPHwRYtyKpnKYlmQSQ==", + "version": "1.43.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.43.4.tgz", + "integrity": "sha512-/ptG7KE9lxpGSYiXn7Ar+lKOv37xfWsZRtFYal2QHNigyVQDx685VFT/h7ejVr+R8w7H4tmUgtulsKl5YpveOg==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -7241,9 +7233,9 @@ "dev": true }, "trim-off-newlines": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.2.tgz", - "integrity": "sha512-DAnbtY4lNoOTLw05HLuvPoBFAGV4zOKQ9d1Q45JB+bcDwYIEkCr0xNgwKtygtKFBbRlFA/8ytkAM1V09QGWksg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.3.tgz", + "integrity": "sha512-kh6Tu6GbeSNMGfrrZh6Bb/4ZEHV1QlB4xNDBeog8Y9/QwFlKTRyWvY3Fs9tRDAMZliVUwieMgEdIeL/FtqjkJg==", "dev": true }, "tslib": { @@ -7599,9 +7591,9 @@ "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" }, "xmlcreate": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.3.tgz", - "integrity": "sha512-HgS+X6zAztGa9zIK3Y3LXuJes33Lz9x+YyTxgrkIdabu2vqcGOWwdfCpf1hWLRrd553wd4QCDf6BBO6FfdsRiQ==" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz", + "integrity": "sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==" }, "xtend": { "version": "4.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index 6feea214a54..c9f26321733 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -130,7 +130,7 @@ "eslint": "^7.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^35.5.1", - "istanbul-lib-coverage": "^3.0.2", + "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.0.5", From 911205ac491a87c0e78f680a59981684a568ed20 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 7 Nov 2021 03:20:27 +0000 Subject: [PATCH 0581/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 113 ++++++++++++++--------------- 1 file changed, 53 insertions(+), 60 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d71696c5bbc..7010b117e26 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.0.tgz", - "integrity": "sha512-TEHWXf0xxpi9wKVyBCmRcSSDjbJ/cl6LUdlbYUHEaNQUJGhreJbZrXT6sR4+fZLxVUJqNRB4KyOvjuy/D9009A==" + "version": "7.16.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.2.tgz", + "integrity": "sha512-RUVpT0G2h6rOZwqLDTrKk7ksNv7YpAilTnYe1/Q+eDjxEceRMKVWbCsX7t8h6C1qCFi/1Y8WZjcEPBAFG27GPw==" }, "@babel/template": { "version": "7.16.0", @@ -495,9 +495,9 @@ } }, "@humanwhocodes/object-schema": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", - "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, "@istanbuljs/load-nyc-config": { @@ -753,39 +753,39 @@ } }, "@vue/compiler-core": { - "version": "3.2.20", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.20.tgz", - "integrity": "sha512-vcEXlKXoPwBXFP5aUTHN9GTZaDfwCofa9Yu9bbW2C5O/QSa9Esdt7OG4+0RRd3EHEMxUvEdj4RZrd/KpQeiJbA==", + "version": "3.2.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.21.tgz", + "integrity": "sha512-NhhiQZNG71KNq1h5pMW/fAXdTF7lJRaSI7LDm2edhHXVz1ROMICo8SreUmQnSf4Fet0UPBVqJ988eF4+936iDQ==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@vue/shared": "3.2.20", + "@vue/shared": "3.2.21", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.20", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.20.tgz", - "integrity": "sha512-QnI77ec/JtV7R0YBbcVayYTDCRcI9OCbxiUQK6izVyqQO0658n0zQuoNwe+bYgtqnvGAIqTR3FShTd5y4oOjdg==", + "version": "3.2.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.21.tgz", + "integrity": "sha512-gsJD3DpYZSYquiA7UIPsMDSlAooYWDvHPq9VRsqzJEk2PZtFvLvHPb4aaMD8Ufd62xzYn32cnnkzsEOJhyGilA==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.20", - "@vue/shared": "3.2.20" + "@vue/compiler-core": "3.2.21", + "@vue/shared": "3.2.21" } }, "@vue/compiler-sfc": { - "version": "3.2.20", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.20.tgz", - "integrity": "sha512-03aZo+6tQKiFLfunHKSPZvdK4Jsn/ftRCyaro8AQIWkuxJbvSosbKK6HTTn+D2c3nPScG155akJoxKENw7rftQ==", + "version": "3.2.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.21.tgz", + "integrity": "sha512-+yDlUSebKpz/ovxM2vLRRx7w/gVfY767pOfYTgbIhAs+ogvIV2BsIt4fpxlThnlCNChJ+yE0ERUNoROv2kEGEQ==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@vue/compiler-core": "3.2.20", - "@vue/compiler-dom": "3.2.20", - "@vue/compiler-ssr": "3.2.20", - "@vue/ref-transform": "3.2.20", - "@vue/shared": "3.2.20", + "@vue/compiler-core": "3.2.21", + "@vue/compiler-dom": "3.2.21", + "@vue/compiler-ssr": "3.2.21", + "@vue/ref-transform": "3.2.21", + "@vue/shared": "3.2.21", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -793,32 +793,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.20", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.20.tgz", - "integrity": "sha512-rzzVVYivm+EjbfiGQvNeyiYZWzr6Hkej97RZLZvcumacQlnKv9176Xo9rRyeWwFbBlxmtNdrVMslRXtipMXk2w==", + "version": "3.2.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.21.tgz", + "integrity": "sha512-eU+A0iWYy+1zAo2CRIJ0zSVlv1iuGAIbNRCnllSJ31pV1lX3jypJYzGbJlSRAbB7VP6E+tYveVT1Oq8JKewa3g==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.20", - "@vue/shared": "3.2.20" + "@vue/compiler-dom": "3.2.21", + "@vue/shared": "3.2.21" } }, "@vue/ref-transform": { - "version": "3.2.20", - "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.20.tgz", - "integrity": "sha512-Y42d3PGlYZ1lXcF3dbd3+qU/C/a3wYEZ949fyOI5ptzkjDWlkfU6vn74fmOjsLjEcjs10BXK2qO99FqQIK2r1Q==", + "version": "3.2.21", + "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.21.tgz", + "integrity": "sha512-uiEWWBsrGeun9O7dQExYWzXO3rHm/YdtFNXDVqCSoPypzOVxWxdiL+8hHeWzxMB58fVuV2sT80aUtIVyaBVZgQ==", "dev": true, "requires": { "@babel/parser": "^7.15.0", - "@vue/compiler-core": "3.2.20", - "@vue/shared": "3.2.20", + "@vue/compiler-core": "3.2.21", + "@vue/shared": "3.2.21", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.20", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.20.tgz", - "integrity": "sha512-FbpX+hD5BvXCQerEYO7jtAGHlhAkhTQ4KIV73kmLWNlawWhTiVuQxizgVb0BOkX5oG9cIRZ42EG++d/k/Efp0w==", + "version": "3.2.21", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.21.tgz", + "integrity": "sha512-5EQmIPK6gw4UVYUbM959B0uPsJ58+xoMESCZs3N89XyvJ9e+fX4pqEPrOGV8OroIk3SbEvJcC+eYc8BH9JQrHA==", "dev": true }, "JSONStream": { @@ -1326,13 +1326,13 @@ } }, "browserslist": { - "version": "4.17.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.5.tgz", - "integrity": "sha512-I3ekeB92mmpctWBoLXe0d5wPS2cBuRvvW0JyyJHMrk9/HmP2ZjrTboNAZ8iuGqaEIlKguljbQY32OkOJIRrgoA==", + "version": "4.17.6", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.6.tgz", + "integrity": "sha512-uPgz3vyRTlEiCv4ee9KlsKgo2V6qPk7Jsn0KAn2OBqbqKo3iNcPEC1Ti6J4dwnz+aIRfEEEuOzC9IBk8tXUomw==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001271", - "electron-to-chromium": "^1.3.878", + "caniuse-lite": "^1.0.30001274", + "electron-to-chromium": "^1.3.886", "escalade": "^3.1.1", "node-releases": "^2.0.1", "picocolors": "^1.0.0" @@ -1503,9 +1503,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001274", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001274.tgz", - "integrity": "sha512-+Nkvv0fHyhISkiMIjnyjmf5YJcQ1IQHZN6U9TLUMroWR38FNwpsC51Gb68yueafX1V6ifOisInSgP9WJFS13ew==", + "version": "1.0.30001278", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001278.tgz", + "integrity": "sha512-mpF9KeH8u5cMoEmIic/cr7PNS+F5LWBk0t2ekGT60lFf0Wq+n9LspAj0g3P+o7DQhD3sUdlMln4YFAWhFYn9jg==", "dev": true }, "catharsis": { @@ -2582,9 +2582,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.885", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.885.tgz", - "integrity": "sha512-JXKFJcVWrdHa09n4CNZYfYaK6EW5aAew7/wr3L1OnsD1L+JHL+RCtd7QgIsxUbFPeTwPlvnpqNNTOLkoefmtXg==", + "version": "1.3.890", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.890.tgz", + "integrity": "sha512-VWlVXSkv0cA/OOehrEyqjUTHwV8YXCPTfPvbtoeU2aHR21vI4Ejh5aC4AxUwOmbLbBgb6Gd3URZahoCxtBqCYQ==", "dev": true }, "emittery": { @@ -3735,9 +3735,9 @@ "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" }, "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" + "version": "5.1.9", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.9.tgz", + "integrity": "sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==" }, "ignore-by-default": { "version": "2.0.0", @@ -4402,12 +4402,6 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -6850,13 +6844,12 @@ } }, "table": { - "version": "6.7.2", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", - "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==", + "version": "6.7.3", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.3.tgz", + "integrity": "sha512-5DkIxeA7XERBqMwJq0aHZOdMadBx4e6eDoFRuyT5VR82J0Ycg2DwM6GfA/EQAhJ+toRTaS1lIdSQCqgrmhPnlw==", "dev": true, "requires": { "ajv": "^8.0.1", - "lodash.clonedeep": "^4.5.0", "lodash.truncate": "^4.4.2", "slice-ansi": "^4.0.0", "string-width": "^4.2.3", From 9092df29a2cb311cd9ff8689aadbc80991e80492 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 14 Nov 2021 03:20:26 +0000 Subject: [PATCH 0582/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 78 +++++++++++++++--------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7010b117e26..435a60378e7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -90,14 +90,14 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.0.tgz", - "integrity": "sha512-S7iaOT1SYlqK0sQaCi21RX4+13hmdmnxIEAnQUB/eh7GeAnRjOUgTYpLkUOiRXzD+yog1JxP0qyAQZ7ZxVxLVg==", + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz", + "integrity": "sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA==", "dev": true, "requires": { "@babel/compat-data": "^7.16.0", "@babel/helper-validator-option": "^7.14.5", - "browserslist": "^4.16.6", + "browserslist": "^4.17.5", "semver": "^6.3.0" }, "dependencies": { @@ -223,13 +223,13 @@ "dev": true }, "@babel/helpers": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.0.tgz", - "integrity": "sha512-dVRM0StFMdKlkt7cVcGgwD8UMaBfWJHl3A83Yfs8GQ3MO0LHIIIMvK7Fa0RGOGUQ10qikLaX6D7o5htcQWgTMQ==", + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.3.tgz", + "integrity": "sha512-Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w==", "dev": true, "requires": { "@babel/template": "^7.16.0", - "@babel/traverse": "^7.16.0", + "@babel/traverse": "^7.16.3", "@babel/types": "^7.16.0" } }, @@ -295,9 +295,9 @@ } }, "@babel/parser": { - "version": "7.16.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.2.tgz", - "integrity": "sha512-RUVpT0G2h6rOZwqLDTrKk7ksNv7YpAilTnYe1/Q+eDjxEceRMKVWbCsX7t8h6C1qCFi/1Y8WZjcEPBAFG27GPw==" + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.3.tgz", + "integrity": "sha512-dcNwU1O4sx57ClvLBVFbEgx0UZWfd0JQX5X6fxFRCLHelFBGXFfSz6Y0FAq2PEwUqlqLkdVjVr4VASEOuUnLJw==" }, "@babel/template": { "version": "7.16.0", @@ -311,9 +311,9 @@ } }, "@babel/traverse": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.0.tgz", - "integrity": "sha512-qQ84jIs1aRQxaGaxSysII9TuDaguZ5yVrEuC0BN2vcPlalwfLovVmCjbFDPECPXcYM/wLvNFfp8uDOliLxIoUQ==", + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.3.tgz", + "integrity": "sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag==", "dev": true, "requires": { "@babel/code-frame": "^7.16.0", @@ -321,7 +321,7 @@ "@babel/helper-function-name": "^7.16.0", "@babel/helper-hoist-variables": "^7.16.0", "@babel/helper-split-export-declaration": "^7.16.0", - "@babel/parser": "^7.16.0", + "@babel/parser": "^7.16.3", "@babel/types": "^7.16.0", "debug": "^4.1.0", "globals": "^11.1.0" @@ -1326,13 +1326,13 @@ } }, "browserslist": { - "version": "4.17.6", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.6.tgz", - "integrity": "sha512-uPgz3vyRTlEiCv4ee9KlsKgo2V6qPk7Jsn0KAn2OBqbqKo3iNcPEC1Ti6J4dwnz+aIRfEEEuOzC9IBk8tXUomw==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.18.0.tgz", + "integrity": "sha512-ER2M0g5iAR84fS/zjBDqEgU6iO5fS9JI2EkHr5zxDxYEFk3LjhU9Vpp/INb6RMQphxko7PDV1FH38H/qVP5yCA==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001274", - "electron-to-chromium": "^1.3.886", + "caniuse-lite": "^1.0.30001280", + "electron-to-chromium": "^1.3.896", "escalade": "^3.1.1", "node-releases": "^2.0.1", "picocolors": "^1.0.0" @@ -1503,9 +1503,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001278", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001278.tgz", - "integrity": "sha512-mpF9KeH8u5cMoEmIic/cr7PNS+F5LWBk0t2ekGT60lFf0Wq+n9LspAj0g3P+o7DQhD3sUdlMln4YFAWhFYn9jg==", + "version": "1.0.30001280", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001280.tgz", + "integrity": "sha512-kFXwYvHe5rix25uwueBxC569o53J6TpnGu0BEEn+6Lhl2vsnAumRFWEBhDft1fwyo6m1r4i+RqA4+163FpeFcA==", "dev": true }, "catharsis": { @@ -2582,9 +2582,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.890", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.890.tgz", - "integrity": "sha512-VWlVXSkv0cA/OOehrEyqjUTHwV8YXCPTfPvbtoeU2aHR21vI4Ejh5aC4AxUwOmbLbBgb6Gd3URZahoCxtBqCYQ==", + "version": "1.3.896", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.896.tgz", + "integrity": "sha512-NcGkBVXePiuUrPLV8IxP43n1EOtdg+dudVjrfVEUd/bOqpQUFZ2diL5PPYzbgEhZFEltdXV3AcyKwGnEQ5lhMA==", "dev": true }, "emittery": { @@ -3296,9 +3296,9 @@ } }, "flatted": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", - "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.4.tgz", + "integrity": "sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==", "dev": true }, "flush-write-stream": { @@ -4696,16 +4696,16 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.50.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.50.0.tgz", - "integrity": "sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==" + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", + "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==" }, "mime-types": { - "version": "2.1.33", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.33.tgz", - "integrity": "sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==", + "version": "2.1.34", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz", + "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", "requires": { - "mime-db": "1.50.0" + "mime-db": "1.51.0" } }, "mimic-fn": { @@ -6857,9 +6857,9 @@ }, "dependencies": { "ajv": { - "version": "8.6.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", - "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.0.tgz", + "integrity": "sha512-L+cJ/+pkdICMueKR6wIx3VP2fjIx3yAhuvadUv/osv9yFD7OVZy442xFF+Oeu3ZvmhBGQzoF6mTSt+LUWBmGQg==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", From b42b713af8aa9f0c7c701b9fb5e348c47c63eb82 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 17 Nov 2021 08:28:07 +0000 Subject: [PATCH 0583/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.11.1 to 2.11.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v2.11.2/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 435a60378e7..a7ea9377cd5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -674,9 +674,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.11.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.11.1.tgz", - "integrity": "sha512-6WAJwuilKVxYFg9qYGUQ4O36qC0VmjEjArJzwftnORbUuEqN4F1ygLYiTqNnImvuCILDzoq4OBj2ecxYOItFiQ==", + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.11.2.tgz", + "integrity": "sha512-kO05d9hjRyLzWs/cy09EXUnKbrRJBsvGne5OcXGWSpmIl9glW54qBVcMBPlxTDltOGbal1p1sZVje+uPAbnxDQ==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -7118,9 +7118,9 @@ } }, "terser": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz", - "integrity": "sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.10.0.tgz", + "integrity": "sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", diff --git a/packages/project/package.json b/packages/project/package.json index c9f26321733..c1e31cbdc48 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.11.1", + "@ui5/builder": "^2.11.2", "@ui5/logger": "^2.0.1", "@ui5/server": "^2.4.0", "ajv": "^6.12.6", From 6a27478c9228f94d472f6c8f6942c0d7e3831b70 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 Nov 2021 18:21:38 +0100 Subject: [PATCH 0584/1272] [ui5-project][INTERNAL] Enable CI for branches next, main --- packages/project/.github/workflows/codeql-analysis.yml | 10 ++++++++-- packages/project/.github/workflows/github-ci.yml | 10 ++++++++-- .../project/.github/workflows/reuse-compliance.yml | 10 ++++++++-- 3 files changed, 24 insertions(+), 6 deletions(-) diff --git a/packages/project/.github/workflows/codeql-analysis.yml b/packages/project/.github/workflows/codeql-analysis.yml index 36467c52be5..05f4518dd2c 100644 --- a/packages/project/.github/workflows/codeql-analysis.yml +++ b/packages/project/.github/workflows/codeql-analysis.yml @@ -2,9 +2,15 @@ name: "CodeQL" on: push: - branches: [ master ] + branches: + - master + - main + - next pull_request: - branches: [ master ] + branches: + - master + - main + - next # Execute at least once per week to get new findings without active development taking place schedule: diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index f467e7e3c53..cbbf77c58bf 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -2,9 +2,15 @@ name: GitHub CI on: push: - branches: [ master ] + branches: + - master + - main + - next pull_request: - branches: [ master ] + branches: + - master + - main + - next jobs: test: diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index 1ecfdb5d084..a188fccc5a5 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -2,9 +2,15 @@ name: REUSE on: push: - branches: [ master ] + branches: + - master + - main + - next pull_request: - branches: [ master ] + branches: + - master + - main + - next jobs: compliance-check: From 9b05e292264e1902600be294147f32dd122bb117 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 8 Nov 2021 15:05:53 +0100 Subject: [PATCH 0585/1272] [ui5-project][INTERNAL] Installer: Lazy require registry Prevents initialization of pacote in cases where all packages are already installed (very common). Leads to ~100ms faster build of openui5-sample-app. --- .../project/lib/ui5Framework/npm/Installer.js | 24 +++++++++++------ .../test/lib/ui5framework/npm/Installer.js | 26 ++++++++++++------- 2 files changed, 33 insertions(+), 17 deletions(-) diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index 91814ba3bbd..ad5b4fa9137 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -8,7 +8,6 @@ const lockfile = require("lockfile"); const lock = promisify(lockfile.lock); const unlock = promisify(lockfile.unlock); const mkdirp = require("mkdirp"); -const Registry = require("./Registry"); const log = require("@ui5/logger").getLogger("normalizer:ui5Framework:npm:Installer"); class Installer { @@ -21,20 +20,29 @@ class Installer { } this._packagesDir = path.join(ui5HomeDir, "framework", "packages"); log.verbose(`Installing to: ${this._packagesDir}`); - this._registry = new Registry({ - cwd, - cacheDir: path.join(ui5HomeDir, "framework", "cacache") - }); + this._cwd = cwd; + this._caCacheDir = path.join(ui5HomeDir, "framework", "cacache"); this._lockDir = path.join(ui5HomeDir, "framework", "locks"); this._stagingDir = path.join(ui5HomeDir, "framework", "staging"); } + getRegistry() { + if (this._cachedRegistry) { + return this._cachedRegistry; + } + const Registry = require("./Registry"); + return this._cachedRegistry = new Registry({ + cwd: this._cwd, + cacheDir: this._caCacheDir + }); + } + async readJson(jsonPath) { return JSON.parse(await readFile(jsonPath, {encoding: "utf8"})); } async fetchPackageVersions({pkgName}) { - const packument = await this._registry.requestPackagePackument(pkgName); + const packument = await this.getRegistry().requestPackagePackument(pkgName); return Object.keys(packument.versions); } @@ -49,7 +57,7 @@ class Installer { }; } catch (err) { if (err.code === "ENOENT") { // "File or directory does not exist" - const manifest = await this._registry.requestPackageManifest(pkgName, version); + const manifest = await this.getRegistry().requestPackageManifest(pkgName, version); return { name: manifest.name, dependencies: manifest.dependencies, @@ -90,7 +98,7 @@ class Installer { } log.verbose(`Installing ${pkgName} in version ${version} to ${stagingDir}...`); - await this._registry.extractPackage(pkgName, version, stagingDir); + await this.getRegistry().extractPackage(pkgName, version, stagingDir); // Do not create target dir itself to prevent EPERM error in following rename operation // (https://github.com/SAP/ui5-tooling/issues/487) diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index dd6e8f73e6c..8dcaa49f916 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -60,7 +60,8 @@ test.serial("Installer: fetchPackageVersions", async (t) => { ui5HomeDir: "/ui5Home/" }); - const requestPackagePackumentStub = sinon.stub(installer._registry, "requestPackagePackument") + const registry = installer.getRegistry(); + const requestPackagePackumentStub = sinon.stub(registry, "requestPackagePackument") .resolves({ versions: { "1.0.0": {}, @@ -119,10 +120,11 @@ test.serial("Installer: fetchPackageManifest (without existing package.json)", a } }; - const requestPackageManifestStub = sinon.stub(installer._registry, "requestPackageManifest") + const registry = installer.getRegistry(); + const requestPackageManifestStub = sinon.stub(registry, "requestPackageManifest") .callsFake((pkgName, version) => { throw new Error( - "_registry.requestPackageManifest stub called with unknown arguments " + + "_cachedRegistry.requestPackageManifest stub called with unknown arguments " + `pkgName: ${pkgName}, version: ${version}}` ); }) @@ -187,7 +189,8 @@ test.serial("Installer: fetchPackageManifest (with existing package.json)", asyn } }; - const requestPackageManifestStub = sinon.stub(installer._registry, "requestPackageManifest") + const registry = installer.getRegistry(); + const requestPackageManifestStub = sinon.stub(registry, "requestPackageManifest") .rejects(new Error("Unexpected call")); const readJsonStub = sinon.stub(installer, "readJson") @@ -224,7 +227,8 @@ test.serial("Installer: fetchPackageManifest (readJson throws error)", async (t) ui5HomeDir: "/ui5Home/" }); - const requestPackageManifestStub = sinon.stub(installer._registry, "requestPackageManifest") + const registry = installer.getRegistry(); + const requestPackageManifestStub = sinon.stub(registry, "requestPackageManifest") .rejects(new Error("Unexpected call")); const readJsonStub = sinon.stub(installer, "readJson") @@ -415,7 +419,8 @@ test.serial("Installer: installPackage with new package", async (t) => { .returns("staging-dir-path"); const pathExistsStub = sinon.stub(installer, "_pathExists").resolves(false); - const extractPackageStub = sinon.stub(installer._registry, "extractPackage").resolves(); + const registry = installer.getRegistry(); + const extractPackageStub = sinon.stub(registry, "extractPackage").resolves(); const res = await installer.installPackage({ pkgName: "myPackage", @@ -493,7 +498,8 @@ test.serial("Installer: installPackage with already installed package", async (t .returns("staging-dir-path"); const pathExistsStub = sinon.stub(installer, "_pathExists").resolves(false); - const extractPackageStub = sinon.stub(installer._registry, "extractPackage").resolves(); + const registry = installer.getRegistry(); + const extractPackageStub = sinon.stub(registry, "extractPackage").resolves(); const res = await installer.installPackage({ pkgName: "myPackage", @@ -547,7 +553,8 @@ test.serial("Installer: installPackage with install already in progress", async .returns("staging-dir-path"); const pathExistsStub = sinon.stub(installer, "_pathExists").resolves(false); - const extractPackageStub = sinon.stub(installer._registry, "extractPackage").resolves(); + const registry = installer.getRegistry(); + const extractPackageStub = sinon.stub(registry, "extractPackage").resolves(); await installer.installPackage({ pkgName: "myPackage", @@ -606,7 +613,8 @@ test.serial("Installer: installPackage with new package and existing target and .returns("staging-dir-path"); const pathExistsStub = sinon.stub(installer, "_pathExists").resolves(true); // Staging dir exists - const extractPackageStub = sinon.stub(installer._registry, "extractPackage").resolves(); + const registry = installer.getRegistry(); + const extractPackageStub = sinon.stub(registry, "extractPackage").resolves(); const res = await installer.installPackage({ pkgName: "myPackage", From c29646116c18bfcd2b2cdc363602754a8d2d18c8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 24 Nov 2021 19:05:07 +0100 Subject: [PATCH 0586/1272] [ui5-project][INTERNAL] Installer: Lazy require 'mkdirp' and 'lockfile' --- packages/project/lib/ui5Framework/npm/Installer.js | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index ad5b4fa9137..bfcae796018 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -4,10 +4,6 @@ const {promisify} = require("util"); const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const rename = promisify(fs.rename); -const lockfile = require("lockfile"); -const lock = promisify(lockfile.lock); -const unlock = promisify(lockfile.unlock); -const mkdirp = require("mkdirp"); const log = require("@ui5/logger").getLogger("normalizer:ui5Framework:npm:Installer"); class Installer { @@ -102,7 +98,7 @@ class Installer { // Do not create target dir itself to prevent EPERM error in following rename operation // (https://github.com/SAP/ui5-tooling/issues/487) - await mkdirp(path.dirname(targetDir)); + await require("mkdirp")(path.dirname(targetDir)); log.verbose(`Promoting staging directory from ${stagingDir} to ${targetDir}...`); await rename(stagingDir, targetDir); } else { @@ -135,8 +131,11 @@ class Installer { } async _synchronize({pkgName, version}, callback) { + const lockfile = require("lockfile"); + const lock = promisify(lockfile.lock); + const unlock = promisify(lockfile.unlock); const lockPath = this._getLockPath({pkgName, version}); - await mkdirp(this._lockDir); + await require("mkdirp")(this._lockDir); log.verbose("Locking " + lockPath); await lock(lockPath, { wait: 10000, From fd143e854047df9fc75a5722c4b3cae1f09bf010 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 29 Nov 2021 13:33:36 +0000 Subject: [PATCH 0587/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 2.0.1 to 3.0.0-next.0 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.0-next.0/CHANGELOG.md --- packages/project/package-lock.json | 290 +++++++++++++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 255 insertions(+), 37 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a7ea9377cd5..14b5f336353 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -697,6 +697,69 @@ "terser": "^5.9.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "@ui5/logger": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.1.tgz", + "integrity": "sha512-FU5moQF9HATZEIJVQxXWRsUKMveIRJNPSmH3Mptcuc05f6gKu1BWcamDaDHXmMSyoKRounY9Aok94NTQMi7eDw==", + "requires": { + "npmlog": "^4.1.2" + } + }, + "are-we-there-yet": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } } }, "@ui5/fs": { @@ -713,14 +776,77 @@ "minimatch": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^2.0.1" + }, + "dependencies": { + "@ui5/logger": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.1.tgz", + "integrity": "sha512-FU5moQF9HATZEIJVQxXWRsUKMveIRJNPSmH3Mptcuc05f6gKu1BWcamDaDHXmMSyoKRounY9Aok94NTQMi7eDw==", + "requires": { + "npmlog": "^4.1.2" + } + }, + "are-we-there-yet": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } } }, "@ui5/logger": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.1.tgz", - "integrity": "sha512-FU5moQF9HATZEIJVQxXWRsUKMveIRJNPSmH3Mptcuc05f6gKu1BWcamDaDHXmMSyoKRounY9Aok94NTQMi7eDw==", + "version": "3.0.0-next.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", + "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", "requires": { - "npmlog": "^4.1.2" + "npmlog": "^5.0.1" } }, "@ui5/server": { @@ -750,6 +876,69 @@ "spdy": "^4.0.2", "treeify": "^1.0.1", "yesno": "^0.3.1" + }, + "dependencies": { + "@ui5/logger": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.1.tgz", + "integrity": "sha512-FU5moQF9HATZEIJVQxXWRsUKMveIRJNPSmH3Mptcuc05f6gKu1BWcamDaDHXmMSyoKRounY9Aok94NTQMi7eDw==", + "requires": { + "npmlog": "^4.1.2" + } + }, + "are-we-there-yet": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } } }, "@vue/compiler-core": { @@ -996,12 +1185,24 @@ "dev": true }, "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "requires": { "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "readable-stream": "^3.6.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } } }, "argparse": { @@ -1885,6 +2086,11 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" + }, "command-exists": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", @@ -3393,18 +3599,19 @@ "dev": true }, "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.1.tgz", + "integrity": "sha512-6STz6KdQgxO4S/ko+AbjlFGGdGcknluoqU+79GOFCDqqyYj5OanQf9AjxwN0jCidtT+ziPMmPSt9E4hfQ0CwIQ==", "requires": { - "aproba": "^1.0.3", + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" + "string-width": "^1.0.1 || ^2.0.0", + "strip-ansi": "^3.0.1 || ^4.0.0", + "wide-align": "^1.1.2" } }, "genfun": { @@ -3896,12 +4103,9 @@ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" }, "is-glob": { "version": "4.0.3", @@ -5094,14 +5298,14 @@ } }, "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" } }, "nth-check": { @@ -6740,13 +6944,27 @@ "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "^3.0.0" + } + } } }, "string_decoder": { diff --git a/packages/project/package.json b/packages/project/package.json index c1e31cbdc48..74b33261888 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ }, "dependencies": { "@ui5/builder": "^2.11.2", - "@ui5/logger": "^2.0.1", + "@ui5/logger": "^3.0.0-next.0", "@ui5/server": "^2.4.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 260d7f7fe625b6a170172efe35331a1d15d8ef77 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Dec 2021 10:14:35 +0000 Subject: [PATCH 0588/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 829 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 394 insertions(+), 439 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 14b5f336353..fc2f5e02778 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -13,25 +13,25 @@ } }, "@babel/compat-data": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.0.tgz", - "integrity": "sha512-DGjt2QZse5SGd9nfOSqO4WLJ8NN/oHkijbXbPrxuoJO3oIPJL3TciZs9FX+cOHNiY9E9l0opL8g7BmLe3T+9ew==", + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.4.tgz", + "integrity": "sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q==", "dev": true }, "@babel/core": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.0.tgz", - "integrity": "sha512-mYZEvshBRHGsIAiyH5PzCFTCfbWfoYbO/jcSdXQSUQu1/pW0xDZAUP7KEc32heqWTAfAHhV9j1vH8Sav7l+JNQ==", + "version": "7.16.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.5.tgz", + "integrity": "sha512-wUcenlLzuWMZ9Zt8S0KmFwGlH6QKRh3vsm/dhDA3CHkiTA45YuG1XkHRcNRl73EFPXDp/d5kVOU0/y7x2w6OaQ==", "dev": true, "requires": { "@babel/code-frame": "^7.16.0", - "@babel/generator": "^7.16.0", - "@babel/helper-compilation-targets": "^7.16.0", - "@babel/helper-module-transforms": "^7.16.0", - "@babel/helpers": "^7.16.0", - "@babel/parser": "^7.16.0", + "@babel/generator": "^7.16.5", + "@babel/helper-compilation-targets": "^7.16.3", + "@babel/helper-module-transforms": "^7.16.5", + "@babel/helpers": "^7.16.5", + "@babel/parser": "^7.16.5", "@babel/template": "^7.16.0", - "@babel/traverse": "^7.16.0", + "@babel/traverse": "^7.16.5", "@babel/types": "^7.16.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", @@ -42,9 +42,9 @@ }, "dependencies": { "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "requires": { "ms": "2.1.2" @@ -71,9 +71,9 @@ } }, "@babel/generator": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.0.tgz", - "integrity": "sha512-RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew==", + "version": "7.16.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.5.tgz", + "integrity": "sha512-kIvCdjZqcdKqoDbVVdt5R99icaRtrtYhYK/xux5qiWCBmfdvEYMFZ68QCrpE5cbFM1JsuArUNs1ZkuKtTtUcZA==", "dev": true, "requires": { "@babel/types": "^7.16.0", @@ -109,6 +109,15 @@ } } }, + "@babel/helper-environment-visitor": { + "version": "7.16.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.5.tgz", + "integrity": "sha512-ODQyc5AnxmZWm/R2W7fzhamOk1ey8gSguo5SGvF0zcB3uUzRpTRmM/jmLSm9bDMyPlvbyJ+PwPEK0BWIoZ9wjg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, "@babel/helper-function-name": { "version": "7.16.0", "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz", @@ -138,15 +147,6 @@ "@babel/types": "^7.16.0" } }, - "@babel/helper-member-expression-to-functions": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.0.tgz", - "integrity": "sha512-bsjlBFPuWT6IWhl28EdrQ+gTvSvj5tqVP5Xeftp07SEuz5pLnsXZuDkDD3Rfcxy0IsHmbZ+7B2/9SHzxO0T+sQ==", - "dev": true, - "requires": { - "@babel/types": "^7.16.0" - } - }, "@babel/helper-module-imports": { "version": "7.16.0", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz", @@ -157,39 +157,18 @@ } }, "@babel/helper-module-transforms": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.0.tgz", - "integrity": "sha512-My4cr9ATcaBbmaEa8M0dZNA74cfI6gitvUAskgDtAFmAqyFKDSHQo5YstxPbN+lzHl2D9l/YOEFqb2mtUh4gfA==", + "version": "7.16.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.5.tgz", + "integrity": "sha512-CkvMxgV4ZyyioElFwcuWnDCcNIeyqTkCm9BxXZi73RR1ozqlpboqsbGUNvRTflgZtFbbJ1v5Emvm+lkjMYY/LQ==", "dev": true, "requires": { + "@babel/helper-environment-visitor": "^7.16.5", "@babel/helper-module-imports": "^7.16.0", - "@babel/helper-replace-supers": "^7.16.0", "@babel/helper-simple-access": "^7.16.0", "@babel/helper-split-export-declaration": "^7.16.0", "@babel/helper-validator-identifier": "^7.15.7", "@babel/template": "^7.16.0", - "@babel/traverse": "^7.16.0", - "@babel/types": "^7.16.0" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.0.tgz", - "integrity": "sha512-SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw==", - "dev": true, - "requires": { - "@babel/types": "^7.16.0" - } - }, - "@babel/helper-replace-supers": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.0.tgz", - "integrity": "sha512-TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA==", - "dev": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.16.0", - "@babel/helper-optimise-call-expression": "^7.16.0", - "@babel/traverse": "^7.16.0", + "@babel/traverse": "^7.16.5", "@babel/types": "^7.16.0" } }, @@ -223,13 +202,13 @@ "dev": true }, "@babel/helpers": { - "version": "7.16.3", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.3.tgz", - "integrity": "sha512-Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w==", + "version": "7.16.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.5.tgz", + "integrity": "sha512-TLgi6Lh71vvMZGEkFuIxzaPsyeYCHQ5jJOOX1f0xXn0uciFuE8cEk0wyBquMcCxBXZ5BJhE2aUB7pnWTD150Tw==", "dev": true, "requires": { "@babel/template": "^7.16.0", - "@babel/traverse": "^7.16.3", + "@babel/traverse": "^7.16.5", "@babel/types": "^7.16.0" } }, @@ -295,9 +274,9 @@ } }, "@babel/parser": { - "version": "7.16.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.3.tgz", - "integrity": "sha512-dcNwU1O4sx57ClvLBVFbEgx0UZWfd0JQX5X6fxFRCLHelFBGXFfSz6Y0FAq2PEwUqlqLkdVjVr4VASEOuUnLJw==" + "version": "7.16.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.5.tgz", + "integrity": "sha512-+Ce7T5iPNWzfu9C1aB5tN3Lyafs5xb3Ic7vBWyZL2KXT3QSdD1dD3CvgOzPmQKoNNRt6uauc0XwNJTQtXC2/Mw==" }, "@babel/template": { "version": "7.16.0", @@ -311,26 +290,27 @@ } }, "@babel/traverse": { - "version": "7.16.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.3.tgz", - "integrity": "sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag==", + "version": "7.16.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.5.tgz", + "integrity": "sha512-FOCODAzqUMROikDYLYxl4nmwiLlu85rNqBML/A5hKRVXG2LV8d0iMqgPzdYTcIpjZEBB7D6UDU9vxRZiriASdQ==", "dev": true, "requires": { "@babel/code-frame": "^7.16.0", - "@babel/generator": "^7.16.0", + "@babel/generator": "^7.16.5", + "@babel/helper-environment-visitor": "^7.16.5", "@babel/helper-function-name": "^7.16.0", "@babel/helper-hoist-variables": "^7.16.0", "@babel/helper-split-export-declaration": "^7.16.0", - "@babel/parser": "^7.16.3", + "@babel/parser": "^7.16.5", "@babel/types": "^7.16.0", "debug": "^4.1.0", "globals": "^11.1.0" }, "dependencies": { "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "requires": { "ms": "2.1.2" @@ -408,9 +388,9 @@ }, "dependencies": { "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "requires": { "ms": "2.1.2" @@ -478,9 +458,9 @@ }, "dependencies": { "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "requires": { "ms": "2.1.2" @@ -674,9 +654,9 @@ "dev": true }, "@ui5/builder": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.11.2.tgz", - "integrity": "sha512-kO05d9hjRyLzWs/cy09EXUnKbrRJBsvGne5OcXGWSpmIl9glW54qBVcMBPlxTDltOGbal1p1sZVje+uPAbnxDQ==", + "version": "2.11.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.11.3.tgz", + "integrity": "sha512-sS4mupTxmxTPXMPIReKFpiviW6aaykPVDc6d2cQuCeEb8rg+NMNAM1RWydKua6iLZg4Ur6MX+Qc/eIiYGLBE/Q==", "requires": { "@ui5/fs": "^2.0.6", "@ui5/logger": "^2.0.1", @@ -694,7 +674,7 @@ "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.5", - "terser": "^5.9.0", + "terser": "^5.10.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" }, @@ -706,59 +686,6 @@ "requires": { "npmlog": "^4.1.2" } - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } } } }, @@ -785,70 +712,93 @@ "requires": { "npmlog": "^4.1.2" } + } + } + }, + "@ui5/logger": { + "version": "3.0.0-next.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", + "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", + "requires": { + "npmlog": "^5.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "requires": { "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "readable-stream": "^3.6.0" } }, "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "requires": { - "aproba": "^1.0.3", + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" } }, "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "requires": { - "number-is-nan": "^1.0.0" + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" } }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "ansi-regex": "^5.0.1" } } } }, - "@ui5/logger": { - "version": "3.0.0-next.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", - "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", - "requires": { - "npmlog": "^5.0.1" - } - }, "@ui5/server": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.4.0.tgz", @@ -885,96 +835,43 @@ "requires": { "npmlog": "^4.1.2" } - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } } } }, "@vue/compiler-core": { - "version": "3.2.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.21.tgz", - "integrity": "sha512-NhhiQZNG71KNq1h5pMW/fAXdTF7lJRaSI7LDm2edhHXVz1ROMICo8SreUmQnSf4Fet0UPBVqJ988eF4+936iDQ==", + "version": "3.2.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.26.tgz", + "integrity": "sha512-N5XNBobZbaASdzY9Lga2D9Lul5vdCIOXvUMd6ThcN8zgqQhPKfCV+wfAJNNJKQkSHudnYRO2gEB+lp0iN3g2Tw==", "dev": true, "requires": { - "@babel/parser": "^7.15.0", - "@vue/shared": "3.2.21", + "@babel/parser": "^7.16.4", + "@vue/shared": "3.2.26", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.21.tgz", - "integrity": "sha512-gsJD3DpYZSYquiA7UIPsMDSlAooYWDvHPq9VRsqzJEk2PZtFvLvHPb4aaMD8Ufd62xzYn32cnnkzsEOJhyGilA==", + "version": "3.2.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.26.tgz", + "integrity": "sha512-smBfaOW6mQDxcT3p9TKT6mE22vjxjJL50GFVJiI0chXYGU/xzC05QRGrW3HHVuJrmLTLx5zBhsZ2dIATERbarg==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.21", - "@vue/shared": "3.2.21" + "@vue/compiler-core": "3.2.26", + "@vue/shared": "3.2.26" } }, "@vue/compiler-sfc": { - "version": "3.2.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.21.tgz", - "integrity": "sha512-+yDlUSebKpz/ovxM2vLRRx7w/gVfY767pOfYTgbIhAs+ogvIV2BsIt4fpxlThnlCNChJ+yE0ERUNoROv2kEGEQ==", + "version": "3.2.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.26.tgz", + "integrity": "sha512-ePpnfktV90UcLdsDQUh2JdiTuhV0Skv2iYXxfNMOK/F3Q+2BO0AulcVcfoksOpTJGmhhfosWfMyEaEf0UaWpIw==", "dev": true, "requires": { - "@babel/parser": "^7.15.0", - "@vue/compiler-core": "3.2.21", - "@vue/compiler-dom": "3.2.21", - "@vue/compiler-ssr": "3.2.21", - "@vue/ref-transform": "3.2.21", - "@vue/shared": "3.2.21", + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.26", + "@vue/compiler-dom": "3.2.26", + "@vue/compiler-ssr": "3.2.26", + "@vue/reactivity-transform": "3.2.26", + "@vue/shared": "3.2.26", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -982,32 +879,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.21.tgz", - "integrity": "sha512-eU+A0iWYy+1zAo2CRIJ0zSVlv1iuGAIbNRCnllSJ31pV1lX3jypJYzGbJlSRAbB7VP6E+tYveVT1Oq8JKewa3g==", + "version": "3.2.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.26.tgz", + "integrity": "sha512-2mywLX0ODc4Zn8qBoA2PDCsLEZfpUGZcyoFRLSOjyGGK6wDy2/5kyDOWtf0S0UvtoyVq95OTSGIALjZ4k2q/ag==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.21", - "@vue/shared": "3.2.21" + "@vue/compiler-dom": "3.2.26", + "@vue/shared": "3.2.26" } }, - "@vue/ref-transform": { - "version": "3.2.21", - "resolved": "https://registry.npmjs.org/@vue/ref-transform/-/ref-transform-3.2.21.tgz", - "integrity": "sha512-uiEWWBsrGeun9O7dQExYWzXO3rHm/YdtFNXDVqCSoPypzOVxWxdiL+8hHeWzxMB58fVuV2sT80aUtIVyaBVZgQ==", + "@vue/reactivity-transform": { + "version": "3.2.26", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.26.tgz", + "integrity": "sha512-XKMyuCmzNA7nvFlYhdKwD78rcnmPb7q46uoR00zkX6yZrUmcCQ5OikiwUEVbvNhL5hBJuvbSO95jB5zkUon+eQ==", "dev": true, "requires": { - "@babel/parser": "^7.15.0", - "@vue/compiler-core": "3.2.21", - "@vue/shared": "3.2.21", + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.26", + "@vue/shared": "3.2.26", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.21", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.21.tgz", - "integrity": "sha512-5EQmIPK6gw4UVYUbM959B0uPsJ58+xoMESCZs3N89XyvJ9e+fX4pqEPrOGV8OroIk3SbEvJcC+eYc8BH9JQrHA==", + "version": "3.2.26", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.26.tgz", + "integrity": "sha512-vPV6Cq+NIWbH5pZu+V+2QHE9y1qfuTq49uNWw4f7FDEeZaDU2H2cx5jcUZOAKW7qTrUS4k6qZPbMy1x4N96nbA==", "dev": true }, "JSONStream": { @@ -1185,24 +1082,12 @@ "dev": true }, "are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", "requires": { "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "readable-stream": "^2.0.6" } }, "argparse": { @@ -1328,9 +1213,9 @@ }, "dependencies": { "acorn": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", - "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.6.0.tgz", + "integrity": "sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw==", "dev": true }, "ansi-regex": { @@ -1346,9 +1231,9 @@ "dev": true }, "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "requires": { "ms": "2.1.2" @@ -1432,20 +1317,20 @@ "dev": true }, "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.1.tgz", + "integrity": "sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA==", "requires": { - "bytes": "3.1.0", + "bytes": "3.1.1", "content-type": "~1.0.4", "debug": "2.6.9", "depd": "~1.1.2", - "http-errors": "1.7.2", + "http-errors": "1.8.1", "iconv-lite": "0.4.24", "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" + "qs": "6.9.6", + "raw-body": "2.4.2", + "type-is": "~1.6.18" } }, "boolbase": { @@ -1527,13 +1412,13 @@ } }, "browserslist": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.18.0.tgz", - "integrity": "sha512-ER2M0g5iAR84fS/zjBDqEgU6iO5fS9JI2EkHr5zxDxYEFk3LjhU9Vpp/INb6RMQphxko7PDV1FH38H/qVP5yCA==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.0.tgz", + "integrity": "sha512-JGHzm73ei2OnAcobcQ61GXNnN6vDCg5Oz5MayudL+FyzjoLnCzUWnuLtDLMIYw8aXgQzzdCZMVky+fftD5jbtA==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001280", - "electron-to-chromium": "^1.3.896", + "caniuse-lite": "^1.0.30001286", + "electron-to-chromium": "^1.4.17", "escalade": "^3.1.1", "node-releases": "^2.0.1", "picocolors": "^1.0.0" @@ -1565,9 +1450,9 @@ "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=" }, "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz", + "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==" }, "cacache": { "version": "12.0.4", @@ -1679,9 +1564,9 @@ "dev": true }, "camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.1.tgz", + "integrity": "sha512-tVI4q5jjFV5CavAU8DXfza/TJcZutVKo/5Foskmsqcm0MsL91moHvwiGNnqaa2o6PF/7yT5ikDRcVcl8Rj6LCA==", "dev": true }, "camelcase-keys": { @@ -1704,9 +1589,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001280", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001280.tgz", - "integrity": "sha512-kFXwYvHe5rix25uwueBxC569o53J6TpnGu0BEEn+6Lhl2vsnAumRFWEBhDft1fwyo6m1r4i+RqA4+163FpeFcA==", + "version": "1.0.30001286", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001286.tgz", + "integrity": "sha512-zaEMRH6xg8ESMi2eQ3R4eZ5qw/hJiVsO/HlLwniIwErij0JDr9P+8V4dtx1l+kLq6j3yy8l8W4fst1lBnat5wQ==", "dev": true }, "catharsis": { @@ -2566,9 +2451,9 @@ }, "dependencies": { "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "requires": { "ms": "2.1.2" @@ -2688,9 +2573,9 @@ "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==" }, "domhandler": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.2.tgz", - "integrity": "sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz", + "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==", "requires": { "domelementtype": "^2.2.0" } @@ -2788,9 +2673,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.896", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.896.tgz", - "integrity": "sha512-NcGkBVXePiuUrPLV8IxP43n1EOtdg+dudVjrfVEUd/bOqpQUFZ2diL5PPYzbgEhZFEltdXV3AcyKwGnEQ5lhMA==", + "version": "1.4.17", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.17.tgz", + "integrity": "sha512-zhk1MravPtq/KBhmGB7TLBILmXTgRG9TFSI3qS3DbgyfHzIl72iiTE37r/BHIbPCJJlWIo5rySyxiH4vWhu2ZA==", "dev": true }, "emittery": { @@ -2802,8 +2687,7 @@ "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "encodeurl": { "version": "1.0.2", @@ -3066,9 +2950,9 @@ "dev": true }, "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "requires": { "ms": "2.1.2" @@ -3171,9 +3055,9 @@ }, "dependencies": { "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "requires": { "ms": "2.1.2" @@ -3338,10 +3222,75 @@ "vary": "~1.1.2" }, "dependencies": { + "body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "requires": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + } + }, + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + }, "cookie": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + }, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + }, + "raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" } } }, @@ -3517,9 +3466,9 @@ } }, "follow-redirects": { - "version": "1.14.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz", - "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==" + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.6.tgz", + "integrity": "sha512-fhUl5EwSJbbl8AR+uYL2KQDxLkdSjZGR36xy46AO7cOMTrCMON6Sa28FmAnC2tRTDbd/Uuzz3aJBv7EBN7JH8A==" }, "foreground-child": { "version": "2.0.0", @@ -3599,19 +3548,18 @@ "dev": true }, "gauge": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.1.tgz", - "integrity": "sha512-6STz6KdQgxO4S/ko+AbjlFGGdGcknluoqU+79GOFCDqqyYj5OanQf9AjxwN0jCidtT+ziPMmPSt9E4hfQ0CwIQ==", + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", + "aproba": "^1.0.3", "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", "signal-exit": "^3.0.0", - "string-width": "^1.0.1 || ^2.0.0", - "strip-ansi": "^3.0.1 || ^4.0.0", - "wide-align": "^1.1.2" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" } }, "genfun": { @@ -3843,22 +3791,15 @@ "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" }, "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", "requires": { "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - } + "toidentifier": "1.0.1" } }, "http-proxy": { @@ -3960,6 +3901,12 @@ "minimatch": "^3.0.4" } }, + "immutable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0.tgz", + "integrity": "sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==", + "dev": true + }, "import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -4103,9 +4050,12 @@ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } }, "is-glob": { "version": "4.0.3", @@ -4319,9 +4269,9 @@ }, "dependencies": { "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "requires": { "ms": "2.1.2" @@ -4336,9 +4286,9 @@ } }, "istanbul-reports": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.5.tgz", - "integrity": "sha512-5+19PlhnGabNWB7kOFnuxT8H3T/iIyQzIbQMxXsURmmvKg86P2sbkrGOT77VnHw0Qr0gc2XzRaRfMZYYbSQCJQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.1.tgz", + "integrity": "sha512-q1kvhAXWSsXfMjCdNHNPKZZv94OlspKnoGv+R9RGbnqOOQ0VbNfLFgQDVgi7hHenKsndGq3/o0OBdzDXthWcNw==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -4541,9 +4491,9 @@ } }, "lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=" + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, "linkify-it": { "version": "2.2.0", @@ -5298,14 +5248,14 @@ } }, "npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", "requires": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" } }, "nth-check": { @@ -5992,14 +5942,14 @@ } }, "postcss": { - "version": "8.3.11", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz", - "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==", + "version": "8.4.5", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", + "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", "dev": true, "requires": { "nanoid": "^3.1.30", "picocolors": "^1.0.0", - "source-map-js": "^0.6.2" + "source-map-js": "^1.0.1" } }, "prelude-ls": { @@ -6141,9 +6091,9 @@ } }, "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + "version": "6.9.6", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", + "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==" }, "query-ast": { "version": "1.0.4", @@ -6176,12 +6126,12 @@ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, "raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.2.tgz", + "integrity": "sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ==", "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", + "bytes": "3.1.1", + "http-errors": "1.8.1", "iconv-lite": "0.4.24", "unpipe": "1.0.0" } @@ -6464,9 +6414,9 @@ } }, "router": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/router/-/router-1.3.5.tgz", - "integrity": "sha512-kozCJZUhuSJ5VcLhSb3F8fsmGXy+8HaDbKCAerR1G6tq3mnMZFMuSohbFvGv1c5oMFipijDjRZuuN/Sq5nMf3g==", + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/router/-/router-1.3.6.tgz", + "integrity": "sha512-gsjhou+LFApzkIP8VDrouG6Z4pqkeF11n3o5orlwPPvPTl0x7c+dbF71itKOhDoFHygmc3N3uqm55Uq/gIDUwg==", "requires": { "array-flatten": "3.0.0", "debug": "2.6.9", @@ -6481,11 +6431,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz", "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==" - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" } } }, @@ -6516,12 +6461,14 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.43.4", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.43.4.tgz", - "integrity": "sha512-/ptG7KE9lxpGSYiXn7Ar+lKOv37xfWsZRtFYal2QHNigyVQDx685VFT/h7ejVr+R8w7H4tmUgtulsKl5YpveOg==", + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.45.0.tgz", + "integrity": "sha512-ONy5bjppoohtNkFJRqdz1gscXamMzN3wQy1YH9qO2FiNpgjLhpz/IPRGg0PpCjyz/pWfCOaNEaiEGCcjOFAjqw==", "dev": true, "requires": { - "chokidar": ">=3.0.0 <4.0.0" + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" } }, "sax": { @@ -6594,10 +6541,32 @@ "statuses": "~1.5.0" }, "dependencies": { + "http-errors": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + } + }, "ms": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" } } }, @@ -6640,9 +6609,9 @@ "integrity": "sha512-edRH8mBKEWNVIVMKejNnuJxleqYE/ZSdcT8/Nem9/mmosx12pctd80s2Oy00KNZzrogMZS5mauK2/ymL1bvlvg==" }, "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, "shebang-command": { "version": "2.0.0", @@ -6666,9 +6635,9 @@ "dev": true }, "signal-exit": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", - "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.6.tgz", + "integrity": "sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==" }, "sinon": { "version": "11.1.2", @@ -6747,9 +6716,9 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "source-map-js": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz", - "integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.1.tgz", + "integrity": "sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==", "dev": true }, "source-map-resolve": { @@ -6762,9 +6731,9 @@ } }, "source-map-support": { - "version": "0.5.20", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz", - "integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==", + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -6825,9 +6794,9 @@ } }, "spdx-license-ids": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz", - "integrity": "sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==" + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", + "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" }, "spdy": { "version": "4.0.2", @@ -6842,9 +6811,9 @@ }, "dependencies": { "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "requires": { "ms": "2.1.2" } @@ -6870,9 +6839,9 @@ }, "dependencies": { "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "requires": { "ms": "2.1.2" } @@ -6944,27 +6913,13 @@ "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "requires": { - "ansi-regex": "^3.0.0" - } - } + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "string_decoder": { @@ -7062,9 +7017,9 @@ } }, "table": { - "version": "6.7.3", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.3.tgz", - "integrity": "sha512-5DkIxeA7XERBqMwJq0aHZOdMadBx4e6eDoFRuyT5VR82J0Ycg2DwM6GfA/EQAhJ+toRTaS1lIdSQCqgrmhPnlw==", + "version": "6.7.5", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.5.tgz", + "integrity": "sha512-LFNeryOqiQHqCVKzhkymKwt6ozeRhlm8IL1mE8rNUurkir4heF6PzMyRgaTa4tlyPTGGgXuvVOF/OLWiH09Lqw==", "dev": true, "requires": { "ajv": "^8.0.1", @@ -7075,9 +7030,9 @@ }, "dependencies": { "ajv": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.0.tgz", - "integrity": "sha512-L+cJ/+pkdICMueKR6wIx3VP2fjIx3yAhuvadUv/osv9yFD7OVZy442xFF+Oeu3ZvmhBGQzoF6mTSt+LUWBmGQg==", + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", + "integrity": "sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7410,9 +7365,9 @@ } }, "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" }, "token-types": { "version": "2.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index 74b33261888..e1574c350b4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.11.2", + "@ui5/builder": "^2.11.3", "@ui5/logger": "^3.0.0-next.0", "@ui5/server": "^2.4.0", "ajv": "^6.12.6", @@ -133,7 +133,7 @@ "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.0.5", + "istanbul-reports": "^3.1.1", "js-beautify": "^1.14.0", "jsdoc": "^3.6.7", "mock-require": "^3.0.3", From 44c7192636eea78ffc4bfaa00679202f64157e87 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Dec 2021 14:11:38 +0000 Subject: [PATCH 0589/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.0-next.0 to 3.0.0-alpha.0 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.0-alpha.0/CHANGELOG.md --- packages/project/package-lock.json | 6 +++--- packages/project/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fc2f5e02778..95a8dc9edb5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -716,9 +716,9 @@ } }, "@ui5/logger": { - "version": "3.0.0-next.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", - "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", + "version": "3.0.0-alpha.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-alpha.0.tgz", + "integrity": "sha512-DVsbavz3cv66ih5Jxs0hHPn1tZf4jdOZ7cp3yI6aA2BSXOQ2ATeCcXPi2hTq1QtIG3CaCYLqwQweffuSL32t2g==", "requires": { "npmlog": "^5.0.1" }, diff --git a/packages/project/package.json b/packages/project/package.json index e1574c350b4..cee5f1b47c1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ }, "dependencies": { "@ui5/builder": "^2.11.3", - "@ui5/logger": "^3.0.0-next.0", + "@ui5/logger": "^3.0.0-alpha.0", "@ui5/server": "^2.4.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From aa88810b872ab6516c51a14f3f258ff3064c8728 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Dec 2021 14:21:49 +0000 Subject: [PATCH 0590/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 2.11.3 to 3.0.0-alpha.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.0/CHANGELOG.md --- packages/project/package-lock.json | 54 ++++++++++++++++++++++++------ packages/project/package.json | 2 +- 2 files changed, 45 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 95a8dc9edb5..eb607a7562b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -654,12 +654,12 @@ "dev": true }, "@ui5/builder": { - "version": "2.11.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.11.3.tgz", - "integrity": "sha512-sS4mupTxmxTPXMPIReKFpiviW6aaykPVDc6d2cQuCeEb8rg+NMNAM1RWydKua6iLZg4Ur6MX+Qc/eIiYGLBE/Q==", + "version": "3.0.0-alpha.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.0.tgz", + "integrity": "sha512-q87t4UGMJDpuweHLslW58I6c3aDTYRCzTVoPLK8SEbmgBQ4uO8ZNGTEpCgVNc1lG6R1Bay5aEXAQhNhLJPVd2w==", "requires": { - "@ui5/fs": "^2.0.6", - "@ui5/logger": "^2.0.1", + "@ui5/fs": "^3.0.0-alpha.0", + "@ui5/logger": "^3.0.0-alpha.0", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", @@ -679,12 +679,20 @@ "yazl": "^2.5.1" }, "dependencies": { - "@ui5/logger": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.1.tgz", - "integrity": "sha512-FU5moQF9HATZEIJVQxXWRsUKMveIRJNPSmH3Mptcuc05f6gKu1BWcamDaDHXmMSyoKRounY9Aok94NTQMi7eDw==", + "@ui5/fs": { + "version": "3.0.0-alpha.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.0.tgz", + "integrity": "sha512-Juo/QBjeFOrSZeOYUTSoL4tq9GF4/tLgzRE+9VrVz0svFdMkrGwtYQLaLg4nidbPg69HgLRxCKY9NeVytv4dmg==", "requires": { - "npmlog": "^4.1.2" + "@ui5/logger": "^3.0.0-alpha.0", + "clone": "^2.1.0", + "globby": "^11.0.4", + "graceful-fs": "^4.2.8", + "make-dir": "^3.1.0", + "micromatch": "^4.0.4", + "minimatch": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^2.0.1" } } } @@ -828,6 +836,32 @@ "yesno": "^0.3.1" }, "dependencies": { + "@ui5/builder": { + "version": "2.11.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.11.3.tgz", + "integrity": "sha512-sS4mupTxmxTPXMPIReKFpiviW6aaykPVDc6d2cQuCeEb8rg+NMNAM1RWydKua6iLZg4Ur6MX+Qc/eIiYGLBE/Q==", + "requires": { + "@ui5/fs": "^2.0.6", + "@ui5/logger": "^2.0.1", + "cheerio": "1.0.0-rc.9", + "escape-unicode": "^0.2.0", + "escope": "^3.6.0", + "espree": "^6.2.1", + "globby": "^11.0.4", + "graceful-fs": "^4.2.8", + "jsdoc": "^3.6.7", + "less-openui5": "^0.11.2", + "make-dir": "^3.1.0", + "pretty-data": "^0.40.0", + "pretty-hrtime": "^1.0.3", + "replacestream": "^4.0.3", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "terser": "^5.10.0", + "xml2js": "^0.4.23", + "yazl": "^2.5.1" + } + }, "@ui5/logger": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index cee5f1b47c1..28079ee5820 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^2.11.3", + "@ui5/builder": "^3.0.0-alpha.0", "@ui5/logger": "^3.0.0-alpha.0", "@ui5/server": "^2.4.0", "ajv": "^6.12.6", From d75ec6efaed390bd4276f1bf9e4b4471d233e7cf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Dec 2021 14:26:00 +0000 Subject: [PATCH 0591/1272] [ui5-project][INTERNAL] Bump @ui5/server from 2.4.0 to 3.0.0-alpha.0 Changelog of this version: https://github.com/SAP/ui5-server/blob/v3.0.0-alpha.0/CHANGELOG.md --- packages/project/package-lock.json | 115 +++++------------------------ packages/project/package.json | 2 +- 2 files changed, 18 insertions(+), 99 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index eb607a7562b..9676e644031 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -698,29 +698,19 @@ } }, "@ui5/fs": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-2.0.6.tgz", - "integrity": "sha512-dBugwsHP7F7IrfVAaqf7FSDhknK6RhrLOpgkp7FmL/WRA02Q3FQzroFJc7CZEP4bOnAvWC3TpghOfHV2/RqR3A==", + "version": "3.0.0-alpha.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.0.tgz", + "integrity": "sha512-Juo/QBjeFOrSZeOYUTSoL4tq9GF4/tLgzRE+9VrVz0svFdMkrGwtYQLaLg4nidbPg69HgLRxCKY9NeVytv4dmg==", "requires": { - "@ui5/logger": "^2.0.1", + "@ui5/logger": "^3.0.0-alpha.0", "clone": "^2.1.0", - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", + "globby": "^11.0.4", + "graceful-fs": "^4.2.8", "make-dir": "^3.1.0", - "micromatch": "^4.0.2", + "micromatch": "^4.0.4", "minimatch": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^2.0.1" - }, - "dependencies": { - "@ui5/logger": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.1.tgz", - "integrity": "sha512-FU5moQF9HATZEIJVQxXWRsUKMveIRJNPSmH3Mptcuc05f6gKu1BWcamDaDHXmMSyoKRounY9Aok94NTQMi7eDw==", - "requires": { - "npmlog": "^4.1.2" - } - } } }, "@ui5/logger": { @@ -808,14 +798,14 @@ } }, "@ui5/server": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-2.4.0.tgz", - "integrity": "sha512-qw5BQ4Jnyk/r2SutucRDGKCgBy6bRl/6nb/ZKEpmSiGwlBMrk8zCH9nCEv4GW8Uz6nnyGqUAYTjuU9srIE08DQ==", - "requires": { - "@ui5/builder": "^2.11.1", - "@ui5/fs": "^2.0.6", - "@ui5/logger": "^2.0.1", - "body-parser": "^1.19.0", + "version": "3.0.0-alpha.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-3.0.0-alpha.0.tgz", + "integrity": "sha512-WAHtilmvNiejkLhf7Gn+HWXKF9uKppAsDz3YUwqA2/4m07M0bGGE2vH8NzDLaubuaWNEzOvKafZDDRu4tCOMWw==", + "requires": { + "@ui5/builder": "^3.0.0-alpha.0", + "@ui5/fs": "^3.0.0-alpha.0", + "@ui5/logger": "^3.0.0-alpha.0", + "body-parser": "^1.19.1", "compression": "^1.7.4", "connect-openui5": "^0.10.2", "cors": "^2.8.5", @@ -826,50 +816,14 @@ "fresh": "^0.5.2", "graceful-fs": "^4.2.8", "make-dir": "^3.1.0", - "mime-types": "^2.1.33", + "mime-types": "^2.1.34", "parseurl": "^1.3.3", "portscanner": "^2.1.1", "replacestream": "^4.0.3", - "router": "^1.3.5", + "router": "^1.3.6", "spdy": "^4.0.2", "treeify": "^1.0.1", "yesno": "^0.3.1" - }, - "dependencies": { - "@ui5/builder": { - "version": "2.11.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-2.11.3.tgz", - "integrity": "sha512-sS4mupTxmxTPXMPIReKFpiviW6aaykPVDc6d2cQuCeEb8rg+NMNAM1RWydKua6iLZg4Ur6MX+Qc/eIiYGLBE/Q==", - "requires": { - "@ui5/fs": "^2.0.6", - "@ui5/logger": "^2.0.1", - "cheerio": "1.0.0-rc.9", - "escape-unicode": "^0.2.0", - "escope": "^3.6.0", - "espree": "^6.2.1", - "globby": "^11.0.4", - "graceful-fs": "^4.2.8", - "jsdoc": "^3.6.7", - "less-openui5": "^0.11.2", - "make-dir": "^3.1.0", - "pretty-data": "^0.40.0", - "pretty-hrtime": "^1.0.3", - "replacestream": "^4.0.3", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "terser": "^5.10.0", - "xml2js": "^0.4.23", - "yazl": "^2.5.1" - } - }, - "@ui5/logger": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-2.0.1.tgz", - "integrity": "sha512-FU5moQF9HATZEIJVQxXWRsUKMveIRJNPSmH3Mptcuc05f6gKu1BWcamDaDHXmMSyoKRounY9Aok94NTQMi7eDw==", - "requires": { - "npmlog": "^4.1.2" - } - } } }, "@vue/compiler-core": { @@ -1115,15 +1069,6 @@ "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", "dev": true }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -3581,21 +3526,6 @@ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, "genfun": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", @@ -5281,17 +5211,6 @@ } } }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, "nth-check": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 28079ee5820..b5b4b68b2d6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-alpha.0", "@ui5/logger": "^3.0.0-alpha.0", - "@ui5/server": "^2.4.0", + "@ui5/server": "^3.0.0-alpha.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", From 1b84e93c1ff525912e738934cafef15dd1458881 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Dec 2021 14:29:04 +0000 Subject: [PATCH 0592/1272] [ui5-project]Release 3.0.0-alpha.0 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 0605c4e727f..c9ffb34945a 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v2.6.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.0...HEAD). + + +## [v3.0.0-alpha.0] - 2021-12-14 ## [v2.6.0] - 2021-10-19 @@ -265,6 +268,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0-alpha.0 [v2.6.0]: https://github.com/SAP/ui5-project/compare/v2.5.0...v2.6.0 [v2.5.0]: https://github.com/SAP/ui5-project/compare/v2.4.0...v2.5.0 [v2.4.0]: https://github.com/SAP/ui5-project/compare/v2.3.1...v2.4.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9676e644031..bd4986f5180 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.6.0", + "version": "3.0.0-alpha.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/packages/project/package.json b/packages/project/package.json index b5b4b68b2d6..44f3a739b53 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "2.6.0", + "version": "3.0.0-alpha.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 1079e3b8feb48a66b96ed69d9c422bb830e97166 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Dec 2021 15:54:49 +0000 Subject: [PATCH 0593/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.0-alpha.0 to 3.0.1-alpha.0 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.1-alpha.0/CHANGELOG.md --- packages/project/package-lock.json | 223 ++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 122 insertions(+), 103 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bd4986f5180..1fb58b7a265 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -694,6 +694,14 @@ "pretty-hrtime": "^1.0.3", "random-int": "^2.0.1" } + }, + "@ui5/logger": { + "version": "3.0.0-next.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", + "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", + "requires": { + "npmlog": "^5.0.1" + } } } }, @@ -711,92 +719,26 @@ "minimatch": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^2.0.1" - } - }, - "@ui5/logger": { - "version": "3.0.0-alpha.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-alpha.0.tgz", - "integrity": "sha512-DVsbavz3cv66ih5Jxs0hHPn1tZf4jdOZ7cp3yI6aA2BSXOQ2ATeCcXPi2hTq1QtIG3CaCYLqwQweffuSL32t2g==", - "requires": { - "npmlog": "^5.0.1" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "@ui5/logger": { + "version": "3.0.0-next.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", + "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, - "gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "requires": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" + "npmlog": "^5.0.1" } } } }, + "@ui5/logger": { + "version": "3.0.1-alpha.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.0.tgz", + "integrity": "sha512-6UQluslp7N/h9gWsMtyPq3OclE1wiAckkUbIVJZ1deRh/8ARzIKaBRg5jMky+15wQjSsYcWEr7xecBwrtPZQzw==", + "requires": { + "npmlog": "^5.0.1" + } + }, "@ui5/server": { "version": "3.0.0-alpha.0", "resolved": "https://registry.npmjs.org/@ui5/server/-/server-3.0.0-alpha.0.tgz", @@ -824,6 +766,16 @@ "spdy": "^4.0.2", "treeify": "^1.0.1", "yesno": "^0.3.1" + }, + "dependencies": { + "@ui5/logger": { + "version": "3.0.0-next.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", + "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", + "requires": { + "npmlog": "^5.0.1" + } + } } }, "@vue/compiler-core": { @@ -1029,7 +981,8 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true }, "ansi-styles": { "version": "4.3.0", @@ -1069,6 +1022,27 @@ "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", "dev": true }, + "are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -1932,11 +1906,6 @@ "convert-to-spaces": "^1.0.1" } }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -3526,6 +3495,37 @@ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, + "gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } + } + }, "genfun": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", @@ -4014,12 +4014,9 @@ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "is-glob": { "version": "4.0.3", @@ -5211,6 +5208,17 @@ } } }, + "npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "requires": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, "nth-check": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", @@ -5219,11 +5227,6 @@ "boolbase": "^1.0.0" } }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, "nyc": { "version": "15.1.0", "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", @@ -6866,13 +6869,28 @@ "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } } }, "string_decoder": { @@ -6887,6 +6905,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } diff --git a/packages/project/package.json b/packages/project/package.json index 44f3a739b53..e9d81dcc2f5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-alpha.0", - "@ui5/logger": "^3.0.0-alpha.0", + "@ui5/logger": "^3.0.1-alpha.0", "@ui5/server": "^3.0.0-alpha.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 8e81e55027a36f20cee704e0f267772338b56223 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 17 Jan 2022 10:46:08 +0000 Subject: [PATCH 0594/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 1551 +++++++++++++--------------- packages/project/package.json | 8 +- 2 files changed, 706 insertions(+), 853 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1fb58b7a265..296d925c575 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -5,34 +5,34 @@ "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.0.tgz", - "integrity": "sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", "requires": { - "@babel/highlight": "^7.16.0" + "@babel/highlight": "^7.16.7" } }, "@babel/compat-data": { - "version": "7.16.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.4.tgz", - "integrity": "sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q==", + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.8.tgz", + "integrity": "sha512-m7OkX0IdKLKPpBlJtF561YJal5y/jyI5fNfWbPxh2D/nbzzGI4qRyrD8xO2jB24u7l+5I2a43scCG2IrfjC50Q==", "dev": true }, "@babel/core": { - "version": "7.16.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.5.tgz", - "integrity": "sha512-wUcenlLzuWMZ9Zt8S0KmFwGlH6QKRh3vsm/dhDA3CHkiTA45YuG1XkHRcNRl73EFPXDp/d5kVOU0/y7x2w6OaQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.0", - "@babel/generator": "^7.16.5", - "@babel/helper-compilation-targets": "^7.16.3", - "@babel/helper-module-transforms": "^7.16.5", - "@babel/helpers": "^7.16.5", - "@babel/parser": "^7.16.5", - "@babel/template": "^7.16.0", - "@babel/traverse": "^7.16.5", - "@babel/types": "^7.16.0", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.7.tgz", + "integrity": "sha512-aeLaqcqThRNZYmbMqtulsetOQZ/5gbR/dWruUCJcpas4Qoyy+QeagfDsPdMrqwsPRDNxJvBlRiZxxX7THO7qtA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.16.7", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helpers": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.7", + "@babel/types": "^7.16.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -71,12 +71,12 @@ } }, "@babel/generator": { - "version": "7.16.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.5.tgz", - "integrity": "sha512-kIvCdjZqcdKqoDbVVdt5R99icaRtrtYhYK/xux5qiWCBmfdvEYMFZ68QCrpE5cbFM1JsuArUNs1ZkuKtTtUcZA==", + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.8.tgz", + "integrity": "sha512-1ojZwE9+lOXzcWdWmO6TbUzDfqLD39CmEhN8+2cX9XkDo5yW1OpgfejfliysR2AWLpMamTiOiAp/mtroaymhpw==", "dev": true, "requires": { - "@babel/types": "^7.16.0", + "@babel/types": "^7.16.8", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -90,13 +90,13 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.16.3", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz", - "integrity": "sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz", + "integrity": "sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==", "dev": true, "requires": { - "@babel/compat-data": "^7.16.0", - "@babel/helper-validator-option": "^7.14.5", + "@babel/compat-data": "^7.16.4", + "@babel/helper-validator-option": "^7.16.7", "browserslist": "^4.17.5", "semver": "^6.3.0" }, @@ -110,114 +110,114 @@ } }, "@babel/helper-environment-visitor": { - "version": "7.16.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.5.tgz", - "integrity": "sha512-ODQyc5AnxmZWm/R2W7fzhamOk1ey8gSguo5SGvF0zcB3uUzRpTRmM/jmLSm9bDMyPlvbyJ+PwPEK0BWIoZ9wjg==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", + "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", "dev": true, "requires": { - "@babel/types": "^7.16.0" + "@babel/types": "^7.16.7" } }, "@babel/helper-function-name": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz", - "integrity": "sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", + "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.16.0", - "@babel/template": "^7.16.0", - "@babel/types": "^7.16.0" + "@babel/helper-get-function-arity": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/types": "^7.16.7" } }, "@babel/helper-get-function-arity": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz", - "integrity": "sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", + "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", "dev": true, "requires": { - "@babel/types": "^7.16.0" + "@babel/types": "^7.16.7" } }, "@babel/helper-hoist-variables": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz", - "integrity": "sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", "dev": true, "requires": { - "@babel/types": "^7.16.0" + "@babel/types": "^7.16.7" } }, "@babel/helper-module-imports": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz", - "integrity": "sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", "dev": true, "requires": { - "@babel/types": "^7.16.0" + "@babel/types": "^7.16.7" } }, "@babel/helper-module-transforms": { - "version": "7.16.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.5.tgz", - "integrity": "sha512-CkvMxgV4ZyyioElFwcuWnDCcNIeyqTkCm9BxXZi73RR1ozqlpboqsbGUNvRTflgZtFbbJ1v5Emvm+lkjMYY/LQ==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.7.tgz", + "integrity": "sha512-gaqtLDxJEFCeQbYp9aLAefjhkKdjKcdh6DB7jniIGU3Pz52WAmP268zK0VgPz9hUNkMSYeH976K2/Y6yPadpng==", "dev": true, "requires": { - "@babel/helper-environment-visitor": "^7.16.5", - "@babel/helper-module-imports": "^7.16.0", - "@babel/helper-simple-access": "^7.16.0", - "@babel/helper-split-export-declaration": "^7.16.0", - "@babel/helper-validator-identifier": "^7.15.7", - "@babel/template": "^7.16.0", - "@babel/traverse": "^7.16.5", - "@babel/types": "^7.16.0" + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.7", + "@babel/types": "^7.16.7" } }, "@babel/helper-simple-access": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.0.tgz", - "integrity": "sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz", + "integrity": "sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==", "dev": true, "requires": { - "@babel/types": "^7.16.0" + "@babel/types": "^7.16.7" } }, "@babel/helper-split-export-declaration": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz", - "integrity": "sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", "dev": true, "requires": { - "@babel/types": "^7.16.0" + "@babel/types": "^7.16.7" } }, "@babel/helper-validator-identifier": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", - "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==" + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==" }, "@babel/helper-validator-option": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", - "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", "dev": true }, "@babel/helpers": { - "version": "7.16.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.5.tgz", - "integrity": "sha512-TLgi6Lh71vvMZGEkFuIxzaPsyeYCHQ5jJOOX1f0xXn0uciFuE8cEk0wyBquMcCxBXZ5BJhE2aUB7pnWTD150Tw==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.7.tgz", + "integrity": "sha512-9ZDoqtfY7AuEOt3cxchfii6C7GDyyMBffktR5B2jvWv8u2+efwvpnVKXMWzNehqy68tKgAfSwfdw/lWpthS2bw==", "dev": true, "requires": { - "@babel/template": "^7.16.0", - "@babel/traverse": "^7.16.5", - "@babel/types": "^7.16.0" + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.7", + "@babel/types": "^7.16.7" } }, "@babel/highlight": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.0.tgz", - "integrity": "sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.7.tgz", + "integrity": "sha512-aKpPMfLvGO3Q97V0qhw/V2SWNWlwfJknuwAunU7wZLSfrM4xTBvg7E5opUVi1kJTBKihE38CPg4nBiqX83PWYw==", "requires": { - "@babel/helper-validator-identifier": "^7.15.7", + "@babel/helper-validator-identifier": "^7.16.7", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -274,35 +274,35 @@ } }, "@babel/parser": { - "version": "7.16.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.5.tgz", - "integrity": "sha512-+Ce7T5iPNWzfu9C1aB5tN3Lyafs5xb3Ic7vBWyZL2KXT3QSdD1dD3CvgOzPmQKoNNRt6uauc0XwNJTQtXC2/Mw==" + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", + "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==" }, "@babel/template": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", - "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", "dev": true, "requires": { - "@babel/code-frame": "^7.16.0", - "@babel/parser": "^7.16.0", - "@babel/types": "^7.16.0" + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" } }, "@babel/traverse": { - "version": "7.16.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.5.tgz", - "integrity": "sha512-FOCODAzqUMROikDYLYxl4nmwiLlu85rNqBML/A5hKRVXG2LV8d0iMqgPzdYTcIpjZEBB7D6UDU9vxRZiriASdQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.0", - "@babel/generator": "^7.16.5", - "@babel/helper-environment-visitor": "^7.16.5", - "@babel/helper-function-name": "^7.16.0", - "@babel/helper-hoist-variables": "^7.16.0", - "@babel/helper-split-export-declaration": "^7.16.0", - "@babel/parser": "^7.16.5", - "@babel/types": "^7.16.0", + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.8.tgz", + "integrity": "sha512-xe+H7JlvKsDQwXRsBhSnq1/+9c+LlQcCK3Tn/l5sbx02HYns/cn7ibp9+RV1sIUqu7hKg91NWsgHurO9dowITQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.16.8", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.16.8", + "@babel/types": "^7.16.8", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -325,12 +325,12 @@ } }, "@babel/types": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.0.tgz", - "integrity": "sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg==", + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.8.tgz", + "integrity": "sha512-smN2DQc5s4M7fntyjGtyIPbRJv6wW4rU/94fmYJ7PKQuZkC0qGMHXJbg6sNGt12JmVr4k5YaptI/XtiLJBnmIg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.15.7", + "@babel/helper-validator-identifier": "^7.16.7", "to-fast-properties": "^2.0.0" } }, @@ -679,22 +679,6 @@ "yazl": "^2.5.1" }, "dependencies": { - "@ui5/fs": { - "version": "3.0.0-alpha.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.0.tgz", - "integrity": "sha512-Juo/QBjeFOrSZeOYUTSoL4tq9GF4/tLgzRE+9VrVz0svFdMkrGwtYQLaLg4nidbPg69HgLRxCKY9NeVytv4dmg==", - "requires": { - "@ui5/logger": "^3.0.0-alpha.0", - "clone": "^2.1.0", - "globby": "^11.0.4", - "graceful-fs": "^4.2.8", - "make-dir": "^3.1.0", - "micromatch": "^4.0.4", - "minimatch": "^3.0.3", - "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.1" - } - }, "@ui5/logger": { "version": "3.0.0-next.0", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", @@ -706,11 +690,11 @@ } }, "@ui5/fs": { - "version": "3.0.0-alpha.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.0.tgz", - "integrity": "sha512-Juo/QBjeFOrSZeOYUTSoL4tq9GF4/tLgzRE+9VrVz0svFdMkrGwtYQLaLg4nidbPg69HgLRxCKY9NeVytv4dmg==", + "version": "3.0.0-alpha.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.1.tgz", + "integrity": "sha512-j+8cJQpuM0aHLxzIzDNe7Kwr+X2n6tYeBptz/MSbvONB9u4dKVenaMpreR/Q4QUFi56UKEC0ztkpjxsU/+G5Cw==", "requires": { - "@ui5/logger": "^3.0.0-alpha.0", + "@ui5/logger": "^3.0.1-alpha.0", "clone": "^2.1.0", "globby": "^11.0.4", "graceful-fs": "^4.2.8", @@ -719,16 +703,6 @@ "minimatch": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^2.0.1" - }, - "dependencies": { - "@ui5/logger": { - "version": "3.0.0-next.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", - "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", - "requires": { - "npmlog": "^5.0.1" - } - } } }, "@ui5/logger": { @@ -779,39 +753,39 @@ } }, "@vue/compiler-core": { - "version": "3.2.26", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.26.tgz", - "integrity": "sha512-N5XNBobZbaASdzY9Lga2D9Lul5vdCIOXvUMd6ThcN8zgqQhPKfCV+wfAJNNJKQkSHudnYRO2gEB+lp0iN3g2Tw==", + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.27.tgz", + "integrity": "sha512-JyxAglSM/pb9paG5ZNuKrf5IUpzLzQA3khjWGF9oESELCLQlt6O3YyPMR2A69wIpYWrf5mScZ8YY8TJKOI/1kQ==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.26", + "@vue/shared": "3.2.27", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.26", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.26.tgz", - "integrity": "sha512-smBfaOW6mQDxcT3p9TKT6mE22vjxjJL50GFVJiI0chXYGU/xzC05QRGrW3HHVuJrmLTLx5zBhsZ2dIATERbarg==", + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.27.tgz", + "integrity": "sha512-NyQ7nEbopUBPUMHM4c3FPCbFbnQwptoPjW5Y5qfJ7hfiCNhOuhQsDNqi5JYKBxfpxiFNwjcN9F8t1AsnLrDloQ==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.26", - "@vue/shared": "3.2.26" + "@vue/compiler-core": "3.2.27", + "@vue/shared": "3.2.27" } }, "@vue/compiler-sfc": { - "version": "3.2.26", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.26.tgz", - "integrity": "sha512-ePpnfktV90UcLdsDQUh2JdiTuhV0Skv2iYXxfNMOK/F3Q+2BO0AulcVcfoksOpTJGmhhfosWfMyEaEf0UaWpIw==", + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.27.tgz", + "integrity": "sha512-WyecUhLN5UAQAr2QlmG2nA56OEnhZJaBnSw0G1tazb9rwDuK0V9tnbIXbQgmQlx+x4sJxgg61yWGcIXfilTl3A==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.26", - "@vue/compiler-dom": "3.2.26", - "@vue/compiler-ssr": "3.2.26", - "@vue/reactivity-transform": "3.2.26", - "@vue/shared": "3.2.26", + "@vue/compiler-core": "3.2.27", + "@vue/compiler-dom": "3.2.27", + "@vue/compiler-ssr": "3.2.27", + "@vue/reactivity-transform": "3.2.27", + "@vue/shared": "3.2.27", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -819,32 +793,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.26", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.26.tgz", - "integrity": "sha512-2mywLX0ODc4Zn8qBoA2PDCsLEZfpUGZcyoFRLSOjyGGK6wDy2/5kyDOWtf0S0UvtoyVq95OTSGIALjZ4k2q/ag==", + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.27.tgz", + "integrity": "sha512-+l09t319iV7HVSrXfBw9OLwMZIPOFTXmHjZ61Bc5ZcwKqOYAR4uTurKpoXAfcSc5qs/q6WdE9jY3nrP0LUEMQQ==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.26", - "@vue/shared": "3.2.26" + "@vue/compiler-dom": "3.2.27", + "@vue/shared": "3.2.27" } }, "@vue/reactivity-transform": { - "version": "3.2.26", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.26.tgz", - "integrity": "sha512-XKMyuCmzNA7nvFlYhdKwD78rcnmPb7q46uoR00zkX6yZrUmcCQ5OikiwUEVbvNhL5hBJuvbSO95jB5zkUon+eQ==", + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.27.tgz", + "integrity": "sha512-67//61ObGxGnVrPhjygocb24eYUh+TFMhkm7szm8v5XdKXjkNl7qgIOflwGvUnwuIRJmr9nZ7+PvY0fL+H2upA==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.26", - "@vue/shared": "3.2.26", + "@vue/compiler-core": "3.2.27", + "@vue/shared": "3.2.27", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.26", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.26.tgz", - "integrity": "sha512-vPV6Cq+NIWbH5pZu+V+2QHE9y1qfuTq49uNWw4f7FDEeZaDU2H2cx5jcUZOAKW7qTrUS4k6qZPbMy1x4N96nbA==", + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.27.tgz", + "integrity": "sha512-rpAn9k6O08Lvo7ekBIAnkOukX/4EsEQLPrRJBKhIEasMsOI5eX0f6mq1sDUSY7cgAqWw2d7QtP74CWxdXoyKxA==", "dev": true }, "JSONStream": { @@ -936,40 +910,6 @@ "dev": true, "requires": { "string-width": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "ansi-colors": { @@ -979,10 +919,9 @@ "dev": true }, "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, "ansi-styles": { "version": "4.3.0", @@ -1012,9 +951,9 @@ } }, "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" }, "archy": { "version": "1.0.0", @@ -1029,18 +968,6 @@ "requires": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } } }, "argparse": { @@ -1092,9 +1019,9 @@ "dev": true }, "async": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.2.tgz", - "integrity": "sha512-H0E+qZaDEfx/FY4t7iLRv1W2fFI6+pyCeTw1uN20AQPiwqwM6ojPxHxdLv4z8hi2DtnW9BOckSspLucW7pIE5g==" + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", + "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" }, "atob": { "version": "2.1.2", @@ -1166,15 +1093,9 @@ }, "dependencies": { "acorn": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.6.0.tgz", - "integrity": "sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", + "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", "dev": true }, "ansi-styles": { @@ -1205,15 +1126,6 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } } } }, @@ -1243,19 +1155,6 @@ "buffer": "^5.5.0", "inherits": "^2.0.4", "readable-stream": "^3.4.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } } }, "bluebird": { @@ -1307,38 +1206,6 @@ "wrap-ansi": "^7.0.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -1365,9 +1232,9 @@ } }, "browserslist": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.0.tgz", - "integrity": "sha512-JGHzm73ei2OnAcobcQ61GXNnN6vDCg5Oz5MayudL+FyzjoLnCzUWnuLtDLMIYw8aXgQzzdCZMVky+fftD5jbtA==", + "version": "4.19.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz", + "integrity": "sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==", "dev": true, "requires": { "caniuse-lite": "^1.0.30001286", @@ -1517,9 +1384,9 @@ "dev": true }, "camelcase": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.1.tgz", - "integrity": "sha512-tVI4q5jjFV5CavAU8DXfza/TJcZutVKo/5Foskmsqcm0MsL91moHvwiGNnqaa2o6PF/7yT5ikDRcVcl8Rj6LCA==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true }, "camelcase-keys": { @@ -1542,9 +1409,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001286", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001286.tgz", - "integrity": "sha512-zaEMRH6xg8ESMi2eQ3R4eZ5qw/hJiVsO/HlLwniIwErij0JDr9P+8V4dtx1l+kLq6j3yy8l8W4fst1lBnat5wQ==", + "version": "1.0.30001300", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001300.tgz", + "integrity": "sha512-cVjiJHWGcNlJi8TZVKNMnvMid3Z3TTdDHmLDzlOdIiZq138Exvo0G+G0wTdVYolxKb4AYwC+38pxodiInVtJSA==", "dev": true }, "catharsis": { @@ -1802,40 +1669,6 @@ "requires": { "slice-ansi": "^3.0.0", "string-width": "^4.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "cliui": { @@ -1847,40 +1680,6 @@ "string-width": "^4.2.0", "strip-ansi": "^6.0.0", "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "clone": { @@ -1978,6 +1777,11 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" } } }, @@ -1995,6 +1799,35 @@ "inherits": "^2.0.3", "readable-stream": "^2.2.2", "typedarray": "^0.0.6" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "concordance": { @@ -2057,11 +1890,11 @@ "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" }, "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "5.2.1" } }, "content-type": { @@ -2076,6 +1909,14 @@ "dev": true, "requires": { "safe-buffer": "~5.1.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } } }, "convert-to-spaces": { @@ -2107,6 +1948,11 @@ "run-queue": "^1.0.0" }, "dependencies": { + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, "mkdirp": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", @@ -2200,15 +2046,15 @@ } }, "css-select": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", - "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.2.1.tgz", + "integrity": "sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==", "requires": { "boolbase": "^1.0.0", - "css-what": "^5.0.0", - "domhandler": "^4.2.0", - "domutils": "^2.6.0", - "nth-check": "^2.0.0" + "css-what": "^5.1.0", + "domhandler": "^4.3.0", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" } }, "css-what": { @@ -2368,12 +2214,12 @@ "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" }, "depcheck": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.2.tgz", - "integrity": "sha512-oYaBLRbF5NMkYxc5rltnqtuPAn25Lx5xPBIJXy5oUVBgrEDDtotCoYUfFH8lvcmSWzgk1Ts9H+f4Rk0oWL51LQ==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.3.tgz", + "integrity": "sha512-vy8xe1tlLFu7t4jFyoirMmOR7x7N601ubU9Gkifyr9z8rjBFtEdWHDBMqXyk6OkK+94NXutzddVXJuo0JlUQKQ==", "dev": true, "requires": { - "@babel/parser": "^7.12.5", + "@babel/parser": "7.16.4", "@babel/traverse": "^7.12.5", "@vue/compiler-sfc": "^3.0.5", "camelcase": "^6.2.0", @@ -2398,6 +2244,12 @@ "yargs": "^16.1.0" }, "dependencies": { + "@babel/parser": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", + "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", + "dev": true + }, "debug": { "version": "4.3.3", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", @@ -2560,6 +2412,38 @@ "dev": true, "requires": { "readable-stream": "^2.0.2" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "duplexer3": { @@ -2577,6 +2461,35 @@ "inherits": "^2.0.1", "readable-stream": "^2.0.0", "stream-shift": "^1.0.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "editorconfig": { @@ -2621,9 +2534,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.4.17", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.17.tgz", - "integrity": "sha512-zhk1MravPtq/KBhmGB7TLBILmXTgRG9TFSI3qS3DbgyfHzIl72iiTE37r/BHIbPCJJlWIo5rySyxiH4vWhu2ZA==", + "version": "1.4.46", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.46.tgz", + "integrity": "sha512-UtV0xUA/dibCKKP2JMxOpDtXR74zABevuUEH4K0tvduFSIoxRVcYmQsbB51kXsFTX8MmOyWMt8tuZAlmDOqkrQ==", "dev": true }, "emittery": { @@ -2891,12 +2804,6 @@ "@babel/highlight": "^7.10.4" } }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, "debug": { "version": "4.3.3", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", @@ -2962,15 +2869,6 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -3134,16 +3032,16 @@ "dev": true }, "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.2.tgz", + "integrity": "sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg==", "requires": { "accepts": "~1.3.7", "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", + "body-parser": "1.19.1", + "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.0", + "cookie": "0.4.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "~1.1.2", @@ -3157,89 +3055,17 @@ "on-finished": "~2.3.0", "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", + "proxy-addr": "~2.0.7", + "qs": "6.9.6", "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", + "safe-buffer": "5.2.1", + "send": "0.17.2", + "serve-static": "1.14.2", + "setprototypeof": "1.2.0", "statuses": "~1.5.0", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" - }, - "dependencies": { - "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", - "requires": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - } - }, - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" - }, - "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" - }, - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" - }, - "raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" - }, - "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" - } } }, "ext": { @@ -3274,9 +3100,9 @@ "dev": true }, "fast-glob": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", - "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", + "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -3411,12 +3237,41 @@ "requires": { "inherits": "^2.0.3", "readable-stream": "^2.3.6" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "follow-redirects": { - "version": "1.14.6", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.6.tgz", - "integrity": "sha512-fhUl5EwSJbbl8AR+uYL2KQDxLkdSjZGR36xy46AO7cOMTrCMON6Sa28FmAnC2tRTDbd/Uuzz3aJBv7EBN7JH8A==" + "version": "1.14.7", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.7.tgz", + "integrity": "sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ==" }, "foreground-child": { "version": "2.0.0", @@ -3445,6 +3300,35 @@ "requires": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "fromentries": { @@ -3470,6 +3354,35 @@ "iferr": "^0.1.5", "imurmurhash": "^0.1.4", "readable-stream": "1 || 2" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "fs.realpath": { @@ -3509,21 +3422,6 @@ "string-width": "^4.2.3", "strip-ansi": "^6.0.1", "wide-align": "^1.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "genfun": { @@ -3613,15 +3511,15 @@ "dev": true }, "globby": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", - "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "requires": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", "slash": "^3.0.0" } }, @@ -3645,9 +3543,9 @@ } }, "graceful-fs": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", - "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" + "version": "4.2.9", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", + "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" }, "handle-thing": { "version": "2.0.1", @@ -3675,6 +3573,14 @@ "dev": true, "requires": { "ansi-regex": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + } } }, "has-flag": { @@ -3725,6 +3631,35 @@ "obuf": "^1.0.0", "readable-stream": "^2.0.1", "wbuf": "^1.1.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "html-escaper": { @@ -3847,9 +3782,9 @@ "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" }, "ignore": { - "version": "5.1.9", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.9.tgz", - "integrity": "sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==" + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==" }, "ignore-by-default": { "version": "2.0.0", @@ -3896,9 +3831,9 @@ "dev": true }, "import-local": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.3.tgz", - "integrity": "sha512-bE9iaUY3CXH8Cwfan/abDKAxe1KGT9kyGsBPqf6DMK/z0a2OzAsrukeYNgIH6cH5Xr452jb1TUL8rSfCLjZ9uA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", "dev": true, "requires": { "pkg-dir": "^4.2.0", @@ -3989,9 +3924,9 @@ } }, "is-core-module": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", - "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", + "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", "requires": { "has": "^1.0.3" } @@ -4247,9 +4182,9 @@ } }, "istanbul-reports": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.1.tgz", - "integrity": "sha512-q1kvhAXWSsXfMjCdNHNPKZZv94OlspKnoGv+R9RGbnqOOQ0VbNfLFgQDVgi7hHenKsndGq3/o0OBdzDXthWcNw==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.3.tgz", + "integrity": "sha512-x9LtDVtfm/t1GFiLl3NffC7hz+I1ragvgX1P/Lg1NlIagifZDKUkuuaAxH/qpwj2IuEfD8G2Bs/UKp+sZ/pKkg==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -4964,6 +4899,11 @@ "run-queue": "^1.0.3" }, "dependencies": { + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, "mkdirp": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", @@ -5001,9 +4941,9 @@ } }, "nanoid": { - "version": "3.1.30", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz", - "integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.2.0.tgz", + "integrity": "sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA==", "dev": true }, "natural-compare": { @@ -5196,11 +5136,6 @@ "yallist": "^3.0.2" } }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, "yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", @@ -5262,12 +5197,6 @@ "yargs": "^15.0.2" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, "camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -5295,12 +5224,6 @@ "path-exists": "^4.0.0" } }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -5334,26 +5257,6 @@ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -5488,23 +5391,6 @@ "log-symbols": "^4.1.0", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "os-homedir": { @@ -5705,6 +5591,35 @@ "cyclist": "^1.0.1", "inherits": "^2.0.3", "readable-stream": "^2.1.5" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "parent-module": { @@ -5783,9 +5698,9 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "peek-readable": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.1.tgz", - "integrity": "sha512-7qmhptnR0WMSpxT5rMHG9bW/mYSR1uqaPFj2MHvT+y/aOUu6msJijpKt5SkTDKySwg65OWG2JwTMBlgcbwMHrQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.2.tgz", + "integrity": "sha512-9fMaz6zoxw9ypO1KZy5RDJgSupEtu0Q+g/OqqsVHX3rKGR8qehRLYzsFARZ4bVvdvfknKiXvuDbkMnO1g6cRpQ==", "dev": true }, "picocolors": { @@ -5795,9 +5710,9 @@ "dev": true }, "picomatch": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==" + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" }, "pify": { "version": "4.0.1", @@ -6171,17 +6086,13 @@ } }, "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } }, "readable-web-to-node-stream": { @@ -6268,6 +6179,33 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } } } }, @@ -6309,12 +6247,13 @@ } }, "resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.0.tgz", + "integrity": "sha512-3wCbTpk5WJlyE4mSOtDLhqQmGFi0/TD9VPwmiolnk8U0wRgMEktqCXd3vy5buTO3tljvalNvKrjHEfrd2WpEKA==", "requires": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" + "is-core-module": "^2.8.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" } }, "resolve-cwd": { @@ -6404,12 +6343,19 @@ "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", "requires": { "aproba": "^1.1.1" + }, + "dependencies": { + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + } } }, "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safer-buffer": { "version": "2.1.2", @@ -6417,9 +6363,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.45.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.45.0.tgz", - "integrity": "sha512-ONy5bjppoohtNkFJRqdz1gscXamMzN3wQy1YH9qO2FiNpgjLhpz/IPRGg0PpCjyz/pWfCOaNEaiEGCcjOFAjqw==", + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.48.0.tgz", + "integrity": "sha512-hQi5g4DcfjcipotoHZ80l7GNJHGqQS5LwMBjVYB/TaT0vcSSpbgM8Ad7cgfsB2M0MinbkEQQPO9+sjjSiwxqmw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -6478,9 +6424,9 @@ } }, "send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "version": "0.17.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", + "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", "requires": { "debug": "2.6.9", "depd": "~1.1.2", @@ -6489,40 +6435,18 @@ "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "~1.7.2", + "http-errors": "1.8.1", "mime": "1.6.0", - "ms": "2.1.1", + "ms": "2.1.3", "on-finished": "~2.3.0", "range-parser": "~1.2.1", "statuses": "~1.5.0" }, "dependencies": { - "http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" - }, - "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" } } }, @@ -6544,14 +6468,14 @@ } }, "serve-static": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", + "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", "requires": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.1" + "send": "0.17.2" } }, "set-blocking": { @@ -6623,14 +6547,6 @@ "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", "is-fullwidth-code-point": "^3.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - } } }, "smart-buffer": { @@ -6806,16 +6722,6 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } } } }, @@ -6876,38 +6782,22 @@ "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "requires": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" } }, "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "^5.0.1" } }, "strip-bom": { @@ -6953,12 +6843,6 @@ "strip-ansi": "^6.0.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -6968,15 +6852,6 @@ "argparse": "^1.0.7", "esprima": "^4.0.0" } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } } } }, @@ -6988,10 +6863,15 @@ "has-flag": "^4.0.0" } }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, "table": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.5.tgz", - "integrity": "sha512-LFNeryOqiQHqCVKzhkymKwt6ozeRhlm8IL1mE8rNUurkir4heF6PzMyRgaTa4tlyPTGGgXuvVOF/OLWiH09Lqw==", + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", + "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", "dev": true, "requires": { "ajv": "^8.0.1", @@ -7002,9 +6882,9 @@ }, "dependencies": { "ajv": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", - "integrity": "sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==", + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz", + "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7013,18 +6893,6 @@ "uri-js": "^4.2.2" } }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, "json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", @@ -7041,26 +6909,6 @@ "astral-regex": "^2.0.0", "is-fullwidth-code-point": "^3.0.0" } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } } } }, @@ -7081,6 +6929,12 @@ "tap-parser": "^3.0.3" }, "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", @@ -7120,6 +6974,15 @@ "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", "dev": true }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, "supports-color": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", @@ -7151,6 +7014,39 @@ "argparse": "^1.0.7", "esprima": "^4.0.0" } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } } } }, @@ -7178,6 +7074,39 @@ "esprima": "^4.0.0" } }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, "tap-parser": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", @@ -7223,11 +7152,6 @@ "minimist": "^1.2.5" } }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, "yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", @@ -7308,6 +7232,35 @@ "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "time-zone": { @@ -7435,9 +7388,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "underscore": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.1.tgz", - "integrity": "sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.2.tgz", + "integrity": "sha512-ekY1NhRzq0B08g4bGuX4wd2jZx5GnKz6mKSqFL4nqBlfyMGiG10gDFhDTMEfYmDL6Jy0FUIZp7wiRB+0BP7J2g==" }, "unique-filename": { "version": "1.1.1", @@ -7604,40 +7557,6 @@ "dev": true, "requires": { "string-width": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "word-wrap": { @@ -7655,40 +7574,6 @@ "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "wrappy": { @@ -7769,38 +7654,6 @@ "yargs-parser": "^20.2.2" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, "y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index e9d81dcc2f5..9367ebf84e5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -108,7 +108,7 @@ "ajv-errors": "^1.0.1", "chalk": "^4.1.2", "escape-string-regexp": "^4.0.0", - "graceful-fs": "^4.2.8", + "graceful-fs": "^4.2.9", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", @@ -117,7 +117,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^5.2.0", "read-pkg-up": "^7.0.1", - "resolve": "^1.20.0", + "resolve": "^1.21.0", "rimraf": "^3.0.2", "semver": "^7.3.5" }, @@ -125,7 +125,7 @@ "ava": "^3.15.0", "chokidar-cli": "^2.1.0", "cross-env": "^7.0.3", - "depcheck": "^1.4.2", + "depcheck": "^1.4.3", "docdash": "^1.2.0", "eslint": "^7.32.0", "eslint-config-google": "^0.14.0", @@ -133,7 +133,7 @@ "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.1.1", + "istanbul-reports": "^3.1.3", "js-beautify": "^1.14.0", "jsdoc": "^3.6.7", "mock-require": "^3.0.3", From ab5876544051ecc4ab80b2930c48f3bfee9113bf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 19 Jan 2022 15:07:19 +0000 Subject: [PATCH 0595/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 11032 +++++++++++++++++++++++++-- 1 file changed, 10483 insertions(+), 549 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 296d925c575..6f355773e41 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,8 +1,9873 @@ { "name": "@ui5/project", "version": "3.0.0-alpha.0", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "@ui5/project", + "version": "3.0.0-alpha.0", + "license": "Apache-2.0", + "dependencies": { + "@ui5/builder": "^3.0.0-alpha.0", + "@ui5/logger": "^3.0.1-alpha.0", + "@ui5/server": "^3.0.0-alpha.0", + "ajv": "^6.12.6", + "ajv-errors": "^1.0.1", + "chalk": "^4.1.2", + "escape-string-regexp": "^4.0.0", + "graceful-fs": "^4.2.9", + "js-yaml": "^4.1.0", + "libnpmconfig": "^1.2.1", + "lockfile": "^1.0.4", + "mkdirp": "^1.0.4", + "pacote": "^9.5.12", + "pretty-hrtime": "^1.0.3", + "read-pkg": "^5.2.0", + "read-pkg-up": "^7.0.1", + "resolve": "^1.21.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5" + }, + "devDependencies": { + "ava": "^3.15.0", + "chokidar-cli": "^2.1.0", + "cross-env": "^7.0.3", + "depcheck": "^1.4.3", + "docdash": "^1.2.0", + "eslint": "^7.32.0", + "eslint-config-google": "^0.14.0", + "eslint-plugin-jsdoc": "^35.5.1", + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-report": "^3.0.0", + "istanbul-reports": "^3.1.3", + "js-beautify": "^1.14.0", + "jsdoc": "^3.6.7", + "mock-require": "^3.0.3", + "nyc": "^15.1.0", + "open-cli": "^6.0.1", + "sinon": "^11.1.2", + "tap-nyan": "^1.1.0", + "tap-xunit": "^2.4.1" + }, + "engines": { + "node": ">= 10", + "npm": ">= 5" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "dependencies": { + "@babel/highlight": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.8.tgz", + "integrity": "sha512-m7OkX0IdKLKPpBlJtF561YJal5y/jyI5fNfWbPxh2D/nbzzGI4qRyrD8xO2jB24u7l+5I2a43scCG2IrfjC50Q==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.7.tgz", + "integrity": "sha512-aeLaqcqThRNZYmbMqtulsetOQZ/5gbR/dWruUCJcpas4Qoyy+QeagfDsPdMrqwsPRDNxJvBlRiZxxX7THO7qtA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.16.7", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helpers": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.7", + "@babel/types": "^7.16.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/@babel/parser": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", + "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.8.tgz", + "integrity": "sha512-1ojZwE9+lOXzcWdWmO6TbUzDfqLD39CmEhN8+2cX9XkDo5yW1OpgfejfliysR2AWLpMamTiOiAp/mtroaymhpw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.8", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz", + "integrity": "sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.16.4", + "@babel/helper-validator-option": "^7.16.7", + "browserslist": "^4.17.5", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", + "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", + "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", + "dev": true, + "dependencies": { + "@babel/helper-get-function-arity": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-get-function-arity": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", + "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.7.tgz", + "integrity": "sha512-gaqtLDxJEFCeQbYp9aLAefjhkKdjKcdh6DB7jniIGU3Pz52WAmP268zK0VgPz9hUNkMSYeH976K2/Y6yPadpng==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz", + "integrity": "sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.7.tgz", + "integrity": "sha512-9ZDoqtfY7AuEOt3cxchfii6C7GDyyMBffktR5B2jvWv8u2+efwvpnVKXMWzNehqy68tKgAfSwfdw/lWpthS2bw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.7.tgz", + "integrity": "sha512-aKpPMfLvGO3Q97V0qhw/V2SWNWlwfJknuwAunU7wZLSfrM4xTBvg7E5opUVi1kJTBKihE38CPg4nBiqX83PWYw==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", + "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/template": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/parser": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", + "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.8.tgz", + "integrity": "sha512-xe+H7JlvKsDQwXRsBhSnq1/+9c+LlQcCK3Tn/l5sbx02HYns/cn7ibp9+RV1sIUqu7hKg91NWsgHurO9dowITQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.16.8", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.16.8", + "@babel/types": "^7.16.8", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/parser": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", + "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/types": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.8.tgz", + "integrity": "sha512-smN2DQc5s4M7fntyjGtyIPbRJv6wW4rU/94fmYJ7PKQuZkC0qGMHXJbg6sNGt12JmVr4k5YaptI/XtiLJBnmIg==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@concordance/react": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@concordance/react/-/react-2.0.0.tgz", + "integrity": "sha512-huLSkUuM2/P+U0uy2WwlKuixMsTODD8p4JVQBI4VKeopkiN0C7M3N9XYVawb4M+4spN5RrO/eLhk7KoQX6nsfA==", + "dev": true, + "dependencies": { + "arrify": "^1.0.1" + }, + "engines": { + "node": ">=6.12.3 <7 || >=8.9.4 <9 || >=10.0.0" + } + }, + "node_modules/@concordance/react/node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@es-joy/jsdoccomment": { + "version": "0.9.0-alpha.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.9.0-alpha.1.tgz", + "integrity": "sha512-Clxxc0PwpISoYYBibA+1L2qFJ7gvFVhI2Hos87S06K+Q0cXdOhZQJNKWuaQGPAeHjZEuUB/YoWOfwjuF2wirqA==", + "dev": true, + "dependencies": { + "comment-parser": "1.1.6-beta.0", + "esquery": "^1.4.0", + "jsdoc-type-pratt-parser": "1.0.4" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@es-joy/jsdoccomment/node_modules/jsdoc-type-pratt-parser": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.0.4.tgz", + "integrity": "sha512-jzmW9gokeq9+bHPDR1nCeidMyFUikdZlbOhKzh9+/nJqB75XhpNKec1/UuxW5c4+O+Pi31Gc/dCboyfSm/pSpQ==", + "dev": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@eslint/eslintrc/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@eslint/eslintrc/node_modules/espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "dependencies": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", + "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", + "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz", + "integrity": "sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@sinonjs/samsam": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-6.0.2.tgz", + "integrity": "sha512-jxPRPp9n93ci7b8hMfJOFDPRLFYadN6FSpeROFTR4UNF4i5b+EK6m4QXPO46BDhFgRy1JuS87zAnFOzCUwMJcQ==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.6.0", + "lodash.get": "^4.4.2", + "type-detect": "^4.0.8" + } + }, + "node_modules/@sinonjs/text-encoding": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", + "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "dev": true + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@tokenizer/token": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", + "dev": true + }, + "node_modules/@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", + "dev": true + }, + "node_modules/@types/minimist": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", + "dev": true + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "node_modules/@ui5/builder": { + "version": "3.0.0-alpha.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.0.tgz", + "integrity": "sha512-q87t4UGMJDpuweHLslW58I6c3aDTYRCzTVoPLK8SEbmgBQ4uO8ZNGTEpCgVNc1lG6R1Bay5aEXAQhNhLJPVd2w==", + "dependencies": { + "@ui5/fs": "^3.0.0-alpha.0", + "@ui5/logger": "^3.0.0-alpha.0", + "cheerio": "1.0.0-rc.9", + "escape-unicode": "^0.2.0", + "escope": "^3.6.0", + "espree": "^6.2.1", + "globby": "^11.0.4", + "graceful-fs": "^4.2.8", + "jsdoc": "^3.6.7", + "less-openui5": "^0.11.2", + "make-dir": "^3.1.0", + "pretty-data": "^0.40.0", + "pretty-hrtime": "^1.0.3", + "replacestream": "^4.0.3", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "terser": "^5.10.0", + "xml2js": "^0.4.23", + "yazl": "^2.5.1" + }, + "engines": { + "node": ">= 10", + "npm": ">= 5" + } + }, + "node_modules/@ui5/builder/node_modules/@ui5/logger": { + "version": "3.0.0-next.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", + "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", + "dependencies": { + "npmlog": "^5.0.1" + }, + "engines": { + "node": ">= 10", + "npm": ">= 5" + } + }, + "node_modules/@ui5/fs": { + "version": "3.0.0-alpha.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.1.tgz", + "integrity": "sha512-j+8cJQpuM0aHLxzIzDNe7Kwr+X2n6tYeBptz/MSbvONB9u4dKVenaMpreR/Q4QUFi56UKEC0ztkpjxsU/+G5Cw==", + "dependencies": { + "@ui5/logger": "^3.0.1-alpha.0", + "clone": "^2.1.0", + "globby": "^11.0.4", + "graceful-fs": "^4.2.8", + "make-dir": "^3.1.0", + "micromatch": "^4.0.4", + "minimatch": "^3.0.3", + "pretty-hrtime": "^1.0.3", + "random-int": "^2.0.1" + }, + "engines": { + "node": ">= 10", + "npm": ">= 5" + } + }, + "node_modules/@ui5/logger": { + "version": "3.0.1-alpha.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.0.tgz", + "integrity": "sha512-6UQluslp7N/h9gWsMtyPq3OclE1wiAckkUbIVJZ1deRh/8ARzIKaBRg5jMky+15wQjSsYcWEr7xecBwrtPZQzw==", + "dependencies": { + "npmlog": "^5.0.1" + }, + "engines": { + "node": ">= 10", + "npm": ">= 5" + } + }, + "node_modules/@ui5/server": { + "version": "3.0.0-alpha.0", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-3.0.0-alpha.0.tgz", + "integrity": "sha512-WAHtilmvNiejkLhf7Gn+HWXKF9uKppAsDz3YUwqA2/4m07M0bGGE2vH8NzDLaubuaWNEzOvKafZDDRu4tCOMWw==", + "dependencies": { + "@ui5/builder": "^3.0.0-alpha.0", + "@ui5/fs": "^3.0.0-alpha.0", + "@ui5/logger": "^3.0.0-alpha.0", + "body-parser": "^1.19.1", + "compression": "^1.7.4", + "connect-openui5": "^0.10.2", + "cors": "^2.8.5", + "devcert-sanscache": "^0.4.8", + "escape-html": "^1.0.3", + "etag": "^1.8.1", + "express": "^4.17.1", + "fresh": "^0.5.2", + "graceful-fs": "^4.2.8", + "make-dir": "^3.1.0", + "mime-types": "^2.1.34", + "parseurl": "^1.3.3", + "portscanner": "^2.1.1", + "replacestream": "^4.0.3", + "router": "^1.3.6", + "spdy": "^4.0.2", + "treeify": "^1.0.1", + "yesno": "^0.3.1" + }, + "engines": { + "node": ">= 10", + "npm": ">= 5" + } + }, + "node_modules/@ui5/server/node_modules/@ui5/logger": { + "version": "3.0.0-next.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", + "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", + "dependencies": { + "npmlog": "^5.0.1" + }, + "engines": { + "node": ">= 10", + "npm": ">= 5" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.27.tgz", + "integrity": "sha512-JyxAglSM/pb9paG5ZNuKrf5IUpzLzQA3khjWGF9oESELCLQlt6O3YyPMR2A69wIpYWrf5mScZ8YY8TJKOI/1kQ==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/shared": "3.2.27", + "estree-walker": "^2.0.2", + "source-map": "^0.6.1" + } + }, + "node_modules/@vue/compiler-core/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.27.tgz", + "integrity": "sha512-NyQ7nEbopUBPUMHM4c3FPCbFbnQwptoPjW5Y5qfJ7hfiCNhOuhQsDNqi5JYKBxfpxiFNwjcN9F8t1AsnLrDloQ==", + "dev": true, + "dependencies": { + "@vue/compiler-core": "3.2.27", + "@vue/shared": "3.2.27" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.27.tgz", + "integrity": "sha512-WyecUhLN5UAQAr2QlmG2nA56OEnhZJaBnSw0G1tazb9rwDuK0V9tnbIXbQgmQlx+x4sJxgg61yWGcIXfilTl3A==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.27", + "@vue/compiler-dom": "3.2.27", + "@vue/compiler-ssr": "3.2.27", + "@vue/reactivity-transform": "3.2.27", + "@vue/shared": "3.2.27", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7", + "postcss": "^8.1.10", + "source-map": "^0.6.1" + } + }, + "node_modules/@vue/compiler-sfc/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.27.tgz", + "integrity": "sha512-+l09t319iV7HVSrXfBw9OLwMZIPOFTXmHjZ61Bc5ZcwKqOYAR4uTurKpoXAfcSc5qs/q6WdE9jY3nrP0LUEMQQ==", + "dev": true, + "dependencies": { + "@vue/compiler-dom": "3.2.27", + "@vue/shared": "3.2.27" + } + }, + "node_modules/@vue/reactivity-transform": { + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.27.tgz", + "integrity": "sha512-67//61ObGxGnVrPhjygocb24eYUh+TFMhkm7szm8v5XdKXjkNl7qgIOflwGvUnwuIRJmr9nZ7+PvY0fL+H2upA==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.27", + "@vue/shared": "3.2.27", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7" + } + }, + "node_modules/@vue/shared": { + "version": "3.2.27", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.27.tgz", + "integrity": "sha512-rpAn9k6O08Lvo7ekBIAnkOukX/4EsEQLPrRJBKhIEasMsOI5eX0f6mq1sDUSY7cgAqWw2d7QtP74CWxdXoyKxA==", + "dev": true + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dependencies": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", + "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "dependencies": { + "es6-promisify": "^5.0.0" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", + "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "peerDependencies": { + "ajv": ">=5.0.0" + } + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dev": true, + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/append-transform": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", + "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", + "dev": true, + "dependencies": { + "default-require-extensions": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" + }, + "node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, + "node_modules/are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/array-differ": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", + "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/arrgv": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/arrgv/-/arrgv-1.0.2.tgz", + "integrity": "sha512-a4eg4yhp7mmruZDQFqVMlxNRFGi/i1r87pt8SDHy0/I8PqSXoUTlWZRdAZo0VXgvEARcujbtTk8kiZRi1uDGRw==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", + "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/ava": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-3.15.0.tgz", + "integrity": "sha512-HGAnk1SHPk4Sx6plFAUkzV/XC1j9+iQhOzt4vBly18/yo0AV8Oytx7mtJd/CR8igCJ5p160N/Oo/cNJi2uSeWA==", + "dev": true, + "dependencies": { + "@concordance/react": "^2.0.0", + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "ansi-styles": "^5.0.0", + "arrgv": "^1.0.2", + "arrify": "^2.0.1", + "callsites": "^3.1.0", + "chalk": "^4.1.0", + "chokidar": "^3.4.3", + "chunkd": "^2.0.1", + "ci-info": "^2.0.0", + "ci-parallel-vars": "^1.0.1", + "clean-yaml-object": "^0.1.0", + "cli-cursor": "^3.1.0", + "cli-truncate": "^2.1.0", + "code-excerpt": "^3.0.0", + "common-path-prefix": "^3.0.0", + "concordance": "^5.0.1", + "convert-source-map": "^1.7.0", + "currently-unhandled": "^0.4.1", + "debug": "^4.3.1", + "del": "^6.0.0", + "emittery": "^0.8.0", + "equal-length": "^1.0.0", + "figures": "^3.2.0", + "globby": "^11.0.1", + "ignore-by-default": "^2.0.0", + "import-local": "^3.0.2", + "indent-string": "^4.0.0", + "is-error": "^2.2.2", + "is-plain-object": "^5.0.0", + "is-promise": "^4.0.0", + "lodash": "^4.17.20", + "matcher": "^3.0.0", + "md5-hex": "^3.0.1", + "mem": "^8.0.0", + "ms": "^2.1.3", + "ora": "^5.2.0", + "p-event": "^4.2.0", + "p-map": "^4.0.0", + "picomatch": "^2.2.2", + "pkg-conf": "^3.1.0", + "plur": "^4.0.0", + "pretty-ms": "^7.0.1", + "read-pkg": "^5.2.0", + "resolve-cwd": "^3.0.0", + "slash": "^3.0.0", + "source-map-support": "^0.5.19", + "stack-utils": "^2.0.3", + "strip-ansi": "^6.0.0", + "supertap": "^2.0.0", + "temp-dir": "^2.0.0", + "trim-off-newlines": "^1.0.1", + "update-notifier": "^5.0.1", + "write-file-atomic": "^3.0.3", + "yargs": "^16.2.0" + }, + "bin": { + "ava": "cli.js" + }, + "engines": { + "node": ">=10.18.0 <11 || >=12.14.0 <12.17.0 || >=12.17.0 <13 || >=14.0.0 <15 || >=15" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "node_modules/blueimp-md5": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.19.0.tgz", + "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", + "dev": true + }, + "node_modules/body-parser": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.1.tgz", + "integrity": "sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA==", + "dependencies": { + "bytes": "3.1.1", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.9.6", + "raw-body": "2.4.2", + "type-is": "~1.6.18" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dev": true, + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boxen/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.19.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz", + "integrity": "sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==", + "dev": true, + "dependencies": { + "caniuse-lite": "^1.0.30001286", + "electron-to-chromium": "^1.4.17", + "escalade": "^3.1.1", + "node-releases": "^2.0.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=" + }, + "node_modules/bytes": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz", + "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "dependencies": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/cacache/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/cacache/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/cacache/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cacheable-request/node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/caching-transform": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", + "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", + "dev": true, + "dependencies": { + "hasha": "^5.0.0", + "make-dir": "^3.0.0", + "package-hash": "^4.0.0", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-keys/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001300", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001300.tgz", + "integrity": "sha512-cVjiJHWGcNlJi8TZVKNMnvMid3Z3TTdDHmLDzlOdIiZq138Exvo0G+G0wTdVYolxKb4AYwC+38pxodiInVtJSA==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/catharsis": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.9.0.tgz", + "integrity": "sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==", + "dependencies": { + "lodash": "^4.17.15" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chalk/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/chalk/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/chalk/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/cheerio": { + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.9.tgz", + "integrity": "sha512-QF6XVdrLONO6DXRF5iaolY+odmhj2CLj+xzNod7INPWMi/x9X4SOylH0S/vaPpX+AUU6t04s34SQNh7DbkuCng==", + "dependencies": { + "cheerio-select": "^1.4.0", + "dom-serializer": "^1.3.1", + "domhandler": "^4.2.0", + "htmlparser2": "^6.1.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.5.0.tgz", + "integrity": "sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==", + "dependencies": { + "css-select": "^4.1.3", + "css-what": "^5.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0", + "domutils": "^2.7.0" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar-cli": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-2.1.0.tgz", + "integrity": "sha512-6n21AVpW6ywuEPoxJcLXMA2p4T+SLjWsXKny/9yTWFz0kKxESI3eUylpeV97LylING/27T/RVTY0f2/0QaWq9Q==", + "dev": true, + "dependencies": { + "chokidar": "^3.2.3", + "lodash.debounce": "^4.0.8", + "lodash.throttle": "^4.1.1", + "yargs": "^13.3.0" + }, + "bin": { + "chokidar": "index.js" + }, + "engines": { + "node": ">= 8.10.0" + } + }, + "node_modules/chokidar-cli/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chokidar-cli/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "dependencies": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "node_modules/chokidar-cli/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "node_modules/chokidar-cli/node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/chokidar-cli/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/chokidar-cli/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "dependencies": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "node_modules/chokidar-cli/node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "node_modules/chunkd": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/chunkd/-/chunkd-2.0.1.tgz", + "integrity": "sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==", + "dev": true + }, + "node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "node_modules/ci-parallel-vars": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ci-parallel-vars/-/ci-parallel-vars-1.0.1.tgz", + "integrity": "sha512-uvzpYrpmidaoxvIQHM+rKSrigjOe9feHYbw4uOI2gdfe1C3xIlxO+kVXq83WQWNniTf8bAxVpy+cQeFQsMERKg==", + "dev": true + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/clean-yaml-object": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", + "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", + "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + } + }, + "node_modules/code-excerpt": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-3.0.0.tgz", + "integrity": "sha512-VHNTVhd7KsLGOqfX3SyeO8RyYPMp1GJOg194VITk04WMYCv4plV68YWe6TJZxd9MhobjtpMRnVky01gqZsalaw==", + "dev": true, + "dependencies": { + "convert-to-spaces": "^1.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/command-exists": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", + "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==" + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/comment-parser": { + "version": "1.1.6-beta.0", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.1.6-beta.0.tgz", + "integrity": "sha512-q3cA8TSMyqW7wcPSYWzbO/rMahnXgzs4SLG/UIWXdEsnXTFPZkEkWAdNgPiHig2OzxgpPLOh4WwsmClDxndwHw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "dev": true + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/concat-stream/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/concat-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/concordance": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.4.tgz", + "integrity": "sha512-OAcsnTEYu1ARJqWVGwf4zh4JDfHZEaSNlNccFmt8YjB2l/n19/PF2viLINHc57vO4FKIAFl2FWASIGZZWZ2Kxw==", + "dev": true, + "dependencies": { + "date-time": "^3.1.0", + "esutils": "^2.0.3", + "fast-diff": "^1.2.0", + "js-string-escape": "^1.0.1", + "lodash": "^4.17.15", + "md5-hex": "^3.0.1", + "semver": "^7.3.2", + "well-known-symbols": "^2.0.0" + }, + "engines": { + "node": ">=10.18.0 <11 || >=12.14.0 <13 || >=14" + } + }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dev": true, + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dev": true, + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/connect-openui5": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.10.2.tgz", + "integrity": "sha512-41c5WbJIMvQlexQYG7++bmXePPQ+EoFKtkGRWPTXFo1BmYIQxp5JE84tTbonhOKfyRut/LgRVGp+sv/UjZqkew==", + "dependencies": { + "async": "^3.2.0", + "cookie": "^0.4.1", + "extend": "^3.0.0", + "glob": "^7.1.6", + "http-proxy": "^1.18.1", + "less-openui5": "^0.11.0", + "set-cookie-parser": "^2.4.8" + }, + "engines": { + "node": ">= 10", + "npm": ">= 5" + } + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-disposition/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/convert-to-spaces": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", + "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "node_modules/copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dependencies": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, + "node_modules/copy-concurrently/node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "node_modules/copy-concurrently/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/copy-concurrently/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", + "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "dev": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "bin": { + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", + "dependencies": { + "inherits": "^2.0.4", + "source-map": "^0.6.1", + "source-map-resolve": "^0.6.0" + } + }, + "node_modules/css-select": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.2.1.tgz", + "integrity": "sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^5.1.0", + "domhandler": "^4.3.0", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", + "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "dependencies": { + "array-find-index": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=" + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/date-time": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/date-time/-/date-time-3.1.0.tgz", + "integrity": "sha512-uqCUKXE5q1PNBXjPqvwhwJf9SwMoAHBgWJ6DcrnS5o+W2JOiIILl0JEdVD8SGujrNS02GGxgwAg2PN2zONgtjg==", + "dev": true, + "dependencies": { + "time-zone": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/debug/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/default-require-extensions": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz", + "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==", + "dev": true, + "dependencies": { + "strip-bom": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + } + }, + "node_modules/defaults/node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, + "node_modules/del": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "dev": true, + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "node_modules/depcheck": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.3.tgz", + "integrity": "sha512-vy8xe1tlLFu7t4jFyoirMmOR7x7N601ubU9Gkifyr9z8rjBFtEdWHDBMqXyk6OkK+94NXutzddVXJuo0JlUQKQ==", + "dev": true, + "dependencies": { + "@babel/parser": "7.16.4", + "@babel/traverse": "^7.12.5", + "@vue/compiler-sfc": "^3.0.5", + "camelcase": "^6.2.0", + "cosmiconfig": "^7.0.0", + "debug": "^4.2.0", + "deps-regex": "^0.1.4", + "ignore": "^5.1.8", + "is-core-module": "^2.4.0", + "js-yaml": "^3.14.0", + "json5": "^2.1.3", + "lodash": "^4.17.20", + "minimatch": "^3.0.4", + "multimatch": "^5.0.0", + "please-upgrade-node": "^3.2.0", + "query-ast": "^1.0.3", + "readdirp": "^3.5.0", + "require-package-name": "^2.0.1", + "resolve": "^1.18.1", + "sass": "^1.29.0", + "scss-parser": "^1.0.4", + "semver": "^7.3.2", + "yargs": "^16.1.0" + }, + "bin": { + "depcheck": "bin/depcheck.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/depcheck/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/depcheck/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/deps-regex": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", + "integrity": "sha1-UYZnt2kUYKXn4KNBvnbrfOgJAYQ=", + "dev": true + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, + "node_modules/devcert-sanscache": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.8.tgz", + "integrity": "sha512-AcuD5yTpKdY5VnZdADR2wIZMOaEqNQnIEIxuvSzu7iAWLh/I/g3Bhm6FebUby1tfd6RGtPwN5/Gp0nNT67ZSRQ==", + "dependencies": { + "command-exists": "^1.2.2", + "get-port": "^3.0.0", + "glob": "^7.1.1", + "mkdirp": "^0.5.1", + "rimraf": "^2.6.2" + } + }, + "node_modules/devcert-sanscache/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/devcert-sanscache/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/diff": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", + "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/docdash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.2.0.tgz", + "integrity": "sha512-IYZbgYthPTspgqYeciRJNPhSwL51yer7HAwDXhF5p+H7mTDbPvY3PCk/QDjNxdPCpWkaJVFC4t7iCNB/t9E5Kw==", + "dev": true + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", + "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz", + "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true + }, + "node_modules/duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, + "dependencies": { + "readable-stream": "^2.0.2" + } + }, + "node_modules/duplexer2/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/duplexer2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "node_modules/duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dependencies": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/duplexify/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/duplexify/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/editorconfig": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", + "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", + "dev": true, + "dependencies": { + "commander": "^2.19.0", + "lru-cache": "^4.1.5", + "semver": "^5.6.0", + "sigmund": "^1.0.1" + }, + "bin": { + "editorconfig": "bin/editorconfig" + } + }, + "node_modules/editorconfig/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "node_modules/electron-to-chromium": { + "version": "1.4.48", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.48.tgz", + "integrity": "sha512-RT3SEmpv7XUA+tKXrZGudAWLDpa7f8qmhjcLaM6OD/ERxjQ/zAojT8/Vvo0BSzbArkElFZ1WyZ9FuwAYbkdBNA==", + "dev": true + }, + "node_modules/emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/equal-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", + "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/err-code": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", + "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dependencies": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, + "node_modules/es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "dependencies": { + "es6-promise": "^4.0.3" + } + }, + "node_modules/es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" + } + }, + "node_modules/es6-set/node_modules/es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/es6-weak-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/escape-unicode": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/escape-unicode/-/escape-unicode-0.2.0.tgz", + "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "dependencies": { + "es6-map": "^0.1.3", + "es6-weak-map": "^2.0.1", + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/eslint": { + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.1.2", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.9", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-google": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz", + "integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "eslint": ">=5.16.0" + } + }, + "node_modules/eslint-plugin-jsdoc": { + "version": "35.5.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.5.1.tgz", + "integrity": "sha512-pPYPWtsykwVEue1tYEyoppBj4dgF7XicF67tLLLraY6RQYBq7qMKjUHji19+hfiTtYKKBD0YfeK8hgjPAE5viw==", + "dev": true, + "dependencies": { + "@es-joy/jsdoccomment": "0.9.0-alpha.1", + "comment-parser": "1.1.6-beta.0", + "debug": "^4.3.2", + "esquery": "^1.4.0", + "jsdoc-type-pratt-parser": "^1.0.4", + "lodash": "^4.17.21", + "regextras": "^0.8.0", + "semver": "^7.3.5", + "spdx-expression-parse": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/eslint/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/eslint/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/eslint/node_modules/espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "dependencies": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/eslint/node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", + "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "dependencies": { + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/espree/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" + }, + "node_modules/events-to-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", + "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", + "dev": true + }, + "node_modules/express": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.2.tgz", + "integrity": "sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg==", + "dependencies": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.4.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.9.6", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.17.2", + "serve-static": "1.14.2", + "setprototypeof": "1.2.0", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/express/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ext": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", + "integrity": "sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==", + "dependencies": { + "type": "^2.5.0" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.5.0.tgz", + "integrity": "sha512-180WMDQaIMm3+7hGXWf12GtdniDEy7nYcyFMKJn/eZz/6tSLXrUN9V0wKSbMjej0I1WHWbpREDEKHtqPQa9NNw==" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", + "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "node_modules/fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/figgy-pudding": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/file-type": { + "version": "14.7.1", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.7.1.tgz", + "integrity": "sha512-sXAMgFk67fQLcetXustxfKX+PZgHIUFn96Xld9uH8aXPdX3xOp0/jg9OdouVTvQrf7mrn+wAa4jN/y9fUOOiRA==", + "dev": true, + "dependencies": { + "readable-web-to-node-stream": "^2.0.0", + "strtok3": "^6.0.3", + "token-types": "^2.0.0", + "typedarray-to-buffer": "^3.1.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sindresorhus/file-type?sponsor=1" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.4.tgz", + "integrity": "sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==", + "dev": true + }, + "node_modules/flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dependencies": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "node_modules/flush-write-stream/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/flush-write-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/follow-redirects": { + "version": "1.14.7", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.7.tgz", + "integrity": "sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "node_modules/from2/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/from2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/fromentries": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", + "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/fs-minipass": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", + "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", + "dependencies": { + "minipass": "^2.6.0" + } + }, + "node_modules/fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dependencies": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, + "node_modules/fs-write-stream-atomic/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/fs-write-stream-atomic/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "node_modules/gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/genfun": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", + "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==" + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-port": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", + "engines": { + "node": ">=4" + } + }, + "node_modules/get-stdin": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", + "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/global-dirs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", + "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", + "dev": true, + "dependencies": { + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/global-dirs/node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dev": true, + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.9", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", + "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/hasha": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", + "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==", + "dev": true, + "dependencies": { + "is-stream": "^2.0.0", + "type-fest": "^0.8.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/http-cache-semantics": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", + "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" + }, + "node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-agent": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", + "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "dependencies": { + "agent-base": "4", + "debug": "3.1.0" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/http-proxy-agent/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/http-proxy-agent/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/https-proxy-agent": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "dependencies": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/https-proxy-agent/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" + }, + "node_modules/ignore": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-by-default": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-2.0.0.tgz", + "integrity": "sha512-+mQSgMRiFD3L3AOxLYOCxjIq4OnAmo5CIuC+lj5ehCJcPtV++QacEV7FdpzvYxH6DaOySWzQU6RR0lPLy37ckA==", + "dev": true, + "engines": { + "node": ">=10 <11 || >=12 <13 || >=14" + } + }, + "node_modules/ignore-walk": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz", + "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", + "dependencies": { + "minimatch": "^3.0.4" + } + }, + "node_modules/immutable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0.tgz", + "integrity": "sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/irregular-plurals": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.3.0.tgz", + "integrity": "sha512-MVBLKUTangM3EfRPFROhmWQQKRDsrgI83J8GS3jXy+OwYqiR2/aoWndYQ5416jLE3uaGgLH7ncme3X9y09gZ3g==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", + "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-error": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", + "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", + "dev": true + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "dev": true, + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-like": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", + "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", + "dependencies": { + "lodash.isfinite": "^3.3.2" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-promise": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", + "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", + "dev": true + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", + "dev": true + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-hook": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", + "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", + "dev": true, + "dependencies": { + "append-transform": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-processinfo": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.2.tgz", + "integrity": "sha512-kOwpa7z9hme+IBPZMzQ5vdQj8srYgAtaRqeI48NGmAQ+/5yKiHLV0QbYqQpxsdEF0+w14SoB8YbnHKcXE2KnYw==", + "dev": true, + "dependencies": { + "archy": "^1.0.0", + "cross-spawn": "^7.0.0", + "istanbul-lib-coverage": "^3.0.0-alpha.1", + "make-dir": "^3.0.0", + "p-map": "^3.0.0", + "rimraf": "^3.0.0", + "uuid": "^3.3.3" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-processinfo/node_modules/p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.3.tgz", + "integrity": "sha512-x9LtDVtfm/t1GFiLl3NffC7hz+I1ragvgX1P/Lg1NlIagifZDKUkuuaAxH/qpwj2IuEfD8G2Bs/UKp+sZ/pKkg==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/js-beautify": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.0.tgz", + "integrity": "sha512-yuck9KirNSCAwyNJbqW+BxJqJ0NLJ4PwBUzQQACl5O3qHMBXVkXb/rD0ilh/Lat/tn88zSZ+CAHOlk0DsY7GuQ==", + "dev": true, + "dependencies": { + "config-chain": "^1.1.12", + "editorconfig": "^0.15.3", + "glob": "^7.1.3", + "nopt": "^5.0.0" + }, + "bin": { + "css-beautify": "js/bin/css-beautify.js", + "html-beautify": "js/bin/html-beautify.js", + "js-beautify": "js/bin/js-beautify.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/js-string-escape": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", + "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/js2xmlparser": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.2.tgz", + "integrity": "sha512-6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA==", + "dependencies": { + "xmlcreate": "^2.0.4" + } + }, + "node_modules/jsdoc": { + "version": "3.6.7", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.7.tgz", + "integrity": "sha512-sxKt7h0vzCd+3Y81Ey2qinupL6DpRSZJclS04ugHDNmRUXGzqicMJ6iwayhSA0S0DwwX30c5ozyUthr1QKF6uw==", + "dependencies": { + "@babel/parser": "^7.9.4", + "bluebird": "^3.7.2", + "catharsis": "^0.9.0", + "escape-string-regexp": "^2.0.0", + "js2xmlparser": "^4.0.1", + "klaw": "^3.0.0", + "markdown-it": "^10.0.0", + "markdown-it-anchor": "^5.2.7", + "marked": "^2.0.3", + "mkdirp": "^1.0.4", + "requizzle": "^0.2.3", + "strip-json-comments": "^3.1.0", + "taffydb": "2.6.2", + "underscore": "~1.13.1" + }, + "bin": { + "jsdoc": "jsdoc.js" + }, + "engines": { + "node": ">=8.15.0" + } + }, + "node_modules/jsdoc-type-pratt-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.2.0.tgz", + "integrity": "sha512-4STjeF14jp4bqha44nKMY1OUI6d2/g6uclHWUCZ7B4DoLzaB5bmpTkQrpqU+vSVzMD0LsKAOskcnI3I3VfIpmg==", + "dev": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/jsdoc/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/just-extend": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", + "dev": true + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klaw": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", + "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", + "dependencies": { + "graceful-fs": "^4.1.9" + } + }, + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "dev": true, + "dependencies": { + "package-json": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/less-openui5": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.2.tgz", + "integrity": "sha512-FkAT0JDB3NGroia/hdYInzVzpERINovKEgjeijfYgLK7C4eef8a0midlgdBfTZanv3Gz8zUSjfGYXNWL82jEBA==", + "dependencies": { + "clone": "^2.1.0", + "css": "^3.0.0", + "mime": "^1.6.0" + }, + "engines": { + "node": ">= 10", + "npm": ">= 5" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/libnpmconfig": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/libnpmconfig/-/libnpmconfig-1.2.1.tgz", + "integrity": "sha512-9esX8rTQAHqarx6qeZqmGQKBNZR5OIbl/Ayr0qQDy3oXja2iFVQQI81R6GZ2a02bSNZ9p3YOGX1O6HHCb1X7kA==", + "dependencies": { + "figgy-pudding": "^3.5.1", + "find-up": "^3.0.0", + "ini": "^1.3.5" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/linkify-it": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "dependencies": { + "uc.micro": "^1.0.1" + } + }, + "node_modules/load-json-file": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.15", + "parse-json": "^4.0.0", + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/lockfile": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lockfile/-/lockfile-1.0.4.tgz", + "integrity": "sha512-cvbTwETRfsFh4nHsL1eGWapU1XFi5Ot9E85sWAwia7Y7EgB7vfqcZhTKZ+l7hCGxSPoushMv5GKhT5PdLv03WA==", + "dependencies": { + "signal-exit": "^3.0.2" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "node_modules/lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "dev": true + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, + "node_modules/lodash.isfinite": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", + "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", + "dev": true + }, + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", + "dev": true + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.4" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/make-fetch-happen": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz", + "integrity": "sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag==", + "dependencies": { + "agentkeepalive": "^3.4.1", + "cacache": "^12.0.0", + "http-cache-semantics": "^3.8.1", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "node-fetch-npm": "^2.0.2", + "promise-retry": "^1.1.1", + "socks-proxy-agent": "^4.0.0", + "ssri": "^6.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-fetch-happen/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "dependencies": { + "p-defer": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/map-obj": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/markdown-it": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz", + "integrity": "sha512-YWOP1j7UbDNz+TumYP1kpwnP0aEa711cJjrAQrzd0UXlbJfc5aAq0F/PZHjiioqDC1NKgvIMX+o+9Bk7yuM2dg==", + "dependencies": { + "argparse": "^1.0.7", + "entities": "~2.0.0", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + }, + "bin": { + "markdown-it": "bin/markdown-it.js" + } + }, + "node_modules/markdown-it-anchor": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.3.0.tgz", + "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==", + "peerDependencies": { + "markdown-it": "*" + } + }, + "node_modules/markdown-it/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/markdown-it/node_modules/entities": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", + "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" + }, + "node_modules/marked": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/marked/-/marked-2.1.3.tgz", + "integrity": "sha512-/Q+7MGzaETqifOMWYEA7HVMaZb4XbcRfaOzcSsHZEith83KGlvaSG33u0SKu89Mj5h+T8V2hM+8O45Qc5XTgwA==", + "bin": { + "marked": "bin/marked" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/md5-hex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.1.tgz", + "integrity": "sha512-BUiRtTtV39LIJwinWBjqVsU9xhdnz7/i889V859IBFpuqGAj6LuOvHv5XLbgZ2R7ptJoJaEcxkv88/h25T7Ciw==", + "dev": true, + "dependencies": { + "blueimp-md5": "^2.10.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mem": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz", + "integrity": "sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==", + "dev": true, + "dependencies": { + "map-age-cleaner": "^0.1.3", + "mimic-fn": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/mem?sponsor=1" + } + }, + "node_modules/meow": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz", + "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==", + "dev": true, + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "^4.0.2", + "normalize-package-data": "^2.5.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.13.1", + "yargs-parser": "^18.1.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", + "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.34", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz", + "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", + "dependencies": { + "mime-db": "1.51.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", + "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "node_modules/minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/minimist-options/node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/minipass": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", + "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "dependencies": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "node_modules/minipass/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/minizlib": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", + "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "dependencies": { + "minipass": "^2.9.0" + } + }, + "node_modules/mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dependencies": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mock-require": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", + "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", + "dev": true, + "dependencies": { + "get-caller-file": "^1.0.2", + "normalize-path": "^2.1.1" + }, + "engines": { + "node": ">=4.3.0" + } + }, + "node_modules/mock-require/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dependencies": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, + "node_modules/move-concurrently/node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "node_modules/move-concurrently/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/move-concurrently/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/multimatch": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", + "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", + "dev": true, + "dependencies": { + "@types/minimatch": "^3.0.3", + "array-differ": "^3.0.0", + "array-union": "^2.1.0", + "arrify": "^2.0.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nanoid": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.2.0.tgz", + "integrity": "sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA==", + "dev": true, + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "node_modules/nise": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.0.tgz", + "integrity": "sha512-W5WlHu+wvo3PaKLsJJkgPup2LrsXCcm7AWwyNZkUnn5rwPkuPBi3Iwk5SQtN0mv+K65k7nKKjwNQ30wg3wLAQQ==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0", + "@sinonjs/fake-timers": "^7.0.4", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "path-to-regexp": "^1.7.0" + } + }, + "node_modules/nise/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "node_modules/nise/node_modules/path-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "dev": true, + "dependencies": { + "isarray": "0.0.1" + } + }, + "node_modules/node-fetch-npm": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz", + "integrity": "sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg==", + "dependencies": { + "encoding": "^0.1.11", + "json-parse-better-errors": "^1.0.0", + "safe-buffer": "^5.1.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/node-preload": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", + "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", + "dev": true, + "dependencies": { + "process-on-spawn": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/node-releases": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", + "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==", + "dev": true + }, + "node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm-bundled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", + "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", + "dependencies": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "node_modules/npm-normalize-package-bin": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", + "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==" + }, + "node_modules/npm-package-arg": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", + "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", + "dependencies": { + "hosted-git-info": "^2.7.1", + "osenv": "^0.1.5", + "semver": "^5.6.0", + "validate-npm-package-name": "^3.0.0" + } + }, + "node_modules/npm-package-arg/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/npm-packlist": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", + "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", + "dependencies": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "node_modules/npm-pick-manifest": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz", + "integrity": "sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw==", + "dependencies": { + "figgy-pudding": "^3.5.1", + "npm-package-arg": "^6.0.0", + "semver": "^5.4.1" + } + }, + "node_modules/npm-pick-manifest/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/npm-registry-fetch": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.7.tgz", + "integrity": "sha512-cny9v0+Mq6Tjz+e0erFAB+RYJ/AVGzkjnISiobqP8OWj9c9FLoZZu8/SPSKJWE17F1tk4018wfjV+ZbIbqC7fQ==", + "dependencies": { + "bluebird": "^3.5.1", + "figgy-pudding": "^3.4.1", + "JSONStream": "^1.3.4", + "lru-cache": "^5.1.1", + "make-fetch-happen": "^5.0.0", + "npm-package-arg": "^6.1.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/npm-registry-fetch/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/npm-registry-fetch/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "dependencies": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, + "node_modules/nth-check": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", + "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nyc": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", + "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", + "dev": true, + "dependencies": { + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "caching-transform": "^4.0.0", + "convert-source-map": "^1.7.0", + "decamelize": "^1.2.0", + "find-cache-dir": "^3.2.0", + "find-up": "^4.1.0", + "foreground-child": "^2.0.0", + "get-package-type": "^0.1.0", + "glob": "^7.1.6", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-hook": "^3.0.0", + "istanbul-lib-instrument": "^4.0.0", + "istanbul-lib-processinfo": "^2.0.2", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "make-dir": "^3.0.0", + "node-preload": "^0.2.1", + "p-map": "^3.0.0", + "process-on-spawn": "^1.0.0", + "resolve-from": "^5.0.0", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.2", + "spawn-wrap": "^2.0.0", + "test-exclude": "^6.0.0", + "yargs": "^15.0.2" + }, + "bin": { + "nyc": "bin/nyc.js" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/nyc/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/nyc/node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/nyc/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/nyc/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/nyc/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/nyc/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/onetime/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open-cli": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-6.0.1.tgz", + "integrity": "sha512-A5h8MF3GrT1efn9TiO9LPajDnLtuEiGQT5G8TxWObBlgt1cZJF1YbQo/kNtsD1bJb7HxnT6SaSjzeLq0Rfhygw==", + "dev": true, + "dependencies": { + "file-type": "^14.1.4", + "get-stdin": "^7.0.0", + "meow": "^6.1.0", + "open": "^7.0.3", + "temp-write": "^4.0.0" + }, + "bin": { + "open-cli": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dependencies": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-event": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", + "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "dev": true, + "dependencies": { + "p-timeout": "^3.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "dev": true, + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/package-hash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", + "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.15", + "hasha": "^5.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dev": true, + "dependencies": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/pacote": { + "version": "9.5.12", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.12.tgz", + "integrity": "sha512-BUIj/4kKbwWg4RtnBncXPJd15piFSVNpTzY0rysSr3VnMowTYgkGKcaHrbReepAkjTr8lH2CVWRi58Spg2CicQ==", + "dependencies": { + "bluebird": "^3.5.3", + "cacache": "^12.0.2", + "chownr": "^1.1.2", + "figgy-pudding": "^3.5.1", + "get-stream": "^4.1.0", + "glob": "^7.1.3", + "infer-owner": "^1.0.4", + "lru-cache": "^5.1.1", + "make-fetch-happen": "^5.0.0", + "minimatch": "^3.0.4", + "minipass": "^2.3.5", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "normalize-package-data": "^2.4.0", + "npm-normalize-package-bin": "^1.0.0", + "npm-package-arg": "^6.1.0", + "npm-packlist": "^1.1.12", + "npm-pick-manifest": "^3.0.0", + "npm-registry-fetch": "^4.0.0", + "osenv": "^0.1.5", + "promise-inflight": "^1.0.1", + "promise-retry": "^1.1.1", + "protoduck": "^5.0.1", + "rimraf": "^2.6.2", + "safe-buffer": "^5.1.2", + "semver": "^5.6.0", + "ssri": "^6.0.1", + "tar": "^4.4.10", + "unique-filename": "^1.1.1", + "which": "^1.3.1" + } + }, + "node_modules/pacote/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/pacote/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/pacote/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/pacote/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/pacote/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/pacote/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "dependencies": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, + "node_modules/parallel-transform/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/parallel-transform/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", + "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "engines": { + "node": ">=4" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/peek-readable": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.2.tgz", + "integrity": "sha512-9fMaz6zoxw9ypO1KZy5RDJgSupEtu0Q+g/OqqsVHX3rKGR8qehRLYzsFARZ4bVvdvfknKiXvuDbkMnO1g6cRpQ==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-conf": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", + "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0", + "load-json-file": "^5.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/please-upgrade-node": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "dev": true, + "dependencies": { + "semver-compare": "^1.0.0" + } + }, + "node_modules/plur": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/plur/-/plur-4.0.0.tgz", + "integrity": "sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg==", + "dev": true, + "dependencies": { + "irregular-plurals": "^3.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/portscanner": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-2.2.0.tgz", + "integrity": "sha512-IFroCz/59Lqa2uBvzK3bKDbDDIEaAY8XJ1jFxcLWTqosrsc32//P4VuSB2vZXoHiHqOmx8B5L5hnKOxL/7FlPw==", + "dependencies": { + "async": "^2.6.0", + "is-number-like": "^1.0.3" + }, + "engines": { + "node": ">=0.4", + "npm": ">=1.0.0" + } + }, + "node_modules/portscanner/node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/postcss": { + "version": "8.4.5", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", + "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", + "dev": true, + "dependencies": { + "nanoid": "^3.1.30", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/pretty-data": { + "version": "0.40.0", + "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", + "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=", + "engines": { + "node": "*" + } + }, + "node_modules/pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pretty-ms": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz", + "integrity": "sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==", + "dev": true, + "dependencies": { + "parse-ms": "^2.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/process-on-spawn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", + "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", + "dev": true, + "dependencies": { + "fromentries": "^1.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" + }, + "node_modules/promise-retry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", + "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", + "dependencies": { + "err-code": "^1.0.0", + "retry": "^0.10.0" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", + "dev": true + }, + "node_modules/protoduck": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", + "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", + "dependencies": { + "genfun": "^5.0.0" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dependencies": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "node_modules/pumpify/node_modules/pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "dev": true, + "dependencies": { + "escape-goat": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/qs": { + "version": "6.9.6", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", + "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==", + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/query-ast": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.4.tgz", + "integrity": "sha512-KFJFSvODCBjIH5HbHvITj9EEZKYUU6VX0T5CuB1ayvjUoUaZkKMi6eeby5Tf8DMukyZHlJQOE1+f3vevKUe6eg==", + "dev": true, + "dependencies": { + "invariant": "2.2.4" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/random-int": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", + "integrity": "sha512-YALjWK2Rt9EMIv9BF/3mvlzFWQathsvb5UZmN1QmhfIOfcQYXc/UcLzg0ablqesSBpBVLt2Tlwv/eTuBh4LXUQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.2.tgz", + "integrity": "sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ==", + "dependencies": { + "bytes": "3.1.1", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readable-web-to-node-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-2.0.0.tgz", + "integrity": "sha512-+oZJurc4hXpaaqsN68GoZGQAQIA3qr09Or4fqEsargABnbe5Aau8hFn6ISVleT3cpY/0n/8drn7huyyEvTbghA==", + "dev": true + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/regextras": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.8.0.tgz", + "integrity": "sha512-k519uI04Z3SaY0fLX843MRXnDeG2+vHOFsyhiPZvNLe7r8rD2YNRjq4BQLZZ0oAr2NrtvZlICsXysGNFPGa3CQ==", + "dev": true, + "engines": { + "node": ">=0.1.14" + } + }, + "node_modules/registry-auth-token": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", + "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", + "dev": true, + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dev": true, + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/release-zalgo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "dev": true, + "dependencies": { + "es6-error": "^4.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "node_modules/replacestream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", + "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", + "dependencies": { + "escape-string-regexp": "^1.0.3", + "object-assign": "^4.0.1", + "readable-stream": "^2.0.2" + } + }, + "node_modules/replacestream/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/replacestream/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/replacestream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "node_modules/require-package-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/require-package-name/-/require-package-name-2.0.1.tgz", + "integrity": "sha1-wR6XJ2tluOKSP3Xav1+y7ww4Qbk=", + "dev": true + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + }, + "node_modules/requizzle": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.3.tgz", + "integrity": "sha512-YanoyJjykPxGHii0fZP0uUPEXpvqfBDxWV7s6GKAiiOsiqhX6vHNyW3Qzdmqp/iq/ExbhaGbVrjB4ruEVSM4GQ==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/resolve": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.0.tgz", + "integrity": "sha512-3wCbTpk5WJlyE4mSOtDLhqQmGFi0/TD9VPwmiolnk8U0wRgMEktqCXd3vy5buTO3tljvalNvKrjHEfrd2WpEKA==", + "dependencies": { + "is-core-module": "^2.8.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", + "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", + "engines": { + "node": "*" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/router": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/router/-/router-1.3.6.tgz", + "integrity": "sha512-gsjhou+LFApzkIP8VDrouG6Z4pqkeF11n3o5orlwPPvPTl0x7c+dbF71itKOhDoFHygmc3N3uqm55Uq/gIDUwg==", + "dependencies": { + "array-flatten": "3.0.0", + "debug": "2.6.9", + "methods": "~1.1.2", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "setprototypeof": "1.2.0", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/router/node_modules/array-flatten": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz", + "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==" + }, + "node_modules/router/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/router/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dependencies": { + "aproba": "^1.1.1" + } + }, + "node_modules/run-queue/node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sass": { + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.0.tgz", + "integrity": "sha512-TVwVdNDj6p6b4QymJtNtRS2YtLJ/CqZriGg0eIAbAKMlN8Xy6kbv33FsEZSF7FufFFM705SQviHjjThfaQ4VNw==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/scss-parser": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/scss-parser/-/scss-parser-1.0.5.tgz", + "integrity": "sha512-RZOtvCmCnwkDo7kdcYBi807Y5EoTIxJ34AgEgJNDmOH1jl0/xG0FyYZFbH6Ga3Iwu7q8LSdxJ4C5UkzNXjQxKQ==", + "dev": true, + "dependencies": { + "invariant": "2.2.4" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" + }, + "node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "dev": true + }, + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dev": true, + "dependencies": { + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/send": { + "version": "0.17.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", + "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "1.8.1", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dev": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/serialize-error/node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/serve-static": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", + "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "node_modules/set-cookie-parser": { + "version": "2.4.8", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.4.8.tgz", + "integrity": "sha512-edRH8mBKEWNVIVMKejNnuJxleqYE/ZSdcT8/Nem9/mmosx12pctd80s2Oy00KNZzrogMZS5mauK2/ymL1bvlvg==" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", + "dev": true + }, + "node_modules/signal-exit": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.6.tgz", + "integrity": "sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==" + }, + "node_modules/sinon": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-11.1.2.tgz", + "integrity": "sha512-59237HChms4kg7/sXhiRcUzdSkKuydDeTiamT/jesUVHshBgL8XAmhgFo0GfK6RruMDM/iRSij1EybmMog9cJw==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.8.3", + "@sinonjs/fake-timers": "^7.1.2", + "@sinonjs/samsam": "^6.0.2", + "diff": "^5.0.0", + "nise": "^5.1.0", + "supports-color": "^7.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/sinon" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/slice-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/slice-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", + "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", + "dependencies": { + "ip": "1.1.5", + "smart-buffer": "^4.1.0" + }, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", + "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", + "dependencies": { + "agent-base": "~4.2.1", + "socks": "~2.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", + "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", + "dependencies": { + "es6-promisify": "^5.0.0" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "node_modules/spawn-wrap": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", + "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", + "dev": true, + "dependencies": { + "foreground-child": "^2.0.0", + "is-windows": "^1.0.2", + "make-dir": "^3.0.0", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.2", + "which": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", + "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "node_modules/ssri": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", + "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", + "dependencies": { + "figgy-pudding": "^3.5.1" + } + }, + "node_modules/stack-utils": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", + "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dependencies": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strtok3": { + "version": "6.2.4", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.4.tgz", + "integrity": "sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw==", + "dev": true, + "dependencies": { + "@tokenizer/token": "^0.3.0", + "peek-readable": "^4.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/supertap": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supertap/-/supertap-2.0.0.tgz", + "integrity": "sha512-jRzcXlCeDYvKoZGA5oRhYyR3jUIYu0enkSxtmAgHRlD7HwrovTpH4bDSi0py9FtuA8si9cW/fKommJHuaoDHJA==", + "dev": true, + "dependencies": { + "arrify": "^2.0.1", + "indent-string": "^4.0.0", + "js-yaml": "^3.14.0", + "serialize-error": "^7.0.1", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/supertap/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/supertap/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/table": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", + "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", + "dev": true, + "dependencies": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz", + "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/table/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/table/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/table/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/table/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/table/node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/taffydb": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", + "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" + }, + "node_modules/tap-nyan": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", + "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", + "dev": true, + "dependencies": { + "chalk": "^1.1.3", + "duplexer2": "^0.1.4", + "supports-color": "^3.1.2", + "tap-parser": "^3.0.3" + }, + "bin": { + "tap-nyan": "bin/cmd.js", + "tnyan": "bin/cmd.js" + } + }, + "node_modules/tap-nyan/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap-nyan/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap-nyan/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap-nyan/node_modules/chalk/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/tap-nyan/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/tap-nyan/node_modules/has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap-nyan/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap-nyan/node_modules/supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "dependencies": { + "has-flag": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/tap-parser": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", + "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", + "dev": true, + "dependencies": { + "events-to-array": "^1.0.1", + "js-yaml": "^3.2.7" + }, + "bin": { + "tap-parser": "bin/cmd.js" + }, + "optionalDependencies": { + "readable-stream": "^2" + } + }, + "node_modules/tap-parser/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/tap-parser/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/tap-parser/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "optional": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/tap-parser/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "optional": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/tap-xunit": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", + "integrity": "sha512-qcZStDtjjYjMKAo7QNiCtOW256g3tuSyCSe5kNJniG1Q2oeOExJq4vm8CwboHZURpkXAHvtqMl4TVL7mcbMVVA==", + "dev": true, + "dependencies": { + "duplexer": "~0.1.1", + "minimist": "~1.2.0", + "tap-parser": "~1.2.2", + "through2": "~2.0.0", + "xmlbuilder": "~4.2.0", + "xtend": "~4.0.0" + }, + "bin": { + "tap-xunit": "bin/tap-xunit", + "txunit": "bin/tap-xunit" + } + }, + "node_modules/tap-xunit/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/tap-xunit/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/tap-xunit/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "optional": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/tap-xunit/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "optional": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/tap-xunit/node_modules/tap-parser": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", + "integrity": "sha1-Xi9pcGEfB5x8+FfeHceqG0gN56U=", + "dev": true, + "dependencies": { + "events-to-array": "^1.0.1", + "inherits": "~2.0.1", + "js-yaml": "^3.2.7" + }, + "bin": { + "tap-parser": "bin/cmd.js" + }, + "optionalDependencies": { + "readable-stream": "^2" + } + }, + "node_modules/tar": { + "version": "4.4.19", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", + "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", + "dependencies": { + "chownr": "^1.1.4", + "fs-minipass": "^1.2.7", + "minipass": "^2.9.0", + "minizlib": "^1.3.3", + "mkdirp": "^0.5.5", + "safe-buffer": "^5.2.1", + "yallist": "^3.1.1" + }, + "engines": { + "node": ">=4.5" + } + }, + "node_modules/tar/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/tar/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/tar/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/temp-write": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-4.0.0.tgz", + "integrity": "sha512-HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.15", + "is-stream": "^2.0.0", + "make-dir": "^3.0.0", + "temp-dir": "^1.0.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/temp-write/node_modules/temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/terser": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.10.0.tgz", + "integrity": "sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA==", + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.7.2", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "acorn": "^8.5.0" + }, + "peerDependenciesMeta": { + "acorn": { + "optional": true + } + } + }, + "node_modules/terser/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/through2/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/through2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/time-zone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", + "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/token-types": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.1.1.tgz", + "integrity": "sha512-wnQcqlreS6VjthyHO3Y/kpK/emflxDBNhlNUPfh7wE39KnuDdOituXomIbyI79vBtF0Ninpkh72mcuRHo+RG3Q==", + "dev": true, + "dependencies": { + "@tokenizer/token": "^0.1.1", + "ieee754": "^1.2.1" + }, + "engines": { + "node": ">=0.1.98" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/token-types/node_modules/@tokenizer/token": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", + "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", + "dev": true + }, + "node_modules/treeify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", + "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/trim-newlines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/trim-off-newlines": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.3.tgz", + "integrity": "sha512-kh6Tu6GbeSNMGfrrZh6Bb/4ZEHV1QlB4xNDBeog8Y9/QwFlKTRyWvY3Fs9tRDAMZliVUwieMgEdIeL/FtqjkJg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + }, + "node_modules/underscore": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.2.tgz", + "integrity": "sha512-ekY1NhRzq0B08g4bGuX4wd2jZx5GnKz6mKSqFL4nqBlfyMGiG10gDFhDTMEfYmDL6Jy0FUIZp7wiRB+0BP7J2g==" + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "dev": true, + "dependencies": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dev": true, + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validate-npm-package-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", + "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "dependencies": { + "builtins": "^1.0.3" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/well-known-symbols": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-2.0.0.tgz", + "integrity": "sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dev": true, + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xml2js/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlbuilder": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz", + "integrity": "sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU=", + "dev": true, + "dependencies": { + "lodash": "^4.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/xmlcreate": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz", + "integrity": "sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==" + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + }, + "node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs-parser/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/yargs/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yazl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", + "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", + "dependencies": { + "buffer-crc32": "~0.2.3" + } + }, + "node_modules/yesno": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/yesno/-/yesno-0.3.1.tgz", + "integrity": "sha512-7RbCXegyu6DykWPWU0YEtW8gFJH8KBL2d5l2fqB0XpkH0Y9rk59YSSWpzEv7yNJBGAouPc67h3kkq0CZkpBdFw==" + } + }, "dependencies": { "@babel/code-frame": { "version": "7.16.7", @@ -41,19 +9906,10 @@ "source-map": "^0.5.0" }, "dependencies": { - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "@babel/parser": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", + "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", "dev": true }, "semver": { @@ -61,12 +9917,6 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true } } }, @@ -79,14 +9929,6 @@ "@babel/types": "^7.16.8", "jsesc": "^2.5.1", "source-map": "^0.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } } }, "@babel/helper-compilation-targets": { @@ -240,19 +10082,6 @@ "supports-color": "^5.3.0" } }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", @@ -274,9 +10103,9 @@ } }, "@babel/parser": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", - "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==" + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", + "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==" }, "@babel/template": { "version": "7.16.7", @@ -287,6 +10116,14 @@ "@babel/code-frame": "^7.16.7", "@babel/parser": "^7.16.7", "@babel/types": "^7.16.7" + }, + "dependencies": { + "@babel/parser": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", + "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", + "dev": true + } } }, "@babel/traverse": { @@ -307,19 +10144,10 @@ "globals": "^11.1.0" }, "dependencies": { - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "@babel/parser": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", + "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", "dev": true } } @@ -387,15 +10215,27 @@ "strip-json-comments": "^3.1.1" }, "dependencies": { - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { - "ms": "2.1.2" + "sprintf-js": "~1.0.2" } }, + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + }, "espree": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", @@ -432,12 +10272,6 @@ "esprima": "^4.0.0" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -455,23 +10289,6 @@ "@humanwhocodes/object-schema": "^1.2.0", "debug": "^4.1.1", "minimatch": "^3.0.4" - }, - "dependencies": { - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "@humanwhocodes/object-schema": { @@ -493,6 +10310,15 @@ "resolve-from": "^5.0.0" }, "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, "camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -542,6 +10368,12 @@ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true } } }, @@ -762,6 +10594,14 @@ "@vue/shared": "3.2.27", "estree-walker": "^2.0.2", "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } } }, "@vue/compiler-dom": { @@ -790,6 +10630,14 @@ "magic-string": "^0.25.7", "postcss": "^8.1.10", "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } } }, "@vue/compiler-ssr": { @@ -821,15 +10669,6 @@ "integrity": "sha512-rpAn9k6O08Lvo7ekBIAnkOukX/4EsEQLPrRJBKhIEasMsOI5eX0f6mq1sDUSY7cgAqWw2d7QtP74CWxdXoyKxA==", "dev": true }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -846,14 +10685,15 @@ } }, "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", + "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==" }, "acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==" + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "requires": {} }, "acorn-walk": { "version": "8.2.0", @@ -901,7 +10741,8 @@ "ajv-errors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "requires": {} }, "ansi-align": { "version": "3.0.1", @@ -924,12 +10765,10 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true }, "anymatch": { "version": "3.1.2", @@ -971,12 +10810,9 @@ } }, "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "array-differ": { "version": "3.0.0", @@ -1090,43 +10926,6 @@ "update-notifier": "^5.0.1", "write-file-atomic": "^3.0.3", "yargs": "^16.2.0" - }, - "dependencies": { - "acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", - "dev": true - }, - "ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true - }, - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, - "requires": { - "ms": "2.1.2" - }, - "dependencies": { - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - } } }, "balanced-match": { @@ -1183,6 +10982,21 @@ "qs": "6.9.6", "raw-body": "2.4.2", "type-is": "~1.6.18" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } } }, "boolbase": { @@ -1429,6 +11243,29 @@ "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + } } }, "cheerio": { @@ -1458,9 +11295,9 @@ } }, "chokidar": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", - "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, "requires": { "anymatch": "~3.1.2", @@ -1517,27 +11354,18 @@ "wrap-ansi": "^5.1.0" } }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -1706,17 +11534,17 @@ } }, "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "requires": { - "color-name": "~1.1.4" + "color-name": "1.1.3" } }, "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "color-support": { "version": "1.1.3", @@ -1778,10 +11606,18 @@ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, @@ -1815,11 +11651,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -1895,6 +11726,13 @@ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "requires": { "safe-buffer": "5.2.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } } }, "content-type": { @@ -1909,14 +11747,6 @@ "dev": true, "requires": { "safe-buffer": "~5.1.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - } } }, "convert-to-spaces": { @@ -2016,17 +11846,6 @@ "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } } }, "crypto-random-string": { @@ -2043,6 +11862,13 @@ "inherits": "^2.0.4", "source-map": "^0.6.1", "source-map-resolve": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } } }, "css-select": { @@ -2095,11 +11921,18 @@ } }, "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "requires": { - "ms": "2.0.0" + "ms": "2.1.2" + }, + "dependencies": { + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } } }, "decamelize": { @@ -2159,14 +11992,6 @@ "dev": true, "requires": { "strip-bom": "^4.0.0" - }, - "dependencies": { - "strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true - } } }, "defaults": { @@ -2244,19 +12069,13 @@ "yargs": "^16.1.0" }, "dependencies": { - "@babel/parser": { - "version": "7.16.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", - "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", - "dev": true - }, - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { - "ms": "2.1.2" + "sprintf-js": "~1.0.2" } }, "js-yaml": { @@ -2268,12 +12087,6 @@ "argparse": "^1.0.7", "esprima": "^4.0.0" } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true } } }, @@ -2429,12 +12242,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -2477,11 +12284,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -2504,27 +12306,11 @@ "sigmund": "^1.0.1" }, "dependencies": { - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true } } }, @@ -2534,9 +12320,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.4.46", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.46.tgz", - "integrity": "sha512-UtV0xUA/dibCKKP2JMxOpDtXR74zABevuUEH4K0tvduFSIoxRVcYmQsbB51kXsFTX8MmOyWMt8tuZAlmDOqkrQ==", + "version": "1.4.48", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.48.tgz", + "integrity": "sha512-RT3SEmpv7XUA+tKXrZGudAWLDpa7f8qmhjcLaM6OD/ERxjQ/zAojT8/Vvo0BSzbArkElFZ1WyZ9FuwAYbkdBNA==", "dev": true }, "emittery": { @@ -2804,21 +12590,21 @@ "@babel/highlight": "^7.10.4" } }, - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { - "ms": "2.1.2" + "sprintf-js": "~1.0.2" } }, - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true - }, "espree": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", @@ -2863,12 +12649,6 @@ "esprima": "^4.0.0" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -2881,7 +12661,8 @@ "version": "0.14.0", "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz", "integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==", - "dev": true + "dev": true, + "requires": {} }, "eslint-plugin-jsdoc": { "version": "35.5.1", @@ -2898,23 +12679,6 @@ "regextras": "^0.8.0", "semver": "^7.3.5", "spdx-expression-parse": "^3.0.1" - }, - "dependencies": { - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "eslint-scope": { @@ -2934,12 +12698,21 @@ "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } } }, "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true }, "espree": { "version": "6.2.1", @@ -2949,6 +12722,18 @@ "acorn": "^7.1.1", "acorn-jsx": "^5.2.0", "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + }, + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + } } }, "esprima": { @@ -3066,6 +12851,26 @@ "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } } }, "ext": { @@ -3193,6 +12998,21 @@ "parseurl": "~1.3.3", "statuses": "~1.5.0", "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } } }, "find-cache-dir": { @@ -3253,11 +13073,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -3316,11 +13131,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -3370,11 +13180,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -3436,9 +13241,9 @@ "dev": true }, "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, "get-package-type": { @@ -3607,14 +13412,6 @@ "requires": { "is-stream": "^2.0.0", "type-fest": "^0.8.0" - }, - "dependencies": { - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - } } }, "hosted-git-info": { @@ -3647,11 +13444,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -3727,6 +13519,11 @@ "requires": { "ms": "2.0.0" } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, @@ -3746,11 +13543,6 @@ "requires": { "ms": "^2.1.1" } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" } } }, @@ -3814,14 +13606,6 @@ "requires": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } } }, "import-lazy": { @@ -4164,19 +13948,10 @@ "source-map": "^0.6.1" }, "dependencies": { - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true } } @@ -4220,13 +13995,6 @@ "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "requires": { "argparse": "^2.0.1" - }, - "dependencies": { - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - } } }, "js2xmlparser": { @@ -4318,6 +14086,15 @@ "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=" }, + "JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } + }, "just-extend": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", @@ -4422,6 +14199,12 @@ "json-parse-better-errors": "^1.0.1" } }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, "type-fest": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", @@ -4519,11 +14302,13 @@ "dev": true }, "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, "requires": { - "yallist": "^4.0.0" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, "magic-string": { @@ -4610,6 +14395,14 @@ "uc.micro": "^1.0.5" }, "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, "entities": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", @@ -4620,7 +14413,8 @@ "markdown-it-anchor": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.3.0.tgz", - "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==" + "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==", + "requires": {} }, "marked": { "version": "2.1.3", @@ -4663,14 +14457,6 @@ "requires": { "map-age-cleaner": "^0.1.3", "mimic-fn": "^3.1.0" - }, - "dependencies": { - "mimic-fn": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", - "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", - "dev": true - } } }, "meow": { @@ -4692,27 +14478,11 @@ "yargs-parser": "^18.1.3" }, "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, "type-fest": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", "dev": true - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, @@ -4759,9 +14529,9 @@ } }, "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", + "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", "dev": true }, "mimic-response": { @@ -4869,12 +14639,6 @@ "normalize-path": "^2.1.1" }, "dependencies": { - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, "normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", @@ -4923,9 +14687,9 @@ } }, "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "multimatch": { "version": "5.0.0", @@ -5119,9 +14883,9 @@ "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.7.tgz", "integrity": "sha512-cny9v0+Mq6Tjz+e0erFAB+RYJ/AVGzkjnISiobqP8OWj9c9FLoZZu8/SPSKJWE17F1tk4018wfjV+ZbIbqC7fQ==", "requires": { - "JSONStream": "^1.3.4", "bluebird": "^3.5.1", "figgy-pudding": "^3.4.1", + "JSONStream": "^1.3.4", "lru-cache": "^5.1.1", "make-fetch-happen": "^5.0.0", "npm-package-arg": "^6.1.0", @@ -5136,6 +14900,11 @@ "yallist": "^3.0.2" } }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, "yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", @@ -5197,11 +14966,14 @@ "yargs": "^15.0.2" }, "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } }, "cliui": { "version": "6.0.0", @@ -5214,6 +14986,21 @@ "wrap-ansi": "^6.2.0" } }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -5224,6 +15011,12 @@ "path-exists": "^4.0.0" } }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -5257,6 +15050,12 @@ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -5286,16 +15085,6 @@ "y18n": "^4.0.0", "yargs-parser": "^18.1.2" } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, @@ -5337,6 +15126,14 @@ "dev": true, "requires": { "mimic-fn": "^2.1.0" + }, + "dependencies": { + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + } } }, "open": { @@ -5576,6 +15373,14 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + }, "yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", @@ -5607,11 +15412,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -6036,6 +15836,13 @@ "normalize-package-data": "^2.5.0", "parse-json": "^5.0.0", "type-fest": "^0.6.0" + }, + "dependencies": { + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" + } } }, "read-pkg-up": { @@ -6077,11 +15884,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" } } }, @@ -6194,11 +15996,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -6263,12 +16060,20 @@ "dev": true, "requires": { "resolve-from": "^5.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } } }, "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, "responselike": { @@ -6326,6 +16131,19 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz", "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, @@ -6353,9 +16171,9 @@ } }, "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safer-buffer": { "version": "2.1.2", @@ -6363,9 +16181,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.48.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.48.0.tgz", - "integrity": "sha512-hQi5g4DcfjcipotoHZ80l7GNJHGqQS5LwMBjVYB/TaT0vcSSpbgM8Ad7cgfsB2M0MinbkEQQPO9+sjjSiwxqmw==", + "version": "1.49.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.0.tgz", + "integrity": "sha512-TVwVdNDj6p6b4QymJtNtRS2YtLJ/CqZriGg0eIAbAKMlN8Xy6kbv33FsEZSF7FufFFM705SQviHjjThfaQ4VNw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -6398,6 +16216,21 @@ "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "semver-compare": { @@ -6443,10 +16276,20 @@ "statuses": "~1.5.0" }, "dependencies": { - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } } } }, @@ -6547,6 +16390,32 @@ "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", "is-fullwidth-code-point": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + } } }, "smart-buffer": { @@ -6583,14 +16452,15 @@ } }, "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true }, "source-map-js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.1.tgz", - "integrity": "sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "dev": true }, "source-map-resolve": { @@ -6609,6 +16479,13 @@ "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } } }, "sourcemap-codec": { @@ -6629,17 +16506,6 @@ "rimraf": "^3.0.0", "signal-exit": "^3.0.2", "which": "^2.0.1" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } } }, "spdx-correct": { @@ -6680,21 +16546,6 @@ "http-deceiver": "^1.2.7", "select-hose": "^2.0.0", "spdy-transport": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } } }, "spdy-transport": { @@ -6708,21 +16559,6 @@ "obuf": "^1.1.2", "readable-stream": "^3.0.6", "wbuf": "^1.7.3" - }, - "dependencies": { - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } } }, "sprintf-js": { @@ -6774,6 +16610,21 @@ "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, "string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -6784,14 +16635,6 @@ "strip-ansi": "^6.0.1" } }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -6801,9 +16644,9 @@ } }, "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", "dev": true }, "strip-indent": { @@ -6843,6 +16686,15 @@ "strip-ansi": "^6.0.0" }, "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -6893,6 +16745,30 @@ "uri-js": "^4.2.2" } }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, "json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", @@ -7005,6 +16881,15 @@ "readable-stream": "^2" }, "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -7031,13 +16916,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -7064,6 +16942,15 @@ "xtend": "~4.0.0" }, "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -7090,13 +16977,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -7118,15 +16998,6 @@ "js-yaml": "^3.2.7", "readable-stream": "^2" } - }, - "xmlbuilder": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz", - "integrity": "sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU=", - "dev": true, - "requires": { - "lodash": "^4.0.0" - } } } }, @@ -7152,6 +17023,11 @@ "minimist": "^1.2.5" } }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, "yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", @@ -7248,11 +17124,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -7355,9 +17226,9 @@ "dev": true }, "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" }, "type-is": { "version": "1.6.18", @@ -7529,9 +17400,10 @@ "dev": true }, "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, "requires": { "isexe": "^2.0.0" } @@ -7574,6 +17446,32 @@ "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + } } }, "wrappy": { @@ -7606,12 +17504,23 @@ "requires": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" + }, + "dependencies": { + "xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" + } } }, "xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz", + "integrity": "sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU=", + "dev": true, + "requires": { + "lodash": "^4.0.0" + } }, "xmlcreate": { "version": "2.0.4", @@ -7629,9 +17538,10 @@ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" }, "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true }, "yaml": { "version": "1.10.2", @@ -7654,19 +17564,43 @@ "yargs-parser": "^20.2.2" }, "dependencies": { + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, "y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true } } }, "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + } + } }, "yazl": { "version": "2.5.1", From c5339484855f84219f90a7720fb027bf798840e0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 16 Dec 2021 09:59:37 +0100 Subject: [PATCH 0596/1272] [ui5-project][INTERNAL] Align JSdoc generation with npm 8 workspace setup --- packages/project/jsdoc.json | 1 - packages/project/package.json | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json index bce77a4bd75..48ca6999532 100644 --- a/packages/project/jsdoc.json +++ b/packages/project/jsdoc.json @@ -11,7 +11,6 @@ "./jsdoc-plugin" ], "opts": { - "template": "node_modules/docdash/", "encoding": "utf8", "destination": "jsdocs/", "recurse": true, diff --git a/packages/project/package.json b/packages/project/package.json index 9367ebf84e5..052eee925ba 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -34,7 +34,7 @@ "coverage": "nyc npm run unit", "coverage-xunit": "nyc --reporter=text --reporter=text-summary --reporter=cobertura npm run unit-xunit", "jsdoc": "npm run jsdoc-generate && open-cli jsdocs/index.html", - "jsdoc-generate": "node_modules/.bin/jsdoc -c ./jsdoc.json ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", + "jsdoc-generate": "jsdoc -c ./jsdoc.json -t $(node -p 'path.dirname(require.resolve(\"docdash\"))') ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", "jsdoc-watch": "npm run jsdoc && chokidar \"./lib/**/*.js\" -c \"npm run jsdoc-generate\"", "preversion": "npm test", "version": "git-chglog --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", From f50215bd470292a41a5ecaaa04c35e268285e6c5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 21 Jan 2022 10:30:20 +0000 Subject: [PATCH 0597/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 248 ++++++++++++++--------------- 1 file changed, 124 insertions(+), 124 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6f355773e41..f17e3a89e5d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -77,20 +77,20 @@ } }, "node_modules/@babel/core": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.7.tgz", - "integrity": "sha512-aeLaqcqThRNZYmbMqtulsetOQZ/5gbR/dWruUCJcpas4Qoyy+QeagfDsPdMrqwsPRDNxJvBlRiZxxX7THO7qtA==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.10.tgz", + "integrity": "sha512-pbiIdZbCiMx/MM6toR+OfXarYix3uz0oVsnNtfdAGTcCTu3w/JGF8JhirevXLBJUu0WguSZI12qpKnx7EeMyLA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.16.7", + "@babel/generator": "^7.16.8", "@babel/helper-compilation-targets": "^7.16.7", "@babel/helper-module-transforms": "^7.16.7", "@babel/helpers": "^7.16.7", - "@babel/parser": "^7.16.7", + "@babel/parser": "^7.16.10", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7", + "@babel/traverse": "^7.16.10", + "@babel/types": "^7.16.8", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -107,9 +107,9 @@ } }, "node_modules/@babel/core/node_modules/@babel/parser": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", - "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", + "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -305,9 +305,9 @@ } }, "node_modules/@babel/highlight": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.7.tgz", - "integrity": "sha512-aKpPMfLvGO3Q97V0qhw/V2SWNWlwfJknuwAunU7wZLSfrM4xTBvg7E5opUVi1kJTBKihE38CPg4nBiqX83PWYw==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz", + "integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==", "dependencies": { "@babel/helper-validator-identifier": "^7.16.7", "chalk": "^2.0.0", @@ -394,9 +394,9 @@ } }, "node_modules/@babel/template/node_modules/@babel/parser": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", - "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", + "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -406,9 +406,9 @@ } }, "node_modules/@babel/traverse": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.8.tgz", - "integrity": "sha512-xe+H7JlvKsDQwXRsBhSnq1/+9c+LlQcCK3Tn/l5sbx02HYns/cn7ibp9+RV1sIUqu7hKg91NWsgHurO9dowITQ==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.10.tgz", + "integrity": "sha512-yzuaYXoRJBGMlBhsMJoUW7G1UmSb/eXr/JHYM/MsOJgavJibLwASijW7oXBdw3NQ6T0bW7Ty5P/VarOs9cHmqw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.16.7", @@ -417,7 +417,7 @@ "@babel/helper-function-name": "^7.16.7", "@babel/helper-hoist-variables": "^7.16.7", "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.16.8", + "@babel/parser": "^7.16.10", "@babel/types": "^7.16.8", "debug": "^4.1.0", "globals": "^11.1.0" @@ -427,9 +427,9 @@ } }, "node_modules/@babel/traverse/node_modules/@babel/parser": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", - "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", + "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -976,13 +976,13 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.27.tgz", - "integrity": "sha512-JyxAglSM/pb9paG5ZNuKrf5IUpzLzQA3khjWGF9oESELCLQlt6O3YyPMR2A69wIpYWrf5mScZ8YY8TJKOI/1kQ==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.28.tgz", + "integrity": "sha512-mQpfEjmHVxmWKaup0HL6tLMv2HqjjJu7XT4/q0IoUXYXC4xKG8lIVn5YChJqxBTLPuQjzas7u7i9L4PAWJZRtA==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.27", + "@vue/shared": "3.2.28", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } @@ -997,27 +997,27 @@ } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.27.tgz", - "integrity": "sha512-NyQ7nEbopUBPUMHM4c3FPCbFbnQwptoPjW5Y5qfJ7hfiCNhOuhQsDNqi5JYKBxfpxiFNwjcN9F8t1AsnLrDloQ==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.28.tgz", + "integrity": "sha512-KA4yXceLteKC7VykvPnViUixemQw3A+oii+deSbZJOQKQKVh1HLosI10qxa8ImPCyun41+wG3uGR+tW7eu1W6Q==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.2.27", - "@vue/shared": "3.2.27" + "@vue/compiler-core": "3.2.28", + "@vue/shared": "3.2.28" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.27.tgz", - "integrity": "sha512-WyecUhLN5UAQAr2QlmG2nA56OEnhZJaBnSw0G1tazb9rwDuK0V9tnbIXbQgmQlx+x4sJxgg61yWGcIXfilTl3A==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.28.tgz", + "integrity": "sha512-zB0WznfEBb4CbGBHzhboHDKVO5nxbkbxxFo9iVlxObP7a9/qvA5kkZEuT7nXP52f3b3qEfmVTjIT23Lo1ndZdQ==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.27", - "@vue/compiler-dom": "3.2.27", - "@vue/compiler-ssr": "3.2.27", - "@vue/reactivity-transform": "3.2.27", - "@vue/shared": "3.2.27", + "@vue/compiler-core": "3.2.28", + "@vue/compiler-dom": "3.2.28", + "@vue/compiler-ssr": "3.2.28", + "@vue/reactivity-transform": "3.2.28", + "@vue/shared": "3.2.28", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -1034,32 +1034,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.27.tgz", - "integrity": "sha512-+l09t319iV7HVSrXfBw9OLwMZIPOFTXmHjZ61Bc5ZcwKqOYAR4uTurKpoXAfcSc5qs/q6WdE9jY3nrP0LUEMQQ==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.28.tgz", + "integrity": "sha512-z8rck1PDTu20iLyip9lAvIhaO40DUJrw3Zv0mS4Apfh3PlfWpF5dhsO5g0dgt213wgYsQIYVIlU9cfrYapqRgg==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.2.27", - "@vue/shared": "3.2.27" + "@vue/compiler-dom": "3.2.28", + "@vue/shared": "3.2.28" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.27.tgz", - "integrity": "sha512-67//61ObGxGnVrPhjygocb24eYUh+TFMhkm7szm8v5XdKXjkNl7qgIOflwGvUnwuIRJmr9nZ7+PvY0fL+H2upA==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.28.tgz", + "integrity": "sha512-zE8idNkOPnBDd2tKSIk84hOQZ+jXKvSy5FoIIVlcNEJHnCFnQ3maqeSJ9KoB2Rf6EXUhFTiTDNRlYlXmT2uHbQ==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.27", - "@vue/shared": "3.2.27", + "@vue/compiler-core": "3.2.28", + "@vue/shared": "3.2.28", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "node_modules/@vue/shared": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.27.tgz", - "integrity": "sha512-rpAn9k6O08Lvo7ekBIAnkOukX/4EsEQLPrRJBKhIEasMsOI5eX0f6mq1sDUSY7cgAqWw2d7QtP74CWxdXoyKxA==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.28.tgz", + "integrity": "sha512-eMQ8s9j8FpbGHlgUAaj/coaG3Q8YtMsoWL/RIHTsE3Ex7PUTyr7V91vB5HqWB5Sn8m4RXTHGO22/skoTUYvp0A==", "dev": true }, "node_modules/abbrev": { @@ -1790,9 +1790,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001300", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001300.tgz", - "integrity": "sha512-cVjiJHWGcNlJi8TZVKNMnvMid3Z3TTdDHmLDzlOdIiZq138Exvo0G+G0wTdVYolxKb4AYwC+38pxodiInVtJSA==", + "version": "1.0.30001301", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001301.tgz", + "integrity": "sha512-csfD/GpHMqgEL3V3uIgosvh+SVIQvCh43SNu9HRbP1lnxkKm1kjDG4f32PP571JplkLjfS+mg2p1gxR7MYrrIA==", "dev": true, "funding": { "type": "opencollective", @@ -3153,9 +3153,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "node_modules/electron-to-chromium": { - "version": "1.4.48", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.48.tgz", - "integrity": "sha512-RT3SEmpv7XUA+tKXrZGudAWLDpa7f8qmhjcLaM6OD/ERxjQ/zAojT8/Vvo0BSzbArkElFZ1WyZ9FuwAYbkdBNA==", + "version": "1.4.49", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.49.tgz", + "integrity": "sha512-k/0t1TRfonHIp8TJKfjBu2cKj8MqYTiEpOhci+q7CVEE5xnCQnx1pTa+V8b/sdhe4S3PR4p4iceEQWhGrKQORQ==", "dev": true }, "node_modules/emittery": { @@ -7891,9 +7891,9 @@ } }, "node_modules/resolve": { - "version": "1.21.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.0.tgz", - "integrity": "sha512-3wCbTpk5WJlyE4mSOtDLhqQmGFi0/TD9VPwmiolnk8U0wRgMEktqCXd3vy5buTO3tljvalNvKrjHEfrd2WpEKA==", + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.1.tgz", + "integrity": "sha512-lfEImVbnolPuaSZuLQ52cAxPBHeI77sPwCOWRdy12UG/CNa8an7oBHH1R+Fp1/mUqSJi4c8TIP6FOIPSZAUrEQ==", "dependencies": { "is-core-module": "^2.8.0", "path-parse": "^1.0.7", @@ -9884,20 +9884,20 @@ "dev": true }, "@babel/core": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.7.tgz", - "integrity": "sha512-aeLaqcqThRNZYmbMqtulsetOQZ/5gbR/dWruUCJcpas4Qoyy+QeagfDsPdMrqwsPRDNxJvBlRiZxxX7THO7qtA==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.10.tgz", + "integrity": "sha512-pbiIdZbCiMx/MM6toR+OfXarYix3uz0oVsnNtfdAGTcCTu3w/JGF8JhirevXLBJUu0WguSZI12qpKnx7EeMyLA==", "dev": true, "requires": { "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.16.7", + "@babel/generator": "^7.16.8", "@babel/helper-compilation-targets": "^7.16.7", "@babel/helper-module-transforms": "^7.16.7", "@babel/helpers": "^7.16.7", - "@babel/parser": "^7.16.7", + "@babel/parser": "^7.16.10", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7", + "@babel/traverse": "^7.16.10", + "@babel/types": "^7.16.8", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -9907,9 +9907,9 @@ }, "dependencies": { "@babel/parser": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", - "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", + "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", "dev": true }, "semver": { @@ -10055,9 +10055,9 @@ } }, "@babel/highlight": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.7.tgz", - "integrity": "sha512-aKpPMfLvGO3Q97V0qhw/V2SWNWlwfJknuwAunU7wZLSfrM4xTBvg7E5opUVi1kJTBKihE38CPg4nBiqX83PWYw==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz", + "integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==", "requires": { "@babel/helper-validator-identifier": "^7.16.7", "chalk": "^2.0.0", @@ -10119,17 +10119,17 @@ }, "dependencies": { "@babel/parser": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", - "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", + "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", "dev": true } } }, "@babel/traverse": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.8.tgz", - "integrity": "sha512-xe+H7JlvKsDQwXRsBhSnq1/+9c+LlQcCK3Tn/l5sbx02HYns/cn7ibp9+RV1sIUqu7hKg91NWsgHurO9dowITQ==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.10.tgz", + "integrity": "sha512-yzuaYXoRJBGMlBhsMJoUW7G1UmSb/eXr/JHYM/MsOJgavJibLwASijW7oXBdw3NQ6T0bW7Ty5P/VarOs9cHmqw==", "dev": true, "requires": { "@babel/code-frame": "^7.16.7", @@ -10138,16 +10138,16 @@ "@babel/helper-function-name": "^7.16.7", "@babel/helper-hoist-variables": "^7.16.7", "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.16.8", + "@babel/parser": "^7.16.10", "@babel/types": "^7.16.8", "debug": "^4.1.0", "globals": "^11.1.0" }, "dependencies": { "@babel/parser": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.8.tgz", - "integrity": "sha512-i7jDUfrVBWc+7OKcBzEe5n7fbv3i2fWtxKzzCvOjnzSxMfWMigAhtfJ7qzZNGFNMsCCd67+uz553dYKWXPvCKw==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", + "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", "dev": true } } @@ -10585,13 +10585,13 @@ } }, "@vue/compiler-core": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.27.tgz", - "integrity": "sha512-JyxAglSM/pb9paG5ZNuKrf5IUpzLzQA3khjWGF9oESELCLQlt6O3YyPMR2A69wIpYWrf5mScZ8YY8TJKOI/1kQ==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.28.tgz", + "integrity": "sha512-mQpfEjmHVxmWKaup0HL6tLMv2HqjjJu7XT4/q0IoUXYXC4xKG8lIVn5YChJqxBTLPuQjzas7u7i9L4PAWJZRtA==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.27", + "@vue/shared": "3.2.28", "estree-walker": "^2.0.2", "source-map": "^0.6.1" }, @@ -10605,27 +10605,27 @@ } }, "@vue/compiler-dom": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.27.tgz", - "integrity": "sha512-NyQ7nEbopUBPUMHM4c3FPCbFbnQwptoPjW5Y5qfJ7hfiCNhOuhQsDNqi5JYKBxfpxiFNwjcN9F8t1AsnLrDloQ==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.28.tgz", + "integrity": "sha512-KA4yXceLteKC7VykvPnViUixemQw3A+oii+deSbZJOQKQKVh1HLosI10qxa8ImPCyun41+wG3uGR+tW7eu1W6Q==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.27", - "@vue/shared": "3.2.27" + "@vue/compiler-core": "3.2.28", + "@vue/shared": "3.2.28" } }, "@vue/compiler-sfc": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.27.tgz", - "integrity": "sha512-WyecUhLN5UAQAr2QlmG2nA56OEnhZJaBnSw0G1tazb9rwDuK0V9tnbIXbQgmQlx+x4sJxgg61yWGcIXfilTl3A==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.28.tgz", + "integrity": "sha512-zB0WznfEBb4CbGBHzhboHDKVO5nxbkbxxFo9iVlxObP7a9/qvA5kkZEuT7nXP52f3b3qEfmVTjIT23Lo1ndZdQ==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.27", - "@vue/compiler-dom": "3.2.27", - "@vue/compiler-ssr": "3.2.27", - "@vue/reactivity-transform": "3.2.27", - "@vue/shared": "3.2.27", + "@vue/compiler-core": "3.2.28", + "@vue/compiler-dom": "3.2.28", + "@vue/compiler-ssr": "3.2.28", + "@vue/reactivity-transform": "3.2.28", + "@vue/shared": "3.2.28", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -10641,32 +10641,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.27.tgz", - "integrity": "sha512-+l09t319iV7HVSrXfBw9OLwMZIPOFTXmHjZ61Bc5ZcwKqOYAR4uTurKpoXAfcSc5qs/q6WdE9jY3nrP0LUEMQQ==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.28.tgz", + "integrity": "sha512-z8rck1PDTu20iLyip9lAvIhaO40DUJrw3Zv0mS4Apfh3PlfWpF5dhsO5g0dgt213wgYsQIYVIlU9cfrYapqRgg==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.27", - "@vue/shared": "3.2.27" + "@vue/compiler-dom": "3.2.28", + "@vue/shared": "3.2.28" } }, "@vue/reactivity-transform": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.27.tgz", - "integrity": "sha512-67//61ObGxGnVrPhjygocb24eYUh+TFMhkm7szm8v5XdKXjkNl7qgIOflwGvUnwuIRJmr9nZ7+PvY0fL+H2upA==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.28.tgz", + "integrity": "sha512-zE8idNkOPnBDd2tKSIk84hOQZ+jXKvSy5FoIIVlcNEJHnCFnQ3maqeSJ9KoB2Rf6EXUhFTiTDNRlYlXmT2uHbQ==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.27", - "@vue/shared": "3.2.27", + "@vue/compiler-core": "3.2.28", + "@vue/shared": "3.2.28", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.27", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.27.tgz", - "integrity": "sha512-rpAn9k6O08Lvo7ekBIAnkOukX/4EsEQLPrRJBKhIEasMsOI5eX0f6mq1sDUSY7cgAqWw2d7QtP74CWxdXoyKxA==", + "version": "3.2.28", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.28.tgz", + "integrity": "sha512-eMQ8s9j8FpbGHlgUAaj/coaG3Q8YtMsoWL/RIHTsE3Ex7PUTyr7V91vB5HqWB5Sn8m4RXTHGO22/skoTUYvp0A==", "dev": true }, "abbrev": { @@ -11223,9 +11223,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001300", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001300.tgz", - "integrity": "sha512-cVjiJHWGcNlJi8TZVKNMnvMid3Z3TTdDHmLDzlOdIiZq138Exvo0G+G0wTdVYolxKb4AYwC+38pxodiInVtJSA==", + "version": "1.0.30001301", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001301.tgz", + "integrity": "sha512-csfD/GpHMqgEL3V3uIgosvh+SVIQvCh43SNu9HRbP1lnxkKm1kjDG4f32PP571JplkLjfS+mg2p1gxR7MYrrIA==", "dev": true }, "catharsis": { @@ -12320,9 +12320,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.4.48", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.48.tgz", - "integrity": "sha512-RT3SEmpv7XUA+tKXrZGudAWLDpa7f8qmhjcLaM6OD/ERxjQ/zAojT8/Vvo0BSzbArkElFZ1WyZ9FuwAYbkdBNA==", + "version": "1.4.49", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.49.tgz", + "integrity": "sha512-k/0t1TRfonHIp8TJKfjBu2cKj8MqYTiEpOhci+q7CVEE5xnCQnx1pTa+V8b/sdhe4S3PR4p4iceEQWhGrKQORQ==", "dev": true }, "emittery": { @@ -16044,9 +16044,9 @@ } }, "resolve": { - "version": "1.21.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.0.tgz", - "integrity": "sha512-3wCbTpk5WJlyE4mSOtDLhqQmGFi0/TD9VPwmiolnk8U0wRgMEktqCXd3vy5buTO3tljvalNvKrjHEfrd2WpEKA==", + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.1.tgz", + "integrity": "sha512-lfEImVbnolPuaSZuLQ52cAxPBHeI77sPwCOWRdy12UG/CNa8an7oBHH1R+Fp1/mUqSJi4c8TIP6FOIPSZAUrEQ==", "requires": { "is-core-module": "^2.8.0", "path-parse": "^1.0.7", From 7885977a5f79d26090e44f0f88f0d85381d74b9f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 24 Jan 2022 11:20:44 +0100 Subject: [PATCH 0598/1272] [ui5-project][BREAKING] Require Node.js >= 16.13.2 / npm >= 8 BREAKING CHANGE: Support for older Node.js and npm releases has been dropped. Only Node.js v16.13.2 and npm v8 or higher are supported. --- .../project/.github/workflows/github-ci.yml | 4 ++-- packages/project/azure-pipelines.yml | 20 +++++++------------ packages/project/package-lock.json | 4 ++-- packages/project/package.json | 4 ++-- 4 files changed, 13 insertions(+), 19 deletions(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index cbbf77c58bf..5a8462d7e02 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -20,10 +20,10 @@ jobs: - uses: actions/checkout@v2 - - name: Use Node.js LTS 14.x + - name: Use Node.js LTS 16.x uses: actions/setup-node@v2.4.1 with: - node-version: 14.x + node-version: 16.x - name: Install dependencies run: npm ci diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index dd0d98b00ca..75fd5c3e53e 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -8,24 +8,18 @@ trigger: strategy: matrix: - linux_node_10: + linux_node_lts_16: imageName: 'ubuntu-20.04' - node_version: 10.x - linux_node_lts_12: - imageName: 'ubuntu-20.04' - node_version: 12.x - linux_node_lts_14: - imageName: 'ubuntu-20.04' - node_version: 14.x + node_version: 16.x linux_node_latest: imageName: 'ubuntu-20.04' - node_version: 16.x + node_version: 17.x mac_node_latest: - imageName: 'macOS-10.15' - node_version: 16.x + imageName: 'macOS-11' + node_version: 17.x windows_node_latest: - imageName: 'windows-2019' - node_version: 16.x + imageName: 'windows-2022' + node_version: 17.x pool: vmImage: $(imageName) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f17e3a89e5d..242302508ce 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -52,8 +52,8 @@ "tap-xunit": "^2.4.1" }, "engines": { - "node": ">= 10", - "npm": ">= 5" + "node": ">= 16.13.2", + "npm": ">= 8" } }, "node_modules/@babel/code-frame": { diff --git a/packages/project/package.json b/packages/project/package.json index 052eee925ba..ee87eef88a7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -18,8 +18,8 @@ ], "main": "index.js", "engines": { - "node": ">= 10", - "npm": ">= 5" + "node": ">= 16.13.2", + "npm": ">= 8" }, "scripts": { "test": "npm run lint && npm run jsdoc-generate && npm run coverage && npm run depcheck", From cbf9e2ae37b40dfe4551d5b2f68fc3a959a672b8 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 24 Jan 2022 11:44:35 +0100 Subject: [PATCH 0599/1272] [ui5-project][INTERNAL] Upgrade ESlint / Use ES2021 --- packages/project/.eslintrc.js | 9 +- packages/project/package-lock.json | 765 +++++++---------------------- packages/project/package.json | 4 +- 3 files changed, 186 insertions(+), 592 deletions(-) diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js index 52b9f68366c..b1b5dfca860 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.js @@ -1,10 +1,7 @@ module.exports = { "env": { "node": true, - "es6": true - }, - "parserOptions": { - "ecmaVersion": 8 + "es2021": true }, "extends": ["eslint:recommended", "google"], "plugins": [ @@ -48,7 +45,9 @@ module.exports = { "valid-jsdoc": 0, // jsdoc/check-examples is temporarily set to "warn" as the rule causes issues in our CI // See: https://github.com/gajus/eslint-plugin-jsdoc/issues/508 - "jsdoc/check-examples": 1, + // Starting with ESLint v8, it needs to be disabled as it currently can't be supported + // See: https://github.com/eslint/eslint/issues/14745 + "jsdoc/check-examples": 0, "jsdoc/check-param-names": 2, "jsdoc/check-tag-names": 2, "jsdoc/check-types": 2, diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 242302508ce..3091a75dc0b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -35,9 +35,9 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^1.2.0", - "eslint": "^7.32.0", + "eslint": "^8.7.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^35.5.1", + "eslint-plugin-jsdoc": "^37.6.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", @@ -473,90 +473,51 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.9.0-alpha.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.9.0-alpha.1.tgz", - "integrity": "sha512-Clxxc0PwpISoYYBibA+1L2qFJ7gvFVhI2Hos87S06K+Q0cXdOhZQJNKWuaQGPAeHjZEuUB/YoWOfwjuF2wirqA==", + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.17.0.tgz", + "integrity": "sha512-B8DIIWE194KyQFPojUs+THa2XX+1vulwTBjirw6GqcxjtNE60Rreex26svBnV9SNLTuz92ctZx5XQE1H7yOxgA==", "dev": true, "dependencies": { - "comment-parser": "1.1.6-beta.0", + "comment-parser": "1.3.0", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "1.0.4" + "jsdoc-type-pratt-parser": "~2.2.1" }, "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@es-joy/jsdoccomment/node_modules/jsdoc-type-pratt-parser": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.0.4.tgz", - "integrity": "sha512-jzmW9gokeq9+bHPDR1nCeidMyFUikdZlbOhKzh9+/nJqB75XhpNKec1/UuxW5c4+O+Pi31Gc/dCboyfSm/pSpQ==", - "dev": true, - "engines": { - "node": ">=12.0.0" + "node": "^12 || ^14 || ^16 || ^17" } }, "node_modules/@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.5.tgz", + "integrity": "sha512-BLxsnmK3KyPunz5wmCCpqy0YelEoxxGmH73Is+Z74oOTMtExcjkr3dDR6quwrjh1YspA8DH9gnX1o069KiS9AQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", + "debug": "^4.3.2", + "espree": "^9.2.0", "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", + "js-yaml": "^4.1.0", "minimatch": "^3.0.4", "strip-json-comments": "^3.1.1" }, "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/@eslint/eslintrc/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/@eslint/eslintrc/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc/node_modules/espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", + "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", "dev": true, "dependencies": { - "acorn": "^7.4.0", + "acorn": "^8.7.0", "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" + "eslint-visitor-keys": "^3.1.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc/node_modules/globals": { @@ -583,19 +544,6 @@ "node": ">= 4" } }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, "node_modules/@eslint/eslintrc/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -609,12 +557,12 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.2.tgz", + "integrity": "sha512-UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.0", + "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", "minimatch": "^3.0.4" }, @@ -1175,15 +1123,6 @@ "string-width": "^4.1.0" } }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -2233,12 +2172,12 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "node_modules/comment-parser": { - "version": "1.1.6-beta.0", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.1.6-beta.0.tgz", - "integrity": "sha512-q3cA8TSMyqW7wcPSYWzbO/rMahnXgzs4SLG/UIWXdEsnXTFPZkEkWAdNgPiHig2OzxgpPLOh4WwsmClDxndwHw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.0.tgz", + "integrity": "sha512-hRpmWIKgzd81vn0ydoWoyPoALEOnF4wt8yKD35Ib1D6XC2siLiYaiqfGkYrunuKdsXGwpBpHU3+9r+RVw2NZfA==", "dev": true, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, "node_modules/common-path-prefix": { @@ -3210,18 +3149,6 @@ "once": "^1.4.0" } }, - "node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "dependencies": { - "ansi-colors": "^4.1.1" - }, - "engines": { - "node": ">=8.6" - } - }, "node_modules/entities": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", @@ -3402,49 +3329,44 @@ } }, "node_modules/eslint": { - "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.7.0.tgz", + "integrity": "sha512-ifHYzkBGrzS2iDU7KjhCAVMGCvF6M3Xfs8X8b37cgrUlDt6bWRTpRh6T/gtSXv1HJ/BUGgmjvNvOEGu85Iif7w==", "dev": true, "dependencies": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.3", - "@humanwhocodes/config-array": "^0.5.0", + "@eslint/eslintrc": "^1.0.5", + "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", - "debug": "^4.0.1", + "debug": "^4.3.2", "doctrine": "^3.0.0", - "enquirer": "^2.3.5", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", + "eslint-scope": "^7.1.0", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.2.0", + "espree": "^9.3.0", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.1.2", + "glob-parent": "^6.0.1", "globals": "^13.6.0", - "ignore": "^4.0.6", + "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", + "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", "minimatch": "^3.0.4", "natural-compare": "^1.4.0", "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", - "table": "^6.0.9", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, @@ -3452,7 +3374,7 @@ "eslint": "bin/eslint.js" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { "url": "https://opencollective.com/eslint" @@ -3471,66 +3393,68 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "35.5.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.5.1.tgz", - "integrity": "sha512-pPYPWtsykwVEue1tYEyoppBj4dgF7XicF67tLLLraY6RQYBq7qMKjUHji19+hfiTtYKKBD0YfeK8hgjPAE5viw==", + "version": "37.6.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.6.3.tgz", + "integrity": "sha512-Ysd1ZK4kL7DjjRJtWzb6Z7YANu7ndalu5PQBhOn07SlpKQ/+8JXvdtQ6yyADOO8w9xW5ZEEzuGY3KWhtk4CRYA==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "0.9.0-alpha.1", - "comment-parser": "1.1.6-beta.0", - "debug": "^4.3.2", + "@es-joy/jsdoccomment": "~0.17.0", + "comment-parser": "1.3.0", + "debug": "^4.3.3", + "escape-string-regexp": "^4.0.0", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "^1.0.4", - "lodash": "^4.17.21", "regextras": "^0.8.0", "semver": "^7.3.5", "spdx-expression-parse": "^3.0.1" }, "engines": { - "node": ">=12" + "node": "^12 || ^14 || ^16 || ^17" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0" + "eslint": "^7.0.0 || ^8.0.0" } }, "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.0.tgz", + "integrity": "sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=8.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" } }, "node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "eslint-visitor-keys": "^2.0.0" }, "engines": { - "node": ">=6" + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" }, "funding": { "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" } }, "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-visitor-keys": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", @@ -3539,57 +3463,39 @@ "node": ">=10" } }, - "node_modules/eslint/node_modules/@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/eslint/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "node_modules/eslint-visitor-keys": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz", + "integrity": "sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==", "dev": true, - "bin": { - "acorn": "bin/acorn" - }, "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/eslint/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/eslint/node_modules/espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", + "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", "dev": true, "dependencies": { - "acorn": "^7.4.0", + "acorn": "^8.7.0", "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" + "eslint-visitor-keys": "^3.1.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/eslint/node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, "engines": { - "node": ">=4" + "node": ">=10.13.0" } }, "node_modules/eslint/node_modules/globals": { @@ -3607,28 +3513,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/eslint/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -5330,9 +5214,9 @@ } }, "node_modules/jsdoc-type-pratt-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.2.0.tgz", - "integrity": "sha512-4STjeF14jp4bqha44nKMY1OUI6d2/g6uclHWUCZ7B4DoLzaB5bmpTkQrpqU+vSVzMD0LsKAOskcnI3I3VfIpmg==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.2.tgz", + "integrity": "sha512-zRokSWcPLSWkoNzsWn9pq7YYSwDhKyEe+cJYT2qaPqLOOJb5sFSi46BPj81vP+e8chvCNdQL9RG86Bi9EI6MDw==", "dev": true, "engines": { "node": ">=12.0.0" @@ -5624,12 +5508,6 @@ "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", "dev": true }, - "node_modules/lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true - }, "node_modules/log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", @@ -7412,15 +7290,6 @@ "node": ">=8" } }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", @@ -7856,15 +7725,6 @@ "node": ">=0.10.0" } }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/require-main-filename": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", @@ -8747,94 +8607,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/table": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", - "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", - "dev": true, - "dependencies": { - "ajv": "^8.0.1", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/table/node_modules/ajv": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz", - "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/table/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/table/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/table/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/table/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/table/node_modules/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, "node_modules/taffydb": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", @@ -10180,71 +9952,42 @@ } }, "@es-joy/jsdoccomment": { - "version": "0.9.0-alpha.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.9.0-alpha.1.tgz", - "integrity": "sha512-Clxxc0PwpISoYYBibA+1L2qFJ7gvFVhI2Hos87S06K+Q0cXdOhZQJNKWuaQGPAeHjZEuUB/YoWOfwjuF2wirqA==", + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.17.0.tgz", + "integrity": "sha512-B8DIIWE194KyQFPojUs+THa2XX+1vulwTBjirw6GqcxjtNE60Rreex26svBnV9SNLTuz92ctZx5XQE1H7yOxgA==", "dev": true, "requires": { - "comment-parser": "1.1.6-beta.0", + "comment-parser": "1.3.0", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "1.0.4" - }, - "dependencies": { - "jsdoc-type-pratt-parser": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.0.4.tgz", - "integrity": "sha512-jzmW9gokeq9+bHPDR1nCeidMyFUikdZlbOhKzh9+/nJqB75XhpNKec1/UuxW5c4+O+Pi31Gc/dCboyfSm/pSpQ==", - "dev": true - } + "jsdoc-type-pratt-parser": "~2.2.1" } }, "@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.5.tgz", + "integrity": "sha512-BLxsnmK3KyPunz5wmCCpqy0YelEoxxGmH73Is+Z74oOTMtExcjkr3dDR6quwrjh1YspA8DH9gnX1o069KiS9AQ==", "dev": true, "requires": { "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", + "debug": "^4.3.2", + "espree": "^9.2.0", "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", + "js-yaml": "^4.1.0", "minimatch": "^3.0.4", "strip-json-comments": "^3.1.1" }, "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - }, "espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", + "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", "dev": true, "requires": { - "acorn": "^7.4.0", + "acorn": "^8.7.0", "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" + "eslint-visitor-keys": "^3.1.0" } }, "globals": { @@ -10262,16 +10005,6 @@ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -10281,12 +10014,12 @@ } }, "@humanwhocodes/config-array": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.2.tgz", + "integrity": "sha512-UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA==", "dev": true, "requires": { - "@humanwhocodes/object-schema": "^1.2.0", + "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", "minimatch": "^3.0.4" } @@ -10753,12 +10486,6 @@ "string-width": "^4.1.0" } }, - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - }, "ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -11562,9 +11289,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "1.1.6-beta.0", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.1.6-beta.0.tgz", - "integrity": "sha512-q3cA8TSMyqW7wcPSYWzbO/rMahnXgzs4SLG/UIWXdEsnXTFPZkEkWAdNgPiHig2OzxgpPLOh4WwsmClDxndwHw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.0.tgz", + "integrity": "sha512-hRpmWIKgzd81vn0ydoWoyPoALEOnF4wt8yKD35Ib1D6XC2siLiYaiqfGkYrunuKdsXGwpBpHU3+9r+RVw2NZfA==", "dev": true }, "common-path-prefix": { @@ -12367,15 +12094,6 @@ "once": "^1.4.0" } }, - "enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "requires": { - "ansi-colors": "^4.1.1" - } - }, "entities": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", @@ -12534,94 +12252,66 @@ } }, "eslint": { - "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.7.0.tgz", + "integrity": "sha512-ifHYzkBGrzS2iDU7KjhCAVMGCvF6M3Xfs8X8b37cgrUlDt6bWRTpRh6T/gtSXv1HJ/BUGgmjvNvOEGu85Iif7w==", "dev": true, "requires": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.3", - "@humanwhocodes/config-array": "^0.5.0", + "@eslint/eslintrc": "^1.0.5", + "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", - "debug": "^4.0.1", + "debug": "^4.3.2", "doctrine": "^3.0.0", - "enquirer": "^2.3.5", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", + "eslint-scope": "^7.1.0", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.2.0", + "espree": "^9.3.0", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.1.2", + "glob-parent": "^6.0.1", "globals": "^13.6.0", - "ignore": "^4.0.6", + "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", + "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", "minimatch": "^3.0.4", "natural-compare": "^1.4.0", "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", - "table": "^6.0.9", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, "dependencies": { - "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, - "requires": { - "@babel/highlight": "^7.10.4" - } - }, - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "espree": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", + "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", "dev": true, "requires": { - "sprintf-js": "~1.0.2" + "acorn": "^8.7.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^3.1.0" } }, - "espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, "requires": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } + "is-glob": "^4.0.3" } }, "globals": { @@ -12633,22 +12323,6 @@ "type-fest": "^0.20.2" } }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -12665,53 +12339,60 @@ "requires": {} }, "eslint-plugin-jsdoc": { - "version": "35.5.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-35.5.1.tgz", - "integrity": "sha512-pPYPWtsykwVEue1tYEyoppBj4dgF7XicF67tLLLraY6RQYBq7qMKjUHji19+hfiTtYKKBD0YfeK8hgjPAE5viw==", + "version": "37.6.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.6.3.tgz", + "integrity": "sha512-Ysd1ZK4kL7DjjRJtWzb6Z7YANu7ndalu5PQBhOn07SlpKQ/+8JXvdtQ6yyADOO8w9xW5ZEEzuGY3KWhtk4CRYA==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "0.9.0-alpha.1", - "comment-parser": "1.1.6-beta.0", - "debug": "^4.3.2", + "@es-joy/jsdoccomment": "~0.17.0", + "comment-parser": "1.3.0", + "debug": "^4.3.3", + "escape-string-regexp": "^4.0.0", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "^1.0.4", - "lodash": "^4.17.21", "regextras": "^0.8.0", "semver": "^7.3.5", "spdx-expression-parse": "^3.0.1" } }, "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.0.tgz", + "integrity": "sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg==", "dev": true, "requires": { "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } } }, "eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, "requires": { - "eslint-visitor-keys": "^1.1.0" + "eslint-visitor-keys": "^2.0.0" }, "dependencies": { "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true } } }, "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz", + "integrity": "sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==", "dev": true }, "espree": { @@ -14034,9 +13715,9 @@ } }, "jsdoc-type-pratt-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.2.0.tgz", - "integrity": "sha512-4STjeF14jp4bqha44nKMY1OUI6d2/g6uclHWUCZ7B4DoLzaB5bmpTkQrpqU+vSVzMD0LsKAOskcnI3I3VfIpmg==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.2.tgz", + "integrity": "sha512-zRokSWcPLSWkoNzsWn9pq7YYSwDhKyEe+cJYT2qaPqLOOJb5sFSi46BPj81vP+e8chvCNdQL9RG86Bi9EI6MDw==", "dev": true }, "jsesc": { @@ -14270,12 +13951,6 @@ "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", "dev": true }, - "lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true - }, "log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", @@ -15668,12 +15343,6 @@ "fromentries": "^1.2.0" } }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, "promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", @@ -16012,12 +15681,6 @@ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "dev": true }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - }, "require-main-filename": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", @@ -16720,74 +16383,6 @@ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" }, - "table": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", - "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", - "dev": true, - "requires": { - "ajv": "^8.0.1", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "ajv": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz", - "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - } - } - } - }, "taffydb": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index ee87eef88a7..eee5a03b596 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,9 +127,9 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^1.2.0", - "eslint": "^7.32.0", + "eslint": "^8.7.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^35.5.1", + "eslint-plugin-jsdoc": "^37.6.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From 5b88a6e2ab01b21264026f5e50590cf7de62e30f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 25 Jan 2022 09:51:06 +0000 Subject: [PATCH 0600/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 397 +++++++++++++++-------------- 1 file changed, 212 insertions(+), 185 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3091a75dc0b..1a75cae32f4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -77,9 +77,9 @@ } }, "node_modules/@babel/core": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.10.tgz", - "integrity": "sha512-pbiIdZbCiMx/MM6toR+OfXarYix3uz0oVsnNtfdAGTcCTu3w/JGF8JhirevXLBJUu0WguSZI12qpKnx7EeMyLA==", + "version": "7.16.12", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.12.tgz", + "integrity": "sha512-dK5PtG1uiN2ikk++5OzSYsitZKny4wOCD0nrO4TqnW4BVBTQ2NGS3NgilvT/TEyxTST7LNyWV/T4tXDoD3fOgg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.16.7", @@ -87,7 +87,7 @@ "@babel/helper-compilation-targets": "^7.16.7", "@babel/helper-module-transforms": "^7.16.7", "@babel/helpers": "^7.16.7", - "@babel/parser": "^7.16.10", + "@babel/parser": "^7.16.12", "@babel/template": "^7.16.7", "@babel/traverse": "^7.16.10", "@babel/types": "^7.16.8", @@ -107,9 +107,9 @@ } }, "node_modules/@babel/core/node_modules/@babel/parser": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", - "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", + "version": "7.16.12", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", + "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -394,9 +394,9 @@ } }, "node_modules/@babel/template/node_modules/@babel/parser": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", - "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", + "version": "7.16.12", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", + "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -427,9 +427,9 @@ } }, "node_modules/@babel/traverse/node_modules/@babel/parser": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", - "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", + "version": "7.16.12", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", + "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -781,6 +781,25 @@ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", "dev": true }, + "node_modules/@types/linkify-it": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", + "integrity": "sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==" + }, + "node_modules/@types/markdown-it": { + "version": "12.2.3", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-12.2.3.tgz", + "integrity": "sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==", + "dependencies": { + "@types/linkify-it": "*", + "@types/mdurl": "*" + } + }, + "node_modules/@types/mdurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", + "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" + }, "node_modules/@types/minimatch": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", @@ -924,13 +943,13 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.28.tgz", - "integrity": "sha512-mQpfEjmHVxmWKaup0HL6tLMv2HqjjJu7XT4/q0IoUXYXC4xKG8lIVn5YChJqxBTLPuQjzas7u7i9L4PAWJZRtA==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.29.tgz", + "integrity": "sha512-RePZ/J4Ub3sb7atQw6V6Rez+/5LCRHGFlSetT3N4VMrejqJnNPXKUt5AVm/9F5MJriy2w/VudEIvgscCfCWqxw==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.28", + "@vue/shared": "3.2.29", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } @@ -945,27 +964,27 @@ } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.28.tgz", - "integrity": "sha512-KA4yXceLteKC7VykvPnViUixemQw3A+oii+deSbZJOQKQKVh1HLosI10qxa8ImPCyun41+wG3uGR+tW7eu1W6Q==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.29.tgz", + "integrity": "sha512-y26vK5khdNS9L3ckvkqJk/78qXwWb75Ci8iYLb67AkJuIgyKhIOcR1E8RIt4mswlVCIeI9gQ+fmtdhaiTAtrBQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.2.28", - "@vue/shared": "3.2.28" + "@vue/compiler-core": "3.2.29", + "@vue/shared": "3.2.29" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.28.tgz", - "integrity": "sha512-zB0WznfEBb4CbGBHzhboHDKVO5nxbkbxxFo9iVlxObP7a9/qvA5kkZEuT7nXP52f3b3qEfmVTjIT23Lo1ndZdQ==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.29.tgz", + "integrity": "sha512-X9+0dwsag2u6hSOP/XsMYqFti/edvYvxamgBgCcbSYuXx1xLZN+dS/GvQKM4AgGS4djqo0jQvWfIXdfZ2ET68g==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.28", - "@vue/compiler-dom": "3.2.28", - "@vue/compiler-ssr": "3.2.28", - "@vue/reactivity-transform": "3.2.28", - "@vue/shared": "3.2.28", + "@vue/compiler-core": "3.2.29", + "@vue/compiler-dom": "3.2.29", + "@vue/compiler-ssr": "3.2.29", + "@vue/reactivity-transform": "3.2.29", + "@vue/shared": "3.2.29", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -982,32 +1001,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.28.tgz", - "integrity": "sha512-z8rck1PDTu20iLyip9lAvIhaO40DUJrw3Zv0mS4Apfh3PlfWpF5dhsO5g0dgt213wgYsQIYVIlU9cfrYapqRgg==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.29.tgz", + "integrity": "sha512-LrvQwXlx66uWsB9/VydaaqEpae9xtmlUkeSKF6aPDbzx8M1h7ukxaPjNCAXuFd3fUHblcri8k42lfimHfzMICA==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.2.28", - "@vue/shared": "3.2.28" + "@vue/compiler-dom": "3.2.29", + "@vue/shared": "3.2.29" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.28.tgz", - "integrity": "sha512-zE8idNkOPnBDd2tKSIk84hOQZ+jXKvSy5FoIIVlcNEJHnCFnQ3maqeSJ9KoB2Rf6EXUhFTiTDNRlYlXmT2uHbQ==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.29.tgz", + "integrity": "sha512-YF6HdOuhdOw6KyRm59+3rML8USb9o8mYM1q+SH0G41K3/q/G7uhPnHGKvspzceD7h9J3VR1waOQ93CUZj7J7OA==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.28", - "@vue/shared": "3.2.28", + "@vue/compiler-core": "3.2.29", + "@vue/shared": "3.2.29", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "node_modules/@vue/shared": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.28.tgz", - "integrity": "sha512-eMQ8s9j8FpbGHlgUAaj/coaG3Q8YtMsoWL/RIHTsE3Ex7PUTyr7V91vB5HqWB5Sn8m4RXTHGO22/skoTUYvp0A==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.29.tgz", + "integrity": "sha512-BjNpU8OK6Z0LVzGUppEk0CMYm/hKDnZfYdjSmPOs0N+TR1cLKJAkDwW8ASZUvaaSLEi6d3hVM7jnWnX+6yWnHw==", "dev": true }, "node_modules/abbrev": { @@ -3092,9 +3111,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "node_modules/electron-to-chromium": { - "version": "1.4.49", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.49.tgz", - "integrity": "sha512-k/0t1TRfonHIp8TJKfjBu2cKj8MqYTiEpOhci+q7CVEE5xnCQnx1pTa+V8b/sdhe4S3PR4p4iceEQWhGrKQORQ==", + "version": "1.4.52", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.52.tgz", + "integrity": "sha512-JGkh8HEh5PnVrhU4HbpyyO0O791dVY6k7AdqfDeqbcRMeoGxtNHWT77deR2nhvbLe4dKpxjlDEvdEwrvRLGu2Q==", "dev": true }, "node_modules/emittery": { @@ -5187,24 +5206,25 @@ } }, "node_modules/jsdoc": { - "version": "3.6.7", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.7.tgz", - "integrity": "sha512-sxKt7h0vzCd+3Y81Ey2qinupL6DpRSZJclS04ugHDNmRUXGzqicMJ6iwayhSA0S0DwwX30c5ozyUthr1QKF6uw==", + "version": "3.6.10", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.10.tgz", + "integrity": "sha512-IdQ8ppSo5LKZ9o3M+LKIIK8i00DIe5msDvG3G81Km+1dhy0XrOWD0Ji8H61ElgyEj/O9KRLokgKbAM9XX9CJAg==", "dependencies": { "@babel/parser": "^7.9.4", + "@types/markdown-it": "^12.2.3", "bluebird": "^3.7.2", "catharsis": "^0.9.0", "escape-string-regexp": "^2.0.0", - "js2xmlparser": "^4.0.1", - "klaw": "^3.0.0", - "markdown-it": "^10.0.0", - "markdown-it-anchor": "^5.2.7", - "marked": "^2.0.3", + "js2xmlparser": "^4.0.2", + "klaw": "^4.0.1", + "markdown-it": "^12.3.2", + "markdown-it-anchor": "^8.4.1", + "marked": "^4.0.10", "mkdirp": "^1.0.4", "requizzle": "^0.2.3", "strip-json-comments": "^3.1.0", "taffydb": "2.6.2", - "underscore": "~1.13.1" + "underscore": "~1.13.2" }, "bin": { "jsdoc": "jsdoc.js" @@ -5332,11 +5352,11 @@ } }, "node_modules/klaw": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", - "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", - "dependencies": { - "graceful-fs": "^4.1.9" + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-4.0.1.tgz", + "integrity": "sha512-pgsE40/SvC7st04AHiISNewaIMUbY5V/K8b21ekiPiFoYs/EYSdsGa+FJArB1d441uq4Q8zZyIxvAzkGNlBdRw==", + "engines": { + "node": ">=14.14.0" } }, "node_modules/latest-version": { @@ -5394,9 +5414,9 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, "node_modules/linkify-it": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", - "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz", + "integrity": "sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==", "dependencies": { "uc.micro": "^1.0.1" } @@ -5642,13 +5662,13 @@ } }, "node_modules/markdown-it": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz", - "integrity": "sha512-YWOP1j7UbDNz+TumYP1kpwnP0aEa711cJjrAQrzd0UXlbJfc5aAq0F/PZHjiioqDC1NKgvIMX+o+9Bk7yuM2dg==", + "version": "12.3.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", + "integrity": "sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==", "dependencies": { - "argparse": "^1.0.7", - "entities": "~2.0.0", - "linkify-it": "^2.0.0", + "argparse": "^2.0.1", + "entities": "~2.1.0", + "linkify-it": "^3.0.1", "mdurl": "^1.0.1", "uc.micro": "^1.0.5" }, @@ -5657,35 +5677,31 @@ } }, "node_modules/markdown-it-anchor": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.3.0.tgz", - "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==", + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.4.1.tgz", + "integrity": "sha512-sLODeRetZ/61KkKLJElaU3NuU2z7MhXf12Ml1WJMSdwpngeofneCRF+JBbat8HiSqhniOMuTemXMrsI7hA6XyA==", "peerDependencies": { + "@types/markdown-it": "*", "markdown-it": "*" } }, - "node_modules/markdown-it/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, "node_modules/markdown-it/node_modules/entities": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", - "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz", + "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } }, "node_modules/marked": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/marked/-/marked-2.1.3.tgz", - "integrity": "sha512-/Q+7MGzaETqifOMWYEA7HVMaZb4XbcRfaOzcSsHZEith83KGlvaSG33u0SKu89Mj5h+T8V2hM+8O45Qc5XTgwA==", + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.10.tgz", + "integrity": "sha512-+QvuFj0nGgO970fySghXGmuw+Fd0gD2x3+MqCWLIPf5oxdv1Ka6b2q+z9RP01P/IaKPMEramy+7cNy/Lw8c3hw==", "bin": { - "marked": "bin/marked" + "marked": "bin/marked.js" }, "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/matcher": { @@ -7751,11 +7767,11 @@ } }, "node_modules/resolve": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.1.tgz", - "integrity": "sha512-lfEImVbnolPuaSZuLQ52cAxPBHeI77sPwCOWRdy12UG/CNa8an7oBHH1R+Fp1/mUqSJi4c8TIP6FOIPSZAUrEQ==", + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", "dependencies": { - "is-core-module": "^2.8.0", + "is-core-module": "^2.8.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -8394,7 +8410,8 @@ "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true }, "node_modules/ssri": { "version": "6.0.2", @@ -9656,9 +9673,9 @@ "dev": true }, "@babel/core": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.10.tgz", - "integrity": "sha512-pbiIdZbCiMx/MM6toR+OfXarYix3uz0oVsnNtfdAGTcCTu3w/JGF8JhirevXLBJUu0WguSZI12qpKnx7EeMyLA==", + "version": "7.16.12", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.12.tgz", + "integrity": "sha512-dK5PtG1uiN2ikk++5OzSYsitZKny4wOCD0nrO4TqnW4BVBTQ2NGS3NgilvT/TEyxTST7LNyWV/T4tXDoD3fOgg==", "dev": true, "requires": { "@babel/code-frame": "^7.16.7", @@ -9666,7 +9683,7 @@ "@babel/helper-compilation-targets": "^7.16.7", "@babel/helper-module-transforms": "^7.16.7", "@babel/helpers": "^7.16.7", - "@babel/parser": "^7.16.10", + "@babel/parser": "^7.16.12", "@babel/template": "^7.16.7", "@babel/traverse": "^7.16.10", "@babel/types": "^7.16.8", @@ -9679,9 +9696,9 @@ }, "dependencies": { "@babel/parser": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", - "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", + "version": "7.16.12", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", + "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", "dev": true }, "semver": { @@ -9891,9 +9908,9 @@ }, "dependencies": { "@babel/parser": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", - "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", + "version": "7.16.12", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", + "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", "dev": true } } @@ -9917,9 +9934,9 @@ }, "dependencies": { "@babel/parser": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.10.tgz", - "integrity": "sha512-Sm/S9Or6nN8uiFsQU1yodyDW3MWXQhFeqzMPM+t8MJjM+pLsnFVxFZzkpXKvUXh+Gz9cbMoYYs484+Jw/NTEFQ==", + "version": "7.16.12", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", + "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", "dev": true } } @@ -10195,6 +10212,25 @@ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", "dev": true }, + "@types/linkify-it": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", + "integrity": "sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==" + }, + "@types/markdown-it": { + "version": "12.2.3", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-12.2.3.tgz", + "integrity": "sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==", + "requires": { + "@types/linkify-it": "*", + "@types/mdurl": "*" + } + }, + "@types/mdurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", + "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" + }, "@types/minimatch": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", @@ -10318,13 +10354,13 @@ } }, "@vue/compiler-core": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.28.tgz", - "integrity": "sha512-mQpfEjmHVxmWKaup0HL6tLMv2HqjjJu7XT4/q0IoUXYXC4xKG8lIVn5YChJqxBTLPuQjzas7u7i9L4PAWJZRtA==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.29.tgz", + "integrity": "sha512-RePZ/J4Ub3sb7atQw6V6Rez+/5LCRHGFlSetT3N4VMrejqJnNPXKUt5AVm/9F5MJriy2w/VudEIvgscCfCWqxw==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.28", + "@vue/shared": "3.2.29", "estree-walker": "^2.0.2", "source-map": "^0.6.1" }, @@ -10338,27 +10374,27 @@ } }, "@vue/compiler-dom": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.28.tgz", - "integrity": "sha512-KA4yXceLteKC7VykvPnViUixemQw3A+oii+deSbZJOQKQKVh1HLosI10qxa8ImPCyun41+wG3uGR+tW7eu1W6Q==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.29.tgz", + "integrity": "sha512-y26vK5khdNS9L3ckvkqJk/78qXwWb75Ci8iYLb67AkJuIgyKhIOcR1E8RIt4mswlVCIeI9gQ+fmtdhaiTAtrBQ==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.28", - "@vue/shared": "3.2.28" + "@vue/compiler-core": "3.2.29", + "@vue/shared": "3.2.29" } }, "@vue/compiler-sfc": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.28.tgz", - "integrity": "sha512-zB0WznfEBb4CbGBHzhboHDKVO5nxbkbxxFo9iVlxObP7a9/qvA5kkZEuT7nXP52f3b3qEfmVTjIT23Lo1ndZdQ==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.29.tgz", + "integrity": "sha512-X9+0dwsag2u6hSOP/XsMYqFti/edvYvxamgBgCcbSYuXx1xLZN+dS/GvQKM4AgGS4djqo0jQvWfIXdfZ2ET68g==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.28", - "@vue/compiler-dom": "3.2.28", - "@vue/compiler-ssr": "3.2.28", - "@vue/reactivity-transform": "3.2.28", - "@vue/shared": "3.2.28", + "@vue/compiler-core": "3.2.29", + "@vue/compiler-dom": "3.2.29", + "@vue/compiler-ssr": "3.2.29", + "@vue/reactivity-transform": "3.2.29", + "@vue/shared": "3.2.29", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -10374,32 +10410,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.28.tgz", - "integrity": "sha512-z8rck1PDTu20iLyip9lAvIhaO40DUJrw3Zv0mS4Apfh3PlfWpF5dhsO5g0dgt213wgYsQIYVIlU9cfrYapqRgg==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.29.tgz", + "integrity": "sha512-LrvQwXlx66uWsB9/VydaaqEpae9xtmlUkeSKF6aPDbzx8M1h7ukxaPjNCAXuFd3fUHblcri8k42lfimHfzMICA==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.28", - "@vue/shared": "3.2.28" + "@vue/compiler-dom": "3.2.29", + "@vue/shared": "3.2.29" } }, "@vue/reactivity-transform": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.28.tgz", - "integrity": "sha512-zE8idNkOPnBDd2tKSIk84hOQZ+jXKvSy5FoIIVlcNEJHnCFnQ3maqeSJ9KoB2Rf6EXUhFTiTDNRlYlXmT2uHbQ==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.29.tgz", + "integrity": "sha512-YF6HdOuhdOw6KyRm59+3rML8USb9o8mYM1q+SH0G41K3/q/G7uhPnHGKvspzceD7h9J3VR1waOQ93CUZj7J7OA==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.28", - "@vue/shared": "3.2.28", + "@vue/compiler-core": "3.2.29", + "@vue/shared": "3.2.29", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.28", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.28.tgz", - "integrity": "sha512-eMQ8s9j8FpbGHlgUAaj/coaG3Q8YtMsoWL/RIHTsE3Ex7PUTyr7V91vB5HqWB5Sn8m4RXTHGO22/skoTUYvp0A==", + "version": "3.2.29", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.29.tgz", + "integrity": "sha512-BjNpU8OK6Z0LVzGUppEk0CMYm/hKDnZfYdjSmPOs0N+TR1cLKJAkDwW8ASZUvaaSLEi6d3hVM7jnWnX+6yWnHw==", "dev": true }, "abbrev": { @@ -12047,9 +12083,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.4.49", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.49.tgz", - "integrity": "sha512-k/0t1TRfonHIp8TJKfjBu2cKj8MqYTiEpOhci+q7CVEE5xnCQnx1pTa+V8b/sdhe4S3PR4p4iceEQWhGrKQORQ==", + "version": "1.4.52", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.52.tgz", + "integrity": "sha512-JGkh8HEh5PnVrhU4HbpyyO0O791dVY6k7AdqfDeqbcRMeoGxtNHWT77deR2nhvbLe4dKpxjlDEvdEwrvRLGu2Q==", "dev": true }, "emittery": { @@ -13687,24 +13723,25 @@ } }, "jsdoc": { - "version": "3.6.7", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.7.tgz", - "integrity": "sha512-sxKt7h0vzCd+3Y81Ey2qinupL6DpRSZJclS04ugHDNmRUXGzqicMJ6iwayhSA0S0DwwX30c5ozyUthr1QKF6uw==", + "version": "3.6.10", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.10.tgz", + "integrity": "sha512-IdQ8ppSo5LKZ9o3M+LKIIK8i00DIe5msDvG3G81Km+1dhy0XrOWD0Ji8H61ElgyEj/O9KRLokgKbAM9XX9CJAg==", "requires": { "@babel/parser": "^7.9.4", + "@types/markdown-it": "^12.2.3", "bluebird": "^3.7.2", "catharsis": "^0.9.0", "escape-string-regexp": "^2.0.0", - "js2xmlparser": "^4.0.1", - "klaw": "^3.0.0", - "markdown-it": "^10.0.0", - "markdown-it-anchor": "^5.2.7", - "marked": "^2.0.3", + "js2xmlparser": "^4.0.2", + "klaw": "^4.0.1", + "markdown-it": "^12.3.2", + "markdown-it-anchor": "^8.4.1", + "marked": "^4.0.10", "mkdirp": "^1.0.4", "requizzle": "^0.2.3", "strip-json-comments": "^3.1.0", "taffydb": "2.6.2", - "underscore": "~1.13.1" + "underscore": "~1.13.2" }, "dependencies": { "escape-string-regexp": { @@ -13798,12 +13835,9 @@ "dev": true }, "klaw": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", - "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", - "requires": { - "graceful-fs": "^4.1.9" - } + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-4.0.1.tgz", + "integrity": "sha512-pgsE40/SvC7st04AHiISNewaIMUbY5V/K8b21ekiPiFoYs/EYSdsGa+FJArB1d441uq4Q8zZyIxvAzkGNlBdRw==" }, "latest-version": { "version": "5.1.0", @@ -13850,9 +13884,9 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, "linkify-it": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", - "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz", + "integrity": "sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==", "requires": { "uc.micro": "^1.0.1" } @@ -14059,42 +14093,34 @@ "dev": true }, "markdown-it": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz", - "integrity": "sha512-YWOP1j7UbDNz+TumYP1kpwnP0aEa711cJjrAQrzd0UXlbJfc5aAq0F/PZHjiioqDC1NKgvIMX+o+9Bk7yuM2dg==", + "version": "12.3.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", + "integrity": "sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==", "requires": { - "argparse": "^1.0.7", - "entities": "~2.0.0", - "linkify-it": "^2.0.0", + "argparse": "^2.0.1", + "entities": "~2.1.0", + "linkify-it": "^3.0.1", "mdurl": "^1.0.1", "uc.micro": "^1.0.5" }, "dependencies": { - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } - }, "entities": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", - "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz", + "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==" } } }, "markdown-it-anchor": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-5.3.0.tgz", - "integrity": "sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==", + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.4.1.tgz", + "integrity": "sha512-sLODeRetZ/61KkKLJElaU3NuU2z7MhXf12Ml1WJMSdwpngeofneCRF+JBbat8HiSqhniOMuTemXMrsI7hA6XyA==", "requires": {} }, "marked": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/marked/-/marked-2.1.3.tgz", - "integrity": "sha512-/Q+7MGzaETqifOMWYEA7HVMaZb4XbcRfaOzcSsHZEith83KGlvaSG33u0SKu89Mj5h+T8V2hM+8O45Qc5XTgwA==" + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.10.tgz", + "integrity": "sha512-+QvuFj0nGgO970fySghXGmuw+Fd0gD2x3+MqCWLIPf5oxdv1Ka6b2q+z9RP01P/IaKPMEramy+7cNy/Lw8c3hw==" }, "matcher": { "version": "3.0.0", @@ -15707,11 +15733,11 @@ } }, "resolve": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.1.tgz", - "integrity": "sha512-lfEImVbnolPuaSZuLQ52cAxPBHeI77sPwCOWRdy12UG/CNa8an7oBHH1R+Fp1/mUqSJi4c8TIP6FOIPSZAUrEQ==", + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", "requires": { - "is-core-module": "^2.8.0", + "is-core-module": "^2.8.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" } @@ -16227,7 +16253,8 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true }, "ssri": { "version": "6.0.2", From e49a432670c1507258eef55b9aee465ad9551098 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 25 Jan 2022 10:27:29 +0000 Subject: [PATCH 0601/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.1-alpha.0 to 3.0.1-alpha.1 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.1-alpha.1/CHANGELOG.md --- packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1a75cae32f4..639fc3e5609 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.0", - "@ui5/logger": "^3.0.1-alpha.0", + "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -886,15 +886,15 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.1-alpha.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.0.tgz", - "integrity": "sha512-6UQluslp7N/h9gWsMtyPq3OclE1wiAckkUbIVJZ1deRh/8ARzIKaBRg5jMky+15wQjSsYcWEr7xecBwrtPZQzw==", + "version": "3.0.1-alpha.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.1.tgz", + "integrity": "sha512-S0jK4e3FQYhIkGFoZSCCtHxKAYGOuCZM+KG06PoHlst73eN0Md89TgRrQtM48UCHEZF/V4A+anOEgza901ikMw==", "dependencies": { "npmlog": "^5.0.1" }, "engines": { - "node": ">= 10", - "npm": ">= 5" + "node": ">= 16.13.2", + "npm": ">= 8" } }, "node_modules/@ui5/server": { @@ -10307,9 +10307,9 @@ } }, "@ui5/logger": { - "version": "3.0.1-alpha.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.0.tgz", - "integrity": "sha512-6UQluslp7N/h9gWsMtyPq3OclE1wiAckkUbIVJZ1deRh/8ARzIKaBRg5jMky+15wQjSsYcWEr7xecBwrtPZQzw==", + "version": "3.0.1-alpha.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.1.tgz", + "integrity": "sha512-S0jK4e3FQYhIkGFoZSCCtHxKAYGOuCZM+KG06PoHlst73eN0Md89TgRrQtM48UCHEZF/V4A+anOEgza901ikMw==", "requires": { "npmlog": "^5.0.1" } diff --git a/packages/project/package.json b/packages/project/package.json index eee5a03b596..7a402c108e0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-alpha.0", - "@ui5/logger": "^3.0.1-alpha.0", + "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 52f92f3edf835b30b18eaca36d0e63a71d1cb1bc Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 25 Jan 2022 10:45:14 +0000 Subject: [PATCH 0602/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.0 to 3.0.0-alpha.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.1/CHANGELOG.md --- packages/project/package-lock.json | 199 +++++++---------------------- packages/project/package.json | 2 +- 2 files changed, 48 insertions(+), 153 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 639fc3e5609..9022c5bb162 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-alpha.0", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.0", + "@ui5/builder": "^3.0.0-alpha.1", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.0", "ajv": "^6.12.6", @@ -506,20 +506,6 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@eslint/eslintrc/node_modules/espree": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", - "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", - "dev": true, - "dependencies": { - "acorn": "^8.7.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.1.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, "node_modules/@eslint/eslintrc/node_modules/globals": { "version": "13.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", @@ -824,18 +810,18 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.0.tgz", - "integrity": "sha512-q87t4UGMJDpuweHLslW58I6c3aDTYRCzTVoPLK8SEbmgBQ4uO8ZNGTEpCgVNc1lG6R1Bay5aEXAQhNhLJPVd2w==", + "version": "3.0.0-alpha.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.1.tgz", + "integrity": "sha512-qk5zkEH4gA5rxZA9PThoX9R5/SMWb4cU0DLymmak+MQ2mDZaH0vNgVHRPQt7O81Gtt9mqFepeu6oMEvhqq78cg==", "dependencies": { - "@ui5/fs": "^3.0.0-alpha.0", - "@ui5/logger": "^3.0.0-alpha.0", + "@ui5/fs": "^3.0.0-alpha.2", + "@ui5/logger": "^3.0.1-alpha.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", - "espree": "^6.2.1", - "globby": "^11.0.4", - "graceful-fs": "^4.2.8", + "espree": "^9.3.0", + "globby": "^11.1.0", + "graceful-fs": "^4.2.9", "jsdoc": "^3.6.7", "less-openui5": "^0.11.2", "make-dir": "^3.1.0", @@ -849,31 +835,19 @@ "yazl": "^2.5.1" }, "engines": { - "node": ">= 10", - "npm": ">= 5" - } - }, - "node_modules/@ui5/builder/node_modules/@ui5/logger": { - "version": "3.0.0-next.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", - "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", - "dependencies": { - "npmlog": "^5.0.1" - }, - "engines": { - "node": ">= 10", - "npm": ">= 5" + "node": ">= 16.13.2", + "npm": ">= 8" } }, "node_modules/@ui5/fs": { - "version": "3.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.1.tgz", - "integrity": "sha512-j+8cJQpuM0aHLxzIzDNe7Kwr+X2n6tYeBptz/MSbvONB9u4dKVenaMpreR/Q4QUFi56UKEC0ztkpjxsU/+G5Cw==", + "version": "3.0.0-alpha.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.2.tgz", + "integrity": "sha512-GCcTUiI0Kjqab6mVWK8aHt9wMjMzSoRJx9pGZsbSdXLFR9C7A7x41OW7WL9pjeuiqUFcydC2Ia1+DdKe6TOrgw==", "dependencies": { - "@ui5/logger": "^3.0.1-alpha.0", + "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", - "globby": "^11.0.4", - "graceful-fs": "^4.2.8", + "globby": "^11.1.0", + "graceful-fs": "^4.2.9", "make-dir": "^3.1.0", "micromatch": "^4.0.4", "minimatch": "^3.0.3", @@ -881,8 +855,8 @@ "random-int": "^2.0.1" }, "engines": { - "node": ">= 10", - "npm": ">= 5" + "node": ">= 16.13.2", + "npm": ">= 8" } }, "node_modules/@ui5/logger": { @@ -3486,21 +3460,6 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz", "integrity": "sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/espree": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", - "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", - "dev": true, - "dependencies": { - "acorn": "^8.7.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.1.0" - }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } @@ -3545,35 +3504,16 @@ } }, "node_modules/espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", + "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", "dependencies": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/espree/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "bin": { - "acorn": "bin/acorn" + "acorn": "^8.7.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^3.1.0" }, "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/esprima": { @@ -9996,17 +9936,6 @@ "strip-json-comments": "^3.1.1" }, "dependencies": { - "espree": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", - "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", - "dev": true, - "requires": { - "acorn": "^8.7.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.1.0" - } - }, "globals": { "version": "13.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", @@ -10255,18 +10184,18 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.0.tgz", - "integrity": "sha512-q87t4UGMJDpuweHLslW58I6c3aDTYRCzTVoPLK8SEbmgBQ4uO8ZNGTEpCgVNc1lG6R1Bay5aEXAQhNhLJPVd2w==", + "version": "3.0.0-alpha.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.1.tgz", + "integrity": "sha512-qk5zkEH4gA5rxZA9PThoX9R5/SMWb4cU0DLymmak+MQ2mDZaH0vNgVHRPQt7O81Gtt9mqFepeu6oMEvhqq78cg==", "requires": { - "@ui5/fs": "^3.0.0-alpha.0", - "@ui5/logger": "^3.0.0-alpha.0", + "@ui5/fs": "^3.0.0-alpha.2", + "@ui5/logger": "^3.0.1-alpha.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", - "espree": "^6.2.1", - "globby": "^11.0.4", - "graceful-fs": "^4.2.8", + "espree": "^9.3.0", + "globby": "^11.1.0", + "graceful-fs": "^4.2.9", "jsdoc": "^3.6.7", "less-openui5": "^0.11.2", "make-dir": "^3.1.0", @@ -10278,27 +10207,17 @@ "terser": "^5.10.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "@ui5/logger": { - "version": "3.0.0-next.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", - "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", - "requires": { - "npmlog": "^5.0.1" - } - } } }, "@ui5/fs": { - "version": "3.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.1.tgz", - "integrity": "sha512-j+8cJQpuM0aHLxzIzDNe7Kwr+X2n6tYeBptz/MSbvONB9u4dKVenaMpreR/Q4QUFi56UKEC0ztkpjxsU/+G5Cw==", + "version": "3.0.0-alpha.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.2.tgz", + "integrity": "sha512-GCcTUiI0Kjqab6mVWK8aHt9wMjMzSoRJx9pGZsbSdXLFR9C7A7x41OW7WL9pjeuiqUFcydC2Ia1+DdKe6TOrgw==", "requires": { - "@ui5/logger": "^3.0.1-alpha.0", + "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", - "globby": "^11.0.4", - "graceful-fs": "^4.2.8", + "globby": "^11.1.0", + "graceful-fs": "^4.2.9", "make-dir": "^3.1.0", "micromatch": "^4.0.4", "minimatch": "^3.0.3", @@ -12330,17 +12249,6 @@ "v8-compile-cache": "^2.0.3" }, "dependencies": { - "espree": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", - "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", - "dev": true, - "requires": { - "acorn": "^8.7.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.1.0" - } - }, "glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -12428,29 +12336,16 @@ "eslint-visitor-keys": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz", - "integrity": "sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==", - "dev": true + "integrity": "sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==" }, "espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", + "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", "requires": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" - }, - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" - } + "acorn": "^8.7.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^3.1.0" } }, "esprima": { diff --git a/packages/project/package.json b/packages/project/package.json index 7a402c108e0..7f1af0a44e8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -101,7 +101,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.0", + "@ui5/builder": "^3.0.0-alpha.1", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.0", "ajv": "^6.12.6", From d4a445cc6bb90907dbbe936183cbf9e563bfe4a9 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 25 Jan 2022 10:52:15 +0000 Subject: [PATCH 0603/1272] [ui5-project][INTERNAL] Bump @ui5/server from 3.0.0-alpha.0 to 3.0.0-alpha.1 Changelog of this version: https://github.com/SAP/ui5-server/blob/v3.0.0-alpha.1/CHANGELOG.md --- packages/project/package-lock.json | 60 ++++++++++-------------------- packages/project/package.json | 2 +- 2 files changed, 20 insertions(+), 42 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9022c5bb162..7f837b20f0b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-alpha.1", "@ui5/logger": "^3.0.1-alpha.1", - "@ui5/server": "^3.0.0-alpha.0", + "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", @@ -872,13 +872,13 @@ } }, "node_modules/@ui5/server": { - "version": "3.0.0-alpha.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-3.0.0-alpha.0.tgz", - "integrity": "sha512-WAHtilmvNiejkLhf7Gn+HWXKF9uKppAsDz3YUwqA2/4m07M0bGGE2vH8NzDLaubuaWNEzOvKafZDDRu4tCOMWw==", + "version": "3.0.0-alpha.1", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-3.0.0-alpha.1.tgz", + "integrity": "sha512-OlyGgRGPDBFVEPJKXRBtolsgWd0dUAIIpZy0MuEe/3mppDt/VgFSWUZl+keMDUVj6S24uAZbPO2YfbtZ+4l5yQ==", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.0", - "@ui5/fs": "^3.0.0-alpha.0", - "@ui5/logger": "^3.0.0-alpha.0", + "@ui5/builder": "^3.0.0-alpha.1", + "@ui5/fs": "^3.0.0-alpha.2", + "@ui5/logger": "^3.0.1-alpha.1", "body-parser": "^1.19.1", "compression": "^1.7.4", "connect-openui5": "^0.10.2", @@ -886,9 +886,9 @@ "devcert-sanscache": "^0.4.8", "escape-html": "^1.0.3", "etag": "^1.8.1", - "express": "^4.17.1", + "express": "^4.17.2", "fresh": "^0.5.2", - "graceful-fs": "^4.2.8", + "graceful-fs": "^4.2.9", "make-dir": "^3.1.0", "mime-types": "^2.1.34", "parseurl": "^1.3.3", @@ -900,20 +900,8 @@ "yesno": "^0.3.1" }, "engines": { - "node": ">= 10", - "npm": ">= 5" - } - }, - "node_modules/@ui5/server/node_modules/@ui5/logger": { - "version": "3.0.0-next.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", - "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", - "dependencies": { - "npmlog": "^5.0.1" - }, - "engines": { - "node": ">= 10", - "npm": ">= 5" + "node": ">= 16.13.2", + "npm": ">= 8" } }, "node_modules/@vue/compiler-core": { @@ -10234,13 +10222,13 @@ } }, "@ui5/server": { - "version": "3.0.0-alpha.0", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-3.0.0-alpha.0.tgz", - "integrity": "sha512-WAHtilmvNiejkLhf7Gn+HWXKF9uKppAsDz3YUwqA2/4m07M0bGGE2vH8NzDLaubuaWNEzOvKafZDDRu4tCOMWw==", + "version": "3.0.0-alpha.1", + "resolved": "https://registry.npmjs.org/@ui5/server/-/server-3.0.0-alpha.1.tgz", + "integrity": "sha512-OlyGgRGPDBFVEPJKXRBtolsgWd0dUAIIpZy0MuEe/3mppDt/VgFSWUZl+keMDUVj6S24uAZbPO2YfbtZ+4l5yQ==", "requires": { - "@ui5/builder": "^3.0.0-alpha.0", - "@ui5/fs": "^3.0.0-alpha.0", - "@ui5/logger": "^3.0.0-alpha.0", + "@ui5/builder": "^3.0.0-alpha.1", + "@ui5/fs": "^3.0.0-alpha.2", + "@ui5/logger": "^3.0.1-alpha.1", "body-parser": "^1.19.1", "compression": "^1.7.4", "connect-openui5": "^0.10.2", @@ -10248,9 +10236,9 @@ "devcert-sanscache": "^0.4.8", "escape-html": "^1.0.3", "etag": "^1.8.1", - "express": "^4.17.1", + "express": "^4.17.2", "fresh": "^0.5.2", - "graceful-fs": "^4.2.8", + "graceful-fs": "^4.2.9", "make-dir": "^3.1.0", "mime-types": "^2.1.34", "parseurl": "^1.3.3", @@ -10260,16 +10248,6 @@ "spdy": "^4.0.2", "treeify": "^1.0.1", "yesno": "^0.3.1" - }, - "dependencies": { - "@ui5/logger": { - "version": "3.0.0-next.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-next.0.tgz", - "integrity": "sha512-4c0GuaIpTJCnH+rYUvX8R7z57Xir4RgLGi7onYHFqv6Xcnhbgqkk3hTSSYDnOJ3SxG7Znuk5O4ViHvf4OFnhfQ==", - "requires": { - "npmlog": "^5.0.1" - } - } } }, "@vue/compiler-core": { diff --git a/packages/project/package.json b/packages/project/package.json index 7f1af0a44e8..519c5426895 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-alpha.1", "@ui5/logger": "^3.0.1-alpha.1", - "@ui5/server": "^3.0.0-alpha.0", + "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", From 73da924d0f2988e2875ceb45602a83e7415dc12d Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 25 Jan 2022 10:55:28 +0000 Subject: [PATCH 0604/1272] [ui5-project]Release 3.0.0-alpha.1 --- packages/project/CHANGELOG.md | 14 +++++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index c9ffb34945a..98823a9744e 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,18 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.1...HEAD). + + +## [v3.0.0-alpha.1] - 2022-01-25 +### Breaking Changes +- Require Node.js >= 16.13.2 / npm >= 8 [`5e4dbff`](https://github.com/SAP/ui5-project/commit/5e4dbffcac6d3c8244b3e8fafcb5a219eeebe15d) + +### BREAKING CHANGE + +Support for older Node.js and npm releases has been dropped. +Only Node.js v16.13.2 and npm v8 or higher are supported. + ## [v3.0.0-alpha.0] - 2021-12-14 @@ -268,6 +279,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.0...v3.0.0-alpha.1 [v3.0.0-alpha.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0-alpha.0 [v2.6.0]: https://github.com/SAP/ui5-project/compare/v2.5.0...v2.6.0 [v2.5.0]: https://github.com/SAP/ui5-project/compare/v2.4.0...v2.5.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7f837b20f0b..dbf31c42a0a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.0", + "version": "3.0.0-alpha.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.0", + "version": "3.0.0-alpha.1", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.1", diff --git a/packages/project/package.json b/packages/project/package.json index 519c5426895..f1c6c7d2536 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.0", + "version": "3.0.0-alpha.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From c2d6b99a0efe69822e747ecdca30598d0829c645 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 28 Jan 2022 11:37:23 +0100 Subject: [PATCH 0605/1272] [ui5-project][INTERNAL] npm release: Add missing CHANGELOG file The CLI needs the changelog files of all modules to create a consolidated changelog. Since npm v7 the CHANGELOG file is not always published anymore. See: https://github.com/npm/npm-packlist/pull/61 --- packages/project/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/project/package.json b/packages/project/package.json index f1c6c7d2536..dc113d54291 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -44,6 +44,7 @@ }, "files": [ "index.js", + "CHANGELOG.md", "CONTRIBUTING.md", "jsdoc.json", "lib/**", From 74326ca03e2a43b874ead9b23c329c147780c32a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 23 Feb 2022 17:37:35 +0000 Subject: [PATCH 0606/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 967 ++++++++++++++++------------- 1 file changed, 522 insertions(+), 445 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index dbf31c42a0a..987708f559e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -56,6 +56,18 @@ "npm": ">= 8" } }, + "node_modules/@ampproject/remapping": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz", + "integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@babel/code-frame": { "version": "7.16.7", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", @@ -68,35 +80,35 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.8.tgz", - "integrity": "sha512-m7OkX0IdKLKPpBlJtF561YJal5y/jyI5fNfWbPxh2D/nbzzGI4qRyrD8xO2jB24u7l+5I2a43scCG2IrfjC50Q==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.0.tgz", + "integrity": "sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.16.12", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.12.tgz", - "integrity": "sha512-dK5PtG1uiN2ikk++5OzSYsitZKny4wOCD0nrO4TqnW4BVBTQ2NGS3NgilvT/TEyxTST7LNyWV/T4tXDoD3fOgg==", + "version": "7.17.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz", + "integrity": "sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==", "dev": true, "dependencies": { + "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.16.8", + "@babel/generator": "^7.17.3", "@babel/helper-compilation-targets": "^7.16.7", "@babel/helper-module-transforms": "^7.16.7", - "@babel/helpers": "^7.16.7", - "@babel/parser": "^7.16.12", + "@babel/helpers": "^7.17.2", + "@babel/parser": "^7.17.3", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.10", - "@babel/types": "^7.16.8", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", "json5": "^2.1.2", - "semver": "^6.3.0", - "source-map": "^0.5.0" + "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" @@ -107,9 +119,9 @@ } }, "node_modules/@babel/core/node_modules/@babel/parser": { - "version": "7.16.12", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", - "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", + "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -128,12 +140,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.8.tgz", - "integrity": "sha512-1ojZwE9+lOXzcWdWmO6TbUzDfqLD39CmEhN8+2cX9XkDo5yW1OpgfejfliysR2AWLpMamTiOiAp/mtroaymhpw==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz", + "integrity": "sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==", "dev": true, "dependencies": { - "@babel/types": "^7.16.8", + "@babel/types": "^7.17.0", "jsesc": "^2.5.1", "source-map": "^0.5.0" }, @@ -231,9 +243,9 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.7.tgz", - "integrity": "sha512-gaqtLDxJEFCeQbYp9aLAefjhkKdjKcdh6DB7jniIGU3Pz52WAmP268zK0VgPz9hUNkMSYeH976K2/Y6yPadpng==", + "version": "7.17.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz", + "integrity": "sha512-2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.16.7", @@ -242,8 +254,8 @@ "@babel/helper-split-export-declaration": "^7.16.7", "@babel/helper-validator-identifier": "^7.16.7", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0" }, "engines": { "node": ">=6.9.0" @@ -291,14 +303,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.7.tgz", - "integrity": "sha512-9ZDoqtfY7AuEOt3cxchfii6C7GDyyMBffktR5B2jvWv8u2+efwvpnVKXMWzNehqy68tKgAfSwfdw/lWpthS2bw==", + "version": "7.17.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.2.tgz", + "integrity": "sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ==", "dev": true, "dependencies": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/traverse": "^7.17.0", + "@babel/types": "^7.17.0" }, "engines": { "node": ">=6.9.0" @@ -394,9 +406,9 @@ } }, "node_modules/@babel/template/node_modules/@babel/parser": { - "version": "7.16.12", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", - "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", + "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -406,19 +418,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.10.tgz", - "integrity": "sha512-yzuaYXoRJBGMlBhsMJoUW7G1UmSb/eXr/JHYM/MsOJgavJibLwASijW7oXBdw3NQ6T0bW7Ty5P/VarOs9cHmqw==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", + "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.16.8", + "@babel/generator": "^7.17.3", "@babel/helper-environment-visitor": "^7.16.7", "@babel/helper-function-name": "^7.16.7", "@babel/helper-hoist-variables": "^7.16.7", "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.16.10", - "@babel/types": "^7.16.8", + "@babel/parser": "^7.17.3", + "@babel/types": "^7.17.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -427,9 +439,9 @@ } }, "node_modules/@babel/traverse/node_modules/@babel/parser": { - "version": "7.16.12", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", - "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", + "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -439,9 +451,9 @@ } }, "node_modules/@babel/types": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.8.tgz", - "integrity": "sha512-smN2DQc5s4M7fntyjGtyIPbRJv6wW4rU/94fmYJ7PKQuZkC0qGMHXJbg6sNGt12JmVr4k5YaptI/XtiLJBnmIg==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", + "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.16.7", @@ -473,28 +485,28 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.17.0.tgz", - "integrity": "sha512-B8DIIWE194KyQFPojUs+THa2XX+1vulwTBjirw6GqcxjtNE60Rreex26svBnV9SNLTuz92ctZx5XQE1H7yOxgA==", + "version": "0.20.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.20.1.tgz", + "integrity": "sha512-oeJK41dcdqkvdZy/HctKklJNkt/jh+av3PZARrZEl+fs/8HaHeeYoAvEwOV0u5I6bArTF17JEsTZMY359e/nfQ==", "dev": true, "dependencies": { "comment-parser": "1.3.0", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~2.2.1" + "jsdoc-type-pratt-parser": "~2.2.3" }, "engines": { "node": "^12 || ^14 || ^16 || ^17" } }, "node_modules/@eslint/eslintrc": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.5.tgz", - "integrity": "sha512-BLxsnmK3KyPunz5wmCCpqy0YelEoxxGmH73Is+Z74oOTMtExcjkr3dDR6quwrjh1YspA8DH9gnX1o069KiS9AQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.1.0.tgz", + "integrity": "sha512-C1DfL7XX4nPqGd6jcP01W9pVM1HYCuUkFk1432D7F0v3JSlUIeOYn9oCoi3eoLZ+iwBSb29BMFxxny0YrrEZqg==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.2.0", + "espree": "^9.3.1", "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", @@ -507,9 +519,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", - "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", + "version": "13.12.1", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", + "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -543,9 +555,9 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.2.tgz", - "integrity": "sha512-UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.3.tgz", + "integrity": "sha512-3xSMlXHh03hCcCmFc0rbKp3Ivt2PFEJnQUJDDMTJQ2wkECZWdq4GePs2ctc5H8zV+cHPaq8k2vU8mrQjA6iHdQ==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -673,6 +685,31 @@ "node": ">=8" } }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", + "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.11", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz", + "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz", + "integrity": "sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -733,9 +770,9 @@ } }, "node_modules/@sinonjs/samsam": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-6.0.2.tgz", - "integrity": "sha512-jxPRPp9n93ci7b8hMfJOFDPRLFYadN6FSpeROFTR4UNF4i5b+EK6m4QXPO46BDhFgRy1JuS87zAnFOzCUwMJcQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-6.1.1.tgz", + "integrity": "sha512-cZ7rKJTLiE7u7Wi/v9Hc2fs3Ucc3jrWeMgPHbbTCeVAB2S0wOBbYlkJVeNSL04i7fdhT8wIbDq1zhC/PXTD2SA==", "dev": true, "dependencies": { "@sinonjs/commons": "^1.6.0", @@ -905,13 +942,13 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.29.tgz", - "integrity": "sha512-RePZ/J4Ub3sb7atQw6V6Rez+/5LCRHGFlSetT3N4VMrejqJnNPXKUt5AVm/9F5MJriy2w/VudEIvgscCfCWqxw==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.31.tgz", + "integrity": "sha512-aKno00qoA4o+V/kR6i/pE+aP+esng5siNAVQ422TkBNM6qA4veXiZbSe8OTXHXquEi/f6Akc+nLfB4JGfe4/WQ==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.29", + "@vue/shared": "3.2.31", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } @@ -926,27 +963,27 @@ } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.29.tgz", - "integrity": "sha512-y26vK5khdNS9L3ckvkqJk/78qXwWb75Ci8iYLb67AkJuIgyKhIOcR1E8RIt4mswlVCIeI9gQ+fmtdhaiTAtrBQ==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.31.tgz", + "integrity": "sha512-60zIlFfzIDf3u91cqfqy9KhCKIJgPeqxgveH2L+87RcGU/alT6BRrk5JtUso0OibH3O7NXuNOQ0cDc9beT0wrg==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.2.29", - "@vue/shared": "3.2.29" + "@vue/compiler-core": "3.2.31", + "@vue/shared": "3.2.31" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.29.tgz", - "integrity": "sha512-X9+0dwsag2u6hSOP/XsMYqFti/edvYvxamgBgCcbSYuXx1xLZN+dS/GvQKM4AgGS4djqo0jQvWfIXdfZ2ET68g==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.31.tgz", + "integrity": "sha512-748adc9msSPGzXgibHiO6T7RWgfnDcVQD+VVwYgSsyyY8Ans64tALHZANrKtOzvkwznV/F4H7OAod/jIlp/dkQ==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.29", - "@vue/compiler-dom": "3.2.29", - "@vue/compiler-ssr": "3.2.29", - "@vue/reactivity-transform": "3.2.29", - "@vue/shared": "3.2.29", + "@vue/compiler-core": "3.2.31", + "@vue/compiler-dom": "3.2.31", + "@vue/compiler-ssr": "3.2.31", + "@vue/reactivity-transform": "3.2.31", + "@vue/shared": "3.2.31", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -963,32 +1000,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.29.tgz", - "integrity": "sha512-LrvQwXlx66uWsB9/VydaaqEpae9xtmlUkeSKF6aPDbzx8M1h7ukxaPjNCAXuFd3fUHblcri8k42lfimHfzMICA==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.31.tgz", + "integrity": "sha512-mjN0rqig+A8TVDnsGPYJM5dpbjlXeHUm2oZHZwGyMYiGT/F4fhJf/cXy8QpjnLQK4Y9Et4GWzHn9PS8AHUnSkw==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.2.29", - "@vue/shared": "3.2.29" + "@vue/compiler-dom": "3.2.31", + "@vue/shared": "3.2.31" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.29.tgz", - "integrity": "sha512-YF6HdOuhdOw6KyRm59+3rML8USb9o8mYM1q+SH0G41K3/q/G7uhPnHGKvspzceD7h9J3VR1waOQ93CUZj7J7OA==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.31.tgz", + "integrity": "sha512-uS4l4z/W7wXdI+Va5pgVxBJ345wyGFKvpPYtdSgvfJfX/x2Ymm6ophQlXXB6acqGHtXuBqNyyO3zVp9b1r0MOA==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.29", - "@vue/shared": "3.2.29", + "@vue/compiler-core": "3.2.31", + "@vue/shared": "3.2.31", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "node_modules/@vue/shared": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.29.tgz", - "integrity": "sha512-BjNpU8OK6Z0LVzGUppEk0CMYm/hKDnZfYdjSmPOs0N+TR1cLKJAkDwW8ASZUvaaSLEi6d3hVM7jnWnX+6yWnHw==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.31.tgz", + "integrity": "sha512-ymN2pj6zEjiKJZbrf98UM2pfDd6F2H7ksKw7NDt/ZZ1fh5Ei39X5tABugtT03ZRlWd9imccoK0hE8hpjpU7irQ==", "dev": true }, "node_modules/abbrev": { @@ -998,12 +1035,12 @@ "dev": true }, "node_modules/accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "dependencies": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" }, "engines": { "node": ">= 0.6" @@ -1378,19 +1415,19 @@ "dev": true }, "node_modules/body-parser": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.1.tgz", - "integrity": "sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA==", + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", "dependencies": { - "bytes": "3.1.1", + "bytes": "3.1.2", "content-type": "~1.0.4", "debug": "2.6.9", "depd": "~1.1.2", "http-errors": "1.8.1", "iconv-lite": "0.4.24", "on-finished": "~2.3.0", - "qs": "6.9.6", - "raw-body": "2.4.2", + "qs": "6.9.7", + "raw-body": "2.4.3", "type-is": "~1.6.18" }, "engines": { @@ -1470,15 +1507,15 @@ } }, "node_modules/browserslist": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz", - "integrity": "sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==", + "version": "4.19.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.3.tgz", + "integrity": "sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg==", "dev": true, "dependencies": { - "caniuse-lite": "^1.0.30001286", - "electron-to-chromium": "^1.4.17", + "caniuse-lite": "^1.0.30001312", + "electron-to-chromium": "^1.4.71", "escalade": "^3.1.1", - "node-releases": "^2.0.1", + "node-releases": "^2.0.2", "picocolors": "^1.0.0" }, "bin": { @@ -1535,9 +1572,9 @@ "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=" }, "node_modules/bytes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz", - "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "engines": { "node": ">= 0.8" } @@ -1710,9 +1747,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001301", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001301.tgz", - "integrity": "sha512-csfD/GpHMqgEL3V3uIgosvh+SVIQvCh43SNu9HRbP1lnxkKm1kjDG4f32PP571JplkLjfS+mg2p1gxR7MYrrIA==", + "version": "1.0.30001312", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz", + "integrity": "sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==", "dev": true, "funding": { "type": "opencollective", @@ -2389,9 +2426,9 @@ } }, "node_modules/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", "engines": { "node": ">= 0.6" } @@ -3073,9 +3110,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "node_modules/electron-to-chromium": { - "version": "1.4.52", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.52.tgz", - "integrity": "sha512-JGkh8HEh5PnVrhU4HbpyyO0O791dVY6k7AdqfDeqbcRMeoGxtNHWT77deR2nhvbLe4dKpxjlDEvdEwrvRLGu2Q==", + "version": "1.4.71", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz", + "integrity": "sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw==", "dev": true }, "node_modules/emittery": { @@ -3310,12 +3347,12 @@ } }, "node_modules/eslint": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.7.0.tgz", - "integrity": "sha512-ifHYzkBGrzS2iDU7KjhCAVMGCvF6M3Xfs8X8b37cgrUlDt6bWRTpRh6T/gtSXv1HJ/BUGgmjvNvOEGu85Iif7w==", + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.9.0.tgz", + "integrity": "sha512-PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.0.5", + "@eslint/eslintrc": "^1.1.0", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -3323,10 +3360,10 @@ "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.0", + "eslint-scope": "^7.1.1", "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.2.0", - "espree": "^9.3.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.1", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -3374,12 +3411,12 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "37.6.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.6.3.tgz", - "integrity": "sha512-Ysd1ZK4kL7DjjRJtWzb6Z7YANu7ndalu5PQBhOn07SlpKQ/+8JXvdtQ6yyADOO8w9xW5ZEEzuGY3KWhtk4CRYA==", + "version": "37.9.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.4.tgz", + "integrity": "sha512-VxCyGgUNNnj2T4bb1OqltkbsPp3ehRzR5onIfh6zGrAvISmvgX/sbxUlh3YyGqWtjOTSBCURdKdmelSXEIHnlA==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.17.0", + "@es-joy/jsdoccomment": "~0.20.1", "comment-parser": "1.3.0", "debug": "^4.3.3", "escape-string-regexp": "^4.0.0", @@ -3396,9 +3433,9 @@ } }, "node_modules/eslint-scope": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.0.tgz", - "integrity": "sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -3445,9 +3482,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz", - "integrity": "sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } @@ -3465,9 +3502,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", - "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", + "version": "13.12.1", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", + "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -3492,13 +3529,13 @@ } }, "node_modules/espree": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", - "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", + "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", "dependencies": { "acorn": "^8.7.0", "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.1.0" + "eslint-visitor-keys": "^3.3.0" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -3609,16 +3646,16 @@ "dev": true }, "node_modules/express": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.2.tgz", - "integrity": "sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg==", + "version": "4.17.3", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", + "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", "dependencies": { - "accepts": "~1.3.7", + "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.19.1", + "body-parser": "1.19.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.1", + "cookie": "0.4.2", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "~1.1.2", @@ -3633,7 +3670,7 @@ "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", "proxy-addr": "~2.0.7", - "qs": "6.9.6", + "qs": "6.9.7", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", "send": "0.17.2", @@ -3689,9 +3726,9 @@ } }, "node_modules/ext/node_modules/type": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.5.0.tgz", - "integrity": "sha512-180WMDQaIMm3+7hGXWf12GtdniDEy7nYcyFMKJn/eZz/6tSLXrUN9V0wKSbMjej0I1WHWbpREDEKHtqPQa9NNw==" + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.6.0.tgz", + "integrity": "sha512-eiDBDOmkih5pMbo9OqsqPRGMljLodLcwd5XD5JbtNB0o89xZAwynY9EdCDsJU7LtcVCClu9DvM7/0Ep1hYX3EQ==" }, "node_modules/extend": { "version": "3.0.2", @@ -3885,9 +3922,9 @@ } }, "node_modules/flatted": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.4.tgz", - "integrity": "sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", + "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", "dev": true }, "node_modules/flush-write-stream": { @@ -3922,9 +3959,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.14.7", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.7.tgz", - "integrity": "sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ==", + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", + "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", "funding": [ { "type": "individual", @@ -5068,9 +5105,9 @@ } }, "node_modules/istanbul-reports": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.3.tgz", - "integrity": "sha512-x9LtDVtfm/t1GFiLl3NffC7hz+I1ragvgX1P/Lg1NlIagifZDKUkuuaAxH/qpwj2IuEfD8G2Bs/UKp+sZ/pKkg==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", + "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", "dev": true, "dependencies": { "html-escaper": "^2.0.0", @@ -5162,9 +5199,9 @@ } }, "node_modules/jsdoc-type-pratt-parser": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.2.tgz", - "integrity": "sha512-zRokSWcPLSWkoNzsWn9pq7YYSwDhKyEe+cJYT2qaPqLOOJb5sFSi46BPj81vP+e8chvCNdQL9RG86Bi9EI6MDw==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.3.tgz", + "integrity": "sha512-QPyxq62Q8veBSDtDrWmqaEPjSCeknUV9dH/OAGt3q9an8qC8UQDqitQiw1NvoMskIESpoRZ6qzt4H3rlK0xo8A==", "dev": true, "engines": { "node": ">=12.0.0" @@ -5622,9 +5659,9 @@ } }, "node_modules/marked": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.10.tgz", - "integrity": "sha512-+QvuFj0nGgO970fySghXGmuw+Fd0gD2x3+MqCWLIPf5oxdv1Ka6b2q+z9RP01P/IaKPMEramy+7cNy/Lw8c3hw==", + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.12.tgz", + "integrity": "sha512-hgibXWrEDNBWgGiK18j/4lkS6ihTe9sxtV4Q1OQppb/0zzyPSzoFANBa5MfsG/zgsWklmNnhm0XACZOH/0HBiQ==", "bin": { "marked": "bin/marked.js" }, @@ -5767,9 +5804,9 @@ } }, "node_modules/mime-db": { - "version": "1.51.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", - "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "engines": { "node": ">= 0.6" } @@ -5785,6 +5822,14 @@ "node": ">= 0.6" } }, + "node_modules/mime-types/node_modules/mime-db": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", + "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/mimic-fn": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", @@ -5818,9 +5863,9 @@ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" }, "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -5999,9 +6044,9 @@ } }, "node_modules/nanoid": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.2.0.tgz", - "integrity": "sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz", + "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==", "dev": true, "bin": { "nanoid": "bin/nanoid.cjs" @@ -6017,9 +6062,9 @@ "dev": true }, "node_modules/negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "engines": { "node": ">= 0.6" } @@ -6030,13 +6075,13 @@ "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" }, "node_modules/nise": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.0.tgz", - "integrity": "sha512-W5WlHu+wvo3PaKLsJJkgPup2LrsXCcm7AWwyNZkUnn5rwPkuPBi3Iwk5SQtN0mv+K65k7nKKjwNQ30wg3wLAQQ==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.1.tgz", + "integrity": "sha512-yr5kW2THW1AkxVmCnKEh4nbYkJdB3I7LUkiUgOvEkOp414mc2UMaHMA7pjq1nYowhdoJZGwEKGaQVbxfpWj10A==", "dev": true, "dependencies": { - "@sinonjs/commons": "^1.7.0", - "@sinonjs/fake-timers": "^7.0.4", + "@sinonjs/commons": "^1.8.3", + "@sinonjs/fake-timers": ">=5", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "path-to-regexp": "^1.7.0" @@ -6083,9 +6128,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", - "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz", + "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==", "dev": true }, "node_modules/nopt": { @@ -6996,9 +7041,9 @@ } }, "node_modules/peek-readable": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.2.tgz", - "integrity": "sha512-9fMaz6zoxw9ypO1KZy5RDJgSupEtu0Q+g/OqqsVHX3rKGR8qehRLYzsFARZ4bVvdvfknKiXvuDbkMnO1g6cRpQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", + "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", "dev": true, "engines": { "node": ">=8" @@ -7151,14 +7196,14 @@ } }, "node_modules/postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", + "version": "8.4.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz", + "integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==", "dev": true, "dependencies": { - "nanoid": "^3.1.30", + "nanoid": "^3.2.0", "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" + "source-map-js": "^1.0.2" }, "engines": { "node": "^10 || ^12 || >=14" @@ -7332,9 +7377,9 @@ } }, "node_modules/qs": { - "version": "6.9.6", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", - "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==", + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", "engines": { "node": ">=0.6" }, @@ -7396,11 +7441,11 @@ } }, "node_modules/raw-body": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.2.tgz", - "integrity": "sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", + "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", "dependencies": { - "bytes": "3.1.1", + "bytes": "3.1.2", "http-errors": "1.8.1", "iconv-lite": "0.4.24", "unpipe": "1.0.0" @@ -7874,9 +7919,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sass": { - "version": "1.49.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.0.tgz", - "integrity": "sha512-TVwVdNDj6p6b4QymJtNtRS2YtLJ/CqZriGg0eIAbAKMlN8Xy6kbv33FsEZSF7FufFFM705SQviHjjThfaQ4VNw==", + "version": "1.49.8", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.8.tgz", + "integrity": "sha512-NoGOjvDDOU9og9oAxhRnap71QaTjjlzrvLnKecUJ3GxhaQBrV6e7gPuSPF28u1OcVAArVojPAe4ZhOXwwC4tGw==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -7887,7 +7932,7 @@ "sass": "sass.js" }, "engines": { - "node": ">=8.9.0" + "node": ">=12.0.0" } }, "node_modules/sax": { @@ -8089,9 +8134,9 @@ "dev": true }, "node_modules/signal-exit": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.6.tgz", - "integrity": "sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==" + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sinon": { "version": "11.1.2", @@ -8476,13 +8521,13 @@ } }, "node_modules/strtok3": { - "version": "6.2.4", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.4.tgz", - "integrity": "sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", + "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", "dev": true, "dependencies": { "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.0.1" + "peek-readable": "^4.1.0" }, "engines": { "node": ">=10" @@ -8892,10 +8937,11 @@ } }, "node_modules/terser": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.10.0.tgz", - "integrity": "sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA==", + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.11.0.tgz", + "integrity": "sha512-uCA9DLanzzWSsN1UirKwylhhRz3aKPInlfmpGfw8VN6jHsAtu8HJtIpeeHHK23rxnE/cDc+yvmq5wqkIC6Kn0A==", "dependencies": { + "acorn": "^8.5.0", "commander": "^2.20.0", "source-map": "~0.7.2", "source-map-support": "~0.5.20" @@ -8905,14 +8951,6 @@ }, "engines": { "node": ">=10" - }, - "peerDependencies": { - "acorn": "^8.5.0" - }, - "peerDependenciesMeta": { - "acorn": { - "optional": true - } } }, "node_modules/terser/node_modules/source-map": { @@ -9586,6 +9624,15 @@ } }, "dependencies": { + "@ampproject/remapping": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz", + "integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.0" + } + }, "@babel/code-frame": { "version": "7.16.7", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", @@ -9595,38 +9642,38 @@ } }, "@babel/compat-data": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.8.tgz", - "integrity": "sha512-m7OkX0IdKLKPpBlJtF561YJal5y/jyI5fNfWbPxh2D/nbzzGI4qRyrD8xO2jB24u7l+5I2a43scCG2IrfjC50Q==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.0.tgz", + "integrity": "sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng==", "dev": true }, "@babel/core": { - "version": "7.16.12", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.12.tgz", - "integrity": "sha512-dK5PtG1uiN2ikk++5OzSYsitZKny4wOCD0nrO4TqnW4BVBTQ2NGS3NgilvT/TEyxTST7LNyWV/T4tXDoD3fOgg==", + "version": "7.17.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz", + "integrity": "sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==", "dev": true, "requires": { + "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.16.8", + "@babel/generator": "^7.17.3", "@babel/helper-compilation-targets": "^7.16.7", "@babel/helper-module-transforms": "^7.16.7", - "@babel/helpers": "^7.16.7", - "@babel/parser": "^7.16.12", + "@babel/helpers": "^7.17.2", + "@babel/parser": "^7.17.3", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.10", - "@babel/types": "^7.16.8", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", "json5": "^2.1.2", - "semver": "^6.3.0", - "source-map": "^0.5.0" + "semver": "^6.3.0" }, "dependencies": { "@babel/parser": { - "version": "7.16.12", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", - "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", + "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", "dev": true }, "semver": { @@ -9638,12 +9685,12 @@ } }, "@babel/generator": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.8.tgz", - "integrity": "sha512-1ojZwE9+lOXzcWdWmO6TbUzDfqLD39CmEhN8+2cX9XkDo5yW1OpgfejfliysR2AWLpMamTiOiAp/mtroaymhpw==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz", + "integrity": "sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==", "dev": true, "requires": { - "@babel/types": "^7.16.8", + "@babel/types": "^7.17.0", "jsesc": "^2.5.1", "source-map": "^0.5.0" } @@ -9716,9 +9763,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.7.tgz", - "integrity": "sha512-gaqtLDxJEFCeQbYp9aLAefjhkKdjKcdh6DB7jniIGU3Pz52WAmP268zK0VgPz9hUNkMSYeH976K2/Y6yPadpng==", + "version": "7.17.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz", + "integrity": "sha512-2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA==", "dev": true, "requires": { "@babel/helper-environment-visitor": "^7.16.7", @@ -9727,8 +9774,8 @@ "@babel/helper-split-export-declaration": "^7.16.7", "@babel/helper-validator-identifier": "^7.16.7", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0" } }, "@babel/helper-simple-access": { @@ -9761,14 +9808,14 @@ "dev": true }, "@babel/helpers": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.7.tgz", - "integrity": "sha512-9ZDoqtfY7AuEOt3cxchfii6C7GDyyMBffktR5B2jvWv8u2+efwvpnVKXMWzNehqy68tKgAfSwfdw/lWpthS2bw==", + "version": "7.17.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.2.tgz", + "integrity": "sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ==", "dev": true, "requires": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/traverse": "^7.17.0", + "@babel/types": "^7.17.0" } }, "@babel/highlight": { @@ -9836,43 +9883,43 @@ }, "dependencies": { "@babel/parser": { - "version": "7.16.12", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", - "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", + "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", "dev": true } } }, "@babel/traverse": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.10.tgz", - "integrity": "sha512-yzuaYXoRJBGMlBhsMJoUW7G1UmSb/eXr/JHYM/MsOJgavJibLwASijW7oXBdw3NQ6T0bW7Ty5P/VarOs9cHmqw==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", + "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", "dev": true, "requires": { "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.16.8", + "@babel/generator": "^7.17.3", "@babel/helper-environment-visitor": "^7.16.7", "@babel/helper-function-name": "^7.16.7", "@babel/helper-hoist-variables": "^7.16.7", "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.16.10", - "@babel/types": "^7.16.8", + "@babel/parser": "^7.17.3", + "@babel/types": "^7.17.0", "debug": "^4.1.0", "globals": "^11.1.0" }, "dependencies": { "@babel/parser": { - "version": "7.16.12", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.12.tgz", - "integrity": "sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", + "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", "dev": true } } }, "@babel/types": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.8.tgz", - "integrity": "sha512-smN2DQc5s4M7fntyjGtyIPbRJv6wW4rU/94fmYJ7PKQuZkC0qGMHXJbg6sNGt12JmVr4k5YaptI/XtiLJBnmIg==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", + "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.16.7", @@ -9897,25 +9944,25 @@ } }, "@es-joy/jsdoccomment": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.17.0.tgz", - "integrity": "sha512-B8DIIWE194KyQFPojUs+THa2XX+1vulwTBjirw6GqcxjtNE60Rreex26svBnV9SNLTuz92ctZx5XQE1H7yOxgA==", + "version": "0.20.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.20.1.tgz", + "integrity": "sha512-oeJK41dcdqkvdZy/HctKklJNkt/jh+av3PZARrZEl+fs/8HaHeeYoAvEwOV0u5I6bArTF17JEsTZMY359e/nfQ==", "dev": true, "requires": { "comment-parser": "1.3.0", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~2.2.1" + "jsdoc-type-pratt-parser": "~2.2.3" } }, "@eslint/eslintrc": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.5.tgz", - "integrity": "sha512-BLxsnmK3KyPunz5wmCCpqy0YelEoxxGmH73Is+Z74oOTMtExcjkr3dDR6quwrjh1YspA8DH9gnX1o069KiS9AQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.1.0.tgz", + "integrity": "sha512-C1DfL7XX4nPqGd6jcP01W9pVM1HYCuUkFk1432D7F0v3JSlUIeOYn9oCoi3eoLZ+iwBSb29BMFxxny0YrrEZqg==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.2.0", + "espree": "^9.3.1", "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", @@ -9925,9 +9972,9 @@ }, "dependencies": { "globals": { - "version": "13.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", - "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", + "version": "13.12.1", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", + "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -9948,9 +9995,9 @@ } }, "@humanwhocodes/config-array": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.2.tgz", - "integrity": "sha512-UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.3.tgz", + "integrity": "sha512-3xSMlXHh03hCcCmFc0rbKp3Ivt2PFEJnQUJDDMTJQ2wkECZWdq4GePs2ctc5H8zV+cHPaq8k2vU8mrQjA6iHdQ==", "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.1", @@ -10050,6 +10097,28 @@ "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true }, + "@jridgewell/resolve-uri": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", + "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", + "dev": true + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.11", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz", + "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz", + "integrity": "sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, "@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -10098,9 +10167,9 @@ } }, "@sinonjs/samsam": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-6.0.2.tgz", - "integrity": "sha512-jxPRPp9n93ci7b8hMfJOFDPRLFYadN6FSpeROFTR4UNF4i5b+EK6m4QXPO46BDhFgRy1JuS87zAnFOzCUwMJcQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-6.1.1.tgz", + "integrity": "sha512-cZ7rKJTLiE7u7Wi/v9Hc2fs3Ucc3jrWeMgPHbbTCeVAB2S0wOBbYlkJVeNSL04i7fdhT8wIbDq1zhC/PXTD2SA==", "dev": true, "requires": { "@sinonjs/commons": "^1.6.0", @@ -10251,13 +10320,13 @@ } }, "@vue/compiler-core": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.29.tgz", - "integrity": "sha512-RePZ/J4Ub3sb7atQw6V6Rez+/5LCRHGFlSetT3N4VMrejqJnNPXKUt5AVm/9F5MJriy2w/VudEIvgscCfCWqxw==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.31.tgz", + "integrity": "sha512-aKno00qoA4o+V/kR6i/pE+aP+esng5siNAVQ422TkBNM6qA4veXiZbSe8OTXHXquEi/f6Akc+nLfB4JGfe4/WQ==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.29", + "@vue/shared": "3.2.31", "estree-walker": "^2.0.2", "source-map": "^0.6.1" }, @@ -10271,27 +10340,27 @@ } }, "@vue/compiler-dom": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.29.tgz", - "integrity": "sha512-y26vK5khdNS9L3ckvkqJk/78qXwWb75Ci8iYLb67AkJuIgyKhIOcR1E8RIt4mswlVCIeI9gQ+fmtdhaiTAtrBQ==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.31.tgz", + "integrity": "sha512-60zIlFfzIDf3u91cqfqy9KhCKIJgPeqxgveH2L+87RcGU/alT6BRrk5JtUso0OibH3O7NXuNOQ0cDc9beT0wrg==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.29", - "@vue/shared": "3.2.29" + "@vue/compiler-core": "3.2.31", + "@vue/shared": "3.2.31" } }, "@vue/compiler-sfc": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.29.tgz", - "integrity": "sha512-X9+0dwsag2u6hSOP/XsMYqFti/edvYvxamgBgCcbSYuXx1xLZN+dS/GvQKM4AgGS4djqo0jQvWfIXdfZ2ET68g==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.31.tgz", + "integrity": "sha512-748adc9msSPGzXgibHiO6T7RWgfnDcVQD+VVwYgSsyyY8Ans64tALHZANrKtOzvkwznV/F4H7OAod/jIlp/dkQ==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.29", - "@vue/compiler-dom": "3.2.29", - "@vue/compiler-ssr": "3.2.29", - "@vue/reactivity-transform": "3.2.29", - "@vue/shared": "3.2.29", + "@vue/compiler-core": "3.2.31", + "@vue/compiler-dom": "3.2.31", + "@vue/compiler-ssr": "3.2.31", + "@vue/reactivity-transform": "3.2.31", + "@vue/shared": "3.2.31", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -10307,32 +10376,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.29.tgz", - "integrity": "sha512-LrvQwXlx66uWsB9/VydaaqEpae9xtmlUkeSKF6aPDbzx8M1h7ukxaPjNCAXuFd3fUHblcri8k42lfimHfzMICA==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.31.tgz", + "integrity": "sha512-mjN0rqig+A8TVDnsGPYJM5dpbjlXeHUm2oZHZwGyMYiGT/F4fhJf/cXy8QpjnLQK4Y9Et4GWzHn9PS8AHUnSkw==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.29", - "@vue/shared": "3.2.29" + "@vue/compiler-dom": "3.2.31", + "@vue/shared": "3.2.31" } }, "@vue/reactivity-transform": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.29.tgz", - "integrity": "sha512-YF6HdOuhdOw6KyRm59+3rML8USb9o8mYM1q+SH0G41K3/q/G7uhPnHGKvspzceD7h9J3VR1waOQ93CUZj7J7OA==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.31.tgz", + "integrity": "sha512-uS4l4z/W7wXdI+Va5pgVxBJ345wyGFKvpPYtdSgvfJfX/x2Ymm6ophQlXXB6acqGHtXuBqNyyO3zVp9b1r0MOA==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.29", - "@vue/shared": "3.2.29", + "@vue/compiler-core": "3.2.31", + "@vue/shared": "3.2.31", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.29", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.29.tgz", - "integrity": "sha512-BjNpU8OK6Z0LVzGUppEk0CMYm/hKDnZfYdjSmPOs0N+TR1cLKJAkDwW8ASZUvaaSLEi6d3hVM7jnWnX+6yWnHw==", + "version": "3.2.31", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.31.tgz", + "integrity": "sha512-ymN2pj6zEjiKJZbrf98UM2pfDd6F2H7ksKw7NDt/ZZ1fh5Ei39X5tABugtT03ZRlWd9imccoK0hE8hpjpU7irQ==", "dev": true }, "abbrev": { @@ -10342,12 +10411,12 @@ "dev": true }, "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" } }, "acorn": { @@ -10628,19 +10697,19 @@ "dev": true }, "body-parser": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.1.tgz", - "integrity": "sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA==", + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", "requires": { - "bytes": "3.1.1", + "bytes": "3.1.2", "content-type": "~1.0.4", "debug": "2.6.9", "depd": "~1.1.2", "http-errors": "1.8.1", "iconv-lite": "0.4.24", "on-finished": "~2.3.0", - "qs": "6.9.6", - "raw-body": "2.4.2", + "qs": "6.9.7", + "raw-body": "2.4.3", "type-is": "~1.6.18" }, "dependencies": { @@ -10706,15 +10775,15 @@ } }, "browserslist": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz", - "integrity": "sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==", + "version": "4.19.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.3.tgz", + "integrity": "sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001286", - "electron-to-chromium": "^1.4.17", + "caniuse-lite": "^1.0.30001312", + "electron-to-chromium": "^1.4.71", "escalade": "^3.1.1", - "node-releases": "^2.0.1", + "node-releases": "^2.0.2", "picocolors": "^1.0.0" } }, @@ -10744,9 +10813,9 @@ "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=" }, "bytes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz", - "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==" + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" }, "cacache": { "version": "12.0.4", @@ -10883,9 +10952,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001301", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001301.tgz", - "integrity": "sha512-csfD/GpHMqgEL3V3uIgosvh+SVIQvCh43SNu9HRbP1lnxkKm1kjDG4f32PP571JplkLjfS+mg2p1gxR7MYrrIA==", + "version": "1.0.30001312", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz", + "integrity": "sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==", "dev": true }, "catharsis": { @@ -11416,9 +11485,9 @@ "dev": true }, "cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==" + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==" }, "cookie-signature": { "version": "1.0.6", @@ -11980,9 +12049,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.4.52", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.52.tgz", - "integrity": "sha512-JGkh8HEh5PnVrhU4HbpyyO0O791dVY6k7AdqfDeqbcRMeoGxtNHWT77deR2nhvbLe4dKpxjlDEvdEwrvRLGu2Q==", + "version": "1.4.71", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz", + "integrity": "sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw==", "dev": true }, "emittery": { @@ -12185,12 +12254,12 @@ } }, "eslint": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.7.0.tgz", - "integrity": "sha512-ifHYzkBGrzS2iDU7KjhCAVMGCvF6M3Xfs8X8b37cgrUlDt6bWRTpRh6T/gtSXv1HJ/BUGgmjvNvOEGu85Iif7w==", + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.9.0.tgz", + "integrity": "sha512-PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.0.5", + "@eslint/eslintrc": "^1.1.0", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -12198,10 +12267,10 @@ "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.0", + "eslint-scope": "^7.1.1", "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.2.0", - "espree": "^9.3.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.1", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -12237,9 +12306,9 @@ } }, "globals": { - "version": "13.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", - "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", + "version": "13.12.1", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", + "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -12261,12 +12330,12 @@ "requires": {} }, "eslint-plugin-jsdoc": { - "version": "37.6.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.6.3.tgz", - "integrity": "sha512-Ysd1ZK4kL7DjjRJtWzb6Z7YANu7ndalu5PQBhOn07SlpKQ/+8JXvdtQ6yyADOO8w9xW5ZEEzuGY3KWhtk4CRYA==", + "version": "37.9.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.4.tgz", + "integrity": "sha512-VxCyGgUNNnj2T4bb1OqltkbsPp3ehRzR5onIfh6zGrAvISmvgX/sbxUlh3YyGqWtjOTSBCURdKdmelSXEIHnlA==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "~0.17.0", + "@es-joy/jsdoccomment": "~0.20.1", "comment-parser": "1.3.0", "debug": "^4.3.3", "escape-string-regexp": "^4.0.0", @@ -12277,9 +12346,9 @@ } }, "eslint-scope": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.0.tgz", - "integrity": "sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", "dev": true, "requires": { "esrecurse": "^4.3.0", @@ -12312,18 +12381,18 @@ } }, "eslint-visitor-keys": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz", - "integrity": "sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==" }, "espree": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz", - "integrity": "sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==", + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", + "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", "requires": { "acorn": "^8.7.0", "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.1.0" + "eslint-visitor-keys": "^3.3.0" } }, "esprima": { @@ -12407,16 +12476,16 @@ "dev": true }, "express": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.2.tgz", - "integrity": "sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg==", + "version": "4.17.3", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", + "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", "requires": { - "accepts": "~1.3.7", + "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.19.1", + "body-parser": "1.19.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.1", + "cookie": "0.4.2", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "~1.1.2", @@ -12431,7 +12500,7 @@ "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", "proxy-addr": "~2.0.7", - "qs": "6.9.6", + "qs": "6.9.7", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", "send": "0.17.2", @@ -12472,9 +12541,9 @@ }, "dependencies": { "type": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.5.0.tgz", - "integrity": "sha512-180WMDQaIMm3+7hGXWf12GtdniDEy7nYcyFMKJn/eZz/6tSLXrUN9V0wKSbMjej0I1WHWbpREDEKHtqPQa9NNw==" + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.6.0.tgz", + "integrity": "sha512-eiDBDOmkih5pMbo9OqsqPRGMljLodLcwd5XD5JbtNB0o89xZAwynY9EdCDsJU7LtcVCClu9DvM7/0Ep1hYX3EQ==" } } }, @@ -12635,9 +12704,9 @@ } }, "flatted": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.4.tgz", - "integrity": "sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", + "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", "dev": true }, "flush-write-stream": { @@ -12674,9 +12743,9 @@ } }, "follow-redirects": { - "version": "1.14.7", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.7.tgz", - "integrity": "sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ==" + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", + "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==" }, "foreground-child": { "version": "2.0.0", @@ -13547,9 +13616,9 @@ } }, "istanbul-reports": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.3.tgz", - "integrity": "sha512-x9LtDVtfm/t1GFiLl3NffC7hz+I1ragvgX1P/Lg1NlIagifZDKUkuuaAxH/qpwj2IuEfD8G2Bs/UKp+sZ/pKkg==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", + "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -13625,9 +13694,9 @@ } }, "jsdoc-type-pratt-parser": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.2.tgz", - "integrity": "sha512-zRokSWcPLSWkoNzsWn9pq7YYSwDhKyEe+cJYT2qaPqLOOJb5sFSi46BPj81vP+e8chvCNdQL9RG86Bi9EI6MDw==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.3.tgz", + "integrity": "sha512-QPyxq62Q8veBSDtDrWmqaEPjSCeknUV9dH/OAGt3q9an8qC8UQDqitQiw1NvoMskIESpoRZ6qzt4H3rlK0xo8A==", "dev": true }, "jsesc": { @@ -13991,9 +14060,9 @@ "requires": {} }, "marked": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.10.tgz", - "integrity": "sha512-+QvuFj0nGgO970fySghXGmuw+Fd0gD2x3+MqCWLIPf5oxdv1Ka6b2q+z9RP01P/IaKPMEramy+7cNy/Lw8c3hw==" + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.12.tgz", + "integrity": "sha512-hgibXWrEDNBWgGiK18j/4lkS6ihTe9sxtV4Q1OQppb/0zzyPSzoFANBa5MfsG/zgsWklmNnhm0XACZOH/0HBiQ==" }, "matcher": { "version": "3.0.0", @@ -14090,9 +14159,9 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mime-db": { - "version": "1.51.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", - "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==" + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" }, "mime-types": { "version": "2.1.34", @@ -14100,6 +14169,13 @@ "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", "requires": { "mime-db": "1.51.0" + }, + "dependencies": { + "mime-db": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", + "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==" + } } }, "mimic-fn": { @@ -14126,9 +14202,9 @@ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" }, "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "requires": { "brace-expansion": "^1.1.7" } @@ -14279,9 +14355,9 @@ } }, "nanoid": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.2.0.tgz", - "integrity": "sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz", + "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==", "dev": true }, "natural-compare": { @@ -14291,9 +14367,9 @@ "dev": true }, "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" }, "next-tick": { "version": "1.0.0", @@ -14301,13 +14377,13 @@ "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" }, "nise": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.0.tgz", - "integrity": "sha512-W5WlHu+wvo3PaKLsJJkgPup2LrsXCcm7AWwyNZkUnn5rwPkuPBi3Iwk5SQtN0mv+K65k7nKKjwNQ30wg3wLAQQ==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.1.tgz", + "integrity": "sha512-yr5kW2THW1AkxVmCnKEh4nbYkJdB3I7LUkiUgOvEkOp414mc2UMaHMA7pjq1nYowhdoJZGwEKGaQVbxfpWj10A==", "dev": true, "requires": { - "@sinonjs/commons": "^1.7.0", - "@sinonjs/fake-timers": "^7.0.4", + "@sinonjs/commons": "^1.8.3", + "@sinonjs/fake-timers": ">=5", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "path-to-regexp": "^1.7.0" @@ -14350,9 +14426,9 @@ } }, "node-releases": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", - "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz", + "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==", "dev": true }, "nopt": { @@ -15072,9 +15148,9 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "peek-readable": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.2.tgz", - "integrity": "sha512-9fMaz6zoxw9ypO1KZy5RDJgSupEtu0Q+g/OqqsVHX3rKGR8qehRLYzsFARZ4bVvdvfknKiXvuDbkMnO1g6cRpQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", + "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", "dev": true }, "picocolors": { @@ -15187,14 +15263,14 @@ } }, "postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", + "version": "8.4.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz", + "integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==", "dev": true, "requires": { - "nanoid": "^3.1.30", + "nanoid": "^3.2.0", "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" + "source-map-js": "^1.0.2" } }, "prelude-ls": { @@ -15330,9 +15406,9 @@ } }, "qs": { - "version": "6.9.6", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", - "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==" + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==" }, "query-ast": { "version": "1.0.4", @@ -15365,11 +15441,11 @@ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, "raw-body": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.2.tgz", - "integrity": "sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", + "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", "requires": { - "bytes": "3.1.1", + "bytes": "3.1.2", "http-errors": "1.8.1", "iconv-lite": "0.4.24", "unpipe": "1.0.0" @@ -15743,9 +15819,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.49.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.0.tgz", - "integrity": "sha512-TVwVdNDj6p6b4QymJtNtRS2YtLJ/CqZriGg0eIAbAKMlN8Xy6kbv33FsEZSF7FufFFM705SQviHjjThfaQ4VNw==", + "version": "1.49.8", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.8.tgz", + "integrity": "sha512-NoGOjvDDOU9og9oAxhRnap71QaTjjlzrvLnKecUJ3GxhaQBrV6e7gPuSPF28u1OcVAArVojPAe4ZhOXwwC4tGw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -15920,9 +15996,9 @@ "dev": true }, "signal-exit": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.6.tgz", - "integrity": "sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==" + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "sinon": { "version": "11.1.2", @@ -16227,13 +16303,13 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { - "version": "6.2.4", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.4.tgz", - "integrity": "sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", + "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", "dev": true, "requires": { "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.0.1" + "peek-readable": "^4.1.0" } }, "supertap": { @@ -16558,10 +16634,11 @@ } }, "terser": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.10.0.tgz", - "integrity": "sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA==", + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.11.0.tgz", + "integrity": "sha512-uCA9DLanzzWSsN1UirKwylhhRz3aKPInlfmpGfw8VN6jHsAtu8HJtIpeeHHK23rxnE/cDc+yvmq5wqkIC6Kn0A==", "requires": { + "acorn": "^8.5.0", "commander": "^2.20.0", "source-map": "~0.7.2", "source-map-support": "~0.5.20" From 5d587fba928ecc94c9aac33b4436547140ad04f7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 24 Feb 2022 23:17:14 +0100 Subject: [PATCH 0607/1272] [ui5-project][INTERNAL] git-chglog: Fix mutli-release-branch setup * Always sort by semver instead of date to fix changelog generation when different branches are tagged at intersecting times * For release notes on the current next branch, ignore any tags <=v2 to ensure that we always compare to a v3 tag (sorting by semver doesn't seem to work here) --- packages/project/.chglog/release-config.yml | 1 + packages/project/package.json | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/project/.chglog/release-config.yml b/packages/project/.chglog/release-config.yml index e90faaaa1f3..e9f395f721c 100755 --- a/packages/project/.chglog/release-config.yml +++ b/packages/project/.chglog/release-config.yml @@ -3,6 +3,7 @@ template: RELEASE.tpl.md info: repository_url: https://github.com/SAP/ui5-project options: + tag_filter_pattern: '^v[^012]' # For release notes ignore versions below v3 to that we always compare the _last v3+_ tag with the current release commits: filters: Type: diff --git a/packages/project/package.json b/packages/project/package.json index dc113d54291..9edf2b29b0c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -37,9 +37,9 @@ "jsdoc-generate": "jsdoc -c ./jsdoc.json -t $(node -p 'path.dirname(require.resolve(\"docdash\"))') ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", "jsdoc-watch": "npm run jsdoc && chokidar \"./lib/**/*.js\" -c \"npm run jsdoc-generate\"", "preversion": "npm test", - "version": "git-chglog --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", + "version": "git-chglog --sort semver --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", "postversion": "git push --follow-tags", - "release-note": "git-chglog -c .chglog/release-config.yml v$npm_package_version", + "release-note": "git-chglog --sort semver -c .chglog/release-config.yml v$npm_package_version", "depcheck": "depcheck --ignores docdash" }, "files": [ From 2df1b19b18285175d7b41fe197cc777756cb230d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 25 Feb 2022 10:20:25 +0000 Subject: [PATCH 0608/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.1 to 3.0.0-alpha.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.2/CHANGELOG.md --- packages/project/package-lock.json | 26 +++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 987708f559e..fc68a1d1c15 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-alpha.1", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.1", + "@ui5/builder": "^3.0.0-alpha.2", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", @@ -847,16 +847,16 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.1.tgz", - "integrity": "sha512-qk5zkEH4gA5rxZA9PThoX9R5/SMWb4cU0DLymmak+MQ2mDZaH0vNgVHRPQt7O81Gtt9mqFepeu6oMEvhqq78cg==", + "version": "3.0.0-alpha.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.2.tgz", + "integrity": "sha512-T75CJ+vinUIkFYZnFHv++2MhNmOXGe6m2V82e3qV7edBQoOKKVtQRxKRfNeweRMby+fu9oYsK9r0uRS2fPtVYQ==", "dependencies": { "@ui5/fs": "^3.0.0-alpha.2", "@ui5/logger": "^3.0.1-alpha.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", - "espree": "^9.3.0", + "espree": "^9.3.1", "globby": "^11.1.0", "graceful-fs": "^4.2.9", "jsdoc": "^3.6.7", @@ -867,6 +867,7 @@ "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.5", + "sourcemap-codec": "^1.4.8", "terser": "^5.10.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" @@ -8304,8 +8305,7 @@ "node_modules/sourcemap-codec": { "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" }, "node_modules/spawn-wrap": { "version": "2.0.0", @@ -10241,16 +10241,16 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.1.tgz", - "integrity": "sha512-qk5zkEH4gA5rxZA9PThoX9R5/SMWb4cU0DLymmak+MQ2mDZaH0vNgVHRPQt7O81Gtt9mqFepeu6oMEvhqq78cg==", + "version": "3.0.0-alpha.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.2.tgz", + "integrity": "sha512-T75CJ+vinUIkFYZnFHv++2MhNmOXGe6m2V82e3qV7edBQoOKKVtQRxKRfNeweRMby+fu9oYsK9r0uRS2fPtVYQ==", "requires": { "@ui5/fs": "^3.0.0-alpha.2", "@ui5/logger": "^3.0.1-alpha.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", - "espree": "^9.3.0", + "espree": "^9.3.1", "globby": "^11.1.0", "graceful-fs": "^4.2.9", "jsdoc": "^3.6.7", @@ -10261,6 +10261,7 @@ "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.5", + "sourcemap-codec": "^1.4.8", "terser": "^5.10.0", "xml2js": "^0.4.23", "yazl": "^2.5.1" @@ -16129,8 +16130,7 @@ "sourcemap-codec": { "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" }, "spawn-wrap": { "version": "2.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 9edf2b29b0c..ae05d03acc9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.1", + "@ui5/builder": "^3.0.0-alpha.2", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", From 35d28d8b728c6b1ce85987117cadf0610602bf88 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 9 Mar 2022 13:44:59 +0000 Subject: [PATCH 0609/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 192 +++++++++++++++-------------- 1 file changed, 98 insertions(+), 94 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fc68a1d1c15..c0987ba32c8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -499,9 +499,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.1.0.tgz", - "integrity": "sha512-C1DfL7XX4nPqGd6jcP01W9pVM1HYCuUkFk1432D7F0v3JSlUIeOYn9oCoi3eoLZ+iwBSb29BMFxxny0YrrEZqg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.0.tgz", + "integrity": "sha512-igm9SjJHNEJRiUnecP/1R5T3wKLEJ7pL6e2P+GUSfCd0dGjPYYZve08uzw8L2J8foVHFz+NGu12JxRcU2gGo6w==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -555,9 +555,9 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.3.tgz", - "integrity": "sha512-3xSMlXHh03hCcCmFc0rbKp3Ivt2PFEJnQUJDDMTJQ2wkECZWdq4GePs2ctc5H8zV+cHPaq8k2vU8mrQjA6iHdQ==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", + "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -1508,13 +1508,13 @@ } }, "node_modules/browserslist": { - "version": "4.19.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.3.tgz", - "integrity": "sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg==", + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.0.tgz", + "integrity": "sha512-bnpOoa+DownbciXj0jVGENf8VYQnE2LNWomhYuCsMmmx9Jd9lwq0WXODuwpSsp8AVdKM2/HorrzxAfbKvWTByQ==", "dev": true, "dependencies": { - "caniuse-lite": "^1.0.30001312", - "electron-to-chromium": "^1.4.71", + "caniuse-lite": "^1.0.30001313", + "electron-to-chromium": "^1.4.76", "escalade": "^3.1.1", "node-releases": "^2.0.2", "picocolors": "^1.0.0" @@ -1748,9 +1748,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001312", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz", - "integrity": "sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==", + "version": "1.0.30001314", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001314.tgz", + "integrity": "sha512-0zaSO+TnCHtHJIbpLroX7nsD+vYuOVjl3uzFbJO1wMVbuveJA0RK2WcQA9ZUIOiO0/ArMiMgHJLxfEZhQiC0kw==", "dev": true, "funding": { "type": "opencollective", @@ -3111,9 +3111,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "node_modules/electron-to-chromium": { - "version": "1.4.71", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz", - "integrity": "sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw==", + "version": "1.4.78", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.78.tgz", + "integrity": "sha512-o61+D/Lx7j/E0LIin/efOqeHpXhwi1TaQco9vUcRmr91m25SfZY6L5hWJDv/r+6kNjboFKgBw1LbfM0lbhuK6Q==", "dev": true }, "node_modules/emittery": { @@ -3199,13 +3199,17 @@ } }, "node_modules/es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "version": "0.10.57", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.57.tgz", + "integrity": "sha512-L7cCNoPwTkAp7IBHxrKLsh7NKiVFkcdxlP9vbVw9QUvb7gF0Mz9bEBN0WY9xqdTjGF907EMT/iG013vnbqwu1Q==", + "hasInstallScript": true, "dependencies": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.10" } }, "node_modules/es6-error": { @@ -3348,12 +3352,12 @@ } }, "node_modules/eslint": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.9.0.tgz", - "integrity": "sha512-PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q==", + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.10.0.tgz", + "integrity": "sha512-tcI1D9lfVec+R4LE1mNDnzoJ/f71Kl/9Cv4nG47jOueCMBrCCKYXr4AUVS7go6mWYGFD4+EoN6+eXSrEbRzXVw==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.1.0", + "@eslint/eslintrc": "^1.2.0", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -3412,9 +3416,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "37.9.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.4.tgz", - "integrity": "sha512-VxCyGgUNNnj2T4bb1OqltkbsPp3ehRzR5onIfh6zGrAvISmvgX/sbxUlh3YyGqWtjOTSBCURdKdmelSXEIHnlA==", + "version": "37.9.7", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.7.tgz", + "integrity": "sha512-8alON8yYcStY94o0HycU2zkLKQdcS+qhhOUNQpfONHHwvI99afbmfpYuPqf6PbLz5pLZldG3Te5I0RbAiTN42g==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.20.1", @@ -5542,12 +5546,12 @@ } }, "node_modules/magic-string": { - "version": "0.25.7", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", - "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", "dev": true, "dependencies": { - "sourcemap-codec": "^1.4.4" + "sourcemap-codec": "^1.4.8" } }, "node_modules/make-dir": { @@ -6071,9 +6075,9 @@ } }, "node_modules/next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" }, "node_modules/nise": { "version": "5.1.1", @@ -7197,12 +7201,12 @@ } }, "node_modules/postcss": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz", - "integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==", + "version": "8.4.8", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.8.tgz", + "integrity": "sha512-2tXEqGxrjvAO6U+CJzDL2Fk2kPHTv1jQsYkSoMeOis2SsYaXRO2COxTdQp99cYvif9JTXaAk9lYGc3VhJt7JPQ==", "dev": true, "dependencies": { - "nanoid": "^3.2.0", + "nanoid": "^3.3.1", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" }, @@ -7920,9 +7924,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sass": { - "version": "1.49.8", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.8.tgz", - "integrity": "sha512-NoGOjvDDOU9og9oAxhRnap71QaTjjlzrvLnKecUJ3GxhaQBrV6e7gPuSPF28u1OcVAArVojPAe4ZhOXwwC4tGw==", + "version": "1.49.9", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.9.tgz", + "integrity": "sha512-YlYWkkHP9fbwaFRZQRXgDi3mXZShslVmmo+FVK3kHLUELHHEYrCmL1x6IUjC7wLS6VuJSAFXRQS/DxdsC4xL1A==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8937,9 +8941,9 @@ } }, "node_modules/terser": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.11.0.tgz", - "integrity": "sha512-uCA9DLanzzWSsN1UirKwylhhRz3aKPInlfmpGfw8VN6jHsAtu8HJtIpeeHHK23rxnE/cDc+yvmq5wqkIC6Kn0A==", + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz", + "integrity": "sha512-R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A==", "dependencies": { "acorn": "^8.5.0", "commander": "^2.20.0", @@ -9955,9 +9959,9 @@ } }, "@eslint/eslintrc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.1.0.tgz", - "integrity": "sha512-C1DfL7XX4nPqGd6jcP01W9pVM1HYCuUkFk1432D7F0v3JSlUIeOYn9oCoi3eoLZ+iwBSb29BMFxxny0YrrEZqg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.0.tgz", + "integrity": "sha512-igm9SjJHNEJRiUnecP/1R5T3wKLEJ7pL6e2P+GUSfCd0dGjPYYZve08uzw8L2J8foVHFz+NGu12JxRcU2gGo6w==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -9995,9 +9999,9 @@ } }, "@humanwhocodes/config-array": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.3.tgz", - "integrity": "sha512-3xSMlXHh03hCcCmFc0rbKp3Ivt2PFEJnQUJDDMTJQ2wkECZWdq4GePs2ctc5H8zV+cHPaq8k2vU8mrQjA6iHdQ==", + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", + "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.1", @@ -10776,13 +10780,13 @@ } }, "browserslist": { - "version": "4.19.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.3.tgz", - "integrity": "sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg==", + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.0.tgz", + "integrity": "sha512-bnpOoa+DownbciXj0jVGENf8VYQnE2LNWomhYuCsMmmx9Jd9lwq0WXODuwpSsp8AVdKM2/HorrzxAfbKvWTByQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001312", - "electron-to-chromium": "^1.4.71", + "caniuse-lite": "^1.0.30001313", + "electron-to-chromium": "^1.4.76", "escalade": "^3.1.1", "node-releases": "^2.0.2", "picocolors": "^1.0.0" @@ -10953,9 +10957,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001312", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz", - "integrity": "sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==", + "version": "1.0.30001314", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001314.tgz", + "integrity": "sha512-0zaSO+TnCHtHJIbpLroX7nsD+vYuOVjl3uzFbJO1wMVbuveJA0RK2WcQA9ZUIOiO0/ArMiMgHJLxfEZhQiC0kw==", "dev": true }, "catharsis": { @@ -12050,9 +12054,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.4.71", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz", - "integrity": "sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw==", + "version": "1.4.78", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.78.tgz", + "integrity": "sha512-o61+D/Lx7j/E0LIin/efOqeHpXhwi1TaQco9vUcRmr91m25SfZY6L5hWJDv/r+6kNjboFKgBw1LbfM0lbhuK6Q==", "dev": true }, "emittery": { @@ -12122,13 +12126,13 @@ } }, "es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "version": "0.10.57", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.57.tgz", + "integrity": "sha512-L7cCNoPwTkAp7IBHxrKLsh7NKiVFkcdxlP9vbVw9QUvb7gF0Mz9bEBN0WY9xqdTjGF907EMT/iG013vnbqwu1Q==", "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" } }, "es6-error": { @@ -12255,12 +12259,12 @@ } }, "eslint": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.9.0.tgz", - "integrity": "sha512-PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q==", + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.10.0.tgz", + "integrity": "sha512-tcI1D9lfVec+R4LE1mNDnzoJ/f71Kl/9Cv4nG47jOueCMBrCCKYXr4AUVS7go6mWYGFD4+EoN6+eXSrEbRzXVw==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.1.0", + "@eslint/eslintrc": "^1.2.0", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -12331,9 +12335,9 @@ "requires": {} }, "eslint-plugin-jsdoc": { - "version": "37.9.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.4.tgz", - "integrity": "sha512-VxCyGgUNNnj2T4bb1OqltkbsPp3ehRzR5onIfh6zGrAvISmvgX/sbxUlh3YyGqWtjOTSBCURdKdmelSXEIHnlA==", + "version": "37.9.7", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.7.tgz", + "integrity": "sha512-8alON8yYcStY94o0HycU2zkLKQdcS+qhhOUNQpfONHHwvI99afbmfpYuPqf6PbLz5pLZldG3Te5I0RbAiTN42g==", "dev": true, "requires": { "@es-joy/jsdoccomment": "~0.20.1", @@ -13964,12 +13968,12 @@ } }, "magic-string": { - "version": "0.25.7", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", - "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", "dev": true, "requires": { - "sourcemap-codec": "^1.4.4" + "sourcemap-codec": "^1.4.8" } }, "make-dir": { @@ -14373,9 +14377,9 @@ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" }, "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" }, "nise": { "version": "5.1.1", @@ -15264,12 +15268,12 @@ } }, "postcss": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz", - "integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==", + "version": "8.4.8", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.8.tgz", + "integrity": "sha512-2tXEqGxrjvAO6U+CJzDL2Fk2kPHTv1jQsYkSoMeOis2SsYaXRO2COxTdQp99cYvif9JTXaAk9lYGc3VhJt7JPQ==", "dev": true, "requires": { - "nanoid": "^3.2.0", + "nanoid": "^3.3.1", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" } @@ -15820,9 +15824,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.49.8", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.8.tgz", - "integrity": "sha512-NoGOjvDDOU9og9oAxhRnap71QaTjjlzrvLnKecUJ3GxhaQBrV6e7gPuSPF28u1OcVAArVojPAe4ZhOXwwC4tGw==", + "version": "1.49.9", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.9.tgz", + "integrity": "sha512-YlYWkkHP9fbwaFRZQRXgDi3mXZShslVmmo+FVK3kHLUELHHEYrCmL1x6IUjC7wLS6VuJSAFXRQS/DxdsC4xL1A==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -16634,9 +16638,9 @@ } }, "terser": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.11.0.tgz", - "integrity": "sha512-uCA9DLanzzWSsN1UirKwylhhRz3aKPInlfmpGfw8VN6jHsAtu8HJtIpeeHHK23rxnE/cDc+yvmq5wqkIC6Kn0A==", + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz", + "integrity": "sha512-R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A==", "requires": { "acorn": "^8.5.0", "commander": "^2.20.0", From 8ce9e9325c9d6cda9a694279a2e2806ebd1487f5 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 10 Mar 2022 16:13:07 +0000 Subject: [PATCH 0610/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.2 to 3.0.0-alpha.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.3/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c0987ba32c8..f551c3a101d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-alpha.1", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.2", + "@ui5/builder": "^3.0.0-alpha.3", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", @@ -847,9 +847,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.2.tgz", - "integrity": "sha512-T75CJ+vinUIkFYZnFHv++2MhNmOXGe6m2V82e3qV7edBQoOKKVtQRxKRfNeweRMby+fu9oYsK9r0uRS2fPtVYQ==", + "version": "3.0.0-alpha.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.3.tgz", + "integrity": "sha512-WwbLjWNaepIGYWPeacHqlncaoJE5comH+qUcM7hHRsITQfS8QoULzmr63QJCMx3lErqTS+oZZHQudiqH//3m8g==", "dependencies": { "@ui5/fs": "^3.0.0-alpha.2", "@ui5/logger": "^3.0.1-alpha.1", @@ -10245,9 +10245,9 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.2.tgz", - "integrity": "sha512-T75CJ+vinUIkFYZnFHv++2MhNmOXGe6m2V82e3qV7edBQoOKKVtQRxKRfNeweRMby+fu9oYsK9r0uRS2fPtVYQ==", + "version": "3.0.0-alpha.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.3.tgz", + "integrity": "sha512-WwbLjWNaepIGYWPeacHqlncaoJE5comH+qUcM7hHRsITQfS8QoULzmr63QJCMx3lErqTS+oZZHQudiqH//3m8g==", "requires": { "@ui5/fs": "^3.0.0-alpha.2", "@ui5/logger": "^3.0.1-alpha.1", diff --git a/packages/project/package.json b/packages/project/package.json index ae05d03acc9..5050b862069 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.2", + "@ui5/builder": "^3.0.0-alpha.3", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", From e72e67fb3ee20a5ea92d9f1d46c7ed445aa8a6c1 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 30 Mar 2022 15:27:02 +0200 Subject: [PATCH 0611/1272] [ui5-project][INTERNAL] Azure: Re-run coverage test only ESLint and other checks are covered via GH Actions. --- packages/project/azure-pipelines.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 75fd5c3e53e..4124dc77dc4 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -53,6 +53,6 @@ steps: codeCoverageTool: 'cobertura' summaryFileLocation: '$(System.DefaultWorkingDirectory)/coverage/cobertura-coverage.xml' -- script: npm run test +- script: npm run coverage displayName: Run Test Natively in Case of Failures condition: failed() From 0f431d165b4f05a0b7afca44622abd904356bedf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 4 Apr 2022 11:43:01 +0000 Subject: [PATCH 0612/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 1149 ++++++++++++++++++---------- 1 file changed, 741 insertions(+), 408 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f551c3a101d..0e20f810511 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -80,27 +80,27 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.0.tgz", - "integrity": "sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", + "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.17.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz", - "integrity": "sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.8.tgz", + "integrity": "sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.3", - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-module-transforms": "^7.16.7", - "@babel/helpers": "^7.17.2", - "@babel/parser": "^7.17.3", + "@babel/generator": "^7.17.7", + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helpers": "^7.17.8", + "@babel/parser": "^7.17.8", "@babel/template": "^7.16.7", "@babel/traverse": "^7.17.3", "@babel/types": "^7.17.0", @@ -119,9 +119,9 @@ } }, "node_modules/@babel/core/node_modules/@babel/parser": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", - "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", + "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -140,9 +140,9 @@ } }, "node_modules/@babel/generator": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz", - "integrity": "sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", + "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", "dev": true, "dependencies": { "@babel/types": "^7.17.0", @@ -154,12 +154,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz", - "integrity": "sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", + "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.16.4", + "@babel/compat-data": "^7.17.7", "@babel/helper-validator-option": "^7.16.7", "browserslist": "^4.17.5", "semver": "^6.3.0" @@ -243,14 +243,14 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.17.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz", - "integrity": "sha512-2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", + "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.16.7", "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", "@babel/helper-split-export-declaration": "^7.16.7", "@babel/helper-validator-identifier": "^7.16.7", "@babel/template": "^7.16.7", @@ -262,12 +262,12 @@ } }, "node_modules/@babel/helper-simple-access": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz", - "integrity": "sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", + "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", "dev": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.17.0" }, "engines": { "node": ">=6.9.0" @@ -303,13 +303,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.17.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.2.tgz", - "integrity": "sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.8.tgz", + "integrity": "sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==", "dev": true, "dependencies": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.0", + "@babel/traverse": "^7.17.3", "@babel/types": "^7.17.0" }, "engines": { @@ -406,9 +406,9 @@ } }, "node_modules/@babel/template/node_modules/@babel/parser": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", - "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", + "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -439,9 +439,9 @@ } }, "node_modules/@babel/traverse/node_modules/@babel/parser": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", - "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", + "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -499,16 +499,16 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.0.tgz", - "integrity": "sha512-igm9SjJHNEJRiUnecP/1R5T3wKLEJ7pL6e2P+GUSfCd0dGjPYYZve08uzw8L2J8foVHFz+NGu12JxRcU2gGo6w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", + "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.3.1", "globals": "^13.9.0", - "ignore": "^4.0.6", + "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", "minimatch": "^3.0.4", @@ -519,9 +519,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", - "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -533,15 +533,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@eslint/eslintrc/node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, "node_modules/@eslint/eslintrc/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -1416,23 +1407,26 @@ "dev": true }, "node_modules/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", + "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" + "on-finished": "2.4.1", + "qs": "6.10.3", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, "node_modules/body-parser/node_modules/debug": { @@ -1508,13 +1502,23 @@ } }, "node_modules/browserslist": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.0.tgz", - "integrity": "sha512-bnpOoa+DownbciXj0jVGENf8VYQnE2LNWomhYuCsMmmx9Jd9lwq0WXODuwpSsp8AVdKM2/HorrzxAfbKvWTByQ==", + "version": "4.20.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz", + "integrity": "sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], "dependencies": { - "caniuse-lite": "^1.0.30001313", - "electron-to-chromium": "^1.4.76", + "caniuse-lite": "^1.0.30001317", + "electron-to-chromium": "^1.4.84", "escalade": "^3.1.1", "node-releases": "^2.0.2", "picocolors": "^1.0.0" @@ -1524,10 +1528,6 @@ }, "engines": { "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" } }, "node_modules/buffer": { @@ -1611,11 +1611,11 @@ } }, "node_modules/cacache/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dependencies": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" }, "bin": { "mkdirp": "bin/cmd.js" @@ -1700,6 +1700,18 @@ "node": ">=8" } }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -1748,14 +1760,20 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001314", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001314.tgz", - "integrity": "sha512-0zaSO+TnCHtHJIbpLroX7nsD+vYuOVjl3uzFbJO1wMVbuveJA0RK2WcQA9ZUIOiO0/ArMiMgHJLxfEZhQiC0kw==", + "version": "1.0.30001325", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001325.tgz", + "integrity": "sha512-sB1bZHjseSjDtijV1Hb7PB2Zd58Kyx+n/9EotvZ4Qcz2K3d0lWB8dB4nb8wN/TsOGFq3UuAm0zQZNQ4SoR7TrQ==", "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - } + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] }, "node_modules/catharsis": { "version": "0.9.0", @@ -1834,15 +1852,15 @@ } }, "node_modules/cheerio-select": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.5.0.tgz", - "integrity": "sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.6.0.tgz", + "integrity": "sha512-eq0GdBvxVFbqWgmCm7M3XGs1I8oLy/nExUnh6oLqmBditPO9AqQJrkslDpMun/hZ0yyTs8L0m85OHp4ho6Qm9g==", "dependencies": { - "css-select": "^4.1.3", - "css-what": "^5.0.1", + "css-select": "^4.3.0", + "css-what": "^6.0.1", "domelementtype": "^2.2.0", - "domhandler": "^4.2.0", - "domutils": "^2.7.0" + "domhandler": "^4.3.1", + "domutils": "^2.8.0" }, "funding": { "url": "https://github.com/sponsors/fb55" @@ -1894,9 +1912,9 @@ } }, "node_modules/chokidar-cli/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true, "engines": { "node": ">=6" @@ -2458,11 +2476,11 @@ "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, "node_modules/copy-concurrently/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dependencies": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" }, "bin": { "mkdirp": "bin/cmd.js" @@ -2564,13 +2582,13 @@ } }, "node_modules/css-select": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.2.1.tgz", - "integrity": "sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", "dependencies": { "boolbase": "^1.0.0", - "css-what": "^5.1.0", - "domhandler": "^4.3.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", "domutils": "^2.8.0", "nth-check": "^2.0.1" }, @@ -2579,9 +2597,9 @@ } }, "node_modules/css-what": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", - "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", "engines": { "node": ">= 6" }, @@ -2636,9 +2654,9 @@ } }, "node_modules/debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dependencies": { "ms": "2.1.2" }, @@ -2845,11 +2863,11 @@ } }, "node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/deps-regex": { @@ -2859,9 +2877,13 @@ "dev": true }, "node_modules/destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } }, "node_modules/detect-node": { "version": "2.1.0", @@ -2881,11 +2903,11 @@ } }, "node_modules/devcert-sanscache/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dependencies": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" }, "bin": { "mkdirp": "bin/cmd.js" @@ -2965,9 +2987,9 @@ ] }, "node_modules/domhandler": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz", - "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", "dependencies": { "domelementtype": "^2.2.0" }, @@ -3111,9 +3133,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "node_modules/electron-to-chromium": { - "version": "1.4.78", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.78.tgz", - "integrity": "sha512-o61+D/Lx7j/E0LIin/efOqeHpXhwi1TaQco9vUcRmr91m25SfZY6L5hWJDv/r+6kNjboFKgBw1LbfM0lbhuK6Q==", + "version": "1.4.103", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.103.tgz", + "integrity": "sha512-c/uKWR1Z/W30Wy/sx3dkZoj4BijbXX85QKWu9jJfjho3LBAXNEGAEW3oWiGb+dotA6C6BzCTxL2/aLes7jlUeg==", "dev": true }, "node_modules/emittery": { @@ -3199,9 +3221,9 @@ } }, "node_modules/es5-ext": { - "version": "0.10.57", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.57.tgz", - "integrity": "sha512-L7cCNoPwTkAp7IBHxrKLsh7NKiVFkcdxlP9vbVw9QUvb7gF0Mz9bEBN0WY9xqdTjGF907EMT/iG013vnbqwu1Q==", + "version": "0.10.59", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.59.tgz", + "integrity": "sha512-cOgyhW0tIJyQY1Kfw6Kr0viu9ZlUctVchRMZ7R0HiH3dxTSp5zJDLecwxUqPUrGKMsgBI1wd1FL+d9Jxfi4cLw==", "hasInstallScript": true, "dependencies": { "es6-iterator": "^2.0.3", @@ -3352,12 +3374,12 @@ } }, "node_modules/eslint": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.10.0.tgz", - "integrity": "sha512-tcI1D9lfVec+R4LE1mNDnzoJ/f71Kl/9Cv4nG47jOueCMBrCCKYXr4AUVS7go6mWYGFD4+EoN6+eXSrEbRzXVw==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.12.0.tgz", + "integrity": "sha512-it1oBL9alZg1S8UycLm5YDMAkIhtH6FtAzuZs6YvoGVldWjbS08BkAdb/ymP9LlAyq8koANu32U7Ib/w+UNh8Q==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.2.0", + "@eslint/eslintrc": "^1.2.1", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -3507,9 +3529,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", - "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -3690,6 +3712,26 @@ "node": ">= 0.10.0" } }, + "node_modules/express/node_modules/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.9.7", + "raw-body": "2.4.3", + "type-is": "~1.6.18" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/express/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -3698,11 +3740,70 @@ "ms": "2.0.0" } }, + "node_modules/express/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/express/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "node_modules/express/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express/node_modules/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/express/node_modules/raw-body": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", + "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/express/node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -3885,6 +3986,17 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "node_modules/finalhandler/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/find-cache-dir": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", @@ -4172,6 +4284,19 @@ "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", @@ -4372,6 +4497,17 @@ "node": ">=8" } }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -4475,18 +4611,26 @@ "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" }, "node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dependencies": { - "depd": "~1.1.2", + "depd": "2.0.0", "inherits": "2.0.4", "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", + "statuses": "2.0.1", "toidentifier": "1.0.1" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" + } + }, + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" } }, "node_modules/http-proxy": { @@ -5123,9 +5267,9 @@ } }, "node_modules/js-beautify": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.0.tgz", - "integrity": "sha512-yuck9KirNSCAwyNJbqW+BxJqJ0NLJ4PwBUzQQACl5O3qHMBXVkXb/rD0ilh/Lat/tn88zSZ+CAHOlk0DsY7GuQ==", + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.2.tgz", + "integrity": "sha512-H85kX95a53os+q1OCqtYe8AXAmgy3BvtysA/V83S3fdhznm6WlUpGi14DqSPbKFsL3dXZFXYl7YQwW9U1+76ng==", "dev": true, "dependencies": { "config-chain": "^1.1.12", @@ -5204,9 +5348,9 @@ } }, "node_modules/jsdoc-type-pratt-parser": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.3.tgz", - "integrity": "sha512-QPyxq62Q8veBSDtDrWmqaEPjSCeknUV9dH/OAGt3q9an8qC8UQDqitQiw1NvoMskIESpoRZ6qzt4H3rlK0xo8A==", + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.5.tgz", + "integrity": "sha512-2a6eRxSxp1BW040hFvaJxhsCMI9lT8QB8t14t+NY5tC5rckIR0U9cr2tjOeaFirmEOy6MHvmJnY7zTBHq431Lw==", "dev": true, "engines": { "node": ">=12.0.0" @@ -5260,13 +5404,10 @@ "dev": true }, "node_modules/json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, "bin": { "json5": "lib/cli.js" }, @@ -5786,12 +5927,12 @@ } }, "node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { "node": ">=8.6" @@ -5817,24 +5958,16 @@ } }, "node_modules/mime-types": { - "version": "2.1.34", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz", - "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dependencies": { - "mime-db": "1.51.0" + "mime-db": "1.52.0" }, "engines": { "node": ">= 0.6" } }, - "node_modules/mime-types/node_modules/mime-db": { - "version": "1.51.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", - "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/mimic-fn": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", @@ -5879,9 +6012,9 @@ } }, "node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" }, "node_modules/minimist-options": { "version": "4.1.0", @@ -6003,11 +6136,11 @@ "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, "node_modules/move-concurrently/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dependencies": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" }, "bin": { "mkdirp": "bin/cmd.js" @@ -6049,9 +6182,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz", - "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.2.tgz", + "integrity": "sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA==", "dev": true, "bin": { "nanoid": "bin/nanoid.cjs" @@ -6523,15 +6656,23 @@ "node": ">=0.10.0" } }, + "node_modules/object-inspect": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", + "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" }, "node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dependencies": { "ee-first": "1.1.1" }, @@ -6866,11 +7007,11 @@ } }, "node_modules/pacote/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dependencies": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" }, "bin": { "mkdirp": "bin/cmd.js" @@ -7201,10 +7342,20 @@ } }, "node_modules/postcss": { - "version": "8.4.8", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.8.tgz", - "integrity": "sha512-2tXEqGxrjvAO6U+CJzDL2Fk2kPHTv1jQsYkSoMeOis2SsYaXRO2COxTdQp99cYvif9JTXaAk9lYGc3VhJt7JPQ==", + "version": "8.4.12", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz", + "integrity": "sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], "dependencies": { "nanoid": "^3.3.1", "picocolors": "^1.0.0", @@ -7212,10 +7363,6 @@ }, "engines": { "node": "^10 || ^12 || >=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" } }, "node_modules/prelude-ls": { @@ -7382,9 +7529,12 @@ } }, "node_modules/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", + "version": "6.10.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", + "dependencies": { + "side-channel": "^1.0.4" + }, "engines": { "node": ">=0.6" }, @@ -7446,12 +7596,12 @@ } }, "node_modules/raw-body": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", - "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", "dependencies": { "bytes": "3.1.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, @@ -7924,9 +8074,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sass": { - "version": "1.49.9", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.9.tgz", - "integrity": "sha512-YlYWkkHP9fbwaFRZQRXgDi3mXZShslVmmo+FVK3kHLUELHHEYrCmL1x6IUjC7wLS6VuJSAFXRQS/DxdsC4xL1A==", + "version": "1.49.11", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.11.tgz", + "integrity": "sha512-wvS/geXgHUGs6A/4ud5BFIWKO1nKd7wYIGimDk4q4GFkJicILActpv9ueMT4eRGSsp1BdKHuw1WwAHXbhsJELQ==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8055,6 +8205,45 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "node_modules/send/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/send/node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "node_modules/send/node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/send/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/serialize-error": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", @@ -8132,6 +8321,19 @@ "node": ">=8" } }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/sigmund": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", @@ -8872,11 +9074,11 @@ } }, "node_modules/tar/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dependencies": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" }, "bin": { "mkdirp": "bin/cmd.js" @@ -8941,9 +9143,9 @@ } }, "node_modules/terser": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz", - "integrity": "sha512-R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A==", + "version": "5.12.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz", + "integrity": "sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==", "dependencies": { "acorn": "^8.5.0", "commander": "^2.20.0", @@ -9646,24 +9848,24 @@ } }, "@babel/compat-data": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.0.tgz", - "integrity": "sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", + "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", "dev": true }, "@babel/core": { - "version": "7.17.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz", - "integrity": "sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.8.tgz", + "integrity": "sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==", "dev": true, "requires": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.3", - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-module-transforms": "^7.16.7", - "@babel/helpers": "^7.17.2", - "@babel/parser": "^7.17.3", + "@babel/generator": "^7.17.7", + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helpers": "^7.17.8", + "@babel/parser": "^7.17.8", "@babel/template": "^7.16.7", "@babel/traverse": "^7.17.3", "@babel/types": "^7.17.0", @@ -9675,9 +9877,9 @@ }, "dependencies": { "@babel/parser": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", - "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", + "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", "dev": true }, "semver": { @@ -9689,9 +9891,9 @@ } }, "@babel/generator": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz", - "integrity": "sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", + "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", "dev": true, "requires": { "@babel/types": "^7.17.0", @@ -9700,12 +9902,12 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz", - "integrity": "sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", + "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", "dev": true, "requires": { - "@babel/compat-data": "^7.16.4", + "@babel/compat-data": "^7.17.7", "@babel/helper-validator-option": "^7.16.7", "browserslist": "^4.17.5", "semver": "^6.3.0" @@ -9767,14 +9969,14 @@ } }, "@babel/helper-module-transforms": { - "version": "7.17.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz", - "integrity": "sha512-2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", + "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", "dev": true, "requires": { "@babel/helper-environment-visitor": "^7.16.7", "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", "@babel/helper-split-export-declaration": "^7.16.7", "@babel/helper-validator-identifier": "^7.16.7", "@babel/template": "^7.16.7", @@ -9783,12 +9985,12 @@ } }, "@babel/helper-simple-access": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz", - "integrity": "sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", + "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", "dev": true, "requires": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.17.0" } }, "@babel/helper-split-export-declaration": { @@ -9812,13 +10014,13 @@ "dev": true }, "@babel/helpers": { - "version": "7.17.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.2.tgz", - "integrity": "sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.8.tgz", + "integrity": "sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==", "dev": true, "requires": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.0", + "@babel/traverse": "^7.17.3", "@babel/types": "^7.17.0" } }, @@ -9887,9 +10089,9 @@ }, "dependencies": { "@babel/parser": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", - "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", + "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", "dev": true } } @@ -9913,9 +10115,9 @@ }, "dependencies": { "@babel/parser": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", - "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", + "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", "dev": true } } @@ -9959,16 +10161,16 @@ } }, "@eslint/eslintrc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.0.tgz", - "integrity": "sha512-igm9SjJHNEJRiUnecP/1R5T3wKLEJ7pL6e2P+GUSfCd0dGjPYYZve08uzw8L2J8foVHFz+NGu12JxRcU2gGo6w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", + "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.3.1", "globals": "^13.9.0", - "ignore": "^4.0.6", + "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", "minimatch": "^3.0.4", @@ -9976,20 +10178,14 @@ }, "dependencies": { "globals": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", - "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", "dev": true, "requires": { "type-fest": "^0.20.2" } }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -10702,20 +10898,22 @@ "dev": true }, "body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", + "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", "requires": { "bytes": "3.1.2", "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" + "on-finished": "2.4.1", + "qs": "6.10.3", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "dependencies": { "debug": { @@ -10780,13 +10978,13 @@ } }, "browserslist": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.0.tgz", - "integrity": "sha512-bnpOoa+DownbciXj0jVGENf8VYQnE2LNWomhYuCsMmmx9Jd9lwq0WXODuwpSsp8AVdKM2/HorrzxAfbKvWTByQ==", + "version": "4.20.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz", + "integrity": "sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001313", - "electron-to-chromium": "^1.4.76", + "caniuse-lite": "^1.0.30001317", + "electron-to-chromium": "^1.4.84", "escalade": "^3.1.1", "node-releases": "^2.0.2", "picocolors": "^1.0.0" @@ -10853,11 +11051,11 @@ } }, "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "requires": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" } }, "rimraf": { @@ -10925,6 +11123,15 @@ "write-file-atomic": "^3.0.0" } }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -10957,9 +11164,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001314", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001314.tgz", - "integrity": "sha512-0zaSO+TnCHtHJIbpLroX7nsD+vYuOVjl3uzFbJO1wMVbuveJA0RK2WcQA9ZUIOiO0/ArMiMgHJLxfEZhQiC0kw==", + "version": "1.0.30001325", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001325.tgz", + "integrity": "sha512-sB1bZHjseSjDtijV1Hb7PB2Zd58Kyx+n/9EotvZ4Qcz2K3d0lWB8dB4nb8wN/TsOGFq3UuAm0zQZNQ4SoR7TrQ==", "dev": true }, "catharsis": { @@ -11017,15 +11224,15 @@ } }, "cheerio-select": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.5.0.tgz", - "integrity": "sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.6.0.tgz", + "integrity": "sha512-eq0GdBvxVFbqWgmCm7M3XGs1I8oLy/nExUnh6oLqmBditPO9AqQJrkslDpMun/hZ0yyTs8L0m85OHp4ho6Qm9g==", "requires": { - "css-select": "^4.1.3", - "css-what": "^5.0.1", + "css-select": "^4.3.0", + "css-what": "^6.0.1", "domelementtype": "^2.2.0", - "domhandler": "^4.2.0", - "domutils": "^2.7.0" + "domhandler": "^4.3.1", + "domutils": "^2.8.0" } }, "chokidar": { @@ -11057,9 +11264,9 @@ }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true }, "ansi-styles": { @@ -11518,11 +11725,11 @@ "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "requires": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" } }, "rimraf": { @@ -11606,21 +11813,21 @@ } }, "css-select": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.2.1.tgz", - "integrity": "sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", "requires": { "boolbase": "^1.0.0", - "css-what": "^5.1.0", - "domhandler": "^4.3.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", "domutils": "^2.8.0", "nth-check": "^2.0.1" } }, "css-what": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", - "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==" + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" }, "currently-unhandled": { "version": "0.4.1", @@ -11655,9 +11862,9 @@ } }, "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "requires": { "ms": "2.1.2" }, @@ -11825,9 +12032,9 @@ } }, "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" }, "deps-regex": { "version": "0.1.4", @@ -11836,9 +12043,9 @@ "dev": true }, "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" }, "detect-node": { "version": "2.1.0", @@ -11858,11 +12065,11 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "requires": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" } }, "rimraf": { @@ -11920,9 +12127,9 @@ "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==" }, "domhandler": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz", - "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", "requires": { "domelementtype": "^2.2.0" } @@ -12054,9 +12261,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.4.78", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.78.tgz", - "integrity": "sha512-o61+D/Lx7j/E0LIin/efOqeHpXhwi1TaQco9vUcRmr91m25SfZY6L5hWJDv/r+6kNjboFKgBw1LbfM0lbhuK6Q==", + "version": "1.4.103", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.103.tgz", + "integrity": "sha512-c/uKWR1Z/W30Wy/sx3dkZoj4BijbXX85QKWu9jJfjho3LBAXNEGAEW3oWiGb+dotA6C6BzCTxL2/aLes7jlUeg==", "dev": true }, "emittery": { @@ -12126,9 +12333,9 @@ } }, "es5-ext": { - "version": "0.10.57", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.57.tgz", - "integrity": "sha512-L7cCNoPwTkAp7IBHxrKLsh7NKiVFkcdxlP9vbVw9QUvb7gF0Mz9bEBN0WY9xqdTjGF907EMT/iG013vnbqwu1Q==", + "version": "0.10.59", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.59.tgz", + "integrity": "sha512-cOgyhW0tIJyQY1Kfw6Kr0viu9ZlUctVchRMZ7R0HiH3dxTSp5zJDLecwxUqPUrGKMsgBI1wd1FL+d9Jxfi4cLw==", "requires": { "es6-iterator": "^2.0.3", "es6-symbol": "^3.1.3", @@ -12259,12 +12466,12 @@ } }, "eslint": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.10.0.tgz", - "integrity": "sha512-tcI1D9lfVec+R4LE1mNDnzoJ/f71Kl/9Cv4nG47jOueCMBrCCKYXr4AUVS7go6mWYGFD4+EoN6+eXSrEbRzXVw==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.12.0.tgz", + "integrity": "sha512-it1oBL9alZg1S8UycLm5YDMAkIhtH6FtAzuZs6YvoGVldWjbS08BkAdb/ymP9LlAyq8koANu32U7Ib/w+UNh8Q==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.2.0", + "@eslint/eslintrc": "^1.2.1", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -12311,9 +12518,9 @@ } }, "globals": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", - "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -12517,6 +12724,23 @@ "vary": "~1.1.2" }, "dependencies": { + "body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.9.7", + "raw-body": "2.4.3", + "type-is": "~1.6.18" + } + }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -12525,11 +12749,52 @@ "ms": "2.0.0" } }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + } + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==" + }, + "raw-body": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", + "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "requires": { + "bytes": "3.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -12676,6 +12941,14 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } } } }, @@ -12910,6 +13183,16 @@ "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, "get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", @@ -13057,6 +13340,11 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -13146,15 +13434,22 @@ "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" }, "http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "requires": { - "depd": "~1.1.2", + "depd": "2.0.0", "inherits": "2.0.4", "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", + "statuses": "2.0.1", "toidentifier": "1.0.1" + }, + "dependencies": { + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" + } } }, "http-proxy": { @@ -13631,9 +13926,9 @@ } }, "js-beautify": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.0.tgz", - "integrity": "sha512-yuck9KirNSCAwyNJbqW+BxJqJ0NLJ4PwBUzQQACl5O3qHMBXVkXb/rD0ilh/Lat/tn88zSZ+CAHOlk0DsY7GuQ==", + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.2.tgz", + "integrity": "sha512-H85kX95a53os+q1OCqtYe8AXAmgy3BvtysA/V83S3fdhznm6WlUpGi14DqSPbKFsL3dXZFXYl7YQwW9U1+76ng==", "dev": true, "requires": { "config-chain": "^1.1.12", @@ -13699,9 +13994,9 @@ } }, "jsdoc-type-pratt-parser": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.3.tgz", - "integrity": "sha512-QPyxq62Q8veBSDtDrWmqaEPjSCeknUV9dH/OAGt3q9an8qC8UQDqitQiw1NvoMskIESpoRZ6qzt4H3rlK0xo8A==", + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.5.tgz", + "integrity": "sha512-2a6eRxSxp1BW040hFvaJxhsCMI9lT8QB8t14t+NY5tC5rckIR0U9cr2tjOeaFirmEOy6MHvmJnY7zTBHq431Lw==", "dev": true }, "jsesc": { @@ -13738,13 +14033,10 @@ "dev": true }, "json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true }, "jsonparse": { "version": "1.3.1", @@ -14150,12 +14442,12 @@ "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" }, "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" + "braces": "^3.0.2", + "picomatch": "^2.3.1" } }, "mime": { @@ -14169,18 +14461,11 @@ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" }, "mime-types": { - "version": "2.1.34", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz", - "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "requires": { - "mime-db": "1.51.0" - }, - "dependencies": { - "mime-db": { - "version": "1.51.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", - "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==" - } + "mime-db": "1.52.0" } }, "mimic-fn": { @@ -14215,9 +14500,9 @@ } }, "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" }, "minimist-options": { "version": "4.1.0", @@ -14324,11 +14609,11 @@ "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "requires": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" } }, "rimraf": { @@ -14360,9 +14645,9 @@ } }, "nanoid": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz", - "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.2.tgz", + "integrity": "sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA==", "dev": true }, "natural-compare": { @@ -14748,15 +15033,20 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, + "object-inspect": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", + "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==" + }, "obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" }, "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "requires": { "ee-first": "1.1.1" } @@ -15008,11 +15298,11 @@ } }, "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "requires": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" } }, "rimraf": { @@ -15268,9 +15558,9 @@ } }, "postcss": { - "version": "8.4.8", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.8.tgz", - "integrity": "sha512-2tXEqGxrjvAO6U+CJzDL2Fk2kPHTv1jQsYkSoMeOis2SsYaXRO2COxTdQp99cYvif9JTXaAk9lYGc3VhJt7JPQ==", + "version": "8.4.12", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz", + "integrity": "sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==", "dev": true, "requires": { "nanoid": "^3.3.1", @@ -15411,9 +15701,12 @@ } }, "qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==" + "version": "6.10.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", + "requires": { + "side-channel": "^1.0.4" + } }, "query-ast": { "version": "1.0.4", @@ -15446,12 +15739,12 @@ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, "raw-body": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", - "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", "requires": { "bytes": "3.1.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" } @@ -15824,9 +16117,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.49.9", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.9.tgz", - "integrity": "sha512-YlYWkkHP9fbwaFRZQRXgDi3mXZShslVmmo+FVK3kHLUELHHEYrCmL1x6IUjC7wLS6VuJSAFXRQS/DxdsC4xL1A==", + "version": "1.49.11", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.11.tgz", + "integrity": "sha512-wvS/geXgHUGs6A/4ud5BFIWKO1nKd7wYIGimDk4q4GFkJicILActpv9ueMT4eRGSsp1BdKHuw1WwAHXbhsJELQ==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -15933,6 +16226,36 @@ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + } + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } } } }, @@ -15994,6 +16317,16 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, "sigmund": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", @@ -16591,11 +16924,11 @@ }, "dependencies": { "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "requires": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" } }, "safe-buffer": { @@ -16638,9 +16971,9 @@ } }, "terser": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz", - "integrity": "sha512-R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A==", + "version": "5.12.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz", + "integrity": "sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==", "requires": { "acorn": "^8.5.0", "commander": "^2.20.0", From 7865f16a155a8a5906acb2166899df3e217f3e96 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 5 Apr 2022 12:35:28 +0000 Subject: [PATCH 0613/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.3 to 3.0.0-alpha.4 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.4/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0e20f810511..6b95ab36dbd 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-alpha.1", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.3", + "@ui5/builder": "^3.0.0-alpha.4", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", @@ -838,9 +838,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.3.tgz", - "integrity": "sha512-WwbLjWNaepIGYWPeacHqlncaoJE5comH+qUcM7hHRsITQfS8QoULzmr63QJCMx3lErqTS+oZZHQudiqH//3m8g==", + "version": "3.0.0-alpha.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.4.tgz", + "integrity": "sha512-M4dlyRdIFjEGgAGdLQ9QdW9qYffmGabz/VdkQC7DGYlbqDjI7lSfJUPpXDf6+SN7Y0EWol5T6sxusiHyzoQyuQ==", "dependencies": { "@ui5/fs": "^3.0.0-alpha.2", "@ui5/logger": "^3.0.1-alpha.1", @@ -10441,9 +10441,9 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.3.tgz", - "integrity": "sha512-WwbLjWNaepIGYWPeacHqlncaoJE5comH+qUcM7hHRsITQfS8QoULzmr63QJCMx3lErqTS+oZZHQudiqH//3m8g==", + "version": "3.0.0-alpha.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.4.tgz", + "integrity": "sha512-M4dlyRdIFjEGgAGdLQ9QdW9qYffmGabz/VdkQC7DGYlbqDjI7lSfJUPpXDf6+SN7Y0EWol5T6sxusiHyzoQyuQ==", "requires": { "@ui5/fs": "^3.0.0-alpha.2", "@ui5/logger": "^3.0.1-alpha.1", diff --git a/packages/project/package.json b/packages/project/package.json index 5050b862069..6f83abbaa8e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.3", + "@ui5/builder": "^3.0.0-alpha.4", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", From fa1d66202666343b39d33089c7a3b8f5ccfa6b9e Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 14 Apr 2022 10:09:40 +0000 Subject: [PATCH 0614/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.4 to 3.0.0-alpha.5 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.5/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6b95ab36dbd..52ae32e36fa 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-alpha.1", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.4", + "@ui5/builder": "^3.0.0-alpha.5", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", @@ -838,9 +838,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.4.tgz", - "integrity": "sha512-M4dlyRdIFjEGgAGdLQ9QdW9qYffmGabz/VdkQC7DGYlbqDjI7lSfJUPpXDf6+SN7Y0EWol5T6sxusiHyzoQyuQ==", + "version": "3.0.0-alpha.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.5.tgz", + "integrity": "sha512-ADO0Grp8sewrlVA4hWNdlJPGOc1xycod0nd7q7VxtlwztJgVNdp0ZL2egK2tPbBnO+nV49cwH7vDLgxceEzv/A==", "dependencies": { "@ui5/fs": "^3.0.0-alpha.2", "@ui5/logger": "^3.0.1-alpha.1", @@ -10441,9 +10441,9 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.4.tgz", - "integrity": "sha512-M4dlyRdIFjEGgAGdLQ9QdW9qYffmGabz/VdkQC7DGYlbqDjI7lSfJUPpXDf6+SN7Y0EWol5T6sxusiHyzoQyuQ==", + "version": "3.0.0-alpha.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.5.tgz", + "integrity": "sha512-ADO0Grp8sewrlVA4hWNdlJPGOc1xycod0nd7q7VxtlwztJgVNdp0ZL2egK2tPbBnO+nV49cwH7vDLgxceEzv/A==", "requires": { "@ui5/fs": "^3.0.0-alpha.2", "@ui5/logger": "^3.0.1-alpha.1", diff --git a/packages/project/package.json b/packages/project/package.json index 6f83abbaa8e..88135c5d8b0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.4", + "@ui5/builder": "^3.0.0-alpha.5", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", From b746f700fd8b25473836c4fcc812facb6da77b56 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 14 Apr 2022 10:23:33 +0200 Subject: [PATCH 0615/1272] [ui5-project][INTERNAL] static translator: Add "tree" option, fix path resolution - Allow passing a tree object instead of reading a YAML file - Path resolution should be based on the passed directory, not based on the process cwd JIRA: CPOUI5FOUNDATION-403 --- packages/project/lib/translators/static.js | 40 ++++++++++-------- .../project/test/lib/translators/static.js | 42 +++++++++++++++++-- 2 files changed, 61 insertions(+), 21 deletions(-) diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js index 4db8a20558d..826ce1867f6 100644 --- a/packages/project/lib/translators/static.js +++ b/packages/project/lib/translators/static.js @@ -4,10 +4,10 @@ const {promisify} = require("util"); const readFile = promisify(fs.readFile); const parseYaml = require("js-yaml").load; -function resolveProjectPaths(project) { - project.path = path.resolve(project.path); +function resolveProjectPaths(cwd, project) { + project.path = path.resolve(cwd, project.path); if (project.dependencies) { - project.dependencies.forEach(resolveProjectPaths); + project.dependencies.forEach((project) => resolveProjectPaths(cwd, project)); } return project; } @@ -29,24 +29,28 @@ module.exports = { * @param {string} dirPath Project path * @param {object} [options] * @param {Array} [options.parameters] CLI configuration options + * @param {object} [options.tree] Tree object to be used instead of reading a YAML * @returns {Promise} Promise resolving with a dependency tree */ async generateDependencyTree(dirPath, options = {}) { - const depFilePath = options.parameters && options.parameters[0] || - path.join(dirPath, "projectDependencies.yaml"); - try { - const buffer = await readFile(depFilePath); - const tree = parseYaml(buffer.toString(), { - filename: depFilePath - }); - - // Ensure that all project paths are absolute - resolveProjectPaths(tree); - return tree; - } catch (err) { - throw new Error( - `[static translator] Failed to load dependency tree from path ${depFilePath} `+ - `- Error: ${err.message}`); + let tree = options.tree; + if (!tree) { + const depFilePath = options.parameters && options.parameters[0] || + path.join(dirPath, "projectDependencies.yaml"); + try { + const contents = await readFile(depFilePath, {encoding: "utf-8"}); + tree = parseYaml(contents, { + filename: depFilePath + }); + } catch (err) { + throw new Error( + `[static translator] Failed to load dependency tree from path ${depFilePath} `+ + `- Error: ${err.message}`); + } } + + // Ensure that all project paths are absolute + resolveProjectPaths(dirPath, tree); + return tree; } }; diff --git a/packages/project/test/lib/translators/static.js b/packages/project/test/lib/translators/static.js index f9ecf2c3eea..7c83a72309f 100644 --- a/packages/project/test/lib/translators/static.js +++ b/packages/project/test/lib/translators/static.js @@ -13,6 +13,42 @@ test("Generates dependency tree for project with projectDependencies.yaml", (t) }); }); +test("Generates dependency tree for project with projectDependencies.yaml (via parameters)", (t) => { + return staticTranslator.generateDependencyTree(projectPath, { + parameters: [path.join(projectPath, "projectDependencies.yaml")] + }) + .then((parsedTree) => { + t.deepEqual(parsedTree, expectedTree, "Parsed correctly"); + }); +}); + +test("Generates dependency tree for project by passing tree object", (t) => { + return staticTranslator.generateDependencyTree(projectPath, { + tree: { + id: "testsuite", + version: "0.0.1", + description: "Sample App", + main: "index.html", + path: "./", + dependencies: [ + { + id: "sap.f", + version: "1.56.1", + path: "../sap.f" + }, + { + id: "sap.m", + version: "1.61.0", + path: "../sap.m" + } + ] + } + }) + .then((parsedTree) => { + t.deepEqual(parsedTree, expectedTree, "Parsed correctly"); + }); +}); + test("Error: Throws if projectDependencies.yaml was not found", async (t) => { const projectPath = "notExistingPath"; const fsError = new Error("File not found"); @@ -31,17 +67,17 @@ const expectedTree = { version: "0.0.1", description: "Sample App", main: "index.html", - path: path.resolve("./"), + path: path.resolve(projectPath, "./"), dependencies: [ { id: "sap.f", version: "1.56.1", - path: path.resolve("../sap.f") + path: path.resolve(projectPath, "../sap.f") }, { id: "sap.m", version: "1.61.0", - path: path.resolve("../sap.m") + path: path.resolve(projectPath, "../sap.m") } ] }; From 5785406de122e8f46b46053bdc4f99753ce64af5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 21 Apr 2022 15:34:47 +0000 Subject: [PATCH 0616/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 499 ++++++++++++++--------------- 1 file changed, 238 insertions(+), 261 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 52ae32e36fa..d4e1ff109c1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -89,25 +89,25 @@ } }, "node_modules/@babel/core": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.8.tgz", - "integrity": "sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.9.tgz", + "integrity": "sha512-5ug+SfZCpDAkVp9SFIZAzlW18rlzsOcJGaetCjkySnrXXDUw9AR8cDUm1iByTmdWM6yxX6/zycaV76w3YTF2gw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.7", + "@babel/generator": "^7.17.9", "@babel/helper-compilation-targets": "^7.17.7", "@babel/helper-module-transforms": "^7.17.7", - "@babel/helpers": "^7.17.8", - "@babel/parser": "^7.17.8", + "@babel/helpers": "^7.17.9", + "@babel/parser": "^7.17.9", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", + "@babel/traverse": "^7.17.9", "@babel/types": "^7.17.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.1.2", + "json5": "^2.2.1", "semver": "^6.3.0" }, "engines": { @@ -119,9 +119,9 @@ } }, "node_modules/@babel/core/node_modules/@babel/parser": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", - "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", + "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -140,9 +140,9 @@ } }, "node_modules/@babel/generator": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", - "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", + "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", "dev": true, "dependencies": { "@babel/types": "^7.17.0", @@ -193,26 +193,13 @@ } }, "node_modules/@babel/helper-function-name": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", - "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", + "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", "dev": true, "dependencies": { - "@babel/helper-get-function-arity": "^7.16.7", "@babel/template": "^7.16.7", - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-get-function-arity": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", - "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.17.0" }, "engines": { "node": ">=6.9.0" @@ -303,13 +290,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.8.tgz", - "integrity": "sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz", + "integrity": "sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q==", "dev": true, "dependencies": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", + "@babel/traverse": "^7.17.9", "@babel/types": "^7.17.0" }, "engines": { @@ -317,9 +304,9 @@ } }, "node_modules/@babel/highlight": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz", - "integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", + "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", "dependencies": { "@babel/helper-validator-identifier": "^7.16.7", "chalk": "^2.0.0", @@ -406,9 +393,9 @@ } }, "node_modules/@babel/template/node_modules/@babel/parser": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", - "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", + "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -418,18 +405,18 @@ } }, "node_modules/@babel/traverse": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", - "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", + "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.3", + "@babel/generator": "^7.17.9", "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.16.7", + "@babel/helper-function-name": "^7.17.9", "@babel/helper-hoist-variables": "^7.16.7", "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.3", + "@babel/parser": "^7.17.9", "@babel/types": "^7.17.0", "debug": "^4.1.0", "globals": "^11.1.0" @@ -439,9 +426,9 @@ } }, "node_modules/@babel/traverse/node_modules/@babel/parser": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", - "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", + "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -692,9 +679,9 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz", - "integrity": "sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==", + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", @@ -934,13 +921,13 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.31.tgz", - "integrity": "sha512-aKno00qoA4o+V/kR6i/pE+aP+esng5siNAVQ422TkBNM6qA4veXiZbSe8OTXHXquEi/f6Akc+nLfB4JGfe4/WQ==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.33.tgz", + "integrity": "sha512-AAmr52ji3Zhk7IKIuigX2osWWsb2nQE5xsdFYjdnmtQ4gymmqXbjLvkSE174+fF3A3kstYrTgGkqgOEbsdLDpw==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.31", + "@vue/shared": "3.2.33", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } @@ -955,27 +942,27 @@ } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.31.tgz", - "integrity": "sha512-60zIlFfzIDf3u91cqfqy9KhCKIJgPeqxgveH2L+87RcGU/alT6BRrk5JtUso0OibH3O7NXuNOQ0cDc9beT0wrg==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.33.tgz", + "integrity": "sha512-GhiG1C8X98Xz9QUX/RlA6/kgPBWJkjq0Rq6//5XTAGSYrTMBgcLpP9+CnlUg1TFxnnCVughAG+KZl28XJqw8uQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.2.31", - "@vue/shared": "3.2.31" + "@vue/compiler-core": "3.2.33", + "@vue/shared": "3.2.33" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.31.tgz", - "integrity": "sha512-748adc9msSPGzXgibHiO6T7RWgfnDcVQD+VVwYgSsyyY8Ans64tALHZANrKtOzvkwznV/F4H7OAod/jIlp/dkQ==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.33.tgz", + "integrity": "sha512-H8D0WqagCr295pQjUYyO8P3IejM3vEzeCO1apzByAEaAR/WimhMYczHfZVvlCE/9yBaEu/eu9RdiWr0kF8b71Q==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.31", - "@vue/compiler-dom": "3.2.31", - "@vue/compiler-ssr": "3.2.31", - "@vue/reactivity-transform": "3.2.31", - "@vue/shared": "3.2.31", + "@vue/compiler-core": "3.2.33", + "@vue/compiler-dom": "3.2.33", + "@vue/compiler-ssr": "3.2.33", + "@vue/reactivity-transform": "3.2.33", + "@vue/shared": "3.2.33", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -992,32 +979,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.31.tgz", - "integrity": "sha512-mjN0rqig+A8TVDnsGPYJM5dpbjlXeHUm2oZHZwGyMYiGT/F4fhJf/cXy8QpjnLQK4Y9Et4GWzHn9PS8AHUnSkw==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.33.tgz", + "integrity": "sha512-XQh1Xdk3VquDpXsnoCd7JnMoWec9CfAzQDQsaMcSU79OrrO2PNR0ErlIjm/mGq3GmBfkQjzZACV+7GhfRB8xMQ==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.2.31", - "@vue/shared": "3.2.31" + "@vue/compiler-dom": "3.2.33", + "@vue/shared": "3.2.33" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.31.tgz", - "integrity": "sha512-uS4l4z/W7wXdI+Va5pgVxBJ345wyGFKvpPYtdSgvfJfX/x2Ymm6ophQlXXB6acqGHtXuBqNyyO3zVp9b1r0MOA==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.33.tgz", + "integrity": "sha512-4UL5KOIvSQb254aqenW4q34qMXbfZcmEsV/yVidLUgvwYQQ/D21bGX3DlgPUGI3c4C+iOnNmDCkIxkILoX/Pyw==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.31", - "@vue/shared": "3.2.31", + "@vue/compiler-core": "3.2.33", + "@vue/shared": "3.2.33", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "node_modules/@vue/shared": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.31.tgz", - "integrity": "sha512-ymN2pj6zEjiKJZbrf98UM2pfDd6F2H7ksKw7NDt/ZZ1fh5Ei39X5tABugtT03ZRlWd9imccoK0hE8hpjpU7irQ==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.33.tgz", + "integrity": "sha512-UBc1Pg1T3yZ97vsA2ueER0F6GbJebLHYlEi4ou1H5YL4KWvMOOWwpYo9/QpWq93wxKG6Wo13IY74Hcn/f7c7Bg==", "dev": true }, "node_modules/abbrev": { @@ -1760,9 +1747,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001325", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001325.tgz", - "integrity": "sha512-sB1bZHjseSjDtijV1Hb7PB2Zd58Kyx+n/9EotvZ4Qcz2K3d0lWB8dB4nb8wN/TsOGFq3UuAm0zQZNQ4SoR7TrQ==", + "version": "1.0.30001332", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001332.tgz", + "integrity": "sha512-10T30NYOEQtN6C11YGg411yebhvpnC6Z102+B95eAsN0oB6KUs01ivE8u+G6FMIRtIrVlYXhL+LUwQ3/hXwDWw==", "dev": true, "funding": [ { @@ -2963,9 +2950,9 @@ } }, "node_modules/dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", "dependencies": { "domelementtype": "^2.0.1", "domhandler": "^4.2.0", @@ -2976,9 +2963,9 @@ } }, "node_modules/domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", "funding": [ { "type": "github", @@ -3133,9 +3120,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "node_modules/electron-to-chromium": { - "version": "1.4.103", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.103.tgz", - "integrity": "sha512-c/uKWR1Z/W30Wy/sx3dkZoj4BijbXX85QKWu9jJfjho3LBAXNEGAEW3oWiGb+dotA6C6BzCTxL2/aLes7jlUeg==", + "version": "1.4.117", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.117.tgz", + "integrity": "sha512-ypZHxY+Sf/PXu7LVN+xoeanyisnJeSOy8Ki439L/oLueZb4c72FI45zXcK3gPpmTwyufh9m6NnbMLXnJh/0Fxg==", "dev": true }, "node_modules/emittery": { @@ -3221,9 +3208,9 @@ } }, "node_modules/es5-ext": { - "version": "0.10.59", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.59.tgz", - "integrity": "sha512-cOgyhW0tIJyQY1Kfw6Kr0viu9ZlUctVchRMZ7R0HiH3dxTSp5zJDLecwxUqPUrGKMsgBI1wd1FL+d9Jxfi4cLw==", + "version": "0.10.61", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.61.tgz", + "integrity": "sha512-yFhIqQAzu2Ca2I4SE2Au3rxVfmohU9Y7wqGR+s7+H7krk26NXhIRAZDgqd6xqjCEFUomDEA3/Bo/7fKmIkW1kA==", "hasInstallScript": true, "dependencies": { "es6-iterator": "^2.0.3", @@ -3374,9 +3361,9 @@ } }, "node_modules/eslint": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.12.0.tgz", - "integrity": "sha512-it1oBL9alZg1S8UycLm5YDMAkIhtH6FtAzuZs6YvoGVldWjbS08BkAdb/ymP9LlAyq8koANu32U7Ib/w+UNh8Q==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.13.0.tgz", + "integrity": "sha512-D+Xei61eInqauAyTJ6C0q6x9mx7kTUC1KZ0m0LSEexR0V+e94K12LmWX076ZIsldwfQ2RONdaJe0re0TRGQbRQ==", "dev": true, "dependencies": { "@eslint/eslintrc": "^1.2.1", @@ -4439,9 +4426,9 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "node_modules/handle-thing": { "version": "2.0.1", @@ -4912,9 +4899,9 @@ } }, "node_modules/is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", "dependencies": { "has": "^1.0.3" }, @@ -5267,12 +5254,12 @@ } }, "node_modules/js-beautify": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.2.tgz", - "integrity": "sha512-H85kX95a53os+q1OCqtYe8AXAmgy3BvtysA/V83S3fdhznm6WlUpGi14DqSPbKFsL3dXZFXYl7YQwW9U1+76ng==", + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.3.tgz", + "integrity": "sha512-f1ra8PHtOEu/70EBnmiUlV8nJePS58y9qKjl4JHfYWlFH6bo7ogZBz//FAZp7jDuXtYnGYKymZPlrg2I/9Zo4g==", "dev": true, "dependencies": { - "config-chain": "^1.1.12", + "config-chain": "^1.1.13", "editorconfig": "^0.15.3", "glob": "^7.1.3", "nopt": "^5.0.0" @@ -5788,9 +5775,9 @@ } }, "node_modules/markdown-it-anchor": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.4.1.tgz", - "integrity": "sha512-sLODeRetZ/61KkKLJElaU3NuU2z7MhXf12Ml1WJMSdwpngeofneCRF+JBbat8HiSqhniOMuTemXMrsI7hA6XyA==", + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.2.tgz", + "integrity": "sha512-JNaekTlIwwyYGBN3zifZDxgz4bSL8sbEj58fdTZGmPSMMGXBZapFjcZk2I33Jy79c1fvCKHpF7MA/67FOTjvzA==", "peerDependencies": { "@types/markdown-it": "*", "markdown-it": "*" @@ -5805,9 +5792,9 @@ } }, "node_modules/marked": { - "version": "4.0.12", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.12.tgz", - "integrity": "sha512-hgibXWrEDNBWgGiK18j/4lkS6ihTe9sxtV4Q1OQppb/0zzyPSzoFANBa5MfsG/zgsWklmNnhm0XACZOH/0HBiQ==", + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.14.tgz", + "integrity": "sha512-HL5sSPE/LP6U9qKgngIIPTthuxC0jrfxpYMZ3LdGDD3vTnLs59m2Z7r6+LNDR3ToqEQdkKd6YaaEfJhodJmijQ==", "bin": { "marked": "bin/marked.js" }, @@ -6182,9 +6169,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.2.tgz", - "integrity": "sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", + "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", "dev": true, "bin": { "nanoid": "bin/nanoid.cjs" @@ -6266,9 +6253,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz", - "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz", + "integrity": "sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==", "dev": true }, "node_modules/nopt": { @@ -7334,9 +7321,9 @@ } }, "node_modules/portscanner/node_modules/async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dependencies": { "lodash": "^4.17.14" } @@ -8074,9 +8061,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sass": { - "version": "1.49.11", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.11.tgz", - "integrity": "sha512-wvS/geXgHUGs6A/4ud5BFIWKO1nKd7wYIGimDk4q4GFkJicILActpv9ueMT4eRGSsp1BdKHuw1WwAHXbhsJELQ==", + "version": "1.50.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.50.1.tgz", + "integrity": "sha512-noTnY41KnlW2A9P8sdwESpDmo+KBNkukI1i8+hOK3footBUcohNHtdOJbckp46XO95nuvcHDDZ+4tmOnpK3hjw==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8113,9 +8100,9 @@ "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" }, "node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -9854,32 +9841,32 @@ "dev": true }, "@babel/core": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.8.tgz", - "integrity": "sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.9.tgz", + "integrity": "sha512-5ug+SfZCpDAkVp9SFIZAzlW18rlzsOcJGaetCjkySnrXXDUw9AR8cDUm1iByTmdWM6yxX6/zycaV76w3YTF2gw==", "dev": true, "requires": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.7", + "@babel/generator": "^7.17.9", "@babel/helper-compilation-targets": "^7.17.7", "@babel/helper-module-transforms": "^7.17.7", - "@babel/helpers": "^7.17.8", - "@babel/parser": "^7.17.8", + "@babel/helpers": "^7.17.9", + "@babel/parser": "^7.17.9", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", + "@babel/traverse": "^7.17.9", "@babel/types": "^7.17.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.1.2", + "json5": "^2.2.1", "semver": "^6.3.0" }, "dependencies": { "@babel/parser": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", - "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", + "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", "dev": true }, "semver": { @@ -9891,9 +9878,9 @@ } }, "@babel/generator": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", - "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", + "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", "dev": true, "requires": { "@babel/types": "^7.17.0", @@ -9931,23 +9918,13 @@ } }, "@babel/helper-function-name": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", - "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", + "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.16.7", "@babel/template": "^7.16.7", - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", - "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.17.0" } }, "@babel/helper-hoist-variables": { @@ -10014,20 +9991,20 @@ "dev": true }, "@babel/helpers": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.8.tgz", - "integrity": "sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz", + "integrity": "sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q==", "dev": true, "requires": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", + "@babel/traverse": "^7.17.9", "@babel/types": "^7.17.0" } }, "@babel/highlight": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz", - "integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", + "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", "requires": { "@babel/helper-validator-identifier": "^7.16.7", "chalk": "^2.0.0", @@ -10089,35 +10066,35 @@ }, "dependencies": { "@babel/parser": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", - "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", + "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", "dev": true } } }, "@babel/traverse": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", - "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", + "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", "dev": true, "requires": { "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.3", + "@babel/generator": "^7.17.9", "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.16.7", + "@babel/helper-function-name": "^7.17.9", "@babel/helper-hoist-variables": "^7.16.7", "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.3", + "@babel/parser": "^7.17.9", "@babel/types": "^7.17.0", "debug": "^4.1.0", "globals": "^11.1.0" }, "dependencies": { "@babel/parser": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", - "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", + "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", "dev": true } } @@ -10310,9 +10287,9 @@ "dev": true }, "@jridgewell/trace-mapping": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz", - "integrity": "sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==", + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", "dev": true, "requires": { "@jridgewell/resolve-uri": "^3.0.3", @@ -10521,13 +10498,13 @@ } }, "@vue/compiler-core": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.31.tgz", - "integrity": "sha512-aKno00qoA4o+V/kR6i/pE+aP+esng5siNAVQ422TkBNM6qA4veXiZbSe8OTXHXquEi/f6Akc+nLfB4JGfe4/WQ==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.33.tgz", + "integrity": "sha512-AAmr52ji3Zhk7IKIuigX2osWWsb2nQE5xsdFYjdnmtQ4gymmqXbjLvkSE174+fF3A3kstYrTgGkqgOEbsdLDpw==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.31", + "@vue/shared": "3.2.33", "estree-walker": "^2.0.2", "source-map": "^0.6.1" }, @@ -10541,27 +10518,27 @@ } }, "@vue/compiler-dom": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.31.tgz", - "integrity": "sha512-60zIlFfzIDf3u91cqfqy9KhCKIJgPeqxgveH2L+87RcGU/alT6BRrk5JtUso0OibH3O7NXuNOQ0cDc9beT0wrg==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.33.tgz", + "integrity": "sha512-GhiG1C8X98Xz9QUX/RlA6/kgPBWJkjq0Rq6//5XTAGSYrTMBgcLpP9+CnlUg1TFxnnCVughAG+KZl28XJqw8uQ==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.31", - "@vue/shared": "3.2.31" + "@vue/compiler-core": "3.2.33", + "@vue/shared": "3.2.33" } }, "@vue/compiler-sfc": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.31.tgz", - "integrity": "sha512-748adc9msSPGzXgibHiO6T7RWgfnDcVQD+VVwYgSsyyY8Ans64tALHZANrKtOzvkwznV/F4H7OAod/jIlp/dkQ==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.33.tgz", + "integrity": "sha512-H8D0WqagCr295pQjUYyO8P3IejM3vEzeCO1apzByAEaAR/WimhMYczHfZVvlCE/9yBaEu/eu9RdiWr0kF8b71Q==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.31", - "@vue/compiler-dom": "3.2.31", - "@vue/compiler-ssr": "3.2.31", - "@vue/reactivity-transform": "3.2.31", - "@vue/shared": "3.2.31", + "@vue/compiler-core": "3.2.33", + "@vue/compiler-dom": "3.2.33", + "@vue/compiler-ssr": "3.2.33", + "@vue/reactivity-transform": "3.2.33", + "@vue/shared": "3.2.33", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -10577,32 +10554,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.31.tgz", - "integrity": "sha512-mjN0rqig+A8TVDnsGPYJM5dpbjlXeHUm2oZHZwGyMYiGT/F4fhJf/cXy8QpjnLQK4Y9Et4GWzHn9PS8AHUnSkw==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.33.tgz", + "integrity": "sha512-XQh1Xdk3VquDpXsnoCd7JnMoWec9CfAzQDQsaMcSU79OrrO2PNR0ErlIjm/mGq3GmBfkQjzZACV+7GhfRB8xMQ==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.31", - "@vue/shared": "3.2.31" + "@vue/compiler-dom": "3.2.33", + "@vue/shared": "3.2.33" } }, "@vue/reactivity-transform": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.31.tgz", - "integrity": "sha512-uS4l4z/W7wXdI+Va5pgVxBJ345wyGFKvpPYtdSgvfJfX/x2Ymm6ophQlXXB6acqGHtXuBqNyyO3zVp9b1r0MOA==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.33.tgz", + "integrity": "sha512-4UL5KOIvSQb254aqenW4q34qMXbfZcmEsV/yVidLUgvwYQQ/D21bGX3DlgPUGI3c4C+iOnNmDCkIxkILoX/Pyw==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.31", - "@vue/shared": "3.2.31", + "@vue/compiler-core": "3.2.33", + "@vue/shared": "3.2.33", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.31", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.31.tgz", - "integrity": "sha512-ymN2pj6zEjiKJZbrf98UM2pfDd6F2H7ksKw7NDt/ZZ1fh5Ei39X5tABugtT03ZRlWd9imccoK0hE8hpjpU7irQ==", + "version": "3.2.33", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.33.tgz", + "integrity": "sha512-UBc1Pg1T3yZ97vsA2ueER0F6GbJebLHYlEi4ou1H5YL4KWvMOOWwpYo9/QpWq93wxKG6Wo13IY74Hcn/f7c7Bg==", "dev": true }, "abbrev": { @@ -11164,9 +11141,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001325", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001325.tgz", - "integrity": "sha512-sB1bZHjseSjDtijV1Hb7PB2Zd58Kyx+n/9EotvZ4Qcz2K3d0lWB8dB4nb8wN/TsOGFq3UuAm0zQZNQ4SoR7TrQ==", + "version": "1.0.30001332", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001332.tgz", + "integrity": "sha512-10T30NYOEQtN6C11YGg411yebhvpnC6Z102+B95eAsN0oB6KUs01ivE8u+G6FMIRtIrVlYXhL+LUwQ3/hXwDWw==", "dev": true }, "catharsis": { @@ -12112,9 +12089,9 @@ } }, "dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", "requires": { "domelementtype": "^2.0.1", "domhandler": "^4.2.0", @@ -12122,9 +12099,9 @@ } }, "domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==" + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" }, "domhandler": { "version": "4.3.1", @@ -12261,9 +12238,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.4.103", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.103.tgz", - "integrity": "sha512-c/uKWR1Z/W30Wy/sx3dkZoj4BijbXX85QKWu9jJfjho3LBAXNEGAEW3oWiGb+dotA6C6BzCTxL2/aLes7jlUeg==", + "version": "1.4.117", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.117.tgz", + "integrity": "sha512-ypZHxY+Sf/PXu7LVN+xoeanyisnJeSOy8Ki439L/oLueZb4c72FI45zXcK3gPpmTwyufh9m6NnbMLXnJh/0Fxg==", "dev": true }, "emittery": { @@ -12333,9 +12310,9 @@ } }, "es5-ext": { - "version": "0.10.59", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.59.tgz", - "integrity": "sha512-cOgyhW0tIJyQY1Kfw6Kr0viu9ZlUctVchRMZ7R0HiH3dxTSp5zJDLecwxUqPUrGKMsgBI1wd1FL+d9Jxfi4cLw==", + "version": "0.10.61", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.61.tgz", + "integrity": "sha512-yFhIqQAzu2Ca2I4SE2Au3rxVfmohU9Y7wqGR+s7+H7krk26NXhIRAZDgqd6xqjCEFUomDEA3/Bo/7fKmIkW1kA==", "requires": { "es6-iterator": "^2.0.3", "es6-symbol": "^3.1.3", @@ -12466,9 +12443,9 @@ } }, "eslint": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.12.0.tgz", - "integrity": "sha512-it1oBL9alZg1S8UycLm5YDMAkIhtH6FtAzuZs6YvoGVldWjbS08BkAdb/ymP9LlAyq8koANu32U7Ib/w+UNh8Q==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.13.0.tgz", + "integrity": "sha512-D+Xei61eInqauAyTJ6C0q6x9mx7kTUC1KZ0m0LSEexR0V+e94K12LmWX076ZIsldwfQ2RONdaJe0re0TRGQbRQ==", "dev": true, "requires": { "@eslint/eslintrc": "^1.2.1", @@ -13295,9 +13272,9 @@ } }, "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "handle-thing": { "version": "2.0.1", @@ -13667,9 +13644,9 @@ } }, "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", "requires": { "has": "^1.0.3" } @@ -13926,12 +13903,12 @@ } }, "js-beautify": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.2.tgz", - "integrity": "sha512-H85kX95a53os+q1OCqtYe8AXAmgy3BvtysA/V83S3fdhznm6WlUpGi14DqSPbKFsL3dXZFXYl7YQwW9U1+76ng==", + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.3.tgz", + "integrity": "sha512-f1ra8PHtOEu/70EBnmiUlV8nJePS58y9qKjl4JHfYWlFH6bo7ogZBz//FAZp7jDuXtYnGYKymZPlrg2I/9Zo4g==", "dev": true, "requires": { - "config-chain": "^1.1.12", + "config-chain": "^1.1.13", "editorconfig": "^0.15.3", "glob": "^7.1.3", "nopt": "^5.0.0" @@ -14351,15 +14328,15 @@ } }, "markdown-it-anchor": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.4.1.tgz", - "integrity": "sha512-sLODeRetZ/61KkKLJElaU3NuU2z7MhXf12Ml1WJMSdwpngeofneCRF+JBbat8HiSqhniOMuTemXMrsI7hA6XyA==", + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.2.tgz", + "integrity": "sha512-JNaekTlIwwyYGBN3zifZDxgz4bSL8sbEj58fdTZGmPSMMGXBZapFjcZk2I33Jy79c1fvCKHpF7MA/67FOTjvzA==", "requires": {} }, "marked": { - "version": "4.0.12", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.12.tgz", - "integrity": "sha512-hgibXWrEDNBWgGiK18j/4lkS6ihTe9sxtV4Q1OQppb/0zzyPSzoFANBa5MfsG/zgsWklmNnhm0XACZOH/0HBiQ==" + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.14.tgz", + "integrity": "sha512-HL5sSPE/LP6U9qKgngIIPTthuxC0jrfxpYMZ3LdGDD3vTnLs59m2Z7r6+LNDR3ToqEQdkKd6YaaEfJhodJmijQ==" }, "matcher": { "version": "3.0.0", @@ -14645,9 +14622,9 @@ } }, "nanoid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.2.tgz", - "integrity": "sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", + "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", "dev": true }, "natural-compare": { @@ -14716,9 +14693,9 @@ } }, "node-releases": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz", - "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz", + "integrity": "sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==", "dev": true }, "nopt": { @@ -15548,9 +15525,9 @@ }, "dependencies": { "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "requires": { "lodash": "^4.17.14" } @@ -16117,9 +16094,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.49.11", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.11.tgz", - "integrity": "sha512-wvS/geXgHUGs6A/4ud5BFIWKO1nKd7wYIGimDk4q4GFkJicILActpv9ueMT4eRGSsp1BdKHuw1WwAHXbhsJELQ==", + "version": "1.50.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.50.1.tgz", + "integrity": "sha512-noTnY41KnlW2A9P8sdwESpDmo+KBNkukI1i8+hOK3footBUcohNHtdOJbckp46XO95nuvcHDDZ+4tmOnpK3hjw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -16147,9 +16124,9 @@ "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", "requires": { "lru-cache": "^6.0.0" }, From 64d6ba2e215a0f2be658a3628939f18a9582dd97 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 26 Apr 2022 08:18:30 +0000 Subject: [PATCH 0617/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.5 to 3.0.0-alpha.6 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.6/CHANGELOG.md --- packages/project/package-lock.json | 30 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d4e1ff109c1..e068a42405c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-alpha.1", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.5", + "@ui5/builder": "^3.0.0-alpha.6", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", @@ -825,11 +825,11 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.5.tgz", - "integrity": "sha512-ADO0Grp8sewrlVA4hWNdlJPGOc1xycod0nd7q7VxtlwztJgVNdp0ZL2egK2tPbBnO+nV49cwH7vDLgxceEzv/A==", + "version": "3.0.0-alpha.6", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.6.tgz", + "integrity": "sha512-IDPsKT6fShlW0MX+Hr6IifZpSd15BxNv9zZcWvFu3C0RcApHKhEzI7BQZfbRwViFwBlny3mt/TBDmHgrs1yzpg==", "dependencies": { - "@ui5/fs": "^3.0.0-alpha.2", + "@ui5/fs": "^3.0.0-alpha.3", "@ui5/logger": "^3.0.1-alpha.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", @@ -856,9 +856,9 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-alpha.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.2.tgz", - "integrity": "sha512-GCcTUiI0Kjqab6mVWK8aHt9wMjMzSoRJx9pGZsbSdXLFR9C7A7x41OW7WL9pjeuiqUFcydC2Ia1+DdKe6TOrgw==", + "version": "3.0.0-alpha.3", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.3.tgz", + "integrity": "sha512-kDnk8qf9nB3ny8B7RBNJHMIQiMADf0jdasiYUUCUQPSE4KUf9mJytkYaoRltcyDyYjAaOScccBhpx8qeZhUsqA==", "dependencies": { "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", @@ -10418,11 +10418,11 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.5.tgz", - "integrity": "sha512-ADO0Grp8sewrlVA4hWNdlJPGOc1xycod0nd7q7VxtlwztJgVNdp0ZL2egK2tPbBnO+nV49cwH7vDLgxceEzv/A==", + "version": "3.0.0-alpha.6", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.6.tgz", + "integrity": "sha512-IDPsKT6fShlW0MX+Hr6IifZpSd15BxNv9zZcWvFu3C0RcApHKhEzI7BQZfbRwViFwBlny3mt/TBDmHgrs1yzpg==", "requires": { - "@ui5/fs": "^3.0.0-alpha.2", + "@ui5/fs": "^3.0.0-alpha.3", "@ui5/logger": "^3.0.1-alpha.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", @@ -10445,9 +10445,9 @@ } }, "@ui5/fs": { - "version": "3.0.0-alpha.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.2.tgz", - "integrity": "sha512-GCcTUiI0Kjqab6mVWK8aHt9wMjMzSoRJx9pGZsbSdXLFR9C7A7x41OW7WL9pjeuiqUFcydC2Ia1+DdKe6TOrgw==", + "version": "3.0.0-alpha.3", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.3.tgz", + "integrity": "sha512-kDnk8qf9nB3ny8B7RBNJHMIQiMADf0jdasiYUUCUQPSE4KUf9mJytkYaoRltcyDyYjAaOScccBhpx8qeZhUsqA==", "requires": { "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index 88135c5d8b0..fcf9ca74b85 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.5", + "@ui5/builder": "^3.0.0-alpha.6", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", From dfe0d5afc5bfdf0cedf2d2439226e1d4e95dd1cf Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 26 Apr 2022 09:08:37 +0000 Subject: [PATCH 0618/1272] [ui5-project]Release 3.0.0-alpha.2 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 98823a9744e..c7d86f7af2e 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.2...HEAD). + + +## [v3.0.0-alpha.2] - 2022-04-26 ## [v3.0.0-alpha.1] - 2022-01-25 @@ -279,6 +282,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.1...v3.0.0-alpha.2 [v3.0.0-alpha.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.0...v3.0.0-alpha.1 [v3.0.0-alpha.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0-alpha.0 [v2.6.0]: https://github.com/SAP/ui5-project/compare/v2.5.0...v2.6.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e068a42405c..2503c6a3039 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.1", + "version": "3.0.0-alpha.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.1", + "version": "3.0.0-alpha.2", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.6", diff --git a/packages/project/package.json b/packages/project/package.json index fcf9ca74b85..5987c964475 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.1", + "version": "3.0.0-alpha.2", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 1b02689b3890a39735ff5bfd0390ef9e64abe556 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Jun 2022 16:05:15 +0000 Subject: [PATCH 0619/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 2138 ++++++++++++---------------- 1 file changed, 950 insertions(+), 1188 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2503c6a3039..a92f22e785a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -57,12 +57,26 @@ } }, "node_modules/@ampproject/remapping": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz", - "integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", "dev": true, "dependencies": { - "@jridgewell/trace-mapping": "^0.3.0" + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ampproject/remapping/node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" }, "engines": { "node": ">=6.0.0" @@ -80,30 +94,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", - "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.5.tgz", + "integrity": "sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.9.tgz", - "integrity": "sha512-5ug+SfZCpDAkVp9SFIZAzlW18rlzsOcJGaetCjkySnrXXDUw9AR8cDUm1iByTmdWM6yxX6/zycaV76w3YTF2gw==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.5.tgz", + "integrity": "sha512-MGY8vg3DxMnctw0LdvSEojOsumc70g0t18gNyUdAZqB1Rpd1Bqo/svHGvt+UJ6JcGX+DIekGFDxxIWofBxLCnQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-module-transforms": "^7.17.7", - "@babel/helpers": "^7.17.9", - "@babel/parser": "^7.17.9", + "@babel/generator": "^7.18.2", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helpers": "^7.18.2", + "@babel/parser": "^7.18.5", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.9", - "@babel/types": "^7.17.0", + "@babel/traverse": "^7.18.5", + "@babel/types": "^7.18.4", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -119,9 +133,9 @@ } }, "node_modules/@babel/core/node_modules/@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", + "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -140,28 +154,28 @@ } }, "node_modules/@babel/generator": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", - "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", + "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", "dev": true, "dependencies": { - "@babel/types": "^7.17.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" + "@babel/types": "^7.18.2", + "@jridgewell/gen-mapping": "^0.3.0", + "jsesc": "^2.5.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", - "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", + "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.17.7", + "@babel/compat-data": "^7.17.10", "@babel/helper-validator-option": "^7.16.7", - "browserslist": "^4.17.5", + "browserslist": "^4.20.2", "semver": "^6.3.0" }, "engines": { @@ -181,13 +195,10 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", + "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", "dev": true, - "dependencies": { - "@babel/types": "^7.16.7" - }, "engines": { "node": ">=6.9.0" } @@ -230,9 +241,9 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", - "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz", + "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.16.7", @@ -241,20 +252,20 @@ "@babel/helper-split-export-declaration": "^7.16.7", "@babel/helper-validator-identifier": "^7.16.7", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", - "@babel/types": "^7.17.0" + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", - "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", + "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", "dev": true, "dependencies": { - "@babel/types": "^7.17.0" + "@babel/types": "^7.18.2" }, "engines": { "node": ">=6.9.0" @@ -290,23 +301,23 @@ } }, "node_modules/@babel/helpers": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz", - "integrity": "sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", + "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", "dev": true, "dependencies": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.9", - "@babel/types": "^7.17.0" + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", - "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz", + "integrity": "sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==", "dependencies": { "@babel/helper-validator-identifier": "^7.16.7", "chalk": "^2.0.0", @@ -343,7 +354,7 @@ "node_modules/@babel/highlight/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "engines": { "node": ">=0.8.0" } @@ -351,7 +362,7 @@ "node_modules/@babel/highlight/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "engines": { "node": ">=4" } @@ -393,9 +404,9 @@ } }, "node_modules/@babel/template/node_modules/@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", + "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -405,19 +416,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", - "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.5.tgz", + "integrity": "sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-environment-visitor": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-environment-visitor": "^7.18.2", "@babel/helper-function-name": "^7.17.9", "@babel/helper-hoist-variables": "^7.16.7", "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.9", - "@babel/types": "^7.17.0", + "@babel/parser": "^7.18.5", + "@babel/types": "^7.18.4", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -426,9 +437,9 @@ } }, "node_modules/@babel/traverse/node_modules/@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", + "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -438,9 +449,9 @@ } }, "node_modules/@babel/types": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", - "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz", + "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==", "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.16.7", @@ -465,7 +476,7 @@ "node_modules/@concordance/react/node_modules/arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -486,19 +497,19 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", - "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz", + "integrity": "sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.3.1", - "globals": "^13.9.0", + "espree": "^9.3.2", + "globals": "^13.15.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", - "minimatch": "^3.0.4", + "minimatch": "^3.1.2", "strip-json-comments": "^3.1.1" }, "engines": { @@ -506,9 +517,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", - "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "version": "13.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", + "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -663,26 +674,53 @@ "node": ">=8" } }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz", + "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", - "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", - "dev": true, + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz", + "integrity": "sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz", + "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==", "engines": { "node": ">=6.0.0" } }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.11", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz", - "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==", - "dev": true + "version": "1.4.13", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz", + "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", + "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" @@ -856,12 +894,13 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-alpha.3", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.3.tgz", - "integrity": "sha512-kDnk8qf9nB3ny8B7RBNJHMIQiMADf0jdasiYUUCUQPSE4KUf9mJytkYaoRltcyDyYjAaOScccBhpx8qeZhUsqA==", + "version": "3.0.0-alpha.4", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.4.tgz", + "integrity": "sha512-20R3B1n8mLGKKQbZd+QPcrd9B8yEvaNrgIZLDreY1hAVPW3HHr6G6VsxnXf1RpcrRmPHFHKWIe9neLEDK+CjUw==", "dependencies": { "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", + "escape-string-regexp": "^4.0.0", "globby": "^11.1.0", "graceful-fs": "^4.2.9", "make-dir": "^3.1.0", @@ -921,90 +960,72 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.33.tgz", - "integrity": "sha512-AAmr52ji3Zhk7IKIuigX2osWWsb2nQE5xsdFYjdnmtQ4gymmqXbjLvkSE174+fF3A3kstYrTgGkqgOEbsdLDpw==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz", + "integrity": "sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.33", + "@vue/shared": "3.2.37", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, - "node_modules/@vue/compiler-core/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@vue/compiler-dom": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.33.tgz", - "integrity": "sha512-GhiG1C8X98Xz9QUX/RlA6/kgPBWJkjq0Rq6//5XTAGSYrTMBgcLpP9+CnlUg1TFxnnCVughAG+KZl28XJqw8uQ==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz", + "integrity": "sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.2.33", - "@vue/shared": "3.2.33" + "@vue/compiler-core": "3.2.37", + "@vue/shared": "3.2.37" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.33.tgz", - "integrity": "sha512-H8D0WqagCr295pQjUYyO8P3IejM3vEzeCO1apzByAEaAR/WimhMYczHfZVvlCE/9yBaEu/eu9RdiWr0kF8b71Q==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz", + "integrity": "sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.33", - "@vue/compiler-dom": "3.2.33", - "@vue/compiler-ssr": "3.2.33", - "@vue/reactivity-transform": "3.2.33", - "@vue/shared": "3.2.33", + "@vue/compiler-core": "3.2.37", + "@vue/compiler-dom": "3.2.37", + "@vue/compiler-ssr": "3.2.37", + "@vue/reactivity-transform": "3.2.37", + "@vue/shared": "3.2.37", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", "source-map": "^0.6.1" } }, - "node_modules/@vue/compiler-sfc/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.33.tgz", - "integrity": "sha512-XQh1Xdk3VquDpXsnoCd7JnMoWec9CfAzQDQsaMcSU79OrrO2PNR0ErlIjm/mGq3GmBfkQjzZACV+7GhfRB8xMQ==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz", + "integrity": "sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.2.33", - "@vue/shared": "3.2.33" + "@vue/compiler-dom": "3.2.37", + "@vue/shared": "3.2.37" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.33.tgz", - "integrity": "sha512-4UL5KOIvSQb254aqenW4q34qMXbfZcmEsV/yVidLUgvwYQQ/D21bGX3DlgPUGI3c4C+iOnNmDCkIxkILoX/Pyw==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz", + "integrity": "sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.33", - "@vue/shared": "3.2.33", + "@vue/compiler-core": "3.2.37", + "@vue/shared": "3.2.37", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "node_modules/@vue/shared": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.33.tgz", - "integrity": "sha512-UBc1Pg1T3yZ97vsA2ueER0F6GbJebLHYlEi4ou1H5YL4KWvMOOWwpYo9/QpWq93wxKG6Wo13IY74Hcn/f7c7Bg==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.37.tgz", + "integrity": "sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw==", "dev": true }, "node_modules/abbrev": { @@ -1026,9 +1047,9 @@ } }, "node_modules/acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", "bin": { "acorn": "bin/acorn" }, @@ -1173,7 +1194,7 @@ "node_modules/archy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", "dev": true }, "node_modules/are-we-there-yet": { @@ -1205,7 +1226,7 @@ "node_modules/array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", "dev": true, "engines": { "node": ">=0.10.0" @@ -1214,7 +1235,7 @@ "node_modules/array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, "node_modules/array-union": { "version": "2.1.0", @@ -1252,9 +1273,9 @@ } }, "node_modules/async": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", - "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" }, "node_modules/atob": { "version": "2.1.2", @@ -1427,12 +1448,12 @@ "node_modules/body-parser/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, "node_modules/boxen": { "version": "5.1.2", @@ -1489,9 +1510,9 @@ } }, "node_modules/browserslist": { - "version": "4.20.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz", - "integrity": "sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==", + "version": "4.20.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.4.tgz", + "integrity": "sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw==", "dev": true, "funding": [ { @@ -1504,10 +1525,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001317", - "electron-to-chromium": "^1.4.84", + "caniuse-lite": "^1.0.30001349", + "electron-to-chromium": "^1.4.147", "escalade": "^3.1.1", - "node-releases": "^2.0.2", + "node-releases": "^2.0.5", "picocolors": "^1.0.0" }, "bin": { @@ -1544,7 +1565,7 @@ "node_modules/buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", "engines": { "node": "*" } @@ -1557,7 +1578,7 @@ "node_modules/builtins": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=" + "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==" }, "node_modules/bytes": { "version": "3.1.2", @@ -1747,9 +1768,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001332", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001332.tgz", - "integrity": "sha512-10T30NYOEQtN6C11YGg411yebhvpnC6Z102+B95eAsN0oB6KUs01ivE8u+G6FMIRtIrVlYXhL+LUwQ3/hXwDWw==", + "version": "1.0.30001352", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001352.tgz", + "integrity": "sha512-GUgH8w6YergqPQDGWhJGt8GDRnY0L/iJVQcU3eJ46GYf52R8tk0Wxp0PymuFVZboJYXGiCqwozAYZNRjVj6IcA==", "dev": true, "funding": [ { @@ -1957,7 +1978,7 @@ "node_modules/chokidar-cli/node_modules/is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true, "engines": { "node": ">=4" @@ -2066,7 +2087,7 @@ "node_modules/clean-yaml-object": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", - "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", + "integrity": "sha512-3yONmlN9CSAkzNwnRCiJQ7Q2xK5mWuEfL3PuTZcAUzhObbXsfsnMptJzXwz93nc5zn9V9TwCVMmV7w4xsm43dw==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2138,7 +2159,7 @@ "node_modules/clone": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", "engines": { "node": ">=0.8" } @@ -2146,7 +2167,7 @@ "node_modules/clone-response": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "integrity": "sha512-yjLXh88P599UOyPTFX0POsd7WxnbsVsGohcwzHOLspIhhpalPw1BcqED8NblyZLKcGrL8dTgMlcaZxV2jAD41Q==", "dev": true, "dependencies": { "mimic-response": "^1.0.0" @@ -2175,7 +2196,7 @@ "node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, "node_modules/color-support": { "version": "1.1.3", @@ -2213,7 +2234,7 @@ "node_modules/commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, "node_modules/compressible": { @@ -2247,7 +2268,7 @@ "node_modules/compression/node_modules/bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", "engines": { "node": ">= 0.8" } @@ -2263,12 +2284,12 @@ "node_modules/compression/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, "node_modules/concat-stream": { "version": "1.6.2", @@ -2373,7 +2394,7 @@ "node_modules/console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" }, "node_modules/content-disposition": { "version": "0.5.4", @@ -2425,7 +2446,7 @@ "node_modules/convert-to-spaces": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", - "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", + "integrity": "sha512-cj09EBuObp9gZNQCzc7hByQyrs6jVGE+o9kSJmeUoj+GiPiJvi5LYqEH/Hmme4+MTLHM+Ejtq+FChpjjEnsPdQ==", "dev": true, "engines": { "node": ">= 4" @@ -2442,7 +2463,7 @@ "node_modules/cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" }, "node_modules/copy-concurrently": { "version": "1.0.5", @@ -2594,18 +2615,10 @@ "url": "https://github.com/sponsors/fb55" } }, - "node_modules/css/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/currently-unhandled": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==", "dev": true, "dependencies": { "array-find-index": "^1.0.1" @@ -2617,7 +2630,7 @@ "node_modules/cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=" + "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==" }, "node_modules/d": { "version": "1.0.1", @@ -2664,7 +2677,7 @@ "node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2673,7 +2686,7 @@ "node_modules/decamelize-keys": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "integrity": "sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==", "dev": true, "dependencies": { "decamelize": "^1.1.0", @@ -2686,7 +2699,7 @@ "node_modules/decamelize-keys/node_modules/map-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -2695,7 +2708,7 @@ "node_modules/decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", "engines": { "node": ">=0.10" } @@ -2703,7 +2716,7 @@ "node_modules/decompress-response": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", "dev": true, "dependencies": { "mimic-response": "^1.0.0" @@ -2742,7 +2755,7 @@ "node_modules/defaults": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", "dev": true, "dependencies": { "clone": "^1.0.2" @@ -2751,7 +2764,7 @@ "node_modules/defaults/node_modules/clone": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", "dev": true, "engines": { "node": ">=0.8" @@ -2764,9 +2777,9 @@ "dev": true }, "node_modules/del": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", - "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", "dev": true, "dependencies": { "globby": "^11.0.1", @@ -2788,7 +2801,7 @@ "node_modules/delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" }, "node_modules/depcheck": { "version": "1.4.3", @@ -2860,7 +2873,7 @@ "node_modules/deps-regex": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", - "integrity": "sha1-UYZnt2kUYKXn4KNBvnbrfOgJAYQ=", + "integrity": "sha512-3tzwGYogSJi8HoG93R5x9NrdefZQOXgHgGih/7eivloOq6yC6O+yoFxZnkgP661twvfILONfoKRdF9GQOGx2RA==", "dev": true }, "node_modules/destroy": { @@ -2912,9 +2925,9 @@ } }, "node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", + "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", "dev": true, "engines": { "node": ">=0.3.1" @@ -3021,7 +3034,7 @@ "node_modules/duplexer2": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", "dev": true, "dependencies": { "readable-stream": "^2.0.2" @@ -3054,7 +3067,7 @@ "node_modules/duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "integrity": "sha512-CEj8FwwNA4cVH2uFCoHUrmojhYh1vmCdOaneKJXwkeY1i9jnlslVo9dx+hQ5Hl9GnH/Bwy/IjxAyOePyPKYnzA==", "dev": true }, "node_modules/duplexify": { @@ -3117,12 +3130,12 @@ "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.117", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.117.tgz", - "integrity": "sha512-ypZHxY+Sf/PXu7LVN+xoeanyisnJeSOy8Ki439L/oLueZb4c72FI45zXcK3gPpmTwyufh9m6NnbMLXnJh/0Fxg==", + "version": "1.4.152", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.152.tgz", + "integrity": "sha512-jk4Ju5SGZAQQJ1iI4Rgru7dDlvkQPLpNPWH9gIZmwCD4YteA5Bbk1xPcPDUf5jUYs3e1e80RXdi8XgKQZaigeg==", "dev": true }, "node_modules/emittery": { @@ -3145,7 +3158,7 @@ "node_modules/encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "engines": { "node": ">= 0.8" } @@ -3188,7 +3201,7 @@ "node_modules/equal-length": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", - "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", + "integrity": "sha512-TK2m7MvWPt/v3dan0BCNp99pytIE5UGrUj7F0KZirNX8xz8fDFUAZfgm8uB5FuQq9u0sMeDocYBfEhsd1nwGoA==", "dev": true, "engines": { "node": ">=4" @@ -3197,7 +3210,7 @@ "node_modules/err-code": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", - "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=" + "integrity": "sha512-CJAN+O0/yA1CKfRn9SXOGctSpEM7DCon/r/5r2eXFMY2zCCJBasFhcM5I+1kh3Ap11FsQCX+vGHceNPvpWKhoA==" }, "node_modules/error-ex": { "version": "1.3.2", @@ -3230,7 +3243,7 @@ "node_modules/es6-iterator": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", "dependencies": { "d": "1", "es5-ext": "^0.10.35", @@ -3240,7 +3253,7 @@ "node_modules/es6-map": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "integrity": "sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A==", "dependencies": { "d": "1", "es5-ext": "~0.10.14", @@ -3258,7 +3271,7 @@ "node_modules/es6-promisify": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", "dependencies": { "es6-promise": "^4.0.3" } @@ -3266,7 +3279,7 @@ "node_modules/es6-set": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "integrity": "sha512-7S8YXIcUfPMOr3rqJBVMePAbRsD1nWeSMQ86K/lDI76S3WKXz+KWILvTIPbTroubOkZTGh+b+7/xIIphZXNYbA==", "dependencies": { "d": "1", "es5-ext": "~0.10.14", @@ -3278,7 +3291,7 @@ "node_modules/es6-set/node_modules/es6-symbol": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "integrity": "sha512-exfuQY8UGtn/N+gL1iKkH8fpNd5sJ760nJq6mmZAHldfxMD5kX07lbQuYlspoXsuknXNv9Fb7y2GsPOnQIbxHg==", "dependencies": { "d": "1", "es5-ext": "~0.10.14" @@ -3325,7 +3338,7 @@ "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" }, "node_modules/escape-string-regexp": { "version": "4.0.0", @@ -3349,7 +3362,7 @@ "node_modules/escope": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "integrity": "sha512-75IUQsusDdalQEW/G/2esa87J7raqdJF+Ca0/Xm5C3Q58Nr4yVYjZGp/P1+2xiEVgXRrA39dpRb8LcshajbqDQ==", "dependencies": { "es6-map": "^0.1.3", "es6-weak-map": "^2.0.1", @@ -3361,12 +3374,12 @@ } }, "node_modules/eslint": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.13.0.tgz", - "integrity": "sha512-D+Xei61eInqauAyTJ6C0q6x9mx7kTUC1KZ0m0LSEexR0V+e94K12LmWX076ZIsldwfQ2RONdaJe0re0TRGQbRQ==", + "version": "8.17.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.17.0.tgz", + "integrity": "sha512-gq0m0BTJfci60Fz4nczYxNAlED+sMcihltndR8t9t1evnU/azx53x3t2UHXC/uRjcbvRw/XctpaNygSTcQD+Iw==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.2.1", + "@eslint/eslintrc": "^1.3.0", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -3377,14 +3390,14 @@ "eslint-scope": "^7.1.1", "eslint-utils": "^3.0.0", "eslint-visitor-keys": "^3.3.0", - "espree": "^9.3.1", + "espree": "^9.3.2", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", "glob-parent": "^6.0.1", - "globals": "^13.6.0", + "globals": "^13.15.0", "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", @@ -3393,7 +3406,7 @@ "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.2", "natural-compare": "^1.4.0", "optionator": "^0.9.1", "regexpp": "^3.2.0", @@ -3516,9 +3529,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", - "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "version": "13.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", + "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -3543,12 +3556,12 @@ } }, "node_modules/espree": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", - "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", + "version": "9.3.2", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz", + "integrity": "sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==", "dependencies": { - "acorn": "^8.7.0", - "acorn-jsx": "^5.3.1", + "acorn": "^8.7.1", + "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.3.0" }, "engines": { @@ -3634,7 +3647,7 @@ "node_modules/etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "engines": { "node": ">= 0.6" } @@ -3642,7 +3655,7 @@ "node_modules/event-emitter": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", "dependencies": { "d": "1", "es5-ext": "~0.10.14" @@ -3656,41 +3669,42 @@ "node_modules/events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", + "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, "node_modules/express": { - "version": "4.17.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", - "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", + "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.19.2", + "body-parser": "1.20.0", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.2", + "cookie": "0.5.0", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "~1.1.2", + "depd": "2.0.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "~1.1.2", + "finalhandler": "1.2.0", "fresh": "0.5.2", + "http-errors": "2.0.0", "merge-descriptors": "1.0.1", "methods": "~1.1.2", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", "proxy-addr": "~2.0.7", - "qs": "6.9.7", + "qs": "6.10.3", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.17.2", - "serve-static": "1.14.2", + "send": "0.18.0", + "serve-static": "1.15.0", "setprototypeof": "1.2.0", - "statuses": "~1.5.0", + "statuses": "2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" @@ -3699,24 +3713,12 @@ "node": ">= 0.10.0" } }, - "node_modules/express/node_modules/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" - }, + "node_modules/express/node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", "engines": { - "node": ">= 0.8" + "node": ">= 0.6" } }, "node_modules/express/node_modules/debug": { @@ -3727,69 +3729,10 @@ "ms": "2.0.0" } }, - "node_modules/express/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express/node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/express/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/express/node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/express/node_modules/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/express/node_modules/raw-body": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", - "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/express/node_modules/safe-buffer": { "version": "5.2.1", @@ -3862,7 +3805,7 @@ "node_modules/fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, "node_modules/fastq": { @@ -3896,7 +3839,7 @@ "node_modules/figures/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, "engines": { "node": ">=0.8.0" @@ -3944,16 +3887,16 @@ } }, "node_modules/finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", "dependencies": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", - "statuses": "~1.5.0", + "statuses": "2.0.1", "unpipe": "~1.0.0" }, "engines": { @@ -3971,18 +3914,7 @@ "node_modules/finalhandler/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/finalhandler/node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/find-cache-dir": { "version": "3.3.2", @@ -4063,9 +3995,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", - "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", + "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", "funding": [ { "type": "individual", @@ -4105,7 +4037,7 @@ "node_modules/fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "engines": { "node": ">= 0.6" } @@ -4113,7 +4045,7 @@ "node_modules/from2": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", "dependencies": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" @@ -4172,7 +4104,7 @@ "node_modules/fs-write-stream-atomic": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==", "dependencies": { "graceful-fs": "^4.1.2", "iferr": "^0.1.5", @@ -4205,7 +4137,7 @@ "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "node_modules/fsevents": { "version": "2.3.2", @@ -4229,7 +4161,7 @@ "node_modules/functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, "node_modules/gauge": { @@ -4272,13 +4204,13 @@ "dev": true }, "node_modules/get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", + "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", - "has-symbols": "^1.0.1" + "has-symbols": "^1.0.3" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -4296,7 +4228,7 @@ "node_modules/get-port": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=", + "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==", "engines": { "node": ">=4" } @@ -4322,14 +4254,14 @@ } }, "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" }, @@ -4458,7 +4390,7 @@ "node_modules/has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dev": true, "dependencies": { "ansi-regex": "^2.0.0" @@ -4470,7 +4402,7 @@ "node_modules/has-ansi/node_modules/ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -4498,7 +4430,7 @@ "node_modules/has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" }, "node_modules/has-yarn": { "version": "2.1.0", @@ -4533,7 +4465,7 @@ "node_modules/hpack.js": { "version": "2.1.6", "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", "dependencies": { "inherits": "^2.0.1", "obuf": "^1.0.0", @@ -4595,7 +4527,7 @@ "node_modules/http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" }, "node_modules/http-errors": { "version": "2.0.0", @@ -4612,14 +4544,6 @@ "node": ">= 0.8" } }, - "node_modules/http-errors/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/http-proxy": { "version": "1.18.1", "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", @@ -4656,7 +4580,7 @@ "node_modules/http-proxy-agent/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/https-proxy-agent": { "version": "2.2.4", @@ -4681,7 +4605,7 @@ "node_modules/humanize-ms": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", "dependencies": { "ms": "^2.0.0" } @@ -4720,7 +4644,7 @@ "node_modules/iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" + "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==" }, "node_modules/ignore": { "version": "5.2.0", @@ -4731,9 +4655,9 @@ } }, "node_modules/ignore-by-default": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-2.0.0.tgz", - "integrity": "sha512-+mQSgMRiFD3L3AOxLYOCxjIq4OnAmo5CIuC+lj5ehCJcPtV++QacEV7FdpzvYxH6DaOySWzQU6RR0lPLy37ckA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-2.1.0.tgz", + "integrity": "sha512-yiWd4GVmJp0Q6ghmM2B/V3oZGRmjrKLXvHR3TE1nfoXsmoggllfZUQe74EN0fJdPFZu2NIvNdrMMLm3OsV7Ohw==", "dev": true, "engines": { "node": ">=10 <11 || >=12 <13 || >=14" @@ -4748,9 +4672,9 @@ } }, "node_modules/immutable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0.tgz", - "integrity": "sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", + "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", "dev": true }, "node_modules/import-fresh": { @@ -4772,7 +4696,7 @@ "node_modules/import-lazy": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", "dev": true, "engines": { "node": ">=4" @@ -4800,7 +4724,7 @@ "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "engines": { "node": ">=0.8.19" } @@ -4822,7 +4746,7 @@ "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -4850,7 +4774,7 @@ "node_modules/ip": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" + "integrity": "sha512-rBtCAQAJm8A110nbwn6YdveUnuZH3WrC36IwkRXxDnq53JvXA2NVQvB7IHyKomxK1MJ4VDNw3UtFDdXQ+AvLYA==" }, "node_modules/ipaddr.js": { "version": "1.9.1", @@ -4872,7 +4796,7 @@ "node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" }, "node_modules/is-binary-path": { "version": "2.1.0", @@ -4933,7 +4857,7 @@ "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "engines": { "node": ">=0.10.0" } @@ -5040,7 +4964,7 @@ "node_modules/is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -5076,7 +5000,7 @@ "node_modules/is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "dev": true }, "node_modules/is-unicode-supported": { @@ -5121,12 +5045,12 @@ "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "node_modules/istanbul-lib-coverage": { "version": "3.2.0", @@ -5174,18 +5098,17 @@ } }, "node_modules/istanbul-lib-processinfo": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.2.tgz", - "integrity": "sha512-kOwpa7z9hme+IBPZMzQ5vdQj8srYgAtaRqeI48NGmAQ+/5yKiHLV0QbYqQpxsdEF0+w14SoB8YbnHKcXE2KnYw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz", + "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==", "dev": true, "dependencies": { "archy": "^1.0.0", - "cross-spawn": "^7.0.0", - "istanbul-lib-coverage": "^3.0.0-alpha.1", - "make-dir": "^3.0.0", + "cross-spawn": "^7.0.3", + "istanbul-lib-coverage": "^3.2.0", "p-map": "^3.0.0", "rimraf": "^3.0.0", - "uuid": "^3.3.3" + "uuid": "^8.3.2" }, "engines": { "node": ">=8" @@ -5231,15 +5154,6 @@ "node": ">=10" } }, - "node_modules/istanbul-lib-source-maps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/istanbul-reports": { "version": "3.1.4", "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", @@ -5276,7 +5190,7 @@ "node_modules/js-string-escape": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", - "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", + "integrity": "sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg==", "dev": true, "engines": { "node": ">= 0.8" @@ -5366,7 +5280,7 @@ "node_modules/json-buffer": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", "dev": true }, "node_modules/json-parse-better-errors": { @@ -5387,7 +5301,7 @@ "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, "node_modules/json5": { @@ -5405,7 +5319,7 @@ "node_modules/jsonparse": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", "engines": [ "node >= 0.2.0" ] @@ -5500,6 +5414,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/libnpmconfig/-/libnpmconfig-1.2.1.tgz", "integrity": "sha512-9esX8rTQAHqarx6qeZqmGQKBNZR5OIbl/Ayr0qQDy3oXja2iFVQQI81R6GZ2a02bSNZ9p3YOGX1O6HHCb1X7kA==", + "deprecated": "This module is not used anymore. npm config is parsed by npm itself and by @npmcli/config", "dependencies": { "figgy-pudding": "^3.5.1", "find-up": "^3.0.0", @@ -5538,7 +5453,7 @@ "node_modules/load-json-file/node_modules/parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, "dependencies": { "error-ex": "^1.3.1", @@ -5551,7 +5466,7 @@ "node_modules/load-json-file/node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, "engines": { "node": ">=4" @@ -5594,25 +5509,25 @@ "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true }, "node_modules/lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", "dev": true }, "node_modules/lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", "dev": true }, "node_modules/lodash.isfinite": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", - "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=" + "integrity": "sha512-7FGG40uhC8Mm633uKW1r58aElFlBlxCrg9JfSi3P6aYiWmfiWF0PgMd86ZUsxE5GwWPdHoS2+48bwTh2VPkIQA==" }, "node_modules/lodash.merge": { "version": "4.6.2", @@ -5623,7 +5538,7 @@ "node_modules/lodash.throttle": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", "dev": true }, "node_modules/log-symbols": { @@ -5775,9 +5690,9 @@ } }, "node_modules/markdown-it-anchor": { - "version": "8.6.2", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.2.tgz", - "integrity": "sha512-JNaekTlIwwyYGBN3zifZDxgz4bSL8sbEj58fdTZGmPSMMGXBZapFjcZk2I33Jy79c1fvCKHpF7MA/67FOTjvzA==", + "version": "8.6.4", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.4.tgz", + "integrity": "sha512-Ul4YVYZNxMJYALpKtu+ZRdrryYt/GlQ5CK+4l1bp/gWXOG2QWElt6AqF3Mih/wfUKdZbNAZVXGR73/n6U/8img==", "peerDependencies": { "@types/markdown-it": "*", "markdown-it": "*" @@ -5792,9 +5707,9 @@ } }, "node_modules/marked": { - "version": "4.0.14", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.14.tgz", - "integrity": "sha512-HL5sSPE/LP6U9qKgngIIPTthuxC0jrfxpYMZ3LdGDD3vTnLs59m2Z7r6+LNDR3ToqEQdkKd6YaaEfJhodJmijQ==", + "version": "4.0.17", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.17.tgz", + "integrity": "sha512-Wfk0ATOK5iPxM4ptrORkFemqroz0ZDxp5MWfYA7H/F+wO17NRWV5Ypxi6p3g2Xmw2bKeiYOl6oVnLHKxBA0VhA==", "bin": { "marked": "bin/marked.js" }, @@ -5829,12 +5744,12 @@ "node_modules/mdurl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "engines": { "node": ">= 0.6" } @@ -5895,7 +5810,7 @@ "node_modules/merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" }, "node_modules/merge2": { "version": "1.4.1", @@ -5908,7 +5823,7 @@ "node_modules/methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "engines": { "node": ">= 0.6" } @@ -6020,7 +5935,7 @@ "node_modules/minimist-options/node_modules/arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -6095,7 +6010,7 @@ "node_modules/mock-require/node_modules/normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", "dev": true, "dependencies": { "remove-trailing-separator": "^1.0.1" @@ -6107,7 +6022,7 @@ "node_modules/move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==", "dependencies": { "aproba": "^1.1.1", "copy-concurrently": "^1.0.0", @@ -6169,9 +6084,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", "dev": true, "bin": { "nanoid": "bin/nanoid.cjs" @@ -6183,7 +6098,7 @@ "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, "node_modules/negotiator": { @@ -6215,7 +6130,7 @@ "node_modules/nise/node_modules/isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "dev": true }, "node_modules/nise/node_modules/path-to-regexp": { @@ -6253,9 +6168,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz", - "integrity": "sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", + "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", "dev": true }, "node_modules/nopt": { @@ -6428,9 +6343,9 @@ } }, "node_modules/nth-check": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", - "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", "dependencies": { "boolbase": "^1.0.0" }, @@ -6638,15 +6553,15 @@ "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "engines": { "node": ">=0.10.0" } }, "node_modules/object-inspect": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", - "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -6678,7 +6593,7 @@ "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dependencies": { "wrappy": "1" } @@ -6785,7 +6700,7 @@ "node_modules/os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", "engines": { "node": ">=0.10.0" } @@ -6793,7 +6708,7 @@ "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "engines": { "node": ">=0.10.0" } @@ -6819,7 +6734,7 @@ "node_modules/p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", "dev": true, "engines": { "node": ">=4" @@ -6843,7 +6758,7 @@ "node_modules/p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", "dev": true, "engines": { "node": ">=4" @@ -7133,7 +7048,7 @@ "node_modules/path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "engines": { "node": ">=4" } @@ -7141,7 +7056,7 @@ "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "engines": { "node": ">=0.10.0" } @@ -7163,7 +7078,7 @@ "node_modules/path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" }, "node_modules/path-type": { "version": "4.0.0", @@ -7329,9 +7244,9 @@ } }, "node_modules/postcss": { - "version": "8.4.12", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz", - "integrity": "sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==", + "version": "8.4.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", + "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", "dev": true, "funding": [ { @@ -7344,7 +7259,7 @@ } ], "dependencies": { - "nanoid": "^3.3.1", + "nanoid": "^3.3.4", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" }, @@ -7364,7 +7279,7 @@ "node_modules/prepend-http": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", "dev": true, "engines": { "node": ">=4" @@ -7373,7 +7288,7 @@ "node_modules/pretty-data": { "version": "0.40.0", "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=", + "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==", "engines": { "node": "*" } @@ -7381,7 +7296,7 @@ "node_modules/pretty-hrtime": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", + "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==", "engines": { "node": ">= 0.8" } @@ -7421,12 +7336,12 @@ "node_modules/promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" }, "node_modules/promise-retry": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", - "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", + "integrity": "sha512-StEy2osPr28o17bIW776GtwO6+Q+M9zPiZkYfosciUUMYqjhU/ffwRAH0zN2+uvGyUsn8/YICIHRzLbPacpZGw==", "dependencies": { "err-code": "^1.0.0", "retry": "^0.10.0" @@ -7438,7 +7353,7 @@ "node_modules/proto-list": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", "dev": true }, "node_modules/protoduck": { @@ -7464,7 +7379,7 @@ "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", "dev": true }, "node_modules/pump": { @@ -7614,7 +7529,7 @@ "node_modules/rc/node_modules/strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -7792,7 +7707,7 @@ "node_modules/release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", "dev": true, "dependencies": { "es6-error": "^4.0.1" @@ -7804,7 +7719,7 @@ "node_modules/remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", "dev": true }, "node_modules/replacestream": { @@ -7820,7 +7735,7 @@ "node_modules/replacestream/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "engines": { "node": ">=0.8.0" } @@ -7850,7 +7765,7 @@ "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true, "engines": { "node": ">=0.10.0" @@ -7865,13 +7780,13 @@ "node_modules/require-package-name": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/require-package-name/-/require-package-name-2.0.1.tgz", - "integrity": "sha1-wR6XJ2tluOKSP3Xav1+y7ww4Qbk=", + "integrity": "sha512-uuoJ1hU/k6M0779t3VMVIYpb2VMJk05cehCaABFhXaibcbvfgR8wKiozLjVFSzJPmQMRqIcO0HMyTFqfV09V6Q==", "dev": true }, "node_modules/requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, "node_modules/requizzle": { "version": "0.2.3", @@ -7930,7 +7845,7 @@ "node_modules/responselike": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", "dev": true, "dependencies": { "lowercase-keys": "^1.0.0" @@ -7952,7 +7867,7 @@ "node_modules/retry": { "version": "0.10.1", "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", - "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", + "integrity": "sha512-ZXUSQYTHdl3uS7IuCehYfMzKyIDBNoAuUblvy5oGO5UJSUTmStUUVPXbA9Qxd173Bgre53yCQczQuHgRWAdvJQ==", "engines": { "node": "*" } @@ -7981,9 +7896,9 @@ } }, "node_modules/router": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/router/-/router-1.3.6.tgz", - "integrity": "sha512-gsjhou+LFApzkIP8VDrouG6Z4pqkeF11n3o5orlwPPvPTl0x7c+dbF71itKOhDoFHygmc3N3uqm55Uq/gIDUwg==", + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/router/-/router-1.3.7.tgz", + "integrity": "sha512-bYnD9Vv2287+g3AIll2kHITLtHV5+fldq6hVzaul9RbdGme77mvBY/1cO+ahsgstA2RI6DSg/j4W1TYHm4Lz4g==", "dependencies": { "array-flatten": "3.0.0", "debug": "2.6.9", @@ -8013,7 +7928,7 @@ "node_modules/router/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/run-parallel": { "version": "1.2.0", @@ -8040,7 +7955,7 @@ "node_modules/run-queue": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==", "dependencies": { "aproba": "^1.1.1" } @@ -8061,9 +7976,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sass": { - "version": "1.50.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.50.1.tgz", - "integrity": "sha512-noTnY41KnlW2A9P8sdwESpDmo+KBNkukI1i8+hOK3footBUcohNHtdOJbckp46XO95nuvcHDDZ+4tmOnpK3hjw==", + "version": "1.52.3", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.52.3.tgz", + "integrity": "sha512-LNNPJ9lafx+j1ArtA7GyEJm9eawXN8KlA1+5dF6IZyoONg1Tyo/g+muOsENWJH/2Q1FHbbV4UwliU0cXMa/VIA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8097,7 +8012,7 @@ "node_modules/select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" }, "node_modules/semver": { "version": "7.3.7", @@ -8116,7 +8031,7 @@ "node_modules/semver-compare": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", "dev": true }, "node_modules/semver-diff": { @@ -8157,23 +8072,23 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", - "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", "dependencies": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "mime": "1.6.0", "ms": "2.1.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, "engines": { "node": ">= 0.8.0" @@ -8190,46 +8105,7 @@ "node_modules/send/node_modules/debug/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/send/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/send/node_modules/destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "node_modules/send/node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/send/node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/serialize-error": { "version": "7.0.1", @@ -8259,14 +8135,14 @@ } }, "node_modules/serve-static": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", - "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", "dependencies": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.2" + "send": "0.18.0" }, "engines": { "node": ">= 0.8.0" @@ -8275,12 +8151,12 @@ "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" }, "node_modules/set-cookie-parser": { - "version": "2.4.8", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.4.8.tgz", - "integrity": "sha512-edRH8mBKEWNVIVMKejNnuJxleqYE/ZSdcT8/Nem9/mmosx12pctd80s2Oy00KNZzrogMZS5mauK2/ymL1bvlvg==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.5.0.tgz", + "integrity": "sha512-cHMAtSXilfyBePduZEBVPTCftTQWz6ehWJD5YNUg4mqvRosrrjKbo4WS8JkB0/RxonMoohHm7cOGH60mDkRQ9w==" }, "node_modules/setprototypeof": { "version": "1.2.0", @@ -8324,7 +8200,7 @@ "node_modules/sigmund": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", + "integrity": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==", "dev": true }, "node_modules/signal-exit": { @@ -8451,10 +8327,9 @@ } }, "node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "engines": { "node": ">=0.10.0" } @@ -8487,14 +8362,6 @@ "source-map": "^0.6.0" } }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/sourcemap-codec": { "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", @@ -8576,7 +8443,7 @@ "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, "node_modules/ssri": { @@ -8609,11 +8476,11 @@ } }, "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/stream-each": { @@ -8793,12 +8660,12 @@ "node_modules/taffydb": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" + "integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA==" }, "node_modules/tap-nyan": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", - "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", + "integrity": "sha512-t+/3QEJSeo03QsQ/QLfgVg/gQUAHLMmYdzLx8v+08C8/RY0Vse286G+LT/AhuDhMSMsmOoNttAHN/DygxOgSTA==", "dev": true, "dependencies": { "chalk": "^1.1.3", @@ -8814,7 +8681,7 @@ "node_modules/tap-nyan/node_modules/ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8823,7 +8690,7 @@ "node_modules/tap-nyan/node_modules/ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8832,7 +8699,7 @@ "node_modules/tap-nyan/node_modules/chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "dependencies": { "ansi-styles": "^2.2.1", @@ -8848,7 +8715,7 @@ "node_modules/tap-nyan/node_modules/chalk/node_modules/supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true, "engines": { "node": ">=0.8.0" @@ -8857,7 +8724,7 @@ "node_modules/tap-nyan/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, "engines": { "node": ">=0.8.0" @@ -8866,7 +8733,7 @@ "node_modules/tap-nyan/node_modules/has-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8875,7 +8742,7 @@ "node_modules/tap-nyan/node_modules/strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dev": true, "dependencies": { "ansi-regex": "^2.0.0" @@ -8887,7 +8754,7 @@ "node_modules/tap-nyan/node_modules/supports-color": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", "dev": true, "dependencies": { "has-flag": "^1.0.0" @@ -8899,7 +8766,7 @@ "node_modules/tap-parser": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", - "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", + "integrity": "sha512-mSFtCjQTlZiHEJWgcl+pYVIK6+UgQNP3YeDEMVn9qwrQ1xb2CpWBeuZMbd+6sCqrGOdaTAiup6KnDv8cOAhu3A==", "dev": true, "dependencies": { "events-to-array": "^1.0.1", @@ -9029,7 +8896,7 @@ "node_modules/tap-xunit/node_modules/tap-parser": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", - "integrity": "sha1-Xi9pcGEfB5x8+FfeHceqG0gN56U=", + "integrity": "sha512-uXKcosa0qoSjeh73dhmX+OpJvpigDxUciOhBcbGUKtmwzEFJjUT1Ql5dpg4M9I1UjXT9b+6n1W05FB8QmKossA==", "dev": true, "dependencies": { "events-to-array": "^1.0.1", @@ -9123,20 +8990,30 @@ "node_modules/temp-write/node_modules/temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", "dev": true, "engines": { "node": ">=4" } }, + "node_modules/temp-write/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, "node_modules/terser": { - "version": "5.12.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz", - "integrity": "sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==", + "version": "5.14.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.1.tgz", + "integrity": "sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ==", "dependencies": { + "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", "commander": "^2.20.0", - "source-map": "~0.7.2", "source-map-support": "~0.5.20" }, "bin": { @@ -9146,14 +9023,6 @@ "node": ">=10" } }, - "node_modules/terser/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "engines": { - "node": ">= 8" - } - }, "node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", @@ -9171,13 +9040,13 @@ "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" }, "node_modules/through2": { "version": "2.0.5", @@ -9213,7 +9082,7 @@ "node_modules/time-zone": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", - "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", + "integrity": "sha512-TIsDdtKo6+XrPtiTm1ssmMngN1sAhyKnTO2kunQWqNPWIVvCm15Wmw4SWInwTVgJ5u/Tr04+8Ei9TNcw4x4ONA==", "dev": true, "engines": { "node": ">=4" @@ -9222,7 +9091,7 @@ "node_modules/to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true, "engines": { "node": ">=4" @@ -9306,9 +9175,9 @@ } }, "node_modules/tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" }, "node_modules/type": { "version": "1.2.0", @@ -9359,7 +9228,7 @@ "node_modules/typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", @@ -9376,9 +9245,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "node_modules/underscore": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.2.tgz", - "integrity": "sha512-ekY1NhRzq0B08g4bGuX4wd2jZx5GnKz6mKSqFL4nqBlfyMGiG10gDFhDTMEfYmDL6Jy0FUIZp7wiRB+0BP7J2g==" + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.4.tgz", + "integrity": "sha512-BQFnUDuAQ4Yf/cYY5LNrK9NCJFKriaRbD9uR1fTeXnBeoa97W0i41qkZfGO9pSo8I5KzjAcSY2XYtdf0oKd7KQ==" }, "node_modules/unique-filename": { "version": "1.1.1", @@ -9411,7 +9280,7 @@ "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "engines": { "node": ">= 0.8" } @@ -9455,7 +9324,7 @@ "node_modules/url-parse-lax": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", "dev": true, "dependencies": { "prepend-http": "^2.0.0" @@ -9467,24 +9336,23 @@ "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", "engines": { "node": ">= 0.4.0" } }, "node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true, "bin": { - "uuid": "bin/uuid" + "uuid": "dist/bin/uuid" } }, "node_modules/v8-compile-cache": { @@ -9505,7 +9373,7 @@ "node_modules/validate-npm-package-name": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "integrity": "sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==", "dependencies": { "builtins": "^1.0.3" } @@ -9513,7 +9381,7 @@ "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "engines": { "node": ">= 0.8" } @@ -9529,7 +9397,7 @@ "node_modules/wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dev": true, "dependencies": { "defaults": "^1.0.3" @@ -9562,7 +9430,7 @@ "node_modules/which-module": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", "dev": true }, "node_modules/wide-align": { @@ -9647,7 +9515,7 @@ "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/write-file-atomic": { "version": "3.0.3", @@ -9693,7 +9561,7 @@ "node_modules/xmlbuilder": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz", - "integrity": "sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU=", + "integrity": "sha512-oEePiEefhQhAeUnwRnIBLBWmk/fsWWbQ53EEWsRuzECbQ3m5o/Esmq6H47CYYwSLW+Ynt0rS9hd0pd2ogMAWjg==", "dev": true, "dependencies": { "lodash": "^4.0.0" @@ -9723,7 +9591,7 @@ "node_modules/yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", "dev": true }, "node_modules/yaml": { @@ -9818,12 +9686,25 @@ }, "dependencies": { "@ampproject/remapping": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz", - "integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", "dev": true, "requires": { - "@jridgewell/trace-mapping": "^0.3.0" + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + } } }, "@babel/code-frame": { @@ -9835,27 +9716,27 @@ } }, "@babel/compat-data": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", - "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.5.tgz", + "integrity": "sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg==", "dev": true }, "@babel/core": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.9.tgz", - "integrity": "sha512-5ug+SfZCpDAkVp9SFIZAzlW18rlzsOcJGaetCjkySnrXXDUw9AR8cDUm1iByTmdWM6yxX6/zycaV76w3YTF2gw==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.5.tgz", + "integrity": "sha512-MGY8vg3DxMnctw0LdvSEojOsumc70g0t18gNyUdAZqB1Rpd1Bqo/svHGvt+UJ6JcGX+DIekGFDxxIWofBxLCnQ==", "dev": true, "requires": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-module-transforms": "^7.17.7", - "@babel/helpers": "^7.17.9", - "@babel/parser": "^7.17.9", + "@babel/generator": "^7.18.2", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helpers": "^7.18.2", + "@babel/parser": "^7.18.5", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.9", - "@babel/types": "^7.17.0", + "@babel/traverse": "^7.18.5", + "@babel/types": "^7.18.4", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -9864,9 +9745,9 @@ }, "dependencies": { "@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", + "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", "dev": true }, "semver": { @@ -9878,25 +9759,25 @@ } }, "@babel/generator": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", - "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", + "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", "dev": true, "requires": { - "@babel/types": "^7.17.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" + "@babel/types": "^7.18.2", + "@jridgewell/gen-mapping": "^0.3.0", + "jsesc": "^2.5.1" } }, "@babel/helper-compilation-targets": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", - "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", + "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", "dev": true, "requires": { - "@babel/compat-data": "^7.17.7", + "@babel/compat-data": "^7.17.10", "@babel/helper-validator-option": "^7.16.7", - "browserslist": "^4.17.5", + "browserslist": "^4.20.2", "semver": "^6.3.0" }, "dependencies": { @@ -9909,13 +9790,10 @@ } }, "@babel/helper-environment-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", + "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", + "dev": true }, "@babel/helper-function-name": { "version": "7.17.9", @@ -9946,9 +9824,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", - "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz", + "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==", "dev": true, "requires": { "@babel/helper-environment-visitor": "^7.16.7", @@ -9957,17 +9835,17 @@ "@babel/helper-split-export-declaration": "^7.16.7", "@babel/helper-validator-identifier": "^7.16.7", "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", - "@babel/types": "^7.17.0" + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0" } }, "@babel/helper-simple-access": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", - "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", + "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", "dev": true, "requires": { - "@babel/types": "^7.17.0" + "@babel/types": "^7.18.2" } }, "@babel/helper-split-export-declaration": { @@ -9991,20 +9869,20 @@ "dev": true }, "@babel/helpers": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz", - "integrity": "sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", + "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", "dev": true, "requires": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.9", - "@babel/types": "^7.17.0" + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" } }, "@babel/highlight": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", - "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", + "version": "7.17.12", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz", + "integrity": "sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==", "requires": { "@babel/helper-validator-identifier": "^7.16.7", "chalk": "^2.0.0", @@ -10032,12 +9910,12 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" }, "supports-color": { "version": "5.5.0", @@ -10066,43 +9944,43 @@ }, "dependencies": { "@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", + "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", "dev": true } } }, "@babel/traverse": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", - "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.5.tgz", + "integrity": "sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==", "dev": true, "requires": { "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-environment-visitor": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-environment-visitor": "^7.18.2", "@babel/helper-function-name": "^7.17.9", "@babel/helper-hoist-variables": "^7.16.7", "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.9", - "@babel/types": "^7.17.0", + "@babel/parser": "^7.18.5", + "@babel/types": "^7.18.4", "debug": "^4.1.0", "globals": "^11.1.0" }, "dependencies": { "@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", + "version": "7.18.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", + "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", "dev": true } } }, "@babel/types": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", - "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "version": "7.18.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz", + "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.16.7", @@ -10121,7 +9999,7 @@ "arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true } } @@ -10138,26 +10016,26 @@ } }, "@eslint/eslintrc": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", - "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz", + "integrity": "sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.3.1", - "globals": "^13.9.0", + "espree": "^9.3.2", + "globals": "^13.15.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", - "minimatch": "^3.0.4", + "minimatch": "^3.1.2", "strip-json-comments": "^3.1.1" }, "dependencies": { "globals": { - "version": "13.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", - "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "version": "13.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", + "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -10274,23 +10152,44 @@ "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true }, + "@jridgewell/gen-mapping": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz", + "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, "@jridgewell/resolve-uri": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", - "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", - "dev": true + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz", + "integrity": "sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==" + }, + "@jridgewell/set-array": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz", + "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==" + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } }, "@jridgewell/sourcemap-codec": { - "version": "1.4.11", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz", - "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==", - "dev": true + "version": "1.4.13", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz", + "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==" }, "@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", + "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", "requires": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" @@ -10445,12 +10344,13 @@ } }, "@ui5/fs": { - "version": "3.0.0-alpha.3", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.3.tgz", - "integrity": "sha512-kDnk8qf9nB3ny8B7RBNJHMIQiMADf0jdasiYUUCUQPSE4KUf9mJytkYaoRltcyDyYjAaOScccBhpx8qeZhUsqA==", + "version": "3.0.0-alpha.4", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.4.tgz", + "integrity": "sha512-20R3B1n8mLGKKQbZd+QPcrd9B8yEvaNrgIZLDreY1hAVPW3HHr6G6VsxnXf1RpcrRmPHFHKWIe9neLEDK+CjUw==", "requires": { "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", + "escape-string-regexp": "^4.0.0", "globby": "^11.1.0", "graceful-fs": "^4.2.9", "make-dir": "^3.1.0", @@ -10498,88 +10398,72 @@ } }, "@vue/compiler-core": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.33.tgz", - "integrity": "sha512-AAmr52ji3Zhk7IKIuigX2osWWsb2nQE5xsdFYjdnmtQ4gymmqXbjLvkSE174+fF3A3kstYrTgGkqgOEbsdLDpw==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz", + "integrity": "sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.33", + "@vue/shared": "3.2.37", "estree-walker": "^2.0.2", "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } } }, "@vue/compiler-dom": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.33.tgz", - "integrity": "sha512-GhiG1C8X98Xz9QUX/RlA6/kgPBWJkjq0Rq6//5XTAGSYrTMBgcLpP9+CnlUg1TFxnnCVughAG+KZl28XJqw8uQ==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz", + "integrity": "sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.33", - "@vue/shared": "3.2.33" + "@vue/compiler-core": "3.2.37", + "@vue/shared": "3.2.37" } }, "@vue/compiler-sfc": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.33.tgz", - "integrity": "sha512-H8D0WqagCr295pQjUYyO8P3IejM3vEzeCO1apzByAEaAR/WimhMYczHfZVvlCE/9yBaEu/eu9RdiWr0kF8b71Q==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz", + "integrity": "sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.33", - "@vue/compiler-dom": "3.2.33", - "@vue/compiler-ssr": "3.2.33", - "@vue/reactivity-transform": "3.2.33", - "@vue/shared": "3.2.33", + "@vue/compiler-core": "3.2.37", + "@vue/compiler-dom": "3.2.37", + "@vue/compiler-ssr": "3.2.37", + "@vue/reactivity-transform": "3.2.37", + "@vue/shared": "3.2.37", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } } }, "@vue/compiler-ssr": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.33.tgz", - "integrity": "sha512-XQh1Xdk3VquDpXsnoCd7JnMoWec9CfAzQDQsaMcSU79OrrO2PNR0ErlIjm/mGq3GmBfkQjzZACV+7GhfRB8xMQ==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz", + "integrity": "sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.33", - "@vue/shared": "3.2.33" + "@vue/compiler-dom": "3.2.37", + "@vue/shared": "3.2.37" } }, "@vue/reactivity-transform": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.33.tgz", - "integrity": "sha512-4UL5KOIvSQb254aqenW4q34qMXbfZcmEsV/yVidLUgvwYQQ/D21bGX3DlgPUGI3c4C+iOnNmDCkIxkILoX/Pyw==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz", + "integrity": "sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.33", - "@vue/shared": "3.2.33", + "@vue/compiler-core": "3.2.37", + "@vue/shared": "3.2.37", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.33", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.33.tgz", - "integrity": "sha512-UBc1Pg1T3yZ97vsA2ueER0F6GbJebLHYlEi4ou1H5YL4KWvMOOWwpYo9/QpWq93wxKG6Wo13IY74Hcn/f7c7Bg==", + "version": "3.2.37", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.37.tgz", + "integrity": "sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw==", "dev": true }, "abbrev": { @@ -10598,9 +10482,9 @@ } }, "acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==" + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==" }, "acorn-jsx": { "version": "5.3.2", @@ -10704,7 +10588,7 @@ "archy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", "dev": true }, "are-we-there-yet": { @@ -10730,13 +10614,13 @@ "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", "dev": true }, "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, "array-union": { "version": "2.1.0", @@ -10762,9 +10646,9 @@ "dev": true }, "async": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", - "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" }, "atob": { "version": "2.1.2", @@ -10904,14 +10788,14 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" } } }, "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, "boxen": { "version": "5.1.2", @@ -10955,15 +10839,15 @@ } }, "browserslist": { - "version": "4.20.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz", - "integrity": "sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==", + "version": "4.20.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.4.tgz", + "integrity": "sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001317", - "electron-to-chromium": "^1.4.84", + "caniuse-lite": "^1.0.30001349", + "electron-to-chromium": "^1.4.147", "escalade": "^3.1.1", - "node-releases": "^2.0.2", + "node-releases": "^2.0.5", "picocolors": "^1.0.0" } }, @@ -10980,7 +10864,7 @@ "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==" }, "buffer-from": { "version": "1.1.2", @@ -10990,7 +10874,7 @@ "builtins": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=" + "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==" }, "bytes": { "version": "3.1.2", @@ -11141,9 +11025,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001332", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001332.tgz", - "integrity": "sha512-10T30NYOEQtN6C11YGg411yebhvpnC6Z102+B95eAsN0oB6KUs01ivE8u+G6FMIRtIrVlYXhL+LUwQ3/hXwDWw==", + "version": "1.0.30001352", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001352.tgz", + "integrity": "sha512-GUgH8w6YergqPQDGWhJGt8GDRnY0L/iJVQcU3eJ46GYf52R8tk0Wxp0PymuFVZboJYXGiCqwozAYZNRjVj6IcA==", "dev": true }, "catharsis": { @@ -11287,7 +11171,7 @@ "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true }, "string-width": { @@ -11383,7 +11267,7 @@ "clean-yaml-object": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", - "integrity": "sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=", + "integrity": "sha512-3yONmlN9CSAkzNwnRCiJQ7Q2xK5mWuEfL3PuTZcAUzhObbXsfsnMptJzXwz93nc5zn9V9TwCVMmV7w4xsm43dw==", "dev": true }, "cli-boxes": { @@ -11431,12 +11315,12 @@ "clone": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=" + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==" }, "clone-response": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "integrity": "sha512-yjLXh88P599UOyPTFX0POsd7WxnbsVsGohcwzHOLspIhhpalPw1BcqED8NblyZLKcGrL8dTgMlcaZxV2jAD41Q==", "dev": true, "requires": { "mimic-response": "^1.0.0" @@ -11462,7 +11346,7 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, "color-support": { "version": "1.1.3", @@ -11494,7 +11378,7 @@ "commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, "compressible": { @@ -11522,7 +11406,7 @@ "bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" }, "debug": { "version": "2.6.9", @@ -11535,14 +11419,14 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" } } }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, "concat-stream": { "version": "1.6.2", @@ -11636,7 +11520,7 @@ "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" }, "content-disposition": { "version": "0.5.4", @@ -11670,7 +11554,7 @@ "convert-to-spaces": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", - "integrity": "sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=", + "integrity": "sha512-cj09EBuObp9gZNQCzc7hByQyrs6jVGE+o9kSJmeUoj+GiPiJvi5LYqEH/Hmme4+MTLHM+Ejtq+FChpjjEnsPdQ==", "dev": true }, "cookie": { @@ -11681,7 +11565,7 @@ "cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" }, "copy-concurrently": { "version": "1.0.5", @@ -11780,13 +11664,6 @@ "inherits": "^2.0.4", "source-map": "^0.6.1", "source-map-resolve": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } } }, "css-select": { @@ -11809,7 +11686,7 @@ "currently-unhandled": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==", "dev": true, "requires": { "array-find-index": "^1.0.1" @@ -11818,7 +11695,7 @@ "cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=" + "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==" }, "d": { "version": "1.0.1", @@ -11856,13 +11733,13 @@ "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true }, "decamelize-keys": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "integrity": "sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==", "dev": true, "requires": { "decamelize": "^1.1.0", @@ -11872,7 +11749,7 @@ "map-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", "dev": true } } @@ -11880,12 +11757,12 @@ "decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==" }, "decompress-response": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", "dev": true, "requires": { "mimic-response": "^1.0.0" @@ -11915,7 +11792,7 @@ "defaults": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", "dev": true, "requires": { "clone": "^1.0.2" @@ -11924,7 +11801,7 @@ "clone": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", "dev": true } } @@ -11936,9 +11813,9 @@ "dev": true }, "del": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", - "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", "dev": true, "requires": { "globby": "^11.0.1", @@ -11954,7 +11831,7 @@ "delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" }, "depcheck": { "version": "1.4.3", @@ -12016,7 +11893,7 @@ "deps-regex": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", - "integrity": "sha1-UYZnt2kUYKXn4KNBvnbrfOgJAYQ=", + "integrity": "sha512-3tzwGYogSJi8HoG93R5x9NrdefZQOXgHgGih/7eivloOq6yC6O+yoFxZnkgP661twvfILONfoKRdF9GQOGx2RA==", "dev": true }, "destroy": { @@ -12060,9 +11937,9 @@ } }, "diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", + "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", "dev": true }, "dir-glob": { @@ -12139,7 +12016,7 @@ "duplexer2": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", "dev": true, "requires": { "readable-stream": "^2.0.2" @@ -12174,7 +12051,7 @@ "duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "integrity": "sha512-CEj8FwwNA4cVH2uFCoHUrmojhYh1vmCdOaneKJXwkeY1i9jnlslVo9dx+hQ5Hl9GnH/Bwy/IjxAyOePyPKYnzA==", "dev": true }, "duplexify": { @@ -12235,12 +12112,12 @@ "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "electron-to-chromium": { - "version": "1.4.117", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.117.tgz", - "integrity": "sha512-ypZHxY+Sf/PXu7LVN+xoeanyisnJeSOy8Ki439L/oLueZb4c72FI45zXcK3gPpmTwyufh9m6NnbMLXnJh/0Fxg==", + "version": "1.4.152", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.152.tgz", + "integrity": "sha512-jk4Ju5SGZAQQJ1iI4Rgru7dDlvkQPLpNPWH9gIZmwCD4YteA5Bbk1xPcPDUf5jUYs3e1e80RXdi8XgKQZaigeg==", "dev": true }, "emittery": { @@ -12257,7 +12134,7 @@ "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" }, "encoding": { "version": "0.1.13", @@ -12293,13 +12170,13 @@ "equal-length": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", - "integrity": "sha1-IcoRLUirJLTh5//A5TOdMf38J0w=", + "integrity": "sha512-TK2m7MvWPt/v3dan0BCNp99pytIE5UGrUj7F0KZirNX8xz8fDFUAZfgm8uB5FuQq9u0sMeDocYBfEhsd1nwGoA==", "dev": true }, "err-code": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", - "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=" + "integrity": "sha512-CJAN+O0/yA1CKfRn9SXOGctSpEM7DCon/r/5r2eXFMY2zCCJBasFhcM5I+1kh3Ap11FsQCX+vGHceNPvpWKhoA==" }, "error-ex": { "version": "1.3.2", @@ -12328,7 +12205,7 @@ "es6-iterator": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", "requires": { "d": "1", "es5-ext": "^0.10.35", @@ -12338,7 +12215,7 @@ "es6-map": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "integrity": "sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A==", "requires": { "d": "1", "es5-ext": "~0.10.14", @@ -12356,7 +12233,7 @@ "es6-promisify": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", "requires": { "es6-promise": "^4.0.3" } @@ -12364,7 +12241,7 @@ "es6-set": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "integrity": "sha512-7S8YXIcUfPMOr3rqJBVMePAbRsD1nWeSMQ86K/lDI76S3WKXz+KWILvTIPbTroubOkZTGh+b+7/xIIphZXNYbA==", "requires": { "d": "1", "es5-ext": "~0.10.14", @@ -12376,7 +12253,7 @@ "es6-symbol": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "integrity": "sha512-exfuQY8UGtn/N+gL1iKkH8fpNd5sJ760nJq6mmZAHldfxMD5kX07lbQuYlspoXsuknXNv9Fb7y2GsPOnQIbxHg==", "requires": { "d": "1", "es5-ext": "~0.10.14" @@ -12419,7 +12296,7 @@ "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" }, "escape-string-regexp": { "version": "4.0.0", @@ -12434,7 +12311,7 @@ "escope": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "integrity": "sha512-75IUQsusDdalQEW/G/2esa87J7raqdJF+Ca0/Xm5C3Q58Nr4yVYjZGp/P1+2xiEVgXRrA39dpRb8LcshajbqDQ==", "requires": { "es6-map": "^0.1.3", "es6-weak-map": "^2.0.1", @@ -12443,12 +12320,12 @@ } }, "eslint": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.13.0.tgz", - "integrity": "sha512-D+Xei61eInqauAyTJ6C0q6x9mx7kTUC1KZ0m0LSEexR0V+e94K12LmWX076ZIsldwfQ2RONdaJe0re0TRGQbRQ==", + "version": "8.17.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.17.0.tgz", + "integrity": "sha512-gq0m0BTJfci60Fz4nczYxNAlED+sMcihltndR8t9t1evnU/azx53x3t2UHXC/uRjcbvRw/XctpaNygSTcQD+Iw==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.2.1", + "@eslint/eslintrc": "^1.3.0", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -12459,14 +12336,14 @@ "eslint-scope": "^7.1.1", "eslint-utils": "^3.0.0", "eslint-visitor-keys": "^3.3.0", - "espree": "^9.3.1", + "espree": "^9.3.2", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", "glob-parent": "^6.0.1", - "globals": "^13.6.0", + "globals": "^13.15.0", "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", @@ -12475,7 +12352,7 @@ "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.2", "natural-compare": "^1.4.0", "optionator": "^0.9.1", "regexpp": "^3.2.0", @@ -12495,9 +12372,9 @@ } }, "globals": { - "version": "13.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", - "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "version": "13.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", + "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -12575,12 +12452,12 @@ "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==" }, "espree": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", - "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", + "version": "9.3.2", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz", + "integrity": "sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==", "requires": { - "acorn": "^8.7.0", - "acorn-jsx": "^5.3.1", + "acorn": "^8.7.1", + "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.3.0" } }, @@ -12642,12 +12519,12 @@ "etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" }, "event-emitter": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", "requires": { "d": "1", "es5-ext": "~0.10.14" @@ -12661,62 +12538,51 @@ "events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y=", + "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, "express": { - "version": "4.17.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", - "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", + "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.19.2", + "body-parser": "1.20.0", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.2", + "cookie": "0.5.0", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "~1.1.2", + "depd": "2.0.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "~1.1.2", + "finalhandler": "1.2.0", "fresh": "0.5.2", + "http-errors": "2.0.0", "merge-descriptors": "1.0.1", "methods": "~1.1.2", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", "proxy-addr": "~2.0.7", - "qs": "6.9.7", + "qs": "6.10.3", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.17.2", - "serve-static": "1.14.2", + "send": "0.18.0", + "serve-static": "1.15.0", "setprototypeof": "1.2.0", - "statuses": "~1.5.0", + "statuses": "2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" }, "dependencies": { - "body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" - } + "cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" }, "debug": { "version": "2.6.9", @@ -12726,51 +12592,10 @@ "ms": "2.0.0" } }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - } - }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } - }, - "qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==" - }, - "raw-body": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", - "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", - "requires": { - "bytes": "3.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "safe-buffer": { "version": "5.2.1", @@ -12830,7 +12655,7 @@ "fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, "fastq": { @@ -12858,7 +12683,7 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true } } @@ -12893,16 +12718,16 @@ } }, "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", "requires": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", - "statuses": "~1.5.0", + "statuses": "2.0.1", "unpipe": "~1.0.0" }, "dependencies": { @@ -12917,15 +12742,7 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" } } }, @@ -12998,9 +12815,9 @@ } }, "follow-redirects": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", - "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==" + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", + "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==" }, "foreground-child": { "version": "2.0.0", @@ -13020,12 +12837,12 @@ "fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" }, "from2": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", "requires": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" @@ -13072,7 +12889,7 @@ "fs-write-stream-atomic": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==", "requires": { "graceful-fs": "^4.1.2", "iferr": "^0.1.5", @@ -13107,7 +12924,7 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "fsevents": { "version": "2.3.2", @@ -13124,7 +12941,7 @@ "functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, "gauge": { @@ -13161,13 +12978,13 @@ "dev": true }, "get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", + "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", "requires": { "function-bind": "^1.1.1", "has": "^1.0.3", - "has-symbols": "^1.0.1" + "has-symbols": "^1.0.3" } }, "get-package-type": { @@ -13179,7 +12996,7 @@ "get-port": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw=" + "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==" }, "get-stdin": { "version": "7.0.0", @@ -13196,14 +13013,14 @@ } }, "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } @@ -13298,7 +13115,7 @@ "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dev": true, "requires": { "ansi-regex": "^2.0.0" @@ -13307,7 +13124,7 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true } } @@ -13325,7 +13142,7 @@ "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" }, "has-yarn": { "version": "2.1.0", @@ -13351,7 +13168,7 @@ "hpack.js": { "version": "2.1.6", "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", "requires": { "inherits": "^2.0.1", "obuf": "^1.0.0", @@ -13408,7 +13225,7 @@ "http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" }, "http-errors": { "version": "2.0.0", @@ -13420,13 +13237,6 @@ "setprototypeof": "1.2.0", "statuses": "2.0.1", "toidentifier": "1.0.1" - }, - "dependencies": { - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" - } } }, "http-proxy": { @@ -13459,7 +13269,7 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" } } }, @@ -13485,7 +13295,7 @@ "humanize-ms": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", "requires": { "ms": "^2.0.0" } @@ -13507,7 +13317,7 @@ "iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" + "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==" }, "ignore": { "version": "5.2.0", @@ -13515,9 +13325,9 @@ "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==" }, "ignore-by-default": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-2.0.0.tgz", - "integrity": "sha512-+mQSgMRiFD3L3AOxLYOCxjIq4OnAmo5CIuC+lj5ehCJcPtV++QacEV7FdpzvYxH6DaOySWzQU6RR0lPLy37ckA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-2.1.0.tgz", + "integrity": "sha512-yiWd4GVmJp0Q6ghmM2B/V3oZGRmjrKLXvHR3TE1nfoXsmoggllfZUQe74EN0fJdPFZu2NIvNdrMMLm3OsV7Ohw==", "dev": true }, "ignore-walk": { @@ -13529,9 +13339,9 @@ } }, "immutable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0.tgz", - "integrity": "sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", + "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", "dev": true }, "import-fresh": { @@ -13547,7 +13357,7 @@ "import-lazy": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", "dev": true }, "import-local": { @@ -13563,7 +13373,7 @@ "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" }, "indent-string": { "version": "4.0.0", @@ -13579,7 +13389,7 @@ "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "requires": { "once": "^1.3.0", "wrappy": "1" @@ -13607,7 +13417,7 @@ "ip": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" + "integrity": "sha512-rBtCAQAJm8A110nbwn6YdveUnuZH3WrC36IwkRXxDnq53JvXA2NVQvB7IHyKomxK1MJ4VDNw3UtFDdXQ+AvLYA==" }, "ipaddr.js": { "version": "1.9.1", @@ -13623,7 +13433,7 @@ "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" }, "is-binary-path": { "version": "2.1.0", @@ -13666,7 +13476,7 @@ "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" }, "is-fullwidth-code-point": { "version": "3.0.0", @@ -13737,7 +13547,7 @@ "is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", "dev": true }, "is-plain-object": { @@ -13761,7 +13571,7 @@ "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "dev": true }, "is-unicode-supported": { @@ -13794,12 +13604,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "istanbul-lib-coverage": { "version": "3.2.0", @@ -13837,18 +13647,17 @@ } }, "istanbul-lib-processinfo": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.2.tgz", - "integrity": "sha512-kOwpa7z9hme+IBPZMzQ5vdQj8srYgAtaRqeI48NGmAQ+/5yKiHLV0QbYqQpxsdEF0+w14SoB8YbnHKcXE2KnYw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz", + "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==", "dev": true, "requires": { "archy": "^1.0.0", - "cross-spawn": "^7.0.0", - "istanbul-lib-coverage": "^3.0.0-alpha.1", - "make-dir": "^3.0.0", + "cross-spawn": "^7.0.3", + "istanbul-lib-coverage": "^3.2.0", "p-map": "^3.0.0", "rimraf": "^3.0.0", - "uuid": "^3.3.3" + "uuid": "^8.3.2" }, "dependencies": { "p-map": { @@ -13882,14 +13691,6 @@ "debug": "^4.1.1", "istanbul-lib-coverage": "^3.0.0", "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } } }, "istanbul-reports": { @@ -13917,7 +13718,7 @@ "js-string-escape": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", - "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", + "integrity": "sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg==", "dev": true }, "js-tokens": { @@ -13985,7 +13786,7 @@ "json-buffer": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", "dev": true }, "json-parse-better-errors": { @@ -14006,7 +13807,7 @@ "json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, "json5": { @@ -14018,7 +13819,7 @@ "jsonparse": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=" + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==" }, "JSONStream": { "version": "1.3.5", @@ -14123,7 +13924,7 @@ "parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, "requires": { "error-ex": "^1.3.1", @@ -14133,7 +13934,7 @@ "strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true }, "type-fest": { @@ -14169,25 +13970,25 @@ "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true }, "lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", "dev": true }, "lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", "dev": true }, "lodash.isfinite": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", - "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=" + "integrity": "sha512-7FGG40uhC8Mm633uKW1r58aElFlBlxCrg9JfSi3P6aYiWmfiWF0PgMd86ZUsxE5GwWPdHoS2+48bwTh2VPkIQA==" }, "lodash.merge": { "version": "4.6.2", @@ -14198,7 +13999,7 @@ "lodash.throttle": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", "dev": true }, "log-symbols": { @@ -14328,15 +14129,15 @@ } }, "markdown-it-anchor": { - "version": "8.6.2", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.2.tgz", - "integrity": "sha512-JNaekTlIwwyYGBN3zifZDxgz4bSL8sbEj58fdTZGmPSMMGXBZapFjcZk2I33Jy79c1fvCKHpF7MA/67FOTjvzA==", + "version": "8.6.4", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.4.tgz", + "integrity": "sha512-Ul4YVYZNxMJYALpKtu+ZRdrryYt/GlQ5CK+4l1bp/gWXOG2QWElt6AqF3Mih/wfUKdZbNAZVXGR73/n6U/8img==", "requires": {} }, "marked": { - "version": "4.0.14", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.14.tgz", - "integrity": "sha512-HL5sSPE/LP6U9qKgngIIPTthuxC0jrfxpYMZ3LdGDD3vTnLs59m2Z7r6+LNDR3ToqEQdkKd6YaaEfJhodJmijQ==" + "version": "4.0.17", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.17.tgz", + "integrity": "sha512-Wfk0ATOK5iPxM4ptrORkFemqroz0ZDxp5MWfYA7H/F+wO17NRWV5Ypxi6p3g2Xmw2bKeiYOl6oVnLHKxBA0VhA==" }, "matcher": { "version": "3.0.0", @@ -14359,12 +14160,12 @@ "mdurl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" }, "mem": { "version": "8.1.1", @@ -14406,7 +14207,7 @@ "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" }, "merge2": { "version": "1.4.1", @@ -14416,7 +14217,7 @@ "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" }, "micromatch": { "version": "4.0.5", @@ -14495,7 +14296,7 @@ "arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true } } @@ -14559,7 +14360,7 @@ "normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", "dev": true, "requires": { "remove-trailing-separator": "^1.0.1" @@ -14570,7 +14371,7 @@ "move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==", "requires": { "aproba": "^1.1.1", "copy-concurrently": "^1.0.0", @@ -14622,15 +14423,15 @@ } }, "nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", "dev": true }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, "negotiator": { @@ -14659,7 +14460,7 @@ "isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "dev": true }, "path-to-regexp": { @@ -14693,9 +14494,9 @@ } }, "node-releases": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz", - "integrity": "sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", + "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", "dev": true }, "nopt": { @@ -14841,9 +14642,9 @@ } }, "nth-check": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", - "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", "requires": { "boolbase": "^1.0.0" } @@ -15008,12 +14809,12 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" }, "object-inspect": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", - "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==" + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" }, "obuf": { "version": "1.1.2", @@ -15036,7 +14837,7 @@ "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "requires": { "wrappy": "1" } @@ -15115,12 +14916,12 @@ "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==" }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==" }, "osenv": { "version": "0.1.5", @@ -15140,7 +14941,7 @@ "p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", "dev": true }, "p-event": { @@ -15155,7 +14956,7 @@ "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", "dev": true }, "p-limit": { @@ -15391,12 +15192,12 @@ "path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" }, "path-key": { "version": "3.1.1", @@ -15412,7 +15213,7 @@ "path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" }, "path-type": { "version": "4.0.0", @@ -15535,12 +15336,12 @@ } }, "postcss": { - "version": "8.4.12", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz", - "integrity": "sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==", + "version": "8.4.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", + "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", "dev": true, "requires": { - "nanoid": "^3.3.1", + "nanoid": "^3.3.4", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" } @@ -15554,18 +15355,18 @@ "prepend-http": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", "dev": true }, "pretty-data": { "version": "0.40.0", "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha1-Vyqo6iNGdGerlLa1Jmpv2cj93XI=" + "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==" }, "pretty-hrtime": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" + "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==" }, "pretty-ms": { "version": "7.0.1", @@ -15593,12 +15394,12 @@ "promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" }, "promise-retry": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", - "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", + "integrity": "sha512-StEy2osPr28o17bIW776GtwO6+Q+M9zPiZkYfosciUUMYqjhU/ffwRAH0zN2+uvGyUsn8/YICIHRzLbPacpZGw==", "requires": { "err-code": "^1.0.0", "retry": "^0.10.0" @@ -15607,7 +15408,7 @@ "proto-list": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", "dev": true }, "protoduck": { @@ -15630,7 +15431,7 @@ "pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", "dev": true }, "pump": { @@ -15741,7 +15542,7 @@ "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", "dev": true } } @@ -15874,7 +15675,7 @@ "release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", "dev": true, "requires": { "es6-error": "^4.0.1" @@ -15883,7 +15684,7 @@ "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", "dev": true }, "replacestream": { @@ -15899,7 +15700,7 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" }, "readable-stream": { "version": "2.3.7", @@ -15928,7 +15729,7 @@ "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true }, "require-main-filename": { @@ -15940,13 +15741,13 @@ "require-package-name": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/require-package-name/-/require-package-name-2.0.1.tgz", - "integrity": "sha1-wR6XJ2tluOKSP3Xav1+y7ww4Qbk=", + "integrity": "sha512-uuoJ1hU/k6M0779t3VMVIYpb2VMJk05cehCaABFhXaibcbvfgR8wKiozLjVFSzJPmQMRqIcO0HMyTFqfV09V6Q==", "dev": true }, "requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, "requizzle": { "version": "0.2.3", @@ -15992,7 +15793,7 @@ "responselike": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", "dev": true, "requires": { "lowercase-keys": "^1.0.0" @@ -16011,7 +15812,7 @@ "retry": { "version": "0.10.1", "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", - "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=" + "integrity": "sha512-ZXUSQYTHdl3uS7IuCehYfMzKyIDBNoAuUblvy5oGO5UJSUTmStUUVPXbA9Qxd173Bgre53yCQczQuHgRWAdvJQ==" }, "reusify": { "version": "1.0.4", @@ -16027,9 +15828,9 @@ } }, "router": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/router/-/router-1.3.6.tgz", - "integrity": "sha512-gsjhou+LFApzkIP8VDrouG6Z4pqkeF11n3o5orlwPPvPTl0x7c+dbF71itKOhDoFHygmc3N3uqm55Uq/gIDUwg==", + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/router/-/router-1.3.7.tgz", + "integrity": "sha512-bYnD9Vv2287+g3AIll2kHITLtHV5+fldq6hVzaul9RbdGme77mvBY/1cO+ahsgstA2RI6DSg/j4W1TYHm4Lz4g==", "requires": { "array-flatten": "3.0.0", "debug": "2.6.9", @@ -16056,7 +15857,7 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" } } }, @@ -16071,7 +15872,7 @@ "run-queue": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==", "requires": { "aproba": "^1.1.1" }, @@ -16094,9 +15895,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.50.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.50.1.tgz", - "integrity": "sha512-noTnY41KnlW2A9P8sdwESpDmo+KBNkukI1i8+hOK3footBUcohNHtdOJbckp46XO95nuvcHDDZ+4tmOnpK3hjw==", + "version": "1.52.3", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.52.3.tgz", + "integrity": "sha512-LNNPJ9lafx+j1ArtA7GyEJm9eawXN8KlA1+5dF6IZyoONg1Tyo/g+muOsENWJH/2Q1FHbbV4UwliU0cXMa/VIA==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -16121,7 +15922,7 @@ "select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" }, "semver": { "version": "7.3.7", @@ -16149,7 +15950,7 @@ "semver-compare": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", "dev": true }, "semver-diff": { @@ -16170,23 +15971,23 @@ } }, "send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", - "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", "requires": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "mime": "1.6.0", "ms": "2.1.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, "dependencies": { "debug": { @@ -16200,39 +16001,9 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" } } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" - }, - "http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - } - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { - "ee-first": "1.1.1" - } } } }, @@ -16254,25 +16025,25 @@ } }, "serve-static": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", - "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", "requires": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.2" + "send": "0.18.0" } }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" }, "set-cookie-parser": { - "version": "2.4.8", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.4.8.tgz", - "integrity": "sha512-edRH8mBKEWNVIVMKejNnuJxleqYE/ZSdcT8/Nem9/mmosx12pctd80s2Oy00KNZzrogMZS5mauK2/ymL1bvlvg==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.5.0.tgz", + "integrity": "sha512-cHMAtSXilfyBePduZEBVPTCftTQWz6ehWJD5YNUg4mqvRosrrjKbo4WS8JkB0/RxonMoohHm7cOGH60mDkRQ9w==" }, "setprototypeof": { "version": "1.2.0", @@ -16307,7 +16078,7 @@ "sigmund": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", + "integrity": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==", "dev": true }, "signal-exit": { @@ -16405,10 +16176,9 @@ } }, "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "source-map-js": { "version": "1.0.2", @@ -16432,13 +16202,6 @@ "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } } }, "sourcemap-codec": { @@ -16516,7 +16279,7 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, "ssri": { @@ -16545,9 +16308,9 @@ } }, "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" }, "stream-each": { "version": "1.2.3", @@ -16676,12 +16439,12 @@ "taffydb": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" + "integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA==" }, "tap-nyan": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", - "integrity": "sha1-K40TofnKUcGzraDGzNsRd9IGW7A=", + "integrity": "sha512-t+/3QEJSeo03QsQ/QLfgVg/gQUAHLMmYdzLx8v+08C8/RY0Vse286G+LT/AhuDhMSMsmOoNttAHN/DygxOgSTA==", "dev": true, "requires": { "chalk": "^1.1.3", @@ -16693,19 +16456,19 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true }, "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { "ansi-styles": "^2.2.1", @@ -16718,7 +16481,7 @@ "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true } } @@ -16726,19 +16489,19 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true }, "has-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", "dev": true }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dev": true, "requires": { "ansi-regex": "^2.0.0" @@ -16747,7 +16510,7 @@ "supports-color": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", "dev": true, "requires": { "has-flag": "^1.0.0" @@ -16758,7 +16521,7 @@ "tap-parser": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", - "integrity": "sha1-uUf2ngs+U9S5IBH2zFUuFtrcfsk=", + "integrity": "sha512-mSFtCjQTlZiHEJWgcl+pYVIK6+UgQNP3YeDEMVn9qwrQ1xb2CpWBeuZMbd+6sCqrGOdaTAiup6KnDv8cOAhu3A==", "dev": true, "requires": { "events-to-array": "^1.0.1", @@ -16875,7 +16638,7 @@ "tap-parser": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", - "integrity": "sha1-Xi9pcGEfB5x8+FfeHceqG0gN56U=", + "integrity": "sha512-uXKcosa0qoSjeh73dhmX+OpJvpigDxUciOhBcbGUKtmwzEFJjUT1Ql5dpg4M9I1UjXT9b+6n1W05FB8QmKossA==", "dev": true, "requires": { "events-to-array": "^1.0.1", @@ -16942,27 +16705,26 @@ "temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", + "dev": true + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", "dev": true } } }, "terser": { - "version": "5.12.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz", - "integrity": "sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==", + "version": "5.14.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.1.tgz", + "integrity": "sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ==", "requires": { + "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", "commander": "^2.20.0", - "source-map": "~0.7.2", "source-map-support": "~0.5.20" - }, - "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" - } } }, "test-exclude": { @@ -16979,13 +16741,13 @@ "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" }, "through2": { "version": "2.0.5", @@ -17023,13 +16785,13 @@ "time-zone": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", - "integrity": "sha1-mcW/VZWJZq9tBtg73zgA3IL67F0=", + "integrity": "sha512-TIsDdtKo6+XrPtiTm1ssmMngN1sAhyKnTO2kunQWqNPWIVvCm15Wmw4SWInwTVgJ5u/Tr04+8Ei9TNcw4x4ONA==", "dev": true }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true }, "to-readable-stream": { @@ -17087,9 +16849,9 @@ "dev": true }, "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" }, "type": { "version": "1.2.0", @@ -17128,7 +16890,7 @@ "typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" }, "typedarray-to-buffer": { "version": "3.1.5", @@ -17145,9 +16907,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "underscore": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.2.tgz", - "integrity": "sha512-ekY1NhRzq0B08g4bGuX4wd2jZx5GnKz6mKSqFL4nqBlfyMGiG10gDFhDTMEfYmDL6Jy0FUIZp7wiRB+0BP7J2g==" + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.4.tgz", + "integrity": "sha512-BQFnUDuAQ4Yf/cYY5LNrK9NCJFKriaRbD9uR1fTeXnBeoa97W0i41qkZfGO9pSo8I5KzjAcSY2XYtdf0oKd7KQ==" }, "unique-filename": { "version": "1.1.1", @@ -17177,7 +16939,7 @@ "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" }, "update-notifier": { "version": "5.1.0", @@ -17212,7 +16974,7 @@ "url-parse-lax": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", "dev": true, "requires": { "prepend-http": "^2.0.0" @@ -17221,17 +16983,17 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" }, "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true }, "v8-compile-cache": { @@ -17252,7 +17014,7 @@ "validate-npm-package-name": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "integrity": "sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==", "requires": { "builtins": "^1.0.3" } @@ -17260,7 +17022,7 @@ "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" }, "wbuf": { "version": "1.7.3", @@ -17273,7 +17035,7 @@ "wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dev": true, "requires": { "defaults": "^1.0.3" @@ -17297,7 +17059,7 @@ "which-module": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", "dev": true }, "wide-align": { @@ -17363,7 +17125,7 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "write-file-atomic": { "version": "3.0.3", @@ -17402,7 +17164,7 @@ "xmlbuilder": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz", - "integrity": "sha1-qlijBBoGb5DqoWwvU4n/GfP0YaU=", + "integrity": "sha512-oEePiEefhQhAeUnwRnIBLBWmk/fsWWbQ53EEWsRuzECbQ3m5o/Esmq6H47CYYwSLW+Ynt0rS9hd0pd2ogMAWjg==", "dev": true, "requires": { "lodash": "^4.0.0" @@ -17426,7 +17188,7 @@ "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", "dev": true }, "yaml": { From fce301e7f4c438e4f0d52a708862291efe5d3517 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 4 Dec 2020 18:55:42 +0100 Subject: [PATCH 0620/1272] [ui5-project][BREAKING] Implement Project Graph, build execution * Replace the JSON-object based dependency tree handling with a graph representation * Projects are now represented by classes with documented APIs * Projects can be accessed by extensions defining specVersion >=2.7 * Speed up resolution of package.json dependencies * Make "ui5.dependencies" package.json configuration obsolete * Move build execution from ui5-builder to ui5-project * ui5-builder scope reduced top provides task implementations only * Build: Determine automatically whether a project-build requires dependencies to be built and build them * Build: Add new option 'createBuildManifest'. This will create a manifest file in the target directory that allows reuse of the build result of library and theme-library projects in other project builds (RFC0011) This PR will need additional follow-up to add more test cases, cleanup JSDoc and possibly add more features described in the RFCs. This is a nicer version of https://github.com/SAP/ui5-project/pull/394 Implements RFC0009: https://github.com/SAP/ui5-tooling/pull/501 Implements RFC0011: https://github.com/SAP/ui5-tooling/pull/612 BREAKING CHANGE: * normalizer and projectTree APIs have been removed. Use generateProjectGraph instead * Going forward only specification versions 2.0 and higher are supported * In case a legacy specification version is detected, an automatic, transparent migration is attempted. * Build: * The "dev" build mode has been removed * The task "generateVersionInfo" is no longer executed for application projects by default. You may enable it again using the includedTasks parameter --- packages/project/index.js | 24 +- .../lib/buildDefinitions/AbstractBuilder.js | 327 +++ .../buildDefinitions/ApplicationBuilder.js | 113 + .../lib/buildDefinitions/LibraryBuilder.js | 152 ++ .../lib/buildDefinitions/ModuleBuilder.js | 7 + .../buildDefinitions/ThemeLibraryBuilder.js | 40 + .../lib/buildDefinitions/getInstance.js | 27 + .../project/lib/buildHelpers/BuildContext.js | 55 + .../lib/buildHelpers/ProjectBuildContext.js | 96 + .../lib/buildHelpers/composeProjectList.js | 193 ++ .../lib/buildHelpers/composeTaskList.js | 107 + .../lib/buildHelpers/createBuildManifest.js | 55 + packages/project/lib/builder.js | 319 +++ packages/project/lib/generateProjectGraph.js | 171 ++ packages/project/lib/graph/Module.js | 446 +++ packages/project/lib/graph/ProjectGraph.js | 507 ++++ packages/project/lib/graph/ShimCollection.js | 53 + .../project/lib/graph/helpers/ui5Framework.js | 233 ++ .../project/lib/graph/projectGraphBuilder.js | 322 +++ .../lib/graph/providers/DependencyTree.js | 53 + .../providers/NodePackageDependencies.js | 152 ++ packages/project/lib/normalizer.js | 87 - packages/project/lib/projectPreprocessor.js | 662 ----- .../lib/specifications/ComponentProject.js | 351 +++ .../project/lib/specifications/Extension.js | 16 + .../project/lib/specifications/Project.js | 164 ++ .../lib/specifications/Specification.js | 231 ++ .../lib/specifications/types/Application.js | 209 ++ .../lib/specifications/types/Library.js | 495 ++++ .../lib/specifications/types/Module.js | 112 + .../lib/specifications/types/ThemeLibrary.js | 128 + .../types/extensions/ProjectShim.js | 32 + .../types/extensions/ServerMiddleware.js | 19 + .../specifications/types/extensions/Task.js | 19 + packages/project/lib/translators/npm.js | 523 ---- packages/project/lib/translators/static.js | 56 - .../project/lib/translators/ui5Framework.js | 294 -- packages/project/package.json | 1 + .../collection/library.a/ui5.yaml | 2 +- .../collection/library.b/ui5.yaml | 2 +- .../collection/library.c/ui5.yaml | 2 +- .../node_modules/library.d/ui5.yaml | 2 +- .../node_modules/collection/ui5.yaml | 12 + .../node_modules/library.d/ui5.yaml | 2 +- .../application.a/ui5-test-configPath.yaml | 7 + .../test/fixtures/application.a/ui5.yaml | 2 +- .../collection/library.a/ui5.yaml | 2 +- .../collection/library.b/ui5.yaml | 2 +- .../collection/library.c/ui5.yaml | 2 +- .../node_modules/library.d/ui5.yaml | 2 +- .../node_modules/library.d/ui5.yaml | 2 +- .../test/fixtures/application.b/ui5.yaml | 2 +- .../node_modules/library.d/ui5.yaml | 2 +- .../library.e/src/library/e/.library | 2 +- .../node_modules/library.e/ui5.yaml | 12 +- .../test/fixtures/application.c/ui5.yaml | 2 +- .../node_modules/library.d/ui5.yaml | 2 +- .../node_modules/library.d-depender/ui5.yaml | 2 +- .../library.e/node_modules/library.d/ui5.yaml | 7 +- .../library.e/src/library/e/.library | 2 +- .../node_modules/library.e/ui5.yaml | 12 +- .../test/fixtures/application.c2/ui5.yaml | 2 +- .../src/library/{d => d-depender}/.library | 2 +- .../src/library/{d => d-depender}/some.js | 0 .../node_modules/library.d-depender/ui5.yaml | 2 +- .../node_modules/library.d/ui5.yaml | 2 +- .../library.e/src/library/e/.library | 2 +- .../node_modules/library.e/ui5.yaml | 12 +- .../test/fixtures/application.c3/ui5.yaml | 2 +- .../library.e/node_modules/library.d/ui5.yaml | 4 +- .../library.e/src/library/e/.library | 2 +- .../node_modules/library.e/ui5.yaml | 12 +- .../test/fixtures/application.d/ui5.yaml | 2 +- .../node_modules/library.e/ui5.yaml | 2 +- .../test/fixtures/application.e/ui5.yaml | 2 +- .../node_modules/library.d/ui5.yaml | 2 +- .../library.e/src/library/e/.library | 2 +- .../node_modules/library.e/ui5.yaml | 12 +- .../test/fixtures/application.f/ui5.yaml | 2 +- .../node_modules/library.d/ui5.yaml | 2 +- .../test/fixtures/application.g/ui5.yaml | 2 +- .../test/fixtures/application.h/pom.xml | 41 + .../application.h/projectDependencies.yaml | 15 +- .../webapp-project.artifactId/manifest.json | 13 + .../webapp-properties.appId/manifest.json | 13 + .../manifest.json | 13 + .../application.h/webapp/Component.js | 8 + .../application.h/webapp/manifest.json | 13 + .../webapp/sectionsA/section1.js | 3 + .../webapp/sectionsA/section2.js | 3 + .../webapp/sectionsA/section3.js | 3 + .../webapp/sectionsB/section1.js | 3 + .../webapp/sectionsB/section2.js | 3 + .../webapp/sectionsB/section3.js | 3 + .../application.a/.ui5/build-manifest.json | 42 + .../build-manifest/application.a/package.json | 13 + .../application.a/resources/id1/index.html | 9 + .../application.a/resources/id1/manifest.json | 13 + .../application.a/resources/id1/test-dbg.js | 5 + .../application.a/resources/id1/test.js | 5 + .../library.e/.ui5/build-manifest.json | 43 + .../build-manifest/library.e/package.json | 11 + .../library.e/resources/library/e/.library | 11 + .../library.e/resources/library/e/some.js | 4 + .../test-resources/library/e/Test.html | 0 .../fixtures/collection/library.a/ui5.yaml | 2 +- .../fixtures/collection/library.b/ui5.yaml | 2 +- .../fixtures/collection/library.c/ui5.yaml | 2 +- .../node_modules/library.d/ui5.yaml | 2 +- .../node_modules/application.cycle.a/ui5.yaml | 2 +- .../node_modules/application.cycle.b/ui5.yaml | 20 +- .../application.cycle.b/webapp/manifest.json | 13 + .../node_modules/application.cycle.c/ui5.yaml | 2 +- .../application.cycle.c/webapp/manifest.json | 13 + .../node_modules/application.cycle.d/ui5.yaml | 2 +- .../application.cycle.d/webapp/manifest.json | 13 + .../node_modules/application.cycle.e/ui5.yaml | 2 +- .../application.cycle.e/webapp/manifest.json | 13 + .../node_modules/application.cycle.f/ui5.yaml | 2 +- .../application.cycle.f/webapp/manifest.json | 13 + .../node_modules/component.cycle.a/ui5.yaml | 2 +- .../node_modules/library.cycle.a/ui5.yaml | 2 +- .../node_modules/library.cycle.b/ui5.yaml | 2 +- .../node_modules/library.cycle.d/ui5.yaml | 2 +- .../node_modules/library.cycle.c/ui5.yaml | 2 +- .../node_modules/library.cycle.d/ui5.yaml | 2 +- .../node_modules/library.cycle.e/ui5.yaml | 2 +- .../node_modules/module.c/ui5.yaml | 5 + .../node_modules/module.d/ui5.yaml | 5 + .../node_modules/module.e/ui5.yaml | 5 + .../node_modules/module.f/ui5.yaml | 5 + .../node_modules/module.g/ui5.yaml | 5 + .../node_modules/module.h/ui5.yaml | 5 + .../node_modules/module.i/ui5.yaml | 5 + .../node_modules/module.j/ui5.yaml | 5 + .../node_modules/module.k/ui5.yaml | 5 + .../node_modules/module.l/ui5.yaml | 5 + .../node_modules/module.m/ui5.yaml | 5 + .../test/fixtures/err.application.a/ui5.yaml | 5 + .../err.application.a/webapp/index.html | 9 + .../err.application.a/webapp/manifest.json | 13 + .../fixtures/err.application.a/webapp/test.js | 5 + .../test/fixtures/glob/application.a/ui5.yaml | 2 +- .../test/fixtures/glob/application.b/ui5.yaml | 2 +- .../node_modules/library.f/ui5.yaml | 2 +- .../node_modules/library.f/ui5.yaml | 2 +- .../node_modules/library.f/ui5.yaml | 2 +- .../node_modules/library.f/ui5.yaml | 2 +- .../node_modules/library.d/ui5.yaml | 2 +- .../test/fixtures/library.d-depender/ui5.yaml | 2 +- .../project/test/fixtures/library.d/ui5.yaml | 2 +- .../fixtures/library.e/src/library/e/.library | 2 +- .../project/test/fixtures/library.e/ui5.yaml | 2 +- .../library.f/node_modules/library.g/ui5.yaml | 2 +- .../fixtures/library.f/src/library/f/.library | 11 + .../fixtures/library.f/src/library/f/some.js | 4 + .../project/test/fixtures/library.f/ui5.yaml | 2 +- .../library.g/node_modules/library.f/ui5.yaml | 2 +- .../fixtures/library.g/src/library/g/.library | 11 + .../fixtures/library.g/src/library/g/some.js | 4 + .../project/test/fixtures/library.g/ui5.yaml | 2 +- .../test/fixtures/library.h/src/.library | 11 + .../test/fixtures/library.h/src/manifest.json | 26 + .../test/fixtures/library.h/src/some.js | 4 + .../project/test/fixtures/library.h/ui5.yaml | 5 + .../test/fixtures/module.a/dev/devTools.js | 1 + .../test/fixtures/module.a/dist/index.js | 1 + .../project/test/fixtures/module.a/ui5.yaml | 5 + .../theme/library/e/themes/my_theme/.theme | 9 + .../theme/library/e/themes/my_theme/.theming | 27 + .../e/themes/my_theme/library.source.less | 9 + .../test/theme/library/e/Test.html | 0 .../test/fixtures/theme.library.e/ui5.yaml | 9 + .../test/lib/buildHelpers/BuildContext.js | 104 + .../lib/buildHelpers/ProjectBuildContext.js | 206 ++ .../lib/buildHelpers/composeProjectList.js | 308 +++ .../test/lib/buildHelpers/composeTaskList.js | 258 ++ .../createBuildManifest.integration.js | 95 + .../lib/buildHelpers/createBuildManifest.js | 127 + packages/project/test/lib/extensions.js | 953 ------- .../lib/generateProjectGraph.usingObject.js | 1654 ++++++++++++ .../generateProjectGraph.usingStaticFile.js | 72 + packages/project/test/lib/graph/Module.js | 168 ++ .../project/test/lib/graph/ProjectGraph.js | 1187 ++++++++ .../helpers}/ui5Framework.integration.js | 673 ++--- .../test/lib/graph/helpers/ui5Framework.js | 518 ++++ .../NodePackageDependencies.integration.js | 219 ++ packages/project/test/lib/index.js | 8 +- packages/project/test/lib/normalizer.js | 70 - .../project/test/lib/projectPreprocessor.js | 2394 ----------------- .../lib/specifications/ComponentProject.js | 153 ++ .../test/lib/specifications/Project.js | 34 + .../test/lib/specifications/Specification.js | 75 + .../lib/specifications/types/Application.js | 440 +++ .../test/lib/specifications/types/Library.js | 1239 +++++++++ .../test/lib/specifications/types/Module.js | 142 + .../lib/specifications/types/ThemeLibrary.js | 122 + .../test/lib/translators/npm.integration.js | 1014 ------- packages/project/test/lib/translators/npm.js | 128 - .../project/test/lib/translators/static.js | 83 - .../test/lib/translators/ui5Framework.js | 957 ------- 201 files changed, 13270 insertions(+), 7799 deletions(-) create mode 100644 packages/project/lib/buildDefinitions/AbstractBuilder.js create mode 100644 packages/project/lib/buildDefinitions/ApplicationBuilder.js create mode 100644 packages/project/lib/buildDefinitions/LibraryBuilder.js create mode 100644 packages/project/lib/buildDefinitions/ModuleBuilder.js create mode 100644 packages/project/lib/buildDefinitions/ThemeLibraryBuilder.js create mode 100644 packages/project/lib/buildDefinitions/getInstance.js create mode 100644 packages/project/lib/buildHelpers/BuildContext.js create mode 100644 packages/project/lib/buildHelpers/ProjectBuildContext.js create mode 100644 packages/project/lib/buildHelpers/composeProjectList.js create mode 100644 packages/project/lib/buildHelpers/composeTaskList.js create mode 100644 packages/project/lib/buildHelpers/createBuildManifest.js create mode 100644 packages/project/lib/builder.js create mode 100644 packages/project/lib/generateProjectGraph.js create mode 100644 packages/project/lib/graph/Module.js create mode 100644 packages/project/lib/graph/ProjectGraph.js create mode 100644 packages/project/lib/graph/ShimCollection.js create mode 100644 packages/project/lib/graph/helpers/ui5Framework.js create mode 100644 packages/project/lib/graph/projectGraphBuilder.js create mode 100644 packages/project/lib/graph/providers/DependencyTree.js create mode 100644 packages/project/lib/graph/providers/NodePackageDependencies.js delete mode 100644 packages/project/lib/normalizer.js delete mode 100644 packages/project/lib/projectPreprocessor.js create mode 100644 packages/project/lib/specifications/ComponentProject.js create mode 100644 packages/project/lib/specifications/Extension.js create mode 100644 packages/project/lib/specifications/Project.js create mode 100644 packages/project/lib/specifications/Specification.js create mode 100644 packages/project/lib/specifications/types/Application.js create mode 100644 packages/project/lib/specifications/types/Library.js create mode 100644 packages/project/lib/specifications/types/Module.js create mode 100644 packages/project/lib/specifications/types/ThemeLibrary.js create mode 100644 packages/project/lib/specifications/types/extensions/ProjectShim.js create mode 100644 packages/project/lib/specifications/types/extensions/ServerMiddleware.js create mode 100644 packages/project/lib/specifications/types/extensions/Task.js delete mode 100644 packages/project/lib/translators/npm.js delete mode 100644 packages/project/lib/translators/static.js delete mode 100644 packages/project/lib/translators/ui5Framework.js create mode 100644 packages/project/test/fixtures/application.a/node_modules/collection/ui5.yaml create mode 100644 packages/project/test/fixtures/application.a/ui5-test-configPath.yaml rename packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/{d => d-depender}/.library (88%) rename packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/{d => d-depender}/some.js (100%) create mode 100644 packages/project/test/fixtures/application.h/pom.xml create mode 100644 packages/project/test/fixtures/application.h/webapp-project.artifactId/manifest.json create mode 100644 packages/project/test/fixtures/application.h/webapp-properties.appId/manifest.json create mode 100644 packages/project/test/fixtures/application.h/webapp-properties.componentName/manifest.json create mode 100644 packages/project/test/fixtures/application.h/webapp/Component.js create mode 100644 packages/project/test/fixtures/application.h/webapp/manifest.json create mode 100644 packages/project/test/fixtures/application.h/webapp/sectionsA/section1.js create mode 100644 packages/project/test/fixtures/application.h/webapp/sectionsA/section2.js create mode 100644 packages/project/test/fixtures/application.h/webapp/sectionsA/section3.js create mode 100644 packages/project/test/fixtures/application.h/webapp/sectionsB/section1.js create mode 100644 packages/project/test/fixtures/application.h/webapp/sectionsB/section2.js create mode 100644 packages/project/test/fixtures/application.h/webapp/sectionsB/section3.js create mode 100644 packages/project/test/fixtures/build-manifest/application.a/.ui5/build-manifest.json create mode 100644 packages/project/test/fixtures/build-manifest/application.a/package.json create mode 100644 packages/project/test/fixtures/build-manifest/application.a/resources/id1/index.html create mode 100644 packages/project/test/fixtures/build-manifest/application.a/resources/id1/manifest.json create mode 100644 packages/project/test/fixtures/build-manifest/application.a/resources/id1/test-dbg.js create mode 100644 packages/project/test/fixtures/build-manifest/application.a/resources/id1/test.js create mode 100644 packages/project/test/fixtures/build-manifest/library.e/.ui5/build-manifest.json create mode 100644 packages/project/test/fixtures/build-manifest/library.e/package.json create mode 100644 packages/project/test/fixtures/build-manifest/library.e/resources/library/e/.library create mode 100644 packages/project/test/fixtures/build-manifest/library.e/resources/library/e/some.js create mode 100644 packages/project/test/fixtures/build-manifest/library.e/test-resources/library/e/Test.html create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/manifest.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/manifest.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/manifest.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/manifest.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/manifest.json create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.c/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.d/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.e/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.f/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.g/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.h/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.i/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.j/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.k/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.l/ui5.yaml create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/module.m/ui5.yaml create mode 100644 packages/project/test/fixtures/err.application.a/ui5.yaml create mode 100644 packages/project/test/fixtures/err.application.a/webapp/index.html create mode 100644 packages/project/test/fixtures/err.application.a/webapp/manifest.json create mode 100644 packages/project/test/fixtures/err.application.a/webapp/test.js create mode 100644 packages/project/test/fixtures/library.f/src/library/f/.library create mode 100644 packages/project/test/fixtures/library.f/src/library/f/some.js create mode 100644 packages/project/test/fixtures/library.g/src/library/g/.library create mode 100644 packages/project/test/fixtures/library.g/src/library/g/some.js create mode 100644 packages/project/test/fixtures/library.h/src/.library create mode 100644 packages/project/test/fixtures/library.h/src/manifest.json create mode 100644 packages/project/test/fixtures/library.h/src/some.js create mode 100644 packages/project/test/fixtures/library.h/ui5.yaml create mode 100644 packages/project/test/fixtures/module.a/dev/devTools.js create mode 100644 packages/project/test/fixtures/module.a/dist/index.js create mode 100644 packages/project/test/fixtures/module.a/ui5.yaml create mode 100644 packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/.theme create mode 100644 packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/.theming create mode 100644 packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/library.source.less create mode 100644 packages/project/test/fixtures/theme.library.e/test/theme/library/e/Test.html create mode 100644 packages/project/test/fixtures/theme.library.e/ui5.yaml create mode 100644 packages/project/test/lib/buildHelpers/BuildContext.js create mode 100644 packages/project/test/lib/buildHelpers/ProjectBuildContext.js create mode 100644 packages/project/test/lib/buildHelpers/composeProjectList.js create mode 100644 packages/project/test/lib/buildHelpers/composeTaskList.js create mode 100644 packages/project/test/lib/buildHelpers/createBuildManifest.integration.js create mode 100644 packages/project/test/lib/buildHelpers/createBuildManifest.js delete mode 100644 packages/project/test/lib/extensions.js create mode 100644 packages/project/test/lib/generateProjectGraph.usingObject.js create mode 100644 packages/project/test/lib/generateProjectGraph.usingStaticFile.js create mode 100644 packages/project/test/lib/graph/Module.js create mode 100644 packages/project/test/lib/graph/ProjectGraph.js rename packages/project/test/lib/{translators => graph/helpers}/ui5Framework.integration.js (56%) create mode 100644 packages/project/test/lib/graph/helpers/ui5Framework.js create mode 100644 packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js delete mode 100644 packages/project/test/lib/normalizer.js delete mode 100644 packages/project/test/lib/projectPreprocessor.js create mode 100644 packages/project/test/lib/specifications/ComponentProject.js create mode 100644 packages/project/test/lib/specifications/Project.js create mode 100644 packages/project/test/lib/specifications/Specification.js create mode 100644 packages/project/test/lib/specifications/types/Application.js create mode 100644 packages/project/test/lib/specifications/types/Library.js create mode 100644 packages/project/test/lib/specifications/types/Module.js create mode 100644 packages/project/test/lib/specifications/types/ThemeLibrary.js delete mode 100644 packages/project/test/lib/translators/npm.integration.js delete mode 100644 packages/project/test/lib/translators/npm.js delete mode 100644 packages/project/test/lib/translators/static.js delete mode 100644 packages/project/test/lib/translators/ui5Framework.js diff --git a/packages/project/index.js b/packages/project/index.js index e21fbfee6df..53a9134b11a 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -4,13 +4,13 @@ */ module.exports = { /** - * @type {import('./lib/normalizer')} + * @type {import('./lib/builder')} */ - normalizer: "./lib/normalizer", + builder: "./lib/builder", /** - * @type {import('./lib/projectPreprocessor')} + * @type {import('./lib/generateProjectGraph')} */ - projectPreprocessor: "./lib/projectPreprocessor", + generateProjectGraph: "./lib/generateProjectGraph", /** * @public * @alias module:@ui5/project.ui5Framework @@ -42,20 +42,20 @@ module.exports = { ValidationError: "./lib/validation/ValidationError" }, /** - * @private - * @alias module:@ui5/project.translators + * @public + * @alias module:@ui5/project.graph * @namespace */ - translators: { + graph: { /** - * @type {import('./lib/translators/npm')} + * @type {typeof import('./lib/graph/ProjectGraph')} */ - npm: "./lib/translators/npm", + ProjectGraph: "./lib/graph/ProjectGraph", /** - * @type {import('./lib/translators/static')} + * @type {typeof import('./lib/graph/projectGraphBuilder')} */ - static: "./lib/translators/static" - } + projectGraphBuilder: "./lib/graph/projectGraphBuilder", + }, }; function exportModules(exportRoot, modulePaths) { diff --git a/packages/project/lib/buildDefinitions/AbstractBuilder.js b/packages/project/lib/buildDefinitions/AbstractBuilder.js new file mode 100644 index 00000000000..a65ee3e9c80 --- /dev/null +++ b/packages/project/lib/buildDefinitions/AbstractBuilder.js @@ -0,0 +1,327 @@ +const {getTask} = require("@ui5/builder").tasks.taskRepository; +const composeTaskList = require("../buildHelpers/composeTaskList"); + +/** + * Resource collections + * + * @public + * @typedef module:@ui5/builder.BuilderResourceCollections + * @property {module:@ui5/fs.DuplexCollection} workspace Workspace Resource + * @property {module:@ui5/fs.ReaderCollection} dependencies Workspace Resource + */ + +/** + * Base class for the builder implementation of a project type + * + * @abstract + */ +class AbstractBuilder { + /** + * Constructor + * + * @param {object} parameters + * @param {object} parameters.graph + * @param {object} parameters.project + * @param {GroupLogger} parameters.parentLogger Logger to use + * @param {object} parameters.taskUtil + */ + constructor({graph, project, parentLogger, taskUtil}) { + if (new.target === AbstractBuilder) { + throw new TypeError("Class 'AbstractBuilder' is abstract"); + } + + this.project = project; + this.graph = graph; + this.taskUtil = taskUtil; + + this.log = parentLogger.createSubLogger(project.getType() + " " + project.getName(), 0.2); + this.taskLog = this.log.createTaskLogger("🔨"); + + this.tasks = {}; + this.taskExecutionOrder = []; + + this.addStandardTasks({ + project, + taskUtil, + getTask + }); + this.addCustomTasks({ + graph, + project, + taskUtil + }); + } + + /** + * Adds all standard tasks to execute + * + * @abstract + * @protected + * @param {object} parameters + * @param {object} parameters.taskUtil + * @param {object} parameters.project + */ + addStandardTasks({project, taskUtil}) { + throw new Error("Function 'addStandardTasks' is not implemented"); + } + + /** + * Adds custom tasks to execute + * + * @private + * @param {object} parameters + * @param {object} parameters.graph + * @param {object} parameters.project + * @param {object} parameters.taskUtil + */ + addCustomTasks({graph, project, taskUtil}) { + const projectCustomTasks = project.getCustomTasks(); + if (!projectCustomTasks || projectCustomTasks.length === 0) { + return; // No custom tasks defined + } + for (let i = 0; i < projectCustomTasks.length; i++) { + const taskDef = projectCustomTasks[i]; + if (!taskDef.name) { + throw new Error(`Missing name for custom task definition of project ${project.getName()} ` + + `at index ${i}`); + } + if (taskDef.beforeTask && taskDef.afterTask) { + throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + + `defines both "beforeTask" and "afterTask" parameters. Only one must be defined.`); + } + if (this.taskExecutionOrder.length && !taskDef.beforeTask && !taskDef.afterTask) { + // Iff there are tasks configured, beforeTask or afterTask must be given + throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + + `defines neither a "beforeTask" nor an "afterTask" parameter. One must be defined.`); + } + + let newTaskName = taskDef.name; + if (this.tasks[newTaskName]) { + // Task is already known + // => add a suffix to allow for multiple configurations of the same task + let suffixCounter = 0; + while (this.tasks[newTaskName]) { + suffixCounter++; // Start at 1 + newTaskName = `${taskDef.name}--${suffixCounter}`; + } + } + const task = graph.getExtension(taskDef.name); + // TODO: Create callback for custom tasks to configure "requiresDependencies" and "enabled" + // Input: task "options" and build mode ("standalone", "preload", etc.) + const requiresDependencies = true; // Default to true for old spec versions + const execTask = function({workspace, dependencies}) { + /* Custom Task Interface + Parameters: + {Object} parameters Parameters + {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files + {module:@ui5/fs.AbstractReader} parameters.dependencies + Reader or Collection to read dependency files + {Object} parameters.taskUtil Specification Version dependent interface to a + [TaskUtil]{@link module:@ui5/builder.tasks.TaskUtil} instance + {Object} parameters.options Options + {string} parameters.options.projectName Project name + {string} [parameters.options.projectNamespace] Project namespace if available + {string} [parameters.options.configuration] Task configuration if given in ui5.yaml + Returns: + {Promise} Promise resolving with undefined once data has been written + */ + const params = { + workspace, + options: { + projectName: project.getName(), + projectNamespace: project.getNamespace(), + configuration: taskDef.configuration + } + }; + + if (requiresDependencies) { + params.dependencies = dependencies; + } + + const taskUtilInterface = taskUtil.getInterface(task.getSpecVersion()); + // Interface is undefined if specVersion does not support taskUtil + if (taskUtilInterface) { + params.taskUtil = taskUtilInterface; + } + return task.getTask()(params); + }; + + this.tasks[newTaskName] = { + task: execTask, + requiresDependencies + }; + + if (this.taskExecutionOrder.length) { + // There is at least one task configured. Use before- and afterTask to add the custom task + const refTaskName = taskDef.beforeTask || taskDef.afterTask; + let refTaskIdx = this.taskExecutionOrder.indexOf(refTaskName); + if (refTaskIdx === -1) { + throw new Error(`Could not find task ${refTaskName}, referenced by custom task ${newTaskName}, ` + + `to be scheduled for project ${project.getName()}`); + } + if (taskDef.afterTask) { + // Insert after index of referenced task + refTaskIdx++; + } + this.taskExecutionOrder.splice(refTaskIdx, 0, newTaskName); + } else { + // There is no task configured so far. Just add the custom task + this.taskExecutionOrder.push(newTaskName); + } + } + } + + /** + * Adds a executable task to the builder + * + * The order this function is being called defines the build order. FIFO. + * + * @param {string} taskName Name of the task which should be in the list availableTasks. + * @param {object} [parameters] + * @param {boolean} [parameters.requiresDependencies] + * @param {object} [parameters.options] + * @param {Function} [taskFunction] + */ + addTask(taskName, {requiresDependencies = false, options = {}} = {}, taskFunction) { + if (this.tasks[taskName]) { + throw new Error(`Failed to add duplicate task ${taskName} for project ${this.project.getName()}`); + } + if (this.taskExecutionOrder.includes(taskName)) { + throw new Error(`Builder: Failed to add task ${taskName} for project ${this.project.getName()}. ` + + `It has already been scheduled for execution.`); + } + + const task = ({workspace, dependencies}) => { + options.projectName = this.project.getName(); + // TODO: Deprecate "namespace" in favor of "projectNamespace" as already used for custom tasks? + options.projectNamespace = this.project.getNamespace(); + + const params = { + workspace, + taskUtil: this.taskUtil, + options + }; + + if (requiresDependencies) { + params.dependencies = dependencies; + } + + if (!taskFunction) { + taskFunction = getTask(taskName).task; + } + return taskFunction(params); + }; + this.tasks[taskName] = { + task, + requiresDependencies + }; + this.taskExecutionOrder.push(taskName); + } + + /** + * Takes a list of tasks which should be executed from the available task list of the current builder + * + * @param {object} buildConfig + * @param {boolean} buildConfig.selfContained + * True if a the build should be self-contained or false for prelead build bundles + * @param {boolean} buildConfig.jsdoc True if a JSDoc build should be executed + * @param {Array} buildConfig.includedTasks Task list to be included from build + * @param {Array} buildConfig.excludedTasks Task list to be excluded from build + * @param {object} buildParams + * @param {module:@ui5/fs.DuplexCollection} buildParams.workspace Workspace of the current project + * @param {module:@ui5/fs.ReaderCollection} buildParams.dependencies Dependencies reader collection + * @returns {Promise} Returns promise chain with tasks + */ + async build(buildConfig, buildParams) { + const tasksToRun = composeTaskList(Object.keys(this.tasks), buildConfig); + const allTasks = this.taskExecutionOrder.filter((taskName) => { + // There might be a numeric suffix in case a custom task is configured multiple times. + // The suffix needs to be removed in order to check against the list of tasks to run. + // + // Note: The 'tasksToRun' parameter only allows to specify the custom task name + // (without suffix), so it executes either all or nothing. + // It's currently not possible to just execute some occurrences of a custom task. + // This would require a more robust contract to identify task executions + // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). + const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); + return tasksToRun.includes(taskWithoutSuffixCounter); + }); + + this.taskLog.addWork(allTasks.length); + + for (const taskName of allTasks) { + const taskFunction = this.tasks[taskName].task; + + if (typeof taskFunction === "function") { + await this.executeTask(taskName, taskFunction, buildParams); + } + } + } + + requiresDependencies(buildConfig) { + const tasksToRun = composeTaskList(Object.keys(this.tasks), buildConfig); + const allTasks = this.taskExecutionOrder.filter((taskName) => { + // There might be a numeric suffix in case a custom task is configured multiple times. + // The suffix needs to be removed in order to check against the list of tasks to run. + // + // Note: The 'tasksToRun' parameter only allows to specify the custom task name + // (without suffix), so it executes either all or nothing. + // It's currently not possible to just execute some occurrences of a custom task. + // This would require a more robust contract to identify task executions + // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). + const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); + return tasksToRun.includes(taskWithoutSuffixCounter); + }); + return allTasks.some((taskName) => { + if (this.tasks[taskName].requiresDependencies) { + this.log.verbose(`Task ${taskName} for project ${this.project.getName()} requires dependencies`); + return true; + } + return false; + }); + } + + /** + * Adds progress related functionality to task function. + * + * @private + * @param {string} taskName Name of the task + * @param {Function} taskFunction Function which executed the task + * @param {object} taskParams Base parameters for all tasks + * @returns {Promise} Resolves when task has finished + */ + async executeTask(taskName, taskFunction, taskParams) { + this.taskLog.startWork(`Running task ${taskName}...`); + this._taskStart = performance.now(); + await taskFunction(taskParams); + this.taskLog.completeWork(1); + if (process.env.UI5_LOG_TASK_PERF) { + this.taskLog.info(`Task succeeded in ${Math.round((performance.now() - this._taskStart))} ms`); + } + } + + /** + * Appends the list of 'excludes' to the list of 'patterns'. To harmonize both lists, the 'excludes' + * are negated and the 'patternPrefix' is added to make them absolute. + * + * @private + * @param {string[]} patterns + * List of absolute default patterns. + * @param {string[]} excludes + * List of relative patterns to be excluded. Excludes with a leading "!" are meant to be re-included. + * @param {string} patternPrefix + * Prefix to be added to the excludes to make them absolute. The prefix must have a leading and a + * trailing "/". + */ + enhancePatternWithExcludes(patterns, excludes, patternPrefix) { + excludes.forEach((exclude) => { + if (exclude.startsWith("!")) { + patterns.push(`${patternPrefix}${exclude.slice(1)}`); + } else { + patterns.push(`!${patternPrefix}${exclude}`); + } + }); + } +} + +module.exports = AbstractBuilder; diff --git a/packages/project/lib/buildDefinitions/ApplicationBuilder.js b/packages/project/lib/buildDefinitions/ApplicationBuilder.js new file mode 100644 index 00000000000..d01c6ed422b --- /dev/null +++ b/packages/project/lib/buildDefinitions/ApplicationBuilder.js @@ -0,0 +1,113 @@ +const AbstractBuilder = require("./AbstractBuilder"); + +class ApplicationBuilder extends AbstractBuilder { + addStandardTasks({project, taskUtil, getTask}) { + this.addTask("escapeNonAsciiCharacters", { + options: { + encoding: project.getPropertiesFileSourceEncoding(), + pattern: "/**/*.properties" + } + }); + + this.addTask("replaceCopyright", { + options: { + copyright: project.getCopyright(), + pattern: "/**/*.{js,json}" + } + }); + + this.addTask("replaceVersion", { + options: { + version: project.getVersion(), + pattern: "/**/*.{js,json}" + } + }); + + // Support rules should not be minified to have readable code in the Support Assistant + const minificationPattern = ["/**/*.js", "!**/*.support.js"]; + if (["2.6"].includes(project.getSpecVersion())) { + const minificationExcludes = project.getMinificationExcludes(); + if (minificationExcludes.length) { + this.enhancePatternWithExcludes(minificationPattern, minificationExcludes, "/resources/"); + } + } + this.addTask("minify", { + options: { + pattern: minificationPattern + } + }); + + this.addTask("generateFlexChangesBundle"); + this.addTask("generateManifestBundle"); + + const bundles = project.getBundles(); + const existingBundleDefinitionNames = + bundles.map(({bundleDefinition}) => bundleDefinition.name).filter(Boolean) || []; + + const componentPreloadPaths = project.getComponentPreloadPaths(); + const componentPreloadNamespaces = project.getComponentPreloadNamespaces(); + const componentPreloadExcludes = project.getComponentPreloadExcludes(); + if (componentPreloadPaths.length || componentPreloadNamespaces.length) { + this.addTask("generateComponentPreload", { + options: { + paths: componentPreloadPaths, + namespaces: componentPreloadNamespaces, + excludes: componentPreloadExcludes, + skipBundles: existingBundleDefinitionNames + } + }); + } else { + // Default component preload for application namespace + this.addTask("generateComponentPreload", { + options: { + namespaces: [project.getNamespace()], + excludes: componentPreloadExcludes, + skipBundles: existingBundleDefinitionNames + } + }); + } + + this.addTask("generateStandaloneAppBundle", {requiresDependencies: true}); + + this.addTask("transformBootstrapHtml"); + + if (bundles.length) { + this.addTask("generateBundle", {requiresDependencies: true}, + async ({workspace, dependencies, taskUtil, options}) => { + return bundles.reduce(function(sequence, bundle) { + return sequence.then(function() { + return getTask("generateBundle").task({ + workspace, + dependencies, + taskUtil, + options: { + projectName: options.projectName, + bundleDefinition: bundle.bundleDefinition, + bundleOptions: bundle.bundleOptions + } + }); + }); + }, Promise.resolve()); + }); + } + + this.addTask("generateVersionInfo", { + requiresDependencies: true, + options: { + rootProject: project, + pattern: "/resources/**/.library" + } + }); + + this.addTask("generateCachebusterInfo", { + options: { + signatureType: project.getCachebusterSignatureType(), + } + }); + + this.addTask("generateApiIndex", {requiresDependencies: true}); + this.addTask("generateResourcesJson", {requiresDependencies: true}); + } +} + +module.exports = ApplicationBuilder; diff --git a/packages/project/lib/buildDefinitions/LibraryBuilder.js b/packages/project/lib/buildDefinitions/LibraryBuilder.js new file mode 100644 index 00000000000..24c08d05696 --- /dev/null +++ b/packages/project/lib/buildDefinitions/LibraryBuilder.js @@ -0,0 +1,152 @@ +const AbstractBuilder = require("./AbstractBuilder"); + +class LibraryBuilder extends AbstractBuilder { + addStandardTasks({project, taskUtil, getTask}) { + this.addTask("escapeNonAsciiCharacters", { + options: { + encoding: project.getPropertiesFileSourceEncoding(), + pattern: "/**/*.properties" + } + }); + + this.addTask("replaceCopyright", { + options: { + copyright: project.getCopyright(), + pattern: "/**/*.{js,library,css,less,theme,html}" + } + }); + + this.addTask("replaceVersion", { + options: { + version: project.getVersion(), + pattern: "/**/*.{js,json,library,css,less,theme,html}" + } + }); + + this.addTask("replaceBuildtime", { + options: { + pattern: "/resources/sap/ui/Global.js" + } + }); + + this.addTask("generateJsdoc", {requiresDependencies: true}, + async ({workspace, dependencies, taskUtil, options}) => { + const patterns = ["/resources/**/*.js"]; + // Add excludes + const excludes = project.getJsdocExcludes(); + if (excludes.length) { + const excludes = excludes.map((pattern) => { + return `!/resources/${pattern}`; + }); + + patterns.push(...excludes); + } + + return getTask("generateJsdoc").task({ + workspace, + dependencies, + taskUtil, + options: { + projectName: options.projectName, + namespace: project.getNamespace(), + version: project.getVersion(), + pattern: patterns + } + }); + }); + + this.addTask("executeJsdocSdkTransformation", { + requiresDependencies: true, + options: { + dotLibraryPattern: "/resources/**/*.library", + } + }); + + // Support rules should not be minified to have readable code in the Support Assistant + const minificationPattern = ["/resources/**/*.js", "!**/*.support.js"]; + if (["2.6"].includes(project.getSpecVersion())) { + const minificationExcludes = project.getMinificationExcludes(); + if (minificationExcludes.length) { + this.enhancePatternWithExcludes(minificationPattern, minificationExcludes, "/resources/"); + } + } + + this.addTask("minify", { + options: { + pattern: minificationPattern + } + }); + + this.addTask("generateLibraryManifest"); + this.addTask("generateManifestBundle"); + + + const bundles = project.getBundles(); + const existingBundleDefinitionNames = + bundles.map(({bundleDefinition}) => bundleDefinition.name).filter(Boolean) || []; + const componentPreloadPaths = project.getComponentPreloadPaths(); + const componentPreloadNamespaces = project.getComponentPreloadNamespaces(); + const componentPreloadExcludes = project.getComponentPreloadNamespaces(); + if (componentPreloadPaths.length || componentPreloadNamespaces.length) { + this.addTask("generateComponentPreload", { + options: { + paths: componentPreloadPaths, + namespaces: componentPreloadNamespaces, + excludes: componentPreloadExcludes, + skipBundles: existingBundleDefinitionNames + } + }); + } + + this.addTask("generateLibraryPreload", { + options: { + excludes: project.getLibraryPreloadExcludes(), + skipBundles: existingBundleDefinitionNames + } + }); + + if (bundles.length) { + this.addTask("generateBundle", {requiresDependencies: true}, + async ({workspace, dependencies, taskUtil, options}) => { + return bundles.reduce(function(sequence, bundle) { + return sequence.then(function() { + return getTask("generateBundle").task({ + workspace, + dependencies, + taskUtil, + options: { + projectName: options.projectName, + bundleDefinition: bundle.bundleDefinition, + bundleOptions: bundle.bundleOptions + } + }); + }); + }, Promise.resolve()); + }); + } + + this.addTask("buildThemes", { + requiresDependencies: true, + options: { + projectName: project.getName(), + librariesPattern: !taskUtil.isRootProject() ? "/resources/**/(*.library|library.js)" : undefined, + themesPattern: !taskUtil.isRootProject() ? "/resources/sap/ui/core/themes/*" : undefined, + inputPattern: `/resources/${project.getNamespace()}/themes/*/library.source.less`, + cssVariables: taskUtil.getBuildOption("cssVariables") + } + }); + + this.addTask("generateThemeDesignerResources", { + requiresDependencies: true, + options: { + version: project.getVersion() + } + }); + + this.addTask("generateResourcesJson", { + requiresDependencies: true + }); + } +} + +module.exports = LibraryBuilder; diff --git a/packages/project/lib/buildDefinitions/ModuleBuilder.js b/packages/project/lib/buildDefinitions/ModuleBuilder.js new file mode 100644 index 00000000000..01981c4ddd5 --- /dev/null +++ b/packages/project/lib/buildDefinitions/ModuleBuilder.js @@ -0,0 +1,7 @@ +const AbstractBuilder = require("./AbstractBuilder"); + +class ModuleBuilder extends AbstractBuilder { + addStandardTasks() {/* nothing to do*/} +} + +module.exports = ModuleBuilder; diff --git a/packages/project/lib/buildDefinitions/ThemeLibraryBuilder.js b/packages/project/lib/buildDefinitions/ThemeLibraryBuilder.js new file mode 100644 index 00000000000..1225bbd19f9 --- /dev/null +++ b/packages/project/lib/buildDefinitions/ThemeLibraryBuilder.js @@ -0,0 +1,40 @@ +const AbstractBuilder = require("./AbstractBuilder"); + +class ThemeLibraryBuilder extends AbstractBuilder { + addStandardTasks({project, taskUtil, getTask}) { + this.addTask("replaceCopyright", { + options: { + copyright: project.getCopyright(), + pattern: "/resources/**/*.{less,theme}" + } + }); + + this.addTask("replaceVersion", { + options: { + version: project.getVersion(), + pattern: "/resources/**/*.{less,theme}" + } + }); + + this.addTask("buildThemes", { + requiresDependencies: true, + options: { + librariesPattern: !taskUtil.isRootProject() ? "/resources/**/(*.library|library.js)" : undefined, + themesPattern: !taskUtil.isRootProject() ? "/resources/sap/ui/core/themes/*" : undefined, + inputPattern: "/resources/**/themes/*/library.source.less", + cssVariables: taskUtil.getBuildOption("cssVariables") + } + }); + + this.addTask("generateThemeDesignerResources", { + requiresDependencies: true, + options: { + version: project.getVersion() + } + }); + + this.addTask("generateResourcesJson", {requiresDependencies: true}); + } +} + +module.exports = ThemeLibraryBuilder; diff --git a/packages/project/lib/buildDefinitions/getInstance.js b/packages/project/lib/buildDefinitions/getInstance.js new file mode 100644 index 00000000000..2cd6eb73030 --- /dev/null +++ b/packages/project/lib/buildDefinitions/getInstance.js @@ -0,0 +1,27 @@ + +function createInstance(moduleName, params) { + const BuildDefinition = require(`./${moduleName}`); + return new BuildDefinition(params); +} + +/** + * Get build definition instance + * + * @param {object} parameters + * @param {object} parameters.graph + * @param {object} parameters.project + * @param {object} parameters.taskUtil + * @param {GroupLogger} parameters.parentLogger Logger to use + */ +module.exports = function(parameters) { + switch (parameters.project.getType()) { + case "application": + return createInstance("ApplicationBuilder", parameters); + case "library": + return createInstance("LibraryBuilder", parameters); + case "module": + return createInstance("ModuleBuilder", parameters); + case "theme-library": + return createInstance("ThemeLibraryBuilder", parameters); + } +}; diff --git a/packages/project/lib/buildHelpers/BuildContext.js b/packages/project/lib/buildHelpers/BuildContext.js new file mode 100644 index 00000000000..396bc1ca0e9 --- /dev/null +++ b/packages/project/lib/buildHelpers/BuildContext.js @@ -0,0 +1,55 @@ +const ProjectBuildContext = require("./ProjectBuildContext"); + +/** + * Context of a build process + * + * @private + * @memberof module:@ui5/builder.builder + */ +class BuildContext { + constructor({graph, options = {}}) { + if (!graph) { + throw new Error(`Missing parameter 'graph'`); + } + this._graph = graph; + this._projectBuildContexts = []; + this._options = options; + } + + getRootProject() { + return this._graph.getRoot(); + } + + getOption(key) { + return this._options[key]; + } + + createProjectContext({project, log}) { + const projectBuildContext = new ProjectBuildContext({ + buildContext: this, + project, + log + }); + this._projectBuildContexts.push(projectBuildContext); + return projectBuildContext; + } + + async executeCleanupTasks() { + await Promise.all(this._projectBuildContexts.map((ctx) => { + return ctx.executeCleanupTasks(); + })); + } + + /** + * Retrieve a single project from the dependency graph + * + * @param {string} projectName Name of the project to retrieve + * @returns {module:@ui5/project.specifications.Project|undefined} + * project instance or undefined if the project is unknown to the graph + */ + getProject(projectName) { + return this._graph.getProject(projectName); + } +} + +module.exports = BuildContext; diff --git a/packages/project/lib/buildHelpers/ProjectBuildContext.js b/packages/project/lib/buildHelpers/ProjectBuildContext.js new file mode 100644 index 00000000000..47bed053e10 --- /dev/null +++ b/packages/project/lib/buildHelpers/ProjectBuildContext.js @@ -0,0 +1,96 @@ +const ResourceTagCollection = require("@ui5/fs").ResourceTagCollection; +const TaskUtil = require("@ui5/builder").tasks.TaskUtil; + +/** + * Build context of a single project. Always part of an overall + * [Build Context]{@link module:@ui5/builder.builder.BuildContext} + * + * @private + * @memberof module:@ui5/builder.builder + */ +class ProjectBuildContext { + constructor({buildContext, log, project}) { + if (!buildContext) { + throw new Error(`Missing parameter 'buildContext'`); + } + if (!log) { + throw new Error(`Missing parameter 'log'`); + } + if (!project) { + throw new Error(`Missing parameter 'project'`); + } + this._buildContext = buildContext; + this._project = project; + this._log = log; + this._queues = { + cleanup: [] + }; + + this._resourceTagCollection = new ResourceTagCollection({ + allowedTags: ["ui5:OmitFromBuildResult", "ui5:IsBundle"], + allowedNamespaces: ["build"] + }); + } + + isRootProject() { + return this._project === this._buildContext.getRootProject(); + } + + getOption(key) { + return this._buildContext.getOption(key); + } + + registerCleanupTask(callback) { + this._queues.cleanup.push(callback); + } + + async executeCleanupTasks() { + await Promise.all(this._queues.cleanup.map((callback) => { + return callback(); + })); + } + + getResourceTagCollection(resource, tag) { + if (!resource.hasProject()) { + this._log.verbose(`Associating resource ${resource.getPath()} with project ${this._project.getName()}`); + resource.setProject(this._project); + // throw new Error( + // `Unable to get tag collection for resource ${resource.getPath()}: ` + + // `Resource must be associated to a project`); + } + const projectCollection = resource.getProject().getResourceTagCollection(); + if (projectCollection.acceptsTag(tag)) { + return projectCollection; + } + if (this._resourceTagCollection.acceptsTag(tag)) { + return this._resourceTagCollection; + } + throw new Error(`Could not find collection for resource ${resource.getPath()} and tag ${tag}`); + } + + getTaskUtil() { + if (!this._taskUtil) { + this._taskUtil = new TaskUtil({ + projectBuildContext: this + }); + } + + return this._taskUtil; + } + + /** + * Retrieve a single project from the dependency graph + * + * @param {string} [projectName] Name of the project to retrieve. Defaults to the project currently being built + * @returns {module:@ui5/project.specifications.Project|undefined} + * project instance or undefined if the project is unknown to the graph + */ + getProject(projectName) { + if (projectName) { + return this._buildContext.getProject(projectName); + } + return this._project; + } +} + +module.exports = ProjectBuildContext; diff --git a/packages/project/lib/buildHelpers/composeProjectList.js b/packages/project/lib/buildHelpers/composeProjectList.js new file mode 100644 index 00000000000..d05fe44a2e1 --- /dev/null +++ b/packages/project/lib/buildHelpers/composeProjectList.js @@ -0,0 +1,193 @@ +const log = require("@ui5/logger").getLogger("buildHelpers:composeProjectList"); + +/** + * Creates an object containing the flattened project dependency tree. Each dependency is defined as an object key while + * its value is an array of all of its transitive dependencies. + * + * @param {module:@ui5/project.graph.ProjectGraph} graph + * @returns {Promise>} A promise resolving to an object with dependency names as + * key and each with an array of its transitive dependencies as value + */ +async function getFlattenedDependencyTree(graph) { + const dependencyMap = {}; + const rootName = graph.getRoot().getName(); + + await graph.traverseDepthFirst(({project, getDependencies}) => { + if (project.getName() === rootName) { + // Skip root project + return; + } + const projectDeps = []; + getDependencies().forEach((dep) => { + const depName = dep.getName(); + projectDeps.push(depName); + if (dependencyMap[depName]) { + projectDeps.push(...dependencyMap[depName]); + } + }); + dependencyMap[project.getName()] = projectDeps; + }); + return dependencyMap; +} + +/** + * Creates dependency lists for 'includedDependencies' and 'excludedDependencies'. Regular expressions are directly + * applied to a list of all project dependencies so that they don't need to be evaluated in later processing steps. + * Generally, includes are handled with a higher priority than excludes. Additionally, operations for processing + * transitive dependencies are handled with a lower priority than explicitly mentioned dependencies. The default + * dependencies set in the build settings are appended in the end. + * + * The priority of the various dependency lists is applied in the following order, but note that a later list can't + * overrule earlier ones: + *
    + *
  1. includeDependency, includeDependencyRegExp
  2. + *
  3. excludeDependency, excludeDependencyRegExp
  4. + *
  5. includeDependencyTree
  6. + *
  7. excludeDependencyTree
  8. + *
  9. defaultIncludeDependency, defaultIncludeDependencyRegExp, defaultIncludeDependencyTree
  10. + *
+ * + * @param {object} graph Project tree as generated by the + * [@ui5/project.normalizer]{@link module:@ui5/project.normalizer} + * @param {object} parameters Parameters + * @param {boolean} parameters.includeAllDependencies Whether all dependencies should be part of the build result + * This has the lowest priority and basically includes all remaining (not excluded) projects as include + * @param {string[]} parameters.includeDependency The dependencies to be considered in 'includedDependencies'; the + * "*" character can be used as wildcard for all dependencies and is an alias for the CLI option "--all" + * @param {string[]} parameters.includeDependencyRegExp Strings which are interpreted as regular expressions + * to describe the selection of dependencies to be considered in 'includedDependencies' + * @param {string[]} parameters.includeDependencyTree The dependencies to be considered in 'includedDependencies'; + * transitive dependencies are also appended + * @param {string[]} parameters.excludeDependency The dependencies to be considered in 'excludedDependencies' + * @param {string[]} parameters.excludeDependencyRegExp Strings which are interpreted as regular expressions + * to describe the selection of dependencies to be considered in 'excludedDependencies' + * @param {string[]} parameters.excludeDependencyTree The dependencies to be considered in 'excludedDependencies'; + * transitive dependencies are also appended + * @param {string[]} parameters.defaultIncludeDependency Same as 'includeDependency' parameter; used for build + * settings + * @param {string[]} parameters.defaultIncludeDependencyRegExp Same as 'includeDependencyRegExp' parameter; used + * for build settings + * @param {string[]} parameters.defaultIncludeDependencyTree Same as 'includeDependencyTree' parameter; used for + * build settings + * @returns {{includedDependencies:string[],excludedDependencies:string[]}} An object containing the + * 'includedDependencies' and 'excludedDependencies' + */ +async function createDependencyLists(graph, { + includeAllDependencies = false, + includeDependency = [], includeDependencyRegExp = [], includeDependencyTree = [], + excludeDependency = [], excludeDependencyRegExp = [], excludeDependencyTree = [], + defaultIncludeDependency = [], defaultIncludeDependencyRegExp = [], defaultIncludeDependencyTree = [] +}) { + if ( + !includeAllDependencies && + !includeDependency.length && !includeDependencyRegExp.length && !includeDependencyTree.length && + !excludeDependency.length && !excludeDependencyRegExp.length && !excludeDependencyTree.length && + !defaultIncludeDependency.length && !defaultIncludeDependencyRegExp.length && + !defaultIncludeDependencyTree.length + ) { + return {includedDependencies: [], excludedDependencies: []}; + } + + const flattenedDependencyTree = await getFlattenedDependencyTree(graph); + + function isExcluded(excludeList, depName) { + return excludeList && excludeList.has(depName); + } + function processDependencies({targetList, dependencies, dependenciesRegExp = [], excludeList, handleSubtree}) { + if (handleSubtree && dependenciesRegExp.length) { + throw new Error("dependenciesRegExp can't be combined with handleSubtree:true option"); + } + dependencies.forEach((depName) => { + if (depName === "*") { + targetList.add(depName); + } else if (flattenedDependencyTree[depName]) { + if (!isExcluded(excludeList, depName)) { + targetList.add(depName); + } + if (handleSubtree) { + flattenedDependencyTree[depName].forEach((dep) => { + if (!isExcluded(excludeList, dep)) { + targetList.add(dep); + } + }); + } + } else { + log.warn( + `Could not find dependency "${depName}" for project ${graph.getRoot().getName()}. ` + + `Dependency filter is ignored`); + } + }); + dependenciesRegExp.map((exp) => new RegExp(exp)).forEach((regExp) => { + for (const depName in flattenedDependencyTree) { + if (regExp.test(depName) && !isExcluded(excludeList, depName)) { + targetList.add(depName); + } + } + }); + } + + const includedDependencies = new Set(); + const excludedDependencies = new Set(); + + // add dependencies defined in includeDependency and includeDependencyRegExp to the list of includedDependencies + processDependencies({ + targetList: includedDependencies, + dependencies: includeDependency, + dependenciesRegExp: includeDependencyRegExp + }); + // add dependencies defined in excludeDependency and excludeDependencyRegExp to the list of excludedDependencies + processDependencies({ + targetList: excludedDependencies, + dependencies: excludeDependency, + dependenciesRegExp: excludeDependencyRegExp + }); + // add dependencies defined in includeDependencyTree with their transitive dependencies to the list of + // includedDependencies; due to prioritization only those dependencies are added which are not excluded + // by excludedDependencies + processDependencies({ + targetList: includedDependencies, + dependencies: includeDependencyTree, + excludeList: excludedDependencies, + handleSubtree: true + }); + // add dependencies defined in excludeDependencyTree with their transitive dependencies to the list of + // excludedDependencies; due to prioritization only those dependencies are added which are not excluded + // by includedDependencies + processDependencies({ + targetList: excludedDependencies, + dependencies: excludeDependencyTree, + excludeList: includedDependencies, + handleSubtree: true + }); + // due to the lower priority only add the dependencies defined in build settings if they are not excluded + // by any other dependency defined in excludedDependencies + processDependencies({ + targetList: includedDependencies, + dependencies: defaultIncludeDependency, + dependenciesRegExp: defaultIncludeDependencyRegExp, + excludeList: excludedDependencies + }); + processDependencies({ + targetList: includedDependencies, + dependencies: defaultIncludeDependencyTree, + excludeList: excludedDependencies, + handleSubtree: true + }); + + if (includeAllDependencies) { + // If requested, add all dependencies not excluded to include set + Object.keys(flattenedDependencyTree).forEach((depName) => { + if (!isExcluded(excludedDependencies, depName)) { + includedDependencies.add(depName); + } + }); + } + + return { + includedDependencies: Array.from(includedDependencies), + excludedDependencies: Array.from(excludedDependencies) + }; +} + +module.exports = createDependencyLists; +module.exports._getFlattenedDependencyTree = getFlattenedDependencyTree; diff --git a/packages/project/lib/buildHelpers/composeTaskList.js b/packages/project/lib/buildHelpers/composeTaskList.js new file mode 100644 index 00000000000..ee4763564b5 --- /dev/null +++ b/packages/project/lib/buildHelpers/composeTaskList.js @@ -0,0 +1,107 @@ +const log = require("@ui5/logger").getLogger("buildHelpers:composeTaskList"); + +/** + * Creates the list of tasks to be executed by the build process + * + * Sets specific tasks to be disabled by default, these tasks need to be included explicitly. + * Based on the selected build mode (selfContained|preload), different tasks are enabled. + * Tasks can be enabled or disabled. The wildcard * is also supported and affects all tasks. + * + * @private + * @param {string[]} allTasks + * @param {object} parameters + * @param {boolean} parameters.selfContained + * True if a the build should be self-contained or false for prelead build bundles + * @param {boolean} parameters.jsdoc True if a JSDoc build should be executed + * @param {Array} parameters.includedTasks Task list to be included from build + * @param {Array} parameters.excludedTasks Task list to be excluded from build + * @returns {Array} Return a task list for the builder + */ +module.exports = function composeTaskList(allTasks, {selfContained, jsdoc, includedTasks, excludedTasks}) { + let selectedTasks = allTasks.reduce((list, key) => { + list[key] = true; + return list; + }, {}); + + // Exclude non default tasks + selectedTasks.generateManifestBundle = false; + selectedTasks.generateStandaloneAppBundle = false; + selectedTasks.transformBootstrapHtml = false; + selectedTasks.generateJsdoc = false; + selectedTasks.executeJsdocSdkTransformation = false; + selectedTasks.generateCachebusterInfo = false; + selectedTasks.generateApiIndex = false; + selectedTasks.generateThemeDesignerResources = false; + selectedTasks.generateVersionInfo = false; + + // Disable generateResourcesJson due to performance. + // When executed it analyzes each module's AST and therefore + // takes up much time (~10% more) + selectedTasks.generateResourcesJson = false; + + if (selfContained) { + // No preloads, bundle only + selectedTasks.generateComponentPreload = false; + selectedTasks.generateStandaloneAppBundle = true; + selectedTasks.transformBootstrapHtml = true; + selectedTasks.generateLibraryPreload = false; + } + + if (jsdoc) { + // Include JSDoc tasks + selectedTasks.generateJsdoc = true; + selectedTasks.executeJsdocSdkTransformation = true; + selectedTasks.generateApiIndex = true; + + // Include theme build as required for SDK + selectedTasks.buildThemes = true; + + // Exclude all tasks not relevant to JSDoc generation + selectedTasks.replaceCopyright = false; + selectedTasks.replaceVersion = false; + selectedTasks.replaceBuildtime = false; + selectedTasks.generateComponentPreload = false; + selectedTasks.generateLibraryPreload = false; + selectedTasks.generateLibraryManifest = false; + selectedTasks.minify = false; + selectedTasks.generateFlexChangesBundle = false; + selectedTasks.generateManifestBundle = false; + } + + // Exclude tasks + for (let i = 0; i < excludedTasks.length; i++) { + const taskName = excludedTasks[i]; + if (taskName === "*") { + Object.keys(selectedTasks).forEach((sKey) => { + selectedTasks[sKey] = false; + }); + break; + } + if (selectedTasks[taskName] === true) { + selectedTasks[taskName] = false; + } else if (typeof selectedTasks[taskName] === "undefined") { + log.warn(`Unable to exclude task '${taskName}': Task is unknown`); + } + } + + // Include tasks + for (let i = 0; i < includedTasks.length; i++) { + const taskName = includedTasks[i]; + if (taskName === "*") { + Object.keys(selectedTasks).forEach((sKey) => { + selectedTasks[sKey] = true; + }); + break; + } + if (selectedTasks[taskName] === false) { + selectedTasks[taskName] = true; + } else if (typeof selectedTasks[taskName] === "undefined") { + log.warn(`Unable to include task '${taskName}': Task is unknown`); + } + } + + // Filter only for tasks that will be executed + selectedTasks = Object.keys(selectedTasks).filter((task) => selectedTasks[task]); + + return selectedTasks; +}; diff --git a/packages/project/lib/buildHelpers/createBuildManifest.js b/packages/project/lib/buildHelpers/createBuildManifest.js new file mode 100644 index 00000000000..7f46915dd9d --- /dev/null +++ b/packages/project/lib/buildHelpers/createBuildManifest.js @@ -0,0 +1,55 @@ +function getVersion(pkg) { + const packageInfo = require(`${pkg}/package.json`); + return packageInfo.version; +} + +module.exports = async function(project, buildConfig) { + const projectName = project.getName(); + const type = project.getType(); + + const pathMapping = {}; + switch (type) { + case "application": + pathMapping.webapp = `resources/${project.getNamespace()}`; + break; + case "library": + case "theme-library": + pathMapping.src = `resources`; + pathMapping.test = `test-resources`; + break; + default: + throw new Error( + `Unable to create archive metadata for project ${project.getName()}: ` + + `Project type ${type} is currently not supported`); + } + + const metadata = { + project: { + specVersion: project.getSpecVersion(), + type, + metadata: { + name: projectName, + }, + resources: { + configuration: { + paths: pathMapping + } + } + }, + buildManifest: { + manifestVersion: "0.1", + timestamp: new Date().toISOString(), + versions: { + builderVersion: getVersion("@ui5/builder"), + projectVersion: getVersion("@ui5/project"), + fsVersion: getVersion("@ui5/fs"), + }, + buildConfig, + version: project.getVersion(), + namespace: project.getNamespace(), + tags: project.getResourceTagCollection().getAllTags() + } + }; + + return metadata; +}; diff --git a/packages/project/lib/builder.js b/packages/project/lib/builder.js new file mode 100644 index 00000000000..74d7c802e72 --- /dev/null +++ b/packages/project/lib/builder.js @@ -0,0 +1,319 @@ +const {promisify} = require("util"); +const rimraf = promisify(require("rimraf")); +const resourceFactory = require("@ui5/fs").resourceFactory; +const log = require("@ui5/logger").getGroupLogger("builder"); +const BuildContext = require("./buildHelpers/BuildContext"); +const composeProjectList = require("./buildHelpers/composeProjectList"); +const getBuildDefinitionInstance = require("./buildDefinitions/getInstance"); + +async function executeCleanupTasks(buildContext) { + log.info("Executing cleanup tasks..."); + await buildContext.executeCleanupTasks(); +} + +function registerCleanupSigHooks(buildContext) { + function createListener(exitCode) { + return function() { + // Asynchronously cleanup resources, then exit + executeCleanupTasks(buildContext).then(() => { + process.exit(exitCode); + }); + }; + } + + const processSignals = { + "SIGHUP": createListener(128 + 1), + "SIGINT": createListener(128 + 2), + "SIGTERM": createListener(128 + 15), + "SIGBREAK": createListener(128 + 21) + }; + + for (const signal of Object.keys(processSignals)) { + process.on(signal, processSignals[signal]); + } + + // == TO BE DISCUSSED: Also cleanup for unhandled rejections and exceptions? + // Add additional events like signals since they are registered on the process + // event emitter in a similar fashion + // processSignals["unhandledRejection"] = createListener(1); + // process.once("unhandledRejection", processSignals["unhandledRejection"]); + // processSignals["uncaughtException"] = function(err, origin) { + // const fs = require("fs"); + // fs.writeSync( + // process.stderr.fd, + // `Caught exception: ${err}\n` + + // `Exception origin: ${origin}` + // ); + // createListener(1)(); + // }; + // process.once("uncaughtException", processSignals["uncaughtException"]); + + return processSignals; +} + +function deregisterCleanupSigHooks(signals) { + for (const signal of Object.keys(signals)) { + process.removeListener(signal, signals[signal]); + } +} + +/** + * Calculates the elapsed build time and returns a prettified output + * + * @private + * @param {Array} startTime Array provided by process.hrtime() + * @returns {string} Difference between now and the provided time array as formatted string + */ +function getElapsedTime(startTime) { + const prettyHrtime = require("pretty-hrtime"); + const timeDiff = process.hrtime(startTime); + return prettyHrtime(timeDiff); +} + +/** + * Configures the project build and starts it. + * + * @public + * @param {object} parameters Parameters + * @param {module:@ui5/project.graph.ProjectGraph} parameters.graph Project graph + * @param {string} parameters.destPath Target path + * @param {boolean} [parameters.cleanDest=false] Decides whether project should clean the target path before build + * @param {Array.} [parameters.includedDependencies=[]] + * List of names of projects to include in the build result + * If the wildcard '*' is provided, all dependencies will be included in the build result. + * @param {Array.} [parameters.excludedDependencies=[]] + * List of names of projects to exclude from the build result. + * @param {object} [parameters.complexDependencyIncludes] TODO 3.0 + * @param {boolean} [parameters.selfContained=false] Flag to activate self contained build + * @param {boolean} [parameters.cssVariables=false] Flag to activate CSS variables generation + * @param {boolean} [parameters.jsdoc=false] Flag to activate JSDoc build + * @param {boolean} [parameters.createBuildManifest=false] Whether to create a build manifest file for the root project. + * This is currently only supported for projects of type 'library' and 'theme-library' + * @param {Array.} [parameters.includedTasks=[]] List of tasks to be included + * @param {Array.} [parameters.excludedTasks=[]] List of tasks to be excluded. + * If the wildcard '*' is provided, only the included tasks will be executed. + * @returns {Promise} Promise resolving to undefined once build has finished + */ +module.exports = async function({ + graph, destPath, cleanDest = false, + includedDependencies = [], excludedDependencies = [], + complexDependencyIncludes, + selfContained = false, cssVariables = false, jsdoc = false, createBuildManifest = false, + includedTasks = [], excludedTasks = [], +}) { + if (!graph) { + throw new Error(`Missing parameter 'graph'`); + } + if (!destPath) { + throw new Error(`Missing parameter 'destPath'`); + } + if (graph.isSealed()) { + throw new Error( + `Can not build project graph with root node ${this._rootProjectName}: Graph has already been sealed`); + } + + if (complexDependencyIncludes) { + if (includedDependencies.length || excludedDependencies.length) { + throw new Error( + "Parameter 'complexDependencyIncludes' can't be used in conjunction " + + "with parameters 'includedDependencies' or 'excludedDependencies"); + } + ({includedDependencies, excludedDependencies} = await composeProjectList(graph, complexDependencyIncludes)); + } else if (includedDependencies.length || excludedDependencies.length) { + ({includedDependencies, excludedDependencies} = await composeProjectList(graph, { + includeDependencyTree: includedDependencies, + excludeDependencyTree: excludedDependencies + })); + } + + const startTime = process.hrtime(); + const rootProjectName = graph.getRoot().getName(); + + if (createBuildManifest && !["library", "theme-library"].includes(graph.getRoot().getType())) { + throw new Error( + `Build manifest creation is currently not supported for projects of type ${graph.getRoot().getType()}`); + } + + log.info(`Building project ${rootProjectName}`); + if (includedDependencies.length) { + log.info(` Requested dependencies:`); + log.info(` + ${includedDependencies.join("\n + ")}`); + } + if (excludedDependencies.length) { + log.info(` Excluded dependencies:`); + log.info(` - ${excludedDependencies.join("\n + ")}`); + } + log.info(` Target directory: ${destPath}`); + + const buildConfig = {selfContained, jsdoc, includedTasks, excludedTasks}; + + const fsTarget = resourceFactory.createAdapter({ + fsBasePath: destPath, + virBasePath: "/" + }); + + const buildContext = new BuildContext({ + graph, + options: { + cssVariables + } + }); + const cleanupSigHooks = registerCleanupSigHooks(buildContext); + function projectFilter(projectName) { + function projectMatchesAny(deps) { + return deps.some((dep) => dep instanceof RegExp ? + dep.test(projectName) : dep === projectName); + } + + if (projectName === rootProjectName) { + // Always include the root project + return true; + } + + if (projectMatchesAny(excludedDependencies)) { + return false; + } + + if (includedDependencies.includes("*") || projectMatchesAny(includedDependencies)) { + return true; + } + + return false; + } + + // Count total number of projects to build + const requestedProjects = graph.getAllProjects().map((p) => p.getName()).filter(function(projectName) { + return projectFilter(projectName); + }); + + try { + const buildableProjects = {}; + // Copy list of requested projects. We might need to build more projects than requested to + // in order to satisfy tasks requiring dependencies to be built but we will still only write the + // resources of the requested projects to the build result + let projectsToBuild = [...requestedProjects]; + + const buildLogger = log.createTaskLogger("🛠 "); + await graph.traverseBreadthFirst(async function({project, getDependencies}) { + const projectName = project.getName(); + const projectContext = buildContext.createProjectContext({ + project, + log: buildLogger + }); + log.verbose(`Preparing project ${projectName}...`); + + const taskUtil = projectContext.getTaskUtil(); + const builder = getBuildDefinitionInstance({ + graph, + project, + taskUtil, + parentLogger: log + }); + buildableProjects[projectName] = { + projectContext, + builder + }; + + if (projectsToBuild.includes(projectName) && builder.requiresDependencies(buildConfig)) { + getDependencies().forEach((dep) => { + const depName = dep.getName(); + if (project.hasBuildManifest() && !dep.hasBuildManifest()) { + throw new Error( + `Project ${depName} must provide a build manifest since it is a dependency of ` + + `project ${projectName} which already provides a build manifest and therefore ` + + `cannot be re-built`); + } + if (!projectsToBuild.includes(depName)) { + log.info(`Project ${projectName} requires dependency ${depName} to be built`); + projectsToBuild.push(depName); + } + }); + } + }); + + projectsToBuild = projectsToBuild.filter((projectName) => { + if (graph.getProject(projectName).hasBuildManifest()) { + log.verbose(`Found a build manifest for project ${projectName}. Skipping build.`); + return false; + } + return true; + }); + + buildLogger.addWork(projectsToBuild.length); + log.info(`Projects required to build: `); + log.info(` > ${projectsToBuild.join("\n > ")}`); + + if (cleanDest) { + await rimraf(destPath); + } + + await graph.traverseDepthFirst(async function({project, getDependencies}) { + const projectName = project.getName(); + if (!projectsToBuild.includes(projectName)) { + return; + } + const {projectContext, builder} = buildableProjects[projectName]; + + buildLogger.startWork(`Building project ${project.getName()}...`); + + const readers = []; + await graph.traverseBreadthFirst(project.getName(), async function({project: dep}) { + if (dep.getName() === project.getName()) { + // Ignore project itself + return; + } + readers.push(dep.getReader()); + }); + + const dependencies = resourceFactory.createReaderCollection({ + name: `Dependency reader collection for project ${project.getName()}`, + readers + }); + + await builder.build(buildConfig, { + workspace: project.getWorkspace(), + dependencies, + }); + log.verbose("Finished building project %s", project.getName()); + buildLogger.completeWork(1); + + if (!requestedProjects.includes(projectName)) { + // This project shall not be part of the build result + return; + } + + log.verbose(`Writing out files...`); + const taskUtil = projectContext.getTaskUtil(); + const resources = await project.getReader({ + // Force buildtime (=namespaced) style when writing with a build manifest + style: taskUtil.isRootProject() && createBuildManifest ? "buildtime" : "runtime" + }).byGlob("/**/*"); + + if (taskUtil.isRootProject() && createBuildManifest) { + // Create and write a build manifest metadata file + const createBuildManifest = require("./buildHelpers/createBuildManifest"); + const metadata = await createBuildManifest(project, buildConfig); + await fsTarget.write(resourceFactory.createResource({ + path: `/.ui5/build-manifest.json`, + string: JSON.stringify(metadata, null, "\t") + })); + } + + await Promise.all(resources.map((resource) => { + if (taskUtil.getTag(resource, taskUtil.STANDARD_TAGS.OmitFromBuildResult)) { + log.verbose(`Skipping write of resource tagged as "OmitFromBuildResult": ` + + resource.getPath()); + return; // Skip target write for this resource + } + return fsTarget.write(resource); + })); + }); + log.info(`Build succeeded in ${getElapsedTime(startTime)}`); + } catch (err) { + log.error(`Build failed in ${getElapsedTime(startTime)}`); + throw err; + } finally { + deregisterCleanupSigHooks(cleanupSigHooks); + await executeCleanupTasks(buildContext); + } +}; diff --git a/packages/project/lib/generateProjectGraph.js b/packages/project/lib/generateProjectGraph.js new file mode 100644 index 00000000000..c00f75b34be --- /dev/null +++ b/packages/project/lib/generateProjectGraph.js @@ -0,0 +1,171 @@ +const path = require("path"); +const projectGraphBuilder = require("./graph/projectGraphBuilder"); +const ui5Framework = require("./graph/helpers/ui5Framework"); +const log = require("@ui5/logger").getLogger("generateProjectGraph"); + +function resolveProjectPaths(cwd, project) { + project.path = path.resolve(cwd, project.path); + if (project.dependencies) { + project.dependencies.forEach((project) => resolveProjectPaths(cwd, project)); + } + return project; +} + +/** + * Helper module to create a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph} + * from a directory + * + * @public + * @alias module:@ui5/project.generateProjectGraph + * @param {TreeNode} tree Dependency tree as returned by a translator + * @returns {module:@ui5/project.graph.ProjectGraph} A new project graph instance + */ +const generateProjectGraph = { + /** + * Generates a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph} by resolving + * dependencies from package.json files and configuring projects from ui5.yaml files + * + * @public + * @param {object} [options] + * @param {string} [options.cwd=process.cwd()] Directory to start searching for the root module + * @param {object} [options.rootConfiguration] + * Configuration object to use for the root module instead of reading from a configuration file + * @param {string} [options.rootConfigPath] + * Configuration file to use for the root module instead the default ui5.yaml + * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project + * @param {string} [options.resolveFrameworkDependencies=true] + * Whether framework dependencies should be added to the graph + * @returns {Promise} Promise resolving to a Project Graph instance + */ + usingNodePackageDependencies: async function({ + cwd, rootConfiguration, rootConfigPath, + versionOverride, resolveFrameworkDependencies = true + }) { + log.verbose(`Creating project graph using npm provider...`); + const NpmProvider = require("./graph/providers/NodePackageDependencies"); + + const provider = new NpmProvider({ + cwd: cwd ? path.resolve(cwd) : process.cwd(), + rootConfiguration, + rootConfigPath + }); + + const projectGraph = await projectGraphBuilder(provider); + + if (resolveFrameworkDependencies) { + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); + } + + return projectGraph; + }, + + /** + * Generates a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph} from a + * YAML file following the structure of the + * [@ui5/project.graph.projectGraphFromTree]{@link module:@ui5/project.graph.projectGraphFromTree} API + * + * @public + * @param {object} options + * @param {object} [options.filePath=projectDependencies.yaml] Path to the dependency configuration file + * @param {string} [options.cwd=process.cwd()] Directory to resolve relative paths to + * @param {object} [options.rootConfiguration] + * Configuration object to use for the root module instead of reading from a configuration file + * @param {string} [options.rootConfigPath] + * Configuration file to use for the root module instead the default ui5.yaml + * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project + * @param {string} [options.resolveFrameworkDependencies=true] + * Whether framework dependencies should be added to the graph + * @returns {Promise} Promise resolving to a Project Graph instance + */ + usingStaticFile: async function({ + cwd, filePath = "projectDependencies.yaml", + rootConfiguration, rootConfigPath, + versionOverride, resolveFrameworkDependencies = true + }) { + log.verbose(`Creating project graph using static file...`); + + const dependencyTree = await generateProjectGraph + ._readDependencyConfigFile(cwd ? path.resolve(cwd) : process.cwd(), filePath); + + const DependencyTreeProvider = require("./graph/providers/DependencyTree"); + const provider = new DependencyTreeProvider({ + dependencyTree, + rootConfiguration, + rootConfigPath + }); + + const projectGraph = await projectGraphBuilder(provider); + + if (resolveFrameworkDependencies) { + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); + } + + return projectGraph; + }, + + /** + * Generates a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph} from a + * YAML file following the structure of the + * [@ui5/project.graph.projectGraphFromTree]{@link module:@ui5/project.graph.projectGraphFromTree} API + * + * @public + * @param {object} options + * @param {module:@ui5/project.graph.providers.DependencyTree.TreeNode} options.dependencyTree + * @param {object} [options.rootConfiguration] + * Configuration object to use for the root module instead of reading from a configuration file + * @param {string} [options.rootConfigPath] + * Configuration file to use for the root module instead the default ui5.yaml + * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project + * @param {string} [options.resolveFrameworkDependencies=true] + * Whether framework dependencies should be added to the graph + * @returns {Promise} Promise resolving to a Project Graph instance + */ + usingObject: async function({ + dependencyTree, + rootConfiguration, rootConfigPath, + versionOverride, resolveFrameworkDependencies = true + }) { + log.verbose(`Creating project graph using object...`); + + const DependencyTreeProvider = require("./graph/providers/DependencyTree"); + const dependencyTreeProvider = new DependencyTreeProvider({ + dependencyTree, + rootConfiguration, + rootConfigPath + }); + + const projectGraph = await projectGraphBuilder(dependencyTreeProvider); + + if (resolveFrameworkDependencies) { + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); + } + + return projectGraph; + }, + + async _readDependencyConfigFile(cwd, filePath) { + const fs = require("graceful-fs"); + const {promisify} = require("util"); + const readFile = promisify(fs.readFile); + const parseYaml = require("js-yaml").load; + + if (!path.isAbsolute(filePath)) { + filePath = path.join(cwd, filePath); + } + + let dependencyTree; + try { + const contents = await readFile(filePath, {encoding: "utf-8"}); + dependencyTree = parseYaml(contents, { + filename: filePath + }); + } catch (err) { + throw new Error( + `Failed to load dependency tree configuration from path ${filePath}: ${err.message}`); + } + resolveProjectPaths(cwd, dependencyTree); + return dependencyTree; + } +}; + +module.exports = generateProjectGraph; diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js new file mode 100644 index 00000000000..875f7ff6ed4 --- /dev/null +++ b/packages/project/lib/graph/Module.js @@ -0,0 +1,446 @@ +const fs = require("graceful-fs"); +const path = require("path"); +const {promisify} = require("util"); +const readFile = promisify(fs.readFile); +const jsyaml = require("js-yaml"); +const resourceFactory = require("@ui5/fs").resourceFactory; +const Specification = require("../specifications/Specification"); +const {validate} = require("../validation/validator"); + +const log = require("@ui5/logger").getLogger("graph:Module"); + +const DEFAULT_CONFIG_PATH = "ui5.yaml"; +const SAP_THEMES_NS_EXEMPTIONS = ["themelib_sap_fiori_3", "themelib_sap_bluecrystal", "themelib_sap_belize"]; + +function clone(obj) { + return JSON.parse(JSON.stringify(obj)); +} +/** + * Raw representation of a UI5 Project. A module can contain zero to one projects and n extensions. + * This class is intended for private use by the + * [@ui5/project.graph.projectGraphFromTree]{@link module:@ui5/project.graph.projectGraphFromTree} module + * + * @private + * @memberof module:@ui5/project.graph + */ +class Module { + /** + * @param {object} parameters Module parameters + * @param {string} parameters.id Unique ID for the module + * @param {string} parameters.version Version of the module + * @param {string} parameters.modulePath File System path to access the projects resources + * @param {string} [parameters.configPath=ui5.yaml] + * Either a path relative to `modulePath` which will be resolved by @ui5/fs (default), + * or an absolute File System path to the configuration file. + * @param {object|object[]} [parameters.configuration] + * Configuration object or array of objects to use. If supplied, no configuration files + * will be read and the `configPath` option must not be provided. + * @param {@ui5/project.graph.ShimCollection} [parameters.shimCollection] + * Collection of shims that might be relevant for this module + */ + constructor({id, version, modulePath, configPath, configuration = [], shimCollection}) { + if (!id) { + throw new Error(`Could not create Module: Missing or empty parameter 'id'`); + } + if (!version) { + throw new Error(`Could not create Module: Missing or empty parameter 'version'`); + } + if (!modulePath) { + throw new Error(`Could not create Module: Missing or empty parameter 'modulePath'`); + } + if ( + ( + (Array.isArray(configuration) && configuration.length > 0) || + (!Array.isArray(configuration) && typeof configuration === "object") + ) && configPath + ) { + throw new Error( + `Could not create Module: 'configPath' must not be provided in combination with 'configuration'` + ); + } + + this._id = id; + this._version = version; + this._modulePath = modulePath; + this._configPath = configPath || DEFAULT_CONFIG_PATH; + this._dependencies = {}; + + if (!Array.isArray(configuration)) { + configuration = [configuration]; + } + this._suppliedConfigs = configuration; + + if (shimCollection) { + // Retrieve and clone shims in constructor + // Shims added to the collection at a later point in time should not be applied in this module + const shims = shimCollection.getProjectConfigurationShims(this.getId()); + if (shims && shims.length) { + this._projectConfigShims = clone(shims); + } + } + } + + getId() { + return this._id; + } + + getVersion() { + return this._version; + } + + getPath() { + return this._modulePath; + } + + /** + * Specifications found in the module + * + * @public + * @typedef {object} SpecificationsResult + * @property {@ui5/project.specifications.Project|undefined} Project found in the module (if one is found) + * @property {@ui5/project.specifications.Extension[]} Array of extensions found in the module + * + */ + + /** + * Get any available project and extensions of the module + * + * @returns {SpecificationsResult} Project and extensions found in the module + */ + async getSpecifications() { + if (this._pGetSpecifications) { + return this._pGetSpecifications; + } + + return this._pGetSpecifications = this._getSpecifications(); + } + + async _getSpecifications() { + // Retrieve all configurations available for this module + let configs = await this._getConfigurations(); + + // Edge case: + // Search for project-shims to check whether this module defines a collection for itself + const isCollection = configs.find((configuration) => { + if (configuration.kind === "extension" && configuration.type === "project-shim") { + // TODO create Specification instance and ask it for the configuration + if (configuration.shims && configuration.shims.collections && + configuration.shims.collections[this.getId()]) { + return true; + } + } + }); + + if (isCollection) { + // This module is configured as a collection + // For compatibility reasons with the behavior of projectPreprocessor, + // the project contained in this module must be ignored + configs = configs.filter((configuration) => { + return configuration.kind !== "project"; + }); + } + + // Patch configs + configs.forEach((configuration) => { + if (configuration.kind === "project" && configuration.type === "library" && + configuration.metadata && configuration.metadata.name) { + const libraryName = configuration.metadata.name; + // Old theme-libraries where configured as type "library" + if (SAP_THEMES_NS_EXEMPTIONS.includes(libraryName)) { + configuration.type = "theme-library"; + } + } + }); + + const specs = await Promise.all(configs.map(async (configuration) => { + const buildManifest = configuration._buildManifest; + if (configuration._buildManifest) { + delete configuration._buildManifest; + } + const spec = await Specification.create({ + id: this.getId(), + version: this.getVersion(), + modulePath: this.getPath(), + configuration, + buildManifest + }); + + log.verbose(`Module ${this.getId()} contains ${spec.getKind()} ${spec.getName()}`); + return spec; + })); + + const projects = specs.filter((spec) => { + return spec.getKind() === "project"; + }); + + const extensions = specs.filter((spec) => { + return spec.getKind() === "extension"; + }); + + if (projects.length > 1) { + throw new Error( + `Found ${projects.length} configurations of kind 'project' for ` + + `module ${this.getId()}. There must be only one project per module.`); + } + + return { + project: projects[0], + extensions + }; + } + + /** + * Configuration + */ + async _getConfigurations() { + let configurations; + + configurations = await this._getSuppliedConfigurations(); + + if (!configurations || !configurations.length) { + configurations = await this._getBuildManifestConfigurations(); + } + if (!configurations || !configurations.length) { + configurations = await this._getYamlConfigurations(); + } + if (!configurations || !configurations.length) { + configurations = await this._getShimConfigurations(); + } + return configurations || []; + } + + _normalizeAndApplyShims(config) { + this._normalizeConfig(config); + + if (config.kind !== "project") { // TODO 3.0: Shouldn't this be '==='? + this._applyProjectShims(config); + } + return config; + } + + async _createConfigurationFromShim() { + const config = this._applyProjectShims(); + if (config) { + this._normalizeConfig(config); + return config; + } + } + + _applyProjectShims(config = {}) { + if (!this._projectConfigShims) { + return; + } + this._projectConfigShims.forEach(({name, shim}) => { + log.verbose(`Applying project shim ${name} for module ${this.getId()}...`); + Object.assign(config, shim); + }); + return config; + } + + async _getSuppliedConfigurations() { + if (this._suppliedConfigs.length) { + log.verbose(`Configuration for module ${this.getId()} has been supplied directly`); + return await Promise.all(this._suppliedConfigs.map(async (suppliedConfig) => { + let config = suppliedConfig; + + // If we got supplied with a build manifest object, we need to move the build manifest metadata + // into the project and only return the project + if (suppliedConfig.buildManifest) { + config = suppliedConfig.project; + config._buildManifest = suppliedConfig.buildManifest; + } + return this._normalizeAndApplyShims(config); + })); + } + } + + async _getShimConfigurations() { + // No project configuration found + // => Try to create one from shims + const shimConfiguration = await this._createConfigurationFromShim(); + if (shimConfiguration) { + log.verbose(`Created configuration from shim extensions for module ${this.getId()}`); + return [shimConfiguration]; + } + } + + async _getYamlConfigurations() { + const configs = await this._readConfigFile(); + + if (!configs || !configs.length) { + log.verbose(`Could not find a configuration file for module ${this.getId()}`); + return []; + } + + return await Promise.all(configs.map((config) => { + return this._normalizeAndApplyShims(config); + })); + } + + async _readConfigFile() { + const configPath = this._configPath; + let configFile; + if (path.isAbsolute(configPath)) { + // Handle absolute file paths with the native FS module + try { + configFile = await readFile(configPath, {encoding: "utf8"}); + } catch (err) { + // TODO: Caller might want to ignore this exception for ENOENT errors if non-root projects + // However, this decision should not be made here + throw new Error("Failed to read configuration for project " + + `${this.getId()} at '${configPath}'. Error: ${err.message}`); + } + } else { + // Handle relative file paths with the @ui5/fs (virtual) file system + const reader = await this.getReader(); + let configResource; + try { + configResource = await reader.byPath(path.posix.join("/", configPath)); + } catch (err) { + throw new Error("Failed to read configuration for module " + + `${this.getId()} at "${configPath}". Error: ${err.message}`); + } + if (!configResource) { + if (configPath !== DEFAULT_CONFIG_PATH) { + throw new Error("Failed to read configuration for module " + + `${this.getId()}: Could not find configuration file in module at path '${configPath}'`); + } + return null; + } + configFile = await configResource.getString(); + } + + let configs; + + try { + // Using loadAll with DEFAULT_SAFE_SCHEMA instead of safeLoadAll to pass "filename". + // safeLoadAll doesn't handle its parameters properly. + // See https://github.com/nodeca/js-yaml/issues/456 and https://github.com/nodeca/js-yaml/pull/381 + configs = jsyaml.loadAll(configFile, undefined, { + filename: configPath, + schema: jsyaml.DEFAULT_SAFE_SCHEMA + }); + } catch (err) { + if (err.name === "YAMLException") { + throw new Error("Failed to parse configuration for project " + + `${this.getId()} at '${configPath}'\nError: ${err.message}`); + } else { + throw err; + } + } + + if (!configs || !configs.length) { + // No configs found => exit here + return configs; + } + + // Validate found configurations with schema + const validationResults = await Promise.all( + configs.map(async (config, documentIndex) => { + // Catch validation errors to ensure proper order of rejections within Promise.all + try { + await validate({ + config, + project: { + id: this.getId() + }, + yaml: { + path: configPath, + source: configFile, + documentIndex + } + }); + } catch (error) { + return error; + } + }) + ); + + const validationErrors = validationResults.filter(($) => $); + + if (validationErrors.length > 0) { + // Throw any validation errors + // For now just throw the error of the first invalid document + throw validationErrors[0]; + } + + return configs; + } + + async _getBuildManifestConfigurations() { + const buildManifestMetadata = await this._readBuildManifest(); + + if (!buildManifestMetadata) { + log.verbose(`Could not find any build manifest in module ${this.getId()}`); + return []; + } + + // This function is expected to return the configuration of a project, so we add the buildManifest metadata + // to a temporary attribute of the project configuration and retrieve it later for Specification creation + const config = buildManifestMetadata.project; + config._buildManifest = buildManifestMetadata.buildManifest; + return [this._normalizeAndApplyShims(config)]; + } + + async _readBuildManifest() { + const reader = await this.getReader(); + const buildManifestResource = await reader.byPath("/.ui5/build-manifest.json"); + if (buildManifestResource) { + return JSON.parse(await buildManifestResource.getString()); + } + } + + _normalizeConfig(config) { + if (!config.kind) { + config.kind = "project"; // default + } + return config; + } + + _isConfigValid(project) { + if (!project.type) { + if (project._isRoot) { + throw new Error(`No type configured for root project ${project.id}`); + } + log.verbose(`No type configured for project ${project.id}`); + return false; // ignore this project + } + + if (project.kind !== "project" && project._isRoot) { + // This is arguable. It is not the concern of ui5-project to define the entry point of a project tree + // On the other hand, there is no known use case for anything else right now and failing early here + // makes sense in that regard + throw new Error(`Root project needs to be of kind "project". ${project.id} is of kind ${project.kind}`); + } + + if (project.kind === "project" && project.type === "application") { + // There must be exactly one application project per dependency tree + // If multiple are found, all but the one closest to the root are rejected (ignored) + // If there are two projects equally close to the root, an error is being thrown + if (!this.qualifiedApplicationProject) { + this.qualifiedApplicationProject = project; + } else if (this.qualifiedApplicationProject._level === project._level) { + throw new Error(`Found at least two projects ${this.qualifiedApplicationProject.id} and ` + + `${project.id} of type application with the same distance to the root project. ` + + "Only one project of type application can be used. Failed to decide which one to ignore."); + } else { + return false; // ignore this project + } + } + + return true; + } + + /** + * Resource Access + */ + async getReader() { + return resourceFactory.createReader({ + fsBasePath: this.getPath(), + virBasePath: "/", + name: `Reader for module ${this.getId()}` + }); + } +} + +module.exports = Module; diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js new file mode 100644 index 00000000000..2613e423573 --- /dev/null +++ b/packages/project/lib/graph/ProjectGraph.js @@ -0,0 +1,507 @@ +const log = require("@ui5/logger").getLogger("graph:ProjectGraph"); +/** + * A rooted, directed graph representing a UI5 project, its dependencies and available extensions + * + * @public + * @memberof module:@ui5/project.graph + */ +class ProjectGraph { + /** + * @public + * @param {object} parameters Parameters + * @param {string} parameters.rootProjectName Root project name + */ + constructor({rootProjectName}) { + if (!rootProjectName) { + throw new Error(`Could not create ProjectGraph: Missing or empty parameter 'rootProjectName'`); + } + this._rootProjectName = rootProjectName; + + this._projects = {}; // maps project name to instance + this._adjList = {}; // maps project name to edges/dependencies + this._optAdjList = {}; // maps project name to optional dependencies + + this._extensions = {}; // maps extension name to instance + + this._sealed = false; + this._shouldResolveOptionalDependencies = false; // Performance optimization flag + } + + /** + * Get the root project of the graph + * + * @public + * @returns {module:@ui5/project.specifications.Project} Root project + */ + getRoot() { + const rootProject = this._projects[this._rootProjectName]; + if (!rootProject) { + throw new Error(`Unable to find root project with name ${this._rootProjectName} in project graph`); + } + return rootProject; + } + + /** + * Add a project to the graph + * + * @public + * @param {module:@ui5/project.specifications.Project} project Project which should be added to the graph + * @param {boolean} [ignoreDuplicates=false] Whether an error should be thrown when a duplicate project is added + */ + addProject(project, ignoreDuplicates) { + this._checkSealed(); + const projectName = project.getName(); + if (this._projects[projectName]) { + if (ignoreDuplicates) { + return; + } + throw new Error( + `Failed to add project ${projectName} to graph: A project with that name has already been added`); + } + if (!isNaN(projectName)) { + // Reject integer-like project names. They would take precedence when traversing object keys which + // could lead to unexpected behavior. We don't really expect anyone to use such names anyways + throw new Error( + `Failed to add project ${projectName} to graph: Project name must not be integer-like`); + } + log.verbose(`Adding project: ${projectName}`); + this._projects[projectName] = project; + this._adjList[projectName] = []; + this._optAdjList[projectName] = []; + } + + /** + * Retrieve a single project from the dependency graph + * + * @public + * @param {string} projectName Name of the project to retrieve + * @returns {module:@ui5/project.specifications.Project|undefined} + * project instance or undefined if the project is unknown to the graph + */ + getProject(projectName) { + return this._projects[projectName]; + } + + /** + * Get all projects as a nested array containing pairs of project name and -instance. + * + * @public + * @returns {Array>} + */ + getAllProjects() { + return Object.values(this._projects); + } + + /** + * Add an extension to the graph + * + * @public + * @param {module:@ui5/project.specification.Extension} extension Extension which should be available in the graph + */ + addExtension(extension) { + this._checkSealed(); + const extensionName = extension.getName(); + if (this._extensions[extensionName]) { + throw new Error( + `Failed to add extension ${extensionName} to graph: ` + + `An extension with that name has already been added`); + } + if (!isNaN(extensionName)) { + // Reject integer-like extension names. They would take precedence when traversing object keys which + // might lead to unexpected behavior in the future. We don't really expect anyone to use such names anyways + throw new Error( + `Failed to add extension ${extensionName} to graph: Extension name must not be integer-like`); + } + this._extensions[extensionName] = extension; + } + + /** + * @public + * @param {string} extensionName Name of the extension to retrieve + * @returns {module:@ui5/project.specification.Extension|undefined} + * Extension instance or undefined if the extension is unknown to the graph + */ + getExtension(extensionName) { + return this._extensions[extensionName]; + } + + /** + * Get all extensions as a nested array containing pairs of extension name and -instance. + * + * @public + * @returns {Array>} + */ + getAllExtensions() { + return Object.values(this._extensions); + } + + /** + * Declare a dependency from one project in the graph to another + * + * @public + * @param {string} fromProjectName Name of the depending project + * @param {string} toProjectName Name of project on which the other depends + */ + declareDependency(fromProjectName, toProjectName) { + this._checkSealed(); + try { + // if (this._optAdjList[fromProjectName] && this._optAdjList[fromProjectName][toProjectName]) { + // // TODO: Do we even care? + // throw new Error(`Dependency has already been declared as optional`); + // } + log.verbose(`Declaring dependency: ${fromProjectName} depends on ${toProjectName}`); + this._declareDependency(this._adjList, fromProjectName, toProjectName); + } catch (err) { + throw new Error( + `Failed to declare dependency from project ${fromProjectName} to ${toProjectName}: ` + + err.message); + } + } + + + /** + * Declare a dependency from one project in the graph to another + * + * @public + * @param {string} fromProjectName Name of the depending project + * @param {string} toProjectName Name of project on which the other depends + */ + declareOptionalDependency(fromProjectName, toProjectName) { + this._checkSealed(); + try { + // if (this._adjList[fromProjectName] && this._adjList[fromProjectName][toProjectName]) { + // // TODO: Do we even care? + // throw new Error(`Dependency has already been declared as non-optional`); + // } + log.verbose(`Declaring optional dependency: ${fromProjectName} depends on ${toProjectName}`); + this._declareDependency(this._optAdjList, fromProjectName, toProjectName); + this._shouldResolveOptionalDependencies = true; + } catch (err) { + throw new Error( + `Failed to declare optional dependency from project ${fromProjectName} to ${toProjectName}: ` + + err.message); + } + } + + /** + * Declare a dependency from one project in the graph to another + * + * @param {object} map Adjacency map to use + * @param {string} fromProjectName Name of the depending project + * @param {string} toProjectName Name of project on which the other depends + */ + _declareDependency(map, fromProjectName, toProjectName) { + if (!this._projects[fromProjectName]) { + throw new Error( + `Unable to find depending project with name ${fromProjectName} in project graph`); + } + if (!this._projects[toProjectName]) { + throw new Error( + `Unable to find dependency project with name ${toProjectName} in project graph`); + } + if (fromProjectName === toProjectName) { + throw new Error( + `A project can't depend on itself`); + } + if (map[fromProjectName].includes(toProjectName)) { + log.warn(`Dependency has already been declared: ${fromProjectName} depends on ${toProjectName}`); + } else { + map[fromProjectName].push(toProjectName); + } + } + + /** + * Get all direct dependencies of a project as an array of project names + * + * @public + * @param {string} projectName Name of the project to retrieve the dependencies of + * @returns {module:@ui5/project.specifications.Project[]} Project instances of the given project's dependencies + */ + getDependencies(projectName) { + const adjacencies = this._adjList[projectName]; + if (!adjacencies) { + throw new Error( + `Failed to get dependencies for project ${projectName}: ` + + `Unable to find project in project graph`); + } + return adjacencies; + } + + /** + * Checks whether a dependency is optional or not. + * Currently only used in tests. + * + * @private + * @param {string} fromProjectName Name of the depending project + * @param {string} toProjectName Name of project on which the other depends + * @returns {boolean} True if the dependency is currently optional + */ + isOptionalDependency(fromProjectName, toProjectName) { + const adjacencies = this._adjList[fromProjectName]; + if (!adjacencies) { + throw new Error( + `Failed to determine whether dependency from ${fromProjectName} to ${toProjectName} ` + + `is optional: ` + + `Unable to find project with name ${fromProjectName} in project graph`); + } + if (adjacencies.includes(toProjectName)) { + return false; + } + const optAdjacencies = this._optAdjList[fromProjectName]; + if (optAdjacencies.includes(toProjectName)) { + return true; + } + return false; + } + + /** + * Transforms any optional dependencies declared in the graph to non-optional dependency, if the target + * can already be reached from the root project. + * + * @public + */ + async resolveOptionalDependencies() { + if (!this._shouldResolveOptionalDependencies) { + log.verbose(`Skipping resolution of optional dependencies since none have been declared`); + return; + } + log.verbose(`Resolving optional dependencies...`); + + // First collect all projects that are currently reachable from the root project (=all non-optional projects) + const resolvedProjects = new Set; + await this.traverseBreadthFirst(({project}) => { + resolvedProjects.add(project.getName()); + }); + + for (const [projectName, dependencies] of Object.entries(this._optAdjList)) { + for (let i = dependencies.length - 1; i >= 0; i--) { + const targetProjectName = dependencies[i]; + if (resolvedProjects.has(targetProjectName)) { + // Target node is already reachable in the graph + // => Resolve optional dependency + log.verbose(`Resolving optional dependency from ${projectName} to ${targetProjectName}...`); + + if (this._adjList[targetProjectName].includes(projectName)) { + log.verbose( + ` Cyclic optional dependency detected: ${targetProjectName} already has a non-optional ` + + `dependency to ${projectName}`); + log.verbose( + ` Optional dependency from ${projectName} to ${targetProjectName} ` + + `will not be declared as it would introduce a cycle`); + } else { + this.declareDependency(projectName, targetProjectName); + } + } + } + } + } + + /** + * Callback for graph traversal operations + * + * @public + * @async + * @callback module:@ui5/project.graph.ProjectGraph~traversalCallback + * @param {object} parameters Parameters passed to the callback + * @param {module:@ui5/project.specifications.Project} parameters.project The project that is currently visited + * @param {module:@ui5/project.graph.ProjectGraph~getDependencies} parameters.getDependencies + * Function to access the dependencies of the project that is currently visited. + * @returns {Promise} Must return a promise on which the graph traversal will wait + */ + + /** + * Helper function available in the + * [traversalCallback]{@link module:@ui5/project.graph.ProjectGraph~traversalCallback} to access the + * dependencies of the corresponding project in the current graph. + *

+ * Note that transitive dependencies can't be accessed this way. Projects should rather add a direct + * dependency to projects they need access to. + * + * @public + * @function module:@ui5/project.graph.ProjectGraph~getDependencies + * @returns {Array.} Direct dependencies of the visited project + */ + + + // TODO: Use generator functions instead? + /** + * Visit every project in the graph that can be reached by the given entry project exactly once. + * The entry project defaults to the root project. + * In case a cycle is detected, an error is thrown + * + * @public + * @param {string} [startName] Name of the project to start the traversal at. Defaults to the graph's root project + * @param {module:@ui5/project.graph.ProjectGraph~traversalCallback} callback Will be called + */ + async traverseBreadthFirst(startName, callback) { + if (!callback) { + // Default optional first parameter + callback = startName; + startName = this._rootProjectName; + } + + if (!this.getProject(startName)) { + throw new Error(`Failed to start graph traversal: Could not find project ${startName} in project graph`); + } + + const queue = [{ + projectNames: [startName], + predecessors: [] + }]; + + const visited = {}; + + while (queue.length) { + const {projectNames, predecessors} = queue.shift(); // Get and remove first entry from queue + + await Promise.all(projectNames.map(async (projectName) => { + this._checkCycle(predecessors, projectName); + + if (visited[projectName]) { + return visited[projectName]; + } + + return visited[projectName] = (async () => { + const newPredecessors = [...predecessors, projectName]; + const dependencies = this.getDependencies(projectName); + + queue.push({ + projectNames: dependencies, + predecessors: newPredecessors + }); + + await callback({ + project: this.getProject(projectName), + getDependencies: () => { + return dependencies.map(($) => this.getProject($)); + } + }); + })(); + })); + } + } + + /** + * Visit every project in the graph that can be reached by the given entry project exactly once. + * The entry project defaults to the root project. + * In case a cycle is detected, an error is thrown + * + * @public + * @param {string} [startName] Name of the project to start the traversal at. Defaults to the graph's root project + * @param {module:@ui5/project.graph.ProjectGraph~traversalCallback} callback Will be called + */ + async traverseDepthFirst(startName, callback) { + if (!callback) { + // Default optional first parameter + callback = startName; + startName = this._rootProjectName; + } + + if (!this.getProject(startName)) { + throw new Error(`Failed to start graph traversal: Could not find project ${startName} in project graph`); + } + return this._traverseDepthFirst(startName, {}, [], callback); + } + + async _traverseDepthFirst(projectName, visited, predecessors, callback) { + this._checkCycle(predecessors, projectName); + + if (visited[projectName]) { + return visited[projectName]; + } + return visited[projectName] = (async () => { + const newPredecessors = [...predecessors, projectName]; + const dependencies = this.getDependencies(projectName); + await Promise.all(dependencies.map((depName) => { + return this._traverseDepthFirst(depName, visited, newPredecessors, callback); + })); + + await callback({ + project: this.getProject(projectName), + getDependencies: () => { + return dependencies.map(($) => this.getProject($)); + } + }); + })(); + } + + _checkCycle(predecessors, projectName) { + if (predecessors.includes(projectName)) { + // We start to run in circles. That's neither expected nor something we can deal with + + // Mark first and last occurrence in chain with an asterisk + predecessors[predecessors.indexOf(projectName)] = `${projectName}*`; + throw new Error(`Detected cyclic dependency chain: ${predecessors.join(" -> ")} -> ${projectName}*`); + } + } + + /** + * Join another project graph into this one. + * Projects and extensions which already exist in this graph will cause an error to be thrown + * + * @public + * @param {module:@ui5/project.graph.ProjectGraph} projectGraph Project Graph to merge into this one + */ + join(projectGraph) { + try { + this._checkSealed(); + if (!projectGraph.isSealed()) { + log.verbose( + `Sealing project graph with root project ${projectGraph._rootProjectName} ` + + `before joining it into project graph with root project ${this._rootProjectName}...`); + projectGraph.seal(); + } + mergeMap(this._projects, projectGraph._projects); + mergeMap(this._adjList, projectGraph._adjList); + mergeMap(this._extensions, projectGraph._extensions); + } catch (err) { + throw new Error( + `Failed to join project graph with root project ${projectGraph._rootProjectName} into ` + + `project graph with root project ${this._rootProjectName}: ${err.message}`); + } + } + + /** + * Seal the project graph so that no further changes can be made to it + * + * @public + */ + seal() { + this._sealed = true; + } + + /** + * Check whether the project graph has been sealed + * + * @public + * @returns {boolean} True if the project graph has been sealed + */ + isSealed() { + return this._sealed; + } + + /** + * Helper function to check and throw in case the project graph has been sealed. + * Intended for use in any function that attempts to make changes to the graph. + * + * @throws Throws in case the project graph has been sealed + */ + _checkSealed() { + if (this._sealed) { + throw new Error(`Project graph with root node ${this._rootProjectName} has been sealed`); + } + } + + // TODO: introduce function to check for dangling nodes/consistency in general? +} + +function mergeMap(target, source) { + for (const [key, value] of Object.entries(source)) { + if (target[key]) { + throw new Error(`Failed to merge map: Key '${key}' already present in target set`); + } + target[key] = value; + } +} + +module.exports = ProjectGraph; diff --git a/packages/project/lib/graph/ShimCollection.js b/packages/project/lib/graph/ShimCollection.js new file mode 100644 index 00000000000..fa78c5be6bb --- /dev/null +++ b/packages/project/lib/graph/ShimCollection.js @@ -0,0 +1,53 @@ +const log = require("@ui5/logger").getLogger("graph:ShimCollection"); + +function addToMap(name, fromMap, toMap) { + for (const [moduleId, shim] of Object.entries(fromMap)) { + if (!toMap[moduleId]) { + toMap[moduleId] = []; + } + toMap[moduleId].push({ + name, + shim + }); + } +} + +class ShimCollection { + constructor() { + this._projectConfigShims = {}; + this._dependencyShims = {}; + this._collectionShims = {}; + } + + addProjectShim(shimExtension) { + const name = shimExtension.getName(); + log.verbose(`Adding new shim ${name}...`); + + const configurations = shimExtension.getConfigurationShims(); + if (configurations) { + addToMap(name, configurations, this._projectConfigShims); + } + const dependencies = shimExtension.getDependencyShims(); + if (dependencies) { + addToMap(name, dependencies, this._dependencyShims); + } + const collections = shimExtension.getCollectionShims(); + if (collections) { + addToMap(name, collections, this._collectionShims); + } + } + + getProjectConfigurationShims(moduleId) { + return this._projectConfigShims[moduleId]; + } + + getAllDependencyShims() { + return this._dependencyShims; + } + + getCollectionShims(moduleId) { + return this._collectionShims[moduleId]; + } +} + +module.exports = ShimCollection; diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js new file mode 100644 index 00000000000..a834fded503 --- /dev/null +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -0,0 +1,233 @@ +const Module = require("../Module"); +const ProjectGraph = require("../ProjectGraph"); +const log = require("@ui5/logger").getLogger("graph:helpers:ui5Framework"); + +class ProjectProcessor { + constructor({libraryMetadata}) { + this._libraryMetadata = libraryMetadata; + this._projectGraphPromises = {}; + } + async addProjectToGraph(libName, projectGraph) { + if (this._projectGraphPromises[libName]) { + return this._projectGraphPromises[libName]; + } + return this._projectGraphPromises[libName] = this._addProjectToGraph(libName, projectGraph); + } + async _addProjectToGraph(libName, projectGraph) { + log.verbose(`Creating project for library ${libName}...`); + + + if (!this._libraryMetadata[libName]) { + throw new Error(`Failed to find library ${libName} in dist packages metadata.json`); + } + + const depMetadata = this._libraryMetadata[libName]; + + if (projectGraph.getProject(depMetadata.id)) { + // Already added + return; + } + + const dependencies = await Promise.all(depMetadata.dependencies.map(async (depName) => { + await this.addProjectToGraph(depName, projectGraph); + return depName; + })); + + if (depMetadata.optionalDependencies) { + const resolvedOptionals = await Promise.all(depMetadata.optionalDependencies.map(async (depName) => { + if (this._libraryMetadata[depName]) { + log.verbose(`Resolving optional dependency ${depName} for project ${libName}...`); + await this.addProjectToGraph(depName, projectGraph); + return depName; + } + })); + + dependencies.push(...resolvedOptionals.filter(($)=>$)); + } + + const ui5Module = new Module({ + id: depMetadata.id, + version: depMetadata.version, + modulePath: depMetadata.path + }); + const {project} = await ui5Module.getSpecifications(); + projectGraph.addProject(project); + dependencies.forEach((dependency) => { + projectGraph.declareDependency(libName, dependency); + }); + } +} + +const utils = { + shouldIncludeDependency({optional, development}, root) { + // Root project should include all dependencies + // Otherwise only non-optional and non-development dependencies should be included + return root || (optional !== true && development !== true); + }, + async getFrameworkLibrariesFromGraph(projectGraph) { + const ui5Dependencies = []; + const rootProject = projectGraph.getRoot(); + await projectGraph.traverseBreadthFirst(async ({project}) => { + if (project.isFrameworkProject()) { + // Ignoring UI5 Framework libraries in dependencies + return; + } + // No need to check for specVersion since Specification API is >= 2.0 anyways + const frameworkDependencies = project.getFrameworkDependencies(); + if (!frameworkDependencies.length) { + log.verbose(`Project ${project.getName()} has no framework dependencies`); + // Possible future enhancement: Fallback to detect OpenUI5 framework dependencies in package.json + return; + } + + frameworkDependencies.forEach((dependency) => { + if (!ui5Dependencies.includes(dependency.name) && + utils.shouldIncludeDependency(dependency, project === rootProject)) { + ui5Dependencies.push(dependency.name); + } + }); + }); + return ui5Dependencies; + }, + async declareFrameworkDependenciesInGraph(projectGraph) { + const rootProject = projectGraph.getRoot(); + await projectGraph.traverseBreadthFirst(async ({project}) => { + if (project.isFrameworkProject()) { + // Ignoring UI5 Framework libraries in dependencies + return; + } + // No need to check for specVersion since Specification API is >= 2.0 anyways + const frameworkDependencies = project.getFrameworkDependencies(); + + if (!frameworkDependencies.length) { + log.verbose(`Project ${project.getName()} has no framework dependencies`); + // Possible future enhancement: Fallback to detect OpenUI5 framework dependencies in package.json + return; + } + + frameworkDependencies.forEach((dependency) => { + if (utils.shouldIncludeDependency(dependency, project === rootProject)) { + projectGraph.declareDependency(project.getName(), dependency.name); + } + }); + }); + }, + ProjectProcessor +}; + +/** + * + * + * @private + * @namespace + * @alias module:@ui5/project.translators.ui5Framework + */ +module.exports = { + /** + * + * + * @public + * @param {module:@ui5/project.graph.ProjectGraph} projectGraph + * @param {object} [options] + * @param {string} [options.versionOverride] Framework version to use instead of the root projects framework + * version from the provided tree + * @returns {Promise} + * Promise resolving with the given graph instance to allow method chaining + */ + enrichProjectGraph: async function(projectGraph, options = {}) { + const rootProject = projectGraph.getRoot(); + + if (rootProject.isFrameworkProject()) { + rootProject.getFrameworkDependencies().forEach((dep) => { + if (utils.shouldIncludeDependency(dep) && !projectGraph.getProject(dep.name)) { + throw new Error( + `Missing framework dependency ${dep.name} for project ${rootProject.getName()}`); + } + }); + // Ignoring UI5 Framework libraries in dependencies + return projectGraph; + } + + const frameworkName = rootProject.getFrameworkName(); + const frameworkVersion = rootProject.getFrameworkVersion(); + if (!frameworkName && !frameworkVersion) { + log.verbose(`Root project ${rootProject.getName()} has no framework configuration. Nothing to do here`); + return projectGraph; + } + + if (frameworkName !== "SAPUI5" && frameworkName !== "OpenUI5") { + throw new Error( + `Unknown framework.name "${frameworkName}" for project ${rootProject.getName()}. ` + + `Must be "OpenUI5" or "SAPUI5"` + ); + } + + let Resolver; + if (frameworkName === "OpenUI5") { + Resolver = require("../../ui5Framework/Openui5Resolver"); + } else if (frameworkName === "SAPUI5") { + Resolver = require("../../ui5Framework/Sapui5Resolver"); + } + + let version; + if (!frameworkVersion) { + throw new Error( + `No framework version defined for root project ${rootProject.getName()}` + ); + } else if (options.versionOverride) { + version = await Resolver.resolveVersion(options.versionOverride, {cwd: rootProject.getPath()}); + log.info( + `Overriding configured ${frameworkName} version ` + + `${frameworkVersion} with version ${version}` + ); + } else { + version = frameworkVersion; + } + + const referencedLibraries = await utils.getFrameworkLibrariesFromGraph(projectGraph); + if (!referencedLibraries.length) { + log.verbose( + `No ${frameworkName} libraries referenced in project ${rootProject.getName()} ` + + `or in any of its dependencies`); + return projectGraph; + } + + log.info(`Using ${frameworkName} version: ${version}`); + + const resolver = new Resolver({cwd: rootProject.getPath(), version}); + + let startTime; + if (log.isLevelEnabled("verbose")) { + startTime = process.hrtime(); + } + + const {libraryMetadata} = await resolver.install(referencedLibraries); + + if (log.isLevelEnabled("verbose")) { + const timeDiff = process.hrtime(startTime); + const prettyHrtime = require("pretty-hrtime"); + log.verbose( + `${frameworkName} dependencies ${referencedLibraries.join(", ")} ` + + `resolved in ${prettyHrtime(timeDiff)}`); + } + + const projectProcessor = new utils.ProjectProcessor({ + libraryMetadata + }); + + const frameworkGraph = new ProjectGraph({ + rootProjectName: `fake-root-of-${rootProject.getName()}-framework-dependency-graph` + }); + await Promise.all(referencedLibraries.map(async (libName) => { + await projectProcessor.addProjectToGraph(libName, frameworkGraph); + })); + + log.verbose("Joining framework graph into project graph..."); + projectGraph.join(frameworkGraph); + await utils.declareFrameworkDependenciesInGraph(projectGraph); + return projectGraph; + }, + + // Export for testing only + _utils: process.env.NODE_ENV === "test" ? utils : undefined +}; diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js new file mode 100644 index 00000000000..f32e0f9b7cf --- /dev/null +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -0,0 +1,322 @@ +const path = require("path"); +const Module = require("./Module"); +const ProjectGraph = require("./ProjectGraph"); +const ShimCollection = require("./ShimCollection"); +const log = require("@ui5/logger").getLogger("graph:projectGraphBuilder"); + +function _handleExtensions(graph, shimCollection, extensions) { + extensions.forEach((extension) => { + const type = extension.getType(); + switch (type) { + case "project-shim": + shimCollection.addProjectShim(extension); + break; + case "task": + case "server-middleware": + graph.addExtension(extension); + break; + default: + throw new Error( + `Encountered unexpected extension of type ${type} ` + + `Supported types are 'project-shim', 'task' and 'middleware'`); + } + }); +} + +function validateNode(node) { + if (node.specVersion) { + throw new Error( + `Provided node with ID ${node.id} contains a top-level 'specVersion' property. ` + + `With UI5 Tooling 3.0, project configuration needs to be provided in a dedicated` + + `'configuration' object.`); + } + if (node.metadata) { + throw new Error( + `Provided node with ID ${node.id} contains a top-level 'metadata' property. ` + + `With UI5 Tooling 3.0, project configuration needs to be provided in a dedicated` + + `'configuration' object.`); + } +} + +/** + * Dependency graph node representing a module + * + * @public + * @typedef {object} Node + * @property {string} node.id Unique ID for the project + * @property {string} node.version Version of the project + * @property {string} node.path File System path to access the projects resources + * @property {object|object[]} [node.configuration] + * Configuration object or array of objects to use instead of reading from a configuration file + * @property {string} [node.configPath] Configuration file to use instead the default ui5.yaml + * @property {boolean} [node.optional] + * Whether the node is an optional dependency of the parent it has been requested for + * @property {*} * Additional attributes are allowed but ignored. + * These can be used to pass information internally in the provider. + */ + +/** + * Node Provider interface + * + * @interface NodeProvider + */ + +/** + * Retrieve information on the root module + * + * @function + * @name NodeProvider#getRootNode + * @returns {Node} The root node of the dependency graph + */ + +/** + * Retrieve information on given a nodes dependencies + * + * @function + * @name NodeProvider#getDependencies + * @param {Node} The root node of the dependency graph + * @returns {Node[]} Array of nodes which are direct dependencies of the given node + */ + +/** + * Generic helper module to create a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph}. + * For example from a dependency tree as returned by the legacy "translators". + * + * @public + * @alias module:@ui5/project.graph.projectGraphBuilder + * @param {NodeProvider} nodeProvider + * @returns {module:@ui5/project.graph.ProjectGraph} A new project graph instance + */ +module.exports = async function(nodeProvider) { + const shimCollection = new ShimCollection(); + const moduleCollection = {}; + + const rootNode = await nodeProvider.getRootNode(); + validateNode(rootNode); + const rootModule = new Module({ + id: rootNode.id, + version: rootNode.version, + modulePath: rootNode.path, + configPath: rootNode.configPath, + configuration: rootNode.configuration + }); + const {project: rootProject, extensions: rootExtensions} = await rootModule.getSpecifications(); + if (!rootProject) { + throw new Error( + `Failed to create a UI5 project from module ${rootNode.id} at ${rootNode.path}. ` + + `Make sure the path is correct and a project configuration is present or supplied.`); + } + + moduleCollection[rootNode.id] = rootModule; + + const rootProjectName = rootProject.getName(); + + let qualifiedApplicationProject = null; + if (rootProject.getType() === "application") { + log.verbose(`Root project ${rootProjectName} qualified as application project for project graph`); + qualifiedApplicationProject = rootProject; + } + + + const projectGraph = new ProjectGraph({ + rootProjectName: rootProjectName + }); + projectGraph.addProject(rootProject); + + function handleExtensions(extensions) { + return _handleExtensions(projectGraph, shimCollection, extensions); + } + + handleExtensions(rootExtensions); + + const queue = []; + + const rootDependencies = await nodeProvider.getDependencies(rootNode); + + if (rootDependencies.length) { + queue.push({ + nodes: rootDependencies, + parentProjectName: rootProjectName + }); + } + + // Breadth-first search + while (queue.length) { + const {nodes, parentProjectName} = queue.shift(); // Get and remove first entry from queue + const res = await Promise.all(nodes.map(async (node) => { + let ui5Module = moduleCollection[node.id]; + if (!ui5Module) { + log.verbose(`Creating module ${node.id}...`); + validateNode(node); + ui5Module = moduleCollection[node.id] = new Module({ + id: node.id, + version: node.version, + modulePath: node.path, + configPath: node.configPath, + configuration: node.configuration, + shimCollection + }); + } else if (ui5Module.getPath() !== node.path) { + log.verbose( + `Inconsistency detected: Tree contains multiple nodes with ID ${node.id} and different paths:` + + `\nPath of already added node (this one will be used): ${ui5Module.getPath()}` + + `\nPath of additional node (this one will be ignored in favor of the other): ${node.path}`); + } + + const {project, extensions} = await ui5Module.getSpecifications(); + + return { + node, + project, + extensions + }; + })); + + // Keep this out of the async map function to ensure + // all projects and extensions are applied in a deterministic order + for (let i = 0; i < res.length; i++) { + const { + node, // Tree "raw" dependency tree node + project, // The project found for this node, if any + extensions // Any extensions found for this node + } = res[i]; + + handleExtensions(extensions); + + // Check for collection shims + const collectionShims = shimCollection.getCollectionShims(node.id); + if (collectionShims && collectionShims.length) { + log.verbose( + `One or more module collection shims have been defined for module ${node.id}. ` + + `Therefore the module itself will not be resolved.`); + + const shimmedNodes = collectionShims.map(({name, shim}) => { + log.verbose(`Applying module collection shim ${name} for module ${node.id}:`); + return Object.entries(shim.modules).map(([shimModuleId, shimModuleRelPath]) => { + const shimModulePath = path.join(node.path, shimModuleRelPath); + log.verbose(` Injecting module ${shimModuleId} with path ${shimModulePath}`); + return { + id: shimModuleId, + version: node.version, + path: shimModulePath, + configuration: project && project.getConfigurationObject() + }; + }); + }); + + queue.push({ + nodes: Array.prototype.concat.apply([], shimmedNodes), + parentProjectName, + }); + // Skip collection node + continue; + } + let skipDependencies = false; + if (project) { + const projectName = project.getName(); + if (project.getType() === "application") { + // Special handling of application projects of which there must be exactly *one* + // in the graph. Others shall be ignored. + if (!qualifiedApplicationProject) { + log.verbose(`Project ${projectName} qualified as application project for project graph`); + qualifiedApplicationProject = project; + } else if (qualifiedApplicationProject.getName() !== projectName) { + // Project is not a duplicate of an already qualified project (which should + // still be processed below), but a unique, additional application project + + // TODO: Should this rather be a verbose logging? + // projectPreprocessor handled this like any project that got ignored and did a + // (in this case misleading) general verbose logging: + // "Ignoring project with missing configuration" + log.info( + `Excluding additional application project ${projectName} from graph. `+ + `The project graph can only feature a single project of type application. ` + + `Project ${qualifiedApplicationProject.getName()} has already qualified for that role.`); + continue; + } + } + if (projectGraph.getProject(projectName)) { + log.verbose( + `Project ${projectName} has already been added to the graph. ` + + `Skipping dependency resolution...`); + skipDependencies = true; + } else { + projectGraph.addProject(project); + } + + // if (!node.deduped) { + // Even if not deduped, the node might occur multiple times in the tree (on separate branches). + // Therefore still supplying the ignore duplicates parameter here (true) + // } + + if (parentProjectName) { + if (node.optional) { + projectGraph.declareOptionalDependency(parentProjectName, projectName); + } else { + projectGraph.declareDependency(parentProjectName, projectName); + } + } + } + + if (!project && !extensions.length) { + // Module provided neither a project nor an extension + // => Do not follow its dependencies + log.verbose( + `Module ${node.id} neither provided a project nor an extension. Skipping dependency resolution.`); + skipDependencies = true; + } + + if (skipDependencies) { + continue; + } + + const nodeDependencies = await nodeProvider.getDependencies(node); + if (nodeDependencies) { + queue.push({ + // copy array, so that the queue is stable while ignored project dependencies are removed + nodes: [...nodeDependencies], + parentProjectName: project ? project.getName() : parentProjectName, + }); + } + } + } + + // Apply dependency shims + for (const [shimmedModuleId, moduleDepShims] of Object.entries(shimCollection.getAllDependencyShims())) { + const sourceModule = moduleCollection[shimmedModuleId]; + + for (let j = 0; j < moduleDepShims.length; j++) { + const depShim = moduleDepShims[j]; + if (!sourceModule) { + log.warn(`Could not apply dependency shim ${depShim.name} for ${shimmedModuleId}: ` + + `Module ${shimmedModuleId} is unknown`); + continue; + } + const {project: sourceProject} = await sourceModule.getSpecifications(); + if (!sourceProject) { + log.warn(`Could not apply dependency shim ${depShim.name} for ${shimmedModuleId}: ` + + `Source module ${shimmedModuleId} does not contain a project`); + continue; + } + for (let k = 0; k < depShim.shim.length; k++) { + const targetModuleId = depShim.shim[k]; + const targetModule = moduleCollection[targetModuleId]; + if (!targetModule) { + log.warn(`Could not apply dependency shim ${depShim.name} for ${shimmedModuleId}: ` + + `Target module $${depShim} is unknown`); + continue; + } + const {project: targetProject} = await targetModule.getSpecifications(); + if (!targetProject) { + log.warn(`Could not apply dependency shim ${depShim.name} for ${shimmedModuleId}: ` + + `Target module ${targetModuleId} does not contain a project`); + continue; + } + projectGraph.declareDependency(sourceProject.getName(), targetProject.getName()); + } + } + } + await projectGraph.resolveOptionalDependencies(); + + return projectGraph; +}; diff --git a/packages/project/lib/graph/providers/DependencyTree.js b/packages/project/lib/graph/providers/DependencyTree.js new file mode 100644 index 00000000000..b9a4704867e --- /dev/null +++ b/packages/project/lib/graph/providers/DependencyTree.js @@ -0,0 +1,53 @@ +/** + * Tree node + * + * @public + * @typedef {object} TreeNode + * @property {string} node.id Unique ID for the project + * @property {string} node.version Version of the project + * @property {string} node.path File System path to access the projects resources + * @property {object|object[]} [node.configuration] + * Configuration object or array of objects to use instead of reading from a configuration file + * @property {string} [node.configPath] Configuration file to use instead the default ui5.yaml + * @property {TreeNode[]} dependencies + */ +class DependencyTree { + /** + * Helper module to create a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph} + * from a dependency tree as returned by translators. + * + * @public + * @alias module:@ui5/project.graph.providers.DependencyTree + * @param {object} options + * @param {TreeNode} options.dependencyTree Dependency tree as returned by a translator + * @param {object} [options.rootConfiguration] + * Configuration object to use for the root module instead of reading from a configuration file + * @param {string} [options.rootConfigPath] + * Configuration file to use for the root module instead the default ui5.yaml + */ + constructor({dependencyTree, rootConfiguration, rootConfigPath}) { + if (!dependencyTree) { + throw new Error(`Failed to instantiate DependencyTree provider: Missing parameter 'dependencyTree'`); + } + this._tree = dependencyTree; + if (rootConfiguration) { + this._tree.configuration = rootConfiguration; + } + if (rootConfigPath) { + this._tree.configPath = rootConfigPath; + } + } + + async getRootNode() { + return this._tree; + } + + async getDependencies(node) { + if (node.deduped || !node.dependencies) { + return []; + } + return node.dependencies; + } +} + +module.exports = DependencyTree; diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js new file mode 100644 index 00000000000..35652671bc4 --- /dev/null +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -0,0 +1,152 @@ +const path = require("path"); +const readPkgUp = require("read-pkg-up"); +const readPkg = require("read-pkg"); +const {promisify} = require("util"); +const fs = require("graceful-fs"); +const realpath = promisify(fs.realpath); +const resolveModulePath = promisify(require("resolve")); +const log = require("@ui5/logger").getLogger("graph:providers:NodePackageDependencies"); + +// Packages to consider: +// * https://github.com/npm/read-package-json-fast +// * https://github.com/npm/name-from-folder ? + + +class NodePackageDependencies { + /** + * Generates a project graph from npm modules + * + * @public + * @param {object} options + * @param {string} options.cwd Directory to start searching for the root module + * @param {object} [options.rootConfiguration] + * Configuration object to use for the root module instead of reading from a configuration file + * @param {string} [options.rootConfigPath] + * Configuration file to use for the root module instead the default ui5.yaml + */ + constructor({cwd, rootConfiguration, rootConfigPath}) { + this._cwd = cwd; + this._rootConfiguration = rootConfiguration; + this._rootConfigPath = rootConfigPath; + + // this._nodes = {}; + } + + async getRootNode() { + const rootPkg = await readPkgUp({ + cwd: this._cwd, + normalize: false + }); + + if (!rootPkg || !rootPkg.packageJson) { + throw new Error( + `Failed to locate package.json for directory ${path.resolve(this._cwd)}`); + } + const modulePath = path.dirname(rootPkg.path); + // this._nodes[rootPkg.packageJson.name] = { + // dependencies: Object.keys(rootPkg.packageJson.dependencies) + // }; + return { + id: rootPkg.packageJson.name, + version: rootPkg.packageJson.version, + path: modulePath, + configuration: this._rootConfiguration, + configPath: this._rootConfigPath, + _dependencies: await this._getDependencies(modulePath, rootPkg.packageJson, true) + }; + } + + async getDependencies(node) { + log.verbose(`Resolving dependencies of ${node.id}...`); + if (!node._dependencies) { + return []; + } + return Promise.all(node._dependencies.map(async ({name, optional}) => { + const modulePath = await this._resolveModulePath(node.path, name); + return this._getNode(modulePath, optional); + })); + } + + async _resolveModulePath(baseDir, moduleName) { + log.verbose(`Resolving module path for '${moduleName}'...`); + try { + let packageJsonPath = await resolveModulePath(moduleName + "/package.json", { + basedir: baseDir, + preserveSymlinks: false + }); + packageJsonPath = await realpath(packageJsonPath); + + const modulePath = path.dirname(packageJsonPath); + log.verbose(`Resolved module ${moduleName} to path ${modulePath}`); + return modulePath; + } catch (err) { + throw new Error( + `Unable to locate module ${moduleName} via resolve logic: ${err.message}`); + } + } + + async _getNode(modulePath, optional) { + log.verbose(`Reading package.json in directory ${modulePath}...`); + const packageJson = await readPkg({ + cwd: modulePath, + normalize: false + }); + + return { + id: packageJson.name, + version: packageJson.version, + path: modulePath, + optional, + _dependencies: await this._getDependencies(modulePath, packageJson) + }; + } + + async _getDependencies(modulePath, packageJson, rootModule = false) { + const dependencies = []; + if (packageJson.dependencies) { + Object.keys(packageJson.dependencies).forEach((depName) => { + dependencies.push({ + name: depName, + optional: false + }); + }); + } + if (rootModule && packageJson.devDependencies) { + Object.keys(packageJson.devDependencies).forEach((depName) => { + dependencies.push({ + name: depName, + optional: false + }); + }); + } + if (!rootModule && packageJson.devDependencies) { + await Promise.all(Object.keys(packageJson.devDependencies).map(async (depName) => { + try { + await this._resolveModulePath(modulePath, depName); + dependencies.push({ + name: depName, + optional: true + }); + } catch (err) { + // Ignore error since it's a development dependency of a non-root module + } + })); + } + if (packageJson.optionalDependencies) { + await Promise.all(Object.keys(packageJson.optionalDependencies).map(async (depName) => { + try { + await this._resolveModulePath(modulePath, depName); + dependencies.push({ + name: depName, + optional: false + }); + } catch (err) { + // Ignore error since it's an optional dependency + } + })); + } + return dependencies; + } +} + +module.exports = NodePackageDependencies; diff --git a/packages/project/lib/normalizer.js b/packages/project/lib/normalizer.js deleted file mode 100644 index 00b38a2fa71..00000000000 --- a/packages/project/lib/normalizer.js +++ /dev/null @@ -1,87 +0,0 @@ -const log = require("@ui5/logger").getLogger("normalizer:normalizer"); -const projectPreprocessor = require("./projectPreprocessor"); - - -/** - * Generate project and dependency trees via translators. - * Optionally configure all projects with the projectPreprocessor. - * - * @public - * @namespace - * @alias module:@ui5/project.normalizer - */ -const Normalizer = { - /** - * Generates a project and dependency tree via translators and configures all projects via the projectPreprocessor - * - * @public - * @param {object} [options] - * @param {string} [options.cwd] Current working directory - * @param {string} [options.configPath] Path to configuration file - * @param {string} [options.translatorName] Translator to use - * @param {object} [options.translatorOptions] Options to pass to translator - * @param {object} [options.frameworkOptions] Options to pass to the framework installer - * @param {string} [options.frameworkOptions.versionOverride] Framework version to use instead of the root projects - * framework - * @returns {Promise} Promise resolving to tree object - */ - generateProjectTree: async function(options = {}) { - let tree = await Normalizer.generateDependencyTree(options); - - if (options.configPath) { - tree.configPath = options.configPath; - } - tree = await projectPreprocessor.processTree(tree); - - if (tree.framework) { - const ui5Framework = require("./translators/ui5Framework"); - log.verbose(`Root project ${tree.metadata.name} defines framework ` + - `configuration. Installing UI5 dependencies...`); - let frameworkTree = await ui5Framework.generateDependencyTree(tree, options.frameworkOptions); - if (frameworkTree) { - frameworkTree = await projectPreprocessor.processTree(frameworkTree); - ui5Framework.mergeTrees(tree, frameworkTree); - } - } - return tree; - }, - - /** - * Generates a project and dependency tree via translators - * - * @public - * @param {object} [options] - * @param {string} [options.cwd=.] Current working directory - * @param {string} [options.translatorName=npm] Translator to use - * @param {object} [options.translatorOptions] Options to pass to translator - * @returns {Promise} Promise resolving to tree object - */ - generateDependencyTree: async function({cwd = ".", translatorName="npm", translatorOptions={}} = {}) { - log.verbose("Building dependency tree..."); - - let translatorParams = []; - let translator = translatorName; - if (translatorName.indexOf(":") !== -1) { - translatorParams = translatorName.split(":"); - translator = translatorParams[0]; - translatorParams = translatorParams.slice(1); - } - - let translatorModule; - switch (translator) { - case "static": - translatorModule = require("./translators/static"); - break; - case "npm": - translatorModule = require("./translators/npm"); - break; - default: - return Promise.reject(new Error(`Unknown translator ${translator}`)); - } - - translatorOptions.parameters = translatorParams; - return translatorModule.generateDependencyTree(cwd, translatorOptions); - } -}; - -module.exports = Normalizer; diff --git a/packages/project/lib/projectPreprocessor.js b/packages/project/lib/projectPreprocessor.js deleted file mode 100644 index c4f080f61a9..00000000000 --- a/packages/project/lib/projectPreprocessor.js +++ /dev/null @@ -1,662 +0,0 @@ -const log = require("@ui5/logger").getLogger("normalizer:projectPreprocessor"); -const fs = require("graceful-fs"); -const path = require("path"); -const {promisify} = require("util"); -const readFile = promisify(fs.readFile); -const jsyaml = require("js-yaml"); -const typeRepository = require("@ui5/builder").types.typeRepository; -const {validate} = require("./validation/validator"); - -class ProjectPreprocessor { - constructor({tree}) { - this.tree = tree; - this.processedProjects = {}; - this.configShims = {}; - this.collections = {}; - this.appliedExtensions = {}; - } - - /* - Adapt and enhance the project tree: - - Replace duplicate projects further away from the root with those closer to the root - - Add configuration to projects - */ - async processTree() { - const queue = [{ - projects: [this.tree], - parent: null, - level: 0 - }]; - const configPromises = []; - let startTime; - if (log.isLevelEnabled("verbose")) { - startTime = process.hrtime(); - } - - // Breadth-first search to prefer projects closer to root - while (queue.length) { - const {projects, parent, level} = queue.shift(); // Get and remove first entry from queue - - // Before processing all projects on a level concurrently, we need to set all of them as being processed. - // This prevents transitive dependencies pointing to the same projects from being processed first - // by the dependency lookahead - const projectsToProcess = projects.filter((project) => { - if (!project.id) { - const parentRefText = parent ? `(child of ${parent.id})` : `(root project)`; - throw new Error(`Encountered project with missing id ${parentRefText}`); - } - if (this.isBeingProcessed(parent, project)) { - return false; - } - // Flag this project as being processed - this.processedProjects[project.id] = { - project, - // If a project is referenced multiple times in the dependency tree it is replaced - // with the instance that is closest to the root. - // Here we track the parents referencing that project - parents: [parent] - }; - return true; - }); - - await Promise.all(projectsToProcess.map(async (project) => { - project._level = level; - if (level === 0) { - project._isRoot = true; - } - log.verbose(`Processing project ${project.id} on level ${project._level}...`); - - if (project.dependencies && project.dependencies.length) { - // Do a dependency lookahead to apply any extensions that might affect this project - await this.dependencyLookahead(project, project.dependencies); - } else { - // When using the static translator for instance, dependencies is not defined and will - // fail later access calls to it - project.dependencies = []; - } - - const {extensions} = await this.loadProjectConfiguration(project); - if (extensions && extensions.length) { - // Project contains additional extensions - // => apply them - // TODO: Check whether extensions get applied twice in case depLookahead already processed them - await Promise.all(extensions.map((extProject) => { - return this.applyExtension(extProject); - })); - } - await this.applyShims(project); - if (this.isConfigValid(project)) { - // Do not apply transparent projects. - // Their only purpose might be to have their dependencies processed - if (!project._transparentProject) { - await this.applyType(project); - this.checkProjectMetadata(parent, project); - } - queue.push({ - // copy array, so that the queue is stable while ignored project dependencies are removed - projects: [...project.dependencies], - parent: project, - level: level + 1 - }); - } else { - if (project === this.tree) { - throw new Error( - `Failed to configure root project "${project.id}". Please check verbose log for details.`); - } - // No config available - // => reject this project by removing it from its parents list of dependencies - log.verbose(`Ignoring project ${project.id} with missing configuration ` + - "(might be a non-UI5 dependency)"); - - const parents = this.processedProjects[project.id].parents; - for (let i = parents.length - 1; i >= 0; i--) { - parents[i].dependencies.splice(parents[i].dependencies.indexOf(project), 1); - } - this.processedProjects[project.id] = {ignored: true}; - } - })); - } - return Promise.all(configPromises).then(() => { - if (log.isLevelEnabled("verbose")) { - const prettyHrtime = require("pretty-hrtime"); - const timeDiff = process.hrtime(startTime); - log.verbose( - `Processed ${Object.keys(this.processedProjects).length} projects in ${prettyHrtime(timeDiff)}`); - } - return this.tree; - }); - } - - async dependencyLookahead(parent, dependencies) { - return Promise.all(dependencies.map(async (project) => { - if (this.isBeingProcessed(parent, project)) { - return; - } - log.verbose(`Processing dependency lookahead for ${parent.id}: ${project.id}`); - // Temporarily flag project as being processed - this.processedProjects[project.id] = { - project, - parents: [parent] - }; - const {extensions} = await this.loadProjectConfiguration(project); - if (extensions && extensions.length) { - // Project contains additional extensions - // => apply them - await Promise.all(extensions.map((extProject) => { - return this.applyExtension(extProject); - })); - } - - if (project.kind === "extension") { - // Not a project but an extension - // => remove it as from any known projects that depend on it - const parents = this.processedProjects[project.id].parents; - for (let i = parents.length - 1; i >= 0; i--) { - parents[i].dependencies.splice(parents[i].dependencies.indexOf(project), 1); - } - // Also ignore it from further processing by other projects depending on it - this.processedProjects[project.id] = {ignored: true}; - - if (this.isConfigValid(project)) { - // Finally apply the extension - await this.applyExtension(project); - } else { - log.verbose(`Ignoring extension ${project.id} with missing configuration`); - } - } else { - // Project is not an extension: Reset processing status of lookahead to allow the real processing - this.processedProjects[project.id] = null; - } - })); - } - - isBeingProcessed(parent, project) { // Check whether a project is currently being or has already been processed - const processedProject = this.processedProjects[project.id]; - if (project.deduped) { - // Ignore deduped modules - return true; - } - if (processedProject) { - if (processedProject.ignored) { - log.verbose(`Dependency of project ${parent.id}, "${project.id}" is flagged as ignored.`); - if (parent.dependencies.includes(project)) { - parent.dependencies.splice(parent.dependencies.indexOf(project), 1); - } - return true; - } - log.verbose( - `Dependency of project ${parent.id}, "${project.id}": ` + - `Distance to root of ${parent._level + 1}. Will be replaced `+ - `by project with same ID and distance to root of ${processedProject.project._level}.`); - - // Replace with the already processed project (closer to root -> preferred) - parent.dependencies[parent.dependencies.indexOf(project)] = processedProject.project; - processedProject.parents.push(parent); - - // No further processing needed - return true; - } - return false; - } - - async loadProjectConfiguration(project) { - if (project.specVersion) { // Project might already be configured - // Currently, specVersion is the indicator for configured projects - - if (project._transparentProject) { - // Assume that project is already processed - return {}; - } - - await this.validateAndNormalizeExistingProject(project); - - return {}; - } - - const configs = await this.readConfigFile(project); - - if (!configs || !configs.length) { - return {}; - } - - for (let i = configs.length - 1; i >= 0; i--) { - this.normalizeConfig(configs[i]); - } - - const projectConfigs = configs.filter((config) => { - return config.kind === "project"; - }); - - const extensionConfigs = configs.filter((config) => { - return config.kind === "extension"; - }); - - const projectClone = JSON.parse(JSON.stringify(project)); - - // While a project can contain multiple configurations, - // from a dependency tree perspective it is always a single project - // This means it can represent one "project", plus multiple extensions or - // one extension, plus multiple extensions - - if (projectConfigs.length === 1) { - // All well, this is the one. Merge config into project - Object.assign(project, projectConfigs[0]); - } else if (projectConfigs.length > 1) { - throw new Error(`Found ${projectConfigs.length} configurations of kind 'project' for ` + - `project ${project.id}. There is only one project per configuration allowed.`); - } else if (projectConfigs.length === 0 && extensionConfigs.length) { - // No project, but extensions - // => choose one to represent the project -> the first one - Object.assign(project, extensionConfigs.shift()); - } else { - throw new Error(`Found ${configs.length} configurations for ` + - `project ${project.id}. None are of valid kind.`); - } - - const extensionProjects = extensionConfigs.map((config) => { - // Clone original project - const configuredProject = JSON.parse(JSON.stringify(projectClone)); - - // Enhance project with its configuration - Object.assign(configuredProject, config); - return configuredProject; - }); - - return {extensions: extensionProjects}; - } - - normalizeConfig(config) { - if (!config.kind) { - config.kind = "project"; // default - } - } - - isConfigValid(project) { - if (!project.specVersion) { - if (project._isRoot) { - throw new Error(`No specification version defined for root project ${project.id}`); - } - log.verbose(`No specification version defined for project ${project.id}`); - return false; // ignore this project - } - - if (project.specVersion !== "0.1" && project.specVersion !== "1.0" && - project.specVersion !== "1.1" && project.specVersion !== "2.0" && - project.specVersion !== "2.1" && project.specVersion !== "2.2" && - project.specVersion !== "2.3" && project.specVersion !== "2.4" && - project.specVersion !== "2.5" && project.specVersion !== "2.6") { - throw new Error( - `Unsupported specification version ${project.specVersion} defined for project ` + - `${project.id}. Your UI5 CLI installation might be outdated. ` + - `For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`); - } - - if (!project.type) { - if (project._isRoot) { - throw new Error(`No type configured for root project ${project.id}`); - } - log.verbose(`No type configured for project ${project.id}`); - return false; // ignore this project - } - - if (project.kind !== "project" && project._isRoot) { - // This is arguable. It is not the concern of ui5-project to define the entry point of a project tree - // On the other hand, there is no known use case for anything else right now and failing early here - // makes sense in that regard - throw new Error(`Root project needs to be of kind "project". ${project.id} is of kind ${project.kind}`); - } - - if (project.kind === "project" && project.type === "application") { - // There must be exactly one application project per dependency tree - // If multiple are found, all but the one closest to the root are rejected (ignored) - // If there are two projects equally close to the root, an error is being thrown - if (!this.qualifiedApplicationProject) { - this.qualifiedApplicationProject = project; - } else if (this.qualifiedApplicationProject._level === project._level) { - throw new Error(`Found at least two projects ${this.qualifiedApplicationProject.id} and ` + - `${project.id} of type application with the same distance to the root project. ` + - "Only one project of type application can be used. Failed to decide which one to ignore."); - } else { - return false; // ignore this project - } - } - - return true; - } - - async applyType(project) { - let type; - try { - type = typeRepository.getType(project.type); - } catch (err) { - throw new Error(`Failed to retrieve type for project ${project.id}: ${err.message}`); - } - await type.format(project); - } - - checkProjectMetadata(parent, project) { - if (project.metadata.deprecated && parent && parent._isRoot) { - // Only warn for direct dependencies of the root project - log.warn(`Dependency ${project.metadata.name} is deprecated and should not be used for new projects!`); - } - - if (project.metadata.sapInternal && parent && parent._isRoot && !parent.metadata.allowSapInternal) { - // Only warn for direct dependencies of the root project, except it defines "allowSapInternal" - log.warn(`Dependency ${project.metadata.name} is restricted for use by SAP internal projects only! ` + - `If the project ${parent.metadata.name} is an SAP internal project, add the attribute ` + - `"allowSapInternal: true" to its metadata configuration`); - } - } - - async applyExtension(extension) { - if (!extension.metadata || !extension.metadata.name) { - throw new Error(`metadata.name configuration is missing for extension ${extension.id}`); - } - log.verbose(`Applying extension ${extension.metadata.name}...`); - - if (!extension.specVersion) { - throw new Error(`No specification version defined for extension ${extension.metadata.name}`); - } else if (extension.specVersion !== "0.1" && - extension.specVersion !== "1.0" && - extension.specVersion !== "1.1" && - extension.specVersion !== "2.0" && - extension.specVersion !== "2.1" && - extension.specVersion !== "2.2" && - extension.specVersion !== "2.3" && - extension.specVersion !== "2.4" && - extension.specVersion !== "2.5" && - extension.specVersion !== "2.6") { - throw new Error( - `Unsupported specification version ${extension.specVersion} defined for extension ` + - `${extension.metadata.name}. Your UI5 CLI installation might be outdated. ` + - `For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`); - } else if (this.appliedExtensions[extension.metadata.name]) { - log.verbose(`Extension with the name ${extension.metadata.name} has already been applied. ` + - "This might have been done during dependency lookahead."); - log.verbose(`Already applied extension ID: ${this.appliedExtensions[extension.metadata.name].id}. ` + - `New extension ID: ${extension.id}`); - return; - } - this.appliedExtensions[extension.metadata.name] = extension; - - switch (extension.type) { - case "project-shim": - this.handleShim(extension); - break; - case "task": - this.handleTask(extension); - break; - case "server-middleware": - this.handleServerMiddleware(extension); - break; - default: - throw new Error(`Unknown extension type '${extension.type}' for ${extension.id}`); - } - } - - async readConfigFile(project) { - // A projects configPath property takes precedence over the default "/ui5.yaml" path - const configPath = project.configPath || path.join(project.path, "ui5.yaml"); - let configFile; - try { - configFile = await readFile(configPath, {encoding: "utf8"}); - } catch (err) { - const errorText = "Failed to read configuration for project " + - `${project.id} at "${configPath}". Error: ${err.message}`; - - // Something else than "File or directory does not exist" or root project - if (err.code !== "ENOENT" || project._isRoot) { - throw new Error(errorText); - } else { - log.verbose(errorText); - return null; - } - } - - let configs; - - try { - configs = jsyaml.loadAll(configFile, undefined, { - filename: configPath - }); - } catch (err) { - if (err.name === "YAMLException") { - throw new Error("Failed to parse configuration for project " + - `${project.id} at "${configPath}"\nError: ${err.message}`); - } else { - throw err; - } - } - - if (!configs || !configs.length) { - return configs; - } - - const validationResults = await Promise.all( - configs.map(async (config, documentIndex) => { - // Catch validation errors to ensure proper order of rejections within Promise.all - try { - await validate({ - config, - project: { - id: project.id - }, - yaml: { - path: configPath, - source: configFile, - documentIndex - } - }); - } catch (error) { - return error; - } - }) - ); - - const validationErrors = validationResults.filter(($) => $); - - if (validationErrors.length > 0) { - // For now just throw the error of the first invalid document - throw validationErrors[0]; - } - - return configs; - } - - handleShim(extension) { - if (!extension.shims) { - throw new Error(`Project shim extension ${extension.id} is missing 'shims' configuration`); - } - const {configurations, dependencies, collections} = extension.shims; - - if (configurations) { - log.verbose(`Project shim ${extension.id} contains ` + - `${Object.keys(configurations)} configuration(s)`); - for (const projectId of Object.keys(configurations)) { - this.normalizeConfig(configurations[projectId]); // TODO: Clone object beforehand? - if (this.configShims[projectId]) { - log.verbose(`Project shim ${extension.id}: A configuration shim for project ${projectId} `+ - "has already been applied. Skipping."); - } else if (this.isConfigValid(configurations[projectId])) { - log.verbose(`Project shim ${extension.id}: Adding project configuration for ${projectId}...`); - this.configShims[projectId] = configurations[projectId]; - } else { - log.verbose(`Project shim ${extension.id}: Ignoring invalid ` + - `configuration shim for project ${projectId}`); - } - } - } - - if (dependencies) { - // For the time being, shimmed dependencies only apply to shimmed project configurations - for (const projectId of Object.keys(dependencies)) { - if (this.configShims[projectId]) { - log.verbose(`Project shim ${extension.id}: Adding dependencies ` + - `to project shim '${projectId}'...`); - this.configShims[projectId].dependencies = dependencies[projectId]; - } else { - log.verbose(`Project shim ${extension.id}: No configuration shim found for ` + - `project ID '${projectId}'. Dependency shims currently only apply ` + - "to projects with configuration shims."); - } - } - } - - if (collections) { - log.verbose(`Project shim ${extension.id} contains ` + - `${Object.keys(collections).length} collection(s)`); - for (const projectId of Object.keys(collections)) { - if (this.collections[projectId]) { - log.verbose(`Project shim ${extension.id}: A collection with id '${projectId}' `+ - "is already known. Skipping."); - } else { - log.verbose(`Project shim ${extension.id}: Adding collection with id '${projectId}'...`); - this.collections[projectId] = collections[projectId]; - } - } - } - } - - async applyShims(project) { - const configShim = this.configShims[project.id]; - // Apply configuration shims - if (configShim) { - log.verbose(`Applying configuration shim for project ${project.id}...`); - - if (configShim.dependencies && configShim.dependencies.length) { - if (!configShim.shimDependenciesResolved) { - configShim.dependencies = configShim.dependencies.map((depId) => { - const depProject = this.processedProjects[depId].project; - if (!depProject) { - throw new Error( - `Failed to resolve shimmed dependency '${depId}' for project ${project.id}. ` + - `Is a dependency with ID '${depId}' part of the dependency tree?`); - } - return depProject; - }); - configShim.shimDependenciesResolved = true; - } - configShim.dependencies.forEach((depProject) => { - const parents = this.processedProjects[depProject.id].parents; - if (parents.indexOf(project) === -1) { - parents.push(project); - } else { - log.verbose(`Project ${project.id} is already parent of shimmed dependency ${depProject.id}`); - } - }); - } - - Object.assign(project, configShim); - delete project.shimDependenciesResolved; // Remove shim processing metadata from project - - await this.validateAndNormalizeExistingProject(project); - } - - // Apply collections - for (let i = project.dependencies.length - 1; i >= 0; i--) { - const depId = project.dependencies[i].id; - if (this.collections[depId]) { - log.verbose(`Project ${project.id} depends on collection ${depId}. Resolving...`); - // This project depends on a collection - // => replace collection dependency with first collection project. - const collectionDep = project.dependencies[i]; - const collectionModules = this.collections[depId].modules; - const projects = []; - for (const projectId of Object.keys(collectionModules)) { - // Clone and modify collection "project" - const project = JSON.parse(JSON.stringify(collectionDep)); - project.id = projectId; - project.path = path.join(project.path, collectionModules[projectId]); - projects.push(project); - } - - // Use first collection project to replace the collection dependency - project.dependencies[i] = projects.shift(); - // Add any additional collection projects to end of dependency array (already processed) - project.dependencies.push(...projects); - } - } - } - - handleTask(extension) { - if (!extension.metadata && !extension.metadata.name) { - throw new Error(`Task extension ${extension.id} is missing 'metadata.name' configuration`); - } - if (!extension.task) { - throw new Error(`Task extension ${extension.id} is missing 'task' configuration`); - } - const taskRepository = require("@ui5/builder").tasks.taskRepository; - - const taskPath = path.join(extension.path, extension.task.path); - - taskRepository.addTask({ - name: extension.metadata.name, - specVersion: extension.specVersion, - taskPath, - }); - } - - handleServerMiddleware(extension) { - if (!extension.metadata && !extension.metadata.name) { - throw new Error(`Middleware extension ${extension.id} is missing 'metadata.name' configuration`); - } - if (!extension.middleware) { - throw new Error(`Middleware extension ${extension.id} is missing 'middleware' configuration`); - } - const {middlewareRepository} = require("@ui5/server"); - - const middlewarePath = path.join(extension.path, extension.middleware.path); - middlewareRepository.addMiddleware({ - name: extension.metadata.name, - specVersion: extension.specVersion, - middlewarePath - }); - } - - async validateAndNormalizeExistingProject(project) { - // Validate project config, but exclude additional properties - const excludedProperties = [ - "id", - "version", - "path", - "dependencies", - "_level", - "_isRoot" - ]; - const config = {}; - for (const key of Object.keys(project)) { - if (!excludedProperties.includes(key)) { - config[key] = project[key]; - } - } - await validate({ - config, - project: { - id: project.id - } - }); - - this.normalizeConfig(project); - } -} - -/** - * The Project Preprocessor enriches the dependency information with project configuration - * - * @public - * @namespace - * @alias module:@ui5/project.projectPreprocessor - */ -module.exports = { - /** - * Collects project information and its dependencies to enrich it with project configuration - * - * @public - * @param {object} tree Dependency tree of the project - * @returns {Promise} Promise resolving with the dependency tree and enriched project configuration - */ - processTree: function(tree) { - return new ProjectPreprocessor({tree}).processTree(); - }, - _ProjectPreprocessor: ProjectPreprocessor -}; diff --git a/packages/project/lib/specifications/ComponentProject.js b/packages/project/lib/specifications/ComponentProject.js new file mode 100644 index 00000000000..2f77f7ba02a --- /dev/null +++ b/packages/project/lib/specifications/ComponentProject.js @@ -0,0 +1,351 @@ +const {promisify} = require("util"); +const Project = require("./Project"); +const resourceFactory = require("@ui5/fs").resourceFactory; + +/* +* Subclass for projects potentially containing Components +*/ + +class ComponentProject extends Project { + constructor(parameters) { + super(parameters); + if (new.target === ComponentProject) { + throw new TypeError("Class 'ComponentProject' is abstract. Please use one of the 'types' subclasses"); + } + + this._pPom = null; + this._namespace = null; + this._isRuntimeNamespaced = true; + } + + /* === Attributes === */ + /** + * @public + */ + getNamespace() { + return this._namespace; + } + + /** + * @private + */ + getCopyright() { + return this._config.metadata.copyright; + } + + /** + * @private + */ + getComponentPreloadPaths() { + return this._config.builder && this._config.builder.componentPreload && + this._config.builder.componentPreload.paths || []; + } + + /** + * @private + */ + getComponentPreloadNamespaces() { + return this._config.builder && this._config.builder.componentPreload && + this._config.builder.componentPreload.namespaces || []; + } + + /** + * @private + */ + getComponentPreloadExcludes() { + return this._config.builder && this._config.builder.componentPreload && + this._config.builder.componentPreload.excludes || []; + } + + /** + * @private + */ + getJsdocExcludes() { + return this._config.builder && this._config.builder.jsdoc && this._config.builder.jsdoc.excludes || []; + } + + /** + * @private + */ + getMinificationExcludes() { + return this._config.builder && this._config.builder.minification && + this._config.builder.minification.excludes || []; + } + + /** + * @private + */ + getBundles() { + return this._config.builder && this._config.builder.bundles || []; + } + + /** + * @private + */ + getPropertiesFileSourceEncoding() { + return this._config.resources && this._config.resources.configuration && + this._config.resources.configuration.propertiesFileSourceEncoding || "UTF-8"; + } + + /* === Resource Access === */ + + /** + * Get a resource reader for accessing the project resources in a given style. + * If project resources have been changed through the means of a workspace, those changes + * are reflected in the provided reader too. + * + * @public + * @param {object} [options] + * @param {string} [options.style=buildtime] Path style to access resources. Can be "buildtime", "runtime" or "flat" + * TODO: describe styles + * @returns {module:@ui5/fs.ReaderCollection} A reader collection instance + */ + getReader({style = "buildtime"} = {}) { + // TODO: Additional style 'ABAP' using "sap.platform.abap".uri from manifest.json? + + if (style === "runtime" && this._isRuntimeNamespaced) { + // If the project's runtime paths contains its namespace too, + // "runtime" style paths are identical to "buildtime" style paths + style = "buildtime"; + } + let reader; + switch (style) { + case "buildtime": + reader = this._getReader(); + break; + case "runtime": + // Use buildtime reader and link it to / + // No test-resources for runtime resource access, + // unless runtime is namespaced + reader = this._getReader().link({ + linkPath: `/`, + targetPath: `/resources/${this._namespace}/` + }); + break; + case "flat": + // Use buildtime reader and link it to / + // No test-resources for runtime resource access, + // unless runtime is namespaced + reader = this._getReader().link({ + linkPath: `/`, + targetPath: `/resources/${this._namespace}/` + }); + break; + default: + throw new Error(`Unknown path mapping style ${style}`); + } + + reader = this._addWriter(reader, style); + return reader; + } + + /** + * Get a resource reader for the resources of the project + * + * @returns {module:@ui5/fs.ReaderCollection} Reader collection + */ + _getSourceReader() { + throw new Error(`_getSourceReader must be implemented by subclass ${this.constructor.name}`); + } + + /** + * Get a resource reader for the test resources of the project + * + * @returns {module:@ui5/fs.ReaderCollection} Reader collection + */ + _getTestReader() { + throw new Error(`_getTestReader must be implemented by subclass ${this.constructor.name}`); + } + + /** + * Get a resource reader/writer for accessing and modifying a project's resources + * + * @public + * @returns {module:@ui5/fs.ReaderCollection} A reader collection instance + */ + getWorkspace() { + // Workspace is always of style "buildtime" + return resourceFactory.createWorkspace({ + name: `Workspace for project ${this.getName()}`, + reader: this._getReader(), + writer: this._getWriter().collection + }); + } + + _getWriter() { + if (!this._writers) { + // writer is always of style "buildtime" + const namespaceWriter = resourceFactory.createAdapter({ + virBasePath: "/", + project: this + }); + + const generalWriter = resourceFactory.createAdapter({ + virBasePath: "/", + project: this + }); + + const collection = resourceFactory.createWriterCollection({ + name: `Writers for project ${this.getName()}`, + writerMapping: { + [`/resources/${this._namespace}/`]: namespaceWriter, + [`/test-resources/${this._namespace}/`]: namespaceWriter, + [`/`]: generalWriter + } + }); + + this._writers = { + namespaceWriter, + generalWriter, + collection + }; + } + return this._writers; + } + + _getReader() { + let reader = this._getSourceReader(); + const testReader = this._getTestReader(); + if (testReader) { + reader = resourceFactory.createReaderCollection({ + name: `Reader collection for project ${this.getName()}`, + readers: [reader, testReader] + }); + } + return reader; + } + + _addWriter(reader, style) { + const {namespaceWriter, generalWriter} = this._getWriter(); + + if (style === "runtime" && this._isRuntimeNamespaced) { + // If the project's runtime requires namespaces, "runtime" paths are identical to "buildtime" paths + style = "buildtime"; + } + const readers = []; + switch (style) { + case "buildtime": { + // Writer already uses buildtime style + readers.push(namespaceWriter); + readers.push(generalWriter); + break; + } + case "runtime": { + // Runtime is not namespaced: link namespace to / + readers.push(namespaceWriter.link({ + linkPath: `/`, + targetPath: `/resources/${this._namespace}/` + })); + // Add general writer as is + readers.push(generalWriter); + break; + } + case "flat": { + // Rewrite paths from "flat" to "buildtime" + readers.push(namespaceWriter.link({ + linkPath: `/`, + targetPath: `/resources/${this._namespace}/` + })); + // General writer resources can't be flattened, so they are not available + break; + } + default: + throw new Error(`Unknown path mapping style ${style}`); + } + readers.push(reader); + + return resourceFactory.createReaderCollectionPrioritized({ + name: `Reader/Writer collection for project ${this.getName()}`, + readers + }); + } + + /* === Internals === */ + /** + * @private + * @param {object} config Configuration object + */ + async _parseConfiguration(config) { + await super._parseConfiguration(config); + } + + async _getNamespace() { + throw new Error(`_getNamespace must be implemented by subclass ${this.constructor.name}`); + } + + /* === Helper === */ + /** + * Checks whether a given string contains a maven placeholder. + * E.g. ${appId}. + * + * @param {string} value String to check + * @returns {boolean} True if given string contains a maven placeholder + */ + _hasMavenPlaceholder(value) { + return !!value.match(/^\$\{(.*)\}$/); + } + + /** + * Resolves a maven placeholder in a given string using the projects pom.xml + * + * @param {string} value String containing a maven placeholder + * @returns {Promise} Resolved string + */ + async _resolveMavenPlaceholder(value) { + const parts = value && value.match(/^\$\{(.*)\}$/); + if (parts) { + this._log.verbose( + `"${value} contains a maven placeholder "${parts[1]}". Resolving from projects pom.xml...`); + const pom = await this._getPom(); + let mvnValue; + if (pom.project && pom.project.properties && pom.project.properties[parts[1]]) { + mvnValue = pom.project.properties[parts[1]]; + } else { + let obj = pom; + parts[1].split(".").forEach((part) => { + obj = obj && obj[part]; + }); + mvnValue = obj; + } + if (!mvnValue) { + throw new Error(`"${value}" couldn't be resolved from maven property ` + + `"${parts[1]}" of pom.xml of project ${this.getName()}`); + } + return mvnValue; + } else { + throw new Error(`"${value}" is not a maven placeholder`); + } + } + + /** + * Reads the projects pom.xml file + * + * @returns {Promise} Resolves with a JSON representation of the content + */ + async _getPom() { + if (this._pPom) { + return this._pPom; + } + + return this._pPom = this.getRootReader().byPath("/pom.xml") + .then(async (resource) => { + if (!resource) { + throw new Error( + `Could not find pom.xml in project ${this.getName()}`); + } + const content = await resource.getString(); + const xml2js = require("xml2js"); + const parser = new xml2js.Parser({ + explicitArray: false, + ignoreAttrs: true + }); + const readXML = promisify(parser.parseString); + return readXML(content); + }).catch((err) => { + throw new Error( + `Failed to read pom.xml for project ${this.getName()}: ${err.message}`); + }); + } +} + +module.exports = ComponentProject; diff --git a/packages/project/lib/specifications/Extension.js b/packages/project/lib/specifications/Extension.js new file mode 100644 index 00000000000..4df68c060de --- /dev/null +++ b/packages/project/lib/specifications/Extension.js @@ -0,0 +1,16 @@ +const Specification = require("./Specification"); + +class Extension extends Specification { + constructor(parameters) { + super(parameters); + if (new.target === Extension) { + throw new TypeError("Class 'Project' is abstract. Please use one of the 'types' subclasses"); + } + } + + /* + * TODO + */ +} + +module.exports = Extension; diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js new file mode 100644 index 00000000000..74fab9c12a2 --- /dev/null +++ b/packages/project/lib/specifications/Project.js @@ -0,0 +1,164 @@ +const Specification = require("./Specification"); + + +/** + * Project + * + * @public + * @memberof module:@ui5/project.specifications + * @augments module:@ui5/project.specifications.Specification + */ +class Project extends Specification { + constructor(parameters) { + super(parameters); + if (new.target === Project) { + throw new TypeError("Class 'Project' is abstract. Please use one of the 'types' subclasses"); + } + + this._resourceTagCollection = null; + } + + /** + * @param {object} parameters Specification parameters + * @param {string} parameters.id Unique ID + * @param {string} parameters.version Version + * @param {string} parameters.modulePath File System path to access resources + * @param {object} parameters.configuration Configuration object + * @param {object} [parameters.buildManifest] Build metadata object + */ + async init(parameters) { + await super.init(parameters); + + this._buildManifest = parameters.buildManifest; + + await this._configureAndValidatePaths(this._config); + await this._parseConfiguration(this._config, this._buildManifest); + + return this; + } + + /* === Attributes === */ + /** + * @public + */ + getNamespace() { + // Default namespace for general Projects: + // Their resources should be structured with globally unique paths, hence their namespace is undefined + return null; + } + + /** + * @private + */ + getFrameworkName() { + return this._config.framework?.name; + } + /** + * @private + */ + getFrameworkVersion() { + return this._config.framework?.version; + } + /** + * @private + */ + getFrameworkDependencies() { + return this._config.framework?.libraries || []; + } + + isFrameworkProject() { + return this.__id.startsWith("@openui5/") || this.__id.startsWith("@sapui5/"); + } + + getCustomConfiguration() { + return this._config.customConfiguration; + } + + getBuilderResourcesExcludes() { + return this._config.builder?.resources?.excludes || []; + } + + getCustomTasks() { + return this._config.builder?.customTasks || []; + } + + getCustomMiddleware() { + return this._config.builder?.customMiddleware || []; + } + + getServerSettings() { + return this._config.server?.settings; + } + + getBuilderSettings() { + return this._config.builder?.settings; + } + + hasBuildManifest() { + return !!this._buildManifest; + } + + getBuildManifest() { + return this._buildManifest || {}; + } + + /* === Resource Access === */ + /** + * Get a [ReaderCollection]{@link module:@ui5/fs.ReaderCollection} for accessing all resources of the + * project in the specified "style": + * + *
    + *
  • buildtime: Resource paths are always prefixed with /resources/ + * or /test-resources/ followed by the project's namespace
  • + *
  • runtime: Access resources the same way the UI5 runtime would do
  • + *
  • flat: No prefix, no namespace
  • + *
+ * + * @public + * @param {object} [options] + * @param {string} [options.style=buildtime] Path style to access resources. Can be "buildtime", "runtime" or "flat" + * This parameter might be ignored by some project types + * @returns {module:@ui5/fs.ReaderCollection} Reader collection allowing access to all resources of the project + */ + getReader(options) { + throw new Error(`getReader must be implemented by subclass ${this.constructor.name}`); + } + + getResourceTagCollection() { + if (!this._resourceTagCollection) { + const ResourceTagCollection = require("@ui5/fs").ResourceTagCollection; + this._resourceTagCollection = new ResourceTagCollection({ + allowedTags: ["ui5:IsDebugVariant", "ui5:HasDebugVariant"], + allowedNamespaces: ["project"], + tags: this.getBuildManifest()?.tags + }); + } + return this._resourceTagCollection; + } + + /** + * Get a [DuplexCollection]{@link module:@ui5/fs.DuplexCollection} for accessing and modifying a + * project's resources. This is always of style buildtime. + * + * @public + * @returns {module:@ui5/fs.DuplexCollection} DuplexCollection + */ + getWorkspace() { + throw new Error(`getWorkspace must be implemented by subclass ${this.constructor.name}`); + } + + /* === Internals === */ + /** + * @private + * @param {object} config Configuration object + */ + async _configureAndValidatePaths(config) {} + + /** + * @private + * @param {object} config Configuration object + */ + async _parseConfiguration(config) {} +} + +module.exports = Project; diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js new file mode 100644 index 00000000000..8983fbc1b2f --- /dev/null +++ b/packages/project/lib/specifications/Specification.js @@ -0,0 +1,231 @@ +const resourceFactory = require("@ui5/fs").resourceFactory; + +class Specification { + constructor() { + if (new.target === Specification) { + throw new TypeError("Class 'Specification' is abstract. Please use one of the 'types' subclasses"); + } + this._log = require("@ui5/logger").getLogger(`specifications:types:${this.constructor.name}`); + } + + /** + * @param {object} parameters Specification parameters + * @param {string} parameters.id Unique ID + * @param {string} parameters.version Version + * @param {string} parameters.modulePath File System path to access resources + * @param {object} parameters.configuration Configuration object + */ + async init({id, version, modulePath, configuration}) { + if (!id) { + throw new Error(`Could not create specification: Missing or empty parameter 'id'`); + } + if (!version) { + throw new Error(`Could not create specification: Missing or empty parameter 'version'`); + } + if (!modulePath) { + throw new Error(`Could not create specification: Missing or empty parameter 'modulePath'`); + } + if (!configuration) { + throw new Error(`Could not create specification: Missing or empty parameter 'configuration'`); + } + + this._version = version; + this._modulePath = modulePath; + + // The configured name (metadata.name) should be the unique identifier + // The ID property as supplied by the translators is only here for debugging and potential tracing purposes + this.__id = id; + + // Deep clone config to prevent changes by reference + const config = JSON.parse(JSON.stringify(configuration)); + const {validate} = require("../validation/validator"); + + if (config.specVersion === "0.1" || config.specVersion === "1.0" || + config.specVersion === "1.1") { + const originalSpecVersion = config.specVersion; + this._log.verbose(`Detected legacy specification version ${config.specVersion}, defined for ` + + `${config.kind} ${config.metadata.name}. ` + + `Attempting to migrate the project to a supported specification version...`); + this._migrateLegacyProject(config); + try { + await validate({ + config, + project: { + id + } + }); + } catch (err) { + this._log.verbose( + `Validation error after migration of ${config.kind} ${config.metadata.name}:`); + this._log.verbose(err.message); + throw new Error( + `${config.kind} ${config.metadata.name} defines unsupported specification version ` + + `${originalSpecVersion}. Please manually upgrade to 2.0 or higher. ` + + `For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions - ` + + `An attempted migration to a supported specification version failed, ` + + `likely due to unrecognized configuration. Check verbose log for details.`); + } + } else if (config.specVersion !== "2.0" && + config.specVersion !== "2.1" && config.specVersion !== "2.2" && + config.specVersion !== "2.3" && config.specVersion !== "2.4" && + config.specVersion !== "2.5" && config.specVersion !== "2.6") { + throw new Error( + `Unsupported specification version ${config.specVersion} defined in ${config.kind} ` + + `${config.metadata.name}. Your UI5 CLI installation might be outdated. ` + + `For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`); + } else { + await validate({ + config, + project: { + id + } + }); + } + + // Check whether the given configuration matches the class by guessing the type name from the class name + if (config.type.replace("-", "") !== this.constructor.name.toLowerCase()) { + throw new Error( + `Configuration mismatch: Supplied configuration of type '${config.type}' does not match with ` + + `specification class ${this.constructor.name}`); + } + + this._name = config.metadata.name; + this._kind = config.kind; + this._type = config.type; + this._specVersion = config.specVersion; + this._config = config; + + return this; + } + + /* === Attributes === */ + /** + * @public + */ + getName() { + return this._name; + } + + /** + * @public + */ + getKind() { + return this._kind; + } + + /** + * @public + */ + getType() { + return this._type; + } + + /** + * @public + */ + getSpecVersion() { + return this._specVersion; + } + + /** + * @public + */ + getVersion() { + return this._version; + } + + /** + * Might not be POSIX + * + * @private + */ + getPath() { + return this._modulePath; + } + + /* === Resource Access === */ + /** + * Get a resource reader for the root directory of the project + * + * @public + * @returns {module:@ui5/fs.ReaderCollection} Reader collection + */ + getRootReader() { + return resourceFactory.createReader({ + fsBasePath: this.getPath(), + virBasePath: "/", + name: `Root reader for ${this.getType()} ${this.getKind()} ${this.getName()}` + }); + } + + /* === Internals === */ + /* === Helper === */ + /** + * @private + * @param {string} dirPath Path of directory, relative to the project root + */ + async _dirExists(dirPath) { + const resource = await this.getRootReader().byPath(dirPath, {nodir: false}); + if (resource && resource.getStatInfo().isDirectory()) { + return true; + } + return false; + } + + _migrateLegacyProject(config) { + config.specVersion = "2.6"; + + // propertiesFileSourceEncoding default has been changed to UTF-8 with specVersion 2.0 + // Adding back the old default if no configuration is provided. + if (!config.resources?.configuration?.propertiesFileSourceEncoding) { + config.resources = config.resources || {}; + config.resources.configuration = config.resources.configuration || {}; + config.resources.configuration.propertiesFileSourceEncoding = "ISO-8859-1"; + } + } + + static async create(params) { + if (!params.configuration) { + throw new Error( + `Unable to create Specification instance: Missing configuration parameter`); + } + const {kind, type} = params.configuration; + if (!["project", "extension"].includes(kind)) { + throw new Error(`Unable to create Specification instance: Unknown kind '${kind}'`); + } + + switch (type) { + case "application": { + return createAndInitializeSpec("Application", params); + } + case "library": { + return createAndInitializeSpec("Library", params); + } + case "theme-library": { + return createAndInitializeSpec("ThemeLibrary", params); + } + case "module": { + return createAndInitializeSpec("Module", params); + } + case "task": { + return createAndInitializeSpec("extensions/Task", params); + } + case "server-middleware": { + return createAndInitializeSpec("extensions/ServerMiddleware", params); + } + case "project-shim": { + return createAndInitializeSpec("extensions/ProjectShim", params); + } + default: + throw new Error( + `Unable to create Specification instance: Unknown specification type '${type}'`); + } + } +} + +function createAndInitializeSpec(moduleName, params) { + const Spec = require(`./types/${moduleName}`); + return new Spec().init(params); +} + +module.exports = Specification; diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js new file mode 100644 index 00000000000..c3a421f8044 --- /dev/null +++ b/packages/project/lib/specifications/types/Application.js @@ -0,0 +1,209 @@ +const fsPath = require("path"); +const resourceFactory = require("@ui5/fs").resourceFactory; +const ComponentProject = require("../ComponentProject"); + +class Application extends ComponentProject { + constructor(parameters) { + super(parameters); + + this._pManifests = {}; + + this._webappPath = "webapp"; + + this._isRuntimeNamespaced = false; + } + + + /* === Attributes === */ + + /** + * Get the cachebuster signature type configuration of the project + * + * @returns {string} time or hash + */ + getCachebusterSignatureType() { + return this._config.builder && this._config.builder.cachebuster && + this._config.builder.cachebuster.signatureType || "time"; + } + + /* === Resource Access === */ + /** + * Get a resource reader for the sources of the project (excluding any test resources) + * + * @returns {module:@ui5/fs.ReaderCollection} Reader collection + */ + _getSourceReader() { + return resourceFactory.createReader({ + fsBasePath: fsPath.join(this.getPath(), this._webappPath), + virBasePath: `/resources/${this._namespace}/`, + name: `Source reader for application project ${this.getName()}`, + project: this, + excludes: this.getBuilderResourcesExcludes() + }); + } + + _getTestReader() { + return null; // Applications do not have a dedicated test directory + } + + _getRawSourceReader() { + return resourceFactory.createReader({ + fsBasePath: fsPath.join(this.getPath(), this._webappPath), + virBasePath: "/", + name: `Source reader for application project ${this.getName()}`, + project: this + }); + } + + /* === Internals === */ + /** + * @private + * @param {object} config Configuration object + */ + async _configureAndValidatePaths(config) { + await super._configureAndValidatePaths(config); + + if (config.resources && config.resources.configuration && + config.resources.configuration.paths && config.resources.configuration.paths.webapp) { + this._webappPath = config.resources.configuration.paths.webapp; + } + + this._log.verbose(`Path mapping for application project ${this.getName()}:`); + this._log.verbose(` Physical root path: ${this.getPath()}`); + this._log.verbose(` Mapped to: ${this._srcPath}`); + + if (!await this._dirExists("/" + this._webappPath)) { + throw new Error( + `Unable to find directory '${this._webappPath}' in application project ${this.getName()}`); + } + } + + /** + * @private + * @param {object} config Configuration object + * @param {object} buildDescription Cache metadata object + */ + async _parseConfiguration(config, buildDescription) { + await super._parseConfiguration(config, buildDescription); + + if (buildDescription) { + this._namespace = buildDescription.namespace; + return; + } + this._namespace = await this._getNamespace(); + } + + /** + * Determine application namespace either based on a project`s + * manifest.json or manifest.appdescr_variant (fallback if present) + * + * @returns {string} Namespace of the project + * @throws {Error} if namespace can not be determined + */ + async _getNamespace() { + try { + return await this._getNamespaceFromManifestJson(); + } catch (manifestJsonError) { + if (manifestJsonError.code !== "ENOENT") { + throw manifestJsonError; + } + // No manifest.json present + // => attempt fallback to manifest.appdescr_variant (typical for App Variants) + try { + return await this._getNamespaceFromManifestAppDescVariant(); + } catch (appDescVarError) { + if (appDescVarError.code === "ENOENT") { + // Fallback not possible: No manifest.appdescr_variant present + // => Throw error indicating missing manifest.json + // (do not mention manifest.appdescr_variant since it is only + // relevant for the rather "uncommon" App Variants) + throw new Error( + `Could not find required manifest.json for project ` + + `${this.getName()}: ${manifestJsonError.message}`); + } + throw appDescVarError; + } + } + } + + /** + * Determine application namespace by checking manifest.json. + * Any maven placeholders are resolved from the projects pom.xml + * + * @returns {string} Namespace of the project + * @throws {Error} if namespace can not be determined + */ + async _getNamespaceFromManifestJson() { + const manifest = await this._getManifest("/manifest.json"); + let appId; + // check for a proper sap.app/id in manifest.json to determine namespace + if (manifest["sap.app"] && manifest["sap.app"].id) { + appId = manifest["sap.app"].id; + } else { + throw new Error( + `No sap.app/id configuration found in manifest.json of project ${this.getName()}`); + } + + if (this._hasMavenPlaceholder(appId)) { + try { + appId = await this._resolveMavenPlaceholder(appId); + } catch (err) { + throw new Error( + `Failed to resolve namespace of project ${this.getName()}: ${err.message}`); + } + } + const namespace = appId.replace(/\./g, "/"); + this._log.verbose( + `Namespace of project ${this.getName()} is ${namespace} (from manifest.appdescr_variant)`); + return namespace; + } + + /** + * Determine application namespace by checking manifest.appdescr_variant. + * + * @returns {string} Namespace of the project + * @throws {Error} if namespace can not be determined + */ + async _getNamespaceFromManifestAppDescVariant() { + const manifest = await this._getManifest("/manifest.appdescr_variant"); + let appId; + // check for the id property in manifest.appdescr_variant to determine namespace + if (manifest && manifest.id) { + appId = manifest.id; + } else { + throw new Error( + `No "id" property found in manifest.appdescr_variant of project ${this.getName()}`); + } + + const namespace = appId.replace(/\./g, "/"); + this._log.verbose( + `Namespace of project ${this.getName()} is ${namespace} (from manifest.appdescr_variant)`); + return namespace; + } + + /** + * Reads and parses a JSON file with the provided name from the projects source directory + * + * @param {string} filePath Name of the JSON file to read. Typically "manifest.json" or "manifest.appdescr_variant" + * @returns {Promise} resolves with an object containing the content requested manifest file + */ + async _getManifest(filePath) { + if (this._pManifests[filePath]) { + return this._pManifests[filePath]; + } + return this._pManifests[filePath] = this._getRawSourceReader().byPath(filePath) + .then(async (resource) => { + if (!resource) { + throw new Error( + `Could not find resource ${filePath} in project ${this.getName()}`); + } + return JSON.parse(await resource.getString()); + }).catch((err) => { + throw new Error( + `Failed to read ${filePath} for project ` + + `${this.getName()}: ${err.message}`); + }); + } +} + +module.exports = Application; diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js new file mode 100644 index 00000000000..8e31447545a --- /dev/null +++ b/packages/project/lib/specifications/types/Library.js @@ -0,0 +1,495 @@ +const fsPath = require("path"); +const posixPath = require("path").posix; +const {promisify} = require("util"); +const resourceFactory = require("@ui5/fs").resourceFactory; +const ComponentProject = require("../ComponentProject"); + +class Library extends ComponentProject { + constructor(parameters) { + super(parameters); + + this._pManifest = null; + this._pDotLibrary = null; + this._pLibraryJs = null; + + this._srcPath = "src"; + this._testPath = "test"; + this._testPathExists = false; + this._isSourceNamespaced = true; + + this._propertiesFilesSourceEncoding = "UTF-8"; + } + + /* === Attributes === */ + /** + * + * @private + */ + getLibraryPreloadExcludes() { + return this._config.builder && this._config.builder.libraryPreload && + this._config.builder.libraryPreload.excludes || []; + } + + /* === Resource Access === */ + _getSourceReader() { + // TODO: Throw for libraries with additional namespaces like sap.ui.core? + let virBasePath = "/resources/"; + if (!this._isSourceNamespaced) { + // In case the namespace is not represented in the source directory + // structure, add it to the virtual base path + virBasePath += `${this._namespace}/`; + } + return resourceFactory.createReader({ + fsBasePath: fsPath.join(this.getPath(), this._srcPath), + virBasePath, + name: `Source reader for library project ${this.getName()}`, + project: this, + excludes: this.getBuilderResourcesExcludes() + }); + } + + _getTestReader() { + if (!this._testPathExists) { + return null; + } + let virBasePath = "/test-resources/"; + if (!this._isSourceNamespaced) { + // In case the namespace is not represented in the source directory + // structure, add it to the virtual base path + virBasePath += `${this._namespace}/`; + } + const testReader = resourceFactory.createReader({ + fsBasePath: fsPath.join(this.getPath(), this._testPath), + virBasePath, + name: `Runtime test-resources reader for library project ${this.getName()}`, + project: this, + excludes: this.getBuilderResourcesExcludes() + }); + return testReader; + } + + /** + * + * Get a resource reader for the sources of the project (excluding any test resources) + * In the future the path structure can be flat or namespaced depending on the project + * + * @returns {module:@ui5/fs.ReaderCollection} Reader collection + */ + _getRawSourceReader() { + return resourceFactory.createReader({ + fsBasePath: fsPath.join(this.getPath(), this._srcPath), + virBasePath: "/", + name: `Source reader for library project ${this.getName()}`, + project: this + }); + } + + /* === Internals === */ + /** + * @private + * @param {object} config Configuration object + */ + async _configureAndValidatePaths(config) { + await super._configureAndValidatePaths(config); + + if (config.resources && config.resources.configuration && config.resources.configuration.paths) { + if (config.resources.configuration.paths.src) { + this._srcPath = config.resources.configuration.paths.src; + } + if (config.resources.configuration.paths.test) { + this._testPath = config.resources.configuration.paths.test; + } + } + + this._log.verbose(`Path mapping for library project ${this.getName()}:`); + this._log.verbose(` Physical root path: ${this.getPath()}`); + this._log.verbose(` Mapped to:`); + this._log.verbose(` /resources/ => ${this._srcPath}`); + this._log.verbose(` /test-resources/ => ${this._testPath}`); + + if (!await this._dirExists("/" + this._srcPath)) { + throw new Error( + `Unable to find directory '${this._srcPath}' in library project ${this.getName()}`); + } + if (!await this._dirExists("/" + this._testPath)) { + this._log.verbose(` (/test-resources/ target does not exist)`); + } else { + this._testPathExists = true; + } + } + + /** + * @private + * @param {object} config Configuration object + * @param {object} buildDescription Cache metadata object + */ + async _parseConfiguration(config, buildDescription) { + await super._parseConfiguration(config, buildDescription); + + if (buildDescription) { + this._namespace = buildDescription.namespace; + return; + } + + this._namespace = await this._getNamespace(); + + if (!config.metadata.copyright) { + const copyright = await this._getCopyrightFromDotLibrary(); + if (copyright) { + config.metadata.copyright = copyright; + } + } + + if (this.isFrameworkProject()) { + if (config.builder?.libraryPreload?.excludes) { + this._log.verbose( + `Using preload excludes for framework library ${this.getName()} from project configuration`); + } else { + this._log.verbose( + `No preload excludes defined in project configuration of framework library ` + + `${this.getName()}. Falling back to .library...`); + const excludes = await this._getPreloadExcludesFromDotLibrary(); + if (excludes) { + if (!config.builder) { + config.builder = {}; + } + if (!config.builder.libraryPreload) { + config.builder.libraryPreload = {}; + } + config.builder.libraryPreload.excludes = excludes; + } + } + } + } + + /** + * Determine library namespace by checking manifest.json with fallback to .library. + * Any maven placeholders are resolved from the projects pom.xml + * + * @returns {string} Namespace of the project + * @throws {Error} if namespace can not be determined + */ + async _getNamespace() { + // Trigger both reads asynchronously + const [{ + namespace: manifestNs, + filePath: manifestPath + }, { + namespace: dotLibraryNs, + filePath: dotLibraryPath + }] = await Promise.all([ + this._getNamespaceFromManifest(), + this._getNamespaceFromDotLibrary() + ]); + + let libraryNs; + let namespacePath; + if (manifestNs && dotLibraryNs) { + // Both files present + // => check whether they are on the same level + const manifestDepth = manifestPath.split("/").length; + const dotLibraryDepth = dotLibraryPath.split("/").length; + + if (manifestDepth < dotLibraryDepth) { + // We see the .library file as the "leading" file of a library + // Therefore, a manifest.json on a higher level is something we do not except + throw new Error(`Failed to detect namespace for project ${this.getName()}: ` + + `Found a manifest.json on a higher directory level than the .library file. ` + + `It should be on the same or a lower level. ` + + `Note that a manifest.json on a lower level will be ignored.\n` + + ` manifest.json path: ${manifestPath}\n` + + ` is higher than\n` + + ` .library path: ${dotLibraryPath}`); + } + if (manifestDepth === dotLibraryDepth) { + if (posixPath.dirname(manifestPath) !== posixPath.dirname(dotLibraryPath)) { + // This just should not happen in your project + throw new Error(`Failed to detect namespace for project ${this.getName()}: ` + + `Found a manifest.json on the same directory level but in a different directory ` + + `than the .library file. They should be in the same directory.\n` + + ` manifest.json path: ${manifestPath}\n` + + ` is different to\n` + + ` .library path: ${dotLibraryPath}`); + } + // Typical scenario if both files are present + this._log.verbose( + `Found a manifest.json and a .library file on the same level for ` + + `project ${this.getName()}.`); + this._log.verbose( + `Resolving namespace of project ${this.getName()} from manifest.json...`); + libraryNs = manifestNs; + namespacePath = posixPath.dirname(manifestPath); + } else { + // Typical scenario: Some nested component has a manifest.json but the library itself only + // features a .library. => Ignore the manifest.json + this._log.verbose( + `Ignoring manifest.json found on a lower level than the .library file of ` + + `project ${this.getName()}.`); + this._log.verbose( + `Resolving namespace of project ${this.getName()} from .library...`); + libraryNs = dotLibraryNs; + namespacePath = posixPath.dirname(dotLibraryPath); + } + } else if (manifestNs) { + // Only manifest available + this._log.verbose( + `Resolving namespace of project ${this.getName()} from manifest.json...`); + libraryNs = manifestNs; + namespacePath = posixPath.dirname(manifestPath); + } else if (dotLibraryNs) { + // Only .library available + this._log.verbose( + `Resolving namespace of project ${this.getName()} from .library...`); + libraryNs = dotLibraryNs; + namespacePath = posixPath.dirname(dotLibraryPath); + } else { + this._log.verbose( + `Failed to resolve namespace of project ${this.getName()} from manifest.json ` + + `or .library file. Falling back to library.js file path...`); + } + + let namespace; + if (libraryNs) { + // Maven placeholders can only exist in manifest.json or .library configuration + if (this._hasMavenPlaceholder(libraryNs)) { + try { + libraryNs = await this._resolveMavenPlaceholder(libraryNs); + } catch (err) { + throw new Error( + `Failed to resolve namespace maven placeholder of project ` + + `${this.getName()}: ${err.message}`); + } + } + + namespace = libraryNs.replace(/\./g, "/"); + if (namespacePath === "/") { + this._log.verbose(`Detected flat library source structure for project ${this.getName()}`); + this._isSourceNamespaced = false; + } else { + namespacePath = namespacePath.replace("/", ""); // remove leading slash + if (namespacePath !== namespace) { + throw new Error( + `Detected namespace "${namespace}" does not match detected directory ` + + `structure "${namespacePath}" for project ${this.getName()}`); + } + } + } else { + try { + const libraryJsPath = await this._getLibraryJsPath(); + namespacePath = posixPath.dirname(libraryJsPath); + namespace = namespacePath.replace("/", ""); // remove leading slash + if (namespace === "") { + throw new Error(`Found library.js file in root directory. ` + + `Expected it to be in namespace directory.`); + } + this._log.verbose( + `Deriving namespace for project ${this.getName()} from ` + + `path of library.js file`); + } catch (err) { + this._log.verbose( + `Namespace resolution from library.js file path failed for project ` + + `${this.getName()}: ${err.message}`); + } + } + + if (!namespace) { + throw new Error(`Failed to detect namespace or namespace is empty for ` + + `project ${this.getName()}. Check verbose log for details.`); + } + + this._log.verbose( + `Namespace of project ${this.getName()} is ${namespace}`); + return namespace; + } + + async _getNamespaceFromManifest() { + try { + const {content: manifest, filePath} = await this._getManifest(); + // check for a proper sap.app/id in manifest.json to determine namespace + if (manifest["sap.app"] && manifest["sap.app"].id) { + const namespace = manifest["sap.app"].id; + this._log.verbose( + `Found namespace ${namespace} in manifest.json of project ${this.getName()} ` + + `at ${filePath}`); + return { + namespace, + filePath + }; + } else { + throw new Error( + `No sap.app/id configuration found in manifest.json of project ${this.getName()} ` + + `at ${filePath}`); + } + } catch (err) { + this._log.verbose( + `Namespace resolution from manifest.json failed for project ` + + `${this.getName()}: ${err.message}`); + } + return {}; + } + + async _getNamespaceFromDotLibrary() { + try { + const {content: dotLibrary, filePath} = await this._getDotLibrary(); + const namespace = dotLibrary?.library?.name?._; + if (namespace) { + this._log.verbose( + `Found namespace ${namespace} in .library file of project ${this.getName()} ` + + `at ${filePath}`); + return { + namespace, + filePath + }; + } else { + throw new Error( + `No library name found in .library of project ${this.getName()} ` + + `at ${filePath}`); + } + } catch (err) { + this._log.verbose( + `Namespace resolution from .library failed for project ` + + `${this.getName()}: ${err.message}`); + } + return {}; + } + + /** + * Determines library copyright from given project configuration with fallback to .library. + * + * @returns {string|null} Copyright of the project + */ + async _getCopyrightFromDotLibrary() { + // If no copyright replacement was provided by ui5.yaml, + // check if the .library file has a valid copyright replacement + const {content: dotLibrary, filePath} = await this._getDotLibrary(); + if (dotLibrary?.library?.copyright?._) { + this._log.verbose( + `Using copyright from ${filePath} for project ${this.getName()}...`); + return dotLibrary.library.copyright._; + } else { + this._log.verbose( + `No copyright configuration found in ${filePath} ` + + `of project ${this.getName()}`); + return null; + } + } + + async _getPreloadExcludesFromDotLibrary() { + const {content: dotLibrary, filePath} = await this._getDotLibrary(); + let excludes = dotLibrary?.library?.appData?.packaging?.["all-in-one"]?.exclude; + if (excludes) { + if (!Array.isArray(excludes)) { + excludes = [excludes]; + } + this._log.verbose( + `Found ${excludes.length} preload excludes in .library file of ` + + `project ${this.getName()} at ${filePath}`); + return excludes.map((exclude) => { + return exclude.$.name; + }); + } else { + this._log.verbose( + `No preload excludes found in .library of project ${this.getName()} ` + + `at ${filePath}`); + return null; + } + } + + /** + * Reads the projects manifest.json + * + * @returns {Promise} resolves with an object containing the content (as JSON) and + * filePath (as string) of the manifest.json file + */ + async _getManifest() { + if (this._pManifest) { + return this._pManifest; + } + return this._pManifest = this._getRawSourceReader().byGlob("**/manifest.json") + .then(async (manifestResources) => { + if (!manifestResources.length) { + throw new Error(`Could not find manifest.json file for project ${this.getName()}`); + } + if (manifestResources.length > 1) { + throw new Error(`Found multiple (${manifestResources.length}) manifest.json files ` + + `for project ${this.getName()}`); + } + const resource = manifestResources[0]; + try { + return { + content: JSON.parse(await resource.getString()), + filePath: resource.getPath() + }; + } catch (err) { + throw new Error( + `Failed to read ${resource.getPath()} for project ${this.getName()}: ${err.message}`); + } + }); + } + + /** + * Reads the .library file + * + * @returns {Promise} resolves with an object containing the content (as JSON) and + * filePath (as string) of the .library file + */ + async _getDotLibrary() { + if (this._pDotLibrary) { + return this._pDotLibrary; + } + return this._pDotLibrary = this._getRawSourceReader().byGlob("**/.library") + .then(async (dotLibraryResources) => { + if (!dotLibraryResources.length) { + throw new Error(`Could not find .library file for project ${this.getName()}`); + } + if (dotLibraryResources.length > 1) { + throw new Error(`Found multiple (${dotLibraryResources.length}) .library files ` + + `for project ${this.getName()}`); + } + const resource = dotLibraryResources[0]; + const content = await resource.getString(); + + try { + const xml2js = require("xml2js"); + const parser = new xml2js.Parser({ + explicitArray: false, + explicitCharkey: true + }); + const readXML = promisify(parser.parseString); + return { + content: await readXML(content), + filePath: resource.getPath() + }; + } catch (err) { + throw new Error( + `Failed to read ${resource.getPath()} for project ${this.getName()}: ${err.message}`); + } + }); + } + + /** + * Determines the path of the library.js file + * + * @returns {Promise} resolves with an a string containing the file system path + * of the library.js file + */ + async _getLibraryJsPath() { + if (this._pLibraryJs) { + return this._pLibraryJs; + } + return this._pLibraryJs = this._getRawSourceReader().byGlob("**/library.js") + .then(async (libraryJsResources) => { + if (!libraryJsResources.length) { + throw new Error(`Could not find library.js file for project ${this.getName()}`); + } + if (libraryJsResources.length > 1) { + throw new Error(`Found multiple (${libraryJsResources.length}) library.js files ` + + `for project ${this.getName()}`); + } + // Content is not yet relevant, so don't read it + return libraryJsResources[0].getPath(); + }); + } +} + +module.exports = Library; diff --git a/packages/project/lib/specifications/types/Module.js b/packages/project/lib/specifications/types/Module.js new file mode 100644 index 00000000000..752d9f6faa3 --- /dev/null +++ b/packages/project/lib/specifications/types/Module.js @@ -0,0 +1,112 @@ +const fsPath = require("path"); +const resourceFactory = require("@ui5/fs").resourceFactory; +const Project = require("../Project"); + +class Module extends Project { + constructor(parameters) { + super(parameters); + + this._paths = null; + this._writer = null; + } + + /* === Attributes === */ + /** + * @public + */ + + /* === Resource Access === */ + /** + * Get a resource reader for accessing the project resources + * + * @public + * @returns {module:@ui5/fs.ReaderCollection} Reader collection + */ + getReader() { + const readers = this._paths.map((readerArgs) => resourceFactory.createReader(readerArgs)); + if (readers.length === 1) { + return readers[0]; + } + const readerCollection = resourceFactory.createReaderCollection({ + name: `Reader collection for module project ${this.getName()}`, + readers + }); + return resourceFactory.createReaderCollectionPrioritized({ + name: `Reader/Writer collection for project ${this.getName()}`, + readers: [this._getWriter(), readerCollection] + }); + } + + /** + * Get a resource reader/writer for accessing and modifying a project's resources + * + * @public + * @returns {module:@ui5/fs.ReaderCollection} A reader collection instance + */ + getWorkspace() { + const reader = this.getReader(); + + const writer = this._getWriter(); + return resourceFactory.createWorkspace({ + reader, + writer + }); + } + + _getWriter() { + if (!this._writer) { + this._writer = resourceFactory.createAdapter({ + virBasePath: "/" + }); + } + + return this._writer; + } + + /* === Internals === */ + /** + * @private + * @param {object} config Configuration object + */ + async _configureAndValidatePaths(config) { + await super._configureAndValidatePaths(config); + + this._log.verbose(`Path mapping for library project ${this.getName()}:`); + this._log.verbose(` Physical root path: ${this.getPath()}`); + this._log.verbose(` Mapped to:`); + this._log.verbose(` /resources/ => ${this._srcPath}`); + + if (config.resources?.configuration?.paths) { + this._paths = await Promise.all(Object.entries(config.resources.configuration.paths) + .map(async ([virBasePath, relFsPath]) => { + this._log.verbose(` ${virBasePath} => ${relFsPath}`); + if (!await this._dirExists("/" + relFsPath)) { + throw new Error( + `Unable to find directory '${relFsPath}' in module project ${this.getName()}`); + } + return { + name: `'${relFsPath}'' reader for module project ${this.getName()}`, + virBasePath, + fsBasePath: fsPath.join(this.getPath(), relFsPath), + project: this, + excludes: config.builder?.resources?.excludes + }; + })); + } else { + if (!await this._dirExists("/")) { + throw new Error( + `Unable to find root directory of module project ${this.getName()}`); + } + this._log.verbose(` / => `); + this._paths = [{ + name: `Root reader for module project ${this.getName()}`, + virBasePath: "/", + fsBasePath: this.getPath(), + project: this, + excludes: config.builder?.resources?.excludes + }]; + } + } +} + +module.exports = Module; diff --git a/packages/project/lib/specifications/types/ThemeLibrary.js b/packages/project/lib/specifications/types/ThemeLibrary.js new file mode 100644 index 00000000000..9d66e7be047 --- /dev/null +++ b/packages/project/lib/specifications/types/ThemeLibrary.js @@ -0,0 +1,128 @@ +const fsPath = require("path"); +const resourceFactory = require("@ui5/fs").resourceFactory; +const Project = require("../Project"); + +class ThemeLibrary extends Project { + constructor(parameters) { + super(parameters); + + this._srcPath = "src"; + this._testPath = "test"; + this._testPathExists = false; + this._writer = null; + } + + /* === Attributes === */ + /** + * @private + */ + getCopyright() { + return this._config.metadata.copyright; + } + + /* === Resource Access === */ + /** + * Get a [ReaderCollection]{@link module:@ui5/fs.ReaderCollection} for accessing all resources of the + * project. + * This is always of style buildtime, wich for theme libraries is identical to style + * runtime. + * + * @public + * @returns {module:@ui5/fs.ReaderCollection} Reader collection allowing access to all resources of the project + */ + getReader() { + let reader = resourceFactory.createReader({ + fsBasePath: fsPath.join(this.getPath(), this._srcPath), + virBasePath: "/resources/", + name: `Runtime resources reader for theme-library project ${this.getName()}`, + project: this, + excludes: this.getBuilderResourcesExcludes() + }); + if (this._testPathExists) { + const testReader = resourceFactory.createReader({ + fsBasePath: fsPath.join(this.getPath(), this._testPath), + virBasePath: "/test-resources/", + name: `Runtime test-resources reader for theme-library project ${this.getName()}`, + project: this, + excludes: this.getBuilderResourcesExcludes() + }); + reader = resourceFactory.createReaderCollection({ + name: `Reader collection for theme-library project ${this.getName()}`, + readers: [reader, testReader] + }); + } + const writer = this._getWriter(); + + return resourceFactory.createReaderCollectionPrioritized({ + name: `Reader/Writer collection for project ${this.getName()}`, + readers: [writer, reader] + }); + } + + /** + * Get a [DuplexCollection]{@link module:@ui5/fs.DuplexCollection} for accessing and modifying a + * project's resources. + * + * This is always of style buildtime, wich for theme libraries is identical to style + * runtime. + * + * @public + * @returns {module:@ui5/fs.DuplexCollection} DuplexCollection + */ + getWorkspace() { + const reader = this.getReader(); + + const writer = this._getWriter(); + return resourceFactory.createWorkspace({ + reader, + writer + }); + } + + _getWriter() { + if (!this._writer) { + this._writer = resourceFactory.createAdapter({ + virBasePath: "/", + project: this + }); + } + + return this._writer; + } + + /* === Internals === */ + /** + * @private + * @param {object} config Configuration object + */ + async _configureAndValidatePaths(config) { + await super._configureAndValidatePaths(config); + + if (config.resources && config.resources.configuration && config.resources.configuration.paths) { + if (config.resources.configuration.paths.src) { + this._srcPath = config.resources.configuration.paths.src; + } + if (config.resources.configuration.paths.test) { + this._testPath = config.resources.configuration.paths.test; + } + } + + this._log.verbose(`Path mapping for theme-library project ${this.getName()}:`); + this._log.verbose(` Physical root path: ${this.getPath()}`); + this._log.verbose(` Mapped to:`); + this._log.verbose(` /resources/ => ${this._srcPath}`); + this._log.verbose(` /test-resources/ => ${this._testPath}`); + + if (!await this._dirExists("/" + this._srcPath)) { + throw new Error( + `Unable to find directory '${this._srcPath}' in theme-library project ${this.getName()}`); + } + if (!await this._dirExists("/" + this._testPath)) { + this._log.verbose(` (/test-resources/ target does not exist)`); + } else { + this._testPathExists = true; + } + } +} + +module.exports = ThemeLibrary; diff --git a/packages/project/lib/specifications/types/extensions/ProjectShim.js b/packages/project/lib/specifications/types/extensions/ProjectShim.js new file mode 100644 index 00000000000..d337240f227 --- /dev/null +++ b/packages/project/lib/specifications/types/extensions/ProjectShim.js @@ -0,0 +1,32 @@ +const Extension = require("../../Extension"); + +class ProjectShim extends Extension { + constructor(parameters) { + super(parameters); + } + + + /* === Attributes === */ + /** + * @public + */ + getDependencyShims() { + return this._config.shims.dependencies; + } + + /** + * @public + */ + getConfigurationShims() { + return this._config.shims.configurations; + } + + /** + * @public + */ + getCollectionShims() { + return this._config.shims.collections; + } +} + +module.exports = ProjectShim; diff --git a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js new file mode 100644 index 00000000000..fcdacc3396d --- /dev/null +++ b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js @@ -0,0 +1,19 @@ +const path = require("path"); +const Extension = require("../../Extension"); + +class ServerMiddleware extends Extension { + constructor(parameters) { + super(parameters); + } + + /* === Attributes === */ + /** + * @public + */ + getMiddleware() { + const middlewarePath = path.join(this.getPath(), this._config.middleware.path); + return require(middlewarePath); + } +} + +module.exports = ServerMiddleware; diff --git a/packages/project/lib/specifications/types/extensions/Task.js b/packages/project/lib/specifications/types/extensions/Task.js new file mode 100644 index 00000000000..11b7d6d0dbc --- /dev/null +++ b/packages/project/lib/specifications/types/extensions/Task.js @@ -0,0 +1,19 @@ +const path = require("path"); +const Extension = require("../../Extension"); + +class Task extends Extension { + constructor(parameters) { + super(parameters); + } + + /* === Attributes === */ + /** + * @public + */ + getTask() { + const taskPath = path.join(this.getPath(), this._config.task.path); + return require(taskPath); + } +} + +module.exports = Task; diff --git a/packages/project/lib/translators/npm.js b/packages/project/lib/translators/npm.js deleted file mode 100644 index 7cb11556c83..00000000000 --- a/packages/project/lib/translators/npm.js +++ /dev/null @@ -1,523 +0,0 @@ -const log = require("@ui5/logger").getLogger("normalizer:translators:npm"); -const path = require("path"); -const readPkgUp = require("read-pkg-up"); -const readPkg = require("read-pkg"); -const {promisify} = require("util"); -const fs = require("graceful-fs"); -const realpath = promisify(fs.realpath); -const resolveModulePath = promisify(require("resolve")); -const parentNameRegExp = new RegExp(/:([^:]+):$/i); - -class NpmTranslator { - constructor({includeDeduped}) { - this.projectCache = {}; - this.projectsWoUi5Deps = []; - this.pendingDeps = {}; - this.includeDeduped = includeDeduped; - this.debugUnresolvedProjects = {}; - } - - /* - Returns a promise with an array of projects - */ - async processPkg(data, parentPath) { - const cwd = data.path; - const moduleName = data.name; - const pkg = data.pkg; - const parentName = parentPath && this.getParentNameFromPath(parentPath) || "nothing - root project"; - - log.verbose("Analyzing %s (%s) (dependency of %s)", moduleName, cwd, parentName); - - if (!parentPath) { - parentPath = ":"; - } - parentPath += `${moduleName}:`; - - /* - * Inject collection definitions for some known projects - * until this is either not needed anymore or added to the actual project. - */ - this.shimCollection(moduleName, pkg); - - let dependencies = pkg.dependencies || {}; - let optDependencies = pkg.devDependencies || {}; - - const version = pkg.version; - - // Also look for "napa" dependencies (see https://github.com/shama/napa) - if (pkg.napa) { - Object.keys(pkg.napa).forEach((napaName) => { - dependencies[napaName] = pkg.napa[napaName]; - }); - } - - const ui5Deps = pkg.ui5 && pkg.ui5.dependencies; - if (ui5Deps && Array.isArray(ui5Deps)) { - for (let i = 0; i < ui5Deps.length; i++) { - const depName = ui5Deps[i]; - if (!dependencies[depName] && !optDependencies[depName]) { - throw new Error(`[npm translator] Module ${depName} is defined as UI5 dependency ` + - `but missing from npm dependencies of module ${moduleName}`); - } - } - // When UI5-dependencies are defined, we don't care whether an npm dependency is optional or not. - // All UI5-dependencies need to be there. - dependencies = Object.assign({}, dependencies, optDependencies); - optDependencies = {}; - - for (const depName of Object.keys(dependencies)) { - if (ui5Deps.indexOf(depName) === -1) { - log.verbose("Ignoring npm dependency %s. Not defined in UI5-dependency configuration.", depName); - delete dependencies[depName]; - } - } - } else { - this.projectsWoUi5Deps.push(moduleName); - } - - /* - It's either a project or a collection but never both! - - We don't care about dependencies of collections for now because we only remember dependencies - on projects. - Although we could add the collections dependencies as project dependencies to the related modules - */ - const isCollection = typeof pkg.collection === "object" && typeof pkg.collection.modules === "object"; - if (!isCollection) { - if (log.isLevelEnabled("silly")) { - this.debugUnresolvedProjects[cwd] = { - moduleName - }; - const logParentPath = parentPath.replace(":", "(root) ").replace(/([^:]*):$/, "(current) $1"); - log.silly(`Parent path: ${logParentPath.replace(/:/ig, " ➡️ ")}`); - log.silly(`Resolving dependencies of ${moduleName}...`); - } - return this.getDepProjects({ - cwd, - parentPath, - dependencies, - optionalDependencies: pkg.optionalDependencies - }).then((depProjects) => { - // Array needs to be flattened because: - // getDepProjects returns array * 2 = array with two arrays - const projects = Array.prototype.concat.apply([], depProjects); - if (log.isLevelEnabled("silly")) { - delete this.debugUnresolvedProjects[cwd]; - log.silly(`Resolved dependencies of ${moduleName}`); - const pendingModules = Object.keys(this.debugUnresolvedProjects).map((key) => { - return this.debugUnresolvedProjects[key].moduleName; - }); - if (pendingModules.length) { - log.silly(`${pendingModules.length} resolutions left: ${pendingModules.join(", ")}`); - } else { - log.silly("All modules resolved."); - } - } - - return [{ - id: moduleName, - version, - path: cwd, - dependencies: projects - }]; - }).then(([project]) => { - // Register optional dependencies as "pending" as we do not try to resolve them ourself. - // If we would, we would *always* resolve them for modules that are linked into monorepos. - // In such cases, dev-dependencies are typically always available in the node_modules directory. - // Therefore we register them as pending. And if any other project resolved them, we add them to - // our dependencies later on. - this.registerPendingDependencies({ - parentProject: project, - parentPath, - dependencies: optDependencies - }); - return [project]; - }); - } else { // collection - log.verbose("Found a collection: %s", moduleName); - const modules = pkg.collection.modules; - return Promise.all( - Object.keys(modules).map((depName) => { - const modulePath = path.join(cwd, modules[depName]); - if (depName === parentName) { // TODO improve recursion detection here - log.verbose("Ignoring module with same name as parent: " + parentName); - return null; - } - return this.readProject({modulePath, moduleName: depName, parentPath}); - }) - ).then((projects) => { - // Array needs to be flattened because: - // readProject returns an array + Promise.all returns an array = array filled with arrays - // Filter out null values of ignored packages - return Array.prototype.concat.apply([], projects.filter((p) => p !== null)); - }); - } - } - - getParentNameFromPath(parentPath) { - const parentNameMatch = parentPath.match(parentNameRegExp); - if (parentNameMatch) { - return parentNameMatch[1]; - } else { - log.error(`Failed to get parent name from path ${parentPath}`); - } - } - - getDepProjects({cwd, dependencies, optionalDependencies, parentPath}) { - return Promise.all( - Object.keys(dependencies).map((moduleName) => { - return this.findModulePath(cwd, moduleName).then((modulePath) => { - return this.readProject({modulePath, moduleName, parentPath}); - }, (err) => { - // Due to normalization done by by the "read-pkg-up" module the values - // in "optionalDependencies" get added to the modules "dependencies". Also described here: - // https://github.com/npm/normalize-package-data#what-normalization-currently-entails - // Ignore resolution errors for optional dependencies - if (optionalDependencies && optionalDependencies[moduleName]) { - return null; - } else { - throw err; - } - }); - }) - ).then((depProjects) => { - // Array needs to be flattened because: - // readProject returns an array + Promise.all returns an array = array filled with arrays - // Also filter out null values of ignored packages - return Array.prototype.concat.apply([], depProjects.filter((p) => p !== null)); - }); - } - - async readProject({modulePath, moduleName, parentPath}) { - let {pPkg} = this.projectCache[modulePath] || {}; - if (!pPkg) { - pPkg = readPkg({cwd: modulePath}).catch((err) => { - // Failed to read package - // If dependency shim is available, fake the package - - /* Disabled shimming until shim-plugin is available - const id = path.basename(modulePath); - if (pkgDependenciesShims[id]) { - const dependencies = JSON.parse(JSON.stringify(pkgDependenciesShims[id])); - return { // Fake package.json content - name: id, - dependencies, - version: "", - ui5: { - dependencies: Object.keys(dependencies) - } - }; - }*/ - throw err; - }); - this.projectCache[modulePath] = { - pPkg - }; - } - - // Check whether module has already been processed in the current subtree (indicates a loop) - if (parentPath.indexOf(`:${moduleName}:`) !== -1) { - log.verbose(`Deduping project ${moduleName} with parent path ${parentPath}`); - // This is a loop => abort further processing - if (!this.includeDeduped) { - // Ignore this dependency - return null; - } else { - // Create deduped project - const pkg = await pPkg; - return this.createDedupedProject({ - id: moduleName, - version: pkg.version, - path: modulePath - }); - } - } - - // Check whether project has already been processed - // Note: We can only cache already *processed* projects, not the promise waiting for the processing to complete - // Otherwise cyclic dependencies might wait for each other, emptying the event loop - // Note 2: Currently caching can't be used at all. If a cached dependency has an indirect dependency to the - // requesting module, a circular reference would be created - /* - if (cachedProject) { - if (log.isLevelEnabled("silly")) { - log.silly(`${parentPath.match(/([^:]*):$/)[1]} retrieved already ` + - `resolved project ${moduleName} from cache 🗄 `); - } - return cachedProject; - }*/ - if (log.isLevelEnabled("silly")) { - log.silly(`${parentPath.match(/([^:]*):$/)[1]} is waiting for ${moduleName}...`); - } - - return pPkg.then((pkg) => { - return this.processPkg({ - name: moduleName, - pkg, - path: modulePath - }, parentPath).then((projects) => { - // Flatten the array of project arrays (yes, because collections) - return Array.prototype.concat.apply([], projects.filter((p) => p !== null)); - })/* - // Currently no project caching, see above - .then((projects) => { - this.projectCache[modulePath].cachedProject = projects; - return projects; - })*/; - }, (err) => { - // Failed to read package. Create a project anyway - log.error(`Failed to read package.json of module ${moduleName} at ${modulePath} - Error: ${err.message}`); - log.error(`Ignoring module ${moduleName} due to errors.`); - return null; - }); - } - - /* Returns path to a module - */ - findModulePath(basePath, moduleName) { - return resolveModulePath(moduleName + "/package.json", { - basedir: basePath, - preserveSymlinks: false - }).then((pkgPath) => { - return realpath(pkgPath); - }).then((pkgPath) => { - return path.dirname(pkgPath); - }).catch((err) => { - // Fallback: Check for a collection above this module - return readPkgUp({ - cwd: path.dirname(basePath) - }).then((result) => { - if (result && result.packageJson) { - const pkg = result.packageJson; - - // As of today, collections only exist in shims - this.shimCollection(pkg.name, pkg); - if (pkg.collection) { - log.verbose(`Unable to locate module ${moduleName} via resolve logic, but found ` + - `a collection in parent hierarchy: ${pkg.name}`); - const modules = pkg.collection.modules || {}; - if (modules[moduleName]) { - const modulePath = path.join(path.dirname(result.path), modules[moduleName]); - log.verbose(`Found module ${moduleName} in that collection`); - return modulePath; - } - throw new Error( - `[npm translator] Could not find module ${moduleName} in collection ${pkg.name}`); - } - } - - throw new Error(`[npm translator] Could not locate module ${moduleName} via resolve logic ` + - `(error: ${err.message}) or in a collection`); - }, (err) => { - throw new Error( - `[npm translator] Failed to locate module ${moduleName} from ${basePath} - Error: ${err.message}`); - }); - }); - } - - registerPendingDependencies({dependencies, parentProject, parentPath}) { - Object.keys(dependencies).forEach((moduleName) => { - if (this.pendingDeps[moduleName]) { - // Register additional potential parent for pending dependency - this.pendingDeps[moduleName].parents.push({ - project: parentProject, - path: parentPath - }); - } else { - // Add new pending dependency - this.pendingDeps[moduleName] = { - parents: [{ - project: parentProject, - path: parentPath, - }] - }; - } - }); - } - - processPendingDeps(tree) { - if (Object.keys(this.pendingDeps).length === 0) { - // No pending deps => nothing to do - log.verbose("No pending (optional) dependencies to process"); - return tree; - } - const queue = [tree]; - const visited = new Set(); - - // Breadth-first search to prefer projects closer to root - while (queue.length) { - const project = queue.shift(); // Get and remove first entry from queue - if (!project.id) { - throw new Error("Encountered project with missing id"); - } - if (visited.has(project.id)) { - continue; - } - visited.add(project.id); - - if (this.pendingDeps[project.id]) { - for (let i = this.pendingDeps[project.id].parents.length - 1; i >= 0; i--) { - const parent = this.pendingDeps[project.id].parents[i]; - // Check whether module has already been processed in the current subtree (indicates a loop) - if (parent.path.indexOf(`:${project.id}:`) !== -1) { - // This is a loop - log.verbose(`Deduping pending dependency ${project.id} with parent path ${parent.path}`); - if (this.includeDeduped) { - // Create project marked as deduped - const dedupedProject = this.createDedupedProject({ - id: project.id, - version: project.version, - path: project.path - }); - parent.project.dependencies.push(dedupedProject); - } // else: do nothing - } else { - if (log.isLevelEnabled("silly")) { - log.silly(`Adding optional dependency ${project.id} to project ${parent.project.id} ` + - `(parent path: ${parent.path})...`); - } - const dedupedProject = this.dedupeTree(project, parent.path); - parent.project.dependencies.push(dedupedProject); - } - } - this.pendingDeps[project.id] = null; - - if (log.isLevelEnabled("silly")) { - log.silly(`${Object.keys(this.pendingDeps).length} pending dependencies left`); - } - } - - if (project.dependencies) { - queue.push(...project.dependencies); - } - } - return tree; - } - - generateDependencyTree(dirPath) { - return readPkgUp({ - cwd: dirPath - }).then((result) => { - if (!result || !result.packageJson) { - throw new Error( - `[npm translator] Failed to locate package.json for directory "${path.resolve(dirPath)}"`); - } - return { - // resolved path points to the package.json, but we want just the folder path - path: path.dirname(result.path), - name: result.packageJson.name, - pkg: result.packageJson - }; - }).then(this.processPkg.bind(this)).then((tree) => { - if (this.projectsWoUi5Deps.length) { - log.verbose( - "[PERF] Consider defining UI5-dependencies in the package.json files of the relevant modules " + - "from the following list to improve npm translator execution time: " + - this.projectsWoUi5Deps.join(", ")); - } - - /* - By default, there is just one root project in the tree, - but in case a collection is returned, there are multiple roots. - This can only happen: - 1. when running with a collection project as CWD - => This is not intended and will throw an error as no project will match the CWD - 2. when running in a project without a package.json within a collection project - => In case the CWD matches with a project from the collection, then that - project is picked as root, otherwise an error is thrown - */ - - for (let i = 0; i < tree.length; i++) { - const rootPackage = tree[i]; - if (path.resolve(rootPackage.path) === path.resolve(dirPath)) { - log.verbose("Treetop:"); - log.verbose(rootPackage); - return rootPackage; - } - } - - throw new Error("[npm translator] Could not identify root project."); - }).then(this.processPendingDeps.bind(this)); - } - - /* - * Inject collection definitions for some known projects - * until this is either not needed anymore or added to the actual project. - */ - shimCollection(moduleName, pkg) { - /* Disabled shimming until shim-plugin is available - if (!pkg.collection && pkgCollectionShims[moduleName]) { - pkg.collection = JSON.parse(JSON.stringify(pkgCollectionShims[moduleName])); - }*/ - } - - dedupeTree(tree, parentPath) { - const projectsToDedupe = new Set(parentPath.slice(1, -1).split(":")); - const clonedTree = JSON.parse(JSON.stringify(tree)); - const queue = [{project: clonedTree}]; - // BFS - while (queue.length) { - const {project, parent} = queue.shift(); // Get and remove first entry from queue - - if (parent && projectsToDedupe.has(project.id)) { - log.silly(`In tree "${tree.id}" (parent path "${parentPath}"): Deduplicating project ${project.id} `+ - `(child of ${parent.id})`); - - const idx = parent.dependencies.indexOf(project); - if (this.includeDeduped) { - const dedupedProject = this.createDedupedProject(project); - parent.dependencies.splice(idx, 1, dedupedProject); - } else { - parent.dependencies.splice(idx, 1); - } - } - - if (project.dependencies) { - queue.push(...project.dependencies.map((dependency) => { - return { - project: dependency, - parent: project - }; - })); - } - } - return clonedTree; - } - - createDedupedProject({id, version, path}) { - return { - id, - version, - path, - dependencies: [], - deduped: true - }; - } -} - -/** - * Translator for npm resources - * - * @private - * @namespace - * @alias module:@ui5/project.translators.npm - */ -module.exports = { - /** - * Generates a dependency tree for npm projects - * - * @public - * @param {string} dirPath Project path - * @param {object} [options] - * @param {boolean} [options.includeDeduped=false] - * @returns {Promise} Promise resolving with a dependency tree - */ - generateDependencyTree(dirPath, options = {includeDeduped: false}) { - return new NpmTranslator(options).generateDependencyTree(dirPath); - } -}; - -// Export NpmTranslator class for testing only -if (process.env.NODE_ENV === "test") { - module.exports._NpmTranslator = NpmTranslator; -} diff --git a/packages/project/lib/translators/static.js b/packages/project/lib/translators/static.js deleted file mode 100644 index 826ce1867f6..00000000000 --- a/packages/project/lib/translators/static.js +++ /dev/null @@ -1,56 +0,0 @@ -const path = require("path"); -const fs = require("graceful-fs"); -const {promisify} = require("util"); -const readFile = promisify(fs.readFile); -const parseYaml = require("js-yaml").load; - -function resolveProjectPaths(cwd, project) { - project.path = path.resolve(cwd, project.path); - if (project.dependencies) { - project.dependencies.forEach((project) => resolveProjectPaths(cwd, project)); - } - return project; -} - -/** - * Translator for static resources - * - * @private - * @namespace - * @alias module:@ui5/project.translators.static - */ -module.exports = { - /** - * Generates a dependency tree from static resources - * - * This feature is EXPERIMENTAL and used for testing purposes only. - * - * @public - * @param {string} dirPath Project path - * @param {object} [options] - * @param {Array} [options.parameters] CLI configuration options - * @param {object} [options.tree] Tree object to be used instead of reading a YAML - * @returns {Promise} Promise resolving with a dependency tree - */ - async generateDependencyTree(dirPath, options = {}) { - let tree = options.tree; - if (!tree) { - const depFilePath = options.parameters && options.parameters[0] || - path.join(dirPath, "projectDependencies.yaml"); - try { - const contents = await readFile(depFilePath, {encoding: "utf-8"}); - tree = parseYaml(contents, { - filename: depFilePath - }); - } catch (err) { - throw new Error( - `[static translator] Failed to load dependency tree from path ${depFilePath} `+ - `- Error: ${err.message}`); - } - } - - // Ensure that all project paths are absolute - resolveProjectPaths(dirPath, tree); - return tree; - } -}; diff --git a/packages/project/lib/translators/ui5Framework.js b/packages/project/lib/translators/ui5Framework.js deleted file mode 100644 index de086bb1006..00000000000 --- a/packages/project/lib/translators/ui5Framework.js +++ /dev/null @@ -1,294 +0,0 @@ -const log = require("@ui5/logger").getLogger("normalizer:translators:ui5Framework"); - -class ProjectProcessor { - constructor({libraryMetadata}) { - this._libraryMetadata = libraryMetadata; - this._projectCache = {}; - } - getProject(libName) { - log.verbose(`Creating project for library ${libName}...`); - - if (this._projectCache[libName]) { - log.verbose(`Returning cached project for library ${libName}`); - return this._projectCache[libName]; - } - - if (!this._libraryMetadata[libName]) { - throw new Error(`Failed to find library ${libName} in dist packages metadata.json`); - } - - const depMetadata = this._libraryMetadata[libName]; - - const dependencies = []; - dependencies.push(...depMetadata.dependencies.map((depName) => { - return this.getProject(depName); - })); - - if (depMetadata.optionalDependencies) { - const resolvedOptionals = depMetadata.optionalDependencies.map((depName) => { - if (this._libraryMetadata[depName]) { - log.verbose(`Resolving optional dependency ${depName} for project ${libName}...`); - return this.getProject(depName); - } - }).filter(($)=>$); - - dependencies.push(...resolvedOptionals); - } - - this._projectCache[libName] = { - id: depMetadata.id, - version: depMetadata.version, - path: depMetadata.path, - dependencies - }; - return this._projectCache[libName]; - } -} - -const utils = { - getAllNodesOfTree(tree) { - const nodes = {}; - const queue = [...tree]; - while (queue.length) { - const project = queue.shift(); - if (!nodes[project.metadata.name]) { - nodes[project.metadata.name] = project; - queue.push(...project.dependencies); - } - } - return nodes; - }, - isFrameworkProject(project) { - return project.id.startsWith("@openui5/") || project.id.startsWith("@sapui5/"); - }, - shouldIncludeDependency({optional, development}, root) { - // Root project should include all dependencies - // Otherwise only non-optional and non-development dependencies should be included - return root || (optional !== true && development !== true); - }, - getFrameworkLibrariesFromTree(project, ui5Dependencies = [], root = true) { - if (utils.isFrameworkProject(project)) { - // Ignoring UI5 Framework libraries in dependencies - return ui5Dependencies; - } - - this._addFrameworkLibrariesFromProject(project, ui5Dependencies, root); - - project.dependencies.map((depProject) => { - utils.getFrameworkLibrariesFromTree(depProject, ui5Dependencies, false); - }); - return ui5Dependencies; - }, - _addFrameworkLibrariesFromProject(project, ui5Dependencies, root) { - if (!project.framework) { - return; - } - if ( - project.specVersion !== "2.0" && project.specVersion !== "2.1" && - project.specVersion !== "2.2" && project.specVersion !== "2.3" && - project.specVersion !== "2.4" && project.specVersion !== "2.5" && - project.specVersion !== "2.6" - ) { - log.warn(`Project ${project.metadata.name} defines invalid ` + - `specification version ${project.specVersion} for framework.libraries configuration`); - return; - } - - if (!project.framework.libraries || !project.framework.libraries.length) { - log.verbose(`Project ${project.metadata.name} defines no framework.libraries configuration`); - // Possible future enhancement: Fallback to detect OpenUI5 framework dependencies in package.json - return; - } - - project.framework.libraries.forEach((dependency) => { - if (!ui5Dependencies.includes(dependency.name) && - utils.shouldIncludeDependency(dependency, root)) { - ui5Dependencies.push(dependency.name); - } - }); - }, - ProjectProcessor -}; - -/** - * - * - * @private - * @namespace - * @alias module:@ui5/project.translators.ui5Framework - */ -module.exports = { - /** - * - * - * @public - * @param {object} tree - * @param {object} [options] - * @param {string} [options.versionOverride] Framework version to use instead of the root projects framework - * version from the provided tree - * @returns {Promise} Promise - */ - generateDependencyTree: async function(tree, options = {}) { - // Don't create a tree when root project doesn't have a framework configuration - if (!tree.framework) { - return null; - } - - // Ignoring UI5 Framework libraries - if (utils.isFrameworkProject(tree)) { - log.verbose(`UI5 framework dependency resolution is currently not supported ` + - `for framework libraries. Skipping project "${tree.id}"`); - return null; - } - - const frameworkName = tree.framework.name; - if (frameworkName !== "SAPUI5" && frameworkName !== "OpenUI5") { - throw new Error( - `Unknown framework.name "${frameworkName}" for project ${tree.id}. Must be "OpenUI5" or "SAPUI5"` - ); - } - - let Resolver; - if (frameworkName === "OpenUI5") { - Resolver = require("../ui5Framework/Openui5Resolver"); - } else if (frameworkName === "SAPUI5") { - Resolver = require("../ui5Framework/Sapui5Resolver"); - } - - let version; - if (!tree.framework.version) { - throw new Error( - `framework.version is not defined for project ${tree.id}` - ); - } else if (options.versionOverride) { - version = await Resolver.resolveVersion(options.versionOverride, {cwd: tree.path}); - log.info( - `Overriding configured ${frameworkName} version ` + - `${tree.framework.version} with version ${version}` - ); - } else { - version = tree.framework.version; - } - - const referencedLibraries = utils.getFrameworkLibrariesFromTree(tree); - if (!referencedLibraries.length) { - log.verbose(`No ${frameworkName} libraries referenced in project ${tree.id} or its dependencies`); - return null; - } - - log.info(`Using ${frameworkName} version: ${version}`); - - const resolver = new Resolver({cwd: tree.path, version}); - - let startTime; - if (log.isLevelEnabled("verbose")) { - startTime = process.hrtime(); - } - - const {libraryMetadata} = await resolver.install(referencedLibraries); - - if (log.isLevelEnabled("verbose")) { - const timeDiff = process.hrtime(startTime); - const prettyHrtime = require("pretty-hrtime"); - log.verbose( - `${frameworkName} dependencies ${referencedLibraries.join(", ")} ` + - `resolved in ${prettyHrtime(timeDiff)}`); - } - - const projectProcessor = new utils.ProjectProcessor({ - libraryMetadata - }); - - const libraries = referencedLibraries.map((libName) => { - return projectProcessor.getProject(libName); - }); - - // Use root project (=requesting project) as root of framework tree - // For this we clone all properties of the root project, - // except the dependencies since they will be overwritten anyways - const frameworkTree = {}; - for (const attribute of Object.keys(tree)) { - if (attribute !== "dependencies") { - frameworkTree[attribute] = JSON.parse(JSON.stringify(tree[attribute])); - } - } - - // Overwrite dependencies to exclusively contain framework libraries - frameworkTree.dependencies = libraries; - // Flag as transparent so that the project type is not applied again - frameworkTree._transparentProject = true; - return frameworkTree; - }, - - mergeTrees: function(projectTree, frameworkTree) { - const frameworkLibs = utils.getAllNodesOfTree(frameworkTree.dependencies); - - log.verbose(`Merging framework tree into project tree "${projectTree.metadata.name}"`); - - const queue = [projectTree]; - const processedProjects = []; - while (queue.length) { - const project = queue.shift(); - if (project.deduped) { - // Deduped projects have certainly already been processed - // Note: Deduped dependencies don't have any metadata or other configuration. - continue; - } - if (processedProjects.includes(project.id)) { - // projectTree must be duplicate free. A second occurrence of the same project - // is always the same object. Therefore a single processing needs to be ensured. - // Otherwise the isFrameworkProject check would detect framework dependencies added - // at an earlier processing of the project and yield incorrect logging. - log.verbose(`Project ${project.metadata.name} (${project.id}) has already been processed`); - continue; - } - processedProjects.push(project.id); - - project.dependencies = project.dependencies.filter((depProject) => { - if (utils.isFrameworkProject(depProject)) { - log.verbose( - `A translator has already added the UI5 framework library ${depProject.metadata.name} ` + - `(id: ${depProject.id}) to the dependencies of project ${project.metadata.name}. ` + - `This dependency will be ignored.`); - log.info(`If project ${project.metadata.name} contains a package.json in which it defines a ` + - `dependency to the UI5 framework library ${depProject.id}, this dependency should be removed.`); - return false; - } - return true; - }); - queue.push(...project.dependencies); - - if ( - ( - project.specVersion === "2.0" || project.specVersion === "2.1" || - project.specVersion === "2.2" || project.specVersion === "2.3" || - project.specVersion === "2.4" || project.specVersion === "2.5" || - project.specVersion === "2.6" - ) && project.framework && project.framework.libraries) { - const frameworkDeps = project.framework.libraries - .filter((dependency) => { - if (dependency.optional && frameworkLibs[dependency.name]) { - // Resolved optional dependencies shall be used - return true; - } - // Filter out development and unresolved optional dependencies for non-root projects - return utils.shouldIncludeDependency(dependency, project._isRoot); - }) - .map((dependency) => { - if (!frameworkLibs[dependency.name]) { - throw new Error(`Missing framework library ${dependency.name} ` + - `required by project ${project.metadata.name}`); - } - return frameworkLibs[dependency.name]; - }); - if (frameworkDeps.length) { - project.dependencies.push(...frameworkDeps); - } - } - } - return projectTree; - }, - - // Export for testing only - _utils: process.env.NODE_ENV === "test" ? utils : undefined -}; diff --git a/packages/project/package.json b/packages/project/package.json index 5987c964475..994eb40b046 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,6 +103,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-alpha.6", + "@ui5/fs": "3.0.0-alpha.3", "@ui5/logger": "^3.0.1-alpha.1", "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.a/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/ui5.yaml index 676f166c3fc..8d4784313c3 100644 --- a/packages/project/test/fixtures/application.a/node_modules/collection/library.a/ui5.yaml +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.a/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.a diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.b/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/collection/library.b/ui5.yaml index 3275ac753b5..b2fe5be59ee 100644 --- a/packages/project/test/fixtures/application.a/node_modules/collection/library.b/ui5.yaml +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.b/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.b diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/library.c/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/collection/library.c/ui5.yaml index 159b141185e..7c5e38a7fc1 100644 --- a/packages/project/test/fixtures/application.a/node_modules/collection/library.c/ui5.yaml +++ b/packages/project/test/fixtures/application.a/node_modules/collection/library.c/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.c diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.a/node_modules/collection/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/application.a/node_modules/collection/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/collection/ui5.yaml new file mode 100644 index 00000000000..e47048de6a7 --- /dev/null +++ b/packages/project/test/fixtures/application.a/node_modules/collection/ui5.yaml @@ -0,0 +1,12 @@ +specVersion: "2.1" +metadata: + name: application.a.collection.dependency.shim +kind: extension +type: project-shim +shims: + collections: + collection: + modules: + "library.a": "./library.a" + "library.b": "./library.b" + "library.c": "./library.c" \ No newline at end of file diff --git a/packages/project/test/fixtures/application.a/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.a/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/application.a/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.a/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/application.a/ui5-test-configPath.yaml b/packages/project/test/fixtures/application.a/ui5-test-configPath.yaml new file mode 100644 index 00000000000..a50b3c48b99 --- /dev/null +++ b/packages/project/test/fixtures/application.a/ui5-test-configPath.yaml @@ -0,0 +1,7 @@ +--- +specVersion: "2.3" +type: application +metadata: + name: application.a +customConfiguration: + configPathTest: true \ No newline at end of file diff --git a/packages/project/test/fixtures/application.a/ui5.yaml b/packages/project/test/fixtures/application.a/ui5.yaml index 898f4e81609..b9dde7b16b2 100644 --- a/packages/project/test/fixtures/application.a/ui5.yaml +++ b/packages/project/test/fixtures/application.a/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "1.0" +specVersion: "2.3" type: application metadata: name: application.a diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.a/ui5.yaml b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/ui5.yaml index 676f166c3fc..8d4784313c3 100644 --- a/packages/project/test/fixtures/application.b/node_modules/collection/library.a/ui5.yaml +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.a/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.a diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.b/ui5.yaml b/packages/project/test/fixtures/application.b/node_modules/collection/library.b/ui5.yaml index 3275ac753b5..b2fe5be59ee 100644 --- a/packages/project/test/fixtures/application.b/node_modules/collection/library.b/ui5.yaml +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.b/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.b diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/library.c/ui5.yaml b/packages/project/test/fixtures/application.b/node_modules/collection/library.c/ui5.yaml index 159b141185e..7c5e38a7fc1 100644 --- a/packages/project/test/fixtures/application.b/node_modules/collection/library.c/ui5.yaml +++ b/packages/project/test/fixtures/application.b/node_modules/collection/library.c/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.c diff --git a/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.b/node_modules/collection/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/application.b/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.b/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/application.b/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.b/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/application.b/ui5.yaml b/packages/project/test/fixtures/application.b/ui5.yaml index 25326df459f..7b5e5dd2359 100644 --- a/packages/project/test/fixtures/application.b/ui5.yaml +++ b/packages/project/test/fixtures/application.b/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.b diff --git a/packages/project/test/fixtures/application.c/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.c/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/application.c/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.c/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/application.c/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.c/node_modules/library.e/src/library/e/.library index 20c99070048..26ff954f7b1 100644 --- a/packages/project/test/fixtures/application.c/node_modules/library.e/src/library/e/.library +++ b/packages/project/test/fixtures/application.c/node_modules/library.e/src/library/e/.library @@ -1,7 +1,7 @@ - library.d + library.e SAP SE ${copyright} ${version} diff --git a/packages/project/test/fixtures/application.c/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.c/node_modules/library.e/ui5.yaml index a1e7f1214ef..88ba07e82dd 100644 --- a/packages/project/test/fixtures/application.c/node_modules/library.e/ui5.yaml +++ b/packages/project/test/fixtures/application.c/node_modules/library.e/ui5.yaml @@ -1,11 +1,9 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.e -builder: - configuration: - copyright: |- - UI development toolkit for HTML5 (OpenUI5) - * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. - * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/application.c/ui5.yaml b/packages/project/test/fixtures/application.c/ui5.yaml index 3c1565db51f..fd28471bad3 100644 --- a/packages/project/test/fixtures/application.c/ui5.yaml +++ b/packages/project/test/fixtures/application.c/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.c diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/ui5.yaml b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/ui5.yaml index d3a67f6da5a..51744218833 100644 --- a/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/ui5.yaml +++ b/packages/project/test/fixtures/application.c2/node_modules/library.d-depender/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d-depender diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/ui5.yaml index c39a8461dd2..e05b61880d8 100644 --- a/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.c2/node_modules/library.e/node_modules/library.d/ui5.yaml @@ -1,10 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d -resources: - configuration: - paths: - src: main/src - test: main/test diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.c2/node_modules/library.e/src/library/e/.library index 20c99070048..26ff954f7b1 100644 --- a/packages/project/test/fixtures/application.c2/node_modules/library.e/src/library/e/.library +++ b/packages/project/test/fixtures/application.c2/node_modules/library.e/src/library/e/.library @@ -1,7 +1,7 @@ - library.d + library.e SAP SE ${copyright} ${version} diff --git a/packages/project/test/fixtures/application.c2/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.c2/node_modules/library.e/ui5.yaml index a1e7f1214ef..99dbbf3bcc3 100644 --- a/packages/project/test/fixtures/application.c2/node_modules/library.e/ui5.yaml +++ b/packages/project/test/fixtures/application.c2/node_modules/library.e/ui5.yaml @@ -1,11 +1,9 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.e -builder: - configuration: - copyright: |- - UI development toolkit for HTML5 (OpenUI5) - * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. - * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/application.c2/ui5.yaml b/packages/project/test/fixtures/application.c2/ui5.yaml index 132223e4280..c982fa9dc26 100644 --- a/packages/project/test/fixtures/application.c2/ui5.yaml +++ b/packages/project/test/fixtures/application.c2/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.c2 diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/.library b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d-depender/.library similarity index 88% rename from packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/.library rename to packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d-depender/.library index 53c2d14c9d6..42efe5f9d84 100644 --- a/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/.library +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d-depender/.library @@ -1,7 +1,7 @@ - library.d + library.d-depender SAP SE Some fancy copyright ${version} diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/some.js b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d-depender/some.js similarity index 100% rename from packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d/some.js rename to packages/project/test/fixtures/application.c3/node_modules/library.d-depender/main/src/library/d-depender/some.js diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/ui5.yaml b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/ui5.yaml index d3a67f6da5a..51744218833 100644 --- a/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/ui5.yaml +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d-depender/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d-depender diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.c3/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/application.c3/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.c3/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.c3/node_modules/library.e/src/library/e/.library index 20c99070048..26ff954f7b1 100644 --- a/packages/project/test/fixtures/application.c3/node_modules/library.e/src/library/e/.library +++ b/packages/project/test/fixtures/application.c3/node_modules/library.e/src/library/e/.library @@ -1,7 +1,7 @@ - library.d + library.e SAP SE ${copyright} ${version} diff --git a/packages/project/test/fixtures/application.c3/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.c3/node_modules/library.e/ui5.yaml index a1e7f1214ef..99dbbf3bcc3 100644 --- a/packages/project/test/fixtures/application.c3/node_modules/library.e/ui5.yaml +++ b/packages/project/test/fixtures/application.c3/node_modules/library.e/ui5.yaml @@ -1,11 +1,9 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.e -builder: - configuration: - copyright: |- - UI development toolkit for HTML5 (OpenUI5) - * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. - * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/application.c3/ui5.yaml b/packages/project/test/fixtures/application.c3/ui5.yaml index b0fbde29c18..3cecacec12e 100644 --- a/packages/project/test/fixtures/application.c3/ui5.yaml +++ b/packages/project/test/fixtures/application.c3/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.c3 diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/ui5.yaml index 7b731df83f6..e05b61880d8 100644 --- a/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.d/node_modules/library.e/node_modules/library.d/ui5.yaml @@ -1,3 +1,5 @@ --- -name: library.d +specVersion: "2.3" type: library +metadata: + name: library.d diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/.library index 20c99070048..26ff954f7b1 100644 --- a/packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/.library +++ b/packages/project/test/fixtures/application.d/node_modules/library.e/src/library/e/.library @@ -1,7 +1,7 @@ - library.d + library.e SAP SE ${copyright} ${version} diff --git a/packages/project/test/fixtures/application.d/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.d/node_modules/library.e/ui5.yaml index a1e7f1214ef..99dbbf3bcc3 100644 --- a/packages/project/test/fixtures/application.d/node_modules/library.e/ui5.yaml +++ b/packages/project/test/fixtures/application.d/node_modules/library.e/ui5.yaml @@ -1,11 +1,9 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.e -builder: - configuration: - copyright: |- - UI development toolkit for HTML5 (OpenUI5) - * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. - * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/application.d/ui5.yaml b/packages/project/test/fixtures/application.d/ui5.yaml index 60bbbc1c38b..1b43352b18a 100644 --- a/packages/project/test/fixtures/application.d/ui5.yaml +++ b/packages/project/test/fixtures/application.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.d diff --git a/packages/project/test/fixtures/application.e/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.e/node_modules/library.e/ui5.yaml index a1e7f1214ef..3852a732d57 100644 --- a/packages/project/test/fixtures/application.e/node_modules/library.e/ui5.yaml +++ b/packages/project/test/fixtures/application.e/node_modules/library.e/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.e diff --git a/packages/project/test/fixtures/application.e/ui5.yaml b/packages/project/test/fixtures/application.e/ui5.yaml index 9828f57ae35..97537e5ca03 100644 --- a/packages/project/test/fixtures/application.e/ui5.yaml +++ b/packages/project/test/fixtures/application.e/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.e diff --git a/packages/project/test/fixtures/application.f/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.f/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/application.f/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.f/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/application.f/node_modules/library.e/src/library/e/.library b/packages/project/test/fixtures/application.f/node_modules/library.e/src/library/e/.library index 20c99070048..26ff954f7b1 100644 --- a/packages/project/test/fixtures/application.f/node_modules/library.e/src/library/e/.library +++ b/packages/project/test/fixtures/application.f/node_modules/library.e/src/library/e/.library @@ -1,7 +1,7 @@ - library.d + library.e SAP SE ${copyright} ${version} diff --git a/packages/project/test/fixtures/application.f/node_modules/library.e/ui5.yaml b/packages/project/test/fixtures/application.f/node_modules/library.e/ui5.yaml index a1e7f1214ef..99dbbf3bcc3 100644 --- a/packages/project/test/fixtures/application.f/node_modules/library.e/ui5.yaml +++ b/packages/project/test/fixtures/application.f/node_modules/library.e/ui5.yaml @@ -1,11 +1,9 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.e -builder: - configuration: - copyright: |- - UI development toolkit for HTML5 (OpenUI5) - * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. - * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/fixtures/application.f/ui5.yaml b/packages/project/test/fixtures/application.f/ui5.yaml index a6eda244408..3df51b3a974 100644 --- a/packages/project/test/fixtures/application.f/ui5.yaml +++ b/packages/project/test/fixtures/application.f/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.f diff --git a/packages/project/test/fixtures/application.g/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/application.g/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/application.g/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/application.g/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/application.g/ui5.yaml b/packages/project/test/fixtures/application.g/ui5.yaml index 7d2ca796454..d4e5b20f996 100644 --- a/packages/project/test/fixtures/application.g/ui5.yaml +++ b/packages/project/test/fixtures/application.g/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.g diff --git a/packages/project/test/fixtures/application.h/pom.xml b/packages/project/test/fixtures/application.h/pom.xml new file mode 100644 index 00000000000..478ebc85c8c --- /dev/null +++ b/packages/project/test/fixtures/application.h/pom.xml @@ -0,0 +1,41 @@ + + + + + + + 4.0.0 + + + + + com.sap.test + application.h + 1.0.0 + war + + + + + application.h + Simple SAPUI5 based application + + + + + + + application.h + + + + + diff --git a/packages/project/test/fixtures/application.h/projectDependencies.yaml b/packages/project/test/fixtures/application.h/projectDependencies.yaml index 5476e8a0c4b..b06c3121380 100644 --- a/packages/project/test/fixtures/application.h/projectDependencies.yaml +++ b/packages/project/test/fixtures/application.h/projectDependencies.yaml @@ -1,13 +1,8 @@ --- -id: testsuite +id: static-application.a version: "0.0.1" -description: "Sample App" -main: "index.html" -path: "./" +path: "../application.a" dependencies: -- id: sap.f - version: "1.56.1" - path: "../sap.f" -- id: sap.m - version: "1.61.0" - path: "../sap.m" \ No newline at end of file +- id: static-library.e + version: "0.0.1" + path: "../library.e" diff --git a/packages/project/test/fixtures/application.h/webapp-project.artifactId/manifest.json b/packages/project/test/fixtures/application.h/webapp-project.artifactId/manifest.json new file mode 100644 index 00000000000..7de6072ce82 --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp-project.artifactId/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "${project.artifactId}", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} diff --git a/packages/project/test/fixtures/application.h/webapp-properties.appId/manifest.json b/packages/project/test/fixtures/application.h/webapp-properties.appId/manifest.json new file mode 100644 index 00000000000..e1515df7025 --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp-properties.appId/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "${appId}", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} diff --git a/packages/project/test/fixtures/application.h/webapp-properties.componentName/manifest.json b/packages/project/test/fixtures/application.h/webapp-properties.componentName/manifest.json new file mode 100644 index 00000000000..7d63e359cdf --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp-properties.componentName/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "${componentName}", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} diff --git a/packages/project/test/fixtures/application.h/webapp/Component.js b/packages/project/test/fixtures/application.h/webapp/Component.js new file mode 100644 index 00000000000..cb9bd406864 --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp/Component.js @@ -0,0 +1,8 @@ +sap.ui.define(["sap/ui/core/UIComponent"], function(UIComponent){ + "use strict"; + return UIComponent.extend('application.h.Component', { + metadata: { + manifest: "json" + } + }); +}); diff --git a/packages/project/test/fixtures/application.h/webapp/manifest.json b/packages/project/test/fixtures/application.h/webapp/manifest.json new file mode 100644 index 00000000000..32b7e4a8458 --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "application.h", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} diff --git a/packages/project/test/fixtures/application.h/webapp/sectionsA/section1.js b/packages/project/test/fixtures/application.h/webapp/sectionsA/section1.js new file mode 100644 index 00000000000..ac4a8129651 --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp/sectionsA/section1.js @@ -0,0 +1,3 @@ +sap.ui.define(["sap/m/Button"], function(Button) { + console.log("Section 1 included"); +}); diff --git a/packages/project/test/fixtures/application.h/webapp/sectionsA/section2.js b/packages/project/test/fixtures/application.h/webapp/sectionsA/section2.js new file mode 100644 index 00000000000..e009c828602 --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp/sectionsA/section2.js @@ -0,0 +1,3 @@ +sap.ui.define(["sap/m/Button"], function(Button) { + console.log("Section 2 included"); +}); diff --git a/packages/project/test/fixtures/application.h/webapp/sectionsA/section3.js b/packages/project/test/fixtures/application.h/webapp/sectionsA/section3.js new file mode 100644 index 00000000000..5fd9349d49b --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp/sectionsA/section3.js @@ -0,0 +1,3 @@ +sap.ui.define(["sap/m/Button"], function(Button) { + console.log("Section 3 included"); +}); diff --git a/packages/project/test/fixtures/application.h/webapp/sectionsB/section1.js b/packages/project/test/fixtures/application.h/webapp/sectionsB/section1.js new file mode 100644 index 00000000000..ac4a8129651 --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp/sectionsB/section1.js @@ -0,0 +1,3 @@ +sap.ui.define(["sap/m/Button"], function(Button) { + console.log("Section 1 included"); +}); diff --git a/packages/project/test/fixtures/application.h/webapp/sectionsB/section2.js b/packages/project/test/fixtures/application.h/webapp/sectionsB/section2.js new file mode 100644 index 00000000000..e009c828602 --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp/sectionsB/section2.js @@ -0,0 +1,3 @@ +sap.ui.define(["sap/m/Button"], function(Button) { + console.log("Section 2 included"); +}); diff --git a/packages/project/test/fixtures/application.h/webapp/sectionsB/section3.js b/packages/project/test/fixtures/application.h/webapp/sectionsB/section3.js new file mode 100644 index 00000000000..5fd9349d49b --- /dev/null +++ b/packages/project/test/fixtures/application.h/webapp/sectionsB/section3.js @@ -0,0 +1,3 @@ +sap.ui.define(["sap/m/Button"], function(Button) { + console.log("Section 3 included"); +}); diff --git a/packages/project/test/fixtures/build-manifest/application.a/.ui5/build-manifest.json b/packages/project/test/fixtures/build-manifest/application.a/.ui5/build-manifest.json new file mode 100644 index 00000000000..03ff08f24bd --- /dev/null +++ b/packages/project/test/fixtures/build-manifest/application.a/.ui5/build-manifest.json @@ -0,0 +1,42 @@ +{ + "project": { + "specVersion": "2.3", + "type": "application", + "metadata": { + "name": "application.a" + }, + "resources": { + "configuration": { + "paths": { + "webapp": "resources/id1" + } + } + } + }, + "buildManifest": { + "manifestVersion": "0.1", + "timestamp": "2022-05-04T12:45:30.024Z", + "versions": { + "builderVersion": "3.0.0", + "projectVersion": "3.0.0", + "fsVersion": "3.0.0" + }, + "buildConfig": { + "selfContained": false, + "jsdoc": false, + "includedTasks": [], + "excludedTasks": [] + }, + "id": "application.a", + "version": "0.2.0", + "namespace": "id1", + "tags": { + "/resources/id1/test.js": { + "ui5:HasDebugVariant": true + }, + "/resources/id1/test-dbg.js": { + "ui5:IsDebugVariant": true + } + } + } +} diff --git a/packages/project/test/fixtures/build-manifest/application.a/package.json b/packages/project/test/fixtures/build-manifest/application.a/package.json new file mode 100644 index 00000000000..b5401c1e6e9 --- /dev/null +++ b/packages/project/test/fixtures/build-manifest/application.a/package.json @@ -0,0 +1,13 @@ +{ + "name": "application.a-archive", + "version": "1.0.0", + "description": "Simple SAPUI5 based application", + "main": "index.html", + "dependencies": { + "library.d": "file:../library.d", + "collection": "file:../collection" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/build-manifest/application.a/resources/id1/index.html b/packages/project/test/fixtures/build-manifest/application.a/resources/id1/index.html new file mode 100644 index 00000000000..77b0207cc80 --- /dev/null +++ b/packages/project/test/fixtures/build-manifest/application.a/resources/id1/index.html @@ -0,0 +1,9 @@ + + + + Application A + + + + + \ No newline at end of file diff --git a/packages/project/test/fixtures/build-manifest/application.a/resources/id1/manifest.json b/packages/project/test/fixtures/build-manifest/application.a/resources/id1/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/build-manifest/application.a/resources/id1/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/build-manifest/application.a/resources/id1/test-dbg.js b/packages/project/test/fixtures/build-manifest/application.a/resources/id1/test-dbg.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/build-manifest/application.a/resources/id1/test-dbg.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/fixtures/build-manifest/application.a/resources/id1/test.js b/packages/project/test/fixtures/build-manifest/application.a/resources/id1/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/build-manifest/application.a/resources/id1/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/fixtures/build-manifest/library.e/.ui5/build-manifest.json b/packages/project/test/fixtures/build-manifest/library.e/.ui5/build-manifest.json new file mode 100644 index 00000000000..5205a51a854 --- /dev/null +++ b/packages/project/test/fixtures/build-manifest/library.e/.ui5/build-manifest.json @@ -0,0 +1,43 @@ +{ + "project": { + "specVersion": "2.3", + "type": "library", + "metadata": { + "name": "library.e" + }, + "resources": { + "configuration": { + "paths": { + "src": "resources", + "test": "test-resources" + } + } + } + }, + "buildManifest": { + "manifestVersion": "0.1", + "timestamp": "2022-05-06T09:54:29.051Z", + "versions": { + "builderVersion": "3.0.0", + "projectVersion": "3.0.0", + "fsVersion": "3.0.0" + }, + "buildConfig": { + "selfContained": false, + "jsdoc": false, + "includedTasks": [], + "excludedTasks": [] + }, + "id": "library.e", + "version": "1.0.0", + "namespace": "library/e", + "tags": { + "/resources/library/e/some.js": { + "ui5:HasDebugVariant": true + }, + "/resources/library/e/some-dbg.js": { + "ui5:IsDebugVariant": true + } + } + } +} diff --git a/packages/project/test/fixtures/build-manifest/library.e/package.json b/packages/project/test/fixtures/build-manifest/library.e/package.json new file mode 100644 index 00000000000..9ce874ff55a --- /dev/null +++ b/packages/project/test/fixtures/build-manifest/library.e/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.e", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for dev dependencies", + "devDependencies": { + "library.d": "file:../library.d" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/build-manifest/library.e/resources/library/e/.library b/packages/project/test/fixtures/build-manifest/library.e/resources/library/e/.library new file mode 100644 index 00000000000..c1f37d77222 --- /dev/null +++ b/packages/project/test/fixtures/build-manifest/library.e/resources/library/e/.library @@ -0,0 +1,11 @@ + + + + library.e + SAP SE + Some fancy copyright + ${version} + + Library E + + diff --git a/packages/project/test/fixtures/build-manifest/library.e/resources/library/e/some.js b/packages/project/test/fixtures/build-manifest/library.e/resources/library/e/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/build-manifest/library.e/resources/library/e/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/build-manifest/library.e/test-resources/library/e/Test.html b/packages/project/test/fixtures/build-manifest/library.e/test-resources/library/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/collection/library.a/ui5.yaml b/packages/project/test/fixtures/collection/library.a/ui5.yaml index 676f166c3fc..8d4784313c3 100644 --- a/packages/project/test/fixtures/collection/library.a/ui5.yaml +++ b/packages/project/test/fixtures/collection/library.a/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.a diff --git a/packages/project/test/fixtures/collection/library.b/ui5.yaml b/packages/project/test/fixtures/collection/library.b/ui5.yaml index 3275ac753b5..b2fe5be59ee 100644 --- a/packages/project/test/fixtures/collection/library.b/ui5.yaml +++ b/packages/project/test/fixtures/collection/library.b/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.b diff --git a/packages/project/test/fixtures/collection/library.c/ui5.yaml b/packages/project/test/fixtures/collection/library.c/ui5.yaml index 159b141185e..7c5e38a7fc1 100644 --- a/packages/project/test/fixtures/collection/library.c/ui5.yaml +++ b/packages/project/test/fixtures/collection/library.c/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.c diff --git a/packages/project/test/fixtures/collection/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/collection/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/collection/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/collection/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/ui5.yaml index 16ac128fb4c..7501387233f 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.cycle.a diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/ui5.yaml index 557b0aa636a..33e181aa9bb 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/ui5.yaml @@ -1,5 +1,23 @@ --- -specVersion: "0.1" +specVersion: "2.2" type: application metadata: name: application.cycle.b +--- +specVersion: "2.2" +kind: extension +type: project-shim +metadata: + name: application.cycle.b-shim +shims: + configurations: + module.d: + specVersion: "2.2" + type: module + metadata: + name: module.d + module.e: + specVersion: "2.2" + type: module + metadata: + name: module.e \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/ui5.yaml index 44420029d3d..18e66978522 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.cycle.c diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/ui5.yaml index 13f735d20c9..72d79ae25db 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.cycle.d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/ui5.yaml index 199e29c6dfd..c3d85496b83 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.cycle.e diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/ui5.yaml index 55d3a6d8dd1..6c39c5b3f56 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.cycle.f diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/ui5.yaml index 87e92d6d1a1..f63b38ea3ba 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: component.cycle.a diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/ui5.yaml index 124aef34ff2..5c42ee2e188 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.cycle.a diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/ui5.yaml index 13ef9e228a3..fb6a25de09a 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.cycle.b diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/ui5.yaml index 3fb70271d3e..52bb969a878 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.cycle.d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/ui5.yaml index 5ebeb043fa5..f6b4f2ac1e9 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.cycle.c diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/ui5.yaml index 3fb70271d3e..52bb969a878 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.cycle.d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/ui5.yaml index df84c329fef..d20d4477a28 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/ui5.yaml +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.cycle.e diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.c/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.c/ui5.yaml new file mode 100644 index 00000000000..f79d97826f9 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.c/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.c diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.d/ui5.yaml new file mode 100644 index 00000000000..c65780ec58d --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.d/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.d diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.e/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.e/ui5.yaml new file mode 100644 index 00000000000..e6487041ace --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.e/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.e diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.f/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.f/ui5.yaml new file mode 100644 index 00000000000..5834bf479ab --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.f/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.f diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.g/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.g/ui5.yaml new file mode 100644 index 00000000000..dfadd749b12 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.g/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.g diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.h/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.h/ui5.yaml new file mode 100644 index 00000000000..d80eec70ea4 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.h/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.h diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.i/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.i/ui5.yaml new file mode 100644 index 00000000000..d2872d2544a --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.i/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.i diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.j/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.j/ui5.yaml new file mode 100644 index 00000000000..e9cb9133d6f --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.j/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.j diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.k/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.k/ui5.yaml new file mode 100644 index 00000000000..6c763884743 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.k/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.k diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.l/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.l/ui5.yaml new file mode 100644 index 00000000000..9c50648e65e --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.l/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.l diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.m/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/module.m/ui5.yaml new file mode 100644 index 00000000000..5f02be6185b --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/module.m/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: module +metadata: + name: module.m diff --git a/packages/project/test/fixtures/err.application.a/ui5.yaml b/packages/project/test/fixtures/err.application.a/ui5.yaml new file mode 100644 index 00000000000..00090cd96ea --- /dev/null +++ b/packages/project/test/fixtures/err.application.a/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: application +metadata: + name: err.app.a diff --git a/packages/project/test/fixtures/err.application.a/webapp/index.html b/packages/project/test/fixtures/err.application.a/webapp/index.html new file mode 100644 index 00000000000..d86c19d3d0c --- /dev/null +++ b/packages/project/test/fixtures/err.application.a/webapp/index.html @@ -0,0 +1,9 @@ + + + + Error Application A + + + + + diff --git a/packages/project/test/fixtures/err.application.a/webapp/manifest.json b/packages/project/test/fixtures/err.application.a/webapp/manifest.json new file mode 100644 index 00000000000..781945df9dc --- /dev/null +++ b/packages/project/test/fixtures/err.application.a/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} \ No newline at end of file diff --git a/packages/project/test/fixtures/err.application.a/webapp/test.js b/packages/project/test/fixtures/err.application.a/webapp/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/err.application.a/webapp/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/fixtures/glob/application.a/ui5.yaml b/packages/project/test/fixtures/glob/application.a/ui5.yaml index 7e28c5d7ce5..b9dde7b16b2 100644 --- a/packages/project/test/fixtures/glob/application.a/ui5.yaml +++ b/packages/project/test/fixtures/glob/application.a/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.a diff --git a/packages/project/test/fixtures/glob/application.b/ui5.yaml b/packages/project/test/fixtures/glob/application.b/ui5.yaml index 25326df459f..7b5e5dd2359 100644 --- a/packages/project/test/fixtures/glob/application.b/ui5.yaml +++ b/packages/project/test/fixtures/glob/application.b/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: application metadata: name: application.b diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/ui5.yaml index 38440bacbc6..52c17922bfd 100644 --- a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/ui5.yaml +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.x/node_modules/library.f/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.f diff --git a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/ui5.yaml index 38440bacbc6..52c17922bfd 100644 --- a/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/ui5.yaml +++ b/packages/project/test/fixtures/legacy.collection.a/src/legacy.library.y/node_modules/library.f/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.f diff --git a/packages/project/test/fixtures/legacy.library.a/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/legacy.library.a/node_modules/library.f/ui5.yaml index 38440bacbc6..52c17922bfd 100644 --- a/packages/project/test/fixtures/legacy.library.a/node_modules/library.f/ui5.yaml +++ b/packages/project/test/fixtures/legacy.library.a/node_modules/library.f/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.f diff --git a/packages/project/test/fixtures/legacy.library.b/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/legacy.library.b/node_modules/library.f/ui5.yaml index 38440bacbc6..52c17922bfd 100644 --- a/packages/project/test/fixtures/legacy.library.b/node_modules/library.f/ui5.yaml +++ b/packages/project/test/fixtures/legacy.library.b/node_modules/library.f/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.f diff --git a/packages/project/test/fixtures/library.d-depender/node_modules/library.d/ui5.yaml b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/library.d-depender/node_modules/library.d/ui5.yaml +++ b/packages/project/test/fixtures/library.d-depender/node_modules/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/library.d-depender/ui5.yaml b/packages/project/test/fixtures/library.d-depender/ui5.yaml index d3a67f6da5a..51744218833 100644 --- a/packages/project/test/fixtures/library.d-depender/ui5.yaml +++ b/packages/project/test/fixtures/library.d-depender/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d-depender diff --git a/packages/project/test/fixtures/library.d/ui5.yaml b/packages/project/test/fixtures/library.d/ui5.yaml index c39a8461dd2..a47c1f64c3d 100644 --- a/packages/project/test/fixtures/library.d/ui5.yaml +++ b/packages/project/test/fixtures/library.d/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.d diff --git a/packages/project/test/fixtures/library.e/src/library/e/.library b/packages/project/test/fixtures/library.e/src/library/e/.library index 20c99070048..26ff954f7b1 100644 --- a/packages/project/test/fixtures/library.e/src/library/e/.library +++ b/packages/project/test/fixtures/library.e/src/library/e/.library @@ -1,7 +1,7 @@ - library.d + library.e SAP SE ${copyright} ${version} diff --git a/packages/project/test/fixtures/library.e/ui5.yaml b/packages/project/test/fixtures/library.e/ui5.yaml index 5dee17f60a5..88ba07e82dd 100644 --- a/packages/project/test/fixtures/library.e/ui5.yaml +++ b/packages/project/test/fixtures/library.e/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.e diff --git a/packages/project/test/fixtures/library.f/node_modules/library.g/ui5.yaml b/packages/project/test/fixtures/library.f/node_modules/library.g/ui5.yaml index 9c528171825..a20d2d4991c 100644 --- a/packages/project/test/fixtures/library.f/node_modules/library.g/ui5.yaml +++ b/packages/project/test/fixtures/library.f/node_modules/library.g/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.g diff --git a/packages/project/test/fixtures/library.f/src/library/f/.library b/packages/project/test/fixtures/library.f/src/library/f/.library new file mode 100644 index 00000000000..c45172d48b8 --- /dev/null +++ b/packages/project/test/fixtures/library.f/src/library/f/.library @@ -0,0 +1,11 @@ + + + + library.f + SAP SE + ${copyright} + ${version} + + Library F + + diff --git a/packages/project/test/fixtures/library.f/src/library/f/some.js b/packages/project/test/fixtures/library.f/src/library/f/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/library.f/src/library/f/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/library.f/ui5.yaml b/packages/project/test/fixtures/library.f/ui5.yaml index 38440bacbc6..52c17922bfd 100644 --- a/packages/project/test/fixtures/library.f/ui5.yaml +++ b/packages/project/test/fixtures/library.f/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.f diff --git a/packages/project/test/fixtures/library.g/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/library.g/node_modules/library.f/ui5.yaml index 38440bacbc6..52c17922bfd 100644 --- a/packages/project/test/fixtures/library.g/node_modules/library.f/ui5.yaml +++ b/packages/project/test/fixtures/library.g/node_modules/library.f/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.f diff --git a/packages/project/test/fixtures/library.g/src/library/g/.library b/packages/project/test/fixtures/library.g/src/library/g/.library new file mode 100644 index 00000000000..4d884278e90 --- /dev/null +++ b/packages/project/test/fixtures/library.g/src/library/g/.library @@ -0,0 +1,11 @@ + + + + library.g + SAP SE + ${copyright} + ${version} + + Library G + + diff --git a/packages/project/test/fixtures/library.g/src/library/g/some.js b/packages/project/test/fixtures/library.g/src/library/g/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/library.g/src/library/g/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/library.g/ui5.yaml b/packages/project/test/fixtures/library.g/ui5.yaml index 9c528171825..a20d2d4991c 100644 --- a/packages/project/test/fixtures/library.g/ui5.yaml +++ b/packages/project/test/fixtures/library.g/ui5.yaml @@ -1,5 +1,5 @@ --- -specVersion: "0.1" +specVersion: "2.3" type: library metadata: name: library.g diff --git a/packages/project/test/fixtures/library.h/src/.library b/packages/project/test/fixtures/library.h/src/.library new file mode 100644 index 00000000000..8de6bd2ebba --- /dev/null +++ b/packages/project/test/fixtures/library.h/src/.library @@ -0,0 +1,11 @@ + + + + library.h + SAP SE + ${copyright} + ${version} + + Library G + + diff --git a/packages/project/test/fixtures/library.h/src/manifest.json b/packages/project/test/fixtures/library.h/src/manifest.json new file mode 100644 index 00000000000..2279cb6ce3d --- /dev/null +++ b/packages/project/test/fixtures/library.h/src/manifest.json @@ -0,0 +1,26 @@ +{ + "_version": "1.21.0", + "sap.app": { + "id": "library.h", + "type": "library", + "embeds": [], + "applicationVersion": { + "version": "1.0.0" + }, + "title": "Library H", + "description": "Library H" + }, + "sap.ui": { + "technology": "UI5", + "supportedThemes": [] + }, + "sap.ui5": { + "dependencies": { + "minUI5Version": "1.0", + "libs": {} + }, + "library": { + "i18n": false + } + } +} diff --git a/packages/project/test/fixtures/library.h/src/some.js b/packages/project/test/fixtures/library.h/src/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/library.h/src/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/library.h/ui5.yaml b/packages/project/test/fixtures/library.h/ui5.yaml new file mode 100644 index 00000000000..cbea83db544 --- /dev/null +++ b/packages/project/test/fixtures/library.h/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.6" +type: library +metadata: + name: library.h diff --git a/packages/project/test/fixtures/module.a/dev/devTools.js b/packages/project/test/fixtures/module.a/dev/devTools.js new file mode 100644 index 00000000000..e035bfaeab6 --- /dev/null +++ b/packages/project/test/fixtures/module.a/dev/devTools.js @@ -0,0 +1 @@ +console.log("dev dev dev"); diff --git a/packages/project/test/fixtures/module.a/dist/index.js b/packages/project/test/fixtures/module.a/dist/index.js new file mode 100644 index 00000000000..019c0f4bc8e --- /dev/null +++ b/packages/project/test/fixtures/module.a/dist/index.js @@ -0,0 +1 @@ +console.log("Hello World!"); diff --git a/packages/project/test/fixtures/module.a/ui5.yaml b/packages/project/test/fixtures/module.a/ui5.yaml new file mode 100644 index 00000000000..af957cf1ee8 --- /dev/null +++ b/packages/project/test/fixtures/module.a/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.6" +type: module +metadata: + name: module.a diff --git a/packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/.theme b/packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/.theme new file mode 100644 index 00000000000..4c62f26114c --- /dev/null +++ b/packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/.theme @@ -0,0 +1,9 @@ + + + + my_theme + me + ${copyright} + ${version} + + \ No newline at end of file diff --git a/packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/.theming b/packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/.theming new file mode 100644 index 00000000000..83b6c785a87 --- /dev/null +++ b/packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/.theming @@ -0,0 +1,27 @@ +{ + "sEntity": "Theme", + "sId": "sap_belize", + "oExtends": "base", + "sVendor": "SAP", + "aBundled": ["sap_belize_plus"], + "mCssScopes": { + "library": { + "sBaseFile": "library", + "sEmbeddingMethod": "APPEND", + "aScopes": [ + { + "sLabel": "Contrast", + "sSelector": "sapContrast", + "sEmbeddedFile": "sap_belize_plus.library", + "sEmbeddedCompareFile": "library", + "sThemeIdSuffix": "Contrast", + "sThemability": "PUBLIC", + "aThemabilityFilter": [ + "Color" + ], + "rExcludeSelector": "\\.sapContrastPlus\\W" + } + ] + } + } +} diff --git a/packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/library.source.less b/packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/library.source.less new file mode 100644 index 00000000000..d3286002bfe --- /dev/null +++ b/packages/project/test/fixtures/theme.library.e/src/theme/library/e/themes/my_theme/library.source.less @@ -0,0 +1,9 @@ +/*! + * ${copyright} + */ + +@mycolor: blue; + +.sapUiBody { + background-color: @mycolor; +} diff --git a/packages/project/test/fixtures/theme.library.e/test/theme/library/e/Test.html b/packages/project/test/fixtures/theme.library.e/test/theme/library/e/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/theme.library.e/ui5.yaml b/packages/project/test/fixtures/theme.library.e/ui5.yaml new file mode 100644 index 00000000000..cf89c2432e8 --- /dev/null +++ b/packages/project/test/fixtures/theme.library.e/ui5.yaml @@ -0,0 +1,9 @@ +--- +specVersion: "1.1" +type: theme-library +metadata: + name: theme.library.e + copyright: |- + UI development toolkit for HTML5 (OpenUI5) + * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. + * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. diff --git a/packages/project/test/lib/buildHelpers/BuildContext.js b/packages/project/test/lib/buildHelpers/BuildContext.js new file mode 100644 index 00000000000..e3b04525dab --- /dev/null +++ b/packages/project/test/lib/buildHelpers/BuildContext.js @@ -0,0 +1,104 @@ +const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); + +test.afterEach.always((t) => { + sinon.restore(); + mock.stopAll(); +}); + +const BuildContext = require("../../../lib/buildHelpers/BuildContext"); + +test("Missing parameters", (t) => { + const error = t.throws(() => { + new BuildContext({}); + }); + + t.is(error.message, `Missing parameter 'graph'`, "Threw with expected error message"); +}); + +test("getRootProject", (t) => { + const buildContext = new BuildContext({ + graph: { + getRoot: () => "pony" + } + }); + + t.is(buildContext.getRootProject(), "pony", "Returned correct value"); +}); +test("getProject", (t) => { + const getProjectStub = sinon.stub().returns("pony"); + const buildContext = new BuildContext({ + graph: { + getProject: getProjectStub + } + }); + + t.is(buildContext.getProject("pony project"), "pony", "Returned correct value"); + t.is(getProjectStub.getCall(0).args[0], "pony project", "getProject got called with correct argument"); +}); + +test("getBuildOption", (t) => { + const buildContext = new BuildContext({ + graph: "graph", + options: { + a: true, + b: "Pony", + c: 235, + d: { + d1: "Bee" + } + } + }); + + t.is(buildContext.getOption("a"), true, "Returned 'boolean' value is correct"); + t.is(buildContext.getOption("b"), "Pony", "Returned 'String' value is correct"); + t.is(buildContext.getOption("c"), 235, "Returned 'Number' value is correct"); + t.deepEqual(buildContext.getOption("d"), {d1: "Bee"}, "Returned 'object' value is correct"); +}); + +test.serial("createProjectContext", (t) => { + class DummyProjectContext { + constructor({buildContext, project, log}) { + t.is(buildContext, testBuildContext, "Correct buildContext parameter"); + t.is(project, "project", "Correct project parameter"); + t.is(log, "log", "Correct log parameter"); + } + } + mock("../../../lib/buildHelpers/ProjectBuildContext", DummyProjectContext); + + const BuildContext = mock.reRequire("../../../lib/buildHelpers/BuildContext"); + const testBuildContext = new BuildContext({ + graph: "graph" + }); + + const projectContext = testBuildContext.createProjectContext({ + project: "project", + log: "log" + }); + + t.true(projectContext instanceof DummyProjectContext, + "Project context is an instance of DummyProjectContext"); + t.is(testBuildContext._projectBuildContexts[0], projectContext, + "BuildContext stored correct ProjectBuildContext"); +}); + +test("executeCleanupTasks", async (t) => { + const buildContext = new BuildContext({ + graph: "graph" + }); + + const executeCleanupTasks = sinon.stub().resolves(); + + buildContext._projectBuildContexts.push({ + executeCleanupTasks + }); + buildContext._projectBuildContexts.push({ + executeCleanupTasks + }); + + await buildContext.executeCleanupTasks(); + + t.is(executeCleanupTasks.callCount, 2, + "Project context executeCleanupTasks got called twice"); +}); diff --git a/packages/project/test/lib/buildHelpers/ProjectBuildContext.js b/packages/project/test/lib/buildHelpers/ProjectBuildContext.js new file mode 100644 index 00000000000..c1e726699e8 --- /dev/null +++ b/packages/project/test/lib/buildHelpers/ProjectBuildContext.js @@ -0,0 +1,206 @@ +const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); +const ResourceTagCollection = require("@ui5/fs").ResourceTagCollection; + +test.beforeEach((t) => { + t.context.resourceTagCollection = new ResourceTagCollection({ + allowedTags: ["me:MyTag"] + }); +}); +test.afterEach.always((t) => { + sinon.restore(); + mock.stopAll(); +}); + +const ProjectBuildContext = require("../../../lib/buildHelpers/ProjectBuildContext"); + +test("Missing parameters", (t) => { + t.throws(() => { + new ProjectBuildContext({ + project: "project", + log: "log", + }); + }, { + message: `Missing parameter 'buildContext'` + }, "Correct error message"); + + t.throws(() => { + new ProjectBuildContext({ + buildContext: "buildContext", + log: "log", + }); + }, { + message: `Missing parameter 'project'` + }, "Correct error message"); + + t.throws(() => { + new ProjectBuildContext({ + buildContext: "buildContext", + project: "project", + }); + }, { + message: `Missing parameter 'log'` + }, "Correct error message"); +}); + +test("isRootProject: true", (t) => { + const projectBuildContext = new ProjectBuildContext({ + buildContext: { + getRootProject: () => "root project" + }, + project: "root project", + log: "log" + }); + + t.true(projectBuildContext.isRootProject(), "Correctly identified root project"); +}); + +test("isRootProject: false", (t) => { + const projectBuildContext = new ProjectBuildContext({ + buildContext: { + getRootProject: () => "root project" + }, + project: "not the root project", + log: "log" + }); + + t.false(projectBuildContext.isRootProject(), "Correctly identified non-root project"); +}); + +test("getBuildOption", (t) => { + const getOptionStub = sinon.stub().returns("pony"); + const projectBuildContext = new ProjectBuildContext({ + buildContext: { + getOption: getOptionStub + }, + project: "project", + log: "log" + }); + + t.is(projectBuildContext.getOption("option"), "pony", "Returned value is correct"); + t.is(getOptionStub.getCall(0).args[0], "option", "getOption called with correct argument"); +}); + +test("registerCleanupTask", (t) => { + const projectBuildContext = new ProjectBuildContext({ + buildContext: {}, + project: "project", + log: "log" + }); + projectBuildContext.registerCleanupTask("my task 1"); + projectBuildContext.registerCleanupTask("my task 2"); + + t.is(projectBuildContext._queues.cleanup[0], "my task 1", "Cleanup task registered"); + t.is(projectBuildContext._queues.cleanup[1], "my task 2", "Cleanup task registered"); +}); + +test("executeCleanupTasks", (t) => { + const projectBuildContext = new ProjectBuildContext({ + buildContext: {}, + project: "project", + log: "log" + }); + const task1 = sinon.stub().resolves(); + const task2 = sinon.stub().resolves(); + projectBuildContext.registerCleanupTask(task1); + projectBuildContext.registerCleanupTask(task2); + + projectBuildContext.executeCleanupTasks(); + + t.is(task1.callCount, 1, "Cleanup task 1 got called"); + t.is(task2.callCount, 1, "my task 2", "Cleanup task 2 got called"); +}); + +test.serial("getResourceTagCollection", (t) => { + const projectAcceptsTagStub = sinon.stub().returns(false); + projectAcceptsTagStub.withArgs("project-tag").returns(true); + const projectContextAcceptsTagStub = sinon.stub().returns(false); + projectContextAcceptsTagStub.withArgs("project-context-tag").returns(true); + + class DummyResourceTagCollection { + constructor({allowedTags, allowedNamespaces}) { + t.deepEqual(allowedTags, [ + "ui5:OmitFromBuildResult", + "ui5:IsBundle" + ], + "Correct allowedTags parameter supplied"); + + t.deepEqual(allowedNamespaces, [ + "build" + ], + "Correct allowedNamespaces parameter supplied"); + } + acceptsTag(tag) { + // Redirect to stub + return projectContextAcceptsTagStub(tag); + } + } + mock("@ui5/fs", { + ResourceTagCollection: DummyResourceTagCollection + }); + + const ProjectBuildContext = mock.reRequire("../../../lib/buildHelpers/ProjectBuildContext"); + const projectBuildContext = new ProjectBuildContext({ + buildContext: {}, + project: "project", + log: "log" + }); + + const fakeProjectCollection = { + acceptsTag: projectAcceptsTagStub + }; + const fakeResource = { + getProject: () => { + return { + getResourceTagCollection: () => fakeProjectCollection + }; + }, + getPath: () => "/resource/path", + hasProject: () => true + }; + const collection1 = projectBuildContext.getResourceTagCollection(fakeResource, "project-tag"); + t.is(collection1, fakeProjectCollection, "Returned tag collection of resource project"); + + const collection2 = projectBuildContext.getResourceTagCollection(fakeResource, "project-context-tag"); + t.true(collection2 instanceof DummyResourceTagCollection, + "Returned tag collection of project build context"); + + t.throws(() => { + projectBuildContext.getResourceTagCollection(fakeResource, "not-accepted-tag"); + }, { + message: `Could not find collection for resource /resource/path and tag not-accepted-tag` + }); +}); + +test("getResourceTagCollection: Assigns project to resource if necessary", (t) => { + const fakeProject = { + getName: () => "project" + }; + const projectBuildContext = new ProjectBuildContext({ + buildContext: {}, + project: fakeProject, + log: { + verbose: () => {} + } + }); + + const setProjectStub = sinon.stub(); + const fakeResource = { + getProject: () => { + return { + getResourceTagCollection: () => { + return { + acceptsTag: () => false + }; + } + }; + }, + getPath: () => "/resource/path", + hasProject: () => false, + setProject: setProjectStub + }; + projectBuildContext.getResourceTagCollection(fakeResource, "build:MyTag"); + t.is(setProjectStub.callCount, 1, "setProject got called once"); + t.is(setProjectStub.getCall(0).args[0], fakeProject, "setProject got called with correct argument"); +}); diff --git a/packages/project/test/lib/buildHelpers/composeProjectList.js b/packages/project/test/lib/buildHelpers/composeProjectList.js new file mode 100644 index 00000000000..e96040ec04d --- /dev/null +++ b/packages/project/test/lib/buildHelpers/composeProjectList.js @@ -0,0 +1,308 @@ +const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); +const path = require("path"); +const logger = require("@ui5/logger"); +const generateProjectGraph = require("../../../lib/generateProjectGraph"); + +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const libraryEPath = path.join(__dirname, "..", "..", "fixtures", "library.e"); +const libraryFPath = path.join(__dirname, "..", "..", "fixtures", "library.f"); +const libraryGPath = path.join(__dirname, "..", "..", "fixtures", "library.g"); +const libraryDDependerPath = path.join(__dirname, "..", "..", "fixtures", "library.d-depender"); + +test.beforeEach((t) => { + t.context.log = { + warn: sinon.stub() + }; + sinon.stub(logger, "getLogger").callThrough() + .withArgs("buildHelpers:composeProjectList").returns(t.context.log); + t.context.composeProjectList = mock.reRequire("../../../lib/buildHelpers/composeProjectList"); +}); + +test.afterEach.always((t) => { + sinon.restore(); + mock.stopAll(); +}); + +test.serial("_getFlattenedDependencyTree", async (t) => { + const {_getFlattenedDependencyTree} = t.context.composeProjectList; + const tree = { // Does not reflect actual dependencies in fixtures + id: "application.a.id", + version: "1.0.0", + path: applicationAPath, + dependencies: [{ + id: "library.e.id", + version: "1.0.0", + path: libraryEPath, + dependencies: [{ + id: "library.d.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "library.d"), + dependencies: [{ + id: "library.a.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.a"), + dependencies: [{ + id: "library.b.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.b"), + dependencies: [] + }, { + id: "library.c.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.c"), + dependencies: [] + }] + }] + }] + }, { + id: "library.f.id", + version: "1.0.0", + path: libraryFPath, + dependencies: [{ + id: "library.a.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.a"), + dependencies: [{ + id: "library.b.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.b"), + dependencies: [] + }, { + id: "library.c.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.c"), + dependencies: [] + }] + }] + }] + }; + const graph = await generateProjectGraph.usingObject({dependencyTree: tree}); + + t.deepEqual(await _getFlattenedDependencyTree(graph), { + "library.e": ["library.d", "library.a", "library.b", "library.c"], + "library.f": ["library.a", "library.b", "library.c"], + "library.d": ["library.a", "library.b", "library.c"], + "library.a": ["library.b", "library.c"], + "library.b": [], + "library.c": [] + }); +}); + +async function assertCreateDependencyLists(t, { + includeAllDependencies, + includeDependency, includeDependencyRegExp, includeDependencyTree, + excludeDependency, excludeDependencyRegExp, excludeDependencyTree, + defaultIncludeDependency, defaultIncludeDependencyRegExp, defaultIncludeDependencyTree, + expectedIncludedDependencies, expectedExcludedDependencies +}) { + const tree = { // Does not reflect actual dependencies in fixtures + id: "application.a.id", + version: "1.0.0", + path: applicationAPath, + dependencies: [{ + id: "library.e.id", + version: "1.0.0", + path: libraryEPath, + dependencies: [{ + id: "library.d.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "library.d"), + dependencies: [] + }, { + id: "library.a.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.a"), + dependencies: [{ + id: "library.b.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.b"), + dependencies: [] + }] + }] + }, { + id: "library.f.id", + version: "1.0.0", + path: libraryFPath, + dependencies: [{ + id: "library.d.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "library.d"), + dependencies: [] + }, { + id: "library.a.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.a"), + dependencies: [{ + id: "library.b.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.b"), + dependencies: [] + }] + }, { + id: "library.c.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.c"), + dependencies: [] + }] + }, { + id: "library.g.id", + version: "1.0.0", + path: libraryGPath, + dependencies: [{ + id: "library.d-depender.id", + version: "1.0.0", + path: libraryDDependerPath, + dependencies: [] + }] + }] + }; + + const graph = await generateProjectGraph.usingObject({dependencyTree: tree}); + + const {includedDependencies, excludedDependencies} = await t.context.composeProjectList(graph, { + includeAllDependencies, + includeDependency, + includeDependencyRegExp, + includeDependencyTree, + excludeDependency, + excludeDependencyRegExp, + excludeDependencyTree, + defaultIncludeDependency, + defaultIncludeDependencyRegExp, + defaultIncludeDependencyTree + }); + t.deepEqual(includedDependencies, expectedIncludedDependencies, "Correct set of included dependencies"); + t.deepEqual(excludedDependencies, expectedExcludedDependencies, "Correct set of excluded dependencies"); +} + +test.serial("createDependencyLists: only includes", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: false, + includeDependency: ["library.f", "library.c"], + includeDependencyRegExp: ["^library\\.d$"], + includeDependencyTree: ["library.g"], + expectedIncludedDependencies: ["library.f", "library.c", "library.d", "library.g", "library.d-depender"], + expectedExcludedDependencies: [] + }); +}); + +test.serial("createDependencyLists: only excludes", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: false, + excludeDependency: ["library.f", "library.c"], + excludeDependencyRegExp: ["^library\\.d$"], + excludeDependencyTree: ["library.g"], + expectedIncludedDependencies: [], + expectedExcludedDependencies: ["library.f", "library.c", "library.d", "library.g", "library.d-depender"] + }); +}); + +test.serial("createDependencyLists: include all + excludes", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: true, + includeDependency: [], + excludeDependency: ["library.f", "library.c"], + excludeDependencyRegExp: ["^library\\.d$"], + excludeDependencyTree: ["library.g"], + expectedIncludedDependencies: ["library.b", "library.a", "library.e"], + expectedExcludedDependencies: ["library.f", "library.c", "library.d", "library.g", "library.d-depender"] + }); +}); + +test.serial("createDependencyLists: include all", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: true, + includeDependency: [], + excludeDependency: [], + excludeDependencyRegExp: [], + excludeDependencyTree: [], + expectedIncludedDependencies: [ + "library.d", "library.b", "library.c", + "library.d-depender", "library.a", "library.g", + "library.e", "library.f" + ], + expectedExcludedDependencies: [] + }); +}); + +test.serial("createDependencyLists: includeDependencyTree has lower priority than excludes", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: false, + includeDependencyTree: ["library.f"], + excludeDependency: ["library.f"], + excludeDependencyRegExp: ["^library\\.[acd]$"], + expectedIncludedDependencies: ["library.b"], + expectedExcludedDependencies: ["library.f", "library.d", "library.c", "library.a"] + }); +}); + +test.serial("createDependencyLists: excludeDependencyTree has lower priority than includes", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: false, + includeDependency: ["library.f"], + includeDependencyRegExp: ["^library\\.[acd]$"], + excludeDependencyTree: ["library.f"], + expectedIncludedDependencies: ["library.f", "library.d", "library.c", "library.a"], + expectedExcludedDependencies: ["library.b"] + }); +}); + +test.serial("createDependencyLists: include all, exclude tree and include single", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: true, + includeDependency: ["library.f"], + includeDependencyRegExp: ["^library\\.[acd]$"], + excludeDependencyTree: ["library.f"], + expectedIncludedDependencies: [ + "library.f", "library.d", "library.c", "library.a", "library.d-depender", + "library.g", "library.e" + ], + expectedExcludedDependencies: ["library.b"] + }); +}); + +test.serial("createDependencyLists: includeDependencyTree has higher priority than excludeDependencyTree", + async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: false, + includeDependencyTree: ["library.f"], + excludeDependencyTree: ["library.f"], + expectedIncludedDependencies: ["library.f", "library.d", "library.a", "library.b", "library.c"], + expectedExcludedDependencies: [] + }); + }); + +test.serial("createDependencyLists: defaultIncludeDependency/RegExp has lower priority than excludes", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: false, + defaultIncludeDependency: ["library.f", "library.c", "library.b"], + defaultIncludeDependencyRegExp: ["^library\\.d$"], + excludeDependency: ["library.f"], + excludeDependencyRegExp: ["^library\\.[acd](-depender)?$"], + expectedIncludedDependencies: ["library.b"], + expectedExcludedDependencies: ["library.f", "library.d", "library.c", "library.d-depender", "library.a"] + }); +}); +test.serial("createDependencyLists: include all and defaultIncludeDependency/RegExp", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: true, + defaultIncludeDependency: ["library.f", "library.c", "library.b"], + defaultIncludeDependencyRegExp: ["^library\\.d$"], + excludeDependency: ["library.f"], + excludeDependencyRegExp: ["^library\\.[acd](-depender)?$"], + expectedIncludedDependencies: ["library.b", "library.g", "library.e"], + expectedExcludedDependencies: ["library.f", "library.d", "library.c", "library.d-depender", "library.a"] + }); +}); + +test.serial("createDependencyLists: defaultIncludeDependencyTree has lower priority than excludes", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: false, + defaultIncludeDependencyTree: ["library.f"], + excludeDependencyTree: ["library.a"], + expectedIncludedDependencies: ["library.f", "library.d", "library.c"], + expectedExcludedDependencies: ["library.a", "library.b"] + }); +}); diff --git a/packages/project/test/lib/buildHelpers/composeTaskList.js b/packages/project/test/lib/buildHelpers/composeTaskList.js new file mode 100644 index 00000000000..da18856ad89 --- /dev/null +++ b/packages/project/test/lib/buildHelpers/composeTaskList.js @@ -0,0 +1,258 @@ +const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); +const logger = require("@ui5/logger"); + +test.beforeEach((t) => { + t.context.log = { + warn: sinon.stub() + }; + sinon.stub(logger, "getLogger").withArgs("buildHelpers:composeTaskList").returns(t.context.log); + + t.context.composeTaskList = mock.reRequire("../../../lib/buildHelpers/composeTaskList"); +}); + +test.afterEach.always(() => { + sinon.restore(); + mock.stopAll(); +}); + +const allTasks = [ + "replaceCopyright", + "replaceVersion", + "replaceBuildtime", + "escapeNonAsciiCharacters", + "executeJsdocSdkTransformation", + "generateApiIndex", + "generateJsdoc", + "minify", + "buildThemes", + "transformBootstrapHtml", + "generateLibraryManifest", + "generateVersionInfo", + "generateManifestBundle", + "generateFlexChangesBundle", + "generateComponentPreload", + "generateResourcesJson", + "generateThemeDesignerResources", + "generateStandaloneAppBundle", + "generateBundle", + "generateLibraryPreload", + "generateCachebusterInfo", +]; + + +[ + [ + "composeTaskList: archive=false / selfContained=false / jsdoc=false", { + archive: false, + selfContained: false, + jsdoc: false, + includedTasks: [], + excludedTasks: [] + }, [ + "replaceCopyright", + "replaceVersion", + "replaceBuildtime", + "escapeNonAsciiCharacters", + "minify", + "buildThemes", + "generateLibraryManifest", + "generateFlexChangesBundle", + "generateComponentPreload", + "generateBundle", + "generateLibraryPreload", + ] + ], + [ + "composeTaskList: archive=true / selfContained=false / jsdoc=false", { + archive: true, + selfContained: false, + jsdoc: false, + includedTasks: [], + excludedTasks: [] + }, [ + "replaceCopyright", + "replaceVersion", + "replaceBuildtime", + "escapeNonAsciiCharacters", + "minify", + "buildThemes", + "generateLibraryManifest", + "generateFlexChangesBundle", + "generateComponentPreload", + "generateBundle", + "generateLibraryPreload", + ] + ], + [ + "composeTaskList: archive=false / selfContained=true / jsdoc=false", { + archive: false, + selfContained: true, + jsdoc: false, + includedTasks: [], + excludedTasks: [] + }, [ + "replaceCopyright", + "replaceVersion", + "replaceBuildtime", + "escapeNonAsciiCharacters", + "minify", + "buildThemes", + "transformBootstrapHtml", + "generateLibraryManifest", + "generateFlexChangesBundle", + "generateStandaloneAppBundle", + "generateBundle" + ] + ], + [ + "composeTaskList: archive=false / selfContained=false / jsdoc=true", { + archive: false, + selfContained: false, + jsdoc: true, + includedTasks: [], + excludedTasks: [] + }, [ + "escapeNonAsciiCharacters", + "executeJsdocSdkTransformation", + "generateApiIndex", + "generateJsdoc", + "buildThemes", + "generateBundle", + ] + ], + [ + "composeTaskList: includedTasks / excludedTasks", { + archive: false, + selfContained: false, + jsdoc: false, + includedTasks: ["generateResourcesJson", "replaceVersion"], + excludedTasks: ["replaceCopyright", "generateApiIndex"] + }, [ + "replaceVersion", + "replaceBuildtime", + "escapeNonAsciiCharacters", + "minify", + "buildThemes", + "generateLibraryManifest", + "generateFlexChangesBundle", + "generateComponentPreload", + "generateResourcesJson", + "generateBundle", + "generateLibraryPreload", + ] + ], + [ + "composeTaskList: includedTasks=*", { + archive: false, + selfContained: false, + jsdoc: false, + includedTasks: ["*"], + excludedTasks: [] + }, [ + "replaceCopyright", + "replaceVersion", + "replaceBuildtime", + "escapeNonAsciiCharacters", + "executeJsdocSdkTransformation", + "generateApiIndex", + "generateJsdoc", + "minify", + "buildThemes", + "transformBootstrapHtml", + "generateLibraryManifest", + "generateVersionInfo", + "generateManifestBundle", + "generateFlexChangesBundle", + "generateComponentPreload", + "generateResourcesJson", + "generateThemeDesignerResources", + "generateStandaloneAppBundle", + "generateBundle", + "generateLibraryPreload", + "generateCachebusterInfo", + ] + ], + [ + "composeTaskList: excludedTasks=*", { + archive: false, + selfContained: false, + jsdoc: false, + includedTasks: [], + excludedTasks: ["*"] + }, [] + ], + [ + "composeTaskList: includedTasks with unknown tasks", { + archive: false, + selfContained: false, + jsdoc: false, + includedTasks: ["foo", "bar"], + excludedTasks: [] + }, [ + "replaceCopyright", + "replaceVersion", + "replaceBuildtime", + "escapeNonAsciiCharacters", + "minify", + "buildThemes", + "generateLibraryManifest", + "generateFlexChangesBundle", + "generateComponentPreload", + "generateBundle", + "generateLibraryPreload", + ], (t) => { + const {log} = t.context; + t.is(log.warn.callCount, 2); + t.deepEqual(log.warn.getCall(0).args, [ + "Unable to include task 'foo': Task is unknown" + ]); + t.deepEqual(log.warn.getCall(1).args, [ + "Unable to include task 'bar': Task is unknown" + ]); + } + ], + [ + "composeTaskList: excludedTasks with unknown tasks", { + archive: false, + selfContained: false, + jsdoc: false, + includedTasks: [], + excludedTasks: ["foo", "bar"], + }, [ + "replaceCopyright", + "replaceVersion", + "replaceBuildtime", + "escapeNonAsciiCharacters", + "minify", + "buildThemes", + "generateLibraryManifest", + "generateFlexChangesBundle", + "generateComponentPreload", + "generateBundle", + "generateLibraryPreload", + ], (t) => { + const {log} = t.context; + t.is(log.warn.callCount, 2); + t.deepEqual(log.warn.getCall(0).args, [ + "Unable to exclude task 'foo': Task is unknown" + ]); + t.deepEqual(log.warn.getCall(1).args, [ + "Unable to exclude task 'bar': Task is unknown" + ]); + } + ], +].forEach(([testTitle, args, expectedTaskList, assertCb]) => { + test.serial(testTitle, (t) => { + const {composeTaskList, log} = t.context; + const taskList = composeTaskList(allTasks, args); + t.deepEqual(taskList, expectedTaskList); + if (assertCb) { + assertCb(t); + } else { + // When no cb is defined, no logs are expected + t.is(log.warn.callCount, 0); + } + }); +}); diff --git a/packages/project/test/lib/buildHelpers/createBuildManifest.integration.js b/packages/project/test/lib/buildHelpers/createBuildManifest.integration.js new file mode 100644 index 00000000000..d5befab8252 --- /dev/null +++ b/packages/project/test/lib/buildHelpers/createBuildManifest.integration.js @@ -0,0 +1,95 @@ +const test = require("ava"); +const path = require("path"); +const createBuildManifest = require("../../../lib/buildHelpers/createBuildManifest"); +const Module = require("../../../lib/graph/Module"); +const Specification = require("../../../lib/specifications/Specification"); + +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const buildDescrApplicationAPath = path.join(__dirname, "..", "..", "fixtures", "build-manifest", "application.a"); +const applicationAConfig = { + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.a"} + } +}; +const libraryEPath = path.join(__dirname, "..", "..", "fixtures", "library.e"); +const buildDescrLibraryEPath = path.join(__dirname, "..", "..", "fixtures", "build-manifest", "library.e"); +const libraryEConfig = { + id: "library.e.id", + version: "1.0.0", + modulePath: libraryEPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "library", + metadata: {name: "library.e"} + } +}; + +const buildConfig = { + selfContained: false, + jsdoc: false, + includedTasks: [], + excludedTasks: [] +}; + +// Note: The actual build-manifest.json files in the fixtures are never used in these tests + +test("Create project from application project providing a build manifest", async (t) => { + const inputProject = await Specification.create(applicationAConfig); + inputProject.getResourceTagCollection().setTag("/resources/id1/foo.js", "ui5:HasDebugVariant"); + + const metadata = await createBuildManifest(inputProject, buildConfig); + const m = new Module({ + id: "build-descr-application.a.id", + version: "2.0.0", + modulePath: buildDescrApplicationAPath, + configuration: metadata + }); + + const {project} = await m.getSpecifications(); + t.truthy(project, "Module was able to create project from build manifest metadata"); + t.is(project.getName(), project.getName(), "Archive project has correct name"); + t.is(project.getNamespace(), project.getNamespace(), "Archive project has correct namespace"); + t.is(project.getResourceTagCollection().getTag("/resources/id1/foo.js", "ui5:HasDebugVariant"), true, + "Archive project has correct tag"); + t.is(project.getVersion(), "2.0.0", "Archive project has version from archive module"); + + const resources = await project.getReader().byGlob("**/test.js"); + t.is(resources.length, 1, + "Found requested resource in archive project"); + t.is(resources[0].getPath(), "/resources/id1/test.js", + "Resource has expected path"); +}); + +test("Create project from library project providing a build manifest", async (t) => { + const inputProject = await Specification.create(libraryEConfig); + inputProject.getResourceTagCollection().setTag("/resources/library/e/file.js", "ui5:HasDebugVariant"); + + const metadata = await createBuildManifest(inputProject, buildConfig); + const m = new Module({ + id: "build-descr-library.e.id", + version: "2.0.0", + modulePath: buildDescrLibraryEPath, + configuration: metadata + }); + + const {project} = await m.getSpecifications(); + t.truthy(project, "Module was able to create project from build manifest metadata"); + t.is(project.getName(), project.getName(), "Archive project has correct name"); + t.is(project.getNamespace(), project.getNamespace(), "Archive project has correct namespace"); + t.is(project.getResourceTagCollection().getTag("/resources/library/e/file.js", "ui5:HasDebugVariant"), true, + "Archive project has correct tag"); + t.is(project.getVersion(), "2.0.0", "Archive project has version from archive module"); + + const resources = await project.getReader().byGlob("**/some.js"); + t.is(resources.length, 1, + "Found requested resource in archive project"); + t.is(resources[0].getPath(), "/resources/library/e/some.js", + "Resource has expected path"); +}); diff --git a/packages/project/test/lib/buildHelpers/createBuildManifest.js b/packages/project/test/lib/buildHelpers/createBuildManifest.js new file mode 100644 index 00000000000..c143a788ef7 --- /dev/null +++ b/packages/project/test/lib/buildHelpers/createBuildManifest.js @@ -0,0 +1,127 @@ +const test = require("ava"); +const path = require("path"); +const createBuildManifest = require("../../../lib/buildHelpers/createBuildManifest"); +const Specification = require("../../../lib/specifications/Specification"); + +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const applicationProjectInput = { + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.a"} + } +}; + +const libraryDPath = path.join(__dirname, "..", "..", "fixtures", "library.d"); +const libraryProjectInput = { + id: "library.d.id", + version: "1.0.0", + modulePath: libraryDPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + paths: { + src: "main/src", + test: "main/test" + } + } + }, + } +}; + +test("Create application from project with build manifest", async (t) => { + const project = await Specification.create(applicationProjectInput); + project.getResourceTagCollection().setTag("/resources/id1/foo.js", "ui5:HasDebugVariant"); + + const metadata = await createBuildManifest(project, "buildConfig"); + t.truthy(new Date(metadata.buildManifest.timestamp), "Timestamp is valid"); + metadata.buildManifest.timestamp = ""; + + t.deepEqual(metadata, { + project: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a", + }, + resources: { + configuration: { + paths: { + webapp: "resources/id1", + }, + }, + } + }, + buildManifest: { + manifestVersion: "0.1", + buildConfig: "buildConfig", + namespace: "id1", + timestamp: "", + version: "1.0.0", + versions: { + builderVersion: require("@ui5/builder/package.json").version, + fsVersion: require("@ui5/fs/package.json").version, + projectVersion: require("@ui5/project/package.json").version, + }, + tags: { + "/resources/id1/foo.js": { + "ui5:HasDebugVariant": true, + }, + } + } + }, "Returned correct metadata"); +}); + +test("Create library from project with build manifest", async (t) => { + const project = await Specification.create(libraryProjectInput); + project.getResourceTagCollection().setTag("/resources/library/d/foo.js", "ui5:HasDebugVariant"); + + const metadata = await createBuildManifest(project, "buildConfig"); + t.truthy(new Date(metadata.buildManifest.timestamp), "Timestamp is valid"); + metadata.buildManifest.timestamp = ""; + + t.deepEqual(metadata, { + project: { + specVersion: "2.3", + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + paths: { + src: "resources", + test: "test-resources", + }, + }, + } + }, + buildManifest: { + manifestVersion: "0.1", + buildConfig: "buildConfig", + namespace: "library/d", + timestamp: "", + version: "1.0.0", + versions: { + builderVersion: require("@ui5/builder/package.json").version, + fsVersion: require("@ui5/fs/package.json").version, + projectVersion: require("@ui5/project/package.json").version, + }, + tags: { + "/resources/library/d/foo.js": { + "ui5:HasDebugVariant": true, + }, + } + } + }, "Returned correct metadata"); +}); diff --git a/packages/project/test/lib/extensions.js b/packages/project/test/lib/extensions.js deleted file mode 100644 index 9b309d06d80..00000000000 --- a/packages/project/test/lib/extensions.js +++ /dev/null @@ -1,953 +0,0 @@ -const test = require("ava"); -const path = require("path"); -const sinon = require("sinon"); -const ValidationError = require("../../lib/validation/ValidationError"); -const projectPreprocessor = require("../..").projectPreprocessor; -const Preprocessor = require("../..").projectPreprocessor._ProjectPreprocessor; -const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); -const legacyLibraryAPath = path.join(__dirname, "..", "fixtures", "legacy.library.a"); -const legacyLibraryBPath = path.join(__dirname, "..", "fixtures", "legacy.library.b"); -const legacyCollectionAPath = path.join(__dirname, "..", "fixtures", "legacy.collection.a"); -const legacyCollectionLibraryX = path.join(__dirname, "..", "fixtures", "legacy.collection.a", - "src", "legacy.library.x"); -const legacyCollectionLibraryY = path.join(__dirname, "..", "fixtures", "legacy.collection.a", - "src", "legacy.library.y"); - -test.afterEach.always((t) => { - sinon.restore(); -}); - -test("Project with project-shim extension with dependency configuration", (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: { - configurations: { - "legacy.library.a": { - specVersion: "0.1", - type: "library", - metadata: { - name: "legacy.library.a", - } - } - } - } - }, { - id: "legacy.library.a", - version: "1.0.0", - path: legacyLibraryAPath, - dependencies: [] - }], - version: "1.0.0", - specVersion: "0.1", - type: "application", - metadata: { - name: "xy" - } - }; - - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - _level: 0, - _isRoot: true, - type: "application", - metadata: { - name: "xy", - namespace: "id1" - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - webapp: "webapp" - } - }, - pathMappings: { - "/": "webapp", - } - }, - dependencies: [{ - id: "legacy.library.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: legacyLibraryAPath, - _level: 1, - type: "library", - metadata: { - name: "legacy.library.a", - copyright: "${copyright}", - namespace: "legacy/library/a", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "src", - test: "test" - } - }, - pathMappings: { - "/resources/": "src", - "/test-resources/": "test" - } - }, - dependencies: [] - }], - id: "application.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: applicationAPath - }, "Parsed correctly"); - }); -}); - -test("Project with project-shim extension with invalid dependency configuration", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: { - configurations: { - "legacy.library.a": { - specVersion: "2.0", - type: "library" - } - } - } - }, { - id: "legacy.library.a", - version: "1.0.0", - path: legacyLibraryAPath, - dependencies: [] - }], - version: "1.0.0", - specVersion: "0.1", - type: "application", - metadata: { - name: "xy" - } - }; - - const validationError = await t.throwsAsync(projectPreprocessor.processTree(tree), { - instanceOf: ValidationError - }); - t.true(validationError.message.includes("Configuration must have required property 'metadata'"), - "ValidationError should contain error about missing metadata configuration"); -}); - -test("Project with project-shim extension with dependency declaration and configuration", (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: { - configurations: { - "legacy.library.a": { - specVersion: "0.1", - type: "library", - metadata: { - name: "legacy.library.a", - } - }, - "legacy.library.b": { - specVersion: "0.1", - type: "library", - metadata: { - name: "legacy.library.b", - } - } - }, - dependencies: { - "legacy.library.a": [ - "legacy.library.b" - ] - } - } - }, { - id: "legacy.library.a", - version: "1.0.0", - path: legacyLibraryAPath, - dependencies: [] - }, { - id: "legacy.library.b", - version: "1.0.0", - path: legacyLibraryBPath, - dependencies: [] - }], - version: "1.0.0", - specVersion: "0.1", - type: "application", - metadata: { - name: "xy" - } - }; - // application.a and legacy.library.a will both have a dependency to legacy.library.b - // (one because it's the actual dependency and one because it's a shimmed dependency) - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - _level: 0, - _isRoot: true, - type: "application", - metadata: { - name: "xy", - namespace: "id1" - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - webapp: "webapp" - } - }, - pathMappings: { - "/": "webapp", - } - }, - dependencies: [{ - id: "legacy.library.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: legacyLibraryAPath, - _level: 1, - type: "library", - metadata: { - name: "legacy.library.a", - copyright: "${copyright}", - namespace: "legacy/library/a", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "src", - test: "test" - } - }, - pathMappings: { - "/resources/": "src", - "/test-resources/": "test" - } - }, - dependencies: [{ - id: "legacy.library.b", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: legacyLibraryBPath, - _level: 1, - type: "library", - metadata: { - name: "legacy.library.b", - copyright: "${copyright}", - namespace: "legacy/library/b", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "src", - test: "test" - } - }, - pathMappings: { - "/resources/": "src", - "/test-resources/": "test" - } - }, - dependencies: [] - }] - }, { - id: "legacy.library.b", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: legacyLibraryBPath, - _level: 1, - type: "library", - metadata: { - name: "legacy.library.b", - copyright: "${copyright}", - namespace: "legacy/library/b", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "src", - test: "test" - } - }, - pathMappings: { - "/resources/": "src", - "/test-resources/": "test" - } - }, - dependencies: [] - }], - id: "application.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: applicationAPath - }, "Parsed correctly"); - }); -}); - -test("Project with project-shim extension with collection", (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: { - configurations: { - "legacy.library.x": { - specVersion: "0.1", - type: "library", - metadata: { - name: "legacy.library.x", - } - }, - "legacy.library.y": { - specVersion: "0.1", - type: "library", - metadata: { - name: "legacy.library.y", - } - } - }, - dependencies: { - "application.a": [ - "legacy.library.x", - "legacy.library.y" - ], - "legacy.library.x": [ - "legacy.library.y" - ] - }, - collections: { - "legacy.collection.a": { - modules: { - "legacy.library.x": "src/legacy.library.x", - "legacy.library.y": "src/legacy.library.y" - } - } - } - } - }, { - id: "legacy.collection.a", - version: "1.0.0", - path: legacyCollectionAPath, - dependencies: [] - }], - version: "1.0.0", - specVersion: "0.1", - type: "application", - metadata: { - name: "xy" - } - }; - - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - _level: 0, - _isRoot: true, - type: "application", - metadata: { - name: "xy", - namespace: "id1" - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - webapp: "webapp" - } - }, - pathMappings: { - "/": "webapp", - } - }, - dependencies: [{ - id: "legacy.library.x", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: legacyCollectionLibraryX, - _level: 1, - type: "library", - metadata: { - name: "legacy.library.x", - copyright: "${copyright}", - namespace: "legacy/library/x", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "src", - test: "test" - } - }, - pathMappings: { - "/resources/": "src", - "/test-resources/": "test" - } - }, - dependencies: [{ - id: "legacy.library.y", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: legacyCollectionLibraryY, - _level: 1, - type: "library", - metadata: { - name: "legacy.library.y", - copyright: "${copyright}", - namespace: "legacy/library/y", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "src", - test: "test" - } - }, - pathMappings: { - "/resources/": "src", - "/test-resources/": "test" - } - }, - dependencies: [] - }] - }, { - id: "legacy.library.y", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: legacyCollectionLibraryY, - _level: 1, - type: "library", - metadata: { - name: "legacy.library.y", - copyright: "${copyright}", - namespace: "legacy/library/y", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "src", - test: "test" - } - }, - pathMappings: { - "/resources/": "src", - "/test-resources/": "test" - } - }, - dependencies: [] - }], - id: "application.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: applicationAPath - }, "Parsed correctly"); - }); -}); - -test("Project with project-type extension dependency inline configuration", (t) => { - // "project-type" extension handling not yet implemented => test currently checks for error - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "project-type", - metadata: { - name: "z" - } - }], - version: "1.0.0", - specVersion: "0.1", - type: "z", - metadata: { - name: "xy" - } - }; - return t.throwsAsync(projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - _level: 0, - _isRoot: true, - type: "z", - metadata: { - name: "xy", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - root: "" - } - }, - pathMappings: { - "/": "", - } - }, - dependencies: [], - id: "application.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: applicationAPath - }, "Parsed correctly"); - }), {message: "Unknown extension type 'project-type' for extension.a"}, "Rejected with error"); -}); - -test("Project with unknown extension dependency inline configuration", (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "phony-pony", - metadata: { - name: "pinky.pie" - } - }], - version: "1.0.0", - specVersion: "0.1", - type: "application", - metadata: { - name: "xy" - } - }; - return t.throwsAsync(projectPreprocessor.processTree(tree), - {message: "Unknown extension type 'phony-pony' for extension.a"}, "Rejected with error"); -}); - -test("Project with task extension dependency", (t) => { - // "project-type" extension handling not yet implemented => test currently checks for error - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "ext.task.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "task", - metadata: { - name: "task.a" - }, - task: { - path: "task.a.js" - } - }], - version: "1.0.0", - specVersion: "0.1", - type: "application", - metadata: { - name: "xy" - } - }; - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree.dependencies.length, 0, "Application project has no dependencies"); - const taskRepository = require("@ui5/builder").tasks.taskRepository; - t.truthy(taskRepository.getTask("task.a"), "task.a has been added to the task repository"); - }); -}); - -test("Project with task extension dependency - does not throw for invalid task path", async (t) => { - // "project-type" extension handling not yet implemented => test currently checks for error - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "ext.task.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "task", - metadata: { - name: "task.b" - }, - task: { - path: "task.not.existing.js" - } - }], - version: "1.0.0", - specVersion: "0.1", - type: "application", - metadata: { - name: "xy" - } - }; - await t.notThrowsAsync(projectPreprocessor.processTree(tree)); -}); - - -test("Project with middleware extension dependency", (t) => { - // "project-type" extension handling not yet implemented => test currently checks for error - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "ext.middleware.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "server-middleware", - metadata: { - name: "middleware.a" - }, - middleware: { - path: "middleware.a.js" - } - }], - version: "1.0.0", - specVersion: "1.0", - type: "application", - metadata: { - name: "xy" - } - }; - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree.dependencies.length, 0, "Application project has no dependencies"); - const {middlewareRepository} = require("@ui5/server"); - t.truthy(middlewareRepository.getMiddleware("middleware.a"), - "middleware.a has been added to the middleware repository"); - }); -}); - -test("Project with middleware extension dependency - middleware is missing configuration", async (t) => { - // "project-type" extension handling not yet implemented => test currently checks for error - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [{ - id: "ext.middleware.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "server-middleware", - metadata: { - name: "middleware.a" - } - }], - version: "1.0.0", - specVersion: "1.0", - type: "application", - metadata: { - name: "xy" - } - }; - const error = await t.throwsAsync(projectPreprocessor.processTree(tree)); - t.deepEqual(error.message, `Middleware extension ext.middleware.a is missing 'middleware' configuration`, - "Rejected with error"); -}); - -test("specVersion: Missing version", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - await t.throwsAsync(preprocessor.applyExtension(extension), - {message: "No specification version defined for extension shims.a"}, - "Rejected with error"); -}); - -test("specVersion: Extension with invalid version", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.9", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - await t.throwsAsync(preprocessor.applyExtension(extension), {message: - "Unsupported specification version 0.9 defined for extension shims.a. " + - "Your UI5 CLI installation might be outdated. For details see " + - "https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions"}, - "Rejected with error"); -}); - -test("specVersion: Extension with valid version 0.1", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - const handleShimStub = sinon.stub(preprocessor, "handleShim"); - await preprocessor.applyExtension(extension); - t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "0.1", "Correct spec version"); -}); - -test("specVersion: Extension with valid version 1.0", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "1.0", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - const handleShimStub = sinon.stub(preprocessor, "handleShim"); - await preprocessor.applyExtension(extension); - t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "1.0", "Correct spec version"); -}); - -test("specVersion: Extension with valid version 1.1", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "1.1", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - const handleShimStub = sinon.stub(preprocessor, "handleShim"); - await preprocessor.applyExtension(extension); - t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "1.1", "Correct spec version"); -}); - -test("specVersion: Extension with valid version 2.0", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.0", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - const handleShimStub = sinon.stub(preprocessor, "handleShim"); - await preprocessor.applyExtension(extension); - t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.0", "Correct spec version"); -}); - -test("specVersion: Extension with valid version 2.1", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.1", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - const handleShimStub = sinon.stub(preprocessor, "handleShim"); - await preprocessor.applyExtension(extension); - t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.1", "Correct spec version"); -}); - -test("specVersion: Extension with valid version 2.2", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.2", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - const handleShimStub = sinon.stub(preprocessor, "handleShim"); - await preprocessor.applyExtension(extension); - t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.2", "Correct spec version"); -}); - -test("specVersion: Extension with valid version 2.3", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.3", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - const handleShimStub = sinon.stub(preprocessor, "handleShim"); - await preprocessor.applyExtension(extension); - t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.3", "Correct spec version"); -}); - -test("specVersion: Extension with valid version 2.4", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.4", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - const handleShimStub = sinon.stub(preprocessor, "handleShim"); - await preprocessor.applyExtension(extension); - t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.4", "Correct spec version"); -}); - -test("specVersion: Extension with valid version 2.5", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.5", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - const handleShimStub = sinon.stub(preprocessor, "handleShim"); - await preprocessor.applyExtension(extension); - t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.5", "Correct spec version"); -}); - -test("specVersion: Extension with valid version 2.6", async (t) => { - const extension = { - id: "extension.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.6", - kind: "extension", - type: "project-shim", - metadata: { - name: "shims.a" - }, - shims: {} - }; - const preprocessor = new Preprocessor({}); - const handleShimStub = sinon.stub(preprocessor, "handleShim"); - await preprocessor.applyExtension(extension); - t.deepEqual(handleShimStub.getCall(0).args[0].specVersion, "2.6", "Correct spec version"); -}); diff --git a/packages/project/test/lib/generateProjectGraph.usingObject.js b/packages/project/test/lib/generateProjectGraph.usingObject.js new file mode 100644 index 00000000000..7bad266d845 --- /dev/null +++ b/packages/project/test/lib/generateProjectGraph.usingObject.js @@ -0,0 +1,1654 @@ +const test = require("ava"); +const path = require("path"); +const sinonGlobal = require("sinon"); +const mock = require("mock-require"); +const logger = require("@ui5/logger"); +const ValidationError = require("../../lib/validation/ValidationError"); + +const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); +const applicationBPath = path.join(__dirname, "..", "fixtures", "application.b"); +const applicationCPath = path.join(__dirname, "..", "fixtures", "application.c"); +const libraryAPath = path.join(__dirname, "..", "fixtures", "collection", "library.a"); +const libraryBPath = path.join(__dirname, "..", "fixtures", "collection", "library.b"); +const libraryDPath = path.join(__dirname, "..", "fixtures", "library.d"); +const cycleDepsBasePath = path.join(__dirname, "..", "fixtures", "cyclic-deps", "node_modules"); +const pathToInvalidModule = path.join(__dirname, "..", "fixtures", "invalidModule"); + +const legacyLibraryAPath = path.join(__dirname, "..", "fixtures", "legacy.library.a"); +const legacyLibraryBPath = path.join(__dirname, "..", "fixtures", "legacy.library.b"); +const legacyCollectionAPath = path.join(__dirname, "..", "fixtures", "legacy.collection.a"); + +test.beforeEach((t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.log = { + warn: sinon.stub(), + verbose: sinon.stub(), + error: sinon.stub(), + info: sinon.stub(), + isLevelEnabled: () => true + }; + sinon.stub(logger, "getLogger").callThrough().withArgs("graph:projectGraphBuilder").returns(t.context.log); + mock.reRequire("../../lib/graph/projectGraphBuilder"); + t.context.projectGraphFromTree = mock.reRequire("../../lib/generateProjectGraph").usingObject; + logger.getLogger.restore(); // Immediately restore global stub for following tests +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); +}); + +test("Application A", async (t) => { + const {projectGraphFromTree} = t.context; + const projectGraph = await projectGraphFromTree({dependencyTree: getApplicationATree()}); + const rootProject = projectGraph.getRoot(); + t.is(rootProject.getName(), "application.a", "Returned correct root project"); +}); + +test("Application A: Traverse project graph breadth first", async (t) => { + const {projectGraphFromTree} = t.context; + const projectGraph = await projectGraphFromTree({dependencyTree: getApplicationATree()}); + const callbackStub = t.context.sinon.stub().resolves(); + await projectGraph.traverseBreadthFirst(callbackStub); + + t.is(callbackStub.callCount, 5, "Five projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, [ + "application.a", + "library.d", + "library.a", + "library.b", + "library.c" + ], "Traversed graph in correct order"); +}); + +test("Application Cycle A: Traverse project graph breadth first with cycles", async (t) => { + const {projectGraphFromTree, sinon} = t.context; + const projectGraph = await projectGraphFromTree({dependencyTree: applicationCycleATreeIncDeduped}); + const callbackStub = sinon.stub().resolves(); + const error = await t.throwsAsync(projectGraph.traverseBreadthFirst(callbackStub)); + + t.is(callbackStub.callCount, 4, "Four projects have been visited"); + + t.is(error.message, + "Detected cyclic dependency chain: application.cycle.a* -> component.cycle.a " + + "-> application.cycle.a*", + "Threw with expected error message"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + t.deepEqual(callbackCalls, [ + "application.cycle.a", + "component.cycle.a", + "library.cycle.a", + "library.cycle.b", + ], "Traversed graph in correct order"); +}); + +test("Application Cycle B: Traverse project graph breadth first with cycles", async (t) => { + const {projectGraphFromTree, sinon} = t.context; + const projectGraph = await projectGraphFromTree({dependencyTree: applicationCycleBTreeIncDeduped}); + const callbackStub = sinon.stub().resolves(); + await projectGraph.traverseBreadthFirst(callbackStub); + + // TODO: Confirm this behavior with FW. BFS works fine since all modules have already been visited + // before a cycle is entered. DFS fails because it dives into the cycle first. + + t.is(callbackStub.callCount, 3, "Four projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + t.deepEqual(callbackCalls, [ + "application.cycle.b", + "module.d", + "module.e" + ], "Traversed graph in correct order"); +}); + +test("Application A: Traverse project graph depth first", async (t) => { + const {projectGraphFromTree, sinon} = t.context; + const projectGraph = await projectGraphFromTree({dependencyTree: getApplicationATree()}); + const callbackStub = sinon.stub().resolves(); + await projectGraph.traverseDepthFirst(callbackStub); + + t.is(callbackStub.callCount, 5, "Five projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, [ + "library.a", + "library.b", + "library.c", + "library.d", + "application.a", + + ], "Traversed graph in correct order"); +}); + + +test("Application Cycle A: Traverse project graph depth first with cycles", async (t) => { + const {projectGraphFromTree, sinon} = t.context; + const projectGraph = await projectGraphFromTree({dependencyTree: applicationCycleATreeIncDeduped}); + const callbackStub = sinon.stub().resolves(); + const error = await t.throwsAsync(projectGraph.traverseDepthFirst(callbackStub)); + + t.is(callbackStub.callCount, 0, "Zero projects have been visited"); + + t.is(error.message, + "Detected cyclic dependency chain: application.cycle.a* -> component.cycle.a " + + "-> application.cycle.a*", + "Threw with expected error message"); +}); + +test("Application Cycle B: Traverse project graph depth first with cycles", async (t) => { + const {projectGraphFromTree, sinon} = t.context; + const projectGraph = await projectGraphFromTree({dependencyTree: applicationCycleBTreeIncDeduped}); + const callbackStub = sinon.stub().resolves(); + const error = await t.throwsAsync(projectGraph.traverseDepthFirst(callbackStub)); + + t.is(callbackStub.callCount, 0, "Zero projects have been visited"); + + t.is(error.message, + "Detected cyclic dependency chain: application.cycle.b -> module.d* " + + "-> module.e -> module.d*", + "Threw with expected error message"); +}); + + +/* ================================================================================================= */ +/* ======= The following tests have been derived from the existing projectPreprocessor tests ======= */ + +function testBasicGraphCreationBfs(...args) { + return _testBasicGraphCreation(...args, true); +} + +function testBasicGraphCreationDfs(...args) { + return _testBasicGraphCreation(...args, false); +} + +async function _testBasicGraphCreation(t, tree, expectedOrder, bfs) { + if (bfs === undefined) { + throw new Error("Test error: Parameter 'bfs' must be specified"); + } + const {projectGraphFromTree, sinon} = t.context; + const projectGraph = await projectGraphFromTree({dependencyTree: tree}); + const callbackStub = sinon.stub().resolves(); + if (bfs) { + await projectGraph.traverseBreadthFirst(callbackStub); + } else { + await projectGraph.traverseDepthFirst(callbackStub); + } + + t.is(callbackStub.callCount, expectedOrder.length, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, expectedOrder, "Traversed graph in correct order"); + return projectGraph; +} + +test("Project with inline configuration", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "xy" + } + } + }; + + await testBasicGraphCreationDfs(t, tree, [ + "xy" + ]); +}); + + +test("Project with inline configuration as array", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + configuration: [{ + specVersion: "2.3", + type: "application", + metadata: { + name: "xy" + } + }] + }; + + await testBasicGraphCreationDfs(t, tree, [ + "xy" + ]); +}); + +test("Project with inline configuration for two projects", async (t) => { + const {projectGraphFromTree} = t.context; + const tree = { + id: "application.a.id", + path: applicationAPath, + dependencies: [], + version: "1.0.0", + configuration: [{ + specVersion: "2.3", + type: "application", + metadata: { + name: "xy" + } + }, { + specVersion: "2.3", + type: "application", + metadata: { + name: "yz" + } + }] + }; + + await t.throwsAsync(projectGraphFromTree({dependencyTree: tree}), + { + message: + `Found 2 configurations of kind 'project' for module application.a.id. ` + + `There must be only one project per module.` + }, + "Rejected with error"); +}); + +test("Project with configPath", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + configPath: path.join(applicationBPath, "ui5.yaml"), // B, not A - just to have something different + dependencies: [], + version: "1.0.0" + }; + + await testBasicGraphCreationDfs(t, tree, [ + "application.b" + ]); +}); + +test("Project with ui5.yaml at default location", async (t) => { + const tree = { + id: "application.a.id", + version: "1.0.0", + path: applicationAPath, + dependencies: [] + }; + + await testBasicGraphCreationDfs(t, tree, [ + "application.a" + ]); +}); + +test("Project with ui5.yaml at default location and some configuration", async (t) => { + const tree = { + id: "application.c", + version: "1.0.0", + path: applicationCPath, + dependencies: [] + }; + + await testBasicGraphCreationDfs(t, tree, [ + "application.c" + ]); +}); + +test("Missing configuration file for root project", async (t) => { + const {projectGraphFromTree} = t.context; + const tree = { + id: "application.a.id", + version: "1.0.0", + path: "non-existent", + dependencies: [] + }; + await t.throwsAsync(projectGraphFromTree({dependencyTree: tree}), + { + message: + "Failed to create a UI5 project from module application.a.id at non-existent. " + + "Make sure the path is correct and a project configuration is present or supplied." + }, + "Rejected with error"); +}); + +test("Missing id for root project", async (t) => { + const {projectGraphFromTree} = t.context; + const tree = { + path: path.join(__dirname, "fixtures/application.a"), + dependencies: [] + }; + await t.throwsAsync(projectGraphFromTree({dependencyTree: tree}), + {message: "Could not create Module: Missing or empty parameter 'id'"}, "Rejected with error"); +}); + +test("No type configured for root project", async (t) => { + const {projectGraphFromTree} = t.context; + const tree = { + id: "application.a.id", + version: "1.0.0", + path: path.join(__dirname, "fixtures/application.a"), + dependencies: [], + configuration: { + specVersion: "2.1", + metadata: { + name: "application.a", + namespace: "id1" + } + } + }; + const error = await t.throwsAsync(projectGraphFromTree({dependencyTree: tree})); + + t.is(error.message, `Unable to create Specification instance: Unknown specification type 'undefined'`); +}); + +test("Missing dependencies", async (t) => { + const {projectGraphFromTree} = t.context; + const tree = ({ + id: "application.a.id", + version: "1.0.0", + path: applicationAPath + }); + await t.notThrowsAsync(projectGraphFromTree({dependencyTree: tree}), + "Gracefully accepted project with no dependencies attribute"); +}); + +test("Missing second-level dependencies", async (t) => { + const {projectGraphFromTree} = t.context; + const tree = ({ + id: "application.a.id", + version: "1.0.0", + path: applicationAPath, + dependencies: [{ + id: "library.d.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "library.d") + }] + }); + return t.notThrowsAsync(projectGraphFromTree({dependencyTree: tree}), + "Gracefully accepted project with no dependencies attribute"); +}); + +test("Single non-root application-project", async (t) => { + const tree = ({ + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [{ + id: "application.a.id", + version: "1.0.0", + path: applicationAPath, + dependencies: [] + }] + }); + + await testBasicGraphCreationDfs(t, tree, [ + "application.a", + "library.a" + ]); +}); + +test("Multiple non-root application-projects on same level", async (t) => { + const {log} = t.context; + const tree = ({ + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [{ + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [] + }, { + id: "application.b", + version: "1.0.0", + path: applicationBPath, + dependencies: [] + }] + }); + + await testBasicGraphCreationDfs(t, tree, [ + "application.a", + "library.a" + ]); + + t.is(log.info.callCount, 1, "log.info should be called once"); + t.is(log.info.getCall(0).args[0], + `Excluding additional application project application.b from graph. `+ + `The project graph can only feature a single project of type application. ` + + `Project application.a has already qualified for that role.`, + "log.info should be called once with the expected argument"); +}); + +test("Multiple non-root application-projects on different levels", async (t) => { + const {log} = t.context; + const tree = ({ + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [{ + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [] + }, { + id: "library.b", + version: "1.0.0", + path: libraryBPath, + dependencies: [{ + id: "application.b", + version: "1.0.0", + path: applicationBPath, + dependencies: [] + }] + }] + }); + + await testBasicGraphCreationDfs(t, tree, [ + "application.a", + "library.b", + "library.a" + ]); + + t.is(log.info.callCount, 1, "log.info should be called once"); + t.is(log.info.getCall(0).args[0], + `Excluding additional application project application.b from graph. `+ + `The project graph can only feature a single project of type application. ` + + `Project application.a has already qualified for that role.`, + "log.info should be called once with the expected argument"); +}); + +test("Root- and non-root application-projects", async (t) => { + const {log} = t.context; + const tree = ({ + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [{ + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [{ + id: "application.b", + version: "1.0.0", + path: applicationBPath, + dependencies: [] + }] + }] + }); + await testBasicGraphCreationDfs(t, tree, [ + "library.a", + "application.a", + ]); + + t.is(log.info.callCount, 1, "log.info should be called once"); + t.is(log.info.getCall(0).args[0], + `Excluding additional application project application.b from graph. `+ + `The project graph can only feature a single project of type application. ` + + `Project application.a has already qualified for that role.`, + "log.info should be called once with the expected argument"); +}); + +test("Ignores additional application-projects", async (t) => { + const {log} = t.context; + const tree = ({ + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [{ + id: "application.b", + version: "1.0.0", + path: applicationBPath, + dependencies: [] + }] + }); + await testBasicGraphCreationDfs(t, tree, [ + "application.a", + ]); + + t.is(log.info.callCount, 1, "log.info should be called once"); + t.is(log.info.getCall(0).args[0], + `Excluding additional application project application.b from graph. `+ + `The project graph can only feature a single project of type application. ` + + `Project application.a has already qualified for that role.`, + "log.info should be called once with the expected argument"); +}); + +test("Inconsistent dependencies with same ID", async (t) => { + // The one closer to the root should win + const tree = { + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: libraryDPath, + resources: { + configuration: { + propertiesFileSourceEncoding: "UTF-8", + paths: { + src: "main/src", + test: "main/test" + } + } + }, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + path: libraryBPath, // B, not A - inconsistency! + configuration: { + specVersion: "2.3", + type: "library", + metadata: { + name: "library.XY", + } + }, + dependencies: [] + } + ] + }, + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [] + } + ] + }; + await testBasicGraphCreationDfs(t, tree, [ + // "library.XY" is ignored since the ID has already been processed and resolved to library A + "library.a", + "library.d", + "application.a" + ]); +}); + +test("Project tree A with inline configs depth first", async (t) => { + await testBasicGraphCreationDfs(t, applicationATreeWithInlineConfigs, [ + "library.a", + "library.d", + "application.a" + ]); +}); + +test("Project tree A with configPaths depth first", async (t) => { + await testBasicGraphCreationDfs(t, applicationATreeWithConfigPaths, [ + "library.a", + "library.d", + "application.a" + + ]); +}); + +test("Project tree A with default YAMLs depth first", async (t) => { + await testBasicGraphCreationDfs(t, applicationATreeWithDefaultYamls, [ + "library.a", + "library.d", + "application.a" + ]); +}); + +test("Project tree A with inline configs breadth first", async (t) => { + await testBasicGraphCreationBfs(t, applicationATreeWithInlineConfigs, [ + "application.a", + "library.d", + "library.a", + ]); +}); + +test("Project tree A with configPaths breadth first", async (t) => { + await testBasicGraphCreationBfs(t, applicationATreeWithConfigPaths, [ + "application.a", + "library.d", + "library.a" + + ]); +}); + +test("Project tree A with default YAMLs breadth first", async (t) => { + await testBasicGraphCreationBfs(t, applicationATreeWithDefaultYamls, [ + "application.a", + "library.d", + "library.a" + ]); +}); + +test("Project tree B with inline configs", async (t) => { + // Tree B depends on Library B which has a dependency to Library D + await testBasicGraphCreationDfs(t, applicationBTreeWithInlineConfigs, [ + "library.a", + "library.d", + "library.b", + "application.b" + ]); +}); + +test("Project with nested invalid dependencies", async (t) => { + await testBasicGraphCreationDfs(t, treeWithInvalidModules, [ + "library.a", + "library.b", + "application.a" + ]); +}); + +/* ========================= */ +/* ======= Test data ======= */ + +function getApplicationATree() { + return { + id: "application.a.id", + version: "1.0.0", + path: applicationAPath, + dependencies: [ + { + id: "library.d.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "library.d"), + dependencies: [ + { + id: "library.a.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.a"), + dependencies: [] + }, + { + id: "library.b.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.b"), + dependencies: [] + }, + { + id: "library.c.id", + version: "1.0.0", + path: path.join(applicationAPath, "node_modules", "collection", "library.c"), + dependencies: [] + } + ] + } + ] + }; +} + + +const applicationCycleATreeIncDeduped = { + id: "application.cycle.a", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "application.cycle.a"), + dependencies: [ + { + id: "component.cycle.a", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "component.cycle.a"), + dependencies: [ + { + id: "library.cycle.a", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "library.cycle.a"), + dependencies: [ + { + id: "component.cycle.a", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "component.cycle.a"), + dependencies: [], + deduped: true + } + ] + }, + { + id: "library.cycle.b", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "library.cycle.b"), + dependencies: [ + { + id: "component.cycle.a", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "component.cycle.a"), + dependencies: [], + deduped: true + } + ] + }, + { + id: "application.cycle.a", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "application.cycle.a"), + dependencies: [], + deduped: true + } + ] + } + ] +}; + +const applicationCycleBTreeIncDeduped = { + id: "application.cycle.b", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "application.cycle.b"), + dependencies: [ + { + id: "module.d", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "module.d"), + dependencies: [ + { + id: "module.e", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "module.e"), + dependencies: [ + { + id: "module.d", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "module.d"), + dependencies: [], + deduped: true + } + ] + } + ] + }, + { + id: "module.e", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "module.e"), + dependencies: [ + { + id: "module.d", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "module.d"), + dependencies: [ + { + id: "module.e", + version: "1.0.0", + path: path.join(cycleDepsBasePath, "module.e"), + dependencies: [], + deduped: true + } + ] + } + ] + } + ] +}; + + +/* === Tree A === */ +const applicationATreeWithInlineConfigs = { + id: "application.a", + version: "1.0.0", + path: applicationAPath, + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a", + }, + }, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: libraryDPath, + configuration: { + specVersion: "2.3", + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + propertiesFileSourceEncoding: "UTF-8", + paths: { + src: "main/src", + test: "main/test" + } + } + } + }, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + configuration: { + specVersion: "2.3", + type: "library", + metadata: { + name: "library.a", + }, + }, + dependencies: [] + } + ] + }, + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + configuration: { + specVersion: "2.3", + type: "library", + metadata: { + name: "library.a" + }, + }, + dependencies: [] + } + ] +}; + +const applicationATreeWithConfigPaths = { + id: "application.a", + version: "1.0.0", + path: applicationAPath, + configPath: path.join(applicationAPath, "ui5.yaml"), + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: libraryDPath, + configPath: path.join(libraryDPath, "ui5.yaml"), + dependencies: [ + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + configPath: path.join(libraryAPath, "ui5.yaml"), + dependencies: [] + } + ] + }, + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + configPath: path.join(libraryAPath, "ui5.yaml"), + dependencies: [] + } + ] +}; + +const applicationATreeWithDefaultYamls = { + id: "application.a", + version: "1.0.0", + path: applicationAPath, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: libraryDPath, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [] + } + ] + }, + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + dependencies: [] + } + ] +}; + +/* === Tree B === */ +const applicationBTreeWithInlineConfigs = { + id: "application.b", + version: "1.0.0", + path: applicationBPath, + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.b" + } + }, + dependencies: [ + { + id: "library.b", + version: "1.0.0", + path: libraryBPath, + configuration: { + specVersion: "2.3", + type: "library", + metadata: { + name: "library.b", + } + }, + dependencies: [ + { + id: "library.d", + version: "1.0.0", + path: libraryDPath, + configuration: { + specVersion: "2.3", + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + propertiesFileSourceEncoding: "UTF-8", + paths: { + src: "main/src", + test: "main/test" + } + } + } + }, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + configuration: { + specVersion: "2.3", + type: "library", + metadata: { + name: "library.a" + } + }, + dependencies: [] + } + ] + } + ] + }, + { + id: "library.d", + version: "1.0.0", + path: libraryDPath, + configuration: { + specVersion: "2.3", + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + propertiesFileSourceEncoding: "UTF-8", + paths: { + src: "main/src", + test: "main/test" + } + } + } + }, + dependencies: [ + { + id: "library.a", + version: "1.0.0", + path: libraryAPath, + configuration: { + specVersion: "2.3", + type: "library", + metadata: { + name: "library.a" + } + }, + dependencies: [] + } + ] + } + ] +}; + +/* === Invalid Modules */ +const treeWithInvalidModules = { + id: "application.a", + path: applicationAPath, + dependencies: [ + // A + { + id: "library.a", + path: libraryAPath, + dependencies: [ + { + // C - invalid - should be missing in preprocessed tree + id: "module.c", + dependencies: [], + path: pathToInvalidModule, + version: "1.0.0" + }, + { + // D - invalid - should be missing in preprocessed tree + id: "module.d", + dependencies: [], + path: pathToInvalidModule, + version: "1.0.0" + } + ], + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "library", + metadata: {name: "library.a"} + } + }, + // B + { + id: "library.b", + path: libraryBPath, + dependencies: [ + { + // C - invalid - should be missing in preprocessed tree + id: "module.c", + dependencies: [], + path: pathToInvalidModule, + version: "1.0.0" + }, + { + // D - invalid - should be missing in preprocessed tree + id: "module.d", + dependencies: [], + path: pathToInvalidModule, + version: "1.0.0" + } + ], + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "library", + metadata: {name: "library.b"} + } + } + ], + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a" + } + } +}; + +/* ======================================================================================= */ +/* ======= The following tests have been derived from the existing extension tests ======= */ + +/* The following scenario is supported by the projectPreprocessor but not by projectGraphFromTree + * A shim extension located in a project's dependencies can't influence other dependencies of that project anymore + * TODO: Check whether the above is fine for us + +test.only("Legacy: Project with project-shim extension with dependency configuration", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a" + } + }, + dependencies: [{ + id: "extension.a.id", + path: applicationAPath, + version: "1.0.0", + dependencies: [], + configuration: { + specVersion: "2.3", + kind: "extension", + type: "project-shim", + metadata: { + name: "shim.a" + }, + shims: { + configurations: { + "legacy.library.a.id": { + specVersion: "2.3", + type: "library", + metadata: { + name: "legacy.library.a", + } + } + } + } + } + }, { + id: "legacy.library.a.id", + version: "1.0.0", + path: legacyLibraryAPath, + dependencies: [] + }] + }; + await testBasicGraphCreationDfs(t, tree, [ + "legacy.library.a", + "application.a", + ]); +});*/ + +test("Project with project-shim extension with dependency configuration", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: [{ + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a" + } + }, { + specVersion: "2.3", + kind: "extension", + type: "project-shim", + metadata: { + name: "shim.a" + }, + shims: { + configurations: { + "legacy.library.a.id": { + specVersion: "2.3", + type: "library", + metadata: { + name: "legacy.library.a", + } + } + } + } + }], + dependencies: [{ + id: "legacy.library.a.id", + version: "1.0.0", + path: legacyLibraryAPath, + dependencies: [] + }] + }; + await testBasicGraphCreationDfs(t, tree, [ + "legacy.library.a", + "application.a", + ]); +}); + +test("Project with project-shim extension dependency with dependency configuration", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a" + } + }, + dependencies: [{ + id: "extension.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + kind: "extension", + type: "project-shim", + metadata: { + name: "shim.a" + }, + shims: { + configurations: { + "legacy.library.a.id": { + specVersion: "2.3", + type: "library", + metadata: { + name: "legacy.library.a", + } + } + } + } + }, + dependencies: [{ + id: "legacy.library.a.id", + version: "1.0.0", + path: legacyLibraryAPath, + dependencies: [] + }], + }] + }; + await testBasicGraphCreationDfs(t, tree, [ + "legacy.library.a", + "application.a", + ]); + + const {log} = t.context; + t.is(log.warn.callCount, 0, "log.warn should not have been called"); + t.is(log.info.callCount, 0, "log.info should not have been called"); +}); + +test("Project with project-shim extension with invalid dependency configuration", async (t) => { + const {projectGraphFromTree} = t.context; + const tree = { + id: "application.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: [{ + specVersion: "2.3", + type: "application", + metadata: { + name: "xy" + } + }, { + specVersion: "2.3", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: { + configurations: { + "legacy.library.a.id": { + specVersion: "2.3", + type: "library" + } + } + } + }], + dependencies: [{ + id: "legacy.library.a.id", + version: "1.0.0", + path: legacyLibraryAPath, + dependencies: [] + }] + }; + const validationError = await t.throwsAsync(projectGraphFromTree({dependencyTree: tree}), { + instanceOf: ValidationError + }); + t.true(validationError.message.includes("Configuration must have required property 'metadata'"), + "ValidationError should contain error about missing metadata configuration"); +}); + +test("Project with project-shim extension with dependency declaration and configuration", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a" + } + }, + dependencies: [{ + id: "extension.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: { + configurations: { + "legacy.library.a.id": { + specVersion: "2.3", + type: "library", + metadata: { + name: "legacy.library.a", + } + }, + "legacy.library.b.id": { + specVersion: "2.3", + type: "library", + metadata: { + name: "legacy.library.b", + } + } + }, + dependencies: { + "legacy.library.a.id": [ + "legacy.library.b.id" + ] + } + } + }, + dependencies: [{ + id: "legacy.library.a.id", + version: "1.0.0", + path: legacyLibraryAPath, + dependencies: [] + }, { + id: "legacy.library.b.id", + version: "1.0.0", + path: legacyLibraryBPath, + dependencies: [] + }], + }] + }; + // application.a and legacy.library.a will both have a dependency to legacy.library.b + // (one because it's the actual dependency and one because it's a shimmed dependency) + const graph = await testBasicGraphCreationDfs(t, tree, [ + "legacy.library.b", + "legacy.library.a", + "application.a", + ]); + t.deepEqual(graph.getDependencies("legacy.library.a"), [ + "legacy.library.b" + ], "Shimmed dependencies should be applied"); + + const {log} = t.context; + t.is(log.warn.callCount, 0, "log.warn should not have been called"); + t.is(log.info.callCount, 0, "log.info should not have been called"); +}); + +test("Project with project-shim extension with collection", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a" + } + }, + dependencies: [{ + id: "extension.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: { + configurations: { + "legacy.library.x.id": { + specVersion: "2.3", + type: "library", + metadata: { + name: "legacy.library.x", + } + }, + "legacy.library.y.id": { + specVersion: "2.3", + type: "library", + metadata: { + name: "legacy.library.y", + } + } + }, + dependencies: { + "application.a.id": [ + "legacy.library.x.id", + "legacy.library.y.id" + ], + "legacy.library.x.id": [ + "legacy.library.y.id" + ] + }, + collections: { + "legacy.collection.a": { + modules: { + "legacy.library.x.id": "src/legacy.library.x", + "legacy.library.y.id": "src/legacy.library.y" + } + } + } + } + }, + dependencies: [{ + id: "legacy.collection.a", + version: "1.0.0", + path: legacyCollectionAPath, + dependencies: [] + }] + }] + }; + + const graph = await testBasicGraphCreationDfs(t, tree, [ + "legacy.library.y", + "legacy.library.x", + "application.a", + ]); + t.deepEqual(graph.getDependencies("application.a"), [ + "legacy.library.x", + "legacy.library.y" + ], "Shimmed dependencies should be applied"); + + const {log} = t.context; + t.is(log.warn.callCount, 0, "log.warn should not have been called"); + t.is(log.info.callCount, 0, "log.info should not have been called"); +}); + +// TODO: Fixme +test.skip("Project with project-shim extension with self-containing collection shim", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a" + } + }, + dependencies: [{ + id: "legacy.collection.a", + path: legacyCollectionAPath, + version: "1.0.0", + configuration: [{ + specVersion: "2.3", + type: "library", + metadata: { + name: "my.fe" + }, + framework: { + name: "OpenUI5" + } + }, { + specVersion: "2.3", + kind: "extension", + type: "project-shim", + metadata: { + name: "shims.a" + }, + shims: { + configurations: { + "legacy.library.x.id": { + specVersion: "2.3", + type: "library", + metadata: { + name: "legacy.library.x", + } + }, + "legacy.library.y.id": { + specVersion: "2.3", + type: "library", + metadata: { + name: "legacy.library.y", + } + } + }, + dependencies: { + "legacy.library.x.id": [ + "legacy.library.y.id" + ] + }, + collections: { + "legacy.collection.a": { + modules: { + "legacy.library.x.id": "src/legacy.library.x", + "legacy.library.y.id": "src/legacy.library.y" + } + } + } + } + }], + dependencies: [] + }] + }; + + const graph = await testBasicGraphCreationDfs(t, tree, [ + "legacy.library.y", + "legacy.library.x", + "application.a", + ]); + t.deepEqual(graph.getDependencies("application.a"), [ + "legacy.library.x", + "legacy.library.y" + ], "Shimmed dependencies should be applied"); + + const {log} = t.context; + t.is(log.warn.callCount, 0, "log.warn should not have been called"); + t.is(log.info.callCount, 0, "log.info should not have been called"); + + const libraryY = graph.getProject("legacy.library.y"); + t.deepEqual(libraryY.getFrameworkName(), { + name: "OpenUI5" + }, "Configuration from collection project should be taken over into shimmed project"); +}); + +test("Project with unknown extension dependency inline configuration", async (t) => { + const {projectGraphFromTree} = t.context; + const tree = { + id: "application.a", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "xy" + } + }, + dependencies: [{ + id: "extension.a", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + kind: "extension", + type: "phony-pony", + metadata: { + name: "pinky.pie" + } + }, + dependencies: [], + }], + }; + const validationError = await t.throwsAsync(projectGraphFromTree({dependencyTree: tree})); + t.is(validationError.message, + `Unable to create Specification instance: Unknown specification type 'phony-pony'`, + "Should throw with expected error message"); +}); + +test("Project with task extension dependency", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a" + } + }, + dependencies: [{ + id: "ext.task.a", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + kind: "extension", + type: "task", + metadata: { + name: "task.a" + }, + task: { + path: "task.a.js" + } + }, + dependencies: [], + }] + }; + const graph = await testBasicGraphCreationDfs(t, tree, [ + "application.a" + ]); + t.truthy(graph.getExtension("task.a"), "Extension should be added to the graph"); +}); + +test("Project with middleware extension dependency", async (t) => { + const tree = { + id: "application.a.id", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + type: "application", + metadata: { + name: "application.a" + } + }, + dependencies: [{ + id: "ext.middleware.a", + path: applicationAPath, + version: "1.0.0", + configuration: { + specVersion: "2.3", + kind: "extension", + type: "server-middleware", + metadata: { + name: "middleware.a" + }, + middleware: { + path: "middleware.a.js" + } + }, + dependencies: [], + }], + }; + const graph = await testBasicGraphCreationDfs(t, tree, [ + "application.a" + ]); + t.truthy(graph.getExtension("middleware.a"), "Extension should be added to the graph"); +}); + +test("rootConfiguration", async (t) => { + const {projectGraphFromTree} = t.context; + const projectGraph = await projectGraphFromTree({ + dependencyTree: getApplicationATree(), + rootConfiguration: { + specVersion: "2.6", + type: "application", + metadata: { + name: "application.a" + }, + customConfiguration: { + rootConfigurationTest: true + } + } + }); + + t.deepEqual(projectGraph.getRoot().getCustomConfiguration(), { + rootConfigurationTest: true + }); +}); + +test("rootConfig", async (t) => { + const {projectGraphFromTree} = t.context; + const projectGraph = await projectGraphFromTree({ + dependencyTree: getApplicationATree(), + rootConfigPath: "ui5-test-configPath.yaml" + }); + t.deepEqual(projectGraph.getRoot().getCustomConfiguration(), { + rootConfigPathTest: true + }); +}); diff --git a/packages/project/test/lib/generateProjectGraph.usingStaticFile.js b/packages/project/test/lib/generateProjectGraph.usingStaticFile.js new file mode 100644 index 00000000000..61c8229a84b --- /dev/null +++ b/packages/project/test/lib/generateProjectGraph.usingStaticFile.js @@ -0,0 +1,72 @@ +const test = require("ava"); +const path = require("path"); +const sinonGlobal = require("sinon"); + +const projectGraphFromStaticFile = require("../../lib/generateProjectGraph").usingStaticFile; + +const applicationHPath = path.join(__dirname, "..", "fixtures", "application.h"); +const notExistingPath = path.join(__dirname, "..", "fixtures", "does_not_exist"); + +test.beforeEach((t) => { + t.context.sinon = sinonGlobal.createSandbox(); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); +}); + +test("Application H: Traverse project graph breadth first", async (t) => { + const projectGraph = await projectGraphFromStaticFile({ + cwd: applicationHPath + }); + const callbackStub = t.context.sinon.stub().resolves(); + await projectGraph.traverseBreadthFirst(callbackStub); + + t.is(callbackStub.callCount, 2, "Two projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, [ + "application.a", + "library.e", + ], "Traversed graph in correct order"); +}); + +test("Throws error if file not found", async (t) => { + const err = await t.throwsAsync(projectGraphFromStaticFile({ + cwd: notExistingPath + })); + t.is(err.message, + `Failed to load dependency tree configuration from path ${notExistingPath}/projectDependencies.yaml: ` + + `ENOENT: no such file or directory, open '${notExistingPath}/projectDependencies.yaml'`, + "Correct error message"); +}); + +test("rootConfiguration", async (t) => { + const projectGraph = await projectGraphFromStaticFile({ + cwd: applicationHPath, + rootConfiguration: { + specVersion: "2.6", + type: "application", + metadata: { + name: "application.a" + }, + customConfiguration: { + rootConfigurationTest: true + } + } + }); + t.deepEqual(projectGraph.getRoot().getCustomConfiguration(), { + rootConfigurationTest: true + }); +}); + +test("rootConfig", async (t) => { + const projectGraph = await projectGraphFromStaticFile({ + cwd: applicationHPath, + rootConfigPath: "ui5-test-configPath.yaml" + }); + t.deepEqual(projectGraph.getRoot().getCustomConfiguration(), { + configPathTest: true + }); +}); diff --git a/packages/project/test/lib/graph/Module.js b/packages/project/test/lib/graph/Module.js new file mode 100644 index 00000000000..fd362bf03cf --- /dev/null +++ b/packages/project/test/lib/graph/Module.js @@ -0,0 +1,168 @@ +const test = require("ava"); +const sinon = require("sinon"); +const path = require("path"); +const Module = require("../../../lib/graph/Module"); + +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const buildDescriptionApplicationAPath = + path.join(__dirname, "..", "..", "fixtures", "build-manifest", "application.a"); +const buildDescriptionLibraryAPath = + path.join(__dirname, "..", "..", "fixtures", "build-manifest", "library.e"); + +const basicModuleInput = { + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath +}; +const archiveAppProjectInput = { + id: "application.a.id", + version: "1.0.0", + modulePath: buildDescriptionApplicationAPath +}; + +const archiveLibProjectInput = { + id: "library.e.id", + version: "1.0.0", + modulePath: buildDescriptionLibraryAPath +}; + +// test.beforeEach((t) => { +// }); + +test.afterEach.always(() => { + sinon.restore(); +}); + +test("Instantiate a basic module", async (t) => { + const ui5Module = new Module(basicModuleInput); + t.is(ui5Module.getId(), "application.a.id", "Should return correct ID"); + t.is(ui5Module.getVersion(), "1.0.0", "Should return correct version"); + t.is(ui5Module.getPath(), applicationAPath, "Should return correct module path"); +}); + +test("Access module root resources via reader", async (t) => { + const ui5Module = new Module(basicModuleInput); + const rootReader = await ui5Module.getReader(); + const packageJsonResource = await rootReader.byPath("/package.json"); + t.is(packageJsonResource.getPath(), "/package.json", "Successfully retrieved root resource"); +}); + +test("Get specifications from module", async (t) => { + const ui5Module = new Module(basicModuleInput); + const {project, extensions} = await ui5Module.getSpecifications(); + t.is(project.getName(), "application.a", "Should return correct project"); + t.is(extensions.length, 0, "Should return no extensions"); +}); + +test("Get specifications from application project with build manifest", async (t) => { + const ui5Module = new Module(archiveAppProjectInput); + const {project, extensions} = await ui5Module.getSpecifications(); + t.is(project.getName(), "application.a", "Should return correct project"); + t.is(extensions.length, 0, "Should return no extensions"); +}); + +test("Get specifications from library project with build manifest", async (t) => { + const ui5Module = new Module(archiveLibProjectInput); + const {project, extensions} = await ui5Module.getSpecifications(); + t.is(project.getName(), "library.e", "Should return correct project"); + t.is(extensions.length, 0, "Should return no extensions"); +}); + +test("configuration (object)", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.6", + type: "application", + metadata: { + name: "application.a" + }, + customConfiguration: { + configurationTest: true + } + } + }); + const {project, extensions} = await ui5Module.getSpecifications(); + t.deepEqual(project.getCustomConfiguration(), { + configurationTest: true + }); + t.is(extensions.length, 0, "Should return no extensions"); +}); + +test("configuration (array)", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: [{ + specVersion: "2.6", + type: "application", + metadata: { + name: "application.a" + }, + customConfiguration: { + configurationTest: true + } + }, { + specVersion: "2.6", + kind: "extension", + type: "project-shim", + metadata: { + name: "my-project-shim" + }, + shims: {} + }] + }); + const {project, extensions} = await ui5Module.getSpecifications(); + t.deepEqual(project.getCustomConfiguration(), { + configurationTest: true + }); + t.is(extensions.length, 1, "Should return one extension"); +}); + +test("configPath", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configPath: "ui5-test-configPath.yaml" + }); + const {project, extensions} = await ui5Module.getSpecifications(); + t.deepEqual(project.getCustomConfiguration(), { + configPathTest: true + }); + t.is(extensions.length, 0, "Should return no extensions"); +}); + +test("configuration + configPath must not be provided", async (t) => { + // 'configuration' as object + t.throws(() => { + new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configPath: "test-ui5.yaml", + configuration: { + test: "configuration" + } + }); + }, { + message: "Could not create Module: 'configPath' must not be provided in combination with 'configuration'" + }); + // 'configuration' as array + t.throws(() => { + new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configPath: "test-ui5.yaml", + configuration: [{ + test: "configuration" + }] + }); + }, { + message: "Could not create Module: 'configPath' must not be provided in combination with 'configuration'" + }); +}); diff --git a/packages/project/test/lib/graph/ProjectGraph.js b/packages/project/test/lib/graph/ProjectGraph.js new file mode 100644 index 00000000000..ba88b154385 --- /dev/null +++ b/packages/project/test/lib/graph/ProjectGraph.js @@ -0,0 +1,1187 @@ +const path = require("path"); +const test = require("ava"); +const sinonGlobal = require("sinon"); +const mock = require("mock-require"); +const logger = require("@ui5/logger"); +const Specification = require("../../../lib/specifications/Specification"); +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); + +async function createProject(name) { + return await Specification.create({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name} + } + }); +} + +async function createExtension(name) { + return await Specification.create({ + id: "extension.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "extension", + type: "task", + task: {}, + metadata: {name} + } + }); +} + +function traverseBreadthFirst(...args) { + return _traverse(...args, true); +} + +function traverseDepthFirst(...args) { + return _traverse(...args, false); +} + +async function _traverse(t, graph, expectedOrder, bfs) { + if (bfs === undefined) { + throw new Error("Test error: Parameter 'bfs' must be specified"); + } + const callbackStub = t.context.sinon.stub().resolves(); + if (bfs) { + await graph.traverseBreadthFirst(callbackStub); + } else { + await graph.traverseDepthFirst(callbackStub); + } + + t.is(callbackStub.callCount, expectedOrder.length, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, expectedOrder, "Traversed graph in correct order"); +} + +test.beforeEach((t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.log = { + warn: sinon.stub(), + verbose: sinon.stub(), + error: sinon.stub(), + info: sinon.stub(), + isLevelEnabled: () => true + }; + sinon.stub(logger, "getLogger").callThrough() + .withArgs("graph:ProjectGraph").returns(t.context.log); + t.context.ProjectGraph = mock.reRequire("../../../lib/graph/ProjectGraph"); + logger.getLogger.restore(); // Immediately restore global stub for following tests +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); +}); + +test("Instantiate a basic project graph", async (t) => { + const {ProjectGraph} = t.context; + t.notThrows(() => { + new ProjectGraph({ + rootProjectName: "my root project" + }); + }, "Should not throw"); +}); + +test("Instantiate a basic project with missing parameter rootProjectName", async (t) => { + const {ProjectGraph} = t.context; + const error = t.throws(() => { + new ProjectGraph({}); + }); + t.is(error.message, "Could not create ProjectGraph: Missing or empty parameter 'rootProjectName'", + "Should throw with expected error message"); +}); + +test("getRoot", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "application.a" + }); + const project = await createProject("application.a"); + graph.addProject(project); + const res = graph.getRoot(); + t.is(res, project, "Should return correct root project"); +}); + +test("getRoot: Root not added to graph", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "application.a" + }); + + const error = t.throws(() => { + graph.getRoot(); + }); + t.is(error.message, + "Unable to find root project with name application.a in project graph", + "Should throw with expected error message"); +}); + +test("add-/getProject", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const project = await createProject("application.a"); + graph.addProject(project); + const res = graph.getProject("application.a"); + t.is(res, project, "Should return correct project"); +}); + +test("addProject: Add duplicate", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const project1 = await createProject("application.a"); + graph.addProject(project1); + + const project2 = await createProject("application.a"); + const error = t.throws(() => { + graph.addProject(project2); + }); + t.is(error.message, + "Failed to add project application.a to graph: A project with that name has already been added", + "Should throw with expected error message"); + + const res = graph.getProject("application.a"); + t.is(res, project1, "Should return correct project"); +}); + +test("addProject: Add duplicate with ignoreDuplicates", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const project1 = await createProject("application.a"); + graph.addProject(project1); + + const project2 = await createProject("application.a"); + t.notThrows(() => { + graph.addProject(project2, true); + }, "Should not throw when adding duplicates"); + + const res = graph.getProject("application.a"); + t.is(res, project1, "Should return correct project"); +}); + +test("addProject: Add project with integer-like name", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const project = await createProject("1337"); + + const error = t.throws(() => { + graph.addProject(project); + }); + t.is(error.message, + "Failed to add project 1337 to graph: Project name must not be integer-like", + "Should throw with expected error message"); +}); + +test("getProject: Project is not in graph", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const res = graph.getProject("application.a"); + t.is(res, undefined, "Should return undefined"); +}); + +test("getAllProjects", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const project1 = await createProject("application.a"); + graph.addProject(project1); + + const project2 = await createProject("application.b"); + graph.addProject(project2); + + const res = graph.getAllProjects(); + t.deepEqual(res, [ + project1, project2 + ], "Should return all projects in a flat array"); +}); + +test("add-/getExtension", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const extension = await createExtension("extension.a"); + graph.addExtension(extension); + const res = graph.getExtension("extension.a"); + t.is(res, extension, "Should return correct extension"); +}); + +test("addExtension: Add duplicate", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const extension1 = await createExtension("extension.a"); + graph.addExtension(extension1); + + const extension2 = await createExtension("extension.a"); + const error = t.throws(() => { + graph.addExtension(extension2); + }); + t.is(error.message, + "Failed to add extension extension.a to graph: An extension with that name has already been added", + "Should throw with expected error message"); + + const res = graph.getExtension("extension.a"); + t.is(res, extension1, "Should return correct extension"); +}); + +test("addExtension: Add extension with integer-like name", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const extension = await createExtension("1337"); + + const error = t.throws(() => { + graph.addExtension(extension); + }); + t.is(error.message, + "Failed to add extension 1337 to graph: Extension name must not be integer-like", + "Should throw with expected error message"); +}); + +test("getExtension: Project is not in graph", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const res = graph.getExtension("extension.a"); + t.is(res, undefined, "Should return undefined"); +}); + +test("getAllExtensions", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const extension1 = await createExtension("extension.a"); + graph.addExtension(extension1); + + const extension2 = await createExtension("extension.b"); + graph.addExtension(extension2); + const res = graph.getAllExtensions(); + t.deepEqual(res, [ + extension1, extension2 + ], "Should return all extensions in a flat array"); +}); + +test("declareDependency / getDependencies", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareDependency("library.a", "library.b"); + t.deepEqual(graph.getDependencies("library.a"), [ + "library.b" + ], "Should store and return correct dependencies for library.a"); + t.deepEqual(graph.getDependencies("library.b"), [], + "Should store and return correct dependencies for library.b"); + + graph.declareDependency("library.b", "library.a"); + + t.deepEqual(graph.getDependencies("library.a"), [ + "library.b" + ], "Should store and return correct dependencies for library.a"); + t.deepEqual(graph.getDependencies("library.b"), [ + "library.a" + ], "Should store and return correct dependencies for library.b"); + + t.is(graph.isOptionalDependency("library.a", "library.b"), false, + "Should declare dependency as non-optional"); + + t.is(graph.isOptionalDependency("library.b", "library.a"), false, + "Should declare dependency as non-optional"); +}); + +test("declareDependency: Unknown source", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + graph.addProject(await createProject("library.b")); + + const error = t.throws(() => { + graph.declareDependency("library.a", "library.b"); + }); + t.is(error.message, + "Failed to declare dependency from project library.a to library.b: Unable " + + "to find depending project with name library.a in project graph", + "Should throw with expected error message"); +}); + +test("declareDependency: Unknown target", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + graph.addProject(await createProject("library.a")); + + const error = t.throws(() => { + graph.declareDependency("library.a", "library.b"); + }); + t.is(error.message, + "Failed to declare dependency from project library.a to library.b: Unable " + + "to find dependency project with name library.b in project graph", + "Should throw with expected error message"); +}); + +test("declareDependency: Same target as source", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + const error = t.throws(() => { + graph.declareDependency("library.a", "library.a"); + }); + t.is(error.message, + "Failed to declare dependency from project library.a to library.a: " + + "A project can't depend on itself", + "Should throw with expected error message"); +}); + +test("declareDependency: Already declared", async (t) => { + const {ProjectGraph, log} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.a", "library.b"); + + t.is(log.warn.callCount, 1, "log.warn should be called once"); + t.is(log.warn.getCall(0).args[0], + `Dependency has already been declared: library.a depends on library.b`, + "log.warn should be called once with the expected argument"); +}); + +test("declareDependency: Already declared as optional", async (t) => { + const {ProjectGraph, log} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareOptionalDependency("library.a", "library.b"); + graph.declareOptionalDependency("library.a", "library.b"); + + t.is(log.warn.callCount, 1, "log.warn should be called once"); + t.is(log.warn.getCall(0).args[0], + `Dependency has already been declared: library.a depends on library.b`, + "log.warn should be called once with the expected argument"); + + t.is(graph.isOptionalDependency("library.a", "library.b"), true, + "Should declare dependency as optional"); +}); + +test("declareDependency: Already declared as non-optional", async (t) => { + const {ProjectGraph, log} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareDependency("library.a", "library.b"); + + graph.declareOptionalDependency("library.a", "library.b"); + + t.is(log.warn.callCount, 0, "log.warn should not be called"); + + t.is(graph.isOptionalDependency("library.a", "library.b"), false, + "Should declare dependency as non-optional"); +}); + +test("declareDependency: Already declared as optional, now non-optional", async (t) => { + const {ProjectGraph, log} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareOptionalDependency("library.a", "library.b"); + graph.declareDependency("library.a", "library.b"); + + t.is(log.warn.callCount, 0, "log.warn should not be called"); + + t.is(graph.isOptionalDependency("library.a", "library.b"), false, + "Should declare dependency as non-optional"); +}); + + +test("getDependencies: Project without dependencies", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + + graph.addProject(await createProject("library.a")); + + t.deepEqual(graph.getDependencies("library.a"), [], + "Should return an empty array for project without dependencies"); +}); + +test("getDependencies: Unknown project", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + + const error = t.throws(() => { + graph.getDependencies("library.x"); + }); + t.is(error.message, + "Failed to get dependencies for project library.x: Unable to find project in project graph", + "Should throw with expected error message"); +}); + +test("resolveOptionalDependencies", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + graph.addProject(await createProject("library.d")); + + graph.declareOptionalDependency("library.a", "library.b"); + graph.declareOptionalDependency("library.a", "library.c"); + graph.declareDependency("library.a", "library.d"); + graph.declareDependency("library.d", "library.b"); + graph.declareDependency("library.d", "library.c"); + + await graph.resolveOptionalDependencies(); + + t.is(graph.isOptionalDependency("library.a", "library.b"), false, + "library.a should have no optional dependency to library.b anymore"); + t.is(graph.isOptionalDependency("library.a", "library.c"), false, + "library.a should have no optional dependency to library.c anymore"); + + await traverseDepthFirst(t, graph, [ + "library.b", + "library.c", + "library.d", + "library.a" + ]); +}); + +test("resolveOptionalDependencies: Optional dependency has not been resolved", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + graph.addProject(await createProject("library.d")); + + graph.declareOptionalDependency("library.a", "library.b"); + graph.declareOptionalDependency("library.a", "library.c"); + graph.declareDependency("library.a", "library.d"); + + await graph.resolveOptionalDependencies(); + + t.is(graph.isOptionalDependency("library.a", "library.b"), true, + "Dependency from library.a to library.b should still be optional"); + + t.is(graph.isOptionalDependency("library.a", "library.c"), true, + "Dependency from library.a to library.c should still be optional"); + + await traverseDepthFirst(t, graph, [ + "library.d", + "library.a" + ]); +}); + +test("resolveOptionalDependencies: Dependency of optional dependency has not been resolved", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + graph.addProject(await createProject("library.d")); + + graph.declareOptionalDependency("library.a", "library.b"); + graph.declareOptionalDependency("library.a", "library.c"); + graph.declareDependency("library.b", "library.c"); + + await graph.resolveOptionalDependencies(); + + t.is(graph.isOptionalDependency("library.a", "library.b"), true, + "Dependency from library.a to library.b should still be optional"); + + t.is(graph.isOptionalDependency("library.a", "library.c"), true, + "Dependency from library.a to library.c should still be optional"); + + await traverseDepthFirst(t, graph, [ + "library.a" + ]); +}); + +test("resolveOptionalDependencies: Cyclic optional dependency is not resolved", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.a", "library.c"); + graph.declareDependency("library.c", "library.b"); + graph.declareOptionalDependency("library.b", "library.c"); + + await graph.resolveOptionalDependencies(); + + t.is(graph.isOptionalDependency("library.b", "library.c"), true, + "Dependency from library.b to library.c should still be optional"); + + await traverseDepthFirst(t, graph, [ + "library.b", + "library.c", + "library.a" + ]); +}); + +test("resolveOptionalDependencies: Resolves transitive optional dependencies", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + graph.addProject(await createProject("library.d")); + + graph.declareDependency("library.a", "library.b"); + graph.declareOptionalDependency("library.a", "library.c"); + graph.declareDependency("library.b", "library.c"); + graph.declareDependency("library.c", "library.d"); + graph.declareOptionalDependency("library.a", "library.d"); + + await graph.resolveOptionalDependencies(); + + t.is(graph.isOptionalDependency("library.a", "library.c"), false, + "Dependency from library.a to library.c should not be optional anymore"); + + t.is(graph.isOptionalDependency("library.a", "library.d"), false, + "Dependency from library.a to library.d should not be optional anymore"); + + await traverseDepthFirst(t, graph, [ + "library.d", + "library.c", + "library.b", + "library.a" + ]); +}); + +test("traverseBreadthFirst", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareDependency("library.a", "library.b"); + + await traverseBreadthFirst(t, graph, [ + "library.a", + "library.b" + ]); +}); + +test("traverseBreadthFirst: No project visited twice", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.a", "library.c"); + graph.declareDependency("library.b", "library.c"); + + await traverseBreadthFirst(t, graph, [ + "library.a", + "library.b", + "library.c" + ]); +}); + +test("traverseBreadthFirst: Detect cycle", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.b", "library.a"); + + const error = await t.throwsAsync(graph.traverseBreadthFirst(() => {})); + t.is(error.message, + "Detected cyclic dependency chain: library.a* -> library.b -> library.a*", + "Should throw with expected error message"); +}); + +test("traverseBreadthFirst: No cycle when visited breadth first", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.a", "library.c"); + graph.declareDependency("library.b", "library.c"); + graph.declareDependency("library.c", "library.b"); + + await traverseBreadthFirst(t, graph, [ + "library.a", + "library.b", + "library.c" + ]); +}); + +test("traverseBreadthFirst: Can't find start node", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + + const error = await t.throwsAsync(graph.traverseBreadthFirst(() => {})); + t.is(error.message, + "Failed to start graph traversal: Could not find project library.a in project graph", + "Should throw with expected error message"); +}); + +test("traverseBreadthFirst: Custom start node", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.b", "library.c"); + + const callbackStub = t.context.sinon.stub().resolves(); + await graph.traverseBreadthFirst("library.b", callbackStub); + + t.is(callbackStub.callCount, 2, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, [ + "library.b", + "library.c" + ], "Traversed graph in correct order, starting with library.b"); +}); + +test("traverseBreadthFirst: getDependencies callback", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.a", "library.c"); + graph.declareDependency("library.b", "library.c"); + + const callbackStub = t.context.sinon.stub().resolves(); + await graph.traverseBreadthFirst(callbackStub); + + t.is(callbackStub.callCount, 3, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + const dependencies = callbackStub.getCalls().map((call) => { + return call.args[0].getDependencies().map((dep) => { + return dep.getName(); + }); + }); + + t.deepEqual(callbackCalls, [ + "library.a", + "library.b", + "library.c" + ], "Traversed graph in correct order"); + + t.deepEqual(dependencies, [ + ["library.b", "library.c"], + ["library.c"], + [] + ], "Provided correct dependencies for each visited project"); +}); + +test("traverseBreadthFirst: Dependency declaration order is followed", async (t) => { + const {ProjectGraph} = t.context; + const graph1 = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph1.addProject(await createProject("library.a")); + graph1.addProject(await createProject("library.b")); + graph1.addProject(await createProject("library.c")); + graph1.addProject(await createProject("library.d")); + + graph1.declareDependency("library.a", "library.b"); + graph1.declareDependency("library.a", "library.c"); + graph1.declareDependency("library.a", "library.d"); + + await traverseBreadthFirst(t, graph1, [ + "library.a", + "library.b", + "library.c", + "library.d" + ]); + + const graph2 = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph2.addProject(await createProject("library.a")); + graph2.addProject(await createProject("library.b")); + graph2.addProject(await createProject("library.c")); + graph2.addProject(await createProject("library.d")); + + graph2.declareDependency("library.a", "library.d"); + graph2.declareDependency("library.a", "library.c"); + graph2.declareDependency("library.a", "library.b"); + + await traverseBreadthFirst(t, graph2, [ + "library.a", + "library.d", + "library.c", + "library.b" + ]); +}); + +test("traverseDepthFirst", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareDependency("library.a", "library.b"); + + await traverseDepthFirst(t, graph, [ + "library.b", + "library.a" + ]); +}); + +test("traverseDepthFirst: No project visited twice", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.a", "library.c"); + graph.declareDependency("library.b", "library.c"); + + await traverseDepthFirst(t, graph, [ + "library.c", + "library.b", + "library.a" + ]); +}); + +test("traverseDepthFirst: Detect cycle", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.b", "library.a"); + + const error = await t.throwsAsync(graph.traverseDepthFirst(() => {})); + t.is(error.message, + "Detected cyclic dependency chain: library.a* -> library.b -> library.a*", + "Should throw with expected error message"); +}); + +test("traverseDepthFirst: Cycle which does not occur in BFS", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.a", "library.c"); + graph.declareDependency("library.b", "library.c"); + graph.declareDependency("library.c", "library.b"); + + const error = await t.throwsAsync(graph.traverseDepthFirst(() => {})); + t.is(error.message, + "Detected cyclic dependency chain: library.a -> library.b* -> library.c -> library.b*", + "Should throw with expected error message"); +}); + +test("traverseDepthFirst: Can't find start node", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + + const error = await t.throwsAsync(graph.traverseDepthFirst(() => {})); + t.is(error.message, + "Failed to start graph traversal: Could not find project library.a in project graph", + "Should throw with expected error message"); +}); + +test("traverseDepthFirst: Custom start node", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.b", "library.c"); + + const callbackStub = t.context.sinon.stub().resolves(); + await graph.traverseDepthFirst("library.b", callbackStub); + + t.is(callbackStub.callCount, 2, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, [ + "library.c", + "library.b" + ], "Traversed graph in correct order, starting with library.b"); +}); + +test("traverseDepthFirst: getDependencies callback", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.a", "library.c"); + graph.declareDependency("library.b", "library.c"); + + const callbackStub = t.context.sinon.stub().resolves(); + await graph.traverseDepthFirst(callbackStub); + + t.is(callbackStub.callCount, 3, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + const dependencies = callbackStub.getCalls().map((call) => { + return call.args[0].getDependencies().map((dep) => { + return dep.getName(); + }); + }); + + t.deepEqual(callbackCalls, [ + "library.c", + "library.b", + "library.a", + ], "Traversed graph in correct order"); + + t.deepEqual(dependencies, [ + [], + ["library.c"], + ["library.b", "library.c"], + ], "Provided correct dependencies for each visited project"); +}); + +test("traverseDepthFirst: Dependency declaration order is followed", async (t) => { + const {ProjectGraph} = t.context; + const graph1 = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph1.addProject(await createProject("library.a")); + graph1.addProject(await createProject("library.b")); + graph1.addProject(await createProject("library.c")); + graph1.addProject(await createProject("library.d")); + + graph1.declareDependency("library.a", "library.b"); + graph1.declareDependency("library.a", "library.c"); + graph1.declareDependency("library.a", "library.d"); + + await traverseDepthFirst(t, graph1, [ + "library.b", + "library.c", + "library.d", + "library.a", + ]); + + const graph2 = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph2.addProject(await createProject("library.a")); + graph2.addProject(await createProject("library.b")); + graph2.addProject(await createProject("library.c")); + graph2.addProject(await createProject("library.d")); + + graph2.declareDependency("library.a", "library.d"); + graph2.declareDependency("library.a", "library.c"); + graph2.declareDependency("library.a", "library.b"); + + await traverseDepthFirst(t, graph2, [ + "library.d", + "library.c", + "library.b", + "library.a", + ]); +}); + +test("join", async (t) => { + const {ProjectGraph} = t.context; + const graph1 = new ProjectGraph({ + rootProjectName: "library.a" + }); + const graph2 = new ProjectGraph({ + rootProjectName: "theme.a" + }); + graph1.addProject(await createProject("library.a")); + graph1.addProject(await createProject("library.b")); + graph1.addProject(await createProject("library.c")); + graph1.addProject(await createProject("library.d")); + + graph1.declareDependency("library.a", "library.b"); + graph1.declareDependency("library.a", "library.c"); + graph1.declareDependency("library.a", "library.d"); + + const extensionA = await createExtension("extension.a"); + graph1.addExtension(extensionA); + + graph2.addProject(await createProject("theme.a")); + graph2.addProject(await createProject("theme.b")); + graph2.addProject(await createProject("theme.c")); + graph2.addProject(await createProject("theme.d")); + + graph2.declareDependency("theme.a", "theme.d"); + graph2.declareDependency("theme.a", "theme.c"); + graph2.declareDependency("theme.b", "theme.a"); // This causes theme.b to not appear + + const extensionB = await createExtension("extension.b"); + graph2.addExtension(extensionB); + + graph1.join(graph2); + graph1.declareDependency("library.d", "theme.a"); + + await traverseDepthFirst(t, graph1, [ + "library.b", + "library.c", + "theme.d", + "theme.c", + "theme.a", + "library.d", + "library.a", + ]); + + t.is(graph1.getExtension("extension.a"), extensionA, "Should return correct extension"); + t.is(graph1.getExtension("extension.b"), extensionB, "Should return correct joined extension"); +}); + +test("join: Seals incoming graph", async (t) => { + const {ProjectGraph} = t.context; + const graph1 = new ProjectGraph({ + rootProjectName: "library.a" + }); + const graph2 = new ProjectGraph({ + rootProjectName: "theme.a" + }); + + + const sealSpy = t.context.sinon.spy(graph2, "seal"); + graph1.join(graph2); + + t.is(sealSpy.callCount, 1, "Should call seal() on incoming graph once"); +}); + +test("join: Incoming graph already sealed", async (t) => { + const {ProjectGraph} = t.context; + const graph1 = new ProjectGraph({ + rootProjectName: "library.a" + }); + const graph2 = new ProjectGraph({ + rootProjectName: "theme.a" + }); + + graph2.seal(); + const sealSpy = t.context.sinon.spy(graph2, "seal"); + graph1.join(graph2); + + t.is(sealSpy.callCount, 0, "Should not call seal() on incoming graph"); +}); + +test("join: Unexpected project intersection", async (t) => { + const {ProjectGraph} = t.context; + const graph1 = new ProjectGraph({ + rootProjectName: "😹" + }); + const graph2 = new ProjectGraph({ + rootProjectName: "😼" + }); + graph1.addProject(await createProject("library.a")); + graph2.addProject(await createProject("library.a")); + + + const error = t.throws(() => { + graph1.join(graph2); + }); + t.is(error.message, + `Failed to join project graph with root project 😼 into project graph with root ` + + `project 😹: Failed to merge map: Key 'library.a' already present in target set`, + "Should throw with expected error message"); +}); + +test("join: Unexpected extension intersection", async (t) => { + const {ProjectGraph} = t.context; + const graph1 = new ProjectGraph({ + rootProjectName: "😹" + }); + const graph2 = new ProjectGraph({ + rootProjectName: "😼" + }); + graph1.addExtension(await createExtension("extension.a")); + graph2.addExtension(await createExtension("extension.a")); + + + const error = t.throws(() => { + graph1.join(graph2); + }); + t.is(error.message, + `Failed to join project graph with root project 😼 into project graph with root ` + + `project 😹: Failed to merge map: Key 'extension.a' already present in target set`, + "Should throw with expected error message"); +}); + + +test("Seal/isSealed", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.a", "library.c"); + graph.declareDependency("library.b", "library.c"); + graph.declareOptionalDependency("library.c", "library.a"); + + graph.addExtension(await createExtension("extension.a")); + + t.is(graph.isSealed(), false, "Graph should not be sealed"); + // Seal it + graph.seal(); + t.is(graph.isSealed(), true, "Graph should be sealed"); + + const expectedSealMsg = "Project graph with root node library.a has been sealed"; + + const libX = await createProject("library.x"); + t.throws(() => { + graph.addProject(libX); + }, { + message: expectedSealMsg + }); + t.throws(() => { + graph.declareDependency("library.c", "library.b"); + }, { + message: expectedSealMsg + }); + t.throws(() => { + graph.declareOptionalDependency("library.b", "library.a"); + }, { + message: expectedSealMsg + }); + const extB = await createExtension("extension.b"); + t.throws(() => { + graph.addExtension(extB); + }, { + message: expectedSealMsg + }); + + + const graph2 = new ProjectGraph({ + rootProjectName: "library.x" + }); + t.throws(() => { + graph.join(graph2); + }, { + message: + `Failed to join project graph with root project library.x into project graph ` + + `with root project library.a: ${expectedSealMsg}` + }); + await traverseBreadthFirst(t, graph, [ + "library.a", + "library.b", + "library.c" + ]); + + await traverseDepthFirst(t, graph, [ + "library.c", + "library.b", + "library.a", + ]); + + const project = graph.getProject("library.x"); + t.is(project, undefined, "library.x should not be added"); + + const extension = graph.getExtension("extension.b"); + t.is(extension, undefined, "extension.b should not be added"); +}); diff --git a/packages/project/test/lib/translators/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js similarity index 56% rename from packages/project/test/lib/translators/ui5Framework.integration.js rename to packages/project/test/lib/graph/helpers/ui5Framework.integration.js index ad68421950a..67215b202f8 100644 --- a/packages/project/test/lib/translators/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -9,10 +9,11 @@ const pacote = require("pacote"); const libnpmconfig = require("libnpmconfig"); const lockfile = require("lockfile"); const logger = require("@ui5/logger"); -const normalizer = require("../../../lib/normalizer"); -const projectPreprocessor = require("../../../lib/projectPreprocessor"); -let ui5Framework; -let Installer; +const Module = require("../../../../lib/graph/Module"); +const ApplicationType = require("../../../../lib/specifications/types/Application"); +const LibraryType = require("../../../../lib/specifications/types/Library"); +const DependencyTreeProvider = require("../../../../lib/graph/providers/DependencyTree"); +const projectGraphBuilder = require("../../../../lib/graph/projectGraphBuilder"); // Use path within project as mocking base directory to reduce chance of side effects // in case mocks/stubs do not work and real fs is used @@ -45,9 +46,16 @@ test.beforeEach((t) => { mock("mkdirp", sinon.stub().resolves()); + // Stub specification internal checks since none of the projects actually exist on disk + sinon.stub(ApplicationType.prototype, "_configureAndValidatePaths").resolves(); + sinon.stub(LibraryType.prototype, "_configureAndValidatePaths").resolves(); + sinon.stub(ApplicationType.prototype, "_parseConfiguration").resolves(); + sinon.stub(LibraryType.prototype, "_parseConfiguration").resolves(); + + // Re-require to ensure that mocked modules are used - ui5Framework = mock.reRequire("../../../lib/translators/ui5Framework"); - Installer = require("../../../lib/ui5Framework/npm/Installer"); + t.context.ui5Framework = mock.reRequire("../../../../lib/graph/helpers/ui5Framework"); + t.context.Installer = require("../../../../lib/ui5Framework/npm/Installer"); }); test.afterEach.always((t) => { @@ -103,176 +111,102 @@ function defineTest(testName, { } }; - function project({name, version, type, specVersion = "2.0", framework, _level, dependencies = []}) { - const proj = { - _level, - id: name + "-id", - version, - path: path.join(fakeBaseDir, "project-" + name), - specVersion, - kind: "project", - type, - metadata: { - name - }, - dependencies - }; - if (_level === 0) { - proj._isRoot = true; - } - if (framework) { - proj.framework = framework; - } - return proj; - } - function frameworkProject({name, _level, dependencies = []}) { - const metadata = frameworkName === "SAPUI5" ? distributionMetadata.libraries[name] : null; - const id = frameworkName === "SAPUI5" ? metadata.npmPackageName : npmScope + "/" + name; - const version = frameworkName === "SAPUI5" ? metadata.version : "1.75.0"; - return { - _level, - id, - version, - path: path.join( - ui5PackagesBaseDir, - // sap.ui.lib4 is in @openui5 scope in SAPUI5 and OpenUI5 - name === "sap.ui.lib4" ? "@openui5" : npmScope, - name, version - ), - specVersion: "1.0", - kind: "project", - type: "library", - metadata: { - name - }, - framework: { - libraries: [] - }, - dependencies - }; - } - test.serial(`${frameworkName}: ${verbose ? "(verbose) " : ""}${testName}`, async (t) => { // Enable verbose logging if (verbose) { logger.setLevel("verbose"); } + const {ui5Framework, Installer, logInfoSpy} = t.context; const testDependency = { id: "test-dependency-id", version: "4.5.6", path: path.join(fakeBaseDir, "project-test-dependency"), - dependencies: [] + dependencies: [], + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "test-dependency" + }, + framework: { + version: "1.99.0", + name: frameworkName, + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib2" + }, + { + name: "sap.ui.lib5", + optional: true + }, + { + name: "sap.ui.lib6", + development: true + }, + { + name: "sap.ui.lib8", + // optional dependency gets resolved by dev-dependency of root project + optional: true + } + ] + } + } }; - const translatorTree = { + const dependencyTree = { id: "test-application-id", version: "1.2.3", path: path.join(fakeBaseDir, "project-test-application"), + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "test-application" + }, + framework: { + name: frameworkName, + version: "1.75.0", + libraries: [ + { + name: "sap.ui.lib1" + }, + { + name: "sap.ui.lib4", + optional: true + }, + { + name: "sap.ui.lib8", + development: true + } + ] + } + }, dependencies: [ testDependency, { id: "test-dependency-no-framework-id", version: "7.8.9", path: path.join(fakeBaseDir, "project-test-dependency-no-framework"), + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "test-dependency-no-framework" + } + }, dependencies: [ testDependency ] - }, - { - id: "test-dependency-framework-old-spec-version-id", - version: "10.11.12", - path: path.join(fakeBaseDir, "project-test-dependency-framework-old-spec-version"), - dependencies: [] } ] }; - sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); - - sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "readConfigFile") - .callsFake(async (project) => { - switch (project.path) { - case path.join(fakeBaseDir, "project-test-application"): - return [{ - specVersion: "2.0", - type: "application", - metadata: { - name: "test-application" - }, - framework: { - name: frameworkName, - version: "1.75.0", - libraries: [ - { - name: "sap.ui.lib1" - }, - { - name: "sap.ui.lib4", - optional: true - }, - { - name: "sap.ui.lib8", - development: true - } - ] - } - }]; - case path.join(fakeBaseDir, "project-test-dependency"): - return [{ - specVersion: "2.0", - type: "library", - metadata: { - name: "test-dependency" - }, - framework: { - version: "1.99.0", - name: frameworkName, - libraries: [ - { - name: "sap.ui.lib1" - }, - { - name: "sap.ui.lib2" - }, - { - name: "sap.ui.lib5", - optional: true - }, - { - name: "sap.ui.lib6", - development: true - }, - { - name: "sap.ui.lib8", - // optional dependency gets resolved by dev-dependency of root project - optional: true - } - ] - } - }]; - case path.join(fakeBaseDir, "project-test-dependency-no-framework"): - return [{ - specVersion: "2.0", - type: "library", - metadata: { - name: "test-dependency-no-framework" - } - }]; - case path.join(fakeBaseDir, "project-test-dependency-framework-old-spec-version"): - return [{ - specVersion: "1.1", - type: "library", - metadata: { - name: "test-dependency-framework-old-spec-version" - }, - framework: { - libraries: [ - { - name: "sap.ui.lib5" - } - ] - } - }]; + sinon.stub(Module.prototype, "_readConfigFile") + .callsFake(async function() { + switch (this.getPath()) { case path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib1", frameworkName === "SAPUI5" ? "1.75.1" : "1.75.0"): return [{ @@ -281,7 +215,10 @@ function defineTest(testName, { metadata: { name: "sap.ui.lib1" }, - framework: {libraries: []} + framework: { + name: frameworkName, + libraries: [] + } }]; case path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib2", frameworkName === "SAPUI5" ? "1.75.2" : "1.75.0"): @@ -291,7 +228,10 @@ function defineTest(testName, { metadata: { name: "sap.ui.lib2" }, - framework: {libraries: []} + framework: { + name: frameworkName, + libraries: [] + } }]; case path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib3", frameworkName === "SAPUI5" ? "1.75.3" : "1.75.0"): @@ -301,7 +241,10 @@ function defineTest(testName, { metadata: { name: "sap.ui.lib3" }, - framework: {libraries: []} + framework: { + name: frameworkName, + libraries: [] + } }]; case path.join(ui5PackagesBaseDir, "@openui5", "sap.ui.lib4", frameworkName === "SAPUI5" ? "1.75.4" : "1.75.0"): @@ -311,7 +254,10 @@ function defineTest(testName, { metadata: { name: "sap.ui.lib4" }, - framework: {libraries: []} + framework: { + name: frameworkName, + libraries: [] + } }]; case path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib8", frameworkName === "SAPUI5" ? "1.75.8" : "1.75.0"): @@ -321,19 +267,19 @@ function defineTest(testName, { metadata: { name: "sap.ui.lib8" }, - framework: {libraries: []} + framework: { + name: frameworkName, + libraries: [] + } }]; default: throw new Error( - "ProjectPreprocessor#readConfigFile stub called with unknown project: " + - (project && project.path) + "Module#_readConfigFile stub called with unknown project: " + + (this.getId()) ); } }); - // Prevent applying types as this would require a lot of mocking - sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "applyType"); - sinon.stub(pacote, "extract").resolves(); if (frameworkName === "OpenUI5") { @@ -389,155 +335,46 @@ function defineTest(testName, { .resolves(distributionMetadata); } - const testDependencyProject = project({ - _level: 1, - name: "test-dependency", - version: "4.5.6", - type: "library", - framework: { - version: "1.99.0", - name: frameworkName, - libraries: [ - { - name: "sap.ui.lib1" - }, - { - name: "sap.ui.lib2" - }, - { - name: "sap.ui.lib5", - optional: true - }, - { - name: "sap.ui.lib6", - development: true - }, - { - name: "sap.ui.lib8", - optional: true - } - ] - }, - dependencies: [ - frameworkProject({ - _level: 1, - name: "sap.ui.lib1", - }), - frameworkProject({ - _level: 1, - name: "sap.ui.lib2", - dependencies: [ - frameworkProject({ - _level: 2, - name: "sap.ui.lib3", - dependencies: [ - frameworkProject({ - name: "sap.ui.lib4", - _level: 1, - dependencies: [ - frameworkProject({ - _level: 1, - name: "sap.ui.lib1" - }) - ] - }) - ] - }) - ] - }), - frameworkProject({ - _level: 1, - name: "sap.ui.lib8", - }) - ] - }); - const expectedTree = project({ - _level: 0, - name: "test-application", - version: "1.2.3", - type: "application", - framework: { - name: frameworkName, - version: "1.75.0", - libraries: [ - { - name: "sap.ui.lib1" - }, - { - name: "sap.ui.lib4", - optional: true - }, - { - name: "sap.ui.lib8", - development: true - } - ] - }, - dependencies: [ - testDependencyProject, - project({ - _level: 1, - name: "test-dependency-no-framework", - version: "7.8.9", - type: "library", - dependencies: [testDependencyProject] - }), - project({ - _level: 1, - name: "test-dependency-framework-old-spec-version", - specVersion: "1.1", - version: "10.11.12", - type: "library", - framework: { - libraries: [ - { - name: "sap.ui.lib5" - } - ] - }, - }), - frameworkProject({ - _level: 1, - name: "sap.ui.lib1", - }), - frameworkProject({ - name: "sap.ui.lib4", - _level: 1, - dependencies: [ - frameworkProject({ - _level: 1, - name: "sap.ui.lib1" - }) - ] - }), - frameworkProject({ - _level: 1, - name: "sap.ui.lib8", - }) - ] - }); + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); - const tree = await normalizer.generateProjectTree(); + await ui5Framework.enrichProjectGraph(projectGraph); - t.deepEqual(tree, expectedTree, "Returned tree should be correct"); - const frameworkLibAlreadyAddedInfoLogged = (t.context.logInfoSpy.getCalls() + const callbackStub = sinon.stub().resolves(); + await projectGraph.traverseDepthFirst(callbackStub); + + t.is(callbackStub.callCount, 8, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + t.deepEqual(callbackCalls, [ + "sap.ui.lib1", + "sap.ui.lib8", + "sap.ui.lib4", + "sap.ui.lib3", + "sap.ui.lib2", + "test-dependency", + "test-dependency-no-framework", + "test-application", + ], "Traversed graph in correct order"); + + const frameworkLibAlreadyAddedInfoLogged = (logInfoSpy.getCalls() .map(($) => $.firstArg) .findIndex(($) => $.includes("defines a dependency to the UI5 framework library")) !== -1); t.false(frameworkLibAlreadyAddedInfoLogged, "No info regarding already added UI5 framework libraries logged"); }); } -defineTest("ui5Framework translator should enhance tree with UI5 framework libraries", { +defineTest("ui5Framework helper should enhance project graph with UI5 framework libraries", { frameworkName: "SAPUI5" }); -defineTest("ui5Framework translator should enhance tree with UI5 framework libraries", { +defineTest("ui5Framework helper should enhance project graph with UI5 framework libraries", { frameworkName: "SAPUI5", verbose: true }); -defineTest("ui5Framework translator should enhance tree with UI5 framework libraries", { +defineTest("ui5Framework helper should enhance project graph with UI5 framework libraries", { frameworkName: "OpenUI5" }); -defineTest("ui5Framework translator should enhance tree with UI5 framework libraries", { +defineTest("ui5Framework helper should enhance project graph with UI5 framework libraries", { frameworkName: "OpenUI5", verbose: true }); @@ -549,49 +386,34 @@ function defineErrorTest(testName, { expectedErrorMessage }) { test.serial(testName, async (t) => { - const translatorTree = { + const {ui5Framework, Installer} = t.context; + + const dependencyTree = { id: "test-id", version: "1.2.3", path: path.join(fakeBaseDir, "application-project"), - dependencies: [] - }; - - sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); - - sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "readConfigFile") - .callsFake(async (project) => { - switch (project.path) { - case path.join(fakeBaseDir, "application-project"): - return [{ - specVersion: "2.0", - type: "application", - metadata: { - name: "test-project" + dependencies: [], + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "test-project" + }, + framework: { + name: frameworkName, + version: "1.75.0", + libraries: [ + { + name: "sap.ui.lib1" }, - framework: { - name: frameworkName, - version: "1.75.0", - libraries: [ - { - name: "sap.ui.lib1" - }, - { - name: "sap.ui.lib4", - optional: true - } - ] + { + name: "sap.ui.lib4", + optional: true } - }]; - default: - throw new Error( - "ProjectPreprocessor#readConfigFile stub called with unknown project: " + - (project && project.path) - ); + ] } - }); - - // Prevent applying types as this would require a lot of mocking - sinon.stub(projectPreprocessor._ProjectPreprocessor.prototype, "applyType"); + } + }; const extractStub = sinon.stub(pacote, "extract"); extractStub.callsFake(async (spec) => { @@ -700,13 +522,15 @@ function defineErrorTest(testName, { } } + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); await t.throwsAsync(async () => { - await normalizer.generateProjectTree(); + await ui5Framework.enrichProjectGraph(projectGraph); }, {message: expectedErrorMessage}); }); } -defineErrorTest("SAPUI5: ui5Framework translator should throw a proper error when metadata request fails", { +defineErrorTest("SAPUI5: ui5Framework helper should throw a proper error when metadata request fails", { frameworkName: "SAPUI5", failMetadata: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: @@ -715,7 +539,7 @@ Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/distrib Failed to resolve library sap.ui.lib4: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + `404 - @sapui5/distribution-metadata` // TODO: should only be returned once? }); -defineErrorTest("SAPUI5: ui5Framework translator should throw a proper error when package extraction fails", { +defineErrorTest("SAPUI5: ui5Framework helper should throw a proper error when package extraction fails", { frameworkName: "SAPUI5", failExtract: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: @@ -725,7 +549,7 @@ Failed to resolve library sap.ui.lib4: Failed to extract package @openui5/sap.ui `404 - @openui5/sap.ui.lib4` }); defineErrorTest( - "SAPUI5: ui5Framework translator should throw a proper error when metadata request and package extraction fails", { + "SAPUI5: ui5Framework helper should throw a proper error when metadata request and package extraction fails", { frameworkName: "SAPUI5", failMetadata: true, failExtract: true, @@ -737,14 +561,14 @@ Failed to resolve library sap.ui.lib4: Failed to extract package @sapui5/distrib }); -defineErrorTest("OpenUI5: ui5Framework translator should throw a proper error when metadata request fails", { +defineErrorTest("OpenUI5: ui5Framework helper should throw a proper error when metadata request fails", { frameworkName: "OpenUI5", failMetadata: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: Failed to resolve library sap.ui.lib1: Failed to read manifest of @openui5/sap.ui.lib1@1.75.0 Failed to resolve library sap.ui.lib4: Failed to read manifest of @openui5/sap.ui.lib4@1.75.0` }); -defineErrorTest("OpenUI5: ui5Framework translator should throw a proper error when package extraction fails", { +defineErrorTest("OpenUI5: ui5Framework helper should throw a proper error when package extraction fails", { frameworkName: "OpenUI5", failExtract: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: @@ -754,7 +578,7 @@ Failed to resolve library sap.ui.lib4: Failed to extract package @openui5/sap.ui `404 - @openui5/sap.ui.lib4` }); defineErrorTest( - "OpenUI5: ui5Framework translator should throw a proper error when metadata request and package extraction fails", { + "OpenUI5: ui5Framework helper should throw a proper error when metadata request and package extraction fails", { frameworkName: "OpenUI5", failMetadata: true, failExtract: true, @@ -763,155 +587,114 @@ Failed to resolve library sap.ui.lib1: Failed to read manifest of @openui5/sap.u Failed to resolve library sap.ui.lib4: Failed to read manifest of @openui5/sap.ui.lib4@1.75.0` }); -test.serial("ui5Framework translator should not be called when no framework configuration is given", async (t) => { - const translatorTree = { +test.serial("ui5Framework helper should not fail when no framework configuration is given", async (t) => { + const dependencyTree = { id: "test-id", version: "1.2.3", path: path.join(fakeBaseDir, "application-project"), - dependencies: [] - }; - const projectPreprocessorTree = Object.assign({}, translatorTree, { - specVersion: "1.1", - type: "application", - metadata: { - name: "test-project" + dependencies: [], + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "test-project" + } } - }); - - sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); - sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); - - const ui5FrameworkMock = sinon.mock(ui5Framework); - ui5FrameworkMock.expects("generateDependencyTree").never(); - - const expectedTree = projectPreprocessorTree; - - const tree = await normalizer.generateProjectTree(); + }; + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + await t.context.ui5Framework.enrichProjectGraph(projectGraph); - t.deepEqual(tree, expectedTree, "Returned tree should be correct"); - ui5FrameworkMock.verify(); + t.is(projectGraph, projectGraph, "Returned same graph without error"); }); test.serial("ui5Framework translator should not try to install anything when no library is referenced", async (t) => { - const translatorTree = { + const dependencyTree = { id: "test-id", version: "1.2.3", path: path.join(fakeBaseDir, "application-project"), - dependencies: [] - }; - const projectPreprocessorTree = Object.assign({}, translatorTree, { - specVersion: "1.1", - type: "application", - metadata: { - name: "test-project" - }, - framework: { - name: "SAPUI5", - version: "1.75.0" + dependencies: [], + configuration: { + specVersion: "2.1", + type: "application", + metadata: { + name: "test-project" + }, + framework: { + name: "SAPUI5", + version: "1.75.0" + } } - }); - const frameworkTree = Object.assign({}, projectPreprocessorTree, { - _transparentProject: true - }); - - sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); - sinon.stub(projectPreprocessor, "processTree") - .withArgs(translatorTree).resolves(projectPreprocessorTree) - .withArgs(frameworkTree).resolves(frameworkTree); + }; + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); const extractStub = sinon.stub(pacote, "extract"); const manifestStub = sinon.stub(pacote, "manifest"); - await normalizer.generateProjectTree(); + await t.context.ui5Framework.enrichProjectGraph(projectGraph); t.is(extractStub.callCount, 0, "No package should be extracted"); t.is(manifestStub.callCount, 0, "No manifest should be requested"); }); test.serial("ui5Framework translator should throw an error when framework version is not defined", async (t) => { - const translatorTree = { + const dependencyTree = { id: "test-id", version: "1.2.3", path: path.join(fakeBaseDir, "application-project"), - dependencies: [] - }; - const projectPreprocessorTree = Object.assign({}, translatorTree, { - specVersion: "1.1", - type: "application", - metadata: { - name: "test-project" - }, - framework: { - name: "SAPUI5" + dependencies: [], + configuration: { + specVersion: "2.1", + type: "application", + metadata: { + name: "test-project" + }, + framework: { + name: "SAPUI5" + } } - }); - - sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); - sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); - - await t.throwsAsync(async () => { - await normalizer.generateProjectTree(); - }, {message: `framework.version is not defined for project test-id`}); -}); - -test.serial("ui5Framework translator should throw an error when framework name is not supported", async (t) => { - const translatorTree = { - id: "test-id", - version: "1.2.3", - path: path.join(fakeBaseDir, "application-project"), - dependencies: [] }; - const projectPreprocessorTree = Object.assign({}, translatorTree, { - specVersion: "1.1", - type: "application", - metadata: { - name: "test-project" - }, - framework: { - name: "UI5" - } - }); - - sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); - sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); await t.throwsAsync(async () => { - await normalizer.generateProjectTree(); - }, {message: `Unknown framework.name "UI5" for project test-id. Must be "OpenUI5" or "SAPUI5"`}); + await t.context.ui5Framework.enrichProjectGraph(projectGraph); + }, {message: `No framework version defined for root project test-project`}, "Correct error message"); }); test.serial( "SAPUI5: ui5Framework translator should throw error when using a library that is not part of the dist metadata", async (t) => { - const translatorTree = { + const dependencyTree = { id: "test-id", version: "1.2.3", path: path.join(fakeBaseDir, "application-project"), - dependencies: [] - }; - const projectPreprocessorTree = Object.assign({}, translatorTree, { - specVersion: "2.0", - type: "application", - metadata: { - name: "test-project" - }, - framework: { - name: "SAPUI5", - version: "1.75.0", - libraries: [ - {name: "sap.ui.lib1"}, - {name: "does.not.exist"}, - {name: "sap.ui.lib4"}, - ] + dependencies: [], + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "test-project" + }, + framework: { + name: "SAPUI5", + version: "1.75.0", + libraries: [ + {name: "sap.ui.lib1"}, + {name: "does.not.exist"}, + {name: "sap.ui.lib4"}, + ] + } } - }); + }; - sinon.stub(normalizer, "generateDependencyTree").resolves(translatorTree); - sinon.stub(projectPreprocessor, "processTree").withArgs(translatorTree).resolves(projectPreprocessorTree); + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); sinon.stub(pacote, "extract").resolves(); - sinon.stub(Installer.prototype, "readJson") + sinon.stub(t.context.Installer.prototype, "readJson") .callThrough() .withArgs(path.join(fakeBaseDir, "homedir", ".ui5", "framework", "packages", @@ -937,7 +720,7 @@ test.serial( }); await t.throwsAsync(async () => { - await normalizer.generateProjectTree(); + await t.context.ui5Framework.enrichProjectGraph(projectGraph); }, { message: `Resolution of framework libraries failed with errors: Failed to resolve library does.not.exist: Could not find library "does.not.exist"`}); diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js new file mode 100644 index 00000000000..a45a00a7ba3 --- /dev/null +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -0,0 +1,518 @@ +const path = require("path"); +const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); + +const DependencyTreeProvider = require("../../../../lib/graph/providers/DependencyTree"); +const projectGraphBuilder = require("../../../../lib/graph/projectGraphBuilder"); + +const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); +const libraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.e"); + +test.beforeEach((t) => { + t.context.Sapui5ResolverStub = sinon.stub(); + t.context.Sapui5ResolverInstallStub = sinon.stub(); + t.context.Sapui5ResolverStub.callsFake(() => { + return { + install: t.context.Sapui5ResolverInstallStub + }; + }); + t.context.Sapui5ResolverResolveVersionStub = sinon.stub(); + t.context.Sapui5ResolverStub.resolveVersion = t.context.Sapui5ResolverResolveVersionStub; + mock("../../../../lib/ui5Framework/Sapui5Resolver", t.context.Sapui5ResolverStub); + + t.context.Openui5ResolverStub = sinon.stub(); + mock("../../../../lib/ui5Framework/Openui5Resolver", t.context.Openui5ResolverStub); + + // Re-require to ensure that mocked modules are used + t.context.ui5Framework = mock.reRequire("../../../../lib/graph/helpers/ui5Framework"); + t.context.utils = t.context.ui5Framework._utils; +}); + +test.afterEach.always((t) => { + sinon.restore(); + mock.stopAll(); +}); + +test.serial("ui5Framework translator should throw an error when framework version is not defined", async (t) => { + const {ui5Framework, utils, Sapui5ResolverInstallStub} = t.context; + + const dependencyTree = { + id: "test1", + version: "1.0.0", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.75.0" + } + } + }; + + const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; + const libraryMetadata = {fake: "metadata"}; + + const getFrameworkLibrariesFromGraphStub = sinon.stub(utils, "getFrameworkLibrariesFromGraph") + .resolves(referencedLibraries); + + Sapui5ResolverInstallStub.resolves({libraryMetadata}); + + + const addProjectToGraphStub = sinon.stub(); + const ProjectProcessorStub = sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph); + + t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGraph should be called once"); + + t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{ + cwd: dependencyTree.path, + version: dependencyTree.configuration.framework.version + }], "Sapui5Resolver#constructor should be called with expected args"); + + t.is(t.context.Sapui5ResolverInstallStub.callCount, 1, "Sapui5Resolver#install should be called once"); + t.deepEqual(t.context.Sapui5ResolverInstallStub.getCall(0).args, [ + referencedLibraries + ], "Sapui5Resolver#install should be called with expected args"); + + t.is(ProjectProcessorStub.callCount, 1, "ProjectProcessor#constructor should be called once"); + t.deepEqual(ProjectProcessorStub.getCall(0).args, [{libraryMetadata}], + "ProjectProcessor#constructor should be called with expected args"); + + t.is(addProjectToGraphStub.callCount, 3, "ProjectProcessor#getProject should be called 3 times"); + t.deepEqual(addProjectToGraphStub.getCall(0).args[0], referencedLibraries[0], + "ProjectProcessor#addProjectToGraph should be called with expected first arg (call 1)"); + t.deepEqual(addProjectToGraphStub.getCall(1).args[0], referencedLibraries[1], + "ProjectProcessor#addProjectToGraph should be called with expected first arg (call 2)"); + t.deepEqual(addProjectToGraphStub.getCall(2).args[0], referencedLibraries[2], + "ProjectProcessor#addProjectToGraph should be called with expected first arg (call 3)"); + + + const callbackStub = sinon.stub().resolves(); + await projectGraph.traverseDepthFirst(callbackStub); + + t.is(callbackStub.callCount, 1, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + t.deepEqual(callbackCalls, [ + "application.a" + ], "Traversed graph in correct order"); +}); + +test.serial("generateDependencyTree (with versionOverride)", async (t) => { + const { + ui5Framework, utils, + Sapui5ResolverStub, Sapui5ResolverResolveVersionStub, Sapui5ResolverInstallStub + } = t.context; + + const dependencyTree = { + id: "test1", + version: "1.0.0", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.75.0" + } + } + }; + + const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; + const libraryMetadata = {fake: "metadata"}; + + sinon.stub(utils, "getFrameworkLibrariesFromGraph").resolves(referencedLibraries); + + Sapui5ResolverInstallStub.resolves({libraryMetadata}); + + Sapui5ResolverResolveVersionStub.resolves("1.99.9"); + + const addProjectToGraphStub = sinon.stub(); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride: "1.99"}); + + t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ + cwd: dependencyTree.path, + version: "1.99.9" + }], "Sapui5Resolver#constructor should be called with expected args"); +}); + +test.serial("generateDependencyTree should throw error when no framework version is provided", async (t) => { + const {ui5Framework} = t.context; + const dependencyTree = { + id: "test-id", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5" + } + } + }; + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await t.throwsAsync(async () => { + await ui5Framework.enrichProjectGraph(projectGraph); + }, {message: "No framework version defined for root project application.a"}); + + await t.throwsAsync(async () => { + await ui5Framework.enrichProjectGraph(projectGraph, { + versionOverride: "1.75.0" + }); + }, {message: "No framework version defined for root project application.a"}); +}); + +test.serial("generateDependencyTree should skip framework project without version", async (t) => { + const {ui5Framework} = t.context; + const dependencyTree = { + id: "@sapui5/project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5" + } + } + }; + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph); + t.is(projectGraph.getAllProjects().length, 1, "Project graph should remain unchanged"); +}); + +test.serial("generateDependencyTree should skip framework project with version and framework config", async (t) => { + const {ui5Framework} = t.context; + const dependencyTree = { + id: "@sapui5/project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.2.3", + libraries: [ + { + name: "lib1", + optional: true + } + ] + } + } + }; + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph); + t.is(projectGraph.getAllProjects().length, 1, "Project graph should remain unchanged"); +}); + +test.serial("generateDependencyTree should throw for framework project with dependency missing in graph", async (t) => { + const {ui5Framework} = t.context; + const dependencyTree = { + id: "@sapui5/project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.2.3", + libraries: [ + { + name: "lib1" + } + ] + } + } + }; + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + const err = await t.throwsAsync(ui5Framework.enrichProjectGraph(projectGraph)); + t.is(err.message, `Missing framework dependency lib1 for project application.a`, + "Threw with expected error message"); +}); + +test.serial("generateDependencyTree should ignore root project without framework configuration", async (t) => { + const {ui5Framework} = t.context; + const dependencyTree = { + id: "@sapui5/project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + } + } + }; + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph); + t.is(projectGraph.getAllProjects().length, 1, "Project graph should remain unchanged"); +}); + +test.serial("utils.shouldIncludeDependency", (t) => { + const {utils} = t.context; + // root project dependency should always be included + t.true(utils.shouldIncludeDependency({}, true)); + t.true(utils.shouldIncludeDependency({optional: true}, true)); + t.true(utils.shouldIncludeDependency({optional: false}, true)); + t.true(utils.shouldIncludeDependency({optional: null}, true)); + t.true(utils.shouldIncludeDependency({optional: "abc"}, true)); + t.true(utils.shouldIncludeDependency({development: true}, true)); + t.true(utils.shouldIncludeDependency({development: false}, true)); + t.true(utils.shouldIncludeDependency({development: null}, true)); + t.true(utils.shouldIncludeDependency({development: "abc"}, true)); + t.true(utils.shouldIncludeDependency({foo: true}, true)); + + t.true(utils.shouldIncludeDependency({}, false)); + t.false(utils.shouldIncludeDependency({optional: true}, false)); + t.true(utils.shouldIncludeDependency({optional: false}, false)); + t.true(utils.shouldIncludeDependency({optional: null}, false)); + t.true(utils.shouldIncludeDependency({optional: "abc"}, false)); + t.false(utils.shouldIncludeDependency({development: true}, false)); + t.true(utils.shouldIncludeDependency({development: false}, false)); + t.true(utils.shouldIncludeDependency({development: null}, false)); + t.true(utils.shouldIncludeDependency({development: "abc"}, false)); + t.true(utils.shouldIncludeDependency({foo: true}, false)); + + // Having both optional and development should not be the case, but that should be validated beforehand + t.true(utils.shouldIncludeDependency({optional: true, development: true}, true)); + t.false(utils.shouldIncludeDependency({optional: true, development: true}, false)); +}); + +test.serial("utils.getFrameworkLibrariesFromTree: Project without dependencies", async (t) => { + const {utils} = t.context; + const dependencyTree = { + id: "test-id", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.100.0", + libraries: [] + } + } + }; + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + const ui5Dependencies = await utils.getFrameworkLibrariesFromGraph(projectGraph); + t.deepEqual(ui5Dependencies, []); +}); + +test.serial("utils.getFrameworkLibrariesFromTree: Framework project", async (t) => { + const {utils} = t.context; + const dependencyTree = { + id: "@sapui5/project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.100.0", + libraries: [ + { + name: "lib1" + } + ] + } + }, + dependencies: [{ + id: "@openui5/test1", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "library.d" + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "lib2" + }] + } + } + }] + }; + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + const ui5Dependencies = await utils.getFrameworkLibrariesFromGraph(projectGraph); + t.deepEqual(ui5Dependencies, []); +}); + + +test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dependency with libraries", async (t) => { + const {utils} = t.context; + const dependencyTree = { + id: "test-project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.100.0", + libraries: [{ + name: "lib1" + }, { + name: "lib2", + optional: true + }, { + name: "lib6", + development: true + }] + } + }, + dependencies: [{ + id: "test2", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "test2" + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "lib3" + }, { + name: "lib4", + optional: true + }] + } + }, + dependencies: [{ + id: "test3", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "test3" + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "lib5" + }, { + name: "lib7", + optional: true + }] + } + } + }] + }, { + id: "@openui5/lib8", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib8" + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "should.be.ignored" + }] + } + } + }, { + id: "@openui5/lib9", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib9" + } + } + }] + }; + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + const ui5Dependencies = await utils.getFrameworkLibrariesFromGraph(projectGraph); + t.deepEqual(ui5Dependencies, ["lib1", "lib2", "lib6", "lib3", "lib5"]); +}); + +// TODO test: ProjectProcessor diff --git a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js new file mode 100644 index 00000000000..e1f59bfac89 --- /dev/null +++ b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js @@ -0,0 +1,219 @@ +const test = require("ava"); +const path = require("path"); +const sinonGlobal = require("sinon"); +const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); +const applicationCPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.c"); +const applicationC2Path = path.join(__dirname, "..", "..", "..", "fixtures", "application.c2"); +const applicationC3Path = path.join(__dirname, "..", "..", "..", "fixtures", "application.c3"); +const applicationDPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.d"); +const applicationFPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.f"); +const applicationGPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.g"); +const errApplicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "err.application.a"); +const cycleDepsBasePath = path.join(__dirname, "..", "..", "..", "fixtures", "cyclic-deps", "node_modules"); + +const projectGraphBuilder = require("../../../../lib/graph/projectGraphBuilder"); +const NodePackageDependenciesProvider = require("../../../../lib/graph/providers/NodePackageDependencies"); + +test.beforeEach((t) => { + t.context.sinon = sinonGlobal.createSandbox(); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); +}); + +function testGraphCreationBfs(...args) { + return _testGraphCreation(...args, true); +} + +function testGraphCreationDfs(...args) { + return _testGraphCreation(...args, false); +} + +async function _testGraphCreation(t, npmProvider, expectedOrder, bfs) { + if (bfs === undefined) { + throw new Error("Test error: Parameter 'bfs' must be specified"); + } + const projectGraph = await projectGraphBuilder(npmProvider); + const callbackStub = t.context.sinon.stub().resolves(); + if (bfs) { + await projectGraph.traverseBreadthFirst(callbackStub); + } else { + await projectGraph.traverseDepthFirst(callbackStub); + } + + t.is(callbackStub.callCount, expectedOrder.length, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, expectedOrder, "Traversed graph in correct order"); + return projectGraph; +} + +test("AppA: project with collection dependency", async (t) => { + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationAPath + }); + await testGraphCreationDfs(t, npmProvider, [ + "library.d", + "library.a", + "library.b", + "library.c", + "application.a", + ]); +}); + +test("AppC: project with dependency with optional dependency resolved through root project", async (t) => { + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationCPath + }); + await testGraphCreationDfs(t, npmProvider, [ + "library.d", + "library.e", + "application.c", + ]); +}); + +test("AppC2: project with dependency with optional dependency resolved through other project", async (t) => { + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationC2Path + }); + await testGraphCreationDfs(t, npmProvider, [ + "library.d", + "library.e", + "library.d-depender", + "application.c2" + ]); +}); + +test("AppC3: project with dependency with optional dependency resolved " + + "through other project (but got hoisted)", async (t) => { + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationC3Path + }); + await testGraphCreationDfs(t, npmProvider, [ + "library.d", + "library.e", + "library.d-depender", + "application.c3" + ]); +}); + +test("AppD: project with dependency with unresolved optional dependency", async (t) => { + // application.d`s dependency "library.e" has an optional dependency to "library.d" + // which is already present in the node_modules directory of library.e + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationDPath + }); + await testGraphCreationDfs(t, npmProvider, [ + "library.e", + "application.d" + ]); +}); + +test("AppF: UI5-dependencies in package.json are ignored", async (t) => { + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationFPath + }); + await testGraphCreationDfs(t, npmProvider, [ + "library.d", + "library.e", + "application.f" + ]); +}); + +test("AppG: project with npm 'optionalDependencies' should not fail if optional dependency cannot be resolved", + async (t) => { + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationGPath + }); + await testGraphCreationDfs(t, npmProvider, [ + "library.d", + "application.g" + ]); + }); + +test("AppCycleA: cyclic dev deps", async (t) => { + const applicationCycleAPath = path.join(cycleDepsBasePath, "application.cycle.a"); + + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationCycleAPath + }); + await testGraphCreationDfs(t, npmProvider, [ + "library.cycle.a", + "library.cycle.b", + "component.cycle.a", + "application.cycle.a" + ]); +}); + +test("AppCycleB: cyclic npm deps - Cycle via devDependency on second level", async (t) => { + const applicationCycleBPath = path.join(cycleDepsBasePath, "application.cycle.b"); + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationCycleBPath + }); + await testGraphCreationDfs(t, npmProvider, [ + "module.e", + "module.d", + "application.cycle.b" + ]); +}); + +test("AppCycleC: cyclic npm deps - Cycle on third level (one indirection)", async (t) => { + const applicationCycleCPath = path.join(cycleDepsBasePath, "application.cycle.c"); + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationCycleCPath + }); + await testGraphCreationDfs(t, npmProvider, [ + "module.f", + "module.g", + "application.cycle.c" + ]); + await testGraphCreationBfs(t, npmProvider, [ + "application.cycle.c", + "module.f", + "module.g", + ]); +}); + +test("AppCycleD: cyclic npm deps - Cycles everywhere", async (t) => { + const applicationCycleDPath = path.join(cycleDepsBasePath, "application.cycle.d"); + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationCycleDPath + }); + + const error = await t.throwsAsync(testGraphCreationDfs(t, npmProvider, [])); + t.is(error.message, + `Detected cyclic dependency chain: application.cycle.d -> module.h* -> module.i -> module.k -> module.h*`); +}); + +test("AppCycleE: cyclic npm deps - Cycle via devDependency", async (t) => { + const applicationCycleEPath = path.join(cycleDepsBasePath, "application.cycle.e"); + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationCycleEPath + }); + await testGraphCreationDfs(t, npmProvider, [ + "module.l", + "module.m", + "application.cycle.e" + ]); +}); + +test("Error: missing package.json", async (t) => { + const dir = path.parse(__dirname).root; + const npmProvider = new NodePackageDependenciesProvider({ + cwd: dir + }); + const error = await t.throwsAsync(testGraphCreationDfs(t, npmProvider, [])); + t.is(error.message, `Failed to locate package.json for directory ${dir}`); +}); + +test("Error: missing dependency", async (t) => { + const npmProvider = new NodePackageDependenciesProvider({ + cwd: errApplicationAPath + }); + const error = await t.throwsAsync(testGraphCreationDfs(t, npmProvider, [])); + t.is(error.message, + `Unable to locate module library.xx via resolve logic: Cannot find module 'library.xx/package.json' from ` + + `'${errApplicationAPath}'`); +}); diff --git a/packages/project/test/lib/index.js b/packages/project/test/lib/index.js index 7c4d78f9f99..a4b357b39e8 100644 --- a/packages/project/test/lib/index.js +++ b/packages/project/test/lib/index.js @@ -2,8 +2,8 @@ const test = require("ava"); const index = require("../../index"); test("index.js exports all expected modules", (t) => { - t.truthy(index.normalizer, "Module exported"); - t.truthy(index.projectPreprocessor, "Module exported"); + t.truthy(index.builder, "Module exported"); + t.truthy(index.generateProjectGraph, "Module exported"); t.truthy(index.ui5Framework.Openui5Resolver, "Module exported"); t.truthy(index.ui5Framework.Sapui5Resolver, "Module exported"); @@ -11,6 +11,6 @@ test("index.js exports all expected modules", (t) => { t.truthy(index.validation.validator, "Module exported"); t.truthy(index.validation.ValidationError, "Module exported"); - t.truthy(index.translators.npm, "Module exported"); - t.truthy(index.translators.static, "Module exported"); + t.truthy(index.graph.ProjectGraph, "Module exported"); + t.truthy(index.graph.projectGraphBuilder, "Module exported"); }); diff --git a/packages/project/test/lib/normalizer.js b/packages/project/test/lib/normalizer.js deleted file mode 100644 index e5d0d4d1040..00000000000 --- a/packages/project/test/lib/normalizer.js +++ /dev/null @@ -1,70 +0,0 @@ -const test = require("ava"); -const sinon = require("sinon"); -const normalizer = require("../..").normalizer; -const projectPreprocessor = require("../../lib/projectPreprocessor"); -const ui5Framework = require("../../lib/translators/ui5Framework"); - -test.beforeEach((t) => { - t.context.npmTranslatorStub = sinon.stub(require("../..").translators.npm); - t.context.staticTranslatorStub = sinon.stub(require("../..").translators.static); -}); - -test.afterEach.always(() => { - sinon.restore(); -}); - -test.serial("Uses npm translator as default strategy", (t) => { - normalizer.generateDependencyTree(); - t.truthy(t.context.npmTranslatorStub.generateDependencyTree.called); -}); - -test.serial("Uses static translator as strategy", (t) => { - normalizer.generateDependencyTree({ - translatorName: "static" - }); - t.truthy(t.context.staticTranslatorStub.generateDependencyTree.called); -}); - -test.serial("Generate project tree using with overwritten config path", async (t) => { - sinon.stub(normalizer, "generateDependencyTree").resolves({configPath: "defaultPath/config.json"}); - const projectPreprocessorStub = sinon.stub(projectPreprocessor, "processTree").resolves(true); - await normalizer.generateProjectTree({configPath: "newPath/config.json"}); - t.deepEqual(projectPreprocessorStub.getCall(0).args[0], { - configPath: "newPath/config.json" - }, "Process tree with config loaded from custom path"); -}); - -test.serial("Pass frameworkOptions to ui5Framework translator", async (t) => { - const options = { - frameworkOptions: { - versionOverride: "1.2.3" - } - }; - const tree = { - metadata: { - name: "test" - }, - framework: {} - }; - - sinon.stub(normalizer, "generateDependencyTree").resolves({configPath: "defaultPath/config.json"}); - sinon.stub(projectPreprocessor, "processTree").resolves(tree); - - const ui5FrameworkGenerateDependencyTreeStub = sinon.stub(ui5Framework, "generateDependencyTree").resolves(null); - - await normalizer.generateProjectTree(options); - - t.is(ui5FrameworkGenerateDependencyTreeStub.callCount, 1, - "ui5Framework.generateDependencyTree should be called once"); - t.deepEqual(ui5FrameworkGenerateDependencyTreeStub.getCall(0).args, [tree, {versionOverride: "1.2.3"}], - "ui5Framework.generateDependencyTree should be called with expected args"); -}); - -test.serial("Error: Throws if unknown translator should be used as strategy", async (t) => { - const translatorName = "notExistingTranslator"; - return normalizer.generateDependencyTree({ - translatorName - }).catch((error) => { - t.is(error.message, `Unknown translator ${translatorName}`); - }); -}); diff --git a/packages/project/test/lib/projectPreprocessor.js b/packages/project/test/lib/projectPreprocessor.js deleted file mode 100644 index 4b821ad2b23..00000000000 --- a/packages/project/test/lib/projectPreprocessor.js +++ /dev/null @@ -1,2394 +0,0 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const path = require("path"); -const gracefulFs = require("graceful-fs"); -const validator = require("../../lib/validation/validator"); -const ValidationError = require("../../lib/validation/ValidationError"); -const projectPreprocessor = require("../../lib/projectPreprocessor"); -const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); -const applicationBPath = path.join(__dirname, "..", "fixtures", "application.b"); -const applicationCPath = path.join(__dirname, "..", "fixtures", "application.c"); -const libraryAPath = path.join(__dirname, "..", "fixtures", "collection", "library.a"); -const libraryBPath = path.join(__dirname, "..", "fixtures", "collection", "library.b"); -// const libraryCPath = path.join(__dirname, "..", "fixtures", "collection", "library.c"); -const libraryDPath = path.join(__dirname, "..", "fixtures", "library.d"); -const cycleDepsBasePath = path.join(__dirname, "..", "fixtures", "cyclic-deps", "node_modules"); -const pathToInvalidModule = path.join(__dirname, "..", "fixtures", "invalidModule"); - -test.afterEach.always((t) => { - mock.stopAll(); - sinon.restore(); -}); - -test("Project with inline configuration", (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "1.0", - type: "application", - metadata: { - name: "xy" - } - }; - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - _level: 0, - _isRoot: true, - type: "application", - metadata: { - name: "xy", - namespace: "id1" - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - webapp: "webapp" - } - }, - pathMappings: { - "/": "webapp", - } - }, - dependencies: [], - id: "application.a", - kind: "project", - version: "1.0.0", - specVersion: "1.0", - path: applicationAPath - }, "Parsed correctly"); - }); -}); - -test("Project with configPath", (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - configPath: path.join(applicationBPath, "ui5.yaml"), // B, not A - just to have something different - dependencies: [], - version: "1.0.0" - }; - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - _level: 0, - _isRoot: true, - type: "application", - metadata: { - name: "application.b", - namespace: "id1" - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - webapp: "webapp" - } - }, - pathMappings: { - "/": "webapp", - } - }, - dependencies: [], - id: "application.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: applicationAPath, - configPath: path.join(applicationBPath, "ui5.yaml") - }, "Parsed correctly"); - }); -}); - -test("Project with ui5.yaml at default location", (t) => { - const tree = { - id: "application.a", - version: "1.0.0", - path: applicationAPath, - dependencies: [] - }; - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - _level: 0, - _isRoot: true, - type: "application", - metadata: { - name: "application.a", - namespace: "id1" - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - webapp: "webapp" - } - }, - pathMappings: { - "/": "webapp", - } - }, - dependencies: [], - id: "application.a", - kind: "project", - version: "1.0.0", - specVersion: "1.0", - path: applicationAPath - }, "Parsed correctly"); - }); -}); - -test("Project with ui5.yaml at default location and some configuration", (t) => { - const tree = { - id: "application.c", - version: "1.0.0", - path: applicationCPath, - dependencies: [] - }; - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - _level: 0, - _isRoot: true, - type: "application", - metadata: { - name: "application.c", - namespace: "id1" - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - webapp: "src" - } - }, - pathMappings: { - "/": "src", - } - }, - dependencies: [], - id: "application.c", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: applicationCPath - }, "Parsed correctly"); - }); -}); - -test("Missing configuration for root project", async (t) => { - const tree = { - id: "application.a", - path: "non-existent", - dependencies: [] - }; - const exception = await t.throwsAsync(projectPreprocessor.processTree(tree)); - - t.true(exception.message.includes("Failed to read configuration for project application.a"), - "Error message should contain expected reason"); -}); - -test("Missing id for root project", (t) => { - const tree = { - path: path.join(__dirname, "../fixtures/application.a"), - dependencies: [] - }; - return t.throwsAsync(projectPreprocessor.processTree(tree), - {message: "Encountered project with missing id (root project)"}, "Rejected with error"); -}); - -test("No type configured for root project", (t) => { - const tree = { - id: "application.a", - version: "1.0.0", - specVersion: "0.1", - path: path.join(__dirname, "../fixtures/application.a"), - dependencies: [], - metadata: { - name: "application.a", - namespace: "id1" - } - }; - return t.throwsAsync(projectPreprocessor.processTree(tree), - {message: "No type configured for root project application.a"}, - "Rejected with error"); -}); - -test("Missing dependencies", (t) => { - const tree = ({ - id: "application.a", - version: "1.0.0", - path: applicationAPath, - dependencies: [] - }); - return t.notThrowsAsync(projectPreprocessor.processTree(tree), - "Gracefully accepted project with no dependency attribute"); -}); - -test("Single non-root application-project", (t) => { - const tree = ({ - id: "library.a", - version: "1.0.0", - path: libraryAPath, - dependencies: [{ - id: "application.a", - version: "1.0.0", - path: applicationAPath, - dependencies: [] - }] - }); - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree.id, "library.a", "Correct root project"); - t.deepEqual(parsedTree.dependencies.length, 1, "application-project dependency was not ignored"); - t.deepEqual(parsedTree.dependencies[0].id, "application.a", "application-project is on second level"); - }); -}); - -test("Multiple non-root application-projects on same level", (t) => { - const tree = ({ - id: "library.a", - version: "1.0.0", - path: libraryAPath, - dependencies: [{ - id: "application.a", - version: "1.0.0", - path: applicationAPath, - dependencies: [] - }, { - id: "application.b", - version: "1.0.0", - path: applicationBPath, - dependencies: [] - }] - }); - return t.throwsAsync(projectPreprocessor.processTree(tree), {message: - "Found at least two projects application.a and application.b of type application with the same distance to " + - "the root project. Only one project of type application can be used. Failed to decide which one to ignore."}, - "Rejected with error"); -}); - -test("Multiple non-root application-projects on different levels", (t) => { - const tree = ({ - id: "library.a", - version: "1.0.0", - path: libraryAPath, - dependencies: [{ - id: "application.a", - version: "1.0.0", - path: applicationAPath, - dependencies: [] - }, { - id: "library.b", - version: "1.0.0", - path: libraryBPath, - dependencies: [{ - id: "application.b", - version: "1.0.0", - path: applicationBPath, - dependencies: [] - }] - }] - }); - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree.id, "library.a", "Correct root project"); - t.deepEqual(parsedTree.dependencies.length, 2, "No dependency of the first level got ignored"); - t.deepEqual(parsedTree.dependencies[0].id, "application.a", "First application-project did not get ignored"); - t.deepEqual(parsedTree.dependencies[1].dependencies.length, 0, - "Second (deeper) application-project got ignored"); - }); -}); - -test("Root- and non-root application-projects", (t) => { - const tree = ({ - id: "application.a", - version: "1.0.0", - path: applicationAPath, - dependencies: [{ - id: "library.a", - version: "1.0.0", - path: libraryAPath, - dependencies: [{ - id: "application.b", - version: "1.0.0", - path: applicationBPath, - dependencies: [] - }] - }] - }); - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree.id, "application.a", "Correct root project"); - t.deepEqual(parsedTree.dependencies[0].id, "library.a", "Correct library dependency"); - t.deepEqual(parsedTree.dependencies[0].dependencies[0], undefined, - "Second application-project dependency was ignored"); - }); -}); - -test("Ignores additional application-projects", (t) => { - const tree = ({ - id: "application.a", - version: "1.0.0", - path: applicationAPath, - dependencies: [{ - id: "application.b", - version: "1.0.0", - path: applicationBPath, - dependencies: [] - }] - }); - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - _level: 0, - _isRoot: true, - type: "application", - metadata: { - name: "application.a", - namespace: "id1" - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - webapp: "webapp" - } - }, - pathMappings: { - "/": "webapp", - } - }, - dependencies: [], - id: "application.a", - kind: "project", - version: "1.0.0", - specVersion: "1.0", - path: applicationAPath - }, "Parsed correctly"); - }); -}); - -test("Inconsistent dependencies with same ID", (t) => { - // The one closer to the root should win - const tree = { - id: "application.a", - version: "1.0.0", - specVersion: "0.1", - path: applicationAPath, - type: "application", - metadata: { - name: "application.a" - }, - dependencies: [ - { - id: "library.d", - version: "1.0.0", - specVersion: "0.1", - path: libraryDPath, - type: "library", - metadata: { - name: "library.d", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "main/src", - test: "main/test" - } - } - }, - dependencies: [ - { - id: "library.a", - version: "1.0.0", - specVersion: "0.1", - path: libraryBPath, // B, not A - inconsistency! - type: "library", - metadata: { - name: "library.XY", - }, - dependencies: [] - } - ] - }, - { - id: "library.a", - version: "1.0.0", - specVersion: "0.1", - path: libraryAPath, - type: "library", - metadata: { - name: "library.a", - }, - dependencies: [] - } - ] - }; - return projectPreprocessor.processTree(tree).then((parsedTree) => { - t.deepEqual(parsedTree, { - id: "application.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: applicationAPath, - _level: 0, - _isRoot: true, - type: "application", - metadata: { - name: "application.a", - namespace: "id1" - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - webapp: "webapp" - } - }, - pathMappings: { - "/": "webapp" - } - }, - dependencies: [ - { - id: "library.d", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: libraryDPath, - _level: 1, - type: "library", - metadata: { - name: "library.d", - namespace: "library/d", - copyright: "Some fancy copyright", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "main/src", - test: "main/test" - } - }, - pathMappings: { - "/resources/": "main/src", - "/test-resources/": "main/test" - } - }, - dependencies: [ - { - id: "library.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: libraryAPath, - _level: 1, - type: "library", - metadata: { - name: "library.a", - namespace: "library/a", - copyright: "Some fancy copyright ${currentYear}", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "src", - test: "test" - } - }, - pathMappings: { - "/resources/": "src", - "/test-resources/": "test" - } - }, - dependencies: [] - } - ] - }, - { - id: "library.a", - kind: "project", - version: "1.0.0", - specVersion: "0.1", - path: libraryAPath, - _level: 1, - type: "library", - metadata: { - name: "library.a", - namespace: "library/a", - copyright: "Some fancy copyright ${currentYear}", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "src", - test: "test" - } - }, - pathMappings: { - "/resources/": "src", - "/test-resources/": "test" - } - }, - dependencies: [] - } - ] - }, "Parsed correctly"); - }); -}); - -test("Project tree A with inline configs", (t) => { - return projectPreprocessor.processTree(treeAWithInlineConfigs).then((parsedTree) => { - t.deepEqual(parsedTree, expectedTreeAWithInlineConfigs, "Parsed correctly"); - }); -}); - -test("Project tree A with configPaths", (t) => { - return projectPreprocessor.processTree(treeAWithConfigPaths).then((parsedTree) => { - t.deepEqual(parsedTree, expectedTreeAWithConfigPaths, "Parsed correctly"); - }); -}); - -test("Project tree A with default YAMLs", (t) => { - return projectPreprocessor.processTree(treeAWithDefaultYamls).then((parsedTree) => { - t.deepEqual(parsedTree, expectedTreeAWithDefaultYamls, "Parsed correctly"); - }); -}); - -test("Project tree B with inline configs", (t) => { - // Tree B depends on Library B which has a dependency to Library D - return projectPreprocessor.processTree(treeBWithInlineConfigs).then((parsedTree) => { - t.deepEqual(parsedTree, expectedTreeBWithInlineConfigs, "Parsed correctly"); - }); -}); - -test("Project tree Cycle A with inline configs", (t) => { - // Tree B depends on Library B which has a dependency to Library D - return projectPreprocessor.processTree(treeApplicationCycleA).then((parsedTree) => { - t.deepEqual(parsedTree, expectedTreeApplicationCycleA, "Parsed correctly"); - }); -}); - -test("Project with nested invalid dependencies", (t) => { - return projectPreprocessor.processTree(treeWithInvalidModules).then((parsedTree) => { - t.deepEqual(parsedTree, expectedTreeWithInvalidModules); - }); -}); - -/* ========================= */ -/* ======= Test data ======= */ - -/* === Invalid Modules */ -const treeWithInvalidModules = { - id: "application.a", - path: applicationAPath, - dependencies: [ - // A - { - id: "library.a", - path: libraryAPath, - dependencies: [ - { - // C - invalid - should be missing in preprocessed tree - id: "module.c", - dependencies: [], - path: pathToInvalidModule, - version: "1.0.0" - }, - { - // D - invalid - should be missing in preprocessed tree - id: "module.d", - dependencies: [], - path: pathToInvalidModule, - version: "1.0.0" - } - ], - version: "1.0.0", - specVersion: "1.0", - type: "library", - metadata: {name: "library.a"} - }, - // B - { - id: "library.b", - path: libraryBPath, - dependencies: [ - { - // C - invalid - should be missing in preprocessed tree - id: "module.c", - dependencies: [], - path: pathToInvalidModule, - version: "1.0.0" - }, - { - // D - invalid - should be missing in preprocessed tree - id: "module.d", - dependencies: [], - path: pathToInvalidModule, - version: "1.0.0" - } - ], - version: "1.0.0", - specVersion: "1.0", - type: "library", - metadata: {name: "library.b"} - } - ], - version: "1.0.0", - specVersion: "1.0", - type: "application", - metadata: { - name: "application.a" - } -}; - -const expectedTreeWithInvalidModules = { - "id": "application.a", - "path": applicationAPath, - "dependencies": [{ - "id": "library.a", - "path": libraryAPath, - "dependencies": [], - "version": "1.0.0", - "specVersion": "1.0", - "type": "library", - "metadata": { - "name": "library.a", - "namespace": "library/a", - "copyright": "Some fancy copyright ${currentYear}" - }, - "kind": "project", - "_level": 1, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - } - }, { - "id": "library.b", - "path": libraryBPath, - "dependencies": [], - "version": "1.0.0", - "specVersion": "1.0", - "type": "library", - "metadata": { - "name": "library.b", - "namespace": "library/b", - "copyright": "Some fancy copyright ${currentYear}" - }, - "kind": "project", - "_level": 1, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - } - }], - "version": "1.0.0", - "specVersion": "1.0", - "type": "application", - "metadata": { - "name": "application.a", - "namespace": "id1" - }, - "_level": 0, - "_isRoot": true, - "kind": "project", - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "webapp": "webapp" - } - }, - "pathMappings": { - "/": "webapp" - } - } -}; - -/* === Tree A === */ -const treeAWithInlineConfigs = { - id: "application.a", - version: "1.0.0", - specVersion: "1.0", - path: applicationAPath, - type: "application", - metadata: { - name: "application.a", - }, - dependencies: [ - { - id: "library.d", - version: "1.0.0", - specVersion: "0.1", - path: libraryDPath, - type: "library", - metadata: { - name: "library.d", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "main/src", - test: "main/test" - } - } - }, - dependencies: [ - { - id: "library.a", - version: "1.0.0", - specVersion: "0.1", - path: libraryAPath, - type: "library", - metadata: { - name: "library.a", - }, - dependencies: [] - } - ] - }, - { - id: "library.a", - version: "1.0.0", - specVersion: "0.1", - path: libraryAPath, - type: "library", - metadata: { - name: "library.a" - }, - dependencies: [] - } - ] -}; - -const treeAWithConfigPaths = { - id: "application.a", - version: "1.0.0", - path: applicationAPath, - configPath: path.join(applicationAPath, "ui5.yaml"), - dependencies: [ - { - id: "library.d", - version: "1.0.0", - path: libraryDPath, - configPath: path.join(libraryDPath, "ui5.yaml"), - dependencies: [ - { - id: "library.a", - version: "1.0.0", - path: libraryAPath, - configPath: path.join(libraryAPath, "ui5.yaml"), - dependencies: [] - } - ] - }, - { - id: "library.a", - version: "1.0.0", - path: libraryAPath, - configPath: path.join(libraryAPath, "ui5.yaml"), - dependencies: [] - } - ] -}; - -const treeAWithDefaultYamls = { - id: "application.a", - version: "1.0.0", - path: applicationAPath, - dependencies: [ - { - id: "library.d", - version: "1.0.0", - path: libraryDPath, - dependencies: [ - { - id: "library.a", - version: "1.0.0", - path: libraryAPath, - dependencies: [] - } - ] - }, - { - id: "library.a", - version: "1.0.0", - path: libraryAPath, - dependencies: [] - } - ] -}; - -const expectedTreeAWithInlineConfigs = { - "id": "application.a", - "kind": "project", - "version": "1.0.0", - "specVersion": "1.0", - "path": applicationAPath, - "_level": 0, - "_isRoot": true, - "type": "application", - "metadata": { - "name": "application.a", - "namespace": "id1" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "webapp": "webapp" - } - }, - "pathMappings": { - "/": "webapp" - } - }, - "dependencies": [ - { - "id": "library.d", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryDPath, - "_level": 1, - "type": "library", - "metadata": { - "name": "library.d", - "namespace": "library/d", - "copyright": "Some fancy copyright" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "main/src", - "test": "main/test" - } - }, - "pathMappings": { - "/resources/": "main/src", - "/test-resources/": "main/test" - } - }, - "dependencies": [ - { - "id": "library.a", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryAPath, - "_level": 1, - "type": "library", - "metadata": { - "name": "library.a", - "namespace": "library/a", - "copyright": "Some fancy copyright ${currentYear}", - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - }, - "dependencies": [] - } - ] - }, - { - "id": "library.a", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryAPath, - "_level": 1, - "type": "library", - "metadata": { - "name": "library.a", - "namespace": "library/a", - "copyright": "Some fancy copyright ${currentYear}", - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - }, - "dependencies": [] - } - ] -}; -const expectedTreeAWithDefaultYamls = expectedTreeAWithInlineConfigs; - -// This is expectedTreeAWithInlineConfigs with added configPath attributes -const expectedTreeAWithConfigPaths = { - "id": "application.a", - "kind": "project", - "version": "1.0.0", - "specVersion": "1.0", - "path": applicationAPath, - "configPath": path.join(applicationAPath, "ui5.yaml"), - "_level": 0, - "_isRoot": true, - "type": "application", - "metadata": { - "name": "application.a", - "namespace": "id1" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "webapp": "webapp" - } - }, - "pathMappings": { - "/": "webapp" - } - }, - "dependencies": [ - { - "id": "library.d", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryDPath, - "configPath": path.join(libraryDPath, "ui5.yaml"), - "_level": 1, - "type": "library", - "metadata": { - "name": "library.d", - "namespace": "library/d", - "copyright": "Some fancy copyright", - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "main/src", - "test": "main/test" - } - }, - "pathMappings": { - "/resources/": "main/src", - "/test-resources/": "main/test" - } - }, - "dependencies": [ - { - "id": "library.a", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryAPath, - "configPath": path.join(libraryAPath, "ui5.yaml"), - "_level": 1, - "type": "library", - "metadata": { - "name": "library.a", - "namespace": "library/a", - "copyright": "Some fancy copyright ${currentYear}", - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - }, - "dependencies": [] - } - ] - }, - { - "id": "library.a", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryAPath, - "configPath": path.join(libraryAPath, "ui5.yaml"), - "_level": 1, - "type": "library", - "metadata": { - "name": "library.a", - "namespace": "library/a", - "copyright": "Some fancy copyright ${currentYear}", - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - }, - "dependencies": [] - } - ] -}; - -/* === Tree B === */ -const treeBWithInlineConfigs = { - id: "application.b", - version: "1.0.0", - specVersion: "0.1", - path: applicationBPath, - type: "application", - metadata: { - name: "application.b" - }, - dependencies: [ - { - id: "library.b", - version: "1.0.0", - specVersion: "0.1", - path: libraryBPath, - type: "library", - metadata: { - name: "library.b", - }, - dependencies: [ - { - id: "library.d", - version: "1.0.0", - specVersion: "0.1", - path: libraryDPath, - type: "library", - metadata: { - name: "library.d", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "main/src", - test: "main/test" - } - } - }, - dependencies: [ - { - id: "library.a", - version: "1.0.0", - specVersion: "0.1", - path: libraryAPath, - type: "library", - metadata: { - name: "library.a" - }, - dependencies: [] - } - ] - } - ] - }, - { - id: "library.d", - version: "1.0.0", - specVersion: "0.1", - path: libraryDPath, - type: "library", - metadata: { - name: "library.d", - }, - resources: { - configuration: { - propertiesFileSourceEncoding: "ISO-8859-1", - paths: { - src: "main/src", - test: "main/test" - } - } - }, - dependencies: [ - { - id: "library.a", - version: "1.0.0", - specVersion: "0.1", - path: libraryAPath, - type: "library", - metadata: { - name: "library.a" - }, - dependencies: [] - } - ] - } - ] -}; - -const expectedTreeBWithInlineConfigs = { - "id": "application.b", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": applicationBPath, - "_level": 0, - "_isRoot": true, - "type": "application", - "metadata": { - "name": "application.b", - "namespace": "id1" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "webapp": "webapp" - } - }, - "pathMappings": { - "/": "webapp" - } - }, - "dependencies": [ - { - "id": "library.b", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryBPath, - "_level": 1, - "type": "library", - "metadata": { - "name": "library.b", - "namespace": "library/b", - "copyright": "Some fancy copyright ${currentYear}", - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - }, - "dependencies": [ - { - "id": "library.d", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryDPath, - "_level": 1, - "type": "library", - "metadata": { - "name": "library.d", - "namespace": "library/d", - "copyright": "Some fancy copyright" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "main/src", - "test": "main/test" - } - }, - "pathMappings": { - "/resources/": "main/src", - "/test-resources/": "main/test" - } - }, - "dependencies": [ - { - "id": "library.a", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryAPath, - "_level": 2, - "type": "library", - "metadata": { - "name": "library.a", - "namespace": "library/a", - "copyright": "Some fancy copyright ${currentYear}", - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - }, - "dependencies": [] - } - ] - } - ] - }, - { - "id": "library.d", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryDPath, - "_level": 1, - "type": "library", - "metadata": { - "name": "library.d", - "namespace": "library/d", - "copyright": "Some fancy copyright" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "main/src", - "test": "main/test" - } - }, - "pathMappings": { - "/resources/": "main/src", - "/test-resources/": "main/test" - } - }, - "dependencies": [ - { - "id": "library.a", - "kind": "project", - "version": "1.0.0", - "specVersion": "0.1", - "path": libraryAPath, - "_level": 2, - "type": "library", - "metadata": { - "name": "library.a", - "namespace": "library/a", - "copyright": "Some fancy copyright ${currentYear}" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - }, - "dependencies": [] - } - ] - } - ] -}; - -const treeApplicationCycleA = { - id: "application.cycle.a", - version: "1.0.0", - specVersion: "0.1", - path: path.join(cycleDepsBasePath, "application.cycle.a"), - type: "application", - metadata: { - name: "application.cycle.a", - }, - dependencies: [ - { - id: "component.cycle.a", - version: "1.0.0", - specVersion: "0.1", - path: path.join(cycleDepsBasePath, "component.cycle.a"), - type: "library", - metadata: { - name: "component.cycle.a", - }, - dependencies: [ - { - id: "library.cycle.a", - version: "1.0.0", - specVersion: "0.1", - path: path.join(cycleDepsBasePath, "library.cycle.a"), - type: "library", - metadata: { - name: "library.cycle.a", - }, - dependencies: [ - { - id: "component.cycle.a", - version: "1.0.0", - specVersion: "0.1", - path: path.join(cycleDepsBasePath, "component.cycle.a"), - type: "library", - metadata: { - name: "component.cycle.a", - }, - dependencies: [], - deduped: true - } - ] - }, - { - id: "library.cycle.b", - version: "1.0.0", - specVersion: "0.1", - path: path.join(cycleDepsBasePath, "library.cycle.b"), - type: "library", - metadata: { - name: "library.cycle.b", - }, - dependencies: [ - { - id: "component.cycle.a", - version: "1.0.0", - specVersion: "0.1", - path: path.join(cycleDepsBasePath, "component.cycle.a"), - type: "library", - metadata: { - name: "component.cycle.a", - }, - dependencies: [], - deduped: true - } - ] - }, - { - id: "application.cycle.a", - version: "1.0.0", - specVersion: "0.1", - path: path.join(cycleDepsBasePath, "application.cycle.a"), - type: "application", - metadata: { - name: "application.cycle.a", - }, - dependencies: [], - deduped: true - } - ] - } - ] -}; - -const expectedTreeApplicationCycleA = { - "id": "application.cycle.a", - "version": "1.0.0", - "specVersion": "0.1", - "path": path.join(cycleDepsBasePath, "application.cycle.a"), - "type": "application", - "metadata": { - "name": "application.cycle.a", - "namespace": "id1" - }, - "dependencies": [ - { - "id": "component.cycle.a", - "version": "1.0.0", - "specVersion": "0.1", - "path": path.join(cycleDepsBasePath, "component.cycle.a"), - "type": "library", - "metadata": { - "name": "component.cycle.a", - "namespace": "component/cycle/a", - "copyright": "${copyright}" - }, - "dependencies": [ - { - "id": "library.cycle.a", - "version": "1.0.0", - "specVersion": "0.1", - "path": path.join(cycleDepsBasePath, "library.cycle.a"), - "type": "library", - "metadata": { - "name": "library.cycle.a", - "namespace": "cycle/a", - "copyright": "${copyright}" - }, - "dependencies": [ - { - "id": "component.cycle.a", - "version": "1.0.0", - "specVersion": "0.1", - "path": path.join(cycleDepsBasePath, "component.cycle.a"), - "type": "library", - "metadata": { - "name": "component.cycle.a", - }, - "dependencies": [], - "deduped": true - } - ], - "kind": "project", - "_level": 2, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - } - }, - { - "id": "library.cycle.b", - "version": "1.0.0", - "specVersion": "0.1", - "path": path.join(cycleDepsBasePath, "library.cycle.b"), - "type": "library", - "metadata": { - "name": "library.cycle.b", - "namespace": "cycle/b", - "copyright": "${copyright}" - }, - "dependencies": [ - { - "id": "component.cycle.a", - "version": "1.0.0", - "specVersion": "0.1", - "path": path.join(cycleDepsBasePath, "component.cycle.a"), - "type": "library", - "metadata": { - "name": "component.cycle.a", - }, - "dependencies": [], - "deduped": true - } - ], - "kind": "project", - "_level": 2, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - } - }, - { - "id": "application.cycle.a", - "version": "1.0.0", - "specVersion": "0.1", - "path": path.join(cycleDepsBasePath, "application.cycle.a"), - "type": "application", - "metadata": { - "name": "application.cycle.a", - }, - "dependencies": [], - "deduped": true - } - ], - "kind": "project", - "_level": 1, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "src": "src", - "test": "test" - } - }, - "pathMappings": { - "/resources/": "src", - "/test-resources/": "test" - } - } - } - ], - "_level": 0, - "_isRoot": true, - "kind": "project", - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "ISO-8859-1", - "paths": { - "webapp": "webapp" - } - }, - "pathMappings": { - "/": "webapp" - } - } -}; - -/* ======= /Test data ======= */ -/* ========================= */ - -test("Application version in package.json data is missing", (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - type: "application", - metadata: { - name: "xy" - } - }; - return t.throwsAsync(projectPreprocessor.processTree(tree)).then((error) => { - t.is(error.message, "\"version\" is missing for project " + tree.id); - }); -}); - -test("Library version in package.json data is missing", (t) => { - const tree = { - id: "library.d", - path: libraryDPath, - dependencies: [], - type: "library", - metadata: { - name: "library.d" - } - }; - return t.throwsAsync(projectPreprocessor.processTree(tree)).then((error) => { - t.is(error.message, "\"version\" is missing for project " + tree.id); - }); -}); - -test("specVersion: Missing version", async (t) => { - const tree = { - id: "application.a", - path: "non-existent", - dependencies: [], - version: "1.0.0", - type: "application", - metadata: { - name: "xy" - } - }; - const exception = await t.throwsAsync(projectPreprocessor.processTree(tree)); - - t.true(exception.message.includes("Failed to read configuration for project application.a"), - "Error message should contain expected reason"); -}); - -test("specVersion: Project with invalid version", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.9", - type: "application", - metadata: { - name: "xy" - } - }; - const validationError = await t.throwsAsync(projectPreprocessor.processTree(tree), { - instanceOf: ValidationError - }); - - t.is(validationError.errors.length, 1, "ValidationError should have one error object"); - t.is(validationError.errors[0].dataPath, "/specVersion", "Error should be for the specVersion"); -}); - -test("specVersion: Project with valid version 0.1", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "0.1", - type: "application", - metadata: { - name: "xy" - } - }; - const res = await projectPreprocessor.processTree(tree); - t.deepEqual(res.specVersion, "0.1", "Correct spec version"); -}); - -test("specVersion: Project with valid version 1.0", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "1.0", - type: "application", - metadata: { - name: "xy" - } - }; - const res = await projectPreprocessor.processTree(tree); - t.deepEqual(res.specVersion, "1.0", "Correct spec version"); -}); - -test("specVersion: Project with valid version 1.1", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "1.1", - type: "application", - metadata: { - name: "xy" - } - }; - const res = await projectPreprocessor.processTree(tree); - t.deepEqual(res.specVersion, "1.1", "Correct spec version"); -}); - -test("specVersion: Project with valid version 2.0", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.0", - type: "application", - metadata: { - name: "xy" - } - }; - const res = await projectPreprocessor.processTree(tree); - t.deepEqual(res.specVersion, "2.0", "Correct spec version"); -}); - -test("specVersion: Project with valid version 2.1", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.1", - type: "application", - metadata: { - name: "xy" - } - }; - const res = await projectPreprocessor.processTree(tree); - t.deepEqual(res.specVersion, "2.1", "Correct spec version"); -}); - -test("specVersion: Project with valid version 2.2", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.2", - type: "application", - metadata: { - name: "xy" - } - }; - const res = await projectPreprocessor.processTree(tree); - t.deepEqual(res.specVersion, "2.2", "Correct spec version"); -}); - -test("specVersion: Project with valid version 2.3", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.3", - type: "application", - metadata: { - name: "xy" - } - }; - const res = await projectPreprocessor.processTree(tree); - t.deepEqual(res.specVersion, "2.3", "Correct spec version"); -}); - -test("specVersion: Project with valid version 2.4", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.4", - type: "application", - metadata: { - name: "xy" - } - }; - const res = await projectPreprocessor.processTree(tree); - t.deepEqual(res.specVersion, "2.4", "Correct spec version"); -}); - -test("specVersion: Project with valid version 2.5", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.5", - type: "application", - metadata: { - name: "xy" - } - }; - const res = await projectPreprocessor.processTree(tree); - t.deepEqual(res.specVersion, "2.5", "Correct spec version"); -}); - -test("specVersion: Project with valid version 2.6", async (t) => { - const tree = { - id: "application.a", - path: applicationAPath, - dependencies: [], - version: "1.0.0", - specVersion: "2.6", - type: "application", - metadata: { - name: "xy" - } - }; - const res = await projectPreprocessor.processTree(tree); - t.deepEqual(res.specVersion, "2.6", "Correct spec version"); -}); - -test("isBeingProcessed: Is not being processed", (t) => { - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - preprocessor.processedProjects = {}; - - const project = { - id: "some.id", - _level: 1337 - }; - const parent = { - dependencies: [project] - }; - const res = preprocessor.isBeingProcessed(parent, project); - t.deepEqual(res, false, "Project is not processed"); - t.deepEqual(parent.dependencies.length, 1, "Parent still has one dependency"); -}); - -test("isBeingProcessed: Is being processed", (t) => { - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const alreadyProcessedProject = { - project: { - id: "some.id", - _level: 42 - }, - parents: [] - }; - preprocessor.processedProjects = { - "some.id": alreadyProcessedProject - }; - - const project = { - id: "some.id", - _level: 1337 - }; - const parent = { - dependencies: [project] - }; - const res = preprocessor.isBeingProcessed(parent, project); - t.deepEqual(res, true, "Project is already processed"); - t.deepEqual(parent.dependencies.length, 1, "parent still has one dependency"); - t.deepEqual(parent.dependencies[0]._level, 42, "Parent dependency got replaced with already processed project"); - t.deepEqual(alreadyProcessedProject.parents.length, 1, "Already processed project now has one parent"); - t.is(alreadyProcessedProject.parents[0], parent, "Parent got added as parent of already processed project"); -}); - -test("isBeingProcessed: Processed project is ignored", (t) => { - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const alreadyProcessedProject = { - project: { - id: "some.id", - _level: 42 - }, - parents: [], - ignored: true - }; - preprocessor.processedProjects = { - "some.id": alreadyProcessedProject - }; - - const project = { - id: "some.id", - _level: 1337 - }; - const parent = { - dependencies: [project] - }; - const res = preprocessor.isBeingProcessed(parent, project); - t.deepEqual(res, true, "Project is already processed"); - t.deepEqual(parent.dependencies.length, 0, "Project got removed from parent dependencies"); - t.deepEqual(alreadyProcessedProject.parents.length, 0, "Already processed project still has no parents"); -}); - -test("isBeingProcessed: Processed project is ignored but already removed from parent", (t) => { - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const alreadyProcessedProject = { - project: { - id: "some.id", - _level: 42 - }, - parents: [], - ignored: true - }; - preprocessor.processedProjects = { - "some.id": alreadyProcessedProject - }; - - const project = { - id: "some.id", - _level: 1337 - }; - const otherProject = { - id: "some.other.id" - }; - const parent = { - dependencies: [otherProject] - }; - const res = preprocessor.isBeingProcessed(parent, project); - t.deepEqual(res, true, "Project is already processed"); - t.deepEqual(parent.dependencies.length, 1, "Parent still has one dependency"); - t.deepEqual(parent.dependencies[0].id, "some.other.id", - "Parent dependency to another project has not been removed"); - t.deepEqual(alreadyProcessedProject.parents.length, 0, "Already processed project still has no parents"); -}); - -test("isBeingProcessed: Deduped project is being ignored", (t) => { - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - preprocessor.processedProjects = {}; - - const project = { - deduped: true - }; - const parent = {}; - - const res = preprocessor.isBeingProcessed(parent, project); - t.deepEqual(res, true, "Project is being ignored"); -}); - - -test.serial("applyType", async (t) => { - const formatStub = sinon.stub(); - const getTypeStub = sinon.stub(require("@ui5/builder").types.typeRepository, "getType") - .returns({ - format: formatStub - }); - - const project = { - type: "pony", - metadata: {} - }; - - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - await preprocessor.applyType(project); - - t.is(getTypeStub.callCount, 1, "getType got called once"); - t.deepEqual(getTypeStub.getCall(0).args[0], "pony", "getType got called with correct type"); - - t.is(formatStub.callCount, 1, "format got called once"); - t.is(formatStub.getCall(0).args[0], project, "format got called with correct project"); -}); - -test.serial("checkProjectMetadata: Warning logged for deprecated dependencies", async (t) => { - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("pony"); - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - const logWarnSpy = sinon.spy(loggerInstance, "warn"); - - // Re-require tested module - const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); - - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const project1 = { - _level: 0, - _isRoot: true, - metadata: { - name: "root.project", - deprecated: true - } - }; - - // no warning should be logged for root level project - await preprocessor.checkProjectMetadata(null, project1); - - const project2 = { - _level: 1, - metadata: { - name: "my.project", - deprecated: true - } - }; - - // one warning should be logged for deprecated dependency - await preprocessor.checkProjectMetadata(project1, project2); - - t.is(logWarnSpy.callCount, 1, "One warning got logged"); - t.deepEqual(logWarnSpy.getCall(0).args[0], - "Dependency my.project is deprecated and should not be used for new projects!", - "Logged expected warning message"); -}); - -test.serial("checkProjectMetadata: No warning logged for nested deprecated libraries", async (t) => { - sinon.stub(require("@ui5/builder").types.typeRepository, "getType") - .returns({format: () => {}}); - - // Spying logger of processors/bootstrapHtmlTransformer - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("pony"); - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - const logWarnSpy = sinon.spy(loggerInstance, "warn"); - - // Re-require tested module - const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); - - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const project1 = { - _level: 1, - metadata: { - name: "some.project", - deprecated: true - } - }; - - // no warning should be logged for nested project - await preprocessor.checkProjectMetadata(null, project1); - - const project2 = { - _level: 2, - metadata: { - name: "my.project", - deprecated: true - } - }; - await preprocessor.checkProjectMetadata(project1, project2); - - t.is(logWarnSpy.callCount, 0, "No warning got logged"); -}); - -test.serial("checkProjectMetadata: Warning logged for SAP internal dependencies", async (t) => { - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("pony"); - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - const logWarnSpy = sinon.spy(loggerInstance, "warn"); - - // Re-require tested module - const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); - - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const project1 = { - _level: 0, - _isRoot: true, - metadata: { - name: "root.project", - sapInternal: true - } - }; - - // no warning should be logged for root level project - await preprocessor.checkProjectMetadata(null, project1); - - const project2 = { - _level: 1, - metadata: { - name: "my.project", - sapInternal: true - } - }; - - // one warning should be logged for internal dependency - await preprocessor.checkProjectMetadata(project1, project2); - - t.is(logWarnSpy.callCount, 1, "One warning got logged"); - t.deepEqual(logWarnSpy.getCall(0).args[0], - `Dependency my.project is restricted for use by SAP internal projects only! ` + - `If the project root.project is an SAP internal project, add the attribute ` + - `"allowSapInternal: true" to its metadata configuration`, - "Logged expected warning message"); -}); - -test.serial("checkProjectMetadata: No warning logged for allowed SAP internal libraries", async (t) => { - sinon.stub(require("@ui5/builder").types.typeRepository, "getType") - .returns({format: () => {}}); - - // Spying logger of processors/bootstrapHtmlTransformer - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("pony"); - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - const logWarnSpy = sinon.spy(loggerInstance, "warn"); - - // Re-require tested module - const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); - - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const project1 = { - _level: 0, - _isRoot: true, - metadata: { - name: "root.project", - allowSapInternal: true // parent project (=root) allows sap internal project use - } - }; - - const project2 = { - _level: 1, - metadata: { - name: "my.project", - sapInternal: true - } - }; - - await preprocessor.checkProjectMetadata(project1, project2); - - t.is(logWarnSpy.callCount, 0, "No warning got logged"); -}); - -test.serial("checkProjectMetadata: No warning logged for nested SAP internal libraries", async (t) => { - sinon.stub(require("@ui5/builder").types.typeRepository, "getType") - .returns({format: () => {}}); - - // Spying logger of processors/bootstrapHtmlTransformer - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("pony"); - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - const logWarnSpy = sinon.spy(loggerInstance, "warn"); - - // Re-require tested module - const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); - - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const project1 = { - _level: 1, - metadata: { - name: "some.project", - allowSapInternal: true // this flag doesn't matter for deeply nested internal dependency - } - }; - - const project2 = { - _level: 2, - metadata: { - name: "my.project", - sapInternal: true - } - }; - - await preprocessor.checkProjectMetadata(project1, project2); - - t.is(logWarnSpy.callCount, 0, "No warning got logged"); -}); - - -test.serial("readConfigFile: No exception for valid config", async (t) => { - const configPath = path.join("/application", "ui5.yaml"); - const ui5yaml = ` ---- -specVersion: "2.0" -type: application -metadata: - name: application.a -`; - - const validateSpy = sinon.spy(validator, "validate"); - - sinon.stub(gracefulFs, "readFile") - .callsFake((path) => { - throw new Error("readFileStub called with unexpected path: " + path); - }) - .withArgs(configPath).yieldsAsync(null, ui5yaml); - - // Re-require tested module - const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - await t.notThrowsAsync(async () => { - await preprocessor.readConfigFile({path: "/application", id: "id"}); - }); - - t.is(validateSpy.callCount, 1, "validate should be called once"); - t.deepEqual(validateSpy.getCall(0).args, [{ - config: { - specVersion: "2.0", - type: "application", - metadata: { - name: "application.a" - } - }, - project: { - id: "id", - }, - yaml: { - documentIndex: 0, - path: configPath, - source: ui5yaml - }, - - }], - "validate should be called with expected args"); -}); - -test.serial("readConfigFile: Exception for invalid config", async (t) => { - const configPath = path.join("/application", "ui5.yaml"); - const ui5yaml = ` ---- -specVersion: "2.0" -type: application -metadata: - name: application.a ---- -specVersion: "2.0" -kind: extension -type: task -metadata: - name: my-task ---- -specVersion: "2.0" -kind: extension -type: server-middleware -metadata: - name: my-middleware -`; - - const validateSpy = sinon.spy(validator, "validate"); - - sinon.stub(gracefulFs, "readFile") - .callsFake((path) => { - throw new Error("readFileStub called with unexpected path: " + path); - }) - .withArgs(configPath).yieldsAsync(null, ui5yaml); - - // Re-require tested module - const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const validationError = await t.throwsAsync(async () => { - await preprocessor.readConfigFile({path: "/application", id: "id"}); - }, { - instanceOf: ValidationError, - name: "ValidationError" - }); - - t.is(validationError.yaml.documentIndex, 1, "Error of first invalid document should be thrown"); - - t.is(validateSpy.callCount, 3, "validate should be called 3 times"); - t.deepEqual(validateSpy.getCall(0).args, [{ - config: { - specVersion: "2.0", - type: "application", - metadata: { - name: "application.a" - } - }, - project: { - id: "id", - }, - yaml: { - documentIndex: 0, - path: configPath, - source: ui5yaml, - }, - }], - "validate should be called first time with expected args"); - t.deepEqual(validateSpy.getCall(1).args, [{ - config: { - specVersion: "2.0", - kind: "extension", - type: "task", - metadata: { - name: "my-task" - } - }, - project: { - id: "id", - }, - yaml: { - documentIndex: 1, - path: configPath, - source: ui5yaml, - }, - }], - "validate should be called second time with expected args"); - t.deepEqual(validateSpy.getCall(2).args, [{ - config: { - specVersion: "2.0", - kind: "extension", - type: "server-middleware", - metadata: { - name: "my-middleware" - } - }, - project: { - id: "id", - }, - yaml: { - documentIndex: 2, - path: configPath, - source: ui5yaml, - }, - }], - "validate should be called third time with expected args"); -}); - -test.serial("readConfigFile: Exception for invalid YAML file", async (t) => { - const configPath = path.join("/application", "ui5.yaml"); - const ui5yaml = ` --- -specVersion: "2.0" -foo: bar -metadata: - name: application.a -`; - - const validateSpy = sinon.spy(validator, "validate"); - - sinon.stub(gracefulFs, "readFile") - .callsFake((path) => { - throw new Error("readFileStub called with unexpected path: " + path); - }) - .withArgs(configPath).yieldsAsync(null, ui5yaml); - - // Re-require tested module - const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const error = await t.throwsAsync(async () => { - await preprocessor.readConfigFile({path: "/application", id: "my-project"}); - }); - - t.true(error.message.includes("Failed to parse configuration for project my-project"), - "Error message should contain information about parsing error"); - - t.is(validateSpy.callCount, 0, "validate should not be called"); -}); - -test.serial("readConfigFile: Empty YAML", async (t) => { - const configPath = path.join("/application", "ui5.yaml"); - const ui5yaml = ""; - - const validateSpy = sinon.spy(validator, "validate"); - - sinon.stub(gracefulFs, "readFile") - .callsFake((path) => { - throw new Error("readFileStub called with unexpected path: " + path); - }) - .withArgs(configPath).yieldsAsync(null, ui5yaml); - - // Re-require tested module - const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - const configs = await preprocessor.readConfigFile({path: "/application", id: "my-project"}); - - t.deepEqual(configs, [], "Empty YAML should result in empty array"); - t.is(validateSpy.callCount, 0, "validate should not be called"); -}); - -test.serial("loadProjectConfiguration: Runs validation if specVersion already exists (error)", async (t) => { - const config = { - specVersion: "2.0", - foo: "bar", - metadata: { - name: "application.a" - }, - - id: "id", - version: "1.0.0", - path: "path", - dependencies: [] - }; - - const validateSpy = sinon.spy(validator, "validate"); - - // Re-require tested module - const projectPreprocessor = mock.reRequire("../../lib/projectPreprocessor"); - const preprocessor = new projectPreprocessor._ProjectPreprocessor({}); - - await t.throwsAsync(async () => { - await preprocessor.loadProjectConfiguration(config); - }, { - instanceOf: ValidationError, - name: "ValidationError" - }); - - t.is(validateSpy.callCount, 1, "validate should be called once"); - t.deepEqual(validateSpy.getCall(0).args, [{ - config: { - specVersion: "2.0", - foo: "bar", - metadata: { - name: "application.a" - } - }, - project: { - id: "id" - } - }], - "validate should be called with expected args"); -}); diff --git a/packages/project/test/lib/specifications/ComponentProject.js b/packages/project/test/lib/specifications/ComponentProject.js new file mode 100644 index 00000000000..ab2d4f42653 --- /dev/null +++ b/packages/project/test/lib/specifications/ComponentProject.js @@ -0,0 +1,153 @@ +const test = require("ava"); +const path = require("path"); +const sinon = require("sinon"); +const Specification = require("../../../lib/specifications/Specification"); + +function clone(o) { + return JSON.parse(JSON.stringify(o)); +} + +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const basicProjectInput = { + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.a"} + } +}; + +test.afterEach.always((t) => { + sinon.restore(); +}); + +test("getPropertiesFileSourceEncoding: Default", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getPropertiesFileSourceEncoding(), "UTF-8", + "Returned correct default propertiesFileSourceEncoding configuration"); +}); + +test("getPropertiesFileSourceEncoding: Configuration", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.resources = { + configuration: { + propertiesFileSourceEncoding: "ISO-8859-1" + } + }; + const project = await Specification.create(customProjectInput); + t.is(project.getPropertiesFileSourceEncoding(), "ISO-8859-1", + "Returned correct default propertiesFileSourceEncoding configuration"); +}); + +test("hasMavenPlaceholder: has maven placeholder", async (t) => { + const project = await Specification.create(basicProjectInput); + const res = project._hasMavenPlaceholder("${mvn-pony}"); + t.true(res, "String has maven placeholder"); +}); + +test("hasMavenPlaceholder: has no maven placeholder", async (t) => { + const project = await Specification.create(basicProjectInput); + + const res = project._hasMavenPlaceholder("$mvn-pony}"); + t.false(res, "String has no maven placeholder"); +}); + +test("_resolveMavenPlaceholder: resolves maven placeholder from first POM level", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getPom").resolves({ + project: { + properties: { + "mvn-pony": "unicorn" + } + } + }); + + const res = await project._resolveMavenPlaceholder("${mvn-pony}"); + t.deepEqual(res, "unicorn", "Resolved placeholder correctly"); +}); + +test("_resolveMavenPlaceholder: resolves maven placeholder from deeper POM level", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getPom").resolves({ + "mvn-pony": { + some: { + id: "unicorn" + } + } + }); + + const res = await project._resolveMavenPlaceholder("${mvn-pony.some.id}"); + t.deepEqual(res, "unicorn", "Resolved placeholder correctly"); +}); + +test("_resolveMavenPlaceholder: can't resolve from POM", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getPom").resolves({}); + + const err = await t.throwsAsync(project._resolveMavenPlaceholder("${mvn-pony}")); + t.deepEqual(err.message, + `"\${mvn-pony}" couldn't be resolved from maven property "mvn-pony" ` + + `of pom.xml of project application.a`, + "Rejected with correct error message"); +}); + +test("_resolveMavenPlaceholder: provided value is no placeholder", async (t) => { + const project = await Specification.create(basicProjectInput); + + const err = await t.throwsAsync(project._resolveMavenPlaceholder("My ${mvn-pony}")); + t.deepEqual(err.message, + `"My \${mvn-pony}" is not a maven placeholder`, + "Rejected with correct error message"); +}); + +test("_getPom: reads correctly", async (t) => { + const projectInput = clone(basicProjectInput); + // Application H contains a pom.xml + const applicationHPath = path.join(__dirname, "..", "..", "fixtures", "application.h"); + projectInput.modulePath = applicationHPath; + projectInput.configuration.metadata.name = "application.h"; + const project = await Specification.create(projectInput); + + const res = await project._getPom(); + t.deepEqual(res.project.modelVersion, "4.0.0", "pom.xml content has been read"); +}); + +test.serial("_getPom: fs read error", async (t) => { + const project = await Specification.create(basicProjectInput); + project.getRootReader = () => { + return { + byPath: async () => { + throw new Error("EPON: Pony Error"); + } + }; + }; + const error = await t.throwsAsync(project._getPom()); + t.deepEqual(error.message, + "Failed to read pom.xml for project application.a: " + + "EPON: Pony Error", + "Rejected with correct error message"); +}); + +test.serial("_getPom: result is cached", async (t) => { + const project = await Specification.create(basicProjectInput); + + const byPathStub = sinon.stub().resolves({ + getString: async () => `no unicorn` + }); + + project.getRootReader = () => { + return { + byPath: byPathStub + }; + }; + + let res = await project._getPom(); + t.deepEqual(res, {pony: "no unicorn"}, "Correct result on first call"); + res = await project._getPom(); + t.deepEqual(res, {pony: "no unicorn"}, "Correct result on second call"); + + t.deepEqual(byPathStub.callCount, 1, "getRootReader().byPath got called exactly once (and then cached)"); +}); diff --git a/packages/project/test/lib/specifications/Project.js b/packages/project/test/lib/specifications/Project.js new file mode 100644 index 00000000000..a8917234aa2 --- /dev/null +++ b/packages/project/test/lib/specifications/Project.js @@ -0,0 +1,34 @@ +const test = require("ava"); +const path = require("path"); +const Specification = require("../../../lib/specifications/Specification"); + +function clone(obj) { + return JSON.parse(JSON.stringify(obj)); +} + +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const basicProjectInput = { + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.a"} + } +}; + +test("Invalid configuration", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.resources = { + configuration: { + propertiesFileSourceEncoding: "Ponycode" + } + }; + const error = await t.throwsAsync(Specification.create(customProjectInput)); + t.is(error.message, `Invalid ui5.yaml configuration for project application.a.id + +Configuration resources/configuration/propertiesFileSourceEncoding must be equal to one of the allowed values +Allowed values: UTF-8, ISO-8859-1`, "Threw with validation error"); +}); diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js new file mode 100644 index 00000000000..f6c2ca65c53 --- /dev/null +++ b/packages/project/test/lib/specifications/Specification.js @@ -0,0 +1,75 @@ +const test = require("ava"); +const path = require("path"); +const sinon = require("sinon"); + +const Specification = require("../../../lib/specifications/Specification"); + +test.afterEach.always((t) => { + sinon.restore(); +}); + +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const basicProjectInput = { + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.a"} + } +}; + +test("Instantiate a basic project", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getName(), "application.a", "Returned correct name"); + t.is(project.getVersion(), "1.0.0", "Returned correct version"); + t.is(project.getPath(), applicationAPath, "Returned correct project path"); +}); + +test("Configurations", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getKind(), "project", "Returned correct kind configuration"); + t.is(project.getType(), "application", "Returned correct type configuration"); +}); + +test("Access project root resources via reader", async (t) => { + const project = await Specification.create(basicProjectInput); + const rootReader = await project.getRootReader(); + const packageJsonResource = await rootReader.byPath("/package.json"); + t.is(packageJsonResource.getPath(), "/package.json", "Successfully retrieved root resource"); +}); + +test("_dirExists: Directory exists", async (t) => { + const project = await Specification.create(basicProjectInput); + const bExists = await project._dirExists("/webapp"); + t.true(bExists, "directory exists"); +}); + +test("_dirExists: Missing leading slash", async (t) => { + const project = await Specification.create(basicProjectInput); + const bExists = await project._dirExists("webapp"); + t.false(bExists, "directory is not found"); +}); + +test("_dirExists: Trailing slash is ok", async (t) => { + const project = await Specification.create(basicProjectInput); + const bExists = await project._dirExists("/webapp/"); + t.true(bExists, "directory exists"); +}); + +test("_dirExists: Directory is a file", async (t) => { + const project = await Specification.create(basicProjectInput); + + const bExists = await project._dirExists("webapp/index.html"); + t.false(bExists, "directory is a file"); +}); + + +test("_dirExists: Directory does not exist", async (t) => { + const project = await Specification.create(basicProjectInput); + + const bExists = await project._dirExists("/w"); + t.false(bExists, "directory does not exist"); +}); diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js new file mode 100644 index 00000000000..769e9d49555 --- /dev/null +++ b/packages/project/test/lib/specifications/types/Application.js @@ -0,0 +1,440 @@ +const test = require("ava"); +const path = require("path"); +const sinon = require("sinon"); +const {createResource} = require("@ui5/fs").resourceFactory; +const Specification = require("../../../../lib/specifications/Specification"); +const Application = require("../../../../lib/specifications/types/Application"); + +function clone(obj) { + return JSON.parse(JSON.stringify(obj)); +} + +const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); +const basicProjectInput = { + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.a"} + } +}; + +test.afterEach.always((t) => { + sinon.restore(); +}); + +test("Correct class", async (t) => { + const project = await Specification.create(basicProjectInput); + t.true(project instanceof Application, `Is an instance of the Application class`); +}); + +test("getCachebusterSignatureType: Default", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getCachebusterSignatureType(), "time", + "Returned correct default cachebuster signature type configuration"); +}); + +test("getCachebusterSignatureType: Configuration", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.builder = { + cachebuster: { + signatureType: "hash" + } + }; + const project = await Specification.create(customProjectInput); + t.is(project.getCachebusterSignatureType(), "hash", + "Returned correct default cachebuster signature type configuration"); +}); + +test("Access project resources via reader: buildtime style", async (t) => { + const project = await Specification.create(basicProjectInput); + const reader = await project.getReader(); + const resource = await reader.byPath("/resources/id1/manifest.json"); + t.truthy(resource, "Found the requested resource"); + t.is(resource.getPath(), "/resources/id1/manifest.json", "Resource has correct path"); +}); + +test("Access project resources via reader: flat style", async (t) => { + const project = await Specification.create(basicProjectInput); + const reader = await project.getReader({style: "flat"}); + const resource = await reader.byPath("/manifest.json"); + t.truthy(resource, "Found the requested resource"); + t.is(resource.getPath(), "/manifest.json", "Resource has correct path"); +}); + +test("Access project resources via reader: runtime style", async (t) => { + const project = await Specification.create(basicProjectInput); + const reader = await project.getReader({style: "runtime"}); + const resource = await reader.byPath("/manifest.json"); + t.truthy(resource, "Found the requested resource"); + t.is(resource.getPath(), "/manifest.json", "Resource has correct path"); +}); + +test("Modify project resources via workspace and access via flat and runtime readers", async (t) => { + const project = await Specification.create(basicProjectInput); + const workspace = await project.getWorkspace(); + const workspaceResource = await workspace.byPath("/resources/id1/index.html"); + t.truthy(workspaceResource, "Found resource in workspace"); + + const newContent = (await workspaceResource.getString()).replace("Application A", "Some Name"); + workspaceResource.setString(newContent); + await workspace.write(workspaceResource); + + const flatReader = await project.getReader({style: "flat"}); + const flatReaderResource = await flatReader.byPath("/index.html"); + t.truthy(flatReaderResource, "Found the requested resource byPath"); + t.is(flatReaderResource.getPath(), "/index.html", "Resource (byPath) has correct path"); + t.is(await flatReaderResource.getString(), newContent, "Found resource (byPath) has expected (changed) content"); + + const flatGlobResult = await flatReader.byGlob("**/index.html"); + t.is(flatGlobResult.length, 1, "Found the requested resource byGlob"); + t.is(flatGlobResult[0].getPath(), "/index.html", "Resource (byGlob) has correct path"); + t.is(await flatGlobResult[0].getString(), newContent, "Found resource (byGlob) has expected (changed) content"); + + const runtimeReader = await project.getReader({style: "runtime"}); + const runtimeReaderResource = await runtimeReader.byPath("/index.html"); + t.truthy(runtimeReaderResource, "Found the requested resource byPath"); + t.is(runtimeReaderResource.getPath(), "/index.html", "Resource (byPath) has correct path"); + t.is(await runtimeReaderResource.getString(), newContent, "Found resource (byPath) has expected (changed) content"); + + const runtimeGlobResult = await runtimeReader.byGlob("**/index.html"); + t.is(runtimeGlobResult.length, 1, "Found the requested resource byGlob"); + t.is(runtimeGlobResult[0].getPath(), "/index.html", "Resource (byGlob) has correct path"); + t.is(await runtimeGlobResult[0].getString(), newContent, "Found resource (byGlob) has expected (changed) content"); +}); + + +test("Read and write resources outside of app namespace", async (t) => { + const project = await Specification.create(basicProjectInput); + const workspace = await project.getWorkspace(); + + await workspace.write(createResource({ + path: "/resources/my-custom-bundle.js" + })); + + const buildtimeReader = await project.getReader({style: "buildtime"}); + const buildtimeReaderResource = await buildtimeReader.byPath("/resources/my-custom-bundle.js"); + t.truthy(buildtimeReaderResource, "Found the requested resource byPath (buildtime)"); + t.is(buildtimeReaderResource.getPath(), "/resources/my-custom-bundle.js", + "Resource (byPath) has correct path (buildtime)"); + + const buildtimeGlobResult = await buildtimeReader.byGlob("**/my-custom-bundle.js"); + t.is(buildtimeGlobResult.length, 1, "Found the requested resource byGlob (buildtime)"); + t.is(buildtimeGlobResult[0].getPath(), "/resources/my-custom-bundle.js", + "Resource (byGlob) has correct path (buildtime)"); + + const flatReader = await project.getReader({style: "flat"}); + const flatReaderResource = await flatReader.byPath("/resources/my-custom-bundle.js"); + t.falsy(flatReaderResource, "Resource outside of app namespace can't be read using flat reader"); + + const flatGlobResult = await flatReader.byGlob("**/my-custom-bundle.js"); + t.is(flatGlobResult.length, 0, "Resource outside of app namespace can't be found using flat reader"); + + const runtimeReader = await project.getReader({style: "runtime"}); + const runtimeReaderResource = await runtimeReader.byPath("/resources/my-custom-bundle.js"); + t.truthy(runtimeReaderResource, "Found the requested resource byPath (runtime)"); + t.is(runtimeReaderResource.getPath(), "/resources/my-custom-bundle.js", + "Resource (byPath) has correct path (runtime)"); + + const runtimeGlobResult = await runtimeReader.byGlob("**/my-custom-bundle.js"); + t.is(runtimeGlobResult.length, 1, "Found the requested resource byGlob (runtime)"); + t.is(runtimeGlobResult[0].getPath(), "/resources/my-custom-bundle.js", + "Resource (byGlob) has correct path (runtime)"); +}); + +test("_configureAndValidatePaths: Default paths", async (t) => { + const project = await Specification.create(basicProjectInput); + + t.is(project._webappPath, "webapp", "Correct default path"); +}); + +test("_configureAndValidatePaths: Custom webapp directory", async (t) => { + const applicationHPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.h"); + const projectInput = { + id: "application.h.id", + version: "1.0.0", + modulePath: applicationHPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.h"}, + resources: { + configuration: { + paths: { + webapp: "webapp-properties.componentName" + } + } + } + } + }; + + const project = await Specification.create(projectInput); + + t.is(project._webappPath, "webapp-properties.componentName", "Correct path for src"); +}); + +test("_configureAndValidatePaths: Webapp directory does not exist", async (t) => { + const projectInput = clone(basicProjectInput); + projectInput.configuration.resources = { + configuration: { + paths: { + webapp: "does/not/exist" + } + } + }; + const err = await t.throwsAsync(Specification.create(projectInput)); + + t.is(err.message, "Unable to find directory 'does/not/exist' in application project application.a"); +}); + +test("_getNamespaceFromManifestJson: No 'sap.app' configuration found", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({}); + + const error = await t.throwsAsync(project._getNamespaceFromManifestJson()); + t.deepEqual(error.message, "No sap.app/id configuration found in manifest.json of project application.a", + "Rejected with correct error message"); +}); + +test("_getNamespaceFromManifestJson: No application id in 'sap.app' configuration found", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({"sap.app": {}}); + + const error = await t.throwsAsync(project._getNamespaceFromManifestJson()); + t.deepEqual(error.message, "No sap.app/id configuration found in manifest.json of project application.a"); +}); + +test("_getNamespaceFromManifestJson: set namespace to id", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({"sap.app": {id: "my.id"}}); + + const namespace = await project._getNamespaceFromManifestJson(); + t.deepEqual(namespace, "my/id", "Returned correct namespace"); +}); + +test("_getNamespaceFromManifestAppDescVariant: No 'id' property found", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({}); + + const error = await t.throwsAsync(project._getNamespaceFromManifestAppDescVariant()); + t.deepEqual(error.message, `No "id" property found in manifest.appdescr_variant of project application.a`, + "Rejected with correct error message"); +}); + +test("_getNamespaceFromManifestAppDescVariant: set namespace to id", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({id: "my.id"}); + + const namespace = await project._getNamespaceFromManifestAppDescVariant(); + t.deepEqual(namespace, "my/id", "Returned correct namespace"); +}); + +test("_getNamespace: Correct fallback to manifest.appdescr_variant if manifest.json is missing", async (t) => { + const project = await Specification.create(basicProjectInput); + const _getManifestStub = sinon.stub(project, "_getManifest") + .onFirstCall().rejects({code: "ENOENT"}) + .onSecondCall().resolves({id: "my.id"}); + + const namespace = await project._getNamespace(); + t.deepEqual(namespace, "my/id", "Returned correct namespace"); + t.is(_getManifestStub.callCount, 2, "_getManifest called exactly twice"); + t.is(_getManifestStub.getCall(0).args[0], "/manifest.json", "_getManifest called for manifest.json first"); + t.is(_getManifestStub.getCall(1).args[0], "/manifest.appdescr_variant", + "_getManifest called for manifest.appdescr_variant in fallback"); +}); + +test("_getNamespace: Correct error message if fallback to manifest.appdescr_variant failed", async (t) => { + const project = await Specification.create(basicProjectInput); + const _getManifestStub = sinon.stub(project, "_getManifest") + .onFirstCall().rejects({code: "ENOENT"}) + .onSecondCall().rejects(new Error("EPON: Pony Error")); + + const error = await t.throwsAsync(project._getNamespace()); + t.deepEqual(error.message, "EPON: Pony Error", + "Rejected with correct error message"); + t.is(_getManifestStub.callCount, 2, "_getManifest called exactly twice"); + t.is(_getManifestStub.getCall(0).args[0], "/manifest.json", "_getManifest called for manifest.json first"); + t.is(_getManifestStub.getCall(1).args[0], "/manifest.appdescr_variant", + "_getManifest called for manifest.appdescr_variant in fallback"); +}); + +test("_getNamespace: Correct error message if fallback to manifest.appdescr_variant is not possible", async (t) => { + const project = await Specification.create(basicProjectInput); + const _getManifestStub = sinon.stub(project, "_getManifest") + .onFirstCall().rejects({message: "No such stable or directory: manifest.json", code: "ENOENT"}) + .onSecondCall().rejects({code: "ENOENT"}); // both files are missing + + const error = await t.throwsAsync(project._getNamespace()); + t.deepEqual(error.message, + "Could not find required manifest.json for project application.a: " + + "No such stable or directory: manifest.json", + "Rejected with correct error message"); + + t.is(_getManifestStub.callCount, 2, "_getManifest called exactly twice"); + t.is(_getManifestStub.getCall(0).args[0], "/manifest.json", "_getManifest called for manifest.json first"); + t.is(_getManifestStub.getCall(1).args[0], "/manifest.appdescr_variant", + "_getManifest called for manifest.appdescr_variant in fallback"); +}); + +test("_getNamespace: No fallback if manifest.json is present but failed to parse", async (t) => { + const project = await Specification.create(basicProjectInput); + const _getManifestStub = sinon.stub(project, "_getManifest") + .onFirstCall().rejects(new Error("EPON: Pony Error")); + + const error = await t.throwsAsync(project._getNamespace()); + t.deepEqual(error.message, "EPON: Pony Error", + "Rejected with correct error message"); + + t.is(_getManifestStub.callCount, 1, "_getManifest called exactly once"); + t.is(_getManifestStub.getCall(0).args[0], "/manifest.json", "_getManifest called for manifest.json only"); +}); + +test("_getManifest: reads correctly", async (t) => { + const project = await Specification.create(basicProjectInput); + + const content = await project._getManifest("/manifest.json"); + t.deepEqual(content._version, "1.1.0", "manifest.json content has been read"); +}); + +test("_getManifest: invalid JSON", async (t) => { + const project = await Specification.create(basicProjectInput); + + const byPathStub = sinon.stub().resolves({ + getString: async () => "no json" + }); + + project._getRawSourceReader = () => { + return { + byPath: byPathStub + }; + }; + + const error = await t.throwsAsync(project._getManifest("/some-manifest.json")); + t.deepEqual(error.message, + "Failed to read /some-manifest.json for project application.a: " + + "Unexpected token o in JSON at position 1", + "Rejected with correct error message"); + t.deepEqual(byPathStub.callCount, 1, "byPath got called once"); + t.deepEqual(byPathStub.getCall(0).args[0], "/some-manifest.json", "byPath got called with the correct argument"); +}); + +test.serial("_getManifest: File does not exist", async (t) => { + const project = await Specification.create(basicProjectInput); + + const error = await t.throwsAsync(project._getManifest("/does-not-exist.json")); + t.deepEqual(error.message, + "Failed to read /does-not-exist.json for project application.a: " + + "Could not find resource /does-not-exist.json in project application.a", + "Rejected with correct error message"); +}); + +test.serial("_getManifest: result is cached", async (t) => { + const project = await Specification.create(basicProjectInput); + + const byPathStub = sinon.stub().resolves({ + getString: async () => `{"pony": "no unicorn"}` + }); + + project._getRawSourceReader = () => { + return { + byPath: byPathStub + }; + }; + + const content = await project._getManifest("/some-manifest.json"); + t.deepEqual(content, {pony: "no unicorn"}, "Correct result on first call"); + + const content2 = await project._getManifest("/some-other-manifest.json"); + t.deepEqual(content2, {pony: "no unicorn"}, "Correct result on second call"); + + t.deepEqual(byPathStub.callCount, 2, "byPath got called exactly twice (and then cached)"); +}); + +test.serial("_getManifest: Caches successes and failures", async (t) => { + const project = await Specification.create(basicProjectInput); + + const getStringStub = sinon.stub() + .onFirstCall().rejects(new Error("EPON: Pony Error")) + .onSecondCall().resolves(`{"pony": "no unicorn"}`); + const byPathStub = sinon.stub().resolves({ + getString: getStringStub + }); + + project._getRawSourceReader = () => { + return { + byPath: byPathStub + }; + }; + + const error = await t.throwsAsync(project._getManifest("/some-manifest.json")); + t.deepEqual(error.message, + "Failed to read /some-manifest.json for project application.a: " + + "EPON: Pony Error", + "Rejected with correct error message"); + + const content = await project._getManifest("/some-other.manifest.json"); + t.deepEqual(content, {pony: "no unicorn"}, "Correct result on second call"); + + const error2 = await t.throwsAsync(project._getManifest("/some-manifest.json")); + t.deepEqual(error2.message, + "Failed to read /some-manifest.json for project application.a: " + + "EPON: Pony Error", + "From cache: Rejected with correct error message"); + + const content2 = await project._getManifest("/some-other.manifest.json"); + t.deepEqual(content2, {pony: "no unicorn"}, "From cache: Correct result on first call"); + + t.deepEqual(byPathStub.callCount, 2, + "byPath got called exactly twice (and then cached)"); +}); + +const applicationHPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.h"); +const applicationH = { + id: "application.h.id", + version: "1.0.0", + modulePath: applicationHPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.h"}, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + } + } + } +}; + +test("namespace: detect namespace from pom.xml via ${project.artifactId}", async (t) => { + const myProject = clone(applicationH); + myProject.configuration.resources.configuration.paths.webapp = "webapp-project.artifactId"; + const project = await Specification.create(myProject); + + t.deepEqual(project.getNamespace(), "application/h", + "namespace was successfully set since getJson provides the correct object structure"); +}); + +test("namespace: detect namespace from pom.xml via ${componentName} from properties", async (t) => { + const myProject = clone(applicationH); + myProject.configuration.resources.configuration.paths.webapp = "webapp-properties.componentName"; + const project = await Specification.create(myProject); + + t.deepEqual(project.getNamespace(), "application/h", + "namespace was successfully set since getJson provides the correct object structure"); +}); + +test("namespace: detect namespace from pom.xml via ${appId} from properties", async (t) => { + const myProject = clone(applicationH); + myProject.configuration.resources.configuration.paths.webapp = "webapp-properties.appId"; + + const error = await t.throwsAsync(Specification.create(myProject)); + t.deepEqual(error.message, "Failed to resolve namespace of project application.h: \"${appId}\"" + + " couldn't be resolved from maven property \"appId\" of pom.xml of project application.h"); +}); diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js new file mode 100644 index 00000000000..2fb78dfa5e1 --- /dev/null +++ b/packages/project/test/lib/specifications/types/Library.js @@ -0,0 +1,1239 @@ +const test = require("ava"); +const path = require("path"); +const sinon = require("sinon"); +const mock = require("mock-require"); +const Specification = require("../../../../lib/specifications/Specification"); + +function clone(obj) { + return JSON.parse(JSON.stringify(obj)); +} + +const libraryDPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.d"); +const basicProjectInput = { + id: "library.d.id", + version: "1.0.0", + modulePath: libraryDPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + paths: { + src: "main/src", + test: "main/test" + } + } + }, + } +}; + +const libraryHPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.h"); +const flatProjectInput = { + id: "library.d.id", + version: "1.0.0", + modulePath: libraryHPath, + configuration: { + specVersion: "2.6", + kind: "project", + type: "library", + metadata: { + name: "library.h", + } + } +}; + +test.afterEach.always((t) => { + sinon.restore(); + mock.stopAll(); +}); + +test("Correct class", async (t) => { + const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + const project = await Specification.create(basicProjectInput); + t.true(project instanceof Library, `Is an instance of the Library class`); +}); + +test("getNamespace", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getNamespace(), "library/d", + "Returned correct namespace"); +}); + +test("getPropertiesFileSourceEncoding: Default", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getPropertiesFileSourceEncoding(), "UTF-8", + "Returned correct default propertiesFileSourceEncoding configuration"); +}); + +test("getPropertiesFileSourceEncoding: Configuration", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.resources.configuration.propertiesFileSourceEncoding = "ISO-8859-1"; + const project = await Specification.create(customProjectInput); + t.is(project.getPropertiesFileSourceEncoding(), "ISO-8859-1", + "Returned correct default propertiesFileSourceEncoding configuration"); +}); + +test("Access project resources via reader: buildtime style", async (t) => { + const project = await Specification.create(basicProjectInput); + const reader = await project.getReader(); + const resource = await reader.byPath("/resources/library/d/.library"); + t.truthy(resource, "Found the requested resource"); + t.is(resource.getPath(), "/resources/library/d/.library", "Resource has correct path"); +}); + +test("Access project resources via reader: flat style", async (t) => { + const project = await Specification.create(basicProjectInput); + const reader = await project.getReader({style: "flat"}); + const resource = await reader.byPath("/.library"); + t.truthy(resource, "Found the requested resource"); + t.is(resource.getPath(), "/.library", "Resource has correct path"); +}); + +test("Access project test-resources via reader: buildtime style", async (t) => { + const project = await Specification.create(basicProjectInput); + const reader = await project.getReader({style: "buildtime"}); + const resource = await reader.byPath("/test-resources/library/d/Test.html"); + t.truthy(resource, "Found the requested resource"); + t.is(resource.getPath(), "/test-resources/library/d/Test.html", "Resource has correct path"); +}); + +test("Access project test-resources via reader: runtime style", async (t) => { + const project = await Specification.create(basicProjectInput); + const reader = await project.getReader({style: "runtime"}); + const resource = await reader.byPath("/test-resources/library/d/Test.html"); + t.truthy(resource, "Found the requested resource"); + t.is(resource.getPath(), "/test-resources/library/d/Test.html", "Resource has correct path"); +}); + +test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { + const project = await Specification.create(basicProjectInput); + const workspace = await project.getWorkspace(); + const workspaceResource = await workspace.byPath("/resources/library/d/.library"); + t.truthy(workspaceResource, "Found resource in workspace"); + + const newContent = (await workspaceResource.getString()).replace("fancy", "fancy dancy"); + workspaceResource.setString(newContent); + await workspace.write(workspaceResource); + + const flatReader = await project.getReader({style: "flat"}); + const flatReaderResource = await flatReader.byPath("/.library"); + t.truthy(flatReaderResource, "Found the requested resource byPath (flat)"); + t.is(flatReaderResource.getPath(), "/.library", "Resource (byPath) has correct path (flat)"); + t.is(await flatReaderResource.getString(), newContent, + "Found resource (byPath) has expected (changed) content (flat)"); + + const flatGlobResult = await flatReader.byGlob("**/.library"); + t.is(flatGlobResult.length, 1, "Found the requested resource byGlob (flat)"); + t.is(flatGlobResult[0].getPath(), "/.library", "Resource (byGlob) has correct path (flat)"); + t.is(await flatGlobResult[0].getString(), newContent, + "Found resource (byGlob) has expected (changed) content (flat)"); + + const runtimeReader = await project.getReader({style: "runtime"}); + const runtimeReaderResource = await runtimeReader.byPath("/resources/library/d/.library"); + t.truthy(runtimeReaderResource, "Found the requested resource byPath (runtime)"); + t.is(runtimeReaderResource.getPath(), "/resources/library/d/.library", + "Resource (byPath) has correct path (runtime)"); + t.is(await runtimeReaderResource.getString(), newContent, + "Found resource (byPath) has expected (changed) content (runtime)"); + + const runtimeGlobResult = await runtimeReader.byGlob("**/.library"); + t.is(runtimeGlobResult.length, 1, "Found the requested resource byGlob (runtime)"); + t.is(runtimeGlobResult[0].getPath(), "/resources/library/d/.library", + "Resource (byGlob) has correct path (runtime)"); + t.is(await runtimeGlobResult[0].getString(), newContent, + "Found resource (byGlob) has expected (changed) content (runtime)"); +}); + +test("Access flat project resources via reader: buildtime style", async (t) => { + const project = await Specification.create(flatProjectInput); + const reader = await project.getReader({style: "buildtime"}); + const resource = await reader.byPath("/resources/library/h/some.js"); + t.truthy(resource, "Found the requested resource"); + t.is(resource.getPath(), "/resources/library/h/some.js", "Resource has correct path"); +}); + +test("_configureAndValidatePaths: Default paths", async (t) => { + const libraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.e"); + const projectInput = { + id: "library.e.id", + version: "1.0.0", + modulePath: libraryEPath, + configuration: { + specVersion: "2.6", + kind: "project", + type: "library", + metadata: { + name: "library.e", + } + } + }; + + const project = await Specification.create(projectInput); + + t.is(project._srcPath, "src", "Correct default path for src"); + t.is(project._testPath, "test", "Correct default path for test"); + t.true(project._testPathExists, "Test path detected as existing"); +}); + +test("_configureAndValidatePaths: Test directory does not exist", async (t) => { + const projectInput = clone(basicProjectInput); + projectInput.configuration.resources.configuration.paths.test = "does/not/exist"; + const project = await Specification.create(projectInput); + + t.is(project._srcPath, "main/src", "Correct path for src"); + t.is(project._testPath, "does/not/exist", "Correct path for test"); + t.false(project._testPathExists, "Test path detected as non-existent"); +}); + +test("_configureAndValidatePaths: Source directory does not exist", async (t) => { + const projectInput = clone(basicProjectInput); + projectInput.configuration.resources.configuration.paths.src = "does/not/exist"; + const err = await t.throwsAsync(Specification.create(projectInput)); + + t.is(err.message, "Unable to find directory 'does/not/exist' in library project library.d"); +}); + +test("_parseConfiguration: Get copyright", async (t) => { + const project = await Specification.create(basicProjectInput); + + t.deepEqual(project.getCopyright(), "Some fancy copyright", "Copyright was read correctly"); +}); + +test("_parseConfiguration: Copyright already configured", async (t) => { + const projectInput = clone(basicProjectInput); + projectInput.configuration.metadata.copyright = "My copyright"; + const project = await Specification.create(projectInput); + + t.deepEqual(project.getCopyright(), "My copyright", "Copyright was not altered"); +}); + +test.serial("_parseConfiguration: Copyright retrieval fails", async (t) => { + const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + + sinon.stub(Library.prototype, "_getCopyrightFromDotLibrary").resolves(null); + const project = await Specification.create(basicProjectInput); + + t.deepEqual(project.getCopyright(), undefined, "Copyright was not altered"); +}); + +test.serial("_parseConfiguration: Preload excludes from .library", async (t) => { + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("specifications:types:Library"); + + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + mock.reRequire("@ui5/logger"); + const loggerVerboseSpy = sinon.spy(loggerInstance, "verbose"); + + const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + + sinon.stub(Library.prototype, "isFrameworkProject").returns(true); + sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves(["test/exclude/**"]); + const project = await Specification.create(basicProjectInput); + + t.deepEqual(project.getLibraryPreloadExcludes(), ["test/exclude/**"], + "Correct library preload excludes have been set"); + + t.deepEqual(loggerVerboseSpy.getCall(10).args, [ + "No preload excludes defined in project configuration of framework library library.d. " + + "Falling back to .library..." + ]); +}); + +test("_parseConfiguration: Preload excludes from project configuration (non-framework library)", async (t) => { + const projectInput = clone(basicProjectInput); + projectInput.configuration.builder = { + libraryPreload: { + excludes: ["test/exclude/**"] + } + }; + const project = await Specification.create(projectInput); + + t.deepEqual(project.getLibraryPreloadExcludes(), ["test/exclude/**"], + "Correct library preload excludes have been set"); +}); + +test.serial("_parseConfiguration: Preload exclude fallback to .library (framework libraries only)", async (t) => { + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("specifications:types:Library"); + + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + mock.reRequire("@ui5/logger"); + const loggerVerboseSpy = sinon.spy(loggerInstance, "verbose"); + + const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + + sinon.stub(Library.prototype, "isFrameworkProject").returns(true); + sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves(["test/exclude/**"]); + const project = await Specification.create(basicProjectInput); + + t.deepEqual(project.getLibraryPreloadExcludes(), ["test/exclude/**"], + "Correct library preload excludes have been set"); + + t.deepEqual(loggerVerboseSpy.getCall(10).args, [ + "No preload excludes defined in project configuration of framework library library.d. " + + "Falling back to .library..." + ]); +}); + +test.serial("_parseConfiguration: No preload excludes from .library", async (t) => { + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("specifications:types:Library"); + + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + mock.reRequire("@ui5/logger"); + const loggerVerboseSpy = sinon.spy(loggerInstance, "verbose"); + + const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + + sinon.stub(Library.prototype, "isFrameworkProject").returns(true); + sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves(null); + const project = await Specification.create(basicProjectInput); + + t.deepEqual(project.getLibraryPreloadExcludes(), [], + "No library preload excludes have been set"); + + t.deepEqual(loggerVerboseSpy.getCall(10).args, [ + "No preload excludes defined in project configuration of framework library library.d. " + + "Falling back to .library..." + ]); +}); + +test.serial("_parseConfiguration: Preload excludes from project configuration (framework library)", async (t) => { + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("specifications:types:Library"); + + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + mock.reRequire("@ui5/logger"); + const loggerVerboseSpy = sinon.spy(loggerInstance, "verbose"); + + const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + + sinon.stub(Library.prototype, "isFrameworkProject").returns(true); + const getPreloadExcludesFromDotLibraryStub = + sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves([]); + + const projectInput = clone(basicProjectInput); + projectInput.configuration.builder = { + libraryPreload: { + excludes: ["test/exclude/**"] + } + }; + const project = await Specification.create(projectInput); + + t.deepEqual(project.getLibraryPreloadExcludes(), ["test/exclude/**"], + "Correct library preload excludes have been set"); + + t.deepEqual(loggerVerboseSpy.getCall(10).args, [ + "Using preload excludes for framework library library.d from project configuration" + ]); + + t.is(getPreloadExcludesFromDotLibraryStub.callCount, 0, "_getPreloadExcludesFromDotLibrary has not been called"); +}); + +test.serial("_parseConfiguration: No preload exclude fallback for non-framework libraries", async (t) => { + const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + + sinon.stub(Library.prototype, "isFrameworkProject").returns(false); + const getPreloadExcludesFromDotLibraryStub = sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary") + .resolves(["test/exclude/**"]); + const project = await Specification.create(basicProjectInput); + + t.deepEqual(project.getLibraryPreloadExcludes(), [], + "No library preload excludes have been set"); + t.is(getPreloadExcludesFromDotLibraryStub.callCount, 0, "_getPreloadExcludesFromDotLibrary has not been called"); +}); + +test("_getManifest: Reads correctly", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getString: async () => `{"pony": "no unicorn"}`, + getPath: () => "some path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pManifest = null; // Clear cache from instantiation + const {content, filePath} = await project._getManifest(); + t.is(content.pony, "no unicorn", "manifest.json content has been read"); + t.is(filePath, "some path", "Correct path"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/manifest.json", "byGlob got called with the expected arguments"); +}); + +test("_getManifest: No manifest.json", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pManifest = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getManifest()); + t.is(error.message, + "Could not find manifest.json file for project library.d", + "Rejected with correct error message"); +}); + +test("_getManifest: Invalid JSON", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getString: async () => `no pony`, + getPath: () => "some path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pManifest = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getManifest()); + t.is(error.message, + "Failed to read some path for project library.d: " + + "Unexpected token o in JSON at position 1", + "Rejected with correct error message"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/manifest.json", "byGlob got called with the expected arguments"); +}); + +test("_getManifest: Propagates exception", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().rejects(new Error("because shark")); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pManifest = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getManifest()); + t.is(error.message, + "because shark", + "Rejected with correct error message"); +}); + +test("_getManifest: Multiple manifest.json files", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getString: async () => `{"pony": "no unicorn"}`, + getPath: () => "some path" + }, { + getString: async () => `{"pony": "no shark"}`, + getPath: () => "some other path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pManifest = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getManifest()); + t.deepEqual(error.message, "Found multiple (2) manifest.json files for project library.d", + "Rejected with correct error message"); +}); + +test("_getManifest: Result is cached", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getString: async () => `{"pony": "no unicorn"}`, + getPath: () => "some path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pManifest = null; // Clear cache from instantiation + const {content: content1, filePath: filePath1} = await project._getManifest(); + t.is(content1.pony, "no unicorn", "manifest.json content has been read"); + t.is(filePath1, "some path", "Correct path"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/manifest.json", "byGlob got called with the expected arguments"); + const {content: content2, filePath: filePath2} = await project._getManifest(); + + t.is(content2.pony, "no unicorn", "manifest.json content has been read"); + t.is(filePath2, "some path", "Correct path"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/manifest.json", "byGlob got called with the expected arguments"); +}); + +test("_getDotLibrary: Reads correctly", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getString: async () => `Fancy`, + getPath: () => "some path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pDotLibrary = null; // Clear cache from instantiation + const {content, filePath} = await project._getDotLibrary(); + t.deepEqual(content, {chicken: {_: "Fancy"}}, ".library content has been read"); + t.is(filePath, "some path", "Correct path"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/.library", "byGlob got called with the expected arguments"); +}); + +test("_getDotLibrary: No .library file", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pDotLibrary = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getDotLibrary()); + t.is(error.message, + "Could not find .library file for project library.d", + "Rejected with correct error message"); +}); + +test("_getDotLibrary: Invalid XML", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getString: async () => `no pony`, + getPath: () => "some path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pDotLibrary = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getDotLibrary()); + t.is(error.message, + "Failed to read some path for project library.d: " + + "Non-whitespace before first tag.\nLine: 0\nColumn: 1\nChar: n", + "Rejected with correct error message"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/.library", "byGlob got called with the expected arguments"); +}); + +test("_getDotLibrary: Propagates exception", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().rejects(new Error("because shark")); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pDotLibrary = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getDotLibrary()); + t.is(error.message, + "because shark", + "Rejected with correct error message"); +}); + +test("_getDotLibrary: Multiple .library files", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getString: async () => `Fancy`, + getPath: () => "some path" + }, { + getString: async () => `Hungry`, + getPath: () => "some other path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pDotLibrary = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getDotLibrary()); + t.deepEqual(error.message, "Found multiple (2) .library files for project library.d", + "Rejected with correct error message"); +}); + +test("_getDotLibrary: Result is cached", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getString: async () => `Fancy`, + getPath: () => "some path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pDotLibrary = null; // Clear cache from instantiation + const {content: content1, filePath: filePath1} = await project._getDotLibrary(); + t.deepEqual(content1, {chicken: {_: "Fancy"}}, ".library content has been read"); + t.is(filePath1, "some path", "Correct path"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/.library", "byGlob got called with the expected arguments"); + const {content: content2, filePath: filePath2} = await project._getDotLibrary(); + + t.deepEqual(content2, {chicken: {_: "Fancy"}}, ".library content has been read"); + t.is(filePath2, "some path", "Correct path"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/.library", "byGlob got called with the expected arguments"); +}); + +test("_getLibraryJsPath: Reads correctly", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getPath: () => "some path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pLibraryJs = null; // Clear cache from instantiation + const filePath = await project._getLibraryJsPath(); + t.deepEqual(filePath, "some path", "Expected library.js path"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/library.js", "byGlob got called with the expected arguments"); +}); + +test("_getLibraryJsPath: No library.js file", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pLibraryJs = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getLibraryJsPath()); + t.is(error.message, + "Could not find library.js file for project library.d", + "Rejected with correct error message"); +}); + +test("_getLibraryJsPath: Propagates exception", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().rejects(new Error("because shark")); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pLibraryJs = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getLibraryJsPath()); + t.is(error.message, + "because shark", + "Rejected with correct error message"); +}); + +test("_getLibraryJsPath: Multiple library.js files", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getPath: () => "some path" + }, { + getPath: () => "some other path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pLibraryJs = null; // Clear cache from instantiation + const error = await t.throwsAsync(project._getLibraryJsPath()); + t.deepEqual(error.message, "Found multiple (2) library.js files for project library.d", + "Rejected with correct error message"); +}); + +test("_getLibraryJsPath: Result is cached", async (t) => { + const project = await Specification.create(basicProjectInput); + const byGlobStub = sinon.stub().resolves([{ + getPath: () => "some path" + }]); + + project._getRawSourceReader = () => { + return { + byGlob: byGlobStub + }; + }; + project._pLibraryJs = null; // Clear cache from instantiation + const filePath1 = await project._getLibraryJsPath(); + t.deepEqual(filePath1, "some path", "Expected library.js path"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/library.js", "byGlob got called with the expected arguments"); + + const filePath2 = await project._getLibraryJsPath(); + t.deepEqual(filePath2, "some path", "Expected library.js path"); + t.is(filePath2, "some path", "Correct path"); + t.is(byGlobStub.callCount, 1, "byGlob got called once"); + t.is(byGlobStub.getCall(0).args[0], "**/library.js", "byGlob got called with the expected arguments"); +}); + +test.serial("_getNamespace: namespace resolution fails", async (t) => { + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("specifications:types:Library"); + + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + mock.reRequire("@ui5/logger"); + mock.reRequire("../../../../lib/specifications/types/Library"); + + const project = await Specification.create(basicProjectInput); + + sinon.stub(project, "_getNamespaceFromManifest").resolves({}); + sinon.stub(project, "_getNamespaceFromDotLibrary").resolves({}); + sinon.stub(project, "_getLibraryJsPath").rejects(new Error("pony error")); + const loggerVerboseSpy = sinon.spy(loggerInstance, "verbose"); + + const error = await t.throwsAsync(project._getNamespace()); + t.deepEqual(error.message, "Failed to detect namespace or namespace is empty for project library.d." + + " Check verbose log for details."); + + t.deepEqual(loggerVerboseSpy.callCount, 2, "2 calls to log.verbose should be done"); + const logVerboseCalls = loggerVerboseSpy.getCalls().map((call) => call.args[0]); + + t.true(logVerboseCalls.includes( + "Failed to resolve namespace of project library.d from manifest.json or .library file. " + + "Falling back to library.js file path..."), + "should contain message for missing manifest.json"); + + t.true(logVerboseCalls.includes( + "Namespace resolution from library.js file path failed for project library.d: pony error"), + "should contain message for missing library.js"); +}); + +test("_getNamespace: from manifest.json with .library on same level", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({ + content: { + "sap.app": { + id: "mani-pony" + } + }, + filePath: "/mani-pony/manifest.json" + }); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {name: {_: "dot-pony"}} + }, + filePath: "/mani-pony/.library" + }); + const res = await project._getNamespace(); + t.is(res, "mani-pony", "Returned correct namespace"); + t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); +}); + +test("_getNamespace: from manifest.json for flat project", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({ + content: { + "sap.app": { + id: "mani-pony" + } + }, + filePath: "/manifest.json" + }); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {name: {_: "dot-pony"}} + }, + filePath: "/.library" + }); + const res = await project._getNamespace(); + t.is(res, "mani-pony", "Returned correct namespace"); + t.false(project._isSourceNamespaced, "Project flagged as flat source structure"); +}); + +test("_getNamespace: from .library for flat project", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {name: {_: "dot-pony"}} + }, + filePath: "/.library" + }); + const res = await project._getNamespace(); + t.is(res, "dot-pony", "Returned correct namespace"); + t.false(project._isSourceNamespaced, "Project flagged as flat source structure"); +}); + +test("_getNamespace: from manifest.json with .library on same level but different directory", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({ + content: { + "sap.app": { + id: "mani-pony" + } + }, + filePath: "/mani-pony/manifest.json" + }); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {name: {_: "dot-pony"}} + }, + filePath: "/different-pony/.library" + }); + + const err = await t.throwsAsync(project._getNamespace()); + + t.deepEqual(err.message, + `Failed to detect namespace for project library.d: Found a manifest.json on the same directory level ` + + `but in a different directory than the .library file. They should be in the same directory.\n` + + ` manifest.json path: /mani-pony/manifest.json\n` + + ` is different to\n` + + ` .library path: /different-pony/.library`, + "Rejected with correct error message"); +}); + +test("_getNamespace: from manifest.json with not matching file path", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({ + content: { + "sap.app": { + id: "mani-pony" + } + }, + filePath: "/different/namespace/manifest.json" + }); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {name: {_: "dot-pony"}} + }, + filePath: "/different/namespace/.library" + }); + const err = await t.throwsAsync(project._getNamespace()); + + t.deepEqual(err.message, `Detected namespace "mani-pony" does not match detected directory structure ` + + `"different/namespace" for project library.d`, "Rejected with correct error message"); +}); + +test.serial("_getNamespace: from manifest.json without sap.app id", async (t) => { + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("specifications:types:Library"); + + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + mock.reRequire("@ui5/logger"); + mock.reRequire("../../../../lib/specifications/types/Library"); + + const project = await Specification.create(basicProjectInput); + const manifestPath = "/different/namespace/manifest.json"; + sinon.stub(project, "_getManifest").resolves({ + content: { + "sap.app": { + } + }, + filePath: manifestPath + }); + sinon.stub(project, "_getDotLibrary").resolves({}); + + const loggerSpy = sinon.spy(loggerInstance, "verbose"); + const err = await t.throwsAsync(project._getNamespace()); + + t.deepEqual(err.message, + `Failed to detect namespace or namespace is empty for project library.d. Check verbose log for details.`, + "Rejected with correct error message"); + t.is(loggerSpy.callCount, 4, "calls to verbose"); + + + t.is(loggerSpy.getCall(0).args[0], + `Namespace resolution from manifest.json failed for project library.d: ` + + `No sap.app/id configuration found in manifest.json of project library.d at ${manifestPath}`, + "correct verbose message"); + t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); +}); + +test("_getNamespace: from .library", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {name: {_: "dot-pony"}} + }, + filePath: "/dot-pony/.library" + }); + const res = await project._getNamespace(); + t.deepEqual(res, "dot-pony", "Returned correct namespace"); + t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); +}); + +test("_getNamespace: from .library with ignored manifest.json on lower level", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({ + content: { + "sap.app": { + id: "mani-pony" + } + }, + filePath: "/namespace/somedir/manifest.json" + }); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {name: {_: "dot-pony"}} + }, + filePath: "/dot-pony/.library" + }); + const res = await project._getNamespace(); + t.deepEqual(res, "dot-pony", "Returned correct namespace"); + t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); +}); + +test("_getNamespace: manifest.json on higher level than .library", async (t) => { + const manifestFsPath = "/namespace/manifest.json"; + const dotLibraryFsPath = "/namespace/morenamespace/.library"; + + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({ + content: { + "sap.app": { + id: "mani-pony" + } + }, + filePath: manifestFsPath + }); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {name: {_: "dot-pony"}} + }, + filePath: dotLibraryFsPath + }); + const err = await t.throwsAsync(project._getNamespace()); + + t.deepEqual(err.message, + `Failed to detect namespace for project library.d: ` + + `Found a manifest.json on a higher directory level than the .library file. ` + + `It should be on the same or a lower level. ` + + `Note that a manifest.json on a lower level will be ignored.\n` + + ` manifest.json path: ${manifestFsPath}\n` + + ` is higher than\n` + + ` .library path: ${dotLibraryFsPath}`, + "Rejected with correct error message"); +}); + +test("_getNamespace: from .library with maven placeholder", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {name: {_: "${mvn-pony}"}} + }, + filePath: "/mvn-unicorn/.library" + }); + const resolveMavenPlaceholderStub = + sinon.stub(project, "_resolveMavenPlaceholder").resolves("mvn-unicorn"); + const res = await project._getNamespace(); + + t.deepEqual(resolveMavenPlaceholderStub.getCall(0).args[0], "${mvn-pony}", + "resolveMavenPlaceholder called with correct argument"); + t.deepEqual(res, "mvn-unicorn", "Returned correct namespace"); + t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); +}); + +test("_getNamespace: from .library with not matching file path", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {name: {_: "mvn-pony"}} + }, + filePath: "/different/namespace/.library" + }); + const err = await t.throwsAsync(project._getNamespace()); + + t.deepEqual(err.message, `Detected namespace "mvn-pony" does not match detected directory structure ` + + `"different/namespace" for project library.d`, + "Rejected with correct error message"); + t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); +}); + +test("_getNamespace: from library.js", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({}); + sinon.stub(project, "_getDotLibrary").resolves({}); + sinon.stub(project, "_getLibraryJsPath").resolves("/my/namespace/library.js"); + const res = await project._getNamespace(); + t.deepEqual(res, "my/namespace", "Returned correct namespace"); + t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); +}); + +test.serial("_getNamespace: from project root level library.js", async (t) => { + const log = require("@ui5/logger"); + const loggerInstance = log.getLogger("specifications:types:Library"); + + mock("@ui5/logger", { + getLogger: () => loggerInstance + }); + mock.reRequire("@ui5/logger"); + const loggerSpy = sinon.spy(loggerInstance, "verbose"); + + mock.reRequire("../../../../lib/specifications/types/Library"); + + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({}); + sinon.stub(project, "_getDotLibrary").resolves({}); + sinon.stub(project, "_getLibraryJsPath").resolves("/library.js"); + const err = await t.throwsAsync(project._getNamespace()); + + t.deepEqual(err.message, + "Failed to detect namespace or namespace is empty for project library.d. Check verbose log for details.", + "Rejected with correct error message"); + + const logCalls = loggerSpy.getCalls().map((call) => call.args[0]); + t.true(logCalls.includes( + "Namespace resolution from library.js file path failed for project library.d: " + + "Found library.js file in root directory. " + + "Expected it to be in namespace directory."), + "should contain message for root level library.js"); +}); + +test("_getNamespace: neither manifest nor .library or library.js path contain it", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({}); + sinon.stub(project, "_getDotLibrary").resolves({}); + sinon.stub(project, "_getLibraryJsPath").rejects(new Error("Not found bla")); + const err = await t.throwsAsync(project._getNamespace()); + t.deepEqual(err.message, + "Failed to detect namespace or namespace is empty for project library.d. Check verbose log for details.", + "Rejected with correct error message"); +}); + +test("_getNamespace: maven placeholder resolution fails", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({ + content: { + "sap.app": { + id: "${mvn-pony}" + } + }, + filePath: "/not/used" + }); + sinon.stub(project, "_getDotLibrary").resolves({}); + const resolveMavenPlaceholderStub = + sinon.stub(project, "_resolveMavenPlaceholder") + .rejects(new Error("because squirrel")); + const err = await t.throwsAsync(project._getNamespace()); + t.deepEqual(err.message, + "Failed to resolve namespace maven placeholder of project library.d: because squirrel", + "Rejected with correct error message"); + t.deepEqual(resolveMavenPlaceholderStub.getCall(0).args[0], "${mvn-pony}", + "resolveMavenPlaceholder called with correct argument"); +}); + +test("_getCopyrightFromDotLibrary", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: { + copyright: { + _: "copyleft" + } + } + } + }); + const copyright = await project._getCopyrightFromDotLibrary(); + t.is(copyright, "copyleft", "Returned correct copyright"); +}); + +test("_getCopyrightFromDotLibrary: No copyright in .library file", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {} + }, + filePath: "some path" + }); + const copyright = await project._getCopyrightFromDotLibrary(); + t.is(copyright, null, "No copyright returned"); +}); + +test("_getCopyrightFromDotLibrary: Propagates exception", async (t) => { + const project = await Specification.create(basicProjectInput); + + sinon.stub(project, "_getDotLibrary").rejects(new Error("because shark")); + const err = await t.throwsAsync(project._getCopyrightFromDotLibrary()); + t.is(err.message, "because shark", + "Threw with excepted error message"); +}); + +test("_getPreloadExcludesFromDotLibrary: Single exclude", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: { + appData: { + packaging: { + "all-in-one": { + exclude: { + $: { + name: "test/exclude/**" + } + } + } + } + } + } + } + }); + const excludes = await project._getPreloadExcludesFromDotLibrary(); + t.deepEqual(excludes, [ + "test/exclude/**", + ], "_getPreloadExcludesFromDotLibrary should return array with excludes"); +}); + +test("_getPreloadExcludesFromDotLibrary: Multiple excludes", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: { + appData: { + packaging: { + "all-in-one": { + exclude: [ + { + $: { + name: "test/exclude1/**" + } + }, + { + $: { + name: "test/exclude2/**" + } + }, + { + $: { + name: "test/exclude3/**" + } + } + ] + } + } + } + } + } + }); + const excludes = await project._getPreloadExcludesFromDotLibrary(); + t.deepEqual(excludes, [ + "test/exclude1/**", + "test/exclude2/**", + "test/exclude3/**" + ], "_getPreloadExcludesFromDotLibrary should return array with excludes"); +}); + +test("_getPreloadExcludesFromDotLibrary: No excludes in .library file", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {} + }, + filePath: "some path" + }); + const excludes = await project._getPreloadExcludesFromDotLibrary(); + t.is(excludes, null, "No excludes returned"); +}); + +test("_getPreloadExcludesFromDotLibrary: Propagates exception", async (t) => { + const project = await Specification.create(basicProjectInput); + + sinon.stub(project, "_getDotLibrary").rejects(new Error("because shark")); + const err = await t.throwsAsync(project._getPreloadExcludesFromDotLibrary()); + t.is(err.message, "because shark", + "Threw with excepted error message"); +}); + +test("_getNamespaceFromManifest", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({ + content: { + "sap.app": { + id: "library namespace" + } + }, + filePath: "some path" + }); + const {namespace, filePath} = await project._getNamespaceFromManifest(); + t.is(namespace, "library namespace", "Returned correct namespace"); + t.is(filePath, "some path", "Returned correct file path"); +}); + +test("_getNamespaceFromManifest: No ID in manifest.json file", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getManifest").resolves({ + content: { + "sap.app": {} + }, + filePath: "some path" + }); + const res = await project._getNamespaceFromManifest(); + t.deepEqual(res, {}, "Empty object returned"); +}); + +test("_getNamespaceFromManifest: Does not propagate exception", async (t) => { + const project = await Specification.create(basicProjectInput); + + sinon.stub(project, "_getManifest").rejects(new Error("because shark")); + const res = await project._getNamespaceFromManifest(); + t.deepEqual(res, {}, "Empty object returned"); +}); + +test("_getNamespaceFromDotLibrary", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: { + name: { + _: "library namespace" + } + } + }, + filePath: "some path" + }); + const {namespace, filePath} = await project._getNamespaceFromDotLibrary(); + t.is(namespace, "library namespace", + "Returned correct namespace"); + t.is(filePath, "some path", + "Returned correct file path"); +}); + +test("_getNamespaceFromDotLibrary: No library name in .library file", async (t) => { + const project = await Specification.create(basicProjectInput); + sinon.stub(project, "_getDotLibrary").resolves({ + content: { + library: {} + }, + filePath: "some path" + }); + const res = await project._getNamespaceFromDotLibrary(); + t.deepEqual(res, {}, "Empty object returned"); +}); + +test("_getNamespaceFromDotLibrary: Does not propagate exception", async (t) => { + const project = await Specification.create(basicProjectInput); + + sinon.stub(project, "_getDotLibrary").rejects(new Error("because shark")); + const res = await project._getNamespaceFromDotLibrary(); + t.deepEqual(res, {}, "Empty object returned"); +}); diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js new file mode 100644 index 00000000000..952dd5a0e8a --- /dev/null +++ b/packages/project/test/lib/specifications/types/Module.js @@ -0,0 +1,142 @@ +const test = require("ava"); +const path = require("path"); +const sinon = require("sinon"); +const mock = require("mock-require"); +const Specification = require("../../../../lib/specifications/Specification"); + +function clone(obj) { + return JSON.parse(JSON.stringify(obj)); +} + +const moduleA = path.join(__dirname, "..", "..", "..", "fixtures", "module.a"); +const basicProjectInput = { + id: "library.d.id", + version: "1.0.0", + modulePath: moduleA, + configuration: { + specVersion: "2.3", + kind: "project", + type: "module", + metadata: { + name: "module.a", + copyright: "Some fancy copyright" // allowed but ignored + }, + resources: { + configuration: { + paths: { + "/": "dist", + "/dev/": "dev" + } + } + } + } +}; + +test.afterEach.always((t) => { + sinon.restore(); + mock.stopAll(); +}); + +test("Correct class", async (t) => { + const Module = mock.reRequire("../../../../lib/specifications/types/Module"); + const project = await Specification.create(basicProjectInput); + t.true(project instanceof Module, `Is an instance of the Module class`); +}); + +test("Access project resources via reader", async (t) => { + const project = await Specification.create(basicProjectInput); + const reader = await project.getReader(); + const resource1 = await reader.byPath("/dev/devTools.js"); + t.truthy(resource1, "Found the requested resource"); + t.is(resource1.getPath(), "/dev/devTools.js", "Resource has correct path"); + + const resource2 = await reader.byPath("/index.js"); + t.truthy(resource2, "Found the requested resource"); + t.is(resource2.getPath(), "/index.js", "Resource has correct path"); +}); + +test("Modify project resources via workspace and access via reader", async (t) => { + const project = await Specification.create(basicProjectInput); + const workspace = await project.getWorkspace(); + const workspaceResource = await workspace.byPath("/dev/devTools.js"); + t.truthy(workspaceResource, "Found resource in workspace"); + + const newContent = (await workspaceResource.getString()).replace(/dev/g, "duck duck"); + workspaceResource.setString(newContent); + await workspace.write(workspaceResource); + + const reader = await project.getReader(); + const readerResource = await reader.byPath("/dev/devTools.js"); + t.truthy(readerResource, "Found the requested resource byPath"); + t.is(readerResource.getPath(), "/dev/devTools.js", "Resource (byPath) has correct path"); + t.is(await readerResource.getString(), newContent, + "Found resource (byPath) has expected (changed) content"); + + const gGlobResult = await reader.byGlob("**/devTools.js"); + t.is(gGlobResult.length, 1, "Found the requested resource byGlob"); + t.is(gGlobResult[0].getPath(), "/dev/devTools.js", "Resource (byGlob) has correct path"); + t.is(await gGlobResult[0].getString(), newContent, + "Found resource (byGlob) has expected (changed) content"); +}); + +test("Modify project resources via workspace and access via reader for other path mapping", async (t) => { + const project = await Specification.create(basicProjectInput); + const workspace = await project.getWorkspace(); + const workspaceResource = await workspace.byPath("/index.js"); + t.truthy(workspaceResource, "Found resource in workspace"); + + const newContent = (await workspaceResource.getString()).replace("world", "duck"); + workspaceResource.setString(newContent); + await workspace.write(workspaceResource); + + const reader = await project.getReader(); + const readerResource = await reader.byPath("/index.js"); + t.truthy(readerResource, "Found the requested resource byPath"); + t.is(readerResource.getPath(), "/index.js", "Resource (byPath) has correct path"); + t.is(await readerResource.getString(), newContent, + "Found resource (byPath) has expected (changed) content"); + + const gGlobResult = await reader.byGlob("**/index.js"); + t.is(gGlobResult.length, 1, "Found the requested resource byGlob"); + t.is(gGlobResult[0].getPath(), "/index.js", "Resource (byGlob) has correct path"); + t.is(await gGlobResult[0].getString(), newContent, + "Found resource (byGlob) has expected (changed) content"); +}); + +test("_configureAndValidatePaths: Default path mapping", async (t) => { + const projectInput = clone(basicProjectInput); + projectInput.configuration.resources = {}; + const project = await Specification.create(projectInput); + + t.is(project._paths.length, 1, "One default path mapping"); + t.is(project._paths[0].virBasePath, "/", "Default path mapping for /"); + t.is(project._paths[0].fsBasePath, projectInput.modulePath, "Correct fs path"); +}); + +test("_configureAndValidatePaths: Configured path mapping", async (t) => { + const projectInput = clone(basicProjectInput); + const project = await Specification.create(projectInput); + + t.is(project._paths.length, 2, "Two path mappings"); + t.is(project._paths[0].virBasePath, "/", "Correct virtual base path for /"); + t.is(project._paths[0].fsBasePath, projectInput.modulePath + "/dist", "Correct fs path"); + t.is(project._paths[1].virBasePath, "/dev/", "Correct virtual base path for /dev/"); + t.is(project._paths[1].fsBasePath, projectInput.modulePath + "/dev", "Correct fs path"); +}); + +test("_configureAndValidatePaths: Default directory does not exist", async (t) => { + const projectInput = clone(basicProjectInput); + projectInput.configuration.resources = {}; + projectInput.modulePath = "does/not/exist"; + const err = await t.throwsAsync(Specification.create(projectInput)); + + t.is(err.message, "Unable to find root directory of module project module.a"); +}); + +test("_configureAndValidatePaths: Directory does not exist", async (t) => { + const projectInput = clone(basicProjectInput); + projectInput.configuration.resources.configuration.paths.doesNotExist = "does/not/exist"; + const err = await t.throwsAsync(Specification.create(projectInput)); + + t.is(err.message, "Unable to find directory 'does/not/exist' in module project module.a"); +}); diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js new file mode 100644 index 00000000000..e2f053f0221 --- /dev/null +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -0,0 +1,122 @@ +const test = require("ava"); +const path = require("path"); +const sinon = require("sinon"); +const mock = require("mock-require"); +const Specification = require("../../../../lib/specifications/Specification"); + +function clone(obj) { + return JSON.parse(JSON.stringify(obj)); +} + +const themeLibraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "theme.library.e"); +const basicProjectInput = { + id: "theme.library.e.id", + version: "1.0.0", + modulePath: themeLibraryEPath, + configuration: { + specVersion: "2.6", + kind: "project", + type: "theme-library", + metadata: { + name: "theme.library.e", + copyright: "Some fancy copyright" + } + } +}; + +test.afterEach.always((t) => { + sinon.restore(); + mock.stopAll(); +}); + +test("Correct class", async (t) => { + const ThemeLibrary = mock.reRequire("../../../../lib/specifications/types/ThemeLibrary"); + const project = await Specification.create(basicProjectInput); + t.true(project instanceof ThemeLibrary, `Is an instance of the ThemeLibrary class`); +}); + +test("getCopyright", async (t) => { + const project = await Specification.create(basicProjectInput); + + t.deepEqual(project.getCopyright(), "Some fancy copyright", "Copyright was read correctly"); +}); + +test("Access project resources via reader", async (t) => { + const project = await Specification.create(basicProjectInput); + const reader = await project.getReader(); + const resource = await reader.byPath("/resources/theme/library/e/themes/my_theme/.theme"); + t.truthy(resource, "Found the requested resource"); + t.is(resource.getPath(), "/resources/theme/library/e/themes/my_theme/.theme", "Resource has correct path"); +}); + +test("Access project test-resources via reader", async (t) => { + const project = await Specification.create(basicProjectInput); + const reader = await project.getReader(); + const resource = await reader.byPath("/test-resources/theme/library/e/Test.html"); + t.truthy(resource, "Found the requested resource"); + t.is(resource.getPath(), "/test-resources/theme/library/e/Test.html", "Resource has correct path"); +}); + +test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { + const project = await Specification.create(basicProjectInput); + const workspace = await project.getWorkspace(); + const workspaceResource = await workspace.byPath("/resources/theme/library/e/themes/my_theme/library.source.less"); + t.truthy(workspaceResource, "Found resource in workspace"); + + const newContent = (await workspaceResource.getString()).replace("fancy", "fancy dancy"); + workspaceResource.setString(newContent); + await workspace.write(workspaceResource); + + const reader = await project.getReader(); + const readerResource = await reader.byPath("/resources/theme/library/e/themes/my_theme/library.source.less"); + t.truthy(readerResource, "Found the requested resource byPath"); + t.is(readerResource.getPath(), "/resources/theme/library/e/themes/my_theme/library.source.less", + "Resource (byPath) has correct path"); + t.is(await readerResource.getString(), newContent, + "Found resource (byPath) has expected (changed) content"); + + const globResult = await reader.byGlob("**/library.source.less"); + t.is(globResult.length, 1, "Found the requested resource byGlob"); + t.is(globResult[0].getPath(), "/resources/theme/library/e/themes/my_theme/library.source.less", + "Resource (byGlob) has correct path"); + t.is(await globResult[0].getString(), newContent, + "Found resource (byGlob) has expected (changed) content"); +}); + +test("_configureAndValidatePaths: Default paths", async (t) => { + const project = await Specification.create(basicProjectInput); + + t.is(project._srcPath, "src", "Correct default path for src"); + t.is(project._testPath, "test", "Correct default path for test"); + t.true(project._testPathExists, "Test path detected as existing"); +}); + +test("_configureAndValidatePaths: Test directory does not exist", async (t) => { + const projectInput = clone(basicProjectInput); + projectInput.configuration.resources = { + configuration: { + paths: { + test: "does/not/exist" + } + } + }; + const project = await Specification.create(projectInput); + + t.is(project._srcPath, "src", "Correct path for src"); + t.is(project._testPath, "does/not/exist", "Correct path for test"); + t.false(project._testPathExists, "Test path detected as non-existent"); +}); + +test("_configureAndValidatePaths: Source directory does not exist", async (t) => { + const projectInput = clone(basicProjectInput); + projectInput.configuration.resources = { + configuration: { + paths: { + src: "does/not/exist" + } + } + }; + const err = await t.throwsAsync(Specification.create(projectInput)); + + t.is(err.message, "Unable to find directory 'does/not/exist' in theme-library project theme.library.e"); +}); diff --git a/packages/project/test/lib/translators/npm.integration.js b/packages/project/test/lib/translators/npm.integration.js deleted file mode 100644 index 7bab081bf7a..00000000000 --- a/packages/project/test/lib/translators/npm.integration.js +++ /dev/null @@ -1,1014 +0,0 @@ -const test = require("ava"); -const path = require("path"); -const mock = require("mock-require"); -const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); -const applicationCPath = path.join(__dirname, "..", "..", "fixtures", "application.c"); -const applicationC2Path = path.join(__dirname, "..", "..", "fixtures", "application.c2"); -const applicationC3Path = path.join(__dirname, "..", "..", "fixtures", "application.c3"); -const applicationDPath = path.join(__dirname, "..", "..", "fixtures", "application.d"); -const applicationFPath = path.join(__dirname, "..", "..", "fixtures", "application.f"); -const applicationGPath = path.join(__dirname, "..", "..", "fixtures", "application.g"); -const errApplicationAPath = path.join(__dirname, "..", "..", "fixtures", "err.application.a"); -const cycleDepsBasePath = path.join(__dirname, "..", "..", "fixtures", "cyclic-deps", "node_modules"); - -let npmTranslator = require("../../../lib/translators/npm"); - -test.serial("AppA: project with collection dependency", (t) => { - // Also cover log level based conditionals in this test - const logger = require("@ui5/logger"); - mock("@ui5/logger", { - getLogger: () => { - const log = logger.getLogger(); - log.isLevelEnabled = () => true; - return log; - } - }); - npmTranslator = mock.reRequire("../../../lib/translators/npm"); - return npmTranslator.generateDependencyTree(applicationAPath).then((parsedTree) => { - t.deepEqual(parsedTree, applicationATree, "Parsed correctly"); - mock.stop("@ui5/logger"); - }); -}); - -test("AppC: project with dependency with optional dependency resolved through root project", (t) => { - return npmTranslator.generateDependencyTree(applicationCPath).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCTree, "Parsed correctly"); - }); -}); - -test("AppC2: project with dependency with optional dependency resolved through other project", (t) => { - return npmTranslator.generateDependencyTree(applicationC2Path).then((parsedTree) => { - t.deepEqual(parsedTree, applicationC2Tree, "Parsed correctly"); - }); -}); - -test("AppC3: project with dependency with optional dependency resolved " + - "through other project (but got hoisted)", (t) => { - return npmTranslator.generateDependencyTree(applicationC3Path).then((parsedTree) => { - t.deepEqual(parsedTree, applicationC3Tree, "Parsed correctly"); - }); -}); - -test("AppD: project with dependency with unresolved optional dependency", (t) => { - // application.d`s dependency "library.e" has an optional dependency to "library.d" - // which is already present in the node_modules directory of library.e - return npmTranslator.generateDependencyTree(applicationDPath).then((parsedTree) => { - t.deepEqual(parsedTree, applicationDTree, "Parsed correctly. library.d is not in dependency tree."); - }); -}); - -test("AppF: project with UI5-dependencies", (t) => { - return npmTranslator.generateDependencyTree(applicationFPath).then((parsedTree) => { - t.deepEqual(parsedTree, applicationFTree, "Parsed correctly"); - }); -}); - -test("AppG: project with npm 'optionalDependencies' should not fail if optional dependency cannot be resolved", (t) => { - return npmTranslator.generateDependencyTree(applicationGPath).then((parsedTree) => { - t.deepEqual(parsedTree, applicationGTree, "Parsed correctly"); - }); -}); - -test("AppCycleA: cyclic dev deps", (t) => { - const applicationCycleAPath = path.join(cycleDepsBasePath, "application.cycle.a"); - - return npmTranslator.generateDependencyTree(applicationCycleAPath).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleATree, "Parsed correctly"); - }); -}); - -test("AppCycleA: cyclic dev deps - include deduped", (t) => { - const applicationCycleAPath = path.join(cycleDepsBasePath, "application.cycle.a"); - - return npmTranslator.generateDependencyTree(applicationCycleAPath, {includeDeduped: true}).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleATreeIncDeduped, "Parsed correctly"); - }); -}); - -test("AppCycleB: cyclic npm deps - Cycle via devDependency on second level - include deduped", (t) => { - const applicationCycleBPath = path.join(cycleDepsBasePath, "application.cycle.b"); - return npmTranslator.generateDependencyTree(applicationCycleBPath, {includeDeduped: true}).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleBTreeIncDeduped, "Parsed correctly"); - }); -}); - -test("AppCycleB: cyclic npm deps - Cycle via devDependency on second level", (t) => { - const applicationCycleBPath = path.join(cycleDepsBasePath, "application.cycle.b"); - return npmTranslator.generateDependencyTree(applicationCycleBPath, {includeDeduped: false}).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleBTree, "Parsed correctly"); - }); -}); - -test("AppCycleC: cyclic npm deps - Cycle on third level (one indirection)", (t) => { - const applicationCycleCPath = path.join(cycleDepsBasePath, "application.cycle.c"); - return npmTranslator.generateDependencyTree(applicationCycleCPath, {includeDeduped: false}).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleCTree, "Parsed correctly"); - }); -}); - -test("AppCycleC: cyclic npm deps - Cycle on third level (one indirection) - include deduped", (t) => { - const applicationCycleCPath = path.join(cycleDepsBasePath, "application.cycle.c"); - return npmTranslator.generateDependencyTree(applicationCycleCPath, {includeDeduped: true}).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleCTreeIncDeduped, "Parsed correctly"); - }); -}); - -test("AppCycleD: cyclic npm deps - Cycles everywhere", (t) => { - const applicationCycleDPath = path.join(cycleDepsBasePath, "application.cycle.d"); - return npmTranslator.generateDependencyTree(applicationCycleDPath, {includeDeduped: true}).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleDTree, "Parsed correctly"); - }); -}); - -test("AppCycleE: cyclic npm deps - Cycle via devDependency - include deduped", (t) => { - const applicationCycleEPath = path.join(cycleDepsBasePath, "application.cycle.e"); - return npmTranslator.generateDependencyTree(applicationCycleEPath, {includeDeduped: true}).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleETreeIncDeduped, "Parsed correctly"); - }); -}); - -test("AppCycleE: cyclic npm deps - Cycle via devDependency", (t) => { - const applicationCycleEPath = path.join(cycleDepsBasePath, "application.cycle.e"); - return npmTranslator.generateDependencyTree(applicationCycleEPath, {includeDeduped: false}).then((parsedTree) => { - t.deepEqual(parsedTree, applicationCycleETree, "Parsed correctly"); - }); -}); - -test("Error: missing package.json", async (t) => { - const dir = path.parse(__dirname).root; - const error = await t.throwsAsync(npmTranslator.generateDependencyTree(dir)); - t.is(error.message, `[npm translator] Failed to locate package.json for directory "${dir}"`); -}); - -test("Error: missing dependency", async (t) => { - const error = await t.throwsAsync(npmTranslator.generateDependencyTree(errApplicationAPath)); - t.is(error.message, "[npm translator] Could not locate " + - "module library.xx via resolve logic (error: Cannot find module 'library.xx/package.json' from '" + - errApplicationAPath + "') or in a collection"); -}); - -// TODO: Test for scenarios where a dependency is missing *and there is no package.json* in the path above -// the root module -// This should test whether the collection-fallback can handle not receiving a .pkg object from readPkgUp -// Currently tricky to test as there is always a package.json located above the test fixtures. - -/* ========================= */ -/* ======= Test data ======= */ - -const applicationATree = { - id: "application.a", - version: "1.0.0", - path: applicationAPath, - dependencies: [ - { - id: "library.d", - version: "1.0.0", - path: path.join(applicationAPath, "node_modules", "library.d"), - dependencies: [] - }, - { - id: "library.a", - version: "1.0.0", - path: path.join(applicationAPath, "node_modules", "collection", "library.a"), - dependencies: [] - }, - { - id: "library.b", - version: "1.0.0", - path: path.join(applicationAPath, "node_modules", "collection", "library.b"), - dependencies: [] - }, - { - id: "library.c", - version: "1.0.0", - path: path.join(applicationAPath, "node_modules", "collection", "library.c"), - dependencies: [] - } - ] -}; - -const applicationCTree = { - id: "application.c", - version: "1.0.0", - path: applicationCPath, - dependencies: [ - { - id: "library.e", - version: "1.0.0", - path: path.join(applicationCPath, "node_modules", "library.e"), - dependencies: [ - { - id: "library.d", - version: "1.0.0", - path: path.join(applicationCPath, "node_modules", "library.d"), - dependencies: [] - } - ] - }, - { - id: "library.d", - version: "1.0.0", - path: path.join(applicationCPath, "node_modules", "library.d"), - dependencies: [] - } - ] -}; - - -const applicationC2Tree = { - id: "application.c2", - version: "1.0.0", - path: applicationC2Path, - dependencies: [ - { - id: "library.e", - version: "1.0.0", - path: path.join(applicationC2Path, "node_modules", "library.e"), - dependencies: [ - { - id: "library.d", - version: "1.0.0", - path: path.join(applicationC2Path, "node_modules", "library.d-depender", - "node_modules", "library.d"), - dependencies: [] - } - ] - }, - { - id: "library.d-depender", - version: "1.0.0", - path: path.join(applicationC2Path, "node_modules", "library.d-depender"), - dependencies: [ - { - id: "library.d", - version: "1.0.0", - path: path.join(applicationC2Path, "node_modules", "library.d-depender", - "node_modules", "library.d"), - dependencies: [] - } - ] - } - ] -}; - -const applicationC3Tree = { - id: "application.c3", - version: "1.0.0", - path: applicationC3Path, - dependencies: [ - { - id: "library.e", - version: "1.0.0", - path: path.join(applicationC3Path, "node_modules", "library.e"), - dependencies: [ - { - id: "library.d", - version: "1.0.0", - path: path.join(applicationC3Path, "node_modules", "library.d"), - dependencies: [] - } - ] - }, - { - id: "library.d-depender", - version: "1.0.0", - path: path.join(applicationC3Path, "node_modules", "library.d-depender"), - dependencies: [ - { - id: "library.d", - version: "1.0.0", - path: path.join(applicationC3Path, "node_modules", "library.d"), - dependencies: [] - } - ] - } - ] -}; - -const applicationDTree = { - id: "application.d", - version: "1.0.0", - path: applicationDPath, - dependencies: [ - { - id: "library.e", - version: "1.0.0", - path: path.join(applicationDPath, "node_modules", "library.e"), - dependencies: [] - } - ] -}; - -const applicationFTree = { - id: "application.f", - version: "1.0.0", - path: applicationFPath, - dependencies: [ - { - id: "library.d", - version: "1.0.0", - path: path.join(applicationFPath, "node_modules", "library.d"), - dependencies: [] - } - ] -}; - -const applicationGTree = { - id: "application.g", - version: "1.0.0", - path: applicationGPath, - dependencies: [ - { - id: "library.d", - version: "1.0.0", - path: path.join(applicationGPath, "node_modules", "library.d"), - dependencies: [] - } - ] -}; - -const applicationCycleATree = { - "id": "application.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.a"), - "dependencies": [ - { - "id": "component.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "component.cycle.a"), - "dependencies": [ - { - "id": "library.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "library.cycle.a"), - "dependencies": [] - }, - { - "id": "library.cycle.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "library.cycle.b"), - "dependencies": [] - } - ] - } - ] -}; - -const applicationCycleATreeIncDeduped = { - "id": "application.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.a"), - "dependencies": [ - { - "id": "component.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "component.cycle.a"), - "dependencies": [ - { - "id": "library.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "library.cycle.a"), - "dependencies": [ - { - "id": "component.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "component.cycle.a"), - "dependencies": [], - "deduped": true - } - ] - }, - { - "id": "library.cycle.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "library.cycle.b"), - "dependencies": [ - { - "id": "component.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "component.cycle.a"), - "dependencies": [], - "deduped": true - } - ] - }, - { - "id": "application.cycle.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.a"), - "dependencies": [], - "deduped": true - } - ] - } - ] -}; - -const applicationCycleBTree = { - "id": "application.cycle.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.b"), - "dependencies": [ - { - "id": "module.d", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.d"), - "dependencies": [ - { - "id": "module.e", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.e"), - "dependencies": [] - } - ] - }, - { - "id": "module.e", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.e"), - "dependencies": [ - { - "id": "module.d", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.d"), - "dependencies": [] - } - ] - } - ] -}; - -const applicationCycleBTreeIncDeduped = { - "id": "application.cycle.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.b"), - "dependencies": [ - { - "id": "module.d", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.d"), - "dependencies": [ - { - "id": "module.e", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.e"), - "dependencies": [ - { - "id": "module.d", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.d"), - "dependencies": [], - "deduped": true - } - ] - } - ] - }, - { - "id": "module.e", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.e"), - "dependencies": [ - { - "id": "module.d", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.d"), - "dependencies": [ - { - "id": "module.e", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.e"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] -}; - -const applicationCycleCTree = { - "id": "application.cycle.c", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.c"), - "dependencies": [ - { - "id": "module.f", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.f"), - "dependencies": [ - { - "id": "module.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.a"), - "dependencies": [ - { - "id": "module.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.b"), - "dependencies": [ - { - "id": "module.c", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.c"), - "dependencies": [] - } - ] - } - ] - } - ] - }, - { - "id": "module.g", - "version": "1.0.0", "path": path.join(cycleDepsBasePath, "module.g"), - "dependencies": [ - { - "id": "module.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.a"), - "dependencies": [ - { - "id": "module.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.b"), - "dependencies": [ - { - "id": "module.c", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.c"), - "dependencies": [] - } - ] - } - ] - } - ] - } - ] -}; - -const applicationCycleCTreeIncDeduped = { - "id": "application.cycle.c", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.c"), - "dependencies": [ - { - "id": "module.f", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.f"), - "dependencies": [ - { - "id": "module.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.a"), - "dependencies": [ - { - "id": "module.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.b"), - "dependencies": [ - { - "id": "module.c", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.c"), - "dependencies": [ - { - "id": "module.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.a"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] - } - ] - }, - { - "id": "module.g", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.g"), - "dependencies": [ - { - "id": "module.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.a"), - "dependencies": [ - { - "id": "module.b", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.b"), - "dependencies": [ - { - "id": "module.c", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.c"), - "dependencies": [ - { - "id": "module.a", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.a"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] - } - ] - } - ] -}; - -const applicationCycleDTree = { - "id": "application.cycle.d", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.d"), - "dependencies": [ - { - "id": "module.h", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.h"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [ - { - "id": "module.k", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.k"), - "dependencies": [ - { - "id": "module.h", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.h"), - "dependencies": [], - "deduped": true - }, - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [], - "deduped": true - }, - { - "id": "module.j", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.j"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] - }, - { - "id": "module.j", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.j"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [ - { - "id": "module.k", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.k"), - "dependencies": [ - { - "id": "module.h", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.h"), - "dependencies": [], - "deduped": true - }, - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [], - "deduped": true - }, - { - "id": "module.j", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.j"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] - } - ] - }, - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [ - { - "id": "module.k", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.k"), - "dependencies": [ - { - "id": "module.h", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.h"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [], - "deduped": true - }, - { - "id": "module.j", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.j"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [], - "deduped": true - } - ] - } - ] - }, - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [], - "deduped": true - }, - { - "id": "module.j", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.j"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] - }, - { - "id": "module.j", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.j"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [ - { - "id": "module.k", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.k"), - "dependencies": [ - { - "id": "module.h", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.h"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [], - "deduped": true - }, - { - "id": "module.j", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.j"), - "dependencies": [], - "deduped": true - } - ] - }, - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [], - "deduped": true - }, - { - "id": "module.j", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.j"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] - }, - { - "id": "module.k", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.k"), - "dependencies": [ - { - "id": "module.h", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.h"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [ - { - "id": "module.k", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.k"), - "dependencies": [], - "deduped": true - } - ] - }, - { - "id": "module.j", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.j"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [ - { - "id": "module.k", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.k"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] - }, - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [ - { - "id": "module.k", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.k"), - "dependencies": [], - "deduped": true - } - ] - }, - { - "id": "module.j", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.j"), - "dependencies": [ - { - "id": "module.i", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.i"), - "dependencies": [ - { - "id": "module.k", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.k"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] - } - ] -}; - -const applicationCycleETree = { - "id": "application.cycle.e", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.e"), - "dependencies": [ - { - "id": "module.l", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.l"), - "dependencies": [ - { - "id": "module.m", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.m"), - "dependencies": [] - } - ] - }, - { - "id": "module.m", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.m"), - "dependencies": [ - { - "id": "module.l", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.l"), - "dependencies": [] - } - ] - } - ] -}; - -const applicationCycleETreeIncDeduped = { - "id": "application.cycle.e", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "application.cycle.e"), - "dependencies": [ - { - "id": "module.l", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.l"), - "dependencies": [ - { - "id": "module.m", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.m"), - "dependencies": [ - { - "id": "module.l", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.l"), - "dependencies": [], - "deduped": true - } - ] - } - ] - }, - { - "id": "module.m", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.m"), - "dependencies": [ - { - "id": "module.l", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.l"), - "dependencies": [ - { - "id": "module.m", - "version": "1.0.0", - "path": path.join(cycleDepsBasePath, "module.m"), - "dependencies": [], - "deduped": true - } - ] - } - ] - } - ] -}; diff --git a/packages/project/test/lib/translators/npm.js b/packages/project/test/lib/translators/npm.js deleted file mode 100644 index c7fe9a454f5..00000000000 --- a/packages/project/test/lib/translators/npm.js +++ /dev/null @@ -1,128 +0,0 @@ -const test = require("ava"); -const sinon = require("sinon"); -const path = require("path"); - -const NpmTranslator = require("../../../lib/translators/npm")._NpmTranslator; - -test.afterEach.always((t) => { - sinon.restore(); -}); - -test.serial("processPkg - single package", async (t) => { - const npmTranslator = new NpmTranslator({ - includeDeduped: false - }); - const result = await npmTranslator.processPkg({ - path: path.join("/", "sample-package"), - name: "sample-package", - pkg: { - version: "1.2.3" - } - }, ":parent:"); - t.deepEqual(result, [{ - dependencies: [], - id: "sample-package", - path: path.join("/", "sample-package"), - version: "1.2.3" - }]); -}); - -test.serial("processPkg - collection", async (t) => { - const npmTranslator = new NpmTranslator({ - includeDeduped: false - }); - - const readProjectStub = sinon.stub(npmTranslator, "readProject").resolves({ - dependencies: [], - id: "other-package", - path: path.join("/", "sample-package", "packages", "other-package"), - version: "4.5.6" - }); - - const result = await npmTranslator.processPkg({ - path: path.join("/", "sample-package"), - name: "sample-package", - pkg: { - version: "1.2.3", - collection: { - modules: { - "other-package": "./packages/other-package" - } - } - } - }, ":parent:"); - - t.deepEqual(result, [{ - dependencies: [], - id: "other-package", - path: path.join("/", "sample-package", "packages", "other-package"), - version: "4.5.6" - }]); - - t.is(readProjectStub.callCount, 1, "readProject should be called once"); - t.deepEqual(readProjectStub.getCall(0).args, [ - { - moduleName: "other-package", - modulePath: path.join("/", "sample-package", "packages", "other-package"), - parentPath: ":parent:sample-package:", - }, - ], "readProject should be called with the expected args"); -}); - -test.serial("processPkg - pkg.collection (type string)", async (t) => { - const npmTranslator = new NpmTranslator({ - includeDeduped: false - }); - - const readProjectStub = sinon.stub(npmTranslator, "readProject").resolves(null); - - const result = await npmTranslator.processPkg({ - path: path.join("/", "sample-package"), - name: "sample-package", - pkg: { - version: "1.2.3", - - // collection of type string should not be detected as UI5 collection - collection: "foo" - } - }, ":parent:"); - - t.deepEqual(result, [{ - dependencies: [], - id: "sample-package", - path: path.join("/", "sample-package"), - version: "1.2.3" - }]); - - t.is(readProjectStub.callCount, 0, "readProject should not be called once"); -}); - -test.serial("processPkg - pkg.collection (without modules)", async (t) => { - const npmTranslator = new NpmTranslator({ - includeDeduped: false - }); - - const readProjectStub = sinon.stub(npmTranslator, "readProject").resolves(null); - - const result = await npmTranslator.processPkg({ - path: path.join("/", "sample-package"), - name: "sample-package", - pkg: { - version: "1.2.3", - - // collection without modules object should not be detected as UI5 collection - collection: { - modules: true - } - } - }, ":parent:"); - - t.deepEqual(result, [{ - dependencies: [], - id: "sample-package", - path: path.join("/", "sample-package"), - version: "1.2.3" - }]); - - t.is(readProjectStub.callCount, 0, "readProject should not be called once"); -}); diff --git a/packages/project/test/lib/translators/static.js b/packages/project/test/lib/translators/static.js deleted file mode 100644 index 7c83a72309f..00000000000 --- a/packages/project/test/lib/translators/static.js +++ /dev/null @@ -1,83 +0,0 @@ -const test = require("ava"); -const path = require("path"); -const fs = require("graceful-fs"); -const sinon = require("sinon"); -const escapeStringRegexp = require("escape-string-regexp"); -const staticTranslator = require("../../..").translators.static; -const projectPath = path.join(__dirname, "..", "..", "fixtures", "application.h"); - -test("Generates dependency tree for project with projectDependencies.yaml", (t) => { - return staticTranslator.generateDependencyTree(projectPath) - .then((parsedTree) => { - t.deepEqual(parsedTree, expectedTree, "Parsed correctly"); - }); -}); - -test("Generates dependency tree for project with projectDependencies.yaml (via parameters)", (t) => { - return staticTranslator.generateDependencyTree(projectPath, { - parameters: [path.join(projectPath, "projectDependencies.yaml")] - }) - .then((parsedTree) => { - t.deepEqual(parsedTree, expectedTree, "Parsed correctly"); - }); -}); - -test("Generates dependency tree for project by passing tree object", (t) => { - return staticTranslator.generateDependencyTree(projectPath, { - tree: { - id: "testsuite", - version: "0.0.1", - description: "Sample App", - main: "index.html", - path: "./", - dependencies: [ - { - id: "sap.f", - version: "1.56.1", - path: "../sap.f" - }, - { - id: "sap.m", - version: "1.61.0", - path: "../sap.m" - } - ] - } - }) - .then((parsedTree) => { - t.deepEqual(parsedTree, expectedTree, "Parsed correctly"); - }); -}); - -test("Error: Throws if projectDependencies.yaml was not found", async (t) => { - const projectPath = "notExistingPath"; - const fsError = new Error("File not found"); - const fsStub = sinon.stub(fs, "readFile"); - fsStub.callsArgWith(1, fsError); - const error = await t.throwsAsync(staticTranslator.generateDependencyTree(projectPath)); - const yamlPath = path.join(projectPath, "projectDependencies.yaml"); - t.regex(error.message, - new RegExp(`\\[static translator\\] Failed to load dependency tree from path ` + - `${escapeStringRegexp(yamlPath)} - Error: ENOENT:`)); - fsStub.restore(); -}); - -const expectedTree = { - id: "testsuite", - version: "0.0.1", - description: "Sample App", - main: "index.html", - path: path.resolve(projectPath, "./"), - dependencies: [ - { - id: "sap.f", - version: "1.56.1", - path: path.resolve(projectPath, "../sap.f") - }, - { - id: "sap.m", - version: "1.61.0", - path: path.resolve(projectPath, "../sap.m") - } - ] -}; diff --git a/packages/project/test/lib/translators/ui5Framework.js b/packages/project/test/lib/translators/ui5Framework.js deleted file mode 100644 index 177646dbb6a..00000000000 --- a/packages/project/test/lib/translators/ui5Framework.js +++ /dev/null @@ -1,957 +0,0 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); - -let ui5Framework; -let utils; - -test.beforeEach((t) => { - t.context.Sapui5ResolverStub = sinon.stub(); - t.context.Sapui5ResolverInstallStub = sinon.stub(); - t.context.Sapui5ResolverStub.callsFake(() => { - return { - install: t.context.Sapui5ResolverInstallStub - }; - }); - t.context.Sapui5ResolverResolveVersionStub = sinon.stub(); - t.context.Sapui5ResolverStub.resolveVersion = t.context.Sapui5ResolverResolveVersionStub; - mock("../../../lib/ui5Framework/Sapui5Resolver", t.context.Sapui5ResolverStub); - - t.context.Openui5ResolverStub = sinon.stub(); - mock("../../../lib/ui5Framework/Openui5Resolver", t.context.Openui5ResolverStub); - - ui5Framework = mock.reRequire("../../../lib/translators/ui5Framework"); - utils = ui5Framework._utils; -}); - -test.afterEach.always((t) => { - sinon.restore(); - mock.stopAll(); -}); - -test.serial("generateDependencyTree", async (t) => { - const tree = { - specVersion: "2.0", - id: "test1", - version: "1.0.0", - path: "/test-project/", - framework: { - name: "SAPUI5", - version: "1.75.0" - } - }; - - const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; - const libraryMetadata = {fake: "metadata"}; - - const getFrameworkLibrariesFromTreeStub = sinon.stub(utils, "getFrameworkLibrariesFromTree") - .returns(referencedLibraries); - - t.context.Sapui5ResolverInstallStub.resolves({libraryMetadata}); - - const getProjectStub = sinon.stub(); - getProjectStub.onFirstCall().returns({fake: "metadata-project-1"}); - getProjectStub.onSecondCall().returns({fake: "metadata-project-2"}); - getProjectStub.onThirdCall().returns({fake: "metadata-project-3"}); - const ProjectProcessorStub = sinon.stub(utils, "ProjectProcessor") - .callsFake(() => { - return { - getProject: getProjectStub - }; - }); - - const ui5FrameworkTree = await ui5Framework.generateDependencyTree(tree); - - t.is(getFrameworkLibrariesFromTreeStub.callCount, 1, "getFrameworkLibrariesFromTree should be called once"); - t.deepEqual(getFrameworkLibrariesFromTreeStub.getCall(0).args, [tree], - "getFrameworkLibrariesFromTree should be called with expected args"); - - t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); - t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{cwd: tree.path, version: tree.framework.version}], - "Sapui5Resolver#constructor should be called with expected args"); - - t.is(t.context.Sapui5ResolverInstallStub.callCount, 1, "Sapui5Resolver#install should be called once"); - t.deepEqual(t.context.Sapui5ResolverInstallStub.getCall(0).args, [referencedLibraries], - "Sapui5Resolver#install should be called with expected args"); - - t.is(ProjectProcessorStub.callCount, 1, "ProjectProcessor#constructor should be called once"); - t.deepEqual(ProjectProcessorStub.getCall(0).args, [{libraryMetadata}], - "ProjectProcessor#constructor should be called with expected args"); - - t.is(getProjectStub.callCount, 3, "ProjectProcessor#getProject should be called 3 times"); - t.deepEqual(getProjectStub.getCall(0).args, [referencedLibraries[0]], - "Sapui5Resolver#getProject should be called with expected args (call 1)"); - t.deepEqual(getProjectStub.getCall(1).args, [referencedLibraries[1]], - "Sapui5Resolver#getProject should be called with expected args (call 2)"); - t.deepEqual(getProjectStub.getCall(2).args, [referencedLibraries[2]], - "Sapui5Resolver#getProject should be called with expected args (call 3)"); - - t.deepEqual(ui5FrameworkTree, { - specVersion: "2.0", // specVersion must not be lost to prevent config re-loading in projectPreprocessor - id: "test1", - version: "1.0.0", - path: "/test-project/", - framework: { - name: "SAPUI5", - version: "1.75.0" - }, - dependencies: [ - {fake: "metadata-project-1"}, - {fake: "metadata-project-2"}, - {fake: "metadata-project-3"} - ], - _transparentProject: true - }); -}); - -test.serial("generateDependencyTree (with versionOverride)", async (t) => { - const tree = { - id: "test1", - version: "1.0.0", - path: "/test-project/", - framework: { - name: "SAPUI5", - version: "1.75.0" - } - }; - - const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; - const libraryMetadata = {fake: "metadata"}; - - sinon.stub(utils, "getFrameworkLibrariesFromTree").returns(referencedLibraries); - - t.context.Sapui5ResolverInstallStub.resolves({libraryMetadata}); - - t.context.Sapui5ResolverResolveVersionStub.resolves("1.99.9"); - - const getProjectStub = sinon.stub(); - getProjectStub.onFirstCall().returns({fake: "metadata-project-1"}); - getProjectStub.onSecondCall().returns({fake: "metadata-project-2"}); - getProjectStub.onThirdCall().returns({fake: "metadata-project-3"}); - sinon.stub(utils, "ProjectProcessor") - .callsFake(() => { - return { - getProject: getProjectStub - }; - }); - - await ui5Framework.generateDependencyTree(tree, {versionOverride: "1.99"}); - - t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); - t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{cwd: tree.path, version: "1.99.9"}], - "Sapui5Resolver#constructor should be called with expected args"); -}); - -test.serial("generateDependencyTree should throw error when no framework version is provided in tree", async (t) => { - const tree = { - id: "test-id", - version: "1.2.3", - path: "/test-project/", - metadata: { - name: "test-name" - }, - framework: { - name: "SAPUI5" - } - }; - - await t.throwsAsync(async () => { - await ui5Framework.generateDependencyTree(tree); - }, {message: "framework.version is not defined for project test-id"}); - - await t.throwsAsync(async () => { - await ui5Framework.generateDependencyTree(tree, { - versionOverride: "1.75.0" - }); - }, {message: "framework.version is not defined for project test-id"}); -}); - -test.serial("generateDependencyTree should skip framework project without version", async (t) => { - const tree = { - id: "@sapui5/project", - version: "1.2.3", - path: "/sapui5-project/", - metadata: { - name: "sapui5.project" - }, - framework: { - name: "SAPUI5" - } - }; - - const result = await ui5Framework.generateDependencyTree(tree); - t.is(result, null, "Framework projects should be skipped"); -}); - -test.serial("generateDependencyTree should skip framework project with version and framework config", async (t) => { - const tree = { - id: "@sapui5/project", - version: "1.2.3", - path: "/sapui5-project/", - metadata: { - name: "sapui5.project" - }, - framework: { - name: "SAPUI5", - version: "1.2.3", - libraries: [ - { - name: "lib1" - } - ] - } - }; - - const result = await ui5Framework.generateDependencyTree(tree); - t.is(result, null, "Framework projects should be skipped"); -}); - -test.serial("generateDependencyTree should ignore root project without framework configuration", async (t) => { - const tree = { - id: "test-id", - version: "1.2.3", - path: "/test-project/", - metadata: { - name: "test-name" - }, - dependencies: [] - }; - const ui5FrameworkTree = await ui5Framework.generateDependencyTree(tree); - - t.is(ui5FrameworkTree, null, "No framework tree should be returned"); -}); -test.serial("utils.isFrameworkProject", (t) => { - t.true(utils.isFrameworkProject({id: "@sapui5/foo"}), "@sapui5/foo"); - t.true(utils.isFrameworkProject({id: "@openui5/foo"}), "@openui5/foo"); - t.false(utils.isFrameworkProject({id: "sapui5"}), "sapui5"); - t.false(utils.isFrameworkProject({id: "openui5"}), "openui5"); -}); -test.serial("utils.shouldIncludeDependency", (t) => { - // root project dependency should always be included - t.true(utils.shouldIncludeDependency({}, true)); - t.true(utils.shouldIncludeDependency({optional: true}, true)); - t.true(utils.shouldIncludeDependency({optional: false}, true)); - t.true(utils.shouldIncludeDependency({optional: null}, true)); - t.true(utils.shouldIncludeDependency({optional: "abc"}, true)); - t.true(utils.shouldIncludeDependency({development: true}, true)); - t.true(utils.shouldIncludeDependency({development: false}, true)); - t.true(utils.shouldIncludeDependency({development: null}, true)); - t.true(utils.shouldIncludeDependency({development: "abc"}, true)); - t.true(utils.shouldIncludeDependency({foo: true}, true)); - - t.true(utils.shouldIncludeDependency({}, false)); - t.false(utils.shouldIncludeDependency({optional: true}, false)); - t.true(utils.shouldIncludeDependency({optional: false}, false)); - t.true(utils.shouldIncludeDependency({optional: null}, false)); - t.true(utils.shouldIncludeDependency({optional: "abc"}, false)); - t.false(utils.shouldIncludeDependency({development: true}, false)); - t.true(utils.shouldIncludeDependency({development: false}, false)); - t.true(utils.shouldIncludeDependency({development: null}, false)); - t.true(utils.shouldIncludeDependency({development: "abc"}, false)); - t.true(utils.shouldIncludeDependency({foo: true}, false)); - - // Having both optional and development should not be the case, but that should be validated beforehand - t.true(utils.shouldIncludeDependency({optional: true, development: true}, true)); - t.false(utils.shouldIncludeDependency({optional: true, development: true}, false)); -}); -test.serial("utils.getFrameworkLibrariesFromTree: Project without dependencies", (t) => { - const tree = { - id: "test", - metadata: { - name: "test" - }, - framework: { - libraries: [] - }, - dependencies: [] - }; - const ui5Dependencies = utils.getFrameworkLibrariesFromTree(tree); - t.deepEqual(ui5Dependencies, []); -}); - -test.serial("utils.getFrameworkLibrariesFromTree: Framework project", (t) => { - const tree = { - id: "@sapui5/project", - metadata: { - name: "project" - }, - framework: { - libraries: [ - { - name: "lib1" - } - ] - }, - dependencies: [ - { - id: "test1", - specVersion: "2.0", - metadata: { - name: "test1" - }, - framework: { - libraries: [ - { - name: "lib2" - } - ] - } - } - ] - }; - const ui5Dependencies = utils.getFrameworkLibrariesFromTree(tree); - t.deepEqual(ui5Dependencies, []); // Framework projects should be skipped -}); - -test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dependency with libraries", (t) => { - const tree = { - id: "test1", - specVersion: "2.0", - metadata: { - name: "test1" - }, - _isRoot: true, - framework: { - libraries: [ - { - name: "lib1" - }, - { - name: "lib2", - optional: true - }, - { - name: "lib6", - development: true - } - ] - }, - dependencies: [ - { - id: "test2", - specVersion: "2.0", - metadata: { - name: "test2" - }, - framework: { - libraries: [ - { - name: "lib3" - }, - { - name: "lib4", - optional: true - } - ] - }, - dependencies: [ - { - id: "test3", - specVersion: "2.0", - metadata: { - name: "test3" - }, - framework: { - libraries: [ - { - name: "lib5" - }, - { - name: "lib7", - development: true - } - ] - }, - dependencies: [] - } - ] - }, - { - id: "@sapui5/lib8", - specVersion: "2.0", - metadata: { - name: "lib8" - }, - framework: { - libraries: [ - { - name: "should.be.ignored" - } - ] - }, - dependencies: [] - }, - { - id: "@openui5/lib9", - specVersion: "1.1", - metadata: { - name: "lib9" - }, - dependencies: [] - }, - { - id: "@foo/library", - specVersion: "1.1", - metadata: { - name: "foo.library" - }, - framework: { - libraries: [ - { - name: "should.also.be.ignored" - } - ] - }, - dependencies: [] - } - ] - }; - const ui5Dependencies = utils.getFrameworkLibrariesFromTree(tree); - t.deepEqual(ui5Dependencies, ["lib1", "lib2", "lib6", "lib3", "lib5"]); -}); - -test.serial("utils.mergeTrees", (t) => { - const projectTree = { - id: "test1", - specVersion: "2.0", - metadata: { - name: "test1" - }, - _isRoot: true, - framework: { - libraries: [ - { - name: "lib1" - }, - { - name: "lib2", - optional: true - }, - { - name: "lib6", - development: true - } - ] - }, - dependencies: [ - { - id: "test2", - specVersion: "2.0", - metadata: { - name: "test2" - }, - framework: { - libraries: [ - { - name: "lib3" - }, - { - name: "lib4", - optional: true - } - ] - }, - dependencies: [ - { - id: "test3", - specVersion: "2.0", - metadata: { - name: "test3" - }, - framework: { - libraries: [ - { - name: "lib5" - }, - { - name: "lib7", - development: true - } - ] - }, - dependencies: [] - } - ] - }, - { - id: "@openui5/lib9", - specVersion: "1.1", - metadata: { - name: "lib9" - }, - dependencies: [] - }, - { - id: "@foo/library", - specVersion: "1.1", - metadata: { - name: "foo.library" - }, - framework: { - libraries: [ - { - name: "should.also.be.ignored" - } - ] - }, - dependencies: [] - } - ] - }; - const frameworkTree = { - metadata: { - name: "test1" - }, - _transparentProject: true, - dependencies: [ - { - metadata: { - name: "lib1" - }, - dependencies: [] - }, - { - metadata: { - name: "lib2" - }, - dependencies: [] - }, - { - metadata: { - name: "lib3" - }, - dependencies: [ - { - metadata: { - name: "lib4" - }, - dependencies: [ - { - metadata: { - name: "lib6" - }, - dependencies: [] - } - ] - } - ] - }, - { - metadata: { - name: "lib4" - }, - dependencies: [ - { - metadata: { - name: "lib6" - }, - dependencies: [] - } - ] - }, - { - metadata: { - name: "lib5" - }, - dependencies: [] - }, - { - metadata: { - name: "lib6" - }, - dependencies: [] - }, - { - metadata: { - name: "lib7" - }, - dependencies: [] - } - ] - }; - const mergedProjectTree = ui5Framework.mergeTrees(projectTree, frameworkTree); - t.deepEqual(mergedProjectTree, { - id: "test1", - specVersion: "2.0", - metadata: { - name: "test1" - }, - _isRoot: true, - framework: { - libraries: [ - { - name: "lib1" - }, - { - name: "lib2", - optional: true - }, - { - name: "lib6", - development: true - } - ] - }, - dependencies: [ - { - id: "test2", - specVersion: "2.0", - metadata: { - name: "test2" - }, - framework: { - libraries: [ - { - name: "lib3" - }, - { - name: "lib4", - optional: true - } - ] - }, - dependencies: [ - { - id: "test3", - specVersion: "2.0", - metadata: { - name: "test3" - }, - framework: { - libraries: [ - { - name: "lib5" - }, - { - name: "lib7", - development: true - } - ] - }, - dependencies: [ - { - metadata: { - name: "lib5" - }, - dependencies: [] - } - ] - }, - { - metadata: { - name: "lib3" - }, - dependencies: [ - { - metadata: { - name: "lib4" - }, - dependencies: [ - { - metadata: { - name: "lib6" - }, - dependencies: [] - } - ] - } - ] - }, - { - metadata: { - name: "lib4" - }, - dependencies: [ - { - metadata: { - name: "lib6" - }, - dependencies: [] - } - ] - } - ] - }, - { - id: "@foo/library", - specVersion: "1.1", - metadata: { - name: "foo.library" - }, - framework: { - libraries: [ - { - name: "should.also.be.ignored" - } - ] - }, - dependencies: [] - }, - { - metadata: { - name: "lib1" - }, - dependencies: [] - }, - { - metadata: { - name: "lib2" - }, - dependencies: [] - }, - { - metadata: { - name: "lib6" - }, - dependencies: [] - }, - ] - }); -}); - -test.serial("utils.mergeTrees: Missing framework library", (t) => { - const projectTree = { - id: "test1", - specVersion: "2.0", - metadata: { - name: "test1" - }, - _isRoot: true, - framework: { - libraries: [ - { - name: "lib1" - } - ] - }, - dependencies: [] - }; - const frameworkTree = { - metadata: { - name: "test1" - }, - _transparentProject: true, - dependencies: [ - { - metadata: { - name: "lib2" - }, - dependencies: [] - } - ] - }; - const error = t.throws(() => { - ui5Framework.mergeTrees(projectTree, frameworkTree); - }); - t.is(error.message, `Missing framework library lib1 required by project test1`); -}); - -test.serial("utils.mergeTrees: Do not abort merge if project has already been processed", (t) => { - const projectTree = { - id: "test1", - specVersion: "2.0", - metadata: { - name: "test1" - }, - _isRoot: true, - framework: { - libraries: [ - { - name: "lib1" - } - ] - }, - dependencies: [ - { - id: "test2", - specVersion: "2.0", - metadata: { - name: "test2" - }, - dependencies: [ - { - id: "test4", - specVersion: "2.0", - metadata: { - name: "test4" - }, - framework: { - libraries: [ - { - name: "lib1" - } - ] - }, - dependencies: [{ - id: "test2", - deduped: true, - dependencies: [] - }] - } - ] - }, - { - id: "test3", - specVersion: "2.0", - metadata: { - name: "test3" - }, - dependencies: [ - { - id: "test4", - specVersion: "2.0", - metadata: { - name: "test4" - }, - framework: { - libraries: [ - { - name: "lib1" - } - ] - }, - dependencies: [] - }, - { - id: "test5", - specVersion: "2.0", - metadata: { - name: "test5" - }, - framework: { - libraries: [ - { - name: "lib1" - } - ] - }, - dependencies: [] - } - ] - } - ] - }; - const frameworkTree = { - metadata: { - name: "test1" - }, - _transparentProject: true, - dependencies: [ - { - metadata: { - name: "lib1" - }, - dependencies: [] - } - ] - }; - const mergedProjectTree = ui5Framework.mergeTrees(projectTree, frameworkTree); - t.deepEqual(mergedProjectTree, { - id: "test1", - specVersion: "2.0", - metadata: { - name: "test1" - }, - _isRoot: true, - framework: { - libraries: [ - { - name: "lib1" - } - ] - }, - dependencies: [ - { - id: "test2", - specVersion: "2.0", - metadata: { - name: "test2" - }, - dependencies: [ - { - id: "test4", - specVersion: "2.0", - metadata: { - name: "test4" - }, - framework: { - libraries: [ - { - name: "lib1" - } - ] - }, - dependencies: [ - { - id: "test2", - deduped: true, - dependencies: [] - }, { - metadata: { - name: "lib1" - }, - dependencies: [] - } - ] - } - ] - }, - { - id: "test3", - specVersion: "2.0", - metadata: { - name: "test3" - }, - dependencies: [ - { - id: "test4", - specVersion: "2.0", - metadata: { - name: "test4" - }, - framework: { - libraries: [ - { - name: "lib1" - } - ] - }, - dependencies: [] - }, - { - id: "test5", - specVersion: "2.0", - metadata: { - name: "test5" - }, - framework: { - libraries: [ - { - name: "lib1" - } - ] - }, - dependencies: [ - { - metadata: { - name: "lib1" - }, - dependencies: [] - } - ] - } - ] - }, - { - metadata: { - name: "lib1" - }, - dependencies: [] - } - ] - }); -}); - -// TODO test: utils.getAllNodesOfTree - -// TODO test: ProjectProcessor From 64be4402079917ba74a1265f1246791519ed11d9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Jun 2022 17:02:56 +0200 Subject: [PATCH 0621/1272] [ui5-project][INTERNAL] generateProjectGraph: Fix tests --- packages/project/test/lib/generateProjectGraph.usingObject.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/test/lib/generateProjectGraph.usingObject.js b/packages/project/test/lib/generateProjectGraph.usingObject.js index 7bad266d845..1c911a0dd70 100644 --- a/packages/project/test/lib/generateProjectGraph.usingObject.js +++ b/packages/project/test/lib/generateProjectGraph.usingObject.js @@ -1649,6 +1649,6 @@ test("rootConfig", async (t) => { rootConfigPath: "ui5-test-configPath.yaml" }); t.deepEqual(projectGraph.getRoot().getCustomConfiguration(), { - rootConfigPathTest: true + configPathTest: true }); }); From eea6e0e73c037e5002d6a3a6452113d337a02018 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Jun 2022 17:03:37 +0200 Subject: [PATCH 0622/1272] [ui5-project][INTERNAL] Remove obsolete dependency to @ui5/project Access to middlewareRepository is no longer necessary --- packages/project/package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index 994eb40b046..8c3a8d4fcce 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -105,7 +105,6 @@ "@ui5/builder": "^3.0.0-alpha.6", "@ui5/fs": "3.0.0-alpha.3", "@ui5/logger": "^3.0.1-alpha.1", - "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", From 6e29292a10ccaf69a12383dcd1cf6033aa14d55c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Jun 2022 17:03:48 +0200 Subject: [PATCH 0623/1272] [ui5-project][INTERNAL] Lower coverage thresholds Will create additional tests in follow-up PRs --- packages/project/package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package.json b/packages/project/package.json index 8c3a8d4fcce..a3f828837b3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -72,10 +72,10 @@ "jsdoc-plugin.js" ], "check-coverage": true, - "statements": 85, - "branches": 75, - "functions": 85, - "lines": 85, + "statements": 79, + "branches": 70, + "functions": 80, + "lines": 80, "watermarks": { "statements": [ 70, From 856e4c34c66ef0151565631c592bd487f13f17ea Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Jun 2022 17:39:20 +0200 Subject: [PATCH 0624/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-alpha.3 to 3.0.0-alpha.4 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-alpha.4/CHANGELOG.md --- packages/project/package-lock.json | 4153 +++++++++++----------------- packages/project/package.json | 2 +- 2 files changed, 1574 insertions(+), 2581 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a92f22e785a..e70636d73b3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,8 +10,8 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.6", + "@ui5/fs": "^3.0.0-alpha.4", "@ui5/logger": "^3.0.1-alpha.1", - "@ui5/server": "^3.0.0-alpha.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", @@ -327,17 +327,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@babel/highlight/node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -588,15 +577,6 @@ "sprintf-js": "~1.0.2" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -895,8 +875,7 @@ }, "node_modules/@ui5/fs": { "version": "3.0.0-alpha.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.4.tgz", - "integrity": "sha512-20R3B1n8mLGKKQbZd+QPcrd9B8yEvaNrgIZLDreY1hAVPW3HHr6G6VsxnXf1RpcrRmPHFHKWIe9neLEDK+CjUw==", + "license": "Apache-2.0", "dependencies": { "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", @@ -926,39 +905,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/server": { - "version": "3.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-3.0.0-alpha.1.tgz", - "integrity": "sha512-OlyGgRGPDBFVEPJKXRBtolsgWd0dUAIIpZy0MuEe/3mppDt/VgFSWUZl+keMDUVj6S24uAZbPO2YfbtZ+4l5yQ==", - "dependencies": { - "@ui5/builder": "^3.0.0-alpha.1", - "@ui5/fs": "^3.0.0-alpha.2", - "@ui5/logger": "^3.0.1-alpha.1", - "body-parser": "^1.19.1", - "compression": "^1.7.4", - "connect-openui5": "^0.10.2", - "cors": "^2.8.5", - "devcert-sanscache": "^0.4.8", - "escape-html": "^1.0.3", - "etag": "^1.8.1", - "express": "^4.17.2", - "fresh": "^0.5.2", - "graceful-fs": "^4.2.9", - "make-dir": "^3.1.0", - "mime-types": "^2.1.34", - "parseurl": "^1.3.3", - "portscanner": "^2.1.1", - "replacestream": "^4.0.3", - "router": "^1.3.6", - "spdy": "^4.0.2", - "treeify": "^1.0.1", - "yesno": "^0.3.1" - }, - "engines": { - "node": ">= 16.13.2", - "npm": ">= 8" - } - }, "node_modules/@vue/compiler-core": { "version": "3.2.37", "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz", @@ -1034,18 +980,6 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "dev": true }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/acorn": { "version": "8.7.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", @@ -1141,26 +1075,86 @@ "string-width": "^4.1.0" } }, - "node_modules/ansi-regex": { + "node_modules/ansi-align/node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, "engines": { "node": ">=8" } }, - "node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "node_modules/ansi-align/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/ansi-align/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, "engines": { - "node": ">=10" + "node": ">=8" + } + }, + "node_modules/ansi-align/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-align/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-regex": { + "version": "4.1.1", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-styles/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" } }, + "node_modules/ansi-styles/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, "node_modules/anymatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", @@ -1232,11 +1226,6 @@ "node": ">=0.10.0" } }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, "node_modules/array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", @@ -1272,11 +1261,6 @@ "node": ">=8" } }, - "node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" - }, "node_modules/atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", @@ -1358,6 +1342,147 @@ "node": ">=10.18.0 <11 || >=12.14.0 <12.17.0 || >=12.17.0 <13 || >=14.0.0 <15 || >=15" } }, + "node_modules/ava/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ava/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ava/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/ava/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/ava/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ava/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ava/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ava/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/ava/node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ava/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ava/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ava/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -1414,42 +1539,6 @@ "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", "dev": true }, - "node_modules/body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, "node_modules/boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", @@ -1477,20 +1566,114 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/boxen/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/boxen/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/boxen/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boxen/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/boxen/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boxen/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dependencies": { @@ -1580,14 +1763,6 @@ "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==" }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/cacache": { "version": "12.0.4", "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", @@ -1708,18 +1883,6 @@ "node": ">=8" } }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -1730,15 +1893,11 @@ } }, "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "version": "5.3.1", "dev": true, + "license": "MIT", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, "node_modules/camelcase-keys": { @@ -1758,15 +1917,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/camelcase-keys/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/caniuse-lite": { "version": "1.0.30001352", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001352.tgz", @@ -1823,22 +1973,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/chalk/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/chalk/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, "node_modules/cheerio": { "version": "1.0.0-rc.9", "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.9.tgz", @@ -1903,9 +2037,8 @@ }, "node_modules/chokidar-cli": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-2.1.0.tgz", - "integrity": "sha512-6n21AVpW6ywuEPoxJcLXMA2p4T+SLjWsXKny/9yTWFz0kKxESI3eUylpeV97LylING/27T/RVTY0f2/0QaWq9Q==", "dev": true, + "license": "MIT", "dependencies": { "chokidar": "^3.2.3", "lodash.debounce": "^4.0.8", @@ -1919,139 +2052,6 @@ "node": ">= 8.10.0" } }, - "node_modules/chokidar-cli/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/chokidar-cli/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chokidar-cli/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/chokidar-cli/node_modules/cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "node_modules/chokidar-cli/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "node_modules/chokidar-cli/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/chokidar-cli/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/chokidar-cli/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/chokidar-cli/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/chokidar-cli/node_modules/wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/chokidar-cli/node_modules/yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "node_modules/chokidar-cli/node_modules/yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, "node_modules/chownr": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", @@ -2145,15 +2145,64 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/cli-truncate/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/cli-truncate/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "version": "5.0.0", "dev": true, + "license": "ISC", "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" } }, "node_modules/clone": { @@ -2186,18 +2235,21 @@ } }, "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": { - "color-name": "1.1.3" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, "node_modules/color-support": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", @@ -2206,11 +2258,6 @@ "color-support": "bin.js" } }, - "node_modules/command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==" - }, "node_modules/commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", @@ -2237,55 +2284,6 @@ "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -2305,6 +2303,11 @@ "typedarray": "^0.0.6" } }, + "node_modules/concat-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "node_modules/concat-stream/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -2373,67 +2376,11 @@ "node": ">=8" } }, - "node_modules/connect-openui5": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.10.2.tgz", - "integrity": "sha512-41c5WbJIMvQlexQYG7++bmXePPQ+EoFKtkGRWPTXFo1BmYIQxp5JE84tTbonhOKfyRut/LgRVGp+sv/UjZqkew==", - "dependencies": { - "async": "^3.2.0", - "cookie": "^0.4.1", - "extend": "^3.0.0", - "glob": "^7.1.6", - "http-proxy": "^1.18.1", - "less-openui5": "^0.11.0", - "set-cookie-parser": "^2.4.8" - }, - "engines": { - "node": ">= 10", - "npm": ">= 5" - } - }, "node_modules/console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-disposition/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/convert-source-map": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", @@ -2452,19 +2399,6 @@ "node": ">= 4" } }, - "node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, "node_modules/copy-concurrently": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", @@ -2510,18 +2444,6 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, - "node_modules/cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/cosmiconfig": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", @@ -2657,6 +2579,7 @@ "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, "dependencies": { "ms": "2.1.2" }, @@ -2672,7 +2595,8 @@ "node_modules/debug/node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true }, "node_modules/decamelize": { "version": "1.2.0", @@ -2840,6 +2764,30 @@ "node": ">=10" } }, + "node_modules/depcheck/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/depcheck/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/depcheck/node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -2849,6 +2797,44 @@ "sprintf-js": "~1.0.2" } }, + "node_modules/depcheck/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/depcheck/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/depcheck/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/depcheck/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/depcheck/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -2862,68 +2848,91 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "node_modules/depcheck/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, "engines": { - "node": ">= 0.8" + "node": ">=8" } }, - "node_modules/deps-regex": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", - "integrity": "sha512-3tzwGYogSJi8HoG93R5x9NrdefZQOXgHgGih/7eivloOq6yC6O+yoFxZnkgP661twvfILONfoKRdF9GQOGx2RA==", - "dev": true - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "node_modules/depcheck/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">=8" } }, - "node_modules/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" - }, - "node_modules/devcert-sanscache": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.8.tgz", - "integrity": "sha512-AcuD5yTpKdY5VnZdADR2wIZMOaEqNQnIEIxuvSzu7iAWLh/I/g3Bhm6FebUby1tfd6RGtPwN5/Gp0nNT67ZSRQ==", + "node_modules/depcheck/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, "dependencies": { - "command-exists": "^1.2.2", - "get-port": "^3.0.0", - "glob": "^7.1.1", - "mkdirp": "^0.5.1", - "rimraf": "^2.6.2" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/devcert-sanscache/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" + "node_modules/depcheck/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" } }, - "node_modules/devcert-sanscache/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "node_modules/depcheck/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, "dependencies": { - "glob": "^7.1.3" + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=10" + } + }, + "node_modules/depcheck/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" } }, + "node_modules/deps-regex": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", + "integrity": "sha512-3tzwGYogSJi8HoG93R5x9NrdefZQOXgHgGih/7eivloOq6yC6O+yoFxZnkgP661twvfILONfoKRdF9GQOGx2RA==", + "dev": true + }, "node_modules/diff": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", @@ -3040,6 +3049,12 @@ "readable-stream": "^2.0.2" } }, + "node_modules/duplexer2/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, "node_modules/duplexer2/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -3081,6 +3096,11 @@ "stream-shift": "^1.0.0" } }, + "node_modules/duplexify/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "node_modules/duplexify/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -3127,11 +3147,6 @@ "semver": "bin/semver" } }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" - }, "node_modules/electron-to-chromium": { "version": "1.4.152", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.152.tgz", @@ -3151,35 +3166,15 @@ } }, "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "engines": { - "node": ">= 0.8" - } + "version": "7.0.3", + "license": "MIT" }, "node_modules/encoding": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", "dependencies": { - "iconv-lite": "^0.6.2" - } - }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" + "iconv-lite": "^0.6.2" } }, "node_modules/end-of-stream": { @@ -3335,11 +3330,6 @@ "node": ">=8" } }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" - }, "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -3516,6 +3506,15 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, + "node_modules/eslint/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/eslint/node_modules/glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -3543,6 +3542,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/eslint/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -3644,14 +3655,6 @@ "node": ">=0.10.0" } }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/event-emitter": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", @@ -3661,98 +3664,12 @@ "es5-ext": "~0.10.14" } }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" - }, "node_modules/events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, - "node_modules/express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express/node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/express/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/ext": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", @@ -3766,11 +3683,6 @@ "resolved": "https://registry.npmjs.org/type/-/type-2.6.0.tgz", "integrity": "sha512-eiDBDOmkih5pMbo9OqsqPRGMljLodLcwd5XD5JbtNB0o89xZAwynY9EdCDsJU7LtcVCClu9DvM7/0Ep1hYX3EQ==" }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -3886,36 +3798,6 @@ "node": ">=8" } }, - "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, "node_modules/find-cache-dir": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", @@ -3972,6 +3854,11 @@ "readable-stream": "^2.3.6" } }, + "node_modules/flush-write-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "node_modules/flush-write-stream/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -3994,25 +3881,6 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/follow-redirects": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", - "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, "node_modules/foreground-child": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", @@ -4026,22 +3894,6 @@ "node": ">=8.0.0" } }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/from2": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", @@ -4051,6 +3903,11 @@ "readable-stream": "^2.0.0" } }, + "node_modules/from2/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "node_modules/from2/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -4112,6 +3969,11 @@ "readable-stream": "1 || 2" } }, + "node_modules/fs-write-stream-atomic/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "node_modules/fs-write-stream-atomic/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -4183,6 +4045,51 @@ "node": ">=10" } }, + "node_modules/gauge/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/gauge/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/gauge/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/gauge/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/gauge/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/genfun": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", @@ -4198,22 +4105,11 @@ } }, "node_modules/get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, - "node_modules/get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "version": "2.0.5", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" } }, "node_modules/get-package-type": { @@ -4225,14 +4121,6 @@ "node": ">=8.0.0" } }, - "node_modules/get-port": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==", - "engines": { - "node": ">=4" - } - }, "node_modules/get-stdin": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", @@ -4362,11 +4250,6 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" - }, "node_modules/hard-rejection": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", @@ -4416,17 +4299,6 @@ "node": ">=8" } }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -4462,39 +4334,6 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" }, - "node_modules/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, - "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/hpack.js/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -4524,39 +4363,6 @@ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/http-proxy-agent": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", @@ -4611,11 +4417,11 @@ } }, "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { "node": ">=0.10.0" @@ -4776,14 +4582,6 @@ "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", "integrity": "sha512-rBtCAQAJm8A110nbwn6YdveUnuZH3WrC36IwkRXxDnq53JvXA2NVQvB7IHyKomxK1MJ4VDNw3UtFDdXQ+AvLYA==" }, - "node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "engines": { - "node": ">= 0.10" - } - }, "node_modules/irregular-plurals": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.3.0.tgz", @@ -4863,11 +4661,10 @@ } }, "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "version": "2.0.0", + "license": "MIT", "engines": { - "node": ">=8" + "node": ">=4" } }, "node_modules/is-glob": { @@ -4926,14 +4723,6 @@ "node": ">=0.12.0" } }, - "node_modules/is-number-like": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", - "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", - "dependencies": { - "lodash.isfinite": "^3.3.2" - } - }, "node_modules/is-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", @@ -5043,9 +4832,10 @@ "dev": true }, "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true }, "node_modules/isexe": { "version": "2.0.0", @@ -5506,12 +5296,6 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, "node_modules/lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", @@ -5524,23 +5308,12 @@ "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", "dev": true }, - "node_modules/lodash.isfinite": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", - "integrity": "sha512-7FGG40uhC8Mm633uKW1r58aElFlBlxCrg9JfSi3P6aYiWmfiWF0PgMd86ZUsxE5GwWPdHoS2+48bwTh2VPkIQA==" - }, "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, - "node_modules/lodash.throttle": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", - "dev": true - }, "node_modules/log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", @@ -5746,14 +5519,6 @@ "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/mem": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz", @@ -5807,11 +5572,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" - }, + "node_modules/meow/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -5820,14 +5593,6 @@ "node": ">= 8" } }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/micromatch": { "version": "4.0.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", @@ -5851,25 +5616,6 @@ "node": ">=4" } }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/mimic-fn": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", @@ -5897,11 +5643,6 @@ "node": ">=4" } }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -6007,6 +5748,12 @@ "node": ">=4.3.0" } }, + "node_modules/mock-require/node_modules/get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, "node_modules/mock-require/node_modules/normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", @@ -6101,14 +5848,6 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/next-tick": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", @@ -6127,21 +5866,6 @@ "path-to-regexp": "^1.7.0" } }, - "node_modules/nise/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, - "node_modules/nise/node_modules/path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dev": true, - "dependencies": { - "isarray": "0.0.1" - } - }, "node_modules/node-fetch-npm": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz", @@ -6394,6 +6118,15 @@ "node": ">=8.9" } }, + "node_modules/nyc/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/nyc/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -6420,22 +6153,10 @@ "wrap-ansi": "^6.2.0" } }, - "node_modules/nyc/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/nyc/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "node_modules/nyc/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, "node_modules/nyc/node_modules/find-up": { @@ -6451,13 +6172,13 @@ "node": ">=8" } }, - "node_modules/nyc/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "node_modules/nyc/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">=8" } }, "node_modules/nyc/node_modules/locate-path": { @@ -6514,6 +6235,32 @@ "node": ">=8" } }, + "node_modules/nyc/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/nyc/node_modules/wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -6550,44 +6297,25 @@ "node": ">=8" } }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "node_modules/nyc/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, "dependencies": { - "ee-first": "1.1.1" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" }, "engines": { - "node": ">= 0.8" + "node": ">=6" } }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, "node_modules/once": { @@ -6697,6 +6425,27 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/ora/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", @@ -6964,6 +6713,11 @@ "readable-stream": "^2.1.5" } }, + "node_modules/parallel-transform/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "node_modules/parallel-transform/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -7037,14 +6791,6 @@ "parse5": "^6.0.1" } }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", @@ -7076,9 +6822,13 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "dev": true, + "dependencies": { + "isarray": "0.0.1" + } }, "node_modules/path-type": { "version": "4.0.0", @@ -7222,27 +6972,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/portscanner": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-2.2.0.tgz", - "integrity": "sha512-IFroCz/59Lqa2uBvzK3bKDbDDIEaAY8XJ1jFxcLWTqosrsc32//P4VuSB2vZXoHiHqOmx8B5L5hnKOxL/7FlPw==", - "dependencies": { - "async": "^2.6.0", - "is-number-like": "^1.0.3" - }, - "engines": { - "node": ">=0.4", - "npm": ">=1.0.0" - } - }, - "node_modules/portscanner/node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dependencies": { - "lodash": "^4.17.14" - } - }, "node_modules/postcss": { "version": "8.4.14", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", @@ -7364,18 +7093,6 @@ "genfun": "^5.0.0" } }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", @@ -7430,20 +7147,6 @@ "node": ">=8" } }, - "node_modules/qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/query-ast": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.4.tgz", @@ -7481,36 +7184,6 @@ "node": ">=8" } }, - "node_modules/random-int": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", - "integrity": "sha512-YALjWK2Rt9EMIv9BF/3mvlzFWQathsvb5UZmN1QmhfIOfcQYXc/UcLzg0ablqesSBpBVLt2Tlwv/eTuBh4LXUQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -7740,6 +7413,11 @@ "node": ">=0.8.0" } }, + "node_modules/replacestream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "node_modules/replacestream/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -7783,11 +7461,6 @@ "integrity": "sha512-uuoJ1hU/k6M0779t3VMVIYpb2VMJk05cehCaABFhXaibcbvfgR8wKiozLjVFSzJPmQMRqIcO0HMyTFqfV09V6Q==", "dev": true }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" - }, "node_modules/requizzle": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.3.tgz", @@ -7895,41 +7568,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/router": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/router/-/router-1.3.7.tgz", - "integrity": "sha512-bYnD9Vv2287+g3AIll2kHITLtHV5+fldq6hVzaul9RbdGme77mvBY/1cO+ahsgstA2RI6DSg/j4W1TYHm4Lz4g==", - "dependencies": { - "array-flatten": "3.0.0", - "debug": "2.6.9", - "methods": "~1.1.2", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "setprototypeof": "1.2.0", - "utils-merge": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/router/node_modules/array-flatten": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz", - "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==" - }, - "node_modules/router/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/router/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -8009,11 +7647,6 @@ "node": ">=6.0.0" } }, - "node_modules/select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" - }, "node_modules/semver": { "version": "7.3.7", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", @@ -8071,42 +7704,6 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, "node_modules/serialize-error": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", @@ -8134,35 +7731,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" }, - "node_modules/set-cookie-parser": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.5.0.tgz", - "integrity": "sha512-cHMAtSXilfyBePduZEBVPTCftTQWz6ehWJD5YNUg4mqvRosrrjKbo4WS8JkB0/RxonMoohHm7cOGH60mDkRQ9w==" - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -8177,24 +7750,11 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" } }, "node_modules/sigmund": { @@ -8263,24 +7823,15 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/slice-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">=8" } }, - "node_modules/slice-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", @@ -8412,34 +7963,6 @@ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" }, - "node_modules/spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dependencies": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dependencies": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", @@ -8475,14 +7998,6 @@ "node": ">=8" } }, - "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/stream-each": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", @@ -8525,27 +8040,25 @@ ] }, "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "version": "3.1.0", + "license": "MIT", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" }, "engines": { - "node": ">=8" + "node": ">=6" } }, "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "version": "5.2.0", + "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1" + "ansi-regex": "^4.1.0" }, "engines": { - "node": ">=8" + "node": ">=6" } }, "node_modules/strip-bom": { @@ -8613,6 +8126,15 @@ "node": ">=10" } }, + "node_modules/supertap/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/supertap/node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -8635,6 +8157,18 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/supertap/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -8788,6 +8322,13 @@ "sprintf-js": "~1.0.2" } }, + "node_modules/tap-parser/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "optional": true + }, "node_modules/tap-parser/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -8854,6 +8395,13 @@ "sprintf-js": "~1.0.2" } }, + "node_modules/tap-xunit/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "optional": true + }, "node_modules/tap-xunit/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -9057,6 +8605,11 @@ "xtend": "~4.0.1" } }, + "node_modules/through2/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "node_modules/through2/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -9117,14 +8670,6 @@ "node": ">=8.0" } }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "engines": { - "node": ">=0.6" - } - }, "node_modules/token-types": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.1.1.tgz", @@ -9148,14 +8693,6 @@ "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", "dev": true }, - "node_modules/treeify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", - "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==", - "engines": { - "node": ">=0.6" - } - }, "node_modules/trim-newlines": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", @@ -9213,18 +8750,6 @@ "node": ">=8" } }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", @@ -9277,14 +8802,6 @@ "node": ">=8" } }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/update-notifier": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", @@ -9338,14 +8855,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/uuid": { "version": "8.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", @@ -9378,22 +8887,6 @@ "builtins": "^1.0.3" } }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, "node_modules/wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", @@ -9453,65 +8946,78 @@ "node": ">=8" } }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "node_modules/widest-line/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "node_modules/widest-line/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/widest-line/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/widest-line/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "node": ">=8" } }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/widest-line/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "ansi-regex": "^5.0.1" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "5.1.0", "dev": true, + "license": "MIT", "dependencies": { - "color-name": "~1.1.4" + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=6" } }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -9576,98 +9082,57 @@ "integrity": "sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==" }, "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" - }, - "node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "dev": true - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-parser/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "engines": { - "node": ">=6" + "node": ">=0.4" } }, - "node_modules/yargs/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + }, + "node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "dev": true, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">= 6" } }, - "node_modules/yargs/node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "node_modules/yargs": { + "version": "13.3.2", "dev": true, - "engines": { - "node": ">=10" + "license": "MIT", + "dependencies": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" } }, - "node_modules/yargs/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "node_modules/yargs-parser": { + "version": "13.1.2", "dev": true, - "engines": { - "node": ">=10" + "license": "ISC", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } }, "node_modules/yazl": { @@ -9677,11 +9142,6 @@ "dependencies": { "buffer-crc32": "~0.2.3" } - }, - "node_modules/yesno": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/yesno/-/yesno-0.3.1.tgz", - "integrity": "sha512-7RbCXegyu6DykWPWU0YEtW8gFJH8KBL2d5l2fqB0XpkH0Y9rk59YSSWpzEv7yNJBGAouPc67h3kkq0CZkpBdFw==" } }, "dependencies": { @@ -9889,14 +9349,6 @@ "js-tokens": "^4.0.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "^1.9.0" - } - }, "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -10088,12 +9540,6 @@ "sprintf-js": "~1.0.2" } }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -10345,8 +9791,6 @@ }, "@ui5/fs": { "version": "3.0.0-alpha.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.4.tgz", - "integrity": "sha512-20R3B1n8mLGKKQbZd+QPcrd9B8yEvaNrgIZLDreY1hAVPW3HHr6G6VsxnXf1RpcrRmPHFHKWIe9neLEDK+CjUw==", "requires": { "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", @@ -10368,35 +9812,6 @@ "npmlog": "^5.0.1" } }, - "@ui5/server": { - "version": "3.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/@ui5/server/-/server-3.0.0-alpha.1.tgz", - "integrity": "sha512-OlyGgRGPDBFVEPJKXRBtolsgWd0dUAIIpZy0MuEe/3mppDt/VgFSWUZl+keMDUVj6S24uAZbPO2YfbtZ+4l5yQ==", - "requires": { - "@ui5/builder": "^3.0.0-alpha.1", - "@ui5/fs": "^3.0.0-alpha.2", - "@ui5/logger": "^3.0.1-alpha.1", - "body-parser": "^1.19.1", - "compression": "^1.7.4", - "connect-openui5": "^0.10.2", - "cors": "^2.8.5", - "devcert-sanscache": "^0.4.8", - "escape-html": "^1.0.3", - "etag": "^1.8.1", - "express": "^4.17.2", - "fresh": "^0.5.2", - "graceful-fs": "^4.2.9", - "make-dir": "^3.1.0", - "mime-types": "^2.1.34", - "parseurl": "^1.3.3", - "portscanner": "^2.1.1", - "replacestream": "^4.0.3", - "router": "^1.3.6", - "spdy": "^4.0.2", - "treeify": "^1.0.1", - "yesno": "^0.3.1" - } - }, "@vue/compiler-core": { "version": "3.2.37", "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz", @@ -10472,15 +9887,6 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "dev": true }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, "acorn": { "version": "8.7.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", @@ -10548,18 +9954,71 @@ "dev": true, "requires": { "string-width": "^4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + } } }, "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + "version": "4.1.1" }, "ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true + "version": "3.2.1", + "requires": { + "color-convert": "^1.9.0" + }, + "dependencies": { + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + } + } }, "anymatch": { "version": "3.1.2", @@ -10617,11 +10076,6 @@ "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", "dev": true }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, "array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", @@ -10645,11 +10099,6 @@ "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, - "async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" - }, "atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", @@ -10717,6 +10166,112 @@ "update-notifier": "^5.0.1", "write-file-atomic": "^3.0.3", "yargs": "^16.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + } + } + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true + } } }, "balanced-match": { @@ -10758,40 +10313,6 @@ "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", "dev": true }, - "body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", @@ -10813,11 +10334,75 @@ "wrap-ansi": "^7.0.0" }, "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } } } }, @@ -10876,11 +10461,6 @@ "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==" }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, "cacache": { "version": "12.0.4", "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", @@ -10984,15 +10564,6 @@ "write-file-atomic": "^3.0.0" } }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -11000,9 +10571,7 @@ "dev": true }, "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "version": "5.3.1", "dev": true }, "camelcase-keys": { @@ -11014,14 +10583,6 @@ "camelcase": "^5.3.1", "map-obj": "^4.0.0", "quick-lru": "^4.0.1" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } } }, "caniuse-lite": { @@ -11053,20 +10614,7 @@ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "requires": { "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + } } } }, @@ -11114,125 +10662,12 @@ }, "chokidar-cli": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-2.1.0.tgz", - "integrity": "sha512-6n21AVpW6ywuEPoxJcLXMA2p4T+SLjWsXKny/9yTWFz0kKxESI3eUylpeV97LylING/27T/RVTY0f2/0QaWq9Q==", "dev": true, "requires": { "chokidar": "^3.2.3", "lodash.debounce": "^4.0.8", "lodash.throttle": "^4.1.1", "yargs": "^13.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - } - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } } }, "chownr": { @@ -11299,17 +10734,55 @@ "requires": { "slice-ansi": "^3.0.0", "string-width": "^4.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + } } }, "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "version": "5.0.0", "dev": true, "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" } }, "clone": { @@ -11336,28 +10809,23 @@ } }, "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "requires": { - "color-name": "1.1.3" + "color-name": "~1.1.4" } }, "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "color-support": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" }, - "command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==" - }, "commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", @@ -11381,48 +10849,6 @@ "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -11439,6 +10865,11 @@ "typedarray": "^0.0.6" }, "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -11503,45 +10934,11 @@ "xdg-basedir": "^4.0.0" } }, - "connect-openui5": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/connect-openui5/-/connect-openui5-0.10.2.tgz", - "integrity": "sha512-41c5WbJIMvQlexQYG7++bmXePPQ+EoFKtkGRWPTXFo1BmYIQxp5JE84tTbonhOKfyRut/LgRVGp+sv/UjZqkew==", - "requires": { - "async": "^3.2.0", - "cookie": "^0.4.1", - "extend": "^3.0.0", - "glob": "^7.1.6", - "http-proxy": "^1.18.1", - "less-openui5": "^0.11.0", - "set-cookie-parser": "^2.4.8" - } - }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "requires": { - "safe-buffer": "5.2.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - } - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, "convert-source-map": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", @@ -11557,16 +10954,6 @@ "integrity": "sha512-cj09EBuObp9gZNQCzc7hByQyrs6jVGE+o9kSJmeUoj+GiPiJvi5LYqEH/Hmme4+MTLHM+Ejtq+FChpjjEnsPdQ==", "dev": true }, - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, "copy-concurrently": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", @@ -11608,15 +10995,6 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, "cosmiconfig": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", @@ -11719,6 +11097,7 @@ "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, "requires": { "ms": "2.1.2" }, @@ -11726,7 +11105,8 @@ "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true } } }, @@ -11864,6 +11244,21 @@ "yargs": "^16.1.0" }, "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -11873,6 +11268,35 @@ "sprintf-js": "~1.0.2" } }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -11882,60 +11306,73 @@ "argparse": "^1.0.7", "esprima": "^4.0.0" } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true } } }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, "deps-regex": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", "integrity": "sha512-3tzwGYogSJi8HoG93R5x9NrdefZQOXgHgGih/7eivloOq6yC6O+yoFxZnkgP661twvfILONfoKRdF9GQOGx2RA==", "dev": true }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" - }, - "detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" - }, - "devcert-sanscache": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/devcert-sanscache/-/devcert-sanscache-0.4.8.tgz", - "integrity": "sha512-AcuD5yTpKdY5VnZdADR2wIZMOaEqNQnIEIxuvSzu7iAWLh/I/g3Bhm6FebUby1tfd6RGtPwN5/Gp0nNT67ZSRQ==", - "requires": { - "command-exists": "^1.2.2", - "get-port": "^3.0.0", - "glob": "^7.1.1", - "mkdirp": "^0.5.1", - "rimraf": "^2.6.2" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - } - } - }, "diff": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", @@ -12022,6 +11459,12 @@ "readable-stream": "^2.0.2" }, "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -12065,6 +11508,11 @@ "stream-shift": "^1.0.0" }, "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -12109,11 +11557,6 @@ } } }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" - }, "electron-to-chromium": { "version": "1.4.152", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.152.tgz", @@ -12127,14 +11570,7 @@ "dev": true }, "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" + "version": "7.0.3" }, "encoding": { "version": "0.1.13", @@ -12142,16 +11578,6 @@ "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", "requires": { "iconv-lite": "^0.6.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } } }, "end-of-stream": { @@ -12293,11 +11719,6 @@ "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", "dev": true }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" - }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -12362,6 +11783,12 @@ "v8-compile-cache": "^2.0.3" }, "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, "glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -12380,6 +11807,15 @@ "type-fest": "^0.20.2" } }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -12516,11 +11952,6 @@ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" - }, "event-emitter": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", @@ -12530,80 +11961,12 @@ "es5-ext": "~0.10.14" } }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" - }, "events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, - "express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - } - } - }, "ext": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", @@ -12619,11 +11982,6 @@ } } }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -12717,35 +12075,6 @@ "to-regex-range": "^5.0.1" } }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, "find-cache-dir": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", @@ -12790,6 +12119,11 @@ "readable-stream": "^2.3.6" }, "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -12814,11 +12148,6 @@ } } }, - "follow-redirects": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", - "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==" - }, "foreground-child": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", @@ -12829,16 +12158,6 @@ "signal-exit": "^3.0.2" } }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" - }, "from2": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", @@ -12848,6 +12167,11 @@ "readable-stream": "^2.0.0" }, "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -12897,6 +12221,11 @@ "readable-stream": "1 || 2" }, "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -12958,6 +12287,41 @@ "string-width": "^4.2.3", "strip-ansi": "^6.0.1", "wide-align": "^1.1.2" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } } }, "genfun": { @@ -12972,32 +12336,15 @@ "dev": true }, "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "version": "2.0.5", "dev": true }, - "get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, "get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true }, - "get-port": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==" - }, "get-stdin": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", @@ -13093,11 +12440,6 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" - }, "hard-rejection": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", @@ -13134,11 +12476,6 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" - }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", @@ -13165,41 +12502,6 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, "html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -13222,33 +12524,6 @@ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, "http-proxy-agent": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", @@ -13301,11 +12576,11 @@ } }, "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "safer-buffer": ">= 2.1.2 < 3.0.0" } }, "ieee754": { @@ -13419,11 +12694,6 @@ "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", "integrity": "sha512-rBtCAQAJm8A110nbwn6YdveUnuZH3WrC36IwkRXxDnq53JvXA2NVQvB7IHyKomxK1MJ4VDNw3UtFDdXQ+AvLYA==" }, - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" - }, "irregular-plurals": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.3.0.tgz", @@ -13479,9 +12749,7 @@ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" }, "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + "version": "2.0.0" }, "is-glob": { "version": "4.0.3", @@ -13518,14 +12786,6 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" }, - "is-number-like": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", - "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", - "requires": { - "lodash.isfinite": "^3.3.2" - } - }, "is-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", @@ -13602,9 +12862,10 @@ "dev": true }, "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true }, "isexe": { "version": "2.0.0", @@ -13967,12 +13228,6 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, "lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", @@ -13985,23 +13240,12 @@ "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", "dev": true }, - "lodash.isfinite": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", - "integrity": "sha512-7FGG40uhC8Mm633uKW1r58aElFlBlxCrg9JfSi3P6aYiWmfiWF0PgMd86ZUsxE5GwWPdHoS2+48bwTh2VPkIQA==" - }, "lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, - "lodash.throttle": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", - "dev": true - }, "log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", @@ -14162,11 +13406,6 @@ "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" - }, "mem": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz", @@ -14201,24 +13440,24 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", "dev": true + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" - }, "merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" - }, "micromatch": { "version": "4.0.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", @@ -14233,19 +13472,6 @@ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" - } - }, "mimic-fn": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", @@ -14264,11 +13490,6 @@ "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", "dev": true }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, "minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -14357,6 +13578,12 @@ "normalize-path": "^2.1.1" }, "dependencies": { + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, "normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", @@ -14434,11 +13661,6 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" - }, "next-tick": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", @@ -14455,23 +13677,6 @@ "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, - "path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dev": true, - "requires": { - "isarray": "0.0.1" - } - } } }, "node-fetch-npm": { @@ -14684,6 +13889,12 @@ "yargs": "^15.0.2" }, "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -14704,19 +13915,10 @@ "wrap-ansi": "^6.2.0" } }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, "find-up": { @@ -14729,10 +13931,10 @@ "path-exists": "^4.0.0" } }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "locate-path": { @@ -14774,6 +13976,26 @@ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -14803,6 +14025,16 @@ "y18n": "^4.0.0", "yargs-parser": "^18.1.2" } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, @@ -14811,29 +14043,6 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" }, - "object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" - }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" - }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -14911,6 +14120,23 @@ "log-symbols": "^4.1.0", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + } } }, "os-homedir": { @@ -15121,6 +14347,11 @@ "readable-stream": "^2.1.5" }, "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -15184,11 +14415,6 @@ "parse5": "^6.0.1" } }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, "path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", @@ -15211,9 +14437,13 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "dev": true, + "requires": { + "isarray": "0.0.1" + } }, "path-type": { "version": "4.0.0", @@ -15316,25 +14546,6 @@ "irregular-plurals": "^3.2.0" } }, - "portscanner": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-2.2.0.tgz", - "integrity": "sha512-IFroCz/59Lqa2uBvzK3bKDbDDIEaAY8XJ1jFxcLWTqosrsc32//P4VuSB2vZXoHiHqOmx8B5L5hnKOxL/7FlPw==", - "requires": { - "async": "^2.6.0", - "is-number-like": "^1.0.3" - }, - "dependencies": { - "async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "requires": { - "lodash": "^4.17.14" - } - } - } - }, "postcss": { "version": "8.4.14", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", @@ -15419,15 +14630,6 @@ "genfun": "^5.0.0" } }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, "pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", @@ -15478,14 +14680,6 @@ "escape-goat": "^2.0.0" } }, - "qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "requires": { - "side-channel": "^1.0.4" - } - }, "query-ast": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.4.tgz", @@ -15506,27 +14700,6 @@ "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", "dev": true }, - "random-int": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", - "integrity": "sha512-YALjWK2Rt9EMIv9BF/3mvlzFWQathsvb5UZmN1QmhfIOfcQYXc/UcLzg0ablqesSBpBVLt2Tlwv/eTuBh4LXUQ==" - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, "rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -15702,6 +14875,11 @@ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -15744,11 +14922,6 @@ "integrity": "sha512-uuoJ1hU/k6M0779t3VMVIYpb2VMJk05cehCaABFhXaibcbvfgR8wKiozLjVFSzJPmQMRqIcO0HMyTFqfV09V6Q==", "dev": true }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" - }, "requizzle": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.3.tgz", @@ -15827,40 +15000,6 @@ "glob": "^7.1.3" } }, - "router": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/router/-/router-1.3.7.tgz", - "integrity": "sha512-bYnD9Vv2287+g3AIll2kHITLtHV5+fldq6hVzaul9RbdGme77mvBY/1cO+ahsgstA2RI6DSg/j4W1TYHm4Lz4g==", - "requires": { - "array-flatten": "3.0.0", - "debug": "2.6.9", - "methods": "~1.1.2", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "setprototypeof": "1.2.0", - "utils-merge": "1.0.1" - }, - "dependencies": { - "array-flatten": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz", - "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, "run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -15919,11 +15058,6 @@ "invariant": "2.2.4" } }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" - }, "semver": { "version": "7.3.7", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", @@ -15970,43 +15104,6 @@ } } }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - } - } - }, "serialize-error": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", @@ -16024,32 +15121,11 @@ } } }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" }, - "set-cookie-parser": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.5.0.tgz", - "integrity": "sha512-cHMAtSXilfyBePduZEBVPTCftTQWz6ehWJD5YNUg4mqvRosrrjKbo4WS8JkB0/RxonMoohHm7cOGH60mDkRQ9w==" - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, "shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -16065,16 +15141,6 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, "sigmund": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", @@ -16125,19 +15191,10 @@ "color-convert": "^2.0.1" } }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true } } @@ -16251,31 +15308,6 @@ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" }, - "spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", @@ -16307,11 +15339,6 @@ } } }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" - }, "stream-each": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", @@ -16342,21 +15369,17 @@ } }, "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "version": "3.1.0", "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" } }, "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "version": "5.2.0", "requires": { - "ansi-regex": "^5.0.1" + "ansi-regex": "^4.1.0" } }, "strip-bom": { @@ -16402,6 +15425,12 @@ "strip-ansi": "^6.0.0" }, "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -16420,6 +15449,15 @@ "argparse": "^1.0.7", "esprima": "^4.0.0" } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } } } }, @@ -16538,6 +15576,13 @@ "sprintf-js": "~1.0.2" } }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "optional": true + }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -16599,6 +15644,13 @@ "sprintf-js": "~1.0.2" } }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "optional": true + }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -16758,6 +15810,11 @@ "xtend": "~4.0.1" }, "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -16808,11 +15865,6 @@ "is-number": "^7.0.0" } }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" - }, "token-types": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.1.1.tgz", @@ -16831,11 +15883,6 @@ } } }, - "treeify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", - "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==" - }, "trim-newlines": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", @@ -16878,15 +15925,6 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, "typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", @@ -16936,11 +15974,6 @@ "crypto-random-string": "^2.0.0" } }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" - }, "update-notifier": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", @@ -16985,11 +16018,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" - }, "uuid": { "version": "8.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", @@ -17019,19 +16047,6 @@ "builtins": "^1.0.3" } }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" - }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, "wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", @@ -17077,6 +16092,46 @@ "dev": true, "requires": { "string-width": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + } } }, "word-wrap": { @@ -17086,40 +16141,12 @@ "dev": true }, "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "version": "5.1.0", "dev": true, "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" } }, "wrappy": { @@ -17198,56 +16225,27 @@ "dev": true }, "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "version": "13.3.2", "dev": true, "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "dependencies": { - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - } + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" } }, "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "version": "13.1.2", "dev": true, "requires": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } } }, "yazl": { @@ -17257,11 +16255,6 @@ "requires": { "buffer-crc32": "~0.2.3" } - }, - "yesno": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/yesno/-/yesno-0.3.1.tgz", - "integrity": "sha512-7RbCXegyu6DykWPWU0YEtW8gFJH8KBL2d5l2fqB0XpkH0Y9rk59YSSWpzEv7yNJBGAouPc67h3kkq0CZkpBdFw==" } } } diff --git a/packages/project/package.json b/packages/project/package.json index a3f828837b3..2e4edcd095e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-alpha.6", - "@ui5/fs": "3.0.0-alpha.3", + "@ui5/fs": "^3.0.0-alpha.4", "@ui5/logger": "^3.0.1-alpha.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 8baf5d805eb60739d6e2498b8d16e2738d3e79d7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Jun 2022 17:51:42 +0200 Subject: [PATCH 0625/1272] [ui5-project][INTERNAL] Add missing xml2js dependency --- packages/project/package-lock.json | 3 ++- packages/project/package.json | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e70636d73b3..ba075b2e72b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -27,7 +27,8 @@ "read-pkg-up": "^7.0.1", "resolve": "^1.21.0", "rimraf": "^3.0.2", - "semver": "^7.3.5" + "semver": "^7.3.5", + "xml2js": "^0.4.23" }, "devDependencies": { "ava": "^3.15.0", diff --git a/packages/project/package.json b/packages/project/package.json index 2e4edcd095e..3ad28957463 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,8 @@ "read-pkg-up": "^7.0.1", "resolve": "^1.21.0", "rimraf": "^3.0.2", - "semver": "^7.3.5" + "semver": "^7.3.5", + "xml2js": "^0.4.23" }, "devDependencies": { "ava": "^3.15.0", From ac416e630a518272ed19a503fef46c22a08caf54 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Jun 2022 18:58:22 +0200 Subject: [PATCH 0626/1272] [ui5-project][INTERNAL] createBuildManifest: Require package.json relative Resolves depcheck issue for missing dependency to @ui5/project --- packages/project/lib/buildHelpers/createBuildManifest.js | 2 +- packages/project/test/lib/buildHelpers/createBuildManifest.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/buildHelpers/createBuildManifest.js b/packages/project/lib/buildHelpers/createBuildManifest.js index 7f46915dd9d..784b4cb7069 100644 --- a/packages/project/lib/buildHelpers/createBuildManifest.js +++ b/packages/project/lib/buildHelpers/createBuildManifest.js @@ -41,7 +41,7 @@ module.exports = async function(project, buildConfig) { timestamp: new Date().toISOString(), versions: { builderVersion: getVersion("@ui5/builder"), - projectVersion: getVersion("@ui5/project"), + projectVersion: getVersion("../../"), fsVersion: getVersion("@ui5/fs"), }, buildConfig, diff --git a/packages/project/test/lib/buildHelpers/createBuildManifest.js b/packages/project/test/lib/buildHelpers/createBuildManifest.js index c143a788ef7..1827fb419e2 100644 --- a/packages/project/test/lib/buildHelpers/createBuildManifest.js +++ b/packages/project/test/lib/buildHelpers/createBuildManifest.js @@ -71,7 +71,7 @@ test("Create application from project with build manifest", async (t) => { versions: { builderVersion: require("@ui5/builder/package.json").version, fsVersion: require("@ui5/fs/package.json").version, - projectVersion: require("@ui5/project/package.json").version, + projectVersion: require("../../../package.json").version, }, tags: { "/resources/id1/foo.js": { @@ -115,7 +115,7 @@ test("Create library from project with build manifest", async (t) => { versions: { builderVersion: require("@ui5/builder/package.json").version, fsVersion: require("@ui5/fs/package.json").version, - projectVersion: require("@ui5/project/package.json").version, + projectVersion: require("../../../package.json").version, }, tags: { "/resources/library/d/foo.js": { From 1c04417494dbab7d1d3e6c185e6b61185d00098c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Jun 2022 13:49:41 +0200 Subject: [PATCH 0627/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.6 to 3.0.0-alpha.7 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.7/CHANGELOG.md --- packages/project/package-lock.json | 26 +++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 12 insertions(+), 16 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ba075b2e72b..5e3ed7884ee 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-alpha.2", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.6", + "@ui5/builder": "^3.0.0-alpha.7", "@ui5/fs": "^3.0.0-alpha.4", "@ui5/logger": "^3.0.1-alpha.1", "ajv": "^6.12.6", @@ -844,28 +844,26 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.6", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.6.tgz", - "integrity": "sha512-IDPsKT6fShlW0MX+Hr6IifZpSd15BxNv9zZcWvFu3C0RcApHKhEzI7BQZfbRwViFwBlny3mt/TBDmHgrs1yzpg==", + "version": "3.0.0-alpha.7", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.7.tgz", + "integrity": "sha512-QqT4sehyLAAVFjmXsPi/lrT/lmBxWHu4wgjJXVvAE+HHWk459IpdPAnhTBUN7RungZAdTsBD0fx2jA8s+3HXfA==", "dependencies": { - "@ui5/fs": "^3.0.0-alpha.3", + "@ui5/fs": "^3.0.0-alpha.4", "@ui5/logger": "^3.0.1-alpha.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", "espree": "^9.3.1", - "globby": "^11.1.0", "graceful-fs": "^4.2.9", "jsdoc": "^3.6.7", "less-openui5": "^0.11.2", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", - "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.5", "sourcemap-codec": "^1.4.8", - "terser": "^5.10.0", + "terser": "^5.14.1", "xml2js": "^0.4.23", "yazl": "^2.5.1" }, @@ -9764,28 +9762,26 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.6", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.6.tgz", - "integrity": "sha512-IDPsKT6fShlW0MX+Hr6IifZpSd15BxNv9zZcWvFu3C0RcApHKhEzI7BQZfbRwViFwBlny3mt/TBDmHgrs1yzpg==", + "version": "3.0.0-alpha.7", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.7.tgz", + "integrity": "sha512-QqT4sehyLAAVFjmXsPi/lrT/lmBxWHu4wgjJXVvAE+HHWk459IpdPAnhTBUN7RungZAdTsBD0fx2jA8s+3HXfA==", "requires": { - "@ui5/fs": "^3.0.0-alpha.3", + "@ui5/fs": "^3.0.0-alpha.4", "@ui5/logger": "^3.0.1-alpha.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", "espree": "^9.3.1", - "globby": "^11.1.0", "graceful-fs": "^4.2.9", "jsdoc": "^3.6.7", "less-openui5": "^0.11.2", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", - "pretty-hrtime": "^1.0.3", "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.5", "sourcemap-codec": "^1.4.8", - "terser": "^5.10.0", + "terser": "^5.14.1", "xml2js": "^0.4.23", "yazl": "^2.5.1" } diff --git a/packages/project/package.json b/packages/project/package.json index 3ad28957463..81cb0165efb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.6", + "@ui5/builder": "^3.0.0-alpha.7", "@ui5/fs": "^3.0.0-alpha.4", "@ui5/logger": "^3.0.1-alpha.1", "ajv": "^6.12.6", From 3d510c17c92ec9ad443dd99f7dad6729a9529707 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Jun 2022 14:01:21 +0200 Subject: [PATCH 0628/1272] [ui5-project][INTERNAL] Regenerate package-lock.json --- packages/project/package-lock.json | 2297 ++++++++++------------------ 1 file changed, 803 insertions(+), 1494 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5e3ed7884ee..4f1136326ef 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -328,6 +328,17 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/highlight/node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -578,6 +589,15 @@ "sprintf-js": "~1.0.2" } }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -874,7 +894,8 @@ }, "node_modules/@ui5/fs": { "version": "3.0.0-alpha.4", - "license": "Apache-2.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.4.tgz", + "integrity": "sha512-20R3B1n8mLGKKQbZd+QPcrd9B8yEvaNrgIZLDreY1hAVPW3HHr6G6VsxnXf1RpcrRmPHFHKWIe9neLEDK+CjUw==", "dependencies": { "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", @@ -1074,86 +1095,26 @@ "string-width": "^4.1.0" } }, - "node_modules/ansi-align/node_modules/ansi-regex": { + "node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-align/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/ansi-align/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-align/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, "engines": { "node": ">=8" } }, - "node_modules/ansi-align/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-regex": { - "version": "4.1.1", - "license": "MIT", "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" + "node": ">=10" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ansi-styles/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/ansi-styles/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, "node_modules/anymatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", @@ -1341,147 +1302,6 @@ "node": ">=10.18.0 <11 || >=12.14.0 <12.17.0 || >=12.17.0 <13 || >=14.0.0 <15 || >=15" } }, - "node_modules/ava/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ava/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/ava/node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/ava/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/ava/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ava/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ava/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ava/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/ava/node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/ava/node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ava/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ava/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -1565,136 +1385,42 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/boxen/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dependencies": { - "color-convert": "^2.0.1" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/boxen/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/boxen/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/boxen/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/boxen/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/boxen/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/boxen/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/boxen/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.20.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.4.tgz", - "integrity": "sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw==", + "node_modules/browserslist": { + "version": "4.20.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.4.tgz", + "integrity": "sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw==", "dev": true, "funding": [ { @@ -1892,11 +1618,15 @@ } }, "node_modules/camelcase": { - "version": "5.3.1", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, - "license": "MIT", "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/camelcase-keys": { @@ -1916,6 +1646,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/camelcase-keys/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/caniuse-lite": { "version": "1.0.30001352", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001352.tgz", @@ -1972,6 +1711,22 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/chalk/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/chalk/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, "node_modules/cheerio": { "version": "1.0.0-rc.9", "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.9.tgz", @@ -2036,8 +1791,9 @@ }, "node_modules/chokidar-cli": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-2.1.0.tgz", + "integrity": "sha512-6n21AVpW6ywuEPoxJcLXMA2p4T+SLjWsXKny/9yTWFz0kKxESI3eUylpeV97LylING/27T/RVTY0f2/0QaWq9Q==", "dev": true, - "license": "MIT", "dependencies": { "chokidar": "^3.2.3", "lodash.debounce": "^4.0.8", @@ -2051,6 +1807,139 @@ "node": ">= 8.10.0" } }, + "node_modules/chokidar-cli/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chokidar-cli/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "dependencies": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "node_modules/chokidar-cli/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "node_modules/chokidar-cli/node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/chokidar-cli/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/chokidar-cli/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "dependencies": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "node_modules/chokidar-cli/node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, "node_modules/chownr": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", @@ -2144,64 +2033,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cli-truncate/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-truncate/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/cli-truncate/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-truncate/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-truncate/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/cliui": { - "version": "5.0.0", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, - "license": "ISC", "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, "node_modules/clone": { @@ -2234,20 +2074,17 @@ } }, "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "color-name": "1.1.3" } }, "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, "node_modules/color-support": { "version": "1.1.3", @@ -2763,30 +2600,6 @@ "node": ">=10" } }, - "node_modules/depcheck/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/depcheck/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/depcheck/node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -2796,44 +2609,6 @@ "sprintf-js": "~1.0.2" } }, - "node_modules/depcheck/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/depcheck/node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/depcheck/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/depcheck/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/depcheck/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -2847,85 +2622,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/depcheck/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/depcheck/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/depcheck/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/depcheck/node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/depcheck/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/depcheck/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/deps-regex": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", @@ -3147,9 +2843,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.152", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.152.tgz", - "integrity": "sha512-jk4Ju5SGZAQQJ1iI4Rgru7dDlvkQPLpNPWH9gIZmwCD4YteA5Bbk1xPcPDUf5jUYs3e1e80RXdi8XgKQZaigeg==", + "version": "1.4.154", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.154.tgz", + "integrity": "sha512-GbV9djOkrnj6xmW+YYVVEI3VCQnJ0pnSTu7TW2JyjKd5cakoiSaG5R4RbEtfaD92GsY10DzbU3GYRe+IOA9kqA==", "dev": true }, "node_modules/emittery": { @@ -3165,8 +2861,9 @@ } }, "node_modules/emoji-regex": { - "version": "7.0.3", - "license": "MIT" + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "node_modules/encoding": { "version": "0.1.13", @@ -3505,15 +3202,6 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/eslint/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/eslint/node_modules/glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -3541,18 +3229,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -4011,82 +3687,37 @@ "darwin" ], "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", - "dev": true - }, - "node_modules/gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/gauge/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/gauge/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/gauge/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", + "dev": true + }, + "node_modules/gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "dependencies": { - "ansi-regex": "^5.0.1" + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" }, "engines": { - "node": ">=8" + "node": ">=10" } }, "node_modules/genfun": { @@ -4104,12 +3735,10 @@ } }, "node_modules/get-caller-file": { - "version": "2.0.5", - "dev": true, - "license": "ISC", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true }, "node_modules/get-package-type": { "version": "0.1.0", @@ -4660,10 +4289,11 @@ } }, "node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "license": "MIT", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/is-glob": { @@ -5295,6 +4925,12 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, "node_modules/lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", @@ -5313,6 +4949,12 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "node_modules/lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", + "dev": true + }, "node_modules/log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", @@ -5571,19 +5213,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -5747,12 +5376,6 @@ "node": ">=4.3.0" } }, - "node_modules/mock-require/node_modules/get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, "node_modules/mock-require/node_modules/normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", @@ -6117,15 +5740,6 @@ "node": ">=8.9" } }, - "node_modules/nyc/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/nyc/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -6152,10 +5766,22 @@ "wrap-ansi": "^6.2.0" } }, - "node_modules/nyc/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "node_modules/nyc/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/nyc/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "node_modules/nyc/node_modules/find-up": { @@ -6171,13 +5797,13 @@ "node": ">=8" } }, - "node_modules/nyc/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "node_modules/nyc/node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, "engines": { - "node": ">=8" + "node": "6.* || 8.* || >= 10.*" } }, "node_modules/nyc/node_modules/locate-path": { @@ -6234,32 +5860,6 @@ "node": ">=8" } }, - "node_modules/nyc/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/nyc/node_modules/wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -6296,19 +5896,6 @@ "node": ">=8" } }, - "node_modules/nyc/node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -6424,27 +6011,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ora/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ora/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", @@ -7183,6 +6749,14 @@ "node": ">=8" } }, + "node_modules/random-int": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", + "integrity": "sha512-YALjWK2Rt9EMIv9BF/3mvlzFWQathsvb5UZmN1QmhfIOfcQYXc/UcLzg0ablqesSBpBVLt2Tlwv/eTuBh4LXUQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -7822,15 +7396,24 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "node_modules/slice-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, + "node_modules/slice-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, "node_modules/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", @@ -8039,25 +7622,27 @@ ] }, "node_modules/string-width": { - "version": "3.1.0", - "license": "MIT", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/strip-ansi": { - "version": "5.2.0", - "license": "MIT", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dependencies": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/strip-bom": { @@ -8125,15 +7710,6 @@ "node": ">=10" } }, - "node_modules/supertap/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/supertap/node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -8156,18 +7732,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/supertap/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -8926,70 +8490,20 @@ "dev": true }, "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, - "dependencies": { - "string-width": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/widest-line/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/widest-line/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/widest-line/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/widest-line/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" + "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "node_modules/widest-line/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.1" + "string-width": "^4.0.0" }, "engines": { "node": ">=8" @@ -9005,18 +8519,55 @@ } }, "node_modules/wrap-ansi": { - "version": "5.1.0", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, - "license": "MIT", "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -9109,29 +8660,70 @@ } }, "node_modules/yargs": { - "version": "13.3.2", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, - "license": "MIT", "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" } }, "node_modules/yargs-parser": { - "version": "13.1.2", + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, - "license": "ISC", "dependencies": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs-parser/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/yargs/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" } }, "node_modules/yazl": { @@ -9348,6 +8940,14 @@ "js-tokens": "^4.0.0" }, "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -9539,6 +9139,12 @@ "sprintf-js": "~1.0.2" } }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -9788,6 +9394,8 @@ }, "@ui5/fs": { "version": "3.0.0-alpha.4", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.4.tgz", + "integrity": "sha512-20R3B1n8mLGKKQbZd+QPcrd9B8yEvaNrgIZLDreY1hAVPW3HHr6G6VsxnXf1RpcrRmPHFHKWIe9neLEDK+CjUw==", "requires": { "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", @@ -9951,71 +9559,18 @@ "dev": true, "requires": { "string-width": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "ansi-regex": { - "version": "4.1.1" + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, "ansi-styles": { - "version": "3.2.1", - "requires": { - "color-convert": "^1.9.0" - }, - "dependencies": { - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - } - } + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true }, "anymatch": { "version": "3.1.2", @@ -10138,137 +9693,31 @@ "indent-string": "^4.0.0", "is-error": "^2.2.2", "is-plain-object": "^5.0.0", - "is-promise": "^4.0.0", - "lodash": "^4.17.20", - "matcher": "^3.0.0", - "md5-hex": "^3.0.1", - "mem": "^8.0.0", - "ms": "^2.1.3", - "ora": "^5.2.0", - "p-event": "^4.2.0", - "p-map": "^4.0.0", - "picomatch": "^2.2.2", - "pkg-conf": "^3.1.0", - "plur": "^4.0.0", - "pretty-ms": "^7.0.1", - "read-pkg": "^5.2.0", - "resolve-cwd": "^3.0.0", - "slash": "^3.0.0", - "source-map-support": "^0.5.19", - "stack-utils": "^2.0.3", - "strip-ansi": "^6.0.0", - "supertap": "^2.0.0", - "temp-dir": "^2.0.0", - "trim-off-newlines": "^1.0.1", - "update-notifier": "^5.0.1", - "write-file-atomic": "^3.0.3", - "yargs": "^16.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - } - } - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - } + "is-promise": "^4.0.0", + "lodash": "^4.17.20", + "matcher": "^3.0.0", + "md5-hex": "^3.0.1", + "mem": "^8.0.0", + "ms": "^2.1.3", + "ora": "^5.2.0", + "p-event": "^4.2.0", + "p-map": "^4.0.0", + "picomatch": "^2.2.2", + "pkg-conf": "^3.1.0", + "plur": "^4.0.0", + "pretty-ms": "^7.0.1", + "read-pkg": "^5.2.0", + "resolve-cwd": "^3.0.0", + "slash": "^3.0.0", + "source-map-support": "^0.5.19", + "stack-utils": "^2.0.3", + "strip-ansi": "^6.0.0", + "supertap": "^2.0.0", + "temp-dir": "^2.0.0", + "trim-off-newlines": "^1.0.1", + "update-notifier": "^5.0.1", + "write-file-atomic": "^3.0.3", + "yargs": "^16.2.0" } }, "balanced-match": { @@ -10331,75 +9780,11 @@ "wrap-ansi": "^7.0.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } } } }, @@ -10568,7 +9953,9 @@ "dev": true }, "camelcase": { - "version": "5.3.1", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true }, "camelcase-keys": { @@ -10580,6 +9967,14 @@ "camelcase": "^5.3.1", "map-obj": "^4.0.0", "quick-lru": "^4.0.1" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + } } }, "caniuse-lite": { @@ -10612,6 +10007,19 @@ "requires": { "color-convert": "^2.0.1" } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" } } }, @@ -10659,12 +10067,125 @@ }, "chokidar-cli": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-2.1.0.tgz", + "integrity": "sha512-6n21AVpW6ywuEPoxJcLXMA2p4T+SLjWsXKny/9yTWFz0kKxESI3eUylpeV97LylING/27T/RVTY0f2/0QaWq9Q==", "dev": true, "requires": { "chokidar": "^3.2.3", "lodash.debounce": "^4.0.8", "lodash.throttle": "^4.1.1", "yargs": "^13.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } } }, "chownr": { @@ -10731,55 +10252,17 @@ "requires": { "slice-ansi": "^3.0.0", "string-width": "^4.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "cliui": { - "version": "5.0.0", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, "clone": { @@ -10806,17 +10289,17 @@ } }, "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "requires": { - "color-name": "~1.1.4" + "color-name": "1.1.3" } }, "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, "color-support": { "version": "1.1.3", @@ -11237,130 +10720,28 @@ "resolve": "^1.18.1", "sass": "^1.29.0", "scss-parser": "^1.0.4", - "semver": "^7.3.2", - "yargs": "^16.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "semver": "^7.3.2", + "yargs": "^16.1.0" + }, + "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "sprintf-js": "~1.0.2" } }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "argparse": "^1.0.7", + "esprima": "^4.0.0" } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true } } }, @@ -11555,9 +10936,9 @@ } }, "electron-to-chromium": { - "version": "1.4.152", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.152.tgz", - "integrity": "sha512-jk4Ju5SGZAQQJ1iI4Rgru7dDlvkQPLpNPWH9gIZmwCD4YteA5Bbk1xPcPDUf5jUYs3e1e80RXdi8XgKQZaigeg==", + "version": "1.4.154", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.154.tgz", + "integrity": "sha512-GbV9djOkrnj6xmW+YYVVEI3VCQnJ0pnSTu7TW2JyjKd5cakoiSaG5R4RbEtfaD92GsY10DzbU3GYRe+IOA9kqA==", "dev": true }, "emittery": { @@ -11567,7 +10948,9 @@ "dev": true }, "emoji-regex": { - "version": "7.0.3" + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "encoding": { "version": "0.1.13", @@ -11780,12 +11163,6 @@ "v8-compile-cache": "^2.0.3" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, "glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -11804,15 +11181,6 @@ "type-fest": "^0.20.2" } }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -12284,41 +11652,6 @@ "string-width": "^4.2.3", "strip-ansi": "^6.0.1", "wide-align": "^1.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "genfun": { @@ -12333,7 +11666,9 @@ "dev": true }, "get-caller-file": { - "version": "2.0.5", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, "get-package-type": { @@ -12746,7 +12081,9 @@ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" }, "is-fullwidth-code-point": { - "version": "2.0.0" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "is-glob": { "version": "4.0.3", @@ -13225,6 +12562,12 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, "lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", @@ -13243,6 +12586,12 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", + "dev": true + }, "log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", @@ -13437,16 +12786,6 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", "dev": true - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, @@ -13575,12 +12914,6 @@ "normalize-path": "^2.1.1" }, "dependencies": { - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, "normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", @@ -13886,12 +13219,6 @@ "yargs": "^15.0.2" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -13912,10 +13239,19 @@ "wrap-ansi": "^6.2.0" } }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "find-up": { @@ -13928,10 +13264,10 @@ "path-exists": "^4.0.0" } }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, "locate-path": { @@ -13973,26 +13309,6 @@ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -14022,16 +13338,6 @@ "y18n": "^4.0.0", "yargs-parser": "^18.1.2" } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, @@ -14117,23 +13423,6 @@ "log-symbols": "^4.1.0", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "os-homedir": { @@ -14697,6 +13986,11 @@ "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", "dev": true }, + "random-int": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", + "integrity": "sha512-YALjWK2Rt9EMIv9BF/3mvlzFWQathsvb5UZmN1QmhfIOfcQYXc/UcLzg0ablqesSBpBVLt2Tlwv/eTuBh4LXUQ==" + }, "rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -15188,10 +14482,19 @@ "color-convert": "^2.0.1" } }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true } } @@ -15366,17 +14669,21 @@ } }, "string-width": { - "version": "3.1.0", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "5.2.0", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.1" } }, "strip-bom": { @@ -15422,12 +14729,6 @@ "strip-ansi": "^6.0.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -15446,15 +14747,6 @@ "argparse": "^1.0.7", "esprima": "^4.0.0" } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } } } }, @@ -16089,46 +15381,6 @@ "dev": true, "requires": { "string-width": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "word-wrap": { @@ -16138,12 +15390,40 @@ "dev": true }, "wrap-ansi": { - "version": "5.1.0", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + } } }, "wrappy": { @@ -16222,27 +15502,56 @@ "dev": true }, "yargs": { - "version": "13.3.2", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "dependencies": { + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true + } } }, "yargs-parser": { - "version": "13.1.2", + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, "requires": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + } } }, "yazl": { From 1cb112163c67ad06eb3ebea9242f65f25491740e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Jun 2022 12:09:03 +0000 Subject: [PATCH 0629/1272] [ui5-project]Release 3.0.0-alpha.3 --- packages/project/CHANGELOG.md | 22 +++++++++++++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index c7d86f7af2e..c47621a4656 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,26 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.3...HEAD). + + +## [v3.0.0-alpha.3] - 2022-06-14 +### Breaking Changes +- Implement Project Graph, build execution [`161f462`](https://github.com/SAP/ui5-project/commit/161f462cf6a9955337fff512007125128c6c39dd) + +### BREAKING CHANGE + +* normalizer and projectTree APIs have been removed. Use +generateProjectGraph instead +* Going forward only specification versions 2.0 and higher are supported + * In case a legacy specification version is detected, an automatic, + transparent migration is attempted. +* Build: + * The "dev" build mode has been removed + * The task "generateVersionInfo" is no longer executed for + application projects by default. You may enable it again using the + includedTasks parameter + ## [v3.0.0-alpha.2] - 2022-04-26 @@ -282,6 +301,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.2...v3.0.0-alpha.3 [v3.0.0-alpha.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.1...v3.0.0-alpha.2 [v3.0.0-alpha.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.0...v3.0.0-alpha.1 [v3.0.0-alpha.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0-alpha.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4f1136326ef..ab292312056 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.2", + "version": "3.0.0-alpha.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.2", + "version": "3.0.0-alpha.3", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.7", diff --git a/packages/project/package.json b/packages/project/package.json index 81cb0165efb..629b7ef4936 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.2", + "version": "3.0.0-alpha.3", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From b8d2aad0bf0d9eebdab47dadc64a56868e882f39 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Jun 2022 14:31:30 +0200 Subject: [PATCH 0630/1272] [ui5-project][INTERNAL] GH Workflows: Update GH Actions --- packages/project/.github/workflows/codeql-analysis.yml | 6 +++--- packages/project/.github/workflows/github-ci.yml | 4 ++-- packages/project/.github/workflows/reuse-compliance.yml | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/.github/workflows/codeql-analysis.yml b/packages/project/.github/workflows/codeql-analysis.yml index 05f4518dd2c..e884edf10cc 100644 --- a/packages/project/.github/workflows/codeql-analysis.yml +++ b/packages/project/.github/workflows/codeql-analysis.yml @@ -23,11 +23,11 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@v1 + uses: github/codeql-action/init@v2 with: languages: 'javascript' # If you wish to specify custom queries, you can do so here or in a config file. @@ -39,4 +39,4 @@ jobs: # 📚 https://git.io/JvXDl - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v1 + uses: github/codeql-action/analyze@v2 diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 5a8462d7e02..3483d05f990 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -18,10 +18,10 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Use Node.js LTS 16.x - uses: actions/setup-node@v2.4.1 + uses: actions/setup-node@v3.3.0 with: node-version: 16.x diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index a188fccc5a5..ad1256a34cc 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -17,6 +17,6 @@ jobs: name: Compliance Check runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Execute REUSE Compliance Check uses: fsfe/reuse-action@v1.1 From f09e5f5314fc0ff42e019e6852337e226d3cbcac Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Jun 2022 14:55:19 +0200 Subject: [PATCH 0631/1272] [ui5-project][INTERNAL] Azure CI: Replace Node.js v17 with v18 --- packages/project/azure-pipelines.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 4124dc77dc4..f3da3e0cc4b 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -13,13 +13,13 @@ strategy: node_version: 16.x linux_node_latest: imageName: 'ubuntu-20.04' - node_version: 17.x + node_version: 18.x mac_node_latest: imageName: 'macOS-11' - node_version: 17.x + node_version: 18.x windows_node_latest: imageName: 'windows-2022' - node_version: 17.x + node_version: 18.x pool: vmImage: $(imageName) From e592ce4009dc62104aa69f346a2b3639e6ada4a9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Jun 2022 15:26:02 +0200 Subject: [PATCH 0632/1272] [ui5-project][INTERNAL] Module: Fix tests on Windows --- .../project/test/lib/generateProjectGraph.usingStaticFile.js | 5 +++-- packages/project/test/lib/specifications/types/Module.js | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/project/test/lib/generateProjectGraph.usingStaticFile.js b/packages/project/test/lib/generateProjectGraph.usingStaticFile.js index 61c8229a84b..b1ddb415c1d 100644 --- a/packages/project/test/lib/generateProjectGraph.usingStaticFile.js +++ b/packages/project/test/lib/generateProjectGraph.usingStaticFile.js @@ -37,8 +37,9 @@ test("Throws error if file not found", async (t) => { cwd: notExistingPath })); t.is(err.message, - `Failed to load dependency tree configuration from path ${notExistingPath}/projectDependencies.yaml: ` + - `ENOENT: no such file or directory, open '${notExistingPath}/projectDependencies.yaml'`, + `Failed to load dependency tree configuration from path ` + + `${path.join(notExistingPath, "projectDependencies.yaml")}: ` + + `ENOENT: no such file or directory, open '${path.join(notExistingPath, "projectDependencies.yaml")}'`, "Correct error message"); }); diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index 952dd5a0e8a..a8d1364bf41 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -119,9 +119,9 @@ test("_configureAndValidatePaths: Configured path mapping", async (t) => { t.is(project._paths.length, 2, "Two path mappings"); t.is(project._paths[0].virBasePath, "/", "Correct virtual base path for /"); - t.is(project._paths[0].fsBasePath, projectInput.modulePath + "/dist", "Correct fs path"); + t.is(project._paths[0].fsBasePath, path.join(projectInput.modulePath, "dist"), "Correct fs path"); t.is(project._paths[1].virBasePath, "/dev/", "Correct virtual base path for /dev/"); - t.is(project._paths[1].fsBasePath, projectInput.modulePath + "/dev", "Correct fs path"); + t.is(project._paths[1].fsBasePath, path.join(projectInput.modulePath, "dev"), "Correct fs path"); }); test("_configureAndValidatePaths: Default directory does not exist", async (t) => { From 0cbc94e39f963a1dd64f22e799baa54287e8be04 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 22 Jun 2022 21:33:19 +0200 Subject: [PATCH 0633/1272] [ui5-project]Revert "[INTERNAL] Lower coverage thresholds" This reverts commit 6e29292a10ccaf69a12383dcd1cf6033aa14d55c. --- packages/project/package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/package.json b/packages/project/package.json index 629b7ef4936..84c7f5acdf4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -72,10 +72,10 @@ "jsdoc-plugin.js" ], "check-coverage": true, - "statements": 79, - "branches": 70, - "functions": 80, - "lines": 80, + "statements": 85, + "branches": 75, + "functions": 85, + "lines": 85, "watermarks": { "statements": [ 70, From 3c658573cf423c1c279b06c374e874441af30312 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 4 Jul 2022 09:55:27 +0200 Subject: [PATCH 0634/1272] [ui5-project][INTERNAL] Adapt to resourceFactory changes See https://github.com/SAP/ui5-fs/pull/386 --- .../lib/specifications/ComponentProject.js | 20 ++++--------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/packages/project/lib/specifications/ComponentProject.js b/packages/project/lib/specifications/ComponentProject.js index 2f77f7ba02a..47a58552639 100644 --- a/packages/project/lib/specifications/ComponentProject.js +++ b/packages/project/lib/specifications/ComponentProject.js @@ -117,19 +117,13 @@ class ComponentProject extends Project { // Use buildtime reader and link it to / // No test-resources for runtime resource access, // unless runtime is namespaced - reader = this._getReader().link({ - linkPath: `/`, - targetPath: `/resources/${this._namespace}/` - }); + reader = this._getReader().flatten(this._namespace); break; case "flat": // Use buildtime reader and link it to / // No test-resources for runtime resource access, // unless runtime is namespaced - reader = this._getReader().link({ - linkPath: `/`, - targetPath: `/resources/${this._namespace}/` - }); + reader = this._getReader().flatten(this._namespace); break; default: throw new Error(`Unknown path mapping style ${style}`); @@ -232,20 +226,14 @@ class ComponentProject extends Project { } case "runtime": { // Runtime is not namespaced: link namespace to / - readers.push(namespaceWriter.link({ - linkPath: `/`, - targetPath: `/resources/${this._namespace}/` - })); + readers.push(namespaceWriter.flatten(this._namespace)); // Add general writer as is readers.push(generalWriter); break; } case "flat": { // Rewrite paths from "flat" to "buildtime" - readers.push(namespaceWriter.link({ - linkPath: `/`, - targetPath: `/resources/${this._namespace}/` - })); + readers.push(namespaceWriter.flatten(this._namespace)); // General writer resources can't be flattened, so they are not available break; } From 13c678afcb13fbdf5a5d6a70869ca2d3a02e0cfb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 4 Jul 2022 09:56:12 +0200 Subject: [PATCH 0635/1272] [ui5-project][INTERNAL] Specifications: Add #getSourcePath method --- packages/project/lib/specifications/Project.js | 9 +++++++++ .../project/lib/specifications/types/Application.js | 10 +++++++--- packages/project/lib/specifications/types/Library.js | 8 ++++++-- packages/project/lib/specifications/types/Module.js | 5 ++++- .../project/lib/specifications/types/ThemeLibrary.js | 6 +++++- 5 files changed, 31 insertions(+), 7 deletions(-) diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index 74fab9c12a2..c1f9575ee7a 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -47,6 +47,15 @@ class Project extends Specification { return null; } + /** + * Path of project's sources. This might not be POSIX. + * + * @public + */ + getSourcePath() { + throw new Error(`getSourcePath must be implemented by subclass ${this.constructor.name}`); + } + /** * @private */ diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index c3a421f8044..b705f384732 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -26,6 +26,10 @@ class Application extends ComponentProject { this._config.builder.cachebuster.signatureType || "time"; } + getSourcePath() { + return fsPath.join(this.getPath(), this._webappPath); + } + /* === Resource Access === */ /** * Get a resource reader for the sources of the project (excluding any test resources) @@ -34,7 +38,7 @@ class Application extends ComponentProject { */ _getSourceReader() { return resourceFactory.createReader({ - fsBasePath: fsPath.join(this.getPath(), this._webappPath), + fsBasePath: this.getSourcePath(), virBasePath: `/resources/${this._namespace}/`, name: `Source reader for application project ${this.getName()}`, project: this, @@ -48,7 +52,7 @@ class Application extends ComponentProject { _getRawSourceReader() { return resourceFactory.createReader({ - fsBasePath: fsPath.join(this.getPath(), this._webappPath), + fsBasePath: this.getSourcePath(), virBasePath: "/", name: `Source reader for application project ${this.getName()}`, project: this @@ -70,7 +74,7 @@ class Application extends ComponentProject { this._log.verbose(`Path mapping for application project ${this.getName()}:`); this._log.verbose(` Physical root path: ${this.getPath()}`); - this._log.verbose(` Mapped to: ${this._srcPath}`); + this._log.verbose(` Mapped to: ${this._webappPath}`); if (!await this._dirExists("/" + this._webappPath)) { throw new Error( diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index 8e31447545a..4e38bdf7e03 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -30,6 +30,10 @@ class Library extends ComponentProject { this._config.builder.libraryPreload.excludes || []; } + getSourcePath() { + return fsPath.join(this.getPath(), this._srcPath); + } + /* === Resource Access === */ _getSourceReader() { // TODO: Throw for libraries with additional namespaces like sap.ui.core? @@ -40,7 +44,7 @@ class Library extends ComponentProject { virBasePath += `${this._namespace}/`; } return resourceFactory.createReader({ - fsBasePath: fsPath.join(this.getPath(), this._srcPath), + fsBasePath: this.getSourcePath(), virBasePath, name: `Source reader for library project ${this.getName()}`, project: this, @@ -77,7 +81,7 @@ class Library extends ComponentProject { */ _getRawSourceReader() { return resourceFactory.createReader({ - fsBasePath: fsPath.join(this.getPath(), this._srcPath), + fsBasePath: this.getSourcePath(), virBasePath: "/", name: `Source reader for library project ${this.getName()}`, project: this diff --git a/packages/project/lib/specifications/types/Module.js b/packages/project/lib/specifications/types/Module.js index 752d9f6faa3..cbe9f6acdc7 100644 --- a/packages/project/lib/specifications/types/Module.js +++ b/packages/project/lib/specifications/types/Module.js @@ -14,6 +14,10 @@ class Module extends Project { /** * @public */ + getSourcePath() { + throw new Error(`Projects of type module have more than one source path`); + } + /* === Resource Access === */ /** @@ -74,7 +78,6 @@ class Module extends Project { this._log.verbose(`Path mapping for library project ${this.getName()}:`); this._log.verbose(` Physical root path: ${this.getPath()}`); this._log.verbose(` Mapped to:`); - this._log.verbose(` /resources/ => ${this._srcPath}`); if (config.resources?.configuration?.paths) { this._paths = await Promise.all(Object.entries(config.resources.configuration.paths) diff --git a/packages/project/lib/specifications/types/ThemeLibrary.js b/packages/project/lib/specifications/types/ThemeLibrary.js index 9d66e7be047..274b9e0d812 100644 --- a/packages/project/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/lib/specifications/types/ThemeLibrary.js @@ -20,6 +20,10 @@ class ThemeLibrary extends Project { return this._config.metadata.copyright; } + getSourcePath() { + return fsPath.join(this.getPath(), this._srcPath); + } + /* === Resource Access === */ /** * Get a [ReaderCollection]{@link module:@ui5/fs.ReaderCollection} for accessing all resources of the @@ -32,7 +36,7 @@ class ThemeLibrary extends Project { */ getReader() { let reader = resourceFactory.createReader({ - fsBasePath: fsPath.join(this.getPath(), this._srcPath), + fsBasePath: this.getSourcePath(), virBasePath: "/resources/", name: `Runtime resources reader for theme-library project ${this.getName()}`, project: this, From ebcba5a6b37a855c5846a48fc5ed4e171e46d95b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 6 Jul 2022 12:53:37 +0200 Subject: [PATCH 0636/1272] [ui5-project][INTERNAL] Add tests for Module, projectGraphBuilder and ShimCollection --- packages/project/lib/graph/Module.js | 64 +-- packages/project/lib/graph/ShimCollection.js | 17 +- .../project/lib/graph/projectGraphBuilder.js | 20 +- .../project/lib/specifications/Extension.js | 27 +- .../types/extensions/ProjectShim.js | 17 + .../application.a/ui5-test-error.yaml | 7 + packages/project/test/lib/graph/Module.js | 278 ++++++++++++- .../project/test/lib/graph/ShimCollection.js | 82 ++++ .../test/lib/graph/projectGraphBuilder.js | 374 ++++++++++++++++++ 9 files changed, 802 insertions(+), 84 deletions(-) create mode 100644 packages/project/test/fixtures/application.a/ui5-test-error.yaml create mode 100644 packages/project/test/lib/graph/ShimCollection.js create mode 100644 packages/project/test/lib/graph/projectGraphBuilder.js diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js index 875f7ff6ed4..4a2189ace0e 100644 --- a/packages/project/lib/graph/Module.js +++ b/packages/project/lib/graph/Module.js @@ -138,19 +138,19 @@ class Module { configs = configs.filter((configuration) => { return configuration.kind !== "project"; }); - } - - // Patch configs - configs.forEach((configuration) => { - if (configuration.kind === "project" && configuration.type === "library" && - configuration.metadata && configuration.metadata.name) { - const libraryName = configuration.metadata.name; - // Old theme-libraries where configured as type "library" - if (SAP_THEMES_NS_EXEMPTIONS.includes(libraryName)) { - configuration.type = "theme-library"; + } else { + // Patch configs + configs.forEach((configuration) => { + if (configuration.kind === "project" && configuration.type === "library" && + configuration.metadata && configuration.metadata.name) { + const libraryName = configuration.metadata.name; + // Old theme-libraries where configured as type "library" + if (SAP_THEMES_NS_EXEMPTIONS.includes(libraryName)) { + configuration.type = "theme-library"; + } } - } - }); + }); + } const specs = await Promise.all(configs.map(async (configuration) => { const buildManifest = configuration._buildManifest; @@ -212,7 +212,7 @@ class Module { _normalizeAndApplyShims(config) { this._normalizeConfig(config); - if (config.kind !== "project") { // TODO 3.0: Shouldn't this be '==='? + if (config.kind === "project") { this._applyProjectShims(config); } return config; @@ -285,9 +285,9 @@ class Module { try { configFile = await readFile(configPath, {encoding: "utf8"}); } catch (err) { - // TODO: Caller might want to ignore this exception for ENOENT errors if non-root projects + // TODO: Caller might wants to ignore exceptions for ENOENT errors for non-root projects // However, this decision should not be made here - throw new Error("Failed to read configuration for project " + + throw new Error("Failed to read configuration for module " + `${this.getId()} at '${configPath}'. Error: ${err.message}`); } } else { @@ -397,40 +397,6 @@ class Module { return config; } - _isConfigValid(project) { - if (!project.type) { - if (project._isRoot) { - throw new Error(`No type configured for root project ${project.id}`); - } - log.verbose(`No type configured for project ${project.id}`); - return false; // ignore this project - } - - if (project.kind !== "project" && project._isRoot) { - // This is arguable. It is not the concern of ui5-project to define the entry point of a project tree - // On the other hand, there is no known use case for anything else right now and failing early here - // makes sense in that regard - throw new Error(`Root project needs to be of kind "project". ${project.id} is of kind ${project.kind}`); - } - - if (project.kind === "project" && project.type === "application") { - // There must be exactly one application project per dependency tree - // If multiple are found, all but the one closest to the root are rejected (ignored) - // If there are two projects equally close to the root, an error is being thrown - if (!this.qualifiedApplicationProject) { - this.qualifiedApplicationProject = project; - } else if (this.qualifiedApplicationProject._level === project._level) { - throw new Error(`Found at least two projects ${this.qualifiedApplicationProject.id} and ` + - `${project.id} of type application with the same distance to the root project. ` + - "Only one project of type application can be used. Failed to decide which one to ignore."); - } else { - return false; // ignore this project - } - } - - return true; - } - /** * Resource Access */ diff --git a/packages/project/lib/graph/ShimCollection.js b/packages/project/lib/graph/ShimCollection.js index fa78c5be6bb..b739e311040 100644 --- a/packages/project/lib/graph/ShimCollection.js +++ b/packages/project/lib/graph/ShimCollection.js @@ -1,6 +1,15 @@ const log = require("@ui5/logger").getLogger("graph:ShimCollection"); function addToMap(name, fromMap, toMap) { + /* Dynamically populate the given map "toMap" with the following structure: + : [{ + name: , + shim: + }, { + name: , + shim: + }, ...] + */ for (const [moduleId, shim] of Object.entries(fromMap)) { if (!toMap[moduleId]) { toMap[moduleId] = []; @@ -41,13 +50,13 @@ class ShimCollection { return this._projectConfigShims[moduleId]; } - getAllDependencyShims() { - return this._dependencyShims; - } - getCollectionShims(moduleId) { return this._collectionShims[moduleId]; } + + getAllDependencyShims() { + return this._dependencyShims; + } } module.exports = ShimCollection; diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index f32e0f9b7cf..0909819d925 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -27,14 +27,14 @@ function validateNode(node) { if (node.specVersion) { throw new Error( `Provided node with ID ${node.id} contains a top-level 'specVersion' property. ` + - `With UI5 Tooling 3.0, project configuration needs to be provided in a dedicated` + - `'configuration' object.`); + `With UI5 Tooling 3.0, project configuration needs to be provided in a dedicated ` + + `'configuration' object`); } if (node.metadata) { throw new Error( `Provided node with ID ${node.id} contains a top-level 'metadata' property. ` + - `With UI5 Tooling 3.0, project configuration needs to be provided in a dedicated` + - `'configuration' object.`); + `With UI5 Tooling 3.0, project configuration needs to be provided in a dedicated ` + + `'configuration' object`); } } @@ -133,7 +133,7 @@ module.exports = async function(nodeProvider) { const rootDependencies = await nodeProvider.getDependencies(rootNode); - if (rootDependencies.length) { + if (rootDependencies && rootDependencies.length) { queue.push({ nodes: rootDependencies, parentProjectName: rootProjectName @@ -198,8 +198,7 @@ module.exports = async function(nodeProvider) { return { id: shimModuleId, version: node.version, - path: shimModulePath, - configuration: project && project.getConfigurationObject() + path: shimModulePath }; }); }); @@ -244,11 +243,6 @@ module.exports = async function(nodeProvider) { projectGraph.addProject(project); } - // if (!node.deduped) { - // Even if not deduped, the node might occur multiple times in the tree (on separate branches). - // Therefore still supplying the ignore duplicates parameter here (true) - // } - if (parentProjectName) { if (node.optional) { projectGraph.declareOptionalDependency(parentProjectName, projectName); @@ -271,7 +265,7 @@ module.exports = async function(nodeProvider) { } const nodeDependencies = await nodeProvider.getDependencies(node); - if (nodeDependencies) { + if (nodeDependencies && nodeDependencies.length) { queue.push({ // copy array, so that the queue is stable while ignored project dependencies are removed nodes: [...nodeDependencies], diff --git a/packages/project/lib/specifications/Extension.js b/packages/project/lib/specifications/Extension.js index 4df68c060de..8921dac949c 100644 --- a/packages/project/lib/specifications/Extension.js +++ b/packages/project/lib/specifications/Extension.js @@ -4,13 +4,32 @@ class Extension extends Specification { constructor(parameters) { super(parameters); if (new.target === Extension) { - throw new TypeError("Class 'Project' is abstract. Please use one of the 'types' subclasses"); + throw new TypeError("Class 'Extension' is abstract. Please use one of the 'types' subclasses"); } } - /* - * TODO - */ + /** + * @param {object} parameters Specification parameters + * @param {string} parameters.id Unique ID + * @param {string} parameters.version Version + * @param {string} parameters.modulePath File System path to access resources + * @param {object} parameters.configuration Configuration object + */ + async init(parameters) { + await super.init(parameters); + + try { + await this._validateConfig(); + } catch (err) { + throw new Error( + `Failed to validate configuration of ${this.getType()} extension ${this.getName()}:` + + err.message); + } + + return this; + } + + async _validateConfig() {} } module.exports = Extension; diff --git a/packages/project/lib/specifications/types/extensions/ProjectShim.js b/packages/project/lib/specifications/types/extensions/ProjectShim.js index d337240f227..f3012b2436f 100644 --- a/packages/project/lib/specifications/types/extensions/ProjectShim.js +++ b/packages/project/lib/specifications/types/extensions/ProjectShim.js @@ -27,6 +27,23 @@ class ProjectShim extends Extension { getCollectionShims() { return this._config.shims.collections; } + + /* === Internals === */ + /** + * @private + */ + async _validateConfig() { + if (this._config.shims.collections) { + const path = require("path"); + for (const dependencyDefinition of Object.values(this._config.shims.collections)) { + Object.values(dependencyDefinition.modules).forEach((depPath) => { + if (path.isAbsolute(depPath)) { + throw new Error("All module paths of collections defined in a project-shim must be relative"); + } + }); + } + } + } } module.exports = ProjectShim; diff --git a/packages/project/test/fixtures/application.a/ui5-test-error.yaml b/packages/project/test/fixtures/application.a/ui5-test-error.yaml new file mode 100644 index 00000000000..f5ad909d259 --- /dev/null +++ b/packages/project/test/fixtures/application.a/ui5-test-error.yaml @@ -0,0 +1,7 @@ +--- +specVersion: "2.3" +type: application +metadata: + name: application.a +xyz: + foo: true \ No newline at end of file diff --git a/packages/project/test/lib/graph/Module.js b/packages/project/test/lib/graph/Module.js index fd362bf03cf..749be34807d 100644 --- a/packages/project/test/lib/graph/Module.js +++ b/packages/project/test/lib/graph/Module.js @@ -8,6 +8,9 @@ const buildDescriptionApplicationAPath = path.join(__dirname, "..", "..", "fixtures", "build-manifest", "application.a"); const buildDescriptionLibraryAPath = path.join(__dirname, "..", "..", "fixtures", "build-manifest", "library.e"); +const applicationHPath = path.join(__dirname, "..", "..", "fixtures", "application.h"); +const collectionPath = path.join(__dirname, "..", "..", "fixtures", "collection"); +const themeLibraryEPath = path.join(__dirname, "..", "..", "fixtures", "theme.library.e"); const basicModuleInput = { id: "application.a.id", @@ -26,13 +29,6 @@ const archiveLibProjectInput = { modulePath: buildDescriptionLibraryAPath }; -// test.beforeEach((t) => { -// }); - -test.afterEach.always(() => { - sinon.restore(); -}); - test("Instantiate a basic module", async (t) => { const ui5Module = new Module(basicModuleInput); t.is(ui5Module.getId(), "application.a.id", "Should return correct ID"); @@ -68,7 +64,7 @@ test("Get specifications from library project with build manifest", async (t) => t.is(extensions.length, 0, "Should return no extensions"); }); -test("configuration (object)", async (t) => { +test("Use configuration from object", async (t) => { const ui5Module = new Module({ id: "application.a.id", version: "1.0.0", @@ -77,7 +73,7 @@ test("configuration (object)", async (t) => { specVersion: "2.6", type: "application", metadata: { - name: "application.a" + name: "application.a-object" }, customConfiguration: { configurationTest: true @@ -85,13 +81,14 @@ test("configuration (object)", async (t) => { } }); const {project, extensions} = await ui5Module.getSpecifications(); + t.is(project.getName(), "application.a-object", "Used name from config object"); t.deepEqual(project.getCustomConfiguration(), { configurationTest: true - }); + }, "Provided configuration is available"); t.is(extensions.length, 0, "Should return no extensions"); }); -test("configuration (array)", async (t) => { +test("Use configuration from array of objects", async (t) => { const ui5Module = new Module({ id: "application.a.id", version: "1.0.0", @@ -118,11 +115,11 @@ test("configuration (array)", async (t) => { const {project, extensions} = await ui5Module.getSpecifications(); t.deepEqual(project.getCustomConfiguration(), { configurationTest: true - }); + }, "Provided configuration is available"); t.is(extensions.length, 1, "Should return one extension"); }); -test("configPath", async (t) => { +test("Use configuration from configPath", async (t) => { const ui5Module = new Module({ id: "application.a.id", version: "1.0.0", @@ -132,11 +129,25 @@ test("configPath", async (t) => { const {project, extensions} = await ui5Module.getSpecifications(); t.deepEqual(project.getCustomConfiguration(), { configPathTest: true + }, "Provided configuration is available"); + t.is(extensions.length, 0, "Should return no extensions"); +}); + +test("Use configuration from absolute configPath", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configPath: path.join(applicationAPath, "ui5-test-configPath.yaml") }); + const {project, extensions} = await ui5Module.getSpecifications(); + t.deepEqual(project.getCustomConfiguration(), { + configPathTest: true + }, "Provided configuration is available"); t.is(extensions.length, 0, "Should return no extensions"); }); -test("configuration + configPath must not be provided", async (t) => { +test("configuration and configPath must not be provided together", async (t) => { // 'configuration' as object t.throws(() => { new Module({ @@ -166,3 +177,242 @@ test("configuration + configPath must not be provided", async (t) => { message: "Could not create Module: 'configPath' must not be provided in combination with 'configuration'" }); }); + +test("Use configuration from project shim", async (t) => { + const getProjectConfigurationShimsStub = sinon.stub().returns([{ + name: "shim-1", + shim: { + specVersion: "2.6", + type: "application", + metadata: { + name: "application.h" + }, + customConfiguration: { + configurationTest: true + } + } + }]); + + const ui5Module = new Module({ + id: "application.h.id", + version: "1.0.0", + modulePath: applicationHPath, + configuration: [], + shimCollection: { + getProjectConfigurationShims: getProjectConfigurationShimsStub + } + }); + const {project, extensions} = await ui5Module.getSpecifications(); + t.is(getProjectConfigurationShimsStub.callCount, 1, "Should request configuration shims from collection"); + t.is(getProjectConfigurationShimsStub.getCall(0).args[0], "application.h.id", + "Should request configuration shims for correct module ID"); + t.truthy(project, "Should create a project form shim configuration"); + t.deepEqual(project.getCustomConfiguration(), { + configurationTest: true + }); + t.is(extensions.length, 0, "Should return no extension"); +}); + +test("Extend configuration via shim", async (t) => { + const getProjectConfigurationShimsStub = sinon.stub().returns([{ + name: "shim-1", + shim: { + customConfiguration: { // Overwrites whole object since merge is done with Object.assign + overwriteConfigurationTest: true + } + } + }]); + + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.6", + type: "application", + metadata: { + name: "application.a-object" + }, + customConfiguration: { + configurationTest: true + } + }, + shimCollection: { + getProjectConfigurationShims: getProjectConfigurationShimsStub + } + }); + const {project, extensions} = await ui5Module.getSpecifications(); + t.deepEqual(project.getCustomConfiguration(), { + overwriteConfigurationTest: true + }, "Provided configuration is available"); + t.is(extensions.length, 0, "Should return no extensions"); +}); + +test("Module is a collection", async (t) => { + const ui5Module = new Module({ + id: "collection.a", + version: "1.0.0", + modulePath: collectionPath, + configuration: [{ + specVersion: "2.6", + type: "application", + metadata: { + name: "application.a-object" + }, + customConfiguration: { + configurationTest: true + } + }, { + specVersion: "2.6", + kind: "extension", + type: "project-shim", + metadata: { + name: "collection-shim" + }, + shims: { + collections: { + "collection.a": { + modules: { + "library.a": "./library.a", + "library.b": "./library.b", + "library.c": "./library.c", + } + } + } + } + }] + }); + const {project, extensions} = await ui5Module.getSpecifications(); + t.falsy(project, "Should ignore the project since the shim defines the module itself as a collection"); + t.is(extensions.length, 1, "Should return one extensions"); + t.deepEqual(extensions[0].getCollectionShims(), { + "collection.a": { + modules: { + "library.a": "./library.a", + "library.b": "./library.b", + "library.c": "./library.c", + } + } + }, "Collection shim configured correctly"); +}); + +test("Module can't define config shim for itself", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: [{ + specVersion: "2.6", + kind: "extension", + type: "project-shim", + metadata: { + name: "my-project-shim" + }, + shims: { + configurations: { + "application.a.id": { + customConfiguration: { + overwriteConfigurationTest: true + } + } + } + } + }, { + specVersion: "2.6", + type: "application", + metadata: { + name: "application.a-object" + }, + customConfiguration: { + configurationTest: true + } + }] + }); + const {project, extensions} = await ui5Module.getSpecifications(); + t.deepEqual(project.getCustomConfiguration(), { + configurationTest: true // Shim has not been applied + }, "Provided configuration is available"); + t.is(extensions.length, 1, "Should return one extension"); +}); + +test("Legacy patches are applied", async (t) => { + async function testLegacyLibrary(libraryName) { + const ui5Module = new Module({ + id: "legacy-theme-library.e.id", + version: "1.0.0", + modulePath: themeLibraryEPath, + configuration: { + specVersion: "2.6", // should not matter + type: "library", // legacy config for theme-libraries + metadata: { + name: libraryName + } + } + }); + const {project, extensions} = await ui5Module.getSpecifications(); + t.is(project.getName(), libraryName, "Used name from config object"); + t.is(project.getType(), "theme-library", "Project type got patched correctly"); + t.is(extensions.length, 0, "Should return no extensions"); + } + + await Promise.all( + ["themelib_sap_fiori_3", "themelib_sap_bluecrystal", "themelib_sap_belize"] + .map(testLegacyLibrary)); +}); + +test("Invalid configuration in file", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configPath: "ui5-test-error.yaml" + }); + const err = await t.throwsAsync(ui5Module.getSpecifications()); + + t.true(err.message.startsWith("Invalid ui5.yaml configuration"), "Threw with validation error"); + // Check that config file name is referenced. This validates that the error was not produced by + // the Specification instance but the Module + t.true(err.message.includes("ui5-test-error.yaml"), "Error message references file name"); + t.truthy(err.yaml, "Error object contains yaml information"); +}); + +test("Incorrect config path", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configPath: "ui5-does-not-exist.yaml" + }); + const err = await t.throwsAsync(ui5Module.getSpecifications()); + + t.is(err.message, + "Failed to read configuration for module application.a.id: " + + "Could not find configuration file in module at path 'ui5-does-not-exist.yaml'", + "Threw with expected error message"); +}); + +test("Incorrect absolute config path", async (t) => { + const configPath = path.join(applicationAPath, "ui5-does-not-exist.yaml"); + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configPath + }); + const err = await t.throwsAsync(ui5Module.getSpecifications()); + + t.true(err.message.startsWith( + `Failed to read configuration for module application.a.id at '${configPath}'. Error:`), + "Threw with expected error message"); +}); + +test("Module without ui5.yaml is ignored", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationHPath + }); + const {project, extensions} = await ui5Module.getSpecifications(); + t.falsy(project, "Should return no project"); + t.is(extensions.length, 0, "Should return no extensions"); +}); diff --git a/packages/project/test/lib/graph/ShimCollection.js b/packages/project/test/lib/graph/ShimCollection.js new file mode 100644 index 00000000000..989d245e040 --- /dev/null +++ b/packages/project/test/lib/graph/ShimCollection.js @@ -0,0 +1,82 @@ +const test = require("ava"); + +const ShimCollection = require("../../../lib/graph/ShimCollection"); + +test("Add shims", async (t) => { + const collection = new ShimCollection(); + collection.addProjectShim({ + getName: () => "shim-1", + getConfigurationShims: () => { + return { + "module-1": "configuration shim 1-1", + "module-2": "configuration shim 2-1" + }; + }, + getDependencyShims: () => { + return { + "module-1": ["dependency shim 1-1"], + "module-2": ["dependency shim 2-1"] + }; + }, + getCollectionShims: () => { + return { + "module-1": "collection shim 1-1", + "module-2": "collection shim 2-1" + }; + }, + }); + collection.addProjectShim({ + getName: () => "shim-2", + getConfigurationShims: () => { + return { + "module-1": "configuration shim 1-2", + "module-2": "configuration shim 2-2" + }; + }, + getDependencyShims: () => { + return { + "module-1": ["dependency shim 1-2"], + "module-2": ["dependency shim 2-2"] + }; + }, + getCollectionShims: () => { + return { + "module-1": "collection shim 1-2", + "module-2": "collection shim 2-2" + }; + }, + }); + + t.deepEqual(collection.getProjectConfigurationShims("module-1"), [{ + name: "shim-1", + shim: "configuration shim 1-1", + }, { + name: "shim-2", + shim: "configuration shim 1-2", + }], "Returns correct project configuration shims for module-1"); + + t.deepEqual(collection.getCollectionShims("module-2"), [{ + name: "shim-1", + shim: "collection shim 2-1", + }, { + name: "shim-2", + shim: "collection shim 2-2", + }], "Returns correct collection shims for module-2"); + + t.deepEqual(collection.getAllDependencyShims(), { + "module-1": [{ + name: "shim-1", + shim: ["dependency shim 1-1"], + }, { + name: "shim-2", + shim: ["dependency shim 1-2"], + }], + "module-2": [{ + name: "shim-1", + shim: ["dependency shim 2-1"], + }, { + name: "shim-2", + shim: ["dependency shim 2-2"], + }] + }, "Returns correct dependency shims"); +}); diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js new file mode 100644 index 00000000000..44c973fae95 --- /dev/null +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -0,0 +1,374 @@ +const test = require("ava"); +const path = require("path"); +const sinonGlobal = require("sinon"); + +const projectGraphBuilder = require("../../../lib/graph/projectGraphBuilder"); + +const libraryEPath = path.join(__dirname, "..", "..", "fixtures", "library.e"); +const collectionPath = path.join(__dirname, "..", "..", "fixtures", "collection"); + +function createNode({id, name, version = "1.0.0", modulePath, configuration}) { + if (!Array.isArray(configuration)) { + configuration = Object.assign({ + specVersion: "2.6", + type: "library", + metadata: { + name: name || id + } + }, configuration); + } + return { + id, + version, + path: modulePath || libraryEPath, + configuration + }; +} + +function traverseBreadthFirst(...args) { + return _traverse(...args, true); +} + +async function _traverse(t, graph, expectedOrder, bfs) { + if (bfs === undefined) { + throw new Error("Test error: Parameter 'bfs' must be specified"); + } + const callbackStub = t.context.sinon.stub().resolves(); + if (bfs) { + await graph.traverseBreadthFirst(callbackStub); + } else { + await graph.traverseDepthFirst(callbackStub); + } + + t.is(callbackStub.callCount, expectedOrder.length, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, expectedOrder, "Traversed graph in correct order"); +} + +test.beforeEach((t) => { + t.context.sinon = sinonGlobal.createSandbox(); + t.context.getRootNode = t.context.sinon.stub(); + t.context.getDependencies = t.context.sinon.stub().resolves([]); + + t.context.provider = { + getRootNode: t.context.getRootNode, + getDependencies: t.context.getDependencies, + }; +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); +}); + +test("Basic graph creation", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1" + })); + const graph = await projectGraphBuilder(t.context.provider); + + await traverseBreadthFirst(t, graph, [ + "id1" + ]); + + const p = graph.getProject("id1"); + t.is(p.getPath(), libraryEPath, "Project returned correct path"); + + t.is(t.context.getRootNode.callCount, 1, "NodeProvider#getRoodNode got called once"); + t.is(t.context.getDependencies.callCount, 1, "NodeProvider#getDependencies got called once"); +}); + +test("Legacy node with specVersion attribute as root", async (t) => { + const node = createNode({ + id: "id1" + }); + node.specVersion = "1.0"; + t.context.getRootNode.resolves(node); + const err = await t.throwsAsync(projectGraphBuilder(t.context.provider)); + + t.is(err.message, + "Provided node with ID id1 contains a top-level 'specVersion' property. With UI5 Tooling 3.0, " + + "project configuration needs to be provided in a dedicated 'configuration' object", + "Threw with expected error message"); +}); + +test("Legacy node with metadata attribute in dependencies", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1" + })); + const node = createNode({ + id: "id2" + }); + node.metadata = {name: "id2"}; + t.context.getDependencies.resolves([node]); + const err = await t.throwsAsync(projectGraphBuilder(t.context.provider)); + + t.is(err.message, + "Provided node with ID id2 contains a top-level 'metadata' property. With UI5 Tooling 3.0, " + + "project configuration needs to be provided in a dedicated 'configuration' object", + "Threw with expected error message"); +}); + +test("Node depends on itself", async (t) => { + const node = createNode({ + id: "id1", + name: "project-1" + }); + t.context.getRootNode.resolves(node); + t.context.getDependencies.resolves([node]); + const err = await t.throwsAsync(projectGraphBuilder(t.context.provider)); + + t.is(err.message, + "Failed to declare dependency from project project-1 to project-1: A project can't depend on itself", + "Threw with expected error message"); +}); + +test("Nested node with same id is ignored", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([ + createNode({ + id: "id2", + name: "project-2" + }), + ]); + t.context.getDependencies.onSecondCall().resolves([ + createNode({ + id: "id1", + name: "project-3" + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + const p = graph.getProject("project-1"); + t.is(p.getPath(), libraryEPath, "Project returned correct path"); + t.falsy(graph.getProject("project-3"), "Configuration of project with same ID has been ignored"); + t.deepEqual(graph.getDependencies("project-2"), ["project-1"], "Cyclic dependency has been added"); +}); + +test("Root node must provide a project", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1", + modulePath: collectionPath, + configuration: { + kind: "extension", + type: "project-shim", + shims: { + collections: { + "id1": { + modules: { + "library.a": "./library.a", + "library.b": "./library.b", + "library.c": "./library.c", + } + } + } + } + } + })); + const err = await t.throwsAsync(projectGraphBuilder(t.context.provider)); + t.is(err.message, + `Failed to create a UI5 project from module id1 at ${collectionPath}. ` + + `Make sure the path is correct and a project configuration is present or supplied.`, + "Threw with expected error message"); +}); + +test("Dependency is a collection", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([ + createNode({ + id: "id2", + name: "shim-1", + modulePath: collectionPath, + configuration: { + kind: "extension", + type: "project-shim", + shims: { + collections: { + "id2": { + modules: { + "lib.a": "./library.a", + "lib.b": "./library.b", + "lib.c": "./library.c", + } + } + }, + dependencies: { + "lib.a": ["lib.b"], + } + } + } + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + await traverseBreadthFirst(t, graph, [ + "project-1", + "library.a", + "library.b", + "library.c" + ]); + const p = graph.getProject("project-1"); + t.is(p.getPath(), libraryEPath, "Project returned correct path"); + t.deepEqual(graph.getDependencies("project-1"), [ + "library.a", "library.b", "library.c" + ], "Correct dependencies for root node maintained"); + t.deepEqual(graph.getDependencies("library.a"), [ + "library.b" + ], "Correct dependencies for library.a maintained"); +}); + +test("Shim in root defines collection", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + configuration: [{ + specVersion: "2.6", + type: "library", + metadata: { + name: "project-1" + } + }, { + specVersion: "2.6", + kind: "extension", + type: "project-shim", + metadata: { + name: "shim" + }, + shims: { + collections: { + "id2": { + modules: { + "lib.a": "./library.a", + "lib.b": "./library.b", + "lib.c": "./library.c", + } + } + }, + dependencies: { + "lib.a": ["lib.b"], + }, + configurations: { + "lib.a": { + customConfiguration: { + someConfig: true + } + } + } + } + }] + })); + t.context.getDependencies.onFirstCall().resolves([ + createNode({ + id: "id2", + name: "shim-1", + modulePath: collectionPath, + configuration: [] + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + await traverseBreadthFirst(t, graph, [ + "project-1", + "library.a", + "library.b", + "library.c" + ]); + const p = graph.getProject("library.a"); + t.deepEqual(p.getCustomConfiguration(), { + someConfig: true + }, "Custom configuration from shim has been applied"); +}); + +test("Project defining a collection shim for itself should be ignored", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1", + })); + t.context.getDependencies.onFirstCall().resolves([ + createNode({ + id: "id2", + name: "shim-1", + modulePath: collectionPath, + configuration: [{ + specVersion: "2.6", + type: "library", + metadata: { + name: "collection-library" // will be ignored + }, + customConfiguration: { + someConfig: true + } + }, { + specVersion: "2.6", + kind: "extension", + type: "project-shim", + metadata: { + name: "shim" + }, + shims: { + collections: { + "id2": { + modules: { + "lib.a": "./library.a", + "lib.b": "./library.b", + "lib.c": "./library.c", + } + } + }, + dependencies: { + "lib.a": ["lib.b"], + } + } + }] + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + await traverseBreadthFirst(t, graph, [ + "project-1", + "library.a", + "library.b", + "library.c" + ]); + const p = graph.getProject("library.a"); + t.deepEqual(p.getCustomConfiguration(), undefined, + "No configuration from collection project has been applied"); +}); + +test("Dependencies defined through shim", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([ + createNode({ + id: "ext1", + configuration: { + kind: "extension", + type: "project-shim", + shims: { + dependencies: { + "id3": ["id2"], + } + } + } + }), + ]); + t.context.getDependencies.onSecondCall().resolves([ + createNode({ + id: "id2", + name: "project-2" + }), + ]); + t.context.getDependencies.onThirdCall().resolves([ + createNode({ + id: "id3", + name: "project-3" + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + t.deepEqual(graph.getDependencies("project-3"), ["project-2"], "Shimmed dependency has been defined"); +}); From a94f4ccc41db85b98b3ffbab17397ec8b5ed6856 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 8 Jul 2022 12:18:03 +0200 Subject: [PATCH 0637/1272] [ui5-project][INTERNAL] Refactor buildDefinitions and add tests --- packages/project/index.js | 4 - .../ProjectBuilder.js} | 377 +++++----- .../project/lib/build/definitions/_utils.js | 24 + .../lib/build/definitions/application.js | 123 ++++ .../project/lib/build/definitions/library.js | 161 +++++ .../project/lib/build/definitions/module.js | 12 + .../lib/build/definitions/themeLibrary.js | 47 ++ .../helpers}/BuildContext.js | 0 .../helpers}/ProjectBuildContext.js | 0 .../helpers}/composeProjectList.js | 2 +- .../helpers}/composeTaskList.js | 2 +- .../helpers}/createBuildManifest.js | 2 +- .../lib/{builder.js => build/runBuild.js} | 22 +- .../buildDefinitions/ApplicationBuilder.js | 113 --- .../lib/buildDefinitions/LibraryBuilder.js | 152 ---- .../lib/buildDefinitions/ModuleBuilder.js | 7 - .../buildDefinitions/ThemeLibraryBuilder.js | 40 -- .../lib/buildDefinitions/getInstance.js | 27 - packages/project/lib/graph/ProjectGraph.js | 38 + .../types/extensions/ServerMiddleware.js | 9 + .../specifications/types/extensions/Task.js | 9 + .../project/test/lib/build/ProjectBuilder.js | 658 ++++++++++++++++++ .../test/lib/build/definitions/application.js | 480 +++++++++++++ .../test/lib/build/definitions/library.js | 590 ++++++++++++++++ .../test/lib/build/definitions/module.js | 8 + .../lib/build/definitions/themeLibrary.js | 155 +++++ .../test/lib/build/definitions/utils.js | 19 + .../helpers}/BuildContext.js | 6 +- .../helpers}/ProjectBuildContext.js | 4 +- .../helpers}/composeProjectList.js | 16 +- .../helpers}/composeTaskList.js | 4 +- .../createBuildManifest.integration.js | 15 +- .../helpers}/createBuildManifest.js | 12 +- packages/project/test/lib/index.js | 1 - .../test/lib/specifications/Specification.js | 18 +- 35 files changed, 2580 insertions(+), 577 deletions(-) rename packages/project/lib/{buildDefinitions/AbstractBuilder.js => build/ProjectBuilder.js} (62%) create mode 100644 packages/project/lib/build/definitions/_utils.js create mode 100644 packages/project/lib/build/definitions/application.js create mode 100644 packages/project/lib/build/definitions/library.js create mode 100644 packages/project/lib/build/definitions/module.js create mode 100644 packages/project/lib/build/definitions/themeLibrary.js rename packages/project/lib/{buildHelpers => build/helpers}/BuildContext.js (100%) rename packages/project/lib/{buildHelpers => build/helpers}/ProjectBuildContext.js (100%) rename packages/project/lib/{buildHelpers => build/helpers}/composeProjectList.js (99%) rename packages/project/lib/{buildHelpers => build/helpers}/composeTaskList.js (97%) rename packages/project/lib/{buildHelpers => build/helpers}/createBuildManifest.js (96%) rename packages/project/lib/{builder.js => build/runBuild.js} (93%) delete mode 100644 packages/project/lib/buildDefinitions/ApplicationBuilder.js delete mode 100644 packages/project/lib/buildDefinitions/LibraryBuilder.js delete mode 100644 packages/project/lib/buildDefinitions/ModuleBuilder.js delete mode 100644 packages/project/lib/buildDefinitions/ThemeLibraryBuilder.js delete mode 100644 packages/project/lib/buildDefinitions/getInstance.js create mode 100644 packages/project/test/lib/build/ProjectBuilder.js create mode 100644 packages/project/test/lib/build/definitions/application.js create mode 100644 packages/project/test/lib/build/definitions/library.js create mode 100644 packages/project/test/lib/build/definitions/module.js create mode 100644 packages/project/test/lib/build/definitions/themeLibrary.js create mode 100644 packages/project/test/lib/build/definitions/utils.js rename packages/project/test/lib/{buildHelpers => build/helpers}/BuildContext.js (91%) rename packages/project/test/lib/{buildHelpers => build/helpers}/ProjectBuildContext.js (96%) rename packages/project/test/lib/{buildHelpers => build/helpers}/composeProjectList.js (93%) rename packages/project/test/lib/{buildHelpers => build/helpers}/composeTaskList.js (96%) rename packages/project/test/lib/{buildHelpers => build/helpers}/createBuildManifest.integration.js (85%) rename packages/project/test/lib/{buildHelpers => build/helpers}/createBuildManifest.js (85%) diff --git a/packages/project/index.js b/packages/project/index.js index 53a9134b11a..7c202f7db44 100644 --- a/packages/project/index.js +++ b/packages/project/index.js @@ -3,10 +3,6 @@ * @public */ module.exports = { - /** - * @type {import('./lib/builder')} - */ - builder: "./lib/builder", /** * @type {import('./lib/generateProjectGraph')} */ diff --git a/packages/project/lib/buildDefinitions/AbstractBuilder.js b/packages/project/lib/build/ProjectBuilder.js similarity index 62% rename from packages/project/lib/buildDefinitions/AbstractBuilder.js rename to packages/project/lib/build/ProjectBuilder.js index a65ee3e9c80..57fc0196102 100644 --- a/packages/project/lib/buildDefinitions/AbstractBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -1,21 +1,7 @@ const {getTask} = require("@ui5/builder").tasks.taskRepository; -const composeTaskList = require("../buildHelpers/composeTaskList"); +const composeTaskList = require("./helpers/composeTaskList"); -/** - * Resource collections - * - * @public - * @typedef module:@ui5/builder.BuilderResourceCollections - * @property {module:@ui5/fs.DuplexCollection} workspace Workspace Resource - * @property {module:@ui5/fs.ReaderCollection} dependencies Workspace Resource - */ - -/** - * Base class for the builder implementation of a project type - * - * @abstract - */ -class AbstractBuilder { +class ProjectBuilder { /** * Constructor * @@ -26,26 +12,45 @@ class AbstractBuilder { * @param {object} parameters.taskUtil */ constructor({graph, project, parentLogger, taskUtil}) { - if (new.target === AbstractBuilder) { - throw new TypeError("Class 'AbstractBuilder' is abstract"); - } + this._project = project; + this._graph = graph; + this._taskUtil = taskUtil; - this.project = project; - this.graph = graph; - this.taskUtil = taskUtil; + this._log = parentLogger.createSubLogger(project.getType() + " " + project.getName(), 0.2); + this._taskLog = this._log.createTaskLogger("🔨"); - this.log = parentLogger.createSubLogger(project.getType() + " " + project.getName(), 0.2); - this.taskLog = this.log.createTaskLogger("🔨"); + this._tasks = {}; + this._taskExecutionOrder = []; - this.tasks = {}; - this.taskExecutionOrder = []; + let buildDefinition; + switch (project.getType()) { + case "application": + buildDefinition = require("./definitions/application"); + break; + case "library": + buildDefinition = require("./definitions/library"); + break; + case "module": + buildDefinition = require("./definitions/module"); + break; + case "theme-library": + buildDefinition = require("./definitions/themeLibrary"); + break; + default: + throw new Error(`Unknown project type ${project.getType()}`); + } - this.addStandardTasks({ + const standardTasks = buildDefinition({ project, taskUtil, getTask }); - this.addCustomTasks({ + + for (const [taskName, params] of standardTasks) { + this._addTask(taskName, params); + } + + this._addCustomTasks({ graph, project, taskUtil @@ -53,16 +58,123 @@ class AbstractBuilder { } /** - * Adds all standard tasks to execute + * Takes a list of tasks which should be executed from the available task list of the current builder * - * @abstract - * @protected - * @param {object} parameters - * @param {object} parameters.taskUtil - * @param {object} parameters.project + * @param {object} buildConfig + * @param {boolean} buildConfig.selfContained + * True if a the build should be self-contained or false for prelead build bundles + * @param {boolean} buildConfig.jsdoc True if a JSDoc build should be executed + * @param {Array} buildConfig.includedTasks Task list to be included from build + * @param {Array} buildConfig.excludedTasks Task list to be excluded from build + * @param {object} buildParams + * @param {module:@ui5/fs.DuplexCollection} buildParams.workspace Workspace of the current project + * @param {module:@ui5/fs.ReaderCollection} buildParams.dependencies Dependencies reader collection + * @returns {Promise} Returns promise chain with tasks + */ + async build(buildConfig, buildParams) { + const tasksToRun = composeTaskList(Object.keys(this._tasks), buildConfig); + const allTasks = this._taskExecutionOrder.filter((taskName) => { + // There might be a numeric suffix in case a custom task is configured multiple times. + // The suffix needs to be removed in order to check against the list of tasks to run. + // + // Note: The 'tasksToRun' parameter only allows to specify the custom task name + // (without suffix), so it executes either all or nothing. + // It's currently not possible to just execute some occurrences of a custom task. + // This would require a more robust contract to identify task executions + // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). + const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); + return tasksToRun.includes(taskWithoutSuffixCounter); + }); + + this._taskLog.addWork(allTasks.length); + + for (const taskName of allTasks) { + const taskFunction = this._tasks[taskName].task; + + if (typeof taskFunction === "function") { + await this._executeTask(taskName, taskFunction, buildParams); + } + } + } + + /** + * Takes a list of tasks which should be executed from the available task list of the current builder + * + * @param {object} buildConfig + * @param {boolean} buildConfig.selfContained + * True if a the build should be self-contained or false for prelead build bundles + * @param {boolean} buildConfig.jsdoc True if a JSDoc build should be executed + * @param {Array} buildConfig.includedTasks Task list to be included from build + * @param {Array} buildConfig.excludedTasks Task list to be excluded from build + * @returns {Promise} Returns promise chain with tasks + */ + requiresDependencies(buildConfig) { + const tasksToRun = composeTaskList(Object.keys(this._tasks), buildConfig); + const allTasks = this._taskExecutionOrder.filter((taskName) => { + // There might be a numeric suffix in case a custom task is configured multiple times. + // The suffix needs to be removed in order to check against the list of tasks to run. + // + // Note: The 'tasksToRun' parameter only allows to specify the custom task name + // (without suffix), so it executes either all or nothing. + // It's currently not possible to just execute some occurrences of a custom task. + // This would require a more robust contract to identify task executions + // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). + const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); + return tasksToRun.includes(taskWithoutSuffixCounter); + }); + return allTasks.some((taskName) => { + if (this._tasks[taskName].requiresDependencies) { + this._log.verbose(`Task ${taskName} for project ${this._project.getName()} requires dependencies`); + return true; + } + return false; + }); + } + + /** + * Adds an executable task to the builder + * + * The order this function is being called defines the build order. FIFO. + * + * @param {string} taskName Name of the task which should be in the list availableTasks. + * @param {object} [parameters] + * @param {boolean} [parameters.requiresDependencies] + * @param {object} [parameters.options] + * @param {Function} [parameters.taskFunction] */ - addStandardTasks({project, taskUtil}) { - throw new Error("Function 'addStandardTasks' is not implemented"); + _addTask(taskName, {requiresDependencies = false, options = {}, taskFunction} = {}) { + if (this._tasks[taskName]) { + throw new Error(`Failed to add duplicate task ${taskName} for project ${this._project.getName()}`); + } + if (this._taskExecutionOrder.includes(taskName)) { + throw new Error(`Failed to add task ${taskName} for project ${this._project.getName()}. ` + + `It has already been scheduled for execution`); + } + + const task = async ({workspace, dependencies}, log) => { + options.projectName = this._project.getName(); + options.projectNamespace = this._project.getNamespace(); + + const params = { + workspace, + taskUtil: this._taskUtil, + options + }; + + if (requiresDependencies) { + params.dependencies = dependencies; + } + + if (!taskFunction) { + taskFunction = getTask(taskName).task; + } + return taskFunction(params); + }; + this._tasks[taskName] = { + task, + requiresDependencies + }; + this._taskExecutionOrder.push(taskName); } /** @@ -74,7 +186,7 @@ class AbstractBuilder { * @param {object} parameters.project * @param {object} parameters.taskUtil */ - addCustomTasks({graph, project, taskUtil}) { + _addCustomTasks({graph, project, taskUtil}) { const projectCustomTasks = project.getCustomTasks(); if (!projectCustomTasks || projectCustomTasks.length === 0) { return; // No custom tasks defined @@ -82,34 +194,47 @@ class AbstractBuilder { for (let i = 0; i < projectCustomTasks.length; i++) { const taskDef = projectCustomTasks[i]; if (!taskDef.name) { - throw new Error(`Missing name for custom task definition of project ${project.getName()} ` + - `at index ${i}`); + throw new Error(`Missing name for custom task in configuration of project ${project.getName()}`); } if (taskDef.beforeTask && taskDef.afterTask) { throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + `defines both "beforeTask" and "afterTask" parameters. Only one must be defined.`); } - if (this.taskExecutionOrder.length && !taskDef.beforeTask && !taskDef.afterTask) { + if (this._taskExecutionOrder.length && !taskDef.beforeTask && !taskDef.afterTask) { // Iff there are tasks configured, beforeTask or afterTask must be given throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + `defines neither a "beforeTask" nor an "afterTask" parameter. One must be defined.`); } + let standardTask; + try { + standardTask = getTask(taskDef.name); + } catch (e) {/* We expect this to fail with an "Unknown Task" error */} + if (standardTask) { + throw new Error( + `Custom task configuration of project ${project.getName()} ` + + `references standard task ${taskDef.name}. Only custom tasks must be provided here.`); + } let newTaskName = taskDef.name; - if (this.tasks[newTaskName]) { + if (this._tasks[newTaskName]) { // Task is already known // => add a suffix to allow for multiple configurations of the same task - let suffixCounter = 0; - while (this.tasks[newTaskName]) { - suffixCounter++; // Start at 1 + let suffixCounter = 1; + while (this._tasks[newTaskName]) { + suffixCounter++; // Start at 2 newTaskName = `${taskDef.name}--${suffixCounter}`; } } const task = graph.getExtension(taskDef.name); + if (!task) { + throw new Error( + `Could not find custom task ${taskDef.name}, referenced by project ${project.getName()} ` + + `in project graph with root node ${graph.getRoot().getName()}`); + } // TODO: Create callback for custom tasks to configure "requiresDependencies" and "enabled" // Input: task "options" and build mode ("standalone", "preload", etc.) const requiresDependencies = true; // Default to true for old spec versions - const execTask = function({workspace, dependencies}) { + const execTask = async function({workspace, dependencies}, log) { /* Custom Task Interface Parameters: {Object} parameters Parameters @@ -130,7 +255,7 @@ class AbstractBuilder { options: { projectName: project.getName(), projectNamespace: project.getNamespace(), - configuration: taskDef.configuration + configuration: taskDef.configuration, } }; @@ -138,6 +263,11 @@ class AbstractBuilder { params.dependencies = dependencies; } + if (task.getSpecVersion() === "2.7") { + params.log = log; + params.taskName = newTaskName; + } + const taskUtilInterface = taskUtil.getInterface(task.getSpecVersion()); // Interface is undefined if specVersion does not support taskUtil if (taskUtilInterface) { @@ -146,15 +276,15 @@ class AbstractBuilder { return task.getTask()(params); }; - this.tasks[newTaskName] = { + this._tasks[newTaskName] = { task: execTask, requiresDependencies }; - if (this.taskExecutionOrder.length) { + if (this._taskExecutionOrder.length) { // There is at least one task configured. Use before- and afterTask to add the custom task const refTaskName = taskDef.beforeTask || taskDef.afterTask; - let refTaskIdx = this.taskExecutionOrder.indexOf(refTaskName); + let refTaskIdx = this._taskExecutionOrder.indexOf(refTaskName); if (refTaskIdx === -1) { throw new Error(`Could not find task ${refTaskName}, referenced by custom task ${newTaskName}, ` + `to be scheduled for project ${project.getName()}`); @@ -163,124 +293,14 @@ class AbstractBuilder { // Insert after index of referenced task refTaskIdx++; } - this.taskExecutionOrder.splice(refTaskIdx, 0, newTaskName); + this._taskExecutionOrder.splice(refTaskIdx, 0, newTaskName); } else { // There is no task configured so far. Just add the custom task - this.taskExecutionOrder.push(newTaskName); - } - } - } - - /** - * Adds a executable task to the builder - * - * The order this function is being called defines the build order. FIFO. - * - * @param {string} taskName Name of the task which should be in the list availableTasks. - * @param {object} [parameters] - * @param {boolean} [parameters.requiresDependencies] - * @param {object} [parameters.options] - * @param {Function} [taskFunction] - */ - addTask(taskName, {requiresDependencies = false, options = {}} = {}, taskFunction) { - if (this.tasks[taskName]) { - throw new Error(`Failed to add duplicate task ${taskName} for project ${this.project.getName()}`); - } - if (this.taskExecutionOrder.includes(taskName)) { - throw new Error(`Builder: Failed to add task ${taskName} for project ${this.project.getName()}. ` + - `It has already been scheduled for execution.`); - } - - const task = ({workspace, dependencies}) => { - options.projectName = this.project.getName(); - // TODO: Deprecate "namespace" in favor of "projectNamespace" as already used for custom tasks? - options.projectNamespace = this.project.getNamespace(); - - const params = { - workspace, - taskUtil: this.taskUtil, - options - }; - - if (requiresDependencies) { - params.dependencies = dependencies; - } - - if (!taskFunction) { - taskFunction = getTask(taskName).task; - } - return taskFunction(params); - }; - this.tasks[taskName] = { - task, - requiresDependencies - }; - this.taskExecutionOrder.push(taskName); - } - - /** - * Takes a list of tasks which should be executed from the available task list of the current builder - * - * @param {object} buildConfig - * @param {boolean} buildConfig.selfContained - * True if a the build should be self-contained or false for prelead build bundles - * @param {boolean} buildConfig.jsdoc True if a JSDoc build should be executed - * @param {Array} buildConfig.includedTasks Task list to be included from build - * @param {Array} buildConfig.excludedTasks Task list to be excluded from build - * @param {object} buildParams - * @param {module:@ui5/fs.DuplexCollection} buildParams.workspace Workspace of the current project - * @param {module:@ui5/fs.ReaderCollection} buildParams.dependencies Dependencies reader collection - * @returns {Promise} Returns promise chain with tasks - */ - async build(buildConfig, buildParams) { - const tasksToRun = composeTaskList(Object.keys(this.tasks), buildConfig); - const allTasks = this.taskExecutionOrder.filter((taskName) => { - // There might be a numeric suffix in case a custom task is configured multiple times. - // The suffix needs to be removed in order to check against the list of tasks to run. - // - // Note: The 'tasksToRun' parameter only allows to specify the custom task name - // (without suffix), so it executes either all or nothing. - // It's currently not possible to just execute some occurrences of a custom task. - // This would require a more robust contract to identify task executions - // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). - const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); - return tasksToRun.includes(taskWithoutSuffixCounter); - }); - - this.taskLog.addWork(allTasks.length); - - for (const taskName of allTasks) { - const taskFunction = this.tasks[taskName].task; - - if (typeof taskFunction === "function") { - await this.executeTask(taskName, taskFunction, buildParams); + this._taskExecutionOrder.push(newTaskName); } } } - requiresDependencies(buildConfig) { - const tasksToRun = composeTaskList(Object.keys(this.tasks), buildConfig); - const allTasks = this.taskExecutionOrder.filter((taskName) => { - // There might be a numeric suffix in case a custom task is configured multiple times. - // The suffix needs to be removed in order to check against the list of tasks to run. - // - // Note: The 'tasksToRun' parameter only allows to specify the custom task name - // (without suffix), so it executes either all or nothing. - // It's currently not possible to just execute some occurrences of a custom task. - // This would require a more robust contract to identify task executions - // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). - const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); - return tasksToRun.includes(taskWithoutSuffixCounter); - }); - return allTasks.some((taskName) => { - if (this.tasks[taskName].requiresDependencies) { - this.log.verbose(`Task ${taskName} for project ${this.project.getName()} requires dependencies`); - return true; - } - return false; - }); - } - /** * Adds progress related functionality to task function. * @@ -290,38 +310,15 @@ class AbstractBuilder { * @param {object} taskParams Base parameters for all tasks * @returns {Promise} Resolves when task has finished */ - async executeTask(taskName, taskFunction, taskParams) { - this.taskLog.startWork(`Running task ${taskName}...`); + async _executeTask(taskName, taskFunction, taskParams) { + this._taskLog.startWork(`Running task ${taskName}...`); this._taskStart = performance.now(); - await taskFunction(taskParams); - this.taskLog.completeWork(1); + await taskFunction(taskParams, this._taskLog); + this._taskLog.completeWork(1); if (process.env.UI5_LOG_TASK_PERF) { - this.taskLog.info(`Task succeeded in ${Math.round((performance.now() - this._taskStart))} ms`); + this._taskLog.info(`Task succeeded in ${Math.round((performance.now() - this._taskStart))} ms`); } } - - /** - * Appends the list of 'excludes' to the list of 'patterns'. To harmonize both lists, the 'excludes' - * are negated and the 'patternPrefix' is added to make them absolute. - * - * @private - * @param {string[]} patterns - * List of absolute default patterns. - * @param {string[]} excludes - * List of relative patterns to be excluded. Excludes with a leading "!" are meant to be re-included. - * @param {string} patternPrefix - * Prefix to be added to the excludes to make them absolute. The prefix must have a leading and a - * trailing "/". - */ - enhancePatternWithExcludes(patterns, excludes, patternPrefix) { - excludes.forEach((exclude) => { - if (exclude.startsWith("!")) { - patterns.push(`${patternPrefix}${exclude.slice(1)}`); - } else { - patterns.push(`!${patternPrefix}${exclude}`); - } - }); - } } -module.exports = AbstractBuilder; +module.exports = ProjectBuilder; diff --git a/packages/project/lib/build/definitions/_utils.js b/packages/project/lib/build/definitions/_utils.js new file mode 100644 index 00000000000..d1fdc729a7d --- /dev/null +++ b/packages/project/lib/build/definitions/_utils.js @@ -0,0 +1,24 @@ +module.exports = { + /** + * Appends the list of 'excludes' to the list of 'patterns'. To harmonize both lists, the 'excludes' + * are negated and the 'patternPrefix' is added to make them absolute. + * + * @private + * @param {string[]} patterns + * List of absolute default patterns. + * @param {string[]} excludes + * List of relative patterns to be excluded. Excludes with a leading "!" are meant to be re-included. + * @param {string} patternPrefix + * Prefix to be added to the excludes to make them absolute. The prefix must have a leading and a + * trailing "/". + */ + enhancePatternWithExcludes(patterns, excludes, patternPrefix) { + excludes.forEach((exclude) => { + if (exclude.startsWith("!")) { + patterns.push(`${patternPrefix}${exclude.slice(1)}`); + } else { + patterns.push(`!${patternPrefix}${exclude}`); + } + }); + } +}; diff --git a/packages/project/lib/build/definitions/application.js b/packages/project/lib/build/definitions/application.js new file mode 100644 index 00000000000..cbafac43d3e --- /dev/null +++ b/packages/project/lib/build/definitions/application.js @@ -0,0 +1,123 @@ +const {enhancePatternWithExcludes} = require("./_utils"); + +/** + * Get tasks.set(and ,ir configuration for a given application project + * + * @private + * @param {object} parameters + * @param {object} parameters.project + * @param {object} parameters.taskUtil + * @param {Function} parameters.getTask + */ +module.exports = function({project, taskUtil, getTask}) { + const tasks = new Map(); + tasks.set("escapeNonAsciiCharacters", { + options: { + encoding: project.getPropertiesFileSourceEncoding(), + pattern: "/**/*.properties" + } + }); + + tasks.set("replaceCopyright", { + options: { + copyright: project.getCopyright(), + pattern: "/**/*.{js,json}" + } + }); + + tasks.set("replaceVersion", { + options: { + version: project.getVersion(), + pattern: "/**/*.{js,json}" + } + }); + + // Support rules should not be minified to have readable code in the Support Assistant + const minificationPattern = ["/**/*.js", "!**/*.support.js"]; + if (["2.6"].includes(project.getSpecVersion())) { + const minificationExcludes = project.getMinificationExcludes(); + if (minificationExcludes.length) { + enhancePatternWithExcludes(minificationPattern, minificationExcludes, "/resources/"); + } + } + tasks.set("minify", { + options: { + pattern: minificationPattern + } + }); + + tasks.set("generateFlexChangesBundle", {}); + tasks.set("generateManifestBundle", {}); + + const bundles = project.getBundles(); + const existingBundleDefinitionNames = + bundles.map(({bundleDefinition}) => bundleDefinition.name).filter(Boolean); + + const componentPreloadPaths = project.getComponentPreloadPaths(); + const componentPreloadNamespaces = project.getComponentPreloadNamespaces(); + const componentPreloadExcludes = project.getComponentPreloadExcludes(); + if (componentPreloadPaths.length || componentPreloadNamespaces.length) { + tasks.set("generateComponentPreload", { + options: { + paths: componentPreloadPaths, + namespaces: componentPreloadNamespaces, + excludes: componentPreloadExcludes, + skipBundles: existingBundleDefinitionNames + } + }); + } else { + // Default component preload for application namespace + tasks.set("generateComponentPreload", { + options: { + namespaces: [project.getNamespace()], + excludes: componentPreloadExcludes, + skipBundles: existingBundleDefinitionNames + } + }); + } + + tasks.set("generateStandaloneAppBundle", {requiresDependencies: true}); + + tasks.set("transformBootstrapHtml", {}); + + if (bundles.length) { + tasks.set("generateBundle", { + requiresDependencies: true, + taskFunction: async ({workspace, dependencies, taskUtil, options}) => { + return bundles.reduce(function(sequence, bundle) { + return sequence.then(function() { + return getTask("generateBundle").task({ + workspace, + dependencies, + taskUtil, + options: { + projectName: options.projectName, + bundleDefinition: bundle.bundleDefinition, + bundleOptions: bundle.bundleOptions + } + }); + }); + }, Promise.resolve()); + } + }); + } + + tasks.set("generateVersionInfo", { + requiresDependencies: true, + options: { + rootProject: project, + pattern: "/resources/**/.library" + } + }); + + tasks.set("generateCachebusterInfo", { + options: { + signatureType: project.getCachebusterSignatureType(), + } + }); + + tasks.set("generateApiIndex", {requiresDependencies: true}); + tasks.set("generateResourcesJson", {requiresDependencies: true}); + + return tasks; +}; diff --git a/packages/project/lib/build/definitions/library.js b/packages/project/lib/build/definitions/library.js new file mode 100644 index 00000000000..edd522f1fdf --- /dev/null +++ b/packages/project/lib/build/definitions/library.js @@ -0,0 +1,161 @@ +const {enhancePatternWithExcludes} = require("./_utils"); + +/** + * Get tasks and their configuration for a given application project + * + * @private + * @param {object} parameters + * @param {object} parameters.project + * @param {object} parameters.taskUtil + * @param {Function} parameters.getTask + */ +module.exports = function({project, taskUtil, getTask}) { + const tasks = new Map(); + tasks.set("escapeNonAsciiCharacters", { + options: { + encoding: project.getPropertiesFileSourceEncoding(), + pattern: "/**/*.properties" + } + }); + + tasks.set("replaceCopyright", { + options: { + copyright: project.getCopyright(), + pattern: "/**/*.{js,library,css,less,theme,html}" + } + }); + + tasks.set("replaceVersion", { + options: { + version: project.getVersion(), + pattern: "/**/*.{js,json,library,css,less,theme,html}" + } + }); + + tasks.set("replaceBuildtime", { + options: { + pattern: "/resources/sap/ui/Global.js" + } + }); + + tasks.set("generateJsdoc", { + requiresDependencies: true, + taskFunction: async ({workspace, dependencies, taskUtil, options}) => { + const patterns = ["/resources/**/*.js"]; + // Add excludes + const excludes = project.getJsdocExcludes(); + if (excludes.length) { + patterns.push(...excludes.map((pattern) => { + return `!/resources/${pattern}`; + })); + } + + return getTask("generateJsdoc").task({ + workspace, + dependencies, + taskUtil, + options: { + projectName: options.projectName, + namespace: project.getNamespace(), + version: project.getVersion(), + pattern: patterns + } + }); + } + }); + + tasks.set("executeJsdocSdkTransformation", { + requiresDependencies: true, + options: { + dotLibraryPattern: "/resources/**/*.library", + } + }); + + // Support rules should not be minified to have readable code in the Support Assistant + const minificationPattern = ["/resources/**/*.js", "!**/*.support.js"]; + if (["2.6"].includes(project.getSpecVersion())) { + const minificationExcludes = project.getMinificationExcludes(); + if (minificationExcludes.length) { + enhancePatternWithExcludes(minificationPattern, minificationExcludes, "/resources/"); + } + } + + tasks.set("minify", { + options: { + pattern: minificationPattern + } + }); + + tasks.set("generateLibraryManifest", {}); + tasks.set("generateManifestBundle", {}); + + const bundles = project.getBundles(); + const existingBundleDefinitionNames = + bundles.map(({bundleDefinition}) => bundleDefinition.name).filter(Boolean); + const componentPreloadPaths = project.getComponentPreloadPaths(); + const componentPreloadNamespaces = project.getComponentPreloadNamespaces(); + const componentPreloadExcludes = project.getComponentPreloadExcludes(); + if (componentPreloadPaths.length || componentPreloadNamespaces.length) { + tasks.set("generateComponentPreload", { + options: { + paths: componentPreloadPaths, + namespaces: componentPreloadNamespaces, + excludes: componentPreloadExcludes, + skipBundles: existingBundleDefinitionNames + } + }); + } + + tasks.set("generateLibraryPreload", { + options: { + excludes: project.getLibraryPreloadExcludes(), + skipBundles: existingBundleDefinitionNames + } + }); + + if (bundles.length) { + tasks.set("generateBundle", { + requiresDependencies: true, + taskFunction: async ({workspace, dependencies, taskUtil, options}) => { + return bundles.reduce(function(sequence, bundle) { + return sequence.then(function() { + return getTask("generateBundle").task({ + workspace, + dependencies, + taskUtil, + options: { + projectName: options.projectName, + bundleDefinition: bundle.bundleDefinition, + bundleOptions: bundle.bundleOptions + } + }); + }); + }, Promise.resolve()); + } + }); + } + + tasks.set("buildThemes", { + requiresDependencies: true, + options: { + projectName: project.getName(), + librariesPattern: !taskUtil.isRootProject() ? "/resources/**/(*.library|library.js)" : undefined, + themesPattern: !taskUtil.isRootProject() ? "/resources/sap/ui/core/themes/*" : undefined, + inputPattern: `/resources/${project.getNamespace()}/themes/*/library.source.less`, + cssVariables: taskUtil.getBuildOption("cssVariables") + } + }); + + tasks.set("generateThemeDesignerResources", { + requiresDependencies: true, + options: { + version: project.getVersion() + } + }); + + tasks.set("generateResourcesJson", { + requiresDependencies: true + }); + + return tasks; +}; diff --git a/packages/project/lib/build/definitions/module.js b/packages/project/lib/build/definitions/module.js new file mode 100644 index 00000000000..769d766fc14 --- /dev/null +++ b/packages/project/lib/build/definitions/module.js @@ -0,0 +1,12 @@ +/** + * Get tasks and their configuration for a given application project + * + * @private + * @param {object} parameters + * @param {object} parameters.project + * @param {object} parameters.taskUtil + * @param {Function} parameters.getTask + */ +module.exports = function({project, taskUtil, getTask}) { + return new Map(); +}; diff --git a/packages/project/lib/build/definitions/themeLibrary.js b/packages/project/lib/build/definitions/themeLibrary.js new file mode 100644 index 00000000000..89af5261eb5 --- /dev/null +++ b/packages/project/lib/build/definitions/themeLibrary.js @@ -0,0 +1,47 @@ + +/** + * Get tasks and their configuration for a given application project + * + * @private + * @param {object} parameters + * @param {object} parameters.project + * @param {object} parameters.taskUtil + * @param {Function} parameters.getTask + */ +module.exports = function({project, taskUtil, getTask}) { + const tasks = new Map(); + tasks.set("replaceCopyright", { + options: { + copyright: project.getCopyright(), + pattern: "/resources/**/*.{less,theme}" + } + }); + + tasks.set("replaceVersion", { + options: { + version: project.getVersion(), + pattern: "/resources/**/*.{less,theme}" + } + }); + + tasks.set("buildThemes", { + requiresDependencies: true, + options: { + projectName: project.getName(), + librariesPattern: !taskUtil.isRootProject() ? "/resources/**/(*.library|library.js)" : undefined, + themesPattern: !taskUtil.isRootProject() ? "/resources/sap/ui/core/themes/*" : undefined, + inputPattern: "/resources/**/themes/*/library.source.less", + cssVariables: taskUtil.getBuildOption("cssVariables") + } + }); + + tasks.set("generateThemeDesignerResources", { + requiresDependencies: true, + options: { + version: project.getVersion() + } + }); + + tasks.set("generateResourcesJson", {requiresDependencies: true}); + return tasks; +}; diff --git a/packages/project/lib/buildHelpers/BuildContext.js b/packages/project/lib/build/helpers/BuildContext.js similarity index 100% rename from packages/project/lib/buildHelpers/BuildContext.js rename to packages/project/lib/build/helpers/BuildContext.js diff --git a/packages/project/lib/buildHelpers/ProjectBuildContext.js b/packages/project/lib/build/helpers/ProjectBuildContext.js similarity index 100% rename from packages/project/lib/buildHelpers/ProjectBuildContext.js rename to packages/project/lib/build/helpers/ProjectBuildContext.js diff --git a/packages/project/lib/buildHelpers/composeProjectList.js b/packages/project/lib/build/helpers/composeProjectList.js similarity index 99% rename from packages/project/lib/buildHelpers/composeProjectList.js rename to packages/project/lib/build/helpers/composeProjectList.js index d05fe44a2e1..41bb4bf1337 100644 --- a/packages/project/lib/buildHelpers/composeProjectList.js +++ b/packages/project/lib/build/helpers/composeProjectList.js @@ -1,4 +1,4 @@ -const log = require("@ui5/logger").getLogger("buildHelpers:composeProjectList"); +const log = require("@ui5/logger").getLogger("build:helpers:composeProjectList"); /** * Creates an object containing the flattened project dependency tree. Each dependency is defined as an object key while diff --git a/packages/project/lib/buildHelpers/composeTaskList.js b/packages/project/lib/build/helpers/composeTaskList.js similarity index 97% rename from packages/project/lib/buildHelpers/composeTaskList.js rename to packages/project/lib/build/helpers/composeTaskList.js index ee4763564b5..50856a6be1d 100644 --- a/packages/project/lib/buildHelpers/composeTaskList.js +++ b/packages/project/lib/build/helpers/composeTaskList.js @@ -1,4 +1,4 @@ -const log = require("@ui5/logger").getLogger("buildHelpers:composeTaskList"); +const log = require("@ui5/logger").getLogger("build:helpers:composeTaskList"); /** * Creates the list of tasks to be executed by the build process diff --git a/packages/project/lib/buildHelpers/createBuildManifest.js b/packages/project/lib/build/helpers/createBuildManifest.js similarity index 96% rename from packages/project/lib/buildHelpers/createBuildManifest.js rename to packages/project/lib/build/helpers/createBuildManifest.js index 784b4cb7069..0a516fe03f0 100644 --- a/packages/project/lib/buildHelpers/createBuildManifest.js +++ b/packages/project/lib/build/helpers/createBuildManifest.js @@ -41,7 +41,7 @@ module.exports = async function(project, buildConfig) { timestamp: new Date().toISOString(), versions: { builderVersion: getVersion("@ui5/builder"), - projectVersion: getVersion("../../"), + projectVersion: getVersion("../../../"), fsVersion: getVersion("@ui5/fs"), }, buildConfig, diff --git a/packages/project/lib/builder.js b/packages/project/lib/build/runBuild.js similarity index 93% rename from packages/project/lib/builder.js rename to packages/project/lib/build/runBuild.js index 74d7c802e72..f7aa7c5e18a 100644 --- a/packages/project/lib/builder.js +++ b/packages/project/lib/build/runBuild.js @@ -1,10 +1,10 @@ const {promisify} = require("util"); const rimraf = promisify(require("rimraf")); const resourceFactory = require("@ui5/fs").resourceFactory; -const log = require("@ui5/logger").getGroupLogger("builder"); -const BuildContext = require("./buildHelpers/BuildContext"); -const composeProjectList = require("./buildHelpers/composeProjectList"); -const getBuildDefinitionInstance = require("./buildDefinitions/getInstance"); +const log = require("@ui5/logger").getGroupLogger("build"); +const composeProjectList = require("./helpers/composeProjectList"); +const BuildContext = require("./helpers/BuildContext"); +const ProjectBuilder = require("./ProjectBuilder"); async function executeCleanupTasks(buildContext) { log.info("Executing cleanup tasks..."); @@ -74,8 +74,8 @@ function getElapsedTime(startTime) { * Configures the project build and starts it. * * @public + * @param {module:@ui5/project.graph.ProjectGraph} graph Project graph * @param {object} parameters Parameters - * @param {module:@ui5/project.graph.ProjectGraph} parameters.graph Project graph * @param {string} parameters.destPath Target path * @param {boolean} [parameters.cleanDest=false] Decides whether project should clean the target path before build * @param {Array.} [parameters.includedDependencies=[]] @@ -94,8 +94,8 @@ function getElapsedTime(startTime) { * If the wildcard '*' is provided, only the included tasks will be executed. * @returns {Promise} Promise resolving to undefined once build has finished */ -module.exports = async function({ - graph, destPath, cleanDest = false, +module.exports = async function(graph, { + destPath, cleanDest = false, includedDependencies = [], excludedDependencies = [], complexDependencyIncludes, selfContained = false, cssVariables = false, jsdoc = false, createBuildManifest = false, @@ -107,9 +107,9 @@ module.exports = async function({ if (!destPath) { throw new Error(`Missing parameter 'destPath'`); } - if (graph.isSealed()) { + if (!graph.isSealed()) { throw new Error( - `Can not build project graph with root node ${this._rootProjectName}: Graph has already been sealed`); + `Can not build project graph with root node ${graph.getRoot().getName()}: Graph is not sealed`); } if (complexDependencyIncludes) { @@ -203,7 +203,7 @@ module.exports = async function({ log.verbose(`Preparing project ${projectName}...`); const taskUtil = projectContext.getTaskUtil(); - const builder = getBuildDefinitionInstance({ + const builder = new ProjectBuilder({ graph, project, taskUtil, @@ -291,7 +291,7 @@ module.exports = async function({ if (taskUtil.isRootProject() && createBuildManifest) { // Create and write a build manifest metadata file - const createBuildManifest = require("./buildHelpers/createBuildManifest"); + const createBuildManifest = require("./build/helpers/createBuildManifest"); const metadata = await createBuildManifest(project, buildConfig); await fsTarget.write(resourceFactory.createResource({ path: `/.ui5/build-manifest.json`, diff --git a/packages/project/lib/buildDefinitions/ApplicationBuilder.js b/packages/project/lib/buildDefinitions/ApplicationBuilder.js deleted file mode 100644 index d01c6ed422b..00000000000 --- a/packages/project/lib/buildDefinitions/ApplicationBuilder.js +++ /dev/null @@ -1,113 +0,0 @@ -const AbstractBuilder = require("./AbstractBuilder"); - -class ApplicationBuilder extends AbstractBuilder { - addStandardTasks({project, taskUtil, getTask}) { - this.addTask("escapeNonAsciiCharacters", { - options: { - encoding: project.getPropertiesFileSourceEncoding(), - pattern: "/**/*.properties" - } - }); - - this.addTask("replaceCopyright", { - options: { - copyright: project.getCopyright(), - pattern: "/**/*.{js,json}" - } - }); - - this.addTask("replaceVersion", { - options: { - version: project.getVersion(), - pattern: "/**/*.{js,json}" - } - }); - - // Support rules should not be minified to have readable code in the Support Assistant - const minificationPattern = ["/**/*.js", "!**/*.support.js"]; - if (["2.6"].includes(project.getSpecVersion())) { - const minificationExcludes = project.getMinificationExcludes(); - if (minificationExcludes.length) { - this.enhancePatternWithExcludes(minificationPattern, minificationExcludes, "/resources/"); - } - } - this.addTask("minify", { - options: { - pattern: minificationPattern - } - }); - - this.addTask("generateFlexChangesBundle"); - this.addTask("generateManifestBundle"); - - const bundles = project.getBundles(); - const existingBundleDefinitionNames = - bundles.map(({bundleDefinition}) => bundleDefinition.name).filter(Boolean) || []; - - const componentPreloadPaths = project.getComponentPreloadPaths(); - const componentPreloadNamespaces = project.getComponentPreloadNamespaces(); - const componentPreloadExcludes = project.getComponentPreloadExcludes(); - if (componentPreloadPaths.length || componentPreloadNamespaces.length) { - this.addTask("generateComponentPreload", { - options: { - paths: componentPreloadPaths, - namespaces: componentPreloadNamespaces, - excludes: componentPreloadExcludes, - skipBundles: existingBundleDefinitionNames - } - }); - } else { - // Default component preload for application namespace - this.addTask("generateComponentPreload", { - options: { - namespaces: [project.getNamespace()], - excludes: componentPreloadExcludes, - skipBundles: existingBundleDefinitionNames - } - }); - } - - this.addTask("generateStandaloneAppBundle", {requiresDependencies: true}); - - this.addTask("transformBootstrapHtml"); - - if (bundles.length) { - this.addTask("generateBundle", {requiresDependencies: true}, - async ({workspace, dependencies, taskUtil, options}) => { - return bundles.reduce(function(sequence, bundle) { - return sequence.then(function() { - return getTask("generateBundle").task({ - workspace, - dependencies, - taskUtil, - options: { - projectName: options.projectName, - bundleDefinition: bundle.bundleDefinition, - bundleOptions: bundle.bundleOptions - } - }); - }); - }, Promise.resolve()); - }); - } - - this.addTask("generateVersionInfo", { - requiresDependencies: true, - options: { - rootProject: project, - pattern: "/resources/**/.library" - } - }); - - this.addTask("generateCachebusterInfo", { - options: { - signatureType: project.getCachebusterSignatureType(), - } - }); - - this.addTask("generateApiIndex", {requiresDependencies: true}); - this.addTask("generateResourcesJson", {requiresDependencies: true}); - } -} - -module.exports = ApplicationBuilder; diff --git a/packages/project/lib/buildDefinitions/LibraryBuilder.js b/packages/project/lib/buildDefinitions/LibraryBuilder.js deleted file mode 100644 index 24c08d05696..00000000000 --- a/packages/project/lib/buildDefinitions/LibraryBuilder.js +++ /dev/null @@ -1,152 +0,0 @@ -const AbstractBuilder = require("./AbstractBuilder"); - -class LibraryBuilder extends AbstractBuilder { - addStandardTasks({project, taskUtil, getTask}) { - this.addTask("escapeNonAsciiCharacters", { - options: { - encoding: project.getPropertiesFileSourceEncoding(), - pattern: "/**/*.properties" - } - }); - - this.addTask("replaceCopyright", { - options: { - copyright: project.getCopyright(), - pattern: "/**/*.{js,library,css,less,theme,html}" - } - }); - - this.addTask("replaceVersion", { - options: { - version: project.getVersion(), - pattern: "/**/*.{js,json,library,css,less,theme,html}" - } - }); - - this.addTask("replaceBuildtime", { - options: { - pattern: "/resources/sap/ui/Global.js" - } - }); - - this.addTask("generateJsdoc", {requiresDependencies: true}, - async ({workspace, dependencies, taskUtil, options}) => { - const patterns = ["/resources/**/*.js"]; - // Add excludes - const excludes = project.getJsdocExcludes(); - if (excludes.length) { - const excludes = excludes.map((pattern) => { - return `!/resources/${pattern}`; - }); - - patterns.push(...excludes); - } - - return getTask("generateJsdoc").task({ - workspace, - dependencies, - taskUtil, - options: { - projectName: options.projectName, - namespace: project.getNamespace(), - version: project.getVersion(), - pattern: patterns - } - }); - }); - - this.addTask("executeJsdocSdkTransformation", { - requiresDependencies: true, - options: { - dotLibraryPattern: "/resources/**/*.library", - } - }); - - // Support rules should not be minified to have readable code in the Support Assistant - const minificationPattern = ["/resources/**/*.js", "!**/*.support.js"]; - if (["2.6"].includes(project.getSpecVersion())) { - const minificationExcludes = project.getMinificationExcludes(); - if (minificationExcludes.length) { - this.enhancePatternWithExcludes(minificationPattern, minificationExcludes, "/resources/"); - } - } - - this.addTask("minify", { - options: { - pattern: minificationPattern - } - }); - - this.addTask("generateLibraryManifest"); - this.addTask("generateManifestBundle"); - - - const bundles = project.getBundles(); - const existingBundleDefinitionNames = - bundles.map(({bundleDefinition}) => bundleDefinition.name).filter(Boolean) || []; - const componentPreloadPaths = project.getComponentPreloadPaths(); - const componentPreloadNamespaces = project.getComponentPreloadNamespaces(); - const componentPreloadExcludes = project.getComponentPreloadNamespaces(); - if (componentPreloadPaths.length || componentPreloadNamespaces.length) { - this.addTask("generateComponentPreload", { - options: { - paths: componentPreloadPaths, - namespaces: componentPreloadNamespaces, - excludes: componentPreloadExcludes, - skipBundles: existingBundleDefinitionNames - } - }); - } - - this.addTask("generateLibraryPreload", { - options: { - excludes: project.getLibraryPreloadExcludes(), - skipBundles: existingBundleDefinitionNames - } - }); - - if (bundles.length) { - this.addTask("generateBundle", {requiresDependencies: true}, - async ({workspace, dependencies, taskUtil, options}) => { - return bundles.reduce(function(sequence, bundle) { - return sequence.then(function() { - return getTask("generateBundle").task({ - workspace, - dependencies, - taskUtil, - options: { - projectName: options.projectName, - bundleDefinition: bundle.bundleDefinition, - bundleOptions: bundle.bundleOptions - } - }); - }); - }, Promise.resolve()); - }); - } - - this.addTask("buildThemes", { - requiresDependencies: true, - options: { - projectName: project.getName(), - librariesPattern: !taskUtil.isRootProject() ? "/resources/**/(*.library|library.js)" : undefined, - themesPattern: !taskUtil.isRootProject() ? "/resources/sap/ui/core/themes/*" : undefined, - inputPattern: `/resources/${project.getNamespace()}/themes/*/library.source.less`, - cssVariables: taskUtil.getBuildOption("cssVariables") - } - }); - - this.addTask("generateThemeDesignerResources", { - requiresDependencies: true, - options: { - version: project.getVersion() - } - }); - - this.addTask("generateResourcesJson", { - requiresDependencies: true - }); - } -} - -module.exports = LibraryBuilder; diff --git a/packages/project/lib/buildDefinitions/ModuleBuilder.js b/packages/project/lib/buildDefinitions/ModuleBuilder.js deleted file mode 100644 index 01981c4ddd5..00000000000 --- a/packages/project/lib/buildDefinitions/ModuleBuilder.js +++ /dev/null @@ -1,7 +0,0 @@ -const AbstractBuilder = require("./AbstractBuilder"); - -class ModuleBuilder extends AbstractBuilder { - addStandardTasks() {/* nothing to do*/} -} - -module.exports = ModuleBuilder; diff --git a/packages/project/lib/buildDefinitions/ThemeLibraryBuilder.js b/packages/project/lib/buildDefinitions/ThemeLibraryBuilder.js deleted file mode 100644 index 1225bbd19f9..00000000000 --- a/packages/project/lib/buildDefinitions/ThemeLibraryBuilder.js +++ /dev/null @@ -1,40 +0,0 @@ -const AbstractBuilder = require("./AbstractBuilder"); - -class ThemeLibraryBuilder extends AbstractBuilder { - addStandardTasks({project, taskUtil, getTask}) { - this.addTask("replaceCopyright", { - options: { - copyright: project.getCopyright(), - pattern: "/resources/**/*.{less,theme}" - } - }); - - this.addTask("replaceVersion", { - options: { - version: project.getVersion(), - pattern: "/resources/**/*.{less,theme}" - } - }); - - this.addTask("buildThemes", { - requiresDependencies: true, - options: { - librariesPattern: !taskUtil.isRootProject() ? "/resources/**/(*.library|library.js)" : undefined, - themesPattern: !taskUtil.isRootProject() ? "/resources/sap/ui/core/themes/*" : undefined, - inputPattern: "/resources/**/themes/*/library.source.less", - cssVariables: taskUtil.getBuildOption("cssVariables") - } - }); - - this.addTask("generateThemeDesignerResources", { - requiresDependencies: true, - options: { - version: project.getVersion() - } - }); - - this.addTask("generateResourcesJson", {requiresDependencies: true}); - } -} - -module.exports = ThemeLibraryBuilder; diff --git a/packages/project/lib/buildDefinitions/getInstance.js b/packages/project/lib/buildDefinitions/getInstance.js deleted file mode 100644 index 2cd6eb73030..00000000000 --- a/packages/project/lib/buildDefinitions/getInstance.js +++ /dev/null @@ -1,27 +0,0 @@ - -function createInstance(moduleName, params) { - const BuildDefinition = require(`./${moduleName}`); - return new BuildDefinition(params); -} - -/** - * Get build definition instance - * - * @param {object} parameters - * @param {object} parameters.graph - * @param {object} parameters.project - * @param {object} parameters.taskUtil - * @param {GroupLogger} parameters.parentLogger Logger to use - */ -module.exports = function(parameters) { - switch (parameters.project.getType()) { - case "application": - return createInstance("ApplicationBuilder", parameters); - case "library": - return createInstance("LibraryBuilder", parameters); - case "module": - return createInstance("ModuleBuilder", parameters); - case "theme-library": - return createInstance("ThemeLibraryBuilder", parameters); - } -}; diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 2613e423573..52732feab06 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -446,6 +446,7 @@ class ProjectGraph { try { this._checkSealed(); if (!projectGraph.isSealed()) { + // Seal input graph to prevent further modification log.verbose( `Sealing project graph with root project ${projectGraph._rootProjectName} ` + `before joining it into project graph with root project ${this._rootProjectName}...`); @@ -493,6 +494,43 @@ class ProjectGraph { } // TODO: introduce function to check for dangling nodes/consistency in general? + + /** + * Executes a build on the graph + * + * @public + * @param {object} parameters Parameters + * @param {module:@ui5/project.graph.ProjectGraph} parameters.graph Project graph + * @param {string} parameters.destPath Target path + * @param {boolean} [parameters.cleanDest=false] Decides whether project should clean the target path before build + * @param {Array.} [parameters.includedDependencies=[]] + * List of names of projects to include in the build result + * If the wildcard '*' is provided, all dependencies will be included in the build result. + * @param {Array.} [parameters.excludedDependencies=[]] + * List of names of projects to exclude from the build result. + * @param {object} [parameters.complexDependencyIncludes] TODO 3.0 + * @param {boolean} [parameters.selfContained=false] Flag to activate self contained build + * @param {boolean} [parameters.cssVariables=false] Flag to activate CSS variables generation + * @param {boolean} [parameters.jsdoc=false] Flag to activate JSDoc build + * @param {boolean} [parameters.createBuildManifest=false] + * Whether to create a build manifest file for the root project. + * This is currently only supported for projects of type 'library' and 'theme-library' + * @param {Array.} [parameters.includedTasks=[]] List of tasks to be included + * @param {Array.} [parameters.excludedTasks=[]] List of tasks to be excluded. + * If the wildcard '*' is provided, only the included tasks will be executed. + * @returns {Promise} Promise resolving to undefined once build has finished + */ + async build(parameters) { + this.seal(); + if (this._built) { + throw new Error( + `Project graph with root node ${this._rootProjectName} has already been built. ` + + `Each graph can only be built once`); + } + this._built = true; + const runBuild = require("../build/runBuild"); + return runBuild(this, parameters); + } } function mergeMap(target, source) { diff --git a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js index fcdacc3396d..81e269ae6df 100644 --- a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js @@ -14,6 +14,15 @@ class ServerMiddleware extends Extension { const middlewarePath = path.join(this.getPath(), this._config.middleware.path); return require(middlewarePath); } + /* === Internals === */ + /** + * @private + */ + async _validateConfig() { + if (/--\d$/.test(this.getName())) { + throw new Error(`Server middleware name must not end with "--"`); + } + } } module.exports = ServerMiddleware; diff --git a/packages/project/lib/specifications/types/extensions/Task.js b/packages/project/lib/specifications/types/extensions/Task.js index 11b7d6d0dbc..ee63e3283f1 100644 --- a/packages/project/lib/specifications/types/extensions/Task.js +++ b/packages/project/lib/specifications/types/extensions/Task.js @@ -14,6 +14,15 @@ class Task extends Extension { const taskPath = path.join(this.getPath(), this._config.task.path); return require(taskPath); } + /* === Internals === */ + /** + * @private + */ + async _validateConfig() { + if (/--\d$/.test(this.getName())) { + throw new Error(`Task name must not end with "--"`); + } + } } module.exports = Task; diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js new file mode 100644 index 00000000000..26558e793f4 --- /dev/null +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -0,0 +1,658 @@ +const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); + +const parentLogger = require("@ui5/logger").getGroupLogger("mygroup"); + +const ProjectBuilder = require("../../../lib/build/ProjectBuilder"); + +function noop() {} +function emptyarray() { + return []; +} + +function getMockProject(type) { + return { + getName: () => "project.b", + getNamespace: () => "project/b", + getType: () => type, + getPropertiesFileSourceEncoding: noop, + getCopyright: noop, + getVersion: noop, + getSpecVersion: () => "0.1", + getMinificationExcludes: emptyarray, + getComponentPreloadPaths: () => [ + "project/b/**/Component.js" + ], + getComponentPreloadNamespaces: emptyarray, + getComponentPreloadExcludes: emptyarray, + getLibraryPreloadExcludes: emptyarray, + getBundles: () => [{ + bundleDefinition: { + name: "project/b/sectionsA/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsA/", + "!project/b/sectionsA/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: true, + usePredefinedCalls: true + } + }], + getCachebusterSignatureType: noop, + getCustomTasks: () => [], + }; +} + +test.beforeEach((t) => { + t.context.taskUtil = { + isRootProject: sinon.stub().returns(true), + getBuildOption: sinon.stub(), + getInterface: sinon.stub() + }; + + t.context.graph = { + getRoot: () => { + return { + getName: () => "graph-root" + }; + }, + getExtension: sinon.stub().returns("a custom task") + }; +}); + +test("Project of type 'application'", (t) => { + const {graph, taskUtil} = t.context; + const builder = new ProjectBuilder({project: getMockProject("application"), graph, taskUtil, parentLogger}); + t.deepEqual(builder._taskExecutionOrder, [ + "escapeNonAsciiCharacters", + "replaceCopyright", + "replaceVersion", + "minify", + "generateFlexChangesBundle", + "generateManifestBundle", + "generateComponentPreload", + "generateStandaloneAppBundle", + "transformBootstrapHtml", + "generateBundle", + "generateVersionInfo", + "generateCachebusterInfo", + "generateApiIndex", + "generateResourcesJson" + ], "Correct standard tasks"); +}); + +test("Project of type 'library'", (t) => { + const {graph, taskUtil} = t.context; + const builder = new ProjectBuilder({project: getMockProject("library"), graph, taskUtil, parentLogger}); + + t.deepEqual(builder._taskExecutionOrder, [ + "escapeNonAsciiCharacters", + "replaceCopyright", + "replaceVersion", + "replaceBuildtime", + "generateJsdoc", + "executeJsdocSdkTransformation", + "minify", + "generateLibraryManifest", + "generateManifestBundle", + "generateComponentPreload", + "generateLibraryPreload", + "generateBundle", + "buildThemes", + "generateThemeDesignerResources", + "generateResourcesJson" + ], "Correct standard tasks"); +}); + +test("Project of type 'theme-library'", (t) => { + const {graph, taskUtil} = t.context; + const builder = new ProjectBuilder({project: getMockProject("theme-library"), graph, taskUtil, parentLogger}); + + t.deepEqual(builder._taskExecutionOrder, [ + "replaceCopyright", + "replaceVersion", + "buildThemes", + "generateThemeDesignerResources", + "generateResourcesJson" + ], "Correct standard tasks"); +}); + +test("Project of type 'module'", (t) => { + const {graph, taskUtil} = t.context; + const builder = new ProjectBuilder({project: getMockProject("module"), graph, taskUtil, parentLogger}); + + t.deepEqual(builder._taskExecutionOrder, [], "Correct standard tasks"); +}); + +test("Custom tasks", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", afterTask: "minify"}, + {name: "myOtherTask", beforeTask: "replaceVersion"} + ]; + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + t.deepEqual(builder._taskExecutionOrder, [ + "escapeNonAsciiCharacters", + "replaceCopyright", + "myOtherTask", + "replaceVersion", + "minify", + "myTask", + "generateFlexChangesBundle", + "generateManifestBundle", + "generateComponentPreload", + "generateStandaloneAppBundle", + "transformBootstrapHtml", + "generateBundle", + "generateVersionInfo", + "generateCachebusterInfo", + "generateApiIndex", + "generateResourcesJson" + ], "Custom tasks are inserted correctly"); +}); + +test("Custom tasks with no standard tasks", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask"}, + {name: "myOtherTask", beforeTask: "myTask"} + ]; + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + t.deepEqual(builder._taskExecutionOrder, [ + "myOtherTask", + "myTask", + ], "ApplicationBuilder is still instantiated with standard tasks"); +}); + +test("Custom tasks with no standard tasks and second task defining no before-/afterTask", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask"}, + {name: "myOtherTask"} + ]; + const err = t.throws(() => { + new ProjectBuilder({project, graph, taskUtil, parentLogger}); + }); + t.is(err.message, + `Custom task definition myOtherTask of project project.b defines neither a ` + + `"beforeTask" nor an "afterTask" parameter. One must be defined.`, + "Threw with expected error message"); +}); + +test("Custom tasks with both, before- and afterTask reference", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", beforeTask: "minify", afterTask: "replaceVersion"} + ]; + const err = t.throws(() => { + new ProjectBuilder({project, graph, taskUtil, parentLogger}); + }); + t.is(err.message, + `Custom task definition myTask of project project.b defines both ` + + `"beforeTask" and "afterTask" parameters. Only one must be defined.`, + "Threw with expected error message"); +}); + +test("Custom tasks with no before-/afterTask reference", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask"} + ]; + const err = t.throws(() => { + new ProjectBuilder({project, graph, taskUtil, parentLogger}); + }); + t.is(err.message, + `Custom task definition myTask of project project.b defines neither a ` + + `"beforeTask" nor an "afterTask" parameter. One must be defined.`, + "Threw with expected error message"); +}); + +test("Custom tasks without name", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: ""} + ]; + const err = t.throws(() => { + new ProjectBuilder({project, graph, taskUtil, parentLogger}); + }); + t.is(err.message, + `Missing name for custom task in configuration of project project.b`, + "Threw with expected error message"); +}); + +test("Custom task with name of standard tasks", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "replaceVersion", afterTask: "minify"} + ]; + const err = t.throws(() => { + new ProjectBuilder({project, graph, taskUtil, parentLogger}); + }); + t.is(err.message, + "Custom task configuration of project project.b references standard task replaceVersion. " + + "Only custom tasks must be provided here.", + "Threw with expected error message"); +}); + +test("Multiple custom tasks with same name", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", afterTask: "minify"}, + {name: "myTask", afterTask: "myTask"}, + {name: "myTask", afterTask: "minify"} + ]; + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + t.deepEqual(builder._taskExecutionOrder, [ + "escapeNonAsciiCharacters", + "replaceCopyright", + "replaceVersion", + "minify", + "myTask--3", + "myTask", + "myTask--2", + "generateFlexChangesBundle", + "generateManifestBundle", + "generateComponentPreload", + "generateStandaloneAppBundle", + "transformBootstrapHtml", + "generateBundle", + "generateVersionInfo", + "generateCachebusterInfo", + "generateApiIndex", + "generateResourcesJson" + ], "Custom tasks are inserted correctly"); +}); + +test("Custom tasks with unknown beforeTask", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", beforeTask: "unknownTask"} + ]; + const err = t.throws(() => { + new ProjectBuilder({project, graph, taskUtil, parentLogger}); + }); + t.is(err.message, + "Could not find task unknownTask, referenced by custom task myTask, " + + "to be scheduled for project project.b", + "Threw with expected error message"); +}); + +test("Custom tasks with unknown afterTask", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", afterTask: "unknownTask"} + ]; + const err = t.throws(() => { + new ProjectBuilder({project, graph, taskUtil, parentLogger}); + }); + t.is(err.message, + "Could not find task unknownTask, referenced by custom task myTask, " + + "to be scheduled for project project.b", + "Threw with expected error message"); +}); + +test("Custom tasks is unknown", (t) => { + const {graph, taskUtil} = t.context; + graph.getExtension.returns(undefined); + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", afterTask: "minify"} + ]; + const err = t.throws(() => { + new ProjectBuilder({project, graph, taskUtil, parentLogger}); + }); + t.is(err.message, + "Could not find custom task myTask, referenced by project project.b in project " + + "graph with root node graph-root", + "Threw with expected error message"); +}); + +test("Custom task is called correctly", async (t) => { + const {graph, taskUtil} = t.context; + const taskStub = sinon.stub(); + graph.getExtension.returns({ + getTask: () => taskStub, + getSpecVersion: () => "2.6" + }); + t.context.taskUtil.getInterface.returns("taskUtil interface"); + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "configuration"} + ]; + + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + + t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); + t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + await builder._tasks["myTask"].task({ + workspace: "workspace", + dependencies: "dependencies" + }); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "configuration", + }, + taskUtil: "taskUtil interface" + }, "Task got called with one argument"); + + t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); + t.is(taskUtil.getInterface.getCall(0).args[0], "2.6", + "taskUtil#getInterface got called with correct argument"); +}); + +test("Custom task with legacy spec version", async (t) => { + const {graph, taskUtil} = t.context; + const taskStub = sinon.stub(); + graph.getExtension.returns({ + getTask: () => taskStub, + getSpecVersion: () => "1.0" + }); + t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "configuration"} + ]; + + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + + t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); + t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + await builder._tasks["myTask"].task({ + workspace: "workspace", + dependencies: "dependencies" + }); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "configuration", + } + }, "Task got called with one argument"); + + t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); + t.is(taskUtil.getInterface.getCall(0).args[0], "1.0", + "taskUtil#getInterface got called with correct argument"); +}); + +test("Custom task with specVersion 2.7", async (t) => { + const {graph, taskUtil} = t.context; + const taskStub = sinon.stub(); + graph.getExtension.returns({ + getTask: () => taskStub, + getSpecVersion: () => "2.7" + }); + t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "configuration"} + ]; + + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + + t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); + t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + await builder._tasks["myTask"].task({ + workspace: "workspace", + dependencies: "dependencies" + }, "log"); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + taskName: "myTask", // specVersion 2.7 feature + log: "log", // specVersion 2.7 feature + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "configuration", + } + }, "Task got called with one argument"); + + t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); + t.is(taskUtil.getInterface.getCall(0).args[0], "2.7", + "taskUtil#getInterface got called with correct argument"); +}); + +test("Multiple custom tasks with same name are called correctly", async (t) => { + const {graph, taskUtil} = t.context; + const taskStub1 = sinon.stub(); + const taskStub2 = sinon.stub(); + const taskStub3 = sinon.stub(); + graph.getExtension.onFirstCall().returns({ + getTask: () => taskStub1, + getSpecVersion: () => "2.5" + }); + graph.getExtension.onSecondCall().returns({ + getTask: () => taskStub2, + getSpecVersion: () => "2.6" + }); + graph.getExtension.onThirdCall().returns({ + getTask: () => taskStub3, + getSpecVersion: () => "2.7" + }); + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "cat"}, + {name: "myTask", afterTask: "myTask", configuration: "dog"}, + {name: "myTask", afterTask: "myTask", configuration: "bird"} + ]; + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + + t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); + t.truthy(builder._tasks["myTask--2"], "Custom tasks has been added to task map"); + t.truthy(builder._tasks["myTask--3"], "Custom tasks has been added to task map"); + t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + t.true(builder._tasks["myTask--2"].requiresDependencies, "Custom tasks requires dependencies by default"); + t.true(builder._tasks["myTask--3"].requiresDependencies, "Custom tasks requires dependencies by default"); + + t.deepEqual(builder._taskExecutionOrder, [ + "myTask", + "myTask--3", + "myTask--2", + ], "Correct order of custom tasks"); + + await builder.build({ + includedTasks: [], + excludedTasks: [] + }, { + workspace: "workspace", + dependencies: "dependencies" + }); + + t.is(taskStub1.callCount, 1, "Task 1 got called once"); + t.is(taskStub1.getCall(0).args.length, 1, "Task 1 got called with one argument"); + t.deepEqual(taskStub1.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "cat", + } + }, "Task 1 got called with one argument"); + + t.is(taskStub2.callCount, 1, "Task 2 got called once"); + t.is(taskStub2.getCall(0).args.length, 1, "Task 2 got called with one argument"); + t.deepEqual(taskStub2.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "dog", + } + }, "Task 2 got called with one argument"); + + t.is(taskStub3.callCount, 1, "Task 3 got called once"); + t.is(taskStub3.getCall(0).args.length, 1, "Task 3 got called with one argument"); + t.deepEqual(taskStub3.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + log: builder._taskLog, + taskName: "myTask--3", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "bird", + } + }, "Task 3 got called with one argument"); + + t.is(taskUtil.getInterface.callCount, 3, "taskUtil#getInterface got called once"); + t.is(taskUtil.getInterface.getCall(0).args[0], "2.5", + "taskUtil#getInterface got called with correct argument"); + t.is(taskUtil.getInterface.getCall(1).args[0], "2.7", + "taskUtil#getInterface got called with correct argument"); + t.is(taskUtil.getInterface.getCall(2).args[0], "2.6", + "taskUtil#getInterface got called with correct argument"); +}); + +test.serial("_addTask", async (t) => { + const taskStub = sinon.stub(); + const getTaskStub = sinon.stub(require("@ui5/builder").tasks.taskRepository, "getTask").returns({ + task: taskStub + }); + const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); + + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + + builder._addTask("standardTask"); + + t.truthy(builder._tasks["standardTask"], "Task has been added to task map"); + t.false(builder._tasks["standardTask"].requiresDependencies, "requiresDependencies defaults to false"); + t.truthy(builder._tasks["standardTask"].task, "Task function got set correctly"); + t.deepEqual(builder._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); + + await builder._tasks["standardTask"].task({ + workspace: "workspace", + dependencies: "dependencies", + }); + + t.is(getTaskStub.callCount, 1, "taskRepository#getTask got called once"); + t.is(getTaskStub.getCall(0).args[0], "standardTask", "taskRepository#getTask got called with correct argument"); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + // No dependencies + options: { + projectName: "project.b", + projectNamespace: "project/b" + }, + taskUtil + }, "Task got called with correct arguments"); + + getTaskStub.restore(); + mock.stopAll(); +}); + +test.serial("_addTask with options", async (t) => { + const taskStub = sinon.stub(); + const getTaskStub = sinon.stub(require("@ui5/builder").tasks.taskRepository, "getTask").returns({}); + const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); + + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + + builder._addTask("standardTask", { + requiresDependencies: true, + options: { + myTaskOption: "cat", + }, + taskFunction: taskStub + }); + + t.truthy(builder._tasks["standardTask"], "Task has been added to task map"); + t.true(builder._tasks["standardTask"].requiresDependencies, "requiresDependencies set to true"); + t.truthy(builder._tasks["standardTask"].task, "Task function got set correctly"); + t.deepEqual(builder._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); + + await builder._tasks["standardTask"].task({ + workspace: "workspace", + dependencies: "dependencies", + }); + + t.is(getTaskStub.callCount, 0, "taskRepository#getTask did not get called"); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + myTaskOption: "cat" + }, + taskUtil + }, "Task got called with correct arguments"); + + getTaskStub.restore(); + mock.stopAll(); +}); + +test("_addTask: Duplicate task", async (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + + builder._addTask("standardTask", { + taskFunction: () => {} + }); + + const err = t.throws(() => { + builder._addTask("standardTask", { + taskFunction: () => {} + }); + }); + t.is(err.message, "Failed to add duplicate task standardTask for project project.b", + "Threw with expected error message"); +}); + +test("_addTask: Task already added to execution order", async (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); + + builder._taskExecutionOrder.push("standardTask"); + const err = t.throws(() => { + builder._addTask("standardTask", { + taskFunction: () => {} + }); + }); + t.is(err.message, + "Failed to add task standardTask for project project.b. It has already been scheduled for execution", + "Threw with expected error message"); +}); diff --git a/packages/project/test/lib/build/definitions/application.js b/packages/project/test/lib/build/definitions/application.js new file mode 100644 index 00000000000..6c942d64ff6 --- /dev/null +++ b/packages/project/test/lib/build/definitions/application.js @@ -0,0 +1,480 @@ +const test = require("ava"); +const sinon = require("sinon"); + +const application = require("../../../../lib/build/definitions/application"); + +function emptyarray() { + return []; +} + +function getMockProject() { + return { + getName: () => "project.b", + getNamespace: () => "project/b", + getType: () => "application", + getPropertiesFileSourceEncoding: () => "UTF-412", + getCopyright: () => "copyright", + getVersion: () => "version", + getSpecVersion: () => "2.6", + getMinificationExcludes: emptyarray, + getComponentPreloadPaths: emptyarray, + getComponentPreloadNamespaces: emptyarray, + getComponentPreloadExcludes: emptyarray, + getBundles: emptyarray, + getCachebusterSignatureType: () => "PONY", + getCustomTasks: emptyarray, + }; +} + +test.beforeEach((t) => { + t.context.taskUtil = { + isRootProject: sinon.stub().returns(true), + getBuildOption: sinon.stub(), + getInterface: sinon.stub() + }; + + t.context.project = getMockProject(); + t.context.getTask = sinon.stub(); +}); + +test("Standard build", async (t) => { + const {project, taskUtil, getTask} = t.context; + const tasks = application({ + project, taskUtil, getTask + }); + + t.deepEqual(Object.fromEntries(tasks), { + escapeNonAsciiCharacters: { + options: { + encoding: "UTF-412", pattern: "/**/*.properties" + } + }, + replaceCopyright: { + options: { + copyright: "copyright", pattern: "/**/*.{js,json}" + } + }, + replaceVersion: { + options: { + version: "version", pattern: "/**/*.{js,json}" + } + }, + minify: { + options: { + pattern: [ + "/**/*.js", + "!**/*.support.js", + ] + } + }, + generateFlexChangesBundle: {}, + generateManifestBundle: {}, + generateComponentPreload: { + options: { + namespaces: ["project/b"], + excludes: [], + skipBundles: [] + } + }, + generateStandaloneAppBundle: { + requiresDependencies: true + }, + transformBootstrapHtml: {}, + generateVersionInfo: { + requiresDependencies: true, + options: { + rootProject: project, + pattern: "/resources/**/.library" + } + }, + generateCachebusterInfo: { + options: { + signatureType: "PONY" + } + }, + generateApiIndex: { + requiresDependencies: true + }, + generateResourcesJson: { + requiresDependencies: true + } + }, "Correct task definitions"); + + t.is(taskUtil.getBuildOption.callCount, 0, "taskUtil#getBuildOption has not been called"); +}); + +test("Standard build with legacy spec version", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getSpecVersion = () => "0.1"; + const generateBundleTaskStub = sinon.stub(); + getTask.returns({ + task: generateBundleTaskStub + }); + + const tasks = application({ + project, taskUtil, getTask + }); + + t.deepEqual(Object.fromEntries(tasks), { + escapeNonAsciiCharacters: { + options: { + encoding: "UTF-412", pattern: "/**/*.properties" + } + }, + replaceCopyright: { + options: { + copyright: "copyright", pattern: "/**/*.{js,json}" + } + }, + replaceVersion: { + options: { + version: "version", pattern: "/**/*.{js,json}" + } + }, + minify: { + options: { + pattern: [ + "/**/*.js", + "!**/*.support.js", + ] + } + }, + generateFlexChangesBundle: {}, + generateManifestBundle: {}, + generateComponentPreload: { + options: { + namespaces: ["project/b"], + excludes: [], + skipBundles: [] + } + }, + generateStandaloneAppBundle: { + requiresDependencies: true + }, + transformBootstrapHtml: {}, + generateVersionInfo: { + requiresDependencies: true, + options: { + rootProject: project, + pattern: "/resources/**/.library" + } + }, + generateCachebusterInfo: { + options: { + signatureType: "PONY" + } + }, + generateApiIndex: { + requiresDependencies: true + }, + generateResourcesJson: { + requiresDependencies: true + } + }, "Correct task definitions"); +}); + +test("Custom bundles", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getBundles = () => [{ + bundleDefinition: { + name: "project/b/sectionsA/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsA/", + "!project/b/sectionsA/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: true, + usePredefinedCalls: true + } + }, { + bundleDefinition: { + name: "project/b/sectionsB/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsB/", + "!project/b/sectionsB/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: false, + usePredefinedCalls: true + } + }]; + + const generateBundleTaskStub = sinon.stub(); + getTask.returns({ + task: generateBundleTaskStub + }); + + const tasks = application({ + project, taskUtil, getTask + }); + const generateBundleTaskDefinition = tasks.get("generateBundle"); + + t.deepEqual(Object.fromEntries(tasks), { + escapeNonAsciiCharacters: { + options: { + encoding: "UTF-412", pattern: "/**/*.properties" + } + }, + replaceCopyright: { + options: { + copyright: "copyright", pattern: "/**/*.{js,json}" + } + }, + replaceVersion: { + options: { + version: "version", pattern: "/**/*.{js,json}" + } + }, + minify: { + options: { + pattern: [ + "/**/*.js", + "!**/*.support.js", + ] + } + }, + generateFlexChangesBundle: {}, + generateManifestBundle: {}, + generateComponentPreload: { + options: { + namespaces: ["project/b"], + excludes: [], + skipBundles: [ + "project/b/sectionsA/customBundle.js", + "project/b/sectionsB/customBundle.js" + ] + } + }, + generateStandaloneAppBundle: { + requiresDependencies: true + }, + transformBootstrapHtml: {}, + generateBundle: { + requiresDependencies: true, + taskFunction: generateBundleTaskDefinition.taskFunction + }, + generateVersionInfo: { + requiresDependencies: true, + options: { + rootProject: project, + pattern: "/resources/**/.library" + } + }, + generateCachebusterInfo: { + options: { + signatureType: "PONY" + } + }, + generateApiIndex: { + requiresDependencies: true + }, + generateResourcesJson: { + requiresDependencies: true + } + }, "Correct task definitions"); + + + await generateBundleTaskDefinition.taskFunction({ + workspace: "workspace", + dependencies: "dependencies", + taskUtil, + options: { + projectName: "projectName" + } + }); + + t.is(generateBundleTaskStub.callCount, 2, "generateBundle task got called twice"); + t.deepEqual(generateBundleTaskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + taskUtil, + options: { + projectName: "projectName", + bundleDefinition: { + name: "project/b/sectionsA/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsA/", + "!project/b/sectionsA/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: true, + usePredefinedCalls: true + } + } + }, "generateBundle task got called with correct arguments"); + t.deepEqual(generateBundleTaskStub.getCall(1).args[0], { + workspace: "workspace", + dependencies: "dependencies", + taskUtil, + options: { + projectName: "projectName", + bundleDefinition: { + name: "project/b/sectionsB/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsB/", + "!project/b/sectionsB/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: false, + usePredefinedCalls: true + } + } + }, "generateBundle task got called with correct arguments"); +}); + +test("Minification excludes", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getMinificationExcludes = () => ["**.html"]; + + const tasks = application({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("minify"); + t.deepEqual(taskDefinition, { + options: { + pattern: [ + "/**/*.js", + "!**/*.support.js", + "!/resources/**.html", + ] + } + }, "Correct minify task definition"); +}); + +test("Minification excludes not applied for legacy specVersion", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getSpecVersion = () => "2.5"; + project.getMinificationExcludes = () => ["**.html"]; + + const tasks = application({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("minify"); + t.deepEqual(taskDefinition, { + options: { + pattern: [ + "/**/*.js", + "!**/*.support.js", + ] + } + }, "Correct minify task definition"); +}); + +test("generateComponentPreload with custom paths, excludes and custom bundle", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getBundles = () => [{ + bundleDefinition: { + name: "project/b/sectionsA/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsA/", + "!project/b/sectionsA/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: true, + usePredefinedCalls: true + } + }]; + + project.getComponentPreloadPaths = () => [ + "project/b/**/Component.js", + "project/b/**/SubComponent.js" + ]; + project.getComponentPreloadExcludes = () => ["project/b/dir/**"]; + + const tasks = application({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("generateComponentPreload"); + t.deepEqual(taskDefinition, { + options: { + paths: [ + "project/b/**/Component.js", + "project/b/**/SubComponent.js" + ], + namespaces: [], + excludes: ["project/b/dir/**"], + skipBundles: [ + "project/b/sectionsA/customBundle.js" + ] + } + }, "Correct generateComponentPreload task definition"); +}); + +test("generateComponentPreload with custom namespaces and excludes", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getComponentPreloadNamespaces = () => [ + "project/b/componentA", + "project/b/componentB" + ]; + project.getComponentPreloadExcludes = () => ["project/b/componentA/dir/**"]; + + const tasks = application({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("generateComponentPreload"); + t.deepEqual(taskDefinition, { + options: { + paths: [], + namespaces: [ + "project/b/componentA", + "project/b/componentB" + ], + excludes: ["project/b/componentA/dir/**"], + skipBundles: [] + } + }, "Correct generateComponentPreload task definition"); +}); + +test("generateComponentPreload with excludes", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getComponentPreloadExcludes = () => ["project/b/componentA/dir/**"]; + + const tasks = application({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("generateComponentPreload"); + t.deepEqual(taskDefinition, { + options: { + namespaces: [ + "project/b", + ], + excludes: ["project/b/componentA/dir/**"], + skipBundles: [] + } + }, "Correct generateComponentPreload task definition"); +}); diff --git a/packages/project/test/lib/build/definitions/library.js b/packages/project/test/lib/build/definitions/library.js new file mode 100644 index 00000000000..fe1d7ac3479 --- /dev/null +++ b/packages/project/test/lib/build/definitions/library.js @@ -0,0 +1,590 @@ +const test = require("ava"); +const sinon = require("sinon"); + +const library = require("../../../../lib/build/definitions/library"); + +function emptyarray() { + return []; +} + +function getMockProject() { + return { + getName: () => "project.b", + getNamespace: () => "project/b", + getType: () => "library", + getPropertiesFileSourceEncoding: () => "UTF-412", + getCopyright: () => "copyright", + getVersion: () => "version", + getSpecVersion: () => "2.6", + getMinificationExcludes: emptyarray, + getComponentPreloadPaths: emptyarray, + getComponentPreloadNamespaces: emptyarray, + getComponentPreloadExcludes: emptyarray, + getLibraryPreloadExcludes: emptyarray, + getBundles: emptyarray, + getCachebusterSignatureType: () => "PONY", + getJsdocExcludes: () => [], + getCustomTasks: emptyarray, + }; +} + +test.beforeEach((t) => { + t.context.taskUtil = { + isRootProject: sinon.stub().returns(true), + getBuildOption: sinon.stub(), + getInterface: sinon.stub() + }; + + t.context.project = getMockProject(); + t.context.getTask = sinon.stub(); +}); + +test("Standard build", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getJsdocExcludes = () => ["**.html"]; + + const generateJsdocTaskStub = sinon.stub(); + getTask.returns({ + task: generateJsdocTaskStub + }); + + const tasks = library({ + project, taskUtil, getTask + }); + const generateJsdocTaskDefinition = tasks.get("generateJsdoc"); + t.deepEqual(Object.fromEntries(tasks), { + escapeNonAsciiCharacters: { + options: { + encoding: "UTF-412", pattern: "/**/*.properties" + } + }, + replaceCopyright: { + options: { + copyright: "copyright", + pattern: "/**/*.{js,library,css,less,theme,html}" + } + }, + replaceVersion: { + options: { + version: "version", + pattern: "/**/*.{js,json,library,css,less,theme,html}" + } + }, + replaceBuildtime: { + options: { + pattern: "/resources/sap/ui/Global.js" + } + }, + generateJsdoc: { + requiresDependencies: true, + taskFunction: generateJsdocTaskDefinition.taskFunction + }, + executeJsdocSdkTransformation: { + requiresDependencies: true, + options: { + dotLibraryPattern: "/resources/**/*.library" + } + }, + minify: { + options: { + pattern: [ + "/resources/**/*.js", + "!**/*.support.js", + ] + } + }, + generateLibraryManifest: {}, + generateManifestBundle: {}, + generateLibraryPreload: { + options: { + excludes: [], skipBundles: [] + } + }, + buildThemes: { + requiresDependencies: true, + options: { + projectName: "project.b", + librariesPattern: undefined, + themesPattern: undefined, + inputPattern: "/resources/project/b/themes/*/library.source.less", + cssVariables: undefined + } + }, + generateThemeDesignerResources: { + requiresDependencies: true, options: { + version: "version" + } + }, + generateResourcesJson: { + requiresDependencies: true + } + }, "Correct task definitions"); + + + await generateJsdocTaskDefinition.taskFunction({ + workspace: "workspace", + dependencies: "dependencies", + taskUtil, + options: { + projectName: "projectName" + } + }); + + t.is(generateJsdocTaskStub.callCount, 1, "generateJsdoc task got called once"); + t.deepEqual(generateJsdocTaskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + taskUtil, + options: { + projectName: "projectName", + namespace: "project/b", + version: "version", + pattern: [ + "/resources/**/*.js", + "!/resources/**.html" + ], + } + }, "generateBundle task got called with correct arguments"); + + t.is(taskUtil.getBuildOption.callCount, 1, "taskUtil#getBuildOption got called once"); + t.is(taskUtil.getBuildOption.getCall(0).args[0], "cssVariables", + "taskUtil#getBuildOption got called with correct argument"); +}); + +test("Standard build with legacy spec version", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getSpecVersion = () => "0.1"; + + const tasks = library({ + project, taskUtil, getTask + }); + const generateJsdocTaskDefinition = tasks.get("generateJsdoc"); + t.deepEqual(Object.fromEntries(tasks), { + escapeNonAsciiCharacters: { + options: { + encoding: "UTF-412", pattern: "/**/*.properties" + } + }, + replaceCopyright: { + options: { + copyright: "copyright", + pattern: "/**/*.{js,library,css,less,theme,html}" + } + }, + replaceVersion: { + options: { + version: "version", + pattern: "/**/*.{js,json,library,css,less,theme,html}" + } + }, + replaceBuildtime: { + options: { + pattern: "/resources/sap/ui/Global.js" + } + }, + generateJsdoc: { + requiresDependencies: true, + taskFunction: generateJsdocTaskDefinition.taskFunction + }, + executeJsdocSdkTransformation: { + requiresDependencies: true, + options: { + dotLibraryPattern: "/resources/**/*.library" + } + }, + minify: { + options: { + pattern: [ + "/resources/**/*.js", + "!**/*.support.js", + ] + } + }, + generateLibraryManifest: {}, + generateManifestBundle: {}, + generateLibraryPreload: { + options: { + excludes: [], skipBundles: [] + } + }, + buildThemes: { + requiresDependencies: true, + options: { + projectName: "project.b", + librariesPattern: undefined, + themesPattern: undefined, + inputPattern: "/resources/project/b/themes/*/library.source.less", + cssVariables: undefined + } + }, + generateThemeDesignerResources: { + requiresDependencies: true, options: { + version: "version" + } + }, + generateResourcesJson: { + requiresDependencies: true + } + }, "Correct task definitions"); +}); + +test("Custom bundles", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getBundles = () => [{ + bundleDefinition: { + name: "project/b/sectionsA/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsA/", + "!project/b/sectionsA/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: true, + usePredefinedCalls: true + } + }, { + bundleDefinition: { + name: "project/b/sectionsB/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsB/", + "!project/b/sectionsB/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: false, + usePredefinedCalls: true + } + }]; + + const generateBundleTaskStub = sinon.stub(); + getTask.returns({ + task: generateBundleTaskStub + }); + + const tasks = library({ + project, taskUtil, getTask + }); + const generateJsdocTaskDefinition = tasks.get("generateJsdoc"); + const generateBundleTaskDefinition = tasks.get("generateBundle"); + + t.deepEqual(Object.fromEntries(tasks), { + escapeNonAsciiCharacters: { + options: { + encoding: "UTF-412", pattern: "/**/*.properties" + } + }, + replaceCopyright: { + options: { + copyright: "copyright", + pattern: "/**/*.{js,library,css,less,theme,html}" + } + }, + replaceVersion: { + options: { + version: "version", + pattern: "/**/*.{js,json,library,css,less,theme,html}" + } + }, + replaceBuildtime: { + options: { + pattern: "/resources/sap/ui/Global.js" + } + }, + generateJsdoc: { + requiresDependencies: true, + taskFunction: generateJsdocTaskDefinition.taskFunction + }, + executeJsdocSdkTransformation: { + requiresDependencies: true, + options: { + dotLibraryPattern: "/resources/**/*.library" + } + }, + minify: { + options: { + pattern: [ + "/resources/**/*.js", + "!**/*.support.js", + ] + } + }, + generateLibraryManifest: {}, + generateManifestBundle: {}, + generateLibraryPreload: { + options: { + excludes: [], + skipBundles: [ + "project/b/sectionsA/customBundle.js", + "project/b/sectionsB/customBundle.js", + ] + } + }, + generateBundle: { + requiresDependencies: true, + taskFunction: generateBundleTaskDefinition.taskFunction + }, + buildThemes: { + requiresDependencies: true, + options: { + projectName: "project.b", + librariesPattern: undefined, + themesPattern: undefined, + inputPattern: "/resources/project/b/themes/*/library.source.less", + cssVariables: undefined + } + }, + generateThemeDesignerResources: { + requiresDependencies: true, options: { + version: "version" + } + }, + generateResourcesJson: { + requiresDependencies: true + } + }, "Correct task definitions"); + + + await generateBundleTaskDefinition.taskFunction({ + workspace: "workspace", + dependencies: "dependencies", + taskUtil, + options: { + projectName: "projectName" + } + }); + + t.is(generateBundleTaskStub.callCount, 2, "generateBundle task got called twice"); + t.deepEqual(generateBundleTaskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + taskUtil, + options: { + projectName: "projectName", + bundleDefinition: { + name: "project/b/sectionsA/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsA/", + "!project/b/sectionsA/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: true, + usePredefinedCalls: true + } + } + }, "generateBundle task got called with correct arguments"); + t.deepEqual(generateBundleTaskStub.getCall(1).args[0], { + workspace: "workspace", + dependencies: "dependencies", + taskUtil, + options: { + projectName: "projectName", + bundleDefinition: { + name: "project/b/sectionsB/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsB/", + "!project/b/sectionsB/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: false, + usePredefinedCalls: true + } + } + }, "generateBundle task got called with correct arguments"); +}); + +test("Minification excludes", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getMinificationExcludes = () => ["**.html"]; + + const tasks = library({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("minify"); + t.deepEqual(taskDefinition, { + options: { + pattern: [ + "/resources/**/*.js", + "!**/*.support.js", + "!/resources/**.html", + ] + } + }, "Correct minify task definition"); +}); + +test("Minification excludes not applied for legacy specVersion", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getSpecVersion = () => "2.5"; + project.getMinificationExcludes = () => ["**.html"]; + + const tasks = library({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("minify"); + t.deepEqual(taskDefinition, { + options: { + pattern: [ + "/resources/**/*.js", + "!**/*.support.js", + ] + } + }, "Correct minify task definition"); +}); + +test("generateComponentPreload with custom paths, excludes and custom bundle", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getBundles = () => [{ + bundleDefinition: { + name: "project/b/sectionsA/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsA/", + "!project/b/sectionsA/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: true, + usePredefinedCalls: true + } + }]; + + project.getComponentPreloadPaths = () => [ + "project/b/**/Component.js", + "project/b/**/SubComponent.js" + ]; + project.getComponentPreloadExcludes = () => ["project/b/dir/**"]; + + const tasks = library({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("generateComponentPreload"); + t.deepEqual(taskDefinition, { + options: { + paths: [ + "project/b/**/Component.js", + "project/b/**/SubComponent.js" + ], + namespaces: [], + excludes: ["project/b/dir/**"], + skipBundles: [ + "project/b/sectionsA/customBundle.js" + ] + } + }, "Correct generateComponentPreload task definition"); +}); + +test("generateComponentPreload with custom namespaces and excludes", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getComponentPreloadNamespaces = () => [ + "project/b/componentA", + "project/b/componentB" + ]; + project.getComponentPreloadExcludes = () => ["project/b/componentA/dir/**"]; + + const tasks = library({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("generateComponentPreload"); + t.deepEqual(taskDefinition, { + options: { + paths: [], + namespaces: [ + "project/b/componentA", + "project/b/componentB" + ], + excludes: ["project/b/componentA/dir/**"], + skipBundles: [] + } + }, "Correct generateComponentPreload task definition"); +}); + +test("generateLibraryPreload with excludes", async (t) => { + const {project, taskUtil, getTask} = t.context; + project.getLibraryPreloadExcludes = () => ["project/b/dir/**"]; + + const tasks = library({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("generateLibraryPreload"); + t.deepEqual(taskDefinition, { + options: { + excludes: ["project/b/dir/**"], + skipBundles: [] + } + }, "Correct generateLibraryPreload task definition"); +}); + +test("buildThemes: Project is not root", async (t) => { + const {project, taskUtil, getTask} = t.context; + taskUtil.isRootProject.returns(false); + + const tasks = library({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("buildThemes"); + t.deepEqual(taskDefinition, { + requiresDependencies: true, + options: { + projectName: "project.b", + librariesPattern: "/resources/**/(*.library|library.js)", + themesPattern: "/resources/sap/ui/core/themes/*", + inputPattern: "/resources/project/b/themes/*/library.source.less", + cssVariables: undefined + } + }, "Correct buildThemes task definition"); +}); +test("buildThemes: CSS Variables enabled", async (t) => { + const {project, taskUtil, getTask} = t.context; + taskUtil.getBuildOption.returns(true); + + const tasks = library({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("buildThemes"); + t.deepEqual(taskDefinition, { + requiresDependencies: true, + options: { + projectName: "project.b", + librariesPattern: undefined, + themesPattern: undefined, + inputPattern: "/resources/project/b/themes/*/library.source.less", + cssVariables: true + } + }, "Correct buildThemes task definition"); + + t.is(taskUtil.getBuildOption.callCount, 1, "taskUtil#getBuildOption got called once"); + t.is(taskUtil.getBuildOption.getCall(0).args[0], "cssVariables", + "taskUtil#getBuildOption got called with correct argument"); +}); diff --git a/packages/project/test/lib/build/definitions/module.js b/packages/project/test/lib/build/definitions/module.js new file mode 100644 index 00000000000..37a789792f9 --- /dev/null +++ b/packages/project/test/lib/build/definitions/module.js @@ -0,0 +1,8 @@ +const test = require("ava"); + +const moduleDefinition = require("../../../../lib/build/definitions/module"); + +test("Standard build", async (t) => { + const tasks = moduleDefinition({}); + t.is(tasks.size, 0, "No tasks returned"); +}); diff --git a/packages/project/test/lib/build/definitions/themeLibrary.js b/packages/project/test/lib/build/definitions/themeLibrary.js new file mode 100644 index 00000000000..1029960319d --- /dev/null +++ b/packages/project/test/lib/build/definitions/themeLibrary.js @@ -0,0 +1,155 @@ +const test = require("ava"); +const sinon = require("sinon"); + +const themeLibrary = require("../../../../lib/build/definitions/themeLibrary"); + +function emptyarray() { + return []; +} + +function getMockProject() { + return { + getName: () => "project.b", + getNamespace: () => "project/b", + getType: () => "theme-library", + getCopyright: () => "copyright", + getVersion: () => "version", + getSpecVersion: () => "2.6", + getMinificationExcludes: emptyarray, + getComponentPreloadPaths: emptyarray, + getComponentPreloadNamespaces: emptyarray, + getComponentPreloadExcludes: emptyarray, + getLibraryPreloadExcludes: emptyarray, + getBundles: emptyarray, + getCachebusterSignatureType: () => "PONY", + getJsdocExcludes: () => ["**.html"], + getCustomTasks: emptyarray, + }; +} + +test.beforeEach((t) => { + t.context.taskUtil = { + isRootProject: sinon.stub().returns(true), + getBuildOption: sinon.stub(), + getInterface: sinon.stub() + }; + + t.context.project = getMockProject(); + t.context.getTask = sinon.stub(); +}); + +test("Standard build", async (t) => { + const {project, taskUtil, getTask} = t.context; + + const tasks = themeLibrary({ + project, taskUtil, getTask + }); + t.deepEqual(Object.fromEntries(tasks), { + replaceCopyright: { + options: { + copyright: "copyright", + pattern: "/resources/**/*.{less,theme}" + } + }, + replaceVersion: { + options: { + version: "version", + pattern: "/resources/**/*.{less,theme}" + } + }, + buildThemes: { + requiresDependencies: true, + options: { + projectName: "project.b", + librariesPattern: undefined, + themesPattern: undefined, + inputPattern: "/resources/**/themes/*/library.source.less", + cssVariables: undefined + } + }, + generateThemeDesignerResources: { + requiresDependencies: true, + options: { + version: "version" + } + }, + generateResourcesJson: { + requiresDependencies: true + } + }, "Correct task definitions"); + + t.is(taskUtil.getBuildOption.callCount, 1, "taskUtil#getBuildOption got called once"); + t.is(taskUtil.getBuildOption.getCall(0).args[0], "cssVariables", + "taskUtil#getBuildOption got called with correct argument"); +}); + +test("Standard build for non root project", async (t) => { + const {project, taskUtil, getTask} = t.context; + taskUtil.isRootProject.returns(false); + + const tasks = themeLibrary({ + project, taskUtil, getTask + }); + t.deepEqual(Object.fromEntries(tasks), { + replaceCopyright: { + options: { + copyright: "copyright", + pattern: "/resources/**/*.{less,theme}" + } + }, + replaceVersion: { + options: { + version: "version", + pattern: "/resources/**/*.{less,theme}" + } + }, + buildThemes: { + requiresDependencies: true, + options: { + projectName: "project.b", + librariesPattern: "/resources/**/(*.library|library.js)", + themesPattern: "/resources/sap/ui/core/themes/*", + inputPattern: "/resources/**/themes/*/library.source.less", + cssVariables: undefined + } + }, + generateThemeDesignerResources: { + requiresDependencies: true, + options: { + version: "version" + } + }, + generateResourcesJson: { + requiresDependencies: true + } + }, "Correct task definitions"); + + t.is(taskUtil.getBuildOption.callCount, 1, "taskUtil#getBuildOption got called once"); + t.is(taskUtil.getBuildOption.getCall(0).args[0], "cssVariables", + "taskUtil#getBuildOption got called with correct argument"); +}); + +test("CSS variables enabled", async (t) => { + const {project, taskUtil, getTask} = t.context; + taskUtil.getBuildOption.returns(true); + + const tasks = themeLibrary({ + project, taskUtil, getTask + }); + + const taskDefinition = tasks.get("buildThemes"); + t.deepEqual(taskDefinition, { + requiresDependencies: true, + options: { + projectName: "project.b", + librariesPattern: undefined, + themesPattern: undefined, + inputPattern: "/resources/**/themes/*/library.source.less", + cssVariables: true + } + }, "Correct buildThemes task definition"); + + t.is(taskUtil.getBuildOption.callCount, 1, "taskUtil#getBuildOption got called once"); + t.is(taskUtil.getBuildOption.getCall(0).args[0], "cssVariables", + "taskUtil#getBuildOption got called with correct argument"); +}); diff --git a/packages/project/test/lib/build/definitions/utils.js b/packages/project/test/lib/build/definitions/utils.js new file mode 100644 index 00000000000..b2a904c1a37 --- /dev/null +++ b/packages/project/test/lib/build/definitions/utils.js @@ -0,0 +1,19 @@ +const test = require("ava"); + +const {enhancePatternWithExcludes} = require("../../../../lib/build/definitions/_utils"); + +test("enhancePatternWithExcludes", (t) => { + const patterns = ["/default/pattern", "!/other/pattern"]; + const excludes = ["a", "!b", "c", "!d"]; + + enhancePatternWithExcludes(patterns, excludes, "/prefix/"); + + t.deepEqual(patterns, [ + "/default/pattern", + "!/other/pattern", + "!/prefix/a", + "/prefix/b", + "!/prefix/c", + "/prefix/d" + ]); +}); diff --git a/packages/project/test/lib/buildHelpers/BuildContext.js b/packages/project/test/lib/build/helpers/BuildContext.js similarity index 91% rename from packages/project/test/lib/buildHelpers/BuildContext.js rename to packages/project/test/lib/build/helpers/BuildContext.js index e3b04525dab..eb0e793a8ac 100644 --- a/packages/project/test/lib/buildHelpers/BuildContext.js +++ b/packages/project/test/lib/build/helpers/BuildContext.js @@ -7,7 +7,7 @@ test.afterEach.always((t) => { mock.stopAll(); }); -const BuildContext = require("../../../lib/buildHelpers/BuildContext"); +const BuildContext = require("../../../../lib/build/helpers/BuildContext"); test("Missing parameters", (t) => { const error = t.throws(() => { @@ -65,9 +65,9 @@ test.serial("createProjectContext", (t) => { t.is(log, "log", "Correct log parameter"); } } - mock("../../../lib/buildHelpers/ProjectBuildContext", DummyProjectContext); + mock("../../../../lib/build/helpers/ProjectBuildContext", DummyProjectContext); - const BuildContext = mock.reRequire("../../../lib/buildHelpers/BuildContext"); + const BuildContext = mock.reRequire("../../../../lib/build/helpers/BuildContext"); const testBuildContext = new BuildContext({ graph: "graph" }); diff --git a/packages/project/test/lib/buildHelpers/ProjectBuildContext.js b/packages/project/test/lib/build/helpers/ProjectBuildContext.js similarity index 96% rename from packages/project/test/lib/buildHelpers/ProjectBuildContext.js rename to packages/project/test/lib/build/helpers/ProjectBuildContext.js index c1e726699e8..4450f4971b4 100644 --- a/packages/project/test/lib/buildHelpers/ProjectBuildContext.js +++ b/packages/project/test/lib/build/helpers/ProjectBuildContext.js @@ -13,7 +13,7 @@ test.afterEach.always((t) => { mock.stopAll(); }); -const ProjectBuildContext = require("../../../lib/buildHelpers/ProjectBuildContext"); +const ProjectBuildContext = require("../../../../lib/build/helpers/ProjectBuildContext"); test("Missing parameters", (t) => { t.throws(() => { @@ -140,7 +140,7 @@ test.serial("getResourceTagCollection", (t) => { ResourceTagCollection: DummyResourceTagCollection }); - const ProjectBuildContext = mock.reRequire("../../../lib/buildHelpers/ProjectBuildContext"); + const ProjectBuildContext = mock.reRequire("../../../../lib/build/helpers/ProjectBuildContext"); const projectBuildContext = new ProjectBuildContext({ buildContext: {}, project: "project", diff --git a/packages/project/test/lib/buildHelpers/composeProjectList.js b/packages/project/test/lib/build/helpers/composeProjectList.js similarity index 93% rename from packages/project/test/lib/buildHelpers/composeProjectList.js rename to packages/project/test/lib/build/helpers/composeProjectList.js index e96040ec04d..f8aef92e8a9 100644 --- a/packages/project/test/lib/buildHelpers/composeProjectList.js +++ b/packages/project/test/lib/build/helpers/composeProjectList.js @@ -3,21 +3,21 @@ const sinon = require("sinon"); const mock = require("mock-require"); const path = require("path"); const logger = require("@ui5/logger"); -const generateProjectGraph = require("../../../lib/generateProjectGraph"); +const generateProjectGraph = require("../../../../lib/generateProjectGraph"); -const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); -const libraryEPath = path.join(__dirname, "..", "..", "fixtures", "library.e"); -const libraryFPath = path.join(__dirname, "..", "..", "fixtures", "library.f"); -const libraryGPath = path.join(__dirname, "..", "..", "fixtures", "library.g"); -const libraryDDependerPath = path.join(__dirname, "..", "..", "fixtures", "library.d-depender"); +const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); +const libraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.e"); +const libraryFPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.f"); +const libraryGPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.g"); +const libraryDDependerPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.d-depender"); test.beforeEach((t) => { t.context.log = { warn: sinon.stub() }; sinon.stub(logger, "getLogger").callThrough() - .withArgs("buildHelpers:composeProjectList").returns(t.context.log); - t.context.composeProjectList = mock.reRequire("../../../lib/buildHelpers/composeProjectList"); + .withArgs("build:helpers:composeProjectList").returns(t.context.log); + t.context.composeProjectList = mock.reRequire("../../../../lib/build/helpers/composeProjectList"); }); test.afterEach.always((t) => { diff --git a/packages/project/test/lib/buildHelpers/composeTaskList.js b/packages/project/test/lib/build/helpers/composeTaskList.js similarity index 96% rename from packages/project/test/lib/buildHelpers/composeTaskList.js rename to packages/project/test/lib/build/helpers/composeTaskList.js index da18856ad89..c78512aed31 100644 --- a/packages/project/test/lib/buildHelpers/composeTaskList.js +++ b/packages/project/test/lib/build/helpers/composeTaskList.js @@ -7,9 +7,9 @@ test.beforeEach((t) => { t.context.log = { warn: sinon.stub() }; - sinon.stub(logger, "getLogger").withArgs("buildHelpers:composeTaskList").returns(t.context.log); + sinon.stub(logger, "getLogger").withArgs("build:helpers:composeTaskList").returns(t.context.log); - t.context.composeTaskList = mock.reRequire("../../../lib/buildHelpers/composeTaskList"); + t.context.composeTaskList = mock.reRequire("../../../../lib/build/helpers/composeTaskList"); }); test.afterEach.always(() => { diff --git a/packages/project/test/lib/buildHelpers/createBuildManifest.integration.js b/packages/project/test/lib/build/helpers/createBuildManifest.integration.js similarity index 85% rename from packages/project/test/lib/buildHelpers/createBuildManifest.integration.js rename to packages/project/test/lib/build/helpers/createBuildManifest.integration.js index d5befab8252..99733e05b27 100644 --- a/packages/project/test/lib/buildHelpers/createBuildManifest.integration.js +++ b/packages/project/test/lib/build/helpers/createBuildManifest.integration.js @@ -1,11 +1,12 @@ const test = require("ava"); const path = require("path"); -const createBuildManifest = require("../../../lib/buildHelpers/createBuildManifest"); -const Module = require("../../../lib/graph/Module"); -const Specification = require("../../../lib/specifications/Specification"); +const createBuildManifest = require("../../../../lib/build/helpers/createBuildManifest"); +const Module = require("../../../../lib/graph/Module"); +const Specification = require("../../../../lib/specifications/Specification"); -const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); -const buildDescrApplicationAPath = path.join(__dirname, "..", "..", "fixtures", "build-manifest", "application.a"); +const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); +const buildDescrApplicationAPath = + path.join(__dirname, "..", "..", "..", "fixtures", "build-manifest", "application.a"); const applicationAConfig = { id: "application.a.id", version: "1.0.0", @@ -17,8 +18,8 @@ const applicationAConfig = { metadata: {name: "application.a"} } }; -const libraryEPath = path.join(__dirname, "..", "..", "fixtures", "library.e"); -const buildDescrLibraryEPath = path.join(__dirname, "..", "..", "fixtures", "build-manifest", "library.e"); +const libraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.e"); +const buildDescrLibraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "build-manifest", "library.e"); const libraryEConfig = { id: "library.e.id", version: "1.0.0", diff --git a/packages/project/test/lib/buildHelpers/createBuildManifest.js b/packages/project/test/lib/build/helpers/createBuildManifest.js similarity index 85% rename from packages/project/test/lib/buildHelpers/createBuildManifest.js rename to packages/project/test/lib/build/helpers/createBuildManifest.js index 1827fb419e2..ade34085cf3 100644 --- a/packages/project/test/lib/buildHelpers/createBuildManifest.js +++ b/packages/project/test/lib/build/helpers/createBuildManifest.js @@ -1,9 +1,9 @@ const test = require("ava"); const path = require("path"); -const createBuildManifest = require("../../../lib/buildHelpers/createBuildManifest"); -const Specification = require("../../../lib/specifications/Specification"); +const createBuildManifest = require("../../../../lib/build/helpers/createBuildManifest"); +const Specification = require("../../../../lib/specifications/Specification"); -const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const applicationProjectInput = { id: "application.a.id", version: "1.0.0", @@ -16,7 +16,7 @@ const applicationProjectInput = { } }; -const libraryDPath = path.join(__dirname, "..", "..", "fixtures", "library.d"); +const libraryDPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.d"); const libraryProjectInput = { id: "library.d.id", version: "1.0.0", @@ -71,7 +71,7 @@ test("Create application from project with build manifest", async (t) => { versions: { builderVersion: require("@ui5/builder/package.json").version, fsVersion: require("@ui5/fs/package.json").version, - projectVersion: require("../../../package.json").version, + projectVersion: require("../../../../package.json").version, }, tags: { "/resources/id1/foo.js": { @@ -115,7 +115,7 @@ test("Create library from project with build manifest", async (t) => { versions: { builderVersion: require("@ui5/builder/package.json").version, fsVersion: require("@ui5/fs/package.json").version, - projectVersion: require("../../../package.json").version, + projectVersion: require("../../../../package.json").version, }, tags: { "/resources/library/d/foo.js": { diff --git a/packages/project/test/lib/index.js b/packages/project/test/lib/index.js index a4b357b39e8..fa555a6df7f 100644 --- a/packages/project/test/lib/index.js +++ b/packages/project/test/lib/index.js @@ -2,7 +2,6 @@ const test = require("ava"); const index = require("../../index"); test("index.js exports all expected modules", (t) => { - t.truthy(index.builder, "Module exported"); t.truthy(index.generateProjectGraph, "Module exported"); t.truthy(index.ui5Framework.Openui5Resolver, "Module exported"); diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index f6c2ca65c53..00e3531ddbe 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -66,10 +66,26 @@ test("_dirExists: Directory is a file", async (t) => { t.false(bExists, "directory is a file"); }); - test("_dirExists: Directory does not exist", async (t) => { const project = await Specification.create(basicProjectInput); const bExists = await project._dirExists("/w"); t.false(bExists, "directory does not exist"); }); + +test("Project with incorrect name", async (t) => { + const project = await Specification.create({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application a"} + } + }); + t.is(project.getName(), "application a", "Returned correct name"); + t.is(project.getVersion(), "1.0.0", "Returned correct version"); + t.is(project.getPath(), applicationAPath, "Returned correct project path"); +}); From f6463fd3f008ae1dc01685f7fd001f693e41d112 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 10 Jul 2022 21:29:08 +0200 Subject: [PATCH 0638/1272] [ui5-project][INTERNAL] Refactor ProjectBuilder/TaskRunner and add tests --- packages/project/lib/build/ProjectBuilder.js | 575 +++++++------- packages/project/lib/build/TaskRunner.js | 323 ++++++++ .../project/lib/build/helpers/BuildContext.js | 49 +- .../lib/build/helpers/ProjectBuildContext.js | 38 +- .../lib/build/helpers/composeTaskList.js | 16 +- packages/project/lib/build/runBuild.js | 319 -------- packages/project/lib/graph/ProjectGraph.js | 114 +-- .../project/lib/graph/projectGraphBuilder.js | 2 +- .../project/test/lib/build/ProjectBuilder.js | 690 ++--------------- packages/project/test/lib/build/TaskRunner.js | 709 ++++++++++++++++++ .../test/lib/build/helpers/BuildContext.js | 100 ++- .../lib/build/helpers/ProjectBuildContext.js | 63 ++ .../test/lib/build/helpers/composeTaskList.js | 16 +- 13 files changed, 1674 insertions(+), 1340 deletions(-) create mode 100644 packages/project/lib/build/TaskRunner.js delete mode 100644 packages/project/lib/build/runBuild.js create mode 100644 packages/project/test/lib/build/TaskRunner.js diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 57fc0196102..834f55a297e 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -1,323 +1,360 @@ -const {getTask} = require("@ui5/builder").tasks.taskRepository; -const composeTaskList = require("./helpers/composeTaskList"); +const {promisify} = require("util"); +const rimraf = promisify(require("rimraf")); +const resourceFactory = require("@ui5/fs").resourceFactory; +const log = require("@ui5/logger").getGroupLogger("build"); +const composeProjectList = require("./helpers/composeProjectList"); +const BuildContext = require("./helpers/BuildContext"); class ProjectBuilder { /** - * Constructor + * Build Configuration * - * @param {object} parameters - * @param {object} parameters.graph - * @param {object} parameters.project - * @param {GroupLogger} parameters.parentLogger Logger to use - * @param {object} parameters.taskUtil + * @public + * @typedef {object} BuildConfiguration + * @param {boolean} [selfContained=false] Flag to activate self contained build + * @param {boolean} [cssVariables=false] Flag to activate CSS variables generation + * @param {boolean} [jsdoc=false] Flag to activate JSDoc build + * @param {boolean} [createBuildManifest=false] + * Whether to create a build manifest file for the root project. + * This is currently only supported for projects of type 'library' and 'theme-library' + * @param {Array.} [includedTasks=[]] List of tasks to be included + * @param {Array.} [excludedTasks=[]] List of tasks to be excluded. + * If the wildcard '*' is provided, only the included tasks will be executed. */ - constructor({graph, project, parentLogger, taskUtil}) { - this._project = project; - this._graph = graph; - this._taskUtil = taskUtil; - - this._log = parentLogger.createSubLogger(project.getType() + " " + project.getName(), 0.2); - this._taskLog = this._log.createTaskLogger("🔨"); - - this._tasks = {}; - this._taskExecutionOrder = []; - - let buildDefinition; - switch (project.getType()) { - case "application": - buildDefinition = require("./definitions/application"); - break; - case "library": - buildDefinition = require("./definitions/library"); - break; - case "module": - buildDefinition = require("./definitions/module"); - break; - case "theme-library": - buildDefinition = require("./definitions/themeLibrary"); - break; - default: - throw new Error(`Unknown project type ${project.getType()}`); - } - - const standardTasks = buildDefinition({ - project, - taskUtil, - getTask - }); - for (const [taskName, params] of standardTasks) { - this._addTask(taskName, params); + /** + * Executes a project build, including all necessary or requested dependencies + * + * @public + * @param {module:@ui5/project.graph.ProjectGraph} graph Project graph + * @param {module:@ui5/project.build.ProjectBuilder.BuildConfiguration} [buildConfig] Build configuration + */ + constructor(graph, buildConfig) { + if (!graph) { + throw new Error(`Missing parameter 'graph'`); + } + if (!graph.isSealed()) { + throw new Error( + `Can not build project graph with root node ${graph.getRoot().getName()}: Graph is not sealed`); } - this._addCustomTasks({ - graph, - project, - taskUtil - }); + this._graph = graph; + this._buildContext = new BuildContext(graph, buildConfig); } /** - * Takes a list of tasks which should be executed from the available task list of the current builder + * Executes a project build, including all necessary or requested dependencies * - * @param {object} buildConfig - * @param {boolean} buildConfig.selfContained - * True if a the build should be self-contained or false for prelead build bundles - * @param {boolean} buildConfig.jsdoc True if a JSDoc build should be executed - * @param {Array} buildConfig.includedTasks Task list to be included from build - * @param {Array} buildConfig.excludedTasks Task list to be excluded from build - * @param {object} buildParams - * @param {module:@ui5/fs.DuplexCollection} buildParams.workspace Workspace of the current project - * @param {module:@ui5/fs.ReaderCollection} buildParams.dependencies Dependencies reader collection - * @returns {Promise} Returns promise chain with tasks + * @public + * @param {object} parameters Parameters + * @param {string} parameters.destPath Target path + * @param {boolean} [parameters.cleanDest=false] Decides whether project should clean the target path before build + * @param {Array.} [parameters.includedDependencies=[]] + * List of names of projects to include in the build result + * If the wildcard '*' is provided, all dependencies will be included in the build result. + * @param {Array.} [parameters.excludedDependencies=[]] + * List of names of projects to exclude from the build result. + * @param {object} [parameters.complexDependencyIncludes] TODO 3.0 + * @returns {Promise} Promise resolving to undefined once build has finished */ - async build(buildConfig, buildParams) { - const tasksToRun = composeTaskList(Object.keys(this._tasks), buildConfig); - const allTasks = this._taskExecutionOrder.filter((taskName) => { - // There might be a numeric suffix in case a custom task is configured multiple times. - // The suffix needs to be removed in order to check against the list of tasks to run. - // - // Note: The 'tasksToRun' parameter only allows to specify the custom task name - // (without suffix), so it executes either all or nothing. - // It's currently not possible to just execute some occurrences of a custom task. - // This would require a more robust contract to identify task executions - // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). - const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); - return tasksToRun.includes(taskWithoutSuffixCounter); + async build({ + destPath, cleanDest = false, + includedDependencies = [], excludedDependencies = [], + complexDependencyIncludes + }) { + if (!destPath) { + throw new Error(`Missing parameter 'destPath'`); + } + if (complexDependencyIncludes) { + if (includedDependencies.length || excludedDependencies.length) { + throw new Error( + "Parameter 'complexDependencyIncludes' can't be used in conjunction " + + "with parameters 'includedDependencies' or 'excludedDependencies"); + } + } + const rootProjectName = this._graph.getRoot().getName(); + log.info(`Preparing build for project ${rootProjectName}`); + log.info(` Target directory: ${destPath}`); + + // Get project filter function based on include/exclude params + // (also logs some info to console) + const filterProject = await this._getProjectFilter({ + explicitIncludes: includedDependencies, + explicitExcludes: excludedDependencies, + complexDependencyIncludes + }); + + // Count total number of projects to build based on input + const requestedProjects = this._graph.getAllProjects().map((p) => p.getName()).filter(function(projectName) { + return filterProject(projectName); + }); + + const projectBuildContexts = this._createRequiredBuildContexts(requestedProjects); + + // Collect all projects that need to be built (i.e. do not have a matching build manifest) + const projectsToBuild = []; + projectBuildContexts.forEach((projectBuildContext, projectName) => { + if (projectBuildContext.getTaskRunner().requiresBuild()) { + projectsToBuild.push(projectName); + } + }); + + const cleanupSigHooks = this._registerCleanupSigHooks(); + const buildLogger = log.createTaskLogger("🛠 "); + buildLogger.addWork(projectsToBuild.length); + log.info(` Projects required to build: `); + log.info(` > ${projectsToBuild.join("\n > ")}`); + + const fsTarget = resourceFactory.createAdapter({ + fsBasePath: destPath, + virBasePath: "/" }); - this._taskLog.addWork(allTasks.length); + if (cleanDest) { + log.info(`Cleaning target directory...`); + await rimraf(destPath); + } + const startTime = process.hrtime(); + try { + const pWrites = []; + const buildQueue = []; + + + // Create build queue based on graph depth-first search to ensure correct build order + await this._graph.traverseDepthFirst(async ({project}) => { + const projectName = project.getName(); + const projectBuildContext = projectBuildContexts.get(projectName); + if (projectBuildContext) { + // Build context exists + // => This project shall be built + buildQueue.push(projectBuildContext); + } + }); + + for (const projectBuildContext of buildQueue) { + const projectName = projectBuildContext.getProject().getName(); + buildLogger.startWork(`Building project ${projectName}...`); + await this._buildProject(projectBuildContext); + buildLogger.completeWork(1); - for (const taskName of allTasks) { - const taskFunction = this._tasks[taskName].task; + log.verbose(`Finished building project ${projectName}`); + if (!requestedProjects.includes(projectName)) { + // Project has not been requested + // => Its resources shall not be part of the build result + continue; + } - if (typeof taskFunction === "function") { - await this._executeTask(taskName, taskFunction, buildParams); + log.verbose(`Writing out files...`); + pWrites.push(this._writeResults(projectBuildContext, fsTarget)); } + await Promise.all(pWrites); + log.info(`Build succeeded in ${this._getElapsedTime(startTime)}`); + } catch (err) { + log.error(`Build failed in ${this._getElapsedTime(startTime)}`); + throw err; + } finally { + this._deregisterCleanupSigHooks(cleanupSigHooks); + await this._executeCleanupTasks(); } } - /** - * Takes a list of tasks which should be executed from the available task list of the current builder - * - * @param {object} buildConfig - * @param {boolean} buildConfig.selfContained - * True if a the build should be self-contained or false for prelead build bundles - * @param {boolean} buildConfig.jsdoc True if a JSDoc build should be executed - * @param {Array} buildConfig.includedTasks Task list to be included from build - * @param {Array} buildConfig.excludedTasks Task list to be excluded from build - * @returns {Promise} Returns promise chain with tasks - */ - requiresDependencies(buildConfig) { - const tasksToRun = composeTaskList(Object.keys(this._tasks), buildConfig); - const allTasks = this._taskExecutionOrder.filter((taskName) => { - // There might be a numeric suffix in case a custom task is configured multiple times. - // The suffix needs to be removed in order to check against the list of tasks to run. - // - // Note: The 'tasksToRun' parameter only allows to specify the custom task name - // (without suffix), so it executes either all or nothing. - // It's currently not possible to just execute some occurrences of a custom task. - // This would require a more robust contract to identify task executions - // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). - const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); - return tasksToRun.includes(taskWithoutSuffixCounter); - }); - return allTasks.some((taskName) => { - if (this._tasks[taskName].requiresDependencies) { - this._log.verbose(`Task ${taskName} for project ${this._project.getName()} requires dependencies`); - return true; + _createRequiredBuildContexts(requestedProjects) { + const allProjects = this._graph.getAllProjects(); + const requiredProjects = new Set(allProjects.filter((project) => { + return requestedProjects.includes(project.getName()); + })); + + const projectBuildContexts = new Map(); + requiredProjects.forEach((project) => { + const projectName = project.getName(); + log.verbose(`Creating build context for project ${projectName}...`); + const projectBuildContext = this._buildContext.createProjectContext({ + project, + log + }); + + const taskRunner = projectBuildContext.getTaskRunner(); + projectBuildContexts.set(projectName, projectBuildContext); + + if (taskRunner.requiresBuild() && taskRunner.requiresDependencies()) { + // This project needs to be built and required dependencies to be built as well + this._graph.getDependencies(projectName).forEach((depName) => { + if (projectBuildContexts.has(depName)) { + // Build context already exists + // => Dependency will be built + return; + } + // Add dependency to list of projects to build + const depProject = this._graph.getProject(depName); + requiredProjects.add(depProject); + }); } - return false; }); + return projectBuildContexts; } - /** - * Adds an executable task to the builder - * - * The order this function is being called defines the build order. FIFO. - * - * @param {string} taskName Name of the task which should be in the list availableTasks. - * @param {object} [parameters] - * @param {boolean} [parameters.requiresDependencies] - * @param {object} [parameters.options] - * @param {Function} [parameters.taskFunction] - */ - _addTask(taskName, {requiresDependencies = false, options = {}, taskFunction} = {}) { - if (this._tasks[taskName]) { - throw new Error(`Failed to add duplicate task ${taskName} for project ${this._project.getName()}`); + async _getProjectFilter({ + complexDependencyIncludes, + explicitIncludes, + explicitExcludes + }) { + const {includedDependencies, excludedDependencies} = await composeProjectList( + this._graph, + complexDependencyIncludes || { + includeDependencyTree: explicitIncludes, + excludeDependencyTree: explicitExcludes + } + ); + + if (includedDependencies.length) { + log.info(` Requested dependencies:`); + log.info(` + ${includedDependencies.join("\n + ")}`); } - if (this._taskExecutionOrder.includes(taskName)) { - throw new Error(`Failed to add task ${taskName} for project ${this._project.getName()}. ` + - `It has already been scheduled for execution`); + if (excludedDependencies.length) { + log.info(` Excluded dependencies:`); + log.info(` - ${excludedDependencies.join("\n + ")}`); } - const task = async ({workspace, dependencies}, log) => { - options.projectName = this._project.getName(); - options.projectNamespace = this._project.getNamespace(); + const rootProjectName = this._graph.getRoot().getName(); + return function projectFilter(projectName) { + function projectMatchesAny(deps) { + return deps.some((dep) => dep instanceof RegExp ? + dep.test(projectName) : dep === projectName); + } - const params = { - workspace, - taskUtil: this._taskUtil, - options - }; + if (projectName === rootProjectName) { + // Always include the root project + return true; + } - if (requiresDependencies) { - params.dependencies = dependencies; + if (projectMatchesAny(excludedDependencies)) { + return false; } - if (!taskFunction) { - taskFunction = getTask(taskName).task; + if (includedDependencies.includes("*") || projectMatchesAny(includedDependencies)) { + return true; } - return taskFunction(params); - }; - this._tasks[taskName] = { - task, - requiresDependencies + + return false; }; - this._taskExecutionOrder.push(taskName); } - /** - * Adds custom tasks to execute - * - * @private - * @param {object} parameters - * @param {object} parameters.graph - * @param {object} parameters.project - * @param {object} parameters.taskUtil - */ - _addCustomTasks({graph, project, taskUtil}) { - const projectCustomTasks = project.getCustomTasks(); - if (!projectCustomTasks || projectCustomTasks.length === 0) { - return; // No custom tasks defined - } - for (let i = 0; i < projectCustomTasks.length; i++) { - const taskDef = projectCustomTasks[i]; - if (!taskDef.name) { - throw new Error(`Missing name for custom task in configuration of project ${project.getName()}`); - } - if (taskDef.beforeTask && taskDef.afterTask) { - throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + - `defines both "beforeTask" and "afterTask" parameters. Only one must be defined.`); - } - if (this._taskExecutionOrder.length && !taskDef.beforeTask && !taskDef.afterTask) { - // Iff there are tasks configured, beforeTask or afterTask must be given - throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + - `defines neither a "beforeTask" nor an "afterTask" parameter. One must be defined.`); - } - let standardTask; - try { - standardTask = getTask(taskDef.name); - } catch (e) {/* We expect this to fail with an "Unknown Task" error */} - if (standardTask) { - throw new Error( - `Custom task configuration of project ${project.getName()} ` + - `references standard task ${taskDef.name}. Only custom tasks must be provided here.`); - } + async _buildProject(projectBuildContext) { + const project = projectBuildContext.getProject(); + const taskRunner = projectBuildContext.getTaskRunner(); - let newTaskName = taskDef.name; - if (this._tasks[newTaskName]) { - // Task is already known - // => add a suffix to allow for multiple configurations of the same task - let suffixCounter = 1; - while (this._tasks[newTaskName]) { - suffixCounter++; // Start at 2 - newTaskName = `${taskDef.name}--${suffixCounter}`; - } - } - const task = graph.getExtension(taskDef.name); - if (!task) { - throw new Error( - `Could not find custom task ${taskDef.name}, referenced by project ${project.getName()} ` + - `in project graph with root node ${graph.getRoot().getName()}`); + const readers = []; + await this._graph.traverseBreadthFirst(project.getName(), async function({project: dep}) { + if (dep.getName() === project.getName()) { + // Ignore project itself + return; } - // TODO: Create callback for custom tasks to configure "requiresDependencies" and "enabled" - // Input: task "options" and build mode ("standalone", "preload", etc.) - const requiresDependencies = true; // Default to true for old spec versions - const execTask = async function({workspace, dependencies}, log) { - /* Custom Task Interface - Parameters: - {Object} parameters Parameters - {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files - {module:@ui5/fs.AbstractReader} parameters.dependencies - Reader or Collection to read dependency files - {Object} parameters.taskUtil Specification Version dependent interface to a - [TaskUtil]{@link module:@ui5/builder.tasks.TaskUtil} instance - {Object} parameters.options Options - {string} parameters.options.projectName Project name - {string} [parameters.options.projectNamespace] Project namespace if available - {string} [parameters.options.configuration] Task configuration if given in ui5.yaml - Returns: - {Promise} Promise resolving with undefined once data has been written - */ - const params = { - workspace, - options: { - projectName: project.getName(), - projectNamespace: project.getNamespace(), - configuration: taskDef.configuration, - } - }; + readers.push(dep.getReader()); + }); - if (requiresDependencies) { - params.dependencies = dependencies; - } + const dependencies = resourceFactory.createReaderCollection({ + name: `Dependency reader collection for project ${project.getName()}`, + readers + }); - if (task.getSpecVersion() === "2.7") { - params.log = log; - params.taskName = newTaskName; - } + await taskRunner.runTasks({ + workspace: project.getWorkspace(), + dependencies, + }); + } - const taskUtilInterface = taskUtil.getInterface(task.getSpecVersion()); - // Interface is undefined if specVersion does not support taskUtil - if (taskUtilInterface) { - params.taskUtil = taskUtilInterface; - } - return task.getTask()(params); - }; + async _writeResults(projectBuildContext, target) { + const project = projectBuildContext.getProject(); + const taskUtil = projectBuildContext.getTaskUtil(); + const buildConfig = this._buildContext.getBuildConfig(); + const resources = await project.getReader({ + // Force buildtime (=namespaced) style when writing with a build manifest + style: taskUtil.isRootProject() && buildConfig.createBuildManifest ? "buildtime" : "runtime" + }).byGlob("/**/*"); - this._tasks[newTaskName] = { - task: execTask, - requiresDependencies - }; + if (taskUtil.isRootProject() && buildConfig.createBuildManifest) { + // Create and write a build manifest metadata file + const createBuildManifest = require("./build/helpers/createBuildManifest"); + const metadata = await createBuildManifest(project, buildConfig); + await target.write(resourceFactory.createResource({ + path: `/.ui5/build-manifest.json`, + string: JSON.stringify(metadata, null, "\t") + })); + } - if (this._taskExecutionOrder.length) { - // There is at least one task configured. Use before- and afterTask to add the custom task - const refTaskName = taskDef.beforeTask || taskDef.afterTask; - let refTaskIdx = this._taskExecutionOrder.indexOf(refTaskName); - if (refTaskIdx === -1) { - throw new Error(`Could not find task ${refTaskName}, referenced by custom task ${newTaskName}, ` + - `to be scheduled for project ${project.getName()}`); - } - if (taskDef.afterTask) { - // Insert after index of referenced task - refTaskIdx++; - } - this._taskExecutionOrder.splice(refTaskIdx, 0, newTaskName); - } else { - // There is no task configured so far. Just add the custom task - this._taskExecutionOrder.push(newTaskName); + await Promise.all(resources.map((resource) => { + if (taskUtil.getTag(resource, taskUtil.STANDARD_TAGS.OmitFromBuildResult)) { + log.verbose(`Skipping write of resource tagged as "OmitFromBuildResult": ` + + resource.getPath()); + return; // Skip target write for this resource } + return target.write(resource); + })); + } + + async _executeCleanupTasks() { + log.info("Executing cleanup tasks..."); + await this._buildContext.executeCleanupTasks(); + } + + _registerCleanupSigHooks() { + const that = this; + function createListener(exitCode) { + return function() { + // Asynchronously cleanup resources, then exit + that._executeCleanupTasks().then(() => { + process.exit(exitCode); + }); + }; + } + + const processSignals = { + "SIGHUP": createListener(128 + 1), + "SIGINT": createListener(128 + 2), + "SIGTERM": createListener(128 + 15), + "SIGBREAK": createListener(128 + 21) + }; + + for (const signal of Object.keys(processSignals)) { + process.on(signal, processSignals[signal]); + } + + // TODO: Also cleanup for unhandled rejections and exceptions? + // Add additional events like signals since they are registered on the process + // event emitter in a similar fashion + // processSignals["unhandledRejection"] = createListener(1); + // process.once("unhandledRejection", processSignals["unhandledRejection"]); + // processSignals["uncaughtException"] = function(err, origin) { + // const fs = require("fs"); + // fs.writeSync( + // process.stderr.fd, + // `Caught exception: ${err}\n` + + // `Exception origin: ${origin}` + // ); + // createListener(1)(); + // }; + // process.once("uncaughtException", processSignals["uncaughtException"]); + + return processSignals; + } + + _deregisterCleanupSigHooks(signals) { + for (const signal of Object.keys(signals)) { + process.removeListener(signal, signals[signal]); } } /** - * Adds progress related functionality to task function. + * Calculates the elapsed build time and returns a prettified output * * @private - * @param {string} taskName Name of the task - * @param {Function} taskFunction Function which executed the task - * @param {object} taskParams Base parameters for all tasks - * @returns {Promise} Resolves when task has finished + * @param {Array} startTime Array provided by process.hrtime() + * @returns {string} Difference between now and the provided time array as formatted string */ - async _executeTask(taskName, taskFunction, taskParams) { - this._taskLog.startWork(`Running task ${taskName}...`); - this._taskStart = performance.now(); - await taskFunction(taskParams, this._taskLog); - this._taskLog.completeWork(1); - if (process.env.UI5_LOG_TASK_PERF) { - this._taskLog.info(`Task succeeded in ${Math.round((performance.now() - this._taskStart))} ms`); - } + _getElapsedTime(startTime) { + const prettyHrtime = require("pretty-hrtime"); + const timeDiff = process.hrtime(startTime); + return prettyHrtime(timeDiff); } } diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js new file mode 100644 index 00000000000..480d9d1f6ec --- /dev/null +++ b/packages/project/lib/build/TaskRunner.js @@ -0,0 +1,323 @@ +const {getTask} = require("@ui5/builder").tasks.taskRepository; +const composeTaskList = require("./helpers/composeTaskList"); + +class TaskRunner { + /** + * Constructor + * + * @param {object} parameters + * @param {object} parameters.graph + * @param {object} parameters.project + * @param {GroupLogger} parameters.parentLogger Logger to use + * @param {module:@ui5/builder.tasks.TaskUtil} parameters.taskUtil TaskUtil instance + * @param {module:@ui5/project.build.ProjectBuilder.BuildConfiguration} parameters.buildConfig + * Build configuration + */ + constructor({graph, project, parentLogger, taskUtil, buildConfig}) { + if (!graph || !project || !parentLogger || !taskUtil || !buildConfig) { + throw new Error("One or more mandatory parameters not provided"); + } + this._project = project; + this._graph = graph; + this._taskUtil = taskUtil; + this._buildConfig = buildConfig; + + this._log = parentLogger.createSubLogger(project.getType() + " " + project.getName(), 0.2); + this._taskLog = this._log.createTaskLogger("🔨"); + + this._tasks = {}; + this._taskExecutionOrder = []; + + let buildDefinition; + switch (project.getType()) { + case "application": + buildDefinition = require("./definitions/application"); + break; + case "library": + buildDefinition = require("./definitions/library"); + break; + case "module": + buildDefinition = require("./definitions/module"); + break; + case "theme-library": + buildDefinition = require("./definitions/themeLibrary"); + break; + default: + throw new Error(`Unknown project type ${project.getType()}`); + } + + const standardTasks = buildDefinition({ + project, + taskUtil, + getTask + }); + + for (const [taskName, params] of standardTasks) { + this._addTask(taskName, params); + } + + this._addCustomTasks({ + graph, + project, + taskUtil + }); + } + + /** + * Takes a list of tasks which should be executed from the available task list of the current builder + * + * @param {object} buildParams + * @param {module:@ui5/fs.DuplexCollection} buildParams.workspace Workspace of the current project + * @param {module:@ui5/fs.ReaderCollection} buildParams.dependencies Dependencies reader collection + * @returns {Promise} Returns promise chain with tasks + */ + async runTasks(buildParams) { + const tasksToRun = composeTaskList(Object.keys(this._tasks), this._buildConfig); + const allTasks = this._taskExecutionOrder.filter((taskName) => { + // There might be a numeric suffix in case a custom task is configured multiple times. + // The suffix needs to be removed in order to check against the list of tasks to run. + // + // Note: The 'tasksToRun' parameter only allows to specify the custom task name + // (without suffix), so it executes either all or nothing. + // It's currently not possible to just execute some occurrences of a custom task. + // This would require a more robust contract to identify task executions + // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). + const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); + return tasksToRun.includes(taskWithoutSuffixCounter); + }); + + this._taskLog.addWork(allTasks.length); + + for (const taskName of allTasks) { + const taskFunction = this._tasks[taskName].task; + + if (typeof taskFunction === "function") { + await this._executeTask(taskName, taskFunction, buildParams); + } + } + } + + /** + * Takes a list of tasks which should be executed from the available task list of the current builder + * + * @returns {Promise} Returns promise chain with tasks + */ + requiresDependencies() { + const tasksToRun = composeTaskList(Object.keys(this._tasks), this._buildConfig); + const allTasks = this._taskExecutionOrder.filter((taskName) => { + // There might be a numeric suffix in case a custom task is configured multiple times. + // The suffix needs to be removed in order to check against the list of tasks to run. + // + // Note: The 'tasksToRun' parameter only allows to specify the custom task name + // (without suffix), so it executes either all or nothing. + // It's currently not possible to just execute some occurrences of a custom task. + // This would require a more robust contract to identify task executions + // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). + const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); + return tasksToRun.includes(taskWithoutSuffixCounter); + }); + return allTasks.some((taskName) => { + if (this._tasks[taskName].requiresDependencies) { + this._log.verbose(`Task ${taskName} for project ${this._project.getName()} requires dependencies`); + return true; + } + return false; + }); + } + + requiresBuild() { + // TODO: Decide based on build config and manifest content + return !this._project.hasBuildManifest(); + } + + /** + * Adds an executable task to the builder + * + * The order this function is being called defines the build order. FIFO. + * + * @param {string} taskName Name of the task which should be in the list availableTasks. + * @param {object} [parameters] + * @param {boolean} [parameters.requiresDependencies] + * @param {object} [parameters.options] + * @param {Function} [parameters.taskFunction] + */ + _addTask(taskName, {requiresDependencies = false, options = {}, taskFunction} = {}) { + if (this._tasks[taskName]) { + throw new Error(`Failed to add duplicate task ${taskName} for project ${this._project.getName()}`); + } + if (this._taskExecutionOrder.includes(taskName)) { + throw new Error(`Failed to add task ${taskName} for project ${this._project.getName()}. ` + + `It has already been scheduled for execution`); + } + + const task = async ({workspace, dependencies}, log) => { + options.projectName = this._project.getName(); + options.projectNamespace = this._project.getNamespace(); + + const params = { + workspace, + taskUtil: this._taskUtil, + options + }; + + if (requiresDependencies) { + params.dependencies = dependencies; + } + + if (!taskFunction) { + taskFunction = getTask(taskName).task; + } + return taskFunction(params); + }; + this._tasks[taskName] = { + task, + requiresDependencies + }; + this._taskExecutionOrder.push(taskName); + } + + /** + * Adds custom tasks to execute + * + * @private + * @param {object} parameters + * @param {object} parameters.graph + * @param {object} parameters.project + * @param {object} parameters.taskUtil + */ + _addCustomTasks({graph, project, taskUtil}) { + const projectCustomTasks = project.getCustomTasks(); + if (!projectCustomTasks || projectCustomTasks.length === 0) { + return; // No custom tasks defined + } + for (let i = 0; i < projectCustomTasks.length; i++) { + const taskDef = projectCustomTasks[i]; + if (!taskDef.name) { + throw new Error(`Missing name for custom task in configuration of project ${project.getName()}`); + } + if (taskDef.beforeTask && taskDef.afterTask) { + throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + + `defines both "beforeTask" and "afterTask" parameters. Only one must be defined.`); + } + if (this._taskExecutionOrder.length && !taskDef.beforeTask && !taskDef.afterTask) { + // Iff there are tasks configured, beforeTask or afterTask must be given + throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + + `defines neither a "beforeTask" nor an "afterTask" parameter. One must be defined.`); + } + let standardTask; + try { + standardTask = getTask(taskDef.name); + } catch (e) {/* We expect this to fail with an "Unknown Task" error */} + if (standardTask) { + throw new Error( + `Custom task configuration of project ${project.getName()} ` + + `references standard task ${taskDef.name}. Only custom tasks must be provided here.`); + } + + let newTaskName = taskDef.name; + if (this._tasks[newTaskName]) { + // Task is already known + // => add a suffix to allow for multiple configurations of the same task + let suffixCounter = 1; + while (this._tasks[newTaskName]) { + suffixCounter++; // Start at 2 + newTaskName = `${taskDef.name}--${suffixCounter}`; + } + } + const task = graph.getExtension(taskDef.name); + if (!task) { + throw new Error( + `Could not find custom task ${taskDef.name}, referenced by project ${project.getName()} ` + + `in project graph with root node ${graph.getRoot().getName()}`); + } + // TODO: Create callback for custom tasks to configure "requiresDependencies" and "enabled" + // Input: task "options" and build mode ("standalone", "preload", etc.) + const requiresDependencies = true; // Default to true for old spec versions + const execTask = async function({workspace, dependencies}, log) { + /* Custom Task Interface + Parameters: + {Object} parameters Parameters + {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files + {module:@ui5/fs.AbstractReader} parameters.dependencies + Reader or Collection to read dependency files + {Object} parameters.taskUtil Specification Version dependent interface to a + [TaskUtil]{@link module:@ui5/builder.tasks.TaskUtil} instance + {Object} parameters.options Options + {string} parameters.options.projectName Project name + {string} [parameters.options.projectNamespace] Project namespace if available + {string} [parameters.options.configuration] Task configuration if given in ui5.yaml + Returns: + {Promise} Promise resolving with undefined once data has been written + */ + const params = { + workspace, + options: { + projectName: project.getName(), + projectNamespace: project.getNamespace(), + configuration: taskDef.configuration, + } + }; + + if (requiresDependencies) { + params.dependencies = dependencies; + } + + if (task.getSpecVersion() === "2.7") { + params.log = log; + params.taskName = newTaskName; + } + + const taskUtilInterface = taskUtil.getInterface(task.getSpecVersion()); + // Interface is undefined if specVersion does not support taskUtil + if (taskUtilInterface) { + params.taskUtil = taskUtilInterface; + } + return task.getTask()(params); + }; + + this._tasks[newTaskName] = { + task: execTask, + requiresDependencies + }; + + if (this._taskExecutionOrder.length) { + // There is at least one task configured. Use before- and afterTask to add the custom task + const refTaskName = taskDef.beforeTask || taskDef.afterTask; + let refTaskIdx = this._taskExecutionOrder.indexOf(refTaskName); + if (refTaskIdx === -1) { + throw new Error(`Could not find task ${refTaskName}, referenced by custom task ${newTaskName}, ` + + `to be scheduled for project ${project.getName()}`); + } + if (taskDef.afterTask) { + // Insert after index of referenced task + refTaskIdx++; + } + this._taskExecutionOrder.splice(refTaskIdx, 0, newTaskName); + } else { + // There is no task configured so far. Just add the custom task + this._taskExecutionOrder.push(newTaskName); + } + } + } + + /** + * Adds progress related functionality to task function. + * + * @private + * @param {string} taskName Name of the task + * @param {Function} taskFunction Function which executed the task + * @param {object} taskParams Base parameters for all tasks + * @returns {Promise} Resolves when task has finished + */ + async _executeTask(taskName, taskFunction, taskParams) { + this._taskLog.startWork(`Running task ${taskName}...`); + this._taskStart = performance.now(); + await taskFunction(taskParams, this._taskLog); + this._taskLog.completeWork(1); + if (process.env.UI5_LOG_TASK_PERF) { + this._taskLog.info(`Task succeeded in ${Math.round((performance.now() - this._taskStart))} ms`); + } + } +} + +module.exports = TaskRunner; diff --git a/packages/project/lib/build/helpers/BuildContext.js b/packages/project/lib/build/helpers/BuildContext.js index 396bc1ca0e9..b0254761ddb 100644 --- a/packages/project/lib/build/helpers/BuildContext.js +++ b/packages/project/lib/build/helpers/BuildContext.js @@ -4,16 +4,40 @@ const ProjectBuildContext = require("./ProjectBuildContext"); * Context of a build process * * @private - * @memberof module:@ui5/builder.builder + * @memberof module:@ui5/project.build.helpers */ class BuildContext { - constructor({graph, options = {}}) { + constructor(graph, { + selfContained = false, + cssVariables = false, + jsdoc = false, + createBuildManifest = false, + includedTasks = [], excludedTasks = [], + } = {}) { if (!graph) { throw new Error(`Missing parameter 'graph'`); } + + if (createBuildManifest && !["library", "theme-library"].includes(graph.getRoot().getType())) { + throw new Error( + `Build manifest creation is currently not supported for projects of type ` + + graph.getRoot().getType()); + } + this._graph = graph; + this._buildConfig = { + selfContained, + cssVariables, + jsdoc, + createBuildManifest, + includedTasks, + excludedTasks, + }; + + this._options = { + cssVariables: cssVariables + }; this._projectBuildContexts = []; - this._options = options; } getRootProject() { @@ -24,6 +48,14 @@ class BuildContext { return this._options[key]; } + getBuildConfig() { + return this._buildConfig; + } + + getGraph() { + return this._graph; + } + createProjectContext({project, log}) { const projectBuildContext = new ProjectBuildContext({ buildContext: this, @@ -39,17 +71,6 @@ class BuildContext { return ctx.executeCleanupTasks(); })); } - - /** - * Retrieve a single project from the dependency graph - * - * @param {string} projectName Name of the project to retrieve - * @returns {module:@ui5/project.specifications.Project|undefined} - * project instance or undefined if the project is unknown to the graph - */ - getProject(projectName) { - return this._graph.getProject(projectName); - } } module.exports = BuildContext; diff --git a/packages/project/lib/build/helpers/ProjectBuildContext.js b/packages/project/lib/build/helpers/ProjectBuildContext.js index 47bed053e10..f747f7ca388 100644 --- a/packages/project/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/lib/build/helpers/ProjectBuildContext.js @@ -50,6 +50,20 @@ class ProjectBuildContext { })); } + /** + * Retrieve a single project from the dependency graph + * + * @param {string} [projectName] Name of the project to retrieve. Defaults to the project currently being built + * @returns {module:@ui5/project.specifications.Project|undefined} + * project instance or undefined if the project is unknown to the graph + */ + getProject(projectName) { + if (projectName) { + return this._buildContext.getGraph().getProject(projectName); + } + return this._project; + } + getResourceTagCollection(resource, tag) { if (!resource.hasProject()) { this._log.verbose(`Associating resource ${resource.getPath()} with project ${this._project.getName()}`); @@ -78,18 +92,20 @@ class ProjectBuildContext { return this._taskUtil; } - /** - * Retrieve a single project from the dependency graph - * - * @param {string} [projectName] Name of the project to retrieve. Defaults to the project currently being built - * @returns {module:@ui5/project.specifications.Project|undefined} - * project instance or undefined if the project is unknown to the graph - */ - getProject(projectName) { - if (projectName) { - return this._buildContext.getProject(projectName); + getTaskRunner() { + if (this._taskRunner) { + return this._taskRunner; } - return this._project; + + const TaskRunner = require("../TaskRunner"); + this._taskRunner = new TaskRunner({ + graph: this._buildContext.getGraph(), + project: this._project, + taskUtil: this.getTaskUtil(), + parentLogger: this._log, + buildConfig: this._buildContext.getBuildConfig() + }); + return this._taskRunner; } } diff --git a/packages/project/lib/build/helpers/composeTaskList.js b/packages/project/lib/build/helpers/composeTaskList.js index 50856a6be1d..a8d980086a5 100644 --- a/packages/project/lib/build/helpers/composeTaskList.js +++ b/packages/project/lib/build/helpers/composeTaskList.js @@ -1,5 +1,3 @@ -const log = require("@ui5/logger").getLogger("build:helpers:composeTaskList"); - /** * Creates the list of tasks to be executed by the build process * @@ -9,13 +7,9 @@ const log = require("@ui5/logger").getLogger("build:helpers:composeTaskList"); * * @private * @param {string[]} allTasks - * @param {object} parameters - * @param {boolean} parameters.selfContained - * True if a the build should be self-contained or false for prelead build bundles - * @param {boolean} parameters.jsdoc True if a JSDoc build should be executed - * @param {Array} parameters.includedTasks Task list to be included from build - * @param {Array} parameters.excludedTasks Task list to be excluded from build - * @returns {Array} Return a task list for the builder + * @param {module:@ui5/project.build.ProjectBuilder.BuildConfiguration} buildConfig + * Build configuration + * @returns {Array} List of tasks to be executed */ module.exports = function composeTaskList(allTasks, {selfContained, jsdoc, includedTasks, excludedTasks}) { let selectedTasks = allTasks.reduce((list, key) => { @@ -79,8 +73,6 @@ module.exports = function composeTaskList(allTasks, {selfContained, jsdoc, inclu } if (selectedTasks[taskName] === true) { selectedTasks[taskName] = false; - } else if (typeof selectedTasks[taskName] === "undefined") { - log.warn(`Unable to exclude task '${taskName}': Task is unknown`); } } @@ -95,8 +87,6 @@ module.exports = function composeTaskList(allTasks, {selfContained, jsdoc, inclu } if (selectedTasks[taskName] === false) { selectedTasks[taskName] = true; - } else if (typeof selectedTasks[taskName] === "undefined") { - log.warn(`Unable to include task '${taskName}': Task is unknown`); } } diff --git a/packages/project/lib/build/runBuild.js b/packages/project/lib/build/runBuild.js deleted file mode 100644 index f7aa7c5e18a..00000000000 --- a/packages/project/lib/build/runBuild.js +++ /dev/null @@ -1,319 +0,0 @@ -const {promisify} = require("util"); -const rimraf = promisify(require("rimraf")); -const resourceFactory = require("@ui5/fs").resourceFactory; -const log = require("@ui5/logger").getGroupLogger("build"); -const composeProjectList = require("./helpers/composeProjectList"); -const BuildContext = require("./helpers/BuildContext"); -const ProjectBuilder = require("./ProjectBuilder"); - -async function executeCleanupTasks(buildContext) { - log.info("Executing cleanup tasks..."); - await buildContext.executeCleanupTasks(); -} - -function registerCleanupSigHooks(buildContext) { - function createListener(exitCode) { - return function() { - // Asynchronously cleanup resources, then exit - executeCleanupTasks(buildContext).then(() => { - process.exit(exitCode); - }); - }; - } - - const processSignals = { - "SIGHUP": createListener(128 + 1), - "SIGINT": createListener(128 + 2), - "SIGTERM": createListener(128 + 15), - "SIGBREAK": createListener(128 + 21) - }; - - for (const signal of Object.keys(processSignals)) { - process.on(signal, processSignals[signal]); - } - - // == TO BE DISCUSSED: Also cleanup for unhandled rejections and exceptions? - // Add additional events like signals since they are registered on the process - // event emitter in a similar fashion - // processSignals["unhandledRejection"] = createListener(1); - // process.once("unhandledRejection", processSignals["unhandledRejection"]); - // processSignals["uncaughtException"] = function(err, origin) { - // const fs = require("fs"); - // fs.writeSync( - // process.stderr.fd, - // `Caught exception: ${err}\n` + - // `Exception origin: ${origin}` - // ); - // createListener(1)(); - // }; - // process.once("uncaughtException", processSignals["uncaughtException"]); - - return processSignals; -} - -function deregisterCleanupSigHooks(signals) { - for (const signal of Object.keys(signals)) { - process.removeListener(signal, signals[signal]); - } -} - -/** - * Calculates the elapsed build time and returns a prettified output - * - * @private - * @param {Array} startTime Array provided by process.hrtime() - * @returns {string} Difference between now and the provided time array as formatted string - */ -function getElapsedTime(startTime) { - const prettyHrtime = require("pretty-hrtime"); - const timeDiff = process.hrtime(startTime); - return prettyHrtime(timeDiff); -} - -/** - * Configures the project build and starts it. - * - * @public - * @param {module:@ui5/project.graph.ProjectGraph} graph Project graph - * @param {object} parameters Parameters - * @param {string} parameters.destPath Target path - * @param {boolean} [parameters.cleanDest=false] Decides whether project should clean the target path before build - * @param {Array.} [parameters.includedDependencies=[]] - * List of names of projects to include in the build result - * If the wildcard '*' is provided, all dependencies will be included in the build result. - * @param {Array.} [parameters.excludedDependencies=[]] - * List of names of projects to exclude from the build result. - * @param {object} [parameters.complexDependencyIncludes] TODO 3.0 - * @param {boolean} [parameters.selfContained=false] Flag to activate self contained build - * @param {boolean} [parameters.cssVariables=false] Flag to activate CSS variables generation - * @param {boolean} [parameters.jsdoc=false] Flag to activate JSDoc build - * @param {boolean} [parameters.createBuildManifest=false] Whether to create a build manifest file for the root project. - * This is currently only supported for projects of type 'library' and 'theme-library' - * @param {Array.} [parameters.includedTasks=[]] List of tasks to be included - * @param {Array.} [parameters.excludedTasks=[]] List of tasks to be excluded. - * If the wildcard '*' is provided, only the included tasks will be executed. - * @returns {Promise} Promise resolving to undefined once build has finished - */ -module.exports = async function(graph, { - destPath, cleanDest = false, - includedDependencies = [], excludedDependencies = [], - complexDependencyIncludes, - selfContained = false, cssVariables = false, jsdoc = false, createBuildManifest = false, - includedTasks = [], excludedTasks = [], -}) { - if (!graph) { - throw new Error(`Missing parameter 'graph'`); - } - if (!destPath) { - throw new Error(`Missing parameter 'destPath'`); - } - if (!graph.isSealed()) { - throw new Error( - `Can not build project graph with root node ${graph.getRoot().getName()}: Graph is not sealed`); - } - - if (complexDependencyIncludes) { - if (includedDependencies.length || excludedDependencies.length) { - throw new Error( - "Parameter 'complexDependencyIncludes' can't be used in conjunction " + - "with parameters 'includedDependencies' or 'excludedDependencies"); - } - ({includedDependencies, excludedDependencies} = await composeProjectList(graph, complexDependencyIncludes)); - } else if (includedDependencies.length || excludedDependencies.length) { - ({includedDependencies, excludedDependencies} = await composeProjectList(graph, { - includeDependencyTree: includedDependencies, - excludeDependencyTree: excludedDependencies - })); - } - - const startTime = process.hrtime(); - const rootProjectName = graph.getRoot().getName(); - - if (createBuildManifest && !["library", "theme-library"].includes(graph.getRoot().getType())) { - throw new Error( - `Build manifest creation is currently not supported for projects of type ${graph.getRoot().getType()}`); - } - - log.info(`Building project ${rootProjectName}`); - if (includedDependencies.length) { - log.info(` Requested dependencies:`); - log.info(` + ${includedDependencies.join("\n + ")}`); - } - if (excludedDependencies.length) { - log.info(` Excluded dependencies:`); - log.info(` - ${excludedDependencies.join("\n + ")}`); - } - log.info(` Target directory: ${destPath}`); - - const buildConfig = {selfContained, jsdoc, includedTasks, excludedTasks}; - - const fsTarget = resourceFactory.createAdapter({ - fsBasePath: destPath, - virBasePath: "/" - }); - - const buildContext = new BuildContext({ - graph, - options: { - cssVariables - } - }); - const cleanupSigHooks = registerCleanupSigHooks(buildContext); - function projectFilter(projectName) { - function projectMatchesAny(deps) { - return deps.some((dep) => dep instanceof RegExp ? - dep.test(projectName) : dep === projectName); - } - - if (projectName === rootProjectName) { - // Always include the root project - return true; - } - - if (projectMatchesAny(excludedDependencies)) { - return false; - } - - if (includedDependencies.includes("*") || projectMatchesAny(includedDependencies)) { - return true; - } - - return false; - } - - // Count total number of projects to build - const requestedProjects = graph.getAllProjects().map((p) => p.getName()).filter(function(projectName) { - return projectFilter(projectName); - }); - - try { - const buildableProjects = {}; - // Copy list of requested projects. We might need to build more projects than requested to - // in order to satisfy tasks requiring dependencies to be built but we will still only write the - // resources of the requested projects to the build result - let projectsToBuild = [...requestedProjects]; - - const buildLogger = log.createTaskLogger("🛠 "); - await graph.traverseBreadthFirst(async function({project, getDependencies}) { - const projectName = project.getName(); - const projectContext = buildContext.createProjectContext({ - project, - log: buildLogger - }); - log.verbose(`Preparing project ${projectName}...`); - - const taskUtil = projectContext.getTaskUtil(); - const builder = new ProjectBuilder({ - graph, - project, - taskUtil, - parentLogger: log - }); - buildableProjects[projectName] = { - projectContext, - builder - }; - - if (projectsToBuild.includes(projectName) && builder.requiresDependencies(buildConfig)) { - getDependencies().forEach((dep) => { - const depName = dep.getName(); - if (project.hasBuildManifest() && !dep.hasBuildManifest()) { - throw new Error( - `Project ${depName} must provide a build manifest since it is a dependency of ` + - `project ${projectName} which already provides a build manifest and therefore ` + - `cannot be re-built`); - } - if (!projectsToBuild.includes(depName)) { - log.info(`Project ${projectName} requires dependency ${depName} to be built`); - projectsToBuild.push(depName); - } - }); - } - }); - - projectsToBuild = projectsToBuild.filter((projectName) => { - if (graph.getProject(projectName).hasBuildManifest()) { - log.verbose(`Found a build manifest for project ${projectName}. Skipping build.`); - return false; - } - return true; - }); - - buildLogger.addWork(projectsToBuild.length); - log.info(`Projects required to build: `); - log.info(` > ${projectsToBuild.join("\n > ")}`); - - if (cleanDest) { - await rimraf(destPath); - } - - await graph.traverseDepthFirst(async function({project, getDependencies}) { - const projectName = project.getName(); - if (!projectsToBuild.includes(projectName)) { - return; - } - const {projectContext, builder} = buildableProjects[projectName]; - - buildLogger.startWork(`Building project ${project.getName()}...`); - - const readers = []; - await graph.traverseBreadthFirst(project.getName(), async function({project: dep}) { - if (dep.getName() === project.getName()) { - // Ignore project itself - return; - } - readers.push(dep.getReader()); - }); - - const dependencies = resourceFactory.createReaderCollection({ - name: `Dependency reader collection for project ${project.getName()}`, - readers - }); - - await builder.build(buildConfig, { - workspace: project.getWorkspace(), - dependencies, - }); - log.verbose("Finished building project %s", project.getName()); - buildLogger.completeWork(1); - - if (!requestedProjects.includes(projectName)) { - // This project shall not be part of the build result - return; - } - - log.verbose(`Writing out files...`); - const taskUtil = projectContext.getTaskUtil(); - const resources = await project.getReader({ - // Force buildtime (=namespaced) style when writing with a build manifest - style: taskUtil.isRootProject() && createBuildManifest ? "buildtime" : "runtime" - }).byGlob("/**/*"); - - if (taskUtil.isRootProject() && createBuildManifest) { - // Create and write a build manifest metadata file - const createBuildManifest = require("./build/helpers/createBuildManifest"); - const metadata = await createBuildManifest(project, buildConfig); - await fsTarget.write(resourceFactory.createResource({ - path: `/.ui5/build-manifest.json`, - string: JSON.stringify(metadata, null, "\t") - })); - } - - await Promise.all(resources.map((resource) => { - if (taskUtil.getTag(resource, taskUtil.STANDARD_TAGS.OmitFromBuildResult)) { - log.verbose(`Skipping write of resource tagged as "OmitFromBuildResult": ` + - resource.getPath()); - return; // Skip target write for this resource - } - return fsTarget.write(resource); - })); - }); - log.info(`Build succeeded in ${getElapsedTime(startTime)}`); - } catch (err) { - log.error(`Build failed in ${getElapsedTime(startTime)}`); - throw err; - } finally { - deregisterCleanupSigHooks(cleanupSigHooks); - await executeCleanupTasks(buildContext); - } -}; diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 52732feab06..5dbfe95bf9c 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -83,10 +83,10 @@ class ProjectGraph { } /** - * Get all projects as a nested array containing pairs of project name and -instance. + * Get all projects in the graph * * @public - * @returns {Array>} + * @returns {module:@ui5/project.specifications.Project[]} */ getAllProjects() { return Object.values(this._projects); @@ -126,10 +126,10 @@ class ProjectGraph { } /** - * Get all extensions as a nested array containing pairs of extension name and -instance. + * Get all extensions in the graph * * @public - * @returns {Array>} + * @returns {module:@ui5/project.specifications.Extension[]} */ getAllExtensions() { return Object.values(this._extensions); @@ -215,7 +215,7 @@ class ProjectGraph { * * @public * @param {string} projectName Name of the project to retrieve the dependencies of - * @returns {module:@ui5/project.specifications.Project[]} Project instances of the given project's dependencies + * @returns {string[]} Project names */ getDependencies(projectName) { const adjacencies = this._adjList[projectName]; @@ -425,16 +425,6 @@ class ProjectGraph { })(); } - _checkCycle(predecessors, projectName) { - if (predecessors.includes(projectName)) { - // We start to run in circles. That's neither expected nor something we can deal with - - // Mark first and last occurrence in chain with an asterisk - predecessors[predecessors.indexOf(projectName)] = `${projectName}*`; - throw new Error(`Detected cyclic dependency chain: ${predecessors.join(" -> ")} -> ${projectName}*`); - } - } - /** * Join another project graph into this one. * Projects and extensions which already exist in this graph will cause an error to be thrown @@ -462,6 +452,57 @@ class ProjectGraph { } } + /** + * Executes a build on the graph + * + * @public + * @param {object} parameters Build parameters + * @param {string} parameters.destPath Target path + * @param {boolean} [parameters.cleanDest=false] Decides whether project should clean the target path before build + * @param {Array.} [parameters.includedDependencies=[]] + * List of names of projects to include in the build result + * If the wildcard '*' is provided, all dependencies will be included in the build result. + * @param {Array.} [parameters.excludedDependencies=[]] + * List of names of projects to exclude from the build result. + * @param {object} [parameters.complexDependencyIncludes] TODO 3.0 + * @param {boolean} [parameters.selfContained=false] Flag to activate self contained build + * @param {boolean} [parameters.cssVariables=false] Flag to activate CSS variables generation + * @param {boolean} [parameters.jsdoc=false] Flag to activate JSDoc build + * @param {boolean} [parameters.createBuildManifest=false] + * Whether to create a build manifest file for the root project. + * This is currently only supported for projects of type 'library' and 'theme-library' + * @param {Array.} [parameters.includedTasks=[]] List of tasks to be included + * @param {Array.} [parameters.excludedTasks=[]] List of tasks to be excluded. + * If the wildcard '*' is provided, only the included tasks will be executed. + * @returns {Promise} Promise resolving to undefined once build has finished + */ + async build({ + destPath, cleanDest = false, + includedDependencies = [], excludedDependencies = [], + complexDependencyIncludes, + selfContained = false, cssVariables = false, jsdoc = false, createBuildManifest = false, + includedTasks = [], excludedTasks = [], + }) { + this.seal(); + if (this._built) { + throw new Error( + `Project graph with root node ${this._rootProjectName} has already been built. ` + + `Each graph can only be built once`); + } + this._built = true; + const ProjectBuilder = require("../build/ProjectBuilder"); + const builder = new ProjectBuilder(this, { + selfContained, cssVariables, jsdoc, + createBuildManifest, + includedTasks, excludedTasks, + }); + await builder.build({ + destPath, cleanDest, + includedDependencies, excludedDependencies, + complexDependencyIncludes, + }); + } + /** * Seal the project graph so that no further changes can be made to it * @@ -493,44 +534,17 @@ class ProjectGraph { } } - // TODO: introduce function to check for dangling nodes/consistency in general? + _checkCycle(predecessors, projectName) { + if (predecessors.includes(projectName)) { + // We start to run in circles. That's neither expected nor something we can deal with - /** - * Executes a build on the graph - * - * @public - * @param {object} parameters Parameters - * @param {module:@ui5/project.graph.ProjectGraph} parameters.graph Project graph - * @param {string} parameters.destPath Target path - * @param {boolean} [parameters.cleanDest=false] Decides whether project should clean the target path before build - * @param {Array.} [parameters.includedDependencies=[]] - * List of names of projects to include in the build result - * If the wildcard '*' is provided, all dependencies will be included in the build result. - * @param {Array.} [parameters.excludedDependencies=[]] - * List of names of projects to exclude from the build result. - * @param {object} [parameters.complexDependencyIncludes] TODO 3.0 - * @param {boolean} [parameters.selfContained=false] Flag to activate self contained build - * @param {boolean} [parameters.cssVariables=false] Flag to activate CSS variables generation - * @param {boolean} [parameters.jsdoc=false] Flag to activate JSDoc build - * @param {boolean} [parameters.createBuildManifest=false] - * Whether to create a build manifest file for the root project. - * This is currently only supported for projects of type 'library' and 'theme-library' - * @param {Array.} [parameters.includedTasks=[]] List of tasks to be included - * @param {Array.} [parameters.excludedTasks=[]] List of tasks to be excluded. - * If the wildcard '*' is provided, only the included tasks will be executed. - * @returns {Promise} Promise resolving to undefined once build has finished - */ - async build(parameters) { - this.seal(); - if (this._built) { - throw new Error( - `Project graph with root node ${this._rootProjectName} has already been built. ` + - `Each graph can only be built once`); + // Mark first and last occurrence in chain with an asterisk + predecessors[predecessors.indexOf(projectName)] = `${projectName}*`; + throw new Error(`Detected cyclic dependency chain: ${predecessors.join(" -> ")} -> ${projectName}*`); } - this._built = true; - const runBuild = require("../build/runBuild"); - return runBuild(this, parameters); } + + // TODO: introduce function to check for dangling nodes/consistency in general? } function mergeMap(target, source) { diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index 0909819d925..7d840a58405 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -256,7 +256,7 @@ module.exports = async function(nodeProvider) { // Module provided neither a project nor an extension // => Do not follow its dependencies log.verbose( - `Module ${node.id} neither provided a project nor an extension. Skipping dependency resolution.`); + `Module ${node.id} neither provides a project nor an extension. Skipping dependency resolution`); skipDependencies = true; } diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 26558e793f4..435cf321e49 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -1,658 +1,110 @@ const test = require("ava"); const sinon = require("sinon"); -const mock = require("mock-require"); - -const parentLogger = require("@ui5/logger").getGroupLogger("mygroup"); +const path = require("path"); const ProjectBuilder = require("../../../lib/build/ProjectBuilder"); function noop() {} -function emptyarray() { - return []; -} -function getMockProject(type) { +function getMockProject(type, id = "b") { return { - getName: () => "project.b", - getNamespace: () => "project/b", + getName: () => "project." + id, + getNamespace: () => "project/" + id, getType: () => type, - getPropertiesFileSourceEncoding: noop, getCopyright: noop, getVersion: noop, getSpecVersion: () => "0.1", - getMinificationExcludes: emptyarray, - getComponentPreloadPaths: () => [ - "project/b/**/Component.js" - ], - getComponentPreloadNamespaces: emptyarray, - getComponentPreloadExcludes: emptyarray, - getLibraryPreloadExcludes: emptyarray, - getBundles: () => [{ - bundleDefinition: { - name: "project/b/sectionsA/customBundle.js", - defaultFileTypes: [".js"], - sections: [{ - mode: "preload", - filters: [ - "project/b/sectionsA/", - "!project/b/sectionsA/section2**", - ] - }], - sort: true - }, - bundleOptions: { - optimize: true, - usePredefinedCalls: true - } - }], - getCachebusterSignatureType: noop, - getCustomTasks: () => [], }; } test.beforeEach((t) => { - t.context.taskUtil = { - isRootProject: sinon.stub().returns(true), - getBuildOption: sinon.stub(), - getInterface: sinon.stub() - }; - + t.context.getRootNameStub = sinon.stub().returns("root.node"); + t.context.getRootTypeStub = sinon.stub().returns("application"); t.context.graph = { getRoot: () => { return { - getName: () => "graph-root" + getName: t.context.getRootNameStub, + getType: t.context.getRootTypeStub, }; }, - getExtension: sinon.stub().returns("a custom task") + isSealed: sinon.stub().returns(true), + getAllProjects: sinon.stub().returns([getMockProject("library")]), + traverseBreadthFirst: sinon.stub(), + traverseDepthFirst: sinon.stub().callsArgWith(0, {project: getMockProject("library")}), + getProject: sinon.stub().returns(getMockProject("library")) }; }); -test("Project of type 'application'", (t) => { - const {graph, taskUtil} = t.context; - const builder = new ProjectBuilder({project: getMockProject("application"), graph, taskUtil, parentLogger}); - t.deepEqual(builder._taskExecutionOrder, [ - "escapeNonAsciiCharacters", - "replaceCopyright", - "replaceVersion", - "minify", - "generateFlexChangesBundle", - "generateManifestBundle", - "generateComponentPreload", - "generateStandaloneAppBundle", - "transformBootstrapHtml", - "generateBundle", - "generateVersionInfo", - "generateCachebusterInfo", - "generateApiIndex", - "generateResourcesJson" - ], "Correct standard tasks"); -}); - -test("Project of type 'library'", (t) => { - const {graph, taskUtil} = t.context; - const builder = new ProjectBuilder({project: getMockProject("library"), graph, taskUtil, parentLogger}); - - t.deepEqual(builder._taskExecutionOrder, [ - "escapeNonAsciiCharacters", - "replaceCopyright", - "replaceVersion", - "replaceBuildtime", - "generateJsdoc", - "executeJsdocSdkTransformation", - "minify", - "generateLibraryManifest", - "generateManifestBundle", - "generateComponentPreload", - "generateLibraryPreload", - "generateBundle", - "buildThemes", - "generateThemeDesignerResources", - "generateResourcesJson" - ], "Correct standard tasks"); -}); - -test("Project of type 'theme-library'", (t) => { - const {graph, taskUtil} = t.context; - const builder = new ProjectBuilder({project: getMockProject("theme-library"), graph, taskUtil, parentLogger}); - - t.deepEqual(builder._taskExecutionOrder, [ - "replaceCopyright", - "replaceVersion", - "buildThemes", - "generateThemeDesignerResources", - "generateResourcesJson" - ], "Correct standard tasks"); -}); - -test("Project of type 'module'", (t) => { - const {graph, taskUtil} = t.context; - const builder = new ProjectBuilder({project: getMockProject("module"), graph, taskUtil, parentLogger}); - - t.deepEqual(builder._taskExecutionOrder, [], "Correct standard tasks"); -}); - -test("Custom tasks", (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("application"); - project.getCustomTasks = () => [ - {name: "myTask", afterTask: "minify"}, - {name: "myOtherTask", beforeTask: "replaceVersion"} - ]; - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - t.deepEqual(builder._taskExecutionOrder, [ - "escapeNonAsciiCharacters", - "replaceCopyright", - "myOtherTask", - "replaceVersion", - "minify", - "myTask", - "generateFlexChangesBundle", - "generateManifestBundle", - "generateComponentPreload", - "generateStandaloneAppBundle", - "transformBootstrapHtml", - "generateBundle", - "generateVersionInfo", - "generateCachebusterInfo", - "generateApiIndex", - "generateResourcesJson" - ], "Custom tasks are inserted correctly"); -}); - -test("Custom tasks with no standard tasks", (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("module"); - project.getCustomTasks = () => [ - {name: "myTask"}, - {name: "myOtherTask", beforeTask: "myTask"} - ]; - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - t.deepEqual(builder._taskExecutionOrder, [ - "myOtherTask", - "myTask", - ], "ApplicationBuilder is still instantiated with standard tasks"); +test.afterEach.always(() => { + sinon.restore(); }); -test("Custom tasks with no standard tasks and second task defining no before-/afterTask", (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("module"); - project.getCustomTasks = () => [ - {name: "myTask"}, - {name: "myOtherTask"} - ]; +test("Missing graph parameter", async (t) => { const err = t.throws(() => { - new ProjectBuilder({project, graph, taskUtil, parentLogger}); + new ProjectBuilder(); }); - t.is(err.message, - `Custom task definition myOtherTask of project project.b defines neither a ` + - `"beforeTask" nor an "afterTask" parameter. One must be defined.`, + t.is(err.message, "Missing parameter 'graph'", "Threw with expected error message"); }); -test("Custom tasks with both, before- and afterTask reference", (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("application"); - project.getCustomTasks = () => [ - {name: "myTask", beforeTask: "minify", afterTask: "replaceVersion"} - ]; - const err = t.throws(() => { - new ProjectBuilder({project, graph, taskUtil, parentLogger}); - }); - t.is(err.message, - `Custom task definition myTask of project project.b defines both ` + - `"beforeTask" and "afterTask" parameters. Only one must be defined.`, - "Threw with expected error message"); -}); +test("build", async (t) => { + const {graph} = t.context; -test("Custom tasks with no before-/afterTask reference", (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("application"); - project.getCustomTasks = () => [ - {name: "myTask"} - ]; - const err = t.throws(() => { - new ProjectBuilder({project, graph, taskUtil, parentLogger}); - }); - t.is(err.message, - `Custom task definition myTask of project project.b defines neither a ` + - `"beforeTask" nor an "afterTask" parameter. One must be defined.`, - "Threw with expected error message"); -}); + const builder = new ProjectBuilder(graph); -test("Custom tasks without name", (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("application"); - project.getCustomTasks = () => [ - {name: ""} - ]; - const err = t.throws(() => { - new ProjectBuilder({project, graph, taskUtil, parentLogger}); - }); - t.is(err.message, - `Missing name for custom task in configuration of project project.b`, - "Threw with expected error message"); -}); + const filterProjectStub = sinon.stub().returns(true); + const getProjectFilterStub = sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); -test("Custom task with name of standard tasks", (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("application"); - project.getCustomTasks = () => [ - {name: "replaceVersion", afterTask: "minify"} - ]; - const err = t.throws(() => { - new ProjectBuilder({project, graph, taskUtil, parentLogger}); - }); - t.is(err.message, - "Custom task configuration of project project.b references standard task replaceVersion. " + - "Only custom tasks must be provided here.", - "Threw with expected error message"); -}); - -test("Multiple custom tasks with same name", (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("application"); - project.getCustomTasks = () => [ - {name: "myTask", afterTask: "minify"}, - {name: "myTask", afterTask: "myTask"}, - {name: "myTask", afterTask: "minify"} - ]; - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - t.deepEqual(builder._taskExecutionOrder, [ - "escapeNonAsciiCharacters", - "replaceCopyright", - "replaceVersion", - "minify", - "myTask--3", - "myTask", - "myTask--2", - "generateFlexChangesBundle", - "generateManifestBundle", - "generateComponentPreload", - "generateStandaloneAppBundle", - "transformBootstrapHtml", - "generateBundle", - "generateVersionInfo", - "generateCachebusterInfo", - "generateApiIndex", - "generateResourcesJson" - ], "Custom tasks are inserted correctly"); -}); - -test("Custom tasks with unknown beforeTask", (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("application"); - project.getCustomTasks = () => [ - {name: "myTask", beforeTask: "unknownTask"} - ]; - const err = t.throws(() => { - new ProjectBuilder({project, graph, taskUtil, parentLogger}); - }); - t.is(err.message, - "Could not find task unknownTask, referenced by custom task myTask, " + - "to be scheduled for project project.b", - "Threw with expected error message"); -}); - -test("Custom tasks with unknown afterTask", (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("application"); - project.getCustomTasks = () => [ - {name: "myTask", afterTask: "unknownTask"} - ]; - const err = t.throws(() => { - new ProjectBuilder({project, graph, taskUtil, parentLogger}); - }); - t.is(err.message, - "Could not find task unknownTask, referenced by custom task myTask, " + - "to be scheduled for project project.b", - "Threw with expected error message"); -}); - -test("Custom tasks is unknown", (t) => { - const {graph, taskUtil} = t.context; - graph.getExtension.returns(undefined); - const project = getMockProject("application"); - project.getCustomTasks = () => [ - {name: "myTask", afterTask: "minify"} - ]; - const err = t.throws(() => { - new ProjectBuilder({project, graph, taskUtil, parentLogger}); - }); - t.is(err.message, - "Could not find custom task myTask, referenced by project project.b in project " + - "graph with root node graph-root", - "Threw with expected error message"); -}); - -test("Custom task is called correctly", async (t) => { - const {graph, taskUtil} = t.context; - const taskStub = sinon.stub(); - graph.getExtension.returns({ - getTask: () => taskStub, - getSpecVersion: () => "2.6" - }); - t.context.taskUtil.getInterface.returns("taskUtil interface"); - const project = getMockProject("module"); - project.getCustomTasks = () => [ - {name: "myTask", configuration: "configuration"} - ]; - - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - - t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); - t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - await builder._tasks["myTask"].task({ - workspace: "workspace", - dependencies: "dependencies" - }); - - t.is(taskStub.callCount, 1, "Task got called once"); - t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); - t.deepEqual(taskStub.getCall(0).args[0], { - workspace: "workspace", - dependencies: "dependencies", - options: { - projectName: "project.b", - projectNamespace: "project/b", - configuration: "configuration", + const requiresBuildStub = sinon.stub().returns(true); + const projectBuildContextMock = { + getTaskRunner: () => { + return { + requiresBuild: requiresBuildStub + }; }, - taskUtil: "taskUtil interface" - }, "Task got called with one argument"); - - t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], "2.6", - "taskUtil#getInterface got called with correct argument"); -}); - -test("Custom task with legacy spec version", async (t) => { - const {graph, taskUtil} = t.context; - const taskStub = sinon.stub(); - graph.getExtension.returns({ - getTask: () => taskStub, - getSpecVersion: () => "1.0" - }); - t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion - const project = getMockProject("module"); - project.getCustomTasks = () => [ - {name: "myTask", configuration: "configuration"} - ]; - - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - - t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); - t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - await builder._tasks["myTask"].task({ - workspace: "workspace", - dependencies: "dependencies" - }); - - t.is(taskStub.callCount, 1, "Task got called once"); - t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); - t.deepEqual(taskStub.getCall(0).args[0], { - workspace: "workspace", - dependencies: "dependencies", - options: { - projectName: "project.b", - projectNamespace: "project/b", - configuration: "configuration", - } - }, "Task got called with one argument"); - - t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], "1.0", - "taskUtil#getInterface got called with correct argument"); -}); - -test("Custom task with specVersion 2.7", async (t) => { - const {graph, taskUtil} = t.context; - const taskStub = sinon.stub(); - graph.getExtension.returns({ - getTask: () => taskStub, - getSpecVersion: () => "2.7" - }); - t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion - const project = getMockProject("module"); - project.getCustomTasks = () => [ - {name: "myTask", configuration: "configuration"} - ]; - - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - - t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); - t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - await builder._tasks["myTask"].task({ - workspace: "workspace", - dependencies: "dependencies" - }, "log"); - - t.is(taskStub.callCount, 1, "Task got called once"); - t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); - t.deepEqual(taskStub.getCall(0).args[0], { - workspace: "workspace", - dependencies: "dependencies", - taskName: "myTask", // specVersion 2.7 feature - log: "log", // specVersion 2.7 feature - options: { - projectName: "project.b", - projectNamespace: "project/b", - configuration: "configuration", - } - }, "Task got called with one argument"); - - t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], "2.7", - "taskUtil#getInterface got called with correct argument"); -}); - -test("Multiple custom tasks with same name are called correctly", async (t) => { - const {graph, taskUtil} = t.context; - const taskStub1 = sinon.stub(); - const taskStub2 = sinon.stub(); - const taskStub3 = sinon.stub(); - graph.getExtension.onFirstCall().returns({ - getTask: () => taskStub1, - getSpecVersion: () => "2.5" - }); - graph.getExtension.onSecondCall().returns({ - getTask: () => taskStub2, - getSpecVersion: () => "2.6" - }); - graph.getExtension.onThirdCall().returns({ - getTask: () => taskStub3, - getSpecVersion: () => "2.7" - }); - const project = getMockProject("module"); - project.getCustomTasks = () => [ - {name: "myTask", configuration: "cat"}, - {name: "myTask", afterTask: "myTask", configuration: "dog"}, - {name: "myTask", afterTask: "myTask", configuration: "bird"} - ]; - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - - t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); - t.truthy(builder._tasks["myTask--2"], "Custom tasks has been added to task map"); - t.truthy(builder._tasks["myTask--3"], "Custom tasks has been added to task map"); - t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - t.true(builder._tasks["myTask--2"].requiresDependencies, "Custom tasks requires dependencies by default"); - t.true(builder._tasks["myTask--3"].requiresDependencies, "Custom tasks requires dependencies by default"); + getProject: sinon.stub().returns(getMockProject("library")) + }; + const createRequiredBuildContextsStub = sinon.stub(builder, "_createRequiredBuildContexts") + .returns(new Map().set("project.b", projectBuildContextMock)); - t.deepEqual(builder._taskExecutionOrder, [ - "myTask", - "myTask--3", - "myTask--2", - ], "Correct order of custom tasks"); + const registerCleanupSigHooksStub = sinon.stub(builder, "_registerCleanupSigHooks").returns("cleanup sig hooks"); + const buildProjectStub = sinon.stub(builder, "_buildProject").resolves(); + const writeResultsStub = sinon.stub(builder, "_writeResults").resolves(); + const deregisterCleanupSigHooksStub = sinon.stub(builder, "_deregisterCleanupSigHooks"); + const executeCleanupTasksStub = sinon.stub(builder, "_executeCleanupTasks").resolves(); await builder.build({ - includedTasks: [], - excludedTasks: [] - }, { - workspace: "workspace", - dependencies: "dependencies" - }); - - t.is(taskStub1.callCount, 1, "Task 1 got called once"); - t.is(taskStub1.getCall(0).args.length, 1, "Task 1 got called with one argument"); - t.deepEqual(taskStub1.getCall(0).args[0], { - workspace: "workspace", - dependencies: "dependencies", - options: { - projectName: "project.b", - projectNamespace: "project/b", - configuration: "cat", - } - }, "Task 1 got called with one argument"); - - t.is(taskStub2.callCount, 1, "Task 2 got called once"); - t.is(taskStub2.getCall(0).args.length, 1, "Task 2 got called with one argument"); - t.deepEqual(taskStub2.getCall(0).args[0], { - workspace: "workspace", - dependencies: "dependencies", - options: { - projectName: "project.b", - projectNamespace: "project/b", - configuration: "dog", - } - }, "Task 2 got called with one argument"); - - t.is(taskStub3.callCount, 1, "Task 3 got called once"); - t.is(taskStub3.getCall(0).args.length, 1, "Task 3 got called with one argument"); - t.deepEqual(taskStub3.getCall(0).args[0], { - workspace: "workspace", - dependencies: "dependencies", - log: builder._taskLog, - taskName: "myTask--3", - options: { - projectName: "project.b", - projectNamespace: "project/b", - configuration: "bird", - } - }, "Task 3 got called with one argument"); - - t.is(taskUtil.getInterface.callCount, 3, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], "2.5", - "taskUtil#getInterface got called with correct argument"); - t.is(taskUtil.getInterface.getCall(1).args[0], "2.7", - "taskUtil#getInterface got called with correct argument"); - t.is(taskUtil.getInterface.getCall(2).args[0], "2.6", - "taskUtil#getInterface got called with correct argument"); -}); - -test.serial("_addTask", async (t) => { - const taskStub = sinon.stub(); - const getTaskStub = sinon.stub(require("@ui5/builder").tasks.taskRepository, "getTask").returns({ - task: taskStub - }); - const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); - - const {graph, taskUtil} = t.context; - const project = getMockProject("module"); - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - - builder._addTask("standardTask"); - - t.truthy(builder._tasks["standardTask"], "Task has been added to task map"); - t.false(builder._tasks["standardTask"].requiresDependencies, "requiresDependencies defaults to false"); - t.truthy(builder._tasks["standardTask"].task, "Task function got set correctly"); - t.deepEqual(builder._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); - - await builder._tasks["standardTask"].task({ - workspace: "workspace", - dependencies: "dependencies", - }); - - t.is(getTaskStub.callCount, 1, "taskRepository#getTask got called once"); - t.is(getTaskStub.getCall(0).args[0], "standardTask", "taskRepository#getTask got called with correct argument"); - - t.is(taskStub.callCount, 1, "Task got called once"); - t.deepEqual(taskStub.getCall(0).args[0], { - workspace: "workspace", - // No dependencies - options: { - projectName: "project.b", - projectNamespace: "project/b" - }, - taskUtil - }, "Task got called with correct arguments"); - - getTaskStub.restore(); - mock.stopAll(); -}); - -test.serial("_addTask with options", async (t) => { - const taskStub = sinon.stub(); - const getTaskStub = sinon.stub(require("@ui5/builder").tasks.taskRepository, "getTask").returns({}); - const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); - - const {graph, taskUtil} = t.context; - const project = getMockProject("module"); - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - - builder._addTask("standardTask", { - requiresDependencies: true, - options: { - myTaskOption: "cat", - }, - taskFunction: taskStub - }); - - t.truthy(builder._tasks["standardTask"], "Task has been added to task map"); - t.true(builder._tasks["standardTask"].requiresDependencies, "requiresDependencies set to true"); - t.truthy(builder._tasks["standardTask"].task, "Task function got set correctly"); - t.deepEqual(builder._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); - - await builder._tasks["standardTask"].task({ - workspace: "workspace", - dependencies: "dependencies", - }); - - t.is(getTaskStub.callCount, 0, "taskRepository#getTask did not get called"); - - t.is(taskStub.callCount, 1, "Task got called once"); - t.deepEqual(taskStub.getCall(0).args[0], { - workspace: "workspace", - dependencies: "dependencies", - options: { - projectName: "project.b", - projectNamespace: "project/b", - myTaskOption: "cat" - }, - taskUtil - }, "Task got called with correct arguments"); - - getTaskStub.restore(); - mock.stopAll(); -}); - -test("_addTask: Duplicate task", async (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("module"); - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - - builder._addTask("standardTask", { - taskFunction: () => {} - }); - - const err = t.throws(() => { - builder._addTask("standardTask", { - taskFunction: () => {} - }); - }); - t.is(err.message, "Failed to add duplicate task standardTask for project project.b", - "Threw with expected error message"); -}); - -test("_addTask: Task already added to execution order", async (t) => { - const {graph, taskUtil} = t.context; - const project = getMockProject("module"); - const builder = new ProjectBuilder({project, graph, taskUtil, parentLogger}); - - builder._taskExecutionOrder.push("standardTask"); - const err = t.throws(() => { - builder._addTask("standardTask", { - taskFunction: () => {} - }); - }); - t.is(err.message, - "Failed to add task standardTask for project project.b. It has already been scheduled for execution", - "Threw with expected error message"); + destPath: "dest/path", + includedDependencies: ["dep a"], + excludedDependencies: ["dep b"] + }); + + t.is(getProjectFilterStub.callCount, 1, "_getProjectFilter got called once"); + t.deepEqual(getProjectFilterStub.getCall(0).args[0], { + explicitIncludes: ["dep a"], + explicitExcludes: ["dep b"], + complexDependencyIncludes: undefined + }, "_getProjectFilter got called with correct arguments"); + + t.is(createRequiredBuildContextsStub.callCount, 1, "_createRequiredBuildContexts got called once"); + t.deepEqual(createRequiredBuildContextsStub.getCall(0).args[0], ["project.b"], + "_createRequiredBuildContexts got called with correct arguments"); + + t.is(requiresBuildStub.callCount, 1, "TaskRunner#requiresBuild got called once"); + t.is(registerCleanupSigHooksStub.callCount, 1, "_registerCleanupSigHooksStub got called once"); + + t.is(buildProjectStub.callCount, 1, "_buildProject got called once"); + t.is(buildProjectStub.getCall(0).args[0], projectBuildContextMock, + "_buildProject got called with correct arguments"); + + t.is(writeResultsStub.callCount, 1, "_writeResults got called once"); + t.is(writeResultsStub.getCall(0).args[0], projectBuildContextMock, + "_writeResults got called with correct first argument"); + t.is(writeResultsStub.getCall(0).args[1]._fsBasePath, path.resolve("dest/path"), + "_writeResults got called with correct second argument"); + + t.is(deregisterCleanupSigHooksStub.callCount, 1, "_deregisterCleanupSigHooks got called once"); + t.is(deregisterCleanupSigHooksStub.getCall(0).args[0], "cleanup sig hooks", + "_deregisterCleanupSigHooks got called with correct arguments"); + t.is(executeCleanupTasksStub.callCount, 1, "_executeCleanupTasksStub got called once"); }); diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js new file mode 100644 index 00000000000..ea40a2edb2d --- /dev/null +++ b/packages/project/test/lib/build/TaskRunner.js @@ -0,0 +1,709 @@ +const test = require("ava"); +const sinon = require("sinon"); +const mock = require("mock-require"); + +const parentLogger = require("@ui5/logger").getGroupLogger("mygroup"); + +const TaskRunner = require("../../../lib/build/TaskRunner"); + +function noop() {} +function emptyarray() { + return []; +} + +const buildConfig = { + selfContained: false, + jsdoc: false, + includedTasks: [], + excludedTasks: [] +}; + +function getMockProject(type) { + return { + getName: () => "project.b", + getNamespace: () => "project/b", + getType: () => type, + getPropertiesFileSourceEncoding: noop, + getCopyright: noop, + getVersion: noop, + getSpecVersion: () => "0.1", + getMinificationExcludes: emptyarray, + getComponentPreloadPaths: () => [ + "project/b/**/Component.js" + ], + getComponentPreloadNamespaces: emptyarray, + getComponentPreloadExcludes: emptyarray, + getLibraryPreloadExcludes: emptyarray, + getBundles: () => [{ + bundleDefinition: { + name: "project/b/sectionsA/customBundle.js", + defaultFileTypes: [".js"], + sections: [{ + mode: "preload", + filters: [ + "project/b/sectionsA/", + "!project/b/sectionsA/section2**", + ] + }], + sort: true + }, + bundleOptions: { + optimize: true, + usePredefinedCalls: true + } + }], + getCachebusterSignatureType: noop, + getCustomTasks: () => [], + }; +} + +test.beforeEach((t) => { + t.context.taskUtil = { + isRootProject: sinon.stub().returns(true), + getBuildOption: sinon.stub(), + getInterface: sinon.stub() + }; + + t.context.graph = { + getRoot: () => { + return { + getName: () => "graph-root" + }; + }, + getExtension: sinon.stub().returns("a custom task") + }; +}); + +test("Project of type 'application'", (t) => { + const {graph, taskUtil} = t.context; + const builder = new TaskRunner({ + project: getMockProject("application"), graph, taskUtil, parentLogger, buildConfig + }); + t.deepEqual(builder._taskExecutionOrder, [ + "escapeNonAsciiCharacters", + "replaceCopyright", + "replaceVersion", + "minify", + "generateFlexChangesBundle", + "generateManifestBundle", + "generateComponentPreload", + "generateStandaloneAppBundle", + "transformBootstrapHtml", + "generateBundle", + "generateVersionInfo", + "generateCachebusterInfo", + "generateApiIndex", + "generateResourcesJson" + ], "Correct standard tasks"); +}); + +test("Project of type 'library'", (t) => { + const {graph, taskUtil} = t.context; + const builder = new TaskRunner({ + project: getMockProject("library"), graph, taskUtil, parentLogger, buildConfig + }); + + t.deepEqual(builder._taskExecutionOrder, [ + "escapeNonAsciiCharacters", + "replaceCopyright", + "replaceVersion", + "replaceBuildtime", + "generateJsdoc", + "executeJsdocSdkTransformation", + "minify", + "generateLibraryManifest", + "generateManifestBundle", + "generateComponentPreload", + "generateLibraryPreload", + "generateBundle", + "buildThemes", + "generateThemeDesignerResources", + "generateResourcesJson" + ], "Correct standard tasks"); +}); + +test("Project of type 'theme-library'", (t) => { + const {graph, taskUtil} = t.context; + const builder = new TaskRunner({ + project: getMockProject("theme-library"), graph, taskUtil, parentLogger, buildConfig + }); + + t.deepEqual(builder._taskExecutionOrder, [ + "replaceCopyright", + "replaceVersion", + "buildThemes", + "generateThemeDesignerResources", + "generateResourcesJson" + ], "Correct standard tasks"); +}); + +test("Project of type 'module'", (t) => { + const {graph, taskUtil} = t.context; + const builder = new TaskRunner({ + project: getMockProject("module"), graph, taskUtil, parentLogger, buildConfig + }); + + t.deepEqual(builder._taskExecutionOrder, [], "Correct standard tasks"); +}); + +test("Custom tasks", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", afterTask: "minify"}, + {name: "myOtherTask", beforeTask: "replaceVersion"} + ]; + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + t.deepEqual(builder._taskExecutionOrder, [ + "escapeNonAsciiCharacters", + "replaceCopyright", + "myOtherTask", + "replaceVersion", + "minify", + "myTask", + "generateFlexChangesBundle", + "generateManifestBundle", + "generateComponentPreload", + "generateStandaloneAppBundle", + "transformBootstrapHtml", + "generateBundle", + "generateVersionInfo", + "generateCachebusterInfo", + "generateApiIndex", + "generateResourcesJson" + ], "Custom tasks are inserted correctly"); +}); + +test("Custom tasks with no standard tasks", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask"}, + {name: "myOtherTask", beforeTask: "myTask"} + ]; + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + t.deepEqual(builder._taskExecutionOrder, [ + "myOtherTask", + "myTask", + ], "ApplicationBuilder is still instantiated with standard tasks"); +}); + +test("Custom tasks with no standard tasks and second task defining no before-/afterTask", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask"}, + {name: "myOtherTask"} + ]; + const err = t.throws(() => { + new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + }); + t.is(err.message, + `Custom task definition myOtherTask of project project.b defines neither a ` + + `"beforeTask" nor an "afterTask" parameter. One must be defined.`, + "Threw with expected error message"); +}); + +test("Custom tasks with both, before- and afterTask reference", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", beforeTask: "minify", afterTask: "replaceVersion"} + ]; + const err = t.throws(() => { + new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + }); + t.is(err.message, + `Custom task definition myTask of project project.b defines both ` + + `"beforeTask" and "afterTask" parameters. Only one must be defined.`, + "Threw with expected error message"); +}); + +test("Custom tasks with no before-/afterTask reference", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask"} + ]; + const err = t.throws(() => { + new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + }); + t.is(err.message, + `Custom task definition myTask of project project.b defines neither a ` + + `"beforeTask" nor an "afterTask" parameter. One must be defined.`, + "Threw with expected error message"); +}); + +test("Custom tasks without name", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: ""} + ]; + const err = t.throws(() => { + new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + }); + t.is(err.message, + `Missing name for custom task in configuration of project project.b`, + "Threw with expected error message"); +}); + +test("Custom task with name of standard tasks", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "replaceVersion", afterTask: "minify"} + ]; + const err = t.throws(() => { + new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + }); + t.is(err.message, + "Custom task configuration of project project.b references standard task replaceVersion. " + + "Only custom tasks must be provided here.", + "Threw with expected error message"); +}); + +test("Multiple custom tasks with same name", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", afterTask: "minify"}, + {name: "myTask", afterTask: "myTask"}, + {name: "myTask", afterTask: "minify"} + ]; + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + t.deepEqual(builder._taskExecutionOrder, [ + "escapeNonAsciiCharacters", + "replaceCopyright", + "replaceVersion", + "minify", + "myTask--3", + "myTask", + "myTask--2", + "generateFlexChangesBundle", + "generateManifestBundle", + "generateComponentPreload", + "generateStandaloneAppBundle", + "transformBootstrapHtml", + "generateBundle", + "generateVersionInfo", + "generateCachebusterInfo", + "generateApiIndex", + "generateResourcesJson" + ], "Custom tasks are inserted correctly"); +}); + +test("Custom tasks with unknown beforeTask", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", beforeTask: "unknownTask"} + ]; + const err = t.throws(() => { + new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + }); + t.is(err.message, + "Could not find task unknownTask, referenced by custom task myTask, " + + "to be scheduled for project project.b", + "Threw with expected error message"); +}); + +test("Custom tasks with unknown afterTask", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", afterTask: "unknownTask"} + ]; + const err = t.throws(() => { + new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + }); + t.is(err.message, + "Could not find task unknownTask, referenced by custom task myTask, " + + "to be scheduled for project project.b", + "Threw with expected error message"); +}); + +test("Custom tasks is unknown", (t) => { + const {graph, taskUtil} = t.context; + graph.getExtension.returns(undefined); + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", afterTask: "minify"} + ]; + const err = t.throws(() => { + new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + }); + t.is(err.message, + "Could not find custom task myTask, referenced by project project.b in project " + + "graph with root node graph-root", + "Threw with expected error message"); +}); + +test("Custom task is called correctly", async (t) => { + const {graph, taskUtil} = t.context; + const taskStub = sinon.stub(); + graph.getExtension.returns({ + getTask: () => taskStub, + getSpecVersion: () => "2.6" + }); + t.context.taskUtil.getInterface.returns("taskUtil interface"); + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "configuration"} + ]; + + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + + t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); + t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + await builder._tasks["myTask"].task({ + workspace: "workspace", + dependencies: "dependencies" + }); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "configuration", + }, + taskUtil: "taskUtil interface" + }, "Task got called with one argument"); + + t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); + t.is(taskUtil.getInterface.getCall(0).args[0], "2.6", + "taskUtil#getInterface got called with correct argument"); +}); + +test("Custom task with legacy spec version", async (t) => { + const {graph, taskUtil} = t.context; + const taskStub = sinon.stub(); + graph.getExtension.returns({ + getTask: () => taskStub, + getSpecVersion: () => "1.0" + }); + t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "configuration"} + ]; + + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + + t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); + t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + await builder._tasks["myTask"].task({ + workspace: "workspace", + dependencies: "dependencies" + }); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "configuration", + } + }, "Task got called with one argument"); + + t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); + t.is(taskUtil.getInterface.getCall(0).args[0], "1.0", + "taskUtil#getInterface got called with correct argument"); +}); + +test("Custom task with specVersion 2.7", async (t) => { + const {graph, taskUtil} = t.context; + const taskStub = sinon.stub(); + graph.getExtension.returns({ + getTask: () => taskStub, + getSpecVersion: () => "2.7" + }); + t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "configuration"} + ]; + + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + + t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); + t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + await builder._tasks["myTask"].task({ + workspace: "workspace", + dependencies: "dependencies" + }, "log"); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + taskName: "myTask", // specVersion 2.7 feature + log: "log", // specVersion 2.7 feature + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "configuration", + } + }, "Task got called with one argument"); + + t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); + t.is(taskUtil.getInterface.getCall(0).args[0], "2.7", + "taskUtil#getInterface got called with correct argument"); +}); + +test("Multiple custom tasks with same name are called correctly", async (t) => { + const {graph, taskUtil} = t.context; + const taskStub1 = sinon.stub(); + const taskStub2 = sinon.stub(); + const taskStub3 = sinon.stub(); + graph.getExtension.onFirstCall().returns({ + getTask: () => taskStub1, + getSpecVersion: () => "2.5" + }); + graph.getExtension.onSecondCall().returns({ + getTask: () => taskStub2, + getSpecVersion: () => "2.6" + }); + graph.getExtension.onThirdCall().returns({ + getTask: () => taskStub3, + getSpecVersion: () => "2.7" + }); + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "cat"}, + {name: "myTask", afterTask: "myTask", configuration: "dog"}, + {name: "myTask", afterTask: "myTask", configuration: "bird"} + ]; + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + + t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); + t.truthy(builder._tasks["myTask--2"], "Custom tasks has been added to task map"); + t.truthy(builder._tasks["myTask--3"], "Custom tasks has been added to task map"); + t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + t.true(builder._tasks["myTask--2"].requiresDependencies, "Custom tasks requires dependencies by default"); + t.true(builder._tasks["myTask--3"].requiresDependencies, "Custom tasks requires dependencies by default"); + + // "Last in is the first out" + t.deepEqual(builder._taskExecutionOrder, [ + "myTask", + "myTask--3", + "myTask--2", + ], "Correct order of custom tasks"); + + await builder.runTasks({ + workspace: "workspace", + dependencies: "dependencies" + }); + + t.is(taskStub1.callCount, 1, "Task 1 got called once"); + t.is(taskStub1.getCall(0).args.length, 1, "Task 1 got called with one argument"); + t.deepEqual(taskStub1.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "cat", + } + }, "Task 1 got called with one argument"); + + t.is(taskStub2.callCount, 1, "Task 2 got called once"); + t.is(taskStub2.getCall(0).args.length, 1, "Task 2 got called with one argument"); + t.deepEqual(taskStub2.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "dog", + } + }, "Task 2 got called with one argument"); + + t.is(taskStub3.callCount, 1, "Task 3 got called once"); + t.is(taskStub3.getCall(0).args.length, 1, "Task 3 got called with one argument"); + t.deepEqual(taskStub3.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + log: builder._taskLog, + taskName: "myTask--3", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "bird", + } + }, "Task 3 got called with one argument"); + + t.is(taskUtil.getInterface.callCount, 3, "taskUtil#getInterface got called once"); + t.is(taskUtil.getInterface.getCall(0).args[0], "2.5", + "taskUtil#getInterface got called with correct argument"); + t.is(taskUtil.getInterface.getCall(1).args[0], "2.7", + "taskUtil#getInterface got called with correct argument"); + t.is(taskUtil.getInterface.getCall(2).args[0], "2.6", + "taskUtil#getInterface got called with correct argument"); +}); + +test.serial("_addTask", async (t) => { + const taskStub = sinon.stub(); + const getTaskStub = sinon.stub(require("@ui5/builder").tasks.taskRepository, "getTask").returns({ + task: taskStub + }); + const TaskRunner = mock.reRequire("../../../lib/build/TaskRunner"); + + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + + builder._addTask("standardTask"); + + t.truthy(builder._tasks["standardTask"], "Task has been added to task map"); + t.false(builder._tasks["standardTask"].requiresDependencies, "requiresDependencies defaults to false"); + t.truthy(builder._tasks["standardTask"].task, "Task function got set correctly"); + t.deepEqual(builder._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); + + await builder._tasks["standardTask"].task({ + workspace: "workspace", + dependencies: "dependencies", + }); + + t.is(getTaskStub.callCount, 1, "taskRepository#getTask got called once"); + t.is(getTaskStub.getCall(0).args[0], "standardTask", "taskRepository#getTask got called with correct argument"); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + // No dependencies + options: { + projectName: "project.b", + projectNamespace: "project/b" + }, + taskUtil + }, "Task got called with correct arguments"); + + getTaskStub.restore(); + mock.stopAll(); +}); + +test.serial("_addTask with options", async (t) => { + const taskStub = sinon.stub(); + const getTaskStub = sinon.stub(require("@ui5/builder").tasks.taskRepository, "getTask").returns({}); + const TaskRunner = mock.reRequire("../../../lib/build/TaskRunner"); + + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + + builder._addTask("standardTask", { + requiresDependencies: true, + options: { + myTaskOption: "cat", + }, + taskFunction: taskStub + }); + + t.truthy(builder._tasks["standardTask"], "Task has been added to task map"); + t.true(builder._tasks["standardTask"].requiresDependencies, "requiresDependencies set to true"); + t.truthy(builder._tasks["standardTask"].task, "Task function got set correctly"); + t.deepEqual(builder._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); + + await builder._tasks["standardTask"].task({ + workspace: "workspace", + dependencies: "dependencies", + }); + + t.is(getTaskStub.callCount, 0, "taskRepository#getTask did not get called"); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + myTaskOption: "cat" + }, + taskUtil + }, "Task got called with correct arguments"); + + getTaskStub.restore(); + mock.stopAll(); +}); + +test("_addTask: Duplicate task", async (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + + builder._addTask("standardTask", { + taskFunction: () => {} + }); + + const err = t.throws(() => { + builder._addTask("standardTask", { + taskFunction: () => {} + }); + }); + t.is(err.message, "Failed to add duplicate task standardTask for project project.b", + "Threw with expected error message"); +}); + +test("_addTask: Task already added to execution order", async (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + const builder = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + + builder._taskExecutionOrder.push("standardTask"); + const err = t.throws(() => { + builder._addTask("standardTask", { + taskFunction: () => {} + }); + }); + t.is(err.message, + "Failed to add task standardTask for project project.b. It has already been scheduled for execution", + "Threw with expected error message"); +}); diff --git a/packages/project/test/lib/build/helpers/BuildContext.js b/packages/project/test/lib/build/helpers/BuildContext.js index eb0e793a8ac..6befb0d8c98 100644 --- a/packages/project/test/lib/build/helpers/BuildContext.js +++ b/packages/project/test/lib/build/helpers/BuildContext.js @@ -11,7 +11,7 @@ const BuildContext = require("../../../../lib/build/helpers/BuildContext"); test("Missing parameters", (t) => { const error = t.throws(() => { - new BuildContext({}); + new BuildContext(); }); t.is(error.message, `Missing parameter 'graph'`, "Threw with expected error message"); @@ -19,42 +19,84 @@ test("Missing parameters", (t) => { test("getRootProject", (t) => { const buildContext = new BuildContext({ - graph: { - getRoot: () => "pony" - } + getRoot: () => "pony" }); t.is(buildContext.getRootProject(), "pony", "Returned correct value"); }); -test("getProject", (t) => { - const getProjectStub = sinon.stub().returns("pony"); + +test("getGraph", (t) => { + const buildContext = new BuildContext("graph"); + + t.is(buildContext.getGraph(), "graph", "Returned correct value"); +}); + +test("getBuildConfig: Default values", (t) => { + const buildContext = new BuildContext("graph"); + + t.deepEqual(buildContext.getBuildConfig(), { + selfContained: false, + cssVariables: false, + jsdoc: false, + createBuildManifest: false, + includedTasks: [], + excludedTasks: [], + }, "Returned correct value"); +}); + +test("getBuildConfig: Custom values", (t) => { const buildContext = new BuildContext({ - graph: { - getProject: getProjectStub + getRoot: () => { + return { + getType: () => "library" + }; } + }, { + selfContained: true, + cssVariables: true, + jsdoc: true, + createBuildManifest: true, + includedTasks: ["included tasks"], + excludedTasks: ["excluded tasks"], }); - t.is(buildContext.getProject("pony project"), "pony", "Returned correct value"); - t.is(getProjectStub.getCall(0).args[0], "pony project", "getProject got called with correct argument"); + t.deepEqual(buildContext.getBuildConfig(), { + selfContained: true, + cssVariables: true, + jsdoc: true, + createBuildManifest: true, + includedTasks: ["included tasks"], + excludedTasks: ["excluded tasks"], + }, "Returned correct value"); }); -test("getBuildOption", (t) => { - const buildContext = new BuildContext({ - graph: "graph", - options: { - a: true, - b: "Pony", - c: 235, - d: { - d1: "Bee" +test("createBuildManifest not supported", (t) => { + const err = t.throws(() => { + new BuildContext({ + getRoot: () => { + return { + getType: () => "pony" + }; } - } + }, { + createBuildManifest: true + }); + }); + t.is(err.message, + "Build manifest creation is currently not supported for projects of type pony", + "Threw with expected error message"); +}); + +test("getBuildOption", (t) => { + const buildContext = new BuildContext("graph", { + cssVariables: "value", }); - t.is(buildContext.getOption("a"), true, "Returned 'boolean' value is correct"); - t.is(buildContext.getOption("b"), "Pony", "Returned 'String' value is correct"); - t.is(buildContext.getOption("c"), 235, "Returned 'Number' value is correct"); - t.deepEqual(buildContext.getOption("d"), {d1: "Bee"}, "Returned 'object' value is correct"); + t.is(buildContext.getOption("cssVariables"), "value", + "Returned correct value for build configuration 'cssVariables'"); + t.is(buildContext.getOption("selfContained"), undefined, + "Returned undefined for build configuration 'selfContained' " + + "(not exposed as buold option)"); }); test.serial("createProjectContext", (t) => { @@ -68,9 +110,8 @@ test.serial("createProjectContext", (t) => { mock("../../../../lib/build/helpers/ProjectBuildContext", DummyProjectContext); const BuildContext = mock.reRequire("../../../../lib/build/helpers/BuildContext"); - const testBuildContext = new BuildContext({ - graph: "graph" - }); + const testBuildContext = new BuildContext("graph" + ); const projectContext = testBuildContext.createProjectContext({ project: "project", @@ -84,9 +125,8 @@ test.serial("createProjectContext", (t) => { }); test("executeCleanupTasks", async (t) => { - const buildContext = new BuildContext({ - graph: "graph" - }); + const buildContext = new BuildContext("graph" + ); const executeCleanupTasks = sinon.stub().resolves(); diff --git a/packages/project/test/lib/build/helpers/ProjectBuildContext.js b/packages/project/test/lib/build/helpers/ProjectBuildContext.js index 4450f4971b4..957808b1ce0 100644 --- a/packages/project/test/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/test/lib/build/helpers/ProjectBuildContext.js @@ -204,3 +204,66 @@ test("getResourceTagCollection: Assigns project to resource if necessary", (t) = t.is(setProjectStub.callCount, 1, "setProject got called once"); t.is(setProjectStub.getCall(0).args[0], fakeProject, "setProject got called with correct argument"); }); + +test("getProject", (t) => { + const getProjectStub = sinon.stub().returns("pony"); + const projectBuildContext = new ProjectBuildContext({ + buildContext: { + getGraph: () => { + return { + getProject: getProjectStub + }; + } + }, + project: "project", + log: "log" + }); + + t.is(projectBuildContext.getProject("pony project"), "pony", "Returned correct value"); + t.is(getProjectStub.getCall(0).args[0], "pony project", "getProject got called with correct argument"); +}); + +test("getTaskUtil", (t) => { + const projectBuildContext = new ProjectBuildContext({ + buildContext: {}, + project: "project", + log: "log" + }); + + t.truthy(projectBuildContext.getTaskUtil(), "Returned a TaskUtil instance"); + t.is(projectBuildContext.getTaskUtil(), projectBuildContext.getTaskUtil(), "Caches TaskUtil instance"); +}); + +test.serial("getTaskRunner", (t) => { + class DummyTaskRunner { + constructor(params) { + t.deepEqual(params, { + graph: "graph", + project: "project", + taskUtil: "taskUtil", + parentLogger: "log", + buildConfig: "buildConfig", + }, "Created TaskRunner instance with correct parameters"); + } + } + mock("../../../../lib/build/TaskRunner", DummyTaskRunner); + + const ProjectBuildContext = mock.reRequire("../../../../lib/build/helpers/ProjectBuildContext"); + + const projectBuildContext = new ProjectBuildContext({ + buildContext: { + getGraph: () => "graph", + getBuildConfig: () => "buildConfig" + }, + project: "project", + log: "log", + }); + + sinon.stub(projectBuildContext, "getTaskUtil").returns("taskUtil"); + + t.true(projectBuildContext.getTaskRunner() instanceof DummyTaskRunner, + "Returned a TaskRunner instance"); + t.is(projectBuildContext.getTaskRunner(), projectBuildContext.getTaskRunner(), + "Caches TaskRunner instance"); +}); + diff --git a/packages/project/test/lib/build/helpers/composeTaskList.js b/packages/project/test/lib/build/helpers/composeTaskList.js index c78512aed31..7ba4a62f4c0 100644 --- a/packages/project/test/lib/build/helpers/composeTaskList.js +++ b/packages/project/test/lib/build/helpers/composeTaskList.js @@ -204,13 +204,7 @@ const allTasks = [ "generateLibraryPreload", ], (t) => { const {log} = t.context; - t.is(log.warn.callCount, 2); - t.deepEqual(log.warn.getCall(0).args, [ - "Unable to include task 'foo': Task is unknown" - ]); - t.deepEqual(log.warn.getCall(1).args, [ - "Unable to include task 'bar': Task is unknown" - ]); + t.is(log.warn.callCount, 0); } ], [ @@ -234,13 +228,7 @@ const allTasks = [ "generateLibraryPreload", ], (t) => { const {log} = t.context; - t.is(log.warn.callCount, 2); - t.deepEqual(log.warn.getCall(0).args, [ - "Unable to exclude task 'foo': Task is unknown" - ]); - t.deepEqual(log.warn.getCall(1).args, [ - "Unable to exclude task 'bar': Task is unknown" - ]); + t.is(log.warn.callCount, 0); } ], ].forEach(([testTitle, args, expectedTaskList, assertCb]) => { From 008d9c25516e77a379a945c647de85a74e34c537 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 10 Jul 2022 21:29:49 +0200 Subject: [PATCH 0639/1272] [ui5-project][INTERNAL] package.json: Further increase coverage thresholds --- packages/project/package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package.json b/packages/project/package.json index 84c7f5acdf4..7e74157573f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -72,10 +72,10 @@ "jsdoc-plugin.js" ], "check-coverage": true, - "statements": 85, - "branches": 75, + "statements": 90, + "branches": 80, "functions": 85, - "lines": 85, + "lines": 90, "watermarks": { "statements": [ 70, From 142c9cfddda5d1e23a10a04d3926d6aeba00a568 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 11 Jul 2022 19:08:17 +0200 Subject: [PATCH 0640/1272] [ui5-project][INTERNAL] Extend specification tests --- .../lib/specifications/ComponentProject.js | 7 -- .../project/lib/specifications/Extension.js | 2 +- .../project/lib/specifications/Project.js | 3 +- .../lib/specifications/types/Library.js | 7 ++ .../types/extensions/ProjectShim.js | 6 +- .../types/extensions/ServerMiddleware.js | 2 +- .../specifications/types/extensions/Task.js | 2 +- .../extension.a/lib/extensionModule.js | 1 + .../lib/build/definitions/themeLibrary.js | 1 - .../lib/specifications/ComponentProject.js | 86 ++++++++++++++++- .../test/lib/specifications/Project.js | 95 ++++++++++++++++++- .../test/lib/specifications/types/Library.js | 18 ++++ .../types/extensions/ProjectShim.js | 87 +++++++++++++++++ .../types/extensions/ServerMiddleware.js | 52 ++++++++++ .../specifications/types/extensions/Task.js | 52 ++++++++++ 15 files changed, 400 insertions(+), 21 deletions(-) create mode 100644 packages/project/test/fixtures/extension.a/lib/extensionModule.js create mode 100644 packages/project/test/lib/specifications/types/extensions/ProjectShim.js create mode 100644 packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js create mode 100644 packages/project/test/lib/specifications/types/extensions/Task.js diff --git a/packages/project/lib/specifications/ComponentProject.js b/packages/project/lib/specifications/ComponentProject.js index 47a58552639..a3b140742c6 100644 --- a/packages/project/lib/specifications/ComponentProject.js +++ b/packages/project/lib/specifications/ComponentProject.js @@ -57,13 +57,6 @@ class ComponentProject extends Project { this._config.builder.componentPreload.excludes || []; } - /** - * @private - */ - getJsdocExcludes() { - return this._config.builder && this._config.builder.jsdoc && this._config.builder.jsdoc.excludes || []; - } - /** * @private */ diff --git a/packages/project/lib/specifications/Extension.js b/packages/project/lib/specifications/Extension.js index 8921dac949c..76c5b38f19f 100644 --- a/packages/project/lib/specifications/Extension.js +++ b/packages/project/lib/specifications/Extension.js @@ -22,7 +22,7 @@ class Extension extends Specification { await this._validateConfig(); } catch (err) { throw new Error( - `Failed to validate configuration of ${this.getType()} extension ${this.getName()}:` + + `Failed to validate configuration of ${this.getType()} extension ${this.getName()}: ` + err.message); } diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index c1f9575ee7a..b15ab444f6e 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -1,6 +1,5 @@ const Specification = require("./Specification"); - /** * Project * @@ -92,7 +91,7 @@ class Project extends Specification { } getCustomMiddleware() { - return this._config.builder?.customMiddleware || []; + return this._config.server?.customMiddleware || []; } getServerSettings() { diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index 4e38bdf7e03..bf4a9ffe1a3 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -30,6 +30,13 @@ class Library extends ComponentProject { this._config.builder.libraryPreload.excludes || []; } + /** + * @private + */ + getJsdocExcludes() { + return this._config.builder && this._config.builder.jsdoc && this._config.builder.jsdoc.excludes || []; + } + getSourcePath() { return fsPath.join(this.getPath(), this._srcPath); } diff --git a/packages/project/lib/specifications/types/extensions/ProjectShim.js b/packages/project/lib/specifications/types/extensions/ProjectShim.js index f3012b2436f..f28dfc9aa78 100644 --- a/packages/project/lib/specifications/types/extensions/ProjectShim.js +++ b/packages/project/lib/specifications/types/extensions/ProjectShim.js @@ -11,21 +11,21 @@ class ProjectShim extends Extension { * @public */ getDependencyShims() { - return this._config.shims.dependencies; + return this._config.shims.dependencies || {}; } /** * @public */ getConfigurationShims() { - return this._config.shims.configurations; + return this._config.shims.configurations || {}; } /** * @public */ getCollectionShims() { - return this._config.shims.collections; + return this._config.shims.collections || {}; } /* === Internals === */ diff --git a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js index 81e269ae6df..56503266723 100644 --- a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js @@ -20,7 +20,7 @@ class ServerMiddleware extends Extension { */ async _validateConfig() { if (/--\d$/.test(this.getName())) { - throw new Error(`Server middleware name must not end with "--"`); + throw new Error(`Server middleware name must not end with '--'`); } } } diff --git a/packages/project/lib/specifications/types/extensions/Task.js b/packages/project/lib/specifications/types/extensions/Task.js index ee63e3283f1..98a9fafbd50 100644 --- a/packages/project/lib/specifications/types/extensions/Task.js +++ b/packages/project/lib/specifications/types/extensions/Task.js @@ -20,7 +20,7 @@ class Task extends Extension { */ async _validateConfig() { if (/--\d$/.test(this.getName())) { - throw new Error(`Task name must not end with "--"`); + throw new Error(`Task name must not end with '--'`); } } } diff --git a/packages/project/test/fixtures/extension.a/lib/extensionModule.js b/packages/project/test/fixtures/extension.a/lib/extensionModule.js new file mode 100644 index 00000000000..48a07dca85a --- /dev/null +++ b/packages/project/test/fixtures/extension.a/lib/extensionModule.js @@ -0,0 +1 @@ +module.exports = "extension module"; diff --git a/packages/project/test/lib/build/definitions/themeLibrary.js b/packages/project/test/lib/build/definitions/themeLibrary.js index 1029960319d..1a9990a86b5 100644 --- a/packages/project/test/lib/build/definitions/themeLibrary.js +++ b/packages/project/test/lib/build/definitions/themeLibrary.js @@ -22,7 +22,6 @@ function getMockProject() { getLibraryPreloadExcludes: emptyarray, getBundles: emptyarray, getCachebusterSignatureType: () => "PONY", - getJsdocExcludes: () => ["**.html"], getCustomTasks: emptyarray, }; } diff --git a/packages/project/test/lib/specifications/ComponentProject.js b/packages/project/test/lib/specifications/ComponentProject.js index ab2d4f42653..61e2e4807eb 100644 --- a/packages/project/test/lib/specifications/ComponentProject.js +++ b/packages/project/test/lib/specifications/ComponentProject.js @@ -13,7 +13,7 @@ const basicProjectInput = { version: "1.0.0", modulePath: applicationAPath, configuration: { - specVersion: "2.3", + specVersion: "2.6", kind: "project", type: "application", metadata: {name: "application.a"} @@ -24,13 +24,25 @@ test.afterEach.always((t) => { sinon.restore(); }); -test("getPropertiesFileSourceEncoding: Default", async (t) => { +test("Default getters", async (t) => { const project = await Specification.create(basicProjectInput); t.is(project.getPropertiesFileSourceEncoding(), "UTF-8", "Returned correct default propertiesFileSourceEncoding configuration"); + t.is(project.getCopyright(), undefined, + "Returned correct default copyright configuration"); + t.deepEqual(project.getComponentPreloadPaths(), [], + "Returned correct default componentPreloadPaths configuration"); + t.deepEqual(project.getComponentPreloadNamespaces(), [], + "Returned correct default componentPreloadNamespaces configuration"); + t.deepEqual(project.getComponentPreloadExcludes(), [], + "Returned correct default componentPreloadExcludes configuration"); + t.deepEqual(project.getMinificationExcludes(), [], + "Returned correct default minificationExcludes configuration"); + t.deepEqual(project.getBundles(), [], + "Returned correct default bundles configuration"); }); -test("getPropertiesFileSourceEncoding: Configuration", async (t) => { +test("getPropertiesFileSourceEncoding", async (t) => { const customProjectInput = clone(basicProjectInput); customProjectInput.configuration.resources = { configuration: { @@ -39,7 +51,73 @@ test("getPropertiesFileSourceEncoding: Configuration", async (t) => { }; const project = await Specification.create(customProjectInput); t.is(project.getPropertiesFileSourceEncoding(), "ISO-8859-1", - "Returned correct default propertiesFileSourceEncoding configuration"); + "Returned correct propertiesFileSourceEncoding configuration"); +}); + +test("getCopyright", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.metadata.copyright = "copyright"; + const project = await Specification.create(customProjectInput); + t.is(project.getCopyright(), "copyright", + "Returned correct copyright configuration"); +}); + +test("getComponentPreloadPaths", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.builder = { + componentPreload: { + paths: ["paths"] + } + }; + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getComponentPreloadPaths(), ["paths"], + "Returned correct componentPreloadPaths configuration"); +}); + +test("getComponentPreloadNamespaces", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.builder = { + componentPreload: { + namespaces: ["namespaces"] + } + }; + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getComponentPreloadNamespaces(), ["namespaces"], + "Returned correct componentPreloadNamespaces configuration"); +}); + +test("getComponentPreloadExcludes", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.builder = { + componentPreload: { + excludes: ["excludes"] + } + }; + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getComponentPreloadExcludes(), ["excludes"], + "Returned correct componentPreloadExcludes configuration"); +}); + +test("getMinificationExcludes", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.builder = { + minification: { + excludes: ["excludes"] + } + }; + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getMinificationExcludes(), ["excludes"], + "Returned correct minificationExcludes configuration"); +}); + +test("getBundles", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.builder = { + bundles: [{bundleDefinition: {name: "bundle"}}] + }; + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getBundles(), [{bundleDefinition: {name: "bundle"}}], + "Returned correct bundles configuration"); }); test("hasMavenPlaceholder: has maven placeholder", async (t) => { diff --git a/packages/project/test/lib/specifications/Project.js b/packages/project/test/lib/specifications/Project.js index a8917234aa2..35d8bb7c7d9 100644 --- a/packages/project/test/lib/specifications/Project.js +++ b/packages/project/test/lib/specifications/Project.js @@ -12,7 +12,7 @@ const basicProjectInput = { version: "1.0.0", modulePath: applicationAPath, configuration: { - specVersion: "2.3", + specVersion: "2.6", kind: "project", type: "application", metadata: {name: "application.a"} @@ -32,3 +32,96 @@ test("Invalid configuration", async (t) => { Configuration resources/configuration/propertiesFileSourceEncoding must be equal to one of the allowed values Allowed values: UTF-8, ISO-8859-1`, "Threw with validation error"); }); + +test("getCustomTasks", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.builder = { + customTasks: [{ + name: "myTask", + beforeTask: "minify", + configuration: { + color: "orange" + } + }] + }; + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getCustomTasks(), [{ + name: "myTask", + beforeTask: "minify", + configuration: { + color: "orange" + } + }], "Returned correct custom task configuration"); +}); + +test("getCustomMiddleware", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.server = { + customMiddleware: [{ + name: "myMiddleware", + mountPath: "/app", + afterMiddleware: "compression", + configuration: { + color: "orange" + } + }] + }; + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getCustomMiddleware(), [{ + name: "myMiddleware", + mountPath: "/app", + afterMiddleware: "compression", + configuration: { + color: "orange" + } + }], "Returned correct custom middleware configuration"); +}); + +test("getCustomTasks/getCustomMiddleware defaults", async (t) => { + const customProjectInput = clone(basicProjectInput); + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getCustomTasks(), [], + "Returned correct default value for custom task configuration"); + t.deepEqual(project.getCustomMiddleware(), [], + "Returned correct default value for custom middleware configuration"); +}); + +test("getServerSettings", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.server = { + settings: { + httpPort: 1337 + } + }; + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getServerSettings(), { + httpPort: 1337 + }, "Returned correct server settings"); +}); + +test("getBuilderSettings", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.builder = { + settings: { + includeDependency: ["my-lib"] + } + }; + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getBuilderSettings(), { + includeDependency: ["my-lib"] + }, "Returned correct build settings"); +}); + +test("has-/getBuildManifest", async (t) => { + const projectWithoutBuildManifest = await Specification.create(clone(basicProjectInput)); + t.false(projectWithoutBuildManifest.hasBuildManifest(), "Project has a no build manifest"); + t.deepEqual(projectWithoutBuildManifest.getBuildManifest(), {}, "Project has a no build manifest"); + + const customProjectInput = clone(basicProjectInput); + customProjectInput.buildManifest = "buildManifest"; + const project = await Specification.create(customProjectInput); + t.true(project.hasBuildManifest(), "Project has a build manifest"); + t.is(project.getBuildManifest(), "buildManifest", "Returned correct build manifest"); +}); + +// == Most functionality is tested in the specific types diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index 2fb78dfa5e1..f3ebe6e2a8c 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -77,6 +77,24 @@ test("getPropertiesFileSourceEncoding: Configuration", async (t) => { "Returned correct default propertiesFileSourceEncoding configuration"); }); +test("getJsdocExcludes", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.builder = { + jsdoc: { + excludes: ["excludes"] + } + }; + const project = await Specification.create(customProjectInput); + t.deepEqual(project.getJsdocExcludes(), ["excludes"], + "Returned correct jsdocExcludes configuration"); +}); + +test("getJsdocExcludes: default", async (t) => { + const project = await Specification.create(basicProjectInput); + t.deepEqual(project.getJsdocExcludes(), [], + "Returned correct jsdocExcludes configuration"); +}); + test("Access project resources via reader: buildtime style", async (t) => { const project = await Specification.create(basicProjectInput); const reader = await project.getReader(); diff --git a/packages/project/test/lib/specifications/types/extensions/ProjectShim.js b/packages/project/test/lib/specifications/types/extensions/ProjectShim.js new file mode 100644 index 00000000000..7ab9c8f0255 --- /dev/null +++ b/packages/project/test/lib/specifications/types/extensions/ProjectShim.js @@ -0,0 +1,87 @@ +const test = require("ava"); +const path = require("path"); +const sinon = require("sinon"); +const Specification = require("../../../../../lib/specifications/Specification"); +const ProjectShim = require("../../../../../lib/specifications/types/extensions/ProjectShim"); + +function clone(obj) { + return JSON.parse(JSON.stringify(obj)); +} + +const nonExistingPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "does-not-exist"); +const basicProjectShimInput = { + id: "shim.a", + version: "1.0.0", + modulePath: nonExistingPath, // should not matter + configuration: { + specVersion: "2.6", + kind: "extension", + type: "project-shim", + metadata: { + name: "project-shim-a" + }, + shims: { + dependencies: { + "module.a": ["dependencies"] + }, + configurations: { + "module.b": { + configuration: "configuration" + } + }, + collections: { + "module.c": { + modules: { + "module.x": "some/path" + } + } + } + } + } +}; + +test.afterEach.always((t) => { + sinon.restore(); +}); + +test("Correct class", async (t) => { + const extension = await Specification.create(clone(basicProjectShimInput)); + t.true(extension instanceof ProjectShim, `Is an instance of the ProjectShim class`); +}); + +test("Defaults", async (t) => { + const projectShimInput = clone(basicProjectShimInput); + projectShimInput.configuration.shims = {}; + + const extension = await Specification.create(projectShimInput); + t.deepEqual(extension.getDependencyShims(), {}, "Returned correct default value for dependencies"); + t.deepEqual(extension.getConfigurationShims(), {}, "Returned correct default value for configuration"); + t.deepEqual(extension.getCollectionShims(), {}, "Returned correct default value for collection"); +}); + +test("getDependencyShims", async (t) => { + const extension = await Specification.create(clone(basicProjectShimInput)); + t.deepEqual(extension.getDependencyShims(), { + "module.a": ["dependencies"] + }, "Returned correct value for dependencies shim configuration"); +}); + +test("getConfigurationShims", async (t) => { + const extension = await Specification.create(clone(basicProjectShimInput)); + t.deepEqual(extension.getConfigurationShims(), { + "module.b": { + configuration: "configuration" + } + }, "Returned correct value for configuration shim configuration"); +}); + +test("getCollectionShims", async (t) => { + const extension = await Specification.create(clone(basicProjectShimInput)); + t.deepEqual(extension.getCollectionShims(), { + "module.c": { + modules: { + "module.x": "some/path" + } + } + }, "Returned correct value for collection shim configuration"); +}); diff --git a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js new file mode 100644 index 00000000000..ed8f03b1805 --- /dev/null +++ b/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js @@ -0,0 +1,52 @@ +const test = require("ava"); +const path = require("path"); +const sinon = require("sinon"); +const Specification = require("../../../../../lib/specifications/Specification"); +const ServerMiddleware = require("../../../../../lib/specifications/types/extensions/ServerMiddleware"); + +function clone(obj) { + return JSON.parse(JSON.stringify(obj)); +} + +const genericExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a"); +const basicServerMiddlewareInput = { + id: "shim.a", + version: "1.0.0", + modulePath: genericExtensionPath, + configuration: { + specVersion: "2.6", + kind: "extension", + type: "server-middleware", + metadata: { + name: "middleware-a" + }, + middleware: { + path: "lib/extensionModule.js" + } + } +}; + +test.afterEach.always((t) => { + sinon.restore(); +}); + +test("Correct class", async (t) => { + const extension = await Specification.create(clone(basicServerMiddlewareInput)); + t.true(extension instanceof ServerMiddleware, `Is an instance of the ServerMiddleware class`); +}); + +test("getMiddleware", async (t) => { + const extension = await Specification.create(clone(basicServerMiddlewareInput)); + t.deepEqual(extension.getMiddleware(), "extension module", + "Returned correct module"); +}); + +test("Middleware with illegal suffix", async (t) => { + const serverMiddlewareInput = clone(basicServerMiddlewareInput); + serverMiddlewareInput.configuration.metadata.name += "--1"; + const err = await t.throwsAsync(Specification.create(serverMiddlewareInput)); + t.is(err.message, + "Failed to validate configuration of server-middleware extension middleware-a--1: " + + "Server middleware name must not end with '--'", + "Threw with expected error message"); +}); diff --git a/packages/project/test/lib/specifications/types/extensions/Task.js b/packages/project/test/lib/specifications/types/extensions/Task.js new file mode 100644 index 00000000000..65a2f6ac958 --- /dev/null +++ b/packages/project/test/lib/specifications/types/extensions/Task.js @@ -0,0 +1,52 @@ +const test = require("ava"); +const path = require("path"); +const sinon = require("sinon"); +const Specification = require("../../../../../lib/specifications/Specification"); +const Task = require("../../../../../lib/specifications/types/extensions/Task"); + +function clone(obj) { + return JSON.parse(JSON.stringify(obj)); +} + +const genericExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a"); +const basicTaskInput = { + id: "shim.a", + version: "1.0.0", + modulePath: genericExtensionPath, + configuration: { + specVersion: "2.6", + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "lib/extensionModule.js" + } + } +}; + +test.afterEach.always((t) => { + sinon.restore(); +}); + +test("Correct class", async (t) => { + const extension = await Specification.create(clone(basicTaskInput)); + t.true(extension instanceof Task, `Is an instance of the Task class`); +}); + +test("getTask", async (t) => { + const extension = await Specification.create(clone(basicTaskInput)); + t.deepEqual(extension.getTask(), "extension module", + "Returned correct module"); +}); + +test("Task with illegal suffix", async (t) => { + const TaskInput = clone(basicTaskInput); + TaskInput.configuration.metadata.name += "--1"; + const err = await t.throwsAsync(Specification.create(TaskInput)); + t.is(err.message, + "Failed to validate configuration of task extension task-a--1: " + + "Task name must not end with '--'", + "Threw with expected error message"); +}); From 181ce4ec052d68dc66a3e776827588a7f61a6473 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 12 Jul 2022 14:15:36 +0200 Subject: [PATCH 0641/1272] [ui5-project][INTERNAL] Extensions: Enhance name validation regex --- packages/project/lib/build/definitions/application.js | 2 +- .../lib/specifications/types/extensions/ServerMiddleware.js | 3 ++- packages/project/lib/specifications/types/extensions/Task.js | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/build/definitions/application.js b/packages/project/lib/build/definitions/application.js index cbafac43d3e..2db64fa6b50 100644 --- a/packages/project/lib/build/definitions/application.js +++ b/packages/project/lib/build/definitions/application.js @@ -1,7 +1,7 @@ const {enhancePatternWithExcludes} = require("./_utils"); /** - * Get tasks.set(and ,ir configuration for a given application project + * Get tasks and their configuration for a given application project * * @private * @param {object} parameters diff --git a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js index 56503266723..c9ccd1e515c 100644 --- a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js @@ -19,7 +19,8 @@ class ServerMiddleware extends Extension { * @private */ async _validateConfig() { - if (/--\d$/.test(this.getName())) { + // TODO: Move to validator + if (/--\d+$/.test(this.getName())) { throw new Error(`Server middleware name must not end with '--'`); } } diff --git a/packages/project/lib/specifications/types/extensions/Task.js b/packages/project/lib/specifications/types/extensions/Task.js index 98a9fafbd50..269224c1954 100644 --- a/packages/project/lib/specifications/types/extensions/Task.js +++ b/packages/project/lib/specifications/types/extensions/Task.js @@ -19,7 +19,8 @@ class Task extends Extension { * @private */ async _validateConfig() { - if (/--\d$/.test(this.getName())) { + // TODO: Move to validator + if (/--\d+$/.test(this.getName())) { throw new Error(`Task name must not end with '--'`); } } From 6b4886ef65978994d9be905f8a219c6cc905d387 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 12 Jul 2022 14:17:09 +0200 Subject: [PATCH 0642/1272] [ui5-project][INTERNAL] Make next specVersion 3.0 instead of 2.7 It's likely to include a breaking change and it's easier to understand that one needs UI5 Tooling v3 to use specVersion 3.0. --- packages/project/lib/build/TaskRunner.js | 2 +- packages/project/test/lib/build/TaskRunner.js | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 480d9d1f6ec..53373bb07b7 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -262,7 +262,7 @@ class TaskRunner { params.dependencies = dependencies; } - if (task.getSpecVersion() === "2.7") { + if (task.getSpecVersion() === "3.0") { params.log = log; params.taskName = newTaskName; } diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index ea40a2edb2d..1b7fec6aa3f 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -444,12 +444,12 @@ test("Custom task with legacy spec version", async (t) => { "taskUtil#getInterface got called with correct argument"); }); -test("Custom task with specVersion 2.7", async (t) => { +test("Custom task with specVersion 3.0", async (t) => { const {graph, taskUtil} = t.context; const taskStub = sinon.stub(); graph.getExtension.returns({ getTask: () => taskStub, - getSpecVersion: () => "2.7" + getSpecVersion: () => "3.0" }); t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion const project = getMockProject("module"); @@ -473,8 +473,8 @@ test("Custom task with specVersion 2.7", async (t) => { t.deepEqual(taskStub.getCall(0).args[0], { workspace: "workspace", dependencies: "dependencies", - taskName: "myTask", // specVersion 2.7 feature - log: "log", // specVersion 2.7 feature + taskName: "myTask", // specVersion 3.0 feature + log: "log", // specVersion 3.0 feature options: { projectName: "project.b", projectNamespace: "project/b", @@ -483,7 +483,7 @@ test("Custom task with specVersion 2.7", async (t) => { }, "Task got called with one argument"); t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], "2.7", + t.is(taskUtil.getInterface.getCall(0).args[0], "3.0", "taskUtil#getInterface got called with correct argument"); }); @@ -502,7 +502,7 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { }); graph.getExtension.onThirdCall().returns({ getTask: () => taskStub3, - getSpecVersion: () => "2.7" + getSpecVersion: () => "3.0" }); const project = getMockProject("module"); project.getCustomTasks = () => [ @@ -574,7 +574,7 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { t.is(taskUtil.getInterface.callCount, 3, "taskUtil#getInterface got called once"); t.is(taskUtil.getInterface.getCall(0).args[0], "2.5", "taskUtil#getInterface got called with correct argument"); - t.is(taskUtil.getInterface.getCall(1).args[0], "2.7", + t.is(taskUtil.getInterface.getCall(1).args[0], "3.0", "taskUtil#getInterface got called with correct argument"); t.is(taskUtil.getInterface.getCall(2).args[0], "2.6", "taskUtil#getInterface got called with correct argument"); From 1fe2cec7d5be41afc0b57c344598319705f9490f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 12 Jul 2022 16:29:28 +0200 Subject: [PATCH 0643/1272] [ui5-project][INTERNAL] ProjectBuilder: Add additional tests --- packages/project/lib/build/ProjectBuilder.js | 1 + .../project/test/lib/build/ProjectBuilder.js | 159 +++++++++++++++++- 2 files changed, 153 insertions(+), 7 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 834f55a297e..142209cc581 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -243,6 +243,7 @@ class ProjectBuilder { const project = projectBuildContext.getProject(); const taskRunner = projectBuildContext.getTaskRunner(); + // Create readers for all dependencies const readers = []; await this._graph.traverseBreadthFirst(project.getName(), async function({project: dep}) { if (dep.getName() === project.getName()) { diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 435cf321e49..cc3ac46e2be 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -1,6 +1,7 @@ const test = require("ava"); const sinon = require("sinon"); const path = require("path"); +const mock = require("mock-require"); const ProjectBuilder = require("../../../lib/build/ProjectBuilder"); @@ -18,7 +19,7 @@ function getMockProject(type, id = "b") { } test.beforeEach((t) => { - t.context.getRootNameStub = sinon.stub().returns("root.node"); + t.context.getRootNameStub = sinon.stub().returns("project.a"); t.context.getRootTypeStub = sinon.stub().returns("application"); t.context.graph = { getRoot: () => { @@ -28,15 +29,21 @@ test.beforeEach((t) => { }; }, isSealed: sinon.stub().returns(true), - getAllProjects: sinon.stub().returns([getMockProject("library")]), + getAllProjects: sinon.stub().returns([ + getMockProject("library", "a"), + getMockProject("library", "b"), + getMockProject("library", "c"), + ]), + getDependencies: sinon.stub().returns([]).withArgs("project.a").returns(["project.b"]), traverseBreadthFirst: sinon.stub(), - traverseDepthFirst: sinon.stub().callsArgWith(0, {project: getMockProject("library")}), - getProject: sinon.stub().returns(getMockProject("library")) + traverseDepthFirst: sinon.stub().callsArgWith(0, {project: getMockProject("library", "a")}), + getProject: sinon.stub().returns(getMockProject("project", "b")) }; }); test.afterEach.always(() => { sinon.restore(); + mock.stopAll(); }); test("Missing graph parameter", async (t) => { @@ -65,7 +72,7 @@ test("build", async (t) => { getProject: sinon.stub().returns(getMockProject("library")) }; const createRequiredBuildContextsStub = sinon.stub(builder, "_createRequiredBuildContexts") - .returns(new Map().set("project.b", projectBuildContextMock)); + .returns(new Map().set("project.a", projectBuildContextMock)); const registerCleanupSigHooksStub = sinon.stub(builder, "_registerCleanupSigHooks").returns("cleanup sig hooks"); const buildProjectStub = sinon.stub(builder, "_buildProject").resolves(); @@ -87,8 +94,9 @@ test("build", async (t) => { }, "_getProjectFilter got called with correct arguments"); t.is(createRequiredBuildContextsStub.callCount, 1, "_createRequiredBuildContexts got called once"); - t.deepEqual(createRequiredBuildContextsStub.getCall(0).args[0], ["project.b"], - "_createRequiredBuildContexts got called with correct arguments"); + t.deepEqual(createRequiredBuildContextsStub.getCall(0).args[0], [ + "project.a", "project.b", "project.c" + ], "_createRequiredBuildContexts got called with correct arguments"); t.is(requiresBuildStub.callCount, 1, "TaskRunner#requiresBuild got called once"); t.is(registerCleanupSigHooksStub.callCount, 1, "_registerCleanupSigHooksStub got called once"); @@ -108,3 +116,140 @@ test("build", async (t) => { "_deregisterCleanupSigHooks got called with correct arguments"); t.is(executeCleanupTasksStub.callCount, 1, "_executeCleanupTasksStub got called once"); }); + +test("_createRequiredBuildContexts", async (t) => { + const {graph} = t.context; + + const builder = new ProjectBuilder(graph); + + const requiresBuildStub = sinon.stub().returns(true); + const requiresDependenciesStub = sinon.stub().returns(false).onFirstCall().returns(true); + const projectBuildContextMock = { + getTaskRunner: () => { + return { + requiresBuild: requiresBuildStub, + requiresDependencies: requiresDependenciesStub + }; + } + }; + const createProjectContextStub = sinon.stub(builder._buildContext, "createProjectContext") + .returns(projectBuildContextMock); + const projectBuildContexts = builder._createRequiredBuildContexts(["project.a", "project.c"]); + + t.deepEqual(Object.fromEntries(projectBuildContexts), { + "project.a": projectBuildContextMock, + "project.b": projectBuildContextMock, // is a required dependency of project.a + "project.c": projectBuildContextMock, + }, "Returned expected project build contexts"); + + t.is(requiresBuildStub.callCount, 3, "TaskRunner#requiresBuild got called three times"); + t.is(requiresDependenciesStub.callCount, 3, "TaskRunner#requiresDependencies got called three times"); + + t.is(createProjectContextStub.callCount, 3, "BuildContext#createProjectContextStub got called three times"); + t.is(createProjectContextStub.getCall(0).args[0].project.getName(), "project.a", + "First call to BuildContext#createProjectContextStub with expected project"); + t.truthy(createProjectContextStub.getCall(0).args[0].log, + "First call to BuildContext#createProjectContextStub with a log instance"); + t.is(createProjectContextStub.getCall(1).args[0].project.getName(), "project.c", + "Second call to BuildContext#createProjectContextStub with expected project"); + t.truthy(createProjectContextStub.getCall(1).args[0].log, + "Second call to BuildContext#createProjectContextStub with a log instance"); + t.is(createProjectContextStub.getCall(2).args[0].project.getName(), "project.b", + "Third call to BuildContext#createProjectContextStub with expected project"); + t.truthy(createProjectContextStub.getCall(2).args[0].log, + "Third call to BuildContext#createProjectContextStub with a log instance"); +}); + +test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { + const {graph} = t.context; + + const composeProjectListStub = sinon.stub().returns({ + includedDependencies: ["project.b", "project.c"], + excludedDependencies: ["project.d", "project.e", "project.a"], + }); + mock("../../../lib/build/helpers/composeProjectList", composeProjectListStub); + const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); + const builder = new ProjectBuilder(graph); + + const filterProject = await builder._getProjectFilter({ + complexDependencyIncludes: "complexDependencyIncludes", + explicitIncludes: "explicitIncludes", + explicitExcludes: "explicitExcludes", + }); + + t.is(composeProjectListStub.callCount, 1, "composeProjectList got called once"); + t.is(composeProjectListStub.getCall(0).args[0], graph, + "composeProjectList got called with correct graph argument"); + t.is(composeProjectListStub.getCall(0).args[1], "complexDependencyIncludes", + "composeProjectList got called with correct include/exclude argument"); + + t.true(filterProject("project.a"), "project.a (root project) is always allowed"); + t.true(filterProject("project.b"), "project.b is allowed"); + t.true(filterProject("project.c"), "project.c is allowed"); + t.false(filterProject("project.d"), "project.d is not allowed"); + t.false(filterProject("project.e"), "project.e is not allowed"); +}); + +test.serial("_getProjectFilter with explicit include/exclude", async (t) => { + const {graph} = t.context; + + const composeProjectListStub = sinon.stub().returns({ + includedDependencies: ["project.b", "project.c"], + excludedDependencies: ["project.d", "project.e", "project.a"], + }); + mock("../../../lib/build/helpers/composeProjectList", composeProjectListStub); + const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); + const builder = new ProjectBuilder(graph); + + const filterProject = await builder._getProjectFilter({ + explicitIncludes: "explicitIncludes", + explicitExcludes: "explicitExcludes", + }); + + t.is(composeProjectListStub.callCount, 1, "composeProjectList got called once"); + t.is(composeProjectListStub.getCall(0).args[0], graph, + "composeProjectList got called with correct graph argument"); + t.deepEqual(composeProjectListStub.getCall(0).args[1], { + includeDependencyTree: "explicitIncludes", + excludeDependencyTree: "explicitExcludes", + }, "composeProjectList got called with correct include/exclude argument"); + + t.true(filterProject("project.a"), "project.a (root project) is always allowed"); + t.true(filterProject("project.b"), "project.b is allowed"); + t.true(filterProject("project.c"), "project.c is allowed"); + t.false(filterProject("project.d"), "project.d is not allowed"); + t.false(filterProject("project.e"), "project.e is not allowed"); +}); + +// TODO +// test("_buildProject", async (t) => { +// const {graph} = t.context; + +// const builder = new ProjectBuilder(graph); + +// const runTasksStub = sinon.stub().resolves(); +// await builder._buildProject({ +// getProject: () => getMockProject("library", "a"), +// getTaskRunner: () => { +// return { +// runTasks: runTasksStub +// }; +// } +// }); +// }); + +// test("_executeCleanupTasks", async (t) => { +// // TODO +// }); + +// test("_registerCleanupSigHooks", async (t) => { +// // TODO +// }); + +// test("_deregisterCleanupSigHooks", async (t) => { +// // TODO +// }); + +// test("_getElapsedTime", async (t) => { +// // TODO +// }); From e723db8528c62b47bf66c8c4001f51553c7fab17 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 12 Jul 2022 22:39:25 +0200 Subject: [PATCH 0644/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-alpha.4 to 3.0.0-alpha.5 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-alpha.5/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ab292312056..9444b09cae9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.7", - "@ui5/fs": "^3.0.0-alpha.4", + "@ui5/fs": "^3.0.0-alpha.5", "@ui5/logger": "^3.0.1-alpha.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -893,9 +893,9 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-alpha.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.4.tgz", - "integrity": "sha512-20R3B1n8mLGKKQbZd+QPcrd9B8yEvaNrgIZLDreY1hAVPW3HHr6G6VsxnXf1RpcrRmPHFHKWIe9neLEDK+CjUw==", + "version": "3.0.0-alpha.5", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.5.tgz", + "integrity": "sha512-u4hWPn2XqLvuh7Y5AJ8FnAybBlskTvDp+a1huwz29BZMBKOL+mEhws11MBoS6rRN4a4M5sLG89elQwBlHpH/GA==", "dependencies": { "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", @@ -9393,9 +9393,9 @@ } }, "@ui5/fs": { - "version": "3.0.0-alpha.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.4.tgz", - "integrity": "sha512-20R3B1n8mLGKKQbZd+QPcrd9B8yEvaNrgIZLDreY1hAVPW3HHr6G6VsxnXf1RpcrRmPHFHKWIe9neLEDK+CjUw==", + "version": "3.0.0-alpha.5", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.5.tgz", + "integrity": "sha512-u4hWPn2XqLvuh7Y5AJ8FnAybBlskTvDp+a1huwz29BZMBKOL+mEhws11MBoS6rRN4a4M5sLG89elQwBlHpH/GA==", "requires": { "@ui5/logger": "^3.0.1-alpha.1", "clone": "^2.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index 7e74157573f..34b1d42158a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-alpha.7", - "@ui5/fs": "^3.0.0-alpha.4", + "@ui5/fs": "^3.0.0-alpha.5", "@ui5/logger": "^3.0.1-alpha.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From a14a7429d881d7f0cdd8f74a49423df3380858d6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 13 Jul 2022 10:36:14 +0200 Subject: [PATCH 0645/1272] [ui5-project][INTERNAL] ProjectBuilder and TaskRunner: Add even more tests --- .../project/test/lib/build/ProjectBuilder.js | 318 ++++++++++++++++-- packages/project/test/lib/build/TaskRunner.js | 197 ++++++++--- 2 files changed, 431 insertions(+), 84 deletions(-) diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index cc3ac46e2be..eb7b27c94c8 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -15,6 +15,8 @@ function getMockProject(type, id = "b") { getCopyright: noop, getVersion: noop, getSpecVersion: () => "0.1", + getReader: () => "reader", + getWorkspace: () => "workspace", }; } @@ -35,8 +37,34 @@ test.beforeEach((t) => { getMockProject("library", "c"), ]), getDependencies: sinon.stub().returns([]).withArgs("project.a").returns(["project.b"]), - traverseBreadthFirst: sinon.stub(), - traverseDepthFirst: sinon.stub().callsArgWith(0, {project: getMockProject("library", "a")}), + traverseBreadthFirst: async (start, callback) => { + if (callback) { + await callback({ + project: getMockProject("library", "c") + }); + return; + } + await start({ + project: getMockProject("library", "a") + }); + await start({ + project: getMockProject("library", "c") + }); + await start({ + project: getMockProject("library", "b") + }); + }, + traverseDepthFirst: async (callback) => { + await callback({ + project: getMockProject("library", "a") + }); + await callback({ + project: getMockProject("library", "b") + }); + await callback({ + project: getMockProject("library", "c") + }); + }, getProject: sinon.stub().returns(getMockProject("project", "b")) }; }); @@ -117,6 +145,168 @@ test("build", async (t) => { t.is(executeCleanupTasksStub.callCount, 1, "_executeCleanupTasksStub got called once"); }); +test("build: Missing dest parameter", async (t) => { + const {graph} = t.context; + + const builder = new ProjectBuilder(graph); + + const err = await t.throwsAsync(builder.build({ + destPath: "dest/path", + complexDependencyIncludes: "complexDependencyIncludes", + includedDependencies: ["dep a"], + excludedDependencies: ["dep b"] + })); + + t.is(err.message, + "Parameter 'complexDependencyIncludes' can't be used in conjunction " + + "with parameters 'includedDependencies' or 'excludedDependencies", + "Threw with expected error message"); +}); + +test("build: Too many dependency parameters", async (t) => { + const {graph} = t.context; + + const builder = new ProjectBuilder(graph); + + const err = await t.throwsAsync(builder.build({ + includedDependencies: ["dep a"], + excludedDependencies: ["dep b"] + })); + + t.is(err.message, "Missing parameter 'destPath'", "Threw with expected error message"); +}); + +test("build: Failure", async (t) => { + const {graph} = t.context; + + const builder = new ProjectBuilder(graph); + + const filterProjectStub = sinon.stub().returns(true); + sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); + + const requiresBuildStub = sinon.stub().returns(true); + const projectBuildContextMock = { + getTaskRunner: () => { + return { + requiresBuild: requiresBuildStub + }; + }, + getProject: sinon.stub().returns(getMockProject("library")) + }; + sinon.stub(builder, "_createRequiredBuildContexts") + .returns(new Map().set("project.a", projectBuildContextMock)); + + sinon.stub(builder, "_registerCleanupSigHooks").returns("cleanup sig hooks"); + sinon.stub(builder, "_buildProject").rejects(new Error("Some Error")); + const writeResultsStub = sinon.stub(builder, "_writeResults").resolves(); + const deregisterCleanupSigHooksStub = sinon.stub(builder, "_deregisterCleanupSigHooks"); + const executeCleanupTasksStub = sinon.stub(builder, "_executeCleanupTasks").resolves(); + + const err = await t.throwsAsync(builder.build({ + destPath: "dest/path", + includedDependencies: ["dep a"], + excludedDependencies: ["dep b"] + })); + + t.is(err.message, "Some Error", "Threw with expected error message"); + + t.is(writeResultsStub.callCount, 0, "_writeResults did not get called"); + + t.is(deregisterCleanupSigHooksStub.callCount, 1, "_deregisterCleanupSigHooks got called once"); + t.is(deregisterCleanupSigHooksStub.getCall(0).args[0], "cleanup sig hooks", + "_deregisterCleanupSigHooks got called with correct arguments"); + t.is(executeCleanupTasksStub.callCount, 1, "_executeCleanupTasksStub got called once"); +}); + +test.serial("build: Multiple projects", async (t) => { + const {graph} = t.context; + const builder = new ProjectBuilder(graph); + + const filterProjectStub = sinon.stub().returns(true).onFirstCall().returns(false); + const getProjectFilterStub = sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); + + const requiresBuildStub = sinon.stub().returns(true); + const projectBuildContextMockA = { + getTaskRunner: () => { + return { + requiresBuild: requiresBuildStub + }; + }, + getProject: sinon.stub().returns(getMockProject("library", "a")) + }; + const projectBuildContextMockB = { + getTaskRunner: () => { + return { + requiresBuild: requiresBuildStub + }; + }, + getProject: sinon.stub().returns(getMockProject("library", "b")) + }; + const projectBuildContextMockC = { + getTaskRunner: () => { + return { + requiresBuild: requiresBuildStub + }; + }, + getProject: sinon.stub().returns(getMockProject("library", "c")) + }; + const createRequiredBuildContextsStub = sinon.stub(builder, "_createRequiredBuildContexts") + .returns(new Map() + .set("project.a", projectBuildContextMockA) + .set("project.b", projectBuildContextMockB) + .set("project.c", projectBuildContextMockC) + ); + + const registerCleanupSigHooksStub = sinon.stub(builder, "_registerCleanupSigHooks").returns("cleanup sig hooks"); + const buildProjectStub = sinon.stub(builder, "_buildProject").resolves(); + const writeResultsStub = sinon.stub(builder, "_writeResults").resolves(); + const deregisterCleanupSigHooksStub = sinon.stub(builder, "_deregisterCleanupSigHooks"); + const executeCleanupTasksStub = sinon.stub(builder, "_executeCleanupTasks").resolves(); + + await builder.build({ + destPath: "dest/path", + complexDependencyIncludes: "complexDependencyIncludes" + }); + + t.is(getProjectFilterStub.callCount, 1, "_getProjectFilter got called once"); + t.deepEqual(getProjectFilterStub.getCall(0).args[0], { + explicitIncludes: [], + explicitExcludes: [], + complexDependencyIncludes: "complexDependencyIncludes" + }, "_getProjectFilter got called with correct arguments"); + + t.is(createRequiredBuildContextsStub.callCount, 1, "_createRequiredBuildContexts got called once"); + t.deepEqual(createRequiredBuildContextsStub.getCall(0).args[0], [ + "project.b", "project.c" + ], "_createRequiredBuildContexts got called with correct arguments"); + + t.is(requiresBuildStub.callCount, 3, "TaskRunner#requiresBuild got called three times"); + t.is(registerCleanupSigHooksStub.callCount, 1, "_registerCleanupSigHooksStub got called once"); + + t.is(buildProjectStub.callCount, 3, "_buildProject got called three times"); + t.is(buildProjectStub.getCall(0).args[0], projectBuildContextMockA, + "_buildProject got called with correct arguments"); + t.is(buildProjectStub.getCall(1).args[0], projectBuildContextMockB, + "_buildProject got called with correct arguments"); + t.is(buildProjectStub.getCall(2).args[0], projectBuildContextMockC, + "_buildProject got called with correct arguments"); + + t.is(writeResultsStub.callCount, 2, "_writeResults got called twice"); // not all projects have been requested + t.is(writeResultsStub.getCall(0).args[0], projectBuildContextMockB, + "_writeResults got called with correct first argument"); + t.is(writeResultsStub.getCall(0).args[1]._fsBasePath, path.resolve("dest/path"), + "_writeResults got called with correct second argument"); + t.is(writeResultsStub.getCall(1).args[0], projectBuildContextMockC, + "_writeResults got called with correct first argument"); + t.is(writeResultsStub.getCall(1).args[1]._fsBasePath, path.resolve("dest/path"), + "_writeResults got called with correct second argument"); + + t.is(deregisterCleanupSigHooksStub.callCount, 1, "_deregisterCleanupSigHooks got called once"); + t.is(deregisterCleanupSigHooksStub.getCall(0).args[0], "cleanup sig hooks", + "_deregisterCleanupSigHooks got called with correct arguments"); + t.is(executeCleanupTasksStub.callCount, 1, "_executeCleanupTasksStub got called once"); +}); + test("_createRequiredBuildContexts", async (t) => { const {graph} = t.context; @@ -221,35 +411,107 @@ test.serial("_getProjectFilter with explicit include/exclude", async (t) => { t.false(filterProject("project.e"), "project.e is not allowed"); }); -// TODO -// test("_buildProject", async (t) => { -// const {graph} = t.context; +test.serial("_buildProject", async (t) => { + const {graph} = t.context; + const builder = new ProjectBuilder(graph); + + const readerCollectionStub = sinon.stub(require("@ui5/fs").resourceFactory, "createReaderCollection") + .returns("dependencies"); + + const runTasksStub = sinon.stub().resolves(); + await builder._buildProject({ + getProject: () => getMockProject("library", "a"), + getTaskRunner: () => { + return { + runTasks: runTasksStub + }; + } + }); + + t.is(readerCollectionStub.callCount, 1, "One reader collection created"); + t.deepEqual(readerCollectionStub.getCall(0).args[0], { + name: "Dependency reader collection for project project.a", + readers: ["reader"] + }, "Reader collection got created with expected arguments"); + + t.is(runTasksStub.callCount, 1, "TaskRunner#runTasks got called once"); + t.deepEqual(runTasksStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + }, "TaskRunner#runTasks got called with expected arguments"); +}); -// const builder = new ProjectBuilder(graph); +test.serial("_buildProject: Requested project is not added to readers", async (t) => { + const {graph} = t.context; + const builder = new ProjectBuilder(graph); -// const runTasksStub = sinon.stub().resolves(); -// await builder._buildProject({ -// getProject: () => getMockProject("library", "a"), -// getTaskRunner: () => { -// return { -// runTasks: runTasksStub -// }; -// } -// }); -// }); + const readerCollectionStub = sinon.stub(require("@ui5/fs").resourceFactory, "createReaderCollection") + .returns("dependencies"); -// test("_executeCleanupTasks", async (t) => { -// // TODO -// }); + const runTasksStub = sinon.stub().resolves(); + await builder._buildProject({ + getProject: () => getMockProject("library", "c"), + getTaskRunner: () => { + return { + runTasks: runTasksStub + }; + } + }); -// test("_registerCleanupSigHooks", async (t) => { -// // TODO -// }); + t.is(readerCollectionStub.callCount, 1, "One reader collection created"); + t.deepEqual(readerCollectionStub.getCall(0).args[0], { + name: "Dependency reader collection for project project.c", + readers: [] + }, "Reader collection got created with expected arguments"); + + t.is(runTasksStub.callCount, 1, "TaskRunner#runTasks got called once"); + t.deepEqual(runTasksStub.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + }, "TaskRunner#runTasks got called with expected arguments"); +}); -// test("_deregisterCleanupSigHooks", async (t) => { -// // TODO -// }); +test("_executeCleanupTasks", async (t) => { + const {graph} = t.context; + const builder = new ProjectBuilder(graph); -// test("_getElapsedTime", async (t) => { -// // TODO -// }); + const executeCleanupTasksStub = sinon.stub(builder._buildContext, "executeCleanupTasks"); + builder._executeCleanupTasks(); + t.is(executeCleanupTasksStub.callCount, 1, "BuildContext#executeCleanupTasks got called once"); + t.deepEqual(executeCleanupTasksStub.getCall(0).args, [], + "BuildContext#executeCleanupTasks got called with no arguments"); +}); + + +function getProcessListenerCount() { + return ["SIGHUP", "SIGINT", "SIGTERM", "SIGBREAK"].map((eventName) => { + return process.listenerCount(eventName); + }); +} +test.serial("_registerCleanupSigHooks/_deregisterCleanupSigHooks", async (t) => { + const listenersBefore = getProcessListenerCount(); + + const {graph} = t.context; + const builder = new ProjectBuilder(graph); + + const signals = builder._registerCleanupSigHooks(); + + t.deepEqual(Object.keys(signals), ["SIGHUP", "SIGINT", "SIGTERM", "SIGBREAK"], + "Returned four signal listeners"); + + t.deepEqual(getProcessListenerCount(), listenersBefore.map((x) => x+1), + "For every signal one new listener got registered"); + + builder._deregisterCleanupSigHooks(signals); + + t.deepEqual(getProcessListenerCount(), listenersBefore, + "All signal listeners got de-registered"); +}); + +test("_getElapsedTime", async (t) => { + const {graph} = t.context; + const builder = new ProjectBuilder(graph); + + const res = builder._getElapsedTime(process.hrtime()); + t.truthy(res, "Returned a value"); +}); diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 1b7fec6aa3f..2352e191fab 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -54,6 +54,7 @@ function getMockProject(type) { }], getCachebusterSignatureType: noop, getCustomTasks: () => [], + hasBuildManifest: () => false }; } @@ -76,10 +77,10 @@ test.beforeEach((t) => { test("Project of type 'application'", (t) => { const {graph, taskUtil} = t.context; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project: getMockProject("application"), graph, taskUtil, parentLogger, buildConfig }); - t.deepEqual(builder._taskExecutionOrder, [ + t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", "replaceCopyright", "replaceVersion", @@ -99,11 +100,11 @@ test("Project of type 'application'", (t) => { test("Project of type 'library'", (t) => { const {graph, taskUtil} = t.context; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project: getMockProject("library"), graph, taskUtil, parentLogger, buildConfig }); - t.deepEqual(builder._taskExecutionOrder, [ + t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", "replaceCopyright", "replaceVersion", @@ -124,11 +125,11 @@ test("Project of type 'library'", (t) => { test("Project of type 'theme-library'", (t) => { const {graph, taskUtil} = t.context; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project: getMockProject("theme-library"), graph, taskUtil, parentLogger, buildConfig }); - t.deepEqual(builder._taskExecutionOrder, [ + t.deepEqual(taskRunner._taskExecutionOrder, [ "replaceCopyright", "replaceVersion", "buildThemes", @@ -139,11 +140,22 @@ test("Project of type 'theme-library'", (t) => { test("Project of type 'module'", (t) => { const {graph, taskUtil} = t.context; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project: getMockProject("module"), graph, taskUtil, parentLogger, buildConfig }); - t.deepEqual(builder._taskExecutionOrder, [], "Correct standard tasks"); + t.deepEqual(taskRunner._taskExecutionOrder, [], "Correct standard tasks"); +}); + +test("Unknown project type", (t) => { + const {graph, taskUtil} = t.context; + const err = t.throws(() => { + new TaskRunner({ + project: getMockProject("pony"), graph, taskUtil, parentLogger, buildConfig + }); + }); + + t.is(err.message, "Unknown project type pony", "Threw with expected error message"); }); test("Custom tasks", (t) => { @@ -153,10 +165,10 @@ test("Custom tasks", (t) => { {name: "myTask", afterTask: "minify"}, {name: "myOtherTask", beforeTask: "replaceVersion"} ]; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - t.deepEqual(builder._taskExecutionOrder, [ + t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", "replaceCopyright", "myOtherTask", @@ -183,10 +195,10 @@ test("Custom tasks with no standard tasks", (t) => { {name: "myTask"}, {name: "myOtherTask", beforeTask: "myTask"} ]; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - t.deepEqual(builder._taskExecutionOrder, [ + t.deepEqual(taskRunner._taskExecutionOrder, [ "myOtherTask", "myTask", ], "ApplicationBuilder is still instantiated with standard tasks"); @@ -285,10 +297,10 @@ test("Multiple custom tasks with same name", (t) => { {name: "myTask", afterTask: "myTask"}, {name: "myTask", afterTask: "minify"} ]; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - t.deepEqual(builder._taskExecutionOrder, [ + t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", "replaceCopyright", "replaceVersion", @@ -374,13 +386,13 @@ test("Custom task is called correctly", async (t) => { {name: "myTask", configuration: "configuration"} ]; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); - t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - await builder._tasks["myTask"].task({ + t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); + t.true(taskRunner._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + await taskRunner._tasks["myTask"].task({ workspace: "workspace", dependencies: "dependencies" }); @@ -416,13 +428,13 @@ test("Custom task with legacy spec version", async (t) => { {name: "myTask", configuration: "configuration"} ]; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); - t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - await builder._tasks["myTask"].task({ + t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); + t.true(taskRunner._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + await taskRunner._tasks["myTask"].task({ workspace: "workspace", dependencies: "dependencies" }); @@ -457,13 +469,13 @@ test("Custom task with specVersion 3.0", async (t) => { {name: "myTask", configuration: "configuration"} ]; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); - t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - await builder._tasks["myTask"].task({ + t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); + t.true(taskRunner._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + await taskRunner._tasks["myTask"].task({ workspace: "workspace", dependencies: "dependencies" }, "log"); @@ -510,25 +522,25 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { {name: "myTask", afterTask: "myTask", configuration: "dog"}, {name: "myTask", afterTask: "myTask", configuration: "bird"} ]; - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - t.truthy(builder._tasks["myTask"], "Custom tasks has been added to task map"); - t.truthy(builder._tasks["myTask--2"], "Custom tasks has been added to task map"); - t.truthy(builder._tasks["myTask--3"], "Custom tasks has been added to task map"); - t.true(builder._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - t.true(builder._tasks["myTask--2"].requiresDependencies, "Custom tasks requires dependencies by default"); - t.true(builder._tasks["myTask--3"].requiresDependencies, "Custom tasks requires dependencies by default"); + t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); + t.truthy(taskRunner._tasks["myTask--2"], "Custom tasks has been added to task map"); + t.truthy(taskRunner._tasks["myTask--3"], "Custom tasks has been added to task map"); + t.true(taskRunner._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); + t.true(taskRunner._tasks["myTask--2"].requiresDependencies, "Custom tasks requires dependencies by default"); + t.true(taskRunner._tasks["myTask--3"].requiresDependencies, "Custom tasks requires dependencies by default"); // "Last in is the first out" - t.deepEqual(builder._taskExecutionOrder, [ + t.deepEqual(taskRunner._taskExecutionOrder, [ "myTask", "myTask--3", "myTask--2", ], "Correct order of custom tasks"); - await builder.runTasks({ + await taskRunner.runTasks({ workspace: "workspace", dependencies: "dependencies" }); @@ -562,7 +574,7 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { t.deepEqual(taskStub3.getCall(0).args[0], { workspace: "workspace", dependencies: "dependencies", - log: builder._taskLog, + log: taskRunner._taskLog, taskName: "myTask--3", options: { projectName: "project.b", @@ -589,18 +601,18 @@ test.serial("_addTask", async (t) => { const {graph, taskUtil} = t.context; const project = getMockProject("module"); - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - builder._addTask("standardTask"); + taskRunner._addTask("standardTask"); - t.truthy(builder._tasks["standardTask"], "Task has been added to task map"); - t.false(builder._tasks["standardTask"].requiresDependencies, "requiresDependencies defaults to false"); - t.truthy(builder._tasks["standardTask"].task, "Task function got set correctly"); - t.deepEqual(builder._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); + t.truthy(taskRunner._tasks["standardTask"], "Task has been added to task map"); + t.false(taskRunner._tasks["standardTask"].requiresDependencies, "requiresDependencies defaults to false"); + t.truthy(taskRunner._tasks["standardTask"].task, "Task function got set correctly"); + t.deepEqual(taskRunner._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); - await builder._tasks["standardTask"].task({ + await taskRunner._tasks["standardTask"].task({ workspace: "workspace", dependencies: "dependencies", }); @@ -630,11 +642,11 @@ test.serial("_addTask with options", async (t) => { const {graph, taskUtil} = t.context; const project = getMockProject("module"); - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - builder._addTask("standardTask", { + taskRunner._addTask("standardTask", { requiresDependencies: true, options: { myTaskOption: "cat", @@ -642,12 +654,12 @@ test.serial("_addTask with options", async (t) => { taskFunction: taskStub }); - t.truthy(builder._tasks["standardTask"], "Task has been added to task map"); - t.true(builder._tasks["standardTask"].requiresDependencies, "requiresDependencies set to true"); - t.truthy(builder._tasks["standardTask"].task, "Task function got set correctly"); - t.deepEqual(builder._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); + t.truthy(taskRunner._tasks["standardTask"], "Task has been added to task map"); + t.true(taskRunner._tasks["standardTask"].requiresDependencies, "requiresDependencies set to true"); + t.truthy(taskRunner._tasks["standardTask"].task, "Task function got set correctly"); + t.deepEqual(taskRunner._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); - await builder._tasks["standardTask"].task({ + await taskRunner._tasks["standardTask"].task({ workspace: "workspace", dependencies: "dependencies", }); @@ -673,16 +685,16 @@ test.serial("_addTask with options", async (t) => { test("_addTask: Duplicate task", async (t) => { const {graph, taskUtil} = t.context; const project = getMockProject("module"); - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - builder._addTask("standardTask", { + taskRunner._addTask("standardTask", { taskFunction: () => {} }); const err = t.throws(() => { - builder._addTask("standardTask", { + taskRunner._addTask("standardTask", { taskFunction: () => {} }); }); @@ -693,13 +705,13 @@ test("_addTask: Duplicate task", async (t) => { test("_addTask: Task already added to execution order", async (t) => { const {graph, taskUtil} = t.context; const project = getMockProject("module"); - const builder = new TaskRunner({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, parentLogger, buildConfig }); - builder._taskExecutionOrder.push("standardTask"); + taskRunner._taskExecutionOrder.push("standardTask"); const err = t.throws(() => { - builder._addTask("standardTask", { + taskRunner._addTask("standardTask", { taskFunction: () => {} }); }); @@ -707,3 +719,76 @@ test("_addTask: Task already added to execution order", async (t) => { "Failed to add task standardTask for project project.b. It has already been scheduled for execution", "Threw with expected error message"); }); + +test("requiresDependencies: Custom Task", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask"} + ]; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + t.true(taskRunner.requiresDependencies(), "Project with custom task requires dependencies"); +}); + +test("requiresDependencies: Default application", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("application"); + project.getBundles = () => []; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + t.false(taskRunner.requiresDependencies(), "Default application project does not require dependencies"); +}); + +test("requiresDependencies: Default library", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("library"); + project.getBundles = () => []; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + t.true(taskRunner.requiresDependencies(), "Default library project requires dependencies"); +}); + +test("requiresDependencies: Default theme-library", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("theme-library"); + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + t.true(taskRunner.requiresDependencies(), "Default theme-library project requires dependencies"); +}); + +test("requiresDependencies: Default module", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("module"); + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + t.false(taskRunner.requiresDependencies(), "Default module project does not require dependencies"); +}); + +test("requiresBuild: has no build-manifest", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("library"); + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + t.true(taskRunner.requiresBuild(), "Project without build-manifest requires to be build"); +}); + +test("requiresBuild: has build-manifest", (t) => { + const {graph, taskUtil} = t.context; + const project = getMockProject("library"); + project.hasBuildManifest = () => true; + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, parentLogger, buildConfig + }); + t.false(taskRunner.requiresBuild(), "Project with build-manifest does not require to be build"); +}); From 5844db9a2277a3edc7b3497538fcb868615d9ee9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 13 Jul 2022 12:56:20 +0200 Subject: [PATCH 0646/1272] [ui5-project][INTERNAL] Add test for generateProjectGraph#usingNodePackageDependencies --- ...ojectGraph.usingNodePackageDependencies.js | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js diff --git a/packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js b/packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js new file mode 100644 index 00000000000..8d68d0dc8d4 --- /dev/null +++ b/packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js @@ -0,0 +1,55 @@ +const test = require("ava"); +const path = require("path"); +const sinonGlobal = require("sinon"); +const mock = require("mock-require"); +const logger = require("@ui5/logger"); + +const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); +test.beforeEach((t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.log = { + warn: sinon.stub(), + verbose: sinon.stub(), + error: sinon.stub(), + info: sinon.stub(), + isLevelEnabled: () => true + }; + sinon.stub(logger, "getLogger").callThrough().withArgs("graph:projectGraphBuilder").returns(t.context.log); + mock.reRequire("../../lib/graph/projectGraphBuilder"); + t.context.projectGraphFromPackageDeps = + mock.reRequire("../../lib/generateProjectGraph").usingNodePackageDependencies; + logger.getLogger.restore(); // Immediately restore global stub for following tests +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); +}); + +test("Application A", async (t) => { + const {projectGraphFromPackageDeps} = t.context; + const projectGraph = await projectGraphFromPackageDeps({cwd: applicationAPath}); + const rootProject = projectGraph.getRoot(); + t.is(rootProject.getName(), "application.a", "Returned correct root project"); +}); + +test("Application A: Traverse project graph breadth first", async (t) => { + const {projectGraphFromPackageDeps} = t.context; + const projectGraph = await projectGraphFromPackageDeps({cwd: applicationAPath}); + const callbackStub = t.context.sinon.stub().resolves(); + await projectGraph.traverseBreadthFirst(callbackStub); + + t.is(callbackStub.callCount, 5, "Five projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, [ + "application.a", + "library.d", + "library.a", + "library.b", + "library.c" + ], "Traversed graph in correct order"); +}); + +// More integration tests for package.json dependencies in graph/providers/NodePackageDependencies.integration.js From 7116f7de77675629cc92ac3dd975098b536d79da Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 13 Jul 2022 12:59:00 +0200 Subject: [PATCH 0647/1272] [ui5-project][INTERNAL] package.json: Further increase coverage thresholds --- packages/project/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/package.json b/packages/project/package.json index 34b1d42158a..a98c2ac62a0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -73,8 +73,8 @@ ], "check-coverage": true, "statements": 90, - "branches": 80, - "functions": 85, + "branches": 85, + "functions": 90, "lines": 90, "watermarks": { "statements": [ From 7c258b2d90205a8bfee2f2f5b9c5520ec7fded43 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 15 Jul 2022 09:02:06 +0200 Subject: [PATCH 0648/1272] [ui5-project][INTERNAL] AbstractResolver: Enhance error message for failure to resolve framework version --- .../project/lib/ui5Framework/AbstractResolver.js | 4 +++- .../test/lib/ui5framework/AbstractResolver.js | 15 ++++++++++----- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index ae8dbc52f9b..44c51b455d3 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -192,7 +192,9 @@ class AbstractResolver { `starting with OpenUI5 v1.52.5`); } } - throw new Error(`Could not resolve framework version ${version}`); + throw new Error( + `Could not resolve framework version ${version}. ` + + `Make sure the version is valid and available in the configured registry.`); } return resolvedVersion; } diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 0d38f755c9e..f733be02cb2 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -490,7 +490,8 @@ test.serial("AbstractResolver: Static resolveVersion throws error for version no ui5HomeDir: "/ui5HomeDir" })); - t.is(error.message, `Could not resolve framework version 1.74.0`); + t.is(error.message, `Could not resolve framework version 1.74.0. ` + + `Make sure the version is valid and available in the configured registry.`); }); test.serial( @@ -545,7 +546,8 @@ test.serial( ui5HomeDir: "/ui5HomeDir" })); - t.is(error.message, `Could not resolve framework version latest`); + t.is(error.message, `Could not resolve framework version latest. ` + + `Make sure the version is valid and available in the configured registry.`); }); test.serial( @@ -562,7 +564,8 @@ test.serial( ui5HomeDir: "/ui5HomeDir" })); - t.is(error.message, `Could not resolve framework version latest`); + t.is(error.message, `Could not resolve framework version latest. ` + + `Make sure the version is valid and available in the configured registry.`); }); test.serial( @@ -579,7 +582,8 @@ test.serial( ui5HomeDir: "/ui5HomeDir" })); - t.is(error.message, `Could not resolve framework version 1.99`); + t.is(error.message, `Could not resolve framework version 1.99. ` + + `Make sure the version is valid and available in the configured registry.`); }); test.serial( @@ -596,7 +600,8 @@ test.serial( ui5HomeDir: "/ui5HomeDir" })); - t.is(error.message, `Could not resolve framework version 1.99`); + t.is(error.message, `Could not resolve framework version 1.99. ` + + `Make sure the version is valid and available in the configured registry.`); }); test.serial("AbstractResolver: SEMVER_VERSION_REGEXP should be aligned with JSON schema", async (t) => { From 50ba63eea52251e1f6277b2a31b22a5321f179ed Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 15 Jul 2022 09:02:26 +0200 Subject: [PATCH 0649/1272] [ui5-project][INTERNAL] ui5Framework: Update logger names --- packages/project/lib/ui5Framework/Sapui5Resolver.js | 2 +- packages/project/lib/ui5Framework/npm/Installer.js | 2 +- packages/project/lib/ui5Framework/npm/Registry.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index 221e241829c..8bcb58d1820 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -2,7 +2,7 @@ const path = require("path"); const semver = require("semver"); const AbstractResolver = require("./AbstractResolver"); const Installer = require("./npm/Installer"); -const log = require("@ui5/logger").getLogger("normalizer:ui5Framework:Sapui5Resolver"); +const log = require("@ui5/logger").getLogger("ui5Framework:Sapui5Resolver"); const DIST_PKG_NAME = "@sapui5/distribution-metadata"; diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index bfcae796018..ee35220bb9b 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -4,7 +4,7 @@ const {promisify} = require("util"); const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const rename = promisify(fs.rename); -const log = require("@ui5/logger").getLogger("normalizer:ui5Framework:npm:Installer"); +const log = require("@ui5/logger").getLogger("ui5Framework:npm:Installer"); class Installer { constructor({cwd, ui5HomeDir}) { diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index cb908dcb552..696aa3edeae 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -1,4 +1,4 @@ -const log = require("@ui5/logger").getLogger("normalizer:ui5Framework:npm:Registry"); +const log = require("@ui5/logger").getLogger("ui5Framework:npm:Registry"); function logConfig(config, configName) { const configValue = config[configName]; From 4434aa530ca9332c1bfa9f6c3bf236c1e72d7ff3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 15 Jul 2022 10:28:10 +0200 Subject: [PATCH 0650/1272] [ui5-project][INTERNAL] Re-add warning logs for deprecated and SAP-internal projects --- .../project/lib/graph/projectGraphBuilder.js | 37 ++++-- .../project/lib/specifications/Project.js | 11 ++ .../test/lib/graph/projectGraphBuilder.js | 115 ++++++++++++++++++ 3 files changed, 153 insertions(+), 10 deletions(-) diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index 7d840a58405..f193c564cb2 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -136,13 +136,13 @@ module.exports = async function(nodeProvider) { if (rootDependencies && rootDependencies.length) { queue.push({ nodes: rootDependencies, - parentProjectName: rootProjectName + parentProject: rootProject }); } // Breadth-first search while (queue.length) { - const {nodes, parentProjectName} = queue.shift(); // Get and remove first entry from queue + const {nodes, parentProject} = queue.shift(); // Get and remove first entry from queue const res = await Promise.all(nodes.map(async (node) => { let ui5Module = moduleCollection[node.id]; if (!ui5Module) { @@ -158,9 +158,9 @@ module.exports = async function(nodeProvider) { }); } else if (ui5Module.getPath() !== node.path) { log.verbose( - `Inconsistency detected: Tree contains multiple nodes with ID ${node.id} and different paths:` + - `\nPath of already added node (this one will be used): ${ui5Module.getPath()}` + - `\nPath of additional node (this one will be ignored in favor of the other): ${node.path}`); + `Possible inconsistency detected: Dependency ${node.id} is available at multiple paths:` + + `\nLocation of the already added module (this one will be used): ${ui5Module.getPath()}` + + `\nAdditional location (this one will be ignored): ${node.path}`); } const {project, extensions} = await ui5Module.getSpecifications(); @@ -205,7 +205,7 @@ module.exports = async function(nodeProvider) { queue.push({ nodes: Array.prototype.concat.apply([], shimmedNodes), - parentProjectName, + parentProject, }); // Skip collection node continue; @@ -243,11 +243,28 @@ module.exports = async function(nodeProvider) { projectGraph.addProject(project); } - if (parentProjectName) { + if (parentProject) { if (node.optional) { - projectGraph.declareOptionalDependency(parentProjectName, projectName); + projectGraph.declareOptionalDependency(parentProject.getName(), projectName); } else { - projectGraph.declareDependency(parentProjectName, projectName); + projectGraph.declareDependency(parentProject.getName(), projectName); + } + + if (project.getDeprecated() && parentProject === rootProject && + !parentProject.getName().endsWith("/testsuite")) { + // Only warn for direct dependencies of the root project + // No warning for testsuite projects + log.warn( + `Dependency ${project.getName()} is deprecated and should not be used for new projects!`); + } + + if (project.getSapInternal() && parentProject === rootProject && + !parentProject.getAllowSapInternal()) { + // Only warn for direct dependencies of the root project, except it defines "allowSapInternal" + log.warn( + `Dependency ${project.getName()} is restricted for use by SAP internal projects only! ` + + `If the project ${parentProject.getName()} is an SAP internal project, add the attribute ` + + `"allowSapInternal: true" to its metadata configuration`); } } } @@ -269,7 +286,7 @@ module.exports = async function(nodeProvider) { queue.push({ // copy array, so that the queue is stable while ignored project dependencies are removed nodes: [...nodeDependencies], - parentProjectName: project ? project.getName() : parentProjectName, + parentProject: project ? project : parentProject, }); } } diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index b15ab444f6e..a3b7a25a35c 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -78,6 +78,17 @@ class Project extends Specification { return this.__id.startsWith("@openui5/") || this.__id.startsWith("@sapui5/"); } + getDeprecated() { + return !!this._config.metadata.deprecated; + } + + getSapInternal() { + return !!this._config.metadata.sapInternal; + } + getAllowSapInternal() { + return !!this._config.metadata.allowSapInternal; + } + getCustomConfiguration() { return this._config.customConfiguration; } diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index 44c973fae95..54a93878792 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -1,6 +1,7 @@ const test = require("ava"); const path = require("path"); const sinonGlobal = require("sinon"); +const mock = require("mock-require"); const projectGraphBuilder = require("../../../lib/graph/projectGraphBuilder"); @@ -79,6 +80,120 @@ test("Basic graph creation", async (t) => { t.is(t.context.getDependencies.callCount, 1, "NodeProvider#getDependencies got called once"); }); +test("Basic graph with dependencies", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([createNode({ + id: "id2", + name: "project-2" + })]); + t.context.getDependencies.onSecondCall().resolves([createNode({ + id: "id3", + name: "project-3" + })]); + const graph = await projectGraphBuilder(t.context.provider); + + await traverseBreadthFirst(t, graph, [ + "project-1", + "project-2", + "project-3" + ]); + + const p = graph.getProject("project-1"); + t.is(p.getPath(), libraryEPath, "Project returned correct path"); + + t.is(t.context.getRootNode.callCount, 1, "NodeProvider#getRoodNode got called once"); + t.is(t.context.getDependencies.callCount, 3, "NodeProvider#getDependencies got called once"); +}); + +test.serial("Correct warnings logged", async (t) => { + const logWarnStub = t.context.sinon.stub(); + t.context.sinon.stub(require("@ui5/logger"), "getLogger") + .callThrough() + .withArgs("graph:projectGraphBuilder").returns({ + warn: logWarnStub, + verbose: () => "", + }); + const projectGraphBuilder = mock.reRequire("../../../lib/graph/projectGraphBuilder"); + + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + const node2 = createNode({ + id: "id2", + name: "project-2" + }); + node2.configuration.metadata.deprecated = true; + node2.configuration.metadata.sapInternal = true; + t.context.getDependencies.onFirstCall().resolves([node2]); + const node3 = createNode({ + id: "id3", + name: "project-3" + }); + node3.configuration.metadata.deprecated = true; + node3.configuration.metadata.sapInternal = true; + t.context.getDependencies.onSecondCall().resolves([node3]); + const graph = await projectGraphBuilder(t.context.provider); + + await traverseBreadthFirst(t, graph, [ + "project-1", + "project-2", + "project-3" + ]); + + t.is(logWarnStub.callCount, 2, "Two warnings logged"); + t.is(logWarnStub.getCall(0).args[0], "Dependency project-2 is deprecated and should not be used for new projects!", + "Correct deprecation warning logged"); + t.is(logWarnStub.getCall(1).args[0], + `Dependency project-2 is restricted for use by SAP internal projects only! If the project project-1 is an ` + + `SAP internal project, add the attribute "allowSapInternal: true" to its metadata configuration`, + "Correct SAP-internal project warning logged"); +}); + +test.serial("No warnings logged", async (t) => { + const logWarnStub = t.context.sinon.stub(); + t.context.sinon.stub(require("@ui5/logger"), "getLogger") + .callThrough() + .withArgs("graph:projectGraphBuilder").returns({ + warn: logWarnStub, + verbose: () => "", + }); + const projectGraphBuilder = mock.reRequire("../../../lib/graph/projectGraphBuilder"); + + const node1 = createNode({ + id: "id1", + name: "@my-comp/testsuite" // "/testsuite" suffix should suppress deprecation warnings + }); + node1.configuration.metadata.allowSapInternal = true; + t.context.getRootNode.resolves(node1); + const node2 = createNode({ + id: "id2", + name: "project-2" + }); + node2.configuration.metadata.deprecated = true; + node2.configuration.metadata.sapInternal = true; + t.context.getDependencies.onFirstCall().resolves([node2]); + const node3 = createNode({ + id: "id3", + name: "project-3" + }); + node3.configuration.metadata.deprecated = true; + node3.configuration.metadata.sapInternal = true; + t.context.getDependencies.onSecondCall().resolves([node3]); + const graph = await projectGraphBuilder(t.context.provider); + + await traverseBreadthFirst(t, graph, [ + "@my-comp/testsuite", + "project-2", + "project-3" + ]); + + t.is(logWarnStub.callCount, 0, "No warnings logged"); +}); + test("Legacy node with specVersion attribute as root", async (t) => { const node = createNode({ id: "id1" From e679c537a179ffacb378b225d7f62a82614e3190 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 15 Jul 2022 14:23:41 +0000 Subject: [PATCH 0651/1272] [ui5-project]Release 3.0.0-alpha.4 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index c47621a4656..e581053dff4 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.4...HEAD). + + +## [v3.0.0-alpha.4] - 2022-07-15 +### Reverts +- [INTERNAL] Lower coverage thresholds + ## [v3.0.0-alpha.3] - 2022-06-14 @@ -301,6 +307,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.3...v3.0.0-alpha.4 [v3.0.0-alpha.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.2...v3.0.0-alpha.3 [v3.0.0-alpha.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.1...v3.0.0-alpha.2 [v3.0.0-alpha.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.0...v3.0.0-alpha.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9444b09cae9..343cac886aa 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.7", diff --git a/packages/project/package.json b/packages/project/package.json index a98c2ac62a0..6b7b1b297b8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.3", + "version": "3.0.0-alpha.4", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 7cdcb5750193d8d26ea270818e4a915715beb465 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 25 Jul 2022 16:44:24 +0200 Subject: [PATCH 0652/1272] [ui5-project][INTERNAL] Remove unused 'expected' resources --- .../build/application.a/dest-dev/index.html | 9 --------- .../expected/build/application.a/dest-dev/test.js | 5 ----- .../expected/build/application.a/dest/index.html | 9 --------- .../expected/build/application.a/dest/test-dbg.js | 5 ----- .../test/expected/build/application.a/dest/test.js | 1 - .../dest/embedded/i18n/i18n.properties | 1 - .../dest/embedded/i18n/i18n_de.properties | 1 - .../build/application.b/dest/embedded/manifest.json | 13 ------------- .../build/application.b/dest/i18n/i18n.properties | 1 - .../application.b/dest/i18n/i18n_de.properties | 1 - .../expected/build/application.b/dest/manifest.json | 13 ------------- .../library.d/dest/resources/library/d/.library | 11 ----------- .../library.d/dest/resources/library/d/some-dbg.js | 4 ---- .../library.d/dest/resources/library/d/some.js | 4 ---- .../dest/test-resources/library/d/Test.html | 0 .../library.e/dest/resources/library/e/.library | 11 ----------- .../library.e/dest/resources/library/e/some-dbg.js | 6 ------ .../library.e/dest/resources/library/e/some.js | 6 ------ .../dest/test-resources/library/e/Test.html | 0 .../application.a/index_bufferTest.html | 9 --------- .../application.a/index_readableStreamTest.html | 9 --------- .../application.a/index_stringTest.html | 9 --------- 22 files changed, 128 deletions(-) delete mode 100644 packages/project/test/expected/build/application.a/dest-dev/index.html delete mode 100644 packages/project/test/expected/build/application.a/dest-dev/test.js delete mode 100644 packages/project/test/expected/build/application.a/dest/index.html delete mode 100644 packages/project/test/expected/build/application.a/dest/test-dbg.js delete mode 100644 packages/project/test/expected/build/application.a/dest/test.js delete mode 100644 packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n.properties delete mode 100644 packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n_de.properties delete mode 100644 packages/project/test/expected/build/application.b/dest/embedded/manifest.json delete mode 100644 packages/project/test/expected/build/application.b/dest/i18n/i18n.properties delete mode 100644 packages/project/test/expected/build/application.b/dest/i18n/i18n_de.properties delete mode 100644 packages/project/test/expected/build/application.b/dest/manifest.json delete mode 100644 packages/project/test/expected/build/library.d/dest/resources/library/d/.library delete mode 100644 packages/project/test/expected/build/library.d/dest/resources/library/d/some-dbg.js delete mode 100644 packages/project/test/expected/build/library.d/dest/resources/library/d/some.js delete mode 100644 packages/project/test/expected/build/library.d/dest/test-resources/library/d/Test.html delete mode 100644 packages/project/test/expected/build/library.e/dest/resources/library/e/.library delete mode 100644 packages/project/test/expected/build/library.e/dest/resources/library/e/some-dbg.js delete mode 100644 packages/project/test/expected/build/library.e/dest/resources/library/e/some.js delete mode 100644 packages/project/test/expected/build/library.e/dest/test-resources/library/e/Test.html delete mode 100644 packages/project/test/expected/resourceLocators/application.a/index_bufferTest.html delete mode 100644 packages/project/test/expected/resourceLocators/application.a/index_readableStreamTest.html delete mode 100644 packages/project/test/expected/resourceLocators/application.a/index_stringTest.html diff --git a/packages/project/test/expected/build/application.a/dest-dev/index.html b/packages/project/test/expected/build/application.a/dest-dev/index.html deleted file mode 100644 index 77b0207cc80..00000000000 --- a/packages/project/test/expected/build/application.a/dest-dev/index.html +++ /dev/null @@ -1,9 +0,0 @@ - - - - Application A - - - - - \ No newline at end of file diff --git a/packages/project/test/expected/build/application.a/dest-dev/test.js b/packages/project/test/expected/build/application.a/dest-dev/test.js deleted file mode 100644 index a3df410c341..00000000000 --- a/packages/project/test/expected/build/application.a/dest-dev/test.js +++ /dev/null @@ -1,5 +0,0 @@ -function test(paramA) { - var variableA = paramA; - console.log(variableA); -} -test(); diff --git a/packages/project/test/expected/build/application.a/dest/index.html b/packages/project/test/expected/build/application.a/dest/index.html deleted file mode 100644 index 77b0207cc80..00000000000 --- a/packages/project/test/expected/build/application.a/dest/index.html +++ /dev/null @@ -1,9 +0,0 @@ - - - - Application A - - - - - \ No newline at end of file diff --git a/packages/project/test/expected/build/application.a/dest/test-dbg.js b/packages/project/test/expected/build/application.a/dest/test-dbg.js deleted file mode 100644 index a3df410c341..00000000000 --- a/packages/project/test/expected/build/application.a/dest/test-dbg.js +++ /dev/null @@ -1,5 +0,0 @@ -function test(paramA) { - var variableA = paramA; - console.log(variableA); -} -test(); diff --git a/packages/project/test/expected/build/application.a/dest/test.js b/packages/project/test/expected/build/application.a/dest/test.js deleted file mode 100644 index 387af393066..00000000000 --- a/packages/project/test/expected/build/application.a/dest/test.js +++ /dev/null @@ -1 +0,0 @@ -function test(t){var o=t;console.log(o)}test(); \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n.properties b/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n.properties deleted file mode 100644 index d93c8a39c0e..00000000000 --- a/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n.properties +++ /dev/null @@ -1 +0,0 @@ -title=embedded-i18n \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n_de.properties b/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n_de.properties deleted file mode 100644 index e513333c842..00000000000 --- a/packages/project/test/expected/build/application.b/dest/embedded/i18n/i18n_de.properties +++ /dev/null @@ -1 +0,0 @@ -title=embedded-i18n_de \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/embedded/manifest.json b/packages/project/test/expected/build/application.b/dest/embedded/manifest.json deleted file mode 100644 index 5ef0c362425..00000000000 --- a/packages/project/test/expected/build/application.b/dest/embedded/manifest.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "_version": "1.1.0", - "sap.app": { - "_version": "1.1.0", - "id": "id1.embedded", - "type": "component", - "applicationVersion": { - "version": "1.2.2" - }, - "embeddedBy": "../", - "title": "{{title}}" - } -} \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/i18n/i18n.properties b/packages/project/test/expected/build/application.b/dest/i18n/i18n.properties deleted file mode 100644 index 575fb20d0c3..00000000000 --- a/packages/project/test/expected/build/application.b/dest/i18n/i18n.properties +++ /dev/null @@ -1 +0,0 @@ -title=app-i18n \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/i18n/i18n_de.properties b/packages/project/test/expected/build/application.b/dest/i18n/i18n_de.properties deleted file mode 100644 index f5885803892..00000000000 --- a/packages/project/test/expected/build/application.b/dest/i18n/i18n_de.properties +++ /dev/null @@ -1 +0,0 @@ -title=app-i18n_de \ No newline at end of file diff --git a/packages/project/test/expected/build/application.b/dest/manifest.json b/packages/project/test/expected/build/application.b/dest/manifest.json deleted file mode 100644 index 781945df9dc..00000000000 --- a/packages/project/test/expected/build/application.b/dest/manifest.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "_version": "1.1.0", - "sap.app": { - "_version": "1.1.0", - "id": "id1", - "type": "application", - "applicationVersion": { - "version": "1.2.2" - }, - "embeds": ["embedded"], - "title": "{{title}}" - } -} \ No newline at end of file diff --git a/packages/project/test/expected/build/library.d/dest/resources/library/d/.library b/packages/project/test/expected/build/library.d/dest/resources/library/d/.library deleted file mode 100644 index 53c2d14c9d6..00000000000 --- a/packages/project/test/expected/build/library.d/dest/resources/library/d/.library +++ /dev/null @@ -1,11 +0,0 @@ - - - - library.d - SAP SE - Some fancy copyright - ${version} - - Library D - - diff --git a/packages/project/test/expected/build/library.d/dest/resources/library/d/some-dbg.js b/packages/project/test/expected/build/library.d/dest/resources/library/d/some-dbg.js deleted file mode 100644 index cb7722a381e..00000000000 --- a/packages/project/test/expected/build/library.d/dest/resources/library/d/some-dbg.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! - * Some fancy copyright - */ -console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/expected/build/library.d/dest/resources/library/d/some.js b/packages/project/test/expected/build/library.d/dest/resources/library/d/some.js deleted file mode 100644 index a5504d86693..00000000000 --- a/packages/project/test/expected/build/library.d/dest/resources/library/d/some.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! - * Some fancy copyright - */ -console.log("HelloWorld"); \ No newline at end of file diff --git a/packages/project/test/expected/build/library.d/dest/test-resources/library/d/Test.html b/packages/project/test/expected/build/library.d/dest/test-resources/library/d/Test.html deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/packages/project/test/expected/build/library.e/dest/resources/library/e/.library b/packages/project/test/expected/build/library.e/dest/resources/library/e/.library deleted file mode 100644 index 20c99070048..00000000000 --- a/packages/project/test/expected/build/library.e/dest/resources/library/e/.library +++ /dev/null @@ -1,11 +0,0 @@ - - - - library.d - SAP SE - ${copyright} - ${version} - - Library E - - diff --git a/packages/project/test/expected/build/library.e/dest/resources/library/e/some-dbg.js b/packages/project/test/expected/build/library.e/dest/resources/library/e/some-dbg.js deleted file mode 100644 index dc9e1fc914e..00000000000 --- a/packages/project/test/expected/build/library.e/dest/resources/library/e/some-dbg.js +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * UI development toolkit for HTML5 (OpenUI5) - * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. - * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. - */ -console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/expected/build/library.e/dest/resources/library/e/some.js b/packages/project/test/expected/build/library.e/dest/resources/library/e/some.js deleted file mode 100644 index 39e3277ce6e..00000000000 --- a/packages/project/test/expected/build/library.e/dest/resources/library/e/some.js +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * UI development toolkit for HTML5 (OpenUI5) - * (c) Copyright 2009-xxx SAP SE or an SAP affiliate company. - * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. - */ -console.log("HelloWorld"); \ No newline at end of file diff --git a/packages/project/test/expected/build/library.e/dest/test-resources/library/e/Test.html b/packages/project/test/expected/build/library.e/dest/test-resources/library/e/Test.html deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/packages/project/test/expected/resourceLocators/application.a/index_bufferTest.html b/packages/project/test/expected/resourceLocators/application.a/index_bufferTest.html deleted file mode 100644 index 77b0207cc80..00000000000 --- a/packages/project/test/expected/resourceLocators/application.a/index_bufferTest.html +++ /dev/null @@ -1,9 +0,0 @@ - - - - Application A - - - - - \ No newline at end of file diff --git a/packages/project/test/expected/resourceLocators/application.a/index_readableStreamTest.html b/packages/project/test/expected/resourceLocators/application.a/index_readableStreamTest.html deleted file mode 100644 index 77b0207cc80..00000000000 --- a/packages/project/test/expected/resourceLocators/application.a/index_readableStreamTest.html +++ /dev/null @@ -1,9 +0,0 @@ - - - - Application A - - - - - \ No newline at end of file diff --git a/packages/project/test/expected/resourceLocators/application.a/index_stringTest.html b/packages/project/test/expected/resourceLocators/application.a/index_stringTest.html deleted file mode 100644 index 77b0207cc80..00000000000 --- a/packages/project/test/expected/resourceLocators/application.a/index_stringTest.html +++ /dev/null @@ -1,9 +0,0 @@ - - - - Application A - - - - - \ No newline at end of file From 1231f7db9f8c59e2065b6fbe417a7d3443dd2afb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 25 Jul 2022 17:33:48 +0200 Subject: [PATCH 0653/1272] [ui5-project][FIX] Fix build manifest creation Require path was incorrect --- packages/project/lib/build/ProjectBuilder.js | 2 +- .../project/test/lib/build/ProjectBuilder.js | 207 ++++++++++++++++++ 2 files changed, 208 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 142209cc581..4ce644b50fa 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -275,7 +275,7 @@ class ProjectBuilder { if (taskUtil.isRootProject() && buildConfig.createBuildManifest) { // Create and write a build manifest metadata file - const createBuildManifest = require("./build/helpers/createBuildManifest"); + const createBuildManifest = require("./helpers/createBuildManifest"); const metadata = await createBuildManifest(project, buildConfig); await target.write(resourceFactory.createResource({ path: `/.ui5/build-manifest.json`, diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index eb7b27c94c8..c496af854c5 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -471,6 +471,213 @@ test.serial("_buildProject: Requested project is not added to readers", async (t }, "TaskRunner#runTasks got called with expected arguments"); }); +test("_writeResults", async (t) => { + t.context.getRootTypeStub = sinon.stub().returns("library"); + const {graph} = t.context; + const builder = new ProjectBuilder(graph, { + createBuildManifest: false, + otherBuildConfig: "yes" + }); + + const dummyResources = [{ + _resourceName: "resource.a", + getPath: () => "resource.a" + }, { + _resourceName: "resource.b", + getPath: () => "resource.b" + }, { + _resourceName: "resource.c", + getPath: () => "resource.c" + }]; + const byGlobStub = sinon.stub().resolves(dummyResources); + const getReaderStub = sinon.stub().returns({ + byGlob: byGlobStub + }); + const mockProject = getMockProject("library", "c"); + mockProject.getReader = getReaderStub; + + const getTagStub = sinon.stub().returns(false).onFirstCall().returns(true); + const projectBuildContextMock = { + getProject: () => mockProject, + getTaskUtil: () => { + return { + isRootProject: () => false, + getTag: getTagStub, + STANDARD_TAGS: { + OmitFromBuildResult: "OmitFromBuildResultTag" + } + }; + } + }; + const writerMock = { + write: sinon.stub().resolves() + }; + + await builder._writeResults(projectBuildContextMock, writerMock); + + t.is(getReaderStub.callCount, 1, "One reader requested"); + t.deepEqual(getReaderStub.getCall(0).args[0], { + style: "runtime" + }, "Reader requested expected style"); + + t.is(byGlobStub.callCount, 1, "One byGlob call"); + t.is(byGlobStub.getCall(0).args[0], "/**/*", "byGlob called with expected pattern"); + + t.is(getTagStub.callCount, 3, "TaskUtil#getTag got called three times"); + t.is(getTagStub.getCall(0).args[0], dummyResources[0], "TaskUtil#getTag called with first resource"); + t.is(getTagStub.getCall(0).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); + t.is(getTagStub.getCall(1).args[0], dummyResources[1], "TaskUtil#getTag called with second resource"); + t.is(getTagStub.getCall(1).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); + t.is(getTagStub.getCall(2).args[0], dummyResources[2], "TaskUtil#getTag called with third resource"); + t.is(getTagStub.getCall(2).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); + + t.is(writerMock.write.callCount, 2, "Write got called twice"); + t.is(writerMock.write.getCall(0).args[0], dummyResources[1], "Write got called with second resource"); + t.is(writerMock.write.getCall(1).args[0], dummyResources[2], "Write got called with third resource"); +}); + +test.serial("_writeResults: Create build manifest", async (t) => { + t.context.getRootTypeStub = sinon.stub().returns("library"); + const {graph} = t.context; + + const createBuildManifestStub = sinon.stub().returns({"build": "manifest"}); + mock("../../../lib/build/helpers/createBuildManifest", createBuildManifestStub); + const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); + const builder = new ProjectBuilder(graph, { + createBuildManifest: true, + otherBuildConfig: "yes" + }); + + const createResourceStub = sinon.stub(require("@ui5/fs").resourceFactory, "createResource") + .returns("build manifest resource"); + + const dummyResources = [{ + _resourceName: "resource.a", + getPath: () => "resource.a" + }, { + _resourceName: "resource.b", + getPath: () => "resource.b" + }, { + _resourceName: "resource.c", + getPath: () => "resource.c" + }]; + const byGlobStub = sinon.stub().resolves(dummyResources); + const getReaderStub = sinon.stub().returns({ + byGlob: byGlobStub + }); + const mockProject = getMockProject("library", "c"); + mockProject.getReader = getReaderStub; + + const getTagStub = sinon.stub().returns(false).onFirstCall().returns(true); + const projectBuildContextMock = { + getProject: () => mockProject, + getTaskUtil: () => { + return { + isRootProject: () => true, + getTag: getTagStub, + STANDARD_TAGS: { + OmitFromBuildResult: "OmitFromBuildResultTag" + } + }; + } + }; + const writerMock = { + write: sinon.stub().resolves() + }; + + await builder._writeResults(projectBuildContextMock, writerMock); + + t.is(getReaderStub.callCount, 1, "One reader requested"); + t.deepEqual(getReaderStub.getCall(0).args[0], { + style: "buildtime" + }, "Reader requested expected style"); + + t.is(byGlobStub.callCount, 1, "One byGlob call"); + t.is(byGlobStub.getCall(0).args[0], "/**/*", "byGlob called with expected pattern"); + + t.is(createBuildManifestStub.callCount, 1, "createBuildManifest got called once"); + t.is(createBuildManifestStub.getCall(0).args[0], mockProject, + "createBuildManifest got called with correct project"); + t.deepEqual(createBuildManifestStub.getCall(0).args[1], { + createBuildManifest: true, + cssVariables: false, + excludedTasks: [], + includedTasks: [], + jsdoc: false, + selfContained: false, + }, "createBuildManifest got called with correct build configuration"); + + t.is(createResourceStub.callCount, 1, "One resource has been created"); + t.deepEqual(createResourceStub.getCall(0).args[0], { + path: "/.ui5/build-manifest.json", + string: `{ + "build": "manifest" +}` + }, "Build manifest resource has been created with correct arguments"); + + t.is(getTagStub.callCount, 3, "TaskUtil#getTag got called three times"); + t.is(getTagStub.getCall(0).args[0], dummyResources[0], "TaskUtil#getTag called with first resource"); + t.is(getTagStub.getCall(0).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); + t.is(getTagStub.getCall(1).args[0], dummyResources[1], "TaskUtil#getTag called with second resource"); + t.is(getTagStub.getCall(1).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); + t.is(getTagStub.getCall(2).args[0], dummyResources[2], "TaskUtil#getTag called with third resource"); + t.is(getTagStub.getCall(2).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); + + t.is(writerMock.write.callCount, 3, "Write got called three times"); + t.is(writerMock.write.getCall(0).args[0], "build manifest resource", "Write got called with build manifest"); + t.is(writerMock.write.getCall(1).args[0], dummyResources[1], "Write got called with second resource"); + t.is(writerMock.write.getCall(2).args[0], dummyResources[2], "Write got called with third resource"); +}); + +test("_writeResults: Do not create build manifest for non-root project", async (t) => { + t.context.getRootTypeStub = sinon.stub().returns("library"); + const {graph} = t.context; + + const builder = new ProjectBuilder(graph, { + createBuildManifest: true + }); + + const dummyResources = [{ + _resourceName: "resource.a", + getPath: () => "resource.a" + }]; + const byGlobStub = sinon.stub().resolves(dummyResources); + const getReaderStub = sinon.stub().returns({ + byGlob: byGlobStub + }); + const mockProject = getMockProject("library", "c"); + mockProject.getReader = getReaderStub; + + const getTagStub = sinon.stub().returns(false); + const projectBuildContextMock = { + getProject: () => mockProject, + getTaskUtil: () => { + return { + isRootProject: () => false, + getTag: getTagStub, + STANDARD_TAGS: { + OmitFromBuildResult: "OmitFromBuildResultTag" + } + }; + } + }; + const writerMock = { + write: sinon.stub().resolves() + }; + + await builder._writeResults(projectBuildContextMock, writerMock); + + t.is(getReaderStub.callCount, 1, "One reader requested"); + t.deepEqual(getReaderStub.getCall(0).args[0], { + style: "runtime" + }, "Reader requested expected style"); + + t.is(getTagStub.callCount, 1, "TaskUtil#getTag got called once"); + + t.is(writerMock.write.callCount, 1, "Write got called once"); + t.is(writerMock.write.getCall(0).args[0], dummyResources[0], "Write got called with only resource"); +}); + test("_executeCleanupTasks", async (t) => { const {graph} = t.context; const builder = new ProjectBuilder(graph); From d842f68f371ee43b417526515b58209ba3206382 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 26 Jul 2022 09:51:52 +0000 Subject: [PATCH 0654/1272] [ui5-project]Release 3.0.0-alpha.5 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index e581053dff4..aaef04b81e5 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.4...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.5...HEAD). + + +## [v3.0.0-alpha.5] - 2022-07-25 +### Bug Fixes +- Fix build manifest creation [`b1459eb`](https://github.com/SAP/ui5-project/commit/b1459eb26aa8a4b18ad84a369c122c114d64b64b) + ## [v3.0.0-alpha.4] - 2022-07-15 @@ -307,6 +313,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.4...v3.0.0-alpha.5 [v3.0.0-alpha.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.3...v3.0.0-alpha.4 [v3.0.0-alpha.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.2...v3.0.0-alpha.3 [v3.0.0-alpha.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.1...v3.0.0-alpha.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 343cac886aa..64f054e2a49 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.4", + "version": "3.0.0-alpha.5", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.4", + "version": "3.0.0-alpha.5", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.7", diff --git a/packages/project/package.json b/packages/project/package.json index 6b7b1b297b8..626cb86b571 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.4", + "version": "3.0.0-alpha.5", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 583b9e0ea88743095108f4c2eeb83c703367a638 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 26 Jul 2022 16:49:46 +0200 Subject: [PATCH 0655/1272] [ui5-project][FIX] ProjectBuilder: Skip build for projects that do not require to be built --- packages/project/lib/build/ProjectBuilder.js | 10 ++++---- .../project/test/lib/build/ProjectBuilder.js | 24 ++++++++++--------- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 4ce644b50fa..e0adb88f170 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -133,11 +133,13 @@ class ProjectBuilder { for (const projectBuildContext of buildQueue) { const projectName = projectBuildContext.getProject().getName(); - buildLogger.startWork(`Building project ${projectName}...`); - await this._buildProject(projectBuildContext); - buildLogger.completeWork(1); + if (projectBuildContext.getTaskRunner().requiresBuild()) { + buildLogger.startWork(`Building project ${projectName}...`); + await this._buildProject(projectBuildContext); + buildLogger.completeWork(1); - log.verbose(`Finished building project ${projectName}`); + log.verbose(`Finished building project ${projectName}`); + } if (!requestedProjects.includes(projectName)) { // Project has not been requested // => Its resources shall not be part of the build result diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index c496af854c5..4e597992848 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -126,7 +126,7 @@ test("build", async (t) => { "project.a", "project.b", "project.c" ], "_createRequiredBuildContexts got called with correct arguments"); - t.is(requiresBuildStub.callCount, 1, "TaskRunner#requiresBuild got called once"); + t.is(requiresBuildStub.callCount, 2, "TaskRunner#requiresBuild got called twice"); t.is(registerCleanupSigHooksStub.callCount, 1, "_registerCleanupSigHooksStub got called once"); t.is(buildProjectStub.callCount, 1, "_buildProject got called once"); @@ -225,11 +225,13 @@ test.serial("build: Multiple projects", async (t) => { const filterProjectStub = sinon.stub().returns(true).onFirstCall().returns(false); const getProjectFilterStub = sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); - const requiresBuildStub = sinon.stub().returns(true); + const requiresBuildAStub = sinon.stub().returns(true); + const requiresBuildBStub = sinon.stub().returns(false); + const requiresBuildCStub = sinon.stub().returns(true); const projectBuildContextMockA = { getTaskRunner: () => { return { - requiresBuild: requiresBuildStub + requiresBuild: requiresBuildAStub }; }, getProject: sinon.stub().returns(getMockProject("library", "a")) @@ -237,7 +239,7 @@ test.serial("build: Multiple projects", async (t) => { const projectBuildContextMockB = { getTaskRunner: () => { return { - requiresBuild: requiresBuildStub + requiresBuild: requiresBuildBStub }; }, getProject: sinon.stub().returns(getMockProject("library", "b")) @@ -245,7 +247,7 @@ test.serial("build: Multiple projects", async (t) => { const projectBuildContextMockC = { getTaskRunner: () => { return { - requiresBuild: requiresBuildStub + requiresBuild: requiresBuildCStub }; }, getProject: sinon.stub().returns(getMockProject("library", "c")) @@ -280,18 +282,18 @@ test.serial("build: Multiple projects", async (t) => { "project.b", "project.c" ], "_createRequiredBuildContexts got called with correct arguments"); - t.is(requiresBuildStub.callCount, 3, "TaskRunner#requiresBuild got called three times"); + t.is(requiresBuildAStub.callCount, 2, "TaskRunner#requiresBuild got called twice times for library.a"); + t.is(requiresBuildBStub.callCount, 2, "TaskRunner#requiresBuild got called twice times for library.b"); + t.is(requiresBuildCStub.callCount, 2, "TaskRunner#requiresBuild got called twice times for library.c"); t.is(registerCleanupSigHooksStub.callCount, 1, "_registerCleanupSigHooksStub got called once"); - t.is(buildProjectStub.callCount, 3, "_buildProject got called three times"); + t.is(buildProjectStub.callCount, 2, "_buildProject got called three times"); // library.b does not require a build t.is(buildProjectStub.getCall(0).args[0], projectBuildContextMockA, "_buildProject got called with correct arguments"); - t.is(buildProjectStub.getCall(1).args[0], projectBuildContextMockB, - "_buildProject got called with correct arguments"); - t.is(buildProjectStub.getCall(2).args[0], projectBuildContextMockC, + t.is(buildProjectStub.getCall(1).args[0], projectBuildContextMockC, "_buildProject got called with correct arguments"); - t.is(writeResultsStub.callCount, 2, "_writeResults got called twice"); // not all projects have been requested + t.is(writeResultsStub.callCount, 2, "_writeResults got called twice"); // library.a has not been requested t.is(writeResultsStub.getCall(0).args[0], projectBuildContextMockB, "_writeResults got called with correct first argument"); t.is(writeResultsStub.getCall(0).args[1]._fsBasePath, path.resolve("dest/path"), From 1360077ac18a7cc2a15bc4766c0701d9ee1afcbd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 27 Jul 2022 14:45:08 +0200 Subject: [PATCH 0656/1272] [ui5-project][INTERNAL] Move TaskUtil class to ui5-project, allow injection of taskRepository TaskUtil seems to be more influenced by ui5-project. To make it easier to test and change with ui5-project changes, move it to this repository. This also further decouples ui5-project from ui5-builder. Now, ui5-project only requires the task repository from ui5-builder. Therefore add a new, private API to ProjectGraph, allowing injection of the module by ui5-builder tests. This ensures that ui5-builder does not accidentially tests its build with a different version of itself. --- packages/project/lib/build/ProjectBuilder.js | 8 +- packages/project/lib/build/TaskRunner.js | 13 +- .../project/lib/build/helpers/BuildContext.js | 11 +- .../lib/build/helpers/ProjectBuildContext.js | 7 +- .../project/lib/build/helpers/TaskUtil.js | 237 +++++++++++ .../lib/build/helpers/createBuildManifest.js | 2 +- packages/project/lib/graph/ProjectGraph.js | 12 +- .../project/test/lib/build/ProjectBuilder.js | 77 ++-- packages/project/test/lib/build/TaskRunner.js | 127 +++--- .../test/lib/build/helpers/BuildContext.js | 34 +- .../lib/build/helpers/ProjectBuildContext.js | 4 +- .../test/lib/build/helpers/TaskUtil.js | 385 ++++++++++++++++++ 12 files changed, 792 insertions(+), 125 deletions(-) create mode 100644 packages/project/lib/build/helpers/TaskUtil.js create mode 100644 packages/project/test/lib/build/helpers/TaskUtil.js diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index e0adb88f170..30d0eb27a64 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -27,19 +27,23 @@ class ProjectBuilder { * * @public * @param {module:@ui5/project.graph.ProjectGraph} graph Project graph + * @param {module:@ui5/builder.tasks.taskRepository} taskRepository Task Repository module * @param {module:@ui5/project.build.ProjectBuilder.BuildConfiguration} [buildConfig] Build configuration */ - constructor(graph, buildConfig) { + constructor(graph, taskRepository, buildConfig) { if (!graph) { throw new Error(`Missing parameter 'graph'`); } + if (!taskRepository) { + throw new Error(`Missing parameter 'taskRepository'`); + } if (!graph.isSealed()) { throw new Error( `Can not build project graph with root node ${graph.getRoot().getName()}: Graph is not sealed`); } this._graph = graph; - this._buildContext = new BuildContext(graph, buildConfig); + this._buildContext = new BuildContext(graph, taskRepository, buildConfig); } /** diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 53373bb07b7..e5fe9081ebd 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -1,4 +1,3 @@ -const {getTask} = require("@ui5/builder").tasks.taskRepository; const composeTaskList = require("./helpers/composeTaskList"); class TaskRunner { @@ -9,17 +8,19 @@ class TaskRunner { * @param {object} parameters.graph * @param {object} parameters.project * @param {GroupLogger} parameters.parentLogger Logger to use - * @param {module:@ui5/builder.tasks.TaskUtil} parameters.taskUtil TaskUtil instance + * @param {module:@ui5/project.build.helpers.TaskUtil} parameters.taskUtil TaskUtil instance + * @param {module:@ui5/builder.tasks.taskRepository} parameters.taskRepository Task repository * @param {module:@ui5/project.build.ProjectBuilder.BuildConfiguration} parameters.buildConfig * Build configuration */ - constructor({graph, project, parentLogger, taskUtil, buildConfig}) { + constructor({graph, project, parentLogger, taskUtil, taskRepository, buildConfig}) { if (!graph || !project || !parentLogger || !taskUtil || !buildConfig) { throw new Error("One or more mandatory parameters not provided"); } this._project = project; this._graph = graph; this._taskUtil = taskUtil; + this._taskRepository = taskRepository; this._buildConfig = buildConfig; this._log = parentLogger.createSubLogger(project.getType() + " " + project.getName(), 0.2); @@ -49,7 +50,7 @@ class TaskRunner { const standardTasks = buildDefinition({ project, taskUtil, - getTask + getTask: taskRepository.getTask }); for (const [taskName, params] of standardTasks) { @@ -165,7 +166,7 @@ class TaskRunner { } if (!taskFunction) { - taskFunction = getTask(taskName).task; + taskFunction = this._taskRepository.getTask(taskName).task; } return taskFunction(params); }; @@ -206,7 +207,7 @@ class TaskRunner { } let standardTask; try { - standardTask = getTask(taskDef.name); + standardTask = this._taskRepository.getTask(taskDef.name); } catch (e) {/* We expect this to fail with an "Unknown Task" error */} if (standardTask) { throw new Error( diff --git a/packages/project/lib/build/helpers/BuildContext.js b/packages/project/lib/build/helpers/BuildContext.js index b0254761ddb..e6707c3221f 100644 --- a/packages/project/lib/build/helpers/BuildContext.js +++ b/packages/project/lib/build/helpers/BuildContext.js @@ -7,7 +7,7 @@ const ProjectBuildContext = require("./ProjectBuildContext"); * @memberof module:@ui5/project.build.helpers */ class BuildContext { - constructor(graph, { + constructor(graph, taskRepository, { // buildConfig selfContained = false, cssVariables = false, jsdoc = false, @@ -17,6 +17,9 @@ class BuildContext { if (!graph) { throw new Error(`Missing parameter 'graph'`); } + if (!taskRepository) { + throw new Error(`Missing parameter 'taskRepository'`); + } if (createBuildManifest && !["library", "theme-library"].includes(graph.getRoot().getType())) { throw new Error( @@ -34,6 +37,8 @@ class BuildContext { excludedTasks, }; + this._taskRepository = taskRepository; + this._options = { cssVariables: cssVariables }; @@ -52,6 +57,10 @@ class BuildContext { return this._buildConfig; } + getTaskRepository() { + return this._taskRepository; + } + getGraph() { return this._graph; } diff --git a/packages/project/lib/build/helpers/ProjectBuildContext.js b/packages/project/lib/build/helpers/ProjectBuildContext.js index f747f7ca388..47fa96ba91b 100644 --- a/packages/project/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/lib/build/helpers/ProjectBuildContext.js @@ -1,12 +1,12 @@ const ResourceTagCollection = require("@ui5/fs").ResourceTagCollection; -const TaskUtil = require("@ui5/builder").tasks.TaskUtil; +const TaskUtil = require("./TaskUtil"); /** * Build context of a single project. Always part of an overall - * [Build Context]{@link module:@ui5/builder.builder.BuildContext} + * [Build Context]{@link module:@ui5/project.build.helpers.BuildContext} * * @private - * @memberof module:@ui5/builder.builder + * @memberof module:@ui5/project.build.helpers */ class ProjectBuildContext { constructor({buildContext, log, project}) { @@ -102,6 +102,7 @@ class ProjectBuildContext { graph: this._buildContext.getGraph(), project: this._project, taskUtil: this.getTaskUtil(), + taskRepository: this._buildContext.getTaskRepository(), parentLogger: this._log, buildConfig: this._buildContext.getBuildConfig() }); diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js new file mode 100644 index 00000000000..823e3669942 --- /dev/null +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -0,0 +1,237 @@ +/** + * Convenience functions for UI5 tasks. + * An instance of this class is passed to every standard UI5 task that requires it. + * + * Custom tasks that define a specification version >= 2.2 will receive an interface + * to an instance of this class when called. + * The set of available functions on that interface depends on the specification + * version defined for the extension. + * + * @public + * @memberof module:@ui5/project.build.helpers + */ +class TaskUtil { + /** + * Standard Build Tags. See UI5 Tooling + * [RFC 0008]{@link https://github.com/SAP/ui5-tooling/blob/master/rfcs/0008-resource-tagging-during-build.md} + * for details. + * + * @public + * @typedef {object} module:@ui5/project.build.helpers.TaskUtil~StandardBuildTags + * @property {string} OmitFromBuildResult + * Setting this tag to true will prevent the resource from being written to the build target directory + * @property {string} IsBundle + * This tag identifies resources that contain (i.e. bundle) multiple other resources + * @property {string} IsDebugVariant + * This tag identifies resources that are a debug variant (typically named with a "-dbg" suffix) + * of another resource. This tag is part of the build manifest. + * @property {string} HasDebugVariant + * This tag identifies resources for which a debug variant has been created. + * This tag is part of the build manifest. + */ + + /** + * Since @ui5/project.build.helpers.ProjectBuildContext is a private class, TaskUtil must not be + * instantiated by modules other than @ui5/project itself. + * + * @param {object} parameters + * @param {module:@ui5/project.build.helpers.ProjectBuildContext} parameters.projectBuildContext ProjectBuildContext + * @public + */ + constructor({projectBuildContext}) { + this._projectBuildContext = projectBuildContext; + /** + * @member {module:@ui5/project.build.helpers.TaskUtil~StandardBuildTags} + * @public + */ + this.STANDARD_TAGS = Object.freeze({ + // "Project" tags: + // Will be stored on project instance and are hence part of the build manifest + IsDebugVariant: "ui5:IsDebugVariant", + HasDebugVariant: "ui5:HasDebugVariant", + + // "Build" tags: + // Will be stored on the project build context + // They are only available to the build tasks of a single project + OmitFromBuildResult: "ui5:OmitFromBuildResult", + IsBundle: "ui5:IsBundle" + }); + } + + /** + * Stores a tag with value for a given resource's path. Note that the tag is independent of the supplied + * resource instance. For two resource instances with the same path, the same tag value is returned. + * If the path of a resource is changed, any tag information previously stored for that resource is lost. + * + *

+ * This method is only available to custom task extensions defining + * Specification Version 2.2 and above. + * + * @param {module:@ui5/fs.Resource} resource Resource-instance the tag should be stored for + * @param {string} tag Name of the tag. Currently only the + * [STANDARD_TAGS]{@link module:@ui5/project.build.helpers.TaskUtil#STANDARD_TAGS} are allowed + * @param {string|boolean|integer} [value=true] Tag value. Must be primitive + * @public + */ + setTag(resource, tag, value) { + if (typeof resource === "string") { + throw new Error("Deprecated parameter: " + + "Since UI5 Tooling 3.0, #setTag requires a resource instance. Strings are no longer accepted"); + } + + const collection = this._projectBuildContext.getResourceTagCollection(resource, tag); + return collection.setTag(resource, tag, value); + } + + /** + * Retrieves the value for a stored tag. If no value is stored, undefined is returned. + * + *

+ * This method is only available to custom task extensions defining + * Specification Version 2.2 and above. + * + * @param {module:@ui5/fs.Resource} resource Resource-instance the tag should be retrieved for + * @param {string} tag Name of the tag + * @returns {string|boolean|integer|undefined} Tag value for the given resource. + * undefined if no value is available + * @public + */ + getTag(resource, tag) { + if (typeof resource === "string") { + throw new Error("Deprecated parameter: " + + "Since UI5 Tooling 3.0, #getTag requires a resource instance. Strings are no longer accepted"); + } + const collection = this._projectBuildContext.getResourceTagCollection(resource, tag); + return collection.getTag(resource, tag); + } + + /** + * Clears the value of a tag stored for the given resource's path. + * It's like the tag was never set for that resource. + * + *

+ * This method is only available to custom task extensions defining + * Specification Version 2.2 and above. + * + * @param {module:@ui5/fs.Resource} resource Resource-instance the tag should be cleared for + * @param {string} tag Tag + * @public + */ + clearTag(resource, tag) { + if (typeof resource === "string") { + throw new Error("Deprecated parameter: " + + "Since UI5 Tooling 3.0, #clearTag requires a resource instance. Strings are no longer accepted"); + } + const collection = this._projectBuildContext.getResourceTagCollection(resource, tag); + return collection.clearTag(resource, tag); + } + + /** + * Check whether the project currently being built is the root project. + * + *

+ * This method is only available to custom task extensions defining + * Specification Version 2.2 and above. + * + * @returns {boolean} true if the currently built project is the root project + * @public + */ + isRootProject() { + return this._projectBuildContext.isRootProject(); + } + + /** + * Retrieves a build option defined by its keykey is stored, undefined is returned. + * + * @param {string} key The option key + * @returns {any|undefined} The build option (or undefined) + * @private + */ + getBuildOption(key) { + return this._projectBuildContext.getOption(key); + } + + /** + * Register a function that must be executed once the build is finished. This can be used to, for example, + * clean up files temporarily created on the file system. If the callback returns a Promise, it will be waited for. + * It will also be executed in cases where the build has failed or has been aborted. + * + *

+ * This method is only available to custom task extensions defining + * Specification Version 2.2 and above. + * + * @param {Function} callback Callback to register. If it returns a Promise, it will be waited for + * @public + */ + registerCleanupTask(callback) { + return this._projectBuildContext.registerCleanupTask(callback); + } + + /** + * Retrieve a single project from the dependency graph + * + *

+ * This method is only available to custom task extensions defining + * Specification Version 3.0 and above. + * + * @param {string} projectName Name of the project to retrieve + * @returns {module:@ui5/project.specifications.Project|undefined} + * project instance or undefined if the project is unknown to the graph + * @public + */ + getProject(projectName) { + return this._projectBuildContext.getProject(projectName); + } + + /** + * Get an interface to an instance of this class that only provides those functions + * that are supported by the given custom task extension specification version. + * + * @param {string} specVersion Specification version of custom task extension + * @returns {object} An object with bound instance methods supported by the given specification version + */ + getInterface(specVersion) { + if (["0.1", "1.0", "1.1", "2.0", "2.1"].includes(specVersion)) { + return undefined; + } + + const baseInterface = { + STANDARD_TAGS: this.STANDARD_TAGS, + }; + bindFunctions(this, baseInterface, [ + "setTag", "clearTag", "getTag", "isRootProject", "registerCleanupTask" + ]); + switch (specVersion) { + case "2.2": + case "2.3": + case "2.4": + case "2.5": + case "2.6": + return baseInterface; + case "3.0": + baseInterface.getProject = (projectName) => { + const project = this.getProject(projectName); + const baseProjectInterface = {}; + bindFunctions(project, baseProjectInterface, [ + "getName", "getVersion", "getNamespace" + ]); + switch (specVersion) { + case "3.0": + return baseProjectInterface; + } + }; + return baseInterface; + default: + throw new Error(`TaskUtil: Unknown or unsupported Specification Version ${specVersion}`); + } + } +} + +function bindFunctions(sourceObject, targetObject, funcNames) { + funcNames.forEach((funcName) => { + targetObject[funcName] = sourceObject[funcName].bind(sourceObject); + }); +} + +module.exports = TaskUtil; diff --git a/packages/project/lib/build/helpers/createBuildManifest.js b/packages/project/lib/build/helpers/createBuildManifest.js index 0a516fe03f0..6dd97a9951c 100644 --- a/packages/project/lib/build/helpers/createBuildManifest.js +++ b/packages/project/lib/build/helpers/createBuildManifest.js @@ -47,7 +47,7 @@ module.exports = async function(project, buildConfig) { buildConfig, version: project.getVersion(), namespace: project.getNamespace(), - tags: project.getResourceTagCollection().getAllTags() + tags: Object.fromEntries(Object.entries(project.getResourceTagCollection().getAllTags()).sort()) } }; diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 5dbfe95bf9c..6ab90c0e84b 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -452,6 +452,14 @@ class ProjectGraph { } } + setTaskRepository(taskRepository) { + this._taskRepository = taskRepository; + } + + getTaskRepository() { + return this._taskRepository || require("@ui5/builder").tasks.taskRepository; + } + /** * Executes a build on the graph * @@ -481,7 +489,7 @@ class ProjectGraph { includedDependencies = [], excludedDependencies = [], complexDependencyIncludes, selfContained = false, cssVariables = false, jsdoc = false, createBuildManifest = false, - includedTasks = [], excludedTasks = [], + includedTasks = [], excludedTasks = [] }) { this.seal(); if (this._built) { @@ -491,7 +499,7 @@ class ProjectGraph { } this._built = true; const ProjectBuilder = require("../build/ProjectBuilder"); - const builder = new ProjectBuilder(this, { + const builder = new ProjectBuilder(this, this.getTaskRepository(), { selfContained, cssVariables, jsdoc, createBuildManifest, includedTasks, excludedTasks, diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 4e597992848..16c6eb508f2 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -23,6 +23,7 @@ function getMockProject(type, id = "b") { test.beforeEach((t) => { t.context.getRootNameStub = sinon.stub().returns("project.a"); t.context.getRootTypeStub = sinon.stub().returns("application"); + t.context.taskRepository = "taskRepository"; t.context.graph = { getRoot: () => { return { @@ -74,18 +75,24 @@ test.afterEach.always(() => { mock.stopAll(); }); -test("Missing graph parameter", async (t) => { - const err = t.throws(() => { +test("Missing graph parameters", async (t) => { + const err1 = t.throws(() => { new ProjectBuilder(); }); - t.is(err.message, "Missing parameter 'graph'", + t.is(err1.message, "Missing parameter 'graph'", + "Threw with expected error message"); + + const err2 = t.throws(() => { + new ProjectBuilder("graph"); + }); + t.is(err2.message, "Missing parameter 'taskRepository'", "Threw with expected error message"); }); test("build", async (t) => { - const {graph} = t.context; + const {graph, taskRepository} = t.context; - const builder = new ProjectBuilder(graph); + const builder = new ProjectBuilder(graph, taskRepository); const filterProjectStub = sinon.stub().returns(true); const getProjectFilterStub = sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); @@ -146,9 +153,9 @@ test("build", async (t) => { }); test("build: Missing dest parameter", async (t) => { - const {graph} = t.context; + const {graph, taskRepository} = t.context; - const builder = new ProjectBuilder(graph); + const builder = new ProjectBuilder(graph, taskRepository); const err = await t.throwsAsync(builder.build({ destPath: "dest/path", @@ -164,9 +171,9 @@ test("build: Missing dest parameter", async (t) => { }); test("build: Too many dependency parameters", async (t) => { - const {graph} = t.context; + const {graph, taskRepository} = t.context; - const builder = new ProjectBuilder(graph); + const builder = new ProjectBuilder(graph, taskRepository); const err = await t.throwsAsync(builder.build({ includedDependencies: ["dep a"], @@ -177,9 +184,9 @@ test("build: Too many dependency parameters", async (t) => { }); test("build: Failure", async (t) => { - const {graph} = t.context; + const {graph, taskRepository} = t.context; - const builder = new ProjectBuilder(graph); + const builder = new ProjectBuilder(graph, taskRepository); const filterProjectStub = sinon.stub().returns(true); sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); @@ -219,8 +226,8 @@ test("build: Failure", async (t) => { }); test.serial("build: Multiple projects", async (t) => { - const {graph} = t.context; - const builder = new ProjectBuilder(graph); + const {graph, taskRepository} = t.context; + const builder = new ProjectBuilder(graph, taskRepository); const filterProjectStub = sinon.stub().returns(true).onFirstCall().returns(false); const getProjectFilterStub = sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); @@ -310,9 +317,9 @@ test.serial("build: Multiple projects", async (t) => { }); test("_createRequiredBuildContexts", async (t) => { - const {graph} = t.context; + const {graph, taskRepository} = t.context; - const builder = new ProjectBuilder(graph); + const builder = new ProjectBuilder(graph, taskRepository); const requiresBuildStub = sinon.stub().returns(true); const requiresDependenciesStub = sinon.stub().returns(false).onFirstCall().returns(true); @@ -353,7 +360,7 @@ test("_createRequiredBuildContexts", async (t) => { }); test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { - const {graph} = t.context; + const {graph, taskRepository} = t.context; const composeProjectListStub = sinon.stub().returns({ includedDependencies: ["project.b", "project.c"], @@ -361,7 +368,7 @@ test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { }); mock("../../../lib/build/helpers/composeProjectList", composeProjectListStub); const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); - const builder = new ProjectBuilder(graph); + const builder = new ProjectBuilder(graph, taskRepository); const filterProject = await builder._getProjectFilter({ complexDependencyIncludes: "complexDependencyIncludes", @@ -383,7 +390,7 @@ test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { }); test.serial("_getProjectFilter with explicit include/exclude", async (t) => { - const {graph} = t.context; + const {graph, taskRepository} = t.context; const composeProjectListStub = sinon.stub().returns({ includedDependencies: ["project.b", "project.c"], @@ -391,7 +398,7 @@ test.serial("_getProjectFilter with explicit include/exclude", async (t) => { }); mock("../../../lib/build/helpers/composeProjectList", composeProjectListStub); const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); - const builder = new ProjectBuilder(graph); + const builder = new ProjectBuilder(graph, taskRepository); const filterProject = await builder._getProjectFilter({ explicitIncludes: "explicitIncludes", @@ -414,8 +421,8 @@ test.serial("_getProjectFilter with explicit include/exclude", async (t) => { }); test.serial("_buildProject", async (t) => { - const {graph} = t.context; - const builder = new ProjectBuilder(graph); + const {graph, taskRepository} = t.context; + const builder = new ProjectBuilder(graph, taskRepository); const readerCollectionStub = sinon.stub(require("@ui5/fs").resourceFactory, "createReaderCollection") .returns("dependencies"); @@ -444,8 +451,8 @@ test.serial("_buildProject", async (t) => { }); test.serial("_buildProject: Requested project is not added to readers", async (t) => { - const {graph} = t.context; - const builder = new ProjectBuilder(graph); + const {graph, taskRepository} = t.context; + const builder = new ProjectBuilder(graph, taskRepository); const readerCollectionStub = sinon.stub(require("@ui5/fs").resourceFactory, "createReaderCollection") .returns("dependencies"); @@ -475,8 +482,8 @@ test.serial("_buildProject: Requested project is not added to readers", async (t test("_writeResults", async (t) => { t.context.getRootTypeStub = sinon.stub().returns("library"); - const {graph} = t.context; - const builder = new ProjectBuilder(graph, { + const {graph, taskRepository} = t.context; + const builder = new ProjectBuilder(graph, taskRepository, { createBuildManifest: false, otherBuildConfig: "yes" }); @@ -540,12 +547,12 @@ test("_writeResults", async (t) => { test.serial("_writeResults: Create build manifest", async (t) => { t.context.getRootTypeStub = sinon.stub().returns("library"); - const {graph} = t.context; + const {graph, taskRepository} = t.context; const createBuildManifestStub = sinon.stub().returns({"build": "manifest"}); mock("../../../lib/build/helpers/createBuildManifest", createBuildManifestStub); const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); - const builder = new ProjectBuilder(graph, { + const builder = new ProjectBuilder(graph, taskRepository, { createBuildManifest: true, otherBuildConfig: "yes" }); @@ -633,9 +640,9 @@ test.serial("_writeResults: Create build manifest", async (t) => { test("_writeResults: Do not create build manifest for non-root project", async (t) => { t.context.getRootTypeStub = sinon.stub().returns("library"); - const {graph} = t.context; + const {graph, taskRepository} = t.context; - const builder = new ProjectBuilder(graph, { + const builder = new ProjectBuilder(graph, taskRepository, { createBuildManifest: true }); @@ -681,8 +688,8 @@ test("_writeResults: Do not create build manifest for non-root project", async ( }); test("_executeCleanupTasks", async (t) => { - const {graph} = t.context; - const builder = new ProjectBuilder(graph); + const {graph, taskRepository} = t.context; + const builder = new ProjectBuilder(graph, taskRepository); const executeCleanupTasksStub = sinon.stub(builder._buildContext, "executeCleanupTasks"); builder._executeCleanupTasks(); @@ -700,8 +707,8 @@ function getProcessListenerCount() { test.serial("_registerCleanupSigHooks/_deregisterCleanupSigHooks", async (t) => { const listenersBefore = getProcessListenerCount(); - const {graph} = t.context; - const builder = new ProjectBuilder(graph); + const {graph, taskRepository} = t.context; + const builder = new ProjectBuilder(graph, taskRepository); const signals = builder._registerCleanupSigHooks(); @@ -718,8 +725,8 @@ test.serial("_registerCleanupSigHooks/_deregisterCleanupSigHooks", async (t) => }); test("_getElapsedTime", async (t) => { - const {graph} = t.context; - const builder = new ProjectBuilder(graph); + const {graph, taskRepository} = t.context; + const builder = new ProjectBuilder(graph, taskRepository); const res = builder._getElapsedTime(process.hrtime()); t.truthy(res, "Returned a value"); diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 2352e191fab..6d92b8ff987 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -3,6 +3,7 @@ const sinon = require("sinon"); const mock = require("mock-require"); const parentLogger = require("@ui5/logger").getGroupLogger("mygroup"); +const taskRepository = require("@ui5/builder").tasks.taskRepository; const TaskRunner = require("../../../lib/build/TaskRunner"); @@ -65,6 +66,8 @@ test.beforeEach((t) => { getInterface: sinon.stub() }; + t.context.taskRepository = taskRepository; // TODO: Mock? + t.context.graph = { getRoot: () => { return { @@ -76,9 +79,9 @@ test.beforeEach((t) => { }); test("Project of type 'application'", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("application"), graph, taskUtil, parentLogger, buildConfig + project: getMockProject("application"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", @@ -99,9 +102,9 @@ test("Project of type 'application'", (t) => { }); test("Project of type 'library'", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("library"), graph, taskUtil, parentLogger, buildConfig + project: getMockProject("library"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -124,9 +127,9 @@ test("Project of type 'library'", (t) => { }); test("Project of type 'theme-library'", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("theme-library"), graph, taskUtil, parentLogger, buildConfig + project: getMockProject("theme-library"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -139,19 +142,19 @@ test("Project of type 'theme-library'", (t) => { }); test("Project of type 'module'", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("module"), graph, taskUtil, parentLogger, buildConfig + project: getMockProject("module"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [], "Correct standard tasks"); }); test("Unknown project type", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const err = t.throws(() => { new TaskRunner({ - project: getMockProject("pony"), graph, taskUtil, parentLogger, buildConfig + project: getMockProject("pony"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); @@ -159,14 +162,14 @@ test("Unknown project type", (t) => { }); test("Custom tasks", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"}, {name: "myOtherTask", beforeTask: "replaceVersion"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", @@ -189,14 +192,14 @@ test("Custom tasks", (t) => { }); test("Custom tasks with no standard tasks", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"}, {name: "myOtherTask", beforeTask: "myTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [ "myOtherTask", @@ -205,7 +208,7 @@ test("Custom tasks with no standard tasks", (t) => { }); test("Custom tasks with no standard tasks and second task defining no before-/afterTask", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"}, @@ -213,7 +216,7 @@ test("Custom tasks with no standard tasks and second task defining no before-/af ]; const err = t.throws(() => { new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); t.is(err.message, @@ -223,14 +226,14 @@ test("Custom tasks with no standard tasks and second task defining no before-/af }); test("Custom tasks with both, before- and afterTask reference", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "minify", afterTask: "replaceVersion"} ]; const err = t.throws(() => { new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); t.is(err.message, @@ -240,14 +243,14 @@ test("Custom tasks with both, before- and afterTask reference", (t) => { }); test("Custom tasks with no before-/afterTask reference", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask"} ]; const err = t.throws(() => { new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); t.is(err.message, @@ -257,14 +260,14 @@ test("Custom tasks with no before-/afterTask reference", (t) => { }); test("Custom tasks without name", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: ""} ]; const err = t.throws(() => { new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); t.is(err.message, @@ -273,14 +276,14 @@ test("Custom tasks without name", (t) => { }); test("Custom task with name of standard tasks", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "replaceVersion", afterTask: "minify"} ]; const err = t.throws(() => { new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); t.is(err.message, @@ -290,7 +293,7 @@ test("Custom task with name of standard tasks", (t) => { }); test("Multiple custom tasks with same name", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"}, @@ -298,7 +301,7 @@ test("Multiple custom tasks with same name", (t) => { {name: "myTask", afterTask: "minify"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", @@ -322,14 +325,14 @@ test("Multiple custom tasks with same name", (t) => { }); test("Custom tasks with unknown beforeTask", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "unknownTask"} ]; const err = t.throws(() => { new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); t.is(err.message, @@ -339,14 +342,14 @@ test("Custom tasks with unknown beforeTask", (t) => { }); test("Custom tasks with unknown afterTask", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "unknownTask"} ]; const err = t.throws(() => { new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); t.is(err.message, @@ -356,7 +359,7 @@ test("Custom tasks with unknown afterTask", (t) => { }); test("Custom tasks is unknown", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; graph.getExtension.returns(undefined); const project = getMockProject("application"); project.getCustomTasks = () => [ @@ -364,7 +367,7 @@ test("Custom tasks is unknown", (t) => { ]; const err = t.throws(() => { new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); t.is(err.message, @@ -374,7 +377,7 @@ test("Custom tasks is unknown", (t) => { }); test("Custom task is called correctly", async (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const taskStub = sinon.stub(); graph.getExtension.returns({ getTask: () => taskStub, @@ -387,7 +390,7 @@ test("Custom task is called correctly", async (t) => { ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); @@ -416,7 +419,7 @@ test("Custom task is called correctly", async (t) => { }); test("Custom task with legacy spec version", async (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const taskStub = sinon.stub(); graph.getExtension.returns({ getTask: () => taskStub, @@ -429,7 +432,7 @@ test("Custom task with legacy spec version", async (t) => { ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); @@ -457,7 +460,7 @@ test("Custom task with legacy spec version", async (t) => { }); test("Custom task with specVersion 3.0", async (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const taskStub = sinon.stub(); graph.getExtension.returns({ getTask: () => taskStub, @@ -470,7 +473,7 @@ test("Custom task with specVersion 3.0", async (t) => { ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); @@ -500,7 +503,7 @@ test("Custom task with specVersion 3.0", async (t) => { }); test("Multiple custom tasks with same name are called correctly", async (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const taskStub1 = sinon.stub(); const taskStub2 = sinon.stub(); const taskStub3 = sinon.stub(); @@ -523,7 +526,7 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { {name: "myTask", afterTask: "myTask", configuration: "bird"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); @@ -599,10 +602,10 @@ test.serial("_addTask", async (t) => { }); const TaskRunner = mock.reRequire("../../../lib/build/TaskRunner"); - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); taskRunner._addTask("standardTask"); @@ -640,10 +643,10 @@ test.serial("_addTask with options", async (t) => { const getTaskStub = sinon.stub(require("@ui5/builder").tasks.taskRepository, "getTask").returns({}); const TaskRunner = mock.reRequire("../../../lib/build/TaskRunner"); - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); taskRunner._addTask("standardTask", { @@ -683,10 +686,10 @@ test.serial("_addTask with options", async (t) => { }); test("_addTask: Duplicate task", async (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); taskRunner._addTask("standardTask", { @@ -703,10 +706,10 @@ test("_addTask: Duplicate task", async (t) => { }); test("_addTask: Task already added to execution order", async (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); taskRunner._taskExecutionOrder.push("standardTask"); @@ -721,74 +724,74 @@ test("_addTask: Task already added to execution order", async (t) => { }); test("requiresDependencies: Custom Task", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.true(taskRunner.requiresDependencies(), "Project with custom task requires dependencies"); }); test("requiresDependencies: Default application", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getBundles = () => []; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.false(taskRunner.requiresDependencies(), "Default application project does not require dependencies"); }); test("requiresDependencies: Default library", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("library"); project.getBundles = () => []; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.true(taskRunner.requiresDependencies(), "Default library project requires dependencies"); }); test("requiresDependencies: Default theme-library", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("theme-library"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.true(taskRunner.requiresDependencies(), "Default theme-library project requires dependencies"); }); test("requiresDependencies: Default module", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.false(taskRunner.requiresDependencies(), "Default module project does not require dependencies"); }); test("requiresBuild: has no build-manifest", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("library"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.true(taskRunner.requiresBuild(), "Project without build-manifest requires to be build"); }); test("requiresBuild: has build-manifest", (t) => { - const {graph, taskUtil} = t.context; + const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("library"); project.hasBuildManifest = () => true; const taskRunner = new TaskRunner({ - project, graph, taskUtil, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.false(taskRunner.requiresBuild(), "Project with build-manifest does not require to be build"); }); diff --git a/packages/project/test/lib/build/helpers/BuildContext.js b/packages/project/test/lib/build/helpers/BuildContext.js index 6befb0d8c98..15c6347d4b2 100644 --- a/packages/project/test/lib/build/helpers/BuildContext.js +++ b/packages/project/test/lib/build/helpers/BuildContext.js @@ -10,29 +10,41 @@ test.afterEach.always((t) => { const BuildContext = require("../../../../lib/build/helpers/BuildContext"); test("Missing parameters", (t) => { - const error = t.throws(() => { + const error1 = t.throws(() => { new BuildContext(); }); - t.is(error.message, `Missing parameter 'graph'`, "Threw with expected error message"); + t.is(error1.message, `Missing parameter 'graph'`, "Threw with expected error message"); + + const error2 = t.throws(() => { + new BuildContext("graph"); + }); + + t.is(error2.message, `Missing parameter 'taskRepository'`, "Threw with expected error message"); }); test("getRootProject", (t) => { const buildContext = new BuildContext({ getRoot: () => "pony" - }); + }, "taskRepository"); t.is(buildContext.getRootProject(), "pony", "Returned correct value"); }); test("getGraph", (t) => { - const buildContext = new BuildContext("graph"); + const buildContext = new BuildContext("graph", "taskRepository"); t.is(buildContext.getGraph(), "graph", "Returned correct value"); }); +test("getTaskRepository", (t) => { + const buildContext = new BuildContext("graph", "taskRepository"); + + t.is(buildContext.getTaskRepository(), "taskRepository", "Returned correct value"); +}); + test("getBuildConfig: Default values", (t) => { - const buildContext = new BuildContext("graph"); + const buildContext = new BuildContext("graph", "taskRepository"); t.deepEqual(buildContext.getBuildConfig(), { selfContained: false, @@ -51,7 +63,7 @@ test("getBuildConfig: Custom values", (t) => { getType: () => "library" }; } - }, { + }, "taskRepository", { selfContained: true, cssVariables: true, jsdoc: true, @@ -78,7 +90,7 @@ test("createBuildManifest not supported", (t) => { getType: () => "pony" }; } - }, { + }, "taskRepository", { createBuildManifest: true }); }); @@ -88,7 +100,7 @@ test("createBuildManifest not supported", (t) => { }); test("getBuildOption", (t) => { - const buildContext = new BuildContext("graph", { + const buildContext = new BuildContext("graph", "taskRepository", { cssVariables: "value", }); @@ -110,8 +122,7 @@ test.serial("createProjectContext", (t) => { mock("../../../../lib/build/helpers/ProjectBuildContext", DummyProjectContext); const BuildContext = mock.reRequire("../../../../lib/build/helpers/BuildContext"); - const testBuildContext = new BuildContext("graph" - ); + const testBuildContext = new BuildContext("graph", "taskRepository"); const projectContext = testBuildContext.createProjectContext({ project: "project", @@ -125,8 +136,7 @@ test.serial("createProjectContext", (t) => { }); test("executeCleanupTasks", async (t) => { - const buildContext = new BuildContext("graph" - ); + const buildContext = new BuildContext("graph", "taskRepository"); const executeCleanupTasks = sinon.stub().resolves(); diff --git a/packages/project/test/lib/build/helpers/ProjectBuildContext.js b/packages/project/test/lib/build/helpers/ProjectBuildContext.js index 957808b1ce0..5c3373f27a4 100644 --- a/packages/project/test/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/test/lib/build/helpers/ProjectBuildContext.js @@ -241,6 +241,7 @@ test.serial("getTaskRunner", (t) => { graph: "graph", project: "project", taskUtil: "taskUtil", + taskRepository: "taskRepository", parentLogger: "log", buildConfig: "buildConfig", }, "Created TaskRunner instance with correct parameters"); @@ -253,7 +254,8 @@ test.serial("getTaskRunner", (t) => { const projectBuildContext = new ProjectBuildContext({ buildContext: { getGraph: () => "graph", - getBuildConfig: () => "buildConfig" + getBuildConfig: () => "buildConfig", + getTaskRepository: () => "taskRepository", }, project: "project", log: "log", diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js new file mode 100644 index 00000000000..e08593f1803 --- /dev/null +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -0,0 +1,385 @@ +const test = require("ava"); +const sinon = require("sinon"); +const TaskUtil = require("../../../../lib/build/helpers/TaskUtil"); + +test.afterEach.always((t) => { + sinon.restore(); +}); + +const STANDARD_TAGS = Object.freeze({ + IsDebugVariant: "ui5:IsDebugVariant", + HasDebugVariant: "ui5:HasDebugVariant", + OmitFromBuildResult: "ui5:OmitFromBuildResult", + IsBundle: "ui5:IsBundle" +}); + +test("Instantiation", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: { + // STANDARD_TAGS: ["some tag", "some other tag", "Thursday"] + } + }); + + t.deepEqual(taskUtil.STANDARD_TAGS, STANDARD_TAGS, "Correct standard tags exposed"); +}); + +test("setTag", async (t) => { + const setTagStub = sinon.stub(); + const taskUtil = new TaskUtil({ + projectBuildContext: { + getResourceTagCollection: () => { + return { + setTag: setTagStub + }; + } + } + }); + + const dummyResource = {}; + taskUtil.setTag(dummyResource, "my tag", "my value"); + + t.is(setTagStub.callCount, 1, "ResourceTagCollection#setTag got called once"); + t.deepEqual(setTagStub.getCall(0).args[0], dummyResource, "Correct resource parameter supplied"); + t.deepEqual(setTagStub.getCall(0).args[1], "my tag", "Correct tag parameter supplied"); + t.deepEqual(setTagStub.getCall(0).args[2], "my value", "Correct value parameter supplied"); +}); + +test("getTag", async (t) => { + const getTagStub = sinon.stub().returns(42); + const taskUtil = new TaskUtil({ + projectBuildContext: { + getResourceTagCollection: () => { + return { + getTag: getTagStub + }; + } + } + }); + + const dummyResource = {}; + const res = taskUtil.getTag(dummyResource, "my tag", "my value"); + + t.is(getTagStub.callCount, 1, "ResourceTagCollection#getTag got called once"); + t.deepEqual(getTagStub.getCall(0).args[0], dummyResource, "Correct resource parameter supplied"); + t.deepEqual(getTagStub.getCall(0).args[1], "my tag", "Correct tag parameter supplied"); + t.is(res, 42, "Correct result"); +}); + +test("clearTag", async (t) => { + const clearTagStub = sinon.stub(); + const taskUtil = new TaskUtil({ + projectBuildContext: { + getResourceTagCollection: () => { + return { + clearTag: clearTagStub + }; + } + } + }); + + const dummyResource = {}; + taskUtil.clearTag(dummyResource, "my tag", "my value"); + + t.is(clearTagStub.callCount, 1, "ResourceTagCollection#clearTag got called once"); + t.deepEqual(clearTagStub.getCall(0).args[0], dummyResource, "Correct resource parameter supplied"); + t.deepEqual(clearTagStub.getCall(0).args[1], "my tag", "Correct tag parameter supplied"); +}); + +test("setTag with resource path is not supported anymore", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + + const err = t.throws(() => { + taskUtil.setTag("my resource", "my tag", "my value"); + }); + t.is(err.message, + "Deprecated parameter: Since UI5 Tooling 3.0, #setTag " + + "requires a resource instance. Strings are no longer accepted", + "Threw with expected error message"); +}); + +test("getTag with resource path is not supported anymore", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + + const err = t.throws(() => { + taskUtil.getTag("my resource", "my tag", "my value"); + }); + t.is(err.message, + "Deprecated parameter: Since UI5 Tooling 3.0, #getTag " + + "requires a resource instance. Strings are no longer accepted", + "Threw with expected error message"); +}); + +test("clearTag with resource path is not supported anymore", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + + const err = t.throws(() => { + taskUtil.clearTag("my resource", "my tag", "my value"); + }); + t.is(err.message, + "Deprecated parameter: Since UI5 Tooling 3.0, #clearTag " + + "requires a resource instance. Strings are no longer accepted", + "Threw with expected error message"); +}); + +test("isRootProject", async (t) => { + const isRootProjectStub = sinon.stub().returns(true); + const taskUtil = new TaskUtil({ + projectBuildContext: { + isRootProject: isRootProjectStub + } + }); + + const res = taskUtil.isRootProject(); + + t.is(isRootProjectStub.callCount, 1, "ProjectBuildContext#isRootProject got called once"); + t.is(res, true, "Correct result"); +}); + +test("getBuildOption", (t) => { + const getOptionStub = sinon.stub().returns("Pony"); + const taskUtil = new TaskUtil({ + projectBuildContext: { + getOption: getOptionStub + } + }); + + const res = taskUtil.getBuildOption("friend"); + + t.is(getOptionStub.callCount, 1, "ProjectBuildContext#getBuildOption got called once"); + t.is(res, "Pony", "Correct result"); +}); + + +test("getProject", (t) => { + const getProjectStub = sinon.stub().returns("Pony farm!"); + const taskUtil = new TaskUtil({ + projectBuildContext: { + getProject: getProjectStub + } + }); + + const res = taskUtil.getProject("pony farm?"); + + t.is(getProjectStub.callCount, 1, "ProjectBuildContext#getProject got called once"); + t.is(res, "Pony farm!", "Correct result"); +}); + +test("registerCleanupTask", async (t) => { + const registerCleanupTaskStub = sinon.stub(); + const taskUtil = new TaskUtil({ + projectBuildContext: { + registerCleanupTask: registerCleanupTaskStub + } + }); + + taskUtil.registerCleanupTask("my callback"); + + t.is(registerCleanupTaskStub.callCount, 1, "ProjectBuildContext#registerCleanupTask got called once"); + t.deepEqual(registerCleanupTaskStub.getCall(0).args[0], "my callback", "Correct callback parameter supplied"); +}); + +test("getInterface: specVersion 1.0", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + + const interfacedTaskUtil = taskUtil.getInterface("1.0"); + + t.is(interfacedTaskUtil, undefined, "no interface provided"); +}); + +test("getInterface: specVersion 2.2", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + + const interfacedTaskUtil = taskUtil.getInterface("2.2"); + + t.deepEqual(Object.keys(interfacedTaskUtil), [ + "STANDARD_TAGS", + "setTag", + "clearTag", + "getTag", + "isRootProject", + "registerCleanupTask" + ], "Correct methods are provided"); + + t.deepEqual(interfacedTaskUtil.STANDARD_TAGS, STANDARD_TAGS, "attribute STANDARD_TAGS is provided"); + t.is(typeof interfacedTaskUtil.setTag, "function", "function setTag is provided"); + t.is(typeof interfacedTaskUtil.clearTag, "function", "function clearTag is provided"); + t.is(typeof interfacedTaskUtil.getTag, "function", "function getTag is provided"); + t.is(typeof interfacedTaskUtil.isRootProject, "function", "function isRootProject is provided"); + t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); +}); + +test("getInterface: specVersion 2.3", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + + const interfacedTaskUtil = taskUtil.getInterface("2.3"); + + t.deepEqual(Object.keys(interfacedTaskUtil), [ + "STANDARD_TAGS", + "setTag", + "clearTag", + "getTag", + "isRootProject", + "registerCleanupTask" + ], "Correct methods are provided"); + + t.deepEqual(interfacedTaskUtil.STANDARD_TAGS, STANDARD_TAGS, "attribute STANDARD_TAGS is provided"); + t.is(typeof interfacedTaskUtil.setTag, "function", "function setTag is provided"); + t.is(typeof interfacedTaskUtil.clearTag, "function", "function clearTag is provided"); + t.is(typeof interfacedTaskUtil.getTag, "function", "function getTag is provided"); + t.is(typeof interfacedTaskUtil.isRootProject, "function", "function isRootProject is provided"); + t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); +}); + +test("getInterface: specVersion 2.4", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + + const interfacedTaskUtil = taskUtil.getInterface("2.4"); + + t.deepEqual(Object.keys(interfacedTaskUtil), [ + "STANDARD_TAGS", + "setTag", + "clearTag", + "getTag", + "isRootProject", + "registerCleanupTask" + ], "Correct methods are provided"); + + t.deepEqual(interfacedTaskUtil.STANDARD_TAGS, STANDARD_TAGS, "attribute STANDARD_TAGS is provided"); + t.is(typeof interfacedTaskUtil.setTag, "function", "function setTag is provided"); + t.is(typeof interfacedTaskUtil.clearTag, "function", "function clearTag is provided"); + t.is(typeof interfacedTaskUtil.getTag, "function", "function getTag is provided"); + t.is(typeof interfacedTaskUtil.isRootProject, "function", "function isRootProject is provided"); + t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); +}); + +test("getInterface: specVersion 2.5", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + + const interfacedTaskUtil = taskUtil.getInterface("2.5"); + + t.deepEqual(Object.keys(interfacedTaskUtil), [ + "STANDARD_TAGS", + "setTag", + "clearTag", + "getTag", + "isRootProject", + "registerCleanupTask" + ], "Correct methods are provided"); + + t.deepEqual(interfacedTaskUtil.STANDARD_TAGS, STANDARD_TAGS, "attribute STANDARD_TAGS is provided"); + t.is(typeof interfacedTaskUtil.setTag, "function", "function setTag is provided"); + t.is(typeof interfacedTaskUtil.clearTag, "function", "function clearTag is provided"); + t.is(typeof interfacedTaskUtil.getTag, "function", "function getTag is provided"); + t.is(typeof interfacedTaskUtil.isRootProject, "function", "function isRootProject is provided"); + t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); +}); + +test("getInterface: specVersion 2.6", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + + const interfacedTaskUtil = taskUtil.getInterface("2.6"); + + t.deepEqual(Object.keys(interfacedTaskUtil), [ + "STANDARD_TAGS", + "setTag", + "clearTag", + "getTag", + "isRootProject", + "registerCleanupTask" + ], "Correct methods are provided"); + + t.deepEqual(interfacedTaskUtil.STANDARD_TAGS, STANDARD_TAGS, "attribute STANDARD_TAGS is provided"); + t.is(typeof interfacedTaskUtil.setTag, "function", "function setTag is provided"); + t.is(typeof interfacedTaskUtil.clearTag, "function", "function clearTag is provided"); + t.is(typeof interfacedTaskUtil.getTag, "function", "function getTag is provided"); + t.is(typeof interfacedTaskUtil.isRootProject, "function", "function isRootProject is provided"); + t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); +}); + +test("getInterface: specVersion 3.0", async (t) => { + const getProjectStub = sinon.stub().returns({ + getName: () => "", + getVersion: () => "", + getNamespace: () => "", + hasBuildManifest: () => "", // Should not be exposed + getFrameworkVersion: () => "", // Should not be exposed + }); + const taskUtil = new TaskUtil({ + projectBuildContext: { + getProject: getProjectStub + } + }); + + const interfacedTaskUtil = taskUtil.getInterface("3.0"); + + t.deepEqual(Object.keys(interfacedTaskUtil), [ + "STANDARD_TAGS", + "setTag", + "clearTag", + "getTag", + "isRootProject", + "registerCleanupTask", + "getProject" + ], "Correct methods are provided"); + + t.deepEqual(interfacedTaskUtil.STANDARD_TAGS, STANDARD_TAGS, "attribute STANDARD_TAGS is provided"); + t.is(typeof interfacedTaskUtil.setTag, "function", "function setTag is provided"); + t.is(typeof interfacedTaskUtil.clearTag, "function", "function clearTag is provided"); + t.is(typeof interfacedTaskUtil.getTag, "function", "function getTag is provided"); + t.is(typeof interfacedTaskUtil.isRootProject, "function", "function isRootProject is provided"); + t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); + t.is(typeof interfacedTaskUtil.getProject, "function", "function registerCleanupTask is provided"); + + const interfacedProject = interfacedTaskUtil.getProject("pony"); + t.deepEqual(Object.keys(interfacedProject), [ + "getName", + "getVersion", + "getNamespace", + ], "Correct methods are provided"); + t.is(typeof interfacedProject.getName, "function", "function getName is provided"); + t.is(typeof interfacedProject.getVersion, "function", "function getVersion is provided"); + t.is(typeof interfacedProject.getNamespace, "function", "function getNamespace is provided"); +}); + +test("getInterface: specVersion undefined", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + + const err = t.throws(() => { + taskUtil.getInterface(); + }); + + t.is(err.message, "TaskUtil: Unknown or unsupported Specification Version undefined", + "Throw with correct error message"); +}); + +test("getInterface: specVersion unknown", async (t) => { + const taskUtil = new TaskUtil({ + projectBuildContext: {} + }); + const err = t.throws(() => { + taskUtil.getInterface("1.5"); + }); + + t.is(err.message, "TaskUtil: Unknown or unsupported Specification Version 1.5", + "Throw with correct error message"); +}); From bd832a40e665c1fa411da105492ec00eb095b89b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 27 Jul 2022 15:18:15 +0200 Subject: [PATCH 0657/1272] [ui5-project][INTERNAL] TaskRunner: Update JSDoc --- packages/project/lib/build/TaskRunner.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index e5fe9081ebd..a87b4404bd5 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -242,7 +242,7 @@ class TaskRunner { {module:@ui5/fs.AbstractReader} parameters.dependencies Reader or Collection to read dependency files {Object} parameters.taskUtil Specification Version dependent interface to a - [TaskUtil]{@link module:@ui5/builder.tasks.TaskUtil} instance + [TaskUtil]{@link module:@ui5/project.build.helpers.TaskUtil} instance {Object} parameters.options Options {string} parameters.options.projectName Project name {string} [parameters.options.projectNamespace] Project namespace if available From 646a67d310d42acb3c35a7883955eeef5aa0f9a7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 27 Jul 2022 14:27:44 +0000 Subject: [PATCH 0658/1272] [ui5-project]Release 3.0.0-alpha.6 --- packages/project/CHANGELOG.md | 11 +++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index aaef04b81e5..10050e3a999 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.5...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.6...HEAD). + + +## [v3.0.0-alpha.6] - 2022-07-27 +### Bug Fixes +- **ProjectBuilder:** Skip build for projects that do not require to be built [`ac5f1f8`](https://github.com/SAP/ui5-project/commit/ac5f1f891255b56597e51d121329f03786338d4a) + -## [v3.0.0-alpha.5] - 2022-07-25 +## [v3.0.0-alpha.5] - 2022-07-26 ### Bug Fixes - Fix build manifest creation [`b1459eb`](https://github.com/SAP/ui5-project/commit/b1459eb26aa8a4b18ad84a369c122c114d64b64b) @@ -313,6 +319,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.6]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.5...v3.0.0-alpha.6 [v3.0.0-alpha.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.4...v3.0.0-alpha.5 [v3.0.0-alpha.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.3...v3.0.0-alpha.4 [v3.0.0-alpha.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.2...v3.0.0-alpha.3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 64f054e2a49..55f88af690d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.5", + "version": "3.0.0-alpha.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.5", + "version": "3.0.0-alpha.6", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.7", diff --git a/packages/project/package.json b/packages/project/package.json index 626cb86b571..5ba7ee6d43d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.5", + "version": "3.0.0-alpha.6", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 25e275f33e7f8387a2b49975d75be56c63b9ec46 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 27 Jul 2022 15:08:11 +0000 Subject: [PATCH 0659/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.7 to 3.0.0-alpha.9 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.9/CHANGELOG.md --- packages/project/package-lock.json | 56 ++++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 30 insertions(+), 28 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 55f88af690d..faff00fbeb3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-alpha.6", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.7", + "@ui5/builder": "^3.0.0-alpha.9", "@ui5/fs": "^3.0.0-alpha.5", "@ui5/logger": "^3.0.1-alpha.1", "ajv": "^6.12.6", @@ -714,9 +714,9 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.13", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz", - "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==" + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.13", @@ -864,11 +864,12 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.7", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.7.tgz", - "integrity": "sha512-QqT4sehyLAAVFjmXsPi/lrT/lmBxWHu4wgjJXVvAE+HHWk459IpdPAnhTBUN7RungZAdTsBD0fx2jA8s+3HXfA==", + "version": "3.0.0-alpha.9", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.9.tgz", + "integrity": "sha512-nFpnDB/PNdHA2eLbwa0KxzQO1QwU/X/hkA6ckUEr67ZvnNx8N6Kt+uBqegRpMLiF6NUwDFRCLdhjp+Hs03R79Q==", "dependencies": { - "@ui5/fs": "^3.0.0-alpha.4", + "@jridgewell/sourcemap-codec": "^1.4.14", + "@ui5/fs": "^3.0.0-alpha.5", "@ui5/logger": "^3.0.1-alpha.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", @@ -882,8 +883,7 @@ "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.5", - "sourcemap-codec": "^1.4.8", - "terser": "^5.14.1", + "terser": "^5.14.2", "xml2js": "^0.4.23", "yazl": "^2.5.1" }, @@ -7498,7 +7498,8 @@ "node_modules/sourcemap-codec": { "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true }, "node_modules/spawn-wrap": { "version": "2.0.0", @@ -8118,9 +8119,9 @@ } }, "node_modules/terser": { - "version": "5.14.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.1.tgz", - "integrity": "sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ==", + "version": "5.14.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", + "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -9233,9 +9234,9 @@ } }, "@jridgewell/sourcemap-codec": { - "version": "1.4.13", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz", - "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==" + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" }, "@jridgewell/trace-mapping": { "version": "0.3.13", @@ -9368,11 +9369,12 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.7", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.7.tgz", - "integrity": "sha512-QqT4sehyLAAVFjmXsPi/lrT/lmBxWHu4wgjJXVvAE+HHWk459IpdPAnhTBUN7RungZAdTsBD0fx2jA8s+3HXfA==", + "version": "3.0.0-alpha.9", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.9.tgz", + "integrity": "sha512-nFpnDB/PNdHA2eLbwa0KxzQO1QwU/X/hkA6ckUEr67ZvnNx8N6Kt+uBqegRpMLiF6NUwDFRCLdhjp+Hs03R79Q==", "requires": { - "@ui5/fs": "^3.0.0-alpha.4", + "@jridgewell/sourcemap-codec": "^1.4.14", + "@ui5/fs": "^3.0.0-alpha.5", "@ui5/logger": "^3.0.1-alpha.1", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", @@ -9386,8 +9388,7 @@ "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.5", - "sourcemap-codec": "^1.4.8", - "terser": "^5.14.1", + "terser": "^5.14.2", "xml2js": "^0.4.23", "yazl": "^2.5.1" } @@ -14564,7 +14565,8 @@ "sourcemap-codec": { "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true }, "spawn-wrap": { "version": "2.0.0", @@ -15058,9 +15060,9 @@ } }, "terser": { - "version": "5.14.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.1.tgz", - "integrity": "sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ==", + "version": "5.14.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", + "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", "requires": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", diff --git a/packages/project/package.json b/packages/project/package.json index 5ba7ee6d43d..9c697e5c72e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.7", + "@ui5/builder": "^3.0.0-alpha.9", "@ui5/fs": "^3.0.0-alpha.5", "@ui5/logger": "^3.0.1-alpha.1", "ajv": "^6.12.6", From e384c8c82db446d59fed0ff9cb103be4bcd0bbfd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 27 Jul 2022 15:32:29 +0000 Subject: [PATCH 0660/1272] [ui5-project]Release 3.0.0-alpha.7 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 10050e3a999..88654179633 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.6...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.7...HEAD). + + +## [v3.0.0-alpha.7] - 2022-07-27 ## [v3.0.0-alpha.6] - 2022-07-27 @@ -319,6 +322,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.7]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.6...v3.0.0-alpha.7 [v3.0.0-alpha.6]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.5...v3.0.0-alpha.6 [v3.0.0-alpha.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.4...v3.0.0-alpha.5 [v3.0.0-alpha.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.3...v3.0.0-alpha.4 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index faff00fbeb3..e95d4ee0c09 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.6", + "version": "3.0.0-alpha.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.6", + "version": "3.0.0-alpha.7", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.9", diff --git a/packages/project/package.json b/packages/project/package.json index 9c697e5c72e..66ad35b55ed 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.6", + "version": "3.0.0-alpha.7", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From ab0fa0a809acedf9b1478a35a314b011ed433b21 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 28 Jul 2022 15:48:46 +0000 Subject: [PATCH 0661/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.1-alpha.1 to 3.0.1-alpha.2 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.1-alpha.2/CHANGELOG.md --- packages/project/package-lock.json | 87 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 45 insertions(+), 44 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e95d4ee0c09..bdb426a9fb5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-alpha.9", "@ui5/fs": "^3.0.0-alpha.5", - "@ui5/logger": "^3.0.1-alpha.1", + "@ui5/logger": "^3.0.1-alpha.2", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", @@ -914,11 +914,11 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.1-alpha.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.1.tgz", - "integrity": "sha512-S0jK4e3FQYhIkGFoZSCCtHxKAYGOuCZM+KG06PoHlst73eN0Md89TgRrQtM48UCHEZF/V4A+anOEgza901ikMw==", + "version": "3.0.1-alpha.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.2.tgz", + "integrity": "sha512-xYrLuFYXWJvLwNA60gWqX203ZjDIYOH5xEpqLhl1QViFLNiByzNazj78ra9wueCIHNNbg8AMsyjC6krBVoYcKw==", "dependencies": { - "npmlog": "^5.0.1" + "npmlog": "^6.0.2" }, "engines": { "node": ">= 16.13.2", @@ -1152,15 +1152,15 @@ "dev": true }, "node_modules/are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", "dependencies": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" }, "engines": { - "node": ">=10" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/argparse": { @@ -3702,22 +3702,21 @@ "dev": true }, "node_modules/gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", "dependencies": { "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", + "signal-exit": "^3.0.7", "string-width": "^4.2.3", "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" + "wide-align": "^1.1.5" }, "engines": { - "node": ">=10" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/genfun": { @@ -5678,14 +5677,17 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "node_modules/npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", "dependencies": { - "are-we-there-yet": "^2.0.0", + "are-we-there-yet": "^3.0.0", "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", + "gauge": "^4.0.3", "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/nth-check": { @@ -9411,11 +9413,11 @@ } }, "@ui5/logger": { - "version": "3.0.1-alpha.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.1.tgz", - "integrity": "sha512-S0jK4e3FQYhIkGFoZSCCtHxKAYGOuCZM+KG06PoHlst73eN0Md89TgRrQtM48UCHEZF/V4A+anOEgza901ikMw==", + "version": "3.0.1-alpha.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.2.tgz", + "integrity": "sha512-xYrLuFYXWJvLwNA60gWqX203ZjDIYOH5xEpqLhl1QViFLNiByzNazj78ra9wueCIHNNbg8AMsyjC6krBVoYcKw==", "requires": { - "npmlog": "^5.0.1" + "npmlog": "^6.0.2" } }, "@vue/compiler-core": { @@ -9604,9 +9606,9 @@ "dev": true }, "are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", "requires": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" @@ -11640,19 +11642,18 @@ "dev": true }, "gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", "requires": { "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", + "signal-exit": "^3.0.7", "string-width": "^4.2.3", "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" + "wide-align": "^1.1.5" } }, "genfun": { @@ -13167,13 +13168,13 @@ } }, "npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", "requires": { - "are-we-there-yet": "^2.0.0", + "are-we-there-yet": "^3.0.0", "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", + "gauge": "^4.0.3", "set-blocking": "^2.0.0" } }, diff --git a/packages/project/package.json b/packages/project/package.json index 66ad35b55ed..0d86a8d4bfb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -104,7 +104,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-alpha.9", "@ui5/fs": "^3.0.0-alpha.5", - "@ui5/logger": "^3.0.1-alpha.1", + "@ui5/logger": "^3.0.1-alpha.2", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", From 1fc770a144baf2e76957ba6e9242b920c8780298 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 28 Jul 2022 20:40:28 +0200 Subject: [PATCH 0662/1272] [ui5-project][INTERNAL] TaskRunner: Use new 'perf' log level instead of env variable --- packages/project/lib/build/TaskRunner.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index a87b4404bd5..e3bb2339660 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -315,8 +315,8 @@ class TaskRunner { this._taskStart = performance.now(); await taskFunction(taskParams, this._taskLog); this._taskLog.completeWork(1); - if (process.env.UI5_LOG_TASK_PERF) { - this._taskLog.info(`Task succeeded in ${Math.round((performance.now() - this._taskStart))} ms`); + if (this._taskLog.isLevelEnabled("perf")) { + this._taskLog.perf(`Task ${taskName} finished in ${Math.round((performance.now() - this._taskStart))} ms`); } } } From b9aee6a732c60f413be5d98ad87362302d9d8fe8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 4 Aug 2022 19:16:35 +0200 Subject: [PATCH 0663/1272] [ui5-project][FIX] Specification: Fix migration for legacy projects that are not applications or libraries During the migration of legacy projects (defining specVersion < 2), the propertiesFileSourceEncoding configuration was always added, even though it is only relevant for applications and libraries. This lead to validation errors for legacy projects of type "module" or extensions. --- .../lib/specifications/Specification.js | 6 +- .../test/lib/specifications/Specification.js | 114 ++++++++++++++---- 2 files changed, 97 insertions(+), 23 deletions(-) diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 8983fbc1b2f..9553683b813 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -175,9 +175,11 @@ class Specification { _migrateLegacyProject(config) { config.specVersion = "2.6"; - // propertiesFileSourceEncoding default has been changed to UTF-8 with specVersion 2.0 + // propertiesFileSourceEncoding (relevant for applications and libraries) default + // has been changed to UTF-8 with specVersion 2.0 // Adding back the old default if no configuration is provided. - if (!config.resources?.configuration?.propertiesFileSourceEncoding) { + if (config.kind === "project" && ["application", "library"].includes(config.type) && + !config.resources?.configuration?.propertiesFileSourceEncoding) { config.resources = config.resources || {}; config.resources.configuration = config.resources.configuration || {}; config.resources.configuration.propertiesFileSourceEncoding = "ISO-8859-1"; diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index 00e3531ddbe..f6954585b68 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -3,71 +3,75 @@ const path = require("path"); const sinon = require("sinon"); const Specification = require("../../../lib/specifications/Specification"); +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const genericExtensionPath = path.join(__dirname, "..", "..", "fixtures", "extension.a"); +const moduleAPath = path.join(__dirname, "..", "..", "fixtures", "module.a"); + +test.beforeEach((t) => { + t.context.basicProjectInput = { + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.a"} + } + }; +}); test.afterEach.always((t) => { sinon.restore(); }); -const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); -const basicProjectInput = { - id: "application.a.id", - version: "1.0.0", - modulePath: applicationAPath, - configuration: { - specVersion: "2.3", - kind: "project", - type: "application", - metadata: {name: "application.a"} - } -}; - test("Instantiate a basic project", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await Specification.create(t.context.basicProjectInput); t.is(project.getName(), "application.a", "Returned correct name"); t.is(project.getVersion(), "1.0.0", "Returned correct version"); t.is(project.getPath(), applicationAPath, "Returned correct project path"); }); test("Configurations", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await Specification.create(t.context.basicProjectInput); t.is(project.getKind(), "project", "Returned correct kind configuration"); t.is(project.getType(), "application", "Returned correct type configuration"); }); test("Access project root resources via reader", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await Specification.create(t.context.basicProjectInput); const rootReader = await project.getRootReader(); const packageJsonResource = await rootReader.byPath("/package.json"); t.is(packageJsonResource.getPath(), "/package.json", "Successfully retrieved root resource"); }); test("_dirExists: Directory exists", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await Specification.create(t.context.basicProjectInput); const bExists = await project._dirExists("/webapp"); t.true(bExists, "directory exists"); }); test("_dirExists: Missing leading slash", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await Specification.create(t.context.basicProjectInput); const bExists = await project._dirExists("webapp"); t.false(bExists, "directory is not found"); }); test("_dirExists: Trailing slash is ok", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await Specification.create(t.context.basicProjectInput); const bExists = await project._dirExists("/webapp/"); t.true(bExists, "directory exists"); }); test("_dirExists: Directory is a file", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await Specification.create(t.context.basicProjectInput); const bExists = await project._dirExists("webapp/index.html"); t.false(bExists, "directory is a file"); }); test("_dirExists: Directory does not exist", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await Specification.create(t.context.basicProjectInput); const bExists = await project._dirExists("/w"); t.false(bExists, "directory does not exist"); @@ -89,3 +93,71 @@ test("Project with incorrect name", async (t) => { t.is(project.getVersion(), "1.0.0", "Returned correct version"); t.is(project.getPath(), applicationAPath, "Returned correct project path"); }); + +test("Migrate legacy project", async (t) => { + t.context.basicProjectInput.configuration.specVersion = "1.0"; + const project = await Specification.create(t.context.basicProjectInput); + + t.is(project.getSpecVersion(), "2.6", "Project got migrated to latest specVersion"); +}); + +test("Migrate legacy project unexpected configuration", async (t) => { + t.context.basicProjectInput.configuration.specVersion = "1.0"; + t.context.basicProjectInput.configuration.someCustomSetting = "Pineapple"; + const err = await t.throwsAsync(Specification.create(t.context.basicProjectInput)); + + t.is(err.message, + "project application.a defines unsupported specification version 1.0. Please manually upgrade to 2.0 or " + + "higher. For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions - " + + "An attempted migration to a supported specification version failed, likely due to unrecognized " + + "configuration. Check verbose log for details.", + "Threw with expected error message"); +}); + +test("Migrate legacy module", async (t) => { + const project = await Specification.create({ + id: "my.task", + version: "3.4.7-beta", + modulePath: genericExtensionPath, + configuration: { + specVersion: "1.0", + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "lib/extensionModule.js" + } + } + }); + + t.is(project.getSpecVersion(), "2.6", "Project got migrated to latest specVersion"); +}); + +test("Migrate legacy extension", async (t) => { + const project = await Specification.create({ + id: "module.a.id", + version: "1.0.0", + modulePath: moduleAPath, + configuration: { + specVersion: "1.1", + kind: "project", + type: "module", + metadata: { + name: "module.a", + copyright: "Some fancy copyright" // allowed but ignored + }, + resources: { + configuration: { + paths: { + "/": "dist", + "/dev/": "dev" + } + } + } + } + }); + + t.is(project.getSpecVersion(), "2.6", "Project got migrated to latest specVersion"); +}); From 3bc2e538a6b146b8b73bd8b38b54d6144b3b45bc Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 4 Aug 2022 19:18:48 +0200 Subject: [PATCH 0664/1272] [ui5-project][INTERNAL] Specifications: Minor cleanup --- .../lib/specifications/types/extensions/ServerMiddleware.js | 1 + .../project/lib/specifications/types/extensions/Task.js | 1 + packages/project/test/lib/specifications/types/Module.js | 6 +++--- .../lib/specifications/types/extensions/ServerMiddleware.js | 2 +- .../test/lib/specifications/types/extensions/Task.js | 2 +- 5 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js index c9ccd1e515c..772766100a7 100644 --- a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js @@ -23,6 +23,7 @@ class ServerMiddleware extends Extension { if (/--\d+$/.test(this.getName())) { throw new Error(`Server middleware name must not end with '--'`); } + // TODO: Check that paths exist } } diff --git a/packages/project/lib/specifications/types/extensions/Task.js b/packages/project/lib/specifications/types/extensions/Task.js index 269224c1954..541e1165b01 100644 --- a/packages/project/lib/specifications/types/extensions/Task.js +++ b/packages/project/lib/specifications/types/extensions/Task.js @@ -23,6 +23,7 @@ class Task extends Extension { if (/--\d+$/.test(this.getName())) { throw new Error(`Task name must not end with '--'`); } + // TODO: Check that paths exist } } diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index a8d1364bf41..22125e8ae12 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -8,11 +8,11 @@ function clone(obj) { return JSON.parse(JSON.stringify(obj)); } -const moduleA = path.join(__dirname, "..", "..", "..", "fixtures", "module.a"); +const moduleAPath = path.join(__dirname, "..", "..", "..", "fixtures", "module.a"); const basicProjectInput = { - id: "library.d.id", + id: "module.a.id", version: "1.0.0", - modulePath: moduleA, + modulePath: moduleAPath, configuration: { specVersion: "2.3", kind: "project", diff --git a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js index ed8f03b1805..3c29349efdd 100644 --- a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js @@ -10,7 +10,7 @@ function clone(obj) { const genericExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a"); const basicServerMiddlewareInput = { - id: "shim.a", + id: "server.middleware.a", version: "1.0.0", modulePath: genericExtensionPath, configuration: { diff --git a/packages/project/test/lib/specifications/types/extensions/Task.js b/packages/project/test/lib/specifications/types/extensions/Task.js index 65a2f6ac958..bc5fa026f84 100644 --- a/packages/project/test/lib/specifications/types/extensions/Task.js +++ b/packages/project/test/lib/specifications/types/extensions/Task.js @@ -10,7 +10,7 @@ function clone(obj) { const genericExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a"); const basicTaskInput = { - id: "shim.a", + id: "task.a", version: "1.0.0", modulePath: genericExtensionPath, configuration: { From 747b5970c7bd9927f17148dac88e2498b52b3e0a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 27 Jul 2022 22:37:51 +0200 Subject: [PATCH 0665/1272] [ui5-project][INTERNAL] generateProjectGraph: Improve error handling, extend tests --- packages/project/lib/generateProjectGraph.js | 13 +- .../projectDependencies-missing-id.yaml | 7 + .../projectDependencies-missing-path.yaml | 7 + .../projectDependencies-missing-version.yaml | 7 + .../project/test/lib/generateProjectGraph.js | 200 ++++++++++++++++++ ...ojectGraph.usingNodePackageDependencies.js | 21 +- .../generateProjectGraph.usingStaticFile.js | 37 ++++ 7 files changed, 273 insertions(+), 19 deletions(-) create mode 100644 packages/project/test/fixtures/application.h/projectDependencies-missing-id.yaml create mode 100644 packages/project/test/fixtures/application.h/projectDependencies-missing-path.yaml create mode 100644 packages/project/test/fixtures/application.h/projectDependencies-missing-version.yaml create mode 100644 packages/project/test/lib/generateProjectGraph.js diff --git a/packages/project/lib/generateProjectGraph.js b/packages/project/lib/generateProjectGraph.js index c00f75b34be..3dda96dd2bc 100644 --- a/packages/project/lib/generateProjectGraph.js +++ b/packages/project/lib/generateProjectGraph.js @@ -4,7 +4,18 @@ const ui5Framework = require("./graph/helpers/ui5Framework"); const log = require("@ui5/logger").getLogger("generateProjectGraph"); function resolveProjectPaths(cwd, project) { + if (!project.path) { + throw new Error(`Missing or empty attribute 'path' for project ${project.id}`); + } project.path = path.resolve(cwd, project.path); + + if (!project.id) { + throw new Error(`Missing or empty attribute 'id' for project with path ${project.path}`); + } + if (!project.version) { + throw new Error(`Missing or empty attribute 'version' for project ${project.id}`); + } + if (project.dependencies) { project.dependencies.forEach((project) => resolveProjectPaths(cwd, project)); } @@ -159,11 +170,11 @@ const generateProjectGraph = { dependencyTree = parseYaml(contents, { filename: filePath }); + resolveProjectPaths(cwd, dependencyTree); } catch (err) { throw new Error( `Failed to load dependency tree configuration from path ${filePath}: ${err.message}`); } - resolveProjectPaths(cwd, dependencyTree); return dependencyTree; } }; diff --git a/packages/project/test/fixtures/application.h/projectDependencies-missing-id.yaml b/packages/project/test/fixtures/application.h/projectDependencies-missing-id.yaml new file mode 100644 index 00000000000..1eee899301b --- /dev/null +++ b/packages/project/test/fixtures/application.h/projectDependencies-missing-id.yaml @@ -0,0 +1,7 @@ +--- +version: "0.0.1" +path: "../application.a" +dependencies: +- id: static-library.e + version: "0.0.1" + path: "../library.e" diff --git a/packages/project/test/fixtures/application.h/projectDependencies-missing-path.yaml b/packages/project/test/fixtures/application.h/projectDependencies-missing-path.yaml new file mode 100644 index 00000000000..8604cc66aba --- /dev/null +++ b/packages/project/test/fixtures/application.h/projectDependencies-missing-path.yaml @@ -0,0 +1,7 @@ +--- +id: static-application.a +version: "0.0.1" +path: "../application.a" +dependencies: +- id: static-library.e + version: "0.0.1" diff --git a/packages/project/test/fixtures/application.h/projectDependencies-missing-version.yaml b/packages/project/test/fixtures/application.h/projectDependencies-missing-version.yaml new file mode 100644 index 00000000000..3cecad748ba --- /dev/null +++ b/packages/project/test/fixtures/application.h/projectDependencies-missing-version.yaml @@ -0,0 +1,7 @@ +--- +id: static-application.a +path: "../application.a" +dependencies: +- id: static-library.e + version: "0.0.1" + path: "../library.e" diff --git a/packages/project/test/lib/generateProjectGraph.js b/packages/project/test/lib/generateProjectGraph.js new file mode 100644 index 00000000000..94016dce13b --- /dev/null +++ b/packages/project/test/lib/generateProjectGraph.js @@ -0,0 +1,200 @@ +const test = require("ava"); +const path = require("path"); +const sinonGlobal = require("sinon"); +const mock = require("mock-require"); + +test.beforeEach((t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.npmProviderConstructorStub = sinon.stub(); + class DummyNpmProvider { + constructor(params) { + t.context.npmProviderConstructorStub(params); + } + } + t.context.DummyNpmProvider = DummyNpmProvider; + mock("../../lib/graph/providers/NodePackageDependencies", DummyNpmProvider); + + t.context.dependencyTreeProviderStub = sinon.stub(); + class DummyDependencyTreeProvider { + constructor(params) { + t.context.dependencyTreeProviderStub(params); + } + } + t.context.DummyDependencyTreeProvider = DummyDependencyTreeProvider; + mock("../../lib/graph/providers/DependencyTree", DummyDependencyTreeProvider); + + t.context.projectGraphBuilderStub = sinon.stub().resolves("graph"); + mock("../../lib/graph/projectGraphBuilder", t.context.projectGraphBuilderStub); + + const ui5Framework = require("../../lib/graph/helpers/ui5Framework"); + t.context.enrichProjectGraphStub = sinon.stub(ui5Framework, "enrichProjectGraph"); + + t.context.generateProjectGraph = mock.reRequire("../../lib/generateProjectGraph"); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); + mock.stopAll(); +}); + +test.serial("usingNodePackageDependencies", async (t) => { + const { + generateProjectGraph, npmProviderConstructorStub, + projectGraphBuilderStub, enrichProjectGraphStub, DummyNpmProvider + } = t.context; + + const res = await generateProjectGraph.usingNodePackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride" + }); + + t.is(res, "graph"); + + t.is(npmProviderConstructorStub.callCount, 1, "NPM provider constructor got called once"); + t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "cwd"), + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + }, "Created NodePackageDependencies provider instance with correct parameters"); + + t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof DummyNpmProvider, + "projectGraphBuilder got called with correct provider instance"); + + t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); + t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", + "enrichProjectGraph got called with graph"); + t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { + versionOverride: "versionOverride" + }, "enrichProjectGraph got called with correct options"); +}); + +test.serial("usingNodePackageDependencies: Do not resolve framework dependencies", async (t) => { + const {generateProjectGraph, enrichProjectGraphStub} = t.context; + + const res = await generateProjectGraph.usingNodePackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + resolveFrameworkDependencies: false + }); + + t.is(res, "graph"); + t.is(enrichProjectGraphStub.callCount, 0, "enrichProjectGraph did not get called"); +}); + +test.serial("usingStaticFile", async (t) => { + const { + generateProjectGraph, dependencyTreeProviderStub, + projectGraphBuilderStub, enrichProjectGraphStub, DummyDependencyTreeProvider + } = t.context; + + const readDependencyConfigFileStub = t.context.sinon.stub(generateProjectGraph, "_readDependencyConfigFile") + .resolves("dependencyTree"); + + const res = await generateProjectGraph.usingStaticFile({ + cwd: "cwd", + filePath: "file/path", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride" + }); + + t.is(res, "graph"); + + t.is(readDependencyConfigFileStub.callCount, 1, "_readDependencyConfigFile got called once"); + t.is(readDependencyConfigFileStub.getCall(0).args[0], path.join(__dirname, "..", "..", "cwd"), + "_readDependencyConfigFile got called with correct directory"); + t.is(readDependencyConfigFileStub.getCall(0).args[1], "file/path", + "_readDependencyConfigFile got called with correct file path"); + + t.is(dependencyTreeProviderStub.callCount, 1, "DependencyTree provider constructor got called once"); + t.deepEqual(dependencyTreeProviderStub.getCall(0).args[0], { + dependencyTree: "dependencyTree", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + }, "Created NodePackageDependencies provider instance with correct parameters"); + + t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof DummyDependencyTreeProvider, + "projectGraphBuilder got called with correct provider instance"); + + t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); + t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", + "enrichProjectGraph got called with graph"); + t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { + versionOverride: "versionOverride" + }, "enrichProjectGraph got called with correct options"); +}); + +test.serial("usingStaticFile: Do not resolve framework dependencies", async (t) => { + const {generateProjectGraph, enrichProjectGraphStub} = t.context; + + t.context.sinon.stub(generateProjectGraph, "_readDependencyConfigFile") + .resolves("dependencyTree"); + + const res = await generateProjectGraph.usingStaticFile({ + cwd: "cwd", + filePath: "filePath", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + resolveFrameworkDependencies: false + }); + + t.is(res, "graph"); + t.is(enrichProjectGraphStub.callCount, 0, "enrichProjectGraph did not get called"); +}); + +test.serial("usingObject", async (t) => { + const { + generateProjectGraph, dependencyTreeProviderStub, + projectGraphBuilderStub, enrichProjectGraphStub, DummyDependencyTreeProvider + } = t.context; + + const res = await generateProjectGraph.usingObject({ + dependencyTree: "dependencyTree", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride" + }); + + t.is(res, "graph"); + + t.is(dependencyTreeProviderStub.callCount, 1, "DependencyTree provider constructor got called once"); + t.deepEqual(dependencyTreeProviderStub.getCall(0).args[0], { + dependencyTree: "dependencyTree", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + }, "Created NodePackageDependencies provider instance with correct parameters"); + + t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof DummyDependencyTreeProvider, + "projectGraphBuilder got called with correct provider instance"); + + t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); + t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", + "enrichProjectGraph got called with graph"); + t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { + versionOverride: "versionOverride" + }, "enrichProjectGraph got called with correct options"); +}); + +test.serial("usingObject: Do not resolve framework dependencies", async (t) => { + const {generateProjectGraph, enrichProjectGraphStub} = t.context; + const res = await generateProjectGraph.usingObject({ + cwd: "cwd", + filePath: "filePath", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + resolveFrameworkDependencies: false + }); + + t.is(res, "graph"); + t.is(enrichProjectGraphStub.callCount, 0, "enrichProjectGraph did not get called"); +}); diff --git a/packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js b/packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js index 8d68d0dc8d4..764388768bf 100644 --- a/packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js +++ b/packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js @@ -1,25 +1,12 @@ const test = require("ava"); const path = require("path"); const sinonGlobal = require("sinon"); -const mock = require("mock-require"); -const logger = require("@ui5/logger"); + +const projectGraphFromPackageDeps = require("../../lib/generateProjectGraph").usingNodePackageDependencies; const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); test.beforeEach((t) => { - const sinon = t.context.sinon = sinonGlobal.createSandbox(); - - t.context.log = { - warn: sinon.stub(), - verbose: sinon.stub(), - error: sinon.stub(), - info: sinon.stub(), - isLevelEnabled: () => true - }; - sinon.stub(logger, "getLogger").callThrough().withArgs("graph:projectGraphBuilder").returns(t.context.log); - mock.reRequire("../../lib/graph/projectGraphBuilder"); - t.context.projectGraphFromPackageDeps = - mock.reRequire("../../lib/generateProjectGraph").usingNodePackageDependencies; - logger.getLogger.restore(); // Immediately restore global stub for following tests + t.context.sinon = sinonGlobal.createSandbox(); }); test.afterEach.always((t) => { @@ -27,14 +14,12 @@ test.afterEach.always((t) => { }); test("Application A", async (t) => { - const {projectGraphFromPackageDeps} = t.context; const projectGraph = await projectGraphFromPackageDeps({cwd: applicationAPath}); const rootProject = projectGraph.getRoot(); t.is(rootProject.getName(), "application.a", "Returned correct root project"); }); test("Application A: Traverse project graph breadth first", async (t) => { - const {projectGraphFromPackageDeps} = t.context; const projectGraph = await projectGraphFromPackageDeps({cwd: applicationAPath}); const callbackStub = t.context.sinon.stub().resolves(); await projectGraph.traverseBreadthFirst(callbackStub); diff --git a/packages/project/test/lib/generateProjectGraph.usingStaticFile.js b/packages/project/test/lib/generateProjectGraph.usingStaticFile.js index b1ddb415c1d..82d9737e9f4 100644 --- a/packages/project/test/lib/generateProjectGraph.usingStaticFile.js +++ b/packages/project/test/lib/generateProjectGraph.usingStaticFile.js @@ -5,6 +5,7 @@ const sinonGlobal = require("sinon"); const projectGraphFromStaticFile = require("../../lib/generateProjectGraph").usingStaticFile; const applicationHPath = path.join(__dirname, "..", "fixtures", "application.h"); +const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); const notExistingPath = path.join(__dirname, "..", "fixtures", "does_not_exist"); test.beforeEach((t) => { @@ -43,6 +44,42 @@ test("Throws error if file not found", async (t) => { "Correct error message"); }); +test("Throws for missing id", async (t) => { + const err = await t.throwsAsync(projectGraphFromStaticFile({ + cwd: applicationHPath, + filePath: "projectDependencies-missing-id.yaml" + })); + t.is(err.message, + `Failed to load dependency tree configuration from path ` + + `${path.join(applicationHPath, "projectDependencies-missing-id.yaml")}: ` + + `Missing or empty attribute 'id' for project with path ${applicationAPath}`, + "Correct error message"); +}); + +test("Throws for missing version", async (t) => { + const err = await t.throwsAsync(projectGraphFromStaticFile({ + cwd: applicationHPath, + filePath: "projectDependencies-missing-version.yaml" + })); + t.is(err.message, + `Failed to load dependency tree configuration from path ` + + `${path.join(applicationHPath, "projectDependencies-missing-version.yaml")}: ` + + `Missing or empty attribute 'version' for project static-application.a`, + "Correct error message"); +}); + +test("Throws for missing path", async (t) => { + const err = await t.throwsAsync(projectGraphFromStaticFile({ + cwd: applicationHPath, + filePath: "projectDependencies-missing-path.yaml" + })); + t.is(err.message, + `Failed to load dependency tree configuration from path ` + + `${path.join(applicationHPath, "projectDependencies-missing-path.yaml")}: ` + + `Missing or empty attribute 'path' for project static-library.e`, + "Correct error message"); +}); + test("rootConfiguration", async (t) => { const projectGraph = await projectGraphFromStaticFile({ cwd: applicationHPath, From 9d2d6e0648f1c37d9369b658527b26456daba4a8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 27 Jul 2022 20:05:09 +0200 Subject: [PATCH 0666/1272] [ui5-project][INTERNAL] ProjectBuilder: Cleanup and logging improvements Remove obsolete 'projectsToBuild' array. The buildQueue holds the same information. --- packages/project/lib/build/ProjectBuilder.js | 60 ++++++++++--------- packages/project/lib/build/TaskRunner.js | 14 +++++ .../project/test/lib/build/ProjectBuilder.js | 6 +- packages/project/test/lib/build/TaskRunner.js | 30 ++++++++++ 4 files changed, 81 insertions(+), 29 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 30d0eb27a64..4a5e44d6c03 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -94,26 +94,42 @@ class ProjectBuilder { }); const projectBuildContexts = this._createRequiredBuildContexts(requestedProjects); - - // Collect all projects that need to be built (i.e. do not have a matching build manifest) - const projectsToBuild = []; - projectBuildContexts.forEach((projectBuildContext, projectName) => { - if (projectBuildContext.getTaskRunner().requiresBuild()) { - projectsToBuild.push(projectName); - } - }); - const cleanupSigHooks = this._registerCleanupSigHooks(); - const buildLogger = log.createTaskLogger("🛠 "); - buildLogger.addWork(projectsToBuild.length); - log.info(` Projects required to build: `); - log.info(` > ${projectsToBuild.join("\n > ")}`); - const fsTarget = resourceFactory.createAdapter({ fsBasePath: destPath, virBasePath: "/" }); + const buildQueue = []; + + // Create build queue based on graph depth-first search to ensure correct build order + await this._graph.traverseDepthFirst(async ({project}) => { + const projectName = project.getName(); + const projectBuildContext = projectBuildContexts.get(projectName); + if (projectBuildContext) { + // Build context exists + // => This project shall be built + buildQueue.push(projectBuildContext); + } + }); + const buildLogger = log.createTaskLogger("🛠 "); + buildLogger.addWork(buildQueue.length); + log.info(` Projects required:`); + log.info(` ${buildQueue + .map((projectBuildContext) => { + const projectName = projectBuildContext.getProject().getName(); + const taskRunner = projectBuildContext.getTaskRunner(); + let msg; + if (taskRunner.requiresBuild()) { + msg = `=> ${projectName}`; + } else { + const buildMetadata = taskRunner.getFormattedBuildMetadata(); + msg = `*> ${projectName} /// already built ${buildMetadata.age} ago`; + } + return msg; + }) + .join("\n ")}`); + if (cleanDest) { log.info(`Cleaning target directory...`); await rimraf(destPath); @@ -121,22 +137,10 @@ class ProjectBuilder { const startTime = process.hrtime(); try { const pWrites = []; - const buildQueue = []; - - - // Create build queue based on graph depth-first search to ensure correct build order - await this._graph.traverseDepthFirst(async ({project}) => { - const projectName = project.getName(); - const projectBuildContext = projectBuildContexts.get(projectName); - if (projectBuildContext) { - // Build context exists - // => This project shall be built - buildQueue.push(projectBuildContext); - } - }); - for (const projectBuildContext of buildQueue) { const projectName = projectBuildContext.getProject().getName(); + + // Only build projects that are not already build (i.e. provide a matching build manifest) if (projectBuildContext.getTaskRunner().requiresBuild()) { buildLogger.startWork(`Building project ${projectName}...`); await this._buildProject(projectBuildContext); diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index e3bb2339660..6fd1f2ab217 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -131,6 +131,20 @@ class TaskRunner { return !this._project.hasBuildManifest(); } + getFormattedBuildMetadata() { + if (this._project.hasBuildManifest()) { + const buildManifest = this._project.getBuildManifest(); + const timeDiff = (new Date().getTime() - new Date(buildManifest.timestamp).getTime()); + + // TODO: Format age properly via a new @ui5/logger util module + return { + age: timeDiff / 1000 + " seconds" + }; + } else { + return null; + } + } + /** * Adds an executable task to the builder * diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 16c6eb508f2..079ff018e9f 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -235,6 +235,9 @@ test.serial("build: Multiple projects", async (t) => { const requiresBuildAStub = sinon.stub().returns(true); const requiresBuildBStub = sinon.stub().returns(false); const requiresBuildCStub = sinon.stub().returns(true); + const getFormattedBuildMetadataStub = sinon.stub().returns({ + age: "xx days" + }); const projectBuildContextMockA = { getTaskRunner: () => { return { @@ -246,7 +249,8 @@ test.serial("build: Multiple projects", async (t) => { const projectBuildContextMockB = { getTaskRunner: () => { return { - requiresBuild: requiresBuildBStub + requiresBuild: requiresBuildBStub, + getFormattedBuildMetadata: getFormattedBuildMetadataStub }; }, getProject: sinon.stub().returns(getMockProject("library", "b")) diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 6d92b8ff987..1cf3913976b 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -795,3 +795,33 @@ test("requiresBuild: has build-manifest", (t) => { }); t.false(taskRunner.requiresBuild(), "Project with build-manifest does not require to be build"); }); + +test.serial("getFormattedBuildMetadata", (t) => { + const {graph, taskUtil, taskRepository} = t.context; + const project = getMockProject("library"); + project.hasBuildManifest = () => true; + project.getBuildManifest = () => { + return { + timestamp: "2022-07-28T12:00:00.000Z" + }; + }; + const getTimeStub = sinon.stub(Date.prototype, "getTime").callThrough().onFirstCall().returns(1659016800000); + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); + + t.deepEqual(taskRunner.getFormattedBuildMetadata(), { + age: "7200 seconds" + }, "Project with build-manifest does not require to be build"); + getTimeStub.restore(); +}); + +test("getFormattedBuildMetadata: has no build-manifest", (t) => { + const {graph, taskUtil, taskRepository} = t.context; + const project = getMockProject("library"); + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); + t.is(taskRunner.getFormattedBuildMetadata(), null, "Project has no build manifest"); +}); From 6116e4905f17f9a0ce6a1636abfab394edb79fe9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 28 Jul 2022 17:35:48 +0200 Subject: [PATCH 0667/1272] [ui5-project][INTERNAL] Move some verbose logging to silly --- packages/project/lib/build/ProjectBuilder.js | 2 +- packages/project/lib/build/helpers/ProjectBuildContext.js | 2 +- packages/project/lib/specifications/ComponentProject.js | 2 +- packages/project/test/lib/build/helpers/ProjectBuildContext.js | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 4a5e44d6c03..da20e0baefa 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -295,7 +295,7 @@ class ProjectBuilder { await Promise.all(resources.map((resource) => { if (taskUtil.getTag(resource, taskUtil.STANDARD_TAGS.OmitFromBuildResult)) { - log.verbose(`Skipping write of resource tagged as "OmitFromBuildResult": ` + + log.silly(`Skipping write of resource tagged as "OmitFromBuildResult": ` + resource.getPath()); return; // Skip target write for this resource } diff --git a/packages/project/lib/build/helpers/ProjectBuildContext.js b/packages/project/lib/build/helpers/ProjectBuildContext.js index 47fa96ba91b..907ae68716a 100644 --- a/packages/project/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/lib/build/helpers/ProjectBuildContext.js @@ -66,7 +66,7 @@ class ProjectBuildContext { getResourceTagCollection(resource, tag) { if (!resource.hasProject()) { - this._log.verbose(`Associating resource ${resource.getPath()} with project ${this._project.getName()}`); + this._log.silly(`Associating resource ${resource.getPath()} with project ${this._project.getName()}`); resource.setProject(this._project); // throw new Error( // `Unable to get tag collection for resource ${resource.getPath()}: ` + diff --git a/packages/project/lib/specifications/ComponentProject.js b/packages/project/lib/specifications/ComponentProject.js index a3b140742c6..2fc17733cba 100644 --- a/packages/project/lib/specifications/ComponentProject.js +++ b/packages/project/lib/specifications/ComponentProject.js @@ -276,7 +276,7 @@ class ComponentProject extends Project { const parts = value && value.match(/^\$\{(.*)\}$/); if (parts) { this._log.verbose( - `"${value} contains a maven placeholder "${parts[1]}". Resolving from projects pom.xml...`); + `"${value}" contains a maven placeholder "${parts[1]}". Resolving from projects pom.xml...`); const pom = await this._getPom(); let mvnValue; if (pom.project && pom.project.properties && pom.project.properties[parts[1]]) { diff --git a/packages/project/test/lib/build/helpers/ProjectBuildContext.js b/packages/project/test/lib/build/helpers/ProjectBuildContext.js index 5c3373f27a4..93953ccdf9b 100644 --- a/packages/project/test/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/test/lib/build/helpers/ProjectBuildContext.js @@ -181,7 +181,7 @@ test("getResourceTagCollection: Assigns project to resource if necessary", (t) = buildContext: {}, project: fakeProject, log: { - verbose: () => {} + silly: () => {} } }); From dad7c2c15ab41de39b763dcd96029d7954cb8eaf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 1 Aug 2022 14:00:35 +0200 Subject: [PATCH 0668/1272] [ui5-project][INTERNAL] ProjectBuilder: Reduce standard logging * Make "required projects" log verbose. Only log number of projects that get processed. * If all dependencies are included/requested, simply log "all dependencies" instead of listing them --- packages/project/lib/build/ProjectBuilder.js | 66 ++++++++++++------- packages/project/lib/build/TaskRunner.js | 3 +- .../project/test/lib/build/ProjectBuilder.js | 12 ++-- packages/project/test/lib/build/TaskRunner.js | 9 +-- 4 files changed, 58 insertions(+), 32 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index da20e0baefa..257bc12b281 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -100,7 +100,8 @@ class ProjectBuilder { virBasePath: "/" }); - const buildQueue = []; + const queue = []; + const alreadyBuilt = []; // Create build queue based on graph depth-first search to ensure correct build order await this._graph.traverseDepthFirst(async ({project}) => { @@ -108,27 +109,41 @@ class ProjectBuilder { const projectBuildContext = projectBuildContexts.get(projectName); if (projectBuildContext) { // Build context exists - // => This project shall be built - buildQueue.push(projectBuildContext); + // => This project needs to be built or, in case it has already + // been built, it's build result needs to be written out (if requested) + queue.push(projectBuildContext); + if (!projectBuildContext.getTaskRunner().requiresBuild()) { + alreadyBuilt.push(projectName); + } } }); const buildLogger = log.createTaskLogger("🛠 "); - buildLogger.addWork(buildQueue.length); - log.info(` Projects required:`); - log.info(` ${buildQueue - .map((projectBuildContext) => { - const projectName = projectBuildContext.getProject().getName(); - const taskRunner = projectBuildContext.getTaskRunner(); - let msg; - if (taskRunner.requiresBuild()) { - msg = `=> ${projectName}`; - } else { - const buildMetadata = taskRunner.getFormattedBuildMetadata(); - msg = `*> ${projectName} /// already built ${buildMetadata.age} ago`; - } - return msg; - }) - .join("\n ")}`); + buildLogger.addWork(queue.length - alreadyBuilt.length); + if (queue.length > 1) { // Do not log if only the root project is being built + log.info(`Processing ${queue.length} projects`); + if (alreadyBuilt.length) { + log.info(` Reusing built results of ${alreadyBuilt.length} projects`); + log.info(` Building ${queue.length - alreadyBuilt.length} projects`); + } + + if (log.isLevelEnabled("verbose")) { + log.verbose(` Required projects:`); + log.verbose(` ${queue + .map((projectBuildContext) => { + const projectName = projectBuildContext.getProject().getName(); + let msg; + if (alreadyBuilt.includes(projectName)) { + const buildMetadata = projectBuildContext.getTaskRunner().getFormattedBuildMetadata(); + const ts = new Date(buildMetadata.timestamp).toUTCString(); + msg = `*> ${projectName} /// already built at ${ts}`; + } else { + msg = `=> ${projectName}`; + } + return msg; + }) + .join("\n ")}`); + } + } if (cleanDest) { log.info(`Cleaning target directory...`); @@ -137,11 +152,12 @@ class ProjectBuilder { const startTime = process.hrtime(); try { const pWrites = []; - for (const projectBuildContext of buildQueue) { + for (const projectBuildContext of queue) { const projectName = projectBuildContext.getProject().getName(); + log.verbose(`Processing project ${projectName}...`); // Only build projects that are not already build (i.e. provide a matching build manifest) - if (projectBuildContext.getTaskRunner().requiresBuild()) { + if (!alreadyBuilt.includes(projectName)) { buildLogger.startWork(`Building project ${projectName}...`); await this._buildProject(projectBuildContext); buildLogger.completeWork(1); @@ -217,8 +233,12 @@ class ProjectBuilder { ); if (includedDependencies.length) { - log.info(` Requested dependencies:`); - log.info(` + ${includedDependencies.join("\n + ")}`); + if (includedDependencies.length === this._graph.getAllProjects().length - 1) { + log.info(` Including all dependencies`); + } else { + log.info(` Requested dependencies:`); + log.info(` + ${includedDependencies.join("\n + ")}`); + } } if (excludedDependencies.length) { log.info(` Excluded dependencies:`); diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 6fd1f2ab217..a4c9358199a 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -131,13 +131,14 @@ class TaskRunner { return !this._project.hasBuildManifest(); } - getFormattedBuildMetadata() { + getBuildMetadata() { if (this._project.hasBuildManifest()) { const buildManifest = this._project.getBuildManifest(); const timeDiff = (new Date().getTime() - new Date(buildManifest.timestamp).getTime()); // TODO: Format age properly via a new @ui5/logger util module return { + timestamp: buildManifest.timestamp, age: timeDiff / 1000 + " seconds" }; } else { diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 079ff018e9f..14c22cbcf6c 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -133,7 +133,7 @@ test("build", async (t) => { "project.a", "project.b", "project.c" ], "_createRequiredBuildContexts got called with correct arguments"); - t.is(requiresBuildStub.callCount, 2, "TaskRunner#requiresBuild got called twice"); + t.is(requiresBuildStub.callCount, 1, "TaskRunner#requiresBuild got called twice"); t.is(registerCleanupSigHooksStub.callCount, 1, "_registerCleanupSigHooksStub got called once"); t.is(buildProjectStub.callCount, 1, "_buildProject got called once"); @@ -236,6 +236,7 @@ test.serial("build: Multiple projects", async (t) => { const requiresBuildBStub = sinon.stub().returns(false); const requiresBuildCStub = sinon.stub().returns(true); const getFormattedBuildMetadataStub = sinon.stub().returns({ + timestamp: "2022-07-28T12:00:00.000Z", age: "xx days" }); const projectBuildContextMockA = { @@ -276,10 +277,13 @@ test.serial("build: Multiple projects", async (t) => { const deregisterCleanupSigHooksStub = sinon.stub(builder, "_deregisterCleanupSigHooks"); const executeCleanupTasksStub = sinon.stub(builder, "_executeCleanupTasks").resolves(); + const log = require("@ui5/logger"); + log.setLevel("verbose"); await builder.build({ destPath: "dest/path", complexDependencyIncludes: "complexDependencyIncludes" }); + log.setLevel("info"); t.is(getProjectFilterStub.callCount, 1, "_getProjectFilter got called once"); t.deepEqual(getProjectFilterStub.getCall(0).args[0], { @@ -293,9 +297,9 @@ test.serial("build: Multiple projects", async (t) => { "project.b", "project.c" ], "_createRequiredBuildContexts got called with correct arguments"); - t.is(requiresBuildAStub.callCount, 2, "TaskRunner#requiresBuild got called twice times for library.a"); - t.is(requiresBuildBStub.callCount, 2, "TaskRunner#requiresBuild got called twice times for library.b"); - t.is(requiresBuildCStub.callCount, 2, "TaskRunner#requiresBuild got called twice times for library.c"); + t.is(requiresBuildAStub.callCount, 1, "TaskRunner#requiresBuild got called twice times for library.a"); + t.is(requiresBuildBStub.callCount, 1, "TaskRunner#requiresBuild got called twice times for library.b"); + t.is(requiresBuildCStub.callCount, 1, "TaskRunner#requiresBuild got called twice times for library.c"); t.is(registerCleanupSigHooksStub.callCount, 1, "_registerCleanupSigHooksStub got called once"); t.is(buildProjectStub.callCount, 2, "_buildProject got called three times"); // library.b does not require a build diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 1cf3913976b..1684d36b7d4 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -796,7 +796,7 @@ test("requiresBuild: has build-manifest", (t) => { t.false(taskRunner.requiresBuild(), "Project with build-manifest does not require to be build"); }); -test.serial("getFormattedBuildMetadata", (t) => { +test.serial("getBuildMetadata", (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("library"); project.hasBuildManifest = () => true; @@ -810,18 +810,19 @@ test.serial("getFormattedBuildMetadata", (t) => { project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - t.deepEqual(taskRunner.getFormattedBuildMetadata(), { + t.deepEqual(taskRunner.getBuildMetadata(), { + timestamp: "2022-07-28T12:00:00.000Z", age: "7200 seconds" }, "Project with build-manifest does not require to be build"); getTimeStub.restore(); }); -test("getFormattedBuildMetadata: has no build-manifest", (t) => { +test("getBuildMetadata: has no build-manifest", (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("library"); const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - t.is(taskRunner.getFormattedBuildMetadata(), null, "Project has no build manifest"); + t.is(taskRunner.getBuildMetadata(), null, "Project has no build manifest"); }); From 48739d725df634a4f7a8a12da0f4258d4157e4aa Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 5 Aug 2022 12:59:43 +0200 Subject: [PATCH 0669/1272] [ui5-project][INTERNAL] ProjectBuilder: Fix assertion message --- packages/project/test/lib/build/ProjectBuilder.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 14c22cbcf6c..0a606ee4d14 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -297,9 +297,9 @@ test.serial("build: Multiple projects", async (t) => { "project.b", "project.c" ], "_createRequiredBuildContexts got called with correct arguments"); - t.is(requiresBuildAStub.callCount, 1, "TaskRunner#requiresBuild got called twice times for library.a"); - t.is(requiresBuildBStub.callCount, 1, "TaskRunner#requiresBuild got called twice times for library.b"); - t.is(requiresBuildCStub.callCount, 1, "TaskRunner#requiresBuild got called twice times for library.c"); + t.is(requiresBuildAStub.callCount, 1, "TaskRunner#requiresBuild got called once times for library.a"); + t.is(requiresBuildBStub.callCount, 1, "TaskRunner#requiresBuild got called once times for library.b"); + t.is(requiresBuildCStub.callCount, 1, "TaskRunner#requiresBuild got called once times for library.c"); t.is(registerCleanupSigHooksStub.callCount, 1, "_registerCleanupSigHooksStub got called once"); t.is(buildProjectStub.callCount, 2, "_buildProject got called three times"); // library.b does not require a build From 85a7fc0e2c3dee514858adffca03d3ec4efdb8f0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 8 Aug 2022 13:31:34 +0000 Subject: [PATCH 0670/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-alpha.5 to 3.0.0-alpha.6 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-alpha.6/CHANGELOG.md --- packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bdb426a9fb5..f3b8a08db3f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.9", - "@ui5/fs": "^3.0.0-alpha.5", + "@ui5/fs": "^3.0.0-alpha.6", "@ui5/logger": "^3.0.1-alpha.2", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -893,11 +893,11 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-alpha.5", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.5.tgz", - "integrity": "sha512-u4hWPn2XqLvuh7Y5AJ8FnAybBlskTvDp+a1huwz29BZMBKOL+mEhws11MBoS6rRN4a4M5sLG89elQwBlHpH/GA==", + "version": "3.0.0-alpha.6", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.6.tgz", + "integrity": "sha512-7gBRYtUHLnmtf/5hp7YKJlER9rJ6XPoNn2BjaLOKpg/eoHluUigLPtqNqzrmhaBJ0HJ2LVURaJ/xK7eNUIJNVA==", "dependencies": { - "@ui5/logger": "^3.0.1-alpha.1", + "@ui5/logger": "^3.0.1-alpha.2", "clone": "^2.1.0", "escape-string-regexp": "^4.0.0", "globby": "^11.1.0", @@ -9396,11 +9396,11 @@ } }, "@ui5/fs": { - "version": "3.0.0-alpha.5", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.5.tgz", - "integrity": "sha512-u4hWPn2XqLvuh7Y5AJ8FnAybBlskTvDp+a1huwz29BZMBKOL+mEhws11MBoS6rRN4a4M5sLG89elQwBlHpH/GA==", + "version": "3.0.0-alpha.6", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.6.tgz", + "integrity": "sha512-7gBRYtUHLnmtf/5hp7YKJlER9rJ6XPoNn2BjaLOKpg/eoHluUigLPtqNqzrmhaBJ0HJ2LVURaJ/xK7eNUIJNVA==", "requires": { - "@ui5/logger": "^3.0.1-alpha.1", + "@ui5/logger": "^3.0.1-alpha.2", "clone": "^2.1.0", "escape-string-regexp": "^4.0.0", "globby": "^11.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index 0d86a8d4bfb..be4dce567da 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -103,7 +103,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-alpha.9", - "@ui5/fs": "^3.0.0-alpha.5", + "@ui5/fs": "^3.0.0-alpha.6", "@ui5/logger": "^3.0.1-alpha.2", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 8e51973856859691f6405d1b77795fa3d2833520 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 9 Aug 2022 13:52:31 +0000 Subject: [PATCH 0671/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.9 to 3.0.0-alpha.10 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.10/CHANGELOG.md --- packages/project/package-lock.json | 22 +++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f3b8a08db3f..6d090fd8220 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-alpha.7", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.9", + "@ui5/builder": "^3.0.0-alpha.10", "@ui5/fs": "^3.0.0-alpha.6", "@ui5/logger": "^3.0.1-alpha.2", "ajv": "^6.12.6", @@ -864,13 +864,13 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.9", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.9.tgz", - "integrity": "sha512-nFpnDB/PNdHA2eLbwa0KxzQO1QwU/X/hkA6ckUEr67ZvnNx8N6Kt+uBqegRpMLiF6NUwDFRCLdhjp+Hs03R79Q==", + "version": "3.0.0-alpha.10", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.10.tgz", + "integrity": "sha512-O7gbow0sz1/wHLR5csIcJcuxhA2OZCfush19P/dvxbEpVbFUmYL2O/ylE+q8G+fEXfMoryUd0Vu1kA6nQD4nRQ==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-alpha.5", - "@ui5/logger": "^3.0.1-alpha.1", + "@ui5/fs": "^3.0.0-alpha.6", + "@ui5/logger": "^3.0.1-alpha.2", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", @@ -9371,13 +9371,13 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.9", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.9.tgz", - "integrity": "sha512-nFpnDB/PNdHA2eLbwa0KxzQO1QwU/X/hkA6ckUEr67ZvnNx8N6Kt+uBqegRpMLiF6NUwDFRCLdhjp+Hs03R79Q==", + "version": "3.0.0-alpha.10", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.10.tgz", + "integrity": "sha512-O7gbow0sz1/wHLR5csIcJcuxhA2OZCfush19P/dvxbEpVbFUmYL2O/ylE+q8G+fEXfMoryUd0Vu1kA6nQD4nRQ==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-alpha.5", - "@ui5/logger": "^3.0.1-alpha.1", + "@ui5/fs": "^3.0.0-alpha.6", + "@ui5/logger": "^3.0.1-alpha.2", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^3.6.0", diff --git a/packages/project/package.json b/packages/project/package.json index be4dce567da..7620920e09e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.9", + "@ui5/builder": "^3.0.0-alpha.10", "@ui5/fs": "^3.0.0-alpha.6", "@ui5/logger": "^3.0.1-alpha.2", "ajv": "^6.12.6", From 130c1096843845ec1d2a9978a9e5a49b5925d1fa Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 9 Aug 2022 13:56:40 +0000 Subject: [PATCH 0672/1272] [ui5-project]Release 3.0.0-alpha.8 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 88654179633..92f0f882af4 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.7...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.8...HEAD). + + +## [v3.0.0-alpha.8] - 2022-08-09 +### Bug Fixes +- **Specification:** Fix migration for legacy projects that are not applications or libraries [`d89d804`](https://github.com/SAP/ui5-project/commit/d89d8047519ca8f162dc7a225f138ae304871ecb) + ## [v3.0.0-alpha.7] - 2022-07-27 @@ -322,6 +328,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.8]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.7...v3.0.0-alpha.8 [v3.0.0-alpha.7]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.6...v3.0.0-alpha.7 [v3.0.0-alpha.6]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.5...v3.0.0-alpha.6 [v3.0.0-alpha.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.4...v3.0.0-alpha.5 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6d090fd8220..d46f549b436 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.7", + "version": "3.0.0-alpha.8", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.7", + "version": "3.0.0-alpha.8", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.10", diff --git a/packages/project/package.json b/packages/project/package.json index 7620920e09e..6fe59f5d506 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.7", + "version": "3.0.0-alpha.8", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 321308a95a47cc571ca3720f1ac03e729f5645cd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 10 Aug 2022 14:10:16 +0200 Subject: [PATCH 0673/1272] [ui5-project][FIX] ProjectBuilder: Fix verbose logging for already built projects Function was renamed in TaskRunner but mock was not updated. Enhanced ui5-builder integration tests to cover this: https://github.com/SAP/ui5-builder/pull/779 --- packages/project/lib/build/ProjectBuilder.js | 2 +- packages/project/test/lib/build/ProjectBuilder.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 257bc12b281..fe360293734 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -133,7 +133,7 @@ class ProjectBuilder { const projectName = projectBuildContext.getProject().getName(); let msg; if (alreadyBuilt.includes(projectName)) { - const buildMetadata = projectBuildContext.getTaskRunner().getFormattedBuildMetadata(); + const buildMetadata = projectBuildContext.getTaskRunner().getBuildMetadata(); const ts = new Date(buildMetadata.timestamp).toUTCString(); msg = `*> ${projectName} /// already built at ${ts}`; } else { diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 0a606ee4d14..44beaac7f35 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -235,7 +235,7 @@ test.serial("build: Multiple projects", async (t) => { const requiresBuildAStub = sinon.stub().returns(true); const requiresBuildBStub = sinon.stub().returns(false); const requiresBuildCStub = sinon.stub().returns(true); - const getFormattedBuildMetadataStub = sinon.stub().returns({ + const getBuildMetadataStub = sinon.stub().returns({ timestamp: "2022-07-28T12:00:00.000Z", age: "xx days" }); @@ -251,7 +251,7 @@ test.serial("build: Multiple projects", async (t) => { getTaskRunner: () => { return { requiresBuild: requiresBuildBStub, - getFormattedBuildMetadata: getFormattedBuildMetadataStub + getBuildMetadata: getBuildMetadataStub }; }, getProject: sinon.stub().returns(getMockProject("library", "b")) From 7eff7e66f096394c64b53f1fd5c00a407270657d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 10 Aug 2022 14:12:59 +0200 Subject: [PATCH 0674/1272] [ui5-project][INTERNAL] Module: Add verbose logging for source of module configuration Should help debugging --- packages/project/lib/graph/Module.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js index 4a2189ace0e..8f80fc36b1b 100644 --- a/packages/project/lib/graph/Module.js +++ b/packages/project/lib/graph/Module.js @@ -364,6 +364,7 @@ class Module { throw validationErrors[0]; } + log.verbose(`Configuration for module ${this.getId()} is provided in YAML file at ${configPath}`); return configs; } @@ -374,6 +375,7 @@ class Module { log.verbose(`Could not find any build manifest in module ${this.getId()}`); return []; } + log.verbose(`Configuration for module ${this.getId()} is provided in build manifest`); // This function is expected to return the configuration of a project, so we add the buildManifest metadata // to a temporary attribute of the project configuration and retrieve it later for Specification creation From 9be858ab813586205bcf8a5fdf9ded4a49dc4444 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 10 Aug 2022 12:34:27 +0000 Subject: [PATCH 0675/1272] [ui5-project]Release 3.0.0-alpha.9 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 92f0f882af4..dfd55506288 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.8...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.9...HEAD). + + +## [v3.0.0-alpha.9] - 2022-08-10 +### Bug Fixes +- **ProjectBuilder:** Fix verbose logging for already built projects [`f04ffd2`](https://github.com/SAP/ui5-project/commit/f04ffd2c0ab0270df697c20258474ff536811476) + ## [v3.0.0-alpha.8] - 2022-08-09 @@ -328,6 +334,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.9]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.8...v3.0.0-alpha.9 [v3.0.0-alpha.8]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.7...v3.0.0-alpha.8 [v3.0.0-alpha.7]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.6...v3.0.0-alpha.7 [v3.0.0-alpha.6]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.5...v3.0.0-alpha.6 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d46f549b436..9478777a9c3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.8", + "version": "3.0.0-alpha.9", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.8", + "version": "3.0.0-alpha.9", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.10", diff --git a/packages/project/package.json b/packages/project/package.json index 6fe59f5d506..61024bae00d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.8", + "version": "3.0.0-alpha.9", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From ae758a58c8c0b7bc5ca95dfc182e970305fc0c80 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 19 Aug 2022 15:27:08 +0200 Subject: [PATCH 0676/1272] [ui5-project][INTERNAL] use eslint-plugin-ava and clean up test-suite (#470) --- packages/project/.eslintrc.js | 10 +- packages/project/package-lock.json | 271 ++++++++++++++++++ packages/project/package.json | 1 + .../project/test/lib/build/ProjectBuilder.js | 50 ++-- packages/project/test/lib/build/TaskRunner.js | 4 +- .../test/lib/build/definitions/application.js | 14 +- .../test/lib/build/definitions/library.js | 16 +- .../test/lib/build/definitions/module.js | 2 +- .../lib/build/definitions/themeLibrary.js | 6 +- .../test/lib/build/helpers/TaskUtil.js | 46 +-- .../lib/generateProjectGraph.usingObject.js | 3 +- packages/project/test/lib/graph/Module.js | 4 +- .../project/test/lib/graph/ProjectGraph.js | 16 +- .../project/test/lib/graph/ShimCollection.js | 2 +- .../graph/helpers/ui5Framework.integration.js | 2 + .../test/lib/graph/projectGraphBuilder.js | 2 +- .../lib/specifications/ComponentProject.js | 10 +- .../lib/specifications/types/Application.js | 30 +- .../test/lib/specifications/types/Library.js | 40 +-- .../lib/specifications/types/ThemeLibrary.js | 2 +- .../types/extensions/ServerMiddleware.js | 2 +- .../specifications/types/extensions/Task.js | 2 +- .../test/lib/ui5framework/AbstractResolver.js | 2 +- .../test/lib/ui5framework/npm/Installer.js | 15 +- 24 files changed, 417 insertions(+), 135 deletions(-) diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.js index b1b5dfca860..a802f3d4a27 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.js @@ -3,9 +3,10 @@ module.exports = { "node": true, "es2021": true }, - "extends": ["eslint:recommended", "google"], + "extends": ["eslint:recommended", "plugin:ava/recommended", "google"], "plugins": [ - "jsdoc" + "jsdoc", + "ava" ], "rules": { "indent": [ @@ -64,7 +65,10 @@ module.exports = { "jsdoc/require-returns": 0, "jsdoc/require-returns-description": 0, "jsdoc/require-returns-type": 2, - "jsdoc/valid-types": 0 + "jsdoc/valid-types": 0, + // ava/assertion-arguments reports concatenated strings in a assertion message as an issue + // See: https://github.com/avajs/eslint-plugin-ava/issues/332 + "ava/assertion-arguments": 0 }, "settings": { "jsdoc": { diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9478777a9c3..cfe11c80e18 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -38,6 +38,7 @@ "docdash": "^1.2.0", "eslint": "^8.7.0", "eslint-config-google": "^0.14.0", + "eslint-plugin-ava": "^13.0.2", "eslint-plugin-jsdoc": "^37.6.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^4.0.3", @@ -2881,6 +2882,18 @@ "once": "^1.4.0" } }, + "node_modules/enhance-visitors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/enhance-visitors/-/enhance-visitors-1.0.0.tgz", + "integrity": "sha512-+29eJLiUixTEDRaZ35Vu8jP3gPLNcQQkQkOQjLp2X+6cZGGPDD/uasbFzvLsJKnGZnvmyZ0srxudwOtskHeIDA==", + "dev": true, + "dependencies": { + "lodash": "^4.13.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/entities": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", @@ -3123,6 +3136,119 @@ "eslint": ">=5.16.0" } }, + "node_modules/eslint-plugin-ava": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-13.2.0.tgz", + "integrity": "sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==", + "dev": true, + "dependencies": { + "enhance-visitors": "^1.0.0", + "eslint-utils": "^3.0.0", + "espree": "^9.0.0", + "espurify": "^2.1.1", + "import-modules": "^2.1.0", + "micro-spelling-correcter": "^1.1.1", + "pkg-dir": "^5.0.0", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=12.22 <13 || >=14.17 <15 || >=16.4" + }, + "peerDependencies": { + "eslint": ">=7.22.0" + } + }, + "node_modules/eslint-plugin-ava/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-ava/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-ava/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-ava/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-ava/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint-plugin-ava/node_modules/pkg-dir": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", + "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", + "dev": true, + "dependencies": { + "find-up": "^5.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-ava/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/eslint-plugin-jsdoc": { "version": "37.9.7", "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.7.tgz", @@ -3267,6 +3393,12 @@ "node": ">=4" } }, + "node_modules/espurify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/espurify/-/espurify-2.1.1.tgz", + "integrity": "sha512-zttWvnkhcDyGOhSH4vO2qCBILpdCMv/MX8lp4cqgRkQoDRGK2oZxi2GfWhlP2dIXmk7BaKeOTuzbHhyC68o8XQ==", + "dev": true + }, "node_modules/esquery": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", @@ -4154,6 +4286,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/import-modules": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-modules/-/import-modules-2.1.0.tgz", + "integrity": "sha512-8HEWcnkbGpovH9yInoisxaSoIg9Brbul+Ju3Kqe2UsYDUBJD/iQjSgEj0zPcTDPKfPp2fs5xlv1i+JSye/m1/A==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -5220,6 +5364,12 @@ "node": ">= 8" } }, + "node_modules/micro-spelling-correcter": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/micro-spelling-correcter/-/micro-spelling-correcter-1.1.1.tgz", + "integrity": "sha512-lkJ3Rj/mtjlRcHk6YyCbvZhyWTOzdBvTHsxMmZSk5jxN1YyVSQ+JETAom55mdzfcyDrY/49Z7UCW760BK30crg==", + "dev": true + }, "node_modules/micromatch": { "version": "4.0.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", @@ -8736,6 +8886,18 @@ "dependencies": { "buffer-crc32": "~0.2.3" } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } } }, "dependencies": { @@ -10971,6 +11133,15 @@ "once": "^1.4.0" } }, + "enhance-visitors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/enhance-visitors/-/enhance-visitors-1.0.0.tgz", + "integrity": "sha512-+29eJLiUixTEDRaZ35Vu8jP3gPLNcQQkQkOQjLp2X+6cZGGPDD/uasbFzvLsJKnGZnvmyZ0srxudwOtskHeIDA==", + "dev": true, + "requires": { + "lodash": "^4.13.1" + } + }, "entities": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", @@ -11199,6 +11370,82 @@ "dev": true, "requires": {} }, + "eslint-plugin-ava": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-13.2.0.tgz", + "integrity": "sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==", + "dev": true, + "requires": { + "enhance-visitors": "^1.0.0", + "eslint-utils": "^3.0.0", + "espree": "^9.0.0", + "espurify": "^2.1.1", + "import-modules": "^2.1.0", + "micro-spelling-correcter": "^1.1.1", + "pkg-dir": "^5.0.0", + "resolve-from": "^5.0.0" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "pkg-dir": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", + "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", + "dev": true, + "requires": { + "find-up": "^5.0.0" + } + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } + } + }, "eslint-plugin-jsdoc": { "version": "37.9.7", "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.7.tgz", @@ -11271,6 +11518,12 @@ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, + "espurify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/espurify/-/espurify-2.1.1.tgz", + "integrity": "sha512-zttWvnkhcDyGOhSH4vO2qCBILpdCMv/MX8lp4cqgRkQoDRGK2oZxi2GfWhlP2dIXmk7BaKeOTuzbHhyC68o8XQ==", + "dev": true + }, "esquery": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", @@ -11979,6 +12232,12 @@ "resolve-cwd": "^3.0.0" } }, + "import-modules": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-modules/-/import-modules-2.1.0.tgz", + "integrity": "sha512-8HEWcnkbGpovH9yInoisxaSoIg9Brbul+Ju3Kqe2UsYDUBJD/iQjSgEj0zPcTDPKfPp2fs5xlv1i+JSye/m1/A==", + "dev": true + }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -12796,6 +13055,12 @@ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" }, + "micro-spelling-correcter": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/micro-spelling-correcter/-/micro-spelling-correcter-1.1.1.tgz", + "integrity": "sha512-lkJ3Rj/mtjlRcHk6YyCbvZhyWTOzdBvTHsxMmZSk5jxN1YyVSQ+JETAom55mdzfcyDrY/49Z7UCW760BK30crg==", + "dev": true + }, "micromatch": { "version": "4.0.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", @@ -15564,6 +15829,12 @@ "requires": { "buffer-crc32": "~0.2.3" } + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true } } } diff --git a/packages/project/package.json b/packages/project/package.json index 61024bae00d..11497d1a477 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -132,6 +132,7 @@ "eslint": "^8.7.0", "eslint-config-google": "^0.14.0", "eslint-plugin-jsdoc": "^37.6.3", + "eslint-plugin-ava": "^13.0.2", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 44beaac7f35..b64b1bccb86 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -1,10 +1,8 @@ const test = require("ava"); -const sinon = require("sinon"); +const sinonGlobal = require("sinon"); const path = require("path"); const mock = require("mock-require"); -const ProjectBuilder = require("../../../lib/build/ProjectBuilder"); - function noop() {} function getMockProject(type, id = "b") { @@ -21,6 +19,8 @@ function getMockProject(type, id = "b") { } test.beforeEach((t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + t.context.ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); t.context.getRootNameStub = sinon.stub().returns("project.a"); t.context.getRootTypeStub = sinon.stub().returns("application"); t.context.taskRepository = "taskRepository"; @@ -70,12 +70,13 @@ test.beforeEach((t) => { }; }); -test.afterEach.always(() => { - sinon.restore(); +test.afterEach.always((t) => { + t.context.sinon.restore(); mock.stopAll(); }); -test("Missing graph parameters", async (t) => { +test("Missing graph parameters", (t) => { + const {ProjectBuilder} = t.context; const err1 = t.throws(() => { new ProjectBuilder(); }); @@ -90,7 +91,7 @@ test("Missing graph parameters", async (t) => { }); test("build", async (t) => { - const {graph, taskRepository} = t.context; + const {graph, taskRepository, ProjectBuilder, sinon} = t.context; const builder = new ProjectBuilder(graph, taskRepository); @@ -153,7 +154,7 @@ test("build", async (t) => { }); test("build: Missing dest parameter", async (t) => { - const {graph, taskRepository} = t.context; + const {graph, taskRepository, ProjectBuilder} = t.context; const builder = new ProjectBuilder(graph, taskRepository); @@ -171,7 +172,7 @@ test("build: Missing dest parameter", async (t) => { }); test("build: Too many dependency parameters", async (t) => { - const {graph, taskRepository} = t.context; + const {graph, taskRepository, ProjectBuilder} = t.context; const builder = new ProjectBuilder(graph, taskRepository); @@ -184,7 +185,7 @@ test("build: Too many dependency parameters", async (t) => { }); test("build: Failure", async (t) => { - const {graph, taskRepository} = t.context; + const {graph, taskRepository, ProjectBuilder, sinon} = t.context; const builder = new ProjectBuilder(graph, taskRepository); @@ -226,7 +227,7 @@ test("build: Failure", async (t) => { }); test.serial("build: Multiple projects", async (t) => { - const {graph, taskRepository} = t.context; + const {graph, taskRepository, ProjectBuilder, sinon} = t.context; const builder = new ProjectBuilder(graph, taskRepository); const filterProjectStub = sinon.stub().returns(true).onFirstCall().returns(false); @@ -324,8 +325,8 @@ test.serial("build: Multiple projects", async (t) => { t.is(executeCleanupTasksStub.callCount, 1, "_executeCleanupTasksStub got called once"); }); -test("_createRequiredBuildContexts", async (t) => { - const {graph, taskRepository} = t.context; +test("_createRequiredBuildContexts", (t) => { + const {graph, taskRepository, ProjectBuilder, sinon} = t.context; const builder = new ProjectBuilder(graph, taskRepository); @@ -368,7 +369,7 @@ test("_createRequiredBuildContexts", async (t) => { }); test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { - const {graph, taskRepository} = t.context; + const {graph, taskRepository, sinon} = t.context; const composeProjectListStub = sinon.stub().returns({ includedDependencies: ["project.b", "project.c"], @@ -398,7 +399,7 @@ test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { }); test.serial("_getProjectFilter with explicit include/exclude", async (t) => { - const {graph, taskRepository} = t.context; + const {graph, taskRepository, sinon} = t.context; const composeProjectListStub = sinon.stub().returns({ includedDependencies: ["project.b", "project.c"], @@ -429,7 +430,7 @@ test.serial("_getProjectFilter with explicit include/exclude", async (t) => { }); test.serial("_buildProject", async (t) => { - const {graph, taskRepository} = t.context; + const {graph, taskRepository, ProjectBuilder, sinon} = t.context; const builder = new ProjectBuilder(graph, taskRepository); const readerCollectionStub = sinon.stub(require("@ui5/fs").resourceFactory, "createReaderCollection") @@ -459,7 +460,7 @@ test.serial("_buildProject", async (t) => { }); test.serial("_buildProject: Requested project is not added to readers", async (t) => { - const {graph, taskRepository} = t.context; + const {graph, taskRepository, ProjectBuilder, sinon} = t.context; const builder = new ProjectBuilder(graph, taskRepository); const readerCollectionStub = sinon.stub(require("@ui5/fs").resourceFactory, "createReaderCollection") @@ -489,6 +490,7 @@ test.serial("_buildProject: Requested project is not added to readers", async (t }); test("_writeResults", async (t) => { + const {ProjectBuilder, sinon} = t.context; t.context.getRootTypeStub = sinon.stub().returns("library"); const {graph, taskRepository} = t.context; const builder = new ProjectBuilder(graph, taskRepository, { @@ -554,6 +556,7 @@ test("_writeResults", async (t) => { }); test.serial("_writeResults: Create build manifest", async (t) => { + const {sinon} = t.context; t.context.getRootTypeStub = sinon.stub().returns("library"); const {graph, taskRepository} = t.context; @@ -647,6 +650,7 @@ test.serial("_writeResults: Create build manifest", async (t) => { }); test("_writeResults: Do not create build manifest for non-root project", async (t) => { + const {ProjectBuilder, sinon} = t.context; t.context.getRootTypeStub = sinon.stub().returns("library"); const {graph, taskRepository} = t.context; @@ -696,11 +700,11 @@ test("_writeResults: Do not create build manifest for non-root project", async ( }); test("_executeCleanupTasks", async (t) => { - const {graph, taskRepository} = t.context; + const {graph, taskRepository, ProjectBuilder, sinon} = t.context; const builder = new ProjectBuilder(graph, taskRepository); const executeCleanupTasksStub = sinon.stub(builder._buildContext, "executeCleanupTasks"); - builder._executeCleanupTasks(); + await builder._executeCleanupTasks(); t.is(executeCleanupTasksStub.callCount, 1, "BuildContext#executeCleanupTasks got called once"); t.deepEqual(executeCleanupTasksStub.getCall(0).args, [], "BuildContext#executeCleanupTasks got called with no arguments"); @@ -712,10 +716,10 @@ function getProcessListenerCount() { return process.listenerCount(eventName); }); } -test.serial("_registerCleanupSigHooks/_deregisterCleanupSigHooks", async (t) => { +test("_registerCleanupSigHooks/_deregisterCleanupSigHooks", (t) => { const listenersBefore = getProcessListenerCount(); - const {graph, taskRepository} = t.context; + const {graph, taskRepository, ProjectBuilder} = t.context; const builder = new ProjectBuilder(graph, taskRepository); const signals = builder._registerCleanupSigHooks(); @@ -732,8 +736,8 @@ test.serial("_registerCleanupSigHooks/_deregisterCleanupSigHooks", async (t) => "All signal listeners got de-registered"); }); -test("_getElapsedTime", async (t) => { - const {graph, taskRepository} = t.context; +test("_getElapsedTime", (t) => { + const {graph, taskRepository, ProjectBuilder} = t.context; const builder = new ProjectBuilder(graph, taskRepository); const res = builder._getElapsedTime(process.hrtime()); diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 1684d36b7d4..eb3bf026ff2 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -685,7 +685,7 @@ test.serial("_addTask with options", async (t) => { mock.stopAll(); }); -test("_addTask: Duplicate task", async (t) => { +test("_addTask: Duplicate task", (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ @@ -705,7 +705,7 @@ test("_addTask: Duplicate task", async (t) => { "Threw with expected error message"); }); -test("_addTask: Task already added to execution order", async (t) => { +test("_addTask: Task already added to execution order", (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ diff --git a/packages/project/test/lib/build/definitions/application.js b/packages/project/test/lib/build/definitions/application.js index 6c942d64ff6..b14929ef6b6 100644 --- a/packages/project/test/lib/build/definitions/application.js +++ b/packages/project/test/lib/build/definitions/application.js @@ -37,7 +37,7 @@ test.beforeEach((t) => { t.context.getTask = sinon.stub(); }); -test("Standard build", async (t) => { +test("Standard build", (t) => { const {project, taskUtil, getTask} = t.context; const tasks = application({ project, taskUtil, getTask @@ -103,7 +103,7 @@ test("Standard build", async (t) => { t.is(taskUtil.getBuildOption.callCount, 0, "taskUtil#getBuildOption has not been called"); }); -test("Standard build with legacy spec version", async (t) => { +test("Standard build with legacy spec version", (t) => { const {project, taskUtil, getTask} = t.context; project.getSpecVersion = () => "0.1"; const generateBundleTaskStub = sinon.stub(); @@ -346,7 +346,7 @@ test("Custom bundles", async (t) => { }, "generateBundle task got called with correct arguments"); }); -test("Minification excludes", async (t) => { +test("Minification excludes", (t) => { const {project, taskUtil, getTask} = t.context; project.getMinificationExcludes = () => ["**.html"]; @@ -366,7 +366,7 @@ test("Minification excludes", async (t) => { }, "Correct minify task definition"); }); -test("Minification excludes not applied for legacy specVersion", async (t) => { +test("Minification excludes not applied for legacy specVersion", (t) => { const {project, taskUtil, getTask} = t.context; project.getSpecVersion = () => "2.5"; project.getMinificationExcludes = () => ["**.html"]; @@ -386,7 +386,7 @@ test("Minification excludes not applied for legacy specVersion", async (t) => { }, "Correct minify task definition"); }); -test("generateComponentPreload with custom paths, excludes and custom bundle", async (t) => { +test("generateComponentPreload with custom paths, excludes and custom bundle", (t) => { const {project, taskUtil, getTask} = t.context; project.getBundles = () => [{ bundleDefinition: { @@ -433,7 +433,7 @@ test("generateComponentPreload with custom paths, excludes and custom bundle", a }, "Correct generateComponentPreload task definition"); }); -test("generateComponentPreload with custom namespaces and excludes", async (t) => { +test("generateComponentPreload with custom namespaces and excludes", (t) => { const {project, taskUtil, getTask} = t.context; project.getComponentPreloadNamespaces = () => [ "project/b/componentA", @@ -459,7 +459,7 @@ test("generateComponentPreload with custom namespaces and excludes", async (t) = }, "Correct generateComponentPreload task definition"); }); -test("generateComponentPreload with excludes", async (t) => { +test("generateComponentPreload with excludes", (t) => { const {project, taskUtil, getTask} = t.context; project.getComponentPreloadExcludes = () => ["project/b/componentA/dir/**"]; diff --git a/packages/project/test/lib/build/definitions/library.js b/packages/project/test/lib/build/definitions/library.js index fe1d7ac3479..7ab1d232c87 100644 --- a/packages/project/test/lib/build/definitions/library.js +++ b/packages/project/test/lib/build/definitions/library.js @@ -151,7 +151,7 @@ test("Standard build", async (t) => { "taskUtil#getBuildOption got called with correct argument"); }); -test("Standard build with legacy spec version", async (t) => { +test("Standard build with legacy spec version", (t) => { const {project, taskUtil, getTask} = t.context; project.getSpecVersion = () => "0.1"; @@ -414,7 +414,7 @@ test("Custom bundles", async (t) => { }, "generateBundle task got called with correct arguments"); }); -test("Minification excludes", async (t) => { +test("Minification excludes", (t) => { const {project, taskUtil, getTask} = t.context; project.getMinificationExcludes = () => ["**.html"]; @@ -434,7 +434,7 @@ test("Minification excludes", async (t) => { }, "Correct minify task definition"); }); -test("Minification excludes not applied for legacy specVersion", async (t) => { +test("Minification excludes not applied for legacy specVersion", (t) => { const {project, taskUtil, getTask} = t.context; project.getSpecVersion = () => "2.5"; project.getMinificationExcludes = () => ["**.html"]; @@ -454,7 +454,7 @@ test("Minification excludes not applied for legacy specVersion", async (t) => { }, "Correct minify task definition"); }); -test("generateComponentPreload with custom paths, excludes and custom bundle", async (t) => { +test("generateComponentPreload with custom paths, excludes and custom bundle", (t) => { const {project, taskUtil, getTask} = t.context; project.getBundles = () => [{ bundleDefinition: { @@ -501,7 +501,7 @@ test("generateComponentPreload with custom paths, excludes and custom bundle", a }, "Correct generateComponentPreload task definition"); }); -test("generateComponentPreload with custom namespaces and excludes", async (t) => { +test("generateComponentPreload with custom namespaces and excludes", (t) => { const {project, taskUtil, getTask} = t.context; project.getComponentPreloadNamespaces = () => [ "project/b/componentA", @@ -527,7 +527,7 @@ test("generateComponentPreload with custom namespaces and excludes", async (t) = }, "Correct generateComponentPreload task definition"); }); -test("generateLibraryPreload with excludes", async (t) => { +test("generateLibraryPreload with excludes", (t) => { const {project, taskUtil, getTask} = t.context; project.getLibraryPreloadExcludes = () => ["project/b/dir/**"]; @@ -544,7 +544,7 @@ test("generateLibraryPreload with excludes", async (t) => { }, "Correct generateLibraryPreload task definition"); }); -test("buildThemes: Project is not root", async (t) => { +test("buildThemes: Project is not root", (t) => { const {project, taskUtil, getTask} = t.context; taskUtil.isRootProject.returns(false); @@ -564,7 +564,7 @@ test("buildThemes: Project is not root", async (t) => { } }, "Correct buildThemes task definition"); }); -test("buildThemes: CSS Variables enabled", async (t) => { +test("buildThemes: CSS Variables enabled", (t) => { const {project, taskUtil, getTask} = t.context; taskUtil.getBuildOption.returns(true); diff --git a/packages/project/test/lib/build/definitions/module.js b/packages/project/test/lib/build/definitions/module.js index 37a789792f9..d2bce900919 100644 --- a/packages/project/test/lib/build/definitions/module.js +++ b/packages/project/test/lib/build/definitions/module.js @@ -2,7 +2,7 @@ const test = require("ava"); const moduleDefinition = require("../../../../lib/build/definitions/module"); -test("Standard build", async (t) => { +test("Standard build", (t) => { const tasks = moduleDefinition({}); t.is(tasks.size, 0, "No tasks returned"); }); diff --git a/packages/project/test/lib/build/definitions/themeLibrary.js b/packages/project/test/lib/build/definitions/themeLibrary.js index 1a9990a86b5..71822e83e7b 100644 --- a/packages/project/test/lib/build/definitions/themeLibrary.js +++ b/packages/project/test/lib/build/definitions/themeLibrary.js @@ -37,7 +37,7 @@ test.beforeEach((t) => { t.context.getTask = sinon.stub(); }); -test("Standard build", async (t) => { +test("Standard build", (t) => { const {project, taskUtil, getTask} = t.context; const tasks = themeLibrary({ @@ -82,7 +82,7 @@ test("Standard build", async (t) => { "taskUtil#getBuildOption got called with correct argument"); }); -test("Standard build for non root project", async (t) => { +test("Standard build for non root project", (t) => { const {project, taskUtil, getTask} = t.context; taskUtil.isRootProject.returns(false); @@ -128,7 +128,7 @@ test("Standard build for non root project", async (t) => { "taskUtil#getBuildOption got called with correct argument"); }); -test("CSS variables enabled", async (t) => { +test("CSS variables enabled", (t) => { const {project, taskUtil, getTask} = t.context; taskUtil.getBuildOption.returns(true); diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index e08593f1803..e7bfd167cbc 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -13,7 +13,7 @@ const STANDARD_TAGS = Object.freeze({ IsBundle: "ui5:IsBundle" }); -test("Instantiation", async (t) => { +test("Instantiation", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: { // STANDARD_TAGS: ["some tag", "some other tag", "Thursday"] @@ -23,7 +23,7 @@ test("Instantiation", async (t) => { t.deepEqual(taskUtil.STANDARD_TAGS, STANDARD_TAGS, "Correct standard tags exposed"); }); -test("setTag", async (t) => { +test("setTag", (t) => { const setTagStub = sinon.stub(); const taskUtil = new TaskUtil({ projectBuildContext: { @@ -40,11 +40,11 @@ test("setTag", async (t) => { t.is(setTagStub.callCount, 1, "ResourceTagCollection#setTag got called once"); t.deepEqual(setTagStub.getCall(0).args[0], dummyResource, "Correct resource parameter supplied"); - t.deepEqual(setTagStub.getCall(0).args[1], "my tag", "Correct tag parameter supplied"); - t.deepEqual(setTagStub.getCall(0).args[2], "my value", "Correct value parameter supplied"); + t.is(setTagStub.getCall(0).args[1], "my tag", "Correct tag parameter supplied"); + t.is(setTagStub.getCall(0).args[2], "my value", "Correct value parameter supplied"); }); -test("getTag", async (t) => { +test("getTag", (t) => { const getTagStub = sinon.stub().returns(42); const taskUtil = new TaskUtil({ projectBuildContext: { @@ -61,11 +61,11 @@ test("getTag", async (t) => { t.is(getTagStub.callCount, 1, "ResourceTagCollection#getTag got called once"); t.deepEqual(getTagStub.getCall(0).args[0], dummyResource, "Correct resource parameter supplied"); - t.deepEqual(getTagStub.getCall(0).args[1], "my tag", "Correct tag parameter supplied"); + t.is(getTagStub.getCall(0).args[1], "my tag", "Correct tag parameter supplied"); t.is(res, 42, "Correct result"); }); -test("clearTag", async (t) => { +test("clearTag", (t) => { const clearTagStub = sinon.stub(); const taskUtil = new TaskUtil({ projectBuildContext: { @@ -82,10 +82,10 @@ test("clearTag", async (t) => { t.is(clearTagStub.callCount, 1, "ResourceTagCollection#clearTag got called once"); t.deepEqual(clearTagStub.getCall(0).args[0], dummyResource, "Correct resource parameter supplied"); - t.deepEqual(clearTagStub.getCall(0).args[1], "my tag", "Correct tag parameter supplied"); + t.is(clearTagStub.getCall(0).args[1], "my tag", "Correct tag parameter supplied"); }); -test("setTag with resource path is not supported anymore", async (t) => { +test("setTag with resource path is not supported anymore", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); @@ -99,7 +99,7 @@ test("setTag with resource path is not supported anymore", async (t) => { "Threw with expected error message"); }); -test("getTag with resource path is not supported anymore", async (t) => { +test("getTag with resource path is not supported anymore", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); @@ -113,7 +113,7 @@ test("getTag with resource path is not supported anymore", async (t) => { "Threw with expected error message"); }); -test("clearTag with resource path is not supported anymore", async (t) => { +test("clearTag with resource path is not supported anymore", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); @@ -127,7 +127,7 @@ test("clearTag with resource path is not supported anymore", async (t) => { "Threw with expected error message"); }); -test("isRootProject", async (t) => { +test("isRootProject", (t) => { const isRootProjectStub = sinon.stub().returns(true); const taskUtil = new TaskUtil({ projectBuildContext: { @@ -170,7 +170,7 @@ test("getProject", (t) => { t.is(res, "Pony farm!", "Correct result"); }); -test("registerCleanupTask", async (t) => { +test("registerCleanupTask", (t) => { const registerCleanupTaskStub = sinon.stub(); const taskUtil = new TaskUtil({ projectBuildContext: { @@ -181,10 +181,10 @@ test("registerCleanupTask", async (t) => { taskUtil.registerCleanupTask("my callback"); t.is(registerCleanupTaskStub.callCount, 1, "ProjectBuildContext#registerCleanupTask got called once"); - t.deepEqual(registerCleanupTaskStub.getCall(0).args[0], "my callback", "Correct callback parameter supplied"); + t.is(registerCleanupTaskStub.getCall(0).args[0], "my callback", "Correct callback parameter supplied"); }); -test("getInterface: specVersion 1.0", async (t) => { +test("getInterface: specVersion 1.0", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); @@ -194,7 +194,7 @@ test("getInterface: specVersion 1.0", async (t) => { t.is(interfacedTaskUtil, undefined, "no interface provided"); }); -test("getInterface: specVersion 2.2", async (t) => { +test("getInterface: specVersion 2.2", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); @@ -218,7 +218,7 @@ test("getInterface: specVersion 2.2", async (t) => { t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); }); -test("getInterface: specVersion 2.3", async (t) => { +test("getInterface: specVersion 2.3", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); @@ -242,7 +242,7 @@ test("getInterface: specVersion 2.3", async (t) => { t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); }); -test("getInterface: specVersion 2.4", async (t) => { +test("getInterface: specVersion 2.4", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); @@ -266,7 +266,7 @@ test("getInterface: specVersion 2.4", async (t) => { t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); }); -test("getInterface: specVersion 2.5", async (t) => { +test("getInterface: specVersion 2.5", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); @@ -290,7 +290,7 @@ test("getInterface: specVersion 2.5", async (t) => { t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); }); -test("getInterface: specVersion 2.6", async (t) => { +test("getInterface: specVersion 2.6", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); @@ -314,7 +314,7 @@ test("getInterface: specVersion 2.6", async (t) => { t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); }); -test("getInterface: specVersion 3.0", async (t) => { +test("getInterface: specVersion 3.0", (t) => { const getProjectStub = sinon.stub().returns({ getName: () => "", getVersion: () => "", @@ -359,7 +359,7 @@ test("getInterface: specVersion 3.0", async (t) => { t.is(typeof interfacedProject.getNamespace, "function", "function getNamespace is provided"); }); -test("getInterface: specVersion undefined", async (t) => { +test("getInterface: specVersion undefined", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); @@ -372,7 +372,7 @@ test("getInterface: specVersion undefined", async (t) => { "Throw with correct error message"); }); -test("getInterface: specVersion unknown", async (t) => { +test("getInterface: specVersion unknown", (t) => { const taskUtil = new TaskUtil({ projectBuildContext: {} }); diff --git a/packages/project/test/lib/generateProjectGraph.usingObject.js b/packages/project/test/lib/generateProjectGraph.usingObject.js index 1c911a0dd70..fe2aa744683 100644 --- a/packages/project/test/lib/generateProjectGraph.usingObject.js +++ b/packages/project/test/lib/generateProjectGraph.usingObject.js @@ -369,7 +369,7 @@ test("Missing second-level dependencies", async (t) => { path: path.join(applicationAPath, "node_modules", "library.d") }] }); - return t.notThrowsAsync(projectGraphFromTree({dependencyTree: tree}), + await t.notThrowsAsync(projectGraphFromTree({dependencyTree: tree}), "Gracefully accepted project with no dependencies attribute"); }); @@ -1427,6 +1427,7 @@ test("Project with project-shim extension with collection", async (t) => { }); // TODO: Fixme +// eslint-disable-next-line ava/no-skip-test test.skip("Project with project-shim extension with self-containing collection shim", async (t) => { const tree = { id: "application.a.id", diff --git a/packages/project/test/lib/graph/Module.js b/packages/project/test/lib/graph/Module.js index 749be34807d..d154b83ef97 100644 --- a/packages/project/test/lib/graph/Module.js +++ b/packages/project/test/lib/graph/Module.js @@ -29,7 +29,7 @@ const archiveLibProjectInput = { modulePath: buildDescriptionLibraryAPath }; -test("Instantiate a basic module", async (t) => { +test("Instantiate a basic module", (t) => { const ui5Module = new Module(basicModuleInput); t.is(ui5Module.getId(), "application.a.id", "Should return correct ID"); t.is(ui5Module.getVersion(), "1.0.0", "Should return correct version"); @@ -147,7 +147,7 @@ test("Use configuration from absolute configPath", async (t) => { t.is(extensions.length, 0, "Should return no extensions"); }); -test("configuration and configPath must not be provided together", async (t) => { +test("configuration and configPath must not be provided together", (t) => { // 'configuration' as object t.throws(() => { new Module({ diff --git a/packages/project/test/lib/graph/ProjectGraph.js b/packages/project/test/lib/graph/ProjectGraph.js index ba88b154385..3c6d1670dcf 100644 --- a/packages/project/test/lib/graph/ProjectGraph.js +++ b/packages/project/test/lib/graph/ProjectGraph.js @@ -81,7 +81,7 @@ test.afterEach.always((t) => { t.context.sinon.restore(); }); -test("Instantiate a basic project graph", async (t) => { +test("Instantiate a basic project graph", (t) => { const {ProjectGraph} = t.context; t.notThrows(() => { new ProjectGraph({ @@ -90,7 +90,7 @@ test("Instantiate a basic project graph", async (t) => { }, "Should not throw"); }); -test("Instantiate a basic project with missing parameter rootProjectName", async (t) => { +test("Instantiate a basic project with missing parameter rootProjectName", (t) => { const {ProjectGraph} = t.context; const error = t.throws(() => { new ProjectGraph({}); @@ -110,7 +110,7 @@ test("getRoot", async (t) => { t.is(res, project, "Should return correct root project"); }); -test("getRoot: Root not added to graph", async (t) => { +test("getRoot: Root not added to graph", (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "application.a" @@ -187,7 +187,7 @@ test("addProject: Add project with integer-like name", async (t) => { "Should throw with expected error message"); }); -test("getProject: Project is not in graph", async (t) => { +test("getProject: Project is not in graph", (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "my root project" @@ -259,7 +259,7 @@ test("addExtension: Add extension with integer-like name", async (t) => { "Should throw with expected error message"); }); -test("getExtension: Project is not in graph", async (t) => { +test("getExtension: Project is not in graph", (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "my root project" @@ -449,7 +449,7 @@ test("getDependencies: Project without dependencies", async (t) => { "Should return an empty array for project without dependencies"); }); -test("getDependencies: Unknown project", async (t) => { +test("getDependencies: Unknown project", (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "my root project" @@ -1035,7 +1035,7 @@ test("join", async (t) => { t.is(graph1.getExtension("extension.b"), extensionB, "Should return correct joined extension"); }); -test("join: Seals incoming graph", async (t) => { +test("join: Seals incoming graph", (t) => { const {ProjectGraph} = t.context; const graph1 = new ProjectGraph({ rootProjectName: "library.a" @@ -1051,7 +1051,7 @@ test("join: Seals incoming graph", async (t) => { t.is(sealSpy.callCount, 1, "Should call seal() on incoming graph once"); }); -test("join: Incoming graph already sealed", async (t) => { +test("join: Incoming graph already sealed", (t) => { const {ProjectGraph} = t.context; const graph1 = new ProjectGraph({ rootProjectName: "library.a" diff --git a/packages/project/test/lib/graph/ShimCollection.js b/packages/project/test/lib/graph/ShimCollection.js index 989d245e040..1328af08584 100644 --- a/packages/project/test/lib/graph/ShimCollection.js +++ b/packages/project/test/lib/graph/ShimCollection.js @@ -2,7 +2,7 @@ const test = require("ava"); const ShimCollection = require("../../../lib/graph/ShimCollection"); -test("Add shims", async (t) => { +test("Add shims", (t) => { const collection = new ShimCollection(); collection.addProjectShim({ getName: () => "shim-1", diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index 67215b202f8..9f9ded1229c 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -206,6 +206,7 @@ function defineTest(testName, { sinon.stub(Module.prototype, "_readConfigFile") .callsFake(async function() { + // eslint-disable-next-line no-invalid-this switch (this.getPath()) { case path.join(ui5PackagesBaseDir, npmScope, "sap.ui.lib1", frameworkName === "SAPUI5" ? "1.75.1" : "1.75.0"): @@ -275,6 +276,7 @@ function defineTest(testName, { default: throw new Error( "Module#_readConfigFile stub called with unknown project: " + + // eslint-disable-next-line no-invalid-this (this.getId()) ); } diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index 54a93878792..1bfa4b18788 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -449,7 +449,7 @@ test("Project defining a collection shim for itself should be ignored", async (t "library.c" ]); const p = graph.getProject("library.a"); - t.deepEqual(p.getCustomConfiguration(), undefined, + t.is(p.getCustomConfiguration(), undefined, "No configuration from collection project has been applied"); }); diff --git a/packages/project/test/lib/specifications/ComponentProject.js b/packages/project/test/lib/specifications/ComponentProject.js index 61e2e4807eb..8cc554cc37c 100644 --- a/packages/project/test/lib/specifications/ComponentProject.js +++ b/packages/project/test/lib/specifications/ComponentProject.js @@ -144,7 +144,7 @@ test("_resolveMavenPlaceholder: resolves maven placeholder from first POM level" }); const res = await project._resolveMavenPlaceholder("${mvn-pony}"); - t.deepEqual(res, "unicorn", "Resolved placeholder correctly"); + t.is(res, "unicorn", "Resolved placeholder correctly"); }); test("_resolveMavenPlaceholder: resolves maven placeholder from deeper POM level", async (t) => { @@ -158,7 +158,7 @@ test("_resolveMavenPlaceholder: resolves maven placeholder from deeper POM level }); const res = await project._resolveMavenPlaceholder("${mvn-pony.some.id}"); - t.deepEqual(res, "unicorn", "Resolved placeholder correctly"); + t.is(res, "unicorn", "Resolved placeholder correctly"); }); test("_resolveMavenPlaceholder: can't resolve from POM", async (t) => { @@ -176,7 +176,7 @@ test("_resolveMavenPlaceholder: provided value is no placeholder", async (t) => const project = await Specification.create(basicProjectInput); const err = await t.throwsAsync(project._resolveMavenPlaceholder("My ${mvn-pony}")); - t.deepEqual(err.message, + t.is(err.message, `"My \${mvn-pony}" is not a maven placeholder`, "Rejected with correct error message"); }); @@ -190,7 +190,7 @@ test("_getPom: reads correctly", async (t) => { const project = await Specification.create(projectInput); const res = await project._getPom(); - t.deepEqual(res.project.modelVersion, "4.0.0", "pom.xml content has been read"); + t.is(res.project.modelVersion, "4.0.0", "pom.xml content has been read"); }); test.serial("_getPom: fs read error", async (t) => { @@ -227,5 +227,5 @@ test.serial("_getPom: result is cached", async (t) => { res = await project._getPom(); t.deepEqual(res, {pony: "no unicorn"}, "Correct result on second call"); - t.deepEqual(byPathStub.callCount, 1, "getRootReader().byPath got called exactly once (and then cached)"); + t.is(byPathStub.callCount, 1, "getRootReader().byPath got called exactly once (and then cached)"); }); diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 769e9d49555..c6658fadc56 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -196,7 +196,7 @@ test("_getNamespaceFromManifestJson: No 'sap.app' configuration found", async (t sinon.stub(project, "_getManifest").resolves({}); const error = await t.throwsAsync(project._getNamespaceFromManifestJson()); - t.deepEqual(error.message, "No sap.app/id configuration found in manifest.json of project application.a", + t.is(error.message, "No sap.app/id configuration found in manifest.json of project application.a", "Rejected with correct error message"); }); @@ -205,7 +205,7 @@ test("_getNamespaceFromManifestJson: No application id in 'sap.app' configuratio sinon.stub(project, "_getManifest").resolves({"sap.app": {}}); const error = await t.throwsAsync(project._getNamespaceFromManifestJson()); - t.deepEqual(error.message, "No sap.app/id configuration found in manifest.json of project application.a"); + t.is(error.message, "No sap.app/id configuration found in manifest.json of project application.a"); }); test("_getNamespaceFromManifestJson: set namespace to id", async (t) => { @@ -213,7 +213,7 @@ test("_getNamespaceFromManifestJson: set namespace to id", async (t) => { sinon.stub(project, "_getManifest").resolves({"sap.app": {id: "my.id"}}); const namespace = await project._getNamespaceFromManifestJson(); - t.deepEqual(namespace, "my/id", "Returned correct namespace"); + t.is(namespace, "my/id", "Returned correct namespace"); }); test("_getNamespaceFromManifestAppDescVariant: No 'id' property found", async (t) => { @@ -221,7 +221,7 @@ test("_getNamespaceFromManifestAppDescVariant: No 'id' property found", async (t sinon.stub(project, "_getManifest").resolves({}); const error = await t.throwsAsync(project._getNamespaceFromManifestAppDescVariant()); - t.deepEqual(error.message, `No "id" property found in manifest.appdescr_variant of project application.a`, + t.is(error.message, `No "id" property found in manifest.appdescr_variant of project application.a`, "Rejected with correct error message"); }); @@ -230,7 +230,7 @@ test("_getNamespaceFromManifestAppDescVariant: set namespace to id", async (t) = sinon.stub(project, "_getManifest").resolves({id: "my.id"}); const namespace = await project._getNamespaceFromManifestAppDescVariant(); - t.deepEqual(namespace, "my/id", "Returned correct namespace"); + t.is(namespace, "my/id", "Returned correct namespace"); }); test("_getNamespace: Correct fallback to manifest.appdescr_variant if manifest.json is missing", async (t) => { @@ -240,7 +240,7 @@ test("_getNamespace: Correct fallback to manifest.appdescr_variant if manifest.j .onSecondCall().resolves({id: "my.id"}); const namespace = await project._getNamespace(); - t.deepEqual(namespace, "my/id", "Returned correct namespace"); + t.is(namespace, "my/id", "Returned correct namespace"); t.is(_getManifestStub.callCount, 2, "_getManifest called exactly twice"); t.is(_getManifestStub.getCall(0).args[0], "/manifest.json", "_getManifest called for manifest.json first"); t.is(_getManifestStub.getCall(1).args[0], "/manifest.appdescr_variant", @@ -254,7 +254,7 @@ test("_getNamespace: Correct error message if fallback to manifest.appdescr_vari .onSecondCall().rejects(new Error("EPON: Pony Error")); const error = await t.throwsAsync(project._getNamespace()); - t.deepEqual(error.message, "EPON: Pony Error", + t.is(error.message, "EPON: Pony Error", "Rejected with correct error message"); t.is(_getManifestStub.callCount, 2, "_getManifest called exactly twice"); t.is(_getManifestStub.getCall(0).args[0], "/manifest.json", "_getManifest called for manifest.json first"); @@ -286,7 +286,7 @@ test("_getNamespace: No fallback if manifest.json is present but failed to parse .onFirstCall().rejects(new Error("EPON: Pony Error")); const error = await t.throwsAsync(project._getNamespace()); - t.deepEqual(error.message, "EPON: Pony Error", + t.is(error.message, "EPON: Pony Error", "Rejected with correct error message"); t.is(_getManifestStub.callCount, 1, "_getManifest called exactly once"); @@ -297,7 +297,7 @@ test("_getManifest: reads correctly", async (t) => { const project = await Specification.create(basicProjectInput); const content = await project._getManifest("/manifest.json"); - t.deepEqual(content._version, "1.1.0", "manifest.json content has been read"); + t.is(content._version, "1.1.0", "manifest.json content has been read"); }); test("_getManifest: invalid JSON", async (t) => { @@ -318,8 +318,8 @@ test("_getManifest: invalid JSON", async (t) => { "Failed to read /some-manifest.json for project application.a: " + "Unexpected token o in JSON at position 1", "Rejected with correct error message"); - t.deepEqual(byPathStub.callCount, 1, "byPath got called once"); - t.deepEqual(byPathStub.getCall(0).args[0], "/some-manifest.json", "byPath got called with the correct argument"); + t.is(byPathStub.callCount, 1, "byPath got called once"); + t.is(byPathStub.getCall(0).args[0], "/some-manifest.json", "byPath got called with the correct argument"); }); test.serial("_getManifest: File does not exist", async (t) => { @@ -351,7 +351,7 @@ test.serial("_getManifest: result is cached", async (t) => { const content2 = await project._getManifest("/some-other-manifest.json"); t.deepEqual(content2, {pony: "no unicorn"}, "Correct result on second call"); - t.deepEqual(byPathStub.callCount, 2, "byPath got called exactly twice (and then cached)"); + t.is(byPathStub.callCount, 2, "byPath got called exactly twice (and then cached)"); }); test.serial("_getManifest: Caches successes and failures", async (t) => { @@ -388,7 +388,7 @@ test.serial("_getManifest: Caches successes and failures", async (t) => { const content2 = await project._getManifest("/some-other.manifest.json"); t.deepEqual(content2, {pony: "no unicorn"}, "From cache: Correct result on first call"); - t.deepEqual(byPathStub.callCount, 2, + t.is(byPathStub.callCount, 2, "byPath got called exactly twice (and then cached)"); }); @@ -417,7 +417,7 @@ test("namespace: detect namespace from pom.xml via ${project.artifactId}", async myProject.configuration.resources.configuration.paths.webapp = "webapp-project.artifactId"; const project = await Specification.create(myProject); - t.deepEqual(project.getNamespace(), "application/h", + t.is(project.getNamespace(), "application/h", "namespace was successfully set since getJson provides the correct object structure"); }); @@ -426,7 +426,7 @@ test("namespace: detect namespace from pom.xml via ${componentName} from propert myProject.configuration.resources.configuration.paths.webapp = "webapp-properties.componentName"; const project = await Specification.create(myProject); - t.deepEqual(project.getNamespace(), "application/h", + t.is(project.getNamespace(), "application/h", "namespace was successfully set since getJson provides the correct object structure"); }); diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index f3ebe6e2a8c..7d30bccd960 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -218,7 +218,7 @@ test("_configureAndValidatePaths: Source directory does not exist", async (t) => test("_parseConfiguration: Get copyright", async (t) => { const project = await Specification.create(basicProjectInput); - t.deepEqual(project.getCopyright(), "Some fancy copyright", "Copyright was read correctly"); + t.is(project.getCopyright(), "Some fancy copyright", "Copyright was read correctly"); }); test("_parseConfiguration: Copyright already configured", async (t) => { @@ -226,7 +226,7 @@ test("_parseConfiguration: Copyright already configured", async (t) => { projectInput.configuration.metadata.copyright = "My copyright"; const project = await Specification.create(projectInput); - t.deepEqual(project.getCopyright(), "My copyright", "Copyright was not altered"); + t.is(project.getCopyright(), "My copyright", "Copyright was not altered"); }); test.serial("_parseConfiguration: Copyright retrieval fails", async (t) => { @@ -235,7 +235,7 @@ test.serial("_parseConfiguration: Copyright retrieval fails", async (t) => { sinon.stub(Library.prototype, "_getCopyrightFromDotLibrary").resolves(null); const project = await Specification.create(basicProjectInput); - t.deepEqual(project.getCopyright(), undefined, "Copyright was not altered"); + t.is(project.getCopyright(), undefined, "Copyright was not altered"); }); test.serial("_parseConfiguration: Preload excludes from .library", async (t) => { @@ -464,7 +464,7 @@ test("_getManifest: Multiple manifest.json files", async (t) => { }; project._pManifest = null; // Clear cache from instantiation const error = await t.throwsAsync(project._getManifest()); - t.deepEqual(error.message, "Found multiple (2) manifest.json files for project library.d", + t.is(error.message, "Found multiple (2) manifest.json files for project library.d", "Rejected with correct error message"); }); @@ -585,7 +585,7 @@ test("_getDotLibrary: Multiple .library files", async (t) => { }; project._pDotLibrary = null; // Clear cache from instantiation const error = await t.throwsAsync(project._getDotLibrary()); - t.deepEqual(error.message, "Found multiple (2) .library files for project library.d", + t.is(error.message, "Found multiple (2) .library files for project library.d", "Rejected with correct error message"); }); @@ -628,7 +628,7 @@ test("_getLibraryJsPath: Reads correctly", async (t) => { }; project._pLibraryJs = null; // Clear cache from instantiation const filePath = await project._getLibraryJsPath(); - t.deepEqual(filePath, "some path", "Expected library.js path"); + t.is(filePath, "some path", "Expected library.js path"); t.is(byGlobStub.callCount, 1, "byGlob got called once"); t.is(byGlobStub.getCall(0).args[0], "**/library.js", "byGlob got called with the expected arguments"); }); @@ -680,7 +680,7 @@ test("_getLibraryJsPath: Multiple library.js files", async (t) => { }; project._pLibraryJs = null; // Clear cache from instantiation const error = await t.throwsAsync(project._getLibraryJsPath()); - t.deepEqual(error.message, "Found multiple (2) library.js files for project library.d", + t.is(error.message, "Found multiple (2) library.js files for project library.d", "Rejected with correct error message"); }); @@ -697,12 +697,12 @@ test("_getLibraryJsPath: Result is cached", async (t) => { }; project._pLibraryJs = null; // Clear cache from instantiation const filePath1 = await project._getLibraryJsPath(); - t.deepEqual(filePath1, "some path", "Expected library.js path"); + t.is(filePath1, "some path", "Expected library.js path"); t.is(byGlobStub.callCount, 1, "byGlob got called once"); t.is(byGlobStub.getCall(0).args[0], "**/library.js", "byGlob got called with the expected arguments"); const filePath2 = await project._getLibraryJsPath(); - t.deepEqual(filePath2, "some path", "Expected library.js path"); + t.is(filePath2, "some path", "Expected library.js path"); t.is(filePath2, "some path", "Correct path"); t.is(byGlobStub.callCount, 1, "byGlob got called once"); t.is(byGlobStub.getCall(0).args[0], "**/library.js", "byGlob got called with the expected arguments"); @@ -729,7 +729,7 @@ test.serial("_getNamespace: namespace resolution fails", async (t) => { t.deepEqual(error.message, "Failed to detect namespace or namespace is empty for project library.d." + " Check verbose log for details."); - t.deepEqual(loggerVerboseSpy.callCount, 2, "2 calls to log.verbose should be done"); + t.is(loggerVerboseSpy.callCount, 2, "2 calls to log.verbose should be done"); const logVerboseCalls = loggerVerboseSpy.getCalls().map((call) => call.args[0]); t.true(logVerboseCalls.includes( @@ -872,7 +872,7 @@ test.serial("_getNamespace: from manifest.json without sap.app id", async (t) => const loggerSpy = sinon.spy(loggerInstance, "verbose"); const err = await t.throwsAsync(project._getNamespace()); - t.deepEqual(err.message, + t.is(err.message, `Failed to detect namespace or namespace is empty for project library.d. Check verbose log for details.`, "Rejected with correct error message"); t.is(loggerSpy.callCount, 4, "calls to verbose"); @@ -895,7 +895,7 @@ test("_getNamespace: from .library", async (t) => { filePath: "/dot-pony/.library" }); const res = await project._getNamespace(); - t.deepEqual(res, "dot-pony", "Returned correct namespace"); + t.is(res, "dot-pony", "Returned correct namespace"); t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); }); @@ -916,7 +916,7 @@ test("_getNamespace: from .library with ignored manifest.json on lower level", a filePath: "/dot-pony/.library" }); const res = await project._getNamespace(); - t.deepEqual(res, "dot-pony", "Returned correct namespace"); + t.is(res, "dot-pony", "Returned correct namespace"); t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); }); @@ -965,9 +965,9 @@ test("_getNamespace: from .library with maven placeholder", async (t) => { sinon.stub(project, "_resolveMavenPlaceholder").resolves("mvn-unicorn"); const res = await project._getNamespace(); - t.deepEqual(resolveMavenPlaceholderStub.getCall(0).args[0], "${mvn-pony}", + t.is(resolveMavenPlaceholderStub.getCall(0).args[0], "${mvn-pony}", "resolveMavenPlaceholder called with correct argument"); - t.deepEqual(res, "mvn-unicorn", "Returned correct namespace"); + t.is(res, "mvn-unicorn", "Returned correct namespace"); t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); }); @@ -994,7 +994,7 @@ test("_getNamespace: from library.js", async (t) => { sinon.stub(project, "_getDotLibrary").resolves({}); sinon.stub(project, "_getLibraryJsPath").resolves("/my/namespace/library.js"); const res = await project._getNamespace(); - t.deepEqual(res, "my/namespace", "Returned correct namespace"); + t.is(res, "my/namespace", "Returned correct namespace"); t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); }); @@ -1016,7 +1016,7 @@ test.serial("_getNamespace: from project root level library.js", async (t) => { sinon.stub(project, "_getLibraryJsPath").resolves("/library.js"); const err = await t.throwsAsync(project._getNamespace()); - t.deepEqual(err.message, + t.is(err.message, "Failed to detect namespace or namespace is empty for project library.d. Check verbose log for details.", "Rejected with correct error message"); @@ -1034,7 +1034,7 @@ test("_getNamespace: neither manifest nor .library or library.js path contain it sinon.stub(project, "_getDotLibrary").resolves({}); sinon.stub(project, "_getLibraryJsPath").rejects(new Error("Not found bla")); const err = await t.throwsAsync(project._getNamespace()); - t.deepEqual(err.message, + t.is(err.message, "Failed to detect namespace or namespace is empty for project library.d. Check verbose log for details.", "Rejected with correct error message"); }); @@ -1054,10 +1054,10 @@ test("_getNamespace: maven placeholder resolution fails", async (t) => { sinon.stub(project, "_resolveMavenPlaceholder") .rejects(new Error("because squirrel")); const err = await t.throwsAsync(project._getNamespace()); - t.deepEqual(err.message, + t.is(err.message, "Failed to resolve namespace maven placeholder of project library.d: because squirrel", "Rejected with correct error message"); - t.deepEqual(resolveMavenPlaceholderStub.getCall(0).args[0], "${mvn-pony}", + t.is(resolveMavenPlaceholderStub.getCall(0).args[0], "${mvn-pony}", "resolveMavenPlaceholder called with correct argument"); }); diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js index e2f053f0221..4ddadc8ee0c 100644 --- a/packages/project/test/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -38,7 +38,7 @@ test("Correct class", async (t) => { test("getCopyright", async (t) => { const project = await Specification.create(basicProjectInput); - t.deepEqual(project.getCopyright(), "Some fancy copyright", "Copyright was read correctly"); + t.is(project.getCopyright(), "Some fancy copyright", "Copyright was read correctly"); }); test("Access project resources via reader", async (t) => { diff --git a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js index 3c29349efdd..767fae8e10e 100644 --- a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js @@ -37,7 +37,7 @@ test("Correct class", async (t) => { test("getMiddleware", async (t) => { const extension = await Specification.create(clone(basicServerMiddlewareInput)); - t.deepEqual(extension.getMiddleware(), "extension module", + t.is(extension.getMiddleware(), "extension module", "Returned correct module"); }); diff --git a/packages/project/test/lib/specifications/types/extensions/Task.js b/packages/project/test/lib/specifications/types/extensions/Task.js index bc5fa026f84..5d51b6e62fb 100644 --- a/packages/project/test/lib/specifications/types/extensions/Task.js +++ b/packages/project/test/lib/specifications/types/extensions/Task.js @@ -37,7 +37,7 @@ test("Correct class", async (t) => { test("getTask", async (t) => { const extension = await Specification.create(clone(basicTaskInput)); - t.deepEqual(extension.getTask(), "extension module", + t.is(extension.getTask(), "extension module", "Returned correct module"); }); diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index f733be02cb2..b850f23b99d 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -604,7 +604,7 @@ test.serial( `Make sure the version is valid and available in the configured registry.`); }); -test.serial("AbstractResolver: SEMVER_VERSION_REGEXP should be aligned with JSON schema", async (t) => { +test.serial("AbstractResolver: SEMVER_VERSION_REGEXP should be aligned with JSON schema", (t) => { const projectSchema = require("../../../lib/validation/schema/specVersion/2.0/kind/project.json"); const schemaPattern = projectSchema.definitions.framework.properties.version.pattern; t.is(schemaPattern, AbstractResolver._SEMVER_VERSION_REGEXP.source); diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index 8dcaa49f916..f04535270d0 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -79,7 +79,7 @@ test.serial("Installer: fetchPackageVersions", async (t) => { "requestPackagePackument should be called with pkgName"); }); -test.serial("Installer: _getLockPath", async (t) => { +test.serial("Installer: _getLockPath", (t) => { const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -281,13 +281,13 @@ test.serial("Installer: _synchronize", async (t) => { "_mkdirp should be called with expected args"); t.is(t.context.lockStub.callCount, 1, "lock should be called once"); - t.deepEqual(t.context.lockStub.getCall(0).args[0], "/locks/lockfile.lock", + t.is(t.context.lockStub.getCall(0).args[0], "/locks/lockfile.lock", "lock should be called with expected path"); t.deepEqual(t.context.lockStub.getCall(0).args[1], {wait: 10000, stale: 60000, retries: 10}, "lock should be called with expected options"); t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); - t.deepEqual(t.context.unlockStub.getCall(0).args[0], "/locks/lockfile.lock", + t.is(t.context.unlockStub.getCall(0).args[0], "/locks/lockfile.lock", "unlock should be called with expected path"); t.is(callback.callCount, 1, "callback should be called once"); @@ -309,12 +309,11 @@ test.serial("Installer: _synchronize should unlock when callback promise has res sinon.stub(installer, "_getLockPath").returns("/locks/lockfile.lock"); - const callback = sinon.stub().callsFake(() => { + const callback = sinon.stub().callsFake(async () => { t.is(t.context.lockStub.callCount, 1, "lock should have been called when the callback is invoked"); - return Promise.resolve().then(() => { - t.is(t.context.unlockStub.callCount, 0, - "unlock should not be called when the callback did not fully resolve, yet"); - }); + await Promise.resolve(); + t.is(t.context.unlockStub.callCount, 0, + "unlock should not be called when the callback did not fully resolve, yet"); }); await installer._synchronize({ From b3a405c43f2671bcc81625d02b8cceae1f5b445d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 20 Oct 2022 08:59:14 +0000 Subject: [PATCH 0677/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.10 to 3.0.0-alpha.11 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-alpha.11/CHANGELOG.md --- packages/project/package-lock.json | 274 ++--------------------------- packages/project/package.json | 4 +- 2 files changed, 18 insertions(+), 260 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index cfe11c80e18..b8044c1b61f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-alpha.9", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.10", + "@ui5/builder": "^3.0.0-alpha.11", "@ui5/fs": "^3.0.0-alpha.6", "@ui5/logger": "^3.0.1-alpha.2", "ajv": "^6.12.6", @@ -865,16 +865,16 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.10", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.10.tgz", - "integrity": "sha512-O7gbow0sz1/wHLR5csIcJcuxhA2OZCfush19P/dvxbEpVbFUmYL2O/ylE+q8G+fEXfMoryUd0Vu1kA6nQD4nRQ==", + "version": "3.0.0-alpha.11", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.11.tgz", + "integrity": "sha512-lBSahG4bH1ac1/NJxE5YwiooqT5uqEoWXW0//EGFxv+krt010NbiB4sPM6G5qqOwP3t5Yp5/2+ET0vrnyjh80w==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", "@ui5/fs": "^3.0.0-alpha.6", "@ui5/logger": "^3.0.1-alpha.2", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", - "escope": "^3.6.0", + "escope": "^4.0.0", "espree": "^9.3.1", "graceful-fs": "^4.2.9", "jsdoc": "^3.6.7", @@ -2391,15 +2391,6 @@ "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==" }, - "node_modules/d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "dependencies": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, "node_modules/date-time": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/date-time/-/date-time-3.1.0.tgz", @@ -2924,49 +2915,12 @@ "is-arrayish": "^0.2.1" } }, - "node_modules/es5-ext": { - "version": "0.10.61", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.61.tgz", - "integrity": "sha512-yFhIqQAzu2Ca2I4SE2Au3rxVfmohU9Y7wqGR+s7+H7krk26NXhIRAZDgqd6xqjCEFUomDEA3/Bo/7fKmIkW1kA==", - "hasInstallScript": true, - "dependencies": { - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.3", - "next-tick": "^1.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, "node_modules/es6-error": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", "dev": true }, - "node_modules/es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", - "dependencies": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "node_modules/es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A==", - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" - } - }, "node_modules/es6-promise": { "version": "4.2.8", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", @@ -2980,47 +2934,6 @@ "es6-promise": "^4.0.3" } }, - "node_modules/es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha512-7S8YXIcUfPMOr3rqJBVMePAbRsD1nWeSMQ86K/lDI76S3WKXz+KWILvTIPbTroubOkZTGh+b+7/xIIphZXNYbA==", - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" - } - }, - "node_modules/es6-set/node_modules/es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha512-exfuQY8UGtn/N+gL1iKkH8fpNd5sJ760nJq6mmZAHldfxMD5kX07lbQuYlspoXsuknXNv9Fb7y2GsPOnQIbxHg==", - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "node_modules/es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "dependencies": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "node_modules/es6-weak-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", - "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", - "dependencies": { - "d": "1", - "es5-ext": "^0.10.46", - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.1" - } - }, "node_modules/escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -3059,17 +2972,15 @@ } }, "node_modules/escope": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha512-75IUQsusDdalQEW/G/2esa87J7raqdJF+Ca0/Xm5C3Q58Nr4yVYjZGp/P1+2xiEVgXRrA39dpRb8LcshajbqDQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-4.0.0.tgz", + "integrity": "sha512-E36qlD/r6RJHVpPKArgMoMlNJzoRJFH8z/cAZlI9lbc45zB3+S7i9k6e/MNb+7bZQzNEa6r8WKN3BovpeIBwgA==", "dependencies": { - "es6-map": "^0.1.3", - "es6-weak-map": "^2.0.1", "esrecurse": "^4.1.0", "estraverse": "^4.1.1" }, "engines": { - "node": ">=0.4.0" + "node": ">=4.0" } }, "node_modules/eslint": { @@ -3462,34 +3373,12 @@ "node": ">=0.10.0" } }, - "node_modules/event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, "node_modules/events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, - "node_modules/ext": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", - "integrity": "sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==", - "dependencies": { - "type": "^2.5.0" - } - }, - "node_modules/ext/node_modules/type": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.6.0.tgz", - "integrity": "sha512-eiDBDOmkih5pMbo9OqsqPRGMljLodLcwd5XD5JbtNB0o89xZAwynY9EdCDsJU7LtcVCClu9DvM7/0Ep1hYX3EQ==" - }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -5619,11 +5508,6 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "node_modules/next-tick": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", - "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" - }, "node_modules/nise": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.1.tgz", @@ -8432,11 +8316,6 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" }, - "node_modules/type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" - }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -9533,16 +9412,16 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.10", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.10.tgz", - "integrity": "sha512-O7gbow0sz1/wHLR5csIcJcuxhA2OZCfush19P/dvxbEpVbFUmYL2O/ylE+q8G+fEXfMoryUd0Vu1kA6nQD4nRQ==", + "version": "3.0.0-alpha.11", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.11.tgz", + "integrity": "sha512-lBSahG4bH1ac1/NJxE5YwiooqT5uqEoWXW0//EGFxv+krt010NbiB4sPM6G5qqOwP3t5Yp5/2+ET0vrnyjh80w==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", "@ui5/fs": "^3.0.0-alpha.6", "@ui5/logger": "^3.0.1-alpha.2", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", - "escope": "^3.6.0", + "escope": "^4.0.0", "espree": "^9.3.1", "graceful-fs": "^4.2.9", "jsdoc": "^3.6.7", @@ -10720,15 +10599,6 @@ "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==" }, - "d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, "date-time": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/date-time/-/date-time-3.1.0.tgz", @@ -11166,45 +11036,12 @@ "is-arrayish": "^0.2.1" } }, - "es5-ext": { - "version": "0.10.61", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.61.tgz", - "integrity": "sha512-yFhIqQAzu2Ca2I4SE2Au3rxVfmohU9Y7wqGR+s7+H7krk26NXhIRAZDgqd6xqjCEFUomDEA3/Bo/7fKmIkW1kA==", - "requires": { - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.3", - "next-tick": "^1.1.0" - } - }, "es6-error": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", "dev": true }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A==", - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" - } - }, "es6-promise": { "version": "4.2.8", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", @@ -11218,49 +11055,6 @@ "es6-promise": "^4.0.3" } }, - "es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha512-7S8YXIcUfPMOr3rqJBVMePAbRsD1nWeSMQ86K/lDI76S3WKXz+KWILvTIPbTroubOkZTGh+b+7/xIIphZXNYbA==", - "requires": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" - }, - "dependencies": { - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha512-exfuQY8UGtn/N+gL1iKkH8fpNd5sJ760nJq6mmZAHldfxMD5kX07lbQuYlspoXsuknXNv9Fb7y2GsPOnQIbxHg==", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - } - } - }, - "es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "es6-weak-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", - "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", - "requires": { - "d": "1", - "es5-ext": "^0.10.46", - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.1" - } - }, "escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -11284,12 +11078,10 @@ "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" }, "escope": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha512-75IUQsusDdalQEW/G/2esa87J7raqdJF+Ca0/Xm5C3Q58Nr4yVYjZGp/P1+2xiEVgXRrA39dpRb8LcshajbqDQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-4.0.0.tgz", + "integrity": "sha512-E36qlD/r6RJHVpPKArgMoMlNJzoRJFH8z/cAZlI9lbc45zB3+S7i9k6e/MNb+7bZQzNEa6r8WKN3BovpeIBwgA==", "requires": { - "es6-map": "^0.1.3", - "es6-weak-map": "^2.0.1", "esrecurse": "^4.1.0", "estraverse": "^4.1.1" } @@ -11573,36 +11365,12 @@ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, "events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, - "ext": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", - "integrity": "sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==", - "requires": { - "type": "^2.5.0" - }, - "dependencies": { - "type": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.6.0.tgz", - "integrity": "sha512-eiDBDOmkih5pMbo9OqsqPRGMljLodLcwd5XD5JbtNB0o89xZAwynY9EdCDsJU7LtcVCClu9DvM7/0Ep1hYX3EQ==" - } - } - }, "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -13258,11 +13026,6 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "next-tick": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", - "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" - }, "nise": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.1.tgz", @@ -15457,11 +15220,6 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" }, - "type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" - }, "type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 11497d1a477..ac3ca313e3a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -102,7 +102,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.10", + "@ui5/builder": "^3.0.0-alpha.11", "@ui5/fs": "^3.0.0-alpha.6", "@ui5/logger": "^3.0.1-alpha.2", "ajv": "^6.12.6", @@ -131,8 +131,8 @@ "docdash": "^1.2.0", "eslint": "^8.7.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-jsdoc": "^37.6.3", "eslint-plugin-ava": "^13.0.2", + "eslint-plugin-jsdoc": "^37.6.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", From a14c05530059fdf93613777d1f948afd256a5104 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= <1410947+matz3@users.noreply.github.com> Date: Mon, 24 Oct 2022 10:22:13 -0400 Subject: [PATCH 0678/1272] [ui5-project][BREAKING] Transform to native ESM (#472) BREAKING CHANGE: This package has been transformed to native ESM. Therefore it no longer provides a CommonJS export. If your project uses CommonJS, it needs to be converted to ESM or use a dynamic import. For more information see also: - https://sap.github.io/ui5-tooling/updates/migrate-v3/ - https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c Co-authored-by: Florian Vogt Co-authored-by: Merlin Beutlberger Co-authored-by: Yavor Ivanov --- .../project/{.eslintrc.js => .eslintrc.cjs} | 6 +- packages/project/index.js | 72 - packages/project/jsdoc-plugin.cjs | 9 + packages/project/jsdoc-plugin.js | 13 - packages/project/jsdoc.json | 4 +- packages/project/lib/build/ProjectBuilder.js | 72 +- packages/project/lib/build/TaskRunner.js | 91 +- .../project/lib/build/definitions/_utils.js | 47 +- .../lib/build/definitions/application.js | 9 +- .../project/lib/build/definitions/library.js | 13 +- .../project/lib/build/definitions/module.js | 4 +- .../lib/build/definitions/themeLibrary.js | 4 +- .../project/lib/build/helpers/BuildContext.js | 18 +- .../lib/build/helpers/ProjectBuildContext.js | 29 +- .../project/lib/build/helpers/TaskUtil.js | 24 +- .../lib/build/helpers/composeProjectList.js | 12 +- .../lib/build/helpers/composeTaskList.js | 6 +- .../lib/build/helpers/createBuildManifest.js | 20 +- packages/project/lib/generateProjectGraph.js | 182 - packages/project/lib/graph/Module.js | 39 +- packages/project/lib/graph/ProjectGraph.js | 55 +- packages/project/lib/graph/ShimCollection.js | 5 +- packages/project/lib/graph/graph.js | 196 + .../project/lib/graph/helpers/ui5Framework.js | 24 +- .../project/lib/graph/projectGraphBuilder.js | 42 +- .../lib/graph/providers/DependencyTree.js | 24 +- .../providers/NodePackageDependencies.js | 24 +- .../lib/specifications/ComponentProject.js | 55 +- .../project/lib/specifications/Extension.js | 14 +- .../project/lib/specifications/Project.js | 26 +- .../lib/specifications/Specification.js | 42 +- .../lib/specifications/types/Application.js | 27 +- .../lib/specifications/types/Library.js | 33 +- .../lib/specifications/types/Module.js | 31 +- .../lib/specifications/types/ThemeLibrary.js | 36 +- .../types/extensions/ProjectShim.js | 17 +- .../types/extensions/ServerMiddleware.js | 21 +- .../specifications/types/extensions/Task.js | 21 +- .../lib/ui5Framework/AbstractResolver.js | 32 +- .../lib/ui5Framework/Openui5Resolver.js | 18 +- .../lib/ui5Framework/Sapui5Resolver.js | 23 +- .../project/lib/ui5Framework/npm/Installer.js | 26 +- .../project/lib/ui5Framework/npm/Registry.js | 29 +- .../project/lib/validation/ValidationError.js | 11 +- packages/project/lib/validation/validator.js | 85 +- packages/project/package-lock.json | 3227 ++++++----------- packages/project/package.json | 44 +- .../extension.a.esm/lib/extensionModule.js | 1 + .../fixtures/extension.a.esm/package.json | 4 + .../test/fixtures/extension.a/package.json | 3 + .../project/test/lib/build/ProjectBuilder.js | 87 +- packages/project/test/lib/build/TaskRunner.js | 200 +- .../test/lib/build/definitions/application.js | 7 +- .../test/lib/build/definitions/library.js | 7 +- .../test/lib/build/definitions/module.js | 5 +- .../lib/build/definitions/themeLibrary.js | 7 +- .../test/lib/build/definitions/utils.js | 5 +- .../test/lib/build/helpers/BuildContext.js | 37 +- .../lib/build/helpers/ProjectBuildContext.js | 63 +- .../test/lib/build/helpers/TaskUtil.js | 6 +- .../lib/build/helpers/composeProjectList.js | 47 +- .../test/lib/build/helpers/composeTaskList.js | 17 +- .../createBuildManifest.integration.js | 19 +- .../lib/build/helpers/createBuildManifest.js | 44 +- packages/project/test/lib/graph/Module.js | 13 +- .../project/test/lib/graph/ProjectGraph.js | 28 +- .../project/test/lib/graph/ShimCollection.js | 5 +- .../graph.js} | 80 +- .../graphFromObject.js} | 132 +- .../graphFromPackageDependencies.js} | 16 +- .../graphFromStaticFile.js} | 31 +- .../graph/helpers/ui5Framework.integration.js | 220 +- .../test/lib/graph/helpers/ui5Framework.js | 47 +- .../test/lib/graph/projectGraphBuilder.js | 66 +- .../NodePackageDependencies.integration.js | 14 +- packages/project/test/lib/index.js | 15 - packages/project/test/lib/package-exports.js | 45 + .../lib/specifications/ComponentProject.js | 11 +- .../test/lib/specifications/Project.js | 16 +- .../test/lib/specifications/Specification.js | 113 +- .../lib/specifications/types/Application.js | 15 +- .../test/lib/specifications/types/Library.js | 355 +- .../test/lib/specifications/types/Module.js | 15 +- .../lib/specifications/types/ThemeLibrary.js | 15 +- .../types/extensions/ProjectShim.js | 13 +- .../types/extensions/ServerMiddleware.js | 62 +- .../specifications/types/extensions/Task.js | 65 +- .../test/lib/ui5framework/AbstractResolver.js | 22 +- .../test/lib/ui5framework/Openui5Resolver.js | 31 +- .../test/lib/ui5framework/Sapui5Resolver.js | 35 +- .../test/lib/ui5framework/npm/Installer.js | 87 +- .../test/lib/validation/ValidationError.js | 9 +- .../schema/__helper__/customConfiguration.js | 2 +- .../validation/schema/__helper__/extension.js | 4 +- .../validation/schema/__helper__/framework.js | 2 +- .../validation/schema/__helper__/project.js | 6 +- .../schema/specVersion/2.0/kind/extension.js | 12 +- .../2.0/kind/extension/project-shim.js | 14 +- .../2.0/kind/extension/server-middleware.js | 14 +- .../specVersion/2.0/kind/extension/task.js | 14 +- .../schema/specVersion/2.0/kind/project.js | 12 +- .../2.0/kind/project/application.js | 14 +- .../specVersion/2.0/kind/project/library.js | 14 +- .../specVersion/2.0/kind/project/module.js | 14 +- .../2.0/kind/project/theme-library.js | 14 +- .../project/test/lib/validation/schema/ui5.js | 12 +- .../project/test/lib/validation/validator.js | 6 +- packages/project/test/utils/AjvCoverage.js | 15 +- 108 files changed, 3507 insertions(+), 3659 deletions(-) rename packages/project/{.eslintrc.js => .eslintrc.cjs} (95%) delete mode 100644 packages/project/index.js create mode 100644 packages/project/jsdoc-plugin.cjs delete mode 100644 packages/project/jsdoc-plugin.js delete mode 100644 packages/project/lib/generateProjectGraph.js create mode 100644 packages/project/lib/graph/graph.js create mode 100644 packages/project/test/fixtures/extension.a.esm/lib/extensionModule.js create mode 100644 packages/project/test/fixtures/extension.a.esm/package.json create mode 100644 packages/project/test/fixtures/extension.a/package.json rename packages/project/test/lib/{generateProjectGraph.js => graph/graph.js} (73%) rename packages/project/test/lib/{generateProjectGraph.usingObject.js => graph/graphFromObject.js} (90%) rename packages/project/test/lib/{generateProjectGraph.usingNodePackageDependencies.js => graph/graphFromPackageDependencies.js} (64%) rename packages/project/test/lib/{generateProjectGraph.usingStaticFile.js => graph/graphFromStaticFile.js} (75%) delete mode 100644 packages/project/test/lib/index.js create mode 100644 packages/project/test/lib/package-exports.js diff --git a/packages/project/.eslintrc.js b/packages/project/.eslintrc.cjs similarity index 95% rename from packages/project/.eslintrc.js rename to packages/project/.eslintrc.cjs index a802f3d4a27..8e81d42228c 100644 --- a/packages/project/.eslintrc.js +++ b/packages/project/.eslintrc.cjs @@ -1,4 +1,7 @@ module.exports = { + "parserOptions": { + "sourceType": "module", + }, "env": { "node": true, "es2021": true @@ -73,7 +76,8 @@ module.exports = { "settings": { "jsdoc": { "tagNamePreference": { - "return": "returns" + "return": "returns", + "augments": "extends" } } }, diff --git a/packages/project/index.js b/packages/project/index.js deleted file mode 100644 index 7c202f7db44..00000000000 --- a/packages/project/index.js +++ /dev/null @@ -1,72 +0,0 @@ -/** - * @module module:@ui5/project - * @public - */ -module.exports = { - /** - * @type {import('./lib/generateProjectGraph')} - */ - generateProjectGraph: "./lib/generateProjectGraph", - /** - * @public - * @alias module:@ui5/project.ui5Framework - * @namespace - */ - ui5Framework: { - /** - * @type {typeof import('./lib/ui5Framework/Openui5Resolver')} - */ - Openui5Resolver: "./lib/ui5Framework/Openui5Resolver", - /** - * @type {typeof import('./lib/ui5Framework/Sapui5Resolver')} - */ - Sapui5Resolver: "./lib/ui5Framework/Sapui5Resolver" - }, - /** - * @public - * @alias module:@ui5/project.validation - * @namespace - */ - validation: { - /** - * @type {import('./lib/validation/validator')} - */ - validator: "./lib/validation/validator", - /** - * @type {typeof import('./lib/validation/ValidationError')} - */ - ValidationError: "./lib/validation/ValidationError" - }, - /** - * @public - * @alias module:@ui5/project.graph - * @namespace - */ - graph: { - /** - * @type {typeof import('./lib/graph/ProjectGraph')} - */ - ProjectGraph: "./lib/graph/ProjectGraph", - /** - * @type {typeof import('./lib/graph/projectGraphBuilder')} - */ - projectGraphBuilder: "./lib/graph/projectGraphBuilder", - }, -}; - -function exportModules(exportRoot, modulePaths) { - for (const moduleName of Object.keys(modulePaths)) { - if (typeof modulePaths[moduleName] === "object") { - exportRoot[moduleName] = {}; - exportModules(exportRoot[moduleName], modulePaths[moduleName]); - } else { - Object.defineProperty(exportRoot, moduleName, { - get() { - return require(modulePaths[moduleName]); - } - }); - } - } -} - -exportModules(module.exports, JSON.parse(JSON.stringify(module.exports))); diff --git a/packages/project/jsdoc-plugin.cjs b/packages/project/jsdoc-plugin.cjs new file mode 100644 index 00000000000..cd7ef446d0f --- /dev/null +++ b/packages/project/jsdoc-plugin.cjs @@ -0,0 +1,9 @@ +/* + * This plugin fixes unexpected JSDoc behavior that prevents us from using types that start with an at-sign (@). + * JSDoc doesn't see "{@" as a valid type expression, probably as there's also {@link ...}. + */ +exports.handlers = { + jsdocCommentFound: function(e) { + e.comment = e.comment.replace(/{@ui5\//g, "{ @ui5/"); + } +}; diff --git a/packages/project/jsdoc-plugin.js b/packages/project/jsdoc-plugin.js deleted file mode 100644 index bf94fbc6e25..00000000000 --- a/packages/project/jsdoc-plugin.js +++ /dev/null @@ -1,13 +0,0 @@ -/* - * Removes JSDoc comments with TypeScript import() declarations (used in index.js) - */ - -const IMPORT_PATTERN = /{(?:typeof )?import\(["'][^"']*["']\)[ .|}><,)=#\n]/; - -exports.handlers = { - jsdocCommentFound: function(e) { - if (IMPORT_PATTERN.test(e.comment)) { - e.comment = ""; - } - } -}; diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json index 48ca6999532..7a3a8e18880 100644 --- a/packages/project/jsdoc.json +++ b/packages/project/jsdoc.json @@ -3,12 +3,12 @@ "allowUnknownTags": false }, "source": { - "include": ["README.md", "index.js"], + "include": ["README.md"], "includePattern": ".+\\.js$", "excludePattern": "(node_modules(\\\\|/))" }, "plugins": [ - "./jsdoc-plugin" + "./jsdoc-plugin.cjs" ], "opts": { "encoding": "utf8", diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index fe360293734..a64a4e1bdd4 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -1,24 +1,32 @@ -const {promisify} = require("util"); -const rimraf = promisify(require("rimraf")); -const resourceFactory = require("@ui5/fs").resourceFactory; -const log = require("@ui5/logger").getGroupLogger("build"); -const composeProjectList = require("./helpers/composeProjectList"); -const BuildContext = require("./helpers/BuildContext"); - +import {promisify} from "node:util"; +import rimraf from "rimraf"; +const rimrafp = promisify(rimraf); +import * as resourceFactory from "@ui5/fs/resourceFactory"; +import logger from "@ui5/logger"; +const log = logger.getGroupLogger("build"); +import composeProjectList from "./helpers/composeProjectList.js"; +import BuildContext from "./helpers/BuildContext.js"; +import prettyHrtime from "pretty-hrtime"; + +/** + * @public + * @class + * @alias @ui5/project/build/ProjectBuilder + */ class ProjectBuilder { /** * Build Configuration * * @public - * @typedef {object} BuildConfiguration - * @param {boolean} [selfContained=false] Flag to activate self contained build - * @param {boolean} [cssVariables=false] Flag to activate CSS variables generation - * @param {boolean} [jsdoc=false] Flag to activate JSDoc build - * @param {boolean} [createBuildManifest=false] + * @typedef {object} @ui5/project/build/ProjectBuilder~BuildConfiguration + * @property {boolean} [selfContained=false] Flag to activate self contained build + * @property {boolean} [cssVariables=false] Flag to activate CSS variables generation + * @property {boolean} [jsdoc=false] Flag to activate JSDoc build + * @property {boolean} [createBuildManifest=false] * Whether to create a build manifest file for the root project. * This is currently only supported for projects of type 'library' and 'theme-library' - * @param {Array.} [includedTasks=[]] List of tasks to be included - * @param {Array.} [excludedTasks=[]] List of tasks to be excluded. + * @property {Array.} [includedTasks=[]] List of tasks to be included + * @property {Array.} [excludedTasks=[]] List of tasks to be excluded. * If the wildcard '*' is provided, only the included tasks will be executed. */ @@ -26,9 +34,9 @@ class ProjectBuilder { * Executes a project build, including all necessary or requested dependencies * * @public - * @param {module:@ui5/project.graph.ProjectGraph} graph Project graph - * @param {module:@ui5/builder.tasks.taskRepository} taskRepository Task Repository module - * @param {module:@ui5/project.build.ProjectBuilder.BuildConfiguration} [buildConfig] Build configuration + * @param {@ui5/project/graph/ProjectGraph} graph Project graph + * @param {@ui5/builder/tasks/taskRepository} taskRepository Task Repository module + * @param {@ui5/project/build/ProjectBuilder~BuildConfiguration} [buildConfig] Build configuration */ constructor(graph, taskRepository, buildConfig) { if (!graph) { @@ -93,7 +101,7 @@ class ProjectBuilder { return filterProject(projectName); }); - const projectBuildContexts = this._createRequiredBuildContexts(requestedProjects); + const projectBuildContexts = await this._createRequiredBuildContexts(requestedProjects); const cleanupSigHooks = this._registerCleanupSigHooks(); const fsTarget = resourceFactory.createAdapter({ fsBasePath: destPath, @@ -147,7 +155,7 @@ class ProjectBuilder { if (cleanDest) { log.info(`Cleaning target directory...`); - await rimraf(destPath); + await rimrafp(destPath); } const startTime = process.hrtime(); try { @@ -184,17 +192,18 @@ class ProjectBuilder { } } - _createRequiredBuildContexts(requestedProjects) { + async _createRequiredBuildContexts(requestedProjects) { const allProjects = this._graph.getAllProjects(); const requiredProjects = new Set(allProjects.filter((project) => { return requestedProjects.includes(project.getName()); })); const projectBuildContexts = new Map(); - requiredProjects.forEach((project) => { + + for (const project of requiredProjects) { const projectName = project.getName(); log.verbose(`Creating build context for project ${projectName}...`); - const projectBuildContext = this._buildContext.createProjectContext({ + const projectBuildContext = await this._buildContext.createProjectContext({ project, log }); @@ -215,7 +224,8 @@ class ProjectBuilder { requiredProjects.add(depProject); }); } - }); + } + return projectBuildContexts; } @@ -280,7 +290,7 @@ class ProjectBuilder { // Ignore project itself return; } - readers.push(dep.getReader()); + readers.push(await dep.getReader()); }); const dependencies = resourceFactory.createReaderCollection({ @@ -289,7 +299,7 @@ class ProjectBuilder { }); await taskRunner.runTasks({ - workspace: project.getWorkspace(), + workspace: await project.getWorkspace(), dependencies, }); } @@ -298,14 +308,17 @@ class ProjectBuilder { const project = projectBuildContext.getProject(); const taskUtil = projectBuildContext.getTaskUtil(); const buildConfig = this._buildContext.getBuildConfig(); - const resources = await project.getReader({ + const reader = await project.getReader({ // Force buildtime (=namespaced) style when writing with a build manifest style: taskUtil.isRootProject() && buildConfig.createBuildManifest ? "buildtime" : "runtime" - }).byGlob("/**/*"); + }); + const resources = await reader.byGlob("/**/*"); if (taskUtil.isRootProject() && buildConfig.createBuildManifest) { // Create and write a build manifest metadata file - const createBuildManifest = require("./helpers/createBuildManifest"); + const { + default: createBuildManifest + } = await import("./helpers/createBuildManifest.js"); const metadata = await createBuildManifest(project, buildConfig); await target.write(resourceFactory.createResource({ path: `/.ui5/build-manifest.json`, @@ -383,10 +396,9 @@ class ProjectBuilder { * @returns {string} Difference between now and the provided time array as formatted string */ _getElapsedTime(startTime) { - const prettyHrtime = require("pretty-hrtime"); const timeDiff = process.hrtime(startTime); return prettyHrtime(timeDiff); } } -module.exports = ProjectBuilder; +export default ProjectBuilder; diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index a4c9358199a..693fe3cb433 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -1,5 +1,11 @@ -const composeTaskList = require("./helpers/composeTaskList"); +import composeTaskList from "./helpers/composeTaskList.js"; +/** + * TaskRunner + * + * @private + * @hideconstructor + */ class TaskRunner { /** * Constructor @@ -7,14 +13,15 @@ class TaskRunner { * @param {object} parameters * @param {object} parameters.graph * @param {object} parameters.project - * @param {GroupLogger} parameters.parentLogger Logger to use - * @param {module:@ui5/project.build.helpers.TaskUtil} parameters.taskUtil TaskUtil instance - * @param {module:@ui5/builder.tasks.taskRepository} parameters.taskRepository Task repository - * @param {module:@ui5/project.build.ProjectBuilder.BuildConfiguration} parameters.buildConfig + * @param {@ui5/logger/GroupLogger} parameters.parentLogger Logger to use + * @param {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil TaskUtil instance + * @param {@ui5/builder/tasks/taskRepository} parameters.taskRepository Task repository + * @param {@ui5/project/build/ProjectBuilder~BuildConfiguration} parameters.buildConfig * Build configuration + * @param {Map} parameters.standardTasks Standard tasks */ - constructor({graph, project, parentLogger, taskUtil, taskRepository, buildConfig}) { - if (!graph || !project || !parentLogger || !taskUtil || !buildConfig) { + constructor({graph, project, parentLogger, taskUtil, taskRepository, buildConfig, standardTasks}) { + if (!graph || !project || !parentLogger || !taskUtil || !buildConfig || !standardTasks) { throw new Error("One or more mandatory parameters not provided"); } this._project = project; @@ -29,47 +36,66 @@ class TaskRunner { this._tasks = {}; this._taskExecutionOrder = []; + for (const [taskName, params] of standardTasks) { + this._addTask(taskName, params); + } + + this._addCustomTasks({ + graph, + project, + taskUtil + }); + } + + /** + * Creates a new TaskRunner Instance + * + * @param {object} parameters + * @param {object} parameters.graph + * @param {object} parameters.project + * @param {@ui5/logger/GroupLogger} parameters.parentLogger Logger to use + * @param {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil TaskUtil instance + * @param {@ui5/builder/tasks/taskRepository} parameters.taskRepository Task repository + * @param {@ui5/project/build/ProjectBuilder~BuildConfiguration} parameters.buildConfig + * Build configuration + */ + static async create({graph, project, parentLogger, taskUtil, taskRepository, buildConfig}) { let buildDefinition; + switch (project.getType()) { case "application": - buildDefinition = require("./definitions/application"); + buildDefinition = "./definitions/application.js"; break; case "library": - buildDefinition = require("./definitions/library"); + buildDefinition = "./definitions/library.js"; break; case "module": - buildDefinition = require("./definitions/module"); + buildDefinition = "./definitions/module.js"; break; case "theme-library": - buildDefinition = require("./definitions/themeLibrary"); + buildDefinition = "./definitions/themeLibrary.js"; break; default: throw new Error(`Unknown project type ${project.getType()}`); } - const standardTasks = buildDefinition({ + const {default: getStandardTasks} = await import(buildDefinition); + + const standardTasks = getStandardTasks({ project, taskUtil, getTask: taskRepository.getTask }); - for (const [taskName, params] of standardTasks) { - this._addTask(taskName, params); - } - - this._addCustomTasks({ - graph, - project, - taskUtil - }); + return new TaskRunner({graph, project, parentLogger, taskUtil, taskRepository, buildConfig, standardTasks}); } /** * Takes a list of tasks which should be executed from the available task list of the current builder * * @param {object} buildParams - * @param {module:@ui5/fs.DuplexCollection} buildParams.workspace Workspace of the current project - * @param {module:@ui5/fs.ReaderCollection} buildParams.dependencies Dependencies reader collection + * @param {@ui5/fs/DuplexCollection} buildParams.workspace Workspace of the current project + * @param {@ui5/fs/ReaderCollection} buildParams.dependencies Dependencies reader collection * @returns {Promise} Returns promise chain with tasks */ async runTasks(buildParams) { @@ -181,7 +207,7 @@ class TaskRunner { } if (!taskFunction) { - taskFunction = this._taskRepository.getTask(taskName).task; + taskFunction = (await this._taskRepository.getTask(taskName)).task; } return taskFunction(params); }; @@ -220,11 +246,8 @@ class TaskRunner { throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + `defines neither a "beforeTask" nor an "afterTask" parameter. One must be defined.`); } - let standardTask; - try { - standardTask = this._taskRepository.getTask(taskDef.name); - } catch (e) {/* We expect this to fail with an "Unknown Task" error */} - if (standardTask) { + const standardTasks = this._taskRepository.getAllTaskNames(); + if (standardTasks.includes(taskDef.name)) { throw new Error( `Custom task configuration of project ${project.getName()} ` + `references standard task ${taskDef.name}. Only custom tasks must be provided here.`); @@ -253,11 +276,11 @@ class TaskRunner { /* Custom Task Interface Parameters: {Object} parameters Parameters - {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files - {module:@ui5/fs.AbstractReader} parameters.dependencies + {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files + {@ui5/fs/AbstractReader} parameters.dependencies Reader or Collection to read dependency files {Object} parameters.taskUtil Specification Version dependent interface to a - [TaskUtil]{@link module:@ui5/project.build.helpers.TaskUtil} instance + [TaskUtil]{@link @ui5/project/build/helpers/TaskUtil} instance {Object} parameters.options Options {string} parameters.options.projectName Project name {string} [parameters.options.projectNamespace] Project namespace if available @@ -288,7 +311,7 @@ class TaskRunner { if (taskUtilInterface) { params.taskUtil = taskUtilInterface; } - return task.getTask()(params); + return (await task.getTask())(params); }; this._tasks[newTaskName] = { @@ -336,4 +359,4 @@ class TaskRunner { } } -module.exports = TaskRunner; +export default TaskRunner; diff --git a/packages/project/lib/build/definitions/_utils.js b/packages/project/lib/build/definitions/_utils.js index d1fdc729a7d..3c12953cb7c 100644 --- a/packages/project/lib/build/definitions/_utils.js +++ b/packages/project/lib/build/definitions/_utils.js @@ -1,24 +1,23 @@ -module.exports = { - /** - * Appends the list of 'excludes' to the list of 'patterns'. To harmonize both lists, the 'excludes' - * are negated and the 'patternPrefix' is added to make them absolute. - * - * @private - * @param {string[]} patterns - * List of absolute default patterns. - * @param {string[]} excludes - * List of relative patterns to be excluded. Excludes with a leading "!" are meant to be re-included. - * @param {string} patternPrefix - * Prefix to be added to the excludes to make them absolute. The prefix must have a leading and a - * trailing "/". - */ - enhancePatternWithExcludes(patterns, excludes, patternPrefix) { - excludes.forEach((exclude) => { - if (exclude.startsWith("!")) { - patterns.push(`${patternPrefix}${exclude.slice(1)}`); - } else { - patterns.push(`!${patternPrefix}${exclude}`); - } - }); - } -}; + +/** + * Appends the list of 'excludes' to the list of 'patterns'. To harmonize both lists, the 'excludes' + * are negated and the 'patternPrefix' is added to make them absolute. + * + * @private + * @param {string[]} patterns + * List of absolute default patterns. + * @param {string[]} excludes + * List of relative patterns to be excluded. Excludes with a leading "!" are meant to be re-included. + * @param {string} patternPrefix + * Prefix to be added to the excludes to make them absolute. The prefix must have a leading and a + * trailing "/". + */ +export function enhancePatternWithExcludes(patterns, excludes, patternPrefix) { + excludes.forEach((exclude) => { + if (exclude.startsWith("!")) { + patterns.push(`${patternPrefix}${exclude.slice(1)}`); + } else { + patterns.push(`!${patternPrefix}${exclude}`); + } + }); +} diff --git a/packages/project/lib/build/definitions/application.js b/packages/project/lib/build/definitions/application.js index 2db64fa6b50..5cf16fb12be 100644 --- a/packages/project/lib/build/definitions/application.js +++ b/packages/project/lib/build/definitions/application.js @@ -1,4 +1,4 @@ -const {enhancePatternWithExcludes} = require("./_utils"); +import {enhancePatternWithExcludes} from "./_utils.js"; /** * Get tasks and their configuration for a given application project @@ -9,7 +9,7 @@ const {enhancePatternWithExcludes} = require("./_utils"); * @param {object} parameters.taskUtil * @param {Function} parameters.getTask */ -module.exports = function({project, taskUtil, getTask}) { +export default function({project, taskUtil, getTask}) { const tasks = new Map(); tasks.set("escapeNonAsciiCharacters", { options: { @@ -84,9 +84,10 @@ module.exports = function({project, taskUtil, getTask}) { tasks.set("generateBundle", { requiresDependencies: true, taskFunction: async ({workspace, dependencies, taskUtil, options}) => { + const generateBundleTask = await getTask("generateBundle"); return bundles.reduce(function(sequence, bundle) { return sequence.then(function() { - return getTask("generateBundle").task({ + return generateBundleTask.task({ workspace, dependencies, taskUtil, @@ -120,4 +121,4 @@ module.exports = function({project, taskUtil, getTask}) { tasks.set("generateResourcesJson", {requiresDependencies: true}); return tasks; -}; +} diff --git a/packages/project/lib/build/definitions/library.js b/packages/project/lib/build/definitions/library.js index edd522f1fdf..359404a3ae4 100644 --- a/packages/project/lib/build/definitions/library.js +++ b/packages/project/lib/build/definitions/library.js @@ -1,4 +1,4 @@ -const {enhancePatternWithExcludes} = require("./_utils"); +import {enhancePatternWithExcludes} from "./_utils.js"; /** * Get tasks and their configuration for a given application project @@ -9,7 +9,7 @@ const {enhancePatternWithExcludes} = require("./_utils"); * @param {object} parameters.taskUtil * @param {Function} parameters.getTask */ -module.exports = function({project, taskUtil, getTask}) { +export default function({project, taskUtil, getTask}) { const tasks = new Map(); tasks.set("escapeNonAsciiCharacters", { options: { @@ -49,8 +49,8 @@ module.exports = function({project, taskUtil, getTask}) { return `!/resources/${pattern}`; })); } - - return getTask("generateJsdoc").task({ + const generateJsdocTask = await getTask("generateJsdoc"); + return generateJsdocTask.task({ workspace, dependencies, taskUtil, @@ -117,9 +117,10 @@ module.exports = function({project, taskUtil, getTask}) { tasks.set("generateBundle", { requiresDependencies: true, taskFunction: async ({workspace, dependencies, taskUtil, options}) => { + const generateBundleTask = await getTask("generateBundle"); return bundles.reduce(function(sequence, bundle) { return sequence.then(function() { - return getTask("generateBundle").task({ + return generateBundleTask.task({ workspace, dependencies, taskUtil, @@ -158,4 +159,4 @@ module.exports = function({project, taskUtil, getTask}) { }); return tasks; -}; +} diff --git a/packages/project/lib/build/definitions/module.js b/packages/project/lib/build/definitions/module.js index 769d766fc14..0db873673dc 100644 --- a/packages/project/lib/build/definitions/module.js +++ b/packages/project/lib/build/definitions/module.js @@ -7,6 +7,6 @@ * @param {object} parameters.taskUtil * @param {Function} parameters.getTask */ -module.exports = function({project, taskUtil, getTask}) { +export default function({project, taskUtil, getTask}) { return new Map(); -}; +} diff --git a/packages/project/lib/build/definitions/themeLibrary.js b/packages/project/lib/build/definitions/themeLibrary.js index 89af5261eb5..20ac207e6de 100644 --- a/packages/project/lib/build/definitions/themeLibrary.js +++ b/packages/project/lib/build/definitions/themeLibrary.js @@ -8,7 +8,7 @@ * @param {object} parameters.taskUtil * @param {Function} parameters.getTask */ -module.exports = function({project, taskUtil, getTask}) { +export default function({project, taskUtil, getTask}) { const tasks = new Map(); tasks.set("replaceCopyright", { options: { @@ -44,4 +44,4 @@ module.exports = function({project, taskUtil, getTask}) { tasks.set("generateResourcesJson", {requiresDependencies: true}); return tasks; -}; +} diff --git a/packages/project/lib/build/helpers/BuildContext.js b/packages/project/lib/build/helpers/BuildContext.js index e6707c3221f..7e31bdec2b4 100644 --- a/packages/project/lib/build/helpers/BuildContext.js +++ b/packages/project/lib/build/helpers/BuildContext.js @@ -1,10 +1,11 @@ -const ProjectBuildContext = require("./ProjectBuildContext"); +import ProjectBuildContext from "./ProjectBuildContext.js"; +import TaskRunner from "../TaskRunner.js"; /** * Context of a build process * * @private - * @memberof module:@ui5/project.build.helpers + * @memberof @ui5/project/build/helpers */ class BuildContext { constructor(graph, taskRepository, { // buildConfig @@ -65,12 +66,21 @@ class BuildContext { return this._graph; } - createProjectContext({project, log}) { + async createProjectContext({project, log}) { const projectBuildContext = new ProjectBuildContext({ buildContext: this, project, log }); + const taskRunner = await TaskRunner.create({ + graph: this.getGraph(), + project, + taskUtil: projectBuildContext.getTaskUtil(), + taskRepository: this.getTaskRepository(), + parentLogger: log, + buildConfig: this.getBuildConfig() + }); + projectBuildContext.setTaskRunner(taskRunner); this._projectBuildContexts.push(projectBuildContext); return projectBuildContext; } @@ -82,4 +92,4 @@ class BuildContext { } } -module.exports = BuildContext; +export default BuildContext; diff --git a/packages/project/lib/build/helpers/ProjectBuildContext.js b/packages/project/lib/build/helpers/ProjectBuildContext.js index 907ae68716a..c665d40e3b7 100644 --- a/packages/project/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/lib/build/helpers/ProjectBuildContext.js @@ -1,12 +1,12 @@ -const ResourceTagCollection = require("@ui5/fs").ResourceTagCollection; -const TaskUtil = require("./TaskUtil"); +import ResourceTagCollection from "@ui5/fs/internal/ResourceTagCollection"; +import TaskUtil from "./TaskUtil.js"; /** * Build context of a single project. Always part of an overall - * [Build Context]{@link module:@ui5/project.build.helpers.BuildContext} + * [Build Context]{@link @ui5/project/build/helpers/BuildContext} * * @private - * @memberof module:@ui5/project.build.helpers + * @memberof @ui5/project/build/helpers */ class ProjectBuildContext { constructor({buildContext, log, project}) { @@ -54,7 +54,7 @@ class ProjectBuildContext { * Retrieve a single project from the dependency graph * * @param {string} [projectName] Name of the project to retrieve. Defaults to the project currently being built - * @returns {module:@ui5/project.specifications.Project|undefined} + * @returns {@ui5/project/specifications/Project|undefined} * project instance or undefined if the project is unknown to the graph */ getProject(projectName) { @@ -93,21 +93,12 @@ class ProjectBuildContext { } getTaskRunner() { - if (this._taskRunner) { - return this._taskRunner; - } - - const TaskRunner = require("../TaskRunner"); - this._taskRunner = new TaskRunner({ - graph: this._buildContext.getGraph(), - project: this._project, - taskUtil: this.getTaskUtil(), - taskRepository: this._buildContext.getTaskRepository(), - parentLogger: this._log, - buildConfig: this._buildContext.getBuildConfig() - }); return this._taskRunner; } + + setTaskRunner(taskRunner) { + this._taskRunner = taskRunner; + } } -module.exports = ProjectBuildContext; +export default ProjectBuildContext; diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index 823e3669942..c0474702d62 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -8,7 +8,9 @@ * version defined for the extension. * * @public - * @memberof module:@ui5/project.build.helpers + * @class + * @alias @ui5/project/build/helpers/TaskUtil + * @hideconstructor */ class TaskUtil { /** @@ -17,7 +19,7 @@ class TaskUtil { * for details. * * @public - * @typedef {object} module:@ui5/project.build.helpers.TaskUtil~StandardBuildTags + * @typedef {object} @ui5/project/build/helpers/TaskUtil~StandardBuildTags * @property {string} OmitFromBuildResult * Setting this tag to true will prevent the resource from being written to the build target directory * @property {string} IsBundle @@ -31,17 +33,17 @@ class TaskUtil { */ /** - * Since @ui5/project.build.helpers.ProjectBuildContext is a private class, TaskUtil must not be + * Since @ui5/project/build/helpers/ProjectBuildContext is a private class, TaskUtil must not be * instantiated by modules other than @ui5/project itself. * * @param {object} parameters - * @param {module:@ui5/project.build.helpers.ProjectBuildContext} parameters.projectBuildContext ProjectBuildContext + * @param {@ui5/project/build/helpers/ProjectBuildContext} parameters.projectBuildContext ProjectBuildContext * @public */ constructor({projectBuildContext}) { this._projectBuildContext = projectBuildContext; /** - * @member {module:@ui5/project.build.helpers.TaskUtil~StandardBuildTags} + * @member {@ui5/project/build/helpers/TaskUtil~StandardBuildTags} * @public */ this.STANDARD_TAGS = Object.freeze({ @@ -67,9 +69,9 @@ class TaskUtil { * This method is only available to custom task extensions defining * Specification Version 2.2 and above. * - * @param {module:@ui5/fs.Resource} resource Resource-instance the tag should be stored for + * @param {@ui5/fs/Resource} resource Resource-instance the tag should be stored for * @param {string} tag Name of the tag. Currently only the - * [STANDARD_TAGS]{@link module:@ui5/project.build.helpers.TaskUtil#STANDARD_TAGS} are allowed + * [STANDARD_TAGS]{@link @ui5/project/build/helpers/TaskUtil#STANDARD_TAGS} are allowed * @param {string|boolean|integer} [value=true] Tag value. Must be primitive * @public */ @@ -90,7 +92,7 @@ class TaskUtil { * This method is only available to custom task extensions defining * Specification Version 2.2 and above. * - * @param {module:@ui5/fs.Resource} resource Resource-instance the tag should be retrieved for + * @param {@ui5/fs/Resource} resource Resource-instance the tag should be retrieved for * @param {string} tag Name of the tag * @returns {string|boolean|integer|undefined} Tag value for the given resource. * undefined if no value is available @@ -113,7 +115,7 @@ class TaskUtil { * This method is only available to custom task extensions defining * Specification Version 2.2 and above. * - * @param {module:@ui5/fs.Resource} resource Resource-instance the tag should be cleared for + * @param {@ui5/fs/Resource} resource Resource-instance the tag should be cleared for * @param {string} tag Tag * @public */ @@ -176,7 +178,7 @@ class TaskUtil { * Specification Version 3.0 and above. * * @param {string} projectName Name of the project to retrieve - * @returns {module:@ui5/project.specifications.Project|undefined} + * @returns {@ui5/project/specifications/Project|undefined} * project instance or undefined if the project is unknown to the graph * @public */ @@ -234,4 +236,4 @@ function bindFunctions(sourceObject, targetObject, funcNames) { }); } -module.exports = TaskUtil; +export default TaskUtil; diff --git a/packages/project/lib/build/helpers/composeProjectList.js b/packages/project/lib/build/helpers/composeProjectList.js index 41bb4bf1337..594dc4c362c 100644 --- a/packages/project/lib/build/helpers/composeProjectList.js +++ b/packages/project/lib/build/helpers/composeProjectList.js @@ -1,10 +1,11 @@ -const log = require("@ui5/logger").getLogger("build:helpers:composeProjectList"); +import logger from "@ui5/logger"; +const log = logger.getLogger("build:helpers:composeProjectList"); /** * Creates an object containing the flattened project dependency tree. Each dependency is defined as an object key while * its value is an array of all of its transitive dependencies. * - * @param {module:@ui5/project.graph.ProjectGraph} graph + * @param {@ui5/project/graph/ProjectGraph} graph * @returns {Promise>} A promise resolving to an object with dependency names as * key and each with an array of its transitive dependencies as value */ @@ -48,7 +49,7 @@ async function getFlattenedDependencyTree(graph) { * * * @param {object} graph Project tree as generated by the - * [@ui5/project.normalizer]{@link module:@ui5/project.normalizer} + * [@ui5/project/normalizer]{@link @ui5/project/normalizer} * @param {object} parameters Parameters * @param {boolean} parameters.includeAllDependencies Whether all dependencies should be part of the build result * This has the lowest priority and basically includes all remaining (not excluded) projects as include @@ -189,5 +190,6 @@ async function createDependencyLists(graph, { }; } -module.exports = createDependencyLists; -module.exports._getFlattenedDependencyTree = getFlattenedDependencyTree; +createDependencyLists._getFlattenedDependencyTree = getFlattenedDependencyTree; + +export default createDependencyLists; diff --git a/packages/project/lib/build/helpers/composeTaskList.js b/packages/project/lib/build/helpers/composeTaskList.js index a8d980086a5..ef46fe49595 100644 --- a/packages/project/lib/build/helpers/composeTaskList.js +++ b/packages/project/lib/build/helpers/composeTaskList.js @@ -7,11 +7,11 @@ * * @private * @param {string[]} allTasks - * @param {module:@ui5/project.build.ProjectBuilder.BuildConfiguration} buildConfig + * @param {@ui5/project/build/ProjectBuilder~BuildConfiguration} buildConfig * Build configuration * @returns {Array} List of tasks to be executed */ -module.exports = function composeTaskList(allTasks, {selfContained, jsdoc, includedTasks, excludedTasks}) { +export default function composeTaskList(allTasks, {selfContained, jsdoc, includedTasks, excludedTasks}) { let selectedTasks = allTasks.reduce((list, key) => { list[key] = true; return list; @@ -94,4 +94,4 @@ module.exports = function composeTaskList(allTasks, {selfContained, jsdoc, inclu selectedTasks = Object.keys(selectedTasks).filter((task) => selectedTasks[task]); return selectedTasks; -}; +} diff --git a/packages/project/lib/build/helpers/createBuildManifest.js b/packages/project/lib/build/helpers/createBuildManifest.js index 6dd97a9951c..338deeebadd 100644 --- a/packages/project/lib/build/helpers/createBuildManifest.js +++ b/packages/project/lib/build/helpers/createBuildManifest.js @@ -1,9 +1,13 @@ -function getVersion(pkg) { - const packageInfo = require(`${pkg}/package.json`); - return packageInfo.version; +import {createRequire} from "node:module"; + +// Using CommonsJS require as importing json files causes an ExperimentalWarning +const require = createRequire(import.meta.url); + +async function getVersion(pkg) { + return require(`${pkg}/package.json`).version; } -module.exports = async function(project, buildConfig) { +export default async function(project, buildConfig) { const projectName = project.getName(); const type = project.getType(); @@ -40,9 +44,9 @@ module.exports = async function(project, buildConfig) { manifestVersion: "0.1", timestamp: new Date().toISOString(), versions: { - builderVersion: getVersion("@ui5/builder"), - projectVersion: getVersion("../../../"), - fsVersion: getVersion("@ui5/fs"), + builderVersion: await getVersion("@ui5/builder"), + projectVersion: await getVersion("@ui5/project"), + fsVersion: await getVersion("@ui5/fs"), }, buildConfig, version: project.getVersion(), @@ -52,4 +56,4 @@ module.exports = async function(project, buildConfig) { }; return metadata; -}; +} diff --git a/packages/project/lib/generateProjectGraph.js b/packages/project/lib/generateProjectGraph.js deleted file mode 100644 index 3dda96dd2bc..00000000000 --- a/packages/project/lib/generateProjectGraph.js +++ /dev/null @@ -1,182 +0,0 @@ -const path = require("path"); -const projectGraphBuilder = require("./graph/projectGraphBuilder"); -const ui5Framework = require("./graph/helpers/ui5Framework"); -const log = require("@ui5/logger").getLogger("generateProjectGraph"); - -function resolveProjectPaths(cwd, project) { - if (!project.path) { - throw new Error(`Missing or empty attribute 'path' for project ${project.id}`); - } - project.path = path.resolve(cwd, project.path); - - if (!project.id) { - throw new Error(`Missing or empty attribute 'id' for project with path ${project.path}`); - } - if (!project.version) { - throw new Error(`Missing or empty attribute 'version' for project ${project.id}`); - } - - if (project.dependencies) { - project.dependencies.forEach((project) => resolveProjectPaths(cwd, project)); - } - return project; -} - -/** - * Helper module to create a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph} - * from a directory - * - * @public - * @alias module:@ui5/project.generateProjectGraph - * @param {TreeNode} tree Dependency tree as returned by a translator - * @returns {module:@ui5/project.graph.ProjectGraph} A new project graph instance - */ -const generateProjectGraph = { - /** - * Generates a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph} by resolving - * dependencies from package.json files and configuring projects from ui5.yaml files - * - * @public - * @param {object} [options] - * @param {string} [options.cwd=process.cwd()] Directory to start searching for the root module - * @param {object} [options.rootConfiguration] - * Configuration object to use for the root module instead of reading from a configuration file - * @param {string} [options.rootConfigPath] - * Configuration file to use for the root module instead the default ui5.yaml - * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project - * @param {string} [options.resolveFrameworkDependencies=true] - * Whether framework dependencies should be added to the graph - * @returns {Promise} Promise resolving to a Project Graph instance - */ - usingNodePackageDependencies: async function({ - cwd, rootConfiguration, rootConfigPath, - versionOverride, resolveFrameworkDependencies = true - }) { - log.verbose(`Creating project graph using npm provider...`); - const NpmProvider = require("./graph/providers/NodePackageDependencies"); - - const provider = new NpmProvider({ - cwd: cwd ? path.resolve(cwd) : process.cwd(), - rootConfiguration, - rootConfigPath - }); - - const projectGraph = await projectGraphBuilder(provider); - - if (resolveFrameworkDependencies) { - await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); - } - - return projectGraph; - }, - - /** - * Generates a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph} from a - * YAML file following the structure of the - * [@ui5/project.graph.projectGraphFromTree]{@link module:@ui5/project.graph.projectGraphFromTree} API - * - * @public - * @param {object} options - * @param {object} [options.filePath=projectDependencies.yaml] Path to the dependency configuration file - * @param {string} [options.cwd=process.cwd()] Directory to resolve relative paths to - * @param {object} [options.rootConfiguration] - * Configuration object to use for the root module instead of reading from a configuration file - * @param {string} [options.rootConfigPath] - * Configuration file to use for the root module instead the default ui5.yaml - * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project - * @param {string} [options.resolveFrameworkDependencies=true] - * Whether framework dependencies should be added to the graph - * @returns {Promise} Promise resolving to a Project Graph instance - */ - usingStaticFile: async function({ - cwd, filePath = "projectDependencies.yaml", - rootConfiguration, rootConfigPath, - versionOverride, resolveFrameworkDependencies = true - }) { - log.verbose(`Creating project graph using static file...`); - - const dependencyTree = await generateProjectGraph - ._readDependencyConfigFile(cwd ? path.resolve(cwd) : process.cwd(), filePath); - - const DependencyTreeProvider = require("./graph/providers/DependencyTree"); - const provider = new DependencyTreeProvider({ - dependencyTree, - rootConfiguration, - rootConfigPath - }); - - const projectGraph = await projectGraphBuilder(provider); - - if (resolveFrameworkDependencies) { - await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); - } - - return projectGraph; - }, - - /** - * Generates a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph} from a - * YAML file following the structure of the - * [@ui5/project.graph.projectGraphFromTree]{@link module:@ui5/project.graph.projectGraphFromTree} API - * - * @public - * @param {object} options - * @param {module:@ui5/project.graph.providers.DependencyTree.TreeNode} options.dependencyTree - * @param {object} [options.rootConfiguration] - * Configuration object to use for the root module instead of reading from a configuration file - * @param {string} [options.rootConfigPath] - * Configuration file to use for the root module instead the default ui5.yaml - * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project - * @param {string} [options.resolveFrameworkDependencies=true] - * Whether framework dependencies should be added to the graph - * @returns {Promise} Promise resolving to a Project Graph instance - */ - usingObject: async function({ - dependencyTree, - rootConfiguration, rootConfigPath, - versionOverride, resolveFrameworkDependencies = true - }) { - log.verbose(`Creating project graph using object...`); - - const DependencyTreeProvider = require("./graph/providers/DependencyTree"); - const dependencyTreeProvider = new DependencyTreeProvider({ - dependencyTree, - rootConfiguration, - rootConfigPath - }); - - const projectGraph = await projectGraphBuilder(dependencyTreeProvider); - - if (resolveFrameworkDependencies) { - await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); - } - - return projectGraph; - }, - - async _readDependencyConfigFile(cwd, filePath) { - const fs = require("graceful-fs"); - const {promisify} = require("util"); - const readFile = promisify(fs.readFile); - const parseYaml = require("js-yaml").load; - - if (!path.isAbsolute(filePath)) { - filePath = path.join(cwd, filePath); - } - - let dependencyTree; - try { - const contents = await readFile(filePath, {encoding: "utf-8"}); - dependencyTree = parseYaml(contents, { - filename: filePath - }); - resolveProjectPaths(cwd, dependencyTree); - } catch (err) { - throw new Error( - `Failed to load dependency tree configuration from path ${filePath}: ${err.message}`); - } - return dependencyTree; - } -}; - -module.exports = generateProjectGraph; diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js index 8f80fc36b1b..5031817ad62 100644 --- a/packages/project/lib/graph/Module.js +++ b/packages/project/lib/graph/Module.js @@ -1,13 +1,15 @@ -const fs = require("graceful-fs"); -const path = require("path"); -const {promisify} = require("util"); +import fs from "graceful-fs"; +import path from "node:path"; +import {promisify} from "node:util"; const readFile = promisify(fs.readFile); -const jsyaml = require("js-yaml"); -const resourceFactory = require("@ui5/fs").resourceFactory; -const Specification = require("../specifications/Specification"); -const {validate} = require("../validation/validator"); +import jsyaml from "js-yaml"; +import {createReader} from "@ui5/fs/resourceFactory"; +import Specification from "../specifications/Specification.js"; +import {validate} from "../validation/validator.js"; -const log = require("@ui5/logger").getLogger("graph:Module"); +import logger from "@ui5/logger"; + +const log = logger.getLogger("graph:Module"); const DEFAULT_CONFIG_PATH = "ui5.yaml"; const SAP_THEMES_NS_EXEMPTIONS = ["themelib_sap_fiori_3", "themelib_sap_bluecrystal", "themelib_sap_belize"]; @@ -18,10 +20,11 @@ function clone(obj) { /** * Raw representation of a UI5 Project. A module can contain zero to one projects and n extensions. * This class is intended for private use by the - * [@ui5/project.graph.projectGraphFromTree]{@link module:@ui5/project.graph.projectGraphFromTree} module + * [@ui5/project/graph/ProjectGraphFromTree]{@link @ui5/project/graph/ProjectGraphFromTree} module * * @private - * @memberof module:@ui5/project.graph + * @class + * @alias @ui5/project/graph/Module */ class Module { /** @@ -35,7 +38,7 @@ class Module { * @param {object|object[]} [parameters.configuration] * Configuration object or array of objects to use. If supplied, no configuration files * will be read and the `configPath` option must not be provided. - * @param {@ui5/project.graph.ShimCollection} [parameters.shimCollection] + * @param {@ui5/project/graph.ShimCollection} [parameters.shimCollection] * Collection of shims that might be relevant for this module */ constructor({id, version, modulePath, configPath, configuration = [], shimCollection}) { @@ -95,17 +98,17 @@ class Module { /** * Specifications found in the module * - * @public - * @typedef {object} SpecificationsResult - * @property {@ui5/project.specifications.Project|undefined} Project found in the module (if one is found) - * @property {@ui5/project.specifications.Extension[]} Array of extensions found in the module + * @private + * @typedef {object} @ui5/project/graph/Module~SpecificationsResult + * @property {@ui5/project/specifications/Project|undefined} Project found in the module (if one is found) + * @property {@ui5/project/specifications/Extension[]} Array of extensions found in the module * */ /** * Get any available project and extensions of the module * - * @returns {SpecificationsResult} Project and extensions found in the module + * @returns {@ui5/project/graph/Module~SpecificationsResult} Project and extensions found in the module */ async getSpecifications() { if (this._pGetSpecifications) { @@ -403,7 +406,7 @@ class Module { * Resource Access */ async getReader() { - return resourceFactory.createReader({ + return createReader({ fsBasePath: this.getPath(), virBasePath: "/", name: `Reader for module ${this.getId()}` @@ -411,4 +414,4 @@ class Module { } } -module.exports = Module; +export default Module; diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 6ab90c0e84b..ca9cba87f03 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -1,9 +1,13 @@ -const log = require("@ui5/logger").getLogger("graph:ProjectGraph"); +import * as taskRepository from "@ui5/builder/internal/taskRepository"; +import logger from "@ui5/logger"; +const log = logger.getLogger("graph:ProjectGraph"); + /** * A rooted, directed graph representing a UI5 project, its dependencies and available extensions * * @public - * @memberof module:@ui5/project.graph + * @class + * @alias @ui5/project/graph/ProjectGraph */ class ProjectGraph { /** @@ -17,6 +21,8 @@ class ProjectGraph { } this._rootProjectName = rootProjectName; + this._taskRepository = taskRepository; + this._projects = {}; // maps project name to instance this._adjList = {}; // maps project name to edges/dependencies this._optAdjList = {}; // maps project name to optional dependencies @@ -31,7 +37,7 @@ class ProjectGraph { * Get the root project of the graph * * @public - * @returns {module:@ui5/project.specifications.Project} Root project + * @returns {@ui5/project/specifications/Project} Root project */ getRoot() { const rootProject = this._projects[this._rootProjectName]; @@ -45,7 +51,7 @@ class ProjectGraph { * Add a project to the graph * * @public - * @param {module:@ui5/project.specifications.Project} project Project which should be added to the graph + * @param {@ui5/project/specifications/Project} project Project which should be added to the graph * @param {boolean} [ignoreDuplicates=false] Whether an error should be thrown when a duplicate project is added */ addProject(project, ignoreDuplicates) { @@ -75,7 +81,7 @@ class ProjectGraph { * * @public * @param {string} projectName Name of the project to retrieve - * @returns {module:@ui5/project.specifications.Project|undefined} + * @returns {@ui5/project/specifications/Project|undefined} * project instance or undefined if the project is unknown to the graph */ getProject(projectName) { @@ -86,7 +92,7 @@ class ProjectGraph { * Get all projects in the graph * * @public - * @returns {module:@ui5/project.specifications.Project[]} + * @returns {@ui5/project/specifications/Project[]} */ getAllProjects() { return Object.values(this._projects); @@ -96,7 +102,7 @@ class ProjectGraph { * Add an extension to the graph * * @public - * @param {module:@ui5/project.specification.Extension} extension Extension which should be available in the graph + * @param {@ui5/project/specifications/Extension} extension Extension which should be available in the graph */ addExtension(extension) { this._checkSealed(); @@ -118,7 +124,7 @@ class ProjectGraph { /** * @public * @param {string} extensionName Name of the extension to retrieve - * @returns {module:@ui5/project.specification.Extension|undefined} + * @returns {@ui5/project/specifications/Extension|undefined} * Extension instance or undefined if the extension is unknown to the graph */ getExtension(extensionName) { @@ -129,7 +135,7 @@ class ProjectGraph { * Get all extensions in the graph * * @public - * @returns {module:@ui5/project.specifications.Extension[]} + * @returns {@ui5/project/specifications/Extension[]} */ getAllExtensions() { return Object.values(this._extensions); @@ -301,25 +307,25 @@ class ProjectGraph { * * @public * @async - * @callback module:@ui5/project.graph.ProjectGraph~traversalCallback + * @callback @ui5/project/graph/ProjectGraph~traversalCallback * @param {object} parameters Parameters passed to the callback - * @param {module:@ui5/project.specifications.Project} parameters.project The project that is currently visited - * @param {module:@ui5/project.graph.ProjectGraph~getDependencies} parameters.getDependencies + * @param {@ui5/project/specifications/Project} parameters.project The project that is currently visited + * @param {@ui5/project/graph/ProjectGraph~getDependencies} parameters.getDependencies * Function to access the dependencies of the project that is currently visited. * @returns {Promise} Must return a promise on which the graph traversal will wait */ /** * Helper function available in the - * [traversalCallback]{@link module:@ui5/project.graph.ProjectGraph~traversalCallback} to access the + * [traversalCallback]{@link @ui5/project/graph/ProjectGraph~traversalCallback} to access the * dependencies of the corresponding project in the current graph. *

* Note that transitive dependencies can't be accessed this way. Projects should rather add a direct * dependency to projects they need access to. * * @public - * @function module:@ui5/project.graph.ProjectGraph~getDependencies - * @returns {Array.} Direct dependencies of the visited project + * @function @ui5/project/graph/ProjectGraph~getDependencies + * @returns {Array.<@ui5/project/specifications/Project>} Direct dependencies of the visited project */ @@ -331,7 +337,7 @@ class ProjectGraph { * * @public * @param {string} [startName] Name of the project to start the traversal at. Defaults to the graph's root project - * @param {module:@ui5/project.graph.ProjectGraph~traversalCallback} callback Will be called + * @param {@ui5/project/graph/ProjectGraph~traversalCallback} callback Will be called */ async traverseBreadthFirst(startName, callback) { if (!callback) { @@ -388,7 +394,7 @@ class ProjectGraph { * * @public * @param {string} [startName] Name of the project to start the traversal at. Defaults to the graph's root project - * @param {module:@ui5/project.graph.ProjectGraph~traversalCallback} callback Will be called + * @param {@ui5/project/graph/ProjectGraph~traversalCallback} callback Will be called */ async traverseDepthFirst(startName, callback) { if (!callback) { @@ -430,7 +436,7 @@ class ProjectGraph { * Projects and extensions which already exist in this graph will cause an error to be thrown * * @public - * @param {module:@ui5/project.graph.ProjectGraph} projectGraph Project Graph to merge into this one + * @param {@ui5/project/graph/ProjectGraph} projectGraph Project Graph to merge into this one */ join(projectGraph) { try { @@ -452,12 +458,13 @@ class ProjectGraph { } } - setTaskRepository(taskRepository) { - this._taskRepository = taskRepository; + // Only to be used by @ui5/builder tests to inject its version of the taskRepository + setTaskRepository(taskRepo) { + this._taskRepository = taskRepo; } getTaskRepository() { - return this._taskRepository || require("@ui5/builder").tasks.taskRepository; + return this._taskRepository; } /** @@ -498,7 +505,9 @@ class ProjectGraph { `Each graph can only be built once`); } this._built = true; - const ProjectBuilder = require("../build/ProjectBuilder"); + const { + default: ProjectBuilder + } = await import("../build/ProjectBuilder.js"); const builder = new ProjectBuilder(this, this.getTaskRepository(), { selfContained, cssVariables, jsdoc, createBuildManifest, @@ -564,4 +573,4 @@ function mergeMap(target, source) { } } -module.exports = ProjectGraph; +export default ProjectGraph; diff --git a/packages/project/lib/graph/ShimCollection.js b/packages/project/lib/graph/ShimCollection.js index b739e311040..6246333277d 100644 --- a/packages/project/lib/graph/ShimCollection.js +++ b/packages/project/lib/graph/ShimCollection.js @@ -1,4 +1,5 @@ -const log = require("@ui5/logger").getLogger("graph:ShimCollection"); +import logger from "@ui5/logger"; +const log = logger.getLogger("graph:ShimCollection"); function addToMap(name, fromMap, toMap) { /* Dynamically populate the given map "toMap" with the following structure: @@ -59,4 +60,4 @@ class ShimCollection { } } -module.exports = ShimCollection; +export default ShimCollection; diff --git a/packages/project/lib/graph/graph.js b/packages/project/lib/graph/graph.js new file mode 100644 index 00000000000..0721afea419 --- /dev/null +++ b/packages/project/lib/graph/graph.js @@ -0,0 +1,196 @@ +import path from "node:path"; +import projectGraphBuilder from "./projectGraphBuilder.js"; +import ui5Framework from "./helpers/ui5Framework.js"; +import logger from "@ui5/logger"; +const log = logger.getLogger("generateProjectGraph"); + +function resolveProjectPaths(cwd, project) { + if (!project.path) { + throw new Error(`Missing or empty attribute 'path' for project ${project.id}`); + } + project.path = path.resolve(cwd, project.path); + + if (!project.id) { + throw new Error(`Missing or empty attribute 'id' for project with path ${project.path}`); + } + if (!project.version) { + throw new Error(`Missing or empty attribute 'version' for project ${project.id}`); + } + + if (project.dependencies) { + project.dependencies.forEach((project) => resolveProjectPaths(cwd, project)); + } + return project; +} + +/** + * Helper module to create a [@ui5/project/graph/ProjectGraph]{@link @ui5/project/graph/ProjectGraph} + * from a directory + * + * @public + * @module @ui5/project/graph + */ + +/** + * Generates a [@ui5/project/graph/ProjectGraph]{@link @ui5/project/graph/ProjectGraph} by resolving + * dependencies from package.json files and configuring projects from ui5.yaml files + * + * @public + * @static + * @param {object} [options] + * @param {string} [options.cwd=process.cwd()] Directory to start searching for the root module + * @param {object} [options.rootConfiguration] + * Configuration object to use for the root module instead of reading from a configuration file + * @param {string} [options.rootConfigPath] + * Configuration file to use for the root module instead the default ui5.yaml + * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project + * @param {string} [options.resolveFrameworkDependencies=true] + * Whether framework dependencies should be added to the graph + * @returns {Promise<@ui5/project/graph/ProjectGraph>} Promise resolving to a Project Graph instance + */ +export async function graphFromPackageDependencies({ + cwd, rootConfiguration, rootConfigPath, + versionOverride, resolveFrameworkDependencies = true +}) { + log.verbose(`Creating project graph using npm provider...`); + const { + default: NpmProvider + } = await import("./providers/NodePackageDependencies.js"); + + const provider = new NpmProvider({ + cwd: cwd ? path.resolve(cwd) : process.cwd(), + rootConfiguration, + rootConfigPath + }); + + const projectGraph = await projectGraphBuilder(provider); + + if (resolveFrameworkDependencies) { + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); + } + + return projectGraph; +} + +/** + * Generates a [@ui5/project/graph/ProjectGraph]{@link @ui5/project/graph/ProjectGraph} from a + * YAML file following the structure of the + * [@ui5/project/graph/ProjectGraphFromTree]{@link @ui5/project/graph/ProjectGraphFromTree} API + * + * @public + * @static + * @param {object} options + * @param {object} [options.filePath=projectDependencies.yaml] Path to the dependency configuration file + * @param {string} [options.cwd=process.cwd()] Directory to resolve relative paths to + * @param {object} [options.rootConfiguration] + * Configuration object to use for the root module instead of reading from a configuration file + * @param {string} [options.rootConfigPath] + * Configuration file to use for the root module instead the default ui5.yaml + * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project + * @param {string} [options.resolveFrameworkDependencies=true] + * Whether framework dependencies should be added to the graph + * @returns {Promise<@ui5/project/graph/ProjectGraph>} Promise resolving to a Project Graph instance + */ +export async function graphFromStaticFile({ + cwd, filePath = "projectDependencies.yaml", + rootConfiguration, rootConfigPath, + versionOverride, resolveFrameworkDependencies = true +}) { + log.verbose(`Creating project graph using static file...`); + + const dependencyTree = await utils.readDependencyConfigFile(cwd ? path.resolve(cwd) : process.cwd(), filePath); + + const { + default: DependencyTreeProvider + } = await import("./providers/DependencyTree.js"); + const provider = new DependencyTreeProvider({ + dependencyTree, + rootConfiguration, + rootConfigPath + }); + + const projectGraph = await projectGraphBuilder(provider); + + if (resolveFrameworkDependencies) { + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); + } + + return projectGraph; +} + +/** + * Generates a [@ui5/project/graph/ProjectGraph]{@link @ui5/project/graph/ProjectGraph} from the + * given dependencyTree following the structure of the + * [@ui5/project/graph/providers/DependencyTree~TreeNode]{@link @ui5/project/graph/providers/DependencyTree~TreeNode} + * + * @public + * @static + * @param {object} options + * @param {@ui5/project/graph/providers/DependencyTree~TreeNode} options.dependencyTree + * @param {object} [options.rootConfiguration] + * Configuration object to use for the root module instead of reading from a configuration file + * @param {string} [options.rootConfigPath] + * Configuration file to use for the root module instead the default ui5.yaml + * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project + * @param {string} [options.resolveFrameworkDependencies=true] + * Whether framework dependencies should be added to the graph + * @returns {Promise<@ui5/project/graph/ProjectGraph>} Promise resolving to a Project Graph instance +*/ +export async function graphFromObject({ + dependencyTree, + rootConfiguration, rootConfigPath, + versionOverride, resolveFrameworkDependencies = true +}) { + log.verbose(`Creating project graph using object...`); + + const { + default: DependencyTreeProvider + } = await import("./providers/DependencyTree.js"); + const dependencyTreeProvider = new DependencyTreeProvider({ + dependencyTree, + rootConfiguration, + rootConfigPath + }); + + const projectGraph = await projectGraphBuilder(dependencyTreeProvider); + + if (resolveFrameworkDependencies) { + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); + } + + return projectGraph; +} + +const utils = { + readDependencyConfigFile: async function(cwd, filePath) { + const { + default: fs + } = await import("graceful-fs"); + const {promisify} = await import("util"); + const readFile = promisify(fs.readFile); + const parseYaml =(await import("js-yaml")).load; + + if (!path.isAbsolute(filePath)) { + filePath = path.join(cwd, filePath); + } + + let dependencyTree; + try { + const contents = await readFile(filePath, {encoding: "utf-8"}); + dependencyTree = parseYaml(contents, { + filename: filePath + }); + resolveProjectPaths(cwd, dependencyTree); + } catch (err) { + throw new Error( + `Failed to load dependency tree configuration from path ${filePath}: ${err.message}`); + } + return dependencyTree; + } +}; + +// Export function for testing only +/* istanbul ignore else */ +if (process.env.NODE_ENV === "test") { + graphFromStaticFile._utils = utils; +} diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index a834fded503..520427a46a4 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -1,6 +1,7 @@ -const Module = require("../Module"); -const ProjectGraph = require("../ProjectGraph"); -const log = require("@ui5/logger").getLogger("graph:helpers:ui5Framework"); +import Module from "../Module.js"; +import ProjectGraph from "../ProjectGraph.js"; +import logger from "@ui5/logger"; +const log = logger.getLogger("graph:helpers:ui5Framework"); class ProjectProcessor { constructor({libraryMetadata}) { @@ -119,19 +120,18 @@ const utils = { * * * @private - * @namespace - * @alias module:@ui5/project.translators.ui5Framework + * @module @ui5/project/translators/ui5Framework */ -module.exports = { +export default { /** * * * @public - * @param {module:@ui5/project.graph.ProjectGraph} projectGraph + * @param {@ui5/project/graph/ProjectGraph} projectGraph * @param {object} [options] * @param {string} [options.versionOverride] Framework version to use instead of the root projects framework * version from the provided tree - * @returns {Promise} + * @returns {Promise<@ui5/project/graph/ProjectGraph>} * Promise resolving with the given graph instance to allow method chaining */ enrichProjectGraph: async function(projectGraph, options = {}) { @@ -164,9 +164,9 @@ module.exports = { let Resolver; if (frameworkName === "OpenUI5") { - Resolver = require("../../ui5Framework/Openui5Resolver"); + Resolver = (await import("../../ui5Framework/Openui5Resolver.js")).default; } else if (frameworkName === "SAPUI5") { - Resolver = require("../../ui5Framework/Sapui5Resolver"); + Resolver = (await import("../../ui5Framework/Sapui5Resolver.js")).default; } let version; @@ -205,7 +205,7 @@ module.exports = { if (log.isLevelEnabled("verbose")) { const timeDiff = process.hrtime(startTime); - const prettyHrtime = require("pretty-hrtime"); + const {default: prettyHrtime} = await import("pretty-hrtime"); log.verbose( `${frameworkName} dependencies ${referencedLibraries.join(", ")} ` + `resolved in ${prettyHrtime(timeDiff)}`); @@ -229,5 +229,5 @@ module.exports = { }, // Export for testing only - _utils: process.env.NODE_ENV === "test" ? utils : undefined + _utils: process.env.NODE_ENV === "test" ? utils : /* istanbul ignore next */ undefined }; diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index f193c564cb2..5ca83024875 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -1,8 +1,9 @@ -const path = require("path"); -const Module = require("./Module"); -const ProjectGraph = require("./ProjectGraph"); -const ShimCollection = require("./ShimCollection"); -const log = require("@ui5/logger").getLogger("graph:projectGraphBuilder"); +import path from "node:path"; +import Module from "./Module.js"; +import ProjectGraph from "./ProjectGraph.js"; +import ShimCollection from "./ShimCollection.js"; +import logger from "@ui5/logger"; +const log = logger.getLogger("graph:projectGraphBuilder"); function _handleExtensions(graph, shimCollection, extensions) { extensions.forEach((extension) => { @@ -38,11 +39,16 @@ function validateNode(node) { } } +/** + * @public + * @module @ui5/project/graph/ProjectGraphBuilder + */ + /** * Dependency graph node representing a module * * @public - * @typedef {object} Node + * @typedef {object} @ui5/project/graph/ProjectGraphBuilder~Node * @property {string} node.id Unique ID for the project * @property {string} node.version Version of the project * @property {string} node.path File System path to access the projects resources @@ -58,36 +64,40 @@ function validateNode(node) { /** * Node Provider interface * - * @interface NodeProvider + * @public + * @interface @ui5/project/graph/ProjectGraphBuilder~NodeProvider */ /** * Retrieve information on the root module * + * @public * @function - * @name NodeProvider#getRootNode + * @name @ui5/project/graph/ProjectGraphBuilder~NodeProvider#getRootNode * @returns {Node} The root node of the dependency graph */ /** * Retrieve information on given a nodes dependencies * + * @public * @function - * @name NodeProvider#getDependencies + * @name @ui5/project/graph/ProjectGraphBuilder~NodeProvider#getDependencies * @param {Node} The root node of the dependency graph * @returns {Node[]} Array of nodes which are direct dependencies of the given node */ /** - * Generic helper module to create a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph}. + * Generic helper module to create a [@ui5/project/graph/ProjectGraph]{@link @ui5/project/graph/ProjectGraph}. * For example from a dependency tree as returned by the legacy "translators". * * @public - * @alias module:@ui5/project.graph.projectGraphBuilder - * @param {NodeProvider} nodeProvider - * @returns {module:@ui5/project.graph.ProjectGraph} A new project graph instance + * @function default + * @static + * @param {@ui5/project/graph/ProjectGraphBuilder~NodeProvider} nodeProvider + * @returns {@ui5/project/graph/ProjectGraph} A new project graph instance */ -module.exports = async function(nodeProvider) { +async function projectGraphBuilder(nodeProvider) { const shimCollection = new ShimCollection(); const moduleCollection = {}; @@ -330,4 +340,6 @@ module.exports = async function(nodeProvider) { await projectGraph.resolveOptionalDependencies(); return projectGraph; -}; +} + +export default projectGraphBuilder; diff --git a/packages/project/lib/graph/providers/DependencyTree.js b/packages/project/lib/graph/providers/DependencyTree.js index b9a4704867e..8d0f61548fb 100644 --- a/packages/project/lib/graph/providers/DependencyTree.js +++ b/packages/project/lib/graph/providers/DependencyTree.js @@ -2,24 +2,30 @@ * Tree node * * @public - * @typedef {object} TreeNode + * @class + * @typedef {object} @ui5/project/graph/providers/DependencyTree~TreeNode * @property {string} node.id Unique ID for the project * @property {string} node.version Version of the project * @property {string} node.path File System path to access the projects resources * @property {object|object[]} [node.configuration] * Configuration object or array of objects to use instead of reading from a configuration file * @property {string} [node.configPath] Configuration file to use instead the default ui5.yaml - * @property {TreeNode[]} dependencies + * @property {@ui5/project/graph/providers/DependencyTree~TreeNode[]} dependencies + */ + +/** + * Helper module to create a [@ui5/project/graph/ProjectGraph]{@link @ui5/project/graph/ProjectGraph} + * from a dependency tree as returned by translators. + * + * @public + * @class + * @alias @ui5/project/graph/providers/DependencyTree */ class DependencyTree { /** - * Helper module to create a [@ui5/project.graph.ProjectGraph]{@link module:@ui5/project.graph.ProjectGraph} - * from a dependency tree as returned by translators. - * - * @public - * @alias module:@ui5/project.graph.providers.DependencyTree * @param {object} options - * @param {TreeNode} options.dependencyTree Dependency tree as returned by a translator + * @param {@ui5/project/graph/providers/DependencyTree~TreeNode} options.dependencyTree + * Dependency tree as returned by a translator * @param {object} [options.rootConfiguration] * Configuration object to use for the root module instead of reading from a configuration file * @param {string} [options.rootConfigPath] @@ -50,4 +56,4 @@ class DependencyTree { } } -module.exports = DependencyTree; +export default DependencyTree; diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js index 35652671bc4..be9956d84a2 100644 --- a/packages/project/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -1,17 +1,23 @@ -const path = require("path"); -const readPkgUp = require("read-pkg-up"); -const readPkg = require("read-pkg"); -const {promisify} = require("util"); -const fs = require("graceful-fs"); +import path from "node:path"; +import readPkgUp from "read-pkg-up"; +import readPkg from "read-pkg"; +import {promisify} from "node:util"; +import fs from "graceful-fs"; const realpath = promisify(fs.realpath); -const resolveModulePath = promisify(require("resolve")); -const log = require("@ui5/logger").getLogger("graph:providers:NodePackageDependencies"); +import resolve from "resolve"; +const resolveModulePath = promisify(resolve); +import logger from "@ui5/logger"; +const log = logger.getLogger("graph:providers:NodePackageDependencies"); // Packages to consider: // * https://github.com/npm/read-package-json-fast // * https://github.com/npm/name-from-folder ? - +/** + * @public + * @class + * @alias @ui5/project/graph/providers/NodePackageDependencies + */ class NodePackageDependencies { /** * Generates a project graph from npm modules @@ -149,4 +155,4 @@ class NodePackageDependencies { } } -module.exports = NodePackageDependencies; +export default NodePackageDependencies; diff --git a/packages/project/lib/specifications/ComponentProject.js b/packages/project/lib/specifications/ComponentProject.js index 2fc17733cba..268345f4a6d 100644 --- a/packages/project/lib/specifications/ComponentProject.js +++ b/packages/project/lib/specifications/ComponentProject.js @@ -1,11 +1,17 @@ -const {promisify} = require("util"); -const Project = require("./Project"); -const resourceFactory = require("@ui5/fs").resourceFactory; - -/* -* Subclass for projects potentially containing Components -*/ - +import {promisify} from "node:util"; +import Project from "./Project.js"; +import * as resourceFactory from "@ui5/fs/resourceFactory"; + +/** + * Subclass for projects potentially containing Components + * + * @public + * @abstract + * @class + * @alias @ui5/project/specifications/ComponentProject + * @extends @ui5/project/specifications/Project + * @hideconstructor + */ class ComponentProject extends Project { constructor(parameters) { super(parameters); @@ -91,9 +97,9 @@ class ComponentProject extends Project { * @param {object} [options] * @param {string} [options.style=buildtime] Path style to access resources. Can be "buildtime", "runtime" or "flat" * TODO: describe styles - * @returns {module:@ui5/fs.ReaderCollection} A reader collection instance + * @returns {Promise<@ui5/fs/ReaderCollection>} A reader collection instance */ - getReader({style = "buildtime"} = {}) { + async getReader({style = "buildtime"} = {}) { // TODO: Additional style 'ABAP' using "sap.platform.abap".uri from manifest.json? if (style === "runtime" && this._isRuntimeNamespaced) { @@ -101,35 +107,34 @@ class ComponentProject extends Project { // "runtime" style paths are identical to "buildtime" style paths style = "buildtime"; } - let reader; + let reader = this._getReader(); switch (style) { case "buildtime": - reader = this._getReader(); break; case "runtime": // Use buildtime reader and link it to / // No test-resources for runtime resource access, // unless runtime is namespaced - reader = this._getReader().flatten(this._namespace); + reader = await reader.flatten(this._namespace); break; case "flat": // Use buildtime reader and link it to / // No test-resources for runtime resource access, // unless runtime is namespaced - reader = this._getReader().flatten(this._namespace); + reader = await reader.flatten(this._namespace); break; default: throw new Error(`Unknown path mapping style ${style}`); } - reader = this._addWriter(reader, style); + reader = await this._addWriter(reader, style); return reader; } /** * Get a resource reader for the resources of the project * - * @returns {module:@ui5/fs.ReaderCollection} Reader collection + * @returns {@ui5/fs/ReaderCollection} Reader collection */ _getSourceReader() { throw new Error(`_getSourceReader must be implemented by subclass ${this.constructor.name}`); @@ -138,7 +143,7 @@ class ComponentProject extends Project { /** * Get a resource reader for the test resources of the project * - * @returns {module:@ui5/fs.ReaderCollection} Reader collection + * @returns {@ui5/fs/ReaderCollection} Reader collection */ _getTestReader() { throw new Error(`_getTestReader must be implemented by subclass ${this.constructor.name}`); @@ -148,9 +153,9 @@ class ComponentProject extends Project { * Get a resource reader/writer for accessing and modifying a project's resources * * @public - * @returns {module:@ui5/fs.ReaderCollection} A reader collection instance + * @returns {Promise<@ui5/fs/ReaderCollection>} A reader collection instance */ - getWorkspace() { + async getWorkspace() { // Workspace is always of style "buildtime" return resourceFactory.createWorkspace({ name: `Workspace for project ${this.getName()}`, @@ -202,7 +207,7 @@ class ComponentProject extends Project { return reader; } - _addWriter(reader, style) { + async _addWriter(reader, style) { const {namespaceWriter, generalWriter} = this._getWriter(); if (style === "runtime" && this._isRuntimeNamespaced) { @@ -219,14 +224,14 @@ class ComponentProject extends Project { } case "runtime": { // Runtime is not namespaced: link namespace to / - readers.push(namespaceWriter.flatten(this._namespace)); + readers.push(await namespaceWriter.flatten(this._namespace)); // Add general writer as is readers.push(generalWriter); break; } case "flat": { // Rewrite paths from "flat" to "buildtime" - readers.push(namespaceWriter.flatten(this._namespace)); + readers.push(await namespaceWriter.flatten(this._namespace)); // General writer resources can't be flattened, so they are not available break; } @@ -315,7 +320,9 @@ class ComponentProject extends Project { `Could not find pom.xml in project ${this.getName()}`); } const content = await resource.getString(); - const xml2js = require("xml2js"); + const { + default: xml2js + } = await import("xml2js"); const parser = new xml2js.Parser({ explicitArray: false, ignoreAttrs: true @@ -329,4 +336,4 @@ class ComponentProject extends Project { } } -module.exports = ComponentProject; +export default ComponentProject; diff --git a/packages/project/lib/specifications/Extension.js b/packages/project/lib/specifications/Extension.js index 76c5b38f19f..a30b11c35b6 100644 --- a/packages/project/lib/specifications/Extension.js +++ b/packages/project/lib/specifications/Extension.js @@ -1,5 +1,15 @@ -const Specification = require("./Specification"); +import Specification from "./Specification.js"; +/** + * Extension + * + * @public + * @abstract + * @class + * @alias @ui5/project/specifications/Extension + * @extends @ui5/project/specifications/Specification + * @hideconstructor + */ class Extension extends Specification { constructor(parameters) { super(parameters); @@ -32,4 +42,4 @@ class Extension extends Specification { async _validateConfig() {} } -module.exports = Extension; +export default Extension; diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index a3b7a25a35c..5b05d2c9eb1 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -1,11 +1,15 @@ -const Specification = require("./Specification"); +import Specification from "./Specification.js"; +import ResourceTagCollection from "@ui5/fs/internal/ResourceTagCollection"; /** * Project * * @public - * @memberof module:@ui5/project.specifications - * @augments module:@ui5/project.specifications.Specification + * @abstract + * @class + * @alias @ui5/project/specifications/Project + * @extends @ui5/project/specifications/Specification + * @hideconstructor */ class Project extends Specification { constructor(parameters) { @@ -123,7 +127,7 @@ class Project extends Specification { /* === Resource Access === */ /** - * Get a [ReaderCollection]{@link module:@ui5/fs.ReaderCollection} for accessing all resources of the + * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for accessing all resources of the * project in the specified "style": * *
    @@ -137,15 +141,15 @@ class Project extends Specification { * @param {object} [options] * @param {string} [options.style=buildtime] Path style to access resources. Can be "buildtime", "runtime" or "flat" * This parameter might be ignored by some project types - * @returns {module:@ui5/fs.ReaderCollection} Reader collection allowing access to all resources of the project + * @returns {Promise<@ui5/fs/ReaderCollection>} Reader collection allowing access to all resources of the + * project */ - getReader(options) { + async getReader(options) { throw new Error(`getReader must be implemented by subclass ${this.constructor.name}`); } getResourceTagCollection() { if (!this._resourceTagCollection) { - const ResourceTagCollection = require("@ui5/fs").ResourceTagCollection; this._resourceTagCollection = new ResourceTagCollection({ allowedTags: ["ui5:IsDebugVariant", "ui5:HasDebugVariant"], allowedNamespaces: ["project"], @@ -156,13 +160,13 @@ class Project extends Specification { } /** - * Get a [DuplexCollection]{@link module:@ui5/fs.DuplexCollection} for accessing and modifying a + * Get a [DuplexCollection]{@link @ui5/fs/DuplexCollection} for accessing and modifying a * project's resources. This is always of style buildtime. * * @public - * @returns {module:@ui5/fs.DuplexCollection} DuplexCollection + * @returns {Promise<@ui5/fs/DuplexCollection>} DuplexCollection */ - getWorkspace() { + async getWorkspace() { throw new Error(`getWorkspace must be implemented by subclass ${this.constructor.name}`); } @@ -180,4 +184,4 @@ class Project extends Specification { async _parseConfiguration(config) {} } -module.exports = Project; +export default Project; diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 9553683b813..0b27616cdaf 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -1,11 +1,21 @@ -const resourceFactory = require("@ui5/fs").resourceFactory; - +import logger from "@ui5/logger"; +import {createReader} from "@ui5/fs/resourceFactory"; + +/** + * Specification + * + * @public + * @abstract + * @class + * @alias @ui5/project/specifications/Specification + * @hideconstructor + */ class Specification { constructor() { if (new.target === Specification) { throw new TypeError("Class 'Specification' is abstract. Please use one of the 'types' subclasses"); } - this._log = require("@ui5/logger").getLogger(`specifications:types:${this.constructor.name}`); + this._log = logger.getLogger(`specifications:types:${this.constructor.name}`); } /** @@ -38,7 +48,7 @@ class Specification { // Deep clone config to prevent changes by reference const config = JSON.parse(JSON.stringify(configuration)); - const {validate} = require("../validation/validator"); + const {validate} = await import("../validation/validator.js"); if (config.specVersion === "0.1" || config.specVersion === "1.0" || config.specVersion === "1.1") { @@ -148,10 +158,10 @@ class Specification { * Get a resource reader for the root directory of the project * * @public - * @returns {module:@ui5/fs.ReaderCollection} Reader collection + * @returns {@ui5/fs/ReaderCollection} Reader collection */ getRootReader() { - return resourceFactory.createReader({ + return createReader({ fsBasePath: this.getPath(), virBasePath: "/", name: `Root reader for ${this.getType()} ${this.getKind()} ${this.getName()}` @@ -198,25 +208,25 @@ class Specification { switch (type) { case "application": { - return createAndInitializeSpec("Application", params); + return createAndInitializeSpec("Application.js", params); } case "library": { - return createAndInitializeSpec("Library", params); + return createAndInitializeSpec("Library.js", params); } case "theme-library": { - return createAndInitializeSpec("ThemeLibrary", params); + return createAndInitializeSpec("ThemeLibrary.js", params); } case "module": { - return createAndInitializeSpec("Module", params); + return createAndInitializeSpec("Module.js", params); } case "task": { - return createAndInitializeSpec("extensions/Task", params); + return createAndInitializeSpec("extensions/Task.js", params); } case "server-middleware": { - return createAndInitializeSpec("extensions/ServerMiddleware", params); + return createAndInitializeSpec("extensions/ServerMiddleware.js", params); } case "project-shim": { - return createAndInitializeSpec("extensions/ProjectShim", params); + return createAndInitializeSpec("extensions/ProjectShim.js", params); } default: throw new Error( @@ -225,9 +235,9 @@ class Specification { } } -function createAndInitializeSpec(moduleName, params) { - const Spec = require(`./types/${moduleName}`); +async function createAndInitializeSpec(moduleName, params) { + const {default: Spec} = await import(`./types/${moduleName}`); return new Spec().init(params); } -module.exports = Specification; +export default Specification; diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index b705f384732..4110a18ec83 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -1,7 +1,16 @@ -const fsPath = require("path"); -const resourceFactory = require("@ui5/fs").resourceFactory; -const ComponentProject = require("../ComponentProject"); - +import fsPath from "node:path"; +import ComponentProject from "../ComponentProject.js"; +import {createReader} from "@ui5/fs/resourceFactory"; + +/** + * Application + * + * @public + * @class + * @alias @ui5/project/specifications/types/Application + * @extends @ui5/project/specifications/ComponentProject + * @hideconstructor + */ class Application extends ComponentProject { constructor(parameters) { super(parameters); @@ -34,10 +43,10 @@ class Application extends ComponentProject { /** * Get a resource reader for the sources of the project (excluding any test resources) * - * @returns {module:@ui5/fs.ReaderCollection} Reader collection + * @returns {@ui5/fs/ReaderCollection} Reader collection */ _getSourceReader() { - return resourceFactory.createReader({ + return createReader({ fsBasePath: this.getSourcePath(), virBasePath: `/resources/${this._namespace}/`, name: `Source reader for application project ${this.getName()}`, @@ -51,7 +60,7 @@ class Application extends ComponentProject { } _getRawSourceReader() { - return resourceFactory.createReader({ + return createReader({ fsBasePath: this.getSourcePath(), virBasePath: "/", name: `Source reader for application project ${this.getName()}`, @@ -76,7 +85,7 @@ class Application extends ComponentProject { this._log.verbose(` Physical root path: ${this.getPath()}`); this._log.verbose(` Mapped to: ${this._webappPath}`); - if (!await this._dirExists("/" + this._webappPath)) { + if (!(await this._dirExists("/" + this._webappPath))) { throw new Error( `Unable to find directory '${this._webappPath}' in application project ${this.getName()}`); } @@ -210,4 +219,4 @@ class Application extends ComponentProject { } } -module.exports = Application; +export default Application; diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index bf4a9ffe1a3..9a31a6f9c6f 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -1,9 +1,18 @@ -const fsPath = require("path"); -const posixPath = require("path").posix; -const {promisify} = require("util"); -const resourceFactory = require("@ui5/fs").resourceFactory; -const ComponentProject = require("../ComponentProject"); - +import fsPath from "node:path"; +import posixPath from "node:path/posix"; +import {promisify} from "node:util"; +import ComponentProject from "../ComponentProject.js"; +import * as resourceFactory from "@ui5/fs/resourceFactory"; + +/** + * Library + * + * @public + * @class + * @alias @ui5/project/specifications/types/Library + * @extends @ui5/project/specifications/ComponentProject + * @hideconstructor + */ class Library extends ComponentProject { constructor(parameters) { super(parameters); @@ -84,7 +93,7 @@ class Library extends ComponentProject { * Get a resource reader for the sources of the project (excluding any test resources) * In the future the path structure can be flat or namespaced depending on the project * - * @returns {module:@ui5/fs.ReaderCollection} Reader collection + * @returns {@ui5/fs/ReaderCollection} Reader collection */ _getRawSourceReader() { return resourceFactory.createReader({ @@ -118,11 +127,11 @@ class Library extends ComponentProject { this._log.verbose(` /resources/ => ${this._srcPath}`); this._log.verbose(` /test-resources/ => ${this._testPath}`); - if (!await this._dirExists("/" + this._srcPath)) { + if (!(await this._dirExists("/" + this._srcPath))) { throw new Error( `Unable to find directory '${this._srcPath}' in library project ${this.getName()}`); } - if (!await this._dirExists("/" + this._testPath)) { + if (!(await this._dirExists("/" + this._testPath))) { this._log.verbose(` (/test-resources/ target does not exist)`); } else { this._testPathExists = true; @@ -461,7 +470,9 @@ class Library extends ComponentProject { const content = await resource.getString(); try { - const xml2js = require("xml2js"); + const { + default: xml2js + } = await import("xml2js"); const parser = new xml2js.Parser({ explicitArray: false, explicitCharkey: true @@ -503,4 +514,4 @@ class Library extends ComponentProject { } } -module.exports = Library; +export default Library; diff --git a/packages/project/lib/specifications/types/Module.js b/packages/project/lib/specifications/types/Module.js index cbe9f6acdc7..00233cfd252 100644 --- a/packages/project/lib/specifications/types/Module.js +++ b/packages/project/lib/specifications/types/Module.js @@ -1,7 +1,16 @@ -const fsPath = require("path"); -const resourceFactory = require("@ui5/fs").resourceFactory; -const Project = require("../Project"); +import fsPath from "node:path"; +import Project from "../Project.js"; +import * as resourceFactory from "@ui5/fs/resourceFactory"; +/** + * Module + * + * @public + * @class + * @alias @ui5/project/specifications/types/Module + * @extends @ui5/project/specifications/Project + * @hideconstructor + */ class Module extends Project { constructor(parameters) { super(parameters); @@ -24,9 +33,9 @@ class Module extends Project { * Get a resource reader for accessing the project resources * * @public - * @returns {module:@ui5/fs.ReaderCollection} Reader collection + * @returns {Promise<@ui5/fs/ReaderCollection>} Reader collection */ - getReader() { + async getReader() { const readers = this._paths.map((readerArgs) => resourceFactory.createReader(readerArgs)); if (readers.length === 1) { return readers[0]; @@ -45,10 +54,10 @@ class Module extends Project { * Get a resource reader/writer for accessing and modifying a project's resources * * @public - * @returns {module:@ui5/fs.ReaderCollection} A reader collection instance + * @returns {Promise<@ui5/fs/ReaderCollection>} A reader collection instance */ - getWorkspace() { - const reader = this.getReader(); + async getWorkspace() { + const reader = await this.getReader(); const writer = this._getWriter(); return resourceFactory.createWorkspace({ @@ -83,7 +92,7 @@ class Module extends Project { this._paths = await Promise.all(Object.entries(config.resources.configuration.paths) .map(async ([virBasePath, relFsPath]) => { this._log.verbose(` ${virBasePath} => ${relFsPath}`); - if (!await this._dirExists("/" + relFsPath)) { + if (!(await this._dirExists("/" + relFsPath))) { throw new Error( `Unable to find directory '${relFsPath}' in module project ${this.getName()}`); } @@ -96,7 +105,7 @@ class Module extends Project { }; })); } else { - if (!await this._dirExists("/")) { + if (!(await this._dirExists("/"))) { throw new Error( `Unable to find root directory of module project ${this.getName()}`); } @@ -112,4 +121,4 @@ class Module extends Project { } } -module.exports = Module; +export default Module; diff --git a/packages/project/lib/specifications/types/ThemeLibrary.js b/packages/project/lib/specifications/types/ThemeLibrary.js index 274b9e0d812..de1ab3f152e 100644 --- a/packages/project/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/lib/specifications/types/ThemeLibrary.js @@ -1,7 +1,16 @@ -const fsPath = require("path"); -const resourceFactory = require("@ui5/fs").resourceFactory; -const Project = require("../Project"); +import Project from "../Project.js"; +import fsPath from "node:path"; +import * as resourceFactory from "@ui5/fs/resourceFactory"; +/** + * ThemeLibrary + * + * @public + * @class + * @alias @ui5/project/specifications/types/ThemeLibrary + * @extends @ui5/project/specifications/Project + * @hideconstructor + */ class ThemeLibrary extends Project { constructor(parameters) { super(parameters); @@ -26,15 +35,16 @@ class ThemeLibrary extends Project { /* === Resource Access === */ /** - * Get a [ReaderCollection]{@link module:@ui5/fs.ReaderCollection} for accessing all resources of the + * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for accessing all resources of the * project. * This is always of style buildtime, wich for theme libraries is identical to style * runtime. * * @public - * @returns {module:@ui5/fs.ReaderCollection} Reader collection allowing access to all resources of the project + * @returns {Promise<@ui5/fs/ReaderCollection>} Reader collection allowing access to all resources of + * the project */ - getReader() { + async getReader() { let reader = resourceFactory.createReader({ fsBasePath: this.getSourcePath(), virBasePath: "/resources/", @@ -64,17 +74,17 @@ class ThemeLibrary extends Project { } /** - * Get a [DuplexCollection]{@link module:@ui5/fs.DuplexCollection} for accessing and modifying a + * Get a [DuplexCollection]{@link @ui5/fs/DuplexCollection} for accessing and modifying a * project's resources. * * This is always of style buildtime, wich for theme libraries is identical to style * runtime. * * @public - * @returns {module:@ui5/fs.DuplexCollection} DuplexCollection + * @returns {Promise<@ui5/fs/DuplexCollection>} DuplexCollection */ - getWorkspace() { - const reader = this.getReader(); + async getWorkspace() { + const reader = await this.getReader(); const writer = this._getWriter(); return resourceFactory.createWorkspace({ @@ -117,11 +127,11 @@ class ThemeLibrary extends Project { this._log.verbose(` /resources/ => ${this._srcPath}`); this._log.verbose(` /test-resources/ => ${this._testPath}`); - if (!await this._dirExists("/" + this._srcPath)) { + if (!(await this._dirExists("/" + this._srcPath))) { throw new Error( `Unable to find directory '${this._srcPath}' in theme-library project ${this.getName()}`); } - if (!await this._dirExists("/" + this._testPath)) { + if (!(await this._dirExists("/" + this._testPath))) { this._log.verbose(` (/test-resources/ target does not exist)`); } else { this._testPathExists = true; @@ -129,4 +139,4 @@ class ThemeLibrary extends Project { } } -module.exports = ThemeLibrary; +export default ThemeLibrary; diff --git a/packages/project/lib/specifications/types/extensions/ProjectShim.js b/packages/project/lib/specifications/types/extensions/ProjectShim.js index f28dfc9aa78..63098bdf9eb 100644 --- a/packages/project/lib/specifications/types/extensions/ProjectShim.js +++ b/packages/project/lib/specifications/types/extensions/ProjectShim.js @@ -1,5 +1,14 @@ -const Extension = require("../../Extension"); +import Extension from "../../Extension.js"; +/** + * ProjectShim + * + * @public + * @class + * @alias @ui5/project/specifications/types/extensions/ProjectShim + * @extends @ui5/project/specifications/Extension + * @hideconstructor + */ class ProjectShim extends Extension { constructor(parameters) { super(parameters); @@ -34,7 +43,9 @@ class ProjectShim extends Extension { */ async _validateConfig() { if (this._config.shims.collections) { - const path = require("path"); + const { + default: path + } = await import("path"); for (const dependencyDefinition of Object.values(this._config.shims.collections)) { Object.values(dependencyDefinition.modules).forEach((depPath) => { if (path.isAbsolute(depPath)) { @@ -46,4 +57,4 @@ class ProjectShim extends Extension { } } -module.exports = ProjectShim; +export default ProjectShim; diff --git a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js index 772766100a7..53dff57e6e9 100644 --- a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/lib/specifications/types/extensions/ServerMiddleware.js @@ -1,6 +1,16 @@ -const path = require("path"); -const Extension = require("../../Extension"); +import path from "node:path"; +import Extension from "../../Extension.js"; +import {pathToFileURL} from "node:url"; +/** + * ServerMiddleware + * + * @public + * @class + * @alias @ui5/project/specifications/types/extensions/ServerMiddleware + * @extends @ui5/project/specifications/Extension + * @hideconstructor + */ class ServerMiddleware extends Extension { constructor(parameters) { super(parameters); @@ -10,9 +20,10 @@ class ServerMiddleware extends Extension { /** * @public */ - getMiddleware() { + async getMiddleware() { const middlewarePath = path.join(this.getPath(), this._config.middleware.path); - return require(middlewarePath); + const {default: middleware} = await import(pathToFileURL(middlewarePath)); + return middleware; } /* === Internals === */ /** @@ -27,4 +38,4 @@ class ServerMiddleware extends Extension { } } -module.exports = ServerMiddleware; +export default ServerMiddleware; diff --git a/packages/project/lib/specifications/types/extensions/Task.js b/packages/project/lib/specifications/types/extensions/Task.js index 541e1165b01..32258295e3e 100644 --- a/packages/project/lib/specifications/types/extensions/Task.js +++ b/packages/project/lib/specifications/types/extensions/Task.js @@ -1,6 +1,16 @@ -const path = require("path"); -const Extension = require("../../Extension"); +import path from "node:path"; +import Extension from "../../Extension.js"; +import {pathToFileURL} from "node:url"; +/** + * Task + * + * @public + * @class + * @alias @ui5/project/specifications/types/extensions/Task + * @extends @ui5/project/specifications/Extension + * @hideconstructor + */ class Task extends Extension { constructor(parameters) { super(parameters); @@ -10,9 +20,10 @@ class Task extends Extension { /** * @public */ - getTask() { + async getTask() { const taskPath = path.join(this.getPath(), this._config.task.path); - return require(taskPath); + const {default: task} = await import(pathToFileURL(taskPath)); + return task; } /* === Internals === */ /** @@ -27,4 +38,4 @@ class Task extends Extension { } } -module.exports = Task; +export default Task; diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 44c51b455d3..6636e7dbb5c 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -1,6 +1,8 @@ -const path = require("path"); -const log = require("@ui5/logger").getLogger("ui5Framework:AbstractResolver"); -const semver = require("semver"); +import path from "node:path"; +import os from "node:os"; +import logger from "@ui5/logger"; +const log = logger.getLogger("ui5Framework:AbstractResolver"); +import semver from "semver"; // Matches Semantic Versioning 2.0.0 versions // https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string @@ -18,9 +20,11 @@ const VERSION_RANGE_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)$/; /** * Abstract Resolver * - * @public * @abstract - * @memberof module:@ui5/project.ui5Framework + * @public + * @class + * @alias @ui5/project/ui5Framework/AbstractResolver + * @hideconstructor */ class AbstractResolver { /** @@ -39,7 +43,7 @@ class AbstractResolver { throw new Error(`AbstractResolver: Missing parameter "version"`); } - this._ui5HomeDir = ui5HomeDir ? path.resolve(ui5HomeDir) : path.join(require("os").homedir(), ".ui5"); + this._ui5HomeDir = ui5HomeDir ? path.resolve(ui5HomeDir) : path.join(os.homedir(), ".ui5"); this._cwd = cwd ? path.resolve(cwd) : process.cwd(); this._version = version; } @@ -106,14 +110,14 @@ class AbstractResolver { * }; * * @public - * @typedef {object} LibraryMetadataEntry + * @typedef {object} @ui5/project/ui5Framework/AbstractResolver~LibraryMetadataEntry * @property {string} id Identifier * @property {string} version Version * @property {string} path Path * @property {string[]} dependencies List of dependency ids * @property {string[]} optionalDependencies List of optional dependency ids - * @memberof module:@ui5/project.ui5Framework */ + /** * Install result * @@ -130,11 +134,12 @@ class AbstractResolver { * }; * * @public - * @typedef {object} ResolverInstallResult - * @property {object.} libraryMetadata + * @typedef {object} @ui5/project/ui5Framework/AbstractResolver~ResolverInstallResult + * @property {object.} libraryMetadata * Object containing all installed libraries with library name as key - * @memberof module:@ui5/project.ui5Framework */ + + /* eslint-enable max-len */ /** * Installs the provided libraries and their dependencies * @@ -151,7 +156,7 @@ class AbstractResolver { * * @public * @param {string[]} libraryNames List of library names to be installed - * @returns {module:@ui5/project.ui5Framework.ResolverInstallResult} + * @returns {@ui5/project/ui5Framework/AbstractResolver~ResolverInstallResult} * Resolves with an object containing the libraryMetadata */ async install(libraryNames) { @@ -211,9 +216,10 @@ class AbstractResolver { } } +/* istanbul ignore else */ if (process.env.NODE_ENV === "test") { // Export pattern for testing to be checked against JSON schema pattern AbstractResolver._SEMVER_VERSION_REGEXP = SEMVER_VERSION_REGEXP; } -module.exports = AbstractResolver; +export default AbstractResolver; diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js index 6f1d4942472..bdf0c18c168 100644 --- a/packages/project/lib/ui5Framework/Openui5Resolver.js +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -1,17 +1,17 @@ -const path = require("path"); - -const AbstractResolver = require("./AbstractResolver"); -const Installer = require("./npm/Installer"); +import path from "node:path"; +import os from "node:os"; +import AbstractResolver from "./AbstractResolver.js"; +import Installer from "./npm/Installer.js"; const OPENUI5_CORE_PACKAGE = "@openui5/sap.ui.core"; - /** * Resolver for the OpenUI5 framework * * @public - * @memberof module:@ui5/project.ui5Framework - * @augments module:@ui5/project.ui5Framework.AbstractResolver + * @class + * @alias @ui5/project/ui5Framework/Openui5Resolver + * @extends @ui5/project/ui5Framework/AbstractResolver */ class Openui5Resolver extends AbstractResolver { /** @@ -83,10 +83,10 @@ class Openui5Resolver extends AbstractResolver { cwd: cwd ? path.resolve(cwd) : process.cwd(), ui5HomeDir: ui5HomeDir ? path.resolve(ui5HomeDir) : - path.join(require("os").homedir(), ".ui5") + path.join(os.homedir(), ".ui5") }); return await installer.fetchPackageVersions({pkgName: OPENUI5_CORE_PACKAGE}); } } -module.exports = Openui5Resolver; +export default Openui5Resolver; diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index 8bcb58d1820..f297a57e5cc 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -1,8 +1,10 @@ -const path = require("path"); -const semver = require("semver"); -const AbstractResolver = require("./AbstractResolver"); -const Installer = require("./npm/Installer"); -const log = require("@ui5/logger").getLogger("ui5Framework:Sapui5Resolver"); +import path from "node:path"; +import os from "node:os"; +import semver from "semver"; +import AbstractResolver from "./AbstractResolver.js"; +import Installer from "./npm/Installer.js"; +import logger from "@ui5/logger"; +const log = logger.getLogger("ui5Framework:Sapui5Resolver"); const DIST_PKG_NAME = "@sapui5/distribution-metadata"; @@ -10,8 +12,9 @@ const DIST_PKG_NAME = "@sapui5/distribution-metadata"; * Resolver for the SAPUI5 framework * * @public - * @memberof module:@ui5/project.ui5Framework - * @augments module:@ui5/project.ui5Framework.AbstractResolver + * @class + * @alias @ui5/project/ui5Framework/Sapui5Resolver + * @extends @ui5/project/ui5Framework/AbstractResolver */ class Sapui5Resolver extends AbstractResolver { /** @@ -62,7 +65,7 @@ class Sapui5Resolver extends AbstractResolver { // dependency information for all OpenUI5 libraries. // Therefore we need to request those from the registry like it is done // for OpenUI5 projects. - const Openui5Resolver = require("./Openui5Resolver"); + const {default: Openui5Resolver} = await import("./Openui5Resolver.js"); const openui5Resolver = new Openui5Resolver({ cwd: this._cwd, version: metadata.version @@ -100,10 +103,10 @@ class Sapui5Resolver extends AbstractResolver { cwd: cwd ? path.resolve(cwd) : process.cwd(), ui5HomeDir: ui5HomeDir ? path.resolve(ui5HomeDir) : - path.join(require("os").homedir(), ".ui5") + path.join(os.homedir(), ".ui5") }); return await installer.fetchPackageVersions({pkgName: DIST_PKG_NAME}); } } -module.exports = Sapui5Resolver; +export default Sapui5Resolver; diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index ee35220bb9b..c72a6a7087f 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -1,10 +1,15 @@ -const path = require("path"); -const fs = require("graceful-fs"); -const {promisify} = require("util"); +import path from "node:path"; +import mkdirp from "mkdirp"; +import fs from "graceful-fs"; +import {promisify} from "node:util"; +import Registry from "./Registry.js"; +import _rimraf from "rimraf"; +const rimraf = promisify(_rimraf); const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const rename = promisify(fs.rename); -const log = require("@ui5/logger").getLogger("ui5Framework:npm:Installer"); +import logger from "@ui5/logger"; +const log = logger.getLogger("ui5Framework:npm:Installer"); class Installer { constructor({cwd, ui5HomeDir}) { @@ -26,7 +31,6 @@ class Installer { if (this._cachedRegistry) { return this._cachedRegistry; } - const Registry = require("./Registry"); return this._cachedRegistry = new Registry({ cwd: this._cwd, cacheDir: this._caCacheDir @@ -78,7 +82,6 @@ class Installer { // Check whether staging dir already exists and remove it if (await this._pathExists(stagingDir)) { - const rimraf = promisify(require("rimraf")); log.verbose(`Removing existing staging directory at ${stagingDir}...`); await rimraf(stagingDir); } @@ -88,7 +91,6 @@ class Installer { // never happen. However, we want to be *really* sure that there is no target // directory so that the rename operation won't have any no trouble. if (await this._pathExists(targetDir)) { - const rimraf = promisify(require("rimraf")); log.verbose(`Removing existing target directory at ${targetDir}...`); await rimraf(targetDir); } @@ -98,7 +100,7 @@ class Installer { // Do not create target dir itself to prevent EPERM error in following rename operation // (https://github.com/SAP/ui5-tooling/issues/487) - await require("mkdirp")(path.dirname(targetDir)); + await mkdirp(path.dirname(targetDir)); log.verbose(`Promoting staging directory from ${stagingDir} to ${targetDir}...`); await rename(stagingDir, targetDir); } else { @@ -131,11 +133,13 @@ class Installer { } async _synchronize({pkgName, version}, callback) { - const lockfile = require("lockfile"); + const { + default: lockfile + } = await import("lockfile"); const lock = promisify(lockfile.lock); const unlock = promisify(lockfile.unlock); const lockPath = this._getLockPath({pkgName, version}); - await require("mkdirp")(this._lockDir); + await mkdirp(this._lockDir); log.verbose("Locking " + lockPath); await lock(lockPath, { wait: 10000, @@ -164,4 +168,4 @@ class Installer { } } -module.exports = Installer; +export default Installer; diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index 696aa3edeae..199d48e5710 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -1,4 +1,5 @@ -const log = require("@ui5/logger").getLogger("ui5Framework:npm:Registry"); +import logger from "@ui5/logger"; +const log = logger.getLogger("ui5Framework:npm:Registry"); function logConfig(config, configName) { const configValue = config[configName]; @@ -9,26 +10,34 @@ function logConfig(config, configName) { class Registry { constructor({cwd, cacheDir}) { - this._pacote = require("pacote"); this._cwd = cwd; this._cacheDir = cacheDir; } - requestPackagePackument(pkgName) { - return this._pacote.packument(pkgName, this._getPacoteOptions()); + async requestPackagePackument(pkgName) { + const {pacote, pacoteOptions} = await this._getPacote(); + return pacote.packument(pkgName, pacoteOptions); } - requestPackageManifest(pkgName, version) { - return this._pacote.manifest(`${pkgName}@${version}`, this._getPacoteOptions()); + async requestPackageManifest(pkgName, version) { + const {pacote, pacoteOptions} = await this._getPacote(); + return pacote.manifest(`${pkgName}@${version}`, pacoteOptions); } async extractPackage(pkgName, version, targetDir) { + const {pacote, pacoteOptions} = await this._getPacote(); try { - await this._pacote.extract(`${pkgName}@${version}`, targetDir, this._getPacoteOptions()); + await pacote.extract(`${pkgName}@${version}`, targetDir, pacoteOptions); } catch (err) { throw new Error(`Failed to extract package ${pkgName}@${version}: ${err.message}`); } } - _getPacoteOptions() { + async _getPacote() { + return { + pacote: (await import("pacote")).default, + pacoteOptions: await this._getPacoteOptions() + }; + } + async _getPacoteOptions() { if (!this._npmConfig) { - const libnpmconfig = require("libnpmconfig"); + const {default: libnpmconfig} = await import("libnpmconfig"); const opts = { cache: this._cacheDir }; @@ -58,4 +67,4 @@ class Registry { } } -module.exports = Registry; +export default Registry; diff --git a/packages/project/lib/validation/ValidationError.js b/packages/project/lib/validation/ValidationError.js index 609891f782d..c437bf303a6 100644 --- a/packages/project/lib/validation/ValidationError.js +++ b/packages/project/lib/validation/ValidationError.js @@ -1,13 +1,14 @@ -const chalk = require("chalk"); -const escapeStringRegExp = require("escape-string-regexp"); +import chalk from "chalk"; +import escapeStringRegExp from "escape-string-regexp"; /** * Error class for validation of project configuration. * * @public + * @class + * @alias @ui5/project/validation/ValidationError + * @extends Error * @hideconstructor - * @augments Error - * @memberof module:@ui5/project.validation */ class ValidationError extends Error { constructor({errors, project, yaml}) { @@ -272,4 +273,4 @@ class ValidationError extends Error { } } -module.exports = ValidationError; +export default ValidationError; diff --git a/packages/project/lib/validation/validator.js b/packages/project/lib/validation/validator.js index bdee5de46da..7b7d46a1e5e 100644 --- a/packages/project/lib/validation/validator.js +++ b/packages/project/lib/validation/validator.js @@ -1,26 +1,21 @@ -const path = require("path"); -const {promisify} = require("util"); -const readFile = promisify(require("fs").readFile); +import {fileURLToPath} from "node:url"; +import {readFile} from "node:fs/promises"; async function loadSchema(schemaPath) { const filePath = schemaPath.replace("http://ui5.sap/schema/", ""); - const schemaFile = await readFile(path.join(__dirname, "schema", filePath), {encoding: "utf8"}); + const schemaFile = await readFile( + fileURLToPath(new URL(`./schema/${filePath}`, import.meta.url)), {encoding: "utf8"} + ); return JSON.parse(schemaFile); } -/** - * @private - * @memberof module:@ui5/project.validation - */ class Validator { - constructor() { - const Ajv = require("ajv"); + constructor({Ajv, ajvErrors}) { this.ajv = new Ajv({ allErrors: true, jsonPointers: true, loadSchema }); - const ajvErrors = require("ajv-errors"); ajvErrors(this.ajv); } @@ -39,10 +34,13 @@ class Validator { const fnValidate = await this._compileSchema(); const valid = fnValidate(config); if (!valid) { - const ValidationError = require("./ValidationError"); + // Read errors/schema from fnValidate before lazy loading ValidationError module. + // Otherwise they might be cleared already. + const {errors, schema} = fnValidate; + const {default: ValidationError} = await import("./ValidationError.js"); throw new ValidationError({ - errors: fnValidate.errors, - schema: fnValidate.schema, + errors, + schema, project, yaml }); @@ -53,33 +51,44 @@ class Validator { let validator; /** + * @module @ui5/project/validation/validator + * @description A collection of validation related APIs + * @public + */ + +/** + * Validates the given configuration. + * * @public - * @namespace - * @alias module:@ui5/project.validation.validator + * @function + * @static + * @param {object} options + * @param {object} options.config UI5 Configuration to validate + * @param {object} options.project Project information + * @param {string} options.project.id ID of the project + * @param {object} [options.yaml] YAML information + * @param {string} options.yaml.path Path of the YAML file + * @param {string} options.yaml.source Content of the YAML file + * @param {number} [options.yaml.documentIndex=0] Document index in case the YAML file contains multiple documents + * @throws {@ui5/project/validation/ValidationError} + * Rejects with a {@link @ui5/project/validation/ValidationError ValidationError} + * when the validation fails. + * @returns {Promise} Returns a Promise that resolves when the validation succeeds */ -module.exports = { +export async function validate(options) { + if (!validator) { + const {default: Ajv} = await import("ajv"); + const {default: ajvErrors} = await import("ajv-errors"); + validator = new Validator({Ajv, ajvErrors}); + } + await validator.validate(options); +} + +export { /** - * Validates the given configuration. + * For testing only! * - * @param {object} options - * @param {object} options.config UI5 Configuration to validate - * @param {object} options.project Project information - * @param {string} options.project.id ID of the project - * @param {object} [options.yaml] YAML information - * @param {string} options.yaml.path Path of the YAML file - * @param {string} options.yaml.source Content of the YAML file - * @param {number} [options.yaml.documentIndex=0] Document index in case the YAML file contains multiple documents - * @throws {module:@ui5/project.validation.ValidationError} - * Rejects with a {@link module:@ui5/project.validation.ValidationError ValidationError} - * when the validation fails. - * @returns {Promise} Returns a Promise that resolves when the validation succeeds - * @public + * @private */ - validate: async (options) => { - if (!validator) { - validator = new Validator(); - } - await validator.validate(options); - }, - _Validator: Validator // For testing only + Validator as _Validator }; diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b8044c1b61f..bc71ec50eba 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,9 +9,9 @@ "version": "3.0.0-alpha.9", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.11", - "@ui5/fs": "^3.0.0-alpha.6", - "@ui5/logger": "^3.0.1-alpha.2", + "@ui5/builder": "^3.0.0-alpha.12", + "@ui5/fs": "^3.0.0-alpha.7", + "@ui5/logger": "^3.0.1-alpha.3", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", @@ -31,7 +31,8 @@ "xml2js": "^0.4.23" }, "devDependencies": { - "ava": "^3.15.0", + "@istanbuljs/esm-loader-hook": "^0.2.0", + "ava": "^4.3.3", "chokidar-cli": "^2.1.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", @@ -40,16 +41,16 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.0.2", "eslint-plugin-jsdoc": "^37.6.3", + "esmock": "^2.0.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.3", "js-beautify": "^1.14.0", "jsdoc": "^3.6.7", - "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", - "sinon": "^11.1.2", + "sinon": "^14.0.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" }, @@ -261,6 +262,15 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz", + "integrity": "sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-simple-access": { "version": "7.18.2", "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", @@ -463,27 +473,6 @@ "node": ">=6.9.0" } }, - "node_modules/@concordance/react": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@concordance/react/-/react-2.0.0.tgz", - "integrity": "sha512-huLSkUuM2/P+U0uy2WwlKuixMsTODD8p4JVQBI4VKeopkiN0C7M3N9XYVawb4M+4spN5RrO/eLhk7KoQX6nsfA==", - "dev": true, - "dependencies": { - "arrify": "^1.0.1" - }, - "engines": { - "node": ">=6.12.3 <7 || >=8.9.4 <9 || >=10.0.0" - } - }, - "node_modules/@concordance/react/node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@es-joy/jsdoccomment": { "version": "0.20.1", "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.20.1.tgz", @@ -565,6 +554,22 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, + "node_modules/@istanbuljs/esm-loader-hook": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/esm-loader-hook/-/esm-loader-hook-0.2.0.tgz", + "integrity": "sha512-pw8o3zWCen4sgiNJq69Pcl1Og7Bx4WP3ho7py2FLqZ56Hnz812yN2WwdViCx9tn9U5EWtzF4aqHDRnD7vDs92g==", + "dev": true, + "dependencies": { + "@babel/core": "^7.8.7", + "@istanbuljs/load-nyc-config": "^1.1.0", + "@istanbuljs/schema": "^0.1.3", + "babel-plugin-istanbul": "^6.0.0", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=16.12.0" + } + }, "node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -760,15 +765,6 @@ "node": ">= 8" } }, - "node_modules/@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/@sinonjs/commons": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", @@ -779,9 +775,9 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz", - "integrity": "sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==", + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz", + "integrity": "sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==", "dev": true, "dependencies": { "@sinonjs/commons": "^1.7.0" @@ -804,18 +800,6 @@ "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", "dev": true }, - "node_modules/@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "dev": true, - "dependencies": { - "defer-to-connect": "^1.0.1" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/@tokenizer/token": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", @@ -865,13 +849,13 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.11", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.11.tgz", - "integrity": "sha512-lBSahG4bH1ac1/NJxE5YwiooqT5uqEoWXW0//EGFxv+krt010NbiB4sPM6G5qqOwP3t5Yp5/2+ET0vrnyjh80w==", + "version": "3.0.0-alpha.12", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.12.tgz", + "integrity": "sha512-sl7K2ygqZq3eeQK0hXIZqXgjMg5hQ3UA2/hmDd2Ry0UgzD6FNSj8VZSzpft1n533huD2BxjmiRhHCqxo9DM6UQ==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-alpha.6", - "@ui5/logger": "^3.0.1-alpha.2", + "@ui5/fs": "^3.0.0-alpha.7", + "@ui5/logger": "^3.0.1-alpha.3", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^4.0.0", @@ -894,11 +878,11 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-alpha.6", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.6.tgz", - "integrity": "sha512-7gBRYtUHLnmtf/5hp7YKJlER9rJ6XPoNn2BjaLOKpg/eoHluUigLPtqNqzrmhaBJ0HJ2LVURaJ/xK7eNUIJNVA==", + "version": "3.0.0-alpha.7", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.7.tgz", + "integrity": "sha512-lgkCG6YcJOMTK1BqbjhYYK/0KU7iH2MGOeweuOfvJNMjAkh/8w1yXHhMplD+5zz3H+pLir4rZh+/PlqyJ/bPmQ==", "dependencies": { - "@ui5/logger": "^3.0.1-alpha.2", + "@ui5/logger": "^3.0.1-alpha.3", "clone": "^2.1.0", "escape-string-regexp": "^4.0.0", "globby": "^11.1.0", @@ -915,9 +899,9 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.1-alpha.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.2.tgz", - "integrity": "sha512-xYrLuFYXWJvLwNA60gWqX203ZjDIYOH5xEpqLhl1QViFLNiByzNazj78ra9wueCIHNNbg8AMsyjC6krBVoYcKw==", + "version": "3.0.1-alpha.3", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", + "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", "dependencies": { "npmlog": "^6.0.2" }, @@ -1087,15 +1071,6 @@ "ajv": ">=5.0.0" } }, - "node_modules/ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dev": true, - "dependencies": { - "string-width": "^4.1.0" - } - }, "node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -1105,12 +1080,12 @@ } }, "node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.1.1.tgz", + "integrity": "sha512-qDOv24WjnYuL+wbwHdlsYZFy+cgPtrYw0Tn7GLORicQp9BkQLzrgI3Pm4VyR9ERZ41YTn7KlMPuL1n05WdZvmg==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" @@ -1213,15 +1188,6 @@ "node": ">=8" } }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", @@ -1234,73 +1200,324 @@ } }, "node_modules/ava": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.15.0.tgz", - "integrity": "sha512-HGAnk1SHPk4Sx6plFAUkzV/XC1j9+iQhOzt4vBly18/yo0AV8Oytx7mtJd/CR8igCJ5p160N/Oo/cNJi2uSeWA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/ava/-/ava-4.3.3.tgz", + "integrity": "sha512-9Egq/d9R74ExrWohHeqUlexjDbgZJX5jA1Wq4KCTqc3wIfpGEK79zVy4rBtofJ9YKIxs4PzhJ8BgbW5PlAYe6w==", "dev": true, "dependencies": { - "@concordance/react": "^2.0.0", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "ansi-styles": "^5.0.0", + "acorn": "^8.7.1", + "acorn-walk": "^8.2.0", + "ansi-styles": "^6.1.0", "arrgv": "^1.0.2", - "arrify": "^2.0.1", - "callsites": "^3.1.0", - "chalk": "^4.1.0", - "chokidar": "^3.4.3", + "arrify": "^3.0.0", + "callsites": "^4.0.0", + "cbor": "^8.1.0", + "chalk": "^5.0.1", + "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^2.0.0", + "ci-info": "^3.3.1", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", - "cli-cursor": "^3.1.0", - "cli-truncate": "^2.1.0", - "code-excerpt": "^3.0.0", + "cli-truncate": "^3.1.0", + "code-excerpt": "^4.0.0", "common-path-prefix": "^3.0.0", - "concordance": "^5.0.1", - "convert-source-map": "^1.7.0", + "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", - "debug": "^4.3.1", - "del": "^6.0.0", - "emittery": "^0.8.0", - "equal-length": "^1.0.0", - "figures": "^3.2.0", - "globby": "^11.0.1", - "ignore-by-default": "^2.0.0", - "import-local": "^3.0.2", - "indent-string": "^4.0.0", + "debug": "^4.3.4", + "del": "^6.1.1", + "emittery": "^0.11.0", + "figures": "^4.0.1", + "globby": "^13.1.1", + "ignore-by-default": "^2.1.0", + "indent-string": "^5.0.0", "is-error": "^2.2.2", "is-plain-object": "^5.0.0", "is-promise": "^4.0.0", - "lodash": "^4.17.20", - "matcher": "^3.0.0", - "md5-hex": "^3.0.1", - "mem": "^8.0.0", + "matcher": "^5.0.0", + "mem": "^9.0.2", "ms": "^2.1.3", - "ora": "^5.2.0", - "p-event": "^4.2.0", - "p-map": "^4.0.0", - "picomatch": "^2.2.2", - "pkg-conf": "^3.1.0", - "plur": "^4.0.0", + "p-event": "^5.0.1", + "p-map": "^5.4.0", + "picomatch": "^2.3.1", + "pkg-conf": "^4.0.0", + "plur": "^5.1.0", "pretty-ms": "^7.0.1", - "read-pkg": "^5.2.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", - "source-map-support": "^0.5.19", - "stack-utils": "^2.0.3", - "strip-ansi": "^6.0.0", - "supertap": "^2.0.0", + "stack-utils": "^2.0.5", + "strip-ansi": "^7.0.1", + "supertap": "^3.0.1", "temp-dir": "^2.0.0", - "trim-off-newlines": "^1.0.1", - "update-notifier": "^5.0.1", - "write-file-atomic": "^3.0.3", - "yargs": "^16.2.0" + "write-file-atomic": "^4.0.1", + "yargs": "^17.5.1" }, "bin": { - "ava": "cli.js" + "ava": "entrypoints/cli.mjs" + }, + "engines": { + "node": ">=12.22 <13 || >=14.17 <15 || >=16.4 <17 || >=18" + }, + "peerDependencies": { + "@ava/typescript": "*" + }, + "peerDependenciesMeta": { + "@ava/typescript": { + "optional": true + } + } + }, + "node_modules/ava/node_modules/aggregate-error": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "dev": true, + "dependencies": { + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" + }, + "engines": { + "node": ">=12" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ava/node_modules/arrify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", + "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/callsites": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.0.0.tgz", + "integrity": "sha512-y3jRROutgpKdz5vzEhWM34TidDU8vkJppF8dszITeb1PQmSqV3DTxyV8G/lyO/DNvtE1YTedehmw9MPZsCBHxQ==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/chalk": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", + "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ava/node_modules/clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/globby": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", + "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/globby/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/p-map": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "dev": true, + "dependencies": { + "aggregate-error": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/ava/node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/ava/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ava/node_modules/yargs": { + "version": "17.5.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", + "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/ava/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, "engines": { - "node": ">=10.18.0 <11 || >=12.14.0 <12.17.0 || >=12.17.0 <13 || >=14.0.0 <15 || >=15" + "node": ">=12" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", + "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" } }, "node_modules/balanced-match": { @@ -1308,26 +1525,6 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -1337,17 +1534,6 @@ "node": ">=8" } }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, "node_modules/bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", @@ -1364,40 +1550,6 @@ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, - "node_modules/boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", - "dev": true, - "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/boxen/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1447,30 +1599,6 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, "node_modules/buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -1546,54 +1674,6 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, - "node_modules/cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "dev": true, - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cacheable-request/node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dev": true, - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cacheable-request/node_modules/http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true - }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/caching-transform": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", @@ -1683,6 +1763,18 @@ "node": ">= 10" } }, + "node_modules/cbor": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-8.1.0.tgz", + "integrity": "sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==", + "dev": true, + "dependencies": { + "nofilter": "^3.1.0" + }, + "engines": { + "node": ">=12.19" + } + }, "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -1855,15 +1947,6 @@ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, - "node_modules/chokidar-cli/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, "node_modules/chokidar-cli/node_modules/is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -1953,9 +2036,9 @@ "dev": true }, "node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.4.0.tgz", + "integrity": "sha512-t5QdPT5jq3o262DOQ8zA6E1tlH2upmUc4Hlvrbx1pGYJuiiHl7O7rvVNI+l8HTVhd/q3Qc9vqimkNk5yiXsAug==", "dev": true }, "node_modules/ci-parallel-vars": { @@ -1982,56 +2065,70 @@ "node": ">=0.10.0" } }, - "node_modules/cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "node_modules/cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", "dev": true, + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "node_modules/cli-truncate/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/cli-spinners": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", - "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", + "node_modules/cli-truncate/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/cli-truncate/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, "engines": { - "node": ">=6" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "node_modules/cli-truncate/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", "dev": true, "dependencies": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" + "ansi-regex": "^6.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, "node_modules/cliui": { @@ -2053,25 +2150,16 @@ "node": ">=0.8" } }, - "node_modules/clone-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha512-yjLXh88P599UOyPTFX0POsd7WxnbsVsGohcwzHOLspIhhpalPw1BcqED8NblyZLKcGrL8dTgMlcaZxV2jAD41Q==", - "dev": true, - "dependencies": { - "mimic-response": "^1.0.0" - } - }, "node_modules/code-excerpt": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-3.0.0.tgz", - "integrity": "sha512-VHNTVhd7KsLGOqfX3SyeO8RyYPMp1GJOg194VITk04WMYCv4plV68YWe6TJZxd9MhobjtpMRnVky01gqZsalaw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-4.0.0.tgz", + "integrity": "sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==", "dev": true, "dependencies": { - "convert-to-spaces": "^1.0.1" + "convert-to-spaces": "^2.0.1" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, "node_modules/color-convert": { @@ -2196,23 +2284,6 @@ "proto-list": "~1.2.1" } }, - "node_modules/configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", - "dev": true, - "dependencies": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", @@ -2228,12 +2299,12 @@ } }, "node_modules/convert-to-spaces": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", - "integrity": "sha512-cj09EBuObp9gZNQCzc7hByQyrs6jVGE+o9kSJmeUoj+GiPiJvi5LYqEH/Hmme4+MTLHM+Ejtq+FChpjjEnsPdQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-2.0.1.tgz", + "integrity": "sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==", "dev": true, "engines": { - "node": ">= 4" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, "node_modules/copy-concurrently": { @@ -2329,15 +2400,6 @@ "node": ">= 8" } }, - "node_modules/crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/css": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", @@ -2456,34 +2518,13 @@ "engines": { "node": ">=0.10.0" } - }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", - "dev": true, - "dependencies": { - "mimic-response": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, + }, + "node_modules/decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", "engines": { - "node": ">=4.0.0" + "node": ">=0.10" } }, "node_modules/deep-is": { @@ -2504,30 +2545,6 @@ "node": ">=8" } }, - "node_modules/defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", - "dev": true, - "dependencies": { - "clone": "^1.0.2" - } - }, - "node_modules/defaults/node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", - "dev": true - }, "node_modules/del": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", @@ -2709,18 +2726,6 @@ "url": "https://github.com/fb55/domutils?sponsor=1" } }, - "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "dev": true, - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -2766,12 +2771,6 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha512-CEj8FwwNA4cVH2uFCoHUrmojhYh1vmCdOaneKJXwkeY1i9jnlslVo9dx+hQ5Hl9GnH/Bwy/IjxAyOePyPKYnzA==", - "dev": true - }, "node_modules/duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", @@ -2810,6 +2809,12 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, "node_modules/editorconfig": { "version": "0.15.3", "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", @@ -2841,12 +2846,12 @@ "dev": true }, "node_modules/emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.11.0.tgz", + "integrity": "sha512-S/7tzL6v5i+4iJd627Nhv9cLFIo5weAIlGccqJFpnBoDB8U1TF2k5tez4J/QNuxyyhWuFqHg1L84Kd3m7iXg6g==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sindresorhus/emittery?sponsor=1" @@ -2893,15 +2898,6 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/equal-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", - "integrity": "sha512-TK2m7MvWPt/v3dan0BCNp99pytIE5UGrUj7F0KZirNX8xz8fDFUAZfgm8uB5FuQq9u0sMeDocYBfEhsd1nwGoA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/err-code": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", @@ -2943,15 +2939,6 @@ "node": ">=6" } }, - "node_modules/escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -3278,6 +3265,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/esmock": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.0.tgz", + "integrity": "sha512-dMnO7V+Y2M7pqoAzn42rXfyc3tZvzhK8T9rxAPxYmmxT1imsOv4A02eaHoqXOn2TBd1JAv794mJLWIV64zibQQ==", + "dev": true, + "dependencies": { + "resolvewithplus": "^1.0.0" + }, + "engines": { + "node": ">=14.16.0" + } + }, "node_modules/espree": { "version": "9.3.2", "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz", @@ -3430,27 +3429,31 @@ "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" }, "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/figures/-/figures-4.0.1.tgz", + "integrity": "sha512-rElJwkA/xS04Vfg+CaZodpso7VqBknOYbzi6I76hI4X80RUjkSxO2oAyPmGbuXUppywjqndOrQDl817hDnI++w==", "dev": true, "dependencies": { - "escape-string-regexp": "^1.0.5" + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/figures/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, "engines": { - "node": ">=0.8.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/file-entry-cache": { @@ -3755,10 +3758,13 @@ } }, "node_modules/get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } }, "node_modules/get-package-type": { "version": "0.1.0", @@ -3819,30 +3825,6 @@ "node": ">= 6" } }, - "node_modules/global-dirs": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", - "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", - "dev": true, - "dependencies": { - "ini": "2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/global-dirs/node_modules/ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", @@ -3871,28 +3853,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "dev": true, - "dependencies": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - }, - "engines": { - "node": ">=8.6" - } - }, "node_modules/graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", @@ -3952,15 +3912,6 @@ "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" }, - "node_modules/has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/hasha": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", @@ -4147,34 +4098,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/import-modules": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-modules/-/import-modules-2.1.0.tgz", @@ -4268,18 +4191,6 @@ "node": ">=8" } }, - "node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "dependencies": { - "ci-info": "^2.0.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, "node_modules/is-core-module": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", @@ -4339,43 +4250,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", - "dev": true, - "dependencies": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -4384,15 +4258,6 @@ "node": ">=0.12.0" } }, - "node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/is-path-cwd": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", @@ -4454,12 +4319,12 @@ "dev": true }, "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -4486,12 +4351,6 @@ "node": ">=8" } }, - "node_modules/is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", - "dev": true - }, "node_modules/isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", @@ -4728,12 +4587,6 @@ "node": ">=4" } }, - "node_modules/json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", - "dev": true - }, "node_modules/json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -4796,15 +4649,6 @@ "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", "dev": true }, - "node_modules/keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "dev": true, - "dependencies": { - "json-buffer": "3.0.0" - } - }, "node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -4822,18 +4666,6 @@ "node": ">=14.14.0" } }, - "node_modules/latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "dev": true, - "dependencies": { - "package-json": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/less-openui5": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.2.tgz", @@ -4886,50 +4718,15 @@ } }, "node_modules/load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-7.0.1.tgz", + "integrity": "sha512-Gnxj3ev3mB5TkVBGad0JM6dmLiQL+o0t23JPBZ9sd+yvSLk05mFoqKBw5N8gbbkU4TNXyqCgIrl/VM17OgUIgQ==", "dev": true, - "dependencies": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - }, "engines": { - "node": ">=6" - } - }, - "node_modules/load-json-file/node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", - "dev": true, - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/load-json-file/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/load-json-file/node_modules/type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true, - "engines": { - "node": ">=6" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/locate-path": { @@ -4987,22 +4784,6 @@ "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", "dev": true }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -5015,15 +4796,6 @@ "loose-envify": "cli.js" } }, - "node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/lru-cache": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", @@ -5164,15 +4936,30 @@ } }, "node_modules/matcher": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", - "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-5.0.0.tgz", + "integrity": "sha512-s2EMBOWtXFc8dgqvoAzKJXxNHibcdJMV0gwqKUaw9E2JBJuGUK7DrNKrA6g/i+v72TT16+6sVm5mS3thaMLQUw==", "dev": true, "dependencies": { - "escape-string-regexp": "^4.0.0" + "escape-string-regexp": "^5.0.0" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/matcher/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/md5-hex": { @@ -5193,16 +4980,16 @@ "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" }, "node_modules/mem": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz", - "integrity": "sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/mem/-/mem-9.0.2.tgz", + "integrity": "sha512-F2t4YIv9XQUBHt6AOJ0y7lSmP1+cY7Fm1DRh9GClTGzKST7UWLMx6ly9WZdLH/G/ppM5RL4MlQfRT71ri9t19A==", "dev": true, "dependencies": { "map-age-cleaner": "^0.1.3", - "mimic-fn": "^3.1.0" + "mimic-fn": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=12.20" }, "funding": { "url": "https://github.com/sindresorhus/mem?sponsor=1" @@ -5276,28 +5063,22 @@ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mimic-fn": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", - "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", - "dev": true, + "mime": "cli.js" + }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", "dev": true, "engines": { - "node": ">=4" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/min-indent": { @@ -5401,31 +5182,6 @@ "node": ">=10" } }, - "node_modules/mock-require": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", - "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", - "dev": true, - "dependencies": { - "get-caller-file": "^1.0.2", - "normalize-path": "^2.1.1" - }, - "engines": { - "node": ">=4.3.0" - } - }, - "node_modules/mock-require/node_modules/normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", - "dev": true, - "dependencies": { - "remove-trailing-separator": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", @@ -5552,6 +5308,15 @@ "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", "dev": true }, + "node_modules/nofilter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", + "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==", + "dev": true, + "engines": { + "node": ">=12.19" + } + }, "node_modules/nopt": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", @@ -5595,15 +5360,6 @@ "node": ">=0.10.0" } }, - "node_modules/normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/npm-bundled": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", @@ -5833,15 +5589,6 @@ "node": ">=8" } }, - "node_modules/nyc/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, "node_modules/nyc/node_modules/locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -5948,30 +5695,6 @@ "wrappy": "1" } }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/onetime/node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/open": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", @@ -6024,29 +5747,6 @@ "node": ">= 0.8.0" } }, - "node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", @@ -6072,15 +5772,6 @@ "os-tmpdir": "^1.0.0" } }, - "node_modules/p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", @@ -6091,29 +5782,20 @@ } }, "node_modules/p-event": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", - "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-5.0.1.tgz", + "integrity": "sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==", "dev": true, "dependencies": { - "p-timeout": "^3.1.0" + "p-timeout": "^5.0.2" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/p-limit": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", @@ -6155,15 +5837,15 @@ } }, "node_modules/p-timeout": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", - "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", + "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", "dev": true, - "dependencies": { - "p-finally": "^1.0.0" - }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-try": { @@ -6189,30 +5871,6 @@ "node": ">=8" } }, - "node_modules/package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "dev": true, - "dependencies": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/package-json/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/pacote": { "version": "9.5.12", "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.12.tgz", @@ -6469,26 +6127,102 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "node_modules/pkg-conf": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-4.0.0.tgz", + "integrity": "sha512-7dmgi4UY4qk+4mj5Cd8v/GExPo0K+SlY+hulOSdfZ/T6jVH6//y7NtzZo5WrfhDBxuQ0jCa7fLZmNaNh7EWL/w==", "dev": true, + "dependencies": { + "find-up": "^6.0.0", + "load-json-file": "^7.0.0" + }, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pkg-conf": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", + "node_modules/pkg-conf/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", "dev": true, "dependencies": { - "find-up": "^3.0.0", - "load-json-file": "^5.2.0" + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" }, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/locate-path": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.1.tgz", + "integrity": "sha512-vJXaRMJgRVD3+cUZs3Mncj2mxpt5mP0EmNOsxRSZRMlbqjvxzDEOIUWXGmavo0ZC9+tNZCBLQ66reA11nbpHZg==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-conf/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/pkg-conf/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/pkg-dir": { @@ -6559,15 +6293,15 @@ } }, "node_modules/plur": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/plur/-/plur-4.0.0.tgz", - "integrity": "sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/plur/-/plur-5.1.0.tgz", + "integrity": "sha512-VP/72JeXqak2KiOzjgKtQen5y3IZHn+9GOuLDafPv0eXa47xq0At93XahYBs26MsifCQ4enGKwbjBTKgb9QJXg==", "dev": true, "dependencies": { - "irregular-plurals": "^3.2.0" + "irregular-plurals": "^3.3.0" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -6606,15 +6340,6 @@ "node": ">= 0.8.0" } }, - "node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/pretty-data": { "version": "0.40.0", "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", @@ -6736,18 +6461,6 @@ "node": ">=6" } }, - "node_modules/pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", - "dev": true, - "dependencies": { - "escape-goat": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/query-ast": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.4.tgz", @@ -6793,30 +6506,6 @@ "node": ">=8" } }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/rc/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/read-pkg": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", @@ -6962,30 +6651,6 @@ "node": ">=0.1.14" } }, - "node_modules/registry-auth-token": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", - "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", - "dev": true, - "dependencies": { - "rc": "^1.2.8" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", - "dev": true, - "dependencies": { - "rc": "^1.2.8" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", @@ -6998,12 +6663,6 @@ "node": ">=4" } }, - "node_modules/remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", - "dev": true - }, "node_modules/replacestream": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", @@ -7124,26 +6783,13 @@ "node": ">=4" } }, - "node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", - "dev": true, - "dependencies": { - "lowercase-keys": "^1.0.0" - } - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "node_modules/resolvewithplus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolvewithplus/-/resolvewithplus-1.0.0.tgz", + "integrity": "sha512-rjEDkAH90XUQb5RN/+yxbcngIGTzusussygz7Cx9UC63ESsgOgsHhpnvUJKEJQLN/6M/9xPMGkAPEh21CKErsQ==", "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, "engines": { - "node": ">=8" + "node": ">=12.16.0" } }, "node_modules/retry": { @@ -7265,38 +6911,17 @@ }, "bin": { "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", - "dev": true - }, - "node_modules/semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", - "dev": true, - "dependencies": { - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/semver-diff/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "dev": true + }, "node_modules/semver/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -7378,16 +7003,16 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sinon": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-11.1.2.tgz", - "integrity": "sha512-59237HChms4kg7/sXhiRcUzdSkKuydDeTiamT/jesUVHshBgL8XAmhgFo0GfK6RruMDM/iRSij1EybmMog9cJw==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-14.0.0.tgz", + "integrity": "sha512-ugA6BFmE+WrJdh0owRZHToLd32Uw3Lxq6E6LtNRU+xTVBefx632h03Q7apXWRsRdZAJ41LB8aUfn2+O4jsDNMw==", "dev": true, "dependencies": { "@sinonjs/commons": "^1.8.3", - "@sinonjs/fake-timers": "^7.1.2", - "@sinonjs/samsam": "^6.0.2", + "@sinonjs/fake-timers": "^9.1.2", + "@sinonjs/samsam": "^6.1.1", "diff": "^5.0.0", - "nise": "^5.1.0", + "nise": "^5.1.1", "supports-color": "^7.2.0" }, "funding": { @@ -7404,52 +7029,33 @@ } }, "node_modules/slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/slice-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/slice-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", @@ -7732,19 +7338,30 @@ } }, "node_modules/supertap": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supertap/-/supertap-2.0.0.tgz", - "integrity": "sha512-jRzcXlCeDYvKoZGA5oRhYyR3jUIYu0enkSxtmAgHRlD7HwrovTpH4bDSi0py9FtuA8si9cW/fKommJHuaoDHJA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/supertap/-/supertap-3.0.1.tgz", + "integrity": "sha512-u1ZpIBCawJnO+0QePsEiOknOfCRq0yERxiAchT0i4li0WHNUJbf0evXXSXOcCAR4M8iMDoajXYmstm/qO81Isw==", "dev": true, "dependencies": { - "arrify": "^2.0.1", - "indent-string": "^4.0.0", - "js-yaml": "^3.14.0", + "indent-string": "^5.0.0", + "js-yaml": "^3.14.1", "serialize-error": "^7.0.1", - "strip-ansi": "^6.0.0" + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/supertap/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, "node_modules/supertap/node_modules/argparse": { @@ -7756,6 +7373,18 @@ "sprintf-js": "~1.0.2" } }, + "node_modules/supertap/node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/supertap/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -7769,6 +7398,21 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/supertap/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -8250,15 +7894,6 @@ "node": ">=4" } }, - "node_modules/to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -8302,15 +7937,6 @@ "node": ">=8" } }, - "node_modules/trim-off-newlines": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.3.tgz", - "integrity": "sha512-kh6Tu6GbeSNMGfrrZh6Bb/4ZEHV1QlB4xNDBeog8Y9/QwFlKTRyWvY3Fs9tRDAMZliVUwieMgEdIeL/FtqjkJg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/tslib": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", @@ -8385,46 +8011,6 @@ "imurmurhash": "^0.1.4" } }, - "node_modules/unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "dev": true, - "dependencies": { - "crypto-random-string": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", - "dev": true, - "dependencies": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/yeoman/update-notifier?sponsor=1" - } - }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -8433,18 +8019,6 @@ "punycode": "^2.1.0" } }, - "node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "dev": true, - "dependencies": { - "prepend-http": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -8482,15 +8056,6 @@ "builtins": "^1.0.3" } }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "dependencies": { - "defaults": "^1.0.3" - } - }, "node_modules/well-known-symbols": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-2.0.0.tgz", @@ -8529,18 +8094,6 @@ "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "node_modules/widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, - "dependencies": { - "string-width": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -8617,15 +8170,6 @@ "typedarray-to-buffer": "^3.1.5" } }, - "node_modules/xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/xml2js": { "version": "0.4.23", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", @@ -8731,15 +8275,6 @@ "node": ">=6" } }, - "node_modules/yargs/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, "node_modules/yargs/node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", @@ -8934,6 +8469,12 @@ "@babel/types": "^7.18.0" } }, + "@babel/helper-plugin-utils": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz", + "integrity": "sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==", + "dev": true + }, "@babel/helper-simple-access": { "version": "7.18.2", "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", @@ -9082,23 +8623,6 @@ "to-fast-properties": "^2.0.0" } }, - "@concordance/react": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@concordance/react/-/react-2.0.0.tgz", - "integrity": "sha512-huLSkUuM2/P+U0uy2WwlKuixMsTODD8p4JVQBI4VKeopkiN0C7M3N9XYVawb4M+4spN5RrO/eLhk7KoQX6nsfA==", - "dev": true, - "requires": { - "arrify": "^1.0.1" - }, - "dependencies": { - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true - } - } - }, "@es-joy/jsdoccomment": { "version": "0.20.1", "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.20.1.tgz", @@ -9161,6 +8685,19 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, + "@istanbuljs/esm-loader-hook": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/esm-loader-hook/-/esm-loader-hook-0.2.0.tgz", + "integrity": "sha512-pw8o3zWCen4sgiNJq69Pcl1Og7Bx4WP3ho7py2FLqZ56Hnz812yN2WwdViCx9tn9U5EWtzF4aqHDRnD7vDs92g==", + "dev": true, + "requires": { + "@babel/core": "^7.8.7", + "@istanbuljs/load-nyc-config": "^1.1.0", + "@istanbuljs/schema": "^0.1.3", + "babel-plugin-istanbul": "^6.0.0", + "test-exclude": "^6.0.0" + } + }, "@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -9313,12 +8850,6 @@ "fastq": "^1.6.0" } }, - "@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "dev": true - }, "@sinonjs/commons": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", @@ -9329,9 +8860,9 @@ } }, "@sinonjs/fake-timers": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz", - "integrity": "sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==", + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz", + "integrity": "sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.0" @@ -9354,15 +8885,6 @@ "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", "dev": true }, - "@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "dev": true, - "requires": { - "defer-to-connect": "^1.0.1" - } - }, "@tokenizer/token": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", @@ -9412,13 +8934,13 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.11", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.11.tgz", - "integrity": "sha512-lBSahG4bH1ac1/NJxE5YwiooqT5uqEoWXW0//EGFxv+krt010NbiB4sPM6G5qqOwP3t5Yp5/2+ET0vrnyjh80w==", + "version": "3.0.0-alpha.12", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.12.tgz", + "integrity": "sha512-sl7K2ygqZq3eeQK0hXIZqXgjMg5hQ3UA2/hmDd2Ry0UgzD6FNSj8VZSzpft1n533huD2BxjmiRhHCqxo9DM6UQ==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-alpha.6", - "@ui5/logger": "^3.0.1-alpha.2", + "@ui5/fs": "^3.0.0-alpha.7", + "@ui5/logger": "^3.0.1-alpha.3", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^4.0.0", @@ -9437,11 +8959,11 @@ } }, "@ui5/fs": { - "version": "3.0.0-alpha.6", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.6.tgz", - "integrity": "sha512-7gBRYtUHLnmtf/5hp7YKJlER9rJ6XPoNn2BjaLOKpg/eoHluUigLPtqNqzrmhaBJ0HJ2LVURaJ/xK7eNUIJNVA==", + "version": "3.0.0-alpha.7", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.7.tgz", + "integrity": "sha512-lgkCG6YcJOMTK1BqbjhYYK/0KU7iH2MGOeweuOfvJNMjAkh/8w1yXHhMplD+5zz3H+pLir4rZh+/PlqyJ/bPmQ==", "requires": { - "@ui5/logger": "^3.0.1-alpha.2", + "@ui5/logger": "^3.0.1-alpha.3", "clone": "^2.1.0", "escape-string-regexp": "^4.0.0", "globby": "^11.1.0", @@ -9454,9 +8976,9 @@ } }, "@ui5/logger": { - "version": "3.0.1-alpha.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.2.tgz", - "integrity": "sha512-xYrLuFYXWJvLwNA60gWqX203ZjDIYOH5xEpqLhl1QViFLNiByzNazj78ra9wueCIHNNbg8AMsyjC6krBVoYcKw==", + "version": "3.0.1-alpha.3", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", + "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", "requires": { "npmlog": "^6.0.2" } @@ -9596,24 +9118,15 @@ "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", "requires": {} }, - "ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dev": true, - "requires": { - "string-width": "^4.1.0" - } - }, "ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, "ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.1.1.tgz", + "integrity": "sha512-qDOv24WjnYuL+wbwHdlsYZFy+cgPtrYw0Tn7GLORicQp9BkQLzrgI3Pm4VyR9ERZ41YTn7KlMPuL1n05WdZvmg==", "dev": true }, "anymatch": { @@ -9689,79 +9202,229 @@ "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true }, - "astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true - }, "atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.15.0.tgz", - "integrity": "sha512-HGAnk1SHPk4Sx6plFAUkzV/XC1j9+iQhOzt4vBly18/yo0AV8Oytx7mtJd/CR8igCJ5p160N/Oo/cNJi2uSeWA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/ava/-/ava-4.3.3.tgz", + "integrity": "sha512-9Egq/d9R74ExrWohHeqUlexjDbgZJX5jA1Wq4KCTqc3wIfpGEK79zVy4rBtofJ9YKIxs4PzhJ8BgbW5PlAYe6w==", "dev": true, "requires": { - "@concordance/react": "^2.0.0", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "ansi-styles": "^5.0.0", + "acorn": "^8.7.1", + "acorn-walk": "^8.2.0", + "ansi-styles": "^6.1.0", "arrgv": "^1.0.2", - "arrify": "^2.0.1", - "callsites": "^3.1.0", - "chalk": "^4.1.0", - "chokidar": "^3.4.3", + "arrify": "^3.0.0", + "callsites": "^4.0.0", + "cbor": "^8.1.0", + "chalk": "^5.0.1", + "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^2.0.0", + "ci-info": "^3.3.1", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", - "cli-cursor": "^3.1.0", - "cli-truncate": "^2.1.0", - "code-excerpt": "^3.0.0", + "cli-truncate": "^3.1.0", + "code-excerpt": "^4.0.0", "common-path-prefix": "^3.0.0", - "concordance": "^5.0.1", - "convert-source-map": "^1.7.0", + "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", - "debug": "^4.3.1", - "del": "^6.0.0", - "emittery": "^0.8.0", - "equal-length": "^1.0.0", - "figures": "^3.2.0", - "globby": "^11.0.1", - "ignore-by-default": "^2.0.0", - "import-local": "^3.0.2", - "indent-string": "^4.0.0", + "debug": "^4.3.4", + "del": "^6.1.1", + "emittery": "^0.11.0", + "figures": "^4.0.1", + "globby": "^13.1.1", + "ignore-by-default": "^2.1.0", + "indent-string": "^5.0.0", "is-error": "^2.2.2", "is-plain-object": "^5.0.0", "is-promise": "^4.0.0", - "lodash": "^4.17.20", - "matcher": "^3.0.0", - "md5-hex": "^3.0.1", - "mem": "^8.0.0", + "matcher": "^5.0.0", + "mem": "^9.0.2", "ms": "^2.1.3", - "ora": "^5.2.0", - "p-event": "^4.2.0", - "p-map": "^4.0.0", - "picomatch": "^2.2.2", - "pkg-conf": "^3.1.0", - "plur": "^4.0.0", + "p-event": "^5.0.1", + "p-map": "^5.4.0", + "picomatch": "^2.3.1", + "pkg-conf": "^4.0.0", + "plur": "^5.1.0", "pretty-ms": "^7.0.1", - "read-pkg": "^5.2.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", - "source-map-support": "^0.5.19", - "stack-utils": "^2.0.3", - "strip-ansi": "^6.0.0", - "supertap": "^2.0.0", + "stack-utils": "^2.0.5", + "strip-ansi": "^7.0.1", + "supertap": "^3.0.1", "temp-dir": "^2.0.0", - "trim-off-newlines": "^1.0.1", - "update-notifier": "^5.0.1", - "write-file-atomic": "^3.0.3", - "yargs": "^16.2.0" + "write-file-atomic": "^4.0.1", + "yargs": "^17.5.1" + }, + "dependencies": { + "aggregate-error": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "dev": true, + "requires": { + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" + } + }, + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true + }, + "arrify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", + "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", + "dev": true + }, + "callsites": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.0.0.tgz", + "integrity": "sha512-y3jRROutgpKdz5vzEhWM34TidDU8vkJppF8dszITeb1PQmSqV3DTxyV8G/lyO/DNvtE1YTedehmw9MPZsCBHxQ==", + "dev": true + }, + "chalk": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", + "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==", + "dev": true + }, + "clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "dev": true, + "requires": { + "escape-string-regexp": "5.0.0" + } + }, + "escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true + }, + "globby": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", + "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", + "dev": true, + "requires": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "dependencies": { + "slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true + } + } + }, + "indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true + }, + "p-map": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "dev": true, + "requires": { + "aggregate-error": "^4.0.0" + } + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } + }, + "write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + } + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yargs": { + "version": "17.5.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", + "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.0.0" + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true + } + } + }, + "babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "dependencies": { + "istanbul-lib-instrument": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", + "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", + "dev": true, + "requires": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, "balanced-match": { @@ -9769,29 +9432,12 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, "binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, "bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", @@ -9808,30 +9454,6 @@ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, - "boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", - "dev": true, - "requires": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - } - } - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -9862,16 +9484,6 @@ "picocolors": "^1.0.0" } }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -9940,44 +9552,6 @@ } } }, - "cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "dev": true, - "requires": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "dependencies": { - "get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true - }, - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "dev": true - } - } - }, "caching-transform": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", @@ -10035,6 +9609,15 @@ "lodash": "^4.17.15" } }, + "cbor": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-8.1.0.tgz", + "integrity": "sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==", + "dev": true, + "requires": { + "nofilter": "^3.1.0" + } + }, "chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -10159,12 +9742,6 @@ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -10244,9 +9821,9 @@ "dev": true }, "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.4.0.tgz", + "integrity": "sha512-t5QdPT5jq3o262DOQ8zA6E1tlH2upmUc4Hlvrbx1pGYJuiiHl7O7rvVNI+l8HTVhd/q3Qc9vqimkNk5yiXsAug==", "dev": true }, "ci-parallel-vars": { @@ -10267,35 +9844,48 @@ "integrity": "sha512-3yONmlN9CSAkzNwnRCiJQ7Q2xK5mWuEfL3PuTZcAUzhObbXsfsnMptJzXwz93nc5zn9V9TwCVMmV7w4xsm43dw==", "dev": true }, - "cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-spinners": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", - "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", - "dev": true - }, "cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", "dev": true, "requires": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } + } } }, "cliui": { @@ -10314,22 +9904,13 @@ "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==" }, - "clone-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha512-yjLXh88P599UOyPTFX0POsd7WxnbsVsGohcwzHOLspIhhpalPw1BcqED8NblyZLKcGrL8dTgMlcaZxV2jAD41Q==", - "dev": true, - "requires": { - "mimic-response": "^1.0.0" - } - }, "code-excerpt": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-3.0.0.tgz", - "integrity": "sha512-VHNTVhd7KsLGOqfX3SyeO8RyYPMp1GJOg194VITk04WMYCv4plV68YWe6TJZxd9MhobjtpMRnVky01gqZsalaw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-4.0.0.tgz", + "integrity": "sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==", "dev": true, "requires": { - "convert-to-spaces": "^1.0.1" + "convert-to-spaces": "^2.0.1" } }, "color-convert": { @@ -10444,20 +10025,6 @@ "proto-list": "~1.2.1" } }, - "configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", - "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - } - }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", @@ -10473,9 +10040,9 @@ } }, "convert-to-spaces": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", - "integrity": "sha512-cj09EBuObp9gZNQCzc7hByQyrs6jVGE+o9kSJmeUoj+GiPiJvi5LYqEH/Hmme4+MTLHM+Ejtq+FChpjjEnsPdQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-2.0.1.tgz", + "integrity": "sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==", "dev": true }, "copy-concurrently": { @@ -10552,12 +10119,6 @@ "which": "^2.0.1" } }, - "crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "dev": true - }, "css": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", @@ -10654,21 +10215,6 @@ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==" }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", - "dev": true, - "requires": { - "mimic-response": "^1.0.0" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, "deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -10684,29 +10230,6 @@ "strip-bom": "^4.0.0" } }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", - "dev": true, - "requires": { - "clone": "^1.0.2" - }, - "dependencies": { - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true - } - } - }, - "defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", - "dev": true - }, "del": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", @@ -10848,15 +10371,6 @@ "domhandler": "^4.2.0" } }, - "dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "dev": true, - "requires": { - "is-obj": "^2.0.0" - } - }, "duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -10904,12 +10418,6 @@ } } }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha512-CEj8FwwNA4cVH2uFCoHUrmojhYh1vmCdOaneKJXwkeY1i9jnlslVo9dx+hQ5Hl9GnH/Bwy/IjxAyOePyPKYnzA==", - "dev": true - }, "duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", @@ -10950,6 +10458,12 @@ } } }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, "editorconfig": { "version": "0.15.3", "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", @@ -10977,9 +10491,9 @@ "dev": true }, "emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.11.0.tgz", + "integrity": "sha512-S/7tzL6v5i+4iJd627Nhv9cLFIo5weAIlGccqJFpnBoDB8U1TF2k5tez4J/QNuxyyhWuFqHg1L84Kd3m7iXg6g==", "dev": true }, "emoji-regex": { @@ -11017,12 +10531,6 @@ "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" }, - "equal-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", - "integrity": "sha512-TK2m7MvWPt/v3dan0BCNp99pytIE5UGrUj7F0KZirNX8xz8fDFUAZfgm8uB5FuQq9u0sMeDocYBfEhsd1nwGoA==", - "dev": true - }, "err-code": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", @@ -11061,12 +10569,6 @@ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true }, - "escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", - "dev": true - }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -11294,6 +10796,15 @@ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==" }, + "esmock": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.0.tgz", + "integrity": "sha512-dMnO7V+Y2M7pqoAzn42rXfyc3tZvzhK8T9rxAPxYmmxT1imsOv4A02eaHoqXOn2TBd1JAv794mJLWIV64zibQQ==", + "dev": true, + "requires": { + "resolvewithplus": "^1.0.0" + } + }, "espree": { "version": "9.3.2", "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz", @@ -11419,18 +10930,19 @@ "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" }, "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/figures/-/figures-4.0.1.tgz", + "integrity": "sha512-rElJwkA/xS04Vfg+CaZodpso7VqBknOYbzi6I76hI4X80RUjkSxO2oAyPmGbuXUppywjqndOrQDl817hDnI++w==", "dev": true, "requires": { - "escape-string-regexp": "^1.0.5" + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" }, "dependencies": { "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true } } @@ -11689,9 +11201,9 @@ "dev": true }, "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, "get-package-type": { @@ -11735,23 +11247,6 @@ "is-glob": "^4.0.1" } }, - "global-dirs": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", - "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", - "dev": true, - "requires": { - "ini": "2.0.0" - }, - "dependencies": { - "ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", - "dev": true - } - } - }, "globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", @@ -11771,25 +11266,6 @@ "slash": "^3.0.0" } }, - "got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "dev": true, - "requires": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - } - }, "graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", @@ -11836,12 +11312,6 @@ "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" }, - "has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", - "dev": true - }, "hasha": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", @@ -11984,22 +11454,6 @@ "resolve-from": "^4.0.0" } }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", - "dev": true - }, - "import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - } - }, "import-modules": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-modules/-/import-modules-2.1.0.tgz", @@ -12075,15 +11529,6 @@ "binary-extensions": "^2.0.0" } }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "requires": { - "ci-info": "^2.0.0" - } - }, "is-core-module": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", @@ -12122,39 +11567,11 @@ "is-extglob": "^2.1.1" } }, - "is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", - "dev": true, - "requires": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - } - }, - "is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true - }, - "is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", - "dev": true - }, "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" }, - "is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true - }, "is-path-cwd": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", @@ -12198,9 +11615,9 @@ "dev": true }, "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", "dev": true }, "is-windows": { @@ -12218,12 +11635,6 @@ "is-docker": "^2.0.0" } }, - "is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", - "dev": true - }, "isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", @@ -12407,12 +11818,6 @@ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", - "dev": true - }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -12460,15 +11865,6 @@ "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", "dev": true }, - "keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "dev": true, - "requires": { - "json-buffer": "3.0.0" - } - }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -12480,15 +11876,6 @@ "resolved": "https://registry.npmjs.org/klaw/-/klaw-4.0.1.tgz", "integrity": "sha512-pgsE40/SvC7st04AHiISNewaIMUbY5V/K8b21ekiPiFoYs/EYSdsGa+FJArB1d441uq4Q8zZyIxvAzkGNlBdRw==" }, - "latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "dev": true, - "requires": { - "package-json": "^6.3.0" - } - }, "less-openui5": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.2.tgz", @@ -12533,41 +11920,10 @@ } }, "load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - }, - "dependencies": { - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true - }, - "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true - } - } + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-7.0.1.tgz", + "integrity": "sha512-Gnxj3ev3mB5TkVBGad0JM6dmLiQL+o0t23JPBZ9sd+yvSLk05mFoqKBw5N8gbbkU4TNXyqCgIrl/VM17OgUIgQ==", + "dev": true }, "locate-path": { "version": "3.0.0", @@ -12621,16 +11977,6 @@ "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", "dev": true }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - } - }, "loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -12640,12 +11986,6 @@ "js-tokens": "^3.0.0 || ^4.0.0" } }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, "lru-cache": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", @@ -12759,12 +12099,20 @@ "integrity": "sha512-Wfk0ATOK5iPxM4ptrORkFemqroz0ZDxp5MWfYA7H/F+wO17NRWV5Ypxi6p3g2Xmw2bKeiYOl6oVnLHKxBA0VhA==" }, "matcher": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", - "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-5.0.0.tgz", + "integrity": "sha512-s2EMBOWtXFc8dgqvoAzKJXxNHibcdJMV0gwqKUaw9E2JBJuGUK7DrNKrA6g/i+v72TT16+6sVm5mS3thaMLQUw==", "dev": true, "requires": { - "escape-string-regexp": "^4.0.0" + "escape-string-regexp": "^5.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true + } } }, "md5-hex": { @@ -12782,13 +12130,13 @@ "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" }, "mem": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz", - "integrity": "sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/mem/-/mem-9.0.2.tgz", + "integrity": "sha512-F2t4YIv9XQUBHt6AOJ0y7lSmP1+cY7Fm1DRh9GClTGzKST7UWLMx6ly9WZdLH/G/ppM5RL4MlQfRT71ri9t19A==", "dev": true, "requires": { "map-age-cleaner": "^0.1.3", - "mimic-fn": "^3.1.0" + "mimic-fn": "^4.0.0" } }, "meow": { @@ -12844,15 +12192,9 @@ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" }, "mimic-fn": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", - "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", - "dev": true - }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", "dev": true }, "min-indent": { @@ -12939,27 +12281,6 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" }, - "mock-require": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-3.0.3.tgz", - "integrity": "sha512-lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==", - "dev": true, - "requires": { - "get-caller-file": "^1.0.2", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, "move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", @@ -13064,6 +12385,12 @@ "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", "dev": true }, + "nofilter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", + "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==", + "dev": true + }, "nopt": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", @@ -13097,12 +12424,6 @@ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true }, - "normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", - "dev": true - }, "npm-bundled": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", @@ -13294,12 +12615,6 @@ "path-exists": "^4.0.0" } }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -13384,23 +12699,6 @@ "wrappy": "1" } }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - }, - "dependencies": { - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - } - } - }, "open": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", @@ -13438,23 +12736,6 @@ "word-wrap": "^1.2.3" } }, - "ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "requires": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - } - }, "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", @@ -13474,12 +12755,6 @@ "os-tmpdir": "^1.0.0" } }, - "p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", - "dev": true - }, "p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", @@ -13487,20 +12762,14 @@ "dev": true }, "p-event": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", - "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-5.0.1.tgz", + "integrity": "sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==", "dev": true, "requires": { - "p-timeout": "^3.1.0" + "p-timeout": "^5.0.2" } }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", - "dev": true - }, "p-limit": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", @@ -13527,13 +12796,10 @@ } }, "p-timeout": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", - "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", - "dev": true, - "requires": { - "p-finally": "^1.0.0" - } + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", + "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", + "dev": true }, "p-try": { "version": "2.2.0", @@ -13552,26 +12818,6 @@ "release-zalgo": "^1.0.0" } }, - "package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "dev": true, - "requires": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, "pacote": { "version": "9.5.12", "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.12.tgz", @@ -13783,20 +13029,65 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, "pkg-conf": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-4.0.0.tgz", + "integrity": "sha512-7dmgi4UY4qk+4mj5Cd8v/GExPo0K+SlY+hulOSdfZ/T6jVH6//y7NtzZo5WrfhDBxuQ0jCa7fLZmNaNh7EWL/w==", "dev": true, "requires": { - "find-up": "^3.0.0", - "load-json-file": "^5.2.0" + "find-up": "^6.0.0", + "load-json-file": "^7.0.0" + }, + "dependencies": { + "find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "requires": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + } + }, + "locate-path": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.1.tgz", + "integrity": "sha512-vJXaRMJgRVD3+cUZs3Mncj2mxpt5mP0EmNOsxRSZRMlbqjvxzDEOIUWXGmavo0ZC9+tNZCBLQ66reA11nbpHZg==", + "dev": true, + "requires": { + "p-locate": "^6.0.0" + } + }, + "p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "requires": { + "yocto-queue": "^1.0.0" + } + }, + "p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "requires": { + "p-limit": "^4.0.0" + } + }, + "path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true + }, + "yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true + } } }, "pkg-dir": { @@ -13854,12 +13145,12 @@ } }, "plur": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/plur/-/plur-4.0.0.tgz", - "integrity": "sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/plur/-/plur-5.1.0.tgz", + "integrity": "sha512-VP/72JeXqak2KiOzjgKtQen5y3IZHn+9GOuLDafPv0eXa47xq0At93XahYBs26MsifCQ4enGKwbjBTKgb9QJXg==", "dev": true, "requires": { - "irregular-plurals": "^3.2.0" + "irregular-plurals": "^3.3.0" } }, "postcss": { @@ -13879,12 +13170,6 @@ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true }, - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "dev": true - }, "pretty-data": { "version": "0.40.0", "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", @@ -13987,15 +13272,6 @@ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, - "pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", - "dev": true, - "requires": { - "escape-goat": "^2.0.0" - } - }, "query-ast": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.4.tgz", @@ -14021,26 +13297,6 @@ "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", "integrity": "sha512-YALjWK2Rt9EMIv9BF/3mvlzFWQathsvb5UZmN1QmhfIOfcQYXc/UcLzg0ablqesSBpBVLt2Tlwv/eTuBh4LXUQ==" }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "dev": true - } - } - }, "read-pkg": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", @@ -14148,24 +13404,6 @@ "integrity": "sha512-k519uI04Z3SaY0fLX843MRXnDeG2+vHOFsyhiPZvNLe7r8rD2YNRjq4BQLZZ0oAr2NrtvZlICsXysGNFPGa3CQ==", "dev": true }, - "registry-auth-token": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", - "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", - "dev": true, - "requires": { - "rc": "^1.2.8" - } - }, - "registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", - "dev": true, - "requires": { - "rc": "^1.2.8" - } - }, "release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", @@ -14175,12 +13413,6 @@ "es6-error": "^4.0.1" } }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", - "dev": true - }, "replacestream": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", @@ -14284,24 +13516,11 @@ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", - "dev": true, - "requires": { - "lowercase-keys": "^1.0.0" - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } + "resolvewithplus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolvewithplus/-/resolvewithplus-1.0.0.tgz", + "integrity": "sha512-rjEDkAH90XUQb5RN/+yxbcngIGTzusussygz7Cx9UC63ESsgOgsHhpnvUJKEJQLN/6M/9xPMGkAPEh21CKErsQ==", + "dev": true }, "retry": { "version": "0.10.1", @@ -14408,23 +13627,6 @@ "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", "dev": true }, - "semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", - "dev": true, - "requires": { - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, "serialize-error": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", @@ -14474,16 +13676,16 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "sinon": { - "version": "11.1.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-11.1.2.tgz", - "integrity": "sha512-59237HChms4kg7/sXhiRcUzdSkKuydDeTiamT/jesUVHshBgL8XAmhgFo0GfK6RruMDM/iRSij1EybmMog9cJw==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-14.0.0.tgz", + "integrity": "sha512-ugA6BFmE+WrJdh0owRZHToLd32Uw3Lxq6E6LtNRU+xTVBefx632h03Q7apXWRsRdZAJ41LB8aUfn2+O4jsDNMw==", "dev": true, "requires": { "@sinonjs/commons": "^1.8.3", - "@sinonjs/fake-timers": "^7.1.2", - "@sinonjs/samsam": "^6.0.2", + "@sinonjs/fake-timers": "^9.1.2", + "@sinonjs/samsam": "^6.1.1", "diff": "^5.0.0", - "nise": "^5.1.0", + "nise": "^5.1.1", "supports-color": "^7.2.0" } }, @@ -14493,38 +13695,19 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" }, "slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", "dev": true, "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", "dev": true } } @@ -14748,18 +13931,23 @@ } }, "supertap": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supertap/-/supertap-2.0.0.tgz", - "integrity": "sha512-jRzcXlCeDYvKoZGA5oRhYyR3jUIYu0enkSxtmAgHRlD7HwrovTpH4bDSi0py9FtuA8si9cW/fKommJHuaoDHJA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/supertap/-/supertap-3.0.1.tgz", + "integrity": "sha512-u1ZpIBCawJnO+0QePsEiOknOfCRq0yERxiAchT0i4li0WHNUJbf0evXXSXOcCAR4M8iMDoajXYmstm/qO81Isw==", "dev": true, "requires": { - "arrify": "^2.0.1", - "indent-string": "^4.0.0", - "js-yaml": "^3.14.0", + "indent-string": "^5.0.0", + "js-yaml": "^3.14.1", "serialize-error": "^7.0.1", - "strip-ansi": "^6.0.0" + "strip-ansi": "^7.0.1" }, "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -14769,6 +13957,12 @@ "sprintf-js": "~1.0.2" } }, + "indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true + }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -14778,6 +13972,15 @@ "argparse": "^1.0.7", "esprima": "^4.0.0" } + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } } } }, @@ -15171,12 +14374,6 @@ "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true }, - "to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", - "dev": true - }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -15209,12 +14406,6 @@ "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", "dev": true }, - "trim-off-newlines": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.3.tgz", - "integrity": "sha512-kh6Tu6GbeSNMGfrrZh6Bb/4ZEHV1QlB4xNDBeog8Y9/QwFlKTRyWvY3Fs9tRDAMZliVUwieMgEdIeL/FtqjkJg==", - "dev": true - }, "tslib": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", @@ -15280,37 +14471,6 @@ "imurmurhash": "^0.1.4" } }, - "unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "dev": true, - "requires": { - "crypto-random-string": "^2.0.0" - } - }, - "update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", - "dev": true, - "requires": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - } - }, "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -15319,15 +14479,6 @@ "punycode": "^2.1.0" } }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "dev": true, - "requires": { - "prepend-http": "^2.0.0" - } - }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -15362,15 +14513,6 @@ "builtins": "^1.0.3" } }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, "well-known-symbols": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-2.0.0.tgz", @@ -15400,15 +14542,6 @@ "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, - "requires": { - "string-width": "^4.0.0" - } - }, "word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -15469,12 +14602,6 @@ "typedarray-to-buffer": "^3.1.5" } }, - "xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true - }, "xml2js": { "version": "0.4.23", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", @@ -15542,12 +14669,6 @@ "yargs-parser": "^20.2.2" }, "dependencies": { - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, "y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index ac3ca313e3a..9e1fd25841d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -16,7 +16,17 @@ "development", "tool" ], - "main": "index.js", + "type": "module", + "exports": { + "./ui5Framework/Openui5Resolver": "./lib/ui5Framework/Openui5Resolver.js", + "./ui5Framework/Sapui5Resolver": "./lib/ui5Framework/Sapui5Resolver.js", + "./validation/validator": "./lib/validation/validator.js", + "./validation/ValidationError": "./lib/validation/ValidationError.js", + "./graph/ProjectGraph": "./lib/graph/ProjectGraph.js", + "./graph/projectGraphBuilder": "./lib/graph/projectGraphBuilder.js", + "./graph": "./lib/graph/graph.js", + "./package.json": "./package.json" + }, "engines": { "node": ">= 16.13.2", "npm": ">= 8" @@ -27,11 +37,11 @@ "lint": "eslint ./", "unit": "rimraf test/tmp && ava", "unit-verbose": "rimraf test/tmp && cross-env UI5_LOG_LVL=verbose ava --verbose --serial", - "unit-watch": "rimraf test/tmp && ava --watch", - "unit-nyan": "rimraf test/tmp && ava --tap | tnyan", - "unit-xunit": "rimraf test/tmp && ava --tap --timeout=1m | tap-xunit --dontUseCommentsAsTestNames=true > test-results.xml", + "unit-watch": "npm run unit -- --watch", + "unit-nyan": "npm run unit -- --tap | tnyan", + "unit-xunit": "rimraf test/tmp && ava --node-arguments=\"--experimental-loader=@istanbuljs/esm-loader-hook\" --tap | tap-xunit --dontUseCommentsAsTestNames=true > test-results.xml", "unit-inspect": "cross-env UI5_LOG_LVL=verbose ava debug --break", - "coverage": "nyc npm run unit", + "coverage": "rimraf test/tmp && nyc ava --node-arguments=\"--experimental-loader=@istanbuljs/esm-loader-hook\"", "coverage-xunit": "nyc --reporter=text --reporter=text-summary --reporter=cobertura npm run unit-xunit", "jsdoc": "npm run jsdoc-generate && open-cli jsdocs/index.html", "jsdoc-generate": "jsdoc -c ./jsdoc.json -t $(node -p 'path.dirname(require.resolve(\"docdash\"))') ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", @@ -40,10 +50,9 @@ "version": "git-chglog --sort semver --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", "postversion": "git push --follow-tags", "release-note": "git-chglog --sort semver -c .chglog/release-config.yml v$npm_package_version", - "depcheck": "depcheck --ignores docdash" + "depcheck": "depcheck --ignores @ui5/project,docdash,@istanbuljs/esm-loader-hook" }, "files": [ - "index.js", "CHANGELOG.md", "CONTRIBUTING.md", "jsdoc.json", @@ -55,6 +64,10 @@ "files": [ "test/lib/**/*.js", "!test/**/__helper__/**" + ], + "nodeArguments": [ + "--loader=esmock", + "--no-warnings" ] }, "nyc": { @@ -68,8 +81,8 @@ "jsdocs/**", "coverage/**", "test/**", - ".eslintrc.js", - "jsdoc-plugin.js" + ".eslintrc.cjs", + "jsdoc-plugin.cjs" ], "check-coverage": true, "statements": 90, @@ -102,9 +115,9 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.11", - "@ui5/fs": "^3.0.0-alpha.6", - "@ui5/logger": "^3.0.1-alpha.2", + "@ui5/builder": "^3.0.0-alpha.12", + "@ui5/fs": "^3.0.0-alpha.7", + "@ui5/logger": "^3.0.1-alpha.3", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", @@ -124,7 +137,8 @@ "xml2js": "^0.4.23" }, "devDependencies": { - "ava": "^3.15.0", + "@istanbuljs/esm-loader-hook": "^0.2.0", + "ava": "^4.3.3", "chokidar-cli": "^2.1.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", @@ -133,16 +147,16 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.0.2", "eslint-plugin-jsdoc": "^37.6.3", + "esmock": "^2.0.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.3", "js-beautify": "^1.14.0", "jsdoc": "^3.6.7", - "mock-require": "^3.0.3", "nyc": "^15.1.0", "open-cli": "^6.0.1", - "sinon": "^11.1.2", + "sinon": "^14.0.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } diff --git a/packages/project/test/fixtures/extension.a.esm/lib/extensionModule.js b/packages/project/test/fixtures/extension.a.esm/lib/extensionModule.js new file mode 100644 index 00000000000..ba4ca865b9e --- /dev/null +++ b/packages/project/test/fixtures/extension.a.esm/lib/extensionModule.js @@ -0,0 +1 @@ +export default "extension module"; diff --git a/packages/project/test/fixtures/extension.a.esm/package.json b/packages/project/test/fixtures/extension.a.esm/package.json new file mode 100644 index 00000000000..872a636590d --- /dev/null +++ b/packages/project/test/fixtures/extension.a.esm/package.json @@ -0,0 +1,4 @@ +{ + "name": "extension.a", + "type": "module" +} diff --git a/packages/project/test/fixtures/extension.a/package.json b/packages/project/test/fixtures/extension.a/package.json new file mode 100644 index 00000000000..c1f690b16dd --- /dev/null +++ b/packages/project/test/fixtures/extension.a/package.json @@ -0,0 +1,3 @@ +{ + "name": "extension.a" +} diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index b64b1bccb86..3b15ba723bf 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -1,7 +1,8 @@ -const test = require("ava"); -const sinonGlobal = require("sinon"); -const path = require("path"); -const mock = require("mock-require"); +import test from "ava"; +import sinonGlobal from "sinon"; +import path from "node:path"; +import esmock from "esmock"; +import logger from "@ui5/logger"; function noop() {} @@ -13,14 +14,13 @@ function getMockProject(type, id = "b") { getCopyright: noop, getVersion: noop, getSpecVersion: () => "0.1", - getReader: () => "reader", - getWorkspace: () => "workspace", + getReader: async () => "reader", + getWorkspace: async () => "workspace", }; } -test.beforeEach((t) => { +test.beforeEach(async (t) => { const sinon = t.context.sinon = sinonGlobal.createSandbox(); - t.context.ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); t.context.getRootNameStub = sinon.stub().returns("project.a"); t.context.getRootTypeStub = sinon.stub().returns("application"); t.context.taskRepository = "taskRepository"; @@ -68,11 +68,12 @@ test.beforeEach((t) => { }, getProject: sinon.stub().returns(getMockProject("project", "b")) }; + + t.context.ProjectBuilder = await esmock("../../../lib/build/ProjectBuilder.js"); }); test.afterEach.always((t) => { t.context.sinon.restore(); - mock.stopAll(); }); test("Missing graph parameters", (t) => { @@ -108,7 +109,7 @@ test("build", async (t) => { getProject: sinon.stub().returns(getMockProject("library")) }; const createRequiredBuildContextsStub = sinon.stub(builder, "_createRequiredBuildContexts") - .returns(new Map().set("project.a", projectBuildContextMock)); + .resolves(new Map().set("project.a", projectBuildContextMock)); const registerCleanupSigHooksStub = sinon.stub(builder, "_registerCleanupSigHooks").returns("cleanup sig hooks"); const buildProjectStub = sinon.stub(builder, "_buildProject").resolves(); @@ -202,7 +203,7 @@ test("build: Failure", async (t) => { getProject: sinon.stub().returns(getMockProject("library")) }; sinon.stub(builder, "_createRequiredBuildContexts") - .returns(new Map().set("project.a", projectBuildContextMock)); + .resolves(new Map().set("project.a", projectBuildContextMock)); sinon.stub(builder, "_registerCleanupSigHooks").returns("cleanup sig hooks"); sinon.stub(builder, "_buildProject").rejects(new Error("Some Error")); @@ -266,7 +267,7 @@ test.serial("build: Multiple projects", async (t) => { getProject: sinon.stub().returns(getMockProject("library", "c")) }; const createRequiredBuildContextsStub = sinon.stub(builder, "_createRequiredBuildContexts") - .returns(new Map() + .resolves(new Map() .set("project.a", projectBuildContextMockA) .set("project.b", projectBuildContextMockB) .set("project.c", projectBuildContextMockC) @@ -278,13 +279,12 @@ test.serial("build: Multiple projects", async (t) => { const deregisterCleanupSigHooksStub = sinon.stub(builder, "_deregisterCleanupSigHooks"); const executeCleanupTasksStub = sinon.stub(builder, "_executeCleanupTasks").resolves(); - const log = require("@ui5/logger"); - log.setLevel("verbose"); + logger.setLevel("verbose"); await builder.build({ destPath: "dest/path", complexDependencyIncludes: "complexDependencyIncludes" }); - log.setLevel("info"); + logger.setLevel("info"); t.is(getProjectFilterStub.callCount, 1, "_getProjectFilter got called once"); t.deepEqual(getProjectFilterStub.getCall(0).args[0], { @@ -325,7 +325,7 @@ test.serial("build: Multiple projects", async (t) => { t.is(executeCleanupTasksStub.callCount, 1, "_executeCleanupTasksStub got called once"); }); -test("_createRequiredBuildContexts", (t) => { +test("_createRequiredBuildContexts", async (t) => { const {graph, taskRepository, ProjectBuilder, sinon} = t.context; const builder = new ProjectBuilder(graph, taskRepository); @@ -342,7 +342,7 @@ test("_createRequiredBuildContexts", (t) => { }; const createProjectContextStub = sinon.stub(builder._buildContext, "createProjectContext") .returns(projectBuildContextMock); - const projectBuildContexts = builder._createRequiredBuildContexts(["project.a", "project.c"]); + const projectBuildContexts = await builder._createRequiredBuildContexts(["project.a", "project.c"]); t.deepEqual(Object.fromEntries(projectBuildContexts), { "project.a": projectBuildContextMock, @@ -370,13 +370,14 @@ test("_createRequiredBuildContexts", (t) => { test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { const {graph, taskRepository, sinon} = t.context; - const composeProjectListStub = sinon.stub().returns({ includedDependencies: ["project.b", "project.c"], excludedDependencies: ["project.d", "project.e", "project.a"], }); - mock("../../../lib/build/helpers/composeProjectList", composeProjectListStub); - const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); + const ProjectBuilder = await esmock("../../../lib/build/ProjectBuilder.js", { + "../../../lib/build/helpers/composeProjectList.js": composeProjectListStub + }); + const builder = new ProjectBuilder(graph, taskRepository); const filterProject = await builder._getProjectFilter({ @@ -400,13 +401,14 @@ test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { test.serial("_getProjectFilter with explicit include/exclude", async (t) => { const {graph, taskRepository, sinon} = t.context; - const composeProjectListStub = sinon.stub().returns({ includedDependencies: ["project.b", "project.c"], excludedDependencies: ["project.d", "project.e", "project.a"], }); - mock("../../../lib/build/helpers/composeProjectList", composeProjectListStub); - const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); + const ProjectBuilder = await esmock("../../../lib/build/ProjectBuilder.js", { + "../../../lib/build/helpers/composeProjectList.js": composeProjectListStub + }); + const builder = new ProjectBuilder(graph, taskRepository); const filterProject = await builder._getProjectFilter({ @@ -430,11 +432,16 @@ test.serial("_getProjectFilter with explicit include/exclude", async (t) => { }); test.serial("_buildProject", async (t) => { - const {graph, taskRepository, ProjectBuilder, sinon} = t.context; + const {graph, taskRepository, sinon} = t.context; + const readerCollectionStub = sinon.stub().returns("dependencies"); + const ProjectBuilder = await esmock("../../../lib/build/ProjectBuilder.js", { + "@ui5/fs/resourceFactory": { + createReaderCollection: readerCollectionStub + } + }); + const builder = new ProjectBuilder(graph, taskRepository); - const readerCollectionStub = sinon.stub(require("@ui5/fs").resourceFactory, "createReaderCollection") - .returns("dependencies"); const runTasksStub = sinon.stub().resolves(); await builder._buildProject({ @@ -460,11 +467,16 @@ test.serial("_buildProject", async (t) => { }); test.serial("_buildProject: Requested project is not added to readers", async (t) => { - const {graph, taskRepository, ProjectBuilder, sinon} = t.context; - const builder = new ProjectBuilder(graph, taskRepository); + const {graph, taskRepository, sinon} = t.context; + const readerCollectionStub = sinon.stub().returns("dependencies"); + + const ProjectBuilder = await esmock("../../../lib/build/ProjectBuilder.js", { + "@ui5/fs/resourceFactory": { + createReaderCollection: readerCollectionStub + } + }); - const readerCollectionStub = sinon.stub(require("@ui5/fs").resourceFactory, "createReaderCollection") - .returns("dependencies"); + const builder = new ProjectBuilder(graph, taskRepository); const runTasksStub = sinon.stub().resolves(); await builder._buildProject({ @@ -561,16 +573,19 @@ test.serial("_writeResults: Create build manifest", async (t) => { const {graph, taskRepository} = t.context; const createBuildManifestStub = sinon.stub().returns({"build": "manifest"}); - mock("../../../lib/build/helpers/createBuildManifest", createBuildManifestStub); - const ProjectBuilder = mock.reRequire("../../../lib/build/ProjectBuilder"); + const createResourceStub = sinon.stub().returns("build manifest resource"); + const ProjectBuilder = await esmock.p("../../../lib/build/ProjectBuilder.js", { + "../../../lib/build/helpers/createBuildManifest.js": createBuildManifestStub, + "@ui5/fs/resourceFactory": { + createResource: createResourceStub + } + }); + const builder = new ProjectBuilder(graph, taskRepository, { createBuildManifest: true, otherBuildConfig: "yes" }); - const createResourceStub = sinon.stub(require("@ui5/fs").resourceFactory, "createResource") - .returns("build manifest resource"); - const dummyResources = [{ _resourceName: "resource.a", getPath: () => "resource.a" @@ -647,6 +662,8 @@ test.serial("_writeResults: Create build manifest", async (t) => { t.is(writerMock.write.getCall(0).args[0], "build manifest resource", "Write got called with build manifest"); t.is(writerMock.write.getCall(1).args[0], dummyResources[1], "Write got called with second resource"); t.is(writerMock.write.getCall(2).args[0], dummyResources[2], "Write got called with third resource"); + + esmock.purge(ProjectBuilder); }); test("_writeResults: Do not create build manifest for non-root project", async (t) => { diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index eb3bf026ff2..1335f3296f7 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -1,11 +1,8 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); - -const parentLogger = require("@ui5/logger").getGroupLogger("mygroup"); -const taskRepository = require("@ui5/builder").tasks.taskRepository; - -const TaskRunner = require("../../../lib/build/TaskRunner"); +import test from "ava"; +import sinonGlobal from "sinon"; +import logger from "@ui5/logger"; +const parentLogger = logger.getGroupLogger("mygroup"); +import TaskRunner from "../../../lib/build/TaskRunner.js"; function noop() {} function emptyarray() { @@ -60,13 +57,20 @@ function getMockProject(type) { } test.beforeEach((t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + t.context.taskUtil = { isRootProject: sinon.stub().returns(true), getBuildOption: sinon.stub(), getInterface: sinon.stub() }; - t.context.taskRepository = taskRepository; // TODO: Mock? + t.context.taskRepository = { + getTask: sinon.stub().callsFake(async (taskName) => { + throw new Error(`taskRepository: Unknown Task ${taskName}`); + }), + getAllTaskNames: sinon.stub().returns(["replaceVersion"]) + }; t.context.graph = { getRoot: () => { @@ -78,9 +82,13 @@ test.beforeEach((t) => { }; }); -test("Project of type 'application'", (t) => { +test.afterEach.always((t) => { + t.context.sinon.restore(); +}); + +test("Project of type 'application'", async (t) => { const {graph, taskUtil, taskRepository} = t.context; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project: getMockProject("application"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -101,9 +109,9 @@ test("Project of type 'application'", (t) => { ], "Correct standard tasks"); }); -test("Project of type 'library'", (t) => { +test("Project of type 'library'", async (t) => { const {graph, taskUtil, taskRepository} = t.context; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project: getMockProject("library"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -126,9 +134,9 @@ test("Project of type 'library'", (t) => { ], "Correct standard tasks"); }); -test("Project of type 'theme-library'", (t) => { +test("Project of type 'theme-library'", async (t) => { const {graph, taskUtil, taskRepository} = t.context; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project: getMockProject("theme-library"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -141,19 +149,19 @@ test("Project of type 'theme-library'", (t) => { ], "Correct standard tasks"); }); -test("Project of type 'module'", (t) => { +test("Project of type 'module'", async (t) => { const {graph, taskUtil, taskRepository} = t.context; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project: getMockProject("module"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [], "Correct standard tasks"); }); -test("Unknown project type", (t) => { +test("Unknown project type", async (t) => { const {graph, taskUtil, taskRepository} = t.context; - const err = t.throws(() => { - new TaskRunner({ + const err = await t.throwsAsync(async () => { + await TaskRunner.create({ project: getMockProject("pony"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); @@ -161,14 +169,14 @@ test("Unknown project type", (t) => { t.is(err.message, "Unknown project type pony", "Threw with expected error message"); }); -test("Custom tasks", (t) => { +test("Custom tasks", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"}, {name: "myOtherTask", beforeTask: "replaceVersion"} ]; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -191,14 +199,14 @@ test("Custom tasks", (t) => { ], "Custom tasks are inserted correctly"); }); -test("Custom tasks with no standard tasks", (t) => { +test("Custom tasks with no standard tasks", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"}, {name: "myOtherTask", beforeTask: "myTask"} ]; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -207,15 +215,15 @@ test("Custom tasks with no standard tasks", (t) => { ], "ApplicationBuilder is still instantiated with standard tasks"); }); -test("Custom tasks with no standard tasks and second task defining no before-/afterTask", (t) => { +test("Custom tasks with no standard tasks and second task defining no before-/afterTask", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"}, {name: "myOtherTask"} ]; - const err = t.throws(() => { - new TaskRunner({ + const err = await t.throwsAsync(async () => { + await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); @@ -225,14 +233,14 @@ test("Custom tasks with no standard tasks and second task defining no before-/af "Threw with expected error message"); }); -test("Custom tasks with both, before- and afterTask reference", (t) => { +test("Custom tasks with both, before- and afterTask reference", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "minify", afterTask: "replaceVersion"} ]; - const err = t.throws(() => { - new TaskRunner({ + const err = await t.throwsAsync(async () => { + await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); @@ -242,14 +250,14 @@ test("Custom tasks with both, before- and afterTask reference", (t) => { "Threw with expected error message"); }); -test("Custom tasks with no before-/afterTask reference", (t) => { +test("Custom tasks with no before-/afterTask reference", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask"} ]; - const err = t.throws(() => { - new TaskRunner({ + const err = await t.throwsAsync(async () => { + await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); @@ -259,14 +267,14 @@ test("Custom tasks with no before-/afterTask reference", (t) => { "Threw with expected error message"); }); -test("Custom tasks without name", (t) => { +test("Custom tasks without name", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: ""} ]; - const err = t.throws(() => { - new TaskRunner({ + const err = await t.throwsAsync(async () => { + await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); @@ -275,14 +283,14 @@ test("Custom tasks without name", (t) => { "Threw with expected error message"); }); -test("Custom task with name of standard tasks", (t) => { +test("Custom task with name of standard tasks", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "replaceVersion", afterTask: "minify"} ]; - const err = t.throws(() => { - new TaskRunner({ + const err = await t.throwsAsync(async () => { + await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); @@ -292,7 +300,7 @@ test("Custom task with name of standard tasks", (t) => { "Threw with expected error message"); }); -test("Multiple custom tasks with same name", (t) => { +test("Multiple custom tasks with same name", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ @@ -300,7 +308,7 @@ test("Multiple custom tasks with same name", (t) => { {name: "myTask", afterTask: "myTask"}, {name: "myTask", afterTask: "minify"} ]; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -324,14 +332,14 @@ test("Multiple custom tasks with same name", (t) => { ], "Custom tasks are inserted correctly"); }); -test("Custom tasks with unknown beforeTask", (t) => { +test("Custom tasks with unknown beforeTask", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "unknownTask"} ]; - const err = t.throws(() => { - new TaskRunner({ + const err = await t.throwsAsync(async () => { + await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); @@ -341,14 +349,14 @@ test("Custom tasks with unknown beforeTask", (t) => { "Threw with expected error message"); }); -test("Custom tasks with unknown afterTask", (t) => { +test("Custom tasks with unknown afterTask", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "unknownTask"} ]; - const err = t.throws(() => { - new TaskRunner({ + const err = await t.throwsAsync(async () => { + await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); @@ -358,15 +366,15 @@ test("Custom tasks with unknown afterTask", (t) => { "Threw with expected error message"); }); -test("Custom tasks is unknown", (t) => { +test("Custom tasks is unknown", async (t) => { const {graph, taskUtil, taskRepository} = t.context; graph.getExtension.returns(undefined); const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"} ]; - const err = t.throws(() => { - new TaskRunner({ + const err = await t.throwsAsync(async () => { + await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); }); @@ -377,7 +385,7 @@ test("Custom tasks is unknown", (t) => { }); test("Custom task is called correctly", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository} = t.context; const taskStub = sinon.stub(); graph.getExtension.returns({ getTask: () => taskStub, @@ -389,7 +397,7 @@ test("Custom task is called correctly", async (t) => { {name: "myTask", configuration: "configuration"} ]; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -419,7 +427,7 @@ test("Custom task is called correctly", async (t) => { }); test("Custom task with legacy spec version", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository} = t.context; const taskStub = sinon.stub(); graph.getExtension.returns({ getTask: () => taskStub, @@ -431,7 +439,7 @@ test("Custom task with legacy spec version", async (t) => { {name: "myTask", configuration: "configuration"} ]; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -460,7 +468,7 @@ test("Custom task with legacy spec version", async (t) => { }); test("Custom task with specVersion 3.0", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository} = t.context; const taskStub = sinon.stub(); graph.getExtension.returns({ getTask: () => taskStub, @@ -472,7 +480,7 @@ test("Custom task with specVersion 3.0", async (t) => { {name: "myTask", configuration: "configuration"} ]; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -503,7 +511,7 @@ test("Custom task with specVersion 3.0", async (t) => { }); test("Multiple custom tasks with same name are called correctly", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository} = t.context; const taskStub1 = sinon.stub(); const taskStub2 = sinon.stub(); const taskStub3 = sinon.stub(); @@ -525,7 +533,7 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { {name: "myTask", afterTask: "myTask", configuration: "dog"}, {name: "myTask", afterTask: "myTask", configuration: "bird"} ]; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -596,15 +604,15 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { }); test.serial("_addTask", async (t) => { + const {sinon, graph, taskUtil, taskRepository} = t.context; + const taskStub = sinon.stub(); - const getTaskStub = sinon.stub(require("@ui5/builder").tasks.taskRepository, "getTask").returns({ + taskRepository.getTask.withArgs("standardTask").resolves({ task: taskStub }); - const TaskRunner = mock.reRequire("../../../lib/build/TaskRunner"); - const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -620,9 +628,9 @@ test.serial("_addTask", async (t) => { dependencies: "dependencies", }); - t.is(getTaskStub.callCount, 1, "taskRepository#getTask got called once"); - t.is(getTaskStub.getCall(0).args[0], "standardTask", "taskRepository#getTask got called with correct argument"); - + t.is(taskRepository.getTask.callCount, 1, "taskRepository#getTask got called once"); + t.is(taskRepository.getTask.getCall(0).args[0], "standardTask", + "taskRepository#getTask got called with correct argument"); t.is(taskStub.callCount, 1, "Task got called once"); t.deepEqual(taskStub.getCall(0).args[0], { workspace: "workspace", @@ -633,19 +641,14 @@ test.serial("_addTask", async (t) => { }, taskUtil }, "Task got called with correct arguments"); - - getTaskStub.restore(); - mock.stopAll(); }); test.serial("_addTask with options", async (t) => { + const {sinon, graph, taskUtil, taskRepository} = t.context; const taskStub = sinon.stub(); - const getTaskStub = sinon.stub(require("@ui5/builder").tasks.taskRepository, "getTask").returns({}); - const TaskRunner = mock.reRequire("../../../lib/build/TaskRunner"); - - const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); - const taskRunner = new TaskRunner({ + + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -667,7 +670,7 @@ test.serial("_addTask with options", async (t) => { dependencies: "dependencies", }); - t.is(getTaskStub.callCount, 0, "taskRepository#getTask did not get called"); + t.is(taskRepository.getTask.callCount, 0, "taskRepository#getTask did not get called"); t.is(taskStub.callCount, 1, "Task got called once"); t.deepEqual(taskStub.getCall(0).args[0], { @@ -680,15 +683,12 @@ test.serial("_addTask with options", async (t) => { }, taskUtil }, "Task got called with correct arguments"); - - getTaskStub.restore(); - mock.stopAll(); }); -test("_addTask: Duplicate task", (t) => { +test("_addTask: Duplicate task", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -705,10 +705,10 @@ test("_addTask: Duplicate task", (t) => { "Threw with expected error message"); }); -test("_addTask: Task already added to execution order", (t) => { +test("_addTask: Task already added to execution order", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -723,81 +723,81 @@ test("_addTask: Task already added to execution order", (t) => { "Threw with expected error message"); }); -test("requiresDependencies: Custom Task", (t) => { +test("requiresDependencies: Custom Task", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"} ]; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.true(taskRunner.requiresDependencies(), "Project with custom task requires dependencies"); }); -test("requiresDependencies: Default application", (t) => { +test("requiresDependencies: Default application", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("application"); project.getBundles = () => []; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.false(taskRunner.requiresDependencies(), "Default application project does not require dependencies"); }); -test("requiresDependencies: Default library", (t) => { +test("requiresDependencies: Default library", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("library"); project.getBundles = () => []; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.true(taskRunner.requiresDependencies(), "Default library project requires dependencies"); }); -test("requiresDependencies: Default theme-library", (t) => { +test("requiresDependencies: Default theme-library", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("theme-library"); - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.true(taskRunner.requiresDependencies(), "Default theme-library project requires dependencies"); }); -test("requiresDependencies: Default module", (t) => { +test("requiresDependencies: Default module", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("module"); - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.false(taskRunner.requiresDependencies(), "Default module project does not require dependencies"); }); -test("requiresBuild: has no build-manifest", (t) => { +test("requiresBuild: has no build-manifest", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("library"); - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.true(taskRunner.requiresBuild(), "Project without build-manifest requires to be build"); }); -test("requiresBuild: has build-manifest", (t) => { +test("requiresBuild: has build-manifest", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("library"); project.hasBuildManifest = () => true; - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.false(taskRunner.requiresBuild(), "Project with build-manifest does not require to be build"); }); -test.serial("getBuildMetadata", (t) => { - const {graph, taskUtil, taskRepository} = t.context; +test.serial("getBuildMetadata", async (t) => { + const {sinon, graph, taskUtil, taskRepository} = t.context; const project = getMockProject("library"); project.hasBuildManifest = () => true; project.getBuildManifest = () => { @@ -806,7 +806,7 @@ test.serial("getBuildMetadata", (t) => { }; }; const getTimeStub = sinon.stub(Date.prototype, "getTime").callThrough().onFirstCall().returns(1659016800000); - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -817,11 +817,11 @@ test.serial("getBuildMetadata", (t) => { getTimeStub.restore(); }); -test("getBuildMetadata: has no build-manifest", (t) => { +test("getBuildMetadata: has no build-manifest", async (t) => { const {graph, taskUtil, taskRepository} = t.context; const project = getMockProject("library"); - const taskRunner = new TaskRunner({ + const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); t.is(taskRunner.getBuildMetadata(), null, "Project has no build manifest"); diff --git a/packages/project/test/lib/build/definitions/application.js b/packages/project/test/lib/build/definitions/application.js index b14929ef6b6..583636e88cc 100644 --- a/packages/project/test/lib/build/definitions/application.js +++ b/packages/project/test/lib/build/definitions/application.js @@ -1,7 +1,6 @@ -const test = require("ava"); -const sinon = require("sinon"); - -const application = require("../../../../lib/build/definitions/application"); +import test from "ava"; +import sinon from "sinon"; +import application from "../../../../lib/build/definitions/application.js"; function emptyarray() { return []; diff --git a/packages/project/test/lib/build/definitions/library.js b/packages/project/test/lib/build/definitions/library.js index 7ab1d232c87..83d4c17a5ec 100644 --- a/packages/project/test/lib/build/definitions/library.js +++ b/packages/project/test/lib/build/definitions/library.js @@ -1,7 +1,6 @@ -const test = require("ava"); -const sinon = require("sinon"); - -const library = require("../../../../lib/build/definitions/library"); +import test from "ava"; +import sinon from "sinon"; +import library from "../../../../lib/build/definitions/library.js"; function emptyarray() { return []; diff --git a/packages/project/test/lib/build/definitions/module.js b/packages/project/test/lib/build/definitions/module.js index d2bce900919..0a74ff702fa 100644 --- a/packages/project/test/lib/build/definitions/module.js +++ b/packages/project/test/lib/build/definitions/module.js @@ -1,6 +1,5 @@ -const test = require("ava"); - -const moduleDefinition = require("../../../../lib/build/definitions/module"); +import test from "ava"; +import moduleDefinition from "../../../../lib/build/definitions/module.js"; test("Standard build", (t) => { const tasks = moduleDefinition({}); diff --git a/packages/project/test/lib/build/definitions/themeLibrary.js b/packages/project/test/lib/build/definitions/themeLibrary.js index 71822e83e7b..e7c04a425a2 100644 --- a/packages/project/test/lib/build/definitions/themeLibrary.js +++ b/packages/project/test/lib/build/definitions/themeLibrary.js @@ -1,7 +1,6 @@ -const test = require("ava"); -const sinon = require("sinon"); - -const themeLibrary = require("../../../../lib/build/definitions/themeLibrary"); +import test from "ava"; +import sinon from "sinon"; +import themeLibrary from "../../../../lib/build/definitions/themeLibrary.js"; function emptyarray() { return []; diff --git a/packages/project/test/lib/build/definitions/utils.js b/packages/project/test/lib/build/definitions/utils.js index b2a904c1a37..7cea787ceef 100644 --- a/packages/project/test/lib/build/definitions/utils.js +++ b/packages/project/test/lib/build/definitions/utils.js @@ -1,6 +1,5 @@ -const test = require("ava"); - -const {enhancePatternWithExcludes} = require("../../../../lib/build/definitions/_utils"); +import test from "ava"; +import {enhancePatternWithExcludes} from "../../../../lib/build/definitions/_utils.js"; test("enhancePatternWithExcludes", (t) => { const patterns = ["/default/pattern", "!/other/pattern"]; diff --git a/packages/project/test/lib/build/helpers/BuildContext.js b/packages/project/test/lib/build/helpers/BuildContext.js index 15c6347d4b2..61160cc9a7d 100644 --- a/packages/project/test/lib/build/helpers/BuildContext.js +++ b/packages/project/test/lib/build/helpers/BuildContext.js @@ -1,13 +1,12 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); +import test from "ava"; +import sinon from "sinon"; +import esmock from "esmock"; test.afterEach.always((t) => { sinon.restore(); - mock.stopAll(); }); -const BuildContext = require("../../../../lib/build/helpers/BuildContext"); +import BuildContext from "../../../../lib/build/helpers/BuildContext.js"; test("Missing parameters", (t) => { const error1 = t.throws(() => { @@ -111,21 +110,37 @@ test("getBuildOption", (t) => { "(not exposed as buold option)"); }); -test.serial("createProjectContext", (t) => { +test.serial("createProjectContext", async (t) => { + t.plan(6); + + const project = { + getType: sinon.stub().returns("foo") + }; + const taskRunner = {"task": "runner"}; class DummyProjectContext { constructor({buildContext, project, log}) { t.is(buildContext, testBuildContext, "Correct buildContext parameter"); - t.is(project, "project", "Correct project parameter"); + t.is(project, project, "Correct project parameter"); t.is(log, "log", "Correct log parameter"); } + getTaskUtil() { + return "taskUtil"; + } + setTaskRunner(_taskRunner) { + t.is(_taskRunner, taskRunner); + } } - mock("../../../../lib/build/helpers/ProjectBuildContext", DummyProjectContext); + const BuildContext = await esmock("../../../../lib/build/helpers/BuildContext.js", { + "../../../../lib/build/helpers/ProjectBuildContext.js": DummyProjectContext, + "../../../../lib/build/TaskRunner.js": { + create: sinon.stub().resolves(taskRunner) + }, - const BuildContext = mock.reRequire("../../../../lib/build/helpers/BuildContext"); + }); const testBuildContext = new BuildContext("graph", "taskRepository"); - const projectContext = testBuildContext.createProjectContext({ - project: "project", + const projectContext = await testBuildContext.createProjectContext({ + project, log: "log" }); diff --git a/packages/project/test/lib/build/helpers/ProjectBuildContext.js b/packages/project/test/lib/build/helpers/ProjectBuildContext.js index 93953ccdf9b..fa7718a8838 100644 --- a/packages/project/test/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/test/lib/build/helpers/ProjectBuildContext.js @@ -1,7 +1,7 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const ResourceTagCollection = require("@ui5/fs").ResourceTagCollection; +import test from "ava"; +import sinon from "sinon"; +import esmock from "esmock"; +import ResourceTagCollection from "@ui5/fs/internal/ResourceTagCollection"; test.beforeEach((t) => { t.context.resourceTagCollection = new ResourceTagCollection({ @@ -10,10 +10,9 @@ test.beforeEach((t) => { }); test.afterEach.always((t) => { sinon.restore(); - mock.stopAll(); }); -const ProjectBuildContext = require("../../../../lib/build/helpers/ProjectBuildContext"); +import ProjectBuildContext from "../../../../lib/build/helpers/ProjectBuildContext.js"; test("Missing parameters", (t) => { t.throws(() => { @@ -112,7 +111,7 @@ test("executeCleanupTasks", (t) => { t.is(task2.callCount, 1, "my task 2", "Cleanup task 2 got called"); }); -test.serial("getResourceTagCollection", (t) => { +test.serial("getResourceTagCollection", async (t) => { const projectAcceptsTagStub = sinon.stub().returns(false); projectAcceptsTagStub.withArgs("project-tag").returns(true); const projectContextAcceptsTagStub = sinon.stub().returns(false); @@ -136,11 +135,10 @@ test.serial("getResourceTagCollection", (t) => { return projectContextAcceptsTagStub(tag); } } - mock("@ui5/fs", { - ResourceTagCollection: DummyResourceTagCollection - }); - const ProjectBuildContext = mock.reRequire("../../../../lib/build/helpers/ProjectBuildContext"); + const ProjectBuildContext = await esmock("../../../../lib/build/helpers/ProjectBuildContext.js", { + "@ui5/fs/internal/ResourceTagCollection": DummyResourceTagCollection + }); const projectBuildContext = new ProjectBuildContext({ buildContext: {}, project: "project", @@ -206,6 +204,7 @@ test("getResourceTagCollection: Assigns project to resource if necessary", (t) = }); test("getProject", (t) => { + const project = "project"; const getProjectStub = sinon.stub().returns("pony"); const projectBuildContext = new ProjectBuildContext({ buildContext: { @@ -215,12 +214,16 @@ test("getProject", (t) => { }; } }, - project: "project", + project, log: "log" }); t.is(projectBuildContext.getProject("pony project"), "pony", "Returned correct value"); + t.is(getProjectStub.callCount, 1); t.is(getProjectStub.getCall(0).args[0], "pony project", "getProject got called with correct argument"); + + t.is(projectBuildContext.getProject(), project); + t.is(getProjectStub.callCount, 1, "getProject is not called again when requesting current project"); }); test("getTaskUtil", (t) => { @@ -234,38 +237,18 @@ test("getTaskUtil", (t) => { t.is(projectBuildContext.getTaskUtil(), projectBuildContext.getTaskUtil(), "Caches TaskUtil instance"); }); -test.serial("getTaskRunner", (t) => { - class DummyTaskRunner { - constructor(params) { - t.deepEqual(params, { - graph: "graph", - project: "project", - taskUtil: "taskUtil", - taskRepository: "taskRepository", - parentLogger: "log", - buildConfig: "buildConfig", - }, "Created TaskRunner instance with correct parameters"); - } - } - mock("../../../../lib/build/TaskRunner", DummyTaskRunner); - - const ProjectBuildContext = mock.reRequire("../../../../lib/build/helpers/ProjectBuildContext"); - +test.serial("setTaskRunner / getTaskRunner", (t) => { const projectBuildContext = new ProjectBuildContext({ - buildContext: { - getGraph: () => "graph", - getBuildConfig: () => "buildConfig", - getTaskRepository: () => "taskRepository", - }, + buildContext: {}, project: "project", - log: "log", + log: "log" }); - sinon.stub(projectBuildContext, "getTaskUtil").returns("taskUtil"); + t.is(projectBuildContext.getTaskRunner(), undefined, "No taskRunner assigned / created by default"); + + const taskRunner = {"task": "runner"}; + projectBuildContext.setTaskRunner(taskRunner); - t.true(projectBuildContext.getTaskRunner() instanceof DummyTaskRunner, - "Returned a TaskRunner instance"); - t.is(projectBuildContext.getTaskRunner(), projectBuildContext.getTaskRunner(), - "Caches TaskRunner instance"); + t.is(projectBuildContext.getTaskRunner(), taskRunner, "getter returns previously set object"); }); diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index e7bfd167cbc..d8cc0f001a8 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -1,6 +1,6 @@ -const test = require("ava"); -const sinon = require("sinon"); -const TaskUtil = require("../../../../lib/build/helpers/TaskUtil"); +import test from "ava"; +import sinon from "sinon"; +import TaskUtil from "../../../../lib/build/helpers/TaskUtil.js"; test.afterEach.always((t) => { sinon.restore(); diff --git a/packages/project/test/lib/build/helpers/composeProjectList.js b/packages/project/test/lib/build/helpers/composeProjectList.js index f8aef92e8a9..f539e833210 100644 --- a/packages/project/test/lib/build/helpers/composeProjectList.js +++ b/packages/project/test/lib/build/helpers/composeProjectList.js @@ -1,9 +1,11 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const path = require("path"); -const logger = require("@ui5/logger"); -const generateProjectGraph = require("../../../../lib/generateProjectGraph"); +import test from "ava"; +import sinon from "sinon"; +import esmock from "esmock"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import {graphFromObject} from "../../../../lib/graph/graph.js"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const libraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.e"); @@ -11,18 +13,19 @@ const libraryFPath = path.join(__dirname, "..", "..", "..", "fixtures", "library const libraryGPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.g"); const libraryDDependerPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.d-depender"); -test.beforeEach((t) => { +test.beforeEach(async (t) => { t.context.log = { warn: sinon.stub() }; - sinon.stub(logger, "getLogger").callThrough() - .withArgs("build:helpers:composeProjectList").returns(t.context.log); - t.context.composeProjectList = mock.reRequire("../../../../lib/build/helpers/composeProjectList"); + t.context.composeProjectList = await esmock("../../../../lib/build/helpers/composeProjectList", { + "@ui5/logger": { + getLogger: sinon.stub().withArgs("build:helpers:composeProjectList").returns(t.context.log) + } + }); }); test.afterEach.always((t) => { sinon.restore(); - mock.stopAll(); }); test.serial("_getFlattenedDependencyTree", async (t) => { @@ -78,7 +81,7 @@ test.serial("_getFlattenedDependencyTree", async (t) => { }] }] }; - const graph = await generateProjectGraph.usingObject({dependencyTree: tree}); + const graph = await graphFromObject({dependencyTree: tree}); t.deepEqual(await _getFlattenedDependencyTree(graph), { "library.e": ["library.d", "library.a", "library.b", "library.c"], @@ -95,7 +98,8 @@ async function assertCreateDependencyLists(t, { includeDependency, includeDependencyRegExp, includeDependencyTree, excludeDependency, excludeDependencyRegExp, excludeDependencyTree, defaultIncludeDependency, defaultIncludeDependencyRegExp, defaultIncludeDependencyTree, - expectedIncludedDependencies, expectedExcludedDependencies + expectedIncludedDependencies, expectedExcludedDependencies, + expectedLogWarnCallCount = 0 }) { const tree = { // Does not reflect actual dependencies in fixtures id: "application.a.id", @@ -159,7 +163,7 @@ async function assertCreateDependencyLists(t, { }] }; - const graph = await generateProjectGraph.usingObject({dependencyTree: tree}); + const graph = await graphFromObject({dependencyTree: tree}); const {includedDependencies, excludedDependencies} = await t.context.composeProjectList(graph, { includeAllDependencies, @@ -175,6 +179,8 @@ async function assertCreateDependencyLists(t, { }); t.deepEqual(includedDependencies, expectedIncludedDependencies, "Correct set of included dependencies"); t.deepEqual(excludedDependencies, expectedExcludedDependencies, "Correct set of excluded dependencies"); + + t.is(t.context.log.warn.callCount, expectedLogWarnCallCount); } test.serial("createDependencyLists: only includes", async (t) => { @@ -306,3 +312,16 @@ test.serial("createDependencyLists: defaultIncludeDependencyTree has lower prior expectedExcludedDependencies: ["library.a", "library.b"] }); }); + +test.serial("createDependencyLists: Could not find dependency", async (t) => { + await assertCreateDependencyLists(t, { + includeAllDependencies: false, + includeDependency: ["not.in.dependency.tree"], + expectedIncludedDependencies: [], + expectedExcludedDependencies: [], + expectedLogWarnCallCount: 1 + }); + t.deepEqual(t.context.log.warn.getCall(0).args, [ + `Could not find dependency "not.in.dependency.tree" for project application.a. Dependency filter is ignored` + ]); +}); diff --git a/packages/project/test/lib/build/helpers/composeTaskList.js b/packages/project/test/lib/build/helpers/composeTaskList.js index 7ba4a62f4c0..f817c7adf7b 100644 --- a/packages/project/test/lib/build/helpers/composeTaskList.js +++ b/packages/project/test/lib/build/helpers/composeTaskList.js @@ -1,20 +1,21 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const logger = require("@ui5/logger"); +import test from "ava"; +import sinon from "sinon"; +import esmock from "esmock"; +import logger from "@ui5/logger"; -test.beforeEach((t) => { +test.beforeEach(async (t) => { t.context.log = { warn: sinon.stub() }; - sinon.stub(logger, "getLogger").withArgs("build:helpers:composeTaskList").returns(t.context.log); + const logStub = sinon.stub(logger, "getLogger").withArgs("build:helpers:composeTaskList").returns(t.context.log); - t.context.composeTaskList = mock.reRequire("../../../../lib/build/helpers/composeTaskList"); + t.context.composeTaskList = await esmock("../../../../lib/build/helpers/composeTaskList.js", { + "@ui5/logger": logStub + }); }); test.afterEach.always(() => { sinon.restore(); - mock.stopAll(); }); const allTasks = [ diff --git a/packages/project/test/lib/build/helpers/createBuildManifest.integration.js b/packages/project/test/lib/build/helpers/createBuildManifest.integration.js index 99733e05b27..a0aa65ba966 100644 --- a/packages/project/test/lib/build/helpers/createBuildManifest.integration.js +++ b/packages/project/test/lib/build/helpers/createBuildManifest.integration.js @@ -1,8 +1,11 @@ -const test = require("ava"); -const path = require("path"); -const createBuildManifest = require("../../../../lib/build/helpers/createBuildManifest"); -const Module = require("../../../../lib/graph/Module"); -const Specification = require("../../../../lib/specifications/Specification"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import createBuildManifest from "../../../../lib/build/helpers/createBuildManifest.js"; +import Module from "../../../../lib/graph/Module.js"; +import Specification from "../../../../lib/specifications/Specification.js"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const buildDescrApplicationAPath = @@ -61,7 +64,8 @@ test("Create project from application project providing a build manifest", async "Archive project has correct tag"); t.is(project.getVersion(), "2.0.0", "Archive project has version from archive module"); - const resources = await project.getReader().byGlob("**/test.js"); + const reader = await project.getReader(); + const resources = await reader.byGlob("**/test.js"); t.is(resources.length, 1, "Found requested resource in archive project"); t.is(resources[0].getPath(), "/resources/id1/test.js", @@ -88,7 +92,8 @@ test("Create project from library project providing a build manifest", async (t) "Archive project has correct tag"); t.is(project.getVersion(), "2.0.0", "Archive project has version from archive module"); - const resources = await project.getReader().byGlob("**/some.js"); + const reader = await project.getReader(); + const resources = await reader.byGlob("**/some.js"); t.is(resources.length, 1, "Found requested resource in archive project"); t.is(resources[0].getPath(), "/resources/library/e/some.js", diff --git a/packages/project/test/lib/build/helpers/createBuildManifest.js b/packages/project/test/lib/build/helpers/createBuildManifest.js index ade34085cf3..2cc3501863f 100644 --- a/packages/project/test/lib/build/helpers/createBuildManifest.js +++ b/packages/project/test/lib/build/helpers/createBuildManifest.js @@ -1,7 +1,11 @@ -const test = require("ava"); -const path = require("path"); -const createBuildManifest = require("../../../../lib/build/helpers/createBuildManifest"); -const Specification = require("../../../../lib/specifications/Specification"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import semver from "semver"; +import createBuildManifest from "../../../../lib/build/helpers/createBuildManifest.js"; +import Specification from "../../../../lib/specifications/Specification.js"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const applicationProjectInput = { @@ -44,9 +48,19 @@ test("Create application from project with build manifest", async (t) => { project.getResourceTagCollection().setTag("/resources/id1/foo.js", "ui5:HasDebugVariant"); const metadata = await createBuildManifest(project, "buildConfig"); + t.truthy(new Date(metadata.buildManifest.timestamp), "Timestamp is valid"); metadata.buildManifest.timestamp = ""; + t.not(semver.valid(metadata.buildManifest.versions.builderVersion), null, "builder version should be filled"); + metadata.buildManifest.versions.builderVersion = ""; + + t.not(semver.valid(metadata.buildManifest.versions.fsVersion), null, "fs version should be filled"); + metadata.buildManifest.versions.fsVersion = ""; + + t.not(semver.valid(metadata.buildManifest.versions.projectVersion), null, "project version should be filled"); + metadata.buildManifest.versions.projectVersion = ""; + t.deepEqual(metadata, { project: { specVersion: "2.3", @@ -69,9 +83,9 @@ test("Create application from project with build manifest", async (t) => { timestamp: "", version: "1.0.0", versions: { - builderVersion: require("@ui5/builder/package.json").version, - fsVersion: require("@ui5/fs/package.json").version, - projectVersion: require("../../../../package.json").version, + builderVersion: "", + fsVersion: "", + projectVersion: "", }, tags: { "/resources/id1/foo.js": { @@ -87,9 +101,19 @@ test("Create library from project with build manifest", async (t) => { project.getResourceTagCollection().setTag("/resources/library/d/foo.js", "ui5:HasDebugVariant"); const metadata = await createBuildManifest(project, "buildConfig"); + t.truthy(new Date(metadata.buildManifest.timestamp), "Timestamp is valid"); metadata.buildManifest.timestamp = ""; + t.not(semver.valid(metadata.buildManifest.versions.builderVersion), null, "builder version should be filled"); + metadata.buildManifest.versions.builderVersion = ""; + + t.not(semver.valid(metadata.buildManifest.versions.fsVersion), null, "fs version should be filled"); + metadata.buildManifest.versions.fsVersion = ""; + + t.not(semver.valid(metadata.buildManifest.versions.projectVersion), null, "project version should be filled"); + metadata.buildManifest.versions.projectVersion = ""; + t.deepEqual(metadata, { project: { specVersion: "2.3", @@ -113,9 +137,9 @@ test("Create library from project with build manifest", async (t) => { timestamp: "", version: "1.0.0", versions: { - builderVersion: require("@ui5/builder/package.json").version, - fsVersion: require("@ui5/fs/package.json").version, - projectVersion: require("../../../../package.json").version, + builderVersion: "", + fsVersion: "", + projectVersion: "", }, tags: { "/resources/library/d/foo.js": { diff --git a/packages/project/test/lib/graph/Module.js b/packages/project/test/lib/graph/Module.js index d154b83ef97..46457ee6692 100644 --- a/packages/project/test/lib/graph/Module.js +++ b/packages/project/test/lib/graph/Module.js @@ -1,7 +1,10 @@ -const test = require("ava"); -const sinon = require("sinon"); -const path = require("path"); -const Module = require("../../../lib/graph/Module"); +import test from "ava"; +import sinon from "sinon"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import Module from "../../../lib/graph/Module.js"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); const buildDescriptionApplicationAPath = @@ -369,7 +372,7 @@ test("Invalid configuration in file", async (t) => { }); const err = await t.throwsAsync(ui5Module.getSpecifications()); - t.true(err.message.startsWith("Invalid ui5.yaml configuration"), "Threw with validation error"); + t.true(err.message.includes("Invalid ui5.yaml configuration"), "Threw with validation error"); // Check that config file name is referenced. This validates that the error was not produced by // the Specification instance but the Module t.true(err.message.includes("ui5-test-error.yaml"), "Error message references file name"); diff --git a/packages/project/test/lib/graph/ProjectGraph.js b/packages/project/test/lib/graph/ProjectGraph.js index 3c6d1670dcf..f7b88e6612f 100644 --- a/packages/project/test/lib/graph/ProjectGraph.js +++ b/packages/project/test/lib/graph/ProjectGraph.js @@ -1,9 +1,12 @@ -const path = require("path"); -const test = require("ava"); -const sinonGlobal = require("sinon"); -const mock = require("mock-require"); -const logger = require("@ui5/logger"); -const Specification = require("../../../lib/specifications/Specification"); +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import test from "ava"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +import Specification from "../../../lib/specifications/Specification.js"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); async function createProject(name) { @@ -61,7 +64,7 @@ async function _traverse(t, graph, expectedOrder, bfs) { t.deepEqual(callbackCalls, expectedOrder, "Traversed graph in correct order"); } -test.beforeEach((t) => { +test.beforeEach(async (t) => { const sinon = t.context.sinon = sinonGlobal.createSandbox(); t.context.log = { @@ -71,14 +74,17 @@ test.beforeEach((t) => { info: sinon.stub(), isLevelEnabled: () => true }; - sinon.stub(logger, "getLogger").callThrough() - .withArgs("graph:ProjectGraph").returns(t.context.log); - t.context.ProjectGraph = mock.reRequire("../../../lib/graph/ProjectGraph"); - logger.getLogger.restore(); // Immediately restore global stub for following tests + + t.context.ProjectGraph = await esmock.p("../../../lib/graph/ProjectGraph.js", { + "@ui5/logger": { + getLogger: sinon.stub().withArgs("graph:ProjectGraph").returns(t.context.log) + } + }); }); test.afterEach.always((t) => { t.context.sinon.restore(); + esmock.purge(t.context.ProjectGraph); }); test("Instantiate a basic project graph", (t) => { diff --git a/packages/project/test/lib/graph/ShimCollection.js b/packages/project/test/lib/graph/ShimCollection.js index 1328af08584..05e6b881d32 100644 --- a/packages/project/test/lib/graph/ShimCollection.js +++ b/packages/project/test/lib/graph/ShimCollection.js @@ -1,6 +1,5 @@ -const test = require("ava"); - -const ShimCollection = require("../../../lib/graph/ShimCollection"); +import test from "ava"; +import ShimCollection from "../../../lib/graph/ShimCollection.js"; test("Add shims", (t) => { const collection = new ShimCollection(); diff --git a/packages/project/test/lib/generateProjectGraph.js b/packages/project/test/lib/graph/graph.js similarity index 73% rename from packages/project/test/lib/generateProjectGraph.js rename to packages/project/test/lib/graph/graph.js index 94016dce13b..76a419f7a40 100644 --- a/packages/project/test/lib/generateProjectGraph.js +++ b/packages/project/test/lib/graph/graph.js @@ -1,9 +1,11 @@ -const test = require("ava"); -const path = require("path"); -const sinonGlobal = require("sinon"); -const mock = require("mock-require"); - -test.beforeEach((t) => { +import test from "ava"; +import {fileURLToPath} from "node:url"; +import path from "node:path"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +test.beforeEach(async (t) => { const sinon = t.context.sinon = sinonGlobal.createSandbox(); t.context.npmProviderConstructorStub = sinon.stub(); @@ -12,8 +14,8 @@ test.beforeEach((t) => { t.context.npmProviderConstructorStub(params); } } + t.context.DummyNpmProvider = DummyNpmProvider; - mock("../../lib/graph/providers/NodePackageDependencies", DummyNpmProvider); t.context.dependencyTreeProviderStub = sinon.stub(); class DummyDependencyTreeProvider { @@ -22,29 +24,32 @@ test.beforeEach((t) => { } } t.context.DummyDependencyTreeProvider = DummyDependencyTreeProvider; - mock("../../lib/graph/providers/DependencyTree", DummyDependencyTreeProvider); t.context.projectGraphBuilderStub = sinon.stub().resolves("graph"); - mock("../../lib/graph/projectGraphBuilder", t.context.projectGraphBuilderStub); - - const ui5Framework = require("../../lib/graph/helpers/ui5Framework"); - t.context.enrichProjectGraphStub = sinon.stub(ui5Framework, "enrichProjectGraph"); - - t.context.generateProjectGraph = mock.reRequire("../../lib/generateProjectGraph"); + t.context.enrichProjectGraphStub = sinon.stub(); + t.context.graph = await esmock.p("../../../lib/graph/graph.js", { + "../../../lib/graph/providers/NodePackageDependencies.js": t.context.DummyNpmProvider, + "../../../lib/graph/providers/DependencyTree.js": t.context.DummyDependencyTreeProvider, + "../../../lib/graph/projectGraphBuilder.js": t.context.projectGraphBuilderStub, + "../../../lib/graph/helpers/ui5Framework.js": { + enrichProjectGraph: t.context.enrichProjectGraphStub + } + }); }); test.afterEach.always((t) => { t.context.sinon.restore(); - mock.stopAll(); + esmock.purge(t.context.graph); }); -test.serial("usingNodePackageDependencies", async (t) => { +test.serial("graphFromPackageDependencies", async (t) => { const { - generateProjectGraph, npmProviderConstructorStub, + npmProviderConstructorStub, projectGraphBuilderStub, enrichProjectGraphStub, DummyNpmProvider } = t.context; + const {graphFromPackageDependencies} = t.context.graph; - const res = await generateProjectGraph.usingNodePackageDependencies({ + const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", rootConfigPath: "rootConfigPath", @@ -55,7 +60,7 @@ test.serial("usingNodePackageDependencies", async (t) => { t.is(npmProviderConstructorStub.callCount, 1, "NPM provider constructor got called once"); t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { - cwd: path.join(__dirname, "..", "..", "cwd"), + cwd: path.join(__dirname, "..", "..", "..", "cwd"), rootConfiguration: "rootConfiguration", rootConfigPath: "rootConfigPath", }, "Created NodePackageDependencies provider instance with correct parameters"); @@ -72,10 +77,11 @@ test.serial("usingNodePackageDependencies", async (t) => { }, "enrichProjectGraph got called with correct options"); }); -test.serial("usingNodePackageDependencies: Do not resolve framework dependencies", async (t) => { - const {generateProjectGraph, enrichProjectGraphStub} = t.context; +test.serial("graphFromPackageDependencies: Do not resolve framework dependencies", async (t) => { + const {enrichProjectGraphStub} = t.context; + const {graphFromPackageDependencies} = t.context.graph; - const res = await generateProjectGraph.usingNodePackageDependencies({ + const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", rootConfigPath: "rootConfigPath", @@ -87,16 +93,17 @@ test.serial("usingNodePackageDependencies: Do not resolve framework dependencies t.is(enrichProjectGraphStub.callCount, 0, "enrichProjectGraph did not get called"); }); -test.serial("usingStaticFile", async (t) => { +test.serial("graphFromStaticFile", async (t) => { const { - generateProjectGraph, dependencyTreeProviderStub, + dependencyTreeProviderStub, projectGraphBuilderStub, enrichProjectGraphStub, DummyDependencyTreeProvider } = t.context; + const {graphFromStaticFile} = t.context.graph; - const readDependencyConfigFileStub = t.context.sinon.stub(generateProjectGraph, "_readDependencyConfigFile") + const readDependencyConfigFileStub = t.context.sinon.stub(graphFromStaticFile._utils, "readDependencyConfigFile") .resolves("dependencyTree"); - const res = await generateProjectGraph.usingStaticFile({ + const res = await graphFromStaticFile({ cwd: "cwd", filePath: "file/path", rootConfiguration: "rootConfiguration", @@ -107,7 +114,7 @@ test.serial("usingStaticFile", async (t) => { t.is(res, "graph"); t.is(readDependencyConfigFileStub.callCount, 1, "_readDependencyConfigFile got called once"); - t.is(readDependencyConfigFileStub.getCall(0).args[0], path.join(__dirname, "..", "..", "cwd"), + t.is(readDependencyConfigFileStub.getCall(0).args[0], path.join(__dirname, "..", "..", "..", "cwd"), "_readDependencyConfigFile got called with correct directory"); t.is(readDependencyConfigFileStub.getCall(0).args[1], "file/path", "_readDependencyConfigFile got called with correct file path"); @@ -131,13 +138,14 @@ test.serial("usingStaticFile", async (t) => { }, "enrichProjectGraph got called with correct options"); }); -test.serial("usingStaticFile: Do not resolve framework dependencies", async (t) => { - const {generateProjectGraph, enrichProjectGraphStub} = t.context; +test.serial("graphFromStaticFile: Do not resolve framework dependencies", async (t) => { + const {enrichProjectGraphStub} = t.context; + const {graphFromStaticFile} = t.context.graph; - t.context.sinon.stub(generateProjectGraph, "_readDependencyConfigFile") + t.context.sinon.stub(graphFromStaticFile._utils, "readDependencyConfigFile") .resolves("dependencyTree"); - const res = await generateProjectGraph.usingStaticFile({ + const res = await graphFromStaticFile({ cwd: "cwd", filePath: "filePath", rootConfiguration: "rootConfiguration", @@ -152,11 +160,12 @@ test.serial("usingStaticFile: Do not resolve framework dependencies", async (t) test.serial("usingObject", async (t) => { const { - generateProjectGraph, dependencyTreeProviderStub, + dependencyTreeProviderStub, projectGraphBuilderStub, enrichProjectGraphStub, DummyDependencyTreeProvider } = t.context; + const {graphFromObject} = t.context.graph; - const res = await generateProjectGraph.usingObject({ + const res = await graphFromObject({ dependencyTree: "dependencyTree", rootConfiguration: "rootConfiguration", rootConfigPath: "rootConfigPath", @@ -185,8 +194,9 @@ test.serial("usingObject", async (t) => { }); test.serial("usingObject: Do not resolve framework dependencies", async (t) => { - const {generateProjectGraph, enrichProjectGraphStub} = t.context; - const res = await generateProjectGraph.usingObject({ + const {enrichProjectGraphStub} = t.context; + const {graphFromObject} = t.context.graph; + const res = await graphFromObject({ cwd: "cwd", filePath: "filePath", rootConfiguration: "rootConfiguration", diff --git a/packages/project/test/lib/generateProjectGraph.usingObject.js b/packages/project/test/lib/graph/graphFromObject.js similarity index 90% rename from packages/project/test/lib/generateProjectGraph.usingObject.js rename to packages/project/test/lib/graph/graphFromObject.js index fe2aa744683..7efa41072bf 100644 --- a/packages/project/test/lib/generateProjectGraph.usingObject.js +++ b/packages/project/test/lib/graph/graphFromObject.js @@ -1,24 +1,26 @@ -const test = require("ava"); -const path = require("path"); -const sinonGlobal = require("sinon"); -const mock = require("mock-require"); -const logger = require("@ui5/logger"); -const ValidationError = require("../../lib/validation/ValidationError"); - -const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); -const applicationBPath = path.join(__dirname, "..", "fixtures", "application.b"); -const applicationCPath = path.join(__dirname, "..", "fixtures", "application.c"); -const libraryAPath = path.join(__dirname, "..", "fixtures", "collection", "library.a"); -const libraryBPath = path.join(__dirname, "..", "fixtures", "collection", "library.b"); -const libraryDPath = path.join(__dirname, "..", "fixtures", "library.d"); -const cycleDepsBasePath = path.join(__dirname, "..", "fixtures", "cyclic-deps", "node_modules"); -const pathToInvalidModule = path.join(__dirname, "..", "fixtures", "invalidModule"); - -const legacyLibraryAPath = path.join(__dirname, "..", "fixtures", "legacy.library.a"); -const legacyLibraryBPath = path.join(__dirname, "..", "fixtures", "legacy.library.b"); -const legacyCollectionAPath = path.join(__dirname, "..", "fixtures", "legacy.collection.a"); - -test.beforeEach((t) => { +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +import ValidationError from "../../../lib/validation/ValidationError.js"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const applicationBPath = path.join(__dirname, "..", "..", "fixtures", "application.b"); +const applicationCPath = path.join(__dirname, "..", "..", "fixtures", "application.c"); +const libraryAPath = path.join(__dirname, "..", "..", "fixtures", "collection", "library.a"); +const libraryBPath = path.join(__dirname, "..", "..", "fixtures", "collection", "library.b"); +const libraryDPath = path.join(__dirname, "..", "..", "fixtures", "library.d"); +const cycleDepsBasePath = path.join(__dirname, "..", "..", "fixtures", "cyclic-deps", "node_modules"); +const pathToInvalidModule = path.join(__dirname, "..", "..", "fixtures", "invalidModule"); + +const legacyLibraryAPath = path.join(__dirname, "..", "..", "fixtures", "legacy.library.a"); +const legacyLibraryBPath = path.join(__dirname, "..", "..", "fixtures", "legacy.library.b"); +const legacyCollectionAPath = path.join(__dirname, "..", "..", "fixtures", "legacy.collection.a"); + +test.beforeEach(async (t) => { const sinon = t.context.sinon = sinonGlobal.createSandbox(); t.context.log = { @@ -28,26 +30,32 @@ test.beforeEach((t) => { info: sinon.stub(), isLevelEnabled: () => true }; - sinon.stub(logger, "getLogger").callThrough().withArgs("graph:projectGraphBuilder").returns(t.context.log); - mock.reRequire("../../lib/graph/projectGraphBuilder"); - t.context.projectGraphFromTree = mock.reRequire("../../lib/generateProjectGraph").usingObject; - logger.getLogger.restore(); // Immediately restore global stub for following tests + + t.context.graph = await esmock.p("../../../lib/graph/graph.js", { + "../../../lib/graph/projectGraphBuilder": await esmock("../../../lib/graph/projectGraphBuilder.js", { + "@ui5/logger": { + getLogger: sinon.stub().withArgs("graph:projectGraphBuilder").returns(t.context.log) + } + }) + }); + t.context.graphFromObject = t.context.graph.graphFromObject; }); test.afterEach.always((t) => { t.context.sinon.restore(); + esmock.purge(t.context.graph); }); test("Application A", async (t) => { - const {projectGraphFromTree} = t.context; - const projectGraph = await projectGraphFromTree({dependencyTree: getApplicationATree()}); + const {graphFromObject} = t.context; + const projectGraph = await graphFromObject({dependencyTree: getApplicationATree()}); const rootProject = projectGraph.getRoot(); t.is(rootProject.getName(), "application.a", "Returned correct root project"); }); test("Application A: Traverse project graph breadth first", async (t) => { - const {projectGraphFromTree} = t.context; - const projectGraph = await projectGraphFromTree({dependencyTree: getApplicationATree()}); + const {graphFromObject} = t.context; + const projectGraph = await graphFromObject({dependencyTree: getApplicationATree()}); const callbackStub = t.context.sinon.stub().resolves(); await projectGraph.traverseBreadthFirst(callbackStub); @@ -65,8 +73,8 @@ test("Application A: Traverse project graph breadth first", async (t) => { }); test("Application Cycle A: Traverse project graph breadth first with cycles", async (t) => { - const {projectGraphFromTree, sinon} = t.context; - const projectGraph = await projectGraphFromTree({dependencyTree: applicationCycleATreeIncDeduped}); + const {graphFromObject, sinon} = t.context; + const projectGraph = await graphFromObject({dependencyTree: applicationCycleATreeIncDeduped}); const callbackStub = sinon.stub().resolves(); const error = await t.throwsAsync(projectGraph.traverseBreadthFirst(callbackStub)); @@ -87,8 +95,8 @@ test("Application Cycle A: Traverse project graph breadth first with cycles", as }); test("Application Cycle B: Traverse project graph breadth first with cycles", async (t) => { - const {projectGraphFromTree, sinon} = t.context; - const projectGraph = await projectGraphFromTree({dependencyTree: applicationCycleBTreeIncDeduped}); + const {graphFromObject, sinon} = t.context; + const projectGraph = await graphFromObject({dependencyTree: applicationCycleBTreeIncDeduped}); const callbackStub = sinon.stub().resolves(); await projectGraph.traverseBreadthFirst(callbackStub); @@ -106,8 +114,8 @@ test("Application Cycle B: Traverse project graph breadth first with cycles", as }); test("Application A: Traverse project graph depth first", async (t) => { - const {projectGraphFromTree, sinon} = t.context; - const projectGraph = await projectGraphFromTree({dependencyTree: getApplicationATree()}); + const {graphFromObject, sinon} = t.context; + const projectGraph = await graphFromObject({dependencyTree: getApplicationATree()}); const callbackStub = sinon.stub().resolves(); await projectGraph.traverseDepthFirst(callbackStub); @@ -127,8 +135,8 @@ test("Application A: Traverse project graph depth first", async (t) => { test("Application Cycle A: Traverse project graph depth first with cycles", async (t) => { - const {projectGraphFromTree, sinon} = t.context; - const projectGraph = await projectGraphFromTree({dependencyTree: applicationCycleATreeIncDeduped}); + const {graphFromObject, sinon} = t.context; + const projectGraph = await graphFromObject({dependencyTree: applicationCycleATreeIncDeduped}); const callbackStub = sinon.stub().resolves(); const error = await t.throwsAsync(projectGraph.traverseDepthFirst(callbackStub)); @@ -141,8 +149,8 @@ test("Application Cycle A: Traverse project graph depth first with cycles", asyn }); test("Application Cycle B: Traverse project graph depth first with cycles", async (t) => { - const {projectGraphFromTree, sinon} = t.context; - const projectGraph = await projectGraphFromTree({dependencyTree: applicationCycleBTreeIncDeduped}); + const {graphFromObject, sinon} = t.context; + const projectGraph = await graphFromObject({dependencyTree: applicationCycleBTreeIncDeduped}); const callbackStub = sinon.stub().resolves(); const error = await t.throwsAsync(projectGraph.traverseDepthFirst(callbackStub)); @@ -170,8 +178,8 @@ async function _testBasicGraphCreation(t, tree, expectedOrder, bfs) { if (bfs === undefined) { throw new Error("Test error: Parameter 'bfs' must be specified"); } - const {projectGraphFromTree, sinon} = t.context; - const projectGraph = await projectGraphFromTree({dependencyTree: tree}); + const {graphFromObject, sinon} = t.context; + const projectGraph = await graphFromObject({dependencyTree: tree}); const callbackStub = sinon.stub().resolves(); if (bfs) { await projectGraph.traverseBreadthFirst(callbackStub); @@ -229,7 +237,7 @@ test("Project with inline configuration as array", async (t) => { }); test("Project with inline configuration for two projects", async (t) => { - const {projectGraphFromTree} = t.context; + const {graphFromObject} = t.context; const tree = { id: "application.a.id", path: applicationAPath, @@ -250,7 +258,7 @@ test("Project with inline configuration for two projects", async (t) => { }] }; - await t.throwsAsync(projectGraphFromTree({dependencyTree: tree}), + await t.throwsAsync(graphFromObject({dependencyTree: tree}), { message: `Found 2 configurations of kind 'project' for module application.a.id. ` + @@ -300,14 +308,14 @@ test("Project with ui5.yaml at default location and some configuration", async ( }); test("Missing configuration file for root project", async (t) => { - const {projectGraphFromTree} = t.context; + const {graphFromObject} = t.context; const tree = { id: "application.a.id", version: "1.0.0", path: "non-existent", dependencies: [] }; - await t.throwsAsync(projectGraphFromTree({dependencyTree: tree}), + await t.throwsAsync(graphFromObject({dependencyTree: tree}), { message: "Failed to create a UI5 project from module application.a.id at non-existent. " + @@ -317,17 +325,17 @@ test("Missing configuration file for root project", async (t) => { }); test("Missing id for root project", async (t) => { - const {projectGraphFromTree} = t.context; + const {graphFromObject} = t.context; const tree = { path: path.join(__dirname, "fixtures/application.a"), dependencies: [] }; - await t.throwsAsync(projectGraphFromTree({dependencyTree: tree}), + await t.throwsAsync(graphFromObject({dependencyTree: tree}), {message: "Could not create Module: Missing or empty parameter 'id'"}, "Rejected with error"); }); test("No type configured for root project", async (t) => { - const {projectGraphFromTree} = t.context; + const {graphFromObject} = t.context; const tree = { id: "application.a.id", version: "1.0.0", @@ -341,24 +349,24 @@ test("No type configured for root project", async (t) => { } } }; - const error = await t.throwsAsync(projectGraphFromTree({dependencyTree: tree})); + const error = await t.throwsAsync(graphFromObject({dependencyTree: tree})); t.is(error.message, `Unable to create Specification instance: Unknown specification type 'undefined'`); }); test("Missing dependencies", async (t) => { - const {projectGraphFromTree} = t.context; + const {graphFromObject} = t.context; const tree = ({ id: "application.a.id", version: "1.0.0", path: applicationAPath }); - await t.notThrowsAsync(projectGraphFromTree({dependencyTree: tree}), + await t.notThrowsAsync(graphFromObject({dependencyTree: tree}), "Gracefully accepted project with no dependencies attribute"); }); test("Missing second-level dependencies", async (t) => { - const {projectGraphFromTree} = t.context; + const {graphFromObject} = t.context; const tree = ({ id: "application.a.id", version: "1.0.0", @@ -369,7 +377,7 @@ test("Missing second-level dependencies", async (t) => { path: path.join(applicationAPath, "node_modules", "library.d") }] }); - await t.notThrowsAsync(projectGraphFromTree({dependencyTree: tree}), + await t.notThrowsAsync(graphFromObject({dependencyTree: tree}), "Gracefully accepted project with no dependencies attribute"); }); @@ -1080,7 +1088,7 @@ const treeWithInvalidModules = { * A shim extension located in a project's dependencies can't influence other dependencies of that project anymore * TODO: Check whether the above is fine for us -test.only("Legacy: Project with project-shim extension with dependency configuration", async (t) => { +test("Legacy: Project with project-shim extension with dependency configuration", async (t) => { const tree = { id: "application.a.id", path: applicationAPath, @@ -1226,7 +1234,7 @@ test("Project with project-shim extension dependency with dependency configurati }); test("Project with project-shim extension with invalid dependency configuration", async (t) => { - const {projectGraphFromTree} = t.context; + const {graphFromObject} = t.context; const tree = { id: "application.a.id", path: applicationAPath, @@ -1260,7 +1268,7 @@ test("Project with project-shim extension with invalid dependency configuration" dependencies: [] }] }; - const validationError = await t.throwsAsync(projectGraphFromTree({dependencyTree: tree}), { + const validationError = await t.throwsAsync(graphFromObject({dependencyTree: tree}), { instanceOf: ValidationError }); t.true(validationError.message.includes("Configuration must have required property 'metadata'"), @@ -1517,7 +1525,7 @@ test.skip("Project with project-shim extension with self-containing collection s }); test("Project with unknown extension dependency inline configuration", async (t) => { - const {projectGraphFromTree} = t.context; + const {graphFromObject} = t.context; const tree = { id: "application.a", path: applicationAPath, @@ -1544,7 +1552,7 @@ test("Project with unknown extension dependency inline configuration", async (t) dependencies: [], }], }; - const validationError = await t.throwsAsync(projectGraphFromTree({dependencyTree: tree})); + const validationError = await t.throwsAsync(graphFromObject({dependencyTree: tree})); t.is(validationError.message, `Unable to create Specification instance: Unknown specification type 'phony-pony'`, "Should throw with expected error message"); @@ -1623,8 +1631,8 @@ test("Project with middleware extension dependency", async (t) => { }); test("rootConfiguration", async (t) => { - const {projectGraphFromTree} = t.context; - const projectGraph = await projectGraphFromTree({ + const {graphFromObject} = t.context; + const projectGraph = await graphFromObject({ dependencyTree: getApplicationATree(), rootConfiguration: { specVersion: "2.6", @@ -1644,8 +1652,8 @@ test("rootConfiguration", async (t) => { }); test("rootConfig", async (t) => { - const {projectGraphFromTree} = t.context; - const projectGraph = await projectGraphFromTree({ + const {graphFromObject} = t.context; + const projectGraph = await graphFromObject({ dependencyTree: getApplicationATree(), rootConfigPath: "ui5-test-configPath.yaml" }); diff --git a/packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js b/packages/project/test/lib/graph/graphFromPackageDependencies.js similarity index 64% rename from packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js rename to packages/project/test/lib/graph/graphFromPackageDependencies.js index 764388768bf..6859da27739 100644 --- a/packages/project/test/lib/generateProjectGraph.usingNodePackageDependencies.js +++ b/packages/project/test/lib/graph/graphFromPackageDependencies.js @@ -1,10 +1,12 @@ -const test = require("ava"); -const path = require("path"); -const sinonGlobal = require("sinon"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinonGlobal from "sinon"; +import {graphFromPackageDependencies} from "../../../lib/graph/graph.js"; -const projectGraphFromPackageDeps = require("../../lib/generateProjectGraph").usingNodePackageDependencies; +const __dirname = path.dirname(fileURLToPath(import.meta.url)); -const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); test.beforeEach((t) => { t.context.sinon = sinonGlobal.createSandbox(); }); @@ -14,13 +16,13 @@ test.afterEach.always((t) => { }); test("Application A", async (t) => { - const projectGraph = await projectGraphFromPackageDeps({cwd: applicationAPath}); + const projectGraph = await graphFromPackageDependencies({cwd: applicationAPath}); const rootProject = projectGraph.getRoot(); t.is(rootProject.getName(), "application.a", "Returned correct root project"); }); test("Application A: Traverse project graph breadth first", async (t) => { - const projectGraph = await projectGraphFromPackageDeps({cwd: applicationAPath}); + const projectGraph = await graphFromPackageDependencies({cwd: applicationAPath}); const callbackStub = t.context.sinon.stub().resolves(); await projectGraph.traverseBreadthFirst(callbackStub); diff --git a/packages/project/test/lib/generateProjectGraph.usingStaticFile.js b/packages/project/test/lib/graph/graphFromStaticFile.js similarity index 75% rename from packages/project/test/lib/generateProjectGraph.usingStaticFile.js rename to packages/project/test/lib/graph/graphFromStaticFile.js index 82d9737e9f4..a16e560e9c7 100644 --- a/packages/project/test/lib/generateProjectGraph.usingStaticFile.js +++ b/packages/project/test/lib/graph/graphFromStaticFile.js @@ -1,12 +1,15 @@ -const test = require("ava"); -const path = require("path"); -const sinonGlobal = require("sinon"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinonGlobal from "sinon"; -const projectGraphFromStaticFile = require("../../lib/generateProjectGraph").usingStaticFile; +import {graphFromStaticFile} from "../../../lib/graph/graph.js"; -const applicationHPath = path.join(__dirname, "..", "fixtures", "application.h"); -const applicationAPath = path.join(__dirname, "..", "fixtures", "application.a"); -const notExistingPath = path.join(__dirname, "..", "fixtures", "does_not_exist"); +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +const applicationHPath = path.join(__dirname, "..", "..", "fixtures", "application.h"); +const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const notExistingPath = path.join(__dirname, "..", "..", "fixtures", "does_not_exist"); test.beforeEach((t) => { t.context.sinon = sinonGlobal.createSandbox(); @@ -17,7 +20,7 @@ test.afterEach.always((t) => { }); test("Application H: Traverse project graph breadth first", async (t) => { - const projectGraph = await projectGraphFromStaticFile({ + const projectGraph = await graphFromStaticFile({ cwd: applicationHPath }); const callbackStub = t.context.sinon.stub().resolves(); @@ -34,7 +37,7 @@ test("Application H: Traverse project graph breadth first", async (t) => { }); test("Throws error if file not found", async (t) => { - const err = await t.throwsAsync(projectGraphFromStaticFile({ + const err = await t.throwsAsync(graphFromStaticFile({ cwd: notExistingPath })); t.is(err.message, @@ -45,7 +48,7 @@ test("Throws error if file not found", async (t) => { }); test("Throws for missing id", async (t) => { - const err = await t.throwsAsync(projectGraphFromStaticFile({ + const err = await t.throwsAsync(graphFromStaticFile({ cwd: applicationHPath, filePath: "projectDependencies-missing-id.yaml" })); @@ -57,7 +60,7 @@ test("Throws for missing id", async (t) => { }); test("Throws for missing version", async (t) => { - const err = await t.throwsAsync(projectGraphFromStaticFile({ + const err = await t.throwsAsync(graphFromStaticFile({ cwd: applicationHPath, filePath: "projectDependencies-missing-version.yaml" })); @@ -69,7 +72,7 @@ test("Throws for missing version", async (t) => { }); test("Throws for missing path", async (t) => { - const err = await t.throwsAsync(projectGraphFromStaticFile({ + const err = await t.throwsAsync(graphFromStaticFile({ cwd: applicationHPath, filePath: "projectDependencies-missing-path.yaml" })); @@ -81,7 +84,7 @@ test("Throws for missing path", async (t) => { }); test("rootConfiguration", async (t) => { - const projectGraph = await projectGraphFromStaticFile({ + const projectGraph = await graphFromStaticFile({ cwd: applicationHPath, rootConfiguration: { specVersion: "2.6", @@ -100,7 +103,7 @@ test("rootConfiguration", async (t) => { }); test("rootConfig", async (t) => { - const projectGraph = await projectGraphFromStaticFile({ + const projectGraph = await graphFromStaticFile({ cwd: applicationHPath, rootConfigPath: "ui5-test-configPath.yaml" }); diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index 9f9ded1229c..d77297fca66 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -1,19 +1,11 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const path = require("path"); -const os = require("os"); -const fs = require("graceful-fs"); - -const pacote = require("pacote"); -const libnpmconfig = require("libnpmconfig"); -const lockfile = require("lockfile"); -const logger = require("@ui5/logger"); -const Module = require("../../../../lib/graph/Module"); -const ApplicationType = require("../../../../lib/specifications/types/Application"); -const LibraryType = require("../../../../lib/specifications/types/Library"); -const DependencyTreeProvider = require("../../../../lib/graph/providers/DependencyTree"); -const projectGraphBuilder = require("../../../../lib/graph/projectGraphBuilder"); +import test from "ava"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import DependencyTreeProvider from "../../../../lib/graph/providers/DependencyTree.js"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); // Use path within project as mocking base directory to reduce chance of side effects // in case mocks/stubs do not work and real fs is used @@ -21,47 +13,123 @@ const fakeBaseDir = path.join(__dirname, "fake-tmp"); const ui5FrameworkBaseDir = path.join(fakeBaseDir, "homedir", ".ui5", "framework"); const ui5PackagesBaseDir = path.join(ui5FrameworkBaseDir, "packages"); -test.before((t) => { - sinon.stub(fs, "rename").yieldsAsync(); -}); +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); -test.beforeEach((t) => { - sinon.stub(libnpmconfig, "read").returns({ - toJSON: () => { - return { - registry: "https://registry.fake", - cache: path.join(ui5FrameworkBaseDir, "cacache"), - proxy: "" - }; - } + t.context.logStub = { + info: sinon.stub(), + verbose: sinon.stub(), + isLevelEnabled: sinon.stub().returns(false), + _getLogger: sinon.stub() + }; + const ui5Logger = { + getLogger: sinon.stub().returns(t.context.logStub) + }; + + t.context.pacote = { + extract: sinon.stub(), + manifest: sinon.stub() + }; + + t.context.Registry = await esmock.p("../../../../lib/ui5Framework/npm/Registry.js", { + "@ui5/logger": ui5Logger, + "pacote": t.context.pacote, + "libnpmconfig": { + read: sinon.stub().returns({ + toJSON: () => { + return { + registry: "https://registry.fake", + cache: path.join(ui5FrameworkBaseDir, "cacache"), + proxy: "" + }; + } + }) + }, + }); + + t.context.Installer = await esmock.p("../../../../lib/ui5Framework/npm/Installer.js", { + "@ui5/logger": ui5Logger, + "mkdirp": sinon.stub().resolves(), + "graceful-fs": { + rename: sinon.stub().yieldsAsync() + }, + "lockfile": { + lock: sinon.stub().yieldsAsync(), + unlock: sinon.stub().yieldsAsync() + }, + "../../../../lib/ui5Framework/npm/Registry.js": t.context.Registry }); - sinon.stub(os, "homedir").returns(path.join(fakeBaseDir, "homedir")); - sinon.stub(lockfile, "lock").yieldsAsync(); - sinon.stub(lockfile, "unlock").yieldsAsync(); + t.context.AbstractResolver = await esmock.p("../../../../lib/ui5Framework/AbstractResolver.js", { + "@ui5/logger": ui5Logger, + "node:os": { + homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + }, + }); - const testLogger = logger.getLogger(); - sinon.stub(logger, "getLogger").returns(testLogger); - t.context.logInfoSpy = sinon.spy(testLogger, "info"); + t.context.Openui5Resolver = await esmock.p("../../../../lib/ui5Framework/Openui5Resolver.js", { + "@ui5/logger": ui5Logger, + "node:os": { + homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + }, + "../../../../lib/ui5Framework/AbstractResolver.js": t.context.AbstractResolver, + "../../../../lib/ui5Framework/npm/Installer.js": t.context.Installer + }); + + t.context.Sapui5Resolver = await esmock.p("../../../../lib/ui5Framework/Sapui5Resolver.js", { + "@ui5/logger": ui5Logger, + "node:os": { + homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + }, + "../../../../lib/ui5Framework/AbstractResolver.js": t.context.AbstractResolver, + "../../../../lib/ui5Framework/npm/Installer.js": t.context.Installer + }); - mock("mkdirp", sinon.stub().resolves()); + t.context.Application = await esmock.p("../../../../lib/specifications/types/Application.js"); + t.context.Library = await esmock.p("../../../../lib/specifications/types/Library.js"); // Stub specification internal checks since none of the projects actually exist on disk - sinon.stub(ApplicationType.prototype, "_configureAndValidatePaths").resolves(); - sinon.stub(LibraryType.prototype, "_configureAndValidatePaths").resolves(); - sinon.stub(ApplicationType.prototype, "_parseConfiguration").resolves(); - sinon.stub(LibraryType.prototype, "_parseConfiguration").resolves(); + sinon.stub(t.context.Application.prototype, "_configureAndValidatePaths").resolves(); + sinon.stub(t.context.Library.prototype, "_configureAndValidatePaths").resolves(); + sinon.stub(t.context.Application.prototype, "_parseConfiguration").resolves(); + sinon.stub(t.context.Library.prototype, "_parseConfiguration").resolves(); + + t.context.Specification = await esmock.p("../../../../lib/specifications/Specification.js", { + "@ui5/logger": ui5Logger, + "../../../../lib/specifications/types/Application.js": t.context.Application, + "../../../../lib/specifications/types/Library.js": t.context.Library + }); + + t.context.Module = await esmock.p("../../../../lib/graph/Module.js", { + "@ui5/logger": ui5Logger, + "../../../../lib/specifications/Specification.js": t.context.Specification + }); + t.context.ui5Framework = await esmock.p("../../../../lib/graph/helpers/ui5Framework.js", { + "@ui5/logger": ui5Logger, + "../../../../lib/graph/Module.js": t.context.Module, + "../../../../lib/ui5Framework/Openui5Resolver.js": t.context.Openui5Resolver, + "../../../../lib/ui5Framework/Sapui5Resolver.js": t.context.Sapui5Resolver, + }); - // Re-require to ensure that mocked modules are used - t.context.ui5Framework = mock.reRequire("../../../../lib/graph/helpers/ui5Framework"); - t.context.Installer = require("../../../../lib/ui5Framework/npm/Installer"); + t.context.projectGraphBuilder = await esmock.p("../../../../lib/graph/projectGraphBuilder.js", { + "@ui5/logger": ui5Logger, + "../../../../lib/graph/Module.js": t.context.Module + }); }); test.afterEach.always((t) => { - sinon.restore(); - mock.stopAll(); - logger.setLevel("info"); // default log level + t.context.sinon.restore(); + esmock.purge(t.context.Registry); + esmock.purge(t.context.Installer); + esmock.purge(t.context.AbstractResolver); + esmock.purge(t.context.Sapui5Resolver); + esmock.purge(t.context.Application); + esmock.purge(t.context.Library); + esmock.purge(t.context.Specification); + esmock.purge(t.context.Module); + esmock.purge(t.context.ui5Framework); + esmock.purge(t.context.projectGraphBuilder); }); function defineTest(testName, { @@ -112,11 +180,12 @@ function defineTest(testName, { }; test.serial(`${frameworkName}: ${verbose ? "(verbose) " : ""}${testName}`, async (t) => { + const {sinon, ui5Framework, Installer, projectGraphBuilder, Module, pacote, logStub} = t.context; + // Enable verbose logging if (verbose) { - logger.setLevel("verbose"); + logStub.isLevelEnabled.withArgs("verbose").returns(true); } - const {ui5Framework, Installer, logInfoSpy} = t.context; const testDependency = { id: "test-dependency-id", @@ -282,10 +351,10 @@ function defineTest(testName, { } }); - sinon.stub(pacote, "extract").resolves(); + pacote.extract.resolves(); if (frameworkName === "OpenUI5") { - sinon.stub(pacote, "manifest") + pacote.manifest .callsFake(async (spec) => { throw new Error("pacote.manifest stub called with unknown spec: " + spec); }) @@ -359,7 +428,7 @@ function defineTest(testName, { "test-application", ], "Traversed graph in correct order"); - const frameworkLibAlreadyAddedInfoLogged = (logInfoSpy.getCalls() + const frameworkLibAlreadyAddedInfoLogged = (logStub.info.getCalls() .map(($) => $.firstArg) .findIndex(($) => $.includes("defines a dependency to the UI5 framework library")) !== -1); t.false(frameworkLibAlreadyAddedInfoLogged, "No info regarding already added UI5 framework libraries logged"); @@ -388,7 +457,7 @@ function defineErrorTest(testName, { expectedErrorMessage }) { test.serial(testName, async (t) => { - const {ui5Framework, Installer} = t.context; + const {sinon, ui5Framework, Installer, projectGraphBuilder, pacote} = t.context; const dependencyTree = { id: "test-id", @@ -417,34 +486,32 @@ function defineErrorTest(testName, { } }; - const extractStub = sinon.stub(pacote, "extract"); - extractStub.callsFake(async (spec) => { + pacote.extract.callsFake(async (spec) => { throw new Error("pacote.extract stub called with unknown spec: " + spec); }); - const manifestStub = sinon.stub(pacote, "manifest"); - manifestStub.callsFake(async (spec) => { + pacote.manifest.callsFake(async (spec) => { throw new Error("pacote.manifest stub called with unknown spec: " + spec); }); if (frameworkName === "SAPUI5") { if (failExtract) { - extractStub + pacote.extract .withArgs("@sapui5/sap.ui.lib1@1.75.1") .rejects(new Error("404 - @sapui5/sap.ui.lib1")) .withArgs("@openui5/sap.ui.lib4@1.75.4") .rejects(new Error("404 - @openui5/sap.ui.lib4")); } else { - extractStub + pacote.extract .withArgs("@sapui5/sap.ui.lib1@1.75.1").resolves() .withArgs("@openui5/sap.ui.lib4@1.75.4").resolves(); } if (failMetadata) { - extractStub + pacote.extract .withArgs("@sapui5/distribution-metadata@1.75.0") .rejects(new Error("404 - @sapui5/distribution-metadata")); } else { - extractStub + pacote.extract .withArgs("@sapui5/distribution-metadata@1.75.0") .resolves(); sinon.stub(Installer.prototype, "readJson") @@ -490,26 +557,26 @@ function defineErrorTest(testName, { } } else if (frameworkName === "OpenUI5") { if (failExtract) { - extractStub + pacote.extract .withArgs("@openui5/sap.ui.lib1@1.75.0") .rejects(new Error("404 - @openui5/sap.ui.lib1")) .withArgs("@openui5/sap.ui.lib4@1.75.0") .rejects(new Error("404 - @openui5/sap.ui.lib4")); } else { - extractStub + pacote.extract .withArgs("@openui5/sap.ui.lib1@1.75.0") .resolves() .withArgs("@openui5/sap.ui.lib4@1.75.0") .resolves(); } if (failMetadata) { - manifestStub + pacote.manifest .withArgs("@openui5/sap.ui.lib1@1.75.0") .rejects(new Error("Failed to read manifest of @openui5/sap.ui.lib1@1.75.0")) .withArgs("@openui5/sap.ui.lib4@1.75.0") .rejects(new Error("Failed to read manifest of @openui5/sap.ui.lib4@1.75.0")); } else { - manifestStub + pacote.manifest .withArgs("@openui5/sap.ui.lib1@1.75.0") .resolves({ name: "@openui5/sap.ui.lib1", @@ -590,6 +657,8 @@ Failed to resolve library sap.ui.lib4: Failed to read manifest of @openui5/sap.u }); test.serial("ui5Framework helper should not fail when no framework configuration is given", async (t) => { + const {ui5Framework, projectGraphBuilder} = t.context; + const dependencyTree = { id: "test-id", version: "1.2.3", @@ -605,12 +674,14 @@ test.serial("ui5Framework helper should not fail when no framework configuration }; const provider = new DependencyTreeProvider({dependencyTree}); const projectGraph = await projectGraphBuilder(provider); - await t.context.ui5Framework.enrichProjectGraph(projectGraph); + await ui5Framework.enrichProjectGraph(projectGraph); t.is(projectGraph, projectGraph, "Returned same graph without error"); }); test.serial("ui5Framework translator should not try to install anything when no library is referenced", async (t) => { + const {ui5Framework, projectGraphBuilder, pacote} = t.context; + const dependencyTree = { id: "test-id", version: "1.2.3", @@ -631,16 +702,15 @@ test.serial("ui5Framework translator should not try to install anything when no const provider = new DependencyTreeProvider({dependencyTree}); const projectGraph = await projectGraphBuilder(provider); - const extractStub = sinon.stub(pacote, "extract"); - const manifestStub = sinon.stub(pacote, "manifest"); - - await t.context.ui5Framework.enrichProjectGraph(projectGraph); + await ui5Framework.enrichProjectGraph(projectGraph); - t.is(extractStub.callCount, 0, "No package should be extracted"); - t.is(manifestStub.callCount, 0, "No manifest should be requested"); + t.is(pacote.extract.callCount, 0, "No package should be extracted"); + t.is(pacote.manifest.callCount, 0, "No manifest should be requested"); }); test.serial("ui5Framework translator should throw an error when framework version is not defined", async (t) => { + const {ui5Framework, projectGraphBuilder} = t.context; + const dependencyTree = { id: "test-id", version: "1.2.3", @@ -661,13 +731,15 @@ test.serial("ui5Framework translator should throw an error when framework versio const projectGraph = await projectGraphBuilder(provider); await t.throwsAsync(async () => { - await t.context.ui5Framework.enrichProjectGraph(projectGraph); + await ui5Framework.enrichProjectGraph(projectGraph); }, {message: `No framework version defined for root project test-project`}, "Correct error message"); }); test.serial( "SAPUI5: ui5Framework translator should throw error when using a library that is not part of the dist metadata", async (t) => { + const {sinon, ui5Framework, Installer, projectGraphBuilder} = t.context; + const dependencyTree = { id: "test-id", version: "1.2.3", @@ -694,9 +766,7 @@ test.serial( const provider = new DependencyTreeProvider({dependencyTree}); const projectGraph = await projectGraphBuilder(provider); - sinon.stub(pacote, "extract").resolves(); - - sinon.stub(t.context.Installer.prototype, "readJson") + sinon.stub(Installer.prototype, "readJson") .callThrough() .withArgs(path.join(fakeBaseDir, "homedir", ".ui5", "framework", "packages", @@ -722,7 +792,7 @@ test.serial( }); await t.throwsAsync(async () => { - await t.context.ui5Framework.enrichProjectGraph(projectGraph); + await ui5Framework.enrichProjectGraph(projectGraph); }, { message: `Resolution of framework libraries failed with errors: Failed to resolve library does.not.exist: Could not find library "does.not.exist"`}); diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index a45a00a7ba3..2d44d5da29b 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -1,15 +1,29 @@ -const path = require("path"); -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import test from "ava"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +import DependencyTreeProvider from "../../../../lib/graph/providers/DependencyTree.js"; +import projectGraphBuilder from "../../../../lib/graph/projectGraphBuilder.js"; -const DependencyTreeProvider = require("../../../../lib/graph/providers/DependencyTree"); -const projectGraphBuilder = require("../../../../lib/graph/projectGraphBuilder"); +const __dirname = path.dirname(fileURLToPath(import.meta.url)); const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const libraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.e"); -test.beforeEach((t) => { +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + const logStub = { + info: sinon.stub(), + verbose: sinon.stub(), + isLevelEnabled: sinon.stub().returns(false), + _getLogger: sinon.stub() + }; + const ui5Logger = { + getLogger: sinon.stub().returns(logStub) + }; + t.context.Sapui5ResolverStub = sinon.stub(); t.context.Sapui5ResolverInstallStub = sinon.stub(); t.context.Sapui5ResolverStub.callsFake(() => { @@ -19,23 +33,22 @@ test.beforeEach((t) => { }); t.context.Sapui5ResolverResolveVersionStub = sinon.stub(); t.context.Sapui5ResolverStub.resolveVersion = t.context.Sapui5ResolverResolveVersionStub; - mock("../../../../lib/ui5Framework/Sapui5Resolver", t.context.Sapui5ResolverStub); - - t.context.Openui5ResolverStub = sinon.stub(); - mock("../../../../lib/ui5Framework/Openui5Resolver", t.context.Openui5ResolverStub); - // Re-require to ensure that mocked modules are used - t.context.ui5Framework = mock.reRequire("../../../../lib/graph/helpers/ui5Framework"); + t.context.ui5Framework = await esmock.p("../../../../lib/graph/helpers/ui5Framework.js", { + "@ui5/logger": ui5Logger, + "../../../../lib/ui5Framework/Openui5Resolver.js": t.context.Openui5ResolverStub, + "../../../../lib/ui5Framework/Sapui5Resolver.js": t.context.Sapui5ResolverStub, + }); t.context.utils = t.context.ui5Framework._utils; }); test.afterEach.always((t) => { - sinon.restore(); - mock.stopAll(); + t.context.sinon.restore(); + esmock.purge(t.context.ui5Framework); }); test.serial("ui5Framework translator should throw an error when framework version is not defined", async (t) => { - const {ui5Framework, utils, Sapui5ResolverInstallStub} = t.context; + const {sinon, ui5Framework, utils, Sapui5ResolverInstallStub} = t.context; const dependencyTree = { id: "test1", @@ -115,7 +128,7 @@ test.serial("ui5Framework translator should throw an error when framework versio test.serial("generateDependencyTree (with versionOverride)", async (t) => { const { - ui5Framework, utils, + sinon, ui5Framework, utils, Sapui5ResolverStub, Sapui5ResolverResolveVersionStub, Sapui5ResolverInstallStub } = t.context; diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index 1bfa4b18788..e1a366dc388 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -1,9 +1,11 @@ -const test = require("ava"); -const path = require("path"); -const sinonGlobal = require("sinon"); -const mock = require("mock-require"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +import projectGraphBuilder from "../../../lib/graph/projectGraphBuilder.js"; -const projectGraphBuilder = require("../../../lib/graph/projectGraphBuilder"); +const __dirname = path.dirname(fileURLToPath(import.meta.url)); const libraryEPath = path.join(__dirname, "..", "..", "fixtures", "library.e"); const collectionPath = path.join(__dirname, "..", "..", "fixtures", "collection"); @@ -109,16 +111,20 @@ test("Basic graph with dependencies", async (t) => { }); test.serial("Correct warnings logged", async (t) => { - const logWarnStub = t.context.sinon.stub(); - t.context.sinon.stub(require("@ui5/logger"), "getLogger") - .callThrough() - .withArgs("graph:projectGraphBuilder").returns({ - warn: logWarnStub, - verbose: () => "", - }); - const projectGraphBuilder = mock.reRequire("../../../lib/graph/projectGraphBuilder"); + const {sinon, getRootNode, getDependencies, provider} = t.context; + const logWarnStub = sinon.stub(); + + const projectGraphBuilder = await esmock("../../../lib/graph/projectGraphBuilder.js", { + "@ui5/logger": { + getLogger: sinon.stub() + .withArgs("graph:projectGraphBuilder").returns({ + warn: logWarnStub, + verbose: () => "", + }) + } + }); - t.context.getRootNode.resolves(createNode({ + getRootNode.resolves(createNode({ id: "id1", name: "project-1" })); @@ -128,15 +134,15 @@ test.serial("Correct warnings logged", async (t) => { }); node2.configuration.metadata.deprecated = true; node2.configuration.metadata.sapInternal = true; - t.context.getDependencies.onFirstCall().resolves([node2]); + getDependencies.onFirstCall().resolves([node2]); const node3 = createNode({ id: "id3", name: "project-3" }); node3.configuration.metadata.deprecated = true; node3.configuration.metadata.sapInternal = true; - t.context.getDependencies.onSecondCall().resolves([node3]); - const graph = await projectGraphBuilder(t.context.provider); + getDependencies.onSecondCall().resolves([node3]); + const graph = await projectGraphBuilder(provider); await traverseBreadthFirst(t, graph, [ "project-1", @@ -154,35 +160,39 @@ test.serial("Correct warnings logged", async (t) => { }); test.serial("No warnings logged", async (t) => { - const logWarnStub = t.context.sinon.stub(); - t.context.sinon.stub(require("@ui5/logger"), "getLogger") - .callThrough() - .withArgs("graph:projectGraphBuilder").returns({ - warn: logWarnStub, - verbose: () => "", - }); - const projectGraphBuilder = mock.reRequire("../../../lib/graph/projectGraphBuilder"); + const {sinon, getRootNode, getDependencies} = t.context; + const logWarnStub = sinon.stub(); + + const projectGraphBuilder = await esmock("../../../lib/graph/projectGraphBuilder.js", { + "@ui5/logger": { + getLogger: sinon.stub() + .withArgs("graph:projectGraphBuilder").returns({ + warn: logWarnStub, + verbose: () => "", + }) + } + }); const node1 = createNode({ id: "id1", name: "@my-comp/testsuite" // "/testsuite" suffix should suppress deprecation warnings }); node1.configuration.metadata.allowSapInternal = true; - t.context.getRootNode.resolves(node1); + getRootNode.resolves(node1); const node2 = createNode({ id: "id2", name: "project-2" }); node2.configuration.metadata.deprecated = true; node2.configuration.metadata.sapInternal = true; - t.context.getDependencies.onFirstCall().resolves([node2]); + getDependencies.onFirstCall().resolves([node2]); const node3 = createNode({ id: "id3", name: "project-3" }); node3.configuration.metadata.deprecated = true; node3.configuration.metadata.sapInternal = true; - t.context.getDependencies.onSecondCall().resolves([node3]); + getDependencies.onSecondCall().resolves([node3]); const graph = await projectGraphBuilder(t.context.provider); await traverseBreadthFirst(t, graph, [ diff --git a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js index e1f59bfac89..8aba7f98936 100644 --- a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js +++ b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js @@ -1,6 +1,10 @@ -const test = require("ava"); -const path = require("path"); -const sinonGlobal = require("sinon"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinonGlobal from "sinon"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const applicationCPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.c"); const applicationC2Path = path.join(__dirname, "..", "..", "..", "fixtures", "application.c2"); @@ -11,8 +15,8 @@ const applicationGPath = path.join(__dirname, "..", "..", "..", "fixtures", "app const errApplicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "err.application.a"); const cycleDepsBasePath = path.join(__dirname, "..", "..", "..", "fixtures", "cyclic-deps", "node_modules"); -const projectGraphBuilder = require("../../../../lib/graph/projectGraphBuilder"); -const NodePackageDependenciesProvider = require("../../../../lib/graph/providers/NodePackageDependencies"); +import projectGraphBuilder from "../../../../lib/graph/projectGraphBuilder.js"; +import NodePackageDependenciesProvider from "../../../../lib/graph/providers/NodePackageDependencies.js"; test.beforeEach((t) => { t.context.sinon = sinonGlobal.createSandbox(); diff --git a/packages/project/test/lib/index.js b/packages/project/test/lib/index.js deleted file mode 100644 index fa555a6df7f..00000000000 --- a/packages/project/test/lib/index.js +++ /dev/null @@ -1,15 +0,0 @@ -const test = require("ava"); -const index = require("../../index"); - -test("index.js exports all expected modules", (t) => { - t.truthy(index.generateProjectGraph, "Module exported"); - - t.truthy(index.ui5Framework.Openui5Resolver, "Module exported"); - t.truthy(index.ui5Framework.Sapui5Resolver, "Module exported"); - - t.truthy(index.validation.validator, "Module exported"); - t.truthy(index.validation.ValidationError, "Module exported"); - - t.truthy(index.graph.ProjectGraph, "Module exported"); - t.truthy(index.graph.projectGraphBuilder, "Module exported"); -}); diff --git a/packages/project/test/lib/package-exports.js b/packages/project/test/lib/package-exports.js new file mode 100644 index 00000000000..7d85d4e45eb --- /dev/null +++ b/packages/project/test/lib/package-exports.js @@ -0,0 +1,45 @@ +import test from "ava"; +import {createRequire} from "node:module"; + +// Using CommonsJS require as importing json files causes an ExperimentalWarning +const require = createRequire(import.meta.url); + +// package.json should be exported to allow reading version (e.g. from @ui5/cli) +test("export of package.json", (t) => { + const packageJson = require("@ui5/project/package.json"); + t.truthy(packageJson.version); +}); + +// Check number of definied exports +test("check number of exports", (t) => { + const packageJson = require("@ui5/project/package.json"); + t.is(Object.keys(packageJson.exports).length, 8); +}); + +// Public API contract (exported modules) +[ + "ui5Framework/Openui5Resolver", + "ui5Framework/Sapui5Resolver", + "validation/validator", + "validation/ValidationError", + "graph/ProjectGraph", + "graph/projectGraphBuilder", + {exportedSpecifier: "graph", mappedModule: "../../lib/graph/graph.js"}, +].forEach((v) => { + let exportedSpecifier; let mappedModule; + if (typeof v === "string") { + exportedSpecifier = v; + } else { + exportedSpecifier = v.exportedSpecifier; + mappedModule = v.mappedModule; + } + if (!mappedModule) { + mappedModule = `../../lib/${exportedSpecifier}.js`; + } + const spec = `@ui5/project/${exportedSpecifier}`; + test(`${spec}`, async (t) => { + const actual = await import(spec); + const expected = await import(mappedModule); + t.is(actual, expected, "Correct module exported"); + }); +}); diff --git a/packages/project/test/lib/specifications/ComponentProject.js b/packages/project/test/lib/specifications/ComponentProject.js index 8cc554cc37c..bad8e2e8273 100644 --- a/packages/project/test/lib/specifications/ComponentProject.js +++ b/packages/project/test/lib/specifications/ComponentProject.js @@ -1,12 +1,15 @@ -const test = require("ava"); -const path = require("path"); -const sinon = require("sinon"); -const Specification = require("../../../lib/specifications/Specification"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinon from "sinon"; +import Specification from "../../../lib/specifications/Specification.js"; function clone(o) { return JSON.parse(JSON.stringify(o)); } +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); const basicProjectInput = { id: "application.a.id", diff --git a/packages/project/test/lib/specifications/Project.js b/packages/project/test/lib/specifications/Project.js index 35d8bb7c7d9..ff3ada29792 100644 --- a/packages/project/test/lib/specifications/Project.js +++ b/packages/project/test/lib/specifications/Project.js @@ -1,11 +1,15 @@ -const test = require("ava"); -const path = require("path"); -const Specification = require("../../../lib/specifications/Specification"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import chalk from "chalk"; +import Specification from "../../../lib/specifications/Specification.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); } +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); const basicProjectInput = { id: "application.a.id", @@ -27,9 +31,11 @@ test("Invalid configuration", async (t) => { } }; const error = await t.throwsAsync(Specification.create(customProjectInput)); - t.is(error.message, `Invalid ui5.yaml configuration for project application.a.id + t.is(error.message, `${chalk.red("Invalid ui5.yaml configuration for project application.a.id")} -Configuration resources/configuration/propertiesFileSourceEncoding must be equal to one of the allowed values +Configuration \ +${chalk.underline(chalk.red("resources/configuration/propertiesFileSourceEncoding"))} \ +must be equal to one of the allowed values Allowed values: UTF-8, ISO-8859-1`, "Threw with validation error"); }); diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index f6954585b68..214f56f32f2 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -1,9 +1,21 @@ -const test = require("ava"); -const path = require("path"); -const sinon = require("sinon"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinon from "sinon"; +import Specification from "../../../lib/specifications/Specification.js"; +import Application from "../../../lib/specifications/types/Application.js"; +import Library from "../../../lib/specifications/types/Library.js"; +import ThemeLibrary from "../../../lib/specifications/types/ThemeLibrary.js"; +import Module from "../../../lib/specifications/types/Module.js"; +import Task from "../../../lib/specifications/types/extensions/Task.js"; +import ProjectShim from "../../../lib/specifications/types/extensions/ProjectShim.js"; +import ServerMiddleware from "../../../lib/specifications/types/extensions/ServerMiddleware.js"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); -const Specification = require("../../../lib/specifications/Specification"); const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const libraryHPath = path.join(__dirname, "..", "..", "fixtures", "library.h"); +const themeLibraryEPath = path.join(__dirname, "..", "..", "fixtures", "theme.library.e"); const genericExtensionPath = path.join(__dirname, "..", "..", "fixtures", "extension.a"); const moduleAPath = path.join(__dirname, "..", "..", "fixtures", "module.a"); @@ -161,3 +173,96 @@ test("Migrate legacy extension", async (t) => { t.is(project.getSpecVersion(), "2.6", "Project got migrated to latest specVersion"); }); + +[{ + kind: "project", + type: "application", + modulePath: applicationAPath, + SpecificationClass: Application +}, { + kind: "project", + type: "library", + modulePath: libraryHPath, + SpecificationClass: Library +}, { + kind: "project", + type: "theme-library", + modulePath: themeLibraryEPath, + SpecificationClass: ThemeLibrary +}, { + kind: "project", + type: "module", + modulePath: moduleAPath, + SpecificationClass: Module +}, { + kind: "extension", + type: "task", + modulePath: genericExtensionPath, + SpecificationClass: Task +}, { + kind: "extension", + type: "project-shim", + modulePath: genericExtensionPath, + SpecificationClass: ProjectShim +}, { + kind: "extension", + type: "server-middleware", + modulePath: genericExtensionPath, + SpecificationClass: ServerMiddleware +}].forEach(({kind, type, modulePath, SpecificationClass}) => { + test(`create: kind '${kind}', type '${type}'`, async (t) => { + const additionalConfiguration = {}; + if (type === "task") { + additionalConfiguration.task = {path: "lib/middleware.js"}; + } else if (type === "server-middleware") { + additionalConfiguration.middleware = {path: "lib/middleware.js"}; + } else if (type === "project-shim") { + additionalConfiguration.shims = {}; + } + const project = await Specification.create({ + id: `${type}.a.id`, + version: "1.0.0", + modulePath, + configuration: { + specVersion: "2.6", + kind, + type, + metadata: { + name: `${type}.a` + }, + ...additionalConfiguration + } + }); + t.true(project instanceof SpecificationClass); + }); +}); + +test("create: Missing configuration", async (t) => { + await t.throwsAsync(Specification.create({ + id: "application.a.id", + version: "1.0.0", + }), { + message: "Unable to create Specification instance: Missing configuration parameter" + }); +}); + +test("create: Unknown kind", async (t) => { + await t.throwsAsync(Specification.create({ + configuration: { + kind: "foo", + } + }), { + message: "Unable to create Specification instance: Unknown kind 'foo'" + }); +}); + +test("create: Unknown type", async (t) => { + await t.throwsAsync(Specification.create({ + configuration: { + kind: "project", + type: "foo" + } + }), { + message: "Unable to create Specification instance: Unknown specification type 'foo'" + }); +}); diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index c6658fadc56..357fa6ad1e9 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -1,14 +1,17 @@ -const test = require("ava"); -const path = require("path"); -const sinon = require("sinon"); -const {createResource} = require("@ui5/fs").resourceFactory; -const Specification = require("../../../../lib/specifications/Specification"); -const Application = require("../../../../lib/specifications/types/Application"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import {createResource} from "@ui5/fs/resourceFactory"; +import sinon from "sinon"; +import Specification from "../../../../lib/specifications/Specification.js"; +import Application from "../../../../lib/specifications/types/Application.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); } +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const basicProjectInput = { id: "application.a.id", diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index 7d30bccd960..19ca34ff67b 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -1,13 +1,15 @@ -const test = require("ava"); -const path = require("path"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const Specification = require("../../../../lib/specifications/Specification"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinonGlobal from "sinon"; +import Library from "../../../../lib/specifications/types/Library.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); } +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const libraryDPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.d"); const basicProjectInput = { id: "library.d.id", @@ -46,25 +48,22 @@ const flatProjectInput = { } }; -test.afterEach.always((t) => { - sinon.restore(); - mock.stopAll(); +test.beforeEach((t) => { + t.context.sinon = sinonGlobal.createSandbox(); }); -test("Correct class", async (t) => { - const Library = mock.reRequire("../../../../lib/specifications/types/Library"); - const project = await Specification.create(basicProjectInput); - t.true(project instanceof Library, `Is an instance of the Library class`); +test.afterEach.always((t) => { + t.context.sinon.restore(); }); test("getNamespace", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); t.is(project.getNamespace(), "library/d", "Returned correct namespace"); }); test("getPropertiesFileSourceEncoding: Default", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); t.is(project.getPropertiesFileSourceEncoding(), "UTF-8", "Returned correct default propertiesFileSourceEncoding configuration"); }); @@ -72,7 +71,7 @@ test("getPropertiesFileSourceEncoding: Default", async (t) => { test("getPropertiesFileSourceEncoding: Configuration", async (t) => { const customProjectInput = clone(basicProjectInput); customProjectInput.configuration.resources.configuration.propertiesFileSourceEncoding = "ISO-8859-1"; - const project = await Specification.create(customProjectInput); + const project = await (new Library().init(customProjectInput)); t.is(project.getPropertiesFileSourceEncoding(), "ISO-8859-1", "Returned correct default propertiesFileSourceEncoding configuration"); }); @@ -84,19 +83,19 @@ test("getJsdocExcludes", async (t) => { excludes: ["excludes"] } }; - const project = await Specification.create(customProjectInput); + const project = await (new Library().init(customProjectInput)); t.deepEqual(project.getJsdocExcludes(), ["excludes"], "Returned correct jsdocExcludes configuration"); }); test("getJsdocExcludes: default", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); t.deepEqual(project.getJsdocExcludes(), [], "Returned correct jsdocExcludes configuration"); }); test("Access project resources via reader: buildtime style", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); const reader = await project.getReader(); const resource = await reader.byPath("/resources/library/d/.library"); t.truthy(resource, "Found the requested resource"); @@ -104,7 +103,7 @@ test("Access project resources via reader: buildtime style", async (t) => { }); test("Access project resources via reader: flat style", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); const reader = await project.getReader({style: "flat"}); const resource = await reader.byPath("/.library"); t.truthy(resource, "Found the requested resource"); @@ -112,7 +111,7 @@ test("Access project resources via reader: flat style", async (t) => { }); test("Access project test-resources via reader: buildtime style", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); const reader = await project.getReader({style: "buildtime"}); const resource = await reader.byPath("/test-resources/library/d/Test.html"); t.truthy(resource, "Found the requested resource"); @@ -120,7 +119,7 @@ test("Access project test-resources via reader: buildtime style", async (t) => { }); test("Access project test-resources via reader: runtime style", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); const reader = await project.getReader({style: "runtime"}); const resource = await reader.byPath("/test-resources/library/d/Test.html"); t.truthy(resource, "Found the requested resource"); @@ -128,7 +127,7 @@ test("Access project test-resources via reader: runtime style", async (t) => { }); test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); const workspace = await project.getWorkspace(); const workspaceResource = await workspace.byPath("/resources/library/d/.library"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -167,7 +166,7 @@ test("Modify project resources via workspace and access via flat and runtime rea }); test("Access flat project resources via reader: buildtime style", async (t) => { - const project = await Specification.create(flatProjectInput); + const project = await (new Library().init(flatProjectInput)); const reader = await project.getReader({style: "buildtime"}); const resource = await reader.byPath("/resources/library/h/some.js"); t.truthy(resource, "Found the requested resource"); @@ -190,7 +189,7 @@ test("_configureAndValidatePaths: Default paths", async (t) => { } }; - const project = await Specification.create(projectInput); + const project = await (new Library().init(projectInput)); t.is(project._srcPath, "src", "Correct default path for src"); t.is(project._testPath, "test", "Correct default path for test"); @@ -200,7 +199,7 @@ test("_configureAndValidatePaths: Default paths", async (t) => { test("_configureAndValidatePaths: Test directory does not exist", async (t) => { const projectInput = clone(basicProjectInput); projectInput.configuration.resources.configuration.paths.test = "does/not/exist"; - const project = await Specification.create(projectInput); + const project = await (new Library().init(projectInput)); t.is(project._srcPath, "main/src", "Correct path for src"); t.is(project._testPath, "does/not/exist", "Correct path for test"); @@ -210,13 +209,13 @@ test("_configureAndValidatePaths: Test directory does not exist", async (t) => { test("_configureAndValidatePaths: Source directory does not exist", async (t) => { const projectInput = clone(basicProjectInput); projectInput.configuration.resources.configuration.paths.src = "does/not/exist"; - const err = await t.throwsAsync(Specification.create(projectInput)); + const err = await t.throwsAsync(new Library().init(projectInput)); t.is(err.message, "Unable to find directory 'does/not/exist' in library project library.d"); }); test("_parseConfiguration: Get copyright", async (t) => { - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); t.is(project.getCopyright(), "Some fancy copyright", "Copyright was read correctly"); }); @@ -224,35 +223,31 @@ test("_parseConfiguration: Get copyright", async (t) => { test("_parseConfiguration: Copyright already configured", async (t) => { const projectInput = clone(basicProjectInput); projectInput.configuration.metadata.copyright = "My copyright"; - const project = await Specification.create(projectInput); + const project = await (new Library().init(projectInput)); t.is(project.getCopyright(), "My copyright", "Copyright was not altered"); }); test.serial("_parseConfiguration: Copyright retrieval fails", async (t) => { - const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + const {sinon} = t.context; sinon.stub(Library.prototype, "_getCopyrightFromDotLibrary").resolves(null); - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); t.is(project.getCopyright(), undefined, "Copyright was not altered"); }); test.serial("_parseConfiguration: Preload excludes from .library", async (t) => { - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("specifications:types:Library"); - - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - mock.reRequire("@ui5/logger"); - const loggerVerboseSpy = sinon.spy(loggerInstance, "verbose"); - - const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + const {sinon} = t.context; sinon.stub(Library.prototype, "isFrameworkProject").returns(true); sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves(["test/exclude/**"]); - const project = await Specification.create(basicProjectInput); + + const project = new Library(); + + const loggerVerboseSpy = sinon.spy(project._log, "verbose"); + + await project.init(basicProjectInput); t.deepEqual(project.getLibraryPreloadExcludes(), ["test/exclude/**"], "Correct library preload excludes have been set"); @@ -270,27 +265,23 @@ test("_parseConfiguration: Preload excludes from project configuration (non-fram excludes: ["test/exclude/**"] } }; - const project = await Specification.create(projectInput); + const project = await (new Library().init(projectInput)); t.deepEqual(project.getLibraryPreloadExcludes(), ["test/exclude/**"], "Correct library preload excludes have been set"); }); test.serial("_parseConfiguration: Preload exclude fallback to .library (framework libraries only)", async (t) => { - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("specifications:types:Library"); - - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - mock.reRequire("@ui5/logger"); - const loggerVerboseSpy = sinon.spy(loggerInstance, "verbose"); - - const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + const {sinon} = t.context; sinon.stub(Library.prototype, "isFrameworkProject").returns(true); sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves(["test/exclude/**"]); - const project = await Specification.create(basicProjectInput); + + const project = new Library(); + + const loggerVerboseSpy = sinon.spy(project._log, "verbose"); + + await project.init(basicProjectInput); t.deepEqual(project.getLibraryPreloadExcludes(), ["test/exclude/**"], "Correct library preload excludes have been set"); @@ -302,20 +293,16 @@ test.serial("_parseConfiguration: Preload exclude fallback to .library (framewor }); test.serial("_parseConfiguration: No preload excludes from .library", async (t) => { - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("specifications:types:Library"); - - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - mock.reRequire("@ui5/logger"); - const loggerVerboseSpy = sinon.spy(loggerInstance, "verbose"); - - const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + const {sinon} = t.context; sinon.stub(Library.prototype, "isFrameworkProject").returns(true); sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves(null); - const project = await Specification.create(basicProjectInput); + + const project = new Library(); + + const loggerVerboseSpy = sinon.spy(project._log, "verbose"); + + await project.init(basicProjectInput); t.deepEqual(project.getLibraryPreloadExcludes(), [], "No library preload excludes have been set"); @@ -327,16 +314,7 @@ test.serial("_parseConfiguration: No preload excludes from .library", async (t) }); test.serial("_parseConfiguration: Preload excludes from project configuration (framework library)", async (t) => { - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("specifications:types:Library"); - - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - mock.reRequire("@ui5/logger"); - const loggerVerboseSpy = sinon.spy(loggerInstance, "verbose"); - - const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + const {sinon} = t.context; sinon.stub(Library.prototype, "isFrameworkProject").returns(true); const getPreloadExcludesFromDotLibraryStub = @@ -348,7 +326,11 @@ test.serial("_parseConfiguration: Preload excludes from project configuration (f excludes: ["test/exclude/**"] } }; - const project = await Specification.create(projectInput); + const project = new Library(); + + const loggerVerboseSpy = sinon.spy(project._log, "verbose"); + + await project.init(projectInput); t.deepEqual(project.getLibraryPreloadExcludes(), ["test/exclude/**"], "Correct library preload excludes have been set"); @@ -361,12 +343,12 @@ test.serial("_parseConfiguration: Preload excludes from project configuration (f }); test.serial("_parseConfiguration: No preload exclude fallback for non-framework libraries", async (t) => { - const Library = mock.reRequire("../../../../lib/specifications/types/Library"); + const {sinon} = t.context; sinon.stub(Library.prototype, "isFrameworkProject").returns(false); const getPreloadExcludesFromDotLibraryStub = sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary") .resolves(["test/exclude/**"]); - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); t.deepEqual(project.getLibraryPreloadExcludes(), [], "No library preload excludes have been set"); @@ -374,7 +356,9 @@ test.serial("_parseConfiguration: No preload exclude fallback for non-framework }); test("_getManifest: Reads correctly", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `{"pony": "no unicorn"}`, getPath: () => "some path" @@ -394,7 +378,9 @@ test("_getManifest: Reads correctly", async (t) => { }); test("_getManifest: No manifest.json", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([]); project._getRawSourceReader = () => { @@ -410,7 +396,9 @@ test("_getManifest: No manifest.json", async (t) => { }); test("_getManifest: Invalid JSON", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `no pony`, getPath: () => "some path" @@ -432,7 +420,9 @@ test("_getManifest: Invalid JSON", async (t) => { }); test("_getManifest: Propagates exception", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().rejects(new Error("because shark")); project._getRawSourceReader = () => { @@ -448,7 +438,9 @@ test("_getManifest: Propagates exception", async (t) => { }); test("_getManifest: Multiple manifest.json files", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `{"pony": "no unicorn"}`, getPath: () => "some path" @@ -469,7 +461,9 @@ test("_getManifest: Multiple manifest.json files", async (t) => { }); test("_getManifest: Result is cached", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `{"pony": "no unicorn"}`, getPath: () => "some path" @@ -495,7 +489,9 @@ test("_getManifest: Result is cached", async (t) => { }); test("_getDotLibrary: Reads correctly", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `Fancy`, getPath: () => "some path" @@ -515,7 +511,9 @@ test("_getDotLibrary: Reads correctly", async (t) => { }); test("_getDotLibrary: No .library file", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([]); project._getRawSourceReader = () => { @@ -531,7 +529,9 @@ test("_getDotLibrary: No .library file", async (t) => { }); test("_getDotLibrary: Invalid XML", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `no pony`, getPath: () => "some path" @@ -553,7 +553,9 @@ test("_getDotLibrary: Invalid XML", async (t) => { }); test("_getDotLibrary: Propagates exception", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().rejects(new Error("because shark")); project._getRawSourceReader = () => { @@ -569,7 +571,9 @@ test("_getDotLibrary: Propagates exception", async (t) => { }); test("_getDotLibrary: Multiple .library files", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `Fancy`, getPath: () => "some path" @@ -590,7 +594,9 @@ test("_getDotLibrary: Multiple .library files", async (t) => { }); test("_getDotLibrary: Result is cached", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `Fancy`, getPath: () => "some path" @@ -616,7 +622,9 @@ test("_getDotLibrary: Result is cached", async (t) => { }); test("_getLibraryJsPath: Reads correctly", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getPath: () => "some path" }]); @@ -634,7 +642,9 @@ test("_getLibraryJsPath: Reads correctly", async (t) => { }); test("_getLibraryJsPath: No library.js file", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([]); project._getRawSourceReader = () => { @@ -650,7 +660,9 @@ test("_getLibraryJsPath: No library.js file", async (t) => { }); test("_getLibraryJsPath: Propagates exception", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().rejects(new Error("because shark")); project._getRawSourceReader = () => { @@ -666,7 +678,9 @@ test("_getLibraryJsPath: Propagates exception", async (t) => { }); test("_getLibraryJsPath: Multiple library.js files", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getPath: () => "some path" }, { @@ -685,7 +699,9 @@ test("_getLibraryJsPath: Multiple library.js files", async (t) => { }); test("_getLibraryJsPath: Result is cached", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); const byGlobStub = sinon.stub().resolves([{ getPath: () => "some path" }]); @@ -709,21 +725,15 @@ test("_getLibraryJsPath: Result is cached", async (t) => { }); test.serial("_getNamespace: namespace resolution fails", async (t) => { - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("specifications:types:Library"); + const {sinon} = t.context; - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - mock.reRequire("@ui5/logger"); - mock.reRequire("../../../../lib/specifications/types/Library"); + const project = await (new Library().init(basicProjectInput)); - const project = await Specification.create(basicProjectInput); + const loggerVerboseSpy = sinon.stub(project._log, "verbose"); sinon.stub(project, "_getNamespaceFromManifest").resolves({}); sinon.stub(project, "_getNamespaceFromDotLibrary").resolves({}); sinon.stub(project, "_getLibraryJsPath").rejects(new Error("pony error")); - const loggerVerboseSpy = sinon.spy(loggerInstance, "verbose"); const error = await t.throwsAsync(project._getNamespace()); t.deepEqual(error.message, "Failed to detect namespace or namespace is empty for project library.d." + @@ -743,7 +753,9 @@ test.serial("_getNamespace: namespace resolution fails", async (t) => { }); test("_getNamespace: from manifest.json with .library on same level", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -764,7 +776,9 @@ test("_getNamespace: from manifest.json with .library on same level", async (t) }); test("_getNamespace: from manifest.json for flat project", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -785,7 +799,9 @@ test("_getNamespace: from manifest.json for flat project", async (t) => { }); test("_getNamespace: from .library for flat project", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); sinon.stub(project, "_getDotLibrary").resolves({ content: { @@ -799,7 +815,9 @@ test("_getNamespace: from .library for flat project", async (t) => { }); test("_getNamespace: from manifest.json with .library on same level but different directory", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -827,7 +845,9 @@ test("_getNamespace: from manifest.json with .library on same level but differen }); test("_getNamespace: from manifest.json with not matching file path", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -849,16 +869,10 @@ test("_getNamespace: from manifest.json with not matching file path", async (t) }); test.serial("_getNamespace: from manifest.json without sap.app id", async (t) => { - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("specifications:types:Library"); + const {sinon} = t.context; - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - mock.reRequire("@ui5/logger"); - mock.reRequire("../../../../lib/specifications/types/Library"); + const project = await (new Library().init(basicProjectInput)); - const project = await Specification.create(basicProjectInput); const manifestPath = "/different/namespace/manifest.json"; sinon.stub(project, "_getManifest").resolves({ content: { @@ -869,16 +883,17 @@ test.serial("_getNamespace: from manifest.json without sap.app id", async (t) => }); sinon.stub(project, "_getDotLibrary").resolves({}); - const loggerSpy = sinon.spy(loggerInstance, "verbose"); + const loggerStub = sinon.stub(project._log, "verbose"); + const err = await t.throwsAsync(project._getNamespace()); t.is(err.message, `Failed to detect namespace or namespace is empty for project library.d. Check verbose log for details.`, "Rejected with correct error message"); - t.is(loggerSpy.callCount, 4, "calls to verbose"); + t.is(loggerStub.callCount, 4, "calls to verbose"); - t.is(loggerSpy.getCall(0).args[0], + t.is(loggerStub.getCall(0).args[0], `Namespace resolution from manifest.json failed for project library.d: ` + `No sap.app/id configuration found in manifest.json of project library.d at ${manifestPath}`, "correct verbose message"); @@ -886,7 +901,9 @@ test.serial("_getNamespace: from manifest.json without sap.app id", async (t) => }); test("_getNamespace: from .library", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); sinon.stub(project, "_getDotLibrary").resolves({ content: { @@ -900,7 +917,9 @@ test("_getNamespace: from .library", async (t) => { }); test("_getNamespace: from .library with ignored manifest.json on lower level", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -921,10 +940,12 @@ test("_getNamespace: from .library with ignored manifest.json on lower level", a }); test("_getNamespace: manifest.json on higher level than .library", async (t) => { + const {sinon} = t.context; + const manifestFsPath = "/namespace/manifest.json"; const dotLibraryFsPath = "/namespace/morenamespace/.library"; - const project = await Specification.create(basicProjectInput); + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -953,7 +974,9 @@ test("_getNamespace: manifest.json on higher level than .library", async (t) => }); test("_getNamespace: from .library with maven placeholder", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); sinon.stub(project, "_getDotLibrary").resolves({ content: { @@ -972,7 +995,9 @@ test("_getNamespace: from .library with maven placeholder", async (t) => { }); test("_getNamespace: from .library with not matching file path", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); sinon.stub(project, "_getDotLibrary").resolves({ content: { @@ -989,7 +1014,9 @@ test("_getNamespace: from .library with not matching file path", async (t) => { }); test("_getNamespace: from library.js", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({}); sinon.stub(project, "_getDotLibrary").resolves({}); sinon.stub(project, "_getLibraryJsPath").resolves("/my/namespace/library.js"); @@ -998,19 +1025,15 @@ test("_getNamespace: from library.js", async (t) => { t.true(project._isSourceNamespaced, "Project still flagged as namespaced source structure"); }); -test.serial("_getNamespace: from project root level library.js", async (t) => { - const log = require("@ui5/logger"); - const loggerInstance = log.getLogger("specifications:types:Library"); +test("_getNamespace: from project root level library.js", async (t) => { + const {sinon} = t.context; - mock("@ui5/logger", { - getLogger: () => loggerInstance - }); - mock.reRequire("@ui5/logger"); - const loggerSpy = sinon.spy(loggerInstance, "verbose"); + const project = new Library(); + + const loggerStub = sinon.stub(project._log, "verbose"); - mock.reRequire("../../../../lib/specifications/types/Library"); + await project.init(basicProjectInput); - const project = await Specification.create(basicProjectInput); sinon.stub(project, "_getManifest").resolves({}); sinon.stub(project, "_getDotLibrary").resolves({}); sinon.stub(project, "_getLibraryJsPath").resolves("/library.js"); @@ -1020,7 +1043,7 @@ test.serial("_getNamespace: from project root level library.js", async (t) => { "Failed to detect namespace or namespace is empty for project library.d. Check verbose log for details.", "Rejected with correct error message"); - const logCalls = loggerSpy.getCalls().map((call) => call.args[0]); + const logCalls = loggerStub.getCalls().map((call) => call.args[0]); t.true(logCalls.includes( "Namespace resolution from library.js file path failed for project library.d: " + "Found library.js file in root directory. " + @@ -1029,7 +1052,9 @@ test.serial("_getNamespace: from project root level library.js", async (t) => { }); test("_getNamespace: neither manifest nor .library or library.js path contain it", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({}); sinon.stub(project, "_getDotLibrary").resolves({}); sinon.stub(project, "_getLibraryJsPath").rejects(new Error("Not found bla")); @@ -1040,7 +1065,9 @@ test("_getNamespace: neither manifest nor .library or library.js path contain it }); test("_getNamespace: maven placeholder resolution fails", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -1062,7 +1089,9 @@ test("_getNamespace: maven placeholder resolution fails", async (t) => { }); test("_getCopyrightFromDotLibrary", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: { @@ -1077,7 +1106,9 @@ test("_getCopyrightFromDotLibrary", async (t) => { }); test("_getCopyrightFromDotLibrary: No copyright in .library file", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: {} @@ -1089,7 +1120,9 @@ test("_getCopyrightFromDotLibrary: No copyright in .library file", async (t) => }); test("_getCopyrightFromDotLibrary: Propagates exception", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getDotLibrary").rejects(new Error("because shark")); const err = await t.throwsAsync(project._getCopyrightFromDotLibrary()); @@ -1098,7 +1131,9 @@ test("_getCopyrightFromDotLibrary: Propagates exception", async (t) => { }); test("_getPreloadExcludesFromDotLibrary: Single exclude", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: { @@ -1123,7 +1158,9 @@ test("_getPreloadExcludesFromDotLibrary: Single exclude", async (t) => { }); test("_getPreloadExcludesFromDotLibrary: Multiple excludes", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: { @@ -1162,7 +1199,9 @@ test("_getPreloadExcludesFromDotLibrary: Multiple excludes", async (t) => { }); test("_getPreloadExcludesFromDotLibrary: No excludes in .library file", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: {} @@ -1174,7 +1213,9 @@ test("_getPreloadExcludesFromDotLibrary: No excludes in .library file", async (t }); test("_getPreloadExcludesFromDotLibrary: Propagates exception", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getDotLibrary").rejects(new Error("because shark")); const err = await t.throwsAsync(project._getPreloadExcludesFromDotLibrary()); @@ -1183,7 +1224,9 @@ test("_getPreloadExcludesFromDotLibrary: Propagates exception", async (t) => { }); test("_getNamespaceFromManifest", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -1198,7 +1241,9 @@ test("_getNamespaceFromManifest", async (t) => { }); test("_getNamespaceFromManifest: No ID in manifest.json file", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": {} @@ -1210,7 +1255,9 @@ test("_getNamespaceFromManifest: No ID in manifest.json file", async (t) => { }); test("_getNamespaceFromManifest: Does not propagate exception", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getManifest").rejects(new Error("because shark")); const res = await project._getNamespaceFromManifest(); @@ -1218,7 +1265,9 @@ test("_getNamespaceFromManifest: Does not propagate exception", async (t) => { }); test("_getNamespaceFromDotLibrary", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: { @@ -1237,7 +1286,9 @@ test("_getNamespaceFromDotLibrary", async (t) => { }); test("_getNamespaceFromDotLibrary: No library name in .library file", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: {} @@ -1249,7 +1300,9 @@ test("_getNamespaceFromDotLibrary: No library name in .library file", async (t) }); test("_getNamespaceFromDotLibrary: Does not propagate exception", async (t) => { - const project = await Specification.create(basicProjectInput); + const {sinon} = t.context; + + const project = await (new Library().init(basicProjectInput)); sinon.stub(project, "_getDotLibrary").rejects(new Error("because shark")); const res = await project._getNamespaceFromDotLibrary(); diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index 22125e8ae12..edd344203dd 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -1,13 +1,15 @@ -const test = require("ava"); -const path = require("path"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const Specification = require("../../../../lib/specifications/Specification"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinon from "sinon"; +import Specification from "../../../../lib/specifications/Specification.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); } +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const moduleAPath = path.join(__dirname, "..", "..", "..", "fixtures", "module.a"); const basicProjectInput = { id: "module.a.id", @@ -34,11 +36,10 @@ const basicProjectInput = { test.afterEach.always((t) => { sinon.restore(); - mock.stopAll(); }); test("Correct class", async (t) => { - const Module = mock.reRequire("../../../../lib/specifications/types/Module"); + const {default: Module} = await import("../../../../lib/specifications/types/Module.js"); const project = await Specification.create(basicProjectInput); t.true(project instanceof Module, `Is an instance of the Module class`); }); diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js index 4ddadc8ee0c..3ebc50e1ad7 100644 --- a/packages/project/test/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -1,13 +1,15 @@ -const test = require("ava"); -const path = require("path"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const Specification = require("../../../../lib/specifications/Specification"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinon from "sinon"; +import Specification from "../../../../lib/specifications/Specification.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); } +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const themeLibraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "theme.library.e"); const basicProjectInput = { id: "theme.library.e.id", @@ -26,11 +28,10 @@ const basicProjectInput = { test.afterEach.always((t) => { sinon.restore(); - mock.stopAll(); }); test("Correct class", async (t) => { - const ThemeLibrary = mock.reRequire("../../../../lib/specifications/types/ThemeLibrary"); + const {default: ThemeLibrary} = await import("../../../../lib/specifications/types/ThemeLibrary.js"); const project = await Specification.create(basicProjectInput); t.true(project instanceof ThemeLibrary, `Is an instance of the ThemeLibrary class`); }); diff --git a/packages/project/test/lib/specifications/types/extensions/ProjectShim.js b/packages/project/test/lib/specifications/types/extensions/ProjectShim.js index 7ab9c8f0255..b988250cdab 100644 --- a/packages/project/test/lib/specifications/types/extensions/ProjectShim.js +++ b/packages/project/test/lib/specifications/types/extensions/ProjectShim.js @@ -1,13 +1,16 @@ -const test = require("ava"); -const path = require("path"); -const sinon = require("sinon"); -const Specification = require("../../../../../lib/specifications/Specification"); -const ProjectShim = require("../../../../../lib/specifications/types/extensions/ProjectShim"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinon from "sinon"; +import Specification from "../../../../../lib/specifications/Specification.js"; +import ProjectShim from "../../../../../lib/specifications/types/extensions/ProjectShim.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); } +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const nonExistingPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "does-not-exist"); const basicProjectShimInput = { id: "shim.a", diff --git a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js index 767fae8e10e..cfcaf5a9e60 100644 --- a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js @@ -1,18 +1,38 @@ -const test = require("ava"); -const path = require("path"); -const sinon = require("sinon"); -const Specification = require("../../../../../lib/specifications/Specification"); -const ServerMiddleware = require("../../../../../lib/specifications/types/extensions/ServerMiddleware"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinon from "sinon"; +import Specification from "../../../../../lib/specifications/Specification.js"; +import ServerMiddleware from "../../../../../lib/specifications/types/extensions/ServerMiddleware.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); } -const genericExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a"); -const basicServerMiddlewareInput = { +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +const genericCjsExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a"); +const genericEsmExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a.esm"); +const basicCjsServerMiddlewareInput = { + id: "server.middleware.a", + version: "1.0.0", + modulePath: genericCjsExtensionPath, + configuration: { + specVersion: "2.6", + kind: "extension", + type: "server-middleware", + metadata: { + name: "middleware-a" + }, + middleware: { + path: "lib/extensionModule.js" + } + } +}; +const basicEsmServerMiddlewareInput = { id: "server.middleware.a", version: "1.0.0", - modulePath: genericExtensionPath, + modulePath: genericEsmExtensionPath, configuration: { specVersion: "2.6", kind: "extension", @@ -30,19 +50,33 @@ test.afterEach.always((t) => { sinon.restore(); }); -test("Correct class", async (t) => { - const extension = await Specification.create(clone(basicServerMiddlewareInput)); +test("Correct class (CJS)", async (t) => { + const extension = await Specification.create(clone(basicCjsServerMiddlewareInput)); t.true(extension instanceof ServerMiddleware, `Is an instance of the ServerMiddleware class`); }); +test("Correct class (ESM)", async (t) => { + const extension = await Specification.create(clone(basicEsmServerMiddlewareInput)); + t.true(extension instanceof ServerMiddleware, `Is an instance of the ServerMiddleware class`); +}); + +test("getMiddleware (CJS)", async (t) => { + const extension = await Specification.create(clone(basicCjsServerMiddlewareInput)); + const middlewarePromise = extension.getMiddleware(); + t.is(typeof middlewarePromise.then, "function"); + t.is(await middlewarePromise, "extension module", + "Returned correct module"); +}); -test("getMiddleware", async (t) => { - const extension = await Specification.create(clone(basicServerMiddlewareInput)); - t.is(extension.getMiddleware(), "extension module", +test("getMiddleware (ESM)", async (t) => { + const extension = await Specification.create(clone(basicEsmServerMiddlewareInput)); + const middlewarePromise = extension.getMiddleware(); + t.is(typeof middlewarePromise.then, "function"); + t.is(await middlewarePromise, "extension module", "Returned correct module"); }); test("Middleware with illegal suffix", async (t) => { - const serverMiddlewareInput = clone(basicServerMiddlewareInput); + const serverMiddlewareInput = clone(basicCjsServerMiddlewareInput); serverMiddlewareInput.configuration.metadata.name += "--1"; const err = await t.throwsAsync(Specification.create(serverMiddlewareInput)); t.is(err.message, diff --git a/packages/project/test/lib/specifications/types/extensions/Task.js b/packages/project/test/lib/specifications/types/extensions/Task.js index 5d51b6e62fb..b9fccd57846 100644 --- a/packages/project/test/lib/specifications/types/extensions/Task.js +++ b/packages/project/test/lib/specifications/types/extensions/Task.js @@ -1,18 +1,40 @@ -const test = require("ava"); -const path = require("path"); -const sinon = require("sinon"); -const Specification = require("../../../../../lib/specifications/Specification"); -const Task = require("../../../../../lib/specifications/types/extensions/Task"); +import test from "ava"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import sinon from "sinon"; +import Specification from "../../../../../lib/specifications/Specification.js"; +import Task from "../../../../../lib/specifications/types/extensions/Task.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); } -const genericExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a"); -const basicTaskInput = { +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +const genericCjsExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a"); +const genericEsmExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a.esm"); + +const basicCjsTaskInput = { id: "task.a", version: "1.0.0", - modulePath: genericExtensionPath, + modulePath: genericCjsExtensionPath, + configuration: { + specVersion: "2.6", + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "lib/extensionModule.js" + } + } +}; + +const basicEsmTaskInput = { + id: "task.a", + version: "1.0.0", + modulePath: genericEsmExtensionPath, configuration: { specVersion: "2.6", kind: "extension", @@ -30,19 +52,34 @@ test.afterEach.always((t) => { sinon.restore(); }); -test("Correct class", async (t) => { - const extension = await Specification.create(clone(basicTaskInput)); +test("Correct class (CJS)", async (t) => { + const extension = await Specification.create(clone(basicCjsTaskInput)); t.true(extension instanceof Task, `Is an instance of the Task class`); }); -test("getTask", async (t) => { - const extension = await Specification.create(clone(basicTaskInput)); - t.is(extension.getTask(), "extension module", +test("Correct class (ESM)", async (t) => { + const extension = await Specification.create(clone(basicEsmTaskInput)); + t.true(extension instanceof Task, `Is an instance of the Task class`); +}); + +test("getTask (CJS)", async (t) => { + const extension = await Specification.create(clone(basicCjsTaskInput)); + const taskPromise = extension.getTask(); + t.is(typeof taskPromise.then, "function"); + t.is(await taskPromise, "extension module", + "Returned correct module"); +}); + +test("getTask (ESM)", async (t) => { + const extension = await Specification.create(clone(basicEsmTaskInput)); + const taskPromise = extension.getTask(); + t.is(typeof taskPromise.then, "function"); + t.is(await taskPromise, "extension module", "Returned correct module"); }); test("Task with illegal suffix", async (t) => { - const TaskInput = clone(basicTaskInput); + const TaskInput = clone(basicCjsTaskInput); TaskInput.configuration.metadata.name += "--1"; const err = await t.throwsAsync(Specification.create(TaskInput)); t.is(err.message, diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index b850f23b99d..f85c67fee49 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -1,8 +1,10 @@ -const test = require("ava"); -const sinon = require("sinon"); -const path = require("path"); - -const AbstractResolver = require("../../../lib/ui5Framework/AbstractResolver"); +import test from "ava"; +import sinon from "sinon"; +import path from "node:path"; +import os from "node:os"; +import {fileURLToPath} from "node:url"; +import {readFile} from "node:fs/promises"; +import AbstractResolver from "../../../lib/ui5Framework/AbstractResolver.js"; class MyResolver extends AbstractResolver { static async fetchAllVersions() {} @@ -81,7 +83,7 @@ test("AbstractResolver: Defaults 'ui5HomeDir' to ~/.ui5", (t) => { version: "1.75.0", cwd: "/test-project/" }); - t.is(resolver._ui5HomeDir, path.join(require("os").homedir(), ".ui5"), "Should default to ~/.ui5"); + t.is(resolver._ui5HomeDir, path.join(os.homedir(), ".ui5"), "Should default to ~/.ui5"); }); test("AbstractResolver: getLibraryMetadata should throw an Error when not implemented", async (t) => { @@ -604,8 +606,12 @@ test.serial( `Make sure the version is valid and available in the configured registry.`); }); -test.serial("AbstractResolver: SEMVER_VERSION_REGEXP should be aligned with JSON schema", (t) => { - const projectSchema = require("../../../lib/validation/schema/specVersion/2.0/kind/project.json"); +test.serial("AbstractResolver: SEMVER_VERSION_REGEXP should be aligned with JSON schema", async (t) => { + const projectSchema = JSON.parse( + await readFile(fileURLToPath( + new URL("../../../lib/validation/schema/specVersion/2.0/kind/project.json", import.meta.url) + ), {encoding: "utf-8"}) + ); const schemaPattern = projectSchema.definitions.framework.properties.version.pattern; t.is(schemaPattern, AbstractResolver._SEMVER_VERSION_REGEXP.source); }); diff --git a/packages/project/test/lib/ui5framework/Openui5Resolver.js b/packages/project/test/lib/ui5framework/Openui5Resolver.js index f4e9e72c10c..cedd0ee7622 100644 --- a/packages/project/test/lib/ui5framework/Openui5Resolver.js +++ b/packages/project/test/lib/ui5framework/Openui5Resolver.js @@ -1,12 +1,10 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const path = require("path"); -const os = require("os"); +import test from "ava"; +import sinon from "sinon"; +import esmock from "esmock"; +import path from "node:path"; +import os from "node:os"; -let Openui5Resolver; - -test.beforeEach((t) => { +test.beforeEach(async (t) => { t.context.InstallerStub = sinon.stub(); t.context.fetchPackageManifestStub = sinon.stub(); t.context.fetchPackageVersionsStub = sinon.stub(); @@ -19,26 +17,29 @@ test.beforeEach((t) => { }; }); - mock("../../../lib/ui5Framework/npm/Installer", t.context.InstallerStub); - - Openui5Resolver = mock.reRequire("../../../lib/ui5Framework/Openui5Resolver"); + t.context.Openui5Resolver = await esmock("../../../lib/ui5Framework/Openui5Resolver.js", { + "../../../lib/ui5Framework/npm/Installer": t.context.InstallerStub + }); }); test.afterEach.always(() => { sinon.restore(); - mock.stopAll(); }); test.serial("Openui5Resolver: _getNpmPackageName", (t) => { + const {Openui5Resolver} = t.context; t.is(Openui5Resolver._getNpmPackageName("foo"), "@openui5/foo"); }); test.serial("Openui5Resolver: _getLibaryName", (t) => { + const {Openui5Resolver} = t.context; t.is(Openui5Resolver._getLibaryName("@openui5/foo"), "foo"); t.is(Openui5Resolver._getLibaryName("@something/else"), "@something/else"); }); test.serial("Openui5Resolver: getLibraryMetadata", async (t) => { + const {Openui5Resolver} = t.context; + const resolver = new Openui5Resolver({ cwd: "/test-project/", version: "1.75.0" @@ -97,6 +98,8 @@ test.serial("Openui5Resolver: getLibraryMetadata", async (t) => { }); test.serial("Openui5Resolver: handleLibrary", async (t) => { + const {Openui5Resolver} = t.context; + const resolver = new Openui5Resolver({ cwd: "/test-project/", version: "1.75.0" @@ -137,6 +140,8 @@ test.serial("Openui5Resolver: handleLibrary", async (t) => { }); test.serial("Openui5Resolver: Static fetchAllVersions", async (t) => { + const {Openui5Resolver} = t.context; + const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; const options = { cwd: "/cwd", @@ -162,6 +167,8 @@ test.serial("Openui5Resolver: Static fetchAllVersions", async (t) => { }); test.serial("Openui5Resolver: Static fetchAllVersions without options", async (t) => { + const {Openui5Resolver} = t.context; + const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; t.context.fetchPackageVersionsStub.returns(expectedVersions); diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.js index 9b6dd0677a3..822ce0fa330 100644 --- a/packages/project/test/lib/ui5framework/Sapui5Resolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.js @@ -1,12 +1,11 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const path = require("path"); -const os = require("os"); - -let Sapui5Resolver; - -test.beforeEach((t) => { +import test from "ava"; +import sinon from "sinon"; +import esmock from "esmock"; +import path from "node:path"; +import os from "node:os"; +import Openui5Resolver from "../../../lib/ui5Framework/Openui5Resolver.js"; + +test.beforeEach(async (t) => { t.context.InstallerStub = sinon.stub(); t.context.fetchPackageVersionsStub = sinon.stub(); t.context.installPackageStub = sinon.stub(); @@ -21,18 +20,19 @@ test.beforeEach((t) => { }; }); - mock("../../../lib/ui5Framework/npm/Installer", t.context.InstallerStub); - - Sapui5Resolver = mock.reRequire("../../../lib/ui5Framework/Sapui5Resolver"); + t.context.Sapui5Resolver = await esmock("../../../lib/ui5Framework/Sapui5Resolver.js", { + "../../../lib/ui5Framework/npm/Installer": t.context.InstallerStub + }); }); test.afterEach.always(() => { sinon.restore(); - mock.stopAll(); }); test.serial( "Sapui5Resolver: loadDistMetadata loads metadata once from @sapui5/distribution-metadata package", async (t) => { + const {Sapui5Resolver} = t.context; + const resolver = new Sapui5Resolver({ cwd: "/test-project/", version: "1.75.0" @@ -82,6 +82,8 @@ test.serial( }); test.serial("Sapui5Resolver: handleLibrary", async (t) => { + const {Sapui5Resolver} = t.context; + const resolver = new Sapui5Resolver({ cwd: "/test-project/", version: "1.75.0" @@ -124,6 +126,8 @@ test.serial("Sapui5Resolver: handleLibrary", async (t) => { }); test.serial("Sapui5Resolver: Static fetchAllVersions", async (t) => { + const {Sapui5Resolver} = t.context; + const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; const options = { cwd: "/cwd", @@ -149,6 +153,8 @@ test.serial("Sapui5Resolver: Static fetchAllVersions", async (t) => { }); test.serial("Sapui5Resolver: Static fetchAllVersions without options", async (t) => { + const {Sapui5Resolver} = t.context; + const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; t.context.fetchPackageVersionsStub.returns(expectedVersions); @@ -171,6 +177,8 @@ test.serial("Sapui5Resolver: Static fetchAllVersions without options", async (t) test.serial( "Sapui5Resolver: getLibraryMetadata should use Openui5Resolver for @openui5/ modules in 1.77.x", async (t) => { + const {Sapui5Resolver} = t.context; + const resolver = new Sapui5Resolver({ cwd: "/test-project/", version: "1.77.7" @@ -197,7 +205,6 @@ test.serial( ] }; - const Openui5Resolver = require("../../../lib/ui5Framework/Openui5Resolver"); const openui5GetLibraryMetadataStub = sinon.stub(Openui5Resolver.prototype, "getLibraryMetadata"); openui5GetLibraryMetadataStub.resolves(openui5LibraryMetadata); diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index f04535270d0..8b66be0527d 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -1,35 +1,42 @@ -const test = require("ava"); -const sinon = require("sinon"); -const mock = require("mock-require"); -const path = require("path"); -const fs = require("graceful-fs"); +import test from "ava"; +import sinon from "sinon"; +import esmock from "esmock"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; -const lockfile = require("lockfile"); +const __dirname = path.dirname(fileURLToPath(import.meta.url)); -let Installer; - -test.beforeEach((t) => { +test.beforeEach(async (t) => { t.context.mkdirpStub = sinon.stub().resolves(); - mock("mkdirp", t.context.mkdirpStub); - t.context.rimrafStub = sinon.stub().yieldsAsync(); - mock("rimraf", t.context.rimrafStub); - t.context.lockStub = sinon.stub(lockfile, "lock"); - t.context.unlockStub = sinon.stub(lockfile, "unlock"); - t.context.renameStub = sinon.stub(fs, "rename").yieldsAsync(); - t.context.statStub = sinon.stub(fs, "stat").callThrough(); - - // Re-require to ensure that mocked modules are used - Installer = mock.reRequire("../../../../lib/ui5Framework/npm/Installer"); + t.context.lockStub = sinon.stub(); + t.context.unlockStub = sinon.stub(); + t.context.renameStub = sinon.stub().yieldsAsync(); + t.context.statStub = sinon.stub().yieldsAsync(); + + t.context.Installer = await esmock.p("../../../../lib/ui5Framework/npm/Installer.js", { + "mkdirp": t.context.mkdirpStub, + "rimraf": t.context.rimrafStub, + "lockfile": { + lock: t.context.lockStub, + unlock: t.context.unlockStub + }, + "graceful-fs": { + rename: t.context.renameStub, + stat: t.context.statStub + } + }); }); -test.afterEach.always(() => { +test.afterEach.always((t) => { sinon.restore(); - mock.stopAll(); + esmock.purge(t.context.Installer); }); test.serial("Installer: constructor", (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -41,12 +48,16 @@ test.serial("Installer: constructor", (t) => { }); test.serial("Installer: constructor requires 'cwd'", (t) => { + const {Installer} = t.context; + t.throws(() => { new Installer({}); }, {message: `Installer: Missing parameter "cwd"`}); }); test.serial("Installer: constructor requires 'ui5HomeDir'", (t) => { + const {Installer} = t.context; + t.throws(() => { new Installer({ cwd: "/cwd/" @@ -55,6 +66,8 @@ test.serial("Installer: constructor requires 'ui5HomeDir'", (t) => { }); test.serial("Installer: fetchPackageVersions", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -80,6 +93,8 @@ test.serial("Installer: fetchPackageVersions", async (t) => { }); test.serial("Installer: _getLockPath", (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -94,6 +109,8 @@ test.serial("Installer: _getLockPath", (t) => { }); test.serial("Installer: fetchPackageManifest (without existing package.json)", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -163,6 +180,8 @@ test.serial("Installer: fetchPackageManifest (without existing package.json)", a }); test.serial("Installer: fetchPackageManifest (with existing package.json)", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -222,6 +241,8 @@ test.serial("Installer: fetchPackageManifest (with existing package.json)", asyn }); test.serial("Installer: fetchPackageManifest (readJson throws error)", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -255,6 +276,8 @@ test.serial("Installer: fetchPackageManifest (readJson throws error)", async (t) }); test.serial("Installer: _synchronize", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -297,6 +320,8 @@ test.serial("Installer: _synchronize", async (t) => { }); test.serial("Installer: _synchronize should unlock when callback promise has resolved", async (t) => { + const {Installer} = t.context; + t.plan(4); const installer = new Installer({ @@ -326,6 +351,8 @@ test.serial("Installer: _synchronize should unlock when callback promise has res }); test.serial("Installer: _synchronize should throw when locking fails", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -349,6 +376,8 @@ test.serial("Installer: _synchronize should throw when locking fails", async (t) }); test.serial("Installer: _synchronize should still unlock when callback throws an error", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -374,6 +403,8 @@ test.serial("Installer: _synchronize should still unlock when callback throws an }); test.serial("Installer: _synchronize should still unlock when callback rejects with error", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -399,6 +430,8 @@ test.serial("Installer: _synchronize should still unlock when callback rejects w }); test.serial("Installer: installPackage with new package", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -479,6 +512,8 @@ test.serial("Installer: installPackage with new package", async (t) => { }); test.serial("Installer: installPackage with already installed package", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -531,6 +566,8 @@ test.serial("Installer: installPackage with already installed package", async (t }); test.serial("Installer: installPackage with install already in progress", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -593,6 +630,8 @@ test.serial("Installer: installPackage with install already in progress", async }); test.serial("Installer: installPackage with new package and existing target and staging", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -678,6 +717,8 @@ test.serial("Installer: installPackage with new package and existing target and }); test.serial("Installer: _pathExists - exists", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -691,6 +732,8 @@ test.serial("Installer: _pathExists - exists", async (t) => { }); test.serial("Installer: _pathExists - does not exist", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" @@ -708,6 +751,8 @@ test.serial("Installer: _pathExists - does not exist", async (t) => { }); test.serial("Installer: _pathExists - re-throws unexpected errors", async (t) => { + const {Installer} = t.context; + const installer = new Installer({ cwd: "/cwd/", ui5HomeDir: "/ui5Home/" diff --git a/packages/project/test/lib/validation/ValidationError.js b/packages/project/test/lib/validation/ValidationError.js index e53f3cee211..cc1949f838e 100644 --- a/packages/project/test/lib/validation/ValidationError.js +++ b/packages/project/test/lib/validation/ValidationError.js @@ -1,8 +1,7 @@ -const test = require("ava"); -const sinon = require("sinon"); -const chalk = require("chalk"); - -const ValidationError = require("../../../lib/validation/ValidationError"); +import test from "ava"; +import sinon from "sinon"; +import chalk from "chalk"; +import ValidationError from "../../../lib/validation/ValidationError.js"; test.afterEach.always((t) => { sinon.restore(); diff --git a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js index df5507e8443..356cce67b09 100644 --- a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js +++ b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js @@ -1,7 +1,7 @@ /** * Common test functionality for customConfiguration section in config */ -module.exports = { +export default { /** * Executes the tests for different kind of projects, e.g. "application", "library", "theme-library" and "module" * diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js index 49b5279666f..33143db77b5 100644 --- a/packages/project/test/lib/validation/schema/__helper__/extension.js +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -1,9 +1,9 @@ -const customConfiguration = require("./customConfiguration"); +import customConfiguration from "./customConfiguration.js"; /** * Common test functionality to be able to run the same tests for different types of kind "extension" */ -module.exports = { +export default { /** * Executes the tests for different types of kind extension, e.g. "project-shim", "server-middleware" and "task" * diff --git a/packages/project/test/lib/validation/schema/__helper__/framework.js b/packages/project/test/lib/validation/schema/__helper__/framework.js index 47d20efc5d1..1e09ea3a51a 100644 --- a/packages/project/test/lib/validation/schema/__helper__/framework.js +++ b/packages/project/test/lib/validation/schema/__helper__/framework.js @@ -1,7 +1,7 @@ /** * Common test functionality for framework section in config */ -module.exports = { +export default { /** * Executes the tests for different types of kind project, e.g. "application", "library" and "theme-library" * diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index 2b368408036..a423859d911 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -1,10 +1,10 @@ -const framework = require("./framework"); -const customConfiguration = require("./customConfiguration"); +import framework from "./framework.js"; +import customConfiguration from "./customConfiguration.js"; /** * Common test functionality to be able to run the same tests for different types of kind "project" */ -module.exports = { +export default { /** * Executes the tests for different types of kind project, * e.g. "application", "library", "theme-library" and "module" diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js index cb24debe8ef..ddebe686a5d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js @@ -1,7 +1,9 @@ -const test = require("ava"); -const AjvCoverage = require("../../../../../../utils/AjvCoverage"); -const {_Validator: Validator} = require("../../../../../../../lib/validation/validator"); -const ValidationError = require("../../../../../../../lib/validation/ValidationError"); +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -20,7 +22,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator(); + t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/2.0/kind/extension.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js index 9a1db288b21..1178da31e0c 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js @@ -1,8 +1,10 @@ -const test = require("ava"); -const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); -const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); -const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); -const extension = require("../../../../__helper__/extension"); +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; +import extension from "../../../../__helper__/extension.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -21,7 +23,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator(); + t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/2.0/kind/extension/project-shim.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js index ee89dc9c7f9..5375e1f7535 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js @@ -1,8 +1,10 @@ -const test = require("ava"); -const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); -const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); -const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); -const extension = require("../../../../__helper__/extension"); +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; +import extension from "../../../../__helper__/extension.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -21,7 +23,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator(); + t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/2.0/kind/extension/server-middleware.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js index 809d0f13795..81f76bf6c9e 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js @@ -1,8 +1,10 @@ -const test = require("ava"); -const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); -const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); -const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); -const extension = require("../../../../__helper__/extension"); +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; +import extension from "../../../../__helper__/extension.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -21,7 +23,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator(); + t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/2.0/kind/extension/task.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js index d02ef6cc4d5..c35bef762c9 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js @@ -1,7 +1,9 @@ -const test = require("ava"); -const AjvCoverage = require("../../../../../../utils/AjvCoverage"); -const {_Validator: Validator} = require("../../../../../../../lib/validation/validator"); -const ValidationError = require("../../../../../../../lib/validation/ValidationError"); +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -20,7 +22,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator(); + t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/2.0/kind/project.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js index 06d8373afa6..c355bcfee29 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js @@ -1,8 +1,10 @@ -const test = require("ava"); -const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); -const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); -const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); -const project = require("../../../../__helper__/project"); +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; +import project from "../../../../__helper__/project.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -26,7 +28,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator(); + t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/2.0/kind/project/application.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js index aa75ced89dd..5ee5c9db895 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js @@ -1,8 +1,10 @@ -const test = require("ava"); -const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); -const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); -const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); -const project = require("../../../../__helper__/project"); +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; +import project from "../../../../__helper__/project.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -26,7 +28,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator(); + t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/2.0/kind/project/library.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js index 0bd35330297..d1d886d67be 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js @@ -1,8 +1,10 @@ -const test = require("ava"); -const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); -const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); -const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); -const project = require("../../../../__helper__/project"); +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; +import project from "../../../../__helper__/project.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -21,7 +23,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator(); + t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/2.0/kind/project/module.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js index f194b551452..e54ef1f148d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js @@ -1,8 +1,10 @@ -const test = require("ava"); -const AjvCoverage = require("../../../../../../../utils/AjvCoverage"); -const {_Validator: Validator} = require("../../../../../../../../lib/validation/validator"); -const ValidationError = require("../../../../../../../../lib/validation/ValidationError"); -const project = require("../../../../__helper__/project"); +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; +import project from "../../../../__helper__/project.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -26,7 +28,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator(); + t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/2.0/kind/project/theme-library.json"] }); diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 1a0c7e30a58..ee5a560f869 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -1,7 +1,9 @@ -const test = require("ava"); -const AjvCoverage = require("../../../utils/AjvCoverage"); -const {_Validator: Validator} = require("../../../../lib/validation/validator"); -const ValidationError = require("../../../../lib/validation/ValidationError"); +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../lib/validation/validator.js"; +import ValidationError from "../../../../lib/validation/ValidationError.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -25,7 +27,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator(); + t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/ui5.json"] }); diff --git a/packages/project/test/lib/validation/validator.js b/packages/project/test/lib/validation/validator.js index b9bd6863677..7d2d0fe8299 100644 --- a/packages/project/test/lib/validation/validator.js +++ b/packages/project/test/lib/validation/validator.js @@ -1,6 +1,6 @@ -const test = require("ava"); -const sinon = require("sinon"); -const {validate, _Validator: Validator} = require("../../../lib/validation/validator"); +import test from "ava"; +import sinon from "sinon"; +import {validate, _Validator as Validator} from "../../../lib/validation/validator.js"; test.afterEach.always((t) => { sinon.restore(); diff --git a/packages/project/test/utils/AjvCoverage.js b/packages/project/test/utils/AjvCoverage.js index e674c8d670a..90ff01fc234 100644 --- a/packages/project/test/utils/AjvCoverage.js +++ b/packages/project/test/utils/AjvCoverage.js @@ -1,14 +1,13 @@ // Inspired by https://github.com/epoberezkin/ajv-istanbul -const crypto = require("crypto"); -const beautify = require("js-beautify").js_beautify; -const libReport = require("istanbul-lib-report"); -const reports = require("istanbul-reports"); -const libCoverage = require("istanbul-lib-coverage"); -const {createInstrumenter} = require("istanbul-lib-instrument"); +import crypto from "node:crypto"; +import beautify from "js-beautify"; +import libReport from "istanbul-lib-report"; +import reports from "istanbul-reports"; +import libCoverage from "istanbul-lib-coverage"; +import {createInstrumenter} from "istanbul-lib-instrument"; const rSchemaName = new RegExp(/sourceURL=([^\s]*)/); - const rRootDataUndefined = /\n(?:\s)*if \(rootData === undefined\) rootData = data;/g; const rEnsureErrorArray = /\n(?:\s)*if \(vErrors === null\) vErrors = \[err\];(?:\s)*else vErrors\.push\(err\);/g; const rDataPathOrEmptyString = /dataPath: \(dataPath \|\| ''\)/g; @@ -143,4 +142,4 @@ class AjvCoverage { } } -module.exports = AjvCoverage; +export default AjvCoverage; From 768a87e4e20cf42a9a9582e8e12a0ca33584304b Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Mon, 24 Oct 2022 14:29:57 +0000 Subject: [PATCH 0679/1272] [ui5-project]Release 3.0.0-alpha.10 --- packages/project/CHANGELOG.md | 18 +++++++++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index dfd55506288..072656de583 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,22 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.9...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.10...HEAD). + + +## [v3.0.0-alpha.10] - 2022-10-24 +### Breaking Changes +- Transform to native ESM ([#472](https://github.com/SAP/ui5-project/issues/472)) [`1945f2e`](https://github.com/SAP/ui5-project/commit/1945f2ec8a011260c23d77d197e885420c31aaef) + +### BREAKING CHANGE + +This package has been transformed to native ESM. Therefore it no longer provides a CommonJS export. +If your project uses CommonJS, it needs to be converted to ESM or use a dynamic import. + +For more information see also: +- https://sap.github.io/ui5-tooling/updates/migrate-v3/ +- https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c + ## [v3.0.0-alpha.9] - 2022-08-10 @@ -334,6 +349,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-alpha.10]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.9...v3.0.0-alpha.10 [v3.0.0-alpha.9]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.8...v3.0.0-alpha.9 [v3.0.0-alpha.8]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.7...v3.0.0-alpha.8 [v3.0.0-alpha.7]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.6...v3.0.0-alpha.7 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bc71ec50eba..5e83957806f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.9", + "version": "3.0.0-alpha.10", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.9", + "version": "3.0.0-alpha.10", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.12", diff --git a/packages/project/package.json b/packages/project/package.json index 9e1fd25841d..307a735bf19 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.9", + "version": "3.0.0-alpha.10", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From df4bc043adc6de29850fa99430e4abb5853bdaec Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 28 Oct 2022 10:33:23 +0200 Subject: [PATCH 0680/1272] [ui5-project][INTERNAL] Upgrade supported ECMAScript version to es2022 --- packages/project/.eslintrc.cjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.eslintrc.cjs b/packages/project/.eslintrc.cjs index 8e81d42228c..260f1b87b2e 100644 --- a/packages/project/.eslintrc.cjs +++ b/packages/project/.eslintrc.cjs @@ -4,7 +4,7 @@ module.exports = { }, "env": { "node": true, - "es2021": true + "es2022": true }, "extends": ["eslint:recommended", "plugin:ava/recommended", "google"], "plugins": [ From 5dbd59e8c800b897ebfa12f8a0dc0f8f8e05f755 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 2 Nov 2022 21:26:35 +0100 Subject: [PATCH 0681/1272] [ui5-project][INTERNAL] Invalid JSON: Fix unit tests for Node 19 Node 19 has a new error message for invalid JSON. Instead of "Unexpected token o in JSON at position 1" it now reads "Unexpected token 'o', "no json" is not valid JSON" --- packages/project/test/lib/specifications/types/Application.js | 4 +--- packages/project/test/lib/specifications/types/Library.js | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 357fa6ad1e9..4e804ba2d4a 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -317,9 +317,7 @@ test("_getManifest: invalid JSON", async (t) => { }; const error = await t.throwsAsync(project._getManifest("/some-manifest.json")); - t.deepEqual(error.message, - "Failed to read /some-manifest.json for project application.a: " + - "Unexpected token o in JSON at position 1", + t.regex(error.message, /^Failed to read \/some-manifest\.json for project application\.a: /, "Rejected with correct error message"); t.is(byPathStub.callCount, 1, "byPath got called once"); t.is(byPathStub.getCall(0).args[0], "/some-manifest.json", "byPath got called with the correct argument"); diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index 19ca34ff67b..fba37bb9d96 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -411,9 +411,7 @@ test("_getManifest: Invalid JSON", async (t) => { }; project._pManifest = null; // Clear cache from instantiation const error = await t.throwsAsync(project._getManifest()); - t.is(error.message, - "Failed to read some path for project library.d: " + - "Unexpected token o in JSON at position 1", + t.regex(error.message, /^Failed to read some path for project library\.d: /, "Rejected with correct error message"); t.is(byGlobStub.callCount, 1, "byGlob got called once"); t.is(byGlobStub.getCall(0).args[0], "**/manifest.json", "byGlob got called with the expected arguments"); From 107b6fa3790a8c12e299d8be9fcedb92c2f33bab Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 3 Nov 2022 15:00:42 +0100 Subject: [PATCH 0682/1272] [ui5-project][INTERNAL] Rename default branch to 'main' --- packages/project/.github/PULL_REQUEST_TEMPLATE.md | 8 ++++---- packages/project/.github/workflows/codeql-analysis.yml | 4 ++-- packages/project/.github/workflows/github-ci.yml | 4 ++-- packages/project/.github/workflows/reuse-compliance.yml | 4 ++-- packages/project/CONTRIBUTING.md | 2 +- packages/project/README.md | 8 ++++---- packages/project/azure-pipelines.yml | 3 ++- packages/project/lib/build/helpers/TaskUtil.js | 2 +- 8 files changed, 18 insertions(+), 17 deletions(-) diff --git a/packages/project/.github/PULL_REQUEST_TEMPLATE.md b/packages/project/.github/PULL_REQUEST_TEMPLATE.md index a102a83fcec..98c8c204384 100644 --- a/packages/project/.github/PULL_REQUEST_TEMPLATE.md +++ b/packages/project/.github/PULL_REQUEST_TEMPLATE.md @@ -3,7 +3,7 @@ To get it merged faster, kindly review the checklist below: ## Pull Request Checklist -- [ ] Reviewed the [Contributing Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md#-contributing-code) - + Especially the [How to Contribute](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md#how-to-contribute) section -- [ ] [No merge commits](https://github.com/SAP/ui5-tooling/blob/master/docs/Guidelines.md#no-merge-commits) -- [ ] [Correct commit message style](https://github.com/SAP/ui5-tooling/blob/master/docs/Guidelines.md#commit-message-style) +- [ ] Reviewed the [Contributing Guidelines](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md#-contributing-code) + + Especially the [How to Contribute](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md#how-to-contribute) section +- [ ] [No merge commits](https://github.com/SAP/ui5-tooling/blob/main/docs/Guidelines.md#no-merge-commits) +- [ ] [Correct commit message style](https://github.com/SAP/ui5-tooling/blob/main/docs/Guidelines.md#commit-message-style) diff --git a/packages/project/.github/workflows/codeql-analysis.yml b/packages/project/.github/workflows/codeql-analysis.yml index e884edf10cc..55618d2bad7 100644 --- a/packages/project/.github/workflows/codeql-analysis.yml +++ b/packages/project/.github/workflows/codeql-analysis.yml @@ -3,12 +3,12 @@ name: "CodeQL" on: push: branches: - - master + - v2 - main - next pull_request: branches: - - master + - v2 - main - next diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 3483d05f990..ec0624b98d6 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -3,12 +3,12 @@ name: GitHub CI on: push: branches: - - master + - v2 - main - next pull_request: branches: - - master + - v2 - main - next diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index ad1256a34cc..43d961d77bf 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -3,12 +3,12 @@ name: REUSE on: push: branches: - - master + - v2 - main - next pull_request: branches: - - master + - v2 - main - next diff --git a/packages/project/CONTRIBUTING.md b/packages/project/CONTRIBUTING.md index 5c5d4b7f86d..603b729b22d 100644 --- a/packages/project/CONTRIBUTING.md +++ b/packages/project/CONTRIBUTING.md @@ -1,3 +1,3 @@ # Contributing to the UI5 Tooling -See CONTRIBUTING.md in the [SAP/ui5-tooling](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md) repository. +See CONTRIBUTING.md in the [SAP/ui5-tooling](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md) repository. diff --git a/packages/project/README.md b/packages/project/README.md index b3134e9366a..b02d3b4dc24 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -1,11 +1,11 @@ -![UI5 icon](https://raw.githubusercontent.com/SAP/ui5-tooling/master/docs/images/UI5_logo_wide.png) +![UI5 icon](https://raw.githubusercontent.com/SAP/ui5-tooling/main/docs/images/UI5_logo_wide.png) # ui5-project > Modules for building a projects dependency tree, including UI5 specific configuration. > Part of the [UI5 Tooling](https://github.com/SAP/ui5-tooling) [![REUSE status](https://api.reuse.software/badge/github.com/SAP/ui5-project)](https://api.reuse.software/info/github.com/SAP/ui5-project) -[![Build Status](https://dev.azure.com/sap/opensource/_apis/build/status/SAP.ui5-project?branchName=master)](https://dev.azure.com/sap/opensource/_build/latest?definitionId=35&branchName=master) +[![Build Status](https://dev.azure.com/sap/opensource/_apis/build/status/SAP.ui5-project?branchName=main)](https://dev.azure.com/sap/opensource/_build/latest?definitionId=35&branchName=main) [![npm Package Version](https://badge.fury.io/js/%40ui5%2Fproject.svg)](https://www.npmjs.com/package/@ui5/project) [![Coverage Status](https://coveralls.io/repos/github/SAP/ui5-project/badge.svg)](https://coveralls.io/github/SAP/ui5-project) @@ -13,10 +13,10 @@ Can be found here: [sap.github.io/ui5-tooling](https://sap.github.io/ui5-tooling/pages/Project/) ## Contributing -Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md). +Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md). ## Support -Please follow our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/master/CONTRIBUTING.md#report-an-issue) on how to report an issue. +Please follow our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md#report-an-issue) on how to report an issue. Please report issues in the main [UI5 Tooling](https://github.com/SAP/ui5-tooling) repository. diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index f3da3e0cc4b..e40181e560b 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -4,7 +4,8 @@ # https://docs.microsoft.com/azure/devops/pipelines/languages/javascript trigger: -- master +- v2 +- main strategy: matrix: diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index c0474702d62..84845596ced 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -15,7 +15,7 @@ class TaskUtil { /** * Standard Build Tags. See UI5 Tooling - * [RFC 0008]{@link https://github.com/SAP/ui5-tooling/blob/master/rfcs/0008-resource-tagging-during-build.md} + * [RFC 0008]{@link https://github.com/SAP/ui5-tooling/blob/main/rfcs/0008-resource-tagging-during-build.md} * for details. * * @public From f30b2aad582a7a1b4f656bea5399ef69b9bd2084 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 25 Oct 2022 14:49:24 +0200 Subject: [PATCH 0683/1272] [ui5-project][INTERNAL] package.json: Change pre-release from 'alpha' to 'beta' --- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5e83957806f..d771fbc514e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.10", + "version": "3.0.0-beta.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-alpha.10", + "version": "3.0.0-beta.0", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.12", diff --git a/packages/project/package.json b/packages/project/package.json index 307a735bf19..2d6bacb1dac 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-alpha.10", + "version": "3.0.0-beta.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From bf8fd7e76b93ec25ca1332870616dff19163bcac Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Nov 2022 13:30:03 +0000 Subject: [PATCH 0684/1272] [ui5-project]Bump escape-string-regexp from 4.0.0 to 5.0.0 Bumps [escape-string-regexp](https://github.com/sindresorhus/escape-string-regexp) from 4.0.0 to 5.0.0. - [Release notes](https://github.com/sindresorhus/escape-string-regexp/releases) - [Commits](https://github.com/sindresorhus/escape-string-regexp/compare/v4.0.0...v5.0.0) Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 130 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 65 insertions(+), 67 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d771fbc514e..8d4ec2c6b25 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -15,7 +15,7 @@ "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", - "escape-string-regexp": "^4.0.0", + "escape-string-regexp": "^5.0.0", "graceful-fs": "^4.2.9", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", @@ -898,6 +898,17 @@ "npm": ">= 8" } }, + "node_modules/@ui5/fs/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@ui5/logger": { "version": "3.0.1-alpha.3", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", @@ -1345,18 +1356,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ava/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/ava/node_modules/globby": { "version": "13.1.2", "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", @@ -2940,11 +2939,11 @@ } }, "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -3169,6 +3168,18 @@ "eslint": "^7.0.0 || ^8.0.0" } }, + "node_modules/eslint-plugin-jsdoc/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/eslint-scope": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", @@ -3226,6 +3237,18 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/eslint/node_modules/glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -3444,18 +3467,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/figures/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -4950,18 +4961,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/matcher/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/md5-hex": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.1.tgz", @@ -8973,6 +8972,13 @@ "minimatch": "^3.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^2.0.1" + }, + "dependencies": { + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + } } }, "@ui5/logger": { @@ -9303,12 +9309,6 @@ "escape-string-regexp": "5.0.0" } }, - "escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true - }, "globby": { "version": "13.1.2", "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", @@ -10570,9 +10570,9 @@ "dev": true }, "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==" }, "escape-unicode": { "version": "0.2.0", @@ -10631,6 +10631,12 @@ "v8-compile-cache": "^2.0.3" }, "dependencies": { + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, "glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -10754,6 +10760,14 @@ "regextras": "^0.8.0", "semver": "^7.3.5", "spdx-expression-parse": "^3.0.1" + }, + "dependencies": { + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + } } }, "eslint-scope": { @@ -10937,14 +10951,6 @@ "requires": { "escape-string-regexp": "^5.0.0", "is-unicode-supported": "^1.2.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true - } } }, "file-entry-cache": { @@ -12105,14 +12111,6 @@ "dev": true, "requires": { "escape-string-regexp": "^5.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true - } } }, "md5-hex": { diff --git a/packages/project/package.json b/packages/project/package.json index 2d6bacb1dac..f00870ac225 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", - "escape-string-regexp": "^4.0.0", + "escape-string-regexp": "^5.0.0", "graceful-fs": "^4.2.9", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", From 017ca74a7111329c83bb9d223a2cf2b22f888644 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Nov 2022 13:30:14 +0000 Subject: [PATCH 0685/1272] [ui5-project]Bump file-type and open-cli Bumps [file-type](https://github.com/sindresorhus/file-type) to 18.0.0 and updates ancestor dependency [open-cli](https://github.com/sindresorhus/open-cli). These dependencies need to be updated together. Updates `file-type` from 14.7.1 to 18.0.0 - [Release notes](https://github.com/sindresorhus/file-type/releases) - [Commits](https://github.com/sindresorhus/file-type/compare/v14.7.1...v18.0.0) Updates `open-cli` from 6.0.1 to 7.1.0 - [Release notes](https://github.com/sindresorhus/open-cli/releases) - [Commits](https://github.com/sindresorhus/open-cli/compare/v6.0.1...v7.1.0) --- updated-dependencies: - dependency-name: file-type dependency-type: indirect - dependency-name: open-cli dependency-type: direct:development ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 879 +++++++++++++++++++++-------- packages/project/package.json | 2 +- 2 files changed, 651 insertions(+), 230 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8d4ec2c6b25..d84af56af93 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -49,7 +49,7 @@ "js-beautify": "^1.14.0", "jsdoc": "^3.6.7", "nyc": "^15.1.0", - "open-cli": "^6.0.1", + "open-cli": "^7.1.0", "sinon": "^14.0.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" @@ -1710,29 +1710,33 @@ } }, "node_modules/camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz", + "integrity": "sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==", "dev": true, "dependencies": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" + "camelcase": "^6.3.0", + "map-obj": "^4.1.0", + "quick-lru": "^5.1.1", + "type-fest": "^1.2.1" }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/camelcase-keys/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "node_modules/camelcase-keys/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", "dev": true, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/caniuse-lite": { @@ -2399,6 +2403,33 @@ "node": ">= 8" } }, + "node_modules/crypto-random-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", + "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", + "dev": true, + "dependencies": { + "type-fest": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/crypto-random-string/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/css": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", @@ -2497,9 +2528,9 @@ } }, "node_modules/decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dev": true, "dependencies": { "decamelize": "^1.1.0", @@ -2507,6 +2538,9 @@ }, "engines": { "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/decamelize-keys/node_modules/map-obj": { @@ -2544,6 +2578,15 @@ "node": ">=8" } }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/del": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", @@ -3480,18 +3523,17 @@ } }, "node_modules/file-type": { - "version": "14.7.1", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.7.1.tgz", - "integrity": "sha512-sXAMgFk67fQLcetXustxfKX+PZgHIUFn96Xld9uH8aXPdX3xOp0/jg9OdouVTvQrf7mrn+wAa4jN/y9fUOOiRA==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.0.0.tgz", + "integrity": "sha512-jjMwFpnW8PKofLE/4ohlhqwDk5k0NC6iy0UHAJFKoY1fQeGMN0GDdLgHQrvCbSpMwbqzoCZhRI5dETCZna5qVA==", "dev": true, "dependencies": { - "readable-web-to-node-stream": "^2.0.0", - "strtok3": "^6.0.3", - "token-types": "^2.0.0", - "typedarray-to-buffer": "^3.1.5" + "readable-web-to-node-stream": "^3.0.2", + "strtok3": "^7.0.0", + "token-types": "^5.0.1" }, "engines": { - "node": ">=8" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sindresorhus/file-type?sponsor=1" @@ -3787,12 +3829,15 @@ } }, "node_modules/get-stdin": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", - "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", + "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", "dev": true, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/get-stream": { @@ -4995,34 +5040,191 @@ } }, "node_modules/meow": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz", - "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==", + "version": "10.1.5", + "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz", + "integrity": "sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==", "dev": true, "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", + "@types/minimist": "^1.2.2", + "camelcase-keys": "^7.0.0", + "decamelize": "^5.0.0", "decamelize-keys": "^1.1.0", "hard-rejection": "^2.1.0", - "minimist-options": "^4.0.2", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.2", + "read-pkg-up": "^8.0.0", + "redent": "^4.0.0", + "trim-newlines": "^4.0.2", + "type-fest": "^1.2.2", + "yargs-parser": "^20.2.9" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/decamelize": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", + "integrity": "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, "engines": { "node": ">=8" + } + }, + "node_modules/meow/node_modules/read-pkg": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", + "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", + "dev": true, + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^3.0.2", + "parse-json": "^5.2.0", + "type-fest": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/read-pkg-up": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", + "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", + "dev": true, + "dependencies": { + "find-up": "^5.0.0", + "read-pkg": "^6.0.0", + "type-fest": "^1.0.1" + }, + "engines": { + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/meow/node_modules/type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", "dev": true, "engines": { "node": ">=10" @@ -5031,6 +5233,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/meow/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/meow/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -5695,38 +5912,42 @@ } }, "node_modules/open": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", - "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", "dev": true, "dependencies": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/open-cli": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-6.0.1.tgz", - "integrity": "sha512-A5h8MF3GrT1efn9TiO9LPajDnLtuEiGQT5G8TxWObBlgt1cZJF1YbQo/kNtsD1bJb7HxnT6SaSjzeLq0Rfhygw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-7.1.0.tgz", + "integrity": "sha512-Xnn/B7WY9ygV47oK+LlYp5WU8xr0tEL6SEw9jMX8n6ceElOs2AzVXFXI87/O0+b+LwLokQBZVxBMzGZHCYVppw==", "dev": true, "dependencies": { - "file-type": "^14.1.4", - "get-stdin": "^7.0.0", - "meow": "^6.1.0", - "open": "^7.0.3", - "temp-write": "^4.0.0" + "file-type": "^18.0.0", + "get-stdin": "^9.0.0", + "meow": "^10.1.5", + "open": "^8.4.0", + "tempy": "^3.0.0" }, "bin": { "open-cli": "cli.js" }, "engines": { - "node": ">=10" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/optionator": { @@ -6097,12 +6318,12 @@ } }, "node_modules/peek-readable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", - "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz", + "integrity": "sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A==", "dev": true, "engines": { - "node": ">=8" + "node": ">=14.16" }, "funding": { "type": "github", @@ -6489,12 +6710,15 @@ ] }, "node_modules/quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", "dev": true, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/random-int": { @@ -6599,10 +6823,20 @@ } }, "node_modules/readable-web-to-node-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-2.0.0.tgz", - "integrity": "sha512-+oZJurc4hXpaaqsN68GoZGQAQIA3qr09Or4fqEsargABnbe5Aau8hFn6ISVleT3cpY/0n/8drn7huyyEvTbghA==", - "dev": true + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", + "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", + "dev": true, + "dependencies": { + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } }, "node_modules/readdirp": { "version": "3.6.0", @@ -6617,16 +6851,31 @@ } }, "node_modules/redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", + "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", "dev": true, "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" + "indent-string": "^5.0.0", + "strip-indent": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/redent/node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/regexpp": { @@ -7297,15 +7546,18 @@ } }, "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", + "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", "dev": true, "dependencies": { - "min-indent": "^1.0.0" + "min-indent": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/strip-json-comments": { @@ -7320,16 +7572,16 @@ } }, "node_modules/strtok3": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", - "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0.tgz", + "integrity": "sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==", "dev": true, "dependencies": { "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.1.0" + "peek-readable": "^5.0.0" }, "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "type": "github", @@ -7762,39 +8014,46 @@ "node": ">=8" } }, - "node_modules/temp-write": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-4.0.0.tgz", - "integrity": "sha512-HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw==", + "node_modules/tempy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-3.0.0.tgz", + "integrity": "sha512-B2I9X7+o2wOaW4r/CWMkpOO9mdiTRCxXNgob6iGvPmfPWgH/KyUD6Uy5crtWBxIBe3YrNZKR2lSzv1JJKWD4vA==", "dev": true, "dependencies": { - "graceful-fs": "^4.1.15", - "is-stream": "^2.0.0", - "make-dir": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^3.3.2" + "is-stream": "^3.0.0", + "temp-dir": "^2.0.0", + "type-fest": "^2.12.2", + "unique-string": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/temp-write/node_modules/temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", + "node_modules/tempy/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", "dev": true, "engines": { - "node": ">=4" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/temp-write/node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "node_modules/tempy/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", "dev": true, - "bin": { - "uuid": "bin/uuid" + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/terser": { @@ -7905,35 +8164,32 @@ } }, "node_modules/token-types": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.1.1.tgz", - "integrity": "sha512-wnQcqlreS6VjthyHO3Y/kpK/emflxDBNhlNUPfh7wE39KnuDdOituXomIbyI79vBtF0Ninpkh72mcuRHo+RG3Q==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.1.tgz", + "integrity": "sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==", "dev": true, "dependencies": { - "@tokenizer/token": "^0.1.1", + "@tokenizer/token": "^0.3.0", "ieee754": "^1.2.1" }, "engines": { - "node": ">=0.1.98" + "node": ">=14.16" }, "funding": { "type": "github", "url": "https://github.com/sponsors/Borewit" } }, - "node_modules/token-types/node_modules/@tokenizer/token": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", - "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", - "dev": true - }, "node_modules/trim-newlines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", - "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.0.2.tgz", + "integrity": "sha512-GJtWyq9InR/2HRiLZgpIKv+ufIKrVrvjQWEj7PxAXNc5dwbNJkqhAUoAGgzRmULAnoOM5EIpveYd3J2VeSAIew==", "dev": true, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/tslib": { @@ -8010,6 +8266,21 @@ "imurmurhash": "^0.1.4" } }, + "node_modules/unique-string": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-3.0.0.tgz", + "integrity": "sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==", + "dev": true, + "dependencies": { + "crypto-random-string": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -9577,20 +9848,21 @@ "dev": true }, "camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz", + "integrity": "sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==", "dev": true, "requires": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" + "camelcase": "^6.3.0", + "map-obj": "^4.1.0", + "quick-lru": "^5.1.1", + "type-fest": "^1.2.1" }, "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", "dev": true } } @@ -10119,6 +10391,23 @@ "which": "^2.0.1" } }, + "crypto-random-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", + "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", + "dev": true, + "requires": { + "type-fest": "^1.0.1" + }, + "dependencies": { + "type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true + } + } + }, "css": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", @@ -10193,9 +10482,9 @@ "dev": true }, "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dev": true, "requires": { "decamelize": "^1.1.0", @@ -10230,6 +10519,12 @@ "strip-bom": "^4.0.0" } }, + "define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true + }, "del": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", @@ -10963,15 +11258,14 @@ } }, "file-type": { - "version": "14.7.1", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.7.1.tgz", - "integrity": "sha512-sXAMgFk67fQLcetXustxfKX+PZgHIUFn96Xld9uH8aXPdX3xOp0/jg9OdouVTvQrf7mrn+wAa4jN/y9fUOOiRA==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.0.0.tgz", + "integrity": "sha512-jjMwFpnW8PKofLE/4ohlhqwDk5k0NC6iy0UHAJFKoY1fQeGMN0GDdLgHQrvCbSpMwbqzoCZhRI5dETCZna5qVA==", "dev": true, "requires": { - "readable-web-to-node-stream": "^2.0.0", - "strtok3": "^6.0.3", - "token-types": "^2.0.0", - "typedarray-to-buffer": "^3.1.5" + "readable-web-to-node-stream": "^3.0.2", + "strtok3": "^7.0.0", + "token-types": "^5.0.1" } }, "fill-range": { @@ -11219,9 +11513,9 @@ "dev": true }, "get-stdin": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", - "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", + "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", "dev": true }, "get-stream": { @@ -12138,28 +12432,143 @@ } }, "meow": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz", - "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==", + "version": "10.1.5", + "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz", + "integrity": "sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==", "dev": true, "requires": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", + "@types/minimist": "^1.2.2", + "camelcase-keys": "^7.0.0", + "decamelize": "^5.0.0", "decamelize-keys": "^1.1.0", "hard-rejection": "^2.1.0", - "minimist-options": "^4.0.2", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.2", + "read-pkg-up": "^8.0.0", + "redent": "^4.0.0", + "trim-newlines": "^4.0.2", + "type-fest": "^1.2.2", + "yargs-parser": "^20.2.9" }, "dependencies": { + "decamelize": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", + "integrity": "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", + "dev": true + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "requires": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "read-pkg": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", + "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", + "dev": true, + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^3.0.2", + "parse-json": "^5.2.0", + "type-fest": "^1.0.1" + } + }, + "read-pkg-up": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", + "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", + "dev": true, + "requires": { + "find-up": "^5.0.0", + "read-pkg": "^6.0.0", + "type-fest": "^1.0.1" + } + }, "type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true } } @@ -12698,26 +13107,27 @@ } }, "open": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", - "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", "dev": true, "requires": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" } }, "open-cli": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-6.0.1.tgz", - "integrity": "sha512-A5h8MF3GrT1efn9TiO9LPajDnLtuEiGQT5G8TxWObBlgt1cZJF1YbQo/kNtsD1bJb7HxnT6SaSjzeLq0Rfhygw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-7.1.0.tgz", + "integrity": "sha512-Xnn/B7WY9ygV47oK+LlYp5WU8xr0tEL6SEw9jMX8n6ceElOs2AzVXFXI87/O0+b+LwLokQBZVxBMzGZHCYVppw==", "dev": true, "requires": { - "file-type": "^14.1.4", - "get-stdin": "^7.0.0", - "meow": "^6.1.0", - "open": "^7.0.3", - "temp-write": "^4.0.0" + "file-type": "^18.0.0", + "get-stdin": "^9.0.0", + "meow": "^10.1.5", + "open": "^8.4.0", + "tempy": "^3.0.0" } }, "optionator": { @@ -13011,9 +13421,9 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "peek-readable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", - "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz", + "integrity": "sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A==", "dev": true }, "picocolors": { @@ -13285,9 +13695,9 @@ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" }, "quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", "dev": true }, "random-int": { @@ -13366,10 +13776,13 @@ } }, "readable-web-to-node-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-2.0.0.tgz", - "integrity": "sha512-+oZJurc4hXpaaqsN68GoZGQAQIA3qr09Or4fqEsargABnbe5Aau8hFn6ISVleT3cpY/0n/8drn7huyyEvTbghA==", - "dev": true + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", + "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", + "dev": true, + "requires": { + "readable-stream": "^3.6.0" + } }, "readdirp": { "version": "3.6.0", @@ -13381,13 +13794,21 @@ } }, "redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", + "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", "dev": true, "requires": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" + "indent-string": "^5.0.0", + "strip-indent": "^4.0.0" + }, + "dependencies": { + "indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true + } } }, "regexpp": { @@ -13905,12 +14326,12 @@ "dev": true }, "strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", + "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", "dev": true, "requires": { - "min-indent": "^1.0.0" + "min-indent": "^1.0.1" } }, "strip-json-comments": { @@ -13919,13 +14340,13 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "strtok3": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", - "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0.tgz", + "integrity": "sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==", "dev": true, "requires": { "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.1.0" + "peek-readable": "^5.0.0" } }, "supertap": { @@ -14262,29 +14683,28 @@ "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", "dev": true }, - "temp-write": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-4.0.0.tgz", - "integrity": "sha512-HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw==", + "tempy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-3.0.0.tgz", + "integrity": "sha512-B2I9X7+o2wOaW4r/CWMkpOO9mdiTRCxXNgob6iGvPmfPWgH/KyUD6Uy5crtWBxIBe3YrNZKR2lSzv1JJKWD4vA==", "dev": true, "requires": { - "graceful-fs": "^4.1.15", - "is-stream": "^2.0.0", - "make-dir": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^3.3.2" + "is-stream": "^3.0.0", + "temp-dir": "^2.0.0", + "type-fest": "^2.12.2", + "unique-string": "^3.0.0" }, "dependencies": { - "temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", + "is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", "dev": true }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", "dev": true } } @@ -14381,27 +14801,19 @@ } }, "token-types": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.1.1.tgz", - "integrity": "sha512-wnQcqlreS6VjthyHO3Y/kpK/emflxDBNhlNUPfh7wE39KnuDdOituXomIbyI79vBtF0Ninpkh72mcuRHo+RG3Q==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.1.tgz", + "integrity": "sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==", "dev": true, "requires": { - "@tokenizer/token": "^0.1.1", + "@tokenizer/token": "^0.3.0", "ieee754": "^1.2.1" - }, - "dependencies": { - "@tokenizer/token": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", - "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", - "dev": true - } } }, "trim-newlines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", - "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.0.2.tgz", + "integrity": "sha512-GJtWyq9InR/2HRiLZgpIKv+ufIKrVrvjQWEj7PxAXNc5dwbNJkqhAUoAGgzRmULAnoOM5EIpveYd3J2VeSAIew==", "dev": true }, "tslib": { @@ -14469,6 +14881,15 @@ "imurmurhash": "^0.1.4" } }, + "unique-string": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-3.0.0.tgz", + "integrity": "sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==", + "dev": true, + "requires": { + "crypto-random-string": "^4.0.0" + } + }, "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index f00870ac225..e69c0471537 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -155,7 +155,7 @@ "js-beautify": "^1.14.0", "jsdoc": "^3.6.7", "nyc": "^15.1.0", - "open-cli": "^6.0.1", + "open-cli": "^7.1.0", "sinon": "^14.0.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" From 4a05273dcf94f46557d8da21167d6888c9888da4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Nov 2022 13:30:03 +0000 Subject: [PATCH 0686/1272] [ui5-project]Bump chokidar-cli from 2.1.0 to 3.0.0 Bumps [chokidar-cli](https://github.com/open-npm-tools/chokidar-cli) from 2.1.0 to 3.0.0. - [Release notes](https://github.com/open-npm-tools/chokidar-cli/releases) - [Commits](https://github.com/open-npm-tools/chokidar-cli/compare/2.1.0...v3.0.0) --- updated-dependencies: - dependency-name: chokidar-cli dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d84af56af93..2b4ac0fbf8c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -33,7 +33,7 @@ "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", "ava": "^4.3.3", - "chokidar-cli": "^2.1.0", + "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^1.2.0", @@ -1886,12 +1886,12 @@ } }, "node_modules/chokidar-cli": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-2.1.0.tgz", - "integrity": "sha512-6n21AVpW6ywuEPoxJcLXMA2p4T+SLjWsXKny/9yTWFz0kKxESI3eUylpeV97LylING/27T/RVTY0f2/0QaWq9Q==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-3.0.0.tgz", + "integrity": "sha512-xVW+Qeh7z15uZRxHOkP93Ux8A0xbPzwK4GaqD8dQOYc34TlkqUhVSS59fK36DOp5WdJlrRzlYSy02Ht99FjZqQ==", "dev": true, "dependencies": { - "chokidar": "^3.2.3", + "chokidar": "^3.5.2", "lodash.debounce": "^4.0.8", "lodash.throttle": "^4.1.1", "yargs": "^13.3.0" @@ -9965,12 +9965,12 @@ } }, "chokidar-cli": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-2.1.0.tgz", - "integrity": "sha512-6n21AVpW6ywuEPoxJcLXMA2p4T+SLjWsXKny/9yTWFz0kKxESI3eUylpeV97LylING/27T/RVTY0f2/0QaWq9Q==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-3.0.0.tgz", + "integrity": "sha512-xVW+Qeh7z15uZRxHOkP93Ux8A0xbPzwK4GaqD8dQOYc34TlkqUhVSS59fK36DOp5WdJlrRzlYSy02Ht99FjZqQ==", "dev": true, "requires": { - "chokidar": "^3.2.3", + "chokidar": "^3.5.2", "lodash.debounce": "^4.0.8", "lodash.throttle": "^4.1.1", "yargs": "^13.3.0" diff --git a/packages/project/package.json b/packages/project/package.json index e69c0471537..a7c3f2ef711 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,7 +139,7 @@ "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", "ava": "^4.3.3", - "chokidar-cli": "^2.1.0", + "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^1.2.0", From 6e8b940cb9d39ad0125d610dec07c64494817e2b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Nov 2022 13:29:55 +0000 Subject: [PATCH 0687/1272] [ui5-project]Bump actions/setup-node from 3.3.0 to 3.5.1 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.3.0 to 3.5.1. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.3.0...v3.5.1) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index ec0624b98d6..e53d42d2660 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -21,7 +21,7 @@ jobs: - uses: actions/checkout@v3 - name: Use Node.js LTS 16.x - uses: actions/setup-node@v3.3.0 + uses: actions/setup-node@v3.5.1 with: node-version: 16.x From 406ea8c9b93b288004df7fd1a920851675eff6ff Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 4 Nov 2022 10:56:36 +0100 Subject: [PATCH 0688/1272] [ui5-project][INTERNAL] REUSE: Update copyright year and open GH action version range --- packages/project/.github/workflows/reuse-compliance.yml | 2 +- packages/project/.reuse/dep5 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index 43d961d77bf..0ad800ede94 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -19,4 +19,4 @@ jobs: steps: - uses: actions/checkout@v3 - name: Execute REUSE Compliance Check - uses: fsfe/reuse-action@v1.1 + uses: fsfe/reuse-action@v1 diff --git a/packages/project/.reuse/dep5 b/packages/project/.reuse/dep5 index c81916ad08a..01bf271037a 100644 --- a/packages/project/.reuse/dep5 +++ b/packages/project/.reuse/dep5 @@ -25,5 +25,5 @@ Disclaimer: The code in this project may include calls to APIs (“API Calls”) parties the right to use of access any SAP External Product, through API Calls. Files: * -Copyright: 2018-2020 SAP SE or an SAP affiliate company and UI5 Tooling contributors +Copyright: 2018-2022 SAP SE or an SAP affiliate company and UI5 Tooling contributors License: Apache-2.0 From 5a4ebe7cc3ff452849e4431323f85a9273bfbb53 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 4 Nov 2022 06:26:32 +0100 Subject: [PATCH 0689/1272] [ui5-project][INTERNAL] Enhance Dependabot configuration to cover also v2 branch --- packages/project/.github/dependabot.yml | 28 +++++++++++++++++-------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/packages/project/.github/dependabot.yml b/packages/project/.github/dependabot.yml index 34876dd803c..1b8fb04f89c 100644 --- a/packages/project/.github/dependabot.yml +++ b/packages/project/.github/dependabot.yml @@ -1,5 +1,6 @@ version: 2 updates: +# Default Branch - package-ecosystem: "github-actions" directory: "/" schedule: @@ -15,12 +16,21 @@ updates: - RandomByte - matz3 versioning-strategy: increase - ignore: - - dependency-name: pacote - versions: - - ">= 10.a" - - "< 11" - - dependency-name: pacote - versions: - - ">= 11.a" - - "< 12" +# v2 Branch +- package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + target-branch: "v2" +- package-ecosystem: npm + directory: "/" + schedule: + interval: weekly + day: sunday + time: "10:00" + timezone: Etc/UCT + target-branch: "v2" + reviewers: + - RandomByte + - matz3 + versioning-strategy: increase From d91cce7a819e0aaf5956a147442219f462e2221d Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Mon, 7 Nov 2022 07:35:38 +0100 Subject: [PATCH 0690/1272] [ui5-project][INTERNAL] Remove other than main branch workflows --- packages/project/.github/workflows/codeql-analysis.yml | 4 ---- packages/project/.github/workflows/github-ci.yml | 4 ---- packages/project/.github/workflows/reuse-compliance.yml | 4 ---- 3 files changed, 12 deletions(-) diff --git a/packages/project/.github/workflows/codeql-analysis.yml b/packages/project/.github/workflows/codeql-analysis.yml index 55618d2bad7..876a633a037 100644 --- a/packages/project/.github/workflows/codeql-analysis.yml +++ b/packages/project/.github/workflows/codeql-analysis.yml @@ -3,14 +3,10 @@ name: "CodeQL" on: push: branches: - - v2 - main - - next pull_request: branches: - - v2 - main - - next # Execute at least once per week to get new findings without active development taking place schedule: diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index e53d42d2660..86a378892b0 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -3,14 +3,10 @@ name: GitHub CI on: push: branches: - - v2 - main - - next pull_request: branches: - - v2 - main - - next jobs: test: diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index 0ad800ede94..0886fbe5c99 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -3,14 +3,10 @@ name: REUSE on: push: branches: - - v2 - main - - next pull_request: branches: - - v2 - main - - next jobs: compliance-check: From 9fed4b198b32ceff3c9be7f8c8d1af6db5e025e4 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Mon, 7 Nov 2022 14:57:12 +0100 Subject: [PATCH 0691/1272] [ui5-project][INTERNAL] Disable automatic dependabot updates for v2 branch --- packages/project/.github/dependabot.yml | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/packages/project/.github/dependabot.yml b/packages/project/.github/dependabot.yml index 1b8fb04f89c..7069672336d 100644 --- a/packages/project/.github/dependabot.yml +++ b/packages/project/.github/dependabot.yml @@ -1,6 +1,5 @@ version: 2 updates: -# Default Branch - package-ecosystem: "github-actions" directory: "/" schedule: @@ -16,21 +15,3 @@ updates: - RandomByte - matz3 versioning-strategy: increase -# v2 Branch -- package-ecosystem: "github-actions" - directory: "/" - schedule: - interval: "weekly" - target-branch: "v2" -- package-ecosystem: npm - directory: "/" - schedule: - interval: weekly - day: sunday - time: "10:00" - timezone: Etc/UCT - target-branch: "v2" - reviewers: - - RandomByte - - matz3 - versioning-strategy: increase From c5d5518b9f2338f49b163c1baae82ba57d8bb82a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 7 Nov 2022 18:14:16 +0000 Subject: [PATCH 0692/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.1-alpha.3 to 3.0.0-beta.1 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.0-beta.1/CHANGELOG.md --- packages/project/package-lock.json | 56 ++++++++++++++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 50 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2b4ac0fbf8c..27d4b24af6a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-alpha.12", "@ui5/fs": "^3.0.0-alpha.7", - "@ui5/logger": "^3.0.1-alpha.3", + "@ui5/logger": "^3.0.0-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", @@ -877,6 +877,18 @@ "npm": ">= 8" } }, + "node_modules/@ui5/builder/node_modules/@ui5/logger": { + "version": "3.0.1-alpha.3", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", + "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", + "dependencies": { + "npmlog": "^6.0.2" + }, + "engines": { + "node": ">= 16.13.2", + "npm": ">= 8" + } + }, "node_modules/@ui5/fs": { "version": "3.0.0-alpha.7", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.7.tgz", @@ -898,6 +910,18 @@ "npm": ">= 8" } }, + "node_modules/@ui5/fs/node_modules/@ui5/logger": { + "version": "3.0.1-alpha.3", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", + "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", + "dependencies": { + "npmlog": "^6.0.2" + }, + "engines": { + "node": ">= 16.13.2", + "npm": ">= 8" + } + }, "node_modules/@ui5/fs/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -910,9 +934,9 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.1-alpha.3", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", - "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", + "version": "3.0.0-beta.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-beta.1.tgz", + "integrity": "sha512-hD9rPhzzLFl0b9bdw4HFj/nIeFZdSN9zF4oFXffxGqk8DE609JAfdvpFCGSRLGVMuzMD3BMaG+g6LMPsux41YQ==", "dependencies": { "npmlog": "^6.0.2" }, @@ -9226,6 +9250,16 @@ "terser": "^5.14.2", "xml2js": "^0.4.23", "yazl": "^2.5.1" + }, + "dependencies": { + "@ui5/logger": { + "version": "3.0.1-alpha.3", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", + "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", + "requires": { + "npmlog": "^6.0.2" + } + } } }, "@ui5/fs": { @@ -9245,6 +9279,14 @@ "random-int": "^2.0.1" }, "dependencies": { + "@ui5/logger": { + "version": "3.0.1-alpha.3", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", + "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", + "requires": { + "npmlog": "^6.0.2" + } + }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -9253,9 +9295,9 @@ } }, "@ui5/logger": { - "version": "3.0.1-alpha.3", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", - "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", + "version": "3.0.0-beta.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-beta.1.tgz", + "integrity": "sha512-hD9rPhzzLFl0b9bdw4HFj/nIeFZdSN9zF4oFXffxGqk8DE609JAfdvpFCGSRLGVMuzMD3BMaG+g6LMPsux41YQ==", "requires": { "npmlog": "^6.0.2" } diff --git a/packages/project/package.json b/packages/project/package.json index a7c3f2ef711..5593bff49db 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-alpha.12", "@ui5/fs": "^3.0.0-alpha.7", - "@ui5/logger": "^3.0.1-alpha.3", + "@ui5/logger": "^3.0.0-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", From b573144f93cf066a4f61f65e83eeb40e83c8a97d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 7 Nov 2022 19:22:48 +0000 Subject: [PATCH 0693/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.0-beta.1 to 3.0.1-beta.0 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.1-beta.0/CHANGELOG.md --- packages/project/package-lock.json | 56 ++++-------------------------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 50 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 27d4b24af6a..9d37c53fef8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-alpha.12", "@ui5/fs": "^3.0.0-alpha.7", - "@ui5/logger": "^3.0.0-beta.1", + "@ui5/logger": "^3.0.1-beta.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", @@ -877,18 +877,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/builder/node_modules/@ui5/logger": { - "version": "3.0.1-alpha.3", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", - "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", - "dependencies": { - "npmlog": "^6.0.2" - }, - "engines": { - "node": ">= 16.13.2", - "npm": ">= 8" - } - }, "node_modules/@ui5/fs": { "version": "3.0.0-alpha.7", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.7.tgz", @@ -910,18 +898,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/fs/node_modules/@ui5/logger": { - "version": "3.0.1-alpha.3", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", - "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", - "dependencies": { - "npmlog": "^6.0.2" - }, - "engines": { - "node": ">= 16.13.2", - "npm": ">= 8" - } - }, "node_modules/@ui5/fs/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -934,9 +910,9 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.0-beta.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-beta.1.tgz", - "integrity": "sha512-hD9rPhzzLFl0b9bdw4HFj/nIeFZdSN9zF4oFXffxGqk8DE609JAfdvpFCGSRLGVMuzMD3BMaG+g6LMPsux41YQ==", + "version": "3.0.1-beta.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-beta.0.tgz", + "integrity": "sha512-lSTuF6mamfam1U+7vC6uBohlfAqxRTFQSIthITGSmYhilCew/z9MV6jMVJv/o9byisa/8LQJYhGgJ/oBkic7Rw==", "dependencies": { "npmlog": "^6.0.2" }, @@ -9250,16 +9226,6 @@ "terser": "^5.14.2", "xml2js": "^0.4.23", "yazl": "^2.5.1" - }, - "dependencies": { - "@ui5/logger": { - "version": "3.0.1-alpha.3", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", - "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", - "requires": { - "npmlog": "^6.0.2" - } - } } }, "@ui5/fs": { @@ -9279,14 +9245,6 @@ "random-int": "^2.0.1" }, "dependencies": { - "@ui5/logger": { - "version": "3.0.1-alpha.3", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-alpha.3.tgz", - "integrity": "sha512-oYO4jmen6Csuf9tw9SI/iKXGeMD1gA3ShQrtc1Uyjw/RgT9LGNRmWaqHtwws+Qlh2TPIz9gz9gYd3pdj5aE3Qw==", - "requires": { - "npmlog": "^6.0.2" - } - }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -9295,9 +9253,9 @@ } }, "@ui5/logger": { - "version": "3.0.0-beta.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0-beta.1.tgz", - "integrity": "sha512-hD9rPhzzLFl0b9bdw4HFj/nIeFZdSN9zF4oFXffxGqk8DE609JAfdvpFCGSRLGVMuzMD3BMaG+g6LMPsux41YQ==", + "version": "3.0.1-beta.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-beta.0.tgz", + "integrity": "sha512-lSTuF6mamfam1U+7vC6uBohlfAqxRTFQSIthITGSmYhilCew/z9MV6jMVJv/o9byisa/8LQJYhGgJ/oBkic7Rw==", "requires": { "npmlog": "^6.0.2" } diff --git a/packages/project/package.json b/packages/project/package.json index 5593bff49db..b9e33167644 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-alpha.12", "@ui5/fs": "^3.0.0-alpha.7", - "@ui5/logger": "^3.0.0-beta.1", + "@ui5/logger": "^3.0.1-beta.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", From fa785549ef948ae8cd194cb9c289049ee43b1845 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 7 Nov 2022 19:38:52 +0000 Subject: [PATCH 0694/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-alpha.7 to 3.0.0-beta.2 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-beta.2/CHANGELOG.md --- packages/project/package-lock.json | 140 ++++++++++++++++++++++------- packages/project/package.json | 2 +- 2 files changed, 108 insertions(+), 34 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9d37c53fef8..b057ffce033 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-alpha.12", - "@ui5/fs": "^3.0.0-alpha.7", + "@ui5/fs": "^3.0.0-beta.2", "@ui5/logger": "^3.0.1-beta.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -878,32 +878,69 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-alpha.7", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.7.tgz", - "integrity": "sha512-lgkCG6YcJOMTK1BqbjhYYK/0KU7iH2MGOeweuOfvJNMjAkh/8w1yXHhMplD+5zz3H+pLir4rZh+/PlqyJ/bPmQ==", + "version": "3.0.0-beta.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.2.tgz", + "integrity": "sha512-oFLZ7dsugCrYw1p+sjY6QtR1stwP2ckkKlcxqKuemZ5i7xW2PwyX4oJRGmi3y28inAeiyeSSRkoqkcgRlUyNyQ==", "dependencies": { - "@ui5/logger": "^3.0.1-alpha.3", + "@ui5/logger": "^3.0.1-beta.0", "clone": "^2.1.0", - "escape-string-regexp": "^4.0.0", - "globby": "^11.1.0", + "escape-string-regexp": "^5.0.0", + "globby": "^13.1.2", "graceful-fs": "^4.2.9", "make-dir": "^3.1.0", "micromatch": "^4.0.4", - "minimatch": "^3.0.3", + "minimatch": "^5.1.0", "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.1" + "random-int": "^3.0.0" }, "engines": { "node": ">= 16.13.2", "npm": ">= 8" } }, - "node_modules/@ui5/fs/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "node_modules/@ui5/fs/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@ui5/fs/node_modules/globby": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", + "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ui5/fs/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, "engines": { "node": ">=10" + } + }, + "node_modules/@ui5/fs/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "engines": { + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -1177,6 +1214,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, "engines": { "node": ">=8" } @@ -3894,6 +3932,7 @@ "version": "11.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, "dependencies": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -6722,11 +6761,14 @@ } }, "node_modules/random-int": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", - "integrity": "sha512-YALjWK2Rt9EMIv9BF/3mvlzFWQathsvb5UZmN1QmhfIOfcQYXc/UcLzg0ablqesSBpBVLt2Tlwv/eTuBh4LXUQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-3.0.0.tgz", + "integrity": "sha512-QvewnOwigesW2WFyTHiQzR6XUUcSQO/BqmfgRz5N5GpGrKQnTf7ebMz8UtuwaET8IfO1n0wLx8/fHsI8E0Jpow==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/read-pkg": { @@ -7272,6 +7314,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, "engines": { "node": ">=8" } @@ -9229,26 +9272,54 @@ } }, "@ui5/fs": { - "version": "3.0.0-alpha.7", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-alpha.7.tgz", - "integrity": "sha512-lgkCG6YcJOMTK1BqbjhYYK/0KU7iH2MGOeweuOfvJNMjAkh/8w1yXHhMplD+5zz3H+pLir4rZh+/PlqyJ/bPmQ==", + "version": "3.0.0-beta.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.2.tgz", + "integrity": "sha512-oFLZ7dsugCrYw1p+sjY6QtR1stwP2ckkKlcxqKuemZ5i7xW2PwyX4oJRGmi3y28inAeiyeSSRkoqkcgRlUyNyQ==", "requires": { - "@ui5/logger": "^3.0.1-alpha.3", + "@ui5/logger": "^3.0.1-beta.0", "clone": "^2.1.0", - "escape-string-regexp": "^4.0.0", - "globby": "^11.1.0", + "escape-string-regexp": "^5.0.0", + "globby": "^13.1.2", "graceful-fs": "^4.2.9", "make-dir": "^3.1.0", "micromatch": "^4.0.4", - "minimatch": "^3.0.3", + "minimatch": "^5.1.0", "pretty-hrtime": "^1.0.3", - "random-int": "^2.0.1" + "random-int": "^3.0.0" }, "dependencies": { - "escape-string-regexp": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "globby": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", + "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", + "requires": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" + } + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "slash": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==" } } }, @@ -9465,7 +9536,8 @@ "array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true }, "arrgv": { "version": "1.0.2", @@ -11557,6 +11629,7 @@ "version": "11.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, "requires": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -13701,9 +13774,9 @@ "dev": true }, "random-int": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-2.0.1.tgz", - "integrity": "sha512-YALjWK2Rt9EMIv9BF/3mvlzFWQathsvb5UZmN1QmhfIOfcQYXc/UcLzg0ablqesSBpBVLt2Tlwv/eTuBh4LXUQ==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-3.0.0.tgz", + "integrity": "sha512-QvewnOwigesW2WFyTHiQzR6XUUcSQO/BqmfgRz5N5GpGrKQnTf7ebMz8UtuwaET8IfO1n0wLx8/fHsI8E0Jpow==" }, "read-pkg": { "version": "5.2.0", @@ -14111,7 +14184,8 @@ "slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true }, "slice-ansi": { "version": "5.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index b9e33167644..91a6564a9d0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-alpha.12", - "@ui5/fs": "^3.0.0-alpha.7", + "@ui5/fs": "^3.0.0-beta.2", "@ui5/logger": "^3.0.1-beta.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 5890cd1043bf102612cfbb46333a1b815869f284 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 7 Nov 2022 19:49:44 +0000 Subject: [PATCH 0695/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-alpha.12 to 3.0.0-beta.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-beta.1/CHANGELOG.md --- packages/project/package-lock.json | 22 +++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b057ffce033..83610d387c2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-beta.0", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-alpha.12", + "@ui5/builder": "^3.0.0-beta.1", "@ui5/fs": "^3.0.0-beta.2", "@ui5/logger": "^3.0.1-beta.0", "ajv": "^6.12.6", @@ -849,13 +849,13 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-alpha.12", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.12.tgz", - "integrity": "sha512-sl7K2ygqZq3eeQK0hXIZqXgjMg5hQ3UA2/hmDd2Ry0UgzD6FNSj8VZSzpft1n533huD2BxjmiRhHCqxo9DM6UQ==", + "version": "3.0.0-beta.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.1.tgz", + "integrity": "sha512-EG7/YkpI46F2TTpx9YCL8e4t/8GgeFSzGFgf1j2Av6YtjcgfPgJq1a+2CgeoBOb2DWvlDcAeQiKrkkgDs9oq1w==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-alpha.7", - "@ui5/logger": "^3.0.1-alpha.3", + "@ui5/fs": "^3.0.0-beta.2", + "@ui5/logger": "^3.0.1-beta.0", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^4.0.0", @@ -9247,13 +9247,13 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-alpha.12", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-alpha.12.tgz", - "integrity": "sha512-sl7K2ygqZq3eeQK0hXIZqXgjMg5hQ3UA2/hmDd2Ry0UgzD6FNSj8VZSzpft1n533huD2BxjmiRhHCqxo9DM6UQ==", + "version": "3.0.0-beta.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.1.tgz", + "integrity": "sha512-EG7/YkpI46F2TTpx9YCL8e4t/8GgeFSzGFgf1j2Av6YtjcgfPgJq1a+2CgeoBOb2DWvlDcAeQiKrkkgDs9oq1w==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-alpha.7", - "@ui5/logger": "^3.0.1-alpha.3", + "@ui5/fs": "^3.0.0-beta.2", + "@ui5/logger": "^3.0.1-beta.0", "cheerio": "1.0.0-rc.9", "escape-unicode": "^0.2.0", "escope": "^4.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 91a6564a9d0..3e17becbea3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -115,7 +115,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-alpha.12", + "@ui5/builder": "^3.0.0-beta.1", "@ui5/fs": "^3.0.0-beta.2", "@ui5/logger": "^3.0.1-beta.0", "ajv": "^6.12.6", From 015a5dd6869bf86c96dd9725825f064102c1a45f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 7 Nov 2022 20:02:59 +0000 Subject: [PATCH 0696/1272] [ui5-project]Release 3.0.0-beta.1 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 072656de583..9ae3542226f 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.10...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-beta.1...HEAD). + + +## [v3.0.0-beta.1] - 2022-11-07 ## [v3.0.0-alpha.10] - 2022-10-24 @@ -349,6 +352,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-beta.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.10...v3.0.0-beta.1 [v3.0.0-alpha.10]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.9...v3.0.0-alpha.10 [v3.0.0-alpha.9]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.8...v3.0.0-alpha.9 [v3.0.0-alpha.8]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.7...v3.0.0-alpha.8 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 83610d387c2..986f0a5aef5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.0", + "version": "3.0.0-beta.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-beta.0", + "version": "3.0.0-beta.1", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-beta.1", diff --git a/packages/project/package.json b/packages/project/package.json index 3e17becbea3..56bbb83cac1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.0", + "version": "3.0.0-beta.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 50c9061b2e100b9ab34026c7a1e814d9fa0c22ed Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 3 Nov 2022 17:18:58 +0000 Subject: [PATCH 0697/1272] [ui5-project]Bump read-pkg from 5.2.0 to 7.1.0 Bumps [read-pkg](https://github.com/sindresorhus/read-pkg) from 5.2.0 to 7.1.0. - [Release notes](https://github.com/sindresorhus/read-pkg/releases) - [Commits](https://github.com/sindresorhus/read-pkg/compare/v5.2.0...v7.1.0) --- updated-dependencies: - dependency-name: read-pkg dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 159 +++++++++++++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 140 insertions(+), 21 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 986f0a5aef5..fb63c790e51 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -23,7 +23,7 @@ "mkdirp": "^1.0.4", "pacote": "^9.5.12", "pretty-hrtime": "^1.0.3", - "read-pkg": "^5.2.0", + "read-pkg": "^7.1.0", "read-pkg-up": "^7.0.1", "resolve": "^1.21.0", "rimraf": "^3.0.2", @@ -6772,17 +6772,20 @@ } }, "node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", + "integrity": "sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==", "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "@types/normalize-package-data": "^2.4.1", + "normalize-package-data": "^3.0.2", + "parse-json": "^5.2.0", + "type-fest": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/read-pkg-up": { @@ -6843,7 +6846,21 @@ "node": ">=8" } }, - "node_modules/read-pkg/node_modules/type-fest": { + "node_modules/read-pkg-up/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/read-pkg/node_modules/type-fest": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", @@ -6851,6 +6868,58 @@ "node": ">=8" } }, + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/read-pkg/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -13779,20 +13848,52 @@ "integrity": "sha512-QvewnOwigesW2WFyTHiQzR6XUUcSQO/BqmfgRz5N5GpGrKQnTf7ebMz8UtuwaET8IfO1n0wLx8/fHsI8E0Jpow==" }, "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", + "integrity": "sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==", "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "@types/normalize-package-data": "^2.4.1", + "normalize-package-data": "^3.0.2", + "parse-json": "^5.2.0", + "type-fest": "^2.0.0" }, "dependencies": { + "hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "requires": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + } + }, "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, @@ -13835,6 +13936,24 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, + "read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "dependencies": { + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" + } + } } } }, diff --git a/packages/project/package.json b/packages/project/package.json index 56bbb83cac1..941d8eaa1bc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "mkdirp": "^1.0.4", "pacote": "^9.5.12", "pretty-hrtime": "^1.0.3", - "read-pkg": "^5.2.0", + "read-pkg": "^7.1.0", "read-pkg-up": "^7.0.1", "resolve": "^1.21.0", "rimraf": "^3.0.2", From 8559fc4a928e97896c72dbc4e6ed912f5247ec7f Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 4 Nov 2022 09:15:15 +0100 Subject: [PATCH 0698/1272] [ui5-project][INTERNAL] Use named export instead of default --- .../project/lib/graph/providers/NodePackageDependencies.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js index be9956d84a2..6e977cc7f1e 100644 --- a/packages/project/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -1,6 +1,6 @@ import path from "node:path"; import readPkgUp from "read-pkg-up"; -import readPkg from "read-pkg"; +import {readPackage} from "read-pkg"; import {promisify} from "node:util"; import fs from "graceful-fs"; const realpath = promisify(fs.realpath); @@ -93,7 +93,7 @@ class NodePackageDependencies { async _getNode(modulePath, optional) { log.verbose(`Reading package.json in directory ${modulePath}...`); - const packageJson = await readPkg({ + const packageJson = await readPackage({ cwd: modulePath, normalize: false }); From 94f35980c4555748815a35ea717853812edc9597 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 4 Nov 2022 13:50:40 +0000 Subject: [PATCH 0699/1272] [ui5-project]Bump js-beautify from 1.14.3 to 1.14.7 Bumps [js-beautify](https://github.com/beautify-web/js-beautify) from 1.14.3 to 1.14.7. - [Release notes](https://github.com/beautify-web/js-beautify/releases) - [Changelog](https://github.com/beautify-web/js-beautify/blob/main/CHANGELOG.md) - [Commits](https://github.com/beautify-web/js-beautify/compare/v1.14.3...v1.14.7) --- updated-dependencies: - dependency-name: js-beautify dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 113 ++++++++++++++++++++++++----- packages/project/package.json | 2 +- 2 files changed, 94 insertions(+), 21 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fb63c790e51..98b74002ea6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -46,7 +46,7 @@ "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.3", - "js-beautify": "^1.14.0", + "js-beautify": "^1.14.7", "jsdoc": "^3.6.7", "nyc": "^15.1.0", "open-cli": "^7.1.0", @@ -4573,15 +4573,15 @@ } }, "node_modules/js-beautify": { - "version": "1.14.3", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.3.tgz", - "integrity": "sha512-f1ra8PHtOEu/70EBnmiUlV8nJePS58y9qKjl4JHfYWlFH6bo7ogZBz//FAZp7jDuXtYnGYKymZPlrg2I/9Zo4g==", + "version": "1.14.7", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.7.tgz", + "integrity": "sha512-5SOX1KXPFKx+5f6ZrPsIPEY7NwKeQz47n3jm2i+XeHx9MoRsfQenlOP13FQhWvg8JRS0+XLO6XYUQ2GX+q+T9A==", "dev": true, "dependencies": { "config-chain": "^1.1.13", "editorconfig": "^0.15.3", - "glob": "^7.1.3", - "nopt": "^5.0.0" + "glob": "^8.0.3", + "nopt": "^6.0.0" }, "bin": { "css-beautify": "js/bin/css-beautify.js", @@ -4592,6 +4592,46 @@ "node": ">=10" } }, + "node_modules/js-beautify/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/js-beautify/node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/js-beautify/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/js-string-escape": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", @@ -5573,18 +5613,18 @@ } }, "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", "dev": true, "dependencies": { - "abbrev": "1" + "abbrev": "^1.0.0" }, "bin": { "nopt": "bin/nopt.js" }, "engines": { - "node": ">=6" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/normalize-package-data": { @@ -12181,15 +12221,48 @@ } }, "js-beautify": { - "version": "1.14.3", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.3.tgz", - "integrity": "sha512-f1ra8PHtOEu/70EBnmiUlV8nJePS58y9qKjl4JHfYWlFH6bo7ogZBz//FAZp7jDuXtYnGYKymZPlrg2I/9Zo4g==", + "version": "1.14.7", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.7.tgz", + "integrity": "sha512-5SOX1KXPFKx+5f6ZrPsIPEY7NwKeQz47n3jm2i+XeHx9MoRsfQenlOP13FQhWvg8JRS0+XLO6XYUQ2GX+q+T9A==", "dev": true, "requires": { "config-chain": "^1.1.13", "editorconfig": "^0.15.3", - "glob": "^7.1.3", - "nopt": "^5.0.0" + "glob": "^8.0.3", + "nopt": "^6.0.0" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + } + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } } }, "js-string-escape": { @@ -12941,12 +13014,12 @@ "dev": true }, "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", "dev": true, "requires": { - "abbrev": "1" + "abbrev": "^1.0.0" } }, "normalize-package-data": { diff --git a/packages/project/package.json b/packages/project/package.json index 941d8eaa1bc..c6471fc6f55 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -152,7 +152,7 @@ "istanbul-lib-instrument": "^4.0.3", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.3", - "js-beautify": "^1.14.0", + "js-beautify": "^1.14.7", "jsdoc": "^3.6.7", "nyc": "^15.1.0", "open-cli": "^7.1.0", From dc8f23b8f4e210021968b273962ebe5e6a8cb3ee Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 4 Nov 2022 09:15:15 +0100 Subject: [PATCH 0700/1272] [ui5-project][INTERNAL] Use named export instead of default --- .../providers/NodePackageDependencies.js | 4 +- packages/project/package-lock.json | 193 ++++++++++-------- packages/project/package.json | 2 +- 3 files changed, 112 insertions(+), 87 deletions(-) diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js index 6e977cc7f1e..a44a05b7855 100644 --- a/packages/project/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -1,5 +1,5 @@ import path from "node:path"; -import readPkgUp from "read-pkg-up"; +import {readPackageUp} from "read-pkg-up"; import {readPackage} from "read-pkg"; import {promisify} from "node:util"; import fs from "graceful-fs"; @@ -39,7 +39,7 @@ class NodePackageDependencies { } async getRootNode() { - const rootPkg = await readPkgUp({ + const rootPkg = await readPackageUp({ cwd: this._cwd, normalize: false }); diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 98b74002ea6..0e1cf4f3474 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -24,7 +24,7 @@ "pacote": "^9.5.12", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", - "read-pkg-up": "^7.0.1", + "read-pkg-up": "^9.1.0", "resolve": "^1.21.0", "rimraf": "^3.0.2", "semver": "^7.3.5", @@ -6829,83 +6829,106 @@ } }, "node_modules/read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-9.1.0.tgz", + "integrity": "sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg==", "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" + "find-up": "^6.3.0", + "read-pkg": "^7.1.0", + "type-fest": "^2.5.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/read-pkg-up/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.1.tgz", + "integrity": "sha512-vJXaRMJgRVD3+cUZs3Mncj2mxpt5mP0EmNOsxRSZRMlbqjvxzDEOIUWXGmavo0ZC9+tNZCBLQ66reA11nbpHZg==", "dependencies": { - "p-locate": "^4.1.0" + "p-locate": "^6.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", "dependencies": { - "p-limit": "^2.2.0" + "p-limit": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/read-pkg-up/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/read-pkg-up/node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", "engines": { - "node": ">=8" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg-up/node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "node_modules/read-pkg-up/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", "engines": { - "node": ">=8" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/read-pkg/node_modules/hosted-git-info": { @@ -8374,6 +8397,7 @@ "version": "0.8.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, "engines": { "node": ">=8" } @@ -13971,62 +13995,62 @@ } }, "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-9.1.0.tgz", + "integrity": "sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg==", "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" + "find-up": "^6.3.0", + "read-pkg": "^7.1.0", + "type-fest": "^2.5.0" }, "dependencies": { "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" } }, "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.1.tgz", + "integrity": "sha512-vJXaRMJgRVD3+cUZs3Mncj2mxpt5mP0EmNOsxRSZRMlbqjvxzDEOIUWXGmavo0ZC9+tNZCBLQ66reA11nbpHZg==", "requires": { - "p-locate": "^4.1.0" + "p-locate": "^6.0.0" + } + }, + "p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "requires": { + "yocto-queue": "^1.0.0" } }, "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", "requires": { - "p-limit": "^2.2.0" + "p-limit": "^4.0.0" } }, "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==" }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" - } - } + "type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" + }, + "yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==" } } }, @@ -15105,7 +15129,8 @@ "type-fest": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true }, "typedarray": { "version": "0.0.6", diff --git a/packages/project/package.json b/packages/project/package.json index c6471fc6f55..6f32e83deab 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -130,7 +130,7 @@ "pacote": "^9.5.12", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", - "read-pkg-up": "^7.0.1", + "read-pkg-up": "^9.1.0", "resolve": "^1.21.0", "rimraf": "^3.0.2", "semver": "^7.3.5", From d6df9af3eea4d7a4354382866200716b7135a881 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Nov 2022 07:59:35 +0000 Subject: [PATCH 0701/1272] [ui5-project]Bump istanbul-lib-instrument from 4.0.3 to 5.2.1 Bumps [istanbul-lib-instrument](https://github.com/istanbuljs/istanbuljs/tree/HEAD/packages/istanbul-lib-instrument) from 4.0.3 to 5.2.1. - [Release notes](https://github.com/istanbuljs/istanbuljs/releases) - [Changelog](https://github.com/istanbuljs/istanbuljs/blob/master/packages/istanbul-lib-instrument/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/istanbuljs/commits/istanbul-lib-instrument-v5.2.1/packages/istanbul-lib-instrument) --- updated-dependencies: - dependency-name: istanbul-lib-instrument dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 112 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 56 insertions(+), 58 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0e1cf4f3474..da488fd167e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint-plugin-jsdoc": "^37.6.3", "esmock": "^2.0.0", "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.3", "js-beautify": "^1.14.7", @@ -1532,31 +1532,6 @@ "node": ">=8" } }, - "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -4479,14 +4454,15 @@ } }, "node_modules/istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, "dependencies": { - "@babel/core": "^7.7.5", + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-coverage": "^3.2.0", "semver": "^6.3.0" }, "engines": { @@ -5884,6 +5860,21 @@ "node": ">=8" } }, + "node_modules/nyc/node_modules/istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/nyc/node_modules/locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -5938,6 +5929,15 @@ "node": ">=8" } }, + "node_modules/nyc/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/nyc/node_modules/wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -9880,27 +9880,6 @@ "@istanbuljs/schema": "^0.1.2", "istanbul-lib-instrument": "^5.0.4", "test-exclude": "^6.0.0" - }, - "dependencies": { - "istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } } }, "balanced-match": { @@ -12168,14 +12147,15 @@ } }, "istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, "requires": { - "@babel/core": "^7.7.5", + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-coverage": "^3.2.0", "semver": "^6.3.0" }, "dependencies": { @@ -13261,6 +13241,18 @@ "path-exists": "^4.0.0" } }, + "istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "dev": true, + "requires": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + } + }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -13300,6 +13292,12 @@ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 6f32e83deab..4946ca9e73c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -149,7 +149,7 @@ "eslint-plugin-jsdoc": "^37.6.3", "esmock": "^2.0.0", "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.3", "js-beautify": "^1.14.7", From a1a95e0c48484d272c2b6111202b34fef130fdfb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 8 Nov 2022 08:10:09 +0000 Subject: [PATCH 0702/1272] [ui5-project]Bump pacote from 9.5.12 to 15.0.6 Bumps [pacote](https://github.com/npm/pacote) from 9.5.12 to 15.0.6. - [Release notes](https://github.com/npm/pacote/releases) - [Changelog](https://github.com/npm/pacote/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/pacote/compare/v9.5.12...v15.0.6) --- updated-dependencies: - dependency-name: pacote dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 3374 +++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 1571 insertions(+), 1805 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index da488fd167e..c5fd894b009 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -21,7 +21,7 @@ "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", "mkdirp": "^1.0.4", - "pacote": "^9.5.12", + "pacote": "^15.0.6", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", @@ -534,6 +534,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" + }, "node_modules/@humanwhocodes/config-array": { "version": "0.9.5", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", @@ -765,6 +770,148 @@ "node": ">= 8" } }, + "node_modules/@npmcli/fs": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", + "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.0.3.tgz", + "integrity": "sha512-8cXNkDIbnXPVbhXMmQ7/bklCAjtmPaXfI9aEM4iH+xSuEHINLMHhlfESvVwdqmHJRJkR48vNJTSUvoF6GRPSFA==", + "dependencies": { + "@npmcli/promise-spawn": "^6.0.0", + "lru-cache": "^7.4.4", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/@npmcli/git/node_modules/which": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", + "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/installed-package-contents": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.1.tgz", + "integrity": "sha512-GIykAFdOVK31Q1/zAtT5MbxqQL2vyl9mvFJv+OGu01zxbhL3p0xc8gJjdNGX1mWmUT43aEKVO2L6V/2j4TOsAA==", + "dependencies": { + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "bin": { + "installed-package-contents": "lib/index.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/node-gyp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", + "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.1.tgz", + "integrity": "sha512-+hcUpxgx0vEpDJI9Cn+lkTdKLoqKBXFCVps5H7FujEU2vLOp6KwqjLlxbnz8Wzgm8oEqW/u5FeNAXSFjLdCD0A==", + "dependencies": { + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/which": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", + "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.0.tgz", + "integrity": "sha512-ql+AbRur1TeOdl1FY+RAwGW9fcr4ZwiVKabdvm93mujGREVuVLbdkXRJDrkTXSdCjaxYydr1wlA2v67jxWG5BQ==", + "dependencies": { + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", + "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@sinonjs/commons": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", @@ -806,6 +953,14 @@ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", "dev": true }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "engines": { + "node": ">= 10" + } + }, "node_modules/@types/linkify-it": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", @@ -1030,8 +1185,7 @@ "node_modules/abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "node_modules/acorn": { "version": "8.7.1", @@ -1062,32 +1216,33 @@ } }, "node_modules/agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dependencies": { - "es6-promisify": "^5.0.0" + "debug": "4" }, "engines": { - "node": ">= 4.0.0" + "node": ">= 6.0.0" } }, "node_modules/agentkeepalive": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", - "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", + "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", "dependencies": { + "debug": "^4.1.0", + "depd": "^1.1.2", "humanize-ms": "^1.2.1" }, "engines": { - "node": ">= 4.0.0" + "node": ">= 8.0.0" } }, "node_modules/aggregate-error": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, "dependencies": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -1625,67 +1780,81 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, "node_modules/builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==" + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", + "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", + "dependencies": { + "semver": "^7.0.0" + } }, "node_modules/cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dependencies": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.2.tgz", + "integrity": "sha512-rYUs2x4OjSgCQND7nTrh21AHIBFgd7s/ctAYvU3a8u+nK+R5YaX/SFPDYz4Azz7SGL6+6L9ZZWI4Kawpb7grzQ==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/cacache/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dependencies": { - "yallist": "^3.0.2" + "balanced-match": "^1.0.0" } }, - "node_modules/cacache/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "node_modules/cacache/node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", "dependencies": { - "minimist": "^1.2.6" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/cacache/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", "dependencies": { - "glob": "^7.1.3" + "brace-expansion": "^2.0.1" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=10" } }, - "node_modules/cacache/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - }, "node_modules/caching-transform": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", @@ -2041,9 +2210,12 @@ } }, "node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } }, "node_modules/chunkd": { "version": "2.0.1", @@ -2067,7 +2239,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, "engines": { "node": ">=6" } @@ -2230,47 +2401,6 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, - "node_modules/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "engines": [ - "node >= 0.8" - ], - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/concat-stream/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/concat-stream/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/concat-stream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/concordance": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.4.tgz", @@ -2323,46 +2453,6 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dependencies": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - } - }, - "node_modules/copy-concurrently/node_modules/aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "node_modules/copy-concurrently/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/copy-concurrently/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, "node_modules/core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", @@ -2491,11 +2581,6 @@ "node": ">=0.10.0" } }, - "node_modules/cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==" - }, "node_modules/date-time": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/date-time/-/date-time-3.1.0.tgz", @@ -2512,7 +2597,6 @@ "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, "dependencies": { "ms": "2.1.2" }, @@ -2528,8 +2612,7 @@ "node_modules/debug/node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node_modules/decamelize": { "version": "1.2.0", @@ -2686,6 +2769,14 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/deps-regex": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", @@ -2826,44 +2917,6 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dependencies": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } - }, - "node_modules/duplexify/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/duplexify/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/duplexify/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -2921,18 +2974,11 @@ "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, "dependencies": { "iconv-lite": "^0.6.2" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" - } - }, "node_modules/enhance-visitors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/enhance-visitors/-/enhance-visitors-1.0.0.tgz", @@ -2953,10 +2999,18 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "engines": { + "node": ">=6" + } + }, "node_modules/err-code": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", - "integrity": "sha512-CJAN+O0/yA1CKfRn9SXOGctSpEM7DCon/r/5r2eXFMY2zCCJBasFhcM5I+1kh3Ap11FsQCX+vGHceNPvpWKhoA==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" }, "node_modules/error-ex": { "version": "1.3.2", @@ -2972,19 +3026,6 @@ "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", "dev": true }, - "node_modules/es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" - }, - "node_modules/es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", - "dependencies": { - "es6-promise": "^4.0.3" - } - }, "node_modules/escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -3610,47 +3651,11 @@ "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", "dev": true }, - "node_modules/flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "dependencies": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - } - }, - "node_modules/flush-write-stream/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/flush-write-stream/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/flush-write-stream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, + "node_modules/foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^3.0.2" @@ -3659,42 +3664,6 @@ "node": ">=8.0.0" } }, - "node_modules/from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", - "dependencies": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "node_modules/from2/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/from2/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/from2/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/fromentries": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", @@ -3716,49 +3685,14 @@ ] }, "node_modules/fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "dependencies": { - "minipass": "^2.6.0" - } - }, - "node_modules/fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==", - "dependencies": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } - }, - "node_modules/fs-write-stream-atomic/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/fs-write-stream-atomic/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/fs-write-stream-atomic/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "dependencies": { - "safe-buffer": "~5.1.0" + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" } }, "node_modules/fs.realpath": { @@ -3809,11 +3743,6 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/genfun": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", - "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==" - }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -3853,17 +3782,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -3999,9 +3917,23 @@ } }, "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "engines": { + "node": ">=12" + } }, "node_modules/html-escaper": { "version": "2.0.2", @@ -4028,53 +3960,33 @@ } }, "node_modules/http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" }, "node_modules/http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", "dependencies": { - "agent-base": "4", - "debug": "3.1.0" + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" }, "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/http-proxy-agent/node_modules/debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dependencies": { - "ms": "2.0.0" + "node": ">= 6" } }, - "node_modules/http-proxy-agent/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, "node_modules/https-proxy-agent": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", - "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dependencies": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" + "agent-base": "6", + "debug": "4" }, "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/https-proxy-agent/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dependencies": { - "ms": "^2.1.1" + "node": ">= 6" } }, "node_modules/humanize-ms": { @@ -4089,6 +4001,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -4116,11 +4029,6 @@ } ] }, - "node_modules/iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==" - }, "node_modules/ignore": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", @@ -4139,11 +4047,33 @@ } }, "node_modules/ignore-walk": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz", - "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.0.tgz", + "integrity": "sha512-bTf9UWe/UP1yxG3QUrj/KOvEhTAUWPcv+WvbFZ28LcqznXabp7Xu6o9y1JEC18+oqODuS7VhTpekV5XvFwsxJg==", "dependencies": { - "minimatch": "^3.0.4" + "minimatch": "^5.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ignore-walk/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" } }, "node_modules/immutable": { @@ -4192,7 +4122,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, "engines": { "node": ">=8" } @@ -4231,9 +4160,9 @@ } }, "node_modules/ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha512-rBtCAQAJm8A110nbwn6YdveUnuZH3WrC36IwkRXxDnq53JvXA2NVQvB7IHyKomxK1MJ4VDNw3UtFDdXQ+AvLYA==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" }, "node_modules/irregular-plurals": { "version": "3.3.0", @@ -4320,6 +4249,11 @@ "node": ">=0.10.0" } }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" + }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -4698,11 +4632,6 @@ "node": ">=4" } }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" - }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", @@ -4739,21 +4668,6 @@ "node >= 0.2.0" ] }, - "node_modules/JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "dependencies": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - }, - "bin": { - "JSONStream": "bin.js" - }, - "engines": { - "node": "*" - } - }, "node_modules/just-extend": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", @@ -4949,35 +4863,148 @@ } }, "node_modules/make-fetch-happen": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz", - "integrity": "sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag==", - "dependencies": { - "agentkeepalive": "^3.4.1", - "cacache": "^12.0.0", - "http-cache-semantics": "^3.8.1", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "node-fetch-npm": "^2.0.2", - "promise-retry": "^1.1.1", - "socks-proxy-agent": "^4.0.0", - "ssri": "^6.0.0" + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/cacache": { + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", + "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/make-fetch-happen/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", "dependencies": { - "yallist": "^3.0.2" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" } }, - "node_modules/make-fetch-happen/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + "node_modules/make-fetch-happen/node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/unique-filename": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", + "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", + "dependencies": { + "unique-slug": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/unique-slug": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", + "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } }, "node_modules/map-age-cleaner": { "version": "0.1.3", @@ -5375,7 +5402,8 @@ "node_modules/minimist": { "version": "1.2.6", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true }, "node_modules/minimist-options": { "version": "4.1.0", @@ -5401,96 +5429,116 @@ } }, "node_modules/minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", + "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", "dependencies": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/minipass/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - }, - "node_modules/minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", "dependencies": { - "minipass": "^2.9.0" + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "node_modules/minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", "dependencies": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" }, "engines": { - "node": ">=4.0.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "bin": { - "mkdirp": "bin/cmd.js" + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dependencies": { + "minipass": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">= 8" } }, - "node_modules/move-concurrently": { + "node_modules/minipass-json-stream": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", "dependencies": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" } }, - "node_modules/move-concurrently/node_modules/aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } }, - "node_modules/move-concurrently/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", "dependencies": { - "minimist": "^1.2.6" + "minipass": "^3.0.0" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">=8" } }, - "node_modules/move-concurrently/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "node_modules/minipass/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "dependencies": { - "glob": "^7.1.3" + "minipass": "^3.0.0", + "yallist": "^4.0.0" }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "bin": { - "rimraf": "bin.js" + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/ms": { @@ -5535,6 +5583,14 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/nise": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.1.tgz", @@ -5548,17 +5604,27 @@ "path-to-regexp": "^1.7.0" } }, - "node_modules/node-fetch-npm": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz", - "integrity": "sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg==", + "node_modules/node-gyp": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.0.tgz", + "integrity": "sha512-A6rJWfXFz7TQNjpldJ915WFb1LnhO4lIve3ANPbWreuEoLoKlFT3sxIepPBkLhM27crW8YmN+pjlgbasH6cH/Q==", "dependencies": { - "encoding": "^0.1.11", - "json-parse-better-errors": "^1.0.0", - "safe-buffer": "^5.1.1" + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": ">=4" + "node": "^12.22 || ^14.13 || >=16" } }, "node_modules/node-preload": { @@ -5592,7 +5658,6 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", - "dev": true, "dependencies": { "abbrev": "^1.0.0" }, @@ -5604,22 +5669,17 @@ } }, "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", + "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/normalize-path": { @@ -5632,110 +5692,140 @@ } }, "node_modules/npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", + "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", + "dependencies": { + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-install-checks": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.0.0.tgz", + "integrity": "sha512-SBU9oFglRVZnfElwAtF14NivyulDqF1VKqqwNsFW9HDcbHMAPHpRSsVFgKuwFGq/hVvWZExz62Th0kvxn/XE7Q==", "dependencies": { - "npm-normalize-package-bin": "^1.0.1" + "semver": "^7.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.0.tgz", + "integrity": "sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, "node_modules/npm-package-arg": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", - "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.0.0.tgz", + "integrity": "sha512-7dkh8mRp7s0KwVHKIVJnFCJQ2B34gOGnzgBjDGyprycmARq/82SX/lhilQ95ZuacP/G/1gsS345iAkKmxWBQ2Q==", "dependencies": { - "hosted-git-info": "^2.7.1", - "osenv": "^0.1.5", - "semver": "^5.6.0", - "validate-npm-package-name": "^3.0.0" - } - }, - "node_modules/npm-package-arg/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm-packlist": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", - "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.2.tgz", + "integrity": "sha512-d2+7RMySjVXssww23rV5NuIq1NzGvM04OlI5kwnvtYKfFTAPVs6Zxmxns2HRtJEA1oNj7D/BbFXeVAOLmW3N3Q==", "dependencies": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" + "ignore-walk": "^6.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm-pick-manifest": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz", - "integrity": "sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", + "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", "dependencies": { - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.0.0", - "semver": "^5.4.1" - } - }, - "node_modules/npm-pick-manifest/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm-registry-fetch": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.7.tgz", - "integrity": "sha512-cny9v0+Mq6Tjz+e0erFAB+RYJ/AVGzkjnISiobqP8OWj9c9FLoZZu8/SPSKJWE17F1tk4018wfjV+ZbIbqC7fQ==", + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.2.tgz", + "integrity": "sha512-TMenrMagFA9KF81E2bkS5XRyzERK4KXu70vgXt5+i8FcrFeLNgNsc6e5hekTqjDwPDkL3HGn/holWcXDMfnFgw==", "dependencies": { - "bluebird": "^3.5.1", - "figgy-pudding": "^3.4.1", - "JSONStream": "^1.3.4", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "npm-package-arg": "^6.1.0", - "safe-buffer": "^5.2.0" + "make-fetch-happen": "^11.0.0", + "minipass": "^3.1.6", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^10.0.0", + "proc-log": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dependencies": { - "yallist": "^3.0.2" + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "engines": { + "node": ">=12" } }, - "node_modules/npm-registry-fetch/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/npm-registry-fetch/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.1.tgz", + "integrity": "sha512-clv3IblugXn2CDUmqFhNzii3rjKa46u5wNeivc+QlLXkGI5FjLX3rGboo+y2kwf1pd8W0iDiC384cemeDtw9kw==", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.0.tgz", + "integrity": "sha512-NSx3k5gR4Q5Ts2poCM/19d45VwhVLBtJZ6ypYcthj2BwmDx/e7lW8Aadnyt3edd2W0ecb+b0o7FYLRYE2AGcQg==", + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } }, "node_modules/npmlog": { "version": "6.0.2", @@ -6046,31 +6136,6 @@ "node": ">= 0.8.0" } }, - "node_modules/os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dependencies": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, "node_modules/p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", @@ -6124,7 +6189,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, "dependencies": { "aggregate-error": "^3.0.0" }, @@ -6171,131 +6235,33 @@ } }, "node_modules/pacote": { - "version": "9.5.12", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.12.tgz", - "integrity": "sha512-BUIj/4kKbwWg4RtnBncXPJd15piFSVNpTzY0rysSr3VnMowTYgkGKcaHrbReepAkjTr8lH2CVWRi58Spg2CicQ==", - "dependencies": { - "bluebird": "^3.5.3", - "cacache": "^12.0.2", - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.1.0", - "glob": "^7.1.3", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "minimatch": "^3.0.4", - "minipass": "^2.3.5", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "normalize-package-data": "^2.4.0", - "npm-normalize-package-bin": "^1.0.0", - "npm-package-arg": "^6.1.0", - "npm-packlist": "^1.1.12", - "npm-pick-manifest": "^3.0.0", - "npm-registry-fetch": "^4.0.0", - "osenv": "^0.1.5", - "promise-inflight": "^1.0.1", - "promise-retry": "^1.1.1", - "protoduck": "^5.0.1", - "rimraf": "^2.6.2", - "safe-buffer": "^5.1.2", - "semver": "^5.6.0", - "ssri": "^6.0.1", - "tar": "^4.4.10", - "unique-filename": "^1.1.1", - "which": "^1.3.1" - } - }, - "node_modules/pacote/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/pacote/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/pacote/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dependencies": { - "glob": "^7.1.3" + "version": "15.0.6", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.6.tgz", + "integrity": "sha512-dQwcz/sME7QIL+cdrw/jftQfMMXxSo17i2kJ/gnhBhUvvBAsxoBu1lw9B5IzCH/Ce8CvEkG/QYZ6txzKfn0bTw==", + "dependencies": { + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", + "fs-minipass": "^2.1.0", + "minipass": "^3.1.6", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" }, "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/pacote/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/pacote/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" + "pacote": "lib/bin.js" }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/pacote/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - }, - "node_modules/parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", - "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "dependencies": { - "cyclist": "^1.0.1", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } - }, - "node_modules/parallel-transform/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/parallel-transform/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/parallel-transform/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/parent-module": { @@ -6670,6 +6636,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -6693,15 +6667,15 @@ "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" }, "node_modules/promise-retry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", - "integrity": "sha512-StEy2osPr28o17bIW776GtwO6+Q+M9zPiZkYfosciUUMYqjhU/ffwRAH0zN2+uvGyUsn8/YICIHRzLbPacpZGw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", "dependencies": { - "err-code": "^1.0.0", - "retry": "^0.10.0" + "err-code": "^2.0.2", + "retry": "^0.12.0" }, "engines": { - "node": ">=0.12" + "node": ">=10" } }, "node_modules/proto-list": { @@ -6710,48 +6684,12 @@ "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", "dev": true }, - "node_modules/protoduck": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", - "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", - "dependencies": { - "genfun": "^5.0.0" - } - }, "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", "dev": true }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dependencies": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - } - }, - "node_modules/pumpify/node_modules/pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, "node_modules/punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -6811,6 +6749,85 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-package-json": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.0.tgz", + "integrity": "sha512-b/9jxWJ8EwogJPpv99ma+QwtqB7FSl3+V6UXS7Aaay8/5VwMY50oIFooY1UKXMWpfNCM6T/PoGqa5GD1g9xf9w==", + "dependencies": { + "glob": "^8.0.1", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json-fast": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.1.tgz", + "integrity": "sha512-8+HW7Yo+cjfF+md8DqsZHgats2mxf7gGYow/+2JjxrftoHFZz9v4dzd0EubzYbkNaLxrTVcnllHwklXN2+7aTQ==", + "dependencies": { + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json-fast/node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/read-package-json/node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/read-pkg": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", @@ -7215,11 +7232,11 @@ } }, "node_modules/retry": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", - "integrity": "sha512-ZXUSQYTHdl3uS7IuCehYfMzKyIDBNoAuUblvy5oGO5UJSUTmStUUVPXbA9Qxd173Bgre53yCQczQuHgRWAdvJQ==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", "engines": { - "node": "*" + "node": ">= 4" } }, "node_modules/reusify": { @@ -7267,19 +7284,6 @@ "queue-microtask": "^1.2.2" } }, - "node_modules/run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==", - "dependencies": { - "aproba": "^1.1.1" - } - }, - "node_modules/run-queue/node_modules/aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, "node_modules/safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -7288,7 +7292,8 @@ "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "optional": true }, "node_modules/sass": { "version": "1.52.3", @@ -7489,39 +7494,29 @@ } }, "node_modules/socks": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", - "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", "dependencies": { - "ip": "1.1.5", - "smart-buffer": "^4.1.0" + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" }, "engines": { - "node": ">= 6.0.0", + "node": ">= 10.13.0", "npm": ">= 3.0.0" } }, "node_modules/socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", - "dependencies": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/socks-proxy-agent/node_modules/agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", "dependencies": { - "es6-promisify": "^5.0.0" + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" }, "engines": { - "node": ">= 4.0.0" + "node": ">= 10" } }, "node_modules/source-map": { @@ -7618,11 +7613,14 @@ "dev": true }, "node_modules/ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.0.tgz", + "integrity": "sha512-64ghGOpqW0k+jh7m5jndBGdVEoPikWwGQmBNN5ks6jyUSMymzHDTlnNHOvzp+6MmHOljr2MokUzvRksnTwG0Iw==", "dependencies": { - "figgy-pudding": "^3.5.1" + "minipass": "^3.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/stack-utils": { @@ -7646,20 +7644,6 @@ "node": ">=8" } }, - "node_modules/stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dependencies": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" - }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -8129,56 +8113,25 @@ } }, "node_modules/tar": { - "version": "4.4.19", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", - "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", - "dependencies": { - "chownr": "^1.1.4", - "fs-minipass": "^1.2.7", - "minipass": "^2.9.0", - "minizlib": "^1.3.3", - "mkdirp": "^0.5.5", - "safe-buffer": "^5.2.1", - "yallist": "^3.1.1" + "version": "6.1.12", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.12.tgz", + "integrity": "sha512-jU4TdemS31uABHd+Lt5WEYJuzn+TJTCBLljvIAHZOz6M9Os5pJ4dD+vRFLxPa/n3T0iEFzpi+0x1UfuDZYbRMw==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" }, "engines": { - "node": ">=4.5" - } - }, - "node_modules/tar/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" + "node": ">=10" } }, - "node_modules/tar/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/tar/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/temp-dir": { "version": "2.0.0", @@ -8268,15 +8221,11 @@ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" - }, "node_modules/through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, "dependencies": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" @@ -8285,12 +8234,14 @@ "node_modules/through2/node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true }, "node_modules/through2/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -8305,6 +8256,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, "dependencies": { "safe-buffer": "~5.1.0" } @@ -8402,11 +8354,6 @@ "node": ">=8" } }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" - }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -8427,19 +8374,25 @@ "integrity": "sha512-BQFnUDuAQ4Yf/cYY5LNrK9NCJFKriaRbD9uR1fTeXnBeoa97W0i41qkZfGO9pSo8I5KzjAcSY2XYtdf0oKd7KQ==" }, "node_modules/unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", "dependencies": { - "unique-slug": "^2.0.0" + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", "dependencies": { "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/unique-string": { @@ -8495,11 +8448,14 @@ } }, "node_modules/validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", + "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", "dependencies": { - "builtins": "^1.0.3" + "builtins": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/well-known-symbols": { @@ -8515,7 +8471,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "dependencies": { "isexe": "^2.0.0" }, @@ -8657,6 +8612,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, "engines": { "node": ">=0.4" } @@ -8664,7 +8620,8 @@ "node_modules/y18n": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true }, "node_modules/yallist": { "version": "2.1.2", @@ -9114,6 +9071,11 @@ } } }, + "@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" + }, "@humanwhocodes/config-array": { "version": "0.9.5", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", @@ -9296,6 +9258,108 @@ "fastq": "^1.6.0" } }, + "@npmcli/fs": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", + "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "requires": { + "semver": "^7.3.5" + } + }, + "@npmcli/git": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.0.3.tgz", + "integrity": "sha512-8cXNkDIbnXPVbhXMmQ7/bklCAjtmPaXfI9aEM4iH+xSuEHINLMHhlfESvVwdqmHJRJkR48vNJTSUvoF6GRPSFA==", + "requires": { + "@npmcli/promise-spawn": "^6.0.0", + "lru-cache": "^7.4.4", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^3.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" + }, + "which": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", + "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "@npmcli/installed-package-contents": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.1.tgz", + "integrity": "sha512-GIykAFdOVK31Q1/zAtT5MbxqQL2vyl9mvFJv+OGu01zxbhL3p0xc8gJjdNGX1mWmUT43aEKVO2L6V/2j4TOsAA==", + "requires": { + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + } + }, + "@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", + "requires": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + } + }, + "@npmcli/node-gyp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", + "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==" + }, + "@npmcli/promise-spawn": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.1.tgz", + "integrity": "sha512-+hcUpxgx0vEpDJI9Cn+lkTdKLoqKBXFCVps5H7FujEU2vLOp6KwqjLlxbnz8Wzgm8oEqW/u5FeNAXSFjLdCD0A==", + "requires": { + "which": "^3.0.0" + }, + "dependencies": { + "which": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", + "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "@npmcli/run-script": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.0.tgz", + "integrity": "sha512-ql+AbRur1TeOdl1FY+RAwGW9fcr4ZwiVKabdvm93mujGREVuVLbdkXRJDrkTXSdCjaxYydr1wlA2v67jxWG5BQ==", + "requires": { + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" + }, + "dependencies": { + "which": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", + "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, "@sinonjs/commons": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", @@ -9337,6 +9401,11 @@ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", "dev": true }, + "@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==" + }, "@types/linkify-it": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", @@ -9536,8 +9605,7 @@ "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "acorn": { "version": "8.7.1", @@ -9557,18 +9625,20 @@ "dev": true }, "agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "requires": { - "es6-promisify": "^5.0.0" + "debug": "4" } }, "agentkeepalive": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", - "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", + "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", "requires": { + "debug": "^4.1.0", + "depd": "^1.1.2", "humanize-ms": "^1.2.1" } }, @@ -9576,7 +9646,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, "requires": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -9950,60 +10019,65 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==" + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", + "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", + "requires": { + "semver": "^7.0.0" + } }, "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.2.tgz", + "integrity": "sha512-rYUs2x4OjSgCQND7nTrh21AHIBFgd7s/ctAYvU3a8u+nK+R5YaX/SFPDYz4Azz7SGL6+6L9ZZWI4Kawpb7grzQ==", + "requires": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" }, "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "requires": { - "yallist": "^3.0.2" + "balanced-match": "^1.0.0" } }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", "requires": { - "minimist": "^1.2.6" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" } }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "lru-cache": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", "requires": { - "glob": "^7.1.3" + "brace-expansion": "^2.0.1" } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, @@ -10266,9 +10340,9 @@ } }, "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" }, "chunkd": { "version": "2.0.1", @@ -10291,8 +10365,7 @@ "clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" }, "clean-yaml-object": { "version": "0.1.0", @@ -10415,46 +10488,6 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, "concordance": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.4.tgz", @@ -10501,42 +10534,6 @@ "integrity": "sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==", "dev": true }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - }, - "dependencies": { - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - } - } - }, "core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", @@ -10628,11 +10625,6 @@ "array-find-index": "^1.0.1" } }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==" - }, "date-time": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/date-time/-/date-time-3.1.0.tgz", @@ -10646,7 +10638,6 @@ "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, "requires": { "ms": "2.1.2" }, @@ -10654,8 +10645,7 @@ "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" } } }, @@ -10782,6 +10772,11 @@ } } }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==" + }, "deps-regex": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", @@ -10897,46 +10892,6 @@ } } }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, "eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -10984,18 +10939,11 @@ "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, "requires": { "iconv-lite": "^0.6.2" } }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "requires": { - "once": "^1.4.0" - } - }, "enhance-visitors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/enhance-visitors/-/enhance-visitors-1.0.0.tgz", @@ -11010,10 +10958,15 @@ "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==" + }, "err-code": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", - "integrity": "sha512-CJAN+O0/yA1CKfRn9SXOGctSpEM7DCon/r/5r2eXFMY2zCCJBasFhcM5I+1kh3Ap11FsQCX+vGHceNPvpWKhoA==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" }, "error-ex": { "version": "1.3.2", @@ -11025,22 +10978,9 @@ }, "es6-error": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" - }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", - "requires": { - "es6-promise": "^4.0.3" - } + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true }, "escalade": { "version": "3.1.1", @@ -11495,44 +11435,6 @@ "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", "dev": true }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, "foreground-child": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", @@ -11543,44 +11445,6 @@ "signal-exit": "^3.0.2" } }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, "fromentries": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", @@ -11588,51 +11452,11 @@ "dev": true }, "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "requires": { - "minipass": "^2.6.0" - } - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - } + "minipass": "^3.0.0" } }, "fs.realpath": { @@ -11673,11 +11497,6 @@ "wide-align": "^1.1.5" } }, - "genfun": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", - "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==" - }, "gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -11702,14 +11521,6 @@ "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", "dev": true }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "requires": { - "pump": "^3.0.0" - } - }, "glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -11808,9 +11619,19 @@ } }, "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "requires": { + "lru-cache": "^7.5.1" + }, + "dependencies": { + "lru-cache": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" + } + } }, "html-escaper": { "version": "2.0.2", @@ -11830,51 +11651,27 @@ } }, "http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" }, "http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", "requires": { - "agent-base": "4", - "debug": "3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" } }, "https-proxy-agent": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", - "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "requires": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "requires": { - "ms": "^2.1.1" - } - } + "agent-base": "6", + "debug": "4" } }, "humanize-ms": { @@ -11889,6 +11686,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, "requires": { "safer-buffer": ">= 2.1.2 < 3.0.0" } @@ -11899,11 +11697,6 @@ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==" - }, "ignore": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", @@ -11916,11 +11709,29 @@ "dev": true }, "ignore-walk": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz", - "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.0.tgz", + "integrity": "sha512-bTf9UWe/UP1yxG3QUrj/KOvEhTAUWPcv+WvbFZ28LcqznXabp7Xu6o9y1JEC18+oqODuS7VhTpekV5XvFwsxJg==", "requires": { - "minimatch": "^3.0.4" + "minimatch": "^5.0.1" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "requires": { + "brace-expansion": "^2.0.1" + } + } } }, "immutable": { @@ -11953,8 +11764,7 @@ "indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" }, "infer-owner": { "version": "1.0.4", @@ -11990,9 +11800,9 @@ } }, "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha512-rBtCAQAJm8A110nbwn6YdveUnuZH3WrC36IwkRXxDnq53JvXA2NVQvB7IHyKomxK1MJ4VDNw3UtFDdXQ+AvLYA==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" }, "irregular-plurals": { "version": "3.3.0", @@ -12052,6 +11862,11 @@ "is-extglob": "^2.1.1" } }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" + }, "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -12337,11 +12152,6 @@ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" - }, "json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", @@ -12369,15 +12179,6 @@ "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==" }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, "just-extend": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", @@ -12540,35 +12341,118 @@ } }, "make-fetch-happen": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz", - "integrity": "sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag==", - "requires": { - "agentkeepalive": "^3.4.1", - "cacache": "^12.0.0", - "http-cache-semantics": "^3.8.1", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "node-fetch-npm": "^2.0.2", - "promise-retry": "^1.1.1", - "socks-proxy-agent": "^4.0.0", - "ssri": "^6.0.0" - }, - "dependencies": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "requires": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "dependencies": { + "@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "requires": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + } + }, + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "cacache": { + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", + "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", + "requires": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" + } + }, + "glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + } + }, "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", "requires": { - "yallist": "^3.0.2" + "brace-expansion": "^2.0.1" } }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + "ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "requires": { + "minipass": "^3.1.1" + } + }, + "unique-filename": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", + "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", + "requires": { + "unique-slug": "^3.0.0" + } + }, + "unique-slug": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", + "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", + "requires": { + "imurmurhash": "^0.1.4" + } } } }, @@ -12840,7 +12724,8 @@ "minimist": { "version": "1.2.6", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true }, "minimist-options": { "version": "4.1.0", @@ -12862,44 +12747,86 @@ } }, "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", + "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" + "yallist": "^4.0.0" }, "dependencies": { "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, - "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", "requires": { - "minipass": "^2.9.0" + "minipass": "^3.0.0" } }, - "mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "requires": { + "encoding": "^0.1.13", + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "requires": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "dependencies": { + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "mkdirp": { @@ -12907,42 +12834,6 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==", - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" - }, - "dependencies": { - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - } - } - }, "ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -12973,6 +12864,11 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + }, "nise": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.1.tgz", @@ -12986,14 +12882,21 @@ "path-to-regexp": "^1.7.0" } }, - "node-fetch-npm": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz", - "integrity": "sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg==", + "node-gyp": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.0.tgz", + "integrity": "sha512-A6rJWfXFz7TQNjpldJ915WFb1LnhO4lIve3ANPbWreuEoLoKlFT3sxIepPBkLhM27crW8YmN+pjlgbasH6cH/Q==", "requires": { - "encoding": "^0.1.11", - "json-parse-better-errors": "^1.0.0", - "safe-buffer": "^5.1.1" + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" } }, "node-preload": { @@ -13021,27 +12924,19 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", - "dev": true, "requires": { "abbrev": "^1.0.0" } }, "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", + "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" } }, "normalize-path": { @@ -13051,94 +12946,108 @@ "dev": true }, "npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", + "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", + "requires": { + "npm-normalize-package-bin": "^3.0.0" + } + }, + "npm-install-checks": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.0.0.tgz", + "integrity": "sha512-SBU9oFglRVZnfElwAtF14NivyulDqF1VKqqwNsFW9HDcbHMAPHpRSsVFgKuwFGq/hVvWZExz62Th0kvxn/XE7Q==", "requires": { - "npm-normalize-package-bin": "^1.0.1" + "semver": "^7.1.1" } }, "npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.0.tgz", + "integrity": "sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q==" }, "npm-package-arg": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", - "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.0.0.tgz", + "integrity": "sha512-7dkh8mRp7s0KwVHKIVJnFCJQ2B34gOGnzgBjDGyprycmARq/82SX/lhilQ95ZuacP/G/1gsS345iAkKmxWBQ2Q==", "requires": { - "hosted-git-info": "^2.7.1", - "osenv": "^0.1.5", - "semver": "^5.6.0", - "validate-npm-package-name": "^3.0.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" } }, "npm-packlist": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", - "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.2.tgz", + "integrity": "sha512-d2+7RMySjVXssww23rV5NuIq1NzGvM04OlI5kwnvtYKfFTAPVs6Zxmxns2HRtJEA1oNj7D/BbFXeVAOLmW3N3Q==", "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" + "ignore-walk": "^6.0.0" } }, "npm-pick-manifest": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz", - "integrity": "sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", + "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", "requires": { - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.0.0", - "semver": "^5.4.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", + "semver": "^7.3.5" } }, "npm-registry-fetch": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.7.tgz", - "integrity": "sha512-cny9v0+Mq6Tjz+e0erFAB+RYJ/AVGzkjnISiobqP8OWj9c9FLoZZu8/SPSKJWE17F1tk4018wfjV+ZbIbqC7fQ==", + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.2.tgz", + "integrity": "sha512-TMenrMagFA9KF81E2bkS5XRyzERK4KXu70vgXt5+i8FcrFeLNgNsc6e5hekTqjDwPDkL3HGn/holWcXDMfnFgw==", "requires": { - "bluebird": "^3.5.1", - "figgy-pudding": "^3.4.1", - "JSONStream": "^1.3.4", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "npm-package-arg": "^6.1.0", - "safe-buffer": "^5.2.0" + "make-fetch-happen": "^11.0.0", + "minipass": "^3.1.6", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^10.0.0", + "proc-log": "^3.0.0" }, "dependencies": { "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" + }, + "make-fetch-happen": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.1.tgz", + "integrity": "sha512-clv3IblugXn2CDUmqFhNzii3rjKa46u5wNeivc+QlLXkGI5FjLX3rGboo+y2kwf1pd8W0iDiC384cemeDtw9kw==", + "requires": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + } + }, + "minipass-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.0.tgz", + "integrity": "sha512-NSx3k5gR4Q5Ts2poCM/19d45VwhVLBtJZ6ypYcthj2BwmDx/e7lW8Aadnyt3edd2W0ecb+b0o7FYLRYE2AGcQg==", "requires": { - "yallist": "^3.0.2" + "encoding": "^0.1.13", + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, @@ -13381,25 +13290,6 @@ "word-wrap": "^1.2.3" } }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==" - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==" - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, "p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", @@ -13435,7 +13325,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, "requires": { "aggregate-error": "^3.0.0" } @@ -13464,123 +13353,27 @@ } }, "pacote": { - "version": "9.5.12", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.12.tgz", - "integrity": "sha512-BUIj/4kKbwWg4RtnBncXPJd15piFSVNpTzY0rysSr3VnMowTYgkGKcaHrbReepAkjTr8lH2CVWRi58Spg2CicQ==", - "requires": { - "bluebird": "^3.5.3", - "cacache": "^12.0.2", - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.1.0", - "glob": "^7.1.3", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "minimatch": "^3.0.4", - "minipass": "^2.3.5", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "normalize-package-data": "^2.4.0", - "npm-normalize-package-bin": "^1.0.0", - "npm-package-arg": "^6.1.0", - "npm-packlist": "^1.1.12", - "npm-pick-manifest": "^3.0.0", - "npm-registry-fetch": "^4.0.0", - "osenv": "^0.1.5", - "promise-inflight": "^1.0.1", - "promise-retry": "^1.1.1", - "protoduck": "^5.0.1", - "rimraf": "^2.6.2", - "safe-buffer": "^5.1.2", - "semver": "^5.6.0", - "ssri": "^6.0.1", - "tar": "^4.4.10", - "unique-filename": "^1.1.1", - "which": "^1.3.1" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "requires": { - "yallist": "^3.0.2" - } - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "requires": { - "isexe": "^2.0.0" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - } - } - }, - "parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", - "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "requires": { - "cyclist": "^1.0.1", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - } + "version": "15.0.6", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.6.tgz", + "integrity": "sha512-dQwcz/sME7QIL+cdrw/jftQfMMXxSo17i2kJ/gnhBhUvvBAsxoBu1lw9B5IzCH/Ce8CvEkG/QYZ6txzKfn0bTw==", + "requires": { + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", + "fs-minipass": "^2.1.0", + "minipass": "^3.1.6", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" } }, "parent-module": { @@ -13834,6 +13627,11 @@ "parse-ms": "^2.1.0" } }, + "proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==" + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -13854,12 +13652,12 @@ "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" }, "promise-retry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", - "integrity": "sha512-StEy2osPr28o17bIW776GtwO6+Q+M9zPiZkYfosciUUMYqjhU/ffwRAH0zN2+uvGyUsn8/YICIHRzLbPacpZGw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", "requires": { - "err-code": "^1.0.0", - "retry": "^0.10.0" + "err-code": "^2.0.2", + "retry": "^0.12.0" } }, "proto-list": { @@ -13868,50 +13666,12 @@ "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", "dev": true }, - "protoduck": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", - "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", - "requires": { - "genfun": "^5.0.0" - } - }, "pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", "dev": true }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -13942,6 +13702,68 @@ "resolved": "https://registry.npmjs.org/random-int/-/random-int-3.0.0.tgz", "integrity": "sha512-QvewnOwigesW2WFyTHiQzR6XUUcSQO/BqmfgRz5N5GpGrKQnTf7ebMz8UtuwaET8IfO1n0wLx8/fHsI8E0Jpow==" }, + "read-package-json": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.0.tgz", + "integrity": "sha512-b/9jxWJ8EwogJPpv99ma+QwtqB7FSl3+V6UXS7Aaay8/5VwMY50oIFooY1UKXMWpfNCM6T/PoGqa5GD1g9xf9w==", + "requires": { + "glob": "^8.0.1", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + } + }, + "json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==" + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "read-package-json-fast": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.1.tgz", + "integrity": "sha512-8+HW7Yo+cjfF+md8DqsZHgats2mxf7gGYow/+2JjxrftoHFZz9v4dzd0EubzYbkNaLxrTVcnllHwklXN2+7aTQ==", + "requires": { + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "dependencies": { + "json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==" + } + } + }, "read-pkg": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", @@ -14229,9 +14051,9 @@ "dev": true }, "retry": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", - "integrity": "sha512-ZXUSQYTHdl3uS7IuCehYfMzKyIDBNoAuUblvy5oGO5UJSUTmStUUVPXbA9Qxd173Bgre53yCQczQuHgRWAdvJQ==" + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==" }, "reusify": { "version": "1.0.4", @@ -14254,21 +14076,6 @@ "queue-microtask": "^1.2.2" } }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==", - "requires": { - "aproba": "^1.1.1" - }, - "dependencies": { - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - } - } - }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -14277,7 +14084,8 @@ "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "optional": true }, "sass": { "version": "1.52.3", @@ -14425,31 +14233,22 @@ "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==" }, "socks": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", - "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", "requires": { - "ip": "1.1.5", - "smart-buffer": "^4.1.0" + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" } }, "socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", "requires": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" - }, - "dependencies": { - "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", - "requires": { - "es6-promisify": "^5.0.0" - } - } + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" } }, "source-map": { @@ -14536,11 +14335,11 @@ "dev": true }, "ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.0.tgz", + "integrity": "sha512-64ghGOpqW0k+jh7m5jndBGdVEoPikWwGQmBNN5ks6jyUSMymzHDTlnNHOvzp+6MmHOljr2MokUzvRksnTwG0Iw==", "requires": { - "figgy-pudding": "^3.5.1" + "minipass": "^3.1.1" } }, "stack-utils": { @@ -14560,20 +14359,6 @@ } } }, - "stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" - }, "string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -14932,36 +14717,22 @@ } }, "tar": { - "version": "4.4.19", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", - "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", - "requires": { - "chownr": "^1.1.4", - "fs-minipass": "^1.2.7", - "minipass": "^2.9.0", - "minizlib": "^1.3.3", - "mkdirp": "^0.5.5", - "safe-buffer": "^5.2.1", - "yallist": "^3.1.1" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, + "version": "6.1.12", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.12.tgz", + "integrity": "sha512-jU4TdemS31uABHd+Lt5WEYJuzn+TJTCBLljvIAHZOz6M9Os5pJ4dD+vRFLxPa/n3T0iEFzpi+0x1UfuDZYbRMw==", + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "dependencies": { "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, @@ -15025,15 +14796,11 @@ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" - }, "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" @@ -15042,12 +14809,14 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -15062,6 +14831,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -15130,11 +14900,6 @@ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" - }, "typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -15155,17 +14920,17 @@ "integrity": "sha512-BQFnUDuAQ4Yf/cYY5LNrK9NCJFKriaRbD9uR1fTeXnBeoa97W0i41qkZfGO9pSo8I5KzjAcSY2XYtdf0oKd7KQ==" }, "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", "requires": { - "unique-slug": "^2.0.0" + "unique-slug": "^4.0.0" } }, "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", "requires": { "imurmurhash": "^0.1.4" } @@ -15214,11 +14979,11 @@ } }, "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", + "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", "requires": { - "builtins": "^1.0.3" + "builtins": "^5.0.0" } }, "well-known-symbols": { @@ -15231,7 +14996,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "requires": { "isexe": "^2.0.0" } @@ -15343,12 +15107,14 @@ "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true }, "y18n": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true }, "yallist": { "version": "2.1.2", diff --git a/packages/project/package.json b/packages/project/package.json index 4946ca9e73c..cecb8bd2162 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,7 @@ "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", "mkdirp": "^1.0.4", - "pacote": "^9.5.12", + "pacote": "^15.0.6", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", From b743f5d56a8ffe53a53f7260e68cde2cf82f05cc Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 8 Nov 2022 09:20:46 +0000 Subject: [PATCH 0703/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 5913 ++++++++++++++++------------ packages/project/package.json | 20 +- 2 files changed, 3393 insertions(+), 2540 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c5fd894b009..7c275de4338 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -16,7 +16,7 @@ "ajv-errors": "^1.0.1", "chalk": "^4.1.2", "escape-string-regexp": "^5.0.0", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.10", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", @@ -25,9 +25,9 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", - "resolve": "^1.21.0", + "resolve": "^1.22.1", "rimraf": "^3.0.2", - "semver": "^7.3.5", + "semver": "^7.3.8", "xml2js": "^0.4.23" }, "devDependencies": { @@ -37,20 +37,20 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^1.2.0", - "eslint": "^8.7.0", + "eslint": "^8.27.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-ava": "^13.0.2", - "eslint-plugin-jsdoc": "^37.6.3", - "esmock": "^2.0.0", + "eslint-plugin-ava": "^13.2.0", + "eslint-plugin-jsdoc": "^37.9.7", + "esmock": "^2.0.7", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.1.3", + "istanbul-reports": "^3.1.5", "js-beautify": "^1.14.7", - "jsdoc": "^3.6.7", + "jsdoc": "^3.6.11", "nyc": "^15.1.0", "open-cli": "^7.1.0", - "sinon": "^14.0.0", + "sinon": "^14.0.2", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" }, @@ -72,55 +72,42 @@ "node": ">=6.0.0" } }, - "node_modules/@ampproject/remapping/node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dependencies": { - "@babel/highlight": "^7.16.7" + "@babel/highlight": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.5.tgz", - "integrity": "sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", + "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.5.tgz", - "integrity": "sha512-MGY8vg3DxMnctw0LdvSEojOsumc70g0t18gNyUdAZqB1Rpd1Bqo/svHGvt+UJ6JcGX+DIekGFDxxIWofBxLCnQ==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", + "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.18.2", - "@babel/helper-compilation-targets": "^7.18.2", - "@babel/helper-module-transforms": "^7.18.0", - "@babel/helpers": "^7.18.2", - "@babel/parser": "^7.18.5", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.5", - "@babel/types": "^7.18.4", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.2", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-module-transforms": "^7.20.2", + "@babel/helpers": "^7.20.1", + "@babel/parser": "^7.20.2", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -135,18 +122,6 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/@babel/parser": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", - "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/core/node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -157,28 +132,42 @@ } }, "node_modules/@babel/generator": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", - "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.3.tgz", + "integrity": "sha512-Wl5ilw2UD1+ZYprHVprxHZJCFeBWlzZYOovE4SDYLZnqCOD11j+0QzNeEWKLLTWM7nixrZEh7vNIyb76MyJg3A==", "dev": true, "dependencies": { - "@babel/types": "^7.18.2", - "@jridgewell/gen-mapping": "^0.3.0", + "@babel/types": "^7.20.2", + "@jridgewell/gen-mapping": "^0.3.2", "jsesc": "^2.5.1" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", - "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", + "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.17.10", - "@babel/helper-validator-option": "^7.16.7", - "browserslist": "^4.20.2", + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", "semver": "^6.3.0" }, "engines": { @@ -198,140 +187,149 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", - "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", - "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", "dev": true, "dependencies": { - "@babel/template": "^7.16.7", - "@babel/types": "^7.17.0" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", "dev": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", - "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "dev": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz", - "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", + "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.17.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/helper-validator-identifier": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.0", - "@babel/types": "^7.18.0" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz", - "integrity": "sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", - "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", "dev": true, "dependencies": { - "@babel/types": "^7.18.2" + "@babel/types": "^7.20.2" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", "dev": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", - "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", - "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", + "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", "dev": true, "dependencies": { - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.2", - "@babel/types": "^7.18.2" + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.17.12", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz", - "integrity": "sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", + "@babel/helper-validator-identifier": "^7.18.6", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -391,9 +389,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.16.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", - "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", + "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -402,45 +400,33 @@ } }, "node_modules/@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/template/node_modules/@babel/parser": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", - "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/traverse": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.5.tgz", - "integrity": "sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.18.2", - "@babel/helper-environment-visitor": "^7.18.2", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.18.5", - "@babel/types": "^7.18.4", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", + "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.1", + "@babel/types": "^7.20.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -448,25 +434,14 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/traverse/node_modules/@babel/parser": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", - "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/types": { - "version": "7.18.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz", - "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", + "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" }, "engines": { @@ -488,14 +463,14 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz", - "integrity": "sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", + "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.3.2", + "espree": "^9.4.0", "globals": "^13.15.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -505,12 +480,25 @@ }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.15.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", - "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -522,6 +510,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/@eslint/eslintrc/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -540,19 +540,54 @@ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" }, "node_modules/@humanwhocodes/config-array": { - "version": "0.9.5", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", - "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", + "version": "0.11.7", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.7.tgz", + "integrity": "sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", - "minimatch": "^3.0.4" + "minimatch": "^3.0.5" }, "engines": { "node": ">=10.10.0" } }, + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, "node_modules/@humanwhocodes/object-schema": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", @@ -600,28 +635,6 @@ "sprintf-js": "~1.0.2" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -635,48 +648,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", @@ -687,30 +658,30 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz", - "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, "dependencies": { "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/sourcemap-codec": "^1.4.10" }, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz", - "integrity": "sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz", - "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", "engines": { "node": ">=6.0.0" } @@ -724,18 +695,31 @@ "@jridgewell/trace-mapping": "^0.3.9" } }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@jridgewell/sourcemap-codec": { "version": "1.4.14", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", - "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" } }, "node_modules/@nodelib/fs.scandir": { @@ -913,9 +897,9 @@ } }, "node_modules/@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", + "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", "dev": true, "dependencies": { "type-detect": "4.0.8" @@ -930,21 +914,30 @@ "@sinonjs/commons": "^1.7.0" } }, + "node_modules/@sinonjs/fake-timers/node_modules/@sinonjs/commons": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", + "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, "node_modules/@sinonjs/samsam": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-6.1.1.tgz", - "integrity": "sha512-cZ7rKJTLiE7u7Wi/v9Hc2fs3Ucc3jrWeMgPHbbTCeVAB2S0wOBbYlkJVeNSL04i7fdhT8wIbDq1zhC/PXTD2SA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-7.0.1.tgz", + "integrity": "sha512-zsAk2Jkiq89mhZovB2LLOdTCxJF4hqqTToGP0ASWlhp4I1hqOjcfmZGafXntCN7MDC6yySH0mFHrYtHceOeLmw==", "dev": true, "dependencies": { - "@sinonjs/commons": "^1.6.0", + "@sinonjs/commons": "^2.0.0", "lodash.get": "^4.4.2", "type-detect": "^4.0.8" } }, "node_modules/@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", "dev": true }, "node_modules/@tokenizer/token": { @@ -1053,54 +1046,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/fs/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@ui5/fs/node_modules/globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ui5/fs/node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@ui5/fs/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@ui5/logger": { "version": "3.0.1-beta.0", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-beta.0.tgz", @@ -1114,39 +1059,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz", - "integrity": "sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.41.tgz", + "integrity": "sha512-oA4mH6SA78DT+96/nsi4p9DX97PHcNROxs51lYk7gb9Z4BPKQ3Mh+BLn6CQZBw857Iuhu28BfMSRHAlPvD4vlw==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.37", + "@vue/shared": "3.2.41", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz", - "integrity": "sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.41.tgz", + "integrity": "sha512-xe5TbbIsonjENxJsYRbDJvthzqxLNk+tb3d/c47zgREDa/PCp6/Y4gC/skM4H6PIuX5DAxm7fFJdbjjUH2QTMw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.2.37", - "@vue/shared": "3.2.37" + "@vue/compiler-core": "3.2.41", + "@vue/shared": "3.2.41" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz", - "integrity": "sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.41.tgz", + "integrity": "sha512-+1P2m5kxOeaxVmJNXnBskAn3BenbTmbxBxWOtBq3mQTCokIreuMULFantBUclP0+KnzNCMOvcnKinqQZmiOF8w==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.37", - "@vue/compiler-dom": "3.2.37", - "@vue/compiler-ssr": "3.2.37", - "@vue/reactivity-transform": "3.2.37", - "@vue/shared": "3.2.37", + "@vue/compiler-core": "3.2.41", + "@vue/compiler-dom": "3.2.41", + "@vue/compiler-ssr": "3.2.41", + "@vue/reactivity-transform": "3.2.41", + "@vue/shared": "3.2.41", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -1154,32 +1099,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz", - "integrity": "sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.41.tgz", + "integrity": "sha512-Y5wPiNIiaMz/sps8+DmhaKfDm1xgj6GrH99z4gq2LQenfVQcYXmHIOBcs5qPwl7jaW3SUQWjkAPKMfQemEQZwQ==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.2.37", - "@vue/shared": "3.2.37" + "@vue/compiler-dom": "3.2.41", + "@vue/shared": "3.2.41" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz", - "integrity": "sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.41.tgz", + "integrity": "sha512-mK5+BNMsL4hHi+IR3Ft/ho6Za+L3FA5j8WvreJ7XzHrqkPq8jtF/SMo7tuc9gHjLDwKZX1nP1JQOKo9IEAn54A==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.37", - "@vue/shared": "3.2.37", + "@vue/compiler-core": "3.2.41", + "@vue/shared": "3.2.41", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "node_modules/@vue/shared": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.37.tgz", - "integrity": "sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.41.tgz", + "integrity": "sha512-W9mfWLHmJhkfAmV+7gDjcHeAWALQtgGT3JErxULl0oz6R6+3ug91I7IErs93eCFhPCZPHBs4QJS7YWEV7A3sxw==", "dev": true }, "node_modules/abbrev": { @@ -1188,9 +1133,9 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "node_modules/acorn": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", - "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", "bin": { "acorn": "bin/acorn" }, @@ -1240,15 +1185,19 @@ } }, "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "dev": true, "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/ajv": { @@ -1275,17 +1224,21 @@ } }, "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, "node_modules/ansi-styles": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.1.1.tgz", - "integrity": "sha512-qDOv24WjnYuL+wbwHdlsYZFy+cgPtrYw0Tn7GLORicQp9BkQLzrgI3Pm4VyR9ERZ41YTn7KlMPuL1n05WdZvmg==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "dev": true, "engines": { "node": ">=12" @@ -1384,12 +1337,15 @@ } }, "node_modules/arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", + "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", "dev": true, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/atob": { @@ -1470,62 +1426,10 @@ } } }, - "node_modules/ava/node_modules/aggregate-error": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", - "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", - "dev": true, - "dependencies": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ava/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/ava/node_modules/arrify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", - "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ava/node_modules/callsites": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.0.0.tgz", - "integrity": "sha512-y3jRROutgpKdz5vzEhWM34TidDU8vkJppF8dszITeb1PQmSqV3DTxyV8G/lyO/DNvtE1YTedehmw9MPZsCBHxQ==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/ava/node_modules/chalk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", - "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz", + "integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==", "dev": true, "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" @@ -1534,143 +1438,6 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/ava/node_modules/clean-stack": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", - "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ava/node_modules/globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dev": true, - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ava/node_modules/globby/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ava/node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ava/node_modules/p-map": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", - "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", - "dev": true, - "dependencies": { - "aggregate-error": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ava/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/ava/node_modules/write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/ava/node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ava/node_modules/yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/ava/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, "node_modules/babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", @@ -1718,12 +1485,11 @@ "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "balanced-match": "^1.0.0" } }, "node_modules/braces": { @@ -1738,9 +1504,9 @@ } }, "node_modules/browserslist": { - "version": "4.20.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.4.tgz", - "integrity": "sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw==", + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", "dev": true, "funding": [ { @@ -1753,11 +1519,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001349", - "electron-to-chromium": "^1.4.147", - "escalade": "^3.1.1", - "node-releases": "^2.0.5", - "picocolors": "^1.0.0" + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" }, "bin": { "browserslist": "cli.js" @@ -1810,30 +1575,32 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/cacache/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "node_modules/cacache/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "dependencies": { - "balanced-match": "^1.0.0" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/cacache/node_modules/glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, + "node_modules/cacache/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=6" + } + }, + "node_modules/cacache/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" } }, "node_modules/cacache/node_modules/lru-cache": { @@ -1844,15 +1611,18 @@ "node": ">=12" } }, - "node_modules/cacache/node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "node_modules/cacache/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "dependencies": { - "brace-expansion": "^2.0.1" + "aggregate-error": "^3.0.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/caching-transform": { @@ -1870,25 +1640,37 @@ "node": ">=8" } }, + "node_modules/caching-transform/node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.0.0.tgz", + "integrity": "sha512-y3jRROutgpKdz5vzEhWM34TidDU8vkJppF8dszITeb1PQmSqV3DTxyV8G/lyO/DNvtE1YTedehmw9MPZsCBHxQ==", "dev": true, "engines": { - "node": ">=6" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, "node_modules/camelcase-keys": { @@ -1909,6 +1691,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/camelcase-keys/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/camelcase-keys/node_modules/type-fest": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", @@ -1922,9 +1716,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001352", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001352.tgz", - "integrity": "sha512-GUgH8w6YergqPQDGWhJGt8GDRnY0L/iJVQcU3eJ46GYf52R8tk0Wxp0PymuFVZboJYXGiCqwozAYZNRjVj6IcA==", + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", "dev": true, "funding": [ { @@ -2106,15 +1900,6 @@ "node": ">=4" } }, - "node_modules/chokidar-cli/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/chokidar-cli/node_modules/cliui": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", @@ -2132,6 +1917,18 @@ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, + "node_modules/chokidar-cli/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/chokidar-cli/node_modules/is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", @@ -2141,6 +1938,40 @@ "node": ">=4" } }, + "node_modules/chokidar-cli/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/chokidar-cli/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/chokidar-cli/node_modules/string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -2181,6 +2012,12 @@ "node": ">=6" } }, + "node_modules/chokidar-cli/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, "node_modules/chokidar-cli/node_modules/yargs": { "version": "13.3.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", @@ -2224,9 +2061,9 @@ "dev": true }, "node_modules/ci-info": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.4.0.tgz", - "integrity": "sha512-t5QdPT5jq3o262DOQ8zA6E1tlH2upmUc4Hlvrbx1pGYJuiiHl7O7rvVNI+l8HTVhd/q3Qc9vqimkNk5yiXsAug==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.5.0.tgz", + "integrity": "sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==", "dev": true }, "node_modules/ci-parallel-vars": { @@ -2236,11 +2073,18 @@ "dev": true }, "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "5.0.0" + }, "engines": { - "node": ">=6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/clean-yaml-object": { @@ -2268,65 +2112,68 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cli-truncate/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, "engines": { "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/cli-truncate/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, - "node_modules/cli-truncate/node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "node_modules/cliui/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/cli-truncate/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "node_modules/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "dependencies": { - "ansi-regex": "^6.0.1" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "node": ">=8" } }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "node_modules/cliui/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, "node_modules/clone": { @@ -2436,13 +2283,10 @@ "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" }, "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true }, "node_modules/convert-to-spaces": { "version": "2.0.1", @@ -2663,40 +2507,109 @@ "dev": true }, "node_modules/default-require-extensions": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz", - "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz", + "integrity": "sha512-eXTJmRbm2TIt9MgWTsOH1wEuhew6XGZcMeGKCtLedIg/NCsg1iBePXkceTdK4Fii7pzmN9tGsZhKzZ4h7O/fxw==", "dev": true, "dependencies": { "strip-bom": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "dev": true, + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/del/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/del/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "node_modules/del/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/del": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", - "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "node_modules/del/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "dev": true, "dependencies": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", - "rimraf": "^3.0.2", - "slash": "^3.0.0" + "aggregate-error": "^3.0.0" }, "engines": { "node": ">=10" @@ -2747,6 +2660,27 @@ "node": ">=10" } }, + "node_modules/depcheck/node_modules/@babel/parser": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", + "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/depcheck/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/depcheck/node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -2756,6 +2690,54 @@ "sprintf-js": "~1.0.2" } }, + "node_modules/depcheck/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/depcheck/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/depcheck/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/depcheck/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/depcheck/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/depcheck/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -2769,6 +2751,62 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/depcheck/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/depcheck/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/depcheck/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/depcheck/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", @@ -2908,6 +2946,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/duplexer2/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "node_modules/duplexer2/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -2948,9 +2992,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.154", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.154.tgz", - "integrity": "sha512-GbV9djOkrnj6xmW+YYVVEI3VCQnJ0pnSTu7TW2JyjKd5cakoiSaG5R4RbEtfaD92GsY10DzbU3GYRe+IOA9kqA==", + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", "dev": true }, "node_modules/emittery": { @@ -2966,9 +3010,10 @@ } }, "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true }, "node_modules/encoding": { "version": "0.1.13", @@ -3067,13 +3112,15 @@ } }, "node_modules/eslint": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.17.0.tgz", - "integrity": "sha512-gq0m0BTJfci60Fz4nczYxNAlED+sMcihltndR8t9t1evnU/azx53x3t2UHXC/uRjcbvRw/XctpaNygSTcQD+Iw==", + "version": "8.27.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.27.0.tgz", + "integrity": "sha512-0y1bfG2ho7mty+SiILVf9PfuRA49ek4Nc60Wmmu62QlobNR+CeXa4xXIJgcuwSQgZiWaPH+5BDsctpIW0PR/wQ==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.3.0", - "@humanwhocodes/config-array": "^0.9.2", + "@eslint/eslintrc": "^1.3.3", + "@humanwhocodes/config-array": "^0.11.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -3083,18 +3130,21 @@ "eslint-scope": "^7.1.1", "eslint-utils": "^3.0.0", "eslint-visitor-keys": "^3.3.0", - "espree": "^9.3.2", + "espree": "^9.4.0", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", "globals": "^13.15.0", + "grapheme-splitter": "^1.0.4", "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", @@ -3105,8 +3155,7 @@ "regexpp": "^3.2.0", "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" + "text-table": "^0.2.0" }, "bin": { "eslint": "bin/eslint.js" @@ -3130,117 +3179,26 @@ "eslint": ">=5.16.0" } }, - "node_modules/eslint-plugin-ava": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-13.2.0.tgz", - "integrity": "sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==", - "dev": true, - "dependencies": { - "enhance-visitors": "^1.0.0", - "eslint-utils": "^3.0.0", - "espree": "^9.0.0", - "espurify": "^2.1.1", - "import-modules": "^2.1.0", - "micro-spelling-correcter": "^1.1.1", - "pkg-dir": "^5.0.0", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=12.22 <13 || >=14.17 <15 || >=16.4" - }, - "peerDependencies": { - "eslint": ">=7.22.0" - } - }, - "node_modules/eslint-plugin-ava/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-plugin-ava/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-plugin-ava/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-plugin-ava/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-plugin-ava/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint-plugin-ava/node_modules/pkg-dir": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", - "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", - "dev": true, - "dependencies": { - "find-up": "^5.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-plugin-ava/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/eslint-plugin-ava": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-13.2.0.tgz", + "integrity": "sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==", "dev": true, + "dependencies": { + "enhance-visitors": "^1.0.0", + "eslint-utils": "^3.0.0", + "espree": "^9.0.0", + "espurify": "^2.1.1", + "import-modules": "^2.1.0", + "micro-spelling-correcter": "^1.1.1", + "pkg-dir": "^5.0.0", + "resolve-from": "^5.0.0" + }, "engines": { - "node": ">=8" + "node": ">=12.22 <13 || >=14.17 <15 || >=16.4" + }, + "peerDependencies": { + "eslint": ">=7.22.0" } }, "node_modules/eslint-plugin-jsdoc": { @@ -3334,6 +3292,25 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, + "node_modules/eslint/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/eslint/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -3346,6 +3323,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/eslint/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/eslint/node_modules/glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -3359,9 +3352,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.15.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", - "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -3373,6 +3366,75 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/eslint/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/eslint/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -3386,28 +3448,28 @@ } }, "node_modules/esmock": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.0.tgz", - "integrity": "sha512-dMnO7V+Y2M7pqoAzn42rXfyc3tZvzhK8T9rxAPxYmmxT1imsOv4A02eaHoqXOn2TBd1JAv794mJLWIV64zibQQ==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.7.tgz", + "integrity": "sha512-/DzaNL58ZKT6CRuCu2WatPMGe49BOjUwiKADfhGCk/SBzrmWWjzG/pPFq+3hvScG8nvD2YFr0Hz4PIZkfVqy3Q==", "dev": true, - "dependencies": { - "resolvewithplus": "^1.0.0" - }, "engines": { "node": ">=14.16.0" } }, "node_modules/espree": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz", - "integrity": "sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==", + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", "dependencies": { - "acorn": "^8.7.1", + "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.3.0" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/esprima": { @@ -3510,9 +3572,9 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -3621,15 +3683,29 @@ "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, + "node_modules/find-cache-dir/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, "dependencies": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/flat-cache": { @@ -3646,9 +3722,9 @@ } }, "node_modules/flatted": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", - "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", "dev": true }, "node_modules/foreground-child": { @@ -3719,12 +3795,6 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", - "dev": true - }, "node_modules/gauge": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", @@ -3743,6 +3813,51 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, + "node_modules/gauge/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/gauge/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/gauge/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/gauge/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/gauge/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -3783,19 +3898,18 @@ } }, "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "minimatch": "^5.0.1", + "once": "^1.3.0" }, "engines": { - "node": "*" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -3822,20 +3936,29 @@ } }, "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", + "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", "dependencies": { - "array-union": "^2.1.0", "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", + "fast-glob": "^3.2.11", "ignore": "^5.2.0", "merge2": "^1.4.1", - "slash": "^3.0.0" + "slash": "^4.0.0" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "engines": { + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -3846,6 +3969,12 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, "node_modules/hard-rejection": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", @@ -3917,24 +4046,32 @@ } }, "node_modules/hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dependencies": { - "lru-cache": "^7.5.1" + "lru-cache": "^6.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=10" } }, + "node_modules/hosted-git-info/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -4057,25 +4194,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/ignore-walk/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/ignore-walk/node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/immutable": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", @@ -4098,6 +4216,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/import-modules": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-modules/-/import-modules-2.1.0.tgz", @@ -4119,11 +4246,15 @@ } }, "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/infer-owner": { @@ -4191,9 +4322,9 @@ } }, "node_modules/is-core-module": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", - "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", "dependencies": { "has": "^1.0.3" }, @@ -4231,11 +4362,15 @@ } }, "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-glob": { @@ -4429,6 +4564,37 @@ "node": ">=8" } }, + "node_modules/istanbul-lib-processinfo/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-processinfo/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/istanbul-lib-processinfo/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/istanbul-lib-processinfo/node_modules/p-map": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", @@ -4470,9 +4636,9 @@ } }, "node_modules/istanbul-reports": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", - "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", "dev": true, "dependencies": { "html-escaper": "^2.0.0", @@ -4502,45 +4668,11 @@ "node": ">=10" } }, - "node_modules/js-beautify/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/js-beautify/node_modules/glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/js-beautify/node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } + "node_modules/js-sdsl": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", + "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==", + "dev": true }, "node_modules/js-string-escape": { "version": "1.0.1", @@ -4576,9 +4708,9 @@ } }, "node_modules/jsdoc": { - "version": "3.6.10", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.10.tgz", - "integrity": "sha512-IdQ8ppSo5LKZ9o3M+LKIIK8i00DIe5msDvG3G81Km+1dhy0XrOWD0Ji8H61ElgyEj/O9KRLokgKbAM9XX9CJAg==", + "version": "3.6.11", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.11.tgz", + "integrity": "sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg==", "dependencies": { "@babel/parser": "^7.9.4", "@types/markdown-it": "^12.2.3", @@ -4586,7 +4718,7 @@ "catharsis": "^0.9.0", "escape-string-regexp": "^2.0.0", "js2xmlparser": "^4.0.2", - "klaw": "^4.0.1", + "klaw": "^3.0.0", "markdown-it": "^12.3.2", "markdown-it-anchor": "^8.4.1", "marked": "^4.0.10", @@ -4600,7 +4732,7 @@ "jsdoc": "jsdoc.js" }, "engines": { - "node": ">=8.15.0" + "node": ">=12.0.0" } }, "node_modules/jsdoc-type-pratt-parser": { @@ -4684,11 +4816,11 @@ } }, "node_modules/klaw": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-4.0.1.tgz", - "integrity": "sha512-pgsE40/SvC7st04AHiISNewaIMUbY5V/K8b21ekiPiFoYs/EYSdsGa+FJArB1d441uq4Q8zZyIxvAzkGNlBdRw==", - "engines": { - "node": ">=14.14.0" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", + "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", + "dependencies": { + "graceful-fs": "^4.1.9" } }, "node_modules/less-openui5": { @@ -4729,6 +4861,48 @@ "ini": "^1.3.5" } }, + "node_modules/libnpmconfig/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/libnpmconfig/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/libnpmconfig/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/libnpmconfig/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "engines": { + "node": ">=4" + } + }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -4755,15 +4929,15 @@ } }, "node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/lockfile": { @@ -4900,12 +5074,16 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/make-fetch-happen/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "node_modules/make-fetch-happen/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "dependencies": { - "balanced-match": "^1.0.0" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, "node_modules/make-fetch-happen/node_modules/cacache": { @@ -4936,22 +5114,20 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/make-fetch-happen/node_modules/glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, + "node_modules/make-fetch-happen/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=6" + } + }, + "node_modules/make-fetch-happen/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" } }, "node_modules/make-fetch-happen/node_modules/lru-cache": { @@ -4962,15 +5138,18 @@ "node": ">=12" } }, - "node_modules/make-fetch-happen/node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "node_modules/make-fetch-happen/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "dependencies": { - "brace-expansion": "^2.0.1" + "aggregate-error": "^3.0.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/make-fetch-happen/node_modules/ssri": { @@ -5046,9 +5225,9 @@ } }, "node_modules/markdown-it-anchor": { - "version": "8.6.4", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.4.tgz", - "integrity": "sha512-Ul4YVYZNxMJYALpKtu+ZRdrryYt/GlQ5CK+4l1bp/gWXOG2QWElt6AqF3Mih/wfUKdZbNAZVXGR73/n6U/8img==", + "version": "8.6.5", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.5.tgz", + "integrity": "sha512-PI1qEHHkTNWT+X6Ip9w+paonfIQ+QZP9sCeMYi47oqhH+EsW8CrJ8J7CzV19QVOj6il8ATGbK2nTECj22ZHGvQ==", "peerDependencies": { "@types/markdown-it": "*", "markdown-it": "*" @@ -5063,9 +5242,9 @@ } }, "node_modules/marked": { - "version": "4.0.17", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.17.tgz", - "integrity": "sha512-Wfk0ATOK5iPxM4ptrORkFemqroz0ZDxp5MWfYA7H/F+wO17NRWV5Ypxi6p3g2Xmw2bKeiYOl6oVnLHKxBA0VhA==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.2.tgz", + "integrity": "sha512-JjBTFTAvuTgANXx82a5vzK9JLSMoV6V3LBVn4Uhdso6t7vXrGx7g1Cd2r6NYSsxrYbQGFCMqBDhFHyK5q2UvcQ==", "bin": { "marked": "bin/marked.js" }, @@ -5175,58 +5354,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/meow/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/meow/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "node_modules/meow/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" + "p-locate": "^5.0.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/meow/node_modules/p-limit": { @@ -5259,15 +5399,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/meow/node_modules/read-pkg": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", @@ -5315,21 +5446,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/meow/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -5389,21 +5505,24 @@ } }, "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", "dependencies": { - "brace-expansion": "^1.1.7" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "*" + "node": ">=10" } }, "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/minimist-options": { "version": "4.1.0", @@ -5565,6 +5684,37 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/multimatch/node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/multimatch/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/multimatch/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/nanoid": { "version": "3.3.4", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", @@ -5592,18 +5742,36 @@ } }, "node_modules/nise": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.1.tgz", - "integrity": "sha512-yr5kW2THW1AkxVmCnKEh4nbYkJdB3I7LUkiUgOvEkOp414mc2UMaHMA7pjq1nYowhdoJZGwEKGaQVbxfpWj10A==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.2.tgz", + "integrity": "sha512-+gQjFi8v+tkfCuSCxfURHLhRhniE/+IaYbIphxAN2JRR9SHKhY8hgXpaXiYfHdw+gcGe4buxgbprBQFab9FkhA==", "dev": true, "dependencies": { - "@sinonjs/commons": "^1.8.3", - "@sinonjs/fake-timers": ">=5", + "@sinonjs/commons": "^2.0.0", + "@sinonjs/fake-timers": "^7.0.4", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "path-to-regexp": "^1.7.0" } }, + "node_modules/nise/node_modules/@sinonjs/fake-timers": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz", + "integrity": "sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/nise/node_modules/@sinonjs/fake-timers/node_modules/@sinonjs/commons": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", + "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, "node_modules/node-gyp": { "version": "9.3.0", "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.0.tgz", @@ -5627,6 +5795,45 @@ "node": "^12.22 || ^14.13 || >=16" } }, + "node_modules/node-gyp/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/node-gyp/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -5640,9 +5847,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", - "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", "dev": true }, "node_modules/nofilter": { @@ -5669,17 +5876,17 @@ } }, "node_modules/normalize-package-data": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", - "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "dependencies": { - "hosted-git-info": "^6.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" } }, "node_modules/normalize-path": { @@ -5735,6 +5942,25 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/npm-package-arg/node_modules/hosted-git-info": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-package-arg/node_modules/lru-cache": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "engines": { + "node": ">=12" + } + }, "node_modules/npm-packlist": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.2.tgz", @@ -5893,6 +6119,28 @@ "node": ">=8.9" } }, + "node_modules/nyc/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/nyc/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -5908,6 +6156,25 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/nyc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/nyc/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/nyc/node_modules/cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -5937,15 +6204,46 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/nyc/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/nyc/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/nyc/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/nyc/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, "engines": { "node": ">=8" } @@ -5965,28 +6263,16 @@ "node": ">=8" } }, - "node_modules/nyc/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/nyc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=8" + "node": "*" } }, "node_modules/nyc/node_modules/p-map": { @@ -6001,31 +6287,39 @@ "node": ">=8" } }, - "node_modules/nyc/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "node_modules/nyc/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, - "engines": { - "node": ">=8" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/nyc/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/nyc/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, "engines": { "node": ">=8" } }, - "node_modules/nyc/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/nyc/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, "node_modules/nyc/node_modules/wrap-ansi": { @@ -6042,6 +6336,12 @@ "node": ">=8" } }, + "node_modules/nyc/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, "node_modules/nyc/node_modules/yargs": { "version": "15.4.1", "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", @@ -6064,6 +6364,19 @@ "node": ">=8" } }, + "node_modules/nyc/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -6175,25 +6488,27 @@ } }, "node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, "dependencies": { - "p-limit": "^2.0.0" + "p-limit": "^2.2.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "dev": true, "dependencies": { - "aggregate-error": "^3.0.0" + "aggregate-error": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -6276,6 +6591,15 @@ "node": ">=6" } }, + "node_modules/parent-module/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -6316,11 +6640,12 @@ } }, "node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/path-is-absolute": { @@ -6491,61 +6816,76 @@ } }, "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", + "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", "dev": true, "dependencies": { - "find-up": "^4.0.0" + "find-up": "^5.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, "node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", + "locate-path": "^6.0.0", "path-exists": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pkg-dir/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/please-upgrade-node": { @@ -6573,9 +6913,9 @@ } }, "node_modules/postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "version": "8.4.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.18.tgz", + "integrity": "sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==", "dev": true, "funding": [ { @@ -6783,30 +7123,15 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-package-json/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/read-package-json/node_modules/glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "node_modules/read-package-json/node_modules/hosted-git-info": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "lru-cache": "^7.5.1" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { @@ -6817,15 +7142,26 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-package-json/node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "node_modules/read-package-json/node_modules/lru-cache": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/read-package-json/node_modules/normalize-package-data": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", + "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", "dependencies": { - "brace-expansion": "^2.0.1" + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": ">=10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/read-pkg": { @@ -6948,42 +7284,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/read-pkg/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/read-pkg/node_modules/type-fest": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", @@ -6995,11 +7295,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -7042,26 +7337,14 @@ } }, "node_modules/redent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", - "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", - "dev": true, - "dependencies": { - "indent-string": "^5.0.0", - "strip-indent": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/redent/node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", + "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", "dev": true, + "dependencies": { + "indent-string": "^5.0.0", + "strip-indent": "^4.0.0" + }, "engines": { "node": ">=12" }, @@ -7139,6 +7422,11 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/replacestream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "node_modules/replacestream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -7177,11 +7465,11 @@ } }, "node_modules/resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dependencies": { - "is-core-module": "^2.8.1", + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -7204,7 +7492,7 @@ "node": ">=8" } }, - "node_modules/resolve-cwd/node_modules/resolve-from": { + "node_modules/resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", @@ -7213,24 +7501,6 @@ "node": ">=8" } }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/resolvewithplus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolvewithplus/-/resolvewithplus-1.0.0.tgz", - "integrity": "sha512-rjEDkAH90XUQb5RN/+yxbcngIGTzusussygz7Cx9UC63ESsgOgsHhpnvUJKEJQLN/6M/9xPMGkAPEh21CKErsQ==", - "dev": true, - "engines": { - "node": ">=12.16.0" - } - }, "node_modules/retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", @@ -7262,6 +7532,45 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -7285,9 +7594,23 @@ } }, "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/safer-buffer": { "version": "2.1.2", @@ -7296,9 +7619,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.52.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.52.3.tgz", - "integrity": "sha512-LNNPJ9lafx+j1ArtA7GyEJm9eawXN8KlA1+5dF6IZyoONg1Tyo/g+muOsENWJH/2Q1FHbbV4UwliU0cXMa/VIA==", + "version": "1.56.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.0.tgz", + "integrity": "sha512-WFJ9XrpkcnqZcYuLRJh5qiV6ibQOR4AezleeEjTjMsCocYW59dEG19U3fwTTXxzi2Ed3yjPBp727hbbj53pHFw==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -7330,9 +7653,9 @@ } }, "node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -7430,16 +7753,16 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sinon": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-14.0.0.tgz", - "integrity": "sha512-ugA6BFmE+WrJdh0owRZHToLd32Uw3Lxq6E6LtNRU+xTVBefx632h03Q7apXWRsRdZAJ41LB8aUfn2+O4jsDNMw==", + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-14.0.2.tgz", + "integrity": "sha512-PDpV0ZI3ZCS3pEqx0vpNp6kzPhHrLx72wA0G+ZLaaJjLIYeE0n8INlgaohKuGy7hP0as5tbUd23QWu5U233t+w==", "dev": true, "dependencies": { - "@sinonjs/commons": "^1.8.3", + "@sinonjs/commons": "^2.0.0", "@sinonjs/fake-timers": "^9.1.2", - "@sinonjs/samsam": "^6.1.1", + "@sinonjs/samsam": "^7.0.1", "diff": "^5.0.0", - "nise": "^5.1.1", + "nise": "^5.1.2", "supports-color": "^7.2.0" }, "funding": { @@ -7472,18 +7795,6 @@ "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", @@ -7602,9 +7913,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" }, "node_modules/sprintf-js": { "version": "1.0.3", @@ -7652,47 +7963,36 @@ "safe-buffer": "~5.2.0" } }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, "dependencies": { - "ansi-regex": "^5.0.1" + "ansi-regex": "^6.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, "node_modules/strip-bom": { @@ -7762,18 +8062,6 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/supertap/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, "node_modules/supertap/node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -7783,18 +8071,6 @@ "sprintf-js": "~1.0.2" } }, - "node_modules/supertap/node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/supertap/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -7808,21 +8084,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/supertap/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -8012,6 +8273,13 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/tap-parser/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, "node_modules/tap-parser/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -8085,6 +8353,13 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/tap-xunit/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, "node_modules/tap-xunit/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -8185,9 +8460,9 @@ } }, "node_modules/terser": { - "version": "5.14.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", - "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -8215,6 +8490,48 @@ "node": ">=8" } }, + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -8252,6 +8569,12 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/through2/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "node_modules/through2/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -8320,9 +8643,9 @@ } }, "node_modules/tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" }, "node_modules/type-check": { "version": "0.4.0", @@ -8369,9 +8692,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "node_modules/underscore": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.4.tgz", - "integrity": "sha512-BQFnUDuAQ4Yf/cYY5LNrK9NCJFKriaRbD9uR1fTeXnBeoa97W0i41qkZfGO9pSo8I5KzjAcSY2XYtdf0oKd7KQ==" + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", + "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" }, "node_modules/unique-filename": { "version": "3.0.0", @@ -8410,6 +8733,32 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -8432,12 +8781,6 @@ "uuid": "dist/bin/uuid" } }, - "node_modules/v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true - }, "node_modules/validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", @@ -8495,6 +8838,51 @@ "string-width": "^1.0.2 || 2 || 3 || 4" } }, + "node_modules/wide-align/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/wide-align/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/wide-align/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/wide-align/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wide-align/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -8521,6 +8909,15 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/wrap-ansi/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -8554,21 +8951,63 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "node_modules/wrap-ansi/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dev": true, "dependencies": { "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/xml2js": { @@ -8618,10 +9057,13 @@ } }, "node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } }, "node_modules/yallist": { "version": "2.1.2", @@ -8639,61 +9081,89 @@ } }, "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", "dev": true, "dependencies": { - "cliui": "^7.0.2", + "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.0", + "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "yargs-parser": "^21.1.1" }, "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/yargs-parser/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "node_modules/yargs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/yargs/node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "node_modules/yargs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/yargs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, "engines": { - "node": ">=10" + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, "node_modules/yargs/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/yazl": { @@ -8726,50 +9196,38 @@ "requires": { "@jridgewell/gen-mapping": "^0.1.0", "@jridgewell/trace-mapping": "^0.3.9" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - } } }, "@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "requires": { - "@babel/highlight": "^7.16.7" + "@babel/highlight": "^7.18.6" } }, "@babel/compat-data": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.5.tgz", - "integrity": "sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", + "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", "dev": true }, "@babel/core": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.5.tgz", - "integrity": "sha512-MGY8vg3DxMnctw0LdvSEojOsumc70g0t18gNyUdAZqB1Rpd1Bqo/svHGvt+UJ6JcGX+DIekGFDxxIWofBxLCnQ==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", + "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", "dev": true, "requires": { "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.18.2", - "@babel/helper-compilation-targets": "^7.18.2", - "@babel/helper-module-transforms": "^7.18.0", - "@babel/helpers": "^7.18.2", - "@babel/parser": "^7.18.5", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.5", - "@babel/types": "^7.18.4", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.2", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-module-transforms": "^7.20.2", + "@babel/helpers": "^7.20.1", + "@babel/parser": "^7.20.2", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -8777,12 +9235,6 @@ "semver": "^6.3.0" }, "dependencies": { - "@babel/parser": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", - "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", - "dev": true - }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -8792,25 +9244,38 @@ } }, "@babel/generator": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz", - "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.3.tgz", + "integrity": "sha512-Wl5ilw2UD1+ZYprHVprxHZJCFeBWlzZYOovE4SDYLZnqCOD11j+0QzNeEWKLLTWM7nixrZEh7vNIyb76MyJg3A==", "dev": true, "requires": { - "@babel/types": "^7.18.2", - "@jridgewell/gen-mapping": "^0.3.0", + "@babel/types": "^7.20.2", + "@jridgewell/gen-mapping": "^0.3.2", "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } } }, "@babel/helper-compilation-targets": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", - "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", + "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", "dev": true, "requires": { - "@babel/compat-data": "^7.17.10", - "@babel/helper-validator-option": "^7.16.7", - "browserslist": "^4.20.2", + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", "semver": "^6.3.0" }, "dependencies": { @@ -8823,107 +9288,113 @@ } }, "@babel/helper-environment-visitor": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", - "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", "dev": true }, "@babel/helper-function-name": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", - "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", "dev": true, "requires": { - "@babel/template": "^7.16.7", - "@babel/types": "^7.17.0" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" } }, "@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", "dev": true, "requires": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.18.6" } }, "@babel/helper-module-imports": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", - "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "dev": true, "requires": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.18.6" } }, "@babel/helper-module-transforms": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz", - "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", + "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", "dev": true, "requires": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.17.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/helper-validator-identifier": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.0", - "@babel/types": "^7.18.0" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" } }, "@babel/helper-plugin-utils": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz", - "integrity": "sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", "dev": true }, "@babel/helper-simple-access": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz", - "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", "dev": true, "requires": { - "@babel/types": "^7.18.2" + "@babel/types": "^7.20.2" } }, "@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", "dev": true, "requires": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.18.6" } }, + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true + }, "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==" + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" }, "@babel/helper-validator-option": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", - "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", "dev": true }, "@babel/helpers": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz", - "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", + "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", "dev": true, "requires": { - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.18.2", - "@babel/types": "^7.18.2" + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.0" } }, "@babel/highlight": { - "version": "7.17.12", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz", - "integrity": "sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "requires": { - "@babel/helper-validator-identifier": "^7.16.7", + "@babel/helper-validator-identifier": "^7.18.6", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -8967,62 +9438,47 @@ } }, "@babel/parser": { - "version": "7.16.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", - "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==" + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", + "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==" }, "@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", "dev": true, "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" - }, - "dependencies": { - "@babel/parser": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", - "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", - "dev": true - } + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" } }, "@babel/traverse": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.5.tgz", - "integrity": "sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.18.2", - "@babel/helper-environment-visitor": "^7.18.2", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.18.5", - "@babel/types": "^7.18.4", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", + "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.1", + "@babel/types": "^7.20.0", "debug": "^4.1.0", "globals": "^11.1.0" - }, - "dependencies": { - "@babel/parser": { - "version": "7.18.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz", - "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", - "dev": true - } } }, "@babel/types": { - "version": "7.18.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz", - "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", + "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.16.7", + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" } }, @@ -9038,14 +9494,14 @@ } }, "@eslint/eslintrc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz", - "integrity": "sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", + "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.3.2", + "espree": "^9.4.0", "globals": "^13.15.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -9054,15 +9510,34 @@ "strip-json-comments": "^3.1.1" }, "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "globals": { - "version": "13.15.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", - "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", "dev": true, "requires": { "type-fest": "^0.20.2" } }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -9077,16 +9552,43 @@ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" }, "@humanwhocodes/config-array": { - "version": "0.9.5", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", - "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", + "version": "0.11.7", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.7.tgz", + "integrity": "sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==", "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", - "minimatch": "^3.0.4" + "minimatch": "^3.0.5" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } } }, + "@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true + }, "@humanwhocodes/object-schema": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", @@ -9121,27 +9623,11 @@ "dependencies": { "argparse": { "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "sprintf-js": "~1.0.2" } }, "js-yaml": { @@ -9153,36 +9639,6 @@ "argparse": "^1.0.7", "esprima": "^4.0.0" } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true } } }, @@ -9193,24 +9649,24 @@ "dev": true }, "@jridgewell/gen-mapping": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz", - "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, "requires": { "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/sourcemap-codec": "^1.4.10" } }, "@jridgewell/resolve-uri": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz", - "integrity": "sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" }, "@jridgewell/set-array": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz", - "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" }, "@jridgewell/source-map": { "version": "0.3.2", @@ -9219,6 +9675,18 @@ "requires": { "@jridgewell/gen-mapping": "^0.3.0", "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } } }, "@jridgewell/sourcemap-codec": { @@ -9227,12 +9695,12 @@ "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" }, "@jridgewell/trace-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", - "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" } }, "@nodelib/fs.scandir": { @@ -9361,9 +9829,9 @@ } }, "@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", + "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -9376,23 +9844,34 @@ "dev": true, "requires": { "@sinonjs/commons": "^1.7.0" + }, + "dependencies": { + "@sinonjs/commons": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", + "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + } } }, "@sinonjs/samsam": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-6.1.1.tgz", - "integrity": "sha512-cZ7rKJTLiE7u7Wi/v9Hc2fs3Ucc3jrWeMgPHbbTCeVAB2S0wOBbYlkJVeNSL04i7fdhT8wIbDq1zhC/PXTD2SA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-7.0.1.tgz", + "integrity": "sha512-zsAk2Jkiq89mhZovB2LLOdTCxJF4hqqTToGP0ASWlhp4I1hqOjcfmZGafXntCN7MDC6yySH0mFHrYtHceOeLmw==", "dev": true, "requires": { - "@sinonjs/commons": "^1.6.0", + "@sinonjs/commons": "^2.0.0", "lodash.get": "^4.4.2", "type-detect": "^4.0.8" } }, "@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", "dev": true }, "@tokenizer/token": { @@ -9488,41 +9967,6 @@ "minimatch": "^5.1.0", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "requires": { - "balanced-match": "^1.0.0" - } - }, - "globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "requires": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - } - }, - "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==" - } } }, "@ui5/logger": { @@ -9534,39 +9978,39 @@ } }, "@vue/compiler-core": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz", - "integrity": "sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.41.tgz", + "integrity": "sha512-oA4mH6SA78DT+96/nsi4p9DX97PHcNROxs51lYk7gb9Z4BPKQ3Mh+BLn6CQZBw857Iuhu28BfMSRHAlPvD4vlw==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.37", + "@vue/shared": "3.2.41", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz", - "integrity": "sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.41.tgz", + "integrity": "sha512-xe5TbbIsonjENxJsYRbDJvthzqxLNk+tb3d/c47zgREDa/PCp6/Y4gC/skM4H6PIuX5DAxm7fFJdbjjUH2QTMw==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.37", - "@vue/shared": "3.2.37" + "@vue/compiler-core": "3.2.41", + "@vue/shared": "3.2.41" } }, "@vue/compiler-sfc": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz", - "integrity": "sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.41.tgz", + "integrity": "sha512-+1P2m5kxOeaxVmJNXnBskAn3BenbTmbxBxWOtBq3mQTCokIreuMULFantBUclP0+KnzNCMOvcnKinqQZmiOF8w==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.37", - "@vue/compiler-dom": "3.2.37", - "@vue/compiler-ssr": "3.2.37", - "@vue/reactivity-transform": "3.2.37", - "@vue/shared": "3.2.37", + "@vue/compiler-core": "3.2.41", + "@vue/compiler-dom": "3.2.41", + "@vue/compiler-ssr": "3.2.41", + "@vue/reactivity-transform": "3.2.41", + "@vue/shared": "3.2.41", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -9574,32 +10018,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz", - "integrity": "sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.41.tgz", + "integrity": "sha512-Y5wPiNIiaMz/sps8+DmhaKfDm1xgj6GrH99z4gq2LQenfVQcYXmHIOBcs5qPwl7jaW3SUQWjkAPKMfQemEQZwQ==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.37", - "@vue/shared": "3.2.37" + "@vue/compiler-dom": "3.2.41", + "@vue/shared": "3.2.41" } }, "@vue/reactivity-transform": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz", - "integrity": "sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.41.tgz", + "integrity": "sha512-mK5+BNMsL4hHi+IR3Ft/ho6Za+L3FA5j8WvreJ7XzHrqkPq8jtF/SMo7tuc9gHjLDwKZX1nP1JQOKo9IEAn54A==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.37", - "@vue/shared": "3.2.37", + "@vue/compiler-core": "3.2.41", + "@vue/shared": "3.2.41", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.37", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.37.tgz", - "integrity": "sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw==", + "version": "3.2.41", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.41.tgz", + "integrity": "sha512-W9mfWLHmJhkfAmV+7gDjcHeAWALQtgGT3JErxULl0oz6R6+3ug91I7IErs93eCFhPCZPHBs4QJS7YWEV7A3sxw==", "dev": true }, "abbrev": { @@ -9608,9 +10052,9 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "acorn": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", - "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==" + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==" }, "acorn-jsx": { "version": "5.3.2", @@ -9643,12 +10087,13 @@ } }, "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "dev": true, "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" } }, "ajv": { @@ -9669,14 +10114,15 @@ "requires": {} }, "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true }, "ansi-styles": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.1.1.tgz", - "integrity": "sha512-qDOv24WjnYuL+wbwHdlsYZFy+cgPtrYw0Tn7GLORicQp9BkQLzrgI3Pm4VyR9ERZ41YTn7KlMPuL1n05WdZvmg==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "dev": true }, "anymatch": { @@ -9748,9 +10194,9 @@ "dev": true }, "arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", + "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", "dev": true }, "atob": { @@ -9811,129 +10257,10 @@ "yargs": "^17.5.1" }, "dependencies": { - "aggregate-error": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", - "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", - "dev": true, - "requires": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" - } - }, - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true - }, - "arrify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", - "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", - "dev": true - }, - "callsites": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.0.0.tgz", - "integrity": "sha512-y3jRROutgpKdz5vzEhWM34TidDU8vkJppF8dszITeb1PQmSqV3DTxyV8G/lyO/DNvtE1YTedehmw9MPZsCBHxQ==", - "dev": true - }, "chalk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", - "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==", - "dev": true - }, - "clean-stack": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", - "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", - "dev": true, - "requires": { - "escape-string-regexp": "5.0.0" - } - }, - "globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dev": true, - "requires": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "dependencies": { - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true - } - } - }, - "indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true - }, - "p-map": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", - "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", - "dev": true, - "requires": { - "aggregate-error": "^4.0.0" - } - }, - "strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dev": true, - "requires": { - "ansi-regex": "^6.0.1" - } - }, - "write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - } - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - } - }, - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz", + "integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==", "dev": true } } @@ -9979,12 +10306,11 @@ "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "balanced-match": "^1.0.0" } }, "braces": { @@ -9996,16 +10322,15 @@ } }, "browserslist": { - "version": "4.20.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.4.tgz", - "integrity": "sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw==", + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001349", - "electron-to-chromium": "^1.4.147", - "escalade": "^3.1.1", - "node-releases": "^2.0.5", - "picocolors": "^1.0.0" + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" } }, "buffer-crc32": { @@ -10046,37 +10371,36 @@ "unique-filename": "^3.0.0" }, "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "requires": { - "balanced-match": "^1.0.0" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" } }, - "glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - } + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" }, "lru-cache": { "version": "7.14.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" }, - "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "requires": { - "brace-expansion": "^2.0.1" + "aggregate-error": "^3.0.0" } } } @@ -10091,18 +10415,32 @@ "make-dir": "^3.0.0", "package-hash": "^4.0.0", "write-file-atomic": "^3.0.0" + }, + "dependencies": { + "write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + } } }, "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.0.0.tgz", + "integrity": "sha512-y3jRROutgpKdz5vzEhWM34TidDU8vkJppF8dszITeb1PQmSqV3DTxyV8G/lyO/DNvtE1YTedehmw9MPZsCBHxQ==", "dev": true }, "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, "camelcase-keys": { @@ -10117,6 +10455,12 @@ "type-fest": "^1.2.1" }, "dependencies": { + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true + }, "type-fest": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", @@ -10126,9 +10470,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001352", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001352.tgz", - "integrity": "sha512-GUgH8w6YergqPQDGWhJGt8GDRnY0L/iJVQcU3eJ46GYf52R8tk0Wxp0PymuFVZboJYXGiCqwozAYZNRjVj6IcA==", + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", "dev": true }, "catharsis": { @@ -10249,12 +10593,6 @@ "color-convert": "^1.9.0" } }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, "cliui": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", @@ -10272,12 +10610,46 @@ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true + }, "string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -10309,6 +10681,12 @@ "strip-ansi": "^5.0.0" } }, + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, "yargs": { "version": "13.3.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", @@ -10351,9 +10729,9 @@ "dev": true }, "ci-info": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.4.0.tgz", - "integrity": "sha512-t5QdPT5jq3o262DOQ8zA6E1tlH2upmUc4Hlvrbx1pGYJuiiHl7O7rvVNI+l8HTVhd/q3Qc9vqimkNk5yiXsAug==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.5.0.tgz", + "integrity": "sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==", "dev": true }, "ci-parallel-vars": { @@ -10363,9 +10741,13 @@ "dev": true }, "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "dev": true, + "requires": { + "escape-string-regexp": "5.0.0" + } }, "clean-yaml-object": { "version": "0.1.0", @@ -10381,53 +10763,59 @@ "requires": { "slice-ansi": "^5.0.0", "string-width": "^5.0.0" + } + }, + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" }, "dependencies": { "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^6.0.1" + "ansi-regex": "^5.0.1" } } } }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, "clone": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", @@ -10520,13 +10908,10 @@ "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" }, "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true }, "convert-to-spaces": { "version": "2.0.1", @@ -10685,9 +11070,9 @@ "dev": true }, "default-require-extensions": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz", - "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz", + "integrity": "sha512-eXTJmRbm2TIt9MgWTsOH1wEuhew6XGZcMeGKCtLedIg/NCsg1iBePXkceTdK4Fii7pzmN9tGsZhKzZ4h7O/fxw==", "dev": true, "requires": { "strip-bom": "^4.0.0" @@ -10713,6 +11098,53 @@ "p-map": "^4.0.0", "rimraf": "^3.0.2", "slash": "^3.0.0" + }, + "dependencies": { + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + } } }, "delegates": { @@ -10751,6 +11183,18 @@ "yargs": "^16.1.0" }, "dependencies": { + "@babel/parser": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", + "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", + "dev": true + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -10760,6 +11204,45 @@ "sprintf-js": "~1.0.2" } }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -10769,6 +11252,50 @@ "argparse": "^1.0.7", "esprima": "^4.0.0" } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } } } }, @@ -10881,6 +11408,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -10919,9 +11452,9 @@ } }, "electron-to-chromium": { - "version": "1.4.154", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.154.tgz", - "integrity": "sha512-GbV9djOkrnj6xmW+YYVVEI3VCQnJ0pnSTu7TW2JyjKd5cakoiSaG5R4RbEtfaD92GsY10DzbU3GYRe+IOA9kqA==", + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", "dev": true }, "emittery": { @@ -10931,9 +11464,10 @@ "dev": true }, "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true }, "encoding": { "version": "0.1.13", @@ -11008,13 +11542,15 @@ } }, "eslint": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.17.0.tgz", - "integrity": "sha512-gq0m0BTJfci60Fz4nczYxNAlED+sMcihltndR8t9t1evnU/azx53x3t2UHXC/uRjcbvRw/XctpaNygSTcQD+Iw==", + "version": "8.27.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.27.0.tgz", + "integrity": "sha512-0y1bfG2ho7mty+SiILVf9PfuRA49ek4Nc60Wmmu62QlobNR+CeXa4xXIJgcuwSQgZiWaPH+5BDsctpIW0PR/wQ==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.3.0", - "@humanwhocodes/config-array": "^0.9.2", + "@eslint/eslintrc": "^1.3.3", + "@humanwhocodes/config-array": "^0.11.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -11024,18 +11560,21 @@ "eslint-scope": "^7.1.1", "eslint-utils": "^3.0.0", "eslint-visitor-keys": "^3.3.0", - "espree": "^9.3.2", + "espree": "^9.4.0", "esquery": "^1.4.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", "globals": "^13.15.0", + "grapheme-splitter": "^1.0.4", "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", @@ -11046,16 +11585,41 @@ "regexpp": "^3.2.0", "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" + "text-table": "^0.2.0" }, "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, "glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -11066,55 +11630,14 @@ } }, "globals": { - "version": "13.15.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz", - "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", "dev": true, "requires": { "type-fest": "^0.20.2" } }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - } - } - }, - "eslint-config-google": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz", - "integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==", - "dev": true, - "requires": {} - }, - "eslint-plugin-ava": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-13.2.0.tgz", - "integrity": "sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==", - "dev": true, - "requires": { - "enhance-visitors": "^1.0.0", - "eslint-utils": "^3.0.0", - "espree": "^9.0.0", - "espurify": "^2.1.1", - "import-modules": "^2.1.0", - "micro-spelling-correcter": "^1.1.1", - "pkg-dir": "^5.0.0", - "resolve-from": "^5.0.0" - }, - "dependencies": { - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, "locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -11124,6 +11647,15 @@ "p-locate": "^5.0.0" } }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, "p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -11142,29 +11674,46 @@ "p-limit": "^3.0.2" } }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "pkg-dir": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", - "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "find-up": "^5.0.0" + "ansi-regex": "^5.0.1" } }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true } } }, + "eslint-config-google": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz", + "integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==", + "dev": true, + "requires": {} + }, + "eslint-plugin-ava": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-13.2.0.tgz", + "integrity": "sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==", + "dev": true, + "requires": { + "enhance-visitors": "^1.0.0", + "eslint-utils": "^3.0.0", + "espree": "^9.0.0", + "espurify": "^2.1.1", + "import-modules": "^2.1.0", + "micro-spelling-correcter": "^1.1.1", + "pkg-dir": "^5.0.0", + "resolve-from": "^5.0.0" + } + }, "eslint-plugin-jsdoc": { "version": "37.9.7", "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.7.tgz", @@ -11230,20 +11779,17 @@ "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==" }, "esmock": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.0.tgz", - "integrity": "sha512-dMnO7V+Y2M7pqoAzn42rXfyc3tZvzhK8T9rxAPxYmmxT1imsOv4A02eaHoqXOn2TBd1JAv794mJLWIV64zibQQ==", - "dev": true, - "requires": { - "resolvewithplus": "^1.0.0" - } + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.7.tgz", + "integrity": "sha512-/DzaNL58ZKT6CRuCu2WatPMGe49BOjUwiKADfhGCk/SBzrmWWjzG/pPFq+3hvScG8nvD2YFr0Hz4PIZkfVqy3Q==", + "dev": true }, "espree": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.2.tgz", - "integrity": "sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==", + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", "requires": { - "acorn": "^8.7.1", + "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.3.0" } @@ -11327,9 +11873,9 @@ "dev": true }, "fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -11409,14 +11955,27 @@ "commondir": "^1.0.1", "make-dir": "^3.0.2", "pkg-dir": "^4.1.0" + }, + "dependencies": { + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + } } }, "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, "flat-cache": { @@ -11430,9 +11989,9 @@ } }, "flatted": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", - "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", "dev": true }, "foreground-child": { @@ -11476,12 +12035,6 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", - "dev": true - }, "gauge": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", @@ -11495,6 +12048,41 @@ "string-width": "^4.2.3", "strip-ansi": "^6.0.1", "wide-align": "^1.1.5" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } } }, "gensync": { @@ -11522,16 +12110,15 @@ "dev": true }, "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "minimatch": "^5.0.1", + "once": "^1.3.0" } }, "glob-parent": { @@ -11549,17 +12136,22 @@ "dev": true }, "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", + "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", "requires": { - "array-union": "^2.1.0", "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", + "fast-glob": "^3.2.11", "ignore": "^5.2.0", "merge2": "^1.4.1", - "slash": "^3.0.0" + "slash": "^4.0.0" + }, + "dependencies": { + "slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==" + } } }, "graceful-fs": { @@ -11567,6 +12159,12 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, + "grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, "hard-rejection": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", @@ -11619,17 +12217,25 @@ } }, "hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "requires": { - "lru-cache": "^7.5.1" + "lru-cache": "^6.0.0" }, "dependencies": { "lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, @@ -11714,24 +12320,6 @@ "integrity": "sha512-bTf9UWe/UP1yxG3QUrj/KOvEhTAUWPcv+WvbFZ28LcqznXabp7Xu6o9y1JEC18+oqODuS7VhTpekV5XvFwsxJg==", "requires": { "minimatch": "^5.0.1" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "requires": { - "balanced-match": "^1.0.0" - } - }, - "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "requires": { - "brace-expansion": "^2.0.1" - } - } } }, "immutable": { @@ -11748,6 +12336,14 @@ "requires": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + } } }, "import-modules": { @@ -11762,9 +12358,10 @@ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" }, "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true }, "infer-owner": { "version": "1.0.4", @@ -11825,9 +12422,9 @@ } }, "is-core-module": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", - "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", "requires": { "has": "^1.0.3" } @@ -11850,9 +12447,10 @@ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" }, "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true }, "is-glob": { "version": "4.0.3", @@ -11996,6 +12594,28 @@ "uuid": "^8.3.2" }, "dependencies": { + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, "p-map": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", @@ -12030,9 +12650,9 @@ } }, "istanbul-reports": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", - "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -12049,41 +12669,14 @@ "editorconfig": "^0.15.3", "glob": "^8.0.3", "nopt": "^6.0.0" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - } - }, - "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - } } }, + "js-sdsl": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", + "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==", + "dev": true + }, "js-string-escape": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", @@ -12112,9 +12705,9 @@ } }, "jsdoc": { - "version": "3.6.10", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.10.tgz", - "integrity": "sha512-IdQ8ppSo5LKZ9o3M+LKIIK8i00DIe5msDvG3G81Km+1dhy0XrOWD0Ji8H61ElgyEj/O9KRLokgKbAM9XX9CJAg==", + "version": "3.6.11", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.11.tgz", + "integrity": "sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg==", "requires": { "@babel/parser": "^7.9.4", "@types/markdown-it": "^12.2.3", @@ -12122,7 +12715,7 @@ "catharsis": "^0.9.0", "escape-string-regexp": "^2.0.0", "js2xmlparser": "^4.0.2", - "klaw": "^4.0.1", + "klaw": "^3.0.0", "markdown-it": "^12.3.2", "markdown-it-anchor": "^8.4.1", "marked": "^4.0.10", @@ -12192,9 +12785,12 @@ "dev": true }, "klaw": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-4.0.1.tgz", - "integrity": "sha512-pgsE40/SvC7st04AHiISNewaIMUbY5V/K8b21ekiPiFoYs/EYSdsGa+FJArB1d441uq4Q8zZyIxvAzkGNlBdRw==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", + "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", + "requires": { + "graceful-fs": "^4.1.9" + } }, "less-openui5": { "version": "0.11.2", @@ -12224,6 +12820,38 @@ "figgy-pudding": "^3.5.1", "find-up": "^3.0.0", "ini": "^1.3.5" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" + } } }, "lines-and-columns": { @@ -12246,12 +12874,12 @@ "dev": true }, "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" } }, "lockfile": { @@ -12372,12 +13000,13 @@ "semver": "^7.3.5" } }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "requires": { - "balanced-match": "^1.0.0" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" } }, "cacache": { @@ -12405,29 +13034,27 @@ "unique-filename": "^2.0.0" } }, - "glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - } + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" }, "lru-cache": { "version": "7.14.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" }, - "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "requires": { - "brace-expansion": "^2.0.1" + "aggregate-error": "^3.0.0" } }, "ssri": { @@ -12491,15 +13118,15 @@ } }, "markdown-it-anchor": { - "version": "8.6.4", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.4.tgz", - "integrity": "sha512-Ul4YVYZNxMJYALpKtu+ZRdrryYt/GlQ5CK+4l1bp/gWXOG2QWElt6AqF3Mih/wfUKdZbNAZVXGR73/n6U/8img==", + "version": "8.6.5", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.5.tgz", + "integrity": "sha512-PI1qEHHkTNWT+X6Ip9w+paonfIQ+QZP9sCeMYi47oqhH+EsW8CrJ8J7CzV19QVOj6il8ATGbK2nTECj22ZHGvQ==", "requires": {} }, "marked": { - "version": "4.0.17", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.17.tgz", - "integrity": "sha512-Wfk0ATOK5iPxM4ptrORkFemqroz0ZDxp5MWfYA7H/F+wO17NRWV5Ypxi6p3g2Xmw2bKeiYOl6oVnLHKxBA0VhA==" + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.2.tgz", + "integrity": "sha512-JjBTFTAvuTgANXx82a5vzK9JLSMoV6V3LBVn4Uhdso6t7vXrGx7g1Cd2r6NYSsxrYbQGFCMqBDhFHyK5q2UvcQ==" }, "matcher": { "version": "5.0.0", @@ -12570,15 +13197,6 @@ "path-exists": "^4.0.0" } }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, "locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -12588,27 +13206,6 @@ "p-locate": "^5.0.0" } }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, "p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -12627,12 +13224,6 @@ "p-limit": "^3.0.2" } }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, "read-pkg": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", @@ -12661,18 +13252,6 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true } } }, @@ -12713,18 +13292,18 @@ "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", "dev": true }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", "requires": { - "brace-expansion": "^1.1.7" + "brace-expansion": "^2.0.1" } }, "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "dev": true }, "minimist-options": { @@ -12850,6 +13429,33 @@ "array-union": "^2.1.0", "arrify": "^2.0.1", "minimatch": "^3.0.4" + }, + "dependencies": { + "arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } } }, "nanoid": { @@ -12870,16 +13476,38 @@ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" }, "nise": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.1.tgz", - "integrity": "sha512-yr5kW2THW1AkxVmCnKEh4nbYkJdB3I7LUkiUgOvEkOp414mc2UMaHMA7pjq1nYowhdoJZGwEKGaQVbxfpWj10A==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.2.tgz", + "integrity": "sha512-+gQjFi8v+tkfCuSCxfURHLhRhniE/+IaYbIphxAN2JRR9SHKhY8hgXpaXiYfHdw+gcGe4buxgbprBQFab9FkhA==", "dev": true, "requires": { - "@sinonjs/commons": "^1.8.3", - "@sinonjs/fake-timers": ">=5", + "@sinonjs/commons": "^2.0.0", + "@sinonjs/fake-timers": "^7.0.4", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "path-to-regexp": "^1.7.0" + }, + "dependencies": { + "@sinonjs/fake-timers": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz", + "integrity": "sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + }, + "dependencies": { + "@sinonjs/commons": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", + "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + } + } + } } }, "node-gyp": { @@ -12897,6 +13525,38 @@ "semver": "^7.3.5", "tar": "^6.1.2", "which": "^2.0.2" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + } } }, "node-preload": { @@ -12909,9 +13569,9 @@ } }, "node-releases": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz", - "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", "dev": true }, "nofilter": { @@ -12929,14 +13589,14 @@ } }, "normalize-package-data": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", - "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "requires": { - "hosted-git-info": "^6.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" } }, "normalize-path": { @@ -12975,6 +13635,21 @@ "proc-log": "^3.0.0", "semver": "^7.3.5", "validate-npm-package-name": "^5.0.0" + }, + "dependencies": { + "hosted-git-info": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "requires": { + "lru-cache": "^7.5.1" + } + }, + "lru-cache": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" + } } }, "npm-packlist": { @@ -13105,6 +13780,22 @@ "yargs": "^15.0.2" }, "dependencies": { + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -13114,6 +13805,22 @@ "color-convert": "^2.0.1" } }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, "cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -13140,16 +13847,38 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, "istanbul-lib-instrument": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", @@ -13162,22 +13891,13 @@ "semver": "^6.3.0" } }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "requires": { - "p-limit": "^2.2.0" + "brace-expansion": "^1.1.7" } }, "p-map": { @@ -13189,24 +13909,32 @@ "aggregate-error": "^3.0.0" } }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -13218,6 +13946,12 @@ "strip-ansi": "^6.0.0" } }, + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, "yargs": { "version": "15.4.1", "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", @@ -13236,6 +13970,16 @@ "y18n": "^4.0.0", "yargs-parser": "^18.1.2" } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, @@ -13314,19 +14058,21 @@ } }, "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, "requires": { - "p-limit": "^2.0.0" + "p-limit": "^2.2.0" } }, "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "dev": true, "requires": { - "aggregate-error": "^3.0.0" + "aggregate-error": "^4.0.0" } }, "p-timeout": { @@ -13383,6 +14129,14 @@ "dev": true, "requires": { "callsites": "^3.0.0" + }, + "dependencies": { + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + } } }, "parse-json": { @@ -13416,9 +14170,10 @@ } }, "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true }, "path-is-absolute": { "version": "1.0.1", @@ -13529,47 +14284,50 @@ } }, "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", + "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", "dev": true, "requires": { - "find-up": "^4.0.0" + "find-up": "^5.0.0" }, "dependencies": { "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "requires": { - "locate-path": "^5.0.0", + "locate-path": "^6.0.0", "path-exists": "^4.0.0" } }, "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "requires": { - "p-locate": "^4.1.0" + "p-locate": "^5.0.0" } }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "requires": { - "p-limit": "^2.2.0" + "yocto-queue": "^0.1.0" } }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } } } }, @@ -13592,9 +14350,9 @@ } }, "postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "version": "8.4.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.18.tgz", + "integrity": "sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==", "dev": true, "requires": { "nanoid": "^3.3.4", @@ -13713,24 +14471,12 @@ "npm-normalize-package-bin": "^3.0.0" }, "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "requires": { - "balanced-match": "^1.0.0" - } - }, - "glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "hosted-git-info": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "lru-cache": "^7.5.1" } }, "json-parse-even-better-errors": { @@ -13738,12 +14484,20 @@ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==" }, - "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "lru-cache": { + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" + }, + "normalize-package-data": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", + "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", "requires": { - "brace-expansion": "^2.0.1" + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" } } } @@ -13770,47 +14524,15 @@ "integrity": "sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==", "requires": { "@types/normalize-package-data": "^2.4.1", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^2.0.0" - }, - "dependencies": { - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, + "normalize-package-data": "^3.0.2", + "parse-json": "^5.2.0", + "type-fest": "^2.0.0" + }, + "dependencies": { "type-fest": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, @@ -13910,14 +14632,6 @@ "requires": { "indent-string": "^5.0.0", "strip-indent": "^4.0.0" - }, - "dependencies": { - "indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true - } } }, "regexpp": { @@ -13975,6 +14689,11 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -14012,11 +14731,11 @@ } }, "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "requires": { - "is-core-module": "^2.8.1", + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" } @@ -14028,26 +14747,12 @@ "dev": true, "requires": { "resolve-from": "^5.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - } } }, "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "resolvewithplus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolvewithplus/-/resolvewithplus-1.0.0.tgz", - "integrity": "sha512-rjEDkAH90XUQb5RN/+yxbcngIGTzusussygz7Cx9UC63ESsgOgsHhpnvUJKEJQLN/6M/9xPMGkAPEh21CKErsQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true }, "retry": { @@ -14066,6 +14771,38 @@ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "requires": { "glob": "^7.1.3" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + } } }, "run-parallel": { @@ -14077,9 +14814,9 @@ } }, "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safer-buffer": { "version": "2.1.2", @@ -14088,9 +14825,9 @@ "optional": true }, "sass": { - "version": "1.52.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.52.3.tgz", - "integrity": "sha512-LNNPJ9lafx+j1ArtA7GyEJm9eawXN8KlA1+5dF6IZyoONg1Tyo/g+muOsENWJH/2Q1FHbbV4UwliU0cXMa/VIA==", + "version": "1.56.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.0.tgz", + "integrity": "sha512-WFJ9XrpkcnqZcYuLRJh5qiV6ibQOR4AezleeEjTjMsCocYW59dEG19U3fwTTXxzi2Ed3yjPBp727hbbj53pHFw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -14113,9 +14850,9 @@ } }, "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "requires": { "lru-cache": "^6.0.0" }, @@ -14190,16 +14927,16 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "sinon": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-14.0.0.tgz", - "integrity": "sha512-ugA6BFmE+WrJdh0owRZHToLd32Uw3Lxq6E6LtNRU+xTVBefx632h03Q7apXWRsRdZAJ41LB8aUfn2+O4jsDNMw==", + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-14.0.2.tgz", + "integrity": "sha512-PDpV0ZI3ZCS3pEqx0vpNp6kzPhHrLx72wA0G+ZLaaJjLIYeE0n8INlgaohKuGy7hP0as5tbUd23QWu5U233t+w==", "dev": true, "requires": { - "@sinonjs/commons": "^1.8.3", + "@sinonjs/commons": "^2.0.0", "@sinonjs/fake-timers": "^9.1.2", - "@sinonjs/samsam": "^6.1.1", + "@sinonjs/samsam": "^7.0.1", "diff": "^5.0.0", - "nise": "^5.1.1", + "nise": "^5.1.2", "supports-color": "^7.2.0" } }, @@ -14217,14 +14954,6 @@ "requires": { "ansi-styles": "^6.0.0", "is-fullwidth-code-point": "^4.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", - "dev": true - } } }, "smart-buffer": { @@ -14324,9 +15053,9 @@ } }, "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" }, "sprintf-js": { "version": "1.0.3", @@ -14365,31 +15094,26 @@ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "requires": { "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - } } }, "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" } }, "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, "requires": { - "ansi-regex": "^5.0.1" + "ansi-regex": "^6.0.1" } }, "strip-bom": { @@ -14434,12 +15158,6 @@ "strip-ansi": "^7.0.1" }, "dependencies": { - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true - }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -14449,12 +15167,6 @@ "sprintf-js": "~1.0.2" } }, - "indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true - }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -14464,15 +15176,6 @@ "argparse": "^1.0.7", "esprima": "^4.0.0" } - }, - "strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dev": true, - "requires": { - "ansi-regex": "^6.0.1" - } } } }, @@ -14624,6 +15327,13 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -14692,6 +15402,13 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -14769,9 +15486,9 @@ } }, "terser": { - "version": "5.14.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", - "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", "requires": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -14788,6 +15505,41 @@ "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", "minimatch": "^3.0.4" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } } }, "text-table": { @@ -14827,6 +15579,12 @@ "util-deprecate": "~1.0.1" } }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -14875,9 +15633,9 @@ "dev": true }, "tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" }, "type-check": { "version": "0.4.0", @@ -14915,9 +15673,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "underscore": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.4.tgz", - "integrity": "sha512-BQFnUDuAQ4Yf/cYY5LNrK9NCJFKriaRbD9uR1fTeXnBeoa97W0i41qkZfGO9pSo8I5KzjAcSY2XYtdf0oKd7KQ==" + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", + "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" }, "unique-filename": { "version": "3.0.0", @@ -14944,6 +15702,16 @@ "crypto-random-string": "^4.0.0" } }, + "update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -14963,12 +15731,6 @@ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true }, - "v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true - }, "validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", @@ -15012,6 +15774,41 @@ "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "requires": { "string-width": "^1.0.2 || 2 || 3 || 4" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } } }, "word-wrap": { @@ -15031,6 +15828,12 @@ "strip-ansi": "^6.0.0" }, "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -15054,6 +15857,38 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } } } }, @@ -15063,15 +15898,13 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dev": true, "requires": { "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "signal-exit": "^3.0.7" } }, "xml2js": { @@ -15111,9 +15944,9 @@ "dev": true }, "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true }, "yallist": { @@ -15129,51 +15962,71 @@ "dev": true }, "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", "dev": true, "requires": { - "cliui": "^7.0.2", + "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.0", + "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "yargs-parser": "^21.1.1" }, "dependencies": { - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true } } }, "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } - } + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true }, "yazl": { "version": "2.5.1", diff --git a/packages/project/package.json b/packages/project/package.json index cecb8bd2162..802326a587c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -122,7 +122,7 @@ "ajv-errors": "^1.0.1", "chalk": "^4.1.2", "escape-string-regexp": "^5.0.0", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.10", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", @@ -131,9 +131,9 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", - "resolve": "^1.21.0", + "resolve": "^1.22.1", "rimraf": "^3.0.2", - "semver": "^7.3.5", + "semver": "^7.3.8", "xml2js": "^0.4.23" }, "devDependencies": { @@ -143,20 +143,20 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^1.2.0", - "eslint": "^8.7.0", + "eslint": "^8.27.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-ava": "^13.0.2", - "eslint-plugin-jsdoc": "^37.6.3", - "esmock": "^2.0.0", + "eslint-plugin-ava": "^13.2.0", + "eslint-plugin-jsdoc": "^37.9.7", + "esmock": "^2.0.7", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.1.3", + "istanbul-reports": "^3.1.5", "js-beautify": "^1.14.7", - "jsdoc": "^3.6.7", + "jsdoc": "^3.6.11", "nyc": "^15.1.0", "open-cli": "^7.1.0", - "sinon": "^14.0.0", + "sinon": "^14.0.2", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 0655b9ac2b8eef5cc8f75c38b84b6b45d400c178 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Wed, 9 Nov 2022 13:05:28 +0100 Subject: [PATCH 0704/1272] [ui5-project][INTERNAL] Update supported node engines (#502) --- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7c275de4338..c71ef88ec7f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -55,7 +55,7 @@ "tap-xunit": "^2.4.1" }, "engines": { - "node": ">= 16.13.2", + "node": "^16.18.0 || >=18.0.0", "npm": ">= 8" } }, diff --git a/packages/project/package.json b/packages/project/package.json index 802326a587c..b0471754be2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -28,7 +28,7 @@ "./package.json": "./package.json" }, "engines": { - "node": ">= 16.13.2", + "node": "^16.18.0 || >=18.0.0", "npm": ">= 8" }, "scripts": { From 98e24a2c17d240bb3da59e7c9d7ac935b7335e93 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 7 Nov 2022 16:47:06 +0100 Subject: [PATCH 0705/1272] [ui5-project][INTERNAL] Use Object.create(null) for dynamic maps --- packages/project/lib/build/TaskRunner.js | 2 +- .../project/lib/build/helpers/composeProjectList.js | 2 +- .../lib/build/helpers/createBuildManifest.js | 13 +++++++++++-- packages/project/lib/graph/Module.js | 2 +- packages/project/lib/graph/ProjectGraph.js | 10 +++++----- packages/project/lib/graph/ShimCollection.js | 6 +++--- packages/project/lib/graph/helpers/ui5Framework.js | 2 +- packages/project/lib/graph/projectGraphBuilder.js | 2 +- .../project/lib/specifications/types/Application.js | 2 +- .../project/lib/ui5Framework/AbstractResolver.js | 4 ++-- .../project/lib/ui5Framework/Openui5Resolver.js | 2 +- 11 files changed, 28 insertions(+), 19 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 693fe3cb433..42fca385ca7 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -33,7 +33,7 @@ class TaskRunner { this._log = parentLogger.createSubLogger(project.getType() + " " + project.getName(), 0.2); this._taskLog = this._log.createTaskLogger("🔨"); - this._tasks = {}; + this._tasks = Object.create(null); this._taskExecutionOrder = []; for (const [taskName, params] of standardTasks) { diff --git a/packages/project/lib/build/helpers/composeProjectList.js b/packages/project/lib/build/helpers/composeProjectList.js index 594dc4c362c..ff97ad169e9 100644 --- a/packages/project/lib/build/helpers/composeProjectList.js +++ b/packages/project/lib/build/helpers/composeProjectList.js @@ -10,7 +10,7 @@ const log = logger.getLogger("build:helpers:composeProjectList"); * key and each with an array of its transitive dependencies as value */ async function getFlattenedDependencyTree(graph) { - const dependencyMap = {}; + const dependencyMap = Object.create(null); const rootName = graph.getRoot().getName(); await graph.traverseDepthFirst(({project, getDependencies}) => { diff --git a/packages/project/lib/build/helpers/createBuildManifest.js b/packages/project/lib/build/helpers/createBuildManifest.js index 338deeebadd..ebc0b3ead98 100644 --- a/packages/project/lib/build/helpers/createBuildManifest.js +++ b/packages/project/lib/build/helpers/createBuildManifest.js @@ -7,11 +7,20 @@ async function getVersion(pkg) { return require(`${pkg}/package.json`).version; } +function getSortedTags(project) { + const tags = project.getResourceTagCollection().getAllTags(); + const entities = Object.entries(tags); + entities.sort(([keyA], [keyB]) => { + return keyA.localeCompare(keyB); + }); + return Object.fromEntries(entities); +} + export default async function(project, buildConfig) { const projectName = project.getName(); const type = project.getType(); - const pathMapping = {}; + const pathMapping = Object.create(null); switch (type) { case "application": pathMapping.webapp = `resources/${project.getNamespace()}`; @@ -51,7 +60,7 @@ export default async function(project, buildConfig) { buildConfig, version: project.getVersion(), namespace: project.getNamespace(), - tags: Object.fromEntries(Object.entries(project.getResourceTagCollection().getAllTags()).sort()) + tags: getSortedTags(project) } }; diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js index 5031817ad62..f69bab47357 100644 --- a/packages/project/lib/graph/Module.js +++ b/packages/project/lib/graph/Module.js @@ -66,7 +66,7 @@ class Module { this._version = version; this._modulePath = modulePath; this._configPath = configPath || DEFAULT_CONFIG_PATH; - this._dependencies = {}; + this._dependencies = Object.create(null); if (!Array.isArray(configuration)) { configuration = [configuration]; diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index ca9cba87f03..a31458af6bd 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -23,11 +23,11 @@ class ProjectGraph { this._taskRepository = taskRepository; - this._projects = {}; // maps project name to instance - this._adjList = {}; // maps project name to edges/dependencies - this._optAdjList = {}; // maps project name to optional dependencies + this._projects = Object.create(null); // maps project name to instance + this._adjList = Object.create(null); // maps project name to edges/dependencies + this._optAdjList = Object.create(null); // maps project name to optional dependencies - this._extensions = {}; // maps extension name to instance + this._extensions = Object.create(null); // maps extension name to instance this._sealed = false; this._shouldResolveOptionalDependencies = false; // Performance optimization flag @@ -355,7 +355,7 @@ class ProjectGraph { predecessors: [] }]; - const visited = {}; + const visited = Object.create(null); while (queue.length) { const {projectNames, predecessors} = queue.shift(); // Get and remove first entry from queue diff --git a/packages/project/lib/graph/ShimCollection.js b/packages/project/lib/graph/ShimCollection.js index 6246333277d..0e4d6ddc69c 100644 --- a/packages/project/lib/graph/ShimCollection.js +++ b/packages/project/lib/graph/ShimCollection.js @@ -24,9 +24,9 @@ function addToMap(name, fromMap, toMap) { class ShimCollection { constructor() { - this._projectConfigShims = {}; - this._dependencyShims = {}; - this._collectionShims = {}; + this._projectConfigShims = Object.create(null); + this._dependencyShims = Object.create(null); + this._collectionShims = Object.create(null); } addProjectShim(shimExtension) { diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 520427a46a4..a026d481c49 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -6,7 +6,7 @@ const log = logger.getLogger("graph:helpers:ui5Framework"); class ProjectProcessor { constructor({libraryMetadata}) { this._libraryMetadata = libraryMetadata; - this._projectGraphPromises = {}; + this._projectGraphPromises = Object.create(null); } async addProjectToGraph(libName, projectGraph) { if (this._projectGraphPromises[libName]) { diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index 5ca83024875..4c0680c9b8c 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -99,7 +99,7 @@ function validateNode(node) { */ async function projectGraphBuilder(nodeProvider) { const shimCollection = new ShimCollection(); - const moduleCollection = {}; + const moduleCollection = Object.create(null); const rootNode = await nodeProvider.getRootNode(); validateNode(rootNode); diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index 4110a18ec83..dfa74db5488 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -15,7 +15,7 @@ class Application extends ComponentProject { constructor(parameters) { super(parameters); - this._pManifests = {}; + this._pManifests = Object.create(null); this._webappPath = "webapp"; diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 6636e7dbb5c..88b3dd9ce16 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -54,7 +54,7 @@ class AbstractResolver { return; } // Mark library as handled - libraryMetadata[libraryName] = {}; + libraryMetadata[libraryName] = Object.create(null); log.verbose("Processing " + libraryName); @@ -160,7 +160,7 @@ class AbstractResolver { * Resolves with an object containing the libraryMetadata */ async install(libraryNames) { - const libraryMetadata = {}; + const libraryMetadata = Object.create(null); const errors = []; await this._processLibraries(libraryNames, libraryMetadata, errors); diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js index bdf0c18c168..14e02affa1d 100644 --- a/packages/project/lib/ui5Framework/Openui5Resolver.js +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -28,7 +28,7 @@ class Openui5Resolver extends AbstractResolver { cwd: this._cwd, ui5HomeDir: this._ui5HomeDir }); - this._loadLibraryMetadata = {}; + this._loadLibraryMetadata = Object.create(null); } static _getNpmPackageName(libraryName) { return "@openui5/" + libraryName; From 399e9f1c39a5d54417e854382af97482f5b31ea4 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 11 Nov 2022 10:13:40 +0100 Subject: [PATCH 0706/1272] [ui5-project][INTERNAL] Remove generateManifestBundle task (#504) --- packages/project/lib/build/definitions/application.js | 1 - packages/project/lib/build/definitions/library.js | 1 - packages/project/lib/build/helpers/composeTaskList.js | 2 -- packages/project/test/lib/build/TaskRunner.js | 4 ---- packages/project/test/lib/build/definitions/application.js | 3 --- packages/project/test/lib/build/definitions/library.js | 3 --- packages/project/test/lib/build/helpers/composeTaskList.js | 2 -- 7 files changed, 16 deletions(-) diff --git a/packages/project/lib/build/definitions/application.js b/packages/project/lib/build/definitions/application.js index 5cf16fb12be..24416540f29 100644 --- a/packages/project/lib/build/definitions/application.js +++ b/packages/project/lib/build/definitions/application.js @@ -47,7 +47,6 @@ export default function({project, taskUtil, getTask}) { }); tasks.set("generateFlexChangesBundle", {}); - tasks.set("generateManifestBundle", {}); const bundles = project.getBundles(); const existingBundleDefinitionNames = diff --git a/packages/project/lib/build/definitions/library.js b/packages/project/lib/build/definitions/library.js index 359404a3ae4..82de4da1a77 100644 --- a/packages/project/lib/build/definitions/library.js +++ b/packages/project/lib/build/definitions/library.js @@ -87,7 +87,6 @@ export default function({project, taskUtil, getTask}) { }); tasks.set("generateLibraryManifest", {}); - tasks.set("generateManifestBundle", {}); const bundles = project.getBundles(); const existingBundleDefinitionNames = diff --git a/packages/project/lib/build/helpers/composeTaskList.js b/packages/project/lib/build/helpers/composeTaskList.js index ef46fe49595..dc9730a676d 100644 --- a/packages/project/lib/build/helpers/composeTaskList.js +++ b/packages/project/lib/build/helpers/composeTaskList.js @@ -18,7 +18,6 @@ export default function composeTaskList(allTasks, {selfContained, jsdoc, include }, {}); // Exclude non default tasks - selectedTasks.generateManifestBundle = false; selectedTasks.generateStandaloneAppBundle = false; selectedTasks.transformBootstrapHtml = false; selectedTasks.generateJsdoc = false; @@ -59,7 +58,6 @@ export default function composeTaskList(allTasks, {selfContained, jsdoc, include selectedTasks.generateLibraryManifest = false; selectedTasks.minify = false; selectedTasks.generateFlexChangesBundle = false; - selectedTasks.generateManifestBundle = false; } // Exclude tasks diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 1335f3296f7..ca8f097eb06 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -97,7 +97,6 @@ test("Project of type 'application'", async (t) => { "replaceVersion", "minify", "generateFlexChangesBundle", - "generateManifestBundle", "generateComponentPreload", "generateStandaloneAppBundle", "transformBootstrapHtml", @@ -124,7 +123,6 @@ test("Project of type 'library'", async (t) => { "executeJsdocSdkTransformation", "minify", "generateLibraryManifest", - "generateManifestBundle", "generateComponentPreload", "generateLibraryPreload", "generateBundle", @@ -187,7 +185,6 @@ test("Custom tasks", async (t) => { "minify", "myTask", "generateFlexChangesBundle", - "generateManifestBundle", "generateComponentPreload", "generateStandaloneAppBundle", "transformBootstrapHtml", @@ -320,7 +317,6 @@ test("Multiple custom tasks with same name", async (t) => { "myTask", "myTask--2", "generateFlexChangesBundle", - "generateManifestBundle", "generateComponentPreload", "generateStandaloneAppBundle", "transformBootstrapHtml", diff --git a/packages/project/test/lib/build/definitions/application.js b/packages/project/test/lib/build/definitions/application.js index 583636e88cc..76240a61726 100644 --- a/packages/project/test/lib/build/definitions/application.js +++ b/packages/project/test/lib/build/definitions/application.js @@ -67,7 +67,6 @@ test("Standard build", (t) => { } }, generateFlexChangesBundle: {}, - generateManifestBundle: {}, generateComponentPreload: { options: { namespaces: ["project/b"], @@ -139,7 +138,6 @@ test("Standard build with legacy spec version", (t) => { } }, generateFlexChangesBundle: {}, - generateManifestBundle: {}, generateComponentPreload: { options: { namespaces: ["project/b"], @@ -245,7 +243,6 @@ test("Custom bundles", async (t) => { } }, generateFlexChangesBundle: {}, - generateManifestBundle: {}, generateComponentPreload: { options: { namespaces: ["project/b"], diff --git a/packages/project/test/lib/build/definitions/library.js b/packages/project/test/lib/build/definitions/library.js index 83d4c17a5ec..444266638c4 100644 --- a/packages/project/test/lib/build/definitions/library.js +++ b/packages/project/test/lib/build/definitions/library.js @@ -93,7 +93,6 @@ test("Standard build", async (t) => { } }, generateLibraryManifest: {}, - generateManifestBundle: {}, generateLibraryPreload: { options: { excludes: [], skipBundles: [] @@ -200,7 +199,6 @@ test("Standard build with legacy spec version", (t) => { } }, generateLibraryManifest: {}, - generateManifestBundle: {}, generateLibraryPreload: { options: { excludes: [], skipBundles: [] @@ -318,7 +316,6 @@ test("Custom bundles", async (t) => { } }, generateLibraryManifest: {}, - generateManifestBundle: {}, generateLibraryPreload: { options: { excludes: [], diff --git a/packages/project/test/lib/build/helpers/composeTaskList.js b/packages/project/test/lib/build/helpers/composeTaskList.js index f817c7adf7b..3296cdfac8e 100644 --- a/packages/project/test/lib/build/helpers/composeTaskList.js +++ b/packages/project/test/lib/build/helpers/composeTaskList.js @@ -31,7 +31,6 @@ const allTasks = [ "transformBootstrapHtml", "generateLibraryManifest", "generateVersionInfo", - "generateManifestBundle", "generateFlexChangesBundle", "generateComponentPreload", "generateResourcesJson", @@ -164,7 +163,6 @@ const allTasks = [ "transformBootstrapHtml", "generateLibraryManifest", "generateVersionInfo", - "generateManifestBundle", "generateFlexChangesBundle", "generateComponentPreload", "generateResourcesJson", From 7224da7e44f5d282ac1b200e0d33a1a479ca7258 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 11 Nov 2022 10:15:45 +0000 Subject: [PATCH 0707/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.1-beta.0 to 3.0.1-beta.1 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.1-beta.1/CHANGELOG.md --- packages/project/package-lock.json | 322 +++++++++++++++++++++++++++-- packages/project/package.json | 2 +- 2 files changed, 310 insertions(+), 14 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c71ef88ec7f..2898800ebc8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-beta.1", "@ui5/fs": "^3.0.0-beta.2", - "@ui5/logger": "^3.0.1-beta.0", + "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", @@ -1047,17 +1047,120 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.1-beta.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-beta.0.tgz", - "integrity": "sha512-lSTuF6mamfam1U+7vC6uBohlfAqxRTFQSIthITGSmYhilCew/z9MV6jMVJv/o9byisa/8LQJYhGgJ/oBkic7Rw==", + "version": "3.0.1-beta.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-beta.1.tgz", + "integrity": "sha512-rkuru3lgFLPXlaWDVLO6+0JpWcp+dJDcu/aWWaNzYZwRRx1qFUOgjmw44gMTvLvVxAaTV9nda5/6oypOCF9Row==", "dependencies": { - "npmlog": "^6.0.2" + "npmlog": "^7.0.1" }, "engines": { - "node": ">= 16.13.2", + "node": "^16.18.0 || >=18.0.0", "npm": ">= 8" } }, + "node_modules/@ui5/logger/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@ui5/logger/node_modules/are-we-there-yet": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.0.tgz", + "integrity": "sha512-nSXlV+u3vtVjRgihdTzbfWYzxPWGo424zPgQbHD0ZqIla3jqYAewDcvee0Ua2hjS5IfTAmjGlx1Jf0PKwjZDEw==", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^4.1.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@ui5/logger/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/@ui5/logger/node_modules/gauge": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.0.tgz", + "integrity": "sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw==", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@ui5/logger/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@ui5/logger/node_modules/npmlog": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz", + "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==", + "dependencies": { + "are-we-there-yet": "^4.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^5.0.0", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@ui5/logger/node_modules/readable-stream": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.2.0.tgz", + "integrity": "sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@ui5/logger/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ui5/logger/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/@vue/compiler-core": { "version": "3.2.41", "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.41.tgz", @@ -1132,6 +1235,17 @@ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, "node_modules/acorn": { "version": "8.8.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", @@ -1459,6 +1573,25 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -1531,6 +1664,29 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "node_modules/buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -3554,6 +3710,22 @@ "node": ">=0.10.0" } }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, "node_modules/events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", @@ -4150,7 +4322,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, "funding": [ { "type": "github", @@ -6984,6 +7155,14 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -9970,11 +10149,92 @@ } }, "@ui5/logger": { - "version": "3.0.1-beta.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-beta.0.tgz", - "integrity": "sha512-lSTuF6mamfam1U+7vC6uBohlfAqxRTFQSIthITGSmYhilCew/z9MV6jMVJv/o9byisa/8LQJYhGgJ/oBkic7Rw==", + "version": "3.0.1-beta.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-beta.1.tgz", + "integrity": "sha512-rkuru3lgFLPXlaWDVLO6+0JpWcp+dJDcu/aWWaNzYZwRRx1qFUOgjmw44gMTvLvVxAaTV9nda5/6oypOCF9Row==", "requires": { - "npmlog": "^6.0.2" + "npmlog": "^7.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "are-we-there-yet": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.0.tgz", + "integrity": "sha512-nSXlV+u3vtVjRgihdTzbfWYzxPWGo424zPgQbHD0ZqIla3jqYAewDcvee0Ua2hjS5IfTAmjGlx1Jf0PKwjZDEw==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^4.1.0" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "gauge": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.0.tgz", + "integrity": "sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw==", + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + } + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "npmlog": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz", + "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==", + "requires": { + "are-we-there-yet": "^4.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^5.0.0", + "set-blocking": "^2.0.0" + } + }, + "readable-stream": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.2.0.tgz", + "integrity": "sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==", + "requires": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } } }, "@vue/compiler-core": { @@ -10051,6 +10311,14 @@ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, + "abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "requires": { + "event-target-shim": "^5.0.0" + } + }, "acorn": { "version": "8.8.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", @@ -10283,6 +10551,11 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, "binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -10333,6 +10606,15 @@ "update-browserslist-db": "^1.0.9" } }, + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -11855,6 +12137,16 @@ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, + "event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + }, "events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", @@ -12300,8 +12592,7 @@ "ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" }, "ignore": { "version": "5.2.0", @@ -14390,6 +14681,11 @@ "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==" }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index b0471754be2..d4dd45d5ef6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-beta.1", "@ui5/fs": "^3.0.0-beta.2", - "@ui5/logger": "^3.0.1-beta.0", + "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", From 93a0fe6aa0ec3f15c6898ac6e9e408e8ab74a17a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 11 Nov 2022 12:19:24 +0000 Subject: [PATCH 0708/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-beta.2 to 3.0.0-beta.3 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-beta.3/CHANGELOG.md --- packages/project/package-lock.json | 32 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2898800ebc8..6b57fd3b245 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-beta.1", - "@ui5/fs": "^3.0.0-beta.2", + "@ui5/fs": "^3.0.0-beta.3", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1026,23 +1026,23 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-beta.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.2.tgz", - "integrity": "sha512-oFLZ7dsugCrYw1p+sjY6QtR1stwP2ckkKlcxqKuemZ5i7xW2PwyX4oJRGmi3y28inAeiyeSSRkoqkcgRlUyNyQ==", + "version": "3.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.3.tgz", + "integrity": "sha512-FzHSX58yY6AlN5MHitrz/sp72oZRhK17QMeC2ARh8lUXPxJbsdHmRToRdlyUIl1ZAbOolkXttfzzVQnvt+M64g==", "dependencies": { - "@ui5/logger": "^3.0.1-beta.0", - "clone": "^2.1.0", + "@ui5/logger": "^3.0.1-beta.1", + "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", "globby": "^13.1.2", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.10", "make-dir": "^3.1.0", - "micromatch": "^4.0.4", + "micromatch": "^4.0.5", "minimatch": "^5.1.0", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, "engines": { - "node": ">= 16.13.2", + "node": "^16.18.0 || >=18.0.0", "npm": ">= 8" } }, @@ -10132,17 +10132,17 @@ } }, "@ui5/fs": { - "version": "3.0.0-beta.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.2.tgz", - "integrity": "sha512-oFLZ7dsugCrYw1p+sjY6QtR1stwP2ckkKlcxqKuemZ5i7xW2PwyX4oJRGmi3y28inAeiyeSSRkoqkcgRlUyNyQ==", + "version": "3.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.3.tgz", + "integrity": "sha512-FzHSX58yY6AlN5MHitrz/sp72oZRhK17QMeC2ARh8lUXPxJbsdHmRToRdlyUIl1ZAbOolkXttfzzVQnvt+M64g==", "requires": { - "@ui5/logger": "^3.0.1-beta.0", - "clone": "^2.1.0", + "@ui5/logger": "^3.0.1-beta.1", + "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", "globby": "^13.1.2", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.10", "make-dir": "^3.1.0", - "micromatch": "^4.0.4", + "micromatch": "^4.0.5", "minimatch": "^5.1.0", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index d4dd45d5ef6..0b8024b0a24 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-beta.1", - "@ui5/fs": "^3.0.0-beta.2", + "@ui5/fs": "^3.0.0-beta.3", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From ced9fd675c2ce30a296e7a5e7016f75405e9fbef Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 10 Nov 2022 15:12:07 +0100 Subject: [PATCH 0709/1272] [ui5-project][INTERNAL] Specifications: Make getReader/getWorkspace synchronous By using new factory API from https://github.com/SAP/ui5-fs/pull/438 --- packages/project/lib/build/ProjectBuilder.js | 6 ++-- packages/project/lib/graph/Module.js | 6 ++-- .../lib/specifications/ComponentProject.js | 32 +++++++++++++------ .../project/lib/specifications/Project.js | 9 +++--- .../lib/specifications/types/Module.js | 10 +++--- .../lib/specifications/types/ThemeLibrary.js | 10 +++--- .../project/test/lib/build/ProjectBuilder.js | 4 +-- .../createBuildManifest.integration.js | 4 +-- packages/project/test/lib/graph/Module.js | 2 +- .../lib/specifications/types/Application.js | 20 ++++++------ .../test/lib/specifications/types/Library.js | 16 +++++----- .../test/lib/specifications/types/Module.js | 10 +++--- .../lib/specifications/types/ThemeLibrary.js | 8 ++--- 13 files changed, 74 insertions(+), 63 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index a64a4e1bdd4..de3ee58a5fa 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -290,7 +290,7 @@ class ProjectBuilder { // Ignore project itself return; } - readers.push(await dep.getReader()); + readers.push(dep.getReader()); }); const dependencies = resourceFactory.createReaderCollection({ @@ -299,7 +299,7 @@ class ProjectBuilder { }); await taskRunner.runTasks({ - workspace: await project.getWorkspace(), + workspace: project.getWorkspace(), dependencies, }); } @@ -308,7 +308,7 @@ class ProjectBuilder { const project = projectBuildContext.getProject(); const taskUtil = projectBuildContext.getTaskUtil(); const buildConfig = this._buildContext.getBuildConfig(); - const reader = await project.getReader({ + const reader = project.getReader({ // Force buildtime (=namespaced) style when writing with a build manifest style: taskUtil.isRootProject() && buildConfig.createBuildManifest ? "buildtime" : "runtime" }); diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js index f69bab47357..86e1ccad6f1 100644 --- a/packages/project/lib/graph/Module.js +++ b/packages/project/lib/graph/Module.js @@ -295,7 +295,7 @@ class Module { } } else { // Handle relative file paths with the @ui5/fs (virtual) file system - const reader = await this.getReader(); + const reader = this.getReader(); let configResource; try { configResource = await reader.byPath(path.posix.join("/", configPath)); @@ -388,7 +388,7 @@ class Module { } async _readBuildManifest() { - const reader = await this.getReader(); + const reader = this.getReader(); const buildManifestResource = await reader.byPath("/.ui5/build-manifest.json"); if (buildManifestResource) { return JSON.parse(await buildManifestResource.getString()); @@ -405,7 +405,7 @@ class Module { /** * Resource Access */ - async getReader() { + getReader() { return createReader({ fsBasePath: this.getPath(), virBasePath: "/", diff --git a/packages/project/lib/specifications/ComponentProject.js b/packages/project/lib/specifications/ComponentProject.js index 268345f4a6d..a4a60a8aea1 100644 --- a/packages/project/lib/specifications/ComponentProject.js +++ b/packages/project/lib/specifications/ComponentProject.js @@ -97,9 +97,9 @@ class ComponentProject extends Project { * @param {object} [options] * @param {string} [options.style=buildtime] Path style to access resources. Can be "buildtime", "runtime" or "flat" * TODO: describe styles - * @returns {Promise<@ui5/fs/ReaderCollection>} A reader collection instance + * @returns {@ui5/fs/ReaderCollection} A reader collection instance */ - async getReader({style = "buildtime"} = {}) { + getReader({style = "buildtime"} = {}) { // TODO: Additional style 'ABAP' using "sap.platform.abap".uri from manifest.json? if (style === "runtime" && this._isRuntimeNamespaced) { @@ -115,19 +115,25 @@ class ComponentProject extends Project { // Use buildtime reader and link it to / // No test-resources for runtime resource access, // unless runtime is namespaced - reader = await reader.flatten(this._namespace); + reader = resourceFactory.createFlatReader({ + reader, + namespace: this._namespace + }); break; case "flat": // Use buildtime reader and link it to / // No test-resources for runtime resource access, // unless runtime is namespaced - reader = await reader.flatten(this._namespace); + reader = resourceFactory.createFlatReader({ + reader, + namespace: this._namespace + }); break; default: throw new Error(`Unknown path mapping style ${style}`); } - reader = await this._addWriter(reader, style); + reader = this._addWriter(reader, style); return reader; } @@ -153,9 +159,9 @@ class ComponentProject extends Project { * Get a resource reader/writer for accessing and modifying a project's resources * * @public - * @returns {Promise<@ui5/fs/ReaderCollection>} A reader collection instance + * @returns {@ui5/fs/ReaderCollection} A reader collection instance */ - async getWorkspace() { + getWorkspace() { // Workspace is always of style "buildtime" return resourceFactory.createWorkspace({ name: `Workspace for project ${this.getName()}`, @@ -207,7 +213,7 @@ class ComponentProject extends Project { return reader; } - async _addWriter(reader, style) { + _addWriter(reader, style) { const {namespaceWriter, generalWriter} = this._getWriter(); if (style === "runtime" && this._isRuntimeNamespaced) { @@ -224,14 +230,20 @@ class ComponentProject extends Project { } case "runtime": { // Runtime is not namespaced: link namespace to / - readers.push(await namespaceWriter.flatten(this._namespace)); + readers.push(resourceFactory.createFlatReader({ + reader: namespaceWriter, + namespace: this._namespace + })); // Add general writer as is readers.push(generalWriter); break; } case "flat": { // Rewrite paths from "flat" to "buildtime" - readers.push(await namespaceWriter.flatten(this._namespace)); + readers.push(resourceFactory.createFlatReader({ + reader: namespaceWriter, + namespace: this._namespace + })); // General writer resources can't be flattened, so they are not available break; } diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index 5b05d2c9eb1..2888b0ece05 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -141,10 +141,9 @@ class Project extends Specification { * @param {object} [options] * @param {string} [options.style=buildtime] Path style to access resources. Can be "buildtime", "runtime" or "flat" * This parameter might be ignored by some project types - * @returns {Promise<@ui5/fs/ReaderCollection>} Reader collection allowing access to all resources of the - * project + * @returns {@ui5/fs/ReaderCollection} Reader collection allowing access to all resources of the project */ - async getReader(options) { + getReader(options) { throw new Error(`getReader must be implemented by subclass ${this.constructor.name}`); } @@ -164,9 +163,9 @@ class Project extends Specification { * project's resources. This is always of style buildtime. * * @public - * @returns {Promise<@ui5/fs/DuplexCollection>} DuplexCollection + * @returns {@ui5/fs/DuplexCollection} DuplexCollection */ - async getWorkspace() { + getWorkspace() { throw new Error(`getWorkspace must be implemented by subclass ${this.constructor.name}`); } diff --git a/packages/project/lib/specifications/types/Module.js b/packages/project/lib/specifications/types/Module.js index 00233cfd252..f4a9774d9b0 100644 --- a/packages/project/lib/specifications/types/Module.js +++ b/packages/project/lib/specifications/types/Module.js @@ -33,9 +33,9 @@ class Module extends Project { * Get a resource reader for accessing the project resources * * @public - * @returns {Promise<@ui5/fs/ReaderCollection>} Reader collection + * @returns {@ui5/fs/ReaderCollection} Reader collection */ - async getReader() { + getReader() { const readers = this._paths.map((readerArgs) => resourceFactory.createReader(readerArgs)); if (readers.length === 1) { return readers[0]; @@ -54,10 +54,10 @@ class Module extends Project { * Get a resource reader/writer for accessing and modifying a project's resources * * @public - * @returns {Promise<@ui5/fs/ReaderCollection>} A reader collection instance + * @returns {@ui5/fs/ReaderCollection} A reader collection instance */ - async getWorkspace() { - const reader = await this.getReader(); + getWorkspace() { + const reader = this.getReader(); const writer = this._getWriter(); return resourceFactory.createWorkspace({ diff --git a/packages/project/lib/specifications/types/ThemeLibrary.js b/packages/project/lib/specifications/types/ThemeLibrary.js index de1ab3f152e..8f33dcd1bc4 100644 --- a/packages/project/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/lib/specifications/types/ThemeLibrary.js @@ -41,10 +41,10 @@ class ThemeLibrary extends Project { * runtime. * * @public - * @returns {Promise<@ui5/fs/ReaderCollection>} Reader collection allowing access to all resources of + * @returns {@ui5/fs/ReaderCollection} Reader collection allowing access to all resources of * the project */ - async getReader() { + getReader() { let reader = resourceFactory.createReader({ fsBasePath: this.getSourcePath(), virBasePath: "/resources/", @@ -81,10 +81,10 @@ class ThemeLibrary extends Project { * runtime. * * @public - * @returns {Promise<@ui5/fs/DuplexCollection>} DuplexCollection + * @returns {@ui5/fs/DuplexCollection} DuplexCollection */ - async getWorkspace() { - const reader = await this.getReader(); + getWorkspace() { + const reader = this.getReader(); const writer = this._getWriter(); return resourceFactory.createWorkspace({ diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 3b15ba723bf..8a0227f55fc 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -14,8 +14,8 @@ function getMockProject(type, id = "b") { getCopyright: noop, getVersion: noop, getSpecVersion: () => "0.1", - getReader: async () => "reader", - getWorkspace: async () => "workspace", + getReader: () => "reader", + getWorkspace: () => "workspace", }; } diff --git a/packages/project/test/lib/build/helpers/createBuildManifest.integration.js b/packages/project/test/lib/build/helpers/createBuildManifest.integration.js index a0aa65ba966..5b1674be320 100644 --- a/packages/project/test/lib/build/helpers/createBuildManifest.integration.js +++ b/packages/project/test/lib/build/helpers/createBuildManifest.integration.js @@ -64,7 +64,7 @@ test("Create project from application project providing a build manifest", async "Archive project has correct tag"); t.is(project.getVersion(), "2.0.0", "Archive project has version from archive module"); - const reader = await project.getReader(); + const reader = project.getReader(); const resources = await reader.byGlob("**/test.js"); t.is(resources.length, 1, "Found requested resource in archive project"); @@ -92,7 +92,7 @@ test("Create project from library project providing a build manifest", async (t) "Archive project has correct tag"); t.is(project.getVersion(), "2.0.0", "Archive project has version from archive module"); - const reader = await project.getReader(); + const reader = project.getReader(); const resources = await reader.byGlob("**/some.js"); t.is(resources.length, 1, "Found requested resource in archive project"); diff --git a/packages/project/test/lib/graph/Module.js b/packages/project/test/lib/graph/Module.js index 46457ee6692..b7c7ec8ed61 100644 --- a/packages/project/test/lib/graph/Module.js +++ b/packages/project/test/lib/graph/Module.js @@ -41,7 +41,7 @@ test("Instantiate a basic module", (t) => { test("Access module root resources via reader", async (t) => { const ui5Module = new Module(basicModuleInput); - const rootReader = await ui5Module.getReader(); + const rootReader = ui5Module.getReader(); const packageJsonResource = await rootReader.byPath("/package.json"); t.is(packageJsonResource.getPath(), "/package.json", "Successfully retrieved root resource"); }); diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 4e804ba2d4a..4c806462acd 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -54,7 +54,7 @@ test("getCachebusterSignatureType: Configuration", async (t) => { test("Access project resources via reader: buildtime style", async (t) => { const project = await Specification.create(basicProjectInput); - const reader = await project.getReader(); + const reader = project.getReader(); const resource = await reader.byPath("/resources/id1/manifest.json"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/resources/id1/manifest.json", "Resource has correct path"); @@ -62,7 +62,7 @@ test("Access project resources via reader: buildtime style", async (t) => { test("Access project resources via reader: flat style", async (t) => { const project = await Specification.create(basicProjectInput); - const reader = await project.getReader({style: "flat"}); + const reader = project.getReader({style: "flat"}); const resource = await reader.byPath("/manifest.json"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/manifest.json", "Resource has correct path"); @@ -70,7 +70,7 @@ test("Access project resources via reader: flat style", async (t) => { test("Access project resources via reader: runtime style", async (t) => { const project = await Specification.create(basicProjectInput); - const reader = await project.getReader({style: "runtime"}); + const reader = project.getReader({style: "runtime"}); const resource = await reader.byPath("/manifest.json"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/manifest.json", "Resource has correct path"); @@ -78,7 +78,7 @@ test("Access project resources via reader: runtime style", async (t) => { test("Modify project resources via workspace and access via flat and runtime readers", async (t) => { const project = await Specification.create(basicProjectInput); - const workspace = await project.getWorkspace(); + const workspace = project.getWorkspace(); const workspaceResource = await workspace.byPath("/resources/id1/index.html"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -86,7 +86,7 @@ test("Modify project resources via workspace and access via flat and runtime rea workspaceResource.setString(newContent); await workspace.write(workspaceResource); - const flatReader = await project.getReader({style: "flat"}); + const flatReader = project.getReader({style: "flat"}); const flatReaderResource = await flatReader.byPath("/index.html"); t.truthy(flatReaderResource, "Found the requested resource byPath"); t.is(flatReaderResource.getPath(), "/index.html", "Resource (byPath) has correct path"); @@ -97,7 +97,7 @@ test("Modify project resources via workspace and access via flat and runtime rea t.is(flatGlobResult[0].getPath(), "/index.html", "Resource (byGlob) has correct path"); t.is(await flatGlobResult[0].getString(), newContent, "Found resource (byGlob) has expected (changed) content"); - const runtimeReader = await project.getReader({style: "runtime"}); + const runtimeReader = project.getReader({style: "runtime"}); const runtimeReaderResource = await runtimeReader.byPath("/index.html"); t.truthy(runtimeReaderResource, "Found the requested resource byPath"); t.is(runtimeReaderResource.getPath(), "/index.html", "Resource (byPath) has correct path"); @@ -112,13 +112,13 @@ test("Modify project resources via workspace and access via flat and runtime rea test("Read and write resources outside of app namespace", async (t) => { const project = await Specification.create(basicProjectInput); - const workspace = await project.getWorkspace(); + const workspace = project.getWorkspace(); await workspace.write(createResource({ path: "/resources/my-custom-bundle.js" })); - const buildtimeReader = await project.getReader({style: "buildtime"}); + const buildtimeReader = project.getReader({style: "buildtime"}); const buildtimeReaderResource = await buildtimeReader.byPath("/resources/my-custom-bundle.js"); t.truthy(buildtimeReaderResource, "Found the requested resource byPath (buildtime)"); t.is(buildtimeReaderResource.getPath(), "/resources/my-custom-bundle.js", @@ -129,14 +129,14 @@ test("Read and write resources outside of app namespace", async (t) => { t.is(buildtimeGlobResult[0].getPath(), "/resources/my-custom-bundle.js", "Resource (byGlob) has correct path (buildtime)"); - const flatReader = await project.getReader({style: "flat"}); + const flatReader = project.getReader({style: "flat"}); const flatReaderResource = await flatReader.byPath("/resources/my-custom-bundle.js"); t.falsy(flatReaderResource, "Resource outside of app namespace can't be read using flat reader"); const flatGlobResult = await flatReader.byGlob("**/my-custom-bundle.js"); t.is(flatGlobResult.length, 0, "Resource outside of app namespace can't be found using flat reader"); - const runtimeReader = await project.getReader({style: "runtime"}); + const runtimeReader = project.getReader({style: "runtime"}); const runtimeReaderResource = await runtimeReader.byPath("/resources/my-custom-bundle.js"); t.truthy(runtimeReaderResource, "Found the requested resource byPath (runtime)"); t.is(runtimeReaderResource.getPath(), "/resources/my-custom-bundle.js", diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index fba37bb9d96..81318559e85 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -96,7 +96,7 @@ test("getJsdocExcludes: default", async (t) => { test("Access project resources via reader: buildtime style", async (t) => { const project = await (new Library().init(basicProjectInput)); - const reader = await project.getReader(); + const reader = project.getReader(); const resource = await reader.byPath("/resources/library/d/.library"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/resources/library/d/.library", "Resource has correct path"); @@ -104,7 +104,7 @@ test("Access project resources via reader: buildtime style", async (t) => { test("Access project resources via reader: flat style", async (t) => { const project = await (new Library().init(basicProjectInput)); - const reader = await project.getReader({style: "flat"}); + const reader = project.getReader({style: "flat"}); const resource = await reader.byPath("/.library"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/.library", "Resource has correct path"); @@ -112,7 +112,7 @@ test("Access project resources via reader: flat style", async (t) => { test("Access project test-resources via reader: buildtime style", async (t) => { const project = await (new Library().init(basicProjectInput)); - const reader = await project.getReader({style: "buildtime"}); + const reader = project.getReader({style: "buildtime"}); const resource = await reader.byPath("/test-resources/library/d/Test.html"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/test-resources/library/d/Test.html", "Resource has correct path"); @@ -120,7 +120,7 @@ test("Access project test-resources via reader: buildtime style", async (t) => { test("Access project test-resources via reader: runtime style", async (t) => { const project = await (new Library().init(basicProjectInput)); - const reader = await project.getReader({style: "runtime"}); + const reader = project.getReader({style: "runtime"}); const resource = await reader.byPath("/test-resources/library/d/Test.html"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/test-resources/library/d/Test.html", "Resource has correct path"); @@ -128,7 +128,7 @@ test("Access project test-resources via reader: runtime style", async (t) => { test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { const project = await (new Library().init(basicProjectInput)); - const workspace = await project.getWorkspace(); + const workspace = project.getWorkspace(); const workspaceResource = await workspace.byPath("/resources/library/d/.library"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -136,7 +136,7 @@ test("Modify project resources via workspace and access via flat and runtime rea workspaceResource.setString(newContent); await workspace.write(workspaceResource); - const flatReader = await project.getReader({style: "flat"}); + const flatReader = project.getReader({style: "flat"}); const flatReaderResource = await flatReader.byPath("/.library"); t.truthy(flatReaderResource, "Found the requested resource byPath (flat)"); t.is(flatReaderResource.getPath(), "/.library", "Resource (byPath) has correct path (flat)"); @@ -149,7 +149,7 @@ test("Modify project resources via workspace and access via flat and runtime rea t.is(await flatGlobResult[0].getString(), newContent, "Found resource (byGlob) has expected (changed) content (flat)"); - const runtimeReader = await project.getReader({style: "runtime"}); + const runtimeReader = project.getReader({style: "runtime"}); const runtimeReaderResource = await runtimeReader.byPath("/resources/library/d/.library"); t.truthy(runtimeReaderResource, "Found the requested resource byPath (runtime)"); t.is(runtimeReaderResource.getPath(), "/resources/library/d/.library", @@ -167,7 +167,7 @@ test("Modify project resources via workspace and access via flat and runtime rea test("Access flat project resources via reader: buildtime style", async (t) => { const project = await (new Library().init(flatProjectInput)); - const reader = await project.getReader({style: "buildtime"}); + const reader = project.getReader({style: "buildtime"}); const resource = await reader.byPath("/resources/library/h/some.js"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/resources/library/h/some.js", "Resource has correct path"); diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index edd344203dd..c8d4d9521cb 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -46,7 +46,7 @@ test("Correct class", async (t) => { test("Access project resources via reader", async (t) => { const project = await Specification.create(basicProjectInput); - const reader = await project.getReader(); + const reader = project.getReader(); const resource1 = await reader.byPath("/dev/devTools.js"); t.truthy(resource1, "Found the requested resource"); t.is(resource1.getPath(), "/dev/devTools.js", "Resource has correct path"); @@ -58,7 +58,7 @@ test("Access project resources via reader", async (t) => { test("Modify project resources via workspace and access via reader", async (t) => { const project = await Specification.create(basicProjectInput); - const workspace = await project.getWorkspace(); + const workspace = project.getWorkspace(); const workspaceResource = await workspace.byPath("/dev/devTools.js"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -66,7 +66,7 @@ test("Modify project resources via workspace and access via reader", async (t) = workspaceResource.setString(newContent); await workspace.write(workspaceResource); - const reader = await project.getReader(); + const reader = project.getReader(); const readerResource = await reader.byPath("/dev/devTools.js"); t.truthy(readerResource, "Found the requested resource byPath"); t.is(readerResource.getPath(), "/dev/devTools.js", "Resource (byPath) has correct path"); @@ -82,7 +82,7 @@ test("Modify project resources via workspace and access via reader", async (t) = test("Modify project resources via workspace and access via reader for other path mapping", async (t) => { const project = await Specification.create(basicProjectInput); - const workspace = await project.getWorkspace(); + const workspace = project.getWorkspace(); const workspaceResource = await workspace.byPath("/index.js"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -90,7 +90,7 @@ test("Modify project resources via workspace and access via reader for other pat workspaceResource.setString(newContent); await workspace.write(workspaceResource); - const reader = await project.getReader(); + const reader = project.getReader(); const readerResource = await reader.byPath("/index.js"); t.truthy(readerResource, "Found the requested resource byPath"); t.is(readerResource.getPath(), "/index.js", "Resource (byPath) has correct path"); diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js index 3ebc50e1ad7..f8f2752350a 100644 --- a/packages/project/test/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -44,7 +44,7 @@ test("getCopyright", async (t) => { test("Access project resources via reader", async (t) => { const project = await Specification.create(basicProjectInput); - const reader = await project.getReader(); + const reader = project.getReader(); const resource = await reader.byPath("/resources/theme/library/e/themes/my_theme/.theme"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/resources/theme/library/e/themes/my_theme/.theme", "Resource has correct path"); @@ -52,7 +52,7 @@ test("Access project resources via reader", async (t) => { test("Access project test-resources via reader", async (t) => { const project = await Specification.create(basicProjectInput); - const reader = await project.getReader(); + const reader = project.getReader(); const resource = await reader.byPath("/test-resources/theme/library/e/Test.html"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/test-resources/theme/library/e/Test.html", "Resource has correct path"); @@ -60,7 +60,7 @@ test("Access project test-resources via reader", async (t) => { test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { const project = await Specification.create(basicProjectInput); - const workspace = await project.getWorkspace(); + const workspace = project.getWorkspace(); const workspaceResource = await workspace.byPath("/resources/theme/library/e/themes/my_theme/library.source.less"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -68,7 +68,7 @@ test("Modify project resources via workspace and access via flat and runtime rea workspaceResource.setString(newContent); await workspace.write(workspaceResource); - const reader = await project.getReader(); + const reader = project.getReader(); const readerResource = await reader.byPath("/resources/theme/library/e/themes/my_theme/library.source.less"); t.truthy(readerResource, "Found the requested resource byPath"); t.is(readerResource.getPath(), "/resources/theme/library/e/themes/my_theme/library.source.less", From 5e440f5b313bab09b29c52a3ccd0a2d6203cd50a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 11 Nov 2022 13:09:13 +0000 Subject: [PATCH 0710/1272] [ui5-project]Release 3.0.0-beta.2 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 9ae3542226f..fc4dc725e5c 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-beta.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-beta.2...HEAD). + + +## [v3.0.0-beta.2] - 2022-11-10 ## [v3.0.0-beta.1] - 2022-11-07 @@ -352,6 +355,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-beta.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.1...v3.0.0-beta.2 [v3.0.0-beta.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.10...v3.0.0-beta.1 [v3.0.0-alpha.10]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.9...v3.0.0-alpha.10 [v3.0.0-alpha.9]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.8...v3.0.0-alpha.9 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6b57fd3b245..82f30f2ef08 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.1", + "version": "3.0.0-beta.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-beta.1", + "version": "3.0.0-beta.2", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-beta.1", diff --git a/packages/project/package.json b/packages/project/package.json index 0b8024b0a24..8e99bc18386 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.1", + "version": "3.0.0-beta.2", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From bdffaab5fa2be5c0018e68e6078392a961fa7a76 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 13 Nov 2022 03:20:28 +0000 Subject: [PATCH 0711/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 857 ++++++++++++----------------- 1 file changed, 357 insertions(+), 500 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 82f30f2ef08..aa910494dd5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -132,9 +132,9 @@ } }, "node_modules/@babel/generator": { - "version": "7.20.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.3.tgz", - "integrity": "sha512-Wl5ilw2UD1+ZYprHVprxHZJCFeBWlzZYOovE4SDYLZnqCOD11j+0QzNeEWKLLTWM7nixrZEh7vNIyb76MyJg3A==", + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", + "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", "dev": true, "dependencies": { "@babel/types": "^7.20.2", @@ -1058,143 +1058,40 @@ "npm": ">= 8" } }, - "node_modules/@ui5/logger/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@ui5/logger/node_modules/are-we-there-yet": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.0.tgz", - "integrity": "sha512-nSXlV+u3vtVjRgihdTzbfWYzxPWGo424zPgQbHD0ZqIla3jqYAewDcvee0Ua2hjS5IfTAmjGlx1Jf0PKwjZDEw==", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^4.1.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@ui5/logger/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/@ui5/logger/node_modules/gauge": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.0.tgz", - "integrity": "sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw==", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@ui5/logger/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@ui5/logger/node_modules/npmlog": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz", - "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==", - "dependencies": { - "are-we-there-yet": "^4.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^5.0.0", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@ui5/logger/node_modules/readable-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.2.0.tgz", - "integrity": "sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@ui5/logger/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@ui5/logger/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@vue/compiler-core": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.41.tgz", - "integrity": "sha512-oA4mH6SA78DT+96/nsi4p9DX97PHcNROxs51lYk7gb9Z4BPKQ3Mh+BLn6CQZBw857Iuhu28BfMSRHAlPvD4vlw==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.45.tgz", + "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.41", + "@vue/shared": "3.2.45", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.41.tgz", - "integrity": "sha512-xe5TbbIsonjENxJsYRbDJvthzqxLNk+tb3d/c47zgREDa/PCp6/Y4gC/skM4H6PIuX5DAxm7fFJdbjjUH2QTMw==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", + "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-core": "3.2.45", + "@vue/shared": "3.2.45" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.41.tgz", - "integrity": "sha512-+1P2m5kxOeaxVmJNXnBskAn3BenbTmbxBxWOtBq3mQTCokIreuMULFantBUclP0+KnzNCMOvcnKinqQZmiOF8w==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", + "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.41", - "@vue/compiler-dom": "3.2.41", - "@vue/compiler-ssr": "3.2.41", - "@vue/reactivity-transform": "3.2.41", - "@vue/shared": "3.2.41", + "@vue/compiler-core": "3.2.45", + "@vue/compiler-dom": "3.2.45", + "@vue/compiler-ssr": "3.2.45", + "@vue/reactivity-transform": "3.2.45", + "@vue/shared": "3.2.45", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -1202,32 +1099,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.41.tgz", - "integrity": "sha512-Y5wPiNIiaMz/sps8+DmhaKfDm1xgj6GrH99z4gq2LQenfVQcYXmHIOBcs5qPwl7jaW3SUQWjkAPKMfQemEQZwQ==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", + "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-dom": "3.2.45", + "@vue/shared": "3.2.45" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.41.tgz", - "integrity": "sha512-mK5+BNMsL4hHi+IR3Ft/ho6Za+L3FA5j8WvreJ7XzHrqkPq8jtF/SMo7tuc9gHjLDwKZX1nP1JQOKo9IEAn54A==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", + "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.41", - "@vue/shared": "3.2.41", + "@vue/compiler-core": "3.2.45", + "@vue/shared": "3.2.45", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "node_modules/@vue/shared": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.41.tgz", - "integrity": "sha512-W9mfWLHmJhkfAmV+7gDjcHeAWALQtgGT3JErxULl0oz6R6+3ug91I7IErs93eCFhPCZPHBs4QJS7YWEV7A3sxw==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.45.tgz", + "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==", "dev": true }, "node_modules/abbrev": { @@ -1398,15 +1295,15 @@ "dev": true }, "node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.0.tgz", + "integrity": "sha512-nSXlV+u3vtVjRgihdTzbfWYzxPWGo424zPgQbHD0ZqIla3jqYAewDcvee0Ua2hjS5IfTAmjGlx1Jf0PKwjZDEw==", "dependencies": { "delegates": "^1.0.0", - "readable-stream": "^3.6.0" + "readable-stream": "^4.1.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/argparse": { @@ -2459,9 +2356,9 @@ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, "node_modules/cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "dev": true, "dependencies": { "@types/parse-json": "^4.0.0", @@ -3102,21 +2999,6 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/duplexer2/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/duplexer2/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -3968,9 +3850,9 @@ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.0.tgz", + "integrity": "sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw==", "dependencies": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.3", @@ -3982,7 +3864,7 @@ "wide-align": "^1.1.5" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/gauge/node_modules/ansi-regex": { @@ -5966,6 +5848,26 @@ "node": "^12.22 || ^14.13 || >=16" } }, + "node_modules/node-gyp/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/node-gyp/node_modules/are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/node-gyp/node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -5975,6 +5877,29 @@ "concat-map": "0.0.1" } }, + "node_modules/node-gyp/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/node-gyp/node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/node-gyp/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -5994,6 +5919,14 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/node-gyp/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, "node_modules/node-gyp/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -6005,6 +5938,57 @@ "node": "*" } }, + "node_modules/node-gyp/node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/node-gyp/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/node-gyp/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/node-gyp/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -6225,17 +6209,17 @@ } }, "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz", + "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==", "dependencies": { - "are-we-there-yet": "^3.0.0", + "are-we-there-yet": "^4.0.0", "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", + "gauge": "^5.0.0", "set-blocking": "^2.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/nth-check": { @@ -7084,9 +7068,9 @@ } }, "node_modules/postcss": { - "version": "8.4.18", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.18.tgz", - "integrity": "sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==", + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", "dev": true, "funding": [ { @@ -7475,16 +7459,17 @@ } }, "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.2.0.tgz", + "integrity": "sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==", "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" }, "engines": { - "node": ">= 6" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/readable-web-to-node-stream": { @@ -7503,13 +7488,27 @@ "url": "https://github.com/sponsors/Borewit" } }, - "node_modules/readdirp": { + "node_modules/readable-web-to-node-stream/node_modules/readable-stream": { "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, "dependencies": { - "picomatch": "^2.2.1" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" }, "engines": { "node": ">=8.10.0" @@ -7601,19 +7600,6 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/replacestream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/replacestream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -7773,23 +7759,9 @@ } }, "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "node_modules/safer-buffer": { "version": "2.1.2", @@ -7798,9 +7770,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.56.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.0.tgz", - "integrity": "sha512-WFJ9XrpkcnqZcYuLRJh5qiV6ibQOR4AezleeEjTjMsCocYW59dEG19U3fwTTXxzi2Ed3yjPBp727hbbj53pHFw==", + "version": "1.56.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.1.tgz", + "integrity": "sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8114,9 +8086,9 @@ } }, "node_modules/stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, "dependencies": { "escape-string-regexp": "^2.0.0" @@ -8135,11 +8107,11 @@ } }, "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dependencies": { - "safe-buffer": "~5.2.0" + "safe-buffer": "~5.1.0" } }, "node_modules/string-width": { @@ -8452,23 +8424,6 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/tap-parser/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "node_modules/tap-parser/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/tap-xunit": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", @@ -8532,23 +8487,6 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/tap-xunit/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "node_modules/tap-xunit/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/tap-xunit/node_modules/tap-parser": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", @@ -8748,21 +8686,6 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/through2/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/through2/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/time-zone": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", @@ -9423,9 +9346,9 @@ } }, "@babel/generator": { - "version": "7.20.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.3.tgz", - "integrity": "sha512-Wl5ilw2UD1+ZYprHVprxHZJCFeBWlzZYOovE4SDYLZnqCOD11j+0QzNeEWKLLTWM7nixrZEh7vNIyb76MyJg3A==", + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", + "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", "dev": true, "requires": { "@babel/types": "^7.20.2", @@ -10154,123 +10077,42 @@ "integrity": "sha512-rkuru3lgFLPXlaWDVLO6+0JpWcp+dJDcu/aWWaNzYZwRRx1qFUOgjmw44gMTvLvVxAaTV9nda5/6oypOCF9Row==", "requires": { "npmlog": "^7.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "are-we-there-yet": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.0.tgz", - "integrity": "sha512-nSXlV+u3vtVjRgihdTzbfWYzxPWGo424zPgQbHD0ZqIla3jqYAewDcvee0Ua2hjS5IfTAmjGlx1Jf0PKwjZDEw==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^4.1.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "gauge": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.0.tgz", - "integrity": "sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw==", - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "npmlog": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz", - "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==", - "requires": { - "are-we-there-yet": "^4.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^5.0.0", - "set-blocking": "^2.0.0" - } - }, - "readable-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.2.0.tgz", - "integrity": "sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==", - "requires": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "@vue/compiler-core": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.41.tgz", - "integrity": "sha512-oA4mH6SA78DT+96/nsi4p9DX97PHcNROxs51lYk7gb9Z4BPKQ3Mh+BLn6CQZBw857Iuhu28BfMSRHAlPvD4vlw==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.45.tgz", + "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.41", + "@vue/shared": "3.2.45", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.41.tgz", - "integrity": "sha512-xe5TbbIsonjENxJsYRbDJvthzqxLNk+tb3d/c47zgREDa/PCp6/Y4gC/skM4H6PIuX5DAxm7fFJdbjjUH2QTMw==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", + "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-core": "3.2.45", + "@vue/shared": "3.2.45" } }, "@vue/compiler-sfc": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.41.tgz", - "integrity": "sha512-+1P2m5kxOeaxVmJNXnBskAn3BenbTmbxBxWOtBq3mQTCokIreuMULFantBUclP0+KnzNCMOvcnKinqQZmiOF8w==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", + "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.41", - "@vue/compiler-dom": "3.2.41", - "@vue/compiler-ssr": "3.2.41", - "@vue/reactivity-transform": "3.2.41", - "@vue/shared": "3.2.41", + "@vue/compiler-core": "3.2.45", + "@vue/compiler-dom": "3.2.45", + "@vue/compiler-ssr": "3.2.45", + "@vue/reactivity-transform": "3.2.45", + "@vue/shared": "3.2.45", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -10278,32 +10120,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.41.tgz", - "integrity": "sha512-Y5wPiNIiaMz/sps8+DmhaKfDm1xgj6GrH99z4gq2LQenfVQcYXmHIOBcs5qPwl7jaW3SUQWjkAPKMfQemEQZwQ==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", + "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.41", - "@vue/shared": "3.2.41" + "@vue/compiler-dom": "3.2.45", + "@vue/shared": "3.2.45" } }, "@vue/reactivity-transform": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.41.tgz", - "integrity": "sha512-mK5+BNMsL4hHi+IR3Ft/ho6Za+L3FA5j8WvreJ7XzHrqkPq8jtF/SMo7tuc9gHjLDwKZX1nP1JQOKo9IEAn54A==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", + "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.41", - "@vue/shared": "3.2.41", + "@vue/compiler-core": "3.2.45", + "@vue/shared": "3.2.45", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.41", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.41.tgz", - "integrity": "sha512-W9mfWLHmJhkfAmV+7gDjcHeAWALQtgGT3JErxULl0oz6R6+3ug91I7IErs93eCFhPCZPHBs4QJS7YWEV7A3sxw==", + "version": "3.2.45", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.45.tgz", + "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==", "dev": true }, "abbrev": { @@ -10424,12 +10266,12 @@ "dev": true }, "are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.0.tgz", + "integrity": "sha512-nSXlV+u3vtVjRgihdTzbfWYzxPWGo424zPgQbHD0ZqIla3jqYAewDcvee0Ua2hjS5IfTAmjGlx1Jf0PKwjZDEw==", "requires": { "delegates": "^1.0.0", - "readable-stream": "^3.6.0" + "readable-stream": "^4.1.0" } }, "argparse": { @@ -11207,9 +11049,9 @@ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, "cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "dev": true, "requires": { "@types/parse-json": "^4.0.0", @@ -11689,21 +11531,6 @@ "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } } } }, @@ -12328,9 +12155,9 @@ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.0.tgz", + "integrity": "sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw==", "requires": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.3", @@ -13818,6 +13645,20 @@ "which": "^2.0.2" }, "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -13827,6 +13668,26 @@ "concat-map": "0.0.1" } }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + } + }, "glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -13840,6 +13701,11 @@ "path-is-absolute": "^1.0.0" } }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, "minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -13847,6 +13713,45 @@ "requires": { "brace-expansion": "^1.1.7" } + }, + "npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "requires": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + } + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } } } }, @@ -14018,13 +13923,13 @@ } }, "npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz", + "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==", "requires": { - "are-we-there-yet": "^3.0.0", + "are-we-there-yet": "^4.0.0", "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", + "gauge": "^5.0.0", "set-blocking": "^2.0.0" } }, @@ -14641,9 +14546,9 @@ } }, "postcss": { - "version": "8.4.18", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.18.tgz", - "integrity": "sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==", + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", "dev": true, "requires": { "nanoid": "^3.3.4", @@ -14893,13 +14798,14 @@ } }, "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.2.0.tgz", + "integrity": "sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==", "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" } }, "readable-web-to-node-stream": { @@ -14909,6 +14815,19 @@ "dev": true, "requires": { "readable-stream": "^3.6.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } } }, "readdirp": { @@ -14984,19 +14903,6 @@ "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } } } }, @@ -15110,9 +15016,9 @@ } }, "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safer-buffer": { "version": "2.1.2", @@ -15121,9 +15027,9 @@ "optional": true }, "sass": { - "version": "1.56.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.0.tgz", - "integrity": "sha512-WFJ9XrpkcnqZcYuLRJh5qiV6ibQOR4AezleeEjTjMsCocYW59dEG19U3fwTTXxzi2Ed3yjPBp727hbbj53pHFw==", + "version": "1.56.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.1.tgz", + "integrity": "sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -15368,9 +15274,9 @@ } }, "stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, "requires": { "escape-string-regexp": "^2.0.0" @@ -15385,11 +15291,11 @@ } }, "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "requires": { - "safe-buffer": "~5.2.0" + "safe-buffer": "~5.1.0" } }, "string-width": { @@ -15622,23 +15528,6 @@ "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } } } }, @@ -15698,23 +15587,6 @@ "util-deprecate": "~1.0.1" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, "tap-parser": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", @@ -15874,21 +15746,6 @@ "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } } } }, From 0051378a42a87ece24b26c66bb752366e7a38856 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 13 Nov 2022 10:03:29 +0000 Subject: [PATCH 0712/1272] [ui5-project]Bump ava from 4.3.3 to 5.0.1 Bumps [ava](https://github.com/avajs/ava) from 4.3.3 to 5.0.1. - [Release notes](https://github.com/avajs/ava/releases) - [Commits](https://github.com/avajs/ava/compare/v4.3.3...v5.0.1) --- updated-dependencies: - dependency-name: ava dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 285 +++++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 109 insertions(+), 178 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index aa910494dd5..b8b494b0ef7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -32,7 +32,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^4.3.3", + "ava": "^5.0.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", @@ -1371,14 +1371,14 @@ } }, "node_modules/ava": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/ava/-/ava-4.3.3.tgz", - "integrity": "sha512-9Egq/d9R74ExrWohHeqUlexjDbgZJX5jA1Wq4KCTqc3wIfpGEK79zVy4rBtofJ9YKIxs4PzhJ8BgbW5PlAYe6w==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-5.0.1.tgz", + "integrity": "sha512-nS1eK3HhWaC+eGHtteF5j4yZMjaIE+q2o+oyqD75xsmS87R5sGlxADYWkFIGyB28jrDmAATZAAx+s3JhYsnhNw==", "dev": true, "dependencies": { - "acorn": "^8.7.1", + "acorn": "^8.8.0", "acorn-walk": "^8.2.0", - "ansi-styles": "^6.1.0", + "ansi-styles": "^6.1.1", "arrgv": "^1.0.2", "arrify": "^3.0.0", "callsites": "^4.0.0", @@ -1386,7 +1386,7 @@ "chalk": "^5.0.1", "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^3.3.1", + "ci-info": "^3.4.0", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-truncate": "^3.1.0", @@ -1395,10 +1395,10 @@ "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", "debug": "^4.3.4", - "del": "^6.1.1", - "emittery": "^0.11.0", - "figures": "^4.0.1", - "globby": "^13.1.1", + "del": "^7.0.0", + "emittery": "^1.0.0", + "figures": "^5.0.0", + "globby": "^13.1.2", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", "is-error": "^2.2.2", @@ -1408,25 +1408,25 @@ "mem": "^9.0.2", "ms": "^2.1.3", "p-event": "^5.0.1", - "p-map": "^5.4.0", + "p-map": "^5.5.0", "picomatch": "^2.3.1", "pkg-conf": "^4.0.0", "plur": "^5.1.0", - "pretty-ms": "^7.0.1", + "pretty-ms": "^8.0.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.5", "strip-ansi": "^7.0.1", "supertap": "^3.0.1", "temp-dir": "^2.0.0", - "write-file-atomic": "^4.0.1", + "write-file-atomic": "^4.0.2", "yargs": "^17.5.1" }, "bin": { "ava": "entrypoints/cli.mjs" }, "engines": { - "node": ">=12.22 <13 || >=14.17 <15 || >=16.4 <17 || >=18" + "node": ">=14.19 <15 || >=16.15 <17 || >=18" }, "peerDependencies": { "@ava/typescript": "*" @@ -2584,88 +2584,46 @@ } }, "node_modules/del": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", - "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-7.0.0.tgz", + "integrity": "sha512-tQbV/4u5WVB8HMJr08pgw0b6nG4RGt/tj+7Numvq+zqcvUFeMaIWWOUFltiU+6go8BSO2/ogsB4EasDaj0y68Q==", "dev": true, "dependencies": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", + "globby": "^13.1.2", + "graceful-fs": "^4.2.10", + "is-glob": "^4.0.3", + "is-path-cwd": "^3.0.0", + "is-path-inside": "^4.0.0", + "p-map": "^5.5.0", "rimraf": "^3.0.2", - "slash": "^3.0.0" + "slash": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/del/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/del/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/del/node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "node_modules/del/node_modules/is-path-inside": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", + "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/del/node_modules/indent-string": { + "node_modules/del/node_modules/slash": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/del/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -3036,12 +2994,12 @@ "dev": true }, "node_modules/emittery": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.11.0.tgz", - "integrity": "sha512-S/7tzL6v5i+4iJd627Nhv9cLFIo5weAIlGccqJFpnBoDB8U1TF2k5tez4J/QNuxyyhWuFqHg1L84Kd3m7iXg6g==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.0.1.tgz", + "integrity": "sha512-2ID6FdrMD9KDLldGesP6317G78K7km/kMcwItRtVFva7I/cSEOIaLpewaUb+YLXVwdAp3Ctfxh/V5zIl1sj7dQ==", "dev": true, "engines": { - "node": ">=12" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sindresorhus/emittery?sponsor=1" @@ -3665,16 +3623,16 @@ "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" }, "node_modules/figures": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/figures/-/figures-4.0.1.tgz", - "integrity": "sha512-rElJwkA/xS04Vfg+CaZodpso7VqBknOYbzi6I76hI4X80RUjkSxO2oAyPmGbuXUppywjqndOrQDl817hDnI++w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", + "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", "dev": true, "dependencies": { "escape-string-regexp": "^5.0.0", "is-unicode-supported": "^1.2.0" }, "engines": { - "node": ">=12" + "node": ">=14" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -4451,12 +4409,15 @@ } }, "node_modules/is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-3.0.0.tgz", + "integrity": "sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==", "dev": true, "engines": { - "node": ">=6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-path-inside": { @@ -6773,12 +6734,15 @@ } }, "node_modules/parse-ms": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", - "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-3.0.0.tgz", + "integrity": "sha512-Tpb8Z7r7XbbtBTrM9UhpkzzaMrqA2VXMT3YChzYltwV3P3pM6t8wl7TvpMnSTosz1aQAdVib7kdoys7vYOPerw==", "dev": true, "engines": { - "node": ">=6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/parse5": { @@ -7117,15 +7081,15 @@ } }, "node_modules/pretty-ms": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz", - "integrity": "sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-8.0.0.tgz", + "integrity": "sha512-ASJqOugUF1bbzI35STMBUpZqdfYKlJugy6JBziGi2EE+AL5JPJGSzvpeVXojxrr0ViUYoToUjb5kjSEGf7Y83Q==", "dev": true, "dependencies": { - "parse-ms": "^2.1.0" + "parse-ms": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -10315,14 +10279,14 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/ava/-/ava-4.3.3.tgz", - "integrity": "sha512-9Egq/d9R74ExrWohHeqUlexjDbgZJX5jA1Wq4KCTqc3wIfpGEK79zVy4rBtofJ9YKIxs4PzhJ8BgbW5PlAYe6w==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-5.0.1.tgz", + "integrity": "sha512-nS1eK3HhWaC+eGHtteF5j4yZMjaIE+q2o+oyqD75xsmS87R5sGlxADYWkFIGyB28jrDmAATZAAx+s3JhYsnhNw==", "dev": true, "requires": { - "acorn": "^8.7.1", + "acorn": "^8.8.0", "acorn-walk": "^8.2.0", - "ansi-styles": "^6.1.0", + "ansi-styles": "^6.1.1", "arrgv": "^1.0.2", "arrify": "^3.0.0", "callsites": "^4.0.0", @@ -10330,7 +10294,7 @@ "chalk": "^5.0.1", "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^3.3.1", + "ci-info": "^3.4.0", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-truncate": "^3.1.0", @@ -10339,10 +10303,10 @@ "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", "debug": "^4.3.4", - "del": "^6.1.1", - "emittery": "^0.11.0", - "figures": "^4.0.1", - "globby": "^13.1.1", + "del": "^7.0.0", + "emittery": "^1.0.0", + "figures": "^5.0.0", + "globby": "^13.1.2", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", "is-error": "^2.2.2", @@ -10352,18 +10316,18 @@ "mem": "^9.0.2", "ms": "^2.1.3", "p-event": "^5.0.1", - "p-map": "^5.4.0", + "p-map": "^5.5.0", "picomatch": "^2.3.1", "pkg-conf": "^4.0.0", "plur": "^5.1.0", - "pretty-ms": "^7.0.1", + "pretty-ms": "^8.0.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.5", "strip-ansi": "^7.0.1", "supertap": "^3.0.1", "temp-dir": "^2.0.0", - "write-file-atomic": "^4.0.1", + "write-file-atomic": "^4.0.2", "yargs": "^17.5.1" }, "dependencies": { @@ -11209,65 +11173,32 @@ "dev": true }, "del": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", - "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-7.0.0.tgz", + "integrity": "sha512-tQbV/4u5WVB8HMJr08pgw0b6nG4RGt/tj+7Numvq+zqcvUFeMaIWWOUFltiU+6go8BSO2/ogsB4EasDaj0y68Q==", "dev": true, "requires": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", + "globby": "^13.1.2", + "graceful-fs": "^4.2.10", + "is-glob": "^4.0.3", + "is-path-cwd": "^3.0.0", + "is-path-inside": "^4.0.0", + "p-map": "^5.5.0", "rimraf": "^3.0.2", - "slash": "^3.0.0" + "slash": "^4.0.0" }, "dependencies": { - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "indent-string": { + "is-path-inside": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", + "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", "dev": true }, - "p-map": { + "slash": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true } } }, @@ -11567,9 +11498,9 @@ "dev": true }, "emittery": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.11.0.tgz", - "integrity": "sha512-S/7tzL6v5i+4iJd627Nhv9cLFIo5weAIlGccqJFpnBoDB8U1TF2k5tez4J/QNuxyyhWuFqHg1L84Kd3m7iXg6g==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.0.1.tgz", + "integrity": "sha512-2ID6FdrMD9KDLldGesP6317G78K7km/kMcwItRtVFva7I/cSEOIaLpewaUb+YLXVwdAp3Ctfxh/V5zIl1sj7dQ==", "dev": true }, "emoji-regex": { @@ -12028,9 +11959,9 @@ "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" }, "figures": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/figures/-/figures-4.0.1.tgz", - "integrity": "sha512-rElJwkA/xS04Vfg+CaZodpso7VqBknOYbzi6I76hI4X80RUjkSxO2oAyPmGbuXUppywjqndOrQDl817hDnI++w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", + "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", "dev": true, "requires": { "escape-string-regexp": "^5.0.0", @@ -12589,9 +12520,9 @@ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" }, "is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-3.0.0.tgz", + "integrity": "sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==", "dev": true }, "is-path-inside": { @@ -14347,9 +14278,9 @@ } }, "parse-ms": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", - "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-3.0.0.tgz", + "integrity": "sha512-Tpb8Z7r7XbbtBTrM9UhpkzzaMrqA2VXMT3YChzYltwV3P3pM6t8wl7TvpMnSTosz1aQAdVib7kdoys7vYOPerw==", "dev": true }, "parse5": { @@ -14573,12 +14504,12 @@ "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==" }, "pretty-ms": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz", - "integrity": "sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-8.0.0.tgz", + "integrity": "sha512-ASJqOugUF1bbzI35STMBUpZqdfYKlJugy6JBziGi2EE+AL5JPJGSzvpeVXojxrr0ViUYoToUjb5kjSEGf7Y83Q==", "dev": true, "requires": { - "parse-ms": "^2.1.0" + "parse-ms": "^3.0.0" } }, "proc-log": { diff --git a/packages/project/package.json b/packages/project/package.json index 8e99bc18386..24624c47c9d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -138,7 +138,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^4.3.3", + "ava": "^5.0.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", From ca8c50dc5054777ece9f31d589d0a50acd206cae Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Mon, 14 Nov 2022 14:05:42 +0100 Subject: [PATCH 0713/1272] [ui5-project][INTERNAL] Enforce prefix for dependency updates (#506) --- packages/project/.github/dependabot.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/project/.github/dependabot.yml b/packages/project/.github/dependabot.yml index 7069672336d..46e95262781 100644 --- a/packages/project/.github/dependabot.yml +++ b/packages/project/.github/dependabot.yml @@ -15,3 +15,6 @@ updates: - RandomByte - matz3 versioning-strategy: increase + commit-message: + prefix: "[DEPENDENCY] " + prefix-development: "[INTERNAL] " From 154482bd4609639052ebd5a54411bebf50fe2584 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Nov 2022 14:29:35 +0100 Subject: [PATCH 0714/1272] [ui5-project]Bump eslint-plugin-jsdoc from 37.9.7 to 39.6.2 (#510) * Bump eslint-plugin-jsdoc from 37.9.7 to 39.6.2 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 37.9.7 to 39.6.2. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v37.9.7...v39.6.2) --- updated-dependencies: - dependency-name: eslint-plugin-jsdoc dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] * [INTERNAL] Fix jsdoc Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Florian Vogt --- .../lib/build/helpers/composeProjectList.js | 2 +- packages/project/package-lock.json | 95 ++++++++----------- packages/project/package.json | 2 +- 3 files changed, 41 insertions(+), 58 deletions(-) diff --git a/packages/project/lib/build/helpers/composeProjectList.js b/packages/project/lib/build/helpers/composeProjectList.js index ff97ad169e9..d099b299271 100644 --- a/packages/project/lib/build/helpers/composeProjectList.js +++ b/packages/project/lib/build/helpers/composeProjectList.js @@ -6,7 +6,7 @@ const log = logger.getLogger("build:helpers:composeProjectList"); * its value is an array of all of its transitive dependencies. * * @param {@ui5/project/graph/ProjectGraph} graph - * @returns {Promise>} A promise resolving to an object with dependency names as + * @returns {Promise>} A promise resolving to an object with dependency names as * key and each with an array of its transitive dependencies as value */ async function getFlattenedDependencyTree(graph) { diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b8b494b0ef7..25a3165bc83 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,7 +40,7 @@ "eslint": "^8.27.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", - "eslint-plugin-jsdoc": "^37.9.7", + "eslint-plugin-jsdoc": "^39.6.2", "esmock": "^2.0.7", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -449,17 +449,17 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.20.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.20.1.tgz", - "integrity": "sha512-oeJK41dcdqkvdZy/HctKklJNkt/jh+av3PZARrZEl+fs/8HaHeeYoAvEwOV0u5I6bArTF17JEsTZMY359e/nfQ==", + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.0.tgz", + "integrity": "sha512-u0XZyvUF6Urb2cSivSXA8qXIpT/CxkHcdtZKoWusAzgzmsTWpg0F2FpWXsolHmMUyVY3dLWaoy+0ccJ5uf2QjA==", "dev": true, "dependencies": { - "comment-parser": "1.3.0", + "comment-parser": "1.3.1", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~2.2.3" + "jsdoc-type-pratt-parser": "~3.1.0" }, "engines": { - "node": "^12 || ^14 || ^16 || ^17" + "node": "^14 || ^16 || ^17 || ^18 || ^19" } }, "node_modules/@eslint/eslintrc": { @@ -2276,9 +2276,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "node_modules/comment-parser": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.0.tgz", - "integrity": "sha512-hRpmWIKgzd81vn0ydoWoyPoALEOnF4wt8yKD35Ib1D6XC2siLiYaiqfGkYrunuKdsXGwpBpHU3+9r+RVw2NZfA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", + "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", "dev": true, "engines": { "node": ">= 12.0.0" @@ -3198,22 +3198,21 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "37.9.7", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.7.tgz", - "integrity": "sha512-8alON8yYcStY94o0HycU2zkLKQdcS+qhhOUNQpfONHHwvI99afbmfpYuPqf6PbLz5pLZldG3Te5I0RbAiTN42g==", + "version": "39.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.2.tgz", + "integrity": "sha512-dvgY/W7eUFoAIIiaWHERIMI61ZWqcz9YFjEeyTzdPlrZc3TY/3aZm5aB91NUoTLWYZmO/vFlYSuQi15tF7uE5A==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.20.1", - "comment-parser": "1.3.0", - "debug": "^4.3.3", + "@es-joy/jsdoccomment": "~0.36.0", + "comment-parser": "1.3.1", + "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.4.0", - "regextras": "^0.8.0", - "semver": "^7.3.5", + "semver": "^7.3.8", "spdx-expression-parse": "^3.0.1" }, "engines": { - "node": "^12 || ^14 || ^16 || ^17" + "node": "^14 || ^16 || ^17 || ^18 || ^19" }, "peerDependencies": { "eslint": "^7.0.0 || ^8.0.0" @@ -4750,9 +4749,9 @@ } }, "node_modules/jsdoc-type-pratt-parser": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.5.tgz", - "integrity": "sha512-2a6eRxSxp1BW040hFvaJxhsCMI9lT8QB8t14t+NY5tC5rckIR0U9cr2tjOeaFirmEOy6MHvmJnY7zTBHq431Lw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", + "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", "dev": true, "engines": { "node": ">=12.0.0" @@ -7506,15 +7505,6 @@ "url": "https://github.com/sponsors/mysticatea" } }, - "node_modules/regextras": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.8.0.tgz", - "integrity": "sha512-k519uI04Z3SaY0fLX843MRXnDeG2+vHOFsyhiPZvNLe7r8rD2YNRjq4BQLZZ0oAr2NrtvZlICsXysGNFPGa3CQ==", - "dev": true, - "engines": { - "node": ">=0.1.14" - } - }, "node_modules/release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", @@ -9549,14 +9539,14 @@ } }, "@es-joy/jsdoccomment": { - "version": "0.20.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.20.1.tgz", - "integrity": "sha512-oeJK41dcdqkvdZy/HctKklJNkt/jh+av3PZARrZEl+fs/8HaHeeYoAvEwOV0u5I6bArTF17JEsTZMY359e/nfQ==", + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.0.tgz", + "integrity": "sha512-u0XZyvUF6Urb2cSivSXA8qXIpT/CxkHcdtZKoWusAzgzmsTWpg0F2FpWXsolHmMUyVY3dLWaoy+0ccJ5uf2QjA==", "dev": true, "requires": { - "comment-parser": "1.3.0", + "comment-parser": "1.3.1", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~2.2.3" + "jsdoc-type-pratt-parser": "~3.1.0" } }, "@eslint/eslintrc": { @@ -10942,9 +10932,9 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "comment-parser": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.0.tgz", - "integrity": "sha512-hRpmWIKgzd81vn0ydoWoyPoALEOnF4wt8yKD35Ib1D6XC2siLiYaiqfGkYrunuKdsXGwpBpHU3+9r+RVw2NZfA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", + "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", "dev": true }, "common-path-prefix": { @@ -11755,18 +11745,17 @@ } }, "eslint-plugin-jsdoc": { - "version": "37.9.7", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.7.tgz", - "integrity": "sha512-8alON8yYcStY94o0HycU2zkLKQdcS+qhhOUNQpfONHHwvI99afbmfpYuPqf6PbLz5pLZldG3Te5I0RbAiTN42g==", + "version": "39.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.2.tgz", + "integrity": "sha512-dvgY/W7eUFoAIIiaWHERIMI61ZWqcz9YFjEeyTzdPlrZc3TY/3aZm5aB91NUoTLWYZmO/vFlYSuQi15tF7uE5A==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "~0.20.1", - "comment-parser": "1.3.0", - "debug": "^4.3.3", + "@es-joy/jsdoccomment": "~0.36.0", + "comment-parser": "1.3.1", + "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.4.0", - "regextras": "^0.8.0", - "semver": "^7.3.5", + "semver": "^7.3.8", "spdx-expression-parse": "^3.0.1" }, "dependencies": { @@ -12783,9 +12772,9 @@ } }, "jsdoc-type-pratt-parser": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.5.tgz", - "integrity": "sha512-2a6eRxSxp1BW040hFvaJxhsCMI9lT8QB8t14t+NY5tC5rckIR0U9cr2tjOeaFirmEOy6MHvmJnY7zTBHq431Lw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", + "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", "dev": true }, "jsesc": { @@ -14786,12 +14775,6 @@ "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true }, - "regextras": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.8.0.tgz", - "integrity": "sha512-k519uI04Z3SaY0fLX843MRXnDeG2+vHOFsyhiPZvNLe7r8rD2YNRjq4BQLZZ0oAr2NrtvZlICsXysGNFPGa3CQ==", - "dev": true - }, "release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 24624c47c9d..ef9759025e1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -146,7 +146,7 @@ "eslint": "^8.27.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", - "eslint-plugin-jsdoc": "^37.9.7", + "eslint-plugin-jsdoc": "^39.6.2", "esmock": "^2.0.7", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From bbaf99c929b6d04b7c796cae86b52e4b534c2722 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 11 Nov 2022 10:17:32 +0100 Subject: [PATCH 0715/1272] [ui5-project][INTERNAL] .editorconfig: Add more file extensions --- packages/project/.editorconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.editorconfig b/packages/project/.editorconfig index 6ba9c727be5..b432804f7fc 100644 --- a/packages/project/.editorconfig +++ b/packages/project/.editorconfig @@ -6,7 +6,7 @@ root = true charset = utf-8 indent_style = tab -[*.{css,html,js,less,txt,json,yml,md}] +[*.{css,html,js,cjs,mjs,jsx,ts,tsx,less,txt,json,yml,md}] trim_trailing_whitespace = true end_of_line = lf indent_size = 4 From 9e82295b5a83c934425097aaeb35b70314a96a5b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 20 Nov 2022 03:20:32 +0000 Subject: [PATCH 0716/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 198 ++++++++++++++++------------- packages/project/package.json | 4 +- 2 files changed, 110 insertions(+), 92 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 25a3165bc83..4978ddc5831 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -32,12 +32,12 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.0.1", + "ava": "^5.1.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^1.2.0", - "eslint": "^8.27.0", + "eslint": "^8.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-jsdoc": "^39.6.2", @@ -496,9 +496,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "version": "13.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.18.0.tgz", + "integrity": "sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -1371,22 +1371,22 @@ } }, "node_modules/ava": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-5.0.1.tgz", - "integrity": "sha512-nS1eK3HhWaC+eGHtteF5j4yZMjaIE+q2o+oyqD75xsmS87R5sGlxADYWkFIGyB28jrDmAATZAAx+s3JhYsnhNw==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.0.tgz", + "integrity": "sha512-e5VFrSQ0WBPyZJWRXVrO7RFOizFeNM0t2PORwrPvWtApgkORI6cvGnY3GX1G+lzpd0HjqNx5Jus22AhxVnUMNA==", "dev": true, "dependencies": { - "acorn": "^8.8.0", + "acorn": "^8.8.1", "acorn-walk": "^8.2.0", - "ansi-styles": "^6.1.1", + "ansi-styles": "^6.2.1", "arrgv": "^1.0.2", "arrify": "^3.0.0", "callsites": "^4.0.0", "cbor": "^8.1.0", - "chalk": "^5.0.1", + "chalk": "^5.1.2", "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^3.4.0", + "ci-info": "^3.6.1", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-truncate": "^3.1.0", @@ -1396,7 +1396,7 @@ "currently-unhandled": "^0.4.1", "debug": "^4.3.4", "del": "^7.0.0", - "emittery": "^1.0.0", + "emittery": "^1.0.1", "figures": "^5.0.0", "globby": "^13.1.2", "ignore-by-default": "^2.1.0", @@ -1415,12 +1415,12 @@ "pretty-ms": "^8.0.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", - "stack-utils": "^2.0.5", + "stack-utils": "^2.0.6", "strip-ansi": "^7.0.1", "supertap": "^3.0.1", - "temp-dir": "^2.0.0", - "write-file-atomic": "^4.0.2", - "yargs": "^17.5.1" + "temp-dir": "^3.0.0", + "write-file-atomic": "^5.0.0", + "yargs": "^17.6.2" }, "bin": { "ava": "entrypoints/cli.mjs" @@ -2114,10 +2114,13 @@ "dev": true }, "node_modules/ci-info": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.5.0.tgz", - "integrity": "sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==", - "dev": true + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.6.1.tgz", + "integrity": "sha512-up5ggbaDqOqJ4UqLKZ2naVkyqSJQgJi5lwD6b6mM748ysrghDBX0bx/qJTUHzw7zu6Mq4gycviSF5hJnwceD8w==", + "dev": true, + "engines": { + "node": ">=8" + } }, "node_modules/ci-parallel-vars": { "version": "1.0.1", @@ -2605,18 +2608,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/del/node_modules/is-path-inside": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", - "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/del/node_modules/slash": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", @@ -3108,9 +3099,9 @@ } }, "node_modules/eslint": { - "version": "8.27.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.27.0.tgz", - "integrity": "sha512-0y1bfG2ho7mty+SiILVf9PfuRA49ek4Nc60Wmmu62QlobNR+CeXa4xXIJgcuwSQgZiWaPH+5BDsctpIW0PR/wQ==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.28.0.tgz", + "integrity": "sha512-S27Di+EVyMxcHiwDrFzk8dJYAaD+/5SoWKxL1ri/71CRHsnJnRDPNt2Kzj24+MT9FDupf4aqqyqPrvI8MvQ4VQ==", "dev": true, "dependencies": { "@eslint/eslintrc": "^1.3.3", @@ -3347,9 +3338,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "version": "13.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.18.0.tgz", + "integrity": "sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -3361,6 +3352,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/eslint/node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/eslint/node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -4420,12 +4420,15 @@ } }, "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", + "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", "dev": true, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-plain-obj": { @@ -8480,12 +8483,12 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/temp-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", - "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-3.0.0.tgz", + "integrity": "sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==", "dev": true, "engines": { - "node": ">=8" + "node": ">=14.16" } }, "node_modules/tempy": { @@ -8518,6 +8521,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/tempy/node_modules/temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/tempy/node_modules/type-fest": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", @@ -9054,16 +9066,16 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.0.tgz", + "integrity": "sha512-R7NYMnHSlV42K54lwY9lvW6MnSm1HSJqZL3xiSgi9E7//FYaI74r2G0rd+/X6VAMkHEdzxQaU5HUOXWUz5kA/w==", "dev": true, "dependencies": { "imurmurhash": "^0.1.4", "signal-exit": "^3.0.7" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/xml2js": { @@ -9577,9 +9589,9 @@ } }, "globals": { - "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "version": "13.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.18.0.tgz", + "integrity": "sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -10269,22 +10281,22 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-5.0.1.tgz", - "integrity": "sha512-nS1eK3HhWaC+eGHtteF5j4yZMjaIE+q2o+oyqD75xsmS87R5sGlxADYWkFIGyB28jrDmAATZAAx+s3JhYsnhNw==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.0.tgz", + "integrity": "sha512-e5VFrSQ0WBPyZJWRXVrO7RFOizFeNM0t2PORwrPvWtApgkORI6cvGnY3GX1G+lzpd0HjqNx5Jus22AhxVnUMNA==", "dev": true, "requires": { - "acorn": "^8.8.0", + "acorn": "^8.8.1", "acorn-walk": "^8.2.0", - "ansi-styles": "^6.1.1", + "ansi-styles": "^6.2.1", "arrgv": "^1.0.2", "arrify": "^3.0.0", "callsites": "^4.0.0", "cbor": "^8.1.0", - "chalk": "^5.0.1", + "chalk": "^5.1.2", "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^3.4.0", + "ci-info": "^3.6.1", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-truncate": "^3.1.0", @@ -10294,7 +10306,7 @@ "currently-unhandled": "^0.4.1", "debug": "^4.3.4", "del": "^7.0.0", - "emittery": "^1.0.0", + "emittery": "^1.0.1", "figures": "^5.0.0", "globby": "^13.1.2", "ignore-by-default": "^2.1.0", @@ -10313,12 +10325,12 @@ "pretty-ms": "^8.0.0", "resolve-cwd": "^3.0.0", "slash": "^3.0.0", - "stack-utils": "^2.0.5", + "stack-utils": "^2.0.6", "strip-ansi": "^7.0.1", "supertap": "^3.0.1", - "temp-dir": "^2.0.0", - "write-file-atomic": "^4.0.2", - "yargs": "^17.5.1" + "temp-dir": "^3.0.0", + "write-file-atomic": "^5.0.0", + "yargs": "^17.6.2" }, "dependencies": { "chalk": { @@ -10807,9 +10819,9 @@ "dev": true }, "ci-info": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.5.0.tgz", - "integrity": "sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.6.1.tgz", + "integrity": "sha512-up5ggbaDqOqJ4UqLKZ2naVkyqSJQgJi5lwD6b6mM748ysrghDBX0bx/qJTUHzw7zu6Mq4gycviSF5hJnwceD8w==", "dev": true }, "ci-parallel-vars": { @@ -11178,12 +11190,6 @@ "slash": "^4.0.0" }, "dependencies": { - "is-path-inside": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", - "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", - "dev": true - }, "slash": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", @@ -11572,9 +11578,9 @@ } }, "eslint": { - "version": "8.27.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.27.0.tgz", - "integrity": "sha512-0y1bfG2ho7mty+SiILVf9PfuRA49ek4Nc60Wmmu62QlobNR+CeXa4xXIJgcuwSQgZiWaPH+5BDsctpIW0PR/wQ==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.28.0.tgz", + "integrity": "sha512-S27Di+EVyMxcHiwDrFzk8dJYAaD+/5SoWKxL1ri/71CRHsnJnRDPNt2Kzj24+MT9FDupf4aqqyqPrvI8MvQ4VQ==", "dev": true, "requires": { "@eslint/eslintrc": "^1.3.3", @@ -11660,14 +11666,20 @@ } }, "globals": { - "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "version": "13.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.18.0.tgz", + "integrity": "sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==", "dev": true, "requires": { "type-fest": "^0.20.2" } }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true + }, "locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -12515,9 +12527,9 @@ "dev": true }, "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", + "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", "dev": true }, "is-plain-obj": { @@ -15536,9 +15548,9 @@ } }, "temp-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", - "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-3.0.0.tgz", + "integrity": "sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==", "dev": true }, "tempy": { @@ -15559,6 +15571,12 @@ "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", "dev": true }, + "temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "dev": true + }, "type-fest": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", @@ -15965,9 +15983,9 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.0.tgz", + "integrity": "sha512-R7NYMnHSlV42K54lwY9lvW6MnSm1HSJqZL3xiSgi9E7//FYaI74r2G0rd+/X6VAMkHEdzxQaU5HUOXWUz5kA/w==", "dev": true, "requires": { "imurmurhash": "^0.1.4", diff --git a/packages/project/package.json b/packages/project/package.json index ef9759025e1..1fb5dab8932 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -138,12 +138,12 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.0.1", + "ava": "^5.1.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^1.2.0", - "eslint": "^8.27.0", + "eslint": "^8.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-jsdoc": "^39.6.2", From 0f8c6a8b955f52e3da6bcea53543cf0570bdb352 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 17 Nov 2022 15:48:44 +0100 Subject: [PATCH 0717/1272] [ui5-project][FEATURE] TaskUtil: Add getProject/getDependencies API to interface New API is only available to custom tasks defining specVerson 3.0 and later. --- .../lib/build/helpers/ProjectBuildContext.js | 11 ++++ .../project/lib/build/helpers/TaskUtil.js | 25 +++++++- packages/project/lib/graph/ProjectGraph.js | 2 +- .../lib/build/helpers/ProjectBuildContext.js | 61 +++++++++++++++++- .../test/lib/build/helpers/TaskUtil.js | 64 +++++++++++++++---- 5 files changed, 147 insertions(+), 16 deletions(-) diff --git a/packages/project/lib/build/helpers/ProjectBuildContext.js b/packages/project/lib/build/helpers/ProjectBuildContext.js index c665d40e3b7..25cc3c77095 100644 --- a/packages/project/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/lib/build/helpers/ProjectBuildContext.js @@ -64,6 +64,17 @@ class ProjectBuildContext { return this._project; } + /** + * Retrieve a list of direct dependencies of a given project from the dependency graph + * + * @param {string} [projectName] Name of the project to retrieve. Defaults to the project currently being built + * @returns {string[]} Names of all direct dependencies + * @throws {Error} If the requested project is unknown to the graph + */ + getDependencies(projectName) { + return this._buildContext.getGraph().getDependencies(projectName || this._project.getName()); + } + getResourceTagCollection(resource, tag) { if (!resource.hasProject()) { this._log.silly(`Associating resource ${resource.getPath()} with project ${this._project.getName()}`); diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index 84845596ced..2eec18e41f6 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -177,7 +177,7 @@ class TaskUtil { * This method is only available to custom task extensions defining * Specification Version 3.0 and above. * - * @param {string} projectName Name of the project to retrieve + * @param {string} [projectName] Name of the project to retrieve. Defaults to the project currently being built * @returns {@ui5/project/specifications/Project|undefined} * project instance or undefined if the project is unknown to the graph * @public @@ -186,6 +186,23 @@ class TaskUtil { return this._projectBuildContext.getProject(projectName); } + /** + * Retrieve a list of direct dependencies of a given project from the dependency graph. + * Note that this list does not include transitive dependencies. + * + *

    + * This method is only available to custom task extensions defining + * Specification Version 3.0 and above. + * + * @param {string} [projectName] Name of the project to retrieve. Defaults to the project currently being built + * @returns {string[]} Names of all direct dependencies + * @throws {Error} If the requested project is unknown to the graph + * @public + */ + getDependencies(projectName) { + return this._projectBuildContext.getDependencies(projectName); + } + /** * Get an interface to an instance of this class that only provides those functions * that are supported by the given custom task extension specification version. @@ -216,13 +233,17 @@ class TaskUtil { const project = this.getProject(projectName); const baseProjectInterface = {}; bindFunctions(project, baseProjectInterface, [ - "getName", "getVersion", "getNamespace" + "getSpecVersion", "getType", "getName", "getVersion", "getNamespace", + "getRootReader", "getReader", "getCustomConfiguration", "isFrameworkProject" ]); switch (specVersion) { case "3.0": return baseProjectInterface; } }; + baseInterface.getDependencies = (projectName) => { + return this.getDependencies(projectName); + }; return baseInterface; default: throw new Error(`TaskUtil: Unknown or unsupported Specification Version ${specVersion}`); diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index a31458af6bd..a74359470cd 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -221,7 +221,7 @@ class ProjectGraph { * * @public * @param {string} projectName Name of the project to retrieve the dependencies of - * @returns {string[]} Project names + * @returns {string[]} Names of all direct dependencies */ getDependencies(projectName) { const adjacencies = this._adjList[projectName]; diff --git a/packages/project/test/lib/build/helpers/ProjectBuildContext.js b/packages/project/test/lib/build/helpers/ProjectBuildContext.js index fa7718a8838..a23cd8c8fdd 100644 --- a/packages/project/test/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/test/lib/build/helpers/ProjectBuildContext.js @@ -219,13 +219,72 @@ test("getProject", (t) => { }); t.is(projectBuildContext.getProject("pony project"), "pony", "Returned correct value"); - t.is(getProjectStub.callCount, 1); + t.is(getProjectStub.callCount, 1, "getProject got called once"); t.is(getProjectStub.getCall(0).args[0], "pony project", "getProject got called with correct argument"); t.is(projectBuildContext.getProject(), project); t.is(getProjectStub.callCount, 1, "getProject is not called again when requesting current project"); }); +test("getProject: No name provided", (t) => { + const project = "project"; + const getProjectStub = sinon.stub().returns("pony"); + const projectBuildContext = new ProjectBuildContext({ + buildContext: { + getGraph: () => { + return { + getProject: getProjectStub + }; + } + }, + project, + log: "log" + }); + + t.is(projectBuildContext.getProject(), "project", "Returned correct value"); + t.is(getProjectStub.callCount, 0, "getProject has not been called"); +}); + +test("getDependencies", (t) => { + const project = "project"; + const getDependenciesStub = sinon.stub().returns(["dep a", "dep b"]); + const projectBuildContext = new ProjectBuildContext({ + buildContext: { + getGraph: () => { + return { + getDependencies: getDependenciesStub + }; + } + }, + project, + log: "log" + }); + + t.deepEqual(projectBuildContext.getDependencies("pony project"), ["dep a", "dep b"], "Returned correct value"); + t.is(getDependenciesStub.callCount, 1, "getDependencies got called once"); + t.is(getDependenciesStub.getCall(0).args[0], "pony project", "getProject got called with correct arguments"); +}); + +test("getDependencies: No name provided", (t) => { + const project = {getName: () => "project"}; + const getDependenciesStub = sinon.stub().returns(["dep a", "dep b"]); + const projectBuildContext = new ProjectBuildContext({ + buildContext: { + getGraph: () => { + return { + getDependencies: getDependenciesStub + }; + } + }, + project, + log: "log" + }); + + t.deepEqual(projectBuildContext.getDependencies(), ["dep a", "dep b"], "Returned correct value"); + t.is(getDependenciesStub.callCount, 1, "getDependencies got called once"); + t.is(getDependenciesStub.getCall(0).args[0], "project", "getProject got called with correct arguments"); +}); + test("getTaskUtil", (t) => { const projectBuildContext = new ProjectBuildContext({ buildContext: {}, diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index d8cc0f001a8..6bf4f779ab3 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -155,7 +155,6 @@ test("getBuildOption", (t) => { t.is(res, "Pony", "Correct result"); }); - test("getProject", (t) => { const getProjectStub = sinon.stub().returns("Pony farm!"); const taskUtil = new TaskUtil({ @@ -164,12 +163,26 @@ test("getProject", (t) => { } }); - const res = taskUtil.getProject("pony farm?"); + const res = taskUtil.getProject("pony farm"); t.is(getProjectStub.callCount, 1, "ProjectBuildContext#getProject got called once"); t.is(res, "Pony farm!", "Correct result"); }); +test("getDependencies", (t) => { + const getDependenciesStub = sinon.stub().returns("Pony farm!"); + const taskUtil = new TaskUtil({ + projectBuildContext: { + getDependencies: getDependenciesStub + } + }); + + const res = taskUtil.getDependencies("pony farm"); + + t.is(getDependenciesStub.callCount, 1, "ProjectBuildContext#getDependencies got called once"); + t.is(res, "Pony farm!", "Correct result"); +}); + test("registerCleanupTask", (t) => { const registerCleanupTaskStub = sinon.stub(); const taskUtil = new TaskUtil({ @@ -316,15 +329,23 @@ test("getInterface: specVersion 2.6", (t) => { test("getInterface: specVersion 3.0", (t) => { const getProjectStub = sinon.stub().returns({ - getName: () => "", - getVersion: () => "", - getNamespace: () => "", - hasBuildManifest: () => "", // Should not be exposed - getFrameworkVersion: () => "", // Should not be exposed + getSpecVersion: () => "specVersion", + getType: () => "type", + getName: () => "name", + getVersion: () => "version", + getNamespace: () => "namespace", + getRootReader: () => "rootReader", + getReader: () => "reader", + getCustomConfiguration: () => "customConfiguration", + isFrameworkProject: () => "isFrameworkProject", + hasBuildManifest: () => "hasBuildManifest", // Should not be exposed + getFrameworkVersion: () => "frameworkVersion", // Should not be exposed }); + const getDependenciesStub = sinon.stub().returns(["dep a", "dep b"]); const taskUtil = new TaskUtil({ projectBuildContext: { - getProject: getProjectStub + getProject: getProjectStub, + getDependencies: getDependenciesStub } }); @@ -337,7 +358,8 @@ test("getInterface: specVersion 3.0", (t) => { "getTag", "isRootProject", "registerCleanupTask", - "getProject" + "getProject", + "getDependencies" ], "Correct methods are provided"); t.deepEqual(interfacedTaskUtil.STANDARD_TAGS, STANDARD_TAGS, "attribute STANDARD_TAGS is provided"); @@ -350,13 +372,31 @@ test("getInterface: specVersion 3.0", (t) => { const interfacedProject = interfacedTaskUtil.getProject("pony"); t.deepEqual(Object.keys(interfacedProject), [ + "getSpecVersion", + "getType", "getName", "getVersion", "getNamespace", + "getRootReader", + "getReader", + "getCustomConfiguration", + "isFrameworkProject", ], "Correct methods are provided"); - t.is(typeof interfacedProject.getName, "function", "function getName is provided"); - t.is(typeof interfacedProject.getVersion, "function", "function getVersion is provided"); - t.is(typeof interfacedProject.getNamespace, "function", "function getNamespace is provided"); + + t.is(interfacedProject.getSpecVersion(), "specVersion", "getSpecVersion function is bound correctly"); + t.is(interfacedProject.getType(), "type", "getType function is bound correctly"); + t.is(interfacedProject.getName(), "name", "getName function is bound correctly"); + t.is(interfacedProject.getVersion(), "version", "getVersion function is bound correctly"); + t.is(interfacedProject.getNamespace(), "namespace", "getNamespace function is bound correctly"); + t.is(interfacedProject.getRootReader(), "rootReader", "getRootReader function is bound correctly"); + t.is(interfacedProject.getReader(), "reader", "getReader function is bound correctly"); + t.is(interfacedProject.getCustomConfiguration(), "customConfiguration", + "getCustomConfiguration function is bound correctly"); + t.is(interfacedProject.isFrameworkProject(), "isFrameworkProject", + "isFrameworkProject function is bound correctly"); + + t.deepEqual(interfacedTaskUtil.getDependencies("pony"), ["dep a", "dep b"], + "getDependencies function is available and bound correctly"); }); test("getInterface: specVersion undefined", (t) => { From 71a12ee6fe8d3ac5e9c4971bacfe91df1383b77f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 17 Nov 2022 17:36:27 +0100 Subject: [PATCH 0718/1272] [ui5-project][INTERNAL] Specification: Improve JSDoc --- .../project/lib/build/helpers/TaskUtil.js | 19 ++- .../project/lib/graph/projectGraphBuilder.js | 4 +- .../lib/specifications/ComponentProject.js | 7 +- .../project/lib/specifications/Project.js | 137 +++++++++++++++--- .../lib/specifications/Specification.js | 47 ++++-- .../lib/specifications/types/Application.js | 6 + .../lib/specifications/types/Library.js | 6 + .../lib/specifications/types/Module.js | 9 +- .../lib/specifications/types/ThemeLibrary.js | 6 + 9 files changed, 196 insertions(+), 45 deletions(-) diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index 2eec18e41f6..eddd0d3dbcb 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -170,6 +170,23 @@ class TaskUtil { return this._projectBuildContext.registerCleanupTask(callback); } + /** + * Specification Version-dependent [Project]{@link @ui5/project/specifications/Project} interface. + * For details on individual functions, see [Project]{@link @ui5/project/specifications/Project} + * + * @public + * @typedef {object} @ui5/project/build/helpers/TaskUtil~ProjectInterface + * @property {Function} getSpecVersion Get the project Specification Version + * @property {Function} getType Get the project type + * @property {Function} getName Get the project name + * @property {Function} getVersion Get the project version + * @property {Function} getNamespace Get the project namespace + * @property {Function} getRootReader Get the project rootReader + * @property {Function} getReader Get the project reader + * @property {Function} getCustomConfiguration Get the project Custom Configuration + * @property {Function} isFrameworkProject Check whether the project is a UI5-Framework project + */ + /** * Retrieve a single project from the dependency graph * @@ -178,7 +195,7 @@ class TaskUtil { * Specification Version 3.0 and above. * * @param {string} [projectName] Name of the project to retrieve. Defaults to the project currently being built - * @returns {@ui5/project/specifications/Project|undefined} + * @returns {@ui5/project/build/helpers/TaskUtil~ProjectInterface|undefined} * project instance or undefined if the project is unknown to the graph * @public */ diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index 4c0680c9b8c..b1bba1f840a 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -260,7 +260,7 @@ async function projectGraphBuilder(nodeProvider) { projectGraph.declareDependency(parentProject.getName(), projectName); } - if (project.getDeprecated() && parentProject === rootProject && + if (project.isDeprecated() && parentProject === rootProject && !parentProject.getName().endsWith("/testsuite")) { // Only warn for direct dependencies of the root project // No warning for testsuite projects @@ -268,7 +268,7 @@ async function projectGraphBuilder(nodeProvider) { `Dependency ${project.getName()} is deprecated and should not be used for new projects!`); } - if (project.getSapInternal() && parentProject === rootProject && + if (project.isSapInternal() && parentProject === rootProject && !parentProject.getAllowSapInternal()) { // Only warn for direct dependencies of the root project, except it defines "allowSapInternal" log.warn( diff --git a/packages/project/lib/specifications/ComponentProject.js b/packages/project/lib/specifications/ComponentProject.js index a4a60a8aea1..d9981d29e3e 100644 --- a/packages/project/lib/specifications/ComponentProject.js +++ b/packages/project/lib/specifications/ComponentProject.js @@ -26,8 +26,11 @@ class ComponentProject extends Project { /* === Attributes === */ /** - * @public - */ + * Get the project namespace + * + * @public + * @returns {string} Project namespace in slash-notation (e.g. my/project/name) + */ getNamespace() { return this._namespace; } diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index 2888b0ece05..b5baf7a279c 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -42,8 +42,12 @@ class Project extends Specification { /* === Attributes === */ /** - * @public - */ + * Get the project namespace. Returns null for projects that have none or multiple namespaces. + * For example Modules or Theme Libraries. + * + * @public + * @returns {string|null} Project namespace in slash-notation (e.g. my/project/name) or null + */ getNamespace() { // Default namespace for general Projects: // Their resources should be structured with globally unique paths, hence their namespace is undefined @@ -51,76 +55,163 @@ class Project extends Specification { } /** - * Path of project's sources. This might not be POSIX. - * - * @public - */ + * Check whether the project is a UI5-Framework project + * + * @public + * @returns {boolean} True if the project is a framework project + */ + isFrameworkProject() { + return this.__id.startsWith("@openui5/") || this.__id.startsWith("@sapui5/"); + } + + /** + * Get the project's customConfiguration + * + * @public + * @returns {object} Custom Configuration + */ + getCustomConfiguration() { + return this._config.customConfiguration; + } + + /** + * Get the path of the project's source directory. This might not be POSIX-style on some platforms. + * Projects with multiple source paths will throw an error. For example Modules. + * + * @private + * @returns {string} Absolute path to the source directory of the project + * @throws {Error} In case a project has multiple source directories + */ getSourcePath() { throw new Error(`getSourcePath must be implemented by subclass ${this.constructor.name}`); } /** - * @private - */ + * Get the project's frameworkName configuration + * + * @private + * @returns {string} FrameworkName configuration + */ getFrameworkName() { return this._config.framework?.name; } + /** - * @private - */ + * Get the project's frameworkVersion configuration + * + * @private + * @returns {string} FrameworkVersion configuration + */ getFrameworkVersion() { return this._config.framework?.version; } + /** - * @private - */ + * Get the project's frameworkDependencies configuration + * + * @private + * @returns {object[]} FrameworkDependencies configuration + */ getFrameworkDependencies() { return this._config.framework?.libraries || []; } - isFrameworkProject() { - return this.__id.startsWith("@openui5/") || this.__id.startsWith("@sapui5/"); - } - - getDeprecated() { + /** + * Get the project's deprecated configuration + * + * @private + * @returns {boolean} True if the project is flagged as deprecated + */ + isDeprecated() { return !!this._config.metadata.deprecated; } - getSapInternal() { + /** + * Get the project's sapInternal configuration + * + * @private + * @returns {boolean} True if the project is flagged as SAP-internal + */ + isSapInternal() { return !!this._config.metadata.sapInternal; } + + /** + * Get the project's allowSapInternal configuration + * + * @private + * @returns {boolean} True if the project allows for using SAP-internal projects + */ getAllowSapInternal() { return !!this._config.metadata.allowSapInternal; } - getCustomConfiguration() { - return this._config.customConfiguration; - } - + /** + * Get the project's builderResourcesExcludes configuration + * + * @private + * @returns {string[]} BuilderResourcesExcludes configuration + */ getBuilderResourcesExcludes() { return this._config.builder?.resources?.excludes || []; } + /** + * Get the project's customTasks configuration + * + * @private + * @returns {object[]} CustomTasks configuration + */ getCustomTasks() { return this._config.builder?.customTasks || []; } + /** + * Get the project's customMiddleware configuration + * + * @private + * @returns {object[]} CustomMiddleware configuration + */ getCustomMiddleware() { return this._config.server?.customMiddleware || []; } + /** + * Get the project's serverSettings configuration + * + * @private + * @returns {object} ServerSettings configuration + */ getServerSettings() { return this._config.server?.settings; } + /** + * Get the project's builderSettings configuration + * + * @private + * @returns {object} BuilderSettings configuration + */ getBuilderSettings() { return this._config.builder?.settings; } + /** + * Get the project's buildManifest configuration + * + * @private + * @returns {boolean} BuildManifest configuration + */ hasBuildManifest() { return !!this._buildManifest; } + /** + * Get the project's buildManifest configuration + * + * @private + * @returns {object} BuildManifest configuration + */ getBuildManifest() { return this._buildManifest || {}; } @@ -137,6 +228,8 @@ class Project extends Specification { *
  • flat: No prefix, no namespace
  • *
* + * Resource readers always use POSIX-style. + * * @public * @param {object} [options] * @param {string} [options.style=buildtime] Path style to access resources. Can be "buildtime", "runtime" or "flat" diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 0b27616cdaf..798cb7df078 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -110,52 +110,69 @@ class Specification { /* === Attributes === */ /** - * @public - */ + * Get the project name + * + * @public + * @returns {string} Project name + */ getName() { return this._name; } /** - * @public - */ + * Get the project kind + * + * @public + * @returns {string} Project kind + */ getKind() { return this._kind; } /** - * @public - */ + * Get the project type + * + * @public + * @returns {string} Project type + */ getType() { return this._type; } /** - * @public - */ + * Get the project Specification Version + * + * @public + * @returns {string} Project Specification Version + */ getSpecVersion() { return this._specVersion; } /** - * @public - */ + * Get the project version as typically defined in the project's package.json + * + * @public + * @returns {string} Project version + */ getVersion() { return this._version; } /** - * Might not be POSIX - * - * @private - */ + * Get the project's file system path. This might not be POSIX-style on some platforms + * + * @private + * @returns {string} Project root path + */ getPath() { return this._modulePath; } /* === Resource Access === */ /** - * Get a resource reader for the root directory of the project + * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for the root directory of the project. + * Resource readers always use POSIX-style * * @public * @returns {@ui5/fs/ReaderCollection} Reader collection diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index dfa74db5488..cb2d03d805d 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -35,6 +35,12 @@ class Application extends ComponentProject { this._config.builder.cachebuster.signatureType || "time"; } + /** + * Get the path of the project's source directory. This might not be POSIX-style on some platforms. + * + * @private + * @returns {string} Absolute path to the source directory of the project + */ getSourcePath() { return fsPath.join(this.getPath(), this._webappPath); } diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index 9a31a6f9c6f..b6b8a9a024b 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -46,6 +46,12 @@ class Library extends ComponentProject { return this._config.builder && this._config.builder.jsdoc && this._config.builder.jsdoc.excludes || []; } + /** + * Get the path of the project's source directory. This might not be POSIX-style on some platforms. + * + * @private + * @returns {string} Absolute path to the source directory of the project + */ getSourcePath() { return fsPath.join(this.getPath(), this._srcPath); } diff --git a/packages/project/lib/specifications/types/Module.js b/packages/project/lib/specifications/types/Module.js index f4a9774d9b0..09135f86993 100644 --- a/packages/project/lib/specifications/types/Module.js +++ b/packages/project/lib/specifications/types/Module.js @@ -20,14 +20,17 @@ class Module extends Project { } /* === Attributes === */ + /** - * @public - */ + * Since Modules have multiple source paths, this function always throws with an exception + * + * @private + * @throws {Error} Projects of type module have more than one source path + */ getSourcePath() { throw new Error(`Projects of type module have more than one source path`); } - /* === Resource Access === */ /** * Get a resource reader for accessing the project resources diff --git a/packages/project/lib/specifications/types/ThemeLibrary.js b/packages/project/lib/specifications/types/ThemeLibrary.js index 8f33dcd1bc4..5f252291ff5 100644 --- a/packages/project/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/lib/specifications/types/ThemeLibrary.js @@ -29,6 +29,12 @@ class ThemeLibrary extends Project { return this._config.metadata.copyright; } + /** + * Get the path of the project's source directory + * + * @private + * @returns {string} Absolute path to the source directory of the project + */ getSourcePath() { return fsPath.join(this.getPath(), this._srcPath); } From f1103ce04b526800a5a6bc12c03edf07b51a86f3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 18 Nov 2022 11:27:55 +0100 Subject: [PATCH 0719/1272] [ui5-project][FEATURE] TaskUtil: Add resourceFactory API to v3 interface --- .../project/lib/build/helpers/TaskUtil.js | 58 +++++++++++++++++++ .../test/lib/build/helpers/TaskUtil.js | 19 +++++- 2 files changed, 76 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index eddd0d3dbcb..1529accf13b 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -1,3 +1,11 @@ +import { + createReaderCollectionPrioritized, + createResource, + createFilterReader, + createLinkReader, + createFlatReader +} from "@ui5/fs/resourceFactory"; + /** * Convenience functions for UI5 tasks. * An instance of this class is passed to every standard UI5 task that requires it. @@ -220,6 +228,43 @@ class TaskUtil { return this._projectBuildContext.getDependencies(projectName); } + /** + * Specification Version-dependent set of [@ui5/fs/resourceFactory]{@link @ui5/fs/resourceFactory} + * functions provided to tasks. + * For details on individual functions, see [@ui5/fs/resourceFactory]{@link @ui5/fs/resourceFactory} + * + * @public + * @typedef {object} @ui5/project/build/helpers/TaskUtil~resourceFactory + * @property {Function} createResource Creates a [Resource]{@link @ui5/fs/Resource}. + * Accepts the same parameters as the [Resource]{@link @ui5/fs/Resource} constructor. + * @property {Function} createReaderCollectionPrioritized Creates a prioritized reader collection: + * [ReaderCollectionPrioritized]{@link @ui5/fs/ReaderCollectionPrioritized} + * @property {Function} createFilterReader + * Create a [Filter-Reader]{@link @ui5/fs/readers/Filter} with the given reader. + * @property {Function} createLinkReader + * Create a [Link-Reader]{@link @ui5/fs/readers/Filter} with the given reader. + * @property {Function} createFlatReader Create a [Link-Reader]{@link @ui5/fs/readers/Link} + * where all requests are prefixed with /resources/. + */ + + /** + * Provides limited access to [@ui5/fs/resourceFactory]{@link @ui5/fs/resourceFactory} functions + * + *

+ * This attribute is only available to custom task extensions defining + * Specification Version 3.0 and above. + * + * @type {@ui5/project/build/helpers/TaskUtil~resourceFactory} + * @public + */ + resourceFactory = { + createResource, + createReaderCollectionPrioritized, + createFilterReader, + createLinkReader, + createFlatReader, + }; + /** * Get an interface to an instance of this class that only provides those functions * that are supported by the given custom task extension specification version. @@ -246,6 +291,7 @@ class TaskUtil { case "2.6": return baseInterface; case "3.0": + // getProject function, returning an interfaced project instance baseInterface.getProject = (projectName) => { const project = this.getProject(projectName); const baseProjectInterface = {}; @@ -258,9 +304,21 @@ class TaskUtil { return baseProjectInterface; } }; + // getDependencies function, returning an array of project names baseInterface.getDependencies = (projectName) => { return this.getDependencies(projectName); }; + + baseInterface.resourceFactory = Object.create(null); + [ + // Once new functions get added, extract this array into a variable + // and enhance based on spec version once new functions get added + "createResource", "createReaderCollectionPrioritized", + "createFilterReader", "createLinkReader", "createFlatReader", + ].forEach((factoryFunction) => { + baseInterface.resourceFactory[factoryFunction] = this.resourceFactory[factoryFunction]; + }); + return baseInterface; default: throw new Error(`TaskUtil: Unknown or unsupported Specification Version ${specVersion}`); diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index 6bf4f779ab3..bc2a57c5fcb 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -342,6 +342,7 @@ test("getInterface: specVersion 3.0", (t) => { getFrameworkVersion: () => "frameworkVersion", // Should not be exposed }); const getDependenciesStub = sinon.stub().returns(["dep a", "dep b"]); + const taskUtil = new TaskUtil({ projectBuildContext: { getProject: getProjectStub, @@ -359,7 +360,8 @@ test("getInterface: specVersion 3.0", (t) => { "isRootProject", "registerCleanupTask", "getProject", - "getDependencies" + "getDependencies", + "resourceFactory", ], "Correct methods are provided"); t.deepEqual(interfacedTaskUtil.STANDARD_TAGS, STANDARD_TAGS, "attribute STANDARD_TAGS is provided"); @@ -370,6 +372,7 @@ test("getInterface: specVersion 3.0", (t) => { t.is(typeof interfacedTaskUtil.registerCleanupTask, "function", "function registerCleanupTask is provided"); t.is(typeof interfacedTaskUtil.getProject, "function", "function registerCleanupTask is provided"); + // getProject const interfacedProject = interfacedTaskUtil.getProject("pony"); t.deepEqual(Object.keys(interfacedProject), [ "getSpecVersion", @@ -395,8 +398,22 @@ test("getInterface: specVersion 3.0", (t) => { t.is(interfacedProject.isFrameworkProject(), "isFrameworkProject", "isFrameworkProject function is bound correctly"); + // getDependencies t.deepEqual(interfacedTaskUtil.getDependencies("pony"), ["dep a", "dep b"], "getDependencies function is available and bound correctly"); + + // resourceFactory + const resourceFactory = interfacedTaskUtil.resourceFactory; + t.is(typeof resourceFactory.createResource, "function", + "resourceFactory function createResource is available"); + t.is(typeof resourceFactory.createReaderCollectionPrioritized, "function", + "resourceFactory function createReaderCollectionPrioritized is available"); + t.is(typeof resourceFactory.createFilterReader, "function", + "resourceFactory function createFilterReader is available"); + t.is(typeof resourceFactory.createLinkReader, "function", + "resourceFactory function createLinkReader is available"); + t.is(typeof resourceFactory.createFlatReader, "function", + "resourceFactory function createFlatReader is available"); }); test("getInterface: specVersion undefined", (t) => { From 2c99e014080c438d1f6272fe488211a7d1da3547 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 18 Nov 2022 11:28:27 +0100 Subject: [PATCH 0720/1272] [ui5-project][FEATURE] TaskRunner: Provide taskName and logger instance to custom tasks New parameters are only provided to custom tasks defining specVersion 3.0 and later --- packages/project/lib/build/TaskRunner.js | 18 +++- packages/project/test/lib/build/TaskRunner.js | 92 ++++++++++--------- 2 files changed, 63 insertions(+), 47 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 42fca385ca7..c451f13ef93 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -1,4 +1,5 @@ import composeTaskList from "./helpers/composeTaskList.js"; +import logger from "@ui5/logger"; /** * TaskRunner @@ -279,11 +280,18 @@ class TaskRunner { {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files {@ui5/fs/AbstractReader} parameters.dependencies Reader or Collection to read dependency files - {Object} parameters.taskUtil Specification Version dependent interface to a - [TaskUtil]{@link @ui5/project/build/helpers/TaskUtil} instance + {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil Specification Version dependent + interface of a [TaskUtil]{@link @ui5/project/build/helpers/TaskUtil} instance + {@ui5/logger/GroupLogger} [parameters.log] Logger instance to use by the custom task. + This method is only available to custom task extensions defining + Specification Version 3.0 and above. {Object} parameters.options Options {string} parameters.options.projectName Project name - {string} [parameters.options.projectNamespace] Project namespace if available + {string|null} parameters.options.projectNamespace Project namespace if available + {string} [parameters.options.taskName] Runtime name of the task. + If a task is executed multiple times, a suffix is added to distinguish the executions. + This attribute is only available to custom task extensions defining + Specification Version 3.0 and above. {string} [parameters.options.configuration] Task configuration if given in ui5.yaml Returns: {Promise} Promise resolving with undefined once data has been written @@ -302,8 +310,8 @@ class TaskRunner { } if (task.getSpecVersion() === "3.0") { - params.log = log; - params.taskName = newTaskName; + params.options.taskName = newTaskName; + params.log = logger.getGroupLogger(`builder:custom-task:${newTaskName}`); } const taskUtilInterface = taskUtil.getInterface(task.getSpecVersion()); diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index ca8f097eb06..77f46f01128 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -1,8 +1,8 @@ import test from "ava"; import sinonGlobal from "sinon"; +import esmock from "esmock"; import logger from "@ui5/logger"; const parentLogger = logger.getGroupLogger("mygroup"); -import TaskRunner from "../../../lib/build/TaskRunner.js"; function noop() {} function emptyarray() { @@ -56,7 +56,7 @@ function getMockProject(type) { }; } -test.beforeEach((t) => { +test.beforeEach(async (t) => { const sinon = t.context.sinon = sinonGlobal.createSandbox(); t.context.taskUtil = { @@ -80,6 +80,14 @@ test.beforeEach((t) => { }, getExtension: sinon.stub().returns("a custom task") }; + + t.context.logger = { + getGroupLogger: sinon.stub().returns("group logger") + }; + + t.context.TaskRunner = await esmock("../../../lib/build/TaskRunner.js", { + "@ui5/logger": t.context.logger + }); }); test.afterEach.always((t) => { @@ -87,7 +95,7 @@ test.afterEach.always((t) => { }); test("Project of type 'application'", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskRunner = await TaskRunner.create({ project: getMockProject("application"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -109,7 +117,7 @@ test("Project of type 'application'", async (t) => { }); test("Project of type 'library'", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskRunner = await TaskRunner.create({ project: getMockProject("library"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -133,7 +141,7 @@ test("Project of type 'library'", async (t) => { }); test("Project of type 'theme-library'", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskRunner = await TaskRunner.create({ project: getMockProject("theme-library"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -148,7 +156,7 @@ test("Project of type 'theme-library'", async (t) => { }); test("Project of type 'module'", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskRunner = await TaskRunner.create({ project: getMockProject("module"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); @@ -157,7 +165,7 @@ test("Project of type 'module'", async (t) => { }); test("Unknown project type", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const err = await t.throwsAsync(async () => { await TaskRunner.create({ project: getMockProject("pony"), graph, taskUtil, taskRepository, parentLogger, buildConfig @@ -168,7 +176,7 @@ test("Unknown project type", async (t) => { }); test("Custom tasks", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"}, @@ -197,7 +205,7 @@ test("Custom tasks", async (t) => { }); test("Custom tasks with no standard tasks", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"}, @@ -213,7 +221,7 @@ test("Custom tasks with no standard tasks", async (t) => { }); test("Custom tasks with no standard tasks and second task defining no before-/afterTask", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"}, @@ -231,7 +239,7 @@ test("Custom tasks with no standard tasks and second task defining no before-/af }); test("Custom tasks with both, before- and afterTask reference", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "minify", afterTask: "replaceVersion"} @@ -248,7 +256,7 @@ test("Custom tasks with both, before- and afterTask reference", async (t) => { }); test("Custom tasks with no before-/afterTask reference", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask"} @@ -265,7 +273,7 @@ test("Custom tasks with no before-/afterTask reference", async (t) => { }); test("Custom tasks without name", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: ""} @@ -281,7 +289,7 @@ test("Custom tasks without name", async (t) => { }); test("Custom task with name of standard tasks", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "replaceVersion", afterTask: "minify"} @@ -298,7 +306,7 @@ test("Custom task with name of standard tasks", async (t) => { }); test("Multiple custom tasks with same name", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"}, @@ -329,7 +337,7 @@ test("Multiple custom tasks with same name", async (t) => { }); test("Custom tasks with unknown beforeTask", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "unknownTask"} @@ -346,7 +354,7 @@ test("Custom tasks with unknown beforeTask", async (t) => { }); test("Custom tasks with unknown afterTask", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "unknownTask"} @@ -363,7 +371,7 @@ test("Custom tasks with unknown afterTask", async (t) => { }); test("Custom tasks is unknown", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; graph.getExtension.returns(undefined); const project = getMockProject("application"); project.getCustomTasks = () => [ @@ -381,7 +389,7 @@ test("Custom tasks is unknown", async (t) => { }); test("Custom task is called correctly", async (t) => { - const {sinon, graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStub = sinon.stub(); graph.getExtension.returns({ getTask: () => taskStub, @@ -423,7 +431,7 @@ test("Custom task is called correctly", async (t) => { }); test("Custom task with legacy spec version", async (t) => { - const {sinon, graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStub = sinon.stub(); graph.getExtension.returns({ getTask: () => taskStub, @@ -464,7 +472,7 @@ test("Custom task with legacy spec version", async (t) => { }); test("Custom task with specVersion 3.0", async (t) => { - const {sinon, graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStub = sinon.stub(); graph.getExtension.returns({ getTask: () => taskStub, @@ -492,11 +500,11 @@ test("Custom task with specVersion 3.0", async (t) => { t.deepEqual(taskStub.getCall(0).args[0], { workspace: "workspace", dependencies: "dependencies", - taskName: "myTask", // specVersion 3.0 feature - log: "log", // specVersion 3.0 feature + log: "group logger", options: { projectName: "project.b", projectNamespace: "project/b", + taskName: "myTask", // specVersion 3.0 feature configuration: "configuration", } }, "Task got called with one argument"); @@ -507,7 +515,7 @@ test("Custom task with specVersion 3.0", async (t) => { }); test("Multiple custom tasks with same name are called correctly", async (t) => { - const {sinon, graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStub1 = sinon.stub(); const taskStub2 = sinon.stub(); const taskStub3 = sinon.stub(); @@ -581,26 +589,26 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { t.deepEqual(taskStub3.getCall(0).args[0], { workspace: "workspace", dependencies: "dependencies", - log: taskRunner._taskLog, - taskName: "myTask--3", + log: "group logger", options: { projectName: "project.b", projectNamespace: "project/b", + taskName: "myTask--3", configuration: "bird", } }, "Task 3 got called with one argument"); t.is(taskUtil.getInterface.callCount, 3, "taskUtil#getInterface got called once"); t.is(taskUtil.getInterface.getCall(0).args[0], "2.5", - "taskUtil#getInterface got called with correct argument"); + "taskUtil#getInterface got called with correct argument on first call"); t.is(taskUtil.getInterface.getCall(1).args[0], "3.0", - "taskUtil#getInterface got called with correct argument"); + "taskUtil#getInterface got called with correct argument on second call"); t.is(taskUtil.getInterface.getCall(2).args[0], "2.6", - "taskUtil#getInterface got called with correct argument"); + "taskUtil#getInterface got called with correct argument on third call"); }); test.serial("_addTask", async (t) => { - const {sinon, graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStub = sinon.stub(); taskRepository.getTask.withArgs("standardTask").resolves({ @@ -640,7 +648,7 @@ test.serial("_addTask", async (t) => { }); test.serial("_addTask with options", async (t) => { - const {sinon, graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStub = sinon.stub(); const project = getMockProject("module"); @@ -682,7 +690,7 @@ test.serial("_addTask with options", async (t) => { }); test("_addTask: Duplicate task", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig @@ -702,7 +710,7 @@ test("_addTask: Duplicate task", async (t) => { }); test("_addTask: Task already added to execution order", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); const taskRunner = await TaskRunner.create({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig @@ -720,7 +728,7 @@ test("_addTask: Task already added to execution order", async (t) => { }); test("requiresDependencies: Custom Task", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"} @@ -732,7 +740,7 @@ test("requiresDependencies: Custom Task", async (t) => { }); test("requiresDependencies: Default application", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getBundles = () => []; const taskRunner = await TaskRunner.create({ @@ -742,7 +750,7 @@ test("requiresDependencies: Default application", async (t) => { }); test("requiresDependencies: Default library", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("library"); project.getBundles = () => []; const taskRunner = await TaskRunner.create({ @@ -752,7 +760,7 @@ test("requiresDependencies: Default library", async (t) => { }); test("requiresDependencies: Default theme-library", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("theme-library"); const taskRunner = await TaskRunner.create({ @@ -762,7 +770,7 @@ test("requiresDependencies: Default theme-library", async (t) => { }); test("requiresDependencies: Default module", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); const taskRunner = await TaskRunner.create({ @@ -772,7 +780,7 @@ test("requiresDependencies: Default module", async (t) => { }); test("requiresBuild: has no build-manifest", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("library"); const taskRunner = await TaskRunner.create({ @@ -782,7 +790,7 @@ test("requiresBuild: has no build-manifest", async (t) => { }); test("requiresBuild: has build-manifest", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("library"); project.hasBuildManifest = () => true; @@ -793,7 +801,7 @@ test("requiresBuild: has build-manifest", async (t) => { }); test.serial("getBuildMetadata", async (t) => { - const {sinon, graph, taskUtil, taskRepository} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("library"); project.hasBuildManifest = () => true; project.getBuildManifest = () => { @@ -814,7 +822,7 @@ test.serial("getBuildMetadata", async (t) => { }); test("getBuildMetadata: has no build-manifest", async (t) => { - const {graph, taskUtil, taskRepository} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("library"); const taskRunner = await TaskRunner.create({ From 002d714786d6550fc61b857461a6aca4431640c2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 23 Nov 2022 15:41:56 +0100 Subject: [PATCH 0721/1272] [ui5-project][INTERNAL] Apply suggestions from UA review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Günter Klatt <57760635+KlattG@users.noreply.github.com> --- packages/project/lib/build/TaskRunner.js | 2 +- packages/project/lib/specifications/ComponentProject.js | 2 +- packages/project/lib/specifications/Project.js | 6 +++--- packages/project/lib/specifications/Specification.js | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index c451f13ef93..605619a8de0 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -280,7 +280,7 @@ class TaskRunner { {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files {@ui5/fs/AbstractReader} parameters.dependencies Reader or Collection to read dependency files - {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil Specification Version dependent + {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil Specification Version-dependent interface of a [TaskUtil]{@link @ui5/project/build/helpers/TaskUtil} instance {@ui5/logger/GroupLogger} [parameters.log] Logger instance to use by the custom task. This method is only available to custom task extensions defining diff --git a/packages/project/lib/specifications/ComponentProject.js b/packages/project/lib/specifications/ComponentProject.js index d9981d29e3e..c73e3b4ce82 100644 --- a/packages/project/lib/specifications/ComponentProject.js +++ b/packages/project/lib/specifications/ComponentProject.js @@ -29,7 +29,7 @@ class ComponentProject extends Project { * Get the project namespace * * @public - * @returns {string} Project namespace in slash-notation (e.g. my/project/name) + * @returns {string} Project namespace in slash notation (e.g. my/project/name) */ getNamespace() { return this._namespace; diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index b5baf7a279c..864f0d60739 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -42,11 +42,11 @@ class Project extends Specification { /* === Attributes === */ /** - * Get the project namespace. Returns null for projects that have none or multiple namespaces. - * For example Modules or Theme Libraries. + * Get the project namespace. Returns `null` for projects that have none or multiple namespaces, + * for example Modules or Theme Libraries. * * @public - * @returns {string|null} Project namespace in slash-notation (e.g. my/project/name) or null + * @returns {string|null} Project namespace in slash notation (e.g. my/project/name) or null */ getNamespace() { // Default namespace for general Projects: diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 798cb7df078..78fc0d74036 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -140,7 +140,7 @@ class Specification { } /** - * Get the project Specification Version + * Get the project's Specification Version * * @public * @returns {string} Project Specification Version From e55dd0f8f5aa0606c5029d4b26a5725cf534af63 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 23 Nov 2022 16:23:19 +0100 Subject: [PATCH 0722/1272] [ui5-project][INTERNAL] Specification: Distinguish specification from project --- .../lib/specifications/Specification.js | 28 ++++++++++--------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 78fc0d74036..007938be487 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -2,7 +2,7 @@ import logger from "@ui5/logger"; import {createReader} from "@ui5/fs/resourceFactory"; /** - * Specification + * Abstract superclass for all projects and extensions * * @public * @abstract @@ -110,47 +110,49 @@ class Specification { /* === Attributes === */ /** - * Get the project name + * Get the name of this specification * * @public - * @returns {string} Project name + * @returns {string} Specification name */ getName() { return this._name; } /** - * Get the project kind + * Get the kind of this specification. For example project or extension * * @public - * @returns {string} Project kind + * @returns {string} Specification kind */ getKind() { return this._kind; } /** - * Get the project type + * Get the type of this specification. + * For example application or library in case of projects, + * and task or server-middleware in case of extensions * * @public - * @returns {string} Project type + * @returns {string} Specification type */ getType() { return this._type; } /** - * Get the project's Specification Version + * Get the Specification Version * * @public - * @returns {string} Project Specification Version + * @returns {string} Specification Version */ getSpecVersion() { return this._specVersion; } /** - * Get the project version as typically defined in the project's package.json + * Get the specification's version, as typically defined in a package.json * * @public * @returns {string} Project version @@ -160,7 +162,7 @@ class Specification { } /** - * Get the project's file system path. This might not be POSIX-style on some platforms + * Get the specification's file system path. This might not be POSIX-style on some platforms * * @private * @returns {string} Project root path @@ -171,7 +173,7 @@ class Specification { /* === Resource Access === */ /** - * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for the root directory of the project. + * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for the root directory of the specification. * Resource readers always use POSIX-style * * @public @@ -189,7 +191,7 @@ class Specification { /* === Helper === */ /** * @private - * @param {string} dirPath Path of directory, relative to the project root + * @param {string} dirPath Directory path, relative to the specification root */ async _dirExists(dirPath) { const resource = await this.getRootReader().byPath(dirPath, {nodir: false}); From 8af9bb66274aea87133e921cf57a6a5071221920 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 24 Nov 2022 11:51:14 +0100 Subject: [PATCH 0723/1272] [ui5-project][INTERNAL] Apply suggestions from UA review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Günter Klatt <57760635+KlattG@users.noreply.github.com> --- packages/project/lib/specifications/Specification.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 007938be487..58ce25b2023 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -120,7 +120,7 @@ class Specification { } /** - * Get the kind of this specification. For example project or extension + * Get the kind of this specification, for example project or extension * * @public * @returns {string} Specification kind @@ -130,8 +130,8 @@ class Specification { } /** - * Get the type of this specification. - * For example application or library in case of projects, + * Get the type of this specification, + * for example application or library in case of projects, * and task or server-middleware in case of extensions * * @public From cfd4cd6d7ce06e097a5aa6dd82514dc95f5ae113 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 24 Nov 2022 16:07:01 +0100 Subject: [PATCH 0724/1272] [ui5-project][INTERNAL] Apply suggestions from UA review --- packages/project/lib/specifications/Specification.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 58ce25b2023..227c9937d05 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -152,7 +152,7 @@ class Specification { } /** - * Get the specification's version, as typically defined in a package.json + * Get the specification's generic version, as typically defined in a package.json * * @public * @returns {string} Project version From 4c823d2e405d45c24bd08b7778b835e4504ad210 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 27 Nov 2022 03:20:29 +0000 Subject: [PATCH 0725/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 150 +++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 79 insertions(+), 75 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4978ddc5831..9abb2abc068 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,8 +40,8 @@ "eslint": "^8.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", - "eslint-plugin-jsdoc": "^39.6.2", - "esmock": "^2.0.7", + "eslint-plugin-jsdoc": "^39.6.4", + "esmock": "^2.0.9", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", @@ -449,9 +449,9 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.36.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.0.tgz", - "integrity": "sha512-u0XZyvUF6Urb2cSivSXA8qXIpT/CxkHcdtZKoWusAzgzmsTWpg0F2FpWXsolHmMUyVY3dLWaoy+0ccJ5uf2QjA==", + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.1.tgz", + "integrity": "sha512-922xqFsTpHs6D0BUiG4toiyPOMc8/jafnWKxz1KWgS4XzKPy2qXf1Pe6UFuNSCQqt6tOuhAWXBNuuyUhJmw9Vg==", "dev": true, "dependencies": { "comment-parser": "1.3.1", @@ -1259,9 +1259,9 @@ } }, "node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "dependencies": { "normalize-path": "^3.0.0", @@ -1769,9 +1769,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001431", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", - "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", + "version": "1.0.30001434", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001434.tgz", + "integrity": "sha512-aOBHrLmTQw//WFa2rcF1If9fa3ypkC1wzqqiKHgfdrXTWcU8C4gKVZT77eQAPWN1APys3+uQ0Df07rKauXGEYA==", "dev": true, "funding": [ { @@ -2114,9 +2114,9 @@ "dev": true }, "node_modules/ci-info": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.6.1.tgz", - "integrity": "sha512-up5ggbaDqOqJ4UqLKZ2naVkyqSJQgJi5lwD6b6mM748ysrghDBX0bx/qJTUHzw7zu6Mq4gycviSF5hJnwceD8w==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.0.tgz", + "integrity": "sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==", "dev": true, "engines": { "node": ">=8" @@ -3189,12 +3189,12 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "39.6.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.2.tgz", - "integrity": "sha512-dvgY/W7eUFoAIIiaWHERIMI61ZWqcz9YFjEeyTzdPlrZc3TY/3aZm5aB91NUoTLWYZmO/vFlYSuQi15tF7uE5A==", + "version": "39.6.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.4.tgz", + "integrity": "sha512-fskvdLCfwmPjHb6e+xNGDtGgbF8X7cDwMtVLAP2WwSf9Htrx68OAx31BESBM1FAwsN2HTQyYQq7m4aW4Q4Nlag==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.36.0", + "@es-joy/jsdoccomment": "~0.36.1", "comment-parser": "1.3.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", @@ -3443,9 +3443,9 @@ } }, "node_modules/esmock": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.7.tgz", - "integrity": "sha512-/DzaNL58ZKT6CRuCu2WatPMGe49BOjUwiKADfhGCk/SBzrmWWjzG/pPFq+3hvScG8nvD2YFr0Hz4PIZkfVqy3Q==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.9.tgz", + "integrity": "sha512-DowbbH79/YIvYc0tBPumq4XThIyFA1tcmGnHZJM3j3mcDFqCSbtS/jn6SqNG5bBcHUBAUVJ6z0l0q1uizkUd2A==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4685,10 +4685,14 @@ } }, "node_modules/js-sdsl": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", - "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==", - "dev": true + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", + "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } }, "node_modules/js-string-escape": { "version": "1.0.1", @@ -5258,9 +5262,9 @@ } }, "node_modules/marked": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.2.tgz", - "integrity": "sha512-JjBTFTAvuTgANXx82a5vzK9JLSMoV6V3LBVn4Uhdso6t7vXrGx7g1Cd2r6NYSsxrYbQGFCMqBDhFHyK5q2UvcQ==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.3.tgz", + "integrity": "sha512-slWRdJkbTZ+PjkyJnE30Uid64eHwbwa1Q25INCAYfZlK4o6ylagBy/Le9eWntqJFoFT93ikUKMv47GZ4gTwHkw==", "bin": { "marked": "bin/marked.js" }, @@ -5564,9 +5568,9 @@ } }, "node_modules/minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dependencies": { "yallist": "^4.0.0" }, @@ -7579,11 +7583,11 @@ "dev": true }, "node_modules/requizzle": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.3.tgz", - "integrity": "sha512-YanoyJjykPxGHii0fZP0uUPEXpvqfBDxWV7s6GKAiiOsiqhX6vHNyW3Qzdmqp/iq/ExbhaGbVrjB4ruEVSM4GQ==", + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.4.tgz", + "integrity": "sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw==", "dependencies": { - "lodash": "^4.17.14" + "lodash": "^4.17.21" } }, "node_modules/resolve": { @@ -8543,9 +8547,9 @@ } }, "node_modules/terser": { - "version": "5.15.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", - "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.0.tgz", + "integrity": "sha512-KjTV81QKStSfwbNiwlBXfcgMcOloyuRdb62/iLFPGBcVNF4EXjhdYBhYHmbJpiBrVxZhDvltE11j+LBQUxEEJg==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -9551,9 +9555,9 @@ } }, "@es-joy/jsdoccomment": { - "version": "0.36.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.0.tgz", - "integrity": "sha512-u0XZyvUF6Urb2cSivSXA8qXIpT/CxkHcdtZKoWusAzgzmsTWpg0F2FpWXsolHmMUyVY3dLWaoy+0ccJ5uf2QjA==", + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.1.tgz", + "integrity": "sha512-922xqFsTpHs6D0BUiG4toiyPOMc8/jafnWKxz1KWgS4XzKPy2qXf1Pe6UFuNSCQqt6tOuhAWXBNuuyUhJmw9Vg==", "dev": true, "requires": { "comment-parser": "1.3.1", @@ -10202,9 +10206,9 @@ "dev": true }, "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "requires": { "normalize-path": "^3.0.0", @@ -10560,9 +10564,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001431", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", - "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", + "version": "1.0.30001434", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001434.tgz", + "integrity": "sha512-aOBHrLmTQw//WFa2rcF1If9fa3ypkC1wzqqiKHgfdrXTWcU8C4gKVZT77eQAPWN1APys3+uQ0Df07rKauXGEYA==", "dev": true }, "catharsis": { @@ -10819,9 +10823,9 @@ "dev": true }, "ci-info": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.6.1.tgz", - "integrity": "sha512-up5ggbaDqOqJ4UqLKZ2naVkyqSJQgJi5lwD6b6mM748ysrghDBX0bx/qJTUHzw7zu6Mq4gycviSF5hJnwceD8w==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.0.tgz", + "integrity": "sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==", "dev": true }, "ci-parallel-vars": { @@ -11757,12 +11761,12 @@ } }, "eslint-plugin-jsdoc": { - "version": "39.6.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.2.tgz", - "integrity": "sha512-dvgY/W7eUFoAIIiaWHERIMI61ZWqcz9YFjEeyTzdPlrZc3TY/3aZm5aB91NUoTLWYZmO/vFlYSuQi15tF7uE5A==", + "version": "39.6.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.4.tgz", + "integrity": "sha512-fskvdLCfwmPjHb6e+xNGDtGgbF8X7cDwMtVLAP2WwSf9Htrx68OAx31BESBM1FAwsN2HTQyYQq7m4aW4Q4Nlag==", "dev": true, "requires": { - "@es-joy/jsdoccomment": "~0.36.0", + "@es-joy/jsdoccomment": "~0.36.1", "comment-parser": "1.3.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", @@ -11820,9 +11824,9 @@ "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==" }, "esmock": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.7.tgz", - "integrity": "sha512-/DzaNL58ZKT6CRuCu2WatPMGe49BOjUwiKADfhGCk/SBzrmWWjzG/pPFq+3hvScG8nvD2YFr0Hz4PIZkfVqy3Q==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.9.tgz", + "integrity": "sha512-DowbbH79/YIvYc0tBPumq4XThIyFA1tcmGnHZJM3j3mcDFqCSbtS/jn6SqNG5bBcHUBAUVJ6z0l0q1uizkUd2A==", "dev": true }, "espree": { @@ -12722,9 +12726,9 @@ } }, "js-sdsl": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", - "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", + "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", "dev": true }, "js-string-escape": { @@ -13174,9 +13178,9 @@ "requires": {} }, "marked": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.2.tgz", - "integrity": "sha512-JjBTFTAvuTgANXx82a5vzK9JLSMoV6V3LBVn4Uhdso6t7vXrGx7g1Cd2r6NYSsxrYbQGFCMqBDhFHyK5q2UvcQ==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.3.tgz", + "integrity": "sha512-slWRdJkbTZ+PjkyJnE30Uid64eHwbwa1Q25INCAYfZlK4o6ylagBy/Le9eWntqJFoFT93ikUKMv47GZ4gTwHkw==" }, "matcher": { "version": "5.0.0", @@ -13376,9 +13380,9 @@ } }, "minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "requires": { "yallist": "^4.0.0" }, @@ -14851,11 +14855,11 @@ "dev": true }, "requizzle": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.3.tgz", - "integrity": "sha512-YanoyJjykPxGHii0fZP0uUPEXpvqfBDxWV7s6GKAiiOsiqhX6vHNyW3Qzdmqp/iq/ExbhaGbVrjB4ruEVSM4GQ==", + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.4.tgz", + "integrity": "sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw==", "requires": { - "lodash": "^4.17.14" + "lodash": "^4.17.21" } }, "resolve": { @@ -15586,9 +15590,9 @@ } }, "terser": { - "version": "5.15.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", - "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.0.tgz", + "integrity": "sha512-KjTV81QKStSfwbNiwlBXfcgMcOloyuRdb62/iLFPGBcVNF4EXjhdYBhYHmbJpiBrVxZhDvltE11j+LBQUxEEJg==", "requires": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", diff --git a/packages/project/package.json b/packages/project/package.json index 1fb5dab8932..3317f8c6e99 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -146,8 +146,8 @@ "eslint": "^8.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", - "eslint-plugin-jsdoc": "^39.6.2", - "esmock": "^2.0.7", + "eslint-plugin-jsdoc": "^39.6.4", + "esmock": "^2.0.9", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", From eae901d1f6bba80dd5806fc8b1aa09e134f86dc0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Nov 2022 09:32:10 +0100 Subject: [PATCH 0726/1272] [ui5-project][INTERNAL] Bump docdash from 1.2.0 to 2.0.0 (#515) Bumps [docdash](https://github.com/clenemt/docdash) from 1.2.0 to 2.0.0. - [Release notes](https://github.com/clenemt/docdash/releases) - [Changelog](https://github.com/clenemt/docdash/blob/master/CHANGELOG.md) - [Commits](https://github.com/clenemt/docdash/compare/1.2.0...2.0.0) --- updated-dependencies: - dependency-name: docdash dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/project/package-lock.json | 45 ++++++++++++++++++++++++------ packages/project/package.json | 2 +- 2 files changed, 37 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9abb2abc068..95883a839b4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -36,7 +36,7 @@ "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", - "docdash": "^1.2.0", + "docdash": "^2.0.0", "eslint": "^8.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", @@ -722,6 +722,18 @@ "@jridgewell/sourcemap-codec": "1.4.14" } }, + "node_modules/@jsdoc/salty": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.1.tgz", + "integrity": "sha512-JXwylDNSHa549N9uceDYu8D4GMXwSo3H8CCPYEQqxhhHpxD28+lRl2b3bS/caaPj5w1YD3SWtrficJNTnUjGpg==", + "dev": true, + "dependencies": { + "lodash": "^4.17.21" + }, + "engines": { + "node": ">=v12.0.0" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -2844,10 +2856,13 @@ } }, "node_modules/docdash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.2.0.tgz", - "integrity": "sha512-IYZbgYthPTspgqYeciRJNPhSwL51yer7HAwDXhF5p+H7mTDbPvY3PCk/QDjNxdPCpWkaJVFC4t7iCNB/t9E5Kw==", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-2.0.0.tgz", + "integrity": "sha512-AxxZwrMLmiArEHJirdyZmW6YTBKxkd/Z5V9U2EU1crIMtpgoU/cH7Hnc9n1E0lzB1ZSam+VVMSnvlc+9+GUGVg==", + "dev": true, + "dependencies": { + "@jsdoc/salty": "^0.2.1" + } }, "node_modules/doctrine": { "version": "3.0.0", @@ -9775,6 +9790,15 @@ "@jridgewell/sourcemap-codec": "1.4.14" } }, + "@jsdoc/salty": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.1.tgz", + "integrity": "sha512-JXwylDNSHa549N9uceDYu8D4GMXwSo3H8CCPYEQqxhhHpxD28+lRl2b3bS/caaPj5w1YD3SWtrficJNTnUjGpg==", + "dev": true, + "requires": { + "lodash": "^4.17.21" + } + }, "@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -11380,10 +11404,13 @@ } }, "docdash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.2.0.tgz", - "integrity": "sha512-IYZbgYthPTspgqYeciRJNPhSwL51yer7HAwDXhF5p+H7mTDbPvY3PCk/QDjNxdPCpWkaJVFC4t7iCNB/t9E5Kw==", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-2.0.0.tgz", + "integrity": "sha512-AxxZwrMLmiArEHJirdyZmW6YTBKxkd/Z5V9U2EU1crIMtpgoU/cH7Hnc9n1E0lzB1ZSam+VVMSnvlc+9+GUGVg==", + "dev": true, + "requires": { + "@jsdoc/salty": "^0.2.1" + } }, "doctrine": { "version": "3.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 3317f8c6e99..68257e872ce 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -142,7 +142,7 @@ "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", - "docdash": "^1.2.0", + "docdash": "^2.0.0", "eslint": "^8.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", From 424a0048b0e7820318d279a6a7bc0320b7bdc1a7 Mon Sep 17 00:00:00 2001 From: Lars Kissel <31293922+larskissel@users.noreply.github.com> Date: Mon, 28 Nov 2022 16:03:51 +0100 Subject: [PATCH 0727/1272] [ui5-project][FEATURE] Introduce SpecificationVersion class (#431) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Introduce a helper class representing a Specification Version. It provides methods for comparing versions, which simplifies version checks across the UI5 Tooling source code. The methods act as a kind of semver-adapter which ultimately allows executing specific semver functions on the SpecVersion format "Major.Minor". Co-authored-by: Günter Klatt <57760635+KlattG@users.noreply.github.com> Co-authored-by: Merlin Beutlberger --- packages/project/lib/build/TaskRunner.js | 5 +- .../lib/build/definitions/application.js | 2 +- .../project/lib/build/definitions/library.js | 2 +- .../project/lib/build/helpers/TaskUtil.js | 29 +- .../lib/build/helpers/createBuildManifest.js | 2 +- .../lib/specifications/Specification.js | 23 +- .../specifications/SpecificationVersion.js | 293 ++++++++++++++++++ packages/project/package.json | 1 + .../project/test/lib/build/ProjectBuilder.js | 1 - packages/project/test/lib/build/TaskRunner.js | 66 +++- .../test/lib/build/definitions/application.js | 21 +- .../test/lib/build/definitions/library.js | 21 +- .../lib/build/definitions/themeLibrary.js | 6 +- .../test/lib/build/helpers/TaskUtil.js | 66 ++-- packages/project/test/lib/package-exports.js | 3 +- .../test/lib/specifications/Specification.js | 43 ++- .../utils/SpecificationVersion.js | 242 +++++++++++++++ 17 files changed, 722 insertions(+), 104 deletions(-) create mode 100644 packages/project/lib/specifications/SpecificationVersion.js create mode 100644 packages/project/test/lib/specifications/utils/SpecificationVersion.js diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 605619a8de0..3f0e4e7c434 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -309,12 +309,13 @@ class TaskRunner { params.dependencies = dependencies; } - if (task.getSpecVersion() === "3.0") { + const specVersion = task.getSpecVersion(); + if (specVersion.gte("3.0")) { params.options.taskName = newTaskName; params.log = logger.getGroupLogger(`builder:custom-task:${newTaskName}`); } - const taskUtilInterface = taskUtil.getInterface(task.getSpecVersion()); + const taskUtilInterface = taskUtil.getInterface(specVersion); // Interface is undefined if specVersion does not support taskUtil if (taskUtilInterface) { params.taskUtil = taskUtilInterface; diff --git a/packages/project/lib/build/definitions/application.js b/packages/project/lib/build/definitions/application.js index 24416540f29..5a21557fc2b 100644 --- a/packages/project/lib/build/definitions/application.js +++ b/packages/project/lib/build/definitions/application.js @@ -34,7 +34,7 @@ export default function({project, taskUtil, getTask}) { // Support rules should not be minified to have readable code in the Support Assistant const minificationPattern = ["/**/*.js", "!**/*.support.js"]; - if (["2.6"].includes(project.getSpecVersion())) { + if (project.getSpecVersion().gte("2.6")) { const minificationExcludes = project.getMinificationExcludes(); if (minificationExcludes.length) { enhancePatternWithExcludes(minificationPattern, minificationExcludes, "/resources/"); diff --git a/packages/project/lib/build/definitions/library.js b/packages/project/lib/build/definitions/library.js index 82de4da1a77..0d86a2d6dce 100644 --- a/packages/project/lib/build/definitions/library.js +++ b/packages/project/lib/build/definitions/library.js @@ -73,7 +73,7 @@ export default function({project, taskUtil, getTask}) { // Support rules should not be minified to have readable code in the Support Assistant const minificationPattern = ["/resources/**/*.js", "!**/*.support.js"]; - if (["2.6"].includes(project.getSpecVersion())) { + if (project.getSpecVersion().gte("2.6")) { const minificationExcludes = project.getMinificationExcludes(); if (minificationExcludes.length) { enhancePatternWithExcludes(minificationPattern, minificationExcludes, "/resources/"); diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index 1529accf13b..d7168910606 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -184,7 +184,6 @@ class TaskUtil { * * @public * @typedef {object} @ui5/project/build/helpers/TaskUtil~ProjectInterface - * @property {Function} getSpecVersion Get the project Specification Version * @property {Function} getType Get the project type * @property {Function} getName Get the project name * @property {Function} getVersion Get the project version @@ -269,11 +268,13 @@ class TaskUtil { * Get an interface to an instance of this class that only provides those functions * that are supported by the given custom task extension specification version. * - * @param {string} specVersion Specification version of custom task extension + * @param {@ui5/project/specifications/SpecificationVersion} specVersion + * SpecVersionComparator instance of the custom task * @returns {object} An object with bound instance methods supported by the given specification version */ getInterface(specVersion) { - if (["0.1", "1.0", "1.1", "2.0", "2.1"].includes(specVersion)) { + if (specVersion.lte("2.1")) { + // Tasks defining specVersion <= 2.1 do not have access to any TaskUtil APIs return undefined; } @@ -283,26 +284,17 @@ class TaskUtil { bindFunctions(this, baseInterface, [ "setTag", "clearTag", "getTag", "isRootProject", "registerCleanupTask" ]); - switch (specVersion) { - case "2.2": - case "2.3": - case "2.4": - case "2.5": - case "2.6": - return baseInterface; - case "3.0": + + if (specVersion.gte("3.0")) { // getProject function, returning an interfaced project instance baseInterface.getProject = (projectName) => { const project = this.getProject(projectName); const baseProjectInterface = {}; bindFunctions(project, baseProjectInterface, [ - "getSpecVersion", "getType", "getName", "getVersion", "getNamespace", + "getType", "getName", "getVersion", "getNamespace", "getRootReader", "getReader", "getCustomConfiguration", "isFrameworkProject" ]); - switch (specVersion) { - case "3.0": - return baseProjectInterface; - } + return baseProjectInterface; }; // getDependencies function, returning an array of project names baseInterface.getDependencies = (projectName) => { @@ -318,11 +310,8 @@ class TaskUtil { ].forEach((factoryFunction) => { baseInterface.resourceFactory[factoryFunction] = this.resourceFactory[factoryFunction]; }); - - return baseInterface; - default: - throw new Error(`TaskUtil: Unknown or unsupported Specification Version ${specVersion}`); } + return baseInterface; } } diff --git a/packages/project/lib/build/helpers/createBuildManifest.js b/packages/project/lib/build/helpers/createBuildManifest.js index ebc0b3ead98..c1f1d08e771 100644 --- a/packages/project/lib/build/helpers/createBuildManifest.js +++ b/packages/project/lib/build/helpers/createBuildManifest.js @@ -38,7 +38,7 @@ export default async function(project, buildConfig) { const metadata = { project: { - specVersion: project.getSpecVersion(), + specVersion: project.getSpecVersion().toString(), type, metadata: { name: projectName, diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 227c9937d05..3c16e69bd68 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -1,5 +1,6 @@ import logger from "@ui5/logger"; import {createReader} from "@ui5/fs/resourceFactory"; +import SpecificationVersion from "./SpecificationVersion.js"; /** * Abstract superclass for all projects and extensions @@ -50,10 +51,9 @@ class Specification { const config = JSON.parse(JSON.stringify(configuration)); const {validate} = await import("../validation/validator.js"); - if (config.specVersion === "0.1" || config.specVersion === "1.0" || - config.specVersion === "1.1") { + if (SpecificationVersion.major(config.specVersion) <= 1) { const originalSpecVersion = config.specVersion; - this._log.verbose(`Detected legacy specification version ${config.specVersion}, defined for ` + + this._log.verbose(`Detected legacy Specification Version ${config.specVersion}, defined for ` + `${config.kind} ${config.metadata.name}. ` + `Attempting to migrate the project to a supported specification version...`); this._migrateLegacyProject(config); @@ -69,20 +69,12 @@ class Specification { `Validation error after migration of ${config.kind} ${config.metadata.name}:`); this._log.verbose(err.message); throw new Error( - `${config.kind} ${config.metadata.name} defines unsupported specification version ` + + `${config.kind} ${config.metadata.name} defines unsupported Specification Version ` + `${originalSpecVersion}. Please manually upgrade to 2.0 or higher. ` + `For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions - ` + `An attempted migration to a supported specification version failed, ` + `likely due to unrecognized configuration. Check verbose log for details.`); } - } else if (config.specVersion !== "2.0" && - config.specVersion !== "2.1" && config.specVersion !== "2.2" && - config.specVersion !== "2.3" && config.specVersion !== "2.4" && - config.specVersion !== "2.5" && config.specVersion !== "2.6") { - throw new Error( - `Unsupported specification version ${config.specVersion} defined in ${config.kind} ` + - `${config.metadata.name}. Your UI5 CLI installation might be outdated. ` + - `For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`); } else { await validate({ config, @@ -102,7 +94,8 @@ class Specification { this._name = config.metadata.name; this._kind = config.kind; this._type = config.type; - this._specVersion = config.specVersion; + this._specVersionString = config.specVersion; + this._specVersion = new SpecificationVersion(this._specVersionString); this._config = config; return this; @@ -142,10 +135,10 @@ class Specification { } /** - * Get the Specification Version + * Returns an instance of a helper class representing a Specification Version * * @public - * @returns {string} Specification Version + * @returns {@ui5/project/specifications/SpecificationVersion} */ getSpecVersion() { return this._specVersion; diff --git a/packages/project/lib/specifications/SpecificationVersion.js b/packages/project/lib/specifications/SpecificationVersion.js new file mode 100644 index 00000000000..ae48edee3be --- /dev/null +++ b/packages/project/lib/specifications/SpecificationVersion.js @@ -0,0 +1,293 @@ +import semver from "semver"; + +const SPEC_VERSION_PATTERN = /^\d+\.\d+$/; +const SUPPORTED_VERSIONS = [ + "0.1", "1.0", "1.1", + "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", + "3.0" +]; + +/** + * Helper class representing a Specification Version. Featuring helper functions for easy comparison + * of versions. + * + * @public + * @class + * @alias @ui5/project/specifications/utils/SpecificationVersion + */ +class SpecificationVersion { + #specVersion; + #semverVersion; + + /** + * @public + * @param {string} specVersion Specification Version to use for all comparison operations + * @throws {Error} Throws if provided Specification Version is not supported by this version of @ui5/project + */ + constructor(specVersion) { + this.#specVersion = specVersion; + this.#semverVersion = getSemverCompatibleVersion(specVersion); // Throws for unsupported versions + } + + /** + * Returns the Specification Version + * + * @public + * @returns {string} Specification Version + */ + toString() { + return this.#specVersion; + } + + /** + * Returns the major-version of the instance's Specification Version + * + * @public + * @returns {integer} Major version + */ + major() { + return semver.major(this.#semverVersion); + } + + /** + * Returns the minor-version of the instance's Specification Version + * + * @public + * @returns {integer} Minor version + */ + minor() { + return semver.minor(this.#semverVersion); + } + + /** + * Test whether the instance's Specification Version falls into the provided range + * + * @public +@param {string} range [Semver]{@link https://www.npmjs.com/package/semver}-style version range, +for example 2.2 - 2.4 + * @returns {boolean} True if the instance's Specification Version falls into the provided range + */ + satisfies(range) { + return semver.satisfies(this.#semverVersion, range); + } + + /** + * Test whether the instance's Specification Version is greater than the provided test version + * + * @public + * @param {string} testVersion A Specification Version to compare the instance's Specification Version to + * @returns {boolean} True if the instance's Specification Version is greater than the provided version + */ + gt(testVersion) { + return handleSemverComparator(semver.gt, this.#semverVersion, testVersion); + } + + /** + * Test whether the instance's Specification Version is greater than or equal to the provided test version + * + * @public + * @param {string} testVersion A Specification Version to compare the instance's Specification Version to + * @returns {boolean} True if the instance's Specification Version is greater than or equal to the provided version + */ + gte(testVersion) { + return handleSemverComparator(semver.gte, this.#semverVersion, testVersion); + } + + /** + * Test whether the instance's Specification Version is smaller than the provided test version + * + * @public + * @param {string} testVersion A Specification Version to compare the instance's Specification Version to + * @returns {boolean} True if the instance's Specification Version is smaller than the provided version + */ + lt(testVersion) { + return handleSemverComparator(semver.lt, this.#semverVersion, testVersion); + } + + /** + * Test whether the instance's Specification Version is smaller than or equal to the provided test version + * + * @public + * @param {string} testVersion A Specification Version to compare the instance's Specification Version to + * @returns {boolean} True if the instance's Specification Version is smaller than or equal to the provided version + */ + lte(testVersion) { + return handleSemverComparator(semver.lte, this.#semverVersion, testVersion); + } + + /** + * Test whether the instance's Specification Version is equal to the provided test version + * + * @public + * @param {string} testVersion A Specification Version to compare the instance's Specification Version to + * @returns {boolean} True if the instance's Specification Version is equal to the provided version + */ + eq(testVersion) { + return handleSemverComparator(semver.eq, this.#semverVersion, testVersion); + } + + /** + * Test whether the instance's Specification Version is not equal to the provided test version + * + * @public + * @param {string} testVersion A Specification Version to compare the instance's Specification Version to + * @returns {boolean} True if the instance's Specification Version is not equal to the provided version + */ + neq(testVersion) { + return handleSemverComparator(semver.neq, this.#semverVersion, testVersion); + } + + /** + * Test whether the provided Specification Version is supported by this version of @ui5/project + * + * @public + * @param {string} testVersion A Specification Version to compare the instance's Specification Version to + * @returns {boolean} True if the provided Specification Version is supported + */ + static isSupportedSpecVersion(testVersion) { + return SUPPORTED_VERSIONS.includes(testVersion); + } + + /** + * Returns the major-version of the provided Specification Version + * + * @public + * @param {string} specVersion Specification Version + * @returns {integer} Major version + */ + static major(specVersion) { + const comparator = new SpecificationVersion(specVersion); + return comparator.major(); + } + + /** + * Returns the minor-version of the provided Specification Version + * + * @public + * @param {string} specVersion Specification Version + * @returns {integer} Minor version + */ + static minor(specVersion) { + const comparator = new SpecificationVersion(specVersion); + return comparator.minor(); + } + + /** + * Test whether the provided Specification Version falls into the provided range + * + * @public + * @param {string} specVersion Specification Version + * @param {string} range [Semver]{@link https://www.npmjs.com/package/semver}-style version range, + * for example 2.2 - 2.4 + * @returns {boolean} True if the provided Specification Version falls into the provided range + */ + static satisfies(specVersion, range) { + const comparator = new SpecificationVersion(specVersion); + return comparator.satisfies(range); + } + + /** + * Test whether the provided Specification Version is greater than the provided test version + * + * @public + * @param {string} specVersion Specification Version + * @param {string} testVersion A Specification Version to compare the provided Specification Version to + * @returns {boolean} True if the provided Specification Version is greater than the provided version + */ + static gt(specVersion, testVersion) { + const comparator = new SpecificationVersion(specVersion); + return comparator.gt(testVersion); + } + + /** + * Test whether the provided Specification Version is greater than or equal to the provided test version + * + * @public + * @param {string} specVersion Specification Version + * @param {string} testVersion A Specification Version to compare the provided Specification Version to + * @returns {boolean} True if the provided Specification Version is greater than or equal to the provided version + */ + static gte(specVersion, testVersion) { + const comparator = new SpecificationVersion(specVersion); + return comparator.gte(testVersion); + } + + /** + * Test whether the provided Specification Version is smaller than the provided test version + * + * @public + * @param {string} specVersion Specification Version + * @param {string} testVersion A Specification Version to compare the provided Specification Version to + * @returns {boolean} True if the provided Specification Version is smaller than the provided version + */ + static lt(specVersion, testVersion) { + const comparator = new SpecificationVersion(specVersion); + return comparator.lt(testVersion); + } + + /** + * Test whether the provided Specification Version is smaller than or equal to the provided test version + * + * @public + * @param {string} specVersion Specification Version + * @param {string} testVersion A Specification Version to compare the provided Specification Version to + * @returns {boolean} True if the provided Specification Version is smaller than or equal to the provided version + */ + static lte(specVersion, testVersion) { + const comparator = new SpecificationVersion(specVersion); + return comparator.lte(testVersion); + } + + /** + * Test whether the provided Specification Version is equal to the provided test version + * + * @public + * @param {string} specVersion Specification Version + * @param {string} testVersion A Specification Version to compare the provided Specification Version to + * @returns {boolean} True if the provided Specification Version is equal to the provided version + */ + static eq(specVersion, testVersion) { + const comparator = new SpecificationVersion(specVersion); + return comparator.eq(testVersion); + } + + /** + * Test whether the provided Specification Version is not equal to the provided test version + * + * @public + * @param {string} specVersion Specification Version + * @param {string} testVersion A Specification Version to compare the provided Specification Version to + * @returns {boolean} True if the provided Specification Version is not equal to the provided version + */ + static neq(specVersion, testVersion) { + const comparator = new SpecificationVersion(specVersion); + return comparator.neq(testVersion); + } +} + +function getUnsupportedSpecVersionMessage(specVersion) { + return `Unsupported Specification Version ${specVersion} defined. Your UI5 CLI installation might be outdated. ` + + `For details, see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`; +} + +function getSemverCompatibleVersion(specVersion) { + if (SpecificationVersion.isSupportedSpecVersion(specVersion)) { + return specVersion + ".0"; + } + throw new Error(getUnsupportedSpecVersionMessage(specVersion)); +} + +function handleSemverComparator(comparator, baseVersion, testVersion) { + if (SPEC_VERSION_PATTERN.test(testVersion)) { + const a = baseVersion; + const b = testVersion + ".0"; + return comparator(a, b); + } + throw new Error("Invalid spec version expectation given in comparator: " + testVersion); +} + +export default SpecificationVersion; + +// Export local function for testing only +export const __localFunctions__ = (process.env.NODE_ENV === "test") ? + {getSemverCompatibleVersion, handleSemverComparator} : /* istanbul ignore next */ undefined; diff --git a/packages/project/package.json b/packages/project/package.json index 68257e872ce..e8c5b44b0f5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -18,6 +18,7 @@ ], "type": "module", "exports": { + "./specifications/SpecificationVersion": "./lib/specifications/SpecificationVersion.js", "./ui5Framework/Openui5Resolver": "./lib/ui5Framework/Openui5Resolver.js", "./ui5Framework/Sapui5Resolver": "./lib/ui5Framework/Sapui5Resolver.js", "./validation/validator": "./lib/validation/validator.js", diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 8a0227f55fc..3bca2827040 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -13,7 +13,6 @@ function getMockProject(type, id = "b") { getType: () => type, getCopyright: noop, getVersion: noop, - getSpecVersion: () => "0.1", getReader: () => "reader", getWorkspace: () => "workspace", }; diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 77f46f01128..d7410cdd9a6 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -24,8 +24,12 @@ function getMockProject(type) { getPropertiesFileSourceEncoding: noop, getCopyright: noop, getVersion: noop, - getSpecVersion: () => "0.1", getMinificationExcludes: emptyarray, + getSpecVersion: () => { + return { + gte: () => false + }; + }, getComponentPreloadPaths: () => [ "project/b/**/Component.js" ], @@ -391,9 +395,14 @@ test("Custom tasks is unknown", async (t) => { test("Custom task is called correctly", async (t) => { const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStub = sinon.stub(); + const specVersionGteStub = sinon.stub().returns(false); + const mockSpecVersion = { + toString: () => "2.6", + gte: specVersionGteStub + }; graph.getExtension.returns({ getTask: () => taskStub, - getSpecVersion: () => "2.6" + getSpecVersion: () => mockSpecVersion }); t.context.taskUtil.getInterface.returns("taskUtil interface"); const project = getMockProject("module"); @@ -412,6 +421,9 @@ test("Custom task is called correctly", async (t) => { dependencies: "dependencies" }); + t.is(specVersionGteStub.callCount, 1, "SpecificationVersion#gte got called once"); + t.is(specVersionGteStub.getCall(0).args[0], "3.0", + "SpecificationVersion#gte got called with correct arguments"); t.is(taskStub.callCount, 1, "Task got called once"); t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); t.deepEqual(taskStub.getCall(0).args[0], { @@ -426,16 +438,21 @@ test("Custom task is called correctly", async (t) => { }, "Task got called with one argument"); t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], "2.6", + t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersion, "taskUtil#getInterface got called with correct argument"); }); test("Custom task with legacy spec version", async (t) => { const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStub = sinon.stub(); + const specVersionGteStub = sinon.stub().returns(false); + const mockSpecVersion = { + toString: () => "1.0", + gte: specVersionGteStub + }; graph.getExtension.returns({ getTask: () => taskStub, - getSpecVersion: () => "1.0" + getSpecVersion: () => mockSpecVersion }); t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion const project = getMockProject("module"); @@ -454,6 +471,9 @@ test("Custom task with legacy spec version", async (t) => { dependencies: "dependencies" }); + t.is(specVersionGteStub.callCount, 1, "SpecificationVersion#gte got called once"); + t.is(specVersionGteStub.getCall(0).args[0], "3.0", + "SpecificationVersion#gte got called with correct arguments"); t.is(taskStub.callCount, 1, "Task got called once"); t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); t.deepEqual(taskStub.getCall(0).args[0], { @@ -467,16 +487,21 @@ test("Custom task with legacy spec version", async (t) => { }, "Task got called with one argument"); t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], "1.0", + t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersion, "taskUtil#getInterface got called with correct argument"); }); test("Custom task with specVersion 3.0", async (t) => { const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStub = sinon.stub(); + const specVersionGteStub = sinon.stub().returns(true); + const mockSpecVersion = { + toString: () => "3.0", + gte: specVersionGteStub + }; graph.getExtension.returns({ getTask: () => taskStub, - getSpecVersion: () => "3.0" + getSpecVersion: () => mockSpecVersion }); t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion const project = getMockProject("module"); @@ -495,6 +520,9 @@ test("Custom task with specVersion 3.0", async (t) => { dependencies: "dependencies" }, "log"); + t.is(specVersionGteStub.callCount, 1, "SpecificationVersion#gte got called once"); + t.is(specVersionGteStub.getCall(0).args[0], "3.0", + "SpecificationVersion#gte got called with correct arguments"); t.is(taskStub.callCount, 1, "Task got called once"); t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); t.deepEqual(taskStub.getCall(0).args[0], { @@ -510,7 +538,7 @@ test("Custom task with specVersion 3.0", async (t) => { }, "Task got called with one argument"); t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], "3.0", + t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersion, "taskUtil#getInterface got called with correct argument"); }); @@ -519,17 +547,29 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { const taskStub1 = sinon.stub(); const taskStub2 = sinon.stub(); const taskStub3 = sinon.stub(); + const mockSpecVersionA = { + toString: () => "2.5", + gte: () => false + }; + const mockSpecVersionB = { + toString: () => "2.6", + gte: () => false + }; + const mockSpecVersionC = { + toString: () => "3.0", + gte: () => true + }; graph.getExtension.onFirstCall().returns({ getTask: () => taskStub1, - getSpecVersion: () => "2.5" + getSpecVersion: () => mockSpecVersionA }); graph.getExtension.onSecondCall().returns({ getTask: () => taskStub2, - getSpecVersion: () => "2.6" + getSpecVersion: () => mockSpecVersionB }); graph.getExtension.onThirdCall().returns({ getTask: () => taskStub3, - getSpecVersion: () => "3.0" + getSpecVersion: () => mockSpecVersionC }); const project = getMockProject("module"); project.getCustomTasks = () => [ @@ -599,11 +639,11 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { }, "Task 3 got called with one argument"); t.is(taskUtil.getInterface.callCount, 3, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], "2.5", + t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersionA, "taskUtil#getInterface got called with correct argument on first call"); - t.is(taskUtil.getInterface.getCall(1).args[0], "3.0", + t.is(taskUtil.getInterface.getCall(1).args[0], mockSpecVersionC, "taskUtil#getInterface got called with correct argument on second call"); - t.is(taskUtil.getInterface.getCall(2).args[0], "2.6", + t.is(taskUtil.getInterface.getCall(2).args[0], mockSpecVersionB, "taskUtil#getInterface got called with correct argument on third call"); }); diff --git a/packages/project/test/lib/build/definitions/application.js b/packages/project/test/lib/build/definitions/application.js index 76240a61726..4fe95a23a08 100644 --- a/packages/project/test/lib/build/definitions/application.js +++ b/packages/project/test/lib/build/definitions/application.js @@ -14,7 +14,12 @@ function getMockProject() { getPropertiesFileSourceEncoding: () => "UTF-412", getCopyright: () => "copyright", getVersion: () => "version", - getSpecVersion: () => "2.6", + getSpecVersion: () => { + return { + toString: () => "2.6", + gte: () => true + }; + }, getMinificationExcludes: emptyarray, getComponentPreloadPaths: emptyarray, getComponentPreloadNamespaces: emptyarray, @@ -103,7 +108,12 @@ test("Standard build", (t) => { test("Standard build with legacy spec version", (t) => { const {project, taskUtil, getTask} = t.context; - project.getSpecVersion = () => "0.1"; + project.getSpecVersion = () => { + return { + toString: () => "0.1", + gte: () => false + }; + }; const generateBundleTaskStub = sinon.stub(); getTask.returns({ task: generateBundleTaskStub @@ -364,7 +374,12 @@ test("Minification excludes", (t) => { test("Minification excludes not applied for legacy specVersion", (t) => { const {project, taskUtil, getTask} = t.context; - project.getSpecVersion = () => "2.5"; + project.getSpecVersion = () => { + return { + toString: () => "2.5", + gte: () => false + }; + }; project.getMinificationExcludes = () => ["**.html"]; const tasks = application({ diff --git a/packages/project/test/lib/build/definitions/library.js b/packages/project/test/lib/build/definitions/library.js index 444266638c4..165c8103d5e 100644 --- a/packages/project/test/lib/build/definitions/library.js +++ b/packages/project/test/lib/build/definitions/library.js @@ -14,7 +14,12 @@ function getMockProject() { getPropertiesFileSourceEncoding: () => "UTF-412", getCopyright: () => "copyright", getVersion: () => "version", - getSpecVersion: () => "2.6", + getSpecVersion: () => { + return { + toString: () => "2.6", + gte: () => true + }; + }, getMinificationExcludes: emptyarray, getComponentPreloadPaths: emptyarray, getComponentPreloadNamespaces: emptyarray, @@ -151,7 +156,12 @@ test("Standard build", async (t) => { test("Standard build with legacy spec version", (t) => { const {project, taskUtil, getTask} = t.context; - project.getSpecVersion = () => "0.1"; + project.getSpecVersion = () => { + return { + toString: () => "0.1", + gte: () => false + }; + }; const tasks = library({ project, taskUtil, getTask @@ -432,7 +442,12 @@ test("Minification excludes", (t) => { test("Minification excludes not applied for legacy specVersion", (t) => { const {project, taskUtil, getTask} = t.context; - project.getSpecVersion = () => "2.5"; + project.getSpecVersion = () => { + return { + toString: () => "2.5", + gte: () => false + }; + }; project.getMinificationExcludes = () => ["**.html"]; const tasks = library({ diff --git a/packages/project/test/lib/build/definitions/themeLibrary.js b/packages/project/test/lib/build/definitions/themeLibrary.js index e7c04a425a2..a5f72c5a4d7 100644 --- a/packages/project/test/lib/build/definitions/themeLibrary.js +++ b/packages/project/test/lib/build/definitions/themeLibrary.js @@ -13,7 +13,11 @@ function getMockProject() { getType: () => "theme-library", getCopyright: () => "copyright", getVersion: () => "version", - getSpecVersion: () => "2.6", + getSpecVersion: () => { + return { + toString: () => "2.6" + }; + }, getMinificationExcludes: emptyarray, getComponentPreloadPaths: emptyarray, getComponentPreloadNamespaces: emptyarray, diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index bc2a57c5fcb..d960db74bea 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -1,11 +1,16 @@ import test from "ava"; import sinon from "sinon"; import TaskUtil from "../../../../lib/build/helpers/TaskUtil.js"; +import SpecificationVersion from "../../../../lib/specifications/SpecificationVersion.js"; test.afterEach.always((t) => { sinon.restore(); }); +function getSpecificationVersion(specVersion) { + return new SpecificationVersion(specVersion); +} + const STANDARD_TAGS = Object.freeze({ IsDebugVariant: "ui5:IsDebugVariant", HasDebugVariant: "ui5:HasDebugVariant", @@ -15,9 +20,7 @@ const STANDARD_TAGS = Object.freeze({ test("Instantiation", (t) => { const taskUtil = new TaskUtil({ - projectBuildContext: { - // STANDARD_TAGS: ["some tag", "some other tag", "Thursday"] - } + projectBuildContext: {} }); t.deepEqual(taskUtil.STANDARD_TAGS, STANDARD_TAGS, "Correct standard tags exposed"); @@ -183,6 +186,22 @@ test("getDependencies", (t) => { t.is(res, "Pony farm!", "Correct result"); }); +test("resourceFactory", (t) => { + const {resourceFactory} = new TaskUtil({ + projectBuildContext: {} + }); + t.is(typeof resourceFactory.createResource, "function", + "resourceFactory function createResource is available"); + t.is(typeof resourceFactory.createReaderCollectionPrioritized, "function", + "resourceFactory function createReaderCollectionPrioritized is available"); + t.is(typeof resourceFactory.createFilterReader, "function", + "resourceFactory function createFilterReader is available"); + t.is(typeof resourceFactory.createLinkReader, "function", + "resourceFactory function createLinkReader is available"); + t.is(typeof resourceFactory.createFlatReader, "function", + "resourceFactory function createFlatReader is available"); +}); + test("registerCleanupTask", (t) => { const registerCleanupTaskStub = sinon.stub(); const taskUtil = new TaskUtil({ @@ -202,7 +221,7 @@ test("getInterface: specVersion 1.0", (t) => { projectBuildContext: {} }); - const interfacedTaskUtil = taskUtil.getInterface("1.0"); + const interfacedTaskUtil = taskUtil.getInterface(getSpecificationVersion("1.0")); t.is(interfacedTaskUtil, undefined, "no interface provided"); }); @@ -212,7 +231,7 @@ test("getInterface: specVersion 2.2", (t) => { projectBuildContext: {} }); - const interfacedTaskUtil = taskUtil.getInterface("2.2"); + const interfacedTaskUtil = taskUtil.getInterface(getSpecificationVersion("2.2")); t.deepEqual(Object.keys(interfacedTaskUtil), [ "STANDARD_TAGS", @@ -236,7 +255,7 @@ test("getInterface: specVersion 2.3", (t) => { projectBuildContext: {} }); - const interfacedTaskUtil = taskUtil.getInterface("2.3"); + const interfacedTaskUtil = taskUtil.getInterface(getSpecificationVersion("2.3")); t.deepEqual(Object.keys(interfacedTaskUtil), [ "STANDARD_TAGS", @@ -260,7 +279,7 @@ test("getInterface: specVersion 2.4", (t) => { projectBuildContext: {} }); - const interfacedTaskUtil = taskUtil.getInterface("2.4"); + const interfacedTaskUtil = taskUtil.getInterface(getSpecificationVersion("2.4")); t.deepEqual(Object.keys(interfacedTaskUtil), [ "STANDARD_TAGS", @@ -284,7 +303,7 @@ test("getInterface: specVersion 2.5", (t) => { projectBuildContext: {} }); - const interfacedTaskUtil = taskUtil.getInterface("2.5"); + const interfacedTaskUtil = taskUtil.getInterface(getSpecificationVersion("2.5")); t.deepEqual(Object.keys(interfacedTaskUtil), [ "STANDARD_TAGS", @@ -308,7 +327,7 @@ test("getInterface: specVersion 2.6", (t) => { projectBuildContext: {} }); - const interfacedTaskUtil = taskUtil.getInterface("2.6"); + const interfacedTaskUtil = taskUtil.getInterface(getSpecificationVersion("2.6")); t.deepEqual(Object.keys(interfacedTaskUtil), [ "STANDARD_TAGS", @@ -350,7 +369,7 @@ test("getInterface: specVersion 3.0", (t) => { } }); - const interfacedTaskUtil = taskUtil.getInterface("3.0"); + const interfacedTaskUtil = taskUtil.getInterface(getSpecificationVersion("3.0")); t.deepEqual(Object.keys(interfacedTaskUtil), [ "STANDARD_TAGS", @@ -375,7 +394,6 @@ test("getInterface: specVersion 3.0", (t) => { // getProject const interfacedProject = interfacedTaskUtil.getProject("pony"); t.deepEqual(Object.keys(interfacedProject), [ - "getSpecVersion", "getType", "getName", "getVersion", @@ -386,7 +404,6 @@ test("getInterface: specVersion 3.0", (t) => { "isFrameworkProject", ], "Correct methods are provided"); - t.is(interfacedProject.getSpecVersion(), "specVersion", "getSpecVersion function is bound correctly"); t.is(interfacedProject.getType(), "type", "getType function is bound correctly"); t.is(interfacedProject.getName(), "name", "getName function is bound correctly"); t.is(interfacedProject.getVersion(), "version", "getVersion function is bound correctly"); @@ -415,28 +432,3 @@ test("getInterface: specVersion 3.0", (t) => { t.is(typeof resourceFactory.createFlatReader, "function", "resourceFactory function createFlatReader is available"); }); - -test("getInterface: specVersion undefined", (t) => { - const taskUtil = new TaskUtil({ - projectBuildContext: {} - }); - - const err = t.throws(() => { - taskUtil.getInterface(); - }); - - t.is(err.message, "TaskUtil: Unknown or unsupported Specification Version undefined", - "Throw with correct error message"); -}); - -test("getInterface: specVersion unknown", (t) => { - const taskUtil = new TaskUtil({ - projectBuildContext: {} - }); - const err = t.throws(() => { - taskUtil.getInterface("1.5"); - }); - - t.is(err.message, "TaskUtil: Unknown or unsupported Specification Version 1.5", - "Throw with correct error message"); -}); diff --git a/packages/project/test/lib/package-exports.js b/packages/project/test/lib/package-exports.js index 7d85d4e45eb..349f99de2f5 100644 --- a/packages/project/test/lib/package-exports.js +++ b/packages/project/test/lib/package-exports.js @@ -13,11 +13,12 @@ test("export of package.json", (t) => { // Check number of definied exports test("check number of exports", (t) => { const packageJson = require("@ui5/project/package.json"); - t.is(Object.keys(packageJson.exports).length, 8); + t.is(Object.keys(packageJson.exports).length, 9); }); // Public API contract (exported modules) [ + "specifications/SpecificationVersion", "ui5Framework/Openui5Resolver", "ui5Framework/Sapui5Resolver", "validation/validator", diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index 214f56f32f2..b292b9e76b7 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -48,6 +48,9 @@ test("Configurations", async (t) => { const project = await Specification.create(t.context.basicProjectInput); t.is(project.getKind(), "project", "Returned correct kind configuration"); t.is(project.getType(), "application", "Returned correct type configuration"); + t.is(project.getSpecVersion().toString(), "2.3", "Returned correct specification version"); + t.is(project.getSpecVersion().major(), 2, + "SpecVersionComparator returned correct major version"); }); test("Access project root resources via reader", async (t) => { @@ -110,7 +113,7 @@ test("Migrate legacy project", async (t) => { t.context.basicProjectInput.configuration.specVersion = "1.0"; const project = await Specification.create(t.context.basicProjectInput); - t.is(project.getSpecVersion(), "2.6", "Project got migrated to latest specVersion"); + t.is(project.getSpecVersion().toString(), "2.6", "Project got migrated to latest specVersion"); }); test("Migrate legacy project unexpected configuration", async (t) => { @@ -119,14 +122,14 @@ test("Migrate legacy project unexpected configuration", async (t) => { const err = await t.throwsAsync(Specification.create(t.context.basicProjectInput)); t.is(err.message, - "project application.a defines unsupported specification version 1.0. Please manually upgrade to 2.0 or " + + "project application.a defines unsupported Specification Version 1.0. Please manually upgrade to 2.0 or " + "higher. For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions - " + "An attempted migration to a supported specification version failed, likely due to unrecognized " + "configuration. Check verbose log for details.", "Threw with expected error message"); }); -test("Migrate legacy module", async (t) => { +test("Migrate legacy module: specVersion 1.0", async (t) => { const project = await Specification.create({ id: "my.task", version: "3.4.7-beta", @@ -144,7 +147,28 @@ test("Migrate legacy module", async (t) => { } }); - t.is(project.getSpecVersion(), "2.6", "Project got migrated to latest specVersion"); + t.is(project.getSpecVersion().toString(), "2.6", "Project got migrated to latest specVersion"); +}); + +test("Migrate legacy module: specVersion 0.1", async (t) => { + const project = await Specification.create({ + id: "my.task", + version: "3.4.7-beta", + modulePath: genericExtensionPath, + configuration: { + specVersion: "0.1", + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "lib/extensionModule.js" + } + } + }); + + t.is(project.getSpecVersion().toString(), "2.6", "Project got migrated to latest specVersion"); }); test("Migrate legacy extension", async (t) => { @@ -171,7 +195,7 @@ test("Migrate legacy extension", async (t) => { } }); - t.is(project.getSpecVersion(), "2.6", "Project got migrated to latest specVersion"); + t.is(project.getSpecVersion().toString(), "2.6", "Project got migrated to latest specVersion"); }); [{ @@ -266,3 +290,12 @@ test("create: Unknown type", async (t) => { message: "Unable to create Specification instance: Unknown specification type 'foo'" }); }); + +test("Invalid specVersion", async (t) => { + t.context.basicProjectInput.configuration.specVersion = "0.5"; + await t.throwsAsync(Specification.create(t.context.basicProjectInput), { + message: + "Unsupported Specification Version 0.5 defined. Your UI5 CLI installation might be outdated. " + + "For details, see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + }, "Threw with expected error message"); +}); diff --git a/packages/project/test/lib/specifications/utils/SpecificationVersion.js b/packages/project/test/lib/specifications/utils/SpecificationVersion.js new file mode 100644 index 00000000000..8094f75cb1b --- /dev/null +++ b/packages/project/test/lib/specifications/utils/SpecificationVersion.js @@ -0,0 +1,242 @@ +import test from "ava"; +import sinonGlobal from "sinon"; +import SpecificationVersion from "../../../../lib/specifications/SpecificationVersion.js"; +import {__localFunctions__} from "../../../../lib/specifications/SpecificationVersion.js"; + +const unsupportedSpecVersionText = (specVersion) => + `Unsupported Specification Version ${specVersion} defined. Your UI5 CLI installation might be outdated. ` + + `For details, see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`; + +test.beforeEach((t) => { + t.context.sinon = sinonGlobal.createSandbox(); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); +}); + +test.serial("Invalid specVersion", (t) => { + const {sinon} = t.context; + const isSupportedSpecVersionStub = + sinon.stub(SpecificationVersion, "isSupportedSpecVersion").returns(false); + + t.throws(() => { + new SpecificationVersion("2.5"); + }, { + message: unsupportedSpecVersionText("2.5") + }, "Threw with expected error message"); + + t.is(isSupportedSpecVersionStub.callCount, 1, "Static isSupportedSpecVersionStub has been called once"); + t.deepEqual(isSupportedSpecVersionStub.getCall(0).args, ["2.5"], + "Static isSupportedSpecVersionStub has been called with expected arguments"); +}); + +test("(instance) toString", (t) => { + t.is(new SpecificationVersion("0.1").toString(), "0.1"); + t.is(new SpecificationVersion("1.1").toString(), "1.1"); +}); + +test("(instance) major", (t) => { + t.is(new SpecificationVersion("0.1").major(), 0); + t.is(new SpecificationVersion("1.1").major(), 1); + t.is(new SpecificationVersion("2.1").major(), 2); + + t.is(t.throws(() => { + new SpecificationVersion("0.2").major(); + }).message, unsupportedSpecVersionText("0.2")); +}); + +test("(instance) minor", (t) => { + t.is(new SpecificationVersion("2.1").minor(), 1); + t.is(new SpecificationVersion("2.2").minor(), 2); + t.is(new SpecificationVersion("2.3").minor(), 3); + + t.is(t.throws(() => { + new SpecificationVersion("1.2").minor(); + }).message, unsupportedSpecVersionText("1.2")); +}); + +test("(instance) satisfies", (t) => { + // range: 1.x + t.is(new SpecificationVersion("1.0").satisfies("1.x"), true); + t.is(new SpecificationVersion("1.1").satisfies("1.x"), true); + t.is(new SpecificationVersion("2.0").satisfies("1.x"), false); + + // range: ^2.2 + t.is(new SpecificationVersion("2.1").satisfies("^2.2"), false); + t.is(new SpecificationVersion("2.2").satisfies("^2.2"), true); + t.is(new SpecificationVersion("2.3").satisfies("^2.2"), true); + + // range: > 1.0 + t.is(new SpecificationVersion("1.0").satisfies("> 1.0"), false); + t.is(new SpecificationVersion("1.1").satisfies("> 1.0"), true); + t.is(new SpecificationVersion("2.2").satisfies("> 1.0"), true); + + // range: 2.2 - 2.4 + t.is(new SpecificationVersion("2.1").satisfies("2.2 - 2.4"), false); + t.is(new SpecificationVersion("2.2").satisfies("2.2 - 2.4"), true); + t.is(new SpecificationVersion("2.3").satisfies("2.2 - 2.4"), true); + t.is(new SpecificationVersion("2.4").satisfies("2.2 - 2.4"), true); + t.is(new SpecificationVersion("2.5").satisfies("2.2 - 2.4"), false); + + // range: 0.1 || 1.0 - 1.1 || ^2.5 + t.is(new SpecificationVersion("0.1").satisfies("0.1 || 1.0 - 1.1 || ^2.5"), true); + t.is(new SpecificationVersion("1.0").satisfies("0.1 || 1.0 - 1.1 || ^2.5"), true); + t.is(new SpecificationVersion("1.1").satisfies("0.1 || 1.0 - 1.1 || ^2.5"), true); + t.is(new SpecificationVersion("2.4").satisfies("0.1 || 1.0 - 1.1 || ^2.5"), false); + t.is(new SpecificationVersion("2.5").satisfies("0.1 || 1.0 - 1.1 || ^2.5"), true); + t.is(new SpecificationVersion("2.6").satisfies("0.1 || 1.0 - 1.1 || ^2.5"), true); + + // unsupported spec version + t.is(t.throws(() => { + new SpecificationVersion("0.2").satisfies("1.x"); + }).message, unsupportedSpecVersionText("0.2")); +}); + +test("(instance) low level comparator", (t) => { + t.is(new SpecificationVersion("2.1").gt("2.2"), false); + t.is(new SpecificationVersion("2.2").gt("2.2"), false); + t.is(new SpecificationVersion("2.3").gt("2.2"), true); + + t.is(new SpecificationVersion("2.1").gte("2.2"), false); + t.is(new SpecificationVersion("2.2").gte("2.2"), true); + t.is(new SpecificationVersion("2.3").gte("2.2"), true); + + t.is(new SpecificationVersion("2.1").lt("2.2"), true); + t.is(new SpecificationVersion("2.2").lt("2.2"), false); + t.is(new SpecificationVersion("2.3").lt("2.2"), false); + + t.is(new SpecificationVersion("2.1").lte("2.2"), true); + t.is(new SpecificationVersion("2.2").lte("2.2"), true); + t.is(new SpecificationVersion("2.3").lte("2.2"), false); + + t.is(new SpecificationVersion("2.0").eq("2.2"), false); + t.is(new SpecificationVersion("2.2").eq("2.2"), true); + + t.is(new SpecificationVersion("2.0").neq("2.2"), true); + t.is(new SpecificationVersion("2.2").neq("2.2"), false); +}); + +test("(static) isSupportedSpecVersion", (t) => { + t.is(SpecificationVersion.isSupportedSpecVersion("0.1"), true); + t.is(SpecificationVersion.isSupportedSpecVersion("1.0"), true); + t.is(SpecificationVersion.isSupportedSpecVersion("1.1"), true); + t.is(SpecificationVersion.isSupportedSpecVersion("2.0"), true); + t.is(SpecificationVersion.isSupportedSpecVersion("2.4"), true); + t.is(SpecificationVersion.isSupportedSpecVersion("0.2"), false); + t.is(SpecificationVersion.isSupportedSpecVersion("1.2"), false); + t.is(SpecificationVersion.isSupportedSpecVersion(1.1), false); + t.is(SpecificationVersion.isSupportedSpecVersion("foo"), false); + t.is(SpecificationVersion.isSupportedSpecVersion(""), false); + t.is(SpecificationVersion.isSupportedSpecVersion(), false); +}); + +test("(static) major", (t) => { + t.is(SpecificationVersion.major("0.1"), 0); + t.is(SpecificationVersion.major("1.1"), 1); + t.is(SpecificationVersion.major("2.1"), 2); + + t.is(t.throws(() => { + SpecificationVersion.major("0.2"); + }).message, unsupportedSpecVersionText("0.2")); +}); + +test("(static) minor", (t) => { + t.is(SpecificationVersion.minor("2.1"), 1); + t.is(SpecificationVersion.minor("2.2"), 2); + t.is(SpecificationVersion.minor("2.3"), 3); + + t.is(t.throws(() => { + SpecificationVersion.minor("1.2"); + }).message, unsupportedSpecVersionText("1.2")); +}); + +test("(static) satisfies", (t) => { + // range: 1.x + t.is(SpecificationVersion.satisfies("1.0", "1.x"), true); + t.is(SpecificationVersion.satisfies("1.1", "1.x"), true); + t.is(SpecificationVersion.satisfies("2.0", "1.x"), false); + + // range: ^2.2 + t.is(SpecificationVersion.satisfies("2.1", "^2.2"), false); + t.is(SpecificationVersion.satisfies("2.2", "^2.2"), true); + t.is(SpecificationVersion.satisfies("2.3", "^2.2"), true); + + // range: > 1.0 + t.is(SpecificationVersion.satisfies("1.0", "> 1.0"), false); + t.is(SpecificationVersion.satisfies("1.1", "> 1.0"), true); + t.is(SpecificationVersion.satisfies("2.2", "> 1.0"), true); + + // range: 2.2 - 2.4 + t.is(SpecificationVersion.satisfies("2.1", "2.2 - 2.4"), false); + t.is(SpecificationVersion.satisfies("2.2", "2.2 - 2.4"), true); + t.is(SpecificationVersion.satisfies("2.3", "2.2 - 2.4"), true); + t.is(SpecificationVersion.satisfies("2.4", "2.2 - 2.4"), true); + t.is(SpecificationVersion.satisfies("2.5", "2.2 - 2.4"), false); + + // range: 0.1 || 1.0 - 1.1 || ^2.5 + t.is(SpecificationVersion.satisfies("0.1", "0.1 || 1.0 - 1.1 || ^2.5"), true); + t.is(SpecificationVersion.satisfies("1.0", "0.1 || 1.0 - 1.1 || ^2.5"), true); + t.is(SpecificationVersion.satisfies("1.1", "0.1 || 1.0 - 1.1 || ^2.5"), true); + t.is(SpecificationVersion.satisfies("2.4", "0.1 || 1.0 - 1.1 || ^2.5"), false); + t.is(SpecificationVersion.satisfies("2.5", "0.1 || 1.0 - 1.1 || ^2.5"), true); + t.is(SpecificationVersion.satisfies("2.6", "0.1 || 1.0 - 1.1 || ^2.5"), true); + + // unsupported spec version + t.is(t.throws(() => { + SpecificationVersion.satisfies("0.2", "1.x"); + }).message, unsupportedSpecVersionText("0.2")); +}); + +test("(static) low level comparator", (t) => { + t.is(SpecificationVersion.gt("2.1", "2.2"), false); + t.is(SpecificationVersion.gt("2.2", "2.2"), false); + t.is(SpecificationVersion.gt("2.3", "2.2"), true); + + t.is(SpecificationVersion.gte("2.1", "2.2"), false); + t.is(SpecificationVersion.gte("2.2", "2.2"), true); + t.is(SpecificationVersion.gte("2.3", "2.2"), true); + + t.is(SpecificationVersion.lt("2.1", "2.2"), true); + t.is(SpecificationVersion.lt("2.2", "2.2"), false); + t.is(SpecificationVersion.lt("2.3", "2.2"), false); + + t.is(SpecificationVersion.lte("2.1", "2.2"), true); + t.is(SpecificationVersion.lte("2.2", "2.2"), true); + t.is(SpecificationVersion.lte("2.3", "2.2"), false); + + t.is(SpecificationVersion.eq("2.0", "2.2"), false); + t.is(SpecificationVersion.eq("2.2", "2.2"), true); + + t.is(SpecificationVersion.neq("2.0", "2.2"), true); + t.is(SpecificationVersion.neq("2.2", "2.2"), false); +}); + +test("getSemverCompatibleVersion", (t) => { + t.is(__localFunctions__.getSemverCompatibleVersion("0.1"), "0.1.0"); + t.is(__localFunctions__.getSemverCompatibleVersion("1.1"), "1.1.0"); + t.is(__localFunctions__.getSemverCompatibleVersion("2.0"), "2.0.0"); + + t.is(t.throws(() => { + __localFunctions__.getSemverCompatibleVersion("1.2.3"); + }).message, unsupportedSpecVersionText("1.2.3")); + t.is(t.throws(() => { + __localFunctions__.getSemverCompatibleVersion("0.99"); + }).message, unsupportedSpecVersionText("0.99")); + t.is(t.throws(() => { + __localFunctions__.getSemverCompatibleVersion("foo"); + }).message, unsupportedSpecVersionText("foo")); + t.is(t.throws(() => { + __localFunctions__.getSemverCompatibleVersion(); + }).message, unsupportedSpecVersionText("undefined")); +}); + +test("handleSemverComparator", (t) => { + const comparatorStub = t.context.sinon.stub().returns("foobar"); + t.is(__localFunctions__.handleSemverComparator(comparatorStub, "1.1.0", "2.2"), "foobar"); + t.deepEqual(comparatorStub.getCall(0).args, ["1.1.0", "2.2.0"]); + + t.is(t.throws(() => { + __localFunctions__.handleSemverComparator(undefined, undefined, "a.b"); + }).message, "Invalid spec version expectation given in comparator: a.b"); +}); From 1927b09f2bcc5ea0fb9343bddd359d7b22fb3184 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Nov 2022 17:42:41 +0100 Subject: [PATCH 0728/1272] [ui5-project]Bump chalk from 4.1.2 to 5.1.2 (#509) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/project/package-lock.json | 186 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 97 insertions(+), 91 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 95883a839b4..03ea34d0cab 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -14,7 +14,7 @@ "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^4.1.2", + "chalk": "^5.1.2", "escape-string-regexp": "^5.0.0", "graceful-fs": "^4.2.10", "js-yaml": "^4.1.0", @@ -1449,18 +1449,6 @@ } } }, - "node_modules/ava/node_modules/chalk": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz", - "integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==", - "dev": true, - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, "node_modules/babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", @@ -1820,50 +1808,16 @@ } }, "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz", + "integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==", "engines": { - "node": ">=10" + "node": "^12.17.0 || ^14.13 || >=16.0.0" }, "funding": { "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/chalk/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/chalk/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/chalk/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, "node_modules/cheerio": { "version": "1.0.0-rc.9", "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.9.tgz", @@ -3302,6 +3256,21 @@ "node": ">=8" } }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/eslint/node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -3312,6 +3281,40 @@ "concat-map": "0.0.1" } }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, "node_modules/eslint/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -4046,6 +4049,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, "engines": { "node": ">=8" } @@ -8215,6 +8219,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -10359,14 +10364,6 @@ "temp-dir": "^3.0.0", "write-file-atomic": "^5.0.0", "yargs": "^17.6.2" - }, - "dependencies": { - "chalk": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz", - "integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==", - "dev": true - } } }, "babel-plugin-istanbul": { @@ -10611,36 +10608,9 @@ } }, "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - } - } + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz", + "integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==" }, "cheerio": { "version": "1.0.0-rc.9", @@ -11661,6 +11631,15 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -11671,6 +11650,31 @@ "concat-map": "0.0.1" } }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -12281,7 +12285,8 @@ "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true }, "has-unicode": { "version": "2.0.1", @@ -15342,6 +15347,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "requires": { "has-flag": "^4.0.0" } diff --git a/packages/project/package.json b/packages/project/package.json index e8c5b44b0f5..81dbb29f028 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^4.1.2", + "chalk": "^5.1.2", "escape-string-regexp": "^5.0.0", "graceful-fs": "^4.2.10", "js-yaml": "^4.1.0", From 6e04896c090d9e62645008cdd663f4e5c58ff0db Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 28 Nov 2022 17:23:50 +0000 Subject: [PATCH 0729/1272] [ui5-project]Release 3.0.0-beta.3 --- packages/project/CHANGELOG.md | 14 ++++++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index fc4dc725e5c..6a1844a58fa 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,19 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-beta.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-beta.3...HEAD). + + +## [v3.0.0-beta.3] - 2022-11-28 +### Features +- Introduce SpecificationVersion class ([#431](https://github.com/SAP/ui5-project/issues/431)) [`e57842b`](https://github.com/SAP/ui5-project/commit/e57842b06397a5b36e6373df97f7b7bb91f09741) +- **TaskRunner:** Provide taskName and logger instance to custom tasks [`36cd2d8`](https://github.com/SAP/ui5-project/commit/36cd2d83f9a6a92cbd28619d8a25c0ba3f732117) +- **TaskUtil:** Add resourceFactory API to v3 interface [`2e863cf`](https://github.com/SAP/ui5-project/commit/2e863cfaf9f8924d0c87fe9dfe01568c1fd979c8) +- **TaskUtil:** Add getProject/getDependencies API to interface [`51f2949`](https://github.com/SAP/ui5-project/commit/51f29493f57f094396776bb2686c8a74e8901a7f) + -## [v3.0.0-beta.2] - 2022-11-10 +## [v3.0.0-beta.2] - 2022-11-11 ## [v3.0.0-beta.1] - 2022-11-07 @@ -355,6 +364,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-beta.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.2...v3.0.0-beta.3 [v3.0.0-beta.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.1...v3.0.0-beta.2 [v3.0.0-beta.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.10...v3.0.0-beta.1 [v3.0.0-alpha.10]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.9...v3.0.0-alpha.10 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 03ea34d0cab..6caa3a5434c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.2", + "version": "3.0.0-beta.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-beta.2", + "version": "3.0.0-beta.3", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-beta.1", diff --git a/packages/project/package.json b/packages/project/package.json index 81dbb29f028..6b68ce355c2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.2", + "version": "3.0.0-beta.3", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From e208303e730493a4b016b7a558ec24118acbba46 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 29 Nov 2022 11:03:38 +0000 Subject: [PATCH 0730/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-beta.1 to 3.0.0-beta.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-beta.2/CHANGELOG.md --- packages/project/package-lock.json | 340 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 160 insertions(+), 182 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6caa3a5434c..bc79a13ec8e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-beta.3", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-beta.1", + "@ui5/builder": "^3.0.0-beta.2", "@ui5/fs": "^3.0.0-beta.3", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", @@ -1009,31 +1009,30 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-beta.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.1.tgz", - "integrity": "sha512-EG7/YkpI46F2TTpx9YCL8e4t/8GgeFSzGFgf1j2Av6YtjcgfPgJq1a+2CgeoBOb2DWvlDcAeQiKrkkgDs9oq1w==", + "version": "3.0.0-beta.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.2.tgz", + "integrity": "sha512-+r/46BTpZRkKnEAGWkHYLiixryTJH2NOvLcoiLuUZDdZdKC46lqvXEGJFgLym8hi5A5LIcxCqrU/LGogAppB0Q==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-beta.2", - "@ui5/logger": "^3.0.1-beta.0", - "cheerio": "1.0.0-rc.9", + "@ui5/fs": "^3.0.0-beta.3", + "@ui5/logger": "^3.0.1-beta.1", + "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", - "espree": "^9.3.1", - "graceful-fs": "^4.2.9", - "jsdoc": "^3.6.7", + "espree": "^9.4.1", + "graceful-fs": "^4.2.10", + "jsdoc": "^3.6.11", "less-openui5": "^0.11.2", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "replacestream": "^4.0.3", "rimraf": "^3.0.2", - "semver": "^7.3.5", - "terser": "^5.14.2", - "xml2js": "^0.4.23", - "yazl": "^2.5.1" + "semver": "^7.3.8", + "terser": "^5.16.0", + "xml2js": "^0.4.23" }, "engines": { - "node": ">= 16.13.2", + "node": "^16.18.0 || >=18.0.0", "npm": ">= 8" } }, @@ -1584,14 +1583,6 @@ "ieee754": "^1.2.1" } }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "engines": { - "node": "*" - } - }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -1819,17 +1810,17 @@ } }, "node_modules/cheerio": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.9.tgz", - "integrity": "sha512-QF6XVdrLONO6DXRF5iaolY+odmhj2CLj+xzNod7INPWMi/x9X4SOylH0S/vaPpX+AUU6t04s34SQNh7DbkuCng==", + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", "dependencies": { - "cheerio-select": "^1.4.0", - "dom-serializer": "^1.3.1", - "domhandler": "^4.2.0", - "htmlparser2": "^6.1.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "tslib": "^2.2.0" + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" }, "engines": { "node": ">= 6" @@ -1839,15 +1830,16 @@ } }, "node_modules/cheerio-select": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.6.0.tgz", - "integrity": "sha512-eq0GdBvxVFbqWgmCm7M3XGs1I8oLy/nExUnh6oLqmBditPO9AqQJrkslDpMun/hZ0yyTs8L0m85OHp4ho6Qm9g==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", "dependencies": { - "css-select": "^4.3.0", - "css-what": "^6.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.3.1", - "domutils": "^2.8.0" + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" }, "funding": { "url": "https://github.com/sponsors/fb55" @@ -2410,14 +2402,14 @@ } }, "node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", "dependencies": { "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", "nth-check": "^2.0.1" }, "funding": { @@ -2831,13 +2823,13 @@ } }, "node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" }, "funding": { "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" @@ -2855,11 +2847,11 @@ ] }, "node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "dependencies": { - "domelementtype": "^2.2.0" + "domelementtype": "^2.3.0" }, "engines": { "node": ">= 4" @@ -2869,13 +2861,13 @@ } }, "node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" }, "funding": { "url": "https://github.com/fb55/domutils?sponsor=1" @@ -2993,9 +2985,12 @@ } }, "node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", + "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==", + "engines": { + "node": ">=0.12" + }, "funding": { "url": "https://github.com/fb55/entities?sponsor=1" } @@ -4109,9 +4104,9 @@ "dev": true }, "node_modules/htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", "funding": [ "https://github.com/fb55/htmlparser2?sponsor=1", { @@ -4120,10 +4115,10 @@ } ], "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" } }, "node_modules/http-cache-semantics": { @@ -6771,16 +6766,26 @@ } }, "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } }, "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", "dependencies": { - "parse5": "^6.0.1" + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" } }, "node_modules/path-exists": { @@ -8734,11 +8739,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/tslib": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", - "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" - }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -9258,14 +9258,6 @@ "node": ">=12" } }, - "node_modules/yazl": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", - "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", - "dependencies": { - "buffer-crc32": "~0.2.3" - } - }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", @@ -10029,28 +10021,27 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-beta.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.1.tgz", - "integrity": "sha512-EG7/YkpI46F2TTpx9YCL8e4t/8GgeFSzGFgf1j2Av6YtjcgfPgJq1a+2CgeoBOb2DWvlDcAeQiKrkkgDs9oq1w==", + "version": "3.0.0-beta.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.2.tgz", + "integrity": "sha512-+r/46BTpZRkKnEAGWkHYLiixryTJH2NOvLcoiLuUZDdZdKC46lqvXEGJFgLym8hi5A5LIcxCqrU/LGogAppB0Q==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-beta.2", - "@ui5/logger": "^3.0.1-beta.0", - "cheerio": "1.0.0-rc.9", + "@ui5/fs": "^3.0.0-beta.3", + "@ui5/logger": "^3.0.1-beta.1", + "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", - "espree": "^9.3.1", - "graceful-fs": "^4.2.9", - "jsdoc": "^3.6.7", + "espree": "^9.4.1", + "graceful-fs": "^4.2.10", + "jsdoc": "^3.6.11", "less-openui5": "^0.11.2", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "replacestream": "^4.0.3", "rimraf": "^3.0.2", - "semver": "^7.3.5", - "terser": "^5.14.2", - "xml2js": "^0.4.23", - "yazl": "^2.5.1" + "semver": "^7.3.8", + "terser": "^5.16.0", + "xml2js": "^0.4.23" } }, "@ui5/fs": { @@ -10448,11 +10439,6 @@ "ieee754": "^1.2.1" } }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==" - }, "buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -10613,29 +10599,30 @@ "integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==" }, "cheerio": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.9.tgz", - "integrity": "sha512-QF6XVdrLONO6DXRF5iaolY+odmhj2CLj+xzNod7INPWMi/x9X4SOylH0S/vaPpX+AUU6t04s34SQNh7DbkuCng==", + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", "requires": { - "cheerio-select": "^1.4.0", - "dom-serializer": "^1.3.1", - "domhandler": "^4.2.0", - "htmlparser2": "^6.1.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "tslib": "^2.2.0" + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" } }, "cheerio-select": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.6.0.tgz", - "integrity": "sha512-eq0GdBvxVFbqWgmCm7M3XGs1I8oLy/nExUnh6oLqmBditPO9AqQJrkslDpMun/hZ0yyTs8L0m85OHp4ho6Qm9g==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", "requires": { - "css-select": "^4.3.0", - "css-what": "^6.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.3.1", - "domutils": "^2.8.0" + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" } }, "chokidar": { @@ -11073,14 +11060,14 @@ } }, "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", "requires": { "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", "nth-check": "^2.0.1" } }, @@ -11392,13 +11379,13 @@ } }, "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" } }, "domelementtype": { @@ -11407,21 +11394,21 @@ "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" }, "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "requires": { - "domelementtype": "^2.2.0" + "domelementtype": "^2.3.0" } }, "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" } }, "duplexer": { @@ -11525,9 +11512,9 @@ } }, "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", + "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==" }, "env-paths": { "version": "2.2.1", @@ -12333,14 +12320,14 @@ "dev": true }, "htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" } }, "http-cache-semantics": { @@ -14321,16 +14308,20 @@ "dev": true }, "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "requires": { + "entities": "^4.4.0" + } }, "parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", "requires": { - "parse5": "^6.0.1" + "domhandler": "^5.0.2", + "parse5": "^7.0.0" } }, "path-exists": { @@ -15754,11 +15745,6 @@ "integrity": "sha512-GJtWyq9InR/2HRiLZgpIKv+ufIKrVrvjQWEj7PxAXNc5dwbNJkqhAUoAGgzRmULAnoOM5EIpveYd3J2VeSAIew==", "dev": true }, - "tslib": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", - "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" - }, "type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -16150,14 +16136,6 @@ "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true }, - "yazl": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz", - "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==", - "requires": { - "buffer-crc32": "~0.2.3" - } - }, "yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 6b68ce355c2..6532ff549fd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-beta.1", + "@ui5/builder": "^3.0.0-beta.2", "@ui5/fs": "^3.0.0-beta.3", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", From e67c6cbef7a6d1468b40e56066d296706667282f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 29 Nov 2022 17:46:49 +0100 Subject: [PATCH 0731/1272] [ui5-project][INTERNAL] TaskUtil: Provide resourceFactory#createReaderCollection --- packages/project/lib/build/helpers/TaskUtil.js | 6 +++++- packages/project/test/lib/build/helpers/TaskUtil.js | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index d7168910606..f9997df83ef 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -1,4 +1,5 @@ import { + createReaderCollection, createReaderCollectionPrioritized, createResource, createFilterReader, @@ -236,6 +237,8 @@ class TaskUtil { * @typedef {object} @ui5/project/build/helpers/TaskUtil~resourceFactory * @property {Function} createResource Creates a [Resource]{@link @ui5/fs/Resource}. * Accepts the same parameters as the [Resource]{@link @ui5/fs/Resource} constructor. + * @property {Function} createReaderCollection Creates a reader collection: + * [ReaderCollection]{@link @ui5/fs/ReaderCollection} * @property {Function} createReaderCollectionPrioritized Creates a prioritized reader collection: * [ReaderCollectionPrioritized]{@link @ui5/fs/ReaderCollectionPrioritized} * @property {Function} createFilterReader @@ -258,6 +261,7 @@ class TaskUtil { */ resourceFactory = { createResource, + createReaderCollection, createReaderCollectionPrioritized, createFilterReader, createLinkReader, @@ -305,7 +309,7 @@ class TaskUtil { [ // Once new functions get added, extract this array into a variable // and enhance based on spec version once new functions get added - "createResource", "createReaderCollectionPrioritized", + "createResource", "createReaderCollection", "createReaderCollectionPrioritized", "createFilterReader", "createLinkReader", "createFlatReader", ].forEach((factoryFunction) => { baseInterface.resourceFactory[factoryFunction] = this.resourceFactory[factoryFunction]; diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index d960db74bea..9370f93a9dc 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -192,6 +192,8 @@ test("resourceFactory", (t) => { }); t.is(typeof resourceFactory.createResource, "function", "resourceFactory function createResource is available"); + t.is(typeof resourceFactory.createReaderCollection, "function", + "resourceFactory function createReaderCollection is available"); t.is(typeof resourceFactory.createReaderCollectionPrioritized, "function", "resourceFactory function createReaderCollectionPrioritized is available"); t.is(typeof resourceFactory.createFilterReader, "function", @@ -423,6 +425,8 @@ test("getInterface: specVersion 3.0", (t) => { const resourceFactory = interfacedTaskUtil.resourceFactory; t.is(typeof resourceFactory.createResource, "function", "resourceFactory function createResource is available"); + t.is(typeof resourceFactory.createReaderCollection, "function", + "resourceFactory function createReaderCollection is available"); t.is(typeof resourceFactory.createReaderCollectionPrioritized, "function", "resourceFactory function createReaderCollectionPrioritized is available"); t.is(typeof resourceFactory.createFilterReader, "function", From b47a71da47eb5ea5c46e8772cab4d8e07591b3fe Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 30 Nov 2022 08:19:46 +0000 Subject: [PATCH 0732/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-beta.2 to 3.0.0-beta.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-beta.3/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bc79a13ec8e..8b1125e5a14 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-beta.3", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-beta.2", + "@ui5/builder": "^3.0.0-beta.3", "@ui5/fs": "^3.0.0-beta.3", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", @@ -1009,9 +1009,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-beta.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.2.tgz", - "integrity": "sha512-+r/46BTpZRkKnEAGWkHYLiixryTJH2NOvLcoiLuUZDdZdKC46lqvXEGJFgLym8hi5A5LIcxCqrU/LGogAppB0Q==", + "version": "3.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.3.tgz", + "integrity": "sha512-kirIJeA6iCV+JZqOArW/qaNpORdoi/JQbmRLRjpYf5gBPv9eOpgK/1hGcgbe05JNckDPoUYUu5KdlljOu4ap3A==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", "@ui5/fs": "^3.0.0-beta.3", @@ -10021,9 +10021,9 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-beta.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.2.tgz", - "integrity": "sha512-+r/46BTpZRkKnEAGWkHYLiixryTJH2NOvLcoiLuUZDdZdKC46lqvXEGJFgLym8hi5A5LIcxCqrU/LGogAppB0Q==", + "version": "3.0.0-beta.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.3.tgz", + "integrity": "sha512-kirIJeA6iCV+JZqOArW/qaNpORdoi/JQbmRLRjpYf5gBPv9eOpgK/1hGcgbe05JNckDPoUYUu5KdlljOu4ap3A==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", "@ui5/fs": "^3.0.0-beta.3", diff --git a/packages/project/package.json b/packages/project/package.json index 6532ff549fd..78ee7376505 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-beta.2", + "@ui5/builder": "^3.0.0-beta.3", "@ui5/fs": "^3.0.0-beta.3", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", From f65f539825341e10debdbeb324623c83de9b2328 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 30 Nov 2022 08:32:21 +0000 Subject: [PATCH 0733/1272] [ui5-project]Release 3.0.0-beta.4 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 6a1844a58fa..d5711b59488 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-beta.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-beta.4...HEAD). + + +## [v3.0.0-beta.4] - 2022-11-30 ## [v3.0.0-beta.3] - 2022-11-28 @@ -364,6 +367,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-beta.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.3...v3.0.0-beta.4 [v3.0.0-beta.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.2...v3.0.0-beta.3 [v3.0.0-beta.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.1...v3.0.0-beta.2 [v3.0.0-beta.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.10...v3.0.0-beta.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8b1125e5a14..f8da5027526 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-beta.3", diff --git a/packages/project/package.json b/packages/project/package.json index 78ee7376505..ee7cee95f45 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 13f6c6c74d26adfbabb427834cd64ee5644b859f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 1 Dec 2022 14:09:36 +0000 Subject: [PATCH 0734/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-beta.3 to 3.0.0-beta.4 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-beta.4/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f8da5027526..540bac8f87e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-beta.3", - "@ui5/fs": "^3.0.0-beta.3", + "@ui5/fs": "^3.0.0-beta.4", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1037,9 +1037,9 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-beta.3", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.3.tgz", - "integrity": "sha512-FzHSX58yY6AlN5MHitrz/sp72oZRhK17QMeC2ARh8lUXPxJbsdHmRToRdlyUIl1ZAbOolkXttfzzVQnvt+M64g==", + "version": "3.0.0-beta.4", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.4.tgz", + "integrity": "sha512-gIZ8QTwMFV1t2ydyjO7Lmi9Q/b3r50PE1OPrA4+wWhJlEzAtPDKRdNhxka7ziiyeIrFCOUChytbMTgjcwZba3A==", "dependencies": { "@ui5/logger": "^3.0.1-beta.1", "clone": "^2.1.2", @@ -10045,9 +10045,9 @@ } }, "@ui5/fs": { - "version": "3.0.0-beta.3", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.3.tgz", - "integrity": "sha512-FzHSX58yY6AlN5MHitrz/sp72oZRhK17QMeC2ARh8lUXPxJbsdHmRToRdlyUIl1ZAbOolkXttfzzVQnvt+M64g==", + "version": "3.0.0-beta.4", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.4.tgz", + "integrity": "sha512-gIZ8QTwMFV1t2ydyjO7Lmi9Q/b3r50PE1OPrA4+wWhJlEzAtPDKRdNhxka7ziiyeIrFCOUChytbMTgjcwZba3A==", "requires": { "@ui5/logger": "^3.0.1-beta.1", "clone": "^2.1.2", diff --git a/packages/project/package.json b/packages/project/package.json index ee7cee95f45..a6cbf38dd0e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-beta.3", - "@ui5/fs": "^3.0.0-beta.3", + "@ui5/fs": "^3.0.0-beta.4", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 27bcef6bf4321ba4743235e36aeb1bab7b09505a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 1 Dec 2022 14:19:57 +0000 Subject: [PATCH 0735/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-beta.3 to 3.0.0-beta.4 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-beta.4/CHANGELOG.md --- packages/project/package-lock.json | 120 ++++++++--------------------- packages/project/package.json | 2 +- 2 files changed, 32 insertions(+), 90 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 540bac8f87e..943ec8499cb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-beta.4", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-beta.3", + "@ui5/builder": "^3.0.0-beta.4", "@ui5/fs": "^3.0.0-beta.4", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", @@ -59,6 +59,11 @@ "npm": ">= 8" } }, + "node_modules/@adobe/css-tools": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.0.1.tgz", + "integrity": "sha512-+u76oB43nOHrF4DDWRLWDCtci7f3QJoEBigemIdIeTi1ODqjx6Tad9NCVnPRwewWlKkVab5PlK8DCtPTyX7S8g==" + }, "node_modules/@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", @@ -1009,12 +1014,12 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-beta.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.3.tgz", - "integrity": "sha512-kirIJeA6iCV+JZqOArW/qaNpORdoi/JQbmRLRjpYf5gBPv9eOpgK/1hGcgbe05JNckDPoUYUu5KdlljOu4ap3A==", + "version": "3.0.0-beta.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.4.tgz", + "integrity": "sha512-Kh8MkjnGXOfDRcb56/qgVOregXZYJtGNwm56XxMnVzd/KiwpCGaisd+Rx+XlV5W2vSTN+lGC6rdPgR2u2wnBPw==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-beta.3", + "@ui5/fs": "^3.0.0-beta.4", "@ui5/logger": "^3.0.1-beta.1", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", @@ -1022,7 +1027,7 @@ "espree": "^9.4.1", "graceful-fs": "^4.2.10", "jsdoc": "^3.6.11", - "less-openui5": "^0.11.2", + "less-openui5": "^0.11.4", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "replacestream": "^4.0.3", @@ -1370,17 +1375,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, "node_modules/ava": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.0.tgz", @@ -2391,16 +2385,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dependencies": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - } - }, "node_modules/css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -2506,14 +2490,6 @@ "node": ">=0.10.0" } }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", - "engines": { - "node": ">=0.10" - } - }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -4858,12 +4834,12 @@ } }, "node_modules/less-openui5": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.2.tgz", - "integrity": "sha512-FkAT0JDB3NGroia/hdYInzVzpERINovKEgjeijfYgLK7C4eef8a0midlgdBfTZanv3Gz8zUSjfGYXNWL82jEBA==", + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.4.tgz", + "integrity": "sha512-16bhrakJ/0gsszpvqGGTq/tizpE+d8ix3e/Zzsk3HFptXy72OjaP3FvQNY83JBdUsljAsek9OdWRj+QIqkYE5g==", "dependencies": { - "clone": "^2.1.0", - "css": "^3.0.0", + "@adobe/css-tools": "^4.0.1", + "clone": "^2.1.2", "mime": "^1.6.0" }, "engines": { @@ -7983,16 +7959,6 @@ "node": ">=0.10.0" } }, - "node_modules/source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, "node_modules/source-map-support": { "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", @@ -9272,6 +9238,11 @@ } }, "dependencies": { + "@adobe/css-tools": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.0.1.tgz", + "integrity": "sha512-+u76oB43nOHrF4DDWRLWDCtci7f3QJoEBigemIdIeTi1ODqjx6Tad9NCVnPRwewWlKkVab5PlK8DCtPTyX7S8g==" + }, "@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", @@ -10021,12 +9992,12 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-beta.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.3.tgz", - "integrity": "sha512-kirIJeA6iCV+JZqOArW/qaNpORdoi/JQbmRLRjpYf5gBPv9eOpgK/1hGcgbe05JNckDPoUYUu5KdlljOu4ap3A==", + "version": "3.0.0-beta.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.4.tgz", + "integrity": "sha512-Kh8MkjnGXOfDRcb56/qgVOregXZYJtGNwm56XxMnVzd/KiwpCGaisd+Rx+XlV5W2vSTN+lGC6rdPgR2u2wnBPw==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-beta.3", + "@ui5/fs": "^3.0.0-beta.4", "@ui5/logger": "^3.0.1-beta.1", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", @@ -10034,7 +10005,7 @@ "espree": "^9.4.1", "graceful-fs": "^4.2.10", "jsdoc": "^3.6.11", - "less-openui5": "^0.11.2", + "less-openui5": "^0.11.4", "make-dir": "^3.1.0", "pretty-data": "^0.40.0", "replacestream": "^4.0.3", @@ -10299,11 +10270,6 @@ "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", "dev": true }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" - }, "ava": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.0.tgz", @@ -11049,16 +11015,6 @@ } } }, - "css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "requires": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - } - }, "css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -11133,11 +11089,6 @@ } } }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==" - }, "deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -12866,12 +12817,12 @@ } }, "less-openui5": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.2.tgz", - "integrity": "sha512-FkAT0JDB3NGroia/hdYInzVzpERINovKEgjeijfYgLK7C4eef8a0midlgdBfTZanv3Gz8zUSjfGYXNWL82jEBA==", + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.4.tgz", + "integrity": "sha512-16bhrakJ/0gsszpvqGGTq/tizpE+d8ix3e/Zzsk3HFptXy72OjaP3FvQNY83JBdUsljAsek9OdWRj+QIqkYE5g==", "requires": { - "clone": "^2.1.0", - "css": "^3.0.0", + "@adobe/css-tools": "^4.0.1", + "clone": "^2.1.2", "mime": "^1.6.0" } }, @@ -15146,15 +15097,6 @@ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "dev": true }, - "source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, "source-map-support": { "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index a6cbf38dd0e..384598f6dec 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-beta.3", + "@ui5/builder": "^3.0.0-beta.4", "@ui5/fs": "^3.0.0-beta.4", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", From 177babbcfc4248107498142027cc075411b91469 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 1 Dec 2022 16:29:59 +0100 Subject: [PATCH 0736/1272] [ui5-project][INTERNAL] Sapui5Resolver: Update comment about 1.77 workaround --- packages/project/lib/ui5Framework/Sapui5Resolver.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index f297a57e5cc..a5d43e197d5 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -60,7 +60,8 @@ class Sapui5Resolver extends AbstractResolver { if (metadata.npmPackageName.startsWith("@openui5/") && semver.satisfies(this._version, "1.77.x")) { - // TODO 3.0: Remove this workaround + // TODO: Remove this workaround once SAPUI5 1.77.x isn't used anymore. + // As of Dec 2022 there are still ~80 downloads per week (npmjs.com stats). // 1.77.x (at least 1.77.0-1.77.2) distribution metadata.json is missing // dependency information for all OpenUI5 libraries. // Therefore we need to request those from the registry like it is done From 7add7841c5ad50f2ef01a00b23994ddcf9cbbb0d Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 2 Dec 2022 09:01:40 +0100 Subject: [PATCH 0737/1272] [ui5-project][INTERNAL] Use native fs.mkdir instead of mkdirp The recursive option is available since Node v10.12, which makes the use of thirdparty packages obsolete for most use cases. --- .../project/lib/ui5Framework/npm/Installer.js | 6 +-- packages/project/package-lock.json | 1 - packages/project/package.json | 1 - .../graph/helpers/ui5Framework.integration.js | 4 +- .../test/lib/ui5framework/npm/Installer.js | 42 ++++++++++--------- 5 files changed, 27 insertions(+), 27 deletions(-) diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index c72a6a7087f..42d9bb4fef1 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -1,5 +1,4 @@ import path from "node:path"; -import mkdirp from "mkdirp"; import fs from "graceful-fs"; import {promisify} from "node:util"; import Registry from "./Registry.js"; @@ -8,6 +7,7 @@ const rimraf = promisify(_rimraf); const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const rename = promisify(fs.rename); +const mkdir = promisify(fs.mkdir); import logger from "@ui5/logger"; const log = logger.getLogger("ui5Framework:npm:Installer"); @@ -100,7 +100,7 @@ class Installer { // Do not create target dir itself to prevent EPERM error in following rename operation // (https://github.com/SAP/ui5-tooling/issues/487) - await mkdirp(path.dirname(targetDir)); + await mkdir(path.dirname(targetDir), {recursive: true}); log.verbose(`Promoting staging directory from ${stagingDir} to ${targetDir}...`); await rename(stagingDir, targetDir); } else { @@ -139,7 +139,7 @@ class Installer { const lock = promisify(lockfile.lock); const unlock = promisify(lockfile.unlock); const lockPath = this._getLockPath({pkgName, version}); - await mkdirp(this._lockDir); + await mkdir(this._lockDir, {recursive: true}); log.verbose("Locking " + lockPath); await lock(lockPath, { wait: 10000, diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 943ec8499cb..4ee35ec927f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -20,7 +20,6 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "mkdirp": "^1.0.4", "pacote": "^15.0.6", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index 384598f6dec..252da9558a9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,6 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "mkdirp": "^1.0.4", "pacote": "^15.0.6", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index d77297fca66..3926504cfcb 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -49,9 +49,9 @@ test.beforeEach(async (t) => { t.context.Installer = await esmock.p("../../../../lib/ui5Framework/npm/Installer.js", { "@ui5/logger": ui5Logger, - "mkdirp": sinon.stub().resolves(), "graceful-fs": { - rename: sinon.stub().yieldsAsync() + rename: sinon.stub().yieldsAsync(), + mkdir: sinon.stub().yieldsAsync() }, "lockfile": { lock: sinon.stub().yieldsAsync(), diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index 8b66be0527d..336e3bf7446 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -7,16 +7,15 @@ import {fileURLToPath} from "node:url"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); test.beforeEach(async (t) => { - t.context.mkdirpStub = sinon.stub().resolves(); t.context.rimrafStub = sinon.stub().yieldsAsync(); t.context.lockStub = sinon.stub(); t.context.unlockStub = sinon.stub(); t.context.renameStub = sinon.stub().yieldsAsync(); t.context.statStub = sinon.stub().yieldsAsync(); + t.context.mkdirStub = sinon.stub().yieldsAsync(); t.context.Installer = await esmock.p("../../../../lib/ui5Framework/npm/Installer.js", { - "mkdirp": t.context.mkdirpStub, "rimraf": t.context.rimrafStub, "lockfile": { lock: t.context.lockStub, @@ -24,7 +23,8 @@ test.beforeEach(async (t) => { }, "graceful-fs": { rename: t.context.renameStub, - stat: t.context.statStub + stat: t.context.statStub, + mkdir: t.context.mkdirStub } }); }); @@ -299,9 +299,11 @@ test.serial("Installer: _synchronize", async (t) => { t.deepEqual(getLockPathStub.getCall(0).args, [{pkgName: "@openui5/sap.ui.lib1", version: "1.2.3"}], "_getLockPath should be called with expected args"); - t.is(t.context.mkdirpStub.callCount, 1, "_mkdirp should be called once"); - t.deepEqual(t.context.mkdirpStub.getCall(0).args, [path.join("/ui5Home/", "framework", "locks")], - "_mkdirp should be called with expected args"); + t.is(t.context.mkdirStub.callCount, 1, "mkdir should be called once"); + t.is(t.context.mkdirStub.getCall(0).args[0], path.join("/ui5Home/", "framework", "locks"), + "mkdir should be called with expected path"); + t.deepEqual(t.context.mkdirStub.getCall(0).args[1], {recursive: true}, + "mkdir should be called with expected options"); t.is(t.context.lockStub.callCount, 1, "lock should be called once"); t.is(t.context.lockStub.getCall(0).args[0], "/locks/lockfile.lock", @@ -498,11 +500,11 @@ test.serial("Installer: installPackage with new package", async (t) => { t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); - t.is(t.context.mkdirpStub.callCount, 2, "mkdirp should be called twice"); - t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), - "mkdirp should be called with the correct arguments on first call"); - t.is(t.context.mkdirpStub.getCall(1).args[0], path.join("my", "package"), - "mkdirp should be called with the correct arguments on second call"); + t.is(t.context.mkdirStub.callCount, 2, "mkdir should be called twice"); + t.is(t.context.mkdirStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + "mkdir should be called with the correct arguments on first call"); + t.is(t.context.mkdirStub.getCall(1).args[0], path.join("my", "package"), + "mkdir should be called with the correct arguments on second call"); t.is(t.context.renameStub.callCount, 1, "fs.rename should be called once"); t.is(t.context.renameStub.getCall(0).args[0], "staging-dir-path", @@ -561,7 +563,7 @@ test.serial("Installer: installPackage with already installed package", async (t t.is(pathExistsStub.callCount, 0, "_pathExists should never be called"); t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); t.is(extractPackageStub.callCount, 0, "_extractPackage should never be called"); - t.is(t.context.mkdirpStub.callCount, 0, "mkdirp should never be called"); + t.is(t.context.mkdirStub.callCount, 0, "mkdir should never be called"); t.is(t.context.renameStub.callCount, 0, "fs.rename should never be called"); }); @@ -619,9 +621,9 @@ test.serial("Installer: installPackage with install already in progress", async t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); - t.is(t.context.mkdirpStub.callCount, 1, "mkdirp should be called once"); - t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), - "mkdirp should be called with the correct arguments"); + t.is(t.context.mkdirStub.callCount, 1, "mkdir should be called once"); + t.is(t.context.mkdirStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + "mkdir should be called with the correct arguments"); t.is(getStagingDirForPackageStub.callCount, 0, "_getStagingDirForPackage should never be called"); t.is(pathExistsStub.callCount, 0, "_pathExists should never be called"); @@ -703,11 +705,11 @@ test.serial("Installer: installPackage with new package and existing target and t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); - t.is(t.context.mkdirpStub.callCount, 2, "mkdirp should be called twice"); - t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), - "mkdirp should be called with the correct arguments on first call"); - t.is(t.context.mkdirpStub.getCall(1).args[0], path.join("my", "package"), - "mkdirp should be called with the correct arguments on second call"); + t.is(t.context.mkdirStub.callCount, 2, "mkdir should be called twice"); + t.is(t.context.mkdirStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + "mkdir should be called with the correct arguments on first call"); + t.is(t.context.mkdirStub.getCall(1).args[0], path.join("my", "package"), + "mkdir should be called with the correct arguments on second call"); t.is(t.context.renameStub.callCount, 1, "fs.rename should be called once"); t.is(t.context.renameStub.getCall(0).args[0], "staging-dir-path", From 136b98cfcab595af6f36d6eb22d213c36da3d5b7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sat, 3 Dec 2022 12:03:23 +0100 Subject: [PATCH 0738/1272] [ui5-project][INTERNAL] TaskUtil#getProject: Retrieve Project for a given Resource (#519) --- packages/project/lib/build/TaskRunner.js | 2 +- .../project/lib/build/helpers/TaskUtil.js | 21 ++++++-- .../test/lib/build/helpers/TaskUtil.js | 54 +++++++++++++++++++ 3 files changed, 72 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 3f0e4e7c434..e106a6be391 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -283,7 +283,7 @@ class TaskRunner { {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil Specification Version-dependent interface of a [TaskUtil]{@link @ui5/project/build/helpers/TaskUtil} instance {@ui5/logger/GroupLogger} [parameters.log] Logger instance to use by the custom task. - This method is only available to custom task extensions defining + This parameter is only available to custom task extensions defining Specification Version 3.0 and above. {Object} parameters.options Options {string} parameters.options.projectName Project name diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index f9997df83ef..a70637ec00d 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -202,13 +202,26 @@ class TaskUtil { * This method is only available to custom task extensions defining * Specification Version 3.0 and above. * - * @param {string} [projectName] Name of the project to retrieve. Defaults to the project currently being built + * @param {string|@ui5/fs/Resource} [projectNameOrResource] + * Name of the project to retrieve or a Resource instance to retrieve the associated project for. + * Defaults to the name of the project currently being built * @returns {@ui5/project/build/helpers/TaskUtil~ProjectInterface|undefined} - * project instance or undefined if the project is unknown to the graph + * Specification Version-dependent interface to the Project instance or undefined + * if the project name is unknown or the provided resource is not associated with any project. * @public */ - getProject(projectName) { - return this._projectBuildContext.getProject(projectName); + getProject(projectNameOrResource) { + if (projectNameOrResource) { + if (typeof projectNameOrResource === "string" || projectNameOrResource instanceof String) { + // A project name has been provided + return this._projectBuildContext.getProject(projectNameOrResource); + } else { + // A Resource instance has been provided + return projectNameOrResource.getProject(); + } + } + // No parameter has been provided, default to the project currently being built. + return this._projectBuildContext.getProject(); } /** diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index 9370f93a9dc..c9eae03ddf0 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -169,9 +169,45 @@ test("getProject", (t) => { const res = taskUtil.getProject("pony farm"); t.is(getProjectStub.callCount, 1, "ProjectBuildContext#getProject got called once"); + t.is(getProjectStub.getCall(0).args[0], "pony farm", + "ProjectBuildContext#getProject got called with expected arguments"); t.is(res, "Pony farm!", "Correct result"); }); +test("getProject: Default name", (t) => { + const getProjectStub = sinon.stub().returns("Pony farm!"); + const taskUtil = new TaskUtil({ + projectBuildContext: { + getProject: getProjectStub + } + }); + + const res = taskUtil.getProject(); + + t.is(getProjectStub.callCount, 1, "ProjectBuildContext#getProject got called once"); + t.is(getProjectStub.getCall(0).args[0], undefined, + "ProjectBuildContext#getProject got called with no arguments"); + t.is(res, "Pony farm!", "Correct result"); +}); + +test("getProject: Resource", (t) => { + const getProjectStub = sinon.stub(); + const taskUtil = new TaskUtil({ + projectBuildContext: { + getProject: getProjectStub + } + }); + + const mockResource = { + getProject: sinon.stub().returns("Pig farm!") + }; + const res = taskUtil.getProject(mockResource); + + t.is(getProjectStub.callCount, 0, "ProjectBuildContext#getProject has not been called"); + t.is(mockResource.getProject.callCount, 1, "Resource#getProject has been called once"); + t.is(res, "Pig farm!", "Correct result"); +}); + test("getDependencies", (t) => { const getDependenciesStub = sinon.stub().returns("Pony farm!"); const taskUtil = new TaskUtil({ @@ -183,6 +219,24 @@ test("getDependencies", (t) => { const res = taskUtil.getDependencies("pony farm"); t.is(getDependenciesStub.callCount, 1, "ProjectBuildContext#getDependencies got called once"); + t.is(getDependenciesStub.getCall(0).args[0], "pony farm", + "ProjectBuildContext#getDependencies got called with expected arguments"); + t.is(res, "Pony farm!", "Correct result"); +}); + +test("getDependencies: Default name", (t) => { + const getDependenciesStub = sinon.stub().returns("Pony farm!"); + const taskUtil = new TaskUtil({ + projectBuildContext: { + getDependencies: getDependenciesStub + } + }); + + const res = taskUtil.getDependencies(); + + t.is(getDependenciesStub.callCount, 1, "ProjectBuildContext#getDependencies got called once"); + t.is(getDependenciesStub.getCall(0).args[0], undefined, + "ProjectBuildContext#getDependencies got called with no arguments"); t.is(res, "Pony farm!", "Correct result"); }); From 56c39df7043bcf1c24013cb607b730c34151a1d1 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 4 Dec 2022 03:20:34 +0000 Subject: [PATCH 0739/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 253 +++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 129 insertions(+), 128 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4ee35ec927f..3e28b074c8d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -36,11 +36,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.0", - "eslint": "^8.28.0", + "eslint": "^8.29.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-jsdoc": "^39.6.4", - "esmock": "^2.0.9", + "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", @@ -88,30 +88,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", - "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.5.tgz", + "integrity": "sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", - "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.5.tgz", + "integrity": "sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.2", + "@babel/generator": "^7.20.5", "@babel/helper-compilation-targets": "^7.20.0", "@babel/helper-module-transforms": "^7.20.2", - "@babel/helpers": "^7.20.1", - "@babel/parser": "^7.20.2", + "@babel/helpers": "^7.20.5", + "@babel/parser": "^7.20.5", "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -136,12 +136,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.20.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", - "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.5.tgz", + "integrity": "sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==", "dev": true, "dependencies": { - "@babel/types": "^7.20.2", + "@babel/types": "^7.20.5", "@jridgewell/gen-mapping": "^0.3.2", "jsesc": "^2.5.1" }, @@ -315,14 +315,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", - "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.6.tgz", + "integrity": "sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==", "dev": true, "dependencies": { "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.0" + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" }, "engines": { "node": ">=6.9.0" @@ -393,9 +393,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.20.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", - "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz", + "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==", "bin": { "parser": "bin/babel-parser.js" }, @@ -418,19 +418,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", - "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.5.tgz", + "integrity": "sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.1", + "@babel/generator": "^7.20.5", "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-function-name": "^7.19.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.1", - "@babel/types": "^7.20.0", + "@babel/parser": "^7.20.5", + "@babel/types": "^7.20.5", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -439,9 +439,9 @@ } }, "node_modules/@babel/types": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", - "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.5.tgz", + "integrity": "sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.19.4", @@ -931,9 +931,9 @@ } }, "node_modules/@sinonjs/fake-timers/node_modules/@sinonjs/commons": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", - "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", "dev": true, "dependencies": { "type-detect": "4.0.8" @@ -1753,9 +1753,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001434", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001434.tgz", - "integrity": "sha512-aOBHrLmTQw//WFa2rcF1If9fa3ypkC1wzqqiKHgfdrXTWcU8C4gKVZT77eQAPWN1APys3+uQ0Df07rKauXGEYA==", + "version": "1.0.30001436", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001436.tgz", + "integrity": "sha512-ZmWkKsnC2ifEPoWUvSAIGyOYwT+keAaaWPHiQ9DfMqS1t6tfuyFYoWR78TeZtznkEQ64+vGXH9cZrElwR2Mrxg==", "dev": true, "funding": [ { @@ -3038,9 +3038,9 @@ } }, "node_modules/eslint": { - "version": "8.28.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.28.0.tgz", - "integrity": "sha512-S27Di+EVyMxcHiwDrFzk8dJYAaD+/5SoWKxL1ri/71CRHsnJnRDPNt2Kzj24+MT9FDupf4aqqyqPrvI8MvQ4VQ==", + "version": "8.29.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.29.0.tgz", + "integrity": "sha512-isQ4EEiyUjZFbEKvEGJKKGBwXtvXX+zJbkVKCgTuB9t/+jUBcy8avhkEwWJecI15BkRkOYmvIM5ynbhRjEkoeg==", "dev": true, "dependencies": { "@eslint/eslintrc": "^1.3.3", @@ -3431,9 +3431,9 @@ } }, "node_modules/esmock": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.9.tgz", - "integrity": "sha512-DowbbH79/YIvYc0tBPumq4XThIyFA1tcmGnHZJM3j3mcDFqCSbtS/jn6SqNG5bBcHUBAUVJ6z0l0q1uizkUd2A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.1.0.tgz", + "integrity": "sha512-8/2+iFfcB5FMJDBWXmXCY/4GSaI8sMCWUmq2laroQc3y9AI53QMm5Ew25DkW9FMaM8dBH8hmvOr2l3qChJ2JgA==", "dev": true, "engines": { "node": ">=14.16.0" @@ -3597,9 +3597,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", + "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", "dependencies": { "reusify": "^1.0.4" } @@ -4166,9 +4166,9 @@ ] }, "node_modules/ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.1.tgz", + "integrity": "sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==", "engines": { "node": ">= 4" } @@ -5514,9 +5514,9 @@ } }, "node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.1.tgz", + "integrity": "sha512-362NP+zlprccbEt/SkxKfRMHnNY85V74mVnpUpNyr3F35covl09Kec7/sEFLt3RA4oXmewtoaanoIf67SE5Y5g==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -5773,9 +5773,9 @@ } }, "node_modules/nise/node_modules/@sinonjs/fake-timers/node_modules/@sinonjs/commons": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", - "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", "dev": true, "dependencies": { "type-detect": "4.0.8" @@ -6040,9 +6040,9 @@ } }, "node_modules/npm-package-arg": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.0.0.tgz", - "integrity": "sha512-7dkh8mRp7s0KwVHKIVJnFCJQ2B34gOGnzgBjDGyprycmARq/82SX/lhilQ95ZuacP/G/1gsS345iAkKmxWBQ2Q==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", + "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", "dependencies": { "hosted-git-info": "^6.0.0", "proc-log": "^3.0.0", @@ -7971,6 +7971,7 @@ "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead", "dev": true }, "node_modules/spawn-wrap": { @@ -8537,9 +8538,9 @@ } }, "node_modules/terser": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.0.tgz", - "integrity": "sha512-KjTV81QKStSfwbNiwlBXfcgMcOloyuRdb62/iLFPGBcVNF4EXjhdYBhYHmbJpiBrVxZhDvltE11j+LBQUxEEJg==", + "version": "5.16.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", + "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -9261,27 +9262,27 @@ } }, "@babel/compat-data": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", - "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.5.tgz", + "integrity": "sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==", "dev": true }, "@babel/core": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", - "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.5.tgz", + "integrity": "sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ==", "dev": true, "requires": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.2", + "@babel/generator": "^7.20.5", "@babel/helper-compilation-targets": "^7.20.0", "@babel/helper-module-transforms": "^7.20.2", - "@babel/helpers": "^7.20.1", - "@babel/parser": "^7.20.2", + "@babel/helpers": "^7.20.5", + "@babel/parser": "^7.20.5", "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -9298,12 +9299,12 @@ } }, "@babel/generator": { - "version": "7.20.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", - "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.5.tgz", + "integrity": "sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==", "dev": true, "requires": { - "@babel/types": "^7.20.2", + "@babel/types": "^7.20.5", "@jridgewell/gen-mapping": "^0.3.2", "jsesc": "^2.5.1" }, @@ -9433,14 +9434,14 @@ "dev": true }, "@babel/helpers": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", - "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.6.tgz", + "integrity": "sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==", "dev": true, "requires": { "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.0" + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" } }, "@babel/highlight": { @@ -9492,9 +9493,9 @@ } }, "@babel/parser": { - "version": "7.20.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", - "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==" + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz", + "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==" }, "@babel/template": { "version": "7.18.10", @@ -9508,27 +9509,27 @@ } }, "@babel/traverse": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", - "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.5.tgz", + "integrity": "sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==", "dev": true, "requires": { "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.1", + "@babel/generator": "^7.20.5", "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-function-name": "^7.19.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.1", - "@babel/types": "^7.20.0", + "@babel/parser": "^7.20.5", + "@babel/types": "^7.20.5", "debug": "^4.1.0", "globals": "^11.1.0" } }, "@babel/types": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", - "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.5.tgz", + "integrity": "sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==", "dev": true, "requires": { "@babel/helper-string-parser": "^7.19.4", @@ -9910,9 +9911,9 @@ }, "dependencies": { "@sinonjs/commons": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", - "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -10536,9 +10537,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001434", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001434.tgz", - "integrity": "sha512-aOBHrLmTQw//WFa2rcF1If9fa3ypkC1wzqqiKHgfdrXTWcU8C4gKVZT77eQAPWN1APys3+uQ0Df07rKauXGEYA==", + "version": "1.0.30001436", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001436.tgz", + "integrity": "sha512-ZmWkKsnC2ifEPoWUvSAIGyOYwT+keAaaWPHiQ9DfMqS1t6tfuyFYoWR78TeZtznkEQ64+vGXH9cZrElwR2Mrxg==", "dev": true }, "catharsis": { @@ -11516,9 +11517,9 @@ } }, "eslint": { - "version": "8.28.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.28.0.tgz", - "integrity": "sha512-S27Di+EVyMxcHiwDrFzk8dJYAaD+/5SoWKxL1ri/71CRHsnJnRDPNt2Kzj24+MT9FDupf4aqqyqPrvI8MvQ4VQ==", + "version": "8.29.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.29.0.tgz", + "integrity": "sha512-isQ4EEiyUjZFbEKvEGJKKGBwXtvXX+zJbkVKCgTuB9t/+jUBcy8avhkEwWJecI15BkRkOYmvIM5ynbhRjEkoeg==", "dev": true, "requires": { "@eslint/eslintrc": "^1.3.3", @@ -11792,9 +11793,9 @@ "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==" }, "esmock": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.0.9.tgz", - "integrity": "sha512-DowbbH79/YIvYc0tBPumq4XThIyFA1tcmGnHZJM3j3mcDFqCSbtS/jn6SqNG5bBcHUBAUVJ6z0l0q1uizkUd2A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.1.0.tgz", + "integrity": "sha512-8/2+iFfcB5FMJDBWXmXCY/4GSaI8sMCWUmq2laroQc3y9AI53QMm5Ew25DkW9FMaM8dBH8hmvOr2l3qChJ2JgA==", "dev": true }, "espree": { @@ -11919,9 +11920,9 @@ "dev": true }, "fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", + "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", "requires": { "reusify": "^1.0.4" } @@ -12327,9 +12328,9 @@ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" }, "ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.1.tgz", + "integrity": "sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==" }, "ignore-by-default": { "version": "2.1.0", @@ -13316,9 +13317,9 @@ "dev": true }, "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.1.tgz", + "integrity": "sha512-362NP+zlprccbEt/SkxKfRMHnNY85V74mVnpUpNyr3F35covl09Kec7/sEFLt3RA4oXmewtoaanoIf67SE5Y5g==", "requires": { "brace-expansion": "^2.0.1" } @@ -13521,9 +13522,9 @@ }, "dependencies": { "@sinonjs/commons": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", - "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", "dev": true, "requires": { "type-detect": "4.0.8" @@ -13728,9 +13729,9 @@ "integrity": "sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q==" }, "npm-package-arg": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.0.0.tgz", - "integrity": "sha512-7dkh8mRp7s0KwVHKIVJnFCJQ2B34gOGnzgBjDGyprycmARq/82SX/lhilQ95ZuacP/G/1gsS345iAkKmxWBQ2Q==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", + "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", "requires": { "hosted-git-info": "^6.0.0", "proc-log": "^3.0.0", @@ -15555,9 +15556,9 @@ } }, "terser": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.0.tgz", - "integrity": "sha512-KjTV81QKStSfwbNiwlBXfcgMcOloyuRdb62/iLFPGBcVNF4EXjhdYBhYHmbJpiBrVxZhDvltE11j+LBQUxEEJg==", + "version": "5.16.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", + "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", "requires": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", diff --git a/packages/project/package.json b/packages/project/package.json index 252da9558a9..f3c0b199026 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -143,11 +143,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.0", - "eslint": "^8.28.0", + "eslint": "^8.29.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-jsdoc": "^39.6.4", - "esmock": "^2.0.9", + "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", From 0c719ee5ece72d8159c181268af2352f293e073f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 4 Dec 2022 10:00:40 +0000 Subject: [PATCH 0740/1272] [ui5-project][INTERNAL] Bump sinon from 14.0.2 to 15.0.0 Bumps [sinon](https://github.com/sinonjs/sinon) from 14.0.2 to 15.0.0. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md) - [Commits](https://github.com/sinonjs/sinon/compare/v14.0.2...v15.0.0) --- updated-dependencies: - dependency-name: sinon dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3e28b074c8d..fe03acbb787 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -49,7 +49,7 @@ "jsdoc": "^3.6.11", "nyc": "^15.1.0", "open-cli": "^7.1.0", - "sinon": "^14.0.2", + "sinon": "^15.0.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" }, @@ -7864,9 +7864,9 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sinon": { - "version": "14.0.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-14.0.2.tgz", - "integrity": "sha512-PDpV0ZI3ZCS3pEqx0vpNp6kzPhHrLx72wA0G+ZLaaJjLIYeE0n8INlgaohKuGy7hP0as5tbUd23QWu5U233t+w==", + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.0.tgz", + "integrity": "sha512-pV97G1GbslaSJoSdy2F2z8uh5F+uPGp3ddOzA4JsBOUBLEQRz2OAqlKGRFTSh2KiqUCmHkzyAeu7R4x1Hx0wwg==", "dev": true, "dependencies": { "@sinonjs/commons": "^2.0.0", @@ -15033,9 +15033,9 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "sinon": { - "version": "14.0.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-14.0.2.tgz", - "integrity": "sha512-PDpV0ZI3ZCS3pEqx0vpNp6kzPhHrLx72wA0G+ZLaaJjLIYeE0n8INlgaohKuGy7hP0as5tbUd23QWu5U233t+w==", + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.0.tgz", + "integrity": "sha512-pV97G1GbslaSJoSdy2F2z8uh5F+uPGp3ddOzA4JsBOUBLEQRz2OAqlKGRFTSh2KiqUCmHkzyAeu7R4x1Hx0wwg==", "dev": true, "requires": { "@sinonjs/commons": "^2.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index f3c0b199026..1f353af858b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -156,7 +156,7 @@ "jsdoc": "^3.6.11", "nyc": "^15.1.0", "open-cli": "^7.1.0", - "sinon": "^14.0.2", + "sinon": "^15.0.0", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 7a177f647390d2d20fe259c8c449267bf7483c67 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 11 Dec 2022 03:20:31 +0000 Subject: [PATCH 0741/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 483 ++++++++++++++++++++++------- packages/project/package.json | 4 +- 2 files changed, 377 insertions(+), 110 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fe03acbb787..f876e840b9e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -14,13 +14,13 @@ "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.1.2", + "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", "graceful-fs": "^4.2.10", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "pacote": "^15.0.6", + "pacote": "^15.0.7", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", @@ -1590,15 +1590,15 @@ } }, "node_modules/cacache": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.2.tgz", - "integrity": "sha512-rYUs2x4OjSgCQND7nTrh21AHIBFgd7s/ctAYvU3a8u+nK+R5YaX/SFPDYz4Azz7SGL6+6L9ZZWI4Kawpb7grzQ==", + "version": "17.0.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.3.tgz", + "integrity": "sha512-pwsIK/grdM0cHpfVaNFxMdzElBtLJGsVPE+JnxqXP1l40O01Z1mfDE8MbRTuwomGq/UwEtGisOylutOEVJxEqg==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^2.1.0", "glob": "^8.0.1", "lru-cache": "^7.7.1", - "minipass": "^3.1.6", + "minipass": "^4.0.0", "minipass-collect": "^1.0.2", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", @@ -1753,9 +1753,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001436", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001436.tgz", - "integrity": "sha512-ZmWkKsnC2ifEPoWUvSAIGyOYwT+keAaaWPHiQ9DfMqS1t6tfuyFYoWR78TeZtznkEQ64+vGXH9cZrElwR2Mrxg==", + "version": "1.0.30001439", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001439.tgz", + "integrity": "sha512-1MgUzEkoMO6gKfXflStpYgZDlFM7M/ck/bgfVCACO5vnAf0fXoNVHdWtqGU+MYca+4bL9Z5bpOVmR33cWW9G2A==", "dev": true, "funding": [ { @@ -1792,9 +1792,9 @@ } }, "node_modules/chalk": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz", - "integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", + "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -3770,6 +3770,22 @@ "node": ">= 8" } }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs-minipass/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -5147,6 +5163,17 @@ "node": ">=12" } }, + "node_modules/make-fetch-happen/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/make-fetch-happen/node_modules/p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -5194,6 +5221,11 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, + "node_modules/make-fetch-happen/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/map-age-cleaner": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", @@ -5251,9 +5283,9 @@ } }, "node_modules/marked": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.3.tgz", - "integrity": "sha512-slWRdJkbTZ+PjkyJnE30Uid64eHwbwa1Q25INCAYfZlK4o6ylagBy/Le9eWntqJFoFT93ikUKMv47GZ4gTwHkw==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.4.tgz", + "integrity": "sha512-Wcc9ikX7Q5E4BYDPvh1C6QNSxrjC9tBgz+A/vAhp59KXUgachw++uMvMKiSW8oA85nopmPZcEvBoex/YLMsiyA==", "bin": { "marked": "bin/marked.js" }, @@ -5557,9 +5589,9 @@ } }, "node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz", + "integrity": "sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==", "dependencies": { "yallist": "^4.0.0" }, @@ -5578,6 +5610,22 @@ "node": ">= 8" } }, + "node_modules/minipass-collect/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minipass-fetch": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", @@ -5594,6 +5642,22 @@ "encoding": "^0.1.13" } }, + "node_modules/minipass-fetch/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-fetch/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minipass-flush": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", @@ -5605,6 +5669,22 @@ "node": ">= 8" } }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minipass-json-stream": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", @@ -5614,6 +5694,22 @@ "minipass": "^3.0.0" } }, + "node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-json-stream/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minipass-pipeline": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", @@ -5625,6 +5721,22 @@ "node": ">=8" } }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minipass-sized": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", @@ -5636,6 +5748,22 @@ "node": ">=8" } }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minipass/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -5653,6 +5781,17 @@ "node": ">= 8" } }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/minizlib/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -5751,9 +5890,9 @@ } }, "node_modules/nise": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.2.tgz", - "integrity": "sha512-+gQjFi8v+tkfCuSCxfURHLhRhniE/+IaYbIphxAN2JRR9SHKhY8hgXpaXiYfHdw+gcGe4buxgbprBQFab9FkhA==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.3.tgz", + "integrity": "sha512-U597iWTTBBYIV72986jyU382/MMZ70ApWcRmkoF1AZ75bpqOtI3Gugv/6+0jLgoDOabmcSwYBkSSAWIp1eA5cg==", "dev": true, "dependencies": { "@sinonjs/commons": "^2.0.0", @@ -6073,9 +6212,9 @@ } }, "node_modules/npm-packlist": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.2.tgz", - "integrity": "sha512-d2+7RMySjVXssww23rV5NuIq1NzGvM04OlI5kwnvtYKfFTAPVs6Zxmxns2HRtJEA1oNj7D/BbFXeVAOLmW3N3Q==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", + "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", "dependencies": { "ignore-walk": "^6.0.0" }, @@ -6098,12 +6237,12 @@ } }, "node_modules/npm-registry-fetch": { - "version": "14.0.2", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.2.tgz", - "integrity": "sha512-TMenrMagFA9KF81E2bkS5XRyzERK4KXu70vgXt5+i8FcrFeLNgNsc6e5hekTqjDwPDkL3HGn/holWcXDMfnFgw==", + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.3.tgz", + "integrity": "sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA==", "dependencies": { "make-fetch-happen": "^11.0.0", - "minipass": "^3.1.6", + "minipass": "^4.0.0", "minipass-fetch": "^3.0.0", "minipass-json-stream": "^1.0.1", "minizlib": "^2.1.2", @@ -6123,9 +6262,9 @@ } }, "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.1.tgz", - "integrity": "sha512-clv3IblugXn2CDUmqFhNzii3rjKa46u5wNeivc+QlLXkGI5FjLX3rGboo+y2kwf1pd8W0iDiC384cemeDtw9kw==", + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.2.tgz", + "integrity": "sha512-5n/Pq41w/uZghpdlXAY5kIM85RgJThtTH/NYBRAZ9VUOBWV90USaQjwGrw76fZP3Lj5hl/VZjpVvOaRBMoL/2w==", "dependencies": { "agentkeepalive": "^4.2.1", "cacache": "^17.0.0", @@ -6134,7 +6273,7 @@ "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", "lru-cache": "^7.7.1", - "minipass": "^3.1.6", + "minipass": "^4.0.0", "minipass-collect": "^1.0.2", "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", @@ -6149,11 +6288,11 @@ } }, "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.0.tgz", - "integrity": "sha512-NSx3k5gR4Q5Ts2poCM/19d45VwhVLBtJZ6ypYcthj2BwmDx/e7lW8Aadnyt3edd2W0ecb+b0o7FYLRYE2AGcQg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz", + "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==", "dependencies": { - "minipass": "^3.1.6", + "minipass": "^4.0.0", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" }, @@ -6661,9 +6800,9 @@ } }, "node_modules/pacote": { - "version": "15.0.6", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.6.tgz", - "integrity": "sha512-dQwcz/sME7QIL+cdrw/jftQfMMXxSo17i2kJ/gnhBhUvvBAsxoBu1lw9B5IzCH/Ce8CvEkG/QYZ6txzKfn0bTw==", + "version": "15.0.7", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.7.tgz", + "integrity": "sha512-OFf4dl3SM1PpsZvi1zk4vvMA0EplnyO0Ajbrtoyx6E3dXOWBoPnMapnLgQdInEfqPkNT8mrd2bY6c5t8JZ69sQ==", "dependencies": { "@npmcli/git": "^4.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -6671,7 +6810,7 @@ "@npmcli/run-script": "^6.0.0", "cacache": "^17.0.0", "fs-minipass": "^2.1.0", - "minipass": "^3.1.6", + "minipass": "^4.0.0", "npm-package-arg": "^10.0.0", "npm-packlist": "^7.0.0", "npm-pick-manifest": "^8.0.0", @@ -7730,9 +7869,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.56.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.1.tgz", - "integrity": "sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==", + "version": "1.56.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.2.tgz", + "integrity": "sha512-ciEJhnyCRwzlBCB+h5cCPM6ie/6f8HrhZMQOf5vlU60Y1bI1rx5Zb0vlDZvaycHsg/MqFfF1Eq2eokAa32iw8w==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -7752,12 +7891,13 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "node_modules/scss-parser": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/scss-parser/-/scss-parser-1.0.5.tgz", - "integrity": "sha512-RZOtvCmCnwkDo7kdcYBi807Y5EoTIxJ34AgEgJNDmOH1jl0/xG0FyYZFbH6Ga3Iwu7q8LSdxJ4C5UkzNXjQxKQ==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/scss-parser/-/scss-parser-1.0.6.tgz", + "integrity": "sha512-SH3TaoaJFzfAtqs3eG1j5IuHJkeEW5rKUPIjIN+ZorLAyJLHItQGnsgwHk76v25GtLtpT9IqfAcqK4vFWdiw+w==", "dev": true, "dependencies": { - "invariant": "2.2.4" + "invariant": "2.2.4", + "lodash": "4.17.21" }, "engines": { "node": ">=6.0.0" @@ -8026,11 +8166,11 @@ "dev": true }, "node_modules/ssri": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.0.tgz", - "integrity": "sha512-64ghGOpqW0k+jh7m5jndBGdVEoPikWwGQmBNN5ks6jyUSMymzHDTlnNHOvzp+6MmHOljr2MokUzvRksnTwG0Iw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.1.tgz", + "integrity": "sha512-WVy6di9DlPOeBWEjMScpNipeSX2jIZBGEn5Uuo8Q7aIuFEuDX0pw8RxcOjlD1TWP4obi24ki7m/13+nFpcbXrw==", "dependencies": { - "minipass": "^3.1.1" + "minipass": "^4.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -8457,13 +8597,13 @@ } }, "node_modules/tar": { - "version": "6.1.12", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.12.tgz", - "integrity": "sha512-jU4TdemS31uABHd+Lt5WEYJuzn+TJTCBLljvIAHZOz6M9Os5pJ4dD+vRFLxPa/n3T0iEFzpi+0x1UfuDZYbRMw==", + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", + "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", + "minipass": "^4.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" @@ -10419,15 +10559,15 @@ } }, "cacache": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.2.tgz", - "integrity": "sha512-rYUs2x4OjSgCQND7nTrh21AHIBFgd7s/ctAYvU3a8u+nK+R5YaX/SFPDYz4Azz7SGL6+6L9ZZWI4Kawpb7grzQ==", + "version": "17.0.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.3.tgz", + "integrity": "sha512-pwsIK/grdM0cHpfVaNFxMdzElBtLJGsVPE+JnxqXP1l40O01Z1mfDE8MbRTuwomGq/UwEtGisOylutOEVJxEqg==", "requires": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^2.1.0", "glob": "^8.0.1", "lru-cache": "^7.7.1", - "minipass": "^3.1.6", + "minipass": "^4.0.0", "minipass-collect": "^1.0.2", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", @@ -10537,9 +10677,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001436", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001436.tgz", - "integrity": "sha512-ZmWkKsnC2ifEPoWUvSAIGyOYwT+keAaaWPHiQ9DfMqS1t6tfuyFYoWR78TeZtznkEQ64+vGXH9cZrElwR2Mrxg==", + "version": "1.0.30001439", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001439.tgz", + "integrity": "sha512-1MgUzEkoMO6gKfXflStpYgZDlFM7M/ck/bgfVCACO5vnAf0fXoNVHdWtqGU+MYca+4bL9Z5bpOVmR33cWW9G2A==", "dev": true }, "catharsis": { @@ -10560,9 +10700,9 @@ } }, "chalk": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.1.2.tgz", - "integrity": "sha512-E5CkT4jWURs1Vy5qGJye+XwCkNj7Od3Af7CP6SujMetSMkLs8Do2RWJK5yx1wamHV/op8Rz+9rltjaTQWDnEFQ==" + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", + "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==" }, "cheerio": { "version": "1.0.0-rc.12", @@ -12040,6 +12180,21 @@ "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "fs.realpath": { @@ -13073,6 +13228,14 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" }, + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, "p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -13104,6 +13267,11 @@ "requires": { "imurmurhash": "^0.1.4" } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, @@ -13148,9 +13316,9 @@ "requires": {} }, "marked": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.3.tgz", - "integrity": "sha512-slWRdJkbTZ+PjkyJnE30Uid64eHwbwa1Q25INCAYfZlK4o6ylagBy/Le9eWntqJFoFT93ikUKMv47GZ4gTwHkw==" + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.4.tgz", + "integrity": "sha512-Wcc9ikX7Q5E4BYDPvh1C6QNSxrjC9tBgz+A/vAhp59KXUgachw++uMvMKiSW8oA85nopmPZcEvBoex/YLMsiyA==" }, "matcher": { "version": "5.0.0", @@ -13350,9 +13518,9 @@ } }, "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz", + "integrity": "sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==", "requires": { "yallist": "^4.0.0" }, @@ -13370,6 +13538,21 @@ "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "minipass-fetch": { @@ -13381,6 +13564,21 @@ "minipass": "^3.1.6", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "minipass-flush": { @@ -13389,6 +13587,21 @@ "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "minipass-json-stream": { @@ -13398,6 +13611,21 @@ "requires": { "jsonparse": "^1.3.1", "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "minipass-pipeline": { @@ -13406,6 +13634,21 @@ "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "minipass-sized": { @@ -13414,6 +13657,21 @@ "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "minizlib": { @@ -13425,6 +13683,14 @@ "yallist": "^4.0.0" }, "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -13500,9 +13766,9 @@ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" }, "nise": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.2.tgz", - "integrity": "sha512-+gQjFi8v+tkfCuSCxfURHLhRhniE/+IaYbIphxAN2JRR9SHKhY8hgXpaXiYfHdw+gcGe4buxgbprBQFab9FkhA==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.3.tgz", + "integrity": "sha512-U597iWTTBBYIV72986jyU382/MMZ70ApWcRmkoF1AZ75bpqOtI3Gugv/6+0jLgoDOabmcSwYBkSSAWIp1eA5cg==", "dev": true, "requires": { "@sinonjs/commons": "^2.0.0", @@ -13755,9 +14021,9 @@ } }, "npm-packlist": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.2.tgz", - "integrity": "sha512-d2+7RMySjVXssww23rV5NuIq1NzGvM04OlI5kwnvtYKfFTAPVs6Zxmxns2HRtJEA1oNj7D/BbFXeVAOLmW3N3Q==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", + "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", "requires": { "ignore-walk": "^6.0.0" } @@ -13774,12 +14040,12 @@ } }, "npm-registry-fetch": { - "version": "14.0.2", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.2.tgz", - "integrity": "sha512-TMenrMagFA9KF81E2bkS5XRyzERK4KXu70vgXt5+i8FcrFeLNgNsc6e5hekTqjDwPDkL3HGn/holWcXDMfnFgw==", + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.3.tgz", + "integrity": "sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA==", "requires": { "make-fetch-happen": "^11.0.0", - "minipass": "^3.1.6", + "minipass": "^4.0.0", "minipass-fetch": "^3.0.0", "minipass-json-stream": "^1.0.1", "minizlib": "^2.1.2", @@ -13793,9 +14059,9 @@ "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" }, "make-fetch-happen": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.1.tgz", - "integrity": "sha512-clv3IblugXn2CDUmqFhNzii3rjKa46u5wNeivc+QlLXkGI5FjLX3rGboo+y2kwf1pd8W0iDiC384cemeDtw9kw==", + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.2.tgz", + "integrity": "sha512-5n/Pq41w/uZghpdlXAY5kIM85RgJThtTH/NYBRAZ9VUOBWV90USaQjwGrw76fZP3Lj5hl/VZjpVvOaRBMoL/2w==", "requires": { "agentkeepalive": "^4.2.1", "cacache": "^17.0.0", @@ -13804,7 +14070,7 @@ "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", "lru-cache": "^7.7.1", - "minipass": "^3.1.6", + "minipass": "^4.0.0", "minipass-collect": "^1.0.2", "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", @@ -13816,12 +14082,12 @@ } }, "minipass-fetch": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.0.tgz", - "integrity": "sha512-NSx3k5gR4Q5Ts2poCM/19d45VwhVLBtJZ6ypYcthj2BwmDx/e7lW8Aadnyt3edd2W0ecb+b0o7FYLRYE2AGcQg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz", + "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==", "requires": { "encoding": "^0.1.13", - "minipass": "^3.1.6", + "minipass": "^4.0.0", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" } @@ -14201,9 +14467,9 @@ } }, "pacote": { - "version": "15.0.6", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.6.tgz", - "integrity": "sha512-dQwcz/sME7QIL+cdrw/jftQfMMXxSo17i2kJ/gnhBhUvvBAsxoBu1lw9B5IzCH/Ce8CvEkG/QYZ6txzKfn0bTw==", + "version": "15.0.7", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.7.tgz", + "integrity": "sha512-OFf4dl3SM1PpsZvi1zk4vvMA0EplnyO0Ajbrtoyx6E3dXOWBoPnMapnLgQdInEfqPkNT8mrd2bY6c5t8JZ69sQ==", "requires": { "@npmcli/git": "^4.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -14211,7 +14477,7 @@ "@npmcli/run-script": "^6.0.0", "cacache": "^17.0.0", "fs-minipass": "^2.1.0", - "minipass": "^3.1.6", + "minipass": "^4.0.0", "npm-package-arg": "^10.0.0", "npm-packlist": "^7.0.0", "npm-pick-manifest": "^8.0.0", @@ -14931,9 +15197,9 @@ "optional": true }, "sass": { - "version": "1.56.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.1.tgz", - "integrity": "sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==", + "version": "1.56.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.2.tgz", + "integrity": "sha512-ciEJhnyCRwzlBCB+h5cCPM6ie/6f8HrhZMQOf5vlU60Y1bI1rx5Zb0vlDZvaycHsg/MqFfF1Eq2eokAa32iw8w==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -14947,12 +15213,13 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "scss-parser": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/scss-parser/-/scss-parser-1.0.5.tgz", - "integrity": "sha512-RZOtvCmCnwkDo7kdcYBi807Y5EoTIxJ34AgEgJNDmOH1jl0/xG0FyYZFbH6Ga3Iwu7q8LSdxJ4C5UkzNXjQxKQ==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/scss-parser/-/scss-parser-1.0.6.tgz", + "integrity": "sha512-SH3TaoaJFzfAtqs3eG1j5IuHJkeEW5rKUPIjIN+ZorLAyJLHItQGnsgwHk76v25GtLtpT9IqfAcqK4vFWdiw+w==", "dev": true, "requires": { - "invariant": "2.2.4" + "invariant": "2.2.4", + "lodash": "4.17.21" } }, "semver": { @@ -15161,11 +15428,11 @@ "dev": true }, "ssri": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.0.tgz", - "integrity": "sha512-64ghGOpqW0k+jh7m5jndBGdVEoPikWwGQmBNN5ks6jyUSMymzHDTlnNHOvzp+6MmHOljr2MokUzvRksnTwG0Iw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.1.tgz", + "integrity": "sha512-WVy6di9DlPOeBWEjMScpNipeSX2jIZBGEn5Uuo8Q7aIuFEuDX0pw8RxcOjlD1TWP4obi24ki7m/13+nFpcbXrw==", "requires": { - "minipass": "^3.1.1" + "minipass": "^4.0.0" } }, "stack-utils": { @@ -15498,13 +15765,13 @@ } }, "tar": { - "version": "6.1.12", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.12.tgz", - "integrity": "sha512-jU4TdemS31uABHd+Lt5WEYJuzn+TJTCBLljvIAHZOz6M9Os5pJ4dD+vRFLxPa/n3T0iEFzpi+0x1UfuDZYbRMw==", + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", + "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", "requires": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", + "minipass": "^4.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index 1f353af858b..9a5236f13ba 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,13 +121,13 @@ "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.1.2", + "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", "graceful-fs": "^4.2.10", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "pacote": "^15.0.6", + "pacote": "^15.0.7", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", From d91ca1c96a15d2cc478fa0687345411379103c77 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 12 Dec 2022 16:32:13 +0000 Subject: [PATCH 0742/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-beta.4 to 3.0.0-beta.5 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-beta.5/CHANGELOG.md --- packages/project/package-lock.json | 118 +++++++++++++++++++++-------- packages/project/package.json | 2 +- 2 files changed, 88 insertions(+), 32 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f876e840b9e..b0a704842fe 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-beta.4", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-beta.4", + "@ui5/builder": "^3.0.0-beta.5", "@ui5/fs": "^3.0.0-beta.4", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", @@ -58,11 +58,6 @@ "npm": ">= 8" } }, - "node_modules/@adobe/css-tools": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.0.1.tgz", - "integrity": "sha512-+u76oB43nOHrF4DDWRLWDCtci7f3QJoEBigemIdIeTi1ODqjx6Tad9NCVnPRwewWlKkVab5PlK8DCtPTyX7S8g==" - }, "node_modules/@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", @@ -1013,9 +1008,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-beta.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.4.tgz", - "integrity": "sha512-Kh8MkjnGXOfDRcb56/qgVOregXZYJtGNwm56XxMnVzd/KiwpCGaisd+Rx+XlV5W2vSTN+lGC6rdPgR2u2wnBPw==", + "version": "3.0.0-beta.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.5.tgz", + "integrity": "sha512-pXCaF52R83eHJF07vZ5ReJ3HDeIaGWLXGTx/3uM0J9n4t5Tjf+h6vOBZuVvUVhVY8wpgfhaS17kPoqchv2fvAA==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", "@ui5/fs": "^3.0.0-beta.4", @@ -1026,13 +1021,12 @@ "espree": "^9.4.1", "graceful-fs": "^4.2.10", "jsdoc": "^3.6.11", - "less-openui5": "^0.11.4", - "make-dir": "^3.1.0", + "less-openui5": "^0.11.5", "pretty-data": "^0.40.0", "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.8", - "terser": "^5.16.0", + "terser": "^5.16.1", "xml2js": "^0.4.23" }, "engines": { @@ -1374,6 +1368,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, "node_modules/ava": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.0.tgz", @@ -2384,6 +2389,16 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", + "dependencies": { + "inherits": "^2.0.4", + "source-map": "^0.6.1", + "source-map-resolve": "^0.6.0" + } + }, "node_modules/css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -2489,6 +2504,14 @@ "node": ">=0.10.0" } }, + "node_modules/decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "engines": { + "node": ">=0.10" + } + }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -4849,12 +4872,12 @@ } }, "node_modules/less-openui5": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.4.tgz", - "integrity": "sha512-16bhrakJ/0gsszpvqGGTq/tizpE+d8ix3e/Zzsk3HFptXy72OjaP3FvQNY83JBdUsljAsek9OdWRj+QIqkYE5g==", + "version": "0.11.5", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.5.tgz", + "integrity": "sha512-7jelqOz6w3ypUSxKQU4LNEcDEXd4TDlw2bnh758XUNXEehfwgpkP2aITjVvKIIziVlE+tR1Yl6nZdaRQ2GxNtg==", "dependencies": { - "@adobe/css-tools": "^4.0.1", "clone": "^2.1.2", + "css": "^3.0.0", "mime": "^1.6.0" }, "engines": { @@ -8098,6 +8121,16 @@ "node": ">=0.10.0" } }, + "node_modules/source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, "node_modules/source-map-support": { "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", @@ -9378,11 +9411,6 @@ } }, "dependencies": { - "@adobe/css-tools": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.0.1.tgz", - "integrity": "sha512-+u76oB43nOHrF4DDWRLWDCtci7f3QJoEBigemIdIeTi1ODqjx6Tad9NCVnPRwewWlKkVab5PlK8DCtPTyX7S8g==" - }, "@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", @@ -10132,9 +10160,9 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-beta.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.4.tgz", - "integrity": "sha512-Kh8MkjnGXOfDRcb56/qgVOregXZYJtGNwm56XxMnVzd/KiwpCGaisd+Rx+XlV5W2vSTN+lGC6rdPgR2u2wnBPw==", + "version": "3.0.0-beta.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.5.tgz", + "integrity": "sha512-pXCaF52R83eHJF07vZ5ReJ3HDeIaGWLXGTx/3uM0J9n4t5Tjf+h6vOBZuVvUVhVY8wpgfhaS17kPoqchv2fvAA==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", "@ui5/fs": "^3.0.0-beta.4", @@ -10145,13 +10173,12 @@ "espree": "^9.4.1", "graceful-fs": "^4.2.10", "jsdoc": "^3.6.11", - "less-openui5": "^0.11.4", - "make-dir": "^3.1.0", + "less-openui5": "^0.11.5", "pretty-data": "^0.40.0", "replacestream": "^4.0.3", "rimraf": "^3.0.2", "semver": "^7.3.8", - "terser": "^5.16.0", + "terser": "^5.16.1", "xml2js": "^0.4.23" } }, @@ -10410,6 +10437,11 @@ "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", "dev": true }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + }, "ava": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.0.tgz", @@ -11155,6 +11187,16 @@ } } }, + "css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", + "requires": { + "inherits": "^2.0.4", + "source-map": "^0.6.1", + "source-map-resolve": "^0.6.0" + } + }, "css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -11229,6 +11271,11 @@ } } }, + "decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==" + }, "deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -12972,12 +13019,12 @@ } }, "less-openui5": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.4.tgz", - "integrity": "sha512-16bhrakJ/0gsszpvqGGTq/tizpE+d8ix3e/Zzsk3HFptXy72OjaP3FvQNY83JBdUsljAsek9OdWRj+QIqkYE5g==", + "version": "0.11.5", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.5.tgz", + "integrity": "sha512-7jelqOz6w3ypUSxKQU4LNEcDEXd4TDlw2bnh758XUNXEehfwgpkP2aITjVvKIIziVlE+tR1Yl6nZdaRQ2GxNtg==", "requires": { - "@adobe/css-tools": "^4.0.1", "clone": "^2.1.2", + "css": "^3.0.0", "mime": "^1.6.0" } }, @@ -15364,6 +15411,15 @@ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "dev": true }, + "source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, "source-map-support": { "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 9a5236f13ba..4186a8b2912 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-beta.4", + "@ui5/builder": "^3.0.0-beta.5", "@ui5/fs": "^3.0.0-beta.4", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", From 69cf411333c1efee7cf2a5123e848dca706b21f5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 13 Dec 2022 13:46:42 +0000 Subject: [PATCH 0743/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-beta.5 to 3.0.0-beta.6 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-beta.6/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b0a704842fe..a4353745785 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-beta.4", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-beta.5", + "@ui5/builder": "^3.0.0-beta.6", "@ui5/fs": "^3.0.0-beta.4", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", @@ -1008,9 +1008,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-beta.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.5.tgz", - "integrity": "sha512-pXCaF52R83eHJF07vZ5ReJ3HDeIaGWLXGTx/3uM0J9n4t5Tjf+h6vOBZuVvUVhVY8wpgfhaS17kPoqchv2fvAA==", + "version": "3.0.0-beta.6", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.6.tgz", + "integrity": "sha512-3m4r2l+ztNfGPfnTriDOdXUAzawFKaBhuYurOTJXHlAgIAAh0VHv20nCC16avBjm5HVlYLuljwzq7XLKQ52N7w==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", "@ui5/fs": "^3.0.0-beta.4", @@ -10160,9 +10160,9 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-beta.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.5.tgz", - "integrity": "sha512-pXCaF52R83eHJF07vZ5ReJ3HDeIaGWLXGTx/3uM0J9n4t5Tjf+h6vOBZuVvUVhVY8wpgfhaS17kPoqchv2fvAA==", + "version": "3.0.0-beta.6", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.6.tgz", + "integrity": "sha512-3m4r2l+ztNfGPfnTriDOdXUAzawFKaBhuYurOTJXHlAgIAAh0VHv20nCC16avBjm5HVlYLuljwzq7XLKQ52N7w==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", "@ui5/fs": "^3.0.0-beta.4", diff --git a/packages/project/package.json b/packages/project/package.json index 4186a8b2912..d08b5bb2277 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-beta.5", + "@ui5/builder": "^3.0.0-beta.6", "@ui5/fs": "^3.0.0-beta.4", "@ui5/logger": "^3.0.1-beta.1", "ajv": "^6.12.6", From 31e71349a5311d669aa7417d9351058f50035315 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sat, 3 Dec 2022 11:53:43 +0100 Subject: [PATCH 0744/1272] [ui5-project][INTERNAL] Refactor requires build/requires dependencies determination * Move requiresBuild() from TaskRunner to ProjectBuildContext * This likely needs to be moved into a module of its own at some point. For now, TaskRunner was the wrong place. If a project does not need to be built, there is no need to instantiate a TaskRunner in the first place. This is now implemented. * TaskRunner can now compile a list of all direct project dependencies required by the set of tasks that it will execute for the given build options. * Custom tasks defining any specVersion can now provide an optional 'determineRequiredDependencies' callback to define which dependencies they require access to. --- packages/project/lib/build/ProjectBuilder.js | 45 +- packages/project/lib/build/TaskRunner.js | 439 +++++---- .../project/lib/build/helpers/BuildContext.js | 12 +- .../lib/build/helpers/ProjectBuildContext.js | 35 +- .../project/lib/specifications/Project.js | 14 +- .../specifications/types/extensions/Task.js | 23 +- .../extension.a.esm/lib/extensionModule.js | 3 +- .../extension.a/lib/extensionModule.js | 3 +- .../project/test/lib/build/ProjectBuilder.js | 121 +-- packages/project/test/lib/build/TaskRunner.js | 857 ++++++++++++++---- .../test/lib/build/helpers/BuildContext.js | 42 +- .../lib/build/helpers/ProjectBuildContext.js | 122 ++- .../test/lib/specifications/Project.js | 6 +- .../types/extensions/ServerMiddleware.js | 10 +- .../specifications/types/extensions/Task.js | 24 +- 15 files changed, 1188 insertions(+), 568 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index de3ee58a5fa..1655c1e9ec1 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -120,7 +120,7 @@ class ProjectBuilder { // => This project needs to be built or, in case it has already // been built, it's build result needs to be written out (if requested) queue.push(projectBuildContext); - if (!projectBuildContext.getTaskRunner().requiresBuild()) { + if (!projectBuildContext.requiresBuild()) { alreadyBuilt.push(projectName); } } @@ -141,7 +141,7 @@ class ProjectBuilder { const projectName = projectBuildContext.getProject().getName(); let msg; if (alreadyBuilt.includes(projectName)) { - const buildMetadata = projectBuildContext.getTaskRunner().getBuildMetadata(); + const buildMetadata = projectBuildContext.getBuildMetadata(); const ts = new Date(buildMetadata.timestamp).toUTCString(); msg = `*> ${projectName} /// already built at ${ts}`; } else { @@ -167,7 +167,7 @@ class ProjectBuilder { // Only build projects that are not already build (i.e. provide a matching build manifest) if (!alreadyBuilt.includes(projectName)) { buildLogger.startWork(`Building project ${projectName}...`); - await this._buildProject(projectBuildContext); + await projectBuildContext.getTaskRunner().runTasks(); buildLogger.completeWork(1); log.verbose(`Finished building project ${projectName}`); @@ -203,15 +203,20 @@ class ProjectBuilder { for (const project of requiredProjects) { const projectName = project.getName(); log.verbose(`Creating build context for project ${projectName}...`); - const projectBuildContext = await this._buildContext.createProjectContext({ + const projectBuildContext = this._buildContext.createProjectContext({ project, log }); - const taskRunner = projectBuildContext.getTaskRunner(); projectBuildContexts.set(projectName, projectBuildContext); - if (taskRunner.requiresBuild() && taskRunner.requiresDependencies()) { + if (projectBuildContext.requiresBuild()) { + const taskRunner = projectBuildContext.getTaskRunner(); + const requiredDependencies = await taskRunner.getRequiredDependencies(); + + if (requiredDependencies.size === 0) { + continue; + } // This project needs to be built and required dependencies to be built as well this._graph.getDependencies(projectName).forEach((depName) => { if (projectBuildContexts.has(depName)) { @@ -219,6 +224,9 @@ class ProjectBuilder { // => Dependency will be built return; } + if (!requiredDependencies.has(depName)) { + return; + } // Add dependency to list of projects to build const depProject = this._graph.getProject(depName); requiredProjects.add(depProject); @@ -279,31 +287,6 @@ class ProjectBuilder { }; } - async _buildProject(projectBuildContext) { - const project = projectBuildContext.getProject(); - const taskRunner = projectBuildContext.getTaskRunner(); - - // Create readers for all dependencies - const readers = []; - await this._graph.traverseBreadthFirst(project.getName(), async function({project: dep}) { - if (dep.getName() === project.getName()) { - // Ignore project itself - return; - } - readers.push(dep.getReader()); - }); - - const dependencies = resourceFactory.createReaderCollection({ - name: `Dependency reader collection for project ${project.getName()}`, - readers - }); - - await taskRunner.runTasks({ - workspace: project.getWorkspace(), - dependencies, - }); - } - async _writeResults(projectBuildContext, target) { const project = projectBuildContext.getProject(); const taskUtil = projectBuildContext.getTaskUtil(); diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index e106a6be391..6c46948c5fa 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -1,5 +1,6 @@ import composeTaskList from "./helpers/composeTaskList.js"; import logger from "@ui5/logger"; +import {createReaderCollection} from "@ui5/fs/resourceFactory"; /** * TaskRunner @@ -19,10 +20,9 @@ class TaskRunner { * @param {@ui5/builder/tasks/taskRepository} parameters.taskRepository Task repository * @param {@ui5/project/build/ProjectBuilder~BuildConfiguration} parameters.buildConfig * Build configuration - * @param {Map} parameters.standardTasks Standard tasks */ - constructor({graph, project, parentLogger, taskUtil, taskRepository, buildConfig, standardTasks}) { - if (!graph || !project || !parentLogger || !taskUtil || !buildConfig || !standardTasks) { + constructor({graph, project, parentLogger, taskUtil, taskRepository, buildConfig}) { + if (!graph || !project || !parentLogger || !taskUtil || !taskRepository || !buildConfig) { throw new Error("One or more mandatory parameters not provided"); } this._project = project; @@ -34,33 +34,18 @@ class TaskRunner { this._log = parentLogger.createSubLogger(project.getType() + " " + project.getName(), 0.2); this._taskLog = this._log.createTaskLogger("🔨"); - this._tasks = Object.create(null); - this._taskExecutionOrder = []; + this._directDependencies = new Set(this._taskUtil.getDependencies()); + } - for (const [taskName, params] of standardTasks) { - this._addTask(taskName, params); + async _initTasks() { + if (this._tasks) { + return; } - this._addCustomTasks({ - graph, - project, - taskUtil - }); - } + this._tasks = Object.create(null); + this._taskExecutionOrder = []; - /** - * Creates a new TaskRunner Instance - * - * @param {object} parameters - * @param {object} parameters.graph - * @param {object} parameters.project - * @param {@ui5/logger/GroupLogger} parameters.parentLogger Logger to use - * @param {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil TaskUtil instance - * @param {@ui5/builder/tasks/taskRepository} parameters.taskRepository Task repository - * @param {@ui5/project/build/ProjectBuilder~BuildConfiguration} parameters.buildConfig - * Build configuration - */ - static async create({graph, project, parentLogger, taskUtil, taskRepository, buildConfig}) { + const project = this._project; let buildDefinition; switch (project.getType()) { @@ -84,22 +69,39 @@ class TaskRunner { const standardTasks = getStandardTasks({ project, - taskUtil, - getTask: taskRepository.getTask + taskUtil: this._taskUtil, + getTask: this._taskRepository.getTask + }); + + for (const [taskName, params] of standardTasks) { + this._addTask(taskName, params); + } + + await this._addCustomTasks(); + + // Create readers for *all* dependencies + const depReaders = []; + await this._graph.traverseBreadthFirst(project.getName(), async function({project: dep}) { + if (dep.getName() === project.getName()) { + // Ignore project itself + return; + } + depReaders.push(dep.getReader()); }); - return new TaskRunner({graph, project, parentLogger, taskUtil, taskRepository, buildConfig, standardTasks}); + this._allDependenciesReader = createReaderCollection({ + name: `Dependency reader collection of project ${project.getName()}`, + readers: depReaders + }); } /** * Takes a list of tasks which should be executed from the available task list of the current builder * - * @param {object} buildParams - * @param {@ui5/fs/DuplexCollection} buildParams.workspace Workspace of the current project - * @param {@ui5/fs/ReaderCollection} buildParams.dependencies Dependencies reader collection - * @returns {Promise} Returns promise chain with tasks + * @returns {Promise} Returns promise resolving once all tasks have been executed */ - async runTasks(buildParams) { + async runTasks() { + await this._initTasks(); const tasksToRun = composeTaskList(Object.keys(this._tasks), this._buildConfig); const allTasks = this._taskExecutionOrder.filter((taskName) => { // There might be a numeric suffix in case a custom task is configured multiple times. @@ -120,17 +122,19 @@ class TaskRunner { const taskFunction = this._tasks[taskName].task; if (typeof taskFunction === "function") { - await this._executeTask(taskName, taskFunction, buildParams); + await this._executeTask(taskName, taskFunction); } } } /** - * Takes a list of tasks which should be executed from the available task list of the current builder + * First compiles a list of all tasks that will be executed, then a list of all direct project + * dependencies that those tasks require access to. * - * @returns {Promise} Returns promise chain with tasks + * @returns {Set} Returns a set containing the names of all required direct project dependencies */ - requiresDependencies() { + async getRequiredDependencies() { + await this._initTasks(); const tasksToRun = composeTaskList(Object.keys(this._tasks), this._buildConfig); const allTasks = this._taskExecutionOrder.filter((taskName) => { // There might be a numeric suffix in case a custom task is configured multiple times. @@ -144,33 +148,15 @@ class TaskRunner { const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); return tasksToRun.includes(taskWithoutSuffixCounter); }); - return allTasks.some((taskName) => { - if (this._tasks[taskName].requiresDependencies) { + return allTasks.reduce((requiredDependencies, taskName) => { + if (this._tasks[taskName].requiredDependencies.size) { this._log.verbose(`Task ${taskName} for project ${this._project.getName()} requires dependencies`); - return true; } - return false; - }); - } - - requiresBuild() { - // TODO: Decide based on build config and manifest content - return !this._project.hasBuildManifest(); - } - - getBuildMetadata() { - if (this._project.hasBuildManifest()) { - const buildManifest = this._project.getBuildManifest(); - const timeDiff = (new Date().getTime() - new Date(buildManifest.timestamp).getTime()); - - // TODO: Format age properly via a new @ui5/logger util module - return { - timestamp: buildManifest.timestamp, - age: timeDiff / 1000 + " seconds" - }; - } else { - return null; - } + for (const depName of this._tasks[taskName].requiredDependencies) { + requiredDependencies.add(depName); + } + return requiredDependencies; + }, new Set()); } /** @@ -193,18 +179,18 @@ class TaskRunner { `It has already been scheduled for execution`); } - const task = async ({workspace, dependencies}, log) => { + const task = async (log) => { options.projectName = this._project.getName(); options.projectNamespace = this._project.getNamespace(); const params = { - workspace, + workspace: this._project.getWorkspace(), taskUtil: this._taskUtil, options }; if (requiresDependencies) { - params.dependencies = dependencies; + params.dependencies = this._allDependenciesReader; } if (!taskFunction) { @@ -214,138 +200,211 @@ class TaskRunner { }; this._tasks[taskName] = { task, - requiresDependencies + requiredDependencies: requiresDependencies ? this._directDependencies : new Set() }; this._taskExecutionOrder.push(taskName); } /** - * Adds custom tasks to execute * * @private - * @param {object} parameters - * @param {object} parameters.graph - * @param {object} parameters.project - * @param {object} parameters.taskUtil */ - _addCustomTasks({graph, project, taskUtil}) { - const projectCustomTasks = project.getCustomTasks(); + async _addCustomTasks() { + const projectCustomTasks = this._project.getCustomTasks(); if (!projectCustomTasks || projectCustomTasks.length === 0) { return; // No custom tasks defined } for (let i = 0; i < projectCustomTasks.length; i++) { - const taskDef = projectCustomTasks[i]; - if (!taskDef.name) { - throw new Error(`Missing name for custom task in configuration of project ${project.getName()}`); - } - if (taskDef.beforeTask && taskDef.afterTask) { - throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + - `defines both "beforeTask" and "afterTask" parameters. Only one must be defined.`); - } - if (this._taskExecutionOrder.length && !taskDef.beforeTask && !taskDef.afterTask) { - // Iff there are tasks configured, beforeTask or afterTask must be given - throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + - `defines neither a "beforeTask" nor an "afterTask" parameter. One must be defined.`); + // Add tasks one-by-one to keep order as defined in project configuration + await this._addCustomTask(projectCustomTasks[i]); + } + } + /** + * Adds custom tasks to execute + * + * @private + * @param {object} taskDef + */ + async _addCustomTask(taskDef) { + const project = this._project; + const graph = this._graph; + const taskUtil = this._taskUtil; + + if (!taskDef.name) { + throw new Error(`Missing name for custom task in configuration of project ${project.getName()}`); + } + if (taskDef.beforeTask && taskDef.afterTask) { + throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + + `defines both "beforeTask" and "afterTask" parameters. Only one must be defined.`); + } + if (this._taskExecutionOrder.length && !taskDef.beforeTask && !taskDef.afterTask) { + // Iff there are tasks configured, beforeTask or afterTask must be given + throw new Error(`Custom task definition ${taskDef.name} of project ${project.getName()} ` + + `defines neither a "beforeTask" nor an "afterTask" parameter. One must be defined.`); + } + const standardTasks = this._taskRepository.getAllTaskNames(); + if (standardTasks.includes(taskDef.name)) { + throw new Error( + `Custom task configuration of project ${project.getName()} ` + + `references standard task ${taskDef.name}. Only custom tasks must be provided here.`); + } + + let newTaskName = taskDef.name; + if (this._tasks[newTaskName]) { + // Task is already known + // => add a suffix to allow for multiple configurations of the same task + let suffixCounter = 1; + while (this._tasks[newTaskName]) { + suffixCounter++; // Start at 2 + newTaskName = `${taskDef.name}--${suffixCounter}`; } - const standardTasks = this._taskRepository.getAllTaskNames(); - if (standardTasks.includes(taskDef.name)) { - throw new Error( - `Custom task configuration of project ${project.getName()} ` + - `references standard task ${taskDef.name}. Only custom tasks must be provided here.`); + } + const task = graph.getExtension(taskDef.name); + if (!task) { + throw new Error( + `Could not find custom task ${taskDef.name}, referenced by project ${project.getName()} ` + + `in project graph with root node ${graph.getRoot().getName()}`); + } + + // Tasks can provide an optional callback to tell build process which dependencies they require + const requiredDependenciesCallback = await task.getRequiredDependenciesCallback(); + const specVersion = task.getSpecVersion(); + let requiredDependencies; + if (!requiredDependenciesCallback) { + if (specVersion.gte("3.0")) { + // Default for new spec versions: Provide no dependencies if no callback is provided + this._log.verbose( + `Custom task ${task.getName()} of project ${this._project.getName()} ` + + `does not provide a callback for determining its required dependencies. ` + + `Defaulting to not providing any dependencies to the task`); + requiredDependencies = new Set(); + } else { + // Default for old spec versions: Assume all dependencies are required + requiredDependencies = this._directDependencies; } + } else { + const dependencyDeterminationParams = { + availableDependencies: new Set(this._directDependencies) + }; - let newTaskName = taskDef.name; - if (this._tasks[newTaskName]) { - // Task is already known - // => add a suffix to allow for multiple configurations of the same task - let suffixCounter = 1; - while (this._tasks[newTaskName]) { - suffixCounter++; // Start at 2 - newTaskName = `${taskDef.name}--${suffixCounter}`; - } + if (specVersion.gte("3.0")) { + // Add getProjects, getDependencies and options to parameters + const taskUtilInterface = taskUtil.getInterface(specVersion); + dependencyDeterminationParams.getProject = + taskUtilInterface.getProject.bind(taskUtilInterface); + dependencyDeterminationParams.getDependencies = + taskUtilInterface.getDependencies.bind(taskUtilInterface); + dependencyDeterminationParams.options = { + projectName: project.getName(), + projectNamespace: project.getNamespace(), + configuration: taskDef.configuration, + taskName: newTaskName + }; } - const task = graph.getExtension(taskDef.name); - if (!task) { + requiredDependencies = await requiredDependenciesCallback(dependencyDeterminationParams); + if (!(requiredDependencies instanceof Set)) { throw new Error( - `Could not find custom task ${taskDef.name}, referenced by project ${project.getName()} ` + - `in project graph with root node ${graph.getRoot().getName()}`); + `'determineRequiredDependencies' callback function of custom task ${task.getName()} of ` + + `project ${project.getName()} must resolve with Set.`); } - // TODO: Create callback for custom tasks to configure "requiresDependencies" and "enabled" - // Input: task "options" and build mode ("standalone", "preload", etc.) - const requiresDependencies = true; // Default to true for old spec versions - const execTask = async function({workspace, dependencies}, log) { - /* Custom Task Interface - Parameters: - {Object} parameters Parameters - {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files - {@ui5/fs/AbstractReader} parameters.dependencies - Reader or Collection to read dependency files - {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil Specification Version-dependent - interface of a [TaskUtil]{@link @ui5/project/build/helpers/TaskUtil} instance - {@ui5/logger/GroupLogger} [parameters.log] Logger instance to use by the custom task. - This parameter is only available to custom task extensions defining - Specification Version 3.0 and above. - {Object} parameters.options Options - {string} parameters.options.projectName Project name - {string|null} parameters.options.projectNamespace Project namespace if available - {string} [parameters.options.taskName] Runtime name of the task. - If a task is executed multiple times, a suffix is added to distinguish the executions. - This attribute is only available to custom task extensions defining - Specification Version 3.0 and above. - {string} [parameters.options.configuration] Task configuration if given in ui5.yaml - Returns: - {Promise} Promise resolving with undefined once data has been written - */ - const params = { - workspace, - options: { - projectName: project.getName(), - projectNamespace: project.getNamespace(), - configuration: taskDef.configuration, - } - }; - - if (requiresDependencies) { - params.dependencies = dependencies; + requiredDependencies.forEach((depName) => { + // Returned requiredDependencies must be a subset of all direct dependencies of the project + if (!this._directDependencies.has(depName)) { + throw new Error( + `'determineRequiredDependencies' callback function of custom task ${task.getName()} ` + + `of project ${project.getName()} must resolve with a subset of the the direct ` + + `dependencies of the project. ${depName} is not a direct dependency of the project.`); } + }); + } - const specVersion = task.getSpecVersion(); - if (specVersion.gte("3.0")) { - params.options.taskName = newTaskName; - params.log = logger.getGroupLogger(`builder:custom-task:${newTaskName}`); - } + this._tasks[newTaskName] = { + task: this._createCustomTaskWrapper({ + task, + project, + taskUtil, + taskName: newTaskName, + taskConfiguration: taskDef.configuration, + getDependenciesReader: () => { + // Create the dependencies reader on-demand + return this._createDependencyReader(requiredDependencies); + }, + }), + requiredDependencies + }; - const taskUtilInterface = taskUtil.getInterface(specVersion); - // Interface is undefined if specVersion does not support taskUtil - if (taskUtilInterface) { - params.taskUtil = taskUtilInterface; + if (this._taskExecutionOrder.length) { + // There is at least one task configured. Use before- and afterTask to add the custom task + const refTaskName = taskDef.beforeTask || taskDef.afterTask; + let refTaskIdx = this._taskExecutionOrder.indexOf(refTaskName); + if (refTaskIdx === -1) { + throw new Error(`Could not find task ${refTaskName}, referenced by custom task ${newTaskName}, ` + + `to be scheduled for project ${project.getName()}`); + } + if (taskDef.afterTask) { + // Insert after index of referenced task + refTaskIdx++; + } + this._taskExecutionOrder.splice(refTaskIdx, 0, newTaskName); + } else { + // There is no task configured so far. Just add the custom task + this._taskExecutionOrder.push(newTaskName); + } + } + + _createCustomTaskWrapper({ + project, taskUtil, getDependenciesReader, task, taskName, taskConfiguration + }) { + return async function(log) { + /* Custom Task Interface + Parameters: + {Object} parameters Parameters + {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files + {@ui5/fs/AbstractReader} parameters.dependencies + Reader or Collection to read dependency files + {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil Specification Version-dependent + interface of a [TaskUtil]{@link @ui5/project/build/helpers/TaskUtil} instance + {@ui5/logger/GroupLogger} [parameters.log] Logger instance to use by the custom task. + This parameter is only available to custom task extensions defining + Specification Version 3.0 and above. + {Object} parameters.options Options + {string} parameters.options.projectName Project name + {string|null} parameters.options.projectNamespace Project namespace if available + {string} [parameters.options.taskName] Runtime name of the task. + If a task is executed multiple times, a suffix is added to distinguish the executions. + This attribute is only available to custom task extensions defining + Specification Version 3.0 and above. + {string} [parameters.options.configuration] Task configuration if given in ui5.yaml + Returns: + {Promise} Promise resolving with undefined once data has been written + */ + const params = { + workspace: project.getWorkspace(), + options: { + projectName: project.getName(), + projectNamespace: project.getNamespace(), + configuration: taskConfiguration, } - return (await task.getTask())(params); }; + const specVersion = task.getSpecVersion(); + const taskUtilInterface = taskUtil.getInterface(specVersion); + // Interface is undefined if specVersion does not support taskUtil + if (taskUtilInterface) { + params.taskUtil = taskUtilInterface; + } + const taskFunction = await task.getTask(); - this._tasks[newTaskName] = { - task: execTask, - requiresDependencies - }; + if (specVersion.gte("3.0")) { + params.options.taskName = taskName; + params.log = logger.getGroupLogger(`builder:custom-task:${taskName}`); + } - if (this._taskExecutionOrder.length) { - // There is at least one task configured. Use before- and afterTask to add the custom task - const refTaskName = taskDef.beforeTask || taskDef.afterTask; - let refTaskIdx = this._taskExecutionOrder.indexOf(refTaskName); - if (refTaskIdx === -1) { - throw new Error(`Could not find task ${refTaskName}, referenced by custom task ${newTaskName}, ` + - `to be scheduled for project ${project.getName()}`); - } - if (taskDef.afterTask) { - // Insert after index of referenced task - refTaskIdx++; - } - this._taskExecutionOrder.splice(refTaskIdx, 0, newTaskName); - } else { - // There is no task configured so far. Just add the custom task - this._taskExecutionOrder.push(newTaskName); + const dependencies = await getDependenciesReader(); + if (dependencies) { + params.dependencies = dependencies; } - } + return taskFunction(params); + }; } /** @@ -366,6 +425,42 @@ class TaskRunner { this._taskLog.perf(`Task ${taskName} finished in ${Math.round((performance.now() - this._taskStart))} ms`); } } + + async _createDependencyReader(requiredDirectDependencies) { + if (requiredDirectDependencies.size === 0) { + // No dependencies are required, so no reader will be provided + return null; + } + if (requiredDirectDependencies.size === this._directDependencies.size) { + // Shortcut: If all direct dependencies are required, just return the already created reader + return this._allDependenciesReader; + } + const rootProject = this._project; + + // Collect readers for all requested dependencies + const readers = []; + + // Add transitive dependencies to set of required dependencies + const requiredDependencies = new Set(requiredDirectDependencies); + for (const projectName of requiredDirectDependencies) { + this._graph.getAllDependencies(projectName).forEach((depName) => { + requiredDependencies.add(depName); + }); + } + + // Collect readers for all (transitive) dependencies + await this._graph.traverseBreadthFirst(rootProject.getName(), async ({project}) => { + if (requiredDependencies.has(project.getName())) { + readers.push(project.getReader()); + } + }); + + // Create a reader collection for that + return createReaderCollection({ + name: `Reduced dependency reader collection of project ${rootProject.getName()}`, + readers + }); + } } export default TaskRunner; diff --git a/packages/project/lib/build/helpers/BuildContext.js b/packages/project/lib/build/helpers/BuildContext.js index 7e31bdec2b4..f861d739acf 100644 --- a/packages/project/lib/build/helpers/BuildContext.js +++ b/packages/project/lib/build/helpers/BuildContext.js @@ -1,5 +1,4 @@ import ProjectBuildContext from "./ProjectBuildContext.js"; -import TaskRunner from "../TaskRunner.js"; /** * Context of a build process @@ -66,21 +65,12 @@ class BuildContext { return this._graph; } - async createProjectContext({project, log}) { + createProjectContext({project, log}) { const projectBuildContext = new ProjectBuildContext({ buildContext: this, project, log }); - const taskRunner = await TaskRunner.create({ - graph: this.getGraph(), - project, - taskUtil: projectBuildContext.getTaskUtil(), - taskRepository: this.getTaskRepository(), - parentLogger: log, - buildConfig: this.getBuildConfig() - }); - projectBuildContext.setTaskRunner(taskRunner); this._projectBuildContexts.push(projectBuildContext); return projectBuildContext; } diff --git a/packages/project/lib/build/helpers/ProjectBuildContext.js b/packages/project/lib/build/helpers/ProjectBuildContext.js index 25cc3c77095..fe241183f81 100644 --- a/packages/project/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/lib/build/helpers/ProjectBuildContext.js @@ -1,5 +1,6 @@ import ResourceTagCollection from "@ui5/fs/internal/ResourceTagCollection"; import TaskUtil from "./TaskUtil.js"; +import TaskRunner from "../TaskRunner.js"; /** * Build context of a single project. Always part of an overall @@ -104,11 +105,41 @@ class ProjectBuildContext { } getTaskRunner() { + if (!this._taskRunner) { + this._taskRunner = new TaskRunner({ + project: this._project, + parentLogger: this._log, + taskUtil: this.getTaskUtil(), + graph: this._buildContext.getGraph(), + taskRepository: this._buildContext.getTaskRepository(), + buildConfig: this._buildContext.getBuildConfig() + }); + } return this._taskRunner; } - setTaskRunner(taskRunner) { - this._taskRunner = taskRunner; + /** + * Determine whether the project has to be built or is already built + * (typically indicated by the presence of a build manifest) + * + * @returns {boolean} True if the project needs to be built + */ + requiresBuild() { + return !this._project.getBuildManifest(); + } + + getBuildMetadata() { + const buildManifest = this._project.getBuildManifest(); + if (!buildManifest) { + return null; + } + const timeDiff = (new Date().getTime() - new Date(buildManifest.timestamp).getTime()); + + // TODO: Format age properly via a new @ui5/logger util module + return { + timestamp: buildManifest.timestamp, + age: timeDiff / 1000 + " seconds" + }; } } diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index 864f0d60739..38943fac3a1 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -200,20 +200,10 @@ class Project extends Specification { * Get the project's buildManifest configuration * * @private - * @returns {boolean} BuildManifest configuration - */ - hasBuildManifest() { - return !!this._buildManifest; - } - - /** - * Get the project's buildManifest configuration - * - * @private - * @returns {object} BuildManifest configuration + * @returns {object|null} BuildManifest configuration or null if none is available */ getBuildManifest() { - return this._buildManifest || {}; + return this._buildManifest || null; } /* === Resource Access === */ diff --git a/packages/project/lib/specifications/types/extensions/Task.js b/packages/project/lib/specifications/types/extensions/Task.js index 32258295e3e..e6457c26702 100644 --- a/packages/project/lib/specifications/types/extensions/Task.js +++ b/packages/project/lib/specifications/types/extensions/Task.js @@ -21,11 +21,28 @@ class Task extends Extension { * @public */ async getTask() { - const taskPath = path.join(this.getPath(), this._config.task.path); - const {default: task} = await import(pathToFileURL(taskPath)); - return task; + return (await this._getImplementation()).task; } + + /** + * @public + */ + async getRequiredDependenciesCallback() { + return (await this._getImplementation()).determineRequiredDependencies; + } + /* === Internals === */ + /** + * @private + */ + async _getImplementation() { + const taskPath = path.join(this.getPath(), this._config.task.path); + const {default: task, determineRequiredDependencies} = await import(pathToFileURL(taskPath)); + return { + task, determineRequiredDependencies + }; + } + /** * @private */ diff --git a/packages/project/test/fixtures/extension.a.esm/lib/extensionModule.js b/packages/project/test/fixtures/extension.a.esm/lib/extensionModule.js index ba4ca865b9e..c7a5c0758dd 100644 --- a/packages/project/test/fixtures/extension.a.esm/lib/extensionModule.js +++ b/packages/project/test/fixtures/extension.a.esm/lib/extensionModule.js @@ -1 +1,2 @@ -export default "extension module"; +export default () => "extension module"; +export function determineRequiredDependencies () { return "required dependencies function" }; diff --git a/packages/project/test/fixtures/extension.a/lib/extensionModule.js b/packages/project/test/fixtures/extension.a/lib/extensionModule.js index 48a07dca85a..44b74979801 100644 --- a/packages/project/test/fixtures/extension.a/lib/extensionModule.js +++ b/packages/project/test/fixtures/extension.a/lib/extensionModule.js @@ -1 +1,2 @@ -module.exports = "extension module"; +module.exports = () => "extension module"; +module.exports.determineRequiredDependencies = () => "required dependencies function"; diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 3bca2827040..f77e8c652e3 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -99,19 +99,21 @@ test("build", async (t) => { const getProjectFilterStub = sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); const requiresBuildStub = sinon.stub().returns(true); + const runTasksStub = sinon.stub().resolves(); const projectBuildContextMock = { getTaskRunner: () => { return { - requiresBuild: requiresBuildStub + runTasks: runTasksStub, }; }, + requiresBuild: requiresBuildStub, getProject: sinon.stub().returns(getMockProject("library")) }; const createRequiredBuildContextsStub = sinon.stub(builder, "_createRequiredBuildContexts") .resolves(new Map().set("project.a", projectBuildContextMock)); const registerCleanupSigHooksStub = sinon.stub(builder, "_registerCleanupSigHooks").returns("cleanup sig hooks"); - const buildProjectStub = sinon.stub(builder, "_buildProject").resolves(); + const writeResultsStub = sinon.stub(builder, "_writeResults").resolves(); const deregisterCleanupSigHooksStub = sinon.stub(builder, "_deregisterCleanupSigHooks"); const executeCleanupTasksStub = sinon.stub(builder, "_executeCleanupTasks").resolves(); @@ -134,12 +136,10 @@ test("build", async (t) => { "project.a", "project.b", "project.c" ], "_createRequiredBuildContexts got called with correct arguments"); - t.is(requiresBuildStub.callCount, 1, "TaskRunner#requiresBuild got called twice"); + t.is(requiresBuildStub.callCount, 1, "ProjectBuildContext#requiresBuild got called once"); t.is(registerCleanupSigHooksStub.callCount, 1, "_registerCleanupSigHooksStub got called once"); - t.is(buildProjectStub.callCount, 1, "_buildProject got called once"); - t.is(buildProjectStub.getCall(0).args[0], projectBuildContextMock, - "_buildProject got called with correct arguments"); + t.is(runTasksStub.callCount, 1, "TaskRunner#runTasks got called once"); t.is(writeResultsStub.callCount, 1, "_writeResults got called once"); t.is(writeResultsStub.getCall(0).args[0], projectBuildContextMock, @@ -193,10 +193,12 @@ test("build: Failure", async (t) => { sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); const requiresBuildStub = sinon.stub().returns(true); + const runTasksStub = sinon.stub().rejects(new Error("Some Error")); const projectBuildContextMock = { + requiresBuild: requiresBuildStub, getTaskRunner: () => { return { - requiresBuild: requiresBuildStub + runTasks: runTasksStub }; }, getProject: sinon.stub().returns(getMockProject("library")) @@ -205,7 +207,6 @@ test("build: Failure", async (t) => { .resolves(new Map().set("project.a", projectBuildContextMock)); sinon.stub(builder, "_registerCleanupSigHooks").returns("cleanup sig hooks"); - sinon.stub(builder, "_buildProject").rejects(new Error("Some Error")); const writeResultsStub = sinon.stub(builder, "_writeResults").resolves(); const deregisterCleanupSigHooksStub = sinon.stub(builder, "_deregisterCleanupSigHooks"); const executeCleanupTasksStub = sinon.stub(builder, "_executeCleanupTasks").resolves(); @@ -240,29 +241,33 @@ test.serial("build: Multiple projects", async (t) => { timestamp: "2022-07-28T12:00:00.000Z", age: "xx days" }); + const runTasksStub = sinon.stub().resolves(); const projectBuildContextMockA = { getTaskRunner: () => { return { - requiresBuild: requiresBuildAStub + runTasks: runTasksStub }; }, + requiresBuild: requiresBuildAStub, getProject: sinon.stub().returns(getMockProject("library", "a")) }; const projectBuildContextMockB = { getTaskRunner: () => { return { - requiresBuild: requiresBuildBStub, - getBuildMetadata: getBuildMetadataStub + runTasks: runTasksStub }; }, + getBuildMetadata: getBuildMetadataStub, + requiresBuild: requiresBuildBStub, getProject: sinon.stub().returns(getMockProject("library", "b")) }; const projectBuildContextMockC = { getTaskRunner: () => { return { - requiresBuild: requiresBuildCStub + runTasks: runTasksStub }; }, + requiresBuild: requiresBuildCStub, getProject: sinon.stub().returns(getMockProject("library", "c")) }; const createRequiredBuildContextsStub = sinon.stub(builder, "_createRequiredBuildContexts") @@ -273,7 +278,6 @@ test.serial("build: Multiple projects", async (t) => { ); const registerCleanupSigHooksStub = sinon.stub(builder, "_registerCleanupSigHooks").returns("cleanup sig hooks"); - const buildProjectStub = sinon.stub(builder, "_buildProject").resolves(); const writeResultsStub = sinon.stub(builder, "_writeResults").resolves(); const deregisterCleanupSigHooksStub = sinon.stub(builder, "_deregisterCleanupSigHooks"); const executeCleanupTasksStub = sinon.stub(builder, "_executeCleanupTasks").resolves(); @@ -302,11 +306,7 @@ test.serial("build: Multiple projects", async (t) => { t.is(requiresBuildCStub.callCount, 1, "TaskRunner#requiresBuild got called once times for library.c"); t.is(registerCleanupSigHooksStub.callCount, 1, "_registerCleanupSigHooksStub got called once"); - t.is(buildProjectStub.callCount, 2, "_buildProject got called three times"); // library.b does not require a build - t.is(buildProjectStub.getCall(0).args[0], projectBuildContextMockA, - "_buildProject got called with correct arguments"); - t.is(buildProjectStub.getCall(1).args[0], projectBuildContextMockC, - "_buildProject got called with correct arguments"); + t.is(runTasksStub.callCount, 2, "TaskRunner#runTasks got called twice"); // library.b does not require a build t.is(writeResultsStub.callCount, 2, "_writeResults got called twice"); // library.a has not been requested t.is(writeResultsStub.getCall(0).args[0], projectBuildContextMockB, @@ -330,12 +330,15 @@ test("_createRequiredBuildContexts", async (t) => { const builder = new ProjectBuilder(graph, taskRepository); const requiresBuildStub = sinon.stub().returns(true); - const requiresDependenciesStub = sinon.stub().returns(false).onFirstCall().returns(true); + const getRequiredDependenciesStub = sinon.stub() + .returns(new Set()) + .onFirstCall().returns(new Set(["project.b"])); // required dependency of project.a + const projectBuildContextMock = { + requiresBuild: requiresBuildStub, getTaskRunner: () => { return { - requiresBuild: requiresBuildStub, - requiresDependencies: requiresDependenciesStub + getRequiredDependencies: getRequiredDependenciesStub }; } }; @@ -343,15 +346,15 @@ test("_createRequiredBuildContexts", async (t) => { .returns(projectBuildContextMock); const projectBuildContexts = await builder._createRequiredBuildContexts(["project.a", "project.c"]); + t.is(requiresBuildStub.callCount, 3, "TaskRunner#requiresBuild got called three times"); + t.is(getRequiredDependenciesStub.callCount, 3, "TaskRunner#getRequiredDependencies got called three times"); + t.deepEqual(Object.fromEntries(projectBuildContexts), { "project.a": projectBuildContextMock, "project.b": projectBuildContextMock, // is a required dependency of project.a "project.c": projectBuildContextMock, }, "Returned expected project build contexts"); - t.is(requiresBuildStub.callCount, 3, "TaskRunner#requiresBuild got called three times"); - t.is(requiresDependenciesStub.callCount, 3, "TaskRunner#requiresDependencies got called three times"); - t.is(createProjectContextStub.callCount, 3, "BuildContext#createProjectContextStub got called three times"); t.is(createProjectContextStub.getCall(0).args[0].project.getName(), "project.a", "First call to BuildContext#createProjectContextStub with expected project"); @@ -430,76 +433,6 @@ test.serial("_getProjectFilter with explicit include/exclude", async (t) => { t.false(filterProject("project.e"), "project.e is not allowed"); }); -test.serial("_buildProject", async (t) => { - const {graph, taskRepository, sinon} = t.context; - const readerCollectionStub = sinon.stub().returns("dependencies"); - const ProjectBuilder = await esmock("../../../lib/build/ProjectBuilder.js", { - "@ui5/fs/resourceFactory": { - createReaderCollection: readerCollectionStub - } - }); - - const builder = new ProjectBuilder(graph, taskRepository); - - - const runTasksStub = sinon.stub().resolves(); - await builder._buildProject({ - getProject: () => getMockProject("library", "a"), - getTaskRunner: () => { - return { - runTasks: runTasksStub - }; - } - }); - - t.is(readerCollectionStub.callCount, 1, "One reader collection created"); - t.deepEqual(readerCollectionStub.getCall(0).args[0], { - name: "Dependency reader collection for project project.a", - readers: ["reader"] - }, "Reader collection got created with expected arguments"); - - t.is(runTasksStub.callCount, 1, "TaskRunner#runTasks got called once"); - t.deepEqual(runTasksStub.getCall(0).args[0], { - workspace: "workspace", - dependencies: "dependencies", - }, "TaskRunner#runTasks got called with expected arguments"); -}); - -test.serial("_buildProject: Requested project is not added to readers", async (t) => { - const {graph, taskRepository, sinon} = t.context; - const readerCollectionStub = sinon.stub().returns("dependencies"); - - const ProjectBuilder = await esmock("../../../lib/build/ProjectBuilder.js", { - "@ui5/fs/resourceFactory": { - createReaderCollection: readerCollectionStub - } - }); - - const builder = new ProjectBuilder(graph, taskRepository); - - const runTasksStub = sinon.stub().resolves(); - await builder._buildProject({ - getProject: () => getMockProject("library", "c"), - getTaskRunner: () => { - return { - runTasks: runTasksStub - }; - } - }); - - t.is(readerCollectionStub.callCount, 1, "One reader collection created"); - t.deepEqual(readerCollectionStub.getCall(0).args[0], { - name: "Dependency reader collection for project project.c", - readers: [] - }, "Reader collection got created with expected arguments"); - - t.is(runTasksStub.callCount, 1, "TaskRunner#runTasks got called once"); - t.deepEqual(runTasksStub.getCall(0).args[0], { - workspace: "workspace", - dependencies: "dependencies", - }, "TaskRunner#runTasks got called with expected arguments"); -}); - test("_writeResults", async (t) => { const {ProjectBuilder, sinon} = t.context; t.context.getRootTypeStub = sinon.stub().returns("library"); diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index d7410cdd9a6..53fb95496bc 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -2,6 +2,7 @@ import test from "ava"; import sinonGlobal from "sinon"; import esmock from "esmock"; import logger from "@ui5/logger"; +logger.setLevel("perf"); const parentLogger = logger.getGroupLogger("mygroup"); function noop() {} @@ -56,7 +57,8 @@ function getMockProject(type) { }], getCachebusterSignatureType: noop, getCustomTasks: () => [], - hasBuildManifest: () => false + hasBuildManifest: () => false, + getWorkspace: () => "workspace" }; } @@ -66,8 +68,11 @@ test.beforeEach(async (t) => { t.context.taskUtil = { isRootProject: sinon.stub().returns(true), getBuildOption: sinon.stub(), - getInterface: sinon.stub() + getProject: sinon.stub(), + getDependencies: sinon.stub().returns(["dep.a", "dep.b"]), + getInterface: sinon.stub(), }; + t.context.taskUtil.getInterface.returns(t.context.taskUtil); t.context.taskRepository = { getTask: sinon.stub().callsFake(async (taskName) => { @@ -76,21 +81,41 @@ test.beforeEach(async (t) => { getAllTaskNames: sinon.stub().returns(["replaceVersion"]) }; + t.context.customTaskSpecVersionGteStub = sinon.stub().returns(true); + t.context.getRequiredDependenciesCallbackStub = sinon.stub().resolves(null); + t.context.customTask = { + getName: () => "custom task name", + getSpecVersion: () => { + return { + gte: t.context.customTaskSpecVersionGteStub + }; + }, + getRequiredDependenciesCallback: t.context.getRequiredDependenciesCallbackStub, + }; + t.context.graph = { getRoot: () => { return { getName: () => "graph-root" }; }, - getExtension: sinon.stub().returns("a custom task") + getExtension: sinon.stub().returns(t.context.customTask), + traverseBreadthFirst: sinon.stub(), + getAllDependencies: sinon.stub().returns(["dep.a", "dep.b", "dep.c"]) }; t.context.logger = { getGroupLogger: sinon.stub().returns("group logger") }; + t.context.resourceFactory = { + createReaderCollection: sinon.stub() + .returns("reader collection") + }; + t.context.TaskRunner = await esmock("../../../lib/build/TaskRunner.js", { - "@ui5/logger": t.context.logger + "@ui5/logger": t.context.logger, + "@ui5/fs/resourceFactory": t.context.resourceFactory }); }); @@ -98,11 +123,82 @@ test.afterEach.always((t) => { t.context.sinon.restore(); }); -test("Project of type 'application'", async (t) => { +test("Missing parameters", (t) => { + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + t.throws(() => { + new TaskRunner({ + graph, + taskUtil, + taskRepository, + parentLogger, + buildConfig + }); + }, { + message: "One or more mandatory parameters not provided" + }, "Threw with expected error message for missing project parameter"); + t.throws(() => { + new TaskRunner({ + project: getMockProject("application"), + taskUtil, + taskRepository, + parentLogger, + buildConfig + }); + }, { + message: "One or more mandatory parameters not provided" + }, "Threw with expected error message for missing graph parameter"); + t.throws(() => { + new TaskRunner({ + project: getMockProject("application"), + graph, + taskRepository, + parentLogger, + buildConfig + }); + }, { + message: "One or more mandatory parameters not provided" + }, "Threw with expected error message for missing taskUtil parameter"); + t.throws(() => { + new TaskRunner({ + project: getMockProject("application"), + graph, + taskUtil, + parentLogger, + buildConfig + }); + }, { + message: "One or more mandatory parameters not provided" + }, "Threw with expected error message for missing taskRepository parameter"); + t.throws(() => { + new TaskRunner({ + project: getMockProject("application"), + graph, + taskUtil, + taskRepository, + buildConfig + }); + }, { + message: "One or more mandatory parameters not provided" + }, "Threw with expected error message for missing parentLogger parameter"); + t.throws(() => { + new TaskRunner({ + project: getMockProject("application"), + graph, + taskUtil, + taskRepository, + parentLogger + }); + }, { + message: "One or more mandatory parameters not provided" + }, "Threw with expected error message for missing buildConfig parameter"); +}); + +test("_initTasks: Project of type 'application'", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project: getMockProject("application"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", "replaceCopyright", @@ -120,11 +216,12 @@ test("Project of type 'application'", async (t) => { ], "Correct standard tasks"); }); -test("Project of type 'library'", async (t) => { +test("_initTasks: Project of type 'library'", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project: getMockProject("library"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", @@ -144,11 +241,12 @@ test("Project of type 'library'", async (t) => { ], "Correct standard tasks"); }); -test("Project of type 'theme-library'", async (t) => { +test("_initTasks: Project of type 'theme-library'", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project: getMockProject("theme-library"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ "replaceCopyright", @@ -159,36 +257,37 @@ test("Project of type 'theme-library'", async (t) => { ], "Correct standard tasks"); }); -test("Project of type 'module'", async (t) => { +test("_initTasks: Project of type 'module'", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project: getMockProject("module"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [], "Correct standard tasks"); }); -test("Unknown project type", async (t) => { +test("_initTasks: Unknown project type", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; - const err = await t.throwsAsync(async () => { - await TaskRunner.create({ - project: getMockProject("pony"), graph, taskUtil, taskRepository, parentLogger, buildConfig - }); + const taskRunner = new TaskRunner({ + project: getMockProject("pony"), graph, taskUtil, taskRepository, parentLogger, buildConfig }); + const err = await t.throwsAsync(taskRunner._initTasks()); t.is(err.message, "Unknown project type pony", "Threw with expected error message"); }); -test("Custom tasks", async (t) => { +test("_initTasks: Custom tasks", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"}, {name: "myOtherTask", beforeTask: "replaceVersion"} ]; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", "replaceCopyright", @@ -208,33 +307,35 @@ test("Custom tasks", async (t) => { ], "Custom tasks are inserted correctly"); }); -test("Custom tasks with no standard tasks", async (t) => { +test("_initTasks: Custom tasks with no standard tasks", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"}, {name: "myOtherTask", beforeTask: "myTask"} ]; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ "myOtherTask", "myTask", ], "ApplicationBuilder is still instantiated with standard tasks"); }); -test("Custom tasks with no standard tasks and second task defining no before-/afterTask", async (t) => { +test("_initTasks: Custom tasks with no standard tasks and second task defining no before-/afterTask", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"}, {name: "myOtherTask"} ]; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); const err = await t.throwsAsync(async () => { - await TaskRunner.create({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig - }); + await taskRunner._initTasks(); }); t.is(err.message, `Custom task definition myOtherTask of project project.b defines neither a ` + @@ -242,16 +343,17 @@ test("Custom tasks with no standard tasks and second task defining no before-/af "Threw with expected error message"); }); -test("Custom tasks with both, before- and afterTask reference", async (t) => { +test("_initTasks: Custom tasks with both, before- and afterTask reference", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "minify", afterTask: "replaceVersion"} ]; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); const err = await t.throwsAsync(async () => { - await TaskRunner.create({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig - }); + await taskRunner._initTasks(); }); t.is(err.message, `Custom task definition myTask of project project.b defines both ` + @@ -259,16 +361,17 @@ test("Custom tasks with both, before- and afterTask reference", async (t) => { "Threw with expected error message"); }); -test("Custom tasks with no before-/afterTask reference", async (t) => { +test("_initTasks: Custom tasks with no before-/afterTask reference", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask"} ]; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); const err = await t.throwsAsync(async () => { - await TaskRunner.create({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig - }); + await taskRunner._initTasks(); }); t.is(err.message, `Custom task definition myTask of project project.b defines neither a ` + @@ -276,32 +379,34 @@ test("Custom tasks with no before-/afterTask reference", async (t) => { "Threw with expected error message"); }); -test("Custom tasks without name", async (t) => { +test("_initTasks: Custom tasks without name", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: ""} ]; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); const err = await t.throwsAsync(async () => { - await TaskRunner.create({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig - }); + await taskRunner._initTasks(); }); t.is(err.message, `Missing name for custom task in configuration of project project.b`, "Threw with expected error message"); }); -test("Custom task with name of standard tasks", async (t) => { +test("_initTasks: Custom task with name of standard tasks", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "replaceVersion", afterTask: "minify"} ]; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); const err = await t.throwsAsync(async () => { - await TaskRunner.create({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig - }); + await taskRunner._initTasks(); }); t.is(err.message, "Custom task configuration of project project.b references standard task replaceVersion. " + @@ -309,7 +414,7 @@ test("Custom task with name of standard tasks", async (t) => { "Threw with expected error message"); }); -test("Multiple custom tasks with same name", async (t) => { +test("_initTasks: Multiple custom tasks with same name", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ @@ -317,9 +422,10 @@ test("Multiple custom tasks with same name", async (t) => { {name: "myTask", afterTask: "myTask"}, {name: "myTask", afterTask: "minify"} ]; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", "replaceCopyright", @@ -340,16 +446,17 @@ test("Multiple custom tasks with same name", async (t) => { ], "Custom tasks are inserted correctly"); }); -test("Custom tasks with unknown beforeTask", async (t) => { +test("_initTasks: Custom tasks with unknown beforeTask", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "unknownTask"} ]; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); const err = await t.throwsAsync(async () => { - await TaskRunner.create({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig - }); + await taskRunner._initTasks(); }); t.is(err.message, "Could not find task unknownTask, referenced by custom task myTask, " + @@ -357,16 +464,17 @@ test("Custom tasks with unknown beforeTask", async (t) => { "Threw with expected error message"); }); -test("Custom tasks with unknown afterTask", async (t) => { +test("_initTasks: Custom tasks with unknown afterTask", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "unknownTask"} ]; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); const err = await t.throwsAsync(async () => { - await TaskRunner.create({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig - }); + await taskRunner._initTasks(); }); t.is(err.message, "Could not find task unknownTask, referenced by custom task myTask, " + @@ -374,17 +482,18 @@ test("Custom tasks with unknown afterTask", async (t) => { "Threw with expected error message"); }); -test("Custom tasks is unknown", async (t) => { +test("_initTasks: Custom tasks is unknown", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; graph.getExtension.returns(undefined); const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"} ]; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); const err = await t.throwsAsync(async () => { - await TaskRunner.create({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig - }); + await taskRunner._initTasks(); }); t.is(err.message, "Could not find custom task myTask, referenced by project project.b in project " + @@ -392,6 +501,52 @@ test("Custom tasks is unknown", async (t) => { "Threw with expected error message"); }); +test("_initTasks: Create dependencies reader for all dependencies", async (t) => { + const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; + const project = getMockProject("application"); + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); + await taskRunner._initTasks(); + t.is(graph.traverseBreadthFirst.callCount, 1, "ProjectGraph#traverseBreadthFirst called once"); + t.is(graph.traverseBreadthFirst.getCall(0).args[0], "project.b", + "ProjectGraph#traverseBreadthFirst called with correct project name for start"); + const traversalCallback = graph.traverseBreadthFirst.getCall(0).args[1]; + + // Call with root project should be ignored + await traversalCallback({ + project: { + getName: () => "project.b", + getReader: () => "project.b reader", + } + }); + await traversalCallback({ + project: { + getName: () => "dep.a", + getReader: () => "dep.a reader", + } + }); + await traversalCallback({ + project: { + getName: () => "dep.b", + getReader: () => "dep.b reader", + } + }); + await traversalCallback({ + project: { + getName: () => "transitive.dep.a", + getReader: () => "transitive.dep.a reader", + } + }); + t.is(resourceFactory.createReaderCollection.callCount, 1, "createReaderCollection got called once"); + t.deepEqual(resourceFactory.createReaderCollection.getCall(0).args[0], { + name: "Dependency reader collection of project project.b", + readers: [ + "dep.a reader", "dep.b reader", "transitive.dep.a reader" + ] + }, "createReaderCollection got called with correct arguments"); +}); + test("Custom task is called correctly", async (t) => { const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStub = sinon.stub(); @@ -400,9 +555,12 @@ test("Custom task is called correctly", async (t) => { toString: () => "2.6", gte: specVersionGteStub }; + + const getRequiredDependenciesCallbackStub = sinon.stub().resolves(undefined); graph.getExtension.returns({ getTask: () => taskStub, - getSpecVersion: () => mockSpecVersion + getSpecVersion: () => mockSpecVersion, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub }); t.context.taskUtil.getInterface.returns("taskUtil interface"); const project = getMockProject("module"); @@ -410,20 +568,28 @@ test("Custom task is called correctly", async (t) => { {name: "myTask", configuration: "configuration"} ]; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); - t.true(taskRunner._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - await taskRunner._tasks["myTask"].task({ - workspace: "workspace", - dependencies: "dependencies" - }); + t.deepEqual(taskRunner._tasks["myTask"].requiredDependencies, new Set(["dep.a", "dep.b"]), + "Custom tasks requires all dependencies by default"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + await taskRunner._tasks["myTask"].task(); - t.is(specVersionGteStub.callCount, 1, "SpecificationVersion#gte got called once"); + t.is(specVersionGteStub.callCount, 2, "SpecificationVersion#gte got called twice"); t.is(specVersionGteStub.getCall(0).args[0], "3.0", - "SpecificationVersion#gte got called with correct arguments"); + "SpecificationVersion#gte got called with correct arguments on first call"); + t.is(specVersionGteStub.getCall(1).args[0], "3.0", + "SpecificationVersion#gte got called with correct arguments on second call"); + + t.is(createDependencyReaderStub.callCount, 1, "_createDependencyReader got called once"); + t.deepEqual(createDependencyReaderStub.getCall(0).args[0], + new Set(["dep.a", "dep.b"]), + "_createDependencyReader got called with correct arguments"); + t.is(taskStub.callCount, 1, "Task got called once"); t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); t.deepEqual(taskStub.getCall(0).args[0], { @@ -450,9 +616,11 @@ test("Custom task with legacy spec version", async (t) => { toString: () => "1.0", gte: specVersionGteStub }; + const getRequiredDependenciesCallbackStub = sinon.stub().resolves(undefined); graph.getExtension.returns({ getTask: () => taskStub, - getSpecVersion: () => mockSpecVersion + getSpecVersion: () => mockSpecVersion, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub }); t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion const project = getMockProject("module"); @@ -460,20 +628,95 @@ test("Custom task with legacy spec version", async (t) => { {name: "myTask", configuration: "configuration"} ]; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); - t.true(taskRunner._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - await taskRunner._tasks["myTask"].task({ + t.deepEqual(taskRunner._tasks["myTask"].requiredDependencies, new Set(["dep.a", "dep.b"]), + "Custom tasks requires all dependencies by default"); + + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + await taskRunner._tasks["myTask"].task(); + + t.is(specVersionGteStub.callCount, 2, "SpecificationVersion#gte got called twice"); + t.is(specVersionGteStub.getCall(0).args[0], "3.0", + "SpecificationVersion#gte got called with correct arguments on first call"); + t.is(specVersionGteStub.getCall(1).args[0], "3.0", + "SpecificationVersion#gte got called with correct arguments on second call"); + + t.is(createDependencyReaderStub.callCount, 1, "_createDependencyReader got called once"); + t.deepEqual(createDependencyReaderStub.getCall(0).args[0], + new Set(["dep.a", "dep.b"]), + "_createDependencyReader got called with correct arguments"); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); + t.deepEqual(taskStub.getCall(0).args[0], { workspace: "workspace", - dependencies: "dependencies" + dependencies: "dependencies", + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "configuration", + } + }, "Task got called with one argument"); + + t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); + t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersion, + "taskUtil#getInterface got called with correct argument"); +}); + +test("Custom task with legacy spec version and requiredDependenciesCallback", async (t) => { + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const taskStub = sinon.stub(); + const specVersionGteStub = sinon.stub().returns(false); + const mockSpecVersion = { + toString: () => "1.0", + gte: specVersionGteStub + }; + const requiredDependenciesCallbackStub = sinon.stub().resolves(new Set(["dep.b"])); + const getRequiredDependenciesCallbackStub = sinon.stub().resolves(requiredDependenciesCallbackStub); + graph.getExtension.returns({ + getTask: () => taskStub, + getSpecVersion: () => mockSpecVersion, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub + }); + t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "configuration"} + ]; + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); + + t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); + t.deepEqual(taskRunner._tasks["myTask"].requiredDependencies, new Set(["dep.b"]), + "Custom tasks requires all dependencies by default"); + + t.is(requiredDependenciesCallbackStub.callCount, 1, "requiredDependenciesCallback got called once"); + t.deepEqual(requiredDependenciesCallbackStub.getCall(0).args[0], { + availableDependencies: new Set(["dep.a", "dep.b"]) + }, "requiredDependenciesCallback got called with expected arguments"); - t.is(specVersionGteStub.callCount, 1, "SpecificationVersion#gte got called once"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + await taskRunner._tasks["myTask"].task(); + + t.is(specVersionGteStub.callCount, 2, "SpecificationVersion#gte got called twice"); t.is(specVersionGteStub.getCall(0).args[0], "3.0", - "SpecificationVersion#gte got called with correct arguments"); + "SpecificationVersion#gte got called with correct arguments on first call"); + t.is(specVersionGteStub.getCall(1).args[0], "3.0", + "SpecificationVersion#gte got called with correct arguments on second call"); + + t.is(createDependencyReaderStub.callCount, 1, "_createDependencyReader got called once"); + t.deepEqual(createDependencyReaderStub.getCall(0).args[0], + new Set(["dep.b"]), + "_createDependencyReader got called with correct arguments"); + t.is(taskStub.callCount, 1, "Task got called once"); t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); t.deepEqual(taskStub.getCall(0).args[0], { @@ -499,54 +742,101 @@ test("Custom task with specVersion 3.0", async (t) => { toString: () => "3.0", gte: specVersionGteStub }; + + const requiredDependenciesCallbackStub = sinon.stub().resolves(new Set(["dep.b"])); + const getRequiredDependenciesCallbackStub = sinon.stub() + .resolves(requiredDependenciesCallbackStub); + graph.getExtension.returns({ getTask: () => taskStub, - getSpecVersion: () => mockSpecVersion + getSpecVersion: () => mockSpecVersion, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub }); - t.context.taskUtil.getInterface.returns(undefined); // simulating no taskUtil for old specVersion + const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask", configuration: "configuration"} ]; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); + + t.is(requiredDependenciesCallbackStub.callCount, 1, "requiredDependenciesCallback got called once"); + const requiredDependenciesCallbackArgs = requiredDependenciesCallbackStub.getCall(0).args[0]; + + t.is(typeof requiredDependenciesCallbackArgs.getProject, "function", "getProject function provided"); + requiredDependenciesCallbackArgs.getProject("some.project"); + t.is(taskUtil.getProject.callCount, 1, "taskUtil.getProject got called once"); + t.is(taskUtil.getProject.getCall(0).args[0], "some.project", + "taskUtil.getProject got called with expected arguments"); + requiredDependenciesCallbackArgs.getProject = "getProject function"; + + t.is(typeof requiredDependenciesCallbackArgs.getDependencies, "function", "getDependencies function provided"); + requiredDependenciesCallbackArgs.getDependencies("some.project"); + t.is(taskUtil.getDependencies.callCount, 2, "taskUtil.getDependencies got called twice"); + t.is(taskUtil.getDependencies.getCall(1).args[0], "some.project", + "taskUtil.getDependencies got called with expected arguments"); + requiredDependenciesCallbackArgs.getDependencies = "getDependencies function"; + + t.deepEqual(requiredDependenciesCallbackArgs, { + availableDependencies: new Set(["dep.a", "dep.b"]), + getProject: "getProject function", + getDependencies: "getDependencies function", + options: { + projectName: "project.b", + projectNamespace: "project/b", + taskName: "myTask", + configuration: "configuration", + } + }, "requiredDependenciesCallback got called with expected arguments"); t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); - t.true(taskRunner._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - await taskRunner._tasks["myTask"].task({ - workspace: "workspace", - dependencies: "dependencies" - }, "log"); + t.deepEqual(taskRunner._tasks["myTask"].requiredDependencies, new Set(["dep.b"]), + "Custom tasks requires all dependencies by default"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + await taskRunner._tasks["myTask"].task(); - t.is(specVersionGteStub.callCount, 1, "SpecificationVersion#gte got called once"); + t.is(specVersionGteStub.callCount, 2, "SpecificationVersion#gte got called twice"); t.is(specVersionGteStub.getCall(0).args[0], "3.0", - "SpecificationVersion#gte got called with correct arguments"); + "SpecificationVersion#gte got called with correct arguments on first call"); + t.is(specVersionGteStub.getCall(1).args[0], "3.0", + "SpecificationVersion#gte got called with correct arguments on second call"); + + t.is(taskUtil.getInterface.callCount, 2, "taskUtil#getInterface got called twice"); + t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersion, + "taskUtil#getInterface got called with correct argument on first call"); + t.is(taskUtil.getInterface.getCall(1).args[0], mockSpecVersion, + "taskUtil#getInterface got called with correct argument on second call"); + + t.is(createDependencyReaderStub.callCount, 1, "_createDependencyReader got called once"); + t.deepEqual(createDependencyReaderStub.getCall(0).args[0], + new Set(["dep.b"]), + "_createDependencyReader got called with correct arguments"); + t.is(taskStub.callCount, 1, "Task got called once"); t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); t.deepEqual(taskStub.getCall(0).args[0], { workspace: "workspace", dependencies: "dependencies", log: "group logger", + taskUtil, options: { projectName: "project.b", projectNamespace: "project/b", taskName: "myTask", // specVersion 3.0 feature configuration: "configuration", - } + }, }, "Task got called with one argument"); - - t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersion, - "taskUtil#getInterface got called with correct argument"); }); test("Multiple custom tasks with same name are called correctly", async (t) => { const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; - const taskStub1 = sinon.stub(); - const taskStub2 = sinon.stub(); - const taskStub3 = sinon.stub(); + const taskStubA = sinon.stub(); + const taskStubB = sinon.stub(); + const taskStubC = sinon.stub(); + const taskStubD = sinon.stub(); const mockSpecVersionA = { toString: () => "2.5", gte: () => false @@ -559,92 +849,241 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { toString: () => "3.0", gte: () => true }; + const mockSpecVersionD = { + toString: () => "3.0", + gte: () => true + }; + const requiredDependenciesCallbackStubA = sinon.stub().resolves(new Set(["dep.b"])); + const requiredDependenciesCallbackStubD = sinon.stub().resolves(new Set(["dep.a"])); + const getRequiredDependenciesCallbackStub = sinon.stub() + .resolves(null) + .onCall(0).resolves(requiredDependenciesCallbackStubA) + .onCall(3).resolves(requiredDependenciesCallbackStubD); + graph.getExtension.onFirstCall().returns({ - getTask: () => taskStub1, - getSpecVersion: () => mockSpecVersionA + getName: () => "Task Name A", + getTask: () => taskStubA, + getSpecVersion: () => mockSpecVersionA, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub }); graph.getExtension.onSecondCall().returns({ - getTask: () => taskStub2, - getSpecVersion: () => mockSpecVersionB + getName: () => "Task Name B", + getTask: () => taskStubB, + getSpecVersion: () => mockSpecVersionB, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub }); graph.getExtension.onThirdCall().returns({ - getTask: () => taskStub3, - getSpecVersion: () => mockSpecVersionC + getName: () => "Task Name C", + getTask: () => taskStubC, + getSpecVersion: () => mockSpecVersionC, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub + }); + graph.getExtension.onCall(3).returns({ + getName: () => "Task Name D", + getTask: () => taskStubD, + getSpecVersion: () => mockSpecVersionD, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub }); const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask", configuration: "cat"}, {name: "myTask", afterTask: "myTask", configuration: "dog"}, + {name: "myTask", afterTask: "myTask", configuration: "bird"}, {name: "myTask", afterTask: "myTask", configuration: "bird"} ]; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - - t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); - t.truthy(taskRunner._tasks["myTask--2"], "Custom tasks has been added to task map"); - t.truthy(taskRunner._tasks["myTask--3"], "Custom tasks has been added to task map"); - t.true(taskRunner._tasks["myTask"].requiresDependencies, "Custom tasks requires dependencies by default"); - t.true(taskRunner._tasks["myTask--2"].requiresDependencies, "Custom tasks requires dependencies by default"); - t.true(taskRunner._tasks["myTask--3"].requiresDependencies, "Custom tasks requires dependencies by default"); + await taskRunner._initTasks(); + + // getRequiredDependenciesCallbackStub is only called for specVersion >= 3.0 + t.is(getRequiredDependenciesCallbackStub.callCount, 4, + "getRequiredDependenciesCallback stub was called for all tasks"); + t.is(requiredDependenciesCallbackStubA.callCount, 1, + "requiredDependenciesCallback stub for task A was called once"); + t.is(requiredDependenciesCallbackStubD.callCount, 1, + "requiredDependenciesCallback stub for Task D stub was called once"); + + t.truthy(taskRunner._tasks["myTask"], "Custom tasks A has been added to task map"); + t.truthy(taskRunner._tasks["myTask--2"], "Custom tasks B has been added to task map"); + t.truthy(taskRunner._tasks["myTask--3"], "Custom tasks C has been added to task map"); + t.truthy(taskRunner._tasks["myTask--4"], "Custom tasks D has been added to task map"); + t.deepEqual(taskRunner._tasks["myTask"].requiredDependencies, new Set(["dep.b"]), + "Custom tasks with legacy specVersion and requiredDependenciesCallback defines " + + "required dependencies"); + t.deepEqual(taskRunner._tasks["myTask--2"].requiredDependencies, new Set(["dep.a", "dep.b"]), + "Custom tasks with legacy specVersion require all dependencies by default"); + t.deepEqual(taskRunner._tasks["myTask--3"].requiredDependencies, new Set([]), + "Custom tasks with specVersion 3.0 but no requiredDependenciesCallback " + + "require no dependencies by default"); + t.deepEqual(taskRunner._tasks["myTask--4"].requiredDependencies, new Set(["dep.a"]), + "Custom tasks with specVersion 3.0 and requiredDependenciesCallback defines " + + "required dependencies"); // "Last in is the first out" t.deepEqual(taskRunner._taskExecutionOrder, [ "myTask", + "myTask--4", "myTask--3", "myTask--2", ], "Correct order of custom tasks"); - await taskRunner.runTasks({ - workspace: "workspace", - dependencies: "dependencies" - }); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + await taskRunner.runTasks(); - t.is(taskStub1.callCount, 1, "Task 1 got called once"); - t.is(taskStub1.getCall(0).args.length, 1, "Task 1 got called with one argument"); - t.deepEqual(taskStub1.getCall(0).args[0], { + t.is(taskUtil.getInterface.callCount, 5, "taskUtil#getInterface got called three times"); + t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersionD, + "taskUtil#getInterface got called with correct argument on first call"); + t.is(taskUtil.getInterface.getCall(1).args[0], mockSpecVersionA, + "taskUtil#getInterface got called with correct argument on second call"); + t.is(taskUtil.getInterface.getCall(2).args[0], mockSpecVersionD, + "taskUtil#getInterface got called with correct argument on third call"); + t.is(taskUtil.getInterface.getCall(3).args[0], mockSpecVersionC, + "taskUtil#getInterface got called with correct argument on fourth call"); + t.is(taskUtil.getInterface.getCall(4).args[0], mockSpecVersionB, + "taskUtil#getInterface got called with correct argument on fifth call"); + + t.is(createDependencyReaderStub.callCount, 4, "_createDependencyReader got called four times"); + t.deepEqual(createDependencyReaderStub.getCall(0).args[0], + new Set(["dep.b"]), + "_createDependencyReader got called with correct arguments on first call"); + t.deepEqual(createDependencyReaderStub.getCall(1).args[0], + new Set(["dep.a"]), + "_createDependencyReader got called with correct arguments on second call"); + t.deepEqual(createDependencyReaderStub.getCall(2).args[0], + new Set([]), + "_createDependencyReader got called with correct arguments on third call"); + t.deepEqual(createDependencyReaderStub.getCall(3).args[0], + new Set(["dep.a", "dep.b"]), + "_createDependencyReader got called with correct arguments on fourth call"); + + t.is(taskStubA.callCount, 1, "Task A got called once"); + t.is(taskStubA.getCall(0).args.length, 1, "Task A got called with one argument"); + t.deepEqual(taskStubA.getCall(0).args[0], { workspace: "workspace", dependencies: "dependencies", + taskUtil, options: { projectName: "project.b", projectNamespace: "project/b", configuration: "cat", } - }, "Task 1 got called with one argument"); + }, "Task A got called with one argument"); - t.is(taskStub2.callCount, 1, "Task 2 got called once"); - t.is(taskStub2.getCall(0).args.length, 1, "Task 2 got called with one argument"); - t.deepEqual(taskStub2.getCall(0).args[0], { + t.is(taskStubB.callCount, 1, "Task B got called once"); + t.is(taskStubB.getCall(0).args.length, 1, "Task B got called with one argument"); + t.deepEqual(taskStubB.getCall(0).args[0], { workspace: "workspace", dependencies: "dependencies", + taskUtil, options: { projectName: "project.b", projectNamespace: "project/b", configuration: "dog", } - }, "Task 2 got called with one argument"); + }, "Task B got called with one argument"); - t.is(taskStub3.callCount, 1, "Task 3 got called once"); - t.is(taskStub3.getCall(0).args.length, 1, "Task 3 got called with one argument"); - t.deepEqual(taskStub3.getCall(0).args[0], { + t.is(taskStubC.callCount, 1, "Task C got called once"); + t.is(taskStubC.getCall(0).args.length, 1, "Task C got called with one argument"); + t.deepEqual(taskStubC.getCall(0).args[0], { workspace: "workspace", dependencies: "dependencies", log: "group logger", + taskUtil, options: { projectName: "project.b", projectNamespace: "project/b", taskName: "myTask--3", configuration: "bird", } - }, "Task 3 got called with one argument"); + }, "Task C got called with one argument"); - t.is(taskUtil.getInterface.callCount, 3, "taskUtil#getInterface got called once"); - t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersionA, - "taskUtil#getInterface got called with correct argument on first call"); - t.is(taskUtil.getInterface.getCall(1).args[0], mockSpecVersionC, - "taskUtil#getInterface got called with correct argument on second call"); - t.is(taskUtil.getInterface.getCall(2).args[0], mockSpecVersionB, - "taskUtil#getInterface got called with correct argument on third call"); + t.is(taskStubD.callCount, 1, "Task D got called once"); + t.is(taskStubD.getCall(0).args.length, 1, "Task D got called with one argument"); + t.deepEqual(taskStubD.getCall(0).args[0], { + workspace: "workspace", + dependencies: "dependencies", + log: "group logger", + taskUtil, + options: { + projectName: "project.b", + projectNamespace: "project/b", + taskName: "myTask--4", + configuration: "bird", + } + }, "Task D got called with one argument"); +}); + +test("Custom task: requiredDependenciesCallback returns unknown dependency", async (t) => { + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const taskStub = sinon.stub(); + const specVersionGteStub = sinon.stub().returns(true); + const mockSpecVersion = { + toString: () => "3.0", + gte: specVersionGteStub + }; + + const requiredDependenciesCallbackStub = sinon.stub().resolves(new Set(["dep.b", "other.dep"])); + const getRequiredDependenciesCallbackStub = sinon.stub() + .resolves(requiredDependenciesCallbackStub); + + graph.getExtension.returns({ + getName: () => "custom.task.a", + getTask: () => taskStub, + getSpecVersion: () => mockSpecVersion, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub + }); + + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "configuration"} + ]; + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); + await t.throwsAsync(taskRunner._initTasks(), { + message: + `'determineRequiredDependencies' callback function of custom task custom.task.a ` + + `of project project.b must resolve with a subset of the the direct dependencies of the project. ` + + `other.dep is not a direct dependency of the project.` + }, "Threw with expected error message"); +}); + + +test("Custom task: requiredDependenciesCallback returns Array instead of Set", async (t) => { + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const taskStub = sinon.stub(); + const specVersionGteStub = sinon.stub().returns(true); + const mockSpecVersion = { + toString: () => "3.0", + gte: specVersionGteStub + }; + + const requiredDependenciesCallbackStub = sinon.stub().resolves(["dep.b"]); + const getRequiredDependenciesCallbackStub = sinon.stub() + .resolves(requiredDependenciesCallbackStub); + + graph.getExtension.returns({ + getName: () => "custom.task.a", + getTask: () => taskStub, + getSpecVersion: () => mockSpecVersion, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub + }); + + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "configuration"} + ]; + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); + await t.throwsAsync(taskRunner._initTasks(), { + message: + `'determineRequiredDependencies' callback function of custom task custom.task.a ` + + `of project project.b must resolve with Set.` + }, "Threw with expected error message"); }); test.serial("_addTask", async (t) => { @@ -656,14 +1095,16 @@ test.serial("_addTask", async (t) => { }); const project = getMockProject("module"); - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); taskRunner._addTask("standardTask"); t.truthy(taskRunner._tasks["standardTask"], "Task has been added to task map"); - t.false(taskRunner._tasks["standardTask"].requiresDependencies, "requiresDependencies defaults to false"); + t.deepEqual(taskRunner._tasks["standardTask"].requiredDependencies, new Set(), + "By default, no dependencies required"); t.truthy(taskRunner._tasks["standardTask"].task, "Task function got set correctly"); t.deepEqual(taskRunner._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); @@ -692,9 +1133,10 @@ test.serial("_addTask with options", async (t) => { const taskStub = sinon.stub(); const project = getMockProject("module"); - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); taskRunner._addTask("standardTask", { requiresDependencies: true, @@ -705,21 +1147,24 @@ test.serial("_addTask with options", async (t) => { }); t.truthy(taskRunner._tasks["standardTask"], "Task has been added to task map"); - t.true(taskRunner._tasks["standardTask"].requiresDependencies, "requiresDependencies set to true"); + t.deepEqual(taskRunner._tasks["standardTask"].requiredDependencies, new Set(["dep.a", "dep.b"]), + "All dependencies required"); t.truthy(taskRunner._tasks["standardTask"].task, "Task function got set correctly"); t.deepEqual(taskRunner._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); await taskRunner._tasks["standardTask"].task({ workspace: "workspace", dependencies: "dependencies", }); t.is(taskRepository.getTask.callCount, 0, "taskRepository#getTask did not get called"); + t.is(createDependencyReaderStub.callCount, 0, "_createDependencyReader did not get called"); t.is(taskStub.callCount, 1, "Task got called once"); t.deepEqual(taskStub.getCall(0).args[0], { workspace: "workspace", - dependencies: "dependencies", + dependencies: taskRunner._allDependenciesReader, options: { projectName: "project.b", projectNamespace: "project/b", @@ -732,9 +1177,10 @@ test.serial("_addTask with options", async (t) => { test("_addTask: Duplicate task", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); taskRunner._addTask("standardTask", { taskFunction: () => {} @@ -752,9 +1198,10 @@ test("_addTask: Duplicate task", async (t) => { test("_addTask: Task already added to execution order", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); + await taskRunner._initTasks(); taskRunner._taskExecutionOrder.push("standardTask"); const err = t.throws(() => { @@ -767,106 +1214,148 @@ test("_addTask: Task already added to execution order", async (t) => { "Threw with expected error message"); }); -test("requiresDependencies: Custom Task", async (t) => { +test("getRequiredDependencies: Custom Task", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"} ]; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - t.true(taskRunner.requiresDependencies(), "Project with custom task requires dependencies"); + t.deepEqual(await taskRunner.getRequiredDependencies(), new Set([]), + "Project with custom task >= specVersion 3.0 and no requiredDependenciesCallback " + + "requires no dependencies"); }); -test("requiresDependencies: Default application", async (t) => { +test("getRequiredDependencies: Default application", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("application"); project.getBundles = () => []; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - t.false(taskRunner.requiresDependencies(), "Default application project does not require dependencies"); + t.deepEqual(await taskRunner.getRequiredDependencies(), new Set([]), + "Default application project does not require dependencies"); }); -test("requiresDependencies: Default library", async (t) => { +test("getRequiredDependencies: Default library", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("library"); project.getBundles = () => []; - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - t.true(taskRunner.requiresDependencies(), "Default library project requires dependencies"); + t.deepEqual(await taskRunner.getRequiredDependencies(), new Set(["dep.a", "dep.b"]), + "Default library project requires dependencies"); }); -test("requiresDependencies: Default theme-library", async (t) => { +test("getRequiredDependencies: Default theme-library", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("theme-library"); - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - t.true(taskRunner.requiresDependencies(), "Default theme-library project requires dependencies"); + t.deepEqual(await taskRunner.getRequiredDependencies(), new Set(["dep.a", "dep.b"]), + "Default theme-library project requires dependencies"); }); -test("requiresDependencies: Default module", async (t) => { +test("getRequiredDependencies: Default module", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - t.false(taskRunner.requiresDependencies(), "Default module project does not require dependencies"); + t.deepEqual(await taskRunner.getRequiredDependencies(), new Set([]), + "Default module project does not require dependencies"); }); -test("requiresBuild: has no build-manifest", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; - const project = getMockProject("library"); +test("_createDependencyReader", async (t) => { + const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; + const project = getMockProject("module"); - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - t.true(taskRunner.requiresBuild(), "Project without build-manifest requires to be build"); -}); - -test("requiresBuild: has build-manifest", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; - const project = getMockProject("library"); - project.hasBuildManifest = () => true; - - const taskRunner = await TaskRunner.create({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + await taskRunner._initTasks(); + graph.traverseBreadthFirst.reset(); // Ignore the call in initTask + resourceFactory.createReaderCollection.reset(); // Ignore the call in initTask + resourceFactory.createReaderCollection.returns("custom reader collection"); + const res = await taskRunner._createDependencyReader(new Set(["dep.a"])); + + t.is(graph.traverseBreadthFirst.callCount, 1, "ProjectGraph#traverseBreadthFirst got called once"); + t.is(graph.traverseBreadthFirst.getCall(0).args[0], "project.b", + "ProjectGraph#traverseBreadthFirst called with correct project name for start"); + + const traversalCallback = graph.traverseBreadthFirst.getCall(0).args[1]; + + // Call with root project should be ignored + await traversalCallback({ + project: { + getName: () => "project.b", + getReader: () => "project.b reader", + } + }); + await traversalCallback({ + project: { + getName: () => "dep.a", + getReader: () => "dep.a reader", + } + }); + await traversalCallback({ + project: { + getName: () => "dep.b", + getReader: () => "dep.b reader", + } }); - t.false(taskRunner.requiresBuild(), "Project with build-manifest does not require to be build"); + await traversalCallback({ + project: { + getName: () => "dep.c", + getReader: () => "dep.c reader", + } + }); + await traversalCallback({ + project: { + // Will be ignored as it is no (transitive) dependency of the project + getName: () => "other project", + getReader: () => "other project reader", + } + }); + t.is(resourceFactory.createReaderCollection.callCount, 1, "createReaderCollection got called once"); + t.deepEqual(resourceFactory.createReaderCollection.getCall(0).args[0], { + name: "Reduced dependency reader collection of project project.b", + readers: [ + "dep.a reader", "dep.b reader", "dep.c reader" + ] + }, "createReaderCollection got called with correct arguments"); + t.is(res, "custom reader collection", "Returned expected value"); }); -test.serial("getBuildMetadata", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; - const project = getMockProject("library"); - project.hasBuildManifest = () => true; - project.getBuildManifest = () => { - return { - timestamp: "2022-07-28T12:00:00.000Z" - }; - }; - const getTimeStub = sinon.stub(Date.prototype, "getTime").callThrough().onFirstCall().returns(1659016800000); - const taskRunner = await TaskRunner.create({ +test("_createDependencyReader: All dependencies required", async (t) => { + const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; + const project = getMockProject("module"); + + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - - t.deepEqual(taskRunner.getBuildMetadata(), { - timestamp: "2022-07-28T12:00:00.000Z", - age: "7200 seconds" - }, "Project with build-manifest does not require to be build"); - getTimeStub.restore(); + await taskRunner._initTasks(); + const res = await taskRunner._createDependencyReader(new Set(["dep.a", "dep.b"])); + t.is(graph.traverseBreadthFirst.callCount, 1, "ProjectGraph#traverseBreadthFirst got called once"); + t.is(resourceFactory.createReaderCollection.callCount, 1, "createReaderCollection got called once"); + t.is(res, "reader collection", "Shared (all-)dependency reader returned"); }); -test("getBuildMetadata: has no build-manifest", async (t) => { +test("_createDependencyReader: No dependencies required", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; - const project = getMockProject("library"); + const project = getMockProject("module"); - const taskRunner = await TaskRunner.create({ + const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); - t.is(taskRunner.getBuildMetadata(), null, "Project has no build manifest"); + await taskRunner._initTasks(); + const res = await taskRunner._createDependencyReader(new Set()); + t.is(res, null, "No dependency reader returned"); }); + diff --git a/packages/project/test/lib/build/helpers/BuildContext.js b/packages/project/test/lib/build/helpers/BuildContext.js index 61160cc9a7d..ceaf0e81413 100644 --- a/packages/project/test/lib/build/helpers/BuildContext.js +++ b/packages/project/test/lib/build/helpers/BuildContext.js @@ -1,6 +1,5 @@ import test from "ava"; import sinon from "sinon"; -import esmock from "esmock"; test.afterEach.always((t) => { sinon.restore(); @@ -110,44 +109,15 @@ test("getBuildOption", (t) => { "(not exposed as buold option)"); }); -test.serial("createProjectContext", async (t) => { - t.plan(6); - - const project = { - getType: sinon.stub().returns("foo") - }; - const taskRunner = {"task": "runner"}; - class DummyProjectContext { - constructor({buildContext, project, log}) { - t.is(buildContext, testBuildContext, "Correct buildContext parameter"); - t.is(project, project, "Correct project parameter"); - t.is(log, "log", "Correct log parameter"); - } - getTaskUtil() { - return "taskUtil"; - } - setTaskRunner(_taskRunner) { - t.is(_taskRunner, taskRunner); - } - } - const BuildContext = await esmock("../../../../lib/build/helpers/BuildContext.js", { - "../../../../lib/build/helpers/ProjectBuildContext.js": DummyProjectContext, - "../../../../lib/build/TaskRunner.js": { - create: sinon.stub().resolves(taskRunner) - }, - - }); - const testBuildContext = new BuildContext("graph", "taskRepository"); - - const projectContext = await testBuildContext.createProjectContext({ - project, +test("createProjectContext", async (t) => { + const buildContext = new BuildContext("graph", "taskRepository"); + const projectBuildContext = await buildContext.createProjectContext({ + project: "project", log: "log" }); - t.true(projectContext instanceof DummyProjectContext, - "Project context is an instance of DummyProjectContext"); - t.is(testBuildContext._projectBuildContexts[0], projectContext, - "BuildContext stored correct ProjectBuildContext"); + t.deepEqual(buildContext._projectBuildContexts, [projectBuildContext], + "Project build context has been added to internal array"); }); test("executeCleanupTasks", async (t) => { diff --git a/packages/project/test/lib/build/helpers/ProjectBuildContext.js b/packages/project/test/lib/build/helpers/ProjectBuildContext.js index a23cd8c8fdd..539cc0e1250 100644 --- a/packages/project/test/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/test/lib/build/helpers/ProjectBuildContext.js @@ -296,18 +296,130 @@ test("getTaskUtil", (t) => { t.is(projectBuildContext.getTaskUtil(), projectBuildContext.getTaskUtil(), "Caches TaskUtil instance"); }); -test.serial("setTaskRunner / getTaskRunner", (t) => { +test.serial("getTaskRunner", async (t) => { + t.plan(2); + class DummyTaskRunner { + constructor(params) { + t.deepEqual(params, { + graph: "graph", + project: "project", + parentLogger: "log", + taskUtil: "taskUtil", + taskRepository: "taskRepository", + buildConfig: "buildConfig" + }, "TaskRunner created with expected constructor arguments"); + } + } + const ProjectBuildContext = await esmock("../../../../lib/build/helpers/ProjectBuildContext.js", { + "../../../../lib/build/TaskRunner.js": DummyTaskRunner + }); + const projectBuildContext = new ProjectBuildContext({ - buildContext: {}, + buildContext: { + getGraph: () => "graph", + getTaskRepository: () => "taskRepository", + getBuildConfig: () => "buildConfig", + }, project: "project", log: "log" }); - t.is(projectBuildContext.getTaskRunner(), undefined, "No taskRunner assigned / created by default"); + projectBuildContext.getTaskUtil = () => "taskUtil"; + + const taskRunner = projectBuildContext.getTaskRunner(); + t.is(projectBuildContext.getTaskRunner(), taskRunner, "Returns cached TaskRunner instance"); +}); + + +test.serial("createProjectContext", async (t) => { + t.plan(5); + const project = { + getType: sinon.stub().returns("foo") + }; const taskRunner = {"task": "runner"}; - projectBuildContext.setTaskRunner(taskRunner); + class DummyProjectContext { + constructor({buildContext, project, log}) { + t.is(buildContext, testBuildContext, "Correct buildContext parameter"); + t.is(project, project, "Correct project parameter"); + t.is(log, "log", "Correct log parameter"); + } + getTaskUtil() { + return "taskUtil"; + } + setTaskRunner(_taskRunner) { + t.is(_taskRunner, taskRunner); + } + } + const BuildContext = await esmock("../../../../lib/build/helpers/BuildContext.js", { + "../../../../lib/build/helpers/ProjectBuildContext.js": DummyProjectContext, + "../../../../lib/build/TaskRunner.js": { + create: sinon.stub().resolves(taskRunner) + } + }); + const testBuildContext = new BuildContext("graph", "taskRepository"); - t.is(projectBuildContext.getTaskRunner(), taskRunner, "getter returns previously set object"); + const projectContext = await testBuildContext.createProjectContext({ + project, + log: "log" + }); + + t.true(projectContext instanceof DummyProjectContext, + "Project context is an instance of DummyProjectContext"); + t.is(testBuildContext._projectBuildContexts[0], projectContext, + "BuildContext stored correct ProjectBuildContext"); }); +test("requiresBuild: has no build-manifest", (t) => { + const project = {getBuildManifest: () => null}; + const projectBuildContext = new ProjectBuildContext({ + buildContext: {}, + project, + log: "log" + }); + t.true(projectBuildContext.requiresBuild(), "Project without build-manifest requires to be build"); +}); + +test("requiresBuild: has build-manifest", (t) => { + const project = {getBuildManifest: () => { + return { + timestamp: "2022-07-28T12:00:00.000Z" + }; + }}; + const projectBuildContext = new ProjectBuildContext({ + buildContext: {}, + project, + log: "log" + }); + t.false(projectBuildContext.requiresBuild(), "Project with build-manifest does not require to be build"); +}); + +test.serial("getBuildMetadata", (t) => { + const project = {getBuildManifest: () => { + return { + timestamp: "2022-07-28T12:00:00.000Z" + }; + }}; + const getTimeStub = sinon.stub(Date.prototype, "getTime").callThrough().onFirstCall().returns(1659016800000); + const projectBuildContext = new ProjectBuildContext({ + buildContext: {}, + project, + log: "log" + }); + + t.deepEqual(projectBuildContext.getBuildMetadata(), { + timestamp: "2022-07-28T12:00:00.000Z", + age: "7200 seconds" + }, "Project with build-manifest does not require to be build"); + getTimeStub.restore(); +}); + +test("getBuildMetadata: has no build-manifest", (t) => { + const project = {getBuildManifest: () => null}; + const projectBuildContext = new ProjectBuildContext({ + buildContext: {}, + project, + log: "log" + }); + t.is(projectBuildContext.getBuildMetadata(), null, "Project has no build manifest"); +}); diff --git a/packages/project/test/lib/specifications/Project.js b/packages/project/test/lib/specifications/Project.js index ff3ada29792..eb54acde3d0 100644 --- a/packages/project/test/lib/specifications/Project.js +++ b/packages/project/test/lib/specifications/Project.js @@ -118,15 +118,13 @@ test("getBuilderSettings", async (t) => { }, "Returned correct build settings"); }); -test("has-/getBuildManifest", async (t) => { +test("getBuildManifest", async (t) => { const projectWithoutBuildManifest = await Specification.create(clone(basicProjectInput)); - t.false(projectWithoutBuildManifest.hasBuildManifest(), "Project has a no build manifest"); - t.deepEqual(projectWithoutBuildManifest.getBuildManifest(), {}, "Project has a no build manifest"); + t.is(projectWithoutBuildManifest.getBuildManifest(), null, "Project has a no build manifest"); const customProjectInput = clone(basicProjectInput); customProjectInput.buildManifest = "buildManifest"; const project = await Specification.create(customProjectInput); - t.true(project.hasBuildManifest(), "Project has a build manifest"); t.is(project.getBuildManifest(), "buildManifest", "Returned correct build manifest"); }); diff --git a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js index cfcaf5a9e60..9f509e63153 100644 --- a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js @@ -61,17 +61,15 @@ test("Correct class (ESM)", async (t) => { test("getMiddleware (CJS)", async (t) => { const extension = await Specification.create(clone(basicCjsServerMiddlewareInput)); - const middlewarePromise = extension.getMiddleware(); - t.is(typeof middlewarePromise.then, "function"); - t.is(await middlewarePromise, "extension module", + const middleware = await extension.getMiddleware(); + t.is(middleware(), "extension module", "Returned correct module"); }); test("getMiddleware (ESM)", async (t) => { const extension = await Specification.create(clone(basicEsmServerMiddlewareInput)); - const middlewarePromise = extension.getMiddleware(); - t.is(typeof middlewarePromise.then, "function"); - t.is(await middlewarePromise, "extension module", + const middleware = await extension.getMiddleware(); + t.is(middleware(), "extension module", "Returned correct module"); }); diff --git a/packages/project/test/lib/specifications/types/extensions/Task.js b/packages/project/test/lib/specifications/types/extensions/Task.js index b9fccd57846..a90e79f5673 100644 --- a/packages/project/test/lib/specifications/types/extensions/Task.js +++ b/packages/project/test/lib/specifications/types/extensions/Task.js @@ -64,17 +64,29 @@ test("Correct class (ESM)", async (t) => { test("getTask (CJS)", async (t) => { const extension = await Specification.create(clone(basicCjsTaskInput)); - const taskPromise = extension.getTask(); - t.is(typeof taskPromise.then, "function"); - t.is(await taskPromise, "extension module", + const task = await extension.getTask(); + t.is(task(), "extension module", "Returned correct module"); }); test("getTask (ESM)", async (t) => { const extension = await Specification.create(clone(basicEsmTaskInput)); - const taskPromise = extension.getTask(); - t.is(typeof taskPromise.then, "function"); - t.is(await taskPromise, "extension module", + const task = await extension.getTask(); + t.is(task(), "extension module", + "Returned correct module"); +}); + +test("getRequiredDependenciesCallback (CJS)", async (t) => { + const extension = await Specification.create(clone(basicCjsTaskInput)); + const requiredDependenciesCallback = await extension.getRequiredDependenciesCallback(); + t.is(requiredDependenciesCallback(), "required dependencies function", + "Returned correct module"); +}); + +test("getRequiredDependenciesCallback (ESM)", async (t) => { + const extension = await Specification.create(clone(basicEsmTaskInput)); + const requiredDependenciesCallback = await extension.getRequiredDependenciesCallback(); + t.is(requiredDependenciesCallback(), "required dependencies function", "Returned correct module"); }); From 074127f0ad432493dd3857cf96f7dbcd45070255 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sat, 3 Dec 2022 12:01:12 +0100 Subject: [PATCH 0745/1272] [ui5-project][INTERNAL] ProjectGraph: Add getAllDependencies(projectName) method Returns all direct and transitive dependencies for a given project. Likely faster than traversing through the graph. --- packages/project/lib/graph/ProjectGraph.js | 23 +++++++++++++++++ .../project/test/lib/graph/ProjectGraph.js | 25 +++++++++++++++++++ 2 files changed, 48 insertions(+) diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index a74359470cd..93c64cfba37 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -233,6 +233,29 @@ class ProjectGraph { return adjacencies; } + /** + * Get all (direct and transitive) dependencies of a project as an array of project names + * + * @public + * @param {string} projectName Name of the project to retrieve the dependencies of + * @returns {string[]} Names of all direct and transitive dependencies + */ + getAllDependencies(projectName) { + const dependencies = new Set(); + + const processDependency = (depName) => { + const adjacencies = this._adjList[depName]; + adjacencies.forEach((depName) => { + if (!dependencies.has(depName)) { + dependencies.add(depName); + processDependency(depName); + } + }); + }; + + processDependency(projectName); + return Array.from(dependencies); + } /** * Checks whether a dependency is optional or not. * Currently only used in tests. diff --git a/packages/project/test/lib/graph/ProjectGraph.js b/packages/project/test/lib/graph/ProjectGraph.js index f7b88e6612f..7da71e1a817 100644 --- a/packages/project/test/lib/graph/ProjectGraph.js +++ b/packages/project/test/lib/graph/ProjectGraph.js @@ -321,6 +321,31 @@ test("declareDependency / getDependencies", async (t) => { "Should declare dependency as non-optional"); }); +test("getAllDependencies", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + graph.addProject(await createProject("library.c")); + graph.addProject(await createProject("library.d")); + graph.addProject(await createProject("library.e")); + + graph.declareDependency("library.a", "library.b"); + graph.declareDependency("library.b", "library.c"); + graph.declareDependency("library.c", "library.d"); + graph.declareDependency("library.a", "library.d"); + graph.declareDependency("library.d", "library.e"); + + t.deepEqual(graph.getAllDependencies("library.a"), [ + "library.b", + "library.c", + "library.d", + "library.e", + ], "Should store and return correct transitive dependencies for library.a"); +}); + test("declareDependency: Unknown source", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ From 3e3af14e435c3a65e21b6decf852fcd140902ed4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 13 Dec 2022 11:31:27 +0100 Subject: [PATCH 0746/1272] [ui5-project][INTERNAL] TaskRunner: Rename _createDependencyReader => _createDependenciesReader Minor JSDoc fix --- packages/project/lib/build/TaskRunner.js | 6 +-- packages/project/test/lib/build/TaskRunner.js | 52 +++++++++---------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 6c46948c5fa..a86a5a05256 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -131,7 +131,7 @@ class TaskRunner { * First compiles a list of all tasks that will be executed, then a list of all direct project * dependencies that those tasks require access to. * - * @returns {Set} Returns a set containing the names of all required direct project dependencies + * @returns {Set} Returns a set containing the names of all required direct project dependencies */ async getRequiredDependencies() { await this._initTasks(); @@ -327,7 +327,7 @@ class TaskRunner { taskConfiguration: taskDef.configuration, getDependenciesReader: () => { // Create the dependencies reader on-demand - return this._createDependencyReader(requiredDependencies); + return this._createDependenciesReader(requiredDependencies); }, }), requiredDependencies @@ -426,7 +426,7 @@ class TaskRunner { } } - async _createDependencyReader(requiredDirectDependencies) { + async _createDependenciesReader(requiredDirectDependencies) { if (requiredDirectDependencies.size === 0) { // No dependencies are required, so no reader will be provided return null; diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 53fb95496bc..4e05b1ee7aa 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -576,7 +576,7 @@ test("Custom task is called correctly", async (t) => { t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); t.deepEqual(taskRunner._tasks["myTask"].requiredDependencies, new Set(["dep.a", "dep.b"]), "Custom tasks requires all dependencies by default"); - const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependenciesReader").resolves("dependencies"); await taskRunner._tasks["myTask"].task(); t.is(specVersionGteStub.callCount, 2, "SpecificationVersion#gte got called twice"); @@ -585,10 +585,10 @@ test("Custom task is called correctly", async (t) => { t.is(specVersionGteStub.getCall(1).args[0], "3.0", "SpecificationVersion#gte got called with correct arguments on second call"); - t.is(createDependencyReaderStub.callCount, 1, "_createDependencyReader got called once"); + t.is(createDependencyReaderStub.callCount, 1, "_createDependenciesReader got called once"); t.deepEqual(createDependencyReaderStub.getCall(0).args[0], new Set(["dep.a", "dep.b"]), - "_createDependencyReader got called with correct arguments"); + "_createDependenciesReader got called with correct arguments"); t.is(taskStub.callCount, 1, "Task got called once"); t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); @@ -637,7 +637,7 @@ test("Custom task with legacy spec version", async (t) => { t.deepEqual(taskRunner._tasks["myTask"].requiredDependencies, new Set(["dep.a", "dep.b"]), "Custom tasks requires all dependencies by default"); - const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependenciesReader").resolves("dependencies"); await taskRunner._tasks["myTask"].task(); t.is(specVersionGteStub.callCount, 2, "SpecificationVersion#gte got called twice"); @@ -646,10 +646,10 @@ test("Custom task with legacy spec version", async (t) => { t.is(specVersionGteStub.getCall(1).args[0], "3.0", "SpecificationVersion#gte got called with correct arguments on second call"); - t.is(createDependencyReaderStub.callCount, 1, "_createDependencyReader got called once"); + t.is(createDependencyReaderStub.callCount, 1, "_createDependenciesReader got called once"); t.deepEqual(createDependencyReaderStub.getCall(0).args[0], new Set(["dep.a", "dep.b"]), - "_createDependencyReader got called with correct arguments"); + "_createDependenciesReader got called with correct arguments"); t.is(taskStub.callCount, 1, "Task got called once"); t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); @@ -703,7 +703,7 @@ test("Custom task with legacy spec version and requiredDependenciesCallback", as availableDependencies: new Set(["dep.a", "dep.b"]) }, "requiredDependenciesCallback got called with expected arguments"); - const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependenciesReader").resolves("dependencies"); await taskRunner._tasks["myTask"].task(); t.is(specVersionGteStub.callCount, 2, "SpecificationVersion#gte got called twice"); @@ -712,10 +712,10 @@ test("Custom task with legacy spec version and requiredDependenciesCallback", as t.is(specVersionGteStub.getCall(1).args[0], "3.0", "SpecificationVersion#gte got called with correct arguments on second call"); - t.is(createDependencyReaderStub.callCount, 1, "_createDependencyReader got called once"); + t.is(createDependencyReaderStub.callCount, 1, "_createDependenciesReader got called once"); t.deepEqual(createDependencyReaderStub.getCall(0).args[0], new Set(["dep.b"]), - "_createDependencyReader got called with correct arguments"); + "_createDependenciesReader got called with correct arguments"); t.is(taskStub.callCount, 1, "Task got called once"); t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); @@ -795,7 +795,7 @@ test("Custom task with specVersion 3.0", async (t) => { t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); t.deepEqual(taskRunner._tasks["myTask"].requiredDependencies, new Set(["dep.b"]), "Custom tasks requires all dependencies by default"); - const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependenciesReader").resolves("dependencies"); await taskRunner._tasks["myTask"].task(); t.is(specVersionGteStub.callCount, 2, "SpecificationVersion#gte got called twice"); @@ -810,10 +810,10 @@ test("Custom task with specVersion 3.0", async (t) => { t.is(taskUtil.getInterface.getCall(1).args[0], mockSpecVersion, "taskUtil#getInterface got called with correct argument on second call"); - t.is(createDependencyReaderStub.callCount, 1, "_createDependencyReader got called once"); + t.is(createDependencyReaderStub.callCount, 1, "_createDependenciesReader got called once"); t.deepEqual(createDependencyReaderStub.getCall(0).args[0], new Set(["dep.b"]), - "_createDependencyReader got called with correct arguments"); + "_createDependenciesReader got called with correct arguments"); t.is(taskStub.callCount, 1, "Task got called once"); t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); @@ -928,7 +928,7 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { "myTask--2", ], "Correct order of custom tasks"); - const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependenciesReader").resolves("dependencies"); await taskRunner.runTasks(); t.is(taskUtil.getInterface.callCount, 5, "taskUtil#getInterface got called three times"); @@ -943,19 +943,19 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { t.is(taskUtil.getInterface.getCall(4).args[0], mockSpecVersionB, "taskUtil#getInterface got called with correct argument on fifth call"); - t.is(createDependencyReaderStub.callCount, 4, "_createDependencyReader got called four times"); + t.is(createDependencyReaderStub.callCount, 4, "_createDependenciesReader got called four times"); t.deepEqual(createDependencyReaderStub.getCall(0).args[0], new Set(["dep.b"]), - "_createDependencyReader got called with correct arguments on first call"); + "_createDependenciesReader got called with correct arguments on first call"); t.deepEqual(createDependencyReaderStub.getCall(1).args[0], new Set(["dep.a"]), - "_createDependencyReader got called with correct arguments on second call"); + "_createDependenciesReader got called with correct arguments on second call"); t.deepEqual(createDependencyReaderStub.getCall(2).args[0], new Set([]), - "_createDependencyReader got called with correct arguments on third call"); + "_createDependenciesReader got called with correct arguments on third call"); t.deepEqual(createDependencyReaderStub.getCall(3).args[0], new Set(["dep.a", "dep.b"]), - "_createDependencyReader got called with correct arguments on fourth call"); + "_createDependenciesReader got called with correct arguments on fourth call"); t.is(taskStubA.callCount, 1, "Task A got called once"); t.is(taskStubA.getCall(0).args.length, 1, "Task A got called with one argument"); @@ -1152,14 +1152,14 @@ test.serial("_addTask with options", async (t) => { t.truthy(taskRunner._tasks["standardTask"].task, "Task function got set correctly"); t.deepEqual(taskRunner._taskExecutionOrder, ["standardTask"], "Task got added to execution order"); - const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependencyReader").resolves("dependencies"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependenciesReader").resolves("dependencies"); await taskRunner._tasks["standardTask"].task({ workspace: "workspace", dependencies: "dependencies", }); t.is(taskRepository.getTask.callCount, 0, "taskRepository#getTask did not get called"); - t.is(createDependencyReaderStub.callCount, 0, "_createDependencyReader did not get called"); + t.is(createDependencyReaderStub.callCount, 0, "_createDependenciesReader did not get called"); t.is(taskStub.callCount, 1, "Task got called once"); t.deepEqual(taskStub.getCall(0).args[0], { @@ -1272,7 +1272,7 @@ test("getRequiredDependencies: Default module", async (t) => { "Default module project does not require dependencies"); }); -test("_createDependencyReader", async (t) => { +test("_createDependenciesReader", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; const project = getMockProject("module"); @@ -1283,7 +1283,7 @@ test("_createDependencyReader", async (t) => { graph.traverseBreadthFirst.reset(); // Ignore the call in initTask resourceFactory.createReaderCollection.reset(); // Ignore the call in initTask resourceFactory.createReaderCollection.returns("custom reader collection"); - const res = await taskRunner._createDependencyReader(new Set(["dep.a"])); + const res = await taskRunner._createDependenciesReader(new Set(["dep.a"])); t.is(graph.traverseBreadthFirst.callCount, 1, "ProjectGraph#traverseBreadthFirst got called once"); t.is(graph.traverseBreadthFirst.getCall(0).args[0], "project.b", @@ -1333,7 +1333,7 @@ test("_createDependencyReader", async (t) => { t.is(res, "custom reader collection", "Returned expected value"); }); -test("_createDependencyReader: All dependencies required", async (t) => { +test("_createDependenciesReader: All dependencies required", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; const project = getMockProject("module"); @@ -1341,13 +1341,13 @@ test("_createDependencyReader: All dependencies required", async (t) => { project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); await taskRunner._initTasks(); - const res = await taskRunner._createDependencyReader(new Set(["dep.a", "dep.b"])); + const res = await taskRunner._createDependenciesReader(new Set(["dep.a", "dep.b"])); t.is(graph.traverseBreadthFirst.callCount, 1, "ProjectGraph#traverseBreadthFirst got called once"); t.is(resourceFactory.createReaderCollection.callCount, 1, "createReaderCollection got called once"); t.is(res, "reader collection", "Shared (all-)dependency reader returned"); }); -test("_createDependencyReader: No dependencies required", async (t) => { +test("_createDependenciesReader: No dependencies required", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); @@ -1355,7 +1355,7 @@ test("_createDependencyReader: No dependencies required", async (t) => { project, graph, taskUtil, taskRepository, parentLogger, buildConfig }); await taskRunner._initTasks(); - const res = await taskRunner._createDependencyReader(new Set()); + const res = await taskRunner._createDependenciesReader(new Set()); t.is(res, null, "No dependency reader returned"); }); From f6d7b350d27b0d7e086541cf3eaa3ab51ad28fd0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 13 Dec 2022 14:43:24 +0100 Subject: [PATCH 0747/1272] [ui5-project][INTERNAL] ProjectGraph: Cleanup resolved optional dependencies --- packages/project/lib/graph/ProjectGraph.js | 14 +++++-- .../project/test/lib/graph/ProjectGraph.js | 37 ++++++++++++++++++- 2 files changed, 46 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 93c64cfba37..15367654cf4 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -30,7 +30,7 @@ class ProjectGraph { this._extensions = Object.create(null); // maps extension name to instance this._sealed = false; - this._shouldResolveOptionalDependencies = false; // Performance optimization flag + this._hasUnresolvedOptionalDependencies = false; // Performance optimization flag } /** @@ -181,7 +181,7 @@ class ProjectGraph { // } log.verbose(`Declaring optional dependency: ${fromProjectName} depends on ${toProjectName}`); this._declareDependency(this._optAdjList, fromProjectName, toProjectName); - this._shouldResolveOptionalDependencies = true; + this._hasUnresolvedOptionalDependencies = true; } catch (err) { throw new Error( `Failed to declare optional dependency from project ${fromProjectName} to ${toProjectName}: ` + @@ -290,7 +290,7 @@ class ProjectGraph { * @public */ async resolveOptionalDependencies() { - if (!this._shouldResolveOptionalDependencies) { + if (!this._hasUnresolvedOptionalDependencies) { log.verbose(`Skipping resolution of optional dependencies since none have been declared`); return; } @@ -302,6 +302,7 @@ class ProjectGraph { resolvedProjects.add(project.getName()); }); + let unresolvedOptDeps = false; for (const [projectName, dependencies] of Object.entries(this._optAdjList)) { for (let i = dependencies.length - 1; i >= 0; i--) { const targetProjectName = dependencies[i]; @@ -317,12 +318,19 @@ class ProjectGraph { log.verbose( ` Optional dependency from ${projectName} to ${targetProjectName} ` + `will not be declared as it would introduce a cycle`); + unresolvedOptDeps = true; } else { this.declareDependency(projectName, targetProjectName); + dependencies.splice(i, 1); } + } else { + unresolvedOptDeps = true; } } } + if (!unresolvedOptDeps) { + this._hasUnresolvedOptionalDependencies = false; + } } /** diff --git a/packages/project/test/lib/graph/ProjectGraph.js b/packages/project/test/lib/graph/ProjectGraph.js index 7da71e1a817..150afc223ba 100644 --- a/packages/project/test/lib/graph/ProjectGraph.js +++ b/packages/project/test/lib/graph/ProjectGraph.js @@ -514,9 +514,13 @@ test("resolveOptionalDependencies", async (t) => { t.is(graph.isOptionalDependency("library.a", "library.b"), false, "library.a should have no optional dependency to library.b anymore"); + t.is(graph.isOptionalDependency("library.a", "library.c"), false, "library.a should have no optional dependency to library.c anymore"); + t.false(graph._hasUnresolvedOptionalDependencies, + "Graph has no unresolved optional dependencies"); + await traverseDepthFirst(t, graph, [ "library.b", "library.c", @@ -541,16 +545,39 @@ test("resolveOptionalDependencies: Optional dependency has not been resolved", a await graph.resolveOptionalDependencies(); - t.is(graph.isOptionalDependency("library.a", "library.b"), true, + t.true(graph.isOptionalDependency("library.a", "library.b"), "Dependency from library.a to library.b should still be optional"); - t.is(graph.isOptionalDependency("library.a", "library.c"), true, + t.true(graph.isOptionalDependency("library.a", "library.c"), "Dependency from library.a to library.c should still be optional"); await traverseDepthFirst(t, graph, [ "library.d", "library.a" ]); + + t.true(graph._hasUnresolvedOptionalDependencies, + "Graph still has unresolved optional dependencies"); + + // Make library.c resolvable through library.d + graph.declareDependency("library.d", "library.c"); + + await graph.resolveOptionalDependencies(); + + t.true(graph.isOptionalDependency("library.a", "library.b"), + "Dependency from library.a to library.b should still be optional"); + + t.false(graph.isOptionalDependency("library.a", "library.c"), + "Dependency from library.a to library.c should be resolved now"); + + t.true(graph._hasUnresolvedOptionalDependencies, + "Graph still has unresolved optional dependencies"); + + await traverseDepthFirst(t, graph, [ + "library.c", + "library.d", + "library.a" + ]); }); test("resolveOptionalDependencies: Dependency of optional dependency has not been resolved", async (t) => { @@ -599,6 +626,9 @@ test("resolveOptionalDependencies: Cyclic optional dependency is not resolved", t.is(graph.isOptionalDependency("library.b", "library.c"), true, "Dependency from library.b to library.c should still be optional"); + t.true(graph._hasUnresolvedOptionalDependencies, + "Graph still has unresolved optional dependencies"); + await traverseDepthFirst(t, graph, [ "library.b", "library.c", @@ -630,6 +660,9 @@ test("resolveOptionalDependencies: Resolves transitive optional dependencies", a t.is(graph.isOptionalDependency("library.a", "library.d"), false, "Dependency from library.a to library.d should not be optional anymore"); + t.false(graph._hasUnresolvedOptionalDependencies, + "Graph has no unresolved optional dependencies"); + await traverseDepthFirst(t, graph, [ "library.d", "library.c", From cb11a32bc16d09b7ff430062c75dae334d617186 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 13 Dec 2022 16:04:24 +0100 Subject: [PATCH 0748/1272] [ui5-project][INTERNAL] ui5Framework: Log warning for deprecated and internal libs * Also fix a bug which caused optional framework dependencies to not be resolved * Do not log deprecation warnings for projects named "testsuite" (fixed this for projectGraphBuilder) --- .../project/lib/graph/helpers/ui5Framework.js | 31 +- .../project/lib/graph/projectGraphBuilder.js | 2 +- .../graph/helpers/ui5Framework.integration.js | 14 + .../test/lib/graph/helpers/ui5Framework.js | 280 +++++++++++++++++- .../test/lib/graph/projectGraphBuilder.js | 4 +- 5 files changed, 323 insertions(+), 8 deletions(-) diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index a026d481c49..99b3a3e88b8 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -106,12 +106,39 @@ const utils = { return; } + const isRoot = project === rootProject; frameworkDependencies.forEach((dependency) => { - if (utils.shouldIncludeDependency(dependency, project === rootProject)) { - projectGraph.declareDependency(project.getName(), dependency.name); + if (isRoot || !dependency.development) { + // Root project should include all dependencies + // Otherwise all non-development dependencies should be considered + + if (isRoot) { + // Check for deprecated/internal dependencies of the root project + const depProject = projectGraph.getProject(dependency.name); + if (depProject && depProject.isDeprecated() && rootProject.getName() !== "testsuite") { + // No warning for testsuite projects + log.warn(`Dependency ${depProject.getName()} is deprecated ` + + `and should not be used for new projects!`); + } + if (depProject && depProject.isSapInternal() && !rootProject.getAllowSapInternal()) { + // Do not warn if project defines "allowSapInternal" + log.warn(`Dependency ${depProject.getName()} is restricted for use by ` + + `SAP internal projects only! ` + + `If the project ${rootProject.getName()} is an SAP internal project, ` + + `add the attribute "allowSapInternal: true" to its metadata configuration`); + } + } + if (dependency.optional) { + if (projectGraph.getProject(dependency.name)) { + projectGraph.declareOptionalDependency(project.getName(), dependency.name); + } + } else { + projectGraph.declareDependency(project.getName(), dependency.name); + } } }); }); + await projectGraph.resolveOptionalDependencies(); }, ProjectProcessor }; diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index b1bba1f840a..5c00ae9c483 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -261,7 +261,7 @@ async function projectGraphBuilder(nodeProvider) { } if (project.isDeprecated() && parentProject === rootProject && - !parentProject.getName().endsWith("/testsuite")) { + parentProject.getName() !== "testsuite") { // Only warn for direct dependencies of the root project // No warning for testsuite projects log.warn( diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index 3926504cfcb..525366e0e72 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -428,6 +428,20 @@ function defineTest(testName, { "test-application", ], "Traversed graph in correct order"); + t.deepEqual(projectGraph.getDependencies("test-application"), [ + "test-dependency", + "test-dependency-no-framework", + "sap.ui.lib1", + "sap.ui.lib8", + "sap.ui.lib4", + ], `Non-framework dependency has correct dependencies`); + + t.deepEqual(projectGraph.getDependencies("test-dependency"), [ + "sap.ui.lib1", + "sap.ui.lib2", + "sap.ui.lib8", + ], `Non-framework dependency has correct dependencies`); + const frameworkLibAlreadyAddedInfoLogged = (logStub.info.getCalls() .map(($) => $.firstArg) .findIndex(($) => $.includes("defines a dependency to the UI5 framework library")) !== -1); diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index 2d44d5da29b..66519887c24 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -14,14 +14,15 @@ const libraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "library test.beforeEach(async (t) => { const sinon = t.context.sinon = sinonGlobal.createSandbox(); - const logStub = { + t.context.log = { info: sinon.stub(), + warn: sinon.stub(), verbose: sinon.stub(), isLevelEnabled: sinon.stub().returns(false), _getLogger: sinon.stub() }; const ui5Logger = { - getLogger: sinon.stub().returns(logStub) + getLogger: sinon.stub().returns(t.context.log) }; t.context.Sapui5ResolverStub = sinon.stub(); @@ -423,7 +424,6 @@ test.serial("utils.getFrameworkLibrariesFromTree: Framework project", async (t) t.deepEqual(ui5Dependencies, []); }); - test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dependency with libraries", async (t) => { const {utils} = t.context; const dependencyTree = { @@ -528,4 +528,278 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dep t.deepEqual(ui5Dependencies, ["lib1", "lib2", "lib6", "lib3", "lib5"]); }); +test.serial("utils.declareFrameworkDependenciesInGraph", async (t) => { + const {utils, sinon, log} = t.context; + const projectTree = { + id: "test-project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.100.0", + libraries: [{ + name: "lib1" + }, { + name: "lib2", + optional: true + }, { + name: "lib3", + development: true + }] + } + }, + dependencies: [{ + id: "library.a", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "library.a" + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "lib2" + }, { + name: "lib3", + optional: true + }, { + name: "lib4", + development: true + }, { + name: "lib5", + optional: true + }] + } + }, + dependencies: [] + }] + }; + const frameworkTree = { + id: "dummy-framework-tree-root", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "dummy-framework-tree-root" + } + }, + dependencies: [{ + id: "@openui5/lib1", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib1", + deprecated: true + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "should.be.ignored" + }] + } + } + }, { + id: "@openui5/lib2", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib2", + sapInternal: true + } + } + }, { + id: "@openui5/lib3", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib3", + deprecated: true + } + } + }] + }; + const projectGraph = await projectGraphBuilder(new DependencyTreeProvider({ + dependencyTree: projectTree + })); + const frameworkGraph = await projectGraphBuilder(new DependencyTreeProvider({ + dependencyTree: frameworkTree + })); + projectGraph.join(frameworkGraph); + + const declareDependencySpy = sinon.spy(projectGraph, "declareDependency"); + const declareOptionalDependencySpy = sinon.spy(projectGraph, "declareOptionalDependency"); + const resolveOptionalDependenciesSpy = sinon.spy(projectGraph, "resolveOptionalDependencies"); + await utils.declareFrameworkDependenciesInGraph(projectGraph); + + t.is(declareDependencySpy.callCount, 5, "declareDependency got called five times"); + t.deepEqual(declareDependencySpy.getCall(0).args, ["application.a", "lib1"], + "declareDependency got called with correct arguments on first call"); + t.deepEqual(declareDependencySpy.getCall(1).args, ["application.a", "lib3"], + "declareDependency got called with correct arguments on second call"); + t.deepEqual(declareDependencySpy.getCall(2).args, ["library.a", "lib2"], + "declareDependency got called with correct arguments on third call"); + t.deepEqual(declareDependencySpy.getCall(3).args, ["application.a", "lib2"], + "declareDependency got called with correct arguments on fourth call"); + t.deepEqual(declareDependencySpy.getCall(4).args, ["library.a", "lib3"], + "declareDependency got called with correct arguments on fifth call"); + t.is(declareOptionalDependencySpy.callCount, 2, "declareOptionalDependency got called "); + t.deepEqual(declareOptionalDependencySpy.getCall(0).args, ["application.a", "lib2"], + "declareOptionalDependency got called with correct arguments on first call"); + t.deepEqual(declareOptionalDependencySpy.getCall(1).args, ["library.a", "lib3"], + "declareOptionalDependency got called with correct arguments on second call"); + t.is(resolveOptionalDependenciesSpy.callCount, 1, + "resolveOptionalDependenciesSpy got called once"); + + t.is(log.warn.callCount, 3, + "Three warnings got logged"); + t.is(log.warn.getCall(0).args[0], "Dependency lib1 is deprecated and should not be used for new projects!", + "Expected first warning logged"); + t.is(log.warn.getCall(1).args[0], + `Dependency lib2 is restricted for use by SAP internal projects only! If the project application.a is ` + + `an SAP internal project, add the attribute "allowSapInternal: true" to its metadata configuration`, + "Expected first warning logged"); + t.is(log.warn.getCall(2).args[0], "Dependency lib3 is deprecated and should not be used for new projects!", + "Expected first warning logged"); + + t.deepEqual(projectGraph.getDependencies("application.a"), [ + "library.a", + "lib1", + "lib3", + "lib2" + ], `Root project has correct dependencies`); + + t.deepEqual(projectGraph.getDependencies("library.a"), [ + "lib2", + "lib3" + ], `Non-framework dependency has correct dependencies`); +}); + +test.serial("utils.declareFrameworkDependenciesInGraph: No deprecation warnings for testsuite projects", async (t) => { + const {utils, log} = t.context; + + const projectTree = { + id: "test-project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "testsuite" + }, + framework: { + name: "SAPUI5", + version: "1.100.0", + libraries: [{ + name: "lib1" + }, { + name: "lib2", + optional: true + }, { + name: "lib3", + development: true + }] + } + }, + dependencies: [] + }; + const frameworkTree = { + id: "dummy-framework-tree-root", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "dummy-framework-tree-root" + } + }, + dependencies: [{ + id: "@openui5/lib1", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib1", + deprecated: true + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "should.be.ignored" + }] + } + } + }, { + id: "@openui5/lib2", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib2", + sapInternal: true + } + } + }, { + id: "@openui5/lib3", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib3", + deprecated: true + } + } + }] + }; + const projectGraph = await projectGraphBuilder(new DependencyTreeProvider({ + dependencyTree: projectTree + })); + const frameworkGraph = await projectGraphBuilder(new DependencyTreeProvider({ + dependencyTree: frameworkTree + })); + projectGraph.join(frameworkGraph); + + await utils.declareFrameworkDependenciesInGraph(projectGraph); + + t.is(log.warn.callCount, 1, + "One warning got logged"); + + t.is(log.warn.getCall(0).args[0], + `Dependency lib2 is restricted for use by SAP internal projects only! If the project testsuite is ` + + `an SAP internal project, add the attribute "allowSapInternal: true" to its metadata configuration`, + "Expected first warning logged"); + + t.deepEqual(projectGraph.getDependencies("testsuite"), [ + "lib1", + "lib3" + ], `Root project has correct dependencies`); +}); + // TODO test: ProjectProcessor diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index e1a366dc388..a967308f3a4 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -175,7 +175,7 @@ test.serial("No warnings logged", async (t) => { const node1 = createNode({ id: "id1", - name: "@my-comp/testsuite" // "/testsuite" suffix should suppress deprecation warnings + name: "testsuite" // "testsuite" name should suppress deprecation warnings }); node1.configuration.metadata.allowSapInternal = true; getRootNode.resolves(node1); @@ -196,7 +196,7 @@ test.serial("No warnings logged", async (t) => { const graph = await projectGraphBuilder(t.context.provider); await traverseBreadthFirst(t, graph, [ - "@my-comp/testsuite", + "testsuite", "project-2", "project-3" ]); From a219634b174dbdb9a0a2fa9d16d476a94847d4b8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 13 Dec 2022 16:26:35 +0100 Subject: [PATCH 0749/1272] [ui5-project][INTERNAL] ProjectGraph: Comments --- packages/project/lib/graph/ProjectGraph.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 15367654cf4..0f8e9eafdf2 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -303,9 +303,9 @@ class ProjectGraph { }); let unresolvedOptDeps = false; - for (const [projectName, dependencies] of Object.entries(this._optAdjList)) { - for (let i = dependencies.length - 1; i >= 0; i--) { - const targetProjectName = dependencies[i]; + for (const [projectName, optDependencies] of Object.entries(this._optAdjList)) { + for (let i = optDependencies.length - 1; i >= 0; i--) { + const targetProjectName = optDependencies[i]; if (resolvedProjects.has(targetProjectName)) { // Target node is already reachable in the graph // => Resolve optional dependency @@ -321,7 +321,9 @@ class ProjectGraph { unresolvedOptDeps = true; } else { this.declareDependency(projectName, targetProjectName); - dependencies.splice(i, 1); + // This optional dependency has now been resolved + // => Remove it from the list of optional dependencies + optDependencies.splice(i, 1); } } else { unresolvedOptDeps = true; From 9e2935f74cc50b34065efd4b139263aebcb28432 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 6 Dec 2022 12:10:17 +0100 Subject: [PATCH 0750/1272] [ui5-project][INTERNAL] Use new taskRepository API See https://github.com/SAP/ui5-builder/pull/842 --- packages/project/lib/build/ProjectBuilder.js | 11 ++-- packages/project/lib/build/TaskRunner.js | 7 +++ .../lib/build/helpers/createBuildManifest.js | 23 +++++++-- packages/project/lib/graph/ProjectGraph.js | 33 +++++++----- .../project/test/lib/build/ProjectBuilder.js | 51 +++++++++++-------- packages/project/test/lib/build/TaskRunner.js | 22 +++++++- .../createBuildManifest.integration.js | 12 ++++- .../lib/build/helpers/createBuildManifest.js | 50 +++++++++++++----- .../project/test/lib/graph/ProjectGraph.js | 2 +- 9 files changed, 153 insertions(+), 58 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 1655c1e9ec1..fb029f53676 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -34,11 +34,12 @@ class ProjectBuilder { * Executes a project build, including all necessary or requested dependencies * * @public - * @param {@ui5/project/graph/ProjectGraph} graph Project graph - * @param {@ui5/builder/tasks/taskRepository} taskRepository Task Repository module - * @param {@ui5/project/build/ProjectBuilder~BuildConfiguration} [buildConfig] Build configuration + * @param {object} parameters + * @param {@ui5/project/graph/ProjectGraph} parameters.graph Project graph + * @param {@ui5/project/build/ProjectBuilder~BuildConfiguration} [parameters.buildConfig] Build configuration + * @param {@ui5/builder/tasks/taskRepository} parameters.taskRepository Task Repository module to use */ - constructor(graph, taskRepository, buildConfig) { + constructor({graph, buildConfig, taskRepository}) { if (!graph) { throw new Error(`Missing parameter 'graph'`); } @@ -302,7 +303,7 @@ class ProjectBuilder { const { default: createBuildManifest } = await import("./helpers/createBuildManifest.js"); - const metadata = await createBuildManifest(project, buildConfig); + const metadata = await createBuildManifest(project, buildConfig, this._buildContext.getTaskRepository()); await target.write(resourceFactory.createResource({ path: `/.ui5/build-manifest.json`, string: JSON.stringify(metadata, null, "\t") diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index a86a5a05256..aac5eeb8e0e 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -338,6 +338,13 @@ class TaskRunner { const refTaskName = taskDef.beforeTask || taskDef.afterTask; let refTaskIdx = this._taskExecutionOrder.indexOf(refTaskName); if (refTaskIdx === -1) { + if (this._taskRepository.getRemovedTaskNames().includes(refTaskName)) { + throw new Error( + `Standard task ${refTaskName}, referenced by custom task ${newTaskName} ` + + `in project ${project.getName()}, ` + + `has been removed in this version of UI5 Tooling and can't be referenced anymore. ` + + `Please see the migration guide at https://sap.github.io/ui5-tooling/updates/migrate-v3/`); + } throw new Error(`Could not find task ${refTaskName}, referenced by custom task ${newTaskName}, ` + `to be scheduled for project ${project.getName()}`); } diff --git a/packages/project/lib/build/helpers/createBuildManifest.js b/packages/project/lib/build/helpers/createBuildManifest.js index c1f1d08e771..ce80a98de59 100644 --- a/packages/project/lib/build/helpers/createBuildManifest.js +++ b/packages/project/lib/build/helpers/createBuildManifest.js @@ -16,7 +16,16 @@ function getSortedTags(project) { return Object.fromEntries(entities); } -export default async function(project, buildConfig) { +export default async function(project, buildConfig, taskRepository) { + if (!project) { + throw new Error(`Missing parameter 'project'`); + } + if (!buildConfig) { + throw new Error(`Missing parameter 'buildConfig'`); + } + if (!taskRepository) { + throw new Error(`Missing parameter 'taskRepository'`); + } const projectName = project.getName(); const type = project.getType(); @@ -36,6 +45,7 @@ export default async function(project, buildConfig) { `Project type ${type} is currently not supported`); } + const {builderVersion, fsVersion: builderFsVersion} = await taskRepository.getVersions(); const metadata = { project: { specVersion: project.getSpecVersion().toString(), @@ -50,10 +60,10 @@ export default async function(project, buildConfig) { } }, buildManifest: { - manifestVersion: "0.1", + manifestVersion: "0.2", timestamp: new Date().toISOString(), versions: { - builderVersion: await getVersion("@ui5/builder"), + builderVersion: builderVersion, projectVersion: await getVersion("@ui5/project"), fsVersion: await getVersion("@ui5/fs"), }, @@ -64,5 +74,12 @@ export default async function(project, buildConfig) { } }; + if (metadata.buildManifest.versions.fsVersion !== builderFsVersion) { + // Added in manifestVersion 0.2: + // @ui5/project and @ui5/builder use different versions of @ui5/fs. + // This should be mentioned in the build manifest: + metadata.buildManifest.versions.builderFsVersion = builderFsVersion; + } + return metadata; } diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 0f8e9eafdf2..d49b6c57467 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -1,4 +1,3 @@ -import * as taskRepository from "@ui5/builder/internal/taskRepository"; import logger from "@ui5/logger"; const log = logger.getLogger("graph:ProjectGraph"); @@ -21,8 +20,6 @@ class ProjectGraph { } this._rootProjectName = rootProjectName; - this._taskRepository = taskRepository; - this._projects = Object.create(null); // maps project name to instance this._adjList = Object.create(null); // maps project name to edges/dependencies this._optAdjList = Object.create(null); // maps project name to optional dependencies @@ -31,6 +28,7 @@ class ProjectGraph { this._sealed = false; this._hasUnresolvedOptionalDependencies = false; // Performance optimization flag + this._taskRepository = null; } /** @@ -492,11 +490,14 @@ class ProjectGraph { } // Only to be used by @ui5/builder tests to inject its version of the taskRepository - setTaskRepository(taskRepo) { - this._taskRepository = taskRepo; + setTaskRepository(taskRepository) { + this._taskRepository = taskRepository; } - getTaskRepository() { + async _getTaskRepository() { + if (!this._taskRepository) { + this._taskRepository = await import("@ui5/builder/internal/taskRepository"); + } return this._taskRepository; } @@ -531,7 +532,7 @@ class ProjectGraph { selfContained = false, cssVariables = false, jsdoc = false, createBuildManifest = false, includedTasks = [], excludedTasks = [] }) { - this.seal(); + this.seal(); // Do not allow further changes to the graph if (this._built) { throw new Error( `Project graph with root node ${this._rootProjectName} has already been built. ` + @@ -541,10 +542,14 @@ class ProjectGraph { const { default: ProjectBuilder } = await import("../build/ProjectBuilder.js"); - const builder = new ProjectBuilder(this, this.getTaskRepository(), { - selfContained, cssVariables, jsdoc, - createBuildManifest, - includedTasks, excludedTasks, + const builder = new ProjectBuilder({ + graph: this, + taskRepository: await this._getTaskRepository(), + buildConfig: { + selfContained, cssVariables, jsdoc, + createBuildManifest, + includedTasks, excludedTasks, + } }); await builder.build({ destPath, cleanDest, @@ -563,7 +568,9 @@ class ProjectGraph { } /** - * Check whether the project graph has been sealed + * Check whether the project graph has been sealed. + * This means the graph is read-only. Neither projects, nor dependencies between projects + * can be added or removed. * * @public * @returns {boolean} True if the project graph has been sealed @@ -580,7 +587,7 @@ class ProjectGraph { */ _checkSealed() { if (this._sealed) { - throw new Error(`Project graph with root node ${this._rootProjectName} has been sealed`); + throw new Error(`Project graph with root node ${this._rootProjectName} has been sealed and is read-only`); } } diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index f77e8c652e3..6d10dbe5fec 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -78,13 +78,13 @@ test.afterEach.always((t) => { test("Missing graph parameters", (t) => { const {ProjectBuilder} = t.context; const err1 = t.throws(() => { - new ProjectBuilder(); + new ProjectBuilder({}); }); t.is(err1.message, "Missing parameter 'graph'", "Threw with expected error message"); const err2 = t.throws(() => { - new ProjectBuilder("graph"); + new ProjectBuilder({graph: "graph"}); }); t.is(err2.message, "Missing parameter 'taskRepository'", "Threw with expected error message"); @@ -93,7 +93,7 @@ test("Missing graph parameters", (t) => { test("build", async (t) => { const {graph, taskRepository, ProjectBuilder, sinon} = t.context; - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const filterProjectStub = sinon.stub().returns(true); const getProjectFilterStub = sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); @@ -156,7 +156,7 @@ test("build", async (t) => { test("build: Missing dest parameter", async (t) => { const {graph, taskRepository, ProjectBuilder} = t.context; - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const err = await t.throwsAsync(builder.build({ destPath: "dest/path", @@ -174,7 +174,7 @@ test("build: Missing dest parameter", async (t) => { test("build: Too many dependency parameters", async (t) => { const {graph, taskRepository, ProjectBuilder} = t.context; - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const err = await t.throwsAsync(builder.build({ includedDependencies: ["dep a"], @@ -187,7 +187,7 @@ test("build: Too many dependency parameters", async (t) => { test("build: Failure", async (t) => { const {graph, taskRepository, ProjectBuilder, sinon} = t.context; - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const filterProjectStub = sinon.stub().returns(true); sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); @@ -229,7 +229,7 @@ test("build: Failure", async (t) => { test.serial("build: Multiple projects", async (t) => { const {graph, taskRepository, ProjectBuilder, sinon} = t.context; - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const filterProjectStub = sinon.stub().returns(true).onFirstCall().returns(false); const getProjectFilterStub = sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); @@ -327,7 +327,7 @@ test.serial("build: Multiple projects", async (t) => { test("_createRequiredBuildContexts", async (t) => { const {graph, taskRepository, ProjectBuilder, sinon} = t.context; - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const requiresBuildStub = sinon.stub().returns(true); const getRequiredDependenciesStub = sinon.stub() @@ -380,7 +380,7 @@ test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { "../../../lib/build/helpers/composeProjectList.js": composeProjectListStub }); - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const filterProject = await builder._getProjectFilter({ complexDependencyIncludes: "complexDependencyIncludes", @@ -411,7 +411,7 @@ test.serial("_getProjectFilter with explicit include/exclude", async (t) => { "../../../lib/build/helpers/composeProjectList.js": composeProjectListStub }); - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const filterProject = await builder._getProjectFilter({ explicitIncludes: "explicitIncludes", @@ -437,9 +437,12 @@ test("_writeResults", async (t) => { const {ProjectBuilder, sinon} = t.context; t.context.getRootTypeStub = sinon.stub().returns("library"); const {graph, taskRepository} = t.context; - const builder = new ProjectBuilder(graph, taskRepository, { - createBuildManifest: false, - otherBuildConfig: "yes" + const builder = new ProjectBuilder({ + graph, taskRepository, + buildConfig: { + createBuildManifest: false, + otherBuildConfig: "yes" + } }); const dummyResources = [{ @@ -513,9 +516,12 @@ test.serial("_writeResults: Create build manifest", async (t) => { } }); - const builder = new ProjectBuilder(graph, taskRepository, { - createBuildManifest: true, - otherBuildConfig: "yes" + const builder = new ProjectBuilder({ + graph, taskRepository, + buildConfig: { + createBuildManifest: true, + otherBuildConfig: "yes" + } }); const dummyResources = [{ @@ -603,8 +609,11 @@ test("_writeResults: Do not create build manifest for non-root project", async ( t.context.getRootTypeStub = sinon.stub().returns("library"); const {graph, taskRepository} = t.context; - const builder = new ProjectBuilder(graph, taskRepository, { - createBuildManifest: true + const builder = new ProjectBuilder({ + graph, taskRepository, + buildConfig: { + createBuildManifest: true + } }); const dummyResources = [{ @@ -650,7 +659,7 @@ test("_writeResults: Do not create build manifest for non-root project", async ( test("_executeCleanupTasks", async (t) => { const {graph, taskRepository, ProjectBuilder, sinon} = t.context; - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const executeCleanupTasksStub = sinon.stub(builder._buildContext, "executeCleanupTasks"); await builder._executeCleanupTasks(); @@ -669,7 +678,7 @@ test("_registerCleanupSigHooks/_deregisterCleanupSigHooks", (t) => { const listenersBefore = getProcessListenerCount(); const {graph, taskRepository, ProjectBuilder} = t.context; - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const signals = builder._registerCleanupSigHooks(); @@ -687,7 +696,7 @@ test("_registerCleanupSigHooks/_deregisterCleanupSigHooks", (t) => { test("_getElapsedTime", (t) => { const {graph, taskRepository, ProjectBuilder} = t.context; - const builder = new ProjectBuilder(graph, taskRepository); + const builder = new ProjectBuilder({graph, taskRepository}); const res = builder._getElapsedTime(process.hrtime()); t.truthy(res, "Returned a value"); diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 4e05b1ee7aa..04c89da1ed7 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -78,7 +78,8 @@ test.beforeEach(async (t) => { getTask: sinon.stub().callsFake(async (taskName) => { throw new Error(`taskRepository: Unknown Task ${taskName}`); }), - getAllTaskNames: sinon.stub().returns(["replaceVersion"]) + getAllTaskNames: sinon.stub().returns(["replaceVersion"]), + getRemovedTaskNames: sinon.stub().returns(["removedTask"]), }; t.context.customTaskSpecVersionGteStub = sinon.stub().returns(true); @@ -501,6 +502,25 @@ test("_initTasks: Custom tasks is unknown", async (t) => { "Threw with expected error message"); }); +test("_initTasks: Custom tasks with removed beforeTask", async (t) => { + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const project = getMockProject("application"); + project.getCustomTasks = () => [ + {name: "myTask", beforeTask: "removedTask"} + ]; + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, parentLogger, buildConfig + }); + const err = await t.throwsAsync(async () => { + await taskRunner._initTasks(); + }); + t.is(err.message, + `Standard task removedTask, referenced by custom task myTask in project project.b, ` + + `has been removed in this version of UI5 Tooling and can't be referenced anymore. ` + + `Please see the migration guide at https://sap.github.io/ui5-tooling/updates/migrate-v3/`, + "Threw with expected error message"); +}); + test("_initTasks: Create dependencies reader for all dependencies", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; const project = getMockProject("application"); diff --git a/packages/project/test/lib/build/helpers/createBuildManifest.integration.js b/packages/project/test/lib/build/helpers/createBuildManifest.integration.js index 5b1674be320..c2bc850799c 100644 --- a/packages/project/test/lib/build/helpers/createBuildManifest.integration.js +++ b/packages/project/test/lib/build/helpers/createBuildManifest.integration.js @@ -48,7 +48,11 @@ test("Create project from application project providing a build manifest", async const inputProject = await Specification.create(applicationAConfig); inputProject.getResourceTagCollection().setTag("/resources/id1/foo.js", "ui5:HasDebugVariant"); - const metadata = await createBuildManifest(inputProject, buildConfig); + const taskRepository = { + getVersions: async () => ({a: "a", b: "b"}) + }; + + const metadata = await createBuildManifest(inputProject, buildConfig, taskRepository); const m = new Module({ id: "build-descr-application.a.id", version: "2.0.0", @@ -76,7 +80,11 @@ test("Create project from library project providing a build manifest", async (t) const inputProject = await Specification.create(libraryEConfig); inputProject.getResourceTagCollection().setTag("/resources/library/e/file.js", "ui5:HasDebugVariant"); - const metadata = await createBuildManifest(inputProject, buildConfig); + const taskRepository = { + getVersions: async () => ({a: "a", b: "b"}) + }; + + const metadata = await createBuildManifest(inputProject, buildConfig, taskRepository); const m = new Module({ id: "build-descr-library.e.id", version: "2.0.0", diff --git a/packages/project/test/lib/build/helpers/createBuildManifest.js b/packages/project/test/lib/build/helpers/createBuildManifest.js index 2cc3501863f..822dbf600b5 100644 --- a/packages/project/test/lib/build/helpers/createBuildManifest.js +++ b/packages/project/test/lib/build/helpers/createBuildManifest.js @@ -43,18 +43,41 @@ const libraryProjectInput = { } }; +test("Missing parameter: project", async (t) => { + await t.throwsAsync(createBuildManifest(), { + message: "Missing parameter 'project'" + }); +}); + +test("Missing parameter: buildConfig", async (t) => { + const project = await Specification.create(applicationProjectInput); + + await t.throwsAsync(createBuildManifest(project), { + message: "Missing parameter 'buildConfig'" + }); +}); + +test("Missing parameter: taskRepository", async (t) => { + const project = await Specification.create(applicationProjectInput); + + await t.throwsAsync(createBuildManifest(project, "buildConfig"), { + message: "Missing parameter 'taskRepository'" + }); +}); + test("Create application from project with build manifest", async (t) => { const project = await Specification.create(applicationProjectInput); project.getResourceTagCollection().setTag("/resources/id1/foo.js", "ui5:HasDebugVariant"); - const metadata = await createBuildManifest(project, "buildConfig"); + const taskRepository = { + getVersions: async () => ({builderVersion: "", fsVersion: ""}) + }; + + const metadata = await createBuildManifest(project, "buildConfig", taskRepository); t.truthy(new Date(metadata.buildManifest.timestamp), "Timestamp is valid"); metadata.buildManifest.timestamp = ""; - t.not(semver.valid(metadata.buildManifest.versions.builderVersion), null, "builder version should be filled"); - metadata.buildManifest.versions.builderVersion = ""; - t.not(semver.valid(metadata.buildManifest.versions.fsVersion), null, "fs version should be filled"); metadata.buildManifest.versions.fsVersion = ""; @@ -77,15 +100,16 @@ test("Create application from project with build manifest", async (t) => { } }, buildManifest: { - manifestVersion: "0.1", + manifestVersion: "0.2", buildConfig: "buildConfig", namespace: "id1", timestamp: "", version: "1.0.0", versions: { - builderVersion: "", + builderVersion: "", fsVersion: "", projectVersion: "", + builderFsVersion: "", }, tags: { "/resources/id1/foo.js": { @@ -100,14 +124,15 @@ test("Create library from project with build manifest", async (t) => { const project = await Specification.create(libraryProjectInput); project.getResourceTagCollection().setTag("/resources/library/d/foo.js", "ui5:HasDebugVariant"); - const metadata = await createBuildManifest(project, "buildConfig"); + const taskRepository = { + getVersions: async () => ({builderVersion: "", fsVersion: ""}) + }; + + const metadata = await createBuildManifest(project, "buildConfig", taskRepository); t.truthy(new Date(metadata.buildManifest.timestamp), "Timestamp is valid"); metadata.buildManifest.timestamp = ""; - t.not(semver.valid(metadata.buildManifest.versions.builderVersion), null, "builder version should be filled"); - metadata.buildManifest.versions.builderVersion = ""; - t.not(semver.valid(metadata.buildManifest.versions.fsVersion), null, "fs version should be filled"); metadata.buildManifest.versions.fsVersion = ""; @@ -131,15 +156,16 @@ test("Create library from project with build manifest", async (t) => { } }, buildManifest: { - manifestVersion: "0.1", + manifestVersion: "0.2", buildConfig: "buildConfig", namespace: "library/d", timestamp: "", version: "1.0.0", versions: { - builderVersion: "", + builderVersion: "", fsVersion: "", projectVersion: "", + builderFsVersion: "", }, tags: { "/resources/library/d/foo.js": { diff --git a/packages/project/test/lib/graph/ProjectGraph.js b/packages/project/test/lib/graph/ProjectGraph.js index 150afc223ba..db79e47bad9 100644 --- a/packages/project/test/lib/graph/ProjectGraph.js +++ b/packages/project/test/lib/graph/ProjectGraph.js @@ -1195,7 +1195,7 @@ test("Seal/isSealed", async (t) => { graph.seal(); t.is(graph.isSealed(), true, "Graph should be sealed"); - const expectedSealMsg = "Project graph with root node library.a has been sealed"; + const expectedSealMsg = "Project graph with root node library.a has been sealed and is read-only"; const libX = await createProject("library.x"); t.throws(() => { From d8eb78b8332945c83f0a5260273ef00a0c87d039 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 9 Dec 2022 10:07:59 +0100 Subject: [PATCH 0751/1272] [ui5-project][INTERNAL] ProjectBuilder: Dissallow 'createBuildManifest' in conjunction with including dependencies The build result should only contain resources of the project the manifest refers to. --- packages/project/lib/build/ProjectBuilder.js | 11 ++++++++-- .../project/test/lib/build/ProjectBuilder.js | 22 +++++++++++++++++++ 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index fb029f53676..c4b2a4b2aa9 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -23,8 +23,9 @@ class ProjectBuilder { * @property {boolean} [cssVariables=false] Flag to activate CSS variables generation * @property {boolean} [jsdoc=false] Flag to activate JSDoc build * @property {boolean} [createBuildManifest=false] - * Whether to create a build manifest file for the root project. - * This is currently only supported for projects of type 'library' and 'theme-library' + * Whether to create a build manifest file for the root project. + * This is currently only supported for projects of type 'library' and 'theme-library' + * No other dependencies can be included in the build result. * @property {Array.} [includedTasks=[]] List of tasks to be included * @property {Array.} [excludedTasks=[]] List of tasks to be excluded. * If the wildcard '*' is provided, only the included tasks will be executed. @@ -102,6 +103,12 @@ class ProjectBuilder { return filterProject(projectName); }); + if (this._buildContext.getBuildConfig().createBuildManifest && requestedProjects.length > 1) { + throw new Error( + `It is currently not supported to request the creation of a build manifest ` + + `while including any dependencies into the build result`); + } + const projectBuildContexts = await this._createRequiredBuildContexts(requestedProjects); const cleanupSigHooks = this._registerCleanupSigHooks(); const fsTarget = resourceFactory.createAdapter({ diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 6d10dbe5fec..2b0c1812b67 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -184,6 +184,28 @@ test("build: Too many dependency parameters", async (t) => { t.is(err.message, "Missing parameter 'destPath'", "Threw with expected error message"); }); +test("build: createBuildManifest in conjunction with dependencies", async (t) => { + const {graph, taskRepository, ProjectBuilder, sinon} = t.context; + t.context.getRootTypeStub = sinon.stub().returns("library"); + const builder = new ProjectBuilder({graph, taskRepository, + buildConfig: { + createBuildManifest: true + } + }); + + const filterProjectStub = sinon.stub().returns(true); + sinon.stub(builder, "_getProjectFilter").resolves(filterProjectStub); + const err = await t.throwsAsync(builder.build({ + destPath: "dest/path", + includedDependencies: ["dep a"] + })); + + t.is(err.message, + "It is currently not supported to request the creation of a build manifest while " + + "including any dependencies into the build result", + "Threw with expected error message"); +}); + test("build: Failure", async (t) => { const {graph, taskRepository, ProjectBuilder, sinon} = t.context; From 6f95cb36521ceba3f75ef62234676e4229ffd171 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 15 Dec 2022 10:07:41 +0100 Subject: [PATCH 0752/1272] [ui5-project][INTERNAL] ProjectBuilder: Add 'dependencyIncludes' JSDoc (#524) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Günter Klatt <57760635+KlattG@users.noreply.github.com> --- packages/project/lib/build/ProjectBuilder.js | 85 ++++++++++++++++--- .../lib/build/helpers/composeProjectList.js | 41 ++------- packages/project/lib/graph/ProjectGraph.js | 9 +- .../project/test/lib/build/ProjectBuilder.js | 16 ++-- 4 files changed, 93 insertions(+), 58 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index c4b2a4b2aa9..2fc76a9ba80 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -31,6 +31,66 @@ class ProjectBuilder { * If the wildcard '*' is provided, only the included tasks will be executed. */ + /** + * As an alternative to providing plain lists of names of dependencies to include and exclude, you can provide a + * more complex "Dependency Includes" object to define which dependencies should be part of the build result. + *
+ * This information is then used to compile lists of includedDependencies and + * excludedDependencies, which are applied during the build process. + *

+ * Regular expression-parameters are directly applied to a list of all project dependencies + * so that they don't need to be evaluated in later processing steps. + *

+ * Generally, includes are handled with a higher priority than excludes. Additionally, operations for processing + * transitive dependencies are handled with a lower priority than explicitly mentioned dependencies. The "default" + * dependency-includes are appended at the end. + *

+ * The priority of the various dependency lists is applied in the following order. + * Note that a later exclude can't overrule an earlier include. + *
+ *
    + *
  1. includeDependency, includeDependencyRegExp
  2. + *
  3. excludeDependency, excludeDependencyRegExp
  4. + *
  5. includeDependencyTree
  6. + *
  7. excludeDependencyTree
  8. + *
  9. defaultIncludeDependency, defaultIncludeDependencyRegExp, + * defaultIncludeDependencyTree
  10. + *
+ * + * @public + * @typedef {object} @ui5/project/build/ProjectBuilder~DependencyIncludes + * @property {boolean} includeAllDependencies + * Whether all dependencies should be part of the build result + * This parameter has the lowest priority and basically includes all remaining (not excluded) projects as include + * @property {string[]} includeDependency + * The dependencies to be considered in includedDependencies; the + * * character can be used as wildcard for all dependencies and + * is an alias for the CLI option --all + * @property {string[]} includeDependencyRegExp + * Strings which are interpreted as regular expressions + * to describe the selection of dependencies to be considered in includedDependencies + * @property {string[]} includeDependencyTree + * The dependencies to be considered in includedDependencies; + * transitive dependencies are also appended + * @property {string[]} excludeDependency + * The dependencies to be considered in excludedDependencies + * @property {string[]} excludeDependencyRegExp + * Strings which are interpreted as regular expressions + * to describe the selection of dependencies to be considered in excludedDependencies + * @property {string[]} excludeDependencyTree + * The dependencies to be considered in excludedDependencies; + * transitive dependencies are also appended + * @property {string[]} defaultIncludeDependency + * Same as includeDependency parameter; + * typically used in project build settings + * @property {string[]} defaultIncludeDependencyRegExp + * Same as includeDependencyRegExp parameter; + * typically used in project build settings + * @property {string[]} defaultIncludeDependencyTree + * Same as includeDependencyTree parameter; + * typically used in project build settings + */ + /** * Executes a project build, including all necessary or requested dependencies * @@ -64,25 +124,28 @@ class ProjectBuilder { * @param {string} parameters.destPath Target path * @param {boolean} [parameters.cleanDest=false] Decides whether project should clean the target path before build * @param {Array.} [parameters.includedDependencies=[]] - * List of names of projects to include in the build result - * If the wildcard '*' is provided, all dependencies will be included in the build result. + * List of names of projects to include in the build result + * If the wildcard '*' is provided, all dependencies will be included in the build result. * @param {Array.} [parameters.excludedDependencies=[]] - * List of names of projects to exclude from the build result. - * @param {object} [parameters.complexDependencyIncludes] TODO 3.0 - * @returns {Promise} Promise resolving to undefined once build has finished + * List of names of projects to exclude from the build result. + * @param {@ui5/project/build/ProjectBuilder~DependencyIncludes} [parameters.dependencyIncludes] + * Alternative to the includedDependencies and excludedDependencies parameters. + * Allows for a more sophisticated configuration for defining which dependencies should be + * part of the build result. If this is provided, the other mentioned parameters are ignored. + * @returns {Promise} Promise resolving once the build has finished */ async build({ destPath, cleanDest = false, includedDependencies = [], excludedDependencies = [], - complexDependencyIncludes + dependencyIncludes }) { if (!destPath) { throw new Error(`Missing parameter 'destPath'`); } - if (complexDependencyIncludes) { + if (dependencyIncludes) { if (includedDependencies.length || excludedDependencies.length) { throw new Error( - "Parameter 'complexDependencyIncludes' can't be used in conjunction " + + "Parameter 'dependencyIncludes' can't be used in conjunction " + "with parameters 'includedDependencies' or 'excludedDependencies"); } } @@ -95,7 +158,7 @@ class ProjectBuilder { const filterProject = await this._getProjectFilter({ explicitIncludes: includedDependencies, explicitExcludes: excludedDependencies, - complexDependencyIncludes + dependencyIncludes }); // Count total number of projects to build based on input @@ -246,13 +309,13 @@ class ProjectBuilder { } async _getProjectFilter({ - complexDependencyIncludes, + dependencyIncludes, explicitIncludes, explicitExcludes }) { const {includedDependencies, excludedDependencies} = await composeProjectList( this._graph, - complexDependencyIncludes || { + dependencyIncludes || { includeDependencyTree: explicitIncludes, excludeDependencyTree: explicitExcludes } diff --git a/packages/project/lib/build/helpers/composeProjectList.js b/packages/project/lib/build/helpers/composeProjectList.js index d099b299271..77e6b1b8f16 100644 --- a/packages/project/lib/build/helpers/composeProjectList.js +++ b/packages/project/lib/build/helpers/composeProjectList.js @@ -32,44 +32,13 @@ async function getFlattenedDependencyTree(graph) { } /** - * Creates dependency lists for 'includedDependencies' and 'excludedDependencies'. Regular expressions are directly - * applied to a list of all project dependencies so that they don't need to be evaluated in later processing steps. - * Generally, includes are handled with a higher priority than excludes. Additionally, operations for processing - * transitive dependencies are handled with a lower priority than explicitly mentioned dependencies. The default - * dependencies set in the build settings are appended in the end. + * Creates dependency lists for 'includedDependencies' and 'excludedDependencies'. * - * The priority of the various dependency lists is applied in the following order, but note that a later list can't - * overrule earlier ones: - *
    - *
  1. includeDependency, includeDependencyRegExp
  2. - *
  3. excludeDependency, excludeDependencyRegExp
  4. - *
  5. includeDependencyTree
  6. - *
  7. excludeDependencyTree
  8. - *
  9. defaultIncludeDependency, defaultIncludeDependencyRegExp, defaultIncludeDependencyTree
  10. - *
+ * See [ProjectBuilder~DependencyIncludes]{@link @ui5/project/build/ProjectBuilder~DependencyIncludes} + * for a detailed JSDoc. * - * @param {object} graph Project tree as generated by the - * [@ui5/project/normalizer]{@link @ui5/project/normalizer} - * @param {object} parameters Parameters - * @param {boolean} parameters.includeAllDependencies Whether all dependencies should be part of the build result - * This has the lowest priority and basically includes all remaining (not excluded) projects as include - * @param {string[]} parameters.includeDependency The dependencies to be considered in 'includedDependencies'; the - * "*" character can be used as wildcard for all dependencies and is an alias for the CLI option "--all" - * @param {string[]} parameters.includeDependencyRegExp Strings which are interpreted as regular expressions - * to describe the selection of dependencies to be considered in 'includedDependencies' - * @param {string[]} parameters.includeDependencyTree The dependencies to be considered in 'includedDependencies'; - * transitive dependencies are also appended - * @param {string[]} parameters.excludeDependency The dependencies to be considered in 'excludedDependencies' - * @param {string[]} parameters.excludeDependencyRegExp Strings which are interpreted as regular expressions - * to describe the selection of dependencies to be considered in 'excludedDependencies' - * @param {string[]} parameters.excludeDependencyTree The dependencies to be considered in 'excludedDependencies'; - * transitive dependencies are also appended - * @param {string[]} parameters.defaultIncludeDependency Same as 'includeDependency' parameter; used for build - * settings - * @param {string[]} parameters.defaultIncludeDependencyRegExp Same as 'includeDependencyRegExp' parameter; used - * for build settings - * @param {string[]} parameters.defaultIncludeDependencyTree Same as 'includeDependencyTree' parameter; used for - * build settings + * @param {@ui5/project/graph/ProjectGraph} graph + * @param {@ui5/project/build/ProjectBuilder~DependencyIncludes} dependencyIncludes * @returns {{includedDependencies:string[],excludedDependencies:string[]}} An object containing the * 'includedDependencies' and 'excludedDependencies' */ diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index d49b6c57467..a6bb2246247 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -513,7 +513,10 @@ class ProjectGraph { * If the wildcard '*' is provided, all dependencies will be included in the build result. * @param {Array.} [parameters.excludedDependencies=[]] * List of names of projects to exclude from the build result. - * @param {object} [parameters.complexDependencyIncludes] TODO 3.0 + * @param {@ui5/project/build/ProjectBuilder~DependencyIncludes} [parameters.dependencyIncludes] + * Alternative to the includedDependencies and excludedDependencies parameters. + * Allows for a more sophisticated configuration for defining which dependencies should be + * part of the build result. If this is provided, the other mentioned parameters will be ignored. * @param {boolean} [parameters.selfContained=false] Flag to activate self contained build * @param {boolean} [parameters.cssVariables=false] Flag to activate CSS variables generation * @param {boolean} [parameters.jsdoc=false] Flag to activate JSDoc build @@ -528,7 +531,7 @@ class ProjectGraph { async build({ destPath, cleanDest = false, includedDependencies = [], excludedDependencies = [], - complexDependencyIncludes, + dependencyIncludes, selfContained = false, cssVariables = false, jsdoc = false, createBuildManifest = false, includedTasks = [], excludedTasks = [] }) { @@ -554,7 +557,7 @@ class ProjectGraph { await builder.build({ destPath, cleanDest, includedDependencies, excludedDependencies, - complexDependencyIncludes, + dependencyIncludes, }); } diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 2b0c1812b67..d7b8f332bd2 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -128,7 +128,7 @@ test("build", async (t) => { t.deepEqual(getProjectFilterStub.getCall(0).args[0], { explicitIncludes: ["dep a"], explicitExcludes: ["dep b"], - complexDependencyIncludes: undefined + dependencyIncludes: undefined }, "_getProjectFilter got called with correct arguments"); t.is(createRequiredBuildContextsStub.callCount, 1, "_createRequiredBuildContexts got called once"); @@ -160,13 +160,13 @@ test("build: Missing dest parameter", async (t) => { const err = await t.throwsAsync(builder.build({ destPath: "dest/path", - complexDependencyIncludes: "complexDependencyIncludes", + dependencyIncludes: "dependencyIncludes", includedDependencies: ["dep a"], excludedDependencies: ["dep b"] })); t.is(err.message, - "Parameter 'complexDependencyIncludes' can't be used in conjunction " + + "Parameter 'dependencyIncludes' can't be used in conjunction " + "with parameters 'includedDependencies' or 'excludedDependencies", "Threw with expected error message"); }); @@ -307,7 +307,7 @@ test.serial("build: Multiple projects", async (t) => { logger.setLevel("verbose"); await builder.build({ destPath: "dest/path", - complexDependencyIncludes: "complexDependencyIncludes" + dependencyIncludes: "dependencyIncludes" }); logger.setLevel("info"); @@ -315,7 +315,7 @@ test.serial("build: Multiple projects", async (t) => { t.deepEqual(getProjectFilterStub.getCall(0).args[0], { explicitIncludes: [], explicitExcludes: [], - complexDependencyIncludes: "complexDependencyIncludes" + dependencyIncludes: "dependencyIncludes" }, "_getProjectFilter got called with correct arguments"); t.is(createRequiredBuildContextsStub.callCount, 1, "_createRequiredBuildContexts got called once"); @@ -392,7 +392,7 @@ test("_createRequiredBuildContexts", async (t) => { "Third call to BuildContext#createProjectContextStub with a log instance"); }); -test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { +test.serial("_getProjectFilter with dependencyIncludes", async (t) => { const {graph, taskRepository, sinon} = t.context; const composeProjectListStub = sinon.stub().returns({ includedDependencies: ["project.b", "project.c"], @@ -405,7 +405,7 @@ test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { const builder = new ProjectBuilder({graph, taskRepository}); const filterProject = await builder._getProjectFilter({ - complexDependencyIncludes: "complexDependencyIncludes", + dependencyIncludes: "dependencyIncludes", explicitIncludes: "explicitIncludes", explicitExcludes: "explicitExcludes", }); @@ -413,7 +413,7 @@ test.serial("_getProjectFilter with complexDependencyIncludes", async (t) => { t.is(composeProjectListStub.callCount, 1, "composeProjectList got called once"); t.is(composeProjectListStub.getCall(0).args[0], graph, "composeProjectList got called with correct graph argument"); - t.is(composeProjectListStub.getCall(0).args[1], "complexDependencyIncludes", + t.is(composeProjectListStub.getCall(0).args[1], "dependencyIncludes", "composeProjectList got called with correct include/exclude argument"); t.true(filterProject("project.a"), "project.a (root project) is always allowed"); From 3fcc5f42496317a83949e8cdf5ed77b9d6f41eb5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 15 Dec 2022 15:19:26 +0100 Subject: [PATCH 0753/1272] [ui5-project][INTERNAL] Move specifications/types/extensions/ to specifications/extensions/ --- packages/project/lib/specifications/Specification.js | 10 +++++----- .../{types => }/extensions/ProjectShim.js | 4 ++-- .../{types => }/extensions/ServerMiddleware.js | 4 ++-- .../lib/specifications/{types => }/extensions/Task.js | 4 ++-- .../project/test/lib/specifications/Specification.js | 6 +++--- .../{types => }/extensions/ProjectShim.js | 6 +++--- .../{types => }/extensions/ServerMiddleware.js | 8 ++++---- .../lib/specifications/{types => }/extensions/Task.js | 8 ++++---- 8 files changed, 25 insertions(+), 25 deletions(-) rename packages/project/lib/specifications/{types => }/extensions/ProjectShim.js (90%) rename packages/project/lib/specifications/{types => }/extensions/ServerMiddleware.js (87%) rename packages/project/lib/specifications/{types => }/extensions/Task.js (91%) rename packages/project/test/lib/specifications/{types => }/extensions/ProjectShim.js (92%) rename packages/project/test/lib/specifications/{types => }/extensions/ServerMiddleware.js (90%) rename packages/project/test/lib/specifications/{types => }/extensions/Task.js (92%) diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 3c16e69bd68..41989b80962 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -220,16 +220,16 @@ class Specification { switch (type) { case "application": { - return createAndInitializeSpec("Application.js", params); + return createAndInitializeSpec("types/Application.js", params); } case "library": { - return createAndInitializeSpec("Library.js", params); + return createAndInitializeSpec("types/Library.js", params); } case "theme-library": { - return createAndInitializeSpec("ThemeLibrary.js", params); + return createAndInitializeSpec("types/ThemeLibrary.js", params); } case "module": { - return createAndInitializeSpec("Module.js", params); + return createAndInitializeSpec("types/Module.js", params); } case "task": { return createAndInitializeSpec("extensions/Task.js", params); @@ -248,7 +248,7 @@ class Specification { } async function createAndInitializeSpec(moduleName, params) { - const {default: Spec} = await import(`./types/${moduleName}`); + const {default: Spec} = await import(`./${moduleName}`); return new Spec().init(params); } diff --git a/packages/project/lib/specifications/types/extensions/ProjectShim.js b/packages/project/lib/specifications/extensions/ProjectShim.js similarity index 90% rename from packages/project/lib/specifications/types/extensions/ProjectShim.js rename to packages/project/lib/specifications/extensions/ProjectShim.js index 63098bdf9eb..6bf00140fca 100644 --- a/packages/project/lib/specifications/types/extensions/ProjectShim.js +++ b/packages/project/lib/specifications/extensions/ProjectShim.js @@ -1,11 +1,11 @@ -import Extension from "../../Extension.js"; +import Extension from "../Extension.js"; /** * ProjectShim * * @public * @class - * @alias @ui5/project/specifications/types/extensions/ProjectShim + * @alias @ui5/project/specifications/extensions/ProjectShim * @extends @ui5/project/specifications/Extension * @hideconstructor */ diff --git a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/lib/specifications/extensions/ServerMiddleware.js similarity index 87% rename from packages/project/lib/specifications/types/extensions/ServerMiddleware.js rename to packages/project/lib/specifications/extensions/ServerMiddleware.js index 53dff57e6e9..ee4c83b7005 100644 --- a/packages/project/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/lib/specifications/extensions/ServerMiddleware.js @@ -1,5 +1,5 @@ import path from "node:path"; -import Extension from "../../Extension.js"; +import Extension from "../Extension.js"; import {pathToFileURL} from "node:url"; /** @@ -7,7 +7,7 @@ import {pathToFileURL} from "node:url"; * * @public * @class - * @alias @ui5/project/specifications/types/extensions/ServerMiddleware + * @alias @ui5/project/specifications/extensions/ServerMiddleware * @extends @ui5/project/specifications/Extension * @hideconstructor */ diff --git a/packages/project/lib/specifications/types/extensions/Task.js b/packages/project/lib/specifications/extensions/Task.js similarity index 91% rename from packages/project/lib/specifications/types/extensions/Task.js rename to packages/project/lib/specifications/extensions/Task.js index e6457c26702..b74ba68ffa4 100644 --- a/packages/project/lib/specifications/types/extensions/Task.js +++ b/packages/project/lib/specifications/extensions/Task.js @@ -1,5 +1,5 @@ import path from "node:path"; -import Extension from "../../Extension.js"; +import Extension from "../Extension.js"; import {pathToFileURL} from "node:url"; /** @@ -7,7 +7,7 @@ import {pathToFileURL} from "node:url"; * * @public * @class - * @alias @ui5/project/specifications/types/extensions/Task + * @alias @ui5/project/specifications/extensions/Task * @extends @ui5/project/specifications/Extension * @hideconstructor */ diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index b292b9e76b7..f31f4decbfd 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -7,9 +7,9 @@ import Application from "../../../lib/specifications/types/Application.js"; import Library from "../../../lib/specifications/types/Library.js"; import ThemeLibrary from "../../../lib/specifications/types/ThemeLibrary.js"; import Module from "../../../lib/specifications/types/Module.js"; -import Task from "../../../lib/specifications/types/extensions/Task.js"; -import ProjectShim from "../../../lib/specifications/types/extensions/ProjectShim.js"; -import ServerMiddleware from "../../../lib/specifications/types/extensions/ServerMiddleware.js"; +import Task from "../../../lib/specifications/extensions/Task.js"; +import ProjectShim from "../../../lib/specifications/extensions/ProjectShim.js"; +import ServerMiddleware from "../../../lib/specifications/extensions/ServerMiddleware.js"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); diff --git a/packages/project/test/lib/specifications/types/extensions/ProjectShim.js b/packages/project/test/lib/specifications/extensions/ProjectShim.js similarity index 92% rename from packages/project/test/lib/specifications/types/extensions/ProjectShim.js rename to packages/project/test/lib/specifications/extensions/ProjectShim.js index b988250cdab..e7d9f3ceef7 100644 --- a/packages/project/test/lib/specifications/types/extensions/ProjectShim.js +++ b/packages/project/test/lib/specifications/extensions/ProjectShim.js @@ -2,8 +2,8 @@ import test from "ava"; import path from "node:path"; import {fileURLToPath} from "node:url"; import sinon from "sinon"; -import Specification from "../../../../../lib/specifications/Specification.js"; -import ProjectShim from "../../../../../lib/specifications/types/extensions/ProjectShim.js"; +import Specification from "../../../../lib/specifications/Specification.js"; +import ProjectShim from "../../../../lib/specifications/extensions/ProjectShim.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); @@ -11,7 +11,7 @@ function clone(obj) { const __dirname = path.dirname(fileURLToPath(import.meta.url)); -const nonExistingPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "does-not-exist"); +const nonExistingPath = path.join(__dirname, "..", "..", "..", "fixtures", "does-not-exist"); const basicProjectShimInput = { id: "shim.a", version: "1.0.0", diff --git a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js b/packages/project/test/lib/specifications/extensions/ServerMiddleware.js similarity index 90% rename from packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js rename to packages/project/test/lib/specifications/extensions/ServerMiddleware.js index 9f509e63153..d1536682e33 100644 --- a/packages/project/test/lib/specifications/types/extensions/ServerMiddleware.js +++ b/packages/project/test/lib/specifications/extensions/ServerMiddleware.js @@ -2,8 +2,8 @@ import test from "ava"; import path from "node:path"; import {fileURLToPath} from "node:url"; import sinon from "sinon"; -import Specification from "../../../../../lib/specifications/Specification.js"; -import ServerMiddleware from "../../../../../lib/specifications/types/extensions/ServerMiddleware.js"; +import Specification from "../../../../lib/specifications/Specification.js"; +import ServerMiddleware from "../../../../lib/specifications/extensions/ServerMiddleware.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); @@ -11,8 +11,8 @@ function clone(obj) { const __dirname = path.dirname(fileURLToPath(import.meta.url)); -const genericCjsExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a"); -const genericEsmExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a.esm"); +const genericCjsExtensionPath = path.join(__dirname, "..", "..", "..", "fixtures", "extension.a"); +const genericEsmExtensionPath = path.join(__dirname, "..", "..", "..", "fixtures", "extension.a.esm"); const basicCjsServerMiddlewareInput = { id: "server.middleware.a", version: "1.0.0", diff --git a/packages/project/test/lib/specifications/types/extensions/Task.js b/packages/project/test/lib/specifications/extensions/Task.js similarity index 92% rename from packages/project/test/lib/specifications/types/extensions/Task.js rename to packages/project/test/lib/specifications/extensions/Task.js index a90e79f5673..e0267bd7879 100644 --- a/packages/project/test/lib/specifications/types/extensions/Task.js +++ b/packages/project/test/lib/specifications/extensions/Task.js @@ -2,8 +2,8 @@ import test from "ava"; import path from "node:path"; import {fileURLToPath} from "node:url"; import sinon from "sinon"; -import Specification from "../../../../../lib/specifications/Specification.js"; -import Task from "../../../../../lib/specifications/types/extensions/Task.js"; +import Specification from "../../../../lib/specifications/Specification.js"; +import Task from "../../../../lib/specifications/extensions/Task.js"; function clone(obj) { return JSON.parse(JSON.stringify(obj)); @@ -11,8 +11,8 @@ function clone(obj) { const __dirname = path.dirname(fileURLToPath(import.meta.url)); -const genericCjsExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a"); -const genericEsmExtensionPath = path.join(__dirname, "..", "..", "..", "..", "fixtures", "extension.a.esm"); +const genericCjsExtensionPath = path.join(__dirname, "..", "..", "..", "fixtures", "extension.a"); +const genericEsmExtensionPath = path.join(__dirname, "..", "..", "..", "fixtures", "extension.a.esm"); const basicCjsTaskInput = { id: "task.a", From b04e86b91c2fd97bbce750d81fde9917d1d55aeb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 15 Dec 2022 15:20:42 +0100 Subject: [PATCH 0754/1272] [ui5-project][INTERNAL] SpecificationVersion: Move tests to correct directory --- .../lib/specifications/{utils => }/SpecificationVersion.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename packages/project/test/lib/specifications/{utils => }/SpecificationVersion.js (98%) diff --git a/packages/project/test/lib/specifications/utils/SpecificationVersion.js b/packages/project/test/lib/specifications/SpecificationVersion.js similarity index 98% rename from packages/project/test/lib/specifications/utils/SpecificationVersion.js rename to packages/project/test/lib/specifications/SpecificationVersion.js index 8094f75cb1b..b50aa010df3 100644 --- a/packages/project/test/lib/specifications/utils/SpecificationVersion.js +++ b/packages/project/test/lib/specifications/SpecificationVersion.js @@ -1,7 +1,7 @@ import test from "ava"; import sinonGlobal from "sinon"; -import SpecificationVersion from "../../../../lib/specifications/SpecificationVersion.js"; -import {__localFunctions__} from "../../../../lib/specifications/SpecificationVersion.js"; +import SpecificationVersion from "../../../lib/specifications/SpecificationVersion.js"; +import {__localFunctions__} from "../../../lib/specifications/SpecificationVersion.js"; const unsupportedSpecVersionText = (specVersion) => `Unsupported Specification Version ${specVersion} defined. Your UI5 CLI installation might be outdated. ` + From 516ee1f7fbdba81bc8391f7fba54ffa448a0cd55 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 15 Dec 2022 15:27:24 +0100 Subject: [PATCH 0755/1272] [ui5-project][INTERNAL] Specification: Make factory function public and export module --- .../lib/specifications/Specification.js | 88 +++++++++++-------- packages/project/package.json | 1 + packages/project/test/lib/package-exports.js | 3 +- 3 files changed, 53 insertions(+), 39 deletions(-) diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 41989b80962..fd7e64dccdb 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -12,6 +12,56 @@ import SpecificationVersion from "./SpecificationVersion.js"; * @hideconstructor */ class Specification { + /** + * Create a Specification instance for the given parameters + * + * @param {object} parameters + * @param {string} parameters.id Unique ID + * @param {string} parameters.version Version + * @param {string} parameters.modulePath File System path to access resources + * @param {object} parameters.configuration + * Type-dependent configuration object. Typically defined in a ui5.yaml + * @static + * @public + */ + static async create(parameters) { + if (!parameters.configuration) { + throw new Error( + `Unable to create Specification instance: Missing configuration parameter`); + } + const {kind, type} = parameters.configuration; + if (!["project", "extension"].includes(kind)) { + throw new Error(`Unable to create Specification instance: Unknown kind '${kind}'`); + } + + switch (type) { + case "application": { + return createAndInitializeSpec("types/Application.js", parameters); + } + case "library": { + return createAndInitializeSpec("types/Library.js", parameters); + } + case "theme-library": { + return createAndInitializeSpec("types/ThemeLibrary.js", parameters); + } + case "module": { + return createAndInitializeSpec("types/Module.js", parameters); + } + case "task": { + return createAndInitializeSpec("extensions/Task.js", parameters); + } + case "server-middleware": { + return createAndInitializeSpec("extensions/ServerMiddleware.js", parameters); + } + case "project-shim": { + return createAndInitializeSpec("extensions/ProjectShim.js", parameters); + } + default: + throw new Error( + `Unable to create Specification instance: Unknown specification type '${type}'`); + } + } + constructor() { if (new.target === Specification) { throw new TypeError("Class 'Specification' is abstract. Please use one of the 'types' subclasses"); @@ -207,44 +257,6 @@ class Specification { config.resources.configuration.propertiesFileSourceEncoding = "ISO-8859-1"; } } - - static async create(params) { - if (!params.configuration) { - throw new Error( - `Unable to create Specification instance: Missing configuration parameter`); - } - const {kind, type} = params.configuration; - if (!["project", "extension"].includes(kind)) { - throw new Error(`Unable to create Specification instance: Unknown kind '${kind}'`); - } - - switch (type) { - case "application": { - return createAndInitializeSpec("types/Application.js", params); - } - case "library": { - return createAndInitializeSpec("types/Library.js", params); - } - case "theme-library": { - return createAndInitializeSpec("types/ThemeLibrary.js", params); - } - case "module": { - return createAndInitializeSpec("types/Module.js", params); - } - case "task": { - return createAndInitializeSpec("extensions/Task.js", params); - } - case "server-middleware": { - return createAndInitializeSpec("extensions/ServerMiddleware.js", params); - } - case "project-shim": { - return createAndInitializeSpec("extensions/ProjectShim.js", params); - } - default: - throw new Error( - `Unable to create Specification instance: Unknown specification type '${type}'`); - } - } } async function createAndInitializeSpec(moduleName, params) { diff --git a/packages/project/package.json b/packages/project/package.json index d08b5bb2277..ddc6d63bdd4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -18,6 +18,7 @@ ], "type": "module", "exports": { + "./specifications/Specification": "./lib/specifications/Specification.js", "./specifications/SpecificationVersion": "./lib/specifications/SpecificationVersion.js", "./ui5Framework/Openui5Resolver": "./lib/ui5Framework/Openui5Resolver.js", "./ui5Framework/Sapui5Resolver": "./lib/ui5Framework/Sapui5Resolver.js", diff --git a/packages/project/test/lib/package-exports.js b/packages/project/test/lib/package-exports.js index 349f99de2f5..d5f4d62576e 100644 --- a/packages/project/test/lib/package-exports.js +++ b/packages/project/test/lib/package-exports.js @@ -13,11 +13,12 @@ test("export of package.json", (t) => { // Check number of definied exports test("check number of exports", (t) => { const packageJson = require("@ui5/project/package.json"); - t.is(Object.keys(packageJson.exports).length, 9); + t.is(Object.keys(packageJson.exports).length, 10); }); // Public API contract (exported modules) [ + "specifications/Specification", "specifications/SpecificationVersion", "ui5Framework/Openui5Resolver", "ui5Framework/Sapui5Resolver", From c3290be5c1d703abcb33adc93672048ccf6ea373 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 18 Dec 2022 03:20:39 +0000 Subject: [PATCH 0756/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 388 +++++++++++++++-------------- packages/project/package.json | 6 +- 2 files changed, 202 insertions(+), 192 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a4353745785..f14451a680c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -20,7 +20,7 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "pacote": "^15.0.7", + "pacote": "^15.0.8", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", @@ -36,7 +36,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.0", - "eslint": "^8.29.0", + "eslint": "^8.30.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-jsdoc": "^39.6.4", @@ -49,7 +49,7 @@ "jsdoc": "^3.6.11", "nyc": "^15.1.0", "open-cli": "^7.1.0", - "sinon": "^15.0.0", + "sinon": "^15.0.1", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" }, @@ -462,15 +462,15 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", - "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.0.tgz", + "integrity": "sha512-7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.4.0", - "globals": "^13.15.0", + "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", @@ -495,9 +495,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.18.0.tgz", - "integrity": "sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==", + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -539,9 +539,9 @@ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.7", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.7.tgz", - "integrity": "sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==", + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -722,9 +722,9 @@ } }, "node_modules/@jsdoc/salty": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.1.tgz", - "integrity": "sha512-JXwylDNSHa549N9uceDYu8D4GMXwSo3H8CCPYEQqxhhHpxD28+lRl2b3bS/caaPj5w1YD3SWtrficJNTnUjGpg==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.2.tgz", + "integrity": "sha512-A1FrVnc7L9qI2gUGsfN0trTiJNK72Y0CL/VAyrmYEmeKI3pnHDawP64CEev31XLyAAOx2xmDo3tbadPxC0CSbw==", "dev": true, "dependencies": { "lodash": "^4.17.21" @@ -854,9 +854,9 @@ } }, "node_modules/@npmcli/promise-spawn": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.1.tgz", - "integrity": "sha512-+hcUpxgx0vEpDJI9Cn+lkTdKLoqKBXFCVps5H7FujEU2vLOp6KwqjLlxbnz8Wzgm8oEqW/u5FeNAXSFjLdCD0A==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", + "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", "dependencies": { "which": "^3.0.0" }, @@ -917,21 +917,12 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz", - "integrity": "sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz", + "integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==", "dev": true, "dependencies": { - "@sinonjs/commons": "^1.7.0" - } - }, - "node_modules/@sinonjs/fake-timers/node_modules/@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", - "dev": true, - "dependencies": { - "type-detect": "4.0.8" + "@sinonjs/commons": "^2.0.0" } }, "node_modules/@sinonjs/samsam": { @@ -1595,12 +1586,12 @@ } }, "node_modules/cacache": { - "version": "17.0.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.3.tgz", - "integrity": "sha512-pwsIK/grdM0cHpfVaNFxMdzElBtLJGsVPE+JnxqXP1l40O01Z1mfDE8MbRTuwomGq/UwEtGisOylutOEVJxEqg==", + "version": "17.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.4.tgz", + "integrity": "sha512-Z/nL3gU+zTUjz5pCA5vVjYM8pmaw2kxM7JEiE0fv3w77Wj+sFbi70CrBruUWH0uNcEdvLDixFpgA2JM4F4DBjA==", "dependencies": { "@npmcli/fs": "^3.1.0", - "fs-minipass": "^2.1.0", + "fs-minipass": "^3.0.0", "glob": "^8.0.1", "lru-cache": "^7.7.1", "minipass": "^4.0.0", @@ -3061,13 +3052,13 @@ } }, "node_modules/eslint": { - "version": "8.29.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.29.0.tgz", - "integrity": "sha512-isQ4EEiyUjZFbEKvEGJKKGBwXtvXX+zJbkVKCgTuB9t/+jUBcy8avhkEwWJecI15BkRkOYmvIM5ynbhRjEkoeg==", + "version": "8.30.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.30.0.tgz", + "integrity": "sha512-MGADB39QqYuzEGov+F/qb18r4i7DohCDOfatHaxI2iGlPuC65bwG2gxgO+7DkyL38dRFaRH7RaRAgU6JKL9rMQ==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.3.3", - "@humanwhocodes/config-array": "^0.11.6", + "@eslint/eslintrc": "^1.4.0", + "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "ajv": "^6.10.0", @@ -3086,7 +3077,7 @@ "file-entry-cache": "^6.0.1", "find-up": "^5.0.0", "glob-parent": "^6.0.2", - "globals": "^13.15.0", + "globals": "^13.19.0", "grapheme-splitter": "^1.0.4", "ignore": "^5.2.0", "import-fresh": "^3.0.0", @@ -3349,9 +3340,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.18.0.tgz", - "integrity": "sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==", + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -3783,32 +3774,16 @@ ] }, "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs-minipass/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.0.tgz", + "integrity": "sha512-EUojgQaSPy6sxcqcZgQv6TVF6jiKvurji3AxhAivs/Ep4O1UpS8TusaxpybfFHZ2skRhLqzk6WR8nqNYIMMDeA==", "dependencies": { - "yallist": "^4.0.0" + "minipass": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/fs-minipass/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -3974,9 +3949,9 @@ } }, "node_modules/globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", + "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", "dependencies": { "dir-glob": "^3.0.1", "fast-glob": "^3.2.11", @@ -4829,9 +4804,9 @@ "dev": true }, "node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", + "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", "dev": true, "bin": { "json5": "lib/cli.js" @@ -5170,6 +5145,17 @@ "node": ">=6" } }, + "node_modules/make-fetch-happen/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/make-fetch-happen/node_modules/indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", @@ -6120,9 +6106,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz", + "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==", "dev": true }, "node_modules/nofilter": { @@ -6823,16 +6809,16 @@ } }, "node_modules/pacote": { - "version": "15.0.7", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.7.tgz", - "integrity": "sha512-OFf4dl3SM1PpsZvi1zk4vvMA0EplnyO0Ajbrtoyx6E3dXOWBoPnMapnLgQdInEfqPkNT8mrd2bY6c5t8JZ69sQ==", + "version": "15.0.8", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.8.tgz", + "integrity": "sha512-UlcumB/XS6xyyIMwg/WwMAyUmga+RivB5KgkRwA1hZNtrx+0Bt41KxHCvg1kr0pZ/ZeD8qjhW4fph6VaYRCbLw==", "dependencies": { "@npmcli/git": "^4.0.0", "@npmcli/installed-package-contents": "^2.0.1", "@npmcli/promise-spawn": "^6.0.1", "@npmcli/run-script": "^6.0.0", "cacache": "^17.0.0", - "fs-minipass": "^2.1.0", + "fs-minipass": "^3.0.0", "minipass": "^4.0.0", "npm-package-arg": "^10.0.0", "npm-packlist": "^7.0.0", @@ -7199,9 +7185,9 @@ } }, "node_modules/postcss": { - "version": "8.4.19", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", - "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "version": "8.4.20", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.20.tgz", + "integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==", "dev": true, "funding": [ { @@ -7333,12 +7319,13 @@ } }, "node_modules/query-ast": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.4.tgz", - "integrity": "sha512-KFJFSvODCBjIH5HbHvITj9EEZKYUU6VX0T5CuB1ayvjUoUaZkKMi6eeby5Tf8DMukyZHlJQOE1+f3vevKUe6eg==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.5.tgz", + "integrity": "sha512-JK+1ma4YDuLjvKKcz9JZ70G+CM9qEOs/l1cZzstMMfwKUabTJ9sud5jvDGrUNuv03yKUgs82bLkHXJkDyhRmBw==", "dev": true, "dependencies": { - "invariant": "2.2.4" + "invariant": "2.2.4", + "lodash": "^4.17.21" } }, "node_modules/queue-microtask": { @@ -7398,9 +7385,9 @@ } }, "node_modules/read-package-json-fast": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.1.tgz", - "integrity": "sha512-8+HW7Yo+cjfF+md8DqsZHgats2mxf7gGYow/+2JjxrftoHFZz9v4dzd0EubzYbkNaLxrTVcnllHwklXN2+7aTQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", + "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", "dependencies": { "json-parse-even-better-errors": "^3.0.0", "npm-normalize-package-bin": "^3.0.0" @@ -7892,9 +7879,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.56.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.2.tgz", - "integrity": "sha512-ciEJhnyCRwzlBCB+h5cCPM6ie/6f8HrhZMQOf5vlU60Y1bI1rx5Zb0vlDZvaycHsg/MqFfF1Eq2eokAa32iw8w==", + "version": "1.57.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.0.tgz", + "integrity": "sha512-IZNEJDTK1cF5B1cGA593TPAV/1S0ysUDxq9XHjX/+SMy0QfUny+nfUsq5ZP7wWSl4eEf7wDJcEZ8ABYFmh3m/w==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8027,13 +8014,13 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sinon": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.0.tgz", - "integrity": "sha512-pV97G1GbslaSJoSdy2F2z8uh5F+uPGp3ddOzA4JsBOUBLEQRz2OAqlKGRFTSh2KiqUCmHkzyAeu7R4x1Hx0wwg==", + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz", + "integrity": "sha512-PZXKc08f/wcA/BMRGBze2Wmw50CWPiAH3E21EOi4B49vJ616vW4DQh4fQrqsYox2aNR/N3kCqLuB0PwwOucQrg==", "dev": true, "dependencies": { "@sinonjs/commons": "^2.0.0", - "@sinonjs/fake-timers": "^9.1.2", + "@sinonjs/fake-timers": "10.0.2", "@sinonjs/samsam": "^7.0.1", "diff": "^5.0.0", "nise": "^5.1.2", @@ -8645,6 +8632,28 @@ "node": ">=10" } }, + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/tar/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -9717,15 +9726,15 @@ } }, "@eslint/eslintrc": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", - "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.0.tgz", + "integrity": "sha512-7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.4.0", - "globals": "^13.15.0", + "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", @@ -9744,9 +9753,9 @@ } }, "globals": { - "version": "13.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.18.0.tgz", - "integrity": "sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==", + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -9775,9 +9784,9 @@ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" }, "@humanwhocodes/config-array": { - "version": "0.11.7", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.7.tgz", - "integrity": "sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==", + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.1", @@ -9927,9 +9936,9 @@ } }, "@jsdoc/salty": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.1.tgz", - "integrity": "sha512-JXwylDNSHa549N9uceDYu8D4GMXwSo3H8CCPYEQqxhhHpxD28+lRl2b3bS/caaPj5w1YD3SWtrficJNTnUjGpg==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.2.tgz", + "integrity": "sha512-A1FrVnc7L9qI2gUGsfN0trTiJNK72Y0CL/VAyrmYEmeKI3pnHDawP64CEev31XLyAAOx2xmDo3tbadPxC0CSbw==", "dev": true, "requires": { "lodash": "^4.17.21" @@ -10021,9 +10030,9 @@ "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==" }, "@npmcli/promise-spawn": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.1.tgz", - "integrity": "sha512-+hcUpxgx0vEpDJI9Cn+lkTdKLoqKBXFCVps5H7FujEU2vLOp6KwqjLlxbnz8Wzgm8oEqW/u5FeNAXSFjLdCD0A==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", + "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", "requires": { "which": "^3.0.0" }, @@ -10070,23 +10079,12 @@ } }, "@sinonjs/fake-timers": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz", - "integrity": "sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz", + "integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==", "dev": true, "requires": { - "@sinonjs/commons": "^1.7.0" - }, - "dependencies": { - "@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - } + "@sinonjs/commons": "^2.0.0" } }, "@sinonjs/samsam": { @@ -10591,12 +10589,12 @@ } }, "cacache": { - "version": "17.0.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.3.tgz", - "integrity": "sha512-pwsIK/grdM0cHpfVaNFxMdzElBtLJGsVPE+JnxqXP1l40O01Z1mfDE8MbRTuwomGq/UwEtGisOylutOEVJxEqg==", + "version": "17.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.4.tgz", + "integrity": "sha512-Z/nL3gU+zTUjz5pCA5vVjYM8pmaw2kxM7JEiE0fv3w77Wj+sFbi70CrBruUWH0uNcEdvLDixFpgA2JM4F4DBjA==", "requires": { "@npmcli/fs": "^3.1.0", - "fs-minipass": "^2.1.0", + "fs-minipass": "^3.0.0", "glob": "^8.0.1", "lru-cache": "^7.7.1", "minipass": "^4.0.0", @@ -11704,13 +11702,13 @@ } }, "eslint": { - "version": "8.29.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.29.0.tgz", - "integrity": "sha512-isQ4EEiyUjZFbEKvEGJKKGBwXtvXX+zJbkVKCgTuB9t/+jUBcy8avhkEwWJecI15BkRkOYmvIM5ynbhRjEkoeg==", + "version": "8.30.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.30.0.tgz", + "integrity": "sha512-MGADB39QqYuzEGov+F/qb18r4i7DohCDOfatHaxI2iGlPuC65bwG2gxgO+7DkyL38dRFaRH7RaRAgU6JKL9rMQ==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.3.3", - "@humanwhocodes/config-array": "^0.11.6", + "@eslint/eslintrc": "^1.4.0", + "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "ajv": "^6.10.0", @@ -11729,7 +11727,7 @@ "file-entry-cache": "^6.0.1", "find-up": "^5.0.0", "glob-parent": "^6.0.2", - "globals": "^13.15.0", + "globals": "^13.19.0", "grapheme-splitter": "^1.0.4", "ignore": "^5.2.0", "import-fresh": "^3.0.0", @@ -11826,9 +11824,9 @@ } }, "globals": { - "version": "13.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.18.0.tgz", - "integrity": "sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==", + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -12222,26 +12220,11 @@ "dev": true }, "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.0.tgz", + "integrity": "sha512-EUojgQaSPy6sxcqcZgQv6TVF6jiKvurji3AxhAivs/Ep4O1UpS8TusaxpybfFHZ2skRhLqzk6WR8nqNYIMMDeA==", "requires": { - "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } + "minipass": "^4.0.0" } }, "fs.realpath": { @@ -12362,9 +12345,9 @@ "dev": true }, "globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", + "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", "requires": { "dir-glob": "^3.0.1", "fast-glob": "^3.2.11", @@ -12988,9 +12971,9 @@ "dev": true }, "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", + "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", "dev": true }, "jsonparse": { @@ -13265,6 +13248,14 @@ "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + } + }, "indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", @@ -13984,9 +13975,9 @@ } }, "node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz", + "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==", "dev": true }, "nofilter": { @@ -14514,16 +14505,16 @@ } }, "pacote": { - "version": "15.0.7", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.7.tgz", - "integrity": "sha512-OFf4dl3SM1PpsZvi1zk4vvMA0EplnyO0Ajbrtoyx6E3dXOWBoPnMapnLgQdInEfqPkNT8mrd2bY6c5t8JZ69sQ==", + "version": "15.0.8", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.8.tgz", + "integrity": "sha512-UlcumB/XS6xyyIMwg/WwMAyUmga+RivB5KgkRwA1hZNtrx+0Bt41KxHCvg1kr0pZ/ZeD8qjhW4fph6VaYRCbLw==", "requires": { "@npmcli/git": "^4.0.0", "@npmcli/installed-package-contents": "^2.0.1", "@npmcli/promise-spawn": "^6.0.1", "@npmcli/run-script": "^6.0.0", "cacache": "^17.0.0", - "fs-minipass": "^2.1.0", + "fs-minipass": "^3.0.0", "minipass": "^4.0.0", "npm-package-arg": "^10.0.0", "npm-packlist": "^7.0.0", @@ -14769,9 +14760,9 @@ } }, "postcss": { - "version": "8.4.19", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", - "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "version": "8.4.20", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.20.tgz", + "integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==", "dev": true, "requires": { "nanoid": "^3.3.4", @@ -14860,12 +14851,13 @@ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, "query-ast": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.4.tgz", - "integrity": "sha512-KFJFSvODCBjIH5HbHvITj9EEZKYUU6VX0T5CuB1ayvjUoUaZkKMi6eeby5Tf8DMukyZHlJQOE1+f3vevKUe6eg==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.5.tgz", + "integrity": "sha512-JK+1ma4YDuLjvKKcz9JZ70G+CM9qEOs/l1cZzstMMfwKUabTJ9sud5jvDGrUNuv03yKUgs82bLkHXJkDyhRmBw==", "dev": true, "requires": { - "invariant": "2.2.4" + "invariant": "2.2.4", + "lodash": "^4.17.21" } }, "queue-microtask": { @@ -14927,9 +14919,9 @@ } }, "read-package-json-fast": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.1.tgz", - "integrity": "sha512-8+HW7Yo+cjfF+md8DqsZHgats2mxf7gGYow/+2JjxrftoHFZz9v4dzd0EubzYbkNaLxrTVcnllHwklXN2+7aTQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", + "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", "requires": { "json-parse-even-better-errors": "^3.0.0", "npm-normalize-package-bin": "^3.0.0" @@ -15244,9 +15236,9 @@ "optional": true }, "sass": { - "version": "1.56.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.2.tgz", - "integrity": "sha512-ciEJhnyCRwzlBCB+h5cCPM6ie/6f8HrhZMQOf5vlU60Y1bI1rx5Zb0vlDZvaycHsg/MqFfF1Eq2eokAa32iw8w==", + "version": "1.57.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.0.tgz", + "integrity": "sha512-IZNEJDTK1cF5B1cGA593TPAV/1S0ysUDxq9XHjX/+SMy0QfUny+nfUsq5ZP7wWSl4eEf7wDJcEZ8ABYFmh3m/w==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -15347,13 +15339,13 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "sinon": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.0.tgz", - "integrity": "sha512-pV97G1GbslaSJoSdy2F2z8uh5F+uPGp3ddOzA4JsBOUBLEQRz2OAqlKGRFTSh2KiqUCmHkzyAeu7R4x1Hx0wwg==", + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz", + "integrity": "sha512-PZXKc08f/wcA/BMRGBze2Wmw50CWPiAH3E21EOi4B49vJ616vW4DQh4fQrqsYox2aNR/N3kCqLuB0PwwOucQrg==", "dev": true, "requires": { "@sinonjs/commons": "^2.0.0", - "@sinonjs/fake-timers": "^9.1.2", + "@sinonjs/fake-timers": "10.0.2", "@sinonjs/samsam": "^7.0.1", "diff": "^5.0.0", "nise": "^5.1.2", @@ -15833,6 +15825,24 @@ "yallist": "^4.0.0" }, "dependencies": { + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + } + } + }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index ddc6d63bdd4..be7c7883d8e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -128,7 +128,7 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "pacote": "^15.0.7", + "pacote": "^15.0.8", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", @@ -144,7 +144,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.0", - "eslint": "^8.29.0", + "eslint": "^8.30.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-jsdoc": "^39.6.4", @@ -157,7 +157,7 @@ "jsdoc": "^3.6.11", "nyc": "^15.1.0", "open-cli": "^7.1.0", - "sinon": "^15.0.0", + "sinon": "^15.0.1", "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } From 38f05f6d9100c5ae35a55cab92b32684dedd735a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 16 Dec 2022 11:15:18 +0100 Subject: [PATCH 0757/1272] [ui5-project][INTERNAL] ProjectGraph: Refactor API Refactor some methods based on current usage. * Internal: Use Maps and Sets instead of objects and arrays * Rename several methods * Traversal callbacks: Provide array of dependency names instead of a getDependency() function. Most consumers only need the names. Corresponding projects can be easily retrieved via getProject() * Traversal callbacks: Callback can be synchronous. Before, we required a promise to be returned. Many consumers actually do not need to perform async tasks * Add a method for retrieving the names of all projects in the graph. This is a common requirement * Add a method for retrieving the number of projects in the graph. This is also a common requirement * join: Fix taking over optional dependencies and correspoinding flag * addProject: Remove option to ignore duplicates. This was never used --- packages/project/lib/build/ProjectBuilder.js | 17 +- packages/project/lib/build/TaskRunner.js | 2 +- .../lib/build/helpers/composeProjectList.js | 5 +- packages/project/lib/graph/ProjectGraph.js | 174 +++++++------- .../project/test/lib/build/ProjectBuilder.js | 13 +- packages/project/test/lib/build/TaskRunner.js | 2 +- .../project/test/lib/graph/ProjectGraph.js | 215 ++++++++++++++---- .../test/lib/graph/helpers/ui5Framework.js | 6 +- 8 files changed, 290 insertions(+), 144 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 2fc76a9ba80..8faba9cbbc0 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -162,7 +162,7 @@ class ProjectBuilder { }); // Count total number of projects to build based on input - const requestedProjects = this._graph.getAllProjects().map((p) => p.getName()).filter(function(projectName) { + const requestedProjects = this._graph.getProjectNames().filter(function(projectName) { return filterProject(projectName); }); @@ -264,18 +264,16 @@ class ProjectBuilder { } async _createRequiredBuildContexts(requestedProjects) { - const allProjects = this._graph.getAllProjects(); - const requiredProjects = new Set(allProjects.filter((project) => { - return requestedProjects.includes(project.getName()); + const requiredProjects = new Set(this._graph.getProjectNames().filter((projectName) => { + return requestedProjects.includes(projectName); })); const projectBuildContexts = new Map(); - for (const project of requiredProjects) { - const projectName = project.getName(); + for (const projectName of requiredProjects) { log.verbose(`Creating build context for project ${projectName}...`); const projectBuildContext = this._buildContext.createProjectContext({ - project, + project: this._graph.getProject(projectName), log }); @@ -299,8 +297,7 @@ class ProjectBuilder { return; } // Add dependency to list of projects to build - const depProject = this._graph.getProject(depName); - requiredProjects.add(depProject); + requiredProjects.add(depName); }); } } @@ -322,7 +319,7 @@ class ProjectBuilder { ); if (includedDependencies.length) { - if (includedDependencies.length === this._graph.getAllProjects().length - 1) { + if (includedDependencies.length === this._graph.getSize() - 1) { log.info(` Including all dependencies`); } else { log.info(` Requested dependencies:`); diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index aac5eeb8e0e..89409bf5d58 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -450,7 +450,7 @@ class TaskRunner { // Add transitive dependencies to set of required dependencies const requiredDependencies = new Set(requiredDirectDependencies); for (const projectName of requiredDirectDependencies) { - this._graph.getAllDependencies(projectName).forEach((depName) => { + this._graph.getTransitiveDependencies(projectName).forEach((depName) => { requiredDependencies.add(depName); }); } diff --git a/packages/project/lib/build/helpers/composeProjectList.js b/packages/project/lib/build/helpers/composeProjectList.js index 77e6b1b8f16..ae4db6dbbb8 100644 --- a/packages/project/lib/build/helpers/composeProjectList.js +++ b/packages/project/lib/build/helpers/composeProjectList.js @@ -13,14 +13,13 @@ async function getFlattenedDependencyTree(graph) { const dependencyMap = Object.create(null); const rootName = graph.getRoot().getName(); - await graph.traverseDepthFirst(({project, getDependencies}) => { + await graph.traverseDepthFirst(({project, dependencies}) => { if (project.getName() === rootName) { // Skip root project return; } const projectDeps = []; - getDependencies().forEach((dep) => { - const depName = dep.getName(); + dependencies.forEach((depName) => { projectDeps.push(depName); if (dependencyMap[depName]) { projectDeps.push(...dependencyMap[depName]); diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index a6bb2246247..18ddaf546df 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -20,11 +20,11 @@ class ProjectGraph { } this._rootProjectName = rootProjectName; - this._projects = Object.create(null); // maps project name to instance - this._adjList = Object.create(null); // maps project name to edges/dependencies - this._optAdjList = Object.create(null); // maps project name to optional dependencies + this._projects = new Map(); // maps project name to instance + this._adjList = new Map(); // maps project name to edges/dependencies + this._optAdjList = new Map(); // maps project name to optional dependencies - this._extensions = Object.create(null); // maps extension name to instance + this._extensions = new Map(); // maps extension name to instance this._sealed = false; this._hasUnresolvedOptionalDependencies = false; // Performance optimization flag @@ -38,7 +38,7 @@ class ProjectGraph { * @returns {@ui5/project/specifications/Project} Root project */ getRoot() { - const rootProject = this._projects[this._rootProjectName]; + const rootProject = this._projects.get(this._rootProjectName); if (!rootProject) { throw new Error(`Unable to find root project with name ${this._rootProjectName} in project graph`); } @@ -50,15 +50,11 @@ class ProjectGraph { * * @public * @param {@ui5/project/specifications/Project} project Project which should be added to the graph - * @param {boolean} [ignoreDuplicates=false] Whether an error should be thrown when a duplicate project is added */ - addProject(project, ignoreDuplicates) { + addProject(project) { this._checkSealed(); const projectName = project.getName(); - if (this._projects[projectName]) { - if (ignoreDuplicates) { - return; - } + if (this._projects.has(projectName)) { throw new Error( `Failed to add project ${projectName} to graph: A project with that name has already been added`); } @@ -69,9 +65,9 @@ class ProjectGraph { `Failed to add project ${projectName} to graph: Project name must not be integer-like`); } log.verbose(`Adding project: ${projectName}`); - this._projects[projectName] = project; - this._adjList[projectName] = []; - this._optAdjList[projectName] = []; + this._projects.set(projectName, project); + this._adjList.set(projectName, new Set()); + this._optAdjList.set(projectName, new Set()); } /** @@ -83,17 +79,37 @@ class ProjectGraph { * project instance or undefined if the project is unknown to the graph */ getProject(projectName) { - return this._projects[projectName]; + return this._projects.get(projectName); } /** * Get all projects in the graph * * @public - * @returns {@ui5/project/specifications/Project[]} + * @returns {Iterable.<@ui5/project/specifications/Project>} + */ + getProjects() { + return this._projects.values(); + } + + /** + * Get names of all projects in the graph + * + * @public + * @returns {string[]} Names of all projects + */ + getProjectNames() { + return Array.from(this._projects.keys()); + } + + /** + * Get the number of projects in the graph + * + * @public + * @returns {integer} Count of projects in the graph */ - getAllProjects() { - return Object.values(this._projects); + getSize() { + return this._projects.size; } /** @@ -105,7 +121,7 @@ class ProjectGraph { addExtension(extension) { this._checkSealed(); const extensionName = extension.getName(); - if (this._extensions[extensionName]) { + if (this._extensions.has(extensionName)) { throw new Error( `Failed to add extension ${extensionName} to graph: ` + `An extension with that name has already been added`); @@ -116,7 +132,7 @@ class ProjectGraph { throw new Error( `Failed to add extension ${extensionName} to graph: Extension name must not be integer-like`); } - this._extensions[extensionName] = extension; + this._extensions.set(extensionName, extension); } /** @@ -126,17 +142,27 @@ class ProjectGraph { * Extension instance or undefined if the extension is unknown to the graph */ getExtension(extensionName) { - return this._extensions[extensionName]; + return this._extensions.get(extensionName); } /** * Get all extensions in the graph * * @public - * @returns {@ui5/project/specifications/Extension[]} + * @returns {Iterable.<@ui5/project/specifications/Extension>} + */ + getExtensions() { + return this._extensions.values(); + } + + /** + * Get names of all extensions in the graph + * + * @public + * @returns {string[]} Names of all extensions */ - getAllExtensions() { - return Object.values(this._extensions); + getExtensionNames() { + return Array.from(this._extensions.keys()); } /** @@ -195,11 +221,11 @@ class ProjectGraph { * @param {string} toProjectName Name of project on which the other depends */ _declareDependency(map, fromProjectName, toProjectName) { - if (!this._projects[fromProjectName]) { + if (!this._projects.has(fromProjectName)) { throw new Error( `Unable to find depending project with name ${fromProjectName} in project graph`); } - if (!this._projects[toProjectName]) { + if (!this._projects.has(toProjectName)) { throw new Error( `Unable to find dependency project with name ${toProjectName} in project graph`); } @@ -207,10 +233,11 @@ class ProjectGraph { throw new Error( `A project can't depend on itself`); } - if (map[fromProjectName].includes(toProjectName)) { + const adjacencies = map.get(fromProjectName); + if (adjacencies.has(toProjectName)) { log.warn(`Dependency has already been declared: ${fromProjectName} depends on ${toProjectName}`); } else { - map[fromProjectName].push(toProjectName); + adjacencies.add(toProjectName); } } @@ -222,13 +249,13 @@ class ProjectGraph { * @returns {string[]} Names of all direct dependencies */ getDependencies(projectName) { - const adjacencies = this._adjList[projectName]; + const adjacencies = this._adjList.get(projectName); if (!adjacencies) { throw new Error( `Failed to get dependencies for project ${projectName}: ` + `Unable to find project in project graph`); } - return adjacencies; + return Array.from(adjacencies); } /** @@ -238,11 +265,11 @@ class ProjectGraph { * @param {string} projectName Name of the project to retrieve the dependencies of * @returns {string[]} Names of all direct and transitive dependencies */ - getAllDependencies(projectName) { + getTransitiveDependencies(projectName) { const dependencies = new Set(); const processDependency = (depName) => { - const adjacencies = this._adjList[depName]; + const adjacencies = this._adjList.get(depName); adjacencies.forEach((depName) => { if (!dependencies.has(depName)) { dependencies.add(depName); @@ -264,18 +291,18 @@ class ProjectGraph { * @returns {boolean} True if the dependency is currently optional */ isOptionalDependency(fromProjectName, toProjectName) { - const adjacencies = this._adjList[fromProjectName]; + const adjacencies = this._adjList.get(fromProjectName); if (!adjacencies) { throw new Error( `Failed to determine whether dependency from ${fromProjectName} to ${toProjectName} ` + `is optional: ` + `Unable to find project with name ${fromProjectName} in project graph`); } - if (adjacencies.includes(toProjectName)) { + if (adjacencies.has(toProjectName)) { return false; } - const optAdjacencies = this._optAdjList[fromProjectName]; - if (optAdjacencies.includes(toProjectName)) { + const optAdjacencies = this._optAdjList.get(fromProjectName); + if (optAdjacencies.has(toProjectName)) { return true; } return false; @@ -288,6 +315,7 @@ class ProjectGraph { * @public */ async resolveOptionalDependencies() { + this._checkSealed(); if (!this._hasUnresolvedOptionalDependencies) { log.verbose(`Skipping resolution of optional dependencies since none have been declared`); return; @@ -295,33 +323,32 @@ class ProjectGraph { log.verbose(`Resolving optional dependencies...`); // First collect all projects that are currently reachable from the root project (=all non-optional projects) - const resolvedProjects = new Set; + const resolvedProjects = new Set(); await this.traverseBreadthFirst(({project}) => { resolvedProjects.add(project.getName()); }); let unresolvedOptDeps = false; - for (const [projectName, optDependencies] of Object.entries(this._optAdjList)) { - for (let i = optDependencies.length - 1; i >= 0; i--) { - const targetProjectName = optDependencies[i]; - if (resolvedProjects.has(targetProjectName)) { + for (const [fromProjectName, optDependencies] of this._optAdjList) { + for (const toProjectName of optDependencies) { + if (resolvedProjects.has(toProjectName)) { // Target node is already reachable in the graph // => Resolve optional dependency - log.verbose(`Resolving optional dependency from ${projectName} to ${targetProjectName}...`); + log.verbose(`Resolving optional dependency from ${fromProjectName} to ${toProjectName}...`); - if (this._adjList[targetProjectName].includes(projectName)) { + if (this._adjList.get(toProjectName).has(fromProjectName)) { log.verbose( - ` Cyclic optional dependency detected: ${targetProjectName} already has a non-optional ` + - `dependency to ${projectName}`); + ` Cyclic optional dependency detected: ${toProjectName} already has a non-optional ` + + `dependency to ${fromProjectName}`); log.verbose( - ` Optional dependency from ${projectName} to ${targetProjectName} ` + + ` Optional dependency from ${fromProjectName} to ${toProjectName} ` + `will not be declared as it would introduce a cycle`); unresolvedOptDeps = true; } else { - this.declareDependency(projectName, targetProjectName); + this.declareDependency(fromProjectName, toProjectName); // This optional dependency has now been resolved // => Remove it from the list of optional dependencies - optDependencies.splice(i, 1); + optDependencies.delete(toProjectName); } } else { unresolvedOptDeps = true; @@ -340,26 +367,14 @@ class ProjectGraph { * @async * @callback @ui5/project/graph/ProjectGraph~traversalCallback * @param {object} parameters Parameters passed to the callback - * @param {@ui5/project/specifications/Project} parameters.project The project that is currently visited - * @param {@ui5/project/graph/ProjectGraph~getDependencies} parameters.getDependencies - * Function to access the dependencies of the project that is currently visited. - * @returns {Promise} Must return a promise on which the graph traversal will wait - */ - - /** - * Helper function available in the - * [traversalCallback]{@link @ui5/project/graph/ProjectGraph~traversalCallback} to access the - * dependencies of the corresponding project in the current graph. - *

- * Note that transitive dependencies can't be accessed this way. Projects should rather add a direct - * dependency to projects they need access to. - * - * @public - * @function @ui5/project/graph/ProjectGraph~getDependencies - * @returns {Array.<@ui5/project/specifications/Project>} Direct dependencies of the visited project + * @param {@ui5/project/specifications/Project} parameters.project + * Project that is currently visited + * @param {string[]} parameters.dependencies + * Array containing the names of all direct dependencies of the project + * @returns {Promise|undefined} If a promise is returned, + * graph traversal will wait and only continue once the promise has resolved. */ - // TODO: Use generator functions instead? /** * Visit every project in the graph that can be reached by the given entry project exactly once. @@ -409,9 +424,7 @@ class ProjectGraph { await callback({ project: this.getProject(projectName), - getDependencies: () => { - return dependencies.map(($) => this.getProject($)); - } + dependencies }); })(); })); @@ -437,7 +450,7 @@ class ProjectGraph { if (!this.getProject(startName)) { throw new Error(`Failed to start graph traversal: Could not find project ${startName} in project graph`); } - return this._traverseDepthFirst(startName, {}, [], callback); + return this._traverseDepthFirst(startName, Object.create(null), [], callback); } async _traverseDepthFirst(projectName, visited, predecessors, callback) { @@ -455,9 +468,7 @@ class ProjectGraph { await callback({ project: this.getProject(projectName), - getDependencies: () => { - return dependencies.map(($) => this.getProject($)); - } + dependencies }); })(); } @@ -480,8 +491,12 @@ class ProjectGraph { projectGraph.seal(); } mergeMap(this._projects, projectGraph._projects); - mergeMap(this._adjList, projectGraph._adjList); mergeMap(this._extensions, projectGraph._extensions); + mergeMap(this._adjList, projectGraph._adjList); + mergeMap(this._optAdjList, projectGraph._optAdjList); + + this._hasUnresolvedOptionalDependencies = + this._hasUnresolvedOptionalDependencies || projectGraph._hasUnresolvedOptionalDependencies; } catch (err) { throw new Error( `Failed to join project graph with root project ${projectGraph._rootProjectName} into ` + @@ -608,11 +623,16 @@ class ProjectGraph { } function mergeMap(target, source) { - for (const [key, value] of Object.entries(source)) { - if (target[key]) { + for (const [key, value] of source) { + if (target.has(key)) { throw new Error(`Failed to merge map: Key '${key}' already present in target set`); } - target[key] = value; + if (value instanceof Set) { + // Shallow-clone any Sets + target.set(key, new Set(value)); + } else { + target.set(key, value); + } } } diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index d7b8f332bd2..05f2495507a 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -31,11 +31,12 @@ test.beforeEach(async (t) => { }; }, isSealed: sinon.stub().returns(true), - getAllProjects: sinon.stub().returns([ - getMockProject("library", "a"), - getMockProject("library", "b"), - getMockProject("library", "c"), + getProjectNames: sinon.stub().returns([ + "project.a", + "project.b", + "project.c", ]), + getSize: sinon.stub().returns(3), getDependencies: sinon.stub().returns([]).withArgs("project.a").returns(["project.b"]), traverseBreadthFirst: async (start, callback) => { if (callback) { @@ -65,7 +66,9 @@ test.beforeEach(async (t) => { project: getMockProject("library", "c") }); }, - getProject: sinon.stub().returns(getMockProject("project", "b")) + getProject: sinon.stub().callsFake((projectName) => { + return getMockProject(...projectName.split(".")); + }) }; t.context.ProjectBuilder = await esmock("../../../lib/build/ProjectBuilder.js"); diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 04c89da1ed7..f0683227f23 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -102,7 +102,7 @@ test.beforeEach(async (t) => { }, getExtension: sinon.stub().returns(t.context.customTask), traverseBreadthFirst: sinon.stub(), - getAllDependencies: sinon.stub().returns(["dep.a", "dep.b", "dep.c"]) + getTransitiveDependencies: sinon.stub().returns(["dep.a", "dep.b", "dep.c"]) }; t.context.logger = { diff --git a/packages/project/test/lib/graph/ProjectGraph.js b/packages/project/test/lib/graph/ProjectGraph.js index db79e47bad9..fdbbe1f41c2 100644 --- a/packages/project/test/lib/graph/ProjectGraph.js +++ b/packages/project/test/lib/graph/ProjectGraph.js @@ -161,23 +161,6 @@ test("addProject: Add duplicate", async (t) => { t.is(res, project1, "Should return correct project"); }); -test("addProject: Add duplicate with ignoreDuplicates", async (t) => { - const {ProjectGraph} = t.context; - const graph = new ProjectGraph({ - rootProjectName: "my root project" - }); - const project1 = await createProject("application.a"); - graph.addProject(project1); - - const project2 = await createProject("application.a"); - t.notThrows(() => { - graph.addProject(project2, true); - }, "Should not throw when adding duplicates"); - - const res = graph.getProject("application.a"); - t.is(res, project1, "Should return correct project"); -}); - test("addProject: Add project with integer-like name", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ @@ -202,7 +185,7 @@ test("getProject: Project is not in graph", (t) => { t.is(res, undefined, "Should return undefined"); }); -test("getAllProjects", async (t) => { +test("getProjects", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "my root project" @@ -213,10 +196,45 @@ test("getAllProjects", async (t) => { const project2 = await createProject("application.b"); graph.addProject(project2); - const res = graph.getAllProjects(); - t.deepEqual(res, [ + const res = graph.getProjects(); + t.deepEqual(Array.from(res), [ project1, project2 - ], "Should return all projects in a flat array"); + ], "Should return an iterable for all projects"); +}); + +test("getProjectNames", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const project1 = await createProject("application.a"); + graph.addProject(project1); + + const project2 = await createProject("application.b"); + graph.addProject(project2); + + const res = graph.getProjectNames(); + t.deepEqual(res, [ + "application.a", "application.b" + ], "Should return all project names in a flat array"); +}); + +test("getSize", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + const project1 = await createProject("application.a"); + graph.addProject(project1); + + const project2 = await createProject("application.b"); + graph.addProject(project2); + + // Extensions should not influence graph size + const extension1 = await createExtension("extension.a"); + graph.addExtension(extension1); + + t.is(graph.getSize(), 2, "Should return correct project count"); }); test("add-/getExtension", async (t) => { @@ -274,7 +292,7 @@ test("getExtension: Project is not in graph", (t) => { t.is(res, undefined, "Should return undefined"); }); -test("getAllExtensions", async (t) => { +test("getExtensions", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "my root project" @@ -284,10 +302,10 @@ test("getAllExtensions", async (t) => { const extension2 = await createExtension("extension.b"); graph.addExtension(extension2); - const res = graph.getAllExtensions(); - t.deepEqual(res, [ + const res = graph.getExtensions(); + t.deepEqual(Array.from(res), [ extension1, extension2 - ], "Should return all extensions in a flat array"); + ], "Should return an iterable for all extensions"); }); test("declareDependency / getDependencies", async (t) => { @@ -321,7 +339,7 @@ test("declareDependency / getDependencies", async (t) => { "Should declare dependency as non-optional"); }); -test("getAllDependencies", async (t) => { +test("getTransitiveDependencies", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "my root project" @@ -338,7 +356,7 @@ test("getAllDependencies", async (t) => { graph.declareDependency("library.a", "library.d"); graph.declareDependency("library.d", "library.e"); - t.deepEqual(graph.getAllDependencies("library.a"), [ + t.deepEqual(graph.getTransitiveDependencies("library.a"), [ "library.b", "library.c", "library.d", @@ -671,7 +689,7 @@ test("resolveOptionalDependencies: Resolves transitive optional dependencies", a ]); }); -test("traverseBreadthFirst", async (t) => { +test("traverseBreadthFirst: Async", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "library.a" @@ -681,10 +699,47 @@ test("traverseBreadthFirst", async (t) => { graph.declareDependency("library.a", "library.b"); - await traverseBreadthFirst(t, graph, [ + const callbackStub = t.context.sinon.stub().resolves().onFirstCall().callsFake(() => { + return new Promise((resolve, reject) => { + setTimeout(() => { + t.is(callbackStub.callCount, 1, "Callback still called only once while waiting for promise"); + resolve(); + }, 100); + }); + }); + await graph.traverseBreadthFirst(callbackStub); + + t.is(callbackStub.callCount, 2, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, [ "library.a", - "library.b" - ]); + "library.b", + ], "Traversed graph in correct order, starting with library.a"); +}); + +test("traverseBreadthFirst: Sync", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareDependency("library.a", "library.b"); + + const callbackStub = t.context.sinon.stub().returns(); + await graph.traverseBreadthFirst(callbackStub); + + t.is(callbackStub.callCount, 2, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, [ + "library.a", + "library.b", + ], "Traversed graph in correct order, starting with library.a"); }); test("traverseBreadthFirst: No project visited twice", async (t) => { @@ -782,7 +837,7 @@ test("traverseBreadthFirst: Custom start node", async (t) => { ], "Traversed graph in correct order, starting with library.b"); }); -test("traverseBreadthFirst: getDependencies callback", async (t) => { +test("traverseBreadthFirst: dependencies parameter", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "library.a" @@ -802,9 +857,7 @@ test("traverseBreadthFirst: getDependencies callback", async (t) => { const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); const dependencies = callbackStub.getCalls().map((call) => { - return call.args[0].getDependencies().map((dep) => { - return dep.getName(); - }); + return call.args[0].dependencies; }); t.deepEqual(callbackCalls, [ @@ -861,7 +914,7 @@ test("traverseBreadthFirst: Dependency declaration order is followed", async (t) ]); }); -test("traverseDepthFirst", async (t) => { +test("traverseDepthFirst: Async", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "library.a" @@ -871,10 +924,47 @@ test("traverseDepthFirst", async (t) => { graph.declareDependency("library.a", "library.b"); - await traverseDepthFirst(t, graph, [ + const callbackStub = t.context.sinon.stub().resolves().onFirstCall().callsFake(() => { + return new Promise((resolve, reject) => { + setTimeout(() => { + t.is(callbackStub.callCount, 1, "Callback still called only once while waiting for promise"); + resolve(); + }, 100); + }); + }); + await graph.traverseDepthFirst(callbackStub); + + t.is(callbackStub.callCount, 2, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, [ "library.b", - "library.a" - ]); + "library.a", + ], "Traversed graph in correct order, starting with library.b"); +}); + +test("traverseDepthFirst: Sync", async (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "library.a" + }); + graph.addProject(await createProject("library.a")); + graph.addProject(await createProject("library.b")); + + graph.declareDependency("library.a", "library.b"); + + const callbackStub = t.context.sinon.stub().returns(); + await graph.traverseDepthFirst(callbackStub); + + t.is(callbackStub.callCount, 2, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + + t.deepEqual(callbackCalls, [ + "library.b", + "library.a", + ], "Traversed graph in correct order, starting with library.b"); }); test("traverseDepthFirst: No project visited twice", async (t) => { @@ -971,7 +1061,7 @@ test("traverseDepthFirst: Custom start node", async (t) => { ], "Traversed graph in correct order, starting with library.b"); }); -test("traverseDepthFirst: getDependencies callback", async (t) => { +test("traverseDepthFirst: dependencies parameter", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ rootProjectName: "library.a" @@ -991,9 +1081,7 @@ test("traverseDepthFirst: getDependencies callback", async (t) => { const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); const dependencies = callbackStub.getCalls().map((call) => { - return call.args[0].getDependencies().map((dep) => { - return dep.getName(); - }); + return call.args[0].dependencies; }); t.deepEqual(callbackCalls, [ @@ -1074,22 +1162,31 @@ test("join", async (t) => { graph2.addProject(await createProject("theme.b")); graph2.addProject(await createProject("theme.c")); graph2.addProject(await createProject("theme.d")); + graph2.addProject(await createProject("theme.e")); graph2.declareDependency("theme.a", "theme.d"); graph2.declareDependency("theme.a", "theme.c"); graph2.declareDependency("theme.b", "theme.a"); // This causes theme.b to not appear + graph2.declareOptionalDependency("theme.a", "theme.e"); const extensionB = await createExtension("extension.b"); graph2.addExtension(extensionB); - graph1.join(graph2); + + t.true(graph1._hasUnresolvedOptionalDependencies, + "Graph has unresolved optional dependencies taken over from graph2"); + graph1.declareDependency("library.d", "theme.a"); + graph1.declareDependency("library.d", "theme.e"); + + graph1.resolveOptionalDependencies(); await traverseDepthFirst(t, graph1, [ "library.b", "library.c", "theme.d", "theme.c", + "theme.e", "theme.a", "library.d", "library.a", @@ -1097,6 +1194,33 @@ test("join", async (t) => { t.is(graph1.getExtension("extension.a"), extensionA, "Should return correct extension"); t.is(graph1.getExtension("extension.b"), extensionB, "Should return correct joined extension"); + + // graph2 remained unmodified + await traverseDepthFirst(t, graph2, [ + "theme.d", + "theme.c", + "theme.a", + ]); +}); + +test("join: Preserves hasUnresolvedOptionalDependencies flag", async (t) => { + const {ProjectGraph} = t.context; + const graph1 = new ProjectGraph({ + rootProjectName: "library.a" + }); + const graph2 = new ProjectGraph({ + rootProjectName: "theme.a" + }); + graph1.addProject(await createProject("library.a")); + graph1.addProject(await createProject("library.b")); + graph1.declareOptionalDependency("library.a", "library.b"); + + graph1.join(graph2); + + t.true(graph1._hasUnresolvedOptionalDependencies, + "graph1 still has unresolved optional dependencies"); + t.false(graph2._hasUnresolvedOptionalDependencies, + "graph2 still does not have unresolved optional dependencies"); }); test("join: Seals incoming graph", (t) => { @@ -1219,6 +1343,9 @@ test("Seal/isSealed", async (t) => { }, { message: expectedSealMsg }); + await t.throwsAsync(graph.resolveOptionalDependencies(), { + message: expectedSealMsg + }); const graph2 = new ProjectGraph({ diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index 66519887c24..2742fee2ef4 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -232,7 +232,7 @@ test.serial("generateDependencyTree should skip framework project without versio const projectGraph = await projectGraphBuilder(provider); await ui5Framework.enrichProjectGraph(projectGraph); - t.is(projectGraph.getAllProjects().length, 1, "Project graph should remain unchanged"); + t.is(projectGraph.getSize(), 1, "Project graph should remain unchanged"); }); test.serial("generateDependencyTree should skip framework project with version and framework config", async (t) => { @@ -264,7 +264,7 @@ test.serial("generateDependencyTree should skip framework project with version a const projectGraph = await projectGraphBuilder(provider); await ui5Framework.enrichProjectGraph(projectGraph); - t.is(projectGraph.getAllProjects().length, 1, "Project graph should remain unchanged"); + t.is(projectGraph.getSize(), 1, "Project graph should remain unchanged"); }); test.serial("generateDependencyTree should throw for framework project with dependency missing in graph", async (t) => { @@ -317,7 +317,7 @@ test.serial("generateDependencyTree should ignore root project without framework const projectGraph = await projectGraphBuilder(provider); await ui5Framework.enrichProjectGraph(projectGraph); - t.is(projectGraph.getAllProjects().length, 1, "Project graph should remain unchanged"); + t.is(projectGraph.getSize(), 1, "Project graph should remain unchanged"); }); test.serial("utils.shouldIncludeDependency", (t) => { From 37d2822504631e82070523644606c8c9dfade675 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Tue, 20 Dec 2022 11:11:04 +0200 Subject: [PATCH 0758/1272] [ui5-project][FEATURE] specVersion 3.0 (#522) Adds schema support for UI5 Tooling v3 --- .../lib/ui5Framework/AbstractResolver.js | 2 +- .../specVersion/{2.0 => }/kind/extension.json | 4 +- .../kind/extension/project-shim.json | 6 +- .../kind/extension/server-middleware.json | 6 +- .../{2.0 => }/kind/extension/task.json | 6 +- .../specVersion/{2.0 => }/kind/project.json | 254 +++++++++++------- .../{2.0 => }/kind/project/application.json | 150 ++++++++--- .../{2.0 => }/kind/project/library.json | 146 +++++++--- .../{2.0 => }/kind/project/module.json | 6 +- .../{2.0 => }/kind/project/theme-library.json | 6 +- .../{2.0.json => specVersion.json} | 6 +- .../project/lib/validation/schema/ui5.json | 7 +- .../test/lib/ui5framework/AbstractResolver.js | 2 +- .../__helper__/builder-bundleOptions.js | 146 ++++++++++ .../validation/schema/__helper__/framework.js | 2 +- .../validation/schema/__helper__/project.js | 8 +- .../specVersion/{2.0 => }/kind/extension.js | 10 +- .../{2.0 => }/kind/extension/project-shim.js | 16 +- .../kind/extension/server-middleware.js | 10 +- .../{2.0 => }/kind/extension/task.js | 10 +- .../specVersion/{2.0 => }/kind/project.js | 8 +- .../{2.0 => }/kind/project/application.js | 22 +- .../{2.0 => }/kind/project/library.js | 22 +- .../{2.0 => }/kind/project/module.js | 14 +- .../{2.0 => }/kind/project/theme-library.js | 14 +- .../project/test/lib/validation/schema/ui5.js | 3 +- 26 files changed, 616 insertions(+), 270 deletions(-) rename packages/project/lib/validation/schema/specVersion/{2.0 => }/kind/extension.json (89%) rename packages/project/lib/validation/schema/specVersion/{2.0 => }/kind/extension/project-shim.json (92%) rename packages/project/lib/validation/schema/specVersion/{2.0 => }/kind/extension/server-middleware.json (91%) rename packages/project/lib/validation/schema/specVersion/{2.0 => }/kind/extension/task.json (91%) rename packages/project/lib/validation/schema/specVersion/{2.0 => }/kind/project.json (75%) rename packages/project/lib/validation/schema/specVersion/{2.0 => }/kind/project/application.json (70%) rename packages/project/lib/validation/schema/specVersion/{2.0 => }/kind/project/library.json (71%) rename packages/project/lib/validation/schema/specVersion/{2.0 => }/kind/project/module.json (92%) rename packages/project/lib/validation/schema/specVersion/{2.0 => }/kind/project/theme-library.json (94%) rename packages/project/lib/validation/schema/specVersion/{2.0.json => specVersion.json} (80%) create mode 100644 packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js rename packages/project/test/lib/validation/schema/specVersion/{2.0 => }/kind/extension.js (89%) rename packages/project/test/lib/validation/schema/specVersion/{2.0 => }/kind/extension/project-shim.js (86%) rename packages/project/test/lib/validation/schema/specVersion/{2.0 => }/kind/extension/server-middleware.js (75%) rename packages/project/test/lib/validation/schema/specVersion/{2.0 => }/kind/extension/task.js (75%) rename packages/project/test/lib/validation/schema/specVersion/{2.0 => }/kind/project.js (92%) rename packages/project/test/lib/validation/schema/specVersion/{2.0 => }/kind/project/application.js (96%) rename packages/project/test/lib/validation/schema/specVersion/{2.0 => }/kind/project/library.js (96%) rename packages/project/test/lib/validation/schema/specVersion/{2.0 => }/kind/project/module.js (93%) rename packages/project/test/lib/validation/schema/specVersion/{2.0 => }/kind/project/theme-library.js (93%) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 88b3dd9ce16..36fe8000242 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -8,7 +8,7 @@ import semver from "semver"; // https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string // // This needs to be aligned with the ui5.yaml JSON schema: -// lib/validation/schema/specVersion/2.0/kind/project.json#/definitions/framework/properties/version/pattern +// lib/validation/schema/specVersion/kind/project.json#/definitions/framework/properties/version/pattern // // eslint-disable-next-line max-len const SEMVER_VERSION_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/; diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json b/packages/project/lib/validation/schema/specVersion/kind/extension.json similarity index 89% rename from packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json rename to packages/project/lib/validation/schema/specVersion/kind/extension.json index a6f47474aad..c5c46910093 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension.json @@ -1,11 +1,11 @@ { "$schema": "http://json-schema.org/draft-07/schema", - "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension.json", + "$id": "http://ui5.sap/schema/specVersion/kind/extension.json", "type": "object", "required": ["specVersion", "kind", "type", "metadata"], "properties": { - "specVersion": { "enum": ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json similarity index 92% rename from packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json rename to packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json index 8aa4c6b18d3..4f3d9226c14 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json @@ -1,19 +1,19 @@ { "$schema": "http://json-schema.org/draft-07/schema", - "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension/project-shim.json", + "$id": "http://ui5.sap/schema/specVersion/kind/extension/project-shim.json", "type": "object", "required": ["specVersion", "kind", "type", "metadata", "shims"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] } } }, "then": { "additionalProperties": false, "properties": { "specVersion": { - "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] + "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] }, "kind": { "enum": ["extension"] diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json similarity index 91% rename from packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json rename to packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json index 5385bdd9fda..151c0c22288 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json @@ -1,19 +1,19 @@ { "$schema": "http://json-schema.org/draft-07/schema", - "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension/server-middleware.json", + "$id": "http://ui5.sap/schema/specVersion/kind/extension/server-middleware.json", "type": "object", "required": ["specVersion", "kind", "type", "metadata", "middleware"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/kind/extension/task.json similarity index 91% rename from packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json rename to packages/project/lib/validation/schema/specVersion/kind/extension/task.json index f75d2723d38..ab5413c7852 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/task.json @@ -1,18 +1,18 @@ { "$schema": "http://json-schema.org/draft-07/schema", - "$id": "http://ui5.sap/schema/specVersion/2.0/kind/extension/task.json", + "$id": "http://ui5.sap/schema/specVersion/kind/extension/task.json", "type": "object", "required": ["specVersion", "kind", "type", "metadata", "task"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] } + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] }, + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json b/packages/project/lib/validation/schema/specVersion/kind/project.json similarity index 75% rename from packages/project/lib/validation/schema/specVersion/2.0/kind/project.json rename to packages/project/lib/validation/schema/specVersion/kind/project.json index 5936a8e8302..3d6a1a49bcb 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project.json @@ -1,11 +1,11 @@ { "$schema": "http://json-schema.org/draft-07/schema", - "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project.json", + "$id": "http://ui5.sap/schema/specVersion/kind/project.json", "type": "object", "required": ["specVersion", "type"], "properties": { - "specVersion": { "enum": ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" @@ -119,62 +119,7 @@ "additionalProperties": false, "properties": { "bundleDefinition": { - "type": "object", - "additionalProperties": false, - "required": ["name"], - "properties": { - "name": { - "type": "string" - }, - "defaultFileTypes": { - "type": "array", - "items": { - "type": "string" - } - }, - "sections": { - "type": "array", - "items": { - "type": "object", - "additionalProperties": false, - "required": ["mode", "filters"], - "properties": { - "name": { - "type": "string" - }, - "mode": { - "enum": ["raw", "preload", "require", "provided"] - }, - "filters": { - "type": "array", - "items": { - "type": "string" - } - }, - "resolve": { - "type": "boolean", - "default": false - }, - "resolveConditional": { - "type": "boolean", - "default": false - }, - "renderer": { - "type": "boolean", - "default": false - }, - "sort": { - "type": "boolean", - "default": true - }, - "declareRawModules": { - "type": "boolean", - "default": false - } - } - } - } - } + "$ref": "#/definitions/builder-bundles-bundleDefinition" }, "bundleOptions": { "$ref": "#/definitions/builder-bundles-bundleOptions" @@ -190,65 +135,142 @@ "additionalProperties": false, "properties": { "bundleDefinition": { + "$ref": "#/definitions/builder-bundles-bundleDefinition-2.4" + }, + "bundleOptions": { + "$ref": "#/definitions/builder-bundles-bundleOptions" + } + } + } + }, + "builder-bundles-3.0": { + "type": "array", + "additionalProperties": false, + "items": { + "type": "object", + "additionalProperties": false, + "properties": { + "bundleDefinition": { + "$ref": "#/definitions/builder-bundles-bundleDefinition-2.4" + }, + "bundleOptions": { + "$ref": "#/definitions/builder-bundles-bundleOptions-3.0" + } + } + } + }, + "builder-bundles-bundleDefinition": { + "type": "object", + "additionalProperties": false, + "required": ["name"], + "properties": { + "name": { + "type": "string" + }, + "defaultFileTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "sections": { + "type": "array", + "items": { "type": "object", "additionalProperties": false, - "required": ["name"], + "required": ["mode", "filters"], "properties": { "name": { "type": "string" }, - "defaultFileTypes": { + "mode": { + "enum": ["raw", "preload", "require", "provided"] + }, + "filters": { "type": "array", "items": { "type": "string" } }, - "sections": { + "resolve": { + "type": "boolean", + "default": false + }, + "resolveConditional": { + "type": "boolean", + "default": false + }, + "renderer": { + "type": "boolean", + "default": false + }, + "sort": { + "type": "boolean", + "default": true + }, + "declareRawModules": { + "type": "boolean", + "default": false + } + } + } + } + } + }, + "builder-bundles-bundleDefinition-2.4": { + "type": "object", + "additionalProperties": false, + "required": ["name"], + "properties": { + "name": { + "type": "string" + }, + "defaultFileTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "sections": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": false, + "required": ["mode", "filters"], + "properties": { + "name": { + "type": "string" + }, + "mode": { + "enum": ["raw", "preload", "require", "provided", "bundleInfo"] + }, + "filters": { "type": "array", "items": { - "type": "object", - "additionalProperties": false, - "required": ["mode", "filters"], - "properties": { - "name": { - "type": "string" - }, - "mode": { - "enum": ["raw", "preload", "require", "provided", "bundleInfo"] - }, - "filters": { - "type": "array", - "items": { - "type": "string" - } - }, - "resolve": { - "type": "boolean", - "default": false - }, - "resolveConditional": { - "type": "boolean", - "default": false - }, - "renderer": { - "type": "boolean", - "default": false - }, - "sort": { - "type": "boolean", - "default": true - }, - "declareRawModules": { - "type": "boolean", - "default": false - } - } + "type": "string" } + }, + "resolve": { + "type": "boolean", + "default": false + }, + "resolveConditional": { + "type": "boolean", + "default": false + }, + "renderer": { + "type": "boolean", + "default": false + }, + "sort": { + "type": "boolean", + "default": true + }, + "declareRawModules": { + "type": "boolean", + "default": false } } - }, - "bundleOptions": { - "$ref": "#/definitions/builder-bundles-bundleOptions" } } } @@ -279,6 +301,36 @@ } } }, + "builder-bundles-bundleOptions-3.0": { + "type": "object", + "additionalProperties": false, + "properties": { + "optimize": { + "type": "boolean", + "default": true + }, + "decorateBootstrapModule": { + "type": "boolean", + "default": true + }, + "addTryCatchRestartWrapper": { + "type": "boolean", + "default": false + }, + "usePredefineCalls": { + "type": "boolean", + "default": false + }, + "numberOfParts": { + "type": "number", + "default": 1 + }, + "sourceMap": { + "type": "boolean", + "default": true + } + } + }, "builder-componentPreload": { "type": "object", "additionalProperties": false, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/kind/project/application.json similarity index 70% rename from packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json rename to packages/project/lib/validation/schema/specVersion/kind/project/application.json index 83883649173..fd0b063c2d0 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/application.json @@ -1,18 +1,18 @@ { "$schema": "http://json-schema.org/draft-07/schema", - "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/application.json", + "$id": "http://ui5.sap/schema/specVersion/kind/project/application.json", "type": "object", "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.6"] } + "specVersion": { "enum": ["3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.6"] }, + "specVersion": { "enum": ["3.0"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.6" + "$ref": "#/definitions/builder-specVersion-3.0" }, "server": { "$ref": "../project.json#/definitions/server" @@ -41,15 +41,16 @@ } }, "else": { + "if": { "properties": { - "specVersion": { "enum": ["2.5"] } + "specVersion": { "enum": ["2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5"] }, + "specVersion": { "enum": ["2.6"] }, "kind": { "enum": ["project", null] }, @@ -66,7 +67,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.5" + "$ref": "#/definitions/builder-specVersion-2.6" }, "server": { "$ref": "../project.json#/definitions/server" @@ -80,13 +81,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -103,7 +104,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.4" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -117,13 +118,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -140,7 +141,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -154,13 +155,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -177,7 +178,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -189,29 +190,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["application"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -390,6 +429,39 @@ "$ref": "../project.json#/definitions/builder-settings" } } + }, + "builder-specVersion-3.0": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "cachebuster": { + "type": "object", + "additionalProperties": false, + "properties": { + "signatureType": { + "enum": ["time", "hash"] + } + } + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-3.0" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "minification": { + "$ref": "../project.json#/definitions/builder-minification" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/kind/project/library.json similarity index 71% rename from packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json rename to packages/project/lib/validation/schema/specVersion/kind/project/library.json index c38e0a3ab4d..86f1efe0a36 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/library.json @@ -1,18 +1,18 @@ { "$schema": "http://json-schema.org/draft-07/schema", - "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/library.json", + "$id": "http://ui5.sap/schema/specVersion/kind/project/library.json", "type": "object", "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.6"] } + "specVersion": { "enum": ["3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.6"] }, + "specVersion": { "enum": ["3.0"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.6" + "$ref": "#/definitions/builder-specVersion-3.0" }, "server": { "$ref": "../project.json#/definitions/server" @@ -43,13 +43,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.5"] } + "specVersion": { "enum": ["2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5"] }, + "specVersion": { "enum": ["2.6"] }, "kind": { "enum": ["project", null] }, @@ -66,7 +66,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.5" + "$ref": "#/definitions/builder-specVersion-2.6" }, "server": { "$ref": "../project.json#/definitions/server" @@ -80,13 +80,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -103,7 +103,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.4" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -117,13 +117,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -140,7 +140,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -154,13 +154,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -177,7 +177,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -189,29 +189,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -384,6 +422,36 @@ "$ref": "../project.json#/definitions/builder-settings" } } + }, + "builder-specVersion-3.0": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "jsdoc": { + "$ref": "#/definitions/builder-jsdoc" + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-3.0" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "libraryPreload": { + "$ref": "../project.json#/definitions/builder-libraryPreload" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "minification": { + "$ref": "../project.json#/definitions/builder-minification" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/kind/project/module.json similarity index 92% rename from packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json rename to packages/project/lib/validation/schema/specVersion/kind/project/module.json index e1b55526f84..8bd717ff534 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/module.json @@ -1,18 +1,18 @@ { "$schema": "http://json-schema.org/draft-07/schema", - "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/module.json", + "$id": "http://ui5.sap/schema/specVersion/kind/project/module.json", "type": "object", "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.5", "2.6"] } + "specVersion": { "enum": ["2.5", "2.6", "3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5", "2.6"] }, + "specVersion": { "enum": ["2.5", "2.6", "3.0"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json similarity index 94% rename from packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json rename to packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json index ed5f32f8972..fc292179a6a 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json @@ -1,18 +1,18 @@ { "$schema": "http://json-schema.org/draft-07/schema", - "$id": "http://ui5.sap/schema/specVersion/2.0/kind/project/theme-library.json", + "$id": "http://ui5.sap/schema/specVersion/kind/project/theme-library.json", "type": "object", "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.5", "2.6"] } + "specVersion": { "enum": ["2.5", "2.6", "3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5", "2.6"] }, + "specVersion": { "enum": ["2.5", "2.6", "3.0"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/2.0.json b/packages/project/lib/validation/schema/specVersion/specVersion.json similarity index 80% rename from packages/project/lib/validation/schema/specVersion/2.0.json rename to packages/project/lib/validation/schema/specVersion/specVersion.json index c9b9b127f7e..16458d4676d 100644 --- a/packages/project/lib/validation/schema/specVersion/2.0.json +++ b/packages/project/lib/validation/schema/specVersion/specVersion.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion"], "properties": { - "specVersion": { "enum": ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" @@ -20,7 +20,7 @@ } }, "then": { - "$ref": "2.0/kind/project.json" + "$ref": "kind/project.json" }, "else": { "if": { @@ -31,7 +31,7 @@ } }, "then": { - "$ref": "2.0/kind/extension.json" + "$ref": "kind/extension.json" } } } diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index 68ca4530890..6d6d1f08afd 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -10,20 +10,21 @@ "properties": { "specVersion": { "enum": [ + "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, "if": { "properties": { - "specVersion": { "enum": ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } + "specVersion": { "enum": ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } } }, "then": { - "$ref": "specVersion/2.0.json" + "$ref": "specVersion/specVersion.json" }, "else": { "if": { diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index f85c67fee49..a8093f62964 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -609,7 +609,7 @@ test.serial( test.serial("AbstractResolver: SEMVER_VERSION_REGEXP should be aligned with JSON schema", async (t) => { const projectSchema = JSON.parse( await readFile(fileURLToPath( - new URL("../../../lib/validation/schema/specVersion/2.0/kind/project.json", import.meta.url) + new URL("../../../lib/validation/schema/specVersion/kind/project.json", import.meta.url) ), {encoding: "utf-8"}) ); const schemaPattern = projectSchema.definitions.framework.properties.version.pattern; diff --git a/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js b/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js new file mode 100644 index 00000000000..1ba0be8dade --- /dev/null +++ b/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js @@ -0,0 +1,146 @@ +/** + * Common test functionality for builder/bundles/bundleOptions section in config + */ +export default { + /** + * Executes the tests for different kind of projects, e.g. "application", "library" + * + * @param {Function} test ava test + * @param {Function} assertValidation assertion function + * @param {string} type one of "application" and "library" + */ + defineTests: function(test, assertValidation, type) { + // Version specific tests + ["3.0"].forEach(function(specVersion) { + test(`${type} (specVersion ${specVersion}): builder/bundles/bundleOptions`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": type, + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "bundles": [{ + "bundleOptions": { + "optimize": false, + "decorateBootstrapModule": false, + "addTryCatchRestartWrapper": true, + "usePredefineCalls": true, + "numberOfParts": 8, + "sourceMap": false + } + }] + } + }); + }); + + test(`${type} (specVersion ${specVersion}): builder/bundles/bundleOptions properties removal`, + async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": type, + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "bundles": [{ + "bundleOptions": { + "debugMode": true + } + }] + } + }, [ + { + keyword: "additionalProperties", + dataPath: "/builder/bundles/0/bundleOptions", + params: { + additionalProperty: "debugMode", + }, + message: "should NOT have additional properties", + }, + ]); + }); + + test(`${type} invalid (specVersion ${specVersion}): builder/bundles/bundleOptions config`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": type, + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "bundles": [{ + "bundleOptions": { + "optimize": "invalid value", + "decorateBootstrapModule": {"invalid": "value"}, + "addTryCatchRestartWrapper": ["invalid value"], + "usePredefineCalls": 12, + "numberOfParts": true, + "sourceMap": 55 + } + }] + } + }, [ + { + keyword: "type", + dataPath: "/builder/bundles/0/bundleOptions/optimize", + params: { + type: "boolean", + }, + message: "should be boolean" + }, + { + keyword: "type", + dataPath: + "/builder/bundles/0/bundleOptions/decorateBootstrapModule", + params: { + type: "boolean", + }, + message: "should be boolean" + }, + { + keyword: "type", + dataPath: + "/builder/bundles/0/bundleOptions/addTryCatchRestartWrapper", + params: { + type: "boolean", + }, + message: "should be boolean" + }, + { + keyword: "type", + dataPath: + "/builder/bundles/0/bundleOptions/usePredefineCalls", + params: { + type: "boolean", + }, + message: "should be boolean" + }, + { + keyword: "type", + dataPath: + "/builder/bundles/0/bundleOptions/numberOfParts", + params: { + type: "number", + }, + message: "should be number" + }, + { + keyword: "type", + dataPath: "/builder/bundles/0/bundleOptions/sourceMap", + params: { + type: "boolean", + }, + message: "should be boolean" + } + ]); + }); + }); + } +}; diff --git a/packages/project/test/lib/validation/schema/__helper__/framework.js b/packages/project/test/lib/validation/schema/__helper__/framework.js index 1e09ea3a51a..d8d5ffd2285 100644 --- a/packages/project/test/lib/validation/schema/__helper__/framework.js +++ b/packages/project/test/lib/validation/schema/__helper__/framework.js @@ -10,7 +10,7 @@ export default { * @param {string} type one of "application", "library" and "theme-library" */ defineTests: function(test, assertValidation, type) { - ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`${type} (specVersion ${specVersion}): framework configuration: OpenUI5`, async (t) => { const config = { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index a423859d911..777aeba5153 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -1,5 +1,6 @@ import framework from "./framework.js"; import customConfiguration from "./customConfiguration.js"; +import bundleOptions from "./builder-bundleOptions.js"; /** * Common test functionality to be able to run the same tests for different types of kind "project" @@ -22,8 +23,13 @@ export default { // customConfiguration tests customConfiguration.defineTests(test, assertValidation, type); + // builder.bundleOptions tests + if (["application", "library"].includes(type)) { + bundleOptions.defineTests(test, assertValidation, type); + } + // version specific tests - ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { // tests for all kinds and version 2.0 and above test(`${type} (specVersion ${specVersion}): No metadata`, async (t) => { await assertValidation(t, { diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension.js similarity index 89% rename from packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js rename to packages/project/test/lib/validation/schema/specVersion/kind/extension.js index ddebe686a5d..33a3465c95c 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension.js @@ -1,9 +1,9 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; -import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; -import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; -import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; +import AjvCoverage from "../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../lib/validation/ValidationError.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -24,7 +24,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { test.before((t) => { t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { - includes: ["schema/specVersion/2.0/kind/extension.json"] + includes: ["schema/specVersion/kind/extension.json"] }); }); @@ -38,7 +38,7 @@ test.after.always((t) => { }; t.context.ajvCoverage.verify(thresholds); }); -["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Type project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js similarity index 86% rename from packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js rename to packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js index 1178da31e0c..8bfef62527b 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js @@ -1,10 +1,10 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; -import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; -import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; -import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; -import extension from "../../../../__helper__/extension.js"; +import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; +import extension from "../../../__helper__/extension.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -25,7 +25,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { test.before((t) => { t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { - includes: ["schema/specVersion/2.0/kind/extension/project-shim.json"] + includes: ["schema/specVersion/kind/extension/project-shim.json"] }); }); @@ -40,7 +40,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -52,7 +52,7 @@ test.after.always((t) => { "shims": { "configurations": { "invalid": { - "specVersion": "3.0", + "specVersion": "4.0", "type": "does-not-exist", "metadata": { "name": "my-application" @@ -134,7 +134,7 @@ const additionalConfiguration = { } }, "my-other-dependency": { - "specVersion": "3.0", + "specVersion": "4.0", "type": "does-not-exist", "metadata": { "name": "my-application" diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js similarity index 75% rename from packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js rename to packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js index 5375e1f7535..2d341142077 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/server-middleware.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js @@ -1,10 +1,10 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; -import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; -import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; -import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; -import extension from "../../../../__helper__/extension.js"; +import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; +import extension from "../../../__helper__/extension.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -25,7 +25,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { test.before((t) => { t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { - includes: ["schema/specVersion/2.0/kind/extension/server-middleware.json"] + includes: ["schema/specVersion/kind/extension/server-middleware.json"] }); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js similarity index 75% rename from packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js rename to packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js index 81f76bf6c9e..5dfcfd71ef2 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/extension/task.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js @@ -1,10 +1,10 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; -import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; -import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; -import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; -import extension from "../../../../__helper__/extension.js"; +import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; +import extension from "../../../__helper__/extension.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -25,7 +25,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { test.before((t) => { t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { - includes: ["schema/specVersion/2.0/kind/extension/task.json"] + includes: ["schema/specVersion/kind/extension/task.json"] }); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js b/packages/project/test/lib/validation/schema/specVersion/kind/project.js similarity index 92% rename from packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js rename to packages/project/test/lib/validation/schema/specVersion/kind/project.js index c35bef762c9..72bda51c6c2 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project.js @@ -1,9 +1,9 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; -import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; -import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; -import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; +import AjvCoverage from "../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../lib/validation/ValidationError.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -24,7 +24,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { test.before((t) => { t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { - includes: ["schema/specVersion/2.0/kind/project.json"] + includes: ["schema/specVersion/kind/project.json"] }); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js similarity index 96% rename from packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js rename to packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index c355bcfee29..09c89baf3c6 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -1,10 +1,10 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; -import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; -import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; -import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; -import project from "../../../../__helper__/project.js"; +import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; +import project from "../../../__helper__/project.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -30,7 +30,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { test.before((t) => { t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { - includes: ["schema/specVersion/2.0/kind/project/application.json"] + includes: ["schema/specVersion/kind/project/application.json"] }); }); @@ -45,7 +45,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -435,7 +435,7 @@ test.after.always((t) => { keyword: "enum", message: "should be equal to one of the allowed values", params: { - allowedValues: ["2.6", "2.5", "2.4"].includes(specVersion) ? [ + allowedValues: ["3.0", "2.6", "2.5", "2.4"].includes(specVersion) ? [ "raw", "preload", "require", @@ -539,7 +539,7 @@ test.after.always((t) => { }); }); -["2.6", "2.5", "2.4", "2.3"].forEach(function(specVersion) { +["3.0", "2.6", "2.5", "2.4", "2.3"].forEach(function(specVersion) { test(`application (specVersion ${specVersion}): builder/componentPreload/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -636,7 +636,7 @@ test.after.always((t) => { }); }); -["2.6", "2.5", "2.4"].forEach(function(specVersion) { +["3.0", "2.6", "2.5", "2.4"].forEach(function(specVersion) { // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above test(`application (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, async (t) => { @@ -664,7 +664,7 @@ test.after.always((t) => { }); }); -["2.6", "2.5"].forEach(function(specVersion) { +["3.0", "2.6", "2.5"].forEach(function(specVersion) { test(`application (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -845,7 +845,7 @@ test.after.always((t) => { }); }); -["2.6"].forEach(function(specVersion) { +["3.0", "2.6"].forEach(function(specVersion) { test(`application (specVersion ${specVersion}): builder/minification/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js similarity index 96% rename from packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js rename to packages/project/test/lib/validation/schema/specVersion/kind/project/library.js index 5ee5c9db895..ed372082e9c 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js @@ -1,10 +1,10 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; -import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; -import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; -import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; -import project from "../../../../__helper__/project.js"; +import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; +import project from "../../../__helper__/project.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -30,7 +30,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { test.before((t) => { t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { - includes: ["schema/specVersion/2.0/kind/project/library.json"] + includes: ["schema/specVersion/kind/project/library.json"] }); }); @@ -45,7 +45,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): Valid configuration`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -401,7 +401,7 @@ test.after.always((t) => { keyword: "enum", message: "should be equal to one of the allowed values", params: { - allowedValues: ["2.6", "2.5", "2.4"].includes(specVersion) ? [ + allowedValues: ["3.0", "2.6", "2.5", "2.4"].includes(specVersion) ? [ "raw", "preload", "require", @@ -616,7 +616,7 @@ test.after.always((t) => { }); }); -["2.6", "2.5", "2.4", "2.3"].forEach(function(specVersion) { +["3.0", "2.6", "2.5", "2.4", "2.3"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): builder/libraryPreload/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -809,7 +809,7 @@ test.after.always((t) => { }); }); -["2.6", "2.5", "2.4"].forEach(function(specVersion) { +["3.0", "2.6", "2.5", "2.4"].forEach(function(specVersion) { // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above test(`library (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, async (t) => { @@ -837,7 +837,7 @@ test.after.always((t) => { }); }); -["2.6", "2.5"].forEach(function(specVersion) { +["3.0", "2.6", "2.5"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -1018,7 +1018,7 @@ test.after.always((t) => { }); }); -["2.6"].forEach(function(specVersion) { +["3.0", "2.6"].forEach(function(specVersion) { test(`library (specVersion ${specVersion}): builder/minification/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js similarity index 93% rename from packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js rename to packages/project/test/lib/validation/schema/specVersion/kind/project/module.js index d1d886d67be..3177cc927c7 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js @@ -1,10 +1,10 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; -import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; -import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; -import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; -import project from "../../../../__helper__/project.js"; +import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; +import project from "../../../__helper__/project.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -25,7 +25,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { test.before((t) => { t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { - includes: ["schema/specVersion/2.0/kind/project/module.json"] + includes: ["schema/specVersion/kind/project/module.json"] }); }); @@ -40,7 +40,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -139,7 +139,7 @@ test.after.always((t) => { }); }); -["2.6", "2.5"].forEach(function(specVersion) { +["3.0", "2.6", "2.5"].forEach(function(specVersion) { test(`Server configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js similarity index 93% rename from packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js rename to packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js index e54ef1f148d..dafcf8f92e1 100644 --- a/packages/project/test/lib/validation/schema/specVersion/2.0/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js @@ -1,10 +1,10 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; -import AjvCoverage from "../../../../../../../utils/AjvCoverage.js"; -import {_Validator as Validator} from "../../../../../../../../lib/validation/validator.js"; -import ValidationError from "../../../../../../../../lib/validation/ValidationError.js"; -import project from "../../../../__helper__/project.js"; +import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; +import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; +import project from "../../../__helper__/project.js"; async function assertValidation(t, config, expectedErrors = undefined) { const validation = t.context.validator.validate({config, project: {id: "my-project"}}); @@ -30,7 +30,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { test.before((t) => { t.context.validator = new Validator({Ajv, ajvErrors}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { - includes: ["schema/specVersion/2.0/kind/project/theme-library.json"] + includes: ["schema/specVersion/kind/project/theme-library.json"] }); }); @@ -46,7 +46,7 @@ test.after.always((t) => { }); -["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -167,7 +167,7 @@ test.after.always((t) => { }); }); -["2.6", "2.5"].forEach(function(specVersion) { +["3.0", "2.6", "2.5"].forEach(function(specVersion) { test(`theme-library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index ee5a560f869..cff33c79eba 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -102,7 +102,7 @@ test("Invalid specVersion", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. -Supported specification versions: "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" +Supported specification versions: "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, params: { errors: [ @@ -112,6 +112,7 @@ For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specific message: "should be equal to one of the allowed values", params: { allowedValues: [ + "3.0", "2.6", "2.5", "2.4", From f39c79fe4d2585cdd6f00dd3ab3e4b64301c1f99 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 16 Dec 2022 18:52:28 +0100 Subject: [PATCH 0759/1272] [ui5-project][INTERNAL] BuildContext: Disallow build-manifest creation for self-conftained builds Use-cases are unclear, so do not allow this for the time being. --- .../project/lib/build/helpers/BuildContext.js | 6 ++ .../test/lib/build/helpers/BuildContext.js | 75 +++++++++++++++++-- 2 files changed, 76 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/build/helpers/BuildContext.js b/packages/project/lib/build/helpers/BuildContext.js index f861d739acf..9d0ab6bc0bc 100644 --- a/packages/project/lib/build/helpers/BuildContext.js +++ b/packages/project/lib/build/helpers/BuildContext.js @@ -27,6 +27,12 @@ class BuildContext { graph.getRoot().getType()); } + if (createBuildManifest && selfContained) { + throw new Error( + `Build manifest creation is currently not supported for ` + + `self-contained builds`); + } + this._graph = graph; this._buildConfig = { selfContained, diff --git a/packages/project/test/lib/build/helpers/BuildContext.js b/packages/project/test/lib/build/helpers/BuildContext.js index ceaf0e81413..a210707d8b5 100644 --- a/packages/project/test/lib/build/helpers/BuildContext.js +++ b/packages/project/test/lib/build/helpers/BuildContext.js @@ -65,7 +65,7 @@ test("getBuildConfig: Custom values", (t) => { selfContained: true, cssVariables: true, jsdoc: true, - createBuildManifest: true, + createBuildManifest: false, includedTasks: ["included tasks"], excludedTasks: ["excluded tasks"], }); @@ -74,18 +74,18 @@ test("getBuildConfig: Custom values", (t) => { selfContained: true, cssVariables: true, jsdoc: true, - createBuildManifest: true, + createBuildManifest: false, includedTasks: ["included tasks"], excludedTasks: ["excluded tasks"], }, "Returned correct value"); }); -test("createBuildManifest not supported", (t) => { +test("createBuildManifest not supported for type application", (t) => { const err = t.throws(() => { new BuildContext({ getRoot: () => { return { - getType: () => "pony" + getType: () => "application" }; } }, "taskRepository", { @@ -93,10 +93,75 @@ test("createBuildManifest not supported", (t) => { }); }); t.is(err.message, - "Build manifest creation is currently not supported for projects of type pony", + "Build manifest creation is currently not supported for projects of type application", "Threw with expected error message"); }); +test("createBuildManifest not supported for type module", (t) => { + const err = t.throws(() => { + new BuildContext({ + getRoot: () => { + return { + getType: () => "module" + }; + } + }, "taskRepository", { + createBuildManifest: true + }); + }); + t.is(err.message, + "Build manifest creation is currently not supported for projects of type module", + "Threw with expected error message"); +}); + +test("createBuildManifest not supported for self-contained build", (t) => { + const err = t.throws(() => { + new BuildContext({ + getRoot: () => { + return { + getType: () => "library" + }; + } + }, "taskRepository", { + createBuildManifest: true, + selfContained: true + }); + }); + t.is(err.message, + "Build manifest creation is currently not supported for self-contained builds", + "Threw with expected error message"); +}); + +test("createBuildManifest supported for css-variables build", (t) => { + t.notThrows(() => { + new BuildContext({ + getRoot: () => { + return { + getType: () => "library" + }; + } + }, "taskRepository", { + createBuildManifest: true, + cssVariables: true + }); + }); +}); + +test("createBuildManifest supported for jsdoc build", (t) => { + t.notThrows(() => { + new BuildContext({ + getRoot: () => { + return { + getType: () => "library" + }; + } + }, "taskRepository", { + createBuildManifest: true, + jsdoc: true + }); + }); +}); + test("getBuildOption", (t) => { const buildContext = new BuildContext("graph", "taskRepository", { cssVariables: "value", From 7923957ce7c1a6d52c1fea5975b0d9101ce31f49 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Thu, 22 Dec 2022 15:39:49 +0200 Subject: [PATCH 0760/1272] [ui5-project][INTERNAL] Reference the correct URL for the logo (#531) --- packages/project/jsdoc.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json index 7a3a8e18880..7f4c88bde09 100644 --- a/packages/project/jsdoc.json +++ b/packages/project/jsdoc.json @@ -27,7 +27,7 @@ "openGraph": { "title": "UI5 Tooling - API Reference", "type": "website", - "image": "https://sap.github.io/ui5-tooling/docs/images/UI5_logo_wide.png", + "image": "https://sap.github.io/ui5-tooling/v3/images/UI5_logo_wide.png", "site_name": "UI5 Tooling - API Reference", "url": "https://sap.github.io/ui5-tooling/" }, From 38d2f9025ab3770882399d4dab482475f94f17f6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 21 Dec 2022 16:03:44 +0100 Subject: [PATCH 0761/1272] [ui5-project][INTERNAL] Refactor log-calls * Use template literals instead of placeholders. * Replace GroupLogger with standard Logger instance in ProjectBuilder * Pass standard Logger instead of GroupLogger to custom tasks This is in prepration for @ui5/logger changes as per https://github.com/SAP/ui5-logger/pull/353 --- packages/project/lib/build/ProjectBuilder.js | 12 +- packages/project/lib/build/TaskRunner.js | 22 +- .../project/lib/build/helpers/BuildContext.js | 5 +- .../lib/build/helpers/ProjectBuildContext.js | 10 +- .../project/test/lib/build/ProjectBuilder.js | 6 - packages/project/test/lib/build/TaskRunner.js | 90 ++++---- .../test/lib/build/helpers/BuildContext.js | 6 +- .../lib/build/helpers/ProjectBuildContext.js | 195 +++++++++++------- 8 files changed, 183 insertions(+), 163 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 8faba9cbbc0..5bacacc55bf 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -3,7 +3,7 @@ import rimraf from "rimraf"; const rimrafp = promisify(rimraf); import * as resourceFactory from "@ui5/fs/resourceFactory"; import logger from "@ui5/logger"; -const log = logger.getGroupLogger("build"); +const log = logger.getLogger("ProjectBuilder"); import composeProjectList from "./helpers/composeProjectList.js"; import BuildContext from "./helpers/BuildContext.js"; import prettyHrtime from "pretty-hrtime"; @@ -196,8 +196,7 @@ class ProjectBuilder { } } }); - const buildLogger = log.createTaskLogger("🛠 "); - buildLogger.addWork(queue.length - alreadyBuilt.length); + if (queue.length > 1) { // Do not log if only the root project is being built log.info(`Processing ${queue.length} projects`); if (alreadyBuilt.length) { @@ -237,10 +236,8 @@ class ProjectBuilder { // Only build projects that are not already build (i.e. provide a matching build manifest) if (!alreadyBuilt.includes(projectName)) { - buildLogger.startWork(`Building project ${projectName}...`); + log.info(`Building project ${projectName}...`); await projectBuildContext.getTaskRunner().runTasks(); - buildLogger.completeWork(1); - log.verbose(`Finished building project ${projectName}`); } if (!requestedProjects.includes(projectName)) { @@ -273,8 +270,7 @@ class ProjectBuilder { for (const projectName of requiredProjects) { log.verbose(`Creating build context for project ${projectName}...`); const projectBuildContext = this._buildContext.createProjectContext({ - project: this._graph.getProject(projectName), - log + project: this._graph.getProject(projectName) }); projectBuildContexts.set(projectName, projectBuildContext); diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 89409bf5d58..58839b44f80 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -15,14 +15,14 @@ class TaskRunner { * @param {object} parameters * @param {object} parameters.graph * @param {object} parameters.project - * @param {@ui5/logger/GroupLogger} parameters.parentLogger Logger to use + * @param {@ui5/logger/GroupLogger} parameters.log Logger to use * @param {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil TaskUtil instance * @param {@ui5/builder/tasks/taskRepository} parameters.taskRepository Task repository * @param {@ui5/project/build/ProjectBuilder~BuildConfiguration} parameters.buildConfig * Build configuration */ - constructor({graph, project, parentLogger, taskUtil, taskRepository, buildConfig}) { - if (!graph || !project || !parentLogger || !taskUtil || !taskRepository || !buildConfig) { + constructor({graph, project, log, taskUtil, taskRepository, buildConfig}) { + if (!graph || !project || !log || !taskUtil || !taskRepository || !buildConfig) { throw new Error("One or more mandatory parameters not provided"); } this._project = project; @@ -31,8 +31,7 @@ class TaskRunner { this._taskRepository = taskRepository; this._buildConfig = buildConfig; - this._log = parentLogger.createSubLogger(project.getType() + " " + project.getName(), 0.2); - this._taskLog = this._log.createTaskLogger("🔨"); + this._log = log; this._directDependencies = new Set(this._taskUtil.getDependencies()); } @@ -116,8 +115,6 @@ class TaskRunner { return tasksToRun.includes(taskWithoutSuffixCounter); }); - this._taskLog.addWork(allTasks.length); - for (const taskName of allTasks) { const taskFunction = this._tasks[taskName].task; @@ -403,7 +400,7 @@ class TaskRunner { if (specVersion.gte("3.0")) { params.options.taskName = taskName; - params.log = logger.getGroupLogger(`builder:custom-task:${taskName}`); + params.log = logger.getLogger(`builder:custom-task:${taskName}`); } const dependencies = await getDependenciesReader(); @@ -424,12 +421,11 @@ class TaskRunner { * @returns {Promise} Resolves when task has finished */ async _executeTask(taskName, taskFunction, taskParams) { - this._taskLog.startWork(`Running task ${taskName}...`); + this._log.info(`Running task ${taskName}...`); this._taskStart = performance.now(); - await taskFunction(taskParams, this._taskLog); - this._taskLog.completeWork(1); - if (this._taskLog.isLevelEnabled("perf")) { - this._taskLog.perf(`Task ${taskName} finished in ${Math.round((performance.now() - this._taskStart))} ms`); + await taskFunction(taskParams, this._log); + if (this._log.isLevelEnabled("perf")) { + this._log.perf(`Task ${taskName} finished in ${Math.round((performance.now() - this._taskStart))} ms`); } } diff --git a/packages/project/lib/build/helpers/BuildContext.js b/packages/project/lib/build/helpers/BuildContext.js index 9d0ab6bc0bc..48286c5623b 100644 --- a/packages/project/lib/build/helpers/BuildContext.js +++ b/packages/project/lib/build/helpers/BuildContext.js @@ -71,11 +71,10 @@ class BuildContext { return this._graph; } - createProjectContext({project, log}) { + createProjectContext({project}) { const projectBuildContext = new ProjectBuildContext({ buildContext: this, - project, - log + project }); this._projectBuildContexts.push(projectBuildContext); return projectBuildContext; diff --git a/packages/project/lib/build/helpers/ProjectBuildContext.js b/packages/project/lib/build/helpers/ProjectBuildContext.js index fe241183f81..439472836cd 100644 --- a/packages/project/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/lib/build/helpers/ProjectBuildContext.js @@ -1,6 +1,7 @@ import ResourceTagCollection from "@ui5/fs/internal/ResourceTagCollection"; import TaskUtil from "./TaskUtil.js"; import TaskRunner from "../TaskRunner.js"; +import logger from "@ui5/logger"; /** * Build context of a single project. Always part of an overall @@ -10,19 +11,16 @@ import TaskRunner from "../TaskRunner.js"; * @memberof @ui5/project/build/helpers */ class ProjectBuildContext { - constructor({buildContext, log, project}) { + constructor({buildContext, project}) { if (!buildContext) { throw new Error(`Missing parameter 'buildContext'`); } - if (!log) { - throw new Error(`Missing parameter 'log'`); - } if (!project) { throw new Error(`Missing parameter 'project'`); } this._buildContext = buildContext; this._project = project; - this._log = log; + this._log = logger.getLogger(`${project.getType()} ${project.getName()}`); this._queues = { cleanup: [] }; @@ -108,7 +106,7 @@ class ProjectBuildContext { if (!this._taskRunner) { this._taskRunner = new TaskRunner({ project: this._project, - parentLogger: this._log, + log: this._log, taskUtil: this.getTaskUtil(), graph: this._buildContext.getGraph(), taskRepository: this._buildContext.getTaskRepository(), diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 05f2495507a..7f4123a83a8 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -383,16 +383,10 @@ test("_createRequiredBuildContexts", async (t) => { t.is(createProjectContextStub.callCount, 3, "BuildContext#createProjectContextStub got called three times"); t.is(createProjectContextStub.getCall(0).args[0].project.getName(), "project.a", "First call to BuildContext#createProjectContextStub with expected project"); - t.truthy(createProjectContextStub.getCall(0).args[0].log, - "First call to BuildContext#createProjectContextStub with a log instance"); t.is(createProjectContextStub.getCall(1).args[0].project.getName(), "project.c", "Second call to BuildContext#createProjectContextStub with expected project"); - t.truthy(createProjectContextStub.getCall(1).args[0].log, - "Second call to BuildContext#createProjectContextStub with a log instance"); t.is(createProjectContextStub.getCall(2).args[0].project.getName(), "project.b", "Third call to BuildContext#createProjectContextStub with expected project"); - t.truthy(createProjectContextStub.getCall(2).args[0].log, - "Third call to BuildContext#createProjectContextStub with a log instance"); }); test.serial("_getProjectFilter with dependencyIncludes", async (t) => { diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index f0683227f23..b82d0d9c934 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -3,7 +3,7 @@ import sinonGlobal from "sinon"; import esmock from "esmock"; import logger from "@ui5/logger"; logger.setLevel("perf"); -const parentLogger = logger.getGroupLogger("mygroup"); +const log = logger.getLogger("mygroup"); function noop() {} function emptyarray() { @@ -106,7 +106,7 @@ test.beforeEach(async (t) => { }; t.context.logger = { - getGroupLogger: sinon.stub().returns("group logger") + getLogger: sinon.stub().returns("group logger") }; t.context.resourceFactory = { @@ -131,7 +131,7 @@ test("Missing parameters", (t) => { graph, taskUtil, taskRepository, - parentLogger, + log, buildConfig }); }, { @@ -142,7 +142,7 @@ test("Missing parameters", (t) => { project: getMockProject("application"), taskUtil, taskRepository, - parentLogger, + log, buildConfig }); }, { @@ -153,7 +153,7 @@ test("Missing parameters", (t) => { project: getMockProject("application"), graph, taskRepository, - parentLogger, + log, buildConfig }); }, { @@ -164,7 +164,7 @@ test("Missing parameters", (t) => { project: getMockProject("application"), graph, taskUtil, - parentLogger, + log, buildConfig }); }, { @@ -180,14 +180,14 @@ test("Missing parameters", (t) => { }); }, { message: "One or more mandatory parameters not provided" - }, "Threw with expected error message for missing parentLogger parameter"); + }, "Threw with expected error message for missing log parameter"); t.throws(() => { new TaskRunner({ project: getMockProject("application"), graph, taskUtil, taskRepository, - parentLogger + log }); }, { message: "One or more mandatory parameters not provided" @@ -197,7 +197,7 @@ test("Missing parameters", (t) => { test("_initTasks: Project of type 'application'", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("application"), graph, taskUtil, taskRepository, parentLogger, buildConfig + project: getMockProject("application"), graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -220,7 +220,7 @@ test("_initTasks: Project of type 'application'", async (t) => { test("_initTasks: Project of type 'library'", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("library"), graph, taskUtil, taskRepository, parentLogger, buildConfig + project: getMockProject("library"), graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -245,7 +245,7 @@ test("_initTasks: Project of type 'library'", async (t) => { test("_initTasks: Project of type 'theme-library'", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("theme-library"), graph, taskUtil, taskRepository, parentLogger, buildConfig + project: getMockProject("theme-library"), graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -261,7 +261,7 @@ test("_initTasks: Project of type 'theme-library'", async (t) => { test("_initTasks: Project of type 'module'", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("module"), graph, taskUtil, taskRepository, parentLogger, buildConfig + project: getMockProject("module"), graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -271,7 +271,7 @@ test("_initTasks: Project of type 'module'", async (t) => { test("_initTasks: Unknown project type", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("pony"), graph, taskUtil, taskRepository, parentLogger, buildConfig + project: getMockProject("pony"), graph, taskUtil, taskRepository, log, buildConfig }); const err = await t.throwsAsync(taskRunner._initTasks()); @@ -286,7 +286,7 @@ test("_initTasks: Custom tasks", async (t) => { {name: "myOtherTask", beforeTask: "replaceVersion"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -316,7 +316,7 @@ test("_initTasks: Custom tasks with no standard tasks", async (t) => { {name: "myOtherTask", beforeTask: "myTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -333,7 +333,7 @@ test("_initTasks: Custom tasks with no standard tasks and second task defining n {name: "myOtherTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -351,7 +351,7 @@ test("_initTasks: Custom tasks with both, before- and afterTask reference", asyn {name: "myTask", beforeTask: "minify", afterTask: "replaceVersion"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -369,7 +369,7 @@ test("_initTasks: Custom tasks with no before-/afterTask reference", async (t) = {name: "myTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -387,7 +387,7 @@ test("_initTasks: Custom tasks without name", async (t) => { {name: ""} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -404,7 +404,7 @@ test("_initTasks: Custom task with name of standard tasks", async (t) => { {name: "replaceVersion", afterTask: "minify"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -424,7 +424,7 @@ test("_initTasks: Multiple custom tasks with same name", async (t) => { {name: "myTask", afterTask: "minify"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -454,7 +454,7 @@ test("_initTasks: Custom tasks with unknown beforeTask", async (t) => { {name: "myTask", beforeTask: "unknownTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -472,7 +472,7 @@ test("_initTasks: Custom tasks with unknown afterTask", async (t) => { {name: "myTask", afterTask: "unknownTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -491,7 +491,7 @@ test("_initTasks: Custom tasks is unknown", async (t) => { {name: "myTask", afterTask: "minify"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -509,7 +509,7 @@ test("_initTasks: Custom tasks with removed beforeTask", async (t) => { {name: "myTask", beforeTask: "removedTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -525,7 +525,7 @@ test("_initTasks: Create dependencies reader for all dependencies", async (t) => const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; const project = getMockProject("application"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); t.is(graph.traverseBreadthFirst.callCount, 1, "ProjectGraph#traverseBreadthFirst called once"); @@ -589,7 +589,7 @@ test("Custom task is called correctly", async (t) => { ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -649,7 +649,7 @@ test("Custom task with legacy spec version", async (t) => { ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -710,7 +710,7 @@ test("Custom task with legacy spec version and requiredDependenciesCallback", as ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -779,7 +779,7 @@ test("Custom task with specVersion 3.0", async (t) => { ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -912,7 +912,7 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { {name: "myTask", afterTask: "myTask", configuration: "bird"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -1060,7 +1060,7 @@ test("Custom task: requiredDependenciesCallback returns unknown dependency", asy ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await t.throwsAsync(taskRunner._initTasks(), { message: @@ -1097,7 +1097,7 @@ test("Custom task: requiredDependenciesCallback returns Array instead of Set", a ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await t.throwsAsync(taskRunner._initTasks(), { message: @@ -1116,7 +1116,7 @@ test.serial("_addTask", async (t) => { const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -1154,7 +1154,7 @@ test.serial("_addTask with options", async (t) => { const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -1198,7 +1198,7 @@ test("_addTask: Duplicate task", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -1219,7 +1219,7 @@ test("_addTask: Task already added to execution order", async (t) => { const {graph, taskUtil, taskRepository, TaskRunner} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); @@ -1241,7 +1241,7 @@ test("getRequiredDependencies: Custom Task", async (t) => { {name: "myTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); t.deepEqual(await taskRunner.getRequiredDependencies(), new Set([]), "Project with custom task >= specVersion 3.0 and no requiredDependenciesCallback " + @@ -1253,7 +1253,7 @@ test("getRequiredDependencies: Default application", async (t) => { const project = getMockProject("application"); project.getBundles = () => []; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); t.deepEqual(await taskRunner.getRequiredDependencies(), new Set([]), "Default application project does not require dependencies"); @@ -1264,7 +1264,7 @@ test("getRequiredDependencies: Default library", async (t) => { const project = getMockProject("library"); project.getBundles = () => []; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); t.deepEqual(await taskRunner.getRequiredDependencies(), new Set(["dep.a", "dep.b"]), "Default library project requires dependencies"); @@ -1275,7 +1275,7 @@ test("getRequiredDependencies: Default theme-library", async (t) => { const project = getMockProject("theme-library"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); t.deepEqual(await taskRunner.getRequiredDependencies(), new Set(["dep.a", "dep.b"]), "Default theme-library project requires dependencies"); @@ -1286,7 +1286,7 @@ test("getRequiredDependencies: Default module", async (t) => { const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); t.deepEqual(await taskRunner.getRequiredDependencies(), new Set([]), "Default module project does not require dependencies"); @@ -1297,7 +1297,7 @@ test("_createDependenciesReader", async (t) => { const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); graph.traverseBreadthFirst.reset(); // Ignore the call in initTask @@ -1358,7 +1358,7 @@ test("_createDependenciesReader: All dependencies required", async (t) => { const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); const res = await taskRunner._createDependenciesReader(new Set(["dep.a", "dep.b"])); @@ -1372,7 +1372,7 @@ test("_createDependenciesReader: No dependencies required", async (t) => { const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, parentLogger, buildConfig + project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); const res = await taskRunner._createDependenciesReader(new Set()); diff --git a/packages/project/test/lib/build/helpers/BuildContext.js b/packages/project/test/lib/build/helpers/BuildContext.js index a210707d8b5..1a072668a41 100644 --- a/packages/project/test/lib/build/helpers/BuildContext.js +++ b/packages/project/test/lib/build/helpers/BuildContext.js @@ -177,8 +177,10 @@ test("getBuildOption", (t) => { test("createProjectContext", async (t) => { const buildContext = new BuildContext("graph", "taskRepository"); const projectBuildContext = await buildContext.createProjectContext({ - project: "project", - log: "log" + project: { + getName: () => "project", + getType: () => "type", + }, }); t.deepEqual(buildContext._projectBuildContexts, [projectBuildContext], diff --git a/packages/project/test/lib/build/helpers/ProjectBuildContext.js b/packages/project/test/lib/build/helpers/ProjectBuildContext.js index 539cc0e1250..ea72c6f724b 100644 --- a/packages/project/test/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/test/lib/build/helpers/ProjectBuildContext.js @@ -17,8 +17,10 @@ import ProjectBuildContext from "../../../../lib/build/helpers/ProjectBuildConte test("Missing parameters", (t) => { t.throws(() => { new ProjectBuildContext({ - project: "project", - log: "log", + project: { + getName: () => "project", + getType: () => "type", + }, }); }, { message: `Missing parameter 'buildContext'` @@ -27,29 +29,22 @@ test("Missing parameters", (t) => { t.throws(() => { new ProjectBuildContext({ buildContext: "buildContext", - log: "log", }); }, { message: `Missing parameter 'project'` }, "Correct error message"); - - t.throws(() => { - new ProjectBuildContext({ - buildContext: "buildContext", - project: "project", - }); - }, { - message: `Missing parameter 'log'` - }, "Correct error message"); }); test("isRootProject: true", (t) => { + const rootProject = { + getName: () => "root project", + getType: () => "type", + }; const projectBuildContext = new ProjectBuildContext({ buildContext: { - getRootProject: () => "root project" + getRootProject: () => rootProject }, - project: "root project", - log: "log" + project: rootProject }); t.true(projectBuildContext.isRootProject(), "Correctly identified root project"); @@ -60,8 +55,10 @@ test("isRootProject: false", (t) => { buildContext: { getRootProject: () => "root project" }, - project: "not the root project", - log: "log" + project: { + getName: () => "not the root project", + getType: () => "type", + } }); t.false(projectBuildContext.isRootProject(), "Correctly identified non-root project"); @@ -73,8 +70,10 @@ test("getBuildOption", (t) => { buildContext: { getOption: getOptionStub }, - project: "project", - log: "log" + project: { + getName: () => "project", + getType: () => "type", + } }); t.is(projectBuildContext.getOption("option"), "pony", "Returned value is correct"); @@ -84,8 +83,10 @@ test("getBuildOption", (t) => { test("registerCleanupTask", (t) => { const projectBuildContext = new ProjectBuildContext({ buildContext: {}, - project: "project", - log: "log" + project: { + getName: () => "project", + getType: () => "type", + } }); projectBuildContext.registerCleanupTask("my task 1"); projectBuildContext.registerCleanupTask("my task 2"); @@ -97,8 +98,10 @@ test("registerCleanupTask", (t) => { test("executeCleanupTasks", (t) => { const projectBuildContext = new ProjectBuildContext({ buildContext: {}, - project: "project", - log: "log" + project: { + getName: () => "project", + getType: () => "type", + } }); const task1 = sinon.stub().resolves(); const task2 = sinon.stub().resolves(); @@ -141,8 +144,10 @@ test.serial("getResourceTagCollection", async (t) => { }); const projectBuildContext = new ProjectBuildContext({ buildContext: {}, - project: "project", - log: "log" + project: { + getName: () => "project", + getType: () => "type", + } }); const fakeProjectCollection = { @@ -173,7 +178,8 @@ test.serial("getResourceTagCollection", async (t) => { test("getResourceTagCollection: Assigns project to resource if necessary", (t) => { const fakeProject = { - getName: () => "project" + getName: () => "project", + getType: () => "type", }; const projectBuildContext = new ProjectBuildContext({ buildContext: {}, @@ -204,7 +210,10 @@ test("getResourceTagCollection: Assigns project to resource if necessary", (t) = }); test("getProject", (t) => { - const project = "project"; + const project = { + getName: () => "project", + getType: () => "type", + }; const getProjectStub = sinon.stub().returns("pony"); const projectBuildContext = new ProjectBuildContext({ buildContext: { @@ -214,20 +223,22 @@ test("getProject", (t) => { }; } }, - project, - log: "log" + project }); t.is(projectBuildContext.getProject("pony project"), "pony", "Returned correct value"); - t.is(getProjectStub.callCount, 1, "getProject got called once"); - t.is(getProjectStub.getCall(0).args[0], "pony project", "getProject got called with correct argument"); + t.is(getProjectStub.callCount, 1, "ProjectGraph#getProject got called once"); + t.is(getProjectStub.getCall(0).args[0], "pony project", "ProjectGraph#getProject got called with correct argument"); t.is(projectBuildContext.getProject(), project); - t.is(getProjectStub.callCount, 1, "getProject is not called again when requesting current project"); + t.is(getProjectStub.callCount, 1, "ProjectGraph#getProject is not called when requesting current project"); }); test("getProject: No name provided", (t) => { - const project = "project"; + const project = { + getName: () => "project", + getType: () => "type", + }; const getProjectStub = sinon.stub().returns("pony"); const projectBuildContext = new ProjectBuildContext({ buildContext: { @@ -237,16 +248,18 @@ test("getProject: No name provided", (t) => { }; } }, - project, - log: "log" + project }); - t.is(projectBuildContext.getProject(), "project", "Returned correct value"); - t.is(getProjectStub.callCount, 0, "getProject has not been called"); + t.is(projectBuildContext.getProject(), project, "Returned correct value"); + t.is(getProjectStub.callCount, 0, "ProjectGraph#getProject has not been called"); }); test("getDependencies", (t) => { - const project = "project"; + const project = { + getName: () => "project", + getType: () => "type", + }; const getDependenciesStub = sinon.stub().returns(["dep a", "dep b"]); const projectBuildContext = new ProjectBuildContext({ buildContext: { @@ -256,17 +269,20 @@ test("getDependencies", (t) => { }; } }, - project, - log: "log" + project }); t.deepEqual(projectBuildContext.getDependencies("pony project"), ["dep a", "dep b"], "Returned correct value"); - t.is(getDependenciesStub.callCount, 1, "getDependencies got called once"); - t.is(getDependenciesStub.getCall(0).args[0], "pony project", "getProject got called with correct arguments"); + t.is(getDependenciesStub.callCount, 1, "ProjectGraph#getDependencies got called once"); + t.is(getDependenciesStub.getCall(0).args[0], "pony project", + "ProjectGraph#getDependencies got called with correct arguments"); }); test("getDependencies: No name provided", (t) => { - const project = {getName: () => "project"}; + const project = { + getName: () => "project", + getType: () => "type", + }; const getDependenciesStub = sinon.stub().returns(["dep a", "dep b"]); const projectBuildContext = new ProjectBuildContext({ buildContext: { @@ -276,20 +292,22 @@ test("getDependencies: No name provided", (t) => { }; } }, - project, - log: "log" + project }); t.deepEqual(projectBuildContext.getDependencies(), ["dep a", "dep b"], "Returned correct value"); - t.is(getDependenciesStub.callCount, 1, "getDependencies got called once"); - t.is(getDependenciesStub.getCall(0).args[0], "project", "getProject got called with correct arguments"); + t.is(getDependenciesStub.callCount, 1, "ProjectGraph#getDependencies got called once"); + t.is(getDependenciesStub.getCall(0).args[0], "project", + "ProjectGraph#getDependencies got called with correct arguments"); }); test("getTaskUtil", (t) => { const projectBuildContext = new ProjectBuildContext({ buildContext: {}, - project: "project", - log: "log" + project: { + getName: () => "project", + getType: () => "type", + } }); t.truthy(projectBuildContext.getTaskUtil(), "Returned a TaskUtil instance"); @@ -298,12 +316,16 @@ test("getTaskUtil", (t) => { test.serial("getTaskRunner", async (t) => { t.plan(2); + const project = { + getName: () => "project", + getType: () => "type", + }; class DummyTaskRunner { constructor(params) { t.deepEqual(params, { graph: "graph", - project: "project", - parentLogger: "log", + project: project, + log: "log", taskUtil: "taskUtil", taskRepository: "taskRepository", buildConfig: "buildConfig" @@ -311,7 +333,10 @@ test.serial("getTaskRunner", async (t) => { } } const ProjectBuildContext = await esmock("../../../../lib/build/helpers/ProjectBuildContext.js", { - "../../../../lib/build/TaskRunner.js": DummyTaskRunner + "../../../../lib/build/TaskRunner.js": DummyTaskRunner, + "@ui5/logger": { + getLogger: sinon.stub().withArgs("type project").returns("log") + } }); const projectBuildContext = new ProjectBuildContext({ @@ -320,8 +345,7 @@ test.serial("getTaskRunner", async (t) => { getTaskRepository: () => "taskRepository", getBuildConfig: () => "buildConfig", }, - project: "project", - log: "log" + project }); projectBuildContext.getTaskUtil = () => "taskUtil"; @@ -332,17 +356,17 @@ test.serial("getTaskRunner", async (t) => { test.serial("createProjectContext", async (t) => { - t.plan(5); + t.plan(4); const project = { - getType: sinon.stub().returns("foo") + getName: sinon.stub().returns("foo"), + getType: sinon.stub().returns("bar"), }; const taskRunner = {"task": "runner"}; class DummyProjectContext { - constructor({buildContext, project, log}) { + constructor({buildContext, project}) { t.is(buildContext, testBuildContext, "Correct buildContext parameter"); t.is(project, project, "Correct project parameter"); - t.is(log, "log", "Correct log parameter"); } getTaskUtil() { return "taskUtil"; @@ -360,8 +384,7 @@ test.serial("createProjectContext", async (t) => { const testBuildContext = new BuildContext("graph", "taskRepository"); const projectContext = await testBuildContext.createProjectContext({ - project, - log: "log" + project }); t.true(projectContext instanceof DummyProjectContext, @@ -371,40 +394,49 @@ test.serial("createProjectContext", async (t) => { }); test("requiresBuild: has no build-manifest", (t) => { - const project = {getBuildManifest: () => null}; + const project = { + getName: sinon.stub().returns("foo"), + getType: sinon.stub().returns("bar"), + getBuildManifest: () => null + }; const projectBuildContext = new ProjectBuildContext({ buildContext: {}, - project, - log: "log" + project }); t.true(projectBuildContext.requiresBuild(), "Project without build-manifest requires to be build"); }); test("requiresBuild: has build-manifest", (t) => { - const project = {getBuildManifest: () => { - return { - timestamp: "2022-07-28T12:00:00.000Z" - }; - }}; + const project = { + getName: sinon.stub().returns("foo"), + getType: sinon.stub().returns("bar"), + getBuildManifest: () => { + return { + timestamp: "2022-07-28T12:00:00.000Z" + }; + } + }; const projectBuildContext = new ProjectBuildContext({ buildContext: {}, - project, - log: "log" + project }); t.false(projectBuildContext.requiresBuild(), "Project with build-manifest does not require to be build"); }); test.serial("getBuildMetadata", (t) => { - const project = {getBuildManifest: () => { - return { - timestamp: "2022-07-28T12:00:00.000Z" - }; - }}; + const project = { + getName: sinon.stub().returns("foo"), + getType: sinon.stub().returns("bar"), + getBuildManifest: () => { + return { + timestamp: "2022-07-28T12:00:00.000Z" + }; + } + }; const getTimeStub = sinon.stub(Date.prototype, "getTime").callThrough().onFirstCall().returns(1659016800000); const projectBuildContext = new ProjectBuildContext({ buildContext: {}, - project, - log: "log" + project }); t.deepEqual(projectBuildContext.getBuildMetadata(), { @@ -415,11 +447,14 @@ test.serial("getBuildMetadata", (t) => { }); test("getBuildMetadata: has no build-manifest", (t) => { - const project = {getBuildManifest: () => null}; + const project = { + getName: sinon.stub().returns("foo"), + getType: sinon.stub().returns("bar"), + getBuildManifest: () => null + }; const projectBuildContext = new ProjectBuildContext({ buildContext: {}, - project, - log: "log" + project }); t.is(projectBuildContext.getBuildMetadata(), null, "Project has no build manifest"); }); From effdaecef4a948813d4ebe3b6b52fe6df6aca520 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 22 Dec 2022 15:27:08 +0100 Subject: [PATCH 0762/1272] [ui5-project][INTERNAL] package.json: Change pre-release identifier to 'rc' --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index be7c7883d8e..1db75bc5f9e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.4", + "version": "3.0.0-rc", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From dc12241a1a2aff5f0a7f4ccd3ff3b6420a80fdd0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 22 Dec 2022 16:01:05 +0100 Subject: [PATCH 0763/1272] [ui5-project][INTERNAL] Azure: Add execution for minimum Node version --- packages/project/azure-pipelines.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index e40181e560b..5848a3161e8 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -9,6 +9,9 @@ trigger: strategy: matrix: + linux_node_min_version: + imageName: 'ubuntu-20.04' + node_version: 16.18.0 linux_node_lts_16: imageName: 'ubuntu-20.04' node_version: 16.x From 6ea8ca98ee6efc2f3d8a543223eb738294556eea Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 23 Dec 2022 09:57:17 +0100 Subject: [PATCH 0764/1272] [ui5-project][INTERNAL] Revert "[INTERNAL] package.json: Change pre-release identifier to 'rc'" This reverts commit effdaecef4a948813d4ebe3b6b52fe6df6aca520. --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index 1db75bc5f9e..be7c7883d8e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc", + "version": "3.0.0-beta.4", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From b68a4d51b163746768c7391429fb675f677a02eb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 23 Dec 2022 09:14:32 +0000 Subject: [PATCH 0765/1272] [ui5-project]Release 3.0.0-beta.5 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index d5711b59488..9ae71a9e7f7 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-beta.4...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-beta.5...HEAD). + + +## [v3.0.0-beta.5] - 2022-12-23 +### Features +- specVersion 3.0 ([#522](https://github.com/SAP/ui5-project/issues/522)) [`c5070e5`](https://github.com/SAP/ui5-project/commit/c5070e55d92ced4326cd7611caf3ec9a3da9e7ed) + ## [v3.0.0-beta.4] - 2022-11-30 @@ -367,6 +373,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-beta.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.4...v3.0.0-beta.5 [v3.0.0-beta.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.3...v3.0.0-beta.4 [v3.0.0-beta.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.2...v3.0.0-beta.3 [v3.0.0-beta.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.1...v3.0.0-beta.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f14451a680c..de67aa4315a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-beta.6", diff --git a/packages/project/package.json b/packages/project/package.json index be7c7883d8e..c58d196fba2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 68cce909c3b530d87506427834425c688f384fa9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 23 Dec 2022 09:26:42 +0000 Subject: [PATCH 0766/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.1-beta.1 to 3.0.1-rc.0 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.1-rc.0/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index de67aa4315a..0a42989446b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-beta.6", "@ui5/fs": "^3.0.0-beta.4", - "@ui5/logger": "^3.0.1-beta.1", + "@ui5/logger": "^3.0.1-rc.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.2.0", @@ -1047,9 +1047,9 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.1-beta.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-beta.1.tgz", - "integrity": "sha512-rkuru3lgFLPXlaWDVLO6+0JpWcp+dJDcu/aWWaNzYZwRRx1qFUOgjmw44gMTvLvVxAaTV9nda5/6oypOCF9Row==", + "version": "3.0.1-rc.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.0.tgz", + "integrity": "sha512-UMhVvmHRfenLJxMPgPPEhDfhGtcmbJ6/KiFxMqsZXFZYLwS0GewkFOCS8bD3tryTznIJnd4QG/pWdJzAWQco3g==", "dependencies": { "npmlog": "^7.0.1" }, @@ -10198,9 +10198,9 @@ } }, "@ui5/logger": { - "version": "3.0.1-beta.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-beta.1.tgz", - "integrity": "sha512-rkuru3lgFLPXlaWDVLO6+0JpWcp+dJDcu/aWWaNzYZwRRx1qFUOgjmw44gMTvLvVxAaTV9nda5/6oypOCF9Row==", + "version": "3.0.1-rc.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.0.tgz", + "integrity": "sha512-UMhVvmHRfenLJxMPgPPEhDfhGtcmbJ6/KiFxMqsZXFZYLwS0GewkFOCS8bD3tryTznIJnd4QG/pWdJzAWQco3g==", "requires": { "npmlog": "^7.0.1" } diff --git a/packages/project/package.json b/packages/project/package.json index c58d196fba2..50b7e1b9cc1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,7 +119,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-beta.6", "@ui5/fs": "^3.0.0-beta.4", - "@ui5/logger": "^3.0.1-beta.1", + "@ui5/logger": "^3.0.1-rc.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.2.0", From f98353c7a0c20ef191ddcdce861d9833b7c148e3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 23 Dec 2022 10:24:07 +0100 Subject: [PATCH 0767/1272] [ui5-project][INTERNAL] package.json: Change pre-release identifier to 'rc' --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index 50b7e1b9cc1..e3566340550 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.5", + "version": "3.0.0-rc", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 73b80b9495b59fd7bd0bdce601fbae5c7a00196a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 23 Dec 2022 09:41:40 +0000 Subject: [PATCH 0768/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-beta.4 to 3.0.0-rc.0 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-rc.0/CHANGELOG.md --- packages/project/package-lock.json | 38 ++++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 21 insertions(+), 19 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0a42989446b..df5c008968e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,16 +1,16 @@ { "name": "@ui5/project", - "version": "3.0.0-beta.5", + "version": "3.0.0-rc", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-beta.5", + "version": "3.0.0-rc", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-beta.6", - "@ui5/fs": "^3.0.0-beta.4", + "@ui5/fs": "^3.0.0-rc.0", "@ui5/logger": "^3.0.1-rc.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1026,18 +1026,17 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-beta.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.4.tgz", - "integrity": "sha512-gIZ8QTwMFV1t2ydyjO7Lmi9Q/b3r50PE1OPrA4+wWhJlEzAtPDKRdNhxka7ziiyeIrFCOUChytbMTgjcwZba3A==", + "version": "3.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.0.tgz", + "integrity": "sha512-CZ1jx8laDnkUbjhmlG3McE9jxSDjC8uCkf5NbjWXP2//KnrQOjnH1/8sYCx4y2FKPBhicEP7rdEb9BUrdrazpA==", "dependencies": { - "@ui5/logger": "^3.0.1-beta.1", + "@ui5/logger": "^3.0.1-rc.0", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", - "globby": "^13.1.2", + "globby": "^13.1.3", "graceful-fs": "^4.2.10", - "make-dir": "^3.1.0", "micromatch": "^4.0.5", - "minimatch": "^5.1.0", + "minimatch": "^5.1.1", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, @@ -5041,6 +5040,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, "dependencies": { "semver": "^6.0.0" }, @@ -5055,6 +5055,7 @@ "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, "bin": { "semver": "bin/semver.js" } @@ -10181,18 +10182,17 @@ } }, "@ui5/fs": { - "version": "3.0.0-beta.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-beta.4.tgz", - "integrity": "sha512-gIZ8QTwMFV1t2ydyjO7Lmi9Q/b3r50PE1OPrA4+wWhJlEzAtPDKRdNhxka7ziiyeIrFCOUChytbMTgjcwZba3A==", + "version": "3.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.0.tgz", + "integrity": "sha512-CZ1jx8laDnkUbjhmlG3McE9jxSDjC8uCkf5NbjWXP2//KnrQOjnH1/8sYCx4y2FKPBhicEP7rdEb9BUrdrazpA==", "requires": { - "@ui5/logger": "^3.0.1-beta.1", + "@ui5/logger": "^3.0.1-rc.0", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", - "globby": "^13.1.2", + "globby": "^13.1.3", "graceful-fs": "^4.2.10", - "make-dir": "^3.1.0", "micromatch": "^4.0.5", - "minimatch": "^5.1.0", + "minimatch": "^5.1.1", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" } @@ -13166,6 +13166,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, "requires": { "semver": "^6.0.0" }, @@ -13173,7 +13174,8 @@ "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true } } }, diff --git a/packages/project/package.json b/packages/project/package.json index e3566340550..d8ebf3c3c66 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,7 +118,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-beta.6", - "@ui5/fs": "^3.0.0-beta.4", + "@ui5/fs": "^3.0.0-rc.0", "@ui5/logger": "^3.0.1-rc.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 951c06225a900f553aae25550ca62cdd10af7c36 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 23 Dec 2022 09:52:00 +0000 Subject: [PATCH 0769/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-beta.6 to 3.0.0-rc.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-rc.0/CHANGELOG.md --- packages/project/package-lock.json | 22 +++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index df5c008968e..26f0ac254eb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-rc", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-beta.6", + "@ui5/builder": "^3.0.0-rc.0", "@ui5/fs": "^3.0.0-rc.0", "@ui5/logger": "^3.0.1-rc.0", "ajv": "^6.12.6", @@ -999,13 +999,13 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-beta.6", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.6.tgz", - "integrity": "sha512-3m4r2l+ztNfGPfnTriDOdXUAzawFKaBhuYurOTJXHlAgIAAh0VHv20nCC16avBjm5HVlYLuljwzq7XLKQ52N7w==", + "version": "3.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.0.tgz", + "integrity": "sha512-GGvkuJ4IKtGwYIGssBzZpoRSKBJiUYm6u9FQlnd6Hv8hzByo3eZqynynSf7Gq8x0F7gbWwkkhQCsr3KO7zwhdQ==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-beta.4", - "@ui5/logger": "^3.0.1-beta.1", + "@ui5/fs": "^3.0.0-rc.0", + "@ui5/logger": "^3.0.1-rc.0", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", @@ -10159,13 +10159,13 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-beta.6", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-beta.6.tgz", - "integrity": "sha512-3m4r2l+ztNfGPfnTriDOdXUAzawFKaBhuYurOTJXHlAgIAAh0VHv20nCC16avBjm5HVlYLuljwzq7XLKQ52N7w==", + "version": "3.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.0.tgz", + "integrity": "sha512-GGvkuJ4IKtGwYIGssBzZpoRSKBJiUYm6u9FQlnd6Hv8hzByo3eZqynynSf7Gq8x0F7gbWwkkhQCsr3KO7zwhdQ==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-beta.4", - "@ui5/logger": "^3.0.1-beta.1", + "@ui5/fs": "^3.0.0-rc.0", + "@ui5/logger": "^3.0.1-rc.0", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index d8ebf3c3c66..c5589c35193 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-beta.6", + "@ui5/builder": "^3.0.0-rc.0", "@ui5/fs": "^3.0.0-rc.0", "@ui5/logger": "^3.0.1-rc.0", "ajv": "^6.12.6", From 8f1f3136cac9d51d7afe7709e3f8dbec885327b5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 23 Dec 2022 10:04:43 +0000 Subject: [PATCH 0770/1272] [ui5-project]Release 3.0.0-rc.0 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 9ae71a9e7f7..1955b42b855 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-beta.5...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.0...HEAD). + + +## [v3.0.0-rc.0] - 2022-12-23 ## [v3.0.0-beta.5] - 2022-12-23 @@ -373,6 +376,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-rc.0]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.5...v3.0.0-rc.0 [v3.0.0-beta.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.4...v3.0.0-beta.5 [v3.0.0-beta.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.3...v3.0.0-beta.4 [v3.0.0-beta.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.2...v3.0.0-beta.3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 26f0ac254eb..bb88270d258 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc", + "version": "3.0.0-rc.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc", + "version": "3.0.0-rc.0", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.0", diff --git a/packages/project/package.json b/packages/project/package.json index c5589c35193..333e4bc2b8b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc", + "version": "3.0.0-rc.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 2931c041c14611c5d605a3b7112f7b3a2e2adef5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 25 Dec 2022 03:20:37 +0000 Subject: [PATCH 0771/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 422 ++++++++++++++--------------- 1 file changed, 207 insertions(+), 215 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bb88270d258..8f4b3b45694 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -83,30 +83,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.5.tgz", - "integrity": "sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==", + "version": "7.20.10", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.10.tgz", + "integrity": "sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.5.tgz", - "integrity": "sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.7.tgz", + "integrity": "sha512-t1ZjCluspe5DW24bn2Rr1CDb2v9rn/hROtg9a2tmd0+QYf4bsloYfLQzjG4qHPNMhWtKdGC33R5AxGR2Af2cBw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-module-transforms": "^7.20.2", - "@babel/helpers": "^7.20.5", - "@babel/parser": "^7.20.5", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5", + "@babel/generator": "^7.20.7", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.7", + "@babel/helpers": "^7.20.7", + "@babel/parser": "^7.20.7", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -131,12 +131,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.5.tgz", - "integrity": "sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.7.tgz", + "integrity": "sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw==", "dev": true, "dependencies": { - "@babel/types": "^7.20.5", + "@babel/types": "^7.20.7", "@jridgewell/gen-mapping": "^0.3.2", "jsesc": "^2.5.1" }, @@ -159,14 +159,15 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", - "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.20.0", + "@babel/compat-data": "^7.20.5", "@babel/helper-validator-option": "^7.18.6", "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", "semver": "^6.3.0" }, "engines": { @@ -232,9 +233,9 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", - "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", + "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.18.9", @@ -242,9 +243,9 @@ "@babel/helper-simple-access": "^7.20.2", "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.10", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" @@ -310,14 +311,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.6.tgz", - "integrity": "sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.7.tgz", + "integrity": "sha512-PBPjs5BppzsGaxHQCDKnZ6Gd9s6xl8bBCluz3vEInLGRJmnZan4F6BYCeqtyXqkk4W5IlPmjK4JlOuZkpJ3xZA==", "dev": true, "dependencies": { - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" @@ -388,9 +389,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz", - "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.7.tgz", + "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -399,33 +400,33 @@ } }, "node_modules/@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.5.tgz", - "integrity": "sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==", + "version": "7.20.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.10.tgz", + "integrity": "sha512-oSf1juCgymrSez8NI4A2sr4+uB/mFd9MXplYGPEBnfAuWmmyeVcHa6xLPiaRBcXkcb/28bgxmQLTVwFKE1yfsg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.5", + "@babel/generator": "^7.20.7", "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-function-name": "^7.19.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.5", - "@babel/types": "^7.20.5", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -434,9 +435,9 @@ } }, "node_modules/@babel/types": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.5.tgz", - "integrity": "sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", + "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.19.4", @@ -1748,9 +1749,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001439", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001439.tgz", - "integrity": "sha512-1MgUzEkoMO6gKfXflStpYgZDlFM7M/ck/bgfVCACO5vnAf0fXoNVHdWtqGU+MYca+4bL9Z5bpOVmR33cWW9G2A==", + "version": "1.0.30001441", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz", + "integrity": "sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==", "dev": true, "funding": [ { @@ -2918,6 +2919,16 @@ "editorconfig": "bin/editorconfig" } }, + "node_modules/editorconfig/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, "node_modules/editorconfig/node_modules/semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -2927,6 +2938,12 @@ "semver": "bin/semver" } }, + "node_modules/editorconfig/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "dev": true + }, "node_modules/electron-to-chromium": { "version": "1.4.284", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", @@ -4179,9 +4196,9 @@ ] }, "node_modules/ignore": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.1.tgz", - "integrity": "sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==", + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", "engines": { "node": ">= 4" } @@ -4207,9 +4224,9 @@ } }, "node_modules/immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.1.tgz", + "integrity": "sha512-7WYV7Q5BTs0nlQm7tl92rDYYoyELLKHoDMBKhrxEoiV4mrfVdRz8hzPiYOzH7yWjzoVEamxRuAqhxL2PLRwZYQ==", "dev": true }, "node_modules/import-fresh": { @@ -5018,13 +5035,12 @@ } }, "node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "yallist": "^3.0.2" } }, "node_modules/magic-string": { @@ -5276,9 +5292,9 @@ } }, "node_modules/markdown-it-anchor": { - "version": "8.6.5", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.5.tgz", - "integrity": "sha512-PI1qEHHkTNWT+X6Ip9w+paonfIQ+QZP9sCeMYi47oqhH+EsW8CrJ8J7CzV19QVOj6il8ATGbK2nTECj22ZHGvQ==", + "version": "8.6.6", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.6.tgz", + "integrity": "sha512-jRW30YGywD2ESXDc+l17AiritL0uVaSnWsb26f+68qaW9zgbIIr1f4v2Nsvc0+s0Z2N3uX6t/yAw7BwCQ1wMsA==", "peerDependencies": { "@types/markdown-it": "*", "markdown-it": "*" @@ -5293,9 +5309,9 @@ } }, "node_modules/marked": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.4.tgz", - "integrity": "sha512-Wcc9ikX7Q5E4BYDPvh1C6QNSxrjC9tBgz+A/vAhp59KXUgachw++uMvMKiSW8oA85nopmPZcEvBoex/YLMsiyA==", + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.5.tgz", + "integrity": "sha512-jPueVhumq7idETHkb203WDD4fMA3yV9emQ5vLwop58lu8bTclMghBWcYAavlDqIEMaisADinV1TooIFCfqOsYQ==", "bin": { "marked": "bin/marked.js" }, @@ -5556,9 +5572,9 @@ } }, "node_modules/minimatch": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.1.tgz", - "integrity": "sha512-362NP+zlprccbEt/SkxKfRMHnNY85V74mVnpUpNyr3F35covl09Kec7/sEFLt3RA4oXmewtoaanoIf67SE5Y5g==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -5900,40 +5916,22 @@ } }, "node_modules/nise": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.3.tgz", - "integrity": "sha512-U597iWTTBBYIV72986jyU382/MMZ70ApWcRmkoF1AZ75bpqOtI3Gugv/6+0jLgoDOabmcSwYBkSSAWIp1eA5cg==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.4.tgz", + "integrity": "sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg==", "dev": true, "dependencies": { "@sinonjs/commons": "^2.0.0", - "@sinonjs/fake-timers": "^7.0.4", + "@sinonjs/fake-timers": "^10.0.2", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "path-to-regexp": "^1.7.0" } }, - "node_modules/nise/node_modules/@sinonjs/fake-timers": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz", - "integrity": "sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^1.7.0" - } - }, - "node_modules/nise/node_modules/@sinonjs/fake-timers/node_modules/@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", - "dev": true, - "dependencies": { - "type-detect": "4.0.8" - } - }, "node_modules/node-gyp": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.0.tgz", - "integrity": "sha512-A6rJWfXFz7TQNjpldJ915WFb1LnhO4lIve3ANPbWreuEoLoKlFT3sxIepPBkLhM27crW8YmN+pjlgbasH6cH/Q==", + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.1.tgz", + "integrity": "sha512-4Q16ZCqq3g8awk6UplT7AuxQ35XN4R/yf/+wSAwcBUAjg7l58RTactWaP8fIDTi0FzI7YcVLujwExakZlfWkXg==", "dependencies": { "env-paths": "^2.2.0", "glob": "^7.1.4", @@ -5950,7 +5948,7 @@ "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": "^12.22 || ^14.13 || >=16" + "node": "^12.13 || ^14.13 || >=16" } }, "node_modules/node-gyp/node_modules/ansi-regex": { @@ -7880,9 +7878,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.57.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.0.tgz", - "integrity": "sha512-IZNEJDTK1cF5B1cGA593TPAV/1S0ysUDxq9XHjX/+SMy0QfUny+nfUsq5ZP7wWSl4eEf7wDJcEZ8ABYFmh3m/w==", + "version": "1.57.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz", + "integrity": "sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -9307,9 +9305,9 @@ } }, "node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "dev": true }, "node_modules/yaml": { @@ -9440,27 +9438,27 @@ } }, "@babel/compat-data": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.5.tgz", - "integrity": "sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==", + "version": "7.20.10", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.10.tgz", + "integrity": "sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg==", "dev": true }, "@babel/core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.5.tgz", - "integrity": "sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.7.tgz", + "integrity": "sha512-t1ZjCluspe5DW24bn2Rr1CDb2v9rn/hROtg9a2tmd0+QYf4bsloYfLQzjG4qHPNMhWtKdGC33R5AxGR2Af2cBw==", "dev": true, "requires": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-module-transforms": "^7.20.2", - "@babel/helpers": "^7.20.5", - "@babel/parser": "^7.20.5", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5", + "@babel/generator": "^7.20.7", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.7", + "@babel/helpers": "^7.20.7", + "@babel/parser": "^7.20.7", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -9477,12 +9475,12 @@ } }, "@babel/generator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.5.tgz", - "integrity": "sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.7.tgz", + "integrity": "sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw==", "dev": true, "requires": { - "@babel/types": "^7.20.5", + "@babel/types": "^7.20.7", "@jridgewell/gen-mapping": "^0.3.2", "jsesc": "^2.5.1" }, @@ -9501,14 +9499,15 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", - "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", "dev": true, "requires": { - "@babel/compat-data": "^7.20.0", + "@babel/compat-data": "^7.20.5", "@babel/helper-validator-option": "^7.18.6", "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", "semver": "^6.3.0" }, "dependencies": { @@ -9555,9 +9554,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", - "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", + "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", "dev": true, "requires": { "@babel/helper-environment-visitor": "^7.18.9", @@ -9565,9 +9564,9 @@ "@babel/helper-simple-access": "^7.20.2", "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.10", + "@babel/types": "^7.20.7" } }, "@babel/helper-plugin-utils": { @@ -9612,14 +9611,14 @@ "dev": true }, "@babel/helpers": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.6.tgz", - "integrity": "sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.7.tgz", + "integrity": "sha512-PBPjs5BppzsGaxHQCDKnZ6Gd9s6xl8bBCluz3vEInLGRJmnZan4F6BYCeqtyXqkk4W5IlPmjK4JlOuZkpJ3xZA==", "dev": true, "requires": { - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" } }, "@babel/highlight": { @@ -9671,43 +9670,43 @@ } }, "@babel/parser": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz", - "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==" + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.7.tgz", + "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==" }, "@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", "dev": true, "requires": { "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" } }, "@babel/traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.5.tgz", - "integrity": "sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==", + "version": "7.20.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.10.tgz", + "integrity": "sha512-oSf1juCgymrSez8NI4A2sr4+uB/mFd9MXplYGPEBnfAuWmmyeVcHa6xLPiaRBcXkcb/28bgxmQLTVwFKE1yfsg==", "dev": true, "requires": { "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.5", + "@babel/generator": "^7.20.7", "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-function-name": "^7.19.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.5", - "@babel/types": "^7.20.5", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", "debug": "^4.1.0", "globals": "^11.1.0" } }, "@babel/types": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.5.tgz", - "integrity": "sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", + "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", "dev": true, "requires": { "@babel/helper-string-parser": "^7.19.4", @@ -10707,9 +10706,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001439", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001439.tgz", - "integrity": "sha512-1MgUzEkoMO6gKfXflStpYgZDlFM7M/ck/bgfVCACO5vnAf0fXoNVHdWtqGU+MYca+4bL9Z5bpOVmR33cWW9G2A==", + "version": "1.0.30001441", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz", + "integrity": "sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==", "dev": true }, "catharsis": { @@ -11603,11 +11602,27 @@ "sigmund": "^1.0.1" }, "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "dev": true } } }, @@ -12513,9 +12528,9 @@ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" }, "ignore": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.1.tgz", - "integrity": "sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==" + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==" }, "ignore-by-default": { "version": "2.1.0", @@ -12532,9 +12547,9 @@ } }, "immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.1.tgz", + "integrity": "sha512-7WYV7Q5BTs0nlQm7tl92rDYYoyELLKHoDMBKhrxEoiV4mrfVdRz8hzPiYOzH7yWjzoVEamxRuAqhxL2PLRwZYQ==", "dev": true }, "import-fresh": { @@ -13144,13 +13159,12 @@ } }, "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "yallist": "^3.0.2" } }, "magic-string": { @@ -13350,15 +13364,15 @@ } }, "markdown-it-anchor": { - "version": "8.6.5", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.5.tgz", - "integrity": "sha512-PI1qEHHkTNWT+X6Ip9w+paonfIQ+QZP9sCeMYi47oqhH+EsW8CrJ8J7CzV19QVOj6il8ATGbK2nTECj22ZHGvQ==", + "version": "8.6.6", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.6.tgz", + "integrity": "sha512-jRW30YGywD2ESXDc+l17AiritL0uVaSnWsb26f+68qaW9zgbIIr1f4v2Nsvc0+s0Z2N3uX6t/yAw7BwCQ1wMsA==", "requires": {} }, "marked": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.4.tgz", - "integrity": "sha512-Wcc9ikX7Q5E4BYDPvh1C6QNSxrjC9tBgz+A/vAhp59KXUgachw++uMvMKiSW8oA85nopmPZcEvBoex/YLMsiyA==" + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.5.tgz", + "integrity": "sha512-jPueVhumq7idETHkb203WDD4fMA3yV9emQ5vLwop58lu8bTclMghBWcYAavlDqIEMaisADinV1TooIFCfqOsYQ==" }, "matcher": { "version": "5.0.0", @@ -13525,9 +13539,9 @@ "dev": true }, "minimatch": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.1.tgz", - "integrity": "sha512-362NP+zlprccbEt/SkxKfRMHnNY85V74mVnpUpNyr3F35covl09Kec7/sEFLt3RA4oXmewtoaanoIf67SE5Y5g==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==", "requires": { "brace-expansion": "^2.0.1" } @@ -13806,44 +13820,22 @@ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" }, "nise": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.3.tgz", - "integrity": "sha512-U597iWTTBBYIV72986jyU382/MMZ70ApWcRmkoF1AZ75bpqOtI3Gugv/6+0jLgoDOabmcSwYBkSSAWIp1eA5cg==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.4.tgz", + "integrity": "sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg==", "dev": true, "requires": { "@sinonjs/commons": "^2.0.0", - "@sinonjs/fake-timers": "^7.0.4", + "@sinonjs/fake-timers": "^10.0.2", "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "@sinonjs/fake-timers": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz", - "integrity": "sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - }, - "dependencies": { - "@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - } - } - } } }, "node-gyp": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.0.tgz", - "integrity": "sha512-A6rJWfXFz7TQNjpldJ915WFb1LnhO4lIve3ANPbWreuEoLoKlFT3sxIepPBkLhM27crW8YmN+pjlgbasH6cH/Q==", + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.1.tgz", + "integrity": "sha512-4Q16ZCqq3g8awk6UplT7AuxQ35XN4R/yf/+wSAwcBUAjg7l58RTactWaP8fIDTi0FzI7YcVLujwExakZlfWkXg==", "requires": { "env-paths": "^2.2.0", "glob": "^7.1.4", @@ -15238,9 +15230,9 @@ "optional": true }, "sass": { - "version": "1.57.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.0.tgz", - "integrity": "sha512-IZNEJDTK1cF5B1cGA593TPAV/1S0ysUDxq9XHjX/+SMy0QfUny+nfUsq5ZP7wWSl4eEf7wDJcEZ8ABYFmh3m/w==", + "version": "1.57.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz", + "integrity": "sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -16335,9 +16327,9 @@ "dev": true }, "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "dev": true }, "yaml": { From bad21c5f48b36bbd8fee77c2a6b2ad9b4c173caa Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 27 Dec 2022 14:38:20 +0100 Subject: [PATCH 0772/1272] [ui5-project][INTERNAL] TaskRunner: Custom Tasks receive 'dependencies' reader in most cases Always provide a 'dependencies'-reader to custom tasks, unless they define Specification Version >=3.0 and do not provide a determineRequiredDependencies callback. The latter being an indicator that either dependencies are really not required by the task or that the concept of the callback is not yet known or applied incorrectly. By not providing any dependencies reader in this case, the task will face an exception if access to the reader is still attempted, for example via 'dependencies.byGlob()' (=> 'byGlob of undefined'). At the same time, tasks implementing the callback but not requesting any dependencies will receive an empty 'dependencies'-reader. This can ease the implementation efforts in the task. Resolves https://github.com/SAP/ui5-tooling/issues/732 --- packages/project/lib/build/TaskRunner.js | 23 +++-- packages/project/test/lib/build/TaskRunner.js | 87 ++++++++++++++++--- 2 files changed, 92 insertions(+), 18 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 58839b44f80..4e0136ddade 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -267,6 +267,13 @@ class TaskRunner { const requiredDependenciesCallback = await task.getRequiredDependenciesCallback(); const specVersion = task.getSpecVersion(); let requiredDependencies; + + // Always provide a dependencies-reader, even if empty. Unless the task is specVersion >=3.0 + // and did not define the respective callback. + // This is to distinguish between tasks semi-intentionally not requesting any dependencies, + // because none are available (i.e. because the project does not have any) and tasks that + // intentionally do not request any dependencies, by not providing a dependency-determination callback function + let provideDependenciesReader = true; if (!requiredDependenciesCallback) { if (specVersion.gte("3.0")) { // Default for new spec versions: Provide no dependencies if no callback is provided @@ -275,6 +282,10 @@ class TaskRunner { `does not provide a callback for determining its required dependencies. ` + `Defaulting to not providing any dependencies to the task`); requiredDependencies = new Set(); + + // Ensure that no reader is provided, in order to produce an exception if + // access is still attempted + provideDependenciesReader = false; } else { // Default for old spec versions: Assume all dependencies are required requiredDependencies = this._directDependencies; @@ -322,6 +333,7 @@ class TaskRunner { taskUtil, taskName: newTaskName, taskConfiguration: taskDef.configuration, + provideDependenciesReader, getDependenciesReader: () => { // Create the dependencies reader on-demand return this._createDependenciesReader(requiredDependencies); @@ -357,7 +369,7 @@ class TaskRunner { } _createCustomTaskWrapper({ - project, taskUtil, getDependenciesReader, task, taskName, taskConfiguration + project, taskUtil, getDependenciesReader, provideDependenciesReader, task, taskName, taskConfiguration }) { return async function(log) { /* Custom Task Interface @@ -403,9 +415,8 @@ class TaskRunner { params.log = logger.getLogger(`builder:custom-task:${taskName}`); } - const dependencies = await getDependenciesReader(); - if (dependencies) { - params.dependencies = dependencies; + if (provideDependenciesReader) { + params.dependencies = await getDependenciesReader(); } return taskFunction(params); }; @@ -430,10 +441,6 @@ class TaskRunner { } async _createDependenciesReader(requiredDirectDependencies) { - if (requiredDirectDependencies.size === 0) { - // No dependencies are required, so no reader will be provided - return null; - } if (requiredDirectDependencies.size === this._directDependencies.size) { // Shortcut: If all direct dependencies are required, just return the already created reader return this._allDependenciesReader; diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index b82d0d9c934..a072cbfe77c 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -851,6 +851,67 @@ test("Custom task with specVersion 3.0", async (t) => { }, "Task got called with one argument"); }); +test("Custom task with specVersion 3.0 and no requiredDependenciesCallback", async (t) => { + const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const taskStub = sinon.stub(); + const specVersionGteStub = sinon.stub().returns(true); + const mockSpecVersion = { + toString: () => "3.0", + gte: specVersionGteStub + }; + + const getRequiredDependenciesCallbackStub = sinon.stub().resolves(undefined); + + graph.getExtension.returns({ + getName: () => "custom task name", + getTask: () => taskStub, + getSpecVersion: () => mockSpecVersion, + getRequiredDependenciesCallback: getRequiredDependenciesCallbackStub + }); + + const project = getMockProject("module"); + project.getCustomTasks = () => [ + {name: "myTask", configuration: "configuration"} + ]; + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, log, buildConfig + }); + await taskRunner._initTasks(); + + t.truthy(taskRunner._tasks["myTask"], "Custom tasks has been added to task map"); + t.deepEqual(taskRunner._tasks["myTask"].requiredDependencies, new Set(), + "Custom tasks requires no dependencies by default"); + const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependenciesReader").resolves("dependencies"); + await taskRunner._tasks["myTask"].task(); + + t.is(specVersionGteStub.callCount, 2, "SpecificationVersion#gte got called twice"); + t.is(specVersionGteStub.getCall(0).args[0], "3.0", + "SpecificationVersion#gte got called with correct arguments on first call"); + t.is(specVersionGteStub.getCall(1).args[0], "3.0", + "SpecificationVersion#gte got called with correct arguments on second call"); + + t.is(taskUtil.getInterface.callCount, 1, "taskUtil#getInterface got called once"); + t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersion, + "taskUtil#getInterface got called with correct argument on first call"); + + t.is(createDependencyReaderStub.callCount, 0, "_createDependenciesReader did not get called"); + + t.is(taskStub.callCount, 1, "Task got called once"); + t.is(taskStub.getCall(0).args.length, 1, "Task got called with one argument"); + t.deepEqual(taskStub.getCall(0).args[0], { + workspace: "workspace", + log: "group logger", + taskUtil, + options: { + projectName: "project.b", + projectNamespace: "project/b", + taskName: "myTask", // specVersion 3.0 feature + configuration: "configuration", + }, + }, "Task got called with one argument"); +}); + test("Multiple custom tasks with same name are called correctly", async (t) => { const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; const taskStubA = sinon.stub(); @@ -963,7 +1024,7 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { t.is(taskUtil.getInterface.getCall(4).args[0], mockSpecVersionB, "taskUtil#getInterface got called with correct argument on fifth call"); - t.is(createDependencyReaderStub.callCount, 4, "_createDependenciesReader got called four times"); + t.is(createDependencyReaderStub.callCount, 3, "_createDependenciesReader got called three times"); t.deepEqual(createDependencyReaderStub.getCall(0).args[0], new Set(["dep.b"]), "_createDependenciesReader got called with correct arguments on first call"); @@ -971,11 +1032,8 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { new Set(["dep.a"]), "_createDependenciesReader got called with correct arguments on second call"); t.deepEqual(createDependencyReaderStub.getCall(2).args[0], - new Set([]), - "_createDependenciesReader got called with correct arguments on third call"); - t.deepEqual(createDependencyReaderStub.getCall(3).args[0], new Set(["dep.a", "dep.b"]), - "_createDependenciesReader got called with correct arguments on fourth call"); + "_createDependenciesReader got called with correct arguments on third call"); t.is(taskStubA.callCount, 1, "Task A got called once"); t.is(taskStubA.getCall(0).args.length, 1, "Task A got called with one argument"); @@ -1007,7 +1065,6 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { t.is(taskStubC.getCall(0).args.length, 1, "Task C got called with one argument"); t.deepEqual(taskStubC.getCall(0).args[0], { workspace: "workspace", - dependencies: "dependencies", log: "group logger", taskUtil, options: { @@ -1361,21 +1418,31 @@ test("_createDependenciesReader: All dependencies required", async (t) => { project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); + graph.traverseBreadthFirst.reset(); // Ignore the call in initTask + resourceFactory.createReaderCollection.reset(); // Ignore the call in initTask + resourceFactory.createReaderCollection.returns("custom reader collection"); const res = await taskRunner._createDependenciesReader(new Set(["dep.a", "dep.b"])); - t.is(graph.traverseBreadthFirst.callCount, 1, "ProjectGraph#traverseBreadthFirst got called once"); - t.is(resourceFactory.createReaderCollection.callCount, 1, "createReaderCollection got called once"); + t.is(graph.traverseBreadthFirst.callCount, 0, "ProjectGraph#traverseBreadthFirst did not get called again"); + t.is(resourceFactory.createReaderCollection.callCount, 0, "createReaderCollection did not get called again"); t.is(res, "reader collection", "Shared (all-)dependency reader returned"); }); test("_createDependenciesReader: No dependencies required", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ project, graph, taskUtil, taskRepository, log, buildConfig }); await taskRunner._initTasks(); + graph.traverseBreadthFirst.reset(); // Ignore the call in initTask + resourceFactory.createReaderCollection.reset(); // Ignore the call in initTask + resourceFactory.createReaderCollection.returns("custom reader collection"); const res = await taskRunner._createDependenciesReader(new Set()); - t.is(res, null, "No dependency reader returned"); + t.is(graph.traverseBreadthFirst.callCount, 1, "ProjectGraph#traverseBreadthFirst got called once"); + t.is(resourceFactory.createReaderCollection.callCount, 1, "createReaderCollection got called once"); + t.deepEqual(resourceFactory.createReaderCollection.getCall(0).args[0].readers, [], + "createReaderCollection got called with no readers"); + t.is(res, "custom reader collection", "Shared (all-)dependency reader returned"); }); From 48314a75b59cc1124465b42ebc1a006ededd50b0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 28 Dec 2022 11:18:53 +0100 Subject: [PATCH 0773/1272] [ui5-project][INTERNAL] Specification#getRootReader: Use .gitignore excludes by default (#535) --- .../lib/specifications/Specification.js | 18 ++-- .../test/lib/specifications/Specification.js | 84 +++++++++++++++++++ 2 files changed, 95 insertions(+), 7 deletions(-) diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index fd7e64dccdb..836a3a6f6e5 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -216,17 +216,21 @@ class Specification { /* === Resource Access === */ /** - * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for the root directory of the specification. - * Resource readers always use POSIX-style - * - * @public - * @returns {@ui5/fs/ReaderCollection} Reader collection + * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for the root directory of the specification. + * Resource readers always use POSIX-style + * + * @public + * @param {object} [parameters] Parameters + * @param {object} [parameters.useGitignore=true] + * Whether to apply any excludes defined in an optional .gitignore in the root directory + * @returns {@ui5/fs/ReaderCollection} Reader collection */ - getRootReader() { + getRootReader({useGitignore=true} = {}) { return createReader({ fsBasePath: this.getPath(), virBasePath: "/", - name: `Root reader for ${this.getType()} ${this.getKind()} ${this.getName()}` + name: `Root reader for ${this.getType()} ${this.getKind()} ${this.getName()}`, + useGitignore }); } diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index f31f4decbfd..6fbafbe7441 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -1,4 +1,5 @@ import test from "ava"; +import esmock from "esmock"; import path from "node:path"; import {fileURLToPath} from "node:url"; import sinon from "sinon"; @@ -19,6 +20,24 @@ const themeLibraryEPath = path.join(__dirname, "..", "..", "fixtures", "theme.li const genericExtensionPath = path.join(__dirname, "..", "..", "fixtures", "extension.a"); const moduleAPath = path.join(__dirname, "..", "..", "fixtures", "module.a"); +function createSubclass(Specification) { + class DummySpecification extends Specification { + getPath() { + return "path"; + } + getType() { + return "type"; + } + getKind() { + return "kind"; + } + getName() { + return "name"; + } + } + return DummySpecification; +} + test.beforeEach((t) => { t.context.basicProjectInput = { id: "application.a.id", @@ -37,6 +56,14 @@ test.afterEach.always((t) => { sinon.restore(); }); +test("Specification can't be instantiated", (t) => { + t.throws(() => { + new Specification(); + }, { + message: "Class 'Specification' is abstract. Please use one of the 'types' subclasses" + }); +}); + test("Instantiate a basic project", async (t) => { const project = await Specification.create(t.context.basicProjectInput); t.is(project.getName(), "application.a", "Returned correct name"); @@ -299,3 +326,60 @@ test("Invalid specVersion", async (t) => { "For details, see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" }, "Threw with expected error message"); }); + +test("getRootReader: Default parameters", async (t) => { + // Since Specification#create instantiates a far-away subclass, it would be a mess to mock + // every class up to "Specification.js" just to stub the resourceFactory's createReader method + // Therefore we just come up with our own subclass that can be instantiated right away: + + const createReaderStub = sinon.stub(); + const Specification = await esmock("../../../lib/specifications/Specification.js", { + "@ui5/fs/resourceFactory": { + createReader: createReaderStub + } + }); + + const DummySpecification = createSubclass(Specification); + const spec = new DummySpecification(); + await spec.getRootReader(); + + t.is(createReaderStub.callCount, 1, "createReader got called once"); + t.deepEqual(createReaderStub.getCall(0).args[0], { + fsBasePath: "path", + name: "Root reader for type kind name", + useGitignore: true, + virBasePath: "/", + }, "createReader got called with expected arguments"); +}); + +test("getRootReader: Custom parameters", async (t) => { + const createReaderStub = sinon.stub(); + const Specification = await esmock("../../../lib/specifications/Specification.js", { + "@ui5/fs/resourceFactory": { + createReader: createReaderStub + } + }); + + const DummySpecification = createSubclass(Specification); + const spec = new DummySpecification(); + await spec.getRootReader({}); + await spec.getRootReader({ + useGitignore: false + }); + + + t.is(createReaderStub.callCount, 2, "createReader got called twice"); + t.deepEqual(createReaderStub.getCall(0).args[0], { + fsBasePath: "path", + name: "Root reader for type kind name", + useGitignore: true, + virBasePath: "/", + }, "createReader got called with expected arguments on first call"); + + t.deepEqual(createReaderStub.getCall(1).args[0], { + fsBasePath: "path", + name: "Root reader for type kind name", + useGitignore: false, + virBasePath: "/", + }, "createReader got called with expected arguments on second call"); +}); From db37dc57609a3aa68c4c9daac7cdf0c79934f6be Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 1 Jan 2023 03:20:32 +0000 Subject: [PATCH 0774/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 42 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8f4b3b45694..f0e1864683d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -36,7 +36,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.0", - "eslint": "^8.30.0", + "eslint": "^8.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-jsdoc": "^39.6.4", @@ -463,9 +463,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.0.tgz", - "integrity": "sha512-7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", + "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -3068,12 +3068,12 @@ } }, "node_modules/eslint": { - "version": "8.30.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.30.0.tgz", - "integrity": "sha512-MGADB39QqYuzEGov+F/qb18r4i7DohCDOfatHaxI2iGlPuC65bwG2gxgO+7DkyL38dRFaRH7RaRAgU6JKL9rMQ==", + "version": "8.31.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.31.0.tgz", + "integrity": "sha512-0tQQEVdmPZ1UtUKXjX7EMm9BlgJ08G90IhWh0PKDCb3ZLsgAOHI8fYSIzYVZej92zsgq+ft0FGsxhJ3xo2tbuA==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.4.0", + "@eslint/eslintrc": "^1.4.1", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -4820,9 +4820,9 @@ "dev": true }, "node_modules/json5": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", - "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, "bin": { "json5": "lib/cli.js" @@ -9726,9 +9726,9 @@ } }, "@eslint/eslintrc": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.0.tgz", - "integrity": "sha512-7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", + "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -11717,12 +11717,12 @@ } }, "eslint": { - "version": "8.30.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.30.0.tgz", - "integrity": "sha512-MGADB39QqYuzEGov+F/qb18r4i7DohCDOfatHaxI2iGlPuC65bwG2gxgO+7DkyL38dRFaRH7RaRAgU6JKL9rMQ==", + "version": "8.31.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.31.0.tgz", + "integrity": "sha512-0tQQEVdmPZ1UtUKXjX7EMm9BlgJ08G90IhWh0PKDCb3ZLsgAOHI8fYSIzYVZej92zsgq+ft0FGsxhJ3xo2tbuA==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.4.0", + "@eslint/eslintrc": "^1.4.1", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -12986,9 +12986,9 @@ "dev": true }, "json5": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", - "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true }, "jsonparse": { diff --git a/packages/project/package.json b/packages/project/package.json index 333e4bc2b8b..ec9c8e0f038 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -144,7 +144,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.0", - "eslint": "^8.30.0", + "eslint": "^8.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-jsdoc": "^39.6.4", From 2ef9d110cee4f6e3f68552bb23b0b8feb3c21191 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 30 Dec 2022 14:50:22 +0100 Subject: [PATCH 0775/1272] [ui5-project][INTERNAL] Re-enable in-solidarity.yml inclusive language check --- packages/project/.github/in-solidarity.yml | 1 + 1 file changed, 1 insertion(+) create mode 100644 packages/project/.github/in-solidarity.yml diff --git a/packages/project/.github/in-solidarity.yml b/packages/project/.github/in-solidarity.yml new file mode 100644 index 00000000000..4ce829a6be3 --- /dev/null +++ b/packages/project/.github/in-solidarity.yml @@ -0,0 +1 @@ +_extends: ietf/terminology From 6198044f763d27312c01274638db86b014ba217e Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 4 Jan 2023 12:05:31 +0000 Subject: [PATCH 0776/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-rc.0 to 3.0.0-rc.1 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-rc.1/CHANGELOG.md --- packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f0e1864683d..4d5281471b1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.0", - "@ui5/fs": "^3.0.0-rc.0", + "@ui5/fs": "^3.0.0-rc.1", "@ui5/logger": "^3.0.1-rc.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1027,9 +1027,9 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.0.tgz", - "integrity": "sha512-CZ1jx8laDnkUbjhmlG3McE9jxSDjC8uCkf5NbjWXP2//KnrQOjnH1/8sYCx4y2FKPBhicEP7rdEb9BUrdrazpA==", + "version": "3.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.1.tgz", + "integrity": "sha512-vRJIh+XoGJVkNvmZjL6dVo0M8hnFpJwybYRlNTN6GyfGHH7ovkRW+/zNnLflfhj3/pPFlEru1Wq5Yye/0uM8iw==", "dependencies": { "@ui5/logger": "^3.0.1-rc.0", "clone": "^2.1.2", @@ -1037,7 +1037,7 @@ "globby": "^13.1.3", "graceful-fs": "^4.2.10", "micromatch": "^4.0.5", - "minimatch": "^5.1.1", + "minimatch": "^5.1.2", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, @@ -10181,9 +10181,9 @@ } }, "@ui5/fs": { - "version": "3.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.0.tgz", - "integrity": "sha512-CZ1jx8laDnkUbjhmlG3McE9jxSDjC8uCkf5NbjWXP2//KnrQOjnH1/8sYCx4y2FKPBhicEP7rdEb9BUrdrazpA==", + "version": "3.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.1.tgz", + "integrity": "sha512-vRJIh+XoGJVkNvmZjL6dVo0M8hnFpJwybYRlNTN6GyfGHH7ovkRW+/zNnLflfhj3/pPFlEru1Wq5Yye/0uM8iw==", "requires": { "@ui5/logger": "^3.0.1-rc.0", "clone": "^2.1.2", @@ -10191,7 +10191,7 @@ "globby": "^13.1.3", "graceful-fs": "^4.2.10", "micromatch": "^4.0.5", - "minimatch": "^5.1.1", + "minimatch": "^5.1.2", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" } diff --git a/packages/project/package.json b/packages/project/package.json index ec9c8e0f038..36de147263e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,7 +118,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-rc.0", - "@ui5/fs": "^3.0.0-rc.0", + "@ui5/fs": "^3.0.0-rc.1", "@ui5/logger": "^3.0.1-rc.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From cd2792e5ef9c243fa2bb8dfcd985a5696403089f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 4 Jan 2023 13:41:36 +0000 Subject: [PATCH 0777/1272] [ui5-project]Release 3.0.0-rc.1 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 1955b42b855..754f9da4369 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.1...HEAD). + + +## [v3.0.0-rc.1] - 2023-01-04 ## [v3.0.0-rc.0] - 2022-12-23 @@ -376,6 +379,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-rc.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.0...v3.0.0-rc.1 [v3.0.0-rc.0]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.5...v3.0.0-rc.0 [v3.0.0-beta.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.4...v3.0.0-beta.5 [v3.0.0-beta.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.3...v3.0.0-beta.4 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4d5281471b1..91112ddd74a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.0", + "version": "3.0.0-rc.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc.0", + "version": "3.0.0-rc.1", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.0", diff --git a/packages/project/package.json b/packages/project/package.json index 36de147263e..5965cc70e9e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.0", + "version": "3.0.0-rc.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From f9385cfe694779928b00f14298f1f97812e7e75a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 8 Jan 2023 03:20:36 +0000 Subject: [PATCH 0778/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 114 +++++++++++++++-------------- 1 file changed, 60 insertions(+), 54 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 91112ddd74a..10e50d44a41 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -92,25 +92,25 @@ } }, "node_modules/@babel/core": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.7.tgz", - "integrity": "sha512-t1ZjCluspe5DW24bn2Rr1CDb2v9rn/hROtg9a2tmd0+QYf4bsloYfLQzjG4qHPNMhWtKdGC33R5AxGR2Af2cBw==", + "version": "7.20.12", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", + "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.18.6", "@babel/generator": "^7.20.7", "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.11", "@babel/helpers": "^7.20.7", "@babel/parser": "^7.20.7", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", + "@babel/traverse": "^7.20.12", "@babel/types": "^7.20.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", + "json5": "^2.2.2", "semver": "^6.3.0" }, "engines": { @@ -414,9 +414,9 @@ } }, "node_modules/@babel/traverse": { - "version": "7.20.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.10.tgz", - "integrity": "sha512-oSf1juCgymrSez8NI4A2sr4+uB/mFd9MXplYGPEBnfAuWmmyeVcHa6xLPiaRBcXkcb/28bgxmQLTVwFKE1yfsg==", + "version": "7.20.12", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.12.tgz", + "integrity": "sha512-MsIbFN0u+raeja38qboyF8TIT7K0BFzz/Yd/77ta4MsUsmP2RAnidIlwq7d5HFQrH/OZJecGV6B71C4zAgpoSQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.18.6", @@ -1749,9 +1749,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001441", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz", - "integrity": "sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==", + "version": "1.0.30001442", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001442.tgz", + "integrity": "sha512-239m03Pqy0hwxYPYR5JwOIxRJfLTWtle9FV8zosfV5pHg+/51uD4nxcUlM8+mWWGfwKtt8lJNHnD3cWw9VZ6ow==", "dev": true, "funding": [ { @@ -2061,10 +2061,16 @@ "dev": true }, "node_modules/ci-info": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.0.tgz", - "integrity": "sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", + "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "engines": { "node": ">=8" } @@ -3627,9 +3633,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", - "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", "dependencies": { "reusify": "^1.0.4" } @@ -4224,9 +4230,9 @@ } }, "node_modules/immutable": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.1.tgz", - "integrity": "sha512-7WYV7Q5BTs0nlQm7tl92rDYYoyELLKHoDMBKhrxEoiV4mrfVdRz8hzPiYOzH7yWjzoVEamxRuAqhxL2PLRwZYQ==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.2.tgz", + "integrity": "sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og==", "dev": true }, "node_modules/import-fresh": { @@ -7184,9 +7190,9 @@ } }, "node_modules/postcss": { - "version": "8.4.20", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.20.tgz", - "integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==", + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", "dev": true, "funding": [ { @@ -7576,9 +7582,9 @@ } }, "node_modules/readable-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.2.0.tgz", - "integrity": "sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.3.0.tgz", + "integrity": "sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ==", "dependencies": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", @@ -9444,25 +9450,25 @@ "dev": true }, "@babel/core": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.7.tgz", - "integrity": "sha512-t1ZjCluspe5DW24bn2Rr1CDb2v9rn/hROtg9a2tmd0+QYf4bsloYfLQzjG4qHPNMhWtKdGC33R5AxGR2Af2cBw==", + "version": "7.20.12", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", + "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", "dev": true, "requires": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.18.6", "@babel/generator": "^7.20.7", "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.11", "@babel/helpers": "^7.20.7", "@babel/parser": "^7.20.7", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", + "@babel/traverse": "^7.20.12", "@babel/types": "^7.20.7", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", + "json5": "^2.2.2", "semver": "^6.3.0" }, "dependencies": { @@ -9686,9 +9692,9 @@ } }, "@babel/traverse": { - "version": "7.20.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.10.tgz", - "integrity": "sha512-oSf1juCgymrSez8NI4A2sr4+uB/mFd9MXplYGPEBnfAuWmmyeVcHa6xLPiaRBcXkcb/28bgxmQLTVwFKE1yfsg==", + "version": "7.20.12", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.12.tgz", + "integrity": "sha512-MsIbFN0u+raeja38qboyF8TIT7K0BFzz/Yd/77ta4MsUsmP2RAnidIlwq7d5HFQrH/OZJecGV6B71C4zAgpoSQ==", "dev": true, "requires": { "@babel/code-frame": "^7.18.6", @@ -10706,9 +10712,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001441", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz", - "integrity": "sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==", + "version": "1.0.30001442", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001442.tgz", + "integrity": "sha512-239m03Pqy0hwxYPYR5JwOIxRJfLTWtle9FV8zosfV5pHg+/51uD4nxcUlM8+mWWGfwKtt8lJNHnD3cWw9VZ6ow==", "dev": true }, "catharsis": { @@ -10939,9 +10945,9 @@ "dev": true }, "ci-info": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.0.tgz", - "integrity": "sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", + "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", "dev": true }, "ci-parallel-vars": { @@ -12120,9 +12126,9 @@ "dev": true }, "fastq": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", - "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", "requires": { "reusify": "^1.0.4" } @@ -12547,9 +12553,9 @@ } }, "immutable": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.1.tgz", - "integrity": "sha512-7WYV7Q5BTs0nlQm7tl92rDYYoyELLKHoDMBKhrxEoiV4mrfVdRz8hzPiYOzH7yWjzoVEamxRuAqhxL2PLRwZYQ==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.2.tgz", + "integrity": "sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og==", "dev": true }, "import-fresh": { @@ -14754,9 +14760,9 @@ } }, "postcss": { - "version": "8.4.20", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.20.tgz", - "integrity": "sha512-6Q04AXR1212bXr5fh03u8aAwbLxAQNGQ/Q1LNa0VfOI06ZAlhPHtQvE4OIdpj4kLThXilalPnmDSOD65DcHt+g==", + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", "dev": true, "requires": { "nanoid": "^3.3.4", @@ -15007,9 +15013,9 @@ } }, "readable-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.2.0.tgz", - "integrity": "sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.3.0.tgz", + "integrity": "sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ==", "requires": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", From 22abf6dd1b63176374412f47e267dcc4211f42f3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Jan 2023 05:00:56 +0000 Subject: [PATCH 0779/1272] [ui5-project]Bump actions/setup-node from 3.5.1 to 3.6.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.5.1 to 3.6.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.5.1...v3.6.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 86a378892b0..63136b0707e 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v3 - name: Use Node.js LTS 16.x - uses: actions/setup-node@v3.5.1 + uses: actions/setup-node@v3.6.0 with: node-version: 16.x From cd67233003429e1afbfe9e6c5de01684d0d755a1 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 9 Jan 2023 12:21:40 +0100 Subject: [PATCH 0780/1272] [ui5-project][INTERNAL] Update copyright year to 2023 --- packages/project/.reuse/dep5 | 2 +- packages/project/LICENSE.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/.reuse/dep5 b/packages/project/.reuse/dep5 index 01bf271037a..6911ce28f11 100644 --- a/packages/project/.reuse/dep5 +++ b/packages/project/.reuse/dep5 @@ -25,5 +25,5 @@ Disclaimer: The code in this project may include calls to APIs (“API Calls”) parties the right to use of access any SAP External Product, through API Calls. Files: * -Copyright: 2018-2022 SAP SE or an SAP affiliate company and UI5 Tooling contributors +Copyright: 2018-2023 SAP SE or an SAP affiliate company and UI5 Tooling contributors License: Apache-2.0 diff --git a/packages/project/LICENSE.txt b/packages/project/LICENSE.txt index b5eb61dc1dc..a6e7b274014 100644 --- a/packages/project/LICENSE.txt +++ b/packages/project/LICENSE.txt @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2018-2021 SAP SE or an SAP affiliate company and UI5 Tooling contributors + Copyright 2018-2023 SAP SE or an SAP affiliate company and UI5 Tooling contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. From 8022c036f81d328f9233583efa78e57b19e226b8 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 11 Jan 2023 14:18:40 +0100 Subject: [PATCH 0781/1272] [ui5-project][BREAKING] Run 'generateThemeDesignerResources' only on framework libs The generateThemeDesignerResources task is currently only relevant for framework libraries as those libraries are supported by SAP Theme Designer. Other libraries are not expected to require the task, so it is skipped. --- .../project/lib/build/definitions/library.js | 14 +++--- .../lib/build/definitions/themeLibrary.js | 14 +++--- packages/project/test/lib/build/TaskRunner.js | 50 ++++++++++++++++++- .../test/lib/build/definitions/library.js | 37 ++++++++------ .../lib/build/definitions/themeLibrary.js | 29 ++++++----- 5 files changed, 104 insertions(+), 40 deletions(-) diff --git a/packages/project/lib/build/definitions/library.js b/packages/project/lib/build/definitions/library.js index 0d86a2d6dce..7ff35d01d96 100644 --- a/packages/project/lib/build/definitions/library.js +++ b/packages/project/lib/build/definitions/library.js @@ -146,12 +146,14 @@ export default function({project, taskUtil, getTask}) { } }); - tasks.set("generateThemeDesignerResources", { - requiresDependencies: true, - options: { - version: project.getVersion() - } - }); + if (project.isFrameworkProject()) { + tasks.set("generateThemeDesignerResources", { + requiresDependencies: true, + options: { + version: project.getVersion() + } + }); + } tasks.set("generateResourcesJson", { requiresDependencies: true diff --git a/packages/project/lib/build/definitions/themeLibrary.js b/packages/project/lib/build/definitions/themeLibrary.js index 20ac207e6de..e1cbc77039b 100644 --- a/packages/project/lib/build/definitions/themeLibrary.js +++ b/packages/project/lib/build/definitions/themeLibrary.js @@ -35,12 +35,14 @@ export default function({project, taskUtil, getTask}) { } }); - tasks.set("generateThemeDesignerResources", { - requiresDependencies: true, - options: { - version: project.getVersion() - } - }); + if (project.isFrameworkProject()) { + tasks.set("generateThemeDesignerResources", { + requiresDependencies: true, + options: { + version: project.getVersion() + } + }); + } tasks.set("generateResourcesJson", {requiresDependencies: true}); return tasks; diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index a072cbfe77c..67b17ab98be 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -58,7 +58,8 @@ function getMockProject(type) { getCachebusterSignatureType: noop, getCustomTasks: () => [], hasBuildManifest: () => false, - getWorkspace: () => "workspace" + getWorkspace: () => "workspace", + isFrameworkProject: () => false }; } @@ -224,6 +225,34 @@ test("_initTasks: Project of type 'library'", async (t) => { }); await taskRunner._initTasks(); + t.deepEqual(taskRunner._taskExecutionOrder, [ + "escapeNonAsciiCharacters", + "replaceCopyright", + "replaceVersion", + "replaceBuildtime", + "generateJsdoc", + "executeJsdocSdkTransformation", + "minify", + "generateLibraryManifest", + "generateComponentPreload", + "generateLibraryPreload", + "generateBundle", + "buildThemes", + "generateResourcesJson" + ], "Correct standard tasks"); +}); + +test("_initTasks: Project of type 'library' (framework project)", async (t) => { + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + + const project = getMockProject("library"); + project.isFrameworkProject = () => true; + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, log, buildConfig + }); + await taskRunner._initTasks(); + t.deepEqual(taskRunner._taskExecutionOrder, [ "escapeNonAsciiCharacters", "replaceCopyright", @@ -249,6 +278,25 @@ test("_initTasks: Project of type 'theme-library'", async (t) => { }); await taskRunner._initTasks(); + t.deepEqual(taskRunner._taskExecutionOrder, [ + "replaceCopyright", + "replaceVersion", + "buildThemes", + "generateResourcesJson" + ], "Correct standard tasks"); +}); + +test("_initTasks: Project of type 'theme-library' (framework project)", async (t) => { + const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + + const project = getMockProject("theme-library"); + project.isFrameworkProject = () => true; + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, log, buildConfig + }); + await taskRunner._initTasks(); + t.deepEqual(taskRunner._taskExecutionOrder, [ "replaceCopyright", "replaceVersion", diff --git a/packages/project/test/lib/build/definitions/library.js b/packages/project/test/lib/build/definitions/library.js index 165c8103d5e..040f1caa890 100644 --- a/packages/project/test/lib/build/definitions/library.js +++ b/packages/project/test/lib/build/definitions/library.js @@ -29,6 +29,7 @@ function getMockProject() { getCachebusterSignatureType: () => "PONY", getJsdocExcludes: () => [], getCustomTasks: emptyarray, + isFrameworkProject: () => false }; } @@ -113,11 +114,6 @@ test("Standard build", async (t) => { cssVariables: undefined } }, - generateThemeDesignerResources: { - requiresDependencies: true, options: { - version: "version" - } - }, generateResourcesJson: { requiresDependencies: true } @@ -154,6 +150,27 @@ test("Standard build", async (t) => { "taskUtil#getBuildOption got called with correct argument"); }); +test("Standard build (framework project)", (t) => { + const {project, taskUtil, getTask} = t.context; + + project.isFrameworkProject = () => true; + + const generateJsdocTaskStub = sinon.stub(); + getTask.returns({ + task: generateJsdocTaskStub + }); + + const tasks = library({ + project, taskUtil, getTask + }); + + t.deepEqual(tasks.get("generateThemeDesignerResources"), { + requiresDependencies: true, options: { + version: "version" + } + }); +}); + test("Standard build with legacy spec version", (t) => { const {project, taskUtil, getTask} = t.context; project.getSpecVersion = () => { @@ -224,11 +241,6 @@ test("Standard build with legacy spec version", (t) => { cssVariables: undefined } }, - generateThemeDesignerResources: { - requiresDependencies: true, options: { - version: "version" - } - }, generateResourcesJson: { requiresDependencies: true } @@ -349,11 +361,6 @@ test("Custom bundles", async (t) => { cssVariables: undefined } }, - generateThemeDesignerResources: { - requiresDependencies: true, options: { - version: "version" - } - }, generateResourcesJson: { requiresDependencies: true } diff --git a/packages/project/test/lib/build/definitions/themeLibrary.js b/packages/project/test/lib/build/definitions/themeLibrary.js index a5f72c5a4d7..c57c7f38c75 100644 --- a/packages/project/test/lib/build/definitions/themeLibrary.js +++ b/packages/project/test/lib/build/definitions/themeLibrary.js @@ -26,6 +26,7 @@ function getMockProject() { getBundles: emptyarray, getCachebusterSignatureType: () => "PONY", getCustomTasks: emptyarray, + isFrameworkProject: () => false }; } @@ -69,12 +70,6 @@ test("Standard build", (t) => { cssVariables: undefined } }, - generateThemeDesignerResources: { - requiresDependencies: true, - options: { - version: "version" - } - }, generateResourcesJson: { requiresDependencies: true } @@ -85,6 +80,22 @@ test("Standard build", (t) => { "taskUtil#getBuildOption got called with correct argument"); }); +test("Standard build (framework project)", (t) => { + const {project, taskUtil, getTask} = t.context; + + project.isFrameworkProject = () => true; + + const tasks = themeLibrary({ + project, taskUtil, getTask + }); + + t.deepEqual(tasks.get("generateThemeDesignerResources"), { + requiresDependencies: true, options: { + version: "version" + } + }); +}); + test("Standard build for non root project", (t) => { const {project, taskUtil, getTask} = t.context; taskUtil.isRootProject.returns(false); @@ -115,12 +126,6 @@ test("Standard build for non root project", (t) => { cssVariables: undefined } }, - generateThemeDesignerResources: { - requiresDependencies: true, - options: { - version: "version" - } - }, generateResourcesJson: { requiresDependencies: true } From 603946dbc81556199ffaa98af0fb2a7c5f4f5c61 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 11 Jan 2023 15:19:25 +0000 Subject: [PATCH 0782/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-rc.0 to 3.0.0-rc.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-rc.1/CHANGELOG.md --- packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 10e50d44a41..b2c3f268b55 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-rc.1", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-rc.0", + "@ui5/builder": "^3.0.0-rc.1", "@ui5/fs": "^3.0.0-rc.1", "@ui5/logger": "^3.0.1-rc.0", "ajv": "^6.12.6", @@ -1000,12 +1000,12 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.0.tgz", - "integrity": "sha512-GGvkuJ4IKtGwYIGssBzZpoRSKBJiUYm6u9FQlnd6Hv8hzByo3eZqynynSf7Gq8x0F7gbWwkkhQCsr3KO7zwhdQ==", + "version": "3.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.1.tgz", + "integrity": "sha512-c1jvvmhxefjG4jRj5qZRHQOs+7FUawZm+X8fdXPJjptHHyo5AGHG51bi9Tr283o6AbUhzhHHh/mhAwmxXY/g+w==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-rc.0", + "@ui5/fs": "^3.0.0-rc.1", "@ui5/logger": "^3.0.1-rc.0", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", @@ -10164,12 +10164,12 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.0.tgz", - "integrity": "sha512-GGvkuJ4IKtGwYIGssBzZpoRSKBJiUYm6u9FQlnd6Hv8hzByo3eZqynynSf7Gq8x0F7gbWwkkhQCsr3KO7zwhdQ==", + "version": "3.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.1.tgz", + "integrity": "sha512-c1jvvmhxefjG4jRj5qZRHQOs+7FUawZm+X8fdXPJjptHHyo5AGHG51bi9Tr283o6AbUhzhHHh/mhAwmxXY/g+w==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-rc.0", + "@ui5/fs": "^3.0.0-rc.1", "@ui5/logger": "^3.0.1-rc.0", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", diff --git a/packages/project/package.json b/packages/project/package.json index 5965cc70e9e..2d09ae5480c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-rc.0", + "@ui5/builder": "^3.0.0-rc.1", "@ui5/fs": "^3.0.0-rc.1", "@ui5/logger": "^3.0.1-rc.0", "ajv": "^6.12.6", From e96d271441f830d0106a8df9b47f5606aa86a2c2 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 11 Jan 2023 15:25:21 +0000 Subject: [PATCH 0783/1272] [ui5-project]Release 3.0.0-rc.2 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 754f9da4369..67c4cf11aba 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.2...HEAD). + + +## [v3.0.0-rc.2] - 2023-01-11 +### Breaking Changes +- Run 'generateThemeDesignerResources' only on framework libs [`e4bb108`](https://github.com/SAP/ui5-project/commit/e4bb1084df3e0ae906df27aba4a674d187ff8069) + ## [v3.0.0-rc.1] - 2023-01-04 @@ -379,6 +385,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-rc.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.1...v3.0.0-rc.2 [v3.0.0-rc.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.0...v3.0.0-rc.1 [v3.0.0-rc.0]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.5...v3.0.0-rc.0 [v3.0.0-beta.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.4...v3.0.0-beta.5 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b2c3f268b55..b83e743857e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.1", + "version": "3.0.0-rc.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc.1", + "version": "3.0.0-rc.2", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.1", diff --git a/packages/project/package.json b/packages/project/package.json index 2d09ae5480c..8e35d373056 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.1", + "version": "3.0.0-rc.2", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From d234cc37a3de629181b72a8d0fea6eb46791d8cd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 12 Jan 2023 14:30:16 +0100 Subject: [PATCH 0784/1272] [ui5-project][INTERNAL] type/Application: Fix log message for namespace resolution --- packages/project/lib/specifications/types/Application.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index cb2d03d805d..8caaed2f511 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -173,7 +173,7 @@ class Application extends ComponentProject { } const namespace = appId.replace(/\./g, "/"); this._log.verbose( - `Namespace of project ${this.getName()} is ${namespace} (from manifest.appdescr_variant)`); + `Namespace of project ${this.getName()} is ${namespace} (from manifest.json)`); return namespace; } From 15e240b878a0504b14facec3126f6e5e6a76b39c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 15 Jan 2023 03:20:30 +0000 Subject: [PATCH 0785/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 86 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 44 insertions(+), 44 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b83e743857e..45f9c122cd8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -35,7 +35,7 @@ "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", - "docdash": "^2.0.0", + "docdash": "^2.0.1", "eslint": "^8.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", @@ -1749,9 +1749,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001442", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001442.tgz", - "integrity": "sha512-239m03Pqy0hwxYPYR5JwOIxRJfLTWtle9FV8zosfV5pHg+/51uD4nxcUlM8+mWWGfwKtt8lJNHnD3cWw9VZ6ow==", + "version": "1.0.30001444", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001444.tgz", + "integrity": "sha512-ecER9xgJQVMqcrxThKptsW0pPxSae8R2RB87LNa+ivW9ppNWRHEplXcDzkCOP4LYWGj8hunXLqaiC41iBATNyg==", "dev": true, "funding": [ { @@ -2797,9 +2797,9 @@ } }, "node_modules/docdash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-2.0.0.tgz", - "integrity": "sha512-AxxZwrMLmiArEHJirdyZmW6YTBKxkd/Z5V9U2EU1crIMtpgoU/cH7Hnc9n1E0lzB1ZSam+VVMSnvlc+9+GUGVg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-2.0.1.tgz", + "integrity": "sha512-mkBhkeMyMwGV4YIdA7S4dIC25ENrfU/ZBfyTs/MXj/HUewW/dtx44xoho4PttCOMsqxlcghzfj8HRlam5QiSoQ==", "dev": true, "dependencies": { "@jsdoc/salty": "^0.2.1" @@ -3674,9 +3674,9 @@ } }, "node_modules/file-type": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.0.0.tgz", - "integrity": "sha512-jjMwFpnW8PKofLE/4ohlhqwDk5k0NC6iy0UHAJFKoY1fQeGMN0GDdLgHQrvCbSpMwbqzoCZhRI5dETCZna5qVA==", + "version": "18.1.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.1.0.tgz", + "integrity": "sha512-FqjmVvHjX5C/EnibCENAsCMIg7HgUYO0vDypt5V8RmtKDk7eUa+/6mEWSrY4PStFhUt0K3CoE8stjLJCcMsJFQ==", "dev": true, "dependencies": { "readable-web-to-node-stream": "^3.0.2", @@ -3933,9 +3933,9 @@ } }, "node_modules/glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -5315,9 +5315,9 @@ } }, "node_modules/marked": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.5.tgz", - "integrity": "sha512-jPueVhumq7idETHkb203WDD4fMA3yV9emQ5vLwop58lu8bTclMghBWcYAavlDqIEMaisADinV1TooIFCfqOsYQ==", + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", + "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==", "bin": { "marked": "bin/marked.js" }, @@ -5578,9 +5578,9 @@ } }, "node_modules/minimatch": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz", - "integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.4.tgz", + "integrity": "sha512-U0iNYXt9wALljzfnGkhFSy5sAC6/SCR3JrHrlsdJz4kF8MvhTRQNiC59iUi1iqsitV7abrNAJWElVL9pdnoUgw==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -7316,9 +7316,9 @@ "dev": true }, "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.2.0.tgz", + "integrity": "sha512-LN6QV1IJ9ZhxWTNdktaPClrNfp8xdSAYS0Zk2ddX7XsXZAxckMHPCBcHRo0cTcEIgYPRiGEkmji3Idkh2yFtYw==", "engines": { "node": ">=6" } @@ -10712,9 +10712,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001442", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001442.tgz", - "integrity": "sha512-239m03Pqy0hwxYPYR5JwOIxRJfLTWtle9FV8zosfV5pHg+/51uD4nxcUlM8+mWWGfwKtt8lJNHnD3cWw9VZ6ow==", + "version": "1.0.30001444", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001444.tgz", + "integrity": "sha512-ecER9xgJQVMqcrxThKptsW0pPxSae8R2RB87LNa+ivW9ppNWRHEplXcDzkCOP4LYWGj8hunXLqaiC41iBATNyg==", "dev": true }, "catharsis": { @@ -11502,9 +11502,9 @@ } }, "docdash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-2.0.0.tgz", - "integrity": "sha512-AxxZwrMLmiArEHJirdyZmW6YTBKxkd/Z5V9U2EU1crIMtpgoU/cH7Hnc9n1E0lzB1ZSam+VVMSnvlc+9+GUGVg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-2.0.1.tgz", + "integrity": "sha512-mkBhkeMyMwGV4YIdA7S4dIC25ENrfU/ZBfyTs/MXj/HUewW/dtx44xoho4PttCOMsqxlcghzfj8HRlam5QiSoQ==", "dev": true, "requires": { "@jsdoc/salty": "^0.2.1" @@ -12158,9 +12158,9 @@ } }, "file-type": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.0.0.tgz", - "integrity": "sha512-jjMwFpnW8PKofLE/4ohlhqwDk5k0NC6iy0UHAJFKoY1fQeGMN0GDdLgHQrvCbSpMwbqzoCZhRI5dETCZna5qVA==", + "version": "18.1.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.1.0.tgz", + "integrity": "sha512-FqjmVvHjX5C/EnibCENAsCMIg7HgUYO0vDypt5V8RmtKDk7eUa+/6mEWSrY4PStFhUt0K3CoE8stjLJCcMsJFQ==", "dev": true, "requires": { "readable-web-to-node-stream": "^3.0.2", @@ -12340,9 +12340,9 @@ "dev": true }, "glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -13376,9 +13376,9 @@ "requires": {} }, "marked": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.5.tgz", - "integrity": "sha512-jPueVhumq7idETHkb203WDD4fMA3yV9emQ5vLwop58lu8bTclMghBWcYAavlDqIEMaisADinV1TooIFCfqOsYQ==" + "version": "4.2.12", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", + "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==" }, "matcher": { "version": "5.0.0", @@ -13545,9 +13545,9 @@ "dev": true }, "minimatch": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz", - "integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.4.tgz", + "integrity": "sha512-U0iNYXt9wALljzfnGkhFSy5sAC6/SCR3JrHrlsdJz4kF8MvhTRQNiC59iUi1iqsitV7abrNAJWElVL9pdnoUgw==", "requires": { "brace-expansion": "^2.0.1" } @@ -14846,9 +14846,9 @@ "dev": true }, "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.2.0.tgz", + "integrity": "sha512-LN6QV1IJ9ZhxWTNdktaPClrNfp8xdSAYS0Zk2ddX7XsXZAxckMHPCBcHRo0cTcEIgYPRiGEkmji3Idkh2yFtYw==" }, "query-ast": { "version": "1.0.5", diff --git a/packages/project/package.json b/packages/project/package.json index 8e35d373056..baa5b6914ff 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -143,7 +143,7 @@ "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", - "docdash": "^2.0.0", + "docdash": "^2.0.1", "eslint": "^8.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", From 22bf733cfc327b422b961e8c134d20e7fab07b4f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 15 Jan 2023 10:01:52 +0000 Subject: [PATCH 0786/1272] [ui5-project][INTERNAL] Bump eslint from 8.31.0 to 8.32.0 Bumps [eslint](https://github.com/eslint/eslint) from 8.31.0 to 8.32.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.31.0...v8.32.0) --- updated-dependencies: - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 45f9c122cd8..3cd43b5e3d5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -36,7 +36,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.31.0", + "eslint": "^8.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-jsdoc": "^39.6.4", @@ -3074,9 +3074,9 @@ } }, "node_modules/eslint": { - "version": "8.31.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.31.0.tgz", - "integrity": "sha512-0tQQEVdmPZ1UtUKXjX7EMm9BlgJ08G90IhWh0PKDCb3ZLsgAOHI8fYSIzYVZej92zsgq+ft0FGsxhJ3xo2tbuA==", + "version": "8.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.32.0.tgz", + "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==", "dev": true, "dependencies": { "@eslint/eslintrc": "^1.4.1", @@ -11723,9 +11723,9 @@ } }, "eslint": { - "version": "8.31.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.31.0.tgz", - "integrity": "sha512-0tQQEVdmPZ1UtUKXjX7EMm9BlgJ08G90IhWh0PKDCb3ZLsgAOHI8fYSIzYVZej92zsgq+ft0FGsxhJ3xo2tbuA==", + "version": "8.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.32.0.tgz", + "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==", "dev": true, "requires": { "@eslint/eslintrc": "^1.4.1", diff --git a/packages/project/package.json b/packages/project/package.json index baa5b6914ff..76bb1065212 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -144,7 +144,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.31.0", + "eslint": "^8.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", "eslint-plugin-jsdoc": "^39.6.4", From 9849b9ed7cda6b9e5c734cbd9194aec2680ae0c9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 18 Jan 2023 13:06:44 +0100 Subject: [PATCH 0787/1272] [ui5-project][INTERNAL] README: Align wording across repositories --- packages/project/README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/project/README.md b/packages/project/README.md index b02d3b4dc24..7ba7deb6617 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -10,7 +10,9 @@ [![Coverage Status](https://coveralls.io/repos/github/SAP/ui5-project/badge.svg)](https://coveralls.io/github/SAP/ui5-project) ## Documentation -Can be found here: [sap.github.io/ui5-tooling](https://sap.github.io/ui5-tooling/pages/Project/) +UI5 Project documentation can be found here: [sap.github.io/ui5-tooling](https://sap.github.io/ui5-tooling/v3/pages/Project/) + +The UI5 Project API Reference can be found here: [`@ui5/project`](https://sap.github.io/ui5-tooling/v3/api/) ## Contributing Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md). From ca46f6544bbe9d2064447bab7720164e56688788 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 18 Jan 2023 13:13:58 +0100 Subject: [PATCH 0788/1272] [ui5-project][INTERNAL] package.json: Remove unit-nyan script --- packages/project/package-lock.json | 395 ----------------------------- packages/project/package.json | 2 - 2 files changed, 397 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3cd43b5e3d5..8ad14c3582d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -50,7 +50,6 @@ "nyc": "^15.1.0", "open-cli": "^7.1.0", "sinon": "^15.0.1", - "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" }, "engines": { @@ -2874,36 +2873,6 @@ "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", "dev": true }, - "node_modules/duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", - "dev": true, - "dependencies": { - "readable-stream": "^2.0.2" - } - }, - "node_modules/duplexer2/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/duplexer2/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -4030,27 +3999,6 @@ "node": ">= 0.4.0" } }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-ansi/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -8379,168 +8327,6 @@ "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", "integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA==" }, - "node_modules/tap-nyan": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", - "integrity": "sha512-t+/3QEJSeo03QsQ/QLfgVg/gQUAHLMmYdzLx8v+08C8/RY0Vse286G+LT/AhuDhMSMsmOoNttAHN/DygxOgSTA==", - "dev": true, - "dependencies": { - "chalk": "^1.1.3", - "duplexer2": "^0.1.4", - "supports-color": "^3.1.2", - "tap-parser": "^3.0.3" - }, - "bin": { - "tap-nyan": "bin/cmd.js", - "tnyan": "bin/cmd.js" - } - }, - "node_modules/tap-nyan/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tap-nyan/node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tap-nyan/node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tap-nyan/node_modules/chalk/node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/tap-nyan/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/tap-nyan/node_modules/has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tap-nyan/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tap-nyan/node_modules/supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", - "dev": true, - "dependencies": { - "has-flag": "^1.0.0" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/tap-parser": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", - "integrity": "sha512-mSFtCjQTlZiHEJWgcl+pYVIK6+UgQNP3YeDEMVn9qwrQ1xb2CpWBeuZMbd+6sCqrGOdaTAiup6KnDv8cOAhu3A==", - "dev": true, - "dependencies": { - "events-to-array": "^1.0.1", - "js-yaml": "^3.2.7" - }, - "bin": { - "tap-parser": "bin/cmd.js" - }, - "optionalDependencies": { - "readable-stream": "^2" - } - }, - "node_modules/tap-parser/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/tap-parser/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "optional": true - }, - "node_modules/tap-parser/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/tap-parser/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, "node_modules/tap-xunit": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", @@ -11558,38 +11344,6 @@ "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", "dev": true }, - "duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, "eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -12409,23 +12163,6 @@ "function-bind": "^1.1.1" } }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - } - } - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -15610,138 +15347,6 @@ "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", "integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA==" }, - "tap-nyan": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/tap-nyan/-/tap-nyan-1.1.0.tgz", - "integrity": "sha512-t+/3QEJSeo03QsQ/QLfgVg/gQUAHLMmYdzLx8v+08C8/RY0Vse286G+LT/AhuDhMSMsmOoNttAHN/DygxOgSTA==", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "duplexer2": "^0.1.4", - "supports-color": "^3.1.2", - "tap-parser": "^3.0.3" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "dependencies": { - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true - } - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", - "dev": true, - "requires": { - "has-flag": "^1.0.0" - } - } - } - }, - "tap-parser": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-3.0.5.tgz", - "integrity": "sha512-mSFtCjQTlZiHEJWgcl+pYVIK6+UgQNP3YeDEMVn9qwrQ1xb2CpWBeuZMbd+6sCqrGOdaTAiup6KnDv8cOAhu3A==", - "dev": true, - "requires": { - "events-to-array": "^1.0.1", - "js-yaml": "^3.2.7", - "readable-stream": "^2" - }, - "dependencies": { - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "optional": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, "tap-xunit": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 76bb1065212..ae20baef60a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -40,7 +40,6 @@ "unit": "rimraf test/tmp && ava", "unit-verbose": "rimraf test/tmp && cross-env UI5_LOG_LVL=verbose ava --verbose --serial", "unit-watch": "npm run unit -- --watch", - "unit-nyan": "npm run unit -- --tap | tnyan", "unit-xunit": "rimraf test/tmp && ava --node-arguments=\"--experimental-loader=@istanbuljs/esm-loader-hook\" --tap | tap-xunit --dontUseCommentsAsTestNames=true > test-results.xml", "unit-inspect": "cross-env UI5_LOG_LVL=verbose ava debug --break", "coverage": "rimraf test/tmp && nyc ava --node-arguments=\"--experimental-loader=@istanbuljs/esm-loader-hook\"", @@ -158,7 +157,6 @@ "nyc": "^15.1.0", "open-cli": "^7.1.0", "sinon": "^15.0.1", - "tap-nyan": "^1.1.0", "tap-xunit": "^2.4.1" } } From 63a451768eb4fdb555141c426a049875e2701960 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 20 Dec 2022 14:52:23 +0100 Subject: [PATCH 0789/1272] [ui5-project][INTERNAL] Enhance logging based on new ui5-logger See https://github.com/SAP/ui5-logger/pull/363 --- packages/project/lib/build/ProjectBuilder.js | 18 +- packages/project/lib/build/TaskRunner.js | 15 +- .../lib/build/helpers/ProjectBuildContext.js | 8 +- .../project/test/lib/build/ProjectBuilder.js | 46 +++- packages/project/test/lib/build/TaskRunner.js | 217 ++++++++++-------- .../lib/build/helpers/ProjectBuildContext.js | 20 +- 6 files changed, 205 insertions(+), 119 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 5bacacc55bf..ac71cbafb61 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -2,8 +2,8 @@ import {promisify} from "node:util"; import rimraf from "rimraf"; const rimrafp = promisify(rimraf); import * as resourceFactory from "@ui5/fs/resourceFactory"; -import logger from "@ui5/logger"; -const log = logger.getLogger("ProjectBuilder"); +import BuildLogger from "@ui5/logger/internal/loggers/Build"; +const log = new BuildLogger("ProjectBuilder"); import composeProjectList from "./helpers/composeProjectList.js"; import BuildContext from "./helpers/BuildContext.js"; import prettyHrtime from "pretty-hrtime"; @@ -197,10 +197,13 @@ class ProjectBuilder { } }); + log.setProjects(queue.map((projectBuildContext) => { + return projectBuildContext.getProject().getName(); + })); if (queue.length > 1) { // Do not log if only the root project is being built log.info(`Processing ${queue.length} projects`); if (alreadyBuilt.length) { - log.info(` Reusing built results of ${alreadyBuilt.length} projects`); + log.info(` Reusing build results of ${alreadyBuilt.length} projects`); log.info(` Building ${queue.length - alreadyBuilt.length} projects`); } @@ -232,13 +235,16 @@ class ProjectBuilder { const pWrites = []; for (const projectBuildContext of queue) { const projectName = projectBuildContext.getProject().getName(); + const projectType = projectBuildContext.getProject().getType(); log.verbose(`Processing project ${projectName}...`); // Only build projects that are not already build (i.e. provide a matching build manifest) - if (!alreadyBuilt.includes(projectName)) { - log.info(`Building project ${projectName}...`); + if (alreadyBuilt.includes(projectName)) { + log.skipProjectBuild(projectName, projectType); + } else { + log.startProjectBuild(projectName, projectType); await projectBuildContext.getTaskRunner().runTasks(); - log.verbose(`Finished building project ${projectName}`); + log.endProjectBuild(projectName, projectType); } if (!requestedProjects.includes(projectName)) { // Project has not been requested diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 4e0136ddade..43a268e7e81 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -1,5 +1,5 @@ -import composeTaskList from "./helpers/composeTaskList.js"; import logger from "@ui5/logger"; +import composeTaskList from "./helpers/composeTaskList.js"; import {createReaderCollection} from "@ui5/fs/resourceFactory"; /** @@ -15,7 +15,7 @@ class TaskRunner { * @param {object} parameters * @param {object} parameters.graph * @param {object} parameters.project - * @param {@ui5/logger/GroupLogger} parameters.log Logger to use + * @param {@ui5/logger/loggers/ProjectBuild} parameters.log Logger to use * @param {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil TaskUtil instance * @param {@ui5/builder/tasks/taskRepository} parameters.taskRepository Task repository * @param {@ui5/project/build/ProjectBuilder~BuildConfiguration} parameters.buildConfig @@ -23,14 +23,13 @@ class TaskRunner { */ constructor({graph, project, log, taskUtil, taskRepository, buildConfig}) { if (!graph || !project || !log || !taskUtil || !taskRepository || !buildConfig) { - throw new Error("One or more mandatory parameters not provided"); + throw new Error("TaskRunner: One or more mandatory parameters not provided"); } this._project = project; this._graph = graph; this._taskUtil = taskUtil; this._taskRepository = taskRepository; this._buildConfig = buildConfig; - this._log = log; this._directDependencies = new Set(this._taskUtil.getDependencies()); @@ -115,6 +114,7 @@ class TaskRunner { return tasksToRun.includes(taskWithoutSuffixCounter); }); + this._log.setTasks(allTasks); for (const taskName of allTasks) { const taskFunction = this._tasks[taskName].task; @@ -371,7 +371,7 @@ class TaskRunner { _createCustomTaskWrapper({ project, taskUtil, getDependenciesReader, provideDependenciesReader, task, taskName, taskConfiguration }) { - return async function(log) { + return async function() { /* Custom Task Interface Parameters: {Object} parameters Parameters @@ -380,7 +380,7 @@ class TaskRunner { Reader or Collection to read dependency files {@ui5/project/build/helpers/TaskUtil} parameters.taskUtil Specification Version-dependent interface of a [TaskUtil]{@link @ui5/project/build/helpers/TaskUtil} instance - {@ui5/logger/GroupLogger} [parameters.log] Logger instance to use by the custom task. + {@ui5/logger/Logger} [parameters.log] Logger instance to use by the custom task. This parameter is only available to custom task extensions defining Specification Version 3.0 and above. {Object} parameters.options Options @@ -432,12 +432,13 @@ class TaskRunner { * @returns {Promise} Resolves when task has finished */ async _executeTask(taskName, taskFunction, taskParams) { - this._log.info(`Running task ${taskName}...`); + this._log.startTask(taskName); this._taskStart = performance.now(); await taskFunction(taskParams, this._log); if (this._log.isLevelEnabled("perf")) { this._log.perf(`Task ${taskName} finished in ${Math.round((performance.now() - this._taskStart))} ms`); } + this._log.endTask(taskName); } async _createDependenciesReader(requiredDirectDependencies) { diff --git a/packages/project/lib/build/helpers/ProjectBuildContext.js b/packages/project/lib/build/helpers/ProjectBuildContext.js index 439472836cd..69db9dac9f3 100644 --- a/packages/project/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/lib/build/helpers/ProjectBuildContext.js @@ -1,7 +1,7 @@ import ResourceTagCollection from "@ui5/fs/internal/ResourceTagCollection"; +import ProjectBuildLogger from "@ui5/logger/internal/loggers/ProjectBuild"; import TaskUtil from "./TaskUtil.js"; import TaskRunner from "../TaskRunner.js"; -import logger from "@ui5/logger"; /** * Build context of a single project. Always part of an overall @@ -20,7 +20,11 @@ class ProjectBuildContext { } this._buildContext = buildContext; this._project = project; - this._log = logger.getLogger(`${project.getType()} ${project.getName()}`); + this._log = new ProjectBuildLogger({ + moduleName: "Build", + projectName: project.getName(), + projectType: project.getType() + }); this._queues = { cleanup: [] }; diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 7f4123a83a8..39632455b77 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -253,7 +253,28 @@ test("build: Failure", async (t) => { }); test.serial("build: Multiple projects", async (t) => { - const {graph, taskRepository, ProjectBuilder, sinon} = t.context; + const {graph, taskRepository, sinon} = t.context; + + const buildLoggerMock = { + isLevelEnabled: sinon.stub(), + setProjects: sinon.stub(), + startProjectBuild: sinon.stub(), + endProjectBuild: sinon.stub(), + skipProjectBuild: sinon.stub(), + + info: sinon.stub(), + verbose: sinon.stub(), + error: sinon.stub(), + }; + // Function acts as constructor for our class mock + function CreateBuildLoggerMock(moduleName) { + t.is(moduleName, "ProjectBuilder", "BuildLogger created with expected moduleName"); + return buildLoggerMock; + } + const ProjectBuilder = await esmock("../../../lib/build/ProjectBuilder.js", { + "@ui5/logger/internal/loggers/Build": CreateBuildLoggerMock + }); + const builder = new ProjectBuilder({graph, taskRepository}); const filterProjectStub = sinon.stub().returns(true).onFirstCall().returns(false); @@ -347,6 +368,29 @@ test.serial("build: Multiple projects", async (t) => { t.is(deregisterCleanupSigHooksStub.getCall(0).args[0], "cleanup sig hooks", "_deregisterCleanupSigHooks got called with correct arguments"); t.is(executeCleanupTasksStub.callCount, 1, "_executeCleanupTasksStub got called once"); + + t.is(buildLoggerMock.setProjects.callCount, 1, "BuildLogger#setProjects got called once"); + t.deepEqual(buildLoggerMock.setProjects.firstCall.firstArg, [ + "project.a", + "project.b", + "project.c", + ], "BuildLogger#setProjects got called with expected argument"); + t.is(buildLoggerMock.startProjectBuild.callCount, 2, + "BuildLogger#startProjectBuild got called twice"); + t.is(buildLoggerMock.startProjectBuild.getCall(0).firstArg, "project.a", + "BuildLogger#startProjectBuild got called with expected argument on first call"); + t.is(buildLoggerMock.startProjectBuild.getCall(1).firstArg, "project.c", + "BuildLogger#startProjectBuild got called with expected argument on second call"); + t.is(buildLoggerMock.endProjectBuild.callCount, 2, + "BuildLogger#endProjectBuild got called twice"); + t.is(buildLoggerMock.endProjectBuild.getCall(0).firstArg, "project.a", + "BuildLogger#endProjectBuild got called with expected argument on first call"); + t.is(buildLoggerMock.endProjectBuild.getCall(1).firstArg, "project.c", + "BuildLogger#endProjectBuild got called with expected argument on second call"); + t.is(buildLoggerMock.skipProjectBuild.callCount, 1, + "BuildLogger#skipProjectBuild got called once"); + t.is(buildLoggerMock.skipProjectBuild.getCall(0).firstArg, "project.b", + "BuildLogger#skipProjectBuild got called with expected argument"); }); test("_createRequiredBuildContexts", async (t) => { diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 67b17ab98be..cefc6ab346e 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -3,7 +3,6 @@ import sinonGlobal from "sinon"; import esmock from "esmock"; import logger from "@ui5/logger"; logger.setLevel("perf"); -const log = logger.getLogger("mygroup"); function noop() {} function emptyarray() { @@ -110,6 +109,15 @@ test.beforeEach(async (t) => { getLogger: sinon.stub().returns("group logger") }; + t.context.projectBuildLogger = { + setTasks: sinon.stub(), + startTask: sinon.stub(), + endTask: sinon.stub(), + verbose: sinon.stub(), + perf: sinon.stub(), + isLevelEnabled: sinon.stub().returns(true), + }; + t.context.resourceFactory = { createReaderCollection: sinon.stub() .returns("reader collection") @@ -126,50 +134,50 @@ test.afterEach.always((t) => { }); test("Missing parameters", (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; t.throws(() => { new TaskRunner({ graph, taskUtil, taskRepository, - log, + log: projectBuildLogger, buildConfig }); }, { - message: "One or more mandatory parameters not provided" + message: "TaskRunner: One or more mandatory parameters not provided" }, "Threw with expected error message for missing project parameter"); t.throws(() => { new TaskRunner({ project: getMockProject("application"), taskUtil, taskRepository, - log, + log: projectBuildLogger, buildConfig }); }, { - message: "One or more mandatory parameters not provided" + message: "TaskRunner: One or more mandatory parameters not provided" }, "Threw with expected error message for missing graph parameter"); t.throws(() => { new TaskRunner({ project: getMockProject("application"), graph, taskRepository, - log, + log: projectBuildLogger, buildConfig }); }, { - message: "One or more mandatory parameters not provided" + message: "TaskRunner: One or more mandatory parameters not provided" }, "Threw with expected error message for missing taskUtil parameter"); t.throws(() => { new TaskRunner({ project: getMockProject("application"), graph, taskUtil, - log, + log: projectBuildLogger, buildConfig }); }, { - message: "One or more mandatory parameters not provided" + message: "TaskRunner: One or more mandatory parameters not provided" }, "Threw with expected error message for missing taskRepository parameter"); t.throws(() => { new TaskRunner({ @@ -180,7 +188,7 @@ test("Missing parameters", (t) => { buildConfig }); }, { - message: "One or more mandatory parameters not provided" + message: "TaskRunner: One or more mandatory parameters not provided" }, "Threw with expected error message for missing log parameter"); t.throws(() => { new TaskRunner({ @@ -188,17 +196,17 @@ test("Missing parameters", (t) => { graph, taskUtil, taskRepository, - log + log: projectBuildLogger, }); }, { - message: "One or more mandatory parameters not provided" + message: "TaskRunner: One or more mandatory parameters not provided" }, "Threw with expected error message for missing buildConfig parameter"); }); test("_initTasks: Project of type 'application'", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("application"), graph, taskUtil, taskRepository, log, buildConfig + project: getMockProject("application"), graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -219,9 +227,9 @@ test("_initTasks: Project of type 'application'", async (t) => { }); test("_initTasks: Project of type 'library'", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("library"), graph, taskUtil, taskRepository, log, buildConfig + project: getMockProject("library"), graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -243,13 +251,13 @@ test("_initTasks: Project of type 'library'", async (t) => { }); test("_initTasks: Project of type 'library' (framework project)", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, projectBuildLogger, TaskRunner} = t.context; const project = getMockProject("library"); project.isFrameworkProject = () => true; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -272,9 +280,9 @@ test("_initTasks: Project of type 'library' (framework project)", async (t) => { }); test("_initTasks: Project of type 'theme-library'", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("theme-library"), graph, taskUtil, taskRepository, log, buildConfig + project: getMockProject("theme-library"), graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -287,13 +295,13 @@ test("_initTasks: Project of type 'theme-library'", async (t) => { }); test("_initTasks: Project of type 'theme-library' (framework project)", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, projectBuildLogger, TaskRunner} = t.context; const project = getMockProject("theme-library"); project.isFrameworkProject = () => true; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -307,9 +315,9 @@ test("_initTasks: Project of type 'theme-library' (framework project)", async (t }); test("_initTasks: Project of type 'module'", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("module"), graph, taskUtil, taskRepository, log, buildConfig + project: getMockProject("module"), graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -317,9 +325,9 @@ test("_initTasks: Project of type 'module'", async (t) => { }); test("_initTasks: Unknown project type", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskRunner = new TaskRunner({ - project: getMockProject("pony"), graph, taskUtil, taskRepository, log, buildConfig + project: getMockProject("pony"), graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); const err = await t.throwsAsync(taskRunner._initTasks()); @@ -327,14 +335,14 @@ test("_initTasks: Unknown project type", async (t) => { }); test("_initTasks: Custom tasks", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"}, {name: "myOtherTask", beforeTask: "replaceVersion"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -357,14 +365,14 @@ test("_initTasks: Custom tasks", async (t) => { }); test("_initTasks: Custom tasks with no standard tasks", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"}, {name: "myOtherTask", beforeTask: "myTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -374,14 +382,14 @@ test("_initTasks: Custom tasks with no standard tasks", async (t) => { }); test("_initTasks: Custom tasks with no standard tasks and second task defining no before-/afterTask", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"}, {name: "myOtherTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -393,13 +401,13 @@ test("_initTasks: Custom tasks with no standard tasks and second task defining n }); test("_initTasks: Custom tasks with both, before- and afterTask reference", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "minify", afterTask: "replaceVersion"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -411,13 +419,13 @@ test("_initTasks: Custom tasks with both, before- and afterTask reference", asyn }); test("_initTasks: Custom tasks with no before-/afterTask reference", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -429,13 +437,13 @@ test("_initTasks: Custom tasks with no before-/afterTask reference", async (t) = }); test("_initTasks: Custom tasks without name", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: ""} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -446,13 +454,13 @@ test("_initTasks: Custom tasks without name", async (t) => { }); test("_initTasks: Custom task with name of standard tasks", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "replaceVersion", afterTask: "minify"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -464,7 +472,7 @@ test("_initTasks: Custom task with name of standard tasks", async (t) => { }); test("_initTasks: Multiple custom tasks with same name", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"}, @@ -472,7 +480,7 @@ test("_initTasks: Multiple custom tasks with same name", async (t) => { {name: "myTask", afterTask: "minify"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); t.deepEqual(taskRunner._taskExecutionOrder, [ @@ -496,13 +504,13 @@ test("_initTasks: Multiple custom tasks with same name", async (t) => { }); test("_initTasks: Custom tasks with unknown beforeTask", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "unknownTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -514,13 +522,13 @@ test("_initTasks: Custom tasks with unknown beforeTask", async (t) => { }); test("_initTasks: Custom tasks with unknown afterTask", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "unknownTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -532,14 +540,14 @@ test("_initTasks: Custom tasks with unknown afterTask", async (t) => { }); test("_initTasks: Custom tasks is unknown", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; graph.getExtension.returns(undefined); const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", afterTask: "minify"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -551,13 +559,13 @@ test("_initTasks: Custom tasks is unknown", async (t) => { }); test("_initTasks: Custom tasks with removed beforeTask", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("application"); project.getCustomTasks = () => [ {name: "myTask", beforeTask: "removedTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); const err = await t.throwsAsync(async () => { await taskRunner._initTasks(); @@ -570,10 +578,10 @@ test("_initTasks: Custom tasks with removed beforeTask", async (t) => { }); test("_initTasks: Create dependencies reader for all dependencies", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory, projectBuildLogger} = t.context; const project = getMockProject("application"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); t.is(graph.traverseBreadthFirst.callCount, 1, "ProjectGraph#traverseBreadthFirst called once"); @@ -616,7 +624,7 @@ test("_initTasks: Create dependencies reader for all dependencies", async (t) => }); test("Custom task is called correctly", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskStub = sinon.stub(); const specVersionGteStub = sinon.stub().returns(false); const mockSpecVersion = { @@ -637,7 +645,7 @@ test("Custom task is called correctly", async (t) => { ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -677,7 +685,7 @@ test("Custom task is called correctly", async (t) => { }); test("Custom task with legacy spec version", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskStub = sinon.stub(); const specVersionGteStub = sinon.stub().returns(false); const mockSpecVersion = { @@ -697,7 +705,7 @@ test("Custom task with legacy spec version", async (t) => { ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -737,7 +745,7 @@ test("Custom task with legacy spec version", async (t) => { }); test("Custom task with legacy spec version and requiredDependenciesCallback", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskStub = sinon.stub(); const specVersionGteStub = sinon.stub().returns(false); const mockSpecVersion = { @@ -758,7 +766,7 @@ test("Custom task with legacy spec version and requiredDependenciesCallback", as ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -803,7 +811,7 @@ test("Custom task with legacy spec version and requiredDependenciesCallback", as }); test("Custom task with specVersion 3.0", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskStub = sinon.stub(); const specVersionGteStub = sinon.stub().returns(true); const mockSpecVersion = { @@ -827,7 +835,7 @@ test("Custom task with specVersion 3.0", async (t) => { ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -900,7 +908,7 @@ test("Custom task with specVersion 3.0", async (t) => { }); test("Custom task with specVersion 3.0 and no requiredDependenciesCallback", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {sinon, graph, taskUtil, taskRepository, projectBuildLogger, TaskRunner} = t.context; const taskStub = sinon.stub(); const specVersionGteStub = sinon.stub().returns(true); const mockSpecVersion = { @@ -923,7 +931,7 @@ test("Custom task with specVersion 3.0 and no requiredDependenciesCallback", asy ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -961,7 +969,7 @@ test("Custom task with specVersion 3.0 and no requiredDependenciesCallback", asy }); test("Multiple custom tasks with same name are called correctly", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskStubA = sinon.stub(); const taskStubB = sinon.stub(); const taskStubC = sinon.stub(); @@ -1021,7 +1029,7 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { {name: "myTask", afterTask: "myTask", configuration: "bird"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -1060,6 +1068,29 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependenciesReader").resolves("dependencies"); await taskRunner.runTasks(); + t.is(projectBuildLogger.setTasks.callCount, 1, "ProjectBuildLogger#setTask got called once"); + t.deepEqual(projectBuildLogger.setTasks.firstCall.firstArg, [ + "myTask", + "myTask--4", + "myTask--3", + "myTask--2", + ], "ProjectBuildLogger#setTask got called with expected argument"); + + t.is(projectBuildLogger.startTask.callCount, 4, "ProjectBuildLogger#startTask got called four times"); + t.deepEqual(projectBuildLogger.startTask.getCalls().map((call) => call.firstArg), [ + "myTask", + "myTask--4", + "myTask--3", + "myTask--2", + ], "ProjectBuildLogger#startTask got called with expected arguments"); + t.is(projectBuildLogger.endTask.callCount, 4, "ProjectBuildLogger#endTask got called four times"); + t.deepEqual(projectBuildLogger.endTask.getCalls().map((call) => call.firstArg), [ + "myTask", + "myTask--4", + "myTask--3", + "myTask--2", + ], "ProjectBuildLogger#endTask got called with expected arguments"); + t.is(taskUtil.getInterface.callCount, 5, "taskUtil#getInterface got called three times"); t.is(taskUtil.getInterface.getCall(0).args[0], mockSpecVersionD, "taskUtil#getInterface got called with correct argument on first call"); @@ -1140,7 +1171,7 @@ test("Multiple custom tasks with same name are called correctly", async (t) => { }); test("Custom task: requiredDependenciesCallback returns unknown dependency", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskStub = sinon.stub(); const specVersionGteStub = sinon.stub().returns(true); const mockSpecVersion = { @@ -1165,7 +1196,7 @@ test("Custom task: requiredDependenciesCallback returns unknown dependency", asy ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await t.throwsAsync(taskRunner._initTasks(), { message: @@ -1177,7 +1208,7 @@ test("Custom task: requiredDependenciesCallback returns unknown dependency", asy test("Custom task: requiredDependenciesCallback returns Array instead of Set", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskStub = sinon.stub(); const specVersionGteStub = sinon.stub().returns(true); const mockSpecVersion = { @@ -1202,7 +1233,7 @@ test("Custom task: requiredDependenciesCallback returns Array instead of Set", a ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await t.throwsAsync(taskRunner._initTasks(), { message: @@ -1212,7 +1243,7 @@ test("Custom task: requiredDependenciesCallback returns Array instead of Set", a }); test.serial("_addTask", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskStub = sinon.stub(); taskRepository.getTask.withArgs("standardTask").resolves({ @@ -1221,7 +1252,7 @@ test.serial("_addTask", async (t) => { const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -1254,12 +1285,12 @@ test.serial("_addTask", async (t) => { }); test.serial("_addTask with options", async (t) => { - const {sinon, graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {sinon, graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const taskStub = sinon.stub(); const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -1300,10 +1331,10 @@ test.serial("_addTask with options", async (t) => { }); test("_addTask: Duplicate task", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -1321,10 +1352,10 @@ test("_addTask: Duplicate task", async (t) => { }); test("_addTask: Task already added to execution order", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); @@ -1340,13 +1371,13 @@ test("_addTask: Task already added to execution order", async (t) => { }); test("getRequiredDependencies: Custom Task", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("module"); project.getCustomTasks = () => [ {name: "myTask"} ]; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); t.deepEqual(await taskRunner.getRequiredDependencies(), new Set([]), "Project with custom task >= specVersion 3.0 and no requiredDependenciesCallback " + @@ -1354,55 +1385,55 @@ test("getRequiredDependencies: Custom Task", async (t) => { }); test("getRequiredDependencies: Default application", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("application"); project.getBundles = () => []; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); t.deepEqual(await taskRunner.getRequiredDependencies(), new Set([]), "Default application project does not require dependencies"); }); test("getRequiredDependencies: Default library", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("library"); project.getBundles = () => []; const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); t.deepEqual(await taskRunner.getRequiredDependencies(), new Set(["dep.a", "dep.b"]), "Default library project requires dependencies"); }); test("getRequiredDependencies: Default theme-library", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("theme-library"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); t.deepEqual(await taskRunner.getRequiredDependencies(), new Set(["dep.a", "dep.b"]), "Default theme-library project requires dependencies"); }); test("getRequiredDependencies: Default module", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); t.deepEqual(await taskRunner.getRequiredDependencies(), new Set([]), "Default module project does not require dependencies"); }); test("_createDependenciesReader", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory, projectBuildLogger} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); graph.traverseBreadthFirst.reset(); // Ignore the call in initTask @@ -1459,11 +1490,11 @@ test("_createDependenciesReader", async (t) => { }); test("_createDependenciesReader: All dependencies required", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory, projectBuildLogger} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); graph.traverseBreadthFirst.reset(); // Ignore the call in initTask @@ -1476,11 +1507,11 @@ test("_createDependenciesReader: All dependencies required", async (t) => { }); test("_createDependenciesReader: No dependencies required", async (t) => { - const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory} = t.context; + const {graph, taskUtil, taskRepository, TaskRunner, resourceFactory, projectBuildLogger} = t.context; const project = getMockProject("module"); const taskRunner = new TaskRunner({ - project, graph, taskUtil, taskRepository, log, buildConfig + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig }); await taskRunner._initTasks(); graph.traverseBreadthFirst.reset(); // Ignore the call in initTask diff --git a/packages/project/test/lib/build/helpers/ProjectBuildContext.js b/packages/project/test/lib/build/helpers/ProjectBuildContext.js index ea72c6f724b..5cf8bcf24d6 100644 --- a/packages/project/test/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/test/lib/build/helpers/ProjectBuildContext.js @@ -315,13 +315,16 @@ test("getTaskUtil", (t) => { }); test.serial("getTaskRunner", async (t) => { - t.plan(2); + t.plan(3); const project = { getName: () => "project", getType: () => "type", }; - class DummyTaskRunner { + const {default: ProjectBuildLogger} = await import("@ui5/logger/internal/loggers/ProjectBuild"); + class TaskRunnerMock { constructor(params) { + t.true(params.log instanceof ProjectBuildLogger, "TaskRunner receives an instance of ProjectBuildLogger"); + params.log = "log"; // replace log instance with string for deep comparison t.deepEqual(params, { graph: "graph", project: project, @@ -333,10 +336,7 @@ test.serial("getTaskRunner", async (t) => { } } const ProjectBuildContext = await esmock("../../../../lib/build/helpers/ProjectBuildContext.js", { - "../../../../lib/build/TaskRunner.js": DummyTaskRunner, - "@ui5/logger": { - getLogger: sinon.stub().withArgs("type project").returns("log") - } + "../../../../lib/build/TaskRunner.js": TaskRunnerMock }); const projectBuildContext = new ProjectBuildContext({ @@ -363,7 +363,7 @@ test.serial("createProjectContext", async (t) => { getType: sinon.stub().returns("bar"), }; const taskRunner = {"task": "runner"}; - class DummyProjectContext { + class ProjectContextMock { constructor({buildContext, project}) { t.is(buildContext, testBuildContext, "Correct buildContext parameter"); t.is(project, project, "Correct project parameter"); @@ -376,7 +376,7 @@ test.serial("createProjectContext", async (t) => { } } const BuildContext = await esmock("../../../../lib/build/helpers/BuildContext.js", { - "../../../../lib/build/helpers/ProjectBuildContext.js": DummyProjectContext, + "../../../../lib/build/helpers/ProjectBuildContext.js": ProjectContextMock, "../../../../lib/build/TaskRunner.js": { create: sinon.stub().resolves(taskRunner) } @@ -387,8 +387,8 @@ test.serial("createProjectContext", async (t) => { project }); - t.true(projectContext instanceof DummyProjectContext, - "Project context is an instance of DummyProjectContext"); + t.true(projectContext instanceof ProjectContextMock, + "Project context is an instance of ProjectContextMock"); t.is(testBuildContext._projectBuildContexts[0], projectContext, "BuildContext stored correct ProjectBuildContext"); }); From f907feef9ed3d6be8f23e89d5a483d8248921155 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 18 Jan 2023 20:04:28 +0100 Subject: [PATCH 0790/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.1-rc.0 to 3.0.1-rc.1 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.1-rc.1/CHANGELOG.md --- packages/project/package-lock.json | 429 ++++++++--------------------- packages/project/package.json | 2 +- 2 files changed, 117 insertions(+), 314 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8ad14c3582d..40db3444c1e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-rc.1", "@ui5/fs": "^3.0.0-rc.1", - "@ui5/logger": "^3.0.1-rc.0", + "@ui5/logger": "^3.0.1-rc.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.2.0", @@ -1046,11 +1046,13 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.1-rc.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.0.tgz", - "integrity": "sha512-UMhVvmHRfenLJxMPgPPEhDfhGtcmbJ6/KiFxMqsZXFZYLwS0GewkFOCS8bD3tryTznIJnd4QG/pWdJzAWQco3g==", + "version": "3.0.1-rc.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.1.tgz", + "integrity": "sha512-GV4rCWmSIuOlzShzYdykgnPEjZwJYI+3/TpZ0zD1aq7Uwia1zlLrydJgf8nV7bv0KVJQX8x87AtR+E9JqRUgag==", "dependencies": { - "npmlog": "^7.0.1" + "chalk": "^5.2.0", + "cli-progress": "^3.11.2", + "figures": "^5.0.0" }, "engines": { "node": "^16.18.0 || >=18.0.0", @@ -1131,17 +1133,6 @@ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, "node_modules/acorn": { "version": "8.8.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", @@ -1293,18 +1284,6 @@ "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", "dev": true }, - "node_modules/are-we-there-yet": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.0.tgz", - "integrity": "sha512-nSXlV+u3vtVjRgihdTzbfWYzxPWGo424zPgQbHD0ZqIla3jqYAewDcvee0Ua2hjS5IfTAmjGlx1Jf0PKwjZDEw==", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^4.1.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -1457,25 +1436,6 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -1548,29 +1508,6 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -2104,6 +2041,62 @@ "node": ">=0.10.0" } }, + "node_modules/cli-progress": { + "version": "3.11.2", + "resolved": "https://registry.npmjs.org/cli-progress/-/cli-progress-3.11.2.tgz", + "integrity": "sha512-lCPoS6ncgX4+rJu5bS3F/iCz17kZ9MPZ6dpuTtI0KXKABkhyXIdYB3Inby1OpaGti3YlI3EeEkM9AuWpelJrVA==", + "dependencies": { + "string-width": "^4.2.3" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cli-progress/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-progress/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/cli-progress/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-progress/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-progress/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/cli-truncate": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", @@ -3542,22 +3535,6 @@ "node": ">=0.10.0" } }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "engines": { - "node": ">=0.8.x" - } - }, "node_modules/events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", @@ -3618,7 +3595,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", - "dev": true, "dependencies": { "escape-string-regexp": "^5.0.0", "is-unicode-supported": "^1.2.0" @@ -3799,69 +3775,6 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "node_modules/gauge": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.0.tgz", - "integrity": "sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw==", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/gauge/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/gauge/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -4134,6 +4047,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, "funding": [ { "type": "github", @@ -4450,7 +4364,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", - "dev": true, "engines": { "node": ">=12" }, @@ -6265,20 +6178,6 @@ "encoding": "^0.1.13" } }, - "node_modules/npmlog": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz", - "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==", - "dependencies": { - "are-we-there-yet": "^4.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^5.0.0", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -7209,14 +7108,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "engines": { - "node": ">= 0.6.0" - } - }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -7529,20 +7420,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/readable-stream": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.3.0.tgz", - "integrity": "sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ==", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, "node_modules/readable-web-to-node-stream": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", @@ -9989,11 +9866,13 @@ } }, "@ui5/logger": { - "version": "3.0.1-rc.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.0.tgz", - "integrity": "sha512-UMhVvmHRfenLJxMPgPPEhDfhGtcmbJ6/KiFxMqsZXFZYLwS0GewkFOCS8bD3tryTznIJnd4QG/pWdJzAWQco3g==", + "version": "3.0.1-rc.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.1.tgz", + "integrity": "sha512-GV4rCWmSIuOlzShzYdykgnPEjZwJYI+3/TpZ0zD1aq7Uwia1zlLrydJgf8nV7bv0KVJQX8x87AtR+E9JqRUgag==", "requires": { - "npmlog": "^7.0.1" + "chalk": "^5.2.0", + "cli-progress": "^3.11.2", + "figures": "^5.0.0" } }, "@vue/compiler-core": { @@ -10070,14 +9949,6 @@ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, - "abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "requires": { - "event-target-shim": "^5.0.0" - } - }, "acorn": { "version": "8.8.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", @@ -10182,15 +10053,6 @@ "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", "dev": true }, - "are-we-there-yet": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.0.tgz", - "integrity": "sha512-nSXlV+u3vtVjRgihdTzbfWYzxPWGo424zPgQbHD0ZqIla3jqYAewDcvee0Ua2hjS5IfTAmjGlx1Jf0PKwjZDEw==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^4.1.0" - } - }, "argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -10302,11 +10164,6 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, "binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -10357,15 +10214,6 @@ "update-browserslist-db": "^1.0.9" } }, - "buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, "buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -10757,6 +10605,49 @@ "integrity": "sha512-3yONmlN9CSAkzNwnRCiJQ7Q2xK5mWuEfL3PuTZcAUzhObbXsfsnMptJzXwz93nc5zn9V9TwCVMmV7w4xsm43dw==", "dev": true }, + "cli-progress": { + "version": "3.11.2", + "resolved": "https://registry.npmjs.org/cli-progress/-/cli-progress-3.11.2.tgz", + "integrity": "sha512-lCPoS6ncgX4+rJu5bS3F/iCz17kZ9MPZ6dpuTtI0KXKABkhyXIdYB3Inby1OpaGti3YlI3EeEkM9AuWpelJrVA==", + "requires": { + "string-width": "^4.2.3" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } + } + }, "cli-truncate": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", @@ -11829,16 +11720,6 @@ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true }, - "event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" - }, "events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", @@ -11896,7 +11777,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", - "dev": true, "requires": { "escape-string-regexp": "^5.0.0", "is-unicode-supported": "^1.2.0" @@ -12019,56 +11899,6 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "gauge": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.0.tgz", - "integrity": "sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw==", - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, "gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -12268,7 +12098,8 @@ "ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true }, "ignore": { "version": "5.2.4", @@ -12482,8 +12313,7 @@ "is-unicode-supported": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", - "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", - "dev": true + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==" }, "is-windows": { "version": "1.0.2", @@ -13869,17 +13699,6 @@ } } }, - "npmlog": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz", - "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==", - "requires": { - "are-we-there-yet": "^4.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^5.0.0", - "set-blocking": "^2.0.0" - } - }, "nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -14537,11 +14356,6 @@ "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==" }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" - }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -14749,17 +14563,6 @@ } } }, - "readable-stream": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.3.0.tgz", - "integrity": "sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ==", - "requires": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10" - } - }, "readable-web-to-node-stream": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index ae20baef60a..cf2114e0578 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,7 +118,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-rc.1", "@ui5/fs": "^3.0.0-rc.1", - "@ui5/logger": "^3.0.1-rc.0", + "@ui5/logger": "^3.0.1-rc.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.2.0", From 5dde296f67c758139f67dec61e14c982237b50ac Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 18 Jan 2023 17:00:28 +0100 Subject: [PATCH 0791/1272] [ui5-project][INTERNAL] specification/Project: Make getSourcePath method public The method will also be provided through TaskUtil and MiddlewareUtil. This should help use cases like in the ui5-middleware-fe-mockserver: https://github.com/SAP/open-ux-odata/blob/main/packages/ui5-middleware-fe-mockserver/src/index.ts#L10 --- packages/project/lib/build/helpers/TaskUtil.js | 4 +++- packages/project/lib/specifications/Project.js | 2 +- packages/project/lib/specifications/types/Application.js | 2 +- packages/project/lib/specifications/types/Library.js | 2 +- packages/project/lib/specifications/types/Module.js | 2 +- packages/project/lib/specifications/types/ThemeLibrary.js | 2 +- packages/project/test/lib/build/helpers/TaskUtil.js | 3 +++ 7 files changed, 11 insertions(+), 6 deletions(-) diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index a70637ec00d..58aff044a62 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -191,6 +191,7 @@ class TaskUtil { * @property {Function} getNamespace Get the project namespace * @property {Function} getRootReader Get the project rootReader * @property {Function} getReader Get the project reader + * @property {Function} getSourcePath Get the local File System path of the project's source directory * @property {Function} getCustomConfiguration Get the project Custom Configuration * @property {Function} isFrameworkProject Check whether the project is a UI5-Framework project */ @@ -309,7 +310,8 @@ class TaskUtil { const baseProjectInterface = {}; bindFunctions(project, baseProjectInterface, [ "getType", "getName", "getVersion", "getNamespace", - "getRootReader", "getReader", "getCustomConfiguration", "isFrameworkProject" + "getRootReader", "getReader", "getSourcePath", + "getCustomConfiguration", "isFrameworkProject" ]); return baseProjectInterface; }; diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index 38943fac3a1..a8c27e1d40c 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -78,7 +78,7 @@ class Project extends Specification { * Get the path of the project's source directory. This might not be POSIX-style on some platforms. * Projects with multiple source paths will throw an error. For example Modules. * - * @private + * @public * @returns {string} Absolute path to the source directory of the project * @throws {Error} In case a project has multiple source directories */ diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index 8caaed2f511..9b5696155ec 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -38,7 +38,7 @@ class Application extends ComponentProject { /** * Get the path of the project's source directory. This might not be POSIX-style on some platforms. * - * @private + * @public * @returns {string} Absolute path to the source directory of the project */ getSourcePath() { diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index b6b8a9a024b..142bea75467 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -49,7 +49,7 @@ class Library extends ComponentProject { /** * Get the path of the project's source directory. This might not be POSIX-style on some platforms. * - * @private + * @public * @returns {string} Absolute path to the source directory of the project */ getSourcePath() { diff --git a/packages/project/lib/specifications/types/Module.js b/packages/project/lib/specifications/types/Module.js index 09135f86993..c1739adabe1 100644 --- a/packages/project/lib/specifications/types/Module.js +++ b/packages/project/lib/specifications/types/Module.js @@ -24,7 +24,7 @@ class Module extends Project { /** * Since Modules have multiple source paths, this function always throws with an exception * - * @private + * @public * @throws {Error} Projects of type module have more than one source path */ getSourcePath() { diff --git a/packages/project/lib/specifications/types/ThemeLibrary.js b/packages/project/lib/specifications/types/ThemeLibrary.js index 5f252291ff5..da2c8be834a 100644 --- a/packages/project/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/lib/specifications/types/ThemeLibrary.js @@ -32,7 +32,7 @@ class ThemeLibrary extends Project { /** * Get the path of the project's source directory * - * @private + * @public * @returns {string} Absolute path to the source directory of the project */ getSourcePath() { diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index c9eae03ddf0..9cda7584494 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -411,6 +411,7 @@ test("getInterface: specVersion 3.0", (t) => { getNamespace: () => "namespace", getRootReader: () => "rootReader", getReader: () => "reader", + getSourcePath: () => "sourcePath", getCustomConfiguration: () => "customConfiguration", isFrameworkProject: () => "isFrameworkProject", hasBuildManifest: () => "hasBuildManifest", // Should not be exposed @@ -456,6 +457,7 @@ test("getInterface: specVersion 3.0", (t) => { "getNamespace", "getRootReader", "getReader", + "getSourcePath", "getCustomConfiguration", "isFrameworkProject", ], "Correct methods are provided"); @@ -465,6 +467,7 @@ test("getInterface: specVersion 3.0", (t) => { t.is(interfacedProject.getVersion(), "version", "getVersion function is bound correctly"); t.is(interfacedProject.getNamespace(), "namespace", "getNamespace function is bound correctly"); t.is(interfacedProject.getRootReader(), "rootReader", "getRootReader function is bound correctly"); + t.is(interfacedProject.getSourcePath(), "sourcePath", "getSourcePath function is bound correctly"); t.is(interfacedProject.getReader(), "reader", "getReader function is bound correctly"); t.is(interfacedProject.getCustomConfiguration(), "customConfiguration", "getCustomConfiguration function is bound correctly"); From c0f46e45171b03b27e1b8c2207efbda24e2eabdd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 19 Jan 2023 09:55:03 +0000 Subject: [PATCH 0792/1272] [ui5-project]Release 3.0.0-rc.3 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 67c4cf11aba..cd5baabd494 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.3...HEAD). + + +## [v3.0.0-rc.3] - 2023-01-18 ## [v3.0.0-rc.2] - 2023-01-11 @@ -385,6 +388,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-rc.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.2...v3.0.0-rc.3 [v3.0.0-rc.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.1...v3.0.0-rc.2 [v3.0.0-rc.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.0...v3.0.0-rc.1 [v3.0.0-rc.0]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.5...v3.0.0-rc.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 40db3444c1e..d441d26d397 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.2", + "version": "3.0.0-rc.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc.2", + "version": "3.0.0-rc.3", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.1", diff --git a/packages/project/package.json b/packages/project/package.json index cf2114e0578..cda6f321992 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.2", + "version": "3.0.0-rc.3", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 21f278d90bba4492cf7ae7b611d28ce9972467fc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Jan 2023 11:18:45 +0100 Subject: [PATCH 0793/1272] [ui5-project][DEPENDENCY] Bump rimraf from 3.0.2 to 4.1.1 (#550) * [DEPENDENCY] Bump rimraf from 3.0.2 to 4.1.1 Bumps [rimraf](https://github.com/isaacs/rimraf) from 3.0.2 to 4.1.1. - [Release notes](https://github.com/isaacs/rimraf/releases) - [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/rimraf/compare/v3.0.2...v4.1.1) --- updated-dependencies: - dependency-name: rimraf dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] * [INTERNAL] Adjust rimraf usage to native promise Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Florian Vogt --- packages/project/lib/build/ProjectBuilder.js | 4 +- packages/project/package-lock.json | 817 +++++++++++++++++-- packages/project/package.json | 2 +- 3 files changed, 736 insertions(+), 87 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index ac71cbafb61..dc9e17db152 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -1,6 +1,4 @@ -import {promisify} from "node:util"; import rimraf from "rimraf"; -const rimrafp = promisify(rimraf); import * as resourceFactory from "@ui5/fs/resourceFactory"; import BuildLogger from "@ui5/logger/internal/loggers/Build"; const log = new BuildLogger("ProjectBuilder"); @@ -228,7 +226,7 @@ class ProjectBuilder { if (cleanDest) { log.info(`Cleaning target directory...`); - await rimrafp(destPath); + await rimraf(destPath); } const startTime = process.hrtime(); try { diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d441d26d397..110d3864fb2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -25,7 +25,7 @@ "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.1", - "rimraf": "^3.0.2", + "rimraf": "^4.1.1", "semver": "^7.3.8", "xml2js": "^0.4.23" }, @@ -845,6 +845,59 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, + "node_modules/@npmcli/move-file/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@npmcli/move-file/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@npmcli/move-file/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@npmcli/move-file/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@npmcli/node-gyp": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", @@ -1025,6 +1078,59 @@ "npm": ">= 8" } }, + "node_modules/@ui5/builder/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ui5/builder/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ui5/builder/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ui5/builder/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@ui5/fs": { "version": "3.0.0-rc.1", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.1.tgz", @@ -2553,6 +2659,63 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/del/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/del/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/del/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/del/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/del/node_modules/slash": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", @@ -3701,6 +3864,63 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/flat-cache/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/flat-cache/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/flat-cache/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/flatted": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", @@ -4479,6 +4699,16 @@ "node": ">=8" } }, + "node_modules/istanbul-lib-processinfo/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/istanbul-lib-processinfo/node_modules/clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", @@ -4488,6 +4718,26 @@ "node": ">=6" } }, + "node_modules/istanbul-lib-processinfo/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/istanbul-lib-processinfo/node_modules/indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", @@ -4497,6 +4747,18 @@ "node": ">=8" } }, + "node_modules/istanbul-lib-processinfo/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/istanbul-lib-processinfo/node_modules/p-map": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", @@ -4509,6 +4771,21 @@ "node": ">=8" } }, + "node_modules/istanbul-lib-processinfo/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/istanbul-lib-report": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", @@ -4993,6 +5270,15 @@ "node": ">=8" } }, + "node_modules/make-fetch-happen/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/make-fetch-happen/node_modules/cacache": { "version": "16.1.3", "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", @@ -5056,6 +5342,17 @@ "node": ">=12" } }, + "node_modules/make-fetch-happen/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/make-fetch-happen/node_modules/minipass": { "version": "3.3.6", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", @@ -5081,6 +5378,39 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/make-fetch-happen/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/make-fetch-happen/node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/make-fetch-happen/node_modules/ssri": { "version": "9.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", @@ -5935,6 +6265,20 @@ "node": ">= 6" } }, + "node_modules/node-gyp/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/node-gyp/node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -6398,6 +6742,21 @@ "node": ">=8" } }, + "node_modules/nyc/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/nyc/node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -7623,58 +7982,19 @@ } }, "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.1.tgz", + "integrity": "sha512-Z4Y81w8atcvaJuJuBB88VpADRH66okZAuEm+Jtaufa+s7rZmIz+Hik2G53kGaNytE7lsfXyWktTmfVz0H9xuDg==", "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "rimraf": "dist/cjs/src/bin.js" }, "engines": { - "node": "*" + "node": ">=14" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -7981,6 +8301,63 @@ "node": ">=8" } }, + "node_modules/spawn-wrap/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/spawn-wrap/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/spawn-wrap/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/spawn-wrap/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", @@ -9691,6 +10068,46 @@ "requires": { "mkdirp": "^1.0.4", "rimraf": "^3.0.2" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + } } }, "@npmcli/node-gyp": { @@ -9847,6 +10264,46 @@ "semver": "^7.3.8", "terser": "^5.16.1", "xml2js": "^0.4.23" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + } } }, "@ui5/fs": { @@ -10993,6 +11450,48 @@ "slash": "^4.0.0" }, "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, "slash": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", @@ -11850,6 +12349,50 @@ "requires": { "flatted": "^3.1.0", "rimraf": "^3.0.2" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, "flatted": { @@ -12401,18 +12944,51 @@ "indent-string": "^4.0.0" } }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", "dev": true }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, "indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, "p-map": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", @@ -12421,6 +12997,15 @@ "requires": { "aggregate-error": "^3.0.0" } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } } } }, @@ -12807,6 +13392,15 @@ "indent-string": "^4.0.0" } }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "cacache": { "version": "16.1.3", "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", @@ -12855,6 +13449,14 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, "minipass": { "version": "3.3.6", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", @@ -12871,6 +13473,29 @@ "aggregate-error": "^3.0.0" } }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + }, + "dependencies": { + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + } + } + }, "ssri": { "version": "9.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", @@ -13512,6 +14137,14 @@ "util-deprecate": "^1.0.1" } }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + }, "string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -13871,6 +14504,15 @@ "aggregate-error": "^3.0.0" } }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -14717,44 +15359,9 @@ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" }, "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - } - } + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.1.tgz", + "integrity": "sha512-Z4Y81w8atcvaJuJuBB88VpADRH66okZAuEm+Jtaufa+s7rZmIz+Hik2G53kGaNytE7lsfXyWktTmfVz0H9xuDg==" }, "run-parallel": { "version": "1.2.0", @@ -14979,6 +15586,50 @@ "rimraf": "^3.0.0", "signal-exit": "^3.0.2", "which": "^2.0.1" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, "spdx-correct": { diff --git a/packages/project/package.json b/packages/project/package.json index cda6f321992..6dbcef0b2b9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -132,7 +132,7 @@ "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.1", - "rimraf": "^3.0.2", + "rimraf": "^4.1.1", "semver": "^7.3.8", "xml2js": "^0.4.23" }, From 5817640cf51ecd47bbe455091b5dbcbd5bc11b00 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 19 Jan 2023 10:40:02 +0000 Subject: [PATCH 0794/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-rc.1 to 3.0.0-rc.2 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-rc.2/CHANGELOG.md --- packages/project/package-lock.json | 42 +++++++++++++++++++++++------- packages/project/package.json | 2 +- 2 files changed, 34 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 110d3864fb2..c0b91539b67 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.1", - "@ui5/fs": "^3.0.0-rc.1", + "@ui5/fs": "^3.0.0-rc.2", "@ui5/logger": "^3.0.1-rc.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1132,9 +1132,9 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-rc.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.1.tgz", - "integrity": "sha512-vRJIh+XoGJVkNvmZjL6dVo0M8hnFpJwybYRlNTN6GyfGHH7ovkRW+/zNnLflfhj3/pPFlEru1Wq5Yye/0uM8iw==", + "version": "3.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.2.tgz", + "integrity": "sha512-Uu7X8x3GOAVlbebBvPSXT63RLchL/t3GYpEqlZWbBhHT+iYdVfruCkWQUHjIomGdtQ6kmpl+7NrOzqliqRYAOQ==", "dependencies": { "@ui5/logger": "^3.0.1-rc.0", "clone": "^2.1.2", @@ -1142,7 +1142,7 @@ "globby": "^13.1.3", "graceful-fs": "^4.2.10", "micromatch": "^4.0.5", - "minimatch": "^5.1.2", + "minimatch": "^6.1.5", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, @@ -1151,6 +1151,20 @@ "npm": ">= 8" } }, + "node_modules/@ui5/fs/node_modules/minimatch": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.5.tgz", + "integrity": "sha512-2/WxnHMkH7qFS+pG8ibLN5GZdx5Y0aLlgFSghaKRUpkeEmC85wZRb/xDvj9jv601KdNOS2G/nNqj2h6k42yxBQ==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@ui5/logger": { "version": "3.0.1-rc.1", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.1.tgz", @@ -10307,9 +10321,9 @@ } }, "@ui5/fs": { - "version": "3.0.0-rc.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.1.tgz", - "integrity": "sha512-vRJIh+XoGJVkNvmZjL6dVo0M8hnFpJwybYRlNTN6GyfGHH7ovkRW+/zNnLflfhj3/pPFlEru1Wq5Yye/0uM8iw==", + "version": "3.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.2.tgz", + "integrity": "sha512-Uu7X8x3GOAVlbebBvPSXT63RLchL/t3GYpEqlZWbBhHT+iYdVfruCkWQUHjIomGdtQ6kmpl+7NrOzqliqRYAOQ==", "requires": { "@ui5/logger": "^3.0.1-rc.0", "clone": "^2.1.2", @@ -10317,9 +10331,19 @@ "globby": "^13.1.3", "graceful-fs": "^4.2.10", "micromatch": "^4.0.5", - "minimatch": "^5.1.2", + "minimatch": "^6.1.5", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" + }, + "dependencies": { + "minimatch": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.5.tgz", + "integrity": "sha512-2/WxnHMkH7qFS+pG8ibLN5GZdx5Y0aLlgFSghaKRUpkeEmC85wZRb/xDvj9jv601KdNOS2G/nNqj2h6k42yxBQ==", + "requires": { + "brace-expansion": "^2.0.1" + } + } } }, "@ui5/logger": { diff --git a/packages/project/package.json b/packages/project/package.json index 6dbcef0b2b9..b0f2910dab2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-rc.1", - "@ui5/fs": "^3.0.0-rc.1", + "@ui5/fs": "^3.0.0-rc.2", "@ui5/logger": "^3.0.1-rc.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 73747412a310ea04baa79630c40179fb1f51c975 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 22 Jan 2023 03:20:35 +0000 Subject: [PATCH 0795/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 1390 +++++++++++----------------- packages/project/package.json | 4 +- 2 files changed, 537 insertions(+), 857 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c0b91539b67..b4a4fca2754 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -31,7 +31,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.1.0", + "ava": "^5.1.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", @@ -39,7 +39,7 @@ "eslint": "^8.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", - "eslint-plugin-jsdoc": "^39.6.4", + "eslint-plugin-jsdoc": "^39.6.7", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -310,13 +310,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.7.tgz", - "integrity": "sha512-PBPjs5BppzsGaxHQCDKnZ6Gd9s6xl8bBCluz3vEInLGRJmnZan4F6BYCeqtyXqkk4W5IlPmjK4JlOuZkpJ3xZA==", + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", + "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", "dev": true, "dependencies": { "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", + "@babel/traverse": "^7.20.13", "@babel/types": "^7.20.7" }, "engines": { @@ -388,9 +388,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.7.tgz", - "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==", + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.13.tgz", + "integrity": "sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw==", "bin": { "parser": "bin/babel-parser.js" }, @@ -413,9 +413,9 @@ } }, "node_modules/@babel/traverse": { - "version": "7.20.12", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.12.tgz", - "integrity": "sha512-MsIbFN0u+raeja38qboyF8TIT7K0BFzz/Yd/77ta4MsUsmP2RAnidIlwq7d5HFQrH/OZJecGV6B71C4zAgpoSQ==", + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", + "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.18.6", @@ -424,7 +424,7 @@ "@babel/helper-function-name": "^7.19.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.7", + "@babel/parser": "^7.20.13", "@babel/types": "^7.20.7", "debug": "^4.1.0", "globals": "^11.1.0" @@ -722,9 +722,9 @@ } }, "node_modules/@jsdoc/salty": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.2.tgz", - "integrity": "sha512-A1FrVnc7L9qI2gUGsfN0trTiJNK72Y0CL/VAyrmYEmeKI3pnHDawP64CEev31XLyAAOx2xmDo3tbadPxC0CSbw==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.3.tgz", + "integrity": "sha512-bbtCxCkxcnWhi50I+4Lj6mdz9w3pOXOgEQrID8TCZ/DF51fW7M9GCQW2y45SpBDdHd1Eirm1X/Cf6CkAAe8HPg==", "dev": true, "dependencies": { "lodash": "^4.17.21" @@ -1151,20 +1151,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/fs/node_modules/minimatch": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.5.tgz", - "integrity": "sha512-2/WxnHMkH7qFS+pG8ibLN5GZdx5Y0aLlgFSghaKRUpkeEmC85wZRb/xDvj9jv601KdNOS2G/nNqj2h6k42yxBQ==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@ui5/logger": { "version": "3.0.1-rc.1", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.1.tgz", @@ -1404,6 +1390,18 @@ "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", "dev": true }, + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -1469,9 +1467,9 @@ } }, "node_modules/ava": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.0.tgz", - "integrity": "sha512-e5VFrSQ0WBPyZJWRXVrO7RFOizFeNM0t2PORwrPvWtApgkORI6cvGnY3GX1G+lzpd0HjqNx5Jus22AhxVnUMNA==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.1.tgz", + "integrity": "sha512-od1CWgWVIKZSdEc1dhQWhbsd6KBs0EYjek7eqZNGPvy+NyC9Q1bXixcadlgOXwDG9aM0zLMQZwRXfe9gMb1LQQ==", "dev": true, "dependencies": { "acorn": "^8.8.1", @@ -1481,10 +1479,10 @@ "arrify": "^3.0.0", "callsites": "^4.0.0", "cbor": "^8.1.0", - "chalk": "^5.1.2", + "chalk": "^5.2.0", "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^3.6.1", + "ci-info": "^3.7.1", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-truncate": "^3.1.0", @@ -1496,7 +1494,7 @@ "del": "^7.0.0", "emittery": "^1.0.1", "figures": "^5.0.0", - "globby": "^13.1.2", + "globby": "^13.1.3", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", "is-error": "^2.2.2", @@ -1805,9 +1803,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001444", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001444.tgz", - "integrity": "sha512-ecER9xgJQVMqcrxThKptsW0pPxSae8R2RB87LNa+ivW9ppNWRHEplXcDzkCOP4LYWGj8hunXLqaiC41iBATNyg==", + "version": "1.0.30001446", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001446.tgz", + "integrity": "sha512-fEoga4PrImGcwUUGEol/PoFCSBnSkA9drgdkxXkJLsUBOnJ8rs3zDv6ApqYXGQFOyMPsjh79naWhF4DAxbF8rw==", "dev": true, "funding": [ { @@ -2172,51 +2170,6 @@ "node": ">=4" } }, - "node_modules/cli-progress/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-progress/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/cli-progress/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-progress/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-progress/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/cli-truncate": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", @@ -2233,6 +2186,29 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/cli-truncate/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/cli-truncate/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/cliui": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", @@ -2256,35 +2232,6 @@ "node": ">=8" } }, - "node_modules/cliui/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/cliui/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/cliui/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -2847,21 +2794,6 @@ "wrap-ansi": "^7.0.0" } }, - "node_modules/depcheck/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/depcheck/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/depcheck/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -2887,20 +2819,6 @@ "node": "*" } }, - "node_modules/depcheck/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/depcheck/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -3108,10 +3026,9 @@ } }, "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "node_modules/encoding": { "version": "0.1.13", @@ -3303,9 +3220,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "39.6.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.4.tgz", - "integrity": "sha512-fskvdLCfwmPjHb6e+xNGDtGgbF8X7cDwMtVLAP2WwSf9Htrx68OAx31BESBM1FAwsN2HTQyYQq7m4aW4Q4Nlag==", + "version": "39.6.7", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.7.tgz", + "integrity": "sha512-0mrzXrHvL2ZLe3QK9X0OEDy7Fs2cFQ/f1d1G5KHEGD+13D1qg56Iovq0uOkYf5bJlHiKPytWVgOOO9y7kLW3VA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.36.1", @@ -3796,9 +3713,9 @@ } }, "node_modules/file-type": { - "version": "18.1.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.1.0.tgz", - "integrity": "sha512-FqjmVvHjX5C/EnibCENAsCMIg7HgUYO0vDypt5V8RmtKDk7eUa+/6mEWSrY4PStFhUt0K3CoE8stjLJCcMsJFQ==", + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.2.0.tgz", + "integrity": "sha512-M3RQMWY3F2ykyWZ+IHwNCjpnUmukYhtdkGGC1ZVEUb0ve5REGF7NNJ4Q9ehCUabtQKtSVFOMbFTXgJlFb0DQIg==", "dev": true, "dependencies": { "readable-web-to-node-stream": "^3.0.2", @@ -4009,6 +3926,43 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/gauge/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/gauge/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -4077,6 +4031,17 @@ "node": ">= 6" } }, + "node_modules/glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", @@ -4325,6 +4290,17 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/immutable": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.2.tgz", @@ -4427,9 +4403,9 @@ "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" }, "node_modules/irregular-plurals": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.3.0.tgz", - "integrity": "sha512-MVBLKUTangM3EfRPFROhmWQQKRDsrgI83J8GS3jXy+OwYqiR2/aoWndYQ5416jLE3uaGgLH7ncme3X9y09gZ3g==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.4.0.tgz", + "integrity": "sha512-YXxECO/W6N9aMBVKMKKZ8TXESgq7EFrp3emCGGUcrYY1cgJIeZjoB75MTu8qi+NAKntS9NwPU8VdcQ3r6E6aWQ==", "dev": true, "engines": { "node": ">=8" @@ -4862,9 +4838,9 @@ } }, "node_modules/js-sdsl": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", - "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", "dev": true, "funding": { "type": "opencollective", @@ -5783,14 +5759,17 @@ } }, "node_modules/minimatch": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.4.tgz", - "integrity": "sha512-U0iNYXt9wALljzfnGkhFSy5sAC6/SCR3JrHrlsdJz4kF8MvhTRQNiC59iUi1iqsitV7abrNAJWElVL9pdnoUgw==", + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.5.tgz", + "integrity": "sha512-2/WxnHMkH7qFS+pG8ibLN5GZdx5Y0aLlgFSghaKRUpkeEmC85wZRb/xDvj9jv601KdNOS2G/nNqj2h6k42yxBQ==", "dependencies": { "brace-expansion": "^2.0.1" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/minimist": { @@ -6162,26 +6141,6 @@ "node": "^12.13 || ^14.13 || >=16" } }, - "node_modules/node-gyp/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/node-gyp/node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/node-gyp/node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -6191,29 +6150,6 @@ "concat-map": "0.0.1" } }, - "node_modules/node-gyp/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/node-gyp/node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/node-gyp/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -6233,14 +6169,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/node-gyp/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, "node_modules/node-gyp/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -6252,33 +6180,6 @@ "node": "*" } }, - "node_modules/node-gyp/node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/node-gyp/node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/node-gyp/node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -6293,30 +6194,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/node-gyp/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/node-gyp/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -6536,6 +6413,20 @@ "encoding": "^0.1.13" } }, + "node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -6673,12 +6564,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/nyc/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "node_modules/nyc/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -6708,15 +6593,6 @@ "node": ">=8" } }, - "node_modules/nyc/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/nyc/node_modules/istanbul-lib-instrument": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", @@ -6780,20 +6656,6 @@ "semver": "bin/semver.js" } }, - "node_modules/nyc/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/nyc/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -7528,9 +7390,9 @@ "dev": true }, "node_modules/punycode": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.2.0.tgz", - "integrity": "sha512-LN6QV1IJ9ZhxWTNdktaPClrNfp8xdSAYS0Zk2ddX7XsXZAxckMHPCBcHRo0cTcEIgYPRiGEkmji3Idkh2yFtYw==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", "engines": { "node": ">=6" } @@ -7793,6 +7655,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/readable-web-to-node-stream": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", @@ -7809,20 +7684,6 @@ "url": "https://github.com/sponsors/Borewit" } }, - "node_modules/readable-web-to-node-stream/node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -7912,6 +7773,19 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/replacestream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/replacestream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -8032,9 +7906,23 @@ } }, "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/safer-buffer": { "version": "2.1.2", @@ -8439,28 +8327,51 @@ } }, "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dependencies": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" } }, "node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=12" + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=8" } }, "node_modules/strip-ansi": { @@ -8595,25 +8506,24 @@ "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", "integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA==" }, - "node_modules/tap-xunit": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", - "integrity": "sha512-qcZStDtjjYjMKAo7QNiCtOW256g3tuSyCSe5kNJniG1Q2oeOExJq4vm8CwboHZURpkXAHvtqMl4TVL7mcbMVVA==", + "node_modules/tap-parser": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", + "integrity": "sha512-uXKcosa0qoSjeh73dhmX+OpJvpigDxUciOhBcbGUKtmwzEFJjUT1Ql5dpg4M9I1UjXT9b+6n1W05FB8QmKossA==", "dev": true, "dependencies": { - "duplexer": "~0.1.1", - "minimist": "~1.2.0", - "tap-parser": "~1.2.2", - "through2": "~2.0.0", - "xmlbuilder": "~4.2.0", - "xtend": "~4.0.0" + "events-to-array": "^1.0.1", + "inherits": "~2.0.1", + "js-yaml": "^3.2.7" }, "bin": { - "tap-xunit": "bin/tap-xunit", - "txunit": "bin/tap-xunit" + "tap-parser": "bin/cmd.js" + }, + "optionalDependencies": { + "readable-stream": "^2" } }, - "node_modules/tap-xunit/node_modules/argparse": { + "node_modules/tap-parser/node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", @@ -8622,14 +8532,14 @@ "sprintf-js": "~1.0.2" } }, - "node_modules/tap-xunit/node_modules/isarray": { + "node_modules/tap-parser/node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true, "optional": true }, - "node_modules/tap-xunit/node_modules/js-yaml": { + "node_modules/tap-parser/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", @@ -8642,7 +8552,7 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/tap-xunit/node_modules/readable-stream": { + "node_modules/tap-parser/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", @@ -8658,21 +8568,39 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/tap-xunit/node_modules/tap-parser": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", - "integrity": "sha512-uXKcosa0qoSjeh73dhmX+OpJvpigDxUciOhBcbGUKtmwzEFJjUT1Ql5dpg4M9I1UjXT9b+6n1W05FB8QmKossA==", + "node_modules/tap-parser/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true, + "optional": true + }, + "node_modules/tap-parser/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "optional": true, "dependencies": { - "events-to-array": "^1.0.1", - "inherits": "~2.0.1", - "js-yaml": "^3.2.7" + "safe-buffer": "~5.1.0" + } + }, + "node_modules/tap-xunit": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", + "integrity": "sha512-qcZStDtjjYjMKAo7QNiCtOW256g3tuSyCSe5kNJniG1Q2oeOExJq4vm8CwboHZURpkXAHvtqMl4TVL7mcbMVVA==", + "dev": true, + "dependencies": { + "duplexer": "~0.1.1", + "minimist": "~1.2.0", + "tap-parser": "~1.2.2", + "through2": "~2.0.0", + "xmlbuilder": "~4.2.0", + "xtend": "~4.0.0" }, "bin": { - "tap-parser": "bin/cmd.js" - }, - "optionalDependencies": { - "readable-stream": "^2" + "tap-xunit": "bin/tap-xunit", + "txunit": "bin/tap-xunit" } }, "node_modules/tar": { @@ -8888,6 +8816,21 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/through2/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/through2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, "node_modules/time-zone": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", @@ -9137,51 +9080,6 @@ "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "node_modules/wide-align/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/wide-align/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/wide-align/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/wide-align/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wide-align/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -9250,35 +9148,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/wrap-ansi/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/wrap-ansi/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -9406,56 +9275,6 @@ "node": ">=10" } }, - "node_modules/yargs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/yargs/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/yargs/node_modules/yargs-parser": { "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", @@ -9671,13 +9490,13 @@ "dev": true }, "@babel/helpers": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.7.tgz", - "integrity": "sha512-PBPjs5BppzsGaxHQCDKnZ6Gd9s6xl8bBCluz3vEInLGRJmnZan4F6BYCeqtyXqkk4W5IlPmjK4JlOuZkpJ3xZA==", + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", + "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", "dev": true, "requires": { "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", + "@babel/traverse": "^7.20.13", "@babel/types": "^7.20.7" } }, @@ -9730,9 +9549,9 @@ } }, "@babel/parser": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.7.tgz", - "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==" + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.13.tgz", + "integrity": "sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw==" }, "@babel/template": { "version": "7.20.7", @@ -9746,9 +9565,9 @@ } }, "@babel/traverse": { - "version": "7.20.12", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.12.tgz", - "integrity": "sha512-MsIbFN0u+raeja38qboyF8TIT7K0BFzz/Yd/77ta4MsUsmP2RAnidIlwq7d5HFQrH/OZJecGV6B71C4zAgpoSQ==", + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", + "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", "dev": true, "requires": { "@babel/code-frame": "^7.18.6", @@ -9757,7 +9576,7 @@ "@babel/helper-function-name": "^7.19.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.7", + "@babel/parser": "^7.20.13", "@babel/types": "^7.20.7", "debug": "^4.1.0", "globals": "^11.1.0" @@ -9996,9 +9815,9 @@ } }, "@jsdoc/salty": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.2.tgz", - "integrity": "sha512-A1FrVnc7L9qI2gUGsfN0trTiJNK72Y0CL/VAyrmYEmeKI3pnHDawP64CEev31XLyAAOx2xmDo3tbadPxC0CSbw==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.3.tgz", + "integrity": "sha512-bbtCxCkxcnWhi50I+4Lj6mdz9w3pOXOgEQrID8TCZ/DF51fW7M9GCQW2y45SpBDdHd1Eirm1X/Cf6CkAAe8HPg==", "dev": true, "requires": { "lodash": "^4.17.21" @@ -10334,16 +10153,6 @@ "minimatch": "^6.1.5", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" - }, - "dependencies": { - "minimatch": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.5.tgz", - "integrity": "sha512-2/WxnHMkH7qFS+pG8ibLN5GZdx5Y0aLlgFSghaKRUpkeEmC85wZRb/xDvj9jv601KdNOS2G/nNqj2h6k42yxBQ==", - "requires": { - "brace-expansion": "^2.0.1" - } - } } }, "@ui5/logger": { @@ -10534,6 +10343,15 @@ "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", "dev": true }, + "are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, "argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -10575,9 +10393,9 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "ava": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.0.tgz", - "integrity": "sha512-e5VFrSQ0WBPyZJWRXVrO7RFOizFeNM0t2PORwrPvWtApgkORI6cvGnY3GX1G+lzpd0HjqNx5Jus22AhxVnUMNA==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.1.tgz", + "integrity": "sha512-od1CWgWVIKZSdEc1dhQWhbsd6KBs0EYjek7eqZNGPvy+NyC9Q1bXixcadlgOXwDG9aM0zLMQZwRXfe9gMb1LQQ==", "dev": true, "requires": { "acorn": "^8.8.1", @@ -10587,10 +10405,10 @@ "arrify": "^3.0.0", "callsites": "^4.0.0", "cbor": "^8.1.0", - "chalk": "^5.1.2", + "chalk": "^5.2.0", "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^3.6.1", + "ci-info": "^3.7.1", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-truncate": "^3.1.0", @@ -10602,7 +10420,7 @@ "del": "^7.0.0", "emittery": "^1.0.1", "figures": "^5.0.0", - "globby": "^13.1.2", + "globby": "^13.1.3", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", "is-error": "^2.2.2", @@ -10827,9 +10645,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001444", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001444.tgz", - "integrity": "sha512-ecER9xgJQVMqcrxThKptsW0pPxSae8R2RB87LNa+ivW9ppNWRHEplXcDzkCOP4LYWGj8hunXLqaiC41iBATNyg==", + "version": "1.0.30001446", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001446.tgz", + "integrity": "sha512-fEoga4PrImGcwUUGEol/PoFCSBnSkA9drgdkxXkJLsUBOnJ8rs3zDv6ApqYXGQFOyMPsjh79naWhF4DAxbF8rw==", "dev": true }, "catharsis": { @@ -11092,41 +10910,6 @@ "integrity": "sha512-lCPoS6ncgX4+rJu5bS3F/iCz17kZ9MPZ6dpuTtI0KXKABkhyXIdYB3Inby1OpaGti3YlI3EeEkM9AuWpelJrVA==", "requires": { "string-width": "^4.2.3" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "cli-truncate": { @@ -11137,6 +10920,25 @@ "requires": { "slice-ansi": "^5.0.0", "string-width": "^5.0.0" + }, + "dependencies": { + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } + } } }, "cliui": { @@ -11156,29 +10958,6 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -11608,18 +11387,6 @@ "wrap-ansi": "^7.0.0" } }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -11639,17 +11406,6 @@ "brace-expansion": "^1.1.7" } }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -11813,10 +11569,9 @@ "dev": true }, "emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "encoding": { "version": "0.1.13", @@ -12104,9 +11859,9 @@ } }, "eslint-plugin-jsdoc": { - "version": "39.6.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.4.tgz", - "integrity": "sha512-fskvdLCfwmPjHb6e+xNGDtGgbF8X7cDwMtVLAP2WwSf9Htrx68OAx31BESBM1FAwsN2HTQyYQq7m4aW4Q4Nlag==", + "version": "39.6.7", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.7.tgz", + "integrity": "sha512-0mrzXrHvL2ZLe3QK9X0OEDy7Fs2cFQ/f1d1G5KHEGD+13D1qg56Iovq0uOkYf5bJlHiKPytWVgOOO9y7kLW3VA==", "dev": true, "requires": { "@es-joy/jsdoccomment": "~0.36.1", @@ -12315,9 +12070,9 @@ } }, "file-type": { - "version": "18.1.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.1.0.tgz", - "integrity": "sha512-FqjmVvHjX5C/EnibCENAsCMIg7HgUYO0vDypt5V8RmtKDk7eUa+/6mEWSrY4PStFhUt0K3CoE8stjLJCcMsJFQ==", + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.2.0.tgz", + "integrity": "sha512-M3RQMWY3F2ykyWZ+IHwNCjpnUmukYhtdkGGC1ZVEUb0ve5REGF7NNJ4Q9ehCUabtQKtSVFOMbFTXgJlFb0DQIg==", "dev": true, "requires": { "readable-web-to-node-stream": "^3.0.2", @@ -12466,6 +12221,36 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, + "gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } + } + }, "gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -12500,6 +12285,16 @@ "inherits": "2", "minimatch": "^5.0.1", "once": "^1.3.0" + }, + "dependencies": { + "minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "requires": { + "brace-expansion": "^2.0.1" + } + } } }, "glob-parent": { @@ -12685,6 +12480,16 @@ "integrity": "sha512-bTf9UWe/UP1yxG3QUrj/KOvEhTAUWPcv+WvbFZ28LcqznXabp7Xu6o9y1JEC18+oqODuS7VhTpekV5XvFwsxJg==", "requires": { "minimatch": "^5.0.1" + }, + "dependencies": { + "minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "requires": { + "brace-expansion": "^2.0.1" + } + } } }, "immutable": { @@ -12767,9 +12572,9 @@ "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" }, "irregular-plurals": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.3.0.tgz", - "integrity": "sha512-MVBLKUTangM3EfRPFROhmWQQKRDsrgI83J8GS3jXy+OwYqiR2/aoWndYQ5416jLE3uaGgLH7ncme3X9y09gZ3g==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.4.0.tgz", + "integrity": "sha512-YXxECO/W6N9aMBVKMKKZ8TXESgq7EFrp3emCGGUcrYY1cgJIeZjoB75MTu8qi+NAKntS9NwPU8VdcQ3r6E6aWQ==", "dev": true }, "is-arrayish": { @@ -13078,9 +12883,9 @@ } }, "js-sdsl": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", - "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", "dev": true }, "js-string-escape": { @@ -13761,9 +13566,9 @@ "dev": true }, "minimatch": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.4.tgz", - "integrity": "sha512-U0iNYXt9wALljzfnGkhFSy5sAC6/SCR3JrHrlsdJz4kF8MvhTRQNiC59iUi1iqsitV7abrNAJWElVL9pdnoUgw==", + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.5.tgz", + "integrity": "sha512-2/WxnHMkH7qFS+pG8ibLN5GZdx5Y0aLlgFSghaKRUpkeEmC85wZRb/xDvj9jv601KdNOS2G/nNqj2h6k42yxBQ==", "requires": { "brace-expansion": "^2.0.1" } @@ -14071,20 +13876,6 @@ "which": "^2.0.2" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -14094,26 +13885,6 @@ "concat-map": "0.0.1" } }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - } - }, "glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -14127,11 +13898,6 @@ "path-is-absolute": "^1.0.0" } }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, "minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -14140,27 +13906,6 @@ "brace-expansion": "^1.1.7" } }, - "npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "requires": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, "rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -14168,24 +13913,6 @@ "requires": { "glob": "^7.1.3" } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } } } }, @@ -14356,6 +14083,17 @@ } } }, + "npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "requires": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + } + }, "nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -14466,12 +14204,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -14492,12 +14224,6 @@ "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, "istanbul-lib-instrument": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", @@ -14543,17 +14269,6 @@ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -15063,9 +14778,9 @@ "dev": true }, "punycode": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.2.0.tgz", - "integrity": "sha512-LN6QV1IJ9ZhxWTNdktaPClrNfp8xdSAYS0Zk2ddX7XsXZAxckMHPCBcHRo0cTcEIgYPRiGEkmji3Idkh2yFtYw==" + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" }, "query-ast": { "version": "1.0.5", @@ -15229,6 +14944,16 @@ } } }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, "readable-web-to-node-stream": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", @@ -15236,19 +14961,6 @@ "dev": true, "requires": { "readable-stream": "^3.6.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } } }, "readdirp": { @@ -15318,6 +15030,19 @@ "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } } } }, @@ -15396,9 +15121,9 @@ } }, "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safer-buffer": { "version": "2.1.2", @@ -15716,22 +15441,41 @@ } }, "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "requires": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" } }, "string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "requires": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } } }, "strip-ansi": { @@ -15825,18 +15569,16 @@ "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", "integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA==" }, - "tap-xunit": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", - "integrity": "sha512-qcZStDtjjYjMKAo7QNiCtOW256g3tuSyCSe5kNJniG1Q2oeOExJq4vm8CwboHZURpkXAHvtqMl4TVL7mcbMVVA==", + "tap-parser": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", + "integrity": "sha512-uXKcosa0qoSjeh73dhmX+OpJvpigDxUciOhBcbGUKtmwzEFJjUT1Ql5dpg4M9I1UjXT9b+6n1W05FB8QmKossA==", "dev": true, "requires": { - "duplexer": "~0.1.1", - "minimist": "~1.2.0", - "tap-parser": "~1.2.2", - "through2": "~2.0.0", - "xmlbuilder": "~4.2.0", - "xtend": "~4.0.0" + "events-to-array": "^1.0.1", + "inherits": "~2.0.1", + "js-yaml": "^3.2.7", + "readable-stream": "^2" }, "dependencies": { "argparse": { @@ -15881,20 +15623,39 @@ "util-deprecate": "~1.0.1" } }, - "tap-parser": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", - "integrity": "sha512-uXKcosa0qoSjeh73dhmX+OpJvpigDxUciOhBcbGUKtmwzEFJjUT1Ql5dpg4M9I1UjXT9b+6n1W05FB8QmKossA==", + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, + "optional": true, "requires": { - "events-to-array": "^1.0.1", - "inherits": "~2.0.1", - "js-yaml": "^3.2.7", - "readable-stream": "^2" + "safe-buffer": "~5.1.0" } } } }, + "tap-xunit": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", + "integrity": "sha512-qcZStDtjjYjMKAo7QNiCtOW256g3tuSyCSe5kNJniG1Q2oeOExJq4vm8CwboHZURpkXAHvtqMl4TVL7mcbMVVA==", + "dev": true, + "requires": { + "duplexer": "~0.1.1", + "minimist": "~1.2.0", + "tap-parser": "~1.2.2", + "through2": "~2.0.0", + "xmlbuilder": "~4.2.0", + "xtend": "~4.0.0" + } + }, "tar": { "version": "6.1.13", "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", @@ -16064,6 +15825,21 @@ "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } } } }, @@ -16240,41 +16016,6 @@ "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "requires": { "string-width": "^1.0.2 || 2 || 3 || 4" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } } }, "word-wrap": { @@ -16324,29 +16065,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -16442,44 +16160,6 @@ "yargs-parser": "^21.1.1" }, "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, "yargs-parser": { "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index b0f2910dab2..e61952aa092 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -138,7 +138,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.1.0", + "ava": "^5.1.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", @@ -146,7 +146,7 @@ "eslint": "^8.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^13.2.0", - "eslint-plugin-jsdoc": "^39.6.4", + "eslint-plugin-jsdoc": "^39.6.7", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From fcd6c116d93c0b60863a6d48e7dce26330b4b13f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 23 Jan 2023 15:12:38 +0000 Subject: [PATCH 0796/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-rc.2 to 3.0.0-rc.3 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-rc.3/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b4a4fca2754..3a856924ca5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.1", - "@ui5/fs": "^3.0.0-rc.2", + "@ui5/fs": "^3.0.0-rc.3", "@ui5/logger": "^3.0.1-rc.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1132,9 +1132,9 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-rc.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.2.tgz", - "integrity": "sha512-Uu7X8x3GOAVlbebBvPSXT63RLchL/t3GYpEqlZWbBhHT+iYdVfruCkWQUHjIomGdtQ6kmpl+7NrOzqliqRYAOQ==", + "version": "3.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.3.tgz", + "integrity": "sha512-w0KOqhJxojv/7HD2ADRqF42izqej2iDN07qYWXBr4JD3RSGTGj+jXfv6udsMs1YG3FhFLrAX0+VYs2gxUG+gPg==", "dependencies": { "@ui5/logger": "^3.0.1-rc.0", "clone": "^2.1.2", @@ -10140,9 +10140,9 @@ } }, "@ui5/fs": { - "version": "3.0.0-rc.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.2.tgz", - "integrity": "sha512-Uu7X8x3GOAVlbebBvPSXT63RLchL/t3GYpEqlZWbBhHT+iYdVfruCkWQUHjIomGdtQ6kmpl+7NrOzqliqRYAOQ==", + "version": "3.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.3.tgz", + "integrity": "sha512-w0KOqhJxojv/7HD2ADRqF42izqej2iDN07qYWXBr4JD3RSGTGj+jXfv6udsMs1YG3FhFLrAX0+VYs2gxUG+gPg==", "requires": { "@ui5/logger": "^3.0.1-rc.0", "clone": "^2.1.2", diff --git a/packages/project/package.json b/packages/project/package.json index e61952aa092..d84571ebd7c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-rc.1", - "@ui5/fs": "^3.0.0-rc.2", + "@ui5/fs": "^3.0.0-rc.3", "@ui5/logger": "^3.0.1-rc.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 4be4065de978b1b0faa43348434db28194ab1413 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 22 Jan 2023 10:01:27 +0000 Subject: [PATCH 0797/1272] [ui5-project][INTERNAL] Bump eslint-plugin-ava from 13.2.0 to 14.0.0 Bumps [eslint-plugin-ava](https://github.com/avajs/eslint-plugin-ava) from 13.2.0 to 14.0.0. - [Release notes](https://github.com/avajs/eslint-plugin-ava/releases) - [Commits](https://github.com/avajs/eslint-plugin-ava/compare/v13.2.0...v14.0.0) --- updated-dependencies: - dependency-name: eslint-plugin-ava dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3a856924ca5..9941217af79 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -38,7 +38,7 @@ "docdash": "^2.0.1", "eslint": "^8.32.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-ava": "^13.2.0", + "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^39.6.7", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", @@ -3198,9 +3198,9 @@ } }, "node_modules/eslint-plugin-ava": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-13.2.0.tgz", - "integrity": "sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-14.0.0.tgz", + "integrity": "sha512-XmKT6hppaipwwnLVwwvQliSU6AF1QMHiNoLD5JQfzhUhf0jY7CO0O624fQrE+Y/fTb9vbW8r77nKf7M/oHulxw==", "dev": true, "dependencies": { "enhance-visitors": "^1.0.0", @@ -3213,10 +3213,10 @@ "resolve-from": "^5.0.0" }, "engines": { - "node": ">=12.22 <13 || >=14.17 <15 || >=16.4" + "node": ">=14.17 <15 || >=16.4" }, "peerDependencies": { - "eslint": ">=7.22.0" + "eslint": ">=8.26.0" } }, "node_modules/eslint-plugin-jsdoc": { @@ -11843,9 +11843,9 @@ "requires": {} }, "eslint-plugin-ava": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-13.2.0.tgz", - "integrity": "sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-14.0.0.tgz", + "integrity": "sha512-XmKT6hppaipwwnLVwwvQliSU6AF1QMHiNoLD5JQfzhUhf0jY7CO0O624fQrE+Y/fTb9vbW8r77nKf7M/oHulxw==", "dev": true, "requires": { "enhance-visitors": "^1.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index d84571ebd7c..48fdea7af46 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -145,7 +145,7 @@ "docdash": "^2.0.1", "eslint": "^8.32.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-ava": "^13.2.0", + "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^39.6.7", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", From b15935faeb9f0f95a484d8e4e8f53632d509b539 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 23 Jan 2023 15:35:20 +0000 Subject: [PATCH 0798/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-rc.1 to 3.0.0-rc.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-rc.2/CHANGELOG.md --- packages/project/package-lock.json | 343 ++++------------------------- packages/project/package.json | 2 +- 2 files changed, 42 insertions(+), 303 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9941217af79..ad30f15891b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-rc.3", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-rc.1", + "@ui5/builder": "^3.0.0-rc.2", "@ui5/fs": "^3.0.0-rc.3", "@ui5/logger": "^3.0.1-rc.1", "ajv": "^6.12.6", @@ -57,6 +57,11 @@ "npm": ">= 8" } }, + "node_modules/@adobe/css-tools": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.0.2.tgz", + "integrity": "sha512-Fx6tYjk2wKUgLi8uMANZr8GNZx05u44ArIJldn9VxLvolzlJVgHbTUCbwhMd6bcYky178+WUSxPHO3DAtGLWpw==" + }, "node_modules/@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", @@ -1052,23 +1057,22 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-rc.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.1.tgz", - "integrity": "sha512-c1jvvmhxefjG4jRj5qZRHQOs+7FUawZm+X8fdXPJjptHHyo5AGHG51bi9Tr283o6AbUhzhHHh/mhAwmxXY/g+w==", + "version": "3.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.2.tgz", + "integrity": "sha512-RZjwS9Ye9Bq63ekkqzvWqumWW4woUt4anjoWtiyKlt384tgOWVX/BhX2/VW/hvo1BhMkL8MpAoBywc4rQNax+Q==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-rc.1", - "@ui5/logger": "^3.0.1-rc.0", + "@ui5/fs": "^3.0.0-rc.3", + "@ui5/logger": "^3.0.1-rc.1", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", "espree": "^9.4.1", "graceful-fs": "^4.2.10", "jsdoc": "^3.6.11", - "less-openui5": "^0.11.5", + "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", - "replacestream": "^4.0.3", - "rimraf": "^3.0.2", + "rimraf": "^4.1.1", "semver": "^7.3.8", "terser": "^5.16.1", "xml2js": "^0.4.23" @@ -1078,59 +1082,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/builder/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@ui5/builder/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@ui5/builder/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@ui5/builder/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@ui5/fs": { "version": "3.0.0-rc.3", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.3.tgz", @@ -1455,17 +1406,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, "node_modules/ava": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.1.tgz", @@ -2368,7 +2308,8 @@ "node_modules/core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true }, "node_modules/cosmiconfig": { "version": "7.1.0", @@ -2445,16 +2386,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dependencies": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - } - }, "node_modules/css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -2560,14 +2491,6 @@ "node": ">=0.10.0" } }, - "node_modules/decode-uri-component": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", - "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", - "engines": { - "node": ">=0.10" - } - }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -4997,12 +4920,12 @@ } }, "node_modules/less-openui5": { - "version": "0.11.5", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.5.tgz", - "integrity": "sha512-7jelqOz6w3ypUSxKQU4LNEcDEXd4TDlw2bnh758XUNXEehfwgpkP2aITjVvKIIziVlE+tR1Yl6nZdaRQ2GxNtg==", + "version": "0.11.6", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.6.tgz", + "integrity": "sha512-sQmU+G2pJjFfzRI+XtXkk+T9G0s6UmWWUfOW0utPR46C9lfhNr4DH1lNJuImj64reXYi+vOwyNxPRkj0F3mofA==", "dependencies": { + "@adobe/css-tools": "^4.0.2", "clone": "^2.1.2", - "css": "^3.0.0", "mime": "^1.6.0" }, "engines": { @@ -6723,14 +6646,6 @@ "node": ">=6" } }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -7346,7 +7261,8 @@ "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true }, "node_modules/process-on-spawn": { "version": "1.0.0", @@ -7736,56 +7652,6 @@ "node": ">=4" } }, - "node_modules/replacestream": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", - "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", - "dependencies": { - "escape-string-regexp": "^1.0.3", - "object-assign": "^4.0.1", - "readable-stream": "^2.0.2" - } - }, - "node_modules/replacestream/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/replacestream/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/replacestream/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/replacestream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/replacestream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -8160,16 +8026,6 @@ "node": ">=0.10.0" } }, - "node_modules/source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, "node_modules/source-map-support": { "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", @@ -9298,6 +9154,11 @@ } }, "dependencies": { + "@adobe/css-tools": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.0.2.tgz", + "integrity": "sha512-Fx6tYjk2wKUgLi8uMANZr8GNZx05u44ArIJldn9VxLvolzlJVgHbTUCbwhMd6bcYky178+WUSxPHO3DAtGLWpw==" + }, "@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", @@ -10077,66 +9938,25 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-rc.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.1.tgz", - "integrity": "sha512-c1jvvmhxefjG4jRj5qZRHQOs+7FUawZm+X8fdXPJjptHHyo5AGHG51bi9Tr283o6AbUhzhHHh/mhAwmxXY/g+w==", + "version": "3.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.2.tgz", + "integrity": "sha512-RZjwS9Ye9Bq63ekkqzvWqumWW4woUt4anjoWtiyKlt384tgOWVX/BhX2/VW/hvo1BhMkL8MpAoBywc4rQNax+Q==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-rc.1", - "@ui5/logger": "^3.0.1-rc.0", + "@ui5/fs": "^3.0.0-rc.3", + "@ui5/logger": "^3.0.1-rc.1", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", "espree": "^9.4.1", "graceful-fs": "^4.2.10", "jsdoc": "^3.6.11", - "less-openui5": "^0.11.5", + "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", - "replacestream": "^4.0.3", - "rimraf": "^3.0.2", + "rimraf": "^4.1.1", "semver": "^7.3.8", "terser": "^5.16.1", "xml2js": "^0.4.23" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - } - } } }, "@ui5/fs": { @@ -10387,11 +10207,6 @@ "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", "dev": true }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" - }, "ava": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.1.tgz", @@ -11075,7 +10890,8 @@ "core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true }, "cosmiconfig": { "version": "7.1.0", @@ -11127,16 +10943,6 @@ } } }, - "css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "requires": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - } - }, "css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -11211,11 +11017,6 @@ } } }, - "decode-uri-component": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", - "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==" - }, "deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -13004,12 +12805,12 @@ } }, "less-openui5": { - "version": "0.11.5", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.5.tgz", - "integrity": "sha512-7jelqOz6w3ypUSxKQU4LNEcDEXd4TDlw2bnh758XUNXEehfwgpkP2aITjVvKIIziVlE+tR1Yl6nZdaRQ2GxNtg==", + "version": "0.11.6", + "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.6.tgz", + "integrity": "sha512-sQmU+G2pJjFfzRI+XtXkk+T9G0s6UmWWUfOW0utPR46C9lfhNr4DH1lNJuImj64reXYi+vOwyNxPRkj0F3mofA==", "requires": { + "@adobe/css-tools": "^4.0.2", "clone": "^2.1.2", - "css": "^3.0.0", "mime": "^1.6.0" } }, @@ -14326,11 +14127,6 @@ } } }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" - }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -14740,7 +14536,8 @@ "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true }, "process-on-spawn": { "version": "1.0.0", @@ -14997,55 +14794,6 @@ "es6-error": "^4.0.1" } }, - "replacestream": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/replacestream/-/replacestream-4.0.3.tgz", - "integrity": "sha512-AC0FiLS352pBBiZhd4VXB1Ab/lh0lEgpP+GGvZqbQh8a5cmXVoTe5EX/YeTFArnp4SRGTHh1qCHu9lGs1qG8sA==", - "requires": { - "escape-string-regexp": "^1.0.3", - "object-assign": "^4.0.1", - "readable-stream": "^2.0.2" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -15299,15 +15047,6 @@ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "dev": true }, - "source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, "source-map-support": { "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 48fdea7af46..d38953cc92b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-rc.1", + "@ui5/builder": "^3.0.0-rc.2", "@ui5/fs": "^3.0.0-rc.3", "@ui5/logger": "^3.0.1-rc.1", "ajv": "^6.12.6", From 4ad103e31ffb1984baaaf679ec5c745b2612abc5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 23 Jan 2023 15:47:58 +0000 Subject: [PATCH 0799/1272] [ui5-project]Release 3.0.0-rc.4 --- packages/project/CHANGELOG.md | 11 +++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index cd5baabd494..578fda664b3 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.4...HEAD). + + +## [v3.0.0-rc.4] - 2023-01-23 +### Dependency Updates +- Bump rimraf from 3.0.2 to 4.1.1 ([#550](https://github.com/SAP/ui5-project/issues/550)) [`99876ae`](https://github.com/SAP/ui5-project/commit/99876ae35e9d8f5c725e2e87bd3be37d7ed4363c) + -## [v3.0.0-rc.3] - 2023-01-18 +## [v3.0.0-rc.3] - 2023-01-19 ## [v3.0.0-rc.2] - 2023-01-11 @@ -388,6 +394,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-rc.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.3...v3.0.0-rc.4 [v3.0.0-rc.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.2...v3.0.0-rc.3 [v3.0.0-rc.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.1...v3.0.0-rc.2 [v3.0.0-rc.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.0...v3.0.0-rc.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ad30f15891b..72f973b98e2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.3", + "version": "3.0.0-rc.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc.3", + "version": "3.0.0-rc.4", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.2", diff --git a/packages/project/package.json b/packages/project/package.json index d38953cc92b..cad7b753a6b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.3", + "version": "3.0.0-rc.4", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 946f9414b1bae55280c88059a81dbf2386eae311 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Tue, 24 Jan 2023 09:45:29 +0200 Subject: [PATCH 0800/1272] [ui5-project][INTERNAL] ui5-workspace.yaml schema (#543) JIRA: CPOUI5FOUNDATION-584 Provide ui5-workspace.yaml schema that complies with the [local dependency resolution spec](https://github.com/SAP/ui5-tooling/blob/rfc-local-dependency-resolution/rfcs/0006-local-dependency-resolution.md#workspace-configuration-file) For further details, check the [RFC 0006 Local Dependency Resolution](https://github.com/SAP/ui5-tooling/blob/rfc-local-dependency-resolution/rfcs/0006-local-dependency-resolution.md) --- .../project/lib/validation/ValidationError.js | 9 +- .../lib/validation/schema/ui5-workspace.json | 54 +++ packages/project/lib/validation/validator.js | 97 +++-- .../schema/specVersion/kind/extension.js | 2 +- .../kind/extension/project-shim.js | 2 +- .../kind/extension/server-middleware.js | 2 +- .../schema/specVersion/kind/extension/task.js | 2 +- .../schema/specVersion/kind/project.js | 2 +- .../specVersion/kind/project/application.js | 2 +- .../specVersion/kind/project/library.js | 2 +- .../schema/specVersion/kind/project/module.js | 2 +- .../specVersion/kind/project/theme-library.js | 2 +- .../lib/validation/schema/ui5-workspace.js | 351 ++++++++++++++++++ .../project/test/lib/validation/schema/ui5.js | 2 +- .../project/test/lib/validation/validator.js | 124 ++++++- 15 files changed, 617 insertions(+), 38 deletions(-) create mode 100644 packages/project/lib/validation/schema/ui5-workspace.json create mode 100644 packages/project/test/lib/validation/schema/ui5-workspace.js diff --git a/packages/project/lib/validation/ValidationError.js b/packages/project/lib/validation/ValidationError.js index c437bf303a6..fabdbd6e8a6 100644 --- a/packages/project/lib/validation/ValidationError.js +++ b/packages/project/lib/validation/ValidationError.js @@ -49,7 +49,14 @@ class ValidationError extends Error { separator += chalk.grey.dim("\u2500".repeat(process.stdout.columns || 80)); } separator += "\n\n"; - let message = chalk.red(`Invalid ui5.yaml configuration for project ${this.project.id}`) + "\n\n"; + let message; + + if (this.project) { // ui5-workspace.yaml is project independent, so in that case, no project is available + message = chalk.red(`Invalid ui5.yaml configuration for project ${this.project.id}`) + "\n\n"; + } else { + message = chalk.red(`Invalid workspace configuration.`) + "\n\n"; + } + message += this.errors.map((error) => { return this.formatError(error); }).join(separator); diff --git a/packages/project/lib/validation/schema/ui5-workspace.json b/packages/project/lib/validation/schema/ui5-workspace.json new file mode 100644 index 00000000000..c5889f15732 --- /dev/null +++ b/packages/project/lib/validation/schema/ui5-workspace.json @@ -0,0 +1,54 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "$id": "http://ui5.sap/schema/ui5-workspace.json", + "title": "ui5-workspace.yaml", + "description": "Schema for UI5 Tooling Workspace Configuration File (ui5-workspace.yaml)", + "$comment": "See https://sap.github.io/ui5-tooling/", + "type": "object", + "required": ["specVersion", "metadata", "dependencyManagement"], + "properties": { + "additionalProperties": false, + "specVersion": { + "enum": ["workspace/1.0"], + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"workspace/1.0\"\nFor details see: // TODO: Add link to Documentation" + }, + "metadata": { + "$ref": "#/definitions/metadata" + }, + "dependencyManagement": { + "$ref": "#/definitions/dependencyManagement" + } + }, + "definitions": { + "metadata": { + "type": "object", + "required": ["name"], + "properties": { + "additionalProperties": false, + "name": { + "type": "string", + "errorMessage": "Workspace name is not provided. There must be a wokrspace name defined." + } + } + }, + "dependencyManagement": { + "type": "object", + "properties": { + "additionalProperties": false, + "resolutions": { + "type": "array", + "additionalProperties": false, + "items": { + "type": "object", + "additionalProperties": false, + "properties": { + "path": { + "type": "string" + } + } + } + } + } + } + } +} diff --git a/packages/project/lib/validation/validator.js b/packages/project/lib/validation/validator.js index 7b7d46a1e5e..1f8740db66a 100644 --- a/packages/project/lib/validation/validator.js +++ b/packages/project/lib/validation/validator.js @@ -1,28 +1,48 @@ import {fileURLToPath} from "node:url"; import {readFile} from "node:fs/promises"; -async function loadSchema(schemaPath) { - const filePath = schemaPath.replace("http://ui5.sap/schema/", ""); - const schemaFile = await readFile( - fileURLToPath(new URL(`./schema/${filePath}`, import.meta.url)), {encoding: "utf8"} - ); - return JSON.parse(schemaFile); -} +/** + * @module @ui5/project/validation/validator + * @description A collection of validation related APIs + * @public + */ + +/** + * @enum {string} + * @private + * @readonly + */ +export const SCHEMA_VARIANTS = { + "ui5": "ui5.json", + "ui5-workspace": "ui5-workspace.json" +}; class Validator { - constructor({Ajv, ajvErrors}) { + constructor({Ajv, ajvErrors, schemaName}) { + if (!schemaName && !SCHEMA_VARIANTS[schemaName]) { + throw new Error( + `"schemaName" is missing or incorrect. The available schemaName variants are ${Object.keys( + SCHEMA_VARIANTS + ).join(", ")}` + ); + } + + this._schemaName = SCHEMA_VARIANTS[schemaName]; + this.ajv = new Ajv({ allErrors: true, jsonPointers: true, - loadSchema + loadSchema: Validator.loadSchema }); ajvErrors(this.ajv); } _compileSchema() { + const schemaName = this._schemaName; + if (!this._compiling) { this._compiling = Promise.resolve().then(async () => { - const schema = await loadSchema("ui5.json"); + const schema = await Validator.loadSchema(schemaName); const validate = await this.ajv.compileAsync(schema); return validate; }); @@ -46,18 +66,33 @@ class Validator { }); } } + + static async loadSchema(schemaPath) { + const filePath = schemaPath.replace("http://ui5.sap/schema/", ""); + const schemaFile = await readFile( + fileURLToPath(new URL(`./schema/${filePath}`, import.meta.url)), {encoding: "utf8"} + ); + return JSON.parse(schemaFile); + } } -let validator; +const validator = Object.create(null); -/** - * @module @ui5/project/validation/validator - * @description A collection of validation related APIs - * @public - */ +async function _validate(schemaName, options) { + if (!validator[schemaName]) { + validator[schemaName] = (async () => { + const {default: Ajv} = await import("ajv"); + const {default: ajvErrors} = await import("ajv-errors"); + return new Validator({Ajv, ajvErrors, schemaName}); + })(); + } + + const schemaValidator = await validator[schemaName]; + await schemaValidator.validate(options); +} /** - * Validates the given configuration. + * Validates the given ui5 configuration. * * @public * @function @@ -76,12 +111,28 @@ let validator; * @returns {Promise} Returns a Promise that resolves when the validation succeeds */ export async function validate(options) { - if (!validator) { - const {default: Ajv} = await import("ajv"); - const {default: ajvErrors} = await import("ajv-errors"); - validator = new Validator({Ajv, ajvErrors}); - } - await validator.validate(options); + await _validate("ui5", options); +} + +/** + * Validates the given ui5-workspace configuration. + * + * @public + * @function + * @static + * @param {object} options + * @param {object} options.config ui5-workspace Configuration to validate + * @param {object} [options.yaml] YAML information + * @param {string} options.yaml.path Path of the YAML file + * @param {string} options.yaml.source Content of the YAML file + * @param {number} [options.yaml.documentIndex=0] Document index in case the YAML file contains multiple documents + * @throws {@ui5/project/validation/ValidationError} + * Rejects with a {@link @ui5/project/validation/ValidationError ValidationError} + * when the validation fails. + * @returns {Promise} Returns a Promise that resolves when the validation succeeds + */ +export async function validateWorkspace(options) { + await _validate("ui5-workspace", options); } export { diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension.js index 33a3465c95c..565b92245ac 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension.js @@ -22,7 +22,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator({Ajv, ajvErrors}); + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5"}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/kind/extension.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js index 8bfef62527b..3fb2fb286a5 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js @@ -23,7 +23,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator({Ajv, ajvErrors}); + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5"}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/kind/extension/project-shim.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js index 2d341142077..6a97ac2187e 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js @@ -23,7 +23,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator({Ajv, ajvErrors}); + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5"}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/kind/extension/server-middleware.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js index 5dfcfd71ef2..7abbf36d07c 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js @@ -23,7 +23,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator({Ajv, ajvErrors}); + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5"}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/kind/extension/task.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project.js b/packages/project/test/lib/validation/schema/specVersion/kind/project.js index 72bda51c6c2..231c0ef2908 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project.js @@ -22,7 +22,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator({Ajv, ajvErrors}); + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5"}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/kind/project.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index 09c89baf3c6..81b959e4f4d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -28,7 +28,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator({Ajv, ajvErrors}); + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5"}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/kind/project/application.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js index ed372082e9c..3ba3ecfd612 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js @@ -28,7 +28,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator({Ajv, ajvErrors}); + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5"}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/kind/project/library.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js index 3177cc927c7..a750806b41e 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js @@ -23,7 +23,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator({Ajv, ajvErrors}); + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5"}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/kind/project/module.json"] }); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js index dafcf8f92e1..24abd992c69 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js @@ -28,7 +28,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator({Ajv, ajvErrors}); + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5"}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/specVersion/kind/project/theme-library.json"] }); diff --git a/packages/project/test/lib/validation/schema/ui5-workspace.js b/packages/project/test/lib/validation/schema/ui5-workspace.js new file mode 100644 index 00000000000..59dee23d3a9 --- /dev/null +++ b/packages/project/test/lib/validation/schema/ui5-workspace.js @@ -0,0 +1,351 @@ +import test from "ava"; +import Ajv from "ajv"; +import ajvErrors from "ajv-errors"; +import AjvCoverage from "../../../utils/AjvCoverage.js"; +import {_Validator as Validator} from "../../../../lib/validation/validator.js"; +import ValidationError from "../../../../lib/validation/ValidationError.js"; + +async function assertValidation(t, config, expectedErrors = undefined) { + const validation = t.context.validator.validate({ + config, + project: {id: "my-project"} + }); + if (expectedErrors) { + const validationError = await t.throwsAsync(validation, { + instanceOf: ValidationError, + name: "ValidationError", + }); + validationError.errors.forEach((error) => { + delete error.schemaPath; + if (error.params && Array.isArray(error.params.errors)) { + error.params.errors.forEach(($) => { + delete $.schemaPath; + }); + } + }); + t.deepEqual(validationError.errors, expectedErrors); + } else { + await t.notThrowsAsync(validation); + } +} + +test.before((t) => { + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5-workspace"}); + t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { + includes: ["schema/ui5-workspace.json"], + }); +}); + +test.after.always((t) => { + t.context.ajvCoverage.createReport("html", { + dir: "coverage/ajv-ui5-workspace", + }); + const thresholds = { + statements: 85, + branches: 75, + functions: 100, + lines: 85, + }; + t.context.ajvCoverage.verify(thresholds); +}); + +test("Empty config", async (t) => { + await assertValidation( + t, + { + specVersion: "0.1", + }, + [ + { + dataPath: "/specVersion", + keyword: "errorMessage", + message: `Unsupported "specVersion" +Your UI5 CLI installation might be outdated. +Supported specification versions: "workspace/1.0" +For details see: // TODO: Add link to Documentation`, + params: { + errors: [ + { + dataPath: "/specVersion", + keyword: "enum", + message: + "should be equal to one of the allowed values", + params: { + allowedValues: ["workspace/1.0"], + }, + }, + ], + }, + }, + { + dataPath: "", + keyword: "required", + message: "should have required property 'metadata'", + params: { + missingProperty: "metadata", + }, + }, + { + dataPath: "", + keyword: "required", + message: "should have required property 'dependencyManagement'", + params: { + missingProperty: "dependencyManagement", + }, + }, + ] + ); +}); + +test("Valid spec", async (t) => { + await assertValidation(t, { + specVersion: "workspace/1.0", + metadata: { + name: "test-spec-name", + }, + dependencyManagement: { + resolutions: [ + { + path: "path/to/resource/1", + }, + { + path: "path/to/resource/2", + }, + ], + }, + }); +}); + +test("Missing metadata.name", async (t) => { + await assertValidation( + t, + { + specVersion: "workspace/1.0", + metadata: {}, + dependencyManagement: { + resolutions: [ + { + path: "path/to/resource/1", + }, + ], + }, + }, + [ + { + dataPath: "/metadata", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + }, + }, + ] + ); +}); + +test("Invalid fields", async (t) => { + await assertValidation( + t, + { + specVersion: 12, + metadata: { + name: {}, + }, + dependencyManagement: { + resolutions: { + path: "path/to/resource/1", + }, + }, + }, + [ + { + dataPath: "/specVersion", + keyword: "errorMessage", + message: `Unsupported "specVersion" +Your UI5 CLI installation might be outdated. +Supported specification versions: "workspace/1.0" +For details see: // TODO: Add link to Documentation`, + params: { + errors: [ + { + dataPath: "/specVersion", + keyword: "enum", + message: + "should be equal to one of the allowed values", + params: { + allowedValues: ["workspace/1.0"], + }, + }, + ], + }, + }, + { + dataPath: "/metadata/name", + keyword: "errorMessage", + message: + "Workspace name is not provided. There must be a wokrspace name defined.", + params: { + errors: [ + { + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ], + }, + }, + { + dataPath: "/dependencyManagement/resolutions", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/dependencyManagement/resolutions", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "path", + }, + }, + ] + ); +}); + +test("Invalid types", async (t) => { + await assertValidation( + t, + { + specVersion: 42, + metadata: { + name: 15, + }, + dependencyManagement: "simple string", + }, + [ + { + dataPath: "/specVersion", + keyword: "errorMessage", + message: `Unsupported "specVersion" +Your UI5 CLI installation might be outdated. +Supported specification versions: "workspace/1.0" +For details see: // TODO: Add link to Documentation`, + params: { + errors: [ + { + dataPath: "/specVersion", + keyword: "enum", + message: + "should be equal to one of the allowed values", + params: { + allowedValues: ["workspace/1.0"], + }, + }, + ], + }, + }, + { + dataPath: "/metadata/name", + keyword: "errorMessage", + message: + "Workspace name is not provided. There must be a wokrspace name defined.", + params: { + errors: [ + { + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ], + }, + }, + { + dataPath: "/dependencyManagement", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + }, + ] + ); +}); + +test("Invalid dependencyManagement", async (t) => { + await assertValidation( + t, + { + specVersion: "workspace/1.0", + metadata: { + name: "test-spec-name", + }, + dependencyManagement: { + resolutions: "Invalid type", + }, + }, + [ + { + dataPath: "/dependencyManagement/resolutions", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ] + ); + + await assertValidation( + t, + { + specVersion: "workspace/1.0", + metadata: { + name: "test-spec-name", + }, + dependencyManagement: { + resolutions: ["invalid type"], + }, + }, + [ + { + dataPath: "/dependencyManagement/resolutions/0", + keyword: "type", + message: "should be object", + params: { + type: "object", + }, + }, + ] + ); + + await assertValidation( + t, + { + specVersion: "workspace/1.0", + metadata: { + name: "test-spec-name", + }, + dependencyManagement: { + resolutions: [{path: 12}], + }, + }, + [ + { + dataPath: "/dependencyManagement/resolutions/0/path", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ] + ); +}); diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index cff33c79eba..32c2163cd91 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -27,7 +27,7 @@ async function assertValidation(t, config, expectedErrors = undefined) { } test.before((t) => { - t.context.validator = new Validator({Ajv, ajvErrors}); + t.context.validator = new Validator({Ajv, ajvErrors, schemaName: "ui5"}); t.context.ajvCoverage = new AjvCoverage(t.context.validator.ajv, { includes: ["schema/ui5.json"] }); diff --git a/packages/project/test/lib/validation/validator.js b/packages/project/test/lib/validation/validator.js index 7d2d0fe8299..dc23e99562c 100644 --- a/packages/project/test/lib/validation/validator.js +++ b/packages/project/test/lib/validation/validator.js @@ -1,12 +1,31 @@ import test from "ava"; -import sinon from "sinon"; -import {validate, _Validator as Validator} from "../../../lib/validation/validator.js"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; + +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + const Ajv = t.context.Ajv = sinon.stub(); + const ajvErrors = t.context.ajvErrors = sinon.stub(); + + t.context.validatorModule = await esmock.p("../../../lib/validation/validator.js", { + "ajv": Ajv, + "ajv-errors": ajvErrors + }); + const {validate, validateWorkspace, _Validator: Validator} = t.context.validatorModule; + + t.context.validate = validate; + t.context.validateWorkspace = validateWorkspace; + t.context.Validator = Validator; +}); test.afterEach.always((t) => { - sinon.restore(); + t.context.sinon.restore(); + esmock.purge(t.context.validatorModule); }); -test.serial("validate function calls Validator#validate method", async (t) => { +test("validate function calls Validator#validate method", async (t) => { + const {sinon, Validator, validate} = t.context; const config = {config: true}; const project = {project: true}; const yaml = {yaml: true}; @@ -20,3 +39,100 @@ test.serial("validate function calls Validator#validate method", async (t) => { t.is(validateStub.callCount, 1, "validate should be called once"); t.deepEqual(validateStub.getCall(0).args, [{config, project, yaml}]); }); + +test("validateWorkspace function calls Validator#validate method without project", async (t) => { + const {sinon, Validator, validateWorkspace} = t.context; + const config = {config: true}; + const yaml = {yaml: true}; + + const validateStub = sinon.stub(Validator.prototype, "validate"); + validateStub.resolves(); + + const result = await validateWorkspace({config, yaml}); + + t.is(result, undefined, "validate should return undefined"); + t.is(validateStub.callCount, 1, "validate should be called once"); + t.deepEqual(validateStub.getCall(0).args, [{config, yaml}]); +}); + +test("validateWorkspace throw an Error", async (t) => { + const {validateWorkspace} = await esmock("../../../lib/validation/validator.js"); + const config = {config: true}; + const yaml = {yaml: true}; + + const err = await t.throwsAsync(async () => { + return await validateWorkspace({config, yaml}); + }); + + t.is(err.message.includes("Invalid workspace configuration."), true); +}); + +test("Validator requires schemaName", (t) => { + const {sinon, Validator} = t.context; + + const Ajv = sinon.stub(); + const ajvErrors = sinon.stub(); + const invalidContructor = () => { + new Validator({Ajv, ajvErrors}); + }; + + t.throws(invalidContructor, { + message: + "\"schemaName\" is missing or incorrect. The available schemaName variants are ui5, ui5-workspace", + }); +}); + +test("Validator requires a valid schemaName", (t) => { + const {sinon, Validator} = t.context; + + const Ajv = sinon.stub(); + const ajvErrors = sinon.stub(); + const invalidContructor = () => { + new Validator({Ajv, ajvErrors, schemName: "invalid schema name"}); + }; + + t.throws(invalidContructor, { + message: + "\"schemaName\" is missing or incorrect. The available schemaName variants are ui5, ui5-workspace", + }); +}); + +test("Validator#_compileSchema cache test", async (t) => { + const {sinon, Validator} = t.context; + + const schema1 = {schema1: true}; + + const loadSchemaStub = sinon.stub(Validator, "loadSchema"); + loadSchemaStub.onCall(0).resolves(schema1); + loadSchemaStub.resolves({schema2: true}); + + const schema1Fn = sinon.stub().named("schema1Fn"); + + const compileAsyncStub = sinon.stub().resolves(); + compileAsyncStub.onCall(0).resolves(schema1Fn); + compileAsyncStub.resolves(sinon.stub().named("schema2Fn")); + + const Ajv = sinon.stub().returns({ + compileAsync: compileAsyncStub + }); + const ajvErrors = sinon.stub(); + + const validator = new Validator({Ajv, ajvErrors, schemaName: "ui5-workspace"}); + + const compile1 = validator._compileSchema(); + const compile2 = validator._compileSchema(); + const compile3 = validator._compileSchema(); + + const compile1Result = await compile1; + const compile2Result = await compile2; + const compile3Result = await compile3; + + t.is(compile1Result, compile2Result); + t.is(compile2Result, compile3Result); + + t.is(loadSchemaStub.callCount, 1); + t.deepEqual(loadSchemaStub.getCall(0).args, ["ui5-workspace.json"]); + + t.is(compileAsyncStub.callCount, 1); + t.deepEqual(compileAsyncStub.getCall(0).args, [schema1]); +}); From bdd99986237e208856c511e3623804b64fea059a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 24 Jan 2023 10:49:48 +0000 Subject: [PATCH 0801/1272] [ui5-project]Release 3.0.0-rc.5 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 578fda664b3..be4e8144552 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.4...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.5...HEAD). + + +## [v3.0.0-rc.5] - 2023-01-24 ## [v3.0.0-rc.4] - 2023-01-23 @@ -394,6 +397,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-rc.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.4...v3.0.0-rc.5 [v3.0.0-rc.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.3...v3.0.0-rc.4 [v3.0.0-rc.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.2...v3.0.0-rc.3 [v3.0.0-rc.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.1...v3.0.0-rc.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 72f973b98e2..a5e4b9415fc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.4", + "version": "3.0.0-rc.5", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc.4", + "version": "3.0.0-rc.5", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.2", diff --git a/packages/project/package.json b/packages/project/package.json index cad7b753a6b..c6bbe9e145a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.4", + "version": "3.0.0-rc.5", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From b730e9358a30434c815545a9d0fc47d7f9129788 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 24 Jan 2023 14:56:19 +0100 Subject: [PATCH 0802/1272] [ui5-project][INTERNAL] Align with @ui5/logger changes to named exports See https://github.com/SAP/ui5-logger/pull/371 --- packages/project/lib/build/TaskRunner.js | 4 ++-- .../project/lib/build/helpers/composeProjectList.js | 4 ++-- packages/project/lib/graph/Module.js | 4 ++-- packages/project/lib/graph/ProjectGraph.js | 4 ++-- packages/project/lib/graph/ShimCollection.js | 4 ++-- packages/project/lib/graph/graph.js | 4 ++-- packages/project/lib/graph/helpers/ui5Framework.js | 4 ++-- packages/project/lib/graph/projectGraphBuilder.js | 4 ++-- .../lib/graph/providers/NodePackageDependencies.js | 4 ++-- packages/project/lib/specifications/Specification.js | 4 ++-- packages/project/lib/ui5Framework/AbstractResolver.js | 4 ++-- packages/project/lib/ui5Framework/Sapui5Resolver.js | 4 ++-- packages/project/lib/ui5Framework/npm/Installer.js | 4 ++-- packages/project/lib/ui5Framework/npm/Registry.js | 4 ++-- packages/project/test/lib/build/ProjectBuilder.js | 6 +++--- packages/project/test/lib/build/TaskRunner.js | 4 ++-- .../project/test/lib/build/helpers/composeTaskList.js | 11 ++++------- 17 files changed, 37 insertions(+), 40 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index 43a268e7e81..fb3ddb0b0d8 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -1,4 +1,4 @@ -import logger from "@ui5/logger"; +import {getLogger} from "@ui5/logger"; import composeTaskList from "./helpers/composeTaskList.js"; import {createReaderCollection} from "@ui5/fs/resourceFactory"; @@ -412,7 +412,7 @@ class TaskRunner { if (specVersion.gte("3.0")) { params.options.taskName = taskName; - params.log = logger.getLogger(`builder:custom-task:${taskName}`); + params.log = getLogger(`builder:custom-task:${taskName}`); } if (provideDependenciesReader) { diff --git a/packages/project/lib/build/helpers/composeProjectList.js b/packages/project/lib/build/helpers/composeProjectList.js index ae4db6dbbb8..d98ad17929e 100644 --- a/packages/project/lib/build/helpers/composeProjectList.js +++ b/packages/project/lib/build/helpers/composeProjectList.js @@ -1,5 +1,5 @@ -import logger from "@ui5/logger"; -const log = logger.getLogger("build:helpers:composeProjectList"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("build:helpers:composeProjectList"); /** * Creates an object containing the flattened project dependency tree. Each dependency is defined as an object key while diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js index 86e1ccad6f1..f098d7bcd42 100644 --- a/packages/project/lib/graph/Module.js +++ b/packages/project/lib/graph/Module.js @@ -7,9 +7,9 @@ import {createReader} from "@ui5/fs/resourceFactory"; import Specification from "../specifications/Specification.js"; import {validate} from "../validation/validator.js"; -import logger from "@ui5/logger"; +import {getLogger} from "@ui5/logger"; -const log = logger.getLogger("graph:Module"); +const log = getLogger("graph:Module"); const DEFAULT_CONFIG_PATH = "ui5.yaml"; const SAP_THEMES_NS_EXEMPTIONS = ["themelib_sap_fiori_3", "themelib_sap_bluecrystal", "themelib_sap_belize"]; diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 18ddaf546df..8ea683f4fbc 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -1,5 +1,5 @@ -import logger from "@ui5/logger"; -const log = logger.getLogger("graph:ProjectGraph"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("graph:ProjectGraph"); /** * A rooted, directed graph representing a UI5 project, its dependencies and available extensions diff --git a/packages/project/lib/graph/ShimCollection.js b/packages/project/lib/graph/ShimCollection.js index 0e4d6ddc69c..9947996b13d 100644 --- a/packages/project/lib/graph/ShimCollection.js +++ b/packages/project/lib/graph/ShimCollection.js @@ -1,5 +1,5 @@ -import logger from "@ui5/logger"; -const log = logger.getLogger("graph:ShimCollection"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("graph:ShimCollection"); function addToMap(name, fromMap, toMap) { /* Dynamically populate the given map "toMap" with the following structure: diff --git a/packages/project/lib/graph/graph.js b/packages/project/lib/graph/graph.js index 0721afea419..4fc60c4812a 100644 --- a/packages/project/lib/graph/graph.js +++ b/packages/project/lib/graph/graph.js @@ -1,8 +1,8 @@ import path from "node:path"; import projectGraphBuilder from "./projectGraphBuilder.js"; import ui5Framework from "./helpers/ui5Framework.js"; -import logger from "@ui5/logger"; -const log = logger.getLogger("generateProjectGraph"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("generateProjectGraph"); function resolveProjectPaths(cwd, project) { if (!project.path) { diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 99b3a3e88b8..c5f5acebdbb 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -1,7 +1,7 @@ import Module from "../Module.js"; import ProjectGraph from "../ProjectGraph.js"; -import logger from "@ui5/logger"; -const log = logger.getLogger("graph:helpers:ui5Framework"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("graph:helpers:ui5Framework"); class ProjectProcessor { constructor({libraryMetadata}) { diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index 5c00ae9c483..713e2fa432e 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -2,8 +2,8 @@ import path from "node:path"; import Module from "./Module.js"; import ProjectGraph from "./ProjectGraph.js"; import ShimCollection from "./ShimCollection.js"; -import logger from "@ui5/logger"; -const log = logger.getLogger("graph:projectGraphBuilder"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("graph:projectGraphBuilder"); function _handleExtensions(graph, shimCollection, extensions) { extensions.forEach((extension) => { diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js index a44a05b7855..ad57d080433 100644 --- a/packages/project/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -6,8 +6,8 @@ import fs from "graceful-fs"; const realpath = promisify(fs.realpath); import resolve from "resolve"; const resolveModulePath = promisify(resolve); -import logger from "@ui5/logger"; -const log = logger.getLogger("graph:providers:NodePackageDependencies"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("graph:providers:NodePackageDependencies"); // Packages to consider: // * https://github.com/npm/read-package-json-fast diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 836a3a6f6e5..60dbd969fc6 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -1,4 +1,4 @@ -import logger from "@ui5/logger"; +import {getLogger} from "@ui5/logger"; import {createReader} from "@ui5/fs/resourceFactory"; import SpecificationVersion from "./SpecificationVersion.js"; @@ -66,7 +66,7 @@ class Specification { if (new.target === Specification) { throw new TypeError("Class 'Specification' is abstract. Please use one of the 'types' subclasses"); } - this._log = logger.getLogger(`specifications:types:${this.constructor.name}`); + this._log = getLogger(`specifications:types:${this.constructor.name}`); } /** diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 36fe8000242..1b2f8bd2b90 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -1,7 +1,7 @@ import path from "node:path"; import os from "node:os"; -import logger from "@ui5/logger"; -const log = logger.getLogger("ui5Framework:AbstractResolver"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("ui5Framework:AbstractResolver"); import semver from "semver"; // Matches Semantic Versioning 2.0.0 versions diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index a5d43e197d5..6f4299bfc95 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -3,8 +3,8 @@ import os from "node:os"; import semver from "semver"; import AbstractResolver from "./AbstractResolver.js"; import Installer from "./npm/Installer.js"; -import logger from "@ui5/logger"; -const log = logger.getLogger("ui5Framework:Sapui5Resolver"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("ui5Framework:Sapui5Resolver"); const DIST_PKG_NAME = "@sapui5/distribution-metadata"; diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index 42d9bb4fef1..f50facb1101 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -8,8 +8,8 @@ const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const rename = promisify(fs.rename); const mkdir = promisify(fs.mkdir); -import logger from "@ui5/logger"; -const log = logger.getLogger("ui5Framework:npm:Installer"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("ui5Framework:npm:Installer"); class Installer { constructor({cwd, ui5HomeDir}) { diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index 199d48e5710..61cc904e501 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -1,5 +1,5 @@ -import logger from "@ui5/logger"; -const log = logger.getLogger("ui5Framework:npm:Registry"); +import {getLogger} from "@ui5/logger"; +const log = getLogger("ui5Framework:npm:Registry"); function logConfig(config, configName) { const configValue = config[configName]; diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 39632455b77..eb3323906a7 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -2,7 +2,7 @@ import test from "ava"; import sinonGlobal from "sinon"; import path from "node:path"; import esmock from "esmock"; -import logger from "@ui5/logger"; +import {setLogLevel} from "@ui5/logger"; function noop() {} @@ -328,12 +328,12 @@ test.serial("build: Multiple projects", async (t) => { const deregisterCleanupSigHooksStub = sinon.stub(builder, "_deregisterCleanupSigHooks"); const executeCleanupTasksStub = sinon.stub(builder, "_executeCleanupTasks").resolves(); - logger.setLevel("verbose"); + setLogLevel("verbose"); await builder.build({ destPath: "dest/path", dependencyIncludes: "dependencyIncludes" }); - logger.setLevel("info"); + setLogLevel("info"); t.is(getProjectFilterStub.callCount, 1, "_getProjectFilter got called once"); t.deepEqual(getProjectFilterStub.getCall(0).args[0], { diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index cefc6ab346e..9430d985f1b 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -1,8 +1,8 @@ import test from "ava"; import sinonGlobal from "sinon"; import esmock from "esmock"; -import logger from "@ui5/logger"; -logger.setLevel("perf"); +import {setLogLevel} from "@ui5/logger"; +setLogLevel("perf"); function noop() {} function emptyarray() { diff --git a/packages/project/test/lib/build/helpers/composeTaskList.js b/packages/project/test/lib/build/helpers/composeTaskList.js index 3296cdfac8e..5d057ba3392 100644 --- a/packages/project/test/lib/build/helpers/composeTaskList.js +++ b/packages/project/test/lib/build/helpers/composeTaskList.js @@ -1,23 +1,20 @@ import test from "ava"; import sinon from "sinon"; import esmock from "esmock"; -import logger from "@ui5/logger"; test.beforeEach(async (t) => { t.context.log = { warn: sinon.stub() }; - const logStub = sinon.stub(logger, "getLogger").withArgs("build:helpers:composeTaskList").returns(t.context.log); + const getLoggerStub = sinon.stub().withArgs("build:helpers:composeTaskList").returns(t.context.log); t.context.composeTaskList = await esmock("../../../../lib/build/helpers/composeTaskList.js", { - "@ui5/logger": logStub + "@ui5/logger": { + getLogger: getLoggerStub + } }); }); -test.afterEach.always(() => { - sinon.restore(); -}); - const allTasks = [ "replaceCopyright", "replaceVersion", From 2aae471aa7231282a4dd93cb89b6411a60a3a0df Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 24 Jan 2023 16:00:28 +0100 Subject: [PATCH 0803/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.1-rc.1 to 3.0.1-rc.2 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.1-rc.2/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a5e4b9415fc..c54855f340c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-rc.2", "@ui5/fs": "^3.0.0-rc.3", - "@ui5/logger": "^3.0.1-rc.1", + "@ui5/logger": "^3.0.1-rc.2", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.2.0", @@ -1103,9 +1103,9 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.1-rc.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.1.tgz", - "integrity": "sha512-GV4rCWmSIuOlzShzYdykgnPEjZwJYI+3/TpZ0zD1aq7Uwia1zlLrydJgf8nV7bv0KVJQX8x87AtR+E9JqRUgag==", + "version": "3.0.1-rc.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.2.tgz", + "integrity": "sha512-dTaveuhqYiYzv8ErlndyhfwAjnRct++1KyAn0JzAYxS83GlnMIJkTT21EQHLN1OeIAHwivZWhSNZTfGzGNTt5g==", "dependencies": { "chalk": "^5.2.0", "cli-progress": "^3.11.2", @@ -9976,9 +9976,9 @@ } }, "@ui5/logger": { - "version": "3.0.1-rc.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.1.tgz", - "integrity": "sha512-GV4rCWmSIuOlzShzYdykgnPEjZwJYI+3/TpZ0zD1aq7Uwia1zlLrydJgf8nV7bv0KVJQX8x87AtR+E9JqRUgag==", + "version": "3.0.1-rc.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.2.tgz", + "integrity": "sha512-dTaveuhqYiYzv8ErlndyhfwAjnRct++1KyAn0JzAYxS83GlnMIJkTT21EQHLN1OeIAHwivZWhSNZTfGzGNTt5g==", "requires": { "chalk": "^5.2.0", "cli-progress": "^3.11.2", diff --git a/packages/project/package.json b/packages/project/package.json index c6bbe9e145a..38910475160 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,7 +118,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-rc.2", "@ui5/fs": "^3.0.0-rc.3", - "@ui5/logger": "^3.0.1-rc.1", + "@ui5/logger": "^3.0.1-rc.2", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.2.0", From b7251c43e79405e8b8435818410a669ea43e2dc6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 24 Jan 2023 18:22:56 +0100 Subject: [PATCH 0804/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-rc.3 to 3.0.0-rc.4 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0-rc.4/CHANGELOG.md --- packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c54855f340c..b254e9dc540 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.2", - "@ui5/fs": "^3.0.0-rc.3", + "@ui5/fs": "^3.0.0-rc.4", "@ui5/logger": "^3.0.1-rc.2", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1083,11 +1083,11 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-rc.3", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.3.tgz", - "integrity": "sha512-w0KOqhJxojv/7HD2ADRqF42izqej2iDN07qYWXBr4JD3RSGTGj+jXfv6udsMs1YG3FhFLrAX0+VYs2gxUG+gPg==", + "version": "3.0.0-rc.4", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.4.tgz", + "integrity": "sha512-vD0JNizsehMun4ugi3Mio1YBO5vroE4cYP7jg50qn77lQSXMzY234wJGxQKIUioiPxuCrlSEF5pIpIHuOLNBFQ==", "dependencies": { - "@ui5/logger": "^3.0.1-rc.0", + "@ui5/logger": "^3.0.1-rc.2", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", "globby": "^13.1.3", @@ -9960,11 +9960,11 @@ } }, "@ui5/fs": { - "version": "3.0.0-rc.3", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.3.tgz", - "integrity": "sha512-w0KOqhJxojv/7HD2ADRqF42izqej2iDN07qYWXBr4JD3RSGTGj+jXfv6udsMs1YG3FhFLrAX0+VYs2gxUG+gPg==", + "version": "3.0.0-rc.4", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.4.tgz", + "integrity": "sha512-vD0JNizsehMun4ugi3Mio1YBO5vroE4cYP7jg50qn77lQSXMzY234wJGxQKIUioiPxuCrlSEF5pIpIHuOLNBFQ==", "requires": { - "@ui5/logger": "^3.0.1-rc.0", + "@ui5/logger": "^3.0.1-rc.2", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", "globby": "^13.1.3", diff --git a/packages/project/package.json b/packages/project/package.json index 38910475160..f71dce9d965 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-rc.2", - "@ui5/fs": "^3.0.0-rc.3", + "@ui5/fs": "^3.0.0-rc.4", "@ui5/logger": "^3.0.1-rc.2", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From d0d035172477442f0e644cd2d92088468238b83b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 24 Jan 2023 17:38:12 +0000 Subject: [PATCH 0805/1272] [ui5-project]Release 3.0.0-rc.6 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index be4e8144552..a635c045056 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.5...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.6...HEAD). + + +## [v3.0.0-rc.6] - 2023-01-24 ## [v3.0.0-rc.5] - 2023-01-24 @@ -397,6 +400,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-rc.6]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.5...v3.0.0-rc.6 [v3.0.0-rc.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.4...v3.0.0-rc.5 [v3.0.0-rc.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.3...v3.0.0-rc.4 [v3.0.0-rc.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.2...v3.0.0-rc.3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b254e9dc540..73944021087 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.5", + "version": "3.0.0-rc.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc.5", + "version": "3.0.0-rc.6", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.2", diff --git a/packages/project/package.json b/packages/project/package.json index f71dce9d965..f039c8e09bc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.5", + "version": "3.0.0-rc.6", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From b15fd599bf1c8460dbbb49c27a3a039c6e4c6469 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 24 Jan 2023 19:35:10 +0000 Subject: [PATCH 0806/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-rc.2 to 3.0.0-rc.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-rc.3/CHANGELOG.md --- packages/project/package-lock.json | 22 +++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 73944021087..09e50ef63a6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-rc.6", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-rc.2", + "@ui5/builder": "^3.0.0-rc.3", "@ui5/fs": "^3.0.0-rc.4", "@ui5/logger": "^3.0.1-rc.2", "ajv": "^6.12.6", @@ -1057,13 +1057,13 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-rc.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.2.tgz", - "integrity": "sha512-RZjwS9Ye9Bq63ekkqzvWqumWW4woUt4anjoWtiyKlt384tgOWVX/BhX2/VW/hvo1BhMkL8MpAoBywc4rQNax+Q==", + "version": "3.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.3.tgz", + "integrity": "sha512-P175NHNkhZPOZQetqFQ/cdYFY15ufQaFQhATgv14f4yS2U7X0I3WLYdP+o+iTU0cDmYta83Rd0+Y0Gtbsz3VxQ==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-rc.3", - "@ui5/logger": "^3.0.1-rc.1", + "@ui5/fs": "^3.0.0-rc.4", + "@ui5/logger": "^3.0.1-rc.2", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", @@ -9938,13 +9938,13 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-rc.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.2.tgz", - "integrity": "sha512-RZjwS9Ye9Bq63ekkqzvWqumWW4woUt4anjoWtiyKlt384tgOWVX/BhX2/VW/hvo1BhMkL8MpAoBywc4rQNax+Q==", + "version": "3.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.3.tgz", + "integrity": "sha512-P175NHNkhZPOZQetqFQ/cdYFY15ufQaFQhATgv14f4yS2U7X0I3WLYdP+o+iTU0cDmYta83Rd0+Y0Gtbsz3VxQ==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-rc.3", - "@ui5/logger": "^3.0.1-rc.1", + "@ui5/fs": "^3.0.0-rc.4", + "@ui5/logger": "^3.0.1-rc.2", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index f039c8e09bc..aa81a86ee51 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-rc.2", + "@ui5/builder": "^3.0.0-rc.3", "@ui5/fs": "^3.0.0-rc.4", "@ui5/logger": "^3.0.1-rc.2", "ajv": "^6.12.6", From a3057a0dd8ba8387257e4ab8b63d7e84dc7b76a3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 25 Jan 2023 09:37:13 +0100 Subject: [PATCH 0807/1272] [ui5-project][FIX] npm/Installer: Do not wrap promise provided by rimraf v4 This was overlooked during the dependency upgrade in https://github.com/SAP/ui5-project/pull/550 --- packages/project/lib/ui5Framework/npm/Installer.js | 3 +-- packages/project/test/lib/ui5framework/npm/Installer.js | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index f50facb1101..3c77fc39c3b 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -2,8 +2,7 @@ import path from "node:path"; import fs from "graceful-fs"; import {promisify} from "node:util"; import Registry from "./Registry.js"; -import _rimraf from "rimraf"; -const rimraf = promisify(_rimraf); +import rimraf from "rimraf"; const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const rename = promisify(fs.rename); diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index 336e3bf7446..43f7cb234dd 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -7,7 +7,7 @@ import {fileURLToPath} from "node:url"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); test.beforeEach(async (t) => { - t.context.rimrafStub = sinon.stub().yieldsAsync(); + t.context.rimrafStub = sinon.stub().resolves(); t.context.lockStub = sinon.stub(); t.context.unlockStub = sinon.stub(); From 03b2c8e4f6082abcc678ee6794d7ddf998c6ffec Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 25 Jan 2023 12:41:06 +0000 Subject: [PATCH 0808/1272] [ui5-project]Release 3.0.0-rc.7 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index a635c045056..625451e31f8 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.6...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.7...HEAD). + + +## [v3.0.0-rc.7] - 2023-01-25 +### Bug Fixes +- **npm/Installer:** Do not wrap promise provided by rimraf v4 [`2d1ccda`](https://github.com/SAP/ui5-project/commit/2d1ccda54edd29dabadcb7bad9136bff09da8eac) + ## [v3.0.0-rc.6] - 2023-01-24 @@ -400,6 +406,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-rc.7]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.6...v3.0.0-rc.7 [v3.0.0-rc.6]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.5...v3.0.0-rc.6 [v3.0.0-rc.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.4...v3.0.0-rc.5 [v3.0.0-rc.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.3...v3.0.0-rc.4 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 09e50ef63a6..728a5617005 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.6", + "version": "3.0.0-rc.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc.6", + "version": "3.0.0-rc.7", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.3", diff --git a/packages/project/package.json b/packages/project/package.json index aa81a86ee51..514d274e1ea 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.6", + "version": "3.0.0-rc.7", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 15e51e5907a35a840d60cb1abbbedab27fed40f5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 27 Jan 2023 09:49:30 +0100 Subject: [PATCH 0809/1272] [ui5-project][BREAKING] Schema: Restrict metadata.name for specVersion >= 3.0 (#552) As proposed in chapter 6 of RFC0012([1]), restrict the 'name' property for projects and extensions defining specification version 3.0 and later. BREAKING CHANGE: For projects and extensions defining specVersion 3.0 and later, the metadata.name property must satisfy the following conditions: * Must be at least 3 characters long * Must be no longer than 50 characters * Must contain lowercase characters only * Must contain alphanumeric characters, dash, underscore and period only - Exception: `@` and `/` are allowed at certain positions as explained below * Must start with an alphabetic character or an `@`-character * If a name starts with an `@`-character, it must contain exactly one forward-slash `/` - This is aligned with the npm concept for package scopes - e.g. `@org/lib.name` For details, please see refer to chapter 6 of RFC0012([1]). [1]: SAP/ui5-tooling#664 --- .../lib/specifications/Specification.js | 5 +- .../schema/specVersion/kind/extension.json | 19 ++++ .../kind/extension/project-shim.json | 69 +++++++++---- .../kind/extension/server-middleware.json | 63 ++++++++---- .../specVersion/kind/extension/task.json | 63 ++++++++---- .../schema/specVersion/kind/project.json | 31 ++++++ .../specVersion/kind/project/application.json | 2 +- .../specVersion/kind/project/library.json | 2 +- .../specVersion/kind/project/module.json | 74 ++++++++++---- .../kind/project/theme-library.json | 97 +++++++++++++------ .../test/lib/specifications/Specification.js | 2 +- .../validation/schema/__helper__/extension.js | 54 ++++++++++- .../validation/schema/__helper__/project.js | 68 +++++++++---- .../schema/specVersion/kind/extension.js | 40 ++++++++ .../kind/extension/project-shim.js | 78 +++++++++++++++ .../kind/extension/server-middleware.js | 85 ++++++++++++++++ .../schema/specVersion/kind/extension/task.js | 85 ++++++++++++++++ .../schema/specVersion/kind/project.js | 40 ++++++++ .../specVersion/kind/project/application.js | 68 +++++++++++++ .../specVersion/kind/project/library.js | 67 +++++++++++++ .../schema/specVersion/kind/project/module.js | 73 ++++++++++++++ .../specVersion/kind/project/theme-library.js | 67 +++++++++++++ 22 files changed, 1025 insertions(+), 127 deletions(-) diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 60dbd969fc6..06f27feaa41 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -120,7 +120,7 @@ class Specification { this._log.verbose(err.message); throw new Error( `${config.kind} ${config.metadata.name} defines unsupported Specification Version ` + - `${originalSpecVersion}. Please manually upgrade to 2.0 or higher. ` + + `${originalSpecVersion}. Please manually upgrade to 3.0 or higher. ` + `For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions - ` + `An attempted migration to a supported specification version failed, ` + `likely due to unrecognized configuration. Check verbose log for details.`); @@ -249,6 +249,9 @@ class Specification { } _migrateLegacyProject(config) { + // Stick to 2.6 since 3.0 adds further restrictions (i.e. for the name) and enables + // functionality for extensions that shouldn't be enabled if the specVersion is not + // explicitly set to 3.x config.specVersion = "2.6"; // propertiesFileSourceEncoding (relevant for applications and libraries) default diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension.json b/packages/project/lib/validation/schema/specVersion/kind/extension.json index c5c46910093..2c673c5088e 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension.json @@ -70,6 +70,25 @@ "type": "string" } } + }, + "metadata-3.0": { + "type": "object", + "required": ["name"], + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "minLength": 3, + "maxLength": 50, + "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + "title": "Extension Name", + "description": "Unique identifier for the extension. E.g. ui5-task-fearless-rock", + "errorMessage": "Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name" + }, + "copyright": { + "type": "string" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json index 4f3d9226c14..415785f1dae 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json @@ -6,14 +6,14 @@ "required": ["specVersion", "kind", "type", "metadata", "shims"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] } + "specVersion": { "enum": ["3.0"] } } }, "then": { "additionalProperties": false, "properties": { "specVersion": { - "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] + "enum": ["3.0"] }, "kind": { "enum": ["extension"] @@ -22,7 +22,7 @@ "enum": ["project-shim"] }, "metadata": { - "$ref": "../extension.json#/definitions/metadata" + "$ref": "../extension.json#/definitions/metadata-3.0" }, "shims": { "$ref": "#/definitions/shims" @@ -34,22 +34,53 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { - "enum": ["2.0"] - }, - "kind": { - "enum": ["extension"] - }, - "type": { - "enum": ["project-shim"] - }, - "metadata": { - "$ref": "../extension.json#/definitions/metadata" - }, - "shims": { - "$ref": "#/definitions/shims" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { + "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] + }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["project-shim"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "shims": { + "$ref": "#/definitions/shims" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { + "enum": ["2.0"] + }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["project-shim"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "shims": { + "$ref": "#/definitions/shims" + } } } }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json index 151c0c22288..a65db5b56ad 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json @@ -7,13 +7,13 @@ "required": ["specVersion", "kind", "type", "metadata", "middleware"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] } + "specVersion": { "enum": ["3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] }, + "specVersion": { "enum": ["3.0"] }, "kind": { "enum": ["extension"] }, @@ -21,7 +21,7 @@ "enum": ["server-middleware"] }, "metadata": { - "$ref": "../extension.json#/definitions/metadata" + "$ref": "../extension.json#/definitions/metadata-3.0" }, "middleware": { "$ref": "#/definitions/middleware" @@ -33,20 +33,49 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["extension"] - }, - "type": { - "enum": ["server-middleware"] - }, - "metadata": { - "$ref": "../extension.json#/definitions/metadata" - }, - "middleware": { - "$ref": "#/definitions/middleware" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["server-middleware"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "middleware": { + "$ref": "#/definitions/middleware" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["server-middleware"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "middleware": { + "$ref": "#/definitions/middleware" + } } } }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/kind/extension/task.json index ab5413c7852..f19291e0c17 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/task.json @@ -6,13 +6,13 @@ "required": ["specVersion", "kind", "type", "metadata", "task"], "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] } + "specVersion": { "enum": ["3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "3.0"] }, + "specVersion": { "enum": ["3.0"] }, "kind": { "enum": ["extension"] }, @@ -20,7 +20,7 @@ "enum": ["task"] }, "metadata": { - "$ref": "../extension.json#/definitions/metadata" + "$ref": "../extension.json#/definitions/metadata-3.0" }, "task": { "$ref": "#/definitions/task" @@ -32,20 +32,49 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["extension"] - }, - "type": { - "enum": ["task"] - }, - "metadata": { - "$ref": "../extension.json#/definitions/metadata" - }, - "task": { - "$ref": "#/definitions/task" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4", "2.5", "2.6"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["task"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "task": { + "$ref": "#/definitions/task" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["extension"] + }, + "type": { + "enum": ["task"] + }, + "metadata": { + "$ref": "../extension.json#/definitions/metadata" + }, + "task": { + "$ref": "#/definitions/task" + } } } }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/project.json b/packages/project/lib/validation/schema/specVersion/kind/project.json index 3d6a1a49bcb..3d85545849b 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project.json @@ -93,6 +93,37 @@ } } }, + "metadata-3.0": { + "type": "object", + "required": ["name"], + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "minLength": 3, + "maxLength": 50, + "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + "title": "Project Name", + "description": "Unique identifier for the project. E.g. organization.product.project", + "errorMessage": "Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name" + }, + "copyright": { + "type": "string" + }, + "deprecated": { + "type": "boolean", + "default": false + }, + "sapInternal": { + "type": "boolean", + "default": false + }, + "allowSapInternal": { + "type": "boolean", + "default": false + } + } + }, "resources-configuration-propertiesFileSourceEncoding": { "enum": ["UTF-8", "ISO-8859-1"], "default": "UTF-8", diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/kind/project/application.json index fd0b063c2d0..81073634a9b 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/application.json @@ -20,7 +20,7 @@ "enum": ["application"] }, "metadata": { - "$ref": "../project.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata-3.0" }, "framework": { "$ref": "../project.json#/definitions/framework" diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/kind/project/library.json index 86f1efe0a36..d36a1f83e18 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/library.json @@ -20,7 +20,7 @@ "enum": ["library"] }, "metadata": { - "$ref": "../project.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata-3.0" }, "framework": { "$ref": "../project.json#/definitions/framework" diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/kind/project/module.json index 8bd717ff534..9684f27d190 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/module.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.5", "2.6", "3.0"] } + "specVersion": { "enum": ["3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5", "2.6", "3.0"] }, + "specVersion": { "enum": ["3.0"] }, "kind": { "enum": ["project", null] }, @@ -20,7 +20,7 @@ "enum": ["module"] }, "metadata": { - "$ref": "../project.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata-3.0" }, "resources": { "$ref": "#/definitions/resources" @@ -40,13 +40,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + "specVersion": { "enum": ["2.5", "2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "specVersion": { "enum": ["2.5", "2.6"] }, "kind": { "enum": ["project", null] }, @@ -59,6 +59,12 @@ "resources": { "$ref": "#/definitions/resources" }, + "builder": { + "$ref": "#/definitions/builder-specVersion-2.5" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, "customConfiguration": { "type": "object", "additionalProperties": true @@ -66,25 +72,53 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["module"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "resources": { - "$ref": "#/definitions/resources" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["module"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["module"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "resources": { + "$ref": "#/definitions/resources" + } } } } }, - "definitions": { "resources": { "type": "object", diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json index fc292179a6a..522b7064a77 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["2.5", "2.6", "3.0"] } + "specVersion": { "enum": ["3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5", "2.6", "3.0"] }, + "specVersion": { "enum": ["3.0"] }, "kind": { "enum": ["project", null] }, @@ -20,7 +20,7 @@ "enum": ["theme-library"] }, "metadata": { - "$ref": "../project.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata-3.0" }, "framework": { "$ref": "../project.json#/definitions/framework" @@ -43,13 +43,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + "specVersion": { "enum": ["2.5", "2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "specVersion": { "enum": ["2.5", "2.6"] }, "kind": { "enum": ["project", null] }, @@ -66,7 +66,7 @@ "$ref": "library.json#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -78,34 +78,71 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["theme-library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "library.json#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["theme-library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "library.json#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["theme-library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "library.json#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } }, - "definitions": { "builder": { "type": "object", diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index 6fbafbe7441..aee440410fe 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -149,7 +149,7 @@ test("Migrate legacy project unexpected configuration", async (t) => { const err = await t.throwsAsync(Specification.create(t.context.basicProjectInput)); t.is(err.message, - "project application.a defines unsupported Specification Version 1.0. Please manually upgrade to 2.0 or " + + "project application.a defines unsupported Specification Version 1.0. Please manually upgrade to 3.0 or " + "higher. For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions - " + "An attempted migration to a supported specification version failed, likely due to unrecognized " + "configuration. Check verbose log for details.", diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js index 33143db77b5..79799ee9636 100644 --- a/packages/project/test/lib/validation/schema/__helper__/extension.js +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -18,7 +18,7 @@ export default { customConfiguration.defineTests(test, assertValidation, type, additionalConfiguration); - ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { test(`kind: extension / type: ${type} basic (${specVersion})`, async (t) => { await assertValidation(t, Object.assign({ "specVersion": specVersion, @@ -66,5 +66,57 @@ export default { }]); }); }); + + ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + test(`kind: extension / type: ${type}: Invalid metadata.name (${specVersion})`, async (t) => { + await assertValidation(t, Object.assign({ + "specVersion": specVersion, + "type": type, + "metadata": { + "name": {} + } + }, additionalConfiguration), [{ + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string" + } + }]); + }); + }); + + ["3.0"].forEach((specVersion) => { + test(`kind: extension / type: ${type}: Invalid metadata.name (${specVersion})`, async (t) => { + await assertValidation(t, Object.assign({ + "specVersion": specVersion, + "type": type, + "metadata": { + "name": {} + } + }, additionalConfiguration), [{ + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, { + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string", + } + }] + }, + }]); + }); + }); } }; diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index 777aeba5153..50737b76121 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -75,25 +75,6 @@ export default { }]); }); - test(`${type} (specVersion ${specVersion}): Invalid metadata.name`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "type": type, - "metadata": { - "name": {} - } - }, [ - { - dataPath: "/metadata/name", - keyword: "type", - message: "should be string", - params: { - type: "string" - } - } - ]); - }); - test(`${type} (specVersion ${specVersion}): Invalid metadata.copyright`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -278,5 +259,54 @@ export default { }]); }); }); + + ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + test(`${type} (specVersion ${specVersion}): Invalid metadata.name`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": {} + } + }, [ + { + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string" + } + } + ]); + }); + }); + + ["3.0"].forEach((specVersion) => { + test(`${type} (specVersion ${specVersion}): Invalid metadata.name`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": type, + "metadata": { + "name": {} + } + }, [ + { + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "type", + message: "should be string", + params: { + type: "string", + } + }] + }, + } + ]); + }); + }); } }; diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension.js index 565b92245ac..817e6c31b0d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension.js @@ -152,3 +152,43 @@ test.after.always((t) => { }]); }); }); + +test("Legacy: Special characters in name (task)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "task", + "metadata": { + "name": "ä".repeat(51) + }, + "task": { + "path": "task.js" + } + }); +}); + +test("Legacy: Special characters in name (server-middleware)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "server-middleware", + "metadata": { + "name": "@my(middleware)" + }, + "middleware": { + "path": "middleware.js" + } + }); +}); + +test("Legacy: Special characters in name (project-shim)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "my/(project)-shim" + }, + "shims": {} + }); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js index 3fb2fb286a5..b2583a12b4f 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js @@ -15,6 +15,11 @@ async function assertValidation(t, config, expectedErrors = undefined) { }); validationError.errors.forEach((error) => { delete error.schemaPath; + if (error.params && Array.isArray(error.params.errors)) { + error.params.errors.forEach(($) => { + delete $.schemaPath; + }); + } }); t.deepEqual(validationError.errors, expectedErrors); } else { @@ -122,6 +127,79 @@ test.after.always((t) => { }); }); +["3.0"].forEach(function(specVersion) { + test(`Invalid extension name (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "illegal/name" + }, + "shims": {} + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "pattern", + message: `should match pattern "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$"`, + params: { + pattern: "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + } + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "a" + }, + "shims": {} + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "minLength", + message: "should NOT be shorter than 3 characters", + params: { + limit: 3, + } + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "project-shim", + "metadata": { + "name": "a".repeat(51) + }, + "shims": {} + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "maxLength", + message: "should NOT be longer than 50 characters", + params: { + limit: 50, + } + }] + }, + }]); + }); +}); const additionalConfiguration = { "shims": { diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js index 6a97ac2187e..54dab5cbddc 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js @@ -15,6 +15,11 @@ async function assertValidation(t, config, expectedErrors = undefined) { }); validationError.errors.forEach((error) => { delete error.schemaPath; + if (error.params && Array.isArray(error.params.errors)) { + error.params.errors.forEach(($) => { + delete $.schemaPath; + }); + } }); t.deepEqual(validationError.errors, expectedErrors); } else { @@ -40,6 +45,86 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); +["3.0"].forEach(function(specVersion) { + test(`Invalid extension name (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "server-middleware", + "metadata": { + "name": "illegal-🦜" + }, + "middleware": { + "path": "/bar" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "pattern", + message: `should match pattern "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$"`, + params: { + pattern: "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + } + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "server-middleware", + "metadata": { + "name": "a" + }, + "middleware": { + "path": "/bar" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "minLength", + message: "should NOT be shorter than 3 characters", + params: { + limit: 3, + } + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "server-middleware", + "metadata": { + "name": "a".repeat(51) + }, + "middleware": { + "path": "/bar" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "maxLength", + message: "should NOT be longer than 50 characters", + params: { + limit: 50, + } + }] + }, + }]); + }); +}); + const additionalConfiguration = { "middleware": { "path": "/foo" diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js index 7abbf36d07c..63f5be3e9e7 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js @@ -15,6 +15,11 @@ async function assertValidation(t, config, expectedErrors = undefined) { }); validationError.errors.forEach((error) => { delete error.schemaPath; + if (error.params && Array.isArray(error.params.errors)) { + error.params.errors.forEach(($) => { + delete $.schemaPath; + }); + } }); t.deepEqual(validationError.errors, expectedErrors); } else { @@ -40,6 +45,86 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); +["3.0"].forEach(function(specVersion) { + test(`Invalid extension name (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "task", + "metadata": { + "name": "illegal-🦜" + }, + "task": { + "path": "/bar" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "pattern", + message: `should match pattern "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$"`, + params: { + pattern: "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + } + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "task", + "metadata": { + "name": "a" + }, + "task": { + "path": "/bar" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "minLength", + message: "should NOT be shorter than 3 characters", + params: { + limit: 3, + } + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "kind": "extension", + "type": "task", + "metadata": { + "name": "a".repeat(51) + }, + "task": { + "path": "/bar" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "maxLength", + message: "should NOT be longer than 50 characters", + params: { + limit: 50, + } + }] + }, + }]); + }); +}); + const additionalConfiguration = { "task": { "path": "/foo" diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project.js b/packages/project/test/lib/validation/schema/specVersion/kind/project.js index 231c0ef2908..2c9c2290ae2 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project.js @@ -195,3 +195,43 @@ test("No specVersion", async (t) => { } }]); }); + +test("Legacy: Special characters in name (application)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "application", + "metadata": { + "name": "/".repeat(51) + } + }); +}); + +test("Legacy: Special characters in name (library)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "library", + "metadata": { + "name": "my/(library)" + } + }); +}); + +test("Legacy: Special characters in name (theme-library)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "theme-library", + "metadata": { + "name": "my/(theme)-library" + } + }); +}); + +test("Legacy: Special characters in name (module)", async (t) => { + await assertValidation(t, { + "specVersion": "2.0", + "type": "module", + "metadata": { + "name": "my/(module)" + } + }); +}); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index 81b959e4f4d..4c0a73d5fca 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -942,4 +942,72 @@ test.after.always((t) => { }); }); +["3.0"].forEach(function(specVersion) { + test(`Invalid project name (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "illegal/name" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "pattern", + message: `should match pattern "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$"`, + params: { + pattern: "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + }, + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "a" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "minLength", + message: "should NOT be shorter than 3 characters", + params: { + limit: 3, + }, + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "a".repeat(51) + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "maxLength", + message: "should NOT be longer than 50 characters", + params: { + limit: 50, + }, + }] + }, + }]); + }); +}); + project.defineTests(test, assertValidation, "application"); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js index 3ba3ecfd612..60e0c6225cf 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js @@ -1115,4 +1115,71 @@ test.after.always((t) => { }); }); +["3.0"].forEach(function(specVersion) { + test(`Invalid project name (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "illegal-🦜" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "pattern", + message: `should match pattern "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$"`, + params: { + pattern: "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + }, + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "a" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "minLength", + message: "should NOT be shorter than 3 characters", + params: { + limit: 3, + }, + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "a".repeat(51) + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "maxLength", + message: "should NOT be longer than 50 characters", + params: { + limit: 50, + }, + }] + }, + }]); + }); +}); project.defineTests(test, assertValidation, "library"); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js index a750806b41e..06e059cf7fc 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js @@ -15,6 +15,11 @@ async function assertValidation(t, config, expectedErrors = undefined) { }); validationError.errors.forEach((error) => { delete error.schemaPath; + if (error.params && Array.isArray(error.params.errors)) { + error.params.errors.forEach(($) => { + delete $.schemaPath; + }); + } }); t.deepEqual(validationError.errors, expectedErrors); } else { @@ -344,4 +349,72 @@ test.after.always((t) => { }); }); +["3.0"].forEach(function(specVersion) { + test(`Invalid project name (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "module", + "metadata": { + "name": "illegal-🦜" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "pattern", + message: `should match pattern "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$"`, + params: { + pattern: "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + } + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "module", + "metadata": { + "name": "a" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "minLength", + message: "should NOT be shorter than 3 characters", + params: { + limit: 3, + }, + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "module", + "metadata": { + "name": "a".repeat(51) + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "maxLength", + message: "should NOT be longer than 50 characters", + params: { + limit: 50, + }, + }] + }, + }]); + }); +}); + project.defineTests(test, assertValidation, "module"); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js index 24abd992c69..220f193fae6 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js @@ -348,4 +348,71 @@ test.after.always((t) => { }); }); +["3.0"].forEach(function(specVersion) { + test(`Invalid project name (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "theme-library", + "metadata": { + "name": "illegal-🦜" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "pattern", + message: `should match pattern "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$"`, + params: { + pattern: "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + }, + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "theme-library", + "metadata": { + "name": "a" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "minLength", + message: "should NOT be shorter than 3 characters", + params: { + limit: 3, + }, + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "theme-library", + "metadata": { + "name": "a".repeat(51) + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "maxLength", + message: "should NOT be longer than 50 characters", + params: { + limit: 50, + }, + }] + }, + }]); + }); +}); project.defineTests(test, assertValidation, "theme-library"); From 1b5f45edb4871fcc99b771bf398cdd30e344c43d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 25 Jan 2023 15:35:58 +0100 Subject: [PATCH 0810/1272] [ui5-project][INTERNAL] Workspace Schema: Validate metadata.name Apply the same rules as for project and extension names. Also see https://github.com/SAP/ui5-project/pull/552 Also update links to future Workspace configuration page. --- .../lib/validation/schema/ui5-workspace.json | 9 +- .../lib/validation/schema/ui5-workspace.js | 127 +++++++++++++++++- 2 files changed, 127 insertions(+), 9 deletions(-) diff --git a/packages/project/lib/validation/schema/ui5-workspace.json b/packages/project/lib/validation/schema/ui5-workspace.json index c5889f15732..948239d4923 100644 --- a/packages/project/lib/validation/schema/ui5-workspace.json +++ b/packages/project/lib/validation/schema/ui5-workspace.json @@ -10,7 +10,7 @@ "additionalProperties": false, "specVersion": { "enum": ["workspace/1.0"], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"workspace/1.0\"\nFor details see: // TODO: Add link to Documentation" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"workspace/1.0\"\nFor details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions" }, "metadata": { "$ref": "#/definitions/metadata" @@ -27,7 +27,12 @@ "additionalProperties": false, "name": { "type": "string", - "errorMessage": "Workspace name is not provided. There must be a wokrspace name defined." + "minLength": 3, + "maxLength": 50, + "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + "title": "Workspace Name", + "description": "Identifier for the workspace configuration. Workspaces named 'default' will be used automatically by UI5 Tooling", + "errorMessage": "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name" } } }, diff --git a/packages/project/test/lib/validation/schema/ui5-workspace.js b/packages/project/test/lib/validation/schema/ui5-workspace.js index 59dee23d3a9..55633063538 100644 --- a/packages/project/test/lib/validation/schema/ui5-workspace.js +++ b/packages/project/test/lib/validation/schema/ui5-workspace.js @@ -62,7 +62,7 @@ test("Empty config", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "workspace/1.0" -For details see: // TODO: Add link to Documentation`, +For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, params: { errors: [ { @@ -143,6 +143,121 @@ test("Missing metadata.name", async (t) => { ); }); +test("Invalid metadata.name: Illegal characters", async (t) => { + await assertValidation( + t, + { + specVersion: "workspace/1.0", + metadata: { + name: "🦭🦭🦭" + }, + dependencyManagement: { + resolutions: [ + { + path: "path/to/resource/1", + }, + ], + }, + }, + [ + { + dataPath: "/metadata/name", + keyword: "errorMessage", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + params: { + errors: [ + { + dataPath: "/metadata/name", + keyword: "pattern", + message: `should match pattern "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$"`, + params: { + pattern: "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + }, + }, + ], + }, + }, + ] + ); +}); + +test("Invalid metadata.name: Too short", async (t) => { + await assertValidation( + t, + { + specVersion: "workspace/1.0", + metadata: { + name: "a" + }, + dependencyManagement: { + resolutions: [ + { + path: "path/to/resource/1", + }, + ], + }, + }, + [ + { + dataPath: "/metadata/name", + keyword: "errorMessage", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + params: { + errors: [ + { + dataPath: "/metadata/name", + keyword: "minLength", + message: "should NOT be shorter than 3 characters", + params: { + limit: 3, + }, + }, + ], + }, + }, + ] + ); +}); + + +test("Invalid metadata.name: Too long", async (t) => { + await assertValidation( + t, + { + specVersion: "workspace/1.0", + metadata: { + name: "b".repeat(51) + }, + dependencyManagement: { + resolutions: [ + { + path: "path/to/resource/1", + }, + ], + }, + }, + [ + { + dataPath: "/metadata/name", + keyword: "errorMessage", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + params: { + errors: [ + { + dataPath: "/metadata/name", + keyword: "maxLength", + message: "should NOT be longer than 50 characters", + params: { + limit: 50, + }, + } + ], + }, + }, + ] + ); +}); + test("Invalid fields", async (t) => { await assertValidation( t, @@ -164,7 +279,7 @@ test("Invalid fields", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "workspace/1.0" -For details see: // TODO: Add link to Documentation`, +For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, params: { errors: [ { @@ -182,8 +297,7 @@ For details see: // TODO: Add link to Documentation`, { dataPath: "/metadata/name", keyword: "errorMessage", - message: - "Workspace name is not provided. There must be a wokrspace name defined.", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", params: { errors: [ { @@ -234,7 +348,7 @@ test("Invalid types", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "workspace/1.0" -For details see: // TODO: Add link to Documentation`, +For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, params: { errors: [ { @@ -252,8 +366,7 @@ For details see: // TODO: Add link to Documentation`, { dataPath: "/metadata/name", keyword: "errorMessage", - message: - "Workspace name is not provided. There must be a wokrspace name defined.", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", params: { errors: [ { From c77b593e80f65c33b985935e842902fa8af24ef9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 27 Jan 2023 15:38:40 +0100 Subject: [PATCH 0811/1272] [ui5-project][FIX] Registry: Do not use custom logger for pacote @ui5/logger used to be based on 'npmlog', which allowed us to pass the same instance to pacote. Since this is no longer the case, remove the respective code. --- packages/project/lib/ui5Framework/npm/Registry.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index 61cc904e501..83833ec41ee 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -41,9 +41,6 @@ class Registry { const opts = { cache: this._cacheDir }; - if (log.isLevelEnabled("verbose")) { - opts.log = log._getLogger(); - } const config = libnpmconfig.read(opts, { cwd: this._cwd }).toJSON(); From 7a4e7168b3d0da2a4562fc671e127ff22be1a46a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 29 Jan 2023 03:20:43 +0000 Subject: [PATCH 0812/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 150 ++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 78 insertions(+), 78 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 728a5617005..d3e1eb87987 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -25,7 +25,7 @@ "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.1", - "rimraf": "^4.1.1", + "rimraf": "^4.1.2", "semver": "^7.3.8", "xml2js": "^0.4.23" }, @@ -36,10 +36,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.32.0", + "eslint": "^8.33.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^39.6.7", + "eslint-plugin-jsdoc": "^39.7.0", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -58,9 +58,9 @@ } }, "node_modules/@adobe/css-tools": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.0.2.tgz", - "integrity": "sha512-Fx6tYjk2wKUgLi8uMANZr8GNZx05u44ArIJldn9VxLvolzlJVgHbTUCbwhMd6bcYky178+WUSxPHO3DAtGLWpw==" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.1.0.tgz", + "integrity": "sha512-mMVJ/j/GbZ/De4ZHWbQAQO1J6iVnjtZLc9WEdkUQb8S/Bu2cAF2bETXUgMAdvMG3/ngtKmcNBe+Zms9bg6jnQQ==" }, "node_modules/@ampproject/remapping": { "version": "2.2.0", @@ -87,9 +87,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.20.10", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.10.tgz", - "integrity": "sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg==", + "version": "7.20.14", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", + "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", "dev": true, "engines": { "node": ">=6.9.0" @@ -135,9 +135,9 @@ } }, "node_modules/@babel/generator": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.7.tgz", - "integrity": "sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw==", + "version": "7.20.14", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", + "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", "dev": true, "dependencies": { "@babel/types": "^7.20.7", @@ -500,9 +500,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.19.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", - "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -1191,9 +1191,9 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "node_modules/acorn": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", - "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", "bin": { "acorn": "bin/acorn" }, @@ -1743,9 +1743,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001446", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001446.tgz", - "integrity": "sha512-fEoga4PrImGcwUUGEol/PoFCSBnSkA9drgdkxXkJLsUBOnJ8rs3zDv6ApqYXGQFOyMPsjh79naWhF4DAxbF8rw==", + "version": "1.0.30001449", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz", + "integrity": "sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==", "dev": true, "funding": [ { @@ -3053,9 +3053,9 @@ } }, "node_modules/eslint": { - "version": "8.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.32.0.tgz", - "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==", + "version": "8.33.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", + "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", "dev": true, "dependencies": { "@eslint/eslintrc": "^1.4.1", @@ -3143,9 +3143,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "39.6.7", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.7.tgz", - "integrity": "sha512-0mrzXrHvL2ZLe3QK9X0OEDy7Fs2cFQ/f1d1G5KHEGD+13D1qg56Iovq0uOkYf5bJlHiKPytWVgOOO9y7kLW3VA==", + "version": "39.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.7.0.tgz", + "integrity": "sha512-4gWAJABzWzfu/LBNLo5cdZph8Ce8QY/Og3FvzU2TsBz50hDB3gBlMJulrmFvPHFXnSxmB6mzMf3dpi4yxdFKfQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.36.1", @@ -3341,9 +3341,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.19.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", - "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -4116,9 +4116,9 @@ } }, "node_modules/http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" }, "node_modules/http-proxy-agent": { "version": "5.0.0", @@ -5682,9 +5682,9 @@ } }, "node_modules/minimatch": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.5.tgz", - "integrity": "sha512-2/WxnHMkH7qFS+pG8ibLN5GZdx5Y0aLlgFSghaKRUpkeEmC85wZRb/xDvj9jv601KdNOS2G/nNqj2h6k42yxBQ==", + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.6.tgz", + "integrity": "sha512-6bR3UIeh/DF8+p6A9Spyuy67ShOq42rOkHWi7eUe3Ua99Zo5lZfGC6lJJWkeoK4k9jQFT3Pl7czhTXimG2XheA==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -7736,9 +7736,9 @@ } }, "node_modules/rimraf": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.1.tgz", - "integrity": "sha512-Z4Y81w8atcvaJuJuBB88VpADRH66okZAuEm+Jtaufa+s7rZmIz+Hik2G53kGaNytE7lsfXyWktTmfVz0H9xuDg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.2.tgz", + "integrity": "sha512-BlIbgFryTbw3Dz6hyoWFhKk+unCcHMSkZGrTFVAx2WmttdBSonsdtRlwiuTbDqTKr+UlXIUqJVS4QT5tUzGENQ==", "bin": { "rimraf": "dist/cjs/src/bin.js" }, @@ -9155,9 +9155,9 @@ }, "dependencies": { "@adobe/css-tools": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.0.2.tgz", - "integrity": "sha512-Fx6tYjk2wKUgLi8uMANZr8GNZx05u44ArIJldn9VxLvolzlJVgHbTUCbwhMd6bcYky178+WUSxPHO3DAtGLWpw==" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.1.0.tgz", + "integrity": "sha512-mMVJ/j/GbZ/De4ZHWbQAQO1J6iVnjtZLc9WEdkUQb8S/Bu2cAF2bETXUgMAdvMG3/ngtKmcNBe+Zms9bg6jnQQ==" }, "@ampproject/remapping": { "version": "2.2.0", @@ -9178,9 +9178,9 @@ } }, "@babel/compat-data": { - "version": "7.20.10", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.10.tgz", - "integrity": "sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg==", + "version": "7.20.14", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", + "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", "dev": true }, "@babel/core": { @@ -9215,9 +9215,9 @@ } }, "@babel/generator": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.7.tgz", - "integrity": "sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw==", + "version": "7.20.14", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", + "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", "dev": true, "requires": { "@babel/types": "^7.20.7", @@ -9493,9 +9493,9 @@ } }, "globals": { - "version": "13.19.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", - "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -10060,9 +10060,9 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "acorn": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", - "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==" + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==" }, "acorn-jsx": { "version": "5.3.2", @@ -10460,9 +10460,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001446", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001446.tgz", - "integrity": "sha512-fEoga4PrImGcwUUGEol/PoFCSBnSkA9drgdkxXkJLsUBOnJ8rs3zDv6ApqYXGQFOyMPsjh79naWhF4DAxbF8rw==", + "version": "1.0.30001449", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz", + "integrity": "sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==", "dev": true }, "catharsis": { @@ -11447,9 +11447,9 @@ } }, "eslint": { - "version": "8.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.32.0.tgz", - "integrity": "sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==", + "version": "8.33.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", + "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", "dev": true, "requires": { "@eslint/eslintrc": "^1.4.1", @@ -11569,9 +11569,9 @@ } }, "globals": { - "version": "13.19.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", - "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -11660,9 +11660,9 @@ } }, "eslint-plugin-jsdoc": { - "version": "39.6.7", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.7.tgz", - "integrity": "sha512-0mrzXrHvL2ZLe3QK9X0OEDy7Fs2cFQ/f1d1G5KHEGD+13D1qg56Iovq0uOkYf5bJlHiKPytWVgOOO9y7kLW3VA==", + "version": "39.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.7.0.tgz", + "integrity": "sha512-4gWAJABzWzfu/LBNLo5cdZph8Ce8QY/Og3FvzU2TsBz50hDB3gBlMJulrmFvPHFXnSxmB6mzMf3dpi4yxdFKfQ==", "dev": true, "requires": { "@es-joy/jsdoccomment": "~0.36.1", @@ -12218,9 +12218,9 @@ } }, "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" }, "http-proxy-agent": { "version": "5.0.0", @@ -13367,9 +13367,9 @@ "dev": true }, "minimatch": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.5.tgz", - "integrity": "sha512-2/WxnHMkH7qFS+pG8ibLN5GZdx5Y0aLlgFSghaKRUpkeEmC85wZRb/xDvj9jv601KdNOS2G/nNqj2h6k42yxBQ==", + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.6.tgz", + "integrity": "sha512-6bR3UIeh/DF8+p6A9Spyuy67ShOq42rOkHWi7eUe3Ua99Zo5lZfGC6lJJWkeoK4k9jQFT3Pl7czhTXimG2XheA==", "requires": { "brace-expansion": "^2.0.1" } @@ -14856,9 +14856,9 @@ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" }, "rimraf": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.1.tgz", - "integrity": "sha512-Z4Y81w8atcvaJuJuBB88VpADRH66okZAuEm+Jtaufa+s7rZmIz+Hik2G53kGaNytE7lsfXyWktTmfVz0H9xuDg==" + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.2.tgz", + "integrity": "sha512-BlIbgFryTbw3Dz6hyoWFhKk+unCcHMSkZGrTFVAx2WmttdBSonsdtRlwiuTbDqTKr+UlXIUqJVS4QT5tUzGENQ==" }, "run-parallel": { "version": "1.2.0", diff --git a/packages/project/package.json b/packages/project/package.json index 514d274e1ea..b086d2f34fe 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -132,7 +132,7 @@ "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.1", - "rimraf": "^4.1.1", + "rimraf": "^4.1.2", "semver": "^7.3.8", "xml2js": "^0.4.23" }, @@ -143,10 +143,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.32.0", + "eslint": "^8.33.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^39.6.7", + "eslint-plugin-jsdoc": "^39.7.0", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 607b0d6b0435855b227cda19bcb97793e931a3ba Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 29 Jan 2023 11:36:37 +0100 Subject: [PATCH 0813/1272] [ui5-project][INTERNAL] Specifications: Ensure path-mapping log messages are written synchronously per project Otherwise they can get mixed up with another project's log output --- .../lib/specifications/types/Application.js | 2 +- .../lib/specifications/types/Library.js | 22 +++++------ .../lib/specifications/types/Module.js | 37 +++++++++++-------- .../lib/specifications/types/ThemeLibrary.js | 23 ++++++------ .../lib/specifications/types/Application.js | 2 +- .../test/lib/specifications/types/Library.js | 2 +- .../test/lib/specifications/types/Module.js | 2 +- .../lib/specifications/types/ThemeLibrary.js | 2 +- 8 files changed, 49 insertions(+), 43 deletions(-) diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index 9b5696155ec..3b672e67065 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -93,7 +93,7 @@ class Application extends ComponentProject { if (!(await this._dirExists("/" + this._webappPath))) { throw new Error( - `Unable to find directory '${this._webappPath}' in application project ${this.getName()}`); + `Unable to find source directory '${this._webappPath}' in application project ${this.getName()}`); } } diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index 142bea75467..6927df656c4 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -126,22 +126,22 @@ class Library extends ComponentProject { this._testPath = config.resources.configuration.paths.test; } } + if (!(await this._dirExists("/" + this._testPath))) { + this._testPathExists = false; + } else { + this._testPathExists = true; + } + if (!(await this._dirExists("/" + this._srcPath))) { + throw new Error( + `Unable to find source directory '${this._srcPath}' in library project ${this.getName()}`); + } this._log.verbose(`Path mapping for library project ${this.getName()}:`); this._log.verbose(` Physical root path: ${this.getPath()}`); this._log.verbose(` Mapped to:`); this._log.verbose(` /resources/ => ${this._srcPath}`); - this._log.verbose(` /test-resources/ => ${this._testPath}`); - - if (!(await this._dirExists("/" + this._srcPath))) { - throw new Error( - `Unable to find directory '${this._srcPath}' in library project ${this.getName()}`); - } - if (!(await this._dirExists("/" + this._testPath))) { - this._log.verbose(` (/test-resources/ target does not exist)`); - } else { - this._testPathExists = true; - } + this._log.verbose( + ` /test-resources/ => ${this._testPath}${this._testPathExists ? "" : " [does not exist]"}`); } /** diff --git a/packages/project/lib/specifications/types/Module.js b/packages/project/lib/specifications/types/Module.js index c1739adabe1..ef0ab068921 100644 --- a/packages/project/lib/specifications/types/Module.js +++ b/packages/project/lib/specifications/types/Module.js @@ -87,32 +87,37 @@ class Module extends Project { async _configureAndValidatePaths(config) { await super._configureAndValidatePaths(config); - this._log.verbose(`Path mapping for library project ${this.getName()}:`); + this._log.verbose(`Path mapping for module project ${this.getName()}:`); this._log.verbose(` Physical root path: ${this.getPath()}`); this._log.verbose(` Mapped to:`); if (config.resources?.configuration?.paths) { - this._paths = await Promise.all(Object.entries(config.resources.configuration.paths) - .map(async ([virBasePath, relFsPath]) => { + const pathMappings = Object.entries(config.resources.configuration.paths); + if (this._log.isLevelEnabled("verbose")) { + // Log synchronously before async dir-exists checks + pathMappings.forEach(([virBasePath, relFsPath]) => { this._log.verbose(` ${virBasePath} => ${relFsPath}`); - if (!(await this._dirExists("/" + relFsPath))) { - throw new Error( - `Unable to find directory '${relFsPath}' in module project ${this.getName()}`); - } - return { - name: `'${relFsPath}'' reader for module project ${this.getName()}`, - virBasePath, - fsBasePath: fsPath.join(this.getPath(), relFsPath), - project: this, - excludes: config.builder?.resources?.excludes - }; - })); + }); + } + this._paths = await Promise.all(pathMappings.map(async ([virBasePath, relFsPath]) => { + if (!(await this._dirExists("/" + relFsPath))) { + throw new Error( + `Unable to find source directory '${relFsPath}' in module project ${this.getName()}`); + } + return { + name: `'${relFsPath}'' reader for module project ${this.getName()}`, + virBasePath, + fsBasePath: fsPath.join(this.getPath(), relFsPath), + project: this, + excludes: config.builder?.resources?.excludes + }; + })); } else { + this._log.verbose(` / => `); if (!(await this._dirExists("/"))) { throw new Error( `Unable to find root directory of module project ${this.getName()}`); } - this._log.verbose(` / => `); this._paths = [{ name: `Root reader for module project ${this.getName()}`, virBasePath: "/", diff --git a/packages/project/lib/specifications/types/ThemeLibrary.js b/packages/project/lib/specifications/types/ThemeLibrary.js index da2c8be834a..f6df00dc725 100644 --- a/packages/project/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/lib/specifications/types/ThemeLibrary.js @@ -127,21 +127,22 @@ class ThemeLibrary extends Project { } } - this._log.verbose(`Path mapping for theme-library project ${this.getName()}:`); - this._log.verbose(` Physical root path: ${this.getPath()}`); - this._log.verbose(` Mapped to:`); - this._log.verbose(` /resources/ => ${this._srcPath}`); - this._log.verbose(` /test-resources/ => ${this._testPath}`); - - if (!(await this._dirExists("/" + this._srcPath))) { - throw new Error( - `Unable to find directory '${this._srcPath}' in theme-library project ${this.getName()}`); - } if (!(await this._dirExists("/" + this._testPath))) { - this._log.verbose(` (/test-resources/ target does not exist)`); + this._testPathExists = false; } else { this._testPathExists = true; } + if (!(await this._dirExists("/" + this._srcPath))) { + throw new Error( + `Unable to find source directory '${this._srcPath}' in theme-library project ${this.getName()}`); + } + + this._log.verbose(`Path mapping for theme-library project ${this.getName()}:`); + this._log.verbose(` Physical root path: ${this.getPath()}`); + this._log.verbose(` Mapped to:`); + this._log.verbose(` /resources/ => ${this._srcPath}`); + this._log.verbose( + ` /test-resources/ => ${this._testPath}${this._testPathExists ? "" : " [does not exist]"}`); } } diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 4c806462acd..943f697d19a 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -191,7 +191,7 @@ test("_configureAndValidatePaths: Webapp directory does not exist", async (t) => }; const err = await t.throwsAsync(Specification.create(projectInput)); - t.is(err.message, "Unable to find directory 'does/not/exist' in application project application.a"); + t.is(err.message, "Unable to find source directory 'does/not/exist' in application project application.a"); }); test("_getNamespaceFromManifestJson: No 'sap.app' configuration found", async (t) => { diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index 81318559e85..84586d6daae 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -211,7 +211,7 @@ test("_configureAndValidatePaths: Source directory does not exist", async (t) => projectInput.configuration.resources.configuration.paths.src = "does/not/exist"; const err = await t.throwsAsync(new Library().init(projectInput)); - t.is(err.message, "Unable to find directory 'does/not/exist' in library project library.d"); + t.is(err.message, "Unable to find source directory 'does/not/exist' in library project library.d"); }); test("_parseConfiguration: Get copyright", async (t) => { diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index c8d4d9521cb..e429e599b4d 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -139,5 +139,5 @@ test("_configureAndValidatePaths: Directory does not exist", async (t) => { projectInput.configuration.resources.configuration.paths.doesNotExist = "does/not/exist"; const err = await t.throwsAsync(Specification.create(projectInput)); - t.is(err.message, "Unable to find directory 'does/not/exist' in module project module.a"); + t.is(err.message, "Unable to find source directory 'does/not/exist' in module project module.a"); }); diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js index f8f2752350a..9bd3a1d2095 100644 --- a/packages/project/test/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -119,5 +119,5 @@ test("_configureAndValidatePaths: Source directory does not exist", async (t) => }; const err = await t.throwsAsync(Specification.create(projectInput)); - t.is(err.message, "Unable to find directory 'does/not/exist' in theme-library project theme.library.e"); + t.is(err.message, "Unable to find source directory 'does/not/exist' in theme-library project theme.library.e"); }); From 3130d4e0433820978c84bfa6cd4b0e18c2eb3c77 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 30 Jan 2023 09:33:28 +0100 Subject: [PATCH 0814/1272] [ui5-project][INTERNAL] Specifications: Apply suggestion from code review Co-authored-by: Yavor Ivanov --- packages/project/lib/specifications/types/Library.js | 6 +----- packages/project/lib/specifications/types/ThemeLibrary.js | 6 +----- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index 6927df656c4..07523081c22 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -126,15 +126,11 @@ class Library extends ComponentProject { this._testPath = config.resources.configuration.paths.test; } } - if (!(await this._dirExists("/" + this._testPath))) { - this._testPathExists = false; - } else { - this._testPathExists = true; - } if (!(await this._dirExists("/" + this._srcPath))) { throw new Error( `Unable to find source directory '${this._srcPath}' in library project ${this.getName()}`); } + this._testPathExists = await this._dirExists("/" + this._testPath); this._log.verbose(`Path mapping for library project ${this.getName()}:`); this._log.verbose(` Physical root path: ${this.getPath()}`); diff --git a/packages/project/lib/specifications/types/ThemeLibrary.js b/packages/project/lib/specifications/types/ThemeLibrary.js index f6df00dc725..de2c9a7e196 100644 --- a/packages/project/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/lib/specifications/types/ThemeLibrary.js @@ -127,15 +127,11 @@ class ThemeLibrary extends Project { } } - if (!(await this._dirExists("/" + this._testPath))) { - this._testPathExists = false; - } else { - this._testPathExists = true; - } if (!(await this._dirExists("/" + this._srcPath))) { throw new Error( `Unable to find source directory '${this._srcPath}' in theme-library project ${this.getName()}`); } + this._testPathExists = await this._dirExists("/" + this._testPath); this._log.verbose(`Path mapping for theme-library project ${this.getName()}:`); this._log.verbose(` Physical root path: ${this.getPath()}`); From 8d538ea82b08ca74deda180c780c4fcc0dbf4011 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 29 Jan 2023 10:00:38 +0000 Subject: [PATCH 0815/1272] [ui5-project][INTERNAL] Bump eslint-plugin-jsdoc from 39.7.0 to 39.7.4 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 39.7.0 to 39.7.4. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Changelog](https://github.com/gajus/eslint-plugin-jsdoc/blob/main/.releaserc) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v39.7.0...v39.7.4) --- updated-dependencies: - dependency-name: eslint-plugin-jsdoc dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d3e1eb87987..fb51aec6b0c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "eslint": "^8.33.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^39.7.0", + "eslint-plugin-jsdoc": "^39.7.4", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -3143,9 +3143,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "39.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.7.0.tgz", - "integrity": "sha512-4gWAJABzWzfu/LBNLo5cdZph8Ce8QY/Og3FvzU2TsBz50hDB3gBlMJulrmFvPHFXnSxmB6mzMf3dpi4yxdFKfQ==", + "version": "39.7.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.7.4.tgz", + "integrity": "sha512-2eJcWGKRyNQFa37UIpGcAdOp3wtES8vV3mlnFmEmJCuBNyFhK6cMhbZgMkLoLjKnipoxsN9GbfZZ+8nPY8ETZQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.36.1", @@ -11660,9 +11660,9 @@ } }, "eslint-plugin-jsdoc": { - "version": "39.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.7.0.tgz", - "integrity": "sha512-4gWAJABzWzfu/LBNLo5cdZph8Ce8QY/Og3FvzU2TsBz50hDB3gBlMJulrmFvPHFXnSxmB6mzMf3dpi4yxdFKfQ==", + "version": "39.7.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.7.4.tgz", + "integrity": "sha512-2eJcWGKRyNQFa37UIpGcAdOp3wtES8vV3mlnFmEmJCuBNyFhK6cMhbZgMkLoLjKnipoxsN9GbfZZ+8nPY8ETZQ==", "dev": true, "requires": { "@es-joy/jsdoccomment": "~0.36.1", diff --git a/packages/project/package.json b/packages/project/package.json index b086d2f34fe..d1b28f06cc4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -146,7 +146,7 @@ "eslint": "^8.33.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^39.7.0", + "eslint-plugin-jsdoc": "^39.7.4", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 6622155f53d08312a8995d2602af7a6ed6a4017c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 27 Jan 2023 15:13:01 +0100 Subject: [PATCH 0816/1272] [ui5-project][INTERNAL] Specification: Make method getRootPath() public Rename previously private function "getPath()" to "getRootPath()" to differentiate with function "getSourcePath()" and to align with function "getRootReader()". Expose function additionally through TaskUtil. --- packages/project/lib/build/helpers/TaskUtil.js | 3 ++- packages/project/lib/graph/helpers/ui5Framework.js | 4 ++-- packages/project/lib/specifications/Specification.js | 6 +++--- .../lib/specifications/extensions/ServerMiddleware.js | 2 +- packages/project/lib/specifications/extensions/Task.js | 2 +- packages/project/lib/specifications/types/Application.js | 4 ++-- packages/project/lib/specifications/types/Library.js | 6 +++--- packages/project/lib/specifications/types/Module.js | 6 +++--- packages/project/lib/specifications/types/ThemeLibrary.js | 6 +++--- packages/project/test/lib/build/helpers/TaskUtil.js | 3 +++ packages/project/test/lib/graph/projectGraphBuilder.js | 8 ++++---- packages/project/test/lib/specifications/Specification.js | 6 +++--- 12 files changed, 30 insertions(+), 26 deletions(-) diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index 58aff044a62..11325344a7e 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -191,6 +191,7 @@ class TaskUtil { * @property {Function} getNamespace Get the project namespace * @property {Function} getRootReader Get the project rootReader * @property {Function} getReader Get the project reader + * @property {Function} getRootPath Get the local File System path of the project's root directory * @property {Function} getSourcePath Get the local File System path of the project's source directory * @property {Function} getCustomConfiguration Get the project Custom Configuration * @property {Function} isFrameworkProject Check whether the project is a UI5-Framework project @@ -310,7 +311,7 @@ class TaskUtil { const baseProjectInterface = {}; bindFunctions(project, baseProjectInterface, [ "getType", "getName", "getVersion", "getNamespace", - "getRootReader", "getReader", "getSourcePath", + "getRootReader", "getReader", "getRootPath", "getSourcePath", "getCustomConfiguration", "isFrameworkProject" ]); return baseProjectInterface; diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index c5f5acebdbb..e4f6a6963d5 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -202,7 +202,7 @@ export default { `No framework version defined for root project ${rootProject.getName()}` ); } else if (options.versionOverride) { - version = await Resolver.resolveVersion(options.versionOverride, {cwd: rootProject.getPath()}); + version = await Resolver.resolveVersion(options.versionOverride, {cwd: rootProject.getRootPath()}); log.info( `Overriding configured ${frameworkName} version ` + `${frameworkVersion} with version ${version}` @@ -221,7 +221,7 @@ export default { log.info(`Using ${frameworkName} version: ${version}`); - const resolver = new Resolver({cwd: rootProject.getPath(), version}); + const resolver = new Resolver({cwd: rootProject.getRootPath(), version}); let startTime; if (log.isLevelEnabled("verbose")) { diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 06f27feaa41..614928befe8 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -207,10 +207,10 @@ class Specification { /** * Get the specification's file system path. This might not be POSIX-style on some platforms * - * @private + * @public * @returns {string} Project root path */ - getPath() { + getRootPath() { return this._modulePath; } @@ -227,7 +227,7 @@ class Specification { */ getRootReader({useGitignore=true} = {}) { return createReader({ - fsBasePath: this.getPath(), + fsBasePath: this.getRootPath(), virBasePath: "/", name: `Root reader for ${this.getType()} ${this.getKind()} ${this.getName()}`, useGitignore diff --git a/packages/project/lib/specifications/extensions/ServerMiddleware.js b/packages/project/lib/specifications/extensions/ServerMiddleware.js index ee4c83b7005..d18e237ffa5 100644 --- a/packages/project/lib/specifications/extensions/ServerMiddleware.js +++ b/packages/project/lib/specifications/extensions/ServerMiddleware.js @@ -21,7 +21,7 @@ class ServerMiddleware extends Extension { * @public */ async getMiddleware() { - const middlewarePath = path.join(this.getPath(), this._config.middleware.path); + const middlewarePath = path.join(this.getRootPath(), this._config.middleware.path); const {default: middleware} = await import(pathToFileURL(middlewarePath)); return middleware; } diff --git a/packages/project/lib/specifications/extensions/Task.js b/packages/project/lib/specifications/extensions/Task.js index b74ba68ffa4..c5aee60b7a0 100644 --- a/packages/project/lib/specifications/extensions/Task.js +++ b/packages/project/lib/specifications/extensions/Task.js @@ -36,7 +36,7 @@ class Task extends Extension { * @private */ async _getImplementation() { - const taskPath = path.join(this.getPath(), this._config.task.path); + const taskPath = path.join(this.getRootPath(), this._config.task.path); const {default: task, determineRequiredDependencies} = await import(pathToFileURL(taskPath)); return { task, determineRequiredDependencies diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index 3b672e67065..2abe4875cea 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -42,7 +42,7 @@ class Application extends ComponentProject { * @returns {string} Absolute path to the source directory of the project */ getSourcePath() { - return fsPath.join(this.getPath(), this._webappPath); + return fsPath.join(this.getRootPath(), this._webappPath); } /* === Resource Access === */ @@ -88,7 +88,7 @@ class Application extends ComponentProject { } this._log.verbose(`Path mapping for application project ${this.getName()}:`); - this._log.verbose(` Physical root path: ${this.getPath()}`); + this._log.verbose(` Physical root path: ${this.getRootPath()}`); this._log.verbose(` Mapped to: ${this._webappPath}`); if (!(await this._dirExists("/" + this._webappPath))) { diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index 07523081c22..ee5eedff950 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -53,7 +53,7 @@ class Library extends ComponentProject { * @returns {string} Absolute path to the source directory of the project */ getSourcePath() { - return fsPath.join(this.getPath(), this._srcPath); + return fsPath.join(this.getRootPath(), this._srcPath); } /* === Resource Access === */ @@ -85,7 +85,7 @@ class Library extends ComponentProject { virBasePath += `${this._namespace}/`; } const testReader = resourceFactory.createReader({ - fsBasePath: fsPath.join(this.getPath(), this._testPath), + fsBasePath: fsPath.join(this.getRootPath(), this._testPath), virBasePath, name: `Runtime test-resources reader for library project ${this.getName()}`, project: this, @@ -133,7 +133,7 @@ class Library extends ComponentProject { this._testPathExists = await this._dirExists("/" + this._testPath); this._log.verbose(`Path mapping for library project ${this.getName()}:`); - this._log.verbose(` Physical root path: ${this.getPath()}`); + this._log.verbose(` Physical root path: ${this.getRootPath()}`); this._log.verbose(` Mapped to:`); this._log.verbose(` /resources/ => ${this._srcPath}`); this._log.verbose( diff --git a/packages/project/lib/specifications/types/Module.js b/packages/project/lib/specifications/types/Module.js index ef0ab068921..87b668abfcb 100644 --- a/packages/project/lib/specifications/types/Module.js +++ b/packages/project/lib/specifications/types/Module.js @@ -88,7 +88,7 @@ class Module extends Project { await super._configureAndValidatePaths(config); this._log.verbose(`Path mapping for module project ${this.getName()}:`); - this._log.verbose(` Physical root path: ${this.getPath()}`); + this._log.verbose(` Physical root path: ${this.getRootPath()}`); this._log.verbose(` Mapped to:`); if (config.resources?.configuration?.paths) { @@ -107,7 +107,7 @@ class Module extends Project { return { name: `'${relFsPath}'' reader for module project ${this.getName()}`, virBasePath, - fsBasePath: fsPath.join(this.getPath(), relFsPath), + fsBasePath: fsPath.join(this.getRootPath(), relFsPath), project: this, excludes: config.builder?.resources?.excludes }; @@ -121,7 +121,7 @@ class Module extends Project { this._paths = [{ name: `Root reader for module project ${this.getName()}`, virBasePath: "/", - fsBasePath: this.getPath(), + fsBasePath: this.getRootPath(), project: this, excludes: config.builder?.resources?.excludes }]; diff --git a/packages/project/lib/specifications/types/ThemeLibrary.js b/packages/project/lib/specifications/types/ThemeLibrary.js index de2c9a7e196..f3c0e240974 100644 --- a/packages/project/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/lib/specifications/types/ThemeLibrary.js @@ -36,7 +36,7 @@ class ThemeLibrary extends Project { * @returns {string} Absolute path to the source directory of the project */ getSourcePath() { - return fsPath.join(this.getPath(), this._srcPath); + return fsPath.join(this.getRootPath(), this._srcPath); } /* === Resource Access === */ @@ -60,7 +60,7 @@ class ThemeLibrary extends Project { }); if (this._testPathExists) { const testReader = resourceFactory.createReader({ - fsBasePath: fsPath.join(this.getPath(), this._testPath), + fsBasePath: fsPath.join(this.getRootPath(), this._testPath), virBasePath: "/test-resources/", name: `Runtime test-resources reader for theme-library project ${this.getName()}`, project: this, @@ -134,7 +134,7 @@ class ThemeLibrary extends Project { this._testPathExists = await this._dirExists("/" + this._testPath); this._log.verbose(`Path mapping for theme-library project ${this.getName()}:`); - this._log.verbose(` Physical root path: ${this.getPath()}`); + this._log.verbose(` Physical root path: ${this.getRootPath()}`); this._log.verbose(` Mapped to:`); this._log.verbose(` /resources/ => ${this._srcPath}`); this._log.verbose( diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index 9cda7584494..68aa5b583bd 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -411,6 +411,7 @@ test("getInterface: specVersion 3.0", (t) => { getNamespace: () => "namespace", getRootReader: () => "rootReader", getReader: () => "reader", + getRootPath: () => "rootPath", getSourcePath: () => "sourcePath", getCustomConfiguration: () => "customConfiguration", isFrameworkProject: () => "isFrameworkProject", @@ -457,6 +458,7 @@ test("getInterface: specVersion 3.0", (t) => { "getNamespace", "getRootReader", "getReader", + "getRootPath", "getSourcePath", "getCustomConfiguration", "isFrameworkProject", @@ -466,6 +468,7 @@ test("getInterface: specVersion 3.0", (t) => { t.is(interfacedProject.getName(), "name", "getName function is bound correctly"); t.is(interfacedProject.getVersion(), "version", "getVersion function is bound correctly"); t.is(interfacedProject.getNamespace(), "namespace", "getNamespace function is bound correctly"); + t.is(interfacedProject.getRootPath(), "rootPath", "getRootPath function is bound correctly"); t.is(interfacedProject.getRootReader(), "rootReader", "getRootReader function is bound correctly"); t.is(interfacedProject.getSourcePath(), "sourcePath", "getSourcePath function is bound correctly"); t.is(interfacedProject.getReader(), "reader", "getReader function is bound correctly"); diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index a967308f3a4..51489cbb9ed 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -76,7 +76,7 @@ test("Basic graph creation", async (t) => { ]); const p = graph.getProject("id1"); - t.is(p.getPath(), libraryEPath, "Project returned correct path"); + t.is(p.getRootPath(), libraryEPath, "Project returned correct path"); t.is(t.context.getRootNode.callCount, 1, "NodeProvider#getRoodNode got called once"); t.is(t.context.getDependencies.callCount, 1, "NodeProvider#getDependencies got called once"); @@ -104,7 +104,7 @@ test("Basic graph with dependencies", async (t) => { ]); const p = graph.getProject("project-1"); - t.is(p.getPath(), libraryEPath, "Project returned correct path"); + t.is(p.getRootPath(), libraryEPath, "Project returned correct path"); t.is(t.context.getRootNode.callCount, 1, "NodeProvider#getRoodNode got called once"); t.is(t.context.getDependencies.callCount, 3, "NodeProvider#getDependencies got called once"); @@ -268,7 +268,7 @@ test("Nested node with same id is ignored", async (t) => { ]); const graph = await projectGraphBuilder(t.context.provider); const p = graph.getProject("project-1"); - t.is(p.getPath(), libraryEPath, "Project returned correct path"); + t.is(p.getRootPath(), libraryEPath, "Project returned correct path"); t.falsy(graph.getProject("project-3"), "Configuration of project with same ID has been ignored"); t.deepEqual(graph.getDependencies("project-2"), ["project-1"], "Cyclic dependency has been added"); }); @@ -339,7 +339,7 @@ test("Dependency is a collection", async (t) => { "library.c" ]); const p = graph.getProject("project-1"); - t.is(p.getPath(), libraryEPath, "Project returned correct path"); + t.is(p.getRootPath(), libraryEPath, "Project returned correct path"); t.deepEqual(graph.getDependencies("project-1"), [ "library.a", "library.b", "library.c" ], "Correct dependencies for root node maintained"); diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index aee440410fe..ec975b716c0 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -22,7 +22,7 @@ const moduleAPath = path.join(__dirname, "..", "..", "fixtures", "module.a"); function createSubclass(Specification) { class DummySpecification extends Specification { - getPath() { + getRootPath() { return "path"; } getType() { @@ -68,7 +68,7 @@ test("Instantiate a basic project", async (t) => { const project = await Specification.create(t.context.basicProjectInput); t.is(project.getName(), "application.a", "Returned correct name"); t.is(project.getVersion(), "1.0.0", "Returned correct version"); - t.is(project.getPath(), applicationAPath, "Returned correct project path"); + t.is(project.getRootPath(), applicationAPath, "Returned correct project path"); }); test("Configurations", async (t) => { @@ -133,7 +133,7 @@ test("Project with incorrect name", async (t) => { }); t.is(project.getName(), "application a", "Returned correct name"); t.is(project.getVersion(), "1.0.0", "Returned correct version"); - t.is(project.getPath(), applicationAPath, "Returned correct project path"); + t.is(project.getRootPath(), applicationAPath, "Returned correct project path"); }); test("Migrate legacy project", async (t) => { From 042a17be0a55b3bde4e84285afab3300c6d27433 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 30 Jan 2023 15:44:03 +0100 Subject: [PATCH 0817/1272] [ui5-project][INTERNAL] Specification: Increase code coverage --- .../lib/specifications/Specification.js | 8 +-- .../test/lib/specifications/Specification.js | 52 ++++++++++++++++--- .../test/lib/specifications/types/Module.js | 24 ++++++++- .../lib/specifications/types/ThemeLibrary.js | 5 ++ 4 files changed, 78 insertions(+), 11 deletions(-) diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 614928befe8..838cfd63f96 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -78,16 +78,16 @@ class Specification { */ async init({id, version, modulePath, configuration}) { if (!id) { - throw new Error(`Could not create specification: Missing or empty parameter 'id'`); + throw new Error(`Could not create Specification: Missing or empty parameter 'id'`); } if (!version) { - throw new Error(`Could not create specification: Missing or empty parameter 'version'`); + throw new Error(`Could not create Specification: Missing or empty parameter 'version'`); } if (!modulePath) { - throw new Error(`Could not create specification: Missing or empty parameter 'modulePath'`); + throw new Error(`Could not create Specification: Missing or empty parameter 'modulePath'`); } if (!configuration) { - throw new Error(`Could not create specification: Missing or empty parameter 'configuration'`); + throw new Error(`Could not create Specification: Missing or empty parameter 'configuration'`); } this._version = version; diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index ec975b716c0..ded7cb5e4db 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -21,7 +21,7 @@ const genericExtensionPath = path.join(__dirname, "..", "..", "fixtures", "exten const moduleAPath = path.join(__dirname, "..", "..", "fixtures", "module.a"); function createSubclass(Specification) { - class DummySpecification extends Specification { + class MockSpecification extends Specification { getRootPath() { return "path"; } @@ -35,7 +35,7 @@ function createSubclass(Specification) { return "name"; } } - return DummySpecification; + return MockSpecification; } test.beforeEach((t) => { @@ -71,6 +71,46 @@ test("Instantiate a basic project", async (t) => { t.is(project.getRootPath(), applicationAPath, "Returned correct project path"); }); +test("init: Missing id", async (t) => { + delete t.context.basicProjectInput.id; + await t.throwsAsync(Specification.create(t.context.basicProjectInput), { + message: "Could not create Specification: Missing or empty parameter 'id'" + }, "Threw with expected error message"); +}); + +test("init: Missing version", async (t) => { + delete t.context.basicProjectInput.version; + await t.throwsAsync(Specification.create(t.context.basicProjectInput), { + message: "Could not create Specification: Missing or empty parameter 'version'" + }, "Threw with expected error message"); +}); + +test("init: Missing modulePath", async (t) => { + delete t.context.basicProjectInput.modulePath; + await t.throwsAsync(Specification.create(t.context.basicProjectInput), { + message: "Could not create Specification: Missing or empty parameter 'modulePath'" + }, "Threw with expected error message"); +}); + +test("init: Missing configuration", async (t) => { + delete t.context.basicProjectInput.configuration; + const project = new Application(); + + await t.throwsAsync(project.init(t.context.basicProjectInput), { + message: "Could not create Specification: Missing or empty parameter 'configuration'" + }, "Threw with expected error message"); +}); + +test("init: Invalid constructor name", async (t) => { + const MockSpecification = createSubclass(Specification); + const project = new MockSpecification(); + + await t.throwsAsync(project.init(t.context.basicProjectInput), { + message: "Configuration mismatch: Supplied configuration of type 'application' " + + "does not match with specification class MockSpecification" + }, "Threw with expected error message"); +}); + test("Configurations", async (t) => { const project = await Specification.create(t.context.basicProjectInput); t.is(project.getKind(), "project", "Returned correct kind configuration"); @@ -339,8 +379,8 @@ test("getRootReader: Default parameters", async (t) => { } }); - const DummySpecification = createSubclass(Specification); - const spec = new DummySpecification(); + const MockSpecification = createSubclass(Specification); + const spec = new MockSpecification(); await spec.getRootReader(); t.is(createReaderStub.callCount, 1, "createReader got called once"); @@ -360,8 +400,8 @@ test("getRootReader: Custom parameters", async (t) => { } }); - const DummySpecification = createSubclass(Specification); - const spec = new DummySpecification(); + const MockSpecification = createSubclass(Specification); + const spec = new MockSpecification(); await spec.getRootReader({}); await spec.getRootReader({ useGitignore: false diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index e429e599b4d..b1f588937ca 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -44,7 +44,16 @@ test("Correct class", async (t) => { t.true(project instanceof Module, `Is an instance of the Module class`); }); -test("Access project resources via reader", async (t) => { +test("getSourcePath: Throws", async (t) => { + const project = await Specification.create(basicProjectInput); + t.throws(() => { + project.getSourcePath(); + }, { + message: "Projects of type module have more than one source path" + }, "Threw with expected error message"); +}); + +test("Access project resources via reader (multiple mappings)", async (t) => { const project = await Specification.create(basicProjectInput); const reader = project.getReader(); const resource1 = await reader.byPath("/dev/devTools.js"); @@ -56,6 +65,19 @@ test("Access project resources via reader", async (t) => { t.is(resource2.getPath(), "/index.js", "Resource has correct path"); }); +test("Access project resources via reader (one mapping)", async (t) => { + const projectInput = clone(basicProjectInput); + delete projectInput.configuration.resources.configuration.paths["/"]; + const project = await Specification.create(projectInput); + const reader = project.getReader(); + const resource1 = await reader.byPath("/dev/devTools.js"); + t.truthy(resource1, "Found the requested resource"); + t.is(resource1.getPath(), "/dev/devTools.js", "Resource has correct path"); + + const resource2 = await reader.byPath("/index.js"); + t.falsy(resource2, "Could not find resource in unmapped path"); +}); + test("Modify project resources via workspace and access via reader", async (t) => { const project = await Specification.create(basicProjectInput); const workspace = project.getWorkspace(); diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js index 9bd3a1d2095..3e417d1ad04 100644 --- a/packages/project/test/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -42,6 +42,11 @@ test("getCopyright", async (t) => { t.is(project.getCopyright(), "Some fancy copyright", "Copyright was read correctly"); }); +test("getSourcePath", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getSourcePath(), path.join(themeLibraryEPath, "src"), "Correct source path"); +}); + test("Access project resources via reader", async (t) => { const project = await Specification.create(basicProjectInput); const reader = project.getReader(); From 8d5c84bcdad07c9d93ad121a42f281e80643ebb3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 27 Jan 2023 11:05:58 +0100 Subject: [PATCH 0818/1272] [ui5-project][INTERNAL] Schema: Update texts based on UA review --- .../schema/specVersion/kind/extension.json | 4 ++-- .../schema/specVersion/kind/project.json | 4 ++-- .../lib/validation/schema/ui5-workspace.json | 4 ++-- packages/project/lib/validation/schema/ui5.json | 2 +- .../test/lib/validation/ValidationError.js | 4 ++-- .../validation/schema/__helper__/extension.js | 2 +- .../lib/validation/schema/__helper__/project.js | 2 +- .../specVersion/kind/extension/project-shim.js | 6 +++--- .../kind/extension/server-middleware.js | 6 +++--- .../schema/specVersion/kind/extension/task.js | 6 +++--- .../specVersion/kind/project/application.js | 6 +++--- .../schema/specVersion/kind/project/library.js | 6 +++--- .../schema/specVersion/kind/project/module.js | 6 +++--- .../specVersion/kind/project/theme-library.js | 6 +++--- .../test/lib/validation/schema/ui5-workspace.js | 16 ++++++++-------- .../project/test/lib/validation/schema/ui5.js | 2 +- 16 files changed, 41 insertions(+), 41 deletions(-) diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension.json b/packages/project/lib/validation/schema/specVersion/kind/extension.json index 2c673c5088e..637e49ad391 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension.json @@ -82,8 +82,8 @@ "maxLength": 50, "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", "title": "Extension Name", - "description": "Unique identifier for the extension. E.g. ui5-task-fearless-rock", - "errorMessage": "Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name" + "description": "Unique identifier for the extension, for example: ui5-task-fearless-rock", + "errorMessage": "Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name" }, "copyright": { "type": "string" diff --git a/packages/project/lib/validation/schema/specVersion/kind/project.json b/packages/project/lib/validation/schema/specVersion/kind/project.json index 3d85545849b..f126c4e1f43 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project.json @@ -104,8 +104,8 @@ "maxLength": 50, "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", "title": "Project Name", - "description": "Unique identifier for the project. E.g. organization.product.project", - "errorMessage": "Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name" + "description": "Unique identifier for the project, for example: organization.product.project", + "errorMessage": "Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name" }, "copyright": { "type": "string" diff --git a/packages/project/lib/validation/schema/ui5-workspace.json b/packages/project/lib/validation/schema/ui5-workspace.json index 948239d4923..37cb869274c 100644 --- a/packages/project/lib/validation/schema/ui5-workspace.json +++ b/packages/project/lib/validation/schema/ui5-workspace.json @@ -10,7 +10,7 @@ "additionalProperties": false, "specVersion": { "enum": ["workspace/1.0"], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"workspace/1.0\"\nFor details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"workspace/1.0\"\nFor details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions" }, "metadata": { "$ref": "#/definitions/metadata" @@ -32,7 +32,7 @@ "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", "title": "Workspace Name", "description": "Identifier for the workspace configuration. Workspaces named 'default' will be used automatically by UI5 Tooling", - "errorMessage": "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name" + "errorMessage": "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name" } } }, diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index 6d6d1f08afd..59af95301e8 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -14,7 +14,7 @@ "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, diff --git a/packages/project/test/lib/validation/ValidationError.js b/packages/project/test/lib/validation/ValidationError.js index cc1949f838e..6524ca51cad 100644 --- a/packages/project/test/lib/validation/ValidationError.js +++ b/packages/project/test/lib/validation/ValidationError.js @@ -860,7 +860,7 @@ test.serial("ValidationError.formatMessage: keyword=errorMessage", (t) => { `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "2.0", "1.1", "1.0", "0.1" -For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, +For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, params: { errors: [ { @@ -886,7 +886,7 @@ For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specific `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "2.0", "1.1", "1.0", "0.1" -For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`; +For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`; const errorMessage = ValidationError.formatMessage(error, {}); t.is(errorMessage, expectedErrorMessage); diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js index 79799ee9636..69eb7d155b4 100644 --- a/packages/project/test/lib/validation/schema/__helper__/extension.js +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -104,7 +104,7 @@ export default { }, { dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index 50737b76121..8d58ada78c2 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -293,7 +293,7 @@ export default { { dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js index b2583a12b4f..0812d16d447 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js @@ -140,7 +140,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -163,7 +163,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -186,7 +186,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js index 54dab5cbddc..cc44d33bf2c 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js @@ -60,7 +60,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -85,7 +85,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -110,7 +110,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js index 63f5be3e9e7..287277780e1 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js @@ -60,7 +60,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -85,7 +85,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -110,7 +110,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index 4c0a73d5fca..d744e9aafde 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -953,7 +953,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -974,7 +974,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -995,7 +995,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js index 60e0c6225cf..5a3dc8b004e 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js @@ -1126,7 +1126,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -1147,7 +1147,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -1168,7 +1168,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js index 06e059cf7fc..211c09c8c53 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js @@ -360,7 +360,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -381,7 +381,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -402,7 +402,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js index 220f193fae6..cdd132803a9 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js @@ -359,7 +359,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -380,7 +380,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -401,7 +401,7 @@ test.after.always((t) => { }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/ui5-workspace.js b/packages/project/test/lib/validation/schema/ui5-workspace.js index 55633063538..0eb092d41b6 100644 --- a/packages/project/test/lib/validation/schema/ui5-workspace.js +++ b/packages/project/test/lib/validation/schema/ui5-workspace.js @@ -62,7 +62,7 @@ test("Empty config", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "workspace/1.0" -For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, +For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, params: { errors: [ { @@ -163,7 +163,7 @@ test("Invalid metadata.name: Illegal characters", async (t) => { { dataPath: "/metadata/name", keyword: "errorMessage", - message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", params: { errors: [ { @@ -201,7 +201,7 @@ test("Invalid metadata.name: Too short", async (t) => { { dataPath: "/metadata/name", keyword: "errorMessage", - message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", params: { errors: [ { @@ -240,7 +240,7 @@ test("Invalid metadata.name: Too long", async (t) => { { dataPath: "/metadata/name", keyword: "errorMessage", - message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", params: { errors: [ { @@ -279,7 +279,7 @@ test("Invalid fields", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "workspace/1.0" -For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, +For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, params: { errors: [ { @@ -297,7 +297,7 @@ For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#works { dataPath: "/metadata/name", keyword: "errorMessage", - message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", params: { errors: [ { @@ -348,7 +348,7 @@ test("Invalid types", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "workspace/1.0" -For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, +For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, params: { errors: [ { @@ -366,7 +366,7 @@ For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#works { dataPath: "/metadata/name", keyword: "errorMessage", - message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore and period only. Additionally, it may contain an npm-style package scope. For details see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", params: { errors: [ { diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 32c2163cd91..433aed2a559 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -103,7 +103,7 @@ test("Invalid specVersion", async (t) => { `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" -For details see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, +For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, params: { errors: [ { From 11196459d25341a76b50b83e5c835af5fefea6b1 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 30 Jan 2023 16:53:06 +0100 Subject: [PATCH 0819/1272] [ui5-project][INTERNAL] Allow framework projects use of framework resolver (#561) If the current root project is a framework project (identified by the scope in the package.json name), allow processing of it's framework dependencies by the ui5Framework helper module. Other framework projects in the graph are still ignored. Framework dependencies of non-framework projects are always processed. Framework dependencies of framework projects have always been ignored. With this change, framework dependencies of the root project are always processed, no matter whether it's a framework projects or not. This allows framework developers to retrieve all required dependencies in a given version. The version is either defined in the ui5.yaml (not recommended) or via the --framework-version CLI parameter. If no version is specified, all required framework dependencies must be part of the presented graph or an error is thrown. --- .../project/lib/graph/helpers/ui5Framework.js | 41 +++-- .../test/lib/graph/helpers/ui5Framework.js | 159 +++++++++++++++--- 2 files changed, 163 insertions(+), 37 deletions(-) diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index e4f6a6963d5..a50af78f041 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -69,7 +69,7 @@ const utils = { const ui5Dependencies = []; const rootProject = projectGraph.getRoot(); await projectGraph.traverseBreadthFirst(async ({project}) => { - if (project.isFrameworkProject()) { + if (project !== rootProject && project.isFrameworkProject()) { // Ignoring UI5 Framework libraries in dependencies return; } @@ -93,7 +93,7 @@ const utils = { async declareFrameworkDependenciesInGraph(projectGraph) { const rootProject = projectGraph.getRoot(); await projectGraph.traverseBreadthFirst(async ({project}) => { - if (project.isFrameworkProject()) { + if (project !== rootProject && project.isFrameworkProject()) { // Ignoring UI5 Framework libraries in dependencies return; } @@ -147,7 +147,7 @@ const utils = { * * * @private - * @module @ui5/project/translators/ui5Framework + * @module @ui5/project/helpers/ui5Framework */ export default { /** @@ -157,26 +157,34 @@ export default { * @param {@ui5/project/graph/ProjectGraph} projectGraph * @param {object} [options] * @param {string} [options.versionOverride] Framework version to use instead of the root projects framework - * version from the provided tree + * version * @returns {Promise<@ui5/project/graph/ProjectGraph>} * Promise resolving with the given graph instance to allow method chaining */ enrichProjectGraph: async function(projectGraph, options = {}) { const rootProject = projectGraph.getRoot(); + const frameworkName = rootProject.getFrameworkName(); + const frameworkVersion = rootProject.getFrameworkVersion(); - if (rootProject.isFrameworkProject()) { + // It is allowed omit the framework version in ui5.yaml and only provide one via the override + // This is a common use case for framework libraries, which generally should not define a + // framework version in their respective ui5.yaml + let version = options.versionOverride || frameworkVersion; + + if (rootProject.isFrameworkProject() && !version) { + // If the root project is a framework project and no framework version is defined, + // all framework dependencies must already be part of the graph rootProject.getFrameworkDependencies().forEach((dep) => { if (utils.shouldIncludeDependency(dep) && !projectGraph.getProject(dep.name)) { throw new Error( - `Missing framework dependency ${dep.name} for project ${rootProject.getName()}`); + `Missing framework dependency ${dep.name} for framework project ${rootProject.getName()}`); } }); - // Ignoring UI5 Framework libraries in dependencies + // All framework dependencies are already present in the graph return projectGraph; } - const frameworkName = rootProject.getFrameworkName(); - const frameworkVersion = rootProject.getFrameworkVersion(); + if (!frameworkName && !frameworkVersion) { log.verbose(`Root project ${rootProject.getName()} has no framework configuration. Nothing to do here`); return projectGraph; @@ -189,6 +197,12 @@ export default { ); } + if (!version) { + throw new Error( + `No framework version defined for root project ${rootProject.getName()}` + ); + } + let Resolver; if (frameworkName === "OpenUI5") { Resolver = (await import("../../ui5Framework/Openui5Resolver.js")).default; @@ -196,19 +210,12 @@ export default { Resolver = (await import("../../ui5Framework/Sapui5Resolver.js")).default; } - let version; - if (!frameworkVersion) { - throw new Error( - `No framework version defined for root project ${rootProject.getName()}` - ); - } else if (options.versionOverride) { + if (options.versionOverride) { version = await Resolver.resolveVersion(options.versionOverride, {cwd: rootProject.getRootPath()}); log.info( `Overriding configured ${frameworkName} version ` + `${frameworkVersion} with version ${version}` ); - } else { - version = frameworkVersion; } const referencedLibraries = await utils.getFrameworkLibrariesFromGraph(projectGraph); diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index 2742fee2ef4..23c71028c6b 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -127,7 +127,7 @@ test.serial("ui5Framework translator should throw an error when framework versio ], "Traversed graph in correct order"); }); -test.serial("generateDependencyTree (with versionOverride)", async (t) => { +test.serial("enrichProjectGraph (with versionOverride)", async (t) => { const { sinon, ui5Framework, utils, Sapui5ResolverStub, Sapui5ResolverResolveVersionStub, Sapui5ResolverInstallStub @@ -179,7 +179,7 @@ test.serial("generateDependencyTree (with versionOverride)", async (t) => { }], "Sapui5Resolver#constructor should be called with expected args"); }); -test.serial("generateDependencyTree should throw error when no framework version is provided", async (t) => { +test.serial("enrichProjectGraph should throw error when no framework version is provided", async (t) => { const {ui5Framework} = t.context; const dependencyTree = { id: "test-id", @@ -203,15 +203,9 @@ test.serial("generateDependencyTree should throw error when no framework version await t.throwsAsync(async () => { await ui5Framework.enrichProjectGraph(projectGraph); }, {message: "No framework version defined for root project application.a"}); - - await t.throwsAsync(async () => { - await ui5Framework.enrichProjectGraph(projectGraph, { - versionOverride: "1.75.0" - }); - }, {message: "No framework version defined for root project application.a"}); }); -test.serial("generateDependencyTree should skip framework project without version", async (t) => { +test.serial("enrichProjectGraph should skip framework project without version", async (t) => { const {ui5Framework} = t.context; const dependencyTree = { id: "@sapui5/project", @@ -235,8 +229,14 @@ test.serial("generateDependencyTree should skip framework project without versio t.is(projectGraph.getSize(), 1, "Project graph should remain unchanged"); }); -test.serial("generateDependencyTree should skip framework project with version and framework config", async (t) => { - const {ui5Framework} = t.context; +test.serial("enrichProjectGraph should resolve framework project with version and framework config", async (t) => { + // Framework projects should not specify framework versions, but they might do so in dedicated configuration files + // In this case the graph is generated the usual way for the root-project. However, framework projects on + // other levels of the graph are ignored + const { + sinon, ui5Framework, utils, + Sapui5ResolverStub, Sapui5ResolverInstallStub + } = t.context; const dependencyTree = { id: "@sapui5/project", version: "1.2.3", @@ -257,17 +257,136 @@ test.serial("generateDependencyTree should skip framework project with version a } ] } - } + }, + dependencies: [{ + id: "@openui5/test1", // Will not be scanned + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "library.d" + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "lib2" + }] + } + } + }] }; + const referencedLibraries = ["lib1"]; + const libraryMetadata = {fake: "metadata"}; + + const getFrameworkLibrariesFromGraphStub = + sinon.stub(utils, "getFrameworkLibrariesFromGraph").resolves(referencedLibraries); + + Sapui5ResolverInstallStub.resolves({libraryMetadata}); + + const addProjectToGraphStub = sinon.stub(); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); const provider = new DependencyTreeProvider({dependencyTree}); const projectGraph = await projectGraphBuilder(provider); await ui5Framework.enrichProjectGraph(projectGraph); - t.is(projectGraph.getSize(), 1, "Project graph should remain unchanged"); + t.is(projectGraph.getSize(), 2, "Project graph should remain unchanged"); + + t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGrap should be called once"); + t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ + cwd: dependencyTree.path, + version: "1.2.3" + }], "Sapui5Resolver#constructor should be called with expected args"); +}); + +test.serial("enrichProjectGraph should resolve framework project " + + "with framework config and version override", async (t) => { + // Framework projects should not specify framework versions, but they might do so in dedicated configuration files + // In this case the graph is generated the usual way for the root-project. However, framework projects on + // other levels of the graph are ignored + const { + sinon, ui5Framework, utils, + Sapui5ResolverStub, Sapui5ResolverResolveVersionStub, Sapui5ResolverInstallStub + } = t.context; + const dependencyTree = { + id: "@sapui5/project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + libraries: [ + { + name: "lib1", + optional: true + } + ] + } + }, + dependencies: [{ + id: "@openui5/test1", // Will not be scanned + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "library.d" + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "lib2" + }] + } + } + }] + }; + const referencedLibraries = ["lib1"]; + const libraryMetadata = {fake: "metadata"}; + + const getFrameworkLibrariesFromGraphStub = + sinon.stub(utils, "getFrameworkLibrariesFromGraph").resolves(referencedLibraries); + + Sapui5ResolverInstallStub.resolves({libraryMetadata}); + Sapui5ResolverResolveVersionStub.resolves("1.99.9"); + + const addProjectToGraphStub = sinon.stub(); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride: "3.4.5"}); + t.is(projectGraph.getSize(), 2, "Project graph should remain unchanged"); + + t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGrap should be called once"); + t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ + cwd: dependencyTree.path, + version: "1.99.9" + }], "Sapui5Resolver#constructor should be called with expected args"); }); -test.serial("generateDependencyTree should throw for framework project with dependency missing in graph", async (t) => { +test.serial("enrichProjectGraph should throw for framework project with dependency missing in graph", async (t) => { const {ui5Framework} = t.context; const dependencyTree = { id: "@sapui5/project", @@ -281,7 +400,6 @@ test.serial("generateDependencyTree should throw for framework project with depe }, framework: { name: "SAPUI5", - version: "1.2.3", libraries: [ { name: "lib1" @@ -295,11 +413,11 @@ test.serial("generateDependencyTree should throw for framework project with depe const projectGraph = await projectGraphBuilder(provider); const err = await t.throwsAsync(ui5Framework.enrichProjectGraph(projectGraph)); - t.is(err.message, `Missing framework dependency lib1 for project application.a`, + t.is(err.message, `Missing framework dependency lib1 for framework project application.a`, "Threw with expected error message"); }); -test.serial("generateDependencyTree should ignore root project without framework configuration", async (t) => { +test.serial("enrichProjectGraph should ignore root project without framework configuration", async (t) => { const {ui5Framework} = t.context; const dependencyTree = { id: "@sapui5/project", @@ -376,7 +494,8 @@ test.serial("utils.getFrameworkLibrariesFromTree: Project without dependencies", t.deepEqual(ui5Dependencies, []); }); -test.serial("utils.getFrameworkLibrariesFromTree: Framework project", async (t) => { +test.serial("utils.getFrameworkLibrariesFromTree: Framework project with framework dependency", async (t) => { + // Only root-level framework projects are scanned const {utils} = t.context; const dependencyTree = { id: "@sapui5/project", @@ -399,7 +518,7 @@ test.serial("utils.getFrameworkLibrariesFromTree: Framework project", async (t) } }, dependencies: [{ - id: "@openui5/test1", + id: "@openui5/test1", // Will not be scanned version: "1.2.3", path: libraryEPath, configuration: { @@ -421,7 +540,7 @@ test.serial("utils.getFrameworkLibrariesFromTree: Framework project", async (t) const projectGraph = await projectGraphBuilder(provider); const ui5Dependencies = await utils.getFrameworkLibrariesFromGraph(projectGraph); - t.deepEqual(ui5Dependencies, []); + t.deepEqual(ui5Dependencies, ["lib1"]); }); test.serial("utils.getFrameworkLibrariesFromTree: Project with libraries and dependency with libraries", async (t) => { From c1513aafd1bd4fdd00e3850d391e96b73d41c573 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 1 Feb 2023 11:14:47 +0100 Subject: [PATCH 0820/1272] [ui5-project][INTERNAL] Specifications: Add more tests (#563) Co-authored-by: Yavor Ivanov Co-authored-by: Florian Vogt --- .../test/lib/specifications/Project.js | 57 +++++++++++++++++++ .../lib/specifications/types/Application.js | 12 ++++ .../test/lib/specifications/types/Library.js | 6 ++ .../test/lib/specifications/types/Module.js | 15 +++++ .../lib/specifications/types/ThemeLibrary.js | 6 ++ 5 files changed, 96 insertions(+) diff --git a/packages/project/test/lib/specifications/Project.js b/packages/project/test/lib/specifications/Project.js index eb54acde3d0..59f055f409e 100644 --- a/packages/project/test/lib/specifications/Project.js +++ b/packages/project/test/lib/specifications/Project.js @@ -92,6 +92,63 @@ test("getCustomTasks/getCustomMiddleware defaults", async (t) => { "Returned correct default value for custom middleware configuration"); }); +test("getFramework*: Defaults", async (t) => { + const customProjectInput = clone(basicProjectInput); + const project = await Specification.create(customProjectInput); + t.is(project.getFrameworkName(), undefined, "Returned correct framework name"); + t.is(project.getFrameworkVersion(), undefined, "Returned correct framework version"); + t.deepEqual(project.getFrameworkDependencies(), [], "Returned correct framework dependencies"); + t.false(project.isFrameworkProject(), "Is not a framework project"); +}); + +test("getFramework* configurations", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.framework = { + name: "OpenUI5", + version: "1.111.1", + libraries: [ + {name: "lib-1"}, + {name: "lib-2"}, + ] + }; + customProjectInput.id = "@openui5/" + customProjectInput.id; + const project = await Specification.create(customProjectInput); + t.is(project.getFrameworkName(), "OpenUI5", "Returned correct framework name"); + t.is(project.getFrameworkVersion(), "1.111.1", "Returned correct framework version"); + t.deepEqual(project.getFrameworkDependencies(), [ + {name: "lib-1"}, + {name: "lib-2"} + ], "Returned correct framework dependencies"); + t.true(project.isFrameworkProject(), "Is a framework project"); +}); + +test("isFrameworkProject: sapui5", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.id = "@sapui5/" + customProjectInput.id; + const project = await Specification.create(customProjectInput); + t.true(project.isFrameworkProject(), "Is a framework project"); +}); + +test("isDeprecated/isSapInternal: Defaults", async (t) => { + const customProjectInput = clone(basicProjectInput); + + const project = await Specification.create(customProjectInput); + t.false(project.isDeprecated(), "Is not deprecated"); + t.false(project.isSapInternal(), "Is not SAP-internal"); + t.false(project.getAllowSapInternal(), "Does not allow SAP-internal"); +}); + +test("isDeprecated/isSapInternal: True", async (t) => { + const customProjectInput = clone(basicProjectInput); + customProjectInput.configuration.metadata.deprecated = true; + customProjectInput.configuration.metadata.sapInternal = true; + customProjectInput.configuration.metadata.allowSapInternal = true; + const project = await Specification.create(customProjectInput); + t.true(project.isDeprecated(), "Is deprecated"); + t.true(project.isSapInternal(), "Is SAP-internal"); + t.true(project.getAllowSapInternal(), "Does allow SAP-internal"); +}); + test("getServerSettings", async (t) => { const customProjectInput = clone(basicProjectInput); customProjectInput.configuration.server = { diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 943f697d19a..85e1a3048f7 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -34,6 +34,18 @@ test("Correct class", async (t) => { t.true(project instanceof Application, `Is an instance of the Application class`); }); +test("getNamespace", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getNamespace(), "id1", + "Returned correct namespace"); +}); + +test("getSourcePath", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getSourcePath(), path.join(applicationAPath, "webapp"), + "Returned correct source path"); +}); + test("getCachebusterSignatureType: Default", async (t) => { const project = await Specification.create(basicProjectInput); t.is(project.getCachebusterSignatureType(), "time", diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index 84586d6daae..caaec596d01 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -62,6 +62,12 @@ test("getNamespace", async (t) => { "Returned correct namespace"); }); +test("getSourcePath", async (t) => { + const project = await (new Library().init(basicProjectInput)); + t.is(project.getSourcePath(), path.join(libraryDPath, "main", "src"), + "Returned correct source path"); +}); + test("getPropertiesFileSourceEncoding: Default", async (t) => { const project = await (new Library().init(basicProjectInput)); t.is(project.getPropertiesFileSourceEncoding(), "UTF-8", diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index b1f588937ca..67719045aa6 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -45,6 +45,21 @@ test("Correct class", async (t) => { }); test("getSourcePath: Throws", async (t) => { + const project = await Specification.create(basicProjectInput); + const err = t.throws(() => { + project.getSourcePath(); + }); + t.is(err.message, "Projects of type module have more than one source path", + "Threw with expected error message"); +}); + +test("getNamespace", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getNamespace(), null, + "Returned no namespace"); +}); + +test("Access project resources via reader", async (t) => { const project = await Specification.create(basicProjectInput); t.throws(() => { project.getSourcePath(); diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js index 3e417d1ad04..506ff3dcfc8 100644 --- a/packages/project/test/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -47,6 +47,12 @@ test("getSourcePath", async (t) => { t.is(project.getSourcePath(), path.join(themeLibraryEPath, "src"), "Correct source path"); }); +test("getNamespace", async (t) => { + const project = await Specification.create(basicProjectInput); + t.is(project.getNamespace(), null, + "Returned no namespace"); +}); + test("Access project resources via reader", async (t) => { const project = await Specification.create(basicProjectInput); const reader = project.getReader(); From 662a8d0013ab54f194f948998f5ea7766ae01852 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 2 Feb 2023 10:43:57 +0100 Subject: [PATCH 0821/1272] [ui5-project][FEATURE] Add 'UI5 Workspace' Support (#494) Co-authored-by: Florian Vogt --- packages/project/lib/graph/Module.js | 6 +- packages/project/lib/graph/ProjectGraph.js | 56 +- packages/project/lib/graph/Workspace.js | 257 +++++++++ packages/project/lib/graph/graph.js | 29 +- .../lib/graph/helpers/createWorkspace.js | 146 +++++ .../project/lib/graph/helpers/ui5Framework.js | 97 +++- .../project/lib/graph/projectGraphBuilder.js | 11 +- .../providers/NodePackageDependencies.js | 24 +- packages/project/package-lock.json | 1 + packages/project/package.json | 1 + .../application.a/ui5-test-corrupt.yaml | 1 + .../application.a/ui5-test-empty.yaml | 0 .../collection.b/library.a/package.json | 9 + .../library.a/src/library/a/.library | 17 + .../library/a/themes/base/library.source.less | 6 + .../library.a/test/library/a/Test.html | 0 .../fixtures/collection.b/library.a/ui5.yaml | 5 + .../collection.b/library.b/package.json | 9 + .../library.b/src/library/b/.library | 17 + .../library.b/test/library/b/Test.html | 0 .../fixtures/collection.b/library.b/ui5.yaml | 5 + .../collection.b/library.c/package.json | 9 + .../library.c/src/library/c/.library | 17 + .../library.c/test/LibraryC/Test.html | 0 .../fixtures/collection.b/library.c/ui5.yaml | 5 + .../test/fixtures/collection.b/package.json | 17 + .../collection.b/sub-collection/package.json | 10 + .../test/fixtures/collection.b/test.js | 4 + .../test/fixtures/collection/package.json | 12 +- .../project/test/fixtures/collection/test.js | 4 + .../test/fixtures/extension.a/package.json | 3 +- .../test/fixtures/extension.a/ui5.yaml | 8 + .../main/src/library/d/.library | 11 + .../main/src/library/d/some.js | 4 + .../main/test/library/d/Test.html | 0 .../node_modules/library.f/package.json | 11 + .../library.f/src/library/f/.library | 11 + .../library.f/src/library/f/some.js | 4 + .../node_modules/library.f/ui5.yaml | 5 + .../node_modules/library.g/package.json | 11 + .../library.g/src/library/g/.library | 11 + .../library.g/src/library/g/some.js | 4 + .../node_modules/library.g/ui5.yaml | 5 + .../fixtures/library.d-adtl-deps/package.json | 11 + .../fixtures/library.d-adtl-deps/ui5.yaml | 9 + .../fixtures/library.e/ui5-workspace.yaml | 13 + .../library.h/corrupt-ui5-workspace.yaml | 1 + .../library.h/custom-ui5-workspace.yaml | 15 + .../library.h/empty-ui5-workspace.yaml | 0 .../library.h/invalid-ui5-workspace.yaml | 6 + .../fixtures/library.h/ui5-workspace.yaml | 15 + packages/project/test/lib/graph/Module.js | 56 +- .../project/test/lib/graph/ProjectGraph.js | 21 +- packages/project/test/lib/graph/Workspace.js | 473 ++++++++++++++++ .../test/lib/graph/graph.integration.js | 281 +++++++++ packages/project/test/lib/graph/graph.js | 214 ++++++- .../project/test/lib/graph/graphFromObject.js | 12 +- .../test/lib/graph/helpers/createWorkspace.js | 296 ++++++++++ .../test/lib/graph/helpers/ui5Framework.js | 534 +++++++++++++++++- .../test/lib/graph/projectGraphBuilder.js | 25 +- .../NodePackageDependencies.integration.js | 42 +- 61 files changed, 2778 insertions(+), 109 deletions(-) create mode 100644 packages/project/lib/graph/Workspace.js create mode 100644 packages/project/lib/graph/helpers/createWorkspace.js create mode 100644 packages/project/test/fixtures/application.a/ui5-test-corrupt.yaml create mode 100644 packages/project/test/fixtures/application.a/ui5-test-empty.yaml create mode 100644 packages/project/test/fixtures/collection.b/library.a/package.json create mode 100644 packages/project/test/fixtures/collection.b/library.a/src/library/a/.library create mode 100644 packages/project/test/fixtures/collection.b/library.a/src/library/a/themes/base/library.source.less create mode 100644 packages/project/test/fixtures/collection.b/library.a/test/library/a/Test.html create mode 100644 packages/project/test/fixtures/collection.b/library.a/ui5.yaml create mode 100644 packages/project/test/fixtures/collection.b/library.b/package.json create mode 100644 packages/project/test/fixtures/collection.b/library.b/src/library/b/.library create mode 100644 packages/project/test/fixtures/collection.b/library.b/test/library/b/Test.html create mode 100644 packages/project/test/fixtures/collection.b/library.b/ui5.yaml create mode 100644 packages/project/test/fixtures/collection.b/library.c/package.json create mode 100644 packages/project/test/fixtures/collection.b/library.c/src/library/c/.library create mode 100644 packages/project/test/fixtures/collection.b/library.c/test/LibraryC/Test.html create mode 100644 packages/project/test/fixtures/collection.b/library.c/ui5.yaml create mode 100644 packages/project/test/fixtures/collection.b/package.json create mode 100644 packages/project/test/fixtures/collection.b/sub-collection/package.json create mode 100644 packages/project/test/fixtures/collection.b/test.js create mode 100644 packages/project/test/fixtures/collection/test.js create mode 100644 packages/project/test/fixtures/extension.a/ui5.yaml create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/main/src/library/d/.library create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/main/src/library/d/some.js create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/main/test/library/d/Test.html create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/package.json create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/src/library/f/.library create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/src/library/f/some.js create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/ui5.yaml create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/package.json create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/src/library/g/.library create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/src/library/g/some.js create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/ui5.yaml create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/package.json create mode 100644 packages/project/test/fixtures/library.d-adtl-deps/ui5.yaml create mode 100644 packages/project/test/fixtures/library.e/ui5-workspace.yaml create mode 100644 packages/project/test/fixtures/library.h/corrupt-ui5-workspace.yaml create mode 100644 packages/project/test/fixtures/library.h/custom-ui5-workspace.yaml create mode 100644 packages/project/test/fixtures/library.h/empty-ui5-workspace.yaml create mode 100644 packages/project/test/fixtures/library.h/invalid-ui5-workspace.yaml create mode 100644 packages/project/test/fixtures/library.h/ui5-workspace.yaml create mode 100644 packages/project/test/lib/graph/Workspace.js create mode 100644 packages/project/test/lib/graph/graph.integration.js create mode 100644 packages/project/test/lib/graph/helpers/createWorkspace.js diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js index f098d7bcd42..f495a3c28ca 100644 --- a/packages/project/lib/graph/Module.js +++ b/packages/project/lib/graph/Module.js @@ -100,7 +100,7 @@ class Module { * * @private * @typedef {object} @ui5/project/graph/Module~SpecificationsResult - * @property {@ui5/project/specifications/Project|undefined} Project found in the module (if one is found) + * @property {@ui5/project/specifications/Project|null} Project found in the module (if one is found) * @property {@ui5/project/specifications/Extension[]} Array of extensions found in the module * */ @@ -187,7 +187,7 @@ class Module { } return { - project: projects[0], + project: projects[0] || null, extensions }; } @@ -338,6 +338,8 @@ class Module { } // Validate found configurations with schema + // Validation is done again in the Specification class. But here we can reference the YAML file + // which adds helpful information like the line number const validationResults = await Promise.all( configs.map(async (config, documentIndex) => { // Catch validation errors to ensure proper order of rejections within Promise.all diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 8ea683f4fbc..00d8973e3ce 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -2,7 +2,9 @@ import {getLogger} from "@ui5/logger"; const log = getLogger("graph:ProjectGraph"); /** - * A rooted, directed graph representing a UI5 project, its dependencies and available extensions + * A rooted, directed graph representing a UI5 project, its dependencies and available extensions. + *

+ * While it allows defining cyclic dependencies, both traversal functions will throw an error if they encounter cycles. * * @public * @class @@ -20,9 +22,9 @@ class ProjectGraph { } this._rootProjectName = rootProjectName; - this._projects = new Map(); // maps project name to instance - this._adjList = new Map(); // maps project name to edges/dependencies - this._optAdjList = new Map(); // maps project name to optional dependencies + this._projects = new Map(); // maps project name to instance (= nodes) + this._adjList = new Map(); // maps project name to dependencies (= edges) + this._optAdjList = new Map(); // maps project name to optional dependencies (= edges) this._extensions = new Map(); // maps extension name to instance @@ -175,10 +177,6 @@ class ProjectGraph { declareDependency(fromProjectName, toProjectName) { this._checkSealed(); try { - // if (this._optAdjList[fromProjectName] && this._optAdjList[fromProjectName][toProjectName]) { - // // TODO: Do we even care? - // throw new Error(`Dependency has already been declared as optional`); - // } log.verbose(`Declaring dependency: ${fromProjectName} depends on ${toProjectName}`); this._declareDependency(this._adjList, fromProjectName, toProjectName); } catch (err) { @@ -199,10 +197,6 @@ class ProjectGraph { declareOptionalDependency(fromProjectName, toProjectName) { this._checkSealed(); try { - // if (this._adjList[fromProjectName] && this._adjList[fromProjectName][toProjectName]) { - // // TODO: Do we even care? - // throw new Error(`Dependency has already been declared as non-optional`); - // } log.verbose(`Declaring optional dependency: ${fromProjectName} depends on ${toProjectName}`); this._declareDependency(this._optAdjList, fromProjectName, toProjectName); this._hasUnresolvedOptionalDependencies = true; @@ -267,6 +261,11 @@ class ProjectGraph { */ getTransitiveDependencies(projectName) { const dependencies = new Set(); + if (!this._projects.has(projectName)) { + throw new Error( + `Failed to get transitive dependencies for project ${projectName}: ` + + `Unable to find project in project graph`); + } const processDependency = (depName) => { const adjacencies = this._adjList.get(depName); @@ -375,7 +374,6 @@ class ProjectGraph { * graph traversal will wait and only continue once the promise has resolved. */ - // TODO: Use generator functions instead? /** * Visit every project in the graph that can be reached by the given entry project exactly once. * The entry project defaults to the root project. @@ -398,28 +396,28 @@ class ProjectGraph { const queue = [{ projectNames: [startName], - predecessors: [] + ancestors: [] }]; const visited = Object.create(null); while (queue.length) { - const {projectNames, predecessors} = queue.shift(); // Get and remove first entry from queue + const {projectNames, ancestors} = queue.shift(); // Get and remove first entry from queue await Promise.all(projectNames.map(async (projectName) => { - this._checkCycle(predecessors, projectName); + this._checkCycle(ancestors, projectName); if (visited[projectName]) { return visited[projectName]; } return visited[projectName] = (async () => { - const newPredecessors = [...predecessors, projectName]; + const newAncestors = [...ancestors, projectName]; const dependencies = this.getDependencies(projectName); queue.push({ projectNames: dependencies, - predecessors: newPredecessors + ancestors: newAncestors }); await callback({ @@ -453,17 +451,17 @@ class ProjectGraph { return this._traverseDepthFirst(startName, Object.create(null), [], callback); } - async _traverseDepthFirst(projectName, visited, predecessors, callback) { - this._checkCycle(predecessors, projectName); + async _traverseDepthFirst(projectName, visited, ancestors, callback) { + this._checkCycle(ancestors, projectName); if (visited[projectName]) { return visited[projectName]; } return visited[projectName] = (async () => { - const newPredecessors = [...predecessors, projectName]; + const newAncestors = [...ancestors, projectName]; const dependencies = this.getDependencies(projectName); await Promise.all(dependencies.map((depName) => { - return this._traverseDepthFirst(depName, visited, newPredecessors, callback); + return this._traverseDepthFirst(depName, visited, newAncestors, callback); })); await callback({ @@ -609,13 +607,13 @@ class ProjectGraph { } } - _checkCycle(predecessors, projectName) { - if (predecessors.includes(projectName)) { - // We start to run in circles. That's neither expected nor something we can deal with - - // Mark first and last occurrence in chain with an asterisk - predecessors[predecessors.indexOf(projectName)] = `${projectName}*`; - throw new Error(`Detected cyclic dependency chain: ${predecessors.join(" -> ")} -> ${projectName}*`); + _checkCycle(ancestors, projectName) { + if (ancestors.includes(projectName)) { + // "Back-edge" detected. Neither BFS nor DFS searches should continue + // Mark first and last occurrence in chain with an asterisk and throw an error detailing the + // problematic dependency chain + ancestors[ancestors.indexOf(projectName)] = `*${projectName}*`; + throw new Error(`Detected cyclic dependency chain: ${ancestors.join(" -> ")} -> *${projectName}*`); } } diff --git a/packages/project/lib/graph/Workspace.js b/packages/project/lib/graph/Workspace.js new file mode 100644 index 00000000000..f5b5a7756ca --- /dev/null +++ b/packages/project/lib/graph/Workspace.js @@ -0,0 +1,257 @@ +import fs from "graceful-fs"; +import {globby, isDynamicPattern} from "globby"; +import path from "node:path"; +import {promisify} from "node:util"; +import {getLogger} from "@ui5/logger"; +import Module from "./Module.js"; +import {validateWorkspace} from "../validation/validator.js"; + +const readFile = promisify(fs.readFile); +const log = getLogger("graph:Workspace"); + + +/** + * Dependency graph node representing a module + * + * @public + * @typedef {object} @ui5/project/graph/Workspace~Configuration + * @property {string} node.specVersion + * @property {object} node.metadata Version of the project + * @property {string} node.metadata.name Name of the workspace configuration + * @property {object} node.dependencyManagement + * @property {@ui5/project/graph/Workspace~DependencyManagementResolutions[]} node.dependencyManagement.resolutions + */ + +/** + * A resolution entry for the dependency management section of the configuration + * + * @public + * @typedef {object} @ui5/project/graph/Workspace~DependencyManagementResolution + * @property {string} path Relative path to use for the workspace resolution process + */ + +/** + * Workspace representation + * + * @public + * @class + * @alias @ui5/project/graph/Workspace + */ +class Workspace { + #visitedNodePaths = new Set(); + #configValidated = false; + #configuration; + #cwd; + + /** + * @public + * @param {object} options + * @param {string} options.cwd Path to use for resolving all paths of the workspace configuration from. + * This should contain platform-specific path separators (i.e. must not be POSIX on non-POSIX systems) + * @param {@ui5/project/graph/Workspace~Configuration} options.configuration + * Workspace configuration + */ + constructor({cwd, configuration}) { + if (!cwd) { + throw new Error(`Could not create Workspace: Missing or empty parameter 'cwd'`); + } + if (!configuration) { + throw new Error(`Could not create Workspace: Missing or empty parameter 'configuration'`); + } + + this.#cwd = cwd; + this.#configuration = configuration; + } + + /** + * Get the name of this workspace + * + * @public + * @returns {string} Name of this workspace configuration + */ + getName() { + return this.#configuration.metadata.name; + } + + /** + * For a given project name (e.g. the value of the metadata.name property in a ui5.yaml), + * returns a [Module]{@ui5/project/graph/Module} instance or undefined depending on whether the project + * has been found in the configured dependency-management resolution paths of this workspace + * + * @public + * @param {string} projectName Name of the project + * @returns {Promise<@ui5/project/graph/Module|undefined>} + * Module instance of undefined if none is found + */ + async getModuleByProjectName(projectName) { + const {projectNameMap} = await this._getResolvedModules(); + return projectNameMap.get(projectName); + } + + /** + * For a given node id (e.g. the value of the name property in a package.json), + * returns a [Module]{@eId Node ID of} instance or undefined depending on whether the module + * has been found in the configured dependency-management resolution paths of this workspace + * and contains at least one project or extension + * + * @public + * @param {string} nodeId Node ID of the module + * @returns {Promise<@ui5/project/graph/Module|undefined>} + * Module instance of undefined if none is found + */ + async getModuleByNodeId(nodeId) { + const {moduleIdMap} = await this._getResolvedModules(); + return moduleIdMap.get(nodeId); + } + + _getResolvedModules() { + if (this._pResolvedModules) { + return this._pResolvedModules; + } + + return this._pResolvedModules = this._resolveModules(); + } + + async _resolveModules() { + await this._validateConfig(); + const resolutions = this.#configuration.dependencyManagement?.resolutions; + if (!resolutions?.length) { + return { + projectNameMap: new Map(), + moduleIdMap: new Map() + }; + } + + let resolvedModules = await Promise.all(resolutions.map(async (resolutionConfig) => { + if (!resolutionConfig.path) { + throw new Error( + `Missing property 'path' in dependency resolution configuration of workspace ${this.getName()}`); + } + return await this._getModulesFromPath( + this.#cwd, resolutionConfig.path); + })); + + // Flatten array since package-workspaces might have resolved to multiple modules for a single resolution + resolvedModules = Array.prototype.concat.apply([], resolvedModules); + + const projectNameMap = new Map(); + const moduleIdMap = new Map(); + await Promise.all(resolvedModules.map(async (module) => { + const {project, extensions} = await module.getSpecifications(); + if (project || extensions.length) { + moduleIdMap.set(module.getId(), module); + } else { + log.warn( + `Failed to create a project or extensions from module ${module.getId()} at ${module.getPath()}`); + } + if (project) { + projectNameMap.set(project.getName(), module); + log.verbose(`Module ${module.getId()} contains project ${project.getName()}`); + } + if (extensions.length) { + const extensionNames = extensions.map((e) => e.getName()).join(", "); + log.verbose(`Module ${module.getId()} contains extensions: ${extensionNames}`); + } + })); + return { + projectNameMap, + moduleIdMap + }; + } + + async _getModulesFromPath(cwd, relPath) { + const nodePath = path.join(cwd, relPath); + if (this.#visitedNodePaths.has(nodePath)) { + log.verbose(`Module located at ${nodePath} has already been visited`); + return []; + } + this.#visitedNodePaths.add(nodePath); + let pkg; + try { + pkg = await this._readPackageJson(nodePath); + if (!pkg?.name || !pkg?.version) { + throw new Error( + `package.json must contain fields 'name' and 'version'`); + } + } catch (err) { + throw new Error( + `Failed to resolve workspace dependency resolution path ${relPath} to ${nodePath}: ${err.message}`); + } + + // If the package.json defines an npm "workspaces", or an equivalent "ui5.workspaces" configuration, + // resolve the workspace and only use the resulting modules. The root package is ignored. + const packageWorkspaceConfig = pkg.ui5?.workspaces || pkg.workspaces; + if (packageWorkspaceConfig?.length) { + log.verbose(`Module ${pkg.name} provides a package.json workspaces configuration. ` + + `Ignoring the module and resolving workspaces instead...`); + const staticPatterns = []; + // Split provided patterns into dynamic and static patterns + // This is necessary, since fast-glob currently behaves different from + // "glob" (used by @npmcli/map-workspaces) in that it does not match the + // base directory in case it is equal to the pattern (https://github.com/mrmlnc/fast-glob/issues/47) + // For example a pattern "package-a" would not match a directory called + // "package-a" in the root directory of the project. + // We therefore detect the static pattern and resolve it directly + const dynamicPatterns = packageWorkspaceConfig.filter((pattern) => { + if (isDynamicPattern(pattern)) { + return true; + } else { + staticPatterns.push(pattern); + return false; + } + }); + + let searchPaths = []; + if (dynamicPatterns.length) { + searchPaths = await globby(dynamicPatterns, { + cwd: nodePath, + followSymbolicLinks: false, + onlyDirectories: true, + }); + } + searchPaths.push(...staticPatterns); + + const resolvedModules = new Map(); + await Promise.all(searchPaths.map(async (pkgPath) => { + const modules = await this._getModulesFromPath(nodePath, pkgPath); + modules.forEach((module) => { + const id = module.getId(); + if (!resolvedModules.get(id)) { + resolvedModules.set(id, module); + } + }); + })); + return Array.from(resolvedModules.values()); + } else { + return [new Module({ + id: pkg.name, + version: pkg.version, + modulePath: nodePath + })]; + } + } + + /** + * Reads the package.json file and returns its content + * + * @private + * @param {string} modulePath Path to the module containing the package.json + * @returns {object} Package json content + */ + async _readPackageJson(modulePath) { + const content = await readFile(path.join(modulePath, "package.json"), "utf8"); + return JSON.parse(content); + } + + async _validateConfig() { + if (this.#configValidated) { + return; + } + await validateWorkspace({ + config: this.#configuration + }); + this.#configValidated = true; + } +} + +export default Workspace; diff --git a/packages/project/lib/graph/graph.js b/packages/project/lib/graph/graph.js index 4fc60c4812a..f0e10c61383 100644 --- a/packages/project/lib/graph/graph.js +++ b/packages/project/lib/graph/graph.js @@ -1,6 +1,7 @@ import path from "node:path"; import projectGraphBuilder from "./projectGraphBuilder.js"; import ui5Framework from "./helpers/ui5Framework.js"; +import createWorkspace from "./helpers/createWorkspace.js"; import {getLogger} from "@ui5/logger"; const log = getLogger("generateProjectGraph"); @@ -46,27 +47,47 @@ function resolveProjectPaths(cwd, project) { * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project * @param {string} [options.resolveFrameworkDependencies=true] * Whether framework dependencies should be added to the graph + * @param {string} [options.workspaceName] + * Name of the workspace configuration that should be used if any is provided + * @param {string} [options.workspaceConfigPath=ui5-workspace.yaml] + * Workspace configuration file to use if no object has been provided + * @param {@ui5/project/graph/Workspace~Configuration} [options.workspaceConfiguration] + * Workspace configuration object to use instead of reading from a configuration file. + * Parameter workspaceName can either be omitted or has to match with the given configuration name * @returns {Promise<@ui5/project/graph/ProjectGraph>} Promise resolving to a Project Graph instance */ export async function graphFromPackageDependencies({ cwd, rootConfiguration, rootConfigPath, - versionOverride, resolveFrameworkDependencies = true + versionOverride, resolveFrameworkDependencies = true, + workspaceName, workspaceConfiguration, workspaceConfigPath = "ui5-workspace.yaml" }) { log.verbose(`Creating project graph using npm provider...`); const { default: NpmProvider } = await import("./providers/NodePackageDependencies.js"); + cwd = cwd ? path.resolve(cwd) : process.cwd(); + + let workspace; + if (workspaceName || workspaceConfiguration) { + workspace = await createWorkspace({ + cwd, + name: workspaceName, + configObject: workspaceConfiguration, + configPath: workspaceConfigPath + }); + } + const provider = new NpmProvider({ - cwd: cwd ? path.resolve(cwd) : process.cwd(), + cwd, rootConfiguration, rootConfigPath }); - const projectGraph = await projectGraphBuilder(provider); + const projectGraph = await projectGraphBuilder(provider, workspace); if (resolveFrameworkDependencies) { - await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride, workspace}); } return projectGraph; diff --git a/packages/project/lib/graph/helpers/createWorkspace.js b/packages/project/lib/graph/helpers/createWorkspace.js new file mode 100644 index 00000000000..2283c698e34 --- /dev/null +++ b/packages/project/lib/graph/helpers/createWorkspace.js @@ -0,0 +1,146 @@ +import path from "node:path"; +import Workspace from "../Workspace.js"; +import {validateWorkspace} from "../../validation/validator.js"; +import {getLogger} from "@ui5/logger"; +const log = getLogger("generateProjectGraph"); + +const DEFAULT_WORKSPACE_CONFIG_PATH = "ui5-workspace.yaml"; +const DEFAULT_WORKSPACE_NAME = "default"; + +export default async function createWorkspace({ + cwd, name, configObject, configPath +}) { + if (!cwd || (!configObject && !configPath)) { + throw new Error(`createWorkspace: Missing parameter 'cwd', 'configObject' or 'configPath'`); + } + if (configObject) { + if (!configObject?.metadata?.name) { + throw new Error(`Invalid workspace configuration: Missing or empty property 'metadata.name'`); + } + if (name && configObject.metadata.name !== name) { + throw new Error( + `The provided workspace name '${name}' does not match ` + + `the provided workspace configuration '${configObject.metadata.name}'`); + } else { + log.verbose(`Using provided workspace configuration ${configObject.metadata.name}...`); + return new Workspace({ + cwd, + configuration: configObject + }); + } + } else { + if (!name) { + throw new Error(`createWorkspace: Parameter 'configPath' implies parameter 'name', but it's empty`); + } + let filePath = configPath; + if (!path.isAbsolute(filePath)) { + filePath = path.join(cwd, configPath); + } + try { + const workspaceConfigs = + await readWorkspaceConfigFile(filePath, ); + const configuration = workspaceConfigs.find((config) => { + return config.metadata.name === name; + }); + + if (configuration) { + log.verbose(`Using workspace configuration "${name}" from ${configPath}...`); + return new Workspace({ + cwd: path.dirname(filePath), + configuration + }); + } else if (name === DEFAULT_WORKSPACE_NAME) { + // Requested workspace not found + // Do not throw if the requested name is the default + return null; + } else { + throw new Error(`Could not find a workspace named '${name}' in ${configPath}`); + } + } catch (err) { + if (name === DEFAULT_WORKSPACE_NAME && configPath === DEFAULT_WORKSPACE_CONFIG_PATH && + err.cause?.code === "ENOENT") { + // Do not throw if the default workspace in the default file was requested but not found + log.verbose(`No workspace configuration file provided at ${filePath}`); + return null; + } else { + throw err; + } + } + } +} + +async function readWorkspaceConfigFile(filePath, throwIfMissing) { + const { + default: fs + } = await import("graceful-fs"); + const {promisify} = await import("node:util"); + const readFile = promisify(fs.readFile); + const jsyaml = await import("js-yaml"); + + let fileContent; + try { + fileContent = await readFile(filePath, {encoding: "utf8"}); + } catch (err) { + throw new Error( + `Failed to load workspace configuration from path ${filePath}: ${err.message}`, { + cause: err + }); + } + let configs; + try { + configs = jsyaml.loadAll(fileContent, undefined, { + filename: filePath, + }); + } catch (err) { + if (err.name === "YAMLException") { + throw new Error(`Failed to parse workspace configuration at ` + + `${filePath}\nError: ${err.message}`); + } else { + throw new Error( + `Failed to parse workspace configuration at ${filePath}: ${err.message}`); + } + } + + if (!configs || !configs.length) { + // No configs found => exit here + log.verbose(`Found empty workspace configuration file at ${filePath}`); + return configs; + } + + // Validate found configurations with schema + // Validation is done again in the Workspace class. But here we can reference the YAML file + // which adds helpful information like the line number + const validationResults = await Promise.all( + configs.map(async (config, documentIndex) => { + // Catch validation errors to ensure proper order of rejections within Promise.all + try { + await validateWorkspace({ + config, + yaml: { + path: filePath, + source: fileContent, + documentIndex + } + }); + } catch (error) { + return error; + } + }) + ); + + const validationErrors = validationResults.filter(($) => $); + + if (validationErrors.length > 0) { + // Throw any validation errors + // For now just throw the error of the first invalid document + throw validationErrors[0]; + } + + return configs; +} + +// Export function for testing only +/* istanbul ignore else */ +if (process.env.NODE_ENV === "test") { + createWorkspace._readWorkspaceConfigFile = readWorkspaceConfigFile; +} diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index a50af78f041..01f51036466 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -4,33 +4,38 @@ import {getLogger} from "@ui5/logger"; const log = getLogger("graph:helpers:ui5Framework"); class ProjectProcessor { - constructor({libraryMetadata}) { + constructor({libraryMetadata, graph, workspace}) { this._libraryMetadata = libraryMetadata; + this._graph = graph; + this._workspace = workspace; this._projectGraphPromises = Object.create(null); } - async addProjectToGraph(libName, projectGraph) { + async addProjectToGraph(libName, ancestors) { + if (ancestors) { + this._checkCycle(ancestors, libName); + } if (this._projectGraphPromises[libName]) { return this._projectGraphPromises[libName]; } - return this._projectGraphPromises[libName] = this._addProjectToGraph(libName, projectGraph); + return this._projectGraphPromises[libName] = this._addProjectToGraph(libName, ancestors); } - async _addProjectToGraph(libName, projectGraph) { + async _addProjectToGraph(libName, ancestors = []) { log.verbose(`Creating project for library ${libName}...`); - if (!this._libraryMetadata[libName]) { throw new Error(`Failed to find library ${libName} in dist packages metadata.json`); } const depMetadata = this._libraryMetadata[libName]; + const graph = this._graph; - if (projectGraph.getProject(depMetadata.id)) { + if (graph.getProject(libName)) { // Already added return; } const dependencies = await Promise.all(depMetadata.dependencies.map(async (depName) => { - await this.addProjectToGraph(depName, projectGraph); + await this.addProjectToGraph(depName, [...ancestors, libName]); return depName; })); @@ -38,7 +43,7 @@ class ProjectProcessor { const resolvedOptionals = await Promise.all(depMetadata.optionalDependencies.map(async (depName) => { if (this._libraryMetadata[depName]) { log.verbose(`Resolving optional dependency ${depName} for project ${libName}...`); - await this.addProjectToGraph(depName, projectGraph); + await this.addProjectToGraph(depName, [...ancestors, libName]); return depName; } })); @@ -46,16 +51,63 @@ class ProjectProcessor { dependencies.push(...resolvedOptionals.filter(($)=>$)); } - const ui5Module = new Module({ - id: depMetadata.id, - version: depMetadata.version, - modulePath: depMetadata.path - }); + let projectIsFromWorkspace = false; + let ui5Module; + if (this._workspace) { + ui5Module = await this._workspace.getModuleByProjectName(libName); + if (ui5Module) { + log.info(`Resolved project ${libName} via ${this._workspace.getName()} workspace ` + + `to version ${ui5Module.getVersion()}`); + log.verbose(` Resolved module ${libName} to path ${ui5Module.getPath()}`); + log.verbose(` Requested version was: ${depMetadata.version}`); + projectIsFromWorkspace = true; + } + } + + if (!ui5Module) { + ui5Module = new Module({ + id: depMetadata.id, + version: depMetadata.version, + modulePath: depMetadata.path + }); + } const {project} = await ui5Module.getSpecifications(); - projectGraph.addProject(project); + graph.addProject(project); dependencies.forEach((dependency) => { - projectGraph.declareDependency(libName, dependency); + graph.declareDependency(libName, dependency); }); + if (projectIsFromWorkspace) { + // Add any dependencies that are only declared in the workspace resolved project + // Do not remove superfluous dependencies (might be added later though) + await Promise.all(project.getFrameworkDependencies().map(async ({name, optional, development}) => { + // Only proceed with dependencies which are not "optional" or "development", + // and not already listed in the dependencies of the original node + if (optional || development || dependencies.includes(name)) { + return; + } + + if (!this._libraryMetadata[name]) { + throw new Error( + `Unable to find dependency ${name}, required by project ${project.getName()} ` + + `(resolved via ${this._workspace.getName()} workspace) in current set of libraries. ` + + `Try adding it temporarily to the root project's dependencies`); + } + + await this.addProjectToGraph(name, [...ancestors, libName]); + graph.declareDependency(libName, name); + })); + } + } + _checkCycle(ancestors, projectName) { + if (ancestors.includes(projectName)) { + // "Back-edge" detected. This would cause a deadlock + // Mark first and last occurrence in chain with an asterisk and throw an error detailing the + // problematic dependency chain + ancestors[ancestors.indexOf(projectName)] = `*${projectName}*`; + throw new Error( + `ui5Framework:ProjectPreprocessor: Detected cyclic dependency chain: ` + + `${ancestors.join(" -> ")} -> *${projectName}*`); + } } } @@ -158,6 +210,8 @@ export default { * @param {object} [options] * @param {string} [options.versionOverride] Framework version to use instead of the root projects framework * version + * @param {@ui5/project/graph/Workspace} [options.workspace] + * Optional workspace instance to use for overriding node resolutions * @returns {Promise<@ui5/project/graph/ProjectGraph>} * Promise resolving with the given graph instance to allow method chaining */ @@ -245,15 +299,18 @@ export default { `resolved in ${prettyHrtime(timeDiff)}`); } - const projectProcessor = new utils.ProjectProcessor({ - libraryMetadata - }); - const frameworkGraph = new ProjectGraph({ rootProjectName: `fake-root-of-${rootProject.getName()}-framework-dependency-graph` }); + + const projectProcessor = new utils.ProjectProcessor({ + libraryMetadata, + graph: frameworkGraph, + workspace: options.workspace + }); + await Promise.all(referencedLibraries.map(async (libName) => { - await projectProcessor.addProjectToGraph(libName, frameworkGraph); + await projectProcessor.addProjectToGraph(libName); })); log.verbose("Joining framework graph into project graph..."); diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index 713e2fa432e..0277ca1d15c 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -83,7 +83,8 @@ function validateNode(node) { * @public * @function * @name @ui5/project/graph/ProjectGraphBuilder~NodeProvider#getDependencies - * @param {Node} The root node of the dependency graph + * @param {Node} node The root node of the dependency graph + * @param {@ui5/project/graph/Workspace} [workspace] workspace instance to use for overriding node resolution * @returns {Node[]} Array of nodes which are direct dependencies of the given node */ @@ -95,9 +96,12 @@ function validateNode(node) { * @function default * @static * @param {@ui5/project/graph/ProjectGraphBuilder~NodeProvider} nodeProvider + * Node provider instance to use for building the graph + * @param {@ui5/project/graph/Workspace} [workspace] + * Optional workspace instance to use for overriding project resolutions * @returns {@ui5/project/graph/ProjectGraph} A new project graph instance */ -async function projectGraphBuilder(nodeProvider) { +async function projectGraphBuilder(nodeProvider, workspace) { const shimCollection = new ShimCollection(); const moduleCollection = Object.create(null); @@ -141,7 +145,7 @@ async function projectGraphBuilder(nodeProvider) { const queue = []; - const rootDependencies = await nodeProvider.getDependencies(rootNode); + const rootDependencies = await nodeProvider.getDependencies(rootNode, workspace); if (rootDependencies && rootDependencies.length) { queue.push({ @@ -174,7 +178,6 @@ async function projectGraphBuilder(nodeProvider) { } const {project, extensions} = await ui5Module.getSpecifications(); - return { node, project, diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js index ad57d080433..ecf79c5ef47 100644 --- a/packages/project/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -34,8 +34,6 @@ class NodePackageDependencies { this._cwd = cwd; this._rootConfiguration = rootConfiguration; this._rootConfigPath = rootConfigPath; - - // this._nodes = {}; } async getRootNode() { @@ -49,9 +47,6 @@ class NodePackageDependencies { `Failed to locate package.json for directory ${path.resolve(this._cwd)}`); } const modulePath = path.dirname(rootPkg.path); - // this._nodes[rootPkg.packageJson.name] = { - // dependencies: Object.keys(rootPkg.packageJson.dependencies) - // }; return { id: rootPkg.packageJson.name, version: rootPkg.packageJson.version, @@ -62,19 +57,32 @@ class NodePackageDependencies { }; } - async getDependencies(node) { + async getDependencies(node, workspace) { log.verbose(`Resolving dependencies of ${node.id}...`); if (!node._dependencies) { return []; } return Promise.all(node._dependencies.map(async ({name, optional}) => { - const modulePath = await this._resolveModulePath(node.path, name); + const modulePath = await this._resolveModulePath(node.path, name, workspace); return this._getNode(modulePath, optional); })); } - async _resolveModulePath(baseDir, moduleName) { + async _resolveModulePath(baseDir, moduleName, workspace) { log.verbose(`Resolving module path for '${moduleName}'...`); + + if (workspace) { + // Check whether node can be resolved via the provided Workspace instance + // If yes, replace the node from NodeProvider with the one from Workspace + const workspaceNode = await workspace.getModuleByNodeId(moduleName); + if (workspaceNode) { + log.info(`Resolved module ${moduleName} via ${workspace.getName()} workspace ` + + `to version ${workspaceNode.getVersion()}`); + log.verbose(` Resolved module ${moduleName} to path ${workspaceNode.getPath()}`); + return workspaceNode.getPath(); + } + } + try { let packageJsonPath = await resolveModulePath(moduleName + "/package.json", { basedir: baseDir, diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fb51aec6b0c..406a0fab923 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -16,6 +16,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", + "globby": "^13.1.2", "graceful-fs": "^4.2.10", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", diff --git a/packages/project/package.json b/packages/project/package.json index d1b28f06cc4..86b3b54ba4b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -123,6 +123,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", + "globby": "^13.1.2", "graceful-fs": "^4.2.10", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", diff --git a/packages/project/test/fixtures/application.a/ui5-test-corrupt.yaml b/packages/project/test/fixtures/application.a/ui5-test-corrupt.yaml new file mode 100644 index 00000000000..ecce9d7e78b --- /dev/null +++ b/packages/project/test/fixtures/application.a/ui5-test-corrupt.yaml @@ -0,0 +1 @@ +|-\nfoo\nbar diff --git a/packages/project/test/fixtures/application.a/ui5-test-empty.yaml b/packages/project/test/fixtures/application.a/ui5-test-empty.yaml new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/collection.b/library.a/package.json b/packages/project/test/fixtures/collection.b/library.a/package.json new file mode 100644 index 00000000000..aec498f7283 --- /dev/null +++ b/packages/project/test/fixtures/collection.b/library.a/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/collection.b/library.a/src/library/a/.library b/packages/project/test/fixtures/collection.b/library.a/src/library/a/.library new file mode 100644 index 00000000000..ef0ea1065bc --- /dev/null +++ b/packages/project/test/fixtures/collection.b/library.a/src/library/a/.library @@ -0,0 +1,17 @@ + + + + library.a + SAP SE + Some fancy copyright ${currentYear} + ${version} + + Library A + + + + library.d + + + + diff --git a/packages/project/test/fixtures/collection.b/library.a/src/library/a/themes/base/library.source.less b/packages/project/test/fixtures/collection.b/library.a/src/library/a/themes/base/library.source.less new file mode 100644 index 00000000000..ff0f1d5e3df --- /dev/null +++ b/packages/project/test/fixtures/collection.b/library.a/src/library/a/themes/base/library.source.less @@ -0,0 +1,6 @@ +@libraryAColor1: lightgoldenrodyellow; + +.library-a-foo { + color: @libraryAColor1; + padding: 1px 2px 3px 4px; +} diff --git a/packages/project/test/fixtures/collection.b/library.a/test/library/a/Test.html b/packages/project/test/fixtures/collection.b/library.a/test/library/a/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/collection.b/library.a/ui5.yaml b/packages/project/test/fixtures/collection.b/library.a/ui5.yaml new file mode 100644 index 00000000000..8d4784313c3 --- /dev/null +++ b/packages/project/test/fixtures/collection.b/library.a/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: library +metadata: + name: library.a diff --git a/packages/project/test/fixtures/collection.b/library.b/package.json b/packages/project/test/fixtures/collection.b/library.b/package.json new file mode 100644 index 00000000000..2a0243b1683 --- /dev/null +++ b/packages/project/test/fixtures/collection.b/library.b/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.b", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/collection.b/library.b/src/library/b/.library b/packages/project/test/fixtures/collection.b/library.b/src/library/b/.library new file mode 100644 index 00000000000..7128151f3f4 --- /dev/null +++ b/packages/project/test/fixtures/collection.b/library.b/src/library/b/.library @@ -0,0 +1,17 @@ + + + + library.b + SAP SE + Some fancy copyright ${currentYear} + ${version} + + Library B + + + + library.d + + + + diff --git a/packages/project/test/fixtures/collection.b/library.b/test/library/b/Test.html b/packages/project/test/fixtures/collection.b/library.b/test/library/b/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/collection.b/library.b/ui5.yaml b/packages/project/test/fixtures/collection.b/library.b/ui5.yaml new file mode 100644 index 00000000000..b2fe5be59ee --- /dev/null +++ b/packages/project/test/fixtures/collection.b/library.b/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: library +metadata: + name: library.b diff --git a/packages/project/test/fixtures/collection.b/library.c/package.json b/packages/project/test/fixtures/collection.b/library.c/package.json new file mode 100644 index 00000000000..64ac75d6ffe --- /dev/null +++ b/packages/project/test/fixtures/collection.b/library.c/package.json @@ -0,0 +1,9 @@ +{ + "name": "library.c", + "version": "1.0.0", + "description": "Simple SAPUI5 based library", + "dependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/collection.b/library.c/src/library/c/.library b/packages/project/test/fixtures/collection.b/library.c/src/library/c/.library new file mode 100644 index 00000000000..4180ce2af2f --- /dev/null +++ b/packages/project/test/fixtures/collection.b/library.c/src/library/c/.library @@ -0,0 +1,17 @@ + + + + library.c + SAP SE + ${copyright} + ${version} + + Library C + + + + library.d + + + + diff --git a/packages/project/test/fixtures/collection.b/library.c/test/LibraryC/Test.html b/packages/project/test/fixtures/collection.b/library.c/test/LibraryC/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/collection.b/library.c/ui5.yaml b/packages/project/test/fixtures/collection.b/library.c/ui5.yaml new file mode 100644 index 00000000000..7c5e38a7fc1 --- /dev/null +++ b/packages/project/test/fixtures/collection.b/library.c/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: library +metadata: + name: library.c diff --git a/packages/project/test/fixtures/collection.b/package.json b/packages/project/test/fixtures/collection.b/package.json new file mode 100644 index 00000000000..25e37da0426 --- /dev/null +++ b/packages/project/test/fixtures/collection.b/package.json @@ -0,0 +1,17 @@ +{ + "name": "collection", + "version": "1.0.0", + "description": "Simple Collection used for Workspace testing", + "dependencies": { + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "ui5": { + "workspaces": [ + "library.{a,b}", + "*c", + "sub-*" + ] + } +} diff --git a/packages/project/test/fixtures/collection.b/sub-collection/package.json b/packages/project/test/fixtures/collection.b/sub-collection/package.json new file mode 100644 index 00000000000..046177300dc --- /dev/null +++ b/packages/project/test/fixtures/collection.b/sub-collection/package.json @@ -0,0 +1,10 @@ +{ + "name": "sub-collection", + "version": "1.0.0", + "description": "Sub-Collection package", + "ui5": { + "workspaces": [ + "../../library.d" + ] + } +} diff --git a/packages/project/test/fixtures/collection.b/test.js b/packages/project/test/fixtures/collection.b/test.js new file mode 100644 index 00000000000..d063db1e726 --- /dev/null +++ b/packages/project/test/fixtures/collection.b/test.js @@ -0,0 +1,4 @@ +import {globby} from 'globby'; + +const paths = await globby(["library.a"]); +console.log("paths") diff --git a/packages/project/test/fixtures/collection/package.json b/packages/project/test/fixtures/collection/package.json index 81b948438bd..24849dbe4a8 100644 --- a/packages/project/test/fixtures/collection/package.json +++ b/packages/project/test/fixtures/collection/package.json @@ -8,11 +8,9 @@ "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, - "collection": { - "modules": { - "library.a": "./library.a", - "library.b": "./library.b", - "library.c": "./library.c" - } - } + "workspaces": [ + "library.a", + "library.b", + "library.c" + ] } diff --git a/packages/project/test/fixtures/collection/test.js b/packages/project/test/fixtures/collection/test.js new file mode 100644 index 00000000000..d063db1e726 --- /dev/null +++ b/packages/project/test/fixtures/collection/test.js @@ -0,0 +1,4 @@ +import {globby} from 'globby'; + +const paths = await globby(["library.a"]); +console.log("paths") diff --git a/packages/project/test/fixtures/extension.a/package.json b/packages/project/test/fixtures/extension.a/package.json index c1f690b16dd..c3f37004f9f 100644 --- a/packages/project/test/fixtures/extension.a/package.json +++ b/packages/project/test/fixtures/extension.a/package.json @@ -1,3 +1,4 @@ { - "name": "extension.a" + "name": "extension.a", + "version": "1.0.0" } diff --git a/packages/project/test/fixtures/extension.a/ui5.yaml b/packages/project/test/fixtures/extension.a/ui5.yaml new file mode 100644 index 00000000000..1ae473d86b2 --- /dev/null +++ b/packages/project/test/fixtures/extension.a/ui5.yaml @@ -0,0 +1,8 @@ +--- +specVersion: "2.0" +kind: extension +type: task +metadata: + name: extension.a-ui5-yaml +task: + path: lib/extensionModule.js diff --git a/packages/project/test/fixtures/library.d-adtl-deps/main/src/library/d/.library b/packages/project/test/fixtures/library.d-adtl-deps/main/src/library/d/.library new file mode 100644 index 00000000000..53c2d14c9d6 --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/main/src/library/d/.library @@ -0,0 +1,11 @@ + + + + library.d + SAP SE + Some fancy copyright + ${version} + + Library D + + diff --git a/packages/project/test/fixtures/library.d-adtl-deps/main/src/library/d/some.js b/packages/project/test/fixtures/library.d-adtl-deps/main/src/library/d/some.js new file mode 100644 index 00000000000..719155d1e6d --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/main/src/library/d/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); diff --git a/packages/project/test/fixtures/library.d-adtl-deps/main/test/library/d/Test.html b/packages/project/test/fixtures/library.d-adtl-deps/main/test/library/d/Test.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/package.json b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/package.json new file mode 100644 index 00000000000..d8f009d42d7 --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.f", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for circular dependencies", + "dependencies": { + "library.g": "file:../library.g" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/src/library/f/.library b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/src/library/f/.library new file mode 100644 index 00000000000..c45172d48b8 --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/src/library/f/.library @@ -0,0 +1,11 @@ + + + + library.f + SAP SE + ${copyright} + ${version} + + Library F + + diff --git a/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/src/library/f/some.js b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/src/library/f/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/src/library/f/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/ui5.yaml b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/ui5.yaml new file mode 100644 index 00000000000..52c17922bfd --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.f/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: library +metadata: + name: library.f diff --git a/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/package.json b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/package.json new file mode 100644 index 00000000000..fff39011db1 --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.g", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - test for circular dependencies", + "devDependencies": { + "library.f": "file:../library.f" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/src/library/g/.library b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/src/library/g/.library new file mode 100644 index 00000000000..4d884278e90 --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/src/library/g/.library @@ -0,0 +1,11 @@ + + + + library.g + SAP SE + ${copyright} + ${version} + + Library G + + diff --git a/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/src/library/g/some.js b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/src/library/g/some.js new file mode 100644 index 00000000000..81e73436075 --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/src/library/g/some.js @@ -0,0 +1,4 @@ +/*! + * ${copyright} + */ +console.log('HelloWorld'); \ No newline at end of file diff --git a/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/ui5.yaml b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/ui5.yaml new file mode 100644 index 00000000000..a20d2d4991c --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/node_modules/library.g/ui5.yaml @@ -0,0 +1,5 @@ +--- +specVersion: "2.3" +type: library +metadata: + name: library.g diff --git a/packages/project/test/fixtures/library.d-adtl-deps/package.json b/packages/project/test/fixtures/library.d-adtl-deps/package.json new file mode 100644 index 00000000000..10cd27bded1 --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/package.json @@ -0,0 +1,11 @@ +{ + "name": "library.d", + "version": "2.0.0", + "description": "Version of library.d that has additional dependencies defined. Used for testing UI5 Workspace resolutions", + "dependencies": { + "library.f": "file:../library.f" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/library.d-adtl-deps/ui5.yaml b/packages/project/test/fixtures/library.d-adtl-deps/ui5.yaml new file mode 100644 index 00000000000..9c8d48e1127 --- /dev/null +++ b/packages/project/test/fixtures/library.d-adtl-deps/ui5.yaml @@ -0,0 +1,9 @@ +specVersion: "2.3" +type: library +metadata: + name: library.d +resources: + configuration: + paths: + src: main/src + test: main/test diff --git a/packages/project/test/fixtures/library.e/ui5-workspace.yaml b/packages/project/test/fixtures/library.e/ui5-workspace.yaml new file mode 100644 index 00000000000..7e8fd36b8f1 --- /dev/null +++ b/packages/project/test/fixtures/library.e/ui5-workspace.yaml @@ -0,0 +1,13 @@ +specVersion: workspace/1.0 +metadata: + name: config-a +dependencyManagement: + resolutions: + - path: ../library.d +--- +specVersion: workspace/1.0 +metadata: + name: config-b +dependencyManagement: + resolutions: + - path: ../library.x diff --git a/packages/project/test/fixtures/library.h/corrupt-ui5-workspace.yaml b/packages/project/test/fixtures/library.h/corrupt-ui5-workspace.yaml new file mode 100644 index 00000000000..ecce9d7e78b --- /dev/null +++ b/packages/project/test/fixtures/library.h/corrupt-ui5-workspace.yaml @@ -0,0 +1 @@ +|-\nfoo\nbar diff --git a/packages/project/test/fixtures/library.h/custom-ui5-workspace.yaml b/packages/project/test/fixtures/library.h/custom-ui5-workspace.yaml new file mode 100644 index 00000000000..177dea5f67c --- /dev/null +++ b/packages/project/test/fixtures/library.h/custom-ui5-workspace.yaml @@ -0,0 +1,15 @@ +specVersion: workspace/1.0 +metadata: + name: library-d +dependencyManagement: + resolutions: + - path: ../library.d +--- +specVersion: workspace/1.0 +metadata: + name: all-libraries +dependencyManagement: + resolutions: + - path: ../library.d + - path: ../library.e + - path: ../library.f diff --git a/packages/project/test/fixtures/library.h/empty-ui5-workspace.yaml b/packages/project/test/fixtures/library.h/empty-ui5-workspace.yaml new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/project/test/fixtures/library.h/invalid-ui5-workspace.yaml b/packages/project/test/fixtures/library.h/invalid-ui5-workspace.yaml new file mode 100644 index 00000000000..ca4ad00f4d3 --- /dev/null +++ b/packages/project/test/fixtures/library.h/invalid-ui5-workspace.yaml @@ -0,0 +1,6 @@ +specVersion: wörkspace/1.0 +metadata: + name: default +dependencyManagement: + resolutions: + - path: ../library.d diff --git a/packages/project/test/fixtures/library.h/ui5-workspace.yaml b/packages/project/test/fixtures/library.h/ui5-workspace.yaml new file mode 100644 index 00000000000..ac0ea1c35ba --- /dev/null +++ b/packages/project/test/fixtures/library.h/ui5-workspace.yaml @@ -0,0 +1,15 @@ +specVersion: workspace/1.0 +metadata: + name: default +dependencyManagement: + resolutions: + - path: ../library.d +--- +specVersion: workspace/1.0 +metadata: + name: all-libraries +dependencyManagement: + resolutions: + - path: ../library.d + - path: ../library.e + - path: ../library.f diff --git a/packages/project/test/lib/graph/Module.js b/packages/project/test/lib/graph/Module.js index b7c7ec8ed61..b5ca1afe1a7 100644 --- a/packages/project/test/lib/graph/Module.js +++ b/packages/project/test/lib/graph/Module.js @@ -6,14 +6,15 @@ import Module from "../../../lib/graph/Module.js"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); -const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); +const fixturesPath = path.join(__dirname, "..", "..", "fixtures"); +const applicationAPath = path.join(fixturesPath, "application.a"); const buildDescriptionApplicationAPath = - path.join(__dirname, "..", "..", "fixtures", "build-manifest", "application.a"); + path.join(fixturesPath, "build-manifest", "application.a"); const buildDescriptionLibraryAPath = - path.join(__dirname, "..", "..", "fixtures", "build-manifest", "library.e"); -const applicationHPath = path.join(__dirname, "..", "..", "fixtures", "application.h"); -const collectionPath = path.join(__dirname, "..", "..", "fixtures", "collection"); -const themeLibraryEPath = path.join(__dirname, "..", "..", "fixtures", "theme.library.e"); + path.join(fixturesPath, "build-manifest", "library.e"); +const applicationHPath = path.join(fixturesPath, "application.h"); +const collectionPath = path.join(fixturesPath, "collection"); +const themeLibraryEPath = path.join(fixturesPath, "theme.library.e"); const basicModuleInput = { id: "application.a.id", @@ -379,6 +380,49 @@ test("Invalid configuration in file", async (t) => { t.truthy(err.yaml, "Error object contains yaml information"); }); +test("Corrupt configuration in file", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configPath: "ui5-test-corrupt.yaml" + }); + const err = await t.throwsAsync(ui5Module.getSpecifications()); + + t.regex(err.message, + new RegExp("^Failed to parse configuration for project application.a.id at 'ui5-test-corrupt.yaml'.*"), + "Threw with parsing error"); +}); + +test("Empty configuration in file", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configPath: "ui5-test-empty.yaml" + }); + const res = await ui5Module.getSpecifications(); + + t.deepEqual(res, { + project: null, + extensions: [] + }, "Returned no project or extensions"); +}); + +test("No configuration", async (t) => { + const ui5Module = new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: fixturesPath, // does not contain a ui5.yaml + }); + const res = await ui5Module.getSpecifications(); + + t.deepEqual(res, { + project: null, + extensions: [] + }, "Returned no project or extensions"); +}); + test("Incorrect config path", async (t) => { const ui5Module = new Module({ id: "application.a.id", diff --git a/packages/project/test/lib/graph/ProjectGraph.js b/packages/project/test/lib/graph/ProjectGraph.js index fdbbe1f41c2..ea0a3e198fb 100644 --- a/packages/project/test/lib/graph/ProjectGraph.js +++ b/packages/project/test/lib/graph/ProjectGraph.js @@ -364,6 +364,20 @@ test("getTransitiveDependencies", async (t) => { ], "Should store and return correct transitive dependencies for library.a"); }); +test("getTransitiveDependencies: Unknown project", (t) => { + const {ProjectGraph} = t.context; + const graph = new ProjectGraph({ + rootProjectName: "my root project" + }); + + const error = t.throws(() => { + graph.getTransitiveDependencies("library.x"); + }); + t.is(error.message, + "Failed to get transitive dependencies for project library.x: Unable to find project in project graph", + "Should throw with expected error message"); +}); + test("declareDependency: Unknown source", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ @@ -485,7 +499,6 @@ test("declareDependency: Already declared as optional, now non-optional", async "Should declare dependency as non-optional"); }); - test("getDependencies: Project without dependencies", async (t) => { const {ProjectGraph} = t.context; const graph = new ProjectGraph({ @@ -775,7 +788,7 @@ test("traverseBreadthFirst: Detect cycle", async (t) => { const error = await t.throwsAsync(graph.traverseBreadthFirst(() => {})); t.is(error.message, - "Detected cyclic dependency chain: library.a* -> library.b -> library.a*", + "Detected cyclic dependency chain: *library.a* -> library.b -> *library.a*", "Should throw with expected error message"); }); @@ -1000,7 +1013,7 @@ test("traverseDepthFirst: Detect cycle", async (t) => { const error = await t.throwsAsync(graph.traverseDepthFirst(() => {})); t.is(error.message, - "Detected cyclic dependency chain: library.a* -> library.b -> library.a*", + "Detected cyclic dependency chain: *library.a* -> library.b -> *library.a*", "Should throw with expected error message"); }); @@ -1020,7 +1033,7 @@ test("traverseDepthFirst: Cycle which does not occur in BFS", async (t) => { const error = await t.throwsAsync(graph.traverseDepthFirst(() => {})); t.is(error.message, - "Detected cyclic dependency chain: library.a -> library.b* -> library.c -> library.b*", + "Detected cyclic dependency chain: library.a -> *library.b* -> library.c -> *library.b*", "Should throw with expected error message"); }); diff --git a/packages/project/test/lib/graph/Workspace.js b/packages/project/test/lib/graph/Workspace.js new file mode 100644 index 00000000000..af79ca3d46b --- /dev/null +++ b/packages/project/test/lib/graph/Workspace.js @@ -0,0 +1,473 @@ +import path from "node:path"; +import {fileURLToPath} from "node:url"; +import test from "ava"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +import Module from "../../../lib/graph/Module.js"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const libraryD = path.join(__dirname, "..", "..", "fixtures", "library.d"); +const libraryE = path.join(__dirname, "..", "..", "fixtures", "library.e"); +const collectionLibraryA = path.join(__dirname, "..", "..", "fixtures", "collection", "library.a"); +const collectionLibraryB = path.join(__dirname, "..", "..", "fixtures", "collection", "library.b"); +const collectionLibraryC = path.join(__dirname, "..", "..", "fixtures", "collection", "library.c"); +const collectionBLibraryA = path.join(__dirname, "..", "..", "fixtures", "collection.b", "library.a"); +const collectionBLibraryB = path.join(__dirname, "..", "..", "fixtures", "collection.b", "library.b"); +const collectionBLibraryC = path.join(__dirname, "..", "..", "fixtures", "collection.b", "library.c"); + +function createWorkspaceConfig({dependencyManagement}) { + return { + specVersion: "workspace/1.0", + metadata: { + name: "workspace-name" + }, + dependencyManagement + }; +} + +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.log = { + warn: sinon.stub(), + verbose: sinon.stub(), + error: sinon.stub(), + info: sinon.stub(), + isLevelEnabled: () => true + }; + + t.context.Workspace = await esmock("../../../lib/graph/Workspace.js", { + "@ui5/logger": { + getLogger: sinon.stub().withArgs("graph:Workspace").returns(t.context.log) + } + }); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); + esmock.purge(t.context.ProjectGraph); +}); + +test("Basic resolution", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{ + path: "../../fixtures/library.d" + }, { + path: "../../fixtures/library.e" + }] + } + }) + }); + + t.is(workspace.getName(), "workspace-name"); + + const {projectNameMap, moduleIdMap} = await workspace._getResolvedModules(); + t.deepEqual(Array.from(projectNameMap.keys()).sort(), ["library.d", "library.e"], "Correct project name keys"); + + const libE = projectNameMap.get("library.e"); + t.true(libE instanceof Module, "library.e value is instance of Module"); + t.is(libE.getVersion(), "1.0.0", "Correct version for library.e"); + t.is(libE.getPath(), libraryE, "Correct path for library.e"); + + const libD = projectNameMap.get("library.d"); + t.true(libD instanceof Module, "library.d value is instance of Module"); + t.is(libD.getVersion(), "1.0.0", "Correct version for library.d"); + t.is(libD.getPath(), libraryD, "Correct path for library.d"); + + t.is(await workspace.getModuleByProjectName("library.d"), libD, + "getModuleByProjectName returns correct module for library.d"); + t.is(await workspace.getModuleByNodeId("library.d"), libD, + "getModuleByNodeId returns correct module for library.d"); + + t.deepEqual(Array.from(moduleIdMap.keys()).sort(), ["library.d", "library.e"], "Correct module ID keys"); + moduleIdMap.forEach((value, key) => { + t.is(value, projectNameMap.get(key), `Same instance of module ${key} in both maps`); + }); +}); + +test("Basic resolution: package.json is missing name field", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{ + path: "../../fixtures/library.d" + }, { + path: "../../fixtures/library.e" + }] + } + }) + }); + + t.context.sinon.stub(workspace, "_readPackageJson") + .resolves({ + version: "1.0.0", + }); + + const err = await t.throwsAsync(workspace._getResolvedModules()); + t.is(err.message, + `Failed to resolve workspace dependency resolution path ` + + `../../fixtures/library.d to ${libraryD}: package.json must contain fields 'name' and 'version'`, + "Threw with expected error message"); +}); + +test("Basic resolution: package.json is missing version field", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{ + path: "../../fixtures/library.d" + }, { + path: "../../fixtures/library.e" + }] + } + }) + }); + + t.context.sinon.stub(workspace, "_readPackageJson") + .resolves({ + name: "Package", + }); + + const err = await t.throwsAsync(workspace._getResolvedModules()); + t.is(err.message, + `Failed to resolve workspace dependency resolution path ` + + `../../fixtures/library.d to ${libraryD}: package.json must contain fields 'name' and 'version'`, + "Threw with expected error message"); +}); + +test("Package workspace resolution: Static patterns", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{ + path: "../../fixtures/collection" + }] + } + }) + }); + + const {projectNameMap, moduleIdMap} = await workspace._getResolvedModules(); + t.deepEqual(Array.from(projectNameMap.keys()).sort(), ["library.a", "library.b", "library.c"], + "Correct project name keys"); + + const libA = projectNameMap.get("library.a"); + t.true(libA instanceof Module, "library.a value is instance of Module"); + t.is(libA.getVersion(), "1.0.0", "Correct version for library.a"); + t.is(libA.getPath(), collectionLibraryA, "Correct path for library.a"); + + const libB = projectNameMap.get("library.b"); + t.true(libB instanceof Module, "library.b value is instance of Module"); + t.is(libB.getVersion(), "1.0.0", "Correct version for library.b"); + t.is(libB.getPath(), collectionLibraryB, "Correct path for library.b"); + + const libC = projectNameMap.get("library.c"); + t.true(libC instanceof Module, "library.c value is instance of Module"); + t.is(libC.getVersion(), "1.0.0", "Correct version for library.c"); + t.is(libC.getPath(), collectionLibraryC, "Correct path for library.c"); + + t.deepEqual(Array.from(moduleIdMap.keys()).sort(), ["library.a", "library.b", "library.c"], + "Correct module ID keys"); + moduleIdMap.forEach((value, key) => { + t.is(value, projectNameMap.get(key), `Same instance of module ${key} in both maps`); + }); +}); + +test("Package workspace resolution: Dynamic patterns", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{ + path: "../../fixtures/collection.b" + }] + } + }) + }); + + const {projectNameMap, moduleIdMap} = await workspace._getResolvedModules(); + t.deepEqual(Array.from(projectNameMap.keys()).sort(), ["library.a", "library.b", "library.c", "library.d"], + "Correct project name keys"); + + const libA = projectNameMap.get("library.a"); + t.true(libA instanceof Module, "library.a value is instance of Module"); + t.is(libA.getVersion(), "1.0.0", "Correct version for library.a"); + t.is(libA.getPath(), collectionBLibraryA, "Correct path for library.a"); + + const libB = projectNameMap.get("library.b"); + t.true(libB instanceof Module, "library.b value is instance of Module"); + t.is(libB.getVersion(), "1.0.0", "Correct version for library.b"); + t.is(libB.getPath(), collectionBLibraryB, "Correct path for library.b"); + + const libC = projectNameMap.get("library.c"); + t.true(libC instanceof Module, "library.c value is instance of Module"); + t.is(libC.getVersion(), "1.0.0", "Correct version for library.c"); + t.is(libC.getPath(), collectionBLibraryC, "Correct path for library.c"); + + const libD = projectNameMap.get("library.d"); + t.true(libD instanceof Module, "library.d value is instance of Module"); + t.is(libD.getVersion(), "1.0.0", "Correct version for library.d"); + t.is(libD.getPath(), libraryD, "Correct path for library.d"); + + t.deepEqual(Array.from(moduleIdMap.keys()).sort(), ["library.a", "library.b", "library.c", "library.d"], + "Correct module ID keys"); + moduleIdMap.forEach((value, key) => { + t.is(value, projectNameMap.get(key), `Same instance of module ${key} in both maps`); + }); +}); + +test("Package workspace resolution: Nested workspaces", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{ + path: "../../fixtures/library.xyz" + }] + } + }) + }); + + const readPackageJsonStub = t.context.sinon.stub(workspace, "_readPackageJson") + .rejects(new Error("Test does not provide for more package mocks")) + .onCall(0).resolves({ + name: "First Package", + version: "1.0.0", + ui5: { + workspaces: [ + "workspace-a", + "workspace-b" + ] + } + }).onCall(1).resolves({ + name: "Second Package", + version: "1.0.0", + workspaces: [ + "workspace-c", + "workspace-d" + ] + }).onCall(2).resolves({ + name: "Third Package", + version: "1.0.0" + }).onCall(3).resolves({ + name: "Fourth Package", + version: "1.0.0", + }).onCall(4).resolves({ + name: "Fifth Package", + version: "1.0.0", + }); + + const {projectNameMap, moduleIdMap} = await workspace._getResolvedModules(); + // All workspaces. Should not resolve to any module + t.is(readPackageJsonStub.callCount, 5, "readPackageJson got called five times"); + t.is(projectNameMap.size, 0, "Project name to module map is empty"); + t.is(moduleIdMap.size, 0, "Module ID to module map is empty"); +}); + +test("Package workspace resolution: Recursive workspaces", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{ + path: "../../fixtures/library.xyz" + }] + } + }) + }); + + const basePath = path.join(__dirname, "../../fixtures/library.xyz"); + const workspaceAPath = path.join(basePath, "workspace-a"); + + const readPackageJsonStub = t.context.sinon.stub(workspace, "_readPackageJson"); + readPackageJsonStub.withArgs(basePath).resolves({ + name: "Base Package", + version: "1.0.0", + workspaces: [ + "workspace-a" + ] + }); + readPackageJsonStub.withArgs(workspaceAPath).resolves({ + name: "Workspace A Package", + version: "1.0.0", + workspaces: [ + ".." + ] + }); + + const {projectNameMap, moduleIdMap} = await workspace._getResolvedModules(); + // All workspaces. Should not resolve to any module + // Recursive workspace definition should not lead to another readPackageJson call + t.is(readPackageJsonStub.callCount, 2, "readPackageJson got called two times"); + t.is(projectNameMap.size, 0, "Project name to module map is empty"); + t.is(moduleIdMap.size, 0, "Module ID to module map is empty"); +}); + +test("No resolutions configuration", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: {} + }) + }); + + t.is(workspace.getName(), "workspace-name"); + + const {projectNameMap, moduleIdMap} = await workspace._getResolvedModules(); + t.is(projectNameMap.size, 0, "Project name to module map is empty"); + t.is(moduleIdMap.size, 0, "Module ID to module map is empty"); + + t.falsy(await workspace.getModuleByProjectName("library.e"), + "getModuleByProjectName yields no result for library.e"); + t.falsy(await workspace.getModuleByNodeId("library.e"), + "getModuleByNodeId yields no result for library.e"); +}); + +test("Empty dependencyManagement configuration", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: {} + }) + }); + + t.is(workspace.getName(), "workspace-name"); + + const {projectNameMap, moduleIdMap} = await workspace._getResolvedModules(); + t.is(projectNameMap.size, 0, "Project name to module map is empty"); + t.is(moduleIdMap.size, 0, "Module ID to module map is empty"); +}); + +test("Empty resolutions configuration", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [] + } + }) + }); + + t.is(workspace.getName(), "workspace-name"); + + const {projectNameMap, moduleIdMap} = await workspace._getResolvedModules(); + t.is(projectNameMap.size, 0, "Project name to module map is empty"); + t.is(moduleIdMap.size, 0, "Module ID to module map is empty"); +}); + +test("Missing path in resolution", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{}] + } + }) + }); + + await t.throwsAsync(workspace._getResolvedModules(), { + message: "Missing property 'path' in dependency resolution configuration of workspace workspace-name" + }, "Threw with expected error message"); +}); + +test("Invalid specVersion", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: { + specVersion: "project/1.0", + metadata: { + name: "workspace-name" + } + } + }); + + const err = await t.throwsAsync(workspace._getResolvedModules()); + t.true( + err.message.includes(`Unsupported "specVersion"`), + "Threw with expected error message"); +}); + +test("Invalid resolutions configuration", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{ + path: "../../fixtures/does-not-exist" + }] + } + }) + }); + + const absPath = path.join(__dirname, "../../fixtures/does-not-exist"); + + const err = await t.throwsAsync(workspace._getResolvedModules()); + t.true( + err.message.startsWith(`Failed to resolve workspace dependency resolution path ` + + `../../fixtures/does-not-exist to ${absPath}: ENOENT:`), + "Threw with expected error message"); +}); + +test("Resolves extension only", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{ + path: "../../fixtures/extension.a" + }] + } + }) + }); + + t.is(workspace.getName(), "workspace-name"); + + const {projectNameMap, moduleIdMap} = await workspace._getResolvedModules(); + t.is(projectNameMap.size, 0, "Project name to module map is empty"); + t.is(moduleIdMap.size, 1, "Added one entry to Module ID to module map"); + t.deepEqual(Array.from(moduleIdMap.keys()), ["extension.a"], + "Expected entry in Module ID to module map"); +}); + +test("Resolution does not lead to a project", async (t) => { + const workspace = new t.context.Workspace({ + cwd: __dirname, + configuration: createWorkspaceConfig({ + dependencyManagement: { + resolutions: [{ + // Using a directory with a package.json but no ui5.yaml + path: "../../fixtures/init-library" + }] + } + }) + }); + + t.is(workspace.getName(), "workspace-name"); + + const {projectNameMap, moduleIdMap} = await workspace._getResolvedModules(); + t.is(projectNameMap.size, 0, "Project name to module map is empty"); + t.is(moduleIdMap.size, 0, "Module ID to module map is empty"); +}); + +test("Missing parameters", (t) => { + t.throws(() => { + new t.context.Workspace({ + configuration: {metadata: {name: "config-a"}} + }); + }, { + message: "Could not create Workspace: Missing or empty parameter 'cwd'" + }, "Threw with expected error message"); + + t.throws(() => { + new t.context.Workspace({ + cwd: "cwd" + }); + }, { + message: "Could not create Workspace: Missing or empty parameter 'configuration'" + }, "Threw with expected error message"); +}); diff --git a/packages/project/test/lib/graph/graph.integration.js b/packages/project/test/lib/graph/graph.integration.js new file mode 100644 index 00000000000..4f27781e942 --- /dev/null +++ b/packages/project/test/lib/graph/graph.integration.js @@ -0,0 +1,281 @@ +import test from "ava"; +import {fileURLToPath} from "node:url"; +import path from "node:path"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +import Workspace from "../../../lib/graph/Workspace.js"; +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +const fixturesPath = path.join(__dirname, "..", "..", "fixtures"); +const libraryHPath = path.join(fixturesPath, "library.h"); + +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.npmProviderConstructorStub = sinon.stub(); + class MockNpmProvider { + constructor(params) { + t.context.npmProviderConstructorStub(params); + } + } + + t.context.MockNpmProvider = MockNpmProvider; + + t.context.projectGraphBuilderStub = sinon.stub().resolves("graph"); + t.context.enrichProjectGraphStub = sinon.stub(); + t.context.graph = await esmock.p("../../../lib/graph/graph.js", { + "../../../lib/graph/providers/NodePackageDependencies.js": t.context.MockNpmProvider, + "../../../lib/graph/projectGraphBuilder.js": t.context.projectGraphBuilderStub, + "../../../lib/graph/helpers/ui5Framework.js": { + enrichProjectGraph: t.context.enrichProjectGraphStub + } + }); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); + esmock.purge(t.context.graph); +}); + +test.serial("graphFromPackageDependencies with workspace object", async (t) => { + const { + npmProviderConstructorStub, + projectGraphBuilderStub, enrichProjectGraphStub, MockNpmProvider + } = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + const res = await graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceConfiguration: { + specVersion: "workspace/1.0", + metadata: { + name: "default" + }, + dependencyManagement: { + resolutions: [{ + path: "resolution/path" + }] + } + } + }); + + t.is(res, "graph"); + + t.is(npmProviderConstructorStub.callCount, 1, "NPM provider constructor got called once"); + t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + }, "Created NodePackageDependencies provider instance with correct parameters"); + + t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof MockNpmProvider, + "projectGraphBuilder got called with correct provider instance"); + t.true(projectGraphBuilderStub.getCall(0).args[1] instanceof Workspace, + "projectGraphBuilder got called with correct workspace instance"); + + t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); + t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", + "enrichProjectGraph got called with graph"); + t.is(enrichProjectGraphStub.getCall(0).args[1].versionOverride, "versionOverride", + "enrichProjectGraph got called with correct versionOverride parameter"); + t.true(enrichProjectGraphStub.getCall(0).args[1].workspace instanceof Workspace, + "enrichProjectGraph got called with correct workspace parameter"); +}); + +test.serial("graphFromPackageDependencies with workspace object and workspace name", async (t) => { + const { + npmProviderConstructorStub, + projectGraphBuilderStub, enrichProjectGraphStub, MockNpmProvider + } = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + const res = await graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceName: "dolphin", + workspaceConfiguration: { + specVersion: "workspace/1.0", + metadata: { + name: "dolphin" + }, + dependencyManagement: { + resolutions: [{ + path: "resolution/path" + }] + } + } + }); + + t.is(res, "graph"); + + t.is(npmProviderConstructorStub.callCount, 1, "NPM provider constructor got called once"); + t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + }, "Created NodePackageDependencies provider instance with correct parameters"); + + t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof MockNpmProvider, + "projectGraphBuilder got called with correct provider instance"); + t.true(projectGraphBuilderStub.getCall(0).args[1] instanceof Workspace, + "projectGraphBuilder got called with correct workspace instance"); + + t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); + t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", + "enrichProjectGraph got called with graph"); + t.is(enrichProjectGraphStub.getCall(0).args[1].versionOverride, "versionOverride", + "enrichProjectGraph got called with correct versionOverride parameter"); + t.true(enrichProjectGraphStub.getCall(0).args[1].workspace instanceof Workspace, + "enrichProjectGraph got called with correct workspace parameter"); +}); + +test.serial("graphFromPackageDependencies with workspace object not matching workspaceName", async (t) => { + const {graphFromPackageDependencies} = t.context.graph; + + await t.throwsAsync(graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceName: "other", + workspaceConfiguration: { + specVersion: "workspace/1.0", + metadata: { + name: "default" + }, + dependencyManagement: { + resolutions: [{ + path: "resolution/path" + }] + } + } + }), { + message: "The provided workspace name 'other' does not match the provided workspace configuration 'default'" + }, "Threw with expected error message"); +}); + +test.serial("graphFromPackageDependencies with workspace file", async (t) => { + const { + npmProviderConstructorStub, + projectGraphBuilderStub, enrichProjectGraphStub, MockNpmProvider + } = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + const res = await graphFromPackageDependencies({ + cwd: libraryHPath, + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceName: "default", + }); + + t.is(res, "graph"); + + t.is(npmProviderConstructorStub.callCount, 1, "NPM provider constructor got called once"); + t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { + cwd: libraryHPath, + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath" + }, "Created NodePackageDependencies provider instance with correct parameters"); + + t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof MockNpmProvider, + "projectGraphBuilder got called with correct provider instance"); + t.true(projectGraphBuilderStub.getCall(0).args[1] instanceof Workspace, + "projectGraphBuilder got called with correct workspace instance"); + + t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); + t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", + "enrichProjectGraph got called with graph"); + t.is(enrichProjectGraphStub.getCall(0).args[1].versionOverride, "versionOverride", + "enrichProjectGraph got called with correct versionOverride parameter"); + t.true(enrichProjectGraphStub.getCall(0).args[1].workspace instanceof Workspace, + "enrichProjectGraph got called with correct workspace parameter"); +}); + +test.serial("graphFromPackageDependencies with workspace file at custom path", async (t) => { + const { + npmProviderConstructorStub, + projectGraphBuilderStub, enrichProjectGraphStub, MockNpmProvider + } = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + const res = await graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceName: "default", + workspaceConfigPath: path.join(libraryHPath, "ui5-workspace.yaml") + }); + + t.is(res, "graph"); + + t.is(npmProviderConstructorStub.callCount, 1, "NPM provider constructor got called once"); + t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath" + }, "Created NodePackageDependencies provider instance with correct parameters"); + + t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof MockNpmProvider, + "projectGraphBuilder got called with correct provider instance"); + t.true(projectGraphBuilderStub.getCall(0).args[1] instanceof Workspace, + "projectGraphBuilder got called with correct workspace instance"); + + t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); + t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", + "enrichProjectGraph got called with graph"); + t.is(enrichProjectGraphStub.getCall(0).args[1].versionOverride, "versionOverride", + "enrichProjectGraph got called with correct versionOverride parameter"); + t.true(enrichProjectGraphStub.getCall(0).args[1].workspace instanceof Workspace, + "enrichProjectGraph got called with correct workspace parameter"); +}); + +test.serial("graphFromPackageDependencies with inactive workspace file at custom path", async (t) => { + const { + npmProviderConstructorStub, + projectGraphBuilderStub, enrichProjectGraphStub, MockNpmProvider + } = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + const res = await graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceName: "default", + workspaceConfigPath: path.join(libraryHPath, "custom-ui5-workspace.yaml") + }); + + t.is(res, "graph"); + + t.is(npmProviderConstructorStub.callCount, 1, "NPM provider constructor got called once"); + t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath" + }, "Created NodePackageDependencies provider instance with correct parameters"); + + t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof MockNpmProvider, + "projectGraphBuilder got called with correct provider instance"); + t.is(projectGraphBuilderStub.getCall(0).args[1], null, + "projectGraphBuilder got called with no workspace instance"); + + t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); + t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", + "enrichProjectGraph got called with graph"); + t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { + versionOverride: "versionOverride", + workspace: null + }, "enrichProjectGraph got called with correct options"); +}); diff --git a/packages/project/test/lib/graph/graph.js b/packages/project/test/lib/graph/graph.js index 76a419f7a40..e5bf55fadcc 100644 --- a/packages/project/test/lib/graph/graph.js +++ b/packages/project/test/lib/graph/graph.js @@ -3,19 +3,22 @@ import {fileURLToPath} from "node:url"; import path from "node:path"; import sinonGlobal from "sinon"; import esmock from "esmock"; + const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const fixturesPath = path.join(__dirname, "..", "..", "fixtures"); test.beforeEach(async (t) => { const sinon = t.context.sinon = sinonGlobal.createSandbox(); t.context.npmProviderConstructorStub = sinon.stub(); - class DummyNpmProvider { + class MockNpmProvider { constructor(params) { t.context.npmProviderConstructorStub(params); } } + t.context.createWorkspaceStub = sinon.stub().returns("workspace"); - t.context.DummyNpmProvider = DummyNpmProvider; + t.context.MockNpmProvider = MockNpmProvider; t.context.dependencyTreeProviderStub = sinon.stub(); class DummyDependencyTreeProvider { @@ -28,8 +31,9 @@ test.beforeEach(async (t) => { t.context.projectGraphBuilderStub = sinon.stub().resolves("graph"); t.context.enrichProjectGraphStub = sinon.stub(); t.context.graph = await esmock.p("../../../lib/graph/graph.js", { - "../../../lib/graph/providers/NodePackageDependencies.js": t.context.DummyNpmProvider, + "../../../lib/graph/providers/NodePackageDependencies.js": t.context.MockNpmProvider, "../../../lib/graph/providers/DependencyTree.js": t.context.DummyDependencyTreeProvider, + "../../../lib/graph/helpers/createWorkspace.js": t.context.createWorkspaceStub, "../../../lib/graph/projectGraphBuilder.js": t.context.projectGraphBuilderStub, "../../../lib/graph/helpers/ui5Framework.js": { enrichProjectGraph: t.context.enrichProjectGraphStub @@ -44,8 +48,8 @@ test.afterEach.always((t) => { test.serial("graphFromPackageDependencies", async (t) => { const { - npmProviderConstructorStub, - projectGraphBuilderStub, enrichProjectGraphStub, DummyNpmProvider + createWorkspaceStub, npmProviderConstructorStub, + projectGraphBuilderStub, enrichProjectGraphStub, MockNpmProvider } = t.context; const {graphFromPackageDependencies} = t.context.graph; @@ -58,6 +62,54 @@ test.serial("graphFromPackageDependencies", async (t) => { t.is(res, "graph"); + t.is(createWorkspaceStub.callCount, 0, "createWorkspace did not get called"); + t.is(npmProviderConstructorStub.callCount, 1, "NPM provider constructor got called once"); + t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath" + }, "Created NodePackageDependencies provider instance with correct parameters"); + + t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof MockNpmProvider, + "projectGraphBuilder got called with correct provider instance"); + t.is(projectGraphBuilderStub.getCall(0).args[1], undefined, + "projectGraphBuilder got called with an empty workspace"); + + t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); + t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", + "enrichProjectGraph got called with graph"); + t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { + versionOverride: "versionOverride", + workspace: undefined + }, "enrichProjectGraph got called with correct options"); +}); + +test.serial("graphFromPackageDependencies with workspace name", async (t) => { + const { + createWorkspaceStub, npmProviderConstructorStub, + projectGraphBuilderStub, enrichProjectGraphStub, MockNpmProvider + } = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + const res = await graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceName: "dolphin", + }); + + t.is(res, "graph"); + + t.is(createWorkspaceStub.callCount, 1, "createWorkspace got called once"); + t.deepEqual(createWorkspaceStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + name: "dolphin", + configPath: "ui5-workspace.yaml", + configObject: undefined, + }, "createWorkspace called with correct parameters"); + t.is(npmProviderConstructorStub.callCount, 1, "NPM provider constructor got called once"); t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { cwd: path.join(__dirname, "..", "..", "..", "cwd"), @@ -66,14 +118,144 @@ test.serial("graphFromPackageDependencies", async (t) => { }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); - t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof DummyNpmProvider, + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof MockNpmProvider, "projectGraphBuilder got called with correct provider instance"); + t.is(projectGraphBuilderStub.getCall(0).args[1], "workspace", + "projectGraphBuilder got called with correct workspace instance"); t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", "enrichProjectGraph got called with graph"); t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { - versionOverride: "versionOverride" + versionOverride: "versionOverride", + workspace: "workspace" + }, "enrichProjectGraph got called with correct options"); +}); + +test.serial("graphFromPackageDependencies with workspace object", async (t) => { + const { + createWorkspaceStub + } = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + const res = await graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceConfiguration: "workspaceConfiguration" + }); + + t.is(res, "graph"); + + t.is(createWorkspaceStub.callCount, 1, "createWorkspace got called once"); + t.deepEqual(createWorkspaceStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + configPath: "ui5-workspace.yaml", + name: undefined, + configObject: "workspaceConfiguration" + }, "createWorkspace called with correct parameters"); +}); + +test.serial("graphFromPackageDependencies with workspace object and workspace name", async (t) => { + const { + createWorkspaceStub + } = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + const res = await graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceName: "dolphin", + workspaceConfiguration: "workspaceConfiguration" + }); + + t.is(res, "graph"); + + t.is(createWorkspaceStub.callCount, 1, "createWorkspace got called once"); + t.deepEqual(createWorkspaceStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + name: "dolphin", + configPath: "ui5-workspace.yaml", + configObject: "workspaceConfiguration" + }, "createWorkspace called with correct parameters"); +}); + +test.serial("graphFromPackageDependencies with workspace path and workspace name", async (t) => { + const { + createWorkspaceStub + } = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + const res = await graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceName: "dolphin", + workspaceConfigPath: "workspaceConfigurationPath" + }); + + t.is(res, "graph"); + + t.is(createWorkspaceStub.callCount, 1, "createWorkspace got called once"); + t.deepEqual(createWorkspaceStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + name: "dolphin", + configPath: "workspaceConfigurationPath", + configObject: undefined + }, "createWorkspace called with correct parameters"); +}); + +test.serial("graphFromPackageDependencies with empty workspace", async (t) => { + const { + createWorkspaceStub, npmProviderConstructorStub, + projectGraphBuilderStub, enrichProjectGraphStub, MockNpmProvider + } = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + // Simulate no workspace config found + createWorkspaceStub.resolves(null); + + const res = await graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + versionOverride: "versionOverride", + workspaceName: "dolphin", + }); + + t.is(res, "graph"); + + t.is(createWorkspaceStub.callCount, 1, "createWorkspace got called once"); + t.deepEqual(createWorkspaceStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + name: "dolphin", + configPath: "ui5-workspace.yaml", + configObject: undefined, + }, "createWorkspace called with correct parameters"); + + t.is(npmProviderConstructorStub.callCount, 1, "NPM provider constructor got called once"); + t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { + cwd: path.join(__dirname, "..", "..", "..", "cwd"), + rootConfiguration: "rootConfiguration", + rootConfigPath: "rootConfigPath", + }, "Created NodePackageDependencies provider instance with correct parameters"); + + t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); + t.true(projectGraphBuilderStub.getCall(0).args[0] instanceof MockNpmProvider, + "projectGraphBuilder got called with correct provider instance"); + t.is(projectGraphBuilderStub.getCall(0).args[1], null, + "projectGraphBuilder got called with correct workspace instance"); + + t.is(enrichProjectGraphStub.callCount, 1, "enrichProjectGraph got called once"); + t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", + "enrichProjectGraph got called with graph"); + t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { + versionOverride: "versionOverride", + workspace: null }, "enrichProjectGraph got called with correct options"); }); @@ -208,3 +390,21 @@ test.serial("usingObject: Do not resolve framework dependencies", async (t) => { t.is(res, "graph"); t.is(enrichProjectGraphStub.callCount, 0, "enrichProjectGraph did not get called"); }); + +test.serial("utils: readDependencyConfigFile", async (t) => { + const {graphFromStaticFile} = t.context.graph; + const res = await graphFromStaticFile._utils.readDependencyConfigFile( + path.join(fixturesPath, "application.h"), "projectDependencies.yaml"); + + t.deepEqual(res, { + id: "static-application.a", + path: path.join(fixturesPath, "application.a"), + version: "0.0.1", + dependencies: [{ + id: "static-library.e", + path: path.join(fixturesPath, "library.e"), + version: "0.0.1", + }], + }, "Returned correct file content"); +}); + diff --git a/packages/project/test/lib/graph/graphFromObject.js b/packages/project/test/lib/graph/graphFromObject.js index 7efa41072bf..0e4c9001197 100644 --- a/packages/project/test/lib/graph/graphFromObject.js +++ b/packages/project/test/lib/graph/graphFromObject.js @@ -81,8 +81,8 @@ test("Application Cycle A: Traverse project graph breadth first with cycles", as t.is(callbackStub.callCount, 4, "Four projects have been visited"); t.is(error.message, - "Detected cyclic dependency chain: application.cycle.a* -> component.cycle.a " + - "-> application.cycle.a*", + "Detected cyclic dependency chain: *application.cycle.a* -> component.cycle.a " + + "-> *application.cycle.a*", "Threw with expected error message"); const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); @@ -143,8 +143,8 @@ test("Application Cycle A: Traverse project graph depth first with cycles", asyn t.is(callbackStub.callCount, 0, "Zero projects have been visited"); t.is(error.message, - "Detected cyclic dependency chain: application.cycle.a* -> component.cycle.a " + - "-> application.cycle.a*", + "Detected cyclic dependency chain: *application.cycle.a* -> component.cycle.a " + + "-> *application.cycle.a*", "Threw with expected error message"); }); @@ -157,8 +157,8 @@ test("Application Cycle B: Traverse project graph depth first with cycles", asyn t.is(callbackStub.callCount, 0, "Zero projects have been visited"); t.is(error.message, - "Detected cyclic dependency chain: application.cycle.b -> module.d* " + - "-> module.e -> module.d*", + "Detected cyclic dependency chain: application.cycle.b -> *module.d* " + + "-> module.e -> *module.d*", "Threw with expected error message"); }); diff --git a/packages/project/test/lib/graph/helpers/createWorkspace.js b/packages/project/test/lib/graph/helpers/createWorkspace.js new file mode 100644 index 00000000000..db8a4300504 --- /dev/null +++ b/packages/project/test/lib/graph/helpers/createWorkspace.js @@ -0,0 +1,296 @@ +import test from "ava"; +import {fileURLToPath} from "node:url"; +import path from "node:path"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const fixturesPath = path.join(__dirname, "..", "..", "..", "fixtures"); +const libraryHPath = path.join(fixturesPath, "library.h"); + +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.workspaceConstructorStub = sinon.stub(); + class MockWorkspace { + constructor(params) { + t.context.workspaceConstructorStub(params); + } + } + t.context.MockWorkspace = MockWorkspace; + + t.context.createWorkspace = await esmock.p("../../../../lib/graph/helpers/createWorkspace", { + "../../../../lib/graph/Workspace.js": t.context.MockWorkspace + }); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); +}); + +test("createWorkspace: Missing parameter 'configObject' or 'configPath'", async (t) => { + const {createWorkspace} = t.context; + + const err = await t.throwsAsync(createWorkspace({ + cwd: "cwd", + })); + t.is(err.message, "createWorkspace: Missing parameter 'cwd', 'configObject' or 'configPath'", + "Threw with expected error message"); +}); + +test("createWorkspace: Missing parameter 'cwd'", async (t) => { + const {createWorkspace} = t.context; + + const err = await t.throwsAsync(createWorkspace({ + configPath: path.join(libraryHPath, "invalid-ui5-workspace.yaml") + })); + t.is(err.message, "createWorkspace: Missing parameter 'cwd', 'configObject' or 'configPath'", + "Threw with expected error message"); +}); + +test("createWorkspace: Missing parameter 'name' if 'configPath' is set", async (t) => { + const {createWorkspace} = t.context; + + const err = await t.throwsAsync(createWorkspace({ + cwd: "cwd", + configPath: path.join(libraryHPath, "invalid-ui5-workspace.yaml") + })); + t.is(err.message, "createWorkspace: Parameter 'configPath' implies parameter 'name', but it's empty", + "Threw with expected error message"); +}); + +test("createWorkspace: Using object", async (t) => { + const { + workspaceConstructorStub, + MockWorkspace, + createWorkspace + } = t.context; + + const res = await createWorkspace({ + cwd: "cwd", + configObject: { + specVersion: "workspace/1.0", + metadata: { + name: "default" + }, + dependencyManagement: { + resolutions: [{ + path: "resolution/path" + }] + } + } + }); + + t.true(res instanceof MockWorkspace, "Returned instance of Workspace"); + + t.is(workspaceConstructorStub.callCount, 1, "Workspace constructor got called once"); + t.deepEqual(workspaceConstructorStub.getCall(0).args[0], { + cwd: "cwd", + configuration: { + specVersion: "workspace/1.0", + metadata: { + name: "default" + }, + dependencyManagement: { + resolutions: [{ + path: "resolution/path" + }] + } + } + }, "Created Workspace instance with correct parameters"); +}); + +test("createWorkspace: Using invalid object", async (t) => { + const {createWorkspace} = t.context; + + const err = await t.throwsAsync(createWorkspace({ + cwd: "cwd", + configObject: { + dependencyManagement: { + resolutions: [{ + path: "resolution/path" + }] + } + } + })); + t.is(err.message, "Invalid workspace configuration: Missing or empty property 'metadata.name'", + "Threw with validation error"); +}); + +test("createWorkspace: Using file", async (t) => { + const {createWorkspace, MockWorkspace, workspaceConstructorStub} = t.context; + + const res = await createWorkspace({ + cwd: "cwd", + name: "default", + configPath: path.join(libraryHPath, "ui5-workspace.yaml") + }); + + t.true(res instanceof MockWorkspace, "Returned instance of Workspace"); + + t.is(workspaceConstructorStub.callCount, 1, "Workspace constructor got called once"); + t.deepEqual(workspaceConstructorStub.getCall(0).args[0], { + cwd: libraryHPath, + configuration: { + specVersion: "workspace/1.0", + metadata: { + name: "default" + }, + dependencyManagement: { + resolutions: [{ + path: "../library.d" + }] + } + } + }, "Created Workspace instance with correct parameters"); +}); + +test("createWorkspace: Using invalid file", async (t) => { + const {createWorkspace} = t.context; + + const err = await t.throwsAsync(createWorkspace({ + cwd: "cwd", + name: "default", + configPath: path.join(libraryHPath, "invalid-ui5-workspace.yaml") + })); + + t.true(err.message.includes("Invalid workspace configuration"), "Threw with validation error"); +}); + +test("createWorkspace: Using missing file", async (t) => { + const {createWorkspace, workspaceConstructorStub} = t.context; + + const res = await createWorkspace({ + cwd: path.join(fixturesPath, "library.d"), + name: "default", + configPath: "ui5-workspace.yaml" + }); + + t.is(res, null, "Returned no workspace"); + + t.is(workspaceConstructorStub.callCount, 0, "Workspace constructor did not get called"); +}); + +test("createWorkspace: Using missing file and non-default name", async (t) => { + const {createWorkspace, workspaceConstructorStub} = t.context; + + const err = await t.throwsAsync(createWorkspace({ + cwd: path.join(fixturesPath, "library.d"), + name: "special", + configPath: "ui5-workspace.yaml" + })); + + const filePath = path.join(fixturesPath, "library.d", "ui5-workspace.yaml"); + t.true(err.message.startsWith( + `Failed to load workspace configuration from path ${filePath}: `), "Threw with expected error message"); + + t.is(workspaceConstructorStub.callCount, 0, "Workspace constructor did not get called"); +}); + +test("createWorkspace: Using non-default file and non-default name", async (t) => { + const {createWorkspace, workspaceConstructorStub, MockWorkspace} = t.context; + + const res = await createWorkspace({ + cwd: path.join(fixturesPath, "library.h"), + name: "library-d", + configPath: "custom-ui5-workspace.yaml" + }); + + t.true(res instanceof MockWorkspace, "Returned instance of Workspace"); + + t.is(workspaceConstructorStub.callCount, 1, "Workspace constructor got called once"); + t.deepEqual(workspaceConstructorStub.getCall(0).args[0], { + cwd: libraryHPath, + configuration: { + specVersion: "workspace/1.0", + metadata: { + name: "library-d" + }, + dependencyManagement: { + resolutions: [{ + path: "../library.d" + }] + } + } + }, "Created Workspace instance with correct parameters"); +}); + +test("createWorkspace: Using non-default file and non-default name which is not in file", async (t) => { + const {createWorkspace, workspaceConstructorStub} = t.context; + + const err = await t.throwsAsync(createWorkspace({ + cwd: path.join(fixturesPath, "library.h"), + name: "special", + configPath: "custom-ui5-workspace.yaml" + })); + + t.is(err.message, `Could not find a workspace named 'special' in custom-ui5-workspace.yaml`, + "Threw with expected error message"); + + t.is(workspaceConstructorStub.callCount, 0, "Workspace constructor did not get called"); +}); + +test("readWorkspaceConfigFile", async (t) => { + const {createWorkspace} = t.context; + const res = await createWorkspace._readWorkspaceConfigFile( + path.join(libraryHPath, "ui5-workspace.yaml"), false); + t.deepEqual(res, + [{ + specVersion: "workspace/1.0", + metadata: { + name: "default", + }, + dependencyManagement: { + resolutions: [{ + path: "../library.d", + }] + }, + }, { + specVersion: "workspace/1.0", + metadata: { + name: "all-libraries", + }, + dependencyManagement: { + resolutions: [{ + path: "../library.d", + }, { + path: "../library.e", + }, { + path: "../library.f", + }], + }, + }], "Read workspace configuration file correctly"); +}); + +test("readWorkspaceConfigFile: Throws for missing file", async (t) => { + const {createWorkspace} = t.context; + const filePath = path.join(fixturesPath, "library.d", "other-ui5-workspace.yaml"); + const err = + await t.throwsAsync(createWorkspace._readWorkspaceConfigFile(filePath)); + t.true(err.message.startsWith( + `Failed to load workspace configuration from path ${filePath}: `), "Threw with expected error message"); +}); + +test("readWorkspaceConfigFile: Validation errors", async (t) => { + const {createWorkspace} = t.context; + const filePath = path.join(libraryHPath, "invalid-ui5-workspace.yaml"); + const err = + await t.throwsAsync(createWorkspace._readWorkspaceConfigFile(filePath, true)); + t.true(err.message.includes("Invalid workspace configuration"), "Threw with validation error"); +}); + +test("readWorkspaceConfigFile: Not a YAML", async (t) => { + const {createWorkspace} = t.context; + const filePath = path.join(libraryHPath, "corrupt-ui5-workspace.yaml"); + const err = + await t.throwsAsync(createWorkspace._readWorkspaceConfigFile(filePath, true)); + t.true(err.message.includes(`Failed to parse workspace configuration at ${filePath}`), + "Threw with parsing error"); +}); + +test("readWorkspaceConfigFile: Empty file", async (t) => { + const {createWorkspace} = t.context; + const filePath = path.join(libraryHPath, "empty-ui5-workspace.yaml"); + const res = await createWorkspace._readWorkspaceConfigFile(filePath, true); + t.deepEqual(res, [], "No workspace configuration returned"); +}); diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index 23c71028c6b..f40a6aae4b5 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -9,7 +9,9 @@ import projectGraphBuilder from "../../../../lib/graph/projectGraphBuilder.js"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); +const libraryDPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.d"); const libraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.e"); +const libraryFPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.f"); test.beforeEach(async (t) => { const sinon = t.context.sinon = sinonGlobal.createSandbox(); @@ -48,7 +50,7 @@ test.afterEach.always((t) => { esmock.purge(t.context.ui5Framework); }); -test.serial("ui5Framework translator should throw an error when framework version is not defined", async (t) => { +test.serial("enrichProjectGraph", async (t) => { const {sinon, ui5Framework, utils, Sapui5ResolverInstallStub} = t.context; const dependencyTree = { @@ -104,8 +106,14 @@ test.serial("ui5Framework translator should throw an error when framework versio ], "Sapui5Resolver#install should be called with expected args"); t.is(ProjectProcessorStub.callCount, 1, "ProjectProcessor#constructor should be called once"); - t.deepEqual(ProjectProcessorStub.getCall(0).args, [{libraryMetadata}], - "ProjectProcessor#constructor should be called with expected args"); + const projectProcessorConstructorArgs = ProjectProcessorStub.getCall(0).args[0]; + t.deepEqual(projectProcessorConstructorArgs.libraryMetadata, libraryMetadata, + "Correct libraryMetadata provided to ProjectProcessor"); + t.is(projectProcessorConstructorArgs.graph._rootProjectName, + "fake-root-of-application.a-framework-dependency-graph", + "Correct graph provided to ProjectProcessor"); + t.falsy(projectProcessorConstructorArgs.workspace, + "No workspace provided to ProjectProcessor"); t.is(addProjectToGraphStub.callCount, 3, "ProjectProcessor#getProject should be called 3 times"); t.deepEqual(addProjectToGraphStub.getCall(0).args[0], referencedLibraries[0], @@ -127,7 +135,7 @@ test.serial("ui5Framework translator should throw an error when framework versio ], "Traversed graph in correct order"); }); -test.serial("enrichProjectGraph (with versionOverride)", async (t) => { +test.serial("enrichProjectGraph: With versionOverride", async (t) => { const { sinon, ui5Framework, utils, Sapui5ResolverStub, Sapui5ResolverResolveVersionStub, Sapui5ResolverInstallStub @@ -417,6 +425,40 @@ test.serial("enrichProjectGraph should throw for framework project with dependen "Threw with expected error message"); }); +test.serial("enrichProjectGraph should throw for incorrect framework name", async (t) => { + const {ui5Framework, sinon} = t.context; + const dependencyTree = { + id: "project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.2.3", + libraries: [ + { + name: "lib1", + optional: true + } + ] + } + } + }; + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + sinon.stub(projectGraph.getRoot(), "getFrameworkName").returns("Pony5"); + const err = await t.throwsAsync(ui5Framework.enrichProjectGraph(projectGraph)); + t.is(err.message, `Unknown framework.name "Pony5" for project application.a. Must be "OpenUI5" or "SAPUI5"`, + "Threw with expected error message"); +}); + test.serial("enrichProjectGraph should ignore root project without framework configuration", async (t) => { const {ui5Framework} = t.context; const dependencyTree = { @@ -921,4 +963,486 @@ test.serial("utils.declareFrameworkDependenciesInGraph: No deprecation warnings ], `Root project has correct dependencies`); }); -// TODO test: ProjectProcessor +test.serial("ProjectProcessor: Add project to graph", async (t) => { + const {sinon} = t.context; + const {ProjectProcessor} = t.context.utils; + const graphMock = { + getProject: sinon.stub().returns(), + addProject: sinon.stub() + }; + const projectProcessor = new ProjectProcessor({ + libraryMetadata: { + "library.e": { + id: "lib.e.id", + version: "1000.0.0", + path: libraryEPath, + dependencies: [], + optionalDependencies: [] + } + }, + graph: graphMock + }); + + await projectProcessor.addProjectToGraph("library.e"); + t.is(graphMock.getProject.callCount, 1, "graph#getProject got called once"); + t.is(graphMock.getProject.getCall(0).args[0], "library.e", "graph#getProject got called with the correct argument"); + t.is(graphMock.addProject.callCount, 1, "graph#addProject got called once"); + t.is(graphMock.addProject.getCall(0).args[0].getName(), "library.e", + "graph#addProject got called with the correct project"); +}); + +test.serial("ProjectProcessor: Add same project twice", async (t) => { + const {sinon} = t.context; + const {ProjectProcessor} = t.context.utils; + const graphMock = { + getProject: sinon.stub().returns(), + addProject: sinon.stub() + }; + const projectProcessor = new ProjectProcessor({ + libraryMetadata: { + "library.e": { + id: "lib.e.id", + version: "1000.0.0", + path: libraryEPath, + dependencies: [], + optionalDependencies: [] + } + }, + graph: graphMock + }); + + await projectProcessor.addProjectToGraph("library.e"); + await projectProcessor.addProjectToGraph("library.e"); + t.is(graphMock.getProject.callCount, 1, "graph#getProject got called once"); + t.is(graphMock.getProject.getCall(0).args[0], "library.e", "graph#getProject got called with the correct argument"); + t.is(graphMock.addProject.callCount, 1, "graph#addProject got called once"); + t.is(graphMock.addProject.getCall(0).args[0].getName(), "library.e", + "graph#addProject got called with the correct project"); +}); + +test.serial("ProjectProcessor: Project already in graph", async (t) => { + const {sinon} = t.context; + const {ProjectProcessor} = t.context.utils; + const graphMock = { + getProject: sinon.stub().returns("project"), + addProject: sinon.stub() + }; + const projectProcessor = new ProjectProcessor({ + libraryMetadata: { + "library.e": { + id: "lib.e.id", + version: "1000.0.0", + path: libraryEPath, + dependencies: [], + optionalDependencies: [] + } + }, + graph: graphMock + }); + + await projectProcessor.addProjectToGraph("library.e"); + t.is(graphMock.getProject.callCount, 1, "graph#getProject got called once"); + t.is(graphMock.getProject.getCall(0).args[0], "library.e", "graph#getProject got called with the correct argument"); + t.is(graphMock.addProject.callCount, 0, "graph#addProject never got called"); +}); + +test.serial("ProjectProcessor: Add project with dependencies to graph", async (t) => { + const {sinon} = t.context; + const {ProjectProcessor} = t.context.utils; + const graphMock = { + getProject: sinon.stub().returns(), + addProject: sinon.stub(), + declareDependency: sinon.stub() + }; + const projectProcessor = new ProjectProcessor({ + libraryMetadata: { + "library.e": { + id: "lib.e.id", + version: "1000.0.0", + path: libraryEPath, + dependencies: ["library.d"], + optionalDependencies: [] + }, + "library.d": { + id: "lib.d.id", + version: "120000.0.0", + path: libraryDPath, + dependencies: [], + optionalDependencies: [] + } + }, + graph: graphMock + }); + + await projectProcessor.addProjectToGraph("library.e"); + t.is(graphMock.getProject.callCount, 2, "graph#getProject got called twice"); + t.is(graphMock.getProject.getCall(0).args[0], "library.e", "graph#getProject got called with the correct argument"); + t.is(graphMock.getProject.getCall(1).args[0], "library.d", "graph#getProject got called with the correct argument"); + t.is(graphMock.addProject.callCount, 2, "graph#addProject got called twice"); + t.is(graphMock.addProject.getCall(0).args[0].getName(), "library.d", + "graph#addProject got called with the correct project"); + t.is(graphMock.addProject.getCall(1).args[0].getName(), "library.e", + "graph#addProject got called with the correct project"); + t.is(graphMock.declareDependency.callCount, 1, "graph#declareDependency got called once"); + t.deepEqual(graphMock.declareDependency.getCall(0).args, ["library.e", "library.d"], + "graph#declareDependency got called with the correct arguments"); +}); + +test.serial("ProjectProcessor: Resolve project via workspace", async (t) => { + const {sinon} = t.context; + const {ProjectProcessor} = t.context.utils; + const graphMock = { + getProject: sinon.stub().returns(), + addProject: sinon.stub(), + declareDependency: sinon.stub() + }; + const libraryEProjectMock = { + getName: () => "library.e", + getFrameworkDependencies: sinon.stub().returns([{ + name: "library.d" + }]) + }; + const libraryDProjectMock = { + getName: () => "library.d", + getFrameworkDependencies: sinon.stub().returns([]) + }; + const moduleMock = { + getVersion: () => "1.0.0", + getPath: () => path.join("module", "path"), + getSpecifications: sinon.stub() + .onFirstCall().resolves({ + project: libraryDProjectMock + }) + .onSecondCall().resolves({ + project: libraryEProjectMock + }) + }; + const workspaceMock = { + getName: sinon.stub().returns("workspace name"), + getModuleByProjectName: sinon.stub().resolves(moduleMock), + }; + const projectProcessor = new ProjectProcessor({ + libraryMetadata: { + "library.e": { + id: "lib.e.id", + version: "1000.0.0", + path: libraryEPath, + dependencies: ["library.d"], + optionalDependencies: [] + }, + "library.d": { + id: "lib.d.id", + version: "120000.0.0", + path: libraryDPath, + dependencies: [], + optionalDependencies: [] + } + }, + graph: graphMock, + workspace: workspaceMock + }); + + await projectProcessor.addProjectToGraph("library.e"); + t.is(graphMock.getProject.callCount, 2, "graph#getProject got called twice"); + t.is(graphMock.getProject.getCall(0).args[0], "library.e", "graph#getProject got called with the correct argument"); + t.is(graphMock.getProject.getCall(1).args[0], "library.d", "graph#getProject got called with the correct argument"); + t.is(graphMock.addProject.callCount, 2, "graph#addProject got called once"); + t.is(graphMock.addProject.getCall(0).args[0].getName(), "library.d", + "graph#addProject got called with the correct project"); + t.is(graphMock.addProject.getCall(1).args[0].getName(), "library.e", + "graph#addProject got called with the correct project"); + t.is(graphMock.declareDependency.callCount, 1, "graph#declareDependency got called once"); + t.deepEqual(graphMock.declareDependency.getCall(0).args, ["library.e", "library.d"], + "graph#declareDependency got called with the correct arguments"); +}); + +test.serial("ProjectProcessor: Resolve project via workspace with additional dependency", async (t) => { + const {sinon} = t.context; + const {ProjectProcessor} = t.context.utils; + const graphMock = { + getProject: sinon.stub().returns(), + addProject: sinon.stub(), + declareDependency: sinon.stub() + }; + const libraryEProjectMock = { + getName: () => "library.e", + getFrameworkDependencies: sinon.stub().returns([{ + name: "library.d" + }]) + }; + const libraryDProjectMock = { + getName: () => "library.d", + getFrameworkDependencies: sinon.stub().returns([]) + }; + const moduleMock = { + getVersion: () => "1.0.0", + getPath: () => path.join("module", "path"), + getSpecifications: sinon.stub() + .onFirstCall().resolves({ + project: libraryEProjectMock + }) + .onSecondCall().resolves({ + project: libraryDProjectMock + }) + }; + const workspaceMock = { + getName: sinon.stub().returns("workspace name"), + getModuleByProjectName: sinon.stub().resolves(moduleMock), + }; + const projectProcessor = new ProjectProcessor({ + libraryMetadata: { + "library.e": { + id: "lib.e.id", + version: "1000.0.0", + path: libraryEPath, + dependencies: [], // Dependency to library.d is only declared in workspace-resolved library.e + optionalDependencies: [] + }, + "library.d": { + id: "lib.d.id", + version: "120000.0.0", + path: libraryDPath, + dependencies: [], + optionalDependencies: [] + } + }, + graph: graphMock, + workspace: workspaceMock + }); + + await projectProcessor.addProjectToGraph("library.e"); + t.is(graphMock.getProject.callCount, 2, "graph#getProject got called twice"); + t.is(graphMock.getProject.getCall(0).args[0], "library.e", "graph#getProject got called with the correct argument"); + t.is(graphMock.getProject.getCall(1).args[0], "library.d", "graph#getProject got called with the correct argument"); + t.is(graphMock.addProject.callCount, 2, "graph#addProject got called once"); + t.is(graphMock.addProject.getCall(0).args[0].getName(), "library.e", + "graph#addProject got called with the correct project"); + t.is(graphMock.addProject.getCall(1).args[0].getName(), "library.d", + "graph#addProject got called with the correct project"); + t.is(graphMock.declareDependency.callCount, 1, "graph#declareDependency got called once"); + t.deepEqual(graphMock.declareDependency.getCall(0).args, ["library.e", "library.d"], + "graph#declareDependency got called with the correct arguments"); +}); + +test.serial("ProjectProcessor: Resolve project via workspace with additional, unknown dependency", async (t) => { + const {sinon} = t.context; + const {ProjectProcessor} = t.context.utils; + const graphMock = { + getProject: sinon.stub().returns(), + addProject: sinon.stub(), + declareDependency: sinon.stub() + }; + const libraryEProjectMock = { + getName: () => "library.e", + getFrameworkDependencies: sinon.stub().returns([{ + name: "library.xyz" + }]) + }; + const libraryDProjectMock = { + getName: () => "library.d", + getFrameworkDependencies: sinon.stub().returns([]) + }; + const moduleMock = { + getVersion: () => "1.0.0", + getPath: () => path.join("module", "path"), + getSpecifications: sinon.stub() + .onFirstCall().resolves({ + project: libraryEProjectMock + }) + .onSecondCall().resolves({ + project: libraryDProjectMock + }) + }; + const workspaceMock = { + getName: sinon.stub().returns("workspace name"), + getModuleByProjectName: sinon.stub().resolves(moduleMock), + }; + const projectProcessor = new ProjectProcessor({ + libraryMetadata: { + "library.e": { + id: "lib.e.id", + version: "1000.0.0", + path: libraryEPath, + dependencies: ["library.d"], + optionalDependencies: [] + }, + "library.d": { + id: "lib.d.id", + version: "120000.0.0", + path: libraryDPath, + dependencies: [], + optionalDependencies: [] + } + }, + graph: graphMock, + workspace: workspaceMock + }); + + await t.throwsAsync(projectProcessor.addProjectToGraph("library.e"), { + message: + "Unable to find dependency library.xyz, required by project library.e " + + "(resolved via workspace name workspace) " + + "in current set of libraries. Try adding it temporarily to the root project's dependencies" + }, "Threw with expected error message"); +}); + +test.serial("ProjectProcessor: Resolve project via workspace with cyclic dependency", async (t) => { + const {sinon} = t.context; + const {ProjectProcessor} = t.context.utils; + const graphMock = { + getProject: sinon.stub().returns(), + addProject: sinon.stub(), + declareDependency: sinon.stub() + }; + const libraryEProjectMock = { + getName: () => "library.e", + getFrameworkDependencies: sinon.stub().returns([{ + name: "library.d" + }]) + }; + const libraryDProjectMock = { + getName: () => "library.d", + getFrameworkDependencies: sinon.stub().returns([{ + name: "library.e" // Cyclic dependency in workspace project + }]) + }; + const moduleMock = { + getVersion: () => "1.0.0", + getPath: () => path.join("module", "path"), + getSpecifications: sinon.stub() + .onFirstCall().resolves({ + project: libraryEProjectMock + }) + .onSecondCall().resolves({ + project: libraryDProjectMock + }) + }; + const workspaceMock = { + getName: sinon.stub().returns("workspace name"), + getModuleByProjectName: sinon.stub().resolves(moduleMock), + }; + const projectProcessor = new ProjectProcessor({ + libraryMetadata: { + "library.e": { + id: "lib.e.id", + version: "1000.0.0", + path: libraryEPath, + dependencies: ["library.d"], + optionalDependencies: [] + }, + "library.d": { + id: "lib.d.id", + version: "120000.0.0", + path: libraryDPath, + dependencies: [], + optionalDependencies: [] + } + }, + graph: graphMock, + workspace: workspaceMock + }); + + await t.throwsAsync(projectProcessor.addProjectToGraph("library.e"), { + message: + "ui5Framework:ProjectPreprocessor: Detected cyclic dependency chain: " + + "library.e -> *library.d* -> *library.d*" + }, "Threw with expected error message"); +}); + +test.serial("ProjectProcessor: Resolve project via workspace with distant cyclic dependency", async (t) => { + const {sinon} = t.context; + const {ProjectProcessor} = t.context.utils; + const graphMock = { + getProject: sinon.stub().returns(), + addProject: sinon.stub(), + declareDependency: sinon.stub() + }; + const libraryEProjectMock = { + getName: () => "library.e", + getFrameworkDependencies: sinon.stub().returns([{ + name: "library.d" + }]) + }; + const libraryDProjectMock = { + getName: () => "library.d", + getFrameworkDependencies: sinon.stub().returns([{ + name: "library.f" + }]) + }; + const libraryFProjectMock = { + getName: () => "library.f", + getFrameworkDependencies: sinon.stub().returns([{ + name: "library.e" // Cyclic dependency in workspace project + }]) + }; + const moduleMock = { + getVersion: () => "1.0.0", + getPath: () => path.join("module", "path"), + getSpecifications: sinon.stub() + .onFirstCall().resolves({ + project: libraryEProjectMock + }) + .onSecondCall().resolves({ + project: libraryDProjectMock + }) + .onThirdCall().resolves({ + project: libraryFProjectMock + }) + }; + const workspaceMock = { + getName: sinon.stub().returns("workspace name"), + getModuleByProjectName: sinon.stub().resolves(moduleMock), + }; + const projectProcessor = new ProjectProcessor({ + libraryMetadata: { + "library.e": { + id: "lib.e.id", + version: "1000.0.0", + path: libraryEPath, + dependencies: ["library.d"], + optionalDependencies: [] + }, + "library.d": { + id: "lib.d.id", + version: "120000.0.0", + path: libraryDPath, + dependencies: ["library.f"], + optionalDependencies: [] + }, + "library.f": { + id: "lib.f.id", + version: "1.0.0", + path: libraryFPath, + dependencies: [], + optionalDependencies: [] + }, + }, + graph: graphMock, + workspace: workspaceMock + }); + + await t.throwsAsync(projectProcessor.addProjectToGraph("library.e"), { + message: + "ui5Framework:ProjectPreprocessor: Detected cyclic dependency chain: " + + "library.e -> *library.d* -> library.f -> *library.d*" + }, "Threw with expected error message"); +}); + +test.serial("ProjectProcessor: Project missing in metadata", async (t) => { + const {sinon} = t.context; + const {ProjectProcessor} = t.context.utils; + const graphMock = { + getProject: sinon.stub().returns(), + addProject: sinon.stub() + }; + const projectProcessor = new ProjectProcessor({ + libraryMetadata: { + "lib.x": {} + }, + graph: graphMock + }); + + await t.throwsAsync(projectProcessor.addProjectToGraph("lib.a"), { + message: "Failed to find library lib.a in dist packages metadata.json" + }, "Threw with expected error message"); +}); diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index 51489cbb9ed..df042ec74be 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -249,6 +249,29 @@ test("Node depends on itself", async (t) => { "Threw with expected error message"); }); +test("Cyclic dependencies", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies + .onFirstCall().resolves([ + createNode({ + id: "id2", + name: "project-2" + }), + ]) + .onSecondCall().resolves([ + createNode({ + id: "id1", + name: "project-1" + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + t.deepEqual(graph.getDependencies("project-1"), ["project-2"], "Cyclic dependency has been added"); + t.deepEqual(graph.getDependencies("project-2"), ["project-1"], "Cyclic dependency has been added"); +}); + test("Nested node with same id is ignored", async (t) => { t.context.getRootNode.resolves(createNode({ id: "id1", @@ -263,7 +286,7 @@ test("Nested node with same id is ignored", async (t) => { t.context.getDependencies.onSecondCall().resolves([ createNode({ id: "id1", - name: "project-3" + name: "project-3" // name will be ignored, since the first "id1" node is being used }), ]); const graph = await projectGraphBuilder(t.context.provider); diff --git a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js index 8aba7f98936..842442cb11e 100644 --- a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js +++ b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js @@ -14,6 +14,7 @@ const applicationFPath = path.join(__dirname, "..", "..", "..", "fixtures", "app const applicationGPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.g"); const errApplicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "err.application.a"); const cycleDepsBasePath = path.join(__dirname, "..", "..", "..", "fixtures", "cyclic-deps", "node_modules"); +const libraryDOverridePath = path.join(__dirname, "..", "..", "..", "fixtures", "library.d-adtl-deps"); import projectGraphBuilder from "../../../../lib/graph/projectGraphBuilder.js"; import NodePackageDependenciesProvider from "../../../../lib/graph/providers/NodePackageDependencies.js"; @@ -27,18 +28,18 @@ test.afterEach.always((t) => { }); function testGraphCreationBfs(...args) { - return _testGraphCreation(...args, true); + return _testGraphCreation(true, ...args); } function testGraphCreationDfs(...args) { - return _testGraphCreation(...args, false); + return _testGraphCreation(false, ...args); } -async function _testGraphCreation(t, npmProvider, expectedOrder, bfs) { +async function _testGraphCreation(bfs, t, npmProvider, expectedOrder, workspace) { if (bfs === undefined) { throw new Error("Test error: Parameter 'bfs' must be specified"); } - const projectGraph = await projectGraphBuilder(npmProvider); + const projectGraph = await projectGraphBuilder(npmProvider, workspace); const callbackStub = t.context.sinon.stub().resolves(); if (bfs) { await projectGraph.traverseBreadthFirst(callbackStub); @@ -67,6 +68,37 @@ test("AppA: project with collection dependency", async (t) => { ]); }); +test("AppA: project with workspace overrides", async (t) => { + const workspace = { + getName: () => "workspace name", + getModuleByNodeId: t.context.sinon.stub().resolves(undefined).onFirstCall().resolves({ + // This version of library.d has an additional dependency to library.f, + // which in turn has a dependency to library.g + getPath: () => libraryDOverridePath, + getVersion: () => "1.0.0", + }) + }; + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationAPath + }); + const graph = await testGraphCreationDfs(t, npmProvider, [ + "library.g", // Added through workspace override of library.d + "library.a", + "library.b", + "library.c", + "library.f", // Added through workspace override of library.d + "library.d", + "application.a", + ], workspace); + + t.is(workspace.getModuleByNodeId.callCount, 2, "Workspace#getModuleByNodeId got called twice"); + t.is(workspace.getModuleByNodeId.getCall(0).args[0], "library.d", + "Workspace#getModuleByNodeId got called with correct argument on first call"); + t.is(workspace.getModuleByNodeId.getCall(1).args[0], "collection", + "Workspace#getModuleByNodeId got called with correct argument on second call"); + t.is(graph.getProject("library.d").getVersion(), "2.0.0", "Version from override is used"); +}); + test("AppC: project with dependency with optional dependency resolved through root project", async (t) => { const npmProvider = new NodePackageDependenciesProvider({ cwd: applicationCPath @@ -188,7 +220,7 @@ test("AppCycleD: cyclic npm deps - Cycles everywhere", async (t) => { const error = await t.throwsAsync(testGraphCreationDfs(t, npmProvider, [])); t.is(error.message, - `Detected cyclic dependency chain: application.cycle.d -> module.h* -> module.i -> module.k -> module.h*`); + `Detected cyclic dependency chain: application.cycle.d -> *module.h* -> module.i -> module.k -> *module.h*`); }); test("AppCycleE: cyclic npm deps - Cycle via devDependency", async (t) => { From ca3f12a85d4b77f15fbb62e6a5d555c4217b5016 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 2 Feb 2023 11:24:53 +0100 Subject: [PATCH 0822/1272] [ui5-project][INTERNAL] Workspace: Minor cleanups JSDoc and test preparation --- packages/project/lib/graph/Workspace.js | 2 +- packages/project/test/lib/graph/helpers/createWorkspace.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/graph/Workspace.js b/packages/project/lib/graph/Workspace.js index f5b5a7756ca..14478bde591 100644 --- a/packages/project/lib/graph/Workspace.js +++ b/packages/project/lib/graph/Workspace.js @@ -90,7 +90,7 @@ class Workspace { /** * For a given node id (e.g. the value of the name property in a package.json), - * returns a [Module]{@eId Node ID of} instance or undefined depending on whether the module + * returns a [Module]{@ui5/project/graph/Module} instance or undefined depending on whether the module * has been found in the configured dependency-management resolution paths of this workspace * and contains at least one project or extension * diff --git a/packages/project/test/lib/graph/helpers/createWorkspace.js b/packages/project/test/lib/graph/helpers/createWorkspace.js index db8a4300504..33eb09a1e86 100644 --- a/packages/project/test/lib/graph/helpers/createWorkspace.js +++ b/packages/project/test/lib/graph/helpers/createWorkspace.js @@ -19,7 +19,7 @@ test.beforeEach(async (t) => { } t.context.MockWorkspace = MockWorkspace; - t.context.createWorkspace = await esmock.p("../../../../lib/graph/helpers/createWorkspace", { + t.context.createWorkspace = await esmock("../../../../lib/graph/helpers/createWorkspace", { "../../../../lib/graph/Workspace.js": t.context.MockWorkspace }); }); From 3cb0038ba94aad04f23f4cc7480f37c6783c9432 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 2 Feb 2023 13:26:04 +0100 Subject: [PATCH 0823/1272] [ui5-project][INTERNAL] Upgrade supported node version and CI (#562) Add Node 19 in CI --- .../project/.github/workflows/github-ci.yml | 6 ++--- packages/project/azure-pipelines.yml | 27 ++++++++++++------- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 4 files changed, 23 insertions(+), 14 deletions(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 63136b0707e..0138c016be9 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -11,15 +11,15 @@ on: jobs: test: name: General checks, tests and coverage reporting - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v3 - - name: Use Node.js LTS 16.x + - name: Use Node.js LTS 16.18.0 uses: actions/setup-node@v3.6.0 with: - node-version: 16.x + node-version: 16.18.0 - name: Install dependencies run: npm ci diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 5848a3161e8..85e75beed83 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -9,21 +9,30 @@ trigger: strategy: matrix: - linux_node_min_version: - imageName: 'ubuntu-20.04' - node_version: 16.18.0 linux_node_lts_16: - imageName: 'ubuntu-20.04' + imageName: 'ubuntu-22.04' node_version: 16.x - linux_node_latest: - imageName: 'ubuntu-20.04' + linux_node_lts_18_min_version: + imageName: 'ubuntu-22.04' + node_version: 18.12.0 + linux_node_lts_18: + imageName: 'ubuntu-22.04' node_version: 18.x - mac_node_latest: - imageName: 'macOS-11' + mac_node_lts_18: + imageName: 'macos-12' node_version: 18.x - windows_node_latest: + windows_node_lts_18: imageName: 'windows-2022' node_version: 18.x + linux_node_current: + imageName: 'ubuntu-22.04' + node_version: 19.x + mac_node_current: + imageName: 'macos-12' + node_version: 19.x + windows_node_current: + imageName: 'windows-2022' + node_version: 19.x pool: vmImage: $(imageName) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 406a0fab923..57a3e665da7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -54,7 +54,7 @@ "tap-xunit": "^2.4.1" }, "engines": { - "node": "^16.18.0 || >=18.0.0", + "node": "^16.18.0 || >=18.12.0", "npm": ">= 8" } }, diff --git a/packages/project/package.json b/packages/project/package.json index 86b3b54ba4b..7d1b18c0f31 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -30,7 +30,7 @@ "./package.json": "./package.json" }, "engines": { - "node": "^16.18.0 || >=18.0.0", + "node": "^16.18.0 || >=18.12.0", "npm": ">= 8" }, "scripts": { From 1ca5c0ecf259c945159de7c9d0a9d8446f99cfaf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 3 Feb 2023 15:32:53 +0000 Subject: [PATCH 0824/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.1-rc.2 to 3.0.1-rc.3 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.1-rc.3/CHANGELOG.md --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 57a3e665da7..9269c35454d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-rc.3", "@ui5/fs": "^3.0.0-rc.4", - "@ui5/logger": "^3.0.1-rc.2", + "@ui5/logger": "^3.0.1-rc.3", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.2.0", @@ -1104,16 +1104,16 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.1-rc.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.2.tgz", - "integrity": "sha512-dTaveuhqYiYzv8ErlndyhfwAjnRct++1KyAn0JzAYxS83GlnMIJkTT21EQHLN1OeIAHwivZWhSNZTfGzGNTt5g==", + "version": "3.0.1-rc.3", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.3.tgz", + "integrity": "sha512-IQ7JIAvXkIqVDUvZRtS47xzF5jOhymiBQmx7xwqZTSpIi3EqrPvEpXEdDiB/dk+yAtBNW5Ms3eRC4RYtXpAqCw==", "dependencies": { "chalk": "^5.2.0", "cli-progress": "^3.11.2", "figures": "^5.0.0" }, "engines": { - "node": "^16.18.0 || >=18.0.0", + "node": "^16.18.0 || >=18.12.0", "npm": ">= 8" } }, @@ -9977,9 +9977,9 @@ } }, "@ui5/logger": { - "version": "3.0.1-rc.2", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.2.tgz", - "integrity": "sha512-dTaveuhqYiYzv8ErlndyhfwAjnRct++1KyAn0JzAYxS83GlnMIJkTT21EQHLN1OeIAHwivZWhSNZTfGzGNTt5g==", + "version": "3.0.1-rc.3", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.3.tgz", + "integrity": "sha512-IQ7JIAvXkIqVDUvZRtS47xzF5jOhymiBQmx7xwqZTSpIi3EqrPvEpXEdDiB/dk+yAtBNW5Ms3eRC4RYtXpAqCw==", "requires": { "chalk": "^5.2.0", "cli-progress": "^3.11.2", diff --git a/packages/project/package.json b/packages/project/package.json index 7d1b18c0f31..d1bd12161ca 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,7 +118,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-rc.3", "@ui5/fs": "^3.0.0-rc.4", - "@ui5/logger": "^3.0.1-rc.2", + "@ui5/logger": "^3.0.1-rc.3", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.2.0", From fd2925a26d070914b10cd65549796a41146f7571 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 2 Feb 2023 17:11:38 +0100 Subject: [PATCH 0825/1272] [ui5-project][INTERNAL] Module/Specification: Ensure modulePath is absolute This path will be used as the base for many operations. We should ensure it is absolute not to get suprised. --- packages/project/lib/graph/Module.js | 5 ++- .../lib/specifications/Specification.js | 8 +++- .../project/test/lib/build/ProjectBuilder.js | 8 ++-- packages/project/test/lib/graph/Module.js | 45 +++++++++++++++++++ .../project/test/lib/graph/graphFromObject.js | 4 +- .../test/lib/specifications/types/Module.js | 2 +- .../specVersion/kind/project/application.js | 2 +- 7 files changed, 63 insertions(+), 11 deletions(-) diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js index f495a3c28ca..be431741ce4 100644 --- a/packages/project/lib/graph/Module.js +++ b/packages/project/lib/graph/Module.js @@ -31,7 +31,7 @@ class Module { * @param {object} parameters Module parameters * @param {string} parameters.id Unique ID for the module * @param {string} parameters.version Version of the module - * @param {string} parameters.modulePath File System path to access the projects resources + * @param {string} parameters.modulePath Absolute File System path of the module * @param {string} [parameters.configPath=ui5.yaml] * Either a path relative to `modulePath` which will be resolved by @ui5/fs (default), * or an absolute File System path to the configuration file. @@ -51,6 +51,9 @@ class Module { if (!modulePath) { throw new Error(`Could not create Module: Missing or empty parameter 'modulePath'`); } + if (!path.isAbsolute(modulePath)) { + throw new Error(`Could not create Module: Parameter 'modulePath' must contain an absolute path`); + } if ( ( (Array.isArray(configuration) && configuration.length > 0) || diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 838cfd63f96..361cf40669f 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -1,3 +1,4 @@ +import path from "node:path"; import {getLogger} from "@ui5/logger"; import {createReader} from "@ui5/fs/resourceFactory"; import SpecificationVersion from "./SpecificationVersion.js"; @@ -18,7 +19,7 @@ class Specification { * @param {object} parameters * @param {string} parameters.id Unique ID * @param {string} parameters.version Version - * @param {string} parameters.modulePath File System path to access resources + * @param {string} parameters.modulePath Absolute File System path to access resources * @param {object} parameters.configuration * Type-dependent configuration object. Typically defined in a ui5.yaml * @static @@ -73,7 +74,7 @@ class Specification { * @param {object} parameters Specification parameters * @param {string} parameters.id Unique ID * @param {string} parameters.version Version - * @param {string} parameters.modulePath File System path to access resources + * @param {string} parameters.modulePath Absolute File System path to access resources * @param {object} parameters.configuration Configuration object */ async init({id, version, modulePath, configuration}) { @@ -86,6 +87,9 @@ class Specification { if (!modulePath) { throw new Error(`Could not create Specification: Missing or empty parameter 'modulePath'`); } + if (!path.isAbsolute(modulePath)) { + throw new Error(`Could not create Specification: Parameter 'modulePath' must contain an absolute path`); + } if (!configuration) { throw new Error(`Could not create Specification: Missing or empty parameter 'configuration'`); } diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index eb3323906a7..1ec698febbd 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -147,7 +147,7 @@ test("build", async (t) => { t.is(writeResultsStub.callCount, 1, "_writeResults got called once"); t.is(writeResultsStub.getCall(0).args[0], projectBuildContextMock, "_writeResults got called with correct first argument"); - t.is(writeResultsStub.getCall(0).args[1]._fsBasePath, path.resolve("dest/path"), + t.is(writeResultsStub.getCall(0).args[1]._fsBasePath, path.resolve("dest/path") + path.sep, "_writeResults got called with correct second argument"); t.is(deregisterCleanupSigHooksStub.callCount, 1, "_deregisterCleanupSigHooks got called once"); @@ -330,7 +330,7 @@ test.serial("build: Multiple projects", async (t) => { setLogLevel("verbose"); await builder.build({ - destPath: "dest/path", + destPath: path.join("dest", "path"), dependencyIncludes: "dependencyIncludes" }); setLogLevel("info"); @@ -357,11 +357,11 @@ test.serial("build: Multiple projects", async (t) => { t.is(writeResultsStub.callCount, 2, "_writeResults got called twice"); // library.a has not been requested t.is(writeResultsStub.getCall(0).args[0], projectBuildContextMockB, "_writeResults got called with correct first argument"); - t.is(writeResultsStub.getCall(0).args[1]._fsBasePath, path.resolve("dest/path"), + t.is(writeResultsStub.getCall(0).args[1]._fsBasePath, path.resolve("dest/path") + path.sep, "_writeResults got called with correct second argument"); t.is(writeResultsStub.getCall(1).args[0], projectBuildContextMockC, "_writeResults got called with correct first argument"); - t.is(writeResultsStub.getCall(1).args[1]._fsBasePath, path.resolve("dest/path"), + t.is(writeResultsStub.getCall(1).args[1]._fsBasePath, path.resolve("dest/path") + path.sep, "_writeResults got called with correct second argument"); t.is(deregisterCleanupSigHooksStub.callCount, 1, "_deregisterCleanupSigHooks got called once"); diff --git a/packages/project/test/lib/graph/Module.js b/packages/project/test/lib/graph/Module.js index b5ca1afe1a7..5761c586aa6 100644 --- a/packages/project/test/lib/graph/Module.js +++ b/packages/project/test/lib/graph/Module.js @@ -40,6 +40,51 @@ test("Instantiate a basic module", (t) => { t.is(ui5Module.getPath(), applicationAPath, "Should return correct module path"); }); +test("Create module with missing id", (t) => { + t.throws(() => { + new Module({ + version: "1.0.0", + modulePath: "/module/path" + }); + }, { + message: "Could not create Module: Missing or empty parameter 'id'" + }); +}); + +test("Create module with missing version", (t) => { + t.throws(() => { + new Module({ + id: "application.a.id", + modulePath: "/module/path" + }); + }, { + message: "Could not create Module: Missing or empty parameter 'version'" + }); +}); + +test("Create module with missing modulePath", (t) => { + t.throws(() => { + new Module({ + id: "application.a.id", + version: "1.0.0", + }); + }, { + message: "Could not create Module: Missing or empty parameter 'modulePath'" + }); +}); + +test("Create module with relative modulePath", (t) => { + t.throws(() => { + new Module({ + id: "application.a.id", + version: "1.0.0", + modulePath: "module/path" + }); + }, { + message: "Could not create Module: Parameter 'modulePath' must contain an absolute path" + }); +}); + test("Access module root resources via reader", async (t) => { const ui5Module = new Module(basicModuleInput); const rootReader = ui5Module.getReader(); diff --git a/packages/project/test/lib/graph/graphFromObject.js b/packages/project/test/lib/graph/graphFromObject.js index 0e4c9001197..51979d53bfb 100644 --- a/packages/project/test/lib/graph/graphFromObject.js +++ b/packages/project/test/lib/graph/graphFromObject.js @@ -312,13 +312,13 @@ test("Missing configuration file for root project", async (t) => { const tree = { id: "application.a.id", version: "1.0.0", - path: "non-existent", + path: "/non-existent", dependencies: [] }; await t.throwsAsync(graphFromObject({dependencyTree: tree}), { message: - "Failed to create a UI5 project from module application.a.id at non-existent. " + + "Failed to create a UI5 project from module application.a.id at /non-existent. " + "Make sure the path is correct and a project configuration is present or supplied." }, "Rejected with error"); diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index 67719045aa6..7eb535427f9 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -165,7 +165,7 @@ test("_configureAndValidatePaths: Configured path mapping", async (t) => { test("_configureAndValidatePaths: Default directory does not exist", async (t) => { const projectInput = clone(basicProjectInput); projectInput.configuration.resources = {}; - projectInput.modulePath = "does/not/exist"; + projectInput.modulePath = "/does/not/exist"; const err = await t.throwsAsync(Specification.create(projectInput)); t.is(err.message, "Unable to find root directory of module project module.a"); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index d744e9aafde..36a0065ae0b 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -59,7 +59,7 @@ test.after.always((t) => { "configuration": { "propertiesFileSourceEncoding": "UTF-8", "paths": { - "webapp": "my/path" + "webapp": "/my/path" } } }, From 06b366d14eb84945d6e519f1e424bc3795cdf0cf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 3 Feb 2023 18:58:03 +0100 Subject: [PATCH 0826/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-rc.4 to 3.0.0-rc.6 Changelog of rc.5: https://github.com/SAP/ui5-fs/blob/v3.0.0-rc.5/CHANGELOG.md Changelog of rc.6: https://github.com/SAP/ui5-fs/blob/v3.0.0-rc.6/CHANGELOG.md --- packages/project/package-lock.json | 24 ++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9269c35454d..e6f5da0d25a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.3", - "@ui5/fs": "^3.0.0-rc.4", + "@ui5/fs": "^3.0.0-rc.6", "@ui5/logger": "^3.0.1-rc.3", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1084,22 +1084,22 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.4.tgz", - "integrity": "sha512-vD0JNizsehMun4ugi3Mio1YBO5vroE4cYP7jg50qn77lQSXMzY234wJGxQKIUioiPxuCrlSEF5pIpIHuOLNBFQ==", + "version": "3.0.0-rc.6", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.6.tgz", + "integrity": "sha512-WrvbtiGN841MdgafefftKqV1ZUB2AmKmcKBwNEVmB+5nYKzf4xPUmRf+QU+suD+m0tVbJo07o1bJ+j8xnxcdtA==", "dependencies": { - "@ui5/logger": "^3.0.1-rc.2", + "@ui5/logger": "^3.0.1-rc.3", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", "globby": "^13.1.3", "graceful-fs": "^4.2.10", "micromatch": "^4.0.5", - "minimatch": "^6.1.5", + "minimatch": "^6.1.6", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, "engines": { - "node": "^16.18.0 || >=18.0.0", + "node": "^16.18.0 || >=18.12.0", "npm": ">= 8" } }, @@ -9961,17 +9961,17 @@ } }, "@ui5/fs": { - "version": "3.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.4.tgz", - "integrity": "sha512-vD0JNizsehMun4ugi3Mio1YBO5vroE4cYP7jg50qn77lQSXMzY234wJGxQKIUioiPxuCrlSEF5pIpIHuOLNBFQ==", + "version": "3.0.0-rc.6", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.6.tgz", + "integrity": "sha512-WrvbtiGN841MdgafefftKqV1ZUB2AmKmcKBwNEVmB+5nYKzf4xPUmRf+QU+suD+m0tVbJo07o1bJ+j8xnxcdtA==", "requires": { - "@ui5/logger": "^3.0.1-rc.2", + "@ui5/logger": "^3.0.1-rc.3", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", "globby": "^13.1.3", "graceful-fs": "^4.2.10", "micromatch": "^4.0.5", - "minimatch": "^6.1.5", + "minimatch": "^6.1.6", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" } diff --git a/packages/project/package.json b/packages/project/package.json index d1bd12161ca..54aaa48db3b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-rc.3", - "@ui5/fs": "^3.0.0-rc.4", + "@ui5/fs": "^3.0.0-rc.6", "@ui5/logger": "^3.0.1-rc.3", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From d1dceb4d3727dc04a8cb91110ea1ad4c35f733da Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 3 Feb 2023 18:57:51 +0100 Subject: [PATCH 0827/1272] [ui5-project][INTERNAL] Specification: Fix tests based on UI5 FS changes --- .../project/test/lib/specifications/Specification.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index ded7cb5e4db..23c7fe1d6a2 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -135,8 +135,10 @@ test("_dirExists: Directory exists", async (t) => { test("_dirExists: Missing leading slash", async (t) => { const project = await Specification.create(t.context.basicProjectInput); - const bExists = await project._dirExists("webapp"); - t.false(bExists, "directory is not found"); + + await t.throwsAsync(project._dirExists("webapp"), { + message: "Failed to resolve virtual path 'webapp': Path must be absolute" + }); }); test("_dirExists: Trailing slash is ok", async (t) => { @@ -148,8 +150,9 @@ test("_dirExists: Trailing slash is ok", async (t) => { test("_dirExists: Directory is a file", async (t) => { const project = await Specification.create(t.context.basicProjectInput); - const bExists = await project._dirExists("webapp/index.html"); - t.false(bExists, "directory is a file"); + await t.throwsAsync(project._dirExists("webapp/index.html"), { + message: "Failed to resolve virtual path 'webapp/index.html': Path must be absolute" + }); }); test("_dirExists: Directory does not exist", async (t) => { From 60c0ec068655671257f677aae5767b34486737f3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 3 Feb 2023 20:16:17 +0000 Subject: [PATCH 0828/1272] [ui5-project]Release 3.0.0-rc.8 --- packages/project/CHANGELOG.md | 31 +++++++++++++++++++++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 33 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 625451e31f8..a8b3477cf8e 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,35 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.7...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.8...HEAD). + + +## [v3.0.0-rc.8] - 2023-02-03 +### Breaking Changes +- **Schema:** Restrict metadata.name for specVersion >= 3.0 ([#552](https://github.com/SAP/ui5-project/issues/552)) [`d0ea703`](https://github.com/SAP/ui5-project/commit/d0ea703e8b7e74079fba48b62045608d4d49ab3b) + +### Bug Fixes +- **Registry:** Do not use custom logger for pacote [`242601f`](https://github.com/SAP/ui5-project/commit/242601f5c0c63c0d51cf086089101df30dcf017e) + +### Features +- Add 'UI5 Workspace' Support ([#494](https://github.com/SAP/ui5-project/issues/494)) [`b77ca2f`](https://github.com/SAP/ui5-project/commit/b77ca2f02a96fa7fba5c4c565551aca8c1e11847) + +### BREAKING CHANGE + +For projects and extensions defining specVersion 3.0 and later, the +metadata.name property must satisfy the following conditions: + +* Must be at least 3 characters long +* Must be no longer than 50 characters +* Must contain lowercase characters only +* Must contain alphanumeric characters, dash, underscore and period only + - Exception: `@` and `/` are allowed at certain positions as + explained below +* Must start with an alphabetic character or an `@`-character +* If a name starts with an `@`-character, it must contain exactly one + forward-slash `/` + - This is aligned with the npm concept for package scopes + ## [v3.0.0-rc.7] - 2023-01-25 @@ -406,6 +434,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-rc.8]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.7...v3.0.0-rc.8 [v3.0.0-rc.7]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.6...v3.0.0-rc.7 [v3.0.0-rc.6]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.5...v3.0.0-rc.6 [v3.0.0-rc.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.4...v3.0.0-rc.5 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e6f5da0d25a..1f6af9cb1c2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.7", + "version": "3.0.0-rc.8", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc.7", + "version": "3.0.0-rc.8", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.3", diff --git a/packages/project/package.json b/packages/project/package.json index 54aaa48db3b..737d55eaac7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.7", + "version": "3.0.0-rc.8", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From a4da31a0982e405e4d51154256a4169180790835 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 5 Feb 2023 03:20:32 +0000 Subject: [PATCH 0829/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 346 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 171 insertions(+), 179 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1f6af9cb1c2..413948cee0f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -16,7 +16,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.1.2", + "globby": "^13.1.3", "graceful-fs": "^4.2.10", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", @@ -40,7 +40,7 @@ "eslint": "^8.33.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^39.7.4", + "eslint-plugin-jsdoc": "^39.8.0", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -394,9 +394,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.13.tgz", - "integrity": "sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw==", + "version": "7.20.15", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.15.tgz", + "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -1058,13 +1058,13 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-rc.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.3.tgz", - "integrity": "sha512-P175NHNkhZPOZQetqFQ/cdYFY15ufQaFQhATgv14f4yS2U7X0I3WLYdP+o+iTU0cDmYta83Rd0+Y0Gtbsz3VxQ==", + "version": "3.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.5.tgz", + "integrity": "sha512-r5WMWJyB6DbA4PEksVPS2fEDSeXkGCPboQin3XY7Lnn92L+tyydqgPk1tivShZjw+mn+7q8+bMh+gFrluSupdw==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-rc.4", - "@ui5/logger": "^3.0.1-rc.2", + "@ui5/fs": "^3.0.0-rc.6", + "@ui5/logger": "^3.0.1-rc.3", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", @@ -1073,13 +1073,14 @@ "jsdoc": "^3.6.11", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", - "rimraf": "^4.1.1", + "rimraf": "^4.1.2", "semver": "^7.3.8", "terser": "^5.16.1", + "workerpool": "^6.3.1", "xml2js": "^0.4.23" }, "engines": { - "node": "^16.18.0 || >=18.0.0", + "node": "^16.18.0 || >=18.12.0", "npm": ">= 8" } }, @@ -1118,39 +1119,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.45.tgz", - "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.47.tgz", + "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.45", + "@vue/shared": "3.2.47", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", - "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz", + "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.2.45", - "@vue/shared": "3.2.45" + "@vue/compiler-core": "3.2.47", + "@vue/shared": "3.2.47" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", - "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz", + "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.45", - "@vue/compiler-dom": "3.2.45", - "@vue/compiler-ssr": "3.2.45", - "@vue/reactivity-transform": "3.2.45", - "@vue/shared": "3.2.45", + "@vue/compiler-core": "3.2.47", + "@vue/compiler-dom": "3.2.47", + "@vue/compiler-ssr": "3.2.47", + "@vue/reactivity-transform": "3.2.47", + "@vue/shared": "3.2.47", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -1158,32 +1159,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", - "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz", + "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.2.45", - "@vue/shared": "3.2.45" + "@vue/compiler-dom": "3.2.47", + "@vue/shared": "3.2.47" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", - "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz", + "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==", "dev": true, "dependencies": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.45", - "@vue/shared": "3.2.45", + "@vue/compiler-core": "3.2.47", + "@vue/shared": "3.2.47", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "node_modules/@vue/shared": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.45.tgz", - "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.47.tgz", + "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==", "dev": true }, "node_modules/abbrev": { @@ -1540,9 +1541,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", - "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", "dev": true, "funding": [ { @@ -1555,10 +1556,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001400", - "electron-to-chromium": "^1.4.251", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.9" + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" }, "bin": { "browserslist": "cli.js" @@ -1744,9 +1745,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001449", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz", - "integrity": "sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==", + "version": "1.0.30001450", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001450.tgz", + "integrity": "sha512-qMBmvmQmFXaSxexkjjfMvD5rnDL0+m+dUMZKoDYsGG8iZN29RuYh9eRoMvKsT6uMAWlyUUGDEQGJJYjzCIO9ew==", "dev": true, "funding": [ { @@ -2932,9 +2933,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.284", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", - "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", + "version": "1.4.286", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.286.tgz", + "integrity": "sha512-Vp3CVhmYpgf4iXNKAucoQUDcCrBQX3XLBtwgFqP9BUXuucgvAV9zWp1kYU7LL9j4++s9O+12cb3wMtN4SJy6UQ==", "dev": true }, "node_modules/emittery": { @@ -3144,9 +3145,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "39.7.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.7.4.tgz", - "integrity": "sha512-2eJcWGKRyNQFa37UIpGcAdOp3wtES8vV3mlnFmEmJCuBNyFhK6cMhbZgMkLoLjKnipoxsN9GbfZZ+8nPY8ETZQ==", + "version": "39.8.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.8.0.tgz", + "integrity": "sha512-ZwGmk0jJoJD/NILeDRBKrpq/PCgddUdATjeU5JGTqTzKsOWfeaHOnaAwZjuOh7T8EB4hSoZ/9pR4+Qns2ldQVg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.36.1", @@ -3816,9 +3817,9 @@ ] }, "node_modules/fs-minipass": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.0.tgz", - "integrity": "sha512-EUojgQaSPy6sxcqcZgQv6TVF6jiKvurji3AxhAivs/Ep4O1UpS8TusaxpybfFHZ2skRhLqzk6WR8nqNYIMMDeA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.1.tgz", + "integrity": "sha512-MhaJDcFRTuLidHrIttu0RDGyyXs/IYHVmlcxfLAEFIWjc1vdLAkdwT7Ace2u7DbitWC0toKMl5eJZRYNVreIMw==", "dependencies": { "minipass": "^4.0.0" }, @@ -4226,9 +4227,9 @@ } }, "node_modules/immutable": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.2.tgz", - "integrity": "sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.3.tgz", + "integrity": "sha512-IHpmvaOIX4VLJwPOuQr1NpeBr2ZG6vpIj3blsLVxXRWJscLioaJRStqC+NcBsLeCDsnGlPpXd5/WZmnE7MbsKA==", "dev": true }, "node_modules/import-fresh": { @@ -5729,12 +5730,9 @@ } }, "node_modules/minipass": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz", - "integrity": "sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==", - "dependencies": { - "yallist": "^4.0.0" - }, + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.1.tgz", + "integrity": "sha512-V9esFpNbK0arbN3fm2sxDKqMYgIp7XtVdE4Esj+PE4Qaaxdg1wIw48ITQIOn1sc8xXSmUviVL3cyjMqPlrVkiA==", "engines": { "node": ">=8" } @@ -5904,11 +5902,6 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, - "node_modules/minipass/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", @@ -6131,9 +6124,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz", - "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.9.tgz", + "integrity": "sha512-2xfmOrRkGogbTK9R6Leda0DGiXeY3p2NJpy4+gNCffdUvV6mdEJnaDEic1i3Ec2djAo8jWYoJMR5PB0MSMpxUA==", "dev": true }, "node_modules/nofilter": { @@ -6296,19 +6289,18 @@ } }, "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.2.tgz", - "integrity": "sha512-5n/Pq41w/uZghpdlXAY5kIM85RgJThtTH/NYBRAZ9VUOBWV90USaQjwGrw76fZP3Lj5hl/VZjpVvOaRBMoL/2w==", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz", + "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==", "dependencies": { "agentkeepalive": "^4.2.1", "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.0", + "http-cache-semantics": "^4.1.1", "http-proxy-agent": "^5.0.0", "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", "lru-cache": "^7.7.1", "minipass": "^4.0.0", - "minipass-collect": "^1.0.2", "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", @@ -7798,9 +7790,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.57.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz", - "integrity": "sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==", + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.58.0.tgz", + "integrity": "sha512-PiMJcP33DdKtZ/1jSjjqVIKihoDc6yWmYr9K/4r3fVVIEDAluD0q7XZiRKrNJcPK3qkLRF/79DND1H5q1LBjgg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8564,9 +8556,9 @@ } }, "node_modules/terser": { - "version": "5.16.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", - "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", + "version": "5.16.3", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.3.tgz", + "integrity": "sha512-v8wWLaS/xt3nE9dgKEWhNUFP6q4kngO5B8eYFUuebsu7Dw/UNAnpUod6UHo04jSSkv8TzKHjZDSd7EXdDQAl8Q==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -8946,6 +8938,11 @@ "node": ">=0.10.0" } }, + "node_modules/workerpool": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.3.1.tgz", + "integrity": "sha512-0x7gJm1rhpn5SPG9NENOxPtbfUZZtK/qOg6gEdSqeDBA3dTeR91RJqSPjccPRCkhNfrnnl/dWxSSj5w9CtdzNA==" + }, "node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", @@ -9411,9 +9408,9 @@ } }, "@babel/parser": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.13.tgz", - "integrity": "sha512-gFDLKMfpiXCsjt4za2JA9oTMn70CeseCehb11kRZgvd7+F67Hih3OHOK24cRrWECJ/ljfPGac6ygXAs/C8kIvw==" + "version": "7.20.15", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.15.tgz", + "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==" }, "@babel/template": { "version": "7.20.7", @@ -9939,13 +9936,13 @@ "dev": true }, "@ui5/builder": { - "version": "3.0.0-rc.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.3.tgz", - "integrity": "sha512-P175NHNkhZPOZQetqFQ/cdYFY15ufQaFQhATgv14f4yS2U7X0I3WLYdP+o+iTU0cDmYta83Rd0+Y0Gtbsz3VxQ==", + "version": "3.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.5.tgz", + "integrity": "sha512-r5WMWJyB6DbA4PEksVPS2fEDSeXkGCPboQin3XY7Lnn92L+tyydqgPk1tivShZjw+mn+7q8+bMh+gFrluSupdw==", "requires": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-rc.4", - "@ui5/logger": "^3.0.1-rc.2", + "@ui5/fs": "^3.0.0-rc.6", + "@ui5/logger": "^3.0.1-rc.3", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", @@ -9954,9 +9951,10 @@ "jsdoc": "^3.6.11", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", - "rimraf": "^4.1.1", + "rimraf": "^4.1.2", "semver": "^7.3.8", "terser": "^5.16.1", + "workerpool": "^6.3.1", "xml2js": "^0.4.23" } }, @@ -9987,39 +9985,39 @@ } }, "@vue/compiler-core": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.45.tgz", - "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.47.tgz", + "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.45", + "@vue/shared": "3.2.47", "estree-walker": "^2.0.2", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", - "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz", + "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==", "dev": true, "requires": { - "@vue/compiler-core": "3.2.45", - "@vue/shared": "3.2.45" + "@vue/compiler-core": "3.2.47", + "@vue/shared": "3.2.47" } }, "@vue/compiler-sfc": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", - "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz", + "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.45", - "@vue/compiler-dom": "3.2.45", - "@vue/compiler-ssr": "3.2.45", - "@vue/reactivity-transform": "3.2.45", - "@vue/shared": "3.2.45", + "@vue/compiler-core": "3.2.47", + "@vue/compiler-dom": "3.2.47", + "@vue/compiler-ssr": "3.2.47", + "@vue/reactivity-transform": "3.2.47", + "@vue/shared": "3.2.47", "estree-walker": "^2.0.2", "magic-string": "^0.25.7", "postcss": "^8.1.10", @@ -10027,32 +10025,32 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", - "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz", + "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==", "dev": true, "requires": { - "@vue/compiler-dom": "3.2.45", - "@vue/shared": "3.2.45" + "@vue/compiler-dom": "3.2.47", + "@vue/shared": "3.2.47" } }, "@vue/reactivity-transform": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", - "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz", + "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==", "dev": true, "requires": { "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.45", - "@vue/shared": "3.2.45", + "@vue/compiler-core": "3.2.47", + "@vue/shared": "3.2.47", "estree-walker": "^2.0.2", "magic-string": "^0.25.7" } }, "@vue/shared": { - "version": "3.2.45", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.45.tgz", - "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==", + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.47.tgz", + "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==", "dev": true }, "abbrev": { @@ -10318,15 +10316,15 @@ } }, "browserslist": { - "version": "4.21.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", - "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001400", - "electron-to-chromium": "^1.4.251", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.9" + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" } }, "buffer-from": { @@ -10461,9 +10459,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001449", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001449.tgz", - "integrity": "sha512-CPB+UL9XMT/Av+pJxCKGhdx+yg1hzplvFJQlJ2n68PyQGMz9L/E2zCyLdOL8uasbouTUgnPl+y0tccI/se+BEw==", + "version": "1.0.30001450", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001450.tgz", + "integrity": "sha512-qMBmvmQmFXaSxexkjjfMvD5rnDL0+m+dUMZKoDYsGG8iZN29RuYh9eRoMvKsT6uMAWlyUUGDEQGJJYjzCIO9ew==", "dev": true }, "catharsis": { @@ -11359,9 +11357,9 @@ } }, "electron-to-chromium": { - "version": "1.4.284", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", - "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", + "version": "1.4.286", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.286.tgz", + "integrity": "sha512-Vp3CVhmYpgf4iXNKAucoQUDcCrBQX3XLBtwgFqP9BUXuucgvAV9zWp1kYU7LL9j4++s9O+12cb3wMtN4SJy6UQ==", "dev": true }, "emittery": { @@ -11661,9 +11659,9 @@ } }, "eslint-plugin-jsdoc": { - "version": "39.7.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.7.4.tgz", - "integrity": "sha512-2eJcWGKRyNQFa37UIpGcAdOp3wtES8vV3mlnFmEmJCuBNyFhK6cMhbZgMkLoLjKnipoxsN9GbfZZ+8nPY8ETZQ==", + "version": "39.8.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.8.0.tgz", + "integrity": "sha512-ZwGmk0jJoJD/NILeDRBKrpq/PCgddUdATjeU5JGTqTzKsOWfeaHOnaAwZjuOh7T8EB4hSoZ/9pR4+Qns2ldQVg==", "dev": true, "requires": { "@es-joy/jsdoccomment": "~0.36.1", @@ -11999,9 +11997,9 @@ "dev": true }, "fs-minipass": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.0.tgz", - "integrity": "sha512-EUojgQaSPy6sxcqcZgQv6TVF6jiKvurji3AxhAivs/Ep4O1UpS8TusaxpybfFHZ2skRhLqzk6WR8nqNYIMMDeA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.1.tgz", + "integrity": "sha512-MhaJDcFRTuLidHrIttu0RDGyyXs/IYHVmlcxfLAEFIWjc1vdLAkdwT7Ace2u7DbitWC0toKMl5eJZRYNVreIMw==", "requires": { "minipass": "^4.0.0" } @@ -12295,9 +12293,9 @@ } }, "immutable": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.2.tgz", - "integrity": "sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.3.tgz", + "integrity": "sha512-IHpmvaOIX4VLJwPOuQr1NpeBr2ZG6vpIj3blsLVxXRWJscLioaJRStqC+NcBsLeCDsnGlPpXd5/WZmnE7MbsKA==", "dev": true }, "import-fresh": { @@ -13401,19 +13399,9 @@ } }, "minipass": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz", - "integrity": "sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==", - "requires": { - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.1.tgz", + "integrity": "sha512-V9esFpNbK0arbN3fm2sxDKqMYgIp7XtVdE4Esj+PE4Qaaxdg1wIw48ITQIOn1sc8xXSmUviVL3cyjMqPlrVkiA==" }, "minipass-collect": { "version": "1.0.2", @@ -13728,9 +13716,9 @@ } }, "node-releases": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz", - "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.9.tgz", + "integrity": "sha512-2xfmOrRkGogbTK9R6Leda0DGiXeY3p2NJpy4+gNCffdUvV6mdEJnaDEic1i3Ec2djAo8jWYoJMR5PB0MSMpxUA==", "dev": true }, "nofilter": { @@ -13850,19 +13838,18 @@ "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" }, "make-fetch-happen": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.2.tgz", - "integrity": "sha512-5n/Pq41w/uZghpdlXAY5kIM85RgJThtTH/NYBRAZ9VUOBWV90USaQjwGrw76fZP3Lj5hl/VZjpVvOaRBMoL/2w==", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz", + "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==", "requires": { "agentkeepalive": "^4.2.1", "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.0", + "http-cache-semantics": "^4.1.1", "http-proxy-agent": "^5.0.0", "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", "lru-cache": "^7.7.1", "minipass": "^4.0.0", - "minipass-collect": "^1.0.2", "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", @@ -14881,9 +14868,9 @@ "optional": true }, "sass": { - "version": "1.57.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz", - "integrity": "sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==", + "version": "1.58.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.58.0.tgz", + "integrity": "sha512-PiMJcP33DdKtZ/1jSjjqVIKihoDc6yWmYr9K/4r3fVVIEDAluD0q7XZiRKrNJcPK3qkLRF/79DND1H5q1LBjgg==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -15473,9 +15460,9 @@ } }, "terser": { - "version": "5.16.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", - "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", + "version": "5.16.3", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.3.tgz", + "integrity": "sha512-v8wWLaS/xt3nE9dgKEWhNUFP6q4kngO5B8eYFUuebsu7Dw/UNAnpUod6UHo04jSSkv8TzKHjZDSd7EXdDQAl8Q==", "requires": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -15764,6 +15751,11 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, + "workerpool": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.3.1.tgz", + "integrity": "sha512-0x7gJm1rhpn5SPG9NENOxPtbfUZZtK/qOg6gEdSqeDBA3dTeR91RJqSPjccPRCkhNfrnnl/dWxSSj5w9CtdzNA==" + }, "wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 737d55eaac7..dede1aa01b6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -123,7 +123,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.1.2", + "globby": "^13.1.3", "graceful-fs": "^4.2.10", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", @@ -147,7 +147,7 @@ "eslint": "^8.33.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^39.7.4", + "eslint-plugin-jsdoc": "^39.8.0", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From d0560b2a42277086e02900c4d95057e13d0d6866 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Tue, 7 Feb 2023 09:48:13 +0200 Subject: [PATCH 0830/1272] [ui5-project][FIX] Validator contructor checks (#567) Validate schemaName properly based on the enum by fixing a typo in tests & correcting the logical expression --- packages/project/lib/validation/validator.js | 2 +- packages/project/test/lib/validation/validator.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/validation/validator.js b/packages/project/lib/validation/validator.js index 1f8740db66a..d994d41febc 100644 --- a/packages/project/lib/validation/validator.js +++ b/packages/project/lib/validation/validator.js @@ -19,7 +19,7 @@ export const SCHEMA_VARIANTS = { class Validator { constructor({Ajv, ajvErrors, schemaName}) { - if (!schemaName && !SCHEMA_VARIANTS[schemaName]) { + if (!schemaName || !SCHEMA_VARIANTS[schemaName]) { throw new Error( `"schemaName" is missing or incorrect. The available schemaName variants are ${Object.keys( SCHEMA_VARIANTS diff --git a/packages/project/test/lib/validation/validator.js b/packages/project/test/lib/validation/validator.js index dc23e99562c..858ce8b3ed6 100644 --- a/packages/project/test/lib/validation/validator.js +++ b/packages/project/test/lib/validation/validator.js @@ -88,7 +88,7 @@ test("Validator requires a valid schemaName", (t) => { const Ajv = sinon.stub(); const ajvErrors = sinon.stub(); const invalidContructor = () => { - new Validator({Ajv, ajvErrors, schemName: "invalid schema name"}); + new Validator({Ajv, ajvErrors, schemaName: "invalid schema name"}); }; t.throws(invalidContructor, { From 1dfcd795a6543a34c0ff8f1c6602dd03ce9385e9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 6 Feb 2023 16:17:36 +0100 Subject: [PATCH 0831/1272] [ui5-project][INTERNAL] Workspace: Correct JSDoc --- packages/project/lib/graph/Workspace.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/graph/Workspace.js b/packages/project/lib/graph/Workspace.js index 14478bde591..a3963182db2 100644 --- a/packages/project/lib/graph/Workspace.js +++ b/packages/project/lib/graph/Workspace.js @@ -11,19 +11,20 @@ const log = getLogger("graph:Workspace"); /** - * Dependency graph node representing a module + * Workspace configuration. For details, refer to the + * [UI5 Workspaces documentation]{@link https://sap.github.io/ui5-tooling/v3/pages/Workspace/#configuration} * * @public * @typedef {object} @ui5/project/graph/Workspace~Configuration - * @property {string} node.specVersion - * @property {object} node.metadata Version of the project + * @property {string} node.specVersion Workspace Specification Version + * @property {object} node.metadata * @property {string} node.metadata.name Name of the workspace configuration * @property {object} node.dependencyManagement * @property {@ui5/project/graph/Workspace~DependencyManagementResolutions[]} node.dependencyManagement.resolutions */ /** - * A resolution entry for the dependency management section of the configuration + * A resolution entry for the dependency management section of the workspace configuration * * @public * @typedef {object} @ui5/project/graph/Workspace~DependencyManagementResolution @@ -31,7 +32,7 @@ const log = getLogger("graph:Workspace"); */ /** - * Workspace representation + * UI5 Workspace * * @public * @class From ea9ce704e6a1d7c9be33b3acf60f3acdd3814e1b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 7 Feb 2023 14:34:14 +0100 Subject: [PATCH 0832/1272] [ui5-project][INTERNAL] package-lock.json: Enforce lockfileVersion 3 Backwards compatibility for npm version <7 is no longer required Also see https://docs.npmjs.com/cli/v9/configuring-npm/package-lock-json#lockfileversion --- packages/project/.npmrc | 3 +- packages/project/package-lock.json | 6813 +--------------------------- 2 files changed, 22 insertions(+), 6794 deletions(-) diff --git a/packages/project/.npmrc b/packages/project/.npmrc index 5ea30aae908..93ec4f76ba6 100644 --- a/packages/project/.npmrc +++ b/packages/project/.npmrc @@ -1,2 +1,3 @@ # Enforce public npm registry -registry = https://registry.npmjs.org/ +registry=https://registry.npmjs.org/ +lockfile-version=3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 413948cee0f..3b94d1c556e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,7 +1,7 @@ { "name": "@ui5/project", "version": "3.0.0-rc.8", - "lockfileVersion": 2, + "lockfileVersion": 3, "requires": true, "packages": { "": { @@ -1409,9 +1409,9 @@ } }, "node_modules/ava": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.1.tgz", - "integrity": "sha512-od1CWgWVIKZSdEc1dhQWhbsd6KBs0EYjek7eqZNGPvy+NyC9Q1bXixcadlgOXwDG9aM0zLMQZwRXfe9gMb1LQQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-5.2.0.tgz", + "integrity": "sha512-W8yxFXJr/P68JP55eMpQIa6AiXhCX3VeuajM8nolyWNExcMDD6rnIWKTjw0B/+GkFHBIaN6Jd0LtcMThcoqVfg==", "dev": true, "dependencies": { "acorn": "^8.8.1", @@ -2933,9 +2933,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.286", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.286.tgz", - "integrity": "sha512-Vp3CVhmYpgf4iXNKAucoQUDcCrBQX3XLBtwgFqP9BUXuucgvAV9zWp1kYU7LL9j4++s9O+12cb3wMtN4SJy6UQ==", + "version": "1.4.288", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.288.tgz", + "integrity": "sha512-8s9aJf3YiokIrR+HOQzNOGmEHFXVUQzXM/JaViVvKdCkNUjS+lEa/uT7xw3nDVG/IgfxiIwUGkwJ6AR1pTpYsQ==", "dev": true }, "node_modules/emittery": { @@ -4205,31 +4205,20 @@ } }, "node_modules/ignore-walk": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.0.tgz", - "integrity": "sha512-bTf9UWe/UP1yxG3QUrj/KOvEhTAUWPcv+WvbFZ28LcqznXabp7Xu6o9y1JEC18+oqODuS7VhTpekV5XvFwsxJg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.1.tgz", + "integrity": "sha512-/c8MxUAqpRccq+LyDOecwF+9KqajueJHh8fz7g3YqjMZt+NSfJzx05zrKiXwa2sKwFCzaiZ5qUVfRj0pmxixEA==", "dependencies": { - "minimatch": "^5.0.1" + "minimatch": "^6.1.6" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/ignore-walk/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/immutable": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.3.tgz", - "integrity": "sha512-IHpmvaOIX4VLJwPOuQr1NpeBr2ZG6vpIj3blsLVxXRWJscLioaJRStqC+NcBsLeCDsnGlPpXd5/WZmnE7MbsKA==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.4.tgz", + "integrity": "sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w==", "dev": true }, "node_modules/import-fresh": { @@ -5730,9 +5719,9 @@ } }, "node_modules/minipass": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.1.tgz", - "integrity": "sha512-V9esFpNbK0arbN3fm2sxDKqMYgIp7XtVdE4Esj+PE4Qaaxdg1wIw48ITQIOn1sc8xXSmUviVL3cyjMqPlrVkiA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.2.tgz", + "integrity": "sha512-4Hbzei7ZyBp+1aw0874YWpKOubZd/jc53/XU+gkYry1QV+VvrbO8icLM5CUtm4F0hyXn85DXYKEMIS26gitD3A==", "engines": { "node": ">=8" } @@ -6124,9 +6113,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.9.tgz", - "integrity": "sha512-2xfmOrRkGogbTK9R6Leda0DGiXeY3p2NJpy4+gNCffdUvV6mdEJnaDEic1i3Ec2djAo8jWYoJMR5PB0MSMpxUA==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", "dev": true }, "node_modules/nofilter": { @@ -9150,6767 +9139,5 @@ "url": "https://github.com/sponsors/sindresorhus" } } - }, - "dependencies": { - "@adobe/css-tools": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.1.0.tgz", - "integrity": "sha512-mMVJ/j/GbZ/De4ZHWbQAQO1J6iVnjtZLc9WEdkUQb8S/Bu2cAF2bETXUgMAdvMG3/ngtKmcNBe+Zms9bg6jnQQ==" - }, - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/compat-data": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", - "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", - "dev": true - }, - "@babel/core": { - "version": "7.20.12", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", - "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helpers": "^7.20.7", - "@babel/parser": "^7.20.7", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.12", - "@babel/types": "^7.20.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", - "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", - "dev": true, - "requires": { - "@babel/types": "^7.20.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true - }, - "@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", - "dev": true, - "requires": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", - "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.10", - "@babel/types": "^7.20.7" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", - "dev": true - }, - "@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", - "dev": true, - "requires": { - "@babel/types": "^7.20.2" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" - }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true - }, - "@babel/helpers": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", - "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", - "dev": true, - "requires": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.13", - "@babel/types": "^7.20.7" - } - }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/parser": { - "version": "7.20.15", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.15.tgz", - "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==" - }, - "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - } - }, - "@babel/traverse": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", - "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.13", - "@babel/types": "^7.20.7", - "debug": "^4.1.0", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", - "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" - } - }, - "@es-joy/jsdoccomment": { - "version": "0.36.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.1.tgz", - "integrity": "sha512-922xqFsTpHs6D0BUiG4toiyPOMc8/jafnWKxz1KWgS4XzKPy2qXf1Pe6UFuNSCQqt6tOuhAWXBNuuyUhJmw9Vg==", - "dev": true, - "requires": { - "comment-parser": "1.3.1", - "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~3.1.0" - } - }, - "@eslint/eslintrc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", - "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - } - } - }, - "@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" - }, - "@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true - }, - "@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "@istanbuljs/esm-loader-hook": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/esm-loader-hook/-/esm-loader-hook-0.2.0.tgz", - "integrity": "sha512-pw8o3zWCen4sgiNJq69Pcl1Og7Bx4WP3ho7py2FLqZ56Hnz812yN2WwdViCx9tn9U5EWtzF4aqHDRnD7vDs92g==", - "dev": true, - "requires": { - "@babel/core": "^7.8.7", - "@istanbuljs/load-nyc-config": "^1.1.0", - "@istanbuljs/schema": "^0.1.3", - "babel-plugin-istanbul": "^6.0.0", - "test-exclude": "^6.0.0" - } - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "dependencies": { - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" - }, - "@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" - }, - "@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", - "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "@jsdoc/salty": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.3.tgz", - "integrity": "sha512-bbtCxCkxcnWhi50I+4Lj6mdz9w3pOXOgEQrID8TCZ/DF51fW7M9GCQW2y45SpBDdHd1Eirm1X/Cf6CkAAe8HPg==", - "dev": true, - "requires": { - "lodash": "^4.17.21" - } - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@npmcli/fs": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", - "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", - "requires": { - "semver": "^7.3.5" - } - }, - "@npmcli/git": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.0.3.tgz", - "integrity": "sha512-8cXNkDIbnXPVbhXMmQ7/bklCAjtmPaXfI9aEM4iH+xSuEHINLMHhlfESvVwdqmHJRJkR48vNJTSUvoF6GRPSFA==", - "requires": { - "@npmcli/promise-spawn": "^6.0.0", - "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^8.0.0", - "proc-log": "^3.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^3.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" - }, - "which": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", - "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@npmcli/installed-package-contents": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.1.tgz", - "integrity": "sha512-GIykAFdOVK31Q1/zAtT5MbxqQL2vyl9mvFJv+OGu01zxbhL3p0xc8gJjdNGX1mWmUT43aEKVO2L6V/2j4TOsAA==", - "requires": { - "npm-bundled": "^3.0.0", - "npm-normalize-package-bin": "^3.0.0" - } - }, - "@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "@npmcli/node-gyp": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", - "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==" - }, - "@npmcli/promise-spawn": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", - "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", - "requires": { - "which": "^3.0.0" - }, - "dependencies": { - "which": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", - "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@npmcli/run-script": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.0.tgz", - "integrity": "sha512-ql+AbRur1TeOdl1FY+RAwGW9fcr4ZwiVKabdvm93mujGREVuVLbdkXRJDrkTXSdCjaxYydr1wlA2v67jxWG5BQ==", - "requires": { - "@npmcli/node-gyp": "^3.0.0", - "@npmcli/promise-spawn": "^6.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^3.0.0", - "which": "^3.0.0" - }, - "dependencies": { - "which": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", - "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@sinonjs/commons": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", - "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/fake-timers": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz", - "integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==", - "dev": true, - "requires": { - "@sinonjs/commons": "^2.0.0" - } - }, - "@sinonjs/samsam": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-7.0.1.tgz", - "integrity": "sha512-zsAk2Jkiq89mhZovB2LLOdTCxJF4hqqTToGP0ASWlhp4I1hqOjcfmZGafXntCN7MDC6yySH0mFHrYtHceOeLmw==", - "dev": true, - "requires": { - "@sinonjs/commons": "^2.0.0", - "lodash.get": "^4.4.2", - "type-detect": "^4.0.8" - } - }, - "@sinonjs/text-encoding": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", - "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", - "dev": true - }, - "@tokenizer/token": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", - "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", - "dev": true - }, - "@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==" - }, - "@types/linkify-it": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", - "integrity": "sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==" - }, - "@types/markdown-it": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-12.2.3.tgz", - "integrity": "sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==", - "requires": { - "@types/linkify-it": "*", - "@types/mdurl": "*" - } - }, - "@types/mdurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", - "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" - }, - "@types/minimatch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", - "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", - "dev": true - }, - "@types/minimist": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", - "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", - "dev": true - }, - "@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" - }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "@ui5/builder": { - "version": "3.0.0-rc.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.5.tgz", - "integrity": "sha512-r5WMWJyB6DbA4PEksVPS2fEDSeXkGCPboQin3XY7Lnn92L+tyydqgPk1tivShZjw+mn+7q8+bMh+gFrluSupdw==", - "requires": { - "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-rc.6", - "@ui5/logger": "^3.0.1-rc.3", - "cheerio": "1.0.0-rc.12", - "escape-unicode": "^0.2.0", - "escope": "^4.0.0", - "espree": "^9.4.1", - "graceful-fs": "^4.2.10", - "jsdoc": "^3.6.11", - "less-openui5": "^0.11.6", - "pretty-data": "^0.40.0", - "rimraf": "^4.1.2", - "semver": "^7.3.8", - "terser": "^5.16.1", - "workerpool": "^6.3.1", - "xml2js": "^0.4.23" - } - }, - "@ui5/fs": { - "version": "3.0.0-rc.6", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.6.tgz", - "integrity": "sha512-WrvbtiGN841MdgafefftKqV1ZUB2AmKmcKBwNEVmB+5nYKzf4xPUmRf+QU+suD+m0tVbJo07o1bJ+j8xnxcdtA==", - "requires": { - "@ui5/logger": "^3.0.1-rc.3", - "clone": "^2.1.2", - "escape-string-regexp": "^5.0.0", - "globby": "^13.1.3", - "graceful-fs": "^4.2.10", - "micromatch": "^4.0.5", - "minimatch": "^6.1.6", - "pretty-hrtime": "^1.0.3", - "random-int": "^3.0.0" - } - }, - "@ui5/logger": { - "version": "3.0.1-rc.3", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.3.tgz", - "integrity": "sha512-IQ7JIAvXkIqVDUvZRtS47xzF5jOhymiBQmx7xwqZTSpIi3EqrPvEpXEdDiB/dk+yAtBNW5Ms3eRC4RYtXpAqCw==", - "requires": { - "chalk": "^5.2.0", - "cli-progress": "^3.11.2", - "figures": "^5.0.0" - } - }, - "@vue/compiler-core": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.47.tgz", - "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==", - "dev": true, - "requires": { - "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.47", - "estree-walker": "^2.0.2", - "source-map": "^0.6.1" - } - }, - "@vue/compiler-dom": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz", - "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==", - "dev": true, - "requires": { - "@vue/compiler-core": "3.2.47", - "@vue/shared": "3.2.47" - } - }, - "@vue/compiler-sfc": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz", - "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==", - "dev": true, - "requires": { - "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.47", - "@vue/compiler-dom": "3.2.47", - "@vue/compiler-ssr": "3.2.47", - "@vue/reactivity-transform": "3.2.47", - "@vue/shared": "3.2.47", - "estree-walker": "^2.0.2", - "magic-string": "^0.25.7", - "postcss": "^8.1.10", - "source-map": "^0.6.1" - } - }, - "@vue/compiler-ssr": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz", - "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==", - "dev": true, - "requires": { - "@vue/compiler-dom": "3.2.47", - "@vue/shared": "3.2.47" - } - }, - "@vue/reactivity-transform": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz", - "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==", - "dev": true, - "requires": { - "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.47", - "@vue/shared": "3.2.47", - "estree-walker": "^2.0.2", - "magic-string": "^0.25.7" - } - }, - "@vue/shared": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.47.tgz", - "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==", - "dev": true - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==" - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "requires": {} - }, - "acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "requires": { - "debug": "4" - } - }, - "agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", - "requires": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - } - }, - "aggregate-error": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", - "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", - "dev": true, - "requires": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "requires": {} - }, - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true - }, - "ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "append-transform": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", - "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", - "dev": true, - "requires": { - "default-require-extensions": "^3.0.0" - } - }, - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" - }, - "archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", - "dev": true - }, - "are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "array-differ": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", - "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", - "dev": true - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "arrgv": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arrgv/-/arrgv-1.0.2.tgz", - "integrity": "sha512-a4eg4yhp7mmruZDQFqVMlxNRFGi/i1r87pt8SDHy0/I8PqSXoUTlWZRdAZo0VXgvEARcujbtTk8kiZRi1uDGRw==", - "dev": true - }, - "arrify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", - "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", - "dev": true - }, - "ava": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-5.1.1.tgz", - "integrity": "sha512-od1CWgWVIKZSdEc1dhQWhbsd6KBs0EYjek7eqZNGPvy+NyC9Q1bXixcadlgOXwDG9aM0zLMQZwRXfe9gMb1LQQ==", - "dev": true, - "requires": { - "acorn": "^8.8.1", - "acorn-walk": "^8.2.0", - "ansi-styles": "^6.2.1", - "arrgv": "^1.0.2", - "arrify": "^3.0.0", - "callsites": "^4.0.0", - "cbor": "^8.1.0", - "chalk": "^5.2.0", - "chokidar": "^3.5.3", - "chunkd": "^2.0.1", - "ci-info": "^3.7.1", - "ci-parallel-vars": "^1.0.1", - "clean-yaml-object": "^0.1.0", - "cli-truncate": "^3.1.0", - "code-excerpt": "^4.0.0", - "common-path-prefix": "^3.0.0", - "concordance": "^5.0.4", - "currently-unhandled": "^0.4.1", - "debug": "^4.3.4", - "del": "^7.0.0", - "emittery": "^1.0.1", - "figures": "^5.0.0", - "globby": "^13.1.3", - "ignore-by-default": "^2.1.0", - "indent-string": "^5.0.0", - "is-error": "^2.2.2", - "is-plain-object": "^5.0.0", - "is-promise": "^4.0.0", - "matcher": "^5.0.0", - "mem": "^9.0.2", - "ms": "^2.1.3", - "p-event": "^5.0.1", - "p-map": "^5.5.0", - "picomatch": "^2.3.1", - "pkg-conf": "^4.0.0", - "plur": "^5.1.0", - "pretty-ms": "^8.0.0", - "resolve-cwd": "^3.0.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.6", - "strip-ansi": "^7.0.1", - "supertap": "^3.0.1", - "temp-dir": "^3.0.0", - "write-file-atomic": "^5.0.0", - "yargs": "^17.6.2" - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" - }, - "blueimp-md5": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.19.0.tgz", - "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", - "dev": true - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "requires": { - "balanced-match": "^1.0.0" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "requires": { - "fill-range": "^7.0.1" - } - }, - "browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" - }, - "builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "requires": { - "semver": "^7.0.0" - } - }, - "cacache": { - "version": "17.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.4.tgz", - "integrity": "sha512-Z/nL3gU+zTUjz5pCA5vVjYM8pmaw2kxM7JEiE0fv3w77Wj+sFbi70CrBruUWH0uNcEdvLDixFpgA2JM4F4DBjA==", - "requires": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^8.0.1", - "lru-cache": "^7.7.1", - "minipass": "^4.0.0", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "dependencies": { - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" - }, - "lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "requires": { - "aggregate-error": "^3.0.0" - } - } - } - }, - "caching-transform": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", - "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", - "dev": true, - "requires": { - "hasha": "^5.0.0", - "make-dir": "^3.0.0", - "package-hash": "^4.0.0", - "write-file-atomic": "^3.0.0" - }, - "dependencies": { - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - } - } - }, - "callsites": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.0.0.tgz", - "integrity": "sha512-y3jRROutgpKdz5vzEhWM34TidDU8vkJppF8dszITeb1PQmSqV3DTxyV8G/lyO/DNvtE1YTedehmw9MPZsCBHxQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "camelcase-keys": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz", - "integrity": "sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==", - "dev": true, - "requires": { - "camelcase": "^6.3.0", - "map-obj": "^4.1.0", - "quick-lru": "^5.1.1", - "type-fest": "^1.2.1" - }, - "dependencies": { - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true - }, - "type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "dev": true - } - } - }, - "caniuse-lite": { - "version": "1.0.30001450", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001450.tgz", - "integrity": "sha512-qMBmvmQmFXaSxexkjjfMvD5rnDL0+m+dUMZKoDYsGG8iZN29RuYh9eRoMvKsT6uMAWlyUUGDEQGJJYjzCIO9ew==", - "dev": true - }, - "catharsis": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.9.0.tgz", - "integrity": "sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==", - "requires": { - "lodash": "^4.17.15" - } - }, - "cbor": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-8.1.0.tgz", - "integrity": "sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==", - "dev": true, - "requires": { - "nofilter": "^3.1.0" - } - }, - "chalk": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", - "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==" - }, - "cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", - "requires": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" - } - }, - "cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "requires": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - } - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "chokidar-cli": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-3.0.0.tgz", - "integrity": "sha512-xVW+Qeh7z15uZRxHOkP93Ux8A0xbPzwK4GaqD8dQOYc34TlkqUhVSS59fK36DOp5WdJlrRzlYSy02Ht99FjZqQ==", - "dev": true, - "requires": { - "chokidar": "^3.5.2", - "lodash.debounce": "^4.0.8", - "lodash.throttle": "^4.1.1", - "yargs": "^13.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" - }, - "chunkd": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/chunkd/-/chunkd-2.0.1.tgz", - "integrity": "sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==", - "dev": true - }, - "ci-info": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", - "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", - "dev": true - }, - "ci-parallel-vars": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ci-parallel-vars/-/ci-parallel-vars-1.0.1.tgz", - "integrity": "sha512-uvzpYrpmidaoxvIQHM+rKSrigjOe9feHYbw4uOI2gdfe1C3xIlxO+kVXq83WQWNniTf8bAxVpy+cQeFQsMERKg==", - "dev": true - }, - "clean-stack": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", - "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", - "dev": true, - "requires": { - "escape-string-regexp": "5.0.0" - } - }, - "clean-yaml-object": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", - "integrity": "sha512-3yONmlN9CSAkzNwnRCiJQ7Q2xK5mWuEfL3PuTZcAUzhObbXsfsnMptJzXwz93nc5zn9V9TwCVMmV7w4xsm43dw==", - "dev": true - }, - "cli-progress": { - "version": "3.11.2", - "resolved": "https://registry.npmjs.org/cli-progress/-/cli-progress-3.11.2.tgz", - "integrity": "sha512-lCPoS6ncgX4+rJu5bS3F/iCz17kZ9MPZ6dpuTtI0KXKABkhyXIdYB3Inby1OpaGti3YlI3EeEkM9AuWpelJrVA==", - "requires": { - "string-width": "^4.2.3" - } - }, - "cli-truncate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", - "dev": true, - "requires": { - "slice-ansi": "^5.0.0", - "string-width": "^5.0.0" - }, - "dependencies": { - "emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, - "requires": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - } - } - } - }, - "cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==" - }, - "code-excerpt": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-4.0.0.tgz", - "integrity": "sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==", - "dev": true, - "requires": { - "convert-to-spaces": "^2.0.1" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "comment-parser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", - "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", - "dev": true - }, - "common-path-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", - "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "concordance": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-5.0.4.tgz", - "integrity": "sha512-OAcsnTEYu1ARJqWVGwf4zh4JDfHZEaSNlNccFmt8YjB2l/n19/PF2viLINHc57vO4FKIAFl2FWASIGZZWZ2Kxw==", - "dev": true, - "requires": { - "date-time": "^3.1.0", - "esutils": "^2.0.3", - "fast-diff": "^1.2.0", - "js-string-escape": "^1.0.1", - "lodash": "^4.17.15", - "md5-hex": "^3.0.1", - "semver": "^7.3.2", - "well-known-symbols": "^2.0.0" - } - }, - "config-chain": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", - "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", - "dev": true, - "requires": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" - }, - "convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "convert-to-spaces": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-2.0.1.tgz", - "integrity": "sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==", - "dev": true - }, - "core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "cross-env": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", - "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.1" - } - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "crypto-random-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", - "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==", - "dev": true, - "requires": { - "type-fest": "^1.0.1" - }, - "dependencies": { - "type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "dev": true - } - } - }, - "css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "date-time": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-3.1.0.tgz", - "integrity": "sha512-uqCUKXE5q1PNBXjPqvwhwJf9SwMoAHBgWJ6DcrnS5o+W2JOiIILl0JEdVD8SGujrNS02GGxgwAg2PN2zONgtjg==", - "dev": true, - "requires": { - "time-zone": "^1.0.0" - } - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - }, - "dependencies": { - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true - }, - "decamelize-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", - "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", - "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", - "dev": true - } - } - }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "default-require-extensions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz", - "integrity": "sha512-eXTJmRbm2TIt9MgWTsOH1wEuhew6XGZcMeGKCtLedIg/NCsg1iBePXkceTdK4Fii7pzmN9tGsZhKzZ4h7O/fxw==", - "dev": true, - "requires": { - "strip-bom": "^4.0.0" - } - }, - "define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true - }, - "del": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-7.0.0.tgz", - "integrity": "sha512-tQbV/4u5WVB8HMJr08pgw0b6nG4RGt/tj+7Numvq+zqcvUFeMaIWWOUFltiU+6go8BSO2/ogsB4EasDaj0y68Q==", - "dev": true, - "requires": { - "globby": "^13.1.2", - "graceful-fs": "^4.2.10", - "is-glob": "^4.0.3", - "is-path-cwd": "^3.0.0", - "is-path-inside": "^4.0.0", - "p-map": "^5.5.0", - "rimraf": "^3.0.2", - "slash": "^4.0.0" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true - } - } - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" - }, - "depcheck": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.3.tgz", - "integrity": "sha512-vy8xe1tlLFu7t4jFyoirMmOR7x7N601ubU9Gkifyr9z8rjBFtEdWHDBMqXyk6OkK+94NXutzddVXJuo0JlUQKQ==", - "dev": true, - "requires": { - "@babel/parser": "7.16.4", - "@babel/traverse": "^7.12.5", - "@vue/compiler-sfc": "^3.0.5", - "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.0", - "debug": "^4.2.0", - "deps-regex": "^0.1.4", - "ignore": "^5.1.8", - "is-core-module": "^2.4.0", - "js-yaml": "^3.14.0", - "json5": "^2.1.3", - "lodash": "^4.17.20", - "minimatch": "^3.0.4", - "multimatch": "^5.0.0", - "please-upgrade-node": "^3.2.0", - "query-ast": "^1.0.3", - "readdirp": "^3.5.0", - "require-package-name": "^2.0.1", - "resolve": "^1.18.1", - "sass": "^1.29.0", - "scss-parser": "^1.0.4", - "semver": "^7.3.2", - "yargs": "^16.1.0" - }, - "dependencies": { - "@babel/parser": { - "version": "7.16.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", - "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - } - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==" - }, - "deps-regex": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", - "integrity": "sha512-3tzwGYogSJi8HoG93R5x9NrdefZQOXgHgGih/7eivloOq6yC6O+yoFxZnkgP661twvfILONfoKRdF9GQOGx2RA==", - "dev": true - }, - "diff": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", - "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "requires": { - "path-type": "^4.0.0" - } - }, - "docdash": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-2.0.1.tgz", - "integrity": "sha512-mkBhkeMyMwGV4YIdA7S4dIC25ENrfU/ZBfyTs/MXj/HUewW/dtx44xoho4PttCOMsqxlcghzfj8HRlam5QiSoQ==", - "dev": true, - "requires": { - "@jsdoc/salty": "^0.2.1" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" - }, - "domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "requires": { - "domelementtype": "^2.3.0" - } - }, - "domutils": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", - "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", - "requires": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.1" - } - }, - "duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true - }, - "eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true - }, - "editorconfig": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", - "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", - "dev": true, - "requires": { - "commander": "^2.19.0", - "lru-cache": "^4.1.5", - "semver": "^5.6.0", - "sigmund": "^1.0.1" - }, - "dependencies": { - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "dev": true - } - } - }, - "electron-to-chromium": { - "version": "1.4.286", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.286.tgz", - "integrity": "sha512-Vp3CVhmYpgf4iXNKAucoQUDcCrBQX3XLBtwgFqP9BUXuucgvAV9zWp1kYU7LL9j4++s9O+12cb3wMtN4SJy6UQ==", - "dev": true - }, - "emittery": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.0.1.tgz", - "integrity": "sha512-2ID6FdrMD9KDLldGesP6317G78K7km/kMcwItRtVFva7I/cSEOIaLpewaUb+YLXVwdAp3Ctfxh/V5zIl1sj7dQ==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "optional": true, - "requires": { - "iconv-lite": "^0.6.2" - } - }, - "enhance-visitors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/enhance-visitors/-/enhance-visitors-1.0.0.tgz", - "integrity": "sha512-+29eJLiUixTEDRaZ35Vu8jP3gPLNcQQkQkOQjLp2X+6cZGGPDD/uasbFzvLsJKnGZnvmyZ0srxudwOtskHeIDA==", - "dev": true, - "requires": { - "lodash": "^4.13.1" - } - }, - "entities": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", - "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==" - }, - "env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==" - }, - "err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==" - }, - "escape-unicode": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/escape-unicode/-/escape-unicode-0.2.0.tgz", - "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==" - }, - "escope": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-4.0.0.tgz", - "integrity": "sha512-E36qlD/r6RJHVpPKArgMoMlNJzoRJFH8z/cAZlI9lbc45zB3+S7i9k6e/MNb+7bZQzNEa6r8WKN3BovpeIBwgA==", - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", - "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", - "dev": true, - "requires": { - "@eslint/eslintrc": "^1.4.1", - "@humanwhocodes/config-array": "^0.11.8", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - } - } - }, - "eslint-config-google": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz", - "integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==", - "dev": true, - "requires": {} - }, - "eslint-plugin-ava": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-14.0.0.tgz", - "integrity": "sha512-XmKT6hppaipwwnLVwwvQliSU6AF1QMHiNoLD5JQfzhUhf0jY7CO0O624fQrE+Y/fTb9vbW8r77nKf7M/oHulxw==", - "dev": true, - "requires": { - "enhance-visitors": "^1.0.0", - "eslint-utils": "^3.0.0", - "espree": "^9.0.0", - "espurify": "^2.1.1", - "import-modules": "^2.1.0", - "micro-spelling-correcter": "^1.1.1", - "pkg-dir": "^5.0.0", - "resolve-from": "^5.0.0" - } - }, - "eslint-plugin-jsdoc": { - "version": "39.8.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.8.0.tgz", - "integrity": "sha512-ZwGmk0jJoJD/NILeDRBKrpq/PCgddUdATjeU5JGTqTzKsOWfeaHOnaAwZjuOh7T8EB4hSoZ/9pR4+Qns2ldQVg==", - "dev": true, - "requires": { - "@es-joy/jsdoccomment": "~0.36.1", - "comment-parser": "1.3.1", - "debug": "^4.3.4", - "escape-string-regexp": "^4.0.0", - "esquery": "^1.4.0", - "semver": "^7.3.8", - "spdx-expression-parse": "^3.0.1" - }, - "dependencies": { - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - } - } - }, - "eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - } - } - }, - "eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^2.0.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true - } - } - }, - "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==" - }, - "esmock": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.1.0.tgz", - "integrity": "sha512-8/2+iFfcB5FMJDBWXmXCY/4GSaI8sMCWUmq2laroQc3y9AI53QMm5Ew25DkW9FMaM8dBH8hmvOr2l3qChJ2JgA==", - "dev": true - }, - "espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", - "requires": { - "acorn": "^8.8.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "espurify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/espurify/-/espurify-2.1.1.tgz", - "integrity": "sha512-zttWvnkhcDyGOhSH4vO2qCBILpdCMv/MX8lp4cqgRkQoDRGK2oZxi2GfWhlP2dIXmk7BaKeOTuzbHhyC68o8XQ==", - "dev": true - }, - "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - } - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" - }, - "estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "events-to-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", - "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true - }, - "fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "requires": { - "reusify": "^1.0.4" - } - }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" - }, - "figures": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", - "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", - "requires": { - "escape-string-regexp": "^5.0.0", - "is-unicode-supported": "^1.2.0" - } - }, - "file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "file-type": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.2.0.tgz", - "integrity": "sha512-M3RQMWY3F2ykyWZ+IHwNCjpnUmukYhtdkGGC1ZVEUb0ve5REGF7NNJ4Q9ehCUabtQKtSVFOMbFTXgJlFb0DQIg==", - "dev": true, - "requires": { - "readable-web-to-node-stream": "^3.0.2", - "strtok3": "^7.0.0", - "token-types": "^5.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "dependencies": { - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - } - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" - } - }, - "fromentries": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", - "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==", - "dev": true - }, - "fs-minipass": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.1.tgz", - "integrity": "sha512-MhaJDcFRTuLidHrIttu0RDGyyXs/IYHVmlcxfLAEFIWjc1vdLAkdwT7Ace2u7DbitWC0toKMl5eJZRYNVreIMw==", - "requires": { - "minipass": "^4.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true - }, - "get-stdin": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", - "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", - "dev": true - }, - "glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "dependencies": { - "minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "requires": { - "brace-expansion": "^2.0.1" - } - } - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "requires": { - "is-glob": "^4.0.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globby": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", - "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", - "requires": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "dependencies": { - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==" - } - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" - }, - "grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "dev": true - }, - "hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" - }, - "hasha": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", - "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==", - "dev": true, - "requires": { - "is-stream": "^2.0.0", - "type-fest": "^0.8.0" - } - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "htmlparser2": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", - "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "entities": "^4.3.0" - } - }, - "http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" - }, - "http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "requires": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "requires": { - "ms": "^2.0.0" - } - }, - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==" - }, - "ignore-by-default": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-2.1.0.tgz", - "integrity": "sha512-yiWd4GVmJp0Q6ghmM2B/V3oZGRmjrKLXvHR3TE1nfoXsmoggllfZUQe74EN0fJdPFZu2NIvNdrMMLm3OsV7Ohw==", - "dev": true - }, - "ignore-walk": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.0.tgz", - "integrity": "sha512-bTf9UWe/UP1yxG3QUrj/KOvEhTAUWPcv+WvbFZ28LcqznXabp7Xu6o9y1JEC18+oqODuS7VhTpekV5XvFwsxJg==", - "requires": { - "minimatch": "^5.0.1" - }, - "dependencies": { - "minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "requires": { - "brace-expansion": "^2.0.1" - } - } - } - }, - "immutable": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.3.tgz", - "integrity": "sha512-IHpmvaOIX4VLJwPOuQr1NpeBr2ZG6vpIj3blsLVxXRWJscLioaJRStqC+NcBsLeCDsnGlPpXd5/WZmnE7MbsKA==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } - } - }, - "import-modules": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-modules/-/import-modules-2.1.0.tgz", - "integrity": "sha512-8HEWcnkbGpovH9yInoisxaSoIg9Brbul+Ju3Kqe2UsYDUBJD/iQjSgEj0zPcTDPKfPp2fs5xlv1i+JSye/m1/A==", - "dev": true - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" - }, - "indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" - }, - "irregular-plurals": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.4.0.tgz", - "integrity": "sha512-YXxECO/W6N9aMBVKMKKZ8TXESgq7EFrp3emCGGUcrYY1cgJIeZjoB75MTu8qi+NAKntS9NwPU8VdcQ3r6E6aWQ==", - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", - "requires": { - "has": "^1.0.3" - } - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true - }, - "is-error": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", - "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" - }, - "is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, - "is-path-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-3.0.0.tgz", - "integrity": "sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==", - "dev": true - }, - "is-path-inside": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", - "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", - "dev": true - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "dev": true - }, - "is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true - }, - "is-promise": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", - "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", - "dev": true - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "is-unicode-supported": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", - "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==" - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "requires": { - "is-docker": "^2.0.0" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-hook": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", - "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", - "dev": true, - "requires": { - "append-transform": "^2.0.0" - } - }, - "istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "istanbul-lib-processinfo": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz", - "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==", - "dev": true, - "requires": { - "archy": "^1.0.0", - "cross-spawn": "^7.0.3", - "istanbul-lib-coverage": "^3.2.0", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", - "uuid": "^8.3.2" - }, - "dependencies": { - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - } - }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - } - }, - "istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "js-beautify": { - "version": "1.14.7", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.7.tgz", - "integrity": "sha512-5SOX1KXPFKx+5f6ZrPsIPEY7NwKeQz47n3jm2i+XeHx9MoRsfQenlOP13FQhWvg8JRS0+XLO6XYUQ2GX+q+T9A==", - "dev": true, - "requires": { - "config-chain": "^1.1.13", - "editorconfig": "^0.15.3", - "glob": "^8.0.3", - "nopt": "^6.0.0" - } - }, - "js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", - "dev": true - }, - "js-string-escape": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", - "integrity": "sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "requires": { - "argparse": "^2.0.1" - } - }, - "js2xmlparser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.2.tgz", - "integrity": "sha512-6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA==", - "requires": { - "xmlcreate": "^2.0.4" - } - }, - "jsdoc": { - "version": "3.6.11", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.11.tgz", - "integrity": "sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg==", - "requires": { - "@babel/parser": "^7.9.4", - "@types/markdown-it": "^12.2.3", - "bluebird": "^3.7.2", - "catharsis": "^0.9.0", - "escape-string-regexp": "^2.0.0", - "js2xmlparser": "^4.0.2", - "klaw": "^3.0.0", - "markdown-it": "^12.3.2", - "markdown-it-anchor": "^8.4.1", - "marked": "^4.0.10", - "mkdirp": "^1.0.4", - "requizzle": "^0.2.3", - "strip-json-comments": "^3.1.0", - "taffydb": "2.6.2", - "underscore": "~1.13.2" - }, - "dependencies": { - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" - } - } - }, - "jsdoc-type-pratt-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", - "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true - }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==" - }, - "just-extend": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", - "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", - "dev": true - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "klaw": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", - "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", - "requires": { - "graceful-fs": "^4.1.9" - } - }, - "less-openui5": { - "version": "0.11.6", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.6.tgz", - "integrity": "sha512-sQmU+G2pJjFfzRI+XtXkk+T9G0s6UmWWUfOW0utPR46C9lfhNr4DH1lNJuImj64reXYi+vOwyNxPRkj0F3mofA==", - "requires": { - "@adobe/css-tools": "^4.0.2", - "clone": "^2.1.2", - "mime": "^1.6.0" - } - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "libnpmconfig": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/libnpmconfig/-/libnpmconfig-1.2.1.tgz", - "integrity": "sha512-9esX8rTQAHqarx6qeZqmGQKBNZR5OIbl/Ayr0qQDy3oXja2iFVQQI81R6GZ2a02bSNZ9p3YOGX1O6HHCb1X7kA==", - "requires": { - "figgy-pudding": "^3.5.1", - "find-up": "^3.0.0", - "ini": "^1.3.5" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "requires": { - "p-limit": "^2.0.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" - } - } - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" - }, - "linkify-it": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz", - "integrity": "sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==", - "requires": { - "uc.micro": "^1.0.1" - } - }, - "load-json-file": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-7.0.1.tgz", - "integrity": "sha512-Gnxj3ev3mB5TkVBGad0JM6dmLiQL+o0t23JPBZ9sd+yvSLk05mFoqKBw5N8gbbkU4TNXyqCgIrl/VM17OgUIgQ==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lockfile": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lockfile/-/lockfile-1.0.4.tgz", - "integrity": "sha512-cvbTwETRfsFh4nHsL1eGWapU1XFi5Ot9E85sWAwia7Y7EgB7vfqcZhTKZ+l7hCGxSPoushMv5GKhT5PdLv03WA==", - "requires": { - "signal-exit": "^3.0.2" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", - "dev": true - }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", - "dev": true - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "lodash.throttle": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "magic-string": { - "version": "0.25.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", - "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.8" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", - "requires": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - }, - "dependencies": { - "@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "requires": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - } - }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "cacache": { - "version": "16.1.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", - "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", - "requires": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^2.0.0" - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "requires": { - "minipass": "^3.0.0" - } - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" - }, - "lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "requires": { - "yallist": "^4.0.0" - } - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "requires": { - "minipass": "^3.1.1" - } - }, - "unique-filename": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", - "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", - "requires": { - "unique-slug": "^3.0.0" - } - }, - "unique-slug": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", - "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, - "map-obj": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", - "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", - "dev": true - }, - "markdown-it": { - "version": "12.3.2", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", - "integrity": "sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==", - "requires": { - "argparse": "^2.0.1", - "entities": "~2.1.0", - "linkify-it": "^3.0.1", - "mdurl": "^1.0.1", - "uc.micro": "^1.0.5" - }, - "dependencies": { - "entities": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz", - "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==" - } - } - }, - "markdown-it-anchor": { - "version": "8.6.6", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.6.tgz", - "integrity": "sha512-jRW30YGywD2ESXDc+l17AiritL0uVaSnWsb26f+68qaW9zgbIIr1f4v2Nsvc0+s0Z2N3uX6t/yAw7BwCQ1wMsA==", - "requires": {} - }, - "marked": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", - "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==" - }, - "matcher": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-5.0.0.tgz", - "integrity": "sha512-s2EMBOWtXFc8dgqvoAzKJXxNHibcdJMV0gwqKUaw9E2JBJuGUK7DrNKrA6g/i+v72TT16+6sVm5mS3thaMLQUw==", - "dev": true, - "requires": { - "escape-string-regexp": "^5.0.0" - } - }, - "md5-hex": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.1.tgz", - "integrity": "sha512-BUiRtTtV39LIJwinWBjqVsU9xhdnz7/i889V859IBFpuqGAj6LuOvHv5XLbgZ2R7ptJoJaEcxkv88/h25T7Ciw==", - "dev": true, - "requires": { - "blueimp-md5": "^2.10.0" - } - }, - "mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" - }, - "mem": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/mem/-/mem-9.0.2.tgz", - "integrity": "sha512-F2t4YIv9XQUBHt6AOJ0y7lSmP1+cY7Fm1DRh9GClTGzKST7UWLMx6ly9WZdLH/G/ppM5RL4MlQfRT71ri9t19A==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.3", - "mimic-fn": "^4.0.0" - } - }, - "meow": { - "version": "10.1.5", - "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz", - "integrity": "sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==", - "dev": true, - "requires": { - "@types/minimist": "^1.2.2", - "camelcase-keys": "^7.0.0", - "decamelize": "^5.0.0", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.2", - "read-pkg-up": "^8.0.0", - "redent": "^4.0.0", - "trim-newlines": "^4.0.2", - "type-fest": "^1.2.2", - "yargs-parser": "^20.2.9" - }, - "dependencies": { - "decamelize": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", - "integrity": "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", - "dev": true - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "read-pkg": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", - "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^1.0.1" - } - }, - "read-pkg-up": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", - "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", - "dev": true, - "requires": { - "find-up": "^5.0.0", - "read-pkg": "^6.0.0", - "type-fest": "^1.0.1" - } - }, - "type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "dev": true - } - } - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" - }, - "micro-spelling-correcter": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/micro-spelling-correcter/-/micro-spelling-correcter-1.1.1.tgz", - "integrity": "sha512-lkJ3Rj/mtjlRcHk6YyCbvZhyWTOzdBvTHsxMmZSk5jxN1YyVSQ+JETAom55mdzfcyDrY/49Z7UCW760BK30crg==", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true - }, - "min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true - }, - "minimatch": { - "version": "6.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.6.tgz", - "integrity": "sha512-6bR3UIeh/DF8+p6A9Spyuy67ShOq42rOkHWi7eUe3Ua99Zo5lZfGC6lJJWkeoK4k9jQFT3Pl7czhTXimG2XheA==", - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", - "dev": true - }, - "minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "dependencies": { - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true - } - } - }, - "minipass": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.1.tgz", - "integrity": "sha512-V9esFpNbK0arbN3fm2sxDKqMYgIp7XtVdE4Esj+PE4Qaaxdg1wIw48ITQIOn1sc8xXSmUviVL3cyjMqPlrVkiA==" - }, - "minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "requires": { - "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "minipass-fetch": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", - "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", - "requires": { - "encoding": "^0.1.13", - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "requires": { - "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "requires": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "requires": { - "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "requires": { - "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "multimatch": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", - "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", - "dev": true, - "requires": { - "@types/minimatch": "^3.0.3", - "array-differ": "^3.0.0", - "array-union": "^2.1.0", - "arrify": "^2.0.1", - "minimatch": "^3.0.4" - }, - "dependencies": { - "arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "dev": true - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" - }, - "nise": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.4.tgz", - "integrity": "sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg==", - "dev": true, - "requires": { - "@sinonjs/commons": "^2.0.0", - "@sinonjs/fake-timers": "^10.0.2", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "path-to-regexp": "^1.7.0" - } - }, - "node-gyp": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.1.tgz", - "integrity": "sha512-4Q16ZCqq3g8awk6UplT7AuxQ35XN4R/yf/+wSAwcBUAjg7l58RTactWaP8fIDTi0FzI7YcVLujwExakZlfWkXg==", - "requires": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^6.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "node-preload": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", - "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", - "dev": true, - "requires": { - "process-on-spawn": "^1.0.0" - } - }, - "node-releases": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.9.tgz", - "integrity": "sha512-2xfmOrRkGogbTK9R6Leda0DGiXeY3p2NJpy4+gNCffdUvV6mdEJnaDEic1i3Ec2djAo8jWYoJMR5PB0MSMpxUA==", - "dev": true - }, - "nofilter": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", - "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==", - "dev": true - }, - "nopt": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", - "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", - "requires": { - "abbrev": "^1.0.0" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "npm-bundled": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", - "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", - "requires": { - "npm-normalize-package-bin": "^3.0.0" - } - }, - "npm-install-checks": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.0.0.tgz", - "integrity": "sha512-SBU9oFglRVZnfElwAtF14NivyulDqF1VKqqwNsFW9HDcbHMAPHpRSsVFgKuwFGq/hVvWZExz62Th0kvxn/XE7Q==", - "requires": { - "semver": "^7.1.1" - } - }, - "npm-normalize-package-bin": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.0.tgz", - "integrity": "sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q==" - }, - "npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", - "requires": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "dependencies": { - "hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", - "requires": { - "lru-cache": "^7.5.1" - } - }, - "lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" - } - } - }, - "npm-packlist": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", - "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", - "requires": { - "ignore-walk": "^6.0.0" - } - }, - "npm-pick-manifest": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", - "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", - "requires": { - "npm-install-checks": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^10.0.0", - "semver": "^7.3.5" - } - }, - "npm-registry-fetch": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.3.tgz", - "integrity": "sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA==", - "requires": { - "make-fetch-happen": "^11.0.0", - "minipass": "^4.0.0", - "minipass-fetch": "^3.0.0", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^10.0.0", - "proc-log": "^3.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" - }, - "make-fetch-happen": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz", - "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==", - "requires": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^4.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - } - }, - "minipass-fetch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz", - "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==", - "requires": { - "encoding": "^0.1.13", - "minipass": "^4.0.0", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - } - } - } - }, - "npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "requires": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - } - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "requires": { - "boolbase": "^1.0.0" - } - }, - "nyc": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", - "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", - "dev": true, - "requires": { - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "caching-transform": "^4.0.0", - "convert-source-map": "^1.7.0", - "decamelize": "^1.2.0", - "find-cache-dir": "^3.2.0", - "find-up": "^4.1.0", - "foreground-child": "^2.0.0", - "get-package-type": "^0.1.0", - "glob": "^7.1.6", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-hook": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", - "istanbul-lib-processinfo": "^2.0.2", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "make-dir": "^3.0.0", - "node-preload": "^0.2.1", - "p-map": "^3.0.0", - "process-on-spawn": "^1.0.0", - "resolve-from": "^5.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "spawn-wrap": "^2.0.0", - "test-exclude": "^6.0.0", - "yargs": "^15.0.2" - }, - "dependencies": { - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", - "dev": true, - "requires": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "requires": { - "wrappy": "1" - } - }, - "open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dev": true, - "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - } - }, - "open-cli": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-7.1.0.tgz", - "integrity": "sha512-Xnn/B7WY9ygV47oK+LlYp5WU8xr0tEL6SEw9jMX8n6ceElOs2AzVXFXI87/O0+b+LwLokQBZVxBMzGZHCYVppw==", - "dev": true, - "requires": { - "file-type": "^18.0.0", - "get-stdin": "^9.0.0", - "meow": "^10.1.5", - "open": "^8.4.0", - "tempy": "^3.0.0" - } - }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "requires": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - } - }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", - "dev": true - }, - "p-event": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-5.0.1.tgz", - "integrity": "sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==", - "dev": true, - "requires": { - "p-timeout": "^5.0.2" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-map": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", - "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", - "dev": true, - "requires": { - "aggregate-error": "^4.0.0" - } - }, - "p-timeout": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", - "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", - "dev": true - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "package-hash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", - "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^5.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - } - }, - "pacote": { - "version": "15.0.8", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.8.tgz", - "integrity": "sha512-UlcumB/XS6xyyIMwg/WwMAyUmga+RivB5KgkRwA1hZNtrx+0Bt41KxHCvg1kr0pZ/ZeD8qjhW4fph6VaYRCbLw==", - "requires": { - "@npmcli/git": "^4.0.0", - "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/promise-spawn": "^6.0.1", - "@npmcli/run-script": "^6.0.0", - "cacache": "^17.0.0", - "fs-minipass": "^3.0.0", - "minipass": "^4.0.0", - "npm-package-arg": "^10.0.0", - "npm-packlist": "^7.0.0", - "npm-pick-manifest": "^8.0.0", - "npm-registry-fetch": "^14.0.0", - "proc-log": "^3.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^6.0.0", - "read-package-json-fast": "^3.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11" - } - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - }, - "dependencies": { - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - } - } - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "parse-ms": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-3.0.0.tgz", - "integrity": "sha512-Tpb8Z7r7XbbtBTrM9UhpkzzaMrqA2VXMT3YChzYltwV3P3pM6t8wl7TvpMnSTosz1aQAdVib7kdoys7vYOPerw==", - "dev": true - }, - "parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "requires": { - "entities": "^4.4.0" - } - }, - "parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", - "requires": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - }, - "path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dev": true, - "requires": { - "isarray": "0.0.1" - } - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" - }, - "peek-readable": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz", - "integrity": "sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A==", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" - }, - "pkg-conf": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-4.0.0.tgz", - "integrity": "sha512-7dmgi4UY4qk+4mj5Cd8v/GExPo0K+SlY+hulOSdfZ/T6jVH6//y7NtzZo5WrfhDBxuQ0jCa7fLZmNaNh7EWL/w==", - "dev": true, - "requires": { - "find-up": "^6.0.0", - "load-json-file": "^7.0.0" - }, - "dependencies": { - "find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "requires": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - } - }, - "locate-path": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.1.tgz", - "integrity": "sha512-vJXaRMJgRVD3+cUZs3Mncj2mxpt5mP0EmNOsxRSZRMlbqjvxzDEOIUWXGmavo0ZC9+tNZCBLQ66reA11nbpHZg==", - "dev": true, - "requires": { - "p-locate": "^6.0.0" - } - }, - "p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "requires": { - "yocto-queue": "^1.0.0" - } - }, - "p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "requires": { - "p-limit": "^4.0.0" - } - }, - "path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true - }, - "yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true - } - } - }, - "pkg-dir": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", - "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", - "dev": true, - "requires": { - "find-up": "^5.0.0" - }, - "dependencies": { - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - } - } - }, - "please-upgrade-node": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", - "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", - "dev": true, - "requires": { - "semver-compare": "^1.0.0" - } - }, - "plur": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/plur/-/plur-5.1.0.tgz", - "integrity": "sha512-VP/72JeXqak2KiOzjgKtQen5y3IZHn+9GOuLDafPv0eXa47xq0At93XahYBs26MsifCQ4enGKwbjBTKgb9QJXg==", - "dev": true, - "requires": { - "irregular-plurals": "^3.3.0" - } - }, - "postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", - "dev": true, - "requires": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true - }, - "pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==" - }, - "pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==" - }, - "pretty-ms": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-8.0.0.tgz", - "integrity": "sha512-ASJqOugUF1bbzI35STMBUpZqdfYKlJugy6JBziGi2EE+AL5JPJGSzvpeVXojxrr0ViUYoToUjb5kjSEGf7Y83Q==", - "dev": true, - "requires": { - "parse-ms": "^3.0.0" - } - }, - "proc-log": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", - "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==" - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "process-on-spawn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", - "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", - "dev": true, - "requires": { - "fromentries": "^1.2.0" - } - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" - }, - "promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "requires": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - } - }, - "proto-list": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", - "dev": true - }, - "punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" - }, - "query-ast": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.5.tgz", - "integrity": "sha512-JK+1ma4YDuLjvKKcz9JZ70G+CM9qEOs/l1cZzstMMfwKUabTJ9sud5jvDGrUNuv03yKUgs82bLkHXJkDyhRmBw==", - "dev": true, - "requires": { - "invariant": "2.2.4", - "lodash": "^4.17.21" - } - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" - }, - "quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "dev": true - }, - "random-int": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-3.0.0.tgz", - "integrity": "sha512-QvewnOwigesW2WFyTHiQzR6XUUcSQO/BqmfgRz5N5GpGrKQnTf7ebMz8UtuwaET8IfO1n0wLx8/fHsI8E0Jpow==" - }, - "read-package-json": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.0.tgz", - "integrity": "sha512-b/9jxWJ8EwogJPpv99ma+QwtqB7FSl3+V6UXS7Aaay8/5VwMY50oIFooY1UKXMWpfNCM6T/PoGqa5GD1g9xf9w==", - "requires": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^5.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "dependencies": { - "hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", - "requires": { - "lru-cache": "^7.5.1" - } - }, - "json-parse-even-better-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", - "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==" - }, - "lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==" - }, - "normalize-package-data": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", - "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", - "requires": { - "hosted-git-info": "^6.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - } - } - } - }, - "read-package-json-fast": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", - "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", - "requires": { - "json-parse-even-better-errors": "^3.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "dependencies": { - "json-parse-even-better-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", - "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==" - } - } - }, - "read-pkg": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", - "integrity": "sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==", - "requires": { - "@types/normalize-package-data": "^2.4.1", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^2.0.0" - }, - "dependencies": { - "type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" - } - } - }, - "read-pkg-up": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-9.1.0.tgz", - "integrity": "sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg==", - "requires": { - "find-up": "^6.3.0", - "read-pkg": "^7.1.0", - "type-fest": "^2.5.0" - }, - "dependencies": { - "find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "requires": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - } - }, - "locate-path": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.1.tgz", - "integrity": "sha512-vJXaRMJgRVD3+cUZs3Mncj2mxpt5mP0EmNOsxRSZRMlbqjvxzDEOIUWXGmavo0ZC9+tNZCBLQ66reA11nbpHZg==", - "requires": { - "p-locate": "^6.0.0" - } - }, - "p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "requires": { - "yocto-queue": "^1.0.0" - } - }, - "p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "requires": { - "p-limit": "^4.0.0" - } - }, - "path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==" - }, - "type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" - }, - "yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==" - } - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readable-web-to-node-stream": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", - "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", - "dev": true, - "requires": { - "readable-stream": "^3.6.0" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "redent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", - "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", - "dev": true, - "requires": { - "indent-string": "^5.0.0", - "strip-indent": "^4.0.0" - } - }, - "regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true - }, - "release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "require-package-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/require-package-name/-/require-package-name-2.0.1.tgz", - "integrity": "sha512-uuoJ1hU/k6M0779t3VMVIYpb2VMJk05cehCaABFhXaibcbvfgR8wKiozLjVFSzJPmQMRqIcO0HMyTFqfV09V6Q==", - "dev": true - }, - "requizzle": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.4.tgz", - "integrity": "sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw==", - "requires": { - "lodash": "^4.17.21" - } - }, - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, - "requires": { - "resolve-from": "^5.0.0" - } - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==" - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" - }, - "rimraf": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.2.tgz", - "integrity": "sha512-BlIbgFryTbw3Dz6hyoWFhKk+unCcHMSkZGrTFVAx2WmttdBSonsdtRlwiuTbDqTKr+UlXIUqJVS4QT5tUzGENQ==" - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "optional": true - }, - "sass": { - "version": "1.58.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.58.0.tgz", - "integrity": "sha512-PiMJcP33DdKtZ/1jSjjqVIKihoDc6yWmYr9K/4r3fVVIEDAluD0q7XZiRKrNJcPK3qkLRF/79DND1H5q1LBjgg==", - "dev": true, - "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "scss-parser": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/scss-parser/-/scss-parser-1.0.6.tgz", - "integrity": "sha512-SH3TaoaJFzfAtqs3eG1j5IuHJkeEW5rKUPIjIN+ZorLAyJLHItQGnsgwHk76v25GtLtpT9IqfAcqK4vFWdiw+w==", - "dev": true, - "requires": { - "invariant": "2.2.4", - "lodash": "4.17.21" - } - }, - "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", - "dev": true - }, - "serialize-error": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", - "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", - "dev": true, - "requires": { - "type-fest": "^0.13.1" - }, - "dependencies": { - "type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", - "dev": true - } - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "sigmund": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "sinon": { - "version": "15.0.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz", - "integrity": "sha512-PZXKc08f/wcA/BMRGBze2Wmw50CWPiAH3E21EOi4B49vJ616vW4DQh4fQrqsYox2aNR/N3kCqLuB0PwwOucQrg==", - "dev": true, - "requires": { - "@sinonjs/commons": "^2.0.0", - "@sinonjs/fake-timers": "10.0.2", - "@sinonjs/samsam": "^7.0.1", - "diff": "^5.0.0", - "nise": "^5.1.2", - "supports-color": "^7.2.0" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "slice-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", - "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", - "dev": true, - "requires": { - "ansi-styles": "^6.0.0", - "is-fullwidth-code-point": "^4.0.0" - } - }, - "smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==" - }, - "socks": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", - "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", - "requires": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - } - }, - "socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", - "requires": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "spawn-wrap": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", - "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", - "dev": true, - "requires": { - "foreground-child": "^2.0.0", - "is-windows": "^1.0.2", - "make-dir": "^3.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "which": "^2.0.1" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", - "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "ssri": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.1.tgz", - "integrity": "sha512-WVy6di9DlPOeBWEjMScpNipeSX2jIZBGEn5Uuo8Q7aIuFEuDX0pw8RxcOjlD1TWP4obi24ki7m/13+nFpcbXrw==", - "requires": { - "minipass": "^4.0.0" - } - }, - "stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "dev": true, - "requires": { - "escape-string-regexp": "^2.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true - } - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dev": true, - "requires": { - "ansi-regex": "^6.0.1" - } - }, - "strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true - }, - "strip-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", - "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", - "dev": true, - "requires": { - "min-indent": "^1.0.1" - } - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" - }, - "strtok3": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0.tgz", - "integrity": "sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==", - "dev": true, - "requires": { - "@tokenizer/token": "^0.3.0", - "peek-readable": "^5.0.0" - } - }, - "supertap": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/supertap/-/supertap-3.0.1.tgz", - "integrity": "sha512-u1ZpIBCawJnO+0QePsEiOknOfCRq0yERxiAchT0i4li0WHNUJbf0evXXSXOcCAR4M8iMDoajXYmstm/qO81Isw==", - "dev": true, - "requires": { - "indent-string": "^5.0.0", - "js-yaml": "^3.14.1", - "serialize-error": "^7.0.1", - "strip-ansi": "^7.0.1" - }, - "dependencies": { - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" - }, - "taffydb": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA==" - }, - "tap-parser": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", - "integrity": "sha512-uXKcosa0qoSjeh73dhmX+OpJvpigDxUciOhBcbGUKtmwzEFJjUT1Ql5dpg4M9I1UjXT9b+6n1W05FB8QmKossA==", - "dev": true, - "requires": { - "events-to-array": "^1.0.1", - "inherits": "~2.0.1", - "js-yaml": "^3.2.7", - "readable-stream": "^2" - }, - "dependencies": { - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "optional": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "optional": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "tap-xunit": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/tap-xunit/-/tap-xunit-2.4.1.tgz", - "integrity": "sha512-qcZStDtjjYjMKAo7QNiCtOW256g3tuSyCSe5kNJniG1Q2oeOExJq4vm8CwboHZURpkXAHvtqMl4TVL7mcbMVVA==", - "dev": true, - "requires": { - "duplexer": "~0.1.1", - "minimist": "~1.2.0", - "tap-parser": "~1.2.2", - "through2": "~2.0.0", - "xmlbuilder": "~4.2.0", - "xtend": "~4.0.0" - } - }, - "tar": { - "version": "6.1.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", - "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^4.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "dependencies": { - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "requires": { - "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "temp-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-3.0.0.tgz", - "integrity": "sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==", - "dev": true - }, - "tempy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tempy/-/tempy-3.0.0.tgz", - "integrity": "sha512-B2I9X7+o2wOaW4r/CWMkpOO9mdiTRCxXNgob6iGvPmfPWgH/KyUD6Uy5crtWBxIBe3YrNZKR2lSzv1JJKWD4vA==", - "dev": true, - "requires": { - "is-stream": "^3.0.0", - "temp-dir": "^2.0.0", - "type-fest": "^2.12.2", - "unique-string": "^3.0.0" - }, - "dependencies": { - "is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true - }, - "temp-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", - "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", - "dev": true - }, - "type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "dev": true - } - } - }, - "terser": { - "version": "5.16.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.3.tgz", - "integrity": "sha512-v8wWLaS/xt3nE9dgKEWhNUFP6q4kngO5B8eYFUuebsu7Dw/UNAnpUod6UHo04jSSkv8TzKHjZDSd7EXdDQAl8Q==", - "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - } - }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "time-zone": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", - "integrity": "sha512-TIsDdtKo6+XrPtiTm1ssmMngN1sAhyKnTO2kunQWqNPWIVvCm15Wmw4SWInwTVgJ5u/Tr04+8Ei9TNcw4x4ONA==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "requires": { - "is-number": "^7.0.0" - } - }, - "token-types": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.1.tgz", - "integrity": "sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==", - "dev": true, - "requires": { - "@tokenizer/token": "^0.3.0", - "ieee754": "^1.2.1" - } - }, - "trim-newlines": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.0.2.tgz", - "integrity": "sha512-GJtWyq9InR/2HRiLZgpIKv+ufIKrVrvjQWEj7PxAXNc5dwbNJkqhAUoAGgzRmULAnoOM5EIpveYd3J2VeSAIew==", - "dev": true - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "requires": { - "is-typedarray": "^1.0.0" - } - }, - "uc.micro": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", - "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" - }, - "underscore": { - "version": "1.13.6", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", - "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" - }, - "unique-filename": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", - "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", - "requires": { - "unique-slug": "^4.0.0" - } - }, - "unique-slug": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", - "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "unique-string": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-3.0.0.tgz", - "integrity": "sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==", - "dev": true, - "requires": { - "crypto-random-string": "^4.0.0" - } - }, - "update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", - "requires": { - "builtins": "^5.0.0" - } - }, - "well-known-symbols": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-2.0.0.tgz", - "integrity": "sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true - }, - "workerpool": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.3.1.tgz", - "integrity": "sha512-0x7gJm1rhpn5SPG9NENOxPtbfUZZtK/qOg6gEdSqeDBA3dTeR91RJqSPjccPRCkhNfrnnl/dWxSSj5w9CtdzNA==" - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "write-file-atomic": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.0.tgz", - "integrity": "sha512-R7NYMnHSlV42K54lwY9lvW6MnSm1HSJqZL3xiSgi9E7//FYaI74r2G0rd+/X6VAMkHEdzxQaU5HUOXWUz5kA/w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - } - }, - "xml2js": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", - "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "dependencies": { - "xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" - } - } - }, - "xmlbuilder": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-4.2.1.tgz", - "integrity": "sha512-oEePiEefhQhAeUnwRnIBLBWmk/fsWWbQ53EEWsRuzECbQ3m5o/Esmq6H47CYYwSLW+Ynt0rS9hd0pd2ogMAWjg==", - "dev": true, - "requires": { - "lodash": "^4.0.0" - } - }, - "xmlcreate": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz", - "integrity": "sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==" - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true - }, - "yargs": { - "version": "17.6.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", - "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", - "dev": true, - "requires": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "dependencies": { - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true - } - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true - } } } From 3f9eeed3715b32f9787467e371ee2b984761c148 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 7 Feb 2023 15:10:57 +0000 Subject: [PATCH 0833/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3b94d1c556e..c1b93547477 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -32,7 +32,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.1.1", + "ava": "^5.2.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", diff --git a/packages/project/package.json b/packages/project/package.json index dede1aa01b6..86f7163b1c5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,7 +139,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.1.1", + "ava": "^5.2.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", From 07c24ebe476e2ea6cdbf8dbcb0f9957a0eaf3c4a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 8 Feb 2023 14:29:17 +0000 Subject: [PATCH 0834/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-rc.5 to 3.0.0-rc.5 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-rc.5/CHANGELOG.md --- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c1b93547477..27e4d420276 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-rc.8", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-rc.3", + "@ui5/builder": "^3.0.0-rc.5", "@ui5/fs": "^3.0.0-rc.6", "@ui5/logger": "^3.0.1-rc.3", "ajv": "^6.12.6", diff --git a/packages/project/package.json b/packages/project/package.json index 86f7163b1c5..8b0e32aa7ed 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-rc.3", + "@ui5/builder": "^3.0.0-rc.5", "@ui5/fs": "^3.0.0-rc.6", "@ui5/logger": "^3.0.1-rc.3", "ajv": "^6.12.6", From 10fa7af24416ed8521ed2f900d3e84e7f1c1901c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 8 Feb 2023 15:59:23 +0100 Subject: [PATCH 0835/1272] [ui5-project][INTERNAL] Bump jsdoc from 3.6.11 to 4.0.0 (#508) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/project/package-lock.json | 48 ++++++++++++++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 44 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 27e4d420276..8762e92b78d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -47,7 +47,7 @@ "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.5", "js-beautify": "^1.14.7", - "jsdoc": "^3.6.11", + "jsdoc": "^4.0.0", "nyc": "^15.1.0", "open-cli": "^7.1.0", "sinon": "^15.0.1", @@ -1084,6 +1084,42 @@ "npm": ">= 8" } }, + "node_modules/@ui5/builder/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@ui5/builder/node_modules/jsdoc": { + "version": "3.6.11", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.11.tgz", + "integrity": "sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg==", + "dependencies": { + "@babel/parser": "^7.9.4", + "@types/markdown-it": "^12.2.3", + "bluebird": "^3.7.2", + "catharsis": "^0.9.0", + "escape-string-regexp": "^2.0.0", + "js2xmlparser": "^4.0.2", + "klaw": "^3.0.0", + "markdown-it": "^12.3.2", + "markdown-it-anchor": "^8.4.1", + "marked": "^4.0.10", + "mkdirp": "^1.0.4", + "requizzle": "^0.2.3", + "strip-json-comments": "^3.1.0", + "taffydb": "2.6.2", + "underscore": "~1.13.2" + }, + "bin": { + "jsdoc": "jsdoc.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/@ui5/fs": { "version": "3.0.0-rc.6", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.6.tgz", @@ -4795,11 +4831,13 @@ } }, "node_modules/jsdoc": { - "version": "3.6.11", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.11.tgz", - "integrity": "sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.0.tgz", + "integrity": "sha512-tzTgkklbWKrlaQL2+e3NNgLcZu3NaK2vsHRx7tyHQ+H5jcB9Gx0txSd2eJWlMC/xU1+7LQu4s58Ry0RkuaEQVg==", + "dev": true, "dependencies": { "@babel/parser": "^7.9.4", + "@jsdoc/salty": "^0.2.1", "@types/markdown-it": "^12.2.3", "bluebird": "^3.7.2", "catharsis": "^0.9.0", @@ -4812,7 +4850,6 @@ "mkdirp": "^1.0.4", "requizzle": "^0.2.3", "strip-json-comments": "^3.1.0", - "taffydb": "2.6.2", "underscore": "~1.13.2" }, "bin": { @@ -4835,6 +4872,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, "engines": { "node": ">=8" } diff --git a/packages/project/package.json b/packages/project/package.json index 8b0e32aa7ed..c3b791d9d16 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -154,7 +154,7 @@ "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.5", "js-beautify": "^1.14.7", - "jsdoc": "^3.6.11", + "jsdoc": "^4.0.0", "nyc": "^15.1.0", "open-cli": "^7.1.0", "sinon": "^15.0.1", From aefa7816c052e974feb395003551f07985270ff0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 8 Feb 2023 13:29:10 +0100 Subject: [PATCH 0836/1272] [ui5-project][INTERNAL] Schema: Allow metadata.name to be up to 80 characters long As discussed, raise the limit since we already encountered projects using more than 60 characters for their name. --- .../lib/validation/schema/specVersion/kind/extension.json | 2 +- .../lib/validation/schema/specVersion/kind/project.json | 2 +- packages/project/lib/validation/schema/ui5-workspace.json | 2 +- .../lib/validation/schema/specVersion/kind/extension.js | 2 +- .../schema/specVersion/kind/extension/project-shim.js | 6 +++--- .../schema/specVersion/kind/extension/server-middleware.js | 6 +++--- .../validation/schema/specVersion/kind/extension/task.js | 6 +++--- .../test/lib/validation/schema/specVersion/kind/project.js | 2 +- .../schema/specVersion/kind/project/application.js | 6 +++--- .../validation/schema/specVersion/kind/project/library.js | 6 +++--- .../validation/schema/specVersion/kind/project/module.js | 6 +++--- .../schema/specVersion/kind/project/theme-library.js | 6 +++--- .../project/test/lib/validation/schema/ui5-workspace.js | 6 +++--- 13 files changed, 29 insertions(+), 29 deletions(-) diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension.json b/packages/project/lib/validation/schema/specVersion/kind/extension.json index 637e49ad391..27bf6005c25 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension.json @@ -79,7 +79,7 @@ "name": { "type": "string", "minLength": 3, - "maxLength": 50, + "maxLength": 80, "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", "title": "Extension Name", "description": "Unique identifier for the extension, for example: ui5-task-fearless-rock", diff --git a/packages/project/lib/validation/schema/specVersion/kind/project.json b/packages/project/lib/validation/schema/specVersion/kind/project.json index f126c4e1f43..f42fa8a2b8e 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project.json @@ -101,7 +101,7 @@ "name": { "type": "string", "minLength": 3, - "maxLength": 50, + "maxLength": 80, "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", "title": "Project Name", "description": "Unique identifier for the project, for example: organization.product.project", diff --git a/packages/project/lib/validation/schema/ui5-workspace.json b/packages/project/lib/validation/schema/ui5-workspace.json index 37cb869274c..79f7719e0b9 100644 --- a/packages/project/lib/validation/schema/ui5-workspace.json +++ b/packages/project/lib/validation/schema/ui5-workspace.json @@ -28,7 +28,7 @@ "name": { "type": "string", "minLength": 3, - "maxLength": 50, + "maxLength": 80, "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", "title": "Workspace Name", "description": "Identifier for the workspace configuration. Workspaces named 'default' will be used automatically by UI5 Tooling", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension.js index 817e6c31b0d..8fefe5bbe0f 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension.js @@ -159,7 +159,7 @@ test("Legacy: Special characters in name (task)", async (t) => { "kind": "extension", "type": "task", "metadata": { - "name": "ä".repeat(51) + "name": "ä".repeat(81) }, "task": { "path": "task.js" diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js index 0812d16d447..daff1b0bb12 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js @@ -180,7 +180,7 @@ test.after.always((t) => { "kind": "extension", "type": "project-shim", "metadata": { - "name": "a".repeat(51) + "name": "a".repeat(81) }, "shims": {} }, [{ @@ -191,9 +191,9 @@ test.after.always((t) => { errors: [{ dataPath: "/metadata/name", keyword: "maxLength", - message: "should NOT be longer than 50 characters", + message: "should NOT be longer than 80 characters", params: { - limit: 50, + limit: 80, } }] }, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js index cc44d33bf2c..f887078eb52 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js @@ -102,7 +102,7 @@ test.after.always((t) => { "kind": "extension", "type": "server-middleware", "metadata": { - "name": "a".repeat(51) + "name": "a".repeat(81) }, "middleware": { "path": "/bar" @@ -115,9 +115,9 @@ test.after.always((t) => { errors: [{ dataPath: "/metadata/name", keyword: "maxLength", - message: "should NOT be longer than 50 characters", + message: "should NOT be longer than 80 characters", params: { - limit: 50, + limit: 80, } }] }, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js index 287277780e1..a9dfe9452ae 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js @@ -102,7 +102,7 @@ test.after.always((t) => { "kind": "extension", "type": "task", "metadata": { - "name": "a".repeat(51) + "name": "a".repeat(81) }, "task": { "path": "/bar" @@ -115,9 +115,9 @@ test.after.always((t) => { errors: [{ dataPath: "/metadata/name", keyword: "maxLength", - message: "should NOT be longer than 50 characters", + message: "should NOT be longer than 80 characters", params: { - limit: 50, + limit: 80, } }] }, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project.js b/packages/project/test/lib/validation/schema/specVersion/kind/project.js index 2c9c2290ae2..ba9d09ca579 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project.js @@ -201,7 +201,7 @@ test("Legacy: Special characters in name (application)", async (t) => { "specVersion": "2.0", "type": "application", "metadata": { - "name": "/".repeat(51) + "name": "/".repeat(81) } }); }); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index 36a0065ae0b..54cf855f5f6 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -990,7 +990,7 @@ test.after.always((t) => { "specVersion": specVersion, "type": "application", "metadata": { - "name": "a".repeat(51) + "name": "a".repeat(81) } }, [{ dataPath: "/metadata/name", @@ -1000,9 +1000,9 @@ test.after.always((t) => { errors: [{ dataPath: "/metadata/name", keyword: "maxLength", - message: "should NOT be longer than 50 characters", + message: "should NOT be longer than 80 characters", params: { - limit: 50, + limit: 80, }, }] }, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js index 5a3dc8b004e..59c3a96498d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js @@ -1163,7 +1163,7 @@ test.after.always((t) => { "specVersion": specVersion, "type": "library", "metadata": { - "name": "a".repeat(51) + "name": "a".repeat(81) } }, [{ dataPath: "/metadata/name", @@ -1173,9 +1173,9 @@ test.after.always((t) => { errors: [{ dataPath: "/metadata/name", keyword: "maxLength", - message: "should NOT be longer than 50 characters", + message: "should NOT be longer than 80 characters", params: { - limit: 50, + limit: 80, }, }] }, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js index 211c09c8c53..4c3b4715cfe 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js @@ -397,7 +397,7 @@ test.after.always((t) => { "specVersion": specVersion, "type": "module", "metadata": { - "name": "a".repeat(51) + "name": "a".repeat(81) } }, [{ dataPath: "/metadata/name", @@ -407,9 +407,9 @@ test.after.always((t) => { errors: [{ dataPath: "/metadata/name", keyword: "maxLength", - message: "should NOT be longer than 50 characters", + message: "should NOT be longer than 80 characters", params: { - limit: 50, + limit: 80, }, }] }, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js index cdd132803a9..fb0273e1cb2 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js @@ -396,7 +396,7 @@ test.after.always((t) => { "specVersion": specVersion, "type": "theme-library", "metadata": { - "name": "a".repeat(51) + "name": "a".repeat(81) } }, [{ dataPath: "/metadata/name", @@ -406,9 +406,9 @@ test.after.always((t) => { errors: [{ dataPath: "/metadata/name", keyword: "maxLength", - message: "should NOT be longer than 50 characters", + message: "should NOT be longer than 80 characters", params: { - limit: 50, + limit: 80, }, }] }, diff --git a/packages/project/test/lib/validation/schema/ui5-workspace.js b/packages/project/test/lib/validation/schema/ui5-workspace.js index 0eb092d41b6..1467d639ed8 100644 --- a/packages/project/test/lib/validation/schema/ui5-workspace.js +++ b/packages/project/test/lib/validation/schema/ui5-workspace.js @@ -226,7 +226,7 @@ test("Invalid metadata.name: Too long", async (t) => { { specVersion: "workspace/1.0", metadata: { - name: "b".repeat(51) + name: "b".repeat(81) }, dependencyManagement: { resolutions: [ @@ -246,9 +246,9 @@ test("Invalid metadata.name: Too long", async (t) => { { dataPath: "/metadata/name", keyword: "maxLength", - message: "should NOT be longer than 50 characters", + message: "should NOT be longer than 80 characters", params: { - limit: 50, + limit: 80, }, } ], From de6ad1ea26935bd6087f40934c0c7c4efe7ad475 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 8 Feb 2023 15:03:32 +0000 Subject: [PATCH 0837/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8762e92b78d..b96b145242f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1781,9 +1781,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001450", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001450.tgz", - "integrity": "sha512-qMBmvmQmFXaSxexkjjfMvD5rnDL0+m+dUMZKoDYsGG8iZN29RuYh9eRoMvKsT6uMAWlyUUGDEQGJJYjzCIO9ew==", + "version": "1.0.30001451", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001451.tgz", + "integrity": "sha512-XY7UbUpGRatZzoRft//5xOa69/1iGJRBlrieH6QYrkKLIFn3m7OVEJ81dSrKoy2BnKsdbX5cLrOispZNYo9v2w==", "dev": true, "funding": [ { @@ -2969,9 +2969,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.288", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.288.tgz", - "integrity": "sha512-8s9aJf3YiokIrR+HOQzNOGmEHFXVUQzXM/JaViVvKdCkNUjS+lEa/uT7xw3nDVG/IgfxiIwUGkwJ6AR1pTpYsQ==", + "version": "1.4.289", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.289.tgz", + "integrity": "sha512-relLdMfPBxqGCxy7Gyfm1HcbRPcFUJdlgnCPVgQ23sr1TvUrRJz0/QPoGP0+x41wOVSTN/Wi3w6YDgHiHJGOzg==", "dev": true }, "node_modules/emittery": { @@ -5757,9 +5757,9 @@ } }, "node_modules/minipass": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.2.tgz", - "integrity": "sha512-4Hbzei7ZyBp+1aw0874YWpKOubZd/jc53/XU+gkYry1QV+VvrbO8icLM5CUtm4F0hyXn85DXYKEMIS26gitD3A==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.3.tgz", + "integrity": "sha512-OW2r4sQ0sI+z5ckEt5c1Tri4xTgZwYDxpE54eqWlQloQRoWtXjqt9udJ5Z4dSv7wK+nfFI7FRXyCpBSft+gpFw==", "engines": { "node": ">=8" } @@ -6675,9 +6675,9 @@ } }, "node_modules/open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.1.tgz", + "integrity": "sha512-/4b7qZNhv6Uhd7jjnREh1NjnPxlTq+XNWPG88Ydkj5AILcA5m3ajvcg57pB24EQjKv0dK62XnDqk9c/hkIG5Kg==", "dev": true, "dependencies": { "define-lazy-prop": "^2.0.0", From ec3edada3da3ec85eab1ec08fe884d8437c0dd5d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 8 Feb 2023 15:11:50 +0000 Subject: [PATCH 0838/1272] [ui5-project]Release 3.0.0-rc.9 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index a8b3477cf8e..6e15037baa9 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.8...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.9...HEAD). + + +## [v3.0.0-rc.9] - 2023-02-08 +### Bug Fixes +- Validator contructor checks ([#567](https://github.com/SAP/ui5-project/issues/567)) [`292b454`](https://github.com/SAP/ui5-project/commit/292b4549143037d7a8e034ca0978d55e93f10d64) + ## [v3.0.0-rc.8] - 2023-02-03 @@ -434,6 +440,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.0-rc.9]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.8...v3.0.0-rc.9 [v3.0.0-rc.8]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.7...v3.0.0-rc.8 [v3.0.0-rc.7]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.6...v3.0.0-rc.7 [v3.0.0-rc.6]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.5...v3.0.0-rc.6 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b96b145242f..97f80edc658 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.8", + "version": "3.0.0-rc.9", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc.8", + "version": "3.0.0-rc.9", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.5", diff --git a/packages/project/package.json b/packages/project/package.json index c3b791d9d16..b0d03eeb643 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.8", + "version": "3.0.0-rc.9", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From e452dc9f56ce8e9ceb3c1c70add5d0e3c7db53fe Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 8 Feb 2023 16:09:02 +0000 Subject: [PATCH 0839/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-rc.5 to 3.0.0-rc.6 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0-rc.6/CHANGELOG.md --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 97f80edc658..6f0d895aee2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-rc.9", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-rc.5", + "@ui5/builder": "^3.0.0-rc.6", "@ui5/fs": "^3.0.0-rc.6", "@ui5/logger": "^3.0.1-rc.3", "ajv": "^6.12.6", @@ -1058,9 +1058,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-rc.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.5.tgz", - "integrity": "sha512-r5WMWJyB6DbA4PEksVPS2fEDSeXkGCPboQin3XY7Lnn92L+tyydqgPk1tivShZjw+mn+7q8+bMh+gFrluSupdw==", + "version": "3.0.0-rc.6", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.6.tgz", + "integrity": "sha512-6O4sSjwccr7nSjVTysAUnhIV+lAr5HyH9V6LF05w0cFvj6eUusgERLkrA4ilvmkvXrms88PckHW/QOJykeAmXQ==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", "@ui5/fs": "^3.0.0-rc.6", @@ -1075,7 +1075,7 @@ "pretty-data": "^0.40.0", "rimraf": "^4.1.2", "semver": "^7.3.8", - "terser": "^5.16.1", + "terser": "^5.16.3", "workerpool": "^6.3.1", "xml2js": "^0.4.23" }, diff --git a/packages/project/package.json b/packages/project/package.json index b0d03eeb643..473809b072c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-rc.5", + "@ui5/builder": "^3.0.0-rc.6", "@ui5/fs": "^3.0.0-rc.6", "@ui5/logger": "^3.0.1-rc.3", "ajv": "^6.12.6", From 66f806a06435cb9030b39ac97e81b565ebc2d0df Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 9 Feb 2023 13:55:18 +0000 Subject: [PATCH 0840/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.1-rc.3 to 3.0.0 Changelog of this version: https://github.com/SAP/ui5-logger/blob/v3.0.0/CHANGELOG.md --- packages/project/package-lock.json | 32 ++++++++++++++++++++++++++++-- packages/project/package.json | 2 +- 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6f0d895aee2..445232f472f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-rc.6", "@ui5/fs": "^3.0.0-rc.6", - "@ui5/logger": "^3.0.1-rc.3", + "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.2.0", @@ -1084,6 +1084,20 @@ "npm": ">= 8" } }, + "node_modules/@ui5/builder/node_modules/@ui5/logger": { + "version": "3.0.1-rc.3", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.3.tgz", + "integrity": "sha512-IQ7JIAvXkIqVDUvZRtS47xzF5jOhymiBQmx7xwqZTSpIi3EqrPvEpXEdDiB/dk+yAtBNW5Ms3eRC4RYtXpAqCw==", + "dependencies": { + "chalk": "^5.2.0", + "cli-progress": "^3.11.2", + "figures": "^5.0.0" + }, + "engines": { + "node": "^16.18.0 || >=18.12.0", + "npm": ">= 8" + } + }, "node_modules/@ui5/builder/node_modules/escape-string-regexp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", @@ -1140,7 +1154,7 @@ "npm": ">= 8" } }, - "node_modules/@ui5/logger": { + "node_modules/@ui5/fs/node_modules/@ui5/logger": { "version": "3.0.1-rc.3", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.3.tgz", "integrity": "sha512-IQ7JIAvXkIqVDUvZRtS47xzF5jOhymiBQmx7xwqZTSpIi3EqrPvEpXEdDiB/dk+yAtBNW5Ms3eRC4RYtXpAqCw==", @@ -1154,6 +1168,20 @@ "npm": ">= 8" } }, + "node_modules/@ui5/logger": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0.tgz", + "integrity": "sha512-Np9pHhr+dnyL2gDFwIx6c6Xy0yhtpBIqUQM9An8uLX/wIcRjIjBSQ/r16o3YgS9roY59I/uj5ZEbIa1cdS3Dzg==", + "dependencies": { + "chalk": "^5.2.0", + "cli-progress": "^3.11.2", + "figures": "^5.0.0" + }, + "engines": { + "node": "^16.18.0 || >=18.12.0", + "npm": ">= 8" + } + }, "node_modules/@vue/compiler-core": { "version": "3.2.47", "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.47.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 473809b072c..c57237be423 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,7 +118,7 @@ "dependencies": { "@ui5/builder": "^3.0.0-rc.6", "@ui5/fs": "^3.0.0-rc.6", - "@ui5/logger": "^3.0.1-rc.3", + "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.2.0", From ffa2ad081c98c2e7d2f4c5bfd5d57650ee6fc50c Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 9 Feb 2023 15:10:26 +0100 Subject: [PATCH 0841/1272] [ui5-project][INTERNAL] CHANGELOG.md: Consolidate V3 release (#566) --- packages/project/.chglog/CHANGELOG.tpl.md | 341 +++++++++++++++++++++- packages/project/package.json | 2 +- 2 files changed, 341 insertions(+), 2 deletions(-) diff --git a/packages/project/.chglog/CHANGELOG.tpl.md b/packages/project/.chglog/CHANGELOG.tpl.md index 1217c371b33..342cb4368df 100755 --- a/packages/project/.chglog/CHANGELOG.tpl.md +++ b/packages/project/.chglog/CHANGELOG.tpl.md @@ -33,10 +33,349 @@ A list of unreleased changes can be found [here]({{ .Info.RepositoryURL }}/compa {{ end -}} {{ end -}} +### Breaking Changes +- Implement Project Graph, build execution [`161f462`](https://github.com/SAP/ui5-project/commit/161f462cf6a9955337fff512007125128c6c39dd) +- Run 'generateThemeDesignerResources' only on framework libs [`e4bb108`](https://github.com/SAP/ui5-project/commit/e4bb1084df3e0ae906df27aba4a674d187ff8069) + +### BREAKING CHANGE +Support for older Node.js and npm releases has been dropped for all UI5 Tooling modules. +Only Node.js versions v16.18.0, v18.12.0 or higher as well as npm v8 or higher are supported. + +All packages have been transformed to ES Modules. Therefore modules are no longer provides a CommonJS exports. +If your project uses CommonJS, it needs to be converted to ESM or use a dynamic import for consuming UI5 Tooling modules. + +For more information see also: +- https://sap.github.io/ui5-tooling/updates/migrate-v3/ +- https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c + +- normalizer and projectTree APIs have been removed. Use generateProjectGraph instead +- Going forward only specification versions 2.0 and higher are supported + - In case a legacy specification version is detected, an automatic, transparent migration is attempted. +- Build: + - The "dev" build mode has been removed + - The task "generateVersionInfo" is no longer executed for application projects by default. You may enable it again using the includedTasks parameter + +### Features +- specVersion 3.0 ([#522](https://github.com/SAP/ui5-project/issues/522)) [`c5070e5`](https://github.com/SAP/ui5-project/commit/c5070e55d92ced4326cd7611caf3ec9a3da9e7ed) +- Introduce SpecificationVersion class ([#431](https://github.com/SAP/ui5-project/issues/431)) [`e57842b`](https://github.com/SAP/ui5-project/commit/e57842b06397a5b36e6373df97f7b7bb91f09741) +- **TaskRunner:** Provide taskName and logger instance to custom tasks [`36cd2d8`](https://github.com/SAP/ui5-project/commit/36cd2d83f9a6a92cbd28619d8a25c0ba3f732117) +- **TaskUtil:** Add resourceFactory API to v3 interface [`2e863cf`](https://github.com/SAP/ui5-project/commit/2e863cfaf9f8924d0c87fe9dfe01568c1fd979c8) +- **TaskUtil:** Add getProject/getDependencies API to interface [`51f2949`](https://github.com/SAP/ui5-project/commit/51f29493f57f094396776bb2686c8a74e8901a7f) + +### Bug Fixes +- **npm/Installer:** Do not wrap promise provided by rimraf v4 [`2d1ccda`](https://github.com/SAP/ui5-project/commit/2d1ccda54edd29dabadcb7bad9136bff09da8eac) +- **ProjectBuilder:** Fix verbose logging for already built projects [`f04ffd2`](https://github.com/SAP/ui5-project/commit/f04ffd2c0ab0270df697c20258474ff536811476) +- **ProjectBuilder:** Skip build for projects that do not require to be built [`ac5f1f8`](https://github.com/SAP/ui5-project/commit/ac5f1f891255b56597e51d121329f03786338d4a) +- **Specification:** Fix migration for legacy projects that are not applications or libraries [`d89d804`](https://github.com/SAP/ui5-project/commit/d89d8047519ca8f162dc7a225f138ae304871ecb) +- Fix build manifest creation [`b1459eb`](https://github.com/SAP/ui5-project/commit/b1459eb26aa8a4b18ad84a369c122c114d64b64b) + +### Dependency Updates +- Bump rimraf from 3.0.2 to 4.1.1 ([#550](https://github.com/SAP/ui5-project/issues/550)) [`99876ae`](https://github.com/SAP/ui5-project/commit/99876ae35e9d8f5c725e2e87bd3be37d7ed4363c) + + + +## [v2.6.0] - 2021-10-19 +### Bug Fixes +- **ui5Framework:** Skip processing of framework libs ([#424](https://github.com/SAP/ui5-project/issues/424)) [`539d953`](https://github.com/SAP/ui5-project/commit/539d9539a5d2aaa6d01c4f539e3c86d8269788f2) + +### Features +- specVersion 2.6 [`9bd921a`](https://github.com/SAP/ui5-project/commit/9bd921a05bd5c0d8b6c6d94a864e60e4e181ad63) + + + +## [v2.5.0] - 2021-07-23 +### Features +- specVersion 2.5 [`3008dac`](https://github.com/SAP/ui5-project/commit/3008dace09109ba0fac49f0ddfc79255038f192c) + + + +## [v2.4.0] - 2021-06-01 +### Features +- specVersion 2.4 [`69ffc6c`](https://github.com/SAP/ui5-project/commit/69ffc6c34e387bcaaaf7b703559181b78fd33d54) + + + +## [v2.3.1] - 2021-03-04 +### Bug Fixes +- **ui5Framework:** Don't access metadata of deduped projects [`0255f8f`](https://github.com/SAP/ui5-project/commit/0255f8f628281ecb3cbbdb50192d2d4721bccea2) + +### Dependency Updates +- Bump js-yaml from 3.14.1 to 4.0.0 ([#380](https://github.com/SAP/ui5-project/issues/380)) [`a862186`](https://github.com/SAP/ui5-project/commit/a86218657703a5b607ebd09f8f71dd7ea810c6be) + + + +## [v2.3.0] - 2021-02-09 +### Features +- specVersion 2.3 ([#388](https://github.com/SAP/ui5-project/issues/388)) [`3e28026`](https://github.com/SAP/ui5-project/commit/3e280267b60a9a72183d5ab0905d838b6fcfaf33) + + + +## [v2.2.6] - 2021-01-28 +### Bug Fixes +- **ui5Framework.Installer:** Ensure target directory does not exist before rename ([#390](https://github.com/SAP/ui5-project/issues/390)) [`f107cdf`](https://github.com/SAP/ui5-project/commit/f107cdf2b1703791c153009150a5e1713e123b73) + + + +## [v2.2.5] - 2021-01-26 +### Bug Fixes +- **ui5Framework.Installer:** Ensure atomic install process [`72568a9`](https://github.com/SAP/ui5-project/commit/72568a990620cee69ffaf2470c684a7ba02c200c) + + + +## [v2.2.4] - 2020-11-06 +### Performance Improvements +- Reduce install size by removing 'string.prototype.matchall' dependency [`b69d75e`](https://github.com/SAP/ui5-project/commit/b69d75e740bfc594668ea73273bb03fdd40a4ce2) +- **validator:** Lazy load dependencies [`609346b`](https://github.com/SAP/ui5-project/commit/609346b2b1bb0417fde36a35ec43e9970c68504f) + + + +## [v2.2.3] - 2020-10-22 +### Bug Fixes +- **Schema:** Add missing bundle section "name" [`ba2d601`](https://github.com/SAP/ui5-project/commit/ba2d6015b6a04af92edb8f1b779a229fe73b705a) + + + +## [v2.2.2] - 2020-09-15 +### Bug Fixes +- **ui5Framework.mergeTrees:** Do not abort merge if a project has already been processed [`264c353`](https://github.com/SAP/ui5-project/commit/264c353b6973bade57164aded4f10a668986482d) + + + +## [v2.2.1] - 2020-09-02 + + +## [v2.2.0] - 2020-08-11 +### Features +- specVersion 2.2 ([#341](https://github.com/SAP/ui5-project/issues/341)) [`f44d14e`](https://github.com/SAP/ui5-project/commit/f44d14e136a4163d59dd8fd8c0be0ea2b59930be) + + + +## [v2.1.5] - 2020-07-14 +### Bug Fixes +- **Node.js API:** TypeScript type definition support ([#335](https://github.com/SAP/ui5-project/issues/335)) [`c610305`](https://github.com/SAP/ui5-project/commit/c610305e8fb869461a8dd5ba876270c7f7b71a22) + + + +## [v2.1.4] - 2020-05-29 +### Bug Fixes +- **ui5Framework:** Allow providing exact prerelease versions ([#326](https://github.com/SAP/ui5-project/issues/326)) [`6ce985c`](https://github.com/SAP/ui5-project/commit/6ce985c8feab26e6a97ca4570b3931f507773666) + + + +## [v2.1.3] - 2020-05-14 + + +## [v2.1.2] - 2020-05-11 +### Bug Fixes +- **framework t8r:** Allow use of specVersion 2.1 [`961847d`](https://github.com/SAP/ui5-project/commit/961847d113e6f594526201ab9ecccb898d2497e2) + + + +## [v2.1.1] - 2020-05-11 +### Bug Fixes +- Allow the use of specVersion 2.1 for projects [`a42172f`](https://github.com/SAP/ui5-project/commit/a42172fc341666b8d9a9b6049c365b28c55c76f0) + + + +## [v2.1.0] - 2020-05-05 +### Features +- **specVersion 2.1:** Add support for "customConfiguration" ([#308](https://github.com/SAP/ui5-project/issues/308)) [`201aaab`](https://github.com/SAP/ui5-project/commit/201aaab6beb8ad86fefdf371ae20c971970f6547) + + + +## [v2.0.4] - 2020-04-30 +### Bug Fixes +- Workaround missing dependency info for OpenUI5 packages in version 1.77.x [`3dfb812`](https://github.com/SAP/ui5-project/commit/3dfb8126e347fd1e7f6cc87e20318298e19eaf70) +- Namespaces in API Reference (JSDoc) [`3174d9f`](https://github.com/SAP/ui5-project/commit/3174d9f21f471252d2a39b8cb085eeeb5debe0a6) + + + +## [v2.0.3] - 2020-04-02 +### Bug Fixes +- **Schema:** Add missing metadata properties [`16894e1`](https://github.com/SAP/ui5-project/commit/16894e11c5c21a77a405431dfaf5d8642accfc1d) +- **package.json:** Downgrade pacote from 11.1.4 to 9.5.12 [`c76fb49`](https://github.com/SAP/ui5-project/commit/c76fb49e64b5905a3cd592d94fc0076cecc909b5) + + + +## [v2.0.2] - 2020-04-01 +### Bug Fixes +- **ui5Framework t8r:** Resolve versionOverride string [`4fffabe`](https://github.com/SAP/ui5-project/commit/4fffabe2a417b1ea46a47546c6269ac0ffbc3931) + + + +## [v2.0.1] - 2020-04-01 +### Bug Fixes +- **ui5Framework.mergeTrees:** Do not process the same project multiple times [`1377ec2`](https://github.com/SAP/ui5-project/commit/1377ec2ecea71a2470a9ea9b1e0698e466154838) + + + +## [v2.0.0] - 2020-03-31 +### Breaking Changes +- Require Node.js >= 10 [`f21e704`](https://github.com/SAP/ui5-project/commit/f21e704f85297e3fa774c59bf5d4e8282b947b41) + +### Features +- Add Configuration Schema ([#274](https://github.com/SAP/ui5-project/issues/274)) [`eb961c3`](https://github.com/SAP/ui5-project/commit/eb961c3377d42d3c93f7b7db5033f4e6716ddc71) +- Support for spec version 2.0 ([#277](https://github.com/SAP/ui5-project/issues/277)) [`770a56f`](https://github.com/SAP/ui5-project/commit/770a56feed331a3157c9f9fad486a4674dc12c87) +- Add ui5Framework translator and resolvers ([#265](https://github.com/SAP/ui5-project/issues/265)) [`5183e5c`](https://github.com/SAP/ui5-project/commit/5183e5cf99ac8cae6e4ccc8030d94214bce0563c) +- **projectPreprocessor:** Log warning when using a deprecated or restricted dependency ([#268](https://github.com/SAP/ui5-project/issues/268)) [`b776a4f`](https://github.com/SAP/ui5-project/commit/b776a4fcc4604f3ecb0d3fc1e6418ed190c11756) + +### BREAKING CHANGE + +Support for older Node.js releases has been dropped. +Only Node.js v10 or higher is supported. + + + +## [v1.2.0] - 2020-01-13 +### Features +- Add specification version 1.1 ([#252](https://github.com/SAP/ui5-project/issues/252)) [`5a83308`](https://github.com/SAP/ui5-project/commit/5a833086ccd415c5557c2bc3bbb705c18ac54314) + + + +## [v1.1.1] - 2019-11-07 + + +## [v1.1.0] - 2019-07-11 +### Features +- **projectPreprocessor:** Add handling for server-middleware extensions [`2ce964c`](https://github.com/SAP/ui5-project/commit/2ce964cd9feb6c1da39cd783ad45e0030c46b81a) + + + +## [v1.0.3] - 2019-06-25 +### Bug Fixes +- **projectPreprocessor:** Do not remove already removed dependencies ([#189](https://github.com/SAP/ui5-project/issues/189)) [`4600d63`](https://github.com/SAP/ui5-project/commit/4600d63cf323d3e143072c6c3416b5a48e90bb71) + + + +## [v1.0.2] - 2019-04-12 +### Bug Fixes +- **ProjectPreprocessor:** Fix dependency resolution [`0671a8b`](https://github.com/SAP/ui5-project/commit/0671a8bf2de9ca24823df6f041a77e7c8e46f6f0) + +### Dependency Updates +- Bump [@ui5](https://github.com/ui5)/builder from 1.0.2 to 1.0.3 ([#154](https://github.com/SAP/ui5-project/issues/154)) [`cf86764`](https://github.com/SAP/ui5-project/commit/cf867643b8b621019a5d5b0f5d3117ebcdd1cd44) + + + +## [v1.0.1] - 2019-02-14 +### Bug Fixes +- **npm translator:** Remove deduped optional dependencies from tree [`3481154`](https://github.com/SAP/ui5-project/commit/348115426f03bd3a5bb823ac54a6b15475a84657) + +### Dependency Updates +- Bump [@ui5](https://github.com/ui5)/builder from 1.0.0 to 1.0.1 ([#113](https://github.com/SAP/ui5-project/issues/113)) [`96a3d6a`](https://github.com/SAP/ui5-project/commit/96a3d6a2a54cb1eab190ba89f9da686e8aae2d84) + + + +## [v1.0.0] - 2019-01-10 +### Breaking Changes +- **normalizer:** Rename optional parameter "translator" [`92321e0`](https://github.com/SAP/ui5-project/commit/92321e08e43175611b8417047fc957792d539b10) + +### Dependency Updates +- Bump [@ui5](https://github.com/ui5)/builder from 0.2.9 to 1.0.0 ([#99](https://github.com/SAP/ui5-project/issues/99)) [`7dd5d5c`](https://github.com/SAP/ui5-project/commit/7dd5d5cda909e3a109821315cc5a5a80f05cd5d3) +- Bump [@ui5](https://github.com/ui5)/logger from 0.2.2 to 1.0.0 ([#98](https://github.com/SAP/ui5-project/issues/98)) [`8068a76`](https://github.com/SAP/ui5-project/commit/8068a76dc43701f5c8b0467933a83d777ccdee01) + +### Features +- Add specification version 1.0 [`b0c02f6`](https://github.com/SAP/ui5-project/commit/b0c02f67296f6251a7ef4fe5c61146bb169a6705) + +### BREAKING CHANGE + +Renamed parameter "translator" of functions generateDependencyTree and generateProjectTree to "translatorName" + + + +## [v0.2.5] - 2018-12-19 +### Bug Fixes +- **npm translator:** Deduplicate subtrees of pending dependencies [`7e55ae3`](https://github.com/SAP/ui5-project/commit/7e55ae3d88280746f5800bffc7bbd13e1495ba07) +- **npm translator:** Fix handling of indirect dependency cycles [`c99d6d3`](https://github.com/SAP/ui5-project/commit/c99d6d3a19fbb6c197b449dfd6cb8acc48837dba) + + + +## [v0.2.4] - 2018-12-17 +### Bug Fixes +- **npm t8r:** Add deduplication of npm dependencies [`2717088`](https://github.com/SAP/ui5-project/commit/2717088532d415b6922f290b58d9227b946a965f) +- **projectPreprocessor:** Ignore deduped modules [`84f7b25`](https://github.com/SAP/ui5-project/commit/84f7b25a9e45df3bc55a7957e4f61db580e68509) + + + +## [v0.2.3] - 2018-11-20 +### Bug Fixes +- **npm t8r:** Again, handle npm optionalDependencies correctly [`9fd78dc`](https://github.com/SAP/ui5-project/commit/9fd78dca4d836f9a37036fd151a78e9295b28aa1) + + + +## [v0.2.2] - 2018-11-17 +### Bug Fixes +- **npm t8r:** Handle npm optionalDependencies correctly [`da707d7`](https://github.com/SAP/ui5-project/commit/da707d73b5c75b489e2e499de2b4f54924018844) + +### Features +- **projectPreprocessor:** Add handling for task extensions [`0722865`](https://github.com/SAP/ui5-project/commit/072286591ae3b20cca8e418030c3f2bc048352c5) +- **projectPreprocessor:** Allow application project dependency on non-root level [`b8a59d5`](https://github.com/SAP/ui5-project/commit/b8a59d56c8b5cf4c330fe99cb2162c1701aa51ca) + + + +## [v0.2.1] - 2018-10-29 +### Features +- Add shim extension [`93c9b39`](https://github.com/SAP/ui5-project/commit/93c9b3960ca36f240c5f8453a89f72792a01fe92) +- Add "extension" projects [`476b785`](https://github.com/SAP/ui5-project/commit/476b785810d6993d2a3e21707ffa67e568e67eac) + + + +## [v0.2.0] - 2018-07-11 + + +## [v0.1.0] - 2018-06-26 +### Bug Fixes +- Fix some typos in log messages ([#17](https://github.com/SAP/ui5-project/issues/17)) [`1f2f2fd`](https://github.com/SAP/ui5-project/commit/1f2f2fd164abaf449cc5e7d94ec792f469710207) +- **npm translator:** Fix endless loop in case of dependency cycles ([#15](https://github.com/SAP/ui5-project/issues/15)) [`cf31112`](https://github.com/SAP/ui5-project/commit/cf3111288278e8dd36a09b549bd2b254e86af041) + + + +## v0.0.1 - 2018-06-06 +### Bug Fixes +- **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) + + {{- if .Versions }} {{ range .Versions -}} -{{ if .Tag.Previous -}} +{{ if and .Tag.Previous (ne .Tag.Name "v3.0.0") -}} [{{ .Tag.Name }}]: {{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }} {{ end -}} {{ end -}} {{ end -}} +[v3.0.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0 +[v2.6.0]: https://github.com/SAP/ui5-project/compare/v2.5.0...v2.6.0 +[v2.5.0]: https://github.com/SAP/ui5-project/compare/v2.4.0...v2.5.0 +[v2.4.0]: https://github.com/SAP/ui5-project/compare/v2.3.1...v2.4.0 +[v2.3.1]: https://github.com/SAP/ui5-project/compare/v2.3.0...v2.3.1 +[v2.3.0]: https://github.com/SAP/ui5-project/compare/v2.2.6...v2.3.0 +[v2.2.6]: https://github.com/SAP/ui5-project/compare/v2.2.5...v2.2.6 +[v2.2.5]: https://github.com/SAP/ui5-project/compare/v2.2.4...v2.2.5 +[v2.2.4]: https://github.com/SAP/ui5-project/compare/v2.2.3...v2.2.4 +[v2.2.3]: https://github.com/SAP/ui5-project/compare/v2.2.2...v2.2.3 +[v2.2.2]: https://github.com/SAP/ui5-project/compare/v2.2.1...v2.2.2 +[v2.2.1]: https://github.com/SAP/ui5-project/compare/v2.2.0...v2.2.1 +[v2.2.0]: https://github.com/SAP/ui5-project/compare/v2.1.5...v2.2.0 +[v2.1.5]: https://github.com/SAP/ui5-project/compare/v2.1.4...v2.1.5 +[v2.1.4]: https://github.com/SAP/ui5-project/compare/v2.1.3...v2.1.4 +[v2.1.3]: https://github.com/SAP/ui5-project/compare/v2.1.2...v2.1.3 +[v2.1.2]: https://github.com/SAP/ui5-project/compare/v2.1.1...v2.1.2 +[v2.1.1]: https://github.com/SAP/ui5-project/compare/v2.1.0...v2.1.1 +[v2.1.0]: https://github.com/SAP/ui5-project/compare/v2.0.4...v2.1.0 +[v2.0.4]: https://github.com/SAP/ui5-project/compare/v2.0.3...v2.0.4 +[v2.0.3]: https://github.com/SAP/ui5-project/compare/v2.0.2...v2.0.3 +[v2.0.2]: https://github.com/SAP/ui5-project/compare/v2.0.1...v2.0.2 +[v2.0.1]: https://github.com/SAP/ui5-project/compare/v2.0.0...v2.0.1 +[v2.0.0]: https://github.com/SAP/ui5-project/compare/v1.2.0...v2.0.0 +[v1.2.0]: https://github.com/SAP/ui5-project/compare/v1.1.1...v1.2.0 +[v1.1.1]: https://github.com/SAP/ui5-project/compare/v1.1.0...v1.1.1 +[v1.1.0]: https://github.com/SAP/ui5-project/compare/v1.0.3...v1.1.0 +[v1.0.3]: https://github.com/SAP/ui5-project/compare/v1.0.2...v1.0.3 +[v1.0.2]: https://github.com/SAP/ui5-project/compare/v1.0.1...v1.0.2 +[v1.0.1]: https://github.com/SAP/ui5-project/compare/v1.0.0...v1.0.1 +[v1.0.0]: https://github.com/SAP/ui5-project/compare/v0.2.5...v1.0.0 +[v0.2.5]: https://github.com/SAP/ui5-project/compare/v0.2.4...v0.2.5 +[v0.2.4]: https://github.com/SAP/ui5-project/compare/v0.2.3...v0.2.4 +[v0.2.3]: https://github.com/SAP/ui5-project/compare/v0.2.2...v0.2.3 +[v0.2.2]: https://github.com/SAP/ui5-project/compare/v0.2.1...v0.2.2 +[v0.2.1]: https://github.com/SAP/ui5-project/compare/v0.2.0...v0.2.1 +[v0.2.0]: https://github.com/SAP/ui5-project/compare/v0.1.0...v0.2.0 +[v0.1.0]: https://github.com/SAP/ui5-project/compare/v0.0.1...v0.1.0 diff --git a/packages/project/package.json b/packages/project/package.json index c57237be423..35b924f3942 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -48,7 +48,7 @@ "jsdoc-generate": "jsdoc -c ./jsdoc.json -t $(node -p 'path.dirname(require.resolve(\"docdash\"))') ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", "jsdoc-watch": "npm run jsdoc && chokidar \"./lib/**/*.js\" -c \"npm run jsdoc-generate\"", "preversion": "npm test", - "version": "git-chglog --sort semver --next-tag v$npm_package_version -o CHANGELOG.md && git add CHANGELOG.md", + "version": "git-chglog --sort semver --next-tag v$npm_package_version -o CHANGELOG.md v3.0.0.. && git add CHANGELOG.md", "postversion": "git push --follow-tags", "release-note": "git-chglog --sort semver -c .chglog/release-config.yml v$npm_package_version", "depcheck": "depcheck --ignores @ui5/project,docdash,@istanbuljs/esm-loader-hook" From cb13a13ecd1bf4e8e20dc79c428d799b5ae8a3f5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 9 Feb 2023 14:24:06 +0000 Subject: [PATCH 0842/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0-rc.6 to 3.0.0 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.0/CHANGELOG.md --- packages/project/package-lock.json | 24 +++++------------------- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 20 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 445232f472f..02c44b29983 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0-rc.6", - "@ui5/fs": "^3.0.0-rc.6", + "@ui5/fs": "^3.0.0", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1135,11 +1135,11 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0-rc.6", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0-rc.6.tgz", - "integrity": "sha512-WrvbtiGN841MdgafefftKqV1ZUB2AmKmcKBwNEVmB+5nYKzf4xPUmRf+QU+suD+m0tVbJo07o1bJ+j8xnxcdtA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0.tgz", + "integrity": "sha512-ovf+lPYQSxHQpiL6cOxRZI39yCBTqRadPYkLY003NXVKDlTKeJoVdCFeuOcwt7vDLKDMCR0/10YPZZ3vecel3A==", "dependencies": { - "@ui5/logger": "^3.0.1-rc.3", + "@ui5/logger": "^3.0.0", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", "globby": "^13.1.3", @@ -1154,20 +1154,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/fs/node_modules/@ui5/logger": { - "version": "3.0.1-rc.3", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.3.tgz", - "integrity": "sha512-IQ7JIAvXkIqVDUvZRtS47xzF5jOhymiBQmx7xwqZTSpIi3EqrPvEpXEdDiB/dk+yAtBNW5Ms3eRC4RYtXpAqCw==", - "dependencies": { - "chalk": "^5.2.0", - "cli-progress": "^3.11.2", - "figures": "^5.0.0" - }, - "engines": { - "node": "^16.18.0 || >=18.12.0", - "npm": ">= 8" - } - }, "node_modules/@ui5/logger": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 35b924f3942..58642862ee9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0-rc.6", - "@ui5/fs": "^3.0.0-rc.6", + "@ui5/fs": "^3.0.0", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 5153d41bc4c6a15a0f166a822fbd3b89c07e0271 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 9 Feb 2023 14:34:48 +0000 Subject: [PATCH 0843/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0-rc.6 to 3.0.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.0/CHANGELOG.md --- packages/project/package-lock.json | 72 +++--------------------------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 66 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 02c44b29983..5f219f90488 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0-rc.9", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0-rc.6", + "@ui5/builder": "^3.0.0", "@ui5/fs": "^3.0.0", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -731,7 +731,6 @@ "version": "0.2.3", "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.3.tgz", "integrity": "sha512-bbtCxCkxcnWhi50I+4Lj6mdz9w3pOXOgEQrID8TCZ/DF51fW7M9GCQW2y45SpBDdHd1Eirm1X/Cf6CkAAe8HPg==", - "dev": true, "dependencies": { "lodash": "^4.17.21" }, @@ -1058,19 +1057,19 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0-rc.6", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0-rc.6.tgz", - "integrity": "sha512-6O4sSjwccr7nSjVTysAUnhIV+lAr5HyH9V6LF05w0cFvj6eUusgERLkrA4ilvmkvXrms88PckHW/QOJykeAmXQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0.tgz", + "integrity": "sha512-UF+busx2S6aH2oY1nwjIXPxYn8RYMyT1AxrQQhCDs1E6jDRs4fA3RgGdjKlxvc+uGqOd5H/1sjzCIffm5WGmUg==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0-rc.6", - "@ui5/logger": "^3.0.1-rc.3", + "@ui5/fs": "^3.0.0", + "@ui5/logger": "^3.0.0", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", "espree": "^9.4.1", "graceful-fs": "^4.2.10", - "jsdoc": "^3.6.11", + "jsdoc": "^4.0.0", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", "rimraf": "^4.1.2", @@ -1084,56 +1083,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/builder/node_modules/@ui5/logger": { - "version": "3.0.1-rc.3", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.1-rc.3.tgz", - "integrity": "sha512-IQ7JIAvXkIqVDUvZRtS47xzF5jOhymiBQmx7xwqZTSpIi3EqrPvEpXEdDiB/dk+yAtBNW5Ms3eRC4RYtXpAqCw==", - "dependencies": { - "chalk": "^5.2.0", - "cli-progress": "^3.11.2", - "figures": "^5.0.0" - }, - "engines": { - "node": "^16.18.0 || >=18.12.0", - "npm": ">= 8" - } - }, - "node_modules/@ui5/builder/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@ui5/builder/node_modules/jsdoc": { - "version": "3.6.11", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.11.tgz", - "integrity": "sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg==", - "dependencies": { - "@babel/parser": "^7.9.4", - "@types/markdown-it": "^12.2.3", - "bluebird": "^3.7.2", - "catharsis": "^0.9.0", - "escape-string-regexp": "^2.0.0", - "js2xmlparser": "^4.0.2", - "klaw": "^3.0.0", - "markdown-it": "^12.3.2", - "markdown-it-anchor": "^8.4.1", - "marked": "^4.0.10", - "mkdirp": "^1.0.4", - "requizzle": "^0.2.3", - "strip-json-comments": "^3.1.0", - "taffydb": "2.6.2", - "underscore": "~1.13.2" - }, - "bin": { - "jsdoc": "jsdoc.js" - }, - "engines": { - "node": ">=12.0.0" - } - }, "node_modules/@ui5/fs": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0.tgz", @@ -4848,7 +4797,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.0.tgz", "integrity": "sha512-tzTgkklbWKrlaQL2+e3NNgLcZu3NaK2vsHRx7tyHQ+H5jcB9Gx0txSd2eJWlMC/xU1+7LQu4s58Ry0RkuaEQVg==", - "dev": true, "dependencies": { "@babel/parser": "^7.9.4", "@jsdoc/salty": "^0.2.1", @@ -4886,7 +4834,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true, "engines": { "node": ">=8" } @@ -8391,11 +8338,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/taffydb": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA==" - }, "node_modules/tap-parser": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 58642862ee9..9594f822c28 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0-rc.6", + "@ui5/builder": "^3.0.0", "@ui5/fs": "^3.0.0", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From c951d4140deb878942664936c4a152544a3757ba Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 9 Feb 2023 14:47:13 +0000 Subject: [PATCH 0844/1272] [ui5-project]Release 3.0.0 --- packages/project/CHANGELOG.md | 206 ++++------------------------- packages/project/package-lock.json | 4 +- packages/project/package.json | 2 +- 3 files changed, 26 insertions(+), 186 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 6e15037baa9..2499c69d5e2 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,182 +2,49 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0-rc.9...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0...HEAD). - -## [v3.0.0-rc.9] - 2023-02-08 -### Bug Fixes -- Validator contructor checks ([#567](https://github.com/SAP/ui5-project/issues/567)) [`292b454`](https://github.com/SAP/ui5-project/commit/292b4549143037d7a8e034ca0978d55e93f10d64) - - - -## [v3.0.0-rc.8] - 2023-02-03 + +## [v3.0.0] - 2023-02-09 ### Breaking Changes -- **Schema:** Restrict metadata.name for specVersion >= 3.0 ([#552](https://github.com/SAP/ui5-project/issues/552)) [`d0ea703`](https://github.com/SAP/ui5-project/commit/d0ea703e8b7e74079fba48b62045608d4d49ab3b) - -### Bug Fixes -- **Registry:** Do not use custom logger for pacote [`242601f`](https://github.com/SAP/ui5-project/commit/242601f5c0c63c0d51cf086089101df30dcf017e) - -### Features -- Add 'UI5 Workspace' Support ([#494](https://github.com/SAP/ui5-project/issues/494)) [`b77ca2f`](https://github.com/SAP/ui5-project/commit/b77ca2f02a96fa7fba5c4c565551aca8c1e11847) +- Implement Project Graph, build execution [`161f462`](https://github.com/SAP/ui5-project/commit/161f462cf6a9955337fff512007125128c6c39dd) +- Run 'generateThemeDesignerResources' only on framework libs [`e4bb108`](https://github.com/SAP/ui5-project/commit/e4bb1084df3e0ae906df27aba4a674d187ff8069) ### BREAKING CHANGE +Support for older Node.js and npm releases has been dropped for all UI5 Tooling modules. +Only Node.js versions v16.18.0, v18.12.0 or higher as well as npm v8 or higher are supported. -For projects and extensions defining specVersion 3.0 and later, the -metadata.name property must satisfy the following conditions: - -* Must be at least 3 characters long -* Must be no longer than 50 characters -* Must contain lowercase characters only -* Must contain alphanumeric characters, dash, underscore and period only - - Exception: `@` and `/` are allowed at certain positions as - explained below -* Must start with an alphabetic character or an `@`-character -* If a name starts with an `@`-character, it must contain exactly one - forward-slash `/` - - This is aligned with the npm concept for package scopes - - - -## [v3.0.0-rc.7] - 2023-01-25 -### Bug Fixes -- **npm/Installer:** Do not wrap promise provided by rimraf v4 [`2d1ccda`](https://github.com/SAP/ui5-project/commit/2d1ccda54edd29dabadcb7bad9136bff09da8eac) - - - -## [v3.0.0-rc.6] - 2023-01-24 - - -## [v3.0.0-rc.5] - 2023-01-24 - - -## [v3.0.0-rc.4] - 2023-01-23 -### Dependency Updates -- Bump rimraf from 3.0.2 to 4.1.1 ([#550](https://github.com/SAP/ui5-project/issues/550)) [`99876ae`](https://github.com/SAP/ui5-project/commit/99876ae35e9d8f5c725e2e87bd3be37d7ed4363c) - - - -## [v3.0.0-rc.3] - 2023-01-19 - - -## [v3.0.0-rc.2] - 2023-01-11 -### Breaking Changes -- Run 'generateThemeDesignerResources' only on framework libs [`e4bb108`](https://github.com/SAP/ui5-project/commit/e4bb1084df3e0ae906df27aba4a674d187ff8069) - +All packages have been transformed to ES Modules. Therefore modules are no longer provides a CommonJS exports. +If your project uses CommonJS, it needs to be converted to ESM or use a dynamic import for consuming UI5 Tooling modules. - -## [v3.0.0-rc.1] - 2023-01-04 +For more information see also: +- https://sap.github.io/ui5-tooling/updates/migrate-v3/ +- https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c - -## [v3.0.0-rc.0] - 2022-12-23 +- normalizer and projectTree APIs have been removed. Use generateProjectGraph instead +- Going forward only specification versions 2.0 and higher are supported + - In case a legacy specification version is detected, an automatic, transparent migration is attempted. +- Build: + - The "dev" build mode has been removed + - The task "generateVersionInfo" is no longer executed for application projects by default. You may enable it again using the includedTasks parameter - -## [v3.0.0-beta.5] - 2022-12-23 ### Features - specVersion 3.0 ([#522](https://github.com/SAP/ui5-project/issues/522)) [`c5070e5`](https://github.com/SAP/ui5-project/commit/c5070e55d92ced4326cd7611caf3ec9a3da9e7ed) - - - -## [v3.0.0-beta.4] - 2022-11-30 - - -## [v3.0.0-beta.3] - 2022-11-28 -### Features - Introduce SpecificationVersion class ([#431](https://github.com/SAP/ui5-project/issues/431)) [`e57842b`](https://github.com/SAP/ui5-project/commit/e57842b06397a5b36e6373df97f7b7bb91f09741) - **TaskRunner:** Provide taskName and logger instance to custom tasks [`36cd2d8`](https://github.com/SAP/ui5-project/commit/36cd2d83f9a6a92cbd28619d8a25c0ba3f732117) - **TaskUtil:** Add resourceFactory API to v3 interface [`2e863cf`](https://github.com/SAP/ui5-project/commit/2e863cfaf9f8924d0c87fe9dfe01568c1fd979c8) - **TaskUtil:** Add getProject/getDependencies API to interface [`51f2949`](https://github.com/SAP/ui5-project/commit/51f29493f57f094396776bb2686c8a74e8901a7f) - - -## [v3.0.0-beta.2] - 2022-11-11 - - -## [v3.0.0-beta.1] - 2022-11-07 - - -## [v3.0.0-alpha.10] - 2022-10-24 -### Breaking Changes -- Transform to native ESM ([#472](https://github.com/SAP/ui5-project/issues/472)) [`1945f2e`](https://github.com/SAP/ui5-project/commit/1945f2ec8a011260c23d77d197e885420c31aaef) - -### BREAKING CHANGE - -This package has been transformed to native ESM. Therefore it no longer provides a CommonJS export. -If your project uses CommonJS, it needs to be converted to ESM or use a dynamic import. - -For more information see also: -- https://sap.github.io/ui5-tooling/updates/migrate-v3/ -- https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c - - - -## [v3.0.0-alpha.9] - 2022-08-10 ### Bug Fixes +- **npm/Installer:** Do not wrap promise provided by rimraf v4 [`2d1ccda`](https://github.com/SAP/ui5-project/commit/2d1ccda54edd29dabadcb7bad9136bff09da8eac) - **ProjectBuilder:** Fix verbose logging for already built projects [`f04ffd2`](https://github.com/SAP/ui5-project/commit/f04ffd2c0ab0270df697c20258474ff536811476) - - - -## [v3.0.0-alpha.8] - 2022-08-09 -### Bug Fixes -- **Specification:** Fix migration for legacy projects that are not applications or libraries [`d89d804`](https://github.com/SAP/ui5-project/commit/d89d8047519ca8f162dc7a225f138ae304871ecb) - - - -## [v3.0.0-alpha.7] - 2022-07-27 - - -## [v3.0.0-alpha.6] - 2022-07-27 -### Bug Fixes - **ProjectBuilder:** Skip build for projects that do not require to be built [`ac5f1f8`](https://github.com/SAP/ui5-project/commit/ac5f1f891255b56597e51d121329f03786338d4a) - - - -## [v3.0.0-alpha.5] - 2022-07-26 -### Bug Fixes +- **Specification:** Fix migration for legacy projects that are not applications or libraries [`d89d804`](https://github.com/SAP/ui5-project/commit/d89d8047519ca8f162dc7a225f138ae304871ecb) - Fix build manifest creation [`b1459eb`](https://github.com/SAP/ui5-project/commit/b1459eb26aa8a4b18ad84a369c122c114d64b64b) +### Dependency Updates +- Bump rimraf from 3.0.2 to 4.1.1 ([#550](https://github.com/SAP/ui5-project/issues/550)) [`99876ae`](https://github.com/SAP/ui5-project/commit/99876ae35e9d8f5c725e2e87bd3be37d7ed4363c) - -## [v3.0.0-alpha.4] - 2022-07-15 -### Reverts -- [INTERNAL] Lower coverage thresholds - - - -## [v3.0.0-alpha.3] - 2022-06-14 -### Breaking Changes -- Implement Project Graph, build execution [`161f462`](https://github.com/SAP/ui5-project/commit/161f462cf6a9955337fff512007125128c6c39dd) - -### BREAKING CHANGE - -* normalizer and projectTree APIs have been removed. Use -generateProjectGraph instead -* Going forward only specification versions 2.0 and higher are supported - * In case a legacy specification version is detected, an automatic, - transparent migration is attempted. -* Build: - * The "dev" build mode has been removed - * The task "generateVersionInfo" is no longer executed for - application projects by default. You may enable it again using the - includedTasks parameter - - - -## [v3.0.0-alpha.2] - 2022-04-26 - - -## [v3.0.0-alpha.1] - 2022-01-25 -### Breaking Changes -- Require Node.js >= 16.13.2 / npm >= 8 [`5e4dbff`](https://github.com/SAP/ui5-project/commit/5e4dbffcac6d3c8244b3e8fafcb5a219eeebe15d) - -### BREAKING CHANGE - -Support for older Node.js and npm releases has been dropped. -Only Node.js v16.13.2 and npm v8 or higher are supported. - - - -## [v3.0.0-alpha.0] - 2021-12-14 ## [v2.6.0] - 2021-10-19 @@ -438,34 +305,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) - - -[v3.0.0-rc.9]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.8...v3.0.0-rc.9 -[v3.0.0-rc.8]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.7...v3.0.0-rc.8 -[v3.0.0-rc.7]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.6...v3.0.0-rc.7 -[v3.0.0-rc.6]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.5...v3.0.0-rc.6 -[v3.0.0-rc.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.4...v3.0.0-rc.5 -[v3.0.0-rc.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.3...v3.0.0-rc.4 -[v3.0.0-rc.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.2...v3.0.0-rc.3 -[v3.0.0-rc.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.1...v3.0.0-rc.2 -[v3.0.0-rc.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-rc.0...v3.0.0-rc.1 -[v3.0.0-rc.0]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.5...v3.0.0-rc.0 -[v3.0.0-beta.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.4...v3.0.0-beta.5 -[v3.0.0-beta.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.3...v3.0.0-beta.4 -[v3.0.0-beta.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.2...v3.0.0-beta.3 -[v3.0.0-beta.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-beta.1...v3.0.0-beta.2 -[v3.0.0-beta.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.10...v3.0.0-beta.1 -[v3.0.0-alpha.10]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.9...v3.0.0-alpha.10 -[v3.0.0-alpha.9]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.8...v3.0.0-alpha.9 -[v3.0.0-alpha.8]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.7...v3.0.0-alpha.8 -[v3.0.0-alpha.7]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.6...v3.0.0-alpha.7 -[v3.0.0-alpha.6]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.5...v3.0.0-alpha.6 -[v3.0.0-alpha.5]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.4...v3.0.0-alpha.5 -[v3.0.0-alpha.4]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.3...v3.0.0-alpha.4 -[v3.0.0-alpha.3]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.2...v3.0.0-alpha.3 -[v3.0.0-alpha.2]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.1...v3.0.0-alpha.2 -[v3.0.0-alpha.1]: https://github.com/SAP/ui5-project/compare/v3.0.0-alpha.0...v3.0.0-alpha.1 -[v3.0.0-alpha.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0-alpha.0 +[v3.0.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0 [v2.6.0]: https://github.com/SAP/ui5-project/compare/v2.5.0...v2.6.0 [v2.5.0]: https://github.com/SAP/ui5-project/compare/v2.4.0...v2.5.0 [v2.4.0]: https://github.com/SAP/ui5-project/compare/v2.3.1...v2.4.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5f219f90488..1621ad33618 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.9", + "version": "3.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0-rc.9", + "version": "3.0.0", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 9594f822c28..92197e3f941 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0-rc.9", + "version": "3.0.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From ee0c56d99ac6658536ef10722cf059676ca783c5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 12 Feb 2023 03:20:36 +0000 Subject: [PATCH 0845/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 52 +++++++++++++++--------------- packages/project/package.json | 4 +-- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1621ad33618..f40f641b212 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -37,10 +37,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.33.0", + "eslint": "^8.34.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^39.8.0", + "eslint-plugin-jsdoc": "^39.9.1", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -2056,9 +2056,9 @@ "dev": true }, "node_modules/ci-info": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.1.tgz", - "integrity": "sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", "dev": true, "funding": [ { @@ -2932,9 +2932,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.289", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.289.tgz", - "integrity": "sha512-relLdMfPBxqGCxy7Gyfm1HcbRPcFUJdlgnCPVgQ23sr1TvUrRJz0/QPoGP0+x41wOVSTN/Wi3w6YDgHiHJGOzg==", + "version": "1.4.295", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.295.tgz", + "integrity": "sha512-lEO94zqf1bDA3aepxwnWoHUjA8sZ+2owgcSZjYQy0+uOSEclJX0VieZC+r+wLpSxUHRd6gG32znTWmr+5iGzFw==", "dev": true }, "node_modules/emittery": { @@ -3054,9 +3054,9 @@ } }, "node_modules/eslint": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz", - "integrity": "sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==", + "version": "8.34.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.34.0.tgz", + "integrity": "sha512-1Z8iFsucw+7kSqXNZVslXS8Ioa4u2KM7GPwuKtkTFAqZ/cHMcEaR+1+Br0wLlot49cNxIiZk5wp8EAbPcYZxTg==", "dev": true, "dependencies": { "@eslint/eslintrc": "^1.4.1", @@ -3144,9 +3144,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "39.8.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.8.0.tgz", - "integrity": "sha512-ZwGmk0jJoJD/NILeDRBKrpq/PCgddUdATjeU5JGTqTzKsOWfeaHOnaAwZjuOh7T8EB4hSoZ/9pR4+Qns2ldQVg==", + "version": "39.9.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.9.1.tgz", + "integrity": "sha512-Rq2QY6BZP2meNIs48aZ3GlIlJgBqFCmR55+UBvaDkA3ZNQ0SvQXOs2QKkubakEijV8UbIVbVZKsOVN8G3MuqZw==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.36.1", @@ -5672,9 +5672,9 @@ } }, "node_modules/minimatch": { - "version": "6.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.6.tgz", - "integrity": "sha512-6bR3UIeh/DF8+p6A9Spyuy67ShOq42rOkHWi7eUe3Ua99Zo5lZfGC6lJJWkeoK4k9jQFT3Pl7czhTXimG2XheA==", + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.8.tgz", + "integrity": "sha512-sTvS8Q4mIZiSnMo9192lZMxfeaGCslH5CC7B62hd9DlbifUVrc02ABTeRJINPosxKnvZlrmAaNSo8f4PZqDDdw==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -5686,9 +5686,9 @@ } }, "node_modules/minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -7005,9 +7005,9 @@ } }, "node_modules/pkg-conf/node_modules/locate-path": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.1.tgz", - "integrity": "sha512-vJXaRMJgRVD3+cUZs3Mncj2mxpt5mP0EmNOsxRSZRMlbqjvxzDEOIUWXGmavo0ZC9+tNZCBLQ66reA11nbpHZg==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", "dev": true, "dependencies": { "p-locate": "^6.0.0" @@ -7470,9 +7470,9 @@ } }, "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.1.1.tgz", - "integrity": "sha512-vJXaRMJgRVD3+cUZs3Mncj2mxpt5mP0EmNOsxRSZRMlbqjvxzDEOIUWXGmavo0ZC9+tNZCBLQ66reA11nbpHZg==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", "dependencies": { "p-locate": "^6.0.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index 92197e3f941..9f45b53ba74 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -144,10 +144,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.33.0", + "eslint": "^8.34.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^39.8.0", + "eslint-plugin-jsdoc": "^39.9.1", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 8dc16fb5c034ce2b595bb7e2b7800ccea250c388 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 12 Feb 2023 10:56:48 +0000 Subject: [PATCH 0846/1272] [ui5-project][INTERNAL] Bump eslint-plugin-jsdoc from 39.9.1 to 40.0.0 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 39.9.1 to 40.0.0. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Changelog](https://github.com/gajus/eslint-plugin-jsdoc/blob/main/.releaserc) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v39.9.1...v40.0.0) --- updated-dependencies: - dependency-name: eslint-plugin-jsdoc dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f40f641b212..482f4b08f63 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,7 +40,7 @@ "eslint": "^8.34.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^39.9.1", + "eslint-plugin-jsdoc": "^40.0.0", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -3144,9 +3144,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "39.9.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.9.1.tgz", - "integrity": "sha512-Rq2QY6BZP2meNIs48aZ3GlIlJgBqFCmR55+UBvaDkA3ZNQ0SvQXOs2QKkubakEijV8UbIVbVZKsOVN8G3MuqZw==", + "version": "40.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.0.0.tgz", + "integrity": "sha512-LOPyIu1vAVvGPkye3ci0moj0iNf3f8bmin6do2DYDj+77NRXWnkmhKRy8swWsatUs3mB5jYPWPUsFg9pyfEiyA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.36.1", diff --git a/packages/project/package.json b/packages/project/package.json index 9f45b53ba74..cf333ce96be 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -147,7 +147,7 @@ "eslint": "^8.34.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^39.9.1", + "eslint-plugin-jsdoc": "^40.0.0", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 3c68a46a94d2b55c2465bfc1591d6658d6cfc232 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Feb 2023 14:50:02 +0100 Subject: [PATCH 0847/1272] [ui5-project][FIX] Project#getReader: Do not apply builder resource excludes for style 'runtime' Introduce new style 'dist' to reflect the standard build output structure which can be used with any HTTP server. It is identical to the 'runtime' style, but also applies any configured builder resource excludes[1]. ProjectBuilder now uses style 'dist' instead of 'runtime'. [1]: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#exclude-resources Fixes https://github.com/SAP/ui5-tooling/issues/779 --- packages/project/lib/build/ProjectBuilder.js | 2 +- .../lib/specifications/ComponentProject.js | 60 ++- .../project/lib/specifications/Project.js | 24 +- .../lib/specifications/types/Application.js | 5 +- .../lib/specifications/types/Library.js | 20 +- .../lib/specifications/types/Module.js | 60 ++- .../lib/specifications/types/ThemeLibrary.js | 41 +- .../project/test/lib/build/ProjectBuilder.js | 4 +- .../lib/specifications/types/Application.js | 214 ++++++---- .../test/lib/specifications/types/Library.js | 373 ++++++++++-------- .../test/lib/specifications/types/Module.js | 129 ++++-- .../lib/specifications/types/ThemeLibrary.js | 108 +++-- 12 files changed, 678 insertions(+), 362 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index dc9e17db152..eaf72528616 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -361,7 +361,7 @@ class ProjectBuilder { const buildConfig = this._buildContext.getBuildConfig(); const reader = project.getReader({ // Force buildtime (=namespaced) style when writing with a build manifest - style: taskUtil.isRootProject() && buildConfig.createBuildManifest ? "buildtime" : "runtime" + style: taskUtil.isRootProject() && buildConfig.createBuildManifest ? "buildtime" : "dist" }); const resources = await reader.byGlob("/**/*"); diff --git a/packages/project/lib/specifications/ComponentProject.js b/packages/project/lib/specifications/ComponentProject.js index c73e3b4ce82..0fccf4f760e 100644 --- a/packages/project/lib/specifications/ComponentProject.js +++ b/packages/project/lib/specifications/ComponentProject.js @@ -92,29 +92,54 @@ class ComponentProject extends Project { /* === Resource Access === */ /** - * Get a resource reader for accessing the project resources in a given style. + * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for accessing all resources of the + * project in the specified "style": + * + *
    + *
  • buildtime: Resource paths are always prefixed with /resources/ + * or /test-resources/ followed by the project's namespace. + * Any configured build-excludes are applied
  • + *
  • dist: Resource paths always match with what the UI5 runtime expects. + * This means that paths generally depend on the project type. Applications for example use a "flat"-like + * structure, while libraries use a "buildtime"-like structure. + * Any configured build-excludes are applied
  • + *
  • runtime: Resource paths always match with what the UI5 runtime expects. + * This means that paths generally depend on the project type. Applications for example use a "flat"-like + * structure, while libraries use a "buildtime"-like structure. + * This style is typically used for serving resources directly. Therefore, build-excludes are not applied + *
  • flat: Resource paths are never prefixed and namespaces are omitted if possible. Note that + * project types like "theme-library", which can have multiple namespaces, can't omit them. + * Any configured build-excludes are applied
  • + *
+ * * If project resources have been changed through the means of a workspace, those changes * are reflected in the provided reader too. * + * Resource readers always use POSIX-style paths. + * * @public * @param {object} [options] - * @param {string} [options.style=buildtime] Path style to access resources. Can be "buildtime", "runtime" or "flat" - * TODO: describe styles + * @param {string} [options.style=buildtime] Path style to access resources. + * Can be "buildtime", "dist", "runtime" or "flat" * @returns {@ui5/fs/ReaderCollection} A reader collection instance */ getReader({style = "buildtime"} = {}) { // TODO: Additional style 'ABAP' using "sap.platform.abap".uri from manifest.json? - if (style === "runtime" && this._isRuntimeNamespaced) { - // If the project's runtime paths contains its namespace too, - // "runtime" style paths are identical to "buildtime" style paths + // Apply builder excludes to all styles but "runtime" + const excludes = style === "runtime" ? [] : this.getBuilderResourcesExcludes(); + + if ((style === "runtime" || style === "dist") && this._isRuntimeNamespaced) { + // If the project's type requires a namespace at runtime, the + // dist- and runtime-style paths are identical to buildtime-style paths style = "buildtime"; } - let reader = this._getReader(); + let reader = this._getReader(excludes); switch (style) { case "buildtime": break; case "runtime": + case "dist": // Use buildtime reader and link it to / // No test-resources for runtime resource access, // unless runtime is namespaced @@ -204,9 +229,9 @@ class ComponentProject extends Project { return this._writers; } - _getReader() { - let reader = this._getSourceReader(); - const testReader = this._getTestReader(); + _getReader(excludes) { + let reader = this._getSourceReader(excludes); + const testReader = this._getTestReader(excludes); if (testReader) { reader = resourceFactory.createReaderCollection({ name: `Reader collection for project ${this.getName()}`, @@ -219,19 +244,20 @@ class ComponentProject extends Project { _addWriter(reader, style) { const {namespaceWriter, generalWriter} = this._getWriter(); - if (style === "runtime" && this._isRuntimeNamespaced) { - // If the project's runtime requires namespaces, "runtime" paths are identical to "buildtime" paths + if ((style === "runtime" || style === "dist") && this._isRuntimeNamespaced) { + // If the project's type requires a namespace at runtime, the + // dist- and runtime-style paths are identical to buildtime-style paths style = "buildtime"; } const readers = []; switch (style) { - case "buildtime": { + case "buildtime": // Writer already uses buildtime style readers.push(namespaceWriter); readers.push(generalWriter); break; - } - case "runtime": { + case "runtime": + case "dist": // Runtime is not namespaced: link namespace to / readers.push(resourceFactory.createFlatReader({ reader: namespaceWriter, @@ -240,8 +266,7 @@ class ComponentProject extends Project { // Add general writer as is readers.push(generalWriter); break; - } - case "flat": { + case "flat": // Rewrite paths from "flat" to "buildtime" readers.push(resourceFactory.createFlatReader({ reader: namespaceWriter, @@ -249,7 +274,6 @@ class ComponentProject extends Project { })); // General writer resources can't be flattened, so they are not available break; - } default: throw new Error(`Unknown path mapping style ${style}`); } diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index a8c27e1d40c..a948d9a00e6 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -212,18 +212,28 @@ class Project extends Specification { * project in the specified "style": * *
    - *
  • buildtime: Resource paths are always prefixed with /resources/ - * or /test-resources/ followed by the project's namespace
  • - *
  • runtime: Access resources the same way the UI5 runtime would do
  • - *
  • flat: No prefix, no namespace
  • + *
  • buildtime: Resource paths are always prefixed with /resources/ + * or /test-resources/ followed by the project's namespace. + * Any configured build-excludes are applied
  • + *
  • dist: Resource paths always match with what the UI5 runtime expects. + * This means that paths generally depend on the project type. Applications for example use a "flat"-like + * structure, while libraries use a "buildtime"-like structure. + * Any configured build-excludes are applied
  • + *
  • runtime: Resource paths always match with what the UI5 runtime expects. + * This means that paths generally depend on the project type. Applications for example use a "flat"-like + * structure, while libraries use a "buildtime"-like structure. + * This style is typically used for serving resources directly. Therefore, build-excludes are not applied + *
  • flat: Resource paths are never prefixed and namespaces are omitted if possible. Note that + * project types like "theme-library", which can have multiple namespaces, can't omit them. + * Any configured build-excludes are applied
  • *
* - * Resource readers always use POSIX-style. + * Resource readers always use POSIX-style paths. * * @public * @param {object} [options] - * @param {string} [options.style=buildtime] Path style to access resources. Can be "buildtime", "runtime" or "flat" - * This parameter might be ignored by some project types + * @param {string} [options.style=buildtime] Path style to access resources. + * Can be "buildtime", "dist", "runtime" or "flat" * @returns {@ui5/fs/ReaderCollection} Reader collection allowing access to all resources of the project */ getReader(options) { diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index 2abe4875cea..f153e51763a 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -49,15 +49,16 @@ class Application extends ComponentProject { /** * Get a resource reader for the sources of the project (excluding any test resources) * + * @param {string[]} excludes List of glob patterns to exclude * @returns {@ui5/fs/ReaderCollection} Reader collection */ - _getSourceReader() { + _getSourceReader(excludes) { return createReader({ fsBasePath: this.getSourcePath(), virBasePath: `/resources/${this._namespace}/`, name: `Source reader for application project ${this.getName()}`, project: this, - excludes: this.getBuilderResourcesExcludes() + excludes }); } diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index ee5eedff950..7fa079e47f0 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -57,7 +57,13 @@ class Library extends ComponentProject { } /* === Resource Access === */ - _getSourceReader() { + /** + * Get a resource reader for the sources of the project (excluding any test resources) + * + * @param {string[]} excludes List of glob patterns to exclude + * @returns {@ui5/fs/ReaderCollection} Reader collection + */ + _getSourceReader(excludes) { // TODO: Throw for libraries with additional namespaces like sap.ui.core? let virBasePath = "/resources/"; if (!this._isSourceNamespaced) { @@ -70,11 +76,17 @@ class Library extends ComponentProject { virBasePath, name: `Source reader for library project ${this.getName()}`, project: this, - excludes: this.getBuilderResourcesExcludes() + excludes }); } - _getTestReader() { + /** + * Get a resource reader for the test-resources of the project + * + * @param {string[]} excludes List of glob patterns to exclude + * @returns {@ui5/fs/ReaderCollection} Reader collection + */ + _getTestReader(excludes) { if (!this._testPathExists) { return null; } @@ -89,7 +101,7 @@ class Library extends ComponentProject { virBasePath, name: `Runtime test-resources reader for library project ${this.getName()}`, project: this, - excludes: this.getBuilderResourcesExcludes() + excludes }); return testReader; } diff --git a/packages/project/lib/specifications/types/Module.js b/packages/project/lib/specifications/types/Module.js index 87b668abfcb..14e6a116442 100644 --- a/packages/project/lib/specifications/types/Module.js +++ b/packages/project/lib/specifications/types/Module.js @@ -32,14 +32,52 @@ class Module extends Project { } /* === Resource Access === */ + /** - * Get a resource reader for accessing the project resources - * - * @public - * @returns {@ui5/fs/ReaderCollection} Reader collection - */ - getReader() { - const readers = this._paths.map((readerArgs) => resourceFactory.createReader(readerArgs)); + * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for accessing all resources of the + * project in the specified "style": + * + *
    + *
  • buildtime: Resource paths are always prefixed with /resources/ + * or /test-resources/ followed by the project's namespace. + * Any configured build-excludes are applied
  • + *
  • dist: Resource paths always match with what the UI5 runtime expects. + * This means that paths generally depend on the project type. Applications for example use a "flat"-like + * structure, while libraries use a "buildtime"-like structure. + * Any configured build-excludes are applied
  • + *
  • runtime: Resource paths always match with what the UI5 runtime expects. + * This means that paths generally depend on the project type. Applications for example use a "flat"-like + * structure, while libraries use a "buildtime"-like structure. + * This style is typically used for serving resources directly. Therefore, build-excludes are not applied + *
  • flat: Resource paths are never prefixed and namespaces are omitted if possible. Note that + * project types like "theme-library", which can have multiple namespaces, can't omit them. + * Any configured build-excludes are applied
  • + *
+ * + * If project resources have been changed through the means of a workspace, those changes + * are reflected in the provided reader too. + * + * Resource readers always use POSIX-style paths. + * + * @public + * @param {object} [options] + * @param {string} [options.style=buildtime] Path style to access resources. + * Can be "buildtime", "dist", "runtime" or "flat" + * @returns {@ui5/fs/ReaderCollection} A reader collection instance + */ + getReader({style = "buildtime"} = {}) { + // Apply builder excludes to all styles but "runtime" + const excludes = style === "runtime" ? [] : this.getBuilderResourcesExcludes(); + + const readers = this._paths.map(({name, virBasePath, fsBasePath}) => { + return resourceFactory.createReader({ + name, + virBasePath, + fsBasePath, + project: this, + excludes + }); + }); if (readers.length === 1) { return readers[0]; } @@ -107,9 +145,7 @@ class Module extends Project { return { name: `'${relFsPath}'' reader for module project ${this.getName()}`, virBasePath, - fsBasePath: fsPath.join(this.getRootPath(), relFsPath), - project: this, - excludes: config.builder?.resources?.excludes + fsBasePath: fsPath.join(this.getRootPath(), relFsPath) }; })); } else { @@ -121,9 +157,7 @@ class Module extends Project { this._paths = [{ name: `Root reader for module project ${this.getName()}`, virBasePath: "/", - fsBasePath: this.getRootPath(), - project: this, - excludes: config.builder?.resources?.excludes + fsBasePath: this.getRootPath() }]; } } diff --git a/packages/project/lib/specifications/types/ThemeLibrary.js b/packages/project/lib/specifications/types/ThemeLibrary.js index f3c0e240974..e0bcd90785d 100644 --- a/packages/project/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/lib/specifications/types/ThemeLibrary.js @@ -42,21 +42,46 @@ class ThemeLibrary extends Project { /* === Resource Access === */ /** * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for accessing all resources of the - * project. - * This is always of style buildtime, wich for theme libraries is identical to style - * runtime. + * project in the specified "style": + * + *
    + *
  • buildtime: Resource paths are always prefixed with /resources/ + * or /test-resources/ followed by the project's namespace. + * Any configured build-excludes are applied
  • + *
  • dist: Resource paths always match with what the UI5 runtime expects. + * This means that paths generally depend on the project type. Applications for example use a "flat"-like + * structure, while libraries use a "buildtime"-like structure. + * Any configured build-excludes are applied
  • + *
  • runtime: Resource paths always match with what the UI5 runtime expects. + * This means that paths generally depend on the project type. Applications for example use a "flat"-like + * structure, while libraries use a "buildtime"-like structure. + * This style is typically used for serving resources directly. Therefore, build-excludes are not applied + *
  • flat: Resource paths are never prefixed and namespaces are omitted if possible. Note that + * project types like "theme-library", which can have multiple namespaces, can't omit them. + * Any configured build-excludes are applied
  • + *
+ * + * If project resources have been changed through the means of a workspace, those changes + * are reflected in the provided reader too. + * + * Resource readers always use POSIX-style paths. * * @public - * @returns {@ui5/fs/ReaderCollection} Reader collection allowing access to all resources of - * the project + * @param {object} [options] + * @param {string} [options.style=buildtime] Path style to access resources. + * Can be "buildtime", "dist", "runtime" or "flat" + * @returns {@ui5/fs/ReaderCollection} A reader collection instance */ - getReader() { + getReader({style = "buildtime"} = {}) { + // Apply builder excludes to all styles but "runtime" + const excludes = style === "runtime" ? [] : this.getBuilderResourcesExcludes(); + let reader = resourceFactory.createReader({ fsBasePath: this.getSourcePath(), virBasePath: "/resources/", name: `Runtime resources reader for theme-library project ${this.getName()}`, project: this, - excludes: this.getBuilderResourcesExcludes() + excludes }); if (this._testPathExists) { const testReader = resourceFactory.createReader({ @@ -64,7 +89,7 @@ class ThemeLibrary extends Project { virBasePath: "/test-resources/", name: `Runtime test-resources reader for theme-library project ${this.getName()}`, project: this, - excludes: this.getBuilderResourcesExcludes() + excludes }); reader = resourceFactory.createReaderCollection({ name: `Reader collection for theme-library project ${this.getName()}`, diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 1ec698febbd..2d1021e1f4f 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -546,7 +546,7 @@ test("_writeResults", async (t) => { t.is(getReaderStub.callCount, 1, "One reader requested"); t.deepEqual(getReaderStub.getCall(0).args[0], { - style: "runtime" + style: "dist" }, "Reader requested expected style"); t.is(byGlobStub.callCount, 1, "One byGlob call"); @@ -711,7 +711,7 @@ test("_writeResults: Do not create build manifest for non-root project", async ( t.is(getReaderStub.callCount, 1, "One reader requested"); t.deepEqual(getReaderStub.getCall(0).args[0], { - style: "runtime" + style: "dist" }, "Reader requested expected style"); t.is(getTagStub.callCount, 1, "TaskUtil#getTag got called once"); diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 85e1a3048f7..266f4cb7265 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -2,70 +2,94 @@ import test from "ava"; import path from "node:path"; import {fileURLToPath} from "node:url"; import {createResource} from "@ui5/fs/resourceFactory"; -import sinon from "sinon"; +import sinonGlobal from "sinon"; import Specification from "../../../../lib/specifications/Specification.js"; import Application from "../../../../lib/specifications/types/Application.js"; -function clone(obj) { - return JSON.parse(JSON.stringify(obj)); -} - const __dirname = path.dirname(fileURLToPath(import.meta.url)); - const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); -const basicProjectInput = { - id: "application.a.id", - version: "1.0.0", - modulePath: applicationAPath, - configuration: { - specVersion: "2.3", - kind: "project", - type: "application", - metadata: {name: "application.a"} - } -}; +const applicationHPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.h"); + +test.beforeEach((t) => { + t.context.sinon = sinonGlobal.createSandbox(); + t.context.projectInput = { + id: "application.a.id", + version: "1.0.0", + modulePath: applicationAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.a"} + } + }; + + t.context.applicationHInput = { + id: "application.h.id", + version: "1.0.0", + modulePath: applicationHPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "application", + metadata: {name: "application.h"}, + resources: { + configuration: { + paths: { + webapp: "webapp" + } + } + } + } + }; +}); test.afterEach.always((t) => { - sinon.restore(); + t.context.sinon.restore(); }); test("Correct class", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.true(project instanceof Application, `Is an instance of the Application class`); }); test("getNamespace", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.is(project.getNamespace(), "id1", "Returned correct namespace"); }); test("getSourcePath", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.is(project.getSourcePath(), path.join(applicationAPath, "webapp"), "Returned correct source path"); }); test("getCachebusterSignatureType: Default", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.is(project.getCachebusterSignatureType(), "time", "Returned correct default cachebuster signature type configuration"); }); test("getCachebusterSignatureType: Configuration", async (t) => { - const customProjectInput = clone(basicProjectInput); - customProjectInput.configuration.builder = { + const {projectInput} = t.context; + projectInput.configuration.builder = { cachebuster: { signatureType: "hash" } }; - const project = await Specification.create(customProjectInput); + const project = await Specification.create(projectInput); t.is(project.getCachebusterSignatureType(), "hash", "Returned correct default cachebuster signature type configuration"); }); test("Access project resources via reader: buildtime style", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const reader = project.getReader(); const resource = await reader.byPath("/resources/id1/manifest.json"); t.truthy(resource, "Found the requested resource"); @@ -73,7 +97,8 @@ test("Access project resources via reader: buildtime style", async (t) => { }); test("Access project resources via reader: flat style", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const reader = project.getReader({style: "flat"}); const resource = await reader.byPath("/manifest.json"); t.truthy(resource, "Found the requested resource"); @@ -81,15 +106,58 @@ test("Access project resources via reader: flat style", async (t) => { }); test("Access project resources via reader: runtime style", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const reader = project.getReader({style: "runtime"}); const resource = await reader.byPath("/manifest.json"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/manifest.json", "Resource has correct path"); }); +test("Access project resources via reader w/ builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await Specification.create(projectInput); + + projectInput.configuration.builder = { + resources: { + excludes: ["**/manifest.json"] + } + }; + const excludesProject = await Specification.create(projectInput); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for flat style"); + + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/manifest.json")).length, 1, + "Found excluded resource for runtime style"); +}); + test("Modify project resources via workspace and access via flat and runtime readers", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const workspace = project.getWorkspace(); const workspaceResource = await workspace.byPath("/resources/id1/index.html"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -123,7 +191,8 @@ test("Modify project resources via workspace and access via flat and runtime rea test("Read and write resources outside of app namespace", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const workspace = project.getWorkspace(); await workspace.write(createResource({ @@ -161,7 +230,8 @@ test("Read and write resources outside of app namespace", async (t) => { }); test("_configureAndValidatePaths: Default paths", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.is(project._webappPath, "webapp", "Correct default path"); }); @@ -193,7 +263,7 @@ test("_configureAndValidatePaths: Custom webapp directory", async (t) => { }); test("_configureAndValidatePaths: Webapp directory does not exist", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; projectInput.configuration.resources = { configuration: { paths: { @@ -207,7 +277,8 @@ test("_configureAndValidatePaths: Webapp directory does not exist", async (t) => }); test("_getNamespaceFromManifestJson: No 'sap.app' configuration found", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); sinon.stub(project, "_getManifest").resolves({}); const error = await t.throwsAsync(project._getNamespaceFromManifestJson()); @@ -216,7 +287,8 @@ test("_getNamespaceFromManifestJson: No 'sap.app' configuration found", async (t }); test("_getNamespaceFromManifestJson: No application id in 'sap.app' configuration found", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); sinon.stub(project, "_getManifest").resolves({"sap.app": {}}); const error = await t.throwsAsync(project._getNamespaceFromManifestJson()); @@ -224,7 +296,8 @@ test("_getNamespaceFromManifestJson: No application id in 'sap.app' configuratio }); test("_getNamespaceFromManifestJson: set namespace to id", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); sinon.stub(project, "_getManifest").resolves({"sap.app": {id: "my.id"}}); const namespace = await project._getNamespaceFromManifestJson(); @@ -232,7 +305,8 @@ test("_getNamespaceFromManifestJson: set namespace to id", async (t) => { }); test("_getNamespaceFromManifestAppDescVariant: No 'id' property found", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); sinon.stub(project, "_getManifest").resolves({}); const error = await t.throwsAsync(project._getNamespaceFromManifestAppDescVariant()); @@ -241,7 +315,8 @@ test("_getNamespaceFromManifestAppDescVariant: No 'id' property found", async (t }); test("_getNamespaceFromManifestAppDescVariant: set namespace to id", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); sinon.stub(project, "_getManifest").resolves({id: "my.id"}); const namespace = await project._getNamespaceFromManifestAppDescVariant(); @@ -249,7 +324,8 @@ test("_getNamespaceFromManifestAppDescVariant: set namespace to id", async (t) = }); test("_getNamespace: Correct fallback to manifest.appdescr_variant if manifest.json is missing", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); const _getManifestStub = sinon.stub(project, "_getManifest") .onFirstCall().rejects({code: "ENOENT"}) .onSecondCall().resolves({id: "my.id"}); @@ -263,7 +339,8 @@ test("_getNamespace: Correct fallback to manifest.appdescr_variant if manifest.j }); test("_getNamespace: Correct error message if fallback to manifest.appdescr_variant failed", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); const _getManifestStub = sinon.stub(project, "_getManifest") .onFirstCall().rejects({code: "ENOENT"}) .onSecondCall().rejects(new Error("EPON: Pony Error")); @@ -278,7 +355,8 @@ test("_getNamespace: Correct error message if fallback to manifest.appdescr_vari }); test("_getNamespace: Correct error message if fallback to manifest.appdescr_variant is not possible", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); const _getManifestStub = sinon.stub(project, "_getManifest") .onFirstCall().rejects({message: "No such stable or directory: manifest.json", code: "ENOENT"}) .onSecondCall().rejects({code: "ENOENT"}); // both files are missing @@ -296,7 +374,8 @@ test("_getNamespace: Correct error message if fallback to manifest.appdescr_vari }); test("_getNamespace: No fallback if manifest.json is present but failed to parse", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); const _getManifestStub = sinon.stub(project, "_getManifest") .onFirstCall().rejects(new Error("EPON: Pony Error")); @@ -309,14 +388,16 @@ test("_getNamespace: No fallback if manifest.json is present but failed to parse }); test("_getManifest: reads correctly", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const content = await project._getManifest("/manifest.json"); t.is(content._version, "1.1.0", "manifest.json content has been read"); }); test("_getManifest: invalid JSON", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); const byPathStub = sinon.stub().resolves({ getString: async () => "no json" @@ -336,7 +417,8 @@ test("_getManifest: invalid JSON", async (t) => { }); test.serial("_getManifest: File does not exist", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const error = await t.throwsAsync(project._getManifest("/does-not-exist.json")); t.deepEqual(error.message, @@ -346,7 +428,8 @@ test.serial("_getManifest: File does not exist", async (t) => { }); test.serial("_getManifest: result is cached", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); const byPathStub = sinon.stub().resolves({ getString: async () => `{"pony": "no unicorn"}` @@ -368,7 +451,8 @@ test.serial("_getManifest: result is cached", async (t) => { }); test.serial("_getManifest: Caches successes and failures", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput, sinon} = t.context; + const project = await Specification.create(projectInput); const getStringStub = sinon.stub() .onFirstCall().rejects(new Error("EPON: Pony Error")) @@ -405,49 +489,29 @@ test.serial("_getManifest: Caches successes and failures", async (t) => { "byPath got called exactly twice (and then cached)"); }); -const applicationHPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.h"); -const applicationH = { - id: "application.h.id", - version: "1.0.0", - modulePath: applicationHPath, - configuration: { - specVersion: "2.3", - kind: "project", - type: "application", - metadata: {name: "application.h"}, - resources: { - configuration: { - paths: { - webapp: "webapp" - } - } - } - } -}; - test("namespace: detect namespace from pom.xml via ${project.artifactId}", async (t) => { - const myProject = clone(applicationH); - myProject.configuration.resources.configuration.paths.webapp = "webapp-project.artifactId"; - const project = await Specification.create(myProject); + const {applicationHInput} = t.context; + applicationHInput.configuration.resources.configuration.paths.webapp = "webapp-project.artifactId"; + const project = await Specification.create(applicationHInput); t.is(project.getNamespace(), "application/h", "namespace was successfully set since getJson provides the correct object structure"); }); test("namespace: detect namespace from pom.xml via ${componentName} from properties", async (t) => { - const myProject = clone(applicationH); - myProject.configuration.resources.configuration.paths.webapp = "webapp-properties.componentName"; - const project = await Specification.create(myProject); + const {applicationHInput} = t.context; + applicationHInput.configuration.resources.configuration.paths.webapp = "webapp-properties.componentName"; + const project = await Specification.create(applicationHInput); t.is(project.getNamespace(), "application/h", "namespace was successfully set since getJson provides the correct object structure"); }); test("namespace: detect namespace from pom.xml via ${appId} from properties", async (t) => { - const myProject = clone(applicationH); - myProject.configuration.resources.configuration.paths.webapp = "webapp-properties.appId"; + const {applicationHInput} = t.context; + applicationHInput.configuration.resources.configuration.paths.webapp = "webapp-properties.appId"; - const error = await t.throwsAsync(Specification.create(myProject)); + const error = await t.throwsAsync(Specification.create(applicationHInput)); t.deepEqual(error.message, "Failed to resolve namespace of project application.h: \"${appId}\"" + " couldn't be resolved from maven property \"appId\" of pom.xml of project application.h"); }); diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index caaec596d01..5521bf8cc1c 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -4,52 +4,46 @@ import {fileURLToPath} from "node:url"; import sinonGlobal from "sinon"; import Library from "../../../../lib/specifications/types/Library.js"; -function clone(obj) { - return JSON.parse(JSON.stringify(obj)); -} - const __dirname = path.dirname(fileURLToPath(import.meta.url)); - const libraryDPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.d"); -const basicProjectInput = { - id: "library.d.id", - version: "1.0.0", - modulePath: libraryDPath, - configuration: { - specVersion: "2.3", - kind: "project", - type: "library", - metadata: { - name: "library.d", - }, - resources: { - configuration: { - paths: { - src: "main/src", - test: "main/test" - } - } - }, - } -}; - const libraryHPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.h"); -const flatProjectInput = { - id: "library.d.id", - version: "1.0.0", - modulePath: libraryHPath, - configuration: { - specVersion: "2.6", - kind: "project", - type: "library", - metadata: { - name: "library.h", - } - } -}; test.beforeEach((t) => { t.context.sinon = sinonGlobal.createSandbox(); + t.context.projectInput = { + id: "library.d.id", + version: "1.0.0", + modulePath: libraryDPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "library", + metadata: { + name: "library.d", + }, + resources: { + configuration: { + paths: { + src: "main/src", + test: "main/test" + } + } + }, + } + }; + t.context.flatProjectInput = { + id: "library.d.id", + version: "1.0.0", + modulePath: libraryHPath, + configuration: { + specVersion: "2.6", + kind: "project", + type: "library", + metadata: { + name: "library.h", + } + } + }; }); test.afterEach.always((t) => { @@ -57,51 +51,56 @@ test.afterEach.always((t) => { }); test("getNamespace", async (t) => { - const project = await (new Library().init(basicProjectInput)); + const {projectInput} = t.context; + const project = await (new Library().init(projectInput)); t.is(project.getNamespace(), "library/d", "Returned correct namespace"); }); test("getSourcePath", async (t) => { - const project = await (new Library().init(basicProjectInput)); + const {projectInput} = t.context; + const project = await (new Library().init(projectInput)); t.is(project.getSourcePath(), path.join(libraryDPath, "main", "src"), "Returned correct source path"); }); test("getPropertiesFileSourceEncoding: Default", async (t) => { - const project = await (new Library().init(basicProjectInput)); + const {projectInput} = t.context; + const project = await (new Library().init(projectInput)); t.is(project.getPropertiesFileSourceEncoding(), "UTF-8", "Returned correct default propertiesFileSourceEncoding configuration"); }); test("getPropertiesFileSourceEncoding: Configuration", async (t) => { - const customProjectInput = clone(basicProjectInput); - customProjectInput.configuration.resources.configuration.propertiesFileSourceEncoding = "ISO-8859-1"; - const project = await (new Library().init(customProjectInput)); + const {projectInput} = t.context; + projectInput.configuration.resources.configuration.propertiesFileSourceEncoding = "ISO-8859-1"; + const project = await (new Library().init(projectInput)); t.is(project.getPropertiesFileSourceEncoding(), "ISO-8859-1", "Returned correct default propertiesFileSourceEncoding configuration"); }); test("getJsdocExcludes", async (t) => { - const customProjectInput = clone(basicProjectInput); - customProjectInput.configuration.builder = { + const {projectInput} = t.context; + projectInput.configuration.builder = { jsdoc: { excludes: ["excludes"] } }; - const project = await (new Library().init(customProjectInput)); + const project = await (new Library().init(projectInput)); t.deepEqual(project.getJsdocExcludes(), ["excludes"], "Returned correct jsdocExcludes configuration"); }); test("getJsdocExcludes: default", async (t) => { - const project = await (new Library().init(basicProjectInput)); + const {projectInput} = t.context; + const project = await (new Library().init(projectInput)); t.deepEqual(project.getJsdocExcludes(), [], "Returned correct jsdocExcludes configuration"); }); test("Access project resources via reader: buildtime style", async (t) => { - const project = await (new Library().init(basicProjectInput)); + const {projectInput} = t.context; + const project = await (new Library().init(projectInput)); const reader = project.getReader(); const resource = await reader.byPath("/resources/library/d/.library"); t.truthy(resource, "Found the requested resource"); @@ -109,7 +108,8 @@ test("Access project resources via reader: buildtime style", async (t) => { }); test("Access project resources via reader: flat style", async (t) => { - const project = await (new Library().init(basicProjectInput)); + const {projectInput} = t.context; + const project = await (new Library().init(projectInput)); const reader = project.getReader({style: "flat"}); const resource = await reader.byPath("/.library"); t.truthy(resource, "Found the requested resource"); @@ -117,7 +117,8 @@ test("Access project resources via reader: flat style", async (t) => { }); test("Access project test-resources via reader: buildtime style", async (t) => { - const project = await (new Library().init(basicProjectInput)); + const {projectInput} = t.context; + const project = await (new Library().init(projectInput)); const reader = project.getReader({style: "buildtime"}); const resource = await reader.byPath("/test-resources/library/d/Test.html"); t.truthy(resource, "Found the requested resource"); @@ -125,15 +126,58 @@ test("Access project test-resources via reader: buildtime style", async (t) => { }); test("Access project test-resources via reader: runtime style", async (t) => { - const project = await (new Library().init(basicProjectInput)); + const {projectInput} = t.context; + const project = await (new Library().init(projectInput)); const reader = project.getReader({style: "runtime"}); const resource = await reader.byPath("/test-resources/library/d/Test.html"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/test-resources/library/d/Test.html", "Resource has correct path"); }); +test("Access project resources via reader w/ builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await (new Library().init(projectInput)); + + projectInput.configuration.builder = { + resources: { + excludes: ["**/.library"] + } + }; + const excludesProject = await (new Library().init(projectInput)); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/.library")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/.library")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/.library")).length, 0, + "Did not find excluded resource for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/.library")).length, 0, + "Did not find excluded resource for flat style"); + + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/.library")).length, 1, + "Found excluded resource for runtime style"); +}); + test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { - const project = await (new Library().init(basicProjectInput)); + const {projectInput} = t.context; + const project = await (new Library().init(projectInput)); const workspace = project.getWorkspace(); const workspaceResource = await workspace.byPath("/resources/library/d/.library"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -172,6 +216,7 @@ test("Modify project resources via workspace and access via flat and runtime rea }); test("Access flat project resources via reader: buildtime style", async (t) => { + const {flatProjectInput} = t.context; const project = await (new Library().init(flatProjectInput)); const reader = project.getReader({style: "buildtime"}); const resource = await reader.byPath("/resources/library/h/some.js"); @@ -203,7 +248,7 @@ test("_configureAndValidatePaths: Default paths", async (t) => { }); test("_configureAndValidatePaths: Test directory does not exist", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; projectInput.configuration.resources.configuration.paths.test = "does/not/exist"; const project = await (new Library().init(projectInput)); @@ -213,7 +258,7 @@ test("_configureAndValidatePaths: Test directory does not exist", async (t) => { }); test("_configureAndValidatePaths: Source directory does not exist", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; projectInput.configuration.resources.configuration.paths.src = "does/not/exist"; const err = await t.throwsAsync(new Library().init(projectInput)); @@ -221,13 +266,14 @@ test("_configureAndValidatePaths: Source directory does not exist", async (t) => }); test("_parseConfiguration: Get copyright", async (t) => { - const project = await (new Library().init(basicProjectInput)); + const {projectInput} = t.context; + const project = await (new Library().init(projectInput)); t.is(project.getCopyright(), "Some fancy copyright", "Copyright was read correctly"); }); test("_parseConfiguration: Copyright already configured", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; projectInput.configuration.metadata.copyright = "My copyright"; const project = await (new Library().init(projectInput)); @@ -235,16 +281,16 @@ test("_parseConfiguration: Copyright already configured", async (t) => { }); test.serial("_parseConfiguration: Copyright retrieval fails", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; sinon.stub(Library.prototype, "_getCopyrightFromDotLibrary").resolves(null); - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); t.is(project.getCopyright(), undefined, "Copyright was not altered"); }); test.serial("_parseConfiguration: Preload excludes from .library", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; sinon.stub(Library.prototype, "isFrameworkProject").returns(true); sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves(["test/exclude/**"]); @@ -253,7 +299,7 @@ test.serial("_parseConfiguration: Preload excludes from .library", async (t) => const loggerVerboseSpy = sinon.spy(project._log, "verbose"); - await project.init(basicProjectInput); + await project.init(projectInput); t.deepEqual(project.getLibraryPreloadExcludes(), ["test/exclude/**"], "Correct library preload excludes have been set"); @@ -265,7 +311,7 @@ test.serial("_parseConfiguration: Preload excludes from .library", async (t) => }); test("_parseConfiguration: Preload excludes from project configuration (non-framework library)", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; projectInput.configuration.builder = { libraryPreload: { excludes: ["test/exclude/**"] @@ -278,7 +324,7 @@ test("_parseConfiguration: Preload excludes from project configuration (non-fram }); test.serial("_parseConfiguration: Preload exclude fallback to .library (framework libraries only)", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; sinon.stub(Library.prototype, "isFrameworkProject").returns(true); sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves(["test/exclude/**"]); @@ -287,7 +333,7 @@ test.serial("_parseConfiguration: Preload exclude fallback to .library (framewor const loggerVerboseSpy = sinon.spy(project._log, "verbose"); - await project.init(basicProjectInput); + await project.init(projectInput); t.deepEqual(project.getLibraryPreloadExcludes(), ["test/exclude/**"], "Correct library preload excludes have been set"); @@ -299,7 +345,7 @@ test.serial("_parseConfiguration: Preload exclude fallback to .library (framewor }); test.serial("_parseConfiguration: No preload excludes from .library", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; sinon.stub(Library.prototype, "isFrameworkProject").returns(true); sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves(null); @@ -308,7 +354,7 @@ test.serial("_parseConfiguration: No preload excludes from .library", async (t) const loggerVerboseSpy = sinon.spy(project._log, "verbose"); - await project.init(basicProjectInput); + await project.init(projectInput); t.deepEqual(project.getLibraryPreloadExcludes(), [], "No library preload excludes have been set"); @@ -320,13 +366,12 @@ test.serial("_parseConfiguration: No preload excludes from .library", async (t) }); test.serial("_parseConfiguration: Preload excludes from project configuration (framework library)", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; sinon.stub(Library.prototype, "isFrameworkProject").returns(true); const getPreloadExcludesFromDotLibraryStub = sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary").resolves([]); - const projectInput = clone(basicProjectInput); projectInput.configuration.builder = { libraryPreload: { excludes: ["test/exclude/**"] @@ -349,12 +394,12 @@ test.serial("_parseConfiguration: Preload excludes from project configuration (f }); test.serial("_parseConfiguration: No preload exclude fallback for non-framework libraries", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; sinon.stub(Library.prototype, "isFrameworkProject").returns(false); const getPreloadExcludesFromDotLibraryStub = sinon.stub(Library.prototype, "_getPreloadExcludesFromDotLibrary") .resolves(["test/exclude/**"]); - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); t.deepEqual(project.getLibraryPreloadExcludes(), [], "No library preload excludes have been set"); @@ -362,9 +407,9 @@ test.serial("_parseConfiguration: No preload exclude fallback for non-framework }); test("_getManifest: Reads correctly", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `{"pony": "no unicorn"}`, getPath: () => "some path" @@ -384,9 +429,9 @@ test("_getManifest: Reads correctly", async (t) => { }); test("_getManifest: No manifest.json", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([]); project._getRawSourceReader = () => { @@ -402,9 +447,9 @@ test("_getManifest: No manifest.json", async (t) => { }); test("_getManifest: Invalid JSON", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `no pony`, getPath: () => "some path" @@ -424,9 +469,9 @@ test("_getManifest: Invalid JSON", async (t) => { }); test("_getManifest: Propagates exception", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().rejects(new Error("because shark")); project._getRawSourceReader = () => { @@ -442,9 +487,9 @@ test("_getManifest: Propagates exception", async (t) => { }); test("_getManifest: Multiple manifest.json files", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `{"pony": "no unicorn"}`, getPath: () => "some path" @@ -465,9 +510,9 @@ test("_getManifest: Multiple manifest.json files", async (t) => { }); test("_getManifest: Result is cached", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `{"pony": "no unicorn"}`, getPath: () => "some path" @@ -493,9 +538,9 @@ test("_getManifest: Result is cached", async (t) => { }); test("_getDotLibrary: Reads correctly", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `Fancy`, getPath: () => "some path" @@ -515,9 +560,9 @@ test("_getDotLibrary: Reads correctly", async (t) => { }); test("_getDotLibrary: No .library file", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([]); project._getRawSourceReader = () => { @@ -533,9 +578,9 @@ test("_getDotLibrary: No .library file", async (t) => { }); test("_getDotLibrary: Invalid XML", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `no pony`, getPath: () => "some path" @@ -557,9 +602,9 @@ test("_getDotLibrary: Invalid XML", async (t) => { }); test("_getDotLibrary: Propagates exception", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().rejects(new Error("because shark")); project._getRawSourceReader = () => { @@ -575,9 +620,9 @@ test("_getDotLibrary: Propagates exception", async (t) => { }); test("_getDotLibrary: Multiple .library files", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `Fancy`, getPath: () => "some path" @@ -598,9 +643,9 @@ test("_getDotLibrary: Multiple .library files", async (t) => { }); test("_getDotLibrary: Result is cached", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getString: async () => `Fancy`, getPath: () => "some path" @@ -626,9 +671,9 @@ test("_getDotLibrary: Result is cached", async (t) => { }); test("_getLibraryJsPath: Reads correctly", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getPath: () => "some path" }]); @@ -646,9 +691,9 @@ test("_getLibraryJsPath: Reads correctly", async (t) => { }); test("_getLibraryJsPath: No library.js file", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([]); project._getRawSourceReader = () => { @@ -664,9 +709,9 @@ test("_getLibraryJsPath: No library.js file", async (t) => { }); test("_getLibraryJsPath: Propagates exception", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().rejects(new Error("because shark")); project._getRawSourceReader = () => { @@ -682,9 +727,9 @@ test("_getLibraryJsPath: Propagates exception", async (t) => { }); test("_getLibraryJsPath: Multiple library.js files", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getPath: () => "some path" }, { @@ -703,9 +748,9 @@ test("_getLibraryJsPath: Multiple library.js files", async (t) => { }); test("_getLibraryJsPath: Result is cached", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const byGlobStub = sinon.stub().resolves([{ getPath: () => "some path" }]); @@ -729,9 +774,9 @@ test("_getLibraryJsPath: Result is cached", async (t) => { }); test.serial("_getNamespace: namespace resolution fails", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const loggerVerboseSpy = sinon.stub(project._log, "verbose"); @@ -757,9 +802,9 @@ test.serial("_getNamespace: namespace resolution fails", async (t) => { }); test("_getNamespace: from manifest.json with .library on same level", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -780,9 +825,9 @@ test("_getNamespace: from manifest.json with .library on same level", async (t) }); test("_getNamespace: from manifest.json for flat project", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -803,9 +848,9 @@ test("_getNamespace: from manifest.json for flat project", async (t) => { }); test("_getNamespace: from .library for flat project", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); sinon.stub(project, "_getDotLibrary").resolves({ content: { @@ -819,9 +864,9 @@ test("_getNamespace: from .library for flat project", async (t) => { }); test("_getNamespace: from manifest.json with .library on same level but different directory", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -849,9 +894,9 @@ test("_getNamespace: from manifest.json with .library on same level but differen }); test("_getNamespace: from manifest.json with not matching file path", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -873,9 +918,9 @@ test("_getNamespace: from manifest.json with not matching file path", async (t) }); test.serial("_getNamespace: from manifest.json without sap.app id", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); const manifestPath = "/different/namespace/manifest.json"; sinon.stub(project, "_getManifest").resolves({ @@ -905,9 +950,9 @@ test.serial("_getNamespace: from manifest.json without sap.app id", async (t) => }); test("_getNamespace: from .library", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); sinon.stub(project, "_getDotLibrary").resolves({ content: { @@ -921,9 +966,9 @@ test("_getNamespace: from .library", async (t) => { }); test("_getNamespace: from .library with ignored manifest.json on lower level", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -944,12 +989,12 @@ test("_getNamespace: from .library with ignored manifest.json on lower level", a }); test("_getNamespace: manifest.json on higher level than .library", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; const manifestFsPath = "/namespace/manifest.json"; const dotLibraryFsPath = "/namespace/morenamespace/.library"; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -978,9 +1023,9 @@ test("_getNamespace: manifest.json on higher level than .library", async (t) => }); test("_getNamespace: from .library with maven placeholder", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); sinon.stub(project, "_getDotLibrary").resolves({ content: { @@ -999,9 +1044,9 @@ test("_getNamespace: from .library with maven placeholder", async (t) => { }); test("_getNamespace: from .library with not matching file path", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").rejects("No manifest aint' here"); sinon.stub(project, "_getDotLibrary").resolves({ content: { @@ -1018,9 +1063,9 @@ test("_getNamespace: from .library with not matching file path", async (t) => { }); test("_getNamespace: from library.js", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({}); sinon.stub(project, "_getDotLibrary").resolves({}); sinon.stub(project, "_getLibraryJsPath").resolves("/my/namespace/library.js"); @@ -1030,13 +1075,13 @@ test("_getNamespace: from library.js", async (t) => { }); test("_getNamespace: from project root level library.js", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; const project = new Library(); const loggerStub = sinon.stub(project._log, "verbose"); - await project.init(basicProjectInput); + await project.init(projectInput); sinon.stub(project, "_getManifest").resolves({}); sinon.stub(project, "_getDotLibrary").resolves({}); @@ -1056,9 +1101,9 @@ test("_getNamespace: from project root level library.js", async (t) => { }); test("_getNamespace: neither manifest nor .library or library.js path contain it", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({}); sinon.stub(project, "_getDotLibrary").resolves({}); sinon.stub(project, "_getLibraryJsPath").rejects(new Error("Not found bla")); @@ -1069,9 +1114,9 @@ test("_getNamespace: neither manifest nor .library or library.js path contain it }); test("_getNamespace: maven placeholder resolution fails", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -1093,9 +1138,9 @@ test("_getNamespace: maven placeholder resolution fails", async (t) => { }); test("_getCopyrightFromDotLibrary", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: { @@ -1110,9 +1155,9 @@ test("_getCopyrightFromDotLibrary", async (t) => { }); test("_getCopyrightFromDotLibrary: No copyright in .library file", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: {} @@ -1124,9 +1169,9 @@ test("_getCopyrightFromDotLibrary: No copyright in .library file", async (t) => }); test("_getCopyrightFromDotLibrary: Propagates exception", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").rejects(new Error("because shark")); const err = await t.throwsAsync(project._getCopyrightFromDotLibrary()); @@ -1135,9 +1180,9 @@ test("_getCopyrightFromDotLibrary: Propagates exception", async (t) => { }); test("_getPreloadExcludesFromDotLibrary: Single exclude", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: { @@ -1162,9 +1207,9 @@ test("_getPreloadExcludesFromDotLibrary: Single exclude", async (t) => { }); test("_getPreloadExcludesFromDotLibrary: Multiple excludes", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: { @@ -1203,9 +1248,9 @@ test("_getPreloadExcludesFromDotLibrary: Multiple excludes", async (t) => { }); test("_getPreloadExcludesFromDotLibrary: No excludes in .library file", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: {} @@ -1217,9 +1262,9 @@ test("_getPreloadExcludesFromDotLibrary: No excludes in .library file", async (t }); test("_getPreloadExcludesFromDotLibrary: Propagates exception", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").rejects(new Error("because shark")); const err = await t.throwsAsync(project._getPreloadExcludesFromDotLibrary()); @@ -1228,9 +1273,9 @@ test("_getPreloadExcludesFromDotLibrary: Propagates exception", async (t) => { }); test("_getNamespaceFromManifest", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": { @@ -1245,9 +1290,9 @@ test("_getNamespaceFromManifest", async (t) => { }); test("_getNamespaceFromManifest: No ID in manifest.json file", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").resolves({ content: { "sap.app": {} @@ -1259,9 +1304,9 @@ test("_getNamespaceFromManifest: No ID in manifest.json file", async (t) => { }); test("_getNamespaceFromManifest: Does not propagate exception", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getManifest").rejects(new Error("because shark")); const res = await project._getNamespaceFromManifest(); @@ -1269,9 +1314,9 @@ test("_getNamespaceFromManifest: Does not propagate exception", async (t) => { }); test("_getNamespaceFromDotLibrary", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: { @@ -1290,9 +1335,9 @@ test("_getNamespaceFromDotLibrary", async (t) => { }); test("_getNamespaceFromDotLibrary: No library name in .library file", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").resolves({ content: { library: {} @@ -1304,9 +1349,9 @@ test("_getNamespaceFromDotLibrary: No library name in .library file", async (t) }); test("_getNamespaceFromDotLibrary: Does not propagate exception", async (t) => { - const {sinon} = t.context; + const {projectInput, sinon} = t.context; - const project = await (new Library().init(basicProjectInput)); + const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").rejects(new Error("because shark")); const res = await project._getNamespaceFromDotLibrary(); diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index 7eb535427f9..509c78b0156 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -1,51 +1,52 @@ import test from "ava"; import path from "node:path"; import {fileURLToPath} from "node:url"; -import sinon from "sinon"; +import sinonGlobal from "sinon"; import Specification from "../../../../lib/specifications/Specification.js"; -function clone(obj) { - return JSON.parse(JSON.stringify(obj)); -} - const __dirname = path.dirname(fileURLToPath(import.meta.url)); - const moduleAPath = path.join(__dirname, "..", "..", "..", "fixtures", "module.a"); -const basicProjectInput = { - id: "module.a.id", - version: "1.0.0", - modulePath: moduleAPath, - configuration: { - specVersion: "2.3", - kind: "project", - type: "module", - metadata: { - name: "module.a", - copyright: "Some fancy copyright" // allowed but ignored - }, - resources: { - configuration: { - paths: { - "/": "dist", - "/dev/": "dev" + +test.beforeEach((t) => { + t.context.sinon = sinonGlobal.createSandbox(); + t.context.projectInput = { + id: "module.a.id", + version: "1.0.0", + modulePath: moduleAPath, + configuration: { + specVersion: "2.3", + kind: "project", + type: "module", + metadata: { + name: "module.a", + copyright: "Some fancy copyright" // allowed but ignored + }, + resources: { + configuration: { + paths: { + "/": "dist", + "/dev/": "dev" + } } } } - } -}; + }; +}); test.afterEach.always((t) => { - sinon.restore(); + t.context.sinon.restore(); }); test("Correct class", async (t) => { + const {projectInput} = t.context; const {default: Module} = await import("../../../../lib/specifications/types/Module.js"); - const project = await Specification.create(basicProjectInput); + const project = await Specification.create(projectInput); t.true(project instanceof Module, `Is an instance of the Module class`); }); test("getSourcePath: Throws", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const err = t.throws(() => { project.getSourcePath(); }); @@ -54,13 +55,15 @@ test("getSourcePath: Throws", async (t) => { }); test("getNamespace", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.is(project.getNamespace(), null, "Returned no namespace"); }); test("Access project resources via reader", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.throws(() => { project.getSourcePath(); }, { @@ -69,7 +72,8 @@ test("Access project resources via reader", async (t) => { }); test("Access project resources via reader (multiple mappings)", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const reader = project.getReader(); const resource1 = await reader.byPath("/dev/devTools.js"); t.truthy(resource1, "Found the requested resource"); @@ -81,7 +85,7 @@ test("Access project resources via reader (multiple mappings)", async (t) => { }); test("Access project resources via reader (one mapping)", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; delete projectInput.configuration.resources.configuration.paths["/"]; const project = await Specification.create(projectInput); const reader = project.getReader(); @@ -93,8 +97,56 @@ test("Access project resources via reader (one mapping)", async (t) => { t.falsy(resource2, "Could not find resource in unmapped path"); }); +test("Access project resources via reader w/ builder excludes", async (t) => { + const {projectInput, sinon} = t.context; + const baselineProject = await Specification.create(projectInput); + const excludesProject = await Specification.create(projectInput); + + // As of specVersion 3.0, modules are not allowed to have a "builder.resources" configuration. + // Hence modules can't practically be configured with builder excludes. + // We still simply stub the respective API call to test the code and be prepared + // + // projectInput.configuration.builder = { + // resources: { + // excludes: ["**/devTools.js"] + // } + // }; + // So stub instead: + sinon.stub(excludesProject, "getBuilderResourcesExcludes").returns(["**/devTools.js"]); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/devTools.js")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/devTools.js")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/devTools.js")).length, 0, + "Did not find excluded resource for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/devTools.js")).length, 0, + "Did not find excluded resource for flat style"); + + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/devTools.js")).length, 1, + "Found excluded resource for runtime style"); +}); + test("Modify project resources via workspace and access via reader", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const workspace = project.getWorkspace(); const workspaceResource = await workspace.byPath("/dev/devTools.js"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -118,7 +170,8 @@ test("Modify project resources via workspace and access via reader", async (t) = }); test("Modify project resources via workspace and access via reader for other path mapping", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const workspace = project.getWorkspace(); const workspaceResource = await workspace.byPath("/index.js"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -142,7 +195,7 @@ test("Modify project resources via workspace and access via reader for other pat }); test("_configureAndValidatePaths: Default path mapping", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; projectInput.configuration.resources = {}; const project = await Specification.create(projectInput); @@ -152,7 +205,7 @@ test("_configureAndValidatePaths: Default path mapping", async (t) => { }); test("_configureAndValidatePaths: Configured path mapping", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; const project = await Specification.create(projectInput); t.is(project._paths.length, 2, "Two path mappings"); @@ -163,7 +216,7 @@ test("_configureAndValidatePaths: Configured path mapping", async (t) => { }); test("_configureAndValidatePaths: Default directory does not exist", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; projectInput.configuration.resources = {}; projectInput.modulePath = "/does/not/exist"; const err = await t.throwsAsync(Specification.create(projectInput)); @@ -172,7 +225,7 @@ test("_configureAndValidatePaths: Default directory does not exist", async (t) = }); test("_configureAndValidatePaths: Directory does not exist", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; projectInput.configuration.resources.configuration.paths.doesNotExist = "does/not/exist"; const err = await t.throwsAsync(Specification.create(projectInput)); diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js index 506ff3dcfc8..b12aa76b42c 100644 --- a/packages/project/test/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -1,60 +1,64 @@ import test from "ava"; import path from "node:path"; import {fileURLToPath} from "node:url"; -import sinon from "sinon"; +import sinonGlobal from "sinon"; import Specification from "../../../../lib/specifications/Specification.js"; -function clone(obj) { - return JSON.parse(JSON.stringify(obj)); -} - const __dirname = path.dirname(fileURLToPath(import.meta.url)); - const themeLibraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "theme.library.e"); -const basicProjectInput = { - id: "theme.library.e.id", - version: "1.0.0", - modulePath: themeLibraryEPath, - configuration: { - specVersion: "2.6", - kind: "project", - type: "theme-library", - metadata: { - name: "theme.library.e", - copyright: "Some fancy copyright" + +test.beforeEach((t) => { + t.context.sinon = sinonGlobal.createSandbox(); + t.context.projectInput = { + id: "theme.library.e.id", + version: "1.0.0", + modulePath: themeLibraryEPath, + configuration: { + specVersion: "2.6", + kind: "project", + type: "theme-library", + metadata: { + name: "theme.library.e", + copyright: "Some fancy copyright" + } } - } -}; + }; +}); test.afterEach.always((t) => { - sinon.restore(); + t.context.sinon.restore(); }); test("Correct class", async (t) => { + const {projectInput} = t.context; const {default: ThemeLibrary} = await import("../../../../lib/specifications/types/ThemeLibrary.js"); - const project = await Specification.create(basicProjectInput); + const project = await Specification.create(projectInput); t.true(project instanceof ThemeLibrary, `Is an instance of the ThemeLibrary class`); }); test("getCopyright", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.is(project.getCopyright(), "Some fancy copyright", "Copyright was read correctly"); }); test("getSourcePath", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.is(project.getSourcePath(), path.join(themeLibraryEPath, "src"), "Correct source path"); }); test("getNamespace", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.is(project.getNamespace(), null, "Returned no namespace"); }); test("Access project resources via reader", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const reader = project.getReader(); const resource = await reader.byPath("/resources/theme/library/e/themes/my_theme/.theme"); t.truthy(resource, "Found the requested resource"); @@ -62,15 +66,58 @@ test("Access project resources via reader", async (t) => { }); test("Access project test-resources via reader", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const reader = project.getReader(); const resource = await reader.byPath("/test-resources/theme/library/e/Test.html"); t.truthy(resource, "Found the requested resource"); t.is(resource.getPath(), "/test-resources/theme/library/e/Test.html", "Resource has correct path"); }); +test("Access project resources via reader w/ builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await Specification.create(projectInput); + + projectInput.configuration.builder = { + resources: { + excludes: ["**/.theme"] + } + }; + const excludesProject = await Specification.create(projectInput); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/.theme")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/.theme")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/.theme")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/.theme")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/.theme")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/.theme")).length, 0, + "Did not find excluded resource for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/.theme")).length, 1, + "Found resource in baseline project for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/.theme")).length, 0, + "Did not find excluded resource for flat style"); + + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/.theme")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/.theme")).length, 1, + "Found excluded resource for runtime style"); +}); + test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); const workspace = project.getWorkspace(); const workspaceResource = await workspace.byPath("/resources/theme/library/e/themes/my_theme/library.source.less"); t.truthy(workspaceResource, "Found resource in workspace"); @@ -96,7 +143,8 @@ test("Modify project resources via workspace and access via flat and runtime rea }); test("_configureAndValidatePaths: Default paths", async (t) => { - const project = await Specification.create(basicProjectInput); + const {projectInput} = t.context; + const project = await Specification.create(projectInput); t.is(project._srcPath, "src", "Correct default path for src"); t.is(project._testPath, "test", "Correct default path for test"); @@ -104,7 +152,7 @@ test("_configureAndValidatePaths: Default paths", async (t) => { }); test("_configureAndValidatePaths: Test directory does not exist", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; projectInput.configuration.resources = { configuration: { paths: { @@ -120,7 +168,7 @@ test("_configureAndValidatePaths: Test directory does not exist", async (t) => { }); test("_configureAndValidatePaths: Source directory does not exist", async (t) => { - const projectInput = clone(basicProjectInput); + const {projectInput} = t.context; projectInput.configuration.resources = { configuration: { paths: { From 8b4c2a059cb823f0fb7666aa357cf88b6f3a307b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Feb 2023 12:22:38 +0100 Subject: [PATCH 0848/1272] [ui5-project][FIX] graph: Always resolve rootConfigPath to CWD This should restore the v2 behavior where referencing a ui5.yaml file via the '--config' CLI parameter can always be done with a path relative to the directory the CLI has been invoked in. v3 used to pass the relative path to graph/Module which would resolve it against the module's root path (typically the location of the package.json) using @ui5/fs. This can be unexpected, for example if the CLI is invoked in a subdirectory of the module. Also, referencing configuration files outside of the module (e.g. "../ui5.yaml") was no longer possible. --- packages/project/lib/graph/graph.js | 79 +++++++++++-------- .../test/lib/graph/graph.integration.js | 22 +++--- packages/project/test/lib/graph/graph.js | 32 ++++---- .../project/test/lib/graph/graphFromObject.js | 3 +- .../test/lib/graph/graphFromStaticFile.js | 2 +- 5 files changed, 77 insertions(+), 61 deletions(-) diff --git a/packages/project/lib/graph/graph.js b/packages/project/lib/graph/graph.js index f0e10c61383..61a1c9dc3ba 100644 --- a/packages/project/lib/graph/graph.js +++ b/packages/project/lib/graph/graph.js @@ -5,25 +5,6 @@ import createWorkspace from "./helpers/createWorkspace.js"; import {getLogger} from "@ui5/logger"; const log = getLogger("generateProjectGraph"); -function resolveProjectPaths(cwd, project) { - if (!project.path) { - throw new Error(`Missing or empty attribute 'path' for project ${project.id}`); - } - project.path = path.resolve(cwd, project.path); - - if (!project.id) { - throw new Error(`Missing or empty attribute 'id' for project with path ${project.path}`); - } - if (!project.version) { - throw new Error(`Missing or empty attribute 'version' for project ${project.id}`); - } - - if (project.dependencies) { - project.dependencies.forEach((project) => resolveProjectPaths(cwd, project)); - } - return project; -} - /** * Helper module to create a [@ui5/project/graph/ProjectGraph]{@link @ui5/project/graph/ProjectGraph} * from a directory @@ -43,7 +24,8 @@ function resolveProjectPaths(cwd, project) { * @param {object} [options.rootConfiguration] * Configuration object to use for the root module instead of reading from a configuration file * @param {string} [options.rootConfigPath] - * Configuration file to use for the root module instead the default ui5.yaml + * Configuration file to use for the root module instead the default ui5.yaml. Either a path relative to + * cwd or an absolute path. In both case, platform-specific path segment separators must be used. * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project * @param {string} [options.resolveFrameworkDependencies=true] * Whether framework dependencies should be added to the graph @@ -67,6 +49,7 @@ export async function graphFromPackageDependencies({ } = await import("./providers/NodePackageDependencies.js"); cwd = cwd ? path.resolve(cwd) : process.cwd(); + rootConfigPath = utils.resolveConfigPath(cwd, rootConfigPath); let workspace; if (workspaceName || workspaceConfiguration) { @@ -106,24 +89,28 @@ export async function graphFromPackageDependencies({ * @param {object} [options.rootConfiguration] * Configuration object to use for the root module instead of reading from a configuration file * @param {string} [options.rootConfigPath] - * Configuration file to use for the root module instead the default ui5.yaml + * Configuration file to use for the root module instead the default ui5.yaml. Either a path relative to + * cwd or an absolute path. In both case, platform-specific path segment separators must be used. * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project * @param {string} [options.resolveFrameworkDependencies=true] * Whether framework dependencies should be added to the graph * @returns {Promise<@ui5/project/graph/ProjectGraph>} Promise resolving to a Project Graph instance */ export async function graphFromStaticFile({ - cwd, filePath = "projectDependencies.yaml", + filePath = "projectDependencies.yaml", cwd, rootConfiguration, rootConfigPath, versionOverride, resolveFrameworkDependencies = true }) { log.verbose(`Creating project graph using static file...`); - - const dependencyTree = await utils.readDependencyConfigFile(cwd ? path.resolve(cwd) : process.cwd(), filePath); - const { default: DependencyTreeProvider } = await import("./providers/DependencyTree.js"); + + cwd = cwd ? path.resolve(cwd) : process.cwd(); + rootConfigPath = utils.resolveConfigPath(cwd, rootConfigPath); + + const dependencyTree = await utils.readDependencyConfigFile(cwd, filePath); + const provider = new DependencyTreeProvider({ dependencyTree, rootConfiguration, @@ -148,25 +135,30 @@ export async function graphFromStaticFile({ * @static * @param {object} options * @param {@ui5/project/graph/providers/DependencyTree~TreeNode} options.dependencyTree + * @param {string} [options.cwd=process.cwd()] Directory to resolve relative paths to * @param {object} [options.rootConfiguration] * Configuration object to use for the root module instead of reading from a configuration file * @param {string} [options.rootConfigPath] - * Configuration file to use for the root module instead the default ui5.yaml + * Configuration file to use for the root module instead the default ui5.yaml. Either a path relative to + * cwd or an absolute path. In both case, platform-specific path segment separators must be used. * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project * @param {string} [options.resolveFrameworkDependencies=true] * Whether framework dependencies should be added to the graph * @returns {Promise<@ui5/project/graph/ProjectGraph>} Promise resolving to a Project Graph instance */ export async function graphFromObject({ - dependencyTree, + dependencyTree, cwd, rootConfiguration, rootConfigPath, versionOverride, resolveFrameworkDependencies = true }) { log.verbose(`Creating project graph using object...`); - const { default: DependencyTreeProvider } = await import("./providers/DependencyTree.js"); + + cwd = cwd ? path.resolve(cwd) : process.cwd(); + rootConfigPath = utils.resolveConfigPath(cwd, rootConfigPath); + const dependencyTreeProvider = new DependencyTreeProvider({ dependencyTree, rootConfiguration, @@ -183,6 +175,12 @@ export async function graphFromObject({ } const utils = { + resolveConfigPath: function(cwd, configPath) { + if (configPath && !path.isAbsolute(configPath)) { + configPath = path.join(cwd, configPath); + } + return configPath; + }, readDependencyConfigFile: async function(cwd, filePath) { const { default: fs @@ -191,9 +189,7 @@ const utils = { const readFile = promisify(fs.readFile); const parseYaml =(await import("js-yaml")).load; - if (!path.isAbsolute(filePath)) { - filePath = path.join(cwd, filePath); - } + filePath = utils.resolveConfigPath(cwd, filePath); let dependencyTree; try { @@ -201,12 +197,31 @@ const utils = { dependencyTree = parseYaml(contents, { filename: filePath }); - resolveProjectPaths(cwd, dependencyTree); + utils.resolveProjectPaths(cwd, dependencyTree); } catch (err) { throw new Error( `Failed to load dependency tree configuration from path ${filePath}: ${err.message}`); } return dependencyTree; + }, + + resolveProjectPaths: function(cwd, project) { + if (!project.path) { + throw new Error(`Missing or empty attribute 'path' for project ${project.id}`); + } + project.path = path.resolve(cwd, project.path); + + if (!project.id) { + throw new Error(`Missing or empty attribute 'id' for project with path ${project.path}`); + } + if (!project.version) { + throw new Error(`Missing or empty attribute 'version' for project ${project.id}`); + } + + if (project.dependencies) { + project.dependencies.forEach((project) => utils.resolveProjectPaths(cwd, project)); + } + return project; } }; diff --git a/packages/project/test/lib/graph/graph.integration.js b/packages/project/test/lib/graph/graph.integration.js index 4f27781e942..8aa4d2a208b 100644 --- a/packages/project/test/lib/graph/graph.integration.js +++ b/packages/project/test/lib/graph/graph.integration.js @@ -47,7 +47,7 @@ test.serial("graphFromPackageDependencies with workspace object", async (t) => { const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceConfiguration: { specVersion: "workspace/1.0", @@ -68,7 +68,7 @@ test.serial("graphFromPackageDependencies with workspace object", async (t) => { t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { cwd: path.join(__dirname, "..", "..", "..", "cwd"), rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); @@ -96,7 +96,7 @@ test.serial("graphFromPackageDependencies with workspace object and workspace na const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "dolphin", workspaceConfiguration: { @@ -118,7 +118,7 @@ test.serial("graphFromPackageDependencies with workspace object and workspace na t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { cwd: path.join(__dirname, "..", "..", "..", "cwd"), rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); @@ -142,7 +142,7 @@ test.serial("graphFromPackageDependencies with workspace object not matching wor await t.throwsAsync(graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "other", workspaceConfiguration: { @@ -171,7 +171,7 @@ test.serial("graphFromPackageDependencies with workspace file", async (t) => { const res = await graphFromPackageDependencies({ cwd: libraryHPath, rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "default", }); @@ -182,7 +182,7 @@ test.serial("graphFromPackageDependencies with workspace file", async (t) => { t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { cwd: libraryHPath, rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath" + rootConfigPath: "/rootConfigPath" }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); @@ -210,7 +210,7 @@ test.serial("graphFromPackageDependencies with workspace file at custom path", a const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "default", workspaceConfigPath: path.join(libraryHPath, "ui5-workspace.yaml") @@ -222,7 +222,7 @@ test.serial("graphFromPackageDependencies with workspace file at custom path", a t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { cwd: path.join(__dirname, "..", "..", "..", "cwd"), rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath" + rootConfigPath: "/rootConfigPath" }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); @@ -250,7 +250,7 @@ test.serial("graphFromPackageDependencies with inactive workspace file at custom const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "default", workspaceConfigPath: path.join(libraryHPath, "custom-ui5-workspace.yaml") @@ -262,7 +262,7 @@ test.serial("graphFromPackageDependencies with inactive workspace file at custom t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { cwd: path.join(__dirname, "..", "..", "..", "cwd"), rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath" + rootConfigPath: "/rootConfigPath" }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); diff --git a/packages/project/test/lib/graph/graph.js b/packages/project/test/lib/graph/graph.js index e5bf55fadcc..2ed052c2977 100644 --- a/packages/project/test/lib/graph/graph.js +++ b/packages/project/test/lib/graph/graph.js @@ -56,7 +56,7 @@ test.serial("graphFromPackageDependencies", async (t) => { const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride" }); @@ -67,7 +67,7 @@ test.serial("graphFromPackageDependencies", async (t) => { t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { cwd: path.join(__dirname, "..", "..", "..", "cwd"), rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath" + rootConfigPath: "/rootConfigPath" }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); @@ -95,7 +95,7 @@ test.serial("graphFromPackageDependencies with workspace name", async (t) => { const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "dolphin", }); @@ -114,7 +114,7 @@ test.serial("graphFromPackageDependencies with workspace name", async (t) => { t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { cwd: path.join(__dirname, "..", "..", "..", "cwd"), rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); @@ -141,7 +141,7 @@ test.serial("graphFromPackageDependencies with workspace object", async (t) => { const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceConfiguration: "workspaceConfiguration" }); @@ -166,7 +166,7 @@ test.serial("graphFromPackageDependencies with workspace object and workspace na const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "dolphin", workspaceConfiguration: "workspaceConfiguration" @@ -192,7 +192,7 @@ test.serial("graphFromPackageDependencies with workspace path and workspace name const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "dolphin", workspaceConfigPath: "workspaceConfigurationPath" @@ -222,7 +222,7 @@ test.serial("graphFromPackageDependencies with empty workspace", async (t) => { const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "dolphin", }); @@ -241,7 +241,7 @@ test.serial("graphFromPackageDependencies with empty workspace", async (t) => { t.deepEqual(npmProviderConstructorStub.getCall(0).args[0], { cwd: path.join(__dirname, "..", "..", "..", "cwd"), rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); @@ -266,7 +266,7 @@ test.serial("graphFromPackageDependencies: Do not resolve framework dependencies const res = await graphFromPackageDependencies({ cwd: "cwd", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", resolveFrameworkDependencies: false }); @@ -289,7 +289,7 @@ test.serial("graphFromStaticFile", async (t) => { cwd: "cwd", filePath: "file/path", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride" }); @@ -305,7 +305,7 @@ test.serial("graphFromStaticFile", async (t) => { t.deepEqual(dependencyTreeProviderStub.getCall(0).args[0], { dependencyTree: "dependencyTree", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); @@ -331,7 +331,7 @@ test.serial("graphFromStaticFile: Do not resolve framework dependencies", async cwd: "cwd", filePath: "filePath", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", resolveFrameworkDependencies: false }); @@ -350,7 +350,7 @@ test.serial("usingObject", async (t) => { const res = await graphFromObject({ dependencyTree: "dependencyTree", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride" }); @@ -360,7 +360,7 @@ test.serial("usingObject", async (t) => { t.deepEqual(dependencyTreeProviderStub.getCall(0).args[0], { dependencyTree: "dependencyTree", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", }, "Created NodePackageDependencies provider instance with correct parameters"); t.is(projectGraphBuilderStub.callCount, 1, "projectGraphBuilder got called once"); @@ -382,7 +382,7 @@ test.serial("usingObject: Do not resolve framework dependencies", async (t) => { cwd: "cwd", filePath: "filePath", rootConfiguration: "rootConfiguration", - rootConfigPath: "rootConfigPath", + rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", resolveFrameworkDependencies: false }); diff --git a/packages/project/test/lib/graph/graphFromObject.js b/packages/project/test/lib/graph/graphFromObject.js index 51979d53bfb..866fd58590d 100644 --- a/packages/project/test/lib/graph/graphFromObject.js +++ b/packages/project/test/lib/graph/graphFromObject.js @@ -1655,7 +1655,8 @@ test("rootConfig", async (t) => { const {graphFromObject} = t.context; const projectGraph = await graphFromObject({ dependencyTree: getApplicationATree(), - rootConfigPath: "ui5-test-configPath.yaml" + cwd: applicationAPath, + rootConfigPath: "ui5-test-configPath.yaml", }); t.deepEqual(projectGraph.getRoot().getCustomConfiguration(), { configPathTest: true diff --git a/packages/project/test/lib/graph/graphFromStaticFile.js b/packages/project/test/lib/graph/graphFromStaticFile.js index a16e560e9c7..67951b25775 100644 --- a/packages/project/test/lib/graph/graphFromStaticFile.js +++ b/packages/project/test/lib/graph/graphFromStaticFile.js @@ -105,7 +105,7 @@ test("rootConfiguration", async (t) => { test("rootConfig", async (t) => { const projectGraph = await graphFromStaticFile({ cwd: applicationHPath, - rootConfigPath: "ui5-test-configPath.yaml" + rootConfigPath: "../application.a/ui5-test-configPath.yaml" }); t.deepEqual(projectGraph.getRoot().getCustomConfiguration(), { configPathTest: true From 9ecf6f8e7e191372cba61be856daeef596b40a8d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 14 Feb 2023 14:21:33 +0100 Subject: [PATCH 0849/1272] [ui5-project][FIX] projectGraphBuilder: Apply extensions of the same module only once The same module will be processed every time another module depends on it. This change ensures that any extensions contained in the module will only be applied once and only if the dependency is non-optional or if the parent project is the root project. Fixes https://github.com/SAP/ui5-tooling/issues/777 --- .../project/lib/graph/projectGraphBuilder.js | 37 +- .../project/test/lib/graph/graphFromObject.js | 5 +- .../graph/helpers/ui5Framework.integration.js | 1 + .../test/lib/graph/projectGraphBuilder.js | 392 +++++++++++++++++- 4 files changed, 424 insertions(+), 11 deletions(-) diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index 0277ca1d15c..b44dd881489 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -104,6 +104,7 @@ function validateNode(node) { async function projectGraphBuilder(nodeProvider, workspace) { const shimCollection = new ShimCollection(); const moduleCollection = Object.create(null); + const handledExtensions = new Set(); // Set containing the IDs of modules which' extensions have been handled const rootNode = await nodeProvider.getRootNode(); validateNode(rootNode); @@ -142,6 +143,7 @@ async function projectGraphBuilder(nodeProvider, workspace) { } handleExtensions(rootExtensions); + handledExtensions.add(rootNode.id); const queue = []; @@ -160,6 +162,7 @@ async function projectGraphBuilder(nodeProvider, workspace) { const res = await Promise.all(nodes.map(async (node) => { let ui5Module = moduleCollection[node.id]; if (!ui5Module) { + log.silly(`Visiting Module ${node.id} as a dependency of ${parentProject.getName()}`); log.verbose(`Creating module ${node.id}...`); validateNode(node); ui5Module = moduleCollection[node.id] = new Module({ @@ -170,11 +173,15 @@ async function projectGraphBuilder(nodeProvider, workspace) { configuration: node.configuration, shimCollection }); - } else if (ui5Module.getPath() !== node.path) { - log.verbose( - `Possible inconsistency detected: Dependency ${node.id} is available at multiple paths:` + - `\nLocation of the already added module (this one will be used): ${ui5Module.getPath()}` + - `\nAdditional location (this one will be ignored): ${node.path}`); + } else { + log.silly( + `Re-visiting module ${node.id} as a dependency of ${parentProject.getName()}`); + if (ui5Module.getPath() !== node.path) { + log.verbose( + `Warning - Dependency ${node.id} is available at multiple paths:` + + `\n Location of the already processed module (this one will be used): ${ui5Module.getPath()}` + + `\n Additional location (this one will be ignored): ${node.path}`); + } } const {project, extensions} = await ui5Module.getSpecifications(); @@ -194,7 +201,18 @@ async function projectGraphBuilder(nodeProvider, workspace) { extensions // Any extensions found for this node } = res[i]; - handleExtensions(extensions); + if (extensions.length && (!node.optional || parentProject === rootProject)) { + // Only handle extensions in non-optional dependencies and any dependencies of the root project + if (handledExtensions.has(node.id)) { + // Do not handle extensions of the same module twice + log.verbose(`Extensions contained in module ${node.id} have already been handled`); + } else { + log.verbose(`Handling extensions for module ${node.id}...`); + // If a different module contains the same extension, we expect an error to be thrown by the graph + handleExtensions(extensions); + handledExtensions.add(node.id); + } + } // Check for collection shims const collectionShims = shimCollection.getCollectionShims(node.id); @@ -223,6 +241,7 @@ async function projectGraphBuilder(nodeProvider, workspace) { // Skip collection node continue; } + let skipDependencies = false; if (project) { const projectName = project.getName(); @@ -248,6 +267,10 @@ async function projectGraphBuilder(nodeProvider, workspace) { } } if (projectGraph.getProject(projectName)) { + // Opposing to extensions, we are generally fine with the same project being contained in different + // modules. We simply ignore all but the first occurrence. + // This can happen for example if the same project is packaged in different ways/modules + // (e.g. one module containing the source and one containing the pre-built resources) log.verbose( `Project ${projectName} has already been added to the graph. ` + `Skipping dependency resolution...`); @@ -283,7 +306,7 @@ async function projectGraphBuilder(nodeProvider, workspace) { } if (!project && !extensions.length) { - // Module provided neither a project nor an extension + // Module provides neither a project nor an extension // => Do not follow its dependencies log.verbose( `Module ${node.id} neither provides a project nor an extension. Skipping dependency resolution`); diff --git a/packages/project/test/lib/graph/graphFromObject.js b/packages/project/test/lib/graph/graphFromObject.js index 866fd58590d..db562bd4709 100644 --- a/packages/project/test/lib/graph/graphFromObject.js +++ b/packages/project/test/lib/graph/graphFromObject.js @@ -24,10 +24,11 @@ test.beforeEach(async (t) => { const sinon = t.context.sinon = sinonGlobal.createSandbox(); t.context.log = { - warn: sinon.stub(), - verbose: sinon.stub(), error: sinon.stub(), + warn: sinon.stub(), info: sinon.stub(), + verbose: sinon.stub(), + silly: sinon.stub(), isLevelEnabled: () => true }; diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index 525366e0e72..132c5846179 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -19,6 +19,7 @@ test.beforeEach(async (t) => { t.context.logStub = { info: sinon.stub(), verbose: sinon.stub(), + silly: sinon.stub(), isLevelEnabled: sinon.stub().returns(false), _getLogger: sinon.stub() }; diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index df042ec74be..eacc1caabdf 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -8,9 +8,12 @@ import projectGraphBuilder from "../../../lib/graph/projectGraphBuilder.js"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); const libraryEPath = path.join(__dirname, "..", "..", "fixtures", "library.e"); +const libraryFPath = path.join(__dirname, "..", "..", "fixtures", "library.f"); +const libraryGPath = path.join(__dirname, "..", "..", "fixtures", "library.g"); const collectionPath = path.join(__dirname, "..", "..", "fixtures", "collection"); +const nonExistingPath = path.join(__dirname, "..", "..", "fixtures", "does-not-exist"); -function createNode({id, name, version = "1.0.0", modulePath, configuration}) { +function createNode({id, name, version = "1.0.0", modulePath, optional, configuration}) { if (!Array.isArray(configuration)) { configuration = Object.assign({ specVersion: "2.6", @@ -24,6 +27,7 @@ function createNode({id, name, version = "1.0.0", modulePath, configuration}) { id, version, path: modulePath || libraryEPath, + optional, configuration }; } @@ -120,6 +124,7 @@ test.serial("Correct warnings logged", async (t) => { .withArgs("graph:projectGraphBuilder").returns({ warn: logWarnStub, verbose: () => "", + silly: () => "", }) } }); @@ -169,6 +174,7 @@ test.serial("No warnings logged", async (t) => { .withArgs("graph:projectGraphBuilder").returns({ warn: logWarnStub, verbose: () => "", + silly: () => "", }) } }); @@ -272,7 +278,7 @@ test("Cyclic dependencies", async (t) => { t.deepEqual(graph.getDependencies("project-2"), ["project-1"], "Cyclic dependency has been added"); }); -test("Nested node with same id is ignored", async (t) => { +test("Nested node with same id is processed correctly", async (t) => { t.context.getRootNode.resolves(createNode({ id: "id1", name: "project-1" @@ -296,6 +302,153 @@ test("Nested node with same id is ignored", async (t) => { t.deepEqual(graph.getDependencies("project-2"), ["project-1"], "Cyclic dependency has been added"); }); +test("Nested node with different id but same project is processed correctly", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([ + createNode({ + id: "id2", + name: "project-2", + modulePath: libraryFPath + }), + ]); + t.context.getDependencies.onSecondCall().resolves([ + createNode({ + id: "id3", + name: "project-1", // Project is already in the graph and won't be added again + modulePath: libraryGPath + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + const p = graph.getProject("project-1"); + t.is(p.getRootPath(), libraryEPath, "Project returned correct path"); + t.deepEqual(graph.getDependencies("project-2"), ["project-1"], "Cyclic dependency has been added"); +}); + +test("Unresolved optional dependency", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([ + // Deps of id1 + createNode({ + id: "id2", + name: "project-2", + optional: true + }), + createNode({ + id: "id3", + name: "project-3" + }), + ]); + t.context.getDependencies.onSecondCall().resolves([ + // Deps of id2 + createNode({ + id: "id4", + name: "project-4" + }), + ]); + t.context.getDependencies.onThirdCall().resolves([ + // Deps of id3 + createNode({ + id: "id2", + name: "project-2", + optional: true + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + const p = graph.getProject("project-1"); + t.is(p.getRootPath(), libraryEPath, "Project returned correct path"); + t.deepEqual(graph.getDependencies("project-1"), ["project-3"], "Correct dependencies for project-1"); + t.deepEqual(graph.getDependencies("project-2"), ["project-4"], "Correct dependencies for project-2"); + t.deepEqual(graph.getDependencies("project-3"), [], "Correct dependencies for project-3"); +}); + +test("Nested node with same project resolves optional dependency", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([ + // Deps of id1 + createNode({ + id: "id2", + name: "project-2", + optional: true + }), + createNode({ + id: "id3", + name: "project-3" + }), + ]); + t.context.getDependencies.onSecondCall().resolves([ + // Deps of id2 + createNode({ + id: "id4", + name: "project-4" + }), + ]); + t.context.getDependencies.onThirdCall().resolves([ + // Deps of id3 + createNode({ + // non-optional dependency to id2/project-2 + id: "id2", + name: "project-2", + modulePath: libraryGPath // Different path but same module id should be ignored (first module is reused) + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + const p = graph.getProject("project-1"); + t.is(p.getRootPath(), libraryEPath, "Project returned correct path"); + t.deepEqual(graph.getDependencies("project-1"), ["project-3", "project-2"], "Correct dependencies for project-1"); + t.deepEqual(graph.getDependencies("project-2"), ["project-4"], "Correct dependencies for project-2"); + t.deepEqual(graph.getDependencies("project-3"), ["project-2"], "Correct dependencies for project-3"); +}); + +test("Nested node with different id but same project resolves optional dependency", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([ + // Deps of id1 + createNode({ + id: "id2", + name: "project-2", + optional: true + }), + createNode({ + id: "id3", + name: "project-3" + }), + ]); + t.context.getDependencies.onSecondCall().resolves([ + // Deps of id2 + createNode({ + id: "id4", + name: "project-4" + }), + ]); + t.context.getDependencies.onThirdCall().resolves([ + // Deps of id3 + createNode({ + // non-optional dependency to project-2 + id: "id5", // Different module but same project should still resolve the optional dependency + name: "project-2", + modulePath: libraryGPath + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + const p = graph.getProject("project-1"); + t.is(p.getRootPath(), libraryEPath, "Project returned correct path"); + t.deepEqual(graph.getDependencies("project-1"), ["project-3", "project-2"], "Correct dependencies for project-1"); + t.deepEqual(graph.getDependencies("project-2"), ["project-4"], "Correct dependencies for project-2"); + t.deepEqual(graph.getDependencies("project-3"), ["project-2"], "Correct dependencies for project-3"); +}); + test("Root node must provide a project", async (t) => { t.context.getRootNode.resolves(createNode({ id: "id1", @@ -520,3 +673,238 @@ test("Dependencies defined through shim", async (t) => { const graph = await projectGraphBuilder(t.context.provider); t.deepEqual(graph.getDependencies("project-3"), ["project-2"], "Shimmed dependency has been defined"); }); + +test("Extension in dependencies", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([ + createNode({ + id: "id2", + modulePath: libraryEPath, + configuration: { + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "task-a.js" + } + } + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + t.truthy(graph.getExtension("task-a"), "Extension has been added to the graph"); +}); + +test("Extension is an optional dependency of the root project", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([ + createNode({ + id: "id2", + modulePath: libraryEPath, + optional: true, + configuration: { + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "task-a.js" + } + } + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + t.truthy(graph.getExtension("task-a"), "Extension has been added to the graph"); +}); + +test("Extension is an optional dependency of a non-root project", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([createNode({ + id: "id2", + name: "project-2" + })]); + t.context.getDependencies.onSecondCall().resolves([ + createNode({ + id: "id3", + modulePath: libraryEPath, + optional: true, + configuration: { + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "task-a.js" + } + } + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + t.falsy(graph.getExtension("task-a"), "Extension has not been added to the graph"); +}); + +test("Extension is an optional dependency of a non-root project and is not available", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([createNode({ + id: "id2", + name: "project-2" + })]); + t.context.getDependencies.onSecondCall().resolves([ + createNode({ + id: "id3", + modulePath: nonExistingPath, // Module is not installed (transitive devDependency) + optional: true, + configuration: [] + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + t.falsy(graph.getExtension("task-a"), "Extension has not been added to the graph"); +}); + +test("Extension is a partially optional dependency of a non-root project", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([createNode({ + id: "id2", + name: "project-2" + }), createNode({ + id: "id3", + name: "project-3" + })]); + t.context.getDependencies.onSecondCall().resolves([ + // Deps of id2 + createNode({ + id: "id4", + modulePath: libraryEPath, + optional: true, + configuration: { + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "task-a.js" + } + } + }), + ]); + t.context.getDependencies.onThirdCall().resolves([ + // Deps of id3 + createNode({ + id: "id4", // Will reuse the already visited id4 module + optional: false, // Will cause the extension to be added + modulePath: libraryEPath + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + t.truthy(graph.getExtension("task-a"), "Extension has been added to the graph"); +}); + +test("Multiple dependencies to same module containing an extension", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([createNode({ + id: "id2", + name: "project-2" + }), createNode({ + id: "id3", + name: "project-3" + })]); + t.context.getDependencies.onSecondCall().resolves([ + // Deps of id2 + createNode({ + id: "id4", + modulePath: libraryEPath, + configuration: { + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "task-a.js" + } + } + }), + ]); + t.context.getDependencies.onThirdCall().resolves([ + // Deps of id3 + createNode({ + id: "id4", // Will reuse the already visited id4 module + modulePath: libraryEPath + }), + ]); + const graph = await projectGraphBuilder(t.context.provider); + t.truthy(graph.getExtension("task-a"), "Extension has been added to the graph"); +}); + +test("Multiple dependencies to different module containing the same extension", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "id1", + name: "project-1" + })); + t.context.getDependencies.onFirstCall().resolves([createNode({ + id: "id2", + name: "project-2" + }), createNode({ + id: "id3", + name: "project-3" + })]); + t.context.getDependencies.onSecondCall().resolves([ + // Deps of id2 + createNode({ + id: "id4", + modulePath: libraryEPath, + configuration: { + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "task-a.js" + } + } + }), + ]); + t.context.getDependencies.onThirdCall().resolves([ + // Deps of id3 + createNode({ + id: "id5", + modulePath: libraryEPath, + configuration: { + kind: "extension", + type: "task", + metadata: { + name: "task-a" + }, + task: { + path: "task-a.js" + } + } + }), + ]); + await t.throwsAsync(projectGraphBuilder(t.context.provider), { + message: "Failed to add extension task-a to graph: An extension with that name has already been added" + }); +}); From 692ce0684a89497b0cb733160a8f0c338f74811d Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 14 Feb 2023 17:08:30 +0100 Subject: [PATCH 0850/1272] [ui5-project][FIX] Prevent socket timeouts when installing framework libraries --- packages/project/lib/ui5Framework/npm/Registry.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index 83833ec41ee..5c6119294d5 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -39,7 +39,13 @@ class Registry { if (!this._npmConfig) { const {default: libnpmconfig} = await import("libnpmconfig"); const opts = { - cache: this._cacheDir + cache: this._cacheDir, + // Disable usage of shared keep-alive agents. + // make-fetch-happen uses a hard-coded 15 seconds freeSocketTimeout + // that can be easily reached (Error: Socket timeout) and there doesn't + // seem to be another way to disable or increase it. + // Also see: https://github.com/node-modules/agentkeepalive/issues/106 + agent: false, }; const config = libnpmconfig.read(opts, { cwd: this._cwd From 4d733543c56f7d64293764162d850c34bfba863e Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 15 Feb 2023 14:38:09 +0100 Subject: [PATCH 0851/1272] [ui5-project][INTERNAL] Add new unit test for npm/Registry.js --- .../test/lib/ui5framework/npm/Registry.js | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 packages/project/test/lib/ui5framework/npm/Registry.js diff --git a/packages/project/test/lib/ui5framework/npm/Registry.js b/packages/project/test/lib/ui5framework/npm/Registry.js new file mode 100644 index 00000000000..4e7d54aa766 --- /dev/null +++ b/packages/project/test/lib/ui5framework/npm/Registry.js @@ -0,0 +1,96 @@ +import test from "ava"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; + +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.pacote = { + packument: sinon.stub(), + manifest: sinon.stub(), + extract: sinon.stub(), + }; + + t.context.libnpmconfigReadToJSON = sinon.stub(); + t.context.libnpmconfig = { + read: sinon.stub().returns({ + toJSON: t.context.libnpmconfigReadToJSON + }) + }; + + t.context.Registry = await esmock.p("../../../../lib/ui5Framework/npm/Registry.js", { + "pacote": { + default: t.context.pacote + }, + "libnpmconfig": t.context.libnpmconfig + }); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); + esmock.purge(t.context.Registry); +}); + +test.serial("Constructor", (t) => { + const {Registry} = t.context; + + const registry = new Registry({ + cwd: "cwd", + cacheDir: "cacheDir" + }); + + t.true(registry instanceof Registry); +}); + +test.serial("_getPacoteOptions", async (t) => { + const {Registry, libnpmconfig, libnpmconfigReadToJSON} = t.context; + + const registry = new Registry({ + cwd: "cwd", + cacheDir: "cacheDir" + }); + + const npmConfig = { + "fake": "config" + }; + + libnpmconfigReadToJSON.returns(npmConfig); + + const pacoteOptions = await registry._getPacoteOptions(); + + t.is(libnpmconfigReadToJSON.callCount, 1); + t.is(libnpmconfig.read.callCount, 1); + t.deepEqual(libnpmconfig.read.getCall(0).args, [{ + cache: "cacheDir", + agent: false + }, { + cwd: "cwd" + }]); + + t.is(pacoteOptions, npmConfig); + + const cachedPacoteOptions = await registry._getPacoteOptions(); + + t.is(libnpmconfigReadToJSON.callCount, 1); + t.is(libnpmconfig.read.callCount, 1); + + t.is(cachedPacoteOptions, npmConfig); +}); + +test.serial("_getPacote", async (t) => { + const {Registry, sinon} = t.context; + + const registry = new Registry({ + cwd: "cwd", + cacheDir: "cacheDir" + }); + + const expectedPacoteOptions = {"fake": "options"}; + + sinon.stub(registry, "_getPacoteOptions").resolves(expectedPacoteOptions); + + const {pacote, pacoteOptions} = await registry._getPacote(); + + t.is(pacote, t.context.pacote); + t.is(pacoteOptions, expectedPacoteOptions); +}); From 2d51bb73911aee0220272a1fd452e9b2036278d0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 15 Feb 2023 15:05:07 +0100 Subject: [PATCH 0852/1272] [ui5-project][FIX] Library: Do not throw for missing .library file Copyright determination should not enforce the existence of a .library file. This restores the v2 behavior where a failed copyright determination did not cause an exception: https://github.com/SAP/ui5-builder/blob/5846c4dfe3bb45e8e61b0458520787211438d872/lib/types/library/LibraryFormatter.js#L56-L58 --- .../lib/specifications/types/Library.js | 29 ++++++++++++------- .../test/lib/specifications/types/Library.js | 11 ++++--- 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index 7fa079e47f0..064568570bd 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -175,6 +175,8 @@ class Library extends ComponentProject { } if (this.isFrameworkProject()) { + // Only framework projects are allowed to provide preload-excludes in their .library file, + // and only if it is not already defined in the ui5.yaml if (config.builder?.libraryPreload?.excludes) { this._log.verbose( `Using preload excludes for framework library ${this.getName()} from project configuration`); @@ -393,17 +395,24 @@ class Library extends ComponentProject { * @returns {string|null} Copyright of the project */ async _getCopyrightFromDotLibrary() { - // If no copyright replacement was provided by ui5.yaml, - // check if the .library file has a valid copyright replacement - const {content: dotLibrary, filePath} = await this._getDotLibrary(); - if (dotLibrary?.library?.copyright?._) { - this._log.verbose( - `Using copyright from ${filePath} for project ${this.getName()}...`); - return dotLibrary.library.copyright._; - } else { + try { + // If no copyright replacement was provided by ui5.yaml, + // check if the .library file has a valid copyright replacement + const {content: dotLibrary, filePath} = await this._getDotLibrary(); + if (dotLibrary?.library?.copyright?._) { + this._log.verbose( + `Using copyright from ${filePath} for project ${this.getName()}...`); + return dotLibrary.library.copyright._; + } else { + this._log.verbose( + `No copyright configuration found in ${filePath} ` + + `of project ${this.getName()}`); + return null; + } + } catch (err) { this._log.verbose( - `No copyright configuration found in ${filePath} ` + - `of project ${this.getName()}`); + `Copyright determination from .library failed for project ` + + `${this.getName()}: ${err.message}`); return null; } } diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index 5521bf8cc1c..b978ad8355b 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -1066,8 +1066,8 @@ test("_getNamespace: from library.js", async (t) => { const {projectInput, sinon} = t.context; const project = await (new Library().init(projectInput)); - sinon.stub(project, "_getManifest").resolves({}); - sinon.stub(project, "_getDotLibrary").resolves({}); + sinon.stub(project, "_getManifest").resolves({}); // Empty result or exception should not matter + sinon.stub(project, "_getDotLibrary").rejects(new Error("Because bird")); sinon.stub(project, "_getLibraryJsPath").resolves("/my/namespace/library.js"); const res = await project._getNamespace(); t.is(res, "my/namespace", "Returned correct namespace"); @@ -1168,15 +1168,14 @@ test("_getCopyrightFromDotLibrary: No copyright in .library file", async (t) => t.is(copyright, null, "No copyright returned"); }); -test("_getCopyrightFromDotLibrary: Propagates exception", async (t) => { +test("_getCopyrightFromDotLibrary: Does not propagate exception", async (t) => { const {projectInput, sinon} = t.context; const project = await (new Library().init(projectInput)); sinon.stub(project, "_getDotLibrary").rejects(new Error("because shark")); - const err = await t.throwsAsync(project._getCopyrightFromDotLibrary()); - t.is(err.message, "because shark", - "Threw with excepted error message"); + const res = await project._getCopyrightFromDotLibrary(); + t.is(res, null, "Returned with null"); }); test("_getPreloadExcludesFromDotLibrary: Single exclude", async (t) => { From 0fe37ba67e6e741d20f5ccf3818ea37e701d2140 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 16 Feb 2023 11:27:12 +0100 Subject: [PATCH 0853/1272] [ui5-project][FIX] TaskUtil: Provide framework configuration getters to custom tasks (#580) --- .../project/lib/build/helpers/TaskUtil.js | 6 +++- .../project/lib/specifications/Project.js | 30 +++++++++++++------ .../test/lib/build/helpers/TaskUtil.js | 13 +++++++- 3 files changed, 38 insertions(+), 11 deletions(-) diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index 11325344a7e..d73864294e2 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -195,6 +195,9 @@ class TaskUtil { * @property {Function} getSourcePath Get the local File System path of the project's source directory * @property {Function} getCustomConfiguration Get the project Custom Configuration * @property {Function} isFrameworkProject Check whether the project is a UI5-Framework project + * @property {Function} getFrameworkName Get the project's framework name configuration + * @property {Function} getFrameworkVersion Get the project's framework version configuration + * @property {Function} getFrameworkDependencies Get the project's framework dependencies configuration */ /** @@ -312,7 +315,8 @@ class TaskUtil { bindFunctions(project, baseProjectInterface, [ "getType", "getName", "getVersion", "getNamespace", "getRootReader", "getReader", "getRootPath", "getSourcePath", - "getCustomConfiguration", "isFrameworkProject" + "getCustomConfiguration", "isFrameworkProject", "getFrameworkName", + "getFrameworkVersion", "getFrameworkDependencies" ]); return baseProjectInterface; }; diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index a948d9a00e6..cdb236baec0 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -87,30 +87,42 @@ class Project extends Specification { } /** - * Get the project's frameworkName configuration + * Get the project's framework name configuration * - * @private - * @returns {string} FrameworkName configuration + * @public + * @returns {string} Framework name configuration, either OpenUI5 or SAPUI5 */ getFrameworkName() { return this._config.framework?.name; } /** - * Get the project's frameworkVersion configuration + * Get the project's framework version configuration * - * @private - * @returns {string} FrameworkVersion configuration + * @public + * @returns {string} Framework version configuration, e.g 1.110.0 */ getFrameworkVersion() { return this._config.framework?.version; } + /** - * Get the project's frameworkDependencies configuration + * Framework dependency entry of the project configuration. + * Also see [Framework Configuration: Dependencies]{@link https://sap.github.io/ui5-tooling/stable/pages/Configuration/#dependencies} * - * @private - * @returns {object[]} FrameworkDependencies configuration + * @public + * @typedef {object} @ui5/project/specifications/Project~FrameworkDependency + * @property {string} name Name of the framework library. For example sap.ui.core + * @property {boolean} development Whether the dependency is meant for development purposes only + * @property {boolean} optional Whether the dependency should be treated as optional + */ + + /** + * Get the project's framework dependencies configuration + * + * @public + * @returns {@ui5/project/specifications/Project~FrameworkDependency[]} Framework dependencies configuration */ getFrameworkDependencies() { return this._config.framework?.libraries || []; diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index 68aa5b583bd..fbab8795846 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -415,8 +415,10 @@ test("getInterface: specVersion 3.0", (t) => { getSourcePath: () => "sourcePath", getCustomConfiguration: () => "customConfiguration", isFrameworkProject: () => "isFrameworkProject", + getFrameworkVersion: () => "frameworkVersion", + getFrameworkName: () => "frameworkName", + getFrameworkDependencies: () => ["frameworkDependencies"], hasBuildManifest: () => "hasBuildManifest", // Should not be exposed - getFrameworkVersion: () => "frameworkVersion", // Should not be exposed }); const getDependenciesStub = sinon.stub().returns(["dep a", "dep b"]); @@ -462,6 +464,9 @@ test("getInterface: specVersion 3.0", (t) => { "getSourcePath", "getCustomConfiguration", "isFrameworkProject", + "getFrameworkName", + "getFrameworkVersion", + "getFrameworkDependencies", ], "Correct methods are provided"); t.is(interfacedProject.getType(), "type", "getType function is bound correctly"); @@ -476,6 +481,12 @@ test("getInterface: specVersion 3.0", (t) => { "getCustomConfiguration function is bound correctly"); t.is(interfacedProject.isFrameworkProject(), "isFrameworkProject", "isFrameworkProject function is bound correctly"); + t.is(interfacedProject.getFrameworkVersion(), "frameworkVersion", + "getFrameworkVersion function is bound correctly"); + t.is(interfacedProject.getFrameworkName(), "frameworkName", + "getFrameworkName function is bound correctly"); + t.deepEqual(interfacedProject.getFrameworkDependencies(), ["frameworkDependencies"], + "getFrameworkDependencies function is bound correctly"); // getDependencies t.deepEqual(interfacedTaskUtil.getDependencies("pony"), ["dep a", "dep b"], From 380b0061df7b52547ad3f269ac33eb52d3c9b60e Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 14 Feb 2023 14:54:15 +0100 Subject: [PATCH 0854/1272] [ui5-project][FIX] ui5Framework: Improve error handling for duplicate lib declaration Fixes: https://github.com/SAP/ui5-tooling/issues/780 --- .../project/lib/graph/helpers/ui5Framework.js | 18 +++ .../test/lib/graph/helpers/ui5Framework.js | 139 ++++++++++++++++++ 2 files changed, 157 insertions(+) diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 01f51036466..86a89e4365e 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -192,6 +192,22 @@ const utils = { }); await projectGraph.resolveOptionalDependencies(); }, + checkForDuplicateFrameworkProjects(projectGraph, frameworkGraph) { + // Check for duplicate framework libraries + const projectGraphProjectNames = projectGraph.getProjectNames(); + const duplicateFrameworkProjectNames = frameworkGraph.getProjectNames() + .filter((name) => projectGraphProjectNames.includes(name)); + + if (duplicateFrameworkProjectNames.length) { + throw new Error( + `Duplicate framework library definition(s) found in project ${projectGraph.getRoot().getName()}: ` + + `${duplicateFrameworkProjectNames.join(", ")}. ` + + `Framework libraries should only be referenced via ui5.yaml configuration, ` + + `not in its dependencies (e.g. package.json). ` + + `Note that this error could also come from transitive dependencies.` + ); + } + }, ProjectProcessor }; @@ -313,6 +329,8 @@ export default { await projectProcessor.addProjectToGraph(libName); })); + utils.checkForDuplicateFrameworkProjects(projectGraph, frameworkGraph); + log.verbose("Joining framework graph into project graph..."); projectGraph.join(frameworkGraph); await utils.declareFrameworkDependenciesInGraph(projectGraph); diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index f40a6aae4b5..a1a3e91631a 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -5,6 +5,7 @@ import sinonGlobal from "sinon"; import esmock from "esmock"; import DependencyTreeProvider from "../../../../lib/graph/providers/DependencyTree.js"; import projectGraphBuilder from "../../../../lib/graph/projectGraphBuilder.js"; +import Specification from "../../../../lib/specifications/Specification.js"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); @@ -27,6 +28,8 @@ test.beforeEach(async (t) => { getLogger: sinon.stub().returns(t.context.log) }; + t.context.Openui5ResolverStub = sinon.stub(); + t.context.Sapui5ResolverStub = sinon.stub(); t.context.Sapui5ResolverInstallStub = sinon.stub(); t.context.Sapui5ResolverStub.callsFake(() => { @@ -480,6 +483,84 @@ test.serial("enrichProjectGraph should ignore root project without framework con t.is(projectGraph.getSize(), 1, "Project graph should remain unchanged"); }); +test.serial("enrichProjectGraph should throw error when projectGraph contains a framework library project " + +"that is also defined in framework configuration", async (t) => { + const { + sinon, ui5Framework, utils, + Sapui5ResolverResolveVersionStub, Sapui5ResolverInstallStub + } = t.context; + const dependencyTree = { + id: "application.a", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.100.0", + libraries: [{ + name: "sap.ui.core" + }] + } + }, + dependencies: [{ + id: "@openui5/sap.ui.core", + version: "1.99.0", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "sap.ui.core" + } + } + }] + }; + + const referencedLibraries = ["sap.ui.core"]; + const libraryMetadata = {fake: "metadata"}; + + sinon.stub(utils, "getFrameworkLibrariesFromGraph").resolves(referencedLibraries); + + Sapui5ResolverInstallStub.resolves({libraryMetadata}); + Sapui5ResolverResolveVersionStub.resolves("1.100.0"); + + sinon.stub(utils, "ProjectProcessor") + .callsFake(({graph}) => { + return { + async addProjectToGraph() { + const fakeCoreProject = await Specification.create({ + id: "@openui5/sap.ui.core", + version: "1.100.0", + modulePath: libraryEPath, + configuration: { + specVersion: "3.0", + kind: "project", + type: "library", + metadata: { + name: "sap.ui.core" + } + } + }); + graph.addProject(fakeCoreProject); + } + }; + }); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await t.throwsAsync(ui5Framework.enrichProjectGraph(projectGraph), { + message: `Duplicate framework library definition(s) found in project application.a: sap.ui.core. ` + + `Framework libraries should only be referenced via ui5.yaml configuration, not in its ` + + `dependencies (e.g. package.json). Note that this error could also come from transitive dependencies.` + }); +}); + test.serial("utils.shouldIncludeDependency", (t) => { const {utils} = t.context; // root project dependency should always be included @@ -963,6 +1044,64 @@ test.serial("utils.declareFrameworkDependenciesInGraph: No deprecation warnings ], `Root project has correct dependencies`); }); +test("utils.checkForDuplicateFrameworkProjects: No duplicates", (t) => { + const {utils, sinon} = t.context; + + const projectGraph = { + getRoot: sinon.stub().returns({ + getName: sinon.stub().returns("root-project") + }), + getProjectNames: sinon.stub().returns(["lib1", "lib2", "lib3"]) + }; + const frameworkGraph = { + getProjectNames: sinon.stub().returns(["sap.ui.core"]) + }; + + t.notThrows(() => utils.checkForDuplicateFrameworkProjects(projectGraph, frameworkGraph)); +}); + +test("utils.checkForDuplicateFrameworkProjects: One duplicate", (t) => { + const {utils, sinon} = t.context; + + const projectGraph = { + getRoot: sinon.stub().returns({ + getName: sinon.stub().returns("root-project") + }), + getProjectNames: sinon.stub().returns(["lib1", "sap.ui.core", "lib2", "lib3"]) + }; + const frameworkGraph = { + getProjectNames: sinon.stub().returns(["sap.ui.core"]) + }; + + t.throws(() => utils.checkForDuplicateFrameworkProjects(projectGraph, frameworkGraph), { + message: "Duplicate framework library definition(s) found in project root-project: " + + "sap.ui.core. " + + "Framework libraries should only be referenced via ui5.yaml configuration, not in its dependencies " + + "(e.g. package.json). Note that this error could also come from transitive dependencies." + }); +}); + +test("utils.checkForDuplicateFrameworkProjects: Two duplicates", (t) => { + const {utils, sinon} = t.context; + + const projectGraph = { + getRoot: sinon.stub().returns({ + getName: sinon.stub().returns("root-project") + }), + getProjectNames: sinon.stub().returns(["lib1", "sap.ui.core", "lib2", "sap.ui.layout", "lib3"]) + }; + const frameworkGraph = { + getProjectNames: sinon.stub().returns(["sap.ui.core", "sap.ui.layout", "sap.m"]) + }; + + t.throws(() => utils.checkForDuplicateFrameworkProjects(projectGraph, frameworkGraph), { + message: "Duplicate framework library definition(s) found in project root-project: " + + "sap.ui.core, sap.ui.layout. " + + "Framework libraries should only be referenced via ui5.yaml configuration, not in its dependencies " + + "(e.g. package.json). Note that this error could also come from transitive dependencies." + }); +}); + test.serial("ProjectProcessor: Add project to graph", async (t) => { const {sinon} = t.context; const {ProjectProcessor} = t.context.utils; From c615f70fd824aaa21b914282c214b46b0d345688 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 16 Feb 2023 12:02:35 +0100 Subject: [PATCH 0855/1272] [ui5-project][INTERNAL] ui5Framework: Change error message wording --- .../project/lib/graph/helpers/ui5Framework.js | 10 ++++----- .../test/lib/graph/helpers/ui5Framework.js | 22 +++++++++---------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 86a89e4365e..9fe94d1bbbc 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -200,11 +200,11 @@ const utils = { if (duplicateFrameworkProjectNames.length) { throw new Error( - `Duplicate framework library definition(s) found in project ${projectGraph.getRoot().getName()}: ` + - `${duplicateFrameworkProjectNames.join(", ")}. ` + - `Framework libraries should only be referenced via ui5.yaml configuration, ` + - `not in its dependencies (e.g. package.json). ` + - `Note that this error could also come from transitive dependencies.` + `Duplicate framework dependency definition(s) found for project ${projectGraph.getRoot().getName()}: ` + + `${duplicateFrameworkProjectNames.join(", ")}.\n` + + `Framework libraries should only be referenced via ui5.yaml configuration. ` + + `Neither the root project, nor any of its dependencies should include them as direct ` + + `dependencies (e.g. via package.json).` ); } }, diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index a1a3e91631a..52426261d9a 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -555,9 +555,9 @@ test.serial("enrichProjectGraph should throw error when projectGraph contains a const projectGraph = await projectGraphBuilder(provider); await t.throwsAsync(ui5Framework.enrichProjectGraph(projectGraph), { - message: `Duplicate framework library definition(s) found in project application.a: sap.ui.core. ` + - `Framework libraries should only be referenced via ui5.yaml configuration, not in its ` + - `dependencies (e.g. package.json). Note that this error could also come from transitive dependencies.` + message: `Duplicate framework dependency definition(s) found for project application.a: sap.ui.core.\n` + + `Framework libraries should only be referenced via ui5.yaml configuration. Neither the root project, ` + + `nor any of its dependencies should include them as direct dependencies (e.g. via package.json).` }); }); @@ -1074,10 +1074,10 @@ test("utils.checkForDuplicateFrameworkProjects: One duplicate", (t) => { }; t.throws(() => utils.checkForDuplicateFrameworkProjects(projectGraph, frameworkGraph), { - message: "Duplicate framework library definition(s) found in project root-project: " + - "sap.ui.core. " + - "Framework libraries should only be referenced via ui5.yaml configuration, not in its dependencies " + - "(e.g. package.json). Note that this error could also come from transitive dependencies." + message: "Duplicate framework dependency definition(s) found for project root-project: " + + "sap.ui.core.\n" + + "Framework libraries should only be referenced via ui5.yaml configuration. Neither the root project, " + + "nor any of its dependencies should include them as direct dependencies (e.g. via package.json)." }); }); @@ -1095,10 +1095,10 @@ test("utils.checkForDuplicateFrameworkProjects: Two duplicates", (t) => { }; t.throws(() => utils.checkForDuplicateFrameworkProjects(projectGraph, frameworkGraph), { - message: "Duplicate framework library definition(s) found in project root-project: " + - "sap.ui.core, sap.ui.layout. " + - "Framework libraries should only be referenced via ui5.yaml configuration, not in its dependencies " + - "(e.g. package.json). Note that this error could also come from transitive dependencies." + message: "Duplicate framework dependency definition(s) found for project root-project: " + + "sap.ui.core, sap.ui.layout.\n" + + "Framework libraries should only be referenced via ui5.yaml configuration. Neither the root project, " + + "nor any of its dependencies should include them as direct dependencies (e.g. via package.json)." }); }); From e1f95b72e5f6ccb57760fd61f35db6ba62f84caf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 16 Feb 2023 16:51:24 +0000 Subject: [PATCH 0856/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 220 +++++++++++++++++++++++------ packages/project/package.json | 4 +- 2 files changed, 175 insertions(+), 49 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 482f4b08f63..030949e2789 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -21,7 +21,7 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "pacote": "^15.0.8", + "pacote": "^15.1.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", @@ -47,7 +47,7 @@ "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.5", "js-beautify": "^1.14.7", - "jsdoc": "^4.0.0", + "jsdoc": "^4.0.1", "nyc": "^15.1.0", "open-cli": "^7.1.0", "sinon": "^15.0.1", @@ -801,9 +801,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", + "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", "engines": { "node": ">=12" } @@ -1632,9 +1632,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", + "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", "engines": { "node": ">=12" } @@ -1744,9 +1744,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001451", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001451.tgz", - "integrity": "sha512-XY7UbUpGRatZzoRft//5xOa69/1iGJRBlrieH6QYrkKLIFn3m7OVEJ81dSrKoy2BnKsdbX5cLrOispZNYo9v2w==", + "version": "1.0.30001453", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001453.tgz", + "integrity": "sha512-R9o/uySW38VViaTrOtwfbFEiBFUh7ST3uIG4OEymIG3/uKdHDO4xk/FaqfUw0d+irSUyFPy3dZszf9VvSTPnsA==", "dev": true, "funding": [ { @@ -2932,9 +2932,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.295", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.295.tgz", - "integrity": "sha512-lEO94zqf1bDA3aepxwnWoHUjA8sZ+2owgcSZjYQy0+uOSEclJX0VieZC+r+wLpSxUHRd6gG32znTWmr+5iGzFw==", + "version": "1.4.299", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.299.tgz", + "integrity": "sha512-lQ7ijJghH6pCGbfWXr6EY+KYCMaRSjgsY925r1p/TlpSfVM1VjHTcn1gAc15VM4uwti283X6QtjPTXdpoSGiZQ==", "dev": true }, "node_modules/emittery": { @@ -3491,9 +3491,9 @@ "dev": true }, "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.2.tgz", + "integrity": "sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -4794,9 +4794,9 @@ } }, "node_modules/jsdoc": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.0.tgz", - "integrity": "sha512-tzTgkklbWKrlaQL2+e3NNgLcZu3NaK2vsHRx7tyHQ+H5jcB9Gx0txSd2eJWlMC/xU1+7LQu4s58Ry0RkuaEQVg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.1.tgz", + "integrity": "sha512-UjvSrLYb270Mq25RN4AGGg2uqKRV90nCqkGsI4gD3RIR1lgMN8nWxK/am8Rsj33tWyprzZdA+0q1qY07m0Ar7w==", "dependencies": { "@babel/parser": "^7.9.4", "@jsdoc/salty": "^0.2.1", @@ -5238,9 +5238,9 @@ } }, "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", + "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", "engines": { "node": ">=12" } @@ -5392,9 +5392,9 @@ } }, "node_modules/markdown-it-anchor": { - "version": "8.6.6", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.6.tgz", - "integrity": "sha512-jRW30YGywD2ESXDc+l17AiritL0uVaSnWsb26f+68qaW9zgbIIr1f4v2Nsvc0+s0Z2N3uX6t/yAw7BwCQ1wMsA==", + "version": "8.6.7", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.7.tgz", + "integrity": "sha512-FlCHFwNnutLgVTflOYHPW2pPcl2AACqVzExlkGQNsi4CJgqOHN7YTgDd4LuhgN1BFO3TS0vLAruV1Td6dwWPJA==", "peerDependencies": { "@types/markdown-it": "*", "markdown-it": "*" @@ -5672,9 +5672,9 @@ } }, "node_modules/minimatch": { - "version": "6.1.8", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.1.8.tgz", - "integrity": "sha512-sTvS8Q4mIZiSnMo9192lZMxfeaGCslH5CC7B62hd9DlbifUVrc02ABTeRJINPosxKnvZlrmAaNSo8f4PZqDDdw==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", + "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -6219,9 +6219,9 @@ } }, "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", + "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", "engines": { "node": ">=12" } @@ -6269,9 +6269,9 @@ } }, "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", + "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", "engines": { "node": ">=12" } @@ -6792,9 +6792,9 @@ } }, "node_modules/pacote": { - "version": "15.0.8", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.0.8.tgz", - "integrity": "sha512-UlcumB/XS6xyyIMwg/WwMAyUmga+RivB5KgkRwA1hZNtrx+0Bt41KxHCvg1kr0pZ/ZeD8qjhW4fph6VaYRCbLw==", + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.0.tgz", + "integrity": "sha512-FFcjtIl+BQNfeliSm7MZz5cpdohvUV1yjGnqgVM4UnVF7JslRY0ImXAygdaCDV0jjUADEWu4y5xsDV8brtrTLg==", "dependencies": { "@npmcli/git": "^4.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -6811,6 +6811,7 @@ "promise-retry": "^2.0.1", "read-package-json": "^6.0.0", "read-package-json-fast": "^3.0.0", + "sigstore": "^1.0.0", "ssri": "^10.0.0", "tar": "^6.1.11" }, @@ -7400,9 +7401,9 @@ } }, "node_modules/read-package-json/node_modules/lru-cache": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", - "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", + "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", "engines": { "node": ">=12" } @@ -7778,9 +7779,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.58.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.58.0.tgz", - "integrity": "sha512-PiMJcP33DdKtZ/1jSjjqVIKihoDc6yWmYr9K/4r3fVVIEDAluD0q7XZiRKrNJcPK3qkLRF/79DND1H5q1LBjgg==", + "version": "1.58.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.58.1.tgz", + "integrity": "sha512-bnINi6nPXbP1XNRaranMFEBZWUfdW/AF16Ql5+ypRxfTvCRTTKrLsMIakyDcayUt2t/RZotmL4kgJwNH5xO+bg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -7912,6 +7913,70 @@ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, + "node_modules/sigstore": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.0.0.tgz", + "integrity": "sha512-e+qfbn/zf1+rCza/BhIA//Awmf0v1pa5HQS8Xk8iXrn9bgytytVLqYD0P7NSqZ6IELTgq+tcDvLPkQjNHyWLNg==", + "dependencies": { + "make-fetch-happen": "^11.0.1", + "tuf-js": "^1.0.0" + }, + "bin": { + "sigstore": "bin/sigstore.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/sigstore/node_modules/lru-cache": { + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", + "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", + "engines": { + "node": ">=12" + } + }, + "node_modules/sigstore/node_modules/make-fetch-happen": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz", + "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^4.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/sigstore/node_modules/minipass-fetch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz", + "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==", + "dependencies": { + "minipass": "^4.0.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, "node_modules/sinon": { "version": "15.0.1", "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz", @@ -8721,6 +8786,67 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/tuf-js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.0.0.tgz", + "integrity": "sha512-1dxsQwESDzACJjTdYHQ4wJ1f/of7jALWKfJEHSBWUQB/5UTJUx9SW6GHXp4mZ1KvdBRJCpGjssoPFGi4hvw8/A==", + "dependencies": { + "make-fetch-happen": "^11.0.1", + "minimatch": "^6.1.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/lru-cache": { + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", + "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", + "engines": { + "node": ">=12" + } + }, + "node_modules/tuf-js/node_modules/make-fetch-happen": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz", + "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^4.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/minipass-fetch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz", + "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==", + "dependencies": { + "minipass": "^4.0.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -9086,9 +9212,9 @@ } }, "node_modules/yargs": { - "version": "17.6.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", - "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", + "version": "17.7.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.0.tgz", + "integrity": "sha512-dwqOPg5trmrre9+v8SUo2q/hAwyKoVfu8OC1xPHKJGNdxAvPl4sKxL4vBnh3bQz/ZvvGAFeA5H3ou2kcOY8sQQ==", "dev": true, "dependencies": { "cliui": "^8.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index cf333ce96be..28fdcd5b313 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -128,7 +128,7 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "pacote": "^15.0.8", + "pacote": "^15.1.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", @@ -154,7 +154,7 @@ "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.5", "js-beautify": "^1.14.7", - "jsdoc": "^4.0.0", + "jsdoc": "^4.0.1", "nyc": "^15.1.0", "open-cli": "^7.1.0", "sinon": "^15.0.1", From 7e6351675dcf127591fce22eb3ddd29b2365940e Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 16 Feb 2023 17:06:27 +0000 Subject: [PATCH 0857/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.0 to 3.0.1 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.1/CHANGELOG.md --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 030949e2789..8c764fc64d7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.0", - "@ui5/fs": "^3.0.0", + "@ui5/fs": "^3.0.1", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1084,9 +1084,9 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.0.tgz", - "integrity": "sha512-ovf+lPYQSxHQpiL6cOxRZI39yCBTqRadPYkLY003NXVKDlTKeJoVdCFeuOcwt7vDLKDMCR0/10YPZZ3vecel3A==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.1.tgz", + "integrity": "sha512-8N0RGmO3HkqDG155APkBe1pBc+uueQqsRJJYqTAAvpF9XAXhNFihJMAU6K5mJDJ7rBpH+ksfUl3mVs5HURWGNA==", "dependencies": { "@ui5/logger": "^3.0.0", "clone": "^2.1.2", @@ -1094,7 +1094,7 @@ "globby": "^13.1.3", "graceful-fs": "^4.2.10", "micromatch": "^4.0.5", - "minimatch": "^6.1.6", + "minimatch": "^6.2.0", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index 28fdcd5b313..f5d2b8394d7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.0", - "@ui5/fs": "^3.0.0", + "@ui5/fs": "^3.0.1", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 50fa7f512d60fe50285bd460b4d15ccb2a0e0285 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 16 Feb 2023 17:16:59 +0000 Subject: [PATCH 0858/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.0 to 3.0.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.1/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8c764fc64d7..f980cfacc5c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.0", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.0", + "@ui5/builder": "^3.0.1", "@ui5/fs": "^3.0.1", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1057,19 +1057,19 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.0.tgz", - "integrity": "sha512-UF+busx2S6aH2oY1nwjIXPxYn8RYMyT1AxrQQhCDs1E6jDRs4fA3RgGdjKlxvc+uGqOd5H/1sjzCIffm5WGmUg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.1.tgz", + "integrity": "sha512-/bf+d/qpv7h594PWaCmrl5KVfgCjgIxIQ3E0sgx4vZPV9ON81v5KDXnS9TDLHdDPBz8UnnBJq5M55PQoYLT52A==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.0", + "@ui5/fs": "^3.0.1", "@ui5/logger": "^3.0.0", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", "espree": "^9.4.1", "graceful-fs": "^4.2.10", - "jsdoc": "^4.0.0", + "jsdoc": "^4.0.1", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", "rimraf": "^4.1.2", diff --git a/packages/project/package.json b/packages/project/package.json index f5d2b8394d7..57fa47bda91 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.0", + "@ui5/builder": "^3.0.1", "@ui5/fs": "^3.0.1", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From 1407377e96d1193018e450e1fe41742fca23a7fa Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 16 Feb 2023 17:30:10 +0000 Subject: [PATCH 0859/1272] [ui5-project]Release 3.0.1 --- packages/project/CHANGELOG.md | 15 ++++++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 2499c69d5e2..f1f90a21bf5 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,19 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.1...HEAD). + + +## [v3.0.1] - 2023-02-16 +### Bug Fixes +- Prevent socket timeouts when installing framework libraries [`a198356`](https://github.com/SAP/ui5-project/commit/a198356c9c5f39dd94fb8cf7542d9059ee628f3b) +- **Library:** Do not throw for missing .library file [`1163821`](https://github.com/SAP/ui5-project/commit/11638210994fd9511b2ab5ee3da40e3ccf294e58) +- **Project#getReader:** Do not apply builder resource excludes for style 'runtime' [`1cd94f7`](https://github.com/SAP/ui5-project/commit/1cd94f7f15ed07283e198238edb546517ee25691) +- **TaskUtil:** Provide framework configuration getters to custom tasks ([#580](https://github.com/SAP/ui5-project/issues/580)) [`6a40927`](https://github.com/SAP/ui5-project/commit/6a409278285252da59ea4d42fcf154814518661d) +- **graph:** Always resolve rootConfigPath to CWD [`ef3e569`](https://github.com/SAP/ui5-project/commit/ef3e56996111233aaa04410c95f11b1c3495a9b2) +- **projectGraphBuilder:** Apply extensions of the same module only once [`6d753a8`](https://github.com/SAP/ui5-project/commit/6d753a850f2a4ca34a50f64a404472bf0081054e) +- **ui5Framework:** Improve error handling for duplicate lib declaration [`fb1db6d`](https://github.com/SAP/ui5-project/commit/fb1db6d7cb74dee9c4754ffb62a2a970cb0e2fbe) + ## [v3.0.0] - 2023-02-09 @@ -305,6 +317,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.1]: https://github.com/SAP/ui5-project/compare/v3.0.0...v3.0.1 [v3.0.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0 [v2.6.0]: https://github.com/SAP/ui5-project/compare/v2.5.0...v2.6.0 [v2.5.0]: https://github.com/SAP/ui5-project/compare/v2.4.0...v2.5.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f980cfacc5c..97a0c983e00 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.0", + "version": "3.0.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.0", + "version": "3.0.1", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 57fa47bda91..adece753461 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.0", + "version": "3.0.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 06bd036374af8732732e134c9338df4ad5467708 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 16 Feb 2023 23:58:25 +0100 Subject: [PATCH 0860/1272] [ui5-project][FIX] ComponentProject#getWorkspace: Apply builder resource excludes This resolves a regression caused by https://github.com/SAP/ui5-project/pull/574 where the application of builder resource-exclude configuration was moved from the low-level _getSourceReader/_getTestReader methods to the high-level getReader API. However, it was missed to also adapt the high-level getWorkspace API in the same manner. This caused the created workspace reader/writer to ignore any exclude configuration as reported in https://github.com/SAP/ui5-tooling/issues/784#issuecomment-1433625146 --- .../lib/specifications/ComponentProject.js | 4 ++- .../lib/specifications/types/Application.js | 21 +++++++++++++++ .../test/lib/specifications/types/Library.js | 21 +++++++++++++++ .../test/lib/specifications/types/Module.js | 27 +++++++++++++++++++ .../lib/specifications/types/ThemeLibrary.js | 21 +++++++++++++++ 5 files changed, 93 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/specifications/ComponentProject.js b/packages/project/lib/specifications/ComponentProject.js index 0fccf4f760e..5c42ba2c4dc 100644 --- a/packages/project/lib/specifications/ComponentProject.js +++ b/packages/project/lib/specifications/ComponentProject.js @@ -191,9 +191,11 @@ class ComponentProject extends Project { */ getWorkspace() { // Workspace is always of style "buildtime" + // Therefore builder resource-excludes are always to be applied + const excludes = this.getBuilderResourcesExcludes(); return resourceFactory.createWorkspace({ name: `Workspace for project ${this.getName()}`, - reader: this._getReader(), + reader: this._getReader(excludes), writer: this._getWriter().collection }); } diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 266f4cb7265..84ab4d7e6f1 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -155,6 +155,27 @@ test("Access project resources via reader w/ builder excludes", async (t) => { "Found excluded resource for runtime style"); }); +test("Access project resources via workspace w/ builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await Specification.create(projectInput); + + projectInput.configuration.builder = { + resources: { + excludes: ["**/manifest.json"] + } + }; + const excludesProject = await Specification.create(projectInput); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getWorkspace().byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for default style"); +}); + test("Modify project resources via workspace and access via flat and runtime readers", async (t) => { const {projectInput} = t.context; const project = await Specification.create(projectInput); diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index b978ad8355b..fb204925195 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -175,6 +175,27 @@ test("Access project resources via reader w/ builder excludes", async (t) => { "Found excluded resource for runtime style"); }); +test("Access project resources via workspace w/ builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await (new Library().init(projectInput)); + + projectInput.configuration.builder = { + resources: { + excludes: ["**/.library"] + } + }; + const excludesProject = await (new Library().init(projectInput)); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getWorkspace().byGlob("**/.library")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/.library")).length, 0, + "Did not find excluded resource for default style"); +}); + test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { const {projectInput} = t.context; const project = await (new Library().init(projectInput)); diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index 509c78b0156..2a09b2497ca 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -144,6 +144,33 @@ test("Access project resources via reader w/ builder excludes", async (t) => { "Found excluded resource for runtime style"); }); +test("Access project resources via workspace w/ builder excludes", async (t) => { + const {projectInput, sinon} = t.context; + const baselineProject = await Specification.create(projectInput); + const excludesProject = await Specification.create(projectInput); + + // As of specVersion 3.0, modules are not allowed to have a "builder.resources" configuration. + // Hence modules can't practically be configured with builder excludes. + // We still simply stub the respective API call to test the code and be prepared + // + // projectInput.configuration.builder = { + // resources: { + // excludes: ["**/devTools.js"] + // } + // }; + // So stub instead: + sinon.stub(excludesProject, "getBuilderResourcesExcludes").returns(["**/devTools.js"]); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getWorkspace().byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/devTools.js")).length, 0, + "Did not find excluded resource for default style"); +}); + test("Modify project resources via workspace and access via reader", async (t) => { const {projectInput} = t.context; const project = await Specification.create(projectInput); diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js index b12aa76b42c..c1856721ef3 100644 --- a/packages/project/test/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -115,6 +115,27 @@ test("Access project resources via reader w/ builder excludes", async (t) => { "Found excluded resource for runtime style"); }); +test("Access project resources via workspace w/ builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await Specification.create(projectInput); + + projectInput.configuration.builder = { + resources: { + excludes: ["**/.theme"] + } + }; + const excludesProject = await Specification.create(projectInput); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getWorkspace().byGlob("**/.theme")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/.theme")).length, 0, + "Did not find excluded resource for default style"); +}); + test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { const {projectInput} = t.context; const project = await Specification.create(projectInput); From d45e27bb40861efc011f0ced93ca3715963b19f5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 17 Feb 2023 09:27:25 +0000 Subject: [PATCH 0861/1272] [ui5-project]Release 3.0.2 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index f1f90a21bf5..b6dd404795d 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.2...HEAD). + + +## [v3.0.2] - 2023-02-16 +### Bug Fixes +- **ComponentProject#getWorkspace:** Apply builder resource excludes [`5257e59`](https://github.com/SAP/ui5-project/commit/5257e5977c4e92e2aca5b0ce4b2ed55688a66646) + ## [v3.0.1] - 2023-02-16 @@ -317,6 +323,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.2]: https://github.com/SAP/ui5-project/compare/v3.0.1...v3.0.2 [v3.0.1]: https://github.com/SAP/ui5-project/compare/v3.0.0...v3.0.1 [v3.0.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0 [v2.6.0]: https://github.com/SAP/ui5-project/compare/v2.5.0...v2.6.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 97a0c983e00..a9327e27707 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.1", + "version": "3.0.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.1", + "version": "3.0.2", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index adece753461..4e2fa0fff0b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.1", + "version": "3.0.2", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 0daac2d28ca0bf105bbbecb786d20bed48df70f1 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 19 Feb 2023 03:20:36 +0000 Subject: [PATCH 0862/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 78 +++++++++++++++--------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a9327e27707..978eea78ee7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -801,9 +801,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", - "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", + "version": "7.16.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", + "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", "engines": { "node": ">=12" } @@ -1632,9 +1632,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", - "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", + "version": "7.16.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", + "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", "engines": { "node": ">=12" } @@ -1744,9 +1744,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001453", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001453.tgz", - "integrity": "sha512-R9o/uySW38VViaTrOtwfbFEiBFUh7ST3uIG4OEymIG3/uKdHDO4xk/FaqfUw0d+irSUyFPy3dZszf9VvSTPnsA==", + "version": "1.0.30001456", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001456.tgz", + "integrity": "sha512-XFHJY5dUgmpMV25UqaD4kVq2LsiaU5rS8fb0f17pCoXQiQslzmFgnfOxfvo1bTpTqf7dwG/N/05CnLCnOEKmzA==", "dev": true, "funding": [ { @@ -2932,9 +2932,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.299", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.299.tgz", - "integrity": "sha512-lQ7ijJghH6pCGbfWXr6EY+KYCMaRSjgsY925r1p/TlpSfVM1VjHTcn1gAc15VM4uwti283X6QtjPTXdpoSGiZQ==", + "version": "1.4.302", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.302.tgz", + "integrity": "sha512-Uk7C+7aPBryUR1Fwvk9VmipBcN9fVsqBO57jV2ZjTm+IZ6BMNqu7EDVEg2HxCNufk6QcWlFsBkhQyQroB2VWKw==", "dev": true }, "node_modules/emittery": { @@ -3637,9 +3637,9 @@ } }, "node_modules/file-type": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.2.0.tgz", - "integrity": "sha512-M3RQMWY3F2ykyWZ+IHwNCjpnUmukYhtdkGGC1ZVEUb0ve5REGF7NNJ4Q9ehCUabtQKtSVFOMbFTXgJlFb0DQIg==", + "version": "18.2.1", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.2.1.tgz", + "integrity": "sha512-Yw5MtnMv7vgD2/6Bjmmuegc8bQEVA9GmAyaR18bMYWKqsWDG9wgYZ1j4I6gNMF5Y5JBDcUcjRQqNQx7Y8uotcg==", "dev": true, "dependencies": { "readable-web-to-node-stream": "^3.0.2", @@ -5238,9 +5238,9 @@ } }, "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", - "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", + "version": "7.16.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", + "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", "engines": { "node": ">=12" } @@ -6219,9 +6219,9 @@ } }, "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", - "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", + "version": "7.16.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", + "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", "engines": { "node": ">=12" } @@ -6269,9 +6269,9 @@ } }, "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", - "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", + "version": "7.16.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", + "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", "engines": { "node": ">=12" } @@ -7401,9 +7401,9 @@ } }, "node_modules/read-package-json/node_modules/lru-cache": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", - "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", + "version": "7.16.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", + "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", "engines": { "node": ">=12" } @@ -7779,9 +7779,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.58.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.58.1.tgz", - "integrity": "sha512-bnINi6nPXbP1XNRaranMFEBZWUfdW/AF16Ql5+ypRxfTvCRTTKrLsMIakyDcayUt2t/RZotmL4kgJwNH5xO+bg==", + "version": "1.58.3", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.58.3.tgz", + "integrity": "sha512-Q7RaEtYf6BflYrQ+buPudKR26/lH+10EmO9bBqbmPh/KeLqv8bjpTNqxe71ocONqXq+jYiCbpPUmQMS+JJPk4A==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -7929,9 +7929,9 @@ } }, "node_modules/sigstore/node_modules/lru-cache": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", - "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", + "version": "7.16.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", + "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", "engines": { "node": ">=12" } @@ -8604,9 +8604,9 @@ } }, "node_modules/terser": { - "version": "5.16.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.3.tgz", - "integrity": "sha512-v8wWLaS/xt3nE9dgKEWhNUFP6q4kngO5B8eYFUuebsu7Dw/UNAnpUod6UHo04jSSkv8TzKHjZDSd7EXdDQAl8Q==", + "version": "5.16.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.4.tgz", + "integrity": "sha512-5yEGuZ3DZradbogeYQ1NaGz7rXVBDWujWlx1PT8efXO6Txn+eWbfKqB2bTDVmFXmePFkoLU6XI8UektMIEA0ug==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -8799,9 +8799,9 @@ } }, "node_modules/tuf-js/node_modules/lru-cache": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.15.0.tgz", - "integrity": "sha512-LKpNuyKR1lRsqN5DatvMOkW2nmUAwI22HoQK604nhs+WiRWSIC0MFUKq2XYUKv1fCVPK9Cro4d4Il3DxM80/fQ==", + "version": "7.16.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", + "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", "engines": { "node": ">=12" } From f50f32fe004cd4b76f37a5b713543966b227094f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 26 Feb 2023 03:20:31 +0000 Subject: [PATCH 0863/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 235 +++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 120 insertions(+), 119 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 978eea78ee7..b7e77f5e135 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -21,7 +21,7 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "pacote": "^15.1.0", + "pacote": "^15.1.1", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", @@ -47,7 +47,7 @@ "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.5", "js-beautify": "^1.14.7", - "jsdoc": "^4.0.1", + "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.1.0", "sinon": "^15.0.1", @@ -59,9 +59,9 @@ } }, "node_modules/@adobe/css-tools": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.1.0.tgz", - "integrity": "sha512-mMVJ/j/GbZ/De4ZHWbQAQO1J6iVnjtZLc9WEdkUQb8S/Bu2cAF2bETXUgMAdvMG3/ngtKmcNBe+Zms9bg6jnQQ==" + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", + "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==" }, "node_modules/@ampproject/remapping": { "version": "2.2.0", @@ -88,30 +88,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", - "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", + "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.20.12", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", - "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", + "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", "dev": true, "dependencies": { - "@ampproject/remapping": "^2.1.0", + "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", + "@babel/generator": "^7.21.0", "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helpers": "^7.20.7", - "@babel/parser": "^7.20.7", + "@babel/helper-module-transforms": "^7.21.0", + "@babel/helpers": "^7.21.0", + "@babel/parser": "^7.21.0", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.12", - "@babel/types": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -136,13 +136,14 @@ } }, "node_modules/@babel/generator": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", - "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", + "version": "7.21.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", + "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", "dev": true, "dependencies": { - "@babel/types": "^7.20.7", + "@babel/types": "^7.21.0", "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" }, "engines": { @@ -201,13 +202,13 @@ } }, "node_modules/@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", "dev": true, "dependencies": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" }, "engines": { "node": ">=6.9.0" @@ -238,9 +239,9 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", - "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", + "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.18.9", @@ -249,8 +250,8 @@ "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.10", - "@babel/types": "^7.20.7" + "@babel/traverse": "^7.21.2", + "@babel/types": "^7.21.2" }, "engines": { "node": ">=6.9.0" @@ -307,23 +308,23 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", - "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", + "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", "dev": true, "dependencies": { "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.13", - "@babel/types": "^7.20.7" + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0" }, "engines": { "node": ">=6.9.0" @@ -394,9 +395,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.20.15", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.15.tgz", - "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==", + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", + "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==", "bin": { "parser": "bin/babel-parser.js" }, @@ -419,19 +420,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", - "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", + "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", + "@babel/generator": "^7.21.1", "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", + "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.13", - "@babel/types": "^7.20.7", + "@babel/parser": "^7.21.2", + "@babel/types": "^7.21.2", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -440,9 +441,9 @@ } }, "node_modules/@babel/types": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", - "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", + "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.19.4", @@ -801,9 +802,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.16.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", - "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", + "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", "engines": { "node": ">=12" } @@ -1632,9 +1633,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "7.16.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", - "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", + "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", "engines": { "node": ">=12" } @@ -1744,9 +1745,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001456", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001456.tgz", - "integrity": "sha512-XFHJY5dUgmpMV25UqaD4kVq2LsiaU5rS8fb0f17pCoXQiQslzmFgnfOxfvo1bTpTqf7dwG/N/05CnLCnOEKmzA==", + "version": "1.0.30001458", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001458.tgz", + "integrity": "sha512-lQ1VlUUq5q9ro9X+5gOEyH7i3vm+AYVT1WDCVB69XOZ17KZRhnZ9J0Sqz7wTHQaLBJccNCHq8/Ww5LlOIZbB0w==", "dev": true, "funding": [ { @@ -2101,9 +2102,9 @@ } }, "node_modules/cli-progress": { - "version": "3.11.2", - "resolved": "https://registry.npmjs.org/cli-progress/-/cli-progress-3.11.2.tgz", - "integrity": "sha512-lCPoS6ncgX4+rJu5bS3F/iCz17kZ9MPZ6dpuTtI0KXKABkhyXIdYB3Inby1OpaGti3YlI3EeEkM9AuWpelJrVA==", + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/cli-progress/-/cli-progress-3.12.0.tgz", + "integrity": "sha512-tRkV3HJ1ASwm19THiiLIXLO7Im7wlTuKnvkYaTkyoAPefqjNg7W7DHKUlGRxy9vxDvbyCYQkQozvptuMkGCg8A==", "dependencies": { "string-width": "^4.2.3" }, @@ -2932,9 +2933,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.302", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.302.tgz", - "integrity": "sha512-Uk7C+7aPBryUR1Fwvk9VmipBcN9fVsqBO57jV2ZjTm+IZ6BMNqu7EDVEg2HxCNufk6QcWlFsBkhQyQroB2VWKw==", + "version": "1.4.311", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.311.tgz", + "integrity": "sha512-RoDlZufvrtr2Nx3Yx5MB8jX3aHIxm8nRWPJm3yVvyHmyKaRvn90RjzB6hNnt0AkhS3IInJdyRfQb4mWhPvUjVw==", "dev": true }, "node_modules/emittery": { @@ -4794,11 +4795,11 @@ } }, "node_modules/jsdoc": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.1.tgz", - "integrity": "sha512-UjvSrLYb270Mq25RN4AGGg2uqKRV90nCqkGsI4gD3RIR1lgMN8nWxK/am8Rsj33tWyprzZdA+0q1qY07m0Ar7w==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.2.tgz", + "integrity": "sha512-e8cIg2z62InH7azBBi3EsSEqrKx+nUtAS5bBcYTSpZFA+vhNPyhv8PTFZ0WsjOPDj04/dOLlm08EDcQJDqaGQg==", "dependencies": { - "@babel/parser": "^7.9.4", + "@babel/parser": "^7.20.15", "@jsdoc/salty": "^0.2.1", "@types/markdown-it": "^12.2.3", "bluebird": "^3.7.2", @@ -5238,9 +5239,9 @@ } }, "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.16.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", - "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", + "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", "engines": { "node": ">=12" } @@ -5718,9 +5719,9 @@ } }, "node_modules/minipass": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.3.tgz", - "integrity": "sha512-OW2r4sQ0sI+z5ckEt5c1Tri4xTgZwYDxpE54eqWlQloQRoWtXjqt9udJ5Z4dSv7wK+nfFI7FRXyCpBSft+gpFw==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.1.tgz", + "integrity": "sha512-KS4CHIsDfOZetnT+u6fwxyFADXLamtkPxkGScmmtTW//MlRrImV+LtbmbJpLQ86Hw7km/utbfEfndhGBrfwvlA==", "engines": { "node": ">=8" } @@ -6219,9 +6220,9 @@ } }, "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "7.16.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", - "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", + "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", "engines": { "node": ">=12" } @@ -6269,9 +6270,9 @@ } }, "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "7.16.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", - "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", + "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", "engines": { "node": ">=12" } @@ -6636,9 +6637,9 @@ } }, "node_modules/open": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.1.tgz", - "integrity": "sha512-/4b7qZNhv6Uhd7jjnREh1NjnPxlTq+XNWPG88Ydkj5AILcA5m3ajvcg57pB24EQjKv0dK62XnDqk9c/hkIG5Kg==", + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", "dev": true, "dependencies": { "define-lazy-prop": "^2.0.0", @@ -6792,9 +6793,9 @@ } }, "node_modules/pacote": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.0.tgz", - "integrity": "sha512-FFcjtIl+BQNfeliSm7MZz5cpdohvUV1yjGnqgVM4UnVF7JslRY0ImXAygdaCDV0jjUADEWu4y5xsDV8brtrTLg==", + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.1.tgz", + "integrity": "sha512-eeqEe77QrA6auZxNHIp+1TzHQ0HBKf5V6c8zcaYZ134EJe1lCi+fjXATkNiEEfbG+e50nu02GLvUtmZcGOYabQ==", "dependencies": { "@npmcli/git": "^4.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -7401,9 +7402,9 @@ } }, "node_modules/read-package-json/node_modules/lru-cache": { - "version": "7.16.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", - "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", + "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", "engines": { "node": ">=12" } @@ -7554,9 +7555,9 @@ } }, "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", + "integrity": "sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==", "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -7929,9 +7930,9 @@ } }, "node_modules/sigstore/node_modules/lru-cache": { - "version": "7.16.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", - "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", + "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", "engines": { "node": ">=12" } @@ -8450,9 +8451,9 @@ } }, "node_modules/tap-parser/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, "optional": true, "dependencies": { @@ -8604,9 +8605,9 @@ } }, "node_modules/terser": { - "version": "5.16.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.4.tgz", - "integrity": "sha512-5yEGuZ3DZradbogeYQ1NaGz7rXVBDWujWlx1PT8efXO6Txn+eWbfKqB2bTDVmFXmePFkoLU6XI8UektMIEA0ug==", + "version": "5.16.5", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.5.tgz", + "integrity": "sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -8699,9 +8700,9 @@ "dev": true }, "node_modules/through2/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, "dependencies": { "core-util-is": "~1.0.0", @@ -8799,9 +8800,9 @@ } }, "node_modules/tuf-js/node_modules/lru-cache": { - "version": "7.16.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.16.1.tgz", - "integrity": "sha512-9kkuMZHnLH/8qXARvYSjNvq8S1GYFFzynQTAfKeaJ0sIrR3PUPuu37Z+EiIANiZBvpfTf2B5y8ecDLSMWlLv+w==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", + "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", "engines": { "node": ">=12" } @@ -9048,9 +9049,9 @@ } }, "node_modules/workerpool": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.3.1.tgz", - "integrity": "sha512-0x7gJm1rhpn5SPG9NENOxPtbfUZZtK/qOg6gEdSqeDBA3dTeR91RJqSPjccPRCkhNfrnnl/dWxSSj5w9CtdzNA==" + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.4.0.tgz", + "integrity": "sha512-i3KR1mQMNwY2wx20ozq2EjISGtQWDIfV56We+yGJ5yDs8jTwQiLLaqHlkBHITlCuJnYlVRmXegxFxZg7gqI++A==" }, "node_modules/wrap-ansi": { "version": "7.0.0", @@ -9212,9 +9213,9 @@ } }, "node_modules/yargs": { - "version": "17.7.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.0.tgz", - "integrity": "sha512-dwqOPg5trmrre9+v8SUo2q/hAwyKoVfu8OC1xPHKJGNdxAvPl4sKxL4vBnh3bQz/ZvvGAFeA5H3ou2kcOY8sQQ==", + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", "dev": true, "dependencies": { "cliui": "^8.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 4e2fa0fff0b..513f44334e0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -128,7 +128,7 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "pacote": "^15.1.0", + "pacote": "^15.1.1", "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", @@ -154,7 +154,7 @@ "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.5", "js-beautify": "^1.14.7", - "jsdoc": "^4.0.1", + "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.1.0", "sinon": "^15.0.1", From 18f6e611c0ed37258e05fba70a861dc707e65472 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 26 Feb 2023 10:56:33 +0000 Subject: [PATCH 0864/1272] [ui5-project][INTERNAL] Bump eslint from 8.34.0 to 8.35.0 Bumps [eslint](https://github.com/eslint/eslint) from 8.34.0 to 8.35.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.34.0...v8.35.0) --- updated-dependencies: - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 28 +++++++++++++++++++--------- packages/project/package.json | 2 +- 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b7e77f5e135..14a3defeb61 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -37,7 +37,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.34.0", + "eslint": "^8.35.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^40.0.0", @@ -469,9 +469,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", - "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", + "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -540,6 +540,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@eslint/js": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", + "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, "node_modules/@gar/promisify": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", @@ -3055,12 +3064,13 @@ } }, "node_modules/eslint": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.34.0.tgz", - "integrity": "sha512-1Z8iFsucw+7kSqXNZVslXS8Ioa4u2KM7GPwuKtkTFAqZ/cHMcEaR+1+Br0wLlot49cNxIiZk5wp8EAbPcYZxTg==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", + "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.4.1", + "@eslint/eslintrc": "^2.0.0", + "@eslint/js": "8.35.0", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3074,7 +3084,7 @@ "eslint-utils": "^3.0.0", "eslint-visitor-keys": "^3.3.0", "espree": "^9.4.0", - "esquery": "^1.4.0", + "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 513f44334e0..9c5cd01adaa 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -144,7 +144,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.34.0", + "eslint": "^8.35.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^40.0.0", From f6d30f7c911d0a3220274aeb30e8a32158f2e8b0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Feb 2023 14:06:08 +0100 Subject: [PATCH 0865/1272] [ui5-project][INTERNAL] Bump coverallsapp/github-action from 1.1.3 to 1.2.0 (#585) Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 1.1.3 to 1.2.0. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/1.1.3...v1.2.0) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 0138c016be9..094d3a6d1d0 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,6 +28,6 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@1.1.3 + uses: coverallsapp/github-action@v1.2.0 with: github-token: ${{ secrets.GITHUB_TOKEN }} From a5674a3a85a91c72178ab9f3020376988e5972c7 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 24 Feb 2023 12:40:43 +0100 Subject: [PATCH 0866/1272] [ui5-project][FIX] jsdoc: enable generateVersionInfo task --- packages/project/lib/build/helpers/composeTaskList.js | 1 + packages/project/test/lib/build/helpers/composeTaskList.js | 1 + 2 files changed, 2 insertions(+) diff --git a/packages/project/lib/build/helpers/composeTaskList.js b/packages/project/lib/build/helpers/composeTaskList.js index dc9730a676d..11a23d39dcb 100644 --- a/packages/project/lib/build/helpers/composeTaskList.js +++ b/packages/project/lib/build/helpers/composeTaskList.js @@ -45,6 +45,7 @@ export default function composeTaskList(allTasks, {selfContained, jsdoc, include selectedTasks.generateJsdoc = true; selectedTasks.executeJsdocSdkTransformation = true; selectedTasks.generateApiIndex = true; + selectedTasks.generateVersionInfo = true; // Include theme build as required for SDK selectedTasks.buildThemes = true; diff --git a/packages/project/test/lib/build/helpers/composeTaskList.js b/packages/project/test/lib/build/helpers/composeTaskList.js index 5d057ba3392..910994aabec 100644 --- a/packages/project/test/lib/build/helpers/composeTaskList.js +++ b/packages/project/test/lib/build/helpers/composeTaskList.js @@ -116,6 +116,7 @@ const allTasks = [ "generateApiIndex", "generateJsdoc", "buildThemes", + "generateVersionInfo", "generateBundle", ] ], From b357388669a9da6d1e4265fd7761edb04016963f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 1 Mar 2023 12:28:27 +0000 Subject: [PATCH 0867/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 78 +++++++++++++++--------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 14a3defeb61..d01888cab77 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -738,9 +738,9 @@ } }, "node_modules/@jsdoc/salty": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.3.tgz", - "integrity": "sha512-bbtCxCkxcnWhi50I+4Lj6mdz9w3pOXOgEQrID8TCZ/DF51fW7M9GCQW2y45SpBDdHd1Eirm1X/Cf6CkAAe8HPg==", + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.4.tgz", + "integrity": "sha512-HRBmslXHM6kpZOfGf0o41NUlGYGER0NoUBcT2Sik4rxzAN7f7+si7ad57SFSFpftvaMVnUaY7YlJuv3v5G80ZA==", "dependencies": { "lodash": "^4.17.21" }, @@ -811,9 +811,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", - "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", + "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", "engines": { "node": ">=12" } @@ -833,9 +833,9 @@ } }, "node_modules/@npmcli/installed-package-contents": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.1.tgz", - "integrity": "sha512-GIykAFdOVK31Q1/zAtT5MbxqQL2vyl9mvFJv+OGu01zxbhL3p0xc8gJjdNGX1mWmUT43aEKVO2L6V/2j4TOsAA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.2.tgz", + "integrity": "sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==", "dependencies": { "npm-bundled": "^3.0.0", "npm-normalize-package-bin": "^3.0.0" @@ -1642,9 +1642,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", - "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", + "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", "engines": { "node": ">=12" } @@ -2942,9 +2942,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.311", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.311.tgz", - "integrity": "sha512-RoDlZufvrtr2Nx3Yx5MB8jX3aHIxm8nRWPJm3yVvyHmyKaRvn90RjzB6hNnt0AkhS3IInJdyRfQb4mWhPvUjVw==", + "version": "1.4.314", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.314.tgz", + "integrity": "sha512-+3RmNVx9hZLlc0gW//4yep0K5SYKmIvB5DXg1Yg6varsuAHlHwTeqeygfS8DWwLCsNOWrgj+p9qgM5WYjw1lXQ==", "dev": true }, "node_modules/emittery": { @@ -4327,9 +4327,9 @@ "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" }, "node_modules/irregular-plurals": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.4.0.tgz", - "integrity": "sha512-YXxECO/W6N9aMBVKMKKZ8TXESgq7EFrp3emCGGUcrYY1cgJIeZjoB75MTu8qi+NAKntS9NwPU8VdcQ3r6E6aWQ==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.4.1.tgz", + "integrity": "sha512-JR7VL+1Kd9z79bE+2uSgifpzrTwLWmTvyeUewhxZCHVtpPImAsLk4adfRxg86uvdsJ8etYYrpzN7vRT30gGnOA==", "dev": true, "engines": { "node": ">=8" @@ -5249,9 +5249,9 @@ } }, "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", - "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", + "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", "engines": { "node": ">=12" } @@ -5729,9 +5729,9 @@ } }, "node_modules/minipass": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.1.tgz", - "integrity": "sha512-KS4CHIsDfOZetnT+u6fwxyFADXLamtkPxkGScmmtTW//MlRrImV+LtbmbJpLQ86Hw7km/utbfEfndhGBrfwvlA==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.4.tgz", + "integrity": "sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==", "engines": { "node": ">=8" } @@ -6230,9 +6230,9 @@ } }, "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", - "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", + "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", "engines": { "node": ">=12" } @@ -6280,9 +6280,9 @@ } }, "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", - "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", + "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", "engines": { "node": ">=12" } @@ -7412,9 +7412,9 @@ } }, "node_modules/read-package-json/node_modules/lru-cache": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", - "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", + "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", "engines": { "node": ">=12" } @@ -7940,9 +7940,9 @@ } }, "node_modules/sigstore/node_modules/lru-cache": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", - "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", + "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", "engines": { "node": ">=12" } @@ -8810,9 +8810,9 @@ } }, "node_modules/tuf-js/node_modules/lru-cache": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz", - "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==", + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", + "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", "engines": { "node": ">=12" } From f6f2390bac9f4d330424d30706cce2e422f2a6fc Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Wed, 1 Mar 2023 13:33:43 +0000 Subject: [PATCH 0868/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.1 to 3.0.2 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.2/CHANGELOG.md --- packages/project/package-lock.json | 24 +++++++++++++++++++----- packages/project/package.json | 2 +- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d01888cab77..03e4acc2e5c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.1", - "@ui5/fs": "^3.0.1", + "@ui5/fs": "^3.0.2", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1094,9 +1094,9 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.1.tgz", - "integrity": "sha512-8N0RGmO3HkqDG155APkBe1pBc+uueQqsRJJYqTAAvpF9XAXhNFihJMAU6K5mJDJ7rBpH+ksfUl3mVs5HURWGNA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.2.tgz", + "integrity": "sha512-vsuGyKHs6Pml9pk4527zp6mnigPx/I+PVTVbF8aBG7qmT0t6yUYODJDpYLK6MNLD0xFSxDJjppoCdzJ5yPcjfQ==", "dependencies": { "@ui5/logger": "^3.0.0", "clone": "^2.1.2", @@ -1104,7 +1104,7 @@ "globby": "^13.1.3", "graceful-fs": "^4.2.10", "micromatch": "^4.0.5", - "minimatch": "^6.2.0", + "minimatch": "^7.4.1", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, @@ -1113,6 +1113,20 @@ "npm": ">= 8" } }, + "node_modules/@ui5/fs/node_modules/minimatch": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.1.tgz", + "integrity": "sha512-Oz1iPEP+MGl7KS3SciLsLLcuZ7VsBfb7Qrz/jYt/s/sYAv272P26HSLz2f77Y6hzTKXiBi6g765fqpEDNc5fJw==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@ui5/logger": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 9c5cd01adaa..6c4bdfd1a54 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -117,7 +117,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.1", - "@ui5/fs": "^3.0.1", + "@ui5/fs": "^3.0.2", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From b171a67c160b15e7022655354ee73b21f8e89ff0 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Wed, 1 Mar 2023 13:46:42 +0000 Subject: [PATCH 0869/1272] [ui5-project]Release 3.0.3 --- packages/project/CHANGELOG.md | 11 +++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index b6dd404795d..7da8aad8f6e 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.3...HEAD). + + +## [v3.0.3] - 2023-03-01 +### Bug Fixes +- **jsdoc:** enable generateVersionInfo task [`a58e5eb`](https://github.com/SAP/ui5-project/commit/a58e5eb0769a9ba63a0b0aa267675ef2f9c08769) + -## [v3.0.2] - 2023-02-16 +## [v3.0.2] - 2023-02-17 ### Bug Fixes - **ComponentProject#getWorkspace:** Apply builder resource excludes [`5257e59`](https://github.com/SAP/ui5-project/commit/5257e5977c4e92e2aca5b0ce4b2ed55688a66646) @@ -323,6 +329,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.3]: https://github.com/SAP/ui5-project/compare/v3.0.2...v3.0.3 [v3.0.2]: https://github.com/SAP/ui5-project/compare/v3.0.1...v3.0.2 [v3.0.1]: https://github.com/SAP/ui5-project/compare/v3.0.0...v3.0.1 [v3.0.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 03e4acc2e5c..cdb2d5dbad7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.2", + "version": "3.0.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.2", + "version": "3.0.3", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 6c4bdfd1a54..7a9b3c1fadd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.2", + "version": "3.0.3", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From ae4d46fb49a37dd6f20d5ddc68f79547b6105c2b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 5 Mar 2023 03:20:52 +0000 Subject: [PATCH 0870/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 146 +++++++++++++++++++++-------- packages/project/package.json | 4 +- 2 files changed, 109 insertions(+), 41 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index cdb2d5dbad7..308b4189ead 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -26,7 +26,7 @@ "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.1", - "rimraf": "^4.1.2", + "rimraf": "^4.3.0", "semver": "^7.3.8", "xml2js": "^0.4.23" }, @@ -40,7 +40,7 @@ "eslint": "^8.35.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.0.0", + "eslint-plugin-jsdoc": "^40.0.1", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -1024,6 +1024,31 @@ "node": ">= 10" } }, + "node_modules/@tufjs/models": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.0.tgz", + "integrity": "sha512-RRMu4uMxWnZlxaIBxahSb2IssFZiu188sndesZflWOe1cA/qUqtemSIoBWbuVKPvvdktapImWNnKpBcc+VrCQw==", + "dependencies": { + "minimatch": "^6.1.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@tufjs/models/node_modules/minimatch": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", + "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@types/linkify-it": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", @@ -1113,20 +1138,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/fs/node_modules/minimatch": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.1.tgz", - "integrity": "sha512-Oz1iPEP+MGl7KS3SciLsLLcuZ7VsBfb7Qrz/jYt/s/sYAv272P26HSLz2f77Y6hzTKXiBi6g765fqpEDNc5fJw==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@ui5/logger": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0.tgz", @@ -1768,9 +1779,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001458", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001458.tgz", - "integrity": "sha512-lQ1VlUUq5q9ro9X+5gOEyH7i3vm+AYVT1WDCVB69XOZ17KZRhnZ9J0Sqz7wTHQaLBJccNCHq8/Ww5LlOIZbB0w==", + "version": "1.0.30001460", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001460.tgz", + "integrity": "sha512-Bud7abqjvEjipUkpLs4D7gR0l8hBYBHoa+tGtKJHvT2AYzLp1z7EmVkUT4ERpVUfca8S2HGIVs883D8pUH1ZzQ==", "dev": true, "funding": [ { @@ -2956,9 +2967,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.314", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.314.tgz", - "integrity": "sha512-+3RmNVx9hZLlc0gW//4yep0K5SYKmIvB5DXg1Yg6varsuAHlHwTeqeygfS8DWwLCsNOWrgj+p9qgM5WYjw1lXQ==", + "version": "1.4.320", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.320.tgz", + "integrity": "sha512-h70iRscrNluMZPVICXYl5SSB+rBKo22XfuIS1ER0OQxQZpKTnFpuS6coj7wY9M/3trv7OR88rRMOlKmRvDty7Q==", "dev": true }, "node_modules/emittery": { @@ -3169,9 +3180,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "40.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.0.0.tgz", - "integrity": "sha512-LOPyIu1vAVvGPkye3ci0moj0iNf3f8bmin6do2DYDj+77NRXWnkmhKRy8swWsatUs3mB5jYPWPUsFg9pyfEiyA==", + "version": "40.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.0.1.tgz", + "integrity": "sha512-KkiRInury7YrjjV5aCHDxwsPy6XFt5p2b2CnpDMITnWs8patNPf5kj24+VXIWw45kP6z/B0GOKfrYczB56OjQQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.36.1", @@ -3516,9 +3527,9 @@ "dev": true }, "node_modules/esquery": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.2.tgz", - "integrity": "sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -4239,6 +4250,20 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", + "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/immutable": { "version": "4.2.4", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.4.tgz", @@ -5697,9 +5722,9 @@ } }, "node_modules/minimatch": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", - "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.2.tgz", + "integrity": "sha512-xy4q7wou3vUoC9k1xGTXc+awNdGaGVHtFUaey8tiX4H1QRc04DZ/rmDFwNm2EBsuYEhAZ6SgMmYf3InGY6OauA==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -6951,6 +6976,29 @@ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, + "node_modules/path-scurry": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.1.tgz", + "integrity": "sha512-OW+5s+7cw6253Q4E+8qQ/u1fVvcJQCJo/VFD8pje+dbJCF1n5ZRMV2AEHbGp+5Q7jxQIYJxkHopnj6nzdGeZLA==", + "dependencies": { + "lru-cache": "^7.14.1", + "minipass": "^4.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "7.18.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", + "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", + "engines": { + "node": ">=12" + } + }, "node_modules/path-to-regexp": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", @@ -7743,9 +7791,12 @@ } }, "node_modules/rimraf": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.2.tgz", - "integrity": "sha512-BlIbgFryTbw3Dz6hyoWFhKk+unCcHMSkZGrTFVAx2WmttdBSonsdtRlwiuTbDqTKr+UlXIUqJVS4QT5tUzGENQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.3.0.tgz", + "integrity": "sha512-5qVDXPbByA1qSJEWMv1qAwKsoS22vVpsL2QyxCKBw4gf6XiFo1K3uRLY6uSOOBFDwnqAZtnbILqWKKlzh8bkGg==", + "dependencies": { + "glob": "^9.2.0" + }, "bin": { "rimraf": "dist/cjs/src/bin.js" }, @@ -7756,6 +7807,23 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/glob": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.2.1.tgz", + "integrity": "sha512-Pxxgq3W0HyA3XUvSXcFhRSs+43Jsx0ddxcFrbjxNGkL2Ak5BAUBxLqI5G6ADDeCHLfzzXFhe0b1yYcctGmytMA==", + "dependencies": { + "fs.realpath": "^1.0.0", + "minimatch": "^7.4.1", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -8812,12 +8880,12 @@ } }, "node_modules/tuf-js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.0.0.tgz", - "integrity": "sha512-1dxsQwESDzACJjTdYHQ4wJ1f/of7jALWKfJEHSBWUQB/5UTJUx9SW6GHXp4mZ1KvdBRJCpGjssoPFGi4hvw8/A==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.1.tgz", + "integrity": "sha512-WTp382/PR96k0dI4GD5RdiRhgOU0rAC7+lnoih/5pZg3cyb3aNMqDozleEEWwyfT3+FOg7Qz9JU3n6A44tLSHw==", "dependencies": { - "make-fetch-happen": "^11.0.1", - "minimatch": "^6.1.0" + "@tufjs/models": "1.0.0", + "make-fetch-happen": "^11.0.1" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index 7a9b3c1fadd..792c05b7172 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -133,7 +133,7 @@ "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.1", - "rimraf": "^4.1.2", + "rimraf": "^4.3.0", "semver": "^7.3.8", "xml2js": "^0.4.23" }, @@ -147,7 +147,7 @@ "eslint": "^8.35.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.0.0", + "eslint-plugin-jsdoc": "^40.0.1", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 5ae444268a5799ff5113cd5a50c387a68a78b384 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 Mar 2023 09:55:29 +0100 Subject: [PATCH 0871/1272] [ui5-project][INTERNAL] Bump coverallsapp/github-action from 1.2.0 to 1.2.4 (#587) * Bump coverallsapp/github-action from 1.2.0 to 1.2.4 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 1.2.0 to 1.2.4. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v1.2.0...v1.2.4) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * [INTERNAL] Remove manual configured github token With 1.2.4, defaulting automatically to github token. --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Florian Vogt --- packages/project/.github/workflows/github-ci.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 094d3a6d1d0..117d3c59251 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,6 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v1.2.0 - with: - github-token: ${{ secrets.GITHUB_TOKEN }} + uses: coverallsapp/github-action@v1.2.4 From 8755ac70de13d4e193188a3bc6922eb414b2e725 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Tue, 7 Mar 2023 16:00:31 +0200 Subject: [PATCH 0872/1272] [ui5-project][FIX] Resolve properly absolute path for ui5HomeDir (#588) --- .../lib/ui5Framework/AbstractResolver.js | 6 +- .../test/lib/ui5framework/AbstractResolver.js | 71 +++++++++++++++++-- 2 files changed, 71 insertions(+), 6 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 1b2f8bd2b90..e6e9537be9e 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -43,7 +43,11 @@ class AbstractResolver { throw new Error(`AbstractResolver: Missing parameter "version"`); } - this._ui5HomeDir = ui5HomeDir ? path.resolve(ui5HomeDir) : path.join(os.homedir(), ".ui5"); + // In some CI environments, the homedir might be set explicitly to a relative + // path (e.g. "./"), but tooling requires an absolute path + this._ui5HomeDir = path.resolve( + ui5HomeDir || path.join(os.homedir(), ".ui5") + ); this._cwd = cwd ? path.resolve(cwd) : process.cwd(); this._version = version; } diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index a8093f62964..7b1da9df382 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -4,17 +4,30 @@ import path from "node:path"; import os from "node:os"; import {fileURLToPath} from "node:url"; import {readFile} from "node:fs/promises"; -import AbstractResolver from "../../../lib/ui5Framework/AbstractResolver.js"; +import esmock from "esmock"; -class MyResolver extends AbstractResolver { - static async fetchAllVersions() {} -} +test.beforeEach(async (t) => { + t.context.osHomeDirStub = sinon.stub().callsFake(() => os.homedir()); + t.context.AbstractResolver = await esmock.p("../../../lib/ui5Framework/AbstractResolver.js", { + "node:os": { + homedir: t.context.osHomeDirStub + } + }); -test.afterEach.always(() => { + class MyResolver extends t.context.AbstractResolver { + static async fetchAllVersions() {} + } + + t.context.MyResolver = MyResolver; +}); + +test.afterEach.always((t) => { + esmock.purge(t.context.AbstractResolver); sinon.restore(); }); test("AbstractResolver: abstract constructor should throw", async (t) => { + const {AbstractResolver} = t.context; await t.throwsAsync(async () => { new AbstractResolver({ cwd: "/test-project/", @@ -24,6 +37,7 @@ test("AbstractResolver: abstract constructor should throw", async (t) => { }); test("AbstractResolver: constructor", (t) => { + const {MyResolver, AbstractResolver} = t.context; const resolver = new MyResolver({ cwd: "/test-project/", version: "1.75.0" @@ -33,12 +47,14 @@ test("AbstractResolver: constructor", (t) => { }); test("AbstractResolver: constructor requires 'version'", (t) => { + const {MyResolver} = t.context; t.throws(() => { new MyResolver({}); }, {message: `AbstractResolver: Missing parameter "version"`}); }); test("AbstractResolver: Set absolute 'cwd'", (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ version: "1.75.0", cwd: "/my-cwd" @@ -47,6 +63,7 @@ test("AbstractResolver: Set absolute 'cwd'", (t) => { }); test("AbstractResolver: Set relative 'cwd'", (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ version: "1.75.0", cwd: "./my-cwd" @@ -55,6 +72,7 @@ test("AbstractResolver: Set relative 'cwd'", (t) => { }); test("AbstractResolver: Defaults 'cwd' to process.cwd()", (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ version: "1.75.0", ui5HomeDir: "/ui5home" @@ -63,6 +81,7 @@ test("AbstractResolver: Defaults 'cwd' to process.cwd()", (t) => { }); test("AbstractResolver: Set absolute 'ui5HomeDir'", (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ version: "1.75.0", ui5HomeDir: "/my-ui5HomeDir" @@ -71,6 +90,7 @@ test("AbstractResolver: Set absolute 'ui5HomeDir'", (t) => { }); test("AbstractResolver: Set relative 'ui5HomeDir'", (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ version: "1.75.0", ui5HomeDir: "./my-ui5HomeDir" @@ -78,7 +98,19 @@ test("AbstractResolver: Set relative 'ui5HomeDir'", (t) => { t.is(resolver._ui5HomeDir, path.resolve("./my-ui5HomeDir"), "Should be resolved 'ui5HomeDir'"); }); +test("AbstractResolver: 'ui5HomeDir' overriden os.homedir()", (t) => { + const {MyResolver, osHomeDirStub} = t.context; + + osHomeDirStub.returns("./"); + + const resolver = new MyResolver({ + version: "1.75.0" + }); + t.is(resolver._ui5HomeDir, path.resolve("./.ui5"), "Should be resolved 'ui5HomeDir'"); +}); + test("AbstractResolver: Defaults 'ui5HomeDir' to ~/.ui5", (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ version: "1.75.0", cwd: "/test-project/" @@ -87,6 +119,7 @@ test("AbstractResolver: Defaults 'ui5HomeDir' to ~/.ui5", (t) => { }); test("AbstractResolver: getLibraryMetadata should throw an Error when not implemented", async (t) => { + const {MyResolver} = t.context; await t.throwsAsync(async () => { const resolver = new MyResolver({ cwd: "/test-project/", @@ -97,6 +130,7 @@ test("AbstractResolver: getLibraryMetadata should throw an Error when not implem }); test("AbstractResolver: handleLibrary should throw an Error when not implemented", async (t) => { + const {MyResolver} = t.context; await t.throwsAsync(async () => { const resolver = new MyResolver({ cwd: "/test-project/", @@ -107,6 +141,7 @@ test("AbstractResolver: handleLibrary should throw an Error when not implemented }); test("AbstractResolver: install", async (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ cwd: "/test-project/", version: "1.75.0" @@ -175,6 +210,7 @@ test("AbstractResolver: install", async (t) => { }); test("AbstractResolver: install error handling (rejection of metadata/install)", async (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ cwd: "/test-project/", version: "1.75.0" @@ -204,6 +240,7 @@ Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`}); }); test("AbstractResolver: install error handling (rejection of dependency metadata/install)", async (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ cwd: "/test-project/", version: "1.75.0" @@ -234,6 +271,7 @@ Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`}); }); test("AbstractResolver: install error handling (rejection of dependency install)", async (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ cwd: "/test-project/", version: "1.75.0" @@ -276,6 +314,7 @@ Failed to resolve library sap.ui.lib3: Error installing sap.ui.lib3`}); }); test("AbstractResolver: install error handling (handleLibrary throws error)", async (t) => { + const {MyResolver} = t.context; const resolver = new MyResolver({ cwd: "/test-project/", version: "1.75.0" @@ -297,12 +336,14 @@ Failed to resolve library sap.ui.lib2: Error within handleLibrary: sap.ui.lib2`} }); test("AbstractResolver: static fetchAllVersions should throw an Error when not implemented", async (t) => { + const {AbstractResolver} = t.context; await t.throwsAsync(async () => { await AbstractResolver.fetchAllVersions(); }, {message: `AbstractResolver: static fetchAllVersions must be implemented!`}); }); test.serial("AbstractResolver: Static resolveVersion resolves 'latest'", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.75.0", "1.75.1", "1.76.0"]); @@ -321,6 +362,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'latest'", async ( }); test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR'", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.75.0", "1.75.1", "1.76.0"]); @@ -339,6 +381,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR'", as }); test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH'", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.75.0", "1.75.1", "1.76.0"]); @@ -357,6 +400,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH }); test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH-prerelease'", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.76.0", "1.77.0", "1.78.0", "1.79.0-SNAPSHOT"]); @@ -375,6 +419,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH }); test.serial("AbstractResolver: Static resolveVersion does not include prereleases for 'latest' version", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.76.0", "1.77.0", "1.78.0", "1.79.0-SNAPSHOT"]); @@ -393,6 +438,7 @@ test.serial("AbstractResolver: Static resolveVersion does not include prerelease }); test.serial("AbstractResolver: Static resolveVersion without options", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.75.0"]); @@ -406,6 +452,7 @@ test.serial("AbstractResolver: Static resolveVersion without options", async (t) }); test.serial("AbstractResolver: Static resolveVersion throws error for 'lts'", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); const error = await t.throwsAsync(MyResolver.resolveVersion("lts", { @@ -419,6 +466,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for 'lts'", as }); test.serial("AbstractResolver: Static resolveVersion throws error for '1'", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); const error = await t.throwsAsync(MyResolver.resolveVersion("1", { @@ -432,6 +480,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for '1'", asyn }); test.serial("AbstractResolver: Static resolveVersion throws error for '1.x'", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); const error = await t.throwsAsync(MyResolver.resolveVersion("1.x", { @@ -445,6 +494,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for '1.x'", as }); test.serial("AbstractResolver: Static resolveVersion throws error for '1.75.x'", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); const error = await t.throwsAsync(MyResolver.resolveVersion("1.75.x", { @@ -458,6 +508,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for '1.75.x'", }); test.serial("AbstractResolver: Static resolveVersion throws error for '^1.75.0'", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); const error = await t.throwsAsync(MyResolver.resolveVersion("^1.75.0", { @@ -471,6 +522,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for '^1.75.0'" }); test.serial("AbstractResolver: Static resolveVersion throws error for '~1.75.0'", async (t) => { + const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); const error = await t.throwsAsync(MyResolver.resolveVersion("~1.75.0", { @@ -484,6 +536,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for '~1.75.0'" }); test.serial("AbstractResolver: Static resolveVersion throws error for version not found", async (t) => { + const {MyResolver} = t.context; sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.75.0", "1.75.1", "1.76.0"]); @@ -498,6 +551,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for version no test.serial( "AbstractResolver: Static resolveVersion throws error for version lower than lowest OpenUI5 version", async (t) => { + const {AbstractResolver} = t.context; class Openui5Resolver extends AbstractResolver { static async fetchAllVersions() {} } @@ -517,6 +571,7 @@ test.serial( test.serial( "AbstractResolver: Static resolveVersion throws error for version lower than lowest SAPUI5 version", async (t) => { + const {AbstractResolver} = t.context; class Sapui5Resolver extends AbstractResolver { static async fetchAllVersions() {} } @@ -536,6 +591,7 @@ test.serial( test.serial( "AbstractResolver: Static resolveVersion throws error when latest OpenUI5 version cannot be found", async (t) => { + const {AbstractResolver} = t.context; class Openui5Resolver extends AbstractResolver { static async fetchAllVersions() {} } @@ -554,6 +610,7 @@ test.serial( test.serial( "AbstractResolver: Static resolveVersion throws error when latest SAPUI5 version cannot be found", async (t) => { + const {AbstractResolver} = t.context; class Sapui5Resolver extends AbstractResolver { static async fetchAllVersions() {} } @@ -572,6 +629,7 @@ test.serial( test.serial( "AbstractResolver: Static resolveVersion throws error when OpenUI5 version range cannot be resolved", async (t) => { + const {AbstractResolver} = t.context; class Openui5Resolver extends AbstractResolver { static async fetchAllVersions() {} } @@ -590,6 +648,7 @@ test.serial( test.serial( "AbstractResolver: Static resolveVersion throws error when SAPUI5 version range cannot be resolved", async (t) => { + const {AbstractResolver} = t.context; class Sapui5Resolver extends AbstractResolver { static async fetchAllVersions() {} } @@ -607,6 +666,8 @@ test.serial( }); test.serial("AbstractResolver: SEMVER_VERSION_REGEXP should be aligned with JSON schema", async (t) => { + const {AbstractResolver} = t.context; + const projectSchema = JSON.parse( await readFile(fileURLToPath( new URL("../../../lib/validation/schema/specVersion/kind/project.json", import.meta.url) From 206f36049ca4006f24b5dc617f54ef338f4fec92 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Fri, 10 Mar 2023 10:19:51 +0000 Subject: [PATCH 0873/1272] [ui5-project]Release 3.0.4 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 7da8aad8f6e..59f95739421 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.4...HEAD). + + +## [v3.0.4] - 2023-03-07 +### Bug Fixes +- Resolve properly absolute path for ui5HomeDir ([#588](https://github.com/SAP/ui5-project/issues/588)) [`9b414a7`](https://github.com/SAP/ui5-project/commit/9b414a77a1d86f6a3560231ae04db407e2f022c5) + ## [v3.0.3] - 2023-03-01 @@ -329,6 +335,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.0.4]: https://github.com/SAP/ui5-project/compare/v3.0.3...v3.0.4 [v3.0.3]: https://github.com/SAP/ui5-project/compare/v3.0.2...v3.0.3 [v3.0.2]: https://github.com/SAP/ui5-project/compare/v3.0.1...v3.0.2 [v3.0.1]: https://github.com/SAP/ui5-project/compare/v3.0.0...v3.0.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 308b4189ead..96ad9360174 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.3", + "version": "3.0.4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.3", + "version": "3.0.4", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 792c05b7172..75a1836b880 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.3", + "version": "3.0.4", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From e704edcf5d9c8b50220593eb936f91765dd5c4f6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 12 Mar 2023 03:20:35 +0000 Subject: [PATCH 0874/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 218 +++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 117 insertions(+), 105 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 96ad9360174..2f62f5ca4a4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -26,7 +26,7 @@ "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.1", - "rimraf": "^4.3.0", + "rimraf": "^4.4.0", "semver": "^7.3.8", "xml2js": "^0.4.23" }, @@ -37,7 +37,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.35.0", + "eslint": "^8.36.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^40.0.1", @@ -468,15 +468,39 @@ "node": "^14 || ^16 || ^17 || ^18 || ^19" } }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.2.0.tgz", + "integrity": "sha512-gB8T4H4DEfX2IV9zGDJPOBgP1e/DbfCPDTtEqUMckpvzS1OYtva8JdFYBqMwYk7xAQ429WGF/UPqn8uQ//h2vQ==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.4.0.tgz", + "integrity": "sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, "node_modules/@eslint/eslintrc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", - "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.1.tgz", + "integrity": "sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.4.0", + "espree": "^9.5.0", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -541,9 +565,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", - "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.36.0.tgz", + "integrity": "sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -738,9 +762,9 @@ } }, "node_modules/@jsdoc/salty": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.4.tgz", - "integrity": "sha512-HRBmslXHM6kpZOfGf0o41NUlGYGER0NoUBcT2Sik4rxzAN7f7+si7ad57SFSFpftvaMVnUaY7YlJuv3v5G80ZA==", + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.5.tgz", + "integrity": "sha512-TfRP53RqunNe2HBobVBJ0VLhK1HbfvBYeTC1ahnN64PWvyYyGebmMiPkuwvD9fpw2ZbkoPb8Q7mwy0aR8Z9rvw==", "dependencies": { "lodash": "^4.17.21" }, @@ -811,9 +835,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", - "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "engines": { "node": ">=12" } @@ -1266,12 +1290,12 @@ } }, "node_modules/agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.3.0.tgz", + "integrity": "sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==", "dependencies": { "debug": "^4.1.0", - "depd": "^1.1.2", + "depd": "^2.0.0", "humanize-ms": "^1.2.1" }, "engines": { @@ -1667,9 +1691,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", - "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "engines": { "node": ">=12" } @@ -1779,9 +1803,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001460", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001460.tgz", - "integrity": "sha512-Bud7abqjvEjipUkpLs4D7gR0l8hBYBHoa+tGtKJHvT2AYzLp1z7EmVkUT4ERpVUfca8S2HGIVs883D8pUH1ZzQ==", + "version": "1.0.30001464", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001464.tgz", + "integrity": "sha512-oww27MtUmusatpRpCGSOneQk2/l5czXANDSFvsc7VuOQ86s3ANhZetpwXNf1zY/zdfP63Xvjz325DAdAoES13g==", "dev": true, "funding": [ { @@ -2809,11 +2833,11 @@ } }, "node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/deps-regex": { @@ -2967,9 +2991,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.320", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.320.tgz", - "integrity": "sha512-h70iRscrNluMZPVICXYl5SSB+rBKo22XfuIS1ER0OQxQZpKTnFpuS6coj7wY9M/3trv7OR88rRMOlKmRvDty7Q==", + "version": "1.4.328", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.328.tgz", + "integrity": "sha512-DE9tTy2PNmy1v55AZAO542ui+MLC2cvINMK4P2LXGsJdput/ThVG9t+QGecPuAZZSgC8XoI+Jh9M1OG9IoNSCw==", "dev": true }, "node_modules/emittery": { @@ -3089,13 +3113,15 @@ } }, "node_modules/eslint": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", - "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.36.0.tgz", + "integrity": "sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^2.0.0", - "@eslint/js": "8.35.0", + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.4.0", + "@eslint/eslintrc": "^2.0.1", + "@eslint/js": "8.36.0", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3106,9 +3132,8 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", + "espree": "^9.5.0", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -3130,7 +3155,6 @@ "minimatch": "^3.1.2", "natural-compare": "^1.4.0", "optionator": "^0.9.1", - "regexpp": "^3.2.0", "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" @@ -3492,9 +3516,9 @@ } }, "node_modules/espree": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", - "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.0.tgz", + "integrity": "sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw==", "dependencies": { "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", @@ -4265,9 +4289,9 @@ } }, "node_modules/immutable": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.4.tgz", - "integrity": "sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz", + "integrity": "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==", "dev": true }, "node_modules/import-fresh": { @@ -4366,9 +4390,9 @@ "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" }, "node_modules/irregular-plurals": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.4.1.tgz", - "integrity": "sha512-JR7VL+1Kd9z79bE+2uSgifpzrTwLWmTvyeUewhxZCHVtpPImAsLk4adfRxg86uvdsJ8etYYrpzN7vRT30gGnOA==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.5.0.tgz", + "integrity": "sha512-1ANGLZ+Nkv1ptFb2pa8oG8Lem4krflKuX/gINiHJHjJUKaJHk/SXk5x6K3J+39/p0h1RQ2saROclJJ+QLvETCQ==", "dev": true, "engines": { "node": ">=8" @@ -5288,9 +5312,9 @@ } }, "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", - "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "engines": { "node": ">=12" } @@ -5768,9 +5792,9 @@ } }, "node_modules/minipass": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.4.tgz", - "integrity": "sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==", + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.5.tgz", + "integrity": "sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==", "engines": { "node": ">=8" } @@ -6269,9 +6293,9 @@ } }, "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", - "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "engines": { "node": ">=12" } @@ -6319,9 +6343,9 @@ } }, "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", - "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "engines": { "node": ">=12" } @@ -6992,9 +7016,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", - "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "engines": { "node": ">=12" } @@ -7474,9 +7498,9 @@ } }, "node_modules/read-package-json/node_modules/lru-cache": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", - "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "engines": { "node": ">=12" } @@ -7627,9 +7651,9 @@ } }, "node_modules/readable-stream": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.1.tgz", - "integrity": "sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -7683,18 +7707,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, "node_modules/release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", @@ -7791,9 +7803,9 @@ } }, "node_modules/rimraf": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.3.0.tgz", - "integrity": "sha512-5qVDXPbByA1qSJEWMv1qAwKsoS22vVpsL2QyxCKBw4gf6XiFo1K3uRLY6uSOOBFDwnqAZtnbILqWKKlzh8bkGg==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.0.tgz", + "integrity": "sha512-X36S+qpCUR0HjXlkDe4NAOhS//aHH0Z+h8Ckf2auGJk3PTnx5rLmrHkwNdbVQuCSUhOyFrlRvFEllZOYE+yZGQ==", "dependencies": { "glob": "^9.2.0" }, @@ -7872,9 +7884,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.58.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.58.3.tgz", - "integrity": "sha512-Q7RaEtYf6BflYrQ+buPudKR26/lH+10EmO9bBqbmPh/KeLqv8bjpTNqxe71ocONqXq+jYiCbpPUmQMS+JJPk4A==", + "version": "1.59.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.59.2.tgz", + "integrity": "sha512-jJyO6SmbzkJexF8MUorHx5tAilcgabioYxT/BHbY4+OvoqmbHxsYlrjZ8Adhqcgl6Zqwie0TgMXLCAmPFxXOuw==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8022,9 +8034,9 @@ } }, "node_modules/sigstore/node_modules/lru-cache": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", - "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "engines": { "node": ">=12" } @@ -8256,9 +8268,9 @@ } }, "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -8279,9 +8291,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", - "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz", + "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==" }, "node_modules/sprintf-js": { "version": "1.0.3", @@ -8697,9 +8709,9 @@ } }, "node_modules/terser": { - "version": "5.16.5", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.5.tgz", - "integrity": "sha512-qcwfg4+RZa3YvlFh0qjifnzBHjKGNbtDo9yivMqMFDy9Q6FSaQWSB/j1xKhsoUFJIqDOM3TsN6D5xbrMrFcHbg==", + "version": "5.16.6", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.6.tgz", + "integrity": "sha512-IBZ+ZQIA9sMaXmRZCUMDjNH0D5AQQfdn4WUjHL0+1lF4TP1IHRJbrhb6fNaXWikrYQTSkb7SLxkeXAiy1p7mbg==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -8892,9 +8904,9 @@ } }, "node_modules/tuf-js/node_modules/lru-cache": { - "version": "7.18.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.1.tgz", - "integrity": "sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "engines": { "node": ">=12" } diff --git a/packages/project/package.json b/packages/project/package.json index 75a1836b880..973b35f2f87 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -133,7 +133,7 @@ "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.1", - "rimraf": "^4.3.0", + "rimraf": "^4.4.0", "semver": "^7.3.8", "xml2js": "^0.4.23" }, @@ -144,7 +144,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.35.0", + "eslint": "^8.36.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^40.0.1", From 811d3032829bd5c4238b61b6ed7414efa36e6dc6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 19 Mar 2023 03:20:35 +0000 Subject: [PATCH 0875/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 176 +++++++++++++++++------------ packages/project/package.json | 6 +- 2 files changed, 109 insertions(+), 73 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2f62f5ca4a4..9d0221dd219 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -17,7 +17,7 @@ "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", "globby": "^13.1.3", - "graceful-fs": "^4.2.10", + "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", @@ -40,7 +40,7 @@ "eslint": "^8.36.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.0.1", + "eslint-plugin-jsdoc": "^40.1.0", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -50,7 +50,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.1.0", - "sinon": "^15.0.1", + "sinon": "^15.0.2", "tap-xunit": "^2.4.1" }, "engines": { @@ -97,21 +97,21 @@ } }, "node_modules/@babel/core": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", - "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.3.tgz", + "integrity": "sha512-qIJONzoa/qiHghnm0l1n4i/6IIziDpzqc36FBs4pzMhDUraHqponwJLiAKm1hGLP3OSB/TVNz6rMwVGpwxxySw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.0", + "@babel/generator": "^7.21.3", "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.21.0", + "@babel/helper-module-transforms": "^7.21.2", "@babel/helpers": "^7.21.0", - "@babel/parser": "^7.21.0", + "@babel/parser": "^7.21.3", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0", + "@babel/traverse": "^7.21.3", + "@babel/types": "^7.21.3", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -136,12 +136,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.21.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", - "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.3.tgz", + "integrity": "sha512-QS3iR1GYC/YGUnW7IdggFeN5c1poPUurnGttOV/bZgPGV+izC/D8HnD6DLwod0fsatNyVn1G3EVWMYIF0nHbeA==", "dev": true, "dependencies": { - "@babel/types": "^7.21.0", + "@babel/types": "^7.21.3", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -395,9 +395,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", - "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==", + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.3.tgz", + "integrity": "sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==", "bin": { "parser": "bin/babel-parser.js" }, @@ -420,19 +420,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", - "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.3.tgz", + "integrity": "sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.1", + "@babel/generator": "^7.21.3", "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.2", - "@babel/types": "^7.21.2", + "@babel/parser": "^7.21.3", + "@babel/types": "^7.21.3", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -441,9 +441,9 @@ } }, "node_modules/@babel/types": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", - "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.3.tgz", + "integrity": "sha512-sBGdETxC+/M4o/zKC0sl6sjWv62WFR/uzxrJ6uYyMLZOUlPnwzw0tKgVHOXxaAd5l2g8pEDM5RZ495GPQI77kg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.19.4", @@ -455,23 +455,23 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.36.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.1.tgz", - "integrity": "sha512-922xqFsTpHs6D0BUiG4toiyPOMc8/jafnWKxz1KWgS4XzKPy2qXf1Pe6UFuNSCQqt6tOuhAWXBNuuyUhJmw9Vg==", + "version": "0.37.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.37.0.tgz", + "integrity": "sha512-hjK0wnsPCYLlF+HHB4R/RbUjOWeLW2SlarB67+Do5WsKILOkmIZvvPJFbtWSmbypxcjpoECLAMzoao0D4Bg5ZQ==", "dev": true, "dependencies": { "comment-parser": "1.3.1", "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~3.1.0" + "jsdoc-type-pratt-parser": "~4.0.0" }, "engines": { "node": "^14 || ^16 || ^17 || ^18 || ^19" } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.2.0.tgz", - "integrity": "sha512-gB8T4H4DEfX2IV9zGDJPOBgP1e/DbfCPDTtEqUMckpvzS1OYtva8JdFYBqMwYk7xAQ429WGF/UPqn8uQ//h2vQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.3.0.tgz", + "integrity": "sha512-v3oplH6FYCULtFuCeqyuTd9D2WKO937Dxdq+GmHOLL72TTRriLxz2VLlNfkZRsvj6PKnOPAtuT6dwrs/pA5DvA==", "dev": true, "dependencies": { "eslint-visitor-keys": "^3.3.0" @@ -999,10 +999,18 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@sigstore/protobuf-specs": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.1.0.tgz", + "integrity": "sha512-a31EnjuIDSX8IXBUib3cYLDRlPMU36AWX4xS8ysLaNu4ZzUesDiPt83pgrW2X1YLMe5L2HbDyaKK5BrL4cNKaQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@sinonjs/commons": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", - "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", + "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", "dev": true, "dependencies": { "type-detect": "4.0.8" @@ -1017,6 +1025,15 @@ "@sinonjs/commons": "^2.0.0" } }, + "node_modules/@sinonjs/fake-timers/node_modules/@sinonjs/commons": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", + "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, "node_modules/@sinonjs/samsam": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-7.0.1.tgz", @@ -1028,6 +1045,15 @@ "type-detect": "^4.0.8" } }, + "node_modules/@sinonjs/samsam/node_modules/@sinonjs/commons": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", + "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, "node_modules/@sinonjs/text-encoding": { "version": "0.7.2", "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", @@ -1803,9 +1829,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001464", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001464.tgz", - "integrity": "sha512-oww27MtUmusatpRpCGSOneQk2/l5czXANDSFvsc7VuOQ86s3ANhZetpwXNf1zY/zdfP63Xvjz325DAdAoES13g==", + "version": "1.0.30001467", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001467.tgz", + "integrity": "sha512-cEdN/5e+RPikvl9AHm4uuLXxeCNq8rFsQ+lPHTfe/OtypP3WwnVVbjn+6uBV7PaFL6xUFzTh+sSCOz1rKhcO+Q==", "dev": true, "funding": [ { @@ -2991,9 +3017,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.328", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.328.tgz", - "integrity": "sha512-DE9tTy2PNmy1v55AZAO542ui+MLC2cvINMK4P2LXGsJdput/ThVG9t+QGecPuAZZSgC8XoI+Jh9M1OG9IoNSCw==", + "version": "1.4.333", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.333.tgz", + "integrity": "sha512-YyE8+GKyGtPEP1/kpvqsdhD6rA/TP1DUFDN4uiU/YI52NzDxmwHkEb3qjId8hLBa5siJvG0sfC3O66501jMruQ==", "dev": true }, "node_modules/emittery": { @@ -3204,16 +3230,16 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "40.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.0.1.tgz", - "integrity": "sha512-KkiRInury7YrjjV5aCHDxwsPy6XFt5p2b2CnpDMITnWs8patNPf5kj24+VXIWw45kP6z/B0GOKfrYczB56OjQQ==", + "version": "40.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.1.0.tgz", + "integrity": "sha512-ANvrhiu62VlSorARM0hup60VQsS3hNyp0Ca7cnJDj8tpJzM7tNhBVqMVYXSuLzEmqrpwx6aAh+NAN2DdAGG5fQ==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.36.1", + "@es-joy/jsdoccomment": "~0.37.0", "comment-parser": "1.3.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", - "esquery": "^1.4.0", + "esquery": "^1.5.0", "semver": "^7.3.8", "spdx-expression-parse": "^3.0.1" }, @@ -4065,9 +4091,9 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, "node_modules/grapheme-splitter": { "version": "1.0.4", @@ -4896,9 +4922,9 @@ } }, "node_modules/jsdoc-type-pratt-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", - "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", + "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", "dev": true, "engines": { "node": ">=12.0.0" @@ -6097,6 +6123,15 @@ "path-to-regexp": "^1.7.0" } }, + "node_modules/nise/node_modules/@sinonjs/commons": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", + "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, "node_modules/node-gyp": { "version": "9.3.1", "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.1.tgz", @@ -7820,9 +7855,9 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.2.1.tgz", - "integrity": "sha512-Pxxgq3W0HyA3XUvSXcFhRSs+43Jsx0ddxcFrbjxNGkL2Ak5BAUBxLqI5G6ADDeCHLfzzXFhe0b1yYcctGmytMA==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.0.tgz", + "integrity": "sha512-EAZejC7JvnQINayvB/7BJbpZpNOJ8Lrw2OZNEvQxe0vaLn1SuwMcfV7/MNaX8L/T0wmptBFI4YMtDvSBxYDc7w==", "dependencies": { "fs.realpath": "^1.0.0", "minimatch": "^7.4.1", @@ -7884,9 +7919,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.59.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.59.2.tgz", - "integrity": "sha512-jJyO6SmbzkJexF8MUorHx5tAilcgabioYxT/BHbY4+OvoqmbHxsYlrjZ8Adhqcgl6Zqwie0TgMXLCAmPFxXOuw==", + "version": "1.59.3", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.59.3.tgz", + "integrity": "sha512-QCq98N3hX1jfTCoUAsF3eyGuXLsY7BCnCEg9qAact94Yc21npG2/mVOqoDvE0fCbWDqiM4WlcJQla0gWG2YlxQ==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8019,10 +8054,11 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sigstore": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.0.0.tgz", - "integrity": "sha512-e+qfbn/zf1+rCza/BhIA//Awmf0v1pa5HQS8Xk8iXrn9bgytytVLqYD0P7NSqZ6IELTgq+tcDvLPkQjNHyWLNg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.1.1.tgz", + "integrity": "sha512-4hR3tPP1y59YWlaoAgAWFVZ7srTjNWOrrpkQXWu05qP0BvwFYyt3K3l848+IHo+mKhkOzGcNDf7ktASXLEPC+A==", "dependencies": { + "@sigstore/protobuf-specs": "^0.1.0", "make-fetch-happen": "^11.0.1", "tuf-js": "^1.0.0" }, @@ -8083,16 +8119,16 @@ } }, "node_modules/sinon": { - "version": "15.0.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz", - "integrity": "sha512-PZXKc08f/wcA/BMRGBze2Wmw50CWPiAH3E21EOi4B49vJ616vW4DQh4fQrqsYox2aNR/N3kCqLuB0PwwOucQrg==", + "version": "15.0.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.2.tgz", + "integrity": "sha512-PCVP63XZkg0/LOqQH5rEU4LILuvTFMb5tNxTHfs6VUMNnZz2XrnGSTZbAGITjzwQWbl/Bl/8hi4G3zZWjyBwHg==", "dev": true, "dependencies": { - "@sinonjs/commons": "^2.0.0", - "@sinonjs/fake-timers": "10.0.2", + "@sinonjs/commons": "^3.0.0", + "@sinonjs/fake-timers": "^10.0.2", "@sinonjs/samsam": "^7.0.1", - "diff": "^5.0.0", - "nise": "^5.1.2", + "diff": "^5.1.0", + "nise": "^5.1.4", "supports-color": "^7.2.0" }, "funding": { diff --git a/packages/project/package.json b/packages/project/package.json index 973b35f2f87..0224d54a74c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -124,7 +124,7 @@ "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", "globby": "^13.1.3", - "graceful-fs": "^4.2.10", + "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", @@ -147,7 +147,7 @@ "eslint": "^8.36.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.0.1", + "eslint-plugin-jsdoc": "^40.1.0", "esmock": "^2.1.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -157,7 +157,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.1.0", - "sinon": "^15.0.1", + "sinon": "^15.0.2", "tap-xunit": "^2.4.1" } } From d62cda705221b4b87ac6854d77fdc4323f023cc3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 20 Mar 2023 05:56:44 +0000 Subject: [PATCH 0876/1272] [ui5-project]Bump coverallsapp/github-action from 1.2.4 to 2.0.0 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 1.2.4 to 2.0.0. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v1.2.4...v2.0.0) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 117d3c59251..be0b0179952 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v1.2.4 + uses: coverallsapp/github-action@v2.0.0 From 57d2c6bcdf3acf7994b71a1f4f8872e0e69ff1c2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 26 Mar 2023 02:20:22 +0000 Subject: [PATCH 0877/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 875 +++++++++++++++++++---------- packages/project/package.json | 6 +- 2 files changed, 581 insertions(+), 300 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9d0221dd219..36c3b0fbb71 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -26,7 +26,7 @@ "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.1", - "rimraf": "^4.4.0", + "rimraf": "^4.4.1", "semver": "^7.3.8", "xml2js": "^0.4.23" }, @@ -41,7 +41,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^40.1.0", - "esmock": "^2.1.0", + "esmock": "^2.2.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", @@ -49,7 +49,7 @@ "js-beautify": "^1.14.7", "jsdoc": "^4.0.2", "nyc": "^15.1.0", - "open-cli": "^7.1.0", + "open-cli": "^7.2.0", "sinon": "^15.0.2", "tap-xunit": "^2.4.1" }, @@ -469,9 +469,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.3.0.tgz", - "integrity": "sha512-v3oplH6FYCULtFuCeqyuTd9D2WKO937Dxdq+GmHOLL72TTRriLxz2VLlNfkZRsvj6PKnOPAtuT6dwrs/pA5DvA==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", "dev": true, "dependencies": { "eslint-visitor-keys": "^3.3.0" @@ -484,9 +484,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.4.0.tgz", - "integrity": "sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.4.1.tgz", + "integrity": "sha512-BISJ6ZE4xQsuL/FmsyRaiffpq977bMlsKfGHTQrOGFErfByxIe6iZTxPf/00Zon9b9a7iUykfQwejN3s2ZW/Bw==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -816,13 +816,12 @@ } }, "node_modules/@npmcli/git": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.0.3.tgz", - "integrity": "sha512-8cXNkDIbnXPVbhXMmQ7/bklCAjtmPaXfI9aEM4iH+xSuEHINLMHhlfESvVwdqmHJRJkR48vNJTSUvoF6GRPSFA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.0.4.tgz", + "integrity": "sha512-5yZghx+u5M47LghaybLCkdSyFzV/w4OuH12d96HO389Ik9CDsLaDZJVynSGGVJOLn6gy/k7Dz5XYcplM3uxXRg==", "dependencies": { "@npmcli/promise-spawn": "^6.0.0", "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", "npm-pick-manifest": "^8.0.0", "proc-log": "^3.0.0", "promise-inflight": "^1.0.1", @@ -1075,30 +1074,16 @@ } }, "node_modules/@tufjs/models": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.0.tgz", - "integrity": "sha512-RRMu4uMxWnZlxaIBxahSb2IssFZiu188sndesZflWOe1cA/qUqtemSIoBWbuVKPvvdktapImWNnKpBcc+VrCQw==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.1.tgz", + "integrity": "sha512-AY0VoG/AXdlSOocuREfPoEW4SNhOPp/7fw6mpAxfVIny1uZ+0fEtMoCi7NhELSlqQIRLMu7RgfKhkxT+AJ+EXg==", "dependencies": { - "minimatch": "^6.1.0" + "minimatch": "^7.4.2" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@tufjs/models/node_modules/minimatch": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", - "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@types/linkify-it": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", @@ -1580,6 +1565,15 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "node_modules/big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -1605,6 +1599,18 @@ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, + "node_modules/bplist-parser": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", + "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", + "dev": true, + "dependencies": { + "big-integer": "^1.6.44" + }, + "engines": { + "node": ">= 5.10.0" + } + }, "node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -1665,14 +1671,29 @@ "semver": "^7.0.0" } }, + "node_modules/bundle-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", + "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", + "dev": true, + "dependencies": { + "run-applescript": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/cacache": { - "version": "17.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.4.tgz", - "integrity": "sha512-Z/nL3gU+zTUjz5pCA5vVjYM8pmaw2kxM7JEiE0fv3w77Wj+sFbi70CrBruUWH0uNcEdvLDixFpgA2JM4F4DBjA==", + "version": "17.0.5", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.5.tgz", + "integrity": "sha512-Y/PRQevNSsjAPWykl9aeGz8Pr+OI6BYM9fYDNMvOkuUiG9IhG4LEmaYrZZZvioMUEQ+cBCxT0v8wrnCURccyKA==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", - "glob": "^8.0.1", + "glob": "^9.3.1", "lru-cache": "^7.7.1", "minipass": "^4.0.0", "minipass-collect": "^1.0.2", @@ -1708,6 +1729,23 @@ "node": ">=6" } }, + "node_modules/cacache/node_modules/glob": { + "version": "9.3.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.2.tgz", + "integrity": "sha512-BTv/JhKXFEHsErMte/AnfiSv8yYOLLiyH2lTg8vn02O21zWFgHPTfxtgn1QRe7NRgggUhC8hacR2Re94svHqeA==", + "dependencies": { + "fs.realpath": "^1.0.0", + "minimatch": "^7.4.1", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/cacache/node_modules/indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", @@ -1787,51 +1825,51 @@ } }, "node_modules/camelcase-keys": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz", - "integrity": "sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-8.0.2.tgz", + "integrity": "sha512-qMKdlOfsjlezMqxkUGGMaWWs17i2HoL15tM+wtx8ld4nLrUwU58TFdvyGOz/piNP842KeO8yXvggVQSdQ828NA==", "dev": true, "dependencies": { - "camelcase": "^6.3.0", - "map-obj": "^4.1.0", - "quick-lru": "^5.1.1", - "type-fest": "^1.2.1" + "camelcase": "^7.0.0", + "map-obj": "^4.3.0", + "quick-lru": "^6.1.1", + "type-fest": "^2.13.0" }, "engines": { - "node": ">=12" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/camelcase-keys/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-7.0.1.tgz", + "integrity": "sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==", "dev": true, "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/camelcase-keys/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12.20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/caniuse-lite": { - "version": "1.0.30001467", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001467.tgz", - "integrity": "sha512-cEdN/5e+RPikvl9AHm4uuLXxeCNq8rFsQ+lPHTfe/OtypP3WwnVVbjn+6uBV7PaFL6xUFzTh+sSCOz1rKhcO+Q==", + "version": "1.0.30001469", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001469.tgz", + "integrity": "sha512-Rcp7221ScNqQPP3W+lVOYDyjdR6dC+neEQCttoNr5bAyz54AboB4iwpnWgyi8P4YUsPybVzT4LgWiBbI3drL4g==", "dev": true, "funding": [ { @@ -2583,6 +2621,40 @@ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, + "node_modules/default-browser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", + "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", + "dev": true, + "dependencies": { + "bundle-name": "^3.0.0", + "default-browser-id": "^3.0.0", + "execa": "^7.1.1", + "titleize": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/default-browser-id": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", + "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", + "dev": true, + "dependencies": { + "bplist-parser": "^0.2.0", + "untildify": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/default-require-extensions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz", @@ -2599,12 +2671,15 @@ } }, "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", + "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", "dev": true, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/del": { @@ -2858,6 +2933,15 @@ "node": ">=10" } }, + "node_modules/depcheck/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -3017,9 +3101,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.333", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.333.tgz", - "integrity": "sha512-YyE8+GKyGtPEP1/kpvqsdhD6rA/TP1DUFDN4uiU/YI52NzDxmwHkEb3qjId8hLBa5siJvG0sfC3O66501jMruQ==", + "version": "1.4.340", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.340.tgz", + "integrity": "sha512-zx8hqumOqltKsv/MF50yvdAlPF9S/4PXbyfzJS6ZGhbddGkRegdwImmfSVqCkEziYzrIGZ/TlrzBND4FysfkDg==", "dev": true }, "node_modules/emittery": { @@ -3533,9 +3617,9 @@ } }, "node_modules/esmock": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.1.0.tgz", - "integrity": "sha512-8/2+iFfcB5FMJDBWXmXCY/4GSaI8sMCWUmq2laroQc3y9AI53QMm5Ew25DkW9FMaM8dBH8hmvOr2l3qChJ2JgA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.2.0.tgz", + "integrity": "sha512-4+K/DwcXyBCF8xjuz/PVYCFs2YmHOJNFxHq46cj05QtCgx3b+WXZQVpI7CRC8LY+Ht23mUSHz+Id/md9a2phbQ==", "dev": true, "engines": { "node": ">=14.16.0" @@ -3645,6 +3729,41 @@ "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, + "node_modules/execa": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.1.1.tgz", + "integrity": "sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^4.3.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/execa/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -4012,6 +4131,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/glob": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", @@ -4152,32 +4283,26 @@ } }, "node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz", + "integrity": "sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw==", + "dev": true, "dependencies": { - "lru-cache": "^6.0.0" + "lru-cache": "^7.5.1" }, "engines": { - "node": ">=10" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, "engines": { - "node": ">=10" + "node": ">=12" } }, - "node_modules/hosted-git-info/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -4185,9 +4310,9 @@ "dev": true }, "node_modules/htmlparser2": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", - "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", "funding": [ "https://github.com/fb55/htmlparser2?sponsor=1", { @@ -4197,9 +4322,9 @@ ], "dependencies": { "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", + "domhandler": "^5.0.3", "domutils": "^3.0.1", - "entities": "^4.3.0" + "entities": "^4.4.0" } }, "node_modules/http-cache-semantics": { @@ -4232,6 +4357,15 @@ "node": ">= 6" } }, + "node_modules/human-signals": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "dev": true, + "engines": { + "node": ">=14.18.0" + } + }, "node_modules/humanize-ms": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", @@ -4290,30 +4424,16 @@ } }, "node_modules/ignore-walk": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.1.tgz", - "integrity": "sha512-/c8MxUAqpRccq+LyDOecwF+9KqajueJHh8fz7g3YqjMZt+NSfJzx05zrKiXwa2sKwFCzaiZ5qUVfRj0pmxixEA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.2.tgz", + "integrity": "sha512-ezmQ1Dg2b3jVZh2Dh+ar6Eu2MqNSTkyb32HU2MAQQQX9tKM3q/UQ/9lf03lQ5hW+fOeoMnwxwkleZ0xcNp0/qg==", "dependencies": { - "minimatch": "^6.1.6" + "minimatch": "^7.4.2" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/ignore-walk/node_modules/minimatch": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", - "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/immutable": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz", @@ -4453,15 +4573,15 @@ } }, "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", "dev": true, "bin": { "is-docker": "cli.js" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -4504,6 +4624,24 @@ "node": ">=0.10.0" } }, + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "dev": true, + "dependencies": { + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-lambda": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", @@ -4615,6 +4753,21 @@ "node": ">=8" } }, + "node_modules/is-wsl/node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", @@ -4851,9 +5004,9 @@ } }, "node_modules/js-sdsl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", - "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz", + "integrity": "sha512-FfVSdx6pJ41Oa+CF7RDaFmTnCaFhua+SNYQX74riGOpl96x+2jQCqEfQ2bnXu/5DPCqlRuiqyvTJM0Qjz26IVg==", "dev": true, "funding": { "type": "opencollective", @@ -5509,9 +5662,9 @@ } }, "node_modules/marked": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz", - "integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", + "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", "bin": { "marked": "bin/marked.js" }, @@ -5568,150 +5721,60 @@ } }, "node_modules/meow": { - "version": "10.1.5", - "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz", - "integrity": "sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-11.0.0.tgz", + "integrity": "sha512-Cl0yeeIrko6d94KpUo1M+0X1sB14ikoaqlIGuTH1fW4I+E3+YljL54/hb/BWmVfrV9tTV9zU04+xjw08Fh2WkA==", "dev": true, "dependencies": { "@types/minimist": "^1.2.2", - "camelcase-keys": "^7.0.0", - "decamelize": "^5.0.0", + "camelcase-keys": "^8.0.2", + "decamelize": "^6.0.0", "decamelize-keys": "^1.1.0", "hard-rejection": "^2.1.0", "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.2", - "read-pkg-up": "^8.0.0", + "normalize-package-data": "^4.0.1", + "read-pkg-up": "^9.1.0", "redent": "^4.0.0", "trim-newlines": "^4.0.2", - "type-fest": "^1.2.2", - "yargs-parser": "^20.2.9" + "type-fest": "^3.1.0", + "yargs-parser": "^21.1.1" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/meow/node_modules/decamelize": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", - "integrity": "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-6.0.0.tgz", + "integrity": "sha512-Fv96DCsdOgB6mdGl67MT5JaTNKRzrzill5OH5s8bjYJXVlcXyPYGyPsUkWyGV5p1TXI5esYIYMMeDJL0hEIwaA==", "dev": true, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/meow/node_modules/type-fest": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.7.0.tgz", + "integrity": "sha512-A2qUJ/j8vkKIT+UorxayZjFJoEdNkIPZkjOJSWezoAbRQd7QEhnz2iJlfVy4Or0GuEnCXts5cNorQNUvdLkaSQ==", "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/read-pkg": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", - "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", - "dev": true, - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/read-pkg-up": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", - "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", - "dev": true, - "dependencies": { - "find-up": "^5.0.0", - "read-pkg": "^6.0.0", - "type-fest": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true }, "node_modules/merge2": { "version": "1.4.1", @@ -5772,9 +5835,9 @@ } }, "node_modules/minimatch": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.2.tgz", - "integrity": "sha512-xy4q7wou3vUoC9k1xGTXc+awNdGaGVHtFUaey8tiX4H1QRc04DZ/rmDFwNm2EBsuYEhAZ6SgMmYf3InGY6OauA==", + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.3.tgz", + "integrity": "sha512-5UB4yYusDtkRPbRiy1cqZ1IpGNcJCGlEMG17RKzPddpyiPKoCdwohbED8g4QXT0ewCt8LTkQXuljsUfQ3FKM4A==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -6250,17 +6313,18 @@ } }, "node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", + "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", + "dev": true, "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" + "hosted-git-info": "^5.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": ">=10" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/normalize-path": { @@ -6284,9 +6348,9 @@ } }, "node_modules/npm-install-checks": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.0.0.tgz", - "integrity": "sha512-SBU9oFglRVZnfElwAtF14NivyulDqF1VKqqwNsFW9HDcbHMAPHpRSsVFgKuwFGq/hVvWZExz62Th0kvxn/XE7Q==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.1.0.tgz", + "integrity": "sha512-udSGENih/5xKh3Ex+L0PtZcOt0Pa+6ppDLnpG5D49/EhMja3LupaY9E/DtJTxyFBwE09ot7Fc+H4DywnZNWTVA==", "dependencies": { "semver": "^7.1.1" }, @@ -6426,6 +6490,33 @@ "encoding": "^0.1.13" } }, + "node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/npmlog": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", @@ -6744,33 +6835,49 @@ "wrappy": "1" } }, + "node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", + "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", "dev": true, "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", + "default-browser": "^4.0.0", + "define-lazy-prop": "^3.0.0", + "is-inside-container": "^1.0.0", "is-wsl": "^2.2.0" }, "engines": { - "node": ">=12" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/open-cli": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-7.1.0.tgz", - "integrity": "sha512-Xnn/B7WY9ygV47oK+LlYp5WU8xr0tEL6SEw9jMX8n6ceElOs2AzVXFXI87/O0+b+LwLokQBZVxBMzGZHCYVppw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-7.2.0.tgz", + "integrity": "sha512-1ANJc8oJ92FiaNZ0o2Hw4WBvDJoXs1P74aFMtpAvlbkIPV4uPcQvDz7V6kMOrsZkmB4tglrHVMlLQaafuUuxXg==", "dev": true, "dependencies": { - "file-type": "^18.0.0", + "file-type": "^18.2.1", "get-stdin": "^9.0.0", - "meow": "^10.1.5", - "open": "^8.4.0", + "meow": "^11.0.0", + "open": "^9.0.0", "tempy": "^3.0.0" }, "bin": { @@ -7036,15 +7143,15 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.1.tgz", - "integrity": "sha512-OW+5s+7cw6253Q4E+8qQ/u1fVvcJQCJo/VFD8pje+dbJCF1n5ZRMV2AEHbGp+5Q7jxQIYJxkHopnj6nzdGeZLA==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.3.tgz", + "integrity": "sha512-RAmB+n30SlN+HnNx6EbcpoDy9nwdpcGPnEKrJnu6GZoDWBdIjo1UQMVtW2ybtC7LC2oKLcMq8y5g8WnKLiod9g==", "dependencies": { "lru-cache": "^7.14.1", "minipass": "^4.0.2" }, "engines": { - "node": ">=14" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -7457,12 +7564,12 @@ ] }, "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-6.1.1.tgz", + "integrity": "sha512-S27GBT+F0NTRiehtbrgaSE1idUAJ5bX8dPAQTdylEyNlrdcH5X4Lz7Edz3DYzecbsCluD5zO8ZNEe04z3D3u6Q==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7480,11 +7587,11 @@ } }, "node_modules/read-package-json": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.0.tgz", - "integrity": "sha512-b/9jxWJ8EwogJPpv99ma+QwtqB7FSl3+V6UXS7Aaay8/5VwMY50oIFooY1UKXMWpfNCM6T/PoGqa5GD1g9xf9w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.1.tgz", + "integrity": "sha512-AaHqXxfAVa+fNL07x8iAghfKOds/XXsu7zoouIVsbm7PEbQ3nMWXlvjcbrNLjElnUHWQtAo4QEa0RXuvD4XlpA==", "dependencies": { - "glob": "^8.0.1", + "glob": "^9.3.0", "json-parse-even-better-errors": "^3.0.0", "normalize-package-data": "^5.0.0", "npm-normalize-package-bin": "^3.0.0" @@ -7513,6 +7620,23 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/read-package-json/node_modules/glob": { + "version": "9.3.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.2.tgz", + "integrity": "sha512-BTv/JhKXFEHsErMte/AnfiSv8yYOLLiyH2lTg8vn02O21zWFgHPTfxtgn1QRe7NRgggUhC8hacR2Re94svHqeA==", + "dependencies": { + "fs.realpath": "^1.0.0", + "minimatch": "^7.4.1", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/read-package-json/node_modules/hosted-git-info": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", @@ -7674,6 +7798,42 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/read-pkg/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/read-pkg/node_modules/type-fest": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", @@ -7685,6 +7845,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/readable-stream": { "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", @@ -7838,9 +8003,9 @@ } }, "node_modules/rimraf": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.0.tgz", - "integrity": "sha512-X36S+qpCUR0HjXlkDe4NAOhS//aHH0Z+h8Ckf2auGJk3PTnx5rLmrHkwNdbVQuCSUhOyFrlRvFEllZOYE+yZGQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", + "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", "dependencies": { "glob": "^9.2.0" }, @@ -7855,9 +8020,9 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.0.tgz", - "integrity": "sha512-EAZejC7JvnQINayvB/7BJbpZpNOJ8Lrw2OZNEvQxe0vaLn1SuwMcfV7/MNaX8L/T0wmptBFI4YMtDvSBxYDc7w==", + "version": "9.3.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.2.tgz", + "integrity": "sha512-BTv/JhKXFEHsErMte/AnfiSv8yYOLLiyH2lTg8vn02O21zWFgHPTfxtgn1QRe7NRgggUhC8hacR2Re94svHqeA==", "dependencies": { "fs.realpath": "^1.0.0", "minimatch": "^7.4.1", @@ -7871,6 +8036,98 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/run-applescript": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", + "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-applescript/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/run-applescript/node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/run-applescript/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/run-applescript/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/run-applescript/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-applescript/node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -7919,9 +8176,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.59.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.59.3.tgz", - "integrity": "sha512-QCq98N3hX1jfTCoUAsF3eyGuXLsY7BCnCEg9qAact94Yc21npG2/mVOqoDvE0fCbWDqiM4WlcJQla0gWG2YlxQ==", + "version": "1.60.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.60.0.tgz", + "integrity": "sha512-updbwW6fNb5gGm8qMXzVO7V4sWf7LMXnMly/JEyfbfERbVH46Fn6q02BX7/eHTdKpE7d+oTkMMQpFWNUMfFbgQ==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8054,9 +8311,9 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sigstore": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.1.1.tgz", - "integrity": "sha512-4hR3tPP1y59YWlaoAgAWFVZ7srTjNWOrrpkQXWu05qP0BvwFYyt3K3l848+IHo+mKhkOzGcNDf7ktASXLEPC+A==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.2.0.tgz", + "integrity": "sha512-Fr9+W1nkBSIZCkJQR7jDn/zI0UXNsVpp+7mDQkCnZOIxG9p6yNXBx9xntHsfUyYHE55XDkkVV3+rYbrkzAeesA==", "dependencies": { "@sigstore/protobuf-specs": "^0.1.0", "make-fetch-happen": "^11.0.1", @@ -8441,6 +8698,18 @@ "node": ">=8" } }, + "node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/strip-indent": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", @@ -8745,9 +9014,9 @@ } }, "node_modules/terser": { - "version": "5.16.6", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.6.tgz", - "integrity": "sha512-IBZ+ZQIA9sMaXmRZCUMDjNH0D5AQQfdn4WUjHL0+1lF4TP1IHRJbrhb6fNaXWikrYQTSkb7SLxkeXAiy1p7mbg==", + "version": "5.16.8", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.8.tgz", + "integrity": "sha512-QI5g1E/ef7d+PsDifb+a6nnVgC4F22Bg6T0xrBrz6iloVB4PUkkunp6V8nzoOOZJIzjWVdAGqCdlKlhLq/TbIA==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -8878,6 +9147,18 @@ "node": ">=4" } }, + "node_modules/titleize": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", + "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -8916,9 +9197,9 @@ } }, "node_modules/trim-newlines": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.0.2.tgz", - "integrity": "sha512-GJtWyq9InR/2HRiLZgpIKv+ufIKrVrvjQWEj7PxAXNc5dwbNJkqhAUoAGgzRmULAnoOM5EIpveYd3J2VeSAIew==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.1.1.tgz", + "integrity": "sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ==", "dev": true, "engines": { "node": ">=12" @@ -8928,11 +9209,11 @@ } }, "node_modules/tuf-js": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.1.tgz", - "integrity": "sha512-WTp382/PR96k0dI4GD5RdiRhgOU0rAC7+lnoih/5pZg3cyb3aNMqDozleEEWwyfT3+FOg7Qz9JU3n6A44tLSHw==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.2.tgz", + "integrity": "sha512-gBfbnS6khluxjvoFCpRV0fhWT265xNfpiNXOcBX0Ze6HGbPhe93UG5V5DdKcgm/aXsMadnY76l/h6j63GmJS5g==", "dependencies": { - "@tufjs/models": "1.0.0", + "@tufjs/models": "1.0.1", "make-fetch-happen": "^11.0.1" }, "engines": { @@ -9074,6 +9355,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/update-browserslist-db": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", @@ -9371,15 +9661,6 @@ } }, "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs/node_modules/yargs-parser": { "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", diff --git a/packages/project/package.json b/packages/project/package.json index 0224d54a74c..7008257bdd6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -133,7 +133,7 @@ "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.1", - "rimraf": "^4.4.0", + "rimraf": "^4.4.1", "semver": "^7.3.8", "xml2js": "^0.4.23" }, @@ -148,7 +148,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^40.1.0", - "esmock": "^2.1.0", + "esmock": "^2.2.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", @@ -156,7 +156,7 @@ "js-beautify": "^1.14.7", "jsdoc": "^4.0.2", "nyc": "^15.1.0", - "open-cli": "^7.1.0", + "open-cli": "^7.2.0", "sinon": "^15.0.2", "tap-xunit": "^2.4.1" } From c034c1c6e5dc1e752543919bd6390489cf2d60b6 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 29 Mar 2023 13:12:34 +0200 Subject: [PATCH 0878/1272] [ui5-project][FEATURE] Workspace: Add getModules method Can be used to retrieve all modules referenced in a workspace to iterate over them. Required for https://github.com/SAP/ui5-project/pull/589 --- packages/project/lib/graph/Workspace.js | 18 ++++++++++++++++-- packages/project/test/lib/graph/Workspace.js | 3 +++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/graph/Workspace.js b/packages/project/lib/graph/Workspace.js index a3963182db2..81f0064074c 100644 --- a/packages/project/lib/graph/Workspace.js +++ b/packages/project/lib/graph/Workspace.js @@ -74,6 +74,20 @@ class Workspace { return this.#configuration.metadata.name; } + /** + * Returns an array of [Module]{@ui5/project/graph/Module} instances found in the configured + * dependency-management resolution paths of this workspace, sorted by module ID. + * + * @public + * @returns {Promise<@ui5/project/graph/Module[]>} + * Array of Module instances sorted by module ID + */ + async getModules() { + const {moduleIdMap} = await this._getResolvedModules(); + const sortedMap = new Map([...moduleIdMap].sort((a, b) => String(a[0]).localeCompare(b[0]))); + return Array.from(sortedMap.values()); + } + /** * For a given project name (e.g. the value of the metadata.name property in a ui5.yaml), * returns a [Module]{@ui5/project/graph/Module} instance or undefined depending on whether the project @@ -82,7 +96,7 @@ class Workspace { * @public * @param {string} projectName Name of the project * @returns {Promise<@ui5/project/graph/Module|undefined>} - * Module instance of undefined if none is found + * Module instance or undefined if none is found */ async getModuleByProjectName(projectName) { const {projectNameMap} = await this._getResolvedModules(); @@ -98,7 +112,7 @@ class Workspace { * @public * @param {string} nodeId Node ID of the module * @returns {Promise<@ui5/project/graph/Module|undefined>} - * Module instance of undefined if none is found + * Module instance or undefined if none is found */ async getModuleByNodeId(nodeId) { const {moduleIdMap} = await this._getResolvedModules(); diff --git a/packages/project/test/lib/graph/Workspace.js b/packages/project/test/lib/graph/Workspace.js index af79ca3d46b..8515b0a69f6 100644 --- a/packages/project/test/lib/graph/Workspace.js +++ b/packages/project/test/lib/graph/Workspace.js @@ -82,6 +82,9 @@ test("Basic resolution", async (t) => { t.is(await workspace.getModuleByNodeId("library.d"), libD, "getModuleByNodeId returns correct module for library.d"); + const modules = await workspace.getModules(); + t.deepEqual(modules, [libD, libE], "getModules returns modules sorted by module ID"); + t.deepEqual(Array.from(moduleIdMap.keys()).sort(), ["library.d", "library.e"], "Correct module ID keys"); moduleIdMap.forEach((value, key) => { t.is(value, projectNameMap.get(key), `Same instance of module ${key} in both maps`); From dacf78ff7943ea8eeee34ff4c362f4d84889d364 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 29 Mar 2023 13:15:30 +0200 Subject: [PATCH 0879/1272] [ui5-project][FEATURE] Specification: Add getId method Returns the ID defined by the provider. Should not be used for general purposes for which "getName" should still be preferred. Required for https://github.com/SAP/ui5-project/pull/589 --- .../project/lib/specifications/Project.js | 3 ++- .../lib/specifications/Specification.js | 24 ++++++++++++++++--- .../test/lib/specifications/Specification.js | 1 + 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index cdb236baec0..2ce1fc8c40b 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -61,7 +61,8 @@ class Project extends Specification { * @returns {boolean} True if the project is a framework project */ isFrameworkProject() { - return this.__id.startsWith("@openui5/") || this.__id.startsWith("@sapui5/"); + const id = this.getId(); + return id.startsWith("@openui5/") || id.startsWith("@sapui5/"); } /** diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 361cf40669f..09b67b6f0e1 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -97,8 +97,10 @@ class Specification { this._version = version; this._modulePath = modulePath; - // The configured name (metadata.name) should be the unique identifier - // The ID property as supplied by the translators is only here for debugging and potential tracing purposes + // The ID property is filled from the provider (e.g. package.json "name") and might differ between providers. + // It is mainly used to detect framework libraries marked by @openui5 / @sapui5 scopes of npm package. + // (see Project#isFrameworkProject) + // In general, the configured name (metadata.name) should be used instead as the unique identifier of a project. this.__id = id; // Deep clone config to prevent changes by reference @@ -157,7 +159,23 @@ class Specification { /* === Attributes === */ /** - * Get the name of this specification + * Get the ID of this specification. + * + *

Note: Only to be used in special occasions as it specific to the provider that was used and does + * not necessarily represent something defined by the project.

+ * + * For general purposes of a unique identifier use + * {@link @ui5/project/specifications/Specification#getName getName} instead. + * + * @public + * @returns {string} Specification ID + */ + getId() { + return this.__id; + } + + /** + * Get the name of this specification. Represents a unique identifier. * * @public * @returns {string} Specification name diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index 23c7fe1d6a2..3d6621c0ec7 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -66,6 +66,7 @@ test("Specification can't be instantiated", (t) => { test("Instantiate a basic project", async (t) => { const project = await Specification.create(t.context.basicProjectInput); + t.is(project.getId(), "application.a.id", "Returned correct ID"); t.is(project.getName(), "application.a", "Returned correct name"); t.is(project.getVersion(), "1.0.0", "Returned correct version"); t.is(project.getRootPath(), applicationAPath, "Returned correct project path"); From b8547a9f7514fde307bcb7f183a81f0b3d863040 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= Date: Thu, 30 Mar 2023 14:10:05 +0200 Subject: [PATCH 0880/1272] [ui5-project][INTERNAL] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Günter Klatt <57760635+KlattG@users.noreply.github.com> --- packages/project/lib/graph/Workspace.js | 4 ++-- .../project/lib/specifications/Specification.js | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/lib/graph/Workspace.js b/packages/project/lib/graph/Workspace.js index 81f0064074c..ad0c850f274 100644 --- a/packages/project/lib/graph/Workspace.js +++ b/packages/project/lib/graph/Workspace.js @@ -96,7 +96,7 @@ class Workspace { * @public * @param {string} projectName Name of the project * @returns {Promise<@ui5/project/graph/Module|undefined>} - * Module instance or undefined if none is found + * Module instance, or undefined if none is found */ async getModuleByProjectName(projectName) { const {projectNameMap} = await this._getResolvedModules(); @@ -112,7 +112,7 @@ class Workspace { * @public * @param {string} nodeId Node ID of the module * @returns {Promise<@ui5/project/graph/Module|undefined>} - * Module instance or undefined if none is found + * Module instance, or undefined if none is found */ async getModuleByNodeId(nodeId) { const {moduleIdMap} = await this._getResolvedModules(); diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 09b67b6f0e1..5c2af41428f 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -159,9 +159,9 @@ class Specification { /* === Attributes === */ /** - * Get the ID of this specification. + * Gets the ID of this specification. * - *

Note: Only to be used in special occasions as it specific to the provider that was used and does + *

Note: Only to be used for special occasions as it is specific to the provider that was used and does * not necessarily represent something defined by the project.

* * For general purposes of a unique identifier use @@ -175,7 +175,7 @@ class Specification { } /** - * Get the name of this specification. Represents a unique identifier. + * Gets the name of this specification. Represents a unique identifier. * * @public * @returns {string} Specification name @@ -185,7 +185,7 @@ class Specification { } /** - * Get the kind of this specification, for example project or extension + * Gets the kind of this specification, for example project or extension * * @public * @returns {string} Specification kind @@ -195,7 +195,7 @@ class Specification { } /** - * Get the type of this specification, + * Gets the type of this specification, * for example application or library in case of projects, * and task or server-middleware in case of extensions * @@ -217,7 +217,7 @@ class Specification { } /** - * Get the specification's generic version, as typically defined in a package.json + * Gets the specification's generic version, as typically defined in a package.json * * @public * @returns {string} Project version @@ -227,7 +227,7 @@ class Specification { } /** - * Get the specification's file system path. This might not be POSIX-style on some platforms + * Gets the specification's file system path. This might not be POSIX-style on some platforms * * @public * @returns {string} Project root path @@ -238,7 +238,7 @@ class Specification { /* === Resource Access === */ /** - * Get a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for the root directory of the specification. + * Gets a [ReaderCollection]{@link @ui5/fs/ReaderCollection} for the root directory of the specification. * Resource readers always use POSIX-style * * @public From 2252fe1f9296831128a4bb8fa3ed97d19084e8d9 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Wed, 29 Mar 2023 16:34:58 +0200 Subject: [PATCH 0881/1272] [ui5-project][FIX] Taskrunner: pass new taskutil options to determineRequiredDependencies hook --- packages/project/lib/build/TaskRunner.js | 14 ++++++++------ packages/project/test/lib/build/TaskRunner.js | 8 +++++++- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index fb3ddb0b0d8..cd9a251e2e8 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -302,13 +302,15 @@ class TaskRunner { taskUtilInterface.getProject.bind(taskUtilInterface); dependencyDeterminationParams.getDependencies = taskUtilInterface.getDependencies.bind(taskUtilInterface); - dependencyDeterminationParams.options = { - projectName: project.getName(), - projectNamespace: project.getNamespace(), - configuration: taskDef.configuration, - taskName: newTaskName - }; } + + dependencyDeterminationParams.options = { + projectName: project.getName(), + projectNamespace: project.getNamespace(), + configuration: taskDef.configuration, + taskName: newTaskName + }; + requiredDependencies = await requiredDependenciesCallback(dependencyDeterminationParams); if (!(requiredDependencies instanceof Set)) { throw new Error( diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index 9430d985f1b..e215957a984 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -776,7 +776,13 @@ test("Custom task with legacy spec version and requiredDependenciesCallback", as t.is(requiredDependenciesCallbackStub.callCount, 1, "requiredDependenciesCallback got called once"); t.deepEqual(requiredDependenciesCallbackStub.getCall(0).args[0], { - availableDependencies: new Set(["dep.a", "dep.b"]) + availableDependencies: new Set(["dep.a", "dep.b"]), + options: { + projectName: "project.b", + projectNamespace: "project/b", + configuration: "configuration", + taskName: "myTask" + } }, "requiredDependenciesCallback got called with expected arguments"); const createDependencyReaderStub = sinon.stub(taskRunner, "_createDependenciesReader").resolves("dependencies"); From e57d4c6d233a54105309717b4b494709fec4f3c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= Date: Fri, 31 Mar 2023 15:05:06 +0200 Subject: [PATCH 0882/1272] [ui5-project][FIX] ui5Framework: Prevent install of libraries within workspace (#589) JIRA: CPOUI5FOUNDATION-643 --- .../project/lib/graph/helpers/ui5Framework.js | 100 +++- .../lib/ui5Framework/AbstractResolver.js | 35 +- .../graph/helpers/ui5Framework.integration.js | 100 +++- .../test/lib/graph/helpers/ui5Framework.js | 455 +++++++++++++++++- .../test/lib/ui5framework/AbstractResolver.js | 211 +++++++- 5 files changed, 848 insertions(+), 53 deletions(-) diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 9fe94d1bbbc..6df9258b0aa 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -208,6 +208,60 @@ const utils = { ); } }, + /** + * This logic needs to stay in sync with the dependency definitions for the + * sapui5/distribution-metadata package. + * + * @param {@ui5/project/specifications/Project} project + */ + async getFrameworkLibraryDependencies(project) { + let dependencies = []; + let optionalDependencies = []; + + if (project.getId().startsWith("@sapui5/")) { + project.getFrameworkDependencies().forEach((dependency) => { + if (dependency.optional) { + // Add optional dependency to optionalDependencies + optionalDependencies.push(dependency.name); + } else if (!dependency.development) { + // Add non-development dependency to dependencies + dependencies.push(dependency.name); + } + }); + } else if (project.getId().startsWith("@openui5/")) { + const packageResource = await project.getRootReader().byPath("/package.json"); + const packageInfo = JSON.parse(await packageResource.getString()); + + dependencies = Object.keys( + packageInfo.dependencies || {} + ).map(($) => $.replace("@openui5/", "")); // @sapui5 dependencies must not be defined in package.json + optionalDependencies = Object.keys( + packageInfo.devDependencies || {} + ).map(($) => $.replace("@openui5/", "")); // @sapui5 dependencies must not be defined in package.json + } + + return {dependencies, optionalDependencies}; + }, + async getWorkspaceFrameworkLibraryMetadata({workspace, projectGraph}) { + const libraryMetadata = Object.create(null); + const ui5Modules = await workspace.getModules(); + for (const ui5Module of ui5Modules) { + const {project} = await ui5Module.getSpecifications(); + // Only framework projects that are not already part of the projectGraph should be handled. + // Otherwise they would be available twice which is checked + // after installing via checkForDuplicateFrameworkProjects + if (project?.isFrameworkProject?.() && !projectGraph.getProject(project.getName())) { + const metadata = libraryMetadata[project.getName()] = Object.create(null); + metadata.id = project.getId(); + metadata.path = project.getRootPath(); + metadata.version = project.getVersion(); + const {dependencies, optionalDependencies} = await utils.getFrameworkLibraryDependencies(project); + metadata.dependencies = dependencies; + metadata.optionalDependencies = optionalDependencies; + } + } + return libraryMetadata; + }, ProjectProcessor }; @@ -232,26 +286,31 @@ export default { * Promise resolving with the given graph instance to allow method chaining */ enrichProjectGraph: async function(projectGraph, options = {}) { + const {workspace} = options; const rootProject = projectGraph.getRoot(); const frameworkName = rootProject.getFrameworkName(); const frameworkVersion = rootProject.getFrameworkVersion(); - // It is allowed omit the framework version in ui5.yaml and only provide one via the override + // It is allowed to omit the framework version in ui5.yaml and only provide one via the override // This is a common use case for framework libraries, which generally should not define a // framework version in their respective ui5.yaml let version = options.versionOverride || frameworkVersion; if (rootProject.isFrameworkProject() && !version) { // If the root project is a framework project and no framework version is defined, - // all framework dependencies must already be part of the graph - rootProject.getFrameworkDependencies().forEach((dep) => { - if (utils.shouldIncludeDependency(dep) && !projectGraph.getProject(dep.name)) { - throw new Error( - `Missing framework dependency ${dep.name} for framework project ${rootProject.getName()}`); - } + // all framework dependencies must either be already part of the graph or part of the workspace. + // A mixed setup of framework deps within the graph AND from the workspace is currently not supported. + + const someDependencyMissing = rootProject.getFrameworkDependencies().some((dep) => { + return utils.shouldIncludeDependency(dep) && !projectGraph.getProject(dep.name); }); - // All framework dependencies are already present in the graph - return projectGraph; + + // If all dependencies are available there is nothing else to do here. + // In case of a workspace setup, the resolver will be created below without a version and + // will succeed in case no library needs to be actually installed. + if (!someDependencyMissing) { + return projectGraph; + } } @@ -267,12 +326,6 @@ export default { ); } - if (!version) { - throw new Error( - `No framework version defined for root project ${rootProject.getName()}` - ); - } - let Resolver; if (frameworkName === "OpenUI5") { Resolver = (await import("../../ui5Framework/Openui5Resolver.js")).default; @@ -296,9 +349,20 @@ export default { return projectGraph; } - log.info(`Using ${frameworkName} version: ${version}`); + if (version) { + log.info(`Using ${frameworkName} version: ${version}`); + } + + let providedLibraryMetadata; + if (workspace) { + providedLibraryMetadata = await utils.getWorkspaceFrameworkLibraryMetadata({ + workspace, projectGraph + }); + } - const resolver = new Resolver({cwd: rootProject.getRootPath(), version}); + // Note: version might be undefined here and the Resolver will throw an error when calling + // #install and it can't be resolved via the provided library metadata + const resolver = new Resolver({cwd: rootProject.getRootPath(), version, providedLibraryMetadata}); let startTime; if (log.isLevelEnabled("verbose")) { @@ -322,7 +386,7 @@ export default { const projectProcessor = new utils.ProjectProcessor({ libraryMetadata, graph: frameworkGraph, - workspace: options.workspace + workspace }); await Promise.all(referencedLibraries.map(async (libName) => { diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index e6e9537be9e..09b281e3568 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -27,22 +27,25 @@ const VERSION_RANGE_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)$/; * @hideconstructor */ class AbstractResolver { + /* eslint-disable max-len */ /** * @param {*} options options - * @param {string} options.version Framework version to use + * @param {string} [options.version] Framework version to use. When omitted, all libraries need to be available + * via providedLibraryMetadata parameter. Otherwise an error is thrown. * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. Relative to `process.cwd()` + * @param {object.} [options.providedLibraryMetadata] + * Resolver skips installing listed libraries and uses the dependency information to resolve their dependencies. + * version can be omitted in case all libraries can be resolved via the providedLibraryMetadata. + * Otherwise an error is thrown. */ - constructor({cwd, version, ui5HomeDir}) { + /* eslint-enable max-len */ + constructor({cwd, version, ui5HomeDir, providedLibraryMetadata}) { if (new.target === AbstractResolver) { throw new TypeError("Class 'AbstractResolver' is abstract"); } - if (!version) { - throw new Error(`AbstractResolver: Missing parameter "version"`); - } - // In some CI environments, the homedir might be set explicitly to a relative // path (e.g. "./"), but tooling requires an absolute path this._ui5HomeDir = path.resolve( @@ -50,6 +53,7 @@ class AbstractResolver { ); this._cwd = cwd ? path.resolve(cwd) : process.cwd(); this._version = version; + this._providedLibraryMetadata = providedLibraryMetadata; } async _processLibrary(libraryName, libraryMetadata, errors) { @@ -62,7 +66,23 @@ class AbstractResolver { log.verbose("Processing " + libraryName); - const promises = await this.handleLibrary(libraryName); + let promises; + const providedLibraryMetadata = this._providedLibraryMetadata?.[libraryName]; + if (providedLibraryMetadata) { + log.verbose(`Skipping install for ${libraryName} (provided)`); + promises = { + // Use existing metadata if library is provided from outside (e.g. workspace) + metadata: Promise.resolve(providedLibraryMetadata), + // Provided libraries are already "installed" + install: Promise.resolve({ + pkgPath: providedLibraryMetadata.path + }) + }; + } else if (!this._version) { + throw new Error(`Unable to install library ${libraryName}. No framework version provided.`); + } else { + promises = await this.handleLibrary(libraryName); + } const [metadata, {pkgPath}] = await Promise.all([ promises.metadata.then((metadata) => @@ -143,7 +163,6 @@ class AbstractResolver { * Object containing all installed libraries with library name as key */ - /* eslint-enable max-len */ /** * Installs the provided libraries and their dependencies * diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index 132c5846179..7cff9788a66 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -135,7 +135,8 @@ test.afterEach.always((t) => { function defineTest(testName, { frameworkName, - verbose = false + verbose = false, + librariesInWorkspace = null }) { const npmScope = frameworkName === "SAPUI5" ? "@sapui5" : "@openui5"; @@ -410,7 +411,66 @@ function defineTest(testName, { const provider = new DependencyTreeProvider({dependencyTree}); const projectGraph = await projectGraphBuilder(provider); - await ui5Framework.enrichProjectGraph(projectGraph); + if (librariesInWorkspace) { + const projectNameMap = new Map(); + const moduleIdMap = new Map(); + librariesInWorkspace.forEach((libName) => { + const libraryDistMetadata = distributionMetadata.libraries[libName]; + const module = { + getSpecifications: sinon.stub().resolves({ + project: { + getName: sinon.stub().returns(libName), + getVersion: sinon.stub().returns("1.76.0-SNAPSHOT"), + getRootPath: sinon.stub().returns(path.join(fakeBaseDir, "workspace", libName)), + isFrameworkProject: sinon.stub().returns(true), + getId: sinon.stub().returns(libraryDistMetadata.npmPackageName), + getRootReader: sinon.stub().returns({ + byPath: sinon.stub().resolves({ + getString: sinon.stub().resolves(JSON.stringify({dependencies: {}})) + }) + }), + getFrameworkDependencies: sinon.stub().callsFake(() => { + const deps = []; + libraryDistMetadata.dependencies.forEach((dep) => { + deps.push({name: dep}); + }); + libraryDistMetadata.optionalDependencies.forEach((optDep) => { + deps.push({name: optDep, optional: true}); + }); + return deps; + }), + isDeprecated: sinon.stub().returns(false), + isSapInternal: sinon.stub().returns(false), + getAllowSapInternal: sinon.stub().returns(false), + } + }), + getVersion: sinon.stub().returns("1.76.0-SNAPSHOT"), + getPath: sinon.stub().returns(path.join(fakeBaseDir, "workspace", libName)), + }; + projectNameMap.set(libName, module); + moduleIdMap.set(libraryDistMetadata.npmPackageName, module); + }); + + const getModuleByProjectName = sinon.stub().callsFake( + async (projectName) => projectNameMap.get(projectName) + ); + const getModules = sinon.stub().callsFake( + async () => { + const sortedMap = new Map([...moduleIdMap].sort((a, b) => String(a[0]).localeCompare(b[0]))); + return Array.from(sortedMap.values()); + } + ); + + const workspace = { + getName: sinon.stub().returns("test"), + getModules, + getModuleByProjectName + }; + + await ui5Framework.enrichProjectGraph(projectGraph, {workspace}); + } else { + await ui5Framework.enrichProjectGraph(projectGraph); + } const callbackStub = sinon.stub().resolves(); await projectGraph.traverseDepthFirst(callbackStub); @@ -465,6 +525,15 @@ defineTest("ui5Framework helper should enhance project graph with UI5 framework verbose: true }); +defineTest("ui5Framework helper should not cause install of libraries within workspace", { + frameworkName: "SAPUI5", + librariesInWorkspace: ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib8"] +}); +defineTest("ui5Framework helper should not cause install of libraries within workspace", { + frameworkName: "OpenUI5", + librariesInWorkspace: ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib8"] +}); + function defineErrorTest(testName, { frameworkName, failExtract = false, @@ -723,8 +792,8 @@ test.serial("ui5Framework translator should not try to install anything when no t.is(pacote.manifest.callCount, 0, "No manifest should be requested"); }); -test.serial("ui5Framework translator should throw an error when framework version is not defined", async (t) => { - const {ui5Framework, projectGraphBuilder} = t.context; +test.serial("ui5Framework helper shouldn't throw when framework version and libraries are not provided", async (t) => { + const {ui5Framework, projectGraphBuilder, logStub} = t.context; const dependencyTree = { id: "test-id", @@ -745,13 +814,28 @@ test.serial("ui5Framework translator should throw an error when framework versio const provider = new DependencyTreeProvider({dependencyTree}); const projectGraph = await projectGraphBuilder(provider); - await t.throwsAsync(async () => { - await ui5Framework.enrichProjectGraph(projectGraph); - }, {message: `No framework version defined for root project test-project`}, "Correct error message"); + await ui5Framework.enrichProjectGraph(projectGraph); + + t.is(logStub.verbose.callCount, 5); + t.deepEqual(logStub.verbose.getCall(0).args, [ + "Configuration for module test-id has been supplied directly" + ]); + t.deepEqual(logStub.verbose.getCall(1).args, [ + "Module test-id contains project test-project" + ]); + t.deepEqual(logStub.verbose.getCall(2).args, [ + "Root project test-project qualified as application project for project graph" + ]); + t.deepEqual(logStub.verbose.getCall(3).args, [ + "Project test-project has no framework dependencies" + ]); + t.deepEqual(logStub.verbose.getCall(4).args, [ + "No SAPUI5 libraries referenced in project test-project or in any of its dependencies" + ]); }); test.serial( - "SAPUI5: ui5Framework translator should throw error when using a library that is not part of the dist metadata", + "SAPUI5: ui5Framework helper should throw error when using a library that is not part of the dist metadata", async (t) => { const {sinon, ui5Framework, Installer, projectGraphBuilder} = t.context; diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index 52426261d9a..863646fe4b5 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -100,7 +100,8 @@ test.serial("enrichProjectGraph", async (t) => { t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{ cwd: dependencyTree.path, - version: dependencyTree.configuration.framework.version + version: dependencyTree.configuration.framework.version, + providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); t.is(t.context.Sapui5ResolverInstallStub.callCount, 1, "Sapui5Resolver#install should be called once"); @@ -138,6 +139,34 @@ test.serial("enrichProjectGraph", async (t) => { ], "Traversed graph in correct order"); }); +test.serial("enrichProjectGraph: without framework configuration", async (t) => { + const {ui5Framework, log} = t.context; + const dependencyTree = { + id: "application.a", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + } + } + }; + + t.is(log.verbose.callCount, 0); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph); + t.is(projectGraph.getSize(), 1, "Project graph should remain unchanged"); + t.is(log.verbose.callCount, 1); + t.deepEqual(log.verbose.getCall(0).args, [ + "Root project application.a has no framework configuration. Nothing to do here" + ]); +}); + test.serial("enrichProjectGraph: With versionOverride", async (t) => { const { sinon, ui5Framework, utils, @@ -186,12 +215,13 @@ test.serial("enrichProjectGraph: With versionOverride", async (t) => { t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ cwd: dependencyTree.path, - version: "1.99.9" + version: "1.99.9", + providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); -test.serial("enrichProjectGraph should throw error when no framework version is provided", async (t) => { - const {ui5Framework} = t.context; +test.serial("enrichProjectGraph shouldn't throw when no framework version and no libraries are provided", async (t) => { + const {ui5Framework, log} = t.context; const dependencyTree = { id: "test-id", version: "1.2.3", @@ -211,9 +241,15 @@ test.serial("enrichProjectGraph should throw error when no framework version is const provider = new DependencyTreeProvider({dependencyTree}); const projectGraph = await projectGraphBuilder(provider); - await t.throwsAsync(async () => { - await ui5Framework.enrichProjectGraph(projectGraph); - }, {message: "No framework version defined for root project application.a"}); + await ui5Framework.enrichProjectGraph(projectGraph); + + t.is(log.verbose.callCount, 2); + t.deepEqual(log.verbose.getCall(0).args, [ + "Project application.a has no framework dependencies" + ]); + t.deepEqual(log.verbose.getCall(1).args, [ + "No SAPUI5 libraries referenced in project application.a or in any of its dependencies" + ]); }); test.serial("enrichProjectGraph should skip framework project without version", async (t) => { @@ -314,7 +350,8 @@ test.serial("enrichProjectGraph should resolve framework project with version an t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ cwd: dependencyTree.path, - version: "1.2.3" + version: "1.2.3", + providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -390,15 +427,56 @@ test.serial("enrichProjectGraph should resolve framework project " + t.is(projectGraph.getSize(), 2, "Project graph should remain unchanged"); t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); - t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGrap should be called once"); + t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGraph should be called once"); t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ cwd: dependencyTree.path, - version: "1.99.9" + version: "1.99.9", + providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); -test.serial("enrichProjectGraph should throw for framework project with dependency missing in graph", async (t) => { +test.serial("enrichProjectGraph should skip framework project when all dependencies are in graph", async (t) => { const {ui5Framework} = t.context; + const dependencyTree = { + id: "@sapui5/project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + libraries: [ + {name: "lib1"} + ] + } + }, + dependencies: [{ + id: "@openui5/lib1", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib1" + } + } + }] + }; + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph); + t.is(projectGraph.getSize(), 2, "Project graph should remain unchanged"); +}); + +test.serial("enrichProjectGraph should throw for framework project with dependency missing in graph", async (t) => { + const {ui5Framework, Sapui5ResolverInstallStub} = t.context; const dependencyTree = { id: "@sapui5/project", version: "1.2.3", @@ -420,12 +498,15 @@ test.serial("enrichProjectGraph should throw for framework project with dependen } }; + const installError = new Error("Resolution of framework libraries failed with errors: TEST ERROR"); + + Sapui5ResolverInstallStub.rejects(installError); + const provider = new DependencyTreeProvider({dependencyTree}); const projectGraph = await projectGraphBuilder(provider); const err = await t.throwsAsync(ui5Framework.enrichProjectGraph(projectGraph)); - t.is(err.message, `Missing framework dependency lib1 for framework project application.a`, - "Threw with expected error message"); + t.is(err.message, installError.message); }); test.serial("enrichProjectGraph should throw for incorrect framework name", async (t) => { @@ -561,6 +642,120 @@ test.serial("enrichProjectGraph should throw error when projectGraph contains a }); }); +test.serial("enrichProjectGraph should use framework library metadata from workspace", async (t) => { + const {ui5Framework, utils, Sapui5ResolverStub, Sapui5ResolverInstallStub, sinon} = t.context; + const dependencyTree = { + id: "@sapui5/project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.111.1", + libraries: [ + {name: "lib1"}, + {name: "lib2"} + ] + } + } + }; + + const workspace = { + getName: sinon.stub().resolves("default") + }; + + const workspaceFrameworkLibraryMetadata = {}; + const libraryMetadata = {}; + + sinon.stub(utils, "getWorkspaceFrameworkLibraryMetadata").resolves(workspaceFrameworkLibraryMetadata); + Sapui5ResolverInstallStub.resolves({libraryMetadata}); + + const addProjectToGraphStub = sinon.stub(); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + sinon.stub(utils, "declareFrameworkDependenciesInGraph").resolves(); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider, {workspace}); + + await ui5Framework.enrichProjectGraph(projectGraph, {workspace}); + + t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ + cwd: dependencyTree.path, + version: "1.111.1", + providedLibraryMetadata: workspaceFrameworkLibraryMetadata + }], "Sapui5Resolver#constructor should be called with expected args"); + t.is(Sapui5ResolverStub.getCall(0).args[0].providedLibraryMetadata, workspaceFrameworkLibraryMetadata); +}); + +test.serial("enrichProjectGraph should allow omitting framework version in case " + + "all framework libraries come from the workspace", async (t) => { + const {ui5Framework, utils, Sapui5ResolverStub, Sapui5ResolverInstallStub, sinon} = t.context; + const dependencyTree = { + id: "@sapui5/project", + version: "1.2.3", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + libraries: [ + {name: "lib1"}, + {name: "lib2"} + ] + } + } + }; + + const workspace = { + getName: sinon.stub().resolves("default") + }; + + const workspaceFrameworkLibraryMetadata = {}; + const libraryMetadata = {}; + + sinon.stub(utils, "getWorkspaceFrameworkLibraryMetadata").resolves(workspaceFrameworkLibraryMetadata); + Sapui5ResolverInstallStub.resolves({libraryMetadata}); + + const addProjectToGraphStub = sinon.stub(); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + sinon.stub(utils, "declareFrameworkDependenciesInGraph").resolves(); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider, {workspace}); + + await ui5Framework.enrichProjectGraph(projectGraph, {workspace}); + + t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ + cwd: dependencyTree.path, + version: undefined, + providedLibraryMetadata: workspaceFrameworkLibraryMetadata + }], "Sapui5Resolver#constructor should be called with expected args"); + t.is(Sapui5ResolverStub.getCall(0).args[0].providedLibraryMetadata, workspaceFrameworkLibraryMetadata); +}); + test.serial("utils.shouldIncludeDependency", (t) => { const {utils} = t.context; // root project dependency should always be included @@ -1102,6 +1297,240 @@ test("utils.checkForDuplicateFrameworkProjects: Two duplicates", (t) => { }); }); +test("utils.getFrameworkLibraryDependencies: OpenUI5 library", async (t) => { + const {utils, sinon} = t.context; + + const project = { + getId: sinon.stub().returns("@openui5/sap.ui.lib1"), + getRootReader: sinon.stub().returns({ + byPath: sinon.stub().withArgs("/package.json").resolves({ + getString: sinon.stub().resolves(JSON.stringify({ + dependencies: { + "@openui5/sap.ui.lib2": "*" + }, + devDependencies: { + "@openui5/themelib_fancy": "*" + } + })) + }) + }), + }; + + const result = await utils.getFrameworkLibraryDependencies(project); + t.deepEqual(result, { + dependencies: ["sap.ui.lib2"], + optionalDependencies: ["themelib_fancy"] + }); +}); + +test("utils.getFrameworkLibraryDependencies: SAPUI5 library", async (t) => { + const {utils, sinon} = t.context; + + const project = { + getId: sinon.stub().returns("@sapui5/sap.ui.lib1"), + getFrameworkDependencies: sinon.stub().returns([ + { + name: "sap.ui.lib2" + }, + { + name: "themelib_fancy", + optional: true + }, + { + name: "sap.ui.lib3", + development: true + } + ]) + }; + + const result = await utils.getFrameworkLibraryDependencies(project); + t.deepEqual(result, { + dependencies: ["sap.ui.lib2"], + optionalDependencies: ["themelib_fancy"] + }); +}); + +test("utils.getFrameworkLibraryDependencies: OpenUI5 library - no dependencies", async (t) => { + const {utils, sinon} = t.context; + + const project = { + getId: sinon.stub().returns("@openui5/sap.ui.lib1"), + getRootReader: sinon.stub().returns({ + byPath: sinon.stub().withArgs("/package.json").resolves({ + getString: sinon.stub().resolves(JSON.stringify({})) + }) + }), + }; + + const result = await utils.getFrameworkLibraryDependencies(project); + t.deepEqual(result, { + dependencies: [], + optionalDependencies: [] + }); +}); + +test("utils.getFrameworkLibraryDependencies: No framework library", async (t) => { + const {utils, sinon} = t.context; + + const project = { + getId: sinon.stub().returns("foo") + }; + + const result = await utils.getFrameworkLibraryDependencies(project); + t.deepEqual(result, { + dependencies: [], + optionalDependencies: [] + }); +}); + +test("utils.getWorkspaceFrameworkLibraryMetadata: No workspace modules", async (t) => { + const {utils, sinon} = t.context; + + const workspace = { + getModules: sinon.stub().resolves([]) + }; + + const libraryMetadata = await utils.getWorkspaceFrameworkLibraryMetadata({workspace, projectGraph: {}}); + + t.deepEqual(libraryMetadata, {}); +}); + +test("utils.getWorkspaceFrameworkLibraryMetadata: With workspace modules", async (t) => { + const {utils, sinon} = t.context; + + const workspace = { + getModules: sinon.stub().resolves([ + { + // Extensions don't have projects, should be ignored + getSpecifications: sinon.stub().resolves({ + project: null + }) + }, + { + getSpecifications: sinon.stub().resolves({ + project: { + // some types don't have a "isFrameworkProject" method + } + }) + }, + { + getSpecifications: sinon.stub().resolves({ + project: { + isFrameworkProject: sinon.stub().returns(false) + } + }) + }, + { + getSpecifications: sinon.stub().resolves({ + project: { + isFrameworkProject: sinon.stub().returns(true), + getName: sinon.stub().returns("sap.ui.lib1"), + getId: sinon.stub().returns("@openui5/sap.ui.lib1"), + getRootPath: sinon.stub().returns("/rootPath"), + getRootReader: sinon.stub().returns({ + byPath: sinon.stub().withArgs("/package.json").resolves({ + getString: sinon.stub().resolves(JSON.stringify({ + dependencies: { + "@openui5/sap.ui.lib2": "*" + }, + devDependencies: { + "@openui5/themelib_fancy": "*" + } + })) + }) + }), + getVersion: sinon.stub().returns("1.0.0"), + } + }) + }, + { + getSpecifications: sinon.stub().resolves({ + project: { + isFrameworkProject: sinon.stub().returns(true), + getName: sinon.stub().returns("sap.ui.lib3"), + getId: sinon.stub().returns("@sapui5/sap.ui.lib3"), + getRootPath: sinon.stub().returns("/rootPath"), + getVersion: sinon.stub().returns("1.0.0"), + getFrameworkDependencies: sinon.stub().returns([ + { + name: "sap.ui.lib4" + }, + { + name: "sap.ui.lib5", + optional: true + }, + { + name: "sap.ui.lib6", + development: true + } + ]) + } + }) + } + ]) + }; + + const getProject = sinon.stub(); + getProject.withArgs("sap.ui.lib1").returns(undefined); + const projectGraph = { + getProject + }; + + const libraryMetadata = await utils.getWorkspaceFrameworkLibraryMetadata({workspace, projectGraph}); + + t.deepEqual(libraryMetadata, { + "sap.ui.lib1": { + dependencies: [ + "sap.ui.lib2" + ], + id: "@openui5/sap.ui.lib1", + optionalDependencies: [ + "themelib_fancy" + ], + path: "/rootPath", + version: "1.0.0" + }, + "sap.ui.lib3": { + dependencies: [ + "sap.ui.lib4" + ], + id: "@sapui5/sap.ui.lib3", + optionalDependencies: [ + "sap.ui.lib5" + ], + path: "/rootPath", + version: "1.0.0" + }, + }); +}); + +test("utils.getWorkspaceFrameworkLibraryMetadata: With workspace module within projectGraph", async (t) => { + const {utils, sinon} = t.context; + + const workspace = { + getModules: sinon.stub().resolves([ + { + getSpecifications: sinon.stub().resolves({ + project: { + isFrameworkProject: sinon.stub().returns(true), + getName: sinon.stub().returns("sap.ui.lib1") + } + }) + } + ]) + }; + + const getProject = sinon.stub(); + getProject.withArgs("sap.ui.lib1").returns({}); + const projectGraph = { + getProject + }; + + const libraryMetadata = await utils.getWorkspaceFrameworkLibraryMetadata({workspace, projectGraph}); + + t.deepEqual(libraryMetadata, {}); +}); + test.serial("ProjectProcessor: Add project to graph", async (t) => { const {sinon} = t.context; const {ProjectProcessor} = t.context.utils; diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 7b1da9df382..a89d48ed0ea 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -38,19 +38,24 @@ test("AbstractResolver: abstract constructor should throw", async (t) => { test("AbstractResolver: constructor", (t) => { const {MyResolver, AbstractResolver} = t.context; + const providedLibraryMetadata = {"test": "data"}; const resolver = new MyResolver({ cwd: "/test-project/", - version: "1.75.0" + version: "1.75.0", + providedLibraryMetadata }); t.true(resolver instanceof MyResolver, "Constructor returns instance of sub-class"); t.true(resolver instanceof AbstractResolver, "Constructor returns instance of abstract class"); + t.is(resolver._version, "1.75.0"); + t.is(resolver._providedLibraryMetadata, providedLibraryMetadata); }); -test("AbstractResolver: constructor requires 'version'", (t) => { +test("AbstractResolver: constructor without version", (t) => { const {MyResolver} = t.context; - t.throws(() => { - new MyResolver({}); - }, {message: `AbstractResolver: Missing parameter "version"`}); + const resolver = new MyResolver({ + cwd: "/test-project/" + }); + t.is(resolver._version, undefined); }); test("AbstractResolver: Set absolute 'cwd'", (t) => { @@ -204,9 +209,160 @@ test("AbstractResolver: install", async (t) => { install: Promise.resolve({pkgPath: "/foo/sap.ui.lib4"}) }); - await resolver.install(["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib4"]); + const result = await resolver.install(["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib4"]); t.is(handleLibraryStub.callCount, 4, "Each library should be handled once"); + t.deepEqual(result, { + libraryMetadata: { + "sap.ui.lib1": { + dependencies: [], + npmPackageName: "@openui5/sap.ui.lib1", + optionalDependencies: [], + path: "/foo/sap.ui.lib1", + version: "1.75.0", + }, + "sap.ui.lib2": { + dependencies: [ + "sap.ui.lib3", + ], + npmPackageName: "@openui5/sap.ui.lib2", + optionalDependencies: [], + path: "/foo/sap.ui.lib2", + version: "1.75.0", + }, + "sap.ui.lib3": { + dependencies: [], + npmPackageName: "@openui5/sap.ui.lib3", + optionalDependencies: [ + "sap.ui.lib4", + ], + path: "/foo/sap.ui.lib3", + version: "1.75.0", + }, + "sap.ui.lib4": { + dependencies: [ + "sap.ui.lib1", + ], + npmPackageName: "@openui5/sap.ui.lib4", + optionalDependencies: [], + path: "/foo/sap.ui.lib4", + version: "1.75.0", + }, + } + }); +}); + +test("AbstractResolver: install (with providedLibraryMetadata)", async (t) => { + const {MyResolver} = t.context; + const resolver = new MyResolver({ + cwd: "/test-project/", + version: "1.75.0", + providedLibraryMetadata: { + "sap.ui.lib1": { + "npmPackageName": "@openui5/sap.ui.lib1", + "version": "1.75.0-workspace", + "dependencies": [ + "sap.ui.lib3" + ], + "optionalDependencies": [], + "path": "/workspace/sap.ui.lib1" + }, + "sap.ui.lib4": { + "npmPackageName": "@openui5/sap.ui.lib4", + "version": "1.75.0-workspace", + "dependencies": [ + "sap.ui.lib5" + ], + "optionalDependencies": [], + "path": "/workspace/sap.ui.lib4" + }, + "sap.ui.lib5": { + "npmPackageName": "@openui5/sap.ui.lib5", + "version": "1.75.0-workspace", + "dependencies": [], + "optionalDependencies": [], + "path": "/workspace/sap.ui.lib5" + }, + } + }); + + const metadata = { + libraries: { + "sap.ui.lib2": { + "npmPackageName": "@openui5/sap.ui.lib2", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [] + }, + "sap.ui.lib3": { + "npmPackageName": "@openui5/sap.ui.lib3", + "version": "1.75.0", + "dependencies": [ + "sap.ui.lib4" + ], + "optionalDependencies": [] + }, + } + }; + + const handleLibraryStub = sinon.stub(resolver, "handleLibrary"); + handleLibraryStub + .callsFake(async (libraryName) => { + throw new Error(`Unknown handleLibrary call: ${libraryName}`); + }) + .withArgs("sap.ui.lib2").resolves({ + metadata: Promise.resolve(metadata.libraries["sap.ui.lib2"]), + install: Promise.resolve({pkgPath: "/foo/sap.ui.lib2"}) + }) + .withArgs("sap.ui.lib3").resolves({ + metadata: Promise.resolve(metadata.libraries["sap.ui.lib3"]), + install: Promise.resolve({pkgPath: "/foo/sap.ui.lib3"}) + }); + + const result = await resolver.install(["sap.ui.lib1", "sap.ui.lib2"]); + + t.is(handleLibraryStub.callCount, 2, "Each library not part of providedLibraryMetadata should be handled once"); + t.deepEqual(result, { + libraryMetadata: { + "sap.ui.lib1": { + dependencies: ["sap.ui.lib3"], + npmPackageName: "@openui5/sap.ui.lib1", + optionalDependencies: [], + path: "/workspace/sap.ui.lib1", + version: "1.75.0-workspace", + }, + "sap.ui.lib2": { + dependencies: [], + npmPackageName: "@openui5/sap.ui.lib2", + optionalDependencies: [], + path: "/foo/sap.ui.lib2", + version: "1.75.0", + }, + "sap.ui.lib3": { + dependencies: ["sap.ui.lib4",], + npmPackageName: "@openui5/sap.ui.lib3", + optionalDependencies: [], + path: "/foo/sap.ui.lib3", + version: "1.75.0", + }, + "sap.ui.lib4": { + dependencies: [ + "sap.ui.lib5", + ], + npmPackageName: "@openui5/sap.ui.lib4", + optionalDependencies: [], + path: "/workspace/sap.ui.lib4", + version: "1.75.0-workspace", + }, + "sap.ui.lib5": { + dependencies: [], + npmPackageName: "@openui5/sap.ui.lib5", + optionalDependencies: [], + path: "/workspace/sap.ui.lib5", + version: "1.75.0-workspace", + }, + } + }); }); test("AbstractResolver: install error handling (rejection of metadata/install)", async (t) => { @@ -335,6 +491,49 @@ Failed to resolve library sap.ui.lib2: Error within handleLibrary: sap.ui.lib2`} t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); }); +test("AbstractResolver: install error handling " + +"(no version, no providedLibraryMetadata)", async (t) => { + const {MyResolver} = t.context; + const resolver = new MyResolver({ + cwd: "/test-project/", + }); + + const handleLibraryStub = sinon.stub(resolver, "handleLibrary"); + + await t.throwsAsync(resolver.install(["sap.ui.lib1", "sap.ui.lib2"]), { + message: `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib1: Unable to install library sap.ui.lib1. No framework version provided. +Failed to resolve library sap.ui.lib2: Unable to install library sap.ui.lib2. No framework version provided.` + }); + + t.is(handleLibraryStub.callCount, 0, "Handle library should not be called when no version is available"); +}); + +test("AbstractResolver: install error handling " + +"(no version, one lib not part of providedLibraryMetadata)", async (t) => { + const {MyResolver} = t.context; + const resolver = new MyResolver({ + cwd: "/test-project/", + providedLibraryMetadata: { + "sap.ui.lib1": { + "npmPackageName": "@openui5/sap.ui.lib1", + "version": "1.75.0-SNAPSHOT", + "dependencies": [], + "optionalDependencies": [] + } + } + }); + + const handleLibraryStub = sinon.stub(resolver, "handleLibrary"); + + await t.throwsAsync(resolver.install(["sap.ui.lib1", "sap.ui.lib2"]), { + message: `Resolution of framework libraries failed with errors: +Failed to resolve library sap.ui.lib2: Unable to install library sap.ui.lib2. No framework version provided.` + }); + + t.is(handleLibraryStub.callCount, 0, "Handle library should not be called when no version is available"); +}); + test("AbstractResolver: static fetchAllVersions should throw an Error when not implemented", async (t) => { const {AbstractResolver} = t.context; await t.throwsAsync(async () => { From e4defc2c2cbf907b12227fa723155e0f8c0937b1 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 31 Mar 2023 13:26:50 +0000 Subject: [PATCH 0883/1272] [ui5-project]Release 3.1.0 --- packages/project/CHANGELOG.md | 16 ++++++++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 59f95739421..02e9e5640cb 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,21 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.0.4...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.1.0...HEAD). + + +## [v3.1.0] - 2023-03-31 +### Bug Fixes +- **Taskrunner:** pass new taskutil options to determineRequiredDependencies hook [`94bcd99`](https://github.com/SAP/ui5-project/commit/94bcd9931d6709170b78a92e7372bbd0de44ae03) +- **ui5Framework:** Prevent install of libraries within workspace ([#589](https://github.com/SAP/ui5-project/issues/589)) [`8ffc676`](https://github.com/SAP/ui5-project/commit/8ffc676434defd320c70b615960efc9182a29de9) + +### Features +- **Specification:** Add getId method [`7bdb47a`](https://github.com/SAP/ui5-project/commit/7bdb47a2925c0936ee33faf23f51f6c6ab396369) +- **Workspace:** Add getModules method [`1e2aa0e`](https://github.com/SAP/ui5-project/commit/1e2aa0e48bb2d895728f3d5f4cb74d55fbc8ec34) + -## [v3.0.4] - 2023-03-07 +## [v3.0.4] - 2023-03-10 ### Bug Fixes - Resolve properly absolute path for ui5HomeDir ([#588](https://github.com/SAP/ui5-project/issues/588)) [`9b414a7`](https://github.com/SAP/ui5-project/commit/9b414a77a1d86f6a3560231ae04db407e2f022c5) @@ -335,6 +346,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.1.0]: https://github.com/SAP/ui5-project/compare/v3.0.4...v3.1.0 [v3.0.4]: https://github.com/SAP/ui5-project/compare/v3.0.3...v3.0.4 [v3.0.3]: https://github.com/SAP/ui5-project/compare/v3.0.2...v3.0.3 [v3.0.2]: https://github.com/SAP/ui5-project/compare/v3.0.1...v3.0.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 36c3b0fbb71..f170ab96ac3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.0.4", + "version": "3.1.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.0.4", + "version": "3.1.0", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 7008257bdd6..4e712597949 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.0.4", + "version": "3.1.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 0095ed765d781132b4edc61353045a36472b90a7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 2 Apr 2023 02:20:48 +0000 Subject: [PATCH 0884/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 199 +++++++++++++++-------------- packages/project/package.json | 6 +- 2 files changed, 109 insertions(+), 96 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f170ab96ac3..d3e90098455 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -37,10 +37,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.36.0", + "eslint": "^8.37.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.1.0", + "eslint-plugin-jsdoc": "^40.1.1", "esmock": "^2.2.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -50,7 +50,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.0.2", + "sinon": "^15.0.3", "tap-xunit": "^2.4.1" }, "engines": { @@ -77,9 +77,9 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", "dependencies": { "@babel/highlight": "^7.18.6" }, @@ -88,30 +88,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", - "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.4.tgz", + "integrity": "sha512-/DYyDpeCfaVinT40FPGdkkb+lYSKvsVuMjDAG7jPOWWiM1ibOaB9CXJAlc4d1QpP/U2q2P9jbrSlClKSErd55g==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.3.tgz", - "integrity": "sha512-qIJONzoa/qiHghnm0l1n4i/6IIziDpzqc36FBs4pzMhDUraHqponwJLiAKm1hGLP3OSB/TVNz6rMwVGpwxxySw==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.4.tgz", + "integrity": "sha512-qt/YV149Jman/6AfmlxJ04LMIu8bMoyl3RB91yTFrxQmgbrSvQMy7cI8Q62FHx1t8wJ8B5fu0UDoLwHAhUo1QA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.3", - "@babel/helper-compilation-targets": "^7.20.7", + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.21.4", + "@babel/helper-compilation-targets": "^7.21.4", "@babel/helper-module-transforms": "^7.21.2", "@babel/helpers": "^7.21.0", - "@babel/parser": "^7.21.3", + "@babel/parser": "^7.21.4", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.3", - "@babel/types": "^7.21.3", + "@babel/traverse": "^7.21.4", + "@babel/types": "^7.21.4", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -136,12 +136,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.3.tgz", - "integrity": "sha512-QS3iR1GYC/YGUnW7IdggFeN5c1poPUurnGttOV/bZgPGV+izC/D8HnD6DLwod0fsatNyVn1G3EVWMYIF0nHbeA==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.4.tgz", + "integrity": "sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA==", "dev": true, "dependencies": { - "@babel/types": "^7.21.3", + "@babel/types": "^7.21.4", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -165,13 +165,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.4.tgz", + "integrity": "sha512-Fa0tTuOXZ1iL8IeDFUWCzjZcn+sJGd9RZdH9esYVjEejGmzf+FFYQpMi/kZUk2kPy/q1H3/GPw7np8qar/stfg==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", + "@babel/compat-data": "^7.21.4", + "@babel/helper-validator-option": "^7.21.0", "browserslist": "^4.21.3", "lru-cache": "^5.1.1", "semver": "^6.3.0" @@ -227,12 +227,12 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", + "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", "dev": true, "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.21.4" }, "engines": { "node": ">=6.9.0" @@ -395,9 +395,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.3.tgz", - "integrity": "sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", + "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", "bin": { "parser": "bin/babel-parser.js" }, @@ -420,19 +420,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.3.tgz", - "integrity": "sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.4.tgz", + "integrity": "sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.3", + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.21.4", "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.3", - "@babel/types": "^7.21.3", + "@babel/parser": "^7.21.4", + "@babel/types": "^7.21.4", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -441,9 +441,9 @@ } }, "node_modules/@babel/types": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.3.tgz", - "integrity": "sha512-sBGdETxC+/M4o/zKC0sl6sjWv62WFR/uzxrJ6uYyMLZOUlPnwzw0tKgVHOXxaAd5l2g8pEDM5RZ495GPQI77kg==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", + "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.19.4", @@ -484,23 +484,23 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.4.1.tgz", - "integrity": "sha512-BISJ6ZE4xQsuL/FmsyRaiffpq977bMlsKfGHTQrOGFErfByxIe6iZTxPf/00Zon9b9a7iUykfQwejN3s2ZW/Bw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.0.tgz", + "integrity": "sha512-vITaYzIcNmjn5tF5uxcZ/ft7/RXGrMUIS9HalWckEOF6ESiwXKoMzAQf2UW0aVd6rnOeExTJVd5hmWXucBKGXQ==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.1.tgz", - "integrity": "sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.2.tgz", + "integrity": "sha512-3W4f5tDUra+pA+FzgugqL2pRimUTDJWKr7BINqOpkZrC0uYI0NIc0/JFgBROCU07HR6GieA5m3/rsPIhDmCXTQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.5.0", + "espree": "^9.5.1", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -565,9 +565,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.36.0.tgz", - "integrity": "sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.37.0.tgz", + "integrity": "sha512-x5vzdtOOGgFVDCUs81QRB2+liax8rFg3+7hqM+QhBG0/G3F1ZsoYl97UrqgHgQ9KKT7G6c4V+aTUCgu/n22v1A==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1034,9 +1034,9 @@ } }, "node_modules/@sinonjs/samsam": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-7.0.1.tgz", - "integrity": "sha512-zsAk2Jkiq89mhZovB2LLOdTCxJF4hqqTToGP0ASWlhp4I1hqOjcfmZGafXntCN7MDC6yySH0mFHrYtHceOeLmw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.0.tgz", + "integrity": "sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==", "dev": true, "dependencies": { "@sinonjs/commons": "^2.0.0", @@ -1867,9 +1867,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001469", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001469.tgz", - "integrity": "sha512-Rcp7221ScNqQPP3W+lVOYDyjdR6dC+neEQCttoNr5bAyz54AboB4iwpnWgyi8P4YUsPybVzT4LgWiBbI3drL4g==", + "version": "1.0.30001473", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001473.tgz", + "integrity": "sha512-ewDad7+D2vlyy+E4UJuVfiBsU69IL+8oVmTuZnH5Q6CIUbxNfI50uVpRHbUPDD6SUaN2o0Lh4DhTrvLG/Tn1yg==", "dev": true, "funding": [ { @@ -1879,6 +1879,10 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ] }, @@ -3101,9 +3105,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.340", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.340.tgz", - "integrity": "sha512-zx8hqumOqltKsv/MF50yvdAlPF9S/4PXbyfzJS6ZGhbddGkRegdwImmfSVqCkEziYzrIGZ/TlrzBND4FysfkDg==", + "version": "1.4.348", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.348.tgz", + "integrity": "sha512-gM7TdwuG3amns/1rlgxMbeeyNoBFPa+4Uu0c7FeROWh4qWmvSOnvcslKmWy51ggLKZ2n/F/4i2HJ+PVNxH9uCQ==", "dev": true }, "node_modules/emittery": { @@ -3223,15 +3227,15 @@ } }, "node_modules/eslint": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.36.0.tgz", - "integrity": "sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.37.0.tgz", + "integrity": "sha512-NU3Ps9nI05GUoVMxcZx1J8CNR6xOvUT4jAUMH5+z8lpp3aEdPVCImKw6PWG4PY+Vfkpr+jvMpxs/qoE7wq0sPw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.0.1", - "@eslint/js": "8.36.0", + "@eslint/eslintrc": "^2.0.2", + "@eslint/js": "8.37.0", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3242,8 +3246,8 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.1.1", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.5.0", + "eslint-visitor-keys": "^3.4.0", + "espree": "^9.5.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -3314,9 +3318,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "40.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.1.0.tgz", - "integrity": "sha512-ANvrhiu62VlSorARM0hup60VQsS3hNyp0Ca7cnJDj8tpJzM7tNhBVqMVYXSuLzEmqrpwx6aAh+NAN2DdAGG5fQ==", + "version": "40.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.1.1.tgz", + "integrity": "sha512-KxrQCq9pPt7LNeDBlLlnuJMpDFZnEQTs4e25NrT4u5cWmPw2P7F03F2qwPz0GMdlRZTyMOofuPAdiWytvPubvA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.37.0", @@ -3396,11 +3400,14 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz", + "integrity": "sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/eslint/node_modules/ansi-regex": { @@ -3626,13 +3633,13 @@ } }, "node_modules/espree": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.0.tgz", - "integrity": "sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw==", + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.1.tgz", + "integrity": "sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==", "dependencies": { "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" + "eslint-visitor-keys": "^3.4.0" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -5759,9 +5766,9 @@ } }, "node_modules/meow/node_modules/type-fest": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.7.0.tgz", - "integrity": "sha512-A2qUJ/j8vkKIT+UorxayZjFJoEdNkIPZkjOJSWezoAbRQd7QEhnz2iJlfVy4Or0GuEnCXts5cNorQNUvdLkaSQ==", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.7.2.tgz", + "integrity": "sha512-f9BHrLjRJ4MYkfOsnC/53PNDzZJcVo14MqLp2+hXE39p5bgwqohxR5hDZztwxlbxmIVuvC2EFAKrAkokq23PLA==", "dev": true, "engines": { "node": ">=14.16" @@ -5835,9 +5842,9 @@ } }, "node_modules/minimatch": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.3.tgz", - "integrity": "sha512-5UB4yYusDtkRPbRiy1cqZ1IpGNcJCGlEMG17RKzPddpyiPKoCdwohbED8g4QXT0ewCt8LTkQXuljsUfQ3FKM4A==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.4.tgz", + "integrity": "sha512-T+8B3kNrLP7jDb5eaC4rUIp6DKoeTSb6f9SwF2phcY2gxJUA0GEf1i29/FHxBMEfx0ppWlr434/D0P+6jb8bOQ==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -6148,10 +6155,16 @@ } }, "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -8376,14 +8389,14 @@ } }, "node_modules/sinon": { - "version": "15.0.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.2.tgz", - "integrity": "sha512-PCVP63XZkg0/LOqQH5rEU4LILuvTFMb5tNxTHfs6VUMNnZz2XrnGSTZbAGITjzwQWbl/Bl/8hi4G3zZWjyBwHg==", + "version": "15.0.3", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.3.tgz", + "integrity": "sha512-si3geiRkeovP7Iel2O+qGL4NrO9vbMf3KsrJEi0ghP1l5aBkB5UxARea5j0FUsSqH3HLBh0dQPAyQ8fObRUqHw==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", "@sinonjs/fake-timers": "^10.0.2", - "@sinonjs/samsam": "^7.0.1", + "@sinonjs/samsam": "^8.0.0", "diff": "^5.1.0", "nise": "^5.1.4", "supports-color": "^7.2.0" diff --git a/packages/project/package.json b/packages/project/package.json index 4e712597949..b75378b93dd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -144,10 +144,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.36.0", + "eslint": "^8.37.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.1.0", + "eslint-plugin-jsdoc": "^40.1.1", "esmock": "^2.2.0", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -157,7 +157,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.0.2", + "sinon": "^15.0.3", "tap-xunit": "^2.4.1" } } From 3ac6a795655149f48188d403fb35982a83601a6c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 9 Apr 2023 02:20:38 +0000 Subject: [PATCH 0885/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 216 ++++++++++++++++------------- packages/project/package.json | 8 +- 2 files changed, 122 insertions(+), 102 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d3e90098455..346d9bc0fc5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -25,7 +25,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", - "resolve": "^1.22.1", + "resolve": "^1.22.2", "rimraf": "^4.4.1", "semver": "^7.3.8", "xml2js": "^0.4.23" @@ -37,11 +37,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.37.0", + "eslint": "^8.38.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.1.1", - "esmock": "^2.2.0", + "eslint-plugin-jsdoc": "^40.1.2", + "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", @@ -64,12 +64,12 @@ "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==" }, "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/gen-mapping": "^0.3.0", "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { @@ -150,20 +150,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/helper-compilation-targets": { "version": "7.21.4", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.4.tgz", @@ -565,9 +551,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.37.0.tgz", - "integrity": "sha512-x5vzdtOOGgFVDCUs81QRB2+liax8rFg3+7hqM+QhBG0/G3F1ZsoYl97UrqgHgQ9KKT7G6c4V+aTUCgu/n22v1A==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.38.0.tgz", + "integrity": "sha512-IoD2MfUnOV58ghIHCiil01PcohxjbYR/qCxsoC+xNgUwh1EY8jOOrYmu3d3a71+tJJ23uscEV4X2HJWMsPJu4g==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -697,13 +683,13 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { "node": ">=6.0.0" @@ -726,41 +712,33 @@ } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.3.tgz", + "integrity": "sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==", "dependencies": { "@jridgewell/gen-mapping": "^0.3.0", "@jridgewell/trace-mapping": "^0.3.9" } }, - "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", "dependencies": { "@jridgewell/resolve-uri": "3.1.0", "@jridgewell/sourcemap-codec": "1.4.14" } }, + "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, "node_modules/@jsdoc/salty": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.5.tgz", @@ -1730,12 +1708,12 @@ } }, "node_modules/cacache/node_modules/glob": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.2.tgz", - "integrity": "sha512-BTv/JhKXFEHsErMte/AnfiSv8yYOLLiyH2lTg8vn02O21zWFgHPTfxtgn1QRe7NRgggUhC8hacR2Re94svHqeA==", + "version": "9.3.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.4.tgz", + "integrity": "sha512-qaSc49hojMOv1EPM4EuyITjDSgSKI0rthoHnvE81tcOi1SCVndHko7auqxdQ14eiQG2NDBJBE86+2xIrbIvrbA==", "dependencies": { "fs.realpath": "^1.0.0", - "minimatch": "^7.4.1", + "minimatch": "^8.0.2", "minipass": "^4.2.4", "path-scurry": "^1.6.1" }, @@ -1762,6 +1740,20 @@ "node": ">=12" } }, + "node_modules/cacache/node_modules/minimatch": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.3.tgz", + "integrity": "sha512-tEEvU9TkZgnFDCtpnrEYnPsjT7iUx42aXfs4bzmQ5sMA09/6hZY0jeZcGkXyDagiBOvkUjNo8Viom+Me6+2x7g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/cacache/node_modules/p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -1867,9 +1859,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001473", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001473.tgz", - "integrity": "sha512-ewDad7+D2vlyy+E4UJuVfiBsU69IL+8oVmTuZnH5Q6CIUbxNfI50uVpRHbUPDD6SUaN2o0Lh4DhTrvLG/Tn1yg==", + "version": "1.0.30001476", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001476.tgz", + "integrity": "sha512-JmpktFppVSvyUN4gsLS0bShY2L9ZUslHLE72vgemBkS43JD2fOvKTKs+GtRwuxrtRGnwJFW0ye7kWRRlLJS9vQ==", "dev": true, "funding": [ { @@ -3105,9 +3097,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.348", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.348.tgz", - "integrity": "sha512-gM7TdwuG3amns/1rlgxMbeeyNoBFPa+4Uu0c7FeROWh4qWmvSOnvcslKmWy51ggLKZ2n/F/4i2HJ+PVNxH9uCQ==", + "version": "1.4.356", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.356.tgz", + "integrity": "sha512-nEftV1dRX3omlxAj42FwqRZT0i4xd2dIg39sog/CnCJeCcL1TRd2Uh0i9Oebgv8Ou0vzTPw++xc+Z20jzS2B6A==", "dev": true }, "node_modules/emittery": { @@ -3227,15 +3219,15 @@ } }, "node_modules/eslint": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.37.0.tgz", - "integrity": "sha512-NU3Ps9nI05GUoVMxcZx1J8CNR6xOvUT4jAUMH5+z8lpp3aEdPVCImKw6PWG4PY+Vfkpr+jvMpxs/qoE7wq0sPw==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.38.0.tgz", + "integrity": "sha512-pIdsD2jwlUGf/U38Jv97t8lq6HpaU/G9NKbYmpWpZGw3LdTNhZLbJePqxOXGB5+JEKfOPU/XLxYxFh03nr1KTg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", "@eslint/eslintrc": "^2.0.2", - "@eslint/js": "8.37.0", + "@eslint/js": "8.38.0", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3318,9 +3310,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "40.1.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.1.1.tgz", - "integrity": "sha512-KxrQCq9pPt7LNeDBlLlnuJMpDFZnEQTs4e25NrT4u5cWmPw2P7F03F2qwPz0GMdlRZTyMOofuPAdiWytvPubvA==", + "version": "40.1.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.1.2.tgz", + "integrity": "sha512-U4Kt42OVjF0EXOWPEc8pjanT8O1ULvILwgA5k87CnhrCKG4xaJ8Sjsb6CWgDtaemOywN06u86duKU1yMaBp7IQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.37.0", @@ -3624,9 +3616,9 @@ } }, "node_modules/esmock": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.2.0.tgz", - "integrity": "sha512-4+K/DwcXyBCF8xjuz/PVYCFs2YmHOJNFxHq46cj05QtCgx3b+WXZQVpI7CRC8LY+Ht23mUSHz+Id/md9a2phbQ==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.2.1.tgz", + "integrity": "sha512-QbRR6cdaKs3eHSZS0wrRK70uvZlSWGxgBzOxvGNd2HfTX7D1672Mqv11rDCUM4GqORTZe0bIErnrcQPgWmrOCQ==", "dev": true, "engines": { "node": ">=14.16.0" @@ -5766,9 +5758,9 @@ } }, "node_modules/meow/node_modules/type-fest": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.7.2.tgz", - "integrity": "sha512-f9BHrLjRJ4MYkfOsnC/53PNDzZJcVo14MqLp2+hXE39p5bgwqohxR5hDZztwxlbxmIVuvC2EFAKrAkokq23PLA==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.8.0.tgz", + "integrity": "sha512-FVNSzGQz9Th+/9R6Lvv7WIAkstylfHN2/JYxkyhhmKFYh9At2DST8t6L6Lref9eYO8PXFTfG9Sg1Agg0K3vq3Q==", "dev": true, "engines": { "node": ">=14.16" @@ -5842,9 +5834,9 @@ } }, "node_modules/minimatch": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.4.tgz", - "integrity": "sha512-T+8B3kNrLP7jDb5eaC4rUIp6DKoeTSb6f9SwF2phcY2gxJUA0GEf1i29/FHxBMEfx0ppWlr434/D0P+6jb8bOQ==", + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.5.tgz", + "integrity": "sha512-OzOamaOmNBJZUv2qqY1OSWa+++4YPpOkLgkc0w30Oov5ufKlWWXnFUl0l4dgmSv5Shq/zRVkEOXAe2NaqO4l5Q==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -7634,12 +7626,12 @@ } }, "node_modules/read-package-json/node_modules/glob": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.2.tgz", - "integrity": "sha512-BTv/JhKXFEHsErMte/AnfiSv8yYOLLiyH2lTg8vn02O21zWFgHPTfxtgn1QRe7NRgggUhC8hacR2Re94svHqeA==", + "version": "9.3.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.4.tgz", + "integrity": "sha512-qaSc49hojMOv1EPM4EuyITjDSgSKI0rthoHnvE81tcOi1SCVndHko7auqxdQ14eiQG2NDBJBE86+2xIrbIvrbA==", "dependencies": { "fs.realpath": "^1.0.0", - "minimatch": "^7.4.1", + "minimatch": "^8.0.2", "minipass": "^4.2.4", "path-scurry": "^1.6.1" }, @@ -7677,6 +7669,20 @@ "node": ">=12" } }, + "node_modules/read-package-json/node_modules/minimatch": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.3.tgz", + "integrity": "sha512-tEEvU9TkZgnFDCtpnrEYnPsjT7iUx42aXfs4bzmQ5sMA09/6hZY0jeZcGkXyDagiBOvkUjNo8Viom+Me6+2x7g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/read-package-json/node_modules/normalize-package-data": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", @@ -7962,11 +7968,11 @@ } }, "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", "dependencies": { - "is-core-module": "^2.9.0", + "is-core-module": "^2.11.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -8033,12 +8039,12 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.2.tgz", - "integrity": "sha512-BTv/JhKXFEHsErMte/AnfiSv8yYOLLiyH2lTg8vn02O21zWFgHPTfxtgn1QRe7NRgggUhC8hacR2Re94svHqeA==", + "version": "9.3.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.4.tgz", + "integrity": "sha512-qaSc49hojMOv1EPM4EuyITjDSgSKI0rthoHnvE81tcOi1SCVndHko7auqxdQ14eiQG2NDBJBE86+2xIrbIvrbA==", "dependencies": { "fs.realpath": "^1.0.0", - "minimatch": "^7.4.1", + "minimatch": "^8.0.2", "minipass": "^4.2.4", "path-scurry": "^1.6.1" }, @@ -8049,6 +8055,20 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.3.tgz", + "integrity": "sha512-tEEvU9TkZgnFDCtpnrEYnPsjT7iUx42aXfs4bzmQ5sMA09/6hZY0jeZcGkXyDagiBOvkUjNo8Viom+Me6+2x7g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/run-applescript": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", @@ -8189,9 +8209,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.60.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.60.0.tgz", - "integrity": "sha512-updbwW6fNb5gGm8qMXzVO7V4sWf7LMXnMly/JEyfbfERbVH46Fn6q02BX7/eHTdKpE7d+oTkMMQpFWNUMfFbgQ==", + "version": "1.61.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.61.0.tgz", + "integrity": "sha512-PDsN7BrVkNZK2+dj/dpKQAWZavbAQ87IXqVvw2+oEYI+GwlTWkvbQtL7F2cCNbMqJEYKPh1EcjSxsnqIb/kyaQ==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8202,7 +8222,7 @@ "sass": "sass.js" }, "engines": { - "node": ">=12.0.0" + "node": ">=14.0.0" } }, "node_modules/sax": { @@ -8608,9 +8628,9 @@ "dev": true }, "node_modules/ssri": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.1.tgz", - "integrity": "sha512-WVy6di9DlPOeBWEjMScpNipeSX2jIZBGEn5Uuo8Q7aIuFEuDX0pw8RxcOjlD1TWP4obi24ki7m/13+nFpcbXrw==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.2.tgz", + "integrity": "sha512-LWMXUSh7fEfCXNBq4UnRzC4Qc5Y1PPg5ogmb+6HX837i2cKzjB133aYmQ4lgO0shVTcTQHquKp3v5bn898q3Sw==", "dependencies": { "minipass": "^4.0.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index b75378b93dd..ebbdc7b1969 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -132,7 +132,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^7.1.0", "read-pkg-up": "^9.1.0", - "resolve": "^1.22.1", + "resolve": "^1.22.2", "rimraf": "^4.4.1", "semver": "^7.3.8", "xml2js": "^0.4.23" @@ -144,11 +144,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.37.0", + "eslint": "^8.38.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.1.1", - "esmock": "^2.2.0", + "eslint-plugin-jsdoc": "^40.1.2", + "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", From 765b1369fa886a8570999c7af422a4941cdd6bb9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 9 Apr 2023 10:56:45 +0000 Subject: [PATCH 0886/1272] [ui5-project][DEPENDENCY] Bump read-pkg from 7.1.0 to 8.0.0 Bumps [read-pkg](https://github.com/sindresorhus/read-pkg) from 7.1.0 to 8.0.0. - [Release notes](https://github.com/sindresorhus/read-pkg/releases) - [Commits](https://github.com/sindresorhus/read-pkg/compare/v7.1.0...v8.0.0) --- updated-dependencies: - dependency-name: read-pkg dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 156 ++++++++++++++++++++++------- packages/project/package.json | 2 +- 2 files changed, 121 insertions(+), 37 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 346d9bc0fc5..3227efebdff 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -23,7 +23,7 @@ "lockfile": "^1.0.4", "pacote": "^15.1.1", "pretty-hrtime": "^1.0.3", - "read-pkg": "^7.1.0", + "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.2", "rimraf": "^4.4.1", @@ -7698,17 +7698,17 @@ } }, "node_modules/read-pkg": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", - "integrity": "sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.0.0.tgz", + "integrity": "sha512-Ajb9oSjxXBw0YyOiwtQ2dKbAA/vMnUPnY63XcCk+mXo0BwIdQEMgZLZiMWGttQHcUhUgbK0mH85ethMPKXxziw==", "dependencies": { "@types/normalize-package-data": "^2.4.1", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^2.0.0" + "normalize-package-data": "^5.0.0", + "parse-json": "^7.0.0", + "type-fest": "^3.8.0" }, "engines": { - "node": ">=12.20" + "node": ">=16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7745,6 +7745,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg-up/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/read-pkg-up/node_modules/locate-path": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", @@ -7759,6 +7770,31 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg-up/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/read-pkg-up/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/read-pkg-up/node_modules/p-limit": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", @@ -7795,6 +7831,23 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, + "node_modules/read-pkg-up/node_modules/read-pkg": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", + "integrity": "sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==", + "dependencies": { + "@types/normalize-package-data": "^2.4.1", + "normalize-package-data": "^3.0.2", + "parse-json": "^5.2.0", + "type-fest": "^2.0.0" + }, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/read-pkg-up/node_modules/type-fest": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", @@ -7806,6 +7859,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg-up/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/read-pkg-up/node_modules/yocto-queue": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", @@ -7818,57 +7876,83 @@ } }, "node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", "dependencies": { - "lru-cache": "^6.0.0" + "lru-cache": "^7.5.1" }, "engines": { - "node": ">=10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-pkg/node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-pkg/node_modules/lines-and-columns": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", + "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, "node_modules/read-pkg/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", + "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", "dependencies": { - "yallist": "^4.0.0" + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": ">=10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "node_modules/read-pkg/node_modules/parse-json": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.0.0.tgz", + "integrity": "sha512-kP+TQYAzAiVnzOlWOe0diD6L35s9bJh0SCn95PIbZFKrOYuIRQsQkeWEYxzVDuHTt9V9YqvYCJ2Qo4z9wdfZPw==", "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" + "@babel/code-frame": "^7.21.4", + "error-ex": "^1.3.2", + "json-parse-even-better-errors": "^3.0.0", + "lines-and-columns": "^2.0.3", + "type-fest": "^3.8.0" }, "engines": { - "node": ">=10" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.8.0.tgz", + "integrity": "sha512-FVNSzGQz9Th+/9R6Lvv7WIAkstylfHN2/JYxkyhhmKFYh9At2DST8t6L6Lref9eYO8PXFTfG9Sg1Agg0K3vq3Q==", "engines": { - "node": ">=12.20" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/readable-stream": { "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index ebbdc7b1969..784fadfe6f2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -130,7 +130,7 @@ "lockfile": "^1.0.4", "pacote": "^15.1.1", "pretty-hrtime": "^1.0.3", - "read-pkg": "^7.1.0", + "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.2", "rimraf": "^4.4.1", From 6f9e73db9c75a680c64591d57c46295d14b01a6b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 9 Apr 2023 10:56:36 +0000 Subject: [PATCH 0887/1272] [ui5-project][DEPENDENCY] Bump xml2js from 0.4.23 to 0.5.0 Bumps [xml2js](https://github.com/Leonidas-from-XIV/node-xml2js) from 0.4.23 to 0.5.0. - [Release notes](https://github.com/Leonidas-from-XIV/node-xml2js/releases) - [Commits](https://github.com/Leonidas-from-XIV/node-xml2js/commits) --- updated-dependencies: - dependency-name: xml2js dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 28 ++++++++++++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3227efebdff..79fe02130ae 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -28,7 +28,7 @@ "resolve": "^1.22.2", "rimraf": "^4.4.1", "semver": "^7.3.8", - "xml2js": "^0.4.23" + "xml2js": "^0.5.0" }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", @@ -1131,6 +1131,26 @@ "npm": ">= 8" } }, + "node_modules/@ui5/builder/node_modules/xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@ui5/builder/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "engines": { + "node": ">=4.0" + } + }, "node_modules/@ui5/fs": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.2.tgz", @@ -9690,9 +9710,9 @@ } }, "node_modules/xml2js": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", - "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", + "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", "dependencies": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index 784fadfe6f2..813b0a1d5d1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -135,7 +135,7 @@ "resolve": "^1.22.2", "rimraf": "^4.4.1", "semver": "^7.3.8", - "xml2js": "^0.4.23" + "xml2js": "^0.5.0" }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", From d0fc431d85edc9d67f67d9d0a509c408a13c1611 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 12 Apr 2023 11:12:47 +0000 Subject: [PATCH 0888/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 173 +++++++++++++++++------------ packages/project/package.json | 6 +- 2 files changed, 105 insertions(+), 74 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 79fe02130ae..a4a0278a45e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -16,7 +16,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.1.3", + "globby": "^13.1.4", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", @@ -27,7 +27,7 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.2", "rimraf": "^4.4.1", - "semver": "^7.3.8", + "semver": "^7.4.0", "xml2js": "^0.5.0" }, "devDependencies": { @@ -40,7 +40,7 @@ "eslint": "^8.38.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.1.2", + "eslint-plugin-jsdoc": "^40.3.0", "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -1051,17 +1051,40 @@ "node": ">= 10" } }, + "node_modules/@tufjs/canonical-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz", + "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@tufjs/models": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.1.tgz", - "integrity": "sha512-AY0VoG/AXdlSOocuREfPoEW4SNhOPp/7fw6mpAxfVIny1uZ+0fEtMoCi7NhELSlqQIRLMu7RgfKhkxT+AJ+EXg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.2.tgz", + "integrity": "sha512-uxarDtxTIK3f8hJS4yFhW/lvTa3tsiQU5iDCRut+NCnOXvNtEul0Ct58NIIcIx9Rkt7OFEK31Ndpqsd663nsew==", "dependencies": { - "minimatch": "^7.4.2" + "@tufjs/canonical-json": "1.0.0", + "minimatch": "^8.0.3" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@tufjs/models/node_modules/minimatch": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", + "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@types/linkify-it": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", @@ -1728,9 +1751,9 @@ } }, "node_modules/cacache/node_modules/glob": { - "version": "9.3.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.4.tgz", - "integrity": "sha512-qaSc49hojMOv1EPM4EuyITjDSgSKI0rthoHnvE81tcOi1SCVndHko7auqxdQ14eiQG2NDBJBE86+2xIrbIvrbA==", + "version": "9.3.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", + "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", "dependencies": { "fs.realpath": "^1.0.0", "minimatch": "^8.0.2", @@ -1761,9 +1784,9 @@ } }, "node_modules/cacache/node_modules/minimatch": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.3.tgz", - "integrity": "sha512-tEEvU9TkZgnFDCtpnrEYnPsjT7iUx42aXfs4bzmQ5sMA09/6hZY0jeZcGkXyDagiBOvkUjNo8Viom+Me6+2x7g==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", + "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -1879,9 +1902,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001476", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001476.tgz", - "integrity": "sha512-JmpktFppVSvyUN4gsLS0bShY2L9ZUslHLE72vgemBkS43JD2fOvKTKs+GtRwuxrtRGnwJFW0ye7kWRRlLJS9vQ==", + "version": "1.0.30001478", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001478.tgz", + "integrity": "sha512-gMhDyXGItTHipJj2ApIvR+iVB5hd0KP3svMWWXDvZOmjzJJassGLMfxRkQCSYgGd2gtdL/ReeiyvMSFD1Ss6Mw==", "dev": true, "funding": [ { @@ -3117,9 +3140,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.356", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.356.tgz", - "integrity": "sha512-nEftV1dRX3omlxAj42FwqRZT0i4xd2dIg39sog/CnCJeCcL1TRd2Uh0i9Oebgv8Ou0vzTPw++xc+Z20jzS2B6A==", + "version": "1.4.359", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.359.tgz", + "integrity": "sha512-OoVcngKCIuNXtZnsYoqlCvr0Cf3NIPzDIgwUfI9bdTFjXCrr79lI0kwQstLPZ7WhCezLlGksZk/BFAzoXC7GDw==", "dev": true }, "node_modules/emittery": { @@ -3330,9 +3353,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "40.1.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.1.2.tgz", - "integrity": "sha512-U4Kt42OVjF0EXOWPEc8pjanT8O1ULvILwgA5k87CnhrCKG4xaJ8Sjsb6CWgDtaemOywN06u86duKU1yMaBp7IQ==", + "version": "40.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.3.0.tgz", + "integrity": "sha512-EhCqpzRkxoT2DUB4AnrU0ggBYvTh3bWrLZzQTupq6vSVE6XzNwJVKsOHa41GCoevnsWMBNmoDVjXWGqckjuG1g==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.37.0", @@ -4212,9 +4235,9 @@ } }, "node_modules/globby": { - "version": "13.1.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", - "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", + "version": "13.1.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.4.tgz", + "integrity": "sha512-iui/IiiW+QrJ1X1hKH5qwlMQyv34wJAYwH1vrf8b9kBA4sNiif3gKsMHa+BrdnOpEudWjpotfa7LrTzB1ERS/g==", "dependencies": { "dir-glob": "^3.0.1", "fast-glob": "^3.2.11", @@ -4581,9 +4604,9 @@ } }, "node_modules/is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", + "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", "dependencies": { "has": "^1.0.3" }, @@ -5854,9 +5877,9 @@ } }, "node_modules/minimatch": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.5.tgz", - "integrity": "sha512-OzOamaOmNBJZUv2qqY1OSWa+++4YPpOkLgkc0w30Oov5ufKlWWXnFUl0l4dgmSv5Shq/zRVkEOXAe2NaqO4l5Q==", + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", + "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -5900,9 +5923,9 @@ } }, "node_modules/minipass": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.5.tgz", - "integrity": "sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==", + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", + "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", "engines": { "node": ">=8" } @@ -7168,12 +7191,12 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.3.tgz", - "integrity": "sha512-RAmB+n30SlN+HnNx6EbcpoDy9nwdpcGPnEKrJnu6GZoDWBdIjo1UQMVtW2ybtC7LC2oKLcMq8y5g8WnKLiod9g==", + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.4.tgz", + "integrity": "sha512-Qp/9IHkdNiXJ3/Kon++At2nVpnhRiPq/aSvQN+H3U1WZbvNRK0RIQK/o4HMqPoXjpuGJUEWpHSs6Mnjxqh3TQg==", "dependencies": { - "lru-cache": "^7.14.1", - "minipass": "^4.0.2" + "lru-cache": "^9.0.0", + "minipass": "^5.0.0" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -7183,11 +7206,19 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.0.1.tgz", + "integrity": "sha512-C8QsKIN1UIXeOs3iWmiZ1lQY+EnKDojWd37fXy1aSbJvH4iSma1uy2OWuoB3m4SYRli5+CUjDv3Dij5DVoetmg==", "engines": { - "node": ">=12" + "node": "14 || >=16.14" + } + }, + "node_modules/path-scurry/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" } }, "node_modules/path-to-regexp": { @@ -7646,9 +7677,9 @@ } }, "node_modules/read-package-json/node_modules/glob": { - "version": "9.3.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.4.tgz", - "integrity": "sha512-qaSc49hojMOv1EPM4EuyITjDSgSKI0rthoHnvE81tcOi1SCVndHko7auqxdQ14eiQG2NDBJBE86+2xIrbIvrbA==", + "version": "9.3.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", + "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", "dependencies": { "fs.realpath": "^1.0.0", "minimatch": "^8.0.2", @@ -7690,9 +7721,9 @@ } }, "node_modules/read-package-json/node_modules/minimatch": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.3.tgz", - "integrity": "sha512-tEEvU9TkZgnFDCtpnrEYnPsjT7iUx42aXfs4bzmQ5sMA09/6hZY0jeZcGkXyDagiBOvkUjNo8Viom+Me6+2x7g==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", + "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -8143,9 +8174,9 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "9.3.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.4.tgz", - "integrity": "sha512-qaSc49hojMOv1EPM4EuyITjDSgSKI0rthoHnvE81tcOi1SCVndHko7auqxdQ14eiQG2NDBJBE86+2xIrbIvrbA==", + "version": "9.3.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", + "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", "dependencies": { "fs.realpath": "^1.0.0", "minimatch": "^8.0.2", @@ -8160,9 +8191,9 @@ } }, "node_modules/rimraf/node_modules/minimatch": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.3.tgz", - "integrity": "sha512-tEEvU9TkZgnFDCtpnrEYnPsjT7iUx42aXfs4bzmQ5sMA09/6hZY0jeZcGkXyDagiBOvkUjNo8Viom+Me6+2x7g==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", + "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -8313,9 +8344,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.61.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.61.0.tgz", - "integrity": "sha512-PDsN7BrVkNZK2+dj/dpKQAWZavbAQ87IXqVvw2+oEYI+GwlTWkvbQtL7F2cCNbMqJEYKPh1EcjSxsnqIb/kyaQ==", + "version": "1.62.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.62.0.tgz", + "integrity": "sha512-Q4USplo4pLYgCi+XlipZCWUQz5pkg/ruSSgJ0WRDSb/+3z9tXUOkQ7QPYn4XrhZKYAK4HlpaQecRwKLJX6+DBg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8348,9 +8379,9 @@ } }, "node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.4.0.tgz", + "integrity": "sha512-RgOxM8Mw+7Zus0+zcLEUn8+JfoLpj/huFTItQy2hsM4khuC1HYRDp0cU482Ewn/Fcy6bCjufD8vAj7voC66KQw==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -8732,9 +8763,9 @@ "dev": true }, "node_modules/ssri": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.2.tgz", - "integrity": "sha512-LWMXUSh7fEfCXNBq4UnRzC4Qc5Y1PPg5ogmb+6HX837i2cKzjB133aYmQ4lgO0shVTcTQHquKp3v5bn898q3Sw==", + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.3.tgz", + "integrity": "sha512-lJtX/BFPI/VEtxZmLfeh7pzisIs6micwZ3eruD3+ds9aPsXKlYpwDS2Q7omD6WC42WO9+bnUSzlMmfv8uK8meg==", "dependencies": { "minipass": "^4.0.0" }, @@ -9151,9 +9182,9 @@ } }, "node_modules/terser": { - "version": "5.16.8", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.8.tgz", - "integrity": "sha512-QI5g1E/ef7d+PsDifb+a6nnVgC4F22Bg6T0xrBrz6iloVB4PUkkunp6V8nzoOOZJIzjWVdAGqCdlKlhLq/TbIA==", + "version": "5.16.9", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.9.tgz", + "integrity": "sha512-HPa/FdTB9XGI2H1/keLFZHxl6WNvAI4YalHGtDQTlMnJcoqSab1UwL4l1hGEhs6/GmLHBZIg/YgB++jcbzoOEg==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -9346,11 +9377,11 @@ } }, "node_modules/tuf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.2.tgz", - "integrity": "sha512-gBfbnS6khluxjvoFCpRV0fhWT265xNfpiNXOcBX0Ze6HGbPhe93UG5V5DdKcgm/aXsMadnY76l/h6j63GmJS5g==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.3.tgz", + "integrity": "sha512-jGYi5nG/kqgfTFQSdoN6PW9eIn+XRZqdXku+fSwNk6UpWIsWaV7pzAqPgFr85edOPhoyJDyBqCS+DCnHroMvrw==", "dependencies": { - "@tufjs/models": "1.0.1", + "@tufjs/models": "1.0.2", "make-fetch-happen": "^11.0.1" }, "engines": { diff --git a/packages/project/package.json b/packages/project/package.json index 813b0a1d5d1..8f8a018cbb5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -123,7 +123,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.1.3", + "globby": "^13.1.4", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", @@ -134,7 +134,7 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.2", "rimraf": "^4.4.1", - "semver": "^7.3.8", + "semver": "^7.4.0", "xml2js": "^0.5.0" }, "devDependencies": { @@ -147,7 +147,7 @@ "eslint": "^8.38.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.1.2", + "eslint-plugin-jsdoc": "^40.3.0", "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 5b55abf8fd4fe5deec9c0f068f96e0409b5fef94 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Wed, 12 Apr 2023 11:34:29 +0000 Subject: [PATCH 0889/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.1 to 3.0.2 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.2/CHANGELOG.md --- packages/project/package-lock.json | 48 +++++++++--------------------- packages/project/package.json | 2 +- 2 files changed, 15 insertions(+), 35 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a4a0278a45e..d35b992825e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.1.0", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.1", + "@ui5/builder": "^3.0.2", "@ui5/fs": "^3.0.2", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1128,52 +1128,32 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.1.tgz", - "integrity": "sha512-/bf+d/qpv7h594PWaCmrl5KVfgCjgIxIQ3E0sgx4vZPV9ON81v5KDXnS9TDLHdDPBz8UnnBJq5M55PQoYLT52A==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.2.tgz", + "integrity": "sha512-+I1hIjf9Y7tAKCph21D/QpVXX/aqoCfwpvra2GPD5Mw4YQuX6+16O3DPY0jtNMDpSGpLYlGcRo/rIPkqUE1sUA==", "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.14", - "@ui5/fs": "^3.0.1", + "@jridgewell/sourcemap-codec": "^1.4.15", + "@ui5/fs": "^3.0.2", "@ui5/logger": "^3.0.0", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", - "espree": "^9.4.1", - "graceful-fs": "^4.2.10", - "jsdoc": "^4.0.1", + "espree": "^9.5.1", + "graceful-fs": "^4.2.11", + "jsdoc": "^4.0.2", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", - "rimraf": "^4.1.2", - "semver": "^7.3.8", - "terser": "^5.16.3", - "workerpool": "^6.3.1", - "xml2js": "^0.4.23" + "rimraf": "^4.4.1", + "semver": "^7.4.0", + "terser": "^5.16.9", + "workerpool": "^6.4.0", + "xml2js": "^0.5.0" }, "engines": { "node": "^16.18.0 || >=18.12.0", "npm": ">= 8" } }, - "node_modules/@ui5/builder/node_modules/xml2js": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", - "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/@ui5/builder/node_modules/xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "engines": { - "node": ">=4.0" - } - }, "node_modules/@ui5/fs": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 8f8a018cbb5..a6d19450881 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -116,7 +116,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.1", + "@ui5/builder": "^3.0.2", "@ui5/fs": "^3.0.2", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From 2ecb3c1ec26282f58e3f8be4410fdb93e9e202b4 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Wed, 12 Apr 2023 11:59:07 +0000 Subject: [PATCH 0890/1272] [ui5-project]Release 3.1.1 --- packages/project/CHANGELOG.md | 10 +++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 02e9e5640cb..59f025120f5 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,14 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.1.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.1.1...HEAD). + + +## [v3.1.1] - 2023-04-12 +### Dependency Updates +- Bump xml2js from 0.4.23 to 0.5.0 [`d6d86c9`](https://github.com/SAP/ui5-project/commit/d6d86c93db5c4d288161aa11b72bb6537c4f4cf4) +- Bump read-pkg from 7.1.0 to 8.0.0 [`9800c06`](https://github.com/SAP/ui5-project/commit/9800c06004e44a4af8b86492b0f15cab465be0c0) + ## [v3.1.0] - 2023-03-31 @@ -346,6 +353,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.1.1]: https://github.com/SAP/ui5-project/compare/v3.1.0...v3.1.1 [v3.1.0]: https://github.com/SAP/ui5-project/compare/v3.0.4...v3.1.0 [v3.0.4]: https://github.com/SAP/ui5-project/compare/v3.0.3...v3.0.4 [v3.0.3]: https://github.com/SAP/ui5-project/compare/v3.0.2...v3.0.3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d35b992825e..93bf23c0483 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.1.0", + "version": "3.1.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.1.0", + "version": "3.1.1", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index a6d19450881..81d2d989113 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.1.0", + "version": "3.1.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From de1b66481c36a434045d354957f6ca666e49739f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 16 Apr 2023 02:20:43 +0000 Subject: [PATCH 0891/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 103 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 56 insertions(+), 49 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 93bf23c0483..418e6cc7ac6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -25,7 +25,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", - "resolve": "^1.22.2", + "resolve": "^1.22.3", "rimraf": "^4.4.1", "semver": "^7.4.0", "xml2js": "^0.5.0" @@ -3120,9 +3120,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.359", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.359.tgz", - "integrity": "sha512-OoVcngKCIuNXtZnsYoqlCvr0Cf3NIPzDIgwUfI9bdTFjXCrr79lI0kwQstLPZ7WhCezLlGksZk/BFAzoXC7GDw==", + "version": "1.4.365", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.365.tgz", + "integrity": "sha512-FRHZO+1tUNO4TOPXmlxetkoaIY8uwHzd1kKopK/Gx2SKn1L47wJXWD44wxP5CGRyyP98z/c8e1eBzJrgPeiBOg==", "dev": true }, "node_modules/emittery": { @@ -3164,9 +3164,9 @@ } }, "node_modules/entities": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", - "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "engines": { "node": ">=0.12" }, @@ -3366,9 +3366,9 @@ } }, "node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz", + "integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -3376,6 +3376,9 @@ }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/eslint-scope/node_modules/estraverse": { @@ -6376,9 +6379,9 @@ } }, "node_modules/npm-install-checks": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.1.0.tgz", - "integrity": "sha512-udSGENih/5xKh3Ex+L0PtZcOt0Pa+6ppDLnpG5D49/EhMja3LupaY9E/DtJTxyFBwE09ot7Fc+H4DywnZNWTVA==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.1.1.tgz", + "integrity": "sha512-dH3GmQL4vsPtld59cOn8uY0iOqRmqKvV+DLGwNXV/Q7MDgD2QfOADWd/mFXcIE5LVhYYGjA3baz6W9JneqnuCw==", "dependencies": { "semver": "^7.1.1" }, @@ -6453,9 +6456,9 @@ } }, "node_modules/npm-registry-fetch": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.3.tgz", - "integrity": "sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.4.tgz", + "integrity": "sha512-pMS2DRkwg+M44ct65zrN/Cr9IHK1+n6weuefAo6Er4lc+/8YBCU0Czq04H3ZiSigluh7pb2rMM5JpgcytctB+Q==", "dependencies": { "make-fetch-happen": "^11.0.0", "minipass": "^4.0.0", @@ -6478,9 +6481,9 @@ } }, "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz", - "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.0.tgz", + "integrity": "sha512-7ChuOzCb1LzdQZrTy0ky6RsCoMYeM+Fh4cY0+4zsJVhNcH5Q3OJojLY1mGkD0xAhWB29lskECVb6ZopofwjldA==", "dependencies": { "agentkeepalive": "^4.2.1", "cacache": "^17.0.0", @@ -6503,9 +6506,9 @@ } }, "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz", - "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.2.tgz", + "integrity": "sha512-/ZpF1CQaWYqjbhfFgKNt3azxztEpc/JUPuMkqOgrnMQqcU8CbE409AUdJYTIWryl3PP5CBaTJZT71N49MXP/YA==", "dependencies": { "minipass": "^4.0.0", "minipass-sized": "^1.0.3", @@ -7171,9 +7174,9 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.4.tgz", - "integrity": "sha512-Qp/9IHkdNiXJ3/Kon++At2nVpnhRiPq/aSvQN+H3U1WZbvNRK0RIQK/o4HMqPoXjpuGJUEWpHSs6Mnjxqh3TQg==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.7.0.tgz", + "integrity": "sha512-UkZUeDjczjYRE495+9thsgcVgsaCPkaw80slmfVFgllxY+IO8ubTsOpFVjDPROBqJdHfVPUFRHPBV/WciOVfWg==", "dependencies": { "lru-cache": "^9.0.0", "minipass": "^5.0.0" @@ -7186,9 +7189,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.0.1.tgz", - "integrity": "sha512-C8QsKIN1UIXeOs3iWmiZ1lQY+EnKDojWd37fXy1aSbJvH4iSma1uy2OWuoB3m4SYRli5+CUjDv3Dij5DVoetmg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.0.3.tgz", + "integrity": "sha512-cyjNRew29d4kbgnz1sjDqxg7qg8NW4s+HQzCGjeon7DV5T2yDije16W9HaUFV1dhVEMh+SjrOcK0TomBmf3Egg==", "engines": { "node": "14 || >=16.14" } @@ -8083,11 +8086,11 @@ } }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.3", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.3.tgz", + "integrity": "sha512-P8ur/gp/AmbEzjr729bZnLjXK5Z+4P0zhIJgBgzqRih7hL7BOukHGtSTA3ACMY467GRFz3duQsi0bDZdR7DKdw==", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -8483,9 +8486,9 @@ } }, "node_modules/sigstore/node_modules/make-fetch-happen": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz", - "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.0.tgz", + "integrity": "sha512-7ChuOzCb1LzdQZrTy0ky6RsCoMYeM+Fh4cY0+4zsJVhNcH5Q3OJojLY1mGkD0xAhWB29lskECVb6ZopofwjldA==", "dependencies": { "agentkeepalive": "^4.2.1", "cacache": "^17.0.0", @@ -8508,9 +8511,9 @@ } }, "node_modules/sigstore/node_modules/minipass-fetch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz", - "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.2.tgz", + "integrity": "sha512-/ZpF1CQaWYqjbhfFgKNt3azxztEpc/JUPuMkqOgrnMQqcU8CbE409AUdJYTIWryl3PP5CBaTJZT71N49MXP/YA==", "dependencies": { "minipass": "^4.0.0", "minipass-sized": "^1.0.3", @@ -9377,9 +9380,9 @@ } }, "node_modules/tuf-js/node_modules/make-fetch-happen": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz", - "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.0.tgz", + "integrity": "sha512-7ChuOzCb1LzdQZrTy0ky6RsCoMYeM+Fh4cY0+4zsJVhNcH5Q3OJojLY1mGkD0xAhWB29lskECVb6ZopofwjldA==", "dependencies": { "agentkeepalive": "^4.2.1", "cacache": "^17.0.0", @@ -9402,9 +9405,9 @@ } }, "node_modules/tuf-js/node_modules/minipass-fetch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz", - "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.2.tgz", + "integrity": "sha512-/ZpF1CQaWYqjbhfFgKNt3azxztEpc/JUPuMkqOgrnMQqcU8CbE409AUdJYTIWryl3PP5CBaTJZT71N49MXP/YA==", "dependencies": { "minipass": "^4.0.0", "minipass-sized": "^1.0.3", @@ -9513,9 +9516,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", "dev": true, "funding": [ { @@ -9525,6 +9528,10 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { @@ -9532,7 +9539,7 @@ "picocolors": "^1.0.0" }, "bin": { - "browserslist-lint": "cli.js" + "update-browserslist-db": "cli.js" }, "peerDependencies": { "browserslist": ">= 4.21.0" diff --git a/packages/project/package.json b/packages/project/package.json index 81d2d989113..3b9b0998247 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -132,7 +132,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", - "resolve": "^1.22.2", + "resolve": "^1.22.3", "rimraf": "^4.4.1", "semver": "^7.4.0", "xml2js": "^0.5.0" From 4b09e50eaf935772f93e0321118edbc0cac6ecbc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 16 Apr 2023 10:56:27 +0000 Subject: [PATCH 0892/1272] [ui5-project][INTERNAL] Bump eslint-plugin-jsdoc from 40.3.0 to 41.1.1 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 40.3.0 to 41.1.1. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Changelog](https://github.com/gajus/eslint-plugin-jsdoc/blob/main/.releaserc) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v40.3.0...v41.1.1) --- updated-dependencies: - dependency-name: eslint-plugin-jsdoc dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 18 ++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 418e6cc7ac6..ef455e78d8c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,7 +40,7 @@ "eslint": "^8.38.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.3.0", + "eslint-plugin-jsdoc": "^41.1.1", "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -1413,6 +1413,15 @@ "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", "dev": true }, + "node_modules/are-docs-informative": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", + "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", + "dev": true, + "engines": { + "node": ">=14" + } + }, "node_modules/are-we-there-yet": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", @@ -3333,12 +3342,13 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "40.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-40.3.0.tgz", - "integrity": "sha512-EhCqpzRkxoT2DUB4AnrU0ggBYvTh3bWrLZzQTupq6vSVE6XzNwJVKsOHa41GCoevnsWMBNmoDVjXWGqckjuG1g==", + "version": "41.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-41.1.1.tgz", + "integrity": "sha512-dfH97DKLGtQ5dgEMzd+GSUuY+xX/yyAfjML3O0pEWmMMpylsG6Ro65s4ziYXKmixiENYK9CTQxCVRGqZUFN2Mw==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.37.0", + "are-docs-informative": "^0.0.2", "comment-parser": "1.3.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 3b9b0998247..38c08cf3dbb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -147,7 +147,7 @@ "eslint": "^8.38.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^40.3.0", + "eslint-plugin-jsdoc": "^41.1.1", "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From e865e0f00a4bf3fd4156c8c550b875a09b4d7d28 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Apr 2023 05:56:51 +0000 Subject: [PATCH 0893/1272] [ui5-project]Bump coverallsapp/github-action from 2.0.0 to 2.1.0 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.0.0 to 2.1.0. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v2.0.0...v2.1.0) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index be0b0179952..eb6a87b1a35 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v2.0.0 + uses: coverallsapp/github-action@v2.1.0 From 8928d31a015a695fca8596cb8463daf3fe599663 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Mon, 17 Apr 2023 15:35:07 +0300 Subject: [PATCH 0894/1272] [ui5-project][FEATURE] Enable snapshot consumption from Maven repository (#570) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Florian Vogt Co-authored-by: Günter Klatt <57760635+KlattG@users.noreply.github.com> Co-authored-by: Merlin Beutlberger Co-authored-by: Matthias Osswald JIRA: CPOUI5FOUNDATION-581 --- .../project/lib/graph/helpers/ui5Framework.js | 14 +- .../lib/ui5Framework/AbstractInstaller.js | 63 ++ .../lib/ui5Framework/AbstractResolver.js | 40 +- .../lib/ui5Framework/Openui5Resolver.js | 8 +- .../Sapui5MavenSnapshotResolver.js | 241 ++++++++ .../lib/ui5Framework/Sapui5Resolver.js | 8 +- .../lib/ui5Framework/maven/Installer.js | 509 ++++++++++++++++ .../lib/ui5Framework/maven/Registry.js | 109 ++++ .../project/lib/ui5Framework/npm/Installer.js | 69 +-- .../project/lib/ui5Framework/npm/Registry.js | 12 + packages/project/lib/utils/fs.js | 7 + packages/project/package-lock.json | 560 +++++++++--------- packages/project/package.json | 6 +- packages/project/test/lib/graph/graph.js | 2 +- .../graph/helpers/ui5Framework.integration.js | 33 +- .../test/lib/graph/helpers/ui5Framework.js | 106 +++- packages/project/test/lib/package-exports.js | 3 +- .../lib/ui5framework/AbstractInstaller.js | 11 + .../test/lib/ui5framework/AbstractResolver.js | 101 +++- .../Sapui5MavenSnapshotResolver.js | 375 ++++++++++++ .../test/lib/ui5framework/maven/Installer.js | 549 +++++++++++++++++ .../test/lib/ui5framework/maven/Registry.js | 236 ++++++++ .../test/lib/ui5framework/npm/Installer.js | 166 +++--- 23 files changed, 2786 insertions(+), 442 deletions(-) create mode 100644 packages/project/lib/ui5Framework/AbstractInstaller.js create mode 100644 packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js create mode 100644 packages/project/lib/ui5Framework/maven/Installer.js create mode 100644 packages/project/lib/ui5Framework/maven/Registry.js create mode 100644 packages/project/lib/utils/fs.js create mode 100644 packages/project/test/lib/ui5framework/AbstractInstaller.js create mode 100644 packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js create mode 100644 packages/project/test/lib/ui5framework/maven/Installer.js create mode 100644 packages/project/test/lib/ui5framework/maven/Registry.js diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 6df9258b0aa..047764859ac 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -282,6 +282,8 @@ export default { * version * @param {@ui5/project/graph/Workspace} [options.workspace] * Optional workspace instance to use for overriding node resolutions + * @param {object} [options.resolverConfig] + * Optional configuration object to use for the resolvers * @returns {Promise<@ui5/project/graph/ProjectGraph>} * Promise resolving with the given graph instance to allow method chaining */ @@ -327,7 +329,9 @@ export default { } let Resolver; - if (frameworkName === "OpenUI5") { + if (version && version.endsWith("-SNAPSHOT")) { + Resolver = (await import("../../ui5Framework/Sapui5MavenSnapshotResolver.js")).default; + } else if (frameworkName === "OpenUI5") { Resolver = (await import("../../ui5Framework/Openui5Resolver.js")).default; } else if (frameworkName === "SAPUI5") { Resolver = (await import("../../ui5Framework/Sapui5Resolver.js")).default; @@ -340,7 +344,6 @@ export default { `${frameworkVersion} with version ${version}` ); } - const referencedLibraries = await utils.getFrameworkLibrariesFromGraph(projectGraph); if (!referencedLibraries.length) { log.verbose( @@ -362,7 +365,12 @@ export default { // Note: version might be undefined here and the Resolver will throw an error when calling // #install and it can't be resolved via the provided library metadata - const resolver = new Resolver({cwd: rootProject.getRootPath(), version, providedLibraryMetadata}); + const resolver = new Resolver({ + cwd: rootProject.getRootPath(), + version, + providedLibraryMetadata, + ...options.resolverConfig, + }); let startTime; if (log.isLevelEnabled("verbose")) { diff --git a/packages/project/lib/ui5Framework/AbstractInstaller.js b/packages/project/lib/ui5Framework/AbstractInstaller.js new file mode 100644 index 00000000000..7201f72944f --- /dev/null +++ b/packages/project/lib/ui5Framework/AbstractInstaller.js @@ -0,0 +1,63 @@ +import path from "node:path"; +import {mkdirp} from "../utils/fs.js"; +import {promisify} from "node:util"; +import {getLogger} from "@ui5/logger"; +const log = getLogger("ui5Framework:Installer"); + +// File name must not start with one or multiple dots and should not contain characters other than: +// * alphanumeric +// * Slash (typically present in package names, hence is accepted and then replaced with a dash) +// * Dot, dash, underscore, at-sign +const illegalFileNameRegExp = /[^0-9a-zA-Z\-._@/]/; + +class AbstractInstaller { + /** + * @param {string} ui5HomeDir UI5 home directory location. This will be used to store packages, + * metadata and configuration used by the resolvers. + */ + constructor(ui5HomeDir) { + if (new.target === AbstractInstaller) { + throw new TypeError("Class 'AbstractInstaller' is abstract"); + } + if (!ui5HomeDir) { + throw new Error(`Installer: Missing parameter "ui5HomeDir"`); + } + this._lockDir = path.join(ui5HomeDir, "framework", "locks"); + } + + async _synchronize(lockName, callback) { + const { + default: lockfile + } = await import("lockfile"); + const lock = promisify(lockfile.lock); + const unlock = promisify(lockfile.unlock); + const lockPath = this._getLockPath(lockName); + await mkdirp(this._lockDir); + log.verbose("Locking " + lockPath); + await lock(lockPath, { + wait: 10000, + stale: 60000, + retries: 10 + }); + try { + const res = await callback(); + return res; + } finally { + log.verbose("Unlocking " + lockPath); + await unlock(lockPath); + } + } + + _sanitizeFileName(fileName) { + if (fileName.startsWith(".") || illegalFileNameRegExp.test(fileName)) { + throw new Error(`Illegal file name: ${fileName}`); + } + return fileName.replace(/\//g, "-"); + } + + _getLockPath(lockName) { + return path.join(this._lockDir, `${this._sanitizeFileName(lockName)}.lock`); + } +} + +export default AbstractInstaller; diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 09b281e3568..fd65ed26d9c 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -15,7 +15,7 @@ const SEMVER_VERSION_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?: // Reduced Semantic Versioning pattern // Matches MAJOR.MINOR as a simple version range to be resolved to the latest patch -const VERSION_RANGE_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)$/; +const VERSION_RANGE_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-SNAPSHOT)?$/; /** * Abstract Resolver @@ -32,7 +32,9 @@ class AbstractResolver { * @param {*} options options * @param {string} [options.version] Framework version to use. When omitted, all libraries need to be available * via providedLibraryMetadata parameter. Otherwise an error is thrown. - * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc + * @param {boolean} [options.sources=false] Whether to install framework libraries as sources or + * pre-built (with build manifest) + * @param {string} [options.cwd=process.cwd()] Current working directory * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. Relative to `process.cwd()` * @param {object.} [options.providedLibraryMetadata] @@ -41,7 +43,7 @@ class AbstractResolver { * Otherwise an error is thrown. */ /* eslint-enable max-len */ - constructor({cwd, version, ui5HomeDir, providedLibraryMetadata}) { + constructor({cwd, version, sources, ui5HomeDir, providedLibraryMetadata}) { if (new.target === AbstractResolver) { throw new TypeError("Class 'AbstractResolver' is abstract"); } @@ -53,6 +55,7 @@ class AbstractResolver { ); this._cwd = cwd ? path.resolve(cwd) : process.cwd(); this._version = version; + this._sources = !!sources; this._providedLibraryMetadata = providedLibraryMetadata; } @@ -107,10 +110,15 @@ class AbstractResolver { } async _processLibraries(libraryNames, libraryMetadata, errors) { + const sourceErrors = new Set(); const results = await Promise.all(libraryNames.map(async (libraryName) => { try { await this._processLibrary(libraryName, libraryMetadata, errors); } catch (err) { + if (sourceErrors.has(err.message)) { + return `Failed to resolve library ${libraryName}: Error already logged`; + } + sourceErrors.add(err.message); log.verbose(`Failed to process library ${libraryName}`); log.verbose(`Error: ${err.message}`); log.verbose(`Call stack: ${err.stack}`); @@ -188,8 +196,11 @@ class AbstractResolver { await this._processLibraries(libraryNames, libraryMetadata, errors); - if (errors.length > 0) { - throw new Error("Resolution of framework libraries failed with errors:\n" + errors.join("\n")); + if (errors.length === 1) { + throw new Error(errors[0]); + } if (errors.length > 1) { + const msg = errors.map((err, idx) => ` ${idx + 1}. ${err}`).join("\n"); + throw new Error(`Resolution of framework libraries failed with errors:\n${msg}`); } return { @@ -199,15 +210,28 @@ class AbstractResolver { static async resolveVersion(version, {ui5HomeDir, cwd} = {}) { let spec; - if (version === "latest") { + const isSnapshotVersion = version.toLowerCase().endsWith("-snapshot"); + if (version === "latest" || version === "latest-snapshot") { + // Use a wildcard to resolve to the latest available version spec = "*"; - } else if (VERSION_RANGE_REGEXP.test(version) || SEMVER_VERSION_REGEXP.test(version)) { + } else if (SEMVER_VERSION_REGEXP.test(version)) { + // Fully qualified version, can be used directly spec = version; + } else if (VERSION_RANGE_REGEXP.test(version)) { + if (isSnapshotVersion) { + // For snapshot version ranges we need to insert a stand-in "x" for the patch level + // in order to make the semver check work: "1.112-SNAPSHOT" becomes "1.112.x-SNAPSHOT" + spec = version.replace(/-SNAPSHOT$/, ".x-SNAPSHOT"); + } else { + spec = version; + } } else { throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); } const versions = await this.fetchAllVersions({ui5HomeDir, cwd}); - const resolvedVersion = semver.maxSatisfying(versions, spec); + const resolvedVersion = semver.maxSatisfying(versions, spec, { + includePrerelease: isSnapshotVersion + }); if (!resolvedVersion) { if (semver.valid(spec)) { if (this.name === "Sapui5Resolver" && semver.lt(spec, "1.76.0")) { diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js index 14e02affa1d..55a8115def7 100644 --- a/packages/project/lib/ui5Framework/Openui5Resolver.js +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -20,13 +20,19 @@ class Openui5Resolver extends AbstractResolver { * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. Relative to `process.cwd()` + * @param {string} [options.cacheDir] Where to store temp/cached packages. + * @param {string} [options.packagesDir] Where to install packages + * @param {string} [options.stagingDir] The staging directory for the packages */ constructor(options) { super(options); + const {cacheDir, packagesDir, stagingDir} = options; + this._installer = new Installer({ cwd: this._cwd, - ui5HomeDir: this._ui5HomeDir + ui5HomeDir: this._ui5HomeDir, + cacheDir, packagesDir, stagingDir }); this._loadLibraryMetadata = Object.create(null); } diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js new file mode 100644 index 00000000000..0d22e23c42f --- /dev/null +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -0,0 +1,241 @@ +import path from "node:path"; +import os from "node:os"; +import AbstractResolver from "./AbstractResolver.js"; +import Installer from "./maven/Installer.js"; +import {getLogger} from "@ui5/logger"; +const log = getLogger("ui5Framework:Sapui5MavenSnapshotResolver"); + +const DIST_PKG_NAME = "@sapui5/distribution-metadata"; +const DIST_GROUP_ID = "com.sap.ui5.dist"; +const DIST_ARTIFACT_ID = "sapui5-sdk-dist"; + +/** + * Resolver for the SAPUI5 framework + * + * This Resolver downloads and installs SNAPSHOTS of UI5 libraries from + * a Maven repository. It's meant for internal usage only as no use cases + * outside of SAP are known. + * + * @public + * @class + * @alias @ui5/project/ui5Framework/Sapui5MavenSnapshotResolver + * @extends @ui5/project/ui5Framework/AbstractResolver + */ +class Sapui5MavenSnapshotResolver extends AbstractResolver { + /** + * @param {*} options options + * @param {string} [options.snapshotEndpointUrl] Maven Repository Snapshot URL. If not provided, + * falls back to an optional UI5_MAVEN_SNAPSHOT_ENDPOINT environment variable, + * or the standard Maven settings.xml file (if existing). + * @param {string} options.version SAPUI5 version to use + * @param {boolean} [options.sources=false] Whether to install framework libraries as sources or + * pre-built (with build manifest) + * @param {string} [options.cwd=process.cwd()] Current working directory + * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, + * metadata and configuration used by the resolvers. Relative to `process.cwd()` + * @param {string} [options.cacheMode="default"] Can be "default" (cache everything, invalidate after 9 hours), + * "off" (do not cache) and "force" (use cache only - no requests) + * @param {string} [options.artifactsDir] Where to install Maven artifacts + * @param {string} [options.packagesDir] Where to install packages + * @param {string} [options.metadataDir] Where to store the metadata for Maven artifacts + * @param {string} [options.stagingDir] The staging directory for artifacts and packages + */ + constructor(options) { + super(options); + + const { + cacheMode, + artifactsDir, + packagesDir, + metadataDir, + stagingDir, + } = options; + + this._installer = new Installer({ + ui5HomeDir: this._ui5HomeDir, + snapshotEndpointUrlCb: + Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback(options.snapshotEndpointUrl), + cacheMode, + artifactsDir, + packagesDir, + metadataDir, + stagingDir, + }); + this._loadDistMetadata = null; + } + loadDistMetadata() { + if (!this._loadDistMetadata) { + this._loadDistMetadata = Promise.resolve().then(async () => { + const version = this._version; + log.verbose( + `Installing ${DIST_ARTIFACT_ID} in version ${version}...` + ); + + const {pkgPath: distPkgPath} = await this._installer.installPackage({ + pkgName: DIST_PKG_NAME, + groupId: DIST_GROUP_ID, + artifactId: DIST_ARTIFACT_ID, + version, + classifier: "npm-sources", + extension: "zip", + }); + + return await this._installer.readJson( + path.join(distPkgPath, "metadata.json") + ); + }); + } + return this._loadDistMetadata; + } + async getLibraryMetadata(libraryName) { + const distMetadata = await this.loadDistMetadata(); + const metadata = distMetadata.libraries[libraryName]; + + if (!metadata) { + throw new Error(`Could not find library "${libraryName}"`); + } + + return metadata; + } + async handleLibrary(libraryName) { + const metadata = await this.getLibraryMetadata(libraryName); + if (!metadata.gav) { + throw new Error( + "Metadata is missing GAV (group, artifact and version) " + + "information. This might indicate an unsupported SNAPSHOT version." + ); + } + const gav = metadata.gav.split(":"); + let pkgName = metadata.npmPackageName; + if (!this._sources) { + pkgName += "-prebuilt"; + } + + return { + metadata: Promise.resolve({ + id: pkgName, + version: metadata.version, + dependencies: metadata.dependencies, + optionalDependencies: metadata.optionalDependencies, + }), + // Trigger installation of package + install: this._installer.installPackage({ + pkgName, + groupId: gav[0], + artifactId: gav[1], + version: metadata.version, + classifier: this._sources ? "npm-sources" : null, + extension: this._sources ? "zip" : "jar", + }), + }; + } + + static async fetchAllVersions({ui5HomeDir, cwd, snapshotEndpointUrl} = {}) { + const installer = new Installer({ + cwd: cwd ? path.resolve(cwd) : process.cwd(), + ui5HomeDir: path.resolve( + ui5HomeDir || path.join(os.homedir(), ".ui5") + ), + snapshotEndpointUrlCb: Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback(snapshotEndpointUrl), + }); + return await installer.fetchPackageVersions({ + groupId: DIST_GROUP_ID, + artifactId: DIST_ARTIFACT_ID, + }); + } + + static _createSnapshotEndpointUrlCallback(snapshotEndpointUrl) { + snapshotEndpointUrl = snapshotEndpointUrl || process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT; + + if (!snapshotEndpointUrl) { + // If we resolve the settings.xml at this point, we'd need to always ask the end + // user for confirmation. In some cases where the resources are already cached, + // this is not necessary and we could skip it as a real request to the repository won't + // be made. + return Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrlFromMaven; + } else { + return () => Promise.resolve(snapshotEndpointUrl); + } + } + + /** + * Tries to detect whether ~/.m2/settings.xml exist, and if so, whether + * the snapshot.build URL is extracted from there + * + * @param {string} [settingsXML=~/.m2/settings.xml] Path to the settings.xml. + * If not provided, the default location is used + * @returns {Promise} The resolved snapshot.build URL from ~/.m2/settings.xml + */ + static async _resolveSnapshotEndpointUrlFromMaven(settingsXML) { + if (!process.stdout.isTTY) { + // We can't prompt the user if stdout is non-interactive (i.e. in CI environments) + // Therefore skip resolution from Maven settings.xml altogether + return null; + } + + let skipConfirmation = false; + settingsXML = + settingsXML || path.resolve(path.join(os.homedir(), ".m2", "settings.xml")); + + const {default: fs} = await import("graceful-fs"); + const {promisify} = await import("node:util"); + const readFile = promisify(fs.readFile); + const xml2js = await import("xml2js"); + const parser = new xml2js.Parser({ + preserveChildrenOrder: true, + xmlns: true, + }); + let url; + + log.verbose(`Attempting to resolve snapshot endpoint URL from Maven configuration file at ${settingsXML}...`); + try { + const fileContent = await readFile(settingsXML); + const xmlContents = await parser.parseStringPromise(fileContent); + + const snapshotBuildChunk = xmlContents?.settings?.profiles[0]?.profile.filter( + (prof) => prof.id[0]._ === "snapshot.build" + )[0]; + + url = + snapshotBuildChunk?.repositories?.[0]?.repository?.[0]?.url?.[0]?._ || + snapshotBuildChunk?.pluginRepositories?.[0]?.pluginRepository?.[0]?.url?.[0]?._; + + if (!url) { + skipConfirmation = true; + log.verbose(`"snapshot.build" attribute could not be found in ${settingsXML}`); + } + } catch (err) { + skipConfirmation = true; + if (err.code === "ENOENT") { + // "File or directory does not exist" + log.verbose(`File does not exist: ${settingsXML}`); + } else { + log.warning(`Failed to read Maven configuration file from ${settingsXML}: ${err.message}`); + } + } + + if (!skipConfirmation) { + const {default: yesno} = await import("yesno"); + const ok = await yesno({ + question: + "A Maven snapshot endpoint URL is required for consuming snapshot versions of UI5 libraries. " + + `The following URL has been found in a Maven configuration file at ${settingsXML}: '${url}'. ` + + `Continue with this endpoint URL? (yes)`, + defaultValue: true, + }); + + if (ok) { + log.info(`Using Maven snapshot endpoint URL resolved from Maven configuration file: ${url}`); + log.info(`Consider persisting this choice by executing the following command: ` + + `ui5 config set snapshotEndpointUrl ${url}`); + } else { + log.verbose(`User rejected usage of the resolved URL`); + url = null; + } + } + + return url; + } +} + +export default Sapui5MavenSnapshotResolver; diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index 6f4299bfc95..c539c26480b 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -23,13 +23,19 @@ class Sapui5Resolver extends AbstractResolver { * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. Relative to `process.cwd()` + * @param {string} [options.cacheDir] Where to store temp/cached packages. + * @param {string} [options.packagesDir] Where to install packages + * @param {string} [options.stagingDir] The staging directory for packages */ constructor(options) { super(options); + const {cacheDir, packagesDir, stagingDir} = options; + this._installer = new Installer({ cwd: this._cwd, - ui5HomeDir: this._ui5HomeDir + ui5HomeDir: this._ui5HomeDir, + cacheDir, packagesDir, stagingDir }); this._loadDistMetadata = null; } diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js new file mode 100644 index 00000000000..5fc5e3fded8 --- /dev/null +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -0,0 +1,509 @@ +import path from "node:path"; +import {mkdirp} from "../../utils/fs.js"; +import fs from "graceful-fs"; +import _StreamZip from "node-stream-zip"; +const StreamZip = _StreamZip.async; +import {promisify} from "node:util"; +import Registry from "./Registry.js"; +import AbstractInstaller from "../AbstractInstaller.js"; +import rimraf from "rimraf"; +const stat = promisify(fs.stat); +const readFile = promisify(fs.readFile); +const writeFile = promisify(fs.writeFile); +const rename = promisify(fs.rename); +const rm = promisify(fs.rm); +import {getLogger} from "@ui5/logger"; +const log = getLogger("ui5Framework:maven:Installer"); +const mvnTimestampRegex = /^(\d{4})(\d\d)(\d\d)(\d\d)(\d\d)(\d\d)$/; + +const CACHE_TIME = 32400000; // 9 hours + +class Installer extends AbstractInstaller { + /** + * @param {object} parameters Parameters + * @param {string} parameters.ui5HomeDir UI5 home directory location. This will be used to store packages, + * metadata and configuration used by the resolvers. + * @param {Function} parameters.snapshotEndpointUrlCb Callback that returns a Promise , + * resolving to the Maven repository URL. + * Example: https://registry.corp/vendor/build-snapshots/ + * @param {string} [parameters.cacheMode="default"] Can be "default" (cache everything, invalidate after 9 hours), + * "off" (do not cache), "force" (use cache only - no requests) + * @param {string} [parameters.artifactsDir="${ui5HomeDir}/framework/artifacts"] Where to install Maven artifacts + * @param {string} [parameters.packagesDir="${ui5HomeDir}/framework/packages"] Where to install packages + * @param {string} [parameters.metadataDir="${ui5HomeDir}/framework/metadata"] Where to store the + * metadata for Maven artifacts + * @param {string} [parameters.stagingDir="${ui5HomeDir}/framework/staging"] The staging directory for + * artifacts and packages + */ + constructor({ui5HomeDir, snapshotEndpointUrlCb, cacheMode = "default", artifactsDir, + packagesDir, metadataDir, stagingDir}) { + super(ui5HomeDir); + + this._artifactsDir = artifactsDir ? + path.resolve(artifactsDir) : path.join(ui5HomeDir, "framework", "artifacts"); + this._packagesDir = packagesDir ? + path.resolve(packagesDir) : path.join(ui5HomeDir, "framework", "packages"); + this._metadataDir = metadataDir ? + path.resolve(metadataDir) : path.join(ui5HomeDir, "framework", "metadata"); + this._stagingDir = stagingDir ? + path.resolve(stagingDir) : path.join(ui5HomeDir, "framework", "staging"); + + this._cacheMode = cacheMode; + this._snapshotEndpointUrlCb = snapshotEndpointUrlCb; + + if (!this._snapshotEndpointUrlCb) { + throw new Error(`Installer: Missing Snapshot-Endpoint URL callback parameter`); + } + + log.verbose(`Installing Maven artifacts to: ${this._artifactsDir}`); + log.verbose(`Installing Packages to: ${this._packagesDir}`); + log.verbose(`Caching mode: ${this._cacheMode}`); + } + + async getRegistry() { + if (this._cachedRegistry) { + return this._cachedRegistry; + } + return (this._cachedRegistry = new Promise((resolve, reject) => { + this._snapshotEndpointUrlCb().then((snapshotEndpointUrl) => { + if (!snapshotEndpointUrl) { + reject(new Error( + `Installer: Missing or empty Maven repository URL for snapshot consumption. ` + + `Please configure the correct URL using the following command: ` + + `ui5 config set snapshotEndpointUrl https://registry.corp/vendor/build-snapshots/`)); + } + + resolve(new Registry({endpointUrl: snapshotEndpointUrl})); + }); + })); + } + + async readJson(jsonPath) { + return JSON.parse(await readFile(jsonPath, {encoding: "utf8"})); + } + + async _writeJson(jsonPath, jsonObject) { + return writeFile(jsonPath, JSON.stringify(jsonObject)); + } + + async fetchPackageVersions({groupId, artifactId}) { + const reg = await this.getRegistry(); + const metadata = await reg.requestMavenMetadata({groupId, artifactId}); + + if (!metadata?.versioning?.versions?.version) { + throw new Error(`Missing Maven metadata for artifact ${groupId}:${artifactId}`); + } + return metadata.versioning.versions.version.filter((version) => { + // This resolver can only handle SNAPSHOT versions + return version.endsWith("-SNAPSHOT"); + }); + } + + /** + * Fills and maintains locally cached metadata for the given artifact coordinates + * + * @param {object} coordinates + * @param {string} coordinates.groupId GroupId of the requested artifact + * @param {string} coordinates.artifactId ArtifactId of the requested artifact + * @param {string} coordinates.version Version of the requested artifact + * @param {string} coordinates.classifier Classifier of the requested artifact + * @param {string} coordinates.extension Extension of the requested artifact + * @param {string} [coordinates.pkgName] npm package name the artifact corresponds to (if any) + * @returns {@ui5/project/ui5Framework/maven/Installer~LocalMetadata} + * + */ + async _fetchArtifactMetadata(coordinates) { + const fsId = this._generateFsIdFromCoordinates(coordinates); + const logId = this._generateLogIdFromCoordinates(coordinates); + return this._synchronize("metadata-" + fsId, async () => { + const localMetadata = await this._getLocalArtifactMetadata(fsId); + + if (this._cacheMode === "force" && !localMetadata.revision) { + throw new Error(`Could not find artifact ` + + `${logId} in local cache`); + } + + const now = new Date().getTime(); + const timeSinceLastCheck = now - localMetadata.lastCheck; + + if (this._cacheMode !== "force" && + (timeSinceLastCheck > CACHE_TIME || this._cacheMode === "off")) { + // No cached metadata (-> timeSinceLastCheck equals time since 1970) or + // too old metadata or disabled cache + // => Retrieve metadata from repository + if (localMetadata.lastCheck === 0) { + log.verbose( + `Could not find metadata for artifact ${logId} in local cache. Fetching from repository...`); + } else { + log.verbose( + `Refreshing metadata cache for artifact ${logId} ` + + // TODO better formatting of elapsed time + `(last checked ${timeSinceLastCheck/1000} seconds ago)`); + } + + log.info( + `Fetching latest metadata for artifact ${coordinates.artifactId} version ${coordinates.version} ` + + `from Maven registry...`); + const {lastUpdate, revision} = await this._getRemoteArtifactMetadata(coordinates); + + // TODO better formatting of elapsed time + log.verbose(`Retrieved metadata for artifact ${logId} is ` + + `${(lastUpdate - localMetadata.lastUpdate) / 1000} seconds younger than local metadata`); + log.verbose(`Retrieved deployment version is ${revision}`); + + this._rotateRevision(localMetadata, revision); + + await this._removeStaleRevisions(logId, localMetadata, coordinates); + + localMetadata.lastCheck = now; + localMetadata.lastUpdate = lastUpdate; + await this._writeLocalArtifactMetadata(fsId, localMetadata); + } else { + log.verbose(`Using metadata for artifact ${logId} from local cache`); + } + return localMetadata; + }); + } + + async _getRemoteArtifactMetadata({groupId, artifactId, version, classifier, extension}) { + const reg = await this.getRegistry(); + const metadata = await reg.requestMavenMetadata({groupId, artifactId, version}); + + if (!metadata?.versioning?.snapshotVersions?.snapshotVersion) { + throw new Error(`Missing Maven snapshot metadata for artifact ${groupId}:${artifactId}:${version}`); + } + + const snapshotVersion = metadata.versioning.snapshotVersions.snapshotVersion; + const deploymentMetadata = snapshotVersion.find(({ + classifier: candidateClassifier, // Classifier can be null, e.g. for the default "jar" artifact + extension: candidateExtension + }) => (!classifier || candidateClassifier === classifier) && candidateExtension === extension); + + if (!deploymentMetadata) { + throw new Error( + `Could not find deployment ${classifier}.${extension} for artifact ` + + `${groupId}:${artifactId}:${version} in snapshot metadata:\n` + + `${JSON.stringify(snapshotVersion)}`); + } + // Convert Maven timestamp (yyyyMMddHHmmss UTC) to ISO string (YYYY-MM-DDTHH:mm:ss.sssZ) + // E.g. 20220828080910 becomes 2022-08-28T08:09:10.000Z + const isoTimestamp = deploymentMetadata.updated.replace(mvnTimestampRegex, "$1-$2-$3T$4:$5:$6.000Z"); + const ts = new Date(isoTimestamp); + + const logId = this._generateLogIdFromCoordinates({groupId, artifactId, version, classifier, extension}); + log.verbose(`Retrieved metadata for ${logId}:` + + `\n Last update was at: ${ts.toISOString()}` + + `\n Current deployment version is: ${deploymentMetadata.value}`); + return { + lastUpdate: ts.getTime(), + revision: deploymentMetadata.value + }; + } + + async _getLocalArtifactMetadata(id) { + try { + return await this.readJson(path.join(this._metadataDir, `${id}.json`)); + } catch (err) { + if (err.code === "ENOENT") { // "File or directory does not exist" + // If not found, initialize metadata + return { + lastCheck: 0, + lastUpdate: 0, + revision: null, + staleRevisions: [] + }; + } else { + throw err; + } + } + } + + async _writeLocalArtifactMetadata(id, content) { + await mkdirp(this._metadataDir); + return await this._writeJson(path.join(this._metadataDir, `${id}.json`), content); + } + + _rotateRevision(metadata, newRevision) { + if (metadata.revision) { + metadata.staleRevisions.push(metadata.revision); + } + metadata.revision = newRevision; + } + + async _removeStaleRevisions(logId, metadata, {pkgName, groupId, artifactId, classifier, extension}) { + if (metadata.staleRevisions.length <= 1) { + // Keep at least one revision. Nothing to do + return; + } + log.verbose(`Removing ${metadata.staleRevisions.length - 1} stale revision for ${logId}`); + while (metadata.staleRevisions.length > 3) { + const revision = metadata.staleRevisions.shift(); + const artifactPath = this._getTargetPathForArtifact({ + groupId, + artifactId, + revision, + classifier, + extension + }); + log.verbose(`Removing ${artifactPath}...`); + await rm(artifactPath, { + force: true + }); + + if (pkgName) { + const packageDir = this._getTargetDirForPackage(pkgName, revision); + log.verbose(`Removing directory ${packageDir}...`); + await rimraf(packageDir); + } + } + } + + /** + * @typedef {object} @ui5/project/ui5Framework/maven/Installer~InstalledPackage + * @property {string} pkgPath + */ + + /** + * Downloads the respective artifact and extracts the zip archive into a structure similar to + * the npm installer + * + * @param {object} parameters + * @param {string} parameters.pkgName Name of the npm package + * @param {string} parameters.groupId GroupId of the requested artifact + * @param {string} parameters.artifactId ArtifactId of the requested artifact + * @param {string} parameters.version Version of the requested artifact + * @param {string} parameters.classifier Classifier of the requested artifact + * @param {string} parameters.extension Extension of the requested artifact + * @returns {@ui5/project/ui5Framework/maven/Installer~InstalledPackage} + * + */ + async installPackage({pkgName, groupId, artifactId, version, classifier, extension}) { + const {revision} = await this._fetchArtifactMetadata({ + pkgName, groupId, artifactId, version, classifier, extension + }); + + const coordinates = { + groupId, artifactId, + version, revision, + classifier, extension + }; + + const targetDir = this._getTargetDirForPackage(pkgName, revision); + const installed = await this._projectExists(targetDir); + + if (!installed) { + await this._synchronize(`package-${pkgName}@${revision}`, async () => { + const installed = await this._projectExists(targetDir); + + if (installed) { + log.verbose(`Already installed: ${pkgName} in SNAPSHOT version ${revision}`); + return; + } + + const stagingDir = this._getStagingDirForPackage(pkgName, revision); + + // Check whether staging dir already exists and remove it + if (await this._pathExists(stagingDir)) { + log.verbose(`Removing stale staging directory at ${stagingDir}...`); + await rimraf(stagingDir); + } + + await mkdirp(stagingDir); + + const {artifactPath, removeArtifact} = await this.installArtifact(coordinates); + + log.verbose(`Extracting archive at ${artifactPath} to ${stagingDir}...`); + const zip = new StreamZip({file: artifactPath}); + let rootDir = null; + if (extension === "jar") { + rootDir = "META-INF"; + } + await zip.extract(rootDir, stagingDir); + await zip.close(); + + // Check whether target dir already exists and remove it + if (await this._pathExists(targetDir)) { + log.verbose(`Removing existing target directory at ${targetDir}...`); + await rimraf(targetDir); + } + + // Do not create target dir itself to prevent EPERM error in following rename operation + // (https://github.com/SAP/ui5-tooling/issues/487) + await mkdirp(path.dirname(targetDir)); + log.verbose(`Promoting staging directory from ${stagingDir} to ${targetDir}...`); + await rename(stagingDir, targetDir); + + await removeArtifact(); + }); + } else { + log.verbose(`Already installed: ${pkgName} in SNAPSHOT version ${revision}`); + } + return { + pkgPath: targetDir + }; + } + + /** + * @typedef {object} @ui5/project/ui5Framework/maven/Installer~InstalledArtifact + * @property {string} artifactPath + * @property {Function} removeArtifact Callback to trigger removal of the artifact file in case it + * is no longer required. + */ + + /** + * @param {object} parameters + * @param {string} parameters.groupId GroupId of the requested artifact + * @param {string} parameters.artifactId ArtifactId of the requested artifact + * @param {string} parameters.version Version of the requested artifact + * @param {string} parameters.classifier Classifier of the requested artifact + * @param {string} parameters.extension Extension of the requested artifact + * @param {string} [parameters.revision] Optional revision of the artifact to request. + * If not provided, the latest revision will be determined from the registry metadata. + * @returns {@ui5/project/ui5Framework/maven/Installer~InstalledArtifact} + * + */ + async installArtifact({groupId, artifactId, version, classifier, extension, revision}) { + if (!revision) { + const metadata = await this._fetchArtifactMetadata({ + groupId, artifactId, version, classifier, extension + }); + revision = metadata.revision; + } + const coordinates = { + groupId, artifactId, + version, revision, + classifier, extension + }; + + const targetPath = this._getTargetPathForArtifact(coordinates); + const installed = await this._pathExists(targetPath); + const logId = this._generateLogIdFromCoordinates(coordinates); + const fsId = this._generateFsIdFromCoordinates(coordinates); + if (!installed) { + await this._synchronize(`artifact-${fsId}`, async () => { + // check again whether the artifact is now installed + const installed = await this._pathExists(targetPath); + if (installed) { + log.verbose(`Already installed: ${artifactId} in version ${revision}`); + return; + } + + const stagingPath = this._getStagingPathForArtifact(coordinates); + log.info(`Installing missing artifact ${logId}...`); + + // Check whether staging dir already exists and remove it + if (await this._pathExists(stagingPath)) { + log.verbose(`Removing existing file in staging dir at ${stagingPath}...`); + await rm(stagingPath); + } + await mkdirp(path.dirname(stagingPath)); + + log.verbose(`Installing ${artifactId} in version ${version} to ${stagingPath}...`); + + // TODO: Stream response body to installPackage and unzip directly via + // https://github.com/isaacs/minizlib (already in dependencies through pacote) + // This way we do not store the archive unnecessarily + const reg = await this.getRegistry(); + await reg.requestArtifact(coordinates, stagingPath); + + await mkdirp(path.dirname(targetPath)); + log.verbose( + `Promoting artifact from staging path ${stagingPath} to target path at ${targetPath}...`); + await rename(stagingPath, targetPath); + }); + } else { + log.verbose(`Already installed: ${artifactId} in version ${revision}`); + } + return { + artifactPath: targetPath, + removeArtifact: () => { + return rm(targetPath); + } + }; + } + + async _projectExists(targetDir) { + const markers = await Promise.all([ + this._pathExists(path.join(targetDir, "package.json")), + this._pathExists(path.join(targetDir, ".ui5", "build-manifest.json")) + ]); + return markers.includes(true); + } + + async _pathExists(targetPath) { + try { + await stat(targetPath); + return true; + } catch (err) { + if (err.code === "ENOENT") { // "File or directory does not exist" + return false; + } else { + throw err; + } + } + } + + _getStagingPathForArtifact(coordinates) { + // Staging dir should only contain single files, no directory hierarchy. + // This makes cleanups after promoting artifacts easier and does not leave empty directories. + return path.join(this._stagingDir, this._generateFsIdFromCoordinates(coordinates)); + } + + _getTargetPathForArtifact({groupId, artifactId, revision, classifier, extension}) { + if (!classifier) { + classifier = revision; + revision = ""; + } + return path.join(this._artifactsDir, + `${groupId}-${artifactId}`.replaceAll(".", "_"), revision, `${classifier}.${extension}`); + } + + _getStagingDirForPackage(pkgName, version) { + // Staging dir should only contain single files, no directory hierarchy. + // This makes cleanups after promoting artifacts easier and does not leave empty directories. + return path.join(this._stagingDir, `${pkgName.replaceAll("/", "-")}-${version}`); + } + + _getTargetDirForPackage(pkgName, version) { + return path.join(this._packagesDir, ...pkgName.split("/"), version); + } + + /** + * Generate an identifier for an artifact that is safe to use in file names. + * Used for naming metadata- and lock-files + * + * @param {object} parameters + * @param {string} parameters.groupId GroupId of the artifact + * @param {string} parameters.artifactId ArtifactId of the artifact + * @param {string} parameters.extension Extension of the artifact + * @param {string} [parameters.classifier] Optional classifier of the artifact + * @param {string} [parameters.version] Version of the artifact. Optional if revision is provided + * @param {string} [parameters.revision] Optional revision of the artifact + * @returns {string} A unique identifier for the provided combination of parameters + */ + _generateFsIdFromCoordinates({groupId, artifactId, version, classifier, extension, revision}) { + // Using underscores instead of colons, since the colon is a reserved character for + // filenames on Windows and macOS + const optionalClassifier = classifier ? `${classifier}.` : ""; + return `${groupId}_${artifactId}_${revision || version}_${optionalClassifier}${extension}`; + } + + /** + * Generate an identifier for an artifact that is suitable for logging purposes + * + * @param {object} parameters + * @param {string} parameters.groupId GroupId of the artifact + * @param {string} parameters.artifactId ArtifactId of the artifact + * @param {string} parameters.version Version of the artifact + * @param {string} parameters.extension Extension of the artifact + * @param {string} [parameters.classifier] Optional classifier of the artifact + * @param {string} [parameters.revision] Optional revision of the artifact + * @returns {string} A string with the Maven-typical formatting of the provided coordinates + */ + _generateLogIdFromCoordinates({groupId, artifactId, version, classifier, extension, revision}) { + const optionalClassifier = classifier ? `${classifier}.` : ""; + return `${groupId}:${artifactId}:${revision || version}:${optionalClassifier}${extension}`; + } +} + +export default Installer; diff --git a/packages/project/lib/ui5Framework/maven/Registry.js b/packages/project/lib/ui5Framework/maven/Registry.js new file mode 100644 index 00000000000..52df8ea1430 --- /dev/null +++ b/packages/project/lib/ui5Framework/maven/Registry.js @@ -0,0 +1,109 @@ +import {getLogger} from "@ui5/logger"; +import fetch from "make-fetch-happen"; +import xml2js from "xml2js"; +import {promisify} from "node:util"; +import {pipeline} from "node:stream/promises"; +import fs from "graceful-fs"; +const log = getLogger("ui5Framework:maven:Registry"); + +class Registry { + /** + * @param {object} parameters Parameters + * @param {string} parameters.endpointUrl Maven's endpoint URL + */ + constructor({endpointUrl}) { + if (!endpointUrl) { + throw new Error(`Registry: Missing parameter "endpointUrl"`); + } + this._endpointUrl = endpointUrl; + if (!this._endpointUrl.endsWith("/")) { + this._endpointUrl += "/"; + log.verbose(`Registry: Effective "endpointUrl" resolved to "${this._endpointUrl}"`); + } + } + + /** + * Requests a maven-metadata.xml file from the repository + * + * @param {object} options options + * @param {string} options.groupId + * @param {string} options.artifactId + * @param {string} [options.version] If given, the version must be a SNAPSHOT version. + * In this case, the resulting metadata will list all artifact versions + * (and timestamps) deployed for that SNAPSHOT. + * If not provided, the resulting metadata will list all versions available for the artifact. + */ + async requestMavenMetadata({groupId, artifactId, version}) { + try { + const optionalVersion = version ? version + "/" : ""; + const url = this._endpointUrl + + `${groupId.replaceAll(".", "/")}/${artifactId}/${optionalVersion}maven-metadata.xml`; + + log.verbose(`Fetching: ${url}`); + const res = await fetch(url); + if (!res.ok) { + throw new Error(`[HTTP Error] ${res.status} ${res.statusText}`); + } + + const parser = new xml2js.Parser({ + explicitArray: false, + ignoreAttrs: true + }); + const readXML = promisify(parser.parseString); + const content = await res.buffer(); + const parsedXml = await readXML(content); + if (!parsedXml?.metadata) { + throw new Error( + `Empty or unexpected response body:\n${content}\nParsed as:\n${JSON.stringify(parsedXml)}`); + } + return parsedXml.metadata; + } catch (err) { + if (err.code === "ENOTFOUND") { + throw new Error( + `Failed to connect to Maven registry at ${this._endpointUrl}. ` + + `Please check the correct endpoint URL is maintained and can be reached. `); + + // TODO: Allow cacheMode to be set from outside + // `You may be able to continue working offline. For this, set --cache-mode to "force"`); + // ` or use the --offline flag`); // TODO: Implement --offline flag + } + throw new Error( + `Failed to retrieve maven-metadata.xml for ${groupId}:${artifactId}:${version}: ${err.message}`); + } + } + + async requestArtifact({groupId, artifactId, version, revision, classifier, extension}, targetPath) { + try { + // Classifier can be null, e.g. for the default "jar" artifact + const optionalClassifier = classifier ? `-${classifier}` : ""; + const url = this._endpointUrl + + `${groupId.replaceAll(".", "/")}/${artifactId}/${version}/` + + `${artifactId}-${revision}${optionalClassifier}.${extension}`; + + log.verbose(`Fetching: ${url}`); + const res = await fetch(url, { + cache: "no-store" // Do not cache these large artifacts. We store them right away anyways + }); + if (!res.ok) { + throw new Error(`[HTTP Error] ${res.status} ${res.statusText}`); + } + + // Write to target + await pipeline(res.body, fs.createWriteStream(targetPath)); + } catch (err) { + if (err.code === "ENOTFOUND") { + throw new Error( + `Failed to connect to Maven registry at ${this._endpointUrl}. ` + + `Please check the correct endpoint URL is maintained and can be reached. `); + + // TODO: Allow cacheMode to be set from outside + // `You may be able to continue working offline. For this, set --cache-mode to "force"`); + // ` or use the --offline flag`); // TODO: Implement --offline flag + } + throw new Error(`Failed to retrieve artifact ` + + `${groupId}:${artifactId}:${version}:${classifier}:${extension} ${err.message}`); + } + } +} + +export default Registry; diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index 3c77fc39c3b..49bd80bf1c9 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -1,29 +1,41 @@ import path from "node:path"; +import {mkdirp} from "../../utils/fs.js"; import fs from "graceful-fs"; import {promisify} from "node:util"; import Registry from "./Registry.js"; +import AbstractInstaller from "../AbstractInstaller.js"; import rimraf from "rimraf"; const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const rename = promisify(fs.rename); -const mkdir = promisify(fs.mkdir); import {getLogger} from "@ui5/logger"; const log = getLogger("ui5Framework:npm:Installer"); -class Installer { - constructor({cwd, ui5HomeDir}) { +class Installer extends AbstractInstaller { + /** + * @param {object} parameters Parameters + * @param {string} parameters.cwd Current working directory + * @param {string} parameters.ui5HomeDir UI5 home directory location. This will be used to store packages, + * metadata and configuration used by the resolvers. + * @param {string} [parameters.packagesDir="${ui5HomeDir}/framework/packages"] Where to install packages + * @param {string} [parameters.stagingDir="${ui5HomeDir}/framework/staging"] The staging directory for the packages + * @param {string} [parameters.cacheDir="${ui5HomeDir}/framework/cacache"] Where to store temp/cached packages. + */ + constructor({cwd, ui5HomeDir, packagesDir, stagingDir, cacheDir}) { + super(ui5HomeDir); if (!cwd) { throw new Error(`Installer: Missing parameter "cwd"`); } - if (!ui5HomeDir) { - throw new Error(`Installer: Missing parameter "ui5HomeDir"`); - } - this._packagesDir = path.join(ui5HomeDir, "framework", "packages"); + this._packagesDir = packagesDir ? + path.resolve(packagesDir) : path.join(ui5HomeDir, "framework", "packages"); + log.verbose(`Installing to: ${this._packagesDir}`); + this._cwd = cwd; - this._caCacheDir = path.join(ui5HomeDir, "framework", "cacache"); - this._lockDir = path.join(ui5HomeDir, "framework", "locks"); - this._stagingDir = path.join(ui5HomeDir, "framework", "staging"); + this._caCacheDir = cacheDir ? + path.resolve(cacheDir) : path.join(ui5HomeDir, "framework", "cacache"); + this._stagingDir = stagingDir ? + path.resolve(stagingDir) : path.join(ui5HomeDir, "framework", "staging"); } getRegistry() { @@ -72,7 +84,7 @@ class Installer { const targetDir = this._getTargetDirForPackage({pkgName, version}); const installed = await this._packageJsonExists(targetDir); if (!installed) { - await this._synchronize({pkgName, version}, async () => { + await this._synchronize(`package-${pkgName}@${version}`, async () => { // check again whether package is now installed const installed = await this._packageJsonExists(targetDir); if (!installed) { @@ -99,15 +111,15 @@ class Installer { // Do not create target dir itself to prevent EPERM error in following rename operation // (https://github.com/SAP/ui5-tooling/issues/487) - await mkdir(path.dirname(targetDir), {recursive: true}); + await mkdirp(path.dirname(targetDir)); log.verbose(`Promoting staging directory from ${stagingDir} to ${targetDir}...`); await rename(stagingDir, targetDir); } else { - log.verbose(`Alrady installed: ${pkgName} in version ${version}`); + log.verbose(`Already installed: ${pkgName} in version ${version}`); } }); } else { - log.verbose(`Alrady installed: ${pkgName} in version ${version}`); + log.verbose(`Already installed: ${pkgName} in version ${version}`); } return { pkgPath: targetDir @@ -131,39 +143,12 @@ class Installer { } } - async _synchronize({pkgName, version}, callback) { - const { - default: lockfile - } = await import("lockfile"); - const lock = promisify(lockfile.lock); - const unlock = promisify(lockfile.unlock); - const lockPath = this._getLockPath({pkgName, version}); - await mkdir(this._lockDir, {recursive: true}); - log.verbose("Locking " + lockPath); - await lock(lockPath, { - wait: 10000, - stale: 60000, - retries: 10 - }); - try { - await callback(); - } finally { - log.verbose("Unlocking " + lockPath); - await unlock(lockPath); - } - } - - _getLockPath({pkgName, version}) { - const lockName = pkgName.replace(/\//g, "-"); - return path.join(this._lockDir, `package-${lockName}@${version}.lock`); - } - _getTargetDirForPackage({pkgName, version}) { return path.join(this._packagesDir, ...pkgName.split("/"), version); } _getStagingDirForPackage({pkgName, version}) { - return path.join(this._stagingDir, `${pkgName.replace("/", "-")}-${version}`); + return path.join(this._stagingDir, `${pkgName.replaceAll("/", "-")}-${version}`); } } diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index 5c6119294d5..33867cc9cad 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -9,7 +9,18 @@ function logConfig(config, configName) { } class Registry { + /** + * @param {object} parameters Parameters + * @param {string} parameters.cwd Current working directory + * @param {string} parameters.cacheDir Cache directory + */ constructor({cwd, cacheDir}) { + if (!cwd) { + throw new Error(`Registry: Missing parameter "cwd"`); + } + if (!cacheDir) { + throw new Error(`Registry: Missing parameter "cacheDir"`); + } this._cwd = cwd; this._cacheDir = cacheDir; } @@ -19,6 +30,7 @@ class Registry { } async requestPackageManifest(pkgName, version) { const {pacote, pacoteOptions} = await this._getPacote(); + return pacote.manifest(`${pkgName}@${version}`, pacoteOptions); } async extractPackage(pkgName, version, targetDir) { diff --git a/packages/project/lib/utils/fs.js b/packages/project/lib/utils/fs.js new file mode 100644 index 00000000000..a7a930aa39b --- /dev/null +++ b/packages/project/lib/utils/fs.js @@ -0,0 +1,7 @@ +import fs from "graceful-fs"; +import {promisify} from "node:util"; +const mkdir = promisify(fs.mkdir); + +export async function mkdirp(dirPath) { + return mkdir(dirPath, {recursive: true}); +} diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ef455e78d8c..40eb254cea5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -21,6 +21,8 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", + "make-fetch-happen": "^11.0.3", + "node-stream-zip": "^1.15.0", "pacote": "^15.1.1", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", @@ -28,7 +30,8 @@ "resolve": "^1.22.3", "rimraf": "^4.4.1", "semver": "^7.4.0", - "xml2js": "^0.5.0" + "xml2js": "^0.5.0", + "yesno": "^0.4.0" }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", @@ -169,6 +172,15 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, "node_modules/@babel/helper-compilation-targets/node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -178,6 +190,12 @@ "semver": "bin/semver.js" } }, + "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, "node_modules/@babel/helper-environment-visitor": { "version": "7.18.9", "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", @@ -1045,8 +1063,7 @@ }, "node_modules/@tootallnate/once": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "license": "MIT", "engines": { "node": ">= 10" } @@ -4369,8 +4386,7 @@ }, "node_modules/http-proxy-agent": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "license": "MIT", "dependencies": { "@tootallnate/once": "2", "agent-base": "6", @@ -5120,8 +5136,7 @@ }, "node_modules/jsdoc/node_modules/escape-string-regexp": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "license": "MIT", "engines": { "node": ">=8" } @@ -5370,12 +5385,10 @@ } }, "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" + "version": "7.14.1", + "license": "ISC", + "engines": { + "node": ">=12" } }, "node_modules/magic-string": { @@ -5412,117 +5425,27 @@ } }, "node_modules/make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "version": "11.0.3", + "license": "ISC", "dependencies": { "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", "http-proxy-agent": "^5.0.0", "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", + "minipass": "^4.0.0", + "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", "promise-retry": "^2.0.1", "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/make-fetch-happen/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/make-fetch-happen/node_modules/cacache": { - "version": "16.1.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", - "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", - "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/make-fetch-happen/node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dependencies": { - "minipass": "^3.0.0" + "ssri": "^10.0.0" }, "engines": { - "node": ">= 8" - } - }, - "node_modules/make-fetch-happen/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/make-fetch-happen/node_modules/lru-cache": { @@ -5533,113 +5456,6 @@ "node": ">=12" } }, - "node_modules/make-fetch-happen/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/make-fetch-happen/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/make-fetch-happen/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-fetch-happen/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/make-fetch-happen/node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/make-fetch-happen/node_modules/ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/unique-filename": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", - "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", - "dependencies": { - "unique-slug": "^3.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/unique-slug": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", - "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", - "dependencies": { - "imurmurhash": "^0.1.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/map-age-cleaner": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", @@ -5945,43 +5761,21 @@ "node": ">=8" } }, - "node_modules/minipass-collect/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/minipass-fetch": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", - "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "version": "3.0.1", + "license": "MIT", "dependencies": { - "minipass": "^3.1.6", + "minipass": "^4.0.0", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" }, "optionalDependencies": { "encoding": "^0.1.13" } }, - "node_modules/minipass-fetch/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-fetch/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/minipass-flush": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", @@ -6004,11 +5798,6 @@ "node": ">=8" } }, - "node_modules/minipass-flush/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/minipass-json-stream": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", @@ -6029,11 +5818,6 @@ "node": ">=8" } }, - "node_modules/minipass-json-stream/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/minipass-pipeline": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", @@ -6056,11 +5840,6 @@ "node": ">=8" } }, - "node_modules/minipass-pipeline/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/minipass-sized": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", @@ -6083,11 +5862,6 @@ "node": ">=8" } }, - "node_modules/minipass-sized/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", @@ -6111,15 +5885,9 @@ "node": ">=8" } }, - "node_modules/minizlib/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/mkdirp": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "license": "MIT", "bin": { "mkdirp": "bin/cmd.js" }, @@ -6259,6 +6027,30 @@ "node": "^12.13 || ^14.13 || >=16" } }, + "node_modules/node-gyp/node_modules/@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/node-gyp/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/node-gyp/node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -6268,6 +6060,90 @@ "concat-map": "0.0.1" } }, + "node_modules/node-gyp/node_modules/cacache": { + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", + "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/node-gyp/node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/node-gyp/node_modules/cacache/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/cacache/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-gyp/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/node-gyp/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/node-gyp/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -6287,6 +6163,40 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/node-gyp/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/node-gyp/node_modules/make-fetch-happen": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/node-gyp/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -6298,6 +6208,47 @@ "node": "*" } }, + "node_modules/node-gyp/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/node-gyp/node_modules/minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/node-gyp/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/node-gyp/node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -6312,6 +6263,39 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/node-gyp/node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/node-gyp/node_modules/unique-filename": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", + "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", + "dependencies": { + "unique-slug": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/node-gyp/node_modules/unique-slug": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", + "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -6330,6 +6314,18 @@ "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", "dev": true }, + "node_modules/node-stream-zip": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/node-stream-zip/-/node-stream-zip-1.15.0.tgz", + "integrity": "sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==", + "engines": { + "node": ">=0.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/antelle" + } + }, "node_modules/nofilter": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", @@ -8402,11 +8398,6 @@ "node": ">=10" } }, - "node_modules/semver/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/serialize-error": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", @@ -9109,11 +9100,6 @@ "node": ">=8" } }, - "node_modules/tar/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/temp-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-3.0.0.tgz", @@ -9793,10 +9779,9 @@ } }, "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yaml": { "version": "1.10.2", @@ -9834,6 +9819,11 @@ "node": ">=12" } }, + "node_modules/yesno": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/yesno/-/yesno-0.4.0.tgz", + "integrity": "sha512-tdBxmHvbXPBKYIg81bMCB7bVeDmHkRzk5rVJyYYXurwKkHq/MCd8rz4HSJUP7hW0H2NlXiq8IFiWvYKEHhlotA==" + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 38c08cf3dbb..68fc3571ca9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -20,6 +20,7 @@ "exports": { "./specifications/Specification": "./lib/specifications/Specification.js", "./specifications/SpecificationVersion": "./lib/specifications/SpecificationVersion.js", + "./ui5Framework/Sapui5MavenSnapshotResolver": "./lib/ui5Framework/Sapui5MavenSnapshotResolver.js", "./ui5Framework/Openui5Resolver": "./lib/ui5Framework/Openui5Resolver.js", "./ui5Framework/Sapui5Resolver": "./lib/ui5Framework/Sapui5Resolver.js", "./validation/validator": "./lib/validation/validator.js", @@ -128,6 +129,8 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", + "make-fetch-happen": "^11.0.3", + "node-stream-zip": "^1.15.0", "pacote": "^15.1.1", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", @@ -135,7 +138,8 @@ "resolve": "^1.22.3", "rimraf": "^4.4.1", "semver": "^7.4.0", - "xml2js": "^0.5.0" + "xml2js": "^0.5.0", + "yesno": "^0.4.0" }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", diff --git a/packages/project/test/lib/graph/graph.js b/packages/project/test/lib/graph/graph.js index 2ed052c2977..a8a32e7d0bd 100644 --- a/packages/project/test/lib/graph/graph.js +++ b/packages/project/test/lib/graph/graph.js @@ -36,7 +36,7 @@ test.beforeEach(async (t) => { "../../../lib/graph/helpers/createWorkspace.js": t.context.createWorkspaceStub, "../../../lib/graph/projectGraphBuilder.js": t.context.projectGraphBuilderStub, "../../../lib/graph/helpers/ui5Framework.js": { - enrichProjectGraph: t.context.enrichProjectGraphStub + "enrichProjectGraph": t.context.enrichProjectGraphStub } }); }); diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index 7cff9788a66..184e45f2b0f 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -52,7 +52,9 @@ test.beforeEach(async (t) => { "@ui5/logger": ui5Logger, "graceful-fs": { rename: sinon.stub().yieldsAsync(), - mkdir: sinon.stub().yieldsAsync() + }, + "../../../../lib/utils/fs.js": { + mkdir: sinon.stub().resolves() }, "lockfile": { lock: sinon.stub().yieldsAsync(), @@ -687,18 +689,17 @@ defineErrorTest("SAPUI5: ui5Framework helper should throw a proper error when me frameworkName: "SAPUI5", failMetadata: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + + 1. Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + `404 - @sapui5/distribution-metadata -Failed to resolve library sap.ui.lib4: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + -`404 - @sapui5/distribution-metadata` // TODO: should only be returned once? + 2. Failed to resolve library sap.ui.lib4: Error already logged` }); defineErrorTest("SAPUI5: ui5Framework helper should throw a proper error when package extraction fails", { frameworkName: "SAPUI5", failExtract: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/sap.ui.lib1@1.75.1: ` + + 1. Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/sap.ui.lib1@1.75.1: ` + `404 - @sapui5/sap.ui.lib1 -Failed to resolve library sap.ui.lib4: Failed to extract package @openui5/sap.ui.lib4@1.75.4: ` + + 2. Failed to resolve library sap.ui.lib4: Failed to extract package @openui5/sap.ui.lib4@1.75.4: ` + `404 - @openui5/sap.ui.lib4` }); defineErrorTest( @@ -707,10 +708,9 @@ defineErrorTest( failMetadata: true, failExtract: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + + 1. Failed to resolve library sap.ui.lib1: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + `404 - @sapui5/distribution-metadata -Failed to resolve library sap.ui.lib4: Failed to extract package @sapui5/distribution-metadata@1.75.0: ` + -`404 - @sapui5/distribution-metadata` + 2. Failed to resolve library sap.ui.lib4: Error already logged` }); @@ -718,16 +718,16 @@ defineErrorTest("OpenUI5: ui5Framework helper should throw a proper error when m frameworkName: "OpenUI5", failMetadata: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Failed to read manifest of @openui5/sap.ui.lib1@1.75.0 -Failed to resolve library sap.ui.lib4: Failed to read manifest of @openui5/sap.ui.lib4@1.75.0` + 1. Failed to resolve library sap.ui.lib1: Failed to read manifest of @openui5/sap.ui.lib1@1.75.0 + 2. Failed to resolve library sap.ui.lib4: Failed to read manifest of @openui5/sap.ui.lib4@1.75.0` }); defineErrorTest("OpenUI5: ui5Framework helper should throw a proper error when package extraction fails", { frameworkName: "OpenUI5", failExtract: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Failed to extract package @openui5/sap.ui.lib1@1.75.0: ` + + 1. Failed to resolve library sap.ui.lib1: Failed to extract package @openui5/sap.ui.lib1@1.75.0: ` + `404 - @openui5/sap.ui.lib1 -Failed to resolve library sap.ui.lib4: Failed to extract package @openui5/sap.ui.lib4@1.75.0: ` + + 2. Failed to resolve library sap.ui.lib4: Failed to extract package @openui5/sap.ui.lib4@1.75.0: ` + `404 - @openui5/sap.ui.lib4` }); defineErrorTest( @@ -736,8 +736,8 @@ defineErrorTest( failMetadata: true, failExtract: true, expectedErrorMessage: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Failed to read manifest of @openui5/sap.ui.lib1@1.75.0 -Failed to resolve library sap.ui.lib4: Failed to read manifest of @openui5/sap.ui.lib4@1.75.0` + 1. Failed to resolve library sap.ui.lib1: Failed to read manifest of @openui5/sap.ui.lib1@1.75.0 + 2. Failed to resolve library sap.ui.lib4: Failed to read manifest of @openui5/sap.ui.lib4@1.75.0` }); test.serial("ui5Framework helper should not fail when no framework configuration is given", async (t) => { @@ -893,8 +893,7 @@ test.serial( await t.throwsAsync(async () => { await ui5Framework.enrichProjectGraph(projectGraph); }, { - message: `Resolution of framework libraries failed with errors: -Failed to resolve library does.not.exist: Could not find library "does.not.exist"`}); + message: `Failed to resolve library does.not.exist: Could not find library "does.not.exist"`}); }); // TODO test: Should not download packages again in case they are already installed diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index 863646fe4b5..91009cec6ff 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -40,10 +40,18 @@ test.beforeEach(async (t) => { t.context.Sapui5ResolverResolveVersionStub = sinon.stub(); t.context.Sapui5ResolverStub.resolveVersion = t.context.Sapui5ResolverResolveVersionStub; + t.context.Sapui5MavenSnapshotResolverInstallStub = sinon.stub(); + t.context.Sapui5MavenSnapshotResolver = sinon.stub() + .callsFake(() => { + return { + install: t.context.Sapui5MavenSnapshotResolverInstallStub + }; + }); + t.context.ui5Framework = await esmock.p("../../../../lib/graph/helpers/ui5Framework.js", { "@ui5/logger": ui5Logger, - "../../../../lib/ui5Framework/Openui5Resolver.js": t.context.Openui5ResolverStub, "../../../../lib/ui5Framework/Sapui5Resolver.js": t.context.Sapui5ResolverStub, + "../../../../lib/ui5Framework/Sapui5MavenSnapshotResolver.js": t.context.Sapui5MavenSnapshotResolver, }); t.context.utils = t.context.ui5Framework._utils; }); @@ -167,6 +175,97 @@ test.serial("enrichProjectGraph: without framework configuration", async (t) => ]); }); +test.serial("enrichProjectGraph SNAPSHOT", async (t) => { + const {sinon, ui5Framework, utils, Sapui5MavenSnapshotResolverInstallStub} = t.context; + process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT = "__url__"; + + const dependencyTree = { + id: "test1", + version: "1.0.0", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.75.0-SNAPSHOT" + } + } + }; + + const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; + const libraryMetadata = {libraryMetadata: {fake: "metadata"}}; + + const getFrameworkLibrariesFromGraphStub = sinon.stub(utils, "getFrameworkLibrariesFromGraph") + .resolves(referencedLibraries); + + Sapui5MavenSnapshotResolverInstallStub.resolves(libraryMetadata); + + const addProjectToGraphStub = sinon.stub(); + const ProjectProcessorStub = sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph); + + t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGraph should be called once"); + + t.is(t.context.Sapui5MavenSnapshotResolverInstallStub.callCount, + 1, "Sapui5MavenSnapshotResolverInstallStub#constructor should be called once"); + t.deepEqual( + t.context.Sapui5MavenSnapshotResolverInstallStub.getCall(0).args, + [["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]], + "Sapui5MavenSnapshotResolverInstallStub#constructor should be called with expected args" + ); + + t.is(t.context.Sapui5MavenSnapshotResolverInstallStub.callCount, 1, + "Sapui5MavenSnapshotResolverInstallStub#install should be called once"); + t.deepEqual(t.context.Sapui5MavenSnapshotResolverInstallStub.getCall(0).args, [ + referencedLibraries + ], "Sapui5MavenSnapshotResolverInstallStub#install should be called with expected args"); + + t.is(ProjectProcessorStub.callCount, 1, "ProjectProcessor#constructor should be called once"); + const projectProcessorConstructorArgs = ProjectProcessorStub.getCall(0).args[0]; + t.deepEqual(projectProcessorConstructorArgs.libraryMetadata, libraryMetadata.libraryMetadata, + "Correct libraryMetadata provided to ProjectProcessor"); + t.is(projectProcessorConstructorArgs.graph._rootProjectName, + "fake-root-of-application.a-framework-dependency-graph", + "Correct graph provided to ProjectProcessor"); + t.falsy(projectProcessorConstructorArgs.workspace, + "No workspace provided to ProjectProcessor"); + + t.is(addProjectToGraphStub.callCount, 3, "ProjectProcessor#getProject should be called 3 times"); + t.deepEqual(addProjectToGraphStub.getCall(0).args[0], referencedLibraries[0], + "ProjectProcessor#addProjectToGraph should be called with expected first arg (call 1)"); + t.deepEqual(addProjectToGraphStub.getCall(1).args[0], referencedLibraries[1], + "ProjectProcessor#addProjectToGraph should be called with expected first arg (call 2)"); + t.deepEqual(addProjectToGraphStub.getCall(2).args[0], referencedLibraries[2], + "ProjectProcessor#addProjectToGraph should be called with expected first arg (call 3)"); + + + const callbackStub = sinon.stub().resolves(); + await projectGraph.traverseDepthFirst(callbackStub); + + t.is(callbackStub.callCount, 1, "Correct number of projects have been visited"); + + const callbackCalls = callbackStub.getCalls().map((call) => call.args[0].project.getName()); + t.deepEqual(callbackCalls, [ + "application.a" + ], "Traversed graph in correct order"); + + delete process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT; +}); + test.serial("enrichProjectGraph: With versionOverride", async (t) => { const { sinon, ui5Framework, utils, @@ -241,7 +340,10 @@ test.serial("enrichProjectGraph shouldn't throw when no framework version and no const provider = new DependencyTreeProvider({dependencyTree}); const projectGraph = await projectGraphBuilder(provider); - await ui5Framework.enrichProjectGraph(projectGraph); + // Framework override is fine, even if no framework version is configured + await ui5Framework.enrichProjectGraph(projectGraph, { + versionOverride: "1.75.0" + }); t.is(log.verbose.callCount, 2); t.deepEqual(log.verbose.getCall(0).args, [ diff --git a/packages/project/test/lib/package-exports.js b/packages/project/test/lib/package-exports.js index d5f4d62576e..9f91f1e1010 100644 --- a/packages/project/test/lib/package-exports.js +++ b/packages/project/test/lib/package-exports.js @@ -13,7 +13,7 @@ test("export of package.json", (t) => { // Check number of definied exports test("check number of exports", (t) => { const packageJson = require("@ui5/project/package.json"); - t.is(Object.keys(packageJson.exports).length, 10); + t.is(Object.keys(packageJson.exports).length, 11); }); // Public API contract (exported modules) @@ -22,6 +22,7 @@ test("check number of exports", (t) => { "specifications/SpecificationVersion", "ui5Framework/Openui5Resolver", "ui5Framework/Sapui5Resolver", + "ui5Framework/Sapui5MavenSnapshotResolver", "validation/validator", "validation/ValidationError", "graph/ProjectGraph", diff --git a/packages/project/test/lib/ui5framework/AbstractInstaller.js b/packages/project/test/lib/ui5framework/AbstractInstaller.js new file mode 100644 index 00000000000..691e40984a5 --- /dev/null +++ b/packages/project/test/lib/ui5framework/AbstractInstaller.js @@ -0,0 +1,11 @@ +import test from "ava"; +import AbstractInstaller from "../../../lib/ui5Framework/AbstractInstaller.js"; + +test("AbstractInstaller: constructor throws an error", (t) => { + t.throws(() => { + new AbstractInstaller(); + }, { + instanceOf: TypeError, + message: "Class 'AbstractInstaller' is abstract" + }); +}); diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index a89d48ed0ea..2b2fb5b6d20 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -389,8 +389,8 @@ test("AbstractResolver: install error handling (rejection of metadata/install)", await t.throwsAsync(async () => { await resolver.install(["sap.ui.lib1", "sap.ui.lib2"]); }, {message: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Error installing sap.ui.lib1 -Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`}); + 1. Failed to resolve library sap.ui.lib1: Error installing sap.ui.lib1 + 2. Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`}); t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); }); @@ -420,8 +420,7 @@ test("AbstractResolver: install error handling (rejection of dependency metadata await t.throwsAsync(async () => { await resolver.install(["sap.ui.lib1"]); - }, {message: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`}); + }, {message: `Failed to resolve library sap.ui.lib2: Error installing sap.ui.lib2`}); t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); }); @@ -463,8 +462,7 @@ test("AbstractResolver: install error handling (rejection of dependency install) await t.throwsAsync(async () => { await resolver.install(["sap.ui.lib1"]); - }, {message: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib3: Error installing sap.ui.lib3`}); + }, {message: `Failed to resolve library sap.ui.lib3: Error installing sap.ui.lib3`}); t.is(handleLibraryStub.callCount, 3, "Each library should be handled once"); }); @@ -485,8 +483,8 @@ test("AbstractResolver: install error handling (handleLibrary throws error)", as await t.throwsAsync(async () => { await resolver.install(["sap.ui.lib1", "sap.ui.lib2"]); }, {message: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Error within handleLibrary: sap.ui.lib1 -Failed to resolve library sap.ui.lib2: Error within handleLibrary: sap.ui.lib2`}); + 1. Failed to resolve library sap.ui.lib1: Error within handleLibrary: sap.ui.lib1 + 2. Failed to resolve library sap.ui.lib2: Error within handleLibrary: sap.ui.lib2`}); t.is(handleLibraryStub.callCount, 2, "Each library should be handled once"); }); @@ -502,8 +500,8 @@ test("AbstractResolver: install error handling " + await t.throwsAsync(resolver.install(["sap.ui.lib1", "sap.ui.lib2"]), { message: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib1: Unable to install library sap.ui.lib1. No framework version provided. -Failed to resolve library sap.ui.lib2: Unable to install library sap.ui.lib2. No framework version provided.` + 1. Failed to resolve library sap.ui.lib1: Unable to install library sap.ui.lib1. No framework version provided. + 2. Failed to resolve library sap.ui.lib2: Unable to install library sap.ui.lib2. No framework version provided.` }); t.is(handleLibraryStub.callCount, 0, "Handle library should not be called when no version is available"); @@ -527,8 +525,9 @@ test("AbstractResolver: install error handling " + const handleLibraryStub = sinon.stub(resolver, "handleLibrary"); await t.throwsAsync(resolver.install(["sap.ui.lib1", "sap.ui.lib2"]), { - message: `Resolution of framework libraries failed with errors: -Failed to resolve library sap.ui.lib2: Unable to install library sap.ui.lib2. No framework version provided.` + message: + "Failed to resolve library sap.ui.lib2:" + + " Unable to install library sap.ui.lib2. No framework version provided.", }); t.is(handleLibraryStub.callCount, 0, "Handle library should not be called when no version is available"); @@ -636,6 +635,84 @@ test.serial("AbstractResolver: Static resolveVersion does not include prerelease }], "fetchAllVersions should be called with expected arguments"); }); +test.serial("AbstractResolver: Static resolveVersion resolves 'latest-snapshot'", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0-SNAPSHOT", "1.75.1-SNAPSHOT", "1.76.0-SNAPSHOT", "1.76.1-SNAPSHOT"]); + + const version = await MyResolver.resolveVersion("latest-snapshot", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.76.1-SNAPSHOT", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR-SNAPSHOT'", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0-SNAPSHOT", "1.75.1-SNAPSHOT", "1.76.0-SNAPSHOT", "1.76.1-SNAPSHOT"]); + + const version = await MyResolver.resolveVersion("1.75-SNAPSHOT", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.75.1-SNAPSHOT", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH-SNAPSHOT'", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0-SNAPSHOT", "1.75.1-SNAPSHOT", "1.76.0-SNAPSHOT", "1.76.1-SNAPSHOT"]); + + const version = await MyResolver.resolveVersion("1.75.0-SNAPSHOT", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.75.0-SNAPSHOT", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion includes non-prereleases for 'latest-snapshot'", async (t) => { + // Realistically this should never happen, since the Sapui5MavenSnapshotResolver would never return + // non-snapshot versions. This test therefore simply illustrates the current behavior for this theoretic case + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.76.0", "1.77.0", "1.78.0", "1.79.0-SNAPSHOT", "1.79.1"]); + + const version = await MyResolver.resolveVersion("latest-snapshot", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.79.1", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + test.serial("AbstractResolver: Static resolveVersion without options", async (t) => { const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js new file mode 100644 index 00000000000..f1489042676 --- /dev/null +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js @@ -0,0 +1,375 @@ +import test from "ava"; +import sinon from "sinon"; +import esmock from "esmock"; +import path from "node:path"; +import os from "node:os"; + +test.beforeEach(async (t) => { + t.context.InstallerStub = sinon.stub(); + t.context.fetchPackageVersionsStub = sinon.stub(); + t.context.installPackageStub = sinon.stub(); + t.context.readJsonStub = sinon.stub(); + t.context.InstallerStub.callsFake(() => { + return { + fetchPackageVersions: t.context.fetchPackageVersionsStub, + installPackage: t.context.installPackageStub, + readJson: t.context.readJsonStub + }; + }); + + process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT = "_SNAPSHOT_URL_"; + + t.context.yesnoStub = sinon.stub(); + t.context.promisifyStub = sinon.stub(); + t.context.loggerVerbose = sinon.stub(); + t.context.loggerWarn = sinon.stub(); + t.context.loggerInfo = sinon.stub(); + + t.context.Sapui5MavenSnapshotResolver = await esmock.p("../../../lib/ui5Framework/Sapui5MavenSnapshotResolver.js", { + "../../../lib/ui5Framework/maven/Installer": t.context.InstallerStub, + "yesno": t.context.yesnoStub, + "node:util": { + "promisify": t.context.promisifyStub + }, + "@ui5/logger": { + getLogger: () => ({ + verbose: t.context.loggerVerbose, + warning: t.context.loggerWarn, + info: t.context.loggerInfo, + }) + } + }); + + t.context.originalIsTty = process.stdout.isTTY; +}); + +test.afterEach.always((t) => { + process.stdout.isTTY = t.context.originalIsTty; + delete process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT; + esmock.purge(t.context.Sapui5MavenSnapshotResolver); + sinon.restore(); +}); + +test.serial( + "Sapui5MavenSnapshotResolver: loadDistMetadata loads metadata "+ + "once from @sapui5/distribution-metadata package", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + + const resolver = new Sapui5MavenSnapshotResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const expectedMetadata = { + libraries: { + "sap.ui.foo": { + "npmPackageName": "@openui5/sap.ui.foo", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [] + } + } + }; + + t.context.installPackageStub + .withArgs({ + pkgName: "@sapui5/distribution-metadata", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + classifier: "npm-sources", + extension: "zip", + }) + .resolves({pkgPath: "/path/to/distribution-metadata/1.75.0"}); + + t.context.readJsonStub + .withArgs(path.join("/path", "to", "distribution-metadata", "1.75.0", "metadata.json")) + .resolves(expectedMetadata); + + let distMetadata = await resolver.loadDistMetadata(); + t.is(t.context.installPackageStub.callCount, 1, "Distribution metadata package should be installed once"); + t.deepEqual(distMetadata, expectedMetadata, + "loadDistMetadata should resolve with expected metadata"); + + // Calling loadDistMetadata again should not load package again + distMetadata = await resolver.loadDistMetadata(); + + t.is(t.context.installPackageStub.callCount, 1, "Distribution metadata package should still be installed once"); + t.deepEqual(distMetadata, expectedMetadata, + "Metadata should still be the expected metadata after calling loadDistMetadata again"); + + const libraryMetadata = await resolver.getLibraryMetadata("sap.ui.foo"); + t.deepEqual(libraryMetadata, expectedMetadata.libraries["sap.ui.foo"], + "getLibraryMetadata returns metadata for one library"); + }); + +test.serial("Sapui5MavenSnapshotResolver: getLibraryMetadata throws", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + + const resolver = new Sapui5MavenSnapshotResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const loadDistMetadataStub = sinon.stub(resolver, "loadDistMetadata"); + loadDistMetadataStub.resolves({ + libraries: {} + }); + + await t.throwsAsync(resolver.getLibraryMetadata("sap.ui.foo"), { + message: "Could not find library \"sap.ui.foo\"", + }); +}); + +test.serial("Sapui5MavenSnapshotResolver: handleLibrary", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + + const resolver = new Sapui5MavenSnapshotResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + const loadDistMetadataStub = sinon.stub(resolver, "loadDistMetadata"); + loadDistMetadataStub.resolves({ + libraries: { + "sap.ui.lib1": { + "npmPackageName": "@openui5/sap.ui.lib1", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [], + "gav": "x:y:z" + } + } + }); + + t.context.installPackageStub + .callsFake(async ({pkgName, version}) => { + throw new Error(`Unknown install call: ${pkgName}@${version}`); + }) + .withArgs({ + pkgName: "@openui5/sap.ui.lib1-prebuilt", + groupId: "x", + artifactId: "y", + version: "1.75.0", + classifier: null, + extension: "jar", + }) + .resolves({pkgPath: "/foo/sap.ui.lib1"}); + + + const promises = await resolver.handleLibrary("sap.ui.lib1"); + + t.true(promises.metadata instanceof Promise, "Metadata promise should be returned"); + t.true(promises.install instanceof Promise, "Install promise should be returned"); + + const metadata = await promises.metadata; + t.deepEqual(metadata, { + "id": "@openui5/sap.ui.lib1-prebuilt", + "version": "1.75.0", + "dependencies": [], + "optionalDependencies": [] + }, "Expected library metadata should be returned"); + + t.deepEqual(await promises.install, {pkgPath: "/foo/sap.ui.lib1"}, "Install should resolve with expected object"); + t.is(loadDistMetadataStub.callCount, 1, "loadDistMetadata should be called once"); +}); + +test.serial("Sapui5MavenSnapshotResolver: handleLibrary throws", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + + const resolver = new Sapui5MavenSnapshotResolver({ + cwd: "/test-project/", + version: "1.75.0" + }); + + sinon.stub(resolver, "getLibraryMetadata").resolves({}); + + await t.throwsAsync(resolver.handleLibrary("sap.ui.lib1"), { + message: + "Metadata is missing GAV (group, artifact and version) information. "+ + "This might indicate an unsupported SNAPSHOT version.", + }); +}); + +test.serial("Sapui5MavenSnapshotResolver: Static fetchAllVersions", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + + const expectedVersions = ["1.75.0-SNAPSHOT", "1.75.1-SNAPSHOT", "1.76.0-SNAPSHOT"]; + const options = { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }; + + t.context.fetchPackageVersionsStub.returns(expectedVersions); + sinon.stub(Sapui5MavenSnapshotResolver, "_createSnapshotEndpointUrlCallback") + .returns("snapshotEndpointUrlCallback"); + + const versions = await Sapui5MavenSnapshotResolver.fetchAllVersions(options); + + t.deepEqual(versions, expectedVersions, "Fetched versions should be correct"); + + t.is(t.context.fetchPackageVersionsStub.callCount, 1, "fetchPackageVersions should be called once"); + t.deepEqual( + t.context.fetchPackageVersionsStub.getCall(0).args, + [{artifactId: "sapui5-sdk-dist", groupId: "com.sap.ui5.dist"}], + "fetchPackageVersions should be called with expected arguments" + ); + + t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); + t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); + t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ + cwd: path.resolve("/cwd"), + snapshotEndpointUrlCb: "snapshotEndpointUrlCallback", + ui5HomeDir: path.resolve("/ui5HomeDir") + }], "Installer should be called with expected arguments"); +}); + +test.serial("Sapui5MavenSnapshotResolver: Static fetchAllVersions without options", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + + const expectedVersions = ["1.75.0-SNAPSHOT", "1.75.1-SNAPSHOT", "1.76.0-SNAPSHOT"]; + + t.context.fetchPackageVersionsStub.returns(expectedVersions); + sinon.stub(Sapui5MavenSnapshotResolver, "_createSnapshotEndpointUrlCallback") + .returns("snapshotEndpointUrlCallback"); + + const versions = await Sapui5MavenSnapshotResolver.fetchAllVersions(); + + t.deepEqual(versions, expectedVersions, "Fetched versions should be correct"); + + t.is(t.context.fetchPackageVersionsStub.callCount, 1, "fetchPackageVersions should be called once"); + t.deepEqual(t.context.fetchPackageVersionsStub.getCall(0).args, + [{artifactId: "sapui5-sdk-dist", groupId: "com.sap.ui5.dist"}], + "fetchPackageVersions should be called with expected arguments"); + + t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); + t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); + t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ + cwd: process.cwd(), + snapshotEndpointUrlCb: "snapshotEndpointUrlCallback", + ui5HomeDir: path.join(os.homedir(), ".ui5") + }], "Installer should be called with expected arguments"); +}); + +test.serial("_resolveSnapshotEndpointUrlFromMaven", async (t) => { + const resolveSnapshotEndpointUrl = t.context.Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrlFromMaven; + const {promisifyStub, yesnoStub, loggerInfo} = t.context; + + process.stdout.isTTY = true; + + const readStub = sinon.stub().resolves(` + + + snapshot.build + + + artifactory + /build-snapshots/ + + + + + `); + promisifyStub.callsFake(() => readStub); + yesnoStub.resolves(true); + + const endpoint = await resolveSnapshotEndpointUrl(); + + t.is(endpoint, "/build-snapshots/", "URL Extracted from settings.xml"); + + t.is(loggerInfo.getCall(0).args[0], + "Using Maven snapshot endpoint URL resolved from Maven configuration file: /build-snapshots/"); + t.is(loggerInfo.getCall(1).args[0], + "Consider persisting this choice by executing the following command: " + + "ui5 config set snapshotEndpointUrl /build-snapshots/"); +}); + +test.serial("_resolveSnapshotEndpointUrlFromMaven fails", async (t) => { + const resolveSnapshotEndpointUrl = t.context.Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrlFromMaven; + const {promisifyStub, yesnoStub, loggerVerbose, loggerWarn} = t.context; + + process.stdout.isTTY = true; + + const readStub = sinon.stub() + .onFirstCall().throws({code: "ENOENT"}) + .onSecondCall().throws(new Error("Error")) + .resolves(` + + + snapshot.build + + + artifactory + /build-snapshots/ + + + + + `); + promisifyStub.callsFake(() => readStub); + + await resolveSnapshotEndpointUrl(".m2/settings.xml"); + t.is( + loggerVerbose.getCall(0).args[0], + "Attempting to resolve snapshot endpoint URL from Maven configuration file at .m2/settings.xml..." + ); + t.is( + loggerVerbose.getCall(1).args[0], + `File does not exist: .m2/settings.xml` + ); + + loggerVerbose.reset(); + loggerWarn.reset(); + await resolveSnapshotEndpointUrl("settings.xml"); + t.is( + loggerVerbose.getCall(0).args[0], + "Attempting to resolve snapshot endpoint URL from Maven configuration file at settings.xml..." + ); + t.is( + loggerWarn.getCall(0).args[0], + "Failed to read Maven configuration file from settings.xml: Error" + ); + + loggerVerbose.reset(); + loggerWarn.reset(); + yesnoStub.resolves(false); + const endpoint = await resolveSnapshotEndpointUrl(); + + t.falsy(endpoint, "URL is not extracted after user rejection"); + t.is( + loggerVerbose.getCall(1).args[0], + "User rejected usage of the resolved URL" + ); +}); + +test.serial("_resolveSnapshotEndpointUrlFromMaven no TTY", async (t) => { + const resolveSnapshotEndpointUrl = t.context.Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrlFromMaven; + const {promisifyStub, yesnoStub} = t.context; + + process.stdout.isTTY = false; + + const readStub = sinon.stub().resolves(` + + + snapshot.build + + + artifactory + /build-snapshots/ + + + + + `); + promisifyStub.callsFake(() => readStub); + yesnoStub.resolves(true); + + const endpoint = await resolveSnapshotEndpointUrl(".m2/settings.xml"); + + t.is(readStub.callCount, 0, "read did not get called"); + t.is(yesnoStub.callCount, 0, "yesno did not get called"); + t.is(endpoint, null, "No URL got extracted"); +}); diff --git a/packages/project/test/lib/ui5framework/maven/Installer.js b/packages/project/test/lib/ui5framework/maven/Installer.js new file mode 100644 index 00000000000..cd8c49d44cf --- /dev/null +++ b/packages/project/test/lib/ui5framework/maven/Installer.js @@ -0,0 +1,549 @@ +import test from "ava"; +import sinon from "sinon"; +import esmock from "esmock"; +import path from "node:path"; +import fs from "graceful-fs"; +import rimraf from "rimraf"; + +test.beforeEach(async (t) => { + t.context.mkdirpStub = sinon.stub().resolves(); + t.context.rimrafStub = sinon.stub().resolves(); + t.context.readFileStub = sinon.stub(); + t.context.writeFileStub = sinon.stub(); + t.context.renameStub = sinon.stub().returns(); + t.context.rmStub = sinon.stub().returns(); + t.context.statStub = sinon.stub().returns(); + + t.context.promisifyStub = sinon.stub(); + t.context.promisifyStub.withArgs(fs.readFile).callsFake(() => t.context.readFileStub); + t.context.promisifyStub.withArgs(fs.writeFile).callsFake(() => t.context.writeFileStub); + t.context.promisifyStub.withArgs(fs.rename).callsFake(() => t.context.renameStub); + t.context.promisifyStub.withArgs(fs.rm).callsFake(() => t.context.rmStub); + t.context.promisifyStub.withArgs(fs.stat).callsFake(() => t.context.statStub); + t.context.promisifyStub.withArgs(rimraf).callsFake(() => t.context.rimrafStub); + + t.context.lockStub = sinon.stub(); + t.context.unlockStub = sinon.stub(); + t.context.zipStub = class StreamZipStub { + extract = sinon.stub().resolves(); + close = sinon.stub().resolves(); + }; + + t.context.AbstractInstaller = await esmock.p("../../../../lib/ui5Framework/AbstractInstaller.js", { + "../../../../lib/utils/fs.js": { + mkdirp: t.context.mkdirpStub + }, + "lockfile": { + lock: t.context.lockStub, + unlock: t.context.unlockStub + } + }); + + t.context.Installer = await esmock.p("../../../../lib/ui5Framework/maven/Installer.js", { + "../../../../lib/ui5Framework/AbstractInstaller.js": t.context.AbstractInstaller, + "../../../../lib/utils/fs.js": { + mkdirp: t.context.mkdirpStub + }, + "node:util": { + "promisify": t.context.promisifyStub, + }, + "node-stream-zip": { + "async": t.context.zipStub + } + }); +}); + +test.afterEach.always((t) => { + sinon.restore(); + esmock.purge(t.context.AbstractInstaller); + esmock.purge(t.context.Installer); +}); + +test.serial("Installer: constructor", (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + t.true(installer instanceof Installer, "Constructor returns instance of class"); + t.is(installer._artifactsDir, path.join("/ui5Home/", "framework", "artifacts")); + t.is(installer._packagesDir, path.join("/ui5Home/", "framework", "packages")); + t.is(installer._lockDir, path.join("/ui5Home/", "framework", "locks")); + t.is(installer._stagingDir, path.join("/ui5Home/", "framework", "staging")); + t.is(installer._metadataDir, path.join("/ui5Home/", "framework", "metadata")); +}); + +test.serial("Installer: constructor requires 'ui5HomeDir'", (t) => { + const {Installer} = t.context; + + t.throws(() => { + new Installer({ + cwd: "/cwd/" + }); + }, {message: `Installer: Missing parameter "ui5HomeDir"`}); +}); + +test.serial("Installer: constructor requires 'snapshotEndpointUrlCb' or ENV variable", (t) => { + const {Installer} = t.context; + + t.throws(() => { + new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home" + }); + }, {message: `Installer: Missing Snapshot-Endpoint URL callback parameter`}); +}); + +test.serial("Installer: fetchPackageVersions", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") + }); + + const registry = await installer.getRegistry(); + const requestMavenMetadataStub = sinon.stub(registry, "requestMavenMetadata") + .resolves({ + versioning: { + versions: { + version: ["1.0.0", "2.0.0", "2.0.0-SNAPSHOT", "3.0.0", "5.0.0-SNAPSHOT"] + } + } + }); + + const packageVersions = await installer.fetchPackageVersions({groupId: "ui5.corp", artifactId: "great-thing"}); + + t.deepEqual(packageVersions, ["2.0.0-SNAPSHOT", "5.0.0-SNAPSHOT"], "Should resolve with expected versions"); + + t.is(requestMavenMetadataStub.callCount, 1, "requestPackagePackument should be called once"); + t.deepEqual(requestMavenMetadataStub.getCall(0).args[0], {groupId: "ui5.corp", artifactId: "great-thing"}, + "requestMavenMetadata was called with correct arguments"); +}); + +test.serial("Installer: fetchPackageVersions throws", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") + }); + + const registry = await installer.getRegistry(); + sinon.stub(registry, "requestMavenMetadata").resolves({}); + + await t.throwsAsync( + installer.fetchPackageVersions({ + groupId: "ui5.corp", + artifactId: "great-thing", + }), + {message: "Missing Maven metadata for artifact ui5.corp:great-thing"} + ); +}); + +test.serial("Installer: _getLockPath", (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + const lockPath = installer._getLockPath("package-@openui5/sap.ui.lib1@1.2.3-SNAPSHOT"); + + t.is(lockPath, path.join("/ui5Home/", "framework", "locks", "package-@openui5-sap.ui.lib1@1.2.3-SNAPSHOT.lock")); +}); + +test.serial("Installer: readJson", async (t) => { + const jsonStub = {json: "response"}; + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + t.context.readFileStub.resolves(JSON.stringify(jsonStub)); + + const jsonResponse = await installer.readJson("package-@openui5/sap.ui.lib1@1.2.3-SNAPSHOT"); + + t.deepEqual(jsonResponse, jsonStub); +}); + +test.serial("Installer: installPackage", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "1.22"}); + sinon.stub(installer, "_pathExists").resolves(false); + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + sinon.stub(installer, "installArtifact").resolves({ + artifactPath: "/ui5Home/framework/artifacts/com_sap_ui5_dist-sapui5-sdk-dist/1.22/npm-sources.zip", + removeArtifact: sinon.stub().resolves() + }); + + const installedPackage = await installer.installPackage({ + pkgName: "@sapui5/distribution-metadata", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + classifier: "npm-sources", + extension: "jar", + }); + + t.deepEqual( + installedPackage, + {pkgPath: + path.join("/ui5Home/", "framework", "packages", "@sapui5", "distribution-metadata", "1.22")}, + "Install the correct package" + ); +}); + +test.serial("Installer: installArtifact", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "1.22"}); + sinon.stub(installer, "_pathExists").resolves(false); + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + sinon.stub(installer, "getRegistry").callsFake(() => { + return { + requestArtifact: sinon.stub().resolves() + }; + }); + + const installedArtifact = await installer.installArtifact({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + }); + + t.is( + installedArtifact.artifactPath, + path.join("/ui5Home/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "1.22.jar"), + "artifactPath correctly resolved" + ); + + t.is( + typeof installedArtifact.removeArtifact, + "function", + "removeArtifact method" + ); +}); + +test.serial("Installer: _fetchArtifactMetadata", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + sinon.stub(installer, "_getLocalArtifactMetadata") + .resolves({ + lastCheck: 0, + lastUpdate: 0, + revision: "2", + staleRevisions: [], + }); + sinon.stub(installer, "_getRemoteArtifactMetadata").resolves({revision: "1.22", lastUpdate: 0}); + sinon.stub(installer, "_removeStaleRevisions").resolves(); + sinon.stub(installer, "_writeLocalArtifactMetadata").resolves(); + + const artifactMetadata = await installer._fetchArtifactMetadata({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + }); + + t.truthy(artifactMetadata.lastCheck, "Proper metadata: lastCheck"); + t.is(artifactMetadata.lastUpdate, 0, "Proper metadata: lastUpdate"); + t.is(artifactMetadata.revision, "1.22", "Proper metadata: revision"); +}); + +test.serial("Installer: _fetchArtifactMetadata throws", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {}, + cacheMode: "force" + }); + + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + sinon.stub(installer, "_getLocalArtifactMetadata").resolves({}); + + await t.throwsAsync(installer._fetchArtifactMetadata({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + }), { + message: + "Could not find artifact com.sap.ui5.dist:sapui5-sdk-dist:1.75.0:jar in local cache", + }); +}); + +test.serial("Installer: _getRemoteArtifactMetadata", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") + }); + + const registry = await installer.getRegistry(); + const requestMavenMetadataStub = sinon.stub(registry, "requestMavenMetadata") + .resolves({ + versioning: { + snapshotVersions: { + snapshotVersion: [{"extension": "jar", "updated": "20220828080910", "value": "5.0.0-SNAPSHOT"}] + } + } + }); + + const remoteArtifactMetadata = await installer._getRemoteArtifactMetadata({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + }); + + t.truthy(remoteArtifactMetadata.lastUpdate, "Proper metadata: lastUpdate"); + t.is(remoteArtifactMetadata.revision, "5.0.0-SNAPSHOT", "Proper metadata: revision"); + + t.is(requestMavenMetadataStub.callCount, 1, "requestPackagePackument should be called once"); + t.deepEqual(requestMavenMetadataStub.getCall(0).args[0], + {groupId: "com.sap.ui5.dist", artifactId: "sapui5-sdk-dist", version: "1.75.0"}, + "requestMavenMetadata was called with correct arguments"); +}); + +test.serial("Installer: _getRemoteArtifactMetadata throws", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") + }); + + const registry = await installer.getRegistry(); + sinon.stub(registry, "requestMavenMetadata").resolves({}); + + await t.throwsAsync(installer._getRemoteArtifactMetadata({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + }), {message: "Missing Maven snapshot metadata for artifact com.sap.ui5.dist:sapui5-sdk-dist:1.75.0"}); +}); + +test.serial("Installer: _getRemoteArtifactMetadata throws missing deployment metadata", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") + }); + + const registry = await installer.getRegistry(); + sinon.stub(registry, "requestMavenMetadata") + .resolves({ + versioning: { + snapshotVersions: { + snapshotVersion: [{"value": "5.0.0-SNAPSHOT"}] + } + } + }); + + + await t.throwsAsync(installer._getRemoteArtifactMetadata({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + }), {message: "Could not find deployment undefined.jar for artifact " + + "com.sap.ui5.dist:sapui5-sdk-dist:1.75.0 in snapshot metadata:\n[{\"value\":\"5.0.0-SNAPSHOT\"}]"}); +}); + +test.serial("Installer: _getLocalArtifactMetadata", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + sinon.stub(installer, "readJson").resolves({foo: "bar"}); + const localArtifactMetadata = await installer._getLocalArtifactMetadata(); + + t.deepEqual(localArtifactMetadata, {foo: "bar"}, "Returns the correct metadata"); +}); + +test.serial("Installer: _getLocalArtifactMetadata file not found", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + sinon.stub(installer, "readJson").throws({code: "ENOENT"}); + const localArtifactMetadata = await installer._getLocalArtifactMetadata(); + + t.deepEqual( + localArtifactMetadata, + {lastCheck: 0, lastUpdate: 0, revision: null, staleRevisions: []}, + "Returns an 'empty' localArtifactMetadata" + ); +}); + +test.serial("Installer: _getLocalArtifactMetadata throws", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + sinon.stub(installer, "readJson").throws(() => { + throw new Error("Error message"); + }); + + await t.throwsAsync(installer._getLocalArtifactMetadata(), { + message: "Error message", + }); +}); + + +test.serial("Installer: _writeLocalArtifactMetadata", async (t) => { + const {Installer, writeFileStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + // const writeJsonStub = sinon.stub(installer, "_writeJson").resolves("/path/to/file"); + writeFileStub.resolves("/path/to/file"); + + const fsWriteRsource = await installer._writeLocalArtifactMetadata("Id", {foo: "bar"}); + + t.is(fsWriteRsource, "/path/to/file"); + t.is(writeFileStub.callCount, 1, "_writeJson called"); + t.deepEqual( + writeFileStub.args, + [[path.join("/ui5Home/", "framework", "metadata", "Id.json"), "{\"foo\":\"bar\"}"]], + "_writeJson called with correct arguments" + ); +}); + +test.serial("Installer: _removeStaleRevisions", async (t) => { + const {Installer, rmStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + const pathForArtifact = sinon.stub(installer, "_getTargetPathForArtifact") + .onCall(0).resolves("/path/to/artifact/1") + .onCall(1).resolves("/path/to/artifact/2"); + + let metadata = { + staleRevisions: ["1", "2", "3", "4", "5"], + }; + + await installer._removeStaleRevisions("Id", metadata, {pkgName: "myPkg"}); + + t.is(metadata.staleRevisions.length, 3, "Metadata's staleRevisions cut"); + t.is(pathForArtifact.callCount, 2, "requested path for 2 artifacts"); + t.is(pathForArtifact.getCall(0).args[0].revision, "1", "Resolved revison 1"); + t.is(pathForArtifact.getCall(1).args[0].revision, "2", "Resolved revison 2"); + + t.is(await rmStub.getCall(0).args[0], "/path/to/artifact/1", "Rm artifact 1"); + t.is(await rmStub.getCall(1).args[0], "/path/to/artifact/2", "Rm artifact 2"); + + metadata = { + staleRevisions: ["1"], + }; + await installer._removeStaleRevisions("Id", metadata, {pkgName: "myPkg"}); + + t.deepEqual(metadata, {staleRevisions: ["1"]}, "Stale revisions stay untouched if 1 or less"); +}); + +test.serial("Installer: _pathExists", async (t) => { + const {Installer, statStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + statStub.resolves("/target/path/"); + const pathExists = await installer._pathExists(); + + t.is(pathExists, true, "Resolves the target path"); +}); + +test.serial("Installer: _pathExists file not found", async (t) => { + const {Installer, statStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + statStub.throws({code: "ENOENT"}); + const pathExists = await installer._pathExists(); + + t.is(pathExists, false, "Target path is not resolved"); +}); + +test.serial("Installer: _pathExists throws", async (t) => { + const {Installer, statStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + statStub.throws(() => { + throw new Error("Error message"); + }); + + await t.throwsAsync(installer._pathExists(), { + message: "Error message", + }); +}); diff --git a/packages/project/test/lib/ui5framework/maven/Registry.js b/packages/project/test/lib/ui5framework/maven/Registry.js new file mode 100644 index 00000000000..fd0c75c95fe --- /dev/null +++ b/packages/project/test/lib/ui5framework/maven/Registry.js @@ -0,0 +1,236 @@ +import test from "ava"; +import sinon from "sinon"; +import esmock from "esmock"; +import {promisify} from "node:util"; + +test.beforeEach(async (t) => { + t.context.pipelineStub = sinon.stub().resolves(); + t.context.streamPipelineStub = sinon.stub().resolves(); + + t.context.promisifyStub = sinon.stub(); + + t.context.fetchStub = sinon.stub().resolves({ + ok: true, + buffer: sinon.stub().resolves("Some metadata") + }); + + t.context.fsCreateWriteStreamStub = sinon.stub().resolves(); + + t.context.Registry = await esmock.p("../../../../lib/ui5Framework/maven/Registry.js", { + "make-fetch-happen": t.context.fetchStub, + "node:stream/promises": { + "pipeline": t.context.streamPipelineStub + }, + "node:util": { + "promisify": t.context.promisifyStub + }, + "graceful-fs": { + "createWriteStream": t.context.fsCreateWriteStreamStub + } + }); +}); + +test.afterEach.always((t) => { + sinon.restore(); + esmock.purge(t.context.Registry); +}); + +test.serial("Registry: constructor", (t) => { + const {Registry} = t.context; + + const reg = new Registry({ + cwd: "/cwd/", + endpointUrl: "some-url" + }); + t.true(reg instanceof Registry, "Constructor returns instance of class"); + t.is(reg._endpointUrl, "some-url/"); +}); + +test.serial("Registry: constructor requires 'endpointUrl'", (t) => { + const {Registry} = t.context; + + t.throws(() => { + new Registry({cwd: "/"}); + }, {message: `Registry: Missing parameter "endpointUrl"`}); +}); + +test.serial("Registry: requestMavenMetadata", async (t) => { + const {Registry, promisifyStub} = t.context; + + promisifyStub.callsFake((fn) => promisify(fn)); // Use the native promisify + + const reg = new Registry({ + cwd: "/cwd/", + endpointUrl: "some-url" + }); + + const resolvedMetadata = await reg.requestMavenMetadata({ + groupId: "ui5.corp", + artifactId: "great-thing", + version: "1.75.0-SNAPSHOT", + }); + + t.is(resolvedMetadata, "Some metadata"); +}); + +test.serial("Registry: requestMavenMetadata bad request", async (t) => { + const {Registry, fetchStub} = t.context; + + fetchStub.resolves({status: "500", statusText: "Bad request"}); + + const reg = new Registry({ + cwd: "/cwd/", + endpointUrl: "some-url" + }); + + await t.throwsAsync( + reg.requestMavenMetadata({ + groupId: "ui5.corp", + artifactId: "great-thing", + version: "1.75.0-SNAPSHOT", + }), + { + message: + "Failed to retrieve maven-metadata.xml for ui5.corp:great-thing:1.75.0-SNAPSHOT:" + + " [HTTP Error] 500 Bad request", + } + ); +}); + +test.serial("Registry: requestMavenMetadata not found", async (t) => { + const {Registry, fetchStub} = t.context; + + fetchStub.throws({code: "ENOTFOUND"}); + + const reg = new Registry({ + cwd: "/cwd/", + endpointUrl: "some-url" + }); + + await t.throwsAsync( + reg.requestMavenMetadata({ + groupId: "ui5.corp", + artifactId: "great-thing" + }), + { + message: + "Failed to connect to Maven registry at some-url/. Please check the correct endpoint URL" + + " is maintained and can be reached. ", + } + ); +}); + +test.serial("Registry: requestMavenMetadata No metadata/bad xml", async (t) => { + const {Registry, fetchStub, promisifyStub} = t.context; + + const reg = new Registry({ + cwd: "/cwd/", + endpointUrl: "some-url" + }); + + promisifyStub.callsFake((fn) => promisify(fn)); // Use the native promisify + + fetchStub.resolves({ + ok: true, + buffer: sinon.stub().resolves("") + }); + + await t.throwsAsync( + reg.requestMavenMetadata({ + groupId: "ui5.corp", + artifactId: "great-thing", + version: "1.75.0-SNAPSHOT", + }), + { + message: + "Failed to retrieve maven-metadata.xml for ui5.corp:great-thing:1.75.0-SNAPSHOT: " + + "Empty or unexpected response body:\n" + + "\n" + + "Parsed as:\n" + + "{\"metadata\":\"\"}" + } + ); +}); + +test.serial("Registry: requestArtifact", async (t) => { + const {Registry, fetchStub, streamPipelineStub, fsCreateWriteStreamStub} = t.context; + + fetchStub.resolves({ + ok: true, + body: "content body" + }); + + const reg = new Registry({ + cwd: "/cwd/", + endpointUrl: "some-url" + }); + + await reg.requestArtifact({ + groupId: "ui5.corp", + artifactId: "great-thing", + revision: "2", + extension: "jar" + }, "/target/path/"); + + t.is(streamPipelineStub.callCount, 1, "Pipeline is called"); + t.is(streamPipelineStub.args[0][0], "content body", "Pipeline called with response body as argument"); + t.is(fsCreateWriteStreamStub.callCount, 1, "writeStream called"); + t.deepEqual(fsCreateWriteStreamStub.args[0], ["/target/path/"], "writeStream called with the target path"); +}); + +test.serial("Registry: requestArtifact bad request", async (t) => { + const {Registry, fetchStub} = t.context; + + fetchStub.resolves({status: "500", statusText: "Bad request"}); + + const reg = new Registry({ + cwd: "/cwd/", + endpointUrl: "some-url" + }); + + await t.throwsAsync( + reg.requestArtifact({ + groupId: "ui5.corp", + artifactId: "great-thing", + revision: "2", + version: "2", + classifier: "classifier", + extension: "jar" + }, "/target/path/"), + { + message: + "Failed to retrieve artifact ui5.corp:great-thing:2:classifier:jar" + + " [HTTP Error] 500 Bad request", + } + ); +}); + +test.serial("Registry: requestArtifact not found", async (t) => { + const {Registry, fetchStub} = t.context; + + fetchStub.throws({code: "ENOTFOUND"}); + + const reg = new Registry({ + cwd: "/cwd/", + endpointUrl: "some-url" + }); + + await t.throwsAsync( + reg.requestArtifact( + { + groupId: "ui5.corp", + artifactId: "great-thing", + revision: "2", + version: "2", + classifier: "", + extension: "jar", + }, + "/target/path/" + ), + { + message: + "Failed to connect to Maven registry at some-url/. " + + "Please check the correct endpoint URL is maintained and can be reached. " + } + ); +}); diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index 43f7cb234dd..1f643e9d406 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -7,30 +7,40 @@ import {fileURLToPath} from "node:url"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); test.beforeEach(async (t) => { + t.context.mkdirpStub = sinon.stub().resolves(); t.context.rimrafStub = sinon.stub().resolves(); t.context.lockStub = sinon.stub(); t.context.unlockStub = sinon.stub(); t.context.renameStub = sinon.stub().yieldsAsync(); t.context.statStub = sinon.stub().yieldsAsync(); - t.context.mkdirStub = sinon.stub().yieldsAsync(); - t.context.Installer = await esmock.p("../../../../lib/ui5Framework/npm/Installer.js", { + t.context.AbstractResolver = await esmock.p("../../../../lib/ui5Framework/AbstractInstaller.js", { + "../../../../lib/utils/fs.js": { + mkdirp: t.context.mkdirpStub + }, "rimraf": t.context.rimrafStub, "lockfile": { lock: t.context.lockStub, unlock: t.context.unlockStub + } + }); + t.context.Installer = await esmock.p("../../../../lib/ui5Framework/npm/Installer.js", { + "../../../../lib/ui5Framework/AbstractInstaller.js": t.context.AbstractResolver, + "../../../../lib/utils/fs.js": { + mkdirp: t.context.mkdirpStub }, + "rimraf": t.context.rimrafStub, "graceful-fs": { rename: t.context.renameStub, - stat: t.context.statStub, - mkdir: t.context.mkdirStub + stat: t.context.statStub } }); }); test.afterEach.always((t) => { sinon.restore(); + esmock.purge(t.context.AbstractResolver); esmock.purge(t.context.Installer); }); @@ -51,7 +61,9 @@ test.serial("Installer: constructor requires 'cwd'", (t) => { const {Installer} = t.context; t.throws(() => { - new Installer({}); + new Installer({ + ui5HomeDir: "/ui5Home/" + }); }, {message: `Installer: Missing parameter "cwd"`}); }); @@ -74,13 +86,20 @@ test.serial("Installer: fetchPackageVersions", async (t) => { }); const registry = installer.getRegistry(); - const requestPackagePackumentStub = sinon.stub(registry, "requestPackagePackument") + const requestPackagePackumentStub = sinon.stub().resolves({ + versions: { + "1.0.0": {}, + "2.0.0": {}, + "3.0.0": {}, + }, + }); + sinon + .stub(registry, "_getPacote") .resolves({ - versions: { - "1.0.0": {}, - "2.0.0": {}, - "3.0.0": {} - } + pacote: { + packument: requestPackagePackumentStub + }, + pacoteOptions: {}, }); const packageVersions = await installer.fetchPackageVersions({pkgName: "@openui5/sap.ui.lib1"}); @@ -88,7 +107,7 @@ test.serial("Installer: fetchPackageVersions", async (t) => { t.deepEqual(packageVersions, ["1.0.0", "2.0.0", "3.0.0"], "Should resolve with expected versions"); t.is(requestPackagePackumentStub.callCount, 1, "requestPackagePackument should be called once"); - t.deepEqual(requestPackagePackumentStub.getCall(0).args, ["@openui5/sap.ui.lib1"], + t.is(requestPackagePackumentStub.getCall(0).args[0], "@openui5/sap.ui.lib1", "requestPackagePackument should be called with pkgName"); }); @@ -100,12 +119,25 @@ test.serial("Installer: _getLockPath", (t) => { ui5HomeDir: "/ui5Home/" }); - const lockPath = installer._getLockPath({ - pkgName: "@openui5/sap.ui.lib1", - version: "1.2.3" + const lockPath = installer._getLockPath("lo/ck-n@me"); + + t.is(lockPath, path.join("/ui5Home/", "framework", "locks", "lo-ck-n@me.lock")); +}); + +test.serial("Installer: _getLockPath with illegal characters", (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" }); - t.is(lockPath, path.join("/ui5Home/", "framework", "locks", "package-@openui5-sap.ui.lib1@1.2.3.lock")); + t.throws(() => installer._getLockPath("lock.näme"), { + message: "Illegal file name: lock.näme" + }); + t.throws(() => installer._getLockPath(".lock.name"), { + message: "Illegal file name: .lock.name" + }); }); test.serial("Installer: fetchPackageManifest (without existing package.json)", async (t) => { @@ -290,20 +322,15 @@ test.serial("Installer: _synchronize", async (t) => { const callback = sinon.stub().resolves(); - await installer._synchronize({ - pkgName: "@openui5/sap.ui.lib1", - version: "1.2.3" - }, callback); + await installer._synchronize("lock/name", callback); t.is(getLockPathStub.callCount, 1, "_getLockPath should be called once"); - t.deepEqual(getLockPathStub.getCall(0).args, [{pkgName: "@openui5/sap.ui.lib1", version: "1.2.3"}], + t.is(getLockPathStub.getCall(0).args[0], "lock/name", "_getLockPath should be called with expected args"); - t.is(t.context.mkdirStub.callCount, 1, "mkdir should be called once"); - t.is(t.context.mkdirStub.getCall(0).args[0], path.join("/ui5Home/", "framework", "locks"), - "mkdir should be called with expected path"); - t.deepEqual(t.context.mkdirStub.getCall(0).args[1], {recursive: true}, - "mkdir should be called with expected options"); + t.is(t.context.mkdirpStub.callCount, 1, "_mkdirp should be called once"); + t.deepEqual(t.context.mkdirpStub.getCall(0).args, [path.join("/ui5Home/", "framework", "locks")], + "_mkdirp should be called with expected args"); t.is(t.context.lockStub.callCount, 1, "lock should be called once"); t.is(t.context.lockStub.getCall(0).args[0], "/locks/lockfile.lock", @@ -343,10 +370,7 @@ test.serial("Installer: _synchronize should unlock when callback promise has res "unlock should not be called when the callback did not fully resolve, yet"); }); - await installer._synchronize({ - pkgName: "@openui5/sap.ui.lib1", - version: "1.2.3" - }, callback); + await installer._synchronize("lock/name", callback); t.is(callback.callCount, 1, "callback should be called once"); t.is(t.context.unlockStub.callCount, 1, "unlock should be called after _synchronize has resolved"); @@ -367,10 +391,7 @@ test.serial("Installer: _synchronize should throw when locking fails", async (t) const callback = sinon.stub(); await t.throwsAsync(async () => { - await installer._synchronize({ - pkgName: "@openui5/sap.ui.lib1", - version: "1.2.3" - }, callback); + await installer._synchronize("lock/name", callback); }, {message: "Locking error"}); t.is(callback.callCount, 0, "callback should not be called"); @@ -393,10 +414,7 @@ test.serial("Installer: _synchronize should still unlock when callback throws an const callback = sinon.stub().throws(new Error("Callback throws error")); await t.throwsAsync(async () => { - await installer._synchronize({ - pkgName: "@openui5/sap.ui.lib1", - version: "1.2.3" - }, callback); + await installer._synchronize("lock/name", callback); }, {message: "Callback throws error"}); t.is(callback.callCount, 1, "callback should be called once"); @@ -420,10 +438,7 @@ test.serial("Installer: _synchronize should still unlock when callback rejects w const callback = sinon.stub().rejects(new Error("Callback rejects with error")); await t.throwsAsync(async () => { - await installer._synchronize({ - pkgName: "@openui5/sap.ui.lib1", - version: "1.2.3" - }, callback); + await installer._synchronize("lock/name", callback); }, {message: "Callback rejects with error"}); t.is(callback.callCount, 1, "callback should be called once"); @@ -478,10 +493,8 @@ test.serial("Installer: installPackage with new package", async (t) => { "_packageJsonExists should be called with the correct arguments on second call"); t.is(synchronizeSpy.callCount, 1, "_synchronize should be called once"); - t.deepEqual(synchronizeSpy.getCall(0).args[0], { - pkgName: "myPackage", - version: "1.2.3" - }, "_synchronize should be called with the correct first argument"); + t.is(synchronizeSpy.getCall(0).args[0], "package-myPackage@1.2.3", + "_synchronize should be called with the correct first argument"); t.is(t.context.lockStub.callCount, 1, "lock should be called once"); t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); @@ -500,11 +513,11 @@ test.serial("Installer: installPackage with new package", async (t) => { t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); - t.is(t.context.mkdirStub.callCount, 2, "mkdir should be called twice"); - t.is(t.context.mkdirStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), - "mkdir should be called with the correct arguments on first call"); - t.is(t.context.mkdirStub.getCall(1).args[0], path.join("my", "package"), - "mkdir should be called with the correct arguments on second call"); + t.is(t.context.mkdirpStub.callCount, 2, "mkdirp should be called twice"); + t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + "mkdirp should be called with the correct arguments on first call"); + t.is(t.context.mkdirpStub.getCall(1).args[0], path.join("my", "package"), + "mkdirp should be called with the correct arguments on second call"); t.is(t.context.renameStub.callCount, 1, "fs.rename should be called once"); t.is(t.context.renameStub.getCall(0).args[0], "staging-dir-path", @@ -563,7 +576,7 @@ test.serial("Installer: installPackage with already installed package", async (t t.is(pathExistsStub.callCount, 0, "_pathExists should never be called"); t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); t.is(extractPackageStub.callCount, 0, "_extractPackage should never be called"); - t.is(t.context.mkdirStub.callCount, 0, "mkdir should never be called"); + t.is(t.context.mkdirpStub.callCount, 0, "mkdirp should never be called"); t.is(t.context.renameStub.callCount, 0, "fs.rename should never be called"); }); @@ -612,18 +625,16 @@ test.serial("Installer: installPackage with install already in progress", async "_packageJsonExists should be called with the correct arguments on second call"); t.is(synchronizeSpy.callCount, 1, "_synchronize should be called once"); - t.deepEqual(synchronizeSpy.getCall(0).args[0], { - pkgName: "myPackage", - version: "1.2.3" - }, "_synchronize should be called with the correct first argument"); + t.is(synchronizeSpy.getCall(0).args[0], "package-myPackage@1.2.3", + "_synchronize should be called with the correct first argument"); t.is(t.context.lockStub.callCount, 1, "lock should be called once"); t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); - t.is(t.context.mkdirStub.callCount, 1, "mkdir should be called once"); - t.is(t.context.mkdirStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), - "mkdir should be called with the correct arguments"); + t.is(t.context.mkdirpStub.callCount, 1, "mkdirp should be called once"); + t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + "mkdirp should be called with the correct arguments"); t.is(getStagingDirForPackageStub.callCount, 0, "_getStagingDirForPackage should never be called"); t.is(pathExistsStub.callCount, 0, "_pathExists should never be called"); @@ -678,10 +689,8 @@ test.serial("Installer: installPackage with new package and existing target and "_packageJsonExists should be called with the correct arguments on second call"); t.is(synchronizeSpy.callCount, 1, "_synchronize should be called once"); - t.deepEqual(synchronizeSpy.getCall(0).args[0], { - pkgName: "myPackage", - version: "1.2.3" - }, "_synchronize should be called with the correct first argument"); + t.is(synchronizeSpy.getCall(0).args[0], "package-myPackage@1.2.3", + "_synchronize should be called with the correct first argument"); t.is(t.context.lockStub.callCount, 1, "lock should be called once"); t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); @@ -705,11 +714,11 @@ test.serial("Installer: installPackage with new package and existing target and t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); - t.is(t.context.mkdirStub.callCount, 2, "mkdir should be called twice"); - t.is(t.context.mkdirStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), - "mkdir should be called with the correct arguments on first call"); - t.is(t.context.mkdirStub.getCall(1).args[0], path.join("my", "package"), - "mkdir should be called with the correct arguments on second call"); + t.is(t.context.mkdirpStub.callCount, 2, "mkdirp should be called twice"); + t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + "mkdirp should be called with the correct arguments on first call"); + t.is(t.context.mkdirpStub.getCall(1).args[0], path.join("my", "package"), + "mkdirp should be called with the correct arguments on second call"); t.is(t.context.renameStub.callCount, 1, "fs.rename should be called once"); t.is(t.context.renameStub.getCall(0).args[0], "staging-dir-path", @@ -770,3 +779,24 @@ test.serial("Installer: _pathExists - re-throws unexpected errors", async (t) => t.is(t.context.statStub.getCall(0).args[0], "my-path", "fs.stat should be called with correct arguments"); }); + + +test.serial("Installer: Registry throws", (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/" + }); + + installer._cwd = null; + t.throws(() => installer.getRegistry(), { + message: "Registry: Missing parameter \"cwd\"", + }, "Registry requires cwd"); + + installer._cwd = "/cwd/"; + installer._caCacheDir = null; + t.throws(() => installer.getRegistry(), { + message: "Registry: Missing parameter \"cacheDir\"", + }, "Registry requires cahceDir"); +}); From a2079c9828f1d576d573953de1700a85240c13f9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Apr 2023 15:21:47 +0200 Subject: [PATCH 0895/1272] [ui5-project][DEPENDENCY] Bump rimraf from 4.4.1 to 5.0.0 (#597) * [DEPENDENCY] Bump rimraf from 4.4.1 to 5.0.0 Bumps [rimraf](https://github.com/isaacs/rimraf) from 4.4.1 to 5.0.0. - [Release notes](https://github.com/isaacs/rimraf/releases) - [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/rimraf/compare/v4.4.1...v5.0.0) --- updated-dependencies: - dependency-name: rimraf dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] * [INTERNAL] rimraf: Migrate to named import --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Florian Vogt --- packages/project/lib/build/ProjectBuilder.js | 2 +- .../lib/ui5Framework/maven/Installer.js | 2 +- .../project/lib/ui5Framework/npm/Installer.js | 2 +- packages/project/package-lock.json | 84 +++++++++++++++---- packages/project/package.json | 2 +- .../test/lib/ui5framework/maven/Installer.js | 2 +- .../test/lib/ui5framework/npm/Installer.js | 8 +- 7 files changed, 81 insertions(+), 21 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index eaf72528616..63f10aa1cd5 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -1,4 +1,4 @@ -import rimraf from "rimraf"; +import {rimraf} from "rimraf"; import * as resourceFactory from "@ui5/fs/resourceFactory"; import BuildLogger from "@ui5/logger/internal/loggers/Build"; const log = new BuildLogger("ProjectBuilder"); diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js index 5fc5e3fded8..53a0a614b3b 100644 --- a/packages/project/lib/ui5Framework/maven/Installer.js +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -6,7 +6,7 @@ const StreamZip = _StreamZip.async; import {promisify} from "node:util"; import Registry from "./Registry.js"; import AbstractInstaller from "../AbstractInstaller.js"; -import rimraf from "rimraf"; +import {rimraf} from "rimraf"; const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const writeFile = promisify(fs.writeFile); diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index 49bd80bf1c9..8fb4799cca5 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -4,7 +4,7 @@ import fs from "graceful-fs"; import {promisify} from "node:util"; import Registry from "./Registry.js"; import AbstractInstaller from "../AbstractInstaller.js"; -import rimraf from "rimraf"; +import {rimraf} from "rimraf"; const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const rename = promisify(fs.rename); diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 40eb254cea5..fae6657b369 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -28,7 +28,7 @@ "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", - "rimraf": "^4.4.1", + "rimraf": "^5.0.0", "semver": "^7.4.0", "xml2js": "^0.5.0", "yesno": "^0.4.0" @@ -1171,6 +1171,54 @@ "npm": ">= 8" } }, + "node_modules/@ui5/builder/node_modules/glob": { + "version": "9.3.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", + "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "minimatch": "^8.0.2", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ui5/builder/node_modules/minimatch": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", + "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ui5/builder/node_modules/rimraf": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", + "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", + "dependencies": { + "glob": "^9.2.0" + }, + "bin": { + "rimraf": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@ui5/fs": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.2.tgz", @@ -8146,11 +8194,11 @@ } }, "node_modules/rimraf": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", - "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.0.tgz", + "integrity": "sha512-Jf9llaP+RvaEVS5nPShYFhtXIrb3LRKP281ib3So0KkeZKo2wIKyq0Re7TOSwanasA423PSr6CCIL4bP6T040g==", "dependencies": { - "glob": "^9.2.0" + "glob": "^10.0.0" }, "bin": { "rimraf": "dist/cjs/src/bin.js" @@ -8163,14 +8211,14 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "9.3.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", - "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.1.0.tgz", + "integrity": "sha512-daGobsYuT0G4hng24B5LbeLNvwKZYRhWyDl3RvqqAGZjJnCopWWK6PWnAGBY1M/vdA63QE+jddhZcYp+74Bq6Q==", "dependencies": { "fs.realpath": "^1.0.0", - "minimatch": "^8.0.2", - "minipass": "^4.2.4", - "path-scurry": "^1.6.1" + "minimatch": "^9.0.0", + "minipass": "^5.0.0", + "path-scurry": "^1.7.0" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -8180,9 +8228,9 @@ } }, "node_modules/rimraf/node_modules/minimatch": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", - "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", + "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -8193,6 +8241,14 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/run-applescript": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 68fc3571ca9..62e5e53ae2b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -136,7 +136,7 @@ "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", - "rimraf": "^4.4.1", + "rimraf": "^5.0.0", "semver": "^7.4.0", "xml2js": "^0.5.0", "yesno": "^0.4.0" diff --git a/packages/project/test/lib/ui5framework/maven/Installer.js b/packages/project/test/lib/ui5framework/maven/Installer.js index cd8c49d44cf..8ff6ae7f98d 100644 --- a/packages/project/test/lib/ui5framework/maven/Installer.js +++ b/packages/project/test/lib/ui5framework/maven/Installer.js @@ -3,7 +3,7 @@ import sinon from "sinon"; import esmock from "esmock"; import path from "node:path"; import fs from "graceful-fs"; -import rimraf from "rimraf"; +import {rimraf} from "rimraf"; test.beforeEach(async (t) => { t.context.mkdirpStub = sinon.stub().resolves(); diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index 1f643e9d406..33d3637c803 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -19,7 +19,9 @@ test.beforeEach(async (t) => { "../../../../lib/utils/fs.js": { mkdirp: t.context.mkdirpStub }, - "rimraf": t.context.rimrafStub, + "rimraf": { + rimraf: t.context.rimrafStub + }, "lockfile": { lock: t.context.lockStub, unlock: t.context.unlockStub @@ -30,7 +32,9 @@ test.beforeEach(async (t) => { "../../../../lib/utils/fs.js": { mkdirp: t.context.mkdirpStub }, - "rimraf": t.context.rimrafStub, + "rimraf": { + rimraf: t.context.rimrafStub + }, "graceful-fs": { rename: t.context.renameStub, stat: t.context.statStub From 1e6236fcfb2d105654493259df0fc0a932efe557 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 18 Apr 2023 13:50:52 +0000 Subject: [PATCH 0896/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 414 ++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 201 insertions(+), 219 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fae6657b369..458f3fb71b7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -21,7 +21,7 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "make-fetch-happen": "^11.0.3", + "make-fetch-happen": "^11.1.0", "node-stream-zip": "^1.15.0", "pacote": "^15.1.1", "pretty-hrtime": "^1.0.3", @@ -29,7 +29,7 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", "rimraf": "^5.0.0", - "semver": "^7.4.0", + "semver": "^7.5.0", "xml2js": "^0.5.0", "yesno": "^0.4.0" }, @@ -43,7 +43,7 @@ "eslint": "^8.38.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^41.1.1", + "eslint-plugin-jsdoc": "^41.1.2", "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -172,15 +172,6 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" - } - }, "node_modules/@babel/helper-compilation-targets/node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -190,12 +181,6 @@ "semver": "bin/semver.js" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, "node_modules/@babel/helper-environment-visitor": { "version": "7.18.9", "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", @@ -994,6 +979,15 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, "node_modules/@sigstore/protobuf-specs": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.1.0.tgz", @@ -1063,7 +1057,8 @@ }, "node_modules/@tootallnate/once": { "version": "2.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", "engines": { "node": ">= 10" } @@ -1956,9 +1951,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001478", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001478.tgz", - "integrity": "sha512-gMhDyXGItTHipJj2ApIvR+iVB5hd0KP3svMWWXDvZOmjzJJassGLMfxRkQCSYgGd2gtdL/ReeiyvMSFD1Ss6Mw==", + "version": "1.0.30001480", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001480.tgz", + "integrity": "sha512-q7cpoPPvZYgtyC4VaBSN0Bt+PJ4c4EYRf0DrduInOz2SkFpHD5p3LnvEpqBp7UnJn+8x1Ogl1s38saUxe+ihQQ==", "dev": true, "funding": [ { @@ -2566,7 +2561,6 @@ "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -3194,9 +3188,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.365", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.365.tgz", - "integrity": "sha512-FRHZO+1tUNO4TOPXmlxetkoaIY8uwHzd1kKopK/Gx2SKn1L47wJXWD44wxP5CGRyyP98z/c8e1eBzJrgPeiBOg==", + "version": "1.4.367", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.367.tgz", + "integrity": "sha512-mNuDxb+HpLhPGUKrg0hSxbTjHWw8EziwkwlJNkFUj3W60ypigLDRVz04vU+VRsJPi8Gub+FDhYUpuTm9xiEwRQ==", "dev": true }, "node_modules/emittery": { @@ -3407,9 +3401,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "41.1.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-41.1.1.tgz", - "integrity": "sha512-dfH97DKLGtQ5dgEMzd+GSUuY+xX/yyAfjML3O0pEWmMMpylsG6Ro65s4ziYXKmixiENYK9CTQxCVRGqZUFN2Mw==", + "version": "41.1.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-41.1.2.tgz", + "integrity": "sha512-MePJXdGiPW7AG06CU5GbKzYtKpoHwTq1lKijjq+RwL/cQkZtBZ59Zbv5Ep0RVxSMnq6242249/n+w4XrTZ1Afg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.37.0", @@ -4247,6 +4241,7 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dev": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -4276,6 +4271,7 @@ "version": "5.1.6", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -4434,7 +4430,8 @@ }, "node_modules/http-proxy-agent": { "version": "5.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", "dependencies": { "@tootallnate/once": "2", "agent-base": "6", @@ -5082,6 +5079,52 @@ "node": ">=8" } }, + "node_modules/jackspeak": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.0.3.tgz", + "integrity": "sha512-0Jud3OMUdMbrlr3PyUMKESq51LXVAB+a239Ywdvd+Kgxj3MaBRml/nVRxf8tQFyfthMjuRkxkv7Vg58pmIMfuQ==", + "dependencies": { + "cliui": "^7.0.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jackspeak/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/jackspeak/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/jackspeak/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/js-beautify": { "version": "1.14.7", "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.7.tgz", @@ -5184,7 +5227,8 @@ }, "node_modules/jsdoc/node_modules/escape-string-regexp": { "version": "2.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "engines": { "node": ">=8" } @@ -5433,10 +5477,12 @@ } }, "node_modules/lru-cache": { - "version": "7.14.1", - "license": "ISC", - "engines": { - "node": ">=12" + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" } }, "node_modules/magic-string": { @@ -5473,8 +5519,9 @@ } }, "node_modules/make-fetch-happen": { - "version": "11.0.3", - "license": "ISC", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.0.tgz", + "integrity": "sha512-7ChuOzCb1LzdQZrTy0ky6RsCoMYeM+Fh4cY0+4zsJVhNcH5Q3OJojLY1mGkD0xAhWB29lskECVb6ZopofwjldA==", "dependencies": { "agentkeepalive": "^4.2.1", "cacache": "^17.0.0", @@ -5809,9 +5856,15 @@ "node": ">=8" } }, + "node_modules/minipass-collect/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minipass-fetch": { - "version": "3.0.1", - "license": "MIT", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.2.tgz", + "integrity": "sha512-/ZpF1CQaWYqjbhfFgKNt3azxztEpc/JUPuMkqOgrnMQqcU8CbE409AUdJYTIWryl3PP5CBaTJZT71N49MXP/YA==", "dependencies": { "minipass": "^4.0.0", "minipass-sized": "^1.0.3", @@ -5846,6 +5899,11 @@ "node": ">=8" } }, + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minipass-json-stream": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", @@ -5866,6 +5924,11 @@ "node": ">=8" } }, + "node_modules/minipass-json-stream/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minipass-pipeline": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", @@ -5888,6 +5951,11 @@ "node": ">=8" } }, + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minipass-sized": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", @@ -5910,6 +5978,11 @@ "node": ">=8" } }, + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", @@ -5933,9 +6006,15 @@ "node": ">=8" } }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/mkdirp": { "version": "1.0.4", - "license": "MIT", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "bin": { "mkdirp": "bin/cmd.js" }, @@ -6219,6 +6298,14 @@ "node": ">=8" } }, + "node_modules/node-gyp/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "engines": { + "node": ">=12" + } + }, "node_modules/node-gyp/node_modules/make-fetch-happen": { "version": "10.2.1", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", @@ -6344,6 +6431,11 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, + "node_modules/node-gyp/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -6526,55 +6618,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.0.tgz", - "integrity": "sha512-7ChuOzCb1LzdQZrTy0ky6RsCoMYeM+Fh4cY0+4zsJVhNcH5Q3OJojLY1mGkD0xAhWB29lskECVb6ZopofwjldA==", - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^4.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.2.tgz", - "integrity": "sha512-/ZpF1CQaWYqjbhfFgKNt3azxztEpc/JUPuMkqOgrnMQqcU8CbE409AUdJYTIWryl3PP5CBaTJZT71N49MXP/YA==", - "dependencies": { - "minipass": "^4.0.0", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, "node_modules/npm-run-path": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", @@ -7217,7 +7260,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, "engines": { "node": ">=8" } @@ -7243,9 +7285,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.0.3.tgz", - "integrity": "sha512-cyjNRew29d4kbgnz1sjDqxg7qg8NW4s+HQzCGjeon7DV5T2yDije16W9HaUFV1dhVEMh+SjrOcK0TomBmf3Egg==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.0.tgz", + "integrity": "sha512-qFXQEwchrZcMVen2uIDceR8Tii6kCJak5rzDStfEM0qA3YLMswaxIEZO0DhIbJ3aqaJiDjt+3crlplOb0tDtKQ==", "engines": { "node": "14 || >=16.14" } @@ -7501,9 +7543,9 @@ } }, "node_modules/postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "version": "8.4.22", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.22.tgz", + "integrity": "sha512-XseknLAfRHzVWjCEtdviapiBtfLdgyzExD50Rg2ePaucEesyh8Wv4VPdW0nbyDa1ydbrAxV19jvMT4+LFmcNUA==", "dev": true, "funding": [ { @@ -7513,10 +7555,14 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "nanoid": "^3.3.4", + "nanoid": "^3.3.6", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" }, @@ -8210,16 +8256,36 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/rimraf/node_modules/glob": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.1.0.tgz", - "integrity": "sha512-daGobsYuT0G4hng24B5LbeLNvwKZYRhWyDl3RvqqAGZjJnCopWWK6PWnAGBY1M/vdA63QE+jddhZcYp+74Bq6Q==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.1.tgz", + "integrity": "sha512-ngom3wq2UhjdbmRE/krgkD8BQyi1KZ5l+D2dVm4+Yj+jJIBp74/ZGunL6gNGc/CYuQmvUBiavWEXIotRiv5R6A==", "dependencies": { + "foreground-child": "^3.1.0", "fs.realpath": "^1.0.0", + "jackspeak": "^2.0.3", "minimatch": "^9.0.0", "minipass": "^5.0.0", "path-scurry": "^1.7.0" }, + "bin": { + "glob": "dist/cjs/src/bin.js" + }, "engines": { "node": ">=16 || 14 >=14.17" }, @@ -8249,6 +8315,17 @@ "node": ">=8" } }, + "node_modules/rimraf/node_modules/signal-exit": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", + "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/run-applescript": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", @@ -8424,9 +8501,9 @@ } }, "node_modules/semver": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.4.0.tgz", - "integrity": "sha512-RgOxM8Mw+7Zus0+zcLEUn8+JfoLpj/huFTItQy2hsM4khuC1HYRDp0cU482Ewn/Fcy6bCjufD8vAj7voC66KQw==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", + "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -8454,6 +8531,11 @@ "node": ">=10" } }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/serialize-error": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", @@ -8490,7 +8572,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "dependencies": { "shebang-regex": "^3.0.0" }, @@ -8502,7 +8583,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, "engines": { "node": ">=8" } @@ -8534,55 +8614,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/sigstore/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/sigstore/node_modules/make-fetch-happen": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.0.tgz", - "integrity": "sha512-7ChuOzCb1LzdQZrTy0ky6RsCoMYeM+Fh4cY0+4zsJVhNcH5Q3OJojLY1mGkD0xAhWB29lskECVb6ZopofwjldA==", - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^4.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/sigstore/node_modules/minipass-fetch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.2.tgz", - "integrity": "sha512-/ZpF1CQaWYqjbhfFgKNt3azxztEpc/JUPuMkqOgrnMQqcU8CbE409AUdJYTIWryl3PP5CBaTJZT71N49MXP/YA==", - "dependencies": { - "minipass": "^4.0.0", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, "node_modules/sinon": { "version": "15.0.3", "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.3.tgz", @@ -9156,6 +9187,11 @@ "node": ">=8" } }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/temp-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-3.0.0.tgz", @@ -9217,9 +9253,9 @@ } }, "node_modules/terser": { - "version": "5.16.9", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.9.tgz", - "integrity": "sha512-HPa/FdTB9XGI2H1/keLFZHxl6WNvAI4YalHGtDQTlMnJcoqSab1UwL4l1hGEhs6/GmLHBZIg/YgB++jcbzoOEg==", + "version": "5.17.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.0.tgz", + "integrity": "sha512-3die3+pYW4mta4xF6K8Wtf7id8+oYyfqtAhjwzqY01+CfDSDMx/VA1Sp8sXWs5AVNIoAKoUfmp/gnPqRjBxuDA==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -9423,55 +9459,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/tuf-js/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/tuf-js/node_modules/make-fetch-happen": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.0.tgz", - "integrity": "sha512-7ChuOzCb1LzdQZrTy0ky6RsCoMYeM+Fh4cY0+4zsJVhNcH5Q3OJojLY1mGkD0xAhWB29lskECVb6ZopofwjldA==", - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^4.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/minipass-fetch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.2.tgz", - "integrity": "sha512-/ZpF1CQaWYqjbhfFgKNt3azxztEpc/JUPuMkqOgrnMQqcU8CbE409AUdJYTIWryl3PP5CBaTJZT71N49MXP/YA==", - "dependencies": { - "minipass": "^4.0.0", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -9694,7 +9681,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -9711,7 +9697,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, "engines": { "node": ">=8" } @@ -9720,7 +9705,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -9735,7 +9719,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -9746,14 +9729,12 @@ "node_modules/wrap-ansi/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/wrap-ansi/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -9835,9 +9816,10 @@ } }, "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true }, "node_modules/yaml": { "version": "1.10.2", diff --git a/packages/project/package.json b/packages/project/package.json index 62e5e53ae2b..9b2a1cb00f9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "make-fetch-happen": "^11.0.3", + "make-fetch-happen": "^11.1.0", "node-stream-zip": "^1.15.0", "pacote": "^15.1.1", "pretty-hrtime": "^1.0.3", @@ -137,7 +137,7 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", "rimraf": "^5.0.0", - "semver": "^7.4.0", + "semver": "^7.5.0", "xml2js": "^0.5.0", "yesno": "^0.4.0" }, @@ -151,7 +151,7 @@ "eslint": "^8.38.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^41.1.1", + "eslint-plugin-jsdoc": "^41.1.2", "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 1292c2caab4efd2ca1cb90eb1cf8f6a819921284 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 19 Apr 2023 10:30:01 +0200 Subject: [PATCH 0897/1272] [ui5-project][FEATURE] Add Configuration (#575) Introduce a new Configuration module for persisting UI5 Project specific settings. Complements: https://github.com/SAP/ui5-project/pull/570 JIRA: CPOUI5FOUNDATION-634 Co-authored-by: Yavor Ivanov --- packages/project/lib/config/Configuration.js | 93 +++++++++++++ .../Sapui5MavenSnapshotResolver.js | 2 +- .../lib/ui5Framework/maven/Installer.js | 2 +- packages/project/package.json | 1 + .../project/test/lib/config/Configuration.js | 122 ++++++++++++++++++ packages/project/test/lib/package-exports.js | 3 +- .../Sapui5MavenSnapshotResolver.js | 2 +- 7 files changed, 221 insertions(+), 4 deletions(-) create mode 100644 packages/project/lib/config/Configuration.js create mode 100644 packages/project/test/lib/config/Configuration.js diff --git a/packages/project/lib/config/Configuration.js b/packages/project/lib/config/Configuration.js new file mode 100644 index 00000000000..622e7c9d76b --- /dev/null +++ b/packages/project/lib/config/Configuration.js @@ -0,0 +1,93 @@ +import path from "node:path"; +import os from "node:os"; + +/** + * Provides basic configuration settings for @ui5/project/ui5Framework/* resolvers. + * Reads/writes configuration from/to ~/.ui5rc + * + * @public + * @class + * @alias @ui5/project/config/Configuration + */ +class Configuration { + #mavenSnapshotEndpointUrl; + + /** + * @param {object} configuration + * @param {string} [configuration.mavenSnapshotEndpointUrl] + */ + constructor({mavenSnapshotEndpointUrl}) { + this.#mavenSnapshotEndpointUrl = mavenSnapshotEndpointUrl; + } + + /** + * Maven Repository Snapshot URL. + * Used to download artifacts and packages from Maven's build-snapshots URL. + * + * @public + * @returns {string} + */ + getMavenSnapshotEndpointUrl() { + return this.#mavenSnapshotEndpointUrl; + } + + /** + * @public + * @returns {object} The configuration in a JSON format + */ + toJSON() { + return { + mavenSnapshotEndpointUrl: this.#mavenSnapshotEndpointUrl, + }; + } + + /** + * Creates Configuration from a JSON file + * + * @public + * @static + * @param {string} [filePath="~/.ui5rc"] Path to configuration JSON file + * @returns {Promise<@ui5/project/config/Configuration>} Configuration instance + */ + static async fromFile(filePath) { + filePath = filePath || path.resolve(path.join(os.homedir(), ".ui5rc")); + + const {default: fs} = await import("graceful-fs"); + const {promisify} = await import("node:util"); + const readFile = promisify(fs.readFile); + let config; + try { + const fileContent = await readFile(filePath); + config = JSON.parse(fileContent); + } catch (err) { + if (err.code === "ENOENT") { + // "File or directory does not exist" + config = {}; + } else { + throw err; + } + } + return new Configuration(config); + } + + /** + * Saves Configuration to a JSON file + * + * @public + * @static + * @param {@ui5/project/config/Configuration} config Configuration to save + * @param {string} [filePath="~/.ui5rc"] Path to configuration JSON file + * @returns {Promise} + */ + static async toFile(config, filePath) { + filePath = filePath || path.resolve(path.join(os.homedir(), ".ui5rc")); + + const {default: fs} = await import("graceful-fs"); + const {promisify} = await import("node:util"); + const writeFile = promisify(fs.writeFile); + + return writeFile(filePath, JSON.stringify(config.toJSON())); + } +} + +export default Configuration; diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js index 0d22e23c42f..04dab913703 100644 --- a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -227,7 +227,7 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { if (ok) { log.info(`Using Maven snapshot endpoint URL resolved from Maven configuration file: ${url}`); log.info(`Consider persisting this choice by executing the following command: ` + - `ui5 config set snapshotEndpointUrl ${url}`); + `ui5 config set mavenSnapshotEndpointUrl ${url}`); } else { log.verbose(`User rejected usage of the resolved URL`); url = null; diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js index 53a0a614b3b..ff47ba55f3d 100644 --- a/packages/project/lib/ui5Framework/maven/Installer.js +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -70,7 +70,7 @@ class Installer extends AbstractInstaller { reject(new Error( `Installer: Missing or empty Maven repository URL for snapshot consumption. ` + `Please configure the correct URL using the following command: ` + - `ui5 config set snapshotEndpointUrl https://registry.corp/vendor/build-snapshots/`)); + `ui5 config set mavenSnapshotEndpointUrl https://registry.corp/vendor/build-snapshots/`)); } resolve(new Registry({endpointUrl: snapshotEndpointUrl})); diff --git a/packages/project/package.json b/packages/project/package.json index 9b2a1cb00f9..a1f0ccdde90 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -18,6 +18,7 @@ ], "type": "module", "exports": { + "./config/Configuration": "./lib/config/Configuration.js", "./specifications/Specification": "./lib/specifications/Specification.js", "./specifications/SpecificationVersion": "./lib/specifications/SpecificationVersion.js", "./ui5Framework/Sapui5MavenSnapshotResolver": "./lib/ui5Framework/Sapui5MavenSnapshotResolver.js", diff --git a/packages/project/test/lib/config/Configuration.js b/packages/project/test/lib/config/Configuration.js new file mode 100644 index 00000000000..d6152220d54 --- /dev/null +++ b/packages/project/test/lib/config/Configuration.js @@ -0,0 +1,122 @@ +import test from "ava"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; + +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.homedirStub = sinon.stub().returns("~"); + t.context.promisifyStub = sinon.stub(); + t.context.resolveStub = sinon.stub().callsFake((path) => path); + t.context.joinStub = sinon.stub().callsFake((...args) => args.join("/")); + t.context.Configuration = await esmock.p("../../../lib/config/Configuration.js", { + "node:path": { + resolve: t.context.resolveStub, + join: t.context.joinStub + }, + "node:util": { + "promisify": t.context.promisifyStub + }, + "node:os": { + "homedir": t.context.homedirStub + } + }); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); + esmock.purge(t.context.Configuration); +}); + +test.serial("Build configuration with defaults", (t) => { + const {Configuration} = t.context; + + const config = new Configuration({}); + + t.deepEqual(config.toJSON(), { + mavenSnapshotEndpointUrl: undefined + }); +}); + + +test.serial("Overwrite defaults defaults", (t) => { + const {Configuration} = t.context; + + const params = { + mavenSnapshotEndpointUrl: "https://snapshot.url" + }; + + const config = new Configuration(params); + + t.deepEqual(config.toJSON(), params); +}); + +test.serial("Check getters", (t) => { + const {Configuration} = t.context; + + const params = { + mavenSnapshotEndpointUrl: "https://snapshot.url" + }; + + const config = new Configuration(params); + + t.is(config.getMavenSnapshotEndpointUrl(), params.mavenSnapshotEndpointUrl); +}); + + +test.serial("fromFile", async (t) => { + const fromFile = t.context.Configuration.fromFile; + const {promisifyStub, sinon} = t.context; + + const ui5rcContents = { + mavenSnapshotEndpointUrl: "https://snapshot.url" + }; + const responseStub = sinon.stub().resolves(JSON.stringify(ui5rcContents)); + promisifyStub.callsFake(() => responseStub); + + const config = await fromFile("/custom/path/.ui5rc"); + + t.deepEqual(config.toJSON(), ui5rcContents); +}); + +test.serial("fromFile: configuration file not found- fallback to default config", async (t) => { + const {promisifyStub, sinon, Configuration} = t.context; + const fromFile = Configuration.fromFile; + + const responseStub = sinon.stub().throws({code: "ENOENT"}); + promisifyStub.callsFake(() => responseStub); + + const config = await fromFile("/non-existing/path/.ui5rc"); + + t.is(config instanceof Configuration, true, "Created a default configuration"); + t.is(config.getMavenSnapshotEndpointUrl(), undefined, "Dafault settings"); +}); + +test.serial("fromFile: throws", async (t) => { + const fromFile = t.context.Configuration.fromFile; + const {promisifyStub, sinon} = t.context; + + const responseStub = sinon.stub().throws(new Error("Error")); + promisifyStub.callsFake(() => responseStub); + + await t.throwsAsync(fromFile("/non-existing/path/.ui5rc"), { + message: "Error" + }); +}); + +test.serial("toFile", async (t) => { + const {promisifyStub, sinon, Configuration} = t.context; + const toFile = Configuration.toFile; + + const writeStub = sinon.stub().resolves(); + promisifyStub.callsFake(() => writeStub); + + const config = new Configuration({mavenSnapshotEndpointUrl: "https://registry.corp/vendor/build-snapshots/"}); + await toFile(config, "/path/to/save/.ui5rc"); + + t.deepEqual( + writeStub.getCall(0).args, + ["/path/to/save/.ui5rc", JSON.stringify(config.toJSON())], + "Write config to path" + ); +}); diff --git a/packages/project/test/lib/package-exports.js b/packages/project/test/lib/package-exports.js index 9f91f1e1010..c3c7284d698 100644 --- a/packages/project/test/lib/package-exports.js +++ b/packages/project/test/lib/package-exports.js @@ -13,11 +13,12 @@ test("export of package.json", (t) => { // Check number of definied exports test("check number of exports", (t) => { const packageJson = require("@ui5/project/package.json"); - t.is(Object.keys(packageJson.exports).length, 11); + t.is(Object.keys(packageJson.exports).length, 12); }); // Public API contract (exported modules) [ + "config/Configuration", "specifications/Specification", "specifications/SpecificationVersion", "ui5Framework/Openui5Resolver", diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js index f1489042676..ae11523bc65 100644 --- a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js @@ -282,7 +282,7 @@ test.serial("_resolveSnapshotEndpointUrlFromMaven", async (t) => { "Using Maven snapshot endpoint URL resolved from Maven configuration file: /build-snapshots/"); t.is(loggerInfo.getCall(1).args[0], "Consider persisting this choice by executing the following command: " + - "ui5 config set snapshotEndpointUrl /build-snapshots/"); + "ui5 config set mavenSnapshotEndpointUrl /build-snapshots/"); }); test.serial("_resolveSnapshotEndpointUrlFromMaven fails", async (t) => { From 3c449b30bd37782e7772e0b66199647c774cf1f5 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 3 Mar 2023 14:43:07 +0100 Subject: [PATCH 0898/1272] [ui5-project][INTERNAL] graph: Add TODO about workspaceName param default --- packages/project/lib/graph/graph.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/project/lib/graph/graph.js b/packages/project/lib/graph/graph.js index 61a1c9dc3ba..3cfe3a843de 100644 --- a/packages/project/lib/graph/graph.js +++ b/packages/project/lib/graph/graph.js @@ -41,7 +41,8 @@ const log = getLogger("generateProjectGraph"); export async function graphFromPackageDependencies({ cwd, rootConfiguration, rootConfigPath, versionOverride, resolveFrameworkDependencies = true, - workspaceName, workspaceConfiguration, workspaceConfigPath = "ui5-workspace.yaml" + workspaceName /* TODO 4.0: default workspaceName to "default" ? */, + workspaceConfiguration, workspaceConfigPath = "ui5-workspace.yaml" }) { log.verbose(`Creating project graph using npm provider...`); const { From 0c66d5dbaf028e65bba563d1702981173bec71c2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 19 Apr 2023 11:00:04 +0200 Subject: [PATCH 0899/1272] [ui5-project][INTERNAL] ui5Framework.integration: Fix mkdirp mock Caller moved to new AbstractInstaller class, so the mock needs to be adapted --- .../graph/helpers/ui5Framework.integration.js | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index 184e45f2b0f..e15730d48b8 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -48,19 +48,27 @@ test.beforeEach(async (t) => { }, }); - t.context.Installer = await esmock.p("../../../../lib/ui5Framework/npm/Installer.js", { + const AbstractInstaller = await esmock.p("../../../../lib/ui5Framework/AbstractInstaller.js", { "@ui5/logger": ui5Logger, - "graceful-fs": { - rename: sinon.stub().yieldsAsync(), - }, "../../../../lib/utils/fs.js": { - mkdir: sinon.stub().resolves() + mkdirp: sinon.stub().resolves() }, "lockfile": { lock: sinon.stub().yieldsAsync(), unlock: sinon.stub().yieldsAsync() + } + }); + + t.context.Installer = await esmock.p("../../../../lib/ui5Framework/npm/Installer.js", { + "@ui5/logger": ui5Logger, + "graceful-fs": { + rename: sinon.stub().yieldsAsync(), + }, + "../../../../lib/utils/fs.js": { + mkdirp: sinon.stub().resolves() }, - "../../../../lib/ui5Framework/npm/Registry.js": t.context.Registry + "../../../../lib/ui5Framework/npm/Registry.js": t.context.Registry, + "../../../../lib/ui5Framework/AbstractInstaller.js": AbstractInstaller }); t.context.AbstractResolver = await esmock.p("../../../../lib/ui5Framework/AbstractResolver.js", { From 0be32995f4453476a27a1e4464bfc6e5fd8657ff Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 19 Apr 2023 15:32:13 +0200 Subject: [PATCH 0900/1272] [ui5-project][INTERNAL] Configuration: Improve error handling, improve test coverage --- packages/project/lib/config/Configuration.js | 20 +++++++++-- .../project/test/lib/config/Configuration.js | 34 ++++++++++++++++--- 2 files changed, 47 insertions(+), 7 deletions(-) diff --git a/packages/project/lib/config/Configuration.js b/packages/project/lib/config/Configuration.js index 622e7c9d76b..886cc3682f2 100644 --- a/packages/project/lib/config/Configuration.js +++ b/packages/project/lib/config/Configuration.js @@ -58,13 +58,20 @@ class Configuration { let config; try { const fileContent = await readFile(filePath); - config = JSON.parse(fileContent); + if (!fileContent.length) { + config = {}; + } else { + config = JSON.parse(fileContent); + } } catch (err) { if (err.code === "ENOENT") { // "File or directory does not exist" config = {}; } else { - throw err; + throw new Error( + `Failed to read UI5 Tooling configuration from ${filePath}: ${err.message}`, { + cause: err + }); } } return new Configuration(config); @@ -86,7 +93,14 @@ class Configuration { const {promisify} = await import("node:util"); const writeFile = promisify(fs.writeFile); - return writeFile(filePath, JSON.stringify(config.toJSON())); + try { + return writeFile(filePath, JSON.stringify(config.toJSON())); + } catch (err) { + throw new Error( + `Failed to write UI5 Tooling configuration to ${filePath}: ${err.message}`, { + cause: err + }); + } } } diff --git a/packages/project/test/lib/config/Configuration.js b/packages/project/test/lib/config/Configuration.js index d6152220d54..911d17c9eac 100644 --- a/packages/project/test/lib/config/Configuration.js +++ b/packages/project/test/lib/config/Configuration.js @@ -79,7 +79,7 @@ test.serial("fromFile", async (t) => { t.deepEqual(config.toJSON(), ui5rcContents); }); -test.serial("fromFile: configuration file not found- fallback to default config", async (t) => { +test.serial("fromFile: configuration file not found - fallback to default config", async (t) => { const {promisifyStub, sinon, Configuration} = t.context; const fromFile = Configuration.fromFile; @@ -89,7 +89,21 @@ test.serial("fromFile: configuration file not found- fallback to default config" const config = await fromFile("/non-existing/path/.ui5rc"); t.is(config instanceof Configuration, true, "Created a default configuration"); - t.is(config.getMavenSnapshotEndpointUrl(), undefined, "Dafault settings"); + t.is(config.getMavenSnapshotEndpointUrl(), undefined, "Default settings"); +}); + + +test.serial("fromFile: empty configuration file - fallback to default config", async (t) => { + const {promisifyStub, sinon, Configuration} = t.context; + const fromFile = Configuration.fromFile; + + const responseStub = sinon.stub().resolves(""); + promisifyStub.callsFake(() => responseStub); + + const config = await fromFile("/non-existing/path/.ui5rc"); + + t.is(config instanceof Configuration, true, "Created a default configuration"); + t.is(config.getMavenSnapshotEndpointUrl(), undefined, "Default settings"); }); test.serial("fromFile: throws", async (t) => { @@ -99,8 +113,8 @@ test.serial("fromFile: throws", async (t) => { const responseStub = sinon.stub().throws(new Error("Error")); promisifyStub.callsFake(() => responseStub); - await t.throwsAsync(fromFile("/non-existing/path/.ui5rc"), { - message: "Error" + await t.throwsAsync(fromFile(), { + message: `Failed to read UI5 Tooling configuration from ~/.ui5rc: Error` }); }); @@ -120,3 +134,15 @@ test.serial("toFile", async (t) => { "Write config to path" ); }); + +test.serial("toFile: throws", async (t) => { + const {promisifyStub, sinon, Configuration} = t.context; + const toFile = Configuration.toFile; + + const responseStub = sinon.stub().throws(new Error("Error")); + promisifyStub.callsFake(() => responseStub); + + await t.throwsAsync(toFile(new Configuration({})), { + message: "Failed to write UI5 Tooling configuration to ~/.ui5rc: Error" + }); +}); From 6179c7453387aeb169e32a347522a3de5b187b5e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 19 Apr 2023 15:32:33 +0200 Subject: [PATCH 0901/1272] [ui5-project][INTERNAL] utils/fs: Add test --- packages/project/test/lib/utils/fs.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 packages/project/test/lib/utils/fs.js diff --git a/packages/project/test/lib/utils/fs.js b/packages/project/test/lib/utils/fs.js new file mode 100644 index 00000000000..3c465342924 --- /dev/null +++ b/packages/project/test/lib/utils/fs.js @@ -0,0 +1,14 @@ +import test from "ava"; +import path from "node:path"; +import {stat} from "node:fs/promises"; +import {fileURLToPath} from "node:url"; +import {mkdirp} from "../../../lib/utils/fs.js"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +test("mkdirp: Create directory hierarchy", async (t) => { + const targetPath = path.join(__dirname, "..", "..", "tmp", "mkdir-test", "this", "is", "a", "directory"); + await mkdirp(targetPath); + const res = await stat(targetPath); + t.truthy(res, "Target directory has been created"); +}); From d67a5ca8df199916a28b3af40efafab20c1683c3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 19 Apr 2023 15:53:47 +0200 Subject: [PATCH 0902/1272] [ui5-project][INTERNAL] Sapui5MavenSnapshotResolver: Integrate config/Configuration, extend tests --- .../Sapui5MavenSnapshotResolver.js | 66 ++++++--- .../lib/ui5Framework/maven/Installer.js | 3 +- .../lib/ui5Framework/maven/Registry.js | 8 +- .../Sapui5MavenSnapshotResolver.js | 131 ++++++++++++++++-- .../test/lib/ui5framework/maven/Registry.js | 10 +- 5 files changed, 178 insertions(+), 40 deletions(-) diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js index 04dab913703..7355ba3ea4c 100644 --- a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -152,12 +152,37 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { // user for confirmation. In some cases where the resources are already cached, // this is not necessary and we could skip it as a real request to the repository won't // be made. - return Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrlFromMaven; + return Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrl; } else { return () => Promise.resolve(snapshotEndpointUrl); } } + /** + * Read the Maven repository snapshot endpoint URL from the central + * UI5 Tooling configuration, with a fallback to central Maven configuration (is existing) + * + * @returns {Promise} The resolved snapshotEndpointUrl + */ + static async _resolveSnapshotEndpointUrl() { + const {default: Configuration} = await import("../config/Configuration.js"); + const config = await Configuration.fromFile(); + let url = config.getMavenSnapshotEndpointUrl(); + if (url) { + log.verbose(`Using UI5 Tooling configuration for mavenSnapshotEndpointUrl: ${url}`); + } else { + log.verbose(`No mavenSnapshotEndpointUrl configuration found`); + url = await Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrlFromMaven(); + if (url) { + log.verbose(`Updating UI5 Tooling configuration with new mavenSnapshotEndpointUrl: ${url}`); + const configJson = config.toJSON(); + configJson.mavenSnapshotEndpointUrl = url; + await Configuration.toFile(new Configuration(configJson)); + } + } + return url; + } + /** * Tries to detect whether ~/.m2/settings.xml exist, and if so, whether * the snapshot.build URL is extracted from there @@ -173,7 +198,6 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { return null; } - let skipConfirmation = false; settingsXML = settingsXML || path.resolve(path.join(os.homedir(), ".m2", "settings.xml")); @@ -201,40 +225,36 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { snapshotBuildChunk?.pluginRepositories?.[0]?.pluginRepository?.[0]?.url?.[0]?._; if (!url) { - skipConfirmation = true; log.verbose(`"snapshot.build" attribute could not be found in ${settingsXML}`); + return null; } } catch (err) { - skipConfirmation = true; if (err.code === "ENOENT") { // "File or directory does not exist" log.verbose(`File does not exist: ${settingsXML}`); } else { log.warning(`Failed to read Maven configuration file from ${settingsXML}: ${err.message}`); } + return null; } - if (!skipConfirmation) { - const {default: yesno} = await import("yesno"); - const ok = await yesno({ - question: - "A Maven snapshot endpoint URL is required for consuming snapshot versions of UI5 libraries. " + - `The following URL has been found in a Maven configuration file at ${settingsXML}: '${url}'. ` + - `Continue with this endpoint URL? (yes)`, - defaultValue: true, - }); + const {default: yesno} = await import("yesno"); + const ok = await yesno({ + question: + "\nA Maven repository endpoint URL is required for consuming snapshot versions of UI5 libraries.\n" + + "You can configure one using the command: 'ui5 config set mavenSnapshotEndpointUrl '\n\n" + + `The following URL has been found in a Maven configuration file at ${settingsXML}:\n${url}\n\n` + + `Continue with this endpoint URL and remember it for the future? (yes)`, + defaultValue: true, + }); - if (ok) { - log.info(`Using Maven snapshot endpoint URL resolved from Maven configuration file: ${url}`); - log.info(`Consider persisting this choice by executing the following command: ` + - `ui5 config set mavenSnapshotEndpointUrl ${url}`); - } else { - log.verbose(`User rejected usage of the resolved URL`); - url = null; - } + if (ok) { + log.verbose(`Using Maven snapshot endpoint URL resolved from Maven configuration file: ${url}`); + return url; + } else { + log.verbose(`User rejected usage of the resolved URL`); + return null; } - - return url; } } diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js index ff47ba55f3d..1ac4152761e 100644 --- a/packages/project/lib/ui5Framework/maven/Installer.js +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -69,8 +69,9 @@ class Installer extends AbstractInstaller { if (!snapshotEndpointUrl) { reject(new Error( `Installer: Missing or empty Maven repository URL for snapshot consumption. ` + + `This URL is required for consuming snapshot versions of UI5 libraries. ` + `Please configure the correct URL using the following command: ` + - `ui5 config set mavenSnapshotEndpointUrl https://registry.corp/vendor/build-snapshots/`)); + `'ui5 config set mavenSnapshotEndpointUrl '`)); } resolve(new Registry({endpointUrl: snapshotEndpointUrl})); diff --git a/packages/project/lib/ui5Framework/maven/Registry.js b/packages/project/lib/ui5Framework/maven/Registry.js index 52df8ea1430..22e48fe97e8 100644 --- a/packages/project/lib/ui5Framework/maven/Registry.js +++ b/packages/project/lib/ui5Framework/maven/Registry.js @@ -61,7 +61,9 @@ class Registry { if (err.code === "ENOTFOUND") { throw new Error( `Failed to connect to Maven registry at ${this._endpointUrl}. ` + - `Please check the correct endpoint URL is maintained and can be reached. `); + `Please check the correct endpoint URL is maintained and can be reached. ` + + `You can change the configured URL using the following command: ` + + `'ui5 config set mavenSnapshotEndpointUrl '`); // TODO: Allow cacheMode to be set from outside // `You may be able to continue working offline. For this, set --cache-mode to "force"`); @@ -94,7 +96,9 @@ class Registry { if (err.code === "ENOTFOUND") { throw new Error( `Failed to connect to Maven registry at ${this._endpointUrl}. ` + - `Please check the correct endpoint URL is maintained and can be reached. `); + `Please check the correct endpoint URL is maintained and can be reached. ` + + `You can change the configured URL using the following command: ` + + `'ui5 config set mavenSnapshotEndpointUrl '`); // TODO: Allow cacheMode to be set from outside // `You may be able to continue working offline. For this, set --cache-mode to "force"`); diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js index ae11523bc65..0531db56922 100644 --- a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js @@ -25,6 +25,11 @@ test.beforeEach(async (t) => { t.context.loggerWarn = sinon.stub(); t.context.loggerInfo = sinon.stub(); + t.context.Configuration = await esmock.p("../../../lib/config/Configuration.js", {}); + t.context.configFromFile = sinon.stub(t.context.Configuration, "fromFile") + .resolves(new t.context.Configuration({})); + t.context.configToFile = sinon.stub(t.context.Configuration, "toFile").resolves(); + t.context.Sapui5MavenSnapshotResolver = await esmock.p("../../../lib/ui5Framework/Sapui5MavenSnapshotResolver.js", { "../../../lib/ui5Framework/maven/Installer": t.context.InstallerStub, "yesno": t.context.yesnoStub, @@ -37,7 +42,8 @@ test.beforeEach(async (t) => { warning: t.context.loggerWarn, info: t.context.loggerInfo, }) - } + }, + "../../../lib/config/Configuration": t.context.Configuration }); t.context.originalIsTty = process.stdout.isTTY; @@ -251,9 +257,87 @@ test.serial("Sapui5MavenSnapshotResolver: Static fetchAllVersions without option }], "Installer should be called with expected arguments"); }); +test.serial("_createSnapshotEndpointUrlCallback: Environment variable", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + const createSnapshotEndpointUrlCallback = Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback; + + const endpointCallback = await createSnapshotEndpointUrlCallback(); + + t.is(await endpointCallback(), "_SNAPSHOT_URL_", + "Returned a callback resolving to value of env variable"); +}); + +test.serial("_createSnapshotEndpointUrlCallback: Parameter", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + const createSnapshotEndpointUrlCallback = Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback; + + const endpointCallback = await createSnapshotEndpointUrlCallback("my url"); + + t.is(await endpointCallback(), "my url", + "Returned a callback resolving to value of env variable"); +}); + +test.serial("_createSnapshotEndpointUrlCallback: Fallback to configuration files", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + const createSnapshotEndpointUrlCallback = Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback; + + delete process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT; // Delete env variable for this test + const resolveUrlStub = sinon.stub(Sapui5MavenSnapshotResolver, "_resolveSnapshotEndpointUrl").resolves("🐱"); + + const endpointCallback = await createSnapshotEndpointUrlCallback(); + + t.is(endpointCallback, resolveUrlStub, "Returned correct callback"); + t.is(await endpointCallback(), "🐱", "Callback can be executed correctly"); +}); + +test.serial("_resolveSnapshotEndpointUrl: From configuration", async (t) => { + const {configFromFile, configToFile, Configuration, Sapui5MavenSnapshotResolver} = t.context; + const resolveSnapshotEndpointUrl = Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrl; + + configFromFile.resolves(new Configuration({mavenSnapshotEndpointUrl: "config-url"})); + const fromMavenStub = sinon.stub(Sapui5MavenSnapshotResolver, "_resolveSnapshotEndpointUrlFromMaven").resolves(); + + const endpoint = await resolveSnapshotEndpointUrl(); + + t.is(endpoint, "config-url", "Returned URL extracted from UI5 Tooling configuration"); + t.is(configFromFile.callCount, 1, "Configuration has been read once"); + t.is(configToFile.callCount, 0, "Configuration has not been written"); + t.is(fromMavenStub.callCount, 0, "Maven configuration has not been requested"); +}); + +test.serial("_resolveSnapshotEndpointUrl: Maven fallback with config update", async (t) => { + const {configFromFile, configToFile, Sapui5MavenSnapshotResolver} = t.context; + const resolveSnapshotEndpointUrl = Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrl; + + sinon.stub(Sapui5MavenSnapshotResolver, "_resolveSnapshotEndpointUrlFromMaven").resolves("maven-url"); + + const endpoint = await resolveSnapshotEndpointUrl(); + + t.is(endpoint, "maven-url", "Returned URL extracted from Maven settings.xml"); + t.is(configFromFile.callCount, 1, "Configuration has been read once"); + t.is(configToFile.callCount, 1, "Configuration has been written once"); + t.deepEqual(configToFile.firstCall.firstArg.toJSON(), { + mavenSnapshotEndpointUrl: "maven-url" + }, "Correct configuration has been written"); +}); + +test.serial("_resolveSnapshotEndpointUrl: Maven fallback without config update", async (t) => { + const {configFromFile, configToFile, Sapui5MavenSnapshotResolver} = t.context; + const resolveSnapshotEndpointUrl = Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrl; + + // Resolving with null + sinon.stub(Sapui5MavenSnapshotResolver, "_resolveSnapshotEndpointUrlFromMaven").resolves(null); + + const endpoint = await resolveSnapshotEndpointUrl(); + + t.is(endpoint, null, "No URL resolved"); + t.is(configFromFile.callCount, 1, "Configuration has been read once"); + t.is(configToFile.callCount, 0, "Configuration has not been written"); +}); + test.serial("_resolveSnapshotEndpointUrlFromMaven", async (t) => { const resolveSnapshotEndpointUrl = t.context.Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrlFromMaven; - const {promisifyStub, yesnoStub, loggerInfo} = t.context; + const {promisifyStub, yesnoStub} = t.context; process.stdout.isTTY = true; @@ -277,12 +361,34 @@ test.serial("_resolveSnapshotEndpointUrlFromMaven", async (t) => { const endpoint = await resolveSnapshotEndpointUrl(); t.is(endpoint, "/build-snapshots/", "URL Extracted from settings.xml"); +}); + +test.serial("_resolveSnapshotEndpointUrlFromMaven: No snapshot.build attribute", async (t) => { + const resolveSnapshotEndpointUrl = t.context.Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrlFromMaven; + const {promisifyStub, yesnoStub} = t.context; + + process.stdout.isTTY = true; - t.is(loggerInfo.getCall(0).args[0], - "Using Maven snapshot endpoint URL resolved from Maven configuration file: /build-snapshots/"); - t.is(loggerInfo.getCall(1).args[0], - "Consider persisting this choice by executing the following command: " + - "ui5 config set mavenSnapshotEndpointUrl /build-snapshots/"); + const readStub = sinon.stub().resolves(` + + + deploy.build + + + artifactory + /build-snapshots/ + + + + + `); + promisifyStub.callsFake(() => readStub); + yesnoStub.resolves(true); + + const endpoint = await resolveSnapshotEndpointUrl(); + + t.is(endpoint, null, "No URL Extracted from settings.xml"); }); test.serial("_resolveSnapshotEndpointUrlFromMaven fails", async (t) => { @@ -310,7 +416,9 @@ test.serial("_resolveSnapshotEndpointUrlFromMaven fails", async (t) => { `); promisifyStub.callsFake(() => readStub); - await resolveSnapshotEndpointUrl(".m2/settings.xml"); + let endpoint; + endpoint = await resolveSnapshotEndpointUrl(".m2/settings.xml"); + t.is(endpoint, null, "No endpoint resolved"); t.is( loggerVerbose.getCall(0).args[0], "Attempting to resolve snapshot endpoint URL from Maven configuration file at .m2/settings.xml..." @@ -322,7 +430,8 @@ test.serial("_resolveSnapshotEndpointUrlFromMaven fails", async (t) => { loggerVerbose.reset(); loggerWarn.reset(); - await resolveSnapshotEndpointUrl("settings.xml"); + endpoint = await resolveSnapshotEndpointUrl("settings.xml"); + t.is(endpoint, null, "No endpoint resolved"); t.is( loggerVerbose.getCall(0).args[0], "Attempting to resolve snapshot endpoint URL from Maven configuration file at settings.xml..." @@ -335,9 +444,9 @@ test.serial("_resolveSnapshotEndpointUrlFromMaven fails", async (t) => { loggerVerbose.reset(); loggerWarn.reset(); yesnoStub.resolves(false); - const endpoint = await resolveSnapshotEndpointUrl(); + endpoint = await resolveSnapshotEndpointUrl(); - t.falsy(endpoint, "URL is not extracted after user rejection"); + t.is(endpoint, null, "URL is not extracted after user rejection"); t.is( loggerVerbose.getCall(1).args[0], "User rejected usage of the resolved URL" diff --git a/packages/project/test/lib/ui5framework/maven/Registry.js b/packages/project/test/lib/ui5framework/maven/Registry.js index fd0c75c95fe..51a63e10f5d 100644 --- a/packages/project/test/lib/ui5framework/maven/Registry.js +++ b/packages/project/test/lib/ui5framework/maven/Registry.js @@ -114,8 +114,10 @@ test.serial("Registry: requestMavenMetadata not found", async (t) => { }), { message: - "Failed to connect to Maven registry at some-url/. Please check the correct endpoint URL" + - " is maintained and can be reached. ", + "Failed to connect to Maven registry at some-url/. " + + "Please check the correct endpoint URL is maintained and can be reached. "+ + "You can change the configured URL " + + "using the following command: 'ui5 config set mavenSnapshotEndpointUrl '" } ); }); @@ -230,7 +232,9 @@ test.serial("Registry: requestArtifact not found", async (t) => { { message: "Failed to connect to Maven registry at some-url/. " + - "Please check the correct endpoint URL is maintained and can be reached. " + "Please check the correct endpoint URL is maintained and can be reached. "+ + "You can change the configured URL " + + "using the following command: 'ui5 config set mavenSnapshotEndpointUrl '" } ); }); From 5a4405f80da18015fd394995d5f21ca7168b2bc3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 19 Apr 2023 17:43:20 +0200 Subject: [PATCH 0903/1272] [ui5-project][INTERNAL] maven/Installer: Remove superfluous parameters, minor corrections Only a limited number of Installer parameters shall be configurable. Remove the parameters from the API for now in order to add the required ones in the future. Fix unexpected resolve after reject in Installer#getRegistry. Enhance tests and improved coverage. --- .../Sapui5MavenSnapshotResolver.js | 12 - .../lib/ui5Framework/maven/Installer.js | 84 ++- .../test/lib/ui5framework/maven/Installer.js | 596 ++++++++++++++++-- 3 files changed, 588 insertions(+), 104 deletions(-) diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js index 7355ba3ea4c..b5ae4743533 100644 --- a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -35,20 +35,12 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { * metadata and configuration used by the resolvers. Relative to `process.cwd()` * @param {string} [options.cacheMode="default"] Can be "default" (cache everything, invalidate after 9 hours), * "off" (do not cache) and "force" (use cache only - no requests) - * @param {string} [options.artifactsDir] Where to install Maven artifacts - * @param {string} [options.packagesDir] Where to install packages - * @param {string} [options.metadataDir] Where to store the metadata for Maven artifacts - * @param {string} [options.stagingDir] The staging directory for artifacts and packages */ constructor(options) { super(options); const { cacheMode, - artifactsDir, - packagesDir, - metadataDir, - stagingDir, } = options; this._installer = new Installer({ @@ -56,10 +48,6 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { snapshotEndpointUrlCb: Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback(options.snapshotEndpointUrl), cacheMode, - artifactsDir, - packagesDir, - metadataDir, - stagingDir, }); this._loadDistMetadata = null; } diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js index 1ac4152761e..57dad6fba8b 100644 --- a/packages/project/lib/ui5Framework/maven/Installer.js +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -28,25 +28,14 @@ class Installer extends AbstractInstaller { * Example: https://registry.corp/vendor/build-snapshots/ * @param {string} [parameters.cacheMode="default"] Can be "default" (cache everything, invalidate after 9 hours), * "off" (do not cache), "force" (use cache only - no requests) - * @param {string} [parameters.artifactsDir="${ui5HomeDir}/framework/artifacts"] Where to install Maven artifacts - * @param {string} [parameters.packagesDir="${ui5HomeDir}/framework/packages"] Where to install packages - * @param {string} [parameters.metadataDir="${ui5HomeDir}/framework/metadata"] Where to store the - * metadata for Maven artifacts - * @param {string} [parameters.stagingDir="${ui5HomeDir}/framework/staging"] The staging directory for - * artifacts and packages */ - constructor({ui5HomeDir, snapshotEndpointUrlCb, cacheMode = "default", artifactsDir, - packagesDir, metadataDir, stagingDir}) { + constructor({ui5HomeDir, snapshotEndpointUrlCb, cacheMode = "default"}) { super(ui5HomeDir); - this._artifactsDir = artifactsDir ? - path.resolve(artifactsDir) : path.join(ui5HomeDir, "framework", "artifacts"); - this._packagesDir = packagesDir ? - path.resolve(packagesDir) : path.join(ui5HomeDir, "framework", "packages"); - this._metadataDir = metadataDir ? - path.resolve(metadataDir) : path.join(ui5HomeDir, "framework", "metadata"); - this._stagingDir = stagingDir ? - path.resolve(stagingDir) : path.join(ui5HomeDir, "framework", "staging"); + this._artifactsDir = path.join(ui5HomeDir, "framework", "artifacts"); + this._packagesDir = path.join(ui5HomeDir, "framework", "packages"); + this._metadataDir = path.join(ui5HomeDir, "framework", "metadata"); + this._stagingDir = path.join(ui5HomeDir, "framework", "staging"); this._cacheMode = cacheMode; this._snapshotEndpointUrlCb = snapshotEndpointUrlCb; @@ -64,18 +53,17 @@ class Installer extends AbstractInstaller { if (this._cachedRegistry) { return this._cachedRegistry; } - return (this._cachedRegistry = new Promise((resolve, reject) => { - this._snapshotEndpointUrlCb().then((snapshotEndpointUrl) => { - if (!snapshotEndpointUrl) { - reject(new Error( - `Installer: Missing or empty Maven repository URL for snapshot consumption. ` + - `This URL is required for consuming snapshot versions of UI5 libraries. ` + - `Please configure the correct URL using the following command: ` + - `'ui5 config set mavenSnapshotEndpointUrl '`)); - } - - resolve(new Registry({endpointUrl: snapshotEndpointUrl})); - }); + return (this._cachedRegistry = Promise.resolve().then(async () => { + const snapshotEndpointUrl = await this._snapshotEndpointUrlCb(); + if (!snapshotEndpointUrl) { + throw new Error( + `Installer: Missing or empty Maven repository URL for snapshot consumption. ` + + `This URL is required for consuming snapshot versions of UI5 libraries. ` + + `Please configure the correct URL using the following command: ` + + `'ui5 config set mavenSnapshotEndpointUrl '`); + } else { + return new Registry({endpointUrl: snapshotEndpointUrl}); + } })); } @@ -100,6 +88,18 @@ class Installer extends AbstractInstaller { }); } + + /** + * Metadata for an artifact as identified by it's Maven coordinates + * + * @typedef {object} @ui5/project/ui5Framework/maven/Installer~LocalMetadata + * @property {integer} lastCheck Timestamp of the last time these metadata have been compared with the repository + * @property {integer} lastUpdate Timestamp of the last time the artifact has been updated in the repository + * (typically older than last check) + * @property {string} revision Current revision of the artifact + * @property {string[]} staleRevisions Previously installed revisions of the artifact + */ + /** * Fills and maintains locally cached metadata for the given artifact coordinates * @@ -107,7 +107,7 @@ class Installer extends AbstractInstaller { * @param {string} coordinates.groupId GroupId of the requested artifact * @param {string} coordinates.artifactId ArtifactId of the requested artifact * @param {string} coordinates.version Version of the requested artifact - * @param {string} coordinates.classifier Classifier of the requested artifact + * @param {string|null} coordinates.classifier Classifier of the requested artifact * @param {string} coordinates.extension Extension of the requested artifact * @param {string} [coordinates.pkgName] npm package name the artifact corresponds to (if any) * @returns {@ui5/project/ui5Framework/maven/Installer~LocalMetadata} @@ -166,6 +166,18 @@ class Installer extends AbstractInstaller { }); } + /** + * Fills and maintains locally cached metadata for the given artifact coordinates + * + * @param {object} coordinates + * @param {string} coordinates.groupId GroupId of the requested artifact + * @param {string} coordinates.artifactId ArtifactId of the requested artifact + * @param {string} coordinates.version Version of the requested artifact + * @param {string|null} coordinates.classifier Classifier of the requested artifact + * @param {string} coordinates.extension Extension of the requested artifact + * @returns {@ui5/project/ui5Framework/maven/Installer~LocalMetadata} + * + */ async _getRemoteArtifactMetadata({groupId, artifactId, version, classifier, extension}) { const reg = await this.getRegistry(); const metadata = await reg.requestMavenMetadata({groupId, artifactId, version}); @@ -181,8 +193,9 @@ class Installer extends AbstractInstaller { }) => (!classifier || candidateClassifier === classifier) && candidateExtension === extension); if (!deploymentMetadata) { + const optionalClassifier = classifier ? `${classifier}.` : ""; throw new Error( - `Could not find deployment ${classifier}.${extension} for artifact ` + + `Could not find ${optionalClassifier}${extension} deployment for artifact ` + `${groupId}:${artifactId}:${version} in snapshot metadata:\n` + `${JSON.stringify(snapshotVersion)}`); } @@ -201,6 +214,13 @@ class Installer extends AbstractInstaller { }; } + /** + * Reads locally cached metadata for the given artifact coordinates + * + * @param {string} id File System identifier for the artifact. Typically derived from the coordinates + * @returns {@ui5/project/ui5Framework/maven/Installer~LocalMetadata} + * + */ async _getLocalArtifactMetadata(id) { try { return await this.readJson(path.join(this._metadataDir, `${id}.json`)); @@ -273,7 +293,7 @@ class Installer extends AbstractInstaller { * @param {string} parameters.groupId GroupId of the requested artifact * @param {string} parameters.artifactId ArtifactId of the requested artifact * @param {string} parameters.version Version of the requested artifact - * @param {string} parameters.classifier Classifier of the requested artifact + * @param {string|null} parameters.classifier Classifier of the requested artifact * @param {string} parameters.extension Extension of the requested artifact * @returns {@ui5/project/ui5Framework/maven/Installer~InstalledPackage} * @@ -356,7 +376,7 @@ class Installer extends AbstractInstaller { * @param {string} parameters.groupId GroupId of the requested artifact * @param {string} parameters.artifactId ArtifactId of the requested artifact * @param {string} parameters.version Version of the requested artifact - * @param {string} parameters.classifier Classifier of the requested artifact + * @param {string|null} parameters.classifier Classifier of the requested artifact * @param {string} parameters.extension Extension of the requested artifact * @param {string} [parameters.revision] Optional revision of the artifact to request. * If not provided, the latest revision will be determined from the registry metadata. diff --git a/packages/project/test/lib/ui5framework/maven/Installer.js b/packages/project/test/lib/ui5framework/maven/Installer.js index 8ff6ae7f98d..21451dfc85a 100644 --- a/packages/project/test/lib/ui5framework/maven/Installer.js +++ b/packages/project/test/lib/ui5framework/maven/Installer.js @@ -29,6 +29,14 @@ test.beforeEach(async (t) => { close = sinon.stub().resolves(); }; + t.context.registryRequestMavenMetadataStub = sinon.stub().resolves(); + t.context.registryRequestArtifactStub = sinon.stub().resolves(); + + t.context.RegistryConstructorStub = sinon.stub().returns({ + requestMavenMetadata: t.context.registryRequestMavenMetadataStub, + requestArtifact: t.context.registryRequestArtifactStub + }); + t.context.AbstractInstaller = await esmock.p("../../../../lib/ui5Framework/AbstractInstaller.js", { "../../../../lib/utils/fs.js": { mkdirp: t.context.mkdirpStub @@ -40,6 +48,7 @@ test.beforeEach(async (t) => { }); t.context.Installer = await esmock.p("../../../../lib/ui5Framework/maven/Installer.js", { + "../../../../lib/ui5Framework/maven/Registry.js": t.context.RegistryConstructorStub, "../../../../lib/ui5Framework/AbstractInstaller.js": t.context.AbstractInstaller, "../../../../lib/utils/fs.js": { mkdirp: t.context.mkdirpStub @@ -59,7 +68,7 @@ test.afterEach.always((t) => { esmock.purge(t.context.Installer); }); -test.serial("Installer: constructor", (t) => { +test.serial("constructor", (t) => { const {Installer} = t.context; const installer = new Installer({ @@ -70,12 +79,12 @@ test.serial("Installer: constructor", (t) => { t.true(installer instanceof Installer, "Constructor returns instance of class"); t.is(installer._artifactsDir, path.join("/ui5Home/", "framework", "artifacts")); t.is(installer._packagesDir, path.join("/ui5Home/", "framework", "packages")); - t.is(installer._lockDir, path.join("/ui5Home/", "framework", "locks")); t.is(installer._stagingDir, path.join("/ui5Home/", "framework", "staging")); t.is(installer._metadataDir, path.join("/ui5Home/", "framework", "metadata")); + t.is(installer._lockDir, path.join("/ui5Home/", "framework", "locks")); }); -test.serial("Installer: constructor requires 'ui5HomeDir'", (t) => { +test.serial("constructor requires 'ui5HomeDir'", (t) => { const {Installer} = t.context; t.throws(() => { @@ -85,7 +94,7 @@ test.serial("Installer: constructor requires 'ui5HomeDir'", (t) => { }, {message: `Installer: Missing parameter "ui5HomeDir"`}); }); -test.serial("Installer: constructor requires 'snapshotEndpointUrlCb' or ENV variable", (t) => { +test.serial("constructor requires 'snapshotEndpointUrlCb'", (t) => { const {Installer} = t.context; t.throws(() => { @@ -96,8 +105,49 @@ test.serial("Installer: constructor requires 'snapshotEndpointUrlCb' or ENV vari }, {message: `Installer: Missing Snapshot-Endpoint URL callback parameter`}); }); -test.serial("Installer: fetchPackageVersions", async (t) => { - const {Installer} = t.context; +test.serial("getRegistry", async (t) => { + const {Installer, RegistryConstructorStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") + }); + + const registry1 = await installer.getRegistry(); + + t.truthy(registry1, "Created registry"); + t.is(RegistryConstructorStub.callCount, 1, "Registry constructor called once"); + t.deepEqual(RegistryConstructorStub.firstCall.firstArg, { + endpointUrl: "endpoint-url" + }, "Registry constructor called with correct endpoint URL"); + + const registry2 = await installer.getRegistry(); + t.is(registry2, registry1, "Registry instance is cached"); + t.is(RegistryConstructorStub.callCount, 1, "Registry constructor still only called once"); +}); + +test.serial("getRegistry: Missing endpoint URL", async (t) => { + const {Installer, RegistryConstructorStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => Promise.resolve(null) + }); + + const err = await t.throwsAsync(installer.getRegistry()); + t.is(err.message, "Installer: Missing or empty Maven repository URL for snapshot consumption. " + + "This URL is required for consuming snapshot versions of UI5 libraries. " + + "Please configure the correct URL using the following command: " + + "'ui5 config set mavenSnapshotEndpointUrl '", + "Threw with expected error message"); + + t.is(RegistryConstructorStub.callCount, 0, "Registry constructor did not get called"); +}); + +test.serial("fetchPackageVersions", async (t) => { + const {Installer, registryRequestMavenMetadataStub} = t.context; const installer = new Installer({ cwd: "/cwd/", @@ -105,8 +155,7 @@ test.serial("Installer: fetchPackageVersions", async (t) => { snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); - const registry = await installer.getRegistry(); - const requestMavenMetadataStub = sinon.stub(registry, "requestMavenMetadata") + registryRequestMavenMetadataStub .resolves({ versioning: { versions: { @@ -119,13 +168,13 @@ test.serial("Installer: fetchPackageVersions", async (t) => { t.deepEqual(packageVersions, ["2.0.0-SNAPSHOT", "5.0.0-SNAPSHOT"], "Should resolve with expected versions"); - t.is(requestMavenMetadataStub.callCount, 1, "requestPackagePackument should be called once"); - t.deepEqual(requestMavenMetadataStub.getCall(0).args[0], {groupId: "ui5.corp", artifactId: "great-thing"}, + t.is(registryRequestMavenMetadataStub.callCount, 1, "requestPackagePackument should be called once"); + t.deepEqual(registryRequestMavenMetadataStub.getCall(0).args[0], {groupId: "ui5.corp", artifactId: "great-thing"}, "requestMavenMetadata was called with correct arguments"); }); -test.serial("Installer: fetchPackageVersions throws", async (t) => { - const {Installer} = t.context; +test.serial("fetchPackageVersions throws", async (t) => { + const {Installer, registryRequestMavenMetadataStub} = t.context; const installer = new Installer({ cwd: "/cwd/", @@ -133,8 +182,7 @@ test.serial("Installer: fetchPackageVersions throws", async (t) => { snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); - const registry = await installer.getRegistry(); - sinon.stub(registry, "requestMavenMetadata").resolves({}); + registryRequestMavenMetadataStub.resolves({}); await t.throwsAsync( installer.fetchPackageVersions({ @@ -145,7 +193,7 @@ test.serial("Installer: fetchPackageVersions throws", async (t) => { ); }); -test.serial("Installer: _getLockPath", (t) => { +test.serial("_getLockPath", (t) => { const {Installer} = t.context; const installer = new Installer({ @@ -159,7 +207,7 @@ test.serial("Installer: _getLockPath", (t) => { t.is(lockPath, path.join("/ui5Home/", "framework", "locks", "package-@openui5-sap.ui.lib1@1.2.3-SNAPSHOT.lock")); }); -test.serial("Installer: readJson", async (t) => { +test.serial("readJson", async (t) => { const jsonStub = {json: "response"}; const {Installer} = t.context; @@ -176,7 +224,7 @@ test.serial("Installer: readJson", async (t) => { t.deepEqual(jsonResponse, jsonStub); }); -test.serial("Installer: installPackage", async (t) => { +test.serial("installPackage", async (t) => { const {Installer} = t.context; const installer = new Installer({ @@ -185,12 +233,13 @@ test.serial("Installer: installPackage", async (t) => { snapshotEndpointUrlCb: () => {} }); - sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "1.22"}); + const removeArtifactStub = sinon.stub().resolves(); + const fetchArtifactMetadataStub = sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "5"}); sinon.stub(installer, "_pathExists").resolves(false); sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); - sinon.stub(installer, "installArtifact").resolves({ - artifactPath: "/ui5Home/framework/artifacts/com_sap_ui5_dist-sapui5-sdk-dist/1.22/npm-sources.zip", - removeArtifact: sinon.stub().resolves() + const installArtifactStub = sinon.stub(installer, "installArtifact").resolves({ + artifactPath: "/ui5Home/framework/artifacts/com_sap_ui5_dist-sapui5-sdk-dist/5/npm-sources.zip", + removeArtifact: removeArtifactStub }); const installedPackage = await installer.installPackage({ @@ -199,18 +248,95 @@ test.serial("Installer: installPackage", async (t) => { artifactId: "sapui5-sdk-dist", version: "1.75.0", classifier: "npm-sources", + extension: "zip", + }); + + t.deepEqual( + installedPackage, + {pkgPath: + path.join("/ui5Home/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, + "Install the correct package" + ); + + t.is(fetchArtifactMetadataStub.callCount, 1, "fetchArtifactMetadataStub got called once"); + t.deepEqual(fetchArtifactMetadataStub.firstCall.firstArg, { + pkgName: "@sapui5/distribution-metadata", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + classifier: "npm-sources", + extension: "zip", + }, "fetchArtifactMetadataStub got called with expected arguments"); + + t.is(installArtifactStub.callCount, 1, "installArtifact got called once"); + t.deepEqual(installArtifactStub.firstCall.firstArg, { + revision: "5", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + classifier: "npm-sources", + extension: "zip", + }, "installArtifact got called with the expected parameters"); + t.is(removeArtifactStub.callCount, 1, "removeArtifact got called once"); +}); + +test.serial("installPackage: No classifier", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + const removeArtifactStub = sinon.stub().resolves(); + const fetchArtifactMetadataStub = sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "5"}); + sinon.stub(installer, "_pathExists").resolves(false); + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + const installArtifactStub = sinon.stub(installer, "installArtifact").resolves({ + artifactPath: "/ui5Home/framework/artifacts/com_sap_ui5_dist-sapui5-sdk-dist/5/npm-sources.zip", + removeArtifact: removeArtifactStub + }); + + const installedPackage = await installer.installPackage({ + pkgName: "@sapui5/distribution-metadata", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + classifier: null, extension: "jar", }); t.deepEqual( installedPackage, {pkgPath: - path.join("/ui5Home/", "framework", "packages", "@sapui5", "distribution-metadata", "1.22")}, + path.join("/ui5Home/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, "Install the correct package" ); + + t.is(fetchArtifactMetadataStub.callCount, 1, "fetchArtifactMetadataStub got called once"); + t.deepEqual(fetchArtifactMetadataStub.firstCall.firstArg, { + pkgName: "@sapui5/distribution-metadata", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + classifier: null, + extension: "jar", + }, "fetchArtifactMetadataStub got called with expected arguments"); + + t.is(installArtifactStub.callCount, 1, "installArtifact got called once"); + t.deepEqual(installArtifactStub.firstCall.firstArg, { + revision: "5", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + classifier: null, + extension: "jar", + }, "installArtifact got called with the expected parameters"); + t.is(removeArtifactStub.callCount, 1, "removeArtifact got called once"); }); -test.serial("Installer: installArtifact", async (t) => { +test.serial("installPackage: Already installed", async (t) => { const {Installer} = t.context; const installer = new Installer({ @@ -219,15 +345,238 @@ test.serial("Installer: installArtifact", async (t) => { snapshotEndpointUrlCb: () => {} }); - sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "1.22"}); + sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "5"}); + sinon.stub(installer, "_projectExists").resolves(true); + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + const installArtifactStub = sinon.stub(installer, "installArtifact"); + + const installedPackage = await installer.installPackage({ + pkgName: "@sapui5/distribution-metadata", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + classifier: "npm-sources", + extension: "jar", + }); + + t.deepEqual( + installedPackage, + {pkgPath: + path.join("/ui5Home/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, + "Install the correct package" + ); + + t.is(installArtifactStub.callCount, 0, "installArtifact did not get called"); +}); + +test.serial("installPackage: Already installed only after lock acquired", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "5"}); + sinon.stub(installer, "_projectExists") + .onFirstCall().resolves(false) + .onSecondCall().resolves(true); + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + const installArtifactStub = sinon.stub(installer, "installArtifact"); + + const installedPackage = await installer.installPackage({ + pkgName: "@sapui5/distribution-metadata", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + classifier: "npm-sources", + extension: "jar", + }); + + t.deepEqual( + installedPackage, + {pkgPath: + path.join("/ui5Home/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, + "Install the correct package" + ); + + t.is(installArtifactStub.callCount, 0, "installArtifact did not get called"); +}); + +test.serial("installArtifact", async (t) => { + const {Installer, rmStub, registryRequestArtifactStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: async () => "url" + }); + + const fetchArtifactMetadataStub = sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "5"}); sinon.stub(installer, "_pathExists").resolves(false); sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); - sinon.stub(installer, "getRegistry").callsFake(() => { - return { - requestArtifact: sinon.stub().resolves() - }; + + const installedArtifact = await installer.installArtifact({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + classifier: null }); + const expectedPath = path.join("/ui5Home/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "5.jar"); + t.is( + installedArtifact.artifactPath, + expectedPath, + "artifactPath correctly resolved" + ); + + t.is(fetchArtifactMetadataStub.callCount, 1, "fetchArtifactMetadataStub got called once"); + t.deepEqual(fetchArtifactMetadataStub.firstCall.firstArg, { + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + classifier: null, + extension: "jar", + }, "fetchArtifactMetadataStub got called with expected arguments"); + + t.is(registryRequestArtifactStub.callCount, 1, "Registry#requestArtifact got called once"); + t.deepEqual(registryRequestArtifactStub.firstCall.firstArg, { + revision: "5", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + classifier: null, + version: "1.75.0", + extension: "jar", + }, "Registry#requestArtifact got called with expected coordinates"); + t.is(registryRequestArtifactStub.firstCall.args[1], + path.join("/ui5Home/", "framework", "staging", "com.sap.ui5.dist_sapui5-sdk-dist_5_jar"), + "Registry#requestArtifact got called with expected target directory"); + + t.is( + typeof installedArtifact.removeArtifact, + "function", + "removeArtifact method" + ); + rmStub.resetHistory(); + await installedArtifact.removeArtifact(); + t.is(rmStub.callCount, 1, "fs.rm got called once"); + t.is(rmStub.firstCall.firstArg, expectedPath, "fs.rm got called with expected argument"); +}); + + +test.serial("installArtifact: Target revision provided", async (t) => { + const {Installer, rmStub, registryRequestArtifactStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: async () => "url" + }); + + const fetchArtifactMetadataStub = sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "5"}); + sinon.stub(installer, "_pathExists").resolves(false); + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + + const installedArtifact = await installer.installArtifact({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "zip", + classifier: "npm-sources", + revision: "16" + }); + + const expectedPath = path.join("/ui5Home/", "framework", "artifacts", + "com_sap_ui5_dist-sapui5-sdk-dist", "16", "npm-sources.zip"); + t.is( + installedArtifact.artifactPath, + expectedPath, + "artifactPath correctly resolved" + ); + + t.is(fetchArtifactMetadataStub.callCount, 0, "fetchArtifactMetadataStub did not get called"); + + t.is(registryRequestArtifactStub.callCount, 1, "Registry#requestArtifact got called once"); + t.deepEqual(registryRequestArtifactStub.firstCall.firstArg, { + revision: "16", + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + classifier: "npm-sources", + version: "1.75.0", + extension: "zip", + }, "Registry#requestArtifact got called with expected coordinates"); + t.is(registryRequestArtifactStub.firstCall.args[1], + path.join("/ui5Home/", "framework", "staging", "com.sap.ui5.dist_sapui5-sdk-dist_16_npm-sources.zip"), + "Registry#requestArtifact got called with expected target directory"); + + t.is( + typeof installedArtifact.removeArtifact, + "function", + "removeArtifact method" + ); + rmStub.resetHistory(); + await installedArtifact.removeArtifact(); + t.is(rmStub.callCount, 1, "fs.rm got called once"); + t.is(rmStub.firstCall.firstArg, expectedPath, "fs.rm got called with expected argument"); +}); + +test.serial("installArtifact: Already installed", async (t) => { + const {Installer, rmStub, registryRequestArtifactStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "5"}); + sinon.stub(installer, "_pathExists").resolves(true); + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + + const installedArtifact = await installer.installArtifact({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + }); + + const expectedPath = path.join("/ui5Home/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "5.jar"); + t.is( + installedArtifact.artifactPath, + expectedPath, + "artifactPath correctly resolved" + ); + + t.is(registryRequestArtifactStub.callCount, 0, "Registry#requestArtifact did not get called"); + + t.is( + typeof installedArtifact.removeArtifact, + "function", + "removeArtifact method" + ); + rmStub.resetHistory(); + await installedArtifact.removeArtifact(); + t.is(rmStub.callCount, 1, "fs.rm got called once"); + t.is(rmStub.firstCall.firstArg, expectedPath, "fs.rm got called with expected argument"); +}); + +test.serial("installArtifact: Already installed only after lock acquired", async (t) => { + const {Installer, rmStub, registryRequestArtifactStub} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + sinon.stub(installer, "_fetchArtifactMetadata").resolves({revision: "5"}); + sinon.stub(installer, "_pathExists") + .onFirstCall().resolves(false) + .onSecondCall().resolves(true); + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + const installedArtifact = await installer.installArtifact({ groupId: "com.sap.ui5.dist", artifactId: "sapui5-sdk-dist", @@ -235,20 +584,27 @@ test.serial("Installer: installArtifact", async (t) => { extension: "jar", }); + const expectedPath = path.join("/ui5Home/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "5.jar"); t.is( installedArtifact.artifactPath, - path.join("/ui5Home/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "1.22.jar"), + expectedPath, "artifactPath correctly resolved" ); + t.is(registryRequestArtifactStub.callCount, 0, "Registry#requestArtifact did not get called"); + t.is( typeof installedArtifact.removeArtifact, "function", "removeArtifact method" ); + rmStub.resetHistory(); + await installedArtifact.removeArtifact(); + t.is(rmStub.callCount, 1, "fs.rm got called once"); + t.is(rmStub.firstCall.firstArg, expectedPath, "fs.rm got called with expected argument"); }); -test.serial("Installer: _fetchArtifactMetadata", async (t) => { +test.serial("_fetchArtifactMetadata", async (t) => { const {Installer} = t.context; const installer = new Installer({ @@ -265,7 +621,82 @@ test.serial("Installer: _fetchArtifactMetadata", async (t) => { revision: "2", staleRevisions: [], }); - sinon.stub(installer, "_getRemoteArtifactMetadata").resolves({revision: "1.22", lastUpdate: 0}); + + const getRemoteArtifactMetadataStub = sinon.stub(installer, "_getRemoteArtifactMetadata") + .resolves({revision: "5", lastUpdate: 0}); + sinon.stub(installer, "_removeStaleRevisions").resolves(); + sinon.stub(installer, "_writeLocalArtifactMetadata").resolves(); + + const artifactMetadata = await installer._fetchArtifactMetadata({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + }); + + t.truthy(artifactMetadata.lastCheck, "Proper metadata: lastCheck"); + t.is(artifactMetadata.lastUpdate, 0, "Proper metadata: lastUpdate"); + t.is(artifactMetadata.revision, "5", "Proper metadata: revision"); + + t.is(getRemoteArtifactMetadataStub.callCount, 1, "getRemoteArtifactMetadata got called once"); +}); + +test.serial("_fetchArtifactMetadata: Cached", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {}, + }); + + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + sinon.stub(installer, "_getLocalArtifactMetadata") + .resolves({ + lastCheck: new Date().getTime(), + lastUpdate: 0, + revision: "2", + staleRevisions: [], + }); + const getRemoteArtifactMetadataStub = sinon.stub(installer, "_getRemoteArtifactMetadata") + .resolves({revision: "5", lastUpdate: 0}); + sinon.stub(installer, "_removeStaleRevisions").resolves(); + sinon.stub(installer, "_writeLocalArtifactMetadata").resolves(); + + const artifactMetadata = await installer._fetchArtifactMetadata({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + }); + + t.truthy(artifactMetadata.lastCheck, "Proper metadata: lastCheck"); + t.is(artifactMetadata.lastUpdate, 0, "Proper metadata: lastUpdate"); + t.is(artifactMetadata.revision, "2", "Proper metadata: revision"); + + t.is(getRemoteArtifactMetadataStub.callCount, 0, "getRemoteArtifactMetadata did not get called"); +}); + +test.serial("_fetchArtifactMetadata: Cache available but disabled", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {}, + cacheMode: "off" + }); + + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + sinon.stub(installer, "_getLocalArtifactMetadata") + .resolves({ + lastCheck: new Date().getTime(), + lastUpdate: 0, + revision: "2", + staleRevisions: [], + }); + const getRemoteArtifactMetadataStub = sinon.stub(installer, "_getRemoteArtifactMetadata") + .resolves({revision: "5", lastUpdate: 0}); sinon.stub(installer, "_removeStaleRevisions").resolves(); sinon.stub(installer, "_writeLocalArtifactMetadata").resolves(); @@ -278,10 +709,48 @@ test.serial("Installer: _fetchArtifactMetadata", async (t) => { t.truthy(artifactMetadata.lastCheck, "Proper metadata: lastCheck"); t.is(artifactMetadata.lastUpdate, 0, "Proper metadata: lastUpdate"); - t.is(artifactMetadata.revision, "1.22", "Proper metadata: revision"); + t.is(artifactMetadata.revision, "5", "Proper metadata: revision"); + t.is(getRemoteArtifactMetadataStub.callCount, 1, "getRemoteArtifactMetadata got called once"); }); -test.serial("Installer: _fetchArtifactMetadata throws", async (t) => { +test.serial("_fetchArtifactMetadata: Cache outdated but enforced", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {}, + cacheMode: "force" + }); + + sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); + sinon.stub(installer, "_getLocalArtifactMetadata") + .resolves({ + lastCheck: 1, // first millisecond to indicate a cache is present but outdated + lastUpdate: 0, + revision: "2", + staleRevisions: [], + }); + const getRemoteArtifactMetadataStub = sinon.stub(installer, "_getRemoteArtifactMetadata") + .resolves({revision: "5", lastUpdate: 0}); + sinon.stub(installer, "_removeStaleRevisions").resolves(); + sinon.stub(installer, "_writeLocalArtifactMetadata").resolves(); + + const artifactMetadata = await installer._fetchArtifactMetadata({ + groupId: "com.sap.ui5.dist", + artifactId: "sapui5-sdk-dist", + version: "1.75.0", + extension: "jar", + }); + + t.truthy(artifactMetadata.lastCheck, "Proper metadata: lastCheck"); + t.is(artifactMetadata.lastUpdate, 0, "Proper metadata: lastUpdate"); + t.is(artifactMetadata.revision, "2", "Proper metadata: revision"); + + t.is(getRemoteArtifactMetadataStub.callCount, 0, "getRemoteArtifactMetadata did not get called"); +}); + +test.serial("_fetchArtifactMetadata throws", async (t) => { const {Installer} = t.context; const installer = new Installer({ @@ -305,8 +774,8 @@ test.serial("Installer: _fetchArtifactMetadata throws", async (t) => { }); }); -test.serial("Installer: _getRemoteArtifactMetadata", async (t) => { - const {Installer} = t.context; +test.serial("_getRemoteArtifactMetadata", async (t) => { + const {Installer, registryRequestMavenMetadataStub} = t.context; const installer = new Installer({ cwd: "/cwd/", @@ -314,8 +783,7 @@ test.serial("Installer: _getRemoteArtifactMetadata", async (t) => { snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); - const registry = await installer.getRegistry(); - const requestMavenMetadataStub = sinon.stub(registry, "requestMavenMetadata") + registryRequestMavenMetadataStub .resolves({ versioning: { snapshotVersions: { @@ -334,14 +802,14 @@ test.serial("Installer: _getRemoteArtifactMetadata", async (t) => { t.truthy(remoteArtifactMetadata.lastUpdate, "Proper metadata: lastUpdate"); t.is(remoteArtifactMetadata.revision, "5.0.0-SNAPSHOT", "Proper metadata: revision"); - t.is(requestMavenMetadataStub.callCount, 1, "requestPackagePackument should be called once"); - t.deepEqual(requestMavenMetadataStub.getCall(0).args[0], + t.is(registryRequestMavenMetadataStub.callCount, 1, "requestPackagePackument should be called once"); + t.deepEqual(registryRequestMavenMetadataStub.getCall(0).args[0], {groupId: "com.sap.ui5.dist", artifactId: "sapui5-sdk-dist", version: "1.75.0"}, "requestMavenMetadata was called with correct arguments"); }); -test.serial("Installer: _getRemoteArtifactMetadata throws", async (t) => { - const {Installer} = t.context; +test.serial("_getRemoteArtifactMetadata throws", async (t) => { + const {Installer, registryRequestMavenMetadataStub} = t.context; const installer = new Installer({ cwd: "/cwd/", @@ -349,8 +817,7 @@ test.serial("Installer: _getRemoteArtifactMetadata throws", async (t) => { snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); - const registry = await installer.getRegistry(); - sinon.stub(registry, "requestMavenMetadata").resolves({}); + registryRequestMavenMetadataStub.resolves({}); await t.throwsAsync(installer._getRemoteArtifactMetadata({ groupId: "com.sap.ui5.dist", @@ -360,8 +827,8 @@ test.serial("Installer: _getRemoteArtifactMetadata throws", async (t) => { }), {message: "Missing Maven snapshot metadata for artifact com.sap.ui5.dist:sapui5-sdk-dist:1.75.0"}); }); -test.serial("Installer: _getRemoteArtifactMetadata throws missing deployment metadata", async (t) => { - const {Installer} = t.context; +test.serial("_getRemoteArtifactMetadata throws missing deployment metadata", async (t) => { + const {Installer, registryRequestMavenMetadataStub} = t.context; const installer = new Installer({ cwd: "/cwd/", @@ -369,27 +836,36 @@ test.serial("Installer: _getRemoteArtifactMetadata throws missing deployment met snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); - const registry = await installer.getRegistry(); - sinon.stub(registry, "requestMavenMetadata") + registryRequestMavenMetadataStub .resolves({ versioning: { snapshotVersions: { - snapshotVersion: [{"value": "5.0.0-SNAPSHOT"}] + snapshotVersion: [ + {"extension": "jar", "updated": "20220828080910", "value": "5.0.0-SNAPSHOT"}, + { + "classifier": "pony-sources", "extension": "zip", "updated": "20220828080910", + "value": "5.0.0-SNAPSHOT" + } + ] } } }); - await t.throwsAsync(installer._getRemoteArtifactMetadata({ groupId: "com.sap.ui5.dist", artifactId: "sapui5-sdk-dist", version: "1.75.0", - extension: "jar", - }), {message: "Could not find deployment undefined.jar for artifact " + - "com.sap.ui5.dist:sapui5-sdk-dist:1.75.0 in snapshot metadata:\n[{\"value\":\"5.0.0-SNAPSHOT\"}]"}); + extension: "zip", + classifier: "npm-sources", + }), { + message: "Could not find npm-sources.zip deployment for artifact " + + "com.sap.ui5.dist:sapui5-sdk-dist:1.75.0 in snapshot metadata:\n" + + `[{"extension":"jar","updated":"20220828080910","value":"5.0.0-SNAPSHOT"},` + + `{"classifier":"pony-sources","extension":"zip","updated":"20220828080910","value":"5.0.0-SNAPSHOT"}]` + }); }); -test.serial("Installer: _getLocalArtifactMetadata", async (t) => { +test.serial("_getLocalArtifactMetadata", async (t) => { const {Installer} = t.context; const installer = new Installer({ @@ -404,7 +880,7 @@ test.serial("Installer: _getLocalArtifactMetadata", async (t) => { t.deepEqual(localArtifactMetadata, {foo: "bar"}, "Returns the correct metadata"); }); -test.serial("Installer: _getLocalArtifactMetadata file not found", async (t) => { +test.serial("_getLocalArtifactMetadata file not found", async (t) => { const {Installer} = t.context; const installer = new Installer({ @@ -423,7 +899,7 @@ test.serial("Installer: _getLocalArtifactMetadata file not found", async (t) => ); }); -test.serial("Installer: _getLocalArtifactMetadata throws", async (t) => { +test.serial("_getLocalArtifactMetadata throws", async (t) => { const {Installer} = t.context; const installer = new Installer({ @@ -442,7 +918,7 @@ test.serial("Installer: _getLocalArtifactMetadata throws", async (t) => { }); -test.serial("Installer: _writeLocalArtifactMetadata", async (t) => { +test.serial("_writeLocalArtifactMetadata", async (t) => { const {Installer, writeFileStub} = t.context; const installer = new Installer({ @@ -465,7 +941,7 @@ test.serial("Installer: _writeLocalArtifactMetadata", async (t) => { ); }); -test.serial("Installer: _removeStaleRevisions", async (t) => { +test.serial("_removeStaleRevisions", async (t) => { const {Installer, rmStub} = t.context; const installer = new Installer({ @@ -500,7 +976,7 @@ test.serial("Installer: _removeStaleRevisions", async (t) => { t.deepEqual(metadata, {staleRevisions: ["1"]}, "Stale revisions stay untouched if 1 or less"); }); -test.serial("Installer: _pathExists", async (t) => { +test.serial("_pathExists", async (t) => { const {Installer, statStub} = t.context; const installer = new Installer({ @@ -515,7 +991,7 @@ test.serial("Installer: _pathExists", async (t) => { t.is(pathExists, true, "Resolves the target path"); }); -test.serial("Installer: _pathExists file not found", async (t) => { +test.serial("_pathExists file not found", async (t) => { const {Installer, statStub} = t.context; const installer = new Installer({ @@ -530,7 +1006,7 @@ test.serial("Installer: _pathExists file not found", async (t) => { t.is(pathExists, false, "Target path is not resolved"); }); -test.serial("Installer: _pathExists throws", async (t) => { +test.serial("_pathExists throws", async (t) => { const {Installer, statStub} = t.context; const installer = new Installer({ From 9c692dd9a8cc4f6bb5b7a207a94a88b01a00751f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 19 Apr 2023 14:47:53 +0200 Subject: [PATCH 0904/1272] [ui5-project][INTERNAL] AbstractResolver: Add env var to enforce usage of framework lib sources By setting environment variable 'UI5_PROJECT_USE_FRAMEWORK_SOURCES' to any value, resolvers will be forced to always download the sources of framework dependencies rather than pre-built versions. Currently this only really affects the Sapui5MavenSnapshotResolver, being the only resolver capable of downloading pre-built packages as of today. JIRA: CPOUI5FOUNDATION-657 --- .../lib/ui5Framework/AbstractResolver.js | 6 ++++++ .../test/lib/ui5framework/AbstractResolver.js | 21 +++++++++++++++++-- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index fd65ed26d9c..0f11aa74f7e 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -55,7 +55,13 @@ class AbstractResolver { ); this._cwd = cwd ? path.resolve(cwd) : process.cwd(); this._version = version; + + // Environment variable should always enforce usage of sources + if (process.env.UI5_PROJECT_USE_FRAMEWORK_SOURCES) { + sources = true; + } this._sources = !!sources; + this._providedLibraryMetadata = providedLibraryMetadata; } diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 2b2fb5b6d20..49b9f8cca4d 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -22,6 +22,7 @@ test.beforeEach(async (t) => { }); test.afterEach.always((t) => { + delete process.env.UI5_PROJECT_USE_FRAMEWORK_SOURCES; esmock.purge(t.context.AbstractResolver); sinon.restore(); }); @@ -42,12 +43,28 @@ test("AbstractResolver: constructor", (t) => { const resolver = new MyResolver({ cwd: "/test-project/", version: "1.75.0", - providedLibraryMetadata + providedLibraryMetadata, + sources: true }); t.true(resolver instanceof MyResolver, "Constructor returns instance of sub-class"); t.true(resolver instanceof AbstractResolver, "Constructor returns instance of abstract class"); t.is(resolver._version, "1.75.0"); - t.is(resolver._providedLibraryMetadata, providedLibraryMetadata); + t.true(resolver._sources, "Correct value for 'sources' flag"); +}); + +test("AbstractResolver: constructor overwrites sources with env variable", (t) => { + const {MyResolver, AbstractResolver} = t.context; + + process.env.UI5_PROJECT_USE_FRAMEWORK_SOURCES = true; + const resolver = new MyResolver({ + cwd: "/test-project/", + version: "1.75.0", + sources: false // Environment variable overrules parameter + }); + t.true(resolver instanceof MyResolver, "Constructor returns instance of sub-class"); + t.true(resolver instanceof AbstractResolver, "Constructor returns instance of abstract class"); + t.is(resolver._version, "1.75.0"); + t.true(resolver._sources, "Correct value for 'sources' flag"); }); test("AbstractResolver: constructor without version", (t) => { From b01a8f5a675f1949a504b5f3ca156165974715c7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 21 Apr 2023 10:11:07 +0200 Subject: [PATCH 0905/1272] [ui5-project][INTERNAL] Sapui5MavenSnapshotResolver: Rename endpoint URL env var "UI5_MAVEN_SNAPSHOT_ENDPOINT" => "UI5_MAVEN_SNAPSHOT_ENDPOINT_URL" Also always prefer it over the API parameter. --- .../lib/ui5Framework/Sapui5MavenSnapshotResolver.js | 8 ++++---- .../test/lib/ui5framework/Sapui5MavenSnapshotResolver.js | 9 +++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js index b5ae4743533..f4559f27664 100644 --- a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -24,9 +24,9 @@ const DIST_ARTIFACT_ID = "sapui5-sdk-dist"; class Sapui5MavenSnapshotResolver extends AbstractResolver { /** * @param {*} options options - * @param {string} [options.snapshotEndpointUrl] Maven Repository Snapshot URL. If not provided, - * falls back to an optional UI5_MAVEN_SNAPSHOT_ENDPOINT environment variable, - * or the standard Maven settings.xml file (if existing). + * @param {string} [options.snapshotEndpointUrl] Maven Repository Snapshot URL. Can by overruled + * by setting the UI5_MAVEN_SNAPSHOT_ENDPOINT_URL environment variable. If neither is provided, + * falling back to the standard Maven settings.xml file (if existing). * @param {string} options.version SAPUI5 version to use * @param {boolean} [options.sources=false] Whether to install framework libraries as sources or * pre-built (with build manifest) @@ -133,7 +133,7 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { } static _createSnapshotEndpointUrlCallback(snapshotEndpointUrl) { - snapshotEndpointUrl = snapshotEndpointUrl || process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT; + snapshotEndpointUrl = process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT_URL || snapshotEndpointUrl; if (!snapshotEndpointUrl) { // If we resolve the settings.xml at this point, we'd need to always ask the end diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js index 0531db56922..ba64c6a92b4 100644 --- a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js @@ -17,7 +17,7 @@ test.beforeEach(async (t) => { }; }); - process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT = "_SNAPSHOT_URL_"; + process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT_URL = "_SNAPSHOT_URL_"; t.context.yesnoStub = sinon.stub(); t.context.promisifyStub = sinon.stub(); @@ -51,7 +51,7 @@ test.beforeEach(async (t) => { test.afterEach.always((t) => { process.stdout.isTTY = t.context.originalIsTty; - delete process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT; + delete process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT_URL; esmock.purge(t.context.Sapui5MavenSnapshotResolver); sinon.restore(); }); @@ -261,7 +261,7 @@ test.serial("_createSnapshotEndpointUrlCallback: Environment variable", async (t const {Sapui5MavenSnapshotResolver} = t.context; const createSnapshotEndpointUrlCallback = Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback; - const endpointCallback = await createSnapshotEndpointUrlCallback(); + const endpointCallback = await createSnapshotEndpointUrlCallback("my url"); t.is(await endpointCallback(), "_SNAPSHOT_URL_", "Returned a callback resolving to value of env variable"); @@ -271,6 +271,7 @@ test.serial("_createSnapshotEndpointUrlCallback: Parameter", async (t) => { const {Sapui5MavenSnapshotResolver} = t.context; const createSnapshotEndpointUrlCallback = Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback; + delete process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT_URL; // Delete env variable for this test const endpointCallback = await createSnapshotEndpointUrlCallback("my url"); t.is(await endpointCallback(), "my url", @@ -281,7 +282,7 @@ test.serial("_createSnapshotEndpointUrlCallback: Fallback to configuration files const {Sapui5MavenSnapshotResolver} = t.context; const createSnapshotEndpointUrlCallback = Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback; - delete process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT; // Delete env variable for this test + delete process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT_URL; // Delete env variable for this test const resolveUrlStub = sinon.stub(Sapui5MavenSnapshotResolver, "_resolveSnapshotEndpointUrl").resolves("🐱"); const endpointCallback = await createSnapshotEndpointUrlCallback(); From 6f9078176f8854e25c3708d8f06a3274dde19281 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 21 Apr 2023 08:52:24 +0000 Subject: [PATCH 0906/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.2 to 3.0.3 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.3/CHANGELOG.md --- packages/project/package-lock.json | 28 +++++++++++++++++++++------- packages/project/package.json | 2 +- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 458f3fb71b7..7f20705304d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.2", - "@ui5/fs": "^3.0.2", + "@ui5/fs": "^3.0.3", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1215,17 +1215,17 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.2.tgz", - "integrity": "sha512-vsuGyKHs6Pml9pk4527zp6mnigPx/I+PVTVbF8aBG7qmT0t6yUYODJDpYLK6MNLD0xFSxDJjppoCdzJ5yPcjfQ==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.3.tgz", + "integrity": "sha512-kW1XURyumptJkFpMlAv8BFOoy/SDx2o5DtH5wQguxUQPWpdKgViVjlq2xGbGkn2SrR/IRalcyedeE/LIrQNp9Q==", "dependencies": { "@ui5/logger": "^3.0.0", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", - "globby": "^13.1.3", - "graceful-fs": "^4.2.10", + "globby": "^13.1.4", + "graceful-fs": "^4.2.11", "micromatch": "^4.0.5", - "minimatch": "^7.4.1", + "minimatch": "^9.0.0", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, @@ -1234,6 +1234,20 @@ "npm": ">= 8" } }, + "node_modules/@ui5/fs/node_modules/minimatch": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", + "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@ui5/logger": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index a1f0ccdde90..8ee89903559 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,7 +119,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.2", - "@ui5/fs": "^3.0.2", + "@ui5/fs": "^3.0.3", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 7288dd9a36c73ae9a28d346d18f20f17073a7ac3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 21 Apr 2023 09:15:10 +0000 Subject: [PATCH 0907/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.2 to 3.0.3 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.3/CHANGELOG.md --- packages/project/package-lock.json | 64 ++++-------------------------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 57 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7f20705304d..7303ec4cfd0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.1.1", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.2", + "@ui5/builder": "^3.0.3", "@ui5/fs": "^3.0.3", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1140,12 +1140,12 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.2.tgz", - "integrity": "sha512-+I1hIjf9Y7tAKCph21D/QpVXX/aqoCfwpvra2GPD5Mw4YQuX6+16O3DPY0jtNMDpSGpLYlGcRo/rIPkqUE1sUA==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.3.tgz", + "integrity": "sha512-IL/9oWuGRNxWsUQLue7UwfPp008ydY8KvAqTKAdk7OhDyvz02vBagciwzuopJ28qjzw5kD6o3r9h7iMtjTwg4w==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", - "@ui5/fs": "^3.0.2", + "@ui5/fs": "^3.0.3", "@ui5/logger": "^3.0.0", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", @@ -1155,9 +1155,9 @@ "jsdoc": "^4.0.2", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", - "rimraf": "^4.4.1", - "semver": "^7.4.0", - "terser": "^5.16.9", + "rimraf": "^5.0.0", + "semver": "^7.5.0", + "terser": "^5.17.0", "workerpool": "^6.4.0", "xml2js": "^0.5.0" }, @@ -1166,54 +1166,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/builder/node_modules/glob": { - "version": "9.3.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", - "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "minimatch": "^8.0.2", - "minipass": "^4.2.4", - "path-scurry": "^1.6.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@ui5/builder/node_modules/minimatch": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", - "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@ui5/builder/node_modules/rimraf": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", - "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", - "dependencies": { - "glob": "^9.2.0" - }, - "bin": { - "rimraf": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@ui5/fs": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.3.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 8ee89903559..2e9feaf136d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -118,7 +118,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.2", + "@ui5/builder": "^3.0.3", "@ui5/fs": "^3.0.3", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From 2e81470a47209bff282c631bb8f43e629702f6d5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 21 Apr 2023 09:22:07 +0000 Subject: [PATCH 0908/1272] [ui5-project]Release 3.2.0 --- packages/project/CHANGELOG.md | 13 ++++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 59f025120f5..047aa172fd3 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,17 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.1.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.2.0...HEAD). + + +## [v3.2.0] - 2023-04-21 +### Dependency Updates +- Bump rimraf from 4.4.1 to 5.0.0 ([#597](https://github.com/SAP/ui5-project/issues/597)) [`1da76bc`](https://github.com/SAP/ui5-project/commit/1da76bc21c218b154b1a6014808f8d3a4d101b69) + +### Features +- Add Configuration ([#575](https://github.com/SAP/ui5-project/issues/575)) [`fd37cef`](https://github.com/SAP/ui5-project/commit/fd37cefffdc22b4a4bbc3fcbde20581848d937fa) +- Enable snapshot consumption from Maven repository ([#570](https://github.com/SAP/ui5-project/issues/570)) [`ade2c49`](https://github.com/SAP/ui5-project/commit/ade2c49d66ebba229b62c6614c8bbdfed10bc6b0) + ## [v3.1.1] - 2023-04-12 @@ -353,6 +363,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.2.0]: https://github.com/SAP/ui5-project/compare/v3.1.1...v3.2.0 [v3.1.1]: https://github.com/SAP/ui5-project/compare/v3.1.0...v3.1.1 [v3.1.0]: https://github.com/SAP/ui5-project/compare/v3.0.4...v3.1.0 [v3.0.4]: https://github.com/SAP/ui5-project/compare/v3.0.3...v3.0.4 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7303ec4cfd0..e02818ea59b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.1.1", + "version": "3.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.1.1", + "version": "3.2.0", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index 2e9feaf136d..cd06d8e6ee4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.1.1", + "version": "3.2.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 7663f81fcfd17cc1f3a3de8e1b2cd400b5d78888 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 21 Apr 2023 15:58:07 +0200 Subject: [PATCH 0909/1272] [ui5-project][FIX] Configuration: Rename toJSON => toJson As per our naming convention --- packages/project/lib/config/Configuration.js | 4 ++-- .../lib/ui5Framework/Sapui5MavenSnapshotResolver.js | 2 +- packages/project/test/lib/config/Configuration.js | 8 ++++---- .../test/lib/ui5framework/Sapui5MavenSnapshotResolver.js | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/lib/config/Configuration.js b/packages/project/lib/config/Configuration.js index 886cc3682f2..8bd14a5385b 100644 --- a/packages/project/lib/config/Configuration.js +++ b/packages/project/lib/config/Configuration.js @@ -35,7 +35,7 @@ class Configuration { * @public * @returns {object} The configuration in a JSON format */ - toJSON() { + toJson() { return { mavenSnapshotEndpointUrl: this.#mavenSnapshotEndpointUrl, }; @@ -94,7 +94,7 @@ class Configuration { const writeFile = promisify(fs.writeFile); try { - return writeFile(filePath, JSON.stringify(config.toJSON())); + return writeFile(filePath, JSON.stringify(config.toJson())); } catch (err) { throw new Error( `Failed to write UI5 Tooling configuration to ${filePath}: ${err.message}`, { diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js index f4559f27664..f276a9727c9 100644 --- a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -163,7 +163,7 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { url = await Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrlFromMaven(); if (url) { log.verbose(`Updating UI5 Tooling configuration with new mavenSnapshotEndpointUrl: ${url}`); - const configJson = config.toJSON(); + const configJson = config.toJson(); configJson.mavenSnapshotEndpointUrl = url; await Configuration.toFile(new Configuration(configJson)); } diff --git a/packages/project/test/lib/config/Configuration.js b/packages/project/test/lib/config/Configuration.js index 911d17c9eac..083a2059a22 100644 --- a/packages/project/test/lib/config/Configuration.js +++ b/packages/project/test/lib/config/Configuration.js @@ -33,7 +33,7 @@ test.serial("Build configuration with defaults", (t) => { const config = new Configuration({}); - t.deepEqual(config.toJSON(), { + t.deepEqual(config.toJson(), { mavenSnapshotEndpointUrl: undefined }); }); @@ -48,7 +48,7 @@ test.serial("Overwrite defaults defaults", (t) => { const config = new Configuration(params); - t.deepEqual(config.toJSON(), params); + t.deepEqual(config.toJson(), params); }); test.serial("Check getters", (t) => { @@ -76,7 +76,7 @@ test.serial("fromFile", async (t) => { const config = await fromFile("/custom/path/.ui5rc"); - t.deepEqual(config.toJSON(), ui5rcContents); + t.deepEqual(config.toJson(), ui5rcContents); }); test.serial("fromFile: configuration file not found - fallback to default config", async (t) => { @@ -130,7 +130,7 @@ test.serial("toFile", async (t) => { t.deepEqual( writeStub.getCall(0).args, - ["/path/to/save/.ui5rc", JSON.stringify(config.toJSON())], + ["/path/to/save/.ui5rc", JSON.stringify(config.toJson())], "Write config to path" ); }); diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js index ba64c6a92b4..33f6a54114a 100644 --- a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js @@ -317,7 +317,7 @@ test.serial("_resolveSnapshotEndpointUrl: Maven fallback with config update", as t.is(endpoint, "maven-url", "Returned URL extracted from Maven settings.xml"); t.is(configFromFile.callCount, 1, "Configuration has been read once"); t.is(configToFile.callCount, 1, "Configuration has been written once"); - t.deepEqual(configToFile.firstCall.firstArg.toJSON(), { + t.deepEqual(configToFile.firstCall.firstArg.toJson(), { mavenSnapshotEndpointUrl: "maven-url" }, "Correct configuration has been written"); }); From 3bfc032ea3a9b98d00e3e441b6096e779edd1b45 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 21 Apr 2023 15:12:05 +0000 Subject: [PATCH 0910/1272] [ui5-project]Release 3.2.1 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 047aa172fd3..6a4ca442c02 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.2.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.2.1...HEAD). + + +## [v3.2.1] - 2023-04-21 +### Bug Fixes +- **Configuration:** Rename toJSON => toJson [`4dfbf28`](https://github.com/SAP/ui5-project/commit/4dfbf28a20d67ce8d482c9d8ca18331d7fa69629) + ## [v3.2.0] - 2023-04-21 @@ -363,6 +369,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.2.1]: https://github.com/SAP/ui5-project/compare/v3.2.0...v3.2.1 [v3.2.0]: https://github.com/SAP/ui5-project/compare/v3.1.1...v3.2.0 [v3.1.1]: https://github.com/SAP/ui5-project/compare/v3.1.0...v3.1.1 [v3.1.0]: https://github.com/SAP/ui5-project/compare/v3.0.4...v3.1.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e02818ea59b..60ffd6cb112 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.2.0", + "version": "3.2.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.2.0", + "version": "3.2.1", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index cd06d8e6ee4..5768de9b987 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.2.0", + "version": "3.2.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 753e5f9866be2e2a0364b482d141128b21ab3a21 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 23 Apr 2023 02:20:37 +0000 Subject: [PATCH 0911/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 171 +++++++++++++---------------- packages/project/package.json | 6 +- 2 files changed, 81 insertions(+), 96 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 60ffd6cb112..ffe6e6094ad 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -23,7 +23,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^11.1.0", "node-stream-zip": "^1.15.0", - "pacote": "^15.1.1", + "pacote": "^15.1.2", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", @@ -40,7 +40,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.38.0", + "eslint": "^8.39.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^41.1.2", @@ -53,7 +53,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.0.3", + "sinon": "^15.0.4", "tap-xunit": "^2.4.1" }, "engines": { @@ -444,17 +444,17 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.37.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.37.0.tgz", - "integrity": "sha512-hjK0wnsPCYLlF+HHB4R/RbUjOWeLW2SlarB67+Do5WsKILOkmIZvvPJFbtWSmbypxcjpoECLAMzoao0D4Bg5ZQ==", + "version": "0.37.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.37.1.tgz", + "integrity": "sha512-5vxWJ1gEkEF0yRd0O+uK6dHJf7adrxwQSX8PuRiPfFSAbNLnY0ZJfXaZucoz14Jj2N11xn2DnlEPwWRpYpvRjg==", "dev": true, "dependencies": { "comment-parser": "1.3.1", - "esquery": "^1.4.0", + "esquery": "^1.5.0", "jsdoc-type-pratt-parser": "~4.0.0" }, "engines": { - "node": "^14 || ^16 || ^17 || ^18 || ^19" + "node": "^14 || ^16 || ^17 || ^18 || ^19 || ^20" } }, "node_modules/@eslint-community/eslint-utils": { @@ -554,9 +554,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.38.0.tgz", - "integrity": "sha512-IoD2MfUnOV58ghIHCiil01PcohxjbYR/qCxsoC+xNgUwh1EY8jOOrYmu3d3a71+tJJ23uscEV4X2HJWMsPJu4g==", + "version": "8.39.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.39.0.tgz", + "integrity": "sha512-kf9RB0Fg7NZfap83B3QOqOGg9QmD9yBudqQXzzOtn3i4y7ZUXe5ONeW34Gwi+TxhH4mvj72R1Zc300KUMa9Bng==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1072,26 +1072,26 @@ } }, "node_modules/@tufjs/models": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.2.tgz", - "integrity": "sha512-uxarDtxTIK3f8hJS4yFhW/lvTa3tsiQU5iDCRut+NCnOXvNtEul0Ct58NIIcIx9Rkt7OFEK31Ndpqsd663nsew==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.3.tgz", + "integrity": "sha512-mkFEqqRisi13DmR5pX4x+Zk97EiU8djTtpNW1GeuX410y/raAsq/T3ZCjwoRIZ8/cIBfW0olK/sywlAiWevDVw==", "dependencies": { "@tufjs/canonical-json": "1.0.0", - "minimatch": "^8.0.3" + "minimatch": "^7.4.6" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/@tufjs/models/node_modules/minimatch": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", - "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", + "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", "dependencies": { "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -1186,20 +1186,6 @@ "npm": ">= 8" } }, - "node_modules/@ui5/fs/node_modules/minimatch": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", - "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@ui5/logger": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0.tgz", @@ -1917,9 +1903,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001480", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001480.tgz", - "integrity": "sha512-q7cpoPPvZYgtyC4VaBSN0Bt+PJ4c4EYRf0DrduInOz2SkFpHD5p3LnvEpqBp7UnJn+8x1Ogl1s38saUxe+ihQQ==", + "version": "1.0.30001481", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001481.tgz", + "integrity": "sha512-KCqHwRnaa1InZBtqXzP98LPg0ajCVujMKjqKDhZEthIpAsJl/YEIa3YvXjGXPVqzZVguccuu7ga9KOE1J9rKPQ==", "dev": true, "funding": [ { @@ -3154,9 +3140,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.367", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.367.tgz", - "integrity": "sha512-mNuDxb+HpLhPGUKrg0hSxbTjHWw8EziwkwlJNkFUj3W60ypigLDRVz04vU+VRsJPi8Gub+FDhYUpuTm9xiEwRQ==", + "version": "1.4.369", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.369.tgz", + "integrity": "sha512-LfxbHXdA/S+qyoTEA4EbhxGjrxx7WK2h6yb5K2v0UCOufUKX+VZaHbl3svlzZfv9sGseym/g3Ne4DpsgRULmqg==", "dev": true }, "node_modules/emittery": { @@ -3276,15 +3262,15 @@ } }, "node_modules/eslint": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.38.0.tgz", - "integrity": "sha512-pIdsD2jwlUGf/U38Jv97t8lq6HpaU/G9NKbYmpWpZGw3LdTNhZLbJePqxOXGB5+JEKfOPU/XLxYxFh03nr1KTg==", + "version": "8.39.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.39.0.tgz", + "integrity": "sha512-mwiok6cy7KTW7rBpo05k6+p4YVZByLNjAZ/ACB9DRCu4YDRwjXI01tWHp6KAUWelsBetTxKK/2sHB0vdS8Z2Og==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", "@eslint/eslintrc": "^2.0.2", - "@eslint/js": "8.38.0", + "@eslint/js": "8.39.0", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3294,7 +3280,7 @@ "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", + "eslint-scope": "^7.2.0", "eslint-visitor-keys": "^3.4.0", "espree": "^9.5.1", "esquery": "^1.4.2", @@ -4496,6 +4482,20 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", + "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/immutable": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz", @@ -5747,14 +5747,14 @@ } }, "node_modules/minimatch": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", - "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", + "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", "dependencies": { "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -7102,9 +7102,9 @@ } }, "node_modules/pacote": { - "version": "15.1.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.1.tgz", - "integrity": "sha512-eeqEe77QrA6auZxNHIp+1TzHQ0HBKf5V6c8zcaYZ134EJe1lCi+fjXATkNiEEfbG+e50nu02GLvUtmZcGOYabQ==", + "version": "15.1.2", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.2.tgz", + "integrity": "sha512-EAGJrMiIjBTBB6tWGrx9hFJTOo14B3HSAoa/W9SawFEBhUqjxN7qqaFlGVF9jfY/mIri8Mb2xafmkRgWxYXxIQ==", "dependencies": { "@npmcli/git": "^4.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -7121,7 +7121,7 @@ "promise-retry": "^2.0.1", "read-package-json": "^6.0.0", "read-package-json-fast": "^3.0.0", - "sigstore": "^1.0.0", + "sigstore": "^1.3.0", "ssri": "^10.0.0", "tar": "^6.1.11" }, @@ -7251,9 +7251,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.0.tgz", - "integrity": "sha512-qFXQEwchrZcMVen2uIDceR8Tii6kCJak5rzDStfEM0qA3YLMswaxIEZO0DhIbJ3aqaJiDjt+3crlplOb0tDtKQ==", + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.1.tgz", + "integrity": "sha512-65/Jky17UwSb0BuB9V+MyDpsOtXKmYwzhyl+cOa9XUiI4uV2Ouy/2voFP3+al0BjZbJgMBD8FojMpAf+Z+qn4A==", "engines": { "node": "14 || >=16.14" } @@ -7509,9 +7509,9 @@ } }, "node_modules/postcss": { - "version": "8.4.22", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.22.tgz", - "integrity": "sha512-XseknLAfRHzVWjCEtdviapiBtfLdgyzExD50Rg2ePaucEesyh8Wv4VPdW0nbyDa1ydbrAxV19jvMT4+LFmcNUA==", + "version": "8.4.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz", + "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==", "dev": true, "funding": [ { @@ -8238,12 +8238,11 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.1.tgz", - "integrity": "sha512-ngom3wq2UhjdbmRE/krgkD8BQyi1KZ5l+D2dVm4+Yj+jJIBp74/ZGunL6gNGc/CYuQmvUBiavWEXIotRiv5R6A==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.2.tgz", + "integrity": "sha512-Xsa0BcxIC6th9UwNjZkhrMtNo/MnyRL8jGCP+uEwhA5oFOCY1f2s1/oNKY47xQ0Bg5nkjsfAEIej1VeH62bDDQ==", "dependencies": { "foreground-child": "^3.1.0", - "fs.realpath": "^1.0.0", "jackspeak": "^2.0.3", "minimatch": "^9.0.0", "minipass": "^5.0.0", @@ -8259,20 +8258,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", - "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/rimraf/node_modules/minipass": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", @@ -8565,13 +8550,13 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sigstore": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.2.0.tgz", - "integrity": "sha512-Fr9+W1nkBSIZCkJQR7jDn/zI0UXNsVpp+7mDQkCnZOIxG9p6yNXBx9xntHsfUyYHE55XDkkVV3+rYbrkzAeesA==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.3.2.tgz", + "integrity": "sha512-0KT1DjpVB11FK15ep7BIsZQV6j1jBm4SnXIInbBCRvql6II39IKONOMO+j036sGsArU/+2xqa1NDJwJkic0neA==", "dependencies": { "@sigstore/protobuf-specs": "^0.1.0", "make-fetch-happen": "^11.0.1", - "tuf-js": "^1.0.0" + "tuf-js": "^1.1.3" }, "bin": { "sigstore": "bin/sigstore.js" @@ -8581,9 +8566,9 @@ } }, "node_modules/sinon": { - "version": "15.0.3", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.3.tgz", - "integrity": "sha512-si3geiRkeovP7Iel2O+qGL4NrO9vbMf3KsrJEi0ghP1l5aBkB5UxARea5j0FUsSqH3HLBh0dQPAyQ8fObRUqHw==", + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.4.tgz", + "integrity": "sha512-uzmfN6zx3GQaria1kwgWGeKiXSSbShBbue6Dcj0SI8fiCNFbiUDqKl57WFlY5lyhxZVUKmXvzgG2pilRQCBwWg==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", @@ -9219,9 +9204,9 @@ } }, "node_modules/terser": { - "version": "5.17.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.0.tgz", - "integrity": "sha512-3die3+pYW4mta4xF6K8Wtf7id8+oYyfqtAhjwzqY01+CfDSDMx/VA1Sp8sXWs5AVNIoAKoUfmp/gnPqRjBxuDA==", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.1.tgz", + "integrity": "sha512-hVl35zClmpisy6oaoKALOpS0rDYLxRFLHhRuDlEGTKey9qHjS1w9GMORjuwIMt70Wan4lwsLYyWDVnWgF+KUEw==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -9414,11 +9399,11 @@ } }, "node_modules/tuf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.3.tgz", - "integrity": "sha512-jGYi5nG/kqgfTFQSdoN6PW9eIn+XRZqdXku+fSwNk6UpWIsWaV7pzAqPgFr85edOPhoyJDyBqCS+DCnHroMvrw==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.4.tgz", + "integrity": "sha512-Lw2JRM3HTYhEtQJM2Th3aNCPbnXirtWMl065BawwmM2pX6XStH/ZO9e8T2hh0zk/HUa+1i6j+Lv6eDitKTau6A==", "dependencies": { - "@tufjs/models": "1.0.2", + "@tufjs/models": "1.0.3", "make-fetch-happen": "^11.0.1" }, "engines": { @@ -9616,9 +9601,9 @@ } }, "node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", "dev": true }, "node_modules/wide-align": { diff --git a/packages/project/package.json b/packages/project/package.json index 5768de9b987..653e72419a9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -132,7 +132,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^11.1.0", "node-stream-zip": "^1.15.0", - "pacote": "^15.1.1", + "pacote": "^15.1.2", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", @@ -149,7 +149,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.38.0", + "eslint": "^8.39.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^41.1.2", @@ -162,7 +162,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.0.3", + "sinon": "^15.0.4", "tap-xunit": "^2.4.1" } } From 7b392571f1ec5417009253d3de45eb142827fdcb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Apr 2023 05:56:54 +0000 Subject: [PATCH 0912/1272] [ui5-project]Bump coverallsapp/github-action from 2.1.0 to 2.1.2 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.1.0 to 2.1.2. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v2.1.0...v2.1.2) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index eb6a87b1a35..36956e2be96 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v2.1.0 + uses: coverallsapp/github-action@v2.1.2 From 067403c10b1278bdd947e72ae260e2c30a8d14f7 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 26 Apr 2023 15:22:21 +0200 Subject: [PATCH 0913/1272] [ui5-project][FIX] ui5Framework: Respect npm proxy configuration to fetch libraries This commit fixes a regression caused via https://github.com/SAP/ui5-project/pull/579 The proxy functionality relies on the agent option so it must not be disabled when using a proxy. This again enables proxy support but doesn't solve potential "Socket Timeout" issues that might also appear when using a proxy (see https://github.com/SAP/ui5-project/pull/579). The https-proxy option is now also taken into account, which didn't work before due to missing normalization from https-proxy to httpsProxy. Fixes: https://github.com/SAP/ui5-tooling/issues/822 --- .../project/lib/ui5Framework/npm/Registry.js | 24 ++++-- .../test/lib/ui5framework/npm/Registry.js | 86 ++++++++++++++++++- 2 files changed, 101 insertions(+), 9 deletions(-) diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index 33867cc9cad..721399cf49a 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -52,23 +52,35 @@ class Registry { const {default: libnpmconfig} = await import("libnpmconfig"); const opts = { cache: this._cacheDir, - // Disable usage of shared keep-alive agents. - // make-fetch-happen uses a hard-coded 15 seconds freeSocketTimeout - // that can be easily reached (Error: Socket timeout) and there doesn't - // seem to be another way to disable or increase it. - // Also see: https://github.com/node-modules/agentkeepalive/issues/106 - agent: false, }; const config = libnpmconfig.read(opts, { cwd: this._cwd }).toJSON(); + // Rename https-proxy to httpsProxy so that it is picked up by npm-registry-fetch (via pacote) + if (config["https-proxy"]) { + config.httpsProxy = config["https-proxy"]; + delete config["https-proxy"]; + } + + if (!config.proxy && !config.httpsProxy) { + // Disable usage of shared keep-alive agents unless a proxy is configured + // which only works with agents. + + // make-fetch-happen uses a hard-coded 15 seconds freeSocketTimeout + // that can be easily reached (Error: Socket timeout) and there doesn't + // seem to be another way to disable or increase it. + // Also see: https://github.com/node-modules/agentkeepalive/issues/106 + config.agent = false; + } + log.verbose(`Using npm configuration (extract):`); // Do not log full configuration as it may contain authentication tokens logConfig(config, "registry"); logConfig(config, "@sapui5:registry"); logConfig(config, "@openui5:registry"); logConfig(config, "proxy"); + logConfig(config, "httpsProxy"); logConfig(config, "globalconfig"); logConfig(config, "userconfig"); logConfig(config, "cache"); diff --git a/packages/project/test/lib/ui5framework/npm/Registry.js b/packages/project/test/lib/ui5framework/npm/Registry.js index 4e7d54aa766..5467271e743 100644 --- a/packages/project/test/lib/ui5framework/npm/Registry.js +++ b/packages/project/test/lib/ui5framework/npm/Registry.js @@ -54,6 +54,87 @@ test.serial("_getPacoteOptions", async (t) => { "fake": "config" }; + const expectedPacoteOptions = { + fake: "config", + agent: false + }; + + libnpmconfigReadToJSON.returns(npmConfig); + + const pacoteOptions = await registry._getPacoteOptions(); + + t.is(libnpmconfigReadToJSON.callCount, 1); + t.is(libnpmconfig.read.callCount, 1); + t.deepEqual(libnpmconfig.read.getCall(0).args, [{ + cache: "cacheDir", + }, { + cwd: "cwd" + }]); + + t.deepEqual(pacoteOptions, expectedPacoteOptions); + + const cachedPacoteOptions = await registry._getPacoteOptions(); + + t.is(libnpmconfigReadToJSON.callCount, 1); + t.is(libnpmconfig.read.callCount, 1); + + t.deepEqual(cachedPacoteOptions, expectedPacoteOptions); +}); + +test.serial("_getPacoteOptions (proxy config set)", async (t) => { + const {Registry, libnpmconfig, libnpmconfigReadToJSON} = t.context; + + const registry = new Registry({ + cwd: "cwd", + cacheDir: "cacheDir" + }); + + const npmConfig = { + "proxy": "http://localhost:9999" + }; + + const expectedPacoteOptions = { + proxy: "http://localhost:9999" + }; + + libnpmconfigReadToJSON.returns(npmConfig); + + const pacoteOptions = await registry._getPacoteOptions(); + + t.is(libnpmconfigReadToJSON.callCount, 1); + t.is(libnpmconfig.read.callCount, 1); + t.deepEqual(libnpmconfig.read.getCall(0).args, [{ + cache: "cacheDir", + }, { + cwd: "cwd" + }]); + + t.deepEqual(pacoteOptions, expectedPacoteOptions); + + const cachedPacoteOptions = await registry._getPacoteOptions(); + + t.is(libnpmconfigReadToJSON.callCount, 1); + t.is(libnpmconfig.read.callCount, 1); + + t.deepEqual(cachedPacoteOptions, expectedPacoteOptions); +}); + +test.serial("_getPacoteOptions (https-proxy config set)", async (t) => { + const {Registry, libnpmconfig, libnpmconfigReadToJSON} = t.context; + + const registry = new Registry({ + cwd: "cwd", + cacheDir: "cacheDir" + }); + + const npmConfig = { + "https-proxy": "http://localhost:9999" + }; + + const expectedPacoteOptions = { + httpsProxy: "http://localhost:9999" + }; + libnpmconfigReadToJSON.returns(npmConfig); const pacoteOptions = await registry._getPacoteOptions(); @@ -62,19 +143,18 @@ test.serial("_getPacoteOptions", async (t) => { t.is(libnpmconfig.read.callCount, 1); t.deepEqual(libnpmconfig.read.getCall(0).args, [{ cache: "cacheDir", - agent: false }, { cwd: "cwd" }]); - t.is(pacoteOptions, npmConfig); + t.deepEqual(pacoteOptions, expectedPacoteOptions); const cachedPacoteOptions = await registry._getPacoteOptions(); t.is(libnpmconfigReadToJSON.callCount, 1); t.is(libnpmconfig.read.callCount, 1); - t.is(cachedPacoteOptions, npmConfig); + t.deepEqual(cachedPacoteOptions, expectedPacoteOptions); }); test.serial("_getPacote", async (t) => { From 46dfb3ead292670a7fef8eec0d18c31e645564bb Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 27 Apr 2023 07:46:22 +0000 Subject: [PATCH 0914/1272] [ui5-project]Release 3.2.2 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 6a4ca442c02..1ba9c01b500 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.2.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.2.2...HEAD). + + +## [v3.2.2] - 2023-04-26 +### Bug Fixes +- **ui5Framework:** Respect npm proxy configuration to fetch libraries [`5e3da0c`](https://github.com/SAP/ui5-project/commit/5e3da0c552593ff521c8e27cdbb4aeb849f56aa4) + ## [v3.2.1] - 2023-04-21 @@ -369,6 +375,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.2.2]: https://github.com/SAP/ui5-project/compare/v3.2.1...v3.2.2 [v3.2.1]: https://github.com/SAP/ui5-project/compare/v3.2.0...v3.2.1 [v3.2.0]: https://github.com/SAP/ui5-project/compare/v3.1.1...v3.2.0 [v3.1.1]: https://github.com/SAP/ui5-project/compare/v3.1.0...v3.1.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ffe6e6094ad..3c36b161908 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.2.1", + "version": "3.2.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.2.1", + "version": "3.2.2", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index 653e72419a9..472865f781a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.2.1", + "version": "3.2.2", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 3cfbaac5ad28e6a58e17ae3a54700d71d911416e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 30 Apr 2023 02:20:51 +0000 Subject: [PATCH 0915/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 482 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 238 insertions(+), 248 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3c36b161908..050ff422311 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -21,9 +21,9 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "make-fetch-happen": "^11.1.0", + "make-fetch-happen": "^11.1.1", "node-stream-zip": "^1.15.0", - "pacote": "^15.1.2", + "pacote": "^15.1.3", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", @@ -91,30 +91,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.4.tgz", - "integrity": "sha512-/DYyDpeCfaVinT40FPGdkkb+lYSKvsVuMjDAG7jPOWWiM1ibOaB9CXJAlc4d1QpP/U2q2P9jbrSlClKSErd55g==", + "version": "7.21.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz", + "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.4.tgz", - "integrity": "sha512-qt/YV149Jman/6AfmlxJ04LMIu8bMoyl3RB91yTFrxQmgbrSvQMy7cI8Q62FHx1t8wJ8B5fu0UDoLwHAhUo1QA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.5.tgz", + "integrity": "sha512-9M398B/QH5DlfCOTKDZT1ozXr0x8uBEeFd+dJraGUZGiaNpGCDVGCc14hZexsMblw3XxltJ+6kSvogp9J+5a9g==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.4", - "@babel/helper-compilation-targets": "^7.21.4", - "@babel/helper-module-transforms": "^7.21.2", - "@babel/helpers": "^7.21.0", - "@babel/parser": "^7.21.4", + "@babel/generator": "^7.21.5", + "@babel/helper-compilation-targets": "^7.21.5", + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helpers": "^7.21.5", + "@babel/parser": "^7.21.5", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.4", - "@babel/types": "^7.21.4", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -139,12 +139,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.4.tgz", - "integrity": "sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz", + "integrity": "sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==", "dev": true, "dependencies": { - "@babel/types": "^7.21.4", + "@babel/types": "^7.21.5", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -154,12 +154,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.4.tgz", - "integrity": "sha512-Fa0tTuOXZ1iL8IeDFUWCzjZcn+sJGd9RZdH9esYVjEejGmzf+FFYQpMi/kZUk2kPy/q1H3/GPw7np8qar/stfg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", + "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.21.4", + "@babel/compat-data": "^7.21.5", "@babel/helper-validator-option": "^7.21.0", "browserslist": "^4.21.3", "lru-cache": "^5.1.1", @@ -182,9 +182,9 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz", + "integrity": "sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -228,40 +228,40 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", - "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", + "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-environment-visitor": "^7.21.5", + "@babel/helper-module-imports": "^7.21.4", + "@babel/helper-simple-access": "^7.21.5", "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.2", - "@babel/types": "^7.21.2" + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz", + "integrity": "sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", + "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", "dev": true, "dependencies": { - "@babel/types": "^7.20.2" + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -280,9 +280,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", + "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", "dev": true, "engines": { "node": ">=6.9.0" @@ -306,14 +306,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", - "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz", + "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", "dev": true, "dependencies": { "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0" + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -384,9 +384,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", - "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.5.tgz", + "integrity": "sha512-J+IxH2IsxV4HbnTrSWgMAQj0UEo61hDA4Ny8h8PCX0MLXiibqHbqIOVneqdocemSBc22VpBKxt4J6FQzy9HarQ==", "bin": { "parser": "bin/babel-parser.js" }, @@ -409,19 +409,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.4.tgz", - "integrity": "sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz", + "integrity": "sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.4", - "@babel/helper-environment-visitor": "^7.18.9", + "@babel/generator": "^7.21.5", + "@babel/helper-environment-visitor": "^7.21.5", "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.4", - "@babel/types": "^7.21.4", + "@babel/parser": "^7.21.5", + "@babel/types": "^7.21.5", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -430,12 +430,12 @@ } }, "node_modules/@babel/types": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", - "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz", + "integrity": "sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-string-parser": "^7.21.5", "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" }, @@ -473,9 +473,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.0.tgz", - "integrity": "sha512-vITaYzIcNmjn5tF5uxcZ/ft7/RXGrMUIS9HalWckEOF6ESiwXKoMzAQf2UW0aVd6rnOeExTJVd5hmWXucBKGXQ==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", + "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -951,9 +951,9 @@ } }, "node_modules/@npmcli/run-script": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.0.tgz", - "integrity": "sha512-ql+AbRur1TeOdl1FY+RAwGW9fcr4ZwiVKabdvm93mujGREVuVLbdkXRJDrkTXSdCjaxYydr1wlA2v67jxWG5BQ==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.1.tgz", + "integrity": "sha512-Yi04ZSold8jcbBJD/ahKMJSQCQifH8DAbMwkBvoLaTpGFxzHC3B/5ZyoVR69q/4xedz84tvi9DJOJjNe17h+LA==", "dependencies": { "@npmcli/node-gyp": "^3.0.0", "@npmcli/promise-spawn": "^6.0.0", @@ -1709,15 +1709,15 @@ } }, "node_modules/cacache": { - "version": "17.0.5", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.5.tgz", - "integrity": "sha512-Y/PRQevNSsjAPWykl9aeGz8Pr+OI6BYM9fYDNMvOkuUiG9IhG4LEmaYrZZZvioMUEQ+cBCxT0v8wrnCURccyKA==", + "version": "17.0.6", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.6.tgz", + "integrity": "sha512-ixcYmEBExFa/+ajIPjcwypxL97CjJyOsH9A/W+4qgEPIpJvKlC+HmVY8nkIck6n3PwUTdgq9c489niJGwl+5Cw==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", - "glob": "^9.3.1", + "glob": "^10.2.2", "lru-cache": "^7.7.1", - "minipass": "^4.0.0", + "minipass": "^5.0.0", "minipass-collect": "^1.0.2", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", @@ -1751,15 +1751,34 @@ "node": ">=6" } }, + "node_modules/cacache/node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/cacache/node_modules/glob": { - "version": "9.3.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", - "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.2.tgz", + "integrity": "sha512-Xsa0BcxIC6th9UwNjZkhrMtNo/MnyRL8jGCP+uEwhA5oFOCY1f2s1/oNKY47xQ0Bg5nkjsfAEIej1VeH62bDDQ==", "dependencies": { - "fs.realpath": "^1.0.0", - "minimatch": "^8.0.2", - "minipass": "^4.2.4", - "path-scurry": "^1.6.1" + "foreground-child": "^3.1.0", + "jackspeak": "^2.0.3", + "minimatch": "^9.0.0", + "minipass": "^5.0.0", + "path-scurry": "^1.7.0" + }, + "bin": { + "glob": "dist/cjs/src/bin.js" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -1784,20 +1803,6 @@ "node": ">=12" } }, - "node_modules/cacache/node_modules/minimatch": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", - "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/cacache/node_modules/p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -1812,6 +1817,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/cacache/node_modules/signal-exit": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", + "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/caching-transform": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", @@ -2317,7 +2333,6 @@ "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.1", @@ -2331,7 +2346,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, "engines": { "node": ">=8" } @@ -2340,7 +2354,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -3075,13 +3088,13 @@ } }, "node_modules/domutils": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", - "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", "dependencies": { "dom-serializer": "^2.0.0", "domelementtype": "^2.3.0", - "domhandler": "^5.0.1" + "domhandler": "^5.0.3" }, "funding": { "url": "https://github.com/fb55/domutils?sponsor=1" @@ -3140,9 +3153,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.369", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.369.tgz", - "integrity": "sha512-LfxbHXdA/S+qyoTEA4EbhxGjrxx7WK2h6yb5K2v0UCOufUKX+VZaHbl3svlzZfv9sGseym/g3Ne4DpsgRULmqg==", + "version": "1.4.377", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.377.tgz", + "integrity": "sha512-H3BYG6DW5Z+l0xcfXaicJGxrpA4kMlCxnN71+iNX+dBLkRMOdVJqFJiAmbNZZKA1zISpRg17JR03qGifXNsJtw==", "dev": true }, "node_modules/emittery": { @@ -3888,9 +3901,9 @@ } }, "node_modules/file-type": { - "version": "18.2.1", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.2.1.tgz", - "integrity": "sha512-Yw5MtnMv7vgD2/6Bjmmuegc8bQEVA9GmAyaR18bMYWKqsWDG9wgYZ1j4I6gNMF5Y5JBDcUcjRQqNQx7Y8uotcg==", + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.3.0.tgz", + "integrity": "sha512-pkPZ5OGIq0TYb37b8bHDLNeQSe1H2KlaQ2ySGpJkkr2KZdaWsO4QhPzHA0mQcsUW2cSqJk+4gM/UyLz/UFbXdQ==", "dev": true, "dependencies": { "readable-web-to-node-stream": "^3.0.2", @@ -4067,11 +4080,11 @@ ] }, "node_modules/fs-minipass": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.1.tgz", - "integrity": "sha512-MhaJDcFRTuLidHrIttu0RDGyyXs/IYHVmlcxfLAEFIWjc1vdLAkdwT7Ace2u7DbitWC0toKMl5eJZRYNVreIMw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.2.tgz", + "integrity": "sha512-2GAfyfoaCDRrM6jaOS3UsBts8yJ55VioXdWcOL7dK9zdAuKT71+WBA4ifnNYqVjYv+4SsPxjK0JT4yIIn4cA/g==", "dependencies": { - "minipass": "^4.0.0" + "minipass": "^5.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -4472,30 +4485,16 @@ } }, "node_modules/ignore-walk": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.2.tgz", - "integrity": "sha512-ezmQ1Dg2b3jVZh2Dh+ar6Eu2MqNSTkyb32HU2MAQQQX9tKM3q/UQ/9lf03lQ5hW+fOeoMnwxwkleZ0xcNp0/qg==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.3.tgz", + "integrity": "sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==", "dependencies": { - "minimatch": "^7.4.2" + "minimatch": "^9.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/ignore-walk/node_modules/minimatch": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", - "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/immutable": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz", @@ -5046,11 +5045,11 @@ } }, "node_modules/jackspeak": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.0.3.tgz", - "integrity": "sha512-0Jud3OMUdMbrlr3PyUMKESq51LXVAB+a239Ywdvd+Kgxj3MaBRml/nVRxf8tQFyfthMjuRkxkv7Vg58pmIMfuQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.1.1.tgz", + "integrity": "sha512-juf9stUEwUaILepraGOWIJTLwg48bUnBmRqd2ln2Os1sW987zeoj/hzhbvRB95oMuS2ZTpjULmdwHNX4rzZIZw==", "dependencies": { - "cliui": "^7.0.4" + "cliui": "^8.0.1" }, "engines": { "node": ">=14" @@ -5062,35 +5061,6 @@ "@pkgjs/parseargs": "^0.11.0" } }, - "node_modules/jackspeak/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/jackspeak/node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/jackspeak/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/js-beautify": { "version": "1.14.7", "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.7.tgz", @@ -5485,9 +5455,9 @@ } }, "node_modules/make-fetch-happen": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.0.tgz", - "integrity": "sha512-7ChuOzCb1LzdQZrTy0ky6RsCoMYeM+Fh4cY0+4zsJVhNcH5Q3OJojLY1mGkD0xAhWB29lskECVb6ZopofwjldA==", + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", "dependencies": { "agentkeepalive": "^4.2.1", "cacache": "^17.0.0", @@ -5496,7 +5466,7 @@ "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", "lru-cache": "^7.7.1", - "minipass": "^4.0.0", + "minipass": "^5.0.0", "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", @@ -5671,9 +5641,9 @@ } }, "node_modules/meow/node_modules/type-fest": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.8.0.tgz", - "integrity": "sha512-FVNSzGQz9Th+/9R6Lvv7WIAkstylfHN2/JYxkyhhmKFYh9At2DST8t6L6Lref9eYO8PXFTfG9Sg1Agg0K3vq3Q==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.9.0.tgz", + "integrity": "sha512-hR8JP2e8UiH7SME5JZjsobBlEiatFoxpzCP+R3ZeCo7kAaG1jXQE5X/buLzogM6GJu8le9Y4OcfNuIQX0rZskA==", "dev": true, "engines": { "node": ">=14.16" @@ -5793,9 +5763,9 @@ } }, "node_modules/minipass": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", - "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", "engines": { "node": ">=8" } @@ -5828,11 +5798,11 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/minipass-fetch": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.2.tgz", - "integrity": "sha512-/ZpF1CQaWYqjbhfFgKNt3azxztEpc/JUPuMkqOgrnMQqcU8CbE409AUdJYTIWryl3PP5CBaTJZT71N49MXP/YA==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz", + "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==", "dependencies": { - "minipass": "^4.0.0", + "minipass": "^5.0.0", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" }, @@ -6568,12 +6538,12 @@ } }, "node_modules/npm-registry-fetch": { - "version": "14.0.4", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.4.tgz", - "integrity": "sha512-pMS2DRkwg+M44ct65zrN/Cr9IHK1+n6weuefAo6Er4lc+/8YBCU0Czq04H3ZiSigluh7pb2rMM5JpgcytctB+Q==", + "version": "14.0.5", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz", + "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==", "dependencies": { "make-fetch-happen": "^11.0.0", - "minipass": "^4.0.0", + "minipass": "^5.0.0", "minipass-fetch": "^3.0.0", "minipass-json-stream": "^1.0.1", "minizlib": "^2.1.2", @@ -7102,9 +7072,9 @@ } }, "node_modules/pacote": { - "version": "15.1.2", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.2.tgz", - "integrity": "sha512-EAGJrMiIjBTBB6tWGrx9hFJTOo14B3HSAoa/W9SawFEBhUqjxN7qqaFlGVF9jfY/mIri8Mb2xafmkRgWxYXxIQ==", + "version": "15.1.3", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.3.tgz", + "integrity": "sha512-aRts8cZqxiJVDitmAh+3z+FxuO3tLNWEmwDRPEpDDiZJaRz06clP4XX112ynMT5uF0QNoMPajBBHnaStUEPJXA==", "dependencies": { "@npmcli/git": "^4.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -7112,7 +7082,7 @@ "@npmcli/run-script": "^6.0.0", "cacache": "^17.0.0", "fs-minipass": "^3.0.0", - "minipass": "^4.0.0", + "minipass": "^5.0.0", "npm-package-arg": "^10.0.0", "npm-packlist": "^7.0.0", "npm-pick-manifest": "^8.0.0", @@ -7258,14 +7228,6 @@ "node": "14 || >=16.14" } }, - "node_modules/path-scurry/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "engines": { - "node": ">=8" - } - }, "node_modules/path-to-regexp": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", @@ -7692,11 +7654,11 @@ } }, "node_modules/read-package-json": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.1.tgz", - "integrity": "sha512-AaHqXxfAVa+fNL07x8iAghfKOds/XXsu7zoouIVsbm7PEbQ3nMWXlvjcbrNLjElnUHWQtAo4QEa0RXuvD4XlpA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.2.tgz", + "integrity": "sha512-Ismd3km1d/FGzcjm8fBf/4ktkyd0t6pbkjYqu1gvRzOzN+aTxi1eigdZp7441TlszQ+GsdYezgS+g9cgy8QK9w==", "dependencies": { - "glob": "^9.3.0", + "glob": "^10.2.2", "json-parse-even-better-errors": "^3.0.0", "normalize-package-data": "^5.0.0", "npm-normalize-package-bin": "^3.0.0" @@ -7725,15 +7687,34 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/read-package-json/node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/read-package-json/node_modules/glob": { - "version": "9.3.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", - "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.2.tgz", + "integrity": "sha512-Xsa0BcxIC6th9UwNjZkhrMtNo/MnyRL8jGCP+uEwhA5oFOCY1f2s1/oNKY47xQ0Bg5nkjsfAEIej1VeH62bDDQ==", "dependencies": { - "fs.realpath": "^1.0.0", - "minimatch": "^8.0.2", - "minipass": "^4.2.4", - "path-scurry": "^1.6.1" + "foreground-child": "^3.1.0", + "jackspeak": "^2.0.3", + "minimatch": "^9.0.0", + "minipass": "^5.0.0", + "path-scurry": "^1.7.0" + }, + "bin": { + "glob": "dist/cjs/src/bin.js" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -7769,20 +7750,6 @@ "node": ">=12" } }, - "node_modules/read-package-json/node_modules/minimatch": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", - "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/read-package-json/node_modules/normalize-package-data": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", @@ -7797,6 +7764,17 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/read-package-json/node_modules/signal-exit": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", + "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/read-pkg": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.0.0.tgz", @@ -8043,9 +8021,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.8.0.tgz", - "integrity": "sha512-FVNSzGQz9Th+/9R6Lvv7WIAkstylfHN2/JYxkyhhmKFYh9At2DST8t6L6Lref9eYO8PXFTfG9Sg1Agg0K3vq3Q==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.9.0.tgz", + "integrity": "sha512-hR8JP2e8UiH7SME5JZjsobBlEiatFoxpzCP+R3ZeCo7kAaG1jXQE5X/buLzogM6GJu8le9Y4OcfNuIQX0rZskA==", "engines": { "node": ">=14.16" }, @@ -8258,14 +8236,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rimraf/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "engines": { - "node": ">=8" - } - }, "node_modules/rimraf/node_modules/signal-exit": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", @@ -8417,9 +8387,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.62.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.62.0.tgz", - "integrity": "sha512-Q4USplo4pLYgCi+XlipZCWUQz5pkg/ruSSgJ0WRDSb/+3z9tXUOkQ7QPYn4XrhZKYAK4HlpaQecRwKLJX6+DBg==", + "version": "1.62.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.62.1.tgz", + "integrity": "sha512-NHpxIzN29MXvWiuswfc1W3I0N8SXBd8UR26WntmDlRYf0bSADnwnOjsyMZ3lMezSlArD33Vs3YFhp7dWvL770A==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8550,9 +8520,9 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sigstore": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.3.2.tgz", - "integrity": "sha512-0KT1DjpVB11FK15ep7BIsZQV6j1jBm4SnXIInbBCRvql6II39IKONOMO+j036sGsArU/+2xqa1NDJwJkic0neA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.4.0.tgz", + "integrity": "sha512-N7TRpSbFjY/TrFDg6yGAQSYBrQ5s6qmPiq4pD6fkv1LoyfMsLG0NwZWG2s5q+uttLHgyVyTa0Rogx2P78rN8kQ==", "dependencies": { "@sigstore/protobuf-specs": "^0.1.0", "make-fetch-happen": "^11.0.1", @@ -8785,11 +8755,11 @@ "dev": true }, "node_modules/ssri": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.3.tgz", - "integrity": "sha512-lJtX/BFPI/VEtxZmLfeh7pzisIs6micwZ3eruD3+ds9aPsXKlYpwDS2Q7omD6WC42WO9+bnUSzlMmfv8uK8meg==", + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.4.tgz", + "integrity": "sha512-12+IR2CB2C28MMAw0Ncqwj5QbTcs0nGIhgJzYWzDkb21vWmfNI83KS4f3Ci6GI98WreIfG7o9UXp3C0qbpA8nQ==", "dependencies": { - "minipass": "^4.0.0" + "minipass": "^5.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -9138,6 +9108,14 @@ "node": ">=8" } }, + "node_modules/tar/node_modules/minipass": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", + "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/tar/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -9699,18 +9677,30 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/write-file-atomic": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.0.tgz", - "integrity": "sha512-R7NYMnHSlV42K54lwY9lvW6MnSm1HSJqZL3xiSgi9E7//FYaI74r2G0rd+/X6VAMkHEdzxQaU5HUOXWUz5kA/w==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", "dev": true, "dependencies": { "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" + "signal-exit": "^4.0.1" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/write-file-atomic/node_modules/signal-exit": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", + "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/xml2js": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", @@ -9782,9 +9772,9 @@ } }, "node_modules/yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, "dependencies": { "cliui": "^8.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 472865f781a..e847b09b267 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -130,9 +130,9 @@ "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", - "make-fetch-happen": "^11.1.0", + "make-fetch-happen": "^11.1.1", "node-stream-zip": "^1.15.0", - "pacote": "^15.1.2", + "pacote": "^15.1.3", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", From 04d849366fa3513ce24fe3eadcb39aa543829603 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 May 2023 09:22:06 +0200 Subject: [PATCH 0916/1272] [ui5-project][INTERNAL] Bump eslint-plugin-jsdoc from 41.1.2 to 43.1.1 (#604) Bumps eslint-plugin-jsdoc from 41.1.2 to 43.1.1. Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Florian Vogt --- packages/project/.eslintrc.cjs | 2 +- packages/project/lib/graph/Module.js | 1 - .../project/lib/ui5Framework/maven/Installer.js | 5 ----- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 5 files changed, 9 insertions(+), 15 deletions(-) diff --git a/packages/project/.eslintrc.cjs b/packages/project/.eslintrc.cjs index 260f1b87b2e..aa1e96d5dd1 100644 --- a/packages/project/.eslintrc.cjs +++ b/packages/project/.eslintrc.cjs @@ -55,7 +55,6 @@ module.exports = { "jsdoc/check-param-names": 2, "jsdoc/check-tag-names": 2, "jsdoc/check-types": 2, - "jsdoc/newline-after-description": 2, "jsdoc/no-undefined-types": 0, "jsdoc/require-description": 0, "jsdoc/require-description-complete-sentence": 0, @@ -68,6 +67,7 @@ module.exports = { "jsdoc/require-returns": 0, "jsdoc/require-returns-description": 0, "jsdoc/require-returns-type": 2, + "jsdoc/tag-lines": [2, "any", {"startLines": 1}], "jsdoc/valid-types": 0, // ava/assertion-arguments reports concatenated strings in a assertion message as an issue // See: https://github.com/avajs/eslint-plugin-ava/issues/332 diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js index be431741ce4..fc21903f017 100644 --- a/packages/project/lib/graph/Module.js +++ b/packages/project/lib/graph/Module.js @@ -105,7 +105,6 @@ class Module { * @typedef {object} @ui5/project/graph/Module~SpecificationsResult * @property {@ui5/project/specifications/Project|null} Project found in the module (if one is found) * @property {@ui5/project/specifications/Extension[]} Array of extensions found in the module - * */ /** diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js index 57dad6fba8b..8f12241afa7 100644 --- a/packages/project/lib/ui5Framework/maven/Installer.js +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -111,7 +111,6 @@ class Installer extends AbstractInstaller { * @param {string} coordinates.extension Extension of the requested artifact * @param {string} [coordinates.pkgName] npm package name the artifact corresponds to (if any) * @returns {@ui5/project/ui5Framework/maven/Installer~LocalMetadata} - * */ async _fetchArtifactMetadata(coordinates) { const fsId = this._generateFsIdFromCoordinates(coordinates); @@ -176,7 +175,6 @@ class Installer extends AbstractInstaller { * @param {string|null} coordinates.classifier Classifier of the requested artifact * @param {string} coordinates.extension Extension of the requested artifact * @returns {@ui5/project/ui5Framework/maven/Installer~LocalMetadata} - * */ async _getRemoteArtifactMetadata({groupId, artifactId, version, classifier, extension}) { const reg = await this.getRegistry(); @@ -219,7 +217,6 @@ class Installer extends AbstractInstaller { * * @param {string} id File System identifier for the artifact. Typically derived from the coordinates * @returns {@ui5/project/ui5Framework/maven/Installer~LocalMetadata} - * */ async _getLocalArtifactMetadata(id) { try { @@ -296,7 +293,6 @@ class Installer extends AbstractInstaller { * @param {string|null} parameters.classifier Classifier of the requested artifact * @param {string} parameters.extension Extension of the requested artifact * @returns {@ui5/project/ui5Framework/maven/Installer~InstalledPackage} - * */ async installPackage({pkgName, groupId, artifactId, version, classifier, extension}) { const {revision} = await this._fetchArtifactMetadata({ @@ -381,7 +377,6 @@ class Installer extends AbstractInstaller { * @param {string} [parameters.revision] Optional revision of the artifact to request. * If not provided, the latest revision will be determined from the registry metadata. * @returns {@ui5/project/ui5Framework/maven/Installer~InstalledArtifact} - * */ async installArtifact({groupId, artifactId, version, classifier, extension, revision}) { if (!revision) { diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 050ff422311..1643d2f2847 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^8.39.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^41.1.2", + "eslint-plugin-jsdoc": "^43.1.1", "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -3366,22 +3366,22 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "41.1.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-41.1.2.tgz", - "integrity": "sha512-MePJXdGiPW7AG06CU5GbKzYtKpoHwTq1lKijjq+RwL/cQkZtBZ59Zbv5Ep0RVxSMnq6242249/n+w4XrTZ1Afg==", + "version": "43.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-43.1.1.tgz", + "integrity": "sha512-J2kjjsJ5vBXSyNzqJhceeSGTAgVgZHcPSJKo3vD4tNjUdfky98rR2VfZUDsS1GKL6isyVa8GWvr+Az7Vyg2HXA==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.37.0", + "@es-joy/jsdoccomment": "~0.37.1", "are-docs-informative": "^0.0.2", "comment-parser": "1.3.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", - "semver": "^7.3.8", + "semver": "^7.5.0", "spdx-expression-parse": "^3.0.1" }, "engines": { - "node": "^14 || ^16 || ^17 || ^18 || ^19" + "node": ">=16" }, "peerDependencies": { "eslint": "^7.0.0 || ^8.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index e847b09b267..7ace4d4eb75 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -152,7 +152,7 @@ "eslint": "^8.39.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^41.1.2", + "eslint-plugin-jsdoc": "^43.1.1", "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 5662c80eb56f8fe15124a3feff62a867a125dd83 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 4 May 2023 10:19:35 +0200 Subject: [PATCH 0917/1272] [ui5-project][FEATURE] Sapui5MavenSnapshotResolver: Expose cacheMode parameter through all APIs (#607) --- packages/project/lib/graph/graph.js | 18 ++++++++----- .../project/lib/graph/helpers/ui5Framework.js | 8 +++--- .../Sapui5MavenSnapshotResolver.js | 12 ++++----- .../lib/ui5Framework/maven/CacheMode.js | 18 +++++++++++++ .../lib/ui5Framework/maven/Installer.js | 16 ++++++----- packages/project/package.json | 1 + .../test/lib/graph/graph.integration.js | 7 +++-- packages/project/test/lib/graph/graph.js | 27 +++++++++++++------ .../test/lib/graph/helpers/ui5Framework.js | 14 +++++++--- packages/project/test/lib/package-exports.js | 3 ++- .../test/lib/ui5framework/maven/Installer.js | 6 ++--- 11 files changed, 90 insertions(+), 40 deletions(-) create mode 100644 packages/project/lib/ui5Framework/maven/CacheMode.js diff --git a/packages/project/lib/graph/graph.js b/packages/project/lib/graph/graph.js index 3cfe3a843de..e3a5140acd3 100644 --- a/packages/project/lib/graph/graph.js +++ b/packages/project/lib/graph/graph.js @@ -31,6 +31,8 @@ const log = getLogger("generateProjectGraph"); * Whether framework dependencies should be added to the graph * @param {string} [options.workspaceName] * Name of the workspace configuration that should be used if any is provided + * @param {module:@ui5/project/ui5Framework/maven/CacheMode} [options.cacheMode] + * Cache mode to use when consuming SNAPSHOT versions of a framework * @param {string} [options.workspaceConfigPath=ui5-workspace.yaml] * Workspace configuration file to use if no object has been provided * @param {@ui5/project/graph/Workspace~Configuration} [options.workspaceConfiguration] @@ -40,7 +42,7 @@ const log = getLogger("generateProjectGraph"); */ export async function graphFromPackageDependencies({ cwd, rootConfiguration, rootConfigPath, - versionOverride, resolveFrameworkDependencies = true, + versionOverride, cacheMode, resolveFrameworkDependencies = true, workspaceName /* TODO 4.0: default workspaceName to "default" ? */, workspaceConfiguration, workspaceConfigPath = "ui5-workspace.yaml" }) { @@ -71,7 +73,7 @@ export async function graphFromPackageDependencies({ const projectGraph = await projectGraphBuilder(provider, workspace); if (resolveFrameworkDependencies) { - await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride, workspace}); + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride, cacheMode, workspace}); } return projectGraph; @@ -93,6 +95,8 @@ export async function graphFromPackageDependencies({ * Configuration file to use for the root module instead the default ui5.yaml. Either a path relative to * cwd or an absolute path. In both case, platform-specific path segment separators must be used. * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project + * @param {module:@ui5/project/ui5Framework/maven/CacheMode} [options.cacheMode] + * Cache mode to use when consuming SNAPSHOT versions of a framework * @param {string} [options.resolveFrameworkDependencies=true] * Whether framework dependencies should be added to the graph * @returns {Promise<@ui5/project/graph/ProjectGraph>} Promise resolving to a Project Graph instance @@ -100,7 +104,7 @@ export async function graphFromPackageDependencies({ export async function graphFromStaticFile({ filePath = "projectDependencies.yaml", cwd, rootConfiguration, rootConfigPath, - versionOverride, resolveFrameworkDependencies = true + versionOverride, cacheMode, resolveFrameworkDependencies = true }) { log.verbose(`Creating project graph using static file...`); const { @@ -121,7 +125,7 @@ export async function graphFromStaticFile({ const projectGraph = await projectGraphBuilder(provider); if (resolveFrameworkDependencies) { - await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride, cacheMode}); } return projectGraph; @@ -143,6 +147,8 @@ export async function graphFromStaticFile({ * Configuration file to use for the root module instead the default ui5.yaml. Either a path relative to * cwd or an absolute path. In both case, platform-specific path segment separators must be used. * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project + * @param {module:@ui5/project/ui5Framework/maven/CacheMode} [options.cacheMode] + * Cache mode to use when consuming SNAPSHOT versions of a framework * @param {string} [options.resolveFrameworkDependencies=true] * Whether framework dependencies should be added to the graph * @returns {Promise<@ui5/project/graph/ProjectGraph>} Promise resolving to a Project Graph instance @@ -150,7 +156,7 @@ export async function graphFromStaticFile({ export async function graphFromObject({ dependencyTree, cwd, rootConfiguration, rootConfigPath, - versionOverride, resolveFrameworkDependencies = true + versionOverride, cacheMode, resolveFrameworkDependencies = true }) { log.verbose(`Creating project graph using object...`); const { @@ -169,7 +175,7 @@ export async function graphFromObject({ const projectGraph = await projectGraphBuilder(dependencyTreeProvider); if (resolveFrameworkDependencies) { - await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride}); + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride, cacheMode}); } return projectGraph; diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 047764859ac..7c6bb2347e0 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -280,15 +280,15 @@ export default { * @param {object} [options] * @param {string} [options.versionOverride] Framework version to use instead of the root projects framework * version + * @param {module:@ui5/project/ui5Framework/maven/CacheMode} [options.cacheMode] + * Cache mode to use when consuming SNAPSHOT versions of a framework * @param {@ui5/project/graph/Workspace} [options.workspace] * Optional workspace instance to use for overriding node resolutions - * @param {object} [options.resolverConfig] - * Optional configuration object to use for the resolvers * @returns {Promise<@ui5/project/graph/ProjectGraph>} * Promise resolving with the given graph instance to allow method chaining */ enrichProjectGraph: async function(projectGraph, options = {}) { - const {workspace} = options; + const {workspace, cacheMode} = options; const rootProject = projectGraph.getRoot(); const frameworkName = rootProject.getFrameworkName(); const frameworkVersion = rootProject.getFrameworkVersion(); @@ -369,7 +369,7 @@ export default { cwd: rootProject.getRootPath(), version, providedLibraryMetadata, - ...options.resolverConfig, + cacheMode }); let startTime; diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js index f276a9727c9..64eefff79f8 100644 --- a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -33,8 +33,8 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { * @param {string} [options.cwd=process.cwd()] Current working directory * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. Relative to `process.cwd()` - * @param {string} [options.cacheMode="default"] Can be "default" (cache everything, invalidate after 9 hours), - * "off" (do not cache) and "force" (use cache only - no requests) + * @param {module:@ui5/project/ui5Framework/maven/CacheMode} [options.cacheMode=Default] + * Cache mode to use */ constructor(options) { super(options); @@ -136,10 +136,10 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { snapshotEndpointUrl = process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT_URL || snapshotEndpointUrl; if (!snapshotEndpointUrl) { - // If we resolve the settings.xml at this point, we'd need to always ask the end - // user for confirmation. In some cases where the resources are already cached, - // this is not necessary and we could skip it as a real request to the repository won't - // be made. + // Here we return a function which returns a promise that resolves with the URL. + // If we would already start resolving the settings.xml at this point, we'd need to always ask the + // end user for confirmation whether the resolved URL should be used. In some cases where the resources + // are already cached, this is actually not necessary and could be skipped return Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrl; } else { return () => Promise.resolve(snapshotEndpointUrl); diff --git a/packages/project/lib/ui5Framework/maven/CacheMode.js b/packages/project/lib/ui5Framework/maven/CacheMode.js new file mode 100644 index 00000000000..5757ca3dd0d --- /dev/null +++ b/packages/project/lib/ui5Framework/maven/CacheMode.js @@ -0,0 +1,18 @@ + + +/** + * Cache modes for maven consumption + * + * @public + * @readonly + * @enum {string} + * @property {string} Default Cache everything, invalidate after 9 hours + * @property {string} Force Use cache only + * @property {string} Off Do not use the cache + * @module @ui5/project/ui5Framework/maven/CacheMode + */ +export default { + Default: "Default", + Force: "Force", + Off: "Off" +}; diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js index 8f12241afa7..53d9e6737dd 100644 --- a/packages/project/lib/ui5Framework/maven/Installer.js +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -6,6 +6,7 @@ const StreamZip = _StreamZip.async; import {promisify} from "node:util"; import Registry from "./Registry.js"; import AbstractInstaller from "../AbstractInstaller.js"; +import CacheMode from "./CacheMode.js"; import {rimraf} from "rimraf"; const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); @@ -26,10 +27,9 @@ class Installer extends AbstractInstaller { * @param {Function} parameters.snapshotEndpointUrlCb Callback that returns a Promise , * resolving to the Maven repository URL. * Example: https://registry.corp/vendor/build-snapshots/ - * @param {string} [parameters.cacheMode="default"] Can be "default" (cache everything, invalidate after 9 hours), - * "off" (do not cache), "force" (use cache only - no requests) + * @param {module:@ui5/project/ui5Framework/maven/CacheMode} [parameters.cacheMode=Default] Cache mode to use */ - constructor({ui5HomeDir, snapshotEndpointUrlCb, cacheMode = "default"}) { + constructor({ui5HomeDir, snapshotEndpointUrlCb, cacheMode = CacheMode.Default}) { super(ui5HomeDir); this._artifactsDir = path.join(ui5HomeDir, "framework", "artifacts"); @@ -43,6 +43,10 @@ class Installer extends AbstractInstaller { if (!this._snapshotEndpointUrlCb) { throw new Error(`Installer: Missing Snapshot-Endpoint URL callback parameter`); } + if (!Object.values(CacheMode).includes(cacheMode)) { + throw new Error(`Installer: Invalid value '${cacheMode}' for cacheMode parameter. ` + + `Must be one of ${Object.values(CacheMode).join(", ")}`); + } log.verbose(`Installing Maven artifacts to: ${this._artifactsDir}`); log.verbose(`Installing Packages to: ${this._packagesDir}`); @@ -118,7 +122,7 @@ class Installer extends AbstractInstaller { return this._synchronize("metadata-" + fsId, async () => { const localMetadata = await this._getLocalArtifactMetadata(fsId); - if (this._cacheMode === "force" && !localMetadata.revision) { + if (this._cacheMode === CacheMode.Force && !localMetadata.revision) { throw new Error(`Could not find artifact ` + `${logId} in local cache`); } @@ -126,8 +130,8 @@ class Installer extends AbstractInstaller { const now = new Date().getTime(); const timeSinceLastCheck = now - localMetadata.lastCheck; - if (this._cacheMode !== "force" && - (timeSinceLastCheck > CACHE_TIME || this._cacheMode === "off")) { + if (this._cacheMode !== CacheMode.Force && + (timeSinceLastCheck > CACHE_TIME || this._cacheMode === CacheMode.Off)) { // No cached metadata (-> timeSinceLastCheck equals time since 1970) or // too old metadata or disabled cache // => Retrieve metadata from repository diff --git a/packages/project/package.json b/packages/project/package.json index 7ace4d4eb75..6ac5494bd91 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -24,6 +24,7 @@ "./ui5Framework/Sapui5MavenSnapshotResolver": "./lib/ui5Framework/Sapui5MavenSnapshotResolver.js", "./ui5Framework/Openui5Resolver": "./lib/ui5Framework/Openui5Resolver.js", "./ui5Framework/Sapui5Resolver": "./lib/ui5Framework/Sapui5Resolver.js", + "./ui5Framework/maven/CacheMode": "./lib/ui5Framework/maven/CacheMode.js", "./validation/validator": "./lib/validation/validator.js", "./validation/ValidationError": "./lib/validation/ValidationError.js", "./graph/ProjectGraph": "./lib/graph/ProjectGraph.js", diff --git a/packages/project/test/lib/graph/graph.integration.js b/packages/project/test/lib/graph/graph.integration.js index 8aa4d2a208b..649c130fbe3 100644 --- a/packages/project/test/lib/graph/graph.integration.js +++ b/packages/project/test/lib/graph/graph.integration.js @@ -4,6 +4,7 @@ import path from "node:path"; import sinonGlobal from "sinon"; import esmock from "esmock"; import Workspace from "../../../lib/graph/Workspace.js"; +import CacheMode from "../../../lib/ui5Framework/maven/CacheMode.js"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); const fixturesPath = path.join(__dirname, "..", "..", "fixtures"); @@ -253,7 +254,8 @@ test.serial("graphFromPackageDependencies with inactive workspace file at custom rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "default", - workspaceConfigPath: path.join(libraryHPath, "custom-ui5-workspace.yaml") + workspaceConfigPath: path.join(libraryHPath, "custom-ui5-workspace.yaml"), + cacheMode: CacheMode.Force }); t.is(res, "graph"); @@ -276,6 +278,7 @@ test.serial("graphFromPackageDependencies with inactive workspace file at custom "enrichProjectGraph got called with graph"); t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { versionOverride: "versionOverride", - workspace: null + workspace: null, + cacheMode: "Force" }, "enrichProjectGraph got called with correct options"); }); diff --git a/packages/project/test/lib/graph/graph.js b/packages/project/test/lib/graph/graph.js index a8a32e7d0bd..7fcf7815f39 100644 --- a/packages/project/test/lib/graph/graph.js +++ b/packages/project/test/lib/graph/graph.js @@ -3,6 +3,7 @@ import {fileURLToPath} from "node:url"; import path from "node:path"; import sinonGlobal from "sinon"; import esmock from "esmock"; +import CacheMode from "../../../lib/ui5Framework/maven/CacheMode.js"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); const fixturesPath = path.join(__dirname, "..", "..", "fixtures"); @@ -57,7 +58,8 @@ test.serial("graphFromPackageDependencies", async (t) => { cwd: "cwd", rootConfiguration: "rootConfiguration", rootConfigPath: "/rootConfigPath", - versionOverride: "versionOverride" + versionOverride: "versionOverride", + cacheMode: CacheMode.Off }); t.is(res, "graph"); @@ -81,7 +83,8 @@ test.serial("graphFromPackageDependencies", async (t) => { "enrichProjectGraph got called with graph"); t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { versionOverride: "versionOverride", - workspace: undefined + workspace: undefined, + cacheMode: "Off" }, "enrichProjectGraph got called with correct options"); }); @@ -98,6 +101,7 @@ test.serial("graphFromPackageDependencies with workspace name", async (t) => { rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "dolphin", + cacheMode: CacheMode.Off }); t.is(res, "graph"); @@ -128,7 +132,8 @@ test.serial("graphFromPackageDependencies with workspace name", async (t) => { "enrichProjectGraph got called with graph"); t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { versionOverride: "versionOverride", - workspace: "workspace" + workspace: "workspace", + cacheMode: "Off" }, "enrichProjectGraph got called with correct options"); }); @@ -225,6 +230,7 @@ test.serial("graphFromPackageDependencies with empty workspace", async (t) => { rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", workspaceName: "dolphin", + cacheMode: CacheMode.Off }); t.is(res, "graph"); @@ -255,7 +261,8 @@ test.serial("graphFromPackageDependencies with empty workspace", async (t) => { "enrichProjectGraph got called with graph"); t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { versionOverride: "versionOverride", - workspace: null + workspace: null, + cacheMode: "Off" }, "enrichProjectGraph got called with correct options"); }); @@ -290,7 +297,8 @@ test.serial("graphFromStaticFile", async (t) => { filePath: "file/path", rootConfiguration: "rootConfiguration", rootConfigPath: "/rootConfigPath", - versionOverride: "versionOverride" + versionOverride: "versionOverride", + cacheMode: CacheMode.Off }); t.is(res, "graph"); @@ -316,7 +324,8 @@ test.serial("graphFromStaticFile", async (t) => { t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", "enrichProjectGraph got called with graph"); t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { - versionOverride: "versionOverride" + versionOverride: "versionOverride", + cacheMode: "Off" }, "enrichProjectGraph got called with correct options"); }); @@ -351,7 +360,8 @@ test.serial("usingObject", async (t) => { dependencyTree: "dependencyTree", rootConfiguration: "rootConfiguration", rootConfigPath: "/rootConfigPath", - versionOverride: "versionOverride" + versionOverride: "versionOverride", + cacheMode: "Off" }); t.is(res, "graph"); @@ -371,7 +381,8 @@ test.serial("usingObject", async (t) => { t.is(enrichProjectGraphStub.getCall(0).args[0], "graph", "enrichProjectGraph got called with graph"); t.deepEqual(enrichProjectGraphStub.getCall(0).args[1], { - versionOverride: "versionOverride" + versionOverride: "versionOverride", + cacheMode: "Off" }, "enrichProjectGraph got called with correct options"); }); diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index 91009cec6ff..fd5070d6fe1 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -6,6 +6,7 @@ import esmock from "esmock"; import DependencyTreeProvider from "../../../../lib/graph/providers/DependencyTree.js"; import projectGraphBuilder from "../../../../lib/graph/projectGraphBuilder.js"; import Specification from "../../../../lib/specifications/Specification.js"; +import CacheMode from "../../../../lib/ui5Framework/maven/CacheMode.js"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); @@ -107,6 +108,7 @@ test.serial("enrichProjectGraph", async (t) => { t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{ + cacheMode: undefined, cwd: dependencyTree.path, version: dependencyTree.configuration.framework.version, providedLibraryMetadata: undefined @@ -177,7 +179,6 @@ test.serial("enrichProjectGraph: without framework configuration", async (t) => test.serial("enrichProjectGraph SNAPSHOT", async (t) => { const {sinon, ui5Framework, utils, Sapui5MavenSnapshotResolverInstallStub} = t.context; - process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT = "__url__"; const dependencyTree = { id: "test1", @@ -216,7 +217,9 @@ test.serial("enrichProjectGraph SNAPSHOT", async (t) => { const provider = new DependencyTreeProvider({dependencyTree}); const projectGraph = await projectGraphBuilder(provider); - await ui5Framework.enrichProjectGraph(projectGraph); + await ui5Framework.enrichProjectGraph(projectGraph, { + cacheMode: CacheMode.Force + }); t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGraph should be called once"); @@ -262,8 +265,6 @@ test.serial("enrichProjectGraph SNAPSHOT", async (t) => { t.deepEqual(callbackCalls, [ "application.a" ], "Traversed graph in correct order"); - - delete process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT; }); test.serial("enrichProjectGraph: With versionOverride", async (t) => { @@ -313,6 +314,7 @@ test.serial("enrichProjectGraph: With versionOverride", async (t) => { t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ + cacheMode: undefined, cwd: dependencyTree.path, version: "1.99.9", providedLibraryMetadata: undefined @@ -451,6 +453,7 @@ test.serial("enrichProjectGraph should resolve framework project with version an t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGrap should be called once"); t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ + cacheMode: undefined, cwd: dependencyTree.path, version: "1.2.3", providedLibraryMetadata: undefined @@ -531,6 +534,7 @@ test.serial("enrichProjectGraph should resolve framework project " + t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGraph should be called once"); t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ + cacheMode: undefined, cwd: dependencyTree.path, version: "1.99.9", providedLibraryMetadata: undefined @@ -794,6 +798,7 @@ test.serial("enrichProjectGraph should use framework library metadata from works t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ + cacheMode: undefined, cwd: dependencyTree.path, version: "1.111.1", providedLibraryMetadata: workspaceFrameworkLibraryMetadata @@ -851,6 +856,7 @@ test.serial("enrichProjectGraph should allow omitting framework version in case t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ + cacheMode: undefined, cwd: dependencyTree.path, version: undefined, providedLibraryMetadata: workspaceFrameworkLibraryMetadata diff --git a/packages/project/test/lib/package-exports.js b/packages/project/test/lib/package-exports.js index c3c7284d698..e1e9737f910 100644 --- a/packages/project/test/lib/package-exports.js +++ b/packages/project/test/lib/package-exports.js @@ -13,7 +13,7 @@ test("export of package.json", (t) => { // Check number of definied exports test("check number of exports", (t) => { const packageJson = require("@ui5/project/package.json"); - t.is(Object.keys(packageJson.exports).length, 12); + t.is(Object.keys(packageJson.exports).length, 13); }); // Public API contract (exported modules) @@ -24,6 +24,7 @@ test("check number of exports", (t) => { "ui5Framework/Openui5Resolver", "ui5Framework/Sapui5Resolver", "ui5Framework/Sapui5MavenSnapshotResolver", + "ui5Framework/maven/CacheMode", "validation/validator", "validation/ValidationError", "graph/ProjectGraph", diff --git a/packages/project/test/lib/ui5framework/maven/Installer.js b/packages/project/test/lib/ui5framework/maven/Installer.js index 21451dfc85a..659e9b08c85 100644 --- a/packages/project/test/lib/ui5framework/maven/Installer.js +++ b/packages/project/test/lib/ui5framework/maven/Installer.js @@ -684,7 +684,7 @@ test.serial("_fetchArtifactMetadata: Cache available but disabled", async (t) => cwd: "/cwd/", ui5HomeDir: "/ui5Home/", snapshotEndpointUrlCb: () => {}, - cacheMode: "off" + cacheMode: "Off" }); sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); @@ -720,7 +720,7 @@ test.serial("_fetchArtifactMetadata: Cache outdated but enforced", async (t) => cwd: "/cwd/", ui5HomeDir: "/ui5Home/", snapshotEndpointUrlCb: () => {}, - cacheMode: "force" + cacheMode: "Force" }); sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); @@ -757,7 +757,7 @@ test.serial("_fetchArtifactMetadata throws", async (t) => { cwd: "/cwd/", ui5HomeDir: "/ui5Home/", snapshotEndpointUrlCb: () => {}, - cacheMode: "force" + cacheMode: "Force" }); sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); From 2c96d782fb55e491ece9c2b179b412a6ad4e143d Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Thu, 4 May 2023 14:12:39 +0300 Subject: [PATCH 0918/1272] [ui5-project][FIX] Resolve properly package.json dependency aliases (#608) Resolves: https://github.com/SAP/ui5-tooling/issues/809 When shimmed packages are defined as dependency aliases in the package.json, they are being excluded from the bundlig as the packager eventually finds the real package and its path and as it's not defined in the shim, but its alias, it gets ignored. We need to provide more robust discovery in order to handle those cases: - https://github.com/npm/cli/pull/3 - https://github.com/npm/rfcs/blob/main/implemented/0001-package-aliases.md --- .../providers/NodePackageDependencies.js | 16 ++++++++++--- .../lib/extensionModule.js | 2 ++ .../extension.a.esm.alias/package.json | 5 ++++ .../application.a.aliases/package.json | 12 ++++++++++ .../fixtures/application.a.aliases/ui5.yaml | 23 +++++++++++++++++++ .../application.a.aliases/webapp/index.html | 9 ++++++++ .../webapp/manifest.json | 13 +++++++++++ .../application.a.aliases/webapp/test.js | 5 ++++ .../NodePackageDependencies.integration.js | 18 +++++++++++++++ 9 files changed, 100 insertions(+), 3 deletions(-) create mode 100644 packages/project/test/fixtures/application.a.aliases/node_modules/extension.a.esm.alias/lib/extensionModule.js create mode 100644 packages/project/test/fixtures/application.a.aliases/node_modules/extension.a.esm.alias/package.json create mode 100644 packages/project/test/fixtures/application.a.aliases/package.json create mode 100644 packages/project/test/fixtures/application.a.aliases/ui5.yaml create mode 100644 packages/project/test/fixtures/application.a.aliases/webapp/index.html create mode 100644 packages/project/test/fixtures/application.a.aliases/webapp/manifest.json create mode 100644 packages/project/test/fixtures/application.a.aliases/webapp/test.js diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js index ecf79c5ef47..ada50f406ed 100644 --- a/packages/project/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -64,7 +64,7 @@ class NodePackageDependencies { } return Promise.all(node._dependencies.map(async ({name, optional}) => { const modulePath = await this._resolveModulePath(node.path, name, workspace); - return this._getNode(modulePath, optional); + return this._getNode(modulePath, optional, name); })); } @@ -99,7 +99,17 @@ class NodePackageDependencies { } } - async _getNode(modulePath, optional) { + /** + * Resolves a Node module by reading its package.json + * + * @param {string} modulePath Path to the module. + * @param {boolean} optional Whether this dependency is optional. + * @param {string} [nameAlias] The name of the module. It's usually the same as the name definfed + * in package.json and could easily be skipped. Useful when defining dependency as an alias: + * {@link https://github.com/npm/rfcs/blob/main/implemented/0001-package-aliases.md} + * @returns {Promise} + */ + async _getNode(modulePath, optional, nameAlias) { log.verbose(`Reading package.json in directory ${modulePath}...`); const packageJson = await readPackage({ cwd: modulePath, @@ -107,7 +117,7 @@ class NodePackageDependencies { }); return { - id: packageJson.name, + id: nameAlias || packageJson.name, version: packageJson.version, path: modulePath, optional, diff --git a/packages/project/test/fixtures/application.a.aliases/node_modules/extension.a.esm.alias/lib/extensionModule.js b/packages/project/test/fixtures/application.a.aliases/node_modules/extension.a.esm.alias/lib/extensionModule.js new file mode 100644 index 00000000000..c7a5c0758dd --- /dev/null +++ b/packages/project/test/fixtures/application.a.aliases/node_modules/extension.a.esm.alias/lib/extensionModule.js @@ -0,0 +1,2 @@ +export default () => "extension module"; +export function determineRequiredDependencies () { return "required dependencies function" }; diff --git a/packages/project/test/fixtures/application.a.aliases/node_modules/extension.a.esm.alias/package.json b/packages/project/test/fixtures/application.a.aliases/node_modules/extension.a.esm.alias/package.json new file mode 100644 index 00000000000..97c63b1660f --- /dev/null +++ b/packages/project/test/fixtures/application.a.aliases/node_modules/extension.a.esm.alias/package.json @@ -0,0 +1,5 @@ +{ + "name": "extension.a", + "type": "module", + "version": "1.0.0" +} diff --git a/packages/project/test/fixtures/application.a.aliases/package.json b/packages/project/test/fixtures/application.a.aliases/package.json new file mode 100644 index 00000000000..b15c70dfe0a --- /dev/null +++ b/packages/project/test/fixtures/application.a.aliases/package.json @@ -0,0 +1,12 @@ +{ + "name": "application.a.aliases", + "version": "1.0.0", + "description": "Simple SAPUI5 based application", + "main": "index.html", + "dependencies": { + "extension.a.esm.alias": "file:../extension.a.esm" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/application.a.aliases/ui5.yaml b/packages/project/test/fixtures/application.a.aliases/ui5.yaml new file mode 100644 index 00000000000..bdc9a31f8fe --- /dev/null +++ b/packages/project/test/fixtures/application.a.aliases/ui5.yaml @@ -0,0 +1,23 @@ +--- +specVersion: "3.0" +type: application +metadata: + name: application.a.aliases + +--- # Everything below this line could also be put into the ui5.yaml of a standalone extension module +specVersion: "3.0" +kind: extension +type: project-shim +metadata: + name: my.application.thirdparty +shims: + configurations: + extension.a.esm.alias: # name as defined in package.json + specVersion: "3.0" + type: module # Use module type + metadata: + name: extension.a.esm.alias + resources: + configuration: + paths: + /resources/my/application/thirdparty/: "" # map root directory of lodash module diff --git a/packages/project/test/fixtures/application.a.aliases/webapp/index.html b/packages/project/test/fixtures/application.a.aliases/webapp/index.html new file mode 100644 index 00000000000..1b8755901bf --- /dev/null +++ b/packages/project/test/fixtures/application.a.aliases/webapp/index.html @@ -0,0 +1,9 @@ + + + + Application A + + + + + diff --git a/packages/project/test/fixtures/application.a.aliases/webapp/manifest.json b/packages/project/test/fixtures/application.a.aliases/webapp/manifest.json new file mode 100644 index 00000000000..d33902df74e --- /dev/null +++ b/packages/project/test/fixtures/application.a.aliases/webapp/manifest.json @@ -0,0 +1,13 @@ +{ + "_version": "1.1.0", + "sap.app": { + "_version": "1.1.0", + "id": "id1", + "type": "application", + "applicationVersion": { + "version": "1.2.2" + }, + "embeds": ["embedded"], + "title": "{{title}}" + } +} diff --git a/packages/project/test/fixtures/application.a.aliases/webapp/test.js b/packages/project/test/fixtures/application.a.aliases/webapp/test.js new file mode 100644 index 00000000000..a3df410c341 --- /dev/null +++ b/packages/project/test/fixtures/application.a.aliases/webapp/test.js @@ -0,0 +1,5 @@ +function test(paramA) { + var variableA = paramA; + console.log(variableA); +} +test(); diff --git a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js index 842442cb11e..19657aa4196 100644 --- a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js +++ b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js @@ -6,6 +6,7 @@ import sinonGlobal from "sinon"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); +const applicationAAliasesPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a.aliases"); const applicationCPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.c"); const applicationC2Path = path.join(__dirname, "..", "..", "..", "fixtures", "application.c2"); const applicationC3Path = path.join(__dirname, "..", "..", "..", "fixtures", "application.c3"); @@ -68,6 +69,23 @@ test("AppA: project with collection dependency", async (t) => { ]); }); +test("AppA: project with an alias dependency", async (t) => { + const workspace = { + getName: () => "workspace name", + getModuleByNodeId: t.context.sinon.stub().resolves(undefined).onFirstCall().resolves({ + getPath: () => path.join(applicationAAliasesPath, "node_modules", "extension.a.esm.alias"), + getVersion: () => "1.0.0", + }) + }; + const npmProvider = new NodePackageDependenciesProvider({ + cwd: applicationAAliasesPath + }); + await testGraphCreationDfs(t, npmProvider, [ + "extension.a.esm.alias", + "application.a.aliases", + ], workspace); +}); + test("AppA: project with workspace overrides", async (t) => { const workspace = { getName: () => "workspace name", From 842a821a1065a9a127e6d9a4efb4c4dc6c891e4d Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Fri, 5 May 2023 11:15:27 +0000 Subject: [PATCH 0919/1272] [ui5-project]Release 3.3.0 --- packages/project/CHANGELOG.md | 14 ++++++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 1ba9c01b500..5f2252629c8 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,19 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.2.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.3.0...HEAD). + + +## [v3.3.0] - 2023-05-04 +### Bug Fixes +- Resolve properly package.json dependency aliases ([#608](https://github.com/SAP/ui5-project/issues/608)) [`f8753e5`](https://github.com/SAP/ui5-project/commit/f8753e53c6bc7f89bb19107073fb52db0a725cb9) + +### Features +- **Sapui5MavenSnapshotResolver:** Expose cacheMode parameter through all APIs ([#607](https://github.com/SAP/ui5-project/issues/607)) [`78eb482`](https://github.com/SAP/ui5-project/commit/78eb4825ecab9534426f517e764451f53d232fed) + -## [v3.2.2] - 2023-04-26 +## [v3.2.2] - 2023-04-27 ### Bug Fixes - **ui5Framework:** Respect npm proxy configuration to fetch libraries [`5e3da0c`](https://github.com/SAP/ui5-project/commit/5e3da0c552593ff521c8e27cdbb4aeb849f56aa4) @@ -375,6 +384,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.3.0]: https://github.com/SAP/ui5-project/compare/v3.2.2...v3.3.0 [v3.2.2]: https://github.com/SAP/ui5-project/compare/v3.2.1...v3.2.2 [v3.2.1]: https://github.com/SAP/ui5-project/compare/v3.2.0...v3.2.1 [v3.2.0]: https://github.com/SAP/ui5-project/compare/v3.1.1...v3.2.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1643d2f2847..fe8293d7a21 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.2.2", + "version": "3.3.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.2.2", + "version": "3.3.0", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index 6ac5494bd91..135933c260a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.2.2", + "version": "3.3.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 4566aab89fdd8382098851cc01bf4ce8a36b7d2e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 7 May 2023 02:20:52 +0000 Subject: [PATCH 0920/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 409 +++++++++++++++++++++-------- packages/project/package.json | 4 +- 2 files changed, 297 insertions(+), 116 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fe8293d7a21..595a199cd11 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,10 +40,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.39.0", + "eslint": "^8.40.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^43.1.1", + "eslint-plugin-jsdoc": "^43.2.0", "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -100,9 +100,9 @@ } }, "node_modules/@babel/core": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.5.tgz", - "integrity": "sha512-9M398B/QH5DlfCOTKDZT1ozXr0x8uBEeFd+dJraGUZGiaNpGCDVGCc14hZexsMblw3XxltJ+6kSvogp9J+5a9g==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", + "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -111,7 +111,7 @@ "@babel/helper-compilation-targets": "^7.21.5", "@babel/helper-module-transforms": "^7.21.5", "@babel/helpers": "^7.21.5", - "@babel/parser": "^7.21.5", + "@babel/parser": "^7.21.8", "@babel/template": "^7.20.7", "@babel/traverse": "^7.21.5", "@babel/types": "^7.21.5", @@ -384,9 +384,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.5.tgz", - "integrity": "sha512-J+IxH2IsxV4HbnTrSWgMAQj0UEo61hDA4Ny8h8PCX0MLXiibqHbqIOVneqdocemSBc22VpBKxt4J6FQzy9HarQ==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz", + "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==", "bin": { "parser": "bin/babel-parser.js" }, @@ -444,9 +444,9 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.37.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.37.1.tgz", - "integrity": "sha512-5vxWJ1gEkEF0yRd0O+uK6dHJf7adrxwQSX8PuRiPfFSAbNLnY0ZJfXaZucoz14Jj2N11xn2DnlEPwWRpYpvRjg==", + "version": "0.38.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.38.0.tgz", + "integrity": "sha512-TFac4Bnv0ZYNkEeDnOWHQhaS1elWlvOCQxH06iHeu5iffs+hCaLVIZJwF+FqksQi68R4i66Pu+4DfFGvble+Uw==", "dev": true, "dependencies": { "comment-parser": "1.3.1", @@ -454,7 +454,7 @@ "jsdoc-type-pratt-parser": "~4.0.0" }, "engines": { - "node": "^14 || ^16 || ^17 || ^18 || ^19 || ^20" + "node": ">=16" } }, "node_modules/@eslint-community/eslint-utils": { @@ -482,14 +482,14 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.2.tgz", - "integrity": "sha512-3W4f5tDUra+pA+FzgugqL2pRimUTDJWKr7BINqOpkZrC0uYI0NIc0/JFgBROCU07HR6GieA5m3/rsPIhDmCXTQ==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz", + "integrity": "sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.5.1", + "espree": "^9.5.2", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -554,9 +554,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.39.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.39.0.tgz", - "integrity": "sha512-kf9RB0Fg7NZfap83B3QOqOGg9QmD9yBudqQXzzOtn3i4y7ZUXe5ONeW34Gwi+TxhH4mvj72R1Zc300KUMa9Bng==", + "version": "8.40.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.40.0.tgz", + "integrity": "sha512-ElyB54bJIhXQYVKjDSvCkPO1iU1tSAeVQJbllWJq1XQSmmA4dgFk8CbiBGpiOPxleE48vDogxCtmMYku4HSVLA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -622,6 +622,59 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/@istanbuljs/esm-loader-hook": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/@istanbuljs/esm-loader-hook/-/esm-loader-hook-0.2.0.tgz", @@ -823,9 +876,9 @@ } }, "node_modules/@npmcli/git/node_modules/which": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", - "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", "dependencies": { "isexe": "^2.0.0" }, @@ -937,9 +990,9 @@ } }, "node_modules/@npmcli/promise-spawn/node_modules/which": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", - "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", "dependencies": { "isexe": "^2.0.0" }, @@ -966,9 +1019,9 @@ } }, "node_modules/@npmcli/run-script/node_modules/which": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz", - "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", "dependencies": { "isexe": "^2.0.0" }, @@ -1072,31 +1125,17 @@ } }, "node_modules/@tufjs/models": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.3.tgz", - "integrity": "sha512-mkFEqqRisi13DmR5pX4x+Zk97EiU8djTtpNW1GeuX410y/raAsq/T3ZCjwoRIZ8/cIBfW0olK/sywlAiWevDVw==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz", + "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==", "dependencies": { "@tufjs/canonical-json": "1.0.0", - "minimatch": "^7.4.6" + "minimatch": "^9.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@tufjs/models/node_modules/minimatch": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", - "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@types/linkify-it": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", @@ -1369,7 +1408,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, "engines": { "node": ">=12" }, @@ -1381,7 +1419,6 @@ "version": "6.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, "engines": { "node": ">=12" }, @@ -1709,9 +1746,9 @@ } }, "node_modules/cacache": { - "version": "17.0.6", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.6.tgz", - "integrity": "sha512-ixcYmEBExFa/+ajIPjcwypxL97CjJyOsH9A/W+4qgEPIpJvKlC+HmVY8nkIck6n3PwUTdgq9c489niJGwl+5Cw==", + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.0.tgz", + "integrity": "sha512-hXpFU+Z3AfVmNuiLve1qxWHMq0RSIt5gjCKAHi/M6DktwFwDdAXAtunl1i4WSKaaVcU9IsRvXFg42jTHigcC6Q==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", @@ -1722,7 +1759,6 @@ "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", "ssri": "^10.0.0", "tar": "^6.1.11", "unique-filename": "^3.0.0" @@ -1919,9 +1955,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001481", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001481.tgz", - "integrity": "sha512-KCqHwRnaa1InZBtqXzP98LPg0ajCVujMKjqKDhZEthIpAsJl/YEIa3YvXjGXPVqzZVguccuu7ga9KOE1J9rKPQ==", + "version": "1.0.30001486", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz", + "integrity": "sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==", "dev": true, "funding": [ { @@ -2333,6 +2369,7 @@ "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.1", @@ -2346,6 +2383,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, "engines": { "node": ">=8" } @@ -2354,6 +2392,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -3109,8 +3148,7 @@ "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" }, "node_modules/editorconfig": { "version": "0.15.3", @@ -3153,9 +3191,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.377", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.377.tgz", - "integrity": "sha512-H3BYG6DW5Z+l0xcfXaicJGxrpA4kMlCxnN71+iNX+dBLkRMOdVJqFJiAmbNZZKA1zISpRg17JR03qGifXNsJtw==", + "version": "1.4.385", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.385.tgz", + "integrity": "sha512-L9zlje9bIw0h+CwPQumiuVlfMcV4boxRjFIWDcLfFqTZNbkwOExBzfmswytHawObQX4OUhtNv8gIiB21kOurIg==", "dev": true }, "node_modules/emittery": { @@ -3275,15 +3313,15 @@ } }, "node_modules/eslint": { - "version": "8.39.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.39.0.tgz", - "integrity": "sha512-mwiok6cy7KTW7rBpo05k6+p4YVZByLNjAZ/ACB9DRCu4YDRwjXI01tWHp6KAUWelsBetTxKK/2sHB0vdS8Z2Og==", + "version": "8.40.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.40.0.tgz", + "integrity": "sha512-bvR+TsP9EHL3TqNtj9sCNJVAFK3fBN8Q7g5waghxyRsPLIMwL73XSKnZFK0hk/O2ANC+iAoq6PWMQ+IfBAJIiQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.0.2", - "@eslint/js": "8.39.0", + "@eslint/eslintrc": "^2.0.3", + "@eslint/js": "8.40.0", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3294,8 +3332,8 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.0", - "espree": "^9.5.1", + "eslint-visitor-keys": "^3.4.1", + "espree": "^9.5.2", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -3366,12 +3404,12 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "43.1.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-43.1.1.tgz", - "integrity": "sha512-J2kjjsJ5vBXSyNzqJhceeSGTAgVgZHcPSJKo3vD4tNjUdfky98rR2VfZUDsS1GKL6isyVa8GWvr+Az7Vyg2HXA==", + "version": "43.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-43.2.0.tgz", + "integrity": "sha512-Hst7XUfqh28UmPD52oTXmjaRN3d0KrmOZdgtp4h9/VHUJD3Evoo82ZGXi1TtRDWgWhvqDIRI63O49H0eH7NrZQ==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.37.1", + "@es-joy/jsdoccomment": "~0.38.0", "are-docs-informative": "^0.0.2", "comment-parser": "1.3.1", "debug": "^4.3.4", @@ -3452,9 +3490,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz", - "integrity": "sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", + "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -3685,13 +3723,13 @@ } }, "node_modules/espree": { - "version": "9.5.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.1.tgz", - "integrity": "sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==", + "version": "9.5.2", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", + "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", "dependencies": { "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.0" + "eslint-visitor-keys": "^3.4.1" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -5045,11 +5083,11 @@ } }, "node_modules/jackspeak": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.1.1.tgz", - "integrity": "sha512-juf9stUEwUaILepraGOWIJTLwg48bUnBmRqd2ln2Os1sW987zeoj/hzhbvRB95oMuS2ZTpjULmdwHNX4rzZIZw==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.0.tgz", + "integrity": "sha512-r5XBrqIJfwRIjRt/Xr5fv9Wh09qyhHfKnYddDlpM+ibRR20qrYActpCAgU6U+d53EOEjzkvxPMVHSlgR7leXrQ==", "dependencies": { - "cliui": "^8.0.1" + "@isaacs/cliui": "^8.0.2" }, "engines": { "node": ">=14" @@ -5641,15 +5679,18 @@ } }, "node_modules/meow/node_modules/type-fest": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.9.0.tgz", - "integrity": "sha512-hR8JP2e8UiH7SME5JZjsobBlEiatFoxpzCP+R3ZeCo7kAaG1jXQE5X/buLzogM6GJu8le9Y4OcfNuIQX0rZskA==", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.10.0.tgz", + "integrity": "sha512-hmAPf1datm+gt3c2mvu0sJyhFy6lTkIGf0GzyaZWxRLnabQfPUqg6tF95RPg6sLxKI7nFLGdFxBcf2/7+GXI+A==", "dev": true, "engines": { "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" + }, + "peerDependencies": { + "typescript": ">=4.7.0" } }, "node_modules/merge-stream": { @@ -6472,9 +6513,9 @@ } }, "node_modules/npm-normalize-package-bin": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.0.tgz", - "integrity": "sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -7654,9 +7695,9 @@ } }, "node_modules/read-package-json": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.2.tgz", - "integrity": "sha512-Ismd3km1d/FGzcjm8fBf/4ktkyd0t6pbkjYqu1gvRzOzN+aTxi1eigdZp7441TlszQ+GsdYezgS+g9cgy8QK9w==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.3.tgz", + "integrity": "sha512-4QbpReW4kxFgeBQ0vPAqh2y8sXEB3D4t3jsXbJKIhBiF80KT6XRo45reqwtftju5J6ru1ax06A2Gb/wM1qCOEQ==", "dependencies": { "glob": "^10.2.2", "json-parse-even-better-errors": "^3.0.0", @@ -8021,14 +8062,17 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.9.0.tgz", - "integrity": "sha512-hR8JP2e8UiH7SME5JZjsobBlEiatFoxpzCP+R3ZeCo7kAaG1jXQE5X/buLzogM6GJu8le9Y4OcfNuIQX0rZskA==", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.10.0.tgz", + "integrity": "sha512-hmAPf1datm+gt3c2mvu0sJyhFy6lTkIGf0GzyaZWxRLnabQfPUqg6tF95RPg6sLxKI7nFLGdFxBcf2/7+GXI+A==", "engines": { "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" + }, + "peerDependencies": { + "typescript": ">=4.7.0" } }, "node_modules/readable-stream": { @@ -8807,6 +8851,47 @@ "node": ">=8" } }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/string-width/node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -8838,7 +8923,6 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dev": true, "dependencies": { "ansi-regex": "^6.0.1" }, @@ -8849,6 +8933,26 @@ "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/strip-bom": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", @@ -9071,13 +9175,13 @@ } }, "node_modules/tar": { - "version": "6.1.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", - "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", + "version": "6.1.14", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.14.tgz", + "integrity": "sha512-piERznXu0U7/pW7cdSn7hjqySIVTYT6F76icmFk7ptU7dDYlXTm5r9A6K04R2vU3olYgoKeo1Cg3eeu5nhftAw==", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^4.0.0", + "minipass": "^5.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" @@ -9108,14 +9212,6 @@ "node": ">=8" } }, - "node_modules/tar/node_modules/minipass": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", - "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", - "engines": { - "node": ">=8" - } - }, "node_modules/tar/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -9377,12 +9473,12 @@ } }, "node_modules/tuf-js": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.4.tgz", - "integrity": "sha512-Lw2JRM3HTYhEtQJM2Th3aNCPbnXirtWMl065BawwmM2pX6XStH/ZO9e8T2hh0zk/HUa+1i6j+Lv6eDitKTau6A==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.5.tgz", + "integrity": "sha512-inqodgxdsmuxrtQVbu6tPNgRKWD1Boy3VB6GO7KczJZpAHiTukwhSzXUSzvDcw5pE2Jo8ua+e1ykpHv7VdPVlQ==", "dependencies": { - "@tufjs/models": "1.0.3", - "make-fetch-happen": "^11.0.1" + "@tufjs/models": "1.0.4", + "make-fetch-happen": "^11.1.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -9427,6 +9523,19 @@ "is-typedarray": "^1.0.0" } }, + "node_modules/typescript": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", + "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=12.20" + } + }, "node_modules/uc.micro": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", @@ -9607,6 +9716,24 @@ "integrity": "sha512-i3KR1mQMNwY2wx20ozq2EjISGtQWDIfV56We+yGJ5yDs8jTwQiLLaqHlkBHITlCuJnYlVRmXegxFxZg7gqI++A==" }, "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", @@ -9622,10 +9749,60 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/wrap-ansi/node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, "engines": { "node": ">=8" } @@ -9634,6 +9811,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -9648,6 +9826,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -9658,12 +9837,14 @@ "node_modules/wrap-ansi/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, "node_modules/wrap-ansi/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, diff --git a/packages/project/package.json b/packages/project/package.json index 135933c260a..b29d5da8c40 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -150,10 +150,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.39.0", + "eslint": "^8.40.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^43.1.1", + "eslint-plugin-jsdoc": "^43.2.0", "esmock": "^2.2.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 0e6a20b87e58e115b20c46eaed39a24487af649a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 14 May 2023 02:20:52 +0000 Subject: [PATCH 0921/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 220 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 106 insertions(+), 118 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 595a199cd11..0148ef5023d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -29,7 +29,7 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", "rimraf": "^5.0.0", - "semver": "^7.5.0", + "semver": "^7.5.1", "xml2js": "^0.5.0", "yesno": "^0.4.0" }, @@ -44,7 +44,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^43.2.0", - "esmock": "^2.2.1", + "esmock": "^2.2.2", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", @@ -1004,9 +1004,9 @@ } }, "node_modules/@npmcli/run-script": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.1.tgz", - "integrity": "sha512-Yi04ZSold8jcbBJD/ahKMJSQCQifH8DAbMwkBvoLaTpGFxzHC3B/5ZyoVR69q/4xedz84tvi9DJOJjNe17h+LA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", + "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", "dependencies": { "@npmcli/node-gyp": "^3.0.0", "@npmcli/promise-spawn": "^6.0.0", @@ -1059,21 +1059,12 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz", - "integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^2.0.0" - } - }, - "node_modules/@sinonjs/fake-timers/node_modules/@sinonjs/commons": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", - "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.1.0.tgz", + "integrity": "sha512-w1qd368vtrwttm1PRJWPW1QHlbmHrVDGs1eBH/jZvRPUFS4MNXV9Q33EQdjOdeAxZ7O8+3wM7zxztm2nfUSyKw==", "dev": true, "dependencies": { - "type-detect": "4.0.8" + "@sinonjs/commons": "^3.0.0" } }, "node_modules/@sinonjs/samsam": { @@ -1240,72 +1231,72 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.47.tgz", - "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.2.tgz", + "integrity": "sha512-CKZWo1dzsQYTNTft7whzjL0HsrEpMfiK7pjZ2WFE3bC1NA7caUjWioHSK+49y/LK7Bsm4poJZzAMnvZMQ7OTeg==", "dev": true, "dependencies": { - "@babel/parser": "^7.16.4", - "@vue/shared": "3.2.47", + "@babel/parser": "^7.21.3", + "@vue/shared": "3.3.2", "estree-walker": "^2.0.2", - "source-map": "^0.6.1" + "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz", - "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.2.tgz", + "integrity": "sha512-6gS3auANuKXLw0XH6QxkWqyPYPunziS2xb6VRenM3JY7gVfZcJvkCBHkb5RuNY1FCbBO3lkIi0CdXUCW1c7SXw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.2.47", - "@vue/shared": "3.2.47" + "@vue/compiler-core": "3.3.2", + "@vue/shared": "3.3.2" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz", - "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.2.tgz", + "integrity": "sha512-jG4jQy28H4BqzEKsQqqW65BZgmo3vzdLHTBjF+35RwtDdlFE+Fk1VWJYUnDMMqkFBo6Ye1ltSKVOMPgkzYj7SQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.47", - "@vue/compiler-dom": "3.2.47", - "@vue/compiler-ssr": "3.2.47", - "@vue/reactivity-transform": "3.2.47", - "@vue/shared": "3.2.47", + "@babel/parser": "^7.20.15", + "@vue/compiler-core": "3.3.2", + "@vue/compiler-dom": "3.3.2", + "@vue/compiler-ssr": "3.3.2", + "@vue/reactivity-transform": "3.3.2", + "@vue/shared": "3.3.2", "estree-walker": "^2.0.2", - "magic-string": "^0.25.7", + "magic-string": "^0.30.0", "postcss": "^8.1.10", - "source-map": "^0.6.1" + "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz", - "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.2.tgz", + "integrity": "sha512-K8OfY5FQtZaSOJHHe8xhEfIfLrefL/Y9frv4k4NsyQL3+0lRKxr9QuJhfdBDjkl7Fhz8CzKh63mULvmOfx3l2w==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.2.47", - "@vue/shared": "3.2.47" + "@vue/compiler-dom": "3.3.2", + "@vue/shared": "3.3.2" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz", - "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.2.tgz", + "integrity": "sha512-iu2WaQvlJHdnONrsyv4ibIEnSsuKF+aHFngGj/y1lwpHQtalpVhKg9wsKMoiKXS9zPNjG9mNKzJS9vudvjzvyg==", "dev": true, "dependencies": { - "@babel/parser": "^7.16.4", - "@vue/compiler-core": "3.2.47", - "@vue/shared": "3.2.47", + "@babel/parser": "^7.20.15", + "@vue/compiler-core": "3.3.2", + "@vue/shared": "3.3.2", "estree-walker": "^2.0.2", - "magic-string": "^0.25.7" + "magic-string": "^0.30.0" } }, "node_modules/@vue/shared": { - "version": "3.2.47", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.47.tgz", - "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.2.tgz", + "integrity": "sha512-0rFu3h8JbclbnvvKrs7Fe5FNGV9/5X2rPD7KmOzhLSUAiQH5//Hq437Gv0fR5Mev3u/nbtvmLl8XgwCU20/ZfQ==", "dev": true }, "node_modules/abbrev": { @@ -1803,9 +1794,9 @@ } }, "node_modules/cacache/node_modules/glob": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.2.tgz", - "integrity": "sha512-Xsa0BcxIC6th9UwNjZkhrMtNo/MnyRL8jGCP+uEwhA5oFOCY1f2s1/oNKY47xQ0Bg5nkjsfAEIej1VeH62bDDQ==", + "version": "10.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz", + "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -1854,9 +1845,9 @@ } }, "node_modules/cacache/node_modules/signal-exit": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", - "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", + "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", "engines": { "node": ">=14" }, @@ -1955,9 +1946,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001486", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz", - "integrity": "sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==", + "version": "1.0.30001487", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001487.tgz", + "integrity": "sha512-83564Z3yWGqXsh2vaH/mhXfEM0wX+NlBCm1jYHOb97TrTWJEmPTccZgeLTPBUUb0PNVo+oomb7wkimZBIERClA==", "dev": true, "funding": [ { @@ -3191,9 +3182,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.385", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.385.tgz", - "integrity": "sha512-L9zlje9bIw0h+CwPQumiuVlfMcV4boxRjFIWDcLfFqTZNbkwOExBzfmswytHawObQX4OUhtNv8gIiB21kOurIg==", + "version": "1.4.394", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.394.tgz", + "integrity": "sha512-0IbC2cfr8w5LxTz+nmn2cJTGafsK9iauV2r5A5scfzyovqLrxuLoxOHE5OBobP3oVIggJT+0JfKnw9sm87c8Hw==", "dev": true }, "node_modules/emittery": { @@ -3714,12 +3705,12 @@ } }, "node_modules/esmock": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.2.1.tgz", - "integrity": "sha512-QbRR6cdaKs3eHSZS0wrRK70uvZlSWGxgBzOxvGNd2HfTX7D1672Mqv11rDCUM4GqORTZe0bIErnrcQPgWmrOCQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.2.2.tgz", + "integrity": "sha512-eTBQTFRUAxninJRb2P9c5CJOdamqWqXZ/hl2OgvaFazUsjzyns+j55k2z2WXy2rOcbVXo4D9GkJurx6UjqhRpA==", "dev": true, "engines": { - "node": ">=14.16.0" + "node": ">=14.16.0 <=19.9.0" } }, "node_modules/espree": { @@ -3939,9 +3930,9 @@ } }, "node_modules/file-type": { - "version": "18.3.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.3.0.tgz", - "integrity": "sha512-pkPZ5OGIq0TYb37b8bHDLNeQSe1H2KlaQ2ySGpJkkr2KZdaWsO4QhPzHA0mQcsUW2cSqJk+4gM/UyLz/UFbXdQ==", + "version": "18.4.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.4.0.tgz", + "integrity": "sha512-o6MQrZKTAK6WpvmQk3jqTVUmqxYBxW5bloUfrdH1ZnRFDvvAPNr+l+rgOxM3nkqWT+3khaj3FRMDydWe0xhu+w==", "dev": true, "dependencies": { "readable-web-to-node-stream": "^3.0.2", @@ -5460,12 +5451,15 @@ } }, "node_modules/magic-string": { - "version": "0.25.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", - "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "version": "0.30.0", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.0.tgz", + "integrity": "sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==", "dev": true, "dependencies": { - "sourcemap-codec": "^1.4.8" + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" } }, "node_modules/make-dir": { @@ -7247,11 +7241,11 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.7.0.tgz", - "integrity": "sha512-UkZUeDjczjYRE495+9thsgcVgsaCPkaw80slmfVFgllxY+IO8ubTsOpFVjDPROBqJdHfVPUFRHPBV/WciOVfWg==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.8.0.tgz", + "integrity": "sha512-IjTrKseM404/UAWA8bBbL3Qp6O2wXkanuIE3seCxBH7ctRuvH1QRawy1N3nVDHGkdeZsjOsSe/8AQBL/VQCy2g==", "dependencies": { - "lru-cache": "^9.0.0", + "lru-cache": "^9.1.1", "minipass": "^5.0.0" }, "engines": { @@ -7744,9 +7738,9 @@ } }, "node_modules/read-package-json/node_modules/glob": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.2.tgz", - "integrity": "sha512-Xsa0BcxIC6th9UwNjZkhrMtNo/MnyRL8jGCP+uEwhA5oFOCY1f2s1/oNKY47xQ0Bg5nkjsfAEIej1VeH62bDDQ==", + "version": "10.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz", + "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -7806,9 +7800,9 @@ } }, "node_modules/read-package-json/node_modules/signal-exit": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", - "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", + "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", "engines": { "node": ">=14" }, @@ -8260,9 +8254,9 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.2.tgz", - "integrity": "sha512-Xsa0BcxIC6th9UwNjZkhrMtNo/MnyRL8jGCP+uEwhA5oFOCY1f2s1/oNKY47xQ0Bg5nkjsfAEIej1VeH62bDDQ==", + "version": "10.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz", + "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -8281,9 +8275,9 @@ } }, "node_modules/rimraf/node_modules/signal-exit": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", - "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", + "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", "engines": { "node": ">=14" }, @@ -8466,9 +8460,9 @@ } }, "node_modules/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -8564,9 +8558,9 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sigstore": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.4.0.tgz", - "integrity": "sha512-N7TRpSbFjY/TrFDg6yGAQSYBrQ5s6qmPiq4pD6fkv1LoyfMsLG0NwZWG2s5q+uttLHgyVyTa0Rogx2P78rN8kQ==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.5.0.tgz", + "integrity": "sha512-i3nhvdobiPj8XrXNIggjeur6+A5iAQ4f+r1bR5SGitFJBbthy/6c7Fz0h+kY70Wua1FSMdDr/UEhXSVRXNpynw==", "dependencies": { "@sigstore/protobuf-specs": "^0.1.0", "make-fetch-happen": "^11.0.1", @@ -8683,13 +8677,6 @@ "source-map": "^0.6.0" } }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "deprecated": "Please use @jridgewell/sourcemap-codec instead", - "dev": true - }, "node_modules/spawn-wrap": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", @@ -9278,9 +9265,9 @@ } }, "node_modules/terser": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.1.tgz", - "integrity": "sha512-hVl35zClmpisy6oaoKALOpS0rDYLxRFLHhRuDlEGTKey9qHjS1w9GMORjuwIMt70Wan4lwsLYyWDVnWgF+KUEw==", + "version": "5.17.3", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.3.tgz", + "integrity": "sha512-AudpAZKmZHkG9jueayypz4duuCFJMMNGRMwaPvQKWfxKedh8Z2x3OCoDqIIi1xx5+iwx1u6Au8XQcc9Lke65Yg==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -9473,11 +9460,12 @@ } }, "node_modules/tuf-js": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.5.tgz", - "integrity": "sha512-inqodgxdsmuxrtQVbu6tPNgRKWD1Boy3VB6GO7KczJZpAHiTukwhSzXUSzvDcw5pE2Jo8ua+e1ykpHv7VdPVlQ==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.6.tgz", + "integrity": "sha512-CXwFVIsXGbVY4vFiWF7TJKWmlKJAT8TWkH4RmiohJRcDJInix++F0dznDmoVbtJNzZ8yLprKUG4YrDIhv3nBMg==", "dependencies": { "@tufjs/models": "1.0.4", + "debug": "^4.3.4", "make-fetch-happen": "^11.1.0" }, "engines": { @@ -9871,9 +9859,9 @@ } }, "node_modules/write-file-atomic/node_modules/signal-exit": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", - "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", + "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", "dev": true, "engines": { "node": ">=14" diff --git a/packages/project/package.json b/packages/project/package.json index b29d5da8c40..ada040edf97 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,7 +139,7 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", "rimraf": "^5.0.0", - "semver": "^7.5.0", + "semver": "^7.5.1", "xml2js": "^0.5.0", "yesno": "^0.4.0" }, @@ -154,7 +154,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^43.2.0", - "esmock": "^2.2.1", + "esmock": "^2.2.2", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", From f1577764f60e2606cb06ad13eed58f5b0b2073af Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 21 May 2023 02:20:55 +0000 Subject: [PATCH 0922/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 270 +++++++++++++---------------- packages/project/package.json | 10 +- 2 files changed, 125 insertions(+), 155 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0148ef5023d..1f5b0cbff89 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -23,12 +23,12 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^11.1.1", "node-stream-zip": "^1.15.0", - "pacote": "^15.1.3", + "pacote": "^15.2.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", - "rimraf": "^5.0.0", + "rimraf": "^5.0.1", "semver": "^7.5.1", "xml2js": "^0.5.0", "yesno": "^0.4.0" @@ -40,11 +40,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.40.0", + "eslint": "^8.41.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^43.2.0", - "esmock": "^2.2.2", + "esmock": "^2.2.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", @@ -53,7 +53,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.0.4", + "sinon": "^15.1.0", "tap-xunit": "^2.4.1" }, "engines": { @@ -554,9 +554,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.40.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.40.0.tgz", - "integrity": "sha512-ElyB54bJIhXQYVKjDSvCkPO1iU1tSAeVQJbllWJq1XQSmmA4dgFk8CbiBGpiOPxleE48vDogxCtmMYku4HSVLA==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.41.0.tgz", + "integrity": "sha512-LxcyMGxwmTh2lY9FwHPGWOHmYFCZvbrFCBZL4FzSSsxsRPuhrYUg/49/0KDfW8tnIEaEHtfmn6+NPN+1DqaNmA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1059,9 +1059,9 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.1.0.tgz", - "integrity": "sha512-w1qd368vtrwttm1PRJWPW1QHlbmHrVDGs1eBH/jZvRPUFS4MNXV9Q33EQdjOdeAxZ7O8+3wM7zxztm2nfUSyKw==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.2.0.tgz", + "integrity": "sha512-OPwQlEdg40HAj5KNF8WW6q2KG4Z+cBCZb3m4ninfTZKaBmbIJodviQsDBoYMPHkOyJJMHnOJo5j2+LKDOhOACg==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0" @@ -1231,39 +1231,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.2.tgz", - "integrity": "sha512-CKZWo1dzsQYTNTft7whzjL0HsrEpMfiK7pjZ2WFE3bC1NA7caUjWioHSK+49y/LK7Bsm4poJZzAMnvZMQ7OTeg==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz", + "integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==", "dev": true, "dependencies": { "@babel/parser": "^7.21.3", - "@vue/shared": "3.3.2", + "@vue/shared": "3.3.4", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.2.tgz", - "integrity": "sha512-6gS3auANuKXLw0XH6QxkWqyPYPunziS2xb6VRenM3JY7gVfZcJvkCBHkb5RuNY1FCbBO3lkIi0CdXUCW1c7SXw==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz", + "integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.2", - "@vue/shared": "3.3.2" + "@vue/compiler-core": "3.3.4", + "@vue/shared": "3.3.4" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.2.tgz", - "integrity": "sha512-jG4jQy28H4BqzEKsQqqW65BZgmo3vzdLHTBjF+35RwtDdlFE+Fk1VWJYUnDMMqkFBo6Ye1ltSKVOMPgkzYj7SQ==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz", + "integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==", "dev": true, "dependencies": { "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.2", - "@vue/compiler-dom": "3.3.2", - "@vue/compiler-ssr": "3.3.2", - "@vue/reactivity-transform": "3.3.2", - "@vue/shared": "3.3.2", + "@vue/compiler-core": "3.3.4", + "@vue/compiler-dom": "3.3.4", + "@vue/compiler-ssr": "3.3.4", + "@vue/reactivity-transform": "3.3.4", + "@vue/shared": "3.3.4", "estree-walker": "^2.0.2", "magic-string": "^0.30.0", "postcss": "^8.1.10", @@ -1271,32 +1271,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.2.tgz", - "integrity": "sha512-K8OfY5FQtZaSOJHHe8xhEfIfLrefL/Y9frv4k4NsyQL3+0lRKxr9QuJhfdBDjkl7Fhz8CzKh63mULvmOfx3l2w==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz", + "integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.2", - "@vue/shared": "3.3.2" + "@vue/compiler-dom": "3.3.4", + "@vue/shared": "3.3.4" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.2.tgz", - "integrity": "sha512-iu2WaQvlJHdnONrsyv4ibIEnSsuKF+aHFngGj/y1lwpHQtalpVhKg9wsKMoiKXS9zPNjG9mNKzJS9vudvjzvyg==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz", + "integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==", "dev": true, "dependencies": { "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.2", - "@vue/shared": "3.3.2", + "@vue/compiler-core": "3.3.4", + "@vue/shared": "3.3.4", "estree-walker": "^2.0.2", "magic-string": "^0.30.0" } }, "node_modules/@vue/shared": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.2.tgz", - "integrity": "sha512-0rFu3h8JbclbnvvKrs7Fe5FNGV9/5X2rPD7KmOzhLSUAiQH5//Hq437Gv0fR5Mev3u/nbtvmLl8XgwCU20/ZfQ==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz", + "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==", "dev": true }, "node_modules/abbrev": { @@ -1737,9 +1737,9 @@ } }, "node_modules/cacache": { - "version": "17.1.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.0.tgz", - "integrity": "sha512-hXpFU+Z3AfVmNuiLve1qxWHMq0RSIt5gjCKAHi/M6DktwFwDdAXAtunl1i4WSKaaVcU9IsRvXFg42jTHigcC6Q==", + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.3.tgz", + "integrity": "sha512-jAdjGxmPxZh0IipMdR7fK/4sDSrHMLUV0+GvVUsjwyGNKHsh79kW/otg+GkbXwl6Uzvy9wsvHOX4nUoWldeZMg==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", @@ -1794,14 +1794,14 @@ } }, "node_modules/cacache/node_modules/glob": { - "version": "10.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz", - "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==", + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.6.tgz", + "integrity": "sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", - "minimatch": "^9.0.0", - "minipass": "^5.0.0", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2", "path-scurry": "^1.7.0" }, "bin": { @@ -1946,9 +1946,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001487", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001487.tgz", - "integrity": "sha512-83564Z3yWGqXsh2vaH/mhXfEM0wX+NlBCm1jYHOb97TrTWJEmPTccZgeLTPBUUb0PNVo+oomb7wkimZBIERClA==", + "version": "1.0.30001488", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001488.tgz", + "integrity": "sha512-NORIQuuL4xGpIy6iCCQGN4iFjlBXtfKWIenlUuyZJumLRIindLb7wXM+GO8erEhb7vXfcnf4BAg2PrSDN5TNLQ==", "dev": true, "funding": [ { @@ -3182,9 +3182,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.394", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.394.tgz", - "integrity": "sha512-0IbC2cfr8w5LxTz+nmn2cJTGafsK9iauV2r5A5scfzyovqLrxuLoxOHE5OBobP3oVIggJT+0JfKnw9sm87c8Hw==", + "version": "1.4.402", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.402.tgz", + "integrity": "sha512-gWYvJSkohOiBE6ecVYXkrDgNaUjo47QEKK0kQzmWyhkH+yoYiG44bwuicTGNSIQRG3WDMsWVZJLRnJnLNkbWvA==", "dev": true }, "node_modules/emittery": { @@ -3304,15 +3304,15 @@ } }, "node_modules/eslint": { - "version": "8.40.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.40.0.tgz", - "integrity": "sha512-bvR+TsP9EHL3TqNtj9sCNJVAFK3fBN8Q7g5waghxyRsPLIMwL73XSKnZFK0hk/O2ANC+iAoq6PWMQ+IfBAJIiQ==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.41.0.tgz", + "integrity": "sha512-WQDQpzGBOP5IrXPo4Hc0814r4/v2rrIsB0rhT7jtunIalgg6gYXWhRMOejVO8yH21T/FGaxjmFjBMNqcIlmH1Q==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", "@eslint/eslintrc": "^2.0.3", - "@eslint/js": "8.40.0", + "@eslint/js": "8.41.0", "@humanwhocodes/config-array": "^0.11.8", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3332,13 +3332,12 @@ "find-up": "^5.0.0", "glob-parent": "^6.0.2", "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", + "graphemer": "^1.4.0", "ignore": "^5.2.0", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", @@ -3705,12 +3704,12 @@ } }, "node_modules/esmock": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.2.2.tgz", - "integrity": "sha512-eTBQTFRUAxninJRb2P9c5CJOdamqWqXZ/hl2OgvaFazUsjzyns+j55k2z2WXy2rOcbVXo4D9GkJurx6UjqhRpA==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.2.3.tgz", + "integrity": "sha512-nqXoU3Z/ogsPKhXoX41PDs4rCtJxMcwEI8vw4NSjE7b6Os0EzPJvmA15X6F74AIt1Fu8VBRvLl3HDxXNze/0eg==", "dev": true, "engines": { - "node": ">=14.16.0 <=19.9.0" + "node": ">=14.16.0" } }, "node_modules/espree": { @@ -3858,9 +3857,9 @@ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, "node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", "dev": true }, "node_modules/fast-glob": { @@ -4316,10 +4315,10 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, "node_modules/hard-rejection": { @@ -4652,9 +4651,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", + "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", "dependencies": { "has": "^1.0.3" }, @@ -5110,16 +5109,6 @@ "node": ">=10" } }, - "node_modules/js-sdsl": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz", - "integrity": "sha512-FfVSdx6pJ41Oa+CF7RDaFmTnCaFhua+SNYQX74riGOpl96x+2jQCqEfQ2bnXu/5DPCqlRuiqyvTJM0Qjz26IVg==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" - } - }, "node_modules/js-string-escape": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", @@ -5673,18 +5662,15 @@ } }, "node_modules/meow/node_modules/type-fest": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.10.0.tgz", - "integrity": "sha512-hmAPf1datm+gt3c2mvu0sJyhFy6lTkIGf0GzyaZWxRLnabQfPUqg6tF95RPg6sLxKI7nFLGdFxBcf2/7+GXI+A==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.11.0.tgz", + "integrity": "sha512-JaPw5U9ixP0XcpUbQoVSbxSDcK/K4nww20C3kjm9yE6cDRRhptU28AH60VWf9ltXmCrIfIbtt9J+2OUk2Uqiaw==", "dev": true, "engines": { "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" - }, - "peerDependencies": { - "typescript": ">=4.7.0" } }, "node_modules/merge-stream": { @@ -5752,9 +5738,9 @@ } }, "node_modules/minimatch": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", - "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", + "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -6420,9 +6406,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.11.tgz", + "integrity": "sha512-+M0PwXeU80kRohZ3aT4J/OnR+l9/KD2nVLNNoRgFtnf+umQVFdGBAO2N8+nCnEi0xlh/Wk3zOGC+vNNx+uM79Q==", "dev": true }, "node_modules/node-stream-zip": { @@ -7107,9 +7093,9 @@ } }, "node_modules/pacote": { - "version": "15.1.3", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.3.tgz", - "integrity": "sha512-aRts8cZqxiJVDitmAh+3z+FxuO3tLNWEmwDRPEpDDiZJaRz06clP4XX112ynMT5uF0QNoMPajBBHnaStUEPJXA==", + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.2.0.tgz", + "integrity": "sha512-rJVZeIwHTUta23sIZgEIM62WYwbmGbThdbnkt81ravBplQv+HjyroqnLRNH2+sLJHcGZmLRmhPwACqhfTcOmnA==", "dependencies": { "@npmcli/git": "^4.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -7241,12 +7227,12 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.8.0.tgz", - "integrity": "sha512-IjTrKseM404/UAWA8bBbL3Qp6O2wXkanuIE3seCxBH7ctRuvH1QRawy1N3nVDHGkdeZsjOsSe/8AQBL/VQCy2g==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.9.2.tgz", + "integrity": "sha512-qSDLy2aGFPm8i4rsbHd4MNyTcrzHFsLQykrtbuGRknZZCBBVXSv2tSCDN2Cg6Rt/GFRw8GoW9y9Ecw5rIPG1sg==", "dependencies": { "lru-cache": "^9.1.1", - "minipass": "^5.0.0" + "minipass": "^5.0.0 || ^6.0.2" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -7738,14 +7724,14 @@ } }, "node_modules/read-package-json/node_modules/glob": { - "version": "10.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz", - "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==", + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.6.tgz", + "integrity": "sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", - "minimatch": "^9.0.0", - "minipass": "^5.0.0", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2", "path-scurry": "^1.7.0" }, "bin": { @@ -8056,17 +8042,14 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.10.0.tgz", - "integrity": "sha512-hmAPf1datm+gt3c2mvu0sJyhFy6lTkIGf0GzyaZWxRLnabQfPUqg6tF95RPg6sLxKI7nFLGdFxBcf2/7+GXI+A==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.11.0.tgz", + "integrity": "sha512-JaPw5U9ixP0XcpUbQoVSbxSDcK/K4nww20C3kjm9yE6cDRRhptU28AH60VWf9ltXmCrIfIbtt9J+2OUk2Uqiaw==", "engines": { "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" - }, - "peerDependencies": { - "typescript": ">=4.7.0" } }, "node_modules/readable-stream": { @@ -8222,11 +8205,11 @@ } }, "node_modules/rimraf": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.0.tgz", - "integrity": "sha512-Jf9llaP+RvaEVS5nPShYFhtXIrb3LRKP281ib3So0KkeZKo2wIKyq0Re7TOSwanasA423PSr6CCIL4bP6T040g==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.1.tgz", + "integrity": "sha512-OfFZdwtd3lZ+XZzYP/6gTACubwFcHdLRqS9UX3UwpU2dnGQYkPFISRwvM3w9IiB2w7bW5qGo/uAwE4SmXXSKvg==", "dependencies": { - "glob": "^10.0.0" + "glob": "^10.2.5" }, "bin": { "rimraf": "dist/cjs/src/bin.js" @@ -8254,14 +8237,14 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "10.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz", - "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==", + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.6.tgz", + "integrity": "sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", - "minimatch": "^9.0.0", - "minipass": "^5.0.0", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2", "path-scurry": "^1.7.0" }, "bin": { @@ -8558,9 +8541,9 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sigstore": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.5.0.tgz", - "integrity": "sha512-i3nhvdobiPj8XrXNIggjeur6+A5iAQ4f+r1bR5SGitFJBbthy/6c7Fz0h+kY70Wua1FSMdDr/UEhXSVRXNpynw==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.5.2.tgz", + "integrity": "sha512-X95v6xAAooVpn7PaB94TDmFeSO5SBfCtB1R23fvzr36WTfjtkiiyOeei979nbTjc8nzh6FSLeltQZuODsm1EjQ==", "dependencies": { "@sigstore/protobuf-specs": "^0.1.0", "make-fetch-happen": "^11.0.1", @@ -8574,13 +8557,13 @@ } }, "node_modules/sinon": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.4.tgz", - "integrity": "sha512-uzmfN6zx3GQaria1kwgWGeKiXSSbShBbue6Dcj0SI8fiCNFbiUDqKl57WFlY5lyhxZVUKmXvzgG2pilRQCBwWg==", + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.0.tgz", + "integrity": "sha512-cS5FgpDdE9/zx7no8bxROHymSlPLZzq0ChbbLk1DrxBfc+eTeBK3y8nIL+nu/0QeYydhhbLIr7ecHJpywjQaoQ==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^10.0.2", + "@sinonjs/fake-timers": "^10.2.0", "@sinonjs/samsam": "^8.0.0", "diff": "^5.1.0", "nise": "^5.1.4", @@ -9162,9 +9145,9 @@ } }, "node_modules/tar": { - "version": "6.1.14", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.14.tgz", - "integrity": "sha512-piERznXu0U7/pW7cdSn7hjqySIVTYT6F76icmFk7ptU7dDYlXTm5r9A6K04R2vU3olYgoKeo1Cg3eeu5nhftAw==", + "version": "6.1.15", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.15.tgz", + "integrity": "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -9265,9 +9248,9 @@ } }, "node_modules/terser": { - "version": "5.17.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.3.tgz", - "integrity": "sha512-AudpAZKmZHkG9jueayypz4duuCFJMMNGRMwaPvQKWfxKedh8Z2x3OCoDqIIi1xx5+iwx1u6Au8XQcc9Lke65Yg==", + "version": "5.17.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.4.tgz", + "integrity": "sha512-jcEKZw6UPrgugz/0Tuk/PVyLAPfMBJf5clnGueo45wTweoV8yh7Q7PEkhkJ5uuUbC7zAxEcG3tqNr1bstkQ8nw==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", @@ -9511,19 +9494,6 @@ "is-typedarray": "^1.0.0" } }, - "node_modules/typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", - "peer": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=12.20" - } - }, "node_modules/uc.micro": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index ada040edf97..145acf088ad 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -133,12 +133,12 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^11.1.1", "node-stream-zip": "^1.15.0", - "pacote": "^15.1.3", + "pacote": "^15.2.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", - "rimraf": "^5.0.0", + "rimraf": "^5.0.1", "semver": "^7.5.1", "xml2js": "^0.5.0", "yesno": "^0.4.0" @@ -150,11 +150,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.40.0", + "eslint": "^8.41.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^43.2.0", - "esmock": "^2.2.2", + "esmock": "^2.2.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", @@ -163,7 +163,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.0.4", + "sinon": "^15.1.0", "tap-xunit": "^2.4.1" } } From 3ba58d80bb1cdd1e941e4ce437242f6abb4d4ba6 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 22 May 2023 16:22:11 +0200 Subject: [PATCH 0923/1272] [ui5-project][FIX] projectGraphBuilder: Add module cache invalidation (#612) If a visited module did not resolve to any specification (project or extensions), try recreating the module when visiting it again from a different parent. Resolves https://github.com/SAP/ui5-tooling/issues/807 This is an alternative to https://github.com/SAP/ui5-project/pull/611 This change might have a greater impact on performance since er might recreate modules that are not relevant to UI5 Tooling more than once if they are listed multiple times in the dependency tree. Before this change, such modules where only visited once. --------- Co-authored-by: Yavor Ivanov --- .../project/lib/graph/projectGraphBuilder.js | 33 ++++++++--- .../test/lib/graph/projectGraphBuilder.js | 56 +++++++++++++++++++ 2 files changed, 80 insertions(+), 9 deletions(-) diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index b44dd881489..069c1f2b104 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -161,6 +161,25 @@ async function projectGraphBuilder(nodeProvider, workspace) { const {nodes, parentProject} = queue.shift(); // Get and remove first entry from queue const res = await Promise.all(nodes.map(async (node) => { let ui5Module = moduleCollection[node.id]; + + if (ui5Module) { + log.silly( + `Re-visiting module ${node.id} as a dependency of ${parentProject.getName()}`); + + const {project, extensions} = await ui5Module.getSpecifications(); + if (!project && !extensions.length) { + // Invalidate cache if the cached module is visited through another parent project and did not + // resolve to a project or extension(s) before. + // The module being visited now might be a different version containing for example + // UI5 Tooling configuration, or one of the parent projects could have defined a + // relevant configuration shim meanwhile + log.silly( + `Cached module ${node.id} did not resolve to any projects or extensions. ` + + `Recreating module as a dependency of ${parentProject.getName()}...`); + ui5Module = null; + } + } + if (!ui5Module) { log.silly(`Visiting Module ${node.id} as a dependency of ${parentProject.getName()}`); log.verbose(`Creating module ${node.id}...`); @@ -173,15 +192,11 @@ async function projectGraphBuilder(nodeProvider, workspace) { configuration: node.configuration, shimCollection }); - } else { - log.silly( - `Re-visiting module ${node.id} as a dependency of ${parentProject.getName()}`); - if (ui5Module.getPath() !== node.path) { - log.verbose( - `Warning - Dependency ${node.id} is available at multiple paths:` + - `\n Location of the already processed module (this one will be used): ${ui5Module.getPath()}` + - `\n Additional location (this one will be ignored): ${node.path}`); - } + } else if (ui5Module.getPath() !== node.path) { + log.verbose( + `Warning - Dependency ${node.id} is available at multiple paths:` + + `\n Location of the already processed module (this one will be used): ${ui5Module.getPath()}` + + `\n Additional location (this one will be ignored): ${node.path}`); } const {project, extensions} = await ui5Module.getSpecifications(); diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index eacc1caabdf..940a0f3d92b 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -674,6 +674,62 @@ test("Dependencies defined through shim", async (t) => { t.deepEqual(graph.getDependencies("project-3"), ["project-2"], "Shimmed dependency has been defined"); }); +test("Define external dependency as shims in sub-module", async (t) => { + t.context.getRootNode.resolves(createNode({ + id: "app", + version: "1.0.0", + path: "/app" + })); + + t.context.getDependencies.onCall(0).resolves([ + createNode({ + id: "lib", + version: "1.0.0", + path: "/lib" + }), + { + id: "external-thirdparty", + version: "1.0.0", + path: "/app/node_modules/external-thirdparty" + }, + createNode({ + id: "external-thirdparty-shim", + configuration: { + kind: "extension", + type: "project-shim", + shims: { + configurations: { + "external-thirdparty": { + specVersion: "3.0", + type: "module", + metadata: {name: "external-thirdparty"}, + resources: { + configuration: { + paths: {"/resources/": ""}, + }, + }, + }, + }, + }, + } + }) + ]); + + t.context.getDependencies.onCall(1).resolves([ + createNode({ + id: "external-thirdparty", + version: "1.0.0", + path: "/app/node_modules/external-thirdparty", + optional: false + }) + ]); + + const graph = await projectGraphBuilder(t.context.provider); + + t.deepEqual(graph.getDependencies("app"), ["lib"], "'app' depends on 'lib'"); + t.deepEqual(graph.getDependencies("lib"), ["external-thirdparty"], "'lib' depends on 'external-thirdparty'"); +}); + test("Extension in dependencies", async (t) => { t.context.getRootNode.resolves(createNode({ id: "id1", From e3fb7bde5b6a8386dfcbc5a93945f16333b6e321 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 May 2023 10:06:02 +0200 Subject: [PATCH 0924/1272] [ui5-project][INTERNAL] Bump eslint-plugin-jsdoc from 43.2.0 to 44.2.4 (#610) Bumps eslint-plugin-jsdoc from 43.2.0 to 44.2.4. --- packages/project/.eslintrc.cjs | 1 + packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/packages/project/.eslintrc.cjs b/packages/project/.eslintrc.cjs index aa1e96d5dd1..141b4f6bf56 100644 --- a/packages/project/.eslintrc.cjs +++ b/packages/project/.eslintrc.cjs @@ -75,6 +75,7 @@ module.exports = { }, "settings": { "jsdoc": { + "mode": "jsdoc", "tagNamePreference": { "return": "returns", "augments": "extends" diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1f5b0cbff89..089329855f3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^8.41.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^43.2.0", + "eslint-plugin-jsdoc": "^44.2.4", "esmock": "^2.2.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -444,9 +444,9 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.38.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.38.0.tgz", - "integrity": "sha512-TFac4Bnv0ZYNkEeDnOWHQhaS1elWlvOCQxH06iHeu5iffs+hCaLVIZJwF+FqksQi68R4i66Pu+4DfFGvble+Uw==", + "version": "0.39.3", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.39.3.tgz", + "integrity": "sha512-q6pObzaS+aTA96kl4DF91QILNpSiDE8S89cQdJnhIc7hWzwIHPnfBnsiBVa0Z/R9pLHdZTnXEMnggGMmCq7HmA==", "dev": true, "dependencies": { "comment-parser": "1.3.1", @@ -3394,18 +3394,18 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "43.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-43.2.0.tgz", - "integrity": "sha512-Hst7XUfqh28UmPD52oTXmjaRN3d0KrmOZdgtp4h9/VHUJD3Evoo82ZGXi1TtRDWgWhvqDIRI63O49H0eH7NrZQ==", + "version": "44.2.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-44.2.4.tgz", + "integrity": "sha512-/EMMxCyRh1SywhCb66gAqoGX4Yv6Xzc4bsSkF1AiY2o2+bQmGMQ05QZ5+JjHbdFTPDZY9pfn+DsSNP0a5yQpIg==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.38.0", + "@es-joy/jsdoccomment": "~0.39.3", "are-docs-informative": "^0.0.2", "comment-parser": "1.3.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", - "semver": "^7.5.0", + "semver": "^7.5.1", "spdx-expression-parse": "^3.0.1" }, "engines": { diff --git a/packages/project/package.json b/packages/project/package.json index 145acf088ad..acd33b3fbfb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -153,7 +153,7 @@ "eslint": "^8.41.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^43.2.0", + "eslint-plugin-jsdoc": "^44.2.4", "esmock": "^2.2.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 368606d5a5b757bac8a692eda649789e88339ec4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 May 2023 10:38:47 +0200 Subject: [PATCH 0925/1272] [ui5-project][FIX] Workspace: Ignore empty npm workspace modules (#614) If a dynamic npm workspaces[1] configuration resolves to a directory lacking a package.json file, ignore that module silently. This can happen when using a pattern like "packages/*" in the workspaces configuration, and then deleting a package. In case files on .gitignore remain in the directory for some users, the physical directory is not removed by git. This lead to issues for UI5 Tooling, trying to use the empty directory and throwing because of the lacking package.json. With this change, an error is only thrown if the module path is explicitly configured (no pattern). [1] https://docs.npmjs.com/cli/v9/using-npm/workspaces?v=true --- packages/project/lib/graph/Workspace.js | 10 ++++++++-- .../project/test/fixtures/collection.b/sub-empty/.keep | 2 ++ 2 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 packages/project/test/fixtures/collection.b/sub-empty/.keep diff --git a/packages/project/lib/graph/Workspace.js b/packages/project/lib/graph/Workspace.js index ad0c850f274..6e07198963f 100644 --- a/packages/project/lib/graph/Workspace.js +++ b/packages/project/lib/graph/Workspace.js @@ -174,7 +174,7 @@ class Workspace { }; } - async _getModulesFromPath(cwd, relPath) { + async _getModulesFromPath(cwd, relPath, failOnMissingFiles = true) { const nodePath = path.join(cwd, relPath); if (this.#visitedNodePaths.has(nodePath)) { log.verbose(`Module located at ${nodePath} has already been visited`); @@ -189,6 +189,12 @@ class Workspace { `package.json must contain fields 'name' and 'version'`); } } catch (err) { + if (!failOnMissingFiles && err.code === "ENOENT") { + // When resolving a dynamic workspace pattern (not a static path), ignore modules that + // are missing a package.json (this might simply indicate an empty directory) + log.verbose(`Ignoring module at path ${nodePath}: Directory does not contain a package.json`); + return []; + } throw new Error( `Failed to resolve workspace dependency resolution path ${relPath} to ${nodePath}: ${err.message}`); } @@ -228,7 +234,7 @@ class Workspace { const resolvedModules = new Map(); await Promise.all(searchPaths.map(async (pkgPath) => { - const modules = await this._getModulesFromPath(nodePath, pkgPath); + const modules = await this._getModulesFromPath(nodePath, pkgPath, staticPatterns.includes(pkgPath)); modules.forEach((module) => { const id = module.getId(); if (!resolvedModules.get(id)) { diff --git a/packages/project/test/fixtures/collection.b/sub-empty/.keep b/packages/project/test/fixtures/collection.b/sub-empty/.keep new file mode 100644 index 00000000000..6f5514d1dd5 --- /dev/null +++ b/packages/project/test/fixtures/collection.b/sub-empty/.keep @@ -0,0 +1,2 @@ +This file is a stand-in for an empty project directory. +This directory, even though matching the npm workspace configuration pattern, should be ignored by UI5 Tooling. From fa8fe18d539a485c6d2c290974cd773ea4570285 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 May 2023 09:18:26 +0000 Subject: [PATCH 0926/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.3 to 3.0.4 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.4/CHANGELOG.md --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 089329855f3..dfd85555835 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.3", - "@ui5/fs": "^3.0.3", + "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1197,9 +1197,9 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.3.tgz", - "integrity": "sha512-kW1XURyumptJkFpMlAv8BFOoy/SDx2o5DtH5wQguxUQPWpdKgViVjlq2xGbGkn2SrR/IRalcyedeE/LIrQNp9Q==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.4.tgz", + "integrity": "sha512-0JnlsSvqOGlo+15+mP1E2HXOuRERBYWREVG45emDMRq7fNAsi7lgbKHTMA5GogJMRHI8/QaCV9vU1u370Bv1jg==", "dependencies": { "@ui5/logger": "^3.0.0", "clone": "^2.1.2", @@ -1207,7 +1207,7 @@ "globby": "^13.1.4", "graceful-fs": "^4.2.11", "micromatch": "^4.0.5", - "minimatch": "^9.0.0", + "minimatch": "^9.0.1", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index acd33b3fbfb..795c5510b43 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ }, "dependencies": { "@ui5/builder": "^3.0.3", - "@ui5/fs": "^3.0.3", + "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 9e249ad01ff4e61449486509b42d59dbbaf95dda Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 May 2023 09:30:44 +0000 Subject: [PATCH 0927/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.3 to 3.0.4 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.4/CHANGELOG.md --- packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index dfd85555835..f1e4f6ae0ca 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.3.0", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.3", + "@ui5/builder": "^3.0.4", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1170,24 +1170,24 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.3.tgz", - "integrity": "sha512-IL/9oWuGRNxWsUQLue7UwfPp008ydY8KvAqTKAdk7OhDyvz02vBagciwzuopJ28qjzw5kD6o3r9h7iMtjTwg4w==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.4.tgz", + "integrity": "sha512-wW6qeFsxHTdh0gr/5Ey3FmUieG3t0lrFAwbsa+KGmDZ++03R9Kpqlvs4hYU2lEsstfR/k1pjC7rA2/tIsfha8w==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", - "@ui5/fs": "^3.0.3", + "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", - "espree": "^9.5.1", + "espree": "^9.5.2", "graceful-fs": "^4.2.11", "jsdoc": "^4.0.2", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", - "rimraf": "^5.0.0", - "semver": "^7.5.0", - "terser": "^5.17.0", + "rimraf": "^5.0.1", + "semver": "^7.5.1", + "terser": "^5.17.4", "workerpool": "^6.4.0", "xml2js": "^0.5.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index 795c5510b43..cb5e81d3ac7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,7 +119,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.3", + "@ui5/builder": "^3.0.4", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From 49cfc3941524dc371ecaed2d572bc7e74f7d2cab Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 May 2023 13:39:49 +0200 Subject: [PATCH 0928/1272] [ui5-project][INTERNAL] Specification: Add tests for resource excludes with absolute paths (#609) Add tests showing the issue reported in https://github.com/SAP/ui5-tooling/issues/826 --- .../lib/specifications/types/Application.js | 141 +++++++++++++ .../test/lib/specifications/types/Library.js | 191 ++++++++++++++++++ .../test/lib/specifications/types/Module.js | 54 +++++ .../lib/specifications/types/ThemeLibrary.js | 48 +++++ 4 files changed, 434 insertions(+) diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 84ab4d7e6f1..19b9054a340 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -176,6 +176,147 @@ test("Access project resources via workspace w/ builder excludes", async (t) => "Did not find excluded resource for default style"); }); +test("Access project resources w/ absolute builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await Specification.create(projectInput); + + projectInput.configuration.builder = { + resources: { + excludes: ["/resources/id1/manifest.json"] + } + }; + const excludesProject = await Specification.create(projectInput); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for flat style"); + + // Excludes are not applied for "runtime" style + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/manifest.json")).length, 1, + "Found excluded resource for runtime style"); + + t.is((await baselineProject.getWorkspace().byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for default style"); +}); + +test("Access project resources w/ relative builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await Specification.create(projectInput); + + projectInput.configuration.builder = { + resources: { + excludes: ["manifest.json"] + } + }; + const excludesProject = await Specification.create(projectInput); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for flat style"); + + // Excludes are not applied for "runtime" style + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/manifest.json")).length, 1, + "Found excluded resource for runtime style"); + + t.is((await baselineProject.getWorkspace().byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for default style"); +}); + +test("Access project resources w/ legacy builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await Specification.create(projectInput); + + projectInput.configuration.builder = { + resources: { + excludes: ["/manifest.json"] + } + }; + const excludesProject = await Specification.create(projectInput); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for flat style"); + + // Excludes are not applied for "runtime" style + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/manifest.json")).length, 1, + "Found excluded resource for runtime style"); + + t.is((await baselineProject.getWorkspace().byGlob("**/manifest.json")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/manifest.json")).length, 0, + "Did not find excluded resource for default style"); +}); + test("Modify project resources via workspace and access via flat and runtime readers", async (t) => { const {projectInput} = t.context; const project = await Specification.create(projectInput); diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index fb204925195..cdc189c2fff 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -169,6 +169,7 @@ test("Access project resources via reader w/ builder excludes", async (t) => { t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/.library")).length, 0, "Did not find excluded resource for flat style"); + // Excludes are not applied for "runtime" style t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/.library")).length, 1, "Found resource in baseline project for runtime style"); t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/.library")).length, 1, @@ -196,6 +197,196 @@ test("Access project resources via workspace w/ builder excludes", async (t) => "Did not find excluded resource for default style"); }); +test("Access project resources via reader and workspace w/ absolute builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await (new Library().init(projectInput)); + + projectInput.configuration.builder = { + resources: { + excludes: ["/resources/library/d/.library"] + } + }; + const excludesProject = await (new Library().init(projectInput)); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/.library")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/.library")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/.library")).length, 0, + "Did not find excluded resource for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/.library")).length, 0, + "Did not find excluded resource for flat style"); + + // Excludes are not applied for "runtime" style + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/.library")).length, 1, + "Found excluded resource for runtime style"); + + t.is((await baselineProject.getWorkspace().byGlob("**/.library")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/.library")).length, 0, + "Did not find excluded resource for default style"); +}); + +test("Access project resources via reader and workspace w/ incorrect builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await (new Library().init(projectInput)); + + projectInput.configuration.builder = { + resources: { + excludes: ["/.library"] // Absolute path does not match base path + } + }; + const excludesProject = await (new Library().init(projectInput)); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/.library")).length, 1, + "Found resource in project with incorrect exclude for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/.library")).length, 1, + "Found resource in project with incorrect exclude for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/.library")).length, 1, + "Found resource in project with incorrect exclude for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/.library")).length, 1, + "Can not read any test-resources for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/.library")).length, 1, + "Can not read any test-resources for flat style"); + + // Excludes are not applied for "runtime" style + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/.library")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/.library")).length, 1, + "Found resource for runtime style"); + + t.is((await baselineProject.getWorkspace().byGlob("**/.library")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/.library")).length, 1, + "Found resource in project with incorrect exclude for default style"); +}); + +test("Access project test-resources via reader and workspace w/ absolute builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await (new Library().init(projectInput)); + + projectInput.configuration.builder = { + resources: { + excludes: ["/test-resources/library/d/Test.html"] + } + }; + const excludesProject = await (new Library().init(projectInput)); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/Test.html")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/Test.html")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/Test.html")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/Test.html")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/Test.html")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/Test.html")).length, 0, + "Did not find excluded resource for dist style"); + + // Test resources are not available in flat reader + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/Test.html")).length, 0, + "Can not read any test-resources for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/Test.html")).length, 0, + "Can not read any test-resources for flat style"); + + // Excludes are not applied for "runtime" style + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/Test.html")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/Test.html")).length, 1, + "Found excluded resource for runtime style"); + + t.is((await baselineProject.getWorkspace().byGlob("**/Test.html")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/Test.html")).length, 0, + "Did not find excluded resource for default style"); +}); + +test("Access project test-resources via reader and workspace w/ relative builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await (new Library().init(projectInput)); + + projectInput.configuration.builder = { + resources: { + excludes: ["Test.html"] // Has no effect since library excludes must be absolute or use wildcards + } + }; + const excludesProject = await (new Library().init(projectInput)); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/Test.html")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/Test.html")).length, 1, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/Test.html")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/Test.html")).length, 1, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/Test.html")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/Test.html")).length, 1, + "Did not find excluded resource for dist style"); + + // Test resources are not available in flat reader + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/Test.html")).length, 0, + "Can not read any test-resources for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/Test.html")).length, 0, + "Can not read any test-resources for flat style"); + + // Excludes are not applied for "runtime" style + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/Test.html")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/Test.html")).length, 1, + "Found excluded resource for runtime style"); + + t.is((await baselineProject.getWorkspace().byGlob("**/Test.html")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/Test.html")).length, 1, + "Did not find excluded resource for default style"); +}); + test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { const {projectInput} = t.context; const project = await (new Library().init(projectInput)); diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index 2a09b2497ca..161803dc566 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -138,6 +138,7 @@ test("Access project resources via reader w/ builder excludes", async (t) => { t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/devTools.js")).length, 0, "Did not find excluded resource for flat style"); + // Excludes are not applied for "runtime" style t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/devTools.js")).length, 1, "Found resource in baseline project for runtime style"); t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/devTools.js")).length, 1, @@ -171,6 +172,59 @@ test("Access project resources via workspace w/ builder excludes", async (t) => "Did not find excluded resource for default style"); }); +test("Access project resources via reader w/ absolute builder excludes", async (t) => { + const {projectInput, sinon} = t.context; + const baselineProject = await Specification.create(projectInput); + const excludesProject = await Specification.create(projectInput); + + // As of specVersion 3.0, modules are not allowed to have a "builder.resources" configuration. + // Hence modules can't practically be configured with builder excludes. + // We still simply stub the respective API call to test the code and be prepared + // + // projectInput.configuration.builder = { + // resources: { + // excludes: ["/dev/devTools.js"] + // } + // }; + // So stub instead: + sinon.stub(excludesProject, "getBuilderResourcesExcludes").returns(["/dev/devTools.js"]); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/devTools.js")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/devTools.js")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/devTools.js")).length, 0, + "Did not find excluded resource for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/devTools.js")).length, 0, + "Did not find excluded resource for flat style"); + + // Excludes are not applied for "runtime" style + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/devTools.js")).length, 1, + "Found excluded resource for runtime style"); + + t.is((await baselineProject.getWorkspace().byGlob("**/devTools.js")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/devTools.js")).length, 0, + "Did not find excluded resource for default style"); +}); + test("Modify project resources via workspace and access via reader", async (t) => { const {projectInput} = t.context; const project = await Specification.create(projectInput); diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js index c1856721ef3..727b4b2c2c4 100644 --- a/packages/project/test/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -109,6 +109,7 @@ test("Access project resources via reader w/ builder excludes", async (t) => { t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/.theme")).length, 0, "Did not find excluded resource for flat style"); + // Excludes are not applied for "runtime" style t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/.theme")).length, 1, "Found resource in baseline project for runtime style"); t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/.theme")).length, 1, @@ -136,6 +137,53 @@ test("Access project resources via workspace w/ builder excludes", async (t) => "Did not find excluded resource for default style"); }); +test("Access project resources via reader w/ absolute builder excludes", async (t) => { + const {projectInput} = t.context; + const baselineProject = await Specification.create(projectInput); + + projectInput.configuration.builder = { + resources: { + excludes: ["/resources/theme/library/e/themes/my_theme/.theme"] + } + }; + const excludesProject = await Specification.create(projectInput); + + // We now have two projects: One with excludes and one without + // Always compare the results of both to make sure a file is really excluded because of the + // configuration and not because of a typo or because of it's absence in the fixture + + t.is((await baselineProject.getReader({}).byGlob("**/.theme")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getReader({}).byGlob("**/.theme")).length, 0, + "Did not find excluded resource for default style"); + + t.is((await baselineProject.getReader({style: "buildtime"}).byGlob("**/.theme")).length, 1, + "Found resource in baseline project for buildtime style"); + t.is((await excludesProject.getReader({style: "buildtime"}).byGlob("**/.theme")).length, 0, + "Did not find excluded resource for buildtime style"); + + t.is((await baselineProject.getReader({style: "dist"}).byGlob("**/.theme")).length, 1, + "Found resource in baseline project for dist style"); + t.is((await excludesProject.getReader({style: "dist"}).byGlob("**/.theme")).length, 0, + "Did not find excluded resource for dist style"); + + t.is((await baselineProject.getReader({style: "flat"}).byGlob("**/.theme")).length, 1, + "Found resource in baseline project for flat style"); + t.is((await excludesProject.getReader({style: "flat"}).byGlob("**/.theme")).length, 0, + "Did not find excluded resource for flat style"); + + // Excludes are not applied for "runtime" style + t.is((await baselineProject.getReader({style: "runtime"}).byGlob("**/.theme")).length, 1, + "Found resource in baseline project for runtime style"); + t.is((await excludesProject.getReader({style: "runtime"}).byGlob("**/.theme")).length, 1, + "Found excluded resource for runtime style"); + + t.is((await baselineProject.getWorkspace().byGlob("**/.theme")).length, 1, + "Found resource in baseline project for default style"); + t.is((await excludesProject.getWorkspace().byGlob("**/.theme")).length, 0, + "Did not find excluded resource for default style"); +}); + test("Modify project resources via workspace and access via flat and runtime reader", async (t) => { const {projectInput} = t.context; const project = await Specification.create(projectInput); From f32afe01381856ba397bc2f798175afd4adaca3f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 May 2023 11:55:48 +0000 Subject: [PATCH 0929/1272] [ui5-project]Release 3.3.1 --- packages/project/CHANGELOG.md | 12 ++++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 5f2252629c8..8363f8480cb 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,17 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.3.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.3.1...HEAD). + + +## [v3.3.1] - 2023-05-23 +### Bug Fixes +- **Workspace:** Ignore empty npm workspace modules ([#614](https://github.com/SAP/ui5-project/issues/614)) [`66e82a3`](https://github.com/SAP/ui5-project/commit/66e82a37f8c559eb7219fad0329a4d77fd3a6481) +- **projectGraphBuilder:** Add module cache invalidation ([#612](https://github.com/SAP/ui5-project/issues/612)) [`65496ea`](https://github.com/SAP/ui5-project/commit/65496eabeaafc50348dfc276d19d135eb035b261) + -## [v3.3.0] - 2023-05-04 +## [v3.3.0] - 2023-05-05 ### Bug Fixes - Resolve properly package.json dependency aliases ([#608](https://github.com/SAP/ui5-project/issues/608)) [`f8753e5`](https://github.com/SAP/ui5-project/commit/f8753e53c6bc7f89bb19107073fb52db0a725cb9) @@ -384,6 +391,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.3.1]: https://github.com/SAP/ui5-project/compare/v3.3.0...v3.3.1 [v3.3.0]: https://github.com/SAP/ui5-project/compare/v3.2.2...v3.3.0 [v3.2.2]: https://github.com/SAP/ui5-project/compare/v3.2.1...v3.2.2 [v3.2.1]: https://github.com/SAP/ui5-project/compare/v3.2.0...v3.2.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f1e4f6ae0ca..25bd56cfbe3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.3.0", + "version": "3.3.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.3.0", + "version": "3.3.1", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.4", diff --git a/packages/project/package.json b/packages/project/package.json index cb5e81d3ac7..43c05b1ed3b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.3.0", + "version": "3.3.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 9a56260f4cabf2cec850c122fed7e2de7567683e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 28 May 2023 02:21:01 +0000 Subject: [PATCH 0930/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 326 +++++++++-------------------- packages/project/package.json | 4 +- 2 files changed, 102 insertions(+), 228 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 25bd56cfbe3..48bef7af1fe 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -35,7 +35,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.2.0", + "ava": "^5.3.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", @@ -43,7 +43,7 @@ "eslint": "^8.41.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^44.2.4", + "eslint-plugin-jsdoc": "^44.2.7", "esmock": "^2.2.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -91,30 +91,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.21.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz", - "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.3.tgz", + "integrity": "sha512-aNtko9OPOwVESUFp3MZfD8Uzxl7JzSeJpd7npIoxCasU37PFbAQRpKglkaKwlHOyeJdrREpo8TW8ldrkYWwvIQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.21.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", - "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.1.tgz", + "integrity": "sha512-Hkqu7J4ynysSXxmAahpN1jjRwVJ+NdpraFLIWflgjpVob3KNyK3/tIUc7Q7szed8WMp0JNa7Qtd1E9Oo22F9gA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.5", - "@babel/helper-compilation-targets": "^7.21.5", - "@babel/helper-module-transforms": "^7.21.5", - "@babel/helpers": "^7.21.5", - "@babel/parser": "^7.21.8", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5", + "@babel/generator": "^7.22.0", + "@babel/helper-compilation-targets": "^7.22.1", + "@babel/helper-module-transforms": "^7.22.1", + "@babel/helpers": "^7.22.0", + "@babel/parser": "^7.22.0", + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -139,12 +139,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz", - "integrity": "sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==", + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.3.tgz", + "integrity": "sha512-C17MW4wlk//ES/CJDL51kPNwl+qiBQyN7b9SKyVp11BLGFeSPoVaHrv+MNt8jwQFhQWowW88z1eeBx3pFz9v8A==", "dev": true, "dependencies": { - "@babel/types": "^7.21.5", + "@babel/types": "^7.22.3", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -154,12 +154,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", - "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.1.tgz", + "integrity": "sha512-Rqx13UM3yVB5q0D/KwQ8+SPfX/+Rnsy1Lw1k/UwOC4KC6qrzIQoY3lYnBu5EHKBlEHHcj0M0W8ltPSkD8rqfsQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.21.5", + "@babel/compat-data": "^7.22.0", "@babel/helper-validator-option": "^7.21.0", "browserslist": "^4.21.3", "lru-cache": "^5.1.1", @@ -182,9 +182,9 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz", - "integrity": "sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==", + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.1.tgz", + "integrity": "sha512-Z2tgopurB/kTbidvzeBrc2To3PUP/9i5MUe+fU6QJCQDyPwSH2oRapkLw3KGECDYSjhQZCNxEvNvZlLw8JjGwA==", "dev": true, "engines": { "node": ">=6.9.0" @@ -228,19 +228,19 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", - "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.1.tgz", + "integrity": "sha512-dxAe9E7ySDGbQdCVOY/4+UcD8M9ZFqZcZhSPsPacvCG4M+9lwtDDQfI2EoaSvmf7W/8yCBkGU0m7Pvt1ru3UZw==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.21.5", + "@babel/helper-environment-visitor": "^7.22.1", "@babel/helper-module-imports": "^7.21.4", "@babel/helper-simple-access": "^7.21.5", "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.0" }, "engines": { "node": ">=6.9.0" @@ -306,14 +306,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz", - "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.3.tgz", + "integrity": "sha512-jBJ7jWblbgr7r6wYZHMdIqKc73ycaTcCaWRq4/2LpuPHcx7xMlZvpGQkOYc9HeSjn6rcx15CPlgVcBtZ4WZJ2w==", "dev": true, "dependencies": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.3" }, "engines": { "node": ">=6.9.0" @@ -384,9 +384,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.21.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz", - "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==", + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.3.tgz", + "integrity": "sha512-vrukxyW/ep8UD1UDzOYpTKQ6abgjFoeG6L+4ar9+c5TN9QnlqiOi6QK7LSR5ewm/ERyGkT/Ai6VboNrxhbr9Uw==", "bin": { "parser": "bin/babel-parser.js" }, @@ -395,33 +395,33 @@ } }, "node_modules/@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "version": "7.21.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.21.9.tgz", + "integrity": "sha512-MK0X5k8NKOuWRamiEfc3KEJiHMTkGZNUjzMipqCGDDc6ijRl/B7RGSKVGncu4Ro/HdyzzY6cmoXuKI2Gffk7vQ==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" + "@babel/code-frame": "^7.21.4", + "@babel/parser": "^7.21.9", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz", - "integrity": "sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==", + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.1.tgz", + "integrity": "sha512-lAWkdCoUFnmwLBhIRLciFntGYsIIoC6vIbN8zrLPqBnJmPu7Z6nzqnKd7FsxQUNAvZfVZ0x6KdNvNp8zWIOHSQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.5", - "@babel/helper-environment-visitor": "^7.21.5", + "@babel/generator": "^7.22.0", + "@babel/helper-environment-visitor": "^7.22.1", "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.5", - "@babel/types": "^7.21.5", + "@babel/parser": "^7.22.0", + "@babel/types": "^7.22.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -430,9 +430,9 @@ } }, "node_modules/@babel/types": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz", - "integrity": "sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==", + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.3.tgz", + "integrity": "sha512-P3na3xIQHTKY4L0YOG7pM8M8uoUIB910WQaSiiMCZUC2Cy8XFEQONGABFnHWBa2gpGKODTAJcNhi5Zk0sLRrzg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.21.5", @@ -444,9 +444,9 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.39.3", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.39.3.tgz", - "integrity": "sha512-q6pObzaS+aTA96kl4DF91QILNpSiDE8S89cQdJnhIc7hWzwIHPnfBnsiBVa0Z/R9pLHdZTnXEMnggGMmCq7HmA==", + "version": "0.39.4", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.39.4.tgz", + "integrity": "sha512-Jvw915fjqQct445+yron7Dufix9A+m9j1fCJYlCo1FWlRvTxa3pjJelxdSTdaLWcTwRU6vbL+NYjO4YuNIS5Qg==", "dev": true, "dependencies": { "comment-parser": "1.3.1", @@ -1528,12 +1528,12 @@ } }, "node_modules/ava": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-5.2.0.tgz", - "integrity": "sha512-W8yxFXJr/P68JP55eMpQIa6AiXhCX3VeuajM8nolyWNExcMDD6rnIWKTjw0B/+GkFHBIaN6Jd0LtcMThcoqVfg==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-5.3.0.tgz", + "integrity": "sha512-QYvBdyygl1LGX13IuYsC4bkwVCzZeovMGbxYkD73i7DVJxNlWnFa06YgrBOTbjw2QvSKUl5fOJ92Kj5WK9hSeg==", "dev": true, "dependencies": { - "acorn": "^8.8.1", + "acorn": "^8.8.2", "acorn-walk": "^8.2.0", "ansi-styles": "^6.2.1", "arrgv": "^1.0.2", @@ -1543,7 +1543,7 @@ "chalk": "^5.2.0", "chokidar": "^3.5.3", "chunkd": "^2.0.1", - "ci-info": "^3.7.1", + "ci-info": "^3.8.0", "ci-parallel-vars": "^1.0.1", "clean-yaml-object": "^0.1.0", "cli-truncate": "^3.1.0", @@ -1552,10 +1552,9 @@ "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", "debug": "^4.3.4", - "del": "^7.0.0", "emittery": "^1.0.1", "figures": "^5.0.0", - "globby": "^13.1.3", + "globby": "^13.1.4", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", "is-error": "^2.2.2", @@ -1571,13 +1570,12 @@ "plur": "^5.1.0", "pretty-ms": "^8.0.0", "resolve-cwd": "^3.0.0", - "slash": "^3.0.0", "stack-utils": "^2.0.6", "strip-ansi": "^7.0.1", "supertap": "^3.0.1", "temp-dir": "^3.0.0", - "write-file-atomic": "^5.0.0", - "yargs": "^17.6.2" + "write-file-atomic": "^5.0.1", + "yargs": "^17.7.2" }, "bin": { "ava": "entrypoints/cli.mjs" @@ -1946,9 +1944,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001488", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001488.tgz", - "integrity": "sha512-NORIQuuL4xGpIy6iCCQGN4iFjlBXtfKWIenlUuyZJumLRIindLb7wXM+GO8erEhb7vXfcnf4BAg2PrSDN5TNLQ==", + "version": "1.0.30001489", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001489.tgz", + "integrity": "sha512-x1mgZEXK8jHIfAxm+xgdpHpk50IN3z3q3zP261/WS+uvePxW8izXuCu6AHz0lkuYTlATDehiZ/tNyYBdSQsOUQ==", "dev": true, "funding": [ { @@ -2764,97 +2762,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/del": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-7.0.0.tgz", - "integrity": "sha512-tQbV/4u5WVB8HMJr08pgw0b6nG4RGt/tj+7Numvq+zqcvUFeMaIWWOUFltiU+6go8BSO2/ogsB4EasDaj0y68Q==", - "dev": true, - "dependencies": { - "globby": "^13.1.2", - "graceful-fs": "^4.2.10", - "is-glob": "^4.0.3", - "is-path-cwd": "^3.0.0", - "is-path-inside": "^4.0.0", - "p-map": "^5.5.0", - "rimraf": "^3.0.2", - "slash": "^4.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/del/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/del/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/del/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/del/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/del/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", @@ -3182,9 +3089,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.402", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.402.tgz", - "integrity": "sha512-gWYvJSkohOiBE6ecVYXkrDgNaUjo47QEKK0kQzmWyhkH+yoYiG44bwuicTGNSIQRG3WDMsWVZJLRnJnLNkbWvA==", + "version": "1.4.411", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.411.tgz", + "integrity": "sha512-5VXLW4Qw89vM2WTICHua/y8v7fKGDRVa2VPOtBB9IpLvW316B+xd8yD1wTmLPY2ot/00P/qt87xdolj4aG/Lzg==", "dev": true }, "node_modules/emittery": { @@ -3394,12 +3301,12 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "44.2.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-44.2.4.tgz", - "integrity": "sha512-/EMMxCyRh1SywhCb66gAqoGX4Yv6Xzc4bsSkF1AiY2o2+bQmGMQ05QZ5+JjHbdFTPDZY9pfn+DsSNP0a5yQpIg==", + "version": "44.2.7", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-44.2.7.tgz", + "integrity": "sha512-PcAJO7Wh4xIHPT+StBRpEbWgwCpIrYk75zL31RMbduVVHpgiy3Y8aXQ6pdbRJOq0fxHuepWSEAve8ZrPWTSKRg==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.39.3", + "@es-joy/jsdoccomment": "~0.39.4", "are-docs-informative": "^0.0.2", "comment-parser": "1.3.1", "debug": "^4.3.4", @@ -3613,15 +3520,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/eslint/node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -4299,17 +4197,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/globby/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", @@ -4744,28 +4631,13 @@ "node": ">=0.12.0" } }, - "node_modules/is-path-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-3.0.0.tgz", - "integrity": "sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-path-inside": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", - "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, "node_modules/is-plain-obj": { @@ -5073,9 +4945,9 @@ } }, "node_modules/jackspeak": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.0.tgz", - "integrity": "sha512-r5XBrqIJfwRIjRt/Xr5fv9Wh09qyhHfKnYddDlpM+ibRR20qrYActpCAgU6U+d53EOEjzkvxPMVHSlgR7leXrQ==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.1.tgz", + "integrity": "sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -6406,9 +6278,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.11.tgz", - "integrity": "sha512-+M0PwXeU80kRohZ3aT4J/OnR+l9/KD2nVLNNoRgFtnf+umQVFdGBAO2N8+nCnEi0xlh/Wk3zOGC+vNNx+uM79Q==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", + "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==", "dev": true }, "node_modules/node-stream-zip": { @@ -8575,12 +8447,14 @@ } }, "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/slice-ansi": { @@ -9248,9 +9122,9 @@ } }, "node_modules/terser": { - "version": "5.17.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.4.tgz", - "integrity": "sha512-jcEKZw6UPrgugz/0Tuk/PVyLAPfMBJf5clnGueo45wTweoV8yh7Q7PEkhkJ5uuUbC7zAxEcG3tqNr1bstkQ8nw==", + "version": "5.17.6", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.6.tgz", + "integrity": "sha512-V8QHcs8YuyLkLHsJO5ucyff1ykrLVsR4dNnS//L5Y3NiSXpbK1J+WMVUs67eI0KTxs9JtHhgEQpXQVHlHI92DQ==", "dependencies": { "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", diff --git a/packages/project/package.json b/packages/project/package.json index 43c05b1ed3b..909deb9a7a3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -145,7 +145,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.2.0", + "ava": "^5.3.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", @@ -153,7 +153,7 @@ "eslint": "^8.41.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^44.2.4", + "eslint-plugin-jsdoc": "^44.2.7", "esmock": "^2.2.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From d2d3ddb48b8b77e705ec81ff23ff9683f7ef8b9f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 28 May 2023 10:56:31 +0000 Subject: [PATCH 0931/1272] [ui5-project][DEPENDENCY] Bump xml2js from 0.5.0 to 0.6.0 Bumps [xml2js](https://github.com/Leonidas-from-XIV/node-xml2js) from 0.5.0 to 0.6.0. - [Commits](https://github.com/Leonidas-from-XIV/node-xml2js/compare/0.5.0...0.6.0) --- updated-dependencies: - dependency-name: xml2js dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 28 ++++++++++++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 48bef7af1fe..472823c2b25 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -30,7 +30,7 @@ "resolve": "^1.22.3", "rimraf": "^5.0.1", "semver": "^7.5.1", - "xml2js": "^0.5.0", + "xml2js": "^0.6.0", "yesno": "^0.4.0" }, "devDependencies": { @@ -1196,6 +1196,26 @@ "npm": ">= 8" } }, + "node_modules/@ui5/builder/node_modules/xml2js": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", + "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@ui5/builder/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "engines": { + "node": ">=4.0" + } + }, "node_modules/@ui5/fs": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.4.tgz", @@ -9715,9 +9735,9 @@ } }, "node_modules/xml2js": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", - "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.0.tgz", + "integrity": "sha512-eLTh0kA8uHceqesPqSE+VvO1CDDJWMwlQfB6LuN6T8w6MaDJ8Txm8P7s5cHD0miF0V+GGTZrDQfxPZQVsur33w==", "dependencies": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index 909deb9a7a3..062bdbced1e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -140,7 +140,7 @@ "resolve": "^1.22.3", "rimraf": "^5.0.1", "semver": "^7.5.1", - "xml2js": "^0.5.0", + "xml2js": "^0.6.0", "yesno": "^0.4.0" }, "devDependencies": { From 97964a953246d032290b6fef01971799dbe7876a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 1 Jun 2023 16:06:52 +0200 Subject: [PATCH 0932/1272] [ui5-project][FIX] ui5Framework: Choose correct resolver for snapshot framework version overrides --- .../project/lib/graph/helpers/ui5Framework.js | 2 +- .../test/lib/graph/helpers/ui5Framework.js | 118 +++++++++++++++++- 2 files changed, 117 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 7c6bb2347e0..3641f4d184c 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -329,7 +329,7 @@ export default { } let Resolver; - if (version && version.endsWith("-SNAPSHOT")) { + if (version && version.toLowerCase().endsWith("-snapshot")) { Resolver = (await import("../../ui5Framework/Sapui5MavenSnapshotResolver.js")).default; } else if (frameworkName === "OpenUI5") { Resolver = (await import("../../ui5Framework/Openui5Resolver.js")).default; diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index fd5070d6fe1..1e41369caeb 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -42,17 +42,19 @@ test.beforeEach(async (t) => { t.context.Sapui5ResolverStub.resolveVersion = t.context.Sapui5ResolverResolveVersionStub; t.context.Sapui5MavenSnapshotResolverInstallStub = sinon.stub(); - t.context.Sapui5MavenSnapshotResolver = sinon.stub() + t.context.Sapui5MavenSnapshotResolverStub = sinon.stub() .callsFake(() => { return { install: t.context.Sapui5MavenSnapshotResolverInstallStub }; }); + t.context.Sapui5MavenSnapshotResolverResolveVersionStub = sinon.stub(); + t.context.Sapui5MavenSnapshotResolverStub.resolveVersion = t.context.Sapui5MavenSnapshotResolverResolveVersionStub; t.context.ui5Framework = await esmock.p("../../../../lib/graph/helpers/ui5Framework.js", { "@ui5/logger": ui5Logger, "../../../../lib/ui5Framework/Sapui5Resolver.js": t.context.Sapui5ResolverStub, - "../../../../lib/ui5Framework/Sapui5MavenSnapshotResolver.js": t.context.Sapui5MavenSnapshotResolver, + "../../../../lib/ui5Framework/Sapui5MavenSnapshotResolver.js": t.context.Sapui5MavenSnapshotResolverStub, }); t.context.utils = t.context.ui5Framework._utils; }); @@ -321,6 +323,118 @@ test.serial("enrichProjectGraph: With versionOverride", async (t) => { }], "Sapui5Resolver#constructor should be called with expected args"); }); +test.serial("enrichProjectGraph: With versionOverride containing snapshot version", async (t) => { + const { + sinon, ui5Framework, utils, + Sapui5MavenSnapshotResolverStub, Sapui5MavenSnapshotResolverResolveVersionStub, + Sapui5MavenSnapshotResolverInstallStub + } = t.context; + + const dependencyTree = { + id: "test1", + version: "1.0.0", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.75.0" + } + } + }; + + const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; + const libraryMetadata = {fake: "metadata"}; + + sinon.stub(utils, "getFrameworkLibrariesFromGraph").resolves(referencedLibraries); + + Sapui5MavenSnapshotResolverInstallStub.resolves({libraryMetadata}); + + Sapui5MavenSnapshotResolverResolveVersionStub.resolves("1.99.9-SNAPSHOT"); + + const addProjectToGraphStub = sinon.stub(); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride: "1.99-SNAPSHOT"}); + + t.is(Sapui5MavenSnapshotResolverStub.callCount, 1, + "Sapui5MavenSnapshotResolverStub#constructor should be called once"); + t.deepEqual(Sapui5MavenSnapshotResolverStub.getCall(0).args, [{ + cacheMode: undefined, + cwd: dependencyTree.path, + version: "1.99.9-SNAPSHOT", + providedLibraryMetadata: undefined + }], "Sapui5Resolver#constructor should be called with expected args"); +}); + +test.serial("enrichProjectGraph: With versionOverride containing latest-snapshot", async (t) => { + const { + sinon, ui5Framework, utils, + Sapui5MavenSnapshotResolverStub, Sapui5MavenSnapshotResolverResolveVersionStub, + Sapui5MavenSnapshotResolverInstallStub + } = t.context; + + const dependencyTree = { + id: "test1", + version: "1.0.0", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.75.0" + } + } + }; + + const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; + const libraryMetadata = {fake: "metadata"}; + + sinon.stub(utils, "getFrameworkLibrariesFromGraph").resolves(referencedLibraries); + + Sapui5MavenSnapshotResolverInstallStub.resolves({libraryMetadata}); + + Sapui5MavenSnapshotResolverResolveVersionStub.resolves("1.99.9-SNAPSHOT"); + + const addProjectToGraphStub = sinon.stub(); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride: "latest-snapshot"}); + + t.is(Sapui5MavenSnapshotResolverStub.callCount, 1, + "Sapui5MavenSnapshotResolverStub#constructor should be called once"); + t.deepEqual(Sapui5MavenSnapshotResolverStub.getCall(0).args, [{ + cacheMode: undefined, + cwd: dependencyTree.path, + version: "1.99.9-SNAPSHOT", + providedLibraryMetadata: undefined + }], "Sapui5Resolver#constructor should be called with expected args"); +}); + test.serial("enrichProjectGraph shouldn't throw when no framework version and no libraries are provided", async (t) => { const {ui5Framework, log} = t.context; const dependencyTree = { From a5a7b995ae021b1d1d01fbd2324739294b53d052 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 4 Jun 2023 02:20:44 +0000 Subject: [PATCH 0933/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 144 +++++++++++++++-------------- packages/project/package.json | 6 +- 2 files changed, 77 insertions(+), 73 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 472823c2b25..2887c0a7bd5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,16 +40,16 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.41.0", + "eslint": "^8.42.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^44.2.7", - "esmock": "^2.2.3", + "esmock": "^2.3.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.5", - "js-beautify": "^1.14.7", + "js-beautify": "^1.14.8", "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", @@ -384,9 +384,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.3.tgz", - "integrity": "sha512-vrukxyW/ep8UD1UDzOYpTKQ6abgjFoeG6L+4ar9+c5TN9QnlqiOi6QK7LSR5ewm/ERyGkT/Ai6VboNrxhbr9Uw==", + "version": "7.22.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.4.tgz", + "integrity": "sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA==", "bin": { "parser": "bin/babel-parser.js" }, @@ -409,19 +409,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.22.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.1.tgz", - "integrity": "sha512-lAWkdCoUFnmwLBhIRLciFntGYsIIoC6vIbN8zrLPqBnJmPu7Z6nzqnKd7FsxQUNAvZfVZ0x6KdNvNp8zWIOHSQ==", + "version": "7.22.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.4.tgz", + "integrity": "sha512-Tn1pDsjIcI+JcLKq1AVlZEr4226gpuAQTsLMorsYg9tuS/kG7nuwwJ4AB8jfQuEgb/COBwR/DqJxmoiYFu5/rQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.22.0", + "@babel/generator": "^7.22.3", "@babel/helper-environment-visitor": "^7.22.1", "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.22.0", - "@babel/types": "^7.22.0", + "@babel/parser": "^7.22.4", + "@babel/types": "^7.22.4", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -430,9 +430,9 @@ } }, "node_modules/@babel/types": { - "version": "7.22.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.3.tgz", - "integrity": "sha512-P3na3xIQHTKY4L0YOG7pM8M8uoUIB910WQaSiiMCZUC2Cy8XFEQONGABFnHWBa2gpGKODTAJcNhi5Zk0sLRrzg==", + "version": "7.22.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.4.tgz", + "integrity": "sha512-Tx9x3UBHTTsMSW85WB2kphxYQVvrZ/t1FxD88IpSgIjiUJlCm9z+xWIDwyo1vffTwSqteqyznB8ZE9vYYk16zA==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.21.5", @@ -554,9 +554,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.41.0.tgz", - "integrity": "sha512-LxcyMGxwmTh2lY9FwHPGWOHmYFCZvbrFCBZL4FzSSsxsRPuhrYUg/49/0KDfW8tnIEaEHtfmn6+NPN+1DqaNmA==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.42.0.tgz", + "integrity": "sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -568,9 +568,9 @@ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", + "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -1699,9 +1699,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "version": "4.21.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.7.tgz", + "integrity": "sha512-BauCXrQ7I2ftSqd2mvKHGo85XR0u7Ru3C/Hxsy/0TkfCtjrmAbPdzLGasmoiBxplpDXlPvdjX9u7srIMfgasNA==", "dev": true, "funding": [ { @@ -1711,13 +1711,17 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" + "caniuse-lite": "^1.0.30001489", + "electron-to-chromium": "^1.4.411", + "node-releases": "^2.0.12", + "update-browserslist-db": "^1.0.11" }, "bin": { "browserslist": "cli.js" @@ -1964,9 +1968,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001489", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001489.tgz", - "integrity": "sha512-x1mgZEXK8jHIfAxm+xgdpHpk50IN3z3q3zP261/WS+uvePxW8izXuCu6AHz0lkuYTlATDehiZ/tNyYBdSQsOUQ==", + "version": "1.0.30001494", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001494.tgz", + "integrity": "sha512-sY2B5Qyl46ZzfYDegrl8GBCzdawSLT4ThM9b9F+aDYUrAG2zCOyMbd2Tq34mS1g4ZKBfjRlzOohQMxx28x6wJg==", "dev": true, "funding": [ { @@ -3109,9 +3113,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.411", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.411.tgz", - "integrity": "sha512-5VXLW4Qw89vM2WTICHua/y8v7fKGDRVa2VPOtBB9IpLvW316B+xd8yD1wTmLPY2ot/00P/qt87xdolj4aG/Lzg==", + "version": "1.4.419", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.419.tgz", + "integrity": "sha512-jdie3RiEgygvDTyS2sgjq71B36q2cDSBfPlwzUyuOrfYTNoYWyBxxjGJV/HAu3A2hB0Y+HesvCVkVAFoCKwCSw==", "dev": true }, "node_modules/emittery": { @@ -3231,16 +3235,16 @@ } }, "node_modules/eslint": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.41.0.tgz", - "integrity": "sha512-WQDQpzGBOP5IrXPo4Hc0814r4/v2rrIsB0rhT7jtunIalgg6gYXWhRMOejVO8yH21T/FGaxjmFjBMNqcIlmH1Q==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.42.0.tgz", + "integrity": "sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", "@eslint/eslintrc": "^2.0.3", - "@eslint/js": "8.41.0", - "@humanwhocodes/config-array": "^0.11.8", + "@eslint/js": "8.42.0", + "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "ajv": "^6.10.0", @@ -3622,9 +3626,9 @@ } }, "node_modules/esmock": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.2.3.tgz", - "integrity": "sha512-nqXoU3Z/ogsPKhXoX41PDs4rCtJxMcwEI8vw4NSjE7b6Os0EzPJvmA15X6F74AIt1Fu8VBRvLl3HDxXNze/0eg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.1.tgz", + "integrity": "sha512-ZxuxfhwGSlStiJFbw6Z+a70fB6SutTcUr0X8dhehx6aqiC5kgBvEYV4xNW94cKaD8gaqD7P00RjBH/pfao2CQA==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4982,14 +4986,14 @@ } }, "node_modules/js-beautify": { - "version": "1.14.7", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.7.tgz", - "integrity": "sha512-5SOX1KXPFKx+5f6ZrPsIPEY7NwKeQz47n3jm2i+XeHx9MoRsfQenlOP13FQhWvg8JRS0+XLO6XYUQ2GX+q+T9A==", + "version": "1.14.8", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.8.tgz", + "integrity": "sha512-4S7HFeI9YfRvRgKnEweohs0tgJj28InHVIj4Nl8Htf96Y6pHg3+tJrmo4ucAM9f7l4SHbFI3IvFAZ2a1eQPbyg==", "dev": true, "dependencies": { "config-chain": "^1.1.13", "editorconfig": "^0.15.3", - "glob": "^8.0.3", + "glob": "^8.1.0", "nopt": "^6.0.0" }, "bin": { @@ -4998,7 +5002,7 @@ "js-beautify": "js/bin/js-beautify.js" }, "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/js-string-escape": { @@ -5554,9 +5558,9 @@ } }, "node_modules/meow/node_modules/type-fest": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.11.0.tgz", - "integrity": "sha512-JaPw5U9ixP0XcpUbQoVSbxSDcK/K4nww20C3kjm9yE6cDRRhptU28AH60VWf9ltXmCrIfIbtt9J+2OUk2Uqiaw==", + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.11.1.tgz", + "integrity": "sha512-aCuRNRERRVh33lgQaJRlUxZqzfhzwTrsE98Mc3o3VXqmiaQdHacgUtJ0esp+7MvZ92qhtzKPeusaX6vIEcoreA==", "dev": true, "engines": { "node": ">=14.16" @@ -7134,9 +7138,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.1.tgz", - "integrity": "sha512-65/Jky17UwSb0BuB9V+MyDpsOtXKmYwzhyl+cOa9XUiI4uV2Ouy/2voFP3+al0BjZbJgMBD8FojMpAf+Z+qn4A==", + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.2.tgz", + "integrity": "sha512-ERJq3FOzJTxBbFjZ7iDs+NiK4VI9Wz+RdrrAB8dio1oV+YvdPzUEE4QNiT2VD51DkIbCYRUUzCRkssXCHqSnKQ==", "engines": { "node": "14 || >=16.14" } @@ -7384,9 +7388,9 @@ } }, "node_modules/postcss": { - "version": "8.4.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz", - "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==", + "version": "8.4.24", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz", + "integrity": "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==", "dev": true, "funding": [ { @@ -7567,9 +7571,9 @@ } }, "node_modules/read-package-json": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.3.tgz", - "integrity": "sha512-4QbpReW4kxFgeBQ0vPAqh2y8sXEB3D4t3jsXbJKIhBiF80KT6XRo45reqwtftju5J6ru1ax06A2Gb/wM1qCOEQ==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.4.tgz", + "integrity": "sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==", "dependencies": { "glob": "^10.2.2", "json-parse-even-better-errors": "^3.0.0", @@ -7934,9 +7938,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.11.0.tgz", - "integrity": "sha512-JaPw5U9ixP0XcpUbQoVSbxSDcK/K4nww20C3kjm9yE6cDRRhptU28AH60VWf9ltXmCrIfIbtt9J+2OUk2Uqiaw==", + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.11.1.tgz", + "integrity": "sha512-aCuRNRERRVh33lgQaJRlUxZqzfhzwTrsE98Mc3o3VXqmiaQdHacgUtJ0esp+7MvZ92qhtzKPeusaX6vIEcoreA==", "engines": { "node": ">=14.16" }, @@ -8784,9 +8788,9 @@ } }, "node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dependencies": { "ansi-regex": "^6.0.1" }, @@ -9142,12 +9146,12 @@ } }, "node_modules/terser": { - "version": "5.17.6", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.6.tgz", - "integrity": "sha512-V8QHcs8YuyLkLHsJO5ucyff1ykrLVsR4dNnS//L5Y3NiSXpbK1J+WMVUs67eI0KTxs9JtHhgEQpXQVHlHI92DQ==", + "version": "5.17.7", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.7.tgz", + "integrity": "sha512-/bi0Zm2C6VAexlGgLlVxA0P2lru/sdLyfCVaRMfKVo9nWxbmz7f/sD8VPybPeSUJaJcwmCJis9pBIhcVcG1QcQ==", "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", "commander": "^2.20.0", "source-map-support": "~0.5.20" }, diff --git a/packages/project/package.json b/packages/project/package.json index 062bdbced1e..189c674d437 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -150,16 +150,16 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.41.0", + "eslint": "^8.42.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^44.2.7", - "esmock": "^2.2.3", + "esmock": "^2.3.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.5", - "js-beautify": "^1.14.7", + "js-beautify": "^1.14.8", "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", From 424f9a8c5b328ea1d806cf4b74abf2c5927c12cf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 4 Jun 2023 10:56:32 +0000 Subject: [PATCH 0934/1272] [ui5-project][INTERNAL] Bump eslint-plugin-jsdoc from 44.2.7 to 46.2.2 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 44.2.7 to 46.2.2. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Changelog](https://github.com/gajus/eslint-plugin-jsdoc/blob/main/.releaserc) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v44.2.7...v46.2.2) --- updated-dependencies: - dependency-name: eslint-plugin-jsdoc dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2887c0a7bd5..c596b6134c5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^8.42.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^44.2.7", + "eslint-plugin-jsdoc": "^46.2.2", "esmock": "^2.3.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -3325,9 +3325,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "44.2.7", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-44.2.7.tgz", - "integrity": "sha512-PcAJO7Wh4xIHPT+StBRpEbWgwCpIrYk75zL31RMbduVVHpgiy3Y8aXQ6pdbRJOq0fxHuepWSEAve8ZrPWTSKRg==", + "version": "46.2.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.2.2.tgz", + "integrity": "sha512-s85g93FT54emQX/h+Aoh1+SFrIz/C327gn+t8YS4md82/iNFWNp+qjT88MNH9XwD0rrhUqxE39xh46+RTGRyYw==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.39.4", diff --git a/packages/project/package.json b/packages/project/package.json index 189c674d437..e44ccef06c0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -153,7 +153,7 @@ "eslint": "^8.42.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^44.2.7", + "eslint-plugin-jsdoc": "^46.2.2", "esmock": "^2.3.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 7dd1e6ccc16244c0d3856e12fa9a7ac4e0781461 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 5 Jun 2023 12:32:18 +0000 Subject: [PATCH 0935/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.4 to 3.0.5 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.5/CHANGELOG.md --- packages/project/package-lock.json | 32 ++++++------------------------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 27 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c596b6134c5..b4d8b7ecf3d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.3.1", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.4", + "@ui5/builder": "^3.0.5", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1170,9 +1170,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.4.tgz", - "integrity": "sha512-wW6qeFsxHTdh0gr/5Ey3FmUieG3t0lrFAwbsa+KGmDZ++03R9Kpqlvs4hYU2lEsstfR/k1pjC7rA2/tIsfha8w==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.5.tgz", + "integrity": "sha512-ud+KDRypKvwTQuwxeYs5sF48HrsHduJolE2Guo30PCxGmMHRi6hEib6NRX40EujyJUnvn+Kw74OjcA9ak2rrSw==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.4", @@ -1187,35 +1187,15 @@ "pretty-data": "^0.40.0", "rimraf": "^5.0.1", "semver": "^7.5.1", - "terser": "^5.17.4", + "terser": "^5.17.7", "workerpool": "^6.4.0", - "xml2js": "^0.5.0" + "xml2js": "^0.6.0" }, "engines": { "node": "^16.18.0 || >=18.12.0", "npm": ">= 8" } }, - "node_modules/@ui5/builder/node_modules/xml2js": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", - "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/@ui5/builder/node_modules/xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "engines": { - "node": ">=4.0" - } - }, "node_modules/@ui5/fs": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.4.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index e44ccef06c0..af35a88dd9f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,7 +119,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.4", + "@ui5/builder": "^3.0.5", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From 8e2e6f8a492394dd89a0b0bef38bd72474e8013a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 2 Jun 2023 13:54:36 +0200 Subject: [PATCH 0936/1272] [ui5-project][INTERNAL] CacheMode: Update JSDoc --- packages/project/lib/ui5Framework/maven/CacheMode.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/ui5Framework/maven/CacheMode.js b/packages/project/lib/ui5Framework/maven/CacheMode.js index 5757ca3dd0d..d1b5af0d422 100644 --- a/packages/project/lib/ui5Framework/maven/CacheMode.js +++ b/packages/project/lib/ui5Framework/maven/CacheMode.js @@ -7,8 +7,8 @@ * @readonly * @enum {string} * @property {string} Default Cache everything, invalidate after 9 hours - * @property {string} Force Use cache only - * @property {string} Off Do not use the cache + * @property {string} Force Use cache only. Do not send any requests to the repository + * @property {string} Off Invalidate the cache and update from the repository * @module @ui5/project/ui5Framework/maven/CacheMode */ export default { From f03f8a993e3248b951e05d230844c826a0cae6b2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 5 Jun 2023 16:41:01 +0200 Subject: [PATCH 0937/1272] [ui5-project][FIX] ui5Framework: Treat 'optional' dependencies of root project as non-optional This is a v3 regression. Optional dependencies of the root project should always be enforced (just like development dependencies). Instead, ui5Framework would correctly install them, but then declared the dependency in the graph as 'optional'. Which meant the dependency would only be enforced if another dependency would define a non-optional dependency to it. BCP: 2380060321 --- .../project/lib/graph/helpers/ui5Framework.js | 2 +- .../graph/helpers/ui5Framework.integration.js | 2 +- .../test/lib/graph/helpers/ui5Framework.js | 80 ++++++++++++++++--- 3 files changed, 71 insertions(+), 13 deletions(-) diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 3641f4d184c..4dec544703b 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -180,7 +180,7 @@ const utils = { `add the attribute "allowSapInternal: true" to its metadata configuration`); } } - if (dependency.optional) { + if (!isRoot && dependency.optional) { if (projectGraph.getProject(dependency.name)) { projectGraph.declareOptionalDependency(project.getName(), dependency.name); } diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index e15730d48b8..43452effb4d 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -503,8 +503,8 @@ function defineTest(testName, { "test-dependency", "test-dependency-no-framework", "sap.ui.lib1", - "sap.ui.lib8", "sap.ui.lib4", + "sap.ui.lib8", ], `Non-framework dependency has correct dependencies`); t.deepEqual(projectGraph.getDependencies("test-dependency"), [ diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index 1e41369caeb..458397f3043 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -540,6 +540,23 @@ test.serial("enrichProjectGraph should resolve framework project with version an }] } } + }, { + id: "@openui5/lib1", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib1" + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "lib3" + }] + } + } }] }; const referencedLibraries = ["lib1"]; @@ -562,7 +579,7 @@ test.serial("enrichProjectGraph should resolve framework project with version an const projectGraph = await projectGraphBuilder(provider); await ui5Framework.enrichProjectGraph(projectGraph); - t.is(projectGraph.getSize(), 2, "Project graph should remain unchanged"); + t.is(projectGraph.getSize(), 3, "Project graph should remain unchanged"); t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGrap should be called once"); t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); @@ -620,6 +637,23 @@ test.serial("enrichProjectGraph should resolve framework project " + }] } } + }, { + id: "@openui5/lib1", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib1" + }, + framework: { + name: "OpenUI5", + libraries: [{ + name: "lib3" + }] + } + } }] }; const referencedLibraries = ["lib1"]; @@ -643,7 +677,7 @@ test.serial("enrichProjectGraph should resolve framework project " + const projectGraph = await projectGraphBuilder(provider); await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride: "3.4.5"}); - t.is(projectGraph.getSize(), 2, "Project graph should remain unchanged"); + t.is(projectGraph.getSize(), 3, "Project graph should remain unchanged"); t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGraph should be called once"); @@ -1210,6 +1244,9 @@ test.serial("utils.declareFrameworkDependenciesInGraph", async (t) => { }, { name: "lib3", development: true + }, { + name: "lib5", + optional: true }] } }, @@ -1236,6 +1273,9 @@ test.serial("utils.declareFrameworkDependenciesInGraph", async (t) => { }, { name: "lib5", optional: true + }, { + name: "lib6", + optional: true }] } }, @@ -1295,6 +1335,17 @@ test.serial("utils.declareFrameworkDependenciesInGraph", async (t) => { deprecated: true } } + }, { + id: "@openui5/lib5", + version: "1.2.3", + path: libraryEPath, + configuration: { + specVersion: "2.0", + type: "library", + metadata: { + name: "lib5" + } + } }] }; const projectGraph = await projectGraphBuilder(new DependencyTreeProvider({ @@ -1310,21 +1361,25 @@ test.serial("utils.declareFrameworkDependenciesInGraph", async (t) => { const resolveOptionalDependenciesSpy = sinon.spy(projectGraph, "resolveOptionalDependencies"); await utils.declareFrameworkDependenciesInGraph(projectGraph); - t.is(declareDependencySpy.callCount, 5, "declareDependency got called five times"); + t.is(declareDependencySpy.callCount, 7, "declareDependency got called seven times"); t.deepEqual(declareDependencySpy.getCall(0).args, ["application.a", "lib1"], "declareDependency got called with correct arguments on first call"); - t.deepEqual(declareDependencySpy.getCall(1).args, ["application.a", "lib3"], + t.deepEqual(declareDependencySpy.getCall(1).args, ["application.a", "lib2"], "declareDependency got called with correct arguments on second call"); - t.deepEqual(declareDependencySpy.getCall(2).args, ["library.a", "lib2"], + t.deepEqual(declareDependencySpy.getCall(2).args, ["application.a", "lib3"], "declareDependency got called with correct arguments on third call"); - t.deepEqual(declareDependencySpy.getCall(3).args, ["application.a", "lib2"], + t.deepEqual(declareDependencySpy.getCall(3).args, ["application.a", "lib5"], "declareDependency got called with correct arguments on fourth call"); - t.deepEqual(declareDependencySpy.getCall(4).args, ["library.a", "lib3"], + t.deepEqual(declareDependencySpy.getCall(4).args, ["library.a", "lib2"], "declareDependency got called with correct arguments on fifth call"); + t.deepEqual(declareDependencySpy.getCall(5).args, ["library.a", "lib3"], + "declareDependency got called with correct arguments on sixth call"); + t.deepEqual(declareDependencySpy.getCall(6).args, ["library.a", "lib5"], + "declareDependency got called with correct arguments on seventh call"); t.is(declareOptionalDependencySpy.callCount, 2, "declareOptionalDependency got called "); - t.deepEqual(declareOptionalDependencySpy.getCall(0).args, ["application.a", "lib2"], + t.deepEqual(declareOptionalDependencySpy.getCall(0).args, ["library.a", "lib3"], "declareOptionalDependency got called with correct arguments on first call"); - t.deepEqual(declareOptionalDependencySpy.getCall(1).args, ["library.a", "lib3"], + t.deepEqual(declareOptionalDependencySpy.getCall(1).args, ["library.a", "lib5"], "declareOptionalDependency got called with correct arguments on second call"); t.is(resolveOptionalDependenciesSpy.callCount, 1, "resolveOptionalDependenciesSpy got called once"); @@ -1343,13 +1398,15 @@ test.serial("utils.declareFrameworkDependenciesInGraph", async (t) => { t.deepEqual(projectGraph.getDependencies("application.a"), [ "library.a", "lib1", + "lib2", "lib3", - "lib2" + "lib5" ], `Root project has correct dependencies`); t.deepEqual(projectGraph.getDependencies("library.a"), [ "lib2", - "lib3" + "lib3", + "lib5" ], `Non-framework dependency has correct dependencies`); }); @@ -1457,6 +1514,7 @@ test.serial("utils.declareFrameworkDependenciesInGraph: No deprecation warnings t.deepEqual(projectGraph.getDependencies("testsuite"), [ "lib1", + "lib2", "lib3" ], `Root project has correct dependencies`); }); From f6fc0cede616d39270d8ab81edfc314ec4800eba Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 6 Jun 2023 09:25:01 +0000 Subject: [PATCH 0938/1272] [ui5-project]Release 3.3.2 --- packages/project/CHANGELOG.md | 13 ++++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 8363f8480cb..da04792056b 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,17 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.3.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.3.2...HEAD). + + +## [v3.3.2] - 2023-06-05 +### Bug Fixes +- **ui5Framework:** Treat 'optional' dependencies of root project as non-optional [`f3318f0`](https://github.com/SAP/ui5-project/commit/f3318f0daff617e12ac97050e19d41a16ecbc748) +- **ui5Framework:** Choose correct resolver for snapshot framework version overrides [`ba860de`](https://github.com/SAP/ui5-project/commit/ba860de97bc1674fa8381706cc09bd68ee08df38) + +### Dependency Updates +- Bump xml2js from 0.5.0 to 0.6.0 [`aa7d853`](https://github.com/SAP/ui5-project/commit/aa7d853f4a719006a6aaf4e51cc5c12fd00d2aa1) + ## [v3.3.1] - 2023-05-23 @@ -391,6 +401,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.3.2]: https://github.com/SAP/ui5-project/compare/v3.3.1...v3.3.2 [v3.3.1]: https://github.com/SAP/ui5-project/compare/v3.3.0...v3.3.1 [v3.3.0]: https://github.com/SAP/ui5-project/compare/v3.2.2...v3.3.0 [v3.2.2]: https://github.com/SAP/ui5-project/compare/v3.2.1...v3.2.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b4d8b7ecf3d..6febdf68810 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.3.1", + "version": "3.3.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.3.1", + "version": "3.3.2", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.5", diff --git a/packages/project/package.json b/packages/project/package.json index af35a88dd9f..69787c07d4d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.3.1", + "version": "3.3.2", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From a8736392c4f6a333f1d7cd53ba187559f686ad1f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 11 Jun 2023 02:20:45 +0000 Subject: [PATCH 0939/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 328 ++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 186 insertions(+), 144 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6febdf68810..96103e52a62 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^8.42.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.2.2", + "eslint-plugin-jsdoc": "^46.2.6", "esmock": "^2.3.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -80,41 +80,41 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", - "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", + "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", "dependencies": { - "@babel/highlight": "^7.18.6" + "@babel/highlight": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.22.3", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.3.tgz", - "integrity": "sha512-aNtko9OPOwVESUFp3MZfD8Uzxl7JzSeJpd7npIoxCasU37PFbAQRpKglkaKwlHOyeJdrREpo8TW8ldrkYWwvIQ==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.5.tgz", + "integrity": "sha512-4Jc/YuIaYqKnDDz892kPIledykKg12Aw1PYX5i/TY28anJtacvM1Rrr8wbieB9GfEJwlzqT0hUEao0CxEebiDA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.22.1", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.1.tgz", - "integrity": "sha512-Hkqu7J4ynysSXxmAahpN1jjRwVJ+NdpraFLIWflgjpVob3KNyK3/tIUc7Q7szed8WMp0JNa7Qtd1E9Oo22F9gA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.5.tgz", + "integrity": "sha512-SBuTAjg91A3eKOvD+bPEz3LlhHZRNu1nFOVts9lzDJTXshHTjII0BAtDS3Y2DAkdZdDKWVZGVwkDfc4Clxn1dg==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.22.0", - "@babel/helper-compilation-targets": "^7.22.1", - "@babel/helper-module-transforms": "^7.22.1", - "@babel/helpers": "^7.22.0", - "@babel/parser": "^7.22.0", - "@babel/template": "^7.21.9", - "@babel/traverse": "^7.22.1", - "@babel/types": "^7.22.0", + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helpers": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.5", + "@babel/types": "^7.22.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -139,12 +139,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.22.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.3.tgz", - "integrity": "sha512-C17MW4wlk//ES/CJDL51kPNwl+qiBQyN7b9SKyVp11BLGFeSPoVaHrv+MNt8jwQFhQWowW88z1eeBx3pFz9v8A==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.5.tgz", + "integrity": "sha512-+lcUbnTRhd0jOewtFSedLyiPsD5tswKkbgcezOqqWFUVNEwoUTlpPOBmvhG7OXWLR4jMdv0czPGH5XbflnD1EA==", "dev": true, "dependencies": { - "@babel/types": "^7.22.3", + "@babel/types": "^7.22.5", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -154,13 +154,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.1", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.1.tgz", - "integrity": "sha512-Rqx13UM3yVB5q0D/KwQ8+SPfX/+Rnsy1Lw1k/UwOC4KC6qrzIQoY3lYnBu5EHKBlEHHcj0M0W8ltPSkD8rqfsQ==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.5.tgz", + "integrity": "sha512-Ji+ywpHeuqxB8WDxraCiqR0xfhYjiDE/e6k7FuIaANnoOFxAHskHChz4vA1mJC9Lbm01s1PVAGhQY4FUKSkGZw==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.0", - "@babel/helper-validator-option": "^7.21.0", + "@babel/compat-data": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", "browserslist": "^4.21.3", "lru-cache": "^5.1.1", "semver": "^6.3.0" @@ -182,149 +182,149 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.1", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.1.tgz", - "integrity": "sha512-Z2tgopurB/kTbidvzeBrc2To3PUP/9i5MUe+fU6QJCQDyPwSH2oRapkLw3KGECDYSjhQZCNxEvNvZlLw8JjGwA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", + "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", - "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", + "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", "dev": true, "dependencies": { - "@babel/template": "^7.20.7", - "@babel/types": "^7.21.0" + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", "dev": true, "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", - "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", + "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", "dev": true, "dependencies": { - "@babel/types": "^7.21.4" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.22.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.1.tgz", - "integrity": "sha512-dxAe9E7ySDGbQdCVOY/4+UcD8M9ZFqZcZhSPsPacvCG4M+9lwtDDQfI2EoaSvmf7W/8yCBkGU0m7Pvt1ru3UZw==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.5.tgz", + "integrity": "sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.1", - "@babel/helper-module-imports": "^7.21.4", - "@babel/helper-simple-access": "^7.21.5", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.21.9", - "@babel/traverse": "^7.22.1", - "@babel/types": "^7.22.0" + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.5", + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz", - "integrity": "sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", - "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", "dev": true, "dependencies": { - "@babel/types": "^7.21.5" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.5.tgz", + "integrity": "sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ==", "dev": true, "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", - "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", + "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", + "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.22.3", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.3.tgz", - "integrity": "sha512-jBJ7jWblbgr7r6wYZHMdIqKc73ycaTcCaWRq4/2LpuPHcx7xMlZvpGQkOYc9HeSjn6rcx15CPlgVcBtZ4WZJ2w==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.5.tgz", + "integrity": "sha512-pSXRmfE1vzcUIDFQcSGA5Mr+GxBV9oiRKDuDxXvWQQBCh8HoIjs/2DlDB7H8smac1IVrB9/xdXj2N3Wol9Cr+Q==", "dev": true, "dependencies": { - "@babel/template": "^7.21.9", - "@babel/traverse": "^7.22.1", - "@babel/types": "^7.22.3" + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.5", + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", + "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", + "@babel/helper-validator-identifier": "^7.22.5", "chalk": "^2.0.0", "js-tokens": "^4.0.0" }, @@ -384,9 +384,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.4.tgz", - "integrity": "sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz", + "integrity": "sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==", "bin": { "parser": "bin/babel-parser.js" }, @@ -395,33 +395,33 @@ } }, "node_modules/@babel/template": { - "version": "7.21.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.21.9.tgz", - "integrity": "sha512-MK0X5k8NKOuWRamiEfc3KEJiHMTkGZNUjzMipqCGDDc6ijRl/B7RGSKVGncu4Ro/HdyzzY6cmoXuKI2Gffk7vQ==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.21.4", - "@babel/parser": "^7.21.9", - "@babel/types": "^7.21.5" + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.22.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.4.tgz", - "integrity": "sha512-Tn1pDsjIcI+JcLKq1AVlZEr4226gpuAQTsLMorsYg9tuS/kG7nuwwJ4AB8jfQuEgb/COBwR/DqJxmoiYFu5/rQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.22.3", - "@babel/helper-environment-visitor": "^7.22.1", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.22.4", - "@babel/types": "^7.22.4", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.5.tgz", + "integrity": "sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -430,13 +430,13 @@ } }, "node_modules/@babel/types": { - "version": "7.22.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.4.tgz", - "integrity": "sha512-Tx9x3UBHTTsMSW85WB2kphxYQVvrZ/t1FxD88IpSgIjiUJlCm9z+xWIDwyo1vffTwSqteqyznB8ZE9vYYk16zA==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz", + "integrity": "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.21.5", - "@babel/helper-validator-identifier": "^7.19.1", + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", "to-fast-properties": "^2.0.0" }, "engines": { @@ -850,9 +850,9 @@ } }, "node_modules/@npmcli/git": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.0.4.tgz", - "integrity": "sha512-5yZghx+u5M47LghaybLCkdSyFzV/w4OuH12d96HO389Ik9CDsLaDZJVynSGGVJOLn6gy/k7Dz5XYcplM3uxXRg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz", + "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==", "dependencies": { "@npmcli/promise-spawn": "^6.0.0", "lru-cache": "^7.4.4", @@ -1049,6 +1049,19 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@sigstore/tuf": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.0.tgz", + "integrity": "sha512-bLzi9GeZgMCvjJeLUIfs8LJYCxrPRA8IXQkzUtaFKKVPTz0mucRyqFcV2U20yg9K+kYAD0YSitzGfRZCFLjdHQ==", + "dependencies": { + "@sigstore/protobuf-specs": "^0.1.0", + "make-fetch-happen": "^11.0.1", + "tuf-js": "^1.1.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@sinonjs/commons": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", @@ -1715,6 +1728,18 @@ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/builtins": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", @@ -1796,9 +1821,9 @@ } }, "node_modules/cacache/node_modules/glob": { - "version": "10.2.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.6.tgz", - "integrity": "sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==", + "version": "10.2.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.7.tgz", + "integrity": "sha512-jTKehsravOJo8IJxUGfZILnkvVJM/MOfHRs8QcXolVef2zNI9Tqyy5+SeuOAZd3upViEZQLyFpQhYiHLrMUNmA==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -1948,9 +1973,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001494", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001494.tgz", - "integrity": "sha512-sY2B5Qyl46ZzfYDegrl8GBCzdawSLT4ThM9b9F+aDYUrAG2zCOyMbd2Tq34mS1g4ZKBfjRlzOohQMxx28x6wJg==", + "version": "1.0.30001498", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001498.tgz", + "integrity": "sha512-LFInN2zAwx3ANrGCDZ5AKKJroHqNKyjXitdV5zRIVIaQlXKj3GmxUKagoKsjqUfckpAObPCEWnk5EeMlyMWcgw==", "dev": true, "funding": [ { @@ -3093,9 +3118,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.419", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.419.tgz", - "integrity": "sha512-jdie3RiEgygvDTyS2sgjq71B36q2cDSBfPlwzUyuOrfYTNoYWyBxxjGJV/HAu3A2hB0Y+HesvCVkVAFoCKwCSw==", + "version": "1.4.427", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.427.tgz", + "integrity": "sha512-HK3r9l+Jm8dYAm1ctXEWIC+hV60zfcjS9UA5BDlYvnI5S7PU/yytjpvSrTNrSSRRkuu3tDyZhdkwIczh+0DWaw==", "dev": true }, "node_modules/emittery": { @@ -3305,9 +3330,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.2.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.2.2.tgz", - "integrity": "sha512-s85g93FT54emQX/h+Aoh1+SFrIz/C327gn+t8YS4md82/iNFWNp+qjT88MNH9XwD0rrhUqxE39xh46+RTGRyYw==", + "version": "46.2.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.2.6.tgz", + "integrity": "sha512-zIaK3zbSrKuH12bP+SPybPgcHSM6MFzh3HFeaODzmsF1N8C1l8dzJ22cW1aq4g0+nayU1VMjmNf7hg0dpShLrA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.39.4", @@ -3316,6 +3341,7 @@ "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", + "is-builtin-module": "^3.2.1", "semver": "^7.5.1", "spdx-expression-parse": "^3.0.1" }, @@ -3831,9 +3857,9 @@ } }, "node_modules/file-type": { - "version": "18.4.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.4.0.tgz", - "integrity": "sha512-o6MQrZKTAK6WpvmQk3jqTVUmqxYBxW5bloUfrdH1ZnRFDvvAPNr+l+rgOxM3nkqWT+3khaj3FRMDydWe0xhu+w==", + "version": "18.5.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.5.0.tgz", + "integrity": "sha512-yvpl5U868+V6PqXHMmsESpg6unQ5GfnPssl4dxdJudBrr9qy7Fddt7EVX1VLlddFfe8Gj9N7goCZH22FXuSQXQ==", "dev": true, "dependencies": { "readable-web-to-node-stream": "^3.0.2", @@ -4541,6 +4567,21 @@ "node": ">=8" } }, + "node_modules/is-builtin-module": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", + "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", + "dev": true, + "dependencies": { + "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-core-module": { "version": "2.12.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", @@ -7600,9 +7641,9 @@ } }, "node_modules/read-package-json/node_modules/glob": { - "version": "10.2.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.6.tgz", - "integrity": "sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==", + "version": "10.2.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.7.tgz", + "integrity": "sha512-jTKehsravOJo8IJxUGfZILnkvVJM/MOfHRs8QcXolVef2zNI9Tqyy5+SeuOAZd3upViEZQLyFpQhYiHLrMUNmA==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -8113,9 +8154,9 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "10.2.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.6.tgz", - "integrity": "sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==", + "version": "10.2.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.7.tgz", + "integrity": "sha512-jTKehsravOJo8IJxUGfZILnkvVJM/MOfHRs8QcXolVef2zNI9Tqyy5+SeuOAZd3upViEZQLyFpQhYiHLrMUNmA==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -8284,9 +8325,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.62.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.62.1.tgz", - "integrity": "sha512-NHpxIzN29MXvWiuswfc1W3I0N8SXBd8UR26WntmDlRYf0bSADnwnOjsyMZ3lMezSlArD33Vs3YFhp7dWvL770A==", + "version": "1.63.3", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.3.tgz", + "integrity": "sha512-ySdXN+DVpfwq49jG1+hmtDslYqpS7SkOR5GpF6o2bmb1RL/xS+wvPmegMvMywyfsmAV6p7TgwXYGrCZIFFbAHg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8417,11 +8458,12 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sigstore": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.5.2.tgz", - "integrity": "sha512-X95v6xAAooVpn7PaB94TDmFeSO5SBfCtB1R23fvzr36WTfjtkiiyOeei979nbTjc8nzh6FSLeltQZuODsm1EjQ==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.6.0.tgz", + "integrity": "sha512-QODKff/qW/TXOZI6V/Clqu74xnInAS6it05mufj4/fSewexLtfEntgLZZcBtUK44CDQyUE5TUXYy1ARYzlfG9g==", "dependencies": { "@sigstore/protobuf-specs": "^0.1.0", + "@sigstore/tuf": "^1.0.0", "make-fetch-happen": "^11.0.1", "tuf-js": "^1.1.3" }, diff --git a/packages/project/package.json b/packages/project/package.json index 69787c07d4d..3bc01101250 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -153,7 +153,7 @@ "eslint": "^8.42.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.2.2", + "eslint-plugin-jsdoc": "^46.2.6", "esmock": "^2.3.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From 9299596d1f4e019a8b3b4944dfa39640a19dc696 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Jun 2023 05:56:38 +0000 Subject: [PATCH 0940/1272] [ui5-project]Bump coverallsapp/github-action from 2.1.2 to 2.2.0 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.1.2 to 2.2.0. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v2.1.2...v2.2.0) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 36956e2be96..369ad94c89e 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v2.1.2 + uses: coverallsapp/github-action@v2.2.0 From 1b1f2114f8349d02655118b442ad1321cf5b744b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 14 Jun 2023 08:20:06 +0000 Subject: [PATCH 0941/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 377 +++-------------------------- packages/project/package.json | 2 +- 2 files changed, 40 insertions(+), 339 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 96103e52a62..25cc76dc2f9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -53,7 +53,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.1.0", + "sinon": "^15.1.2", "tap-xunit": "^2.4.1" }, "engines": { @@ -562,11 +562,6 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" - }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", @@ -904,72 +899,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "deprecated": "This functionality has been moved to @npmcli/fs", - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/move-file/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@npmcli/move-file/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@npmcli/move-file/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@npmcli/move-file/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@npmcli/node-gyp": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", @@ -1072,9 +1001,9 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.2.0.tgz", - "integrity": "sha512-OPwQlEdg40HAj5KNF8WW6q2KG4Z+cBCZb3m4ninfTZKaBmbIJodviQsDBoYMPHkOyJJMHnOJo5j2+LKDOhOACg==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.1.0.tgz", + "integrity": "sha512-w1qd368vtrwttm1PRJWPW1QHlbmHrVDGs1eBH/jZvRPUFS4MNXV9Q33EQdjOdeAxZ7O8+3wM7zxztm2nfUSyKw==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0" @@ -1692,9 +1621,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.7", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.7.tgz", - "integrity": "sha512-BauCXrQ7I2ftSqd2mvKHGo85XR0u7Ru3C/Hxsy/0TkfCtjrmAbPdzLGasmoiBxplpDXlPvdjX9u7srIMfgasNA==", + "version": "4.21.8", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.8.tgz", + "integrity": "sha512-j+7xYe+v+q2Id9qbBeCI8WX5NmZSRe8es1+0xntD/+gaWXznP8tFEkv5IgSaHf5dS1YwVMbX/4W6m937mj+wQw==", "dev": true, "funding": [ { @@ -1711,8 +1640,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001489", - "electron-to-chromium": "^1.4.411", + "caniuse-lite": "^1.0.30001502", + "electron-to-chromium": "^1.4.428", "node-releases": "^2.0.12", "update-browserslist-db": "^1.0.11" }, @@ -1973,9 +1902,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001498", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001498.tgz", - "integrity": "sha512-LFInN2zAwx3ANrGCDZ5AKKJroHqNKyjXitdV5zRIVIaQlXKj3GmxUKagoKsjqUfckpAObPCEWnk5EeMlyMWcgw==", + "version": "1.0.30001503", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001503.tgz", + "integrity": "sha512-Sf9NiF+wZxPfzv8Z3iS0rXM1Do+iOy2Lxvib38glFX+08TCYYYGR5fRJXk4d77C4AYwhUjgYgMsMudbh2TqCKw==", "dev": true, "funding": [ { @@ -3118,9 +3047,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.427", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.427.tgz", - "integrity": "sha512-HK3r9l+Jm8dYAm1ctXEWIC+hV60zfcjS9UA5BDlYvnI5S7PU/yytjpvSrTNrSSRRkuu3tDyZhdkwIczh+0DWaw==", + "version": "1.4.430", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.430.tgz", + "integrity": "sha512-FytjTbGwz///F+ToZ5XSeXbbSaXalsVRXsz2mHityI5gfxft7ieW3HqFLkU5V1aIrY42aflICqbmFoDxW10etg==", "dev": true }, "node_modules/emittery": { @@ -3779,6 +3708,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==" + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -4503,11 +4437,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" - }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -6006,14 +5935,15 @@ } }, "node_modules/node-gyp": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.1.tgz", - "integrity": "sha512-4Q16ZCqq3g8awk6UplT7AuxQ35XN4R/yf/+wSAwcBUAjg7l58RTactWaP8fIDTi0FzI7YcVLujwExakZlfWkXg==", + "version": "9.4.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.0.tgz", + "integrity": "sha512-dMXsYP6gc9rRbejLXmTbVRYjAHw7ppswsKyMxuxJxxOHzluIO1rGp9TOQgjFJ+2MCqcOcQTOPB/8Xwhr+7s4Eg==", "dependencies": { "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", "glob": "^7.1.4", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", + "make-fetch-happen": "^11.0.3", "nopt": "^6.0.0", "npmlog": "^6.0.0", "rimraf": "^3.0.2", @@ -6028,30 +5958,6 @@ "node": "^12.13 || ^14.13 || >=16" } }, - "node_modules/node-gyp/node_modules/@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/node-gyp/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/node-gyp/node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -6061,90 +5967,6 @@ "concat-map": "0.0.1" } }, - "node_modules/node-gyp/node_modules/cacache": { - "version": "16.1.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", - "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", - "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/node-gyp/node_modules/cacache/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/node-gyp/node_modules/cacache/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/cacache/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-gyp/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/node-gyp/node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/node-gyp/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -6164,48 +5986,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/node-gyp/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/node-gyp/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/node-gyp/node_modules/make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/node-gyp/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -6217,47 +5997,6 @@ "node": "*" } }, - "node_modules/node-gyp/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/node-gyp/node_modules/minipass-fetch": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", - "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", - "dependencies": { - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/node-gyp/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/node-gyp/node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -6272,44 +6011,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/node-gyp/node_modules/ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/node-gyp/node_modules/unique-filename": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", - "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", - "dependencies": { - "unique-slug": "^3.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/node-gyp/node_modules/unique-slug": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", - "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", - "dependencies": { - "imurmurhash": "^0.1.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/node-gyp/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -8325,9 +8026,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.63.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.3.tgz", - "integrity": "sha512-ySdXN+DVpfwq49jG1+hmtDslYqpS7SkOR5GpF6o2bmb1RL/xS+wvPmegMvMywyfsmAV6p7TgwXYGrCZIFFbAHg==", + "version": "1.63.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.4.tgz", + "integrity": "sha512-Sx/+weUmK+oiIlI+9sdD0wZHsqpbgQg8wSwSnGBjwb5GwqFhYNwwnI+UWZtLjKvKyFlKkatRK235qQ3mokyPoQ==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8475,13 +8176,13 @@ } }, "node_modules/sinon": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.0.tgz", - "integrity": "sha512-cS5FgpDdE9/zx7no8bxROHymSlPLZzq0ChbbLk1DrxBfc+eTeBK3y8nIL+nu/0QeYydhhbLIr7ecHJpywjQaoQ==", + "version": "15.1.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz", + "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^10.2.0", + "@sinonjs/fake-timers": "^10.1.0", "@sinonjs/samsam": "^8.0.0", "diff": "^5.1.0", "nise": "^5.1.4", @@ -9168,9 +8869,9 @@ } }, "node_modules/terser": { - "version": "5.17.7", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.7.tgz", - "integrity": "sha512-/bi0Zm2C6VAexlGgLlVxA0P2lru/sdLyfCVaRMfKVo9nWxbmz7f/sD8VPybPeSUJaJcwmCJis9pBIhcVcG1QcQ==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.18.0.tgz", + "integrity": "sha512-pdL757Ig5a0I+owA42l6tIuEycRuM7FPY4n62h44mRLRfnOxJkkOHd6i89dOpwZlpF6JXBwaAHF6yWzFrt+QyA==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", @@ -9363,13 +9064,13 @@ } }, "node_modules/tuf-js": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.6.tgz", - "integrity": "sha512-CXwFVIsXGbVY4vFiWF7TJKWmlKJAT8TWkH4RmiohJRcDJInix++F0dznDmoVbtJNzZ8yLprKUG4YrDIhv3nBMg==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.7.tgz", + "integrity": "sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==", "dependencies": { "@tufjs/models": "1.0.4", "debug": "^4.3.4", - "make-fetch-happen": "^11.1.0" + "make-fetch-happen": "^11.1.1" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index 3bc01101250..85b3dd6d88e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -163,7 +163,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.1.0", + "sinon": "^15.1.2", "tap-xunit": "^2.4.1" } } From daeeeb93a94e6a6ed08eb45e9d1376b9f268b37d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 18 Jun 2023 02:20:46 +0000 Subject: [PATCH 0942/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 72 +++++++++++++++--------------- packages/project/package.json | 6 +-- 2 files changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 25cc76dc2f9..daeca3a1ed9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -29,18 +29,18 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", "rimraf": "^5.0.1", - "semver": "^7.5.1", + "semver": "^7.5.2", "xml2js": "^0.6.0", "yesno": "^0.4.0" }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.3.0", + "ava": "^5.3.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.42.0", + "eslint": "^8.43.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.2.6", @@ -554,9 +554,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.42.0.tgz", - "integrity": "sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.43.0.tgz", + "integrity": "sha512-s2UHCoiXfxMvmfzqoN+vrQ84ahUSYde9qNO1MdxmoEhyHWsfmwOpFlwYV+ePJEVc7gFnATGUi376WowX1N7tFg==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1247,9 +1247,9 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.9.0.tgz", + "integrity": "sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ==", "bin": { "acorn": "bin/acorn" }, @@ -1470,9 +1470,9 @@ } }, "node_modules/ava": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-5.3.0.tgz", - "integrity": "sha512-QYvBdyygl1LGX13IuYsC4bkwVCzZeovMGbxYkD73i7DVJxNlWnFa06YgrBOTbjw2QvSKUl5fOJ92Kj5WK9hSeg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-5.3.1.tgz", + "integrity": "sha512-Scv9a4gMOXB6+ni4toLuhAm9KYWEjsgBglJl+kMGI5+IVDt120CCDZyB5HNU9DjmLI2t4I0GbnxGLmmRfGTJGg==", "dev": true, "dependencies": { "acorn": "^8.8.2", @@ -1621,9 +1621,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.8", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.8.tgz", - "integrity": "sha512-j+7xYe+v+q2Id9qbBeCI8WX5NmZSRe8es1+0xntD/+gaWXznP8tFEkv5IgSaHf5dS1YwVMbX/4W6m937mj+wQw==", + "version": "4.21.9", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", + "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", "dev": true, "funding": [ { @@ -1640,8 +1640,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001502", - "electron-to-chromium": "^1.4.428", + "caniuse-lite": "^1.0.30001503", + "electron-to-chromium": "^1.4.431", "node-releases": "^2.0.12", "update-browserslist-db": "^1.0.11" }, @@ -1902,9 +1902,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001503", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001503.tgz", - "integrity": "sha512-Sf9NiF+wZxPfzv8Z3iS0rXM1Do+iOy2Lxvib38glFX+08TCYYYGR5fRJXk4d77C4AYwhUjgYgMsMudbh2TqCKw==", + "version": "1.0.30001504", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001504.tgz", + "integrity": "sha512-5uo7eoOp2mKbWyfMXnGO9rJWOGU8duvzEiYITW+wivukL7yHH4gX9yuRaobu6El4jPxo6jKZfG+N6fB621GD/Q==", "dev": true, "funding": [ { @@ -3047,9 +3047,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.430", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.430.tgz", - "integrity": "sha512-FytjTbGwz///F+ToZ5XSeXbbSaXalsVRXsz2mHityI5gfxft7ieW3HqFLkU5V1aIrY42aflICqbmFoDxW10etg==", + "version": "1.4.433", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.433.tgz", + "integrity": "sha512-MGO1k0w1RgrfdbLVwmXcDhHHuxCn2qRgR7dYsJvWFKDttvYPx6FNzCGG0c/fBBvzK2LDh3UV7Tt9awnHnvAAUQ==", "dev": true }, "node_modules/emittery": { @@ -3169,15 +3169,15 @@ } }, "node_modules/eslint": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.42.0.tgz", - "integrity": "sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.43.0.tgz", + "integrity": "sha512-aaCpf2JqqKesMFGgmRPessmVKjcGXqdlAYLLC3THM8t5nBRZRQ+st5WM/hoJXkdioEXLLbXgclUpM0TXo5HX5Q==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", "@eslint/eslintrc": "^2.0.3", - "@eslint/js": "8.42.0", + "@eslint/js": "8.43.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -5508,9 +5508,9 @@ } }, "node_modules/meow/node_modules/type-fest": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.11.1.tgz", - "integrity": "sha512-aCuRNRERRVh33lgQaJRlUxZqzfhzwTrsE98Mc3o3VXqmiaQdHacgUtJ0esp+7MvZ92qhtzKPeusaX6vIEcoreA==", + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.12.0.tgz", + "integrity": "sha512-qj9wWsnFvVEMUDbESiilKeXeHL7FwwiFcogfhfyjmvT968RXSvnl23f1JOClTHYItsi7o501C/7qVllscUP3oA==", "dev": true, "engines": { "node": ">=14.16" @@ -7660,9 +7660,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.11.1.tgz", - "integrity": "sha512-aCuRNRERRVh33lgQaJRlUxZqzfhzwTrsE98Mc3o3VXqmiaQdHacgUtJ0esp+7MvZ92qhtzKPeusaX6vIEcoreA==", + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.12.0.tgz", + "integrity": "sha512-qj9wWsnFvVEMUDbESiilKeXeHL7FwwiFcogfhfyjmvT968RXSvnl23f1JOClTHYItsi7o501C/7qVllscUP3oA==", "engines": { "node": ">=14.16" }, @@ -8061,9 +8061,9 @@ } }, "node_modules/semver": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", - "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.2.tgz", + "integrity": "sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ==", "dependencies": { "lru-cache": "^6.0.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index 85b3dd6d88e..e82ff5c7b98 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,18 +139,18 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", "rimraf": "^5.0.1", - "semver": "^7.5.1", + "semver": "^7.5.2", "xml2js": "^0.6.0", "yesno": "^0.4.0" }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.3.0", + "ava": "^5.3.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.42.0", + "eslint": "^8.43.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.2.6", From 5c3ab50a8b718692af4fe7963c4f430a1ad9743c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 19 Jun 2023 17:19:56 +0200 Subject: [PATCH 0943/1272] [ui5-project][FIX] maven/Registry: Prevent socket timeouts when installing framework libraries Applying the fix from https://github.com/SAP/ui5-project/pull/579 in the Maven Registry module --- .../lib/ui5Framework/maven/Registry.js | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/ui5Framework/maven/Registry.js b/packages/project/lib/ui5Framework/maven/Registry.js index 22e48fe97e8..ffac72e5e09 100644 --- a/packages/project/lib/ui5Framework/maven/Registry.js +++ b/packages/project/lib/ui5Framework/maven/Registry.js @@ -40,7 +40,15 @@ class Registry { `${groupId.replaceAll(".", "/")}/${artifactId}/${optionalVersion}maven-metadata.xml`; log.verbose(`Fetching: ${url}`); - const res = await fetch(url); + const res = await fetch(url, { + // Disable usage of shared keep-alive agents. + // make-fetch-happen uses a hard-coded 15 seconds freeSocketTimeout + // that can be easily reached (Error: Socket timeout) and there doesn't + // seem to be another way to disable or increase it. + // Also see: https://github.com/node-modules/agentkeepalive/issues/106 + // The same applies in npm/Registry.js + agent: false, + }); if (!res.ok) { throw new Error(`[HTTP Error] ${res.status} ${res.statusText}`); } @@ -84,7 +92,15 @@ class Registry { log.verbose(`Fetching: ${url}`); const res = await fetch(url, { - cache: "no-store" // Do not cache these large artifacts. We store them right away anyways + cache: "no-store", // Do not cache these large artifacts. We store them right away anyways + + // Disable usage of shared keep-alive agents. + // make-fetch-happen uses a hard-coded 15 seconds freeSocketTimeout + // that can be easily reached (Error: Socket timeout) and there doesn't + // seem to be another way to disable or increase it. + // Also see: https://github.com/node-modules/agentkeepalive/issues/106 + // The same applies in npm/Registry.js + agent: false, }); if (!res.ok) { throw new Error(`[HTTP Error] ${res.status} ${res.statusText}`); From f528aab3a191a0875090b703474501fa699fbd49 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 20 Jun 2023 09:11:05 +0200 Subject: [PATCH 0944/1272] [ui5-project][FEATURE] Sapui5MavenSnapshotResolver: Use npm-dist.zip artifact for 1.116.0 and later (#622) Use the SAP-internal npm-dist.zip instead of the default JAR when consuming SNAPSHOT versions. This artifact also contains selected test-resources and will eventually be published to the public npm registry. Since the extracted content is stored under the same directory path as the default JAR is stored in previous versions, we now only consider a package to be installed when it has a package.json. This causes old jar based packages that already exist to be removed and replaced by the new npm-dist.zip contents. JIRA: CPOUI5FOUNDATION-672 --------- Co-authored-by: Matthias Osswald --- .../Sapui5MavenSnapshotResolver.js | 32 +++- .../lib/ui5Framework/maven/Installer.js | 6 +- .../Sapui5MavenSnapshotResolver.js | 170 +++++++++++++++++- .../test/lib/ui5framework/maven/Installer.js | 72 +++++++- 4 files changed, 262 insertions(+), 18 deletions(-) diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js index 64eefff79f8..2d697b413d0 100644 --- a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -1,5 +1,6 @@ import path from "node:path"; import os from "node:os"; +import semver from "semver"; import AbstractResolver from "./AbstractResolver.js"; import Installer from "./maven/Installer.js"; import {getLogger} from "@ui5/logger"; @@ -50,6 +51,11 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { cacheMode, }); this._loadDistMetadata = null; + + // TODO 4.0: Remove support for legacy snapshot versions + this._isLegacySnapshotVersion = semver.lt(this._version, "1.116.0-SNAPSHOT", { + includePrerelease: true + }); } loadDistMetadata() { if (!this._loadDistMetadata) { @@ -95,8 +101,28 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { } const gav = metadata.gav.split(":"); let pkgName = metadata.npmPackageName; - if (!this._sources) { + + // Use "npm-dist" artifact by default + let classifier; + let extension; + if (this._sources) { + // Use npm-sources artifact if sources are requested + classifier = "npm-sources"; + extension = "zip"; + } else { + // Add "prebuilt" suffix to package name pkgName += "-prebuilt"; + + if (this._isLegacySnapshotVersion) { + // For legacy versions < 1.116.0-SNAPSHOT where npm-dist artifact is not + // yet available, use "default" JAR + classifier = null; + extension = "jar"; + } else { + // Use "npm-dist" artifact by default + classifier = "npm-dist"; + extension = "zip"; + } } return { @@ -112,8 +138,8 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { groupId: gav[0], artifactId: gav[1], version: metadata.version, - classifier: this._sources ? "npm-sources" : null, - extension: this._sources ? "zip" : "jar", + classifier, + extension, }), }; } diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js index 53d9e6737dd..cd004b2cbb9 100644 --- a/packages/project/lib/ui5Framework/maven/Installer.js +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -443,11 +443,7 @@ class Installer extends AbstractInstaller { } async _projectExists(targetDir) { - const markers = await Promise.all([ - this._pathExists(path.join(targetDir, "package.json")), - this._pathExists(path.join(targetDir, ".ui5", "build-manifest.json")) - ]); - return markers.includes(true); + return this._pathExists(path.join(targetDir, "package.json")); } async _pathExists(targetPath) { diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js index 33f6a54114a..54fe3260a40 100644 --- a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js @@ -132,7 +132,61 @@ test.serial("Sapui5MavenSnapshotResolver: handleLibrary", async (t) => { const resolver = new Sapui5MavenSnapshotResolver({ cwd: "/test-project/", - version: "1.75.0" + version: "1.116.0-SNAPSHOT" + }); + + const loadDistMetadataStub = sinon.stub(resolver, "loadDistMetadata"); + loadDistMetadataStub.resolves({ + libraries: { + "sap.ui.lib1": { + "npmPackageName": "@openui5/sap.ui.lib1", + "version": "1.116.0-SNAPSHOT", + "dependencies": [], + "optionalDependencies": [], + "gav": "x:y:z" + } + } + }); + + t.context.installPackageStub + .callsFake(async ({pkgName, version}) => { + throw new Error(`Unknown install call: ${pkgName}@${version}`); + }) + .withArgs({ + pkgName: "@openui5/sap.ui.lib1-prebuilt", + groupId: "x", + artifactId: "y", + version: "1.116.0-SNAPSHOT", + classifier: "npm-dist", + extension: "zip", + }) + .resolves({pkgPath: "/foo/sap.ui.lib1"}); + + + const promises = await resolver.handleLibrary("sap.ui.lib1"); + + t.true(promises.metadata instanceof Promise, "Metadata promise should be returned"); + t.true(promises.install instanceof Promise, "Install promise should be returned"); + + const metadata = await promises.metadata; + t.deepEqual(metadata, { + "id": "@openui5/sap.ui.lib1-prebuilt", + "version": "1.116.0-SNAPSHOT", + "dependencies": [], + "optionalDependencies": [] + }, "Expected library metadata should be returned"); + + t.deepEqual(await promises.install, {pkgPath: "/foo/sap.ui.lib1"}, "Install should resolve with expected object"); + t.is(loadDistMetadataStub.callCount, 1, "loadDistMetadata should be called once"); +}); + + +test.serial("Sapui5MavenSnapshotResolver: handleLibrary - legacy version", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + + const resolver = new Sapui5MavenSnapshotResolver({ + cwd: "/test-project/", + version: "1.75.0-SNAPSHOT" }); const loadDistMetadataStub = sinon.stub(resolver, "loadDistMetadata"); @@ -140,7 +194,7 @@ test.serial("Sapui5MavenSnapshotResolver: handleLibrary", async (t) => { libraries: { "sap.ui.lib1": { "npmPackageName": "@openui5/sap.ui.lib1", - "version": "1.75.0", + "version": "1.75.0-SNAPSHOT", "dependencies": [], "optionalDependencies": [], "gav": "x:y:z" @@ -156,7 +210,7 @@ test.serial("Sapui5MavenSnapshotResolver: handleLibrary", async (t) => { pkgName: "@openui5/sap.ui.lib1-prebuilt", groupId: "x", artifactId: "y", - version: "1.75.0", + version: "1.75.0-SNAPSHOT", classifier: null, extension: "jar", }) @@ -171,7 +225,115 @@ test.serial("Sapui5MavenSnapshotResolver: handleLibrary", async (t) => { const metadata = await promises.metadata; t.deepEqual(metadata, { "id": "@openui5/sap.ui.lib1-prebuilt", - "version": "1.75.0", + "version": "1.75.0-SNAPSHOT", + "dependencies": [], + "optionalDependencies": [] + }, "Expected library metadata should be returned"); + + t.deepEqual(await promises.install, {pkgPath: "/foo/sap.ui.lib1"}, "Install should resolve with expected object"); + t.is(loadDistMetadataStub.callCount, 1, "loadDistMetadata should be called once"); +}); + +test.serial("Sapui5MavenSnapshotResolver: handleLibrary - sources requested", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + + const resolver = new Sapui5MavenSnapshotResolver({ + cwd: "/test-project/", + version: "1.116.0-SNAPSHOT", + sources: true + }); + + const loadDistMetadataStub = sinon.stub(resolver, "loadDistMetadata"); + loadDistMetadataStub.resolves({ + libraries: { + "sap.ui.lib1": { + "npmPackageName": "@openui5/sap.ui.lib1", + "version": "1.116.0-SNAPSHOT", + "dependencies": [], + "optionalDependencies": [], + "gav": "x:y:z" + } + } + }); + + t.context.installPackageStub + .callsFake(async ({pkgName, version}) => { + throw new Error(`Unknown install call: ${pkgName}@${version}`); + }) + .withArgs({ + pkgName: "@openui5/sap.ui.lib1", + groupId: "x", + artifactId: "y", + version: "1.116.0-SNAPSHOT", + classifier: "npm-sources", + extension: "zip", + }) + .resolves({pkgPath: "/foo/sap.ui.lib1"}); + + + const promises = await resolver.handleLibrary("sap.ui.lib1"); + + t.true(promises.metadata instanceof Promise, "Metadata promise should be returned"); + t.true(promises.install instanceof Promise, "Install promise should be returned"); + + const metadata = await promises.metadata; + t.deepEqual(metadata, { + "id": "@openui5/sap.ui.lib1", + "version": "1.116.0-SNAPSHOT", + "dependencies": [], + "optionalDependencies": [] + }, "Expected library metadata should be returned"); + + t.deepEqual(await promises.install, {pkgPath: "/foo/sap.ui.lib1"}, "Install should resolve with expected object"); + t.is(loadDistMetadataStub.callCount, 1, "loadDistMetadata should be called once"); +}); + +test.serial("Sapui5MavenSnapshotResolver: handleLibrary - sources requested with legacy version", async (t) => { + const {Sapui5MavenSnapshotResolver} = t.context; + + const resolver = new Sapui5MavenSnapshotResolver({ + cwd: "/test-project/", + version: "1.75.0-SNAPSHOT", + sources: true + }); + + const loadDistMetadataStub = sinon.stub(resolver, "loadDistMetadata"); + loadDistMetadataStub.resolves({ + libraries: { + "sap.ui.lib1": { + "npmPackageName": "@openui5/sap.ui.lib1", + "version": "1.75.0-SNAPSHOT", + "dependencies": [], + "optionalDependencies": [], + "gav": "x:y:z" + } + } + }); + + t.context.installPackageStub + .callsFake(async ({pkgName, version}) => { + throw new Error(`Unknown install call: ${pkgName}@${version}`); + }) + .withArgs({ + pkgName: "@openui5/sap.ui.lib1", + groupId: "x", + artifactId: "y", + version: "1.75.0-SNAPSHOT", + classifier: "npm-sources", + extension: "zip", + }) + .resolves({pkgPath: "/foo/sap.ui.lib1"}); + + + const promises = await resolver.handleLibrary("sap.ui.lib1"); + + t.true(promises.metadata instanceof Promise, "Metadata promise should be returned"); + t.true(promises.install instanceof Promise, "Install promise should be returned"); + + const metadata = await promises.metadata; + t.deepEqual(metadata, { + "id": "@openui5/sap.ui.lib1", + "version": "1.75.0-SNAPSHOT", "dependencies": [], "optionalDependencies": [] }, "Expected library metadata should be returned"); diff --git a/packages/project/test/lib/ui5framework/maven/Installer.js b/packages/project/test/lib/ui5framework/maven/Installer.js index 659e9b08c85..d2bfd3adbcb 100644 --- a/packages/project/test/lib/ui5framework/maven/Installer.js +++ b/packages/project/test/lib/ui5framework/maven/Installer.js @@ -985,10 +985,12 @@ test.serial("_pathExists", async (t) => { snapshotEndpointUrlCb: () => {} }); - statStub.resolves("/target/path/"); - const pathExists = await installer._pathExists(); + statStub.resolves(); + const pathExists = await installer._pathExists("/target/path/"); - t.is(pathExists, true, "Resolves the target path"); + t.is(pathExists, true, "Target path exists"); + t.is(statStub.callCount, 1, "stat got called once"); + t.is(statStub.firstCall.firstArg, "/target/path/", "stat got called with expected argument"); }); test.serial("_pathExists file not found", async (t) => { @@ -1001,9 +1003,9 @@ test.serial("_pathExists file not found", async (t) => { }); statStub.throws({code: "ENOENT"}); - const pathExists = await installer._pathExists(); + const pathExists = await installer._pathExists("/target/path/"); - t.is(pathExists, false, "Target path is not resolved"); + t.is(pathExists, false, "Target path does not exist"); }); test.serial("_pathExists throws", async (t) => { @@ -1019,7 +1021,65 @@ test.serial("_pathExists throws", async (t) => { throw new Error("Error message"); }); - await t.throwsAsync(installer._pathExists(), { + await t.throwsAsync(installer._pathExists("/target/path/"), { message: "Error message", + }, "Threw with expected error message"); +}); + +test.serial("_projectExists", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + const pathExistsStub = sinon.stub(installer, "_pathExists").resolves(true); + const projectExists = await installer._projectExists("/target/path/"); + + t.is(projectExists, true, "Resolves the target path"); + t.is(pathExistsStub.callCount, 1, "_pathExists got called once"); + t.is(pathExistsStub.firstCall.firstArg, path.join("/target/path/package.json"), + "_pathExists got called with expected argument"); +}); + +test.serial("_projectExists: Does not exist", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} + }); + + const pathExistsStub = sinon.stub(installer, "_pathExists").resolves(false); + const projectExists = await installer._projectExists("/target/path/"); + + t.is(projectExists, false, "Resolves the target path"); + t.is(pathExistsStub.callCount, 1, "_pathExists got called once"); + t.is(pathExistsStub.firstCall.firstArg, path.join("/target/path/package.json"), + "_pathExists got called with expected argument"); +}); + +test.serial("_projectExists: Throws", async (t) => { + const {Installer} = t.context; + + const installer = new Installer({ + cwd: "/cwd/", + ui5HomeDir: "/ui5Home/", + snapshotEndpointUrlCb: () => {} }); + + const pathExistsStub = sinon.stub(installer, "_pathExists").throws(() => { + throw new Error("Error message"); + }); + + await t.throwsAsync(installer._projectExists("/target/path/"), { + message: "Error message", + }, "Threw with expected error message"); + + t.is(pathExistsStub.callCount, 1, "_pathExists got called once"); + t.is(pathExistsStub.firstCall.firstArg, path.join("/target/path/package.json"), + "_pathExists got called with expected argument"); }); From c4a5d27536992b4e85cdba36e98543115e04fac5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 21 Jun 2023 12:25:51 +0000 Subject: [PATCH 0945/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 48 +++++++++++++++--------------- packages/project/package.json | 4 +-- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index daeca3a1ed9..8651529c332 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -16,7 +16,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.1.4", + "globby": "^13.2.0", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", @@ -53,7 +53,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.1.2", + "sinon": "^15.2.0", "tap-xunit": "^2.4.1" }, "engines": { @@ -1001,9 +1001,9 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.1.0.tgz", - "integrity": "sha512-w1qd368vtrwttm1PRJWPW1QHlbmHrVDGs1eBH/jZvRPUFS4MNXV9Q33EQdjOdeAxZ7O8+3wM7zxztm2nfUSyKw==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0" @@ -1902,9 +1902,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001504", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001504.tgz", - "integrity": "sha512-5uo7eoOp2mKbWyfMXnGO9rJWOGU8duvzEiYITW+wivukL7yHH4gX9yuRaobu6El4jPxo6jKZfG+N6fB621GD/Q==", + "version": "1.0.30001506", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001506.tgz", + "integrity": "sha512-6XNEcpygZMCKaufIcgpQNZNf00GEqc7VQON+9Rd0K1bMYo8xhMZRAo5zpbnbMNizi4YNgIDAFrdykWsvY3H4Hw==", "dev": true, "funding": [ { @@ -3047,9 +3047,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.433", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.433.tgz", - "integrity": "sha512-MGO1k0w1RgrfdbLVwmXcDhHHuxCn2qRgR7dYsJvWFKDttvYPx6FNzCGG0c/fBBvzK2LDh3UV7Tt9awnHnvAAUQ==", + "version": "1.4.435", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.435.tgz", + "integrity": "sha512-B0CBWVFhvoQCW/XtjRzgrmqcgVWg6RXOEM/dK59+wFV93BFGR6AeNKc4OyhM+T3IhJaOOG8o/V+33Y2mwJWtzw==", "dev": true }, "node_modules/emittery": { @@ -4144,9 +4144,9 @@ } }, "node_modules/globby": { - "version": "13.1.4", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.4.tgz", - "integrity": "sha512-iui/IiiW+QrJ1X1hKH5qwlMQyv34wJAYwH1vrf8b9kBA4sNiif3gKsMHa+BrdnOpEudWjpotfa7LrTzB1ERS/g==", + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.0.tgz", + "integrity": "sha512-jWsQfayf13NvqKUIL3Ta+CIqMnvlaIDFveWE/dpOZ9+3AMEJozsxDvKA02zync9UuvOM8rOXzsD5GqKP4OnWPQ==", "dependencies": { "dir-glob": "^3.0.1", "fast-glob": "^3.2.11", @@ -8026,9 +8026,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.63.4", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.4.tgz", - "integrity": "sha512-Sx/+weUmK+oiIlI+9sdD0wZHsqpbgQg8wSwSnGBjwb5GwqFhYNwwnI+UWZtLjKvKyFlKkatRK235qQ3mokyPoQ==", + "version": "1.63.5", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.5.tgz", + "integrity": "sha512-Q6c5gs482oezdAp+0fWF9cRisvpy7yfYb64knID0OE8AnMgtkluRPfpGMFjeD4/+M4+6QpJZCU6JRSxbjiktkg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8176,13 +8176,13 @@ } }, "node_modules/sinon": { - "version": "15.1.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz", - "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==", + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.2.0.tgz", + "integrity": "sha512-nPS85arNqwBXaIsFCkolHjGIkFo+Oxu9vbgmBJizLAhqe6P2o3Qmj3KCUoRkfhHtvgDhZdWD3risLHAUJ8npjw==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^10.1.0", + "@sinonjs/fake-timers": "^10.3.0", "@sinonjs/samsam": "^8.0.0", "diff": "^5.1.0", "nise": "^5.1.4", @@ -8869,9 +8869,9 @@ } }, "node_modules/terser": { - "version": "5.18.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.18.0.tgz", - "integrity": "sha512-pdL757Ig5a0I+owA42l6tIuEycRuM7FPY4n62h44mRLRfnOxJkkOHd6i89dOpwZlpF6JXBwaAHF6yWzFrt+QyA==", + "version": "5.18.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.18.1.tgz", + "integrity": "sha512-j1n0Ao919h/Ai5r43VAnfV/7azUYW43GPxK7qSATzrsERfW7+y2QW9Cp9ufnRF5CQUWbnLSo7UJokSWCqg4tsQ==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index e82ff5c7b98..81797411703 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -126,7 +126,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.2.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.1.4", + "globby": "^13.2.0", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "libnpmconfig": "^1.2.1", @@ -163,7 +163,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.1.2", + "sinon": "^15.2.0", "tap-xunit": "^2.4.1" } } From e208e83f1a2cdfcfe9d203125225e2bf4f255521 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 21 Jun 2023 12:49:13 +0000 Subject: [PATCH 0946/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.5 to 3.0.6 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.6/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8651529c332..3a4ae380331 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.3.2", "license": "Apache-2.0", "dependencies": { - "@ui5/builder": "^3.0.5", + "@ui5/builder": "^3.0.6", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1112,9 +1112,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.5.tgz", - "integrity": "sha512-ud+KDRypKvwTQuwxeYs5sF48HrsHduJolE2Guo30PCxGmMHRi6hEib6NRX40EujyJUnvn+Kw74OjcA9ak2rrSw==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.6.tgz", + "integrity": "sha512-OtR0BG2p3UfokHTXIWdp7GAQ37l1BTiSDJ8ZqlmLpipfcvQhWYdQi6R9MLCPSydw045KaViUXomp4OEVwqO9dA==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.4", @@ -1128,8 +1128,8 @@ "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", "rimraf": "^5.0.1", - "semver": "^7.5.1", - "terser": "^5.17.7", + "semver": "^7.5.2", + "terser": "^5.18.1", "workerpool": "^6.4.0", "xml2js": "^0.6.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index 81797411703..6c93d123ddf 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,7 +119,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@ui5/builder": "^3.0.5", + "@ui5/builder": "^3.0.6", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From d63b0e7c646bdbefd79d4f6496c5338bf2eca234 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 21 Jun 2023 12:57:22 +0000 Subject: [PATCH 0947/1272] [ui5-project]Release 3.4.0 --- packages/project/CHANGELOG.md | 14 ++++++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index da04792056b..846d9ed68bf 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,19 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.3.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.4.0...HEAD). + + +## [v3.4.0] - 2023-06-21 +### Bug Fixes +- **maven/Registry:** Prevent socket timeouts when installing framework libraries [`3de767f`](https://github.com/SAP/ui5-project/commit/3de767fb7cc9278bf984ff88064a16e593db6db0) + +### Features +- **Sapui5MavenSnapshotResolver:** Use npm-dist.zip artifact for 1.116.0 and later ([#622](https://github.com/SAP/ui5-project/issues/622)) [`45dcee0`](https://github.com/SAP/ui5-project/commit/45dcee00f141b6632d5a1217affbd212f6faf1f4) + -## [v3.3.2] - 2023-06-05 +## [v3.3.2] - 2023-06-06 ### Bug Fixes - **ui5Framework:** Treat 'optional' dependencies of root project as non-optional [`f3318f0`](https://github.com/SAP/ui5-project/commit/f3318f0daff617e12ac97050e19d41a16ecbc748) - **ui5Framework:** Choose correct resolver for snapshot framework version overrides [`ba860de`](https://github.com/SAP/ui5-project/commit/ba860de97bc1674fa8381706cc09bd68ee08df38) @@ -401,6 +410,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.4.0]: https://github.com/SAP/ui5-project/compare/v3.3.2...v3.4.0 [v3.3.2]: https://github.com/SAP/ui5-project/compare/v3.3.1...v3.3.2 [v3.3.1]: https://github.com/SAP/ui5-project/compare/v3.3.0...v3.3.1 [v3.3.0]: https://github.com/SAP/ui5-project/compare/v3.2.2...v3.3.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3a4ae380331..aeb07db3090 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.3.2", + "version": "3.4.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.3.2", + "version": "3.4.0", "license": "Apache-2.0", "dependencies": { "@ui5/builder": "^3.0.6", diff --git a/packages/project/package.json b/packages/project/package.json index 6c93d123ddf..8acf5dc447e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.3.2", + "version": "3.4.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From a84bf622b194af14be17ed64d6ee791ccbeafbc4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 25 Jun 2023 02:20:49 +0000 Subject: [PATCH 0948/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 50 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index aeb07db3090..3f90474f9c1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -29,7 +29,7 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", "rimraf": "^5.0.1", - "semver": "^7.5.2", + "semver": "^7.5.3", "xml2js": "^0.6.0", "yesno": "^0.4.0" }, @@ -1750,9 +1750,9 @@ } }, "node_modules/cacache/node_modules/glob": { - "version": "10.2.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.7.tgz", - "integrity": "sha512-jTKehsravOJo8IJxUGfZILnkvVJM/MOfHRs8QcXolVef2zNI9Tqyy5+SeuOAZd3upViEZQLyFpQhYiHLrMUNmA==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.0.tgz", + "integrity": "sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -1902,9 +1902,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001506", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001506.tgz", - "integrity": "sha512-6XNEcpygZMCKaufIcgpQNZNf00GEqc7VQON+9Rd0K1bMYo8xhMZRAo5zpbnbMNizi4YNgIDAFrdykWsvY3H4Hw==", + "version": "1.0.30001507", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001507.tgz", + "integrity": "sha512-SFpUDoSLCaE5XYL2jfqe9ova/pbQHEmbheDf5r4diNwbAgR3qxM9NQtfsiSscjqoya5K7kFcHPUQ+VsUkIJR4A==", "dev": true, "funding": [ { @@ -3047,9 +3047,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.435", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.435.tgz", - "integrity": "sha512-B0CBWVFhvoQCW/XtjRzgrmqcgVWg6RXOEM/dK59+wFV93BFGR6AeNKc4OyhM+T3IhJaOOG8o/V+33Y2mwJWtzw==", + "version": "1.4.440", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.440.tgz", + "integrity": "sha512-r6dCgNpRhPwiWlxbHzZQ/d9swfPaEJGi8ekqRBwQYaR3WmA5VkqQfBWSDDjuJU1ntO+W9tHx8OHV/96Q8e0dVw==", "dev": true }, "node_modules/emittery": { @@ -5584,9 +5584,9 @@ } }, "node_modules/minimatch": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", - "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", + "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -7342,9 +7342,9 @@ } }, "node_modules/read-package-json/node_modules/glob": { - "version": "10.2.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.7.tgz", - "integrity": "sha512-jTKehsravOJo8IJxUGfZILnkvVJM/MOfHRs8QcXolVef2zNI9Tqyy5+SeuOAZd3upViEZQLyFpQhYiHLrMUNmA==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.0.tgz", + "integrity": "sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -7855,9 +7855,9 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "10.2.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.7.tgz", - "integrity": "sha512-jTKehsravOJo8IJxUGfZILnkvVJM/MOfHRs8QcXolVef2zNI9Tqyy5+SeuOAZd3upViEZQLyFpQhYiHLrMUNmA==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.0.tgz", + "integrity": "sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -8026,9 +8026,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.63.5", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.5.tgz", - "integrity": "sha512-Q6c5gs482oezdAp+0fWF9cRisvpy7yfYb64knID0OE8AnMgtkluRPfpGMFjeD4/+M4+6QpJZCU6JRSxbjiktkg==", + "version": "1.63.6", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.6.tgz", + "integrity": "sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8061,9 +8061,9 @@ } }, "node_modules/semver": { - "version": "7.5.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.2.tgz", - "integrity": "sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ==", + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz", + "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==", "dependencies": { "lru-cache": "^6.0.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index 8acf5dc447e..f49f13e8cdb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,7 +139,7 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", "rimraf": "^5.0.1", - "semver": "^7.5.2", + "semver": "^7.5.3", "xml2js": "^0.6.0", "yesno": "^0.4.0" }, From 7574eb98c6903d0ec5d3dfc5a68e3a3064e3588c Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Tue, 27 Jun 2023 15:24:20 +0300 Subject: [PATCH 0949/1272] [ui5-project][FIX] Migrate from libnpmconfig to @npmcli/config (#618) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes: https://github.com/SAP/ui5-tooling/issues/786 JIRA: CPOUI5FOUNDATION-631 --------- Co-authored-by: Matthias Oßwald Co-authored-by: Merlin Beutlberger --- .../project/lib/ui5Framework/npm/Registry.js | 87 ++++---- packages/project/package-lock.json | 188 ++++++++++++------ packages/project/package.json | 2 +- .../graph/helpers/ui5Framework.integration.js | 31 ++- .../test/lib/ui5framework/npm/Registry.js | 128 ++++++------ 5 files changed, 264 insertions(+), 172 deletions(-) diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index 721399cf49a..73cc9947bf8 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -41,56 +41,61 @@ class Registry { throw new Error(`Failed to extract package ${pkgName}@${version}: ${err.message}`); } } + async _getPacote() { - return { - pacote: (await import("pacote")).default, - pacoteOptions: await this._getPacoteOptions() - }; - } - async _getPacoteOptions() { - if (!this._npmConfig) { - const {default: libnpmconfig} = await import("libnpmconfig"); - const opts = { - cache: this._cacheDir, + if (this._pGetPacote) { + return this._pGetPacote; + } + return this._pGetPacote = (async () => { + return { + pacote: (await import("pacote")).default, + pacoteOptions: await this._getPacoteOptions() }; - const config = libnpmconfig.read(opts, { - cwd: this._cwd - }).toJSON(); + })(); + } - // Rename https-proxy to httpsProxy so that it is picked up by npm-registry-fetch (via pacote) - if (config["https-proxy"]) { - config.httpsProxy = config["https-proxy"]; - delete config["https-proxy"]; - } + async _getPacoteOptions() { + const {default: Config} = await import("@npmcli/config"); + const { + default: {flatten, definitions, shorthands, defaults}, + } = await import("@npmcli/config/lib/definitions/index.js"); - if (!config.proxy && !config.httpsProxy) { - // Disable usage of shared keep-alive agents unless a proxy is configured - // which only works with agents. + const configuration = new Config({ + cwd: this._cwd, + npmPath: this._cwd, + definitions, + flatten, + shorthands, + defaults + }); - // make-fetch-happen uses a hard-coded 15 seconds freeSocketTimeout - // that can be easily reached (Error: Socket timeout) and there doesn't - // seem to be another way to disable or increase it. - // Also see: https://github.com/node-modules/agentkeepalive/issues/106 - config.agent = false; - } + await configuration.load(); // Reads through the configurations + const config = configuration.flat; // JSON. Formatted via "flatten" - log.verbose(`Using npm configuration (extract):`); - // Do not log full configuration as it may contain authentication tokens - logConfig(config, "registry"); - logConfig(config, "@sapui5:registry"); - logConfig(config, "@openui5:registry"); - logConfig(config, "proxy"); - logConfig(config, "httpsProxy"); - logConfig(config, "globalconfig"); - logConfig(config, "userconfig"); - logConfig(config, "cache"); - logConfig(config, "cwd"); + if (!config.proxy && !config.httpsProxy) { + // Disable usage of shared keep-alive agents unless a proxy is configured + // which only works with agents. - this._npmConfig = config; + // make-fetch-happen uses a hard-coded 15 seconds freeSocketTimeout + // that can be easily reached (Error: Socket timeout) and there doesn't + // seem to be another way to disable or increase it. + // Also see: https://github.com/node-modules/agentkeepalive/issues/106 + config.agent = false; } - // Use cached config - return this._npmConfig; + log.verbose(`Using npm configuration (extract):`); + // Do not log full configuration as it may contain authentication tokens + logConfig(config, "registry"); + logConfig(config, "@sapui5:registry"); + logConfig(config, "@openui5:registry"); + logConfig(config, "proxy"); + logConfig(config, "httpsProxy"); + logConfig(config, "globalconfig"); + logConfig(config, "userconfig"); + logConfig(config, "cache"); + logConfig(config, "cwd"); + + return config; } } diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3f90474f9c1..ee62521ddcb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,6 +9,7 @@ "version": "3.4.0", "license": "Apache-2.0", "dependencies": { + "@npmcli/config": "^6.2.1", "@ui5/builder": "^3.0.6", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", @@ -19,7 +20,6 @@ "globby": "^13.2.0", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", - "libnpmconfig": "^1.2.1", "lockfile": "^1.0.4", "make-fetch-happen": "^11.1.1", "node-stream-zip": "^1.15.0", @@ -833,6 +833,54 @@ "node": ">= 8" } }, + "node_modules/@npmcli/config": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-6.2.1.tgz", + "integrity": "sha512-Cj/OrSbrLvnwWuzquFCDTwFN8QmR+SWH6qLNCBttUreDkKM5D5p36SeSMbcEUiCGdwjUrVy2yd8C0REwwwDPEw==", + "dependencies": { + "@npmcli/map-workspaces": "^3.0.2", + "ci-info": "^3.8.0", + "ini": "^4.1.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", + "read-package-json-fast": "^3.0.2", + "semver": "^7.3.5", + "walk-up-path": "^3.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/config/node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/config/node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/config/node_modules/nopt": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.1.0.tgz", + "integrity": "sha512-ZFPLe9Iu0tnx7oWhFxAo4s7QTn8+NNDDxYNaKLjE7Dp0tbakQ3M1QhQzsnzXHQBTUO3K9BmwaxnyO8Ayn2I95Q==", + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@npmcli/fs": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", @@ -899,6 +947,75 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@npmcli/map-workspaces": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.4.tgz", + "integrity": "sha512-Z0TbvXkRbacjFFLpVpV0e2mheCh+WzQpcqL+4xp49uNJOxOnIAPZyXtUxZ5Qn3QBTGKA11Exjd9a5411rBrhDg==", + "dependencies": { + "@npmcli/name-from-folder": "^2.0.0", + "glob": "^10.2.2", + "minimatch": "^9.0.0", + "read-package-json-fast": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/map-workspaces/node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@npmcli/map-workspaces/node_modules/glob": { + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.6.tgz", + "integrity": "sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.0.3", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2", + "path-scurry": "^1.7.0" + }, + "bin": { + "glob": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@npmcli/map-workspaces/node_modules/signal-exit": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", + "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@npmcli/name-from-folder": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz", + "integrity": "sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@npmcli/node-gyp": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", @@ -2221,7 +2338,6 @@ "version": "3.8.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", - "dev": true, "funding": [ { "type": "github", @@ -3758,11 +3874,6 @@ "reusify": "^1.0.4" } }, - "node_modules/figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" - }, "node_modules/figures": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", @@ -4454,7 +4565,8 @@ "node_modules/ini": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true }, "node_modules/invariant": { "version": "2.2.4", @@ -5131,59 +5243,6 @@ "node": ">= 0.8.0" } }, - "node_modules/libnpmconfig": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/libnpmconfig/-/libnpmconfig-1.2.1.tgz", - "integrity": "sha512-9esX8rTQAHqarx6qeZqmGQKBNZR5OIbl/Ayr0qQDy3oXja2iFVQQI81R6GZ2a02bSNZ9p3YOGX1O6HHCb1X7kA==", - "deprecated": "This module is not used anymore. npm config is parsed by npm itself and by @npmcli/config", - "dependencies": { - "figgy-pudding": "^3.5.1", - "find-up": "^3.0.0", - "ini": "^1.3.5" - } - }, - "node_modules/libnpmconfig/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/libnpmconfig/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/libnpmconfig/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/libnpmconfig/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "engines": { - "node": ">=4" - } - }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -6638,6 +6697,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, "dependencies": { "p-try": "^2.0.0" }, @@ -6691,6 +6751,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, "engines": { "node": ">=6" } @@ -9243,6 +9304,11 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/walk-up-path": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz", + "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==" + }, "node_modules/well-known-symbols": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-2.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index f49f13e8cdb..cb9d9edc02f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -129,7 +129,7 @@ "globby": "^13.2.0", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", - "libnpmconfig": "^1.2.1", + "@npmcli/config": "^6.2.1", "lockfile": "^1.0.4", "make-fetch-happen": "^11.1.1", "node-stream-zip": "^1.15.0", diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index 43452effb4d..0c7c5a9efd3 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -32,20 +32,29 @@ test.beforeEach(async (t) => { manifest: sinon.stub() }; + class Config { + static get typeDefs() { + return {}; + } + + async load() {} + + get flat() { + return {}; + } + } + sinon.stub(Config.prototype, "flat").value({ + registry: "https://registry.fake", + cache: path.join(ui5FrameworkBaseDir, "cacache"), + proxy: "" + }); + t.context.Registry = await esmock.p("../../../../lib/ui5Framework/npm/Registry.js", { "@ui5/logger": ui5Logger, "pacote": t.context.pacote, - "libnpmconfig": { - read: sinon.stub().returns({ - toJSON: () => { - return { - registry: "https://registry.fake", - cache: path.join(ui5FrameworkBaseDir, "cacache"), - proxy: "" - }; - } - }) - }, + "@npmcli/config": { + "default": Config + } }); const AbstractInstaller = await esmock.p("../../../../lib/ui5Framework/AbstractInstaller.js", { diff --git a/packages/project/test/lib/ui5framework/npm/Registry.js b/packages/project/test/lib/ui5framework/npm/Registry.js index 5467271e743..6fb430244f4 100644 --- a/packages/project/test/lib/ui5framework/npm/Registry.js +++ b/packages/project/test/lib/ui5framework/npm/Registry.js @@ -3,7 +3,7 @@ import sinonGlobal from "sinon"; import esmock from "esmock"; test.beforeEach(async (t) => { - const sinon = t.context.sinon = sinonGlobal.createSandbox(); + const sinon = (t.context.sinon = sinonGlobal.createSandbox()); t.context.pacote = { packument: sinon.stub(), @@ -11,18 +11,39 @@ test.beforeEach(async (t) => { extract: sinon.stub(), }; - t.context.libnpmconfigReadToJSON = sinon.stub(); - t.context.libnpmconfig = { - read: sinon.stub().returns({ - toJSON: t.context.libnpmconfigReadToJSON - }) - }; + class Config { + constructor(...args) { + t.context.npmConfigConstructor(...args); + } + + static get typeDefs() { + return {path: "string"}; + } + + async load() {} + get flat() { + return {}; + } + } + + t.context.npmConfigConstructor = sinon.stub(); + t.context.npmConfigFlat = sinon.stub(Config.prototype, "flat"); t.context.Registry = await esmock.p("../../../../lib/ui5Framework/npm/Registry.js", { "pacote": { - default: t.context.pacote + "default": t.context.pacote + }, + "@npmcli/config": { + "default": Config }, - "libnpmconfig": t.context.libnpmconfig + "@npmcli/config/lib/definitions/index.js": { + default: { + flatten: "flatten", + definitions: "definitions", + shorthands: "shorthands", + defaults: "defaults", + } + } }); }); @@ -43,7 +64,7 @@ test.serial("Constructor", (t) => { }); test.serial("_getPacoteOptions", async (t) => { - const {Registry, libnpmconfig, libnpmconfigReadToJSON} = t.context; + const {Registry, npmConfigFlat, npmConfigConstructor} = t.context; const registry = new Registry({ cwd: "cwd", @@ -58,31 +79,25 @@ test.serial("_getPacoteOptions", async (t) => { fake: "config", agent: false }; - - libnpmconfigReadToJSON.returns(npmConfig); + npmConfigFlat.value(npmConfig); const pacoteOptions = await registry._getPacoteOptions(); - t.is(libnpmconfigReadToJSON.callCount, 1); - t.is(libnpmconfig.read.callCount, 1); - t.deepEqual(libnpmconfig.read.getCall(0).args, [{ - cache: "cacheDir", - }, { - cwd: "cwd" - }]); + t.is(npmConfigConstructor.callCount, 1); + t.deepEqual(npmConfigConstructor.firstCall.firstArg, { + cwd: "cwd", + npmPath: "cwd", + flatten: "flatten", + definitions: "definitions", + shorthands: "shorthands", + defaults: "defaults", + }); t.deepEqual(pacoteOptions, expectedPacoteOptions); - - const cachedPacoteOptions = await registry._getPacoteOptions(); - - t.is(libnpmconfigReadToJSON.callCount, 1); - t.is(libnpmconfig.read.callCount, 1); - - t.deepEqual(cachedPacoteOptions, expectedPacoteOptions); }); test.serial("_getPacoteOptions (proxy config set)", async (t) => { - const {Registry, libnpmconfig, libnpmconfigReadToJSON} = t.context; + const {Registry, npmConfigFlat, npmConfigConstructor} = t.context; const registry = new Registry({ cwd: "cwd", @@ -97,30 +112,17 @@ test.serial("_getPacoteOptions (proxy config set)", async (t) => { proxy: "http://localhost:9999" }; - libnpmconfigReadToJSON.returns(npmConfig); + npmConfigFlat.value(npmConfig); const pacoteOptions = await registry._getPacoteOptions(); - t.is(libnpmconfigReadToJSON.callCount, 1); - t.is(libnpmconfig.read.callCount, 1); - t.deepEqual(libnpmconfig.read.getCall(0).args, [{ - cache: "cacheDir", - }, { - cwd: "cwd" - }]); + t.is(npmConfigConstructor.callCount, 1); t.deepEqual(pacoteOptions, expectedPacoteOptions); - - const cachedPacoteOptions = await registry._getPacoteOptions(); - - t.is(libnpmconfigReadToJSON.callCount, 1); - t.is(libnpmconfig.read.callCount, 1); - - t.deepEqual(cachedPacoteOptions, expectedPacoteOptions); }); test.serial("_getPacoteOptions (https-proxy config set)", async (t) => { - const {Registry, libnpmconfig, libnpmconfigReadToJSON} = t.context; + const {Registry, npmConfigFlat, npmConfigConstructor} = t.context; const registry = new Registry({ cwd: "cwd", @@ -128,36 +130,41 @@ test.serial("_getPacoteOptions (https-proxy config set)", async (t) => { }); const npmConfig = { - "https-proxy": "http://localhost:9999" + "httpsProxy": "http://localhost:9999" }; const expectedPacoteOptions = { httpsProxy: "http://localhost:9999" }; - libnpmconfigReadToJSON.returns(npmConfig); + npmConfigFlat.value(npmConfig); const pacoteOptions = await registry._getPacoteOptions(); - t.is(libnpmconfigReadToJSON.callCount, 1); - t.is(libnpmconfig.read.callCount, 1); - t.deepEqual(libnpmconfig.read.getCall(0).args, [{ - cache: "cacheDir", - }, { - cwd: "cwd" - }]); + t.is(npmConfigConstructor.callCount, 1); t.deepEqual(pacoteOptions, expectedPacoteOptions); +}); - const cachedPacoteOptions = await registry._getPacoteOptions(); +test.serial("_getPacote", async (t) => { + const {Registry, sinon} = t.context; - t.is(libnpmconfigReadToJSON.callCount, 1); - t.is(libnpmconfig.read.callCount, 1); + const registry = new Registry({ + cwd: "cwd", + cacheDir: "cacheDir" + }); + + const expectedPacoteOptions = {"fake": "options"}; + + sinon.stub(registry, "_getPacoteOptions").resolves(expectedPacoteOptions); - t.deepEqual(cachedPacoteOptions, expectedPacoteOptions); + const {pacote, pacoteOptions} = await registry._getPacote(); + + t.is(pacote, t.context.pacote); + t.is(pacoteOptions, expectedPacoteOptions); }); -test.serial("_getPacote", async (t) => { +test.serial("_getPacote caching", async (t) => { const {Registry, sinon} = t.context; const registry = new Registry({ @@ -167,10 +174,15 @@ test.serial("_getPacote", async (t) => { const expectedPacoteOptions = {"fake": "options"}; - sinon.stub(registry, "_getPacoteOptions").resolves(expectedPacoteOptions); + const getPacoteOptionsStub = sinon.stub(registry, "_getPacoteOptions").resolves(expectedPacoteOptions); const {pacote, pacoteOptions} = await registry._getPacote(); t.is(pacote, t.context.pacote); t.is(pacoteOptions, expectedPacoteOptions); + + await registry._getPacote(); + await registry._getPacote(); + + t.is(getPacoteOptionsStub.callCount, 1, "_getPacoteOptions got called once"); }); From d33960e6573283954e406b21285771aed0c97300 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 2 Jul 2023 02:20:51 +0000 Subject: [PATCH 0950/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 891 +++++++++++++++-------------- packages/project/package.json | 10 +- 2 files changed, 465 insertions(+), 436 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ee62521ddcb..d64417dc7b0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -15,9 +15,9 @@ "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.2.0", + "chalk": "^5.3.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.2.0", + "globby": "^13.2.1", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", @@ -40,10 +40,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.43.0", + "eslint": "^8.44.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.2.6", + "eslint-plugin-jsdoc": "^46.4.3", "esmock": "^2.3.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -61,6 +61,15 @@ "npm": ">= 8" } }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/@adobe/css-tools": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", @@ -482,14 +491,14 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz", - "integrity": "sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", + "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.5.2", + "espree": "^9.6.0", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -554,9 +563,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.43.0.tgz", - "integrity": "sha512-s2UHCoiXfxMvmfzqoN+vrQ84ahUSYde9qNO1MdxmoEhyHWsfmwOpFlwYV+ePJEVc7gFnATGUi376WowX1N7tFg==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", + "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -654,22 +663,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, "node_modules/@istanbuljs/esm-loader-hook": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/@istanbuljs/esm-loader-hook/-/esm-loader-hook-0.2.0.tgz", @@ -737,6 +730,7 @@ "version": "0.3.3", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, "dependencies": { "@jridgewell/set-array": "^1.0.1", "@jridgewell/sourcemap-codec": "^1.4.10", @@ -750,6 +744,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, "engines": { "node": ">=6.0.0" } @@ -758,18 +753,15 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.3.tgz", - "integrity": "sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.4.tgz", + "integrity": "sha512-KE/SxsDqNs3rrWwFHcRh15ZLVFrI0YoZtgAdIyIq9k5hUNmiWRXXThPomIxHuL20sLdgzbDFyvkUMna14bvtrw==" }, "node_modules/@jridgewell/sourcemap-codec": { "version": "1.4.15", @@ -780,6 +772,7 @@ "version": "0.3.18", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "dev": true, "dependencies": { "@jridgewell/resolve-uri": "3.1.0", "@jridgewell/sourcemap-codec": "1.4.14" @@ -788,7 +781,8 @@ "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { "version": "1.4.14", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true }, "node_modules/@jsdoc/salty": { "version": "0.2.5", @@ -851,36 +845,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@npmcli/config/node_modules/abbrev": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", - "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/config/node_modules/ini": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", - "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/config/node_modules/nopt": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.1.0.tgz", - "integrity": "sha512-ZFPLe9Iu0tnx7oWhFxAo4s7QTn8+NNDDxYNaKLjE7Dp0tbakQ3M1QhQzsnzXHQBTUO3K9BmwaxnyO8Ayn2I95Q==", - "dependencies": { - "abbrev": "^2.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/@npmcli/fs": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", @@ -961,53 +925,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@npmcli/map-workspaces/node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@npmcli/map-workspaces/node_modules/glob": { - "version": "10.2.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.6.tgz", - "integrity": "sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2", - "path-scurry": "^1.7.0" - }, - "bin": { - "glob": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@npmcli/map-workspaces/node_modules/signal-exit": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", - "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@npmcli/name-from-folder": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz", @@ -1096,13 +1013,12 @@ } }, "node_modules/@sigstore/tuf": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.0.tgz", - "integrity": "sha512-bLzi9GeZgMCvjJeLUIfs8LJYCxrPRA8IXQkzUtaFKKVPTz0mucRyqFcV2U20yg9K+kYAD0YSitzGfRZCFLjdHQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.2.tgz", + "integrity": "sha512-vjwcYePJzM01Ha6oWWZ9gNcdIgnzyFxfqfWzph483DPJTH8Tb7f7bQRRll3CYVkyH56j0AgcPAcl6Vg95DPF+Q==", "dependencies": { "@sigstore/protobuf-specs": "^0.1.0", - "make-fetch-happen": "^11.0.1", - "tuf-js": "^1.1.3" + "tuf-js": "^1.1.7" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -1359,9 +1275,12 @@ "dev": true }, "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, "node_modules/acorn": { "version": "8.9.0", @@ -1851,42 +1770,6 @@ "node": ">=6" } }, - "node_modules/cacache/node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/cacache/node_modules/glob": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.0.tgz", - "integrity": "sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg==", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2", - "path-scurry": "^1.7.0" - }, - "bin": { - "glob": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/cacache/node_modules/indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", @@ -1903,6 +1786,14 @@ "node": ">=12" } }, + "node_modules/cacache/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/cacache/node_modules/p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -1917,17 +1808,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cacache/node_modules/signal-exit": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", - "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/caching-transform": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", @@ -1943,6 +1823,12 @@ "node": ">=8" } }, + "node_modules/caching-transform/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, "node_modules/caching-transform/node_modules/write-file-atomic": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", @@ -2019,9 +1905,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001507", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001507.tgz", - "integrity": "sha512-SFpUDoSLCaE5XYL2jfqe9ova/pbQHEmbheDf5r4diNwbAgR3qxM9NQtfsiSscjqoya5K7kFcHPUQ+VsUkIJR4A==", + "version": "1.0.30001509", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001509.tgz", + "integrity": "sha512-2uDDk+TRiTX5hMcUYT/7CSyzMZxjfGu0vAUjS2g0LSD8UoXOv0LtpH4LxGMemsiPq6LCVIUjNwVM0erkOkGCDA==", "dev": true, "funding": [ { @@ -2062,9 +1948,9 @@ } }, "node_modules/chalk": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", - "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -2451,6 +2337,39 @@ "node": ">=8" } }, + "node_modules/cliui/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/cliui/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/cliui/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, "node_modules/cliui/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -2463,6 +2382,23 @@ "node": ">=8" } }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/clone": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", @@ -2564,6 +2500,12 @@ "proto-list": "~1.2.1" } }, + "node_modules/config-chain/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, "node_modules/console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", @@ -2899,6 +2841,21 @@ "node": ">=8" } }, + "node_modules/depcheck/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/depcheck/node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -2941,6 +2898,24 @@ "wrap-ansi": "^7.0.0" } }, + "node_modules/depcheck/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/depcheck/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, "node_modules/depcheck/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -2978,6 +2953,23 @@ "node": ">=8" } }, + "node_modules/depcheck/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/depcheck/node_modules/yargs": { "version": "16.2.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", @@ -3163,9 +3155,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.440", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.440.tgz", - "integrity": "sha512-r6dCgNpRhPwiWlxbHzZQ/d9swfPaEJGi8ekqRBwQYaR3WmA5VkqQfBWSDDjuJU1ntO+W9tHx8OHV/96Q8e0dVw==", + "version": "1.4.447", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.447.tgz", + "integrity": "sha512-sxX0LXh+uL41hSJsujAN86PjhrV/6c79XmpY0TvjZStV6VxIgarf8SRkUoUTuYmFcZQTemsoqo8qXOGw5npWfw==", "dev": true }, "node_modules/emittery": { @@ -3285,15 +3277,15 @@ } }, "node_modules/eslint": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.43.0.tgz", - "integrity": "sha512-aaCpf2JqqKesMFGgmRPessmVKjcGXqdlAYLLC3THM8t5nBRZRQ+st5WM/hoJXkdioEXLLbXgclUpM0TXo5HX5Q==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.44.0.tgz", + "integrity": "sha512-0wpHoUbDUHgNCyvFB5aXLiQVfK9B0at6gUvzy83k4kAsQ/u769TQDX6iKC+aO4upIHO9WSaA3QoXYQDHbNwf1A==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.0.3", - "@eslint/js": "8.43.0", + "@eslint/eslintrc": "^2.1.0", + "@eslint/js": "8.44.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3305,7 +3297,7 @@ "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.0", "eslint-visitor-keys": "^3.4.1", - "espree": "^9.5.2", + "espree": "^9.6.0", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -3325,7 +3317,7 @@ "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.1", + "optionator": "^0.9.3", "strip-ansi": "^6.0.1", "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" @@ -3375,9 +3367,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.2.6", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.2.6.tgz", - "integrity": "sha512-zIaK3zbSrKuH12bP+SPybPgcHSM6MFzh3HFeaODzmsF1N8C1l8dzJ22cW1aq4g0+nayU1VMjmNf7hg0dpShLrA==", + "version": "46.4.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.4.3.tgz", + "integrity": "sha512-Prc7ol+vCIghPeECpwZq5+P+VZfoi87suywvbYCiCnkI1kTmVSdcOC2M8mioglWxBbd28wbb1OVjg/8OzGzatA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.39.4", @@ -3686,11 +3678,11 @@ } }, "node_modules/espree": { - "version": "9.5.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", - "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.0.tgz", + "integrity": "sha512-1FH/IiruXZ84tpUlm0aCUEwMl2Ho5ilqVh0VvQXw+byAz/4SAciyHLlfmL5WYqsvD38oymdUwBss0LtK8m4s/A==", "dependencies": { - "acorn": "^8.8.0", + "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.4.1" }, @@ -3824,6 +3816,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/execa/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, "node_modules/exponential-backoff": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", @@ -3841,9 +3839,9 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz", + "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -4048,16 +4046,18 @@ "dev": true }, "node_modules/foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", "dependencies": { "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" + "signal-exit": "^4.0.1" }, "engines": { - "node": ">=8.0.0" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/fromentries": { @@ -4091,6 +4091,14 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -4141,6 +4149,11 @@ "node": ">=8" } }, + "node_modules/gauge/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, "node_modules/gauge/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -4204,19 +4217,21 @@ } }, "node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "dev": true, + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.1.tgz", + "integrity": "sha512-9BKYcEeIs7QwlCYs+Y3GBvqAMISufUS0i2ELd11zpZjxI5V9iyRj0HgzB5/cLf2NY4vcYBTYzJ7GIui7j/4DOw==", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.0.3", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2", + "path-scurry": "^1.10.0" + }, + "bin": { + "glob": "dist/cjs/src/bin.js" }, "engines": { - "node": ">=12" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -4233,18 +4248,6 @@ "node": ">= 6" } }, - "node_modules/glob/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", @@ -4255,9 +4258,9 @@ } }, "node_modules/globby": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.0.tgz", - "integrity": "sha512-jWsQfayf13NvqKUIL3Ta+CIqMnvlaIDFveWE/dpOZ9+3AMEJozsxDvKA02zync9UuvOM8rOXzsD5GqKP4OnWPQ==", + "version": "13.2.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.1.tgz", + "integrity": "sha512-DPCBxctI7dN4EeIqjW2KGqgdcUMbrhJ9AzON+PlxCtvppWhubTLD4+a0GFxiym14ZvacUydTPjLPc2DlKz7EIg==", "dependencies": { "dir-glob": "^3.0.1", "fast-glob": "^3.2.11", @@ -4563,10 +4566,12 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, "node_modules/invariant": { "version": "2.2.4", @@ -5067,6 +5072,58 @@ "node": ">=12" } }, + "node_modules/js-beautify/node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/js-beautify/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/js-beautify/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/js-beautify/node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dev": true, + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/js-string-escape": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", @@ -5288,6 +5345,11 @@ "signal-exit": "^3.0.2" } }, + "node_modules/lockfile/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -5413,6 +5475,14 @@ "node": ">=12" } }, + "node_modules/make-fetch-happen/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/map-age-cleaner": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", @@ -5689,11 +5759,11 @@ } }, "node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-6.0.2.tgz", + "integrity": "sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==", "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, "node_modules/minipass-collect": { @@ -5739,6 +5809,14 @@ "encoding": "^0.1.13" } }, + "node_modules/minipass-fetch/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/minipass-flush": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", @@ -6017,6 +6095,11 @@ "node": "^12.13 || ^14.13 || >=16" } }, + "node_modules/node-gyp/node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, "node_modules/node-gyp/node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -6053,7 +6136,21 @@ "brace-expansion": "^1.1.7" }, "engines": { - "node": "*" + "node": "*" + } + }, + "node_modules/node-gyp/node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/node-gyp/node_modules/rimraf": { @@ -6110,17 +6207,17 @@ } }, "node_modules/nopt": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", - "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", + "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", "dependencies": { - "abbrev": "^1.0.0" + "abbrev": "^2.0.0" }, "bin": { "nopt": "bin/nopt.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/normalize-package-data": { @@ -6252,6 +6349,14 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/npm-registry-fetch/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/npm-run-path": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", @@ -6430,6 +6535,19 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "node_modules/nyc/node_modules/foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, "node_modules/nyc/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -6522,6 +6640,12 @@ "semver": "bin/semver.js" } }, + "node_modules/nyc/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, "node_modules/nyc/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -6653,17 +6777,17 @@ } }, "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "type-check": "^0.4.0" }, "engines": { "node": ">= 0.8.0" @@ -6802,6 +6926,14 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/pacote/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -6906,11 +7038,11 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.9.2.tgz", - "integrity": "sha512-qSDLy2aGFPm8i4rsbHd4MNyTcrzHFsLQykrtbuGRknZZCBBVXSv2tSCDN2Cg6Rt/GFRw8GoW9y9Ecw5rIPG1sg==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.0.tgz", + "integrity": "sha512-tZFEaRQbMLjwrsmidsGJ6wDMv0iazJWk6SfIKnY4Xru8auXgmJkOBa5DUbYFcFD2Rzk2+KDlIiF0GVXNCbgC7g==", "dependencies": { - "lru-cache": "^9.1.1", + "lru-cache": "^9.1.1 || ^10.0.0", "minipass": "^5.0.0 || ^6.0.2" }, "engines": { @@ -6921,9 +7053,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.2.tgz", - "integrity": "sha512-ERJq3FOzJTxBbFjZ7iDs+NiK4VI9Wz+RdrrAB8dio1oV+YvdPzUEE4QNiT2VD51DkIbCYRUUzCRkssXCHqSnKQ==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.0.tgz", + "integrity": "sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw==", "engines": { "node": "14 || >=16.14" } @@ -7387,42 +7519,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-package-json/node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/read-package-json/node_modules/glob": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.0.tgz", - "integrity": "sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg==", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2", - "path-scurry": "^1.7.0" - }, - "bin": { - "glob": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/read-package-json/node_modules/hosted-git-info": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", @@ -7464,17 +7560,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-package-json/node_modules/signal-exit": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", - "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/read-pkg": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.0.0.tgz", @@ -7900,53 +7985,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rimraf/node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.0.tgz", - "integrity": "sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg==", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2", - "path-scurry": "^1.7.0" - }, - "bin": { - "glob": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/signal-exit": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", - "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/run-applescript": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", @@ -8030,6 +8068,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/run-applescript/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, "node_modules/run-applescript/node_modules/strip-final-newline": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", @@ -8215,19 +8259,24 @@ "dev": true }, "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", + "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, "node_modules/sigstore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.6.0.tgz", - "integrity": "sha512-QODKff/qW/TXOZI6V/Clqu74xnInAS6it05mufj4/fSewexLtfEntgLZZcBtUK44CDQyUE5TUXYy1ARYzlfG9g==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.7.0.tgz", + "integrity": "sha512-KP7QULhWdlu3hlp+jw2EvgWKlOGOY9McLj/jrchLjHNlNPK0KWIwF919cbmOp6QiKXLmPijR2qH/5KYWlbtG9Q==", "dependencies": { "@sigstore/protobuf-specs": "^0.1.0", - "@sigstore/tuf": "^1.0.0", - "make-fetch-happen": "^11.0.1", - "tuf-js": "^1.1.3" + "@sigstore/tuf": "^1.0.1", + "make-fetch-happen": "^11.0.1" }, "bin": { "sigstore": "bin/sigstore.js" @@ -8369,6 +8418,19 @@ "concat-map": "0.0.1" } }, + "node_modules/spawn-wrap/node_modules/foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, "node_modules/spawn-wrap/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -8416,6 +8478,12 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/spawn-wrap/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, "node_modules/spdx-correct": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", @@ -8461,6 +8529,14 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/ssri/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/stack-utils": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", @@ -8864,6 +8940,14 @@ "node": ">=8" } }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/tar/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -8930,9 +9014,9 @@ } }, "node_modules/terser": { - "version": "5.18.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.18.1.tgz", - "integrity": "sha512-j1n0Ao919h/Ai5r43VAnfV/7azUYW43GPxK7qSATzrsERfW7+y2QW9Cp9ufnRF5CQUWbnLSo7UJokSWCqg4tsQ==", + "version": "5.18.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.18.2.tgz", + "integrity": "sha512-Ah19JS86ypbJzTzvUCX7KOsEIhDaRONungA4aYBjEP3JZRf4ocuDzTg4QWZnPn9DEMiMYGJPiSOy7aykoCc70w==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", @@ -9346,32 +9430,22 @@ "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/workerpool": { "version": "6.4.0", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.4.0.tgz", "integrity": "sha512-i3KR1mQMNwY2wx20ozq2EjISGtQWDIfV56We+yGJ5yDs8jTwQiLLaqHlkBHITlCuJnYlVRmXegxFxZg7gqI++A==" }, "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" @@ -9443,58 +9517,25 @@ "node": ">=8" } }, - "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } + "node_modules/wrap-ansi/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dependencies": { - "color-convert": "^2.0.1" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/wrappy": { @@ -9515,18 +9556,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/write-file-atomic/node_modules/signal-exit": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", - "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/xml2js": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index cb9d9edc02f..22bc2243ce9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -119,17 +119,17 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { + "@npmcli/config": "^6.2.1", "@ui5/builder": "^3.0.6", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.2.0", + "chalk": "^5.3.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.2.0", + "globby": "^13.2.1", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", - "@npmcli/config": "^6.2.1", "lockfile": "^1.0.4", "make-fetch-happen": "^11.1.1", "node-stream-zip": "^1.15.0", @@ -150,10 +150,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.43.0", + "eslint": "^8.44.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.2.6", + "eslint-plugin-jsdoc": "^46.4.3", "esmock": "^2.3.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From ab3d9fd79fcbf5ca11db259480b8364d703c59b8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 30 Jun 2023 16:12:45 +0200 Subject: [PATCH 0951/1272] [ui5-project][INTERNAL] graph: Fix JSDoc links Minor fix of outdated JSDoc links. Plus added a new link to the documentation chapter added in https://github.com/SAP/ui5-tooling/pull/843 --- packages/project/lib/graph/Module.js | 2 +- packages/project/lib/graph/graph.js | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/packages/project/lib/graph/Module.js b/packages/project/lib/graph/Module.js index fc21903f017..9609a49d456 100644 --- a/packages/project/lib/graph/Module.js +++ b/packages/project/lib/graph/Module.js @@ -20,7 +20,7 @@ function clone(obj) { /** * Raw representation of a UI5 Project. A module can contain zero to one projects and n extensions. * This class is intended for private use by the - * [@ui5/project/graph/ProjectGraphFromTree]{@link @ui5/project/graph/ProjectGraphFromTree} module + * [@ui5/project/graph/ProjectGraphBuilder]{@link @ui5/project/graph/ProjectGraphBuilder} module * * @private * @class diff --git a/packages/project/lib/graph/graph.js b/packages/project/lib/graph/graph.js index e3a5140acd3..892c840685b 100644 --- a/packages/project/lib/graph/graph.js +++ b/packages/project/lib/graph/graph.js @@ -81,8 +81,11 @@ export async function graphFromPackageDependencies({ /** * Generates a [@ui5/project/graph/ProjectGraph]{@link @ui5/project/graph/ProjectGraph} from a - * YAML file following the structure of the - * [@ui5/project/graph/ProjectGraphFromTree]{@link @ui5/project/graph/ProjectGraphFromTree} API + * YAML file following the structure of + * [@ui5/project/graph/providers/DependencyTree~TreeNode]{@link @ui5/project/graph/providers/DependencyTree~TreeNode}. + * + * Documentation: + * [Static Dependency Definition]{@link https://sap.github.io/ui5-tooling/stable/pages/Overview/#static-dependency-definition} * * @public * @static @@ -133,7 +136,7 @@ export async function graphFromStaticFile({ /** * Generates a [@ui5/project/graph/ProjectGraph]{@link @ui5/project/graph/ProjectGraph} from the - * given dependencyTree following the structure of the + * given dependencyTree following the structure of * [@ui5/project/graph/providers/DependencyTree~TreeNode]{@link @ui5/project/graph/providers/DependencyTree~TreeNode} * * @public From 95e453ed1e9f3b4807fd0b5ac8430bddec0702f4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 3 Jul 2023 09:06:52 +0000 Subject: [PATCH 0952/1272] [ui5-project]Release 3.4.1 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 846d9ed68bf..5c9ee7cf817 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.4.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.4.1...HEAD). + + +## [v3.4.1] - 2023-06-30 +### Bug Fixes +- Migrate from libnpmconfig to [@npmcli](https://github.com/npmcli)/config ([#618](https://github.com/SAP/ui5-project/issues/618)) [`13d019b`](https://github.com/SAP/ui5-project/commit/13d019bb4d8eda05c0a1564c6a2b96fa4eb05ab1) + ## [v3.4.0] - 2023-06-21 @@ -410,6 +416,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.4.1]: https://github.com/SAP/ui5-project/compare/v3.4.0...v3.4.1 [v3.4.0]: https://github.com/SAP/ui5-project/compare/v3.3.2...v3.4.0 [v3.3.2]: https://github.com/SAP/ui5-project/compare/v3.3.1...v3.3.2 [v3.3.1]: https://github.com/SAP/ui5-project/compare/v3.3.0...v3.3.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d64417dc7b0..6a7628241e2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.4.0", + "version": "3.4.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.4.0", + "version": "3.4.1", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^6.2.1", diff --git a/packages/project/package.json b/packages/project/package.json index 22bc2243ce9..3b6dc24a074 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.4.0", + "version": "3.4.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 8930d6b8bcc431f24937242600f4e28bc3e8357b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 9 Jul 2023 02:20:46 +0000 Subject: [PATCH 0953/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 210 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 102 insertions(+), 112 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6a7628241e2..e23a5609b96 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -17,7 +17,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.3.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.2.1", + "globby": "^13.2.2", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", @@ -29,7 +29,7 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", "rimraf": "^5.0.1", - "semver": "^7.5.3", + "semver": "^7.5.4", "xml2js": "^0.6.0", "yesno": "^0.4.0" }, @@ -100,35 +100,35 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.5.tgz", - "integrity": "sha512-4Jc/YuIaYqKnDDz892kPIledykKg12Aw1PYX5i/TY28anJtacvM1Rrr8wbieB9GfEJwlzqT0hUEao0CxEebiDA==", + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.6.tgz", + "integrity": "sha512-29tfsWTq2Ftu7MXmimyC0C5FDZv5DYxOZkh3XD3+QW4V/BYuv/LyEsjj3c0hqedEaDt6DBfDvexMKU8YevdqFg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.5.tgz", - "integrity": "sha512-SBuTAjg91A3eKOvD+bPEz3LlhHZRNu1nFOVts9lzDJTXshHTjII0BAtDS3Y2DAkdZdDKWVZGVwkDfc4Clxn1dg==", + "version": "7.22.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.8.tgz", + "integrity": "sha512-75+KxFB4CZqYRXjx4NlR4J7yGvKumBuZTmV4NV6v09dVXXkuYVYLT68N6HCzLvfJ+fWCxQsntNzKwwIXL4bHnw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.5", + "@babel/generator": "^7.22.7", + "@babel/helper-compilation-targets": "^7.22.6", "@babel/helper-module-transforms": "^7.22.5", - "@babel/helpers": "^7.22.5", - "@babel/parser": "^7.22.5", + "@babel/helpers": "^7.22.6", + "@babel/parser": "^7.22.7", "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.5", + "@babel/traverse": "^7.22.8", "@babel/types": "^7.22.5", + "@nicolo-ribaudo/semver-v6": "^6.3.3", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" + "json5": "^2.2.2" }, "engines": { "node": ">=6.9.0" @@ -138,19 +138,10 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/@babel/generator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.5.tgz", - "integrity": "sha512-+lcUbnTRhd0jOewtFSedLyiPsD5tswKkbgcezOqqWFUVNEwoUTlpPOBmvhG7OXWLR4jMdv0czPGH5XbflnD1EA==", + "version": "7.22.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.7.tgz", + "integrity": "sha512-p+jPjMG+SI8yvIaxGgeW24u7q9+5+TGpZh8/CuB7RhBKd7RCy8FayNEFNNKrNK/eUcY/4ExQqLmyrvBXKsIcwQ==", "dev": true, "dependencies": { "@babel/types": "^7.22.5", @@ -163,16 +154,16 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.5.tgz", - "integrity": "sha512-Ji+ywpHeuqxB8WDxraCiqR0xfhYjiDE/e6k7FuIaANnoOFxAHskHChz4vA1mJC9Lbm01s1PVAGhQY4FUKSkGZw==", + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.6.tgz", + "integrity": "sha512-534sYEqWD9VfUm3IPn2SLcH4Q3P86XL+QvqdC7ZsFrzyyPF3T4XGiVghF6PTYNdWg6pXuoqXxNQAhbYeEInTzA==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.5", + "@babel/compat-data": "^7.22.6", "@babel/helper-validator-option": "^7.22.5", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" + "@nicolo-ribaudo/semver-v6": "^6.3.3", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1" }, "engines": { "node": ">=6.9.0" @@ -181,15 +172,6 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/@babel/helper-environment-visitor": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", @@ -277,9 +259,9 @@ } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.5.tgz", - "integrity": "sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ==", + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", "dev": true, "dependencies": { "@babel/types": "^7.22.5" @@ -315,13 +297,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.5.tgz", - "integrity": "sha512-pSXRmfE1vzcUIDFQcSGA5Mr+GxBV9oiRKDuDxXvWQQBCh8HoIjs/2DlDB7H8smac1IVrB9/xdXj2N3Wol9Cr+Q==", + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.6.tgz", + "integrity": "sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==", "dev": true, "dependencies": { "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.5", + "@babel/traverse": "^7.22.6", "@babel/types": "^7.22.5" }, "engines": { @@ -393,9 +375,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz", - "integrity": "sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==", + "version": "7.22.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz", + "integrity": "sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==", "bin": { "parser": "bin/babel-parser.js" }, @@ -418,18 +400,18 @@ } }, "node_modules/@babel/traverse": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.5.tgz", - "integrity": "sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ==", + "version": "7.22.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.8.tgz", + "integrity": "sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.5", + "@babel/generator": "^7.22.7", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.5", - "@babel/parser": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.7", "@babel/types": "^7.22.5", "debug": "^4.1.0", "globals": "^11.1.0" @@ -730,7 +712,6 @@ "version": "0.3.3", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, "dependencies": { "@jridgewell/set-array": "^1.0.1", "@jridgewell/sourcemap-codec": "^1.4.10", @@ -744,7 +725,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true, "engines": { "node": ">=6.0.0" } @@ -753,15 +733,18 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.4.tgz", - "integrity": "sha512-KE/SxsDqNs3rrWwFHcRh15ZLVFrI0YoZtgAdIyIq9k5hUNmiWRXXThPomIxHuL20sLdgzbDFyvkUMna14bvtrw==" + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", + "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } }, "node_modules/@jridgewell/sourcemap-codec": { "version": "1.4.15", @@ -772,7 +755,6 @@ "version": "0.3.18", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", - "dev": true, "dependencies": { "@jridgewell/resolve-uri": "3.1.0", "@jridgewell/sourcemap-codec": "1.4.14" @@ -781,8 +763,7 @@ "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { "version": "1.4.14", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" }, "node_modules/@jsdoc/salty": { "version": "0.2.5", @@ -795,6 +776,15 @@ "node": ">=v12.0.0" } }, + "node_modules/@nicolo-ribaudo/semver-v6": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/semver-v6/-/semver-v6-6.3.3.tgz", + "integrity": "sha512-3Yc1fUTs69MG/uZbJlLSI3JISMn2UV2rg+1D/vROUqZyh3l6iYHCs7GMp+M40ZD7yOdDbYjJcU1oTJhrc+dGKg==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1283,9 +1273,9 @@ } }, "node_modules/acorn": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.9.0.tgz", - "integrity": "sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ==", + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", "bin": { "acorn": "bin/acorn" }, @@ -1905,9 +1895,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001509", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001509.tgz", - "integrity": "sha512-2uDDk+TRiTX5hMcUYT/7CSyzMZxjfGu0vAUjS2g0LSD8UoXOv0LtpH4LxGMemsiPq6LCVIUjNwVM0erkOkGCDA==", + "version": "1.0.30001513", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001513.tgz", + "integrity": "sha512-pnjGJo7SOOjAGytZZ203Em95MRM8Cr6jhCXNF/FAXTpCTRTECnqQWLpiTRqrFtdYcth8hf4WECUpkezuYsMVww==", "dev": true, "funding": [ { @@ -3155,9 +3145,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.447", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.447.tgz", - "integrity": "sha512-sxX0LXh+uL41hSJsujAN86PjhrV/6c79XmpY0TvjZStV6VxIgarf8SRkUoUTuYmFcZQTemsoqo8qXOGw5npWfw==", + "version": "1.4.454", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.454.tgz", + "integrity": "sha512-pmf1rbAStw8UEQ0sr2cdJtWl48ZMuPD9Sto8HVQOq9vx9j2WgDEN6lYoaqFvqEHYOmGA9oRGn7LqWI9ta0YugQ==", "dev": true }, "node_modules/emittery": { @@ -4217,15 +4207,15 @@ } }, "node_modules/glob": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.1.tgz", - "integrity": "sha512-9BKYcEeIs7QwlCYs+Y3GBvqAMISufUS0i2ELd11zpZjxI5V9iyRj0HgzB5/cLf2NY4vcYBTYzJ7GIui7j/4DOw==", + "version": "10.3.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.3.tgz", + "integrity": "sha512-92vPiMb/iqpmEgsOoIDvTjc50wf9CCCvMzsi6W0JLPeUKE8TWP1a73PgqSrqy7iAZxaSD1YdzU7QZR5LF51MJw==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2", - "path-scurry": "^1.10.0" + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" }, "bin": { "glob": "dist/cjs/src/bin.js" @@ -4258,13 +4248,13 @@ } }, "node_modules/globby": { - "version": "13.2.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.1.tgz", - "integrity": "sha512-DPCBxctI7dN4EeIqjW2KGqgdcUMbrhJ9AzON+PlxCtvppWhubTLD4+a0GFxiym14ZvacUydTPjLPc2DlKz7EIg==", + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", "dependencies": { "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", "merge2": "^1.4.1", "slash": "^4.0.0" }, @@ -5407,12 +5397,12 @@ } }, "node_modules/magic-string": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.0.tgz", - "integrity": "sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==", + "version": "0.30.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", + "integrity": "sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==", "dev": true, "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.13" + "@jridgewell/sourcemap-codec": "^1.4.15" }, "engines": { "node": ">=12" @@ -5713,9 +5703,9 @@ } }, "node_modules/minimatch": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", - "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -5759,9 +5749,9 @@ } }, "node_modules/minipass": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-6.0.2.tgz", - "integrity": "sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.1.tgz", + "integrity": "sha512-NQ8MCKimInjVlaIqx51RKJJB7mINVkLTJbsZKmto4UAAOC/CWXES8PGaOgoBZyqoUsUA/U3DToGK7GJkkHbjJw==", "engines": { "node": ">=16 || 14 >=14.17" } @@ -6180,9 +6170,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", - "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", "dev": true }, "node_modules/node-stream-zip": { @@ -7038,12 +7028,12 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.0.tgz", - "integrity": "sha512-tZFEaRQbMLjwrsmidsGJ6wDMv0iazJWk6SfIKnY4Xru8auXgmJkOBa5DUbYFcFD2Rzk2+KDlIiF0GVXNCbgC7g==", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", "dependencies": { "lru-cache": "^9.1.1 || ^10.0.0", - "minipass": "^5.0.0 || ^6.0.2" + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -7303,9 +7293,9 @@ } }, "node_modules/postcss": { - "version": "8.4.24", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz", - "integrity": "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==", + "version": "8.4.25", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.25.tgz", + "integrity": "sha512-7taJ/8t2av0Z+sQEvNzCkpDynl0tX3uJMCODi6nT3PfASC7dYCWV9aQ+uiCf+KBD4SEFcu+GvJdGdwzQ6OSjCw==", "dev": true, "funding": [ { @@ -8166,9 +8156,9 @@ } }, "node_modules/semver": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz", - "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dependencies": { "lru-cache": "^6.0.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index 3b6dc24a074..798451bdde7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.3.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.2.1", + "globby": "^13.2.2", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", @@ -139,7 +139,7 @@ "read-pkg-up": "^9.1.0", "resolve": "^1.22.3", "rimraf": "^5.0.1", - "semver": "^7.5.3", + "semver": "^7.5.4", "xml2js": "^0.6.0", "yesno": "^0.4.0" }, From 84e61def6d5d7cbebc7b80e8546adabba4fdf361 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jul 2023 05:15:53 +0000 Subject: [PATCH 0954/1272] [ui5-project]Bump actions/setup-node from 3.6.0 to 3.7.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.6.0 to 3.7.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.6.0...v3.7.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 369ad94c89e..59558a2c1d0 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v3 - name: Use Node.js LTS 16.18.0 - uses: actions/setup-node@v3.6.0 + uses: actions/setup-node@v3.7.0 with: node-version: 16.18.0 From dbbdbc7f9844f89b3baf627bd62401aa508cd2f3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 9 Jul 2023 10:30:11 +0000 Subject: [PATCH 0955/1272] [ui5-project][DEPENDENCY] Bump read-pkg-up from 9.1.0 to 10.0.0 Bumps [read-pkg-up](https://github.com/sindresorhus/read-pkg-up) from 9.1.0 to 10.0.0. - [Release notes](https://github.com/sindresorhus/read-pkg-up/releases) - [Commits](https://github.com/sindresorhus/read-pkg-up/compare/v9.1.0...v10.0.0) --- updated-dependencies: - dependency-name: read-pkg-up dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 273 +++++++++++++++++++++-------- packages/project/package.json | 2 +- 2 files changed, 203 insertions(+), 72 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e23a5609b96..a36957aa1de 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -26,7 +26,7 @@ "pacote": "^15.2.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", - "read-pkg-up": "^9.1.0", + "read-pkg-up": "^10.0.0", "resolve": "^1.22.3", "rimraf": "^5.0.1", "semver": "^7.5.4", @@ -5207,7 +5207,8 @@ "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true }, "node_modules/json-schema-traverse": { "version": "0.4.1", @@ -5293,7 +5294,8 @@ "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true }, "node_modules/linkify-it": { "version": "3.0.3", @@ -5626,6 +5628,174 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/meow/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/meow/node_modules/read-pkg": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", + "integrity": "sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==", + "dev": true, + "dependencies": { + "@types/normalize-package-data": "^2.4.1", + "normalize-package-data": "^3.0.2", + "parse-json": "^5.2.0", + "type-fest": "^2.0.0" + }, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/read-pkg-up": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-9.1.0.tgz", + "integrity": "sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg==", + "dev": true, + "dependencies": { + "find-up": "^6.3.0", + "read-pkg": "^7.1.0", + "type-fest": "^2.5.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/meow/node_modules/type-fest": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.12.0.tgz", @@ -5638,6 +5808,24 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/meow/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/meow/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", @@ -6949,6 +7137,7 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -7568,16 +7757,16 @@ } }, "node_modules/read-pkg-up": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-9.1.0.tgz", - "integrity": "sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-10.0.0.tgz", + "integrity": "sha512-jgmKiS//w2Zs+YbX039CorlkOp8FIVbSAN8r8GJHDsGlmNPXo+VeHkqAwCiQVTTx5/LwLZTcEw59z3DvcLbr0g==", "dependencies": { "find-up": "^6.3.0", - "read-pkg": "^7.1.0", - "type-fest": "^2.5.0" + "read-pkg": "^8.0.0", + "type-fest": "^3.12.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7598,17 +7787,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg-up/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/read-pkg-up/node_modules/locate-path": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", @@ -7623,31 +7801,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg-up/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/read-pkg-up/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/read-pkg-up/node_modules/p-limit": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", @@ -7684,39 +7837,17 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/read-pkg-up/node_modules/read-pkg": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", - "integrity": "sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==", - "dependencies": { - "@types/normalize-package-data": "^2.4.1", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^2.0.0" - }, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.12.0.tgz", + "integrity": "sha512-qj9wWsnFvVEMUDbESiilKeXeHL7FwwiFcogfhfyjmvT968RXSvnl23f1JOClTHYItsi7o501C/7qVllscUP3oA==", "engines": { - "node": ">=12.20" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg-up/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/read-pkg-up/node_modules/yocto-queue": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 798451bdde7..5fe1bba0ccc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -136,7 +136,7 @@ "pacote": "^15.2.0", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", - "read-pkg-up": "^9.1.0", + "read-pkg-up": "^10.0.0", "resolve": "^1.22.3", "rimraf": "^5.0.1", "semver": "^7.5.4", From 87db9c42ba3eb6d52f4ee8c4643c326050bf98df Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 13 Jul 2023 10:26:05 +0200 Subject: [PATCH 0956/1272] [ui5-project][FIX] Application: Fallback to manifest.appdescr_variant if manifest.json is not found (#631) This fixes a regression presumably present since ui5-project v3.0.0, which prevented proper fallback to manifest.appdescr_variant in case no manifest.json is found in the project. --- packages/project/lib/specifications/types/Application.js | 7 ++++++- .../project/test/lib/specifications/types/Application.js | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index f153e51763a..05303eb925b 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -214,11 +214,16 @@ class Application extends ComponentProject { return this._pManifests[filePath] = this._getRawSourceReader().byPath(filePath) .then(async (resource) => { if (!resource) { - throw new Error( + const error = new Error( `Could not find resource ${filePath} in project ${this.getName()}`); + error.code = "ENOENT"; // "File or directory does not exist" + throw error; } return JSON.parse(await resource.getString()); }).catch((err) => { + if (err.code === "ENOENT") { + throw err; + } throw new Error( `Failed to read ${filePath} for project ` + `${this.getName()}: ${err.message}`); diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 19b9054a340..38699c4a343 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -583,10 +583,10 @@ test.serial("_getManifest: File does not exist", async (t) => { const project = await Specification.create(projectInput); const error = await t.throwsAsync(project._getManifest("/does-not-exist.json")); - t.deepEqual(error.message, - "Failed to read /does-not-exist.json for project application.a: " + + t.is(error.message, "Could not find resource /does-not-exist.json in project application.a", "Rejected with correct error message"); + t.is(error.code, "ENOENT"); }); test.serial("_getManifest: result is cached", async (t) => { From 5e0c6d83483ab31859a31be2e0b6e12642d2fc0b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 13 Jul 2023 10:20:18 +0000 Subject: [PATCH 0957/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.6 to 3.0.7 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.7/CHANGELOG.md --- packages/project/package-lock.json | 14 +++++++------- packages/project/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a36957aa1de..a1a4f65b03f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^6.2.1", - "@ui5/builder": "^3.0.6", + "@ui5/builder": "^3.0.7", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1135,9 +1135,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.6.tgz", - "integrity": "sha512-OtR0BG2p3UfokHTXIWdp7GAQ37l1BTiSDJ8ZqlmLpipfcvQhWYdQi6R9MLCPSydw045KaViUXomp4OEVwqO9dA==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.7.tgz", + "integrity": "sha512-LCIzLsPIF1y9GXbCxBz2UHz7FKZjG8+XDQlOV8M+kxI6XG+VgUi5up5mV7nERJZglw/gIKSi2584KN2epHLLfg==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.4", @@ -1145,14 +1145,14 @@ "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", - "espree": "^9.5.2", + "espree": "^9.6.0", "graceful-fs": "^4.2.11", "jsdoc": "^4.0.2", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", "rimraf": "^5.0.1", - "semver": "^7.5.2", - "terser": "^5.18.1", + "semver": "^7.5.4", + "terser": "^5.18.2", "workerpool": "^6.4.0", "xml2js": "^0.6.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index 5fe1bba0ccc..d59681ebdf5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ }, "dependencies": { "@npmcli/config": "^6.2.1", - "@ui5/builder": "^3.0.6", + "@ui5/builder": "^3.0.7", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From 163459ab72f38d1d8085057f9a3399a9718e516f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 13 Jul 2023 10:27:30 +0000 Subject: [PATCH 0958/1272] [ui5-project]Release 3.4.2 --- packages/project/CHANGELOG.md | 14 ++++++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 5c9ee7cf817..bf45941ff5f 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,19 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.4.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.4.2...HEAD). + + +## [v3.4.2] - 2023-07-13 +### Bug Fixes +- **Application:** Fallback to manifest.appdescr_variant if manifest.json is not found ([#631](https://github.com/SAP/ui5-project/issues/631)) [`43c6b22`](https://github.com/SAP/ui5-project/commit/43c6b224cf7ecad39a060baf8c6922f919e6dd59) + +### Dependency Updates +- Bump read-pkg-up from 9.1.0 to 10.0.0 [`557cb36`](https://github.com/SAP/ui5-project/commit/557cb36790ba53aa43a15cf7211560461dabb9e5) + -## [v3.4.1] - 2023-06-30 +## [v3.4.1] - 2023-07-03 ### Bug Fixes - Migrate from libnpmconfig to [@npmcli](https://github.com/npmcli)/config ([#618](https://github.com/SAP/ui5-project/issues/618)) [`13d019b`](https://github.com/SAP/ui5-project/commit/13d019bb4d8eda05c0a1564c6a2b96fa4eb05ab1) @@ -416,6 +425,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.4.2]: https://github.com/SAP/ui5-project/compare/v3.4.1...v3.4.2 [v3.4.1]: https://github.com/SAP/ui5-project/compare/v3.4.0...v3.4.1 [v3.4.0]: https://github.com/SAP/ui5-project/compare/v3.3.2...v3.4.0 [v3.3.2]: https://github.com/SAP/ui5-project/compare/v3.3.1...v3.3.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a1a4f65b03f..94c509ad16e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.4.1", + "version": "3.4.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.4.1", + "version": "3.4.2", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^6.2.1", diff --git a/packages/project/package.json b/packages/project/package.json index d59681ebdf5..8511333d6ea 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.4.1", + "version": "3.4.2", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From fbaaea0a0fac9ce1bbe660c89bcd38afaa012720 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 13 Jul 2023 16:58:53 +0200 Subject: [PATCH 0959/1272] [ui5-project][INTERNAL] Fix unit/coverage setup on Node 20 and adapt CI matrix AVA's nodeArguments option doesn't seem to work with loaders on Node 20. One solution is to disable worker threads to use child processes instead. This should also stabilize test execution, especially when tests also spawn new worker threads, which mainly appeared in ui5-builder. See: https://github.com/SAP/ui5-server/pull/602 JIRA: CPOUI5FOUNDATION-612 --- packages/project/azure-pipelines.yml | 6 +++--- packages/project/package.json | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 85e75beed83..5c0fd2358a8 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -26,13 +26,13 @@ strategy: node_version: 18.x linux_node_current: imageName: 'ubuntu-22.04' - node_version: 19.x + node_version: 20.x mac_node_current: imageName: 'macos-12' - node_version: 19.x + node_version: 20.x windows_node_current: imageName: 'windows-2022' - node_version: 19.x + node_version: 20.x pool: vmImage: $(imageName) diff --git a/packages/project/package.json b/packages/project/package.json index 8511333d6ea..8a829dc94ae 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -72,7 +72,8 @@ "nodeArguments": [ "--loader=esmock", "--no-warnings" - ] + ], + "workerThreads": false }, "nyc": { "reporter": [ From ea82c6b8e286e1f1ce9a1474812c9526d0ce1a03 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 16 Jul 2023 02:20:39 +0000 Subject: [PATCH 0960/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 208 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 105 insertions(+), 107 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 94c509ad16e..92cf63c3561 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,10 +40,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.44.0", + "eslint": "^8.45.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.4.3", + "eslint-plugin-jsdoc": "^46.4.4", "esmock": "^2.3.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", @@ -100,35 +100,35 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.6.tgz", - "integrity": "sha512-29tfsWTq2Ftu7MXmimyC0C5FDZv5DYxOZkh3XD3+QW4V/BYuv/LyEsjj3c0hqedEaDt6DBfDvexMKU8YevdqFg==", + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", + "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.22.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.8.tgz", - "integrity": "sha512-75+KxFB4CZqYRXjx4NlR4J7yGvKumBuZTmV4NV6v09dVXXkuYVYLT68N6HCzLvfJ+fWCxQsntNzKwwIXL4bHnw==", + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", + "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.7", - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-module-transforms": "^7.22.5", + "@babel/generator": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-module-transforms": "^7.22.9", "@babel/helpers": "^7.22.6", "@babel/parser": "^7.22.7", "@babel/template": "^7.22.5", "@babel/traverse": "^7.22.8", "@babel/types": "^7.22.5", - "@nicolo-ribaudo/semver-v6": "^6.3.3", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2" + "json5": "^2.2.2", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -138,10 +138,19 @@ "url": "https://opencollective.com/babel" } }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/generator": { - "version": "7.22.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.7.tgz", - "integrity": "sha512-p+jPjMG+SI8yvIaxGgeW24u7q9+5+TGpZh8/CuB7RhBKd7RCy8FayNEFNNKrNK/eUcY/4ExQqLmyrvBXKsIcwQ==", + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", + "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", "dev": true, "dependencies": { "@babel/types": "^7.22.5", @@ -154,16 +163,16 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.6.tgz", - "integrity": "sha512-534sYEqWD9VfUm3IPn2SLcH4Q3P86XL+QvqdC7ZsFrzyyPF3T4XGiVghF6PTYNdWg6pXuoqXxNQAhbYeEInTzA==", + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.9.tgz", + "integrity": "sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.6", + "@babel/compat-data": "^7.22.9", "@babel/helper-validator-option": "^7.22.5", - "@nicolo-ribaudo/semver-v6": "^6.3.3", "browserslist": "^4.21.9", - "lru-cache": "^5.1.1" + "lru-cache": "^5.1.1", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -172,6 +181,15 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/helper-environment-visitor": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", @@ -219,22 +237,22 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.5.tgz", - "integrity": "sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==", + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", + "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-module-imports": "^7.22.5", "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.5" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-plugin-utils": { @@ -776,15 +794,6 @@ "node": ">=v12.0.0" } }, - "node_modules/@nicolo-ribaudo/semver-v6": { - "version": "6.3.3", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/semver-v6/-/semver-v6-6.3.3.tgz", - "integrity": "sha512-3Yc1fUTs69MG/uZbJlLSI3JISMn2UV2rg+1D/vROUqZyh3l6iYHCs7GMp+M40ZD7yOdDbYjJcU1oTJhrc+dGKg==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1895,9 +1904,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001513", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001513.tgz", - "integrity": "sha512-pnjGJo7SOOjAGytZZ203Em95MRM8Cr6jhCXNF/FAXTpCTRTECnqQWLpiTRqrFtdYcth8hf4WECUpkezuYsMVww==", + "version": "1.0.30001516", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001516.tgz", + "integrity": "sha512-Wmec9pCBY8CWbmI4HsjBeQLqDTqV91nFVR83DnZpYyRnPI1wePDsTg0bGLPC5VU/3OIZV1fmxEea1b+tFKe86g==", "dev": true, "funding": [ { @@ -3130,9 +3139,9 @@ } }, "node_modules/editorconfig/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, "bin": { "semver": "bin/semver" @@ -3145,9 +3154,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.454", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.454.tgz", - "integrity": "sha512-pmf1rbAStw8UEQ0sr2cdJtWl48ZMuPD9Sto8HVQOq9vx9j2WgDEN6lYoaqFvqEHYOmGA9oRGn7LqWI9ta0YugQ==", + "version": "1.4.461", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.461.tgz", + "integrity": "sha512-1JkvV2sgEGTDXjdsaQCeSwYYuhLRphRpc+g6EHTFELJXEiznLt3/0pZ9JuAOQ5p2rI3YxKTbivtvajirIfhrEQ==", "dev": true }, "node_modules/emittery": { @@ -3267,9 +3276,9 @@ } }, "node_modules/eslint": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.44.0.tgz", - "integrity": "sha512-0wpHoUbDUHgNCyvFB5aXLiQVfK9B0at6gUvzy83k4kAsQ/u769TQDX6iKC+aO4upIHO9WSaA3QoXYQDHbNwf1A==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", + "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3297,7 +3306,6 @@ "globals": "^13.19.0", "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", @@ -3309,7 +3317,6 @@ "natural-compare": "^1.4.0", "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" }, "bin": { @@ -3357,9 +3364,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.4.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.4.3.tgz", - "integrity": "sha512-Prc7ol+vCIghPeECpwZq5+P+VZfoi87suywvbYCiCnkI1kTmVSdcOC2M8mioglWxBbd28wbb1OVjg/8OzGzatA==", + "version": "46.4.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.4.4.tgz", + "integrity": "sha512-D8TGPOkq3bnzmYmA7Q6jdsW+Slx7CunhJk1tlouVq6wJjlP1p6eigZPvxFn7aufud/D66xBsNVMhkDQEuqumMg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.39.4", @@ -3392,9 +3399,9 @@ } }, "node_modules/eslint-scope": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz", - "integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz", + "integrity": "sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -3668,9 +3675,9 @@ } }, "node_modules/espree": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.0.tgz", - "integrity": "sha512-1FH/IiruXZ84tpUlm0aCUEwMl2Ho5ilqVh0VvQXw+byAz/4SAciyHLlfmL5WYqsvD38oymdUwBss0LtK8m4s/A==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dependencies": { "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", @@ -4479,9 +4486,9 @@ } }, "node_modules/immutable": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz", - "integrity": "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", + "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", "dev": true }, "node_modules/import-fresh": { @@ -4859,9 +4866,9 @@ } }, "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "bin": { "semver": "bin/semver.js" @@ -5426,9 +5433,9 @@ } }, "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "bin": { "semver": "bin/semver.js" @@ -5797,9 +5804,9 @@ } }, "node_modules/meow/node_modules/type-fest": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.12.0.tgz", - "integrity": "sha512-qj9wWsnFvVEMUDbESiilKeXeHL7FwwiFcogfhfyjmvT968RXSvnl23f1JOClTHYItsi7o501C/7qVllscUP3oA==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.0.tgz", + "integrity": "sha512-Gur3yQGM9qiLNs0KPP7LPgeRbio2QTt4xXouobMCarR0/wyW3F+F/+OWwshg3NG0Adon7uQfSZBpB46NfhoF1A==", "dev": true, "engines": { "node": ">=14.16" @@ -5937,9 +5944,9 @@ } }, "node_modules/minipass": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.1.tgz", - "integrity": "sha512-NQ8MCKimInjVlaIqx51RKJJB7mINVkLTJbsZKmto4UAAOC/CWXES8PGaOgoBZyqoUsUA/U3DToGK7GJkkHbjJw==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.2.tgz", + "integrity": "sha512-eL79dXrE1q9dBbDCLg7xfn/vl7MS4F1gvJAgjJrQli/jbQWdUttuVawphqpffoIYfRdq78LHx6GP4bU/EQ2ATA==", "engines": { "node": ">=16 || 14 >=14.17" } @@ -6810,9 +6817,9 @@ } }, "node_modules/nyc/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "bin": { "semver": "bin/semver.js" @@ -7482,9 +7489,9 @@ } }, "node_modules/postcss": { - "version": "8.4.25", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.25.tgz", - "integrity": "sha512-7taJ/8t2av0Z+sQEvNzCkpDynl0tX3uJMCODi6nT3PfASC7dYCWV9aQ+uiCf+KBD4SEFcu+GvJdGdwzQ6OSjCw==", + "version": "8.4.26", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.26.tgz", + "integrity": "sha512-jrXHFF8iTloAenySjM/ob3gSj7pCu0Ji49hnjqzsgSRa50hkWCKD0HQ+gMNJkW38jBI68MpAAg7ZWwHwX8NMMw==", "dev": true, "funding": [ { @@ -7838,9 +7845,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.12.0.tgz", - "integrity": "sha512-qj9wWsnFvVEMUDbESiilKeXeHL7FwwiFcogfhfyjmvT968RXSvnl23f1JOClTHYItsi7o501C/7qVllscUP3oA==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.0.tgz", + "integrity": "sha512-Gur3yQGM9qiLNs0KPP7LPgeRbio2QTt4xXouobMCarR0/wyW3F+F/+OWwshg3NG0Adon7uQfSZBpB46NfhoF1A==", "engines": { "node": ">=14.16" }, @@ -7927,9 +7934,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.12.0.tgz", - "integrity": "sha512-qj9wWsnFvVEMUDbESiilKeXeHL7FwwiFcogfhfyjmvT968RXSvnl23f1JOClTHYItsi7o501C/7qVllscUP3oA==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.0.tgz", + "integrity": "sha512-Gur3yQGM9qiLNs0KPP7LPgeRbio2QTt4xXouobMCarR0/wyW3F+F/+OWwshg3NG0Adon7uQfSZBpB46NfhoF1A==", "engines": { "node": ">=14.16" }, @@ -9084,13 +9091,13 @@ } }, "node_modules/tempy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tempy/-/tempy-3.0.0.tgz", - "integrity": "sha512-B2I9X7+o2wOaW4r/CWMkpOO9mdiTRCxXNgob6iGvPmfPWgH/KyUD6Uy5crtWBxIBe3YrNZKR2lSzv1JJKWD4vA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-3.1.0.tgz", + "integrity": "sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==", "dev": true, "dependencies": { "is-stream": "^3.0.0", - "temp-dir": "^2.0.0", + "temp-dir": "^3.0.0", "type-fest": "^2.12.2", "unique-string": "^3.0.0" }, @@ -9113,15 +9120,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/tempy/node_modules/temp-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", - "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/tempy/node_modules/type-fest": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", @@ -9135,9 +9133,9 @@ } }, "node_modules/terser": { - "version": "5.18.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.18.2.tgz", - "integrity": "sha512-Ah19JS86ypbJzTzvUCX7KOsEIhDaRONungA4aYBjEP3JZRf4ocuDzTg4QWZnPn9DEMiMYGJPiSOy7aykoCc70w==", + "version": "5.19.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.0.tgz", + "integrity": "sha512-JpcpGOQLOXm2jsomozdMDpd5f8ZHh1rR48OFgWUH3QsyZcfPgv2qDCYbcDEAYNd4OZRj2bWYKpwdll/udZCk/Q==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index 8a829dc94ae..3ccb5f16779 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -151,10 +151,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.44.0", + "eslint": "^8.45.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.4.3", + "eslint-plugin-jsdoc": "^46.4.4", "esmock": "^2.3.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", From aedfa530c655b62060ab1ef916109f5c1ef90c90 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jul 2023 05:03:08 +0000 Subject: [PATCH 0961/1272] [ui5-project]Bump coverallsapp/github-action from 2.2.0 to 2.2.1 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.2.0 to 2.2.1. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v2.2.0...v2.2.1) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 59558a2c1d0..ed477fda0a3 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v2.2.0 + uses: coverallsapp/github-action@v2.2.1 From 42cf67a883678a054a54b9f2b4a6f532afd6cb8e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 19 Jul 2023 10:00:21 +0000 Subject: [PATCH 0962/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.7 to 3.0.8 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.8/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 92cf63c3561..b5ff7953cfd 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^6.2.1", - "@ui5/builder": "^3.0.7", + "@ui5/builder": "^3.0.8", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1144,9 +1144,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.7.tgz", - "integrity": "sha512-LCIzLsPIF1y9GXbCxBz2UHz7FKZjG8+XDQlOV8M+kxI6XG+VgUi5up5mV7nERJZglw/gIKSi2584KN2epHLLfg==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.8.tgz", + "integrity": "sha512-sf5lCnJIhxWE0/PR0wARQvELUFqWKM3eSkA0eN7zD6bJNoHB6vtFpx5ElZCRwNqFfK/YB3w83Eb5HapqfsZD0g==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.4", @@ -1154,14 +1154,14 @@ "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", "escope": "^4.0.0", - "espree": "^9.6.0", + "espree": "^9.6.1", "graceful-fs": "^4.2.11", "jsdoc": "^4.0.2", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", "rimraf": "^5.0.1", "semver": "^7.5.4", - "terser": "^5.18.2", + "terser": "^5.19.0", "workerpool": "^6.4.0", "xml2js": "^0.6.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index 3ccb5f16779..3bc87608247 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ }, "dependencies": { "@npmcli/config": "^6.2.1", - "@ui5/builder": "^3.0.7", + "@ui5/builder": "^3.0.8", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From 8eb0a2612426d0eda64f9a41bd7251ea324fefb4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 23 Jul 2023 02:21:03 +0000 Subject: [PATCH 0963/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 196 +++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 104 insertions(+), 96 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b5ff7953cfd..388ab193ab4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -44,12 +44,12 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.4.4", - "esmock": "^2.3.1", + "esmock": "^2.3.2", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.5", - "js-beautify": "^1.14.8", + "js-beautify": "^1.14.9", "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", @@ -482,9 +482,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", - "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.0.tgz", + "integrity": "sha512-uiPeRISaglZnaZk8vwrjQZ1CxogZeY/4IYft6gBOTqu1WhVXWmCmZMWxUv2Q/pxSvPdp1JPaO62kLOcOkMqWrw==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -994,6 +994,12 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@one-ini/wasm": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@one-ini/wasm/-/wasm-0.1.1.tgz", + "integrity": "sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==", + "dev": true + }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", @@ -1003,20 +1009,31 @@ "node": ">=14" } }, + "node_modules/@sigstore/bundle": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.0.0.tgz", + "integrity": "sha512-yLvrWDOh6uMOUlFCTJIZEnwOT9Xte7NPXUqVexEKGSF5XtBAuSg5du0kn3dRR0p47a4ah10Y0mNt8+uyeQXrBQ==", + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.1.0.tgz", - "integrity": "sha512-a31EnjuIDSX8IXBUib3cYLDRlPMU36AWX4xS8ysLaNu4ZzUesDiPt83pgrW2X1YLMe5L2HbDyaKK5BrL4cNKaQ==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.0.tgz", + "integrity": "sha512-8ZhZKAVfXjIspDWwm3D3Kvj0ddbJ0HqDZ/pOs5cx88HpT8mVsotFrg7H1UMnXOuDHz6Zykwxn4mxG3QLuN+RUg==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/@sigstore/tuf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.2.tgz", - "integrity": "sha512-vjwcYePJzM01Ha6oWWZ9gNcdIgnzyFxfqfWzph483DPJTH8Tb7f7bQRRll3CYVkyH56j0AgcPAcl6Vg95DPF+Q==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz", + "integrity": "sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==", "dependencies": { - "@sigstore/protobuf-specs": "^0.1.0", + "@sigstore/protobuf-specs": "^0.2.0", "tuf-js": "^1.1.7" }, "engines": { @@ -1904,9 +1921,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001516", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001516.tgz", - "integrity": "sha512-Wmec9pCBY8CWbmI4HsjBeQLqDTqV91nFVR83DnZpYyRnPI1wePDsTg0bGLPC5VU/3OIZV1fmxEea1b+tFKe86g==", + "version": "1.0.30001517", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz", + "integrity": "sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA==", "dev": true, "funding": [ { @@ -2440,9 +2457,13 @@ } }, "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "engines": { + "node": ">=14" + } }, "node_modules/comment-parser": { "version": "1.3.1", @@ -3114,49 +3135,42 @@ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" }, "node_modules/editorconfig": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", - "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.4.tgz", + "integrity": "sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==", "dev": true, "dependencies": { - "commander": "^2.19.0", - "lru-cache": "^4.1.5", - "semver": "^5.6.0", - "sigmund": "^1.0.1" + "@one-ini/wasm": "0.1.1", + "commander": "^10.0.0", + "minimatch": "9.0.1", + "semver": "^7.5.3" }, "bin": { "editorconfig": "bin/editorconfig" + }, + "engines": { + "node": ">=14" } }, - "node_modules/editorconfig/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "node_modules/editorconfig/node_modules/minimatch": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", + "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==", "dev": true, "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/editorconfig/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/editorconfig/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "dev": true - }, "node_modules/electron-to-chromium": { - "version": "1.4.461", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.461.tgz", - "integrity": "sha512-1JkvV2sgEGTDXjdsaQCeSwYYuhLRphRpc+g6EHTFELJXEiznLt3/0pZ9JuAOQ5p2rI3YxKTbivtvajirIfhrEQ==", + "version": "1.4.468", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.468.tgz", + "integrity": "sha512-6M1qyhaJOt7rQtNti1lBA0GwclPH+oKCmsra/hkcWs5INLxfXXD/dtdnaKUYQu/pjOBP/8Osoe4mAcNvvzoFag==", "dev": true }, "node_modules/emittery": { @@ -3666,9 +3680,9 @@ } }, "node_modules/esmock": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.1.tgz", - "integrity": "sha512-ZxuxfhwGSlStiJFbw6Z+a70fB6SutTcUr0X8dhehx6aqiC5kgBvEYV4xNW94cKaD8gaqD7P00RjBH/pfao2CQA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.2.tgz", + "integrity": "sha512-k1T0gMSSbxjU0QMEytGxDQZL4Hsr5p0gtPpUKxHdAYVW+2zPZqfBAXN7ZTYA1IK5DHpKGTFaCf7/mLTwXE+JBQ==", "dev": true, "engines": { "node": ">=14.16.0" @@ -3836,9 +3850,9 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz", - "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -5050,13 +5064,13 @@ } }, "node_modules/js-beautify": { - "version": "1.14.8", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.8.tgz", - "integrity": "sha512-4S7HFeI9YfRvRgKnEweohs0tgJj28InHVIj4Nl8Htf96Y6pHg3+tJrmo4ucAM9f7l4SHbFI3IvFAZ2a1eQPbyg==", + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.9.tgz", + "integrity": "sha512-coM7xq1syLcMyuVGyToxcj2AlzhkDjmfklL8r0JgJ7A76wyGMpJ1oA35mr4APdYNO/o/4YY8H54NQIJzhMbhBg==", "dev": true, "dependencies": { "config-chain": "^1.1.13", - "editorconfig": "^0.15.3", + "editorconfig": "^1.0.3", "glob": "^8.1.0", "nopt": "^6.0.0" }, @@ -5804,9 +5818,9 @@ } }, "node_modules/meow/node_modules/type-fest": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.0.tgz", - "integrity": "sha512-Gur3yQGM9qiLNs0KPP7LPgeRbio2QTt4xXouobMCarR0/wyW3F+F/+OWwshg3NG0Adon7uQfSZBpB46NfhoF1A==", + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", "dev": true, "engines": { "node": ">=14.16" @@ -7489,9 +7503,9 @@ } }, "node_modules/postcss": { - "version": "8.4.26", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.26.tgz", - "integrity": "sha512-jrXHFF8iTloAenySjM/ob3gSj7pCu0Ji49hnjqzsgSRa50hkWCKD0HQ+gMNJkW38jBI68MpAAg7ZWwHwX8NMMw==", + "version": "8.4.27", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz", + "integrity": "sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==", "dev": true, "funding": [ { @@ -7605,12 +7619,6 @@ "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", "dev": true }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", - "dev": true - }, "node_modules/punycode": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", @@ -7845,9 +7853,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.0.tgz", - "integrity": "sha512-Gur3yQGM9qiLNs0KPP7LPgeRbio2QTt4xXouobMCarR0/wyW3F+F/+OWwshg3NG0Adon7uQfSZBpB46NfhoF1A==", + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", "engines": { "node": ">=14.16" }, @@ -7934,9 +7942,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.0.tgz", - "integrity": "sha512-Gur3yQGM9qiLNs0KPP7LPgeRbio2QTt4xXouobMCarR0/wyW3F+F/+OWwshg3NG0Adon7uQfSZBpB46NfhoF1A==", + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", "engines": { "node": ">=14.16" }, @@ -8259,9 +8267,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.63.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.6.tgz", - "integrity": "sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==", + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", + "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8380,12 +8388,6 @@ "node": ">=8" } }, - "node_modules/sigmund": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==", - "dev": true - }, "node_modules/signal-exit": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", @@ -8398,12 +8400,13 @@ } }, "node_modules/sigstore": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.7.0.tgz", - "integrity": "sha512-KP7QULhWdlu3hlp+jw2EvgWKlOGOY9McLj/jrchLjHNlNPK0KWIwF919cbmOp6QiKXLmPijR2qH/5KYWlbtG9Q==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.8.0.tgz", + "integrity": "sha512-ogU8qtQ3VFBawRJ8wjsBEX/vIFeHuGs1fm4jZtjWQwjo8pfAt7T/rh+udlAN4+QUe0IzA8qRSc/YZ7dHP6kh+w==", "dependencies": { - "@sigstore/protobuf-specs": "^0.1.0", - "@sigstore/tuf": "^1.0.1", + "@sigstore/bundle": "^1.0.0", + "@sigstore/protobuf-specs": "^0.2.0", + "@sigstore/tuf": "^1.0.3", "make-fetch-happen": "^11.0.1" }, "bin": { @@ -9133,9 +9136,9 @@ } }, "node_modules/terser": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.0.tgz", - "integrity": "sha512-JpcpGOQLOXm2jsomozdMDpd5f8ZHh1rR48OFgWUH3QsyZcfPgv2qDCYbcDEAYNd4OZRj2bWYKpwdll/udZCk/Q==", + "version": "5.19.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", + "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", @@ -9149,6 +9152,11 @@ "node": ">=10" } }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, "node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 3bc87608247..b9aacd1f8a8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -155,12 +155,12 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.4.4", - "esmock": "^2.3.1", + "esmock": "^2.3.2", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", "istanbul-lib-report": "^3.0.0", "istanbul-reports": "^3.1.5", - "js-beautify": "^1.14.8", + "js-beautify": "^1.14.9", "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", From f93c8097f53491893490360dd94337cd467cee2d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Jul 2023 05:53:20 +0000 Subject: [PATCH 0964/1272] [ui5-project]Bump fsfe/reuse-action from 1 to 2 Bumps [fsfe/reuse-action](https://github.com/fsfe/reuse-action) from 1 to 2. - [Release notes](https://github.com/fsfe/reuse-action/releases) - [Commits](https://github.com/fsfe/reuse-action/compare/v1...v2) --- updated-dependencies: - dependency-name: fsfe/reuse-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/reuse-compliance.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index 0886fbe5c99..e858c9fa7c7 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -15,4 +15,4 @@ jobs: steps: - uses: actions/checkout@v3 - name: Execute REUSE Compliance Check - uses: fsfe/reuse-action@v1 + uses: fsfe/reuse-action@v2 From 8add34fd014155538c0106ceb22ecb6d0d5c9b69 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 26 Jul 2023 08:31:46 +0000 Subject: [PATCH 0965/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.8 to 3.0.9 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.0.9/CHANGELOG.md --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 388ab193ab4..74039b45115 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^6.2.1", - "@ui5/builder": "^3.0.8", + "@ui5/builder": "^3.0.9", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1161,9 +1161,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.8.tgz", - "integrity": "sha512-sf5lCnJIhxWE0/PR0wARQvELUFqWKM3eSkA0eN7zD6bJNoHB6vtFpx5ElZCRwNqFfK/YB3w83Eb5HapqfsZD0g==", + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.9.tgz", + "integrity": "sha512-8ZGoTMXLQKDUSPdVhE9RHiboB1UP963JF5ORD4Eb+eIHK531EIFFDDTlq8W2QekWAABTYVzboYp35tz8BlS7CQ==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.4", @@ -1178,7 +1178,7 @@ "pretty-data": "^0.40.0", "rimraf": "^5.0.1", "semver": "^7.5.4", - "terser": "^5.19.0", + "terser": "^5.19.2", "workerpool": "^6.4.0", "xml2js": "^0.6.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index b9aacd1f8a8..c8497bcb60f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ }, "dependencies": { "@npmcli/config": "^6.2.1", - "@ui5/builder": "^3.0.8", + "@ui5/builder": "^3.0.9", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From 6888cb2e0b5c6051df3936e52a11d055df495457 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 30 Jul 2023 02:20:53 +0000 Subject: [PATCH 0966/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 240 +++++++++++++++++++---------- packages/project/package.json | 12 +- 2 files changed, 165 insertions(+), 87 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 74039b45115..d81e727c74b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -30,7 +30,7 @@ "resolve": "^1.22.3", "rimraf": "^5.0.1", "semver": "^7.5.4", - "xml2js": "^0.6.0", + "xml2js": "^0.6.2", "yesno": "^0.4.0" }, "devDependencies": { @@ -40,15 +40,15 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.45.0", + "eslint": "^8.46.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.4.4", - "esmock": "^2.3.2", + "eslint-plugin-jsdoc": "^46.4.5", + "esmock": "^2.3.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", - "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.1.5", + "istanbul-lib-report": "^3.0.1", + "istanbul-reports": "^3.1.6", "js-beautify": "^1.14.9", "jsdoc": "^4.0.2", "nyc": "^15.1.0", @@ -482,18 +482,18 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.0.tgz", - "integrity": "sha512-uiPeRISaglZnaZk8vwrjQZ1CxogZeY/4IYft6gBOTqu1WhVXWmCmZMWxUv2Q/pxSvPdp1JPaO62kLOcOkMqWrw==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", + "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", - "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", + "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -563,9 +563,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", - "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", + "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1839,6 +1839,30 @@ "node": ">=8" } }, + "node_modules/caching-transform/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caching-transform/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/caching-transform/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -3168,9 +3192,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.468", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.468.tgz", - "integrity": "sha512-6M1qyhaJOt7rQtNti1lBA0GwclPH+oKCmsra/hkcWs5INLxfXXD/dtdnaKUYQu/pjOBP/8Osoe4mAcNvvzoFag==", + "version": "1.4.477", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.477.tgz", + "integrity": "sha512-shUVy6Eawp33dFBFIoYbIwLHrX0IZ857AlH9ug2o4rvbWmpaCUdBpQ5Zw39HRrfzAFm4APJE9V+E2A/WB0YqJw==", "dev": true }, "node_modules/emittery": { @@ -3290,27 +3314,27 @@ } }, "node_modules/eslint": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", - "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", + "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -3378,9 +3402,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.4.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.4.4.tgz", - "integrity": "sha512-D8TGPOkq3bnzmYmA7Q6jdsW+Slx7CunhJk1tlouVq6wJjlP1p6eigZPvxFn7aufud/D66xBsNVMhkDQEuqumMg==", + "version": "46.4.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.4.5.tgz", + "integrity": "sha512-HjTuxqDYplAQFu29F3MHFCDDBgeqOxPXI6TyBhL0u2rr4XntJ0z3C9PmJvpjFscKdHwkZDN/0l1QCG0QwyRi4g==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.39.4", @@ -3390,7 +3414,7 @@ "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", "is-builtin-module": "^3.2.1", - "semver": "^7.5.1", + "semver": "^7.5.4", "spdx-expression-parse": "^3.0.1" }, "engines": { @@ -3413,9 +3437,9 @@ } }, "node_modules/eslint-scope": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz", - "integrity": "sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -3465,9 +3489,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", + "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -3680,9 +3704,9 @@ } }, "node_modules/esmock": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.2.tgz", - "integrity": "sha512-k1T0gMSSbxjU0QMEytGxDQZL4Hsr5p0gtPpUKxHdAYVW+2zPZqfBAXN7ZTYA1IK5DHpKGTFaCf7/mLTwXE+JBQ==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.3.tgz", + "integrity": "sha512-eUbaWlp+q04KEWIAx+3L37lOS4prMoB06By7zsCaAgR6o45vxc1jt7gRT1X9wJ88wZcECuH6jtu/n66C7nE7iQ==", "dev": true, "engines": { "node": ">=14.16.0" @@ -3793,9 +3817,9 @@ "dev": true }, "node_modules/execa": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.1.1.tgz", - "integrity": "sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", "dev": true, "dependencies": { "cross-spawn": "^7.0.3", @@ -3955,6 +3979,21 @@ "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, + "node_modules/find-cache-dir/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/find-cache-dir/node_modules/pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", @@ -3967,6 +4006,15 @@ "node": ">=8" } }, + "node_modules/find-cache-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -5006,17 +5054,17 @@ } }, "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, "dependencies": { "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", + "make-dir": "^4.0.0", "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, "node_modules/istanbul-lib-source-maps": { @@ -5034,9 +5082,9 @@ } }, "node_modules/istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", "dev": true, "dependencies": { "html-escaper": "^2.0.0", @@ -5047,9 +5095,9 @@ } }, "node_modules/jackspeak": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.1.tgz", - "integrity": "sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.2.tgz", + "integrity": "sha512-mgNtVv4vUuaKA97yxUHoA3+FkuhtxkjdXEWOyB/N76fjy0FjezEt34oy3epBtvCvS+7DyKwqCFWx/oJLV5+kCg==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -5420,9 +5468,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.1", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", - "integrity": "sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==", + "version": "0.30.2", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.2.tgz", + "integrity": "sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -5432,29 +5480,20 @@ } }, "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, "dependencies": { - "semver": "^6.0.0" + "semver": "^7.5.3" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/make-fetch-happen": { "version": "11.1.1", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", @@ -6518,9 +6557,9 @@ } }, "node_modules/npm-pick-manifest": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", - "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.2.tgz", + "integrity": "sha512-1dKY+86/AIiq1tkKVD3l0WI+Gd3vkknVGAggsFeBkTvbhMQ1OND/LKkYv4JtXPKUJ8bOTCyLiqEg2P6QNdK+Gg==", "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", @@ -6791,6 +6830,21 @@ "node": ">=8" } }, + "node_modules/nyc/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/nyc/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -8389,9 +8443,9 @@ } }, "node_modules/signal-exit": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", - "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "engines": { "node": ">=14" }, @@ -8582,6 +8636,21 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/spawn-wrap/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/spawn-wrap/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -8609,6 +8678,15 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/spawn-wrap/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/spawn-wrap/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -9684,9 +9762,9 @@ } }, "node_modules/xml2js": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.0.tgz", - "integrity": "sha512-eLTh0kA8uHceqesPqSE+VvO1CDDJWMwlQfB6LuN6T8w6MaDJ8Txm8P7s5cHD0miF0V+GGTZrDQfxPZQVsur33w==", + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz", + "integrity": "sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==", "dependencies": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index c8497bcb60f..b2d9d100dfc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -141,7 +141,7 @@ "resolve": "^1.22.3", "rimraf": "^5.0.1", "semver": "^7.5.4", - "xml2js": "^0.6.0", + "xml2js": "^0.6.2", "yesno": "^0.4.0" }, "devDependencies": { @@ -151,15 +151,15 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.45.0", + "eslint": "^8.46.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.4.4", - "esmock": "^2.3.2", + "eslint-plugin-jsdoc": "^46.4.5", + "esmock": "^2.3.3", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^5.2.1", - "istanbul-lib-report": "^3.0.0", - "istanbul-reports": "^3.1.5", + "istanbul-lib-report": "^3.0.1", + "istanbul-reports": "^3.1.6", "js-beautify": "^1.14.9", "jsdoc": "^4.0.2", "nyc": "^15.1.0", From 3725ab7b19f7f5bb5bbd8587a4cd67da8b66d740 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Jul 2023 10:46:31 +0000 Subject: [PATCH 0967/1272] [ui5-project][INTERNAL] Bump istanbul-lib-instrument from 5.2.1 to 6.0.0 Bumps [istanbul-lib-instrument](https://github.com/istanbuljs/istanbuljs/tree/HEAD/packages/istanbul-lib-instrument) from 5.2.1 to 6.0.0. - [Release notes](https://github.com/istanbuljs/istanbuljs/releases) - [Changelog](https://github.com/istanbuljs/istanbuljs/blob/master/packages/istanbul-lib-instrument/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/istanbuljs/commits/istanbul-lib-instrument-v6.0.0/packages/istanbul-lib-instrument) --- updated-dependencies: - dependency-name: istanbul-lib-instrument dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 46 ++++++++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 32 insertions(+), 16 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d81e727c74b..721f14cfedc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -46,7 +46,7 @@ "eslint-plugin-jsdoc": "^46.4.5", "esmock": "^2.3.3", "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^5.2.1", + "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.6", "js-beautify": "^1.14.9", @@ -1602,6 +1602,31 @@ "node": ">=8" } }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -4912,28 +4937,19 @@ } }, "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.0.tgz", + "integrity": "sha512-x58orMzEVfzPUKqlbLd1hXCnySCxKdDKa6Rjg97CwuLLRI4g3FHTdnExu1OqffVFay6zeMW+T6/DowFLndWnIw==", "dev": true, "dependencies": { "@babel/core": "^7.12.3", "@babel/parser": "^7.14.7", "@istanbuljs/schema": "^0.1.2", "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" + "semver": "^7.5.4" }, "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node": ">=10" } }, "node_modules/istanbul-lib-processinfo": { diff --git a/packages/project/package.json b/packages/project/package.json index b2d9d100dfc..02d654e4a5b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -157,7 +157,7 @@ "eslint-plugin-jsdoc": "^46.4.5", "esmock": "^2.3.3", "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^5.2.1", + "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.6", "js-beautify": "^1.14.9", From 4ca5bdee9c8fb36cb37a0bca311fcb9ef70dfb58 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 6 Aug 2023 02:20:31 +0000 Subject: [PATCH 0968/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 92 +++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 49 insertions(+), 49 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 721f14cfedc..4611ab6ba44 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -27,7 +27,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", "read-pkg-up": "^10.0.0", - "resolve": "^1.22.3", + "resolve": "^1.22.4", "rimraf": "^5.0.1", "semver": "^7.5.4", "xml2js": "^0.6.2", @@ -43,8 +43,8 @@ "eslint": "^8.46.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.4.5", - "esmock": "^2.3.3", + "eslint-plugin-jsdoc": "^46.4.6", + "esmock": "^2.3.5", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", @@ -453,12 +453,12 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.39.4", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.39.4.tgz", - "integrity": "sha512-Jvw915fjqQct445+yron7Dufix9A+m9j1fCJYlCo1FWlRvTxa3pjJelxdSTdaLWcTwRU6vbL+NYjO4YuNIS5Qg==", + "version": "0.40.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.40.1.tgz", + "integrity": "sha512-YORCdZSusAlBrFpZ77pJjc5r1bQs5caPWtAu+WWmiSo+8XaUzseapVrfAtiRFbQWnrBxxLLEwF6f6ZG/UgCQCg==", "dev": true, "dependencies": { - "comment-parser": "1.3.1", + "comment-parser": "1.4.0", "esquery": "^1.5.0", "jsdoc-type-pratt-parser": "~4.0.0" }, @@ -1338,9 +1338,9 @@ } }, "node_modules/agentkeepalive": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.3.0.tgz", - "integrity": "sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.4.0.tgz", + "integrity": "sha512-MysLRwkhsJTZKs+fsZIsTgBlr3IjQroonVJWMSqC9k3LS6f6ZifePl9fCqOtvc8p0CeYDSZVFvytdkwhOGaSZA==", "dependencies": { "debug": "^4.1.0", "depd": "^2.0.0", @@ -1698,9 +1698,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.9", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", - "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", "dev": true, "funding": [ { @@ -1717,9 +1717,9 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001503", - "electron-to-chromium": "^1.4.431", - "node-releases": "^2.0.12", + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", "update-browserslist-db": "^1.0.11" }, "bin": { @@ -1970,9 +1970,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001517", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz", - "integrity": "sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA==", + "version": "1.0.30001519", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001519.tgz", + "integrity": "sha512-0QHgqR+Jv4bxHMp8kZ1Kn8CH55OikjKJ6JmKkZYP1F3D7w+lnFXF70nG5eNfsZS89jadi5Ywy5UCSKLAglIRkg==", "dev": true, "funding": [ { @@ -2515,9 +2515,9 @@ } }, "node_modules/comment-parser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", - "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.0.tgz", + "integrity": "sha512-QLyTNiZ2KDOibvFPlZ6ZngVsZ/0gYnE6uTXi5aoDg8ed3AkJAz4sEje3Y8a29hQ1s6A99MZXe47fLAXQ1rTqaw==", "dev": true, "engines": { "node": ">= 12.0.0" @@ -3217,9 +3217,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.477", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.477.tgz", - "integrity": "sha512-shUVy6Eawp33dFBFIoYbIwLHrX0IZ857AlH9ug2o4rvbWmpaCUdBpQ5Zw39HRrfzAFm4APJE9V+E2A/WB0YqJw==", + "version": "1.4.485", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.485.tgz", + "integrity": "sha512-1ndQ5IBNEnFirPwvyud69GHL+31FkE09gH/CJ6m3KCbkx3i0EVOrjwz4UNxRmN9H8OVHbC6vMRZGN1yCvjSs9w==", "dev": true }, "node_modules/emittery": { @@ -3427,14 +3427,14 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.4.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.4.5.tgz", - "integrity": "sha512-HjTuxqDYplAQFu29F3MHFCDDBgeqOxPXI6TyBhL0u2rr4XntJ0z3C9PmJvpjFscKdHwkZDN/0l1QCG0QwyRi4g==", + "version": "46.4.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.4.6.tgz", + "integrity": "sha512-z4SWYnJfOqftZI+b3RM9AtWL1vF/sLWE/LlO9yOKDof9yN2+n3zOdOJTGX/pRE/xnPsooOLG2Rq6e4d+XW3lNw==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.39.4", + "@es-joy/jsdoccomment": "~0.40.1", "are-docs-informative": "^0.0.2", - "comment-parser": "1.3.1", + "comment-parser": "1.4.0", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", @@ -3729,9 +3729,9 @@ } }, "node_modules/esmock": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.3.tgz", - "integrity": "sha512-eUbaWlp+q04KEWIAx+3L37lOS4prMoB06By7zsCaAgR6o45vxc1jt7gRT1X9wJ88wZcECuH6jtu/n66C7nE7iQ==", + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.5.tgz", + "integrity": "sha512-/Tt1goSUzBI3yKecJSgxBSoMMhGUtlhHA3PluCmdG/L6CRpzV8LmyGkStkdGcRdfHOzfDsqQioGcCFAdK11ZnA==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4573,9 +4573,9 @@ } }, "node_modules/immutable": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", - "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", + "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", "dev": true }, "node_modules/import-fresh": { @@ -4713,9 +4713,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dependencies": { "has": "^1.0.3" }, @@ -8121,11 +8121,11 @@ } }, "node_modules/resolve": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.3.tgz", - "integrity": "sha512-P8ur/gp/AmbEzjr729bZnLjXK5Z+4P0zhIJgBgzqRih7hL7BOukHGtSTA3ACMY467GRFz3duQsi0bDZdR7DKdw==", + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", "dependencies": { - "is-core-module": "^2.12.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -8337,9 +8337,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.64.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", - "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "version": "1.64.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.2.tgz", + "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 02d654e4a5b..c5f115d2fa5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -138,7 +138,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^8.0.0", "read-pkg-up": "^10.0.0", - "resolve": "^1.22.3", + "resolve": "^1.22.4", "rimraf": "^5.0.1", "semver": "^7.5.4", "xml2js": "^0.6.2", @@ -154,8 +154,8 @@ "eslint": "^8.46.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.4.5", - "esmock": "^2.3.3", + "eslint-plugin-jsdoc": "^46.4.6", + "esmock": "^2.3.5", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", From 0b50d558c321e90a2607f0f2254fa7230c911194 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Tue, 8 Aug 2023 11:01:38 +0300 Subject: [PATCH 0969/1272] [ui5-project][FEATURE] Allow to configure location of UI5 home directory (#635) JIRA: CPOUI5FOUNDATION-703 --------- Co-authored-by: Florian Vogt --- packages/project/lib/config/Configuration.js | 17 ++++++++++++++++- .../project/lib/graph/helpers/ui5Framework.js | 11 ++++++++++- .../project/test/lib/config/Configuration.js | 15 +++++++++++---- .../test/lib/graph/helpers/ui5Framework.js | 8 ++++++++ .../ui5framework/Sapui5MavenSnapshotResolver.js | 3 ++- 5 files changed, 47 insertions(+), 7 deletions(-) diff --git a/packages/project/lib/config/Configuration.js b/packages/project/lib/config/Configuration.js index 8bd14a5385b..7e04b0fb425 100644 --- a/packages/project/lib/config/Configuration.js +++ b/packages/project/lib/config/Configuration.js @@ -11,13 +11,16 @@ import os from "node:os"; */ class Configuration { #mavenSnapshotEndpointUrl; + #ui5DataDir; /** * @param {object} configuration * @param {string} [configuration.mavenSnapshotEndpointUrl] + * @param {string} [configuration.ui5DataDir] */ - constructor({mavenSnapshotEndpointUrl}) { + constructor({mavenSnapshotEndpointUrl, ui5DataDir}) { this.#mavenSnapshotEndpointUrl = mavenSnapshotEndpointUrl; + this.#ui5DataDir = ui5DataDir; } /** @@ -31,6 +34,16 @@ class Configuration { return this.#mavenSnapshotEndpointUrl; } + /** + * Configurable directory where the framework artefacts are stored. + * + * @public + * @returns {string} + */ + getUi5DataDir() { + return this.#ui5DataDir; + } + /** * @public * @returns {object} The configuration in a JSON format @@ -38,6 +51,7 @@ class Configuration { toJson() { return { mavenSnapshotEndpointUrl: this.#mavenSnapshotEndpointUrl, + ui5DataDir: this.#ui5DataDir, }; } @@ -74,6 +88,7 @@ class Configuration { }); } } + return new Configuration(config); } diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 4dec544703b..1a02f4c5233 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -2,6 +2,8 @@ import Module from "../Module.js"; import ProjectGraph from "../ProjectGraph.js"; import {getLogger} from "@ui5/logger"; const log = getLogger("graph:helpers:ui5Framework"); +import Configuration from "../../config/Configuration.js"; +import path from "node:path"; class ProjectProcessor { constructor({libraryMetadata, graph, workspace}) { @@ -363,13 +365,20 @@ export default { }); } + const config = await Configuration.fromFile(); + // ENV var should take precedence over the dataDir from the configuration. + const ui5HomeDir = process.env.UI5_DATA_DIR ? + path.resolve(process.env.UI5_DATA_DIR) : + config.getUi5DataDir(); + // Note: version might be undefined here and the Resolver will throw an error when calling // #install and it can't be resolved via the provided library metadata const resolver = new Resolver({ cwd: rootProject.getRootPath(), version, providedLibraryMetadata, - cacheMode + cacheMode, + ui5HomeDir }); let startTime; diff --git a/packages/project/test/lib/config/Configuration.js b/packages/project/test/lib/config/Configuration.js index 083a2059a22..1019fe52674 100644 --- a/packages/project/test/lib/config/Configuration.js +++ b/packages/project/test/lib/config/Configuration.js @@ -34,7 +34,8 @@ test.serial("Build configuration with defaults", (t) => { const config = new Configuration({}); t.deepEqual(config.toJson(), { - mavenSnapshotEndpointUrl: undefined + mavenSnapshotEndpointUrl: undefined, + ui5DataDir: undefined, }); }); @@ -43,7 +44,8 @@ test.serial("Overwrite defaults defaults", (t) => { const {Configuration} = t.context; const params = { - mavenSnapshotEndpointUrl: "https://snapshot.url" + mavenSnapshotEndpointUrl: "https://snapshot.url", + ui5DataDir: "/custom/data/dir" }; const config = new Configuration(params); @@ -55,12 +57,14 @@ test.serial("Check getters", (t) => { const {Configuration} = t.context; const params = { - mavenSnapshotEndpointUrl: "https://snapshot.url" + mavenSnapshotEndpointUrl: "https://snapshot.url", + ui5DataDir: "/custom/data/dir" }; const config = new Configuration(params); t.is(config.getMavenSnapshotEndpointUrl(), params.mavenSnapshotEndpointUrl); + t.is(config.getUi5DataDir(), params.ui5DataDir); }); @@ -69,7 +73,8 @@ test.serial("fromFile", async (t) => { const {promisifyStub, sinon} = t.context; const ui5rcContents = { - mavenSnapshotEndpointUrl: "https://snapshot.url" + mavenSnapshotEndpointUrl: "https://snapshot.url", + ui5DataDir: "/custom/data/dir" }; const responseStub = sinon.stub().resolves(JSON.stringify(ui5rcContents)); promisifyStub.callsFake(() => responseStub); @@ -90,6 +95,7 @@ test.serial("fromFile: configuration file not found - fallback to default config t.is(config instanceof Configuration, true, "Created a default configuration"); t.is(config.getMavenSnapshotEndpointUrl(), undefined, "Default settings"); + t.is(config.getUi5DataDir(), undefined, "Default settings"); }); @@ -104,6 +110,7 @@ test.serial("fromFile: empty configuration file - fallback to default config", a t.is(config instanceof Configuration, true, "Created a default configuration"); t.is(config.getMavenSnapshotEndpointUrl(), undefined, "Default settings"); + t.is(config.getUi5DataDir(), undefined, "Default settings"); }); test.serial("fromFile: throws", async (t) => { diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index 458397f3043..c7906da58b4 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -113,6 +113,7 @@ test.serial("enrichProjectGraph", async (t) => { cacheMode: undefined, cwd: dependencyTree.path, version: dependencyTree.configuration.framework.version, + ui5HomeDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); @@ -319,6 +320,7 @@ test.serial("enrichProjectGraph: With versionOverride", async (t) => { cacheMode: undefined, cwd: dependencyTree.path, version: "1.99.9", + ui5HomeDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -375,6 +377,7 @@ test.serial("enrichProjectGraph: With versionOverride containing snapshot versio cacheMode: undefined, cwd: dependencyTree.path, version: "1.99.9-SNAPSHOT", + ui5HomeDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -431,6 +434,7 @@ test.serial("enrichProjectGraph: With versionOverride containing latest-snapshot cacheMode: undefined, cwd: dependencyTree.path, version: "1.99.9-SNAPSHOT", + ui5HomeDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -587,6 +591,7 @@ test.serial("enrichProjectGraph should resolve framework project with version an cacheMode: undefined, cwd: dependencyTree.path, version: "1.2.3", + ui5HomeDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -685,6 +690,7 @@ test.serial("enrichProjectGraph should resolve framework project " + cacheMode: undefined, cwd: dependencyTree.path, version: "1.99.9", + ui5HomeDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -949,6 +955,7 @@ test.serial("enrichProjectGraph should use framework library metadata from works cacheMode: undefined, cwd: dependencyTree.path, version: "1.111.1", + ui5HomeDir: undefined, providedLibraryMetadata: workspaceFrameworkLibraryMetadata }], "Sapui5Resolver#constructor should be called with expected args"); t.is(Sapui5ResolverStub.getCall(0).args[0].providedLibraryMetadata, workspaceFrameworkLibraryMetadata); @@ -1006,6 +1013,7 @@ test.serial("enrichProjectGraph should allow omitting framework version in case t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ cacheMode: undefined, cwd: dependencyTree.path, + ui5HomeDir: undefined, version: undefined, providedLibraryMetadata: workspaceFrameworkLibraryMetadata }], "Sapui5Resolver#constructor should be called with expected args"); diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js index 54fe3260a40..0d7382d5807 100644 --- a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js @@ -480,7 +480,8 @@ test.serial("_resolveSnapshotEndpointUrl: Maven fallback with config update", as t.is(configFromFile.callCount, 1, "Configuration has been read once"); t.is(configToFile.callCount, 1, "Configuration has been written once"); t.deepEqual(configToFile.firstCall.firstArg.toJson(), { - mavenSnapshotEndpointUrl: "maven-url" + mavenSnapshotEndpointUrl: "maven-url", + ui5DataDir: undefined }, "Correct configuration has been written"); }); From b209c7503c2ee134fd0d25895f2d816a2fbc1776 Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Wed, 9 Aug 2023 08:59:02 +0000 Subject: [PATCH 0970/1272] [ui5-project]Release 3.5.0 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index bf45941ff5f..81509945e92 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.4.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.5.0...HEAD). + + +## [v3.5.0] - 2023-08-08 +### Features +- Allow to configure location of UI5 home directory ([#635](https://github.com/SAP/ui5-project/issues/635)) [`8c86083`](https://github.com/SAP/ui5-project/commit/8c860839d94abdaedaf878614a9121a89b85f116) + ## [v3.4.2] - 2023-07-13 @@ -425,6 +431,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.5.0]: https://github.com/SAP/ui5-project/compare/v3.4.2...v3.5.0 [v3.4.2]: https://github.com/SAP/ui5-project/compare/v3.4.1...v3.4.2 [v3.4.1]: https://github.com/SAP/ui5-project/compare/v3.4.0...v3.4.1 [v3.4.0]: https://github.com/SAP/ui5-project/compare/v3.3.2...v3.4.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4611ab6ba44..5daf67e6a0b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.4.2", + "version": "3.5.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.4.2", + "version": "3.5.0", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^6.2.1", diff --git a/packages/project/package.json b/packages/project/package.json index c5f115d2fa5..ffd2020bd30 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.4.2", + "version": "3.5.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From d72960a77b54284fb5423c9b22d1c73b2038d908 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 13 Aug 2023 02:20:16 +0000 Subject: [PATCH 0971/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 306 +++++++++++++++++------------ packages/project/package.json | 4 +- 2 files changed, 179 insertions(+), 131 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5daf67e6a0b..e910d2158bc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,11 +40,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.46.0", + "eslint": "^8.47.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.4.6", - "esmock": "^2.3.5", + "esmock": "^2.3.6", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", @@ -71,9 +71,9 @@ } }, "node_modules/@adobe/css-tools": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", - "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==" + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.0.tgz", + "integrity": "sha512-+RNNcQvw2V1bmnBTPAtOLfW/9mhH2vC67+rUSi5T8EtEWt6lEnGNY2GuhZ1/YwbgikT1TkhvidCDmN5Q5YCo/w==" }, "node_modules/@ampproject/remapping": { "version": "2.2.1", @@ -89,16 +89,68 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", - "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", + "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", "dependencies": { - "@babel/highlight": "^7.22.5" + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/compat-data": { "version": "7.22.9", "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", @@ -109,21 +161,21 @@ } }, "node_modules/@babel/core": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", - "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", + "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.9", + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", + "@babel/helper-compilation-targets": "^7.22.10", "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.6", - "@babel/parser": "^7.22.7", + "@babel/helpers": "^7.22.10", + "@babel/parser": "^7.22.10", "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.8", - "@babel/types": "^7.22.5", + "@babel/traverse": "^7.22.10", + "@babel/types": "^7.22.10", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -148,12 +200,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", - "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", + "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5", + "@babel/types": "^7.22.10", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -163,9 +215,9 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.9.tgz", - "integrity": "sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", + "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", "dev": true, "dependencies": { "@babel/compat-data": "^7.22.9", @@ -176,9 +228,6 @@ }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-compilation-targets/node_modules/semver": { @@ -315,26 +364,26 @@ } }, "node_modules/@babel/helpers": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.6.tgz", - "integrity": "sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", + "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", "dev": true, "dependencies": { "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.6", - "@babel/types": "^7.22.5" + "@babel/traverse": "^7.22.10", + "@babel/types": "^7.22.10" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", - "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", + "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", "dependencies": { "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", + "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, "engines": { @@ -393,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz", - "integrity": "sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", + "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", "bin": { "parser": "bin/babel-parser.js" }, @@ -418,19 +467,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.22.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.8.tgz", - "integrity": "sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", + "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.7", + "@babel/code-frame": "^7.22.10", + "@babel/generator": "^7.22.10", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.7", - "@babel/types": "^7.22.5", + "@babel/parser": "^7.22.10", + "@babel/types": "^7.22.10", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -439,9 +488,9 @@ } }, "node_modules/@babel/types": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz", - "integrity": "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", + "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.22.5", @@ -491,9 +540,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", - "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -524,9 +573,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -563,9 +612,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", - "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.47.0.tgz", + "integrity": "sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -740,9 +789,9 @@ } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", "engines": { "node": ">=6.0.0" } @@ -770,19 +819,14 @@ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" - }, "node_modules/@jsdoc/salty": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.5.tgz", @@ -1010,9 +1054,9 @@ } }, "node_modules/@sigstore/bundle": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.0.0.tgz", - "integrity": "sha512-yLvrWDOh6uMOUlFCTJIZEnwOT9Xte7NPXUqVexEKGSF5XtBAuSg5du0kn3dRR0p47a4ah10Y0mNt8+uyeQXrBQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz", + "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==", "dependencies": { "@sigstore/protobuf-specs": "^0.2.0" }, @@ -1028,6 +1072,19 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@sigstore/sign": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-1.0.0.tgz", + "integrity": "sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==", + "dependencies": { + "@sigstore/bundle": "^1.1.0", + "@sigstore/protobuf-specs": "^0.2.0", + "make-fetch-happen": "^11.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@sigstore/tuf": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz", @@ -1338,12 +1395,10 @@ } }, "node_modules/agentkeepalive": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.4.0.tgz", - "integrity": "sha512-MysLRwkhsJTZKs+fsZIsTgBlr3IjQroonVJWMSqC9k3LS6f6ZifePl9fCqOtvc8p0CeYDSZVFvytdkwhOGaSZA==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", + "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", "dependencies": { - "debug": "^4.1.0", - "depd": "^2.0.0", "humanize-ms": "^1.2.1" }, "engines": { @@ -1907,9 +1962,9 @@ } }, "node_modules/callsites": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.0.0.tgz", - "integrity": "sha512-y3jRROutgpKdz5vzEhWM34TidDU8vkJppF8dszITeb1PQmSqV3DTxyV8G/lyO/DNvtE1YTedehmw9MPZsCBHxQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.1.0.tgz", + "integrity": "sha512-aBMbD1Xxay75ViYezwT40aQONfr+pSXTHwNKvIXhXD6+LY3F1dLIcceoC5OZKBVHbXcysz1hL9D2w0JJIMXpUw==", "dev": true, "engines": { "node": ">=12.20" @@ -1970,9 +2025,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001519", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001519.tgz", - "integrity": "sha512-0QHgqR+Jv4bxHMp8kZ1Kn8CH55OikjKJ6JmKkZYP1F3D7w+lnFXF70nG5eNfsZS89jadi5Ywy5UCSKLAglIRkg==", + "version": "1.0.30001520", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001520.tgz", + "integrity": "sha512-tahF5O9EiiTzwTUqAeFjIZbn4Dnqxzz7ktrgGlMYNLH43Ul26IgTMH/zvL3DG0lZxBYnlT04axvInszUsZULdA==", "dev": true, "funding": [ { @@ -3066,14 +3121,6 @@ "node": ">=10" } }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/deps-regex": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", @@ -3217,9 +3264,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.485", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.485.tgz", - "integrity": "sha512-1ndQ5IBNEnFirPwvyud69GHL+31FkE09gH/CJ6m3KCbkx3i0EVOrjwz4UNxRmN9H8OVHbC6vMRZGN1yCvjSs9w==", + "version": "1.4.490", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.490.tgz", + "integrity": "sha512-6s7NVJz+sATdYnIwhdshx/N/9O6rvMxmhVoDSDFdj6iA45gHR8EQje70+RYsF4GeB+k0IeNSBnP7yG9ZXJFr7A==", "dev": true }, "node_modules/emittery": { @@ -3339,15 +3386,15 @@ } }, "node_modules/eslint": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", - "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz", + "integrity": "sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3358,7 +3405,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -3514,9 +3561,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", - "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -3633,9 +3680,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -3729,9 +3776,9 @@ } }, "node_modules/esmock": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.5.tgz", - "integrity": "sha512-/Tt1goSUzBI3yKecJSgxBSoMMhGUtlhHA3PluCmdG/L6CRpzV8LmyGkStkdGcRdfHOzfDsqQioGcCFAdK11ZnA==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.6.tgz", + "integrity": "sha512-KsF7sCNrukTN8m1V/jRtZphC9jvXqNnJs2SInKM071qOkZLpl1D+OBOeTWC7ZXH4IxhvzO+FpcFVgdfkb6x43w==", "dev": true, "engines": { "node": ">=14.16.0" @@ -5111,9 +5158,9 @@ } }, "node_modules/jackspeak": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.2.tgz", - "integrity": "sha512-mgNtVv4vUuaKA97yxUHoA3+FkuhtxkjdXEWOyB/N76fjy0FjezEt34oy3epBtvCvS+7DyKwqCFWx/oJLV5+kCg==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.3.tgz", + "integrity": "sha512-pF0kfjmg8DJLxDrizHoCZGUFz4P4czQ3HyfW4BU0ffebYkzAVlBywp5zaxW/TM+r0sGbmrQdi8EQQVTJFxnGsQ==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -6013,9 +6060,9 @@ } }, "node_modules/minipass": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.2.tgz", - "integrity": "sha512-eL79dXrE1q9dBbDCLg7xfn/vl7MS4F1gvJAgjJrQli/jbQWdUttuVawphqpffoIYfRdq78LHx6GP4bU/EQ2ATA==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.3.tgz", + "integrity": "sha512-LhbbwCfz3vsb12j/WkWQPZfKTsgqIe1Nf/ti1pKjYESGLHIVjWU96G9/ljLH4F9mWNVhlQOm0VySdAWzf05dpg==", "engines": { "node": ">=16 || 14 >=14.17" } @@ -7323,9 +7370,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.0.tgz", - "integrity": "sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "engines": { "node": "14 || >=16.14" } @@ -8337,9 +8384,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.64.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.2.tgz", - "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", + "version": "1.65.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", + "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8470,12 +8517,13 @@ } }, "node_modules/sigstore": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.8.0.tgz", - "integrity": "sha512-ogU8qtQ3VFBawRJ8wjsBEX/vIFeHuGs1fm4jZtjWQwjo8pfAt7T/rh+udlAN4+QUe0IzA8qRSc/YZ7dHP6kh+w==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.9.0.tgz", + "integrity": "sha512-0Zjz0oe37d08VeOtBIuB6cRriqXse2e8w+7yIy2XSXjshRKxbc2KkhXjL229jXSxEm7UbcjS76wcJDGQddVI9A==", "dependencies": { - "@sigstore/bundle": "^1.0.0", + "@sigstore/bundle": "^1.1.0", "@sigstore/protobuf-specs": "^0.2.0", + "@sigstore/sign": "^1.0.0", "@sigstore/tuf": "^1.0.3", "make-fetch-happen": "^11.0.1" }, diff --git a/packages/project/package.json b/packages/project/package.json index ffd2020bd30..32fa6c7108a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -151,11 +151,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.3", "docdash": "^2.0.1", - "eslint": "^8.46.0", + "eslint": "^8.47.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.4.6", - "esmock": "^2.3.5", + "esmock": "^2.3.6", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", From b90cf5ab6e685d9006d8497c6d9a6a528f4a5fd3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= Date: Fri, 18 Aug 2023 16:39:02 +0200 Subject: [PATCH 0972/1272] [ui5-project][FIX] Resolve UI5 data directory relative to project (#642) The UI5 data directory (previously called UI5 home directory) should always be resolved relative to the project directory, which is where the package.json file is located at. This change also adds a list of options to the Configuration class to be used by the CLI config command to allow all available config options to be set or retrieved. Follow-up of https://github.com/SAP/ui5-project/pull/635 JIRA: CPOUI5FOUNDATION-715 JIRA: CPOUI5FOUNDATION-716 --------- Co-authored-by: Merlin Beutlberger --- packages/project/lib/config/Configuration.js | 39 ++-- .../project/lib/graph/helpers/ui5Framework.js | 14 +- .../project/test/lib/config/Configuration.js | 21 +- .../graph/helpers/ui5Framework.integration.js | 8 + .../test/lib/graph/helpers/ui5Framework.js | 187 ++++++++++++++++++ 5 files changed, 251 insertions(+), 18 deletions(-) diff --git a/packages/project/lib/config/Configuration.js b/packages/project/lib/config/Configuration.js index 7e04b0fb425..91ea4a3d4d3 100644 --- a/packages/project/lib/config/Configuration.js +++ b/packages/project/lib/config/Configuration.js @@ -2,7 +2,7 @@ import path from "node:path"; import os from "node:os"; /** - * Provides basic configuration settings for @ui5/project/ui5Framework/* resolvers. + * Provides basic configuration for @ui5/project. * Reads/writes configuration from/to ~/.ui5rc * * @public @@ -10,17 +10,35 @@ import os from "node:os"; * @alias @ui5/project/config/Configuration */ class Configuration { - #mavenSnapshotEndpointUrl; - #ui5DataDir; + /** + * A list of all configuration options. + * + * @public + * @static + */ + static OPTIONS = [ + "mavenSnapshotEndpointUrl", + "ui5DataDir" + ]; + + #options = new Map(); /** * @param {object} configuration * @param {string} [configuration.mavenSnapshotEndpointUrl] * @param {string} [configuration.ui5DataDir] */ - constructor({mavenSnapshotEndpointUrl, ui5DataDir}) { - this.#mavenSnapshotEndpointUrl = mavenSnapshotEndpointUrl; - this.#ui5DataDir = ui5DataDir; + constructor(configuration) { + // Initialize map with undefined values for every option so that they are + // returned via toJson() + Configuration.OPTIONS.forEach((key) => this.#options.set(key, undefined)); + + Object.entries(configuration).forEach(([key, value]) => { + if (!Configuration.OPTIONS.includes(key)) { + throw new Error(`Unknown configuration option '${key}'`); + } + this.#options.set(key, value); + }); } /** @@ -31,7 +49,7 @@ class Configuration { * @returns {string} */ getMavenSnapshotEndpointUrl() { - return this.#mavenSnapshotEndpointUrl; + return this.#options.get("mavenSnapshotEndpointUrl"); } /** @@ -41,7 +59,7 @@ class Configuration { * @returns {string} */ getUi5DataDir() { - return this.#ui5DataDir; + return this.#options.get("ui5DataDir"); } /** @@ -49,10 +67,7 @@ class Configuration { * @returns {object} The configuration in a JSON format */ toJson() { - return { - mavenSnapshotEndpointUrl: this.#mavenSnapshotEndpointUrl, - ui5DataDir: this.#ui5DataDir, - }; + return Object.fromEntries(this.#options); } /** diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 1a02f4c5233..b44ccaa1676 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -365,11 +365,15 @@ export default { }); } - const config = await Configuration.fromFile(); // ENV var should take precedence over the dataDir from the configuration. - const ui5HomeDir = process.env.UI5_DATA_DIR ? - path.resolve(process.env.UI5_DATA_DIR) : - config.getUi5DataDir(); + let ui5DataDir = process.env.UI5_DATA_DIR; + if (!ui5DataDir) { + const config = await Configuration.fromFile(); + ui5DataDir = config.getUi5DataDir(); + } + if (ui5DataDir) { + ui5DataDir = path.resolve(rootProject.getRootPath(), ui5DataDir); + } // Note: version might be undefined here and the Resolver will throw an error when calling // #install and it can't be resolved via the provided library metadata @@ -378,7 +382,7 @@ export default { version, providedLibraryMetadata, cacheMode, - ui5HomeDir + ui5HomeDir: ui5DataDir }); let startTime; diff --git a/packages/project/test/lib/config/Configuration.js b/packages/project/test/lib/config/Configuration.js index 1019fe52674..430721f95ee 100644 --- a/packages/project/test/lib/config/Configuration.js +++ b/packages/project/test/lib/config/Configuration.js @@ -28,6 +28,14 @@ test.afterEach.always((t) => { esmock.purge(t.context.Configuration); }); +test.serial("Configuration options", (t) => { + const {Configuration} = t.context; + t.deepEqual(Configuration.OPTIONS, [ + "mavenSnapshotEndpointUrl", + "ui5DataDir" + ]); +}); + test.serial("Build configuration with defaults", (t) => { const {Configuration} = t.context; @@ -39,7 +47,6 @@ test.serial("Build configuration with defaults", (t) => { }); }); - test.serial("Overwrite defaults defaults", (t) => { const {Configuration} = t.context; @@ -53,6 +60,18 @@ test.serial("Overwrite defaults defaults", (t) => { t.deepEqual(config.toJson(), params); }); +test.serial("Unknown configuration option", (t) => { + const {Configuration} = t.context; + + const params = { + unknown: "foo" + }; + + t.throws(() => new Configuration(params), { + message: `Unknown configuration option 'unknown'` + }); +}); + test.serial("Check getters", (t) => { const {Configuration} = t.context; diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index 0c7c5a9efd3..a989f3a31b9 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -125,11 +125,19 @@ test.beforeEach(async (t) => { "../../../../lib/specifications/Specification.js": t.context.Specification }); + // Stub os homedir to prevent the actual ~/.ui5rc from being used in tests + t.context.Configuration = await esmock.p("../../../../lib/config/Configuration.js", { + "node:os": { + homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + } + }); + t.context.ui5Framework = await esmock.p("../../../../lib/graph/helpers/ui5Framework.js", { "@ui5/logger": ui5Logger, "../../../../lib/graph/Module.js": t.context.Module, "../../../../lib/ui5Framework/Openui5Resolver.js": t.context.Openui5Resolver, "../../../../lib/ui5Framework/Sapui5Resolver.js": t.context.Sapui5Resolver, + "../../../../lib/config/Configuration.js": t.context.Configuration }); t.context.projectGraphBuilder = await esmock.p("../../../../lib/graph/projectGraphBuilder.js", { diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index c7906da58b4..d5574912664 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -16,6 +16,10 @@ const libraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "library const libraryFPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.f"); test.beforeEach(async (t) => { + // Tests either rely on not having UI5_DATA_DIR defined, or explicitly define it + t.context.originalUi5DataDirEnv = process.env.UI5_DATA_DIR; + delete process.env.UI5_DATA_DIR; + const sinon = t.context.sinon = sinonGlobal.createSandbox(); t.context.log = { @@ -51,15 +55,30 @@ test.beforeEach(async (t) => { t.context.Sapui5MavenSnapshotResolverResolveVersionStub = sinon.stub(); t.context.Sapui5MavenSnapshotResolverStub.resolveVersion = t.context.Sapui5MavenSnapshotResolverResolveVersionStub; + t.context.getUi5DataDirStub = sinon.stub().returns(undefined); + + t.context.ConfigurationStub = { + fromFile: sinon.stub().resolves({ + getUi5DataDir: t.context.getUi5DataDirStub + }) + }; + t.context.ui5Framework = await esmock.p("../../../../lib/graph/helpers/ui5Framework.js", { "@ui5/logger": ui5Logger, "../../../../lib/ui5Framework/Sapui5Resolver.js": t.context.Sapui5ResolverStub, "../../../../lib/ui5Framework/Sapui5MavenSnapshotResolver.js": t.context.Sapui5MavenSnapshotResolverStub, + "../../../../lib/config/Configuration.js": t.context.ConfigurationStub, }); t.context.utils = t.context.ui5Framework._utils; }); test.afterEach.always((t) => { + // Reset UI5_DATA_DIR env + if (typeof t.context.originalUi5DataDirEnv === "undefined") { + delete process.env.UI5_DATA_DIR; + } else { + process.env.UI5_DATA_DIR = t.context.originalUi5DataDirEnv; + } t.context.sinon.restore(); esmock.purge(t.context.ui5Framework); }); @@ -1020,6 +1039,174 @@ test.serial("enrichProjectGraph should allow omitting framework version in case t.is(Sapui5ResolverStub.getCall(0).args[0].providedLibraryMetadata, workspaceFrameworkLibraryMetadata); }); +test.serial("enrichProjectGraph should use UI5 data dir from env var", async (t) => { + const {sinon, ui5Framework, utils, Sapui5ResolverInstallStub} = t.context; + + const dependencyTree = { + id: "test1", + version: "1.0.0", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.75.0" + } + } + }; + + const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; + const libraryMetadata = {fake: "metadata"}; + + sinon.stub(utils, "getFrameworkLibrariesFromGraph") + .resolves(referencedLibraries); + + Sapui5ResolverInstallStub.resolves({libraryMetadata}); + + + const addProjectToGraphStub = sinon.stub(); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + process.env.UI5_DATA_DIR = "./ui5-data-dir-from-env-var"; + + const expectedUi5DataDir = path.resolve(dependencyTree.path, "./ui5-data-dir-from-env-var"); + + await ui5Framework.enrichProjectGraph(projectGraph); + + t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{ + cacheMode: undefined, + cwd: dependencyTree.path, + version: dependencyTree.configuration.framework.version, + ui5HomeDir: expectedUi5DataDir, + providedLibraryMetadata: undefined + }], "Sapui5Resolver#constructor should be called with expected args"); +}); + +test.serial("enrichProjectGraph should use UI5 data dir from configuration", async (t) => { + const {sinon, ui5Framework, utils, Sapui5ResolverInstallStub, getUi5DataDirStub} = t.context; + + const dependencyTree = { + id: "test1", + version: "1.0.0", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.75.0" + } + } + }; + + const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; + const libraryMetadata = {fake: "metadata"}; + + sinon.stub(utils, "getFrameworkLibrariesFromGraph") + .resolves(referencedLibraries); + + Sapui5ResolverInstallStub.resolves({libraryMetadata}); + + + const addProjectToGraphStub = sinon.stub(); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + getUi5DataDirStub.returns("./ui5-data-dir-from-config"); + + const expectedUi5DataDir = path.resolve(dependencyTree.path, "./ui5-data-dir-from-config"); + + await ui5Framework.enrichProjectGraph(projectGraph); + + t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{ + cacheMode: undefined, + cwd: dependencyTree.path, + version: dependencyTree.configuration.framework.version, + ui5HomeDir: expectedUi5DataDir, + providedLibraryMetadata: undefined + }], "Sapui5Resolver#constructor should be called with expected args"); +}); + +test.serial("enrichProjectGraph should use absolute UI5 data dir from configuration", async (t) => { + const {sinon, ui5Framework, utils, Sapui5ResolverInstallStub, getUi5DataDirStub} = t.context; + + const dependencyTree = { + id: "test1", + version: "1.0.0", + path: applicationAPath, + configuration: { + specVersion: "2.0", + type: "application", + metadata: { + name: "application.a" + }, + framework: { + name: "SAPUI5", + version: "1.75.0" + } + } + }; + + const referencedLibraries = ["sap.ui.lib1", "sap.ui.lib2", "sap.ui.lib3"]; + const libraryMetadata = {fake: "metadata"}; + + sinon.stub(utils, "getFrameworkLibrariesFromGraph") + .resolves(referencedLibraries); + + Sapui5ResolverInstallStub.resolves({libraryMetadata}); + + + const addProjectToGraphStub = sinon.stub(); + sinon.stub(utils, "ProjectProcessor") + .callsFake(() => { + return { + addProjectToGraph: addProjectToGraphStub + }; + }); + + const provider = new DependencyTreeProvider({dependencyTree}); + const projectGraph = await projectGraphBuilder(provider); + + getUi5DataDirStub.returns("/absolute-ui5-data-dir-from-config"); + + const expectedUi5DataDir = path.resolve("/absolute-ui5-data-dir-from-config"); + + await ui5Framework.enrichProjectGraph(projectGraph); + + t.is(t.context.Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); + t.deepEqual(t.context.Sapui5ResolverStub.getCall(0).args, [{ + cacheMode: undefined, + cwd: dependencyTree.path, + version: dependencyTree.configuration.framework.version, + ui5HomeDir: expectedUi5DataDir, + providedLibraryMetadata: undefined + }], "Sapui5Resolver#constructor should be called with expected args"); +}); + test.serial("utils.shouldIncludeDependency", (t) => { const {utils} = t.context; // root project dependency should always be included From 043fb5bd392e1005afc4269e292310da10f5b0ef Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 18 Aug 2023 15:38:57 +0000 Subject: [PATCH 0973/1272] [ui5-project]Release 3.5.1 --- packages/project/CHANGELOG.md | 11 +++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 81509945e92..8658244c7a2 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.5.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.5.1...HEAD). + + +## [v3.5.1] - 2023-08-18 +### Bug Fixes +- Resolve UI5 data directory relative to project ([#642](https://github.com/SAP/ui5-project/issues/642)) [`228b14c`](https://github.com/SAP/ui5-project/commit/228b14c63fbd736962c513fdd1656a7983f51bbc) + -## [v3.5.0] - 2023-08-08 +## [v3.5.0] - 2023-08-09 ### Features - Allow to configure location of UI5 home directory ([#635](https://github.com/SAP/ui5-project/issues/635)) [`8c86083`](https://github.com/SAP/ui5-project/commit/8c860839d94abdaedaf878614a9121a89b85f116) @@ -431,6 +437,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.5.1]: https://github.com/SAP/ui5-project/compare/v3.5.0...v3.5.1 [v3.5.0]: https://github.com/SAP/ui5-project/compare/v3.4.2...v3.5.0 [v3.4.2]: https://github.com/SAP/ui5-project/compare/v3.4.1...v3.4.2 [v3.4.1]: https://github.com/SAP/ui5-project/compare/v3.4.0...v3.4.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e910d2158bc..21fea1575d1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.5.0", + "version": "3.5.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.5.0", + "version": "3.5.1", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^6.2.1", diff --git a/packages/project/package.json b/packages/project/package.json index 32fa6c7108a..808815a4a26 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.5.0", + "version": "3.5.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 514ae93182327d0ad73bfa05ea14eac235da1860 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 20 Aug 2023 02:20:18 +0000 Subject: [PATCH 0974/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 126 +++++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 48 insertions(+), 80 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 21fea1575d1..c371efb282a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -44,7 +44,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.4.6", - "esmock": "^2.3.6", + "esmock": "^2.3.8", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", @@ -71,9 +71,9 @@ } }, "node_modules/@adobe/css-tools": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.0.tgz", - "integrity": "sha512-+RNNcQvw2V1bmnBTPAtOLfW/9mhH2vC67+rUSi5T8EtEWt6lEnGNY2GuhZ1/YwbgikT1TkhvidCDmN5Q5YCo/w==" + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.1.tgz", + "integrity": "sha512-/62yikz7NLScCGAAST5SHdnjaDJQBDq0M2muyRTpf2VQhw6StBg2ALiu73zSJQ4fMVLA+0uBhBHAle7Wg+2kSg==" }, "node_modules/@ampproject/remapping": { "version": "2.2.1", @@ -1065,9 +1065,9 @@ } }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.0.tgz", - "integrity": "sha512-8ZhZKAVfXjIspDWwm3D3Kvj0ddbJ0HqDZ/pOs5cx88HpT8mVsotFrg7H1UMnXOuDHz6Zykwxn4mxG3QLuN+RUg==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", + "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -1825,15 +1825,15 @@ } }, "node_modules/cacache": { - "version": "17.1.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.3.tgz", - "integrity": "sha512-jAdjGxmPxZh0IipMdR7fK/4sDSrHMLUV0+GvVUsjwyGNKHsh79kW/otg+GkbXwl6Uzvy9wsvHOX4nUoWldeZMg==", + "version": "17.1.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", + "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", "glob": "^10.2.2", "lru-cache": "^7.7.1", - "minipass": "^5.0.0", + "minipass": "^7.0.3", "minipass-collect": "^1.0.2", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", @@ -1882,14 +1882,6 @@ "node": ">=12" } }, - "node_modules/cacache/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "engines": { - "node": ">=8" - } - }, "node_modules/cacache/node_modules/p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -2025,9 +2017,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001520", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001520.tgz", - "integrity": "sha512-tahF5O9EiiTzwTUqAeFjIZbn4Dnqxzz7ktrgGlMYNLH43Ul26IgTMH/zvL3DG0lZxBYnlT04axvInszUsZULdA==", + "version": "1.0.30001522", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001522.tgz", + "integrity": "sha512-TKiyTVZxJGhsTszLuzb+6vUZSjVOAhClszBr2Ta2k9IwtNBT/4dzmL6aywt0HCgEZlmwJzXJd8yNiob6HgwTRg==", "dev": true, "funding": [ { @@ -3264,9 +3256,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.490", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.490.tgz", - "integrity": "sha512-6s7NVJz+sATdYnIwhdshx/N/9O6rvMxmhVoDSDFdj6iA45gHR8EQje70+RYsF4GeB+k0IeNSBnP7yG9ZXJFr7A==", + "version": "1.4.496", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.496.tgz", + "integrity": "sha512-qeXC3Zbykq44RCrBa4kr8v/dWzYJA8rAwpyh9Qd+NKWoJfjG5vvJqy9XOJ9H4P/lqulZBCgUWAYi+FeK5AuJ8g==", "dev": true }, "node_modules/emittery": { @@ -3776,9 +3768,9 @@ } }, "node_modules/esmock": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.6.tgz", - "integrity": "sha512-KsF7sCNrukTN8m1V/jRtZphC9jvXqNnJs2SInKM071qOkZLpl1D+OBOeTWC7ZXH4IxhvzO+FpcFVgdfkb6x43w==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.8.tgz", + "integrity": "sha512-gZWoIwwo4Aa/kGgzqel7O1v4mlDiHS5fLdi4n26nOmizRUHDSbj1U5JF+XLHgYJvIUbJMZLVKIAqL3paBc16hQ==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4212,24 +4204,16 @@ ] }, "node_modules/fs-minipass": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.2.tgz", - "integrity": "sha512-2GAfyfoaCDRrM6jaOS3UsBts8yJ55VioXdWcOL7dK9zdAuKT71+WBA4ifnNYqVjYv+4SsPxjK0JT4yIIn4cA/g==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", "dependencies": { - "minipass": "^5.0.0" + "minipass": "^7.0.3" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/fs-minipass/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "engines": { - "node": ">=8" - } - }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -5158,9 +5142,9 @@ } }, "node_modules/jackspeak": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.3.tgz", - "integrity": "sha512-pF0kfjmg8DJLxDrizHoCZGUFz4P4czQ3HyfW4BU0ffebYkzAVlBywp5zaxW/TM+r0sGbmrQdi8EQQVTJFxnGsQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.0.tgz", + "integrity": "sha512-uKmsITSsF4rUWQHzqaRUuyAir3fZfW3f202Ee34lz/gZCi970CPZwyQXLGNgWJvvZbvFyzeyGq0+4fcG/mBKZg==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -6095,11 +6079,11 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/minipass-fetch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz", - "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", "dependencies": { - "minipass": "^5.0.0", + "minipass": "^7.0.3", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" }, @@ -6110,14 +6094,6 @@ "encoding": "^0.1.13" } }, - "node_modules/minipass-fetch/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "engines": { - "node": ">=8" - } - }, "node_modules/minipass-flush": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", @@ -6557,9 +6533,9 @@ } }, "node_modules/npm-install-checks": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.1.1.tgz", - "integrity": "sha512-dH3GmQL4vsPtld59cOn8uY0iOqRmqKvV+DLGwNXV/Q7MDgD2QfOADWd/mFXcIE5LVhYYGjA3baz6W9JneqnuCw==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.2.0.tgz", + "integrity": "sha512-744wat5wAAHsxa4590mWO0tJ8PKxR8ORZsH9wGpQc3nWTzozMAgBN/XyqYw7mg3yqLM8dLwEnwSfKMmXAjF69g==", "dependencies": { "semver": "^7.1.1" }, @@ -7620,9 +7596,9 @@ } }, "node_modules/postcss": { - "version": "8.4.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz", - "integrity": "sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==", + "version": "8.4.28", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.28.tgz", + "integrity": "sha512-Z7V5j0cq8oEKyejIKfpD8b4eBy9cwW2JWPk0+fB1HOAMsfHbnAXLLS+PfVWlzMSLQaWttKDt607I0XHmpE67Vw==", "dev": true, "funding": [ { @@ -8384,9 +8360,9 @@ "optional": true }, "node_modules/sass": { - "version": "1.65.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", - "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", + "version": "1.66.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.66.1.tgz", + "integrity": "sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -8792,24 +8768,16 @@ "dev": true }, "node_modules/ssri": { - "version": "10.0.4", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.4.tgz", - "integrity": "sha512-12+IR2CB2C28MMAw0Ncqwj5QbTcs0nGIhgJzYWzDkb21vWmfNI83KS4f3Ci6GI98WreIfG7o9UXp3C0qbpA8nQ==", + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", + "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", "dependencies": { - "minipass": "^5.0.0" + "minipass": "^7.0.3" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/ssri/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "engines": { - "node": ">=8" - } - }, "node_modules/stack-utils": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", @@ -9700,9 +9668,9 @@ } }, "node_modules/workerpool": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.4.0.tgz", - "integrity": "sha512-i3KR1mQMNwY2wx20ozq2EjISGtQWDIfV56We+yGJ5yDs8jTwQiLLaqHlkBHITlCuJnYlVRmXegxFxZg7gqI++A==" + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.4.1.tgz", + "integrity": "sha512-zIK7qRgM1Mk+ySxOJl7ZpjX6SlKt5gugxzl8eXHPdbpXX8iDAaVIxYJz4Apn6JdDxP2buY/Ekqg0bOLNSf0u0g==" }, "node_modules/wrap-ansi": { "version": "8.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index 808815a4a26..87e45527eed 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -155,7 +155,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.4.6", - "esmock": "^2.3.6", + "esmock": "^2.3.8", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", From 8df9773d1ce1696ecef80cfffe817a334ebbd09a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Aug 2023 05:33:48 +0000 Subject: [PATCH 0975/1272] [ui5-project]Bump actions/setup-node from 3.7.0 to 3.8.1 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.7.0 to 3.8.1. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.7.0...v3.8.1) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index ed477fda0a3..4c2b7456241 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v3 - name: Use Node.js LTS 16.18.0 - uses: actions/setup-node@v3.7.0 + uses: actions/setup-node@v3.8.1 with: node-version: 16.18.0 From 16bb66ceb6f3d4954b28a2a7f73f805d51f9a737 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 21 Aug 2023 12:21:02 +0200 Subject: [PATCH 0976/1272] [ui5-project][FEATURE] Add specVersion 3.1 and builder resource excludes for modules (#639) Based on https://github.com/SAP/ui5-project/pull/623 but with the component type removed again. JIRA: CPOUI5FOUNDATION-561 --------- Co-authored-by: Florian Vogt --- .../specifications/SpecificationVersion.js | 22 ++++- .../lib/specifications/types/Application.js | 8 +- .../lib/specifications/types/Library.js | 5 +- .../schema/specVersion/kind/extension.json | 2 +- .../kind/extension/project-shim.json | 4 +- .../kind/extension/server-middleware.json | 4 +- .../specVersion/kind/extension/task.json | 4 +- .../schema/specVersion/kind/project.json | 3 +- .../specVersion/kind/project/application.json | 4 +- .../specVersion/kind/project/library.json | 4 +- .../specVersion/kind/project/module.json | 91 ++++++++++++++----- .../kind/project/theme-library.json | 4 +- .../schema/specVersion/specVersion.json | 2 +- .../project/lib/validation/schema/ui5.json | 6 +- .../specifications/SpecificationVersion.js | 51 +++++++++++ .../__helper__/builder-bundleOptions.js | 6 +- .../schema/__helper__/customConfiguration.js | 8 +- .../validation/schema/__helper__/extension.js | 7 +- .../validation/schema/__helper__/framework.js | 9 +- .../validation/schema/__helper__/project.js | 5 +- .../schema/specVersion/kind/extension.js | 4 +- .../kind/extension/project-shim.js | 5 +- .../kind/extension/server-middleware.js | 3 +- .../schema/specVersion/kind/extension/task.js | 3 +- .../specVersion/kind/project/application.js | 17 ++-- .../specVersion/kind/project/library.js | 17 ++-- .../schema/specVersion/kind/project/module.js | 30 +++++- .../specVersion/kind/project/theme-library.js | 8 +- .../project/test/lib/validation/schema/ui5.js | 3 +- 29 files changed, 250 insertions(+), 89 deletions(-) diff --git a/packages/project/lib/specifications/SpecificationVersion.js b/packages/project/lib/specifications/SpecificationVersion.js index ae48edee3be..2634fe94469 100644 --- a/packages/project/lib/specifications/SpecificationVersion.js +++ b/packages/project/lib/specifications/SpecificationVersion.js @@ -4,7 +4,7 @@ const SPEC_VERSION_PATTERN = /^\d+\.\d+$/; const SUPPORTED_VERSIONS = [ "0.1", "1.0", "1.1", "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", - "3.0" + "3.0", "3.1" ]; /** @@ -63,8 +63,8 @@ class SpecificationVersion { * Test whether the instance's Specification Version falls into the provided range * * @public -@param {string} range [Semver]{@link https://www.npmjs.com/package/semver}-style version range, -for example 2.2 - 2.4 + * @param {string} range [Semver]{@link https://www.npmjs.com/package/semver}-style version range, + * for example 2.2 - 2.4 or =3.0 * @returns {boolean} True if the instance's Specification Version falls into the provided range */ satisfies(range) { @@ -263,6 +263,22 @@ for example 2.2 - 2.4 const comparator = new SpecificationVersion(specVersion); return comparator.neq(testVersion); } + + /** + * Creates an array of Specification Versions that match with the provided range. This is mainly used + * for testing purposes. I.e. to execute identical tests for a range of specification versions. + * + * @public + * @param {string} range [Semver]{@link https://www.npmjs.com/package/semver}-style version range, + * for example 2.2 - 2.4 or =3.0 + * @returns {string[]} Array of versions that match the specified range + */ + static getVersionsForRange(range) { + return SUPPORTED_VERSIONS.filter((specVersion) => { + const comparator = new SpecificationVersion(specVersion); + return comparator.satisfies(range); + }); + } } function getUnsupportedSpecVersionMessage(specVersion) { diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index 05303eb925b..9506c74b9b0 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -66,11 +66,17 @@ class Application extends ComponentProject { return null; // Applications do not have a dedicated test directory } + /** + * Get a resource reader for the sources of the project (excluding any test resources) + * without a virtual base path + * + * @returns {@ui5/fs/ReaderCollection} Reader collection + */ _getRawSourceReader() { return createReader({ fsBasePath: this.getSourcePath(), virBasePath: "/", - name: `Source reader for application project ${this.getName()}`, + name: `Raw source reader for application project ${this.getName()}`, project: this }); } diff --git a/packages/project/lib/specifications/types/Library.js b/packages/project/lib/specifications/types/Library.js index 064568570bd..d3d2059a055 100644 --- a/packages/project/lib/specifications/types/Library.js +++ b/packages/project/lib/specifications/types/Library.js @@ -107,9 +107,10 @@ class Library extends ComponentProject { } /** - * * Get a resource reader for the sources of the project (excluding any test resources) + * without a virtual base path. * In the future the path structure can be flat or namespaced depending on the project + * setup * * @returns {@ui5/fs/ReaderCollection} Reader collection */ @@ -117,7 +118,7 @@ class Library extends ComponentProject { return resourceFactory.createReader({ fsBasePath: this.getSourcePath(), virBasePath: "/", - name: `Source reader for library project ${this.getName()}`, + name: `Raw source reader for library project ${this.getName()}`, project: this }); } diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension.json b/packages/project/lib/validation/schema/specVersion/kind/extension.json index 27bf6005c25..633aaea6baa 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "kind", "type", "metadata"], "properties": { - "specVersion": { "enum": ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json index 415785f1dae..cb5a4dbfaf0 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json @@ -6,14 +6,14 @@ "required": ["specVersion", "kind", "type", "metadata", "shims"], "if": { "properties": { - "specVersion": { "enum": ["3.0"] } + "specVersion": { "enum": ["3.0", "3.1"] } } }, "then": { "additionalProperties": false, "properties": { "specVersion": { - "enum": ["3.0"] + "enum": ["3.0", "3.1"] }, "kind": { "enum": ["extension"] diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json index a65db5b56ad..1b46323be4b 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json @@ -7,13 +7,13 @@ "required": ["specVersion", "kind", "type", "metadata", "middleware"], "if": { "properties": { - "specVersion": { "enum": ["3.0"] } + "specVersion": { "enum": ["3.0", "3.1"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0"] }, + "specVersion": { "enum": ["3.0", "3.1"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/kind/extension/task.json index f19291e0c17..7e02c82eb8a 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/task.json @@ -6,13 +6,13 @@ "required": ["specVersion", "kind", "type", "metadata", "task"], "if": { "properties": { - "specVersion": { "enum": ["3.0"] } + "specVersion": { "enum": ["3.0", "3.1"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0"] }, + "specVersion": { "enum": ["3.0", "3.1"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/project.json b/packages/project/lib/validation/schema/specVersion/kind/project.json index f42fa8a2b8e..65191e05f34 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "type"], "properties": { - "specVersion": { "enum": ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" @@ -19,6 +19,7 @@ ] } }, + "if": { "properties": { "type": {"const": null} diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/kind/project/application.json index 81073634a9b..1091be04ee9 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/application.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.0"] } + "specVersion": { "enum": ["3.0", "3.1"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0"] }, + "specVersion": { "enum": ["3.0", "3.1"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/kind/project/library.json index d36a1f83e18..d5114b63324 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.0"] } + "specVersion": { "enum": ["3.0", "3.1"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0"] }, + "specVersion": { "enum": ["3.0", "3.1"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/kind/project/module.json index 9684f27d190..e6fe250b808 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/module.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.0"] } + "specVersion": { "enum": ["3.1"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0"] }, + "specVersion": { "enum": ["3.1"] }, "kind": { "enum": ["project", null] }, @@ -26,7 +26,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.5" + "$ref": "#/definitions/builder-specVersion-3.1" }, "server": { "$ref": "../project.json#/definitions/server" @@ -40,13 +40,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.5", "2.6"] } + "specVersion": { "enum": ["3.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5", "2.6"] }, + "specVersion": { "enum": ["3.0"] }, "kind": { "enum": ["project", null] }, @@ -54,7 +54,7 @@ "enum": ["module"] }, "metadata": { - "$ref": "../project.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata-3.0" }, "resources": { "$ref": "#/definitions/resources" @@ -74,13 +74,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + "specVersion": { "enum": ["2.5", "2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "specVersion": { "enum": ["2.5", "2.6"] }, "kind": { "enum": ["project", null] }, @@ -93,6 +93,12 @@ "resources": { "$ref": "#/definitions/resources" }, + "builder": { + "$ref": "#/definitions/builder-specVersion-2.5" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, "customConfiguration": { "type": "object", "additionalProperties": true @@ -100,20 +106,49 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["module"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "resources": { - "$ref": "#/definitions/resources" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2", "2.3", "2.4"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["module"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["module"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "resources": { + "$ref": "#/definitions/resources" + } } } } @@ -149,6 +184,18 @@ "$ref": "../project.json#/definitions/builder-settings" } } + }, + "builder-specVersion-3.1": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json index 522b7064a77..44f3f2aa5e6 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.0"] } + "specVersion": { "enum": ["3.0", "3.1"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0"] }, + "specVersion": { "enum": ["3.0", "3.1"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/specVersion.json b/packages/project/lib/validation/schema/specVersion/specVersion.json index 16458d4676d..6debcbd3e22 100644 --- a/packages/project/lib/validation/schema/specVersion/specVersion.json +++ b/packages/project/lib/validation/schema/specVersion/specVersion.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion"], "properties": { - "specVersion": { "enum": ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index 59af95301e8..61795c909b1 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -10,17 +10,17 @@ "properties": { "specVersion": { "enum": [ - "3.0", + "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"3.1\", \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, "if": { "properties": { - "specVersion": { "enum": ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } + "specVersion": { "enum": ["3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } } }, "then": { diff --git a/packages/project/test/lib/specifications/SpecificationVersion.js b/packages/project/test/lib/specifications/SpecificationVersion.js index b50aa010df3..64efc696f03 100644 --- a/packages/project/test/lib/specifications/SpecificationVersion.js +++ b/packages/project/test/lib/specifications/SpecificationVersion.js @@ -67,6 +67,12 @@ test("(instance) satisfies", (t) => { t.is(new SpecificationVersion("2.2").satisfies("^2.2"), true); t.is(new SpecificationVersion("2.3").satisfies("^2.2"), true); + // range: >=2.2 + t.is(new SpecificationVersion("2.1").satisfies(">=2.2"), false); + t.is(new SpecificationVersion("2.2").satisfies(">=2.2"), true); + t.is(new SpecificationVersion("2.3").satisfies(">=2.2"), true); + t.is(new SpecificationVersion("3.1").satisfies(">=2.2"), true); + // range: > 1.0 t.is(new SpecificationVersion("1.0").satisfies("> 1.0"), false); t.is(new SpecificationVersion("1.1").satisfies("> 1.0"), true); @@ -162,6 +168,12 @@ test("(static) satisfies", (t) => { t.is(SpecificationVersion.satisfies("2.2", "^2.2"), true); t.is(SpecificationVersion.satisfies("2.3", "^2.2"), true); + // range: >=2.2 + t.is(SpecificationVersion.satisfies("2.1", ">=2.2"), false); + t.is(SpecificationVersion.satisfies("2.2", ">=2.2"), true); + t.is(SpecificationVersion.satisfies("2.3", ">=2.2"), true); + t.is(SpecificationVersion.satisfies("3.1", ">=2.2"), true); + // range: > 1.0 t.is(SpecificationVersion.satisfies("1.0", "> 1.0"), false); t.is(SpecificationVersion.satisfies("1.1", "> 1.0"), true); @@ -212,6 +224,45 @@ test("(static) low level comparator", (t) => { t.is(SpecificationVersion.neq("2.2", "2.2"), false); }); +test("(static) getVersionsForRange", (t) => { + // range: 1.x + t.deepEqual(SpecificationVersion.getVersionsForRange("1.x"), [ + "1.0", "1.1" + ]); + + // range: ^2.2 + t.deepEqual(SpecificationVersion.getVersionsForRange("^2.2"), [ + "2.2", "2.3", "2.4", "2.5", "2.6" + ]); + + // range: >=2.2 + t.deepEqual(SpecificationVersion.getVersionsForRange(">=2.2"), [ + "2.2", "2.3", "2.4", "2.5", "2.6", + "3.0", "3.1", + ]); + + // range: > 1.0 + t.deepEqual(SpecificationVersion.getVersionsForRange("> 1.0"), [ + "1.1", + "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", + "3.0", "3.1", + ]); + + // range: 2.2 - 2.4 + t.deepEqual(SpecificationVersion.getVersionsForRange("2.2 - 2.4"), [ + "2.2", "2.3", "2.4" + ]); + + // range: 0.1 || 1.0 - 1.1 || ^2.5 + t.deepEqual(SpecificationVersion.getVersionsForRange("0.1 || 1.0 - 1.1 || ^2.5"), [ + "0.1", "1.0", "1.1", + "2.5", "2.6" + ]); + + // Incorrect range returns empty array + t.deepEqual(SpecificationVersion.getVersionsForRange("not a range"), []); +}); + test("getSemverCompatibleVersion", (t) => { t.is(__localFunctions__.getSemverCompatibleVersion("0.1"), "0.1.0"); t.is(__localFunctions__.getSemverCompatibleVersion("1.1"), "1.1.0"); diff --git a/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js b/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js index 1ba0be8dade..b87e128131e 100644 --- a/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js +++ b/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js @@ -1,3 +1,5 @@ +import SpecificationVersion from "../../../../../lib/specifications/SpecificationVersion.js"; + /** * Common test functionality for builder/bundles/bundleOptions section in config */ @@ -7,11 +9,11 @@ export default { * * @param {Function} test ava test * @param {Function} assertValidation assertion function - * @param {string} type one of "application" and "library" + * @param {string} type one of "application", "library" */ defineTests: function(test, assertValidation, type) { // Version specific tests - ["3.0"].forEach(function(specVersion) { + SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { test(`${type} (specVersion ${specVersion}): builder/bundles/bundleOptions`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js index 356cce67b09..34db358c983 100644 --- a/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js +++ b/packages/project/test/lib/validation/schema/__helper__/customConfiguration.js @@ -1,9 +1,12 @@ +import SpecificationVersion from "../../../../../lib/specifications/SpecificationVersion.js"; + /** * Common test functionality for customConfiguration section in config */ export default { /** - * Executes the tests for different kind of projects, e.g. "application", "library", "theme-library" and "module" + * Executes the tests for different kind of projects, + * e.g. "application", "library", "theme-library" and "module" * * @param {Function} test ava test * @param {Function} assertValidation assertion function @@ -13,7 +16,6 @@ export default { */ defineTests: function(test, assertValidation, type, additionalConfiguration) { additionalConfiguration = additionalConfiguration || {}; - // version specific tests for customConfiguration test(`${type}: Invalid customConfiguration (specVersion 2.0)`, async (t) => { await assertValidation(t, Object.assign({ @@ -35,7 +37,7 @@ export default { ]); }); - ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1"].forEach((specVersion) => { + SpecificationVersion.getVersionsForRange(">=2.1").forEach((specVersion) => { test(`${type}: Valid customConfiguration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, Object.assign( { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js index 69eb7d155b4..516bc889c33 100644 --- a/packages/project/test/lib/validation/schema/__helper__/extension.js +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -1,3 +1,4 @@ +import SpecificationVersion from "../../../../../lib/specifications/SpecificationVersion.js"; import customConfiguration from "./customConfiguration.js"; /** @@ -18,7 +19,7 @@ export default { customConfiguration.defineTests(test, assertValidation, type, additionalConfiguration); - ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + SpecificationVersion.getVersionsForRange(">=2.0").forEach((specVersion) => { test(`kind: extension / type: ${type} basic (${specVersion})`, async (t) => { await assertValidation(t, Object.assign({ "specVersion": specVersion, @@ -67,7 +68,7 @@ export default { }); }); - ["2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + SpecificationVersion.getVersionsForRange("2.0 - 2.6").forEach((specVersion) => { test(`kind: extension / type: ${type}: Invalid metadata.name (${specVersion})`, async (t) => { await assertValidation(t, Object.assign({ "specVersion": specVersion, @@ -86,7 +87,7 @@ export default { }); }); - ["3.0"].forEach((specVersion) => { + SpecificationVersion.getVersionsForRange(">=3.0").forEach((specVersion) => { test(`kind: extension / type: ${type}: Invalid metadata.name (${specVersion})`, async (t) => { await assertValidation(t, Object.assign({ "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/framework.js b/packages/project/test/lib/validation/schema/__helper__/framework.js index d8d5ffd2285..841ce8fc790 100644 --- a/packages/project/test/lib/validation/schema/__helper__/framework.js +++ b/packages/project/test/lib/validation/schema/__helper__/framework.js @@ -1,16 +1,19 @@ +import SpecificationVersion from "../../../../../lib/specifications/SpecificationVersion.js"; + /** * Common test functionality for framework section in config */ export default { /** - * Executes the tests for different types of kind project, e.g. "application", "library" and "theme-library" + * Executes the tests for different types of kind project, + * e.g. "application", library" and "theme-library" * * @param {Function} test ava test * @param {Function} assertValidation assertion function - * @param {string} type one of "application", "library" and "theme-library" + * @param {string} type one of "application", library" and "theme-library" */ defineTests: function(test, assertValidation, type) { - ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + SpecificationVersion.getVersionsForRange(">=2.0").forEach((specVersion) => { test(`${type} (specVersion ${specVersion}): framework configuration: OpenUI5`, async (t) => { const config = { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index 8d58ada78c2..baddd13c6a9 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -1,3 +1,4 @@ +import SpecificationVersion from "../../../../../lib/specifications/SpecificationVersion.js"; import framework from "./framework.js"; import customConfiguration from "./customConfiguration.js"; import bundleOptions from "./builder-bundleOptions.js"; @@ -29,7 +30,7 @@ export default { } // version specific tests - ["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + SpecificationVersion.getVersionsForRange(">=2.0").forEach((specVersion) => { // tests for all kinds and version 2.0 and above test(`${type} (specVersion ${specVersion}): No metadata`, async (t) => { await assertValidation(t, { @@ -281,7 +282,7 @@ export default { }); }); - ["3.0"].forEach((specVersion) => { + SpecificationVersion.getVersionsForRange(">=3.0").forEach((specVersion) => { test(`${type} (specVersion ${specVersion}): Invalid metadata.name`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension.js index 8fefe5bbe0f..54fbb1fdc78 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension.js @@ -1,6 +1,7 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; +import SpecificationVersion from "../../../../../../lib/specifications/SpecificationVersion.js"; import AjvCoverage from "../../../../../utils/AjvCoverage.js"; import {_Validator as Validator} from "../../../../../../lib/validation/validator.js"; import ValidationError from "../../../../../../lib/validation/ValidationError.js"; @@ -38,7 +39,8 @@ test.after.always((t) => { }; t.context.ajvCoverage.verify(thresholds); }); -["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { + +SpecificationVersion.getVersionsForRange(">=2.0").forEach((specVersion) => { test(`Type project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js index daff1b0bb12..dfad329fede 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js @@ -1,6 +1,7 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; +import SpecificationVersion from "../../../../../../../lib/specifications/SpecificationVersion.js"; import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; @@ -45,7 +46,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +SpecificationVersion.getVersionsForRange(">=2.0").forEach((specVersion) => { test(`kind: extension / type: project-shim (${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -127,7 +128,7 @@ test.after.always((t) => { }); }); -["3.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { test(`Invalid extension name (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js index f887078eb52..39b5efe6f6c 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js @@ -1,6 +1,7 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; +import SpecificationVersion from "../../../../../../../lib/specifications/SpecificationVersion.js"; import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; @@ -45,7 +46,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["3.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { test(`Invalid extension name (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js index a9dfe9452ae..f2a6a101703 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js @@ -1,6 +1,7 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; +import SpecificationVersion from "../../../../../../../lib/specifications/SpecificationVersion.js"; import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; @@ -45,7 +46,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["3.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { test(`Invalid extension name (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index 54cf855f5f6..ca005d4159a 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -1,6 +1,7 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; +import SpecificationVersion from "../../../../../../../lib/specifications/SpecificationVersion.js"; import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; @@ -45,7 +46,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.0").forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -435,7 +436,7 @@ test.after.always((t) => { keyword: "enum", message: "should be equal to one of the allowed values", params: { - allowedValues: ["3.0", "2.6", "2.5", "2.4"].includes(specVersion) ? [ + allowedValues: ["3.1", "3.0", "2.6", "2.5", "2.4"].includes(specVersion) ? [ "raw", "preload", "require", @@ -509,7 +510,7 @@ test.after.always((t) => { }); }); -["2.2", "2.1", "2.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange("2.0 - 2.2").forEach(function(specVersion) { test(`Unsupported builder/componentPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -539,7 +540,7 @@ test.after.always((t) => { }); }); -["3.0", "2.6", "2.5", "2.4", "2.3"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.3").forEach(function(specVersion) { test(`application (specVersion ${specVersion}): builder/componentPreload/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -636,7 +637,7 @@ test.after.always((t) => { }); }); -["3.0", "2.6", "2.5", "2.4"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.4").forEach(function(specVersion) { // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above test(`application (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, async (t) => { @@ -664,7 +665,7 @@ test.after.always((t) => { }); }); -["3.0", "2.6", "2.5"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.5").forEach(function(specVersion) { test(`application (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -845,7 +846,7 @@ test.after.always((t) => { }); }); -["3.0", "2.6"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.6").forEach(function(specVersion) { test(`application (specVersion ${specVersion}): builder/minification/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -942,7 +943,7 @@ test.after.always((t) => { }); }); -["3.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { test(`Invalid project name (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js index 59c3a96498d..baf248fa11e 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js @@ -1,6 +1,7 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; +import SpecificationVersion from "../../../../../../../lib/specifications/SpecificationVersion.js"; import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; @@ -45,7 +46,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.0").forEach(function(specVersion) { test(`library (specVersion ${specVersion}): Valid configuration`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -401,7 +402,7 @@ test.after.always((t) => { keyword: "enum", message: "should be equal to one of the allowed values", params: { - allowedValues: ["3.0", "2.6", "2.5", "2.4"].includes(specVersion) ? [ + allowedValues: ["3.1", "3.0", "2.6", "2.5", "2.4"].includes(specVersion) ? [ "raw", "preload", "require", @@ -564,7 +565,7 @@ test.after.always((t) => { }); }); -["2.2", "2.1", "2.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange("2.0 - 2.2").forEach(function(specVersion) { test(`Unsupported builder/libraryPreload configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -616,7 +617,7 @@ test.after.always((t) => { }); }); -["3.0", "2.6", "2.5", "2.4", "2.3"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.3").forEach(function(specVersion) { test(`library (specVersion ${specVersion}): builder/libraryPreload/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -809,7 +810,7 @@ test.after.always((t) => { }); }); -["3.0", "2.6", "2.5", "2.4"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.4").forEach(function(specVersion) { // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above test(`library (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, async (t) => { @@ -837,7 +838,7 @@ test.after.always((t) => { }); }); -["3.0", "2.6", "2.5"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.5").forEach(function(specVersion) { test(`library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -1018,7 +1019,7 @@ test.after.always((t) => { }); }); -["3.0", "2.6"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.6").forEach(function(specVersion) { test(`library (specVersion ${specVersion}): builder/minification/excludes`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -1115,7 +1116,7 @@ test.after.always((t) => { }); }); -["3.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { test(`Invalid project name (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js index 4c3b4715cfe..e49b4769c06 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js @@ -1,6 +1,7 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; +import SpecificationVersion from "../../../../../../../lib/specifications/SpecificationVersion.js"; import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; @@ -45,7 +46,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +SpecificationVersion.getVersionsForRange(">=2.0").forEach((specVersion) => { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -106,7 +107,7 @@ test.after.always((t) => { }); }); -["2.4", "2.3", "2.2", "2.1", "2.0"].forEach((specVersion) => { +SpecificationVersion.getVersionsForRange("2.0 - 2.4").forEach((specVersion) => { test(`No server configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -144,7 +145,7 @@ test.after.always((t) => { }); }); -["3.0", "2.6", "2.5"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.5").forEach(function(specVersion) { test(`Server configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -349,7 +350,7 @@ test.after.always((t) => { }); }); -["3.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { test(`Invalid project name (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -417,4 +418,25 @@ test.after.always((t) => { }); }); +SpecificationVersion.getVersionsForRange(">=3.1").forEach(function(specVersion) { + test(`Builder resource excludes (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "module", + "metadata": { + "name": "my-module" + }, + "builder": { + "resources": { + "excludes": [ + "/resources/some/project/name/test_results/**", + "!/test-resources/some/project/name/demo-app/**" + ] + } + } + }); + }); +}); + project.defineTests(test, assertValidation, "module"); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js index fb0273e1cb2..eff5bdbf047 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js @@ -1,6 +1,7 @@ import test from "ava"; import Ajv from "ajv"; import ajvErrors from "ajv-errors"; +import SpecificationVersion from "../../../../../../../lib/specifications/SpecificationVersion.js"; import AjvCoverage from "../../../../../../utils/AjvCoverage.js"; import {_Validator as Validator} from "../../../../../../../lib/validation/validator.js"; import ValidationError from "../../../../../../../lib/validation/ValidationError.js"; @@ -45,8 +46,7 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); - -["3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.0").forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -167,7 +167,7 @@ test.after.always((t) => { }); }); -["3.0", "2.6", "2.5"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=2.5").forEach(function(specVersion) { test(`theme-library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -348,7 +348,7 @@ test.after.always((t) => { }); }); -["3.0"].forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { test(`Invalid project name (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 433aed2a559..8cc1c77d77c 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -102,7 +102,7 @@ test("Invalid specVersion", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. -Supported specification versions: "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" +Supported specification versions: "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, params: { errors: [ @@ -112,6 +112,7 @@ For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specifi message: "should be equal to one of the allowed values", params: { allowedValues: [ + "3.1", "3.0", "2.6", "2.5", From f1fadcf7d53b515eb8ddc34b1fee47b9a41833f7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 22 Aug 2023 14:13:31 +0200 Subject: [PATCH 0977/1272] [ui5-project][INTERNAL] Use specVersion 3.1 in all fixtures --- .../project/test/fixtures/application.a.aliases/ui5.yaml | 6 +++--- packages/project/test/lib/graph/helpers/ui5Framework.js | 2 +- packages/project/test/lib/graph/projectGraphBuilder.js | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/test/fixtures/application.a.aliases/ui5.yaml b/packages/project/test/fixtures/application.a.aliases/ui5.yaml index bdc9a31f8fe..82579b7d86a 100644 --- a/packages/project/test/fixtures/application.a.aliases/ui5.yaml +++ b/packages/project/test/fixtures/application.a.aliases/ui5.yaml @@ -1,11 +1,11 @@ --- -specVersion: "3.0" +specVersion: "3.1" type: application metadata: name: application.a.aliases --- # Everything below this line could also be put into the ui5.yaml of a standalone extension module -specVersion: "3.0" +specVersion: "3.1" kind: extension type: project-shim metadata: @@ -13,7 +13,7 @@ metadata: shims: configurations: extension.a.esm.alias: # name as defined in package.json - specVersion: "3.0" + specVersion: "3.1" type: module # Use module type metadata: name: extension.a.esm.alias diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index d5574912664..79ea8d70873 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -898,7 +898,7 @@ test.serial("enrichProjectGraph should throw error when projectGraph contains a version: "1.100.0", modulePath: libraryEPath, configuration: { - specVersion: "3.0", + specVersion: "3.1", kind: "project", type: "library", metadata: { diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index 940a0f3d92b..60bf3829d1e 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -700,7 +700,7 @@ test("Define external dependency as shims in sub-module", async (t) => { shims: { configurations: { "external-thirdparty": { - specVersion: "3.0", + specVersion: "3.1", type: "module", metadata: {name: "external-thirdparty"}, resources: { From 125c6ee21f4b280b635f3846e1f11da2962f8f41 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 22 Aug 2023 13:07:14 +0200 Subject: [PATCH 0978/1272] [ui5-project][FEATURE] AbstractResolver: Resolve version ranges specifying major version only For example 'ui5 use 1' should resolve to the latest 1.x.x version --- .../lib/ui5Framework/AbstractResolver.js | 24 +++--- .../test/lib/ui5framework/AbstractResolver.js | 73 +++++++++++++++---- 2 files changed, 72 insertions(+), 25 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 0f11aa74f7e..0a6e9e70c1b 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -14,8 +14,8 @@ import semver from "semver"; const SEMVER_VERSION_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/; // Reduced Semantic Versioning pattern -// Matches MAJOR.MINOR as a simple version range to be resolved to the latest patch -const VERSION_RANGE_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-SNAPSHOT)?$/; +// Matches MAJOR or MAJOR.MINOR as a simple version range to be resolved to the latest minor/patch +const VERSION_RANGE_REGEXP = /^(0|[1-9]\d*)(?:\.(0|[1-9]\d*))?(?:-SNAPSHOT)?$/; /** * Abstract Resolver @@ -223,16 +223,20 @@ class AbstractResolver { } else if (SEMVER_VERSION_REGEXP.test(version)) { // Fully qualified version, can be used directly spec = version; - } else if (VERSION_RANGE_REGEXP.test(version)) { - if (isSnapshotVersion) { - // For snapshot version ranges we need to insert a stand-in "x" for the patch level - // in order to make the semver check work: "1.112-SNAPSHOT" becomes "1.112.x-SNAPSHOT" - spec = version.replace(/-SNAPSHOT$/, ".x-SNAPSHOT"); + } else { + const versionMatch = version.match(VERSION_RANGE_REGEXP); + if (versionMatch) { + if (isSnapshotVersion) { + // For snapshot version ranges we need to insert a stand-in "x" for the patch level + // and - in case none is provided - another "x" for the major version in order to + // make the semver check work: "1-SNAPSHOT" or "1.112-SNAPSHOT" becomes "1.112.x-SNAPSHOT" + spec = `${versionMatch[1]}.${versionMatch[2] || "x"}.x-SNAPSHOT`; + } else { + spec = version; + } } else { - spec = version; + throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); } - } else { - throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); } const versions = await this.fetchAllVersions({ui5HomeDir, cwd}); const resolvedVersion = semver.maxSatisfying(versions, spec, { diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 49b9f8cca4d..6a6c98c4c4a 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -576,6 +576,44 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'latest'", async ( }], "fetchAllVersions should be called with expected arguments"); }); +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR'", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0"]); + + const version = await MyResolver.resolveVersion("1", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.76.0", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR-prerelease'", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.76.0", "1.77.0", "1.77.0-SNAPSHOT", "1.78.0", "1.79.0-SNAPSHOT"]); + + const version = await MyResolver.resolveVersion("1-SNAPSHOT", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.79.0-SNAPSHOT", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR'", async (t) => { const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") @@ -595,6 +633,25 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR'", as }], "fetchAllVersions should be called with expected arguments"); }); +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR-prerelease'", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.76.0", "1.77.0", "1.77.0-SNAPSHOT", "1.78.0", "1.79.0-SNAPSHOT"]); + + const version = await MyResolver.resolveVersion("1.79-SNAPSHOT", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.79.0-SNAPSHOT", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH'", async (t) => { const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") @@ -617,7 +674,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH-prerelease'", async (t) => { const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") - .returns(["1.76.0", "1.77.0", "1.78.0", "1.79.0-SNAPSHOT"]); + .returns(["1.76.0", "1.77.0", "1.77.0-SNAPSHOT", "1.78.0", "1.79.0-SNAPSHOT"]); const version = await MyResolver.resolveVersion("1.79.0-SNAPSHOT", { cwd: "/cwd", @@ -758,20 +815,6 @@ test.serial("AbstractResolver: Static resolveVersion throws error for 'lts'", as t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); }); -test.serial("AbstractResolver: Static resolveVersion throws error for '1'", async (t) => { - const {MyResolver} = t.context; - const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); - - const error = await t.throwsAsync(MyResolver.resolveVersion("1", { - cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" - })); - - t.is(error.message, `Framework version specifier "1" is incorrect or not supported`); - - t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); -}); - test.serial("AbstractResolver: Static resolveVersion throws error for '1.x'", async (t) => { const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); From 9fb5079368b46f3eddbd898fde1d90444b9762d9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 22 Aug 2023 13:06:26 +0000 Subject: [PATCH 0979/1272] [ui5-project]Release 3.6.0 --- packages/project/CHANGELOG.md | 10 +++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 8658244c7a2..99f045089aa 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,14 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.5.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.6.0...HEAD). + + +## [v3.6.0] - 2023-08-22 +### Features +- Add specVersion 3.1 and builder resource excludes for modules ([#639](https://github.com/SAP/ui5-project/issues/639)) [`2ac053e`](https://github.com/SAP/ui5-project/commit/2ac053ef299bbaf02e73e12e2876f301d2b07d1b) +- **AbstractResolver:** Resolve version ranges specifying major version only [`1f8cfdf`](https://github.com/SAP/ui5-project/commit/1f8cfdf3c72745904fbdceab049ae5d2cbf86b06) + ## [v3.5.1] - 2023-08-18 @@ -437,6 +444,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.6.0]: https://github.com/SAP/ui5-project/compare/v3.5.1...v3.6.0 [v3.5.1]: https://github.com/SAP/ui5-project/compare/v3.5.0...v3.5.1 [v3.5.0]: https://github.com/SAP/ui5-project/compare/v3.4.2...v3.5.0 [v3.4.2]: https://github.com/SAP/ui5-project/compare/v3.4.1...v3.4.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c371efb282a..239772749ec 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.5.1", + "version": "3.6.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.5.1", + "version": "3.6.0", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^6.2.1", diff --git a/packages/project/package.json b/packages/project/package.json index 87e45527eed..ec93015f964 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.5.1", + "version": "3.6.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From aec32794eb3a3edf9aa80929735edc6b0d28220f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 23 Aug 2023 11:09:08 +0200 Subject: [PATCH 0980/1272] [ui5-project][FIX] NodePackageDependencies: Implement validation for missing package.json attributes Resolves https://github.com/SAP/ui5-tooling/issues/862 --- .../lib/graph/providers/NodePackageDependencies.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js index ada50f406ed..befb8c897cf 100644 --- a/packages/project/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -46,7 +46,15 @@ class NodePackageDependencies { throw new Error( `Failed to locate package.json for directory ${path.resolve(this._cwd)}`); } + const modulePath = path.dirname(rootPkg.path); + if (!rootPkg.packageJson.name) { + throw new Error(`Missing 'name' attribute in package.json at ${modulePath}`); + } + if (!rootPkg.packageJson.version) { + throw new Error(`Missing 'version' attribute in package.json at ${modulePath}`); + } + return { id: rootPkg.packageJson.name, version: rootPkg.packageJson.version, From dea76284222e2866221c6eb93a499066c1c58ac7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 23 Aug 2023 11:21:55 +0200 Subject: [PATCH 0981/1272] [ui5-project][FIX] ProjectGraph: Improve error message when adding duplicate projects or extensions --- packages/project/lib/graph/ProjectGraph.js | 6 ++++-- packages/project/test/lib/graph/ProjectGraph.js | 6 ++++-- packages/project/test/lib/graph/projectGraphBuilder.js | 4 +++- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 00d8973e3ce..af9861e0dfe 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -58,7 +58,8 @@ class ProjectGraph { const projectName = project.getName(); if (this._projects.has(projectName)) { throw new Error( - `Failed to add project ${projectName} to graph: A project with that name has already been added`); + `Failed to add project ${projectName} to graph: A project with that name has already been added. ` + + `This might be caused by multiple modules containing projects with the same name`); } if (!isNaN(projectName)) { // Reject integer-like project names. They would take precedence when traversing object keys which @@ -126,7 +127,8 @@ class ProjectGraph { if (this._extensions.has(extensionName)) { throw new Error( `Failed to add extension ${extensionName} to graph: ` + - `An extension with that name has already been added`); + `An extension with that name has already been added. ` + + `This might be caused by multiple modules containing extensions with the same name`); } if (!isNaN(extensionName)) { // Reject integer-like extension names. They would take precedence when traversing object keys which diff --git a/packages/project/test/lib/graph/ProjectGraph.js b/packages/project/test/lib/graph/ProjectGraph.js index ea0a3e198fb..ed2338bc85b 100644 --- a/packages/project/test/lib/graph/ProjectGraph.js +++ b/packages/project/test/lib/graph/ProjectGraph.js @@ -154,7 +154,8 @@ test("addProject: Add duplicate", async (t) => { graph.addProject(project2); }); t.is(error.message, - "Failed to add project application.a to graph: A project with that name has already been added", + "Failed to add project application.a to graph: A project with that name has already been added. " + + "This might be caused by multiple modules containing projects with the same name", "Should throw with expected error message"); const res = graph.getProject("application.a"); @@ -261,7 +262,8 @@ test("addExtension: Add duplicate", async (t) => { graph.addExtension(extension2); }); t.is(error.message, - "Failed to add extension extension.a to graph: An extension with that name has already been added", + "Failed to add extension extension.a to graph: An extension with that name has already been added. " + + "This might be caused by multiple modules containing extensions with the same name", "Should throw with expected error message"); const res = graph.getExtension("extension.a"); diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index 60bf3829d1e..8229f31039e 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -961,6 +961,8 @@ test("Multiple dependencies to different module containing the same extension", }), ]); await t.throwsAsync(projectGraphBuilder(t.context.provider), { - message: "Failed to add extension task-a to graph: An extension with that name has already been added" + message: + "Failed to add extension task-a to graph: An extension with that name has already been added. " + + "This might be caused by multiple modules containing extensions with the same name" }); }); From 88fed25cb9191c6b044593128eee67b1ce5f821a Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 24 Aug 2023 17:38:53 +0200 Subject: [PATCH 0982/1272] [ui5-project][INTERNAL] Add tests for NodePackageDependencies changes, adjust error message --- .../providers/NodePackageDependencies.js | 4 +- .../providers/NodePackageDependencies.js | 54 +++++++++++++++++++ 2 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 packages/project/test/lib/graph/providers/NodePackageDependencies.js diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js index befb8c897cf..e08314ba6ee 100644 --- a/packages/project/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -49,10 +49,10 @@ class NodePackageDependencies { const modulePath = path.dirname(rootPkg.path); if (!rootPkg.packageJson.name) { - throw new Error(`Missing 'name' attribute in package.json at ${modulePath}`); + throw new Error(`Missing or empty 'name' attribute in package.json at ${modulePath}`); } if (!rootPkg.packageJson.version) { - throw new Error(`Missing 'version' attribute in package.json at ${modulePath}`); + throw new Error(`Missing or empty 'version' attribute in package.json at ${modulePath}`); } return { diff --git a/packages/project/test/lib/graph/providers/NodePackageDependencies.js b/packages/project/test/lib/graph/providers/NodePackageDependencies.js new file mode 100644 index 00000000000..3965c569d62 --- /dev/null +++ b/packages/project/test/lib/graph/providers/NodePackageDependencies.js @@ -0,0 +1,54 @@ +import test from "ava"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; + +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.readPackageUp = sinon.stub(); + + t.context.NodePackageDependencies = await esmock("../../../../lib/graph/providers/NodePackageDependencies.js", { + "read-pkg-up": { + readPackageUp: t.context.readPackageUp + } + }); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); +}); + +test("getRootNode should reject with error when 'name' is empty/missing in package.json", async (t) => { + const {NodePackageDependencies, readPackageUp} = t.context; + + const resolver = new NodePackageDependencies({cwd: "cwd"}); + + readPackageUp.resolves({ + path: "/path/to/root/package.json", + packageJson: { + name: "" + } + }); + + await t.throwsAsync(() => resolver.getRootNode(), { + message: "Missing or empty 'name' attribute in package.json at /path/to/root" + }); +}); + +test("getRootNode should reject with error when 'version' is empty/missing in package.json", async (t) => { + const {NodePackageDependencies, readPackageUp} = t.context; + + const resolver = new NodePackageDependencies({cwd: "cwd"}); + + readPackageUp.resolves({ + path: "/path/to/root/package.json", + packageJson: { + name: "test-package-name", + version: "" + } + }); + + await t.throwsAsync(() => resolver.getRootNode(), { + message: "Missing or empty 'version' attribute in package.json at /path/to/root" + }); +}); From 6c02ba1d79c5ab2b2ec0d13d61105b9e088dc603 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 27 Aug 2023 02:20:17 +0000 Subject: [PATCH 0983/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 430 +++++++++++++++++++---------- packages/project/package.json | 10 +- 2 files changed, 286 insertions(+), 154 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 239772749ec..38ddd2da174 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -25,8 +25,8 @@ "node-stream-zip": "^1.15.0", "pacote": "^15.2.0", "pretty-hrtime": "^1.0.3", - "read-pkg": "^8.0.0", - "read-pkg-up": "^10.0.0", + "read-pkg": "^8.1.0", + "read-pkg-up": "^10.1.0", "resolve": "^1.22.4", "rimraf": "^5.0.1", "semver": "^7.5.4", @@ -38,12 +38,12 @@ "ava": "^5.3.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", - "depcheck": "^1.4.3", + "depcheck": "^1.4.5", "docdash": "^2.0.1", - "eslint": "^8.47.0", + "eslint": "^8.48.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.4.6", + "eslint-plugin-jsdoc": "^46.5.0", "esmock": "^2.3.8", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", @@ -161,9 +161,9 @@ } }, "node_modules/@babel/core": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", - "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.11.tgz", + "integrity": "sha512-lh7RJrtPdhibbxndr6/xx0w8+CVlY5FJZiaSz908Fpy+G0xkBFTvwLcKJFF4PJxVfGhVWNebikpWGnOoC71juQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -171,15 +171,15 @@ "@babel/generator": "^7.22.10", "@babel/helper-compilation-targets": "^7.22.10", "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.10", - "@babel/parser": "^7.22.10", + "@babel/helpers": "^7.22.11", + "@babel/parser": "^7.22.11", "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10", + "@babel/traverse": "^7.22.11", + "@babel/types": "^7.22.11", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", + "json5": "^2.2.3", "semver": "^6.3.1" }, "engines": { @@ -364,14 +364,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", - "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.11.tgz", + "integrity": "sha512-vyOXC8PBWaGc5h7GMsNx68OH33cypkEDJCHvYVVgVbbxJDROYVtexSk0gK5iCF1xNjRIN2s8ai7hwkWDq5szWg==", "dev": true, "dependencies": { "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10" + "@babel/traverse": "^7.22.11", + "@babel/types": "^7.22.11" }, "engines": { "node": ">=6.9.0" @@ -442,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", - "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.11.tgz", + "integrity": "sha512-R5zb8eJIBPJriQtbH/htEQy4k7E2dHWlD2Y2VT07JCzwYZHBxV5ZYtM0UhXSNMT74LyxuM+b1jdL7pSesXbC/g==", "bin": { "parser": "bin/babel-parser.js" }, @@ -467,9 +467,9 @@ } }, "node_modules/@babel/traverse": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", - "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.11.tgz", + "integrity": "sha512-mzAenteTfomcB7mfPtyi+4oe5BZ6MXxWcn4CX+h4IRJ+OOGXBrWU6jDQavkQI9Vuc5P+donFabBfFCcmWka9lQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.22.10", @@ -478,8 +478,8 @@ "@babel/helper-function-name": "^7.22.5", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.10", - "@babel/types": "^7.22.10", + "@babel/parser": "^7.22.11", + "@babel/types": "^7.22.11", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -488,9 +488,9 @@ } }, "node_modules/@babel/types": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", - "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.11.tgz", + "integrity": "sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.22.5", @@ -531,9 +531,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", - "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.0.tgz", + "integrity": "sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -612,9 +612,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.47.0.tgz", - "integrity": "sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==", + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", + "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1953,6 +1953,15 @@ "typedarray-to-buffer": "^3.1.5" } }, + "node_modules/callsite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", + "integrity": "sha512-0vdNRFXn5q+dtOqjfFtmtlI9N2eVZ7LMyEV2iKC5mEEFvSg/69Ml6b/WU2qF8W1nLRa0wiSrDT3Y5jOHZCwKPQ==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/callsites": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.1.0.tgz", @@ -2017,9 +2026,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001522", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001522.tgz", - "integrity": "sha512-TKiyTVZxJGhsTszLuzb+6vUZSjVOAhClszBr2Ta2k9IwtNBT/4dzmL6aywt0HCgEZlmwJzXJd8yNiob6HgwTRg==", + "version": "1.0.30001523", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001523.tgz", + "integrity": "sha512-I5q5cisATTPZ1mc588Z//pj/Ox80ERYDfR71YnvY7raS/NOk8xXlZcB0sF7JdqaV//kOaa6aus7lRfpdnt1eBA==", "dev": true, "funding": [ { @@ -2900,18 +2909,20 @@ "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" }, "node_modules/depcheck": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.3.tgz", - "integrity": "sha512-vy8xe1tlLFu7t4jFyoirMmOR7x7N601ubU9Gkifyr9z8rjBFtEdWHDBMqXyk6OkK+94NXutzddVXJuo0JlUQKQ==", + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.5.tgz", + "integrity": "sha512-bgt8SfRJ5UQi+uieuTnx6Vd++xJaP7g28FwxM8pZlXHAVXe6mKfSyDDtTfKpF5PS5S6PrgW/o13CYn8YuWDnbQ==", "dev": true, "dependencies": { - "@babel/parser": "7.16.4", - "@babel/traverse": "^7.12.5", + "@babel/parser": "7.22.5", + "@babel/traverse": "7.22.5", "@vue/compiler-sfc": "^3.0.5", + "callsite": "^1.0.0", "camelcase": "^6.2.0", "cosmiconfig": "^7.0.0", "debug": "^4.2.0", "deps-regex": "^0.1.4", + "findup-sync": "^5.0.0", "ignore": "^5.1.8", "is-core-module": "^2.4.0", "js-yaml": "^3.14.0", @@ -2920,12 +2931,11 @@ "minimatch": "^3.0.4", "multimatch": "^5.0.0", "please-upgrade-node": "^3.2.0", - "query-ast": "^1.0.3", "readdirp": "^3.5.0", "require-package-name": "^2.0.1", "resolve": "^1.18.1", - "sass": "^1.29.0", - "scss-parser": "^1.0.4", + "resolve-from": "^5.0.0", + "sass": "^1.50.1", "semver": "^7.3.2", "yargs": "^16.1.0" }, @@ -2937,9 +2947,9 @@ } }, "node_modules/depcheck/node_modules/@babel/parser": { - "version": "7.16.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", - "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz", + "integrity": "sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -2948,6 +2958,27 @@ "node": ">=6.0.0" } }, + "node_modules/depcheck/node_modules/@babel/traverse": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.5.tgz", + "integrity": "sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/depcheck/node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -3119,6 +3150,15 @@ "integrity": "sha512-3tzwGYogSJi8HoG93R5x9NrdefZQOXgHgGih/7eivloOq6yC6O+yoFxZnkgP661twvfILONfoKRdF9GQOGx2RA==", "dev": true }, + "node_modules/detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/diff": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", @@ -3256,9 +3296,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.496", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.496.tgz", - "integrity": "sha512-qeXC3Zbykq44RCrBa4kr8v/dWzYJA8rAwpyh9Qd+NKWoJfjG5vvJqy9XOJ9H4P/lqulZBCgUWAYi+FeK5AuJ8g==", + "version": "1.4.503", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.503.tgz", + "integrity": "sha512-LF2IQit4B0VrUHFeQkWhZm97KuJSGF2WJqq1InpY+ECpFRkXd8yTIaTtJxsO0OKDmiBYwWqcrNaXOurn2T2wiA==", "dev": true }, "node_modules/emittery": { @@ -3378,15 +3418,15 @@ } }, "node_modules/eslint": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz", - "integrity": "sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==", + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", + "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "^8.47.0", + "@eslint/js": "8.48.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3466,9 +3506,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.4.6", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.4.6.tgz", - "integrity": "sha512-z4SWYnJfOqftZI+b3RM9AtWL1vF/sLWE/LlO9yOKDof9yN2+n3zOdOJTGX/pRE/xnPsooOLG2Rq6e4d+XW3lNw==", + "version": "46.5.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.5.0.tgz", + "integrity": "sha512-aulXdA4I1dyWpzyS1Nh/GNoS6PavzeucxEapnMR4JUERowWvaEk2Y4A5irpHAcdXtBBHLVe8WIhdXNjoAlGQgA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.40.1", @@ -3921,6 +3961,18 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, + "node_modules/expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", + "dev": true, + "dependencies": { + "homedir-polyfill": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/exponential-backoff": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", @@ -4092,17 +4144,33 @@ "node": ">=8" } }, + "node_modules/findup-sync": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-5.0.0.tgz", + "integrity": "sha512-MzwXju70AuyflbgeOhzvQWAvvQdo1XL0A9bVvlXsYcFEBM87WR4OakL4OfZq+QRmr+duJubio+UtNQCPsVESzQ==", + "dev": true, + "dependencies": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.3", + "micromatch": "^4.0.4", + "resolve-dir": "^1.0.1" + }, + "engines": { + "node": ">= 10.13.0" + } + }, "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", + "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", "dev": true, "dependencies": { - "flatted": "^3.1.0", + "flatted": "^3.2.7", + "keyv": "^4.5.3", "rimraf": "^3.0.2" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=12.0.0" } }, "node_modules/flat-cache/node_modules/brace-expansion": { @@ -4220,9 +4288,9 @@ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "optional": true, @@ -4363,6 +4431,54 @@ "node": ">= 6" } }, + "node_modules/global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "dependencies": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", + "dev": true, + "dependencies": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/global-prefix/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, "node_modules/globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", @@ -4451,6 +4567,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dev": true, + "dependencies": { + "parse-passwd": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/hosted-git-info": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz", @@ -4604,9 +4732,9 @@ } }, "node_modules/immutable": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", - "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.4.tgz", + "integrity": "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==", "dev": true }, "node_modules/import-fresh": { @@ -4688,15 +4816,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "dependencies": { - "loose-envify": "^1.0.0" - } - }, "node_modules/ip": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", @@ -5320,6 +5439,12 @@ "node": ">=4" } }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", @@ -5363,6 +5488,15 @@ "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", "dev": true }, + "node_modules/keyv": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", + "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, "node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -5493,18 +5627,6 @@ "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", "dev": true }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, "node_modules/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", @@ -5515,9 +5637,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.2.tgz", - "integrity": "sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==", + "version": "0.30.3", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.3.tgz", + "integrity": "sha512-B7xGbll2fG/VjP+SWg4sX3JynwIU0mjoTc6MPpKNuIvftk6u6vqhDnk1R80b8C2GBR6ywqy+1DcKBrevBg+bmw==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -7277,6 +7399,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/parse5": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", @@ -7720,16 +7851,6 @@ "node": ">=6" } }, - "node_modules/query-ast": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/query-ast/-/query-ast-1.0.5.tgz", - "integrity": "sha512-JK+1ma4YDuLjvKKcz9JZ70G+CM9qEOs/l1cZzstMMfwKUabTJ9sud5jvDGrUNuv03yKUgs82bLkHXJkDyhRmBw==", - "dev": true, - "dependencies": { - "invariant": "2.2.4", - "lodash": "^4.17.21" - } - }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -7848,14 +7969,14 @@ } }, "node_modules/read-pkg": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.0.0.tgz", - "integrity": "sha512-Ajb9oSjxXBw0YyOiwtQ2dKbAA/vMnUPnY63XcCk+mXo0BwIdQEMgZLZiMWGttQHcUhUgbK0mH85ethMPKXxziw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", + "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", "dependencies": { "@types/normalize-package-data": "^2.4.1", - "normalize-package-data": "^5.0.0", + "normalize-package-data": "^6.0.0", "parse-json": "^7.0.0", - "type-fest": "^3.8.0" + "type-fest": "^4.2.0" }, "engines": { "node": ">=16" @@ -7865,13 +7986,13 @@ } }, "node_modules/read-pkg-up": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-10.0.0.tgz", - "integrity": "sha512-jgmKiS//w2Zs+YbX039CorlkOp8FIVbSAN8r8GJHDsGlmNPXo+VeHkqAwCiQVTTx5/LwLZTcEw59z3DvcLbr0g==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-10.1.0.tgz", + "integrity": "sha512-aNtBq4jR8NawpKJQldrQcSW9y/d+KWH4v24HWkHljOZ7H0av+YTGANBzRh9A5pw7v/bLVsLVPpOhJ7gHNVy8lA==", "dependencies": { "find-up": "^6.3.0", - "read-pkg": "^8.0.0", - "type-fest": "^3.12.0" + "read-pkg": "^8.1.0", + "type-fest": "^4.2.0" }, "engines": { "node": ">=16" @@ -7946,11 +8067,11 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.0.tgz", + "integrity": "sha512-XbMcLhoaaX/vw1S8jTKysTlznqSPxDXj1Jf56neDMksT1xoKr02pFAhHhDbW9bFejktlwKto18/UsdXlnUCBMg==", "engines": { - "node": ">=14.16" + "node": ">=16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7968,14 +8089,14 @@ } }, "node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.0.tgz", + "integrity": "sha512-ICclEpTLhHj+zCuSb2/usoNXSVkxUSIopre+b1w8NDY9Dntp9LO4vLdHYI336TH8sAqwrRgnSfdkBG2/YpisHA==", "dependencies": { - "lru-cache": "^7.5.1" + "lru-cache": "^10.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/read-pkg/node_modules/json-parse-even-better-errors": { @@ -7995,25 +8116,25 @@ } }, "node_modules/read-pkg/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", - "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", "dependencies": { - "hosted-git-info": "^6.0.0", + "hosted-git-info": "^7.0.0", "is-core-module": "^2.8.1", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/read-pkg/node_modules/parse-json": { @@ -8034,7 +8155,7 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg/node_modules/type-fest": { + "node_modules/read-pkg/node_modules/parse-json/node_modules/type-fest": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", @@ -8045,6 +8166,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.0.tgz", + "integrity": "sha512-XbMcLhoaaX/vw1S8jTKysTlznqSPxDXj1Jf56neDMksT1xoKr02pFAhHhDbW9bFejktlwKto18/UsdXlnUCBMg==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/readable-stream": { "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", @@ -8171,6 +8303,19 @@ "node": ">=8" } }, + "node_modules/resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", + "dev": true, + "dependencies": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", @@ -8381,19 +8526,6 @@ "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, - "node_modules/scss-parser": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/scss-parser/-/scss-parser-1.0.6.tgz", - "integrity": "sha512-SH3TaoaJFzfAtqs3eG1j5IuHJkeEW5rKUPIjIN+ZorLAyJLHItQGnsgwHk76v25GtLtpT9IqfAcqK4vFWdiw+w==", - "dev": true, - "dependencies": { - "invariant": "2.2.4", - "lodash": "4.17.21" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", @@ -9668,9 +9800,9 @@ } }, "node_modules/workerpool": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.4.1.tgz", - "integrity": "sha512-zIK7qRgM1Mk+ySxOJl7ZpjX6SlKt5gugxzl8eXHPdbpXX8iDAaVIxYJz4Apn6JdDxP2buY/Ekqg0bOLNSf0u0g==" + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.4.2.tgz", + "integrity": "sha512-MrDWwemtC4xNV22kbbZDQQQmxNX+yLm790sgYl2wVD3CWnK7LJY1youI/11wHorAjHjK+GEjUxUh74XoPU71uQ==" }, "node_modules/wrap-ansi": { "version": "8.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index ec93015f964..b8a793e7b25 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -136,8 +136,8 @@ "node-stream-zip": "^1.15.0", "pacote": "^15.2.0", "pretty-hrtime": "^1.0.3", - "read-pkg": "^8.0.0", - "read-pkg-up": "^10.0.0", + "read-pkg": "^8.1.0", + "read-pkg-up": "^10.1.0", "resolve": "^1.22.4", "rimraf": "^5.0.1", "semver": "^7.5.4", @@ -149,12 +149,12 @@ "ava": "^5.3.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", - "depcheck": "^1.4.3", + "depcheck": "^1.4.5", "docdash": "^2.0.1", - "eslint": "^8.47.0", + "eslint": "^8.48.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.4.6", + "eslint-plugin-jsdoc": "^46.5.0", "esmock": "^2.3.8", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", From 4902bf92663df667d1c28fef08b4222b1badc570 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 1 Sep 2023 11:26:01 +0200 Subject: [PATCH 0984/1272] [ui5-project][FIX] pacote: Use npm cache within UI5 data dir Fixes regression from https://github.com/SAP/ui5-project/pull/618 --- packages/project/lib/ui5Framework/npm/Registry.js | 3 +++ .../test/lib/graph/helpers/ui5Framework.integration.js | 1 - packages/project/test/lib/ui5framework/npm/Registry.js | 9 ++++++--- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index 73cc9947bf8..fb678be539d 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -72,6 +72,9 @@ class Registry { await configuration.load(); // Reads through the configurations const config = configuration.flat; // JSON. Formatted via "flatten" + // Always use our cache dir instead of the configured one + config.cache = this._cacheDir; + if (!config.proxy && !config.httpsProxy) { // Disable usage of shared keep-alive agents unless a proxy is configured // which only works with agents. diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index a989f3a31b9..3eec2a802ae 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -45,7 +45,6 @@ test.beforeEach(async (t) => { } sinon.stub(Config.prototype, "flat").value({ registry: "https://registry.fake", - cache: path.join(ui5FrameworkBaseDir, "cacache"), proxy: "" }); diff --git a/packages/project/test/lib/ui5framework/npm/Registry.js b/packages/project/test/lib/ui5framework/npm/Registry.js index 6fb430244f4..01436837b1e 100644 --- a/packages/project/test/lib/ui5framework/npm/Registry.js +++ b/packages/project/test/lib/ui5framework/npm/Registry.js @@ -77,7 +77,8 @@ test.serial("_getPacoteOptions", async (t) => { const expectedPacoteOptions = { fake: "config", - agent: false + agent: false, + cache: "cacheDir" }; npmConfigFlat.value(npmConfig); @@ -109,7 +110,8 @@ test.serial("_getPacoteOptions (proxy config set)", async (t) => { }; const expectedPacoteOptions = { - proxy: "http://localhost:9999" + proxy: "http://localhost:9999", + cache: "cacheDir" }; npmConfigFlat.value(npmConfig); @@ -134,7 +136,8 @@ test.serial("_getPacoteOptions (https-proxy config set)", async (t) => { }; const expectedPacoteOptions = { - httpsProxy: "http://localhost:9999" + httpsProxy: "http://localhost:9999", + cache: "cacheDir" }; npmConfigFlat.value(npmConfig); From 0ee7af2b6435854065c212f290306807e51fdc1b Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 1 Sep 2023 13:38:43 +0200 Subject: [PATCH 0985/1272] [ui5-project][INTERNAL] Dependabot: Enable auto merge for minor/patch github actions updates --- .../workflows/dependabot-auto-merge.yml | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 packages/project/.github/workflows/dependabot-auto-merge.yml diff --git a/packages/project/.github/workflows/dependabot-auto-merge.yml b/packages/project/.github/workflows/dependabot-auto-merge.yml new file mode 100644 index 00000000000..c62a1a20d19 --- /dev/null +++ b/packages/project/.github/workflows/dependabot-auto-merge.yml @@ -0,0 +1,26 @@ +name: Dependabot auto-merge +on: + pull_request: + branches: + - main + +permissions: + contents: write + pull-requests: write + +jobs: + dependabot: + runs-on: ubuntu-latest + if: ${{ github.actor == 'dependabot[bot]' && contains(github.event.pull_request.labels.*.name, 'github_actions') }} + steps: + - name: Dependabot metadata + id: metadata + uses: dependabot/fetch-metadata@v1 + with: + github-token: "${{ secrets.GITHUB_TOKEN }}" + - name: Enable auto-merge for Dependabot PRs + if: ${{ contains(fromJSON('["version-update:semver-minor", "version-update:semver-patch"]'), steps.metadata.outputs.update-type) }} + run: gh pr review --approve "$PR_URL" && gh pr merge --auto --rebase "$PR_URL" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 9cf7885c403eea28b504512fe027f41568c95213 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 3 Sep 2023 02:20:17 +0000 Subject: [PATCH 0986/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 108 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 56 insertions(+), 56 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 38ddd2da174..1459f67ce56 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,11 +39,11 @@ "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.5", - "docdash": "^2.0.1", + "docdash": "^2.0.2", "eslint": "^8.48.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.5.0", + "eslint-plugin-jsdoc": "^46.5.1", "esmock": "^2.3.8", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", @@ -89,11 +89,11 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", - "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", "dependencies": { - "@babel/highlight": "^7.22.10", + "@babel/highlight": "^7.22.13", "chalk": "^2.4.2" }, "engines": { @@ -378,9 +378,9 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", - "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz", + "integrity": "sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==", "dependencies": { "@babel/helper-validator-identifier": "^7.22.5", "chalk": "^2.4.2", @@ -442,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.11.tgz", - "integrity": "sha512-R5zb8eJIBPJriQtbH/htEQy4k7E2dHWlD2Y2VT07JCzwYZHBxV5ZYtM0UhXSNMT74LyxuM+b1jdL7pSesXbC/g==", + "version": "7.22.14", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.14.tgz", + "integrity": "sha512-1KucTHgOvaw/LzCVrEOAyXkr9rQlp0A1HiHRYnSUE9dmb8PvPW7o5sscg+5169r54n3vGlbx6GevTE/Iw/P3AQ==", "bin": { "parser": "bin/babel-parser.js" }, @@ -621,9 +621,9 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", - "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", + "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -1176,9 +1176,9 @@ } }, "node_modules/@types/linkify-it": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", - "integrity": "sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.3.tgz", + "integrity": "sha512-pTjcqY9E4nOI55Wgpz7eiI8+LzdYnw3qxXCfHyBDdPbYvbyLgWLJGh8EdPvqawwMK1Uo1794AUkkR38Fr0g+2g==" }, "node_modules/@types/markdown-it": { "version": "12.2.3", @@ -2026,9 +2026,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001523", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001523.tgz", - "integrity": "sha512-I5q5cisATTPZ1mc588Z//pj/Ox80ERYDfR71YnvY7raS/NOk8xXlZcB0sF7JdqaV//kOaa6aus7lRfpdnt1eBA==", + "version": "1.0.30001525", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001525.tgz", + "integrity": "sha512-/3z+wB4icFt3r0USMwxujAqRvaD/B7rvGTsKhbhSQErVrJvkZCLhgNLJxU8MevahQVH6hCU9FsHdNUFbiwmE7Q==", "dev": true, "funding": [ { @@ -3180,9 +3180,9 @@ } }, "node_modules/docdash": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/docdash/-/docdash-2.0.1.tgz", - "integrity": "sha512-mkBhkeMyMwGV4YIdA7S4dIC25ENrfU/ZBfyTs/MXj/HUewW/dtx44xoho4PttCOMsqxlcghzfj8HRlam5QiSoQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/docdash/-/docdash-2.0.2.tgz", + "integrity": "sha512-3SDDheh9ddrwjzf6dPFe1a16M6ftstqTNjik2+1fx46l24H9dD2osT2q9y+nBEC1wWz4GIqA48JmicOLQ0R8xA==", "dev": true, "dependencies": { "@jsdoc/salty": "^0.2.1" @@ -3296,9 +3296,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.503", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.503.tgz", - "integrity": "sha512-LF2IQit4B0VrUHFeQkWhZm97KuJSGF2WJqq1InpY+ECpFRkXd8yTIaTtJxsO0OKDmiBYwWqcrNaXOurn2T2wiA==", + "version": "1.4.508", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.508.tgz", + "integrity": "sha512-FFa8QKjQK/A5QuFr2167myhMesGrhlOBD+3cYNxO9/S4XzHEXesyTD/1/xF644gC8buFPz3ca6G1LOQD0tZrrg==", "dev": true }, "node_modules/emittery": { @@ -3506,9 +3506,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.5.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.5.0.tgz", - "integrity": "sha512-aulXdA4I1dyWpzyS1Nh/GNoS6PavzeucxEapnMR4JUERowWvaEk2Y4A5irpHAcdXtBBHLVe8WIhdXNjoAlGQgA==", + "version": "46.5.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.5.1.tgz", + "integrity": "sha512-CPbvKprmEuJYoxMj5g8gXfPqUGgcqMM6jpH06Kp4pn5Uy5MrPkFKzoD7UFp2E4RBzfXbJz1+TeuEivwFVMkXBg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.40.1", @@ -4400,9 +4400,9 @@ } }, "node_modules/glob": { - "version": "10.3.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.3.tgz", - "integrity": "sha512-92vPiMb/iqpmEgsOoIDvTjc50wf9CCCvMzsi6W0JLPeUKE8TWP1a73PgqSrqy7iAZxaSD1YdzU7QZR5LF51MJw==", + "version": "10.3.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.4.tgz", + "integrity": "sha512-6LFElP3A+i/Q8XQKEvZjkEWEOTgAIALR9AO2rwT8bgPhDd1anmqDJDZ6lLddI4ehxxxR1S5RIqKe1uapMQfYaQ==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -5261,9 +5261,9 @@ } }, "node_modules/jackspeak": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.0.tgz", - "integrity": "sha512-uKmsITSsF4rUWQHzqaRUuyAir3fZfW3f202Ee34lz/gZCi970CPZwyQXLGNgWJvvZbvFyzeyGq0+4fcG/mBKZg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.1.tgz", + "integrity": "sha512-4iSY3Bh1Htv+kLhiiZunUhQ+OYXIn0ze3ulq8JeWrFKmhPAJSySV2+kdtRh2pGcCeF0s6oR8Oc+pYZynJj4t8A==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -7727,9 +7727,9 @@ } }, "node_modules/postcss": { - "version": "8.4.28", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.28.tgz", - "integrity": "sha512-Z7V5j0cq8oEKyejIKfpD8b4eBy9cwW2JWPk0+fB1HOAMsfHbnAXLLS+PfVWlzMSLQaWttKDt607I0XHmpE67Vw==", + "version": "8.4.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.29.tgz", + "integrity": "sha512-cbI+jaqIeu/VGqXEarWkRCCffhjgXc0qjBtXpqJhTBohMUjUQnbBr0xqX3vEKudc4iviTewcJo5ajcec5+wdJw==", "dev": true, "funding": [ { @@ -7871,9 +7871,9 @@ ] }, "node_modules/quick-lru": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-6.1.1.tgz", - "integrity": "sha512-S27GBT+F0NTRiehtbrgaSE1idUAJ5bX8dPAQTdylEyNlrdcH5X4Lz7Edz3DYzecbsCluD5zO8ZNEe04z3D3u6Q==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-6.1.2.tgz", + "integrity": "sha512-AAFUA5O1d83pIHEhJwWCq/RQcRukCkn/NSm2QsTEMle5f2hP0ChI2+3Xb051PZCkLryI/Ir1MVKviT2FIloaTQ==", "dev": true, "engines": { "node": ">=12" @@ -8067,9 +8067,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.0.tgz", - "integrity": "sha512-XbMcLhoaaX/vw1S8jTKysTlznqSPxDXj1Jf56neDMksT1xoKr02pFAhHhDbW9bFejktlwKto18/UsdXlnUCBMg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", + "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", "engines": { "node": ">=16" }, @@ -8138,9 +8138,9 @@ } }, "node_modules/read-pkg/node_modules/parse-json": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.0.0.tgz", - "integrity": "sha512-kP+TQYAzAiVnzOlWOe0diD6L35s9bJh0SCn95PIbZFKrOYuIRQsQkeWEYxzVDuHTt9V9YqvYCJ2Qo4z9wdfZPw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.0.tgz", + "integrity": "sha512-ihtdrgbqdONYD156Ap6qTcaGcGdkdAxodO1wLqQ/j7HP1u2sFYppINiq4jyC8F+Nm+4fVufylCV00QmkTHkSUg==", "dependencies": { "@babel/code-frame": "^7.21.4", "error-ex": "^1.3.2", @@ -8167,9 +8167,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.0.tgz", - "integrity": "sha512-XbMcLhoaaX/vw1S8jTKysTlznqSPxDXj1Jf56neDMksT1xoKr02pFAhHhDbW9bFejktlwKto18/UsdXlnUCBMg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", + "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", "engines": { "node": ">=16" }, @@ -9378,9 +9378,9 @@ } }, "node_modules/terser": { - "version": "5.19.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", - "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "version": "5.19.3", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.3.tgz", + "integrity": "sha512-pQzJ9UJzM0IgmT4FAtYI6+VqFf0lj/to58AV0Xfgg0Up37RyPG7Al+1cepC6/BVuAxR9oNb41/DL4DEoHJvTdg==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index b8a793e7b25..c6d57a43927 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -150,11 +150,11 @@ "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.5", - "docdash": "^2.0.1", + "docdash": "^2.0.2", "eslint": "^8.48.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.5.0", + "eslint-plugin-jsdoc": "^46.5.1", "esmock": "^2.3.8", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", From 4d0977742948e976ea9e96f23078cc4b1ebf98fc Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 1 Sep 2023 16:18:58 +0200 Subject: [PATCH 0987/1272] [ui5-project][INTERNAL] codeql: remove manual codeql setup --- .../.github/workflows/codeql-analysis.yml | 38 ------------------- 1 file changed, 38 deletions(-) delete mode 100644 packages/project/.github/workflows/codeql-analysis.yml diff --git a/packages/project/.github/workflows/codeql-analysis.yml b/packages/project/.github/workflows/codeql-analysis.yml deleted file mode 100644 index 876a633a037..00000000000 --- a/packages/project/.github/workflows/codeql-analysis.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: "CodeQL" - -on: - push: - branches: - - main - pull_request: - branches: - - main - - # Execute at least once per week to get new findings without active development taking place - schedule: - - cron: '42 19 * * 6' - -jobs: - codeql-analyze: - name: "CodeQL Analyze" - runs-on: ubuntu-latest - - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v2 - with: - languages: 'javascript' - # If you wish to specify custom queries, you can do so here or in a config file. - # By default, queries listed here will override any specified in a config file. - # Prefix the list here with "+" to use these queries and those in the config file. - # queries: ./path/to/local/query, your-org/your-repo/queries@main - - # ℹ️ Command-line programs to run using the OS shell. - # 📚 https://git.io/JvXDl - - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v2 From ce0dd22943534b368be399c0948349971a4c2f89 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 1 Sep 2023 12:59:46 +0200 Subject: [PATCH 0988/1272] [ui5-project][FIX] Ensure usage of provided UI5 data dir Also moves check for framework libraries to earlier point as further steps such as choosing a resolver and calling resolveVersion are only needed when libraries are referenced. This aligns the behavior with not having a framework configuration at all but still passing "versionOverride" which is then also not resolved/checked for correctness. --- .../project/lib/graph/helpers/ui5Framework.js | 43 +++++++++++-------- .../test/lib/graph/helpers/ui5Framework.js | 29 ++++++++++++- 2 files changed, 52 insertions(+), 20 deletions(-) diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index b44ccaa1676..70d3f6484eb 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -294,6 +294,7 @@ export default { const rootProject = projectGraph.getRoot(); const frameworkName = rootProject.getFrameworkName(); const frameworkVersion = rootProject.getFrameworkVersion(); + const cwd = rootProject.getRootPath(); // It is allowed to omit the framework version in ui5.yaml and only provide one via the override // This is a common use case for framework libraries, which generally should not define a @@ -330,6 +331,14 @@ export default { ); } + const referencedLibraries = await utils.getFrameworkLibrariesFromGraph(projectGraph); + if (!referencedLibraries.length) { + log.verbose( + `No ${frameworkName} libraries referenced in project ${rootProject.getName()} ` + + `or in any of its dependencies`); + return projectGraph; + } + let Resolver; if (version && version.toLowerCase().endsWith("-snapshot")) { Resolver = (await import("../../ui5Framework/Sapui5MavenSnapshotResolver.js")).default; @@ -339,20 +348,26 @@ export default { Resolver = (await import("../../ui5Framework/Sapui5Resolver.js")).default; } + // ENV var should take precedence over the dataDir from the configuration. + let ui5DataDir = process.env.UI5_DATA_DIR; + if (!ui5DataDir) { + const config = await Configuration.fromFile(); + ui5DataDir = config.getUi5DataDir(); + } + if (ui5DataDir) { + ui5DataDir = path.resolve(cwd, ui5DataDir); + } + if (options.versionOverride) { - version = await Resolver.resolveVersion(options.versionOverride, {cwd: rootProject.getRootPath()}); + version = await Resolver.resolveVersion(options.versionOverride, { + ui5HomeDir: ui5DataDir, + cwd + }); log.info( `Overriding configured ${frameworkName} version ` + `${frameworkVersion} with version ${version}` ); } - const referencedLibraries = await utils.getFrameworkLibrariesFromGraph(projectGraph); - if (!referencedLibraries.length) { - log.verbose( - `No ${frameworkName} libraries referenced in project ${rootProject.getName()} ` + - `or in any of its dependencies`); - return projectGraph; - } if (version) { log.info(`Using ${frameworkName} version: ${version}`); @@ -365,20 +380,10 @@ export default { }); } - // ENV var should take precedence over the dataDir from the configuration. - let ui5DataDir = process.env.UI5_DATA_DIR; - if (!ui5DataDir) { - const config = await Configuration.fromFile(); - ui5DataDir = config.getUi5DataDir(); - } - if (ui5DataDir) { - ui5DataDir = path.resolve(rootProject.getRootPath(), ui5DataDir); - } - // Note: version might be undefined here and the Resolver will throw an error when calling // #install and it can't be resolved via the provided library metadata const resolver = new Resolver({ - cwd: rootProject.getRootPath(), + cwd, version, providedLibraryMetadata, cacheMode, diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index 79ea8d70873..e4daf03f585 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -334,6 +334,12 @@ test.serial("enrichProjectGraph: With versionOverride", async (t) => { await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride: "1.99"}); + t.is(Sapui5ResolverResolveVersionStub.callCount, 1); + t.deepEqual(Sapui5ResolverResolveVersionStub.getCall(0).args, ["1.99", { + cwd: dependencyTree.path, + ui5HomeDir: undefined, + }]); + t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ cacheMode: undefined, @@ -390,6 +396,12 @@ test.serial("enrichProjectGraph: With versionOverride containing snapshot versio await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride: "1.99-SNAPSHOT"}); + t.is(Sapui5MavenSnapshotResolverResolveVersionStub.callCount, 1); + t.deepEqual(Sapui5MavenSnapshotResolverResolveVersionStub.getCall(0).args, ["1.99-SNAPSHOT", { + cwd: dependencyTree.path, + ui5HomeDir: undefined, + }]); + t.is(Sapui5MavenSnapshotResolverStub.callCount, 1, "Sapui5MavenSnapshotResolverStub#constructor should be called once"); t.deepEqual(Sapui5MavenSnapshotResolverStub.getCall(0).args, [{ @@ -447,6 +459,12 @@ test.serial("enrichProjectGraph: With versionOverride containing latest-snapshot await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride: "latest-snapshot"}); + t.is(Sapui5MavenSnapshotResolverResolveVersionStub.callCount, 1); + t.deepEqual(Sapui5MavenSnapshotResolverResolveVersionStub.getCall(0).args, ["latest-snapshot", { + cwd: dependencyTree.path, + ui5HomeDir: undefined, + }]); + t.is(Sapui5MavenSnapshotResolverStub.callCount, 1, "Sapui5MavenSnapshotResolverStub#constructor should be called once"); t.deepEqual(Sapui5MavenSnapshotResolverStub.getCall(0).args, [{ @@ -459,7 +477,7 @@ test.serial("enrichProjectGraph: With versionOverride containing latest-snapshot }); test.serial("enrichProjectGraph shouldn't throw when no framework version and no libraries are provided", async (t) => { - const {ui5Framework, log} = t.context; + const {ui5Framework, log, Sapui5ResolverResolveVersionStub} = t.context; const dependencyTree = { id: "test-id", version: "1.2.3", @@ -484,6 +502,9 @@ test.serial("enrichProjectGraph shouldn't throw when no framework version and no versionOverride: "1.75.0" }); + t.is(Sapui5ResolverResolveVersionStub.callCount, 0, + "resolveVersion should not be called when no libraries are provided"); + t.is(log.verbose.callCount, 2); t.deepEqual(log.verbose.getCall(0).args, [ "Project application.a has no framework dependencies" @@ -703,6 +724,12 @@ test.serial("enrichProjectGraph should resolve framework project " + await ui5Framework.enrichProjectGraph(projectGraph, {versionOverride: "3.4.5"}); t.is(projectGraph.getSize(), 3, "Project graph should remain unchanged"); + t.is(Sapui5ResolverResolveVersionStub.callCount, 1); + t.deepEqual(Sapui5ResolverResolveVersionStub.getCall(0).args, ["3.4.5", { + cwd: dependencyTree.path, + ui5HomeDir: undefined, + }]); + t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); t.is(getFrameworkLibrariesFromGraphStub.callCount, 1, "getFrameworkLibrariesFromGraph should be called once"); t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ From 6541161096ad6c4776711e8e160aa35c813a6927 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 5 Sep 2023 11:13:45 +0200 Subject: [PATCH 0989/1272] [ui5-project][INTERNAL] Azure Pipelines: Switch back to Node 20.5.x There are issues with the current Node 20.6.0 version. See: https://github.com/nodejs/node/issues/49497 --- packages/project/azure-pipelines.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 5c0fd2358a8..6eeaf64eb04 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -26,13 +26,13 @@ strategy: node_version: 18.x linux_node_current: imageName: 'ubuntu-22.04' - node_version: 20.x + node_version: 20.5.x mac_node_current: imageName: 'macos-12' - node_version: 20.x + node_version: 20.5.x windows_node_current: imageName: 'windows-2022' - node_version: 20.x + node_version: 20.5.x pool: vmImage: $(imageName) From 5b7caacb7693d8de7f9359c7a2a7966c32ebd9f0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 24 Aug 2023 16:36:16 +0200 Subject: [PATCH 0990/1272] [ui5-project][FEATURE] Resolvers: Use npm tags for determining 'latest' --- packages/project/lib/ui5Framework/AbstractResolver.js | 11 +++++++++++ packages/project/lib/ui5Framework/Openui5Resolver.js | 11 +++++++++++ packages/project/lib/ui5Framework/Sapui5Resolver.js | 11 +++++++++++ packages/project/lib/ui5Framework/npm/Installer.js | 5 +++++ 4 files changed, 38 insertions(+) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 0a6e9e70c1b..7ce26ba40be 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -215,6 +215,13 @@ class AbstractResolver { } static async resolveVersion(version, {ui5HomeDir, cwd} = {}) { + if (version === "latest") { + const tagVersion = this.fetchTag("latest", {ui5HomeDir, cwd}); + if (tagVersion) { + return tagVersion; + } + } + let spec; const isSnapshotVersion = version.toLowerCase().endsWith("-snapshot"); if (version === "latest" || version === "latest-snapshot") { @@ -238,6 +245,7 @@ class AbstractResolver { throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); } } + const versions = await this.fetchAllVersions({ui5HomeDir, cwd}); const resolvedVersion = semver.maxSatisfying(versions, spec, { includePrerelease: isSnapshotVersion @@ -271,6 +279,9 @@ class AbstractResolver { static fetchAllVersions(options) { throw new Error("AbstractResolver: static fetchAllVersions must be implemented!"); } + static fetchTag(tagName, options) { + throw new Error("AbstractResolver: static fetchDistTag must be implemented!"); + } } /* istanbul ignore else */ diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js index 55a8115def7..2c895103ed8 100644 --- a/packages/project/lib/ui5Framework/Openui5Resolver.js +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -93,6 +93,17 @@ class Openui5Resolver extends AbstractResolver { }); return await installer.fetchPackageVersions({pkgName: OPENUI5_CORE_PACKAGE}); } + + static async fetchTag(tagName, {ui5HomeDir, cwd} = {}) { + const installer = new Installer({ + cwd: cwd ? path.resolve(cwd) : process.cwd(), + ui5HomeDir: + ui5HomeDir ? path.resolve(ui5HomeDir) : + path.join(os.homedir(), ".ui5") + }); + const distTags = await installer.fetchPackageDistTags({pkgName: OPENUI5_CORE_PACKAGE}); + return distTags[tagName]; + } } export default Openui5Resolver; diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index c539c26480b..493142558f3 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -114,6 +114,17 @@ class Sapui5Resolver extends AbstractResolver { }); return await installer.fetchPackageVersions({pkgName: DIST_PKG_NAME}); } + + static async fetchTag(tagName, {ui5HomeDir, cwd} = {}) { + const installer = new Installer({ + cwd: cwd ? path.resolve(cwd) : process.cwd(), + ui5HomeDir: + ui5HomeDir ? path.resolve(ui5HomeDir) : + path.join(os.homedir(), ".ui5") + }); + const distTags = await installer.fetchPackageDistTags({pkgName: DIST_PKG_NAME}); + return distTags[tagName]; + } } export default Sapui5Resolver; diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index 8fb4799cca5..5f9bd0f6352 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -57,6 +57,11 @@ class Installer extends AbstractInstaller { return Object.keys(packument.versions); } + async fetchPackageDistTags({pkgName}) { + const packument = await this.getRegistry().requestPackagePackument(pkgName); + return packument["dist-tags"]; + } + async fetchPackageManifest({pkgName, version}) { const targetDir = this._getTargetDirForPackage({pkgName, version}); try { From 6f5880cc56644b2999a47fa0e6359cd1ab057a48 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 30 Aug 2023 16:01:50 +0200 Subject: [PATCH 0991/1272] [ui5-project][FEATURE] Resolvers: Allow ranges / npm tags for version resolution The framework version resolution now supports all valid node semver ranges and uses tags from the corresponding registry for version resolution (not supported for Sapui5MavenSnapshotResolver). --- .../lib/ui5Framework/AbstractResolver.js | 65 +++-- .../lib/ui5Framework/Openui5Resolver.js | 5 +- .../lib/ui5Framework/Sapui5Resolver.js | 5 +- .../test/lib/ui5framework/AbstractResolver.js | 227 ++++++++++++++++-- 4 files changed, 250 insertions(+), 52 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 7ce26ba40be..c1882777632 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -215,37 +215,56 @@ class AbstractResolver { } static async resolveVersion(version, {ui5HomeDir, cwd} = {}) { - if (version === "latest") { - const tagVersion = this.fetchTag("latest", {ui5HomeDir, cwd}); - if (tagVersion) { - return tagVersion; - } + // Don't allow nullish values + // An empty string is a valid semver range that converts to "*", which should not be supported + if (!version) { + throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); } - let spec; const isSnapshotVersion = version.toLowerCase().endsWith("-snapshot"); - if (version === "latest" || version === "latest-snapshot") { - // Use a wildcard to resolve to the latest available version - spec = "*"; - } else if (SEMVER_VERSION_REGEXP.test(version)) { - // Fully qualified version, can be used directly - spec = version; - } else { + if (isSnapshotVersion) { const versionMatch = version.match(VERSION_RANGE_REGEXP); if (versionMatch) { - if (isSnapshotVersion) { - // For snapshot version ranges we need to insert a stand-in "x" for the patch level - // and - in case none is provided - another "x" for the major version in order to - // make the semver check work: "1-SNAPSHOT" or "1.112-SNAPSHOT" becomes "1.112.x-SNAPSHOT" - spec = `${versionMatch[1]}.${versionMatch[2] || "x"}.x-SNAPSHOT`; - } else { - spec = version; + // For snapshot version ranges we need to insert a stand-in "x" for the patch level + // and - in case none is provided - another "x" for the major version in order to + // convert it to a valid semver range: + // "1-SNAPSHOT" becomes "1.x.x-SNAPSHOT" and "1.112-SNAPSHOT" becomes "1.112.x-SNAPSHOT" + version = `${versionMatch[1]}.${versionMatch[2] || "x"}.x-SNAPSHOT`; + } + } + + let spec; + + if (semver.validRange(version)) { + // Note: Fully qualified versions are also valid ranges + spec = version; + } else if (encodeURIComponent(version) === version) { + // Valid tag name (same check as npm does) + const allTags = await this.fetchAllTags({ui5HomeDir, cwd}); + if (!allTags) { + // Resolver doesn't support tags (e.g. Sapui5MavenSnapshotResolver) + if (version === "latest" || version === "latest-snapshot") { + // Only latest and latest-snapshot are supported which both resolve + // to the latest available version. + // See isSnapshotVersion flag for -snapshot handling + spec = "*"; } + } else if (allTags[version]) { + // Use version from tag + spec = allTags[version]; } else { - throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); + throw new Error( + `Could not resolve framework version via tag '${version}'. ` + + `Make sure the tag is available in the configured registry.` + ); } } + // For all invalid cases which are not explicitly handled above + if (!spec) { + throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); + } + const versions = await this.fetchAllVersions({ui5HomeDir, cwd}); const resolvedVersion = semver.maxSatisfying(versions, spec, { includePrerelease: isSnapshotVersion @@ -279,8 +298,8 @@ class AbstractResolver { static fetchAllVersions(options) { throw new Error("AbstractResolver: static fetchAllVersions must be implemented!"); } - static fetchTag(tagName, options) { - throw new Error("AbstractResolver: static fetchDistTag must be implemented!"); + static fetchAllTags(options) { + return null; } } diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js index 2c895103ed8..d6a203c2081 100644 --- a/packages/project/lib/ui5Framework/Openui5Resolver.js +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -94,15 +94,14 @@ class Openui5Resolver extends AbstractResolver { return await installer.fetchPackageVersions({pkgName: OPENUI5_CORE_PACKAGE}); } - static async fetchTag(tagName, {ui5HomeDir, cwd} = {}) { + static async fetchAllTags({ui5HomeDir, cwd} = {}) { const installer = new Installer({ cwd: cwd ? path.resolve(cwd) : process.cwd(), ui5HomeDir: ui5HomeDir ? path.resolve(ui5HomeDir) : path.join(os.homedir(), ".ui5") }); - const distTags = await installer.fetchPackageDistTags({pkgName: OPENUI5_CORE_PACKAGE}); - return distTags[tagName]; + return installer.fetchPackageDistTags({pkgName: OPENUI5_CORE_PACKAGE}); } } diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index 493142558f3..bd5811bbf95 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -115,15 +115,14 @@ class Sapui5Resolver extends AbstractResolver { return await installer.fetchPackageVersions({pkgName: DIST_PKG_NAME}); } - static async fetchTag(tagName, {ui5HomeDir, cwd} = {}) { + static async fetchAllTags({ui5HomeDir, cwd} = {}) { const installer = new Installer({ cwd: cwd ? path.resolve(cwd) : process.cwd(), ui5HomeDir: ui5HomeDir ? path.resolve(ui5HomeDir) : path.join(os.homedir(), ".ui5") }); - const distTags = await installer.fetchPackageDistTags({pkgName: DIST_PKG_NAME}); - return distTags[tagName]; + return installer.fetchPackageDistTags({pkgName: DIST_PKG_NAME}); } } diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 6a6c98c4c4a..43da6177c5b 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -815,60 +815,241 @@ test.serial("AbstractResolver: Static resolveVersion throws error for 'lts'", as t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); }); -test.serial("AbstractResolver: Static resolveVersion throws error for '1.x'", async (t) => { +test.serial("AbstractResolver: Static resolveVersion resolves '1.x'", async (t) => { const {MyResolver} = t.context; - const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0", "2.0.0"]); - const error = await t.throwsAsync(MyResolver.resolveVersion("1.x", { + const version = await MyResolver.resolveVersion("1.x", { cwd: "/cwd", ui5HomeDir: "/ui5HomeDir" - })); + }); - t.is(error.message, `Framework version specifier "1.x" is incorrect or not supported`); + t.is(version, "1.76.0", "Resolved version should be correct"); - t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); }); -test.serial("AbstractResolver: Static resolveVersion throws error for '1.75.x'", async (t) => { +test.serial("AbstractResolver: Static resolveVersion resolves '1.75.x'", async (t) => { const {MyResolver} = t.context; - const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0", "2.0.0"]); - const error = await t.throwsAsync(MyResolver.resolveVersion("1.75.x", { + const version = await MyResolver.resolveVersion("1.75.x", { cwd: "/cwd", ui5HomeDir: "/ui5HomeDir" - })); + }); - t.is(error.message, `Framework version specifier "1.75.x" is incorrect or not supported`); + t.is(version, "1.75.1", "Resolved version should be correct"); - t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); }); -test.serial("AbstractResolver: Static resolveVersion throws error for '^1.75.0'", async (t) => { +test.serial("AbstractResolver: Static resolveVersion resolves '^1.75.0'", async (t) => { const {MyResolver} = t.context; - const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0", "2.0.0"]); - const error = await t.throwsAsync(MyResolver.resolveVersion("^1.75.0", { + const version = await MyResolver.resolveVersion("^1.75.0", { cwd: "/cwd", ui5HomeDir: "/ui5HomeDir" - })); + }); - t.is(error.message, `Framework version specifier "^1.75.0" is incorrect or not supported`); + t.is(version, "1.76.0", "Resolved version should be correct"); - t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); }); -test.serial("AbstractResolver: Static resolveVersion throws error for '~1.75.0'", async (t) => { +test.serial("AbstractResolver: Static resolveVersion resolves '~1.75.0'", async (t) => { const {MyResolver} = t.context; - const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions"); + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0", "2.0.0"]); + + const version = await MyResolver.resolveVersion("~1.75.0", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.75.1", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves '> 1.75.0 < 1.75.3'", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.75.2", "1.75.3"]); + + const version = await MyResolver.resolveVersion("> 1.75.0 < 1.75.3", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "1.75.2", "Resolved version should be correct"); - const error = await t.throwsAsync(MyResolver.resolveVersion("~1.75.0", { + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves 'next' using tags", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.0.0", "2.0.0"]); + const fetchAllTagsStub = sinon.stub(MyResolver, "fetchAllTags") + .resolves({ + "latest": "1.0.0", + "next": "2.0.0" + }); + + const version = await MyResolver.resolveVersion("next", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "2.0.0", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); + t.is(fetchAllTagsStub.callCount, 1, "fetchAllTagsStub should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllTags should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves 'next' to a pre-release using tags", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.0.0", "2.0.0-SNAPSHOT"]); + const fetchAllTagsStub = sinon.stub(MyResolver, "fetchAllTags") + .resolves({ + "latest": "1.0.0", + "next": "2.0.0-SNAPSHOT" + }); + + const version = await MyResolver.resolveVersion("next", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + t.is(version, "2.0.0-SNAPSHOT", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); + t.is(fetchAllTagsStub.callCount, 1, "fetchAllTagsStub should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllTags should be called with expected arguments"); +}); + + +test.serial("AbstractResolver: Static resolveVersion resolves 'latest' using tags only " + +"when the resolver supports them", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0", "2.0.0"]); + const fetchAllTagsStub = sinon.stub(MyResolver, "fetchAllTags") + .resolves(null); + + // Resolver does not support tags (resolves with "null" instead of an object) + // 'latest' should resolve to the highest version available + const version1 = await MyResolver.resolveVersion("latest", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + t.is(version1, "2.0.0", "Resolved version should be correct"); + + t.is(fetchAllTagsStub.callCount, 1, "fetchAllTagsStub should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllTags should be called with expected arguments"); + + // Change behavior of Resolver to support tags, so that version should be used now + // instead of the highest version + fetchAllTagsStub.resolves({ + "latest": "1.76.0" + }); + const version2 = await MyResolver.resolveVersion("latest", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + t.is(version2, "1.76.0", "Resolved version should be correct"); + + t.is(fetchAllTagsStub.callCount, 2, "fetchAllTagsStub should be called twice"); + t.deepEqual(fetchAllVersionsStub.getCall(1).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllTags should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion throws error for empty string", async (t) => { + const {MyResolver} = t.context; + sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0"]); + + const error = await t.throwsAsync(MyResolver.resolveVersion("", { cwd: "/cwd", ui5HomeDir: "/ui5HomeDir" })); - t.is(error.message, `Framework version specifier "~1.75.0" is incorrect or not supported`); + t.is(error.message, `Framework version specifier "" is incorrect or not supported`); +}); - t.is(fetchAllVersionsStub.callCount, 0, "fetchAllVersions should not be called"); +test.serial("AbstractResolver: Static resolveVersion throws error for invalid tag name", async (t) => { + const {MyResolver} = t.context; + sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0"]); + + const error = await t.throwsAsync(MyResolver.resolveVersion("%20", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Framework version specifier "%20" is incorrect or not supported`); +}); + +test.serial("AbstractResolver: Static resolveVersion throws error for non-existing tag", async (t) => { + const {MyResolver} = t.context; + sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0", "1.75.1", "1.76.0"]); + sinon.stub(MyResolver, "fetchAllTags") + .resolves({"latest": "1.76.0"}); + + const error = await t.throwsAsync(MyResolver.resolveVersion("this-tag-does-not-exist", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + })); + + t.is(error.message, `Could not resolve framework version via tag 'this-tag-does-not-exist'. ` + + `Make sure the tag is available in the configured registry.` + ); }); test.serial("AbstractResolver: Static resolveVersion throws error for version not found", async (t) => { From 85412a801bc4e0100f097d7fb334a13a0e2c15a7 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 30 Aug 2023 17:32:56 +0200 Subject: [PATCH 0992/1272] [ui5-project][INTERNAL] Cleanup / clarify includePrerelease handling - Adds tests to clarify that only -SNAPSHOT ranges should use the "includePrerelease" behavior. - Remove duplicate tests - Remove obsolete SEMVER regular expression There is no real need to have it in sync with the configuration schema. If semver would change something, we would anyways not notice it via that test as both expressions are defined by us. --- .../lib/ui5Framework/AbstractResolver.js | 26 +--- .../test/lib/ui5framework/AbstractResolver.js | 119 ++++++++++-------- 2 files changed, 72 insertions(+), 73 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index c1882777632..4e931049a42 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -4,15 +4,6 @@ import {getLogger} from "@ui5/logger"; const log = getLogger("ui5Framework:AbstractResolver"); import semver from "semver"; -// Matches Semantic Versioning 2.0.0 versions -// https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string -// -// This needs to be aligned with the ui5.yaml JSON schema: -// lib/validation/schema/specVersion/kind/project.json#/definitions/framework/properties/version/pattern -// -// eslint-disable-next-line max-len -const SEMVER_VERSION_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/; - // Reduced Semantic Versioning pattern // Matches MAJOR or MAJOR.MINOR as a simple version range to be resolved to the latest minor/patch const VERSION_RANGE_REGEXP = /^(0|[1-9]\d*)(?:\.(0|[1-9]\d*))?(?:-SNAPSHOT)?$/; @@ -221,8 +212,8 @@ class AbstractResolver { throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); } - const isSnapshotVersion = version.toLowerCase().endsWith("-snapshot"); - if (isSnapshotVersion) { + const isSnapshotVersionOrRange = version.toLowerCase().endsWith("-snapshot"); + if (isSnapshotVersionOrRange) { const versionMatch = version.match(VERSION_RANGE_REGEXP); if (versionMatch) { // For snapshot version ranges we need to insert a stand-in "x" for the patch level @@ -236,7 +227,6 @@ class AbstractResolver { let spec; if (semver.validRange(version)) { - // Note: Fully qualified versions are also valid ranges spec = version; } else if (encodeURIComponent(version) === version) { // Valid tag name (same check as npm does) @@ -246,7 +236,7 @@ class AbstractResolver { if (version === "latest" || version === "latest-snapshot") { // Only latest and latest-snapshot are supported which both resolve // to the latest available version. - // See isSnapshotVersion flag for -snapshot handling + // See "isSnapshotVersionOrRange" for -snapshot handling spec = "*"; } } else if (allTags[version]) { @@ -267,7 +257,9 @@ class AbstractResolver { const versions = await this.fetchAllVersions({ui5HomeDir, cwd}); const resolvedVersion = semver.maxSatisfying(versions, spec, { - includePrerelease: isSnapshotVersion + // Allow ranges that end with -SNAPSHOT to match any -SNAPSHOT version + // like a normal version in order to support ranges like 1.x.x-SNAPSHOT. + includePrerelease: isSnapshotVersionOrRange }); if (!resolvedVersion) { if (semver.valid(spec)) { @@ -303,10 +295,4 @@ class AbstractResolver { } } -/* istanbul ignore else */ -if (process.env.NODE_ENV === "test") { - // Export pattern for testing to be checked against JSON schema pattern - AbstractResolver._SEMVER_VERSION_REGEXP = SEMVER_VERSION_REGEXP; -} - export default AbstractResolver; diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 43da6177c5b..b8e8d093e99 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -595,7 +595,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR'", async (t }], "fetchAllVersions should be called with expected arguments"); }); -test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR-prerelease'", async (t) => { +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR-SNAPSHOT'", async (t) => { const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.76.0", "1.77.0", "1.77.0-SNAPSHOT", "1.78.0", "1.79.0-SNAPSHOT"]); @@ -633,7 +633,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR'", as }], "fetchAllVersions should be called with expected arguments"); }); -test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR-prerelease'", async (t) => { +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR-SNAPSHOT'", async (t) => { const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.76.0", "1.77.0", "1.77.0-SNAPSHOT", "1.78.0", "1.79.0-SNAPSHOT"]); @@ -671,7 +671,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH }], "fetchAllVersions should be called with expected arguments"); }); -test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH-prerelease'", async (t) => { +test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH-SNAPSHOT'", async (t) => { const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") .returns(["1.76.0", "1.77.0", "1.77.0-SNAPSHOT", "1.78.0", "1.79.0-SNAPSHOT"]); @@ -728,44 +728,6 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'latest-snapshot'" }], "fetchAllVersions should be called with expected arguments"); }); -test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR-SNAPSHOT'", async (t) => { - const {MyResolver} = t.context; - const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") - .returns(["1.75.0-SNAPSHOT", "1.75.1-SNAPSHOT", "1.76.0-SNAPSHOT", "1.76.1-SNAPSHOT"]); - - const version = await MyResolver.resolveVersion("1.75-SNAPSHOT", { - cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" - }); - - t.is(version, "1.75.1-SNAPSHOT", "Resolved version should be correct"); - - t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); - t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ - cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" - }], "fetchAllVersions should be called with expected arguments"); -}); - -test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH-SNAPSHOT'", async (t) => { - const {MyResolver} = t.context; - const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") - .returns(["1.75.0-SNAPSHOT", "1.75.1-SNAPSHOT", "1.76.0-SNAPSHOT", "1.76.1-SNAPSHOT"]); - - const version = await MyResolver.resolveVersion("1.75.0-SNAPSHOT", { - cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" - }); - - t.is(version, "1.75.0-SNAPSHOT", "Resolved version should be correct"); - - t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); - t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ - cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" - }], "fetchAllVersions should be called with expected arguments"); -}); - test.serial("AbstractResolver: Static resolveVersion includes non-prereleases for 'latest-snapshot'", async (t) => { // Realistically this should never happen, since the Sapui5MavenSnapshotResolver would never return // non-snapshot versions. This test therefore simply illustrates the current behavior for this theoretic case @@ -910,6 +872,69 @@ test.serial("AbstractResolver: Static resolveVersion resolves '> 1.75.0 < 1.75.3 }], "fetchAllVersions should be called with expected arguments"); }); +test.serial("AbstractResolver: Static resolveVersion resolves 'x.x.x-SNAPSHOT'", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["1.75.0-SNAPSHOT", "1.76.0-SNAPSHOT", "1.77.0-SNAPSHOT"]); + + const version = await MyResolver.resolveVersion("x.x.x-SNAPSHOT", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + // All ranges ending with -SNAPSHOT should use "includePrerelease" in order to + // properly match prerelease (i.e. -SNAPSHOT) versions. + t.is(version, "1.77.0-SNAPSHOT", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves '^2.0.0-SNAPSHOT'", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["2.0.0-SNAPSHOT", "2.0.1-SNAPSHOT", "2.1.0-SNAPSHOT"]); + + const version = await MyResolver.resolveVersion("^2.0.0-SNAPSHOT", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + // All ranges ending with -SNAPSHOT should use "includePrerelease" in order to + // properly match prerelease (i.e. -SNAPSHOT) versions. + t.is(version, "2.1.0-SNAPSHOT", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + +test.serial("AbstractResolver: Static resolveVersion resolves '2.x.x-alpha'", async (t) => { + const {MyResolver} = t.context; + const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") + .returns(["2.0.0-alpha", "2.0.1-alpha", "2.1.0-alpha"]); + + const version = await MyResolver.resolveVersion("^2.0.0-alpha", { + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }); + + // Prerelease ranges other than -SNAPSHOT should not use "includePrerelease" + // and therefore not match pre-releases like normal versions + t.is(version, "2.0.0-alpha", "Resolved version should be correct"); + + t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); + t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ + cwd: "/cwd", + ui5HomeDir: "/ui5HomeDir" + }], "fetchAllVersions should be called with expected arguments"); +}); + test.serial("AbstractResolver: Static resolveVersion resolves 'next' using tags", async (t) => { const {MyResolver} = t.context; const fetchAllVersionsStub = sinon.stub(MyResolver, "fetchAllVersions") @@ -1181,15 +1206,3 @@ test.serial( t.is(error.message, `Could not resolve framework version 1.99. ` + `Make sure the version is valid and available in the configured registry.`); }); - -test.serial("AbstractResolver: SEMVER_VERSION_REGEXP should be aligned with JSON schema", async (t) => { - const {AbstractResolver} = t.context; - - const projectSchema = JSON.parse( - await readFile(fileURLToPath( - new URL("../../../lib/validation/schema/specVersion/kind/project.json", import.meta.url) - ), {encoding: "utf-8"}) - ); - const schemaPattern = projectSchema.definitions.framework.properties.version.pattern; - t.is(schemaPattern, AbstractResolver._SEMVER_VERSION_REGEXP.source); -}); From f84b3a799ec6864eb89be762d6d2dd11bbe7c28b Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 31 Aug 2023 13:42:07 +0200 Subject: [PATCH 0993/1272] [ui5-project][INTERNAL] AbstractResolver: refactor logic --- .../lib/ui5Framework/AbstractResolver.js | 94 +++++++++++-------- .../lib/ui5Framework/Openui5Resolver.js | 19 ++-- .../test/lib/ui5framework/Openui5Resolver.js | 61 ++++++++---- 3 files changed, 108 insertions(+), 66 deletions(-) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 4e931049a42..dfd01de3c55 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -212,45 +212,9 @@ class AbstractResolver { throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); } - const isSnapshotVersionOrRange = version.toLowerCase().endsWith("-snapshot"); - if (isSnapshotVersionOrRange) { - const versionMatch = version.match(VERSION_RANGE_REGEXP); - if (versionMatch) { - // For snapshot version ranges we need to insert a stand-in "x" for the patch level - // and - in case none is provided - another "x" for the major version in order to - // convert it to a valid semver range: - // "1-SNAPSHOT" becomes "1.x.x-SNAPSHOT" and "1.112-SNAPSHOT" becomes "1.112.x-SNAPSHOT" - version = `${versionMatch[1]}.${versionMatch[2] || "x"}.x-SNAPSHOT`; - } - } - - let spec; + const spec = await this._getVersionSpec(version, {ui5HomeDir, cwd}); - if (semver.validRange(version)) { - spec = version; - } else if (encodeURIComponent(version) === version) { - // Valid tag name (same check as npm does) - const allTags = await this.fetchAllTags({ui5HomeDir, cwd}); - if (!allTags) { - // Resolver doesn't support tags (e.g. Sapui5MavenSnapshotResolver) - if (version === "latest" || version === "latest-snapshot") { - // Only latest and latest-snapshot are supported which both resolve - // to the latest available version. - // See "isSnapshotVersionOrRange" for -snapshot handling - spec = "*"; - } - } else if (allTags[version]) { - // Use version from tag - spec = allTags[version]; - } else { - throw new Error( - `Could not resolve framework version via tag '${version}'. ` + - `Make sure the tag is available in the configured registry.` - ); - } - } - - // For all invalid cases which are not explicitly handled above + // For all invalid cases which are not explicitly handled in _getVersionSpec if (!spec) { throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); } @@ -259,8 +223,9 @@ class AbstractResolver { const resolvedVersion = semver.maxSatisfying(versions, spec, { // Allow ranges that end with -SNAPSHOT to match any -SNAPSHOT version // like a normal version in order to support ranges like 1.x.x-SNAPSHOT. - includePrerelease: isSnapshotVersionOrRange + includePrerelease: this._isSnapshotVersionOrRange(version) }); + if (!resolvedVersion) { if (semver.valid(spec)) { if (this.name === "Sapui5Resolver" && semver.lt(spec, "1.76.0")) { @@ -277,9 +242,60 @@ class AbstractResolver { `Could not resolve framework version ${version}. ` + `Make sure the version is valid and available in the configured registry.`); } + return resolvedVersion; } + static async _getVersionSpec(version, {ui5HomeDir, cwd}) { + if (this._isSnapshotVersionOrRange(version)) { + const versionMatch = version.match(VERSION_RANGE_REGEXP); + if (versionMatch) { + // For snapshot version ranges we need to insert a stand-in "x" for the patch level + // and - in case none is provided - another "x" for the major version in order to + // convert it to a valid semver range: + // "1-SNAPSHOT" becomes "1.x.x-SNAPSHOT" and "1.112-SNAPSHOT" becomes "1.112.x-SNAPSHOT" + return `${versionMatch[1]}.${versionMatch[2] || "x"}.x-SNAPSHOT`; + } + } + + if (semver.validRange(version)) { + return version; + } + + // Check for invalid tag name (same check as npm does) + if (encodeURIComponent(version) !== version) { + return null; + } + + const allTags = await this.fetchAllTags({ui5HomeDir, cwd}); + + if (!allTags && (version === "latest" || version === "latest-snapshot")) { + // Resolver doesn't support tags (e.g. Sapui5MavenSnapshotResolver) + // Only latest and latest-snapshot are supported which both resolve + // to the latest available version. + // See "isSnapshotVersionOrRange" for -snapshot handling + return "*"; + } + + if (!allTags) { + return null; + } + + if (!allTags[version]) { + throw new Error( + `Could not resolve framework version via tag '${version}'. ` + + `Make sure the tag is available in the configured registry.` + ); + } + + // Use version from tag + return allTags[version]; + } + + static _isSnapshotVersionOrRange(version) { + return version.toLowerCase().endsWith("-snapshot"); + } + // To be implemented by resolver async getLibraryMetadata(libraryName) { throw new Error("AbstractResolver: getLibraryMetadata must be implemented!"); diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js index d6a203c2081..2f9bcce072c 100644 --- a/packages/project/lib/ui5Framework/Openui5Resolver.js +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -84,24 +84,23 @@ class Openui5Resolver extends AbstractResolver { }) }; } - static async fetchAllVersions({ui5HomeDir, cwd} = {}) { - const installer = new Installer({ - cwd: cwd ? path.resolve(cwd) : process.cwd(), - ui5HomeDir: - ui5HomeDir ? path.resolve(ui5HomeDir) : - path.join(os.homedir(), ".ui5") - }); + static async fetchAllVersions(options) { + const installer = this._getInstaller(options); return await installer.fetchPackageVersions({pkgName: OPENUI5_CORE_PACKAGE}); } - static async fetchAllTags({ui5HomeDir, cwd} = {}) { - const installer = new Installer({ + static async fetchAllTags(options) { + const installer = this._getInstaller(options); + return installer.fetchPackageDistTags({pkgName: OPENUI5_CORE_PACKAGE}); + } + + static _getInstaller({ui5HomeDir, cwd} = {}) { + return new Installer({ cwd: cwd ? path.resolve(cwd) : process.cwd(), ui5HomeDir: ui5HomeDir ? path.resolve(ui5HomeDir) : path.join(os.homedir(), ".ui5") }); - return installer.fetchPackageDistTags({pkgName: OPENUI5_CORE_PACKAGE}); } } diff --git a/packages/project/test/lib/ui5framework/Openui5Resolver.js b/packages/project/test/lib/ui5framework/Openui5Resolver.js index cedd0ee7622..48812c71769 100644 --- a/packages/project/test/lib/ui5framework/Openui5Resolver.js +++ b/packages/project/test/lib/ui5framework/Openui5Resolver.js @@ -6,11 +6,13 @@ import os from "node:os"; test.beforeEach(async (t) => { t.context.InstallerStub = sinon.stub(); + t.context.fetchPackageDistTags = sinon.stub(); t.context.fetchPackageManifestStub = sinon.stub(); t.context.fetchPackageVersionsStub = sinon.stub(); t.context.installPackageStub = sinon.stub(); t.context.InstallerStub.callsFake(() => { return { + fetchPackageDistTags: t.context.fetchPackageDistTags, fetchPackageManifest: t.context.fetchPackageManifestStub, fetchPackageVersions: t.context.fetchPackageVersionsStub, installPackage: t.context.installPackageStub @@ -139,40 +141,48 @@ test.serial("Openui5Resolver: handleLibrary", async (t) => { t.deepEqual(await promises.install, {pkgPath: "/foo/sap.ui.lib1"}, "Install should resolve with expected object"); }); -test.serial("Openui5Resolver: Static fetchAllVersions", async (t) => { +test.serial("Openui5Resolver: Static _getInstaller", (t) => { const {Openui5Resolver} = t.context; - const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; const options = { cwd: "/cwd", ui5HomeDir: "/ui5HomeDir" }; - t.context.fetchPackageVersionsStub.returns(expectedVersions); + const installer = Openui5Resolver._getInstaller(options); - const versions = await Openui5Resolver.fetchAllVersions(options); + t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); + t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); + t.is(installer, t.context.InstallerStub.getCall(0).returnValue, "Installer instance is returned"); + t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ + cwd: path.resolve("/cwd"), + ui5HomeDir: path.resolve("/ui5HomeDir") + }], "Installer should be called with expected arguments"); +}); - t.deepEqual(versions, expectedVersions, "Fetched versions should be correct"); +test.serial("Openui5Resolver: Static _getInstaller without options", (t) => { + const {Openui5Resolver} = t.context; - t.is(t.context.fetchPackageVersionsStub.callCount, 1, "fetchPackageVersions should be called once"); - t.deepEqual(t.context.fetchPackageVersionsStub.getCall(0).args, [{pkgName: "@openui5/sap.ui.core"}], - "fetchPackageVersions should be called with expected arguments"); + const installer = Openui5Resolver._getInstaller(); t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); + t.is(installer, t.context.InstallerStub.getCall(0).returnValue, "Installer instance is returned"); t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ - cwd: path.resolve("/cwd"), - ui5HomeDir: path.resolve("/ui5HomeDir") + cwd: process.cwd(), + ui5HomeDir: path.join(os.homedir(), ".ui5") }], "Installer should be called with expected arguments"); }); -test.serial("Openui5Resolver: Static fetchAllVersions without options", async (t) => { +test.serial("Openui5Resolver: Static fetchAllVersions", async (t) => { const {Openui5Resolver} = t.context; const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; t.context.fetchPackageVersionsStub.returns(expectedVersions); + const getInstallerSpy = sinon.spy(Openui5Resolver, "_getInstaller"); + const versions = await Openui5Resolver.fetchAllVersions(); t.deepEqual(versions, expectedVersions, "Fetched versions should be correct"); @@ -181,10 +191,27 @@ test.serial("Openui5Resolver: Static fetchAllVersions without options", async (t t.deepEqual(t.context.fetchPackageVersionsStub.getCall(0).args, [{pkgName: "@openui5/sap.ui.core"}], "fetchPackageVersions should be called with expected arguments"); - t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); - t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); - t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ - cwd: process.cwd(), - ui5HomeDir: path.join(os.homedir(), ".ui5") - }], "Installer should be called with expected arguments"); + t.is(getInstallerSpy.callCount, 1, "_getInstaller should be called once"); + t.is(getInstallerSpy.getCall(0).args[0], undefined, "_getInstaller should be called without any options"); +}); + +test.serial("Openui5Resolver: Static fetchAllTags", async (t) => { + const {Openui5Resolver} = t.context; + + const expectedTags = ["latest", "latest-1.71", "latest-1"]; + + t.context.fetchPackageDistTags.returns(expectedTags); + + const getInstallerSpy = sinon.spy(Openui5Resolver, "_getInstaller"); + + const tags = await Openui5Resolver.fetchAllTags(); + + t.deepEqual(tags, expectedTags, "Fetched tags should be correct"); + + t.is(t.context.fetchPackageDistTags.callCount, 1, "fetchPackageVersions should be called once"); + t.deepEqual(t.context.fetchPackageDistTags.getCall(0).args, [{pkgName: "@openui5/sap.ui.core"}], + "fetchPackageVersions should be called with expected arguments"); + + t.is(getInstallerSpy.callCount, 1, "_getInstaller should be called once"); + t.is(getInstallerSpy.getCall(0).args[0], undefined, "_getInstaller should be called without any options"); }); From d7af84606cb33b8900eef6e40b25096401efd0ab Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 31 Aug 2023 13:53:40 +0200 Subject: [PATCH 0994/1272] [ui5-project][INTERNAL] Remove unused imports from AbstractResolver test --- packages/project/test/lib/ui5framework/AbstractResolver.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index b8e8d093e99..ee068adf22b 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -2,8 +2,6 @@ import test from "ava"; import sinon from "sinon"; import path from "node:path"; import os from "node:os"; -import {fileURLToPath} from "node:url"; -import {readFile} from "node:fs/promises"; import esmock from "esmock"; test.beforeEach(async (t) => { From 3366e01b92a3d528ac8e3525a7ee065ca8203030 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 1 Sep 2023 11:08:21 +0200 Subject: [PATCH 0995/1272] [ui5-project][INTERNAL] Add integration tests --- .../lib/ui5Framework/AbstractResolver.js | 12 +- .../graph/helpers/ui5Framework.integration.js | 1 + .../Openui5Resolver.integration.js | 201 ++++++++++++++++++ ...Sapui5MavenSnapshotResolver.integration.js | 158 ++++++++++++++ .../Sapui5Resolver.integration.js | 201 ++++++++++++++++++ 5 files changed, 567 insertions(+), 6 deletions(-) create mode 100644 packages/project/test/lib/ui5framework/Openui5Resolver.integration.js create mode 100644 packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.integration.js create mode 100644 packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index dfd01de3c55..6d9b8166ff8 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -269,16 +269,16 @@ class AbstractResolver { const allTags = await this.fetchAllTags({ui5HomeDir, cwd}); - if (!allTags && (version === "latest" || version === "latest-snapshot")) { + if (!allTags) { // Resolver doesn't support tags (e.g. Sapui5MavenSnapshotResolver) // Only latest and latest-snapshot are supported which both resolve // to the latest available version. // See "isSnapshotVersionOrRange" for -snapshot handling - return "*"; - } - - if (!allTags) { - return null; + if ((version === "latest" || version === "latest-snapshot")) { + return "*"; + } else { + return null; + } } if (!allTags[version]) { diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index 3eec2a802ae..e92d4082377 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -150,6 +150,7 @@ test.afterEach.always((t) => { esmock.purge(t.context.Registry); esmock.purge(t.context.Installer); esmock.purge(t.context.AbstractResolver); + esmock.purge(t.context.Openui5Resolver); esmock.purge(t.context.Sapui5Resolver); esmock.purge(t.context.Application); esmock.purge(t.context.Library); diff --git a/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js b/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js new file mode 100644 index 00000000000..c62f3537d2b --- /dev/null +++ b/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js @@ -0,0 +1,201 @@ +import test from "ava"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +// Use path within project as mocking base directory to reduce chance of side effects +// in case mocks/stubs do not work and real fs is used +const fakeBaseDir = path.join(__dirname, "fake-tmp"); + +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.logStub = { + info: sinon.stub(), + verbose: sinon.stub(), + silly: sinon.stub(), + warn: sinon.stub(), + error: sinon.stub(), + isLevelEnabled: sinon.stub().returns(false), + _getLogger: sinon.stub() + }; + const ui5Logger = { + getLogger: sinon.stub().returns(t.context.logStub) + }; + + t.context.pacote = { + packument: sinon.stub().callsFake(async (...args) => { + throw new Error(`pacote.packument stub called with unknown args: ${args}`); + }) + }; + + t.context.NpmcliConfig = sinon.stub().returns({ + load: sinon.stub().resolves(), + flat: { + registry: "https://registry.fake" + } + }); + + t.context.Registry = await esmock.p("../../../lib/ui5Framework/npm/Registry.js", { + "@ui5/logger": ui5Logger, + "pacote": t.context.pacote, + "@npmcli/config": { + "default": t.context.NpmcliConfig + } + }); + + const AbstractInstaller = await esmock.p("../../../lib/ui5Framework/AbstractInstaller.js", { + "@ui5/logger": ui5Logger, + "../../../lib/utils/fs.js": { + mkdirp: sinon.stub().resolves() + }, + "lockfile": { + lock: sinon.stub().yieldsAsync(), + unlock: sinon.stub().yieldsAsync() + } + }); + + t.context.Installer = await esmock.p("../../../lib/ui5Framework/npm/Installer.js", { + "@ui5/logger": ui5Logger, + "graceful-fs": { + rename: sinon.stub().yieldsAsync(), + }, + "../../../lib/utils/fs.js": { + mkdirp: sinon.stub().resolves() + }, + "../../../lib/ui5Framework/npm/Registry.js": t.context.Registry, + "../../../lib/ui5Framework/AbstractInstaller.js": AbstractInstaller + }); + + t.context.AbstractResolver = await esmock.p("../../../lib/ui5Framework/AbstractResolver.js", { + "@ui5/logger": ui5Logger, + "node:os": { + homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + }, + }); + + t.context.Openui5Resolver = await esmock.p("../../../lib/ui5Framework/Openui5Resolver.js", { + "@ui5/logger": ui5Logger, + "node:os": { + homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + }, + "../../../lib/ui5Framework/AbstractResolver.js": t.context.AbstractResolver, + "../../../lib/ui5Framework/npm/Installer.js": t.context.Installer + }); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); + esmock.purge(t.context.Registry); + esmock.purge(t.context.Installer); + esmock.purge(t.context.AbstractResolver); + esmock.purge(t.context.Openui5Resolver); +}); + +test.serial("resolveVersion", async (t) => { + const {Openui5Resolver, pacote, logStub, NpmcliConfig} = t.context; + + pacote.packument + .withArgs("@openui5/sap.ui.core") + .resolves({ + "versions": { + "1.120.1": "", + "1.120.0": "", + "1.119.0": "", + "1.118.0": "", + "2.0.0-rc.1": "", + "1.123.4-SNAPSHOT": "" + }, + "dist-tags": { + // NOTE: latest does not correspond to highest version in order to verify + // that this tag is used instead of picking the highest version + "latest": "1.120.0", + + "next": "2.0.0-rc.1", + + // NOTE: Tag ends with "-snapshot" in order to verify that the special handling + // of that + "not-a-snapshot": "1.118.0" + } + }); + + const defaultCwd = process.cwd(); + const defaultUi5HomeDir = path.join(fakeBaseDir, "homedir", ".ui5"); + + // Generic testing without and with options argument + const optionsArguments = [ + undefined, + { + cwd: path.join(fakeBaseDir, "custom-cwd"), + ui5HomeDir: path.join(fakeBaseDir, "custom-homedir", ".ui5") + } + ]; + for (const options of optionsArguments) { + // Reset calls to be able to check them per for-loop run + NpmcliConfig.resetHistory(); + pacote.packument.resetHistory(); + + // Ranges + t.is(await Openui5Resolver.resolveVersion("1", options), "1.120.1"); + t.is(await Openui5Resolver.resolveVersion("1.120", options), "1.120.1"); + t.is(await Openui5Resolver.resolveVersion("1.x", options), "1.120.1"); + t.is(await Openui5Resolver.resolveVersion("1.x.x", options), "1.120.1"); + t.is(await Openui5Resolver.resolveVersion("^1", options), "1.120.1"); + t.is(await Openui5Resolver.resolveVersion("*", options), "1.120.1"); + + // Tags + t.is(await Openui5Resolver.resolveVersion("latest", options), "1.120.0"); + t.is(await Openui5Resolver.resolveVersion("next", options), "2.0.0-rc.1"); + t.is(await Openui5Resolver.resolveVersion("not-a-snapshot", options), "1.118.0"); + + // Exact versions + t.is(await Openui5Resolver.resolveVersion("1.118.0", options), "1.118.0"); + t.is(await Openui5Resolver.resolveVersion("2.0.0-rc.1", options), "2.0.0-rc.1"); + t.is(await Openui5Resolver.resolveVersion("1.123.4-SNAPSHOT", options), "1.123.4-SNAPSHOT"); + + // SNAPSHOT ranges + t.is(await Openui5Resolver.resolveVersion("1-SNAPSHOT", options), "1.123.4-SNAPSHOT"); + t.is(await Openui5Resolver.resolveVersion("1.123-SNAPSHOT", options), "1.123.4-SNAPSHOT"); + + // Error cases + await t.throwsAsync(Openui5Resolver.resolveVersion("", options), { + message: `Framework version specifier "" is incorrect or not supported` + }); + await t.throwsAsync(Openui5Resolver.resolveVersion("tag-does-not-exist", options), { + message: `Could not resolve framework version via tag 'tag-does-not-exist'. ` + + `Make sure the tag is available in the configured registry.` + }); + await t.throwsAsync(Openui5Resolver.resolveVersion("invalid-tag-%20", options), { + message: `Framework version specifier "invalid-tag-%20" is incorrect or not supported` + }); + + await t.throwsAsync(Openui5Resolver.resolveVersion("1.999.9", options), { + message: `Could not resolve framework version 1.999.9. ` + + `Make sure the version is valid and available in the configured registry.` + }); + await t.throwsAsync(Openui5Resolver.resolveVersion("1.0.0", options), { + message: `Could not resolve framework version 1.0.0. ` + + `Note that OpenUI5 framework libraries can only be consumed by the UI5 Tooling ` + + `starting with OpenUI5 v1.52.5` + }); + await t.throwsAsync(Openui5Resolver.resolveVersion("^999", options), { + message: `Could not resolve framework version ^999. ` + + `Make sure the version is valid and available in the configured registry.` + }); + + // Check whether options have been passed as expected + t.true(NpmcliConfig.alwaysCalledWithNew()); + t.true(NpmcliConfig.alwaysCalledWithMatch(sinonGlobal.match({ + cwd: options?.cwd ?? defaultCwd + }))); + t.true(pacote.packument.alwaysCalledWithMatch("@openui5/sap.ui.core", { + cache: path.join(options?.ui5HomeDir ?? defaultUi5HomeDir, "framework", "cacache") + })); + } + + t.is(logStub.warn.callCount, 0); + t.is(logStub.error.callCount, 0); +}); diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.integration.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.integration.js new file mode 100644 index 00000000000..61317ed0c7f --- /dev/null +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.integration.js @@ -0,0 +1,158 @@ +import test from "ava"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +// Use path within project as mocking base directory to reduce chance of side effects +// in case mocks/stubs do not work and real fs is used +const fakeBaseDir = path.join(__dirname, "fake-tmp"); + +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT_URL = "_SNAPSHOT_URL_"; + + t.context.logStub = { + info: sinon.stub(), + verbose: sinon.stub(), + silly: sinon.stub(), + warn: sinon.stub(), + error: sinon.stub(), + isLevelEnabled: sinon.stub().returns(false), + _getLogger: sinon.stub() + }; + const ui5Logger = { + getLogger: sinon.stub().returns(t.context.logStub) + }; + + t.context.makeFetchHappen = sinon.stub(); + + t.context.gracefulFs = { + stat: sinon.stub().yieldsAsync(), + readFile: sinon.stub().yieldsAsync(), + writeFile: sinon.stub().yieldsAsync(), + rename: sinon.stub().yieldsAsync(), + rm: sinon.stub().yieldsAsync(), + createWriteStream: sinon.stub() + }; + + t.context.Registry = await esmock.p("../../../lib/ui5Framework/maven/Registry.js", { + "@ui5/logger": ui5Logger, + "graceful-fs": t.context.gracefulFs, + "make-fetch-happen": t.context.makeFetchHappen, + }); + + const AbstractInstaller = await esmock.p("../../../lib/ui5Framework/AbstractInstaller.js", { + "@ui5/logger": ui5Logger, + "../../../lib/utils/fs.js": { + mkdirp: sinon.stub().resolves() + }, + "lockfile": { + lock: sinon.stub().yieldsAsync(), + unlock: sinon.stub().yieldsAsync() + } + }); + + t.context.Installer = await esmock.p("../../../lib/ui5Framework/maven/Installer.js", { + "@ui5/logger": ui5Logger, + "graceful-fs": t.context.gracefulFs, + "../../../lib/utils/fs.js": { + mkdirp: sinon.stub().resolves() + }, + "../../../lib/ui5Framework/maven/Registry.js": t.context.Registry, + "../../../lib/ui5Framework/AbstractInstaller.js": AbstractInstaller + }); + + t.context.AbstractResolver = await esmock.p("../../../lib/ui5Framework/AbstractResolver.js", { + "@ui5/logger": ui5Logger, + "node:os": { + homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + }, + }); + + t.context.Sapui5MavenSnapshotResolver = await esmock.p("../../../lib/ui5Framework/Sapui5MavenSnapshotResolver.js", { + "@ui5/logger": ui5Logger, + "node:os": { + homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + }, + "../../../lib/ui5Framework/AbstractResolver.js": t.context.AbstractResolver, + "../../../lib/ui5Framework/maven/Installer.js": t.context.Installer + }); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); + esmock.purge(t.context.Registry); + esmock.purge(t.context.Installer); + esmock.purge(t.context.AbstractResolver); + esmock.purge(t.context.Sapui5MavenSnapshotResolver); + delete process.env.UI5_MAVEN_SNAPSHOT_ENDPOINT_URL; +}); + +test.serial("resolveVersion", async (t) => { + const {Sapui5MavenSnapshotResolver, makeFetchHappen, logStub, sinon} = t.context; + + makeFetchHappen.withArgs("_SNAPSHOT_URL_/com/sap/ui5/dist/sapui5-sdk-dist/maven-metadata.xml") + .resolves({ + ok: true, + buffer: sinon.stub().resolves(` + + + + + 1.120.1 + 2.0.0-rc.1 + 1.120.1-SNAPSHOT + 1.123.4-SNAPSHOT + 2.0.0-SNAPSHOT + 2.0.1-SNAPSHOT + 2.1.2-SNAPSHOT + + + + `) + }); + + + // Exact SNAPSHOT versions + t.is(await Sapui5MavenSnapshotResolver.resolveVersion("1.123.4-SNAPSHOT"), "1.123.4-SNAPSHOT"); + t.is(await Sapui5MavenSnapshotResolver.resolveVersion("2.0.1-SNAPSHOT"), "2.0.1-SNAPSHOT"); + + // latest-snapshot + t.is(await Sapui5MavenSnapshotResolver.resolveVersion("latest-snapshot"), "2.1.2-SNAPSHOT"); + + // SNAPSHOT ranges + t.is(await Sapui5MavenSnapshotResolver.resolveVersion("1-SNAPSHOT"), "1.123.4-SNAPSHOT"); + t.is(await Sapui5MavenSnapshotResolver.resolveVersion("2-SNAPSHOT"), "2.1.2-SNAPSHOT"); + t.is(await Sapui5MavenSnapshotResolver.resolveVersion("1.123-SNAPSHOT"), "1.123.4-SNAPSHOT"); + + // Error cases + await t.throwsAsync(Sapui5MavenSnapshotResolver.resolveVersion(""), { + message: `Framework version specifier "" is incorrect or not supported` + }); + await t.throwsAsync(Sapui5MavenSnapshotResolver.resolveVersion("tag-does-not-exist"), { + message: `Framework version specifier "tag-does-not-exist" is incorrect or not supported` + }); + await t.throwsAsync(Sapui5MavenSnapshotResolver.resolveVersion("invalid-tag-%20"), { + message: `Framework version specifier "invalid-tag-%20" is incorrect or not supported` + }); + + await t.throwsAsync(Sapui5MavenSnapshotResolver.resolveVersion("1.999.9"), { + message: `Could not resolve framework version 1.999.9. ` + + `Make sure the version is valid and available in the configured registry.` + }); + await t.throwsAsync(Sapui5MavenSnapshotResolver.resolveVersion("1.0.0-SNAPSHOT"), { + message: `Could not resolve framework version 1.0.0-SNAPSHOT. ` + + `Make sure the version is valid and available in the configured registry.` + }); + await t.throwsAsync(Sapui5MavenSnapshotResolver.resolveVersion("3-SNAPSHOT"), { + message: `Could not resolve framework version 3-SNAPSHOT. ` + + `Make sure the version is valid and available in the configured registry.` + }); + + t.is(logStub.warn.callCount, 0); + t.is(logStub.error.callCount, 0); +}); diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js new file mode 100644 index 00000000000..51149677526 --- /dev/null +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js @@ -0,0 +1,201 @@ +import test from "ava"; +import sinonGlobal from "sinon"; +import esmock from "esmock"; +import path from "node:path"; +import {fileURLToPath} from "node:url"; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +// Use path within project as mocking base directory to reduce chance of side effects +// in case mocks/stubs do not work and real fs is used +const fakeBaseDir = path.join(__dirname, "fake-tmp"); + +test.beforeEach(async (t) => { + const sinon = t.context.sinon = sinonGlobal.createSandbox(); + + t.context.logStub = { + info: sinon.stub(), + verbose: sinon.stub(), + silly: sinon.stub(), + warn: sinon.stub(), + error: sinon.stub(), + isLevelEnabled: sinon.stub().returns(false), + _getLogger: sinon.stub() + }; + const ui5Logger = { + getLogger: sinon.stub().returns(t.context.logStub) + }; + + t.context.pacote = { + packument: sinon.stub().callsFake(async (...args) => { + throw new Error(`pacote.packument stub called with unknown args: ${args}`); + }) + }; + + t.context.NpmcliConfig = sinon.stub().returns({ + load: sinon.stub().resolves(), + flat: { + registry: "https://registry.fake" + } + }); + + t.context.Registry = await esmock.p("../../../lib/ui5Framework/npm/Registry.js", { + "@ui5/logger": ui5Logger, + "pacote": t.context.pacote, + "@npmcli/config": { + "default": t.context.NpmcliConfig + } + }); + + const AbstractInstaller = await esmock.p("../../../lib/ui5Framework/AbstractInstaller.js", { + "@ui5/logger": ui5Logger, + "../../../lib/utils/fs.js": { + mkdirp: sinon.stub().resolves() + }, + "lockfile": { + lock: sinon.stub().yieldsAsync(), + unlock: sinon.stub().yieldsAsync() + } + }); + + t.context.Installer = await esmock.p("../../../lib/ui5Framework/npm/Installer.js", { + "@ui5/logger": ui5Logger, + "graceful-fs": { + rename: sinon.stub().yieldsAsync(), + }, + "../../../lib/utils/fs.js": { + mkdirp: sinon.stub().resolves() + }, + "../../../lib/ui5Framework/npm/Registry.js": t.context.Registry, + "../../../lib/ui5Framework/AbstractInstaller.js": AbstractInstaller + }); + + t.context.AbstractResolver = await esmock.p("../../../lib/ui5Framework/AbstractResolver.js", { + "@ui5/logger": ui5Logger, + "node:os": { + homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + }, + }); + + t.context.Sapui5Resolver = await esmock.p("../../../lib/ui5Framework/Sapui5Resolver.js", { + "@ui5/logger": ui5Logger, + "node:os": { + homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + }, + "../../../lib/ui5Framework/AbstractResolver.js": t.context.AbstractResolver, + "../../../lib/ui5Framework/npm/Installer.js": t.context.Installer + }); +}); + +test.afterEach.always((t) => { + t.context.sinon.restore(); + esmock.purge(t.context.Registry); + esmock.purge(t.context.Installer); + esmock.purge(t.context.AbstractResolver); + esmock.purge(t.context.Sapui5Resolver); +}); + +test.serial("resolveVersion", async (t) => { + const {Sapui5Resolver, pacote, logStub, NpmcliConfig} = t.context; + + pacote.packument + .withArgs("@sapui5/distribution-metadata") + .resolves({ + "versions": { + "1.120.1": "", + "1.120.0": "", + "1.119.0": "", + "1.118.0": "", + "2.0.0-rc.1": "", + "1.123.4-SNAPSHOT": "" + }, + "dist-tags": { + // NOTE: latest does not correspond to highest version in order to verify + // that this tag is used instead of picking the highest version + "latest": "1.120.0", + + "next": "2.0.0-rc.1", + + // NOTE: Tag ends with "-snapshot" in order to verify that the special handling + // of that + "not-a-snapshot": "1.118.0" + } + }); + + const defaultCwd = process.cwd(); + const defaultUi5HomeDir = path.join(fakeBaseDir, "homedir", ".ui5"); + + // Generic testing without and with options argument + const optionsArguments = [ + undefined, + { + cwd: path.join(fakeBaseDir, "custom-cwd"), + ui5HomeDir: path.join(fakeBaseDir, "custom-homedir", ".ui5") + } + ]; + for (const options of optionsArguments) { + // Reset calls to be able to check them per for-loop run + NpmcliConfig.resetHistory(); + pacote.packument.resetHistory(); + + // Ranges + t.is(await Sapui5Resolver.resolveVersion("1", options), "1.120.1"); + t.is(await Sapui5Resolver.resolveVersion("1.120", options), "1.120.1"); + t.is(await Sapui5Resolver.resolveVersion("1.x", options), "1.120.1"); + t.is(await Sapui5Resolver.resolveVersion("1.x.x", options), "1.120.1"); + t.is(await Sapui5Resolver.resolveVersion("^1", options), "1.120.1"); + t.is(await Sapui5Resolver.resolveVersion("*", options), "1.120.1"); + + // Tags + t.is(await Sapui5Resolver.resolveVersion("latest", options), "1.120.0"); + t.is(await Sapui5Resolver.resolveVersion("next", options), "2.0.0-rc.1"); + t.is(await Sapui5Resolver.resolveVersion("not-a-snapshot", options), "1.118.0"); + + // Exact versions + t.is(await Sapui5Resolver.resolveVersion("1.118.0", options), "1.118.0"); + t.is(await Sapui5Resolver.resolveVersion("2.0.0-rc.1", options), "2.0.0-rc.1"); + t.is(await Sapui5Resolver.resolveVersion("1.123.4-SNAPSHOT", options), "1.123.4-SNAPSHOT"); + + // SNAPSHOT ranges + t.is(await Sapui5Resolver.resolveVersion("1-SNAPSHOT", options), "1.123.4-SNAPSHOT"); + t.is(await Sapui5Resolver.resolveVersion("1.123-SNAPSHOT", options), "1.123.4-SNAPSHOT"); + + // Error cases + await t.throwsAsync(Sapui5Resolver.resolveVersion("", options), { + message: `Framework version specifier "" is incorrect or not supported` + }); + await t.throwsAsync(Sapui5Resolver.resolveVersion("tag-does-not-exist", options), { + message: `Could not resolve framework version via tag 'tag-does-not-exist'. ` + + `Make sure the tag is available in the configured registry.` + }); + await t.throwsAsync(Sapui5Resolver.resolveVersion("invalid-tag-%20", options), { + message: `Framework version specifier "invalid-tag-%20" is incorrect or not supported` + }); + + await t.throwsAsync(Sapui5Resolver.resolveVersion("1.999.9", options), { + message: `Could not resolve framework version 1.999.9. ` + + `Make sure the version is valid and available in the configured registry.` + }); + await t.throwsAsync(Sapui5Resolver.resolveVersion("1.0.0", options), { + message: `Could not resolve framework version 1.0.0. ` + + `Note that SAPUI5 framework libraries can only be consumed by the UI5 Tooling ` + + `starting with SAPUI5 v1.76.0` + }); + await t.throwsAsync(Sapui5Resolver.resolveVersion("^999", options), { + message: `Could not resolve framework version ^999. ` + + `Make sure the version is valid and available in the configured registry.` + }); + + // Check whether options have been passed as expected + t.true(NpmcliConfig.alwaysCalledWithNew()); + t.true(NpmcliConfig.alwaysCalledWithMatch(sinonGlobal.match({ + cwd: options?.cwd ?? defaultCwd + }))); + t.true(pacote.packument.alwaysCalledWithMatch("@openui5/sap.ui.core", { + cache: path.join(options?.ui5HomeDir ?? defaultUi5HomeDir, "framework", "cacache") + })); + } + + t.is(logStub.warn.callCount, 0); + t.is(logStub.error.callCount, 0); +}); From a82062118c9d115c911a5b67d0c911b3cc21324c Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 1 Sep 2023 15:05:03 +0200 Subject: [PATCH 0996/1272] [ui5-project][INTERNAL] Fix Sapui5Resolver integration test assertion --- .../project/test/lib/ui5framework/Sapui5Resolver.integration.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js index 51149677526..d9aa4de544f 100644 --- a/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js @@ -191,7 +191,7 @@ test.serial("resolveVersion", async (t) => { t.true(NpmcliConfig.alwaysCalledWithMatch(sinonGlobal.match({ cwd: options?.cwd ?? defaultCwd }))); - t.true(pacote.packument.alwaysCalledWithMatch("@openui5/sap.ui.core", { + t.true(pacote.packument.alwaysCalledWithMatch("@sapui5/distribution-metadata", { cache: path.join(options?.ui5HomeDir ?? defaultUi5HomeDir, "framework", "cacache") })); } From 55d8a5dcc805a6613fa618ff81061fd63b96bb49 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Mon, 4 Sep 2023 14:57:44 +0200 Subject: [PATCH 0997/1272] [ui5-project][INTERNAL] Sapui5Resolver: add tests for tag handling --- .../lib/ui5Framework/Sapui5Resolver.js | 19 +++--- .../test/lib/ui5framework/Sapui5Resolver.js | 60 +++++++++++++------ 2 files changed, 52 insertions(+), 27 deletions(-) diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index bd5811bbf95..6666e9c0e4c 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -105,24 +105,23 @@ class Sapui5Resolver extends AbstractResolver { }) }; } - static async fetchAllVersions({ui5HomeDir, cwd} = {}) { - const installer = new Installer({ - cwd: cwd ? path.resolve(cwd) : process.cwd(), - ui5HomeDir: - ui5HomeDir ? path.resolve(ui5HomeDir) : - path.join(os.homedir(), ".ui5") - }); + static async fetchAllVersions(options) { + const installer = this._getInstaller(options); return await installer.fetchPackageVersions({pkgName: DIST_PKG_NAME}); } - static async fetchAllTags({ui5HomeDir, cwd} = {}) { - const installer = new Installer({ + static async fetchAllTags(options) { + const installer = this._getInstaller(options); + return installer.fetchPackageDistTags({pkgName: DIST_PKG_NAME}); + } + + static _getInstaller({ui5HomeDir, cwd} = {}) { + return new Installer({ cwd: cwd ? path.resolve(cwd) : process.cwd(), ui5HomeDir: ui5HomeDir ? path.resolve(ui5HomeDir) : path.join(os.homedir(), ".ui5") }); - return installer.fetchPackageDistTags({pkgName: DIST_PKG_NAME}); } } diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.js index 822ce0fa330..8081c4abcae 100644 --- a/packages/project/test/lib/ui5framework/Sapui5Resolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.js @@ -7,12 +7,14 @@ import Openui5Resolver from "../../../lib/ui5Framework/Openui5Resolver.js"; test.beforeEach(async (t) => { t.context.InstallerStub = sinon.stub(); + t.context.fetchPackageDistTags = sinon.stub(); t.context.fetchPackageVersionsStub = sinon.stub(); t.context.installPackageStub = sinon.stub(); t.context.getTargetDirForPackageStub = sinon.stub(); t.context.readJsonStub = sinon.stub(); t.context.InstallerStub.callsFake(() => { return { + fetchPackageDistTags: t.context.fetchPackageDistTags, fetchPackageVersions: t.context.fetchPackageVersionsStub, installPackage: t.context.installPackageStub, getTargetDirForPackage: t.context.getTargetDirForPackageStub, @@ -125,40 +127,48 @@ test.serial("Sapui5Resolver: handleLibrary", async (t) => { t.is(loadDistMetadataStub.callCount, 1, "loadDistMetadata should be called once"); }); -test.serial("Sapui5Resolver: Static fetchAllVersions", async (t) => { +test.serial("Sapui5Resolver: Static _getInstaller", (t) => { const {Sapui5Resolver} = t.context; - const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; const options = { cwd: "/cwd", ui5HomeDir: "/ui5HomeDir" }; - t.context.fetchPackageVersionsStub.returns(expectedVersions); + const installer = Sapui5Resolver._getInstaller(options); - const versions = await Sapui5Resolver.fetchAllVersions(options); + t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); + t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); + t.is(installer, t.context.InstallerStub.getCall(0).returnValue, "Installer instance is returned"); + t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ + cwd: path.resolve("/cwd"), + ui5HomeDir: path.resolve("/ui5HomeDir") + }], "Installer should be called with expected arguments"); +}); - t.deepEqual(versions, expectedVersions, "Fetched versions should be correct"); +test.serial("Sapui5Resolver: Static _getInstaller without options", (t) => { + const {Sapui5Resolver} = t.context; - t.is(t.context.fetchPackageVersionsStub.callCount, 1, "fetchPackageVersions should be called once"); - t.deepEqual(t.context.fetchPackageVersionsStub.getCall(0).args, [{pkgName: "@sapui5/distribution-metadata"}], - "fetchPackageVersions should be called with expected arguments"); + const installer = Sapui5Resolver._getInstaller(); t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); + t.is(installer, t.context.InstallerStub.getCall(0).returnValue, "Installer instance is returned"); t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ - cwd: path.resolve("/cwd"), - ui5HomeDir: path.resolve("/ui5HomeDir") + cwd: process.cwd(), + ui5HomeDir: path.join(os.homedir(), ".ui5") }], "Installer should be called with expected arguments"); }); -test.serial("Sapui5Resolver: Static fetchAllVersions without options", async (t) => { +test.serial("Sapui5Resolver: Static fetchAllVersions", async (t) => { const {Sapui5Resolver} = t.context; const expectedVersions = ["1.75.0", "1.75.1", "1.76.0"]; t.context.fetchPackageVersionsStub.returns(expectedVersions); + const getInstallerSpy = sinon.spy(Sapui5Resolver, "_getInstaller"); + const versions = await Sapui5Resolver.fetchAllVersions(); t.deepEqual(versions, expectedVersions, "Fetched versions should be correct"); @@ -166,13 +176,29 @@ test.serial("Sapui5Resolver: Static fetchAllVersions without options", async (t) t.is(t.context.fetchPackageVersionsStub.callCount, 1, "fetchPackageVersions should be called once"); t.deepEqual(t.context.fetchPackageVersionsStub.getCall(0).args, [{pkgName: "@sapui5/distribution-metadata"}], "fetchPackageVersions should be called with expected arguments"); + t.is(getInstallerSpy.callCount, 1, "_getInstaller should be called once"); + t.is(getInstallerSpy.getCall(0).args[0], undefined, "_getInstaller should be called without any options"); +}); - t.is(t.context.InstallerStub.callCount, 1, "Installer should be called once"); - t.true(t.context.InstallerStub.calledWithNew(), "Installer should be called with new"); - t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ - cwd: process.cwd(), - ui5HomeDir: path.join(os.homedir(), ".ui5") - }], "Installer should be called with expected arguments"); +test.serial("Sapui5Resolver: Static fetchAllTags", async (t) => { + const {Sapui5Resolver} = t.context; + + const expectedTags = ["latest", "latest-1.71", "latest-1"]; + + t.context.fetchPackageDistTags.returns(expectedTags); + + const getInstallerSpy = sinon.spy(Sapui5Resolver, "_getInstaller"); + + const tags = await Sapui5Resolver.fetchAllTags(); + + t.deepEqual(tags, expectedTags, "Fetched tags should be correct"); + + t.is(t.context.fetchPackageDistTags.callCount, 1, "fetchPackageVersions should be called once"); + t.deepEqual(t.context.fetchPackageDistTags.getCall(0).args, [{pkgName: "@sapui5/distribution-metadata"}], + "fetchPackageVersions should be called with expected arguments"); + + t.is(getInstallerSpy.callCount, 1, "_getInstaller should be called once"); + t.is(getInstallerSpy.getCall(0).args[0], undefined, "_getInstaller should be called without any options"); }); test.serial( From 62473e017d226be9f8861a0084c4b9436a3e4c1e Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 5 Sep 2023 11:12:24 +0200 Subject: [PATCH 0998/1272] [ui5-project][INTERNAL] Add code comment --- packages/project/lib/ui5Framework/AbstractResolver.js | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 6d9b8166ff8..7237df0fe5e 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -258,6 +258,7 @@ class AbstractResolver { } } + // Covers versions and ranges, as versions are also valid ranges if (semver.validRange(version)) { return version; } From a92f057dbc050ce816391fe00cede82a4bcdba44 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 6 Sep 2023 06:42:25 +0000 Subject: [PATCH 0999/1272] [ui5-project]Release 3.7.0 --- packages/project/CHANGELOG.md | 16 +++++++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 99f045089aa..0286d107b9e 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,20 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.6.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.7.0...HEAD). + + +## [v3.7.0] - 2023-09-05 +### Bug Fixes +- Ensure usage of provided UI5 data dir [`1e0503a`](https://github.com/SAP/ui5-project/commit/1e0503a32dae06202b62408558d5ef85bb49daf1) +- **NodePackageDependencies:** Implement validation for missing package.json attributes [`b070972`](https://github.com/SAP/ui5-project/commit/b0709725b373441fd62fe9e33cc0440b6df17401) +- **ProjectGraph:** Improve error message when adding duplicate projects or extensions [`2b4a49e`](https://github.com/SAP/ui5-project/commit/2b4a49e2b6dc4004bf078d259c1a8f54ccc0ae2c) +- **pacote:** Use npm cache within UI5 data dir [`f1e2178`](https://github.com/SAP/ui5-project/commit/f1e217803d0c455f61135084b00a7daf42fb9094) + +### Features +- **Resolvers:** Allow ranges / npm tags for version resolution [`2841004`](https://github.com/SAP/ui5-project/commit/28410044f9d4abd348dc3e0697048543eb7796d9) +- **Resolvers:** Use npm tags for determining 'latest' [`5cde95a`](https://github.com/SAP/ui5-project/commit/5cde95a04f2f040fffd0798822058f9692761cc4) + ## [v3.6.0] - 2023-08-22 @@ -444,6 +457,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.7.0]: https://github.com/SAP/ui5-project/compare/v3.6.0...v3.7.0 [v3.6.0]: https://github.com/SAP/ui5-project/compare/v3.5.1...v3.6.0 [v3.5.1]: https://github.com/SAP/ui5-project/compare/v3.5.0...v3.5.1 [v3.5.0]: https://github.com/SAP/ui5-project/compare/v3.4.2...v3.5.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1459f67ce56..6c4113956c9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.6.0", + "version": "3.7.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.6.0", + "version": "3.7.0", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^6.2.1", diff --git a/packages/project/package.json b/packages/project/package.json index c6d57a43927..9e4f70f5141 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.6.0", + "version": "3.7.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From f6accdf6fb2c631785befd67347a09abc5478739 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 8 Sep 2023 13:11:16 +0200 Subject: [PATCH 1000/1272] [ui5-project][INTERNAL] createWorkspace: Remove dead code and test uncovered paths --- .../lib/graph/helpers/createWorkspace.js | 13 ++----- .../test/lib/graph/helpers/createWorkspace.js | 37 +++++++++++++++++++ 2 files changed, 40 insertions(+), 10 deletions(-) diff --git a/packages/project/lib/graph/helpers/createWorkspace.js b/packages/project/lib/graph/helpers/createWorkspace.js index 2283c698e34..b284c6f5800 100644 --- a/packages/project/lib/graph/helpers/createWorkspace.js +++ b/packages/project/lib/graph/helpers/createWorkspace.js @@ -37,8 +37,7 @@ export default async function createWorkspace({ filePath = path.join(cwd, configPath); } try { - const workspaceConfigs = - await readWorkspaceConfigFile(filePath, ); + const workspaceConfigs = await readWorkspaceConfigFile(filePath); const configuration = workspaceConfigs.find((config) => { return config.metadata.name === name; }); @@ -69,7 +68,7 @@ export default async function createWorkspace({ } } -async function readWorkspaceConfigFile(filePath, throwIfMissing) { +async function readWorkspaceConfigFile(filePath) { const { default: fs } = await import("graceful-fs"); @@ -92,13 +91,7 @@ async function readWorkspaceConfigFile(filePath, throwIfMissing) { filename: filePath, }); } catch (err) { - if (err.name === "YAMLException") { - throw new Error(`Failed to parse workspace configuration at ` + - `${filePath}\nError: ${err.message}`); - } else { - throw new Error( - `Failed to parse workspace configuration at ${filePath}: ${err.message}`); - } + throw new Error(`Failed to parse workspace configuration at ${filePath}\nError: ${err.message}`); } if (!configs || !configs.length) { diff --git a/packages/project/test/lib/graph/helpers/createWorkspace.js b/packages/project/test/lib/graph/helpers/createWorkspace.js index 33eb09a1e86..16ba12ca250 100644 --- a/packages/project/test/lib/graph/helpers/createWorkspace.js +++ b/packages/project/test/lib/graph/helpers/createWorkspace.js @@ -117,6 +117,29 @@ test("createWorkspace: Using invalid object", async (t) => { "Threw with validation error"); }); +test("createWorkspace: Using name and object with different workspace name", async (t) => { + const {createWorkspace} = t.context; + + const err = await t.throwsAsync(createWorkspace({ + cwd: "cwd", + name: "my-workspace", + configObject: { + metadata: { + name: "my-other-workspace" + }, + dependencyManagement: { + resolutions: [{ + path: "resolution/path" + }] + } + } + })); + t.is(err.message, + `The provided workspace name 'my-workspace' does not match ` + + `the provided workspace configuration 'my-other-workspace'`, + "Threw with validation error"); +}); + test("createWorkspace: Using file", async (t) => { const {createWorkspace, MockWorkspace, workspaceConstructorStub} = t.context; @@ -171,6 +194,20 @@ test("createWorkspace: Using missing file", async (t) => { t.is(workspaceConstructorStub.callCount, 0, "Workspace constructor did not get called"); }); +test("createWorkspace: Missing default workspace in file", async (t) => { + const {createWorkspace, workspaceConstructorStub} = t.context; + + const res = await createWorkspace({ + cwd: path.join(fixturesPath, "library.h"), + name: "default", + configPath: path.join(fixturesPath, "library.h", "custom-ui5-workspace.yaml") + }); + + t.is(res, null, "Returned no workspace"); + + t.is(workspaceConstructorStub.callCount, 0, "Workspace constructor did not get called"); +}); + test("createWorkspace: Using missing file and non-default name", async (t) => { const {createWorkspace, workspaceConstructorStub} = t.context; From d7cf0698c6988be10660d053a3ee9e53dd45e5c3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 10 Sep 2023 02:20:15 +0000 Subject: [PATCH 1001/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 178 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 91 insertions(+), 91 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6c4113956c9..5c5c096fca8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,11 +40,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.5", "docdash": "^2.0.2", - "eslint": "^8.48.0", + "eslint": "^8.49.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.5.1", - "esmock": "^2.3.8", + "esmock": "^2.4.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", @@ -161,21 +161,21 @@ } }, "node_modules/@babel/core": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.11.tgz", - "integrity": "sha512-lh7RJrtPdhibbxndr6/xx0w8+CVlY5FJZiaSz908Fpy+G0xkBFTvwLcKJFF4PJxVfGhVWNebikpWGnOoC71juQ==", + "version": "7.22.17", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.17.tgz", + "integrity": "sha512-2EENLmhpwplDux5PSsZnSbnSkB3tZ6QTksgO25xwEL7pIDcNOMhF5v/s6RzwjMZzZzw9Ofc30gHv5ChCC8pifQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.11", - "@babel/parser": "^7.22.11", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.11", - "@babel/types": "^7.22.11", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.22.15", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.22.17", + "@babel/helpers": "^7.22.15", + "@babel/parser": "^7.22.16", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.22.17", + "@babel/types": "^7.22.17", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -200,12 +200,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", - "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.15.tgz", + "integrity": "sha512-Zu9oWARBqeVOW0dZOjXc3JObrzuqothQ3y/n1kUtrjCoCPLkXUwMvOo/F/TCfoHMbWIFlWwpZtkZVb9ga4U2pA==", "dev": true, "dependencies": { - "@babel/types": "^7.22.10", + "@babel/types": "^7.22.15", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -215,13 +215,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", - "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", + "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", "dev": true, "dependencies": { "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", "browserslist": "^4.21.9", "lru-cache": "^5.1.1", "semver": "^6.3.1" @@ -274,28 +274,28 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", - "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "version": "7.22.17", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.17.tgz", + "integrity": "sha512-XouDDhQESrLHTpnBtCKExJdyY4gJCdrvH2Pyv8r8kovX2U8G0dRUOT45T9XlbLtuu9CLXP15eusnkprhoPV5iQ==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", "@babel/helper-simple-access": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.5" + "@babel/helper-validator-identifier": "^7.22.15" }, "engines": { "node": ">=6.9.0" @@ -347,31 +347,31 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.15.tgz", + "integrity": "sha512-4E/F9IIEi8WR94324mbDUMo074YTheJmd7eZF5vITTeYchqAi6sYXRLHUVsmkdmY4QjfKTcB2jB7dVP3NaBElQ==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", + "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.11.tgz", - "integrity": "sha512-vyOXC8PBWaGc5h7GMsNx68OH33cypkEDJCHvYVVgVbbxJDROYVtexSk0gK5iCF1xNjRIN2s8ai7hwkWDq5szWg==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.15.tgz", + "integrity": "sha512-7pAjK0aSdxOwR+CcYAqgWOGy5dcfvzsTIfFTb2odQqW47MDfv14UaJDY6eng8ylM2EaeKXdxaSWESbkmaQHTmw==", "dev": true, "dependencies": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.11", - "@babel/types": "^7.22.11" + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.22.15", + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" @@ -442,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.14", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.14.tgz", - "integrity": "sha512-1KucTHgOvaw/LzCVrEOAyXkr9rQlp0A1HiHRYnSUE9dmb8PvPW7o5sscg+5169r54n3vGlbx6GevTE/Iw/P3AQ==", + "version": "7.22.16", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.16.tgz", + "integrity": "sha512-+gPfKv8UWeKKeJTUxe59+OobVcrYHETCsORl61EmSkmgymguYk/X5bp7GuUIXaFsc6y++v8ZxPsLSSuujqDphA==", "bin": { "parser": "bin/babel-parser.js" }, @@ -453,33 +453,33 @@ } }, "node_modules/@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.11.tgz", - "integrity": "sha512-mzAenteTfomcB7mfPtyi+4oe5BZ6MXxWcn4CX+h4IRJ+OOGXBrWU6jDQavkQI9Vuc5P+donFabBfFCcmWka9lQ==", + "version": "7.22.17", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.17.tgz", + "integrity": "sha512-xK4Uwm0JnAMvxYZxOVecss85WxTEIbTa7bnGyf/+EgCL5Zt3U7htUpEOWv9detPlamGKuRzCqw74xVglDWpPdg==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.22.15", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.11", - "@babel/types": "^7.22.11", + "@babel/parser": "^7.22.16", + "@babel/types": "^7.22.17", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -488,13 +488,13 @@ } }, "node_modules/@babel/types": { - "version": "7.22.11", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.11.tgz", - "integrity": "sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg==", + "version": "7.22.17", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.17.tgz", + "integrity": "sha512-YSQPHLFtQNE5xN9tHuZnzu8vPr61wVTBZdfv1meex1NBosa4iT05k/Jw06ddJugi4bk7The/oSwQGFcksmEJQg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.15", "to-fast-properties": "^2.0.0" }, "engines": { @@ -612,9 +612,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", - "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", + "version": "8.49.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.49.0.tgz", + "integrity": "sha512-1S8uAY/MTJqVx0SC4epBq+N2yhuwtNwLbJYNZyhL2pO1ZVKn5HFXav5T41Ryzy9K9V7ZId2JB2oy/W4aCd9/2w==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2026,9 +2026,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001525", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001525.tgz", - "integrity": "sha512-/3z+wB4icFt3r0USMwxujAqRvaD/B7rvGTsKhbhSQErVrJvkZCLhgNLJxU8MevahQVH6hCU9FsHdNUFbiwmE7Q==", + "version": "1.0.30001532", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001532.tgz", + "integrity": "sha512-FbDFnNat3nMnrROzqrsg314zhqN5LGQ1kyyMk2opcrwGbVGpHRhgCWtAgD5YJUqNAiQ+dklreil/c3Qf1dfCTw==", "dev": true, "funding": [ { @@ -3296,9 +3296,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.508", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.508.tgz", - "integrity": "sha512-FFa8QKjQK/A5QuFr2167myhMesGrhlOBD+3cYNxO9/S4XzHEXesyTD/1/xF644gC8buFPz3ca6G1LOQD0tZrrg==", + "version": "1.4.513", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.513.tgz", + "integrity": "sha512-cOB0xcInjm+E5qIssHeXJ29BaUyWpMyFKT5RB3bsLENDheCja0wMkHJyiPl0NBE/VzDI7JDuNEQWhe6RitEUcw==", "dev": true }, "node_modules/emittery": { @@ -3418,16 +3418,16 @@ } }, "node_modules/eslint": { - "version": "8.48.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", - "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", + "version": "8.49.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.49.0.tgz", + "integrity": "sha512-jw03ENfm6VJI0jA9U+8H5zfl5b+FvuU3YYvZRdZHOlU2ggJkxrlkJH4HcDrZpj6YwD8kuYqvQM8LyesoazrSOQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.48.0", - "@humanwhocodes/config-array": "^0.11.10", + "@eslint/js": "8.49.0", + "@humanwhocodes/config-array": "^0.11.11", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "ajv": "^6.12.4", @@ -3808,9 +3808,9 @@ } }, "node_modules/esmock": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.3.8.tgz", - "integrity": "sha512-gZWoIwwo4Aa/kGgzqel7O1v4mlDiHS5fLdi4n26nOmizRUHDSbj1U5JF+XLHgYJvIUbJMZLVKIAqL3paBc16hQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.4.1.tgz", + "integrity": "sha512-Xb5D93l29mwvqdC9q0Yg9kK1MKtJgdgwQMdkI/QLFsfi7P3iQKw8AyMk1bV99kMIXfmDkWalaGV4BXrdkAb0rA==", "dev": true, "engines": { "node": ">=14.16.0" @@ -5261,9 +5261,9 @@ } }, "node_modules/jackspeak": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.1.tgz", - "integrity": "sha512-4iSY3Bh1Htv+kLhiiZunUhQ+OYXIn0ze3ulq8JeWrFKmhPAJSySV2+kdtRh2pGcCeF0s6oR8Oc+pYZynJj4t8A==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.3.tgz", + "integrity": "sha512-R2bUw+kVZFS/h1AZqBKrSgDmdmjApzgY0AlCPumopFiAlbUxE2gf+SCuBzQ0cP5hHmUmFYF5yw55T97Th5Kstg==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -9276,9 +9276,9 @@ } }, "node_modules/tar": { - "version": "6.1.15", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.15.tgz", - "integrity": "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", + "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -9378,9 +9378,9 @@ } }, "node_modules/terser": { - "version": "5.19.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.3.tgz", - "integrity": "sha512-pQzJ9UJzM0IgmT4FAtYI6+VqFf0lj/to58AV0Xfgg0Up37RyPG7Al+1cepC6/BVuAxR9oNb41/DL4DEoHJvTdg==", + "version": "5.19.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.4.tgz", + "integrity": "sha512-6p1DjHeuluwxDXcuT9VR8p64klWJKo1ILiy19s6C9+0Bh2+NWTX6nD9EPppiER4ICkHDVB1RkVpin/YW2nQn/g==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index 9e4f70f5141..a3c9bdc8878 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -151,11 +151,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.5", "docdash": "^2.0.2", - "eslint": "^8.48.0", + "eslint": "^8.49.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.5.1", - "esmock": "^2.3.8", + "esmock": "^2.4.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", From 7cab765a50795a14382a1f6c29d400d6c1a89ec4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20O=C3=9Fwald?= Date: Mon, 11 Sep 2023 14:28:33 +0200 Subject: [PATCH 1002/1272] [ui5-project][INTERNAL] Revert "Azure Pipelines: Switch back to Node 20.5.x" (#662) Reverts SAP/ui5-project#657 Node 20.6.1 has been released. --- packages/project/azure-pipelines.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 6eeaf64eb04..5c0fd2358a8 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -26,13 +26,13 @@ strategy: node_version: 18.x linux_node_current: imageName: 'ubuntu-22.04' - node_version: 20.5.x + node_version: 20.x mac_node_current: imageName: 'macos-12' - node_version: 20.5.x + node_version: 20.x windows_node_current: imageName: 'windows-2022' - node_version: 20.5.x + node_version: 20.x pool: vmImage: $(imageName) From ef02ea0cde2d534560114dc2d333a913586de984 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 15 Sep 2023 08:43:21 +0200 Subject: [PATCH 1003/1272] [ui5-project][INTERNAL] dependabot auto-merge: fix workflow JIRA: CPOUI5FOUNDATION-717 --- .../project/.github/workflows/dependabot-auto-merge.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/project/.github/workflows/dependabot-auto-merge.yml b/packages/project/.github/workflows/dependabot-auto-merge.yml index c62a1a20d19..31ea5d6b743 100644 --- a/packages/project/.github/workflows/dependabot-auto-merge.yml +++ b/packages/project/.github/workflows/dependabot-auto-merge.yml @@ -11,15 +11,17 @@ permissions: jobs: dependabot: runs-on: ubuntu-latest - if: ${{ github.actor == 'dependabot[bot]' && contains(github.event.pull_request.labels.*.name, 'github_actions') }} + if: ${{ github.actor == 'dependabot[bot]' && github.event.pull_request.auto_merge == null }} steps: - name: Dependabot metadata id: metadata uses: dependabot/fetch-metadata@v1 with: github-token: "${{ secrets.GITHUB_TOKEN }}" - - name: Enable auto-merge for Dependabot PRs - if: ${{ contains(fromJSON('["version-update:semver-minor", "version-update:semver-patch"]'), steps.metadata.outputs.update-type) }} + - name: Approve and auto-merge PRs for minor/patch updates of github-actions + if: | + steps.metadata.outputs.package-ecosystem == 'github_actions' && + contains(fromJSON('["version-update:semver-minor", "version-update:semver-patch"]'), steps.metadata.outputs.update-type) run: gh pr review --approve "$PR_URL" && gh pr merge --auto --rebase "$PR_URL" env: PR_URL: ${{github.event.pull_request.html_url}} From ca21afc6ffe068368df1883fe29b7b2d173b7e6f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Sep 2023 05:57:35 +0000 Subject: [PATCH 1004/1272] [ui5-project]Bump actions/checkout from 3 to 4 Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- packages/project/.github/workflows/reuse-compliance.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 4c2b7456241..fecd5254ddd 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -14,7 +14,7 @@ jobs: runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Use Node.js LTS 16.18.0 uses: actions/setup-node@v3.8.1 diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index e858c9fa7c7..2656d795c1b 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -13,6 +13,6 @@ jobs: name: Compliance Check runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Execute REUSE Compliance Check uses: fsfe/reuse-action@v2 From fde21ce445447f5e2f60bb47a2525522cf6fc2bc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 Sep 2023 11:53:14 +0000 Subject: [PATCH 1005/1272] [ui5-project]Bump coverallsapp/github-action from 2.2.1 to 2.2.3 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.2.1 to 2.2.3. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v2.2.1...v2.2.3) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index fecd5254ddd..4eac9840517 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v2.2.1 + uses: coverallsapp/github-action@v2.2.3 From 36e2b79eb0200d9f390a0c43bdc2eac316e517d0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 17 Sep 2023 02:20:16 +0000 Subject: [PATCH 1006/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 158 ++++++++++++----------------- packages/project/package.json | 8 +- 2 files changed, 71 insertions(+), 95 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5c5c096fca8..55de357a3ad 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -27,7 +27,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", - "resolve": "^1.22.4", + "resolve": "^1.22.6", "rimraf": "^5.0.1", "semver": "^7.5.4", "xml2js": "^0.6.2", @@ -38,13 +38,13 @@ "ava": "^5.3.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", - "depcheck": "^1.4.5", + "depcheck": "^1.4.6", "docdash": "^2.0.2", "eslint": "^8.49.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.5.1", - "esmock": "^2.4.1", + "eslint-plugin-jsdoc": "^46.8.1", + "esmock": "^2.5.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", @@ -152,30 +152,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.20.tgz", + "integrity": "sha512-BQYjKbpXjoXwFW5jGqiizJQQT/aC7pFm9Ok1OWssonuguICi264lbgMzRp2ZMmRSlfkX6DsWDDcsrctK8Rwfiw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.22.17", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.17.tgz", - "integrity": "sha512-2EENLmhpwplDux5PSsZnSbnSkB3tZ6QTksgO25xwEL7pIDcNOMhF5v/s6RzwjMZzZzw9Ofc30gHv5ChCC8pifQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.20.tgz", + "integrity": "sha512-Y6jd1ahLubuYweD/zJH+vvOY141v4f9igNQAQ+MBgq9JlHS2iTsZKn1aMsb3vGccZsXI16VzTBw52Xx0DWmtnA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.22.13", "@babel/generator": "^7.22.15", "@babel/helper-compilation-targets": "^7.22.15", - "@babel/helper-module-transforms": "^7.22.17", + "@babel/helper-module-transforms": "^7.22.20", "@babel/helpers": "^7.22.15", "@babel/parser": "^7.22.16", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.22.17", - "@babel/types": "^7.22.17", + "@babel/traverse": "^7.22.20", + "@babel/types": "^7.22.19", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -240,9 +240,9 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", "dev": true, "engines": { "node": ">=6.9.0" @@ -286,16 +286,16 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.22.17", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.17.tgz", - "integrity": "sha512-XouDDhQESrLHTpnBtCKExJdyY4gJCdrvH2Pyv8r8kovX2U8G0dRUOT45T9XlbLtuu9CLXP15eusnkprhoPV5iQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.20.tgz", + "integrity": "sha512-dLT7JVWIUUxKOs1UnJUBR3S70YK+pKX6AbJgB2vMIvEkZkrfJDbYDJesnPshtKV4LhDOR3Oc5YULeDizRek+5A==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-module-imports": "^7.22.15", "@babel/helper-simple-access": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.15" + "@babel/helper-validator-identifier": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -347,9 +347,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.15.tgz", - "integrity": "sha512-4E/F9IIEi8WR94324mbDUMo074YTheJmd7eZF5vITTeYchqAi6sYXRLHUVsmkdmY4QjfKTcB2jB7dVP3NaBElQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", "engines": { "node": ">=6.9.0" } @@ -378,11 +378,11 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz", - "integrity": "sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, @@ -467,19 +467,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.22.17", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.17.tgz", - "integrity": "sha512-xK4Uwm0JnAMvxYZxOVecss85WxTEIbTa7bnGyf/+EgCL5Zt3U7htUpEOWv9detPlamGKuRzCqw74xVglDWpPdg==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.20.tgz", + "integrity": "sha512-eU260mPZbU7mZ0N+X10pxXhQFMGTeLb9eFS0mxehS8HZp9o1uSnFeWQuG1UPrlxgA7QoUzFhOnilHDp0AXCyHw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.22.13", "@babel/generator": "^7.22.15", - "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.22.5", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", "@babel/parser": "^7.22.16", - "@babel/types": "^7.22.17", + "@babel/types": "^7.22.19", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -488,13 +488,13 @@ } }, "node_modules/@babel/types": { - "version": "7.22.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.17.tgz", - "integrity": "sha512-YSQPHLFtQNE5xN9tHuZnzu8vPr61wVTBZdfv1meex1NBosa4iT05k/Jw06ddJugi4bk7The/oSwQGFcksmEJQg==", + "version": "7.22.19", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.19.tgz", + "integrity": "sha512-P7LAw/LbojPzkgp5oznjE6tQEIWbp4PkkfrZDINTro9zgBRtI324/EYsiSI7lhPbpIQ+DCeR2NNmMWANGGfZsg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.15", + "@babel/helper-validator-identifier": "^7.22.19", "to-fast-properties": "^2.0.0" }, "engines": { @@ -531,9 +531,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.0.tgz", - "integrity": "sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.1.tgz", + "integrity": "sha512-PWiOzLIUAjN/w5K17PoF4n6sKBw0gqLHPhywmYHP4t1VFQQVYeb1yWsJwnMVEMl3tUHME7X/SJPZLmtG7XBDxQ==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -2026,9 +2026,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001532", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001532.tgz", - "integrity": "sha512-FbDFnNat3nMnrROzqrsg314zhqN5LGQ1kyyMk2opcrwGbVGpHRhgCWtAgD5YJUqNAiQ+dklreil/c3Qf1dfCTw==", + "version": "1.0.30001534", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001534.tgz", + "integrity": "sha512-vlPVrhsCS7XaSh2VvWluIQEzVhefrUQcEsQWSS5A5V+dM07uv1qHeQzAOTGIMy9i3e9bH15+muvI/UHojVgS/Q==", "dev": true, "funding": [ { @@ -2909,9 +2909,9 @@ "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" }, "node_modules/depcheck": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.5.tgz", - "integrity": "sha512-bgt8SfRJ5UQi+uieuTnx6Vd++xJaP7g28FwxM8pZlXHAVXe6mKfSyDDtTfKpF5PS5S6PrgW/o13CYn8YuWDnbQ==", + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.6.tgz", + "integrity": "sha512-Jxy9+u1DE+Svj2N0V/ueEQiOgH2X3KRPAsBfM0m/vCtuiG5QSC//b1mt0rbN/u3BFFEzXqpHzYiwDjmvAydEsw==", "dev": true, "dependencies": { "@babel/parser": "7.22.5", @@ -2935,7 +2935,6 @@ "require-package-name": "^2.0.1", "resolve": "^1.18.1", "resolve-from": "^5.0.0", - "sass": "^1.50.1", "semver": "^7.3.2", "yargs": "^16.1.0" }, @@ -3296,9 +3295,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.513", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.513.tgz", - "integrity": "sha512-cOB0xcInjm+E5qIssHeXJ29BaUyWpMyFKT5RB3bsLENDheCja0wMkHJyiPl0NBE/VzDI7JDuNEQWhe6RitEUcw==", + "version": "1.4.523", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.523.tgz", + "integrity": "sha512-9AreocSUWnzNtvLcbpng6N+GkXnCcBR80IQkxRC9Dfdyg4gaWNUPBujAHUpKkiUkoSoR9UlhA4zD/IgBklmhzg==", "dev": true }, "node_modules/emittery": { @@ -3506,9 +3505,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.5.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.5.1.tgz", - "integrity": "sha512-CPbvKprmEuJYoxMj5g8gXfPqUGgcqMM6jpH06Kp4pn5Uy5MrPkFKzoD7UFp2E4RBzfXbJz1+TeuEivwFVMkXBg==", + "version": "46.8.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.8.1.tgz", + "integrity": "sha512-uTce7IBluPKXIQMWJkIwFsI1gv7sZRmLjctca2K5DIxPi8fSBj9f4iru42XmGwuiMyH2f3nfc60sFmnSGv4Z/A==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.40.1", @@ -3808,9 +3807,9 @@ } }, "node_modules/esmock": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.4.1.tgz", - "integrity": "sha512-Xb5D93l29mwvqdC9q0Yg9kK1MKtJgdgwQMdkI/QLFsfi7P3iQKw8AyMk1bV99kMIXfmDkWalaGV4BXrdkAb0rA==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.1.tgz", + "integrity": "sha512-3pu+ri9kNrRjahR8c+FWXphK3xpKrgBwLHu+A+Xj3vw84fGsScWY3SWTH1v5nSiheYQAdlz5Ny+a319tlle1mA==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4231,9 +4230,9 @@ } }, "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", "dev": true }, "node_modules/foreground-child": { @@ -4731,12 +4730,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/immutable": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.4.tgz", - "integrity": "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==", - "dev": true - }, "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -8089,9 +8082,9 @@ } }, "node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.0.tgz", - "integrity": "sha512-ICclEpTLhHj+zCuSb2/usoNXSVkxUSIopre+b1w8NDY9Dntp9LO4vLdHYI336TH8sAqwrRgnSfdkBG2/YpisHA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", "dependencies": { "lru-cache": "^10.0.1" }, @@ -8276,9 +8269,9 @@ } }, "node_modules/resolve": { - "version": "1.22.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", - "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "version": "1.22.6", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.6.tgz", + "integrity": "sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw==", "dependencies": { "is-core-module": "^2.13.0", "path-parse": "^1.0.7", @@ -8504,23 +8497,6 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "optional": true }, - "node_modules/sass": { - "version": "1.66.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.66.1.tgz", - "integrity": "sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA==", - "dev": true, - "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", @@ -9800,9 +9776,9 @@ } }, "node_modules/workerpool": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.4.2.tgz", - "integrity": "sha512-MrDWwemtC4xNV22kbbZDQQQmxNX+yLm790sgYl2wVD3CWnK7LJY1youI/11wHorAjHjK+GEjUxUh74XoPU71uQ==" + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.0.tgz", + "integrity": "sha512-r64Ea3glXY2RVzMeNxB+4J+0YHAVzUdV4cM5nHi4BBC2LvnO1pWFAIYKYuGcPElbg1/7eEiaPtZ/jzCjIUuGBg==" }, "node_modules/wrap-ansi": { "version": "8.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index a3c9bdc8878..656861b6f7c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -138,7 +138,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", - "resolve": "^1.22.4", + "resolve": "^1.22.6", "rimraf": "^5.0.1", "semver": "^7.5.4", "xml2js": "^0.6.2", @@ -149,13 +149,13 @@ "ava": "^5.3.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", - "depcheck": "^1.4.5", + "depcheck": "^1.4.6", "docdash": "^2.0.2", "eslint": "^8.49.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.5.1", - "esmock": "^2.4.1", + "eslint-plugin-jsdoc": "^46.8.1", + "esmock": "^2.5.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.1", From d188b3fc17aae446d360333d34a0d8e086a2ab9c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 17 Sep 2023 10:02:25 +0000 Subject: [PATCH 1007/1272] [ui5-project][INTERNAL] Bump sinon from 15.2.0 to 16.0.0 Bumps [sinon](https://github.com/sinonjs/sinon) from 15.2.0 to 16.0.0. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md) - [Commits](https://github.com/sinonjs/sinon/compare/v15.2.0...v16.0.0) --- updated-dependencies: - dependency-name: sinon dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 55de357a3ad..4d488fb4613 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -53,7 +53,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.2.0", + "sinon": "^16.0.0", "tap-xunit": "^2.4.1" }, "engines": { @@ -8619,9 +8619,9 @@ } }, "node_modules/sinon": { - "version": "15.2.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.2.0.tgz", - "integrity": "sha512-nPS85arNqwBXaIsFCkolHjGIkFo+Oxu9vbgmBJizLAhqe6P2o3Qmj3KCUoRkfhHtvgDhZdWD3risLHAUJ8npjw==", + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-16.0.0.tgz", + "integrity": "sha512-B8AaZZm9CT5pqe4l4uWJztfD/mOTa7dL8Qo0W4+s+t74xECOgSZDDQCBjNgIK3+n4kyxQrSTv2V5ul8K25qkiQ==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 656861b6f7c..66645288175 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -164,7 +164,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^15.2.0", + "sinon": "^16.0.0", "tap-xunit": "^2.4.1" } } From 88be88833487a5b919cdc54ecb4fd5f239845943 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 24 Sep 2023 02:20:20 +0000 Subject: [PATCH 1008/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 104 ++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 55 insertions(+), 55 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4d488fb4613..752f0302fec 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.7.0", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^6.2.1", + "@npmcli/config": "^6.3.0", "@ui5/builder": "^3.0.9", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", @@ -40,10 +40,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.6", "docdash": "^2.0.2", - "eslint": "^8.49.0", + "eslint": "^8.50.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.8.1", + "eslint-plugin-jsdoc": "^46.8.2", "esmock": "^2.5.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", @@ -573,9 +573,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.21.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", - "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "version": "13.22.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.22.0.tgz", + "integrity": "sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -612,9 +612,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.49.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.49.0.tgz", - "integrity": "sha512-1S8uAY/MTJqVx0SC4epBq+N2yhuwtNwLbJYNZyhL2pO1ZVKn5HFXav5T41Ryzy9K9V7ZId2JB2oy/W4aCd9/2w==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.50.0.tgz", + "integrity": "sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -871,9 +871,9 @@ } }, "node_modules/@npmcli/config": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-6.2.1.tgz", - "integrity": "sha512-Cj/OrSbrLvnwWuzquFCDTwFN8QmR+SWH6qLNCBttUreDkKM5D5p36SeSMbcEUiCGdwjUrVy2yd8C0REwwwDPEw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-6.3.0.tgz", + "integrity": "sha512-gV64pm5cQ7F2oeoSJ5HTfaKxjFsvC4dAbCsQbtbOkEOymM6iZI62yNGCOLjcq/rfYX9+wVn34ThxK7GZpUwWFg==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^3.8.0", @@ -1207,9 +1207,9 @@ "dev": true }, "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.2.tgz", + "integrity": "sha512-lqa4UEhhv/2sjjIQgjX8B+RBjj47eo0mzGasklVJ78UKGQY1r0VpB9XHDaZZO9qzEFDdy4MrXLuEaSmPrPSe/A==" }, "node_modules/@types/parse-json": { "version": "4.0.0", @@ -1753,9 +1753,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.10", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", - "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "version": "4.21.11", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.11.tgz", + "integrity": "sha512-xn1UXOKUz7DjdGlg9RrUr0GGiWzI97UQJnugHtH0OLDfJB7jMgoIkYvRIEO1l9EeEERVqeqLYOcFBW9ldjypbQ==", "dev": true, "funding": [ { @@ -1772,10 +1772,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", + "caniuse-lite": "^1.0.30001538", + "electron-to-chromium": "^1.4.526", "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" + "update-browserslist-db": "^1.0.13" }, "bin": { "browserslist": "cli.js" @@ -2026,9 +2026,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001534", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001534.tgz", - "integrity": "sha512-vlPVrhsCS7XaSh2VvWluIQEzVhefrUQcEsQWSS5A5V+dM07uv1qHeQzAOTGIMy9i3e9bH15+muvI/UHojVgS/Q==", + "version": "1.0.30001538", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001538.tgz", + "integrity": "sha512-HWJnhnID+0YMtGlzcp3T9drmBJUVDchPJ08tpUGFLs9CYlwWPH2uLgpHn8fND5pCgXVtnGS3H4QR9XLMHVNkHw==", "dev": true, "funding": [ { @@ -3295,9 +3295,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.523", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.523.tgz", - "integrity": "sha512-9AreocSUWnzNtvLcbpng6N+GkXnCcBR80IQkxRC9Dfdyg4gaWNUPBujAHUpKkiUkoSoR9UlhA4zD/IgBklmhzg==", + "version": "1.4.528", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.528.tgz", + "integrity": "sha512-UdREXMXzLkREF4jA8t89FQjA8WHI6ssP38PMY4/4KhXFQbtImnghh4GkCgrtiZwLKUKVD2iTVXvDVQjfomEQuA==", "dev": true }, "node_modules/emittery": { @@ -3417,15 +3417,15 @@ } }, "node_modules/eslint": { - "version": "8.49.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.49.0.tgz", - "integrity": "sha512-jw03ENfm6VJI0jA9U+8H5zfl5b+FvuU3YYvZRdZHOlU2ggJkxrlkJH4HcDrZpj6YwD8kuYqvQM8LyesoazrSOQ==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.50.0.tgz", + "integrity": "sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.49.0", + "@eslint/js": "8.50.0", "@humanwhocodes/config-array": "^0.11.11", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3505,9 +3505,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.8.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.8.1.tgz", - "integrity": "sha512-uTce7IBluPKXIQMWJkIwFsI1gv7sZRmLjctca2K5DIxPi8fSBj9f4iru42XmGwuiMyH2f3nfc60sFmnSGv4Z/A==", + "version": "46.8.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.8.2.tgz", + "integrity": "sha512-5TSnD018f3tUJNne4s4gDWQflbsgOycIKEUBoCLn6XtBMgNHxQFmV8vVxUtiPxAQq8lrX85OaSG/2gnctxw9uQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.40.1", @@ -3711,9 +3711,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.21.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", - "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "version": "13.22.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.22.0.tgz", + "integrity": "sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -4399,9 +4399,9 @@ } }, "node_modules/glob": { - "version": "10.3.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.4.tgz", - "integrity": "sha512-6LFElP3A+i/Q8XQKEvZjkEWEOTgAIALR9AO2rwT8bgPhDd1anmqDJDZ6lLddI4ehxxxR1S5RIqKe1uapMQfYaQ==", + "version": "10.3.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.6.tgz", + "integrity": "sha512-mEfImdc/fiYHEcF6pHFfD2b/KrdFB1qH9mRe5vI5HROF8G51SWxQJ2V56Ezl6ZL9y86gsxQ1Lgo2S746KGUPSQ==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", @@ -7720,9 +7720,9 @@ } }, "node_modules/postcss": { - "version": "8.4.29", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.29.tgz", - "integrity": "sha512-cbI+jaqIeu/VGqXEarWkRCCffhjgXc0qjBtXpqJhTBohMUjUQnbBr0xqX3vEKudc4iviTewcJo5ajcec5+wdJw==", + "version": "8.4.30", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.30.tgz", + "integrity": "sha512-7ZEao1g4kd68l97aWG/etQKPKq07us0ieSZ2TnFDk11i0ZfDW2AwKHYU8qv4MZKqN2fdBfg+7q0ES06UA73C1g==", "dev": true, "funding": [ { @@ -8865,9 +8865,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz", - "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==" + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.15.tgz", + "integrity": "sha512-lpT8hSQp9jAKp9mhtBU4Xjon8LPGBvLIuBiSVhMEtmLecTh2mO0tlqrAMp47tBXzMr13NJMQ2lf7RpQGLJ3HsQ==" }, "node_modules/sprintf-js": { "version": "1.0.3", @@ -9354,9 +9354,9 @@ } }, "node_modules/terser": { - "version": "5.19.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.4.tgz", - "integrity": "sha512-6p1DjHeuluwxDXcuT9VR8p64klWJKo1ILiy19s6C9+0Bh2+NWTX6nD9EPppiER4ICkHDVB1RkVpin/YW2nQn/g==", + "version": "5.20.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.20.0.tgz", + "integrity": "sha512-e56ETryaQDyebBwJIWYB2TT6f2EZ0fL0sW/JRXNMN26zZdKi2u/E/5my5lG6jNxym6qsrVXfFRmOdV42zlAgLQ==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", @@ -9662,9 +9662,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, "funding": [ { diff --git a/packages/project/package.json b/packages/project/package.json index 66645288175..e765be12aa2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^6.2.1", + "@npmcli/config": "^6.3.0", "@ui5/builder": "^3.0.9", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", @@ -151,10 +151,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.6", "docdash": "^2.0.2", - "eslint": "^8.49.0", + "eslint": "^8.50.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.8.1", + "eslint-plugin-jsdoc": "^46.8.2", "esmock": "^2.5.1", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.0", From 9cd369f45cf449d93f5b5939dafdcbae98317a4d Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Wed, 27 Sep 2023 14:37:29 +0200 Subject: [PATCH 1009/1272] [ui5-project][FIX] Allow usage of after/before task assignment for all standard tasks (#628) This change allows custom tasks to subscribe to any standard task, even disabled ones, ensuring custom tasks' execution and the correct order. Background information: When transitioning a project from V2 to V3, we often need to adjust the before/after task assignments for custom tasks due to the removal of the `uglify` task. The new `minify` task now runs earlier than the previous `uglify` task. Developers typically used `uglify` as the last enabled standard task to subscribe to. You can find updated documentation here: https://github.com/SAP/ui5-tooling/pull/874 JIRA: CPOUI5FOUNDATION-724 --------- Co-authored-by: Yavor Ivanov --- packages/project/lib/build/TaskRunner.js | 44 ++++--- .../lib/build/definitions/application.js | 5 + .../project/lib/build/definitions/library.js | 6 + .../lib/build/definitions/themeLibrary.js | 2 + packages/project/test/lib/build/TaskRunner.js | 41 +++++++ .../test/lib/build/definitions/application.js | 6 + .../test/lib/build/definitions/library.js | 110 ++++++++++++++++++ .../lib/build/definitions/themeLibrary.js | 9 ++ 8 files changed, 205 insertions(+), 18 deletions(-) diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index cd9a251e2e8..c4782c6f79a 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -111,7 +111,9 @@ class TaskRunner { // This would require a more robust contract to identify task executions // (e.g. via an 'id' that can be assigned to a specific execution in the configuration). const taskWithoutSuffixCounter = taskName.replace(/--\d+$/, ""); - return tasksToRun.includes(taskWithoutSuffixCounter); + return tasksToRun.includes(taskWithoutSuffixCounter) && + // Task can be explicitly excluded by making its taskFunction = null + this._tasks[taskName].task !== null; }); this._log.setTasks(allTasks); @@ -176,25 +178,31 @@ class TaskRunner { `It has already been scheduled for execution`); } - const task = async (log) => { - options.projectName = this._project.getName(); - options.projectNamespace = this._project.getNamespace(); + let task; + if (taskFunction === null) { + this._log.verbose(`Task ${taskName} is set to be explicitly skipped in definitions.`); + task = null; + } else { + task = async (log) => { + options.projectName = this._project.getName(); + options.projectNamespace = this._project.getNamespace(); + + const params = { + workspace: this._project.getWorkspace(), + taskUtil: this._taskUtil, + options + }; + + if (requiresDependencies) { + params.dependencies = this._allDependenciesReader; + } - const params = { - workspace: this._project.getWorkspace(), - taskUtil: this._taskUtil, - options + if (!taskFunction) { + taskFunction = (await this._taskRepository.getTask(taskName)).task; + } + return taskFunction(params); }; - - if (requiresDependencies) { - params.dependencies = this._allDependenciesReader; - } - - if (!taskFunction) { - taskFunction = (await this._taskRepository.getTask(taskName)).task; - } - return taskFunction(params); - }; + } this._tasks[taskName] = { task, requiredDependencies: requiresDependencies ? this._directDependencies : new Set() diff --git a/packages/project/lib/build/definitions/application.js b/packages/project/lib/build/definitions/application.js index 5a21557fc2b..cb55a2a06a6 100644 --- a/packages/project/lib/build/definitions/application.js +++ b/packages/project/lib/build/definitions/application.js @@ -100,6 +100,11 @@ export default function({project, taskUtil, getTask}) { }, Promise.resolve()); } }); + } else { + // No bundles defined. Just set task so that it can be referenced by custom tasks + tasks.set("generateBundle", { + taskFunction: null + }); } tasks.set("generateVersionInfo", { diff --git a/packages/project/lib/build/definitions/library.js b/packages/project/lib/build/definitions/library.js index 7ff35d01d96..2e8808498a3 100644 --- a/packages/project/lib/build/definitions/library.js +++ b/packages/project/lib/build/definitions/library.js @@ -103,6 +103,8 @@ export default function({project, taskUtil, getTask}) { skipBundles: existingBundleDefinitionNames } }); + } else { + tasks.set("generateComponentPreload", {taskFunction: null}); } tasks.set("generateLibraryPreload", { @@ -133,6 +135,8 @@ export default function({project, taskUtil, getTask}) { }, Promise.resolve()); } }); + } else { + tasks.set("generateBundle", {taskFunction: null}); } tasks.set("buildThemes", { @@ -153,6 +157,8 @@ export default function({project, taskUtil, getTask}) { version: project.getVersion() } }); + } else { + tasks.set("generateThemeDesignerResources", {taskFunction: null}); } tasks.set("generateResourcesJson", { diff --git a/packages/project/lib/build/definitions/themeLibrary.js b/packages/project/lib/build/definitions/themeLibrary.js index e1cbc77039b..2acf0392768 100644 --- a/packages/project/lib/build/definitions/themeLibrary.js +++ b/packages/project/lib/build/definitions/themeLibrary.js @@ -42,6 +42,8 @@ export default function({project, taskUtil, getTask}) { version: project.getVersion() } }); + } else { + tasks.set("generateThemeDesignerResources", {taskFunction: null}); } tasks.set("generateResourcesJson", {requiresDependencies: true}); diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index e215957a984..e27aeffa722 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -246,6 +246,7 @@ test("_initTasks: Project of type 'library'", async (t) => { "generateLibraryPreload", "generateBundle", "buildThemes", + "generateThemeDesignerResources", "generateResourcesJson" ], "Correct standard tasks"); }); @@ -290,6 +291,7 @@ test("_initTasks: Project of type 'theme-library'", async (t) => { "replaceCopyright", "replaceVersion", "buildThemes", + "generateThemeDesignerResources", "generateResourcesJson" ], "Correct standard tasks"); }); @@ -1248,6 +1250,45 @@ test("Custom task: requiredDependenciesCallback returns Array instead of Set", a }, "Threw with expected error message"); }); +test("Custom task attached to a disabled task", async (t) => { + const {graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger, sinon, customTask} = t.context; + + const project = getMockProject("application"); + const customTaskFnStub = sinon.stub(); + project.getBundles = emptyarray; + project.getCustomTasks = () => [ + {name: "myTask", afterTask: "generateBundle", configuration: "dog"} + ]; + + taskRepository.getTask = sinon.stub().returns({task: sinon.stub()}); + customTask.getTask = () => customTaskFnStub; + + const taskRunner = new TaskRunner({ + project, graph, taskUtil, taskRepository, log: projectBuildLogger, buildConfig + }); + + await taskRunner.runTasks(); + + const setTasksArgs = projectBuildLogger.setTasks.firstCall.args[0]; + t.true(setTasksArgs.includes("myTask"), "Custom task 'myTask' is queried"); + t.is(customTaskFnStub.calledOnce, true, "Custom task 'myTask' is executed"); + t.false(setTasksArgs.includes("generateBundle"), + "generateBundle standard task is excluded from the execution list"); + + t.deepEqual( + setTasksArgs, + [ + "escapeNonAsciiCharacters", + "replaceCopyright", + "replaceVersion", + "minify", + "generateFlexChangesBundle", + "generateComponentPreload", + "myTask", + ], + "Correct tasks execution"); +}); + test.serial("_addTask", async (t) => { const {sinon, graph, taskUtil, taskRepository, TaskRunner, projectBuildLogger} = t.context; diff --git a/packages/project/test/lib/build/definitions/application.js b/packages/project/test/lib/build/definitions/application.js index 4fe95a23a08..d78f9313dfe 100644 --- a/packages/project/test/lib/build/definitions/application.js +++ b/packages/project/test/lib/build/definitions/application.js @@ -83,6 +83,9 @@ test("Standard build", (t) => { requiresDependencies: true }, transformBootstrapHtml: {}, + generateBundle: { + taskFunction: null + }, generateVersionInfo: { requiresDependencies: true, options: { @@ -159,6 +162,9 @@ test("Standard build with legacy spec version", (t) => { requiresDependencies: true }, transformBootstrapHtml: {}, + generateBundle: { + taskFunction: null + }, generateVersionInfo: { requiresDependencies: true, options: { diff --git a/packages/project/test/lib/build/definitions/library.js b/packages/project/test/lib/build/definitions/library.js index 040f1caa890..510ecb548f8 100644 --- a/packages/project/test/lib/build/definitions/library.js +++ b/packages/project/test/lib/build/definitions/library.js @@ -114,6 +114,15 @@ test("Standard build", async (t) => { cssVariables: undefined } }, + generateBundle: { + taskFunction: null + }, + generateComponentPreload: { + taskFunction: null + }, + generateThemeDesignerResources: { + taskFunction: null + }, generateResourcesJson: { requiresDependencies: true } @@ -241,6 +250,15 @@ test("Standard build with legacy spec version", (t) => { cssVariables: undefined } }, + generateBundle: { + taskFunction: null + }, + generateComponentPreload: { + taskFunction: null + }, + generateThemeDesignerResources: { + taskFunction: null + }, generateResourcesJson: { requiresDependencies: true } @@ -361,6 +379,12 @@ test("Custom bundles", async (t) => { cssVariables: undefined } }, + generateComponentPreload: { + taskFunction: null + }, + generateThemeDesignerResources: { + taskFunction: null + }, generateResourcesJson: { requiresDependencies: true } @@ -606,3 +630,89 @@ test("buildThemes: CSS Variables enabled", (t) => { t.is(taskUtil.getBuildOption.getCall(0).args[0], "cssVariables", "taskUtil#getBuildOption got called with correct argument"); }); + +test("Standard build: nulled taskFunction to skip tasks", (t) => { + const {project, taskUtil, getTask} = t.context; + project.getJsdocExcludes = () => ["**.html"]; + + const tasks = library({ + project, taskUtil, getTask + }); + const generateComponentPreloadTaskDefinition = tasks.get("generateComponentPreload"); + const generateBundleTaskDefinition = tasks.get("generateBundle"); + const generateThemeDesignerResourcesTaskDefinition = tasks.get("generateThemeDesignerResources"); + t.deepEqual(Object.fromEntries(tasks), { + escapeNonAsciiCharacters: { + options: { + encoding: "UTF-412", pattern: "/**/*.properties" + } + }, + replaceCopyright: { + options: { + copyright: "copyright", + pattern: "/**/*.{js,library,css,less,theme,html}" + } + }, + replaceVersion: { + options: { + version: "version", + pattern: "/**/*.{js,json,library,css,less,theme,html}" + } + }, + replaceBuildtime: { + options: { + pattern: "/resources/sap/ui/Global.js" + } + }, + generateJsdoc: { + requiresDependencies: true, + taskFunction: async () => {}, + }, + executeJsdocSdkTransformation: { + requiresDependencies: true, + options: { + dotLibraryPattern: "/resources/**/*.library" + } + }, + minify: { + options: { + pattern: [ + "/resources/**/*.js", + "!**/*.support.js", + ] + } + }, + generateLibraryManifest: {}, + generateLibraryPreload: { + options: { + excludes: [], skipBundles: [] + } + }, + buildThemes: { + requiresDependencies: true, + options: { + projectName: "project.b", + librariesPattern: undefined, + themesPattern: undefined, + inputPattern: "/resources/project/b/themes/*/library.source.less", + cssVariables: undefined + } + }, + generateBundle: { + taskFunction: null + }, + generateComponentPreload: { + taskFunction: null + }, + generateThemeDesignerResources: { + taskFunction: null + }, + generateResourcesJson: { + requiresDependencies: true + } + }, "Correct task definitions"); + + t.is(generateComponentPreloadTaskDefinition.taskFunction, null, "taskFunction is explicitly set to null"); + t.is(generateBundleTaskDefinition.taskFunction, null, "taskFunction is explicitly set to null"); + t.is(generateThemeDesignerResourcesTaskDefinition.taskFunction, null, "taskFunction is explicitly set to null"); +}); diff --git a/packages/project/test/lib/build/definitions/themeLibrary.js b/packages/project/test/lib/build/definitions/themeLibrary.js index c57c7f38c75..2da2457b538 100644 --- a/packages/project/test/lib/build/definitions/themeLibrary.js +++ b/packages/project/test/lib/build/definitions/themeLibrary.js @@ -47,6 +47,7 @@ test("Standard build", (t) => { const tasks = themeLibrary({ project, taskUtil, getTask }); + const generateThemeDesignerResourcesTaskFunction = tasks.get("generateThemeDesignerResources"); t.deepEqual(Object.fromEntries(tasks), { replaceCopyright: { options: { @@ -72,12 +73,17 @@ test("Standard build", (t) => { }, generateResourcesJson: { requiresDependencies: true + }, + generateThemeDesignerResources: { + taskFunction: null } }, "Correct task definitions"); t.is(taskUtil.getBuildOption.callCount, 1, "taskUtil#getBuildOption got called once"); t.is(taskUtil.getBuildOption.getCall(0).args[0], "cssVariables", "taskUtil#getBuildOption got called with correct argument"); + + t.is(generateThemeDesignerResourcesTaskFunction.taskFunction, null, "taskFunction is explicitly set to null"); }); test("Standard build (framework project)", (t) => { @@ -128,6 +134,9 @@ test("Standard build for non root project", (t) => { }, generateResourcesJson: { requiresDependencies: true + }, + generateThemeDesignerResources: { + taskFunction: null } }, "Correct task definitions"); From e4a5617b634a1c9f87c3377d983625586915a12d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 1 Oct 2023 02:20:37 +0000 Subject: [PATCH 1010/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 198 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 103 insertions(+), 97 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 752f0302fec..e1dad484334 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -28,7 +28,7 @@ "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", "resolve": "^1.22.6", - "rimraf": "^5.0.1", + "rimraf": "^5.0.5", "semver": "^7.5.4", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -161,22 +161,22 @@ } }, "node_modules/@babel/core": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.20.tgz", - "integrity": "sha512-Y6jd1ahLubuYweD/zJH+vvOY141v4f9igNQAQ+MBgq9JlHS2iTsZKn1aMsb3vGccZsXI16VzTBw52Xx0DWmtnA==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.0.tgz", + "integrity": "sha512-97z/ju/Jy1rZmDxybphrBuI+jtJjFVoz7Mr9yUQVVVi+DNZE333uFQeMOqcCIy1x3WYBIbWftUSLmbNXNT7qFQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.22.15", + "@babel/generator": "^7.23.0", "@babel/helper-compilation-targets": "^7.22.15", - "@babel/helper-module-transforms": "^7.22.20", - "@babel/helpers": "^7.22.15", - "@babel/parser": "^7.22.16", + "@babel/helper-module-transforms": "^7.23.0", + "@babel/helpers": "^7.23.0", + "@babel/parser": "^7.23.0", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.22.20", - "@babel/types": "^7.22.19", - "convert-source-map": "^1.7.0", + "@babel/traverse": "^7.23.0", + "@babel/types": "^7.23.0", + "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", "json5": "^2.2.3", @@ -200,12 +200,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.15.tgz", - "integrity": "sha512-Zu9oWARBqeVOW0dZOjXc3JObrzuqothQ3y/n1kUtrjCoCPLkXUwMvOo/F/TCfoHMbWIFlWwpZtkZVb9ga4U2pA==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", "dev": true, "dependencies": { - "@babel/types": "^7.22.15", + "@babel/types": "^7.23.0", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -249,13 +249,13 @@ } }, "node_modules/@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", "dev": true, "dependencies": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" @@ -286,9 +286,9 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.20.tgz", - "integrity": "sha512-dLT7JVWIUUxKOs1UnJUBR3S70YK+pKX6AbJgB2vMIvEkZkrfJDbYDJesnPshtKV4LhDOR3Oc5YULeDizRek+5A==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", + "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.22.20", @@ -364,14 +364,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.15.tgz", - "integrity": "sha512-7pAjK0aSdxOwR+CcYAqgWOGy5dcfvzsTIfFTb2odQqW47MDfv14UaJDY6eng8ylM2EaeKXdxaSWESbkmaQHTmw==", + "version": "7.23.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.1.tgz", + "integrity": "sha512-chNpneuK18yW5Oxsr+t553UZzzAs3aZnFm4bxhebsNTeshrC95yA7l5yl7GBAG+JG1rF0F7zzD2EixK9mWSDoA==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/traverse": "^7.23.0", + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" @@ -442,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.16", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.16.tgz", - "integrity": "sha512-+gPfKv8UWeKKeJTUxe59+OobVcrYHETCsORl61EmSkmgymguYk/X5bp7GuUIXaFsc6y++v8ZxPsLSSuujqDphA==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", + "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", "bin": { "parser": "bin/babel-parser.js" }, @@ -467,19 +467,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.20.tgz", - "integrity": "sha512-eU260mPZbU7mZ0N+X10pxXhQFMGTeLb9eFS0mxehS8HZp9o1uSnFeWQuG1UPrlxgA7QoUzFhOnilHDp0AXCyHw==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.0.tgz", + "integrity": "sha512-t/QaEvyIoIkwzpiZ7aoSKK8kObQYeF7T2v+dazAYCb8SXtp58zEVkWW7zAnju8FNKNdr4ScAOEDmMItbyOmEYw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.22.15", + "@babel/generator": "^7.23.0", "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.22.5", + "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.16", - "@babel/types": "^7.22.19", + "@babel/parser": "^7.23.0", + "@babel/types": "^7.23.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -488,13 +488,13 @@ } }, "node_modules/@babel/types": { - "version": "7.22.19", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.19.tgz", - "integrity": "sha512-P7LAw/LbojPzkgp5oznjE6tQEIWbp4PkkfrZDINTro9zgBRtI324/EYsiSI7lhPbpIQ+DCeR2NNmMWANGGfZsg==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", + "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.19", + "@babel/helper-validator-identifier": "^7.22.20", "to-fast-properties": "^2.0.0" }, "engines": { @@ -531,9 +531,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.1.tgz", - "integrity": "sha512-PWiOzLIUAjN/w5K17PoF4n6sKBw0gqLHPhywmYHP4t1VFQQVYeb1yWsJwnMVEMl3tUHME7X/SJPZLmtG7XBDxQ==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.0.tgz", + "integrity": "sha512-zJmuCWj2VLBt4c25CfBIbMZLGLyhkvs7LznyVX5HfpzeocThgIj5XQK4L+g3U36mMcx8bPMhGyPpwCATamC4jQ==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -1190,9 +1190,9 @@ } }, "node_modules/@types/mdurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", - "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.3.tgz", + "integrity": "sha512-T5k6kTXak79gwmIOaDF2UUQXFbnBE0zBUzF20pz7wDYu0RQMzWg+Ml/Pz50214NsFHBITkoi5VtdjFZnJ2ijjA==" }, "node_modules/@types/minimatch": { "version": "3.0.5", @@ -1201,9 +1201,9 @@ "dev": true }, "node_modules/@types/minimist": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", - "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.3.tgz", + "integrity": "sha512-ZYFzrvyWUNhaPomn80dsMNgMeXxNWZBdkuG/hWlUvXvbdUH8ZERNBGXnU87McuGcWDsyzX2aChCv/SVN348k3A==", "dev": true }, "node_modules/@types/normalize-package-data": { @@ -1753,9 +1753,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.11", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.11.tgz", - "integrity": "sha512-xn1UXOKUz7DjdGlg9RrUr0GGiWzI97UQJnugHtH0OLDfJB7jMgoIkYvRIEO1l9EeEERVqeqLYOcFBW9ldjypbQ==", + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", + "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", "dev": true, "funding": [ { @@ -1772,8 +1772,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001538", - "electron-to-chromium": "^1.4.526", + "caniuse-lite": "^1.0.30001541", + "electron-to-chromium": "^1.4.535", "node-releases": "^2.0.13", "update-browserslist-db": "^1.0.13" }, @@ -2026,9 +2026,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001538", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001538.tgz", - "integrity": "sha512-HWJnhnID+0YMtGlzcp3T9drmBJUVDchPJ08tpUGFLs9CYlwWPH2uLgpHn8fND5pCgXVtnGS3H4QR9XLMHVNkHw==", + "version": "1.0.30001541", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001541.tgz", + "integrity": "sha512-bLOsqxDgTqUBkzxbNlSBt8annkDpQB9NdzdTbO2ooJ+eC/IQcvDspDc058g84ejCelF7vHUx57KIOjEecOHXaw==", "dev": true, "funding": [ { @@ -2637,9 +2637,9 @@ "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" }, "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "dev": true }, "node_modules/convert-to-spaces": { @@ -3295,9 +3295,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.528", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.528.tgz", - "integrity": "sha512-UdREXMXzLkREF4jA8t89FQjA8WHI6ssP38PMY4/4KhXFQbtImnghh4GkCgrtiZwLKUKVD2iTVXvDVQjfomEQuA==", + "version": "1.4.537", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.537.tgz", + "integrity": "sha512-W1+g9qs9hviII0HAwOdehGYkr+zt7KKdmCcJcjH0mYg6oL8+ioT3Skjmt7BLoAQqXhjf40AXd+HlR4oAWMlXjA==", "dev": true }, "node_modules/emittery": { @@ -4399,18 +4399,18 @@ } }, "node_modules/glob": { - "version": "10.3.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.6.tgz", - "integrity": "sha512-mEfImdc/fiYHEcF6pHFfD2b/KrdFB1qH9mRe5vI5HROF8G51SWxQJ2V56Ezl6ZL9y86gsxQ1Lgo2S746KGUPSQ==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", + "jackspeak": "^2.3.5", "minimatch": "^9.0.1", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", "path-scurry": "^1.10.1" }, "bin": { - "glob": "dist/cjs/src/bin.js" + "glob": "dist/esm/bin.mjs" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -5254,9 +5254,9 @@ } }, "node_modules/jackspeak": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.3.tgz", - "integrity": "sha512-R2bUw+kVZFS/h1AZqBKrSgDmdmjApzgY0AlCPumopFiAlbUxE2gf+SCuBzQ0cP5hHmUmFYF5yw55T97Th5Kstg==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -5630,9 +5630,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.3", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.3.tgz", - "integrity": "sha512-B7xGbll2fG/VjP+SWg4sX3JynwIU0mjoTc6MPpKNuIvftk6u6vqhDnk1R80b8C2GBR6ywqy+1DcKBrevBg+bmw==", + "version": "0.30.4", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.4.tgz", + "integrity": "sha512-Q/TKtsC5BPm0kGqgBIF9oXAs/xEf2vRKiIB4wCRQTJOQIByZ1d+NnUOotvJOvNpi5RNIgVOMC3pOuaP1ZTDlVg==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -6159,9 +6159,9 @@ } }, "node_modules/minipass": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.3.tgz", - "integrity": "sha512-LhbbwCfz3vsb12j/WkWQPZfKTsgqIe1Nf/ti1pKjYESGLHIVjWU96G9/ljLH4F9mWNVhlQOm0VySdAWzf05dpg==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", "engines": { "node": ">=16 || 14 >=14.17" } @@ -6927,6 +6927,12 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "node_modules/nyc/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, "node_modules/nyc/node_modules/foreground-child": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", @@ -7720,9 +7726,9 @@ } }, "node_modules/postcss": { - "version": "8.4.30", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.30.tgz", - "integrity": "sha512-7ZEao1g4kd68l97aWG/etQKPKq07us0ieSZ2TnFDk11i0ZfDW2AwKHYU8qv4MZKqN2fdBfg+7q0ES06UA73C1g==", + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", "dev": true, "funding": [ { @@ -8060,9 +8066,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", - "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.3.tgz", + "integrity": "sha512-bxhiFii6BBv6UiSDq7uKTMyADT9unXEl3ydGefndVLxFeB44LRbT4K7OJGDYSyDrKnklCC1Pre68qT2wbUl2Aw==", "engines": { "node": ">=16" }, @@ -8160,9 +8166,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.1.tgz", - "integrity": "sha512-pphNW/msgOUSkJbH58x8sqpq8uQj6b0ZKGxEsLKMUnGorRcDjrUaLS+39+/ub41JNTwrrMyJcUB8+YZs3mbwqw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.3.tgz", + "integrity": "sha512-bxhiFii6BBv6UiSDq7uKTMyADT9unXEl3ydGefndVLxFeB44LRbT4K7OJGDYSyDrKnklCC1Pre68qT2wbUl2Aw==", "engines": { "node": ">=16" }, @@ -8336,14 +8342,14 @@ } }, "node_modules/rimraf": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.1.tgz", - "integrity": "sha512-OfFZdwtd3lZ+XZzYP/6gTACubwFcHdLRqS9UX3UwpU2dnGQYkPFISRwvM3w9IiB2w7bW5qGo/uAwE4SmXXSKvg==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", + "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", "dependencies": { - "glob": "^10.2.5" + "glob": "^10.3.7" }, "bin": { - "rimraf": "dist/cjs/src/bin.js" + "rimraf": "dist/esm/bin.mjs" }, "engines": { "node": ">=14" @@ -8498,9 +8504,9 @@ "optional": true }, "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" }, "node_modules/semver": { "version": "7.5.4", diff --git a/packages/project/package.json b/packages/project/package.json index e765be12aa2..aade0f17a9e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,7 +139,7 @@ "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", "resolve": "^1.22.6", - "rimraf": "^5.0.1", + "rimraf": "^5.0.5", "semver": "^7.5.4", "xml2js": "^0.6.2", "yesno": "^0.4.0" From 2410a80a8efb37fdfc933e02efc972eb21cb644b Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Mon, 2 Oct 2023 08:48:25 +0000 Subject: [PATCH 1011/1272] [ui5-project]Release 3.7.1 --- packages/project/CHANGELOG.md | 11 +++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 0286d107b9e..fda9cfd2118 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.7.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.7.1...HEAD). + + +## [v3.7.1] - 2023-10-01 +### Bug Fixes +- Allow usage of after/before task assignment for all standard tasks ([#628](https://github.com/SAP/ui5-project/issues/628)) [`1a272d2`](https://github.com/SAP/ui5-project/commit/1a272d2bd2700fa849ebb46bf9bd98806fa17fb2) + -## [v3.7.0] - 2023-09-05 +## [v3.7.0] - 2023-09-06 ### Bug Fixes - Ensure usage of provided UI5 data dir [`1e0503a`](https://github.com/SAP/ui5-project/commit/1e0503a32dae06202b62408558d5ef85bb49daf1) - **NodePackageDependencies:** Implement validation for missing package.json attributes [`b070972`](https://github.com/SAP/ui5-project/commit/b0709725b373441fd62fe9e33cc0440b6df17401) @@ -457,6 +463,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.7.1]: https://github.com/SAP/ui5-project/compare/v3.7.0...v3.7.1 [v3.7.0]: https://github.com/SAP/ui5-project/compare/v3.6.0...v3.7.0 [v3.6.0]: https://github.com/SAP/ui5-project/compare/v3.5.1...v3.6.0 [v3.5.1]: https://github.com/SAP/ui5-project/compare/v3.5.0...v3.5.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e1dad484334..17af43b130f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.7.0", + "version": "3.7.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.7.0", + "version": "3.7.1", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^6.3.0", diff --git a/packages/project/package.json b/packages/project/package.json index aade0f17a9e..d3897f8169e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.7.0", + "version": "3.7.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 66ca96fe480f860601a54d90deb4156d1ffce525 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 8 Oct 2023 02:20:22 +0000 Subject: [PATCH 1012/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 134 ++++++++++++++--------------- packages/project/package.json | 8 +- 2 files changed, 67 insertions(+), 75 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 17af43b130f..538874c86a7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.7.1", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^6.3.0", + "@npmcli/config": "^6.4.0", "@ui5/builder": "^3.0.9", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", @@ -40,20 +40,20 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.6", "docdash": "^2.0.2", - "eslint": "^8.50.0", + "eslint": "^8.51.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", "esmock": "^2.5.1", "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.6", "js-beautify": "^1.14.9", "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^16.0.0", + "sinon": "^16.1.0", "tap-xunit": "^2.4.1" }, "engines": { @@ -531,9 +531,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.0.tgz", - "integrity": "sha512-zJmuCWj2VLBt4c25CfBIbMZLGLyhkvs7LznyVX5HfpzeocThgIj5XQK4L+g3U36mMcx8bPMhGyPpwCATamC4jQ==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", + "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -573,9 +573,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.22.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.22.0.tgz", - "integrity": "sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==", + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -612,9 +612,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.50.0.tgz", - "integrity": "sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==", + "version": "8.51.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.51.0.tgz", + "integrity": "sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -871,9 +871,9 @@ } }, "node_modules/@npmcli/config": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-6.3.0.tgz", - "integrity": "sha512-gV64pm5cQ7F2oeoSJ5HTfaKxjFsvC4dAbCsQbtbOkEOymM6iZI62yNGCOLjcq/rfYX9+wVn34ThxK7GZpUwWFg==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-6.4.0.tgz", + "integrity": "sha512-/fQjIbuNVIT/PbXvw178Tm97bxV0E0nVUFKHivMKtSI2pcs8xKdaWkHJxf9dTI0G/y5hp/KuCvgcUu5HwAtI1w==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^3.8.0", @@ -2026,9 +2026,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001541", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001541.tgz", - "integrity": "sha512-bLOsqxDgTqUBkzxbNlSBt8annkDpQB9NdzdTbO2ooJ+eC/IQcvDspDc058g84ejCelF7vHUx57KIOjEecOHXaw==", + "version": "1.0.30001546", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001546.tgz", + "integrity": "sha512-zvtSJwuQFpewSyRrI3AsftF6rM0X80mZkChIt1spBGEvRglCrjTniXvinc8JKRoqTwXAgvqTImaN9igfSMtUBw==", "dev": true, "funding": [ { @@ -2342,9 +2342,9 @@ "dev": true }, "node_modules/ci-info": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "funding": [ { "type": "github", @@ -3295,9 +3295,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.537", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.537.tgz", - "integrity": "sha512-W1+g9qs9hviII0HAwOdehGYkr+zt7KKdmCcJcjH0mYg6oL8+ioT3Skjmt7BLoAQqXhjf40AXd+HlR4oAWMlXjA==", + "version": "1.4.544", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.544.tgz", + "integrity": "sha512-54z7squS1FyFRSUqq/knOFSptjjogLZXbKcYk3B0qkE1KZzvqASwRZnY2KzZQJqIYLVD38XZeoiMRflYSwyO4w==", "dev": true }, "node_modules/emittery": { @@ -3417,15 +3417,15 @@ } }, "node_modules/eslint": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.50.0.tgz", - "integrity": "sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==", + "version": "8.51.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.51.0.tgz", + "integrity": "sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.50.0", + "@eslint/js": "8.51.0", "@humanwhocodes/config-array": "^0.11.11", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3711,9 +3711,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.22.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.22.0.tgz", - "integrity": "sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==", + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -4159,12 +4159,12 @@ } }, "node_modules/flat-cache": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", - "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", + "integrity": "sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==", "dev": true, "dependencies": { - "flatted": "^3.2.7", + "flatted": "^3.2.9", "keyv": "^4.5.3", "rimraf": "^3.0.2" }, @@ -4300,11 +4300,6 @@ "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, "node_modules/gauge": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", @@ -4526,12 +4521,9 @@ } }, "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dependencies": { - "function-bind": "^1.1.1" - }, + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.4.tgz", + "integrity": "sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==", "engines": { "node": ">= 0.4.0" } @@ -5080,9 +5072,9 @@ } }, "node_modules/istanbul-lib-instrument": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.0.tgz", - "integrity": "sha512-x58orMzEVfzPUKqlbLd1hXCnySCxKdDKa6Rjg97CwuLLRI4g3FHTdnExu1OqffVFay6zeMW+T6/DowFLndWnIw==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz", + "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==", "dev": true, "dependencies": { "@babel/core": "^7.12.3", @@ -5482,9 +5474,9 @@ "dev": true }, "node_modules/keyv": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", - "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, "dependencies": { "json-buffer": "3.0.1" @@ -6648,9 +6640,9 @@ } }, "node_modules/npm-install-checks": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.2.0.tgz", - "integrity": "sha512-744wat5wAAHsxa4590mWO0tJ8PKxR8ORZsH9wGpQc3nWTzozMAgBN/XyqYw7mg3yqLM8dLwEnwSfKMmXAjF69g==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", "dependencies": { "semver": "^7.1.1" }, @@ -8066,9 +8058,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.3.tgz", - "integrity": "sha512-bxhiFii6BBv6UiSDq7uKTMyADT9unXEl3ydGefndVLxFeB44LRbT4K7OJGDYSyDrKnklCC1Pre68qT2wbUl2Aw==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.4.0.tgz", + "integrity": "sha512-HT3RRs7sTfY22KuPQJkD/XjbTbxgP2Je5HPt6H6JEGvcjHd5Lqru75EbrP3tb4FYjNJ+DjLp+MNQTFQU0mhXNw==", "engines": { "node": ">=16" }, @@ -8166,9 +8158,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.3.3.tgz", - "integrity": "sha512-bxhiFii6BBv6UiSDq7uKTMyADT9unXEl3ydGefndVLxFeB44LRbT4K7OJGDYSyDrKnklCC1Pre68qT2wbUl2Aw==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.4.0.tgz", + "integrity": "sha512-HT3RRs7sTfY22KuPQJkD/XjbTbxgP2Je5HPt6H6JEGvcjHd5Lqru75EbrP3tb4FYjNJ+DjLp+MNQTFQU0mhXNw==", "engines": { "node": ">=16" }, @@ -8625,9 +8617,9 @@ } }, "node_modules/sinon": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-16.0.0.tgz", - "integrity": "sha512-B8AaZZm9CT5pqe4l4uWJztfD/mOTa7dL8Qo0W4+s+t74xECOgSZDDQCBjNgIK3+n4kyxQrSTv2V5ul8K25qkiQ==", + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-16.1.0.tgz", + "integrity": "sha512-ZSgzF0vwmoa8pq0GEynqfdnpEDyP1PkYmEChnkjW0Vyh8IDlyFEJ+fkMhCP0il6d5cJjPl2PUsnUSAuP5sttOQ==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", @@ -8871,9 +8863,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.15.tgz", - "integrity": "sha512-lpT8hSQp9jAKp9mhtBU4Xjon8LPGBvLIuBiSVhMEtmLecTh2mO0tlqrAMp47tBXzMr13NJMQ2lf7RpQGLJ3HsQ==" + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", + "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==" }, "node_modules/sprintf-js": { "version": "1.0.3", @@ -9360,9 +9352,9 @@ } }, "node_modules/terser": { - "version": "5.20.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.20.0.tgz", - "integrity": "sha512-e56ETryaQDyebBwJIWYB2TT6f2EZ0fL0sW/JRXNMN26zZdKi2u/E/5my5lG6jNxym6qsrVXfFRmOdV42zlAgLQ==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.21.0.tgz", + "integrity": "sha512-WtnFKrxu9kaoXuiZFSGrcAvvBqAdmKx0SFNmVNYdJamMu9yyN3I/QF0FbH4QcqJQ+y1CJnzxGIKH0cSj+FGYRw==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index d3897f8169e..8e2572178f9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^6.3.0", + "@npmcli/config": "^6.4.0", "@ui5/builder": "^3.0.9", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", @@ -151,20 +151,20 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.6", "docdash": "^2.0.2", - "eslint": "^8.50.0", + "eslint": "^8.51.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", "esmock": "^2.5.1", "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.6", "js-beautify": "^1.14.9", "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^16.0.0", + "sinon": "^16.1.0", "tap-xunit": "^2.4.1" } } From eb9f104331fbb47b1152d2fd975f8fc31eb3cb20 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 8 Oct 2023 02:23:41 +0000 Subject: [PATCH 1013/1272] [ui5-project][DEPENDENCY] Bump @npmcli/config from 6.4.0 to 8.0.0 Bumps [@npmcli/config](https://github.com/npm/cli/tree/HEAD/workspaces/config) from 6.4.0 to 8.0.0. - [Release notes](https://github.com/npm/cli/releases) - [Changelog](https://github.com/npm/cli/blob/latest/workspaces/config/CHANGELOG.md) - [Commits](https://github.com/npm/cli/commits/v8.0.0/workspaces/config) --- updated-dependencies: - dependency-name: "@npmcli/config" dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 538874c86a7..b7f3e9c87ab 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.7.1", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^6.4.0", + "@npmcli/config": "^8.0.0", "@ui5/builder": "^3.0.9", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", @@ -871,9 +871,9 @@ } }, "node_modules/@npmcli/config": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-6.4.0.tgz", - "integrity": "sha512-/fQjIbuNVIT/PbXvw178Tm97bxV0E0nVUFKHivMKtSI2pcs8xKdaWkHJxf9dTI0G/y5hp/KuCvgcUu5HwAtI1w==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.0.0.tgz", + "integrity": "sha512-a2ybqstXSCAbP7QghgGcOvLTBlaR3wWQyAmTfWXJld6qP6+vKQabTZQwzRPs00kKi870beNZHhV4Fvlca2l/uA==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^3.8.0", @@ -885,7 +885,7 @@ "walk-up-path": "^3.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@npmcli/fs": { diff --git a/packages/project/package.json b/packages/project/package.json index 8e2572178f9..6aa24a71df5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^6.4.0", + "@npmcli/config": "^8.0.0", "@ui5/builder": "^3.0.9", "@ui5/fs": "^3.0.4", "@ui5/logger": "^3.0.0", From 77ad01d060607ee89f41428a34132b7204b37ba0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Oct 2023 14:08:23 +0000 Subject: [PATCH 1014/1272] [ui5-project][DEPENDENCY] Bump pacote from 15.2.0 to 17.0.4 Bumps [pacote](https://github.com/npm/pacote) from 15.2.0 to 17.0.4. - [Release notes](https://github.com/npm/pacote/releases) - [Changelog](https://github.com/npm/pacote/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/pacote/compare/v15.2.0...v17.0.4) --- updated-dependencies: - dependency-name: pacote dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 738 +++++++++++++++++++++++------ packages/project/package.json | 2 +- 2 files changed, 583 insertions(+), 157 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b7f3e9c87ab..089766ab324 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -23,7 +23,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^11.1.1", "node-stream-zip": "^1.15.0", - "pacote": "^15.2.0", + "pacote": "^17.0.4", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", @@ -870,6 +870,77 @@ "node": ">= 8" } }, + "node_modules/@npmcli/agent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.0.tgz", + "integrity": "sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@npmcli/agent/node_modules/http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@npmcli/agent/node_modules/https-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@npmcli/agent/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@npmcli/agent/node_modules/socks-proxy-agent": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", + "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "socks": "^2.7.1" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/@npmcli/config": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.0.0.tgz", @@ -900,43 +971,51 @@ } }, "node_modules/@npmcli/git": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz", - "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.3.tgz", + "integrity": "sha512-UZp9NwK+AynTrKvHn5k3KviW/hA5eENmFsu3iAPe7sWRt0lFUdsY/wXIYjpDFe7cdSNwOIzbObfwgt6eL5/2zw==", "dependencies": { - "@npmcli/promise-spawn": "^6.0.0", - "lru-cache": "^7.4.4", - "npm-pick-manifest": "^8.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "lru-cache": "^10.0.1", + "npm-pick-manifest": "^9.0.0", "proc-log": "^3.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^3.0.0" + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/@npmcli/git/node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dependencies": { - "isexe": "^2.0.0" + "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.13.0 || >=18.0.0" } }, "node_modules/@npmcli/installed-package-contents": { @@ -985,57 +1064,73 @@ } }, "node_modules/@npmcli/promise-spawn": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", - "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.0.tgz", + "integrity": "sha512-wBqcGsMELZna0jDblGd7UXgOby45TQaMWmbFwWX+SEotk4HV6zG2t6rT9siyLhPk4P6YYqgfL1UO8nMWDBVJXQ==", "dependencies": { - "which": "^3.0.0" + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" } }, "node_modules/@npmcli/promise-spawn/node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dependencies": { - "isexe": "^2.0.0" + "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.13.0 || >=18.0.0" } }, "node_modules/@npmcli/run-script": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", - "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.1.tgz", + "integrity": "sha512-Od/JMrgkjZ8alyBE0IzeqZDiF1jgMez9Gkc/OYrCkHHiXNwM0wc6s7+h+xM7kYDZkS0tAoOLr9VvygyE5+2F7g==", "dependencies": { "@npmcli/node-gyp": "^3.0.0", - "@npmcli/promise-spawn": "^6.0.0", + "@npmcli/promise-spawn": "^7.0.0", "node-gyp": "^9.0.0", "read-package-json-fast": "^3.0.0", - "which": "^3.0.0" + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" } }, "node_modules/@npmcli/run-script/node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dependencies": { - "isexe": "^2.0.0" + "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.13.0 || >=18.0.0" } }, "node_modules/@one-ini/wasm": { @@ -1054,14 +1149,14 @@ } }, "node_modules/@sigstore/bundle": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz", - "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.0.tgz", + "integrity": "sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==", "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0" + "@sigstore/protobuf-specs": "^0.2.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@sigstore/protobuf-specs": { @@ -1073,28 +1168,121 @@ } }, "node_modules/@sigstore/sign": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-1.0.0.tgz", - "integrity": "sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.1.0.tgz", + "integrity": "sha512-4VRpfJxs+8eLqzLVrZngVNExVA/zAhVbi4UT4zmtLi4xRd7vz5qie834OgkrGsLlLB1B2nz/3wUxT1XAUBe8gw==", "dependencies": { - "@sigstore/bundle": "^1.1.0", - "@sigstore/protobuf-specs": "^0.2.0", - "make-fetch-happen": "^11.0.1" + "@sigstore/bundle": "^2.1.0", + "@sigstore/protobuf-specs": "^0.2.1", + "make-fetch-happen": "^13.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@sigstore/sign/node_modules/cacache": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", + "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@sigstore/sign/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@sigstore/sign/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", + "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/@sigstore/tuf": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz", - "integrity": "sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.2.0.tgz", + "integrity": "sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==", "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0", - "tuf-js": "^1.1.7" + "@sigstore/protobuf-specs": "^0.2.1", + "tuf-js": "^2.1.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@sinonjs/commons": { @@ -1156,23 +1344,23 @@ } }, "node_modules/@tufjs/canonical-json": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz", - "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", + "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@tufjs/models": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz", - "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.0.tgz", + "integrity": "sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==", "dependencies": { - "@tufjs/canonical-json": "1.0.0", - "minimatch": "^9.0.0" + "@tufjs/canonical-json": "2.0.0", + "minimatch": "^9.0.3" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@types/linkify-it": { @@ -6659,42 +6847,42 @@ } }, "node_modules/npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", + "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", "dependencies": { - "hosted-git-info": "^6.0.0", + "hosted-git-info": "^7.0.0", "proc-log": "^3.0.0", "semver": "^7.3.5", "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm-package-arg/node_modules/hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", "dependencies": { - "lru-cache": "^7.5.1" + "lru-cache": "^10.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/npm-packlist": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", - "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.0.tgz", + "integrity": "sha512-ErAGFB5kJUciPy1mmx/C2YFbvxoJ0QJ9uwkCZOeR6CqLLISPZBOiFModAbSXnjjlwW5lOhuhXva+fURsSGJqyw==", "dependencies": { "ignore-walk": "^6.0.0" }, @@ -6703,44 +6891,129 @@ } }, "node_modules/npm-pick-manifest": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.2.tgz", - "integrity": "sha512-1dKY+86/AIiq1tkKVD3l0WI+Gd3vkknVGAggsFeBkTvbhMQ1OND/LKkYv4JtXPKUJ8bOTCyLiqEg2P6QNdK+Gg==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", + "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^10.0.0", + "npm-package-arg": "^11.0.0", "semver": "^7.3.5" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm-registry-fetch": { - "version": "14.0.5", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz", - "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==", + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.0.0.tgz", + "integrity": "sha512-JFCpAPUpvpwfSydv99u85yhP68rNIxSFmDpNbNnRWKSe3gpjHnWL8v320gATwRzjtgmZ9Jfe37+ZPOLZPwz6BQ==", "dependencies": { - "make-fetch-happen": "^11.0.0", - "minipass": "^5.0.0", + "make-fetch-happen": "^13.0.0", + "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", "minipass-json-stream": "^1.0.1", "minizlib": "^2.1.2", - "npm-package-arg": "^10.0.0", + "npm-package-arg": "^11.0.0", "proc-log": "^3.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "node_modules/npm-registry-fetch/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, "engines": { "node": ">=8" } }, + "node_modules/npm-registry-fetch/node_modules/cacache": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", + "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/npm-registry-fetch/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", + "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/npm-run-path": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", @@ -7301,26 +7574,26 @@ } }, "node_modules/pacote": { - "version": "15.2.0", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.2.0.tgz", - "integrity": "sha512-rJVZeIwHTUta23sIZgEIM62WYwbmGbThdbnkt81ravBplQv+HjyroqnLRNH2+sLJHcGZmLRmhPwACqhfTcOmnA==", + "version": "17.0.4", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.4.tgz", + "integrity": "sha512-eGdLHrV/g5b5MtD5cTPyss+JxOlaOloSMG3UwPMAvL8ywaLJ6beONPF40K4KKl/UI6q5hTKCJq5rCu8tkF+7Dg==", "dependencies": { - "@npmcli/git": "^4.0.0", + "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/promise-spawn": "^6.0.1", - "@npmcli/run-script": "^6.0.0", - "cacache": "^17.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "@npmcli/run-script": "^7.0.0", + "cacache": "^18.0.0", "fs-minipass": "^3.0.0", - "minipass": "^5.0.0", - "npm-package-arg": "^10.0.0", - "npm-packlist": "^7.0.0", - "npm-pick-manifest": "^8.0.0", - "npm-registry-fetch": "^14.0.0", + "minipass": "^7.0.2", + "npm-package-arg": "^11.0.0", + "npm-packlist": "^8.0.0", + "npm-pick-manifest": "^9.0.0", + "npm-registry-fetch": "^16.0.0", "proc-log": "^3.0.0", "promise-retry": "^2.0.1", - "read-package-json": "^6.0.0", + "read-package-json": "^7.0.0", "read-package-json-fast": "^3.0.0", - "sigstore": "^1.3.0", + "sigstore": "^2.0.0", "ssri": "^10.0.0", "tar": "^6.1.11" }, @@ -7328,17 +7601,81 @@ "pacote": "lib/bin.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "node_modules/pacote/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pacote/node_modules/cacache": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", + "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pacote/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "engines": { "node": ">=8" } }, + "node_modules/pacote/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/pacote/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -7885,17 +8222,17 @@ } }, "node_modules/read-package-json": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.4.tgz", - "integrity": "sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.0.tgz", + "integrity": "sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==", "dependencies": { "glob": "^10.2.2", "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^5.0.0", + "normalize-package-data": "^6.0.0", "npm-normalize-package-bin": "^3.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/read-package-json-fast": { @@ -7919,14 +8256,14 @@ } }, "node_modules/read-package-json/node_modules/hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", "dependencies": { - "lru-cache": "^7.5.1" + "lru-cache": "^10.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { @@ -7938,25 +8275,25 @@ } }, "node_modules/read-package-json/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/read-package-json/node_modules/normalize-package-data": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", - "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", "dependencies": { - "hosted-git-info": "^6.0.0", + "hosted-git-info": "^7.0.0", "is-core-module": "^2.8.1", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/read-pkg": { @@ -8599,21 +8936,17 @@ } }, "node_modules/sigstore": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.9.0.tgz", - "integrity": "sha512-0Zjz0oe37d08VeOtBIuB6cRriqXse2e8w+7yIy2XSXjshRKxbc2KkhXjL229jXSxEm7UbcjS76wcJDGQddVI9A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.1.0.tgz", + "integrity": "sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==", "dependencies": { - "@sigstore/bundle": "^1.1.0", - "@sigstore/protobuf-specs": "^0.2.0", - "@sigstore/sign": "^1.0.0", - "@sigstore/tuf": "^1.0.3", - "make-fetch-happen": "^11.0.1" - }, - "bin": { - "sigstore": "bin/sigstore.js" + "@sigstore/bundle": "^2.1.0", + "@sigstore/protobuf-specs": "^0.2.1", + "@sigstore/sign": "^2.1.0", + "@sigstore/tuf": "^2.1.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/sinon": { @@ -9552,16 +9885,109 @@ } }, "node_modules/tuf-js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.7.tgz", - "integrity": "sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.1.0.tgz", + "integrity": "sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==", "dependencies": { - "@tufjs/models": "1.0.4", + "@tufjs/models": "2.0.0", "debug": "^4.3.4", - "make-fetch-happen": "^11.1.1" + "make-fetch-happen": "^13.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tuf-js/node_modules/cacache": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", + "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tuf-js/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/tuf-js/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/tuf-js/node_modules/make-fetch-happen": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", + "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/type-check": { diff --git a/packages/project/package.json b/packages/project/package.json index 6aa24a71df5..5b6350f1c23 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -134,7 +134,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^11.1.1", "node-stream-zip": "^1.15.0", - "pacote": "^15.2.0", + "pacote": "^17.0.4", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", From 7a80e39fd125bcfdacd3b92135da2881cddbfd5b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Oct 2023 15:05:39 +0000 Subject: [PATCH 1015/1272] [ui5-project][DEPENDENCY] Bump make-fetch-happen from 11.1.1 to 13.0.0 Bumps [make-fetch-happen](https://github.com/npm/make-fetch-happen) from 11.1.1 to 13.0.0. - [Release notes](https://github.com/npm/make-fetch-happen/releases) - [Changelog](https://github.com/npm/make-fetch-happen/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/make-fetch-happen/compare/v11.1.1...v13.0.0) --- updated-dependencies: - dependency-name: make-fetch-happen dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 553 +++++++++-------------------- packages/project/package.json | 2 +- 2 files changed, 166 insertions(+), 389 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 089766ab324..e168a9355b5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -21,7 +21,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^11.1.1", + "make-fetch-happen": "^13.0.0", "node-stream-zip": "^1.15.0", "pacote": "^17.0.4", "pretty-hrtime": "^1.0.3", @@ -1180,99 +1180,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@sigstore/sign/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@sigstore/sign/node_modules/cacache": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", - "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/@sigstore/sign/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@sigstore/sign/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", - "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", - "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@sigstore/tuf": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.2.0.tgz", @@ -2013,14 +1920,14 @@ } }, "node_modules/cacache": { - "version": "17.1.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", - "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", + "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", "glob": "^10.2.2", - "lru-cache": "^7.7.1", + "lru-cache": "^10.0.1", "minipass": "^7.0.3", "minipass-collect": "^1.0.2", "minipass-flush": "^1.0.5", @@ -2031,7 +1938,7 @@ "unique-filename": "^3.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/cacache/node_modules/aggregate-error": { @@ -2063,11 +1970,11 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/cacache/node_modules/p-map": { @@ -5837,44 +5744,24 @@ } }, "node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", + "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", + "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", "ssri": "^10.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/make-fetch-happen/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "engines": { - "node": ">=8" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/map-age-cleaner": { @@ -6672,6 +6559,18 @@ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, + "node_modules/node-gyp/node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/node-gyp/node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -6681,6 +6580,79 @@ "concat-map": "0.0.1" } }, + "node_modules/node-gyp/node_modules/cacache": { + "version": "17.1.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", + "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^7.7.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/node-gyp/node_modules/cacache/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/cacache/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, "node_modules/node-gyp/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -6700,6 +6672,55 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/node-gyp/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/node-gyp/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/node-gyp/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/make-fetch-happen/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/node-gyp/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -6725,6 +6746,20 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, + "node_modules/node-gyp/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/node-gyp/node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -6921,99 +6956,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/npm-registry-fetch/node_modules/cacache": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", - "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/npm-registry-fetch/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/npm-registry-fetch/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", - "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", - "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/npm-registry-fetch/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/npm-run-path": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", @@ -7604,78 +7546,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pacote/node_modules/cacache": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", - "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/pacote/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/pacote/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/pacote/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -9897,99 +9767,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/tuf-js/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/tuf-js/node_modules/cacache": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", - "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/tuf-js/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/tuf-js/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/tuf-js/node_modules/make-fetch-happen": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", - "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", - "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 5b6350f1c23..13de312b666 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -132,7 +132,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^11.1.1", + "make-fetch-happen": "^13.0.0", "node-stream-zip": "^1.15.0", "pacote": "^17.0.4", "pretty-hrtime": "^1.0.3", From 015ec4abc85c1658ae44e85b2c06c2890be82d1f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 9 Oct 2023 16:11:45 +0000 Subject: [PATCH 1016/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 152 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 77 insertions(+), 77 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e168a9355b5..c09ec4fca6b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -44,7 +44,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.1", + "esmock": "^2.5.2", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", @@ -885,41 +885,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/agent/node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@npmcli/agent/node_modules/http-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", - "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", - "dependencies": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@npmcli/agent/node_modules/https-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", - "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", - "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, "node_modules/@npmcli/agent/node_modules/lru-cache": { "version": "10.0.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", @@ -928,19 +893,6 @@ "node": "14 || >=16.14" } }, - "node_modules/@npmcli/agent/node_modules/socks-proxy-agent": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", - "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", - "dependencies": { - "agent-base": "^7.0.2", - "debug": "^4.3.4", - "socks": "^2.7.1" - }, - "engines": { - "node": ">= 14" - } - }, "node_modules/@npmcli/config": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.0.0.tgz", @@ -1479,14 +1431,14 @@ } }, "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", "dependencies": { - "debug": "4" + "debug": "^4.3.4" }, "engines": { - "node": ">= 6.0.0" + "node": ">= 14" } }, "node_modules/agentkeepalive": { @@ -3902,9 +3854,9 @@ } }, "node_modules/esmock": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.1.tgz", - "integrity": "sha512-3pu+ri9kNrRjahR8c+FWXphK3xpKrgBwLHu+A+Xj3vw84fGsScWY3SWTH1v5nSiheYQAdlz5Ny+a319tlle1mA==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.2.tgz", + "integrity": "sha512-XZUzyaM02xs9ZwhOkWRQ3JIfRe5qdaN935fsRgkOAXPzZomz+HUq+t0YsDipHzA9X6ke89FerZDRAMDgchBjeQ==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4716,28 +4668,27 @@ "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" }, "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" + "agent-base": "^7.1.0", + "debug": "^4.3.4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", "dependencies": { - "agent-base": "6", + "agent-base": "^7.0.2", "debug": "4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/human-signals": { @@ -6559,6 +6510,17 @@ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, + "node_modules/node-gyp/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, "node_modules/node-gyp/node_modules/aggregate-error": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", @@ -6672,6 +6634,31 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/node-gyp/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/node-gyp/node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/node-gyp/node_modules/indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", @@ -6774,6 +6761,19 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/node-gyp/node_modules/socks-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -8887,16 +8887,16 @@ } }, "node_modules/socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", + "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "socks": "^2.7.1" }, "engines": { - "node": ">= 10" + "node": ">= 14" } }, "node_modules/source-map": { diff --git a/packages/project/package.json b/packages/project/package.json index 13de312b666..19cd0d2df7e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -155,7 +155,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.1", + "esmock": "^2.5.2", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", From d2416557daebaee745c641b17431ad19a781d50c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 9 Oct 2023 17:04:03 +0200 Subject: [PATCH 1017/1272] [ui5-project][INTERNAL] npm/maven Registry: Restore use of shared keep-alive agents This ultimately reverts https://github.com/SAP/ui5-project/pull/579 since make-fetch-happen dropped agentkeepalive in favor of @npmcli/agent which in our tests did not show the problematic behavior. Depends on: https://github.com/SAP/ui5-project/pull/643 --- packages/project/lib/ui5Framework/maven/Registry.js | 10 +--------- packages/project/lib/ui5Framework/npm/Registry.js | 11 ----------- .../project/test/lib/ui5framework/npm/Registry.js | 1 - 3 files changed, 1 insertion(+), 21 deletions(-) diff --git a/packages/project/lib/ui5Framework/maven/Registry.js b/packages/project/lib/ui5Framework/maven/Registry.js index ffac72e5e09..ec5b2293e75 100644 --- a/packages/project/lib/ui5Framework/maven/Registry.js +++ b/packages/project/lib/ui5Framework/maven/Registry.js @@ -40,15 +40,7 @@ class Registry { `${groupId.replaceAll(".", "/")}/${artifactId}/${optionalVersion}maven-metadata.xml`; log.verbose(`Fetching: ${url}`); - const res = await fetch(url, { - // Disable usage of shared keep-alive agents. - // make-fetch-happen uses a hard-coded 15 seconds freeSocketTimeout - // that can be easily reached (Error: Socket timeout) and there doesn't - // seem to be another way to disable or increase it. - // Also see: https://github.com/node-modules/agentkeepalive/issues/106 - // The same applies in npm/Registry.js - agent: false, - }); + const res = await fetch(url); if (!res.ok) { throw new Error(`[HTTP Error] ${res.status} ${res.statusText}`); } diff --git a/packages/project/lib/ui5Framework/npm/Registry.js b/packages/project/lib/ui5Framework/npm/Registry.js index fb678be539d..4d60b4d2011 100644 --- a/packages/project/lib/ui5Framework/npm/Registry.js +++ b/packages/project/lib/ui5Framework/npm/Registry.js @@ -75,17 +75,6 @@ class Registry { // Always use our cache dir instead of the configured one config.cache = this._cacheDir; - if (!config.proxy && !config.httpsProxy) { - // Disable usage of shared keep-alive agents unless a proxy is configured - // which only works with agents. - - // make-fetch-happen uses a hard-coded 15 seconds freeSocketTimeout - // that can be easily reached (Error: Socket timeout) and there doesn't - // seem to be another way to disable or increase it. - // Also see: https://github.com/node-modules/agentkeepalive/issues/106 - config.agent = false; - } - log.verbose(`Using npm configuration (extract):`); // Do not log full configuration as it may contain authentication tokens logConfig(config, "registry"); diff --git a/packages/project/test/lib/ui5framework/npm/Registry.js b/packages/project/test/lib/ui5framework/npm/Registry.js index 01436837b1e..2a3465e0860 100644 --- a/packages/project/test/lib/ui5framework/npm/Registry.js +++ b/packages/project/test/lib/ui5framework/npm/Registry.js @@ -77,7 +77,6 @@ test.serial("_getPacoteOptions", async (t) => { const expectedPacoteOptions = { fake: "config", - agent: false, cache: "cacheDir" }; npmConfigFlat.value(npmConfig); From e3a419f8c4d9e8e6b11441b9a40b48a36d8c7276 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 11 Oct 2023 12:23:25 +0000 Subject: [PATCH 1018/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.4 to 3.0.5 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v3.0.5/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c09ec4fca6b..07d2968f4bc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@npmcli/config": "^8.0.0", "@ui5/builder": "^3.0.9", - "@ui5/fs": "^3.0.4", + "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1292,17 +1292,17 @@ } }, "node_modules/@ui5/fs": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.4.tgz", - "integrity": "sha512-0JnlsSvqOGlo+15+mP1E2HXOuRERBYWREVG45emDMRq7fNAsi7lgbKHTMA5GogJMRHI8/QaCV9vU1u370Bv1jg==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.5.tgz", + "integrity": "sha512-SpDoMvOGYeBR8xOTDb1cu0uxJNsC1FxrENsZiRMd6R2PfUAiR0fiWQHn4dVBspoLx+jFemAfLfTMv1DEn0m1qQ==", "dependencies": { "@ui5/logger": "^3.0.0", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", - "globby": "^13.1.4", + "globby": "^13.2.2", "graceful-fs": "^4.2.11", "micromatch": "^4.0.5", - "minimatch": "^9.0.1", + "minimatch": "^9.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index 19cd0d2df7e..0cb85e3647e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -122,7 +122,7 @@ "dependencies": { "@npmcli/config": "^8.0.0", "@ui5/builder": "^3.0.9", - "@ui5/fs": "^3.0.4", + "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From a18e5471a1de0d4adb082b6f1824f7392e39e51e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 11 Oct 2023 12:34:06 +0000 Subject: [PATCH 1019/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.0.9 to 3.1.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.1.0/CHANGELOG.md --- packages/project/package-lock.json | 18 +++++++++--------- packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 07d2968f4bc..14e8f4ed0de 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.0.0", - "@ui5/builder": "^3.0.9", + "@ui5/builder": "^3.1.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1265,12 +1265,12 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.0.9.tgz", - "integrity": "sha512-8ZGoTMXLQKDUSPdVhE9RHiboB1UP963JF5ORD4Eb+eIHK531EIFFDDTlq8W2QekWAABTYVzboYp35tz8BlS7CQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.1.0.tgz", + "integrity": "sha512-v3oyBcNaUp34UiBchjSAnJMiZMPaTot8PcZKWEghWOozw0hyASin18dtzp/BBmb0zc9HsH320rtUO4HoS2YrGQ==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", - "@ui5/fs": "^3.0.4", + "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "cheerio": "1.0.0-rc.12", "escape-unicode": "^0.2.0", @@ -1280,11 +1280,11 @@ "jsdoc": "^4.0.2", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", - "rimraf": "^5.0.1", + "rimraf": "^5.0.5", "semver": "^7.5.4", - "terser": "^5.19.2", - "workerpool": "^6.4.0", - "xml2js": "^0.6.0" + "terser": "^5.21.0", + "workerpool": "^6.5.0", + "xml2js": "^0.6.2" }, "engines": { "node": "^16.18.0 || >=18.12.0", diff --git a/packages/project/package.json b/packages/project/package.json index 0cb85e3647e..d95793121dc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ }, "dependencies": { "@npmcli/config": "^8.0.0", - "@ui5/builder": "^3.0.9", + "@ui5/builder": "^3.1.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From 73be51cb100c282465c737e0f7ecd500bb2713c4 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 11 Oct 2023 12:40:28 +0000 Subject: [PATCH 1020/1272] [ui5-project]Release 3.7.2 --- packages/project/CHANGELOG.md | 13 +++++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index fda9cfd2118..05f1a6a0302 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,18 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.7.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.7.2...HEAD). + + +## [v3.7.2] - 2023-10-11 +### Dependency Updates +- Bump make-fetch-happen from 11.1.1 to 13.0.0 [`f2e264e`](https://github.com/SAP/ui5-project/commit/f2e264e87dfef1d5a132a1a0bf35043a789f8e84) +- Bump pacote from 15.2.0 to 17.0.4 [`f071399`](https://github.com/SAP/ui5-project/commit/f071399d994963b415c8ea35a629c465ae539f23) +- Bump [@npmcli](https://github.com/npmcli)/config from 6.4.0 to 8.0.0 [`c9f5218`](https://github.com/SAP/ui5-project/commit/c9f521815bab022bc8c0e8a3c27658266f01c655) + -## [v3.7.1] - 2023-10-01 +## [v3.7.1] - 2023-10-02 ### Bug Fixes - Allow usage of after/before task assignment for all standard tasks ([#628](https://github.com/SAP/ui5-project/issues/628)) [`1a272d2`](https://github.com/SAP/ui5-project/commit/1a272d2bd2700fa849ebb46bf9bd98806fa17fb2) @@ -463,6 +471,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.7.2]: https://github.com/SAP/ui5-project/compare/v3.7.1...v3.7.2 [v3.7.1]: https://github.com/SAP/ui5-project/compare/v3.7.0...v3.7.1 [v3.7.0]: https://github.com/SAP/ui5-project/compare/v3.6.0...v3.7.0 [v3.6.0]: https://github.com/SAP/ui5-project/compare/v3.5.1...v3.6.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 14e8f4ed0de..7892880057f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.7.1", + "version": "3.7.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.7.1", + "version": "3.7.2", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index d95793121dc..38f4fc69f80 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.7.1", + "version": "3.7.2", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From f7fe034ebe616c26da632cf1ada81c4f9657cb44 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 15 Oct 2023 02:20:41 +0000 Subject: [PATCH 1021/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 76 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 40 insertions(+), 40 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7892880057f..7e8afedddc9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -27,7 +27,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", - "resolve": "^1.22.6", + "resolve": "^1.22.8", "rimraf": "^5.0.5", "semver": "^7.5.4", "xml2js": "^0.6.2", @@ -44,7 +44,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.2", + "esmock": "^2.5.5", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", @@ -152,18 +152,18 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.20.tgz", - "integrity": "sha512-BQYjKbpXjoXwFW5jGqiizJQQT/aC7pFm9Ok1OWssonuguICi264lbgMzRp2ZMmRSlfkX6DsWDDcsrctK8Rwfiw==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", + "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.0.tgz", - "integrity": "sha512-97z/ju/Jy1rZmDxybphrBuI+jtJjFVoz7Mr9yUQVVVi+DNZE333uFQeMOqcCIy1x3WYBIbWftUSLmbNXNT7qFQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", + "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -171,10 +171,10 @@ "@babel/generator": "^7.23.0", "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-module-transforms": "^7.23.0", - "@babel/helpers": "^7.23.0", + "@babel/helpers": "^7.23.2", "@babel/parser": "^7.23.0", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.0", + "@babel/traverse": "^7.23.2", "@babel/types": "^7.23.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", @@ -364,13 +364,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.1.tgz", - "integrity": "sha512-chNpneuK18yW5Oxsr+t553UZzzAs3aZnFm4bxhebsNTeshrC95yA7l5yl7GBAG+JG1rF0F7zzD2EixK9mWSDoA==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", + "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.0", + "@babel/traverse": "^7.23.2", "@babel/types": "^7.23.0" }, "engines": { @@ -467,9 +467,9 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.0.tgz", - "integrity": "sha512-t/QaEvyIoIkwzpiZ7aoSKK8kObQYeF7T2v+dazAYCb8SXtp58zEVkWW7zAnju8FNKNdr4ScAOEDmMItbyOmEYw==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", + "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.22.13", @@ -2073,9 +2073,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001546", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001546.tgz", - "integrity": "sha512-zvtSJwuQFpewSyRrI3AsftF6rM0X80mZkChIt1spBGEvRglCrjTniXvinc8JKRoqTwXAgvqTImaN9igfSMtUBw==", + "version": "1.0.30001549", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001549.tgz", + "integrity": "sha512-qRp48dPYSCYaP+KurZLhDYdVE+yEyht/3NlmcJgVQ2VMGt6JL36ndQ/7rgspdZsJuxDPFIo/OzBT2+GmIJ53BA==", "dev": true, "funding": [ { @@ -3342,9 +3342,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.544", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.544.tgz", - "integrity": "sha512-54z7squS1FyFRSUqq/knOFSptjjogLZXbKcYk3B0qkE1KZzvqASwRZnY2KzZQJqIYLVD38XZeoiMRflYSwyO4w==", + "version": "1.4.554", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.554.tgz", + "integrity": "sha512-Q0umzPJjfBrrj8unkONTgbKQXzXRrH7sVV7D9ea2yBV3Oaogz991yhbpfvo2LMNkJItmruXTEzVpP9cp7vaIiQ==", "dev": true }, "node_modules/emittery": { @@ -3854,9 +3854,9 @@ } }, "node_modules/esmock": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.2.tgz", - "integrity": "sha512-XZUzyaM02xs9ZwhOkWRQ3JIfRe5qdaN935fsRgkOAXPzZomz+HUq+t0YsDipHzA9X6ke89FerZDRAMDgchBjeQ==", + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.5.tgz", + "integrity": "sha512-F2IIfO2sWLVLn+DygXpylvNEyaR31UHB1L1S4A2OXPQC6BbzWre2hNOJqkxCP162AuJSTcHfB2Ogidmk9MqHgw==", "dev": true, "engines": { "node": ">=14.16.0" @@ -5668,9 +5668,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.4", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.4.tgz", - "integrity": "sha512-Q/TKtsC5BPm0kGqgBIF9oXAs/xEf2vRKiIB4wCRQTJOQIByZ1d+NnUOotvJOvNpi5RNIgVOMC3pOuaP1ZTDlVg==", + "version": "0.30.5", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", + "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -6940,9 +6940,9 @@ } }, "node_modules/npm-registry-fetch": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.0.0.tgz", - "integrity": "sha512-JFCpAPUpvpwfSydv99u85yhP68rNIxSFmDpNbNnRWKSe3gpjHnWL8v320gATwRzjtgmZ9Jfe37+ZPOLZPwz6BQ==", + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.1.0.tgz", + "integrity": "sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==", "dependencies": { "make-fetch-happen": "^13.0.0", "minipass": "^7.0.2", @@ -8474,9 +8474,9 @@ } }, "node_modules/resolve": { - "version": "1.22.6", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.6.tgz", - "integrity": "sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dependencies": { "is-core-module": "^2.13.0", "path-parse": "^1.0.7", @@ -9977,9 +9977,9 @@ } }, "node_modules/workerpool": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.0.tgz", - "integrity": "sha512-r64Ea3glXY2RVzMeNxB+4J+0YHAVzUdV4cM5nHi4BBC2LvnO1pWFAIYKYuGcPElbg1/7eEiaPtZ/jzCjIUuGBg==" + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==" }, "node_modules/wrap-ansi": { "version": "8.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index 38f4fc69f80..bc959649e16 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -138,7 +138,7 @@ "pretty-hrtime": "^1.0.3", "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", - "resolve": "^1.22.6", + "resolve": "^1.22.8", "rimraf": "^5.0.5", "semver": "^7.5.4", "xml2js": "^0.6.2", @@ -155,7 +155,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.2", + "esmock": "^2.5.5", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", From 76e824ee5a01fba7a989edd2b9dd799deac377a8 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 19 Oct 2023 08:02:28 +0000 Subject: [PATCH 1022/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 194 ++++++++++++----------------- packages/project/package.json | 8 +- 2 files changed, 81 insertions(+), 121 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7e8afedddc9..b60ad52be9d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.7.2", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.0.0", + "@npmcli/config": "^8.0.1", "@ui5/builder": "^3.1.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -38,13 +38,13 @@ "ava": "^5.3.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", - "depcheck": "^1.4.6", + "depcheck": "^1.4.7", "docdash": "^2.0.2", "eslint": "^8.51.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.5", + "esmock": "^2.5.6", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", @@ -53,7 +53,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^16.1.0", + "sinon": "^16.1.3", "tap-xunit": "^2.4.1" }, "engines": { @@ -819,9 +819,9 @@ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", - "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", + "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -894,9 +894,9 @@ } }, "node_modules/@npmcli/config": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.0.0.tgz", - "integrity": "sha512-a2ybqstXSCAbP7QghgGcOvLTBlaR3wWQyAmTfWXJld6qP6+vKQabTZQwzRPs00kKi870beNZHhV4Fvlca2l/uA==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.0.1.tgz", + "integrity": "sha512-NKGmMYv/YTLwJr+qK9CvADSe82NTM9AFwFFpsZpVcPCT3XTdxvJBdXi8xvXWjHSCMb0Cb+7FtU/a5qqguCOhxA==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^3.8.0", @@ -1223,9 +1223,9 @@ } }, "node_modules/@types/linkify-it": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.3.tgz", - "integrity": "sha512-pTjcqY9E4nOI55Wgpz7eiI8+LzdYnw3qxXCfHyBDdPbYvbyLgWLJGh8EdPvqawwMK1Uo1794AUkkR38Fr0g+2g==" + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.4.tgz", + "integrity": "sha512-hPpIeeHb/2UuCw06kSNAOVWgehBLXEo0/fUs0mw3W2qhqX89PI2yvok83MnuctYGCPrabGIoi0fFso4DQ+sNUQ==" }, "node_modules/@types/markdown-it": { "version": "12.2.3", @@ -1237,9 +1237,9 @@ } }, "node_modules/@types/mdurl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.3.tgz", - "integrity": "sha512-T5k6kTXak79gwmIOaDF2UUQXFbnBE0zBUzF20pz7wDYu0RQMzWg+Ml/Pz50214NsFHBITkoi5VtdjFZnJ2ijjA==" + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.4.tgz", + "integrity": "sha512-ARVxjAEX5TARFRzpDRVC6cEk0hUIXCCwaMhz8y7S1/PxU6zZS1UMjyobz7q4w/D/R552r4++EhwmXK1N2rAy0A==" }, "node_modules/@types/minimatch": { "version": "3.0.5", @@ -1248,20 +1248,20 @@ "dev": true }, "node_modules/@types/minimist": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.3.tgz", - "integrity": "sha512-ZYFzrvyWUNhaPomn80dsMNgMeXxNWZBdkuG/hWlUvXvbdUH8ZERNBGXnU87McuGcWDsyzX2aChCv/SVN348k3A==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.4.tgz", + "integrity": "sha512-Kfe/D3hxHTusnPNRbycJE1N77WHDsdS4AjUYIzlDzhDrS47NrwuL3YW4VITxwR7KCVpzwgy4Rbj829KSSQmwXQ==", "dev": true }, "node_modules/@types/normalize-package-data": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.2.tgz", - "integrity": "sha512-lqa4UEhhv/2sjjIQgjX8B+RBjj47eo0mzGasklVJ78UKGQY1r0VpB9XHDaZZO9qzEFDdy4MrXLuEaSmPrPSe/A==" + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.3.tgz", + "integrity": "sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg==" }, "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.1.tgz", + "integrity": "sha512-3YmXzzPAdOTVljVMkTMBdBEvlOLg2cDQaDhnnhT3nT9uDbnJzjWhKlzb+desT12Y7tGqaN6d+AbozcKzyL36Ng==", "dev": true }, "node_modules/@ui5/builder": { @@ -2073,9 +2073,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001549", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001549.tgz", - "integrity": "sha512-qRp48dPYSCYaP+KurZLhDYdVE+yEyht/3NlmcJgVQ2VMGt6JL36ndQ/7rgspdZsJuxDPFIo/OzBT2+GmIJ53BA==", + "version": "1.0.30001551", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001551.tgz", + "integrity": "sha512-vtBAez47BoGMMzlbYhfXrMV1kvRF2WP/lqiMuDu1Sb4EE4LKEgjopFDSRtZfdVnslNRpOqV/woE+Xgrwj6VQlg==", "dev": true, "funding": [ { @@ -2956,34 +2956,34 @@ "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" }, "node_modules/depcheck": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.6.tgz", - "integrity": "sha512-Jxy9+u1DE+Svj2N0V/ueEQiOgH2X3KRPAsBfM0m/vCtuiG5QSC//b1mt0rbN/u3BFFEzXqpHzYiwDjmvAydEsw==", + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.7.tgz", + "integrity": "sha512-1lklS/bV5chOxwNKA/2XUUk/hPORp8zihZsXflr8x0kLwmcZ9Y9BsS6Hs3ssvA+2wUVbG0U2Ciqvm1SokNjPkA==", "dev": true, "dependencies": { - "@babel/parser": "7.22.5", - "@babel/traverse": "7.22.5", - "@vue/compiler-sfc": "^3.0.5", + "@babel/parser": "^7.23.0", + "@babel/traverse": "^7.23.2", + "@vue/compiler-sfc": "^3.3.4", "callsite": "^1.0.0", - "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.0", - "debug": "^4.2.0", - "deps-regex": "^0.1.4", + "camelcase": "^6.3.0", + "cosmiconfig": "^7.1.0", + "debug": "^4.3.4", + "deps-regex": "^0.2.0", "findup-sync": "^5.0.0", - "ignore": "^5.1.8", - "is-core-module": "^2.4.0", - "js-yaml": "^3.14.0", - "json5": "^2.1.3", - "lodash": "^4.17.20", - "minimatch": "^3.0.4", + "ignore": "^5.2.4", + "is-core-module": "^2.12.0", + "js-yaml": "^3.14.1", + "json5": "^2.2.3", + "lodash": "^4.17.21", + "minimatch": "^7.4.6", "multimatch": "^5.0.0", "please-upgrade-node": "^3.2.0", - "readdirp": "^3.5.0", + "readdirp": "^3.6.0", "require-package-name": "^2.0.1", - "resolve": "^1.18.1", + "resolve": "^1.22.3", "resolve-from": "^5.0.0", - "semver": "^7.3.2", - "yargs": "^16.1.0" + "semver": "^7.5.4", + "yargs": "^16.2.0" }, "bin": { "depcheck": "bin/depcheck.js" @@ -2992,39 +2992,6 @@ "node": ">=10" } }, - "node_modules/depcheck/node_modules/@babel/parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz", - "integrity": "sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/depcheck/node_modules/@babel/traverse": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.5.tgz", - "integrity": "sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/depcheck/node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -3058,16 +3025,6 @@ "sprintf-js": "~1.0.2" } }, - "node_modules/depcheck/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, "node_modules/depcheck/node_modules/camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", @@ -3123,15 +3080,18 @@ } }, "node_modules/depcheck/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", + "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "*" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/depcheck/node_modules/strip-ansi": { @@ -3191,9 +3151,9 @@ } }, "node_modules/deps-regex": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.1.4.tgz", - "integrity": "sha512-3tzwGYogSJi8HoG93R5x9NrdefZQOXgHgGih/7eivloOq6yC6O+yoFxZnkgP661twvfILONfoKRdF9GQOGx2RA==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.2.0.tgz", + "integrity": "sha512-PwuBojGMQAYbWkMXOY9Pd/NWCDNHVH12pnS7WHqZkTSeMESe4hwnKKRp0yR87g37113x4JPbo/oIvXY+s/f56Q==", "dev": true }, "node_modules/detect-file": { @@ -3342,9 +3302,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.554", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.554.tgz", - "integrity": "sha512-Q0umzPJjfBrrj8unkONTgbKQXzXRrH7sVV7D9ea2yBV3Oaogz991yhbpfvo2LMNkJItmruXTEzVpP9cp7vaIiQ==", + "version": "1.4.559", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.559.tgz", + "integrity": "sha512-iS7KhLYCSJbdo3rUSkhDTVuFNCV34RKs2UaB9Ecr7VlqzjjWW//0nfsFF5dtDmyXlZQaDYYtID5fjtC/6lpRug==", "dev": true }, "node_modules/emittery": { @@ -3854,9 +3814,9 @@ } }, "node_modules/esmock": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.5.tgz", - "integrity": "sha512-F2IIfO2sWLVLn+DygXpylvNEyaR31UHB1L1S4A2OXPQC6BbzWre2hNOJqkxCP162AuJSTcHfB2Ogidmk9MqHgw==", + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.6.tgz", + "integrity": "sha512-9yNplqPx1LvUizdko8MVBTISGoYUdIOkOHu7GuKVSF9/nlRUa8aSW2wp2LR2kBfgEqOAptUPwshJyD9QIicoQQ==", "dev": true, "engines": { "node": ">=14.16.0" @@ -8265,9 +8225,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.4.0.tgz", - "integrity": "sha512-HT3RRs7sTfY22KuPQJkD/XjbTbxgP2Je5HPt6H6JEGvcjHd5Lqru75EbrP3tb4FYjNJ+DjLp+MNQTFQU0mhXNw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.5.0.tgz", + "integrity": "sha512-diLQivFzddJl4ylL3jxSkEc39Tpw7o1QeEHIPxVwryDK2lpB7Nqhzhuo6v5/Ls08Z0yPSAhsyAWlv1/H0ciNmw==", "engines": { "node": ">=16" }, @@ -8365,9 +8325,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.4.0.tgz", - "integrity": "sha512-HT3RRs7sTfY22KuPQJkD/XjbTbxgP2Je5HPt6H6JEGvcjHd5Lqru75EbrP3tb4FYjNJ+DjLp+MNQTFQU0mhXNw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.5.0.tgz", + "integrity": "sha512-diLQivFzddJl4ylL3jxSkEc39Tpw7o1QeEHIPxVwryDK2lpB7Nqhzhuo6v5/Ls08Z0yPSAhsyAWlv1/H0ciNmw==", "engines": { "node": ">=16" }, @@ -8820,9 +8780,9 @@ } }, "node_modules/sinon": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-16.1.0.tgz", - "integrity": "sha512-ZSgzF0vwmoa8pq0GEynqfdnpEDyP1PkYmEChnkjW0Vyh8IDlyFEJ+fkMhCP0il6d5cJjPl2PUsnUSAuP5sttOQ==", + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-16.1.3.tgz", + "integrity": "sha512-mjnWWeyxcAf9nC0bXcPmiDut+oE8HYridTNzBbF98AYVLmWwGRp2ISEpyhYflG1ifILT+eNn3BmKUJPxjXUPlA==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", @@ -9555,9 +9515,9 @@ } }, "node_modules/terser": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.21.0.tgz", - "integrity": "sha512-WtnFKrxu9kaoXuiZFSGrcAvvBqAdmKx0SFNmVNYdJamMu9yyN3I/QF0FbH4QcqJQ+y1CJnzxGIKH0cSj+FGYRw==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.22.0.tgz", + "integrity": "sha512-hHZVLgRA2z4NWcN6aS5rQDc+7Dcy58HOf2zbYwmFcQ+ua3h6eEFf5lIDKTzbWwlazPyOZsFQO8V80/IjVNExEw==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index bc959649e16..1f3e9d10ca5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.0.0", + "@npmcli/config": "^8.0.1", "@ui5/builder": "^3.1.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -149,13 +149,13 @@ "ava": "^5.3.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", - "depcheck": "^1.4.6", + "depcheck": "^1.4.7", "docdash": "^2.0.2", "eslint": "^8.51.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.5", + "esmock": "^2.5.6", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", @@ -164,7 +164,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^16.1.0", + "sinon": "^16.1.3", "tap-xunit": "^2.4.1" } } From e096327377e8de9e686988398aad3b4b962bc224 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Fri, 20 Oct 2023 11:11:21 +0300 Subject: [PATCH 1023/1272] [ui5-project][FIX] ProjectBuilder now can be executed in parallel (#669) Fixes: https://github.com/SAP/ui5-tooling/issues/887 ProjectBuilder was using a singleton of the logger module. Basically, the logger was constructed only once, during module evaluation, but used throughout the whole module. The tricky part is that the `ProjectBuilder`'s logger has this `setProjects()` method that acts as an allow list of the projects being built. As the logger used to be a singleton within this module/class and the async behaviour of the whole module, calling `setProject()` was polluting the internal `projects` property. With this fix, every `ProjectBuilder` instance has its own`BuildLogger` instance that solves the issue. --- packages/project/lib/build/ProjectBuilder.js | 53 ++++++++++--------- .../project/test/lib/build/ProjectBuilder.js | 18 +++++++ 2 files changed, 45 insertions(+), 26 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 63f10aa1cd5..ad44573ac7b 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -1,7 +1,6 @@ import {rimraf} from "rimraf"; import * as resourceFactory from "@ui5/fs/resourceFactory"; import BuildLogger from "@ui5/logger/internal/loggers/Build"; -const log = new BuildLogger("ProjectBuilder"); import composeProjectList from "./helpers/composeProjectList.js"; import BuildContext from "./helpers/BuildContext.js"; import prettyHrtime from "pretty-hrtime"; @@ -12,6 +11,7 @@ import prettyHrtime from "pretty-hrtime"; * @alias @ui5/project/build/ProjectBuilder */ class ProjectBuilder { + #log; /** * Build Configuration * @@ -112,6 +112,7 @@ class ProjectBuilder { this._graph = graph; this._buildContext = new BuildContext(graph, taskRepository, buildConfig); + this.#log = new BuildLogger("ProjectBuilder"); } /** @@ -148,8 +149,8 @@ class ProjectBuilder { } } const rootProjectName = this._graph.getRoot().getName(); - log.info(`Preparing build for project ${rootProjectName}`); - log.info(` Target directory: ${destPath}`); + this.#log.info(`Preparing build for project ${rootProjectName}`); + this.#log.info(` Target directory: ${destPath}`); // Get project filter function based on include/exclude params // (also logs some info to console) @@ -195,19 +196,19 @@ class ProjectBuilder { } }); - log.setProjects(queue.map((projectBuildContext) => { + this.#log.setProjects(queue.map((projectBuildContext) => { return projectBuildContext.getProject().getName(); })); if (queue.length > 1) { // Do not log if only the root project is being built - log.info(`Processing ${queue.length} projects`); + this.#log.info(`Processing ${queue.length} projects`); if (alreadyBuilt.length) { - log.info(` Reusing build results of ${alreadyBuilt.length} projects`); - log.info(` Building ${queue.length - alreadyBuilt.length} projects`); + this.#log.info(` Reusing build results of ${alreadyBuilt.length} projects`); + this.#log.info(` Building ${queue.length - alreadyBuilt.length} projects`); } - if (log.isLevelEnabled("verbose")) { - log.verbose(` Required projects:`); - log.verbose(` ${queue + if (this.#log.isLevelEnabled("verbose")) { + this.#log.verbose(` Required projects:`); + this.#log.verbose(` ${queue .map((projectBuildContext) => { const projectName = projectBuildContext.getProject().getName(); let msg; @@ -225,7 +226,7 @@ class ProjectBuilder { } if (cleanDest) { - log.info(`Cleaning target directory...`); + this.#log.info(`Cleaning target directory...`); await rimraf(destPath); } const startTime = process.hrtime(); @@ -234,15 +235,15 @@ class ProjectBuilder { for (const projectBuildContext of queue) { const projectName = projectBuildContext.getProject().getName(); const projectType = projectBuildContext.getProject().getType(); - log.verbose(`Processing project ${projectName}...`); + this.#log.verbose(`Processing project ${projectName}...`); // Only build projects that are not already build (i.e. provide a matching build manifest) if (alreadyBuilt.includes(projectName)) { - log.skipProjectBuild(projectName, projectType); + this.#log.skipProjectBuild(projectName, projectType); } else { - log.startProjectBuild(projectName, projectType); + this.#log.startProjectBuild(projectName, projectType); await projectBuildContext.getTaskRunner().runTasks(); - log.endProjectBuild(projectName, projectType); + this.#log.endProjectBuild(projectName, projectType); } if (!requestedProjects.includes(projectName)) { // Project has not been requested @@ -250,13 +251,13 @@ class ProjectBuilder { continue; } - log.verbose(`Writing out files...`); + this.#log.verbose(`Writing out files...`); pWrites.push(this._writeResults(projectBuildContext, fsTarget)); } await Promise.all(pWrites); - log.info(`Build succeeded in ${this._getElapsedTime(startTime)}`); + this.#log.info(`Build succeeded in ${this._getElapsedTime(startTime)}`); } catch (err) { - log.error(`Build failed in ${this._getElapsedTime(startTime)}`); + this.#log.error(`Build failed in ${this._getElapsedTime(startTime)}`); throw err; } finally { this._deregisterCleanupSigHooks(cleanupSigHooks); @@ -272,7 +273,7 @@ class ProjectBuilder { const projectBuildContexts = new Map(); for (const projectName of requiredProjects) { - log.verbose(`Creating build context for project ${projectName}...`); + this.#log.verbose(`Creating build context for project ${projectName}...`); const projectBuildContext = this._buildContext.createProjectContext({ project: this._graph.getProject(projectName) }); @@ -320,15 +321,15 @@ class ProjectBuilder { if (includedDependencies.length) { if (includedDependencies.length === this._graph.getSize() - 1) { - log.info(` Including all dependencies`); + this.#log.info(` Including all dependencies`); } else { - log.info(` Requested dependencies:`); - log.info(` + ${includedDependencies.join("\n + ")}`); + this.#log.info(` Requested dependencies:`); + this.#log.info(` + ${includedDependencies.join("\n + ")}`); } } if (excludedDependencies.length) { - log.info(` Excluded dependencies:`); - log.info(` - ${excludedDependencies.join("\n + ")}`); + this.#log.info(` Excluded dependencies:`); + this.#log.info(` - ${excludedDependencies.join("\n + ")}`); } const rootProjectName = this._graph.getRoot().getName(); @@ -379,7 +380,7 @@ class ProjectBuilder { await Promise.all(resources.map((resource) => { if (taskUtil.getTag(resource, taskUtil.STANDARD_TAGS.OmitFromBuildResult)) { - log.silly(`Skipping write of resource tagged as "OmitFromBuildResult": ` + + this.#log.silly(`Skipping write of resource tagged as "OmitFromBuildResult": ` + resource.getPath()); return; // Skip target write for this resource } @@ -388,7 +389,7 @@ class ProjectBuilder { } async _executeCleanupTasks() { - log.info("Executing cleanup tasks..."); + this.#log.info("Executing cleanup tasks..."); await this._buildContext.executeCleanupTasks(); } diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 2d1021e1f4f..4792c2450f1 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -731,6 +731,24 @@ test("_executeCleanupTasks", async (t) => { "BuildContext#executeCleanupTasks got called with no arguments"); }); +test("instantiate new logger for every ProjectBuilder", async (t) => { + function CreateBuildLoggerMock(moduleName) { + t.is(moduleName, "ProjectBuilder", "BuildLogger created with expected moduleName"); + return {}; + } + + const {graph, taskRepository, sinon} = t.context; + const createBuildLoggerMockSpy = sinon.spy(CreateBuildLoggerMock); + const ProjectBuilder = await esmock("../../../lib/build/ProjectBuilder.js", { + "@ui5/logger/internal/loggers/Build": createBuildLoggerMockSpy + }); + + new ProjectBuilder({graph, taskRepository}); + new ProjectBuilder({graph, taskRepository}); + + t.is(createBuildLoggerMockSpy.callCount, 2, "BuildLogger is instantiated for every ProjectBuilder instance"); +}); + function getProcessListenerCount() { return ["SIGHUP", "SIGINT", "SIGTERM", "SIGBREAK"].map((eventName) => { From 3f88e935fcd190d93337ea1ead16f0d9e1c45566 Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Fri, 20 Oct 2023 10:59:10 +0000 Subject: [PATCH 1024/1272] [ui5-project]Release 3.7.3 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 05f1a6a0302..039afbf0585 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.7.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.7.3...HEAD). + + +## [v3.7.3] - 2023-10-20 +### Bug Fixes +- ProjectBuilder now can be executed in parallel ([#669](https://github.com/SAP/ui5-project/issues/669)) [`f652461`](https://github.com/SAP/ui5-project/commit/f652461455a28718835cc66c7265f628be1e13b9) + ## [v3.7.2] - 2023-10-11 @@ -471,6 +477,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.7.3]: https://github.com/SAP/ui5-project/compare/v3.7.2...v3.7.3 [v3.7.2]: https://github.com/SAP/ui5-project/compare/v3.7.1...v3.7.2 [v3.7.1]: https://github.com/SAP/ui5-project/compare/v3.7.0...v3.7.1 [v3.7.0]: https://github.com/SAP/ui5-project/compare/v3.6.0...v3.7.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b60ad52be9d..9c50eaac426 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.7.2", + "version": "3.7.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.7.2", + "version": "3.7.3", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 1f3e9d10ca5..37049af7a98 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.7.2", + "version": "3.7.3", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 41864403c86838b5397845f9f794edb91f13948e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 22 Oct 2023 02:20:40 +0000 Subject: [PATCH 1025/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 172 ++++++++++++++++------------- packages/project/package.json | 4 +- 2 files changed, 97 insertions(+), 79 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9c50eaac426..39c3abb96d9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,11 +40,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.51.0", + "eslint": "^8.52.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.6", + "esmock": "^2.5.7", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", @@ -612,21 +612,21 @@ } }, "node_modules/@eslint/js": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.51.0.tgz", - "integrity": "sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", + "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", + "@humanwhocodes/object-schema": "^2.0.1", "debug": "^4.1.1", "minimatch": "^3.0.5" }, @@ -670,9 +670,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", "dev": true }, "node_modules/@isaacs/cliui": { @@ -1120,9 +1120,9 @@ } }, "node_modules/@sigstore/sign": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.1.0.tgz", - "integrity": "sha512-4VRpfJxs+8eLqzLVrZngVNExVA/zAhVbi4UT4zmtLi4xRd7vz5qie834OgkrGsLlLB1B2nz/3wUxT1XAUBe8gw==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.0.tgz", + "integrity": "sha512-AAbmnEHDQv6CSfrWA5wXslGtzLPtAtHZleKOgxdQYvx/s76Fk6T6ZVt7w2IGV9j1UrFeBocTTQxaXG2oRrDhYA==", "dependencies": { "@sigstore/bundle": "^2.1.0", "@sigstore/protobuf-specs": "^0.2.1", @@ -1325,73 +1325,79 @@ "npm": ">= 8" } }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, "node_modules/@vue/compiler-core": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz", - "integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.6.tgz", + "integrity": "sha512-2JNjemwaNwf+MkkatATVZi7oAH1Hx0B04DdPH3ZoZ8vKC1xZVP7nl4HIsk8XYd3r+/52sqqoz9TWzYc3yE9dqA==", "dev": true, "dependencies": { - "@babel/parser": "^7.21.3", - "@vue/shared": "3.3.4", + "@babel/parser": "^7.23.0", + "@vue/shared": "3.3.6", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz", - "integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.6.tgz", + "integrity": "sha512-1MxXcJYMHiTPexjLAJUkNs/Tw2eDf2tY3a0rL+LfuWyiKN2s6jvSwywH3PWD8bKICjfebX3GWx2Os8jkRDq3Ng==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-core": "3.3.6", + "@vue/shared": "3.3.6" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz", - "integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.6.tgz", + "integrity": "sha512-/Kms6du2h1VrXFreuZmlvQej8B1zenBqIohP0690IUBkJjsFvJxY0crcvVRJ0UhMgSR9dewB+khdR1DfbpArJA==", "dev": true, "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-ssr": "3.3.4", - "@vue/reactivity-transform": "3.3.4", - "@vue/shared": "3.3.4", + "@babel/parser": "^7.23.0", + "@vue/compiler-core": "3.3.6", + "@vue/compiler-dom": "3.3.6", + "@vue/compiler-ssr": "3.3.6", + "@vue/reactivity-transform": "3.3.6", + "@vue/shared": "3.3.6", "estree-walker": "^2.0.2", - "magic-string": "^0.30.0", - "postcss": "^8.1.10", + "magic-string": "^0.30.5", + "postcss": "^8.4.31", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz", - "integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.6.tgz", + "integrity": "sha512-QTIHAfDCHhjXlYGkUg5KH7YwYtdUM1vcFl/FxFDlD6d0nXAmnjizka3HITp8DGudzHndv2PjKVS44vqqy0vP4w==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-dom": "3.3.6", + "@vue/shared": "3.3.6" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz", - "integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.6.tgz", + "integrity": "sha512-RlJl4dHfeO7EuzU1iJOsrlqWyJfHTkJbvYz/IOJWqu8dlCNWtxWX377WI0VsbAgBizjwD+3ZjdnvSyyFW1YVng==", "dev": true, "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4", + "@babel/parser": "^7.23.0", + "@vue/compiler-core": "3.3.6", + "@vue/shared": "3.3.6", "estree-walker": "^2.0.2", - "magic-string": "^0.30.0" + "magic-string": "^0.30.5" } }, "node_modules/@vue/shared": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz", - "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.6.tgz", + "integrity": "sha512-Xno5pEqg8SVhomD0kTSmfh30ZEmV/+jZtyh39q6QflrjdJCXah5lrnOLi9KB6a5k5aAHXMXjoMnxlzUkCNfWLQ==", "dev": true }, "node_modules/abbrev": { @@ -3302,9 +3308,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.559", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.559.tgz", - "integrity": "sha512-iS7KhLYCSJbdo3rUSkhDTVuFNCV34RKs2UaB9Ecr7VlqzjjWW//0nfsFF5dtDmyXlZQaDYYtID5fjtC/6lpRug==", + "version": "1.4.563", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.563.tgz", + "integrity": "sha512-dg5gj5qOgfZNkPNeyKBZQAQitIQ/xwfIDmEQJHCbXaD9ebTZxwJXUsDYcBlAvZGZLi+/354l35J1wkmP6CqYaw==", "dev": true }, "node_modules/emittery": { @@ -3424,18 +3430,19 @@ } }, "node_modules/eslint": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.51.0.tgz", - "integrity": "sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", + "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.51.0", - "@humanwhocodes/config-array": "^0.11.11", + "@eslint/js": "8.52.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -3814,9 +3821,9 @@ } }, "node_modules/esmock": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.6.tgz", - "integrity": "sha512-9yNplqPx1LvUizdko8MVBTISGoYUdIOkOHu7GuKVSF9/nlRUa8aSW2wp2LR2kBfgEqOAptUPwshJyD9QIicoQQ==", + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.7.tgz", + "integrity": "sha512-aDRZLbBiXOOS9UUAQzQRdRqghiSkLQYudgc2HfilxIv4iNMcPyXB753cWXgMy+lz26gLbakg+hgKAtqbjrETkg==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4307,6 +4314,14 @@ "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/gauge": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", @@ -4527,14 +4542,6 @@ "node": ">=6" } }, - "node_modules/has": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.4.tgz", - "integrity": "sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==", - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -4565,6 +4572,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/homedir-polyfill": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", @@ -4854,11 +4872,11 @@ } }, "node_modules/is-core-module": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", - "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6420,9 +6438,9 @@ } }, "node_modules/nise": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.4.tgz", - "integrity": "sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.5.tgz", + "integrity": "sha512-VJuPIfUFaXNRzETTQEEItTOP8Y171ijr+JLq42wHes3DiryR8vT+1TXQW/Rx8JNUhyYYWyIvjXTU6dOhJcs9Nw==", "dev": true, "dependencies": { "@sinonjs/commons": "^2.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 37049af7a98..0ae899da659 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -151,11 +151,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.51.0", + "eslint": "^8.52.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.6", + "esmock": "^2.5.7", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", From f8d9bcc2bad82f1eb23d5520f06ecf29b4377d63 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 29 Oct 2023 03:20:30 +0000 Subject: [PATCH 1026/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 570 ++++++----------------------- packages/project/package.json | 2 +- 2 files changed, 103 insertions(+), 469 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 39c3abb96d9..ac0939dfa0c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -44,7 +44,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.7", + "esmock": "^2.5.8", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", @@ -531,9 +531,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", - "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -1049,13 +1049,13 @@ } }, "node_modules/@npmcli/run-script": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.1.tgz", - "integrity": "sha512-Od/JMrgkjZ8alyBE0IzeqZDiF1jgMez9Gkc/OYrCkHHiXNwM0wc6s7+h+xM7kYDZkS0tAoOLr9VvygyE5+2F7g==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.2.tgz", + "integrity": "sha512-Omu0rpA8WXvcGeY6DDzyRoY1i5DkCBkzyJ+m2u7PD6quzb0TvSqdIPOkTn8ZBOj7LbbcbMfZ3c5skwSu6m8y2w==", "dependencies": { "@npmcli/node-gyp": "^3.0.0", "@npmcli/promise-spawn": "^7.0.0", - "node-gyp": "^9.0.0", + "node-gyp": "^10.0.0", "read-package-json-fast": "^3.0.0", "which": "^4.0.0" }, @@ -1194,14 +1194,6 @@ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", "dev": true }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "engines": { - "node": ">= 10" - } - }, "node_modules/@tufjs/canonical-json": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", @@ -1332,39 +1324,39 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.6.tgz", - "integrity": "sha512-2JNjemwaNwf+MkkatATVZi7oAH1Hx0B04DdPH3ZoZ8vKC1xZVP7nl4HIsk8XYd3r+/52sqqoz9TWzYc3yE9dqA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.7.tgz", + "integrity": "sha512-pACdY6YnTNVLXsB86YD8OF9ihwpolzhhtdLVHhBL6do/ykr6kKXNYABRtNMGrsQXpEXXyAdwvWWkuTbs4MFtPQ==", "dev": true, "dependencies": { "@babel/parser": "^7.23.0", - "@vue/shared": "3.3.6", + "@vue/shared": "3.3.7", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.6.tgz", - "integrity": "sha512-1MxXcJYMHiTPexjLAJUkNs/Tw2eDf2tY3a0rL+LfuWyiKN2s6jvSwywH3PWD8bKICjfebX3GWx2Os8jkRDq3Ng==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.7.tgz", + "integrity": "sha512-0LwkyJjnUPssXv/d1vNJ0PKfBlDoQs7n81CbO6Q0zdL7H1EzqYRrTVXDqdBVqro0aJjo/FOa1qBAPVI4PGSHBw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.6", - "@vue/shared": "3.3.6" + "@vue/compiler-core": "3.3.7", + "@vue/shared": "3.3.7" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.6.tgz", - "integrity": "sha512-/Kms6du2h1VrXFreuZmlvQej8B1zenBqIohP0690IUBkJjsFvJxY0crcvVRJ0UhMgSR9dewB+khdR1DfbpArJA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.7.tgz", + "integrity": "sha512-7pfldWy/J75U/ZyYIXRVqvLRw3vmfxDo2YLMwVtWVNew8Sm8d6wodM+OYFq4ll/UxfqVr0XKiVwti32PCrruAw==", "dev": true, "dependencies": { "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.6", - "@vue/compiler-dom": "3.3.6", - "@vue/compiler-ssr": "3.3.6", - "@vue/reactivity-transform": "3.3.6", - "@vue/shared": "3.3.6", + "@vue/compiler-core": "3.3.7", + "@vue/compiler-dom": "3.3.7", + "@vue/compiler-ssr": "3.3.7", + "@vue/reactivity-transform": "3.3.7", + "@vue/shared": "3.3.7", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.31", @@ -1372,32 +1364,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.6.tgz", - "integrity": "sha512-QTIHAfDCHhjXlYGkUg5KH7YwYtdUM1vcFl/FxFDlD6d0nXAmnjizka3HITp8DGudzHndv2PjKVS44vqqy0vP4w==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.7.tgz", + "integrity": "sha512-TxOfNVVeH3zgBc82kcUv+emNHo+vKnlRrkv8YvQU5+Y5LJGJwSNzcmLUoxD/dNzv0bhQ/F0s+InlgV0NrApJZg==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.6", - "@vue/shared": "3.3.6" + "@vue/compiler-dom": "3.3.7", + "@vue/shared": "3.3.7" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.6.tgz", - "integrity": "sha512-RlJl4dHfeO7EuzU1iJOsrlqWyJfHTkJbvYz/IOJWqu8dlCNWtxWX377WI0VsbAgBizjwD+3ZjdnvSyyFW1YVng==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.7.tgz", + "integrity": "sha512-APhRmLVbgE1VPGtoLQoWBJEaQk4V8JUsqrQihImVqKT+8U6Qi3t5ATcg4Y9wGAPb3kIhetpufyZ1RhwbZCIdDA==", "dev": true, "dependencies": { "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.6", - "@vue/shared": "3.3.6", + "@vue/compiler-core": "3.3.7", + "@vue/shared": "3.3.7", "estree-walker": "^2.0.2", "magic-string": "^0.30.5" } }, "node_modules/@vue/shared": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.6.tgz", - "integrity": "sha512-Xno5pEqg8SVhomD0kTSmfh30ZEmV/+jZtyh39q6QflrjdJCXah5lrnOLi9KB6a5k5aAHXMXjoMnxlzUkCNfWLQ==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.7.tgz", + "integrity": "sha512-N/tbkINRUDExgcPTBvxNkvHGu504k8lzlNQRITVnm6YjOjwa4r0nnbd4Jb01sNpur5hAllyRJzSK5PvB9PPwRg==", "dev": true }, "node_modules/abbrev": { @@ -1409,9 +1401,9 @@ } }, "node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", + "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", "bin": { "acorn": "bin/acorn" }, @@ -1428,9 +1420,9 @@ } }, "node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.0.tgz", + "integrity": "sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==", "dev": true, "engines": { "node": ">=0.4.0" @@ -1447,17 +1439,6 @@ "node": ">= 14" } }, - "node_modules/agentkeepalive": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", - "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", - "dependencies": { - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, "node_modules/aggregate-error": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", @@ -1544,11 +1525,6 @@ "node": ">=8" } }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" - }, "node_modules/archy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", @@ -1564,18 +1540,6 @@ "node": ">=14" } }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -2079,9 +2043,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001551", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001551.tgz", - "integrity": "sha512-vtBAez47BoGMMzlbYhfXrMV1kvRF2WP/lqiMuDu1Sb4EE4LKEgjopFDSRtZfdVnslNRpOqV/woE+Xgrwj6VQlg==", + "version": "1.0.30001557", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001557.tgz", + "integrity": "sha512-91oR7hLNUP3gG6MLU+n96em322a8Xzes8wWdBKhLgUoiJsAF5irZnxSUCbc+qUZXNnPCfUwLOi9ZCZpkvjQajw==", "dev": true, "funding": [ { @@ -2606,14 +2570,6 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "bin": { - "color-support": "bin.js" - } - }, "node_modules/commander": { "version": "10.0.1", "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", @@ -2647,7 +2603,8 @@ "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true }, "node_modules/concordance": { "version": "5.0.4", @@ -2684,11 +2641,6 @@ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "dev": true }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" - }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -2956,11 +2908,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" - }, "node_modules/depcheck": { "version": "1.4.7", "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.7.tgz", @@ -3308,9 +3255,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.563", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.563.tgz", - "integrity": "sha512-dg5gj5qOgfZNkPNeyKBZQAQitIQ/xwfIDmEQJHCbXaD9ebTZxwJXUsDYcBlAvZGZLi+/354l35J1wkmP6CqYaw==", + "version": "1.4.569", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.569.tgz", + "integrity": "sha512-LsrJjZ0IbVy12ApW3gpYpcmHS3iRxH4bkKOW98y1/D+3cvDUWGcbzbsFinfUS8knpcZk/PG/2p/RnkMCYN7PVg==", "dev": true }, "node_modules/emittery": { @@ -3821,9 +3768,9 @@ } }, "node_modules/esmock": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.7.tgz", - "integrity": "sha512-aDRZLbBiXOOS9UUAQzQRdRqghiSkLQYudgc2HfilxIv4iNMcPyXB753cWXgMy+lz26gLbakg+hgKAtqbjrETkg==", + "version": "2.5.8", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.8.tgz", + "integrity": "sha512-Lvn8OhAvdM+OBgIkljnG8WNPayDN4vMyoHaKGnXnM4J7T3bE6qztUWHd7cnbnyW0ueLQRT/3bS6SoHnBN1hEsg==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4298,7 +4245,8 @@ "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true }, "node_modules/fsevents": { "version": "2.3.3", @@ -4322,48 +4270,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/gauge/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "node_modules/gauge/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -4551,11 +4457,6 @@ "node": ">=8" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" - }, "node_modules/hasha": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", @@ -4678,14 +4579,6 @@ "node": ">=14.18.0" } }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dependencies": { - "ms": "^2.0.0" - } - }, "node_modules/iconv-lite": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", @@ -4807,6 +4700,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -4815,7 +4709,8 @@ "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true }, "node_modules/ini": { "version": "4.1.1", @@ -6353,7 +6248,8 @@ "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true }, "node_modules/multimatch": { "version": "5.0.0", @@ -6460,296 +6356,48 @@ } }, "node_modules/node-gyp": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.0.tgz", - "integrity": "sha512-dMXsYP6gc9rRbejLXmTbVRYjAHw7ppswsKyMxuxJxxOHzluIO1rGp9TOQgjFJ+2MCqcOcQTOPB/8Xwhr+7s4Eg==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.0.tgz", + "integrity": "sha512-LkaKUbjyacJGRHiuhUeUblzZNxTF1/XNooyAl6aiaJ6ZpeurR4Mk9sjxncGNSI7pETqyqM+hLAER0788oSxt0A==", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", - "glob": "^7.1.4", + "glob": "^10.3.10", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^11.0.3", - "nopt": "^6.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", "semver": "^7.3.5", "tar": "^6.1.2", - "which": "^2.0.2" + "which": "^4.0.0" }, "bin": { "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": "^12.13 || ^14.13 || >=16" - } - }, - "node_modules/node-gyp/node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "node_modules/node-gyp/node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/node-gyp/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/node-gyp/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/node-gyp/node_modules/cacache": { - "version": "17.1.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", - "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/node-gyp/node_modules/cacache/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/node-gyp/node_modules/cacache/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/cacache/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/node-gyp/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/node-gyp/node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/node-gyp/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/node-gyp/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/node-gyp/node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/node-gyp/node_modules/make-fetch-happen/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/node-gyp/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/node-gyp/node_modules/nopt": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", - "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", - "dependencies": { - "abbrev": "^1.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" - }, + "node_modules/node-gyp/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=16" } }, - "node_modules/node-gyp/node_modules/p-map": { + "node_modules/node-gyp/node_modules/which": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/node-gyp/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dependencies": { - "glob": "^7.1.3" + "isexe": "^3.1.1" }, "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", - "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" + "node-which": "bin/which.js" }, "engines": { - "node": ">= 10" + "node": "^16.13.0 || >=18.0.0" } }, "node_modules/node-preload": { @@ -6961,20 +6609,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -7315,6 +6949,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, "dependencies": { "wrappy": "1" } @@ -7620,6 +7255,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -8243,9 +7879,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.5.0.tgz", - "integrity": "sha512-diLQivFzddJl4ylL3jxSkEc39Tpw7o1QeEHIPxVwryDK2lpB7Nqhzhuo6v5/Ls08Z0yPSAhsyAWlv1/H0ciNmw==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.6.0.tgz", + "integrity": "sha512-rLjWJzQFOq4xw7MgJrCZ6T1jIOvvYElXT12r+y0CC6u67hegDHaxcPqb2fZHOGlqxugGQPNB1EnTezjBetkwkw==", "engines": { "node": ">=16" }, @@ -8314,9 +7950,9 @@ } }, "node_modules/read-pkg/node_modules/parse-json": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.0.tgz", - "integrity": "sha512-ihtdrgbqdONYD156Ap6qTcaGcGdkdAxodO1wLqQ/j7HP1u2sFYppINiq4jyC8F+Nm+4fVufylCV00QmkTHkSUg==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.1.tgz", + "integrity": "sha512-SgOTCX/EZXtZxBE5eJ97P4yGM5n37BwRU+YMsH4vNzFqJV/oWFXXCmwFlgWUM4PrakybVOueJJ6pwHqSVhTFDw==", "dependencies": { "@babel/code-frame": "^7.21.4", "error-ex": "^1.3.2", @@ -8343,9 +7979,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.5.0.tgz", - "integrity": "sha512-diLQivFzddJl4ylL3jxSkEc39Tpw7o1QeEHIPxVwryDK2lpB7Nqhzhuo6v5/Ls08Z0yPSAhsyAWlv1/H0ciNmw==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.6.0.tgz", + "integrity": "sha512-rLjWJzQFOq4xw7MgJrCZ6T1jIOvvYElXT12r+y0CC6u67hegDHaxcPqb2fZHOGlqxugGQPNB1EnTezjBetkwkw==", "engines": { "node": ">=16" }, @@ -8357,6 +7993,7 @@ "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -8659,6 +8296,7 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, "funding": [ { "type": "github", @@ -8751,7 +8389,8 @@ "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true }, "node_modules/shebang-command": { "version": "2.0.0", @@ -9090,6 +8729,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, "dependencies": { "safe-buffer": "~5.2.0" } @@ -9881,7 +9521,8 @@ "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true }, "node_modules/uuid": { "version": "8.3.2", @@ -9946,14 +9587,6 @@ "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", "dev": true }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, "node_modules/workerpool": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", @@ -10065,7 +9698,8 @@ "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true }, "node_modules/write-file-atomic": { "version": "5.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 0ae899da659..5b03b558b87 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -155,7 +155,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.7", + "esmock": "^2.5.8", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", From 711f995a97a8908d5574ff1fba9737a6436fc20c Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 30 Oct 2023 09:14:51 +0100 Subject: [PATCH 1027/1272] [ui5-project][FIX] application: Improve error message for missing manifest.json Fixes: https://github.com/SAP/ui5-tooling/issues/306 --- packages/project/lib/specifications/types/Application.js | 6 +++++- .../project/test/lib/specifications/types/Application.js | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index 9506c74b9b0..5ca83a099c7 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -145,7 +145,11 @@ class Application extends ComponentProject { // relevant for the rather "uncommon" App Variants) throw new Error( `Could not find required manifest.json for project ` + - `${this.getName()}: ${manifestJsonError.message}`); + `${this.getName()}: ${manifestJsonError.message}\n\n` + + `If you are about to start a new project, please refer to:\n` + + `https://sap.github.io/ui5-tooling/v3/pages/GettingStarted/#starting-a-new-project`, { + cause: manifestJsonError + }); } throw appDescVarError; } diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 38699c4a343..5949d5229d1 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -526,7 +526,10 @@ test("_getNamespace: Correct error message if fallback to manifest.appdescr_vari const error = await t.throwsAsync(project._getNamespace()); t.deepEqual(error.message, "Could not find required manifest.json for project application.a: " + - "No such stable or directory: manifest.json", + "No such stable or directory: manifest.json" + + "\n\n" + + "If you are about to start a new project, please refer to:\n" + + "https://sap.github.io/ui5-tooling/v3/pages/GettingStarted/#starting-a-new-project", "Rejected with correct error message"); t.is(_getManifestStub.callCount, 2, "_getManifest called exactly twice"); From 3f254883556c9eb6a56cb58d4d71c09c64d8a573 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Oct 2023 05:10:43 +0000 Subject: [PATCH 1028/1272] [ui5-project]Bump actions/setup-node from 3.8.1 to 4.0.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.8.1 to 4.0.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3.8.1...v4.0.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 4eac9840517..f05a7f4d472 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Node.js LTS 16.18.0 - uses: actions/setup-node@v3.8.1 + uses: actions/setup-node@v4.0.0 with: node-version: 16.18.0 From fcf6bc13d4a3b72fe64f8cc78f52e62bd4a62d44 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 5 Nov 2023 03:20:39 +0000 Subject: [PATCH 1029/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 68 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 36 insertions(+), 36 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ac0939dfa0c..c21003ee614 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,11 +40,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.52.0", + "eslint": "^8.53.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.8", + "esmock": "^2.5.9", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", @@ -540,9 +540,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", + "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -612,9 +612,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", - "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.53.0.tgz", + "integrity": "sha512-Kn7K8dx/5U6+cT1yEhpX1w4PCSg0M+XyRILPgvwcEBjerFWCwQj5sbr3/VmxqV0JGHCBCzyd6LxypEuehypY1w==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2043,9 +2043,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001557", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001557.tgz", - "integrity": "sha512-91oR7hLNUP3gG6MLU+n96em322a8Xzes8wWdBKhLgUoiJsAF5irZnxSUCbc+qUZXNnPCfUwLOi9ZCZpkvjQajw==", + "version": "1.0.30001561", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001561.tgz", + "integrity": "sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==", "dev": true, "funding": [ { @@ -3255,9 +3255,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.569", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.569.tgz", - "integrity": "sha512-LsrJjZ0IbVy12ApW3gpYpcmHS3iRxH4bkKOW98y1/D+3cvDUWGcbzbsFinfUS8knpcZk/PG/2p/RnkMCYN7PVg==", + "version": "1.4.576", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.576.tgz", + "integrity": "sha512-yXsZyXJfAqzWk1WKryr0Wl0MN2D47xodPvEEwlVePBnhU5E7raevLQR+E6b9JAD3GfL/7MbAL9ZtWQQPcLx7wA==", "dev": true }, "node_modules/emittery": { @@ -3377,15 +3377,15 @@ } }, "node_modules/eslint": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", - "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.53.0.tgz", + "integrity": "sha512-N4VuiPjXDUa4xVeV/GC/RV3hQW9Nw+Y463lkWaKKXKYMvmRiRDAtfpuPFLN+E1/6ZhyR8J2ig+eVREnYgUsiag==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.52.0", + "@eslint/eslintrc": "^2.1.3", + "@eslint/js": "8.53.0", "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3768,9 +3768,9 @@ } }, "node_modules/esmock": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.8.tgz", - "integrity": "sha512-Lvn8OhAvdM+OBgIkljnG8WNPayDN4vMyoHaKGnXnM4J7T3bE6qztUWHd7cnbnyW0ueLQRT/3bS6SoHnBN1hEsg==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.9.tgz", + "integrity": "sha512-A77YU9sLdAZ2QJ1hkZFCV0nfyPWYLCdQyUpOgrRXnqNKNbGv7pLh9i0xZczw/8a0+KB7vfSHjjjqJb9BbGi1Iw==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4011,9 +4011,9 @@ } }, "node_modules/file-type": { - "version": "18.5.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.5.0.tgz", - "integrity": "sha512-yvpl5U868+V6PqXHMmsESpg6unQ5GfnPssl4dxdJudBrr9qy7Fddt7EVX1VLlddFfe8Gj9N7goCZH22FXuSQXQ==", + "version": "18.6.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.6.0.tgz", + "integrity": "sha512-uLqXnIAIyy8K9rnvdU9IYi3WIL+6qVBWn24kThYOPlnyU+6yrr2oarn+j7seMLh1wOEG4hEjRP6a30IiKR9OaA==", "dev": true, "dependencies": { "readable-web-to-node-stream": "^3.0.2", @@ -6356,9 +6356,9 @@ } }, "node_modules/node-gyp": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.0.tgz", - "integrity": "sha512-LkaKUbjyacJGRHiuhUeUblzZNxTF1/XNooyAl6aiaJ6ZpeurR4Mk9sjxncGNSI7pETqyqM+hLAER0788oSxt0A==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", + "integrity": "sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", @@ -7656,9 +7656,9 @@ "dev": true }, "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "engines": { "node": ">=6" } @@ -9173,9 +9173,9 @@ } }, "node_modules/terser": { - "version": "5.22.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.22.0.tgz", - "integrity": "sha512-hHZVLgRA2z4NWcN6aS5rQDc+7Dcy58HOf2zbYwmFcQ+ua3h6eEFf5lIDKTzbWwlazPyOZsFQO8V80/IjVNExEw==", + "version": "5.24.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz", + "integrity": "sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index 5b03b558b87..d70e6e416c4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -151,11 +151,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.52.0", + "eslint": "^8.53.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.8", + "esmock": "^2.5.9", "istanbul-lib-coverage": "^3.2.0", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", From 453fe26e667a194b3610bbeff1cbbd49d6837d32 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 12 Nov 2023 03:20:39 +0000 Subject: [PATCH 1030/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 363 +++++++++++++---------------- packages/project/package.json | 8 +- 2 files changed, 170 insertions(+), 201 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c21003ee614..7c7fe158f9f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,13 +43,13 @@ "eslint": "^8.53.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.9", - "istanbul-lib-coverage": "^3.2.0", + "eslint-plugin-jsdoc": "^46.9.0", + "esmock": "^2.6.0", + "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.6", - "js-beautify": "^1.14.9", + "js-beautify": "^1.14.11", "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", @@ -152,30 +152,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", - "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.3.tgz", + "integrity": "sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", - "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.3.tgz", + "integrity": "sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", + "@babel/generator": "^7.23.3", "@babel/helper-compilation-targets": "^7.22.15", - "@babel/helper-module-transforms": "^7.23.0", + "@babel/helper-module-transforms": "^7.23.3", "@babel/helpers": "^7.23.2", - "@babel/parser": "^7.23.0", + "@babel/parser": "^7.23.3", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.2", - "@babel/types": "^7.23.0", + "@babel/traverse": "^7.23.3", + "@babel/types": "^7.23.3", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -200,12 +200,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.3.tgz", + "integrity": "sha512-keeZWAV4LU3tW0qRi19HRpabC/ilM0HRBBzf9/k8FFiG4KVpiv0FIy4hHfLfFQZNhziCTPTmd59zoyv6DNISzg==", "dev": true, "dependencies": { - "@babel/types": "^7.23.0", + "@babel/types": "^7.23.3", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -286,9 +286,9 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", - "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.22.20", @@ -442,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", - "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.3.tgz", + "integrity": "sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw==", "bin": { "parser": "bin/babel-parser.js" }, @@ -467,19 +467,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", - "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.3.tgz", + "integrity": "sha512-+K0yF1/9yR0oHdE0StHuEj3uTPzwwbrLGfNOndVJVV2TqA5+j3oljJUb4nmB954FLGjNem976+B+eDuLIjesiQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", + "@babel/generator": "^7.23.3", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.0", - "@babel/types": "^7.23.0", + "@babel/parser": "^7.23.3", + "@babel/types": "^7.23.3", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -488,9 +488,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", - "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.3.tgz", + "integrity": "sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.22.5", @@ -502,12 +502,12 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.40.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.40.1.tgz", - "integrity": "sha512-YORCdZSusAlBrFpZ77pJjc5r1bQs5caPWtAu+WWmiSo+8XaUzseapVrfAtiRFbQWnrBxxLLEwF6f6ZG/UgCQCg==", + "version": "0.41.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.41.0.tgz", + "integrity": "sha512-aKUhyn1QI5Ksbqcr3fFJj16p99QdjUxXAEuFst1Z47DRyoiMwivIH9MV/ARcJOCXVjPfjITciej8ZD2O/6qUmw==", "dev": true, "dependencies": { - "comment-parser": "1.4.0", + "comment-parser": "1.4.1", "esquery": "^1.5.0", "jsdoc-type-pratt-parser": "~4.0.0" }, @@ -886,9 +886,12 @@ } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", + "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", + "dependencies": { + "semver": "^7.3.5" + }, "engines": { "node": "14 || >=16.14" } @@ -949,9 +952,12 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", + "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", + "dependencies": { + "semver": "^7.3.5" + }, "engines": { "node": "14 || >=16.14" } @@ -1215,9 +1221,9 @@ } }, "node_modules/@types/linkify-it": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.4.tgz", - "integrity": "sha512-hPpIeeHb/2UuCw06kSNAOVWgehBLXEo0/fUs0mw3W2qhqX89PI2yvok83MnuctYGCPrabGIoi0fFso4DQ+sNUQ==" + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.5.tgz", + "integrity": "sha512-yg6E+u0/+Zjva+buc3EIb+29XEg4wltq7cSmd4Uc2EE/1nUVmxyzpX6gUXD0V8jIrG0r7YeOGVIbYRkxeooCtw==" }, "node_modules/@types/markdown-it": { "version": "12.2.3", @@ -1229,9 +1235,9 @@ } }, "node_modules/@types/mdurl": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.4.tgz", - "integrity": "sha512-ARVxjAEX5TARFRzpDRVC6cEk0hUIXCCwaMhz8y7S1/PxU6zZS1UMjyobz7q4w/D/R552r4++EhwmXK1N2rAy0A==" + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.5.tgz", + "integrity": "sha512-6L6VymKTzYSrEf4Nev4Xa1LCHKrlTlYCBMTlQKFuddo1CvQcE52I0mwfOJayueUC7MJuXOeHTcIU683lzd0cUA==" }, "node_modules/@types/minimatch": { "version": "3.0.5", @@ -1240,20 +1246,20 @@ "dev": true }, "node_modules/@types/minimist": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.4.tgz", - "integrity": "sha512-Kfe/D3hxHTusnPNRbycJE1N77WHDsdS4AjUYIzlDzhDrS47NrwuL3YW4VITxwR7KCVpzwgy4Rbj829KSSQmwXQ==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", "dev": true }, "node_modules/@types/normalize-package-data": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.3.tgz", - "integrity": "sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg==" + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==" }, "node_modules/@types/parse-json": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.1.tgz", - "integrity": "sha512-3YmXzzPAdOTVljVMkTMBdBEvlOLg2cDQaDhnnhT3nT9uDbnJzjWhKlzb+desT12Y7tGqaN6d+AbozcKzyL36Ng==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", "dev": true }, "node_modules/@ui5/builder": { @@ -1324,39 +1330,39 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.7.tgz", - "integrity": "sha512-pACdY6YnTNVLXsB86YD8OF9ihwpolzhhtdLVHhBL6do/ykr6kKXNYABRtNMGrsQXpEXXyAdwvWWkuTbs4MFtPQ==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.8.tgz", + "integrity": "sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==", "dev": true, "dependencies": { "@babel/parser": "^7.23.0", - "@vue/shared": "3.3.7", + "@vue/shared": "3.3.8", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.7.tgz", - "integrity": "sha512-0LwkyJjnUPssXv/d1vNJ0PKfBlDoQs7n81CbO6Q0zdL7H1EzqYRrTVXDqdBVqro0aJjo/FOa1qBAPVI4PGSHBw==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.8.tgz", + "integrity": "sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.7", - "@vue/shared": "3.3.7" + "@vue/compiler-core": "3.3.8", + "@vue/shared": "3.3.8" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.7.tgz", - "integrity": "sha512-7pfldWy/J75U/ZyYIXRVqvLRw3vmfxDo2YLMwVtWVNew8Sm8d6wodM+OYFq4ll/UxfqVr0XKiVwti32PCrruAw==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.8.tgz", + "integrity": "sha512-WMzbUrlTjfYF8joyT84HfwwXo+8WPALuPxhy+BZ6R4Aafls+jDBnSz8PDz60uFhuqFbl3HxRfxvDzrUf3THwpA==", "dev": true, "dependencies": { "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.7", - "@vue/compiler-dom": "3.3.7", - "@vue/compiler-ssr": "3.3.7", - "@vue/reactivity-transform": "3.3.7", - "@vue/shared": "3.3.7", + "@vue/compiler-core": "3.3.8", + "@vue/compiler-dom": "3.3.8", + "@vue/compiler-ssr": "3.3.8", + "@vue/reactivity-transform": "3.3.8", + "@vue/shared": "3.3.8", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.31", @@ -1364,32 +1370,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.7.tgz", - "integrity": "sha512-TxOfNVVeH3zgBc82kcUv+emNHo+vKnlRrkv8YvQU5+Y5LJGJwSNzcmLUoxD/dNzv0bhQ/F0s+InlgV0NrApJZg==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.8.tgz", + "integrity": "sha512-hXCqQL/15kMVDBuoBYpUnSYT8doDNwsjvm3jTefnXr+ytn294ySnT8NlsFHmTgKNjwpuFy7XVV8yTeLtNl/P6w==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.7", - "@vue/shared": "3.3.7" + "@vue/compiler-dom": "3.3.8", + "@vue/shared": "3.3.8" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.7.tgz", - "integrity": "sha512-APhRmLVbgE1VPGtoLQoWBJEaQk4V8JUsqrQihImVqKT+8U6Qi3t5ATcg4Y9wGAPb3kIhetpufyZ1RhwbZCIdDA==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.8.tgz", + "integrity": "sha512-49CvBzmZNtcHua0XJ7GdGifM8GOXoUMOX4dD40Y5DxI3R8OUhMlvf2nvgUAcPxaXiV5MQQ1Nwy09ADpnLQUqRw==", "dev": true, "dependencies": { "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.7", - "@vue/shared": "3.3.7", + "@vue/compiler-core": "3.3.8", + "@vue/shared": "3.3.8", "estree-walker": "^2.0.2", "magic-string": "^0.30.5" } }, "node_modules/@vue/shared": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.7.tgz", - "integrity": "sha512-N/tbkINRUDExgcPTBvxNkvHGu504k8lzlNQRITVnm6YjOjwa4r0nnbd4Jb01sNpur5hAllyRJzSK5PvB9PPwRg==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.8.tgz", + "integrity": "sha512-8PGwybFwM4x8pcfgqEQFy70NaQxASvOC5DJwLQfpArw1UDfUXrJkdxD3BhVTMS+0Lef/TU7YO0Jvr0jJY8T+mw==", "dev": true }, "node_modules/abbrev": { @@ -1892,9 +1898,12 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", + "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", + "dependencies": { + "semver": "^7.3.5" + }, "engines": { "node": "14 || >=16.14" } @@ -2580,9 +2589,9 @@ } }, "node_modules/comment-parser": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.0.tgz", - "integrity": "sha512-QLyTNiZ2KDOibvFPlZ6ZngVsZ/0gYnE6uTXi5aoDg8ed3AkJAz4sEje3Y8a29hQ1s6A99MZXe47fLAXQ1rTqaw==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", "dev": true, "engines": { "node": ">= 12.0.0" @@ -3255,9 +3264,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.576", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.576.tgz", - "integrity": "sha512-yXsZyXJfAqzWk1WKryr0Wl0MN2D47xodPvEEwlVePBnhU5E7raevLQR+E6b9JAD3GfL/7MbAL9ZtWQQPcLx7wA==", + "version": "1.4.581", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.581.tgz", + "integrity": "sha512-6uhqWBIapTJUxgPTCHH9sqdbxIMPt7oXl0VcAL1kOtlU6aECdcMncCrX5Z7sHQ/invtrC9jUQUef7+HhO8vVFw==", "dev": true }, "node_modules/emittery": { @@ -3466,14 +3475,14 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.8.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.8.2.tgz", - "integrity": "sha512-5TSnD018f3tUJNne4s4gDWQflbsgOycIKEUBoCLn6XtBMgNHxQFmV8vVxUtiPxAQq8lrX85OaSG/2gnctxw9uQ==", + "version": "46.9.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.9.0.tgz", + "integrity": "sha512-UQuEtbqLNkPf5Nr/6PPRCtr9xypXY+g8y/Q7gPa0YK7eDhh0y2lWprXRnaYbW7ACgIUvpDKy9X2bZqxtGzBG9Q==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.40.1", + "@es-joy/jsdoccomment": "~0.41.0", "are-docs-informative": "^0.0.2", - "comment-parser": "1.4.0", + "comment-parser": "1.4.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", @@ -3768,9 +3777,9 @@ } }, "node_modules/esmock": { - "version": "2.5.9", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.5.9.tgz", - "integrity": "sha512-A77YU9sLdAZ2QJ1hkZFCV0nfyPWYLCdQyUpOgrRXnqNKNbGv7pLh9i0xZczw/8a0+KB7vfSHjjjqJb9BbGi1Iw==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.0.tgz", + "integrity": "sha512-PFcxAm5bzPckh9V6s78FW+WaR/J+1R9K6vlItFOIFqNn+3w1pgo/HEEOJ2HBwVdrEnO7xXBgGUcFoNsdTU599A==", "dev": true, "engines": { "node": ">=14.16.0" @@ -3950,9 +3959,9 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -4011,9 +4020,9 @@ } }, "node_modules/file-type": { - "version": "18.6.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.6.0.tgz", - "integrity": "sha512-uLqXnIAIyy8K9rnvdU9IYi3WIL+6qVBWn24kThYOPlnyU+6yrr2oarn+j7seMLh1wOEG4hEjRP6a30IiKR9OaA==", + "version": "18.7.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.7.0.tgz", + "integrity": "sha512-ihHtXRzXEziMrQ56VSgU7wkxh55iNchFkosu7Y9/S+tXHdKyrGjVK0ujbqNnsxzea+78MaLhN6PGmfYSAv1ACw==", "dev": true, "dependencies": { "readable-web-to-node-stream": "^3.0.2", @@ -4970,9 +4979,9 @@ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true, "engines": { "node": ">=8" @@ -5182,15 +5191,15 @@ } }, "node_modules/js-beautify": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.9.tgz", - "integrity": "sha512-coM7xq1syLcMyuVGyToxcj2AlzhkDjmfklL8r0JgJ7A76wyGMpJ1oA35mr4APdYNO/o/4YY8H54NQIJzhMbhBg==", + "version": "1.14.11", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.11.tgz", + "integrity": "sha512-rPogWqAfoYh1Ryqqh2agUpVfbxAhbjuN1SmU86dskQUKouRiggUTCO4+2ym9UPXllc2WAp0J+T5qxn7Um3lCdw==", "dev": true, "dependencies": { "config-chain": "^1.1.13", "editorconfig": "^1.0.3", - "glob": "^8.1.0", - "nopt": "^6.0.0" + "glob": "^10.3.3", + "nopt": "^7.2.0" }, "bin": { "css-beautify": "js/bin/css-beautify.js", @@ -5198,59 +5207,7 @@ "js-beautify": "js/bin/js-beautify.js" }, "engines": { - "node": ">=12" - } - }, - "node_modules/js-beautify/node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/js-beautify/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/js-beautify/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/js-beautify/node_modules/nopt": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", - "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", - "dev": true, - "dependencies": { - "abbrev": "^1.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=14" } }, "node_modules/js-string-escape": { @@ -6302,9 +6259,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, "funding": [ { @@ -6533,9 +6490,12 @@ } }, "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", + "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", + "dependencies": { + "semver": "^7.3.5" + }, "engines": { "node": "14 || >=16.14" } @@ -7289,9 +7249,12 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", + "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", + "dependencies": { + "semver": "^7.3.5" + }, "engines": { "node": "14 || >=16.14" } @@ -7759,9 +7722,12 @@ } }, "node_modules/read-package-json/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", + "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", + "dependencies": { + "semver": "^7.3.5" + }, "engines": { "node": "14 || >=16.14" } @@ -7879,9 +7845,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.6.0.tgz", - "integrity": "sha512-rLjWJzQFOq4xw7MgJrCZ6T1jIOvvYElXT12r+y0CC6u67hegDHaxcPqb2fZHOGlqxugGQPNB1EnTezjBetkwkw==", + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.7.1.tgz", + "integrity": "sha512-iWr8RUmzAJRfhZugX9O7nZE6pCxDU8CZ3QxsLuTnGcBLJpCaP2ll3s4eMTBoFnU/CeXY/5rfQSuAEsTGJO4y8A==", "engines": { "node": ">=16" }, @@ -7920,17 +7886,20 @@ } }, "node_modules/read-pkg/node_modules/lines-and-columns": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", - "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz", + "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, "node_modules/read-pkg/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", + "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", + "dependencies": { + "semver": "^7.3.5" + }, "engines": { "node": "14 || >=16.14" } @@ -7979,9 +7948,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.6.0.tgz", - "integrity": "sha512-rLjWJzQFOq4xw7MgJrCZ6T1jIOvvYElXT12r+y0CC6u67hegDHaxcPqb2fZHOGlqxugGQPNB1EnTezjBetkwkw==", + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.7.1.tgz", + "integrity": "sha512-iWr8RUmzAJRfhZugX9O7nZE6pCxDU8CZ3QxsLuTnGcBLJpCaP2ll3s4eMTBoFnU/CeXY/5rfQSuAEsTGJO4y8A==", "engines": { "node": ">=16" }, diff --git a/packages/project/package.json b/packages/project/package.json index d70e6e416c4..a09aac2f3bc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -154,13 +154,13 @@ "eslint": "^8.53.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.8.2", - "esmock": "^2.5.9", - "istanbul-lib-coverage": "^3.2.0", + "eslint-plugin-jsdoc": "^46.9.0", + "esmock": "^2.6.0", + "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.6", - "js-beautify": "^1.14.9", + "js-beautify": "^1.14.11", "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", From df3cd828ff41498f8b7afe9b60406bc82027e1ba Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 Nov 2023 11:44:33 +0100 Subject: [PATCH 1031/1272] [ui5-project][INTERNAL] GitHub: Include lib/build/* in file finder The GitHub file finder feature assumes "build/" directories contain generated code and therefore ignores them. This change configures lib/build/* to not be treated as generated code. Resources: * https://github.blog/changelog/2022-07-28-file-finder-customize-default-exclusions/ * https://docs.github.com/en/repositories/working-with-files/managing-files/customizing-how-changed-files-appear-on-github GitHub Support Ticket: #2427846 --- packages/project/.gitattributes | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/project/.gitattributes b/packages/project/.gitattributes index 6313b56c578..0974d19c920 100644 --- a/packages/project/.gitattributes +++ b/packages/project/.gitattributes @@ -1 +1,2 @@ * text=auto eol=lf +lib/build/** linguist-generated=false \ No newline at end of file From c9da2830e74310008662977e9874f57542e90030 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Wed, 15 Nov 2023 11:52:41 +0200 Subject: [PATCH 1032/1272] [ui5-project][FEATURE] TaskUtil: Add 'force' flag to cleanup task callback (#677) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit JIRA: CPOUI5FOUNDATION-751 \@ui5/builder PR that depends on this change: https://github.com/SAP/ui5-builder/pull/953 When cleaning up after tasks run, it can happen in couple cases: - When the project is build - When there's a SIGTERM signal - (Maybe) on some error We need to be able to distinguish between those cases as in some places we rely on graceful termination and cleanup. Especially, after the project has been build successfully. On the other hand when the user presses `Ctrl + C`, for example, we need to enforce the termination. This cahnge provides this context. --------- Co-authored-by: Merlin Beutlberger Co-authored-by: Günter Klatt <57760635+KlattG@users.noreply.github.com> --- packages/project/lib/build/ProjectBuilder.js | 7 ++++--- packages/project/lib/build/helpers/BuildContext.js | 4 ++-- .../lib/build/helpers/ProjectBuildContext.js | 4 ++-- packages/project/lib/build/helpers/TaskUtil.js | 13 ++++++++++++- packages/project/test/lib/build/ProjectBuilder.js | 12 ++++++++++-- .../project/test/lib/build/helpers/BuildContext.js | 11 +++++++++++ 6 files changed, 41 insertions(+), 10 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index ad44573ac7b..010a9cbbb70 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -388,9 +388,10 @@ class ProjectBuilder { })); } - async _executeCleanupTasks() { + async _executeCleanupTasks(force) { this.#log.info("Executing cleanup tasks..."); - await this._buildContext.executeCleanupTasks(); + + await this._buildContext.executeCleanupTasks(force); } _registerCleanupSigHooks() { @@ -398,7 +399,7 @@ class ProjectBuilder { function createListener(exitCode) { return function() { // Asynchronously cleanup resources, then exit - that._executeCleanupTasks().then(() => { + that._executeCleanupTasks(true).then(() => { process.exit(exitCode); }); }; diff --git a/packages/project/lib/build/helpers/BuildContext.js b/packages/project/lib/build/helpers/BuildContext.js index 48286c5623b..f10aa072d80 100644 --- a/packages/project/lib/build/helpers/BuildContext.js +++ b/packages/project/lib/build/helpers/BuildContext.js @@ -80,9 +80,9 @@ class BuildContext { return projectBuildContext; } - async executeCleanupTasks() { + async executeCleanupTasks(force = false) { await Promise.all(this._projectBuildContexts.map((ctx) => { - return ctx.executeCleanupTasks(); + return ctx.executeCleanupTasks(force); })); } } diff --git a/packages/project/lib/build/helpers/ProjectBuildContext.js b/packages/project/lib/build/helpers/ProjectBuildContext.js index 69db9dac9f3..10eb2a67a83 100644 --- a/packages/project/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/lib/build/helpers/ProjectBuildContext.js @@ -47,9 +47,9 @@ class ProjectBuildContext { this._queues.cleanup.push(callback); } - async executeCleanupTasks() { + async executeCleanupTasks(force) { await Promise.all(this._queues.cleanup.map((callback) => { - return callback(); + return callback(force); })); } diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index d73864294e2..5bd20493113 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -163,6 +163,16 @@ class TaskUtil { return this._projectBuildContext.getOption(key); } + /** + * Callback that is executed once the build has finished + * + * @public + * @callback @ui5/project/build/helpers/TaskUtil~cleanupTaskCallback + * @param {boolean} force Whether the cleanup callback should + * gracefully wait for certain jobs to be completed (false) + * or enforce immediate termination (true) + */ + /** * Register a function that must be executed once the build is finished. This can be used to, for example, * clean up files temporarily created on the file system. If the callback returns a Promise, it will be waited for. @@ -172,7 +182,8 @@ class TaskUtil { * This method is only available to custom task extensions defining * Specification Version 2.2 and above. * - * @param {Function} callback Callback to register. If it returns a Promise, it will be waited for + * @param {@ui5/project/build/helpers/TaskUtil~cleanupTaskCallback} callback Callback to + * register; it will be waited for if it returns a Promise * @public */ registerCleanupTask(callback) { diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 4792c2450f1..7c4177d8e03 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -727,8 +727,16 @@ test("_executeCleanupTasks", async (t) => { const executeCleanupTasksStub = sinon.stub(builder._buildContext, "executeCleanupTasks"); await builder._executeCleanupTasks(); t.is(executeCleanupTasksStub.callCount, 1, "BuildContext#executeCleanupTasks got called once"); - t.deepEqual(executeCleanupTasksStub.getCall(0).args, [], - "BuildContext#executeCleanupTasks got called with no arguments"); + t.deepEqual(executeCleanupTasksStub.getCall(0).args, [undefined], + "BuildContext#executeCleanupTasks got called with correct arguments"); + + // reset stub + executeCleanupTasksStub.reset(); + // Call with enforcement flag + await builder._executeCleanupTasks(true); + t.is(executeCleanupTasksStub.callCount, 1, "BuildContext#executeCleanupTasks got called once"); + t.deepEqual(executeCleanupTasksStub.getCall(0).args, [true], + "BuildContext#executeCleanupTasks got called with correct arguments"); }); test("instantiate new logger for every ProjectBuilder", async (t) => { diff --git a/packages/project/test/lib/build/helpers/BuildContext.js b/packages/project/test/lib/build/helpers/BuildContext.js index 1a072668a41..34b9d2f4706 100644 --- a/packages/project/test/lib/build/helpers/BuildContext.js +++ b/packages/project/test/lib/build/helpers/BuildContext.js @@ -203,4 +203,15 @@ test("executeCleanupTasks", async (t) => { t.is(executeCleanupTasks.callCount, 2, "Project context executeCleanupTasks got called twice"); + t.is(executeCleanupTasks.getCall(0).firstArg, false, + "Project context executeCleanupTasks got called with expected arguments"); + + + executeCleanupTasks.reset(); + await buildContext.executeCleanupTasks(true); + + t.is(executeCleanupTasks.callCount, 2, + "Project context executeCleanupTasks got called twice"); + t.is(executeCleanupTasks.getCall(0).firstArg, true, + "Project context executeCleanupTasks got called with expected arguments"); }); From 4b01620ad5c91799ef740dadffee6b04ce25fb05 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 16 Nov 2023 22:30:01 +0100 Subject: [PATCH 1033/1272] [ui5-project][INTERNAL] GitHub: Include lib/** in file finder File finder still won't find files in lib/build/ dir, so GitHub support suggested adding these lines for further investigation. Follow up to https://github.com/SAP/ui5-project/pull/679 GitHub Support Ticket: #2427846 --- packages/project/.gitattributes | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/project/.gitattributes b/packages/project/.gitattributes index 0974d19c920..0f5b4cd51f9 100644 --- a/packages/project/.gitattributes +++ b/packages/project/.gitattributes @@ -1,2 +1,4 @@ * text=auto eol=lf -lib/build/** linguist-generated=false \ No newline at end of file +lib/build/** linguist-generated=false +lib/** linguist-vendored=false +lib/** linguist-generated=false \ No newline at end of file From 2fc6dc343b40aa9f2eac379f01a7d3041faf756c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 19 Nov 2023 03:20:31 +0000 Subject: [PATCH 1034/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 91 +++++++++++++++++------------- packages/project/package.json | 4 +- 2 files changed, 55 insertions(+), 40 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7c7fe158f9f..ca4e8217b5d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.7.3", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.0.1", + "@npmcli/config": "^8.0.2", "@ui5/builder": "^3.1.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -40,7 +40,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.53.0", + "eslint": "^8.54.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.9.0", @@ -612,9 +612,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.53.0.tgz", - "integrity": "sha512-Kn7K8dx/5U6+cT1yEhpX1w4PCSg0M+XyRILPgvwcEBjerFWCwQj5sbr3/VmxqV0JGHCBCzyd6LxypEuehypY1w==", + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz", + "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -828,9 +828,9 @@ } }, "node_modules/@jsdoc/salty": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.5.tgz", - "integrity": "sha512-TfRP53RqunNe2HBobVBJ0VLhK1HbfvBYeTC1ahnN64PWvyYyGebmMiPkuwvD9fpw2ZbkoPb8Q7mwy0aR8Z9rvw==", + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.6.tgz", + "integrity": "sha512-aA+awb5yoml8TQ3CzI5Ue7sM3VMRC4l1zJJW4fgZ8OCL1wshJZhNzaf0PL85DSnOUw6QuFgeHGD/eq/xwwAF2g==", "dependencies": { "lodash": "^4.17.21" }, @@ -897,12 +897,12 @@ } }, "node_modules/@npmcli/config": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.0.1.tgz", - "integrity": "sha512-NKGmMYv/YTLwJr+qK9CvADSe82NTM9AFwFFpsZpVcPCT3XTdxvJBdXi8xvXWjHSCMb0Cb+7FtU/a5qqguCOhxA==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.0.2.tgz", + "integrity": "sha512-g+DAp7bUsiUDynRI4jTO0wPAXJpy3puhovHHg8S4iq54NF8zd00588GJOm5ARxDaDUdKCUYu9E5fNc+esYl5JA==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", - "ci-info": "^3.8.0", + "ci-info": "^4.0.0", "ini": "^4.1.0", "nopt": "^7.0.0", "proc-log": "^3.0.0", @@ -1664,6 +1664,21 @@ } } }, + "node_modules/ava/node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, "node_modules/babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", @@ -2052,9 +2067,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001561", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001561.tgz", - "integrity": "sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==", + "version": "1.0.30001563", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001563.tgz", + "integrity": "sha512-na2WUmOxnwIZtwnFI2CZ/3er0wdNzU7hN+cPYz/z2ajHThnkWjNBOpEPP4n+4r2WPM847JaMotaJE3bnfzjyKw==", "dev": true, "funding": [ { @@ -2368,9 +2383,9 @@ "dev": true }, "node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.0.0.tgz", + "integrity": "sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==", "funding": [ { "type": "github", @@ -3264,9 +3279,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.581", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.581.tgz", - "integrity": "sha512-6uhqWBIapTJUxgPTCHH9sqdbxIMPt7oXl0VcAL1kOtlU6aECdcMncCrX5Z7sHQ/invtrC9jUQUef7+HhO8vVFw==", + "version": "1.4.588", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.588.tgz", + "integrity": "sha512-soytjxwbgcCu7nh5Pf4S2/4wa6UIu+A3p03U2yVr53qGxi1/VTR3ENI+p50v+UxqqZAfl48j3z55ud7VHIOr9w==", "dev": true }, "node_modules/emittery": { @@ -3386,15 +3401,15 @@ } }, "node_modules/eslint": { - "version": "8.53.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.53.0.tgz", - "integrity": "sha512-N4VuiPjXDUa4xVeV/GC/RV3hQW9Nw+Y463lkWaKKXKYMvmRiRDAtfpuPFLN+E1/6ZhyR8J2ig+eVREnYgUsiag==", + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.54.0.tgz", + "integrity": "sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.3", - "@eslint/js": "8.53.0", + "@eslint/js": "8.54.0", "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -4129,9 +4144,9 @@ } }, "node_modules/flat-cache": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", - "integrity": "sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, "dependencies": { "flatted": "^3.2.9", @@ -4139,7 +4154,7 @@ "rimraf": "^3.0.2" }, "engines": { - "node": ">=12.0.0" + "node": "^10.12.0 || >=12.0.0" } }, "node_modules/flat-cache/node_modules/brace-expansion": { @@ -4621,9 +4636,9 @@ ] }, "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", + "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", "engines": { "node": ">= 4" } @@ -7845,9 +7860,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.7.1.tgz", - "integrity": "sha512-iWr8RUmzAJRfhZugX9O7nZE6pCxDU8CZ3QxsLuTnGcBLJpCaP2ll3s4eMTBoFnU/CeXY/5rfQSuAEsTGJO4y8A==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.1.tgz", + "integrity": "sha512-ShaaYnjf+0etG8W/FumARKMjjIToy/haCaTjN2dvcewOSoNqCQzdgG7m2JVOlM5qndGTHjkvsrWZs+k/2Z7E0Q==", "engines": { "node": ">=16" }, @@ -7948,9 +7963,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.7.1.tgz", - "integrity": "sha512-iWr8RUmzAJRfhZugX9O7nZE6pCxDU8CZ3QxsLuTnGcBLJpCaP2ll3s4eMTBoFnU/CeXY/5rfQSuAEsTGJO4y8A==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.1.tgz", + "integrity": "sha512-ShaaYnjf+0etG8W/FumARKMjjIToy/haCaTjN2dvcewOSoNqCQzdgG7m2JVOlM5qndGTHjkvsrWZs+k/2Z7E0Q==", "engines": { "node": ">=16" }, diff --git a/packages/project/package.json b/packages/project/package.json index a09aac2f3bc..900baaf7711 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.0.1", + "@npmcli/config": "^8.0.2", "@ui5/builder": "^3.1.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -151,7 +151,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.53.0", + "eslint": "^8.54.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.9.0", From 7051d621f0be43a227ed56c6a5f226f2b8149199 Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Mon, 20 Nov 2023 07:48:49 +0000 Subject: [PATCH 1035/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.1.0 to 3.1.1 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.1.1/CHANGELOG.md --- packages/project/package-lock.json | 12 ++++++------ packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ca4e8217b5d..924d0ad337f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.0.2", - "@ui5/builder": "^3.1.0", + "@ui5/builder": "^3.1.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1263,9 +1263,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.1.0.tgz", - "integrity": "sha512-v3oyBcNaUp34UiBchjSAnJMiZMPaTot8PcZKWEghWOozw0hyASin18dtzp/BBmb0zc9HsH320rtUO4HoS2YrGQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.1.1.tgz", + "integrity": "sha512-FVALny9FKWzkDkoGZk9PO0XhL1jTS5FVX/5AhM6zvfBsCu0QPMCQrxkkvmWvv5ryJpjF0PCNBMhxejUBoPF+Yg==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.5", @@ -1280,8 +1280,8 @@ "pretty-data": "^0.40.0", "rimraf": "^5.0.5", "semver": "^7.5.4", - "terser": "^5.21.0", - "workerpool": "^6.5.0", + "terser": "^5.24.0", + "workerpool": "^6.5.1", "xml2js": "^0.6.2" }, "engines": { diff --git a/packages/project/package.json b/packages/project/package.json index 900baaf7711..36042f4e37e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ }, "dependencies": { "@npmcli/config": "^8.0.2", - "@ui5/builder": "^3.1.0", + "@ui5/builder": "^3.1.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From fb263ac4c3ccc04547107d1a83ee8dd2471a52a5 Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Mon, 20 Nov 2023 08:01:14 +0000 Subject: [PATCH 1036/1272] [ui5-project]Release 3.8.0 --- packages/project/CHANGELOG.md | 12 +++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 039afbf0585..3dba9f35b59 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.7.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.8.0...HEAD). + + +## [v3.8.0] - 2023-11-20 +### Bug Fixes +- **application:** Improve error message for missing manifest.json [`016a846`](https://github.com/SAP/ui5-project/commit/016a84692aa1645f2e4267673d99495457c28458) + +### Features +- **TaskUtil:** Add 'force' flag to cleanup task callback ([#677](https://github.com/SAP/ui5-project/issues/677)) [`a0a21b7`](https://github.com/SAP/ui5-project/commit/a0a21b7ecd2805ff3d8d78ba9a453df64012556a) + ## [v3.7.3] - 2023-10-20 @@ -477,6 +486,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.8.0]: https://github.com/SAP/ui5-project/compare/v3.7.3...v3.8.0 [v3.7.3]: https://github.com/SAP/ui5-project/compare/v3.7.2...v3.7.3 [v3.7.2]: https://github.com/SAP/ui5-project/compare/v3.7.1...v3.7.2 [v3.7.1]: https://github.com/SAP/ui5-project/compare/v3.7.0...v3.7.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 924d0ad337f..c4b54a9c15f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.7.3", + "version": "3.8.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.7.3", + "version": "3.8.0", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index 36042f4e37e..6df076bbe61 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.7.3", + "version": "3.8.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From f1db6d849b1641e1164a673384d59a1b68f076a9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 20 Nov 2023 14:11:54 +0100 Subject: [PATCH 1037/1272] [ui5-project][INTERNAL] package.json: Move postversion git push to prepublishOnly --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index 6df076bbe61..1d29cda1b32 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -52,7 +52,7 @@ "jsdoc-watch": "npm run jsdoc && chokidar \"./lib/**/*.js\" -c \"npm run jsdoc-generate\"", "preversion": "npm test", "version": "git-chglog --sort semver --next-tag v$npm_package_version -o CHANGELOG.md v3.0.0.. && git add CHANGELOG.md", - "postversion": "git push --follow-tags", + "prepublishOnly": "git push --follow-tags", "release-note": "git-chglog --sort semver -c .chglog/release-config.yml v$npm_package_version", "depcheck": "depcheck --ignores @ui5/project,docdash,@istanbuljs/esm-loader-hook" }, From c735c6ffa7fcd69051a0df618083f3f206608c4f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 26 Nov 2023 03:20:35 +0000 Subject: [PATCH 1038/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 225 +++++++++++++---------------- 1 file changed, 102 insertions(+), 123 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c4b54a9c15f..e273b20149a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -89,11 +89,11 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", - "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.4.tgz", + "integrity": "sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==", "dependencies": { - "@babel/highlight": "^7.22.13", + "@babel/highlight": "^7.23.4", "chalk": "^2.4.2" }, "engines": { @@ -200,12 +200,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.3.tgz", - "integrity": "sha512-keeZWAV4LU3tW0qRi19HRpabC/ilM0HRBBzf9/k8FFiG4KVpiv0FIy4hHfLfFQZNhziCTPTmd59zoyv6DNISzg==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.4.tgz", + "integrity": "sha512-esuS49Cga3HcThFNebGhlgsrVLkvhqvYDTzgjfFFlHJcIfLe5jFmRRfCQ1KuBfc4Jrtn3ndLgKWAKjBE+IraYQ==", "dev": true, "dependencies": { - "@babel/types": "^7.23.3", + "@babel/types": "^7.23.4", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -338,9 +338,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", + "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -364,23 +364,23 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", - "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.4.tgz", + "integrity": "sha512-HfcMizYz10cr3h29VqyfGL6ZWIjTwWfvYBMsBVGwpcbhNGe3wQ1ZXZRPzZoAHhd9OqHadHqjQ89iVKINXnbzuw==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.2", - "@babel/types": "^7.23.0" + "@babel/traverse": "^7.23.4", + "@babel/types": "^7.23.4" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", - "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", + "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", "dependencies": { "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", @@ -442,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.3.tgz", - "integrity": "sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.4.tgz", + "integrity": "sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ==", "bin": { "parser": "bin/babel-parser.js" }, @@ -467,19 +467,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.3.tgz", - "integrity": "sha512-+K0yF1/9yR0oHdE0StHuEj3uTPzwwbrLGfNOndVJVV2TqA5+j3oljJUb4nmB954FLGjNem976+B+eDuLIjesiQ==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.4.tgz", + "integrity": "sha512-IYM8wSUwunWTB6tFC2dkKZhxbIjHoWemdK+3f8/wq8aKhbUscxD5MX72ubd90fxvFknaLPeGw5ycU84V1obHJg==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.3", + "@babel/code-frame": "^7.23.4", + "@babel/generator": "^7.23.4", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.3", - "@babel/types": "^7.23.3", + "@babel/parser": "^7.23.4", + "@babel/types": "^7.23.4", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -488,12 +488,12 @@ } }, "node_modules/@babel/types": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.3.tgz", - "integrity": "sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.4.tgz", + "integrity": "sha512-7uIFwVYpoplT5jp/kVv6EF93VaJ8H+Yn5IczYiaAi98ajzjfoZfslet/e0sLh+wVBjb2qqIut1b0S26VSafsSQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-string-parser": "^7.23.4", "@babel/helper-validator-identifier": "^7.22.20", "to-fast-properties": "^2.0.0" }, @@ -886,12 +886,9 @@ } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", - "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", - "dependencies": { - "semver": "^7.3.5" - }, + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", "engines": { "node": "14 || >=16.14" } @@ -952,12 +949,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", - "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", - "dependencies": { - "semver": "^7.3.5" - }, + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", "engines": { "node": "14 || >=16.14" } @@ -1330,39 +1324,39 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.8.tgz", - "integrity": "sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==", + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.9.tgz", + "integrity": "sha512-+/Lf68Vr/nFBA6ol4xOtJrW+BQWv3QWKfRwGSm70jtXwfhZNF4R/eRgyVJYoxFRhdCTk/F6g99BP0ffPgZihfQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.0", - "@vue/shared": "3.3.8", + "@babel/parser": "^7.23.3", + "@vue/shared": "3.3.9", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.8.tgz", - "integrity": "sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==", + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.9.tgz", + "integrity": "sha512-nfWubTtLXuT4iBeDSZ5J3m218MjOy42Vp2pmKVuBKo2/BLcrFUX8nCSr/bKRFiJ32R8qbdnnnBgRn9AdU5v0Sg==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.8", - "@vue/shared": "3.3.8" + "@vue/compiler-core": "3.3.9", + "@vue/shared": "3.3.9" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.8.tgz", - "integrity": "sha512-WMzbUrlTjfYF8joyT84HfwwXo+8WPALuPxhy+BZ6R4Aafls+jDBnSz8PDz60uFhuqFbl3HxRfxvDzrUf3THwpA==", + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.9.tgz", + "integrity": "sha512-wy0CNc8z4ihoDzjASCOCsQuzW0A/HP27+0MDSSICMjVIFzk/rFViezkR3dzH+miS2NDEz8ywMdbjO5ylhOLI2A==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.8", - "@vue/compiler-dom": "3.3.8", - "@vue/compiler-ssr": "3.3.8", - "@vue/reactivity-transform": "3.3.8", - "@vue/shared": "3.3.8", + "@babel/parser": "^7.23.3", + "@vue/compiler-core": "3.3.9", + "@vue/compiler-dom": "3.3.9", + "@vue/compiler-ssr": "3.3.9", + "@vue/reactivity-transform": "3.3.9", + "@vue/shared": "3.3.9", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.31", @@ -1370,32 +1364,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.8.tgz", - "integrity": "sha512-hXCqQL/15kMVDBuoBYpUnSYT8doDNwsjvm3jTefnXr+ytn294ySnT8NlsFHmTgKNjwpuFy7XVV8yTeLtNl/P6w==", + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.9.tgz", + "integrity": "sha512-NO5oobAw78R0G4SODY5A502MGnDNiDjf6qvhn7zD7TJGc8XDeIEw4fg6JU705jZ/YhuokBKz0A5a/FL/XZU73g==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.8", - "@vue/shared": "3.3.8" + "@vue/compiler-dom": "3.3.9", + "@vue/shared": "3.3.9" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.8.tgz", - "integrity": "sha512-49CvBzmZNtcHua0XJ7GdGifM8GOXoUMOX4dD40Y5DxI3R8OUhMlvf2nvgUAcPxaXiV5MQQ1Nwy09ADpnLQUqRw==", + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.9.tgz", + "integrity": "sha512-HnUFm7Ry6dFa4Lp63DAxTixUp8opMtQr6RxQCpDI1vlh12rkGIeYqMvJtK+IKyEfEOa2I9oCkD1mmsPdaGpdVg==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.8", - "@vue/shared": "3.3.8", + "@babel/parser": "^7.23.3", + "@vue/compiler-core": "3.3.9", + "@vue/shared": "3.3.9", "estree-walker": "^2.0.2", "magic-string": "^0.30.5" } }, "node_modules/@vue/shared": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.8.tgz", - "integrity": "sha512-8PGwybFwM4x8pcfgqEQFy70NaQxASvOC5DJwLQfpArw1UDfUXrJkdxD3BhVTMS+0Lef/TU7YO0Jvr0jJY8T+mw==", + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.9.tgz", + "integrity": "sha512-ZE0VTIR0LmYgeyhurPTpy4KzKsuDyQbMSdM49eKkMnT5X4VfFBLysMzjIZhLEFQYjjOVVfbvUDHckwjDFiO2eA==", "dev": true }, "node_modules/abbrev": { @@ -1726,9 +1720,9 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "node_modules/big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "version": "1.6.52", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", + "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", "dev": true, "engines": { "node": ">=0.6" @@ -1913,12 +1907,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", - "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", - "dependencies": { - "semver": "^7.3.5" - }, + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", "engines": { "node": "14 || >=16.14" } @@ -2067,9 +2058,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001563", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001563.tgz", - "integrity": "sha512-na2WUmOxnwIZtwnFI2CZ/3er0wdNzU7hN+cPYz/z2ajHThnkWjNBOpEPP4n+4r2WPM847JaMotaJE3bnfzjyKw==", + "version": "1.0.30001564", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001564.tgz", + "integrity": "sha512-DqAOf+rhof+6GVx1y+xzbFPeOumfQnhYzVnZD6LAXijR77yPtm9mfOcqOnT3mpnJiZVT+kwLAFnRlZcIz+c6bg==", "dev": true, "funding": [ { @@ -3279,9 +3270,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.588", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.588.tgz", - "integrity": "sha512-soytjxwbgcCu7nh5Pf4S2/4wa6UIu+A3p03U2yVr53qGxi1/VTR3ENI+p50v+UxqqZAfl48j3z55ud7VHIOr9w==", + "version": "1.4.594", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.594.tgz", + "integrity": "sha512-xT1HVAu5xFn7bDfkjGQi9dNpMqGchUkebwf1GL7cZN32NSwwlHRPMSDJ1KN6HkS0bWUtndbSQZqvpQftKG2uFQ==", "dev": true }, "node_modules/emittery": { @@ -6505,12 +6496,9 @@ } }, "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", - "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", - "dependencies": { - "semver": "^7.3.5" - }, + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", "engines": { "node": "14 || >=16.14" } @@ -7264,12 +7252,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", - "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", - "dependencies": { - "semver": "^7.3.5" - }, + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", "engines": { "node": "14 || >=16.14" } @@ -7737,12 +7722,9 @@ } }, "node_modules/read-package-json/node_modules/lru-cache": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", - "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", - "dependencies": { - "semver": "^7.3.5" - }, + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", "engines": { "node": "14 || >=16.14" } @@ -7860,9 +7842,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.1.tgz", - "integrity": "sha512-ShaaYnjf+0etG8W/FumARKMjjIToy/haCaTjN2dvcewOSoNqCQzdgG7m2JVOlM5qndGTHjkvsrWZs+k/2Z7E0Q==", + "version": "4.8.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.2.tgz", + "integrity": "sha512-mcvrCjixA5166hSrUoJgGb9gBQN4loMYyj9zxuMs/66ibHNEFd5JXMw37YVDx58L4/QID9jIzdTBB4mDwDJ6KQ==", "engines": { "node": ">=16" }, @@ -7909,12 +7891,9 @@ } }, "node_modules/read-pkg/node_modules/lru-cache": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.2.tgz", - "integrity": "sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==", - "dependencies": { - "semver": "^7.3.5" - }, + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", "engines": { "node": "14 || >=16.14" } @@ -7963,9 +7942,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.1.tgz", - "integrity": "sha512-ShaaYnjf+0etG8W/FumARKMjjIToy/haCaTjN2dvcewOSoNqCQzdgG7m2JVOlM5qndGTHjkvsrWZs+k/2Z7E0Q==", + "version": "4.8.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.2.tgz", + "integrity": "sha512-mcvrCjixA5166hSrUoJgGb9gBQN4loMYyj9zxuMs/66ibHNEFd5JXMw37YVDx58L4/QID9jIzdTBB4mDwDJ6KQ==", "engines": { "node": ">=16" }, From 0efcc46365fdb2aa02e23a5e57cfcf1e077e1182 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 29 Nov 2023 12:35:02 +0100 Subject: [PATCH 1039/1272] [ui5-project][INTERNAL] GitHub: Include build/** in file finder GitHub Support suggests to add this line since thir default configuration uses the pattern "build/**" too. Follow up to #680 GitHub Support Ticket: #2427846 --- packages/project/.gitattributes | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/project/.gitattributes b/packages/project/.gitattributes index 0f5b4cd51f9..6fe78884f2b 100644 --- a/packages/project/.gitattributes +++ b/packages/project/.gitattributes @@ -1,4 +1,5 @@ * text=auto eol=lf +build/** -linguist-generated=false lib/build/** linguist-generated=false lib/** linguist-vendored=false lib/** linguist-generated=false \ No newline at end of file From 8e920087326f54a83c56c055bccee125b7ba91bf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 1 Dec 2023 08:13:30 +0000 Subject: [PATCH 1040/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 162 +++++++++++++---------------- 1 file changed, 73 insertions(+), 89 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e273b20149a..f2280bca035 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -71,9 +71,9 @@ } }, "node_modules/@adobe/css-tools": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.1.tgz", - "integrity": "sha512-/62yikz7NLScCGAAST5SHdnjaDJQBDq0M2muyRTpf2VQhw6StBg2ALiu73zSJQ4fMVLA+0uBhBHAle7Wg+2kSg==" + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.2.tgz", + "integrity": "sha512-DA5a1C0gD/pLOvhv33YMrbf2FK3oUzwNl9oOJqE4XVjuEtt6XIakRcsd7eLiOSPkp1kTRQGICTA8cKra/vFbjw==" }, "node_modules/@ampproject/remapping": { "version": "2.2.1", @@ -89,9 +89,9 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.4.tgz", - "integrity": "sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", + "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", "dependencies": { "@babel/highlight": "^7.23.4", "chalk": "^2.4.2" @@ -152,30 +152,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.3.tgz", - "integrity": "sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", + "integrity": "sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.3.tgz", - "integrity": "sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.5.tgz", + "integrity": "sha512-Cwc2XjUrG4ilcfOw4wBAK+enbdgwAcAJCfGUItPBKR7Mjw4aEfAFYrLxeRp4jWgtNIKn3n2AlBOfwwafl+42/g==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.3", + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.5", "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.2", - "@babel/parser": "^7.23.3", + "@babel/helpers": "^7.23.5", + "@babel/parser": "^7.23.5", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.3", - "@babel/types": "^7.23.3", + "@babel/traverse": "^7.23.5", + "@babel/types": "^7.23.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -200,12 +200,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.4.tgz", - "integrity": "sha512-esuS49Cga3HcThFNebGhlgsrVLkvhqvYDTzgjfFFlHJcIfLe5jFmRRfCQ1KuBfc4Jrtn3ndLgKWAKjBE+IraYQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.5.tgz", + "integrity": "sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA==", "dev": true, "dependencies": { - "@babel/types": "^7.23.4", + "@babel/types": "^7.23.5", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -355,23 +355,23 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", - "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.4.tgz", - "integrity": "sha512-HfcMizYz10cr3h29VqyfGL6ZWIjTwWfvYBMsBVGwpcbhNGe3wQ1ZXZRPzZoAHhd9OqHadHqjQ89iVKINXnbzuw==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.5.tgz", + "integrity": "sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.4", - "@babel/types": "^7.23.4" + "@babel/traverse": "^7.23.5", + "@babel/types": "^7.23.5" }, "engines": { "node": ">=6.9.0" @@ -442,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.4.tgz", - "integrity": "sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.5.tgz", + "integrity": "sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==", "bin": { "parser": "bin/babel-parser.js" }, @@ -467,19 +467,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.4.tgz", - "integrity": "sha512-IYM8wSUwunWTB6tFC2dkKZhxbIjHoWemdK+3f8/wq8aKhbUscxD5MX72ubd90fxvFknaLPeGw5ycU84V1obHJg==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.5.tgz", + "integrity": "sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.23.4", - "@babel/generator": "^7.23.4", + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.5", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.4", - "@babel/types": "^7.23.4", + "@babel/parser": "^7.23.5", + "@babel/types": "^7.23.5", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -488,9 +488,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.4.tgz", - "integrity": "sha512-7uIFwVYpoplT5jp/kVv6EF93VaJ8H+Yn5IczYiaAi98ajzjfoZfslet/e0sLh+wVBjb2qqIut1b0S26VSafsSQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.5.tgz", + "integrity": "sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.23.4", @@ -1857,16 +1857,16 @@ } }, "node_modules/cacache": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", - "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", + "version": "18.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.1.tgz", + "integrity": "sha512-g4Uf2CFZPaxtJKre6qr4zqLDOOPU7bNVhWjlNhvzc51xaTOx2noMOLhfFkTAqwtrAZAKQUuDfyjitzilpA8WsQ==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", "glob": "^10.2.2", "lru-cache": "^10.0.1", "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", + "minipass-collect": "^2.0.1", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "p-map": "^4.0.0", @@ -2058,9 +2058,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001564", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001564.tgz", - "integrity": "sha512-DqAOf+rhof+6GVx1y+xzbFPeOumfQnhYzVnZD6LAXijR77yPtm9mfOcqOnT3mpnJiZVT+kwLAFnRlZcIz+c6bg==", + "version": "1.0.30001565", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz", + "integrity": "sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==", "dev": true, "funding": [ { @@ -3270,9 +3270,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.594", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.594.tgz", - "integrity": "sha512-xT1HVAu5xFn7bDfkjGQi9dNpMqGchUkebwf1GL7cZN32NSwwlHRPMSDJ1KN6HkS0bWUtndbSQZqvpQftKG2uFQ==", + "version": "1.4.600", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.600.tgz", + "integrity": "sha512-KD6CWjf1BnQG+NsXuyiTDDT1eV13sKuYsOUioXkQweYTQIbgHkXPry9K7M+7cKtYHnSUPitVaLrXYB1jTkkYrw==", "dev": true }, "node_modules/emittery": { @@ -4644,9 +4644,9 @@ } }, "node_modules/ignore-walk": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.3.tgz", - "integrity": "sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.4.tgz", + "integrity": "sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==", "dependencies": { "minimatch": "^9.0.0" }, @@ -6021,32 +6021,16 @@ } }, "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-collect/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", "dependencies": { - "yallist": "^4.0.0" + "minipass": "^7.0.3" }, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/minipass-collect/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/minipass-fetch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", @@ -6376,9 +6360,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, "node_modules/node-stream-zip": { @@ -7695,9 +7679,9 @@ } }, "node_modules/read-package-json-fast/node_modules/json-parse-even-better-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", - "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -7714,9 +7698,9 @@ } }, "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", - "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -7875,9 +7859,9 @@ } }, "node_modules/read-pkg/node_modules/json-parse-even-better-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", - "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } From ab84542d4f4e528dcb29a107987213438da458ee Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Fri, 1 Dec 2023 12:39:07 +0200 Subject: [PATCH 1041/1272] [ui5-project][FEATURE] specVersion 3.2: depCache bundling mode (#673) This change provide a `ui5.yaml` schema definition for the following feature: https://github.com/SAP/ui5-builder/pull/951 JIRA: CPOUI5FOUNDATION-744 --- .../specifications/SpecificationVersion.js | 2 +- .../schema/specVersion/kind/extension.json | 2 +- .../kind/extension/project-shim.json | 4 +- .../kind/extension/server-middleware.json | 4 +- .../specVersion/kind/extension/task.json | 4 +- .../schema/specVersion/kind/project.json | 76 +- .../specVersion/kind/project/application.json | 157 +- .../specVersion/kind/project/library.json | 152 +- .../specVersion/kind/project/module.json | 4 +- .../kind/project/theme-library.json | 4 +- .../schema/specVersion/specVersion.json | 2 +- .../project/lib/validation/schema/ui5.json | 6 +- .../specifications/SpecificationVersion.js | 4 +- .../specVersion/kind/project/application.js | 651 +++++--- .../specVersion/kind/project/library.js | 1366 +++++++++++------ .../project/test/lib/validation/schema/ui5.js | 10 +- 16 files changed, 1613 insertions(+), 835 deletions(-) diff --git a/packages/project/lib/specifications/SpecificationVersion.js b/packages/project/lib/specifications/SpecificationVersion.js index 2634fe94469..b8839d3bf14 100644 --- a/packages/project/lib/specifications/SpecificationVersion.js +++ b/packages/project/lib/specifications/SpecificationVersion.js @@ -4,7 +4,7 @@ const SPEC_VERSION_PATTERN = /^\d+\.\d+$/; const SUPPORTED_VERSIONS = [ "0.1", "1.0", "1.1", "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", - "3.0", "3.1" + "3.0", "3.1", "3.2" ]; /** diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension.json b/packages/project/lib/validation/schema/specVersion/kind/extension.json index 633aaea6baa..39d65c800e9 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "kind", "type", "metadata"], "properties": { - "specVersion": { "enum": ["3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json index cb5a4dbfaf0..17784465731 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json @@ -6,14 +6,14 @@ "required": ["specVersion", "kind", "type", "metadata", "shims"], "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1"] } + "specVersion": { "enum": ["3.0", "3.1", "3.2"] } } }, "then": { "additionalProperties": false, "properties": { "specVersion": { - "enum": ["3.0", "3.1"] + "enum": ["3.0", "3.1", "3.2"] }, "kind": { "enum": ["extension"] diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json index 1b46323be4b..980793eabcc 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json @@ -7,13 +7,13 @@ "required": ["specVersion", "kind", "type", "metadata", "middleware"], "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1"] } + "specVersion": { "enum": ["3.0", "3.1", "3.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0", "3.1"] }, + "specVersion": { "enum": ["3.0", "3.1", "3.2"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/kind/extension/task.json index 7e02c82eb8a..d77439db989 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/task.json @@ -6,13 +6,13 @@ "required": ["specVersion", "kind", "type", "metadata", "task"], "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1"] } + "specVersion": { "enum": ["3.0", "3.1", "3.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0", "3.1"] }, + "specVersion": { "enum": ["3.0", "3.1", "3.2"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/project.json b/packages/project/lib/validation/schema/specVersion/kind/project.json index 65191e05f34..48ae92186f0 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "type"], "properties": { - "specVersion": { "enum": ["3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" @@ -191,6 +191,22 @@ } } }, + "builder-bundles-3.2": { + "type": "array", + "additionalProperties": false, + "items": { + "type": "object", + "additionalProperties": false, + "properties": { + "bundleDefinition": { + "$ref": "#/definitions/builder-bundles-bundleDefinition-3.2" + }, + "bundleOptions": { + "$ref": "#/definitions/builder-bundles-bundleOptions-3.0" + } + } + } + }, "builder-bundles-bundleDefinition": { "type": "object", "additionalProperties": false, @@ -307,6 +323,64 @@ } } }, + "builder-bundles-bundleDefinition-3.2": { + "type": "object", + "additionalProperties": false, + "required": ["name"], + "properties": { + "name": { + "type": "string" + }, + "defaultFileTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "sections": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": false, + "required": ["mode", "filters"], + "properties": { + "name": { + "type": "string" + }, + "mode": { + "enum": ["raw", "preload", "require", "provided", "bundleInfo", "depCache"] + }, + "filters": { + "type": "array", + "items": { + "type": "string" + } + }, + "resolve": { + "type": "boolean", + "default": false + }, + "resolveConditional": { + "type": "boolean", + "default": false + }, + "renderer": { + "type": "boolean", + "default": false + }, + "sort": { + "type": "boolean", + "default": true + }, + "declareRawModules": { + "type": "boolean", + "default": false + } + } + } + } + } + }, "builder-bundles-bundleOptions": { "type": "object", "additionalProperties": false, diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/kind/project/application.json index 1091be04ee9..416d8479caf 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/application.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1"] } + "specVersion": { "enum": ["3.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0", "3.1"] }, + "specVersion": { "enum": ["3.2"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-3.0" + "$ref": "#/definitions/builder-specVersion-3.2" }, "server": { "$ref": "../project.json#/definitions/server" @@ -39,18 +39,18 @@ "additionalProperties": true } } - }, + }, "else": { "if": { "properties": { - "specVersion": { "enum": ["2.6"] } + "specVersion": { "enum": ["3.0", "3.1"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.6"] }, + "specVersion": { "enum": ["3.0", "3.1"] }, "kind": { "enum": ["project", null] }, @@ -58,7 +58,7 @@ "enum": ["application"] }, "metadata": { - "$ref": "../project.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata-3.0" }, "framework": { "$ref": "../project.json#/definitions/framework" @@ -67,7 +67,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.6" + "$ref": "#/definitions/builder-specVersion-3.0" }, "server": { "$ref": "../project.json#/definitions/server" @@ -81,13 +81,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.5"] } + "specVersion": { "enum": ["2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5"] }, + "specVersion": { "enum": ["2.6"] }, "kind": { "enum": ["project", null] }, @@ -104,7 +104,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.5" + "$ref": "#/definitions/builder-specVersion-2.6" }, "server": { "$ref": "../project.json#/definitions/server" @@ -118,13 +118,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -141,7 +141,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.4" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -155,13 +155,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -178,7 +178,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -192,13 +192,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -215,7 +215,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -227,29 +227,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["application"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -462,6 +500,39 @@ "$ref": "../project.json#/definitions/builder-settings" } } + }, + "builder-specVersion-3.2": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "cachebuster": { + "type": "object", + "additionalProperties": false, + "properties": { + "signatureType": { + "enum": ["time", "hash"] + } + } + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-3.2" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "minification": { + "$ref": "../project.json#/definitions/builder-minification" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/kind/project/library.json index d5114b63324..84c71a0bdfb 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1"] } + "specVersion": { "enum": ["3.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0", "3.1"] }, + "specVersion": { "enum": ["3.2"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-3.0" + "$ref": "#/definitions/builder-specVersion-3.2" }, "server": { "$ref": "../project.json#/definitions/server" @@ -43,13 +43,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.6"] } + "specVersion": { "enum": ["3.0", "3.1"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.6"] }, + "specVersion": { "enum": ["3.0", "3.1"] }, "kind": { "enum": ["project", null] }, @@ -57,7 +57,7 @@ "enum": ["library"] }, "metadata": { - "$ref": "../project.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata-3.0" }, "framework": { "$ref": "../project.json#/definitions/framework" @@ -66,7 +66,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.6" + "$ref": "#/definitions/builder-specVersion-3.0" }, "server": { "$ref": "../project.json#/definitions/server" @@ -80,13 +80,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.5"] } + "specVersion": { "enum": ["2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5"] }, + "specVersion": { "enum": ["2.6"] }, "kind": { "enum": ["project", null] }, @@ -103,7 +103,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.5" + "$ref": "#/definitions/builder-specVersion-2.6" }, "server": { "$ref": "../project.json#/definitions/server" @@ -117,13 +117,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -140,7 +140,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.4" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -154,13 +154,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -177,7 +177,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -191,13 +191,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -214,7 +214,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -226,29 +226,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -452,6 +490,36 @@ "$ref": "../project.json#/definitions/builder-settings" } } + }, + "builder-specVersion-3.2": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "jsdoc": { + "$ref": "#/definitions/builder-jsdoc" + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-3.2" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "libraryPreload": { + "$ref": "../project.json#/definitions/builder-libraryPreload" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "minification": { + "$ref": "../project.json#/definitions/builder-minification" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/kind/project/module.json index e6fe250b808..d220cd9a6bc 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/module.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.1"] } + "specVersion": { "enum": ["3.1", "3.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.1"] }, + "specVersion": { "enum": ["3.1", "3.2"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json index 44f3f2aa5e6..c4cba17466b 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1"] } + "specVersion": { "enum": ["3.0", "3.1", "3.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0", "3.1"] }, + "specVersion": { "enum": ["3.0", "3.1", "3.2"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/specVersion.json b/packages/project/lib/validation/schema/specVersion/specVersion.json index 6debcbd3e22..73035e20a87 100644 --- a/packages/project/lib/validation/schema/specVersion/specVersion.json +++ b/packages/project/lib/validation/schema/specVersion/specVersion.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion"], "properties": { - "specVersion": { "enum": ["3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index 61795c909b1..a65e85b45f0 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -10,17 +10,17 @@ "properties": { "specVersion": { "enum": [ - "3.1", "3.0", + "3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"3.1\", \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"3.2\", \"3.1\", \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, "if": { "properties": { - "specVersion": { "enum": ["3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } + "specVersion": { "enum": ["3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } } }, "then": { diff --git a/packages/project/test/lib/specifications/SpecificationVersion.js b/packages/project/test/lib/specifications/SpecificationVersion.js index 64efc696f03..c2015d10d9b 100644 --- a/packages/project/test/lib/specifications/SpecificationVersion.js +++ b/packages/project/test/lib/specifications/SpecificationVersion.js @@ -238,14 +238,14 @@ test("(static) getVersionsForRange", (t) => { // range: >=2.2 t.deepEqual(SpecificationVersion.getVersionsForRange(">=2.2"), [ "2.2", "2.3", "2.4", "2.5", "2.6", - "3.0", "3.1", + "3.0", "3.1", "3.2", ]); // range: > 1.0 t.deepEqual(SpecificationVersion.getVersionsForRange("> 1.0"), [ "1.1", "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", - "3.0", "3.1", + "3.0", "3.1", "3.2", ]); // range: 2.2 - 2.4 diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index ca005d4159a..16497d4ce2f 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -291,223 +291,6 @@ SpecificationVersion.getVersionsForRange(">=2.0").forEach(function(specVersion) } ]); }); - - test(`Invalid builder configuration (specVersion ${specVersion})`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "type": "application", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - // jsdoc is not supported for type application - "jsdoc": { - "excludes": [ - "some/project/name/thirdparty/**" - ] - }, - "bundles": [ - { - "bundleDefinition": { - "name": "sap-ui-custom.js", - "defaultFileTypes": [ - ".js" - ], - "sections": [ - { - "name": true, - "mode": "raw", - "filters": [ - "ui5loader-autoconfig.js" - ], - "resolve": true, - "sort": true, - "declareModules": true - } - ] - }, - "bundleOptions": { - "optimize": true - } - }, - { - "bundleDefinition": { - "defaultFileTypes": [ - ".js", true - ], - "sections": [ - { - "filters": [ - "some/app/Component.js" - ], - "resolve": true, - "sort": true, - "declareRawModules": [] - }, - { - "mode": "provide", - "filters": "*", - "resolve": true - } - ] - }, - "bundleOptions": { - "optimize": "true", - "numberOfParts": "3", - "notAllowed": true - } - } - ], - "componentPreload": { - "path": "some/invalid/path", - "paths": "some/invalid/glob/**/pattern/Component.js", - "namespaces": "some/invalid/namespace", - }, - "libraryPreload": {} // Only supported for type library - } - }, [ - { - dataPath: "/builder", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "jsdoc" - } - }, - { - dataPath: "/builder", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "libraryPreload" - } - }, - { - dataPath: "/builder/bundles/0/bundleDefinition/sections/0", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "declareModules", - } - }, - { - dataPath: "/builder/bundles/0/bundleDefinition/sections/0/name", - keyword: "type", - message: "should be string", - params: { - type: "string", - } - }, - { - dataPath: "/builder/bundles/1/bundleDefinition", - keyword: "required", - message: "should have required property 'name'", - params: { - missingProperty: "name", - } - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", - keyword: "type", - message: "should be string", - params: { - type: "string", - } - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/0", - keyword: "required", - message: "should have required property 'mode'", - params: { - missingProperty: "mode", - } - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - } - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", - keyword: "enum", - message: "should be equal to one of the allowed values", - params: { - allowedValues: ["3.1", "3.0", "2.6", "2.5", "2.4"].includes(specVersion) ? [ - "raw", - "preload", - "require", - "provided", - "bundleInfo" - ] : [ - "raw", - "preload", - "require", - "provided" - ] - } - }, - { - dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", - keyword: "type", - message: "should be array", - params: { - type: "array", - } - }, - { - dataPath: "/builder/bundles/1/bundleOptions", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", - } - }, - { - dataPath: "/builder/bundles/1/bundleOptions/optimize", - keyword: "type", - message: "should be boolean", - params: { - type: "boolean", - } - }, - { - dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", - keyword: "type", - message: "should be number", - params: { - type: "number", - } - }, - { - dataPath: "/builder/componentPreload", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "path", - } - }, - { - dataPath: "/builder/componentPreload/paths", - keyword: "type", - message: "should be array", - params: { - type: "array", - } - }, - { - dataPath: "/builder/componentPreload/namespaces", - keyword: "type", - message: "should be array", - params: { - type: "array", - } - } - ]); - }); }); SpecificationVersion.getVersionsForRange("2.0 - 2.2").forEach(function(specVersion) { @@ -1011,4 +794,438 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }); }); +SpecificationVersion.getVersionsForRange("2.0 - 3.1").forEach(function(specVersion) { + test(`Invalid builder configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + // jsdoc is not supported for type application + "jsdoc": { + "excludes": [ + "some/project/name/thirdparty/**" + ] + }, + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "name": true, + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "sort": true, + "declareModules": true + } + ] + }, + "bundleOptions": { + "optimize": true + } + }, + { + "bundleDefinition": { + "defaultFileTypes": [ + ".js", true + ], + "sections": [ + { + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true, + "declareRawModules": [] + }, + { + "mode": "provide", + "filters": "*", + "resolve": true + } + ] + }, + "bundleOptions": { + "optimize": "true", + "numberOfParts": "3", + "notAllowed": true + } + } + ], + "componentPreload": { + "path": "some/invalid/path", + "paths": "some/invalid/glob/**/pattern/Component.js", + "namespaces": "some/invalid/namespace", + }, + "libraryPreload": {} // Only supported for type library + } + }, [ + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "jsdoc" + } + }, + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "libraryPreload" + } + }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "declareModules", + } + }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0/name", + keyword: "type", + message: "should be string", + params: { + type: "string", + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0", + keyword: "required", + message: "should have required property 'mode'", + params: { + missingProperty: "mode", + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: ["3.1", "3.0", "2.6", "2.5", "2.4"].includes(specVersion) ? [ + "raw", + "preload", + "require", + "provided", + "bundleInfo" + ] : [ + "raw", + "preload", + "require", + "provided" + ] + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", + keyword: "type", + message: "should be array", + params: { + type: "array", + } + }, + { + dataPath: "/builder/bundles/1/bundleOptions", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + } + }, + { + dataPath: "/builder/bundles/1/bundleOptions/optimize", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + } + }, + { + dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", + keyword: "type", + message: "should be number", + params: { + type: "number", + } + }, + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "path", + } + }, + { + dataPath: "/builder/componentPreload/paths", + keyword: "type", + message: "should be array", + params: { + type: "array", + } + }, + { + dataPath: "/builder/componentPreload/namespaces", + keyword: "type", + message: "should be array", + params: { + type: "array", + } + } + ]); + }); +}); + +SpecificationVersion.getVersionsForRange(">=3.2").forEach(function(specVersion) { + test(`Invalid builder configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + // jsdoc is not supported for type application + "jsdoc": { + "excludes": [ + "some/project/name/thirdparty/**" + ] + }, + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "name": true, + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "sort": true, + "declareModules": true + } + ] + }, + "bundleOptions": { + "optimize": true + } + }, + { + "bundleDefinition": { + "defaultFileTypes": [ + ".js", true + ], + "sections": [ + { + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true, + "declareRawModules": [] + }, + { + "mode": "provide", + "filters": "*", + "resolve": true + } + ] + }, + "bundleOptions": { + "optimize": "true", + "numberOfParts": "3", + "notAllowed": true + } + } + ], + "componentPreload": { + "path": "some/invalid/path", + "paths": "some/invalid/glob/**/pattern/Component.js", + "namespaces": "some/invalid/namespace", + }, + "libraryPreload": {} // Only supported for type library + } + }, [ + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "jsdoc" + } + }, + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "libraryPreload" + } + }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "declareModules", + } + }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0/name", + keyword: "type", + message: "should be string", + params: { + type: "string", + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition", + keyword: "required", + message: "should have required property 'name'", + params: { + missingProperty: "name", + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0", + keyword: "required", + message: "should have required property 'mode'", + params: { + missingProperty: "mode", + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "raw", + "preload", + "require", + "provided", + "bundleInfo", + "depCache" + ] + } + }, + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", + keyword: "type", + message: "should be array", + params: { + type: "array", + } + }, + { + dataPath: "/builder/bundles/1/bundleOptions", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + } + }, + { + dataPath: "/builder/bundles/1/bundleOptions/optimize", + keyword: "type", + message: "should be boolean", + params: { + type: "boolean", + } + }, + { + dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", + keyword: "type", + message: "should be number", + params: { + type: "number", + } + }, + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "path", + } + }, + { + dataPath: "/builder/componentPreload/paths", + keyword: "type", + message: "should be array", + params: { + type: "array", + } + }, + { + dataPath: "/builder/componentPreload/namespaces", + keyword: "type", + message: "should be array", + params: { + type: "array", + } + } + ]); + }); +}); + project.defineTests(test, assertValidation, "application"); diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js index baf248fa11e..8ca82bfdf71 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js @@ -194,6 +194,652 @@ SpecificationVersion.getVersionsForRange(">=2.0").forEach(function(specVersion) }); }); + test(`library (specVersion ${specVersion}): Invalid builder configuration`, async (t) => { + const config = { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + // cachebuster is only supported for type application + "cachebuster": { + "signatureType": "time" + } + } + }; + await assertValidation(t, config, [{ + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "cachebuster" + } + }]); + }); +}); + +SpecificationVersion.getVersionsForRange("2.0 - 2.2").forEach(function(specVersion) { + test(`Unsupported builder/libraryPreload configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "libraryPreload": {} + } + }, [ + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "libraryPreload", + }, + }, + ]); + }); + test(`Unsupported builder/componentPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }, [ + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "excludes", + }, + }, + ]); + }); +}); + +SpecificationVersion.getVersionsForRange(">=2.3").forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): builder/libraryPreload/excludes`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "libraryPreload": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }); + }); + test(`Invalid builder/libraryPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "libraryPreload": { + "excludes": "some/excluded/files/**" + } + } + }, [ + { + dataPath: "/builder/libraryPreload/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "libraryPreload": { + "excludes": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/libraryPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/libraryPreload/excludes/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/libraryPreload/excludes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/libraryPreload/excludes/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); + + + test(`library (specVersion ${specVersion}): builder/componentPreload/excludes`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }); + }); + test(`Invalid builder/componentPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": "some/excluded/files/**" + } + } + }, [ + { + dataPath: "/builder/componentPreload/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "componentPreload": { + "excludes": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/componentPreload/excludes/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/componentPreload/excludes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/componentPreload/excludes/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); + +SpecificationVersion.getVersionsForRange(">=2.4").forEach(function(specVersion) { + // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above + test(`library (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, + async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "bundles": [{ + "bundleDefinition": { + "name": "my-bundle.js", + "sections": [{ + "name": "my-bundle-info", + "mode": "bundleInfo", + "filters": [] + }] + } + }] + } + }); + }); +}); + +SpecificationVersion.getVersionsForRange(">=2.5").forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": [ + "sap.a", + "sap.b" + ], + "includeDependencyRegExp": [ + ".ui.[a-z]+", + "^sap.[mf]$" + ], + "includeDependencyTree": [ + "sap.c", + "sap.d" + ] + } + } + }); + }); + test(`Invalid builder/settings/includeDependency* configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": "a", + "includeDependencyRegExp": "b", + "includeDependencyTree": "c" + } + } + }, [ + { + dataPath: "/builder/settings/includeDependency", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "settings": { + "includeDependency": [ + true, + 1, + {} + ], + "includeDependencyRegExp": [ + true, + 1, + {} + ], + "includeDependencyTree": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/settings", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/settings/includeDependency/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependency/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependency/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyRegExp/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/settings/includeDependencyTree/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); + +SpecificationVersion.getVersionsForRange(">=2.6").forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): builder/minification/excludes`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "minification": { + "excludes": [ + "some/excluded/files/**", + "some/other/excluded/files/**" + ] + } + } + }); + }); + test(`Invalid builder/minification/excludes configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "minification": { + "excludes": "some/excluded/files/**" + } + } + }, [ + { + dataPath: "/builder/minification/excludes", + keyword: "type", + message: "should be array", + params: { + type: "array", + }, + }, + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "minification": { + "excludes": [ + true, + 1, + {} + ], + "notAllowed": true + } + } + }, [ + { + dataPath: "/builder/minification", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/builder/minification/excludes/0", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/minification/excludes/1", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/minification/excludes/2", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + ]); + }); +}); + +SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { + test(`Invalid project name (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "illegal-🦜" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "pattern", + message: `should match pattern "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$"`, + params: { + pattern: "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", + }, + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "a" + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "minLength", + message: "should NOT be shorter than 3 characters", + params: { + limit: 3, + }, + }] + }, + }]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "a".repeat(81) + } + }, [{ + dataPath: "/metadata/name", + keyword: "errorMessage", + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + params: { + errors: [{ + dataPath: "/metadata/name", + keyword: "maxLength", + message: "should NOT be longer than 80 characters", + params: { + limit: 80, + }, + }] + }, + }]); + }); +}); + +SpecificationVersion.getVersionsForRange("2.0 - 3.1").forEach(function(specVersion) { test(`library (specVersion ${specVersion}): Invalid configuration`, async (t) => { await assertValidation(t, { "specVersion": specVersion, @@ -538,35 +1184,10 @@ SpecificationVersion.getVersionsForRange(">=2.0").forEach(function(specVersion) } ]); }); - - test(`library (specVersion ${specVersion}): Invalid builder configuration`, async (t) => { - const config = { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - // cachebuster is only supported for type application - "cachebuster": { - "signatureType": "time" - } - } - }; - await assertValidation(t, config, [{ - dataPath: "/builder", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "cachebuster" - } - }]); - }); }); -SpecificationVersion.getVersionsForRange("2.0 - 2.2").forEach(function(specVersion) { - test(`Unsupported builder/libraryPreload configuration (specVersion ${specVersion})`, async (t) => { +SpecificationVersion.getVersionsForRange(">=3.2").forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): Invalid configuration`, async (t) => { await assertValidation(t, { "specVersion": specVersion, "type": "library", @@ -574,613 +1195,338 @@ SpecificationVersion.getVersionsForRange("2.0 - 2.2").forEach(function(specVersi "name": "com.sap.ui5.test", "copyright": "yes" }, - "builder": { - "libraryPreload": {} - } - }, [ - { - dataPath: "/builder", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "libraryPreload", - }, - }, - ]); - }); - test(`Unsupported builder/componentPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF8", + "paths": { + "src": {"path": "src"}, + "test": {"path": "test"}, + "webapp": "app" + } + } }, "builder": { + "resources": { + "excludes": "/resources/some/project/name/test_results/**" + }, + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "name": true, + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "sort": true, + "declareModules": true + } + ] + }, + "bundleOptions": { + "optimize": true + } + }, + { + "bundleDefinition": { + "defaultFileTypes": [ + ".js", true + ], + "sections": [ + { + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true, + "declareRawModules": [] + }, + { + "mode": "provide", + "filters": "*", + "resolve": true + } + ] + }, + "bundleOptions": { + "optimize": "true", + "numberOfParts": "3", + "notAllowed": true + } + } + ], "componentPreload": { - "excludes": [ - "some/excluded/files/**", - "some/other/excluded/files/**" - ] - } - } - }, [ - { - dataPath: "/builder/componentPreload", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "excludes", + "path": "some/invalid/path", + "paths": "some/invalid/glob/**/pattern/Component.js", + "namespaces": "some/invalid/namespace", }, - }, - ]); - }); -}); - -SpecificationVersion.getVersionsForRange(">=2.3").forEach(function(specVersion) { - test(`library (specVersion ${specVersion}): builder/libraryPreload/excludes`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "kind": "project", - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - "libraryPreload": { - "excludes": [ - "some/excluded/files/**", - "some/other/excluded/files/**" - ] - } - } - }); - }); - test(`Invalid builder/libraryPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - "libraryPreload": { - "excludes": "some/excluded/files/**" - } - } - }, [ - { - dataPath: "/builder/libraryPreload/excludes", - keyword: "type", - message: "should be array", - params: { - type: "array", + "jsdoc": { + "excludes": "some/project/name/thirdparty/**" }, - }, - ]); - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - "libraryPreload": { - "excludes": [ - true, - 1, - {} - ], - "notAllowed": true + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "afterTask": "replaceCopyright", + }, + { + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } + }, + "my-task" + ] + }, + "server": { + "settings": { + "httpPort": "1337", + "httpsPort": "1443" } } }, [ { - dataPath: "/builder/libraryPreload", + dataPath: "/resources/configuration/propertiesFileSourceEncoding", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "UTF-8", + "ISO-8859-1", + ], + } + }, + { + dataPath: "/resources/configuration/paths", keyword: "additionalProperties", message: "should NOT have additional properties", params: { - additionalProperty: "notAllowed", - }, + additionalProperty: "webapp", + } }, { - dataPath: "/builder/libraryPreload/excludes/0", + dataPath: "/resources/configuration/paths/src", keyword: "type", message: "should be string", params: { type: "string", - }, + } }, { - dataPath: "/builder/libraryPreload/excludes/1", + dataPath: "/resources/configuration/paths/test", keyword: "type", message: "should be string", params: { type: "string", - }, + } }, { - dataPath: "/builder/libraryPreload/excludes/2", + dataPath: "/builder/resources/excludes", keyword: "type", - message: "should be string", + message: "should be array", params: { - type: "string", - }, - }, - ]); - }); - - - test(`library (specVersion ${specVersion}): builder/componentPreload/excludes`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "kind": "project", - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - "componentPreload": { - "excludes": [ - "some/excluded/files/**", - "some/other/excluded/files/**" - ] + type: "array", } - } - }); - }); - test(`Invalid builder/componentPreload/excludes configuration (specVersion ${specVersion})`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" }, - "builder": { - "componentPreload": { - "excludes": "some/excluded/files/**" - } - } - }, [ { - dataPath: "/builder/componentPreload/excludes", + dataPath: "/builder/jsdoc/excludes", keyword: "type", message: "should be array", params: { type: "array", - }, - }, - ]); - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - "componentPreload": { - "excludes": [ - true, - 1, - {} - ], - "notAllowed": true } - } - }, [ + }, { - dataPath: "/builder/componentPreload", + dataPath: "/builder/bundles/0/bundleDefinition/sections/0", keyword: "additionalProperties", message: "should NOT have additional properties", params: { - additionalProperty: "notAllowed", - }, + additionalProperty: "declareModules", + } }, { - dataPath: "/builder/componentPreload/excludes/0", + dataPath: "/builder/bundles/0/bundleDefinition/sections/0/name", keyword: "type", message: "should be string", params: { type: "string", - }, + } }, { - dataPath: "/builder/componentPreload/excludes/1", - keyword: "type", - message: "should be string", + dataPath: "/builder/bundles/1/bundleDefinition", + keyword: "required", + message: "should have required property 'name'", params: { - type: "string", - }, + missingProperty: "name", + } }, { - dataPath: "/builder/componentPreload/excludes/2", + dataPath: "/builder/bundles/1/bundleDefinition/defaultFileTypes/1", keyword: "type", message: "should be string", params: { type: "string", - }, - }, - ]); - }); -}); - -SpecificationVersion.getVersionsForRange(">=2.4").forEach(function(specVersion) { - // Unsupported cases for older spec-versions already tested via "allowedValues" comparison above - test(`library (specVersion ${specVersion}): builder/bundles/bundleDefinition/sections/mode: bundleInfo`, - async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "kind": "project", - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - "bundles": [{ - "bundleDefinition": { - "name": "my-bundle.js", - "sections": [{ - "name": "my-bundle-info", - "mode": "bundleInfo", - "filters": [] - }] - } - }] } - }); - }); -}); - -SpecificationVersion.getVersionsForRange(">=2.5").forEach(function(specVersion) { - test(`library (specVersion ${specVersion}): builder/settings/includeDependency*`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "kind": "project", - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" }, - "builder": { - "settings": { - "includeDependency": [ - "sap.a", - "sap.b" - ], - "includeDependencyRegExp": [ - ".ui.[a-z]+", - "^sap.[mf]$" - ], - "includeDependencyTree": [ - "sap.c", - "sap.d" - ] + { + dataPath: "/builder/bundles/1/bundleDefinition/sections/0", + keyword: "required", + message: "should have required property 'mode'", + params: { + missingProperty: "mode", } - } - }); - }); - test(`Invalid builder/settings/includeDependency* configuration (specVersion ${specVersion})`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" }, - "builder": { - "settings": { - "includeDependency": "a", - "includeDependencyRegExp": "b", - "includeDependencyTree": "c" - } - } - }, [ { - dataPath: "/builder/settings/includeDependency", + dataPath: "/builder/bundles/1/bundleDefinition/sections/0/declareRawModules", keyword: "type", - message: "should be array", + message: "should be boolean", params: { - type: "array", - }, + type: "boolean", + } }, { - dataPath: "/builder/settings/includeDependencyRegExp", - keyword: "type", - message: "should be array", + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/mode", + keyword: "enum", + message: "should be equal to one of the allowed values", params: { - type: "array", - }, + allowedValues: [ + "raw", + "preload", + "require", + "provided", + "bundleInfo", + "depCache" + ] + } }, { - dataPath: "/builder/settings/includeDependencyTree", + dataPath: "/builder/bundles/1/bundleDefinition/sections/1/filters", keyword: "type", - message: "should be array", - params: { - type: "array", - }, - }, - ]); - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - "settings": { - "includeDependency": [ - true, - 1, - {} - ], - "includeDependencyRegExp": [ - true, - 1, - {} - ], - "includeDependencyTree": [ - true, - 1, - {} - ], - "notAllowed": true + message: "should be array", + params: { + type: "array", } - } - }, [ + }, { - dataPath: "/builder/settings", + dataPath: "/builder/bundles/1/bundleOptions", keyword: "additionalProperties", message: "should NOT have additional properties", params: { additionalProperty: "notAllowed", - }, + } }, { - dataPath: "/builder/settings/includeDependency/0", + dataPath: "/builder/bundles/1/bundleOptions/optimize", keyword: "type", - message: "should be string", + message: "should be boolean", params: { - type: "string", - }, + type: "boolean", + } }, { - dataPath: "/builder/settings/includeDependency/1", + dataPath: "/builder/bundles/1/bundleOptions/numberOfParts", keyword: "type", - message: "should be string", + message: "should be number", params: { - type: "string", - }, + type: "number", + } }, { - dataPath: "/builder/settings/includeDependency/2", - keyword: "type", - message: "should be string", + dataPath: "/builder/componentPreload", + keyword: "additionalProperties", + message: "should NOT have additional properties", params: { - type: "string", - }, + additionalProperty: "path", + } }, { - dataPath: "/builder/settings/includeDependencyRegExp/0", + dataPath: "/builder/componentPreload/paths", keyword: "type", - message: "should be string", + message: "should be array", params: { - type: "string", - }, + type: "array", + } }, { - dataPath: "/builder/settings/includeDependencyRegExp/1", + dataPath: "/builder/componentPreload/namespaces", keyword: "type", - message: "should be string", + message: "should be array", params: { - type: "string", - }, + type: "array", + } }, { - dataPath: "/builder/settings/includeDependencyRegExp/2", - keyword: "type", - message: "should be string", + dataPath: "/builder/customTasks/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", params: { - type: "string", - }, + additionalProperty: "afterTask", + } }, { - dataPath: "/builder/settings/includeDependencyTree/0", - keyword: "type", - message: "should be string", + dataPath: "/builder/customTasks/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", params: { - type: "string", - }, + additionalProperty: "beforeTask", + } }, { - dataPath: "/builder/settings/includeDependencyTree/1", - keyword: "type", - message: "should be string", + dataPath: "/builder/customTasks/1", + keyword: "additionalProperties", + message: "should NOT have additional properties", params: { - type: "string", - }, + additionalProperty: "afterTask", + } }, { - dataPath: "/builder/settings/includeDependencyTree/2", - keyword: "type", - message: "should be string", + dataPath: "/builder/customTasks/1", + keyword: "required", + message: "should have required property 'name'", params: { - type: "string", - }, - }, - ]); - }); -}); - -SpecificationVersion.getVersionsForRange(">=2.6").forEach(function(specVersion) { - test(`library (specVersion ${specVersion}): builder/minification/excludes`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "kind": "project", - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - "minification": { - "excludes": [ - "some/excluded/files/**", - "some/other/excluded/files/**" - ] + missingProperty: "name", } - } - }); - }); - test(`Invalid builder/minification/excludes configuration (specVersion ${specVersion})`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" }, - "builder": { - "minification": { - "excludes": "some/excluded/files/**" - } - } - }, [ { - dataPath: "/builder/minification/excludes", - keyword: "type", - message: "should be array", + dataPath: "/builder/customTasks/1", + keyword: "required", + message: "should have required property 'beforeTask'", params: { - type: "array", - }, - }, - ]); - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "com.sap.ui5.test", - "copyright": "yes" - }, - "builder": { - "minification": { - "excludes": [ - true, - 1, - {} - ], - "notAllowed": true + missingProperty: "beforeTask", } - } - }, [ - { - dataPath: "/builder/minification", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", - }, }, { - dataPath: "/builder/minification/excludes/0", + dataPath: "/builder/customTasks/2", keyword: "type", - message: "should be string", + message: "should be object", params: { - type: "string", - }, + type: "object", + } }, { - dataPath: "/builder/minification/excludes/1", + dataPath: "/server/settings/httpPort", keyword: "type", - message: "should be string", + message: "should be number", params: { - type: "string", - }, + type: "number", + } }, { - dataPath: "/builder/minification/excludes/2", + dataPath: "/server/settings/httpsPort", keyword: "type", - message: "should be string", + message: "should be number", params: { - type: "string", - }, - }, + type: "number", + } + } ]); }); }); -SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { - test(`Invalid project name (specVersion ${specVersion})`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "illegal-🦜" - } - }, [{ - dataPath: "/metadata/name", - keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, - params: { - errors: [{ - dataPath: "/metadata/name", - keyword: "pattern", - message: `should match pattern "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$"`, - params: { - pattern: "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", - }, - }] - }, - }]); - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "a" - } - }, [{ - dataPath: "/metadata/name", - keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, - params: { - errors: [{ - dataPath: "/metadata/name", - keyword: "minLength", - message: "should NOT be shorter than 3 characters", - params: { - limit: 3, - }, - }] - }, - }]); - await assertValidation(t, { - "specVersion": specVersion, - "type": "library", - "metadata": { - "name": "a".repeat(81) - } - }, [{ - dataPath: "/metadata/name", - keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, - params: { - errors: [{ - dataPath: "/metadata/name", - keyword: "maxLength", - message: "should NOT be longer than 80 characters", - params: { - limit: 80, - }, - }] - }, - }]); - }); -}); project.defineTests(test, assertValidation, "library"); diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 8cc1c77d77c..4ac9192c87f 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -100,10 +100,11 @@ test("Invalid specVersion", async (t) => { dataPath: "/specVersion", keyword: "errorMessage", message: -`Unsupported "specVersion" -Your UI5 CLI installation might be outdated. -Supported specification versions: "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" -For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, +"Unsupported \"specVersion\"\n" + +"Your UI5 CLI installation might be outdated.\n" + +"Supported specification versions: \"3.2\", \"3.1\", \"3.0\", \"2.6\", " + +"\"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\n" + +"For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions", params: { errors: [ { @@ -112,6 +113,7 @@ For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specifi message: "should be equal to one of the allowed values", params: { allowedValues: [ + "3.2", "3.1", "3.0", "2.6", From 350efbd858ef365224b7b150dee69b80b0c8e1bd Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 3 Dec 2023 03:20:35 +0000 Subject: [PATCH 1042/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 58 +++++++++++++++--------------- packages/project/package.json | 4 +-- 2 files changed, 31 insertions(+), 31 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f2280bca035..31bd74e1843 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -23,7 +23,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^13.0.0", "node-stream-zip": "^1.15.0", - "pacote": "^17.0.4", + "pacote": "^17.0.5", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", @@ -40,7 +40,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.54.0", + "eslint": "^8.55.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.9.0", @@ -540,9 +540,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", - "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -612,9 +612,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz", - "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==", + "version": "8.55.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.55.0.tgz", + "integrity": "sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -3270,9 +3270,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.600", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.600.tgz", - "integrity": "sha512-KD6CWjf1BnQG+NsXuyiTDDT1eV13sKuYsOUioXkQweYTQIbgHkXPry9K7M+7cKtYHnSUPitVaLrXYB1jTkkYrw==", + "version": "1.4.601", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.601.tgz", + "integrity": "sha512-SpwUMDWe9tQu8JX5QCO1+p/hChAi9AE9UpoC3rcHVc+gdCGlbT3SGb5I1klgb952HRIyvt9wZhSz9bNBYz9swA==", "dev": true }, "node_modules/emittery": { @@ -3392,15 +3392,15 @@ } }, "node_modules/eslint": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.54.0.tgz", - "integrity": "sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==", + "version": "8.55.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.55.0.tgz", + "integrity": "sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.3", - "@eslint/js": "8.54.0", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.55.0", "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -7076,9 +7076,9 @@ } }, "node_modules/pacote": { - "version": "17.0.4", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.4.tgz", - "integrity": "sha512-eGdLHrV/g5b5MtD5cTPyss+JxOlaOloSMG3UwPMAvL8ywaLJ6beONPF40K4KKl/UI6q5hTKCJq5rCu8tkF+7Dg==", + "version": "17.0.5", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.5.tgz", + "integrity": "sha512-TAE0m20zSDMnchPja9vtQjri19X3pZIyRpm2TJVeI+yU42leJBBDTRYhOcWFsPhaMxf+3iwQkFiKz16G9AEeeA==", "dependencies": { "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -7486,9 +7486,9 @@ } }, "node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "version": "8.4.32", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz", + "integrity": "sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==", "dev": true, "funding": [ { @@ -7505,7 +7505,7 @@ } ], "dependencies": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" }, @@ -7826,9 +7826,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.8.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.2.tgz", - "integrity": "sha512-mcvrCjixA5166hSrUoJgGb9gBQN4loMYyj9zxuMs/66ibHNEFd5JXMw37YVDx58L4/QID9jIzdTBB4mDwDJ6KQ==", + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.3.tgz", + "integrity": "sha512-//BaTm14Q/gHBn09xlnKNqfI8t6bmdzx2DXYfPBNofN0WUybCEUDcbCWcTa0oF09lzLjZgPphXAsvRiMK0V6Bw==", "engines": { "node": ">=16" }, @@ -7926,9 +7926,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.8.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.2.tgz", - "integrity": "sha512-mcvrCjixA5166hSrUoJgGb9gBQN4loMYyj9zxuMs/66ibHNEFd5JXMw37YVDx58L4/QID9jIzdTBB4mDwDJ6KQ==", + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.3.tgz", + "integrity": "sha512-//BaTm14Q/gHBn09xlnKNqfI8t6bmdzx2DXYfPBNofN0WUybCEUDcbCWcTa0oF09lzLjZgPphXAsvRiMK0V6Bw==", "engines": { "node": ">=16" }, diff --git a/packages/project/package.json b/packages/project/package.json index 1d29cda1b32..2bb441f8c86 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -134,7 +134,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^13.0.0", "node-stream-zip": "^1.15.0", - "pacote": "^17.0.4", + "pacote": "^17.0.5", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", @@ -151,7 +151,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.54.0", + "eslint": "^8.55.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.9.0", From e2d252c15ded51a5adec974c98174d79ef97678e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 10 Dec 2023 03:20:24 +0000 Subject: [PATCH 1043/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 126 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 64 insertions(+), 64 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 31bd74e1843..df2b01f8dcc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.8.0", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.0.2", + "@npmcli/config": "^8.0.3", "@ui5/builder": "^3.1.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -828,9 +828,9 @@ } }, "node_modules/@jsdoc/salty": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.6.tgz", - "integrity": "sha512-aA+awb5yoml8TQ3CzI5Ue7sM3VMRC4l1zJJW4fgZ8OCL1wshJZhNzaf0PL85DSnOUw6QuFgeHGD/eq/xwwAF2g==", + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.7.tgz", + "integrity": "sha512-mh8LbS9d4Jq84KLw8pzho7XC2q2/IJGiJss3xwRoLD1A+EE16SjN4PfaG4jRCzKegTFLlN0Zd8SdUPE6XdoPFg==", "dependencies": { "lodash": "^4.17.21" }, @@ -894,9 +894,9 @@ } }, "node_modules/@npmcli/config": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.0.2.tgz", - "integrity": "sha512-g+DAp7bUsiUDynRI4jTO0wPAXJpy3puhovHHg8S4iq54NF8zd00588GJOm5ARxDaDUdKCUYu9E5fNc+esYl5JA==", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.0.3.tgz", + "integrity": "sha512-rqRX7/UORvm2YRImY67kyfwD9rpi5+KXXb1j/cpTUKRcUqvpJ9/PMMc7Vv57JVqmrFj8siBBFEmXI3Gg7/TonQ==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^4.0.0", @@ -1324,72 +1324,72 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.9.tgz", - "integrity": "sha512-+/Lf68Vr/nFBA6ol4xOtJrW+BQWv3QWKfRwGSm70jtXwfhZNF4R/eRgyVJYoxFRhdCTk/F6g99BP0ffPgZihfQ==", + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.11.tgz", + "integrity": "sha512-h97/TGWBilnLuRaj58sxNrsUU66fwdRKLOLQ9N/5iNDfp+DZhYH9Obhe0bXxhedl8fjAgpRANpiZfbgWyruQ0w==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.3", - "@vue/shared": "3.3.9", + "@babel/parser": "^7.23.5", + "@vue/shared": "3.3.11", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.9.tgz", - "integrity": "sha512-nfWubTtLXuT4iBeDSZ5J3m218MjOy42Vp2pmKVuBKo2/BLcrFUX8nCSr/bKRFiJ32R8qbdnnnBgRn9AdU5v0Sg==", + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.11.tgz", + "integrity": "sha512-zoAiUIqSKqAJ81WhfPXYmFGwDRuO+loqLxvXmfUdR5fOitPoUiIeFI9cTTyv9MU5O1+ZZglJVTusWzy+wfk5hw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.9", - "@vue/shared": "3.3.9" + "@vue/compiler-core": "3.3.11", + "@vue/shared": "3.3.11" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.9.tgz", - "integrity": "sha512-wy0CNc8z4ihoDzjASCOCsQuzW0A/HP27+0MDSSICMjVIFzk/rFViezkR3dzH+miS2NDEz8ywMdbjO5ylhOLI2A==", + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.11.tgz", + "integrity": "sha512-U4iqPlHO0KQeK1mrsxCN0vZzw43/lL8POxgpzcJweopmqtoYy9nljJzWDIQS3EfjiYhfdtdk9Gtgz7MRXnz3GA==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.3", - "@vue/compiler-core": "3.3.9", - "@vue/compiler-dom": "3.3.9", - "@vue/compiler-ssr": "3.3.9", - "@vue/reactivity-transform": "3.3.9", - "@vue/shared": "3.3.9", + "@babel/parser": "^7.23.5", + "@vue/compiler-core": "3.3.11", + "@vue/compiler-dom": "3.3.11", + "@vue/compiler-ssr": "3.3.11", + "@vue/reactivity-transform": "3.3.11", + "@vue/shared": "3.3.11", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", - "postcss": "^8.4.31", + "postcss": "^8.4.32", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.9.tgz", - "integrity": "sha512-NO5oobAw78R0G4SODY5A502MGnDNiDjf6qvhn7zD7TJGc8XDeIEw4fg6JU705jZ/YhuokBKz0A5a/FL/XZU73g==", + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.11.tgz", + "integrity": "sha512-Zd66ZwMvndxRTgVPdo+muV4Rv9n9DwQ4SSgWWKWkPFebHQfVYRrVjeygmmDmPewsHyznCNvJ2P2d6iOOhdv8Qg==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.9", - "@vue/shared": "3.3.9" + "@vue/compiler-dom": "3.3.11", + "@vue/shared": "3.3.11" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.9.tgz", - "integrity": "sha512-HnUFm7Ry6dFa4Lp63DAxTixUp8opMtQr6RxQCpDI1vlh12rkGIeYqMvJtK+IKyEfEOa2I9oCkD1mmsPdaGpdVg==", + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.11.tgz", + "integrity": "sha512-fPGjH0wqJo68A0wQ1k158utDq/cRyZNlFoxGwNScE28aUFOKFEnCBsvyD8jHn+0kd0UKVpuGuaZEQ6r9FJRqCg==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.3", - "@vue/compiler-core": "3.3.9", - "@vue/shared": "3.3.9", + "@babel/parser": "^7.23.5", + "@vue/compiler-core": "3.3.11", + "@vue/shared": "3.3.11", "estree-walker": "^2.0.2", "magic-string": "^0.30.5" } }, "node_modules/@vue/shared": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.9.tgz", - "integrity": "sha512-ZE0VTIR0LmYgeyhurPTpy4KzKsuDyQbMSdM49eKkMnT5X4VfFBLysMzjIZhLEFQYjjOVVfbvUDHckwjDFiO2eA==", + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.11.tgz", + "integrity": "sha512-u2G8ZQ9IhMWTMXaWqZycnK4UthG1fA238CD+DP4Dm4WJi5hdUKKLg0RMRaRpDPNMdkTwIDkp7WtD0Rd9BH9fLw==", "dev": true }, "node_modules/abbrev": { @@ -1420,9 +1420,9 @@ } }, "node_modules/acorn-walk": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.0.tgz", - "integrity": "sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==", + "version": "8.3.1", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.1.tgz", + "integrity": "sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw==", "dev": true, "engines": { "node": ">=0.4.0" @@ -1785,9 +1785,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", - "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "version": "4.22.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz", + "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==", "dev": true, "funding": [ { @@ -1804,9 +1804,9 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001541", - "electron-to-chromium": "^1.4.535", - "node-releases": "^2.0.13", + "caniuse-lite": "^1.0.30001565", + "electron-to-chromium": "^1.4.601", + "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" }, "bin": { @@ -2058,9 +2058,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001565", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz", - "integrity": "sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==", + "version": "1.0.30001566", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001566.tgz", + "integrity": "sha512-ggIhCsTxmITBAMmK8yZjEhCO5/47jKXPu6Dha/wuCS4JePVL+3uiDEBuhu2aIoT+bqTOR8L76Ip1ARL9xYsEJA==", "dev": true, "funding": [ { @@ -3270,9 +3270,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.601", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.601.tgz", - "integrity": "sha512-SpwUMDWe9tQu8JX5QCO1+p/hChAi9AE9UpoC3rcHVc+gdCGlbT3SGb5I1klgb952HRIyvt9wZhSz9bNBYz9swA==", + "version": "1.4.609", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.609.tgz", + "integrity": "sha512-ihiCP7PJmjoGNuLpl7TjNA8pCQWu09vGyjlPYw1Rqww4gvNuCcmvl+44G+2QyJ6S2K4o+wbTS++Xz0YN8Q9ERw==", "dev": true }, "node_modules/emittery": { @@ -6488,11 +6488,11 @@ } }, "node_modules/npm-packlist": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.0.tgz", - "integrity": "sha512-ErAGFB5kJUciPy1mmx/C2YFbvxoJ0QJ9uwkCZOeR6CqLLISPZBOiFModAbSXnjjlwW5lOhuhXva+fURsSGJqyw==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.1.tgz", + "integrity": "sha512-MQpL27ZrsJQ2kiAuQPpZb5LtJwydNRnI15QWXsf3WHERu4rzjRj6Zju/My2fov7tLuu3Gle/uoIX/DDZ3u4O4Q==", "dependencies": { - "ignore-walk": "^6.0.0" + "ignore-walk": "^6.0.4" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -9120,9 +9120,9 @@ } }, "node_modules/terser": { - "version": "5.24.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz", - "integrity": "sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==", + "version": "5.26.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.26.0.tgz", + "integrity": "sha512-dytTGoE2oHgbNV9nTzgBEPaqAWvcJNl66VZ0BkJqlvp71IjO8CxdBx/ykCNb47cLnCmCvRZ6ZR0tLkqvZCdVBQ==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index 2bb441f8c86..cb93ac6fbb2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.0.2", + "@npmcli/config": "^8.0.3", "@ui5/builder": "^3.1.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", From 6275b7945cd0238bb61ab12e6e372e8620efeb10 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 12 Dec 2023 14:46:41 +0100 Subject: [PATCH 1044/1272] [ui5-project][FEATURE] ProjectBuilder: Add `outputStyle` option to request flat build output (#624) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit New option `outputStyle`. Whether to omit the `/resources/` directory structure in the build output. Resolves https://github.com/SAP/ui5-tooling/issues/507 --------- Co-authored-by: Yavor Ivanov Co-authored-by: Yavor Ivanov Co-authored-by: Günter Klatt <57760635+KlattG@users.noreply.github.com> --- packages/project/lib/build/ProjectBuilder.js | 69 +++++++++-- .../project/lib/build/helpers/BuildContext.js | 30 ++++- .../helpers/ProjectBuilderOutputStyle.js | 18 +++ packages/project/lib/graph/ProjectGraph.js | 10 +- .../project/test/lib/build/ProjectBuilder.js | 74 +++++++---- .../test/lib/build/helpers/BuildContext.js | 116 ++++++++++++++++-- .../lib/build/helpers/ProjectBuildContext.js | 5 +- 7 files changed, 270 insertions(+), 52 deletions(-) create mode 100644 packages/project/lib/build/helpers/ProjectBuilderOutputStyle.js diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index 010a9cbbb70..fe39870d978 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -4,6 +4,7 @@ import BuildLogger from "@ui5/logger/internal/loggers/Build"; import composeProjectList from "./helpers/composeProjectList.js"; import BuildContext from "./helpers/BuildContext.js"; import prettyHrtime from "pretty-hrtime"; +import OutputStyleEnum from "./helpers/ProjectBuilderOutputStyle.js"; /** * @public @@ -24,6 +25,8 @@ class ProjectBuilder { * Whether to create a build manifest file for the root project. * This is currently only supported for projects of type 'library' and 'theme-library' * No other dependencies can be included in the build result. + * @property {module:@ui5/project/build/ProjectBuilderOutputStyle} [outputStyle=Default] + * Processes build results into a specific directory structure. * @property {Array.} [includedTasks=[]] List of tasks to be included * @property {Array.} [excludedTasks=[]] List of tasks to be excluded. * If the wildcard '*' is provided, only the included tasks will be executed. @@ -165,10 +168,13 @@ class ProjectBuilder { return filterProject(projectName); }); - if (this._buildContext.getBuildConfig().createBuildManifest && requestedProjects.length > 1) { - throw new Error( - `It is currently not supported to request the creation of a build manifest ` + - `while including any dependencies into the build result`); + if (requestedProjects.length > 1) { + const {createBuildManifest} = this._buildContext.getBuildConfig(); + if (createBuildManifest) { + throw new Error( + `It is currently not supported to request the creation of a build manifest ` + + `while including any dependencies into the build result`); + } } const projectBuildContexts = await this._createRequiredBuildContexts(requestedProjects); @@ -360,13 +366,25 @@ class ProjectBuilder { const project = projectBuildContext.getProject(); const taskUtil = projectBuildContext.getTaskUtil(); const buildConfig = this._buildContext.getBuildConfig(); + const {createBuildManifest, outputStyle} = buildConfig; + // Output styles are applied only for the root project + const isRootProject = taskUtil.isRootProject(); + + let readerStyle = "dist"; + if (createBuildManifest || + (isRootProject && outputStyle === OutputStyleEnum.Namespace && project.getType() === "application")) { + // Ensure buildtime (=namespaced) style when writing with a build manifest or when explicitly requested + readerStyle = "buildtime"; + } else if (isRootProject && outputStyle === OutputStyleEnum.Flat) { + readerStyle = "flat"; + } + const reader = project.getReader({ - // Force buildtime (=namespaced) style when writing with a build manifest - style: taskUtil.isRootProject() && buildConfig.createBuildManifest ? "buildtime" : "dist" + style: readerStyle }); const resources = await reader.byGlob("/**/*"); - if (taskUtil.isRootProject() && buildConfig.createBuildManifest) { + if (createBuildManifest) { // Create and write a build manifest metadata file const { default: createBuildManifest @@ -386,6 +404,43 @@ class ProjectBuilder { } return target.write(resource); })); + + if (isRootProject && + outputStyle === OutputStyleEnum.Flat && + project.getType() !== "application" /* application type is with a default flat build output structure */) { + const namespace = project.getNamespace(); + const libraryResourcesPrefix = `/resources/${namespace}/`; + const testResourcesPrefix = "/test-resources/"; + const namespacedRegex = new RegExp(`/(resources|test-resources)/${namespace}`); + const processedResourcesSet = resources.reduce((acc, resource) => acc.add(resource.getPath()), new Set()); + + // If outputStyle === "Flat", then the FlatReader would have filtered + // some resources. We now need to get all of the available resources and + // do an intersection with the processed/bundled ones. + const defaultReader = project.getReader(); + const defaultResources = await defaultReader.byGlob("/**/*"); + const flatDefaultResources = defaultResources.map((resource) => ({ + flatResource: resource.getPath().replace(namespacedRegex, ""), + originalPath: resource.getPath(), + })); + + const skippedResources = flatDefaultResources.filter((resource) => { + return processedResourcesSet.has(resource.flatResource) === false; + }); + + skippedResources.forEach((resource) => { + if (resource.originalPath.startsWith(testResourcesPrefix)) { + this.#log.verbose( + `Omitting ${resource.originalPath} from build result. File is part of ${testResourcesPrefix}.` + ); + } else if (!resource.originalPath.startsWith(libraryResourcesPrefix)) { + this.#log.warn( + `Omitting ${resource.originalPath} from build result. ` + + `File is not within project namespace '${namespace}'.` + ); + } + }); + } } async _executeCleanupTasks(force) { diff --git a/packages/project/lib/build/helpers/BuildContext.js b/packages/project/lib/build/helpers/BuildContext.js index f10aa072d80..8d8d1e1a329 100644 --- a/packages/project/lib/build/helpers/BuildContext.js +++ b/packages/project/lib/build/helpers/BuildContext.js @@ -1,4 +1,5 @@ import ProjectBuildContext from "./ProjectBuildContext.js"; +import OutputStyleEnum from "./ProjectBuilderOutputStyle.js"; /** * Context of a build process @@ -12,6 +13,7 @@ class BuildContext { cssVariables = false, jsdoc = false, createBuildManifest = false, + outputStyle = OutputStyleEnum.Default, includedTasks = [], excludedTasks = [], } = {}) { if (!graph) { @@ -21,10 +23,12 @@ class BuildContext { throw new Error(`Missing parameter 'taskRepository'`); } - if (createBuildManifest && !["library", "theme-library"].includes(graph.getRoot().getType())) { + const rootProjectType = graph.getRoot().getType(); + + if (createBuildManifest && !["library", "theme-library"].includes(rootProjectType)) { throw new Error( `Build manifest creation is currently not supported for projects of type ` + - graph.getRoot().getType()); + rootProjectType); } if (createBuildManifest && selfContained) { @@ -33,12 +37,34 @@ class BuildContext { `self-contained builds`); } + if (createBuildManifest && outputStyle === OutputStyleEnum.Flat) { + throw new Error( + `Build manifest creation is not supported in conjunction with flat build output`); + } + if (outputStyle !== OutputStyleEnum.Default) { + if (rootProjectType === "theme-library") { + throw new Error( + `${outputStyle} build output style is currently not supported for projects of type` + + `theme-library since they commonly have more than one namespace. ` + + `Currently only the Default output style is supported for this project type.` + ); + } + if (rootProjectType === "module") { + throw new Error( + `${outputStyle} build output style is currently not supported for projects of type` + + `module. Their path mappings configuration can't be mapped to any namespace.` + + `Currently only the Default output style is supported for this project type.` + ); + } + } + this._graph = graph; this._buildConfig = { selfContained, cssVariables, jsdoc, createBuildManifest, + outputStyle, includedTasks, excludedTasks, }; diff --git a/packages/project/lib/build/helpers/ProjectBuilderOutputStyle.js b/packages/project/lib/build/helpers/ProjectBuilderOutputStyle.js new file mode 100644 index 00000000000..62d0bbb674f --- /dev/null +++ b/packages/project/lib/build/helpers/ProjectBuilderOutputStyle.js @@ -0,0 +1,18 @@ +/** + * Processes build results into a specific directory structure. + * + * @public + * @readonly + * @enum {string} + * @property {string} Default The default directory structure for every project type. + * For applications this is identical to "Flat" and for libraries to "Namespace". + * Other types have a more distinct default output style. + * @property {string} Flat Omits the project namespace and the "resources" directory. + * @property {string} Namespace Respects project namespace and the "resources" directory. + * @module @ui5/project/build/ProjectBuilderOutputStyle + */ +export default { + Default: "Default", + Flat: "Flat", + Namespace: "Namespace" +}; diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index af9861e0dfe..38ff3afff5d 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -1,6 +1,8 @@ +import OutputStyleEnum from "../build/helpers/ProjectBuilderOutputStyle.js"; import {getLogger} from "@ui5/logger"; const log = getLogger("graph:ProjectGraph"); + /** * A rooted, directed graph representing a UI5 project, its dependencies and available extensions. *

@@ -540,7 +542,8 @@ class ProjectGraph { * This is currently only supported for projects of type 'library' and 'theme-library' * @param {Array.} [parameters.includedTasks=[]] List of tasks to be included * @param {Array.} [parameters.excludedTasks=[]] List of tasks to be excluded. - * If the wildcard '*' is provided, only the included tasks will be executed. + * @param {module:@ui5/project/build/ProjectBuilderOutputStyle} [parameters.outputStyle=Default] + * Processes build results into a specific directory structure. * @returns {Promise} Promise resolving to undefined once build has finished */ async build({ @@ -548,7 +551,8 @@ class ProjectGraph { includedDependencies = [], excludedDependencies = [], dependencyIncludes, selfContained = false, cssVariables = false, jsdoc = false, createBuildManifest = false, - includedTasks = [], excludedTasks = [] + includedTasks = [], excludedTasks = [], + outputStyle = OutputStyleEnum.Default }) { this.seal(); // Do not allow further changes to the graph if (this._built) { @@ -566,7 +570,7 @@ class ProjectGraph { buildConfig: { selfContained, cssVariables, jsdoc, createBuildManifest, - includedTasks, excludedTasks, + includedTasks, excludedTasks, outputStyle, } }); await builder.build({ diff --git a/packages/project/test/lib/build/ProjectBuilder.js b/packages/project/test/lib/build/ProjectBuilder.js index 7c4177d8e03..64b36ab85e9 100644 --- a/packages/project/test/lib/build/ProjectBuilder.js +++ b/packages/project/test/lib/build/ProjectBuilder.js @@ -3,6 +3,7 @@ import sinonGlobal from "sinon"; import path from "node:path"; import esmock from "esmock"; import {setLogLevel} from "@ui5/logger"; +import OutputStyleEnum from "../../../lib/build/helpers/ProjectBuilderOutputStyle.js"; function noop() {} @@ -508,7 +509,7 @@ test("_writeResults", async (t) => { } }); - const dummyResources = [{ + const mockResources = [{ _resourceName: "resource.a", getPath: () => "resource.a" }, { @@ -518,7 +519,7 @@ test("_writeResults", async (t) => { _resourceName: "resource.c", getPath: () => "resource.c" }]; - const byGlobStub = sinon.stub().resolves(dummyResources); + const byGlobStub = sinon.stub().resolves(mockResources); const getReaderStub = sinon.stub().returns({ byGlob: byGlobStub }); @@ -553,16 +554,16 @@ test("_writeResults", async (t) => { t.is(byGlobStub.getCall(0).args[0], "/**/*", "byGlob called with expected pattern"); t.is(getTagStub.callCount, 3, "TaskUtil#getTag got called three times"); - t.is(getTagStub.getCall(0).args[0], dummyResources[0], "TaskUtil#getTag called with first resource"); + t.is(getTagStub.getCall(0).args[0], mockResources[0], "TaskUtil#getTag called with first resource"); t.is(getTagStub.getCall(0).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); - t.is(getTagStub.getCall(1).args[0], dummyResources[1], "TaskUtil#getTag called with second resource"); + t.is(getTagStub.getCall(1).args[0], mockResources[1], "TaskUtil#getTag called with second resource"); t.is(getTagStub.getCall(1).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); - t.is(getTagStub.getCall(2).args[0], dummyResources[2], "TaskUtil#getTag called with third resource"); + t.is(getTagStub.getCall(2).args[0], mockResources[2], "TaskUtil#getTag called with third resource"); t.is(getTagStub.getCall(2).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); t.is(writerMock.write.callCount, 2, "Write got called twice"); - t.is(writerMock.write.getCall(0).args[0], dummyResources[1], "Write got called with second resource"); - t.is(writerMock.write.getCall(1).args[0], dummyResources[2], "Write got called with third resource"); + t.is(writerMock.write.getCall(0).args[0], mockResources[1], "Write got called with second resource"); + t.is(writerMock.write.getCall(1).args[0], mockResources[2], "Write got called with third resource"); }); test.serial("_writeResults: Create build manifest", async (t) => { @@ -587,7 +588,7 @@ test.serial("_writeResults: Create build manifest", async (t) => { } }); - const dummyResources = [{ + const mockResources = [{ _resourceName: "resource.a", getPath: () => "resource.a" }, { @@ -597,7 +598,7 @@ test.serial("_writeResults: Create build manifest", async (t) => { _resourceName: "resource.c", getPath: () => "resource.c" }]; - const byGlobStub = sinon.stub().resolves(dummyResources); + const byGlobStub = sinon.stub().resolves(mockResources); const getReaderStub = sinon.stub().returns({ byGlob: byGlobStub }); @@ -636,6 +637,7 @@ test.serial("_writeResults: Create build manifest", async (t) => { "createBuildManifest got called with correct project"); t.deepEqual(createBuildManifestStub.getCall(0).args[1], { createBuildManifest: true, + outputStyle: OutputStyleEnum.Default, cssVariables: false, excludedTasks: [], includedTasks: [], @@ -652,50 +654,57 @@ test.serial("_writeResults: Create build manifest", async (t) => { }, "Build manifest resource has been created with correct arguments"); t.is(getTagStub.callCount, 3, "TaskUtil#getTag got called three times"); - t.is(getTagStub.getCall(0).args[0], dummyResources[0], "TaskUtil#getTag called with first resource"); + t.is(getTagStub.getCall(0).args[0], mockResources[0], "TaskUtil#getTag called with first resource"); t.is(getTagStub.getCall(0).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); - t.is(getTagStub.getCall(1).args[0], dummyResources[1], "TaskUtil#getTag called with second resource"); + t.is(getTagStub.getCall(1).args[0], mockResources[1], "TaskUtil#getTag called with second resource"); t.is(getTagStub.getCall(1).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); - t.is(getTagStub.getCall(2).args[0], dummyResources[2], "TaskUtil#getTag called with third resource"); + t.is(getTagStub.getCall(2).args[0], mockResources[2], "TaskUtil#getTag called with third resource"); t.is(getTagStub.getCall(2).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); t.is(writerMock.write.callCount, 3, "Write got called three times"); t.is(writerMock.write.getCall(0).args[0], "build manifest resource", "Write got called with build manifest"); - t.is(writerMock.write.getCall(1).args[0], dummyResources[1], "Write got called with second resource"); - t.is(writerMock.write.getCall(2).args[0], dummyResources[2], "Write got called with third resource"); + t.is(writerMock.write.getCall(1).args[0], mockResources[1], "Write got called with second resource"); + t.is(writerMock.write.getCall(2).args[0], mockResources[2], "Write got called with third resource"); esmock.purge(ProjectBuilder); }); -test("_writeResults: Do not create build manifest for non-root project", async (t) => { - const {ProjectBuilder, sinon} = t.context; +test.serial("_writeResults: Flat build output", async (t) => { + const {sinon, ProjectBuilder} = t.context; t.context.getRootTypeStub = sinon.stub().returns("library"); const {graph, taskRepository} = t.context; const builder = new ProjectBuilder({ graph, taskRepository, buildConfig: { - createBuildManifest: true + outputStyle: OutputStyleEnum.Flat, + otherBuildConfig: "yes" } }); - const dummyResources = [{ + const mockResources = [{ _resourceName: "resource.a", getPath: () => "resource.a" + }, { + _resourceName: "resource.b", + getPath: () => "resource.b" + }, { + _resourceName: "resource.c", + getPath: () => "resource.c" }]; - const byGlobStub = sinon.stub().resolves(dummyResources); + const byGlobStub = sinon.stub().resolves(mockResources); const getReaderStub = sinon.stub().returns({ byGlob: byGlobStub }); - const mockProject = getMockProject("library", "c"); + const mockProject = getMockProject("library", "a"); mockProject.getReader = getReaderStub; - const getTagStub = sinon.stub().returns(false); + const getTagStub = sinon.stub().returns(false).onFirstCall().returns(true); const projectBuildContextMock = { getProject: () => mockProject, getTaskUtil: () => { return { - isRootProject: () => false, + isRootProject: () => true, getTag: getTagStub, STANDARD_TAGS: { OmitFromBuildResult: "OmitFromBuildResultTag" @@ -709,17 +718,28 @@ test("_writeResults: Do not create build manifest for non-root project", async ( await builder._writeResults(projectBuildContextMock, writerMock); - t.is(getReaderStub.callCount, 1, "One reader requested"); + t.is(getReaderStub.callCount, 2, "One reader requested"); t.deepEqual(getReaderStub.getCall(0).args[0], { - style: "dist" + style: "flat" }, "Reader requested expected style"); - t.is(getTagStub.callCount, 1, "TaskUtil#getTag got called once"); + t.is(byGlobStub.callCount, 2, "One byGlob call"); + t.is(byGlobStub.getCall(0).args[0], "/**/*", "byGlob called with expected pattern"); - t.is(writerMock.write.callCount, 1, "Write got called once"); - t.is(writerMock.write.getCall(0).args[0], dummyResources[0], "Write got called with only resource"); + t.is(getTagStub.callCount, 3, "TaskUtil#getTag got called three times"); + t.is(getTagStub.getCall(0).args[0], mockResources[0], "TaskUtil#getTag called with first resource"); + t.is(getTagStub.getCall(0).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); + t.is(getTagStub.getCall(1).args[0], mockResources[1], "TaskUtil#getTag called with second resource"); + t.is(getTagStub.getCall(1).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); + t.is(getTagStub.getCall(2).args[0], mockResources[2], "TaskUtil#getTag called with third resource"); + t.is(getTagStub.getCall(2).args[1], "OmitFromBuildResultTag", "TaskUtil#getTag called with correct tag value"); + + t.is(writerMock.write.callCount, 2, "Write got called twice"); + t.is(writerMock.write.getCall(0).args[0], mockResources[1], "Write got called with second resource"); + t.is(writerMock.write.getCall(1).args[0], mockResources[2], "Write got called with third resource"); }); + test("_executeCleanupTasks", async (t) => { const {graph, taskRepository, ProjectBuilder, sinon} = t.context; const builder = new ProjectBuilder({graph, taskRepository}); diff --git a/packages/project/test/lib/build/helpers/BuildContext.js b/packages/project/test/lib/build/helpers/BuildContext.js index 34b9d2f4706..cc09a7cd870 100644 --- a/packages/project/test/lib/build/helpers/BuildContext.js +++ b/packages/project/test/lib/build/helpers/BuildContext.js @@ -1,5 +1,6 @@ import test from "ava"; import sinon from "sinon"; +import OutputStyleEnum from "../../../../lib/build/helpers/ProjectBuilderOutputStyle.js"; test.afterEach.always((t) => { sinon.restore(); @@ -22,30 +23,42 @@ test("Missing parameters", (t) => { }); test("getRootProject", (t) => { - const buildContext = new BuildContext({ - getRoot: () => "pony" - }, "taskRepository"); + const rootProjectStub = sinon.stub() + .onFirstCall().returns({getType: () => "library"}) + .returns("pony"); + const graph = {getRoot: rootProjectStub}; + const buildContext = new BuildContext(graph, "taskRepository"); t.is(buildContext.getRootProject(), "pony", "Returned correct value"); }); test("getGraph", (t) => { - const buildContext = new BuildContext("graph", "taskRepository"); + const graph = { + getRoot: () => ({getType: () => "library"}), + }; + const buildContext = new BuildContext(graph, "taskRepository"); - t.is(buildContext.getGraph(), "graph", "Returned correct value"); + t.deepEqual(buildContext.getGraph(), graph, "Returned correct value"); }); test("getTaskRepository", (t) => { - const buildContext = new BuildContext("graph", "taskRepository"); + const graph = { + getRoot: () => ({getType: () => "library"}), + }; + const buildContext = new BuildContext(graph, "taskRepository"); t.is(buildContext.getTaskRepository(), "taskRepository", "Returned correct value"); }); test("getBuildConfig: Default values", (t) => { - const buildContext = new BuildContext("graph", "taskRepository"); + const graph = { + getRoot: () => ({getType: () => "library"}), + }; + const buildContext = new BuildContext(graph, "taskRepository"); t.deepEqual(buildContext.getBuildConfig(), { selfContained: false, + outputStyle: OutputStyleEnum.Default, cssVariables: false, jsdoc: false, createBuildManifest: false, @@ -63,6 +76,7 @@ test("getBuildConfig: Custom values", (t) => { } }, "taskRepository", { selfContained: true, + outputStyle: OutputStyleEnum.Namespace, cssVariables: true, jsdoc: true, createBuildManifest: false, @@ -72,6 +86,7 @@ test("getBuildConfig: Custom values", (t) => { t.deepEqual(buildContext.getBuildConfig(), { selfContained: true, + outputStyle: OutputStyleEnum.Namespace, cssVariables: true, jsdoc: true, createBuildManifest: false, @@ -162,8 +177,79 @@ test("createBuildManifest supported for jsdoc build", (t) => { }); }); -test("getBuildOption", (t) => { - const buildContext = new BuildContext("graph", "taskRepository", { +test("outputStyle='Namespace' supported for type application", (t) => { + t.notThrows(() => { + new BuildContext({ + getRoot: () => { + return { + getType: () => "application" + }; + } + }, "taskRepository", { + outputStyle: OutputStyleEnum.Namespace + }); + }); +}); + +test("outputStyle='Flat' not supported for type theme-library", (t) => { + const err = t.throws(() => { + new BuildContext({ + getRoot: () => { + return { + getType: () => "theme-library" + }; + } + }, "taskRepository", { + outputStyle: OutputStyleEnum.Flat + }); + }); + t.is(err.message, + "Flat build output style is currently not supported for projects of typetheme-library since they" + + " commonly have more than one namespace. Currently only the Default output style is supported" + + " for this project type."); +}); + +test("outputStyle='Flat' not supported for type module", (t) => { + const err = t.throws(() => { + new BuildContext({ + getRoot: () => { + return { + getType: () => "module" + }; + } + }, "taskRepository", { + outputStyle: OutputStyleEnum.Flat + }); + }); + t.is(err.message, + "Flat build output style is currently not supported for projects of typemodule. " + + "Their path mappings configuration can't be mapped to any namespace.Currently only the " + + "Default output style is supported for this project type."); +}); + +test("outputStyle='Flat' not supported for createBuildManifest build", (t) => { + const err = t.throws(() => { + new BuildContext({ + getRoot: () => { + return { + getType: () => "library" + }; + } + }, "taskRepository", { + createBuildManifest: true, + outputStyle: OutputStyleEnum.Flat + }); + }); + t.is(err.message, + "Build manifest creation is not supported in conjunction with flat build output", + "Threw with expected error message"); +}); + +test("getOption", (t) => { + const graph = { + getRoot: () => ({getType: () => "library"}), + }; + const buildContext = new BuildContext(graph, "taskRepository", { cssVariables: "value", }); @@ -171,11 +257,14 @@ test("getBuildOption", (t) => { "Returned correct value for build configuration 'cssVariables'"); t.is(buildContext.getOption("selfContained"), undefined, "Returned undefined for build configuration 'selfContained' " + - "(not exposed as buold option)"); + "(not exposed as build option)"); }); test("createProjectContext", async (t) => { - const buildContext = new BuildContext("graph", "taskRepository"); + const graph = { + getRoot: () => ({getType: () => "library"}), + }; + const buildContext = new BuildContext(graph, "taskRepository"); const projectBuildContext = await buildContext.createProjectContext({ project: { getName: () => "project", @@ -188,7 +277,10 @@ test("createProjectContext", async (t) => { }); test("executeCleanupTasks", async (t) => { - const buildContext = new BuildContext("graph", "taskRepository"); + const graph = { + getRoot: () => ({getType: () => "library"}), + }; + const buildContext = new BuildContext(graph, "taskRepository"); const executeCleanupTasks = sinon.stub().resolves(); diff --git a/packages/project/test/lib/build/helpers/ProjectBuildContext.js b/packages/project/test/lib/build/helpers/ProjectBuildContext.js index 5cf8bcf24d6..03f9a568325 100644 --- a/packages/project/test/lib/build/helpers/ProjectBuildContext.js +++ b/packages/project/test/lib/build/helpers/ProjectBuildContext.js @@ -381,7 +381,10 @@ test.serial("createProjectContext", async (t) => { create: sinon.stub().resolves(taskRunner) } }); - const testBuildContext = new BuildContext("graph", "taskRepository"); + const graph = { + getRoot: () => ({getType: () => "library"}), + }; + const testBuildContext = new BuildContext(graph, "taskRepository"); const projectContext = await testBuildContext.createProjectContext({ project From 9021c4161b3c4a8c0e6dd779375d7854e203b860 Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Tue, 12 Dec 2023 14:17:05 +0000 Subject: [PATCH 1045/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.1.1 to 3.2.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.2.0/CHANGELOG.md --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index df2b01f8dcc..c3e0700da02 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.0.3", - "@ui5/builder": "^3.1.1", + "@ui5/builder": "^3.2.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1257,9 +1257,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.1.1.tgz", - "integrity": "sha512-FVALny9FKWzkDkoGZk9PO0XhL1jTS5FVX/5AhM6zvfBsCu0QPMCQrxkkvmWvv5ryJpjF0PCNBMhxejUBoPF+Yg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.2.0.tgz", + "integrity": "sha512-n6Z34iandeGPUS2x0OM7AdEvmnLbqqk9mfGuismuWx8gov2cawuJ/42B0BLamXRmlTqFPB7eGnaWry9tDK6h3Q==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.5", @@ -1274,7 +1274,7 @@ "pretty-data": "^0.40.0", "rimraf": "^5.0.5", "semver": "^7.5.4", - "terser": "^5.24.0", + "terser": "^5.26.0", "workerpool": "^6.5.1", "xml2js": "^0.6.2" }, diff --git a/packages/project/package.json b/packages/project/package.json index cb93ac6fbb2..8d7c3c81ff1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ }, "dependencies": { "@npmcli/config": "^8.0.3", - "@ui5/builder": "^3.1.1", + "@ui5/builder": "^3.2.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From 59dbe3a9581e3bedd85036e3a182c48b6a8f0728 Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Tue, 12 Dec 2023 14:29:51 +0000 Subject: [PATCH 1046/1272] [ui5-project]Release 3.9.0 --- packages/project/CHANGELOG.md | 10 +++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 3dba9f35b59..6a486b22b7b 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,14 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.8.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.9.0...HEAD). + + +## [v3.9.0] - 2023-12-12 +### Features +- **ProjectBuilder:** Add `outputStyle` option to request flat build output ([#624](https://github.com/SAP/ui5-project/issues/624)) [`79312fc`](https://github.com/SAP/ui5-project/commit/79312fcefea1ea97c1f3d403ac4470f890069809) +- **specVersion 3.2:** depCache bundling mode ([#673](https://github.com/SAP/ui5-project/issues/673)) [`68c5278`](https://github.com/SAP/ui5-project/commit/68c52782afbb617ddf110aca02d96f34a39ad5f7) + ## [v3.8.0] - 2023-11-20 @@ -486,6 +493,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.9.0]: https://github.com/SAP/ui5-project/compare/v3.8.0...v3.9.0 [v3.8.0]: https://github.com/SAP/ui5-project/compare/v3.7.3...v3.8.0 [v3.7.3]: https://github.com/SAP/ui5-project/compare/v3.7.2...v3.7.3 [v3.7.2]: https://github.com/SAP/ui5-project/compare/v3.7.1...v3.7.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c3e0700da02..28c6e1924a4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.8.0", + "version": "3.9.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.8.0", + "version": "3.9.0", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index 8d7c3c81ff1..bf3caec1ff6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.8.0", + "version": "3.9.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From bf2a00fa0d5f4dc11f07e8b53f682b75d2dbb2f5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 17 Dec 2023 03:20:33 +0000 Subject: [PATCH 1047/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 209 ++++++++++++++++------------- packages/project/package.json | 4 +- 2 files changed, 116 insertions(+), 97 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 28c6e1924a4..3ad93b252f3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,10 +40,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.55.0", + "eslint": "^8.56.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.9.0", + "eslint-plugin-jsdoc": "^46.9.1", "esmock": "^2.6.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", @@ -161,21 +161,21 @@ } }, "node_modules/@babel/core": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.5.tgz", - "integrity": "sha512-Cwc2XjUrG4ilcfOw4wBAK+enbdgwAcAJCfGUItPBKR7Mjw4aEfAFYrLxeRp4jWgtNIKn3n2AlBOfwwafl+42/g==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.6.tgz", + "integrity": "sha512-FxpRyGjrMJXh7X3wGLGhNDCRiwpWEF74sKjTLDJSG5Kyvow3QZaG0Adbqzi9ZrVjTWpsX+2cxWXD71NMg93kdw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.5", - "@babel/helper-compilation-targets": "^7.22.15", + "@babel/generator": "^7.23.6", + "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.5", - "@babel/parser": "^7.23.5", + "@babel/helpers": "^7.23.6", + "@babel/parser": "^7.23.6", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.5", - "@babel/types": "^7.23.5", + "@babel/traverse": "^7.23.6", + "@babel/types": "^7.23.6", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -200,12 +200,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.5.tgz", - "integrity": "sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", + "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", "dev": true, "dependencies": { - "@babel/types": "^7.23.5", + "@babel/types": "^7.23.6", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -215,14 +215,14 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", - "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.15", - "browserslist": "^4.21.9", + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -364,14 +364,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.5.tgz", - "integrity": "sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.6.tgz", + "integrity": "sha512-wCfsbN4nBidDRhpDhvcKlzHWCTlgJYUUdSJfzXb2NuBssDSIjc3xcb+znA7l+zYsFljAcGM0aFkN40cR3lXiGA==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.5", - "@babel/types": "^7.23.5" + "@babel/traverse": "^7.23.6", + "@babel/types": "^7.23.6" }, "engines": { "node": ">=6.9.0" @@ -442,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.5.tgz", - "integrity": "sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", + "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", "bin": { "parser": "bin/babel-parser.js" }, @@ -467,20 +467,20 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.5.tgz", - "integrity": "sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.6.tgz", + "integrity": "sha512-czastdK1e8YByZqezMPFiZ8ahwVMh/ESl9vPgvgdB9AmFMGP5jfpFax74AQgl5zj4XHzqeYAg2l8PuUeRS1MgQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.5", + "@babel/generator": "^7.23.6", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.5", - "@babel/types": "^7.23.5", - "debug": "^4.1.0", + "@babel/parser": "^7.23.6", + "@babel/types": "^7.23.6", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -488,9 +488,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.5.tgz", - "integrity": "sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", + "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.23.4", @@ -573,9 +573,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -612,9 +612,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.55.0.tgz", - "integrity": "sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1324,39 +1324,39 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.11.tgz", - "integrity": "sha512-h97/TGWBilnLuRaj58sxNrsUU66fwdRKLOLQ9N/5iNDfp+DZhYH9Obhe0bXxhedl8fjAgpRANpiZfbgWyruQ0w==", + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.12.tgz", + "integrity": "sha512-qAtjyG3GBLG0chzp5xGCyRLLe6wFCHmjI82aGzwuGKyznNP+GJJMxjc0wOYWDB2YKfho7niJFdoFpo0CZZQg9w==", "dev": true, "dependencies": { "@babel/parser": "^7.23.5", - "@vue/shared": "3.3.11", + "@vue/shared": "3.3.12", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.11.tgz", - "integrity": "sha512-zoAiUIqSKqAJ81WhfPXYmFGwDRuO+loqLxvXmfUdR5fOitPoUiIeFI9cTTyv9MU5O1+ZZglJVTusWzy+wfk5hw==", + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.12.tgz", + "integrity": "sha512-RdJU9oEYaoPKUdGXCy0l+i4clesdDeLmbvRlszoc9iagsnBnMmQtYfCPVQ5BHB6o7K4SCucDdJM2Dh3oXB0D6g==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.11", - "@vue/shared": "3.3.11" + "@vue/compiler-core": "3.3.12", + "@vue/shared": "3.3.12" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.11.tgz", - "integrity": "sha512-U4iqPlHO0KQeK1mrsxCN0vZzw43/lL8POxgpzcJweopmqtoYy9nljJzWDIQS3EfjiYhfdtdk9Gtgz7MRXnz3GA==", + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.12.tgz", + "integrity": "sha512-yy5b9e7b79dsGbMmglCe/YnhCQgBkHO7Uf6JfjWPSf2/5XH+MKn18LhzhHyxbHdJgnA4lZCqtXzLaJz8Pd8lMw==", "dev": true, "dependencies": { "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.11", - "@vue/compiler-dom": "3.3.11", - "@vue/compiler-ssr": "3.3.11", - "@vue/reactivity-transform": "3.3.11", - "@vue/shared": "3.3.11", + "@vue/compiler-core": "3.3.12", + "@vue/compiler-dom": "3.3.12", + "@vue/compiler-ssr": "3.3.12", + "@vue/reactivity-transform": "3.3.12", + "@vue/shared": "3.3.12", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.32", @@ -1364,32 +1364,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.11.tgz", - "integrity": "sha512-Zd66ZwMvndxRTgVPdo+muV4Rv9n9DwQ4SSgWWKWkPFebHQfVYRrVjeygmmDmPewsHyznCNvJ2P2d6iOOhdv8Qg==", + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.12.tgz", + "integrity": "sha512-adCiMJPznfWcQyk/9HSuXGja859IaMV+b8UNSVzDatqv7h0PvT9BEeS22+gjkWofDiSg5d78/ZLls3sLA+cn3A==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.11", - "@vue/shared": "3.3.11" + "@vue/compiler-dom": "3.3.12", + "@vue/shared": "3.3.12" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.11.tgz", - "integrity": "sha512-fPGjH0wqJo68A0wQ1k158utDq/cRyZNlFoxGwNScE28aUFOKFEnCBsvyD8jHn+0kd0UKVpuGuaZEQ6r9FJRqCg==", + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.12.tgz", + "integrity": "sha512-g5TijmML7FyKkLt6QnpqNmA4KD7K/T5SbXa88Bhq+hydNQEkzA8veVXWAQuNqg9rjaFYD0rPf0a9NofKA0ENgg==", "dev": true, "dependencies": { "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.11", - "@vue/shared": "3.3.11", + "@vue/compiler-core": "3.3.12", + "@vue/shared": "3.3.12", "estree-walker": "^2.0.2", "magic-string": "^0.30.5" } }, "node_modules/@vue/shared": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.11.tgz", - "integrity": "sha512-u2G8ZQ9IhMWTMXaWqZycnK4UthG1fA238CD+DP4Dm4WJi5hdUKKLg0RMRaRpDPNMdkTwIDkp7WtD0Rd9BH9fLw==", + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.12.tgz", + "integrity": "sha512-6p0Yin0pclvnER7BLNOQuod9Z+cxSYh8pSh7CzHnWNjAIP6zrTlCdHRvSCb1aYEx6i3Q3kvfuWU7nG16CgG1ag==", "dev": true }, "node_modules/abbrev": { @@ -2058,9 +2058,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001566", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001566.tgz", - "integrity": "sha512-ggIhCsTxmITBAMmK8yZjEhCO5/47jKXPu6Dha/wuCS4JePVL+3uiDEBuhu2aIoT+bqTOR8L76Ip1ARL9xYsEJA==", + "version": "1.0.30001570", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001570.tgz", + "integrity": "sha512-+3e0ASu4sw1SWaoCtvPeyXp+5PsjigkSt8OXZbF9StH5pQWbxEjLAZE3n8Aup5udop1uRiKA7a4utUk/uoSpUw==", "dev": true, "funding": [ { @@ -3270,9 +3270,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.609", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.609.tgz", - "integrity": "sha512-ihiCP7PJmjoGNuLpl7TjNA8pCQWu09vGyjlPYw1Rqww4gvNuCcmvl+44G+2QyJ6S2K4o+wbTS++Xz0YN8Q9ERw==", + "version": "1.4.614", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.614.tgz", + "integrity": "sha512-X4ze/9Sc3QWs6h92yerwqv7aB/uU8vCjZcrMjA8N9R1pjMFRe44dLsck5FzLilOYvcXuDn93B+bpGYyufc70gQ==", "dev": true }, "node_modules/emittery": { @@ -3392,15 +3392,15 @@ } }, "node_modules/eslint": { - "version": "8.55.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.55.0.tgz", - "integrity": "sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.55.0", + "@eslint/js": "8.56.0", "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -3481,9 +3481,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.9.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.9.0.tgz", - "integrity": "sha512-UQuEtbqLNkPf5Nr/6PPRCtr9xypXY+g8y/Q7gPa0YK7eDhh0y2lWprXRnaYbW7ACgIUvpDKy9X2bZqxtGzBG9Q==", + "version": "46.9.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.9.1.tgz", + "integrity": "sha512-11Ox5LCl2wY7gGkp9UOyew70o9qvii1daAH+h/MFobRVRNcy7sVlH+jm0HQdgcvcru6285GvpjpUyoa051j03Q==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.41.0", @@ -3494,7 +3494,7 @@ "esquery": "^1.5.0", "is-builtin-module": "^3.2.1", "semver": "^7.5.4", - "spdx-expression-parse": "^3.0.1" + "spdx-expression-parse": "^4.0.0" }, "engines": { "node": ">=16" @@ -3687,9 +3687,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -8615,15 +8615,25 @@ "spdx-license-ids": "^3.0.0" } }, + "node_modules/spdx-correct/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, "node_modules/spdx-exceptions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" }, "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", + "dev": true, "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" @@ -9489,6 +9499,15 @@ "spdx-expression-parse": "^3.0.0" } }, + "node_modules/validate-npm-package-license/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, "node_modules/validate-npm-package-name": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index bf3caec1ff6..4f805381ef8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -151,10 +151,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.55.0", + "eslint": "^8.56.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.9.0", + "eslint-plugin-jsdoc": "^46.9.1", "esmock": "^2.6.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", From 757b189046d3b3331ae411e46e144fecc60c9537 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 24 Dec 2023 03:20:34 +0000 Subject: [PATCH 1048/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 84 +++++++++++++++--------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3ad93b252f3..c0c16060792 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1324,39 +1324,39 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.3.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.12.tgz", - "integrity": "sha512-qAtjyG3GBLG0chzp5xGCyRLLe6wFCHmjI82aGzwuGKyznNP+GJJMxjc0wOYWDB2YKfho7niJFdoFpo0CZZQg9w==", + "version": "3.3.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.13.tgz", + "integrity": "sha512-bwi9HShGu7uaZLOErZgsH2+ojsEdsjerbf2cMXPwmvcgZfVPZ2BVZzCVnwZBxTAYd6Mzbmf6izcUNDkWnBBQ6A==", "dev": true, "dependencies": { "@babel/parser": "^7.23.5", - "@vue/shared": "3.3.12", + "@vue/shared": "3.3.13", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.12.tgz", - "integrity": "sha512-RdJU9oEYaoPKUdGXCy0l+i4clesdDeLmbvRlszoc9iagsnBnMmQtYfCPVQ5BHB6o7K4SCucDdJM2Dh3oXB0D6g==", + "version": "3.3.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.13.tgz", + "integrity": "sha512-EYRDpbLadGtNL0Gph+HoKiYqXLqZ0xSSpR5Dvnu/Ep7ggaCbjRDIus1MMxTS2Qm0koXED4xSlvTZaTnI8cYAsw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.12", - "@vue/shared": "3.3.12" + "@vue/compiler-core": "3.3.13", + "@vue/shared": "3.3.13" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.12.tgz", - "integrity": "sha512-yy5b9e7b79dsGbMmglCe/YnhCQgBkHO7Uf6JfjWPSf2/5XH+MKn18LhzhHyxbHdJgnA4lZCqtXzLaJz8Pd8lMw==", + "version": "3.3.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.13.tgz", + "integrity": "sha512-DQVmHEy/EKIgggvnGRLx21hSqnr1smUS9Aq8tfxiiot8UR0/pXKHN9k78/qQ7etyQTFj5em5nruODON7dBeumw==", "dev": true, "dependencies": { "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.12", - "@vue/compiler-dom": "3.3.12", - "@vue/compiler-ssr": "3.3.12", - "@vue/reactivity-transform": "3.3.12", - "@vue/shared": "3.3.12", + "@vue/compiler-core": "3.3.13", + "@vue/compiler-dom": "3.3.13", + "@vue/compiler-ssr": "3.3.13", + "@vue/reactivity-transform": "3.3.13", + "@vue/shared": "3.3.13", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.32", @@ -1364,32 +1364,32 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.12.tgz", - "integrity": "sha512-adCiMJPznfWcQyk/9HSuXGja859IaMV+b8UNSVzDatqv7h0PvT9BEeS22+gjkWofDiSg5d78/ZLls3sLA+cn3A==", + "version": "3.3.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.13.tgz", + "integrity": "sha512-d/P3bCeUGmkJNS1QUZSAvoCIW4fkOKK3l2deE7zrp0ypJEy+En2AcypIkqvcFQOcw3F0zt2VfMvNsA9JmExTaw==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.12", - "@vue/shared": "3.3.12" + "@vue/compiler-dom": "3.3.13", + "@vue/shared": "3.3.13" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.3.12", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.12.tgz", - "integrity": "sha512-g5TijmML7FyKkLt6QnpqNmA4KD7K/T5SbXa88Bhq+hydNQEkzA8veVXWAQuNqg9rjaFYD0rPf0a9NofKA0ENgg==", + "version": "3.3.13", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.13.tgz", + "integrity": "sha512-oWnydGH0bBauhXvh5KXUy61xr9gKaMbtsMHk40IK9M4gMuKPJ342tKFarY0eQ6jef8906m35q37wwA8DMZOm5Q==", "dev": true, "dependencies": { "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.12", - "@vue/shared": "3.3.12", + "@vue/compiler-core": "3.3.13", + "@vue/shared": "3.3.13", "estree-walker": "^2.0.2", "magic-string": "^0.30.5" } }, "node_modules/@vue/shared": { - "version": "3.3.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.12.tgz", - "integrity": "sha512-6p0Yin0pclvnER7BLNOQuod9Z+cxSYh8pSh7CzHnWNjAIP6zrTlCdHRvSCb1aYEx6i3Q3kvfuWU7nG16CgG1ag==", + "version": "3.3.13", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.13.tgz", + "integrity": "sha512-/zYUwiHD8j7gKx2argXEMCUXVST6q/21DFU0sTfNX0URJroCe3b1UF6vLJ3lQDfLNIiiRl2ONp7Nh5UVWS6QnA==", "dev": true }, "node_modules/abbrev": { @@ -2058,9 +2058,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001570", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001570.tgz", - "integrity": "sha512-+3e0ASu4sw1SWaoCtvPeyXp+5PsjigkSt8OXZbF9StH5pQWbxEjLAZE3n8Aup5udop1uRiKA7a4utUk/uoSpUw==", + "version": "1.0.30001571", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001571.tgz", + "integrity": "sha512-tYq/6MoXhdezDLFZuCO/TKboTzuQ/xR5cFdgXPfDtM7/kchBO3b4VWghE/OAi/DV7tTdhmLjZiZBZi1fA/GheQ==", "dev": true, "funding": [ { @@ -3270,9 +3270,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.614", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.614.tgz", - "integrity": "sha512-X4ze/9Sc3QWs6h92yerwqv7aB/uU8vCjZcrMjA8N9R1pjMFRe44dLsck5FzLilOYvcXuDn93B+bpGYyufc70gQ==", + "version": "1.4.616", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.616.tgz", + "integrity": "sha512-1n7zWYh8eS0L9Uy+GskE0lkBUNK83cXTVJI0pU3mGprFsbfSdAc15VTFbo+A+Bq4pwstmL30AVcEU3Fo463lNg==", "dev": true }, "node_modules/emittery": { @@ -3991,9 +3991,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", + "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", "dependencies": { "reusify": "^1.0.4" } @@ -6530,9 +6530,9 @@ } }, "node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.2.0.tgz", + "integrity": "sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==", "dev": true, "dependencies": { "path-key": "^4.0.0" From 38f8b01b2c7de1fd6d558e2ca475c01785d949a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Dec 2023 05:23:03 +0000 Subject: [PATCH 1049/1272] [ui5-project]Bump actions/setup-node from 4.0.0 to 4.0.1 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.0 to 4.0.1. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4.0.0...v4.0.1) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index f05a7f4d472..d93b9d11345 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Node.js LTS 16.18.0 - uses: actions/setup-node@v4.0.0 + uses: actions/setup-node@v4.0.1 with: node-version: 16.18.0 From 96d4d2c549fe3c2d06fd718f79f97fff941437f7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 31 Dec 2023 03:20:34 +0000 Subject: [PATCH 1050/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 125 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 57 insertions(+), 70 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c0c16060792..ab98cb95728 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^8.56.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.9.1", + "eslint-plugin-jsdoc": "^46.10.1", "esmock": "^2.6.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", @@ -161,9 +161,9 @@ } }, "node_modules/@babel/core": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.6.tgz", - "integrity": "sha512-FxpRyGjrMJXh7X3wGLGhNDCRiwpWEF74sKjTLDJSG5Kyvow3QZaG0Adbqzi9ZrVjTWpsX+2cxWXD71NMg93kdw==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.7.tgz", + "integrity": "sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -171,10 +171,10 @@ "@babel/generator": "^7.23.6", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.6", + "@babel/helpers": "^7.23.7", "@babel/parser": "^7.23.6", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.6", + "@babel/traverse": "^7.23.7", "@babel/types": "^7.23.6", "convert-source-map": "^2.0.0", "debug": "^4.1.0", @@ -364,13 +364,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.6.tgz", - "integrity": "sha512-wCfsbN4nBidDRhpDhvcKlzHWCTlgJYUUdSJfzXb2NuBssDSIjc3xcb+znA7l+zYsFljAcGM0aFkN40cR3lXiGA==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.7.tgz", + "integrity": "sha512-6AMnjCoC8wjqBzDHkuqpa7jAKwvMo4dC+lr/TFBz+ucfulO1XMpDnwWPGBNwClOKZ8h6xn5N81W/R5OrcKtCbQ==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.6", + "@babel/traverse": "^7.23.7", "@babel/types": "^7.23.6" }, "engines": { @@ -467,9 +467,9 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.6.tgz", - "integrity": "sha512-czastdK1e8YByZqezMPFiZ8ahwVMh/ESl9vPgvgdB9AmFMGP5jfpFax74AQgl5zj4XHzqeYAg2l8PuUeRS1MgQ==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", + "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", @@ -1324,39 +1324,39 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.13.tgz", - "integrity": "sha512-bwi9HShGu7uaZLOErZgsH2+ojsEdsjerbf2cMXPwmvcgZfVPZ2BVZzCVnwZBxTAYd6Mzbmf6izcUNDkWnBBQ6A==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.3.tgz", + "integrity": "sha512-u8jzgFg0EDtSrb/hG53Wwh1bAOQFtc1ZCegBpA/glyvTlgHl+tq13o1zvRfLbegYUw/E4mSTGOiCnAJ9SJ+lsg==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.5", - "@vue/shared": "3.3.13", + "@babel/parser": "^7.23.6", + "@vue/shared": "3.4.3", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.13.tgz", - "integrity": "sha512-EYRDpbLadGtNL0Gph+HoKiYqXLqZ0xSSpR5Dvnu/Ep7ggaCbjRDIus1MMxTS2Qm0koXED4xSlvTZaTnI8cYAsw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.3.tgz", + "integrity": "sha512-oGF1E9/htI6JWj/lTJgr6UgxNCtNHbM6xKVreBWeZL9QhRGABRVoWGAzxmtBfSOd+w0Zi5BY0Es/tlJrN6WgEg==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.13", - "@vue/shared": "3.3.13" + "@vue/compiler-core": "3.4.3", + "@vue/shared": "3.4.3" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.13.tgz", - "integrity": "sha512-DQVmHEy/EKIgggvnGRLx21hSqnr1smUS9Aq8tfxiiot8UR0/pXKHN9k78/qQ7etyQTFj5em5nruODON7dBeumw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.3.tgz", + "integrity": "sha512-NuJqb5is9I4uzv316VRUDYgIlPZCG8D+ARt5P4t5UDShIHKL25J3TGZAUryY/Aiy0DsY7srJnZL5ryB6DD63Zw==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.13", - "@vue/compiler-dom": "3.3.13", - "@vue/compiler-ssr": "3.3.13", - "@vue/reactivity-transform": "3.3.13", - "@vue/shared": "3.3.13", + "@babel/parser": "^7.23.6", + "@vue/compiler-core": "3.4.3", + "@vue/compiler-dom": "3.4.3", + "@vue/compiler-ssr": "3.4.3", + "@vue/shared": "3.4.3", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.32", @@ -1364,32 +1364,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.13.tgz", - "integrity": "sha512-d/P3bCeUGmkJNS1QUZSAvoCIW4fkOKK3l2deE7zrp0ypJEy+En2AcypIkqvcFQOcw3F0zt2VfMvNsA9JmExTaw==", - "dev": true, - "dependencies": { - "@vue/compiler-dom": "3.3.13", - "@vue/shared": "3.3.13" - } - }, - "node_modules/@vue/reactivity-transform": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.13.tgz", - "integrity": "sha512-oWnydGH0bBauhXvh5KXUy61xr9gKaMbtsMHk40IK9M4gMuKPJ342tKFarY0eQ6jef8906m35q37wwA8DMZOm5Q==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.3.tgz", + "integrity": "sha512-wnYQtMBkeFSxgSSQbYGQeXPhQacQiog2c6AlvMldQH6DB+gSXK/0F6DVXAJfEiuBSgBhUc8dwrrG5JQcqwalsA==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.5", - "@vue/compiler-core": "3.3.13", - "@vue/shared": "3.3.13", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.5" + "@vue/compiler-dom": "3.4.3", + "@vue/shared": "3.4.3" } }, "node_modules/@vue/shared": { - "version": "3.3.13", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.13.tgz", - "integrity": "sha512-/zYUwiHD8j7gKx2argXEMCUXVST6q/21DFU0sTfNX0URJroCe3b1UF6vLJ3lQDfLNIiiRl2ONp7Nh5UVWS6QnA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.3.tgz", + "integrity": "sha512-rIwlkkP1n4uKrRzivAKPZIEkHiuwY5mmhMJ2nZKCBLz8lTUlE73rQh4n1OnnMurXt1vcUNyH4ZPfdh8QweTjpQ==", "dev": true }, "node_modules/abbrev": { @@ -1401,9 +1388,9 @@ } }, "node_modules/acorn": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", - "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "bin": { "acorn": "bin/acorn" }, @@ -2058,9 +2045,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001571", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001571.tgz", - "integrity": "sha512-tYq/6MoXhdezDLFZuCO/TKboTzuQ/xR5cFdgXPfDtM7/kchBO3b4VWghE/OAi/DV7tTdhmLjZiZBZi1fA/GheQ==", + "version": "1.0.30001572", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001572.tgz", + "integrity": "sha512-1Pbh5FLmn5y4+QhNyJE9j3/7dK44dGB83/ZMjv/qJk86TvDbjk0LosiZo0i0WB0Vx607qMX9jYrn1VLHCkN4rw==", "dev": true, "funding": [ { @@ -3481,9 +3468,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.9.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.9.1.tgz", - "integrity": "sha512-11Ox5LCl2wY7gGkp9UOyew70o9qvii1daAH+h/MFobRVRNcy7sVlH+jm0HQdgcvcru6285GvpjpUyoa051j03Q==", + "version": "46.10.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.10.1.tgz", + "integrity": "sha512-x8wxIpv00Y50NyweDUpa+58ffgSAI5sqe+zcZh33xphD0AVh+1kqr1ombaTRb7Fhpove1zfUuujlX9DWWBP5ag==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.41.0", @@ -3500,7 +3487,7 @@ "node": ">=16" }, "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" + "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" } }, "node_modules/eslint-plugin-jsdoc/node_modules/escape-string-regexp": { @@ -7826,9 +7813,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.8.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.3.tgz", - "integrity": "sha512-//BaTm14Q/gHBn09xlnKNqfI8t6bmdzx2DXYfPBNofN0WUybCEUDcbCWcTa0oF09lzLjZgPphXAsvRiMK0V6Bw==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.9.0.tgz", + "integrity": "sha512-KS/6lh/ynPGiHD/LnAobrEFq3Ad4pBzOlJ1wAnJx9N4EYoqFhMfLIBjUT2UEx4wg5ZE+cC1ob6DCSpppVo+rtg==", "engines": { "node": ">=16" }, @@ -7926,9 +7913,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.8.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.8.3.tgz", - "integrity": "sha512-//BaTm14Q/gHBn09xlnKNqfI8t6bmdzx2DXYfPBNofN0WUybCEUDcbCWcTa0oF09lzLjZgPphXAsvRiMK0V6Bw==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.9.0.tgz", + "integrity": "sha512-KS/6lh/ynPGiHD/LnAobrEFq3Ad4pBzOlJ1wAnJx9N4EYoqFhMfLIBjUT2UEx4wg5ZE+cC1ob6DCSpppVo+rtg==", "engines": { "node": ">=16" }, diff --git a/packages/project/package.json b/packages/project/package.json index 4f805381ef8..6c734e468b9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -154,7 +154,7 @@ "eslint": "^8.56.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.9.1", + "eslint-plugin-jsdoc": "^46.10.1", "esmock": "^2.6.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", From 22684dca02db364dd1c5c2eb5ee78ef6516a0691 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 2 Jan 2024 13:44:41 +0100 Subject: [PATCH 1051/1272] [ui5-project][INTERNAL] Update copyright year to 2024 JIRA: CPOUI5FOUNDATION-617 --- packages/project/.reuse/dep5 | 2 +- packages/project/LICENSE.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/.reuse/dep5 b/packages/project/.reuse/dep5 index 6911ce28f11..8fb1071266f 100644 --- a/packages/project/.reuse/dep5 +++ b/packages/project/.reuse/dep5 @@ -25,5 +25,5 @@ Disclaimer: The code in this project may include calls to APIs (“API Calls”) parties the right to use of access any SAP External Product, through API Calls. Files: * -Copyright: 2018-2023 SAP SE or an SAP affiliate company and UI5 Tooling contributors +Copyright: 2018-2024 SAP SE or an SAP affiliate company and UI5 Tooling contributors License: Apache-2.0 diff --git a/packages/project/LICENSE.txt b/packages/project/LICENSE.txt index a6e7b274014..f53be831425 100644 --- a/packages/project/LICENSE.txt +++ b/packages/project/LICENSE.txt @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2018-2023 SAP SE or an SAP affiliate company and UI5 Tooling contributors + Copyright 2018-2024 SAP SE or an SAP affiliate company and UI5 Tooling contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. From 37c229e5b9005f6ae1b3ddd5b4e7e3ae73176868 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 7 Jan 2024 03:20:30 +0000 Subject: [PATCH 1052/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 90 +++++++++++++++--------------- 1 file changed, 45 insertions(+), 45 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ab98cb95728..0c11acea36c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -923,9 +923,9 @@ } }, "node_modules/@npmcli/git": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.3.tgz", - "integrity": "sha512-UZp9NwK+AynTrKvHn5k3KviW/hA5eENmFsu3iAPe7sWRt0lFUdsY/wXIYjpDFe7cdSNwOIzbObfwgt6eL5/2zw==", + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.4.tgz", + "integrity": "sha512-nr6/WezNzuYUppzXRaYu/W4aT5rLxdXqEFupbh6e/ovlYFQ8hpu1UUPV3Ir/YTl+74iXl2ZOMlGzudh9ZPUchQ==", "dependencies": { "@npmcli/promise-spawn": "^7.0.0", "lru-cache": "^10.0.1", @@ -1016,9 +1016,9 @@ } }, "node_modules/@npmcli/promise-spawn": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.0.tgz", - "integrity": "sha512-wBqcGsMELZna0jDblGd7UXgOby45TQaMWmbFwWX+SEotk4HV6zG2t6rT9siyLhPk4P6YYqgfL1UO8nMWDBVJXQ==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.1.tgz", + "integrity": "sha512-P4KkF9jX3y+7yFUxgcUdDtLy+t4OlDGuEBLNs57AZsfSfg+uV6MLndqGpnl4831ggaEdXwR50XFoZP4VFtHolg==", "dependencies": { "which": "^4.0.0" }, @@ -1049,9 +1049,9 @@ } }, "node_modules/@npmcli/run-script": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.2.tgz", - "integrity": "sha512-Omu0rpA8WXvcGeY6DDzyRoY1i5DkCBkzyJ+m2u7PD6quzb0TvSqdIPOkTn8ZBOj7LbbcbMfZ3c5skwSu6m8y2w==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.3.tgz", + "integrity": "sha512-ZMWGLHpzMq3rBGIwPyeaoaleaLMvrBrH8nugHxTi5ACkJZXTxXPtVuEH91ifgtss5hUwJQ2VDnzDBWPmz78rvg==", "dependencies": { "@npmcli/node-gyp": "^3.0.0", "@npmcli/promise-spawn": "^7.0.0", @@ -1324,39 +1324,39 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.3.tgz", - "integrity": "sha512-u8jzgFg0EDtSrb/hG53Wwh1bAOQFtc1ZCegBpA/glyvTlgHl+tq13o1zvRfLbegYUw/E4mSTGOiCnAJ9SJ+lsg==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.5.tgz", + "integrity": "sha512-Daka7P1z2AgKjzuueWXhwzIsKu0NkLB6vGbNVEV2iJ8GJTrzraZo/Sk4GWCMRtd/qVi3zwnk+Owbd/xSZbwHtQ==", "dev": true, "dependencies": { "@babel/parser": "^7.23.6", - "@vue/shared": "3.4.3", + "@vue/shared": "3.4.5", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.3.tgz", - "integrity": "sha512-oGF1E9/htI6JWj/lTJgr6UgxNCtNHbM6xKVreBWeZL9QhRGABRVoWGAzxmtBfSOd+w0Zi5BY0Es/tlJrN6WgEg==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.5.tgz", + "integrity": "sha512-J8YlxknJVd90SXFJ4HwGANSAXsx5I0lK30sO/zvYV7s5gXf7gZR7r/1BmZ2ju7RGH1lnc6bpBc6nL61yW+PsAQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.3", - "@vue/shared": "3.4.3" + "@vue/compiler-core": "3.4.5", + "@vue/shared": "3.4.5" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.3.tgz", - "integrity": "sha512-NuJqb5is9I4uzv316VRUDYgIlPZCG8D+ARt5P4t5UDShIHKL25J3TGZAUryY/Aiy0DsY7srJnZL5ryB6DD63Zw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.5.tgz", + "integrity": "sha512-jauvkDuSSUbP0ebhfNqljhShA90YEfX/0wZ+w40oZF43IjGyWYjqYaJbvMJwGOd+9+vODW6eSvnk28f0SGV7OQ==", "dev": true, "dependencies": { "@babel/parser": "^7.23.6", - "@vue/compiler-core": "3.4.3", - "@vue/compiler-dom": "3.4.3", - "@vue/compiler-ssr": "3.4.3", - "@vue/shared": "3.4.3", + "@vue/compiler-core": "3.4.5", + "@vue/compiler-dom": "3.4.5", + "@vue/compiler-ssr": "3.4.5", + "@vue/shared": "3.4.5", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.32", @@ -1364,19 +1364,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.3.tgz", - "integrity": "sha512-wnYQtMBkeFSxgSSQbYGQeXPhQacQiog2c6AlvMldQH6DB+gSXK/0F6DVXAJfEiuBSgBhUc8dwrrG5JQcqwalsA==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.5.tgz", + "integrity": "sha512-DDdEcDzj2lWTMfUMMtEpLDhURai9LhM0zSZ219jCt7b2Vyl0/jy3keFgCPMitG0V1S1YG4Cmws3lWHWdxHQOpg==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.3", - "@vue/shared": "3.4.3" + "@vue/compiler-dom": "3.4.5", + "@vue/shared": "3.4.5" } }, "node_modules/@vue/shared": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.3.tgz", - "integrity": "sha512-rIwlkkP1n4uKrRzivAKPZIEkHiuwY5mmhMJ2nZKCBLz8lTUlE73rQh4n1OnnMurXt1vcUNyH4ZPfdh8QweTjpQ==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz", + "integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg==", "dev": true }, "node_modules/abbrev": { @@ -1844,9 +1844,9 @@ } }, "node_modules/cacache": { - "version": "18.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.1.tgz", - "integrity": "sha512-g4Uf2CFZPaxtJKre6qr4zqLDOOPU7bNVhWjlNhvzc51xaTOx2noMOLhfFkTAqwtrAZAKQUuDfyjitzilpA8WsQ==", + "version": "18.0.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.2.tgz", + "integrity": "sha512-r3NU8h/P+4lVUHfeRw1dtgQYar3DZMm4/cm2bZgOvrFC/su7budSOeqh52VJIC4U4iG1WWwV6vRW0znqBvxNuw==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", @@ -2045,9 +2045,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001572", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001572.tgz", - "integrity": "sha512-1Pbh5FLmn5y4+QhNyJE9j3/7dK44dGB83/ZMjv/qJk86TvDbjk0LosiZo0i0WB0Vx607qMX9jYrn1VLHCkN4rw==", + "version": "1.0.30001574", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001574.tgz", + "integrity": "sha512-BtYEK4r/iHt/txm81KBudCUcTy7t+s9emrIaHqjYurQ10x71zJ5VQ9x1dYPcz/b+pKSp4y/v1xSI67A+LzpNyg==", "dev": true, "funding": [ { @@ -3257,9 +3257,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.616", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.616.tgz", - "integrity": "sha512-1n7zWYh8eS0L9Uy+GskE0lkBUNK83cXTVJI0pU3mGprFsbfSdAc15VTFbo+A+Bq4pwstmL30AVcEU3Fo463lNg==", + "version": "1.4.623", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.623.tgz", + "integrity": "sha512-lKoz10iCYlP1WtRYdh5MvocQPWVRoI7ysp6qf18bmeBgR8abE6+I2CsfyNKztRDZvhdWc+krKT6wS7Neg8sw3A==", "dev": true }, "node_modules/emittery": { @@ -7473,9 +7473,9 @@ } }, "node_modules/postcss": { - "version": "8.4.32", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz", - "integrity": "sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==", + "version": "8.4.33", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz", + "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==", "dev": true, "funding": [ { From 4ec9e5892e153a77d58cc9e9dcff51205441bd47 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 8 Jan 2024 11:30:12 +0000 Subject: [PATCH 1053/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0c11acea36c..2fc99338ef0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2045,9 +2045,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001574", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001574.tgz", - "integrity": "sha512-BtYEK4r/iHt/txm81KBudCUcTy7t+s9emrIaHqjYurQ10x71zJ5VQ9x1dYPcz/b+pKSp4y/v1xSI67A+LzpNyg==", + "version": "1.0.30001576", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001576.tgz", + "integrity": "sha512-ff5BdakGe2P3SQsMsiqmt1Lc8221NR1VzHj5jXN5vBny9A6fpze94HiVV/n7XRosOlsShJcvMv5mdnpjOGCEgg==", "dev": true, "funding": [ { From f81c4dffbbcede91b99b0460b852d67922b60011 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 14 Jan 2024 03:20:39 +0000 Subject: [PATCH 1054/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 228 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 119 insertions(+), 111 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2fc99338ef0..8850c57eb93 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "3.9.0", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.0.3", + "@npmcli/config": "^8.1.0", "@ui5/builder": "^3.2.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -364,9 +364,9 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.7.tgz", - "integrity": "sha512-6AMnjCoC8wjqBzDHkuqpa7jAKwvMo4dC+lr/TFBz+ucfulO1XMpDnwWPGBNwClOKZ8h6xn5N81W/R5OrcKtCbQ==", + "version": "7.23.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.8.tgz", + "integrity": "sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", @@ -621,13 +621,13 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.13", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", - "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^2.0.1", - "debug": "^4.1.1", + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", "minimatch": "^3.0.5" }, "engines": { @@ -670,9 +670,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", - "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, "node_modules/@isaacs/cliui": { @@ -819,9 +819,9 @@ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", - "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", + "version": "0.3.21", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.21.tgz", + "integrity": "sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -894,9 +894,9 @@ } }, "node_modules/@npmcli/config": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.0.3.tgz", - "integrity": "sha512-rqRX7/UORvm2YRImY67kyfwD9rpi5+KXXb1j/cpTUKRcUqvpJ9/PMMc7Vv57JVqmrFj8siBBFEmXI3Gg7/TonQ==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.1.0.tgz", + "integrity": "sha512-61LNEybTFaa9Z/f8y6X9s2Blc75aijZK67LxqC5xicBcfkw8M/88nYrRXGXxAUKm6GRlxTZ216dp1UK2+TbaYw==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^4.0.0", @@ -1101,9 +1101,9 @@ } }, "node_modules/@sigstore/bundle": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.0.tgz", - "integrity": "sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.1.tgz", + "integrity": "sha512-v3/iS+1nufZdKQ5iAlQKcCsoh0jffQyABvYIxKsZQFWc4ubuGjwZklFHpDgV6O6T7vvV78SW5NHI91HFKEcxKg==", "dependencies": { "@sigstore/protobuf-specs": "^0.2.1" }, @@ -1111,6 +1111,14 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/@sigstore/core": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-0.2.0.tgz", + "integrity": "sha512-THobAPPZR9pDH2CAvDLpkrYedt7BlZnsyxDe+Isq4ZmGfPy5juOFZq487vCU2EgKD7aHSiTfE/i7sN7aEdzQnA==", + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/@sigstore/protobuf-specs": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", @@ -1120,11 +1128,12 @@ } }, "node_modules/@sigstore/sign": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.0.tgz", - "integrity": "sha512-AAbmnEHDQv6CSfrWA5wXslGtzLPtAtHZleKOgxdQYvx/s76Fk6T6ZVt7w2IGV9j1UrFeBocTTQxaXG2oRrDhYA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.1.tgz", + "integrity": "sha512-U5sKQEj+faE1MsnLou1f4DQQHeFZay+V9s9768lw48J4pKykPj34rWyI1lsMOGJ3Mae47Ye6q3HAJvgXO21rkQ==", "dependencies": { - "@sigstore/bundle": "^2.1.0", + "@sigstore/bundle": "^2.1.1", + "@sigstore/core": "^0.2.0", "@sigstore/protobuf-specs": "^0.2.1", "make-fetch-happen": "^13.0.0" }, @@ -1133,12 +1142,25 @@ } }, "node_modules/@sigstore/tuf": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.2.0.tgz", - "integrity": "sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.0.tgz", + "integrity": "sha512-S98jo9cpJwO1mtQ+2zY7bOdcYyfVYCUaofCG6wWRzk3pxKHVAkSfshkfecto2+LKsx7Ovtqbgb2LS8zTRhxJ9Q==", "dependencies": { "@sigstore/protobuf-specs": "^0.2.1", - "tuf-js": "^2.1.0" + "tuf-js": "^2.2.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/verify": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-0.1.0.tgz", + "integrity": "sha512-2UzMNYAa/uaz11NhvgRnIQf4gpLTJ59bhb8ESXaoSS5sxedfS+eLak8bsdMc+qpNQfITUTFoSKFx5h8umlRRiA==", + "dependencies": { + "@sigstore/bundle": "^2.1.1", + "@sigstore/core": "^0.2.0", + "@sigstore/protobuf-specs": "^0.2.1" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -1324,39 +1346,39 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.4.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.5.tgz", - "integrity": "sha512-Daka7P1z2AgKjzuueWXhwzIsKu0NkLB6vGbNVEV2iJ8GJTrzraZo/Sk4GWCMRtd/qVi3zwnk+Owbd/xSZbwHtQ==", + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.13.tgz", + "integrity": "sha512-zGUdmB3j3Irn9z51GXLJ5s0EAHxmsm5/eXl0y6MBaajMeOAaiT4+zaDoxui4Ets98dwIRr8BBaqXXHtHSfm+KA==", "dev": true, "dependencies": { "@babel/parser": "^7.23.6", - "@vue/shared": "3.4.5", + "@vue/shared": "3.4.13", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.5.tgz", - "integrity": "sha512-J8YlxknJVd90SXFJ4HwGANSAXsx5I0lK30sO/zvYV7s5gXf7gZR7r/1BmZ2ju7RGH1lnc6bpBc6nL61yW+PsAQ==", + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.13.tgz", + "integrity": "sha512-XSNbpr5Rs3kCfVAmBqMu/HDwOS+RL6y28ZZjDlnDUuf146pRWt2sQkwhsOYc9uu2lxjjJy2NcyOkK7MBLVEc7w==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.5", - "@vue/shared": "3.4.5" + "@vue/compiler-core": "3.4.13", + "@vue/shared": "3.4.13" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.5.tgz", - "integrity": "sha512-jauvkDuSSUbP0ebhfNqljhShA90YEfX/0wZ+w40oZF43IjGyWYjqYaJbvMJwGOd+9+vODW6eSvnk28f0SGV7OQ==", + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.13.tgz", + "integrity": "sha512-SkpmQN8xIFBd5onT413DFSDdjxULJf6jmJg/t3w/DZ9I8ZzyNlLIBLO0qFLewVHyHCiAgpPZlWqSRZXYrawk3Q==", "dev": true, "dependencies": { "@babel/parser": "^7.23.6", - "@vue/compiler-core": "3.4.5", - "@vue/compiler-dom": "3.4.5", - "@vue/compiler-ssr": "3.4.5", - "@vue/shared": "3.4.5", + "@vue/compiler-core": "3.4.13", + "@vue/compiler-dom": "3.4.13", + "@vue/compiler-ssr": "3.4.13", + "@vue/shared": "3.4.13", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.32", @@ -1364,19 +1386,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.5.tgz", - "integrity": "sha512-DDdEcDzj2lWTMfUMMtEpLDhURai9LhM0zSZ219jCt7b2Vyl0/jy3keFgCPMitG0V1S1YG4Cmws3lWHWdxHQOpg==", + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.13.tgz", + "integrity": "sha512-rwnw9SVBgD6eGKh8UucnwztieQo/R3RQrEGpE0b0cxb2xxvJeLs/fe7DoYlhEfaSyzM/qD5odkK87hl3G3oW+A==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.5", - "@vue/shared": "3.4.5" + "@vue/compiler-dom": "3.4.13", + "@vue/shared": "3.4.13" } }, "node_modules/@vue/shared": { - "version": "3.4.5", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz", - "integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg==", + "version": "3.4.13", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.13.tgz", + "integrity": "sha512-56crFKLPpzk85WXX1L1c0QzPOuoapWlPVys8eMG8kkRmqdMjWUqK8KpFdE2d7BQA4CEbXwyyHPq6MpFr8H9rcg==", "dev": true }, "node_modules/abbrev": { @@ -1407,9 +1429,9 @@ } }, "node_modules/acorn-walk": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.1.tgz", - "integrity": "sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", "dev": true, "engines": { "node": ">=0.4.0" @@ -3257,9 +3279,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.623", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.623.tgz", - "integrity": "sha512-lKoz10iCYlP1WtRYdh5MvocQPWVRoI7ysp6qf18bmeBgR8abE6+I2CsfyNKztRDZvhdWc+krKT6wS7Neg8sw3A==", + "version": "1.4.630", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.630.tgz", + "integrity": "sha512-osHqhtjojpCsACVnuD11xO5g9xaCyw7Qqn/C2KParkMv42i8jrJJgx3g7mkHfpxwhy9MnOJr8+pKOdZ7qzgizg==", "dev": true }, "node_modules/emittery": { @@ -4961,9 +4983,9 @@ } }, "node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true }, "node_modules/isexe": { @@ -5337,9 +5359,9 @@ ] }, "node_modules/just-extend": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", - "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-6.2.0.tgz", + "integrity": "sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw==", "dev": true }, "node_modules/keyv": { @@ -6268,25 +6290,25 @@ } }, "node_modules/nise": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.5.tgz", - "integrity": "sha512-VJuPIfUFaXNRzETTQEEItTOP8Y171ijr+JLq42wHes3DiryR8vT+1TXQW/Rx8JNUhyYYWyIvjXTU6dOhJcs9Nw==", + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.7.tgz", + "integrity": "sha512-wWtNUhkT7k58uvWTB/Gy26eA/EJKtPZFVAhEilN5UYVmmGRYOURbejRUyKm0Uu9XVEW7K5nBOZfR8VMB4QR2RQ==", "dev": true, "dependencies": { - "@sinonjs/commons": "^2.0.0", - "@sinonjs/fake-timers": "^10.0.2", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "path-to-regexp": "^1.7.0" + "@sinonjs/commons": "^3.0.0", + "@sinonjs/fake-timers": "^11.2.2", + "@sinonjs/text-encoding": "^0.7.2", + "just-extend": "^6.2.0", + "path-to-regexp": "^6.2.1" } }, - "node_modules/nise/node_modules/@sinonjs/commons": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", - "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "node_modules/nise/node_modules/@sinonjs/fake-timers": { + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", + "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", "dev": true, "dependencies": { - "type-detect": "4.0.8" + "@sinonjs/commons": "^3.0.0" } }, "node_modules/node-gyp": { @@ -6475,9 +6497,9 @@ } }, "node_modules/npm-packlist": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.1.tgz", - "integrity": "sha512-MQpL27ZrsJQ2kiAuQPpZb5LtJwydNRnI15QWXsf3WHERu4rzjRj6Zju/My2fov7tLuu3Gle/uoIX/DDZ3u4O4Q==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", + "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==", "dependencies": { "ignore-walk": "^6.0.4" }, @@ -7231,13 +7253,10 @@ } }, "node_modules/path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dev": true, - "dependencies": { - "isarray": "0.0.1" - } + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", + "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==", + "dev": true }, "node_modules/path-type": { "version": "4.0.0", @@ -8357,14 +8376,16 @@ } }, "node_modules/sigstore": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.1.0.tgz", - "integrity": "sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.2.0.tgz", + "integrity": "sha512-fcU9clHwEss2/M/11FFM8Jwc4PjBgbhXoNskoK5guoK0qGQBSeUbQZRJ+B2fDFIvhyf0gqCaPrel9mszbhAxug==", "dependencies": { - "@sigstore/bundle": "^2.1.0", + "@sigstore/bundle": "^2.1.1", + "@sigstore/core": "^0.2.0", "@sigstore/protobuf-specs": "^0.2.1", - "@sigstore/sign": "^2.1.0", - "@sigstore/tuf": "^2.1.0" + "@sigstore/sign": "^2.2.1", + "@sigstore/tuf": "^2.3.0", + "@sigstore/verify": "^0.1.0" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -8943,13 +8964,6 @@ "sprintf-js": "~1.0.2" } }, - "node_modules/tap-parser/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "optional": true - }, "node_modules/tap-parser/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -9210,12 +9224,6 @@ "xtend": "~4.0.1" } }, - "node_modules/through2/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, "node_modules/through2/node_modules/readable-stream": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", @@ -9317,9 +9325,9 @@ } }, "node_modules/tuf-js": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.1.0.tgz", - "integrity": "sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.0.tgz", + "integrity": "sha512-ZSDngmP1z6zw+FIkIBjvOp/II/mIub/O7Pp12j1WNsiCpg5R5wAc//i555bBQsE44O94btLt0xM/Zr2LQjwdCg==", "dependencies": { "@tufjs/models": "2.0.0", "debug": "^4.3.4", diff --git a/packages/project/package.json b/packages/project/package.json index 6c734e468b9..513462dd07a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.0.3", + "@npmcli/config": "^8.1.0", "@ui5/builder": "^3.2.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", From c224f8a5e975979d49302cceec3dcd054019ff53 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 18 Jan 2024 12:02:22 +0000 Subject: [PATCH 1055/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 86 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8850c57eb93..d79531bb382 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -23,7 +23,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^13.0.0", "node-stream-zip": "^1.15.0", - "pacote": "^17.0.5", + "pacote": "^17.0.6", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", @@ -44,7 +44,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.10.1", - "esmock": "^2.6.0", + "esmock": "^2.6.2", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", @@ -1346,59 +1346,59 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.4.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.13.tgz", - "integrity": "sha512-zGUdmB3j3Irn9z51GXLJ5s0EAHxmsm5/eXl0y6MBaajMeOAaiT4+zaDoxui4Ets98dwIRr8BBaqXXHtHSfm+KA==", + "version": "3.4.14", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.14.tgz", + "integrity": "sha512-ro4Zzl/MPdWs7XwxT7omHRxAjMbDFRZEEjD+2m3NBf8YzAe3HuoSEZosXQo+m1GQ1G3LQ1LdmNh1RKTYe+ssEg==", "dev": true, "dependencies": { "@babel/parser": "^7.23.6", - "@vue/shared": "3.4.13", + "@vue/shared": "3.4.14", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.13.tgz", - "integrity": "sha512-XSNbpr5Rs3kCfVAmBqMu/HDwOS+RL6y28ZZjDlnDUuf146pRWt2sQkwhsOYc9uu2lxjjJy2NcyOkK7MBLVEc7w==", + "version": "3.4.14", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.14.tgz", + "integrity": "sha512-nOZTY+veWNa0DKAceNWxorAbWm0INHdQq7cejFaWM1WYnoNSJbSEKYtE7Ir6lR/+mo9fttZpPVI9ZFGJ1juUEQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.13", - "@vue/shared": "3.4.13" + "@vue/compiler-core": "3.4.14", + "@vue/shared": "3.4.14" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.13.tgz", - "integrity": "sha512-SkpmQN8xIFBd5onT413DFSDdjxULJf6jmJg/t3w/DZ9I8ZzyNlLIBLO0qFLewVHyHCiAgpPZlWqSRZXYrawk3Q==", + "version": "3.4.14", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.14.tgz", + "integrity": "sha512-1vHc9Kv1jV+YBZC/RJxQJ9JCxildTI+qrhtDh6tPkR1O8S+olBUekimY0km0ZNn8nG1wjtFAe9XHij+YLR8cRQ==", "dev": true, "dependencies": { "@babel/parser": "^7.23.6", - "@vue/compiler-core": "3.4.13", - "@vue/compiler-dom": "3.4.13", - "@vue/compiler-ssr": "3.4.13", - "@vue/shared": "3.4.13", + "@vue/compiler-core": "3.4.14", + "@vue/compiler-dom": "3.4.14", + "@vue/compiler-ssr": "3.4.14", + "@vue/shared": "3.4.14", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", - "postcss": "^8.4.32", + "postcss": "^8.4.33", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.13.tgz", - "integrity": "sha512-rwnw9SVBgD6eGKh8UucnwztieQo/R3RQrEGpE0b0cxb2xxvJeLs/fe7DoYlhEfaSyzM/qD5odkK87hl3G3oW+A==", + "version": "3.4.14", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.14.tgz", + "integrity": "sha512-bXT6+oAGlFjTYVOTtFJ4l4Jab1wjsC0cfSfOe2B4Z0N2vD2zOBSQ9w694RsCfhjk+bC2DY5Gubb1rHZVii107Q==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.13", - "@vue/shared": "3.4.13" + "@vue/compiler-dom": "3.4.14", + "@vue/shared": "3.4.14" } }, "node_modules/@vue/shared": { - "version": "3.4.13", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.13.tgz", - "integrity": "sha512-56crFKLPpzk85WXX1L1c0QzPOuoapWlPVys8eMG8kkRmqdMjWUqK8KpFdE2d7BQA4CEbXwyyHPq6MpFr8H9rcg==", + "version": "3.4.14", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.14.tgz", + "integrity": "sha512-nmi3BtLpvqXAWoRZ6HQ+pFJOHBU4UnH3vD3opgmwXac7vhaHKA9nj1VeGjMggdB9eLtW83eHyPCmOU1qzdsC7Q==", "dev": true }, "node_modules/abbrev": { @@ -2067,9 +2067,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001576", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001576.tgz", - "integrity": "sha512-ff5BdakGe2P3SQsMsiqmt1Lc8221NR1VzHj5jXN5vBny9A6fpze94HiVV/n7XRosOlsShJcvMv5mdnpjOGCEgg==", + "version": "1.0.30001579", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001579.tgz", + "integrity": "sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==", "dev": true, "funding": [ { @@ -3279,9 +3279,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.630", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.630.tgz", - "integrity": "sha512-osHqhtjojpCsACVnuD11xO5g9xaCyw7Qqn/C2KParkMv42i8jrJJgx3g7mkHfpxwhy9MnOJr8+pKOdZ7qzgizg==", + "version": "1.4.637", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.637.tgz", + "integrity": "sha512-G7j3UCOukFtxVO1vWrPQUoDk3kL70mtvjc/DC/k2o7lE0wAdq+Vwp1ipagOow+BH0uVztFysLWbkM/RTIrbK3w==", "dev": true }, "node_modules/emittery": { @@ -3792,9 +3792,9 @@ } }, "node_modules/esmock": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.0.tgz", - "integrity": "sha512-PFcxAm5bzPckh9V6s78FW+WaR/J+1R9K6vlItFOIFqNn+3w1pgo/HEEOJ2HBwVdrEnO7xXBgGUcFoNsdTU599A==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.2.tgz", + "integrity": "sha512-tcxyxE6l0TmyEwkybbVKqFwUpsWBrjVWXYiVc8PPnKC7q9RRYyRtK03z7MXaZimRAsLkEp7SQeHCQEnrD6z4Ww==", "dev": true, "engines": { "node": ">=14.16.0" @@ -7085,9 +7085,9 @@ } }, "node_modules/pacote": { - "version": "17.0.5", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.5.tgz", - "integrity": "sha512-TAE0m20zSDMnchPja9vtQjri19X3pZIyRpm2TJVeI+yU42leJBBDTRYhOcWFsPhaMxf+3iwQkFiKz16G9AEeeA==", + "version": "17.0.6", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.6.tgz", + "integrity": "sha512-cJKrW21VRE8vVTRskJo78c/RCvwJCn1f4qgfxL4w77SOWrTCRcmfkYHlHtS0gqpgjv3zhXflRtgsrUCX5xwNnQ==", "dependencies": { "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -7104,7 +7104,7 @@ "promise-retry": "^2.0.1", "read-package-json": "^7.0.0", "read-package-json-fast": "^3.0.0", - "sigstore": "^2.0.0", + "sigstore": "^2.2.0", "ssri": "^10.0.0", "tar": "^6.1.11" }, @@ -9131,9 +9131,9 @@ } }, "node_modules/terser": { - "version": "5.26.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.26.0.tgz", - "integrity": "sha512-dytTGoE2oHgbNV9nTzgBEPaqAWvcJNl66VZ0BkJqlvp71IjO8CxdBx/ykCNb47cLnCmCvRZ6ZR0tLkqvZCdVBQ==", + "version": "5.27.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.27.0.tgz", + "integrity": "sha512-bi1HRwVRskAjheeYl291n3JC4GgO/Ty4z1nVs5AAsmonJulGxpSektecnNedrwK9C7vpvVtcX3cw00VSLt7U2A==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index 513462dd07a..5414750da7f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -134,7 +134,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^13.0.0", "node-stream-zip": "^1.15.0", - "pacote": "^17.0.5", + "pacote": "^17.0.6", "pretty-hrtime": "^1.0.3", "read-pkg": "^8.1.0", "read-pkg-up": "^10.1.0", @@ -155,7 +155,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.10.1", - "esmock": "^2.6.0", + "esmock": "^2.6.2", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", From 4a160099c530b9ee6c02fc73e76569c5e025930d Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 18 Jan 2024 12:46:02 +0000 Subject: [PATCH 1056/1272] [ui5-project][INTERNAL] Bump @ui5/builder from 3.2.0 to 3.3.0 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v3.3.0/CHANGELOG.md --- packages/project/package-lock.json | 10 +++++----- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d79531bb382..8f440483855 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.1.0", - "@ui5/builder": "^3.2.0", + "@ui5/builder": "^3.3.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -1279,9 +1279,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.2.0.tgz", - "integrity": "sha512-n6Z34iandeGPUS2x0OM7AdEvmnLbqqk9mfGuismuWx8gov2cawuJ/42B0BLamXRmlTqFPB7eGnaWry9tDK6h3Q==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.3.0.tgz", + "integrity": "sha512-gQ28Bj4WqF3b+8Mp4luxe2pGb+Adq2qpy1H9JZ8DTpIGcCEcJgJVCTRv6KdWZja6y5ZD89NWQAv0k0N50MV6Sw==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.5", @@ -1296,7 +1296,7 @@ "pretty-data": "^0.40.0", "rimraf": "^5.0.5", "semver": "^7.5.4", - "terser": "^5.26.0", + "terser": "^5.27.0", "workerpool": "^6.5.1", "xml2js": "^0.6.2" }, diff --git a/packages/project/package.json b/packages/project/package.json index 5414750da7f..b3f83c0910e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ }, "dependencies": { "@npmcli/config": "^8.1.0", - "@ui5/builder": "^3.2.0", + "@ui5/builder": "^3.3.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", From a73516972616ec8af26b94f495a4aee6b849e456 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 21 Jan 2024 03:20:40 +0000 Subject: [PATCH 1057/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 66 +++++++++++++++--------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8f440483855..05829b4e89c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -819,9 +819,9 @@ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.21", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.21.tgz", - "integrity": "sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==", + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz", + "integrity": "sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -1167,9 +1167,9 @@ } }, "node_modules/@sinonjs/commons": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", - "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", "dev": true, "dependencies": { "type-detect": "4.0.8" @@ -1346,39 +1346,39 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.4.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.14.tgz", - "integrity": "sha512-ro4Zzl/MPdWs7XwxT7omHRxAjMbDFRZEEjD+2m3NBf8YzAe3HuoSEZosXQo+m1GQ1G3LQ1LdmNh1RKTYe+ssEg==", + "version": "3.4.15", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.15.tgz", + "integrity": "sha512-XcJQVOaxTKCnth1vCxEChteGuwG6wqnUHxAm1DO3gCz0+uXKaJNx8/digSz4dLALCy8n2lKq24jSUs8segoqIw==", "dev": true, "dependencies": { "@babel/parser": "^7.23.6", - "@vue/shared": "3.4.14", + "@vue/shared": "3.4.15", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.14.tgz", - "integrity": "sha512-nOZTY+veWNa0DKAceNWxorAbWm0INHdQq7cejFaWM1WYnoNSJbSEKYtE7Ir6lR/+mo9fttZpPVI9ZFGJ1juUEQ==", + "version": "3.4.15", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.15.tgz", + "integrity": "sha512-wox0aasVV74zoXyblarOM3AZQz/Z+OunYcIHe1OsGclCHt8RsRm04DObjefaI82u6XDzv+qGWZ24tIsRAIi5MQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.14", - "@vue/shared": "3.4.14" + "@vue/compiler-core": "3.4.15", + "@vue/shared": "3.4.15" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.14.tgz", - "integrity": "sha512-1vHc9Kv1jV+YBZC/RJxQJ9JCxildTI+qrhtDh6tPkR1O8S+olBUekimY0km0ZNn8nG1wjtFAe9XHij+YLR8cRQ==", + "version": "3.4.15", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.15.tgz", + "integrity": "sha512-LCn5M6QpkpFsh3GQvs2mJUOAlBQcCco8D60Bcqmf3O3w5a+KWS5GvYbrrJBkgvL1BDnTp+e8q0lXCLgHhKguBA==", "dev": true, "dependencies": { "@babel/parser": "^7.23.6", - "@vue/compiler-core": "3.4.14", - "@vue/compiler-dom": "3.4.14", - "@vue/compiler-ssr": "3.4.14", - "@vue/shared": "3.4.14", + "@vue/compiler-core": "3.4.15", + "@vue/compiler-dom": "3.4.15", + "@vue/compiler-ssr": "3.4.15", + "@vue/shared": "3.4.15", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", "postcss": "^8.4.33", @@ -1386,19 +1386,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.14.tgz", - "integrity": "sha512-bXT6+oAGlFjTYVOTtFJ4l4Jab1wjsC0cfSfOe2B4Z0N2vD2zOBSQ9w694RsCfhjk+bC2DY5Gubb1rHZVii107Q==", + "version": "3.4.15", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.15.tgz", + "integrity": "sha512-1jdeQyiGznr8gjFDadVmOJqZiLNSsMa5ZgqavkPZ8O2wjHv0tVuAEsw5hTdUoUW4232vpBbL/wJhzVW/JwY1Uw==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.14", - "@vue/shared": "3.4.14" + "@vue/compiler-dom": "3.4.15", + "@vue/shared": "3.4.15" } }, "node_modules/@vue/shared": { - "version": "3.4.14", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.14.tgz", - "integrity": "sha512-nmi3BtLpvqXAWoRZ6HQ+pFJOHBU4UnH3vD3opgmwXac7vhaHKA9nj1VeGjMggdB9eLtW83eHyPCmOU1qzdsC7Q==", + "version": "3.4.15", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.15.tgz", + "integrity": "sha512-KzfPTxVaWfB+eGcGdbSf4CWdaXcGDqckoeXUh7SB3fZdEtzPCK2Vq9B/lRRL3yutax/LWITz+SwvgyOxz5V75g==", "dev": true }, "node_modules/abbrev": { @@ -3279,9 +3279,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.637", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.637.tgz", - "integrity": "sha512-G7j3UCOukFtxVO1vWrPQUoDk3kL70mtvjc/DC/k2o7lE0wAdq+Vwp1ipagOow+BH0uVztFysLWbkM/RTIrbK3w==", + "version": "1.4.640", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.640.tgz", + "integrity": "sha512-z/6oZ/Muqk4BaE7P69bXhUhpJbUM9ZJeka43ZwxsDshKtePns4mhBlh8bU5+yrnOnz3fhG82XLzGUXazOmsWnA==", "dev": true }, "node_modules/emittery": { From d890ff399cd36a349b465fe0d55e55532431cba3 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 26 Jan 2024 08:15:05 +0100 Subject: [PATCH 1058/1272] [ui5-project][INTERNAL] azure: remove v2 branch in pipeline file (#695) --- packages/project/azure-pipelines.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 5c0fd2358a8..054adece4de 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -4,7 +4,6 @@ # https://docs.microsoft.com/azure/devops/pipelines/languages/javascript trigger: -- v2 - main strategy: From 6f9e5492f0f9b2c8d37b41711a724393894c676c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 28 Jan 2024 03:20:31 +0000 Subject: [PATCH 1059/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 262 ++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 149 insertions(+), 115 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 05829b4e89c..f45bb8bf9fe 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -44,7 +44,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.10.1", - "esmock": "^2.6.2", + "esmock": "^2.6.3", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", @@ -71,9 +71,9 @@ } }, "node_modules/@adobe/css-tools": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.2.tgz", - "integrity": "sha512-DA5a1C0gD/pLOvhv33YMrbf2FK3oUzwNl9oOJqE4XVjuEtt6XIakRcsd7eLiOSPkp1kTRQGICTA8cKra/vFbjw==" + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.3.tgz", + "integrity": "sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==" }, "node_modules/@ampproject/remapping": { "version": "2.2.1", @@ -161,9 +161,9 @@ } }, "node_modules/@babel/core": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.7.tgz", - "integrity": "sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.9.tgz", + "integrity": "sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -171,11 +171,11 @@ "@babel/generator": "^7.23.6", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.7", - "@babel/parser": "^7.23.6", - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.7", - "@babel/types": "^7.23.6", + "@babel/helpers": "^7.23.9", + "@babel/parser": "^7.23.9", + "@babel/template": "^7.23.9", + "@babel/traverse": "^7.23.9", + "@babel/types": "^7.23.9", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -364,14 +364,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.8", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.8.tgz", - "integrity": "sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.9.tgz", + "integrity": "sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==", "dev": true, "dependencies": { - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.7", - "@babel/types": "^7.23.6" + "@babel/template": "^7.23.9", + "@babel/traverse": "^7.23.9", + "@babel/types": "^7.23.9" }, "engines": { "node": ">=6.9.0" @@ -442,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", - "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.9.tgz", + "integrity": "sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==", "bin": { "parser": "bin/babel-parser.js" }, @@ -453,23 +453,23 @@ } }, "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", + "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.23.9", + "@babel/types": "^7.23.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", - "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.9.tgz", + "integrity": "sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", @@ -478,8 +478,8 @@ "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.6", - "@babel/types": "^7.23.6", + "@babel/parser": "^7.23.9", + "@babel/types": "^7.23.9", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -488,9 +488,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", - "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.9.tgz", + "integrity": "sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.23.4", @@ -886,9 +886,9 @@ } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "engines": { "node": "14 || >=16.14" } @@ -949,9 +949,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "engines": { "node": "14 || >=16.14" } @@ -1015,6 +1015,56 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@npmcli/package-json": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.0.0.tgz", + "integrity": "sha512-OI2zdYBLhQ7kpNPaJxiflofYIpkNLi+lnGdzqUOfRmCF3r2l1nadcjtCYMJKv/Utm/ZtlffaUuTiAktPHbc17g==", + "dependencies": { + "@npmcli/git": "^5.0.0", + "glob": "^10.2.2", + "hosted-git-info": "^7.0.0", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/package-json/node_modules/hosted-git-info": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/package-json/node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@npmcli/package-json/node_modules/normalize-package-data": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "dependencies": { + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/@npmcli/promise-spawn": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.1.tgz", @@ -1049,14 +1099,14 @@ } }, "node_modules/@npmcli/run-script": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.3.tgz", - "integrity": "sha512-ZMWGLHpzMq3rBGIwPyeaoaleaLMvrBrH8nugHxTi5ACkJZXTxXPtVuEH91ifgtss5hUwJQ2VDnzDBWPmz78rvg==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.4.tgz", + "integrity": "sha512-9ApYM/3+rBt9V80aYg6tZfzj3UWdiYyCt7gJUD1VJKvWF5nwKDSICXbYIQbspFTq6TOpbsEtIC0LArB8d9PFmg==", "dependencies": { "@npmcli/node-gyp": "^3.0.0", + "@npmcli/package-json": "^5.0.0", "@npmcli/promise-spawn": "^7.0.0", "node-gyp": "^10.0.0", - "read-package-json-fast": "^3.0.0", "which": "^4.0.0" }, "engines": { @@ -1794,9 +1844,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz", - "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==", + "version": "4.22.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.3.tgz", + "integrity": "sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==", "dev": true, "funding": [ { @@ -1813,8 +1863,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001565", - "electron-to-chromium": "^1.4.601", + "caniuse-lite": "^1.0.30001580", + "electron-to-chromium": "^1.4.648", "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" }, @@ -1916,9 +1966,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "engines": { "node": "14 || >=16.14" } @@ -2067,9 +2117,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001579", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001579.tgz", - "integrity": "sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==", + "version": "1.0.30001580", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001580.tgz", + "integrity": "sha512-mtj5ur2FFPZcCEpXFy8ADXbDACuNFXg6mxVDqp7tqooX6l3zwm+d8EPoeOSIFRDvHs8qu7/SLFOGniULkcH2iA==", "dev": true, "funding": [ { @@ -3279,9 +3329,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.640", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.640.tgz", - "integrity": "sha512-z/6oZ/Muqk4BaE7P69bXhUhpJbUM9ZJeka43ZwxsDshKtePns4mhBlh8bU5+yrnOnz3fhG82XLzGUXazOmsWnA==", + "version": "1.4.648", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.648.tgz", + "integrity": "sha512-EmFMarXeqJp9cUKu/QEciEApn0S/xRcpZWuAm32U7NgoZCimjsilKXHRO9saeEW55eHZagIDg6XTUOv32w9pjg==", "dev": true }, "node_modules/emittery": { @@ -3792,9 +3842,9 @@ } }, "node_modules/esmock": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.2.tgz", - "integrity": "sha512-tcxyxE6l0TmyEwkybbVKqFwUpsWBrjVWXYiVc8PPnKC7q9RRYyRtK03z7MXaZimRAsLkEp7SQeHCQEnrD6z4Ww==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.3.tgz", + "integrity": "sha512-1gtVLLHyB742JNWkIFfiKwB8rXgJZO/X717ua4yzT0hIqsDFjtnrpAKHO+HlIMSIhMExCWJzpk9lDsh2XuKAKw==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4000,9 +4050,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", - "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.0.tgz", + "integrity": "sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==", "dependencies": { "reusify": "^1.0.4" } @@ -5322,10 +5372,12 @@ "dev": true }, "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, "node_modules/json-schema-traverse": { "version": "0.4.1", @@ -6489,9 +6541,9 @@ } }, "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "engines": { "node": "14 || >=16.14" } @@ -7154,6 +7206,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/parse-json/node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, "node_modules/parse-ms": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-3.0.0.tgz", @@ -7245,9 +7303,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "engines": { "node": "14 || >=16.14" } @@ -7684,14 +7742,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-package-json-fast/node_modules/json-parse-even-better-errors": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", - "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/read-package-json/node_modules/hosted-git-info": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", @@ -7703,18 +7753,10 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", - "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/read-package-json/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "engines": { "node": "14 || >=16.14" } @@ -7832,9 +7874,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.9.0.tgz", - "integrity": "sha512-KS/6lh/ynPGiHD/LnAobrEFq3Ad4pBzOlJ1wAnJx9N4EYoqFhMfLIBjUT2UEx4wg5ZE+cC1ob6DCSpppVo+rtg==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.1.tgz", + "integrity": "sha512-7ZnJYTp6uc04uYRISWtiX3DSKB/fxNQT0B5o1OUeCqiQiwF+JC9+rJiZIDrPrNCLLuTqyQmh4VdQqh/ZOkv9MQ==", "engines": { "node": ">=16" }, @@ -7864,14 +7906,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/read-pkg/node_modules/json-parse-even-better-errors": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", - "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/read-pkg/node_modules/lines-and-columns": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz", @@ -7881,9 +7915,9 @@ } }, "node_modules/read-pkg/node_modules/lru-cache": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", - "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "engines": { "node": "14 || >=16.14" } @@ -7932,9 +7966,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.9.0.tgz", - "integrity": "sha512-KS/6lh/ynPGiHD/LnAobrEFq3Ad4pBzOlJ1wAnJx9N4EYoqFhMfLIBjUT2UEx4wg5ZE+cC1ob6DCSpppVo+rtg==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.1.tgz", + "integrity": "sha512-7ZnJYTp6uc04uYRISWtiX3DSKB/fxNQT0B5o1OUeCqiQiwF+JC9+rJiZIDrPrNCLLuTqyQmh4VdQqh/ZOkv9MQ==", "engines": { "node": ">=16" }, @@ -8633,9 +8667,9 @@ } }, "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.4.0.tgz", + "integrity": "sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw==" }, "node_modules/spdx-expression-parse": { "version": "4.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index b3f83c0910e..4253d7748ea 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -155,7 +155,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^46.10.1", - "esmock": "^2.6.2", + "esmock": "^2.6.3", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", From 2c4dbafca3995c633edd212666386451cc8a5fe9 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 25 Jan 2024 09:02:55 +0100 Subject: [PATCH 1060/1272] [ui5-project][INTERNAL] Setup main branch for UI5 Tooling V4 JIRA: CPOUI5FOUNDATION-775 --- packages/project/.chglog/release-config.yml | 2 +- packages/project/README.md | 4 ++-- packages/project/jsdoc.json | 2 +- packages/project/lib/graph/Workspace.js | 2 +- packages/project/lib/specifications/types/Application.js | 2 +- packages/project/package.json | 2 +- packages/project/test/lib/specifications/types/Application.js | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/project/.chglog/release-config.yml b/packages/project/.chglog/release-config.yml index e9f395f721c..14c3b27d514 100755 --- a/packages/project/.chglog/release-config.yml +++ b/packages/project/.chglog/release-config.yml @@ -3,7 +3,7 @@ template: RELEASE.tpl.md info: repository_url: https://github.com/SAP/ui5-project options: - tag_filter_pattern: '^v[^012]' # For release notes ignore versions below v3 to that we always compare the _last v3+_ tag with the current release + tag_filter_pattern: '^v[^0123]' # For release notes ignore versions below v4 to that we always compare the _last v4+_ tag with the current release commits: filters: Type: diff --git a/packages/project/README.md b/packages/project/README.md index 7ba7deb6617..2cece46ec9c 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -10,9 +10,9 @@ [![Coverage Status](https://coveralls.io/repos/github/SAP/ui5-project/badge.svg)](https://coveralls.io/github/SAP/ui5-project) ## Documentation -UI5 Project documentation can be found here: [sap.github.io/ui5-tooling](https://sap.github.io/ui5-tooling/v3/pages/Project/) +UI5 Project documentation can be found here: [sap.github.io/ui5-tooling](https://sap.github.io/ui5-tooling/v4/pages/Project/) -The UI5 Project API Reference can be found here: [`@ui5/project`](https://sap.github.io/ui5-tooling/v3/api/) +The UI5 Project API Reference can be found here: [`@ui5/project`](https://sap.github.io/ui5-tooling/v4/api/) ## Contributing Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md). diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json index 7f4c88bde09..560fa484695 100644 --- a/packages/project/jsdoc.json +++ b/packages/project/jsdoc.json @@ -27,7 +27,7 @@ "openGraph": { "title": "UI5 Tooling - API Reference", "type": "website", - "image": "https://sap.github.io/ui5-tooling/v3/images/UI5_logo_wide.png", + "image": "https://sap.github.io/ui5-tooling/v4/images/UI5_logo_wide.png", "site_name": "UI5 Tooling - API Reference", "url": "https://sap.github.io/ui5-tooling/" }, diff --git a/packages/project/lib/graph/Workspace.js b/packages/project/lib/graph/Workspace.js index 6e07198963f..2babd54a783 100644 --- a/packages/project/lib/graph/Workspace.js +++ b/packages/project/lib/graph/Workspace.js @@ -12,7 +12,7 @@ const log = getLogger("graph:Workspace"); /** * Workspace configuration. For details, refer to the - * [UI5 Workspaces documentation]{@link https://sap.github.io/ui5-tooling/v3/pages/Workspace/#configuration} + * [UI5 Workspaces documentation]{@link https://sap.github.io/ui5-tooling/v4/pages/Workspace/#configuration} * * @public * @typedef {object} @ui5/project/graph/Workspace~Configuration diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index 5ca83a099c7..23b97b46903 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -147,7 +147,7 @@ class Application extends ComponentProject { `Could not find required manifest.json for project ` + `${this.getName()}: ${manifestJsonError.message}\n\n` + `If you are about to start a new project, please refer to:\n` + - `https://sap.github.io/ui5-tooling/v3/pages/GettingStarted/#starting-a-new-project`, { + `https://sap.github.io/ui5-tooling/v4/pages/GettingStarted/#starting-a-new-project`, { cause: manifestJsonError }); } diff --git a/packages/project/package.json b/packages/project/package.json index 4253d7748ea..6a20405c7ec 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -51,7 +51,7 @@ "jsdoc-generate": "jsdoc -c ./jsdoc.json -t $(node -p 'path.dirname(require.resolve(\"docdash\"))') ./lib/ || (echo 'Error during JSDoc generation! Check log.' && exit 1)", "jsdoc-watch": "npm run jsdoc && chokidar \"./lib/**/*.js\" -c \"npm run jsdoc-generate\"", "preversion": "npm test", - "version": "git-chglog --sort semver --next-tag v$npm_package_version -o CHANGELOG.md v3.0.0.. && git add CHANGELOG.md", + "version": "git-chglog --sort semver --next-tag v$npm_package_version -o CHANGELOG.md v4.0.0.. && git add CHANGELOG.md", "prepublishOnly": "git push --follow-tags", "release-note": "git-chglog --sort semver -c .chglog/release-config.yml v$npm_package_version", "depcheck": "depcheck --ignores @ui5/project,docdash,@istanbuljs/esm-loader-hook" diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 5949d5229d1..74e88bd05bd 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -529,7 +529,7 @@ test("_getNamespace: Correct error message if fallback to manifest.appdescr_vari "No such stable or directory: manifest.json" + "\n\n" + "If you are about to start a new project, please refer to:\n" + - "https://sap.github.io/ui5-tooling/v3/pages/GettingStarted/#starting-a-new-project", + "https://sap.github.io/ui5-tooling/v4/pages/GettingStarted/#starting-a-new-project", "Rejected with correct error message"); t.is(_getManifestStub.callCount, 2, "_getManifest called exactly twice"); From 5d76cedef8abf4122912f21eefb0c997c473910a Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 2 Feb 2024 15:24:03 +0100 Subject: [PATCH 1061/1272] [ui5-project][INTERNAL] package.json: set version to 4.0.0-alpha --- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f45bb8bf9fe..71cfa81922e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "3.9.0", + "version": "4.0.0-alpha", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "3.9.0", + "version": "4.0.0-alpha", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.1.0", diff --git a/packages/project/package.json b/packages/project/package.json index 6a20405c7ec..aafc5470669 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "3.9.0", + "version": "4.0.0-alpha", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 59e602b08a5c5e95f56ea62609058ca310a74b6b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 4 Feb 2024 03:20:34 +0000 Subject: [PATCH 1062/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 48 +++++++++++++++--------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 71cfa81922e..5428a1225fb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2117,9 +2117,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001580", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001580.tgz", - "integrity": "sha512-mtj5ur2FFPZcCEpXFy8ADXbDACuNFXg6mxVDqp7tqooX6l3zwm+d8EPoeOSIFRDvHs8qu7/SLFOGniULkcH2iA==", + "version": "1.0.30001583", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001583.tgz", + "integrity": "sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q==", "dev": true, "funding": [ { @@ -3329,15 +3329,15 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.648", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.648.tgz", - "integrity": "sha512-EmFMarXeqJp9cUKu/QEciEApn0S/xRcpZWuAm32U7NgoZCimjsilKXHRO9saeEW55eHZagIDg6XTUOv32w9pjg==", + "version": "1.4.656", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.656.tgz", + "integrity": "sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q==", "dev": true }, "node_modules/emittery": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.0.1.tgz", - "integrity": "sha512-2ID6FdrMD9KDLldGesP6317G78K7km/kMcwItRtVFva7I/cSEOIaLpewaUb+YLXVwdAp3Ctfxh/V5zIl1sj7dQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.0.2.tgz", + "integrity": "sha512-PqHdP6JJrxiSXQzCAzII77dVsfyGWu+7V0ghqkaCej2shF1cnIPeFE9kKZcVTqvBjrRMDVOdNXKEYcjxkznS1g==", "dev": true, "engines": { "node": ">=14.16" @@ -4686,9 +4686,9 @@ ] }, "node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "engines": { "node": ">= 4" } @@ -5565,9 +5565,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.5", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", - "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", + "version": "0.30.6", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.6.tgz", + "integrity": "sha512-n62qCLbPjNjyo+owKtveQxZFZTBm+Ms6YoGD23Wew6Vw337PElFNifQpknPruVRQV57kVShPnLGo9vWxVhpPvA==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -6342,9 +6342,9 @@ } }, "node_modules/nise": { - "version": "5.1.7", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.7.tgz", - "integrity": "sha512-wWtNUhkT7k58uvWTB/Gy26eA/EJKtPZFVAhEilN5UYVmmGRYOURbejRUyKm0Uu9XVEW7K5nBOZfR8VMB4QR2RQ==", + "version": "5.1.9", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.9.tgz", + "integrity": "sha512-qOnoujW4SV6e40dYxJOb3uvuoPHtmLzIk4TFo+j0jPJoC+5Z9xja5qH5JZobEPsa8+YYphMrOSwnrshEhG2qww==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", @@ -7874,9 +7874,9 @@ } }, "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.1.tgz", - "integrity": "sha512-7ZnJYTp6uc04uYRISWtiX3DSKB/fxNQT0B5o1OUeCqiQiwF+JC9+rJiZIDrPrNCLLuTqyQmh4VdQqh/ZOkv9MQ==", + "version": "4.10.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.2.tgz", + "integrity": "sha512-anpAG63wSpdEbLwOqH8L84urkL6PiVIov3EMmgIhhThevh9aiMQov+6Btx0wldNcvm4wV+e2/Rt1QdDwKHFbHw==", "engines": { "node": ">=16" }, @@ -7966,9 +7966,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.1.tgz", - "integrity": "sha512-7ZnJYTp6uc04uYRISWtiX3DSKB/fxNQT0B5o1OUeCqiQiwF+JC9+rJiZIDrPrNCLLuTqyQmh4VdQqh/ZOkv9MQ==", + "version": "4.10.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.2.tgz", + "integrity": "sha512-anpAG63wSpdEbLwOqH8L84urkL6PiVIov3EMmgIhhThevh9aiMQov+6Btx0wldNcvm4wV+e2/Rt1QdDwKHFbHw==", "engines": { "node": ">=16" }, From 32833ef181ab3cb9780d60b48f122de1a3dd308f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 9 Feb 2024 11:47:01 +0100 Subject: [PATCH 1063/1272] [ui5-project][INTERNAL] Remove SECURITY.md Links are outdated. By removing the file, Github will fall back to the SAP/.github repository --- packages/project/SECURITY.md | 10 ---------- 1 file changed, 10 deletions(-) delete mode 100644 packages/project/SECURITY.md diff --git a/packages/project/SECURITY.md b/packages/project/SECURITY.md deleted file mode 100644 index da276fcb90a..00000000000 --- a/packages/project/SECURITY.md +++ /dev/null @@ -1,10 +0,0 @@ -# Reporting Security Issues - -We take security issues in our projects seriously. We appreciate your efforts to responsibly disclose your findings. - -Please do not report security issues directly on GitHub but using one of the channels listed below. This allows us to provide a fix before an issue can be exploited. - -- **Researchers/Non-SAP Customers:** Please consult SAPs [disclosure guidelines](https://wiki.scn.sap.com/wiki/display/PSR/Disclosure+Guidelines+for+SAP+Security+Advisories) and send the related information in a PGP encrypted e-mail to secure@sap.com. Find the public PGP key [here](https://www.sap.com/dmc/policies/pgp/keyblock.txt). -- **SAP Customers:** If the security issue is not covered by a published security note, please report it by creating a customer message at https://launchpad.support.sap.com. - -Please also refer to the general [SAP security information page](https://www.sap.com/about/trust-center/security/incident-management.html). From 7fa07d6eaf4df3dca2ea4f2dc890d008a4aa003b Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 11 Feb 2024 03:20:38 +0000 Subject: [PATCH 1064/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 159 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 79 insertions(+), 82 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5428a1225fb..b65f3539f33 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -29,7 +29,7 @@ "read-pkg-up": "^10.1.0", "resolve": "^1.22.8", "rimraf": "^5.0.5", - "semver": "^7.5.4", + "semver": "^7.6.0", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, @@ -871,9 +871,9 @@ } }, "node_modules/@npmcli/agent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.0.tgz", - "integrity": "sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.1.tgz", + "integrity": "sha512-H4FrOVtNyWC8MUwL3UfjOsAihHvT1Pe8POj3JvjXhSTJipsZMtgUALCT4mGyYZNxymkUfOw3PUj6dE4QPp6osQ==", "dependencies": { "agent-base": "^7.1.0", "http-proxy-agent": "^7.0.0", @@ -1162,9 +1162,9 @@ } }, "node_modules/@sigstore/core": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-0.2.0.tgz", - "integrity": "sha512-THobAPPZR9pDH2CAvDLpkrYedt7BlZnsyxDe+Isq4ZmGfPy5juOFZq487vCU2EgKD7aHSiTfE/i7sN7aEdzQnA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.0.0.tgz", + "integrity": "sha512-dW2qjbWLRKGu6MIDUTBuJwXCnR8zivcSpf5inUzk7y84zqy/dji0/uahppoIgMoKeR+6pUZucrwHfkQQtiG9Rw==", "engines": { "node": "^16.14.0 || >=18.0.0" } @@ -1178,12 +1178,12 @@ } }, "node_modules/@sigstore/sign": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.1.tgz", - "integrity": "sha512-U5sKQEj+faE1MsnLou1f4DQQHeFZay+V9s9768lw48J4pKykPj34rWyI1lsMOGJ3Mae47Ye6q3HAJvgXO21rkQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.2.tgz", + "integrity": "sha512-mAifqvvGOCkb5BJ5d/SRrVP5+kKCGxtcHuti6lgqZalIfNxikxlJMMptOqFp9+xV5LAnJMSaMWtzvcgNZ3PlPA==", "dependencies": { "@sigstore/bundle": "^2.1.1", - "@sigstore/core": "^0.2.0", + "@sigstore/core": "^1.0.0", "@sigstore/protobuf-specs": "^0.2.1", "make-fetch-happen": "^13.0.0" }, @@ -1204,12 +1204,12 @@ } }, "node_modules/@sigstore/verify": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-0.1.0.tgz", - "integrity": "sha512-2UzMNYAa/uaz11NhvgRnIQf4gpLTJ59bhb8ESXaoSS5sxedfS+eLak8bsdMc+qpNQfITUTFoSKFx5h8umlRRiA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.0.0.tgz", + "integrity": "sha512-sRU6nblDBQ4pVTWni019Kij+XQj4RP75WXN5z3qHk81dt/L8A7r3v8RgRInTup4/Jf90WNods9CcbnWj7zJ26w==", "dependencies": { "@sigstore/bundle": "^2.1.1", - "@sigstore/core": "^0.2.0", + "@sigstore/core": "^1.0.0", "@sigstore/protobuf-specs": "^0.2.1" }, "engines": { @@ -1396,59 +1396,59 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.15.tgz", - "integrity": "sha512-XcJQVOaxTKCnth1vCxEChteGuwG6wqnUHxAm1DO3gCz0+uXKaJNx8/digSz4dLALCy8n2lKq24jSUs8segoqIw==", + "version": "3.4.18", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.18.tgz", + "integrity": "sha512-F7YK8lMK0iv6b9/Gdk15A67wM0KKZvxDxed0RR60C1z9tIJTKta+urs4j0RTN5XqHISzI3etN3mX0uHhjmoqjQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.6", - "@vue/shared": "3.4.15", + "@babel/parser": "^7.23.9", + "@vue/shared": "3.4.18", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.15.tgz", - "integrity": "sha512-wox0aasVV74zoXyblarOM3AZQz/Z+OunYcIHe1OsGclCHt8RsRm04DObjefaI82u6XDzv+qGWZ24tIsRAIi5MQ==", + "version": "3.4.18", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.18.tgz", + "integrity": "sha512-24Eb8lcMfInefvQ6YlEVS18w5Q66f4+uXWVA+yb7praKbyjHRNuKVWGuinfSSjM0ZIiPi++QWukhkgznBaqpEA==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.15", - "@vue/shared": "3.4.15" + "@vue/compiler-core": "3.4.18", + "@vue/shared": "3.4.18" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.15.tgz", - "integrity": "sha512-LCn5M6QpkpFsh3GQvs2mJUOAlBQcCco8D60Bcqmf3O3w5a+KWS5GvYbrrJBkgvL1BDnTp+e8q0lXCLgHhKguBA==", + "version": "3.4.18", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.18.tgz", + "integrity": "sha512-rG5tqtnzwrVpMqAQ7FHtvHaV70G6LLfJIWLYZB/jZ9m/hrnZmIQh+H3ewnC5onwe/ibljm9+ZupxeElzqCkTAw==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.6", - "@vue/compiler-core": "3.4.15", - "@vue/compiler-dom": "3.4.15", - "@vue/compiler-ssr": "3.4.15", - "@vue/shared": "3.4.15", + "@babel/parser": "^7.23.9", + "@vue/compiler-core": "3.4.18", + "@vue/compiler-dom": "3.4.18", + "@vue/compiler-ssr": "3.4.18", + "@vue/shared": "3.4.18", "estree-walker": "^2.0.2", - "magic-string": "^0.30.5", + "magic-string": "^0.30.6", "postcss": "^8.4.33", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.15.tgz", - "integrity": "sha512-1jdeQyiGznr8gjFDadVmOJqZiLNSsMa5ZgqavkPZ8O2wjHv0tVuAEsw5hTdUoUW4232vpBbL/wJhzVW/JwY1Uw==", + "version": "3.4.18", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.18.tgz", + "integrity": "sha512-hSlv20oUhPxo2UYUacHgGaxtqP0tvFo6ixxxD6JlXIkwzwoZ9eKK6PFQN4hNK/R13JlNyldwWt/fqGBKgWJ6nQ==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.15", - "@vue/shared": "3.4.15" + "@vue/compiler-dom": "3.4.18", + "@vue/shared": "3.4.18" } }, "node_modules/@vue/shared": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.15.tgz", - "integrity": "sha512-KzfPTxVaWfB+eGcGdbSf4CWdaXcGDqckoeXUh7SB3fZdEtzPCK2Vq9B/lRRL3yutax/LWITz+SwvgyOxz5V75g==", + "version": "3.4.18", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.18.tgz", + "integrity": "sha512-CxouGFxxaW5r1WbrSmWwck3No58rApXgRSBxrqgnY1K+jk20F6DrXJkHdH9n4HVT+/B6G2CAn213Uq3npWiy8Q==", "dev": true }, "node_modules/abbrev": { @@ -2117,9 +2117,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001583", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001583.tgz", - "integrity": "sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q==", + "version": "1.0.30001585", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001585.tgz", + "integrity": "sha512-yr2BWR1yLXQ8fMpdS/4ZZXpseBgE7o4g41x3a6AJOqZuOi+iE/WdJYAuZ6Y95i4Ohd2Y+9MzIWRR+uGABH4s3Q==", "dev": true, "funding": [ { @@ -2207,16 +2207,10 @@ } }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -2229,6 +2223,9 @@ "engines": { "node": ">= 8.10.0" }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, "optionalDependencies": { "fsevents": "~2.3.2" } @@ -3329,9 +3326,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.656", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.656.tgz", - "integrity": "sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q==", + "version": "1.4.665", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.665.tgz", + "integrity": "sha512-UpyCWObBoD+nSZgOC2ToaIdZB0r9GhqT2WahPKiSki6ckkSuKhQNso8V2PrFcHBMleI/eqbKgVQgVC4Wni4ilw==", "dev": true }, "node_modules/emittery": { @@ -3411,9 +3408,9 @@ "dev": true }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "dev": true, "engines": { "node": ">=6" @@ -4050,9 +4047,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.0.tgz", - "integrity": "sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==", + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dependencies": { "reusify": "^1.0.4" } @@ -5565,9 +5562,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.6", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.6.tgz", - "integrity": "sha512-n62qCLbPjNjyo+owKtveQxZFZTBm+Ms6YoGD23Wew6Vw337PElFNifQpknPruVRQV57kVShPnLGo9vWxVhpPvA==", + "version": "0.30.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.7.tgz", + "integrity": "sha512-8vBuFF/I/+OSLRmdf2wwFCJCz+nSn0m6DPvGH1fS/KiQoSaR+sETbov0eIk9KhEKy8CYqIkIAnbohxT/4H0kuA==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -7550,9 +7547,9 @@ } }, "node_modules/postcss": { - "version": "8.4.33", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz", - "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==", + "version": "8.4.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.35.tgz", + "integrity": "sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==", "dev": true, "funding": [ { @@ -8311,9 +8308,9 @@ "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" }, "node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -8410,16 +8407,16 @@ } }, "node_modules/sigstore": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.2.0.tgz", - "integrity": "sha512-fcU9clHwEss2/M/11FFM8Jwc4PjBgbhXoNskoK5guoK0qGQBSeUbQZRJ+B2fDFIvhyf0gqCaPrel9mszbhAxug==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.2.1.tgz", + "integrity": "sha512-OBBSKvmjr4DCyUb+IC2p7wooOCsCNwaqvCilTJVNPo0y8lJl+LsCrfz4LtMwnw3Gn+8frt816wi1+DWZTUCpBQ==", "dependencies": { "@sigstore/bundle": "^2.1.1", - "@sigstore/core": "^0.2.0", + "@sigstore/core": "^1.0.0", "@sigstore/protobuf-specs": "^0.2.1", - "@sigstore/sign": "^2.2.1", + "@sigstore/sign": "^2.2.2", "@sigstore/tuf": "^2.3.0", - "@sigstore/verify": "^0.1.0" + "@sigstore/verify": "^1.0.0" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -8682,9 +8679,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", - "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==" + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", + "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==" }, "node_modules/sprintf-js": { "version": "1.0.3", diff --git a/packages/project/package.json b/packages/project/package.json index aafc5470669..bd3e10e3f54 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -140,7 +140,7 @@ "read-pkg-up": "^10.1.0", "resolve": "^1.22.8", "rimraf": "^5.0.5", - "semver": "^7.5.4", + "semver": "^7.6.0", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, From bd1ebb3834e70514fe28ebfccaf94143eea4ce6a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Feb 2024 05:16:55 +0000 Subject: [PATCH 1065/1272] [ui5-project]Bump actions/setup-node from 4.0.1 to 4.0.2 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.1 to 4.0.2. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4.0.1...v4.0.2) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index d93b9d11345..1a0809eeb54 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Node.js LTS 16.18.0 - uses: actions/setup-node@v4.0.1 + uses: actions/setup-node@v4.0.2 with: node-version: 16.18.0 From e16d914b18693280efdbccba9e54def406a18d8c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 13 Feb 2024 08:58:28 +0000 Subject: [PATCH 1066/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 97 ++++++++++++++++++++---------- 1 file changed, 66 insertions(+), 31 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b65f3539f33..9ffde941515 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -766,6 +766,12 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", @@ -2117,9 +2123,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001585", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001585.tgz", - "integrity": "sha512-yr2BWR1yLXQ8fMpdS/4ZZXpseBgE7o4g41x3a6AJOqZuOi+iE/WdJYAuZ6Y95i4Ohd2Y+9MzIWRR+uGABH4s3Q==", + "version": "1.0.30001587", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001587.tgz", + "integrity": "sha512-HMFNotUmLXn71BQxg8cijvqxnIAofforZOwGsxyXJ0qugTdspUF4sPSJ2vhgprHCB996tIDzEq1ubumPDV8ULA==", "dev": true, "funding": [ { @@ -3118,6 +3124,12 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/depcheck/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, "node_modules/depcheck/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -3190,9 +3202,9 @@ } }, "node_modules/diff": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", - "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", "dev": true, "engines": { "node": ">=0.3.1" @@ -3326,9 +3338,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.665", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.665.tgz", - "integrity": "sha512-UpyCWObBoD+nSZgOC2ToaIdZB0r9GhqT2WahPKiSki6ckkSuKhQNso8V2PrFcHBMleI/eqbKgVQgVC4Wni4ilw==", + "version": "1.4.667", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.667.tgz", + "integrity": "sha512-66L3pLlWhTNVUhnmSA5+qDM3fwnXsM6KAqE36e2w4KN0g6pkEtlT5bs41FQtQwVwKnfhNBXiWRLPs30HSxd7Kw==", "dev": true }, "node_modules/emittery": { @@ -4545,9 +4557,9 @@ } }, "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz", + "integrity": "sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==", "dependencies": { "function-bind": "^1.1.2" }, @@ -4618,9 +4630,9 @@ "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" }, "node_modules/http-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", - "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.1.tgz", + "integrity": "sha512-My1KCEPs6A0hb4qCVzYp8iEvA8j8YqcvXLZZH8C9OFuTYpYjHE7N2dtG3mRl1HMD4+VGXpF3XcDVcxGBT7yDZQ==", "dependencies": { "agent-base": "^7.1.0", "debug": "^4.3.4" @@ -4630,9 +4642,9 @@ } }, "node_modules/https-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", - "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.3.tgz", + "integrity": "sha512-kCnwztfX0KZJSLOBrcL0emLeFako55NWMovvyPP2AjsghNk9RB1yjSI+jVumPHYZsNXegNoqupSW9IY3afSH8w==", "dependencies": { "agent-base": "^7.0.2", "debug": "4" @@ -4791,10 +4803,17 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } }, "node_modules/irregular-plurals": { "version": "3.5.0", @@ -5305,6 +5324,11 @@ "xmlcreate": "^2.0.4" } }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==" + }, "node_modules/jsdoc": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.2.tgz", @@ -8477,15 +8501,15 @@ } }, "node_modules/socks": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", - "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.3.tgz", + "integrity": "sha512-vfuYK48HXCTFD03G/1/zkIls3Ebr2YNa4qU9gHDZdblHLiqhJrJGkY3+0Nx0JpN9qBhJbVObc1CNciT1bIZJxw==", "dependencies": { - "ip": "^2.0.0", + "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" }, "engines": { - "node": ">= 10.13.0", + "node": ">= 10.0.0", "npm": ">= 3.0.0" } }, @@ -8684,10 +8708,9 @@ "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==" }, "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==" }, "node_modules/ssri": { "version": "10.0.5", @@ -8946,6 +8969,12 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/supertap/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -9031,6 +9060,12 @@ "dev": true, "optional": true }, + "node_modules/tap-parser/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, "node_modules/tap-parser/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", From a4cd9afc56cc5d4558df72759df1f50149f42a0c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 18 Feb 2024 03:20:39 +0000 Subject: [PATCH 1067/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 184 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 98 insertions(+), 88 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9ffde941515..a25c1b7b089 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -49,7 +49,7 @@ "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.6", - "js-beautify": "^1.14.11", + "js-beautify": "^1.15.1", "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", @@ -795,9 +795,9 @@ } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "engines": { "node": ">=6.0.0" } @@ -1157,11 +1157,11 @@ } }, "node_modules/@sigstore/bundle": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.1.tgz", - "integrity": "sha512-v3/iS+1nufZdKQ5iAlQKcCsoh0jffQyABvYIxKsZQFWc4ubuGjwZklFHpDgV6O6T7vvV78SW5NHI91HFKEcxKg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.2.0.tgz", + "integrity": "sha512-5VI58qgNs76RDrwXNhpmyN/jKpq9evV/7f1XrcqcAfvxDl5SeVY/I5Rmfe96ULAV7/FK5dge9RBKGBJPhL1WsQ==", "dependencies": { - "@sigstore/protobuf-specs": "^0.2.1" + "@sigstore/protobuf-specs": "^0.3.0" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -1176,21 +1176,21 @@ } }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", - "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.0.tgz", + "integrity": "sha512-zxiQ66JFOjVvP9hbhGj/F/qNdsZfkGb/dVXSanNRNuAzMlr4MC95voPUBX8//ZNnmv3uSYzdfR/JSkrgvZTGxA==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/@sigstore/sign": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.2.tgz", - "integrity": "sha512-mAifqvvGOCkb5BJ5d/SRrVP5+kKCGxtcHuti6lgqZalIfNxikxlJMMptOqFp9+xV5LAnJMSaMWtzvcgNZ3PlPA==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.3.tgz", + "integrity": "sha512-LqlA+ffyN02yC7RKszCdMTS6bldZnIodiox+IkT8B2f8oRYXCB3LQ9roXeiEL21m64CVH1wyveYAORfD65WoSw==", "dependencies": { - "@sigstore/bundle": "^2.1.1", + "@sigstore/bundle": "^2.2.0", "@sigstore/core": "^1.0.0", - "@sigstore/protobuf-specs": "^0.2.1", + "@sigstore/protobuf-specs": "^0.3.0", "make-fetch-happen": "^13.0.0" }, "engines": { @@ -1198,11 +1198,11 @@ } }, "node_modules/@sigstore/tuf": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.0.tgz", - "integrity": "sha512-S98jo9cpJwO1mtQ+2zY7bOdcYyfVYCUaofCG6wWRzk3pxKHVAkSfshkfecto2+LKsx7Ovtqbgb2LS8zTRhxJ9Q==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.1.tgz", + "integrity": "sha512-9Iv40z652td/QbV0o5n/x25H9w6IYRt2pIGbTX55yFDYlApDQn/6YZomjz6+KBx69rXHLzHcbtTS586mDdFD+Q==", "dependencies": { - "@sigstore/protobuf-specs": "^0.2.1", + "@sigstore/protobuf-specs": "^0.3.0", "tuf-js": "^2.2.0" }, "engines": { @@ -1210,13 +1210,13 @@ } }, "node_modules/@sigstore/verify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.0.0.tgz", - "integrity": "sha512-sRU6nblDBQ4pVTWni019Kij+XQj4RP75WXN5z3qHk81dt/L8A7r3v8RgRInTup4/Jf90WNods9CcbnWj7zJ26w==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.1.0.tgz", + "integrity": "sha512-1fTqnqyTBWvV7cftUUFtDcHPdSox0N3Ub7C0lRyReYx4zZUlNTZjCV+HPy4Lre+r45dV7Qx5JLKvqqsgxuyYfg==", "dependencies": { - "@sigstore/bundle": "^2.1.1", + "@sigstore/bundle": "^2.2.0", "@sigstore/core": "^1.0.0", - "@sigstore/protobuf-specs": "^0.2.1" + "@sigstore/protobuf-specs": "^0.3.0" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -1402,39 +1402,39 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.4.18", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.18.tgz", - "integrity": "sha512-F7YK8lMK0iv6b9/Gdk15A67wM0KKZvxDxed0RR60C1z9tIJTKta+urs4j0RTN5XqHISzI3etN3mX0uHhjmoqjQ==", + "version": "3.4.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.19.tgz", + "integrity": "sha512-gj81785z0JNzRcU0Mq98E56e4ltO1yf8k5PQ+tV/7YHnbZkrM0fyFyuttnN8ngJZjbpofWE/m4qjKBiLl8Ju4w==", "dev": true, "dependencies": { "@babel/parser": "^7.23.9", - "@vue/shared": "3.4.18", + "@vue/shared": "3.4.19", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.18", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.18.tgz", - "integrity": "sha512-24Eb8lcMfInefvQ6YlEVS18w5Q66f4+uXWVA+yb7praKbyjHRNuKVWGuinfSSjM0ZIiPi++QWukhkgznBaqpEA==", + "version": "3.4.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.19.tgz", + "integrity": "sha512-vm6+cogWrshjqEHTzIDCp72DKtea8Ry/QVpQRYoyTIg9k7QZDX6D8+HGURjtmatfgM8xgCFtJJaOlCaRYRK3QA==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.18", - "@vue/shared": "3.4.18" + "@vue/compiler-core": "3.4.19", + "@vue/shared": "3.4.19" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.18", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.18.tgz", - "integrity": "sha512-rG5tqtnzwrVpMqAQ7FHtvHaV70G6LLfJIWLYZB/jZ9m/hrnZmIQh+H3ewnC5onwe/ibljm9+ZupxeElzqCkTAw==", + "version": "3.4.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.19.tgz", + "integrity": "sha512-LQ3U4SN0DlvV0xhr1lUsgLCYlwQfUfetyPxkKYu7dkfvx7g3ojrGAkw0AERLOKYXuAGnqFsEuytkdcComei3Yg==", "dev": true, "dependencies": { "@babel/parser": "^7.23.9", - "@vue/compiler-core": "3.4.18", - "@vue/compiler-dom": "3.4.18", - "@vue/compiler-ssr": "3.4.18", - "@vue/shared": "3.4.18", + "@vue/compiler-core": "3.4.19", + "@vue/compiler-dom": "3.4.19", + "@vue/compiler-ssr": "3.4.19", + "@vue/shared": "3.4.19", "estree-walker": "^2.0.2", "magic-string": "^0.30.6", "postcss": "^8.4.33", @@ -1442,19 +1442,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.18", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.18.tgz", - "integrity": "sha512-hSlv20oUhPxo2UYUacHgGaxtqP0tvFo6ixxxD6JlXIkwzwoZ9eKK6PFQN4hNK/R13JlNyldwWt/fqGBKgWJ6nQ==", + "version": "3.4.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.19.tgz", + "integrity": "sha512-P0PLKC4+u4OMJ8sinba/5Z/iDT84uMRRlrWzadgLA69opCpI1gG4N55qDSC+dedwq2fJtzmGald05LWR5TFfLw==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.18", - "@vue/shared": "3.4.18" + "@vue/compiler-dom": "3.4.19", + "@vue/shared": "3.4.19" } }, "node_modules/@vue/shared": { - "version": "3.4.18", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.18.tgz", - "integrity": "sha512-CxouGFxxaW5r1WbrSmWwck3No58rApXgRSBxrqgnY1K+jk20F6DrXJkHdH9n4HVT+/B6G2CAn213Uq3npWiy8Q==", + "version": "3.4.19", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.19.tgz", + "integrity": "sha512-/KliRRHMF6LoiThEy+4c1Z4KB/gbPrGjWwJR+crg2otgrf/egKzRaCPvJ51S5oetgsgXLfc4Rm5ZgrKHZrtMSw==", "dev": true }, "node_modules/abbrev": { @@ -1850,9 +1850,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.3.tgz", - "integrity": "sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "dev": true, "funding": [ { @@ -1869,8 +1869,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001580", - "electron-to-chromium": "^1.4.648", + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" }, @@ -2123,9 +2123,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001587", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001587.tgz", - "integrity": "sha512-HMFNotUmLXn71BQxg8cijvqxnIAofforZOwGsxyXJ0qugTdspUF4sPSJ2vhgprHCB996tIDzEq1ubumPDV8ULA==", + "version": "1.0.30001588", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001588.tgz", + "integrity": "sha512-+hVY9jE44uKLkH0SrUTqxjxqNTOWHsbnQDIKjwkZ3lNTzUUVdBLBGXtj/q5Mp5u98r3droaZAewQuEDzjQdZlQ==", "dev": true, "funding": [ { @@ -3338,15 +3338,15 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.667", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.667.tgz", - "integrity": "sha512-66L3pLlWhTNVUhnmSA5+qDM3fwnXsM6KAqE36e2w4KN0g6pkEtlT5bs41FQtQwVwKnfhNBXiWRLPs30HSxd7Kw==", + "version": "1.4.673", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.673.tgz", + "integrity": "sha512-zjqzx4N7xGdl5468G+vcgzDhaHkaYgVcf9MqgexcTqsl2UHSCmOj/Bi3HAprg4BZCpC7HyD8a6nZl6QAZf72gw==", "dev": true }, "node_modules/emittery": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.0.2.tgz", - "integrity": "sha512-PqHdP6JJrxiSXQzCAzII77dVsfyGWu+7V0ghqkaCej2shF1cnIPeFE9kKZcVTqvBjrRMDVOdNXKEYcjxkznS1g==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.0.3.tgz", + "integrity": "sha512-tJdCJitoy2lrC2ldJcqN4vkqJ00lT+tOWNT1hBJjO/3FDMJa5TTIiYGCKGkn/WfCyOzUMObeohbVTj00fhiLiA==", "dev": true, "engines": { "node": ">=14.16" @@ -4630,9 +4630,9 @@ "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" }, "node_modules/http-proxy-agent": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.1.tgz", - "integrity": "sha512-My1KCEPs6A0hb4qCVzYp8iEvA8j8YqcvXLZZH8C9OFuTYpYjHE7N2dtG3mRl1HMD4+VGXpF3XcDVcxGBT7yDZQ==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dependencies": { "agent-base": "^7.1.0", "debug": "^4.3.4" @@ -4642,9 +4642,9 @@ } }, "node_modules/https-proxy-agent": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.3.tgz", - "integrity": "sha512-kCnwztfX0KZJSLOBrcL0emLeFako55NWMovvyPP2AjsghNk9RB1yjSI+jVumPHYZsNXegNoqupSW9IY3afSH8w==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", "dependencies": { "agent-base": "^7.0.2", "debug": "4" @@ -5272,14 +5272,15 @@ } }, "node_modules/js-beautify": { - "version": "1.14.11", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.11.tgz", - "integrity": "sha512-rPogWqAfoYh1Ryqqh2agUpVfbxAhbjuN1SmU86dskQUKouRiggUTCO4+2ym9UPXllc2WAp0J+T5qxn7Um3lCdw==", + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.1.tgz", + "integrity": "sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==", "dev": true, "dependencies": { "config-chain": "^1.1.13", - "editorconfig": "^1.0.3", + "editorconfig": "^1.0.4", "glob": "^10.3.3", + "js-cookie": "^3.0.5", "nopt": "^7.2.0" }, "bin": { @@ -5291,6 +5292,15 @@ "node": ">=14" } }, + "node_modules/js-cookie": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", + "integrity": "sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==", + "dev": true, + "engines": { + "node": ">=14" + } + }, "node_modules/js-string-escape": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", @@ -8431,16 +8441,16 @@ } }, "node_modules/sigstore": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.2.1.tgz", - "integrity": "sha512-OBBSKvmjr4DCyUb+IC2p7wooOCsCNwaqvCilTJVNPo0y8lJl+LsCrfz4LtMwnw3Gn+8frt816wi1+DWZTUCpBQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.2.2.tgz", + "integrity": "sha512-2A3WvXkQurhuMgORgT60r6pOWiCOO5LlEqY2ADxGBDGVYLSo5HN0uLtb68YpVpuL/Vi8mLTe7+0Dx2Fq8lLqEg==", "dependencies": { - "@sigstore/bundle": "^2.1.1", + "@sigstore/bundle": "^2.2.0", "@sigstore/core": "^1.0.0", - "@sigstore/protobuf-specs": "^0.2.1", - "@sigstore/sign": "^2.2.2", - "@sigstore/tuf": "^2.3.0", - "@sigstore/verify": "^1.0.0" + "@sigstore/protobuf-specs": "^0.3.0", + "@sigstore/sign": "^2.2.3", + "@sigstore/tuf": "^2.3.1", + "@sigstore/verify": "^1.1.0" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -8688,9 +8698,9 @@ } }, "node_modules/spdx-exceptions": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.4.0.tgz", - "integrity": "sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==" }, "node_modules/spdx-expression-parse": { "version": "4.0.0", @@ -9197,9 +9207,9 @@ } }, "node_modules/terser": { - "version": "5.27.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.27.0.tgz", - "integrity": "sha512-bi1HRwVRskAjheeYl291n3JC4GgO/Ty4z1nVs5AAsmonJulGxpSektecnNedrwK9C7vpvVtcX3cw00VSLt7U2A==", + "version": "5.27.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.27.1.tgz", + "integrity": "sha512-29wAr6UU/oQpnTw5HoadwjUZnFQXGdOfj0LjZ4sVxzqwHh/QVkvr7m8y9WoR4iN3FRitVduTc6KdjcW38Npsug==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index bd3e10e3f54..11e99edb29b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -160,7 +160,7 @@ "istanbul-lib-instrument": "^6.0.1", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.6", - "js-beautify": "^1.14.11", + "js-beautify": "^1.15.1", "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", From 9b0e299476f9ac77cf50a115c8b3565577af3cda Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 19 Feb 2024 10:28:13 +0100 Subject: [PATCH 1068/1272] [ui5-project][BREAKING] Require Node.js 20.11.x/>=21.2.0 and npm >=10 BREAKING CHANGE: Support for older Node.js and npm releases has been dropped. Only Node.js 20.11.x and >=21.2.0 as well as npm v10 or higher are supported. --- .../project/.github/workflows/github-ci.yml | 4 +-- packages/project/azure-pipelines.yml | 29 ++++++++++--------- packages/project/package-lock.json | 4 +-- packages/project/package.json | 4 +-- 4 files changed, 22 insertions(+), 19 deletions(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 1a0809eeb54..b3477c2e037 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -16,10 +16,10 @@ jobs: - uses: actions/checkout@v4 - - name: Use Node.js LTS 16.18.0 + - name: Use Node.js LTS 20.11.0 uses: actions/setup-node@v4.0.2 with: - node-version: 16.18.0 + node-version: 20.11.0 - name: Install dependencies run: npm ci diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 054adece4de..2c2609c18bd 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -6,32 +6,35 @@ trigger: - main +variables: + CI: true + strategy: matrix: - linux_node_lts_16: + linux_node_lts_20_min_version: imageName: 'ubuntu-22.04' - node_version: 16.x - linux_node_lts_18_min_version: + node_version: 20.11.0 + linux_node_21_min_version: imageName: 'ubuntu-22.04' - node_version: 18.12.0 - linux_node_lts_18: + node_version: 21.2.0 + linux_node_lts_20: imageName: 'ubuntu-22.04' - node_version: 18.x - mac_node_lts_18: + node_version: 20.x + mac_node_lts_20: imageName: 'macos-12' - node_version: 18.x - windows_node_lts_18: + node_version: 20.x + windows_node_lts_20: imageName: 'windows-2022' - node_version: 18.x + node_version: 20.x linux_node_current: imageName: 'ubuntu-22.04' - node_version: 20.x + node_version: 21.x mac_node_current: imageName: 'macos-12' - node_version: 20.x + node_version: 21.x windows_node_current: imageName: 'windows-2022' - node_version: 20.x + node_version: 21.x pool: vmImage: $(imageName) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a25c1b7b089..211de605fad 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -57,8 +57,8 @@ "tap-xunit": "^2.4.1" }, "engines": { - "node": "^16.18.0 || >=18.12.0", - "npm": ">= 8" + "node": "^20.11.0 || >=21.2.0", + "npm": ">= 10" } }, "node_modules/@aashutoshrathi/word-wrap": { diff --git a/packages/project/package.json b/packages/project/package.json index 11e99edb29b..41ac4b33241 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -33,8 +33,8 @@ "./package.json": "./package.json" }, "engines": { - "node": "^16.18.0 || >=18.12.0", - "npm": ">= 8" + "node": "^20.11.0 || >=21.2.0", + "npm": ">= 10" }, "scripts": { "test": "npm run lint && npm run jsdoc-generate && npm run coverage && npm run depcheck", From 7d07b57504e69ed226027945195e85055374a885 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 19 Feb 2024 15:09:17 +0100 Subject: [PATCH 1069/1272] [ui5-project][INTERNAL] Use import.meta.dirname --- packages/project/lib/build/helpers/createBuildManifest.js | 2 +- packages/project/test/lib/build/helpers/composeProjectList.js | 3 +-- .../test/lib/build/helpers/createBuildManifest.integration.js | 3 +-- packages/project/test/lib/build/helpers/createBuildManifest.js | 3 +-- packages/project/test/lib/graph/Module.js | 3 +-- packages/project/test/lib/graph/ProjectGraph.js | 3 +-- packages/project/test/lib/graph/Workspace.js | 3 +-- packages/project/test/lib/graph/graph.integration.js | 3 +-- packages/project/test/lib/graph/graph.js | 3 +-- packages/project/test/lib/graph/graphFromObject.js | 3 +-- .../project/test/lib/graph/graphFromPackageDependencies.js | 3 +-- packages/project/test/lib/graph/graphFromStaticFile.js | 3 +-- packages/project/test/lib/graph/helpers/createWorkspace.js | 3 +-- .../project/test/lib/graph/helpers/ui5Framework.integration.js | 3 +-- packages/project/test/lib/graph/helpers/ui5Framework.js | 3 +-- packages/project/test/lib/graph/projectGraphBuilder.js | 3 +-- .../lib/graph/providers/NodePackageDependencies.integration.js | 3 +-- packages/project/test/lib/package-exports.js | 2 +- packages/project/test/lib/specifications/ComponentProject.js | 3 +-- packages/project/test/lib/specifications/Project.js | 3 +-- packages/project/test/lib/specifications/Specification.js | 3 +-- .../project/test/lib/specifications/extensions/ProjectShim.js | 3 +-- .../test/lib/specifications/extensions/ServerMiddleware.js | 3 +-- packages/project/test/lib/specifications/extensions/Task.js | 3 +-- packages/project/test/lib/specifications/types/Application.js | 3 +-- packages/project/test/lib/specifications/types/Library.js | 3 +-- packages/project/test/lib/specifications/types/Module.js | 3 +-- packages/project/test/lib/specifications/types/ThemeLibrary.js | 3 +-- .../test/lib/ui5framework/Openui5Resolver.integration.js | 3 +-- .../ui5framework/Sapui5MavenSnapshotResolver.integration.js | 3 +-- .../test/lib/ui5framework/Sapui5Resolver.integration.js | 3 +-- packages/project/test/lib/ui5framework/npm/Installer.js | 3 +-- packages/project/test/lib/utils/fs.js | 3 +-- 33 files changed, 33 insertions(+), 64 deletions(-) diff --git a/packages/project/lib/build/helpers/createBuildManifest.js b/packages/project/lib/build/helpers/createBuildManifest.js index ce80a98de59..998935b3c05 100644 --- a/packages/project/lib/build/helpers/createBuildManifest.js +++ b/packages/project/lib/build/helpers/createBuildManifest.js @@ -1,6 +1,6 @@ import {createRequire} from "node:module"; -// Using CommonsJS require as importing json files causes an ExperimentalWarning +// Using CommonsJS require since JSON module imports are still experimental const require = createRequire(import.meta.url); async function getVersion(pkg) { diff --git a/packages/project/test/lib/build/helpers/composeProjectList.js b/packages/project/test/lib/build/helpers/composeProjectList.js index f539e833210..f8f58185f38 100644 --- a/packages/project/test/lib/build/helpers/composeProjectList.js +++ b/packages/project/test/lib/build/helpers/composeProjectList.js @@ -2,10 +2,9 @@ import test from "ava"; import sinon from "sinon"; import esmock from "esmock"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import {graphFromObject} from "../../../../lib/graph/graph.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const libraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.e"); diff --git a/packages/project/test/lib/build/helpers/createBuildManifest.integration.js b/packages/project/test/lib/build/helpers/createBuildManifest.integration.js index c2bc850799c..015ca68bd1d 100644 --- a/packages/project/test/lib/build/helpers/createBuildManifest.integration.js +++ b/packages/project/test/lib/build/helpers/createBuildManifest.integration.js @@ -1,11 +1,10 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import createBuildManifest from "../../../../lib/build/helpers/createBuildManifest.js"; import Module from "../../../../lib/graph/Module.js"; import Specification from "../../../../lib/specifications/Specification.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const buildDescrApplicationAPath = diff --git a/packages/project/test/lib/build/helpers/createBuildManifest.js b/packages/project/test/lib/build/helpers/createBuildManifest.js index 822dbf600b5..7b2266b8897 100644 --- a/packages/project/test/lib/build/helpers/createBuildManifest.js +++ b/packages/project/test/lib/build/helpers/createBuildManifest.js @@ -1,11 +1,10 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import semver from "semver"; import createBuildManifest from "../../../../lib/build/helpers/createBuildManifest.js"; import Specification from "../../../../lib/specifications/Specification.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const applicationProjectInput = { diff --git a/packages/project/test/lib/graph/Module.js b/packages/project/test/lib/graph/Module.js index 5761c586aa6..c87aac18542 100644 --- a/packages/project/test/lib/graph/Module.js +++ b/packages/project/test/lib/graph/Module.js @@ -1,10 +1,9 @@ import test from "ava"; import sinon from "sinon"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import Module from "../../../lib/graph/Module.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const fixturesPath = path.join(__dirname, "..", "..", "fixtures"); const applicationAPath = path.join(fixturesPath, "application.a"); diff --git a/packages/project/test/lib/graph/ProjectGraph.js b/packages/project/test/lib/graph/ProjectGraph.js index ed2338bc85b..46295f96723 100644 --- a/packages/project/test/lib/graph/ProjectGraph.js +++ b/packages/project/test/lib/graph/ProjectGraph.js @@ -1,11 +1,10 @@ import path from "node:path"; -import {fileURLToPath} from "node:url"; import test from "ava"; import sinonGlobal from "sinon"; import esmock from "esmock"; import Specification from "../../../lib/specifications/Specification.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); diff --git a/packages/project/test/lib/graph/Workspace.js b/packages/project/test/lib/graph/Workspace.js index 8515b0a69f6..6e5b586e138 100644 --- a/packages/project/test/lib/graph/Workspace.js +++ b/packages/project/test/lib/graph/Workspace.js @@ -1,11 +1,10 @@ import path from "node:path"; -import {fileURLToPath} from "node:url"; import test from "ava"; import sinonGlobal from "sinon"; import esmock from "esmock"; import Module from "../../../lib/graph/Module.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const libraryD = path.join(__dirname, "..", "..", "fixtures", "library.d"); const libraryE = path.join(__dirname, "..", "..", "fixtures", "library.e"); const collectionLibraryA = path.join(__dirname, "..", "..", "fixtures", "collection", "library.a"); diff --git a/packages/project/test/lib/graph/graph.integration.js b/packages/project/test/lib/graph/graph.integration.js index 649c130fbe3..9b459a0f823 100644 --- a/packages/project/test/lib/graph/graph.integration.js +++ b/packages/project/test/lib/graph/graph.integration.js @@ -1,11 +1,10 @@ import test from "ava"; -import {fileURLToPath} from "node:url"; import path from "node:path"; import sinonGlobal from "sinon"; import esmock from "esmock"; import Workspace from "../../../lib/graph/Workspace.js"; import CacheMode from "../../../lib/ui5Framework/maven/CacheMode.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const fixturesPath = path.join(__dirname, "..", "..", "fixtures"); const libraryHPath = path.join(fixturesPath, "library.h"); diff --git a/packages/project/test/lib/graph/graph.js b/packages/project/test/lib/graph/graph.js index 7fcf7815f39..c11bfbc8891 100644 --- a/packages/project/test/lib/graph/graph.js +++ b/packages/project/test/lib/graph/graph.js @@ -1,11 +1,10 @@ import test from "ava"; -import {fileURLToPath} from "node:url"; import path from "node:path"; import sinonGlobal from "sinon"; import esmock from "esmock"; import CacheMode from "../../../lib/ui5Framework/maven/CacheMode.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const fixturesPath = path.join(__dirname, "..", "..", "fixtures"); test.beforeEach(async (t) => { diff --git a/packages/project/test/lib/graph/graphFromObject.js b/packages/project/test/lib/graph/graphFromObject.js index db562bd4709..eac20795e19 100644 --- a/packages/project/test/lib/graph/graphFromObject.js +++ b/packages/project/test/lib/graph/graphFromObject.js @@ -1,11 +1,10 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinonGlobal from "sinon"; import esmock from "esmock"; import ValidationError from "../../../lib/validation/ValidationError.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); const applicationBPath = path.join(__dirname, "..", "..", "fixtures", "application.b"); diff --git a/packages/project/test/lib/graph/graphFromPackageDependencies.js b/packages/project/test/lib/graph/graphFromPackageDependencies.js index 6859da27739..491cc442ed5 100644 --- a/packages/project/test/lib/graph/graphFromPackageDependencies.js +++ b/packages/project/test/lib/graph/graphFromPackageDependencies.js @@ -1,10 +1,9 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinonGlobal from "sinon"; import {graphFromPackageDependencies} from "../../../lib/graph/graph.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); test.beforeEach((t) => { diff --git a/packages/project/test/lib/graph/graphFromStaticFile.js b/packages/project/test/lib/graph/graphFromStaticFile.js index 67951b25775..acff5761ab3 100644 --- a/packages/project/test/lib/graph/graphFromStaticFile.js +++ b/packages/project/test/lib/graph/graphFromStaticFile.js @@ -1,11 +1,10 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinonGlobal from "sinon"; import {graphFromStaticFile} from "../../../lib/graph/graph.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationHPath = path.join(__dirname, "..", "..", "fixtures", "application.h"); const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); diff --git a/packages/project/test/lib/graph/helpers/createWorkspace.js b/packages/project/test/lib/graph/helpers/createWorkspace.js index 16ba12ca250..b73a7c4a395 100644 --- a/packages/project/test/lib/graph/helpers/createWorkspace.js +++ b/packages/project/test/lib/graph/helpers/createWorkspace.js @@ -1,10 +1,9 @@ import test from "ava"; -import {fileURLToPath} from "node:url"; import path from "node:path"; import sinonGlobal from "sinon"; import esmock from "esmock"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const fixturesPath = path.join(__dirname, "..", "..", "..", "fixtures"); const libraryHPath = path.join(fixturesPath, "library.h"); diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js index e92d4082377..93096d50109 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.integration.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.integration.js @@ -2,10 +2,9 @@ import test from "ava"; import sinonGlobal from "sinon"; import esmock from "esmock"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import DependencyTreeProvider from "../../../../lib/graph/providers/DependencyTree.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; // Use path within project as mocking base directory to reduce chance of side effects // in case mocks/stubs do not work and real fs is used diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index e4daf03f585..f400d16458d 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -1,5 +1,4 @@ import path from "node:path"; -import {fileURLToPath} from "node:url"; import test from "ava"; import sinonGlobal from "sinon"; import esmock from "esmock"; @@ -8,7 +7,7 @@ import projectGraphBuilder from "../../../../lib/graph/projectGraphBuilder.js"; import Specification from "../../../../lib/specifications/Specification.js"; import CacheMode from "../../../../lib/ui5Framework/maven/CacheMode.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const libraryDPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.d"); diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index 8229f31039e..044a0237f0e 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -1,11 +1,10 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinonGlobal from "sinon"; import esmock from "esmock"; import projectGraphBuilder from "../../../lib/graph/projectGraphBuilder.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const libraryEPath = path.join(__dirname, "..", "..", "fixtures", "library.e"); const libraryFPath = path.join(__dirname, "..", "..", "fixtures", "library.f"); diff --git a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js index 19657aa4196..402fb36e59c 100644 --- a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js +++ b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js @@ -1,9 +1,8 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinonGlobal from "sinon"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const applicationAAliasesPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a.aliases"); diff --git a/packages/project/test/lib/package-exports.js b/packages/project/test/lib/package-exports.js index e1e9737f910..305cdbb04b1 100644 --- a/packages/project/test/lib/package-exports.js +++ b/packages/project/test/lib/package-exports.js @@ -1,7 +1,7 @@ import test from "ava"; import {createRequire} from "node:module"; -// Using CommonsJS require as importing json files causes an ExperimentalWarning +// Using CommonsJS require since JSON module imports are still experimental const require = createRequire(import.meta.url); // package.json should be exported to allow reading version (e.g. from @ui5/cli) diff --git a/packages/project/test/lib/specifications/ComponentProject.js b/packages/project/test/lib/specifications/ComponentProject.js index bad8e2e8273..1c662e3b4b5 100644 --- a/packages/project/test/lib/specifications/ComponentProject.js +++ b/packages/project/test/lib/specifications/ComponentProject.js @@ -1,6 +1,5 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinon from "sinon"; import Specification from "../../../lib/specifications/Specification.js"; @@ -8,7 +7,7 @@ function clone(o) { return JSON.parse(JSON.stringify(o)); } -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); const basicProjectInput = { diff --git a/packages/project/test/lib/specifications/Project.js b/packages/project/test/lib/specifications/Project.js index 59f055f409e..bb5aec17529 100644 --- a/packages/project/test/lib/specifications/Project.js +++ b/packages/project/test/lib/specifications/Project.js @@ -1,6 +1,5 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import chalk from "chalk"; import Specification from "../../../lib/specifications/Specification.js"; @@ -8,7 +7,7 @@ function clone(obj) { return JSON.parse(JSON.stringify(obj)); } -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); const basicProjectInput = { diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index 3d6621c0ec7..b9de15a09ae 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -1,7 +1,6 @@ import test from "ava"; import esmock from "esmock"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinon from "sinon"; import Specification from "../../../lib/specifications/Specification.js"; import Application from "../../../lib/specifications/types/Application.js"; @@ -12,7 +11,7 @@ import Task from "../../../lib/specifications/extensions/Task.js"; import ProjectShim from "../../../lib/specifications/extensions/ProjectShim.js"; import ServerMiddleware from "../../../lib/specifications/extensions/ServerMiddleware.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "fixtures", "application.a"); const libraryHPath = path.join(__dirname, "..", "..", "fixtures", "library.h"); diff --git a/packages/project/test/lib/specifications/extensions/ProjectShim.js b/packages/project/test/lib/specifications/extensions/ProjectShim.js index e7d9f3ceef7..f9afa782b47 100644 --- a/packages/project/test/lib/specifications/extensions/ProjectShim.js +++ b/packages/project/test/lib/specifications/extensions/ProjectShim.js @@ -1,6 +1,5 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinon from "sinon"; import Specification from "../../../../lib/specifications/Specification.js"; import ProjectShim from "../../../../lib/specifications/extensions/ProjectShim.js"; @@ -9,7 +8,7 @@ function clone(obj) { return JSON.parse(JSON.stringify(obj)); } -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const nonExistingPath = path.join(__dirname, "..", "..", "..", "fixtures", "does-not-exist"); const basicProjectShimInput = { diff --git a/packages/project/test/lib/specifications/extensions/ServerMiddleware.js b/packages/project/test/lib/specifications/extensions/ServerMiddleware.js index d1536682e33..d6c25d9bcee 100644 --- a/packages/project/test/lib/specifications/extensions/ServerMiddleware.js +++ b/packages/project/test/lib/specifications/extensions/ServerMiddleware.js @@ -1,6 +1,5 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinon from "sinon"; import Specification from "../../../../lib/specifications/Specification.js"; import ServerMiddleware from "../../../../lib/specifications/extensions/ServerMiddleware.js"; @@ -9,7 +8,7 @@ function clone(obj) { return JSON.parse(JSON.stringify(obj)); } -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const genericCjsExtensionPath = path.join(__dirname, "..", "..", "..", "fixtures", "extension.a"); const genericEsmExtensionPath = path.join(__dirname, "..", "..", "..", "fixtures", "extension.a.esm"); diff --git a/packages/project/test/lib/specifications/extensions/Task.js b/packages/project/test/lib/specifications/extensions/Task.js index e0267bd7879..24cf306523a 100644 --- a/packages/project/test/lib/specifications/extensions/Task.js +++ b/packages/project/test/lib/specifications/extensions/Task.js @@ -1,6 +1,5 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinon from "sinon"; import Specification from "../../../../lib/specifications/Specification.js"; import Task from "../../../../lib/specifications/extensions/Task.js"; @@ -9,7 +8,7 @@ function clone(obj) { return JSON.parse(JSON.stringify(obj)); } -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const genericCjsExtensionPath = path.join(__dirname, "..", "..", "..", "fixtures", "extension.a"); const genericEsmExtensionPath = path.join(__dirname, "..", "..", "..", "fixtures", "extension.a.esm"); diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 74e88bd05bd..304cf476685 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -1,12 +1,11 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import {createResource} from "@ui5/fs/resourceFactory"; import sinonGlobal from "sinon"; import Specification from "../../../../lib/specifications/Specification.js"; import Application from "../../../../lib/specifications/types/Application.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const applicationAPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.a"); const applicationHPath = path.join(__dirname, "..", "..", "..", "fixtures", "application.h"); diff --git a/packages/project/test/lib/specifications/types/Library.js b/packages/project/test/lib/specifications/types/Library.js index cdc189c2fff..aaeed466701 100644 --- a/packages/project/test/lib/specifications/types/Library.js +++ b/packages/project/test/lib/specifications/types/Library.js @@ -1,10 +1,9 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinonGlobal from "sinon"; import Library from "../../../../lib/specifications/types/Library.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const libraryDPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.d"); const libraryHPath = path.join(__dirname, "..", "..", "..", "fixtures", "library.h"); diff --git a/packages/project/test/lib/specifications/types/Module.js b/packages/project/test/lib/specifications/types/Module.js index 161803dc566..deff4f7fdb8 100644 --- a/packages/project/test/lib/specifications/types/Module.js +++ b/packages/project/test/lib/specifications/types/Module.js @@ -1,10 +1,9 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinonGlobal from "sinon"; import Specification from "../../../../lib/specifications/Specification.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const moduleAPath = path.join(__dirname, "..", "..", "..", "fixtures", "module.a"); test.beforeEach((t) => { diff --git a/packages/project/test/lib/specifications/types/ThemeLibrary.js b/packages/project/test/lib/specifications/types/ThemeLibrary.js index 727b4b2c2c4..10559e29c3e 100644 --- a/packages/project/test/lib/specifications/types/ThemeLibrary.js +++ b/packages/project/test/lib/specifications/types/ThemeLibrary.js @@ -1,10 +1,9 @@ import test from "ava"; import path from "node:path"; -import {fileURLToPath} from "node:url"; import sinonGlobal from "sinon"; import Specification from "../../../../lib/specifications/Specification.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; const themeLibraryEPath = path.join(__dirname, "..", "..", "..", "fixtures", "theme.library.e"); test.beforeEach((t) => { diff --git a/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js b/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js index c62f3537d2b..eef9f149c60 100644 --- a/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js +++ b/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js @@ -2,9 +2,8 @@ import test from "ava"; import sinonGlobal from "sinon"; import esmock from "esmock"; import path from "node:path"; -import {fileURLToPath} from "node:url"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; // Use path within project as mocking base directory to reduce chance of side effects // in case mocks/stubs do not work and real fs is used diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.integration.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.integration.js index 61317ed0c7f..c82fc42ab9a 100644 --- a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.integration.js +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.integration.js @@ -2,9 +2,8 @@ import test from "ava"; import sinonGlobal from "sinon"; import esmock from "esmock"; import path from "node:path"; -import {fileURLToPath} from "node:url"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; // Use path within project as mocking base directory to reduce chance of side effects // in case mocks/stubs do not work and real fs is used diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js index d9aa4de544f..dd71636fe08 100644 --- a/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js @@ -2,9 +2,8 @@ import test from "ava"; import sinonGlobal from "sinon"; import esmock from "esmock"; import path from "node:path"; -import {fileURLToPath} from "node:url"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; // Use path within project as mocking base directory to reduce chance of side effects // in case mocks/stubs do not work and real fs is used diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index 33d3637c803..d407270c001 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -2,9 +2,8 @@ import test from "ava"; import sinon from "sinon"; import esmock from "esmock"; import path from "node:path"; -import {fileURLToPath} from "node:url"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; test.beforeEach(async (t) => { t.context.mkdirpStub = sinon.stub().resolves(); diff --git a/packages/project/test/lib/utils/fs.js b/packages/project/test/lib/utils/fs.js index 3c465342924..322beff2fcd 100644 --- a/packages/project/test/lib/utils/fs.js +++ b/packages/project/test/lib/utils/fs.js @@ -1,10 +1,9 @@ import test from "ava"; import path from "node:path"; import {stat} from "node:fs/promises"; -import {fileURLToPath} from "node:url"; import {mkdirp} from "../../../lib/utils/fs.js"; -const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const __dirname = import.meta.dirname; test("mkdirp: Create directory hierarchy", async (t) => { const targetPath = path.join(__dirname, "..", "..", "tmp", "mkdir-test", "this", "is", "a", "directory"); From e2a44bc44487a298fcf391a89639c6540d331776 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Feb 2024 18:45:56 +0000 Subject: [PATCH 1070/1272] [ui5-project][INTERNAL] Bump sinon from 16.1.3 to 17.0.1 Bumps [sinon](https://github.com/sinonjs/sinon) from 16.1.3 to 17.0.1. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md) - [Commits](https://github.com/sinonjs/sinon/compare/v16.1.3...v17.0.1) --- updated-dependencies: - dependency-name: sinon dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 27 +++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 10 insertions(+), 19 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 211de605fad..bbea0223289 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -53,7 +53,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^16.1.3", + "sinon": "^17.0.1", "tap-xunit": "^2.4.1" }, "engines": { @@ -1232,9 +1232,9 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", + "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0" @@ -6385,15 +6385,6 @@ "path-to-regexp": "^6.2.1" } }, - "node_modules/nise/node_modules/@sinonjs/fake-timers": { - "version": "11.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", - "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^3.0.0" - } - }, "node_modules/node-gyp": { "version": "10.0.1", "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", @@ -8457,16 +8448,16 @@ } }, "node_modules/sinon": { - "version": "16.1.3", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-16.1.3.tgz", - "integrity": "sha512-mjnWWeyxcAf9nC0bXcPmiDut+oE8HYridTNzBbF98AYVLmWwGRp2ISEpyhYflG1ifILT+eNn3BmKUJPxjXUPlA==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.1.tgz", + "integrity": "sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^10.3.0", + "@sinonjs/fake-timers": "^11.2.2", "@sinonjs/samsam": "^8.0.0", "diff": "^5.1.0", - "nise": "^5.1.4", + "nise": "^5.1.5", "supports-color": "^7.2.0" }, "funding": { diff --git a/packages/project/package.json b/packages/project/package.json index 41ac4b33241..6d60e2abb03 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -164,7 +164,7 @@ "jsdoc": "^4.0.2", "nyc": "^15.1.0", "open-cli": "^7.2.0", - "sinon": "^16.1.3", + "sinon": "^17.0.1", "tap-xunit": "^2.4.1" } } From 101a22b1b320cb11b5c8651c834e33dd9d7a78a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Feb 2024 18:59:56 +0000 Subject: [PATCH 1071/1272] [ui5-project][DEPENDENCY] Bump globby from 13.2.2 to 14.0.1 Bumps [globby](https://github.com/sindresorhus/globby) from 13.2.2 to 14.0.1. - [Release notes](https://github.com/sindresorhus/globby/releases) - [Commits](https://github.com/sindresorhus/globby/compare/v13.2.2...v14.0.1) --- updated-dependencies: - dependency-name: globby dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 120 +++++++++++++++++++++++++---- packages/project/package.json | 2 +- 2 files changed, 108 insertions(+), 14 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index bbea0223289..3fd65a1d54e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -17,7 +17,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.3.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.2.2", + "globby": "^14.0.1", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", @@ -1222,6 +1222,17 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/@sindresorhus/merge-streams": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", + "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@sinonjs/commons": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", @@ -1381,6 +1392,35 @@ "npm": ">= 8" } }, + "node_modules/@ui5/fs/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ui5/fs/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@ui5/logger": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0.tgz", @@ -1738,6 +1778,37 @@ "node": ">=8" } }, + "node_modules/ava/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ava/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", @@ -4494,18 +4565,30 @@ } }, "node_modules/globby": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", - "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.1.tgz", + "integrity": "sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==", "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.3.0", + "@sindresorhus/merge-streams": "^2.1.0", + "fast-glob": "^3.3.2", "ignore": "^5.2.4", - "merge2": "^1.4.1", - "slash": "^4.0.0" + "path-type": "^5.0.0", + "slash": "^5.1.0", + "unicorn-magic": "^0.1.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby/node_modules/path-type": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz", + "integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==", + "engines": { + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -8466,11 +8549,11 @@ } }, "node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", + "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", "engines": { - "node": ">=12" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -9453,6 +9536,17 @@ "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" }, + "node_modules/unicorn-magic": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", + "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/unique-filename": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 6d60e2abb03..e24da783938 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -128,7 +128,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.3.0", "escape-string-regexp": "^5.0.0", - "globby": "^13.2.2", + "globby": "^14.0.1", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", From 594d6597ae677f5301d5a582672efe03659a5d9c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Feb 2024 19:07:41 +0000 Subject: [PATCH 1072/1272] [ui5-project][DEPENDENCY] Bump read-pkg from 8.1.0 to 9.0.1 Bumps [read-pkg](https://github.com/sindresorhus/read-pkg) from 8.1.0 to 9.0.1. - [Release notes](https://github.com/sindresorhus/read-pkg/releases) - [Commits](https://github.com/sindresorhus/read-pkg/compare/v8.1.0...v9.0.1) --- updated-dependencies: - dependency-name: read-pkg dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 150 ++++++++++++++++++++++------- packages/project/package.json | 2 +- 2 files changed, 115 insertions(+), 37 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3fd65a1d54e..5525f96643f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -25,7 +25,7 @@ "node-stream-zip": "^1.15.0", "pacote": "^17.0.6", "pretty-hrtime": "^1.0.3", - "read-pkg": "^8.1.0", + "read-pkg": "^9.0.1", "read-pkg-up": "^10.1.0", "resolve": "^1.22.8", "rimraf": "^5.0.5", @@ -4862,6 +4862,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/index-to-position": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/index-to-position/-/index-to-position-0.1.2.tgz", + "integrity": "sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -7881,17 +7892,18 @@ } }, "node_modules/read-pkg": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", - "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-9.0.1.tgz", + "integrity": "sha512-9viLL4/n1BJUCT1NXVTdS1jtm80yDEgR5T4yCelII49Mbj0v1rZdKqj7zCiYdbB0CuCgdrvHcNogAKTFPBocFA==", "dependencies": { - "@types/normalize-package-data": "^2.4.1", + "@types/normalize-package-data": "^2.4.3", "normalize-package-data": "^6.0.0", - "parse-json": "^7.0.0", - "type-fest": "^4.2.0" + "parse-json": "^8.0.0", + "type-fest": "^4.6.0", + "unicorn-magic": "^0.1.0" }, "engines": { - "node": ">=16" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7928,6 +7940,25 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg-up/node_modules/hosted-git-info": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/read-pkg-up/node_modules/lines-and-columns": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz", + "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, "node_modules/read-pkg-up/node_modules/locate-path": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", @@ -7942,6 +7973,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg-up/node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/read-pkg-up/node_modules/normalize-package-data": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "dependencies": { + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/read-pkg-up/node_modules/p-limit": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", @@ -7970,6 +8023,35 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg-up/node_modules/parse-json": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.1.tgz", + "integrity": "sha512-SgOTCX/EZXtZxBE5eJ97P4yGM5n37BwRU+YMsH4vNzFqJV/oWFXXCmwFlgWUM4PrakybVOueJJ6pwHqSVhTFDw==", + "dependencies": { + "@babel/code-frame": "^7.21.4", + "error-ex": "^1.3.2", + "json-parse-even-better-errors": "^3.0.0", + "lines-and-columns": "^2.0.3", + "type-fest": "^3.8.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/parse-json/node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/read-pkg-up/node_modules/path-exists": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", @@ -7978,6 +8060,23 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, + "node_modules/read-pkg-up/node_modules/read-pkg": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", + "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", + "dependencies": { + "@types/normalize-package-data": "^2.4.1", + "normalize-package-data": "^6.0.0", + "parse-json": "^7.0.0", + "type-fest": "^4.2.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/read-pkg-up/node_modules/type-fest": { "version": "4.10.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.2.tgz", @@ -8011,14 +8110,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/read-pkg/node_modules/lines-and-columns": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz", - "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, "node_modules/read-pkg/node_modules/lru-cache": { "version": "10.2.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", @@ -8042,29 +8133,16 @@ } }, "node_modules/read-pkg/node_modules/parse-json": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.1.tgz", - "integrity": "sha512-SgOTCX/EZXtZxBE5eJ97P4yGM5n37BwRU+YMsH4vNzFqJV/oWFXXCmwFlgWUM4PrakybVOueJJ6pwHqSVhTFDw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.1.0.tgz", + "integrity": "sha512-rum1bPifK5SSar35Z6EKZuYPJx85pkNaFrxBK3mwdfSJ1/WKbYrjoW/zTPSjRRamfmVX1ACBIdFAO0VRErW/EA==", "dependencies": { - "@babel/code-frame": "^7.21.4", - "error-ex": "^1.3.2", - "json-parse-even-better-errors": "^3.0.0", - "lines-and-columns": "^2.0.3", - "type-fest": "^3.8.0" + "@babel/code-frame": "^7.22.13", + "index-to-position": "^0.1.2", + "type-fest": "^4.7.1" }, "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg/node_modules/parse-json/node_modules/type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", - "engines": { - "node": ">=14.16" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" diff --git a/packages/project/package.json b/packages/project/package.json index e24da783938..dfee452aa03 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -136,7 +136,7 @@ "node-stream-zip": "^1.15.0", "pacote": "^17.0.6", "pretty-hrtime": "^1.0.3", - "read-pkg": "^8.1.0", + "read-pkg": "^9.0.1", "read-pkg-up": "^10.1.0", "resolve": "^1.22.8", "rimraf": "^5.0.5", From 1f4d169d337a018af00a2a6afe0c3e38729c411e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Feb 2024 19:14:44 +0000 Subject: [PATCH 1073/1272] [ui5-project][DEPENDENCY] Bump read-pkg-up from 10.1.0 to 11.0.0 Bumps [read-pkg-up](https://github.com/sindresorhus/read-pkg-up) from 10.1.0 to 11.0.0. - [Release notes](https://github.com/sindresorhus/read-pkg-up/releases) - [Commits](https://github.com/sindresorhus/read-pkg-up/compare/v10.1.0...v11.0.0) --- updated-dependencies: - dependency-name: read-pkg-up dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .../providers/NodePackageDependencies.js | 2 +- packages/project/package-lock.json | 220 +++--------------- packages/project/package.json | 2 +- .../providers/NodePackageDependencies.js | 2 +- 4 files changed, 38 insertions(+), 188 deletions(-) diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js index e08314ba6ee..080863fd74c 100644 --- a/packages/project/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -1,5 +1,5 @@ import path from "node:path"; -import {readPackageUp} from "read-pkg-up"; +import {readPackageUp} from "read-package-up"; import {readPackage} from "read-pkg"; import {promisify} from "node:util"; import fs from "graceful-fs"; diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5525f96643f..584cb5334e2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -25,8 +25,8 @@ "node-stream-zip": "^1.15.0", "pacote": "^17.0.6", "pretty-hrtime": "^1.0.3", + "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", - "read-pkg-up": "^10.1.0", "resolve": "^1.22.8", "rimraf": "^5.0.5", "semver": "^7.6.0", @@ -3480,6 +3480,7 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "dependencies": { "is-arrayish": "^0.2.1" } @@ -4258,6 +4259,17 @@ "node": ">=8" } }, + "node_modules/find-up-simple": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-up-simple/-/find-up-simple-1.0.0.tgz", + "integrity": "sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/findup-sync": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-5.0.0.tgz", @@ -4921,7 +4933,8 @@ "node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true }, "node_modules/is-binary-path": { "version": "2.1.0", @@ -7891,16 +7904,14 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/read-pkg": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-9.0.1.tgz", - "integrity": "sha512-9viLL4/n1BJUCT1NXVTdS1jtm80yDEgR5T4yCelII49Mbj0v1rZdKqj7zCiYdbB0CuCgdrvHcNogAKTFPBocFA==", + "node_modules/read-package-up": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/read-package-up/-/read-package-up-11.0.0.tgz", + "integrity": "sha512-MbgfoNPANMdb4oRBNg5eqLbB2t2r+o5Ua1pNt8BqGp4I0FJZhuVSOj3PaBPni4azWuSzEdNn2evevzVmEk1ohQ==", "dependencies": { - "@types/normalize-package-data": "^2.4.3", - "normalize-package-data": "^6.0.0", - "parse-json": "^8.0.0", - "type-fest": "^4.6.0", - "unicorn-magic": "^0.1.0" + "find-up-simple": "^1.0.0", + "read-pkg": "^9.0.0", + "type-fest": "^4.6.0" }, "engines": { "node": ">=18" @@ -7909,175 +7920,7 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg-up": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-10.1.0.tgz", - "integrity": "sha512-aNtBq4jR8NawpKJQldrQcSW9y/d+KWH4v24HWkHljOZ7H0av+YTGANBzRh9A5pw7v/bLVsLVPpOhJ7gHNVy8lA==", - "dependencies": { - "find-up": "^6.3.0", - "read-pkg": "^8.1.0", - "type-fest": "^4.2.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/hosted-git-info": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", - "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/read-pkg-up/node_modules/lines-and-columns": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz", - "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/read-pkg-up/node_modules/normalize-package-data": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", - "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", - "dependencies": { - "hosted-git-info": "^7.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/parse-json": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.1.tgz", - "integrity": "sha512-SgOTCX/EZXtZxBE5eJ97P4yGM5n37BwRU+YMsH4vNzFqJV/oWFXXCmwFlgWUM4PrakybVOueJJ6pwHqSVhTFDw==", - "dependencies": { - "@babel/code-frame": "^7.21.4", - "error-ex": "^1.3.2", - "json-parse-even-better-errors": "^3.0.0", - "lines-and-columns": "^2.0.3", - "type-fest": "^3.8.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/parse-json/node_modules/type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/read-pkg-up/node_modules/read-pkg": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz", - "integrity": "sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==", - "dependencies": { - "@types/normalize-package-data": "^2.4.1", - "normalize-package-data": "^6.0.0", - "parse-json": "^7.0.0", - "type-fest": "^4.2.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/type-fest": { + "node_modules/read-package-up/node_modules/type-fest": { "version": "4.10.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.2.tgz", "integrity": "sha512-anpAG63wSpdEbLwOqH8L84urkL6PiVIov3EMmgIhhThevh9aiMQov+6Btx0wldNcvm4wV+e2/Rt1QdDwKHFbHw==", @@ -8088,12 +7931,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg-up/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "node_modules/read-pkg": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-9.0.1.tgz", + "integrity": "sha512-9viLL4/n1BJUCT1NXVTdS1jtm80yDEgR5T4yCelII49Mbj0v1rZdKqj7zCiYdbB0CuCgdrvHcNogAKTFPBocFA==", + "dependencies": { + "@types/normalize-package-data": "^2.4.3", + "normalize-package-data": "^6.0.0", + "parse-json": "^8.0.0", + "type-fest": "^4.6.0", + "unicorn-magic": "^0.1.0" + }, "engines": { - "node": ">=12.20" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" diff --git a/packages/project/package.json b/packages/project/package.json index dfee452aa03..e04c248bc89 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -136,8 +136,8 @@ "node-stream-zip": "^1.15.0", "pacote": "^17.0.6", "pretty-hrtime": "^1.0.3", + "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", - "read-pkg-up": "^10.1.0", "resolve": "^1.22.8", "rimraf": "^5.0.5", "semver": "^7.6.0", diff --git a/packages/project/test/lib/graph/providers/NodePackageDependencies.js b/packages/project/test/lib/graph/providers/NodePackageDependencies.js index 3965c569d62..5a7b2e6554d 100644 --- a/packages/project/test/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/test/lib/graph/providers/NodePackageDependencies.js @@ -8,7 +8,7 @@ test.beforeEach(async (t) => { t.context.readPackageUp = sinon.stub(); t.context.NodePackageDependencies = await esmock("../../../../lib/graph/providers/NodePackageDependencies.js", { - "read-pkg-up": { + "read-package-up": { readPackageUp: t.context.readPackageUp } }); From 646c330580dc691702defb9330c1fdad2a1ef46c Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 22 Feb 2024 14:48:49 +0100 Subject: [PATCH 1074/1272] [ui5-project][INTERNAL] dependabot: assign SAP/ui5-foundation as reviewer --- packages/project/.github/dependabot.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/project/.github/dependabot.yml b/packages/project/.github/dependabot.yml index 46e95262781..ebf6ca750f8 100644 --- a/packages/project/.github/dependabot.yml +++ b/packages/project/.github/dependabot.yml @@ -12,8 +12,7 @@ updates: time: "10:00" timezone: Etc/UCT reviewers: - - RandomByte - - matz3 + - "SAP/ui5-foundation" versioning-strategy: increase commit-message: prefix: "[DEPENDENCY] " From ed7d0d20416c78ba2f5a98ea40f6b3d98e305fb1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Feb 2024 15:02:25 +0000 Subject: [PATCH 1075/1272] [ui5-project][INTERNAL] Bump open-cli from 7.2.0 to 8.0.0 Bumps [open-cli](https://github.com/sindresorhus/open-cli) from 7.2.0 to 8.0.0. - [Release notes](https://github.com/sindresorhus/open-cli/releases) - [Commits](https://github.com/sindresorhus/open-cli/compare/v7.2.0...v8.0.0) --- updated-dependencies: - dependency-name: open-cli dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 889 +++-------------------------- packages/project/package.json | 2 +- 2 files changed, 82 insertions(+), 809 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 584cb5334e2..410952ec798 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -52,7 +52,7 @@ "js-beautify": "^1.15.1", "jsdoc": "^4.0.2", "nyc": "^15.1.0", - "open-cli": "^7.2.0", + "open-cli": "^8.0.0", "sinon": "^17.0.1", "tap-xunit": "^2.4.1" }, @@ -1328,12 +1328,6 @@ "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", "dev": true }, - "node_modules/@types/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", - "dev": true - }, "node_modules/@types/normalize-package-data": { "version": "2.4.4", "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", @@ -1855,15 +1849,6 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, - "node_modules/big-integer": { - "version": "1.6.52", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", @@ -1889,18 +1874,6 @@ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, - "node_modules/bplist-parser": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", - "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", - "dev": true, - "dependencies": { - "big-integer": "^1.6.44" - }, - "engines": { - "node": ">= 5.10.0" - } - }, "node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -1978,15 +1951,15 @@ } }, "node_modules/bundle-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", - "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", + "integrity": "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==", "dev": true, "dependencies": { - "run-applescript": "^5.0.0" + "run-applescript": "^7.0.0" }, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -2151,48 +2124,6 @@ "node": ">=6" } }, - "node_modules/camelcase-keys": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-8.0.2.tgz", - "integrity": "sha512-qMKdlOfsjlezMqxkUGGMaWWs17i2HoL15tM+wtx8ld4nLrUwU58TFdvyGOz/piNP842KeO8yXvggVQSdQ828NA==", - "dev": true, - "dependencies": { - "camelcase": "^7.0.0", - "map-obj": "^4.3.0", - "quick-lru": "^6.1.1", - "type-fest": "^2.13.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/camelcase-keys/node_modules/camelcase": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-7.0.1.tgz", - "integrity": "sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/camelcase-keys/node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/caniuse-lite": { "version": "1.0.30001588", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001588.tgz", @@ -2964,31 +2895,6 @@ "node": ">=0.10.0" } }, - "node_modules/decamelize-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", - "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", - "dev": true, - "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -2996,34 +2902,28 @@ "dev": true }, "node_modules/default-browser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", - "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz", + "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==", "dev": true, "dependencies": { - "bundle-name": "^3.0.0", - "default-browser-id": "^3.0.0", - "execa": "^7.1.1", - "titleize": "^3.0.0" + "bundle-name": "^4.1.0", + "default-browser-id": "^5.0.0" }, "engines": { - "node": ">=14.16" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/default-browser-id": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", - "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.0.tgz", + "integrity": "sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==", "dev": true, - "dependencies": { - "bplist-parser": "^0.2.0", - "untildify": "^4.0.0" - }, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -4035,47 +3935,6 @@ "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, - "node_modules/execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/execa/node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/execa/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, "node_modules/expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", @@ -4475,18 +4334,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -4617,15 +4464,6 @@ "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -4674,27 +4512,6 @@ "node": ">=0.10.0" } }, - "node_modules/hosted-git-info": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz", - "integrity": "sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw==", - "dev": true, - "dependencies": { - "lru-cache": "^7.5.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -4748,15 +4565,6 @@ "node": ">= 14" } }, - "node_modules/human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", - "dev": true, - "engines": { - "node": ">=14.18.0" - } - }, "node_modules/iconv-lite": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", @@ -5066,15 +4874,6 @@ "node": ">=8" } }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", @@ -5129,27 +4928,15 @@ } }, "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz", + "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", "dev": true, "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-wsl/node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" + "is-inside-container": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">=16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -5563,15 +5350,6 @@ "json-buffer": "3.0.1" } }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/klaw": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", @@ -5762,18 +5540,6 @@ "node": ">=6" } }, - "node_modules/map-obj": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", - "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/markdown-it": { "version": "12.3.2", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", @@ -5866,317 +5632,78 @@ } }, "node_modules/meow": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-11.0.0.tgz", - "integrity": "sha512-Cl0yeeIrko6d94KpUo1M+0X1sB14ikoaqlIGuTH1fW4I+E3+YljL54/hb/BWmVfrV9tTV9zU04+xjw08Fh2WkA==", - "dev": true, - "dependencies": { - "@types/minimist": "^1.2.2", - "camelcase-keys": "^8.0.2", - "decamelize": "^6.0.0", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^4.0.1", - "read-pkg-up": "^9.1.0", - "redent": "^4.0.0", - "trim-newlines": "^4.0.2", - "type-fest": "^3.1.0", - "yargs-parser": "^21.1.1" - }, + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", + "dev": true, "engines": { - "node": ">=14.16" + "node": ">=16.10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/decamelize": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-6.0.0.tgz", - "integrity": "sha512-Fv96DCsdOgB6mdGl67MT5JaTNKRzrzill5OH5s8bjYJXVlcXyPYGyPsUkWyGV5p1TXI5esYIYMMeDJL0hEIwaA==", - "dev": true, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 8" } }, - "node_modules/meow/node_modules/find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, + "node_modules/micro-spelling-correcter": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/micro-spelling-correcter/-/micro-spelling-correcter-1.1.1.tgz", + "integrity": "sha512-lkJ3Rj/mtjlRcHk6YyCbvZhyWTOzdBvTHsxMmZSk5jxN1YyVSQ+JETAom55mdzfcyDrY/49Z7UCW760BK30crg==", + "dev": true + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8.6" } }, - "node_modules/meow/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/meow/node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", "dev": true, - "dependencies": { - "p-locate": "^6.0.0" - }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/meow/node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, + "node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dependencies": { - "yocto-queue": "^1.0.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=16 || 14 >=14.17" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/meow/node_modules/read-pkg": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", - "integrity": "sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==", - "dev": true, - "dependencies": { - "@types/normalize-package-data": "^2.4.1", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^2.0.0" - }, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/read-pkg-up": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-9.1.0.tgz", - "integrity": "sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg==", - "dev": true, - "dependencies": { - "find-up": "^6.3.0", - "read-pkg": "^7.1.0", - "type-fest": "^2.5.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/meow/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/micro-spelling-correcter": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/micro-spelling-correcter/-/micro-spelling-correcter-1.1.1.tgz", - "integrity": "sha512-lkJ3Rj/mtjlRcHk6YyCbvZhyWTOzdBvTHsxMmZSk5jxN1YyVSQ+JETAom55mdzfcyDrY/49Z7UCW760BK30crg==", - "dev": true - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/minimist": { @@ -6188,29 +5715,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dev": true, - "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/minimist-options/node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/minipass": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", @@ -6590,21 +6094,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/normalize-package-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", - "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -6719,33 +6208,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-run-path": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.2.0.tgz", - "integrity": "sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==", - "dev": true, - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/npm-run-path/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -7091,56 +6553,41 @@ "wrappy": "1" } }, - "node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/open": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", - "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/open/-/open-10.0.3.tgz", + "integrity": "sha512-dtbI5oW7987hwC9qjJTyABldTaa19SuyJse1QboWv3b0qCcrrLNVDqBx1XgELAjh9QTVQaP/C5b1nhQebd1H2A==", "dev": true, "dependencies": { - "default-browser": "^4.0.0", + "default-browser": "^5.2.1", "define-lazy-prop": "^3.0.0", "is-inside-container": "^1.0.0", - "is-wsl": "^2.2.0" + "is-wsl": "^3.1.0" }, "engines": { - "node": ">=14.16" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/open-cli": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-7.2.0.tgz", - "integrity": "sha512-1ANJc8oJ92FiaNZ0o2Hw4WBvDJoXs1P74aFMtpAvlbkIPV4uPcQvDz7V6kMOrsZkmB4tglrHVMlLQaafuUuxXg==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/open-cli/-/open-cli-8.0.0.tgz", + "integrity": "sha512-3muD3BbfLyzl+aMVSEfn2FfOqGdPYR0O4KNnxXsLEPE2q9OSjBfJAaB6XKbrUzLgymoSMejvb5jpXJfru/Ko2A==", "dev": true, "dependencies": { - "file-type": "^18.2.1", + "file-type": "^18.7.0", "get-stdin": "^9.0.0", - "meow": "^11.0.0", - "open": "^9.0.0", - "tempy": "^3.0.0" + "meow": "^12.1.1", + "open": "^10.0.0", + "tempy": "^3.1.0" }, "bin": { "open-cli": "cli.js" }, "engines": { - "node": ">=14.16" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7822,18 +7269,6 @@ } ] }, - "node_modules/quick-lru": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-6.1.2.tgz", - "integrity": "sha512-AAFUA5O1d83pIHEhJwWCq/RQcRukCkn/NSm2QsTEMle5f2hP0ChI2+3Xb051PZCkLryI/Ir1MVKviT2FIloaTQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/random-int": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/random-int/-/random-int-3.0.0.tgz", @@ -8051,22 +7486,6 @@ "node": ">=8.10.0" } }, - "node_modules/redent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", - "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", - "dev": true, - "dependencies": { - "indent-string": "^5.0.0", - "strip-indent": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", @@ -8193,103 +7612,17 @@ } }, "node_modules/run-applescript": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", - "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", - "dev": true, - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/run-applescript/node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/run-applescript/node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/run-applescript/node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/run-applescript/node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz", + "integrity": "sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==", "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, "engines": { - "node": ">=6" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/run-applescript/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/run-applescript/node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -8889,33 +8222,6 @@ "node": ">=8" } }, - "node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/strip-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", - "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", - "dev": true, - "dependencies": { - "min-indent": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -9341,18 +8647,6 @@ "node": ">=4" } }, - "node_modules/titleize": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", - "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -9390,18 +8684,6 @@ "url": "https://github.com/sponsors/Borewit" } }, - "node_modules/trim-newlines": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.1.1.tgz", - "integrity": "sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/tuf-js": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.0.tgz", @@ -9512,15 +8794,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/update-browserslist-db": { "version": "1.0.13", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index e04c248bc89..b06b5e20825 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -163,7 +163,7 @@ "js-beautify": "^1.15.1", "jsdoc": "^4.0.2", "nyc": "^15.1.0", - "open-cli": "^7.2.0", + "open-cli": "^8.0.0", "sinon": "^17.0.1", "tap-xunit": "^2.4.1" } From 9f984854a5c7468b955f7f0afbcefe53f795494b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Feb 2024 15:03:04 +0000 Subject: [PATCH 1076/1272] [ui5-project][INTERNAL] Bump eslint-plugin-jsdoc from 46.10.1 to 48.2.0 Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) from 46.10.1 to 48.2.0. - [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases) - [Changelog](https://github.com/gajus/eslint-plugin-jsdoc/blob/main/.releaserc) - [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v46.10.1...v48.2.0) --- updated-dependencies: - dependency-name: eslint-plugin-jsdoc dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 20 ++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 410952ec798..5dec6bf2681 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^8.56.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.10.1", + "eslint-plugin-jsdoc": "^48.2.0", "esmock": "^2.6.3", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", @@ -502,9 +502,9 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.41.0.tgz", - "integrity": "sha512-aKUhyn1QI5Ksbqcr3fFJj16p99QdjUxXAEuFst1Z47DRyoiMwivIH9MV/ARcJOCXVjPfjITciej8ZD2O/6qUmw==", + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.42.0.tgz", + "integrity": "sha512-R1w57YlVA6+YE01wch3GPYn6bCsrOV3YW/5oGGE2tmX6JcL9Nr+b5IikrjMPF+v9CV3ay+obImEdsDhovhJrzw==", "dev": true, "dependencies": { "comment-parser": "1.4.1", @@ -3521,23 +3521,23 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "46.10.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.10.1.tgz", - "integrity": "sha512-x8wxIpv00Y50NyweDUpa+58ffgSAI5sqe+zcZh33xphD0AVh+1kqr1ombaTRb7Fhpove1zfUuujlX9DWWBP5ag==", + "version": "48.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.0.tgz", + "integrity": "sha512-O2B1XLBJnUCRkggFzUQ+PBYJDit8iAgXdlu8ucolqGrbmOWPvttZQZX8d1sC0MbqDMSLs8SHSQxaNPRY1RQREg==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.41.0", + "@es-joy/jsdoccomment": "~0.42.0", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", "is-builtin-module": "^3.2.1", - "semver": "^7.5.4", + "semver": "^7.6.0", "spdx-expression-parse": "^4.0.0" }, "engines": { - "node": ">=16" + "node": ">=18" }, "peerDependencies": { "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index b06b5e20825..d59a304806a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -154,7 +154,7 @@ "eslint": "^8.56.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^46.10.1", + "eslint-plugin-jsdoc": "^48.2.0", "esmock": "^2.6.3", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.1", From 3052b2694e95d2722746a4f304489d5e13248136 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 23 Feb 2024 08:43:21 +0000 Subject: [PATCH 1077/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 215 +++++++++-------------------- packages/project/package.json | 4 +- 2 files changed, 67 insertions(+), 152 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5dec6bf2681..21da41b0c1a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -46,9 +46,9 @@ "eslint-plugin-jsdoc": "^48.2.0", "esmock": "^2.6.3", "istanbul-lib-coverage": "^3.2.2", - "istanbul-lib-instrument": "^6.0.1", + "istanbul-lib-instrument": "^6.0.2", "istanbul-lib-report": "^3.0.1", - "istanbul-reports": "^3.1.6", + "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", "jsdoc": "^4.0.2", "nyc": "^15.1.0", @@ -1038,39 +1038,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/package-json/node_modules/hosted-git-info": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", - "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/package-json/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/@npmcli/package-json/node_modules/normalize-package-data": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", - "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", - "dependencies": { - "hosted-git-info": "^7.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, "node_modules/@npmcli/promise-spawn": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.1.tgz", @@ -2125,9 +2092,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001588", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001588.tgz", - "integrity": "sha512-+hVY9jE44uKLkH0SrUTqxjxqNTOWHsbnQDIKjwkZ3lNTzUUVdBLBGXtj/q5Mp5u98r3droaZAewQuEDzjQdZlQ==", + "version": "1.0.30001589", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001589.tgz", + "integrity": "sha512-vNQWS6kI+q6sBlHbh71IIeC+sRwK2N3EDySc/updIGhIee2x5z00J4c1242/5/d6EpEMdOnk/m+6tuk4/tcsqg==", "dev": true, "funding": [ { @@ -3309,9 +3276,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.673", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.673.tgz", - "integrity": "sha512-zjqzx4N7xGdl5468G+vcgzDhaHkaYgVcf9MqgexcTqsl2UHSCmOj/Bi3HAprg4BZCpC7HyD8a6nZl6QAZf72gw==", + "version": "1.4.680", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.680.tgz", + "integrity": "sha512-4nToZ5jlPO14W82NkF32wyjhYqQByVaDmLy4J2/tYcAbJfgO2TKJC780Az1V13gzq4l73CJ0yuyalpXvxXXD9A==", "dev": true }, "node_modules/emittery": { @@ -4216,9 +4183,9 @@ } }, "node_modules/flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", "dev": true }, "node_modules/foreground-child": { @@ -4512,6 +4479,25 @@ "node": ">=0.10.0" } }, + "node_modules/hosted-git-info": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -4975,14 +4961,14 @@ } }, "node_modules/istanbul-lib-instrument": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz", - "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.2.tgz", + "integrity": "sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==", "dev": true, "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", "istanbul-lib-coverage": "^3.2.0", "semver": "^7.5.4" }, @@ -5136,9 +5122,9 @@ } }, "node_modules/istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, "dependencies": { "html-escaper": "^2.0.0", @@ -6094,6 +6080,20 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/normalize-package-data": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "dependencies": { + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -6147,25 +6147,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-package-arg/node_modules/hosted-git-info": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", - "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "engines": { - "node": "14 || >=16.14" - } - }, "node_modules/npm-packlist": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", @@ -7306,39 +7287,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-package-json/node_modules/hosted-git-info": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", - "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/read-package-json/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/read-package-json/node_modules/normalize-package-data": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", - "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", - "dependencies": { - "hosted-git-info": "^7.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, "node_modules/read-package-up": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/read-package-up/-/read-package-up-11.0.0.tgz", @@ -7356,9 +7304,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.10.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.2.tgz", - "integrity": "sha512-anpAG63wSpdEbLwOqH8L84urkL6PiVIov3EMmgIhhThevh9aiMQov+6Btx0wldNcvm4wV+e2/Rt1QdDwKHFbHw==", + "version": "4.10.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.3.tgz", + "integrity": "sha512-JLXyjizi072smKGGcZiAJDCNweT8J+AuRxmPZ1aG7TERg4ijx9REl8CNhbr36RV4qXqL1gO1FF9HL8OkVmmrsA==", "engines": { "node": ">=16" }, @@ -7384,39 +7332,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", - "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/read-pkg/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", - "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", - "dependencies": { - "hosted-git-info": "^7.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, "node_modules/read-pkg/node_modules/parse-json": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.1.0.tgz", @@ -7434,9 +7349,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.10.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.2.tgz", - "integrity": "sha512-anpAG63wSpdEbLwOqH8L84urkL6PiVIov3EMmgIhhThevh9aiMQov+6Btx0wldNcvm4wV+e2/Rt1QdDwKHFbHw==", + "version": "4.10.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.3.tgz", + "integrity": "sha512-JLXyjizi072smKGGcZiAJDCNweT8J+AuRxmPZ1aG7TERg4ijx9REl8CNhbr36RV4qXqL1gO1FF9HL8OkVmmrsA==", "engines": { "node": ">=16" }, @@ -7846,9 +7761,9 @@ } }, "node_modules/socks": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.3.tgz", - "integrity": "sha512-vfuYK48HXCTFD03G/1/zkIls3Ebr2YNa4qU9gHDZdblHLiqhJrJGkY3+0Nx0JpN9qBhJbVObc1CNciT1bIZJxw==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.1.tgz", + "integrity": "sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ==", "dependencies": { "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" @@ -8515,9 +8430,9 @@ } }, "node_modules/terser": { - "version": "5.27.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.27.1.tgz", - "integrity": "sha512-29wAr6UU/oQpnTw5HoadwjUZnFQXGdOfj0LjZ4sVxzqwHh/QVkvr7m8y9WoR4iN3FRitVduTc6KdjcW38Npsug==", + "version": "5.27.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.27.2.tgz", + "integrity": "sha512-sHXmLSkImesJ4p5apTeT63DsV4Obe1s37qT8qvwHRmVxKTBH7Rv9Wr26VcAMmLbmk9UliiwK8z+657NyJHHy/w==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index d59a304806a..74ac81c23bd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -157,9 +157,9 @@ "eslint-plugin-jsdoc": "^48.2.0", "esmock": "^2.6.3", "istanbul-lib-coverage": "^3.2.2", - "istanbul-lib-instrument": "^6.0.1", + "istanbul-lib-instrument": "^6.0.2", "istanbul-lib-report": "^3.0.1", - "istanbul-reports": "^3.1.6", + "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", "jsdoc": "^4.0.2", "nyc": "^15.1.0", From ca4066054174ed988fb3a157fc0024496de154c2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Feb 2024 15:20:21 +0000 Subject: [PATCH 1078/1272] [ui5-project][INTERNAL] Bump ava from 5.3.1 to 6.1.1 Bumps [ava](https://github.com/avajs/ava) from 5.3.1 to 6.1.1. - [Release notes](https://github.com/avajs/ava/releases) - [Commits](https://github.com/avajs/ava/compare/v5.3.1...v6.1.1) --- updated-dependencies: - dependency-name: ava dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 851 +++++++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 559 insertions(+), 294 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 21da41b0c1a..795f85235f1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -35,7 +35,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.3.1", + "ava": "^6.1.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", @@ -844,6 +844,153 @@ "node": ">=v12.0.0" } }, + "node_modules/@mapbox/node-pre-gyp": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", + "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", + "dev": true, + "dependencies": { + "detect-libc": "^2.0.0", + "https-proxy-agent": "^5.0.0", + "make-dir": "^3.1.0", + "node-fetch": "^2.6.7", + "nopt": "^5.0.0", + "npmlog": "^5.0.1", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.11" + }, + "bin": { + "node-pre-gyp": "bin/node-pre-gyp" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@mapbox/node-pre-gyp/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1123,6 +1270,19 @@ "node": ">=14" } }, + "node_modules/@rollup/pluginutils": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", + "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", + "dev": true, + "dependencies": { + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + } + }, "node_modules/@sigstore/bundle": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.2.0.tgz", @@ -1402,6 +1562,74 @@ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", "dev": true }, + "node_modules/@vercel/nft": { + "version": "0.26.4", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.26.4.tgz", + "integrity": "sha512-j4jCOOXke2t8cHZCIxu1dzKLHLcFmYzC3yqAK6MfZznOL1QIJKd0xcFsXK3zcqzU7ScsE2zWkiMMNHGMHgp+FA==", + "dev": true, + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.5", + "@rollup/pluginutils": "^4.0.0", + "acorn": "^8.6.0", + "acorn-import-attributes": "^1.9.2", + "async-sema": "^3.1.1", + "bindings": "^1.4.0", + "estree-walker": "2.0.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.2", + "node-gyp-build": "^4.2.2", + "resolve-from": "^5.0.0" + }, + "bin": { + "nft": "out/cli.js" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/@vercel/nft/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@vercel/nft/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@vercel/nft/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/@vue/compiler-core": { "version": "3.4.19", "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.19.tgz", @@ -1477,6 +1705,15 @@ "node": ">=0.4.0" } }, + "node_modules/acorn-import-attributes": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.2.tgz", + "integrity": "sha512-O+nfJwNolEA771IYJaiLWK1UAwjNsQmZbTRqqwBYxCgVQTmpFEMvBw6LOIQV0Me339L5UMVYFyRohGnGlQDdIQ==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -1505,22 +1742,6 @@ "node": ">= 14" } }, - "node_modules/aggregate-error": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", - "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", - "dev": true, - "dependencies": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -1591,6 +1812,12 @@ "node": ">=8" } }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, "node_modules/archy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", @@ -1606,6 +1833,19 @@ "node": ">=14" } }, + "node_modules/are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "dev": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -1659,51 +1899,54 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/async-sema": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/async-sema/-/async-sema-3.1.1.tgz", + "integrity": "sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==", + "dev": true + }, "node_modules/ava": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-5.3.1.tgz", - "integrity": "sha512-Scv9a4gMOXB6+ni4toLuhAm9KYWEjsgBglJl+kMGI5+IVDt120CCDZyB5HNU9DjmLI2t4I0GbnxGLmmRfGTJGg==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-6.1.1.tgz", + "integrity": "sha512-A+DG0Ag0e5zvt262Ze0pG5QH7EBmhn+DB9uK7WkUtJVAtGjZFeKTpUOKx339DMGn53+FB24pCJC5klX2WU4VOw==", "dev": true, "dependencies": { - "acorn": "^8.8.2", - "acorn-walk": "^8.2.0", + "@vercel/nft": "^0.26.2", + "acorn": "^8.11.3", + "acorn-walk": "^8.3.2", "ansi-styles": "^6.2.1", "arrgv": "^1.0.2", "arrify": "^3.0.0", - "callsites": "^4.0.0", - "cbor": "^8.1.0", - "chalk": "^5.2.0", - "chokidar": "^3.5.3", + "callsites": "^4.1.0", + "cbor": "^9.0.1", + "chalk": "^5.3.0", "chunkd": "^2.0.1", - "ci-info": "^3.8.0", + "ci-info": "^4.0.0", "ci-parallel-vars": "^1.0.1", - "clean-yaml-object": "^0.1.0", - "cli-truncate": "^3.1.0", + "cli-truncate": "^4.0.0", "code-excerpt": "^4.0.0", "common-path-prefix": "^3.0.0", "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", "debug": "^4.3.4", "emittery": "^1.0.1", - "figures": "^5.0.0", - "globby": "^13.1.4", + "figures": "^6.0.1", + "globby": "^14.0.0", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", - "is-error": "^2.2.2", "is-plain-object": "^5.0.0", "is-promise": "^4.0.0", "matcher": "^5.0.0", - "mem": "^9.0.2", + "memoize": "^10.0.0", "ms": "^2.1.3", - "p-event": "^5.0.1", - "p-map": "^5.5.0", - "picomatch": "^2.3.1", - "pkg-conf": "^4.0.0", + "p-map": "^7.0.1", + "package-config": "^5.0.0", + "picomatch": "^3.0.1", "plur": "^5.1.0", - "pretty-ms": "^8.0.0", + "pretty-ms": "^9.0.0", "resolve-cwd": "^3.0.0", "stack-utils": "^2.0.6", - "strip-ansi": "^7.0.1", + "strip-ansi": "^7.1.0", "supertap": "^3.0.1", "temp-dir": "^3.0.0", "write-file-atomic": "^5.0.1", @@ -1713,7 +1956,7 @@ "ava": "entrypoints/cli.mjs" }, "engines": { - "node": ">=14.19 <15 || >=16.15 <17 || >=18" + "node": "^18.18 || ^20.8 || ^21" }, "peerDependencies": { "@ava/typescript": "*" @@ -1724,50 +1967,43 @@ } } }, - "node_modules/ava/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "node_modules/ava/node_modules/figures": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/figures/-/figures-6.0.1.tgz", + "integrity": "sha512-0oY/olScYD4IhQ8u//gCPA4F3mlTn2dacYmiDm/mbDQvpmLjV4uH+zhsQ5IyXRyvqkvtUkXkNdGvg5OFJTCsuQ==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], + "dependencies": { + "is-unicode-supported": "^2.0.0" + }, "engines": { - "node": ">=8" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ava/node_modules/globby": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", - "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "node_modules/ava/node_modules/is-unicode-supported": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.0.0.tgz", + "integrity": "sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==", "dev": true, - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.3.0", - "ignore": "^5.2.4", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ava/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "node_modules/ava/node_modules/picomatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", + "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", "dev": true, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/jonschlinkert" } }, "node_modules/babel-plugin-istanbul": { @@ -1825,6 +2061,15 @@ "node": ">=8" } }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dev": true, + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, "node_modules/bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", @@ -2123,15 +2368,15 @@ } }, "node_modules/cbor": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-8.1.0.tgz", - "integrity": "sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-9.0.2.tgz", + "integrity": "sha512-JPypkxsB10s9QOWwa6zwPzqE1Md3vqpPc+cai4sAecuCsRyAtAl/pMyhPlMbT/xtPnm2dznJZYRLui57qiRhaQ==", "dev": true, "dependencies": { "nofilter": "^3.1.0" }, "engines": { - "node": ">=12.19" + "node": ">=16" } }, "node_modules/chalk": { @@ -2424,30 +2669,6 @@ "integrity": "sha512-uvzpYrpmidaoxvIQHM+rKSrigjOe9feHYbw4uOI2gdfe1C3xIlxO+kVXq83WQWNniTf8bAxVpy+cQeFQsMERKg==", "dev": true }, - "node_modules/clean-stack": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", - "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/clean-yaml-object": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", - "integrity": "sha512-3yONmlN9CSAkzNwnRCiJQ7Q2xK5mWuEfL3PuTZcAUzhObbXsfsnMptJzXwz93nc5zn9V9TwCVMmV7w4xsm43dw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/cli-progress": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/cli-progress/-/cli-progress-3.12.0.tgz", @@ -2460,39 +2681,39 @@ } }, "node_modules/cli-truncate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-4.0.0.tgz", + "integrity": "sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==", "dev": true, "dependencies": { "slice-ansi": "^5.0.0", - "string-width": "^5.0.0" + "string-width": "^7.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/cli-truncate/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", + "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", "dev": true }, "node_modules/cli-truncate/node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.1.0.tgz", + "integrity": "sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==", "dev": true, "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" + "emoji-regex": "^10.3.0", + "get-east-asian-width": "^1.0.0", + "strip-ansi": "^7.1.0" }, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -2616,6 +2837,15 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, "node_modules/commander": { "version": "10.0.1", "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", @@ -2687,6 +2917,12 @@ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "dev": true }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -2923,6 +3159,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, "node_modules/depcheck": { "version": "1.4.7", "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.7.tgz", @@ -3139,6 +3381,15 @@ "node": ">=0.10.0" } }, + "node_modules/detect-libc": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", + "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/diff": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", @@ -4008,6 +4259,12 @@ "url": "https://github.com/sindresorhus/file-type?sponsor=1" } }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true + }, "node_modules/fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -4262,6 +4519,53 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "dev": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/gauge/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/gauge/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/gauge/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -4280,6 +4584,18 @@ "node": "6.* || 8.* || >= 10.*" } }, + "node_modules/get-east-asian-width": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz", + "integrity": "sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", @@ -4440,6 +4756,12 @@ "node": ">=8" } }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true + }, "node_modules/hasha": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", @@ -4783,12 +5105,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-error": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", - "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", - "dev": true - }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -5514,18 +5830,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dev": true, - "dependencies": { - "p-defer": "^1.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/markdown-it": { "version": "12.3.2", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", @@ -5601,20 +5905,19 @@ "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" }, - "node_modules/mem": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/mem/-/mem-9.0.2.tgz", - "integrity": "sha512-F2t4YIv9XQUBHt6AOJ0y7lSmP1+cY7Fm1DRh9GClTGzKST7UWLMx6ly9WZdLH/G/ppM5RL4MlQfRT71ri9t19A==", + "node_modules/memoize": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/memoize/-/memoize-10.0.0.tgz", + "integrity": "sha512-H6cBLgsi6vMWOcCpvVCdFFnl3kerEXbrYh9q+lY6VXvQSmM6CkmV08VOwT+WE2tzIEqRPFfAq3fm4v/UIW6mSA==", "dev": true, "dependencies": { - "map-age-cleaner": "^0.1.3", - "mimic-fn": "^4.0.0" + "mimic-function": "^5.0.0" }, "engines": { - "node": ">=12.20" + "node": ">=18" }, "funding": { - "url": "https://github.com/sindresorhus/mem?sponsor=1" + "url": "https://github.com/sindresorhus/memoize?sponsor=1" } }, "node_modules/meow": { @@ -5666,13 +5969,13 @@ "node": ">=4" } }, - "node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "node_modules/mimic-function": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.0.tgz", + "integrity": "sha512-RBfQ+9X9DpXdEoK7Bu+KeEU6vFhumEIiXKWECPzRBmDserEq4uR2b/VCm0LwpMSosoq2k+Zuxj/GzOr0Fn6h/g==", "dev": true, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -5982,6 +6285,26 @@ "path-to-regexp": "^6.2.1" } }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dev": true, + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, "node_modules/node-gyp": { "version": "10.0.1", "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", @@ -6005,6 +6328,17 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/node-gyp-build": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", + "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", + "dev": true, + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, "node_modules/node-gyp/node_modules/isexe": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", @@ -6189,6 +6523,18 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "dev": true, + "dependencies": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, "node_modules/nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -6525,6 +6871,15 @@ "node": ">=6" } }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -6591,30 +6946,6 @@ "node": ">= 0.8.0" } }, - "node_modules/p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-event": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-5.0.1.tgz", - "integrity": "sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==", - "dev": true, - "dependencies": { - "p-timeout": "^5.0.2" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/p-limit": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", @@ -6643,27 +6974,12 @@ } }, "node_modules/p-map": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", - "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", - "dev": true, - "dependencies": { - "aggregate-error": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-timeout": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", - "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.1.tgz", + "integrity": "sha512-2wnaR0XL/FDOj+TgpDuRb2KTjLnu3Fma6b1ZUwGY7LcqenMcvP/YFpjpbPKY6WVGsbuJZRuoUz8iPrt8ORnAFw==", "dev": true, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -6678,6 +6994,22 @@ "node": ">=6" } }, + "node_modules/package-config": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/package-config/-/package-config-5.0.0.tgz", + "integrity": "sha512-GYTTew2slBcYdvRHqjhwaaydVMvn/qrGC323+nKclYioNSLTDUM/lGgtGTgyHVtYcozb+XkE8CNhwcraOmZ9Mg==", + "dev": true, + "dependencies": { + "find-up-simple": "^1.0.0", + "load-json-file": "^7.0.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/package-hash": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", @@ -6770,12 +7102,12 @@ "dev": true }, "node_modules/parse-ms": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-3.0.0.tgz", - "integrity": "sha512-Tpb8Z7r7XbbtBTrM9UhpkzzaMrqA2VXMT3YChzYltwV3P3pM6t8wl7TvpMnSTosz1aQAdVib7kdoys7vYOPerw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-4.0.0.tgz", + "integrity": "sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==", "dev": true, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -6911,104 +7243,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/pkg-conf": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-4.0.0.tgz", - "integrity": "sha512-7dmgi4UY4qk+4mj5Cd8v/GExPo0K+SlY+hulOSdfZ/T6jVH6//y7NtzZo5WrfhDBxuQ0jCa7fLZmNaNh7EWL/w==", - "dev": true, - "dependencies": { - "find-up": "^6.0.0", - "load-json-file": "^7.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pkg-conf/node_modules/find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pkg-conf/node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pkg-conf/node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pkg-conf/node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pkg-conf/node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/pkg-conf/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/pkg-dir": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", @@ -7160,15 +7394,15 @@ } }, "node_modules/pretty-ms": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-8.0.0.tgz", - "integrity": "sha512-ASJqOugUF1bbzI35STMBUpZqdfYKlJugy6JBziGi2EE+AL5JPJGSzvpeVXojxrr0ViUYoToUjb5kjSEGf7Y83Q==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.0.0.tgz", + "integrity": "sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng==", "dev": true, "dependencies": { - "parse-ms": "^3.0.0" + "parse-ms": "^4.0.0" }, "engines": { - "node": ">=14.16" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -8599,6 +8833,12 @@ "url": "https://github.com/sponsors/Borewit" } }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, "node_modules/tuf-js": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.0.tgz", @@ -8796,6 +9036,12 @@ "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz", "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==" }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, "node_modules/well-known-symbols": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-2.0.0.tgz", @@ -8805,6 +9051,16 @@ "node": ">=6" } }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -8825,6 +9081,15 @@ "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", "dev": true }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, "node_modules/workerpool": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 74ac81c23bd..19e0ed9537b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -146,7 +146,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^5.3.1", + "ava": "^6.1.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", From 6672641b6696523c995ea27ab3d8291cd82c6e94 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 25 Feb 2024 03:20:51 +0000 Subject: [PATCH 1079/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 465 ++++++++++++----------------- packages/project/package.json | 2 +- 2 files changed, 188 insertions(+), 279 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 795f85235f1..554c9c39a69 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,7 +40,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.56.0", + "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^48.2.0", @@ -612,9 +612,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", - "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -782,9 +782,9 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.4.tgz", + "integrity": "sha512-Oud2QPM5dHviZNn4y/WhhYKSXksv+1xLEIsNrAbGcFzUN3ubqWRFT5gwPchNc5NuzILOU4tPBDTZ4VwhL8Y7cw==", "dependencies": { "@jridgewell/set-array": "^1.0.1", "@jridgewell/sourcemap-codec": "^1.4.10", @@ -825,9 +825,9 @@ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz", - "integrity": "sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==", + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.23.tgz", + "integrity": "sha512-9/4foRoUKp8s96tSkh8DlAAc5A0Ty8vLXld+l9gjKKY6ckwI8G15f0hskGmuLZu78ZlGa1vtsfOa+lnB4vG6Jg==", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -870,18 +870,6 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "dev": true }, - "node_modules/@mapbox/node-pre-gyp/node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, "node_modules/@mapbox/node-pre-gyp/node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -912,43 +900,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@mapbox/node-pre-gyp/node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@mapbox/node-pre-gyp/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@mapbox/node-pre-gyp/node_modules/make-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/@mapbox/node-pre-gyp/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -1038,6 +989,29 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/@npmcli/agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@npmcli/agent/node_modules/https-proxy-agent": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/@npmcli/agent/node_modules/lru-cache": { "version": "10.2.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", @@ -1283,6 +1257,18 @@ "node": ">= 8.0.0" } }, + "node_modules/@rollup/pluginutils/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/@sigstore/bundle": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.2.0.tgz", @@ -1732,14 +1718,35 @@ } }, "node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, "dependencies": { - "debug": "^4.3.4" + "debug": "4" }, "engines": { - "node": ">= 14" + "node": ">= 6.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/aggregate-error/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" } }, "node_modules/ajv": { @@ -1800,6 +1807,18 @@ "node": ">= 8" } }, + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/append-transform": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", @@ -1994,18 +2013,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ava/node_modules/picomatch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", - "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, "node_modules/babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", @@ -2199,34 +2206,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/cacache/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cacache/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/cacache/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "engines": { - "node": ">=8" - } - }, "node_modules/cacache/node_modules/lru-cache": { "version": "10.2.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", @@ -2264,30 +2243,6 @@ "node": ">=8" } }, - "node_modules/caching-transform/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/caching-transform/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/caching-transform/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -2669,6 +2624,14 @@ "integrity": "sha512-uvzpYrpmidaoxvIQHM+rKSrigjOe9feHYbw4uOI2gdfe1C3xIlxO+kVXq83WQWNniTf8bAxVpy+cQeFQsMERKg==", "dev": true }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, "node_modules/cli-progress": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/cli-progress/-/cli-progress-3.12.0.tgz", @@ -3527,9 +3490,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.680", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.680.tgz", - "integrity": "sha512-4nToZ5jlPO14W82NkF32wyjhYqQByVaDmLy4J2/tYcAbJfgO2TKJC780Az1V13gzq4l73CJ0yuyalpXvxXXD9A==", + "version": "1.4.681", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.681.tgz", + "integrity": "sha512-1PpuqJUFWoXZ1E54m8bsLPVYwIVCRzvaL+n5cjigGga4z854abDnFRc+cTa2th4S79kyGqya/1xoR7h+Y5G5lg==", "dev": true }, "node_modules/emittery": { @@ -3650,16 +3613,16 @@ } }, "node_modules/eslint": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", - "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.56.0", - "@humanwhocodes/config-array": "^0.11.13", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "@ungap/structured-clone": "^1.2.0", @@ -4293,21 +4256,6 @@ "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "node_modules/find-cache-dir/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/find-cache-dir/node_modules/pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", @@ -4320,15 +4268,6 @@ "node": ">=8" } }, - "node_modules/find-cache-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -4861,16 +4800,28 @@ "node": ">= 14" } }, + "node_modules/http-proxy-agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/https-proxy-agent": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", - "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "6", "debug": "4" }, "engines": { - "node": ">= 14" + "node": ">= 6" } }, "node_modules/iconv-lite": { @@ -5309,19 +5260,6 @@ "node": ">=8" } }, - "node_modules/istanbul-lib-processinfo/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/istanbul-lib-processinfo/node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -5332,15 +5270,6 @@ "concat-map": "0.0.1" } }, - "node_modules/istanbul-lib-processinfo/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/istanbul-lib-processinfo/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -5361,15 +5290,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/istanbul-lib-processinfo/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/istanbul-lib-processinfo/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -5423,6 +5343,21 @@ "node": ">=10" } }, + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/istanbul-lib-source-maps": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", @@ -5795,20 +5730,29 @@ } }, "node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "dependencies": { - "semver": "^7.5.3" + "semver": "^6.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/make-fetch-happen": { "version": "13.0.0", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", @@ -5958,6 +5902,17 @@ "node": ">=8.6" } }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", @@ -6587,19 +6542,6 @@ "node": ">=8.9" } }, - "node_modules/nyc/node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/nyc/node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -6634,15 +6576,6 @@ "concat-map": "0.0.1" } }, - "node_modules/nyc/node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/nyc/node_modules/cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -6711,15 +6644,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nyc/node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/nyc/node_modules/istanbul-lib-instrument": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", @@ -6735,21 +6659,6 @@ "node": ">=8" } }, - "node_modules/nyc/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/nyc/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -7233,11 +7142,12 @@ "dev": true }, "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", + "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", + "dev": true, "engines": { - "node": ">=8.6" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/jonschlinkert" @@ -7635,6 +7545,18 @@ "node": ">=8.10.0" } }, + "node_modules/readdirp/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", @@ -8020,6 +7942,17 @@ "node": ">= 14" } }, + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -8106,21 +8039,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/spawn-wrap/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/spawn-wrap/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -8148,15 +8066,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/spawn-wrap/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/spawn-wrap/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -8664,9 +8573,9 @@ } }, "node_modules/terser": { - "version": "5.27.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.27.2.tgz", - "integrity": "sha512-sHXmLSkImesJ4p5apTeT63DsV4Obe1s37qT8qvwHRmVxKTBH7Rv9Wr26VcAMmLbmk9UliiwK8z+657NyJHHy/w==", + "version": "5.28.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.28.1.tgz", + "integrity": "sha512-wM+bZp54v/E9eRRGXb5ZFDvinrJIOaTapx3WUokyVGZu5ucVCK55zEgGd5Dl2fSr3jUo5sDiERErUWLY6QPFyA==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index 19e0ed9537b..c0952ca0a19 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -151,7 +151,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.56.0", + "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^48.2.0", From 6f919f497adbfe977d53b89bb80abcd925ee9111 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Thu, 29 Feb 2024 09:10:15 +0200 Subject: [PATCH 1080/1272] [ui5-project][BREAKING] Set default workspaceName to "default" for API usage (#706) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit BREAKING CHANGE: Set default workspaceName to "default" for API usage (https://github.com/SAP/ui5-project/pull/586) JIRA: CPOUI5FOUNDATION-802 Relates to: https://github.com/SAP/ui5-tooling/issues/701 --------- Co-authored-by: Matthias Oßwald --- packages/project/lib/graph/graph.js | 6 +++--- packages/project/test/lib/graph/graph.js | 26 +++++++++++++++++++++--- 2 files changed, 26 insertions(+), 6 deletions(-) diff --git a/packages/project/lib/graph/graph.js b/packages/project/lib/graph/graph.js index 892c840685b..1f77bbb5833 100644 --- a/packages/project/lib/graph/graph.js +++ b/packages/project/lib/graph/graph.js @@ -29,8 +29,8 @@ const log = getLogger("generateProjectGraph"); * @param {string} [options.versionOverride] Framework version to use instead of the one defined in the root project * @param {string} [options.resolveFrameworkDependencies=true] * Whether framework dependencies should be added to the graph - * @param {string} [options.workspaceName] - * Name of the workspace configuration that should be used if any is provided + * @param {string|null} [options.workspaceName=default] + * Name of the workspace configuration that should be used. "default" if not provided. * @param {module:@ui5/project/ui5Framework/maven/CacheMode} [options.cacheMode] * Cache mode to use when consuming SNAPSHOT versions of a framework * @param {string} [options.workspaceConfigPath=ui5-workspace.yaml] @@ -43,7 +43,7 @@ const log = getLogger("generateProjectGraph"); export async function graphFromPackageDependencies({ cwd, rootConfiguration, rootConfigPath, versionOverride, cacheMode, resolveFrameworkDependencies = true, - workspaceName /* TODO 4.0: default workspaceName to "default" ? */, + workspaceName="default", workspaceConfiguration, workspaceConfigPath = "ui5-workspace.yaml" }) { log.verbose(`Creating project graph using npm provider...`); diff --git a/packages/project/test/lib/graph/graph.js b/packages/project/test/lib/graph/graph.js index c11bfbc8891..4cc4c1386c0 100644 --- a/packages/project/test/lib/graph/graph.js +++ b/packages/project/test/lib/graph/graph.js @@ -58,7 +58,8 @@ test.serial("graphFromPackageDependencies", async (t) => { rootConfiguration: "rootConfiguration", rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", - cacheMode: CacheMode.Off + cacheMode: CacheMode.Off, + workspaceName: null }); t.is(res, "graph"); @@ -147,7 +148,8 @@ test.serial("graphFromPackageDependencies with workspace object", async (t) => { rootConfiguration: "rootConfiguration", rootConfigPath: "/rootConfigPath", versionOverride: "versionOverride", - workspaceConfiguration: "workspaceConfiguration" + workspaceConfiguration: "workspaceConfiguration", + workspaceName: null }); t.is(res, "graph"); @@ -156,7 +158,7 @@ test.serial("graphFromPackageDependencies with workspace object", async (t) => { t.deepEqual(createWorkspaceStub.getCall(0).args[0], { cwd: path.join(__dirname, "..", "..", "..", "cwd"), configPath: "ui5-workspace.yaml", - name: undefined, + name: null, configObject: "workspaceConfiguration" }, "createWorkspace called with correct parameters"); }); @@ -281,6 +283,24 @@ test.serial("graphFromPackageDependencies: Do not resolve framework dependencies t.is(enrichProjectGraphStub.callCount, 0, "enrichProjectGraph did not get called"); }); +test.serial("graphFromPackageDependencies: Default workspace name", async (t) => { + const {createWorkspaceStub} = t.context; + const {graphFromPackageDependencies} = t.context.graph; + + const res = await graphFromPackageDependencies({ + cwd: "cwd", + rootConfiguration: "rootConfiguration", + rootConfigPath: "/rootConfigPath", + versionOverride: "versionOverride", + resolveFrameworkDependencies: false + }); + + t.is(res, "graph"); + t.true(createWorkspaceStub.calledOnce, "createWorkspace is called"); + t.is(createWorkspaceStub.getCall(0).args[0].name, "default", + "createWorkspace is called with 'default' workspace"); +}); + test.serial("graphFromStaticFile", async (t) => { const { dependencyTreeProviderStub, From f7cab02078a518123e5666ddfbfc6f8e1ff94c41 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Thu, 29 Feb 2024 09:11:02 +0200 Subject: [PATCH 1081/1272] [ui5-project][BREAKING] Rename ui5HomeDir to ui5DataDir in APIs (#707) BREAKING CHANGE: Installers and Resolvers' argument `ui5HomeDir` is now renamed to `ui5DataDir` JIRA: CPOUI5FOUNDATION-802 Relates to: https://github.com/SAP/ui5-tooling/issues/701 --- .../project/lib/graph/helpers/ui5Framework.js | 4 +- .../lib/ui5Framework/AbstractInstaller.js | 10 +- .../lib/ui5Framework/AbstractResolver.js | 18 +-- .../lib/ui5Framework/Openui5Resolver.js | 10 +- .../Sapui5MavenSnapshotResolver.js | 10 +- .../lib/ui5Framework/Sapui5Resolver.js | 10 +- .../lib/ui5Framework/maven/Installer.js | 14 +- .../project/lib/ui5Framework/npm/Installer.js | 18 +-- .../test/lib/graph/helpers/ui5Framework.js | 30 ++-- .../test/lib/ui5framework/AbstractResolver.js | 138 +++++++++--------- .../Openui5Resolver.integration.js | 10 +- .../test/lib/ui5framework/Openui5Resolver.js | 6 +- .../Sapui5MavenSnapshotResolver.js | 6 +- .../Sapui5Resolver.integration.js | 10 +- .../test/lib/ui5framework/Sapui5Resolver.js | 6 +- .../test/lib/ui5framework/maven/Installer.js | 112 +++++++------- .../test/lib/ui5framework/npm/Installer.js | 62 ++++---- 17 files changed, 237 insertions(+), 237 deletions(-) diff --git a/packages/project/lib/graph/helpers/ui5Framework.js b/packages/project/lib/graph/helpers/ui5Framework.js index 70d3f6484eb..19737a4bd7b 100644 --- a/packages/project/lib/graph/helpers/ui5Framework.js +++ b/packages/project/lib/graph/helpers/ui5Framework.js @@ -360,7 +360,7 @@ export default { if (options.versionOverride) { version = await Resolver.resolveVersion(options.versionOverride, { - ui5HomeDir: ui5DataDir, + ui5DataDir, cwd }); log.info( @@ -387,7 +387,7 @@ export default { version, providedLibraryMetadata, cacheMode, - ui5HomeDir: ui5DataDir + ui5DataDir }); let startTime; diff --git a/packages/project/lib/ui5Framework/AbstractInstaller.js b/packages/project/lib/ui5Framework/AbstractInstaller.js index 7201f72944f..e13dea7f6e0 100644 --- a/packages/project/lib/ui5Framework/AbstractInstaller.js +++ b/packages/project/lib/ui5Framework/AbstractInstaller.js @@ -12,17 +12,17 @@ const illegalFileNameRegExp = /[^0-9a-zA-Z\-._@/]/; class AbstractInstaller { /** - * @param {string} ui5HomeDir UI5 home directory location. This will be used to store packages, + * @param {string} ui5DataDir UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. */ - constructor(ui5HomeDir) { + constructor(ui5DataDir) { if (new.target === AbstractInstaller) { throw new TypeError("Class 'AbstractInstaller' is abstract"); } - if (!ui5HomeDir) { - throw new Error(`Installer: Missing parameter "ui5HomeDir"`); + if (!ui5DataDir) { + throw new Error(`Installer: Missing parameter "ui5DataDir"`); } - this._lockDir = path.join(ui5HomeDir, "framework", "locks"); + this._lockDir = path.join(ui5DataDir, "framework", "locks"); } async _synchronize(lockName, callback) { diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 7237df0fe5e..8cccbd3e496 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -26,7 +26,7 @@ class AbstractResolver { * @param {boolean} [options.sources=false] Whether to install framework libraries as sources or * pre-built (with build manifest) * @param {string} [options.cwd=process.cwd()] Current working directory - * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, + * @param {string} [options.ui5DataDir="~/.ui5"] UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. Relative to `process.cwd()` * @param {object.} [options.providedLibraryMetadata] * Resolver skips installing listed libraries and uses the dependency information to resolve their dependencies. @@ -34,15 +34,15 @@ class AbstractResolver { * Otherwise an error is thrown. */ /* eslint-enable max-len */ - constructor({cwd, version, sources, ui5HomeDir, providedLibraryMetadata}) { + constructor({cwd, version, sources, ui5DataDir, providedLibraryMetadata}) { if (new.target === AbstractResolver) { throw new TypeError("Class 'AbstractResolver' is abstract"); } // In some CI environments, the homedir might be set explicitly to a relative // path (e.g. "./"), but tooling requires an absolute path - this._ui5HomeDir = path.resolve( - ui5HomeDir || path.join(os.homedir(), ".ui5") + this._ui5DataDir = path.resolve( + ui5DataDir || path.join(os.homedir(), ".ui5") ); this._cwd = cwd ? path.resolve(cwd) : process.cwd(); this._version = version; @@ -205,21 +205,21 @@ class AbstractResolver { }; } - static async resolveVersion(version, {ui5HomeDir, cwd} = {}) { + static async resolveVersion(version, {ui5DataDir, cwd} = {}) { // Don't allow nullish values // An empty string is a valid semver range that converts to "*", which should not be supported if (!version) { throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); } - const spec = await this._getVersionSpec(version, {ui5HomeDir, cwd}); + const spec = await this._getVersionSpec(version, {ui5DataDir, cwd}); // For all invalid cases which are not explicitly handled in _getVersionSpec if (!spec) { throw new Error(`Framework version specifier "${version}" is incorrect or not supported`); } - const versions = await this.fetchAllVersions({ui5HomeDir, cwd}); + const versions = await this.fetchAllVersions({ui5DataDir, cwd}); const resolvedVersion = semver.maxSatisfying(versions, spec, { // Allow ranges that end with -SNAPSHOT to match any -SNAPSHOT version // like a normal version in order to support ranges like 1.x.x-SNAPSHOT. @@ -246,7 +246,7 @@ class AbstractResolver { return resolvedVersion; } - static async _getVersionSpec(version, {ui5HomeDir, cwd}) { + static async _getVersionSpec(version, {ui5DataDir, cwd}) { if (this._isSnapshotVersionOrRange(version)) { const versionMatch = version.match(VERSION_RANGE_REGEXP); if (versionMatch) { @@ -268,7 +268,7 @@ class AbstractResolver { return null; } - const allTags = await this.fetchAllTags({ui5HomeDir, cwd}); + const allTags = await this.fetchAllTags({ui5DataDir, cwd}); if (!allTags) { // Resolver doesn't support tags (e.g. Sapui5MavenSnapshotResolver) diff --git a/packages/project/lib/ui5Framework/Openui5Resolver.js b/packages/project/lib/ui5Framework/Openui5Resolver.js index 2f9bcce072c..a6a9c4fc02a 100644 --- a/packages/project/lib/ui5Framework/Openui5Resolver.js +++ b/packages/project/lib/ui5Framework/Openui5Resolver.js @@ -18,7 +18,7 @@ class Openui5Resolver extends AbstractResolver { * @param {*} options options * @param {string} options.version OpenUI5 version to use * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc - * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, + * @param {string} [options.ui5DataDir="~/.ui5"] UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. Relative to `process.cwd()` * @param {string} [options.cacheDir] Where to store temp/cached packages. * @param {string} [options.packagesDir] Where to install packages @@ -31,7 +31,7 @@ class Openui5Resolver extends AbstractResolver { this._installer = new Installer({ cwd: this._cwd, - ui5HomeDir: this._ui5HomeDir, + ui5DataDir: this._ui5DataDir, cacheDir, packagesDir, stagingDir }); this._loadLibraryMetadata = Object.create(null); @@ -94,11 +94,11 @@ class Openui5Resolver extends AbstractResolver { return installer.fetchPackageDistTags({pkgName: OPENUI5_CORE_PACKAGE}); } - static _getInstaller({ui5HomeDir, cwd} = {}) { + static _getInstaller({ui5DataDir, cwd} = {}) { return new Installer({ cwd: cwd ? path.resolve(cwd) : process.cwd(), - ui5HomeDir: - ui5HomeDir ? path.resolve(ui5HomeDir) : + ui5DataDir: + ui5DataDir ? path.resolve(ui5DataDir) : path.join(os.homedir(), ".ui5") }); } diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js index 2d697b413d0..3e9ef7ae7f0 100644 --- a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -32,7 +32,7 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { * @param {boolean} [options.sources=false] Whether to install framework libraries as sources or * pre-built (with build manifest) * @param {string} [options.cwd=process.cwd()] Current working directory - * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, + * @param {string} [options.ui5DataDir="~/.ui5"] UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. Relative to `process.cwd()` * @param {module:@ui5/project/ui5Framework/maven/CacheMode} [options.cacheMode=Default] * Cache mode to use @@ -45,7 +45,7 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { } = options; this._installer = new Installer({ - ui5HomeDir: this._ui5HomeDir, + ui5DataDir: this._ui5DataDir, snapshotEndpointUrlCb: Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback(options.snapshotEndpointUrl), cacheMode, @@ -144,11 +144,11 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { }; } - static async fetchAllVersions({ui5HomeDir, cwd, snapshotEndpointUrl} = {}) { + static async fetchAllVersions({ui5DataDir, cwd, snapshotEndpointUrl} = {}) { const installer = new Installer({ cwd: cwd ? path.resolve(cwd) : process.cwd(), - ui5HomeDir: path.resolve( - ui5HomeDir || path.join(os.homedir(), ".ui5") + ui5DataDir: path.resolve( + ui5DataDir || path.join(os.homedir(), ".ui5") ), snapshotEndpointUrlCb: Sapui5MavenSnapshotResolver._createSnapshotEndpointUrlCallback(snapshotEndpointUrl), }); diff --git a/packages/project/lib/ui5Framework/Sapui5Resolver.js b/packages/project/lib/ui5Framework/Sapui5Resolver.js index 6666e9c0e4c..300020dce25 100644 --- a/packages/project/lib/ui5Framework/Sapui5Resolver.js +++ b/packages/project/lib/ui5Framework/Sapui5Resolver.js @@ -21,7 +21,7 @@ class Sapui5Resolver extends AbstractResolver { * @param {*} options options * @param {string} options.version SAPUI5 version to use * @param {string} [options.cwd=process.cwd()] Working directory to resolve configurations like .npmrc - * @param {string} [options.ui5HomeDir="~/.ui5"] UI5 home directory location. This will be used to store packages, + * @param {string} [options.ui5DataDir="~/.ui5"] UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. Relative to `process.cwd()` * @param {string} [options.cacheDir] Where to store temp/cached packages. * @param {string} [options.packagesDir] Where to install packages @@ -34,7 +34,7 @@ class Sapui5Resolver extends AbstractResolver { this._installer = new Installer({ cwd: this._cwd, - ui5HomeDir: this._ui5HomeDir, + ui5DataDir: this._ui5DataDir, cacheDir, packagesDir, stagingDir }); this._loadDistMetadata = null; @@ -115,11 +115,11 @@ class Sapui5Resolver extends AbstractResolver { return installer.fetchPackageDistTags({pkgName: DIST_PKG_NAME}); } - static _getInstaller({ui5HomeDir, cwd} = {}) { + static _getInstaller({ui5DataDir, cwd} = {}) { return new Installer({ cwd: cwd ? path.resolve(cwd) : process.cwd(), - ui5HomeDir: - ui5HomeDir ? path.resolve(ui5HomeDir) : + ui5DataDir: + ui5DataDir ? path.resolve(ui5DataDir) : path.join(os.homedir(), ".ui5") }); } diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js index cd004b2cbb9..6a85b7ccb3e 100644 --- a/packages/project/lib/ui5Framework/maven/Installer.js +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -22,20 +22,20 @@ const CACHE_TIME = 32400000; // 9 hours class Installer extends AbstractInstaller { /** * @param {object} parameters Parameters - * @param {string} parameters.ui5HomeDir UI5 home directory location. This will be used to store packages, + * @param {string} parameters.ui5DataDir UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. * @param {Function} parameters.snapshotEndpointUrlCb Callback that returns a Promise , * resolving to the Maven repository URL. * Example: https://registry.corp/vendor/build-snapshots/ * @param {module:@ui5/project/ui5Framework/maven/CacheMode} [parameters.cacheMode=Default] Cache mode to use */ - constructor({ui5HomeDir, snapshotEndpointUrlCb, cacheMode = CacheMode.Default}) { - super(ui5HomeDir); + constructor({ui5DataDir, snapshotEndpointUrlCb, cacheMode = CacheMode.Default}) { + super(ui5DataDir); - this._artifactsDir = path.join(ui5HomeDir, "framework", "artifacts"); - this._packagesDir = path.join(ui5HomeDir, "framework", "packages"); - this._metadataDir = path.join(ui5HomeDir, "framework", "metadata"); - this._stagingDir = path.join(ui5HomeDir, "framework", "staging"); + this._artifactsDir = path.join(ui5DataDir, "framework", "artifacts"); + this._packagesDir = path.join(ui5DataDir, "framework", "packages"); + this._metadataDir = path.join(ui5DataDir, "framework", "metadata"); + this._stagingDir = path.join(ui5DataDir, "framework", "staging"); this._cacheMode = cacheMode; this._snapshotEndpointUrlCb = snapshotEndpointUrlCb; diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index 5f9bd0f6352..da3c7bf27a4 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -15,27 +15,27 @@ class Installer extends AbstractInstaller { /** * @param {object} parameters Parameters * @param {string} parameters.cwd Current working directory - * @param {string} parameters.ui5HomeDir UI5 home directory location. This will be used to store packages, + * @param {string} parameters.ui5DataDir UI5 home directory location. This will be used to store packages, * metadata and configuration used by the resolvers. - * @param {string} [parameters.packagesDir="${ui5HomeDir}/framework/packages"] Where to install packages - * @param {string} [parameters.stagingDir="${ui5HomeDir}/framework/staging"] The staging directory for the packages - * @param {string} [parameters.cacheDir="${ui5HomeDir}/framework/cacache"] Where to store temp/cached packages. + * @param {string} [parameters.packagesDir="${ui5DataDir}/framework/packages"] Where to install packages + * @param {string} [parameters.stagingDir="${ui5DataDir}/framework/staging"] The staging directory for the packages + * @param {string} [parameters.cacheDir="${ui5DataDir}/framework/cacache"] Where to store temp/cached packages. */ - constructor({cwd, ui5HomeDir, packagesDir, stagingDir, cacheDir}) { - super(ui5HomeDir); + constructor({cwd, ui5DataDir, packagesDir, stagingDir, cacheDir}) { + super(ui5DataDir); if (!cwd) { throw new Error(`Installer: Missing parameter "cwd"`); } this._packagesDir = packagesDir ? - path.resolve(packagesDir) : path.join(ui5HomeDir, "framework", "packages"); + path.resolve(packagesDir) : path.join(ui5DataDir, "framework", "packages"); log.verbose(`Installing to: ${this._packagesDir}`); this._cwd = cwd; this._caCacheDir = cacheDir ? - path.resolve(cacheDir) : path.join(ui5HomeDir, "framework", "cacache"); + path.resolve(cacheDir) : path.join(ui5DataDir, "framework", "cacache"); this._stagingDir = stagingDir ? - path.resolve(stagingDir) : path.join(ui5HomeDir, "framework", "staging"); + path.resolve(stagingDir) : path.join(ui5DataDir, "framework", "staging"); } getRegistry() { diff --git a/packages/project/test/lib/graph/helpers/ui5Framework.js b/packages/project/test/lib/graph/helpers/ui5Framework.js index f400d16458d..ceae8c52e54 100644 --- a/packages/project/test/lib/graph/helpers/ui5Framework.js +++ b/packages/project/test/lib/graph/helpers/ui5Framework.js @@ -131,7 +131,7 @@ test.serial("enrichProjectGraph", async (t) => { cacheMode: undefined, cwd: dependencyTree.path, version: dependencyTree.configuration.framework.version, - ui5HomeDir: undefined, + ui5DataDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); @@ -336,7 +336,7 @@ test.serial("enrichProjectGraph: With versionOverride", async (t) => { t.is(Sapui5ResolverResolveVersionStub.callCount, 1); t.deepEqual(Sapui5ResolverResolveVersionStub.getCall(0).args, ["1.99", { cwd: dependencyTree.path, - ui5HomeDir: undefined, + ui5DataDir: undefined, }]); t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); @@ -344,7 +344,7 @@ test.serial("enrichProjectGraph: With versionOverride", async (t) => { cacheMode: undefined, cwd: dependencyTree.path, version: "1.99.9", - ui5HomeDir: undefined, + ui5DataDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -398,7 +398,7 @@ test.serial("enrichProjectGraph: With versionOverride containing snapshot versio t.is(Sapui5MavenSnapshotResolverResolveVersionStub.callCount, 1); t.deepEqual(Sapui5MavenSnapshotResolverResolveVersionStub.getCall(0).args, ["1.99-SNAPSHOT", { cwd: dependencyTree.path, - ui5HomeDir: undefined, + ui5DataDir: undefined, }]); t.is(Sapui5MavenSnapshotResolverStub.callCount, 1, @@ -407,7 +407,7 @@ test.serial("enrichProjectGraph: With versionOverride containing snapshot versio cacheMode: undefined, cwd: dependencyTree.path, version: "1.99.9-SNAPSHOT", - ui5HomeDir: undefined, + ui5DataDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -461,7 +461,7 @@ test.serial("enrichProjectGraph: With versionOverride containing latest-snapshot t.is(Sapui5MavenSnapshotResolverResolveVersionStub.callCount, 1); t.deepEqual(Sapui5MavenSnapshotResolverResolveVersionStub.getCall(0).args, ["latest-snapshot", { cwd: dependencyTree.path, - ui5HomeDir: undefined, + ui5DataDir: undefined, }]); t.is(Sapui5MavenSnapshotResolverStub.callCount, 1, @@ -470,7 +470,7 @@ test.serial("enrichProjectGraph: With versionOverride containing latest-snapshot cacheMode: undefined, cwd: dependencyTree.path, version: "1.99.9-SNAPSHOT", - ui5HomeDir: undefined, + ui5DataDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -630,7 +630,7 @@ test.serial("enrichProjectGraph should resolve framework project with version an cacheMode: undefined, cwd: dependencyTree.path, version: "1.2.3", - ui5HomeDir: undefined, + ui5DataDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -726,7 +726,7 @@ test.serial("enrichProjectGraph should resolve framework project " + t.is(Sapui5ResolverResolveVersionStub.callCount, 1); t.deepEqual(Sapui5ResolverResolveVersionStub.getCall(0).args, ["3.4.5", { cwd: dependencyTree.path, - ui5HomeDir: undefined, + ui5DataDir: undefined, }]); t.is(Sapui5ResolverStub.callCount, 1, "Sapui5Resolver#constructor should be called once"); @@ -735,7 +735,7 @@ test.serial("enrichProjectGraph should resolve framework project " + cacheMode: undefined, cwd: dependencyTree.path, version: "1.99.9", - ui5HomeDir: undefined, + ui5DataDir: undefined, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -1000,7 +1000,7 @@ test.serial("enrichProjectGraph should use framework library metadata from works cacheMode: undefined, cwd: dependencyTree.path, version: "1.111.1", - ui5HomeDir: undefined, + ui5DataDir: undefined, providedLibraryMetadata: workspaceFrameworkLibraryMetadata }], "Sapui5Resolver#constructor should be called with expected args"); t.is(Sapui5ResolverStub.getCall(0).args[0].providedLibraryMetadata, workspaceFrameworkLibraryMetadata); @@ -1058,7 +1058,7 @@ test.serial("enrichProjectGraph should allow omitting framework version in case t.deepEqual(Sapui5ResolverStub.getCall(0).args, [{ cacheMode: undefined, cwd: dependencyTree.path, - ui5HomeDir: undefined, + ui5DataDir: undefined, version: undefined, providedLibraryMetadata: workspaceFrameworkLibraryMetadata }], "Sapui5Resolver#constructor should be called with expected args"); @@ -1116,7 +1116,7 @@ test.serial("enrichProjectGraph should use UI5 data dir from env var", async (t) cacheMode: undefined, cwd: dependencyTree.path, version: dependencyTree.configuration.framework.version, - ui5HomeDir: expectedUi5DataDir, + ui5DataDir: expectedUi5DataDir, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -1172,7 +1172,7 @@ test.serial("enrichProjectGraph should use UI5 data dir from configuration", asy cacheMode: undefined, cwd: dependencyTree.path, version: dependencyTree.configuration.framework.version, - ui5HomeDir: expectedUi5DataDir, + ui5DataDir: expectedUi5DataDir, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); @@ -1228,7 +1228,7 @@ test.serial("enrichProjectGraph should use absolute UI5 data dir from configurat cacheMode: undefined, cwd: dependencyTree.path, version: dependencyTree.configuration.framework.version, - ui5HomeDir: expectedUi5DataDir, + ui5DataDir: expectedUi5DataDir, providedLibraryMetadata: undefined }], "Sapui5Resolver#constructor should be called with expected args"); }); diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index ee068adf22b..011c4e391a0 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -95,30 +95,30 @@ test("AbstractResolver: Defaults 'cwd' to process.cwd()", (t) => { const {MyResolver} = t.context; const resolver = new MyResolver({ version: "1.75.0", - ui5HomeDir: "/ui5home" + ui5DataDir: "/ui5data" }); t.is(resolver._cwd, process.cwd(), "Should default to process.cwd()"); }); -test("AbstractResolver: Set absolute 'ui5HomeDir'", (t) => { +test("AbstractResolver: Set absolute 'ui5DataDir'", (t) => { const {MyResolver} = t.context; const resolver = new MyResolver({ version: "1.75.0", - ui5HomeDir: "/my-ui5HomeDir" + ui5DataDir: "/my-ui5DataDir" }); - t.is(resolver._ui5HomeDir, path.resolve("/my-ui5HomeDir"), "Should be resolved 'ui5HomeDir'"); + t.is(resolver._ui5DataDir, path.resolve("/my-ui5DataDir"), "Should be resolved 'ui5DataDir'"); }); -test("AbstractResolver: Set relative 'ui5HomeDir'", (t) => { +test("AbstractResolver: Set relative 'ui5DataDir'", (t) => { const {MyResolver} = t.context; const resolver = new MyResolver({ version: "1.75.0", - ui5HomeDir: "./my-ui5HomeDir" + ui5DataDir: "./my-ui5DataDir" }); - t.is(resolver._ui5HomeDir, path.resolve("./my-ui5HomeDir"), "Should be resolved 'ui5HomeDir'"); + t.is(resolver._ui5DataDir, path.resolve("./my-ui5DataDir"), "Should be resolved 'ui5DataDir'"); }); -test("AbstractResolver: 'ui5HomeDir' overriden os.homedir()", (t) => { +test("AbstractResolver: 'ui5DataDir' overriden os.homedir()", (t) => { const {MyResolver, osHomeDirStub} = t.context; osHomeDirStub.returns("./"); @@ -126,16 +126,16 @@ test("AbstractResolver: 'ui5HomeDir' overriden os.homedir()", (t) => { const resolver = new MyResolver({ version: "1.75.0" }); - t.is(resolver._ui5HomeDir, path.resolve("./.ui5"), "Should be resolved 'ui5HomeDir'"); + t.is(resolver._ui5DataDir, path.resolve("./.ui5"), "Should be resolved 'ui5DataDir'"); }); -test("AbstractResolver: Defaults 'ui5HomeDir' to ~/.ui5", (t) => { +test("AbstractResolver: Defaults 'ui5DataDir' to ~/.ui5", (t) => { const {MyResolver} = t.context; const resolver = new MyResolver({ version: "1.75.0", cwd: "/test-project/" }); - t.is(resolver._ui5HomeDir, path.join(os.homedir(), ".ui5"), "Should default to ~/.ui5"); + t.is(resolver._ui5DataDir, path.join(os.homedir(), ".ui5"), "Should default to ~/.ui5"); }); test("AbstractResolver: getLibraryMetadata should throw an Error when not implemented", async (t) => { @@ -562,7 +562,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'latest'", async ( const version = await MyResolver.resolveVersion("latest", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.76.0", "Resolved version should be correct"); @@ -570,7 +570,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'latest'", async ( t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -581,7 +581,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR'", async (t const version = await MyResolver.resolveVersion("1", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.76.0", "Resolved version should be correct"); @@ -589,7 +589,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR'", async (t t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -600,7 +600,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR-SNAPSHOT'", const version = await MyResolver.resolveVersion("1-SNAPSHOT", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.79.0-SNAPSHOT", "Resolved version should be correct"); @@ -608,7 +608,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR-SNAPSHOT'", t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -619,7 +619,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR'", as const version = await MyResolver.resolveVersion("1.75", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.75.1", "Resolved version should be correct"); @@ -627,7 +627,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR'", as t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -638,7 +638,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR-SNAPS const version = await MyResolver.resolveVersion("1.79-SNAPSHOT", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.79.0-SNAPSHOT", "Resolved version should be correct"); @@ -646,7 +646,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR-SNAPS t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -657,7 +657,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH const version = await MyResolver.resolveVersion("1.75.0", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.75.0", "Resolved version should be correct"); @@ -665,7 +665,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -676,7 +676,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH const version = await MyResolver.resolveVersion("1.79.0-SNAPSHOT", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.79.0-SNAPSHOT", "Resolved version should be correct"); @@ -684,7 +684,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'MAJOR.MINOR.PATCH t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -695,7 +695,7 @@ test.serial("AbstractResolver: Static resolveVersion does not include prerelease const version = await MyResolver.resolveVersion("latest", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.78.0", "Resolved version should be correct"); @@ -703,7 +703,7 @@ test.serial("AbstractResolver: Static resolveVersion does not include prerelease t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -714,7 +714,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'latest-snapshot'" const version = await MyResolver.resolveVersion("latest-snapshot", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.76.1-SNAPSHOT", "Resolved version should be correct"); @@ -722,7 +722,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'latest-snapshot'" t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -735,7 +735,7 @@ test.serial("AbstractResolver: Static resolveVersion includes non-prereleases fo const version = await MyResolver.resolveVersion("latest-snapshot", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.79.1", "Resolved version should be correct"); @@ -743,7 +743,7 @@ test.serial("AbstractResolver: Static resolveVersion includes non-prereleases fo t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -757,7 +757,7 @@ test.serial("AbstractResolver: Static resolveVersion without options", async (t) t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: undefined, - ui5HomeDir: undefined + ui5DataDir: undefined }], "fetchAllVersions should be called with expected arguments"); }); @@ -767,7 +767,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for 'lts'", as const error = await t.throwsAsync(MyResolver.resolveVersion("lts", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, `Framework version specifier "lts" is incorrect or not supported`); @@ -782,7 +782,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '1.x'", async (t) const version = await MyResolver.resolveVersion("1.x", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.76.0", "Resolved version should be correct"); @@ -790,7 +790,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '1.x'", async (t) t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -801,7 +801,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '1.75.x'", async ( const version = await MyResolver.resolveVersion("1.75.x", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.75.1", "Resolved version should be correct"); @@ -809,7 +809,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '1.75.x'", async ( t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -820,7 +820,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '^1.75.0'", async const version = await MyResolver.resolveVersion("^1.75.0", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.76.0", "Resolved version should be correct"); @@ -828,7 +828,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '^1.75.0'", async t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -839,7 +839,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '~1.75.0'", async const version = await MyResolver.resolveVersion("~1.75.0", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.75.1", "Resolved version should be correct"); @@ -847,7 +847,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '~1.75.0'", async t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -858,7 +858,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '> 1.75.0 < 1.75.3 const version = await MyResolver.resolveVersion("> 1.75.0 < 1.75.3", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "1.75.2", "Resolved version should be correct"); @@ -866,7 +866,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '> 1.75.0 < 1.75.3 t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -877,7 +877,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'x.x.x-SNAPSHOT'", const version = await MyResolver.resolveVersion("x.x.x-SNAPSHOT", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); // All ranges ending with -SNAPSHOT should use "includePrerelease" in order to @@ -887,7 +887,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'x.x.x-SNAPSHOT'", t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -898,7 +898,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '^2.0.0-SNAPSHOT'" const version = await MyResolver.resolveVersion("^2.0.0-SNAPSHOT", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); // All ranges ending with -SNAPSHOT should use "includePrerelease" in order to @@ -908,7 +908,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '^2.0.0-SNAPSHOT'" t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -919,7 +919,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '2.x.x-alpha'", as const version = await MyResolver.resolveVersion("^2.0.0-alpha", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); // Prerelease ranges other than -SNAPSHOT should not use "includePrerelease" @@ -929,7 +929,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves '2.x.x-alpha'", as t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); }); @@ -945,7 +945,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'next' using tags" const version = await MyResolver.resolveVersion("next", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "2.0.0", "Resolved version should be correct"); @@ -953,12 +953,12 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'next' using tags" t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); t.is(fetchAllTagsStub.callCount, 1, "fetchAllTagsStub should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllTags should be called with expected arguments"); }); @@ -974,7 +974,7 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'next' to a pre-re const version = await MyResolver.resolveVersion("next", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version, "2.0.0-SNAPSHOT", "Resolved version should be correct"); @@ -982,12 +982,12 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'next' to a pre-re t.is(fetchAllVersionsStub.callCount, 1, "fetchAllVersions should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllVersions should be called with expected arguments"); t.is(fetchAllTagsStub.callCount, 1, "fetchAllTagsStub should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllTags should be called with expected arguments"); }); @@ -1004,14 +1004,14 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'latest' using tag // 'latest' should resolve to the highest version available const version1 = await MyResolver.resolveVersion("latest", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version1, "2.0.0", "Resolved version should be correct"); t.is(fetchAllTagsStub.callCount, 1, "fetchAllTagsStub should be called once"); t.deepEqual(fetchAllVersionsStub.getCall(0).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllTags should be called with expected arguments"); // Change behavior of Resolver to support tags, so that version should be used now @@ -1021,14 +1021,14 @@ test.serial("AbstractResolver: Static resolveVersion resolves 'latest' using tag }); const version2 = await MyResolver.resolveVersion("latest", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }); t.is(version2, "1.76.0", "Resolved version should be correct"); t.is(fetchAllTagsStub.callCount, 2, "fetchAllTagsStub should be called twice"); t.deepEqual(fetchAllVersionsStub.getCall(1).args, [{ cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }], "fetchAllTags should be called with expected arguments"); }); @@ -1039,7 +1039,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for empty stri const error = await t.throwsAsync(MyResolver.resolveVersion("", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, `Framework version specifier "" is incorrect or not supported`); @@ -1052,7 +1052,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for invalid ta const error = await t.throwsAsync(MyResolver.resolveVersion("%20", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, `Framework version specifier "%20" is incorrect or not supported`); @@ -1067,7 +1067,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for non-existi const error = await t.throwsAsync(MyResolver.resolveVersion("this-tag-does-not-exist", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, `Could not resolve framework version via tag 'this-tag-does-not-exist'. ` + @@ -1082,7 +1082,7 @@ test.serial("AbstractResolver: Static resolveVersion throws error for version no const error = await t.throwsAsync(MyResolver.resolveVersion("1.74.0", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, `Could not resolve framework version 1.74.0. ` + @@ -1101,7 +1101,7 @@ test.serial( const error = await t.throwsAsync(Openui5Resolver.resolveVersion("1.50.0", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, @@ -1121,7 +1121,7 @@ test.serial( const error = await t.throwsAsync(Sapui5Resolver.resolveVersion("1.75.0", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, @@ -1141,7 +1141,7 @@ test.serial( const error = await t.throwsAsync(Openui5Resolver.resolveVersion("latest", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, `Could not resolve framework version latest. ` + @@ -1160,7 +1160,7 @@ test.serial( const error = await t.throwsAsync(Sapui5Resolver.resolveVersion("latest", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, `Could not resolve framework version latest. ` + @@ -1179,7 +1179,7 @@ test.serial( const error = await t.throwsAsync(Openui5Resolver.resolveVersion("1.99", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, `Could not resolve framework version 1.99. ` + @@ -1198,7 +1198,7 @@ test.serial( const error = await t.throwsAsync(Sapui5Resolver.resolveVersion("1.99", { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" })); t.is(error.message, `Could not resolve framework version 1.99. ` + diff --git a/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js b/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js index eef9f149c60..7dde9906201 100644 --- a/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js +++ b/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js @@ -72,14 +72,14 @@ test.beforeEach(async (t) => { t.context.AbstractResolver = await esmock.p("../../../lib/ui5Framework/AbstractResolver.js", { "@ui5/logger": ui5Logger, "node:os": { - homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + homedir: sinon.stub().returns(path.join(fakeBaseDir, "datadir")) }, }); t.context.Openui5Resolver = await esmock.p("../../../lib/ui5Framework/Openui5Resolver.js", { "@ui5/logger": ui5Logger, "node:os": { - homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + homedir: sinon.stub().returns(path.join(fakeBaseDir, "datadir")) }, "../../../lib/ui5Framework/AbstractResolver.js": t.context.AbstractResolver, "../../../lib/ui5Framework/npm/Installer.js": t.context.Installer @@ -122,14 +122,14 @@ test.serial("resolveVersion", async (t) => { }); const defaultCwd = process.cwd(); - const defaultUi5HomeDir = path.join(fakeBaseDir, "homedir", ".ui5"); + const defaultUi5DataDir = path.join(fakeBaseDir, "datadir", ".ui5"); // Generic testing without and with options argument const optionsArguments = [ undefined, { cwd: path.join(fakeBaseDir, "custom-cwd"), - ui5HomeDir: path.join(fakeBaseDir, "custom-homedir", ".ui5") + ui5DataDir: path.join(fakeBaseDir, "custom-datadir", ".ui5") } ]; for (const options of optionsArguments) { @@ -191,7 +191,7 @@ test.serial("resolveVersion", async (t) => { cwd: options?.cwd ?? defaultCwd }))); t.true(pacote.packument.alwaysCalledWithMatch("@openui5/sap.ui.core", { - cache: path.join(options?.ui5HomeDir ?? defaultUi5HomeDir, "framework", "cacache") + cache: path.join(options?.ui5DataDir ?? defaultUi5DataDir, "framework", "cacache") })); } diff --git a/packages/project/test/lib/ui5framework/Openui5Resolver.js b/packages/project/test/lib/ui5framework/Openui5Resolver.js index 48812c71769..34d756987da 100644 --- a/packages/project/test/lib/ui5framework/Openui5Resolver.js +++ b/packages/project/test/lib/ui5framework/Openui5Resolver.js @@ -146,7 +146,7 @@ test.serial("Openui5Resolver: Static _getInstaller", (t) => { const options = { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }; const installer = Openui5Resolver._getInstaller(options); @@ -156,7 +156,7 @@ test.serial("Openui5Resolver: Static _getInstaller", (t) => { t.is(installer, t.context.InstallerStub.getCall(0).returnValue, "Installer instance is returned"); t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ cwd: path.resolve("/cwd"), - ui5HomeDir: path.resolve("/ui5HomeDir") + ui5DataDir: path.resolve("/ui5DataDir") }], "Installer should be called with expected arguments"); }); @@ -170,7 +170,7 @@ test.serial("Openui5Resolver: Static _getInstaller without options", (t) => { t.is(installer, t.context.InstallerStub.getCall(0).returnValue, "Installer instance is returned"); t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ cwd: process.cwd(), - ui5HomeDir: path.join(os.homedir(), ".ui5") + ui5DataDir: path.join(os.homedir(), ".ui5") }], "Installer should be called with expected arguments"); }); diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js index 0d7382d5807..26cb6dfbb56 100644 --- a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js @@ -365,7 +365,7 @@ test.serial("Sapui5MavenSnapshotResolver: Static fetchAllVersions", async (t) => const expectedVersions = ["1.75.0-SNAPSHOT", "1.75.1-SNAPSHOT", "1.76.0-SNAPSHOT"]; const options = { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }; t.context.fetchPackageVersionsStub.returns(expectedVersions); @@ -388,7 +388,7 @@ test.serial("Sapui5MavenSnapshotResolver: Static fetchAllVersions", async (t) => t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ cwd: path.resolve("/cwd"), snapshotEndpointUrlCb: "snapshotEndpointUrlCallback", - ui5HomeDir: path.resolve("/ui5HomeDir") + ui5DataDir: path.resolve("/ui5DataDir") }], "Installer should be called with expected arguments"); }); @@ -415,7 +415,7 @@ test.serial("Sapui5MavenSnapshotResolver: Static fetchAllVersions without option t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ cwd: process.cwd(), snapshotEndpointUrlCb: "snapshotEndpointUrlCallback", - ui5HomeDir: path.join(os.homedir(), ".ui5") + ui5DataDir: path.join(os.homedir(), ".ui5") }], "Installer should be called with expected arguments"); }); diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js index dd71636fe08..67e52db7ac2 100644 --- a/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js @@ -72,14 +72,14 @@ test.beforeEach(async (t) => { t.context.AbstractResolver = await esmock.p("../../../lib/ui5Framework/AbstractResolver.js", { "@ui5/logger": ui5Logger, "node:os": { - homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + homedir: sinon.stub().returns(path.join(fakeBaseDir, "datadir")) }, }); t.context.Sapui5Resolver = await esmock.p("../../../lib/ui5Framework/Sapui5Resolver.js", { "@ui5/logger": ui5Logger, "node:os": { - homedir: sinon.stub().returns(path.join(fakeBaseDir, "homedir")) + homedir: sinon.stub().returns(path.join(fakeBaseDir, "datadir")) }, "../../../lib/ui5Framework/AbstractResolver.js": t.context.AbstractResolver, "../../../lib/ui5Framework/npm/Installer.js": t.context.Installer @@ -122,14 +122,14 @@ test.serial("resolveVersion", async (t) => { }); const defaultCwd = process.cwd(); - const defaultUi5HomeDir = path.join(fakeBaseDir, "homedir", ".ui5"); + const defaultUi5DataDir = path.join(fakeBaseDir, "datadir", ".ui5"); // Generic testing without and with options argument const optionsArguments = [ undefined, { cwd: path.join(fakeBaseDir, "custom-cwd"), - ui5HomeDir: path.join(fakeBaseDir, "custom-homedir", ".ui5") + ui5DataDir: path.join(fakeBaseDir, "custom-datadir", ".ui5") } ]; for (const options of optionsArguments) { @@ -191,7 +191,7 @@ test.serial("resolveVersion", async (t) => { cwd: options?.cwd ?? defaultCwd }))); t.true(pacote.packument.alwaysCalledWithMatch("@sapui5/distribution-metadata", { - cache: path.join(options?.ui5HomeDir ?? defaultUi5HomeDir, "framework", "cacache") + cache: path.join(options?.ui5DataDir ?? defaultUi5DataDir, "framework", "cacache") })); } diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.js index 8081c4abcae..63288d356ed 100644 --- a/packages/project/test/lib/ui5framework/Sapui5Resolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.js @@ -132,7 +132,7 @@ test.serial("Sapui5Resolver: Static _getInstaller", (t) => { const options = { cwd: "/cwd", - ui5HomeDir: "/ui5HomeDir" + ui5DataDir: "/ui5DataDir" }; const installer = Sapui5Resolver._getInstaller(options); @@ -142,7 +142,7 @@ test.serial("Sapui5Resolver: Static _getInstaller", (t) => { t.is(installer, t.context.InstallerStub.getCall(0).returnValue, "Installer instance is returned"); t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ cwd: path.resolve("/cwd"), - ui5HomeDir: path.resolve("/ui5HomeDir") + ui5DataDir: path.resolve("/ui5DataDir") }], "Installer should be called with expected arguments"); }); @@ -156,7 +156,7 @@ test.serial("Sapui5Resolver: Static _getInstaller without options", (t) => { t.is(installer, t.context.InstallerStub.getCall(0).returnValue, "Installer instance is returned"); t.deepEqual(t.context.InstallerStub.getCall(0).args, [{ cwd: process.cwd(), - ui5HomeDir: path.join(os.homedir(), ".ui5") + ui5DataDir: path.join(os.homedir(), ".ui5") }], "Installer should be called with expected arguments"); }); diff --git a/packages/project/test/lib/ui5framework/maven/Installer.js b/packages/project/test/lib/ui5framework/maven/Installer.js index d2bfd3adbcb..044f04cb5ad 100644 --- a/packages/project/test/lib/ui5framework/maven/Installer.js +++ b/packages/project/test/lib/ui5framework/maven/Installer.js @@ -73,25 +73,25 @@ test.serial("constructor", (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); t.true(installer instanceof Installer, "Constructor returns instance of class"); - t.is(installer._artifactsDir, path.join("/ui5Home/", "framework", "artifacts")); - t.is(installer._packagesDir, path.join("/ui5Home/", "framework", "packages")); - t.is(installer._stagingDir, path.join("/ui5Home/", "framework", "staging")); - t.is(installer._metadataDir, path.join("/ui5Home/", "framework", "metadata")); - t.is(installer._lockDir, path.join("/ui5Home/", "framework", "locks")); + t.is(installer._artifactsDir, path.join("/ui5Data/", "framework", "artifacts")); + t.is(installer._packagesDir, path.join("/ui5Data/", "framework", "packages")); + t.is(installer._stagingDir, path.join("/ui5Data/", "framework", "staging")); + t.is(installer._metadataDir, path.join("/ui5Data/", "framework", "metadata")); + t.is(installer._lockDir, path.join("/ui5Data/", "framework", "locks")); }); -test.serial("constructor requires 'ui5HomeDir'", (t) => { +test.serial("constructor requires 'ui5DataDir'", (t) => { const {Installer} = t.context; t.throws(() => { new Installer({ cwd: "/cwd/" }); - }, {message: `Installer: Missing parameter "ui5HomeDir"`}); + }, {message: `Installer: Missing parameter "ui5DataDir"`}); }); test.serial("constructor requires 'snapshotEndpointUrlCb'", (t) => { @@ -100,7 +100,7 @@ test.serial("constructor requires 'snapshotEndpointUrlCb'", (t) => { t.throws(() => { new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home" + ui5DataDir: "/ui5Data" }); }, {message: `Installer: Missing Snapshot-Endpoint URL callback parameter`}); }); @@ -110,7 +110,7 @@ test.serial("getRegistry", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); @@ -132,7 +132,7 @@ test.serial("getRegistry: Missing endpoint URL", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => Promise.resolve(null) }); @@ -151,7 +151,7 @@ test.serial("fetchPackageVersions", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); @@ -178,7 +178,7 @@ test.serial("fetchPackageVersions throws", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); @@ -198,13 +198,13 @@ test.serial("_getLockPath", (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); const lockPath = installer._getLockPath("package-@openui5/sap.ui.lib1@1.2.3-SNAPSHOT"); - t.is(lockPath, path.join("/ui5Home/", "framework", "locks", "package-@openui5-sap.ui.lib1@1.2.3-SNAPSHOT.lock")); + t.is(lockPath, path.join("/ui5Data/", "framework", "locks", "package-@openui5-sap.ui.lib1@1.2.3-SNAPSHOT.lock")); }); test.serial("readJson", async (t) => { @@ -213,7 +213,7 @@ test.serial("readJson", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -229,7 +229,7 @@ test.serial("installPackage", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -238,7 +238,7 @@ test.serial("installPackage", async (t) => { sinon.stub(installer, "_pathExists").resolves(false); sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); const installArtifactStub = sinon.stub(installer, "installArtifact").resolves({ - artifactPath: "/ui5Home/framework/artifacts/com_sap_ui5_dist-sapui5-sdk-dist/5/npm-sources.zip", + artifactPath: "/ui5Data/framework/artifacts/com_sap_ui5_dist-sapui5-sdk-dist/5/npm-sources.zip", removeArtifact: removeArtifactStub }); @@ -254,7 +254,7 @@ test.serial("installPackage", async (t) => { t.deepEqual( installedPackage, {pkgPath: - path.join("/ui5Home/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, + path.join("/ui5Data/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, "Install the correct package" ); @@ -285,7 +285,7 @@ test.serial("installPackage: No classifier", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -294,7 +294,7 @@ test.serial("installPackage: No classifier", async (t) => { sinon.stub(installer, "_pathExists").resolves(false); sinon.stub(installer, "_synchronize").callsFake( async (pckg, callback) => await callback()); const installArtifactStub = sinon.stub(installer, "installArtifact").resolves({ - artifactPath: "/ui5Home/framework/artifacts/com_sap_ui5_dist-sapui5-sdk-dist/5/npm-sources.zip", + artifactPath: "/ui5Data/framework/artifacts/com_sap_ui5_dist-sapui5-sdk-dist/5/npm-sources.zip", removeArtifact: removeArtifactStub }); @@ -310,7 +310,7 @@ test.serial("installPackage: No classifier", async (t) => { t.deepEqual( installedPackage, {pkgPath: - path.join("/ui5Home/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, + path.join("/ui5Data/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, "Install the correct package" ); @@ -341,7 +341,7 @@ test.serial("installPackage: Already installed", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -362,7 +362,7 @@ test.serial("installPackage: Already installed", async (t) => { t.deepEqual( installedPackage, {pkgPath: - path.join("/ui5Home/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, + path.join("/ui5Data/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, "Install the correct package" ); @@ -374,7 +374,7 @@ test.serial("installPackage: Already installed only after lock acquired", async const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -397,7 +397,7 @@ test.serial("installPackage: Already installed only after lock acquired", async t.deepEqual( installedPackage, {pkgPath: - path.join("/ui5Home/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, + path.join("/ui5Data/", "framework", "packages", "@sapui5", "distribution-metadata", "5")}, "Install the correct package" ); @@ -409,7 +409,7 @@ test.serial("installArtifact", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: async () => "url" }); @@ -425,7 +425,7 @@ test.serial("installArtifact", async (t) => { classifier: null }); - const expectedPath = path.join("/ui5Home/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "5.jar"); + const expectedPath = path.join("/ui5Data/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "5.jar"); t.is( installedArtifact.artifactPath, expectedPath, @@ -451,7 +451,7 @@ test.serial("installArtifact", async (t) => { extension: "jar", }, "Registry#requestArtifact got called with expected coordinates"); t.is(registryRequestArtifactStub.firstCall.args[1], - path.join("/ui5Home/", "framework", "staging", "com.sap.ui5.dist_sapui5-sdk-dist_5_jar"), + path.join("/ui5Data/", "framework", "staging", "com.sap.ui5.dist_sapui5-sdk-dist_5_jar"), "Registry#requestArtifact got called with expected target directory"); t.is( @@ -471,7 +471,7 @@ test.serial("installArtifact: Target revision provided", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: async () => "url" }); @@ -488,7 +488,7 @@ test.serial("installArtifact: Target revision provided", async (t) => { revision: "16" }); - const expectedPath = path.join("/ui5Home/", "framework", "artifacts", + const expectedPath = path.join("/ui5Data/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "16", "npm-sources.zip"); t.is( installedArtifact.artifactPath, @@ -508,7 +508,7 @@ test.serial("installArtifact: Target revision provided", async (t) => { extension: "zip", }, "Registry#requestArtifact got called with expected coordinates"); t.is(registryRequestArtifactStub.firstCall.args[1], - path.join("/ui5Home/", "framework", "staging", "com.sap.ui5.dist_sapui5-sdk-dist_16_npm-sources.zip"), + path.join("/ui5Data/", "framework", "staging", "com.sap.ui5.dist_sapui5-sdk-dist_16_npm-sources.zip"), "Registry#requestArtifact got called with expected target directory"); t.is( @@ -527,7 +527,7 @@ test.serial("installArtifact: Already installed", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -542,7 +542,7 @@ test.serial("installArtifact: Already installed", async (t) => { extension: "jar", }); - const expectedPath = path.join("/ui5Home/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "5.jar"); + const expectedPath = path.join("/ui5Data/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "5.jar"); t.is( installedArtifact.artifactPath, expectedPath, @@ -567,7 +567,7 @@ test.serial("installArtifact: Already installed only after lock acquired", async const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -584,7 +584,7 @@ test.serial("installArtifact: Already installed only after lock acquired", async extension: "jar", }); - const expectedPath = path.join("/ui5Home/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "5.jar"); + const expectedPath = path.join("/ui5Data/", "framework", "artifacts", "com_sap_ui5_dist-sapui5-sdk-dist", "5.jar"); t.is( installedArtifact.artifactPath, expectedPath, @@ -609,7 +609,7 @@ test.serial("_fetchArtifactMetadata", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -646,7 +646,7 @@ test.serial("_fetchArtifactMetadata: Cached", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {}, }); @@ -682,7 +682,7 @@ test.serial("_fetchArtifactMetadata: Cache available but disabled", async (t) => const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {}, cacheMode: "Off" }); @@ -718,7 +718,7 @@ test.serial("_fetchArtifactMetadata: Cache outdated but enforced", async (t) => const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {}, cacheMode: "Force" }); @@ -755,7 +755,7 @@ test.serial("_fetchArtifactMetadata throws", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {}, cacheMode: "Force" }); @@ -779,7 +779,7 @@ test.serial("_getRemoteArtifactMetadata", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); @@ -813,7 +813,7 @@ test.serial("_getRemoteArtifactMetadata throws", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); @@ -832,7 +832,7 @@ test.serial("_getRemoteArtifactMetadata throws missing deployment metadata", asy const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => Promise.resolve("endpoint-url") }); @@ -870,7 +870,7 @@ test.serial("_getLocalArtifactMetadata", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -885,7 +885,7 @@ test.serial("_getLocalArtifactMetadata file not found", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -904,7 +904,7 @@ test.serial("_getLocalArtifactMetadata throws", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -923,7 +923,7 @@ test.serial("_writeLocalArtifactMetadata", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -936,7 +936,7 @@ test.serial("_writeLocalArtifactMetadata", async (t) => { t.is(writeFileStub.callCount, 1, "_writeJson called"); t.deepEqual( writeFileStub.args, - [[path.join("/ui5Home/", "framework", "metadata", "Id.json"), "{\"foo\":\"bar\"}"]], + [[path.join("/ui5Data/", "framework", "metadata", "Id.json"), "{\"foo\":\"bar\"}"]], "_writeJson called with correct arguments" ); }); @@ -946,7 +946,7 @@ test.serial("_removeStaleRevisions", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -981,7 +981,7 @@ test.serial("_pathExists", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -998,7 +998,7 @@ test.serial("_pathExists file not found", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -1013,7 +1013,7 @@ test.serial("_pathExists throws", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -1031,7 +1031,7 @@ test.serial("_projectExists", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -1049,7 +1049,7 @@ test.serial("_projectExists: Does not exist", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); @@ -1067,7 +1067,7 @@ test.serial("_projectExists: Throws", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/", + ui5DataDir: "/ui5Data/", snapshotEndpointUrlCb: () => {} }); diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index d407270c001..1020e45cd0e 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -52,12 +52,12 @@ test.serial("Installer: constructor", (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.true(installer instanceof Installer, "Constructor returns instance of class"); - t.is(installer._packagesDir, path.join("/ui5Home/", "framework", "packages")); - t.is(installer._lockDir, path.join("/ui5Home/", "framework", "locks")); - t.is(installer._stagingDir, path.join("/ui5Home/", "framework", "staging")); + t.is(installer._packagesDir, path.join("/ui5Data/", "framework", "packages")); + t.is(installer._lockDir, path.join("/ui5Data/", "framework", "locks")); + t.is(installer._stagingDir, path.join("/ui5Data/", "framework", "staging")); }); test.serial("Installer: constructor requires 'cwd'", (t) => { @@ -65,19 +65,19 @@ test.serial("Installer: constructor requires 'cwd'", (t) => { t.throws(() => { new Installer({ - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); }, {message: `Installer: Missing parameter "cwd"`}); }); -test.serial("Installer: constructor requires 'ui5HomeDir'", (t) => { +test.serial("Installer: constructor requires 'ui5DataDir'", (t) => { const {Installer} = t.context; t.throws(() => { new Installer({ cwd: "/cwd/" }); - }, {message: `Installer: Missing parameter "ui5HomeDir"`}); + }, {message: `Installer: Missing parameter "ui5DataDir"`}); }); test.serial("Installer: fetchPackageVersions", async (t) => { @@ -85,7 +85,7 @@ test.serial("Installer: fetchPackageVersions", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); const registry = installer.getRegistry(); @@ -119,12 +119,12 @@ test.serial("Installer: _getLockPath", (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); const lockPath = installer._getLockPath("lo/ck-n@me"); - t.is(lockPath, path.join("/ui5Home/", "framework", "locks", "lo-ck-n@me.lock")); + t.is(lockPath, path.join("/ui5Data/", "framework", "locks", "lo-ck-n@me.lock")); }); test.serial("Installer: _getLockPath with illegal characters", (t) => { @@ -132,7 +132,7 @@ test.serial("Installer: _getLockPath with illegal characters", (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.throws(() => installer._getLockPath("lock.näme"), { @@ -148,7 +148,7 @@ test.serial("Installer: fetchPackageManifest (without existing package.json)", a const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); const mockedManifest = { @@ -219,7 +219,7 @@ test.serial("Installer: fetchPackageManifest (with existing package.json)", asyn const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); const mockedManifest = { @@ -280,7 +280,7 @@ test.serial("Installer: fetchPackageManifest (readJson throws error)", async (t) const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); const registry = installer.getRegistry(); @@ -315,7 +315,7 @@ test.serial("Installer: _synchronize", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.context.lockStub.yieldsAsync(); @@ -332,7 +332,7 @@ test.serial("Installer: _synchronize", async (t) => { "_getLockPath should be called with expected args"); t.is(t.context.mkdirpStub.callCount, 1, "_mkdirp should be called once"); - t.deepEqual(t.context.mkdirpStub.getCall(0).args, [path.join("/ui5Home/", "framework", "locks")], + t.deepEqual(t.context.mkdirpStub.getCall(0).args, [path.join("/ui5Data/", "framework", "locks")], "_mkdirp should be called with expected args"); t.is(t.context.lockStub.callCount, 1, "lock should be called once"); @@ -358,7 +358,7 @@ test.serial("Installer: _synchronize should unlock when callback promise has res const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.context.lockStub.yieldsAsync(); @@ -384,7 +384,7 @@ test.serial("Installer: _synchronize should throw when locking fails", async (t) const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.context.lockStub.yieldsAsync(new Error("Locking error")); @@ -406,7 +406,7 @@ test.serial("Installer: _synchronize should still unlock when callback throws an const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.context.lockStub.yieldsAsync(); @@ -430,7 +430,7 @@ test.serial("Installer: _synchronize should still unlock when callback rejects w const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.context.lockStub.yieldsAsync(); @@ -454,7 +454,7 @@ test.serial("Installer: installPackage with new package", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.context.lockStub.yieldsAsync(); @@ -517,7 +517,7 @@ test.serial("Installer: installPackage with new package", async (t) => { t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); t.is(t.context.mkdirpStub.callCount, 2, "mkdirp should be called twice"); - t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Data", "framework", "locks"), "mkdirp should be called with the correct arguments on first call"); t.is(t.context.mkdirpStub.getCall(1).args[0], path.join("my", "package"), "mkdirp should be called with the correct arguments on second call"); @@ -534,7 +534,7 @@ test.serial("Installer: installPackage with already installed package", async (t const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.context.lockStub.yieldsAsync(); @@ -588,7 +588,7 @@ test.serial("Installer: installPackage with install already in progress", async const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.context.lockStub.yieldsAsync(); @@ -636,7 +636,7 @@ test.serial("Installer: installPackage with install already in progress", async t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); t.is(t.context.mkdirpStub.callCount, 1, "mkdirp should be called once"); - t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Data", "framework", "locks"), "mkdirp should be called with the correct arguments"); t.is(getStagingDirForPackageStub.callCount, 0, "_getStagingDirForPackage should never be called"); @@ -650,7 +650,7 @@ test.serial("Installer: installPackage with new package and existing target and const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); t.context.lockStub.yieldsAsync(); @@ -718,7 +718,7 @@ test.serial("Installer: installPackage with new package and existing target and t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); t.is(t.context.mkdirpStub.callCount, 2, "mkdirp should be called twice"); - t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Home", "framework", "locks"), + t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Data", "framework", "locks"), "mkdirp should be called with the correct arguments on first call"); t.is(t.context.mkdirpStub.getCall(1).args[0], path.join("my", "package"), "mkdirp should be called with the correct arguments on second call"); @@ -735,7 +735,7 @@ test.serial("Installer: _pathExists - exists", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); const res = await installer._pathExists(__dirname); @@ -750,7 +750,7 @@ test.serial("Installer: _pathExists - does not exist", async (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); const notFoundError = new Error("Not found"); @@ -769,7 +769,7 @@ test.serial("Installer: _pathExists - re-throws unexpected errors", async (t) => const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); const notFoundError = new Error("Pony Error"); @@ -789,7 +789,7 @@ test.serial("Installer: Registry throws", (t) => { const installer = new Installer({ cwd: "/cwd/", - ui5HomeDir: "/ui5Home/" + ui5DataDir: "/ui5Data/" }); installer._cwd = null; From e0719b5b6a19284479c3007c6358edcf377a7f6f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 3 Mar 2024 03:20:38 +0000 Subject: [PATCH 1082/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 192 ++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 99 insertions(+), 99 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 554c9c39a69..dd114824f0a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "4.0.0-alpha", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.1.0", + "@npmcli/config": "^8.2.0", "@ui5/builder": "^3.3.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -35,7 +35,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^6.1.1", + "ava": "^6.1.2", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", @@ -44,7 +44,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^48.2.0", - "esmock": "^2.6.3", + "esmock": "^2.6.4", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", "istanbul-lib-report": "^3.0.1", @@ -76,13 +76,13 @@ "integrity": "sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==" }, "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" @@ -161,9 +161,9 @@ } }, "node_modules/@babel/core": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.9.tgz", - "integrity": "sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.0.tgz", + "integrity": "sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -171,11 +171,11 @@ "@babel/generator": "^7.23.6", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.9", - "@babel/parser": "^7.23.9", - "@babel/template": "^7.23.9", - "@babel/traverse": "^7.23.9", - "@babel/types": "^7.23.9", + "@babel/helpers": "^7.24.0", + "@babel/parser": "^7.24.0", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.0", + "@babel/types": "^7.24.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -305,9 +305,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", "dev": true, "engines": { "node": ">=6.9.0" @@ -364,14 +364,14 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.9.tgz", - "integrity": "sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.0.tgz", + "integrity": "sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==", "dev": true, "dependencies": { - "@babel/template": "^7.23.9", - "@babel/traverse": "^7.23.9", - "@babel/types": "^7.23.9" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -442,9 +442,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.9.tgz", - "integrity": "sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz", + "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -453,23 +453,23 @@ } }, "node_modules/@babel/template": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", - "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9" + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.9.tgz", - "integrity": "sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.0.tgz", + "integrity": "sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", @@ -478,8 +478,8 @@ "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -488,9 +488,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.9.tgz", - "integrity": "sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.23.4", @@ -782,13 +782,13 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.4.tgz", - "integrity": "sha512-Oud2QPM5dHviZNn4y/WhhYKSXksv+1xLEIsNrAbGcFzUN3ubqWRFT5gwPchNc5NuzILOU4tPBDTZ4VwhL8Y7cw==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" @@ -803,9 +803,9 @@ } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "engines": { "node": ">=6.0.0" } @@ -825,9 +825,9 @@ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.23", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.23.tgz", - "integrity": "sha512-9/4foRoUKp8s96tSkh8DlAAc5A0Ty8vLXld+l9gjKKY6ckwI8G15f0hskGmuLZu78ZlGa1vtsfOa+lnB4vG6Jg==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -1021,9 +1021,9 @@ } }, "node_modules/@npmcli/config": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.1.0.tgz", - "integrity": "sha512-61LNEybTFaa9Z/f8y6X9s2Blc75aijZK67LxqC5xicBcfkw8M/88nYrRXGXxAUKm6GRlxTZ216dp1UK2+TbaYw==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.2.0.tgz", + "integrity": "sha512-YoEYZFg0hRSRP/Chmq+J4FvULFvji6SORUYWQc10FiJ+ReAnViXcDCENg6kM6dID04bAoKNUygrby798+gYBbQ==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^4.0.0", @@ -1617,59 +1617,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.19.tgz", - "integrity": "sha512-gj81785z0JNzRcU0Mq98E56e4ltO1yf8k5PQ+tV/7YHnbZkrM0fyFyuttnN8ngJZjbpofWE/m4qjKBiLl8Ju4w==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.21.tgz", + "integrity": "sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==", "dev": true, "dependencies": { "@babel/parser": "^7.23.9", - "@vue/shared": "3.4.19", + "@vue/shared": "3.4.21", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.19.tgz", - "integrity": "sha512-vm6+cogWrshjqEHTzIDCp72DKtea8Ry/QVpQRYoyTIg9k7QZDX6D8+HGURjtmatfgM8xgCFtJJaOlCaRYRK3QA==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.21.tgz", + "integrity": "sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.19", - "@vue/shared": "3.4.19" + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.19.tgz", - "integrity": "sha512-LQ3U4SN0DlvV0xhr1lUsgLCYlwQfUfetyPxkKYu7dkfvx7g3ojrGAkw0AERLOKYXuAGnqFsEuytkdcComei3Yg==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.21.tgz", + "integrity": "sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==", "dev": true, "dependencies": { "@babel/parser": "^7.23.9", - "@vue/compiler-core": "3.4.19", - "@vue/compiler-dom": "3.4.19", - "@vue/compiler-ssr": "3.4.19", - "@vue/shared": "3.4.19", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21", "estree-walker": "^2.0.2", - "magic-string": "^0.30.6", - "postcss": "^8.4.33", + "magic-string": "^0.30.7", + "postcss": "^8.4.35", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.19.tgz", - "integrity": "sha512-P0PLKC4+u4OMJ8sinba/5Z/iDT84uMRRlrWzadgLA69opCpI1gG4N55qDSC+dedwq2fJtzmGald05LWR5TFfLw==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.21.tgz", + "integrity": "sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.19", - "@vue/shared": "3.4.19" + "@vue/compiler-dom": "3.4.21", + "@vue/shared": "3.4.21" } }, "node_modules/@vue/shared": { - "version": "3.4.19", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.19.tgz", - "integrity": "sha512-/KliRRHMF6LoiThEy+4c1Z4KB/gbPrGjWwJR+crg2otgrf/egKzRaCPvJ51S5oetgsgXLfc4Rm5ZgrKHZrtMSw==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.21.tgz", + "integrity": "sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==", "dev": true }, "node_modules/abbrev": { @@ -1925,9 +1925,9 @@ "dev": true }, "node_modules/ava": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/ava/-/ava-6.1.1.tgz", - "integrity": "sha512-A+DG0Ag0e5zvt262Ze0pG5QH7EBmhn+DB9uK7WkUtJVAtGjZFeKTpUOKx339DMGn53+FB24pCJC5klX2WU4VOw==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/ava/-/ava-6.1.2.tgz", + "integrity": "sha512-WcpxJ8yZ7mk9ABTinD0IAjcemovSeVGjuuwZx0JS9johREWFeLTl8UP6wd7l6nmnrWqkKZdwaD71a/ocH4qPKw==", "dev": true, "dependencies": { "@vercel/nft": "^0.26.2", @@ -2292,9 +2292,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001589", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001589.tgz", - "integrity": "sha512-vNQWS6kI+q6sBlHbh71IIeC+sRwK2N3EDySc/updIGhIee2x5z00J4c1242/5/d6EpEMdOnk/m+6tuk4/tcsqg==", + "version": "1.0.30001591", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001591.tgz", + "integrity": "sha512-PCzRMei/vXjJyL5mJtzNiUCKP59dm8Apqc3PH8gJkMnMXZGox93RbE76jHsmLwmIo6/3nsYIpJtx0O7u5PqFuQ==", "dev": true, "funding": [ { @@ -3490,9 +3490,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.681", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.681.tgz", - "integrity": "sha512-1PpuqJUFWoXZ1E54m8bsLPVYwIVCRzvaL+n5cjigGga4z854abDnFRc+cTa2th4S79kyGqya/1xoR7h+Y5G5lg==", + "version": "1.4.690", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.690.tgz", + "integrity": "sha512-+2OAGjUx68xElQhydpcbqH50hE8Vs2K6TkAeLhICYfndb67CVH0UsZaijmRUE3rHlIxU1u0jxwhgVe6fK3YANA==", "dev": true }, "node_modules/emittery": { @@ -4004,9 +4004,9 @@ } }, "node_modules/esmock": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.3.tgz", - "integrity": "sha512-1gtVLLHyB742JNWkIFfiKwB8rXgJZO/X717ua4yzT0hIqsDFjtnrpAKHO+HlIMSIhMExCWJzpk9lDsh2XuKAKw==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.4.tgz", + "integrity": "sha512-w/MIHWZeFzlyW6tTUW/sj1aSAScU8IQapjz8oCxjx3J90fhhmO0QdPGBjPD3oQSLLtVCFcgkTvdh7dNigp9K5A==", "dev": true, "engines": { "node": ">=14.16.0" @@ -6799,9 +6799,9 @@ } }, "node_modules/open": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/open/-/open-10.0.3.tgz", - "integrity": "sha512-dtbI5oW7987hwC9qjJTyABldTaa19SuyJse1QboWv3b0qCcrrLNVDqBx1XgELAjh9QTVQaP/C5b1nhQebd1H2A==", + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/open/-/open-10.0.4.tgz", + "integrity": "sha512-oujJ/FFr7ra6/7gJuQ4ZJJ8Gf2VHM0J3J/W7IvH++zaqEzacWVxzK++NiVY5NLHTTj7u/jNH5H3Ei9biL31Lng==", "dev": true, "dependencies": { "default-browser": "^5.2.1", diff --git a/packages/project/package.json b/packages/project/package.json index c0952ca0a19..089a9a3d85f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.1.0", + "@npmcli/config": "^8.2.0", "@ui5/builder": "^3.3.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -146,7 +146,7 @@ }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^6.1.1", + "ava": "^6.1.2", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", @@ -155,7 +155,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^48.2.0", - "esmock": "^2.6.3", + "esmock": "^2.6.4", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", "istanbul-lib-report": "^3.0.1", From 0382130e1bf5c3ae8ba11ea54253a9c4568a6407 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 4 Mar 2024 05:22:07 +0000 Subject: [PATCH 1083/1272] [ui5-project]Bump fsfe/reuse-action from 2 to 3 Bumps [fsfe/reuse-action](https://github.com/fsfe/reuse-action) from 2 to 3. - [Release notes](https://github.com/fsfe/reuse-action/releases) - [Commits](https://github.com/fsfe/reuse-action/compare/v2...v3) --- updated-dependencies: - dependency-name: fsfe/reuse-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/reuse-compliance.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index 2656d795c1b..0ea5d100a7a 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -15,4 +15,4 @@ jobs: steps: - uses: actions/checkout@v4 - name: Execute REUSE Compliance Check - uses: fsfe/reuse-action@v2 + uses: fsfe/reuse-action@v3 From 83c7ceaa46a40c3d9e85b646b300a924c0c1fa73 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Tue, 5 Mar 2024 14:49:33 +0200 Subject: [PATCH 1084/1272] [ui5-project][INTERNAL] Move TODOs for 5.0 (#709) JIRA: CPOUI5FOUNDATION-802 We have decided to postpone this removal for v5.0 --- .../project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js index 3e9ef7ae7f0..7b694cc7a6f 100644 --- a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -52,7 +52,7 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { }); this._loadDistMetadata = null; - // TODO 4.0: Remove support for legacy snapshot versions + // TODO 5.0: Remove support for legacy snapshot versions this._isLegacySnapshotVersion = semver.lt(this._version, "1.116.0-SNAPSHOT", { includePrerelease: true }); From 568e212bb5647ca9668b739ca39fa5b214718de3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 10 Mar 2024 03:20:33 +0000 Subject: [PATCH 1085/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 62 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index dd114824f0a..b2bd51da89a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.0", + "eslint-plugin-jsdoc": "^48.2.1", "esmock": "^2.6.4", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -1987,9 +1987,9 @@ } }, "node_modules/ava/node_modules/figures": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/figures/-/figures-6.0.1.tgz", - "integrity": "sha512-0oY/olScYD4IhQ8u//gCPA4F3mlTn2dacYmiDm/mbDQvpmLjV4uH+zhsQ5IyXRyvqkvtUkXkNdGvg5OFJTCsuQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz", + "integrity": "sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==", "dev": true, "dependencies": { "is-unicode-supported": "^2.0.0" @@ -2292,9 +2292,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001591", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001591.tgz", - "integrity": "sha512-PCzRMei/vXjJyL5mJtzNiUCKP59dm8Apqc3PH8gJkMnMXZGox93RbE76jHsmLwmIo6/3nsYIpJtx0O7u5PqFuQ==", + "version": "1.0.30001596", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001596.tgz", + "integrity": "sha512-zpkZ+kEr6We7w63ORkoJ2pOfBwBkY/bJrG/UZ90qNb45Isblu8wzDgevEOrRL1r9dWayHjYiiyCMEXPn4DweGQ==", "dev": true, "funding": [ { @@ -3490,9 +3490,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.690", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.690.tgz", - "integrity": "sha512-+2OAGjUx68xElQhydpcbqH50hE8Vs2K6TkAeLhICYfndb67CVH0UsZaijmRUE3rHlIxU1u0jxwhgVe6fK3YANA==", + "version": "1.4.699", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.699.tgz", + "integrity": "sha512-I7q3BbQi6e4tJJN5CRcyvxhK0iJb34TV8eJQcgh+fR2fQ8miMgZcEInckCo1U9exDHbfz7DLDnFn8oqH/VcRKw==", "dev": true }, "node_modules/emittery": { @@ -3702,9 +3702,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.0.tgz", - "integrity": "sha512-O2B1XLBJnUCRkggFzUQ+PBYJDit8iAgXdlu8ucolqGrbmOWPvttZQZX8d1sC0MbqDMSLs8SHSQxaNPRY1RQREg==", + "version": "48.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.1.tgz", + "integrity": "sha512-iUvbcyDZSO/9xSuRv2HQBw++8VkV/pt3UWtX9cpPH0l7GKPq78QC/6+PmyQHHvNZaTjAce6QVciEbnc6J/zH5g==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.42.0", @@ -4969,9 +4969,9 @@ "dev": true }, "node_modules/ini": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", - "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -5718,9 +5718,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.7", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.7.tgz", - "integrity": "sha512-8vBuFF/I/+OSLRmdf2wwFCJCz+nSn0m6DPvGH1fS/KiQoSaR+sETbov0eIk9KhEKy8CYqIkIAnbohxT/4H0kuA==", + "version": "0.30.8", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.8.tgz", + "integrity": "sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -6799,9 +6799,9 @@ } }, "node_modules/open": { - "version": "10.0.4", - "resolved": "https://registry.npmjs.org/open/-/open-10.0.4.tgz", - "integrity": "sha512-oujJ/FFr7ra6/7gJuQ4ZJJ8Gf2VHM0J3J/W7IvH++zaqEzacWVxzK++NiVY5NLHTTj7u/jNH5H3Ei9biL31Lng==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/open/-/open-10.1.0.tgz", + "integrity": "sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==", "dev": true, "dependencies": { "default-browser": "^5.2.1", @@ -7448,9 +7448,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.10.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.3.tgz", - "integrity": "sha512-JLXyjizi072smKGGcZiAJDCNweT8J+AuRxmPZ1aG7TERg4ijx9REl8CNhbr36RV4qXqL1gO1FF9HL8OkVmmrsA==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.12.0.tgz", + "integrity": "sha512-5Y2/pp2wtJk8o08G0CMkuFPCO354FGwk/vbidxrdhRGZfd0tFnb4Qb8anp9XxXriwBgVPjdWbKpGl4J9lJY2jQ==", "engines": { "node": ">=16" }, @@ -7493,9 +7493,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.10.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.3.tgz", - "integrity": "sha512-JLXyjizi072smKGGcZiAJDCNweT8J+AuRxmPZ1aG7TERg4ijx9REl8CNhbr36RV4qXqL1gO1FF9HL8OkVmmrsA==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.12.0.tgz", + "integrity": "sha512-5Y2/pp2wtJk8o08G0CMkuFPCO354FGwk/vbidxrdhRGZfd0tFnb4Qb8anp9XxXriwBgVPjdWbKpGl4J9lJY2jQ==", "engines": { "node": ">=16" }, @@ -8573,9 +8573,9 @@ } }, "node_modules/terser": { - "version": "5.28.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.28.1.tgz", - "integrity": "sha512-wM+bZp54v/E9eRRGXb5ZFDvinrJIOaTapx3WUokyVGZu5ucVCK55zEgGd5Dl2fSr3jUo5sDiERErUWLY6QPFyA==", + "version": "5.29.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.29.1.tgz", + "integrity": "sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index 089a9a3d85f..576596d1cae 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -154,7 +154,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.0", + "eslint-plugin-jsdoc": "^48.2.1", "esmock": "^2.6.4", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", From cad3e3ce19a3cb96ca5a080bf5d70eddb7eeab5d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 17 Mar 2024 03:20:13 +0000 Subject: [PATCH 1086/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 49 ++++++++++++++++-------------- 1 file changed, 26 insertions(+), 23 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b2bd51da89a..09e08ea2a93 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -811,12 +811,12 @@ } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", - "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" } }, "node_modules/@jridgewell/sourcemap-codec": { @@ -2060,12 +2060,15 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/bindings": { @@ -2292,9 +2295,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001596", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001596.tgz", - "integrity": "sha512-zpkZ+kEr6We7w63ORkoJ2pOfBwBkY/bJrG/UZ90qNb45Isblu8wzDgevEOrRL1r9dWayHjYiiyCMEXPn4DweGQ==", + "version": "1.0.30001598", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001598.tgz", + "integrity": "sha512-j8mQRDziG94uoBfeFuqsJUNECW37DXpnvhcMJMdlH2u3MRkq1sAI0LJcXP1i/Py0KbSIC4UDj8YHPrTn5YsL+Q==", "dev": true, "funding": [ { @@ -3490,9 +3493,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.699", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.699.tgz", - "integrity": "sha512-I7q3BbQi6e4tJJN5CRcyvxhK0iJb34TV8eJQcgh+fR2fQ8miMgZcEInckCo1U9exDHbfz7DLDnFn8oqH/VcRKw==", + "version": "1.4.708", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.708.tgz", + "integrity": "sha512-iWgEEvREL4GTXXHKohhh33+6Y8XkPI5eHihDmm8zUk5Zo7HICEW+wI/j5kJ2tbuNUCXJ/sNXa03ajW635DiJXA==", "dev": true }, "node_modules/emittery": { @@ -4718,9 +4721,9 @@ } }, "node_modules/hasown": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz", - "integrity": "sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dependencies": { "function-bind": "^1.1.2" }, @@ -5925,9 +5928,9 @@ } }, "node_modules/mimic-function": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.0.tgz", - "integrity": "sha512-RBfQ+9X9DpXdEoK7Bu+KeEU6vFhumEIiXKWECPzRBmDserEq4uR2b/VCm0LwpMSosoq2k+Zuxj/GzOr0Fn6h/g==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", + "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==", "dev": true, "engines": { "node": ">=18" @@ -8573,9 +8576,9 @@ } }, "node_modules/terser": { - "version": "5.29.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.29.1.tgz", - "integrity": "sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ==", + "version": "5.29.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.29.2.tgz", + "integrity": "sha512-ZiGkhUBIM+7LwkNjXYJq8svgkd+QK3UUr0wJqY4MieaezBSAIPgbSPZyIx0idM6XWK5CMzSWa8MJIzmRcB8Caw==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", From 042c8c083c91f6e00ac191c40fe832ad1a339dbf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 18 Mar 2024 14:26:32 +0000 Subject: [PATCH 1087/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 09e08ea2a93..c0e3ecb2ee6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2295,9 +2295,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001598", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001598.tgz", - "integrity": "sha512-j8mQRDziG94uoBfeFuqsJUNECW37DXpnvhcMJMdlH2u3MRkq1sAI0LJcXP1i/Py0KbSIC4UDj8YHPrTn5YsL+Q==", + "version": "1.0.30001599", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001599.tgz", + "integrity": "sha512-LRAQHZ4yT1+f9LemSMeqdMpMxZcc4RMWdj4tiFe3G8tNkWK+E58g+/tzotb5cU6TbcVJLr4fySiAW7XmxQvZQA==", "dev": true, "funding": [ { @@ -7254,9 +7254,9 @@ } }, "node_modules/postcss": { - "version": "8.4.35", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.35.tgz", - "integrity": "sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==", + "version": "8.4.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.36.tgz", + "integrity": "sha512-/n7eumA6ZjFHAsbX30yhHup/IMkOmlmvtEi7P+6RMYf+bGJSUHc3geH4a0NSZxAz/RJfiS9tooCTs9LAVYUZKw==", "dev": true, "funding": [ { @@ -7275,7 +7275,7 @@ "dependencies": { "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "source-map-js": "^1.1.0" }, "engines": { "node": "^10 || ^12 || >=14" @@ -7965,9 +7965,9 @@ } }, "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.1.0.tgz", + "integrity": "sha512-9vC2SfsJzlej6MAaMPLu8HiBSHGdRAJ9hVFYN1ibZoNkeanmDmLUcIrj6G9DGL7XMJ54AKg/G75akXl1/izTOw==", "dev": true, "engines": { "node": ">=0.10.0" From 977af8bdc4254e0d1c6bf095571f4dfe275fa3e2 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 19 Mar 2024 09:13:21 +0100 Subject: [PATCH 1088/1272] [ui5-project][INTERNAL] Azure Pipeline: Use macos13 --- packages/project/azure-pipelines.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 2c2609c18bd..bb1a437cfbc 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -21,7 +21,7 @@ strategy: imageName: 'ubuntu-22.04' node_version: 20.x mac_node_lts_20: - imageName: 'macos-12' + imageName: 'macos-13' node_version: 20.x windows_node_lts_20: imageName: 'windows-2022' @@ -30,7 +30,7 @@ strategy: imageName: 'ubuntu-22.04' node_version: 21.x mac_node_current: - imageName: 'macos-12' + imageName: 'macos-13' node_version: 21.x windows_node_current: imageName: 'windows-2022' From 5bf1d206679197ff29cc631c1e3a8f009bbf9afc Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 24 Mar 2024 03:20:22 +0000 Subject: [PATCH 1089/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 197 +++++++++++------------------ 1 file changed, 73 insertions(+), 124 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c0e3ecb2ee6..b7b20eb0df8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -89,92 +89,41 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dependencies": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/code-frame/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/code-frame/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@babel/compat-data": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", - "integrity": "sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.1.tgz", + "integrity": "sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.0.tgz", - "integrity": "sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.3.tgz", + "integrity": "sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.1", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.0", - "@babel/parser": "^7.24.0", + "@babel/helpers": "^7.24.1", + "@babel/parser": "^7.24.1", "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.0", + "@babel/traverse": "^7.24.1", "@babel/types": "^7.24.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", @@ -200,14 +149,14 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", - "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.1.tgz", + "integrity": "sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==", "dev": true, "dependencies": { - "@babel/types": "^7.23.6", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" }, "engines": { @@ -274,12 +223,12 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", "dev": true, "dependencies": { - "@babel/types": "^7.22.15" + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -338,9 +287,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -364,13 +313,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.0.tgz", - "integrity": "sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.1.tgz", + "integrity": "sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg==", "dev": true, "dependencies": { "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.0", + "@babel/traverse": "^7.24.1", "@babel/types": "^7.24.0" }, "engines": { @@ -378,13 +327,14 @@ } }, "node_modules/@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", "dependencies": { "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -442,9 +392,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz", - "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.1.tgz", + "integrity": "sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -467,18 +417,18 @@ } }, "node_modules/@babel/traverse": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.0.tgz", - "integrity": "sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.24.0", + "@babel/parser": "^7.24.1", "@babel/types": "^7.24.0", "debug": "^4.3.1", "globals": "^11.1.0" @@ -2295,9 +2245,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001599", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001599.tgz", - "integrity": "sha512-LRAQHZ4yT1+f9LemSMeqdMpMxZcc4RMWdj4tiFe3G8tNkWK+E58g+/tzotb5cU6TbcVJLr4fySiAW7XmxQvZQA==", + "version": "1.0.30001600", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001600.tgz", + "integrity": "sha512-+2S9/2JFhYmYaDpZvo0lKkfvuKIglrx68MwOBqMGHhQsNkLjB5xtc/TGoEPs+MxjSyN/72qer2g97nzR641mOQ==", "dev": true, "funding": [ { @@ -3348,9 +3298,9 @@ } }, "node_modules/detect-libc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", - "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", "dev": true, "engines": { "node": ">=8" @@ -3493,9 +3443,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.708", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.708.tgz", - "integrity": "sha512-iWgEEvREL4GTXXHKohhh33+6Y8XkPI5eHihDmm8zUk5Zo7HICEW+wI/j5kJ2tbuNUCXJ/sNXa03ajW635DiJXA==", + "version": "1.4.715", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.715.tgz", + "integrity": "sha512-XzWNH4ZSa9BwVUQSDorPWAUQ5WGuYz7zJUNpNif40zFCiCl20t8zgylmreNmn26h5kiyw2lg7RfTmeMBsDklqg==", "dev": true }, "node_modules/emittery": { @@ -7141,8 +7091,7 @@ "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" }, "node_modules/picomatch": { "version": "3.0.1", @@ -7254,9 +7203,9 @@ } }, "node_modules/postcss": { - "version": "8.4.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.36.tgz", - "integrity": "sha512-/n7eumA6ZjFHAsbX30yhHup/IMkOmlmvtEi7P+6RMYf+bGJSUHc3geH4a0NSZxAz/RJfiS9tooCTs9LAVYUZKw==", + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", "dev": true, "funding": [ { @@ -7275,7 +7224,7 @@ "dependencies": { "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "source-map-js": "^1.1.0" + "source-map-js": "^1.2.0" }, "engines": { "node": "^10 || ^12 || >=14" @@ -7451,9 +7400,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.12.0.tgz", - "integrity": "sha512-5Y2/pp2wtJk8o08G0CMkuFPCO354FGwk/vbidxrdhRGZfd0tFnb4Qb8anp9XxXriwBgVPjdWbKpGl4J9lJY2jQ==", + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.13.1.tgz", + "integrity": "sha512-ASMgM+Vf2cLwDMt1KXSkMUDSYCxtckDJs8zsaVF/mYteIsiARKCVtyXtcK38mIKbLTctZP8v6GMqdNaeI3fo7g==", "engines": { "node": ">=16" }, @@ -7496,9 +7445,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.12.0.tgz", - "integrity": "sha512-5Y2/pp2wtJk8o08G0CMkuFPCO354FGwk/vbidxrdhRGZfd0tFnb4Qb8anp9XxXriwBgVPjdWbKpGl4J9lJY2jQ==", + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.13.1.tgz", + "integrity": "sha512-ASMgM+Vf2cLwDMt1KXSkMUDSYCxtckDJs8zsaVF/mYteIsiARKCVtyXtcK38mIKbLTctZP8v6GMqdNaeI3fo7g==", "engines": { "node": ">=16" }, @@ -7965,9 +7914,9 @@ } }, "node_modules/source-map-js": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.1.0.tgz", - "integrity": "sha512-9vC2SfsJzlej6MAaMPLu8HiBSHGdRAJ9hVFYN1ibZoNkeanmDmLUcIrj6G9DGL7XMJ54AKg/G75akXl1/izTOw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8474,9 +8423,9 @@ } }, "node_modules/tar": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", - "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", From e23f3305235eb14e035aaca763705eccae634ec8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Mar 2024 05:29:13 +0000 Subject: [PATCH 1090/1272] [ui5-project]Bump dependabot/fetch-metadata from 1 to 2 Bumps [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata) from 1 to 2. - [Release notes](https://github.com/dependabot/fetch-metadata/releases) - [Commits](https://github.com/dependabot/fetch-metadata/compare/v1...v2) --- updated-dependencies: - dependency-name: dependabot/fetch-metadata dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/dependabot-auto-merge.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/dependabot-auto-merge.yml b/packages/project/.github/workflows/dependabot-auto-merge.yml index 31ea5d6b743..700e76edc2d 100644 --- a/packages/project/.github/workflows/dependabot-auto-merge.yml +++ b/packages/project/.github/workflows/dependabot-auto-merge.yml @@ -15,7 +15,7 @@ jobs: steps: - name: Dependabot metadata id: metadata - uses: dependabot/fetch-metadata@v1 + uses: dependabot/fetch-metadata@v2 with: github-token: "${{ secrets.GITHUB_TOKEN }}" - name: Approve and auto-merge PRs for minor/patch updates of github-actions From df69e27a537e7dae1e57a336058478799111c48d Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 28 Mar 2024 13:25:34 +0000 Subject: [PATCH 1091/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 84 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 44 insertions(+), 44 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b7b20eb0df8..4b936a308bc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.2.0", - "@ui5/builder": "^3.3.0", + "@ui5/builder": "^3.3.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -43,7 +43,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.1", + "eslint-plugin-jsdoc": "^48.2.2", "esmock": "^2.6.4", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -1231,9 +1231,9 @@ } }, "node_modules/@sigstore/core": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.0.0.tgz", - "integrity": "sha512-dW2qjbWLRKGu6MIDUTBuJwXCnR8zivcSpf5inUzk7y84zqy/dji0/uahppoIgMoKeR+6pUZucrwHfkQQtiG9Rw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz", + "integrity": "sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==", "engines": { "node": "^16.14.0 || >=18.0.0" } @@ -1261,9 +1261,9 @@ } }, "node_modules/@sigstore/tuf": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.1.tgz", - "integrity": "sha512-9Iv40z652td/QbV0o5n/x25H9w6IYRt2pIGbTX55yFDYlApDQn/6YZomjz6+KBx69rXHLzHcbtTS586mDdFD+Q==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.2.tgz", + "integrity": "sha512-mwbY1VrEGU4CO55t+Kl6I7WZzIl+ysSzEYdA1Nv/FTrl2bkeaPXo5PnWZAVfcY2zSdhOpsUTJW67/M2zHXGn5w==", "dependencies": { "@sigstore/protobuf-specs": "^0.3.0", "tuf-js": "^2.2.0" @@ -1273,12 +1273,12 @@ } }, "node_modules/@sigstore/verify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.1.0.tgz", - "integrity": "sha512-1fTqnqyTBWvV7cftUUFtDcHPdSox0N3Ub7C0lRyReYx4zZUlNTZjCV+HPy4Lre+r45dV7Qx5JLKvqqsgxuyYfg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.1.1.tgz", + "integrity": "sha512-BNANJms49rw9Q5J+fJjrDqOQSzjXDcOq/pgKDaVdDoIvQwqIfaoUriy+fQfh8sBX04hr4bkkrwu3EbhQqoQH7A==", "dependencies": { "@sigstore/bundle": "^2.2.0", - "@sigstore/core": "^1.0.0", + "@sigstore/core": "^1.1.0", "@sigstore/protobuf-specs": "^0.3.0" }, "engines": { @@ -1403,9 +1403,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.3.0.tgz", - "integrity": "sha512-gQ28Bj4WqF3b+8Mp4luxe2pGb+Adq2qpy1H9JZ8DTpIGcCEcJgJVCTRv6KdWZja6y5ZD89NWQAv0k0N50MV6Sw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.3.1.tgz", + "integrity": "sha512-YHhCN8pF7eRHKWq4l8j3MYSabpGPe4ByoPLhW8NCz37HjlKPKa50ySUpTSHN9CGopMRzWxVMw6Zjul4SAwULWg==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.5", @@ -1419,8 +1419,8 @@ "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", "rimraf": "^5.0.5", - "semver": "^7.5.4", - "terser": "^5.27.0", + "semver": "^7.6.0", + "terser": "^5.29.2", "workerpool": "^6.5.1", "xml2js": "^0.6.2" }, @@ -1642,9 +1642,9 @@ } }, "node_modules/acorn-import-attributes": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.2.tgz", - "integrity": "sha512-O+nfJwNolEA771IYJaiLWK1UAwjNsQmZbTRqqwBYxCgVQTmpFEMvBw6LOIQV0Me339L5UMVYFyRohGnGlQDdIQ==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.4.tgz", + "integrity": "sha512-dNIX/5UEnZvVL94dV2scl4VIooK36D8AteP4xiz7cPKhDbhLhSuWkzG580g+Q7TXJklp+Z21SiaK7/HpLO84Qg==", "dev": true, "peerDependencies": { "acorn": "^8" @@ -3443,9 +3443,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.715", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.715.tgz", - "integrity": "sha512-XzWNH4ZSa9BwVUQSDorPWAUQ5WGuYz7zJUNpNif40zFCiCl20t8zgylmreNmn26h5kiyw2lg7RfTmeMBsDklqg==", + "version": "1.4.719", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.719.tgz", + "integrity": "sha512-FbWy2Q2YgdFzkFUW/W5jBjE9dj+804+98E4Pup78JBPnbdb3pv6IneY2JCPKdeKLh3AOKHQeYf+KwLr7mxGh6Q==", "dev": true }, "node_modules/emittery": { @@ -3655,9 +3655,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.1.tgz", - "integrity": "sha512-iUvbcyDZSO/9xSuRv2HQBw++8VkV/pt3UWtX9cpPH0l7GKPq78QC/6+PmyQHHvNZaTjAce6QVciEbnc6J/zH5g==", + "version": "48.2.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.2.tgz", + "integrity": "sha512-S0Gk+rpT5w/ephKCncUY7kUsix9uE4B9XI8D/fS1/26d8okE+vZsuG1IvIt4B6sJUdQqsnzi+YXfmh+HJG11CA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.42.0", @@ -6214,9 +6214,9 @@ } }, "node_modules/node-gyp": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", - "integrity": "sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.1.0.tgz", + "integrity": "sha512-B4J5M1cABxPc5PwfjhbV5hoy2DP9p8lFXASnEN6hugXOa61416tnTZ29x9sSwAd0o99XNIcpvDDy1swAExsVKA==", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", @@ -7039,11 +7039,11 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", + "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { @@ -7400,9 +7400,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.13.1.tgz", - "integrity": "sha512-ASMgM+Vf2cLwDMt1KXSkMUDSYCxtckDJs8zsaVF/mYteIsiARKCVtyXtcK38mIKbLTctZP8v6GMqdNaeI3fo7g==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.14.0.tgz", + "integrity": "sha512-on5/Cw89wwqGZQu+yWO0gGMGu8VNxsaW9SB2HE8yJjllEk7IDTwnSN1dUVldYILhYPN5HzD7WAaw2cc/jBfn0Q==", "engines": { "node": ">=16" }, @@ -7445,9 +7445,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.13.1.tgz", - "integrity": "sha512-ASMgM+Vf2cLwDMt1KXSkMUDSYCxtckDJs8zsaVF/mYteIsiARKCVtyXtcK38mIKbLTctZP8v6GMqdNaeI3fo7g==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.14.0.tgz", + "integrity": "sha512-on5/Cw89wwqGZQu+yWO0gGMGu8VNxsaW9SB2HE8yJjllEk7IDTwnSN1dUVldYILhYPN5HzD7WAaw2cc/jBfn0Q==", "engines": { "node": ">=16" }, @@ -8525,9 +8525,9 @@ } }, "node_modules/terser": { - "version": "5.29.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.29.2.tgz", - "integrity": "sha512-ZiGkhUBIM+7LwkNjXYJq8svgkd+QK3UUr0wJqY4MieaezBSAIPgbSPZyIx0idM6XWK5CMzSWa8MJIzmRcB8Caw==", + "version": "5.30.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.0.tgz", + "integrity": "sha512-Y/SblUl5kEyEFzhMAQdsxVHh+utAxd4IuRNJzKywY/4uzSogh3G219jqbDDxYu4MXO9CzY3tSEqmZvW6AoEDJw==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index 576596d1cae..cea72c898be 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ }, "dependencies": { "@npmcli/config": "^8.2.0", - "@ui5/builder": "^3.3.0", + "@ui5/builder": "^3.3.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -154,7 +154,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.1", + "eslint-plugin-jsdoc": "^48.2.2", "esmock": "^2.6.4", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", From a318dcaddb332013a2ca300c8f44f04a2d99145c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 31 Mar 2024 02:20:24 +0000 Subject: [PATCH 1092/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 56 +++++++++++++++--------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4b936a308bc..34e3e1deb04 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -940,9 +940,9 @@ } }, "node_modules/@npmcli/agent/node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", "dependencies": { "debug": "^4.3.4" }, @@ -1642,9 +1642,9 @@ } }, "node_modules/acorn-import-attributes": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.4.tgz", - "integrity": "sha512-dNIX/5UEnZvVL94dV2scl4VIooK36D8AteP4xiz7cPKhDbhLhSuWkzG580g+Q7TXJklp+Z21SiaK7/HpLO84Qg==", + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", "dev": true, "peerDependencies": { "acorn": "^8" @@ -3443,9 +3443,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.719", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.719.tgz", - "integrity": "sha512-FbWy2Q2YgdFzkFUW/W5jBjE9dj+804+98E4Pup78JBPnbdb3pv6IneY2JCPKdeKLh3AOKHQeYf+KwLr7mxGh6Q==", + "version": "1.4.722", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.722.tgz", + "integrity": "sha512-5nLE0TWFFpZ80Crhtp4pIp8LXCztjYX41yUcV6b+bKR2PqzjskTMOOlBi1VjBHlvHwS+4gar7kNKOrsbsewEZQ==", "dev": true }, "node_modules/emittery": { @@ -4510,15 +4510,15 @@ } }, "node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", + "jackspeak": "^2.3.6", "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" }, "bin": { "glob": "dist/esm/bin.mjs" @@ -4754,9 +4754,9 @@ } }, "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", "dependencies": { "debug": "^4.3.4" }, @@ -5890,9 +5890,9 @@ } }, "node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -7882,11 +7882,11 @@ } }, "node_modules/socks-proxy-agent": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", - "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.3.tgz", + "integrity": "sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A==", "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "^7.1.1", "debug": "^4.3.4", "socks": "^2.7.1" }, @@ -7895,9 +7895,9 @@ } }, "node_modules/socks-proxy-agent/node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", "dependencies": { "debug": "^4.3.4" }, From 7ed5a008d97f51fe9136641bc0d0f152eb7611e7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 7 Apr 2024 02:20:27 +0000 Subject: [PATCH 1093/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 175 +++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 94 insertions(+), 85 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 34e3e1deb04..fb8e629f024 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "4.0.0-alpha", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.2.0", + "@npmcli/config": "^8.2.1", "@ui5/builder": "^3.3.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -43,7 +43,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.2", + "eslint-plugin-jsdoc": "^48.2.3", "esmock": "^2.6.4", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -101,27 +101,27 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.1.tgz", - "integrity": "sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.3.tgz", - "integrity": "sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", + "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.1", + "@babel/generator": "^7.24.4", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.1", - "@babel/parser": "^7.24.1", + "@babel/helpers": "^7.24.4", + "@babel/parser": "^7.24.4", "@babel/template": "^7.24.0", "@babel/traverse": "^7.24.1", "@babel/types": "^7.24.0", @@ -149,9 +149,9 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.1.tgz", - "integrity": "sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", "dev": true, "dependencies": { "@babel/types": "^7.24.0", @@ -313,9 +313,9 @@ } }, "node_modules/@babel/helpers": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.1.tgz", - "integrity": "sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", "dev": true, "dependencies": { "@babel/template": "^7.24.0", @@ -392,9 +392,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.1.tgz", - "integrity": "sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -620,9 +620,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", - "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", "dev": true }, "node_modules/@isaacs/cliui": { @@ -925,15 +925,15 @@ } }, "node_modules/@npmcli/agent": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.1.tgz", - "integrity": "sha512-H4FrOVtNyWC8MUwL3UfjOsAihHvT1Pe8POj3JvjXhSTJipsZMtgUALCT4mGyYZNxymkUfOw3PUj6dE4QPp6osQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", + "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", "dependencies": { "agent-base": "^7.1.0", "http-proxy-agent": "^7.0.0", "https-proxy-agent": "^7.0.1", "lru-cache": "^10.0.1", - "socks-proxy-agent": "^8.0.1" + "socks-proxy-agent": "^8.0.3" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -971,13 +971,13 @@ } }, "node_modules/@npmcli/config": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.2.0.tgz", - "integrity": "sha512-YoEYZFg0hRSRP/Chmq+J4FvULFvji6SORUYWQc10FiJ+ReAnViXcDCENg6kM6dID04bAoKNUygrby798+gYBbQ==", + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.2.1.tgz", + "integrity": "sha512-G4PknBr51bwCuY63wXSO8OakSoyHk11JYhxAZCayCAosJruX86lAstCfbr/2Fr+g6OqVz6PPfOVZ98bcoc+eQA==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^4.0.0", - "ini": "^4.1.0", + "ini": "^4.1.2", "nopt": "^7.0.0", "proc-log": "^3.0.0", "read-package-json-fast": "^3.0.2", @@ -1142,6 +1142,14 @@ "node": "^16.13.0 || >=18.0.0" } }, + "node_modules/@npmcli/redact": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-1.1.0.tgz", + "integrity": "sha512-PfnWuOkQgu7gCbnSsAisaX7hKOdZ4wSAhAzH3/ph5dSGau52kCRrMMGbiSQLwyTZpgldkZ49b0brkOr1AzGBHQ==", + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/@npmcli/run-script": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.4.tgz", @@ -1220,11 +1228,11 @@ } }, "node_modules/@sigstore/bundle": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.2.0.tgz", - "integrity": "sha512-5VI58qgNs76RDrwXNhpmyN/jKpq9evV/7f1XrcqcAfvxDl5SeVY/I5Rmfe96ULAV7/FK5dge9RBKGBJPhL1WsQ==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.1.tgz", + "integrity": "sha512-eqV17lO3EIFqCWK3969Rz+J8MYrRZKw9IBHpSo6DEcEX2c+uzDFOgHE9f2MnyDpfs48LFO4hXmk9KhQ74JzU1g==", "dependencies": { - "@sigstore/protobuf-specs": "^0.3.0" + "@sigstore/protobuf-specs": "^0.3.1" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -1239,21 +1247,21 @@ } }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.0.tgz", - "integrity": "sha512-zxiQ66JFOjVvP9hbhGj/F/qNdsZfkGb/dVXSanNRNuAzMlr4MC95voPUBX8//ZNnmv3uSYzdfR/JSkrgvZTGxA==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.1.tgz", + "integrity": "sha512-aIL8Z9NsMr3C64jyQzE0XlkEyBLpgEJJFDHLVVStkFV5Q3Il/r/YtY6NJWKQ4cy4AE7spP1IX5Jq7VCAxHHMfQ==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@sigstore/sign": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.3.tgz", - "integrity": "sha512-LqlA+ffyN02yC7RKszCdMTS6bldZnIodiox+IkT8B2f8oRYXCB3LQ9roXeiEL21m64CVH1wyveYAORfD65WoSw==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.0.tgz", + "integrity": "sha512-tsAyV6FC3R3pHmKS880IXcDJuiFJiKITO1jxR1qbplcsBkZLBmjrEw5GbC7ikD6f5RU1hr7WnmxB/2kKc1qUWQ==", "dependencies": { - "@sigstore/bundle": "^2.2.0", + "@sigstore/bundle": "^2.3.0", "@sigstore/core": "^1.0.0", - "@sigstore/protobuf-specs": "^0.3.0", + "@sigstore/protobuf-specs": "^0.3.1", "make-fetch-happen": "^13.0.0" }, "engines": { @@ -1273,13 +1281,13 @@ } }, "node_modules/@sigstore/verify": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.1.1.tgz", - "integrity": "sha512-BNANJms49rw9Q5J+fJjrDqOQSzjXDcOq/pgKDaVdDoIvQwqIfaoUriy+fQfh8sBX04hr4bkkrwu3EbhQqoQH7A==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.0.tgz", + "integrity": "sha512-hQF60nc9yab+Csi4AyoAmilGNfpXT+EXdBgFkP9OgPwIBPwyqVf7JAWPtmqrrrneTmAT6ojv7OlH1f6Ix5BG4Q==", "dependencies": { - "@sigstore/bundle": "^2.2.0", + "@sigstore/bundle": "^2.3.1", "@sigstore/core": "^1.1.0", - "@sigstore/protobuf-specs": "^0.3.0" + "@sigstore/protobuf-specs": "^0.3.1" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -2245,9 +2253,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001600", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001600.tgz", - "integrity": "sha512-+2S9/2JFhYmYaDpZvo0lKkfvuKIglrx68MwOBqMGHhQsNkLjB5xtc/TGoEPs+MxjSyN/72qer2g97nzR641mOQ==", + "version": "1.0.30001606", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001606.tgz", + "integrity": "sha512-LPbwnW4vfpJId225pwjZJOgX1m9sGfbw/RKJvw/t0QhYOOaTXHvkjVGFGPpvwEzufrjvTlsULnVTxdy4/6cqkg==", "dev": true, "funding": [ { @@ -3443,9 +3451,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.722", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.722.tgz", - "integrity": "sha512-5nLE0TWFFpZ80Crhtp4pIp8LXCztjYX41yUcV6b+bKR2PqzjskTMOOlBi1VjBHlvHwS+4gar7kNKOrsbsewEZQ==", + "version": "1.4.729", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.729.tgz", + "integrity": "sha512-bx7+5Saea/qu14kmPTDHQxkp2UnziG3iajUQu3BxFvCOnpAJdDbMV4rSl+EqFDkkpNNVUFlR1kDfpL59xfy1HA==", "dev": true }, "node_modules/emittery": { @@ -3655,9 +3663,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.2.tgz", - "integrity": "sha512-S0Gk+rpT5w/ephKCncUY7kUsix9uE4B9XI8D/fS1/26d8okE+vZsuG1IvIt4B6sJUdQqsnzi+YXfmh+HJG11CA==", + "version": "48.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.3.tgz", + "integrity": "sha512-r9DMAmFs66VNvNqRLLjHejdnJtILrt3xGi+Qx0op0oRfFGVpOR1Hb3BC++MacseHx93d8SKYPhyrC9BS7Os2QA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.42.0", @@ -5671,9 +5679,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.8", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.8.tgz", - "integrity": "sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==", + "version": "0.30.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.9.tgz", + "integrity": "sha512-S1+hd+dIrC8EZqKyT9DstTH/0Z+f76kmmvZnkfQVmOpDEF9iVgdYif3Q/pIWHmCoo59bQVGW0kVL3e2nl+9+Sw==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -6415,10 +6423,11 @@ } }, "node_modules/npm-registry-fetch": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.1.0.tgz", - "integrity": "sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.2.0.tgz", + "integrity": "sha512-zVH+G0q1O2hqgQBUvQ2LWp6ujr6VJAeDnmWxqiMlCguvLexEzBnuQIwC70r04vcvCMAcYEIpA/rO9YyVi+fmJQ==", "dependencies": { + "@npmcli/redact": "^1.1.0", "make-fetch-happen": "^13.0.0", "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", @@ -6836,9 +6845,9 @@ } }, "node_modules/p-map": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.1.tgz", - "integrity": "sha512-2wnaR0XL/FDOj+TgpDuRb2KTjLnu3Fma6b1ZUwGY7LcqenMcvP/YFpjpbPKY6WVGsbuJZRuoUz8iPrt8ORnAFw==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.2.tgz", + "integrity": "sha512-z4cYYMMdKHzw4O5UkWJImbZynVIo0lSGTXc7bzB1e/rrDqkgGUNysK/o4bTr+0+xKvvLoTyGqYC4Fgljy9qe1Q==", "dev": true, "engines": { "node": ">=18" @@ -7400,9 +7409,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.14.0.tgz", - "integrity": "sha512-on5/Cw89wwqGZQu+yWO0gGMGu8VNxsaW9SB2HE8yJjllEk7IDTwnSN1dUVldYILhYPN5HzD7WAaw2cc/jBfn0Q==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.15.0.tgz", + "integrity": "sha512-tB9lu0pQpX5KJq54g+oHOLumOx+pMep4RaM6liXh2PKmVRFF+/vAtUP0ZaJ0kOySfVNjF6doBWPHhBhISKdlIA==", "engines": { "node": ">=16" }, @@ -7445,9 +7454,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.14.0.tgz", - "integrity": "sha512-on5/Cw89wwqGZQu+yWO0gGMGu8VNxsaW9SB2HE8yJjllEk7IDTwnSN1dUVldYILhYPN5HzD7WAaw2cc/jBfn0Q==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.15.0.tgz", + "integrity": "sha512-tB9lu0pQpX5KJq54g+oHOLumOx+pMep4RaM6liXh2PKmVRFF+/vAtUP0ZaJ0kOySfVNjF6doBWPHhBhISKdlIA==", "engines": { "node": ">=16" }, @@ -7799,16 +7808,16 @@ } }, "node_modules/sigstore": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.2.2.tgz", - "integrity": "sha512-2A3WvXkQurhuMgORgT60r6pOWiCOO5LlEqY2ADxGBDGVYLSo5HN0uLtb68YpVpuL/Vi8mLTe7+0Dx2Fq8lLqEg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.0.tgz", + "integrity": "sha512-q+o8L2ebiWD1AxD17eglf1pFrl9jtW7FHa0ygqY6EKvibK8JHyq9Z26v9MZXeDiw+RbfOJ9j2v70M10Hd6E06A==", "dependencies": { - "@sigstore/bundle": "^2.2.0", + "@sigstore/bundle": "^2.3.1", "@sigstore/core": "^1.0.0", - "@sigstore/protobuf-specs": "^0.3.0", - "@sigstore/sign": "^2.2.3", + "@sigstore/protobuf-specs": "^0.3.1", + "@sigstore/sign": "^2.3.0", "@sigstore/tuf": "^2.3.1", - "@sigstore/verify": "^1.1.0" + "@sigstore/verify": "^1.2.0" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -8525,9 +8534,9 @@ } }, "node_modules/terser": { - "version": "5.30.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.0.tgz", - "integrity": "sha512-Y/SblUl5kEyEFzhMAQdsxVHh+utAxd4IuRNJzKywY/4uzSogh3G219jqbDDxYu4MXO9CzY3tSEqmZvW6AoEDJw==", + "version": "5.30.3", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.3.tgz", + "integrity": "sha512-STdUgOUx8rLbMGO9IOwHLpCqolkDITFFQSMYYwKE1N2lY6MVSaeoi10z/EhWxRc6ybqoVmKSkhKYH/XUpl7vSA==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", diff --git a/packages/project/package.json b/packages/project/package.json index cea72c898be..a92e6a288ed 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.2.0", + "@npmcli/config": "^8.2.1", "@ui5/builder": "^3.3.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -154,7 +154,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.2", + "eslint-plugin-jsdoc": "^48.2.3", "esmock": "^2.6.4", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", From 8c36cc126ba059a52f2a50184cf1bfad8bf6a9b2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 14 Apr 2024 02:20:21 +0000 Subject: [PATCH 1094/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 126 +++++++++++++++++++---------- packages/project/package.json | 4 +- 2 files changed, 85 insertions(+), 45 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index fb8e629f024..2d83f852443 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "4.0.0-alpha", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.2.1", + "@npmcli/config": "^8.2.2", "@ui5/builder": "^3.3.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -23,7 +23,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^13.0.0", "node-stream-zip": "^1.15.0", - "pacote": "^17.0.6", + "pacote": "^17.0.7", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", @@ -971,9 +971,9 @@ } }, "node_modules/@npmcli/config": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.2.1.tgz", - "integrity": "sha512-G4PknBr51bwCuY63wXSO8OakSoyHk11JYhxAZCayCAosJruX86lAstCfbr/2Fr+g6OqVz6PPfOVZ98bcoc+eQA==", + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.2.2.tgz", + "integrity": "sha512-VvMHPIzcsKHCaNh9h4kCbn7NyDtcNJFMOUZ8Wu9SWhds5Egr1gMGU2fv+M50P1V5iAUZWZcv2Iguo5HTckpzww==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^4.0.0", @@ -1000,14 +1000,14 @@ } }, "node_modules/@npmcli/git": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.4.tgz", - "integrity": "sha512-nr6/WezNzuYUppzXRaYu/W4aT5rLxdXqEFupbh6e/ovlYFQ8hpu1UUPV3Ir/YTl+74iXl2ZOMlGzudh9ZPUchQ==", + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.6.tgz", + "integrity": "sha512-4x/182sKXmQkf0EtXxT26GEsaOATpD7WVtza5hrYivWZeo6QefC6xq9KAXrnjtFKBZ4rZwR7aX/zClYYXgtwLw==", "dependencies": { "@npmcli/promise-spawn": "^7.0.0", "lru-cache": "^10.0.1", "npm-pick-manifest": "^9.0.0", - "proc-log": "^3.0.0", + "proc-log": "^4.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", @@ -1033,6 +1033,14 @@ "node": "14 || >=16.14" } }, + "node_modules/@npmcli/git/node_modules/proc-log": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.0.0.tgz", + "integrity": "sha512-v1lzmYxGDs2+OZnmYtYZK3DG8zogt+CbQ+o/iqqtTfpyCmGWulCTEQu5GIbivf7OjgIkH2Nr8SH8UxAGugZNbg==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@npmcli/git/node_modules/which": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", @@ -1063,9 +1071,9 @@ } }, "node_modules/@npmcli/map-workspaces": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.4.tgz", - "integrity": "sha512-Z0TbvXkRbacjFFLpVpV0e2mheCh+WzQpcqL+4xp49uNJOxOnIAPZyXtUxZ5Qn3QBTGKA11Exjd9a5411rBrhDg==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz", + "integrity": "sha512-tkYs0OYnzQm6iIRdfy+LcLBjcKuQCeE5YLb8KnrIlutJfheNaPvPpgoFEyEFgbjzl5PLZ3IA/BWAwRU0eHuQDA==", "dependencies": { "@npmcli/name-from-folder": "^2.0.0", "glob": "^10.2.2", @@ -1093,22 +1101,30 @@ } }, "node_modules/@npmcli/package-json": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.0.0.tgz", - "integrity": "sha512-OI2zdYBLhQ7kpNPaJxiflofYIpkNLi+lnGdzqUOfRmCF3r2l1nadcjtCYMJKv/Utm/ZtlffaUuTiAktPHbc17g==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.0.3.tgz", + "integrity": "sha512-cgsjCvld2wMqkUqvY+SZI+1ZJ7umGBYc9IAKfqJRKJCcs7hCQYxScUgdsyrRINk3VmdCYf9TXiLBHQ6ECTxhtg==", "dependencies": { "@npmcli/git": "^5.0.0", "glob": "^10.2.2", "hosted-git-info": "^7.0.0", "json-parse-even-better-errors": "^3.0.0", "normalize-package-data": "^6.0.0", - "proc-log": "^3.0.0", + "proc-log": "^4.0.0", "semver": "^7.5.3" }, "engines": { "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/@npmcli/package-json/node_modules/proc-log": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.0.0.tgz", + "integrity": "sha512-v1lzmYxGDs2+OZnmYtYZK3DG8zogt+CbQ+o/iqqtTfpyCmGWulCTEQu5GIbivf7OjgIkH2Nr8SH8UxAGugZNbg==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@npmcli/promise-spawn": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.1.tgz", @@ -2123,9 +2139,9 @@ } }, "node_modules/builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", + "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", "dependencies": { "semver": "^7.0.0" } @@ -2253,9 +2269,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001606", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001606.tgz", - "integrity": "sha512-LPbwnW4vfpJId225pwjZJOgX1m9sGfbw/RKJvw/t0QhYOOaTXHvkjVGFGPpvwEzufrjvTlsULnVTxdy4/6cqkg==", + "version": "1.0.30001609", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001609.tgz", + "integrity": "sha512-JFPQs34lHKx1B5t1EpQpWH4c+29zIyn/haGsbpfq3suuV9v56enjFt23zqijxGTMwy1p/4H2tjnQMY+p1WoAyA==", "dev": true, "funding": [ { @@ -3451,9 +3467,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.729", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.729.tgz", - "integrity": "sha512-bx7+5Saea/qu14kmPTDHQxkp2UnziG3iajUQu3BxFvCOnpAJdDbMV4rSl+EqFDkkpNNVUFlR1kDfpL59xfy1HA==", + "version": "1.4.736", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.736.tgz", + "integrity": "sha512-Rer6wc3ynLelKNM4lOCg7/zPQj8tPOCB2hzD32PX9wd3hgRRi9MxEbmkFCokzcEhRVMiOVLjnL9ig9cefJ+6+Q==", "dev": true }, "node_modules/emittery": { @@ -6384,12 +6400,12 @@ } }, "node_modules/npm-package-arg": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", - "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.2.tgz", + "integrity": "sha512-IGN0IAwmhDJwy13Wc8k+4PEbTPhpJnMtfR53ZbOyjkvmEcLS4nCwp6mvMWjS5sUjeiW3mpx6cHmuhKEu9XmcQw==", "dependencies": { "hosted-git-info": "^7.0.0", - "proc-log": "^3.0.0", + "proc-log": "^4.0.0", "semver": "^7.3.5", "validate-npm-package-name": "^5.0.0" }, @@ -6397,6 +6413,14 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/npm-package-arg/node_modules/proc-log": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.0.0.tgz", + "integrity": "sha512-v1lzmYxGDs2+OZnmYtYZK3DG8zogt+CbQ+o/iqqtTfpyCmGWulCTEQu5GIbivf7OjgIkH2Nr8SH8UxAGugZNbg==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/npm-packlist": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", @@ -6423,9 +6447,9 @@ } }, "node_modules/npm-registry-fetch": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.2.0.tgz", - "integrity": "sha512-zVH+G0q1O2hqgQBUvQ2LWp6ujr6VJAeDnmWxqiMlCguvLexEzBnuQIwC70r04vcvCMAcYEIpA/rO9YyVi+fmJQ==", + "version": "16.2.1", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.2.1.tgz", + "integrity": "sha512-8l+7jxhim55S85fjiDGJ1rZXBWGtRLi1OSb4Z3BPLObPuIaeKRlPRiYMSHU4/81ck3t71Z+UwDDl47gcpmfQQA==", "dependencies": { "@npmcli/redact": "^1.1.0", "make-fetch-happen": "^13.0.0", @@ -6434,12 +6458,20 @@ "minipass-json-stream": "^1.0.1", "minizlib": "^2.1.2", "npm-package-arg": "^11.0.0", - "proc-log": "^3.0.0" + "proc-log": "^4.0.0" }, "engines": { "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/npm-registry-fetch/node_modules/proc-log": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.0.0.tgz", + "integrity": "sha512-v1lzmYxGDs2+OZnmYtYZK3DG8zogt+CbQ+o/iqqtTfpyCmGWulCTEQu5GIbivf7OjgIkH2Nr8SH8UxAGugZNbg==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/npmlog": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", @@ -6897,9 +6929,9 @@ } }, "node_modules/pacote": { - "version": "17.0.6", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.6.tgz", - "integrity": "sha512-cJKrW21VRE8vVTRskJo78c/RCvwJCn1f4qgfxL4w77SOWrTCRcmfkYHlHtS0gqpgjv3zhXflRtgsrUCX5xwNnQ==", + "version": "17.0.7", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.7.tgz", + "integrity": "sha512-sgvnoUMlkv9xHwDUKjKQFXVyUi8dtJGKp3vg6sYy+TxbDic5RjZCHF3ygv0EJgNRZ2GfRONjlKPUfokJ9lDpwQ==", "dependencies": { "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -6912,7 +6944,7 @@ "npm-packlist": "^8.0.0", "npm-pick-manifest": "^9.0.0", "npm-registry-fetch": "^16.0.0", - "proc-log": "^3.0.0", + "proc-log": "^4.0.0", "promise-retry": "^2.0.1", "read-package-json": "^7.0.0", "read-package-json-fast": "^3.0.0", @@ -6927,6 +6959,14 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/pacote/node_modules/proc-log": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.0.0.tgz", + "integrity": "sha512-v1lzmYxGDs2+OZnmYtYZK3DG8zogt+CbQ+o/iqqtTfpyCmGWulCTEQu5GIbivf7OjgIkH2Nr8SH8UxAGugZNbg==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -7071,9 +7111,9 @@ } }, "node_modules/path-to-regexp": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", - "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.2.tgz", + "integrity": "sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==", "dev": true }, "node_modules/path-type": { @@ -7878,9 +7918,9 @@ } }, "node_modules/socks": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.1.tgz", - "integrity": "sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ==", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", "dependencies": { "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" diff --git a/packages/project/package.json b/packages/project/package.json index a92e6a288ed..1d5d604a6f3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.2.1", + "@npmcli/config": "^8.2.2", "@ui5/builder": "^3.3.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -134,7 +134,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^13.0.0", "node-stream-zip": "^1.15.0", - "pacote": "^17.0.6", + "pacote": "^17.0.7", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", From 768737a198d1365d55e253e4d324cc7264f374e3 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 21 Apr 2024 02:20:22 +0000 Subject: [PATCH 1095/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 117 ++++++++++++++--------------- 1 file changed, 57 insertions(+), 60 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2d83f852443..63aab50a5fa 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -784,9 +784,9 @@ } }, "node_modules/@jsdoc/salty": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.7.tgz", - "integrity": "sha512-mh8LbS9d4Jq84KLw8pzho7XC2q2/IJGiJss3xwRoLD1A+EE16SjN4PfaG4jRCzKegTFLlN0Zd8SdUPE6XdoPFg==", + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.8.tgz", + "integrity": "sha512-5e+SFVavj1ORKlKaKr2BmTOekmXbelU7dC0cDkQLqag7xfuTPuGMUFx7KWJuv4bYZrTsoL2Z18VVCOKYxzoHcg==", "dependencies": { "lodash": "^4.17.21" }, @@ -1034,9 +1034,9 @@ } }, "node_modules/@npmcli/git/node_modules/proc-log": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.0.0.tgz", - "integrity": "sha512-v1lzmYxGDs2+OZnmYtYZK3DG8zogt+CbQ+o/iqqtTfpyCmGWulCTEQu5GIbivf7OjgIkH2Nr8SH8UxAGugZNbg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -1118,9 +1118,9 @@ } }, "node_modules/@npmcli/package-json/node_modules/proc-log": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.0.0.tgz", - "integrity": "sha512-v1lzmYxGDs2+OZnmYtYZK3DG8zogt+CbQ+o/iqqtTfpyCmGWulCTEQu5GIbivf7OjgIkH2Nr8SH8UxAGugZNbg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -1591,59 +1591,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.21.tgz", - "integrity": "sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==", + "version": "3.4.23", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.23.tgz", + "integrity": "sha512-HAFmuVEwNqNdmk+w4VCQ2pkLk1Vw4XYiiyxEp3z/xvl14aLTUBw2OfVH3vBcx+FtGsynQLkkhK410Nah1N2yyQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.9", - "@vue/shared": "3.4.21", + "@babel/parser": "^7.24.1", + "@vue/shared": "3.4.23", "entities": "^4.5.0", "estree-walker": "^2.0.2", - "source-map-js": "^1.0.2" + "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.21.tgz", - "integrity": "sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==", + "version": "3.4.23", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.23.tgz", + "integrity": "sha512-t0b9WSTnCRrzsBGrDd1LNR5HGzYTr7LX3z6nNBG+KGvZLqrT0mY6NsMzOqlVMBKKXKVuusbbB5aOOFgTY+senw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.21", - "@vue/shared": "3.4.21" + "@vue/compiler-core": "3.4.23", + "@vue/shared": "3.4.23" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.21.tgz", - "integrity": "sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==", + "version": "3.4.23", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.23.tgz", + "integrity": "sha512-fSDTKTfzaRX1kNAUiaj8JB4AokikzStWgHooMhaxyjZerw624L+IAP/fvI4ZwMpwIh8f08PVzEnu4rg8/Npssw==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.9", - "@vue/compiler-core": "3.4.21", - "@vue/compiler-dom": "3.4.21", - "@vue/compiler-ssr": "3.4.21", - "@vue/shared": "3.4.21", + "@babel/parser": "^7.24.1", + "@vue/compiler-core": "3.4.23", + "@vue/compiler-dom": "3.4.23", + "@vue/compiler-ssr": "3.4.23", + "@vue/shared": "3.4.23", "estree-walker": "^2.0.2", - "magic-string": "^0.30.7", - "postcss": "^8.4.35", - "source-map-js": "^1.0.2" + "magic-string": "^0.30.8", + "postcss": "^8.4.38", + "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.21.tgz", - "integrity": "sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==", + "version": "3.4.23", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.23.tgz", + "integrity": "sha512-hb6Uj2cYs+tfqz71Wj6h3E5t6OKvb4MVcM2Nl5i/z1nv1gjEhw+zYaNOV+Xwn+SSN/VZM0DgANw5TuJfxfezPg==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.21", - "@vue/shared": "3.4.21" + "@vue/compiler-dom": "3.4.23", + "@vue/shared": "3.4.23" } }, "node_modules/@vue/shared": { - "version": "3.4.21", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.21.tgz", - "integrity": "sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==", + "version": "3.4.23", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.23.tgz", + "integrity": "sha512-wBQ0gvf+SMwsCQOyusNw/GoXPV47WGd1xB5A1Pgzy0sQ3Bi5r5xm3n+92y3gCnB3MWqnRDdvfkRGxhKtbBRNgg==", "dev": true }, "node_modules/abbrev": { @@ -2269,9 +2269,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001609", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001609.tgz", - "integrity": "sha512-JFPQs34lHKx1B5t1EpQpWH4c+29zIyn/haGsbpfq3suuV9v56enjFt23zqijxGTMwy1p/4H2tjnQMY+p1WoAyA==", + "version": "1.0.30001611", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001611.tgz", + "integrity": "sha512-19NuN1/3PjA3QI8Eki55N8my4LzfkMCRLgCVfrl/slbSAchQfV0+GwjPrK3rq37As4UCLlM/DHajbKkAqbv92Q==", "dev": true, "funding": [ { @@ -3467,9 +3467,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.736", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.736.tgz", - "integrity": "sha512-Rer6wc3ynLelKNM4lOCg7/zPQj8tPOCB2hzD32PX9wd3hgRRi9MxEbmkFCokzcEhRVMiOVLjnL9ig9cefJ+6+Q==", + "version": "1.4.745", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.745.tgz", + "integrity": "sha512-tRbzkaRI5gbUn5DEvF0dV4TQbMZ5CLkWeTAXmpC9IrYT+GE+x76i9p+o3RJ5l9XmdQlI1pPhVtE9uNcJJ0G0EA==", "dev": true }, "node_modules/emittery": { @@ -5695,15 +5695,12 @@ } }, "node_modules/magic-string": { - "version": "0.30.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.9.tgz", - "integrity": "sha512-S1+hd+dIrC8EZqKyT9DstTH/0Z+f76kmmvZnkfQVmOpDEF9iVgdYif3Q/pIWHmCoo59bQVGW0kVL3e2nl+9+Sw==", + "version": "0.30.10", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", + "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" - }, - "engines": { - "node": ">=12" } }, "node_modules/make-dir": { @@ -6414,9 +6411,9 @@ } }, "node_modules/npm-package-arg/node_modules/proc-log": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.0.0.tgz", - "integrity": "sha512-v1lzmYxGDs2+OZnmYtYZK3DG8zogt+CbQ+o/iqqtTfpyCmGWulCTEQu5GIbivf7OjgIkH2Nr8SH8UxAGugZNbg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -6465,9 +6462,9 @@ } }, "node_modules/npm-registry-fetch/node_modules/proc-log": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.0.0.tgz", - "integrity": "sha512-v1lzmYxGDs2+OZnmYtYZK3DG8zogt+CbQ+o/iqqtTfpyCmGWulCTEQu5GIbivf7OjgIkH2Nr8SH8UxAGugZNbg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -6960,9 +6957,9 @@ } }, "node_modules/pacote/node_modules/proc-log": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.0.0.tgz", - "integrity": "sha512-v1lzmYxGDs2+OZnmYtYZK3DG8zogt+CbQ+o/iqqtTfpyCmGWulCTEQu5GIbivf7OjgIkH2Nr8SH8UxAGugZNbg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } From 500839ad65bd91432889a076cd12bea24fa08e59 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 28 Apr 2024 02:20:16 +0000 Subject: [PATCH 1096/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 238 +++++++++++++---------------- packages/project/package.json | 6 +- 2 files changed, 106 insertions(+), 138 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 63aab50a5fa..892a20ef7bc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,8 +9,8 @@ "version": "4.0.0-alpha", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.2.2", - "@ui5/builder": "^3.3.1", + "@npmcli/config": "^8.3.0", + "@ui5/builder": "^3.4.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -44,7 +44,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^48.2.3", - "esmock": "^2.6.4", + "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", "istanbul-lib-report": "^3.0.1", @@ -61,15 +61,6 @@ "npm": ">= 10" } }, - "node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@adobe/css-tools": { "version": "4.3.3", "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.3.tgz", @@ -963,23 +954,23 @@ } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", + "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", "engines": { "node": "14 || >=16.14" } }, "node_modules/@npmcli/config": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.2.2.tgz", - "integrity": "sha512-VvMHPIzcsKHCaNh9h4kCbn7NyDtcNJFMOUZ8Wu9SWhds5Egr1gMGU2fv+M50P1V5iAUZWZcv2Iguo5HTckpzww==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.3.0.tgz", + "integrity": "sha512-wQ0byz/w7jQZ+koT5tJtDFDVC16ye82P6frhGklu9KesZEiEqHoq1IQLhS2TPzvrkuWq/i3Id9oFreLT7KHlVQ==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^4.0.0", "ini": "^4.1.2", "nopt": "^7.0.0", - "proc-log": "^3.0.0", + "proc-log": "^4.2.0", "read-package-json-fast": "^3.0.2", "semver": "^7.3.5", "walk-up-path": "^3.0.1" @@ -1026,21 +1017,13 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", + "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", "engines": { "node": "14 || >=16.14" } }, - "node_modules/@npmcli/git/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/@npmcli/git/node_modules/which": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", @@ -1056,15 +1039,15 @@ } }, "node_modules/@npmcli/installed-package-contents": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.2.tgz", - "integrity": "sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz", + "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==", "dependencies": { "npm-bundled": "^3.0.0", "npm-normalize-package-bin": "^3.0.0" }, "bin": { - "installed-package-contents": "lib/index.js" + "installed-package-contents": "bin/index.js" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -1101,9 +1084,9 @@ } }, "node_modules/@npmcli/package-json": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.0.3.tgz", - "integrity": "sha512-cgsjCvld2wMqkUqvY+SZI+1ZJ7umGBYc9IAKfqJRKJCcs7hCQYxScUgdsyrRINk3VmdCYf9TXiLBHQ6ECTxhtg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.1.0.tgz", + "integrity": "sha512-1aL4TuVrLS9sf8quCLerU3H9J4vtCtgu8VauYozrmEyU57i/EdKleCnsQ7vpnABIH6c9mnTxcH5sFkO3BlV8wQ==", "dependencies": { "@npmcli/git": "^5.0.0", "glob": "^10.2.2", @@ -1117,14 +1100,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/package-json/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/@npmcli/promise-spawn": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.1.tgz", @@ -1427,9 +1402,9 @@ "dev": true }, "node_modules/@ui5/builder": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.3.1.tgz", - "integrity": "sha512-YHhCN8pF7eRHKWq4l8j3MYSabpGPe4ByoPLhW8NCz37HjlKPKa50ySUpTSHN9CGopMRzWxVMw6Zjul4SAwULWg==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.4.0.tgz", + "integrity": "sha512-tp1d67imk/oUFoXjplC6EXbvgJpk7Ha3z8nuWDC5HyCbALDeVbLfoFeUJDeS8etjHpV2zIJjw3dp+P/fbEDt/Q==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.5", @@ -1444,7 +1419,7 @@ "pretty-data": "^0.40.0", "rimraf": "^5.0.5", "semver": "^7.6.0", - "terser": "^5.29.2", + "terser": "^5.30.3", "workerpool": "^6.5.1", "xml2js": "^0.6.2" }, @@ -1591,59 +1566,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.23", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.23.tgz", - "integrity": "sha512-HAFmuVEwNqNdmk+w4VCQ2pkLk1Vw4XYiiyxEp3z/xvl14aLTUBw2OfVH3vBcx+FtGsynQLkkhK410Nah1N2yyQ==", + "version": "3.4.25", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.25.tgz", + "integrity": "sha512-Y2pLLopaElgWnMNolgG8w3C5nNUVev80L7hdQ5iIKPtMJvhVpG0zhnBG/g3UajJmZdvW0fktyZTotEHD1Srhbg==", "dev": true, "dependencies": { - "@babel/parser": "^7.24.1", - "@vue/shared": "3.4.23", + "@babel/parser": "^7.24.4", + "@vue/shared": "3.4.25", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.23", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.23.tgz", - "integrity": "sha512-t0b9WSTnCRrzsBGrDd1LNR5HGzYTr7LX3z6nNBG+KGvZLqrT0mY6NsMzOqlVMBKKXKVuusbbB5aOOFgTY+senw==", + "version": "3.4.25", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.25.tgz", + "integrity": "sha512-Ugz5DusW57+HjllAugLci19NsDK+VyjGvmbB2TXaTcSlQxwL++2PETHx/+Qv6qFwNLzSt7HKepPe4DcTE3pBWg==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.23", - "@vue/shared": "3.4.23" + "@vue/compiler-core": "3.4.25", + "@vue/shared": "3.4.25" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.23", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.23.tgz", - "integrity": "sha512-fSDTKTfzaRX1kNAUiaj8JB4AokikzStWgHooMhaxyjZerw624L+IAP/fvI4ZwMpwIh8f08PVzEnu4rg8/Npssw==", + "version": "3.4.25", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.25.tgz", + "integrity": "sha512-m7rryuqzIoQpOBZ18wKyq05IwL6qEpZxFZfRxlNYuIPDqywrXQxgUwLXIvoU72gs6cRdY6wHD0WVZIFE4OEaAQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.24.1", - "@vue/compiler-core": "3.4.23", - "@vue/compiler-dom": "3.4.23", - "@vue/compiler-ssr": "3.4.23", - "@vue/shared": "3.4.23", + "@babel/parser": "^7.24.4", + "@vue/compiler-core": "3.4.25", + "@vue/compiler-dom": "3.4.25", + "@vue/compiler-ssr": "3.4.25", + "@vue/shared": "3.4.25", "estree-walker": "^2.0.2", - "magic-string": "^0.30.8", + "magic-string": "^0.30.10", "postcss": "^8.4.38", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.23", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.23.tgz", - "integrity": "sha512-hb6Uj2cYs+tfqz71Wj6h3E5t6OKvb4MVcM2Nl5i/z1nv1gjEhw+zYaNOV+Xwn+SSN/VZM0DgANw5TuJfxfezPg==", + "version": "3.4.25", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.25.tgz", + "integrity": "sha512-H2ohvM/Pf6LelGxDBnfbbXFPyM4NE3hrw0e/EpwuSiYu8c819wx+SVGdJ65p/sFrYDd6OnSDxN1MB2mN07hRSQ==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.23", - "@vue/shared": "3.4.23" + "@vue/compiler-dom": "3.4.25", + "@vue/shared": "3.4.25" } }, "node_modules/@vue/shared": { - "version": "3.4.23", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.23.tgz", - "integrity": "sha512-wBQ0gvf+SMwsCQOyusNw/GoXPV47WGd1xB5A1Pgzy0sQ3Bi5r5xm3n+92y3gCnB3MWqnRDdvfkRGxhKtbBRNgg==", + "version": "3.4.25", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.25.tgz", + "integrity": "sha512-k0yappJ77g2+KNrIaF0FFnzwLvUBLUYr8VOwz+/6vLsmItFp51AcxLL7Ey3iPd7BIRyWPOcqUjMnm7OkahXllA==", "dev": true }, "node_modules/abbrev": { @@ -2184,9 +2159,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", + "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", "engines": { "node": "14 || >=16.14" } @@ -2269,9 +2244,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001611", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001611.tgz", - "integrity": "sha512-19NuN1/3PjA3QI8Eki55N8my4LzfkMCRLgCVfrl/slbSAchQfV0+GwjPrK3rq37As4UCLlM/DHajbKkAqbv92Q==", + "version": "1.0.30001613", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001613.tgz", + "integrity": "sha512-BNjJULJfOONQERivfxte7alLfeLW4QnwHvNW4wEcLEbXfV6VSCYvr+REbf2Sojv8tC1THpjPXBxWgDbq4NtLWg==", "dev": true, "funding": [ { @@ -3467,9 +3442,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.745", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.745.tgz", - "integrity": "sha512-tRbzkaRI5gbUn5DEvF0dV4TQbMZ5CLkWeTAXmpC9IrYT+GE+x76i9p+o3RJ5l9XmdQlI1pPhVtE9uNcJJ0G0EA==", + "version": "1.4.750", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.750.tgz", + "integrity": "sha512-9ItEpeu15hW5m8jKdriL+BQrgwDTXEL9pn4SkillWFu73ZNNNQ2BKKLS+ZHv2vC9UkNhosAeyfxOf/5OSeTCPA==", "dev": true }, "node_modules/emittery": { @@ -3981,9 +3956,9 @@ } }, "node_modules/esmock": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.4.tgz", - "integrity": "sha512-w/MIHWZeFzlyW6tTUW/sj1aSAScU8IQapjz8oCxjx3J90fhhmO0QdPGBjPD3oQSLLtVCFcgkTvdh7dNigp9K5A==", + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.5.tgz", + "integrity": "sha512-tvFsbtSI9lCuvufbX+UIDn/MoBjTu6UDvQKR8ZmKWHrK3AkioKD2LuTkM75XSngRki3SsBb4uiO58EydQuFCGg==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4729,9 +4704,9 @@ } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", + "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", "engines": { "node": "14 || >=16.14" } @@ -6276,6 +6251,14 @@ "node": ">=16" } }, + "node_modules/node-gyp/node_modules/proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/node-gyp/node_modules/which": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", @@ -6410,14 +6393,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-package-arg/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/npm-packlist": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", @@ -6461,14 +6436,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/npmlog": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", @@ -6830,17 +6797,17 @@ } }, "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" }, "engines": { "node": ">= 0.8.0" @@ -6956,14 +6923,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -7100,9 +7059,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", + "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", "engines": { "node": "14 || >=16.14" } @@ -7317,9 +7276,9 @@ } }, "node_modules/proc-log": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", - "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -7446,9 +7405,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.15.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.15.0.tgz", - "integrity": "sha512-tB9lu0pQpX5KJq54g+oHOLumOx+pMep4RaM6liXh2PKmVRFF+/vAtUP0ZaJ0kOySfVNjF6doBWPHhBhISKdlIA==", + "version": "4.17.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.17.0.tgz", + "integrity": "sha512-9flrz1zkfLRH3jO3bLflmTxryzKMxVa7841VeMgBaNQGY6vH4RCcpN/sQLB7mQQYh1GZ5utT2deypMuCy4yicw==", "engines": { "node": ">=16" }, @@ -7491,9 +7450,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.15.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.15.0.tgz", - "integrity": "sha512-tB9lu0pQpX5KJq54g+oHOLumOx+pMep4RaM6liXh2PKmVRFF+/vAtUP0ZaJ0kOySfVNjF6doBWPHhBhISKdlIA==", + "version": "4.17.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.17.0.tgz", + "integrity": "sha512-9flrz1zkfLRH3jO3bLflmTxryzKMxVa7841VeMgBaNQGY6vH4RCcpN/sQLB7mQQYh1GZ5utT2deypMuCy4yicw==", "engines": { "node": ">=16" }, @@ -8571,9 +8530,9 @@ } }, "node_modules/terser": { - "version": "5.30.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.3.tgz", - "integrity": "sha512-STdUgOUx8rLbMGO9IOwHLpCqolkDITFFQSMYYwKE1N2lY6MVSaeoi10z/EhWxRc6ybqoVmKSkhKYH/XUpl7vSA==", + "version": "5.30.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.4.tgz", + "integrity": "sha512-xRdd0v64a8mFK9bnsKVdoNP9GQIKUAaJPTaqEQDL4w/J8WaW4sWXXoMZ+6SimPkfT5bElreXf8m9HnmPc3E1BQ==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", @@ -8997,6 +8956,15 @@ "string-width": "^1.0.2 || 2 || 3 || 4" } }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/workerpool": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 1d5d604a6f3..8f4aa71f8e5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,8 +120,8 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.2.2", - "@ui5/builder": "^3.3.1", + "@npmcli/config": "^8.3.0", + "@ui5/builder": "^3.4.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -155,7 +155,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", "eslint-plugin-jsdoc": "^48.2.3", - "esmock": "^2.6.4", + "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", "istanbul-lib-report": "^3.0.1", From 02780ccc6fa9429bde9f859f2c502075c785057f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 5 May 2024 02:20:14 +0000 Subject: [PATCH 1097/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 424 +++++++++++++++-------------- packages/project/package.json | 6 +- 2 files changed, 216 insertions(+), 214 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 892a20ef7bc..c6bc5b1fbb7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "4.0.0-alpha", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.3.0", + "@npmcli/config": "^8.3.1", "@ui5/builder": "^3.4.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -21,7 +21,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^13.0.0", + "make-fetch-happen": "^13.0.1", "node-stream-zip": "^1.15.0", "pacote": "^17.0.7", "pretty-hrtime": "^1.0.3", @@ -50,7 +50,7 @@ "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", - "jsdoc": "^4.0.2", + "jsdoc": "^4.0.3", "nyc": "^15.1.0", "open-cli": "^8.0.0", "sinon": "^17.0.1", @@ -101,21 +101,21 @@ } }, "node_modules/@babel/core": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", - "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", + "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.4", + "@babel/generator": "^7.24.5", "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.4", - "@babel/parser": "^7.24.4", + "@babel/helper-module-transforms": "^7.24.5", + "@babel/helpers": "^7.24.5", + "@babel/parser": "^7.24.5", "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -140,12 +140,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", - "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", + "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", "dev": true, "dependencies": { - "@babel/types": "^7.24.0", + "@babel/types": "^7.24.5", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -226,16 +226,16 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", + "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" + "@babel/helper-module-imports": "^7.24.3", + "@babel/helper-simple-access": "^7.24.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -245,33 +245,33 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz", + "integrity": "sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", + "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", + "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -287,9 +287,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", "engines": { "node": ">=6.9.0" } @@ -304,25 +304,25 @@ } }, "node_modules/@babel/helpers": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", - "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", + "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", "dev": true, "dependencies": { "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0" + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-validator-identifier": "^7.24.5", "chalk": "^2.4.2", "js-tokens": "^4.0.0", "picocolors": "^1.0.0" @@ -383,9 +383,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", + "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -408,19 +408,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", - "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", + "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.24.1", - "@babel/generator": "^7.24.1", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.24.1", - "@babel/types": "^7.24.0", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/types": "^7.24.5", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -429,13 +429,13 @@ } }, "node_modules/@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", + "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-string-parser": "^7.24.1", + "@babel/helper-validator-identifier": "^7.24.5", "to-fast-properties": "^2.0.0" }, "engines": { @@ -954,17 +954,17 @@ } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", - "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", "engines": { "node": "14 || >=16.14" } }, "node_modules/@npmcli/config": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.3.0.tgz", - "integrity": "sha512-wQ0byz/w7jQZ+koT5tJtDFDVC16ye82P6frhGklu9KesZEiEqHoq1IQLhS2TPzvrkuWq/i3Id9oFreLT7KHlVQ==", + "version": "8.3.1", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.3.1.tgz", + "integrity": "sha512-lEY3TnkVrNUwI0vCDTFlKTbxK9DxZ83JmXXcQI7kp7pyg7zj/a36xSDmcikXvUbtV2PQpmUwmV0HDAB94NcgNA==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^4.0.0", @@ -991,9 +991,9 @@ } }, "node_modules/@npmcli/git": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.6.tgz", - "integrity": "sha512-4x/182sKXmQkf0EtXxT26GEsaOATpD7WVtza5hrYivWZeo6QefC6xq9KAXrnjtFKBZ4rZwR7aX/zClYYXgtwLw==", + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.7.tgz", + "integrity": "sha512-WaOVvto604d5IpdCRV2KjQu8PzkfE96d50CQGKgywXh2GxXmDeUO5EWcBC4V57uFyrNqx83+MewuJh3WTR3xPA==", "dependencies": { "@npmcli/promise-spawn": "^7.0.0", "lru-cache": "^10.0.1", @@ -1017,9 +1017,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", - "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", "engines": { "node": "14 || >=16.14" } @@ -1101,9 +1101,9 @@ } }, "node_modules/@npmcli/promise-spawn": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.1.tgz", - "integrity": "sha512-P4KkF9jX3y+7yFUxgcUdDtLy+t4OlDGuEBLNs57AZsfSfg+uV6MLndqGpnl4831ggaEdXwR50XFoZP4VFtHolg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz", + "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==", "dependencies": { "which": "^4.0.0" }, @@ -1366,23 +1366,23 @@ } }, "node_modules/@types/linkify-it": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.5.tgz", - "integrity": "sha512-yg6E+u0/+Zjva+buc3EIb+29XEg4wltq7cSmd4Uc2EE/1nUVmxyzpX6gUXD0V8jIrG0r7YeOGVIbYRkxeooCtw==" + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==" }, "node_modules/@types/markdown-it": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-12.2.3.tgz", - "integrity": "sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==", + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.1.tgz", + "integrity": "sha512-4NpsnpYl2Gt1ljyBGrKMxFYAYvpqbnnkgP/i/g+NLpjEUa3obn1XJCur9YbEXKDAkaXqsR1LbDnGEJ0MmKFxfg==", "dependencies": { - "@types/linkify-it": "*", - "@types/mdurl": "*" + "@types/linkify-it": "^5", + "@types/mdurl": "^2" } }, "node_modules/@types/mdurl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.5.tgz", - "integrity": "sha512-6L6VymKTzYSrEf4Nev4Xa1LCHKrlTlYCBMTlQKFuddo1CvQcE52I0mwfOJayueUC7MJuXOeHTcIU683lzd0cUA==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==" }, "node_modules/@types/minimatch": { "version": "3.0.5", @@ -1566,39 +1566,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.25", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.25.tgz", - "integrity": "sha512-Y2pLLopaElgWnMNolgG8w3C5nNUVev80L7hdQ5iIKPtMJvhVpG0zhnBG/g3UajJmZdvW0fktyZTotEHD1Srhbg==", + "version": "3.4.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.26.tgz", + "integrity": "sha512-N9Vil6Hvw7NaiyFUFBPXrAyETIGlQ8KcFMkyk6hW1Cl6NvoqvP+Y8p1Eqvx+UdqsnrnI9+HMUEJegzia3mhXmQ==", "dev": true, "dependencies": { "@babel/parser": "^7.24.4", - "@vue/shared": "3.4.25", + "@vue/shared": "3.4.26", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.25", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.25.tgz", - "integrity": "sha512-Ugz5DusW57+HjllAugLci19NsDK+VyjGvmbB2TXaTcSlQxwL++2PETHx/+Qv6qFwNLzSt7HKepPe4DcTE3pBWg==", + "version": "3.4.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.26.tgz", + "integrity": "sha512-4CWbR5vR9fMg23YqFOhr6t6WB1Fjt62d6xdFPyj8pxrYub7d+OgZaObMsoxaF9yBUHPMiPFK303v61PwAuGvZA==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.25", - "@vue/shared": "3.4.25" + "@vue/compiler-core": "3.4.26", + "@vue/shared": "3.4.26" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.25", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.25.tgz", - "integrity": "sha512-m7rryuqzIoQpOBZ18wKyq05IwL6qEpZxFZfRxlNYuIPDqywrXQxgUwLXIvoU72gs6cRdY6wHD0WVZIFE4OEaAQ==", + "version": "3.4.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.26.tgz", + "integrity": "sha512-It1dp+FAOCgluYSVYlDn5DtZBxk1NCiJJfu2mlQqa/b+k8GL6NG/3/zRbJnHdhV2VhxFghaDq5L4K+1dakW6cw==", "dev": true, "dependencies": { "@babel/parser": "^7.24.4", - "@vue/compiler-core": "3.4.25", - "@vue/compiler-dom": "3.4.25", - "@vue/compiler-ssr": "3.4.25", - "@vue/shared": "3.4.25", + "@vue/compiler-core": "3.4.26", + "@vue/compiler-dom": "3.4.26", + "@vue/compiler-ssr": "3.4.26", + "@vue/shared": "3.4.26", "estree-walker": "^2.0.2", "magic-string": "^0.30.10", "postcss": "^8.4.38", @@ -1606,19 +1606,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.25", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.25.tgz", - "integrity": "sha512-H2ohvM/Pf6LelGxDBnfbbXFPyM4NE3hrw0e/EpwuSiYu8c819wx+SVGdJ65p/sFrYDd6OnSDxN1MB2mN07hRSQ==", + "version": "3.4.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.26.tgz", + "integrity": "sha512-FNwLfk7LlEPRY/g+nw2VqiDKcnDTVdCfBREekF8X74cPLiWHUX6oldktf/Vx28yh4STNy7t+/yuLoMBBF7YDiQ==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.25", - "@vue/shared": "3.4.25" + "@vue/compiler-dom": "3.4.26", + "@vue/shared": "3.4.26" } }, "node_modules/@vue/shared": { - "version": "3.4.25", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.25.tgz", - "integrity": "sha512-k0yappJ77g2+KNrIaF0FFnzwLvUBLUYr8VOwz+/6vLsmItFp51AcxLL7Ey3iPd7BIRyWPOcqUjMnm7OkahXllA==", + "version": "3.4.26", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.26.tgz", + "integrity": "sha512-Fg4zwR0GNnjzodMt3KRy2AWGMKQXByl56+4HjN87soxLNU9P5xcJkstAlIeEF3cU6UYOzmJl1tV0dVPGIljCnQ==", "dev": true }, "node_modules/abbrev": { @@ -2137,9 +2137,9 @@ } }, "node_modules/cacache": { - "version": "18.0.2", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.2.tgz", - "integrity": "sha512-r3NU8h/P+4lVUHfeRw1dtgQYar3DZMm4/cm2bZgOvrFC/su7budSOeqh52VJIC4U4iG1WWwV6vRW0znqBvxNuw==", + "version": "18.0.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.3.tgz", + "integrity": "sha512-qXCd4rh6I07cnDqh8V48/94Tc/WSfj+o3Gn6NZ0aZovS255bUx8O13uKxRFd2eWG0xgsco7+YItQNPaa5E85hg==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", @@ -2159,9 +2159,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", - "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", "engines": { "node": "14 || >=16.14" } @@ -2244,9 +2244,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001613", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001613.tgz", - "integrity": "sha512-BNjJULJfOONQERivfxte7alLfeLW4QnwHvNW4wEcLEbXfV6VSCYvr+REbf2Sojv8tC1THpjPXBxWgDbq4NtLWg==", + "version": "1.0.30001616", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001616.tgz", + "integrity": "sha512-RHVYKov7IcdNjVHJFNY/78RdG4oGVjbayxv8u5IO74Wv7Hlq4PnJE6mo/OjFijjVFNy5ijnCt6H3IIo4t+wfEw==", "dev": true, "funding": [ { @@ -3442,9 +3442,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.750", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.750.tgz", - "integrity": "sha512-9ItEpeu15hW5m8jKdriL+BQrgwDTXEL9pn4SkillWFu73ZNNNQ2BKKLS+ZHv2vC9UkNhosAeyfxOf/5OSeTCPA==", + "version": "1.4.756", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.756.tgz", + "integrity": "sha512-RJKZ9+vEBMeiPAvKNWyZjuYyUqMndcP1f335oHqn3BEQbs2NFtVrnK5+6Xg5wSM9TknNNpWghGDUCKGYF+xWXw==", "dev": true }, "node_modules/emittery": { @@ -4693,9 +4693,9 @@ } }, "node_modules/hosted-git-info": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", - "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", + "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", "dependencies": { "lru-cache": "^10.0.1" }, @@ -4704,9 +4704,9 @@ } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", - "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", "engines": { "node": "14 || >=16.14" } @@ -4826,9 +4826,9 @@ } }, "node_modules/ignore-walk": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.4.tgz", - "integrity": "sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz", + "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==", "dependencies": { "minimatch": "^9.0.0" }, @@ -5423,20 +5423,20 @@ "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==" }, "node_modules/jsdoc": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.2.tgz", - "integrity": "sha512-e8cIg2z62InH7azBBi3EsSEqrKx+nUtAS5bBcYTSpZFA+vhNPyhv8PTFZ0WsjOPDj04/dOLlm08EDcQJDqaGQg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.3.tgz", + "integrity": "sha512-Nu7Sf35kXJ1MWDZIMAuATRQTg1iIPdzh7tqJ6jjvaU/GfDf+qi5UV8zJR3Mo+/pYFvm8mzay4+6O5EWigaQBQw==", "dependencies": { "@babel/parser": "^7.20.15", "@jsdoc/salty": "^0.2.1", - "@types/markdown-it": "^12.2.3", + "@types/markdown-it": "^14.1.1", "bluebird": "^3.7.2", "catharsis": "^0.9.0", "escape-string-regexp": "^2.0.0", "js2xmlparser": "^4.0.2", "klaw": "^3.0.0", - "markdown-it": "^12.3.2", - "markdown-it-anchor": "^8.4.1", + "markdown-it": "^14.1.0", + "markdown-it-anchor": "^8.6.7", "marked": "^4.0.10", "mkdirp": "^1.0.4", "requizzle": "^0.2.3", @@ -5486,9 +5486,9 @@ "dev": true }, "node_modules/json-parse-even-better-errors": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", - "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", + "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -5581,11 +5581,11 @@ "dev": true }, "node_modules/linkify-it": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz", - "integrity": "sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", "dependencies": { - "uc.micro": "^1.0.1" + "uc.micro": "^2.0.0" } }, "node_modules/load-json-file": { @@ -5703,9 +5703,9 @@ } }, "node_modules/make-fetch-happen": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", - "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", "dependencies": { "@npmcli/agent": "^2.0.0", "cacache": "^18.0.0", @@ -5716,6 +5716,7 @@ "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", + "proc-log": "^4.2.0", "promise-retry": "^2.0.1", "ssri": "^10.0.0" }, @@ -5724,18 +5725,19 @@ } }, "node_modules/markdown-it": { - "version": "12.3.2", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", - "integrity": "sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", + "integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==", "dependencies": { "argparse": "^2.0.1", - "entities": "~2.1.0", - "linkify-it": "^3.0.1", - "mdurl": "^1.0.1", - "uc.micro": "^1.0.5" + "entities": "^4.4.0", + "linkify-it": "^5.0.0", + "mdurl": "^2.0.0", + "punycode.js": "^2.3.1", + "uc.micro": "^2.1.0" }, "bin": { - "markdown-it": "bin/markdown-it.js" + "markdown-it": "bin/markdown-it.mjs" } }, "node_modules/markdown-it-anchor": { @@ -5747,14 +5749,6 @@ "markdown-it": "*" } }, - "node_modules/markdown-it/node_modules/entities": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz", - "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/marked": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", @@ -5794,9 +5788,9 @@ } }, "node_modules/mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==" }, "node_modules/memoize": { "version": "10.0.0", @@ -5909,9 +5903,9 @@ } }, "node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.0.tgz", + "integrity": "sha512-oGZRv2OT1lO2UF1zUcwdTb3wqUwI0kBGTgt/T7OdSj6M6N5m3o5uPf0AIW6lVxGGoiWUR7e2AwTE+xiwK8WQig==", "engines": { "node": ">=16 || 14 >=14.17" } @@ -5928,9 +5922,9 @@ } }, "node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", + "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", "dependencies": { "minipass": "^7.0.3", "minipass-sized": "^1.0.3", @@ -6233,9 +6227,9 @@ } }, "node_modules/node-gyp-build": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", - "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.1.tgz", + "integrity": "sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==", "dev": true, "bin": { "node-gyp-build": "bin.js", @@ -6313,9 +6307,9 @@ } }, "node_modules/nopt": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", - "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", "dependencies": { "abbrev": "^2.0.0" }, @@ -6327,9 +6321,9 @@ } }, "node_modules/normalize-package-data": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", - "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.1.tgz", + "integrity": "sha512-6rvCfeRW+OEZagAB4lMLSNuTNYZWLVtKccK79VSTf//yTY5VOCgcpH80O+bZK8Neps7pUnd5G+QlMg1yV/2iZQ==", "dependencies": { "hosted-git-info": "^7.0.0", "is-core-module": "^2.8.1", @@ -6405,9 +6399,9 @@ } }, "node_modules/npm-pick-manifest": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", - "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.1.tgz", + "integrity": "sha512-Udm1f0l2nXb3wxDpKjfohwgdFUSV50UVwzEIpDXVsbDMXVIEF81a/i0UhuQbhrPMMmdiq3+YMFLFIRVLs3hxQw==", "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", @@ -7059,9 +7053,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", - "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", "engines": { "node": "14 || >=16.14" } @@ -7332,6 +7326,14 @@ "node": ">=6" } }, + "node_modules/punycode.js": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", + "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", + "engines": { + "node": ">=6" + } + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -7363,9 +7365,9 @@ } }, "node_modules/read-package-json": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.0.tgz", - "integrity": "sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.1.tgz", + "integrity": "sha512-8PcDiZ8DXUjLf687Ol4BR8Bpm2umR7vhoZOzNRt+uxD9GpBh/K+CAAALVIiYFknmvlmyg7hM7BSNUXPaCCqd0Q==", "dependencies": { "glob": "^10.2.2", "json-parse-even-better-errors": "^3.0.0", @@ -7405,9 +7407,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.17.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.17.0.tgz", - "integrity": "sha512-9flrz1zkfLRH3jO3bLflmTxryzKMxVa7841VeMgBaNQGY6vH4RCcpN/sQLB7mQQYh1GZ5utT2deypMuCy4yicw==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.1.tgz", + "integrity": "sha512-qXhgeNsX15bM63h5aapNFcQid9jRF/l3ojDoDFmekDQEUufZ9U4ErVt6SjDxnHp48Ltrw616R8yNc3giJ3KvVQ==", "engines": { "node": ">=16" }, @@ -7450,9 +7452,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.17.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.17.0.tgz", - "integrity": "sha512-9flrz1zkfLRH3jO3bLflmTxryzKMxVa7841VeMgBaNQGY6vH4RCcpN/sQLB7mQQYh1GZ5utT2deypMuCy4yicw==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.1.tgz", + "integrity": "sha512-qXhgeNsX15bM63h5aapNFcQid9jRF/l3ojDoDFmekDQEUufZ9U4ErVt6SjDxnHp48Ltrw616R8yNc3giJ3KvVQ==", "engines": { "node": ">=16" }, @@ -8073,9 +8075,9 @@ "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==" }, "node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", + "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", "dependencies": { "minipass": "^7.0.3" }, @@ -8530,9 +8532,9 @@ } }, "node_modules/terser": { - "version": "5.30.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.4.tgz", - "integrity": "sha512-xRdd0v64a8mFK9bnsKVdoNP9GQIKUAaJPTaqEQDL4w/J8WaW4sWXXoMZ+6SimPkfT5bElreXf8m9HnmPc3E1BQ==", + "version": "5.31.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.0.tgz", + "integrity": "sha512-Q1JFAoUKE5IMfI4Z/lkE/E6+SwgzO+x4tq4v1AyBLRj8VSYvRO6A/rQrPg1yud4g0En9EKI1TvFRF2tQFcoUkg==", "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", @@ -8758,9 +8760,9 @@ } }, "node_modules/uc.micro": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", - "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==" }, "node_modules/underscore": { "version": "1.13.6", @@ -8816,9 +8818,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz", + "integrity": "sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==", "dev": true, "funding": [ { @@ -8835,7 +8837,7 @@ } ], "dependencies": { - "escalade": "^3.1.1", + "escalade": "^3.1.2", "picocolors": "^1.0.0" }, "bin": { diff --git a/packages/project/package.json b/packages/project/package.json index 8f4aa71f8e5..3bca9b26268 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.3.0", + "@npmcli/config": "^8.3.1", "@ui5/builder": "^3.4.0", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -132,7 +132,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^13.0.0", + "make-fetch-happen": "^13.0.1", "node-stream-zip": "^1.15.0", "pacote": "^17.0.7", "pretty-hrtime": "^1.0.3", @@ -161,7 +161,7 @@ "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", - "jsdoc": "^4.0.2", + "jsdoc": "^4.0.3", "nyc": "^15.1.0", "open-cli": "^8.0.0", "sinon": "^17.0.1", From 51d6df1daa96ce181a45995897493f89f42732ff Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 12 May 2024 02:20:09 +0000 Subject: [PATCH 1098/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 284 +++++++++++++++-------------- packages/project/package.json | 10 +- 2 files changed, 152 insertions(+), 142 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c6bc5b1fbb7..74b17bcb3d5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -28,14 +28,14 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^5.0.5", - "semver": "^7.6.0", + "rimraf": "^5.0.6", + "semver": "^7.6.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^6.1.2", + "ava": "^6.1.3", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", @@ -43,7 +43,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.3", + "eslint-plugin-jsdoc": "^48.2.4", "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -53,7 +53,7 @@ "jsdoc": "^4.0.3", "nyc": "^15.1.0", "open-cli": "^8.0.0", - "sinon": "^17.0.1", + "sinon": "^17.0.2", "tap-xunit": "^2.4.1" }, "engines": { @@ -443,11 +443,14 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.42.0.tgz", - "integrity": "sha512-R1w57YlVA6+YE01wch3GPYn6bCsrOV3YW/5oGGE2tmX6JcL9Nr+b5IikrjMPF+v9CV3ay+obImEdsDhovhJrzw==", + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.43.0.tgz", + "integrity": "sha512-Q1CnsQrytI3TlCB1IVWXWeqUIPGVEKGaE7IbVdt13Nq/3i0JESAkQQERrfiQkmlpijl+++qyqPgaS31Bvc1jRQ==", "dev": true, "dependencies": { + "@types/eslint": "^8.56.5", + "@types/estree": "^1.0.5", + "@typescript-eslint/types": "^7.2.0", "comment-parser": "1.4.1", "esquery": "^1.5.0", "jsdoc-type-pratt-parser": "~4.0.0" @@ -980,9 +983,9 @@ } }, "node_modules/@npmcli/fs": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", - "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", + "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", "dependencies": { "semver": "^7.3.5" }, @@ -1238,34 +1241,36 @@ } }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.1.tgz", - "integrity": "sha512-aIL8Z9NsMr3C64jyQzE0XlkEyBLpgEJJFDHLVVStkFV5Q3Il/r/YtY6NJWKQ4cy4AE7spP1IX5Jq7VCAxHHMfQ==", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.2.tgz", + "integrity": "sha512-c6B0ehIWxMI8wiS/bj6rHMPqeFvngFV7cDU/MY+B16P9Z3Mp9k8L93eYZ7BYzSickzuqAQqAq0V956b3Ju6mLw==", "engines": { "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@sigstore/sign": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.0.tgz", - "integrity": "sha512-tsAyV6FC3R3pHmKS880IXcDJuiFJiKITO1jxR1qbplcsBkZLBmjrEw5GbC7ikD6f5RU1hr7WnmxB/2kKc1qUWQ==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.1.tgz", + "integrity": "sha512-YZ71wKIOweC8ViUeZXboz0iPLqMkskxuoeN/D1CEpAyZvEepbX9oRMIoO6a/DxUqO1VEaqmcmmqzSiqtOsvSmw==", "dependencies": { "@sigstore/bundle": "^2.3.0", "@sigstore/core": "^1.0.0", "@sigstore/protobuf-specs": "^0.3.1", - "make-fetch-happen": "^13.0.0" + "make-fetch-happen": "^13.0.1", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1" }, "engines": { "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@sigstore/tuf": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.2.tgz", - "integrity": "sha512-mwbY1VrEGU4CO55t+Kl6I7WZzIl+ysSzEYdA1Nv/FTrl2bkeaPXo5PnWZAVfcY2zSdhOpsUTJW67/M2zHXGn5w==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.3.tgz", + "integrity": "sha512-agQhHNkIddXFslkudjV88vTXiAMEyUtso3at6ZHUNJ1agZb7Ze6VW/PddHipdWBu1t+8OWLW5X5yZOPiOnaWJQ==", "dependencies": { "@sigstore/protobuf-specs": "^0.3.0", - "tuf-js": "^2.2.0" + "tuf-js": "^2.2.1" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -1354,17 +1359,39 @@ } }, "node_modules/@tufjs/models": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.0.tgz", - "integrity": "sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz", + "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==", "dependencies": { "@tufjs/canonical-json": "2.0.0", - "minimatch": "^9.0.3" + "minimatch": "^9.0.4" }, "engines": { "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/@types/eslint": { + "version": "8.56.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", + "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, "node_modules/@types/linkify-it": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", @@ -1401,6 +1428,19 @@ "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", "dev": true }, + "node_modules/@typescript-eslint/types": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.8.0.tgz", + "integrity": "sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw==", + "dev": true, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, "node_modules/@ui5/builder": { "version": "3.4.0", "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.4.0.tgz", @@ -1498,9 +1538,9 @@ "dev": true }, "node_modules/@vercel/nft": { - "version": "0.26.4", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.26.4.tgz", - "integrity": "sha512-j4jCOOXke2t8cHZCIxu1dzKLHLcFmYzC3yqAK6MfZznOL1QIJKd0xcFsXK3zcqzU7ScsE2zWkiMMNHGMHgp+FA==", + "version": "0.26.5", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.26.5.tgz", + "integrity": "sha512-NHxohEqad6Ra/r4lGknO52uc/GrWILXAMs1BB4401GTqww0fw1bAqzpG1XHuDO+dprg4GvsD9ZLLSsdo78p9hQ==", "dev": true, "dependencies": { "@mapbox/node-pre-gyp": "^1.0.5", @@ -1566,39 +1606,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.26", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.26.tgz", - "integrity": "sha512-N9Vil6Hvw7NaiyFUFBPXrAyETIGlQ8KcFMkyk6hW1Cl6NvoqvP+Y8p1Eqvx+UdqsnrnI9+HMUEJegzia3mhXmQ==", + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.27.tgz", + "integrity": "sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==", "dev": true, "dependencies": { "@babel/parser": "^7.24.4", - "@vue/shared": "3.4.26", + "@vue/shared": "3.4.27", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.26", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.26.tgz", - "integrity": "sha512-4CWbR5vR9fMg23YqFOhr6t6WB1Fjt62d6xdFPyj8pxrYub7d+OgZaObMsoxaF9yBUHPMiPFK303v61PwAuGvZA==", + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.27.tgz", + "integrity": "sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.26", - "@vue/shared": "3.4.26" + "@vue/compiler-core": "3.4.27", + "@vue/shared": "3.4.27" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.26", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.26.tgz", - "integrity": "sha512-It1dp+FAOCgluYSVYlDn5DtZBxk1NCiJJfu2mlQqa/b+k8GL6NG/3/zRbJnHdhV2VhxFghaDq5L4K+1dakW6cw==", + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.27.tgz", + "integrity": "sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==", "dev": true, "dependencies": { "@babel/parser": "^7.24.4", - "@vue/compiler-core": "3.4.26", - "@vue/compiler-dom": "3.4.26", - "@vue/compiler-ssr": "3.4.26", - "@vue/shared": "3.4.26", + "@vue/compiler-core": "3.4.27", + "@vue/compiler-dom": "3.4.27", + "@vue/compiler-ssr": "3.4.27", + "@vue/shared": "3.4.27", "estree-walker": "^2.0.2", "magic-string": "^0.30.10", "postcss": "^8.4.38", @@ -1606,19 +1646,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.26", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.26.tgz", - "integrity": "sha512-FNwLfk7LlEPRY/g+nw2VqiDKcnDTVdCfBREekF8X74cPLiWHUX6oldktf/Vx28yh4STNy7t+/yuLoMBBF7YDiQ==", + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.27.tgz", + "integrity": "sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.26", - "@vue/shared": "3.4.26" + "@vue/compiler-dom": "3.4.27", + "@vue/shared": "3.4.27" } }, "node_modules/@vue/shared": { - "version": "3.4.26", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.26.tgz", - "integrity": "sha512-Fg4zwR0GNnjzodMt3KRy2AWGMKQXByl56+4HjN87soxLNU9P5xcJkstAlIeEF3cU6UYOzmJl1tV0dVPGIljCnQ==", + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.27.tgz", + "integrity": "sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==", "dev": true }, "node_modules/abbrev": { @@ -1874,9 +1914,9 @@ "dev": true }, "node_modules/ava": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/ava/-/ava-6.1.2.tgz", - "integrity": "sha512-WcpxJ8yZ7mk9ABTinD0IAjcemovSeVGjuuwZx0JS9johREWFeLTl8UP6wd7l6nmnrWqkKZdwaD71a/ocH4qPKw==", + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/ava/-/ava-6.1.3.tgz", + "integrity": "sha512-tkKbpF1pIiC+q09wNU9OfyTDYZa8yuWvU2up3+lFJ3lr1RmnYh2GBpPwzYUEB0wvTPIUysGjcZLNZr7STDviRA==", "dev": true, "dependencies": { "@vercel/nft": "^0.26.2", @@ -1924,7 +1964,7 @@ "ava": "entrypoints/cli.mjs" }, "engines": { - "node": "^18.18 || ^20.8 || ^21" + "node": "^18.18 || ^20.8 || ^21 || ^22" }, "peerDependencies": { "@ava/typescript": "*" @@ -2113,14 +2153,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/builtins": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", - "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", - "dependencies": { - "semver": "^7.0.0" - } - }, "node_modules/bundle-name": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", @@ -2244,9 +2276,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001616", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001616.tgz", - "integrity": "sha512-RHVYKov7IcdNjVHJFNY/78RdG4oGVjbayxv8u5IO74Wv7Hlq4PnJE6mo/OjFijjVFNy5ijnCt6H3IIo4t+wfEw==", + "version": "1.0.30001617", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001617.tgz", + "integrity": "sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA==", "dev": true, "funding": [ { @@ -3442,9 +3474,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.756", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.756.tgz", - "integrity": "sha512-RJKZ9+vEBMeiPAvKNWyZjuYyUqMndcP1f335oHqn3BEQbs2NFtVrnK5+6Xg5wSM9TknNNpWghGDUCKGYF+xWXw==", + "version": "1.4.763", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.763.tgz", + "integrity": "sha512-k4J8NrtJ9QrvHLRo8Q18OncqBCB7tIUyqxRcJnlonQ0ioHKYB988GcDFF3ZePmnb8eHEopDs/wPHR/iGAFgoUQ==", "dev": true }, "node_modules/emittery": { @@ -3654,12 +3686,12 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.3.tgz", - "integrity": "sha512-r9DMAmFs66VNvNqRLLjHejdnJtILrt3xGi+Qx0op0oRfFGVpOR1Hb3BC++MacseHx93d8SKYPhyrC9BS7Os2QA==", + "version": "48.2.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.4.tgz", + "integrity": "sha512-3ebvVgCJFy06gpmuS2ynz13uh9iFSzZ1C1dDkgcSAqVVg82zlORKMk2fvjq708pAO6bwfs5YLttknFEbaoDiGw==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.42.0", + "@es-joy/jsdoccomment": "~0.43.0", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", "debug": "^4.3.4", @@ -4509,15 +4541,15 @@ } }, "node_modules/glob": { - "version": "10.3.12", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", - "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "version": "10.3.14", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.14.tgz", + "integrity": "sha512-4fkAqu93xe9Mk7le9v0y3VrPDqLKHarNi2s4Pv7f2yOvfhWfhc7hRPHC/JyqMqb8B/Dt/eGS4n7ykwf3fOsl8g==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.3.6", "minimatch": "^9.0.1", "minipass": "^7.0.4", - "path-scurry": "^1.10.2" + "path-scurry": "^1.11.0" }, "bin": { "glob": "dist/esm/bin.mjs" @@ -5903,9 +5935,9 @@ } }, "node_modules/minipass": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.0.tgz", - "integrity": "sha512-oGZRv2OT1lO2UF1zUcwdTb3wqUwI0kBGTgt/T7OdSj6M6N5m3o5uPf0AIW6lVxGGoiWUR7e2AwTE+xiwK8WQig==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz", + "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==", "engines": { "node": ">=16 || 14 >=14.17" } @@ -6344,9 +6376,9 @@ } }, "node_modules/npm-bundled": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", - "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz", + "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==", "dependencies": { "npm-normalize-package-bin": "^3.0.0" }, @@ -7038,9 +7070,9 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", - "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz", + "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==", "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" @@ -7407,9 +7439,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.1.tgz", - "integrity": "sha512-qXhgeNsX15bM63h5aapNFcQid9jRF/l3ojDoDFmekDQEUufZ9U4ErVt6SjDxnHp48Ltrw616R8yNc3giJ3KvVQ==", + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.2.tgz", + "integrity": "sha512-+suCYpfJLAe4OXS6+PPXjW3urOS4IoP9waSiLuXfLgqZODKw/aWwASvzqE886wA0kQgGy0mIWyhd87VpqIy6Xg==", "engines": { "node": ">=16" }, @@ -7452,9 +7484,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.1.tgz", - "integrity": "sha512-qXhgeNsX15bM63h5aapNFcQid9jRF/l3ojDoDFmekDQEUufZ9U4ErVt6SjDxnHp48Ltrw616R8yNc3giJ3KvVQ==", + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.2.tgz", + "integrity": "sha512-+suCYpfJLAe4OXS6+PPXjW3urOS4IoP9waSiLuXfLgqZODKw/aWwASvzqE886wA0kQgGy0mIWyhd87VpqIy6Xg==", "engines": { "node": ">=16" }, @@ -7625,9 +7657,9 @@ } }, "node_modules/rimraf": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", - "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.6.tgz", + "integrity": "sha512-X72SgyOf+1lFnGM6gYcmZ4+jMOwuT4E4SajKQzUIlI7EoR5eFHMhS/wf8Ll0mN+w2bxcIVldrJQ6xT7HFQywjg==", "dependencies": { "glob": "^10.3.7" }, @@ -7707,12 +7739,9 @@ "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" }, "node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", + "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", "bin": { "semver": "bin/semver.js" }, @@ -7726,22 +7755,6 @@ "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", "dev": true }, - "node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/serialize-error": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", @@ -7822,17 +7835,17 @@ } }, "node_modules/sinon": { - "version": "17.0.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.1.tgz", - "integrity": "sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==", + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.2.tgz", + "integrity": "sha512-uihLiaB9FhzesElPDFZA7hDcNABzsVHwr3YfmM9sBllVwab3l0ltGlRV1XhpNfIacNDLGD1QRZNLs5nU5+hTuA==", "dev": true, "dependencies": { - "@sinonjs/commons": "^3.0.0", + "@sinonjs/commons": "^3.0.1", "@sinonjs/fake-timers": "^11.2.2", "@sinonjs/samsam": "^8.0.0", - "diff": "^5.1.0", - "nise": "^5.1.5", - "supports-color": "^7.2.0" + "diff": "^5.2.0", + "nise": "^5.1.9", + "supports-color": "^7" }, "funding": { "type": "opencollective", @@ -8708,13 +8721,13 @@ "dev": true }, "node_modules/tuf-js": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.0.tgz", - "integrity": "sha512-ZSDngmP1z6zw+FIkIBjvOp/II/mIub/O7Pp12j1WNsiCpg5R5wAc//i555bBQsE44O94btLt0xM/Zr2LQjwdCg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz", + "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==", "dependencies": { - "@tufjs/models": "2.0.0", + "@tufjs/models": "2.0.1", "debug": "^4.3.4", - "make-fetch-happen": "^13.0.0" + "make-fetch-happen": "^13.0.1" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -8889,12 +8902,9 @@ } }, "node_modules/validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", - "dependencies": { - "builtins": "^5.0.0" - }, + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", + "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } diff --git a/packages/project/package.json b/packages/project/package.json index 3bca9b26268..7dcc5c8beab 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,14 +139,14 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^5.0.5", - "semver": "^7.6.0", + "rimraf": "^5.0.6", + "semver": "^7.6.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^6.1.2", + "ava": "^6.1.3", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", @@ -154,7 +154,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.3", + "eslint-plugin-jsdoc": "^48.2.4", "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -164,7 +164,7 @@ "jsdoc": "^4.0.3", "nyc": "^15.1.0", "open-cli": "^8.0.0", - "sinon": "^17.0.1", + "sinon": "^17.0.2", "tap-xunit": "^2.4.1" } } From be9fcd7a1b526052416a535a590ce24e9cafb5a6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 May 2024 05:06:13 +0000 Subject: [PATCH 1099/1272] [ui5-project]Bump coverallsapp/github-action from 2.2.3 to 2.3.0 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.2.3 to 2.3.0. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v2.2.3...v2.3.0) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index b3477c2e037..6b291b266f5 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v2.2.3 + uses: coverallsapp/github-action@v2.3.0 From d3ca3b570967ae9eb004340e176d3e80cfaab950 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 13 May 2024 08:22:31 +0000 Subject: [PATCH 1100/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 26 +++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 74b17bcb3d5..e4e03727c4f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -28,7 +28,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^5.0.6", + "rimraf": "^5.0.7", "semver": "^7.6.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -4541,9 +4541,9 @@ } }, "node_modules/glob": { - "version": "10.3.14", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.14.tgz", - "integrity": "sha512-4fkAqu93xe9Mk7le9v0y3VrPDqLKHarNi2s4Pv7f2yOvfhWfhc7hRPHC/JyqMqb8B/Dt/eGS4n7ykwf3fOsl8g==", + "version": "10.3.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.15.tgz", + "integrity": "sha512-0c6RlJt1TICLyvJYIApxb8GsXoai0KUP7AxKKAtsYXdgJR1mGEUa7DgwShbdk1nly0PYoZj01xd4hzbq3fsjpw==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.3.6", @@ -4555,7 +4555,7 @@ "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -7070,15 +7070,15 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz", - "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -7657,9 +7657,9 @@ } }, "node_modules/rimraf": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.6.tgz", - "integrity": "sha512-X72SgyOf+1lFnGM6gYcmZ4+jMOwuT4E4SajKQzUIlI7EoR5eFHMhS/wf8Ll0mN+w2bxcIVldrJQ6xT7HFQywjg==", + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.7.tgz", + "integrity": "sha512-nV6YcJo5wbLW77m+8KjH8aB/7/rxQy9SZ0HY5shnwULfS+9nmTtVXAJET5NdZmCzA4fPI/Hm1wo/Po/4mopOdg==", "dependencies": { "glob": "^10.3.7" }, @@ -7667,7 +7667,7 @@ "rimraf": "dist/esm/bin.mjs" }, "engines": { - "node": ">=14" + "node": ">=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" diff --git a/packages/project/package.json b/packages/project/package.json index 7dcc5c8beab..9de95f87890 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,7 +139,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^5.0.6", + "rimraf": "^5.0.7", "semver": "^7.6.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" From 0a8b613606d55bde054645cdab4daad74758abbe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 12 May 2024 10:15:49 +0000 Subject: [PATCH 1101/1272] [ui5-project][DEPENDENCY] Bump pacote from 17.0.7 to 18.0.6 Bumps [pacote](https://github.com/npm/pacote) from 17.0.7 to 18.0.6. - [Release notes](https://github.com/npm/pacote/releases) - [Changelog](https://github.com/npm/pacote/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/pacote/compare/v17.0.7...v18.0.6) --- updated-dependencies: - dependency-name: pacote dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 52 +++++++++++------------------- packages/project/package.json | 2 +- 2 files changed, 20 insertions(+), 34 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e4e03727c4f..b6923578045 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -23,7 +23,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^13.0.1", "node-stream-zip": "^1.15.0", - "pacote": "^17.0.7", + "pacote": "^18.0.6", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", @@ -1137,22 +1137,23 @@ } }, "node_modules/@npmcli/redact": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-1.1.0.tgz", - "integrity": "sha512-PfnWuOkQgu7gCbnSsAisaX7hKOdZ4wSAhAzH3/ph5dSGau52kCRrMMGbiSQLwyTZpgldkZ49b0brkOr1AzGBHQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.0.tgz", + "integrity": "sha512-SEjCPAVHWYUIQR+Yn03kJmrJjZDtJLYpj300m3HV9OTRZNpC5YpbMsM3eTkECyT4aWj8lDr9WeY6TWefpubtYQ==", "engines": { "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@npmcli/run-script": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.4.tgz", - "integrity": "sha512-9ApYM/3+rBt9V80aYg6tZfzj3UWdiYyCt7gJUD1VJKvWF5nwKDSICXbYIQbspFTq6TOpbsEtIC0LArB8d9PFmg==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-8.1.0.tgz", + "integrity": "sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==", "dependencies": { "@npmcli/node-gyp": "^3.0.0", "@npmcli/package-json": "^5.0.0", "@npmcli/promise-spawn": "^7.0.0", "node-gyp": "^10.0.0", + "proc-log": "^4.0.0", "which": "^4.0.0" }, "engines": { @@ -6445,11 +6446,11 @@ } }, "node_modules/npm-registry-fetch": { - "version": "16.2.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.2.1.tgz", - "integrity": "sha512-8l+7jxhim55S85fjiDGJ1rZXBWGtRLi1OSb4Z3BPLObPuIaeKRlPRiYMSHU4/81ck3t71Z+UwDDl47gcpmfQQA==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.0.1.tgz", + "integrity": "sha512-fLu9MTdZTlJAHUek/VLklE6EpIiP3VZpTiuN7OOMCt2Sd67NCpSEetMaxHHEZiZxllp8ZLsUpvbEszqTFEc+wA==", "dependencies": { - "@npmcli/redact": "^1.1.0", + "@npmcli/redact": "^2.0.0", "make-fetch-happen": "^13.0.0", "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", @@ -6919,31 +6920,30 @@ } }, "node_modules/pacote": { - "version": "17.0.7", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.7.tgz", - "integrity": "sha512-sgvnoUMlkv9xHwDUKjKQFXVyUi8dtJGKp3vg6sYy+TxbDic5RjZCHF3ygv0EJgNRZ2GfRONjlKPUfokJ9lDpwQ==", + "version": "18.0.6", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz", + "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==", "dependencies": { "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/package-json": "^5.1.0", "@npmcli/promise-spawn": "^7.0.0", - "@npmcli/run-script": "^7.0.0", + "@npmcli/run-script": "^8.0.0", "cacache": "^18.0.0", "fs-minipass": "^3.0.0", "minipass": "^7.0.2", "npm-package-arg": "^11.0.0", "npm-packlist": "^8.0.0", "npm-pick-manifest": "^9.0.0", - "npm-registry-fetch": "^16.0.0", + "npm-registry-fetch": "^17.0.0", "proc-log": "^4.0.0", "promise-retry": "^2.0.1", - "read-package-json": "^7.0.0", - "read-package-json-fast": "^3.0.0", "sigstore": "^2.2.0", "ssri": "^10.0.0", "tar": "^6.1.11" }, "bin": { - "pacote": "lib/bin.js" + "pacote": "bin/index.js" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -7396,20 +7396,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-package-json": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.1.tgz", - "integrity": "sha512-8PcDiZ8DXUjLf687Ol4BR8Bpm2umR7vhoZOzNRt+uxD9GpBh/K+CAAALVIiYFknmvlmyg7hM7BSNUXPaCCqd0Q==", - "dependencies": { - "glob": "^10.2.2", - "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, "node_modules/read-package-json-fast": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 9de95f87890..c574896f697 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -134,7 +134,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^13.0.1", "node-stream-zip": "^1.15.0", - "pacote": "^17.0.7", + "pacote": "^18.0.6", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", From e39116df0c4a6a2e803bca898737733c01af3114 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 19 May 2024 02:20:14 +0000 Subject: [PATCH 1102/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 121 +++++++++++++++-------------- packages/project/package.json | 6 +- 2 files changed, 64 insertions(+), 63 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b6923578045..1db8c2f35c7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,8 +9,8 @@ "version": "4.0.0-alpha", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.3.1", - "@ui5/builder": "^3.4.0", + "@npmcli/config": "^8.3.2", + "@ui5/builder": "^3.4.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -43,7 +43,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.4", + "eslint-plugin-jsdoc": "^48.2.5", "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -965,14 +965,14 @@ } }, "node_modules/@npmcli/config": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.3.1.tgz", - "integrity": "sha512-lEY3TnkVrNUwI0vCDTFlKTbxK9DxZ83JmXXcQI7kp7pyg7zj/a36xSDmcikXvUbtV2PQpmUwmV0HDAB94NcgNA==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.3.2.tgz", + "integrity": "sha512-IMzf+fhRXibqh9mBwXK/QFIr97SAlZjfwsWPEz/2pST1cE9k9LcwznO7aDNXJoMrDjxPHZmb2bAAKASsa6EedA==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^4.0.0", "ini": "^4.1.2", - "nopt": "^7.0.0", + "nopt": "^7.2.1", "proc-log": "^4.2.0", "read-package-json-fast": "^3.0.2", "semver": "^7.3.5", @@ -1223,11 +1223,11 @@ } }, "node_modules/@sigstore/bundle": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.1.tgz", - "integrity": "sha512-eqV17lO3EIFqCWK3969Rz+J8MYrRZKw9IBHpSo6DEcEX2c+uzDFOgHE9f2MnyDpfs48LFO4hXmk9KhQ74JzU1g==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz", + "integrity": "sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA==", "dependencies": { - "@sigstore/protobuf-specs": "^0.3.1" + "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -1250,13 +1250,13 @@ } }, "node_modules/@sigstore/sign": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.1.tgz", - "integrity": "sha512-YZ71wKIOweC8ViUeZXboz0iPLqMkskxuoeN/D1CEpAyZvEepbX9oRMIoO6a/DxUqO1VEaqmcmmqzSiqtOsvSmw==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz", + "integrity": "sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA==", "dependencies": { - "@sigstore/bundle": "^2.3.0", + "@sigstore/bundle": "^2.3.2", "@sigstore/core": "^1.0.0", - "@sigstore/protobuf-specs": "^0.3.1", + "@sigstore/protobuf-specs": "^0.3.2", "make-fetch-happen": "^13.0.1", "proc-log": "^4.2.0", "promise-retry": "^2.0.1" @@ -1266,11 +1266,11 @@ } }, "node_modules/@sigstore/tuf": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.3.tgz", - "integrity": "sha512-agQhHNkIddXFslkudjV88vTXiAMEyUtso3at6ZHUNJ1agZb7Ze6VW/PddHipdWBu1t+8OWLW5X5yZOPiOnaWJQ==", + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz", + "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==", "dependencies": { - "@sigstore/protobuf-specs": "^0.3.0", + "@sigstore/protobuf-specs": "^0.3.2", "tuf-js": "^2.2.1" }, "engines": { @@ -1278,13 +1278,13 @@ } }, "node_modules/@sigstore/verify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.0.tgz", - "integrity": "sha512-hQF60nc9yab+Csi4AyoAmilGNfpXT+EXdBgFkP9OgPwIBPwyqVf7JAWPtmqrrrneTmAT6ojv7OlH1f6Ix5BG4Q==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz", + "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==", "dependencies": { - "@sigstore/bundle": "^2.3.1", + "@sigstore/bundle": "^2.3.2", "@sigstore/core": "^1.1.0", - "@sigstore/protobuf-specs": "^0.3.1" + "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -1430,9 +1430,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.8.0.tgz", - "integrity": "sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.9.0.tgz", + "integrity": "sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -1443,9 +1443,9 @@ } }, "node_modules/@ui5/builder": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.4.0.tgz", - "integrity": "sha512-tp1d67imk/oUFoXjplC6EXbvgJpk7Ha3z8nuWDC5HyCbALDeVbLfoFeUJDeS8etjHpV2zIJjw3dp+P/fbEDt/Q==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.4.1.tgz", + "integrity": "sha512-WS8mpFBujLPawgjpAjjCyg5hYjTs6LQyvarazF/1xCgDpQ99rFilsDvsKVuhugk75CWAOBsGz0Yyqd+38ICO4A==", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.5", @@ -1455,12 +1455,12 @@ "escope": "^4.0.0", "espree": "^9.6.1", "graceful-fs": "^4.2.11", - "jsdoc": "^4.0.2", + "jsdoc": "^4.0.3", "less-openui5": "^0.11.6", "pretty-data": "^0.40.0", - "rimraf": "^5.0.5", - "semver": "^7.6.0", - "terser": "^5.30.3", + "rimraf": "^5.0.6", + "semver": "^7.6.2", + "terser": "^5.31.0", "workerpool": "^6.5.1", "xml2js": "^0.6.2" }, @@ -2277,9 +2277,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001617", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001617.tgz", - "integrity": "sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA==", + "version": "1.0.30001620", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001620.tgz", + "integrity": "sha512-WJvYsOjd1/BYUY6SNGUosK9DUidBPDTnOARHp3fSmFO1ekdxaY6nKRttEVrfMmYi80ctS0kz1wiWmm14fVc3ew==", "dev": true, "funding": [ { @@ -3475,9 +3475,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.763", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.763.tgz", - "integrity": "sha512-k4J8NrtJ9QrvHLRo8Q18OncqBCB7tIUyqxRcJnlonQ0ioHKYB988GcDFF3ZePmnb8eHEopDs/wPHR/iGAFgoUQ==", + "version": "1.4.774", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.774.tgz", + "integrity": "sha512-132O1XCd7zcTkzS3FgkAzKmnBuNJjK8WjcTtNuoylj7MYbqw5eXehjQ5OK91g0zm7OTKIPeaAG4CPoRfD9M1Mg==", "dev": true }, "node_modules/emittery": { @@ -3687,9 +3687,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.4.tgz", - "integrity": "sha512-3ebvVgCJFy06gpmuS2ynz13uh9iFSzZ1C1dDkgcSAqVVg82zlORKMk2fvjq708pAO6bwfs5YLttknFEbaoDiGw==", + "version": "48.2.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.5.tgz", + "integrity": "sha512-ZeTfKV474W1N9niWfawpwsXGu+ZoMXu4417eBROX31d7ZuOk8zyG66SO77DpJ2+A9Wa2scw/jRqBPnnQo7VbcQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.43.0", @@ -3699,7 +3699,7 @@ "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", "is-builtin-module": "^3.2.1", - "semver": "^7.6.0", + "semver": "^7.6.1", "spdx-expression-parse": "^4.0.0" }, "engines": { @@ -7120,9 +7120,9 @@ } }, "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" }, "node_modules/picomatch": { "version": "3.0.1", @@ -7805,16 +7805,16 @@ } }, "node_modules/sigstore": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.0.tgz", - "integrity": "sha512-q+o8L2ebiWD1AxD17eglf1pFrl9jtW7FHa0ygqY6EKvibK8JHyq9Z26v9MZXeDiw+RbfOJ9j2v70M10Hd6E06A==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz", + "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==", "dependencies": { - "@sigstore/bundle": "^2.3.1", + "@sigstore/bundle": "^2.3.2", "@sigstore/core": "^1.0.0", - "@sigstore/protobuf-specs": "^0.3.1", - "@sigstore/sign": "^2.3.0", - "@sigstore/tuf": "^2.3.1", - "@sigstore/verify": "^1.2.0" + "@sigstore/protobuf-specs": "^0.3.2", + "@sigstore/sign": "^2.3.2", + "@sigstore/tuf": "^2.3.4", + "@sigstore/verify": "^1.2.1" }, "engines": { "node": "^16.14.0 || >=18.0.0" @@ -7824,6 +7824,7 @@ "version": "17.0.2", "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.2.tgz", "integrity": "sha512-uihLiaB9FhzesElPDFZA7hDcNABzsVHwr3YfmM9sBllVwab3l0ltGlRV1XhpNfIacNDLGD1QRZNLs5nU5+hTuA==", + "deprecated": "There", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1", @@ -8817,9 +8818,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz", - "integrity": "sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==", + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", + "integrity": "sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==", "dev": true, "funding": [ { @@ -8837,7 +8838,7 @@ ], "dependencies": { "escalade": "^3.1.2", - "picocolors": "^1.0.0" + "picocolors": "^1.0.1" }, "bin": { "update-browserslist-db": "cli.js" diff --git a/packages/project/package.json b/packages/project/package.json index c574896f697..749c923ef4f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,8 +120,8 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.3.1", - "@ui5/builder": "^3.4.0", + "@npmcli/config": "^8.3.2", + "@ui5/builder": "^3.4.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -154,7 +154,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.4", + "eslint-plugin-jsdoc": "^48.2.5", "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", From 668db7207e50cdba8d6f6e49b8f1025c75b687c0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 22 May 2024 12:22:23 +0000 Subject: [PATCH 1103/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 57 ++++++++++++++++-------------- 1 file changed, 30 insertions(+), 27 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1db8c2f35c7..e85f05099d7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1430,9 +1430,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.9.0.tgz", - "integrity": "sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w==", + "version": "7.10.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.10.0.tgz", + "integrity": "sha512-7fNj+Ya35aNyhuqrA1E/VayQX9Elwr8NKZ4WueClR3KwJ7Xx9jcCdOrLW04h51de/+gNbyFMs+IDxh5xIwfbNg==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -1846,6 +1846,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "deprecated": "This package is no longer supported.", "dev": true, "dependencies": { "delegates": "^1.0.0", @@ -2095,11 +2096,11 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -2277,9 +2278,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001620", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001620.tgz", - "integrity": "sha512-WJvYsOjd1/BYUY6SNGUosK9DUidBPDTnOARHp3fSmFO1ekdxaY6nKRttEVrfMmYi80ctS0kz1wiWmm14fVc3ew==", + "version": "1.0.30001621", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001621.tgz", + "integrity": "sha512-+NLXZiviFFKX0fk8Piwv3PfLPGtRqJeq2TiNoUff/qB5KJgwecJTvCXDpmlyP/eCI/GUEmp/h/y5j0yckiiZrA==", "dev": true, "funding": [ { @@ -3475,9 +3476,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.774", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.774.tgz", - "integrity": "sha512-132O1XCd7zcTkzS3FgkAzKmnBuNJjK8WjcTtNuoylj7MYbqw5eXehjQ5OK91g0zm7OTKIPeaAG4CPoRfD9M1Mg==", + "version": "1.4.777", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.777.tgz", + "integrity": "sha512-n02NCwLJ3wexLfK/yQeqfywCblZqLcXphzmid5e8yVPdtEcida7li0A5WQKghHNG0FeOMCzeFOzEbtAh5riXFw==", "dev": true }, "node_modules/emittery": { @@ -4214,9 +4215,9 @@ "dev": true }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -4447,6 +4448,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "deprecated": "This package is no longer supported.", "dev": true, "dependencies": { "aproba": "^1.0.3 || ^2.0.0", @@ -4542,12 +4544,12 @@ } }, "node_modules/glob": { - "version": "10.3.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.15.tgz", - "integrity": "sha512-0c6RlJt1TICLyvJYIApxb8GsXoai0KUP7AxKKAtsYXdgJR1mGEUa7DgwShbdk1nly0PYoZj01xd4hzbq3fsjpw==", + "version": "10.3.16", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.16.tgz", + "integrity": "sha512-JDKXl1DiuuHJ6fVS2FXjownaavciiHNUU4mOvV/B793RLh05vZL1rcPnCSaOgv1hDT6RDlY7AB7ZUvFYAtPgAw==", "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.6", + "jackspeak": "^3.1.2", "minimatch": "^9.0.1", "minipass": "^7.0.4", "path-scurry": "^1.11.0" @@ -5371,9 +5373,9 @@ } }, "node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.1.2.tgz", + "integrity": "sha512-kWmLKn2tRtfYMF/BakihVVRzBKOxz4gJMiL2Rj91WnAB5TPZumSH99R/Yf1qE1u4uRimvCSJfm6hnxohXeEXjQ==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -5867,11 +5869,11 @@ "dev": true }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -6467,6 +6469,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "deprecated": "This package is no longer supported.", "dev": true, "dependencies": { "are-we-there-yet": "^2.0.0", From a9e7d92b29cabfe6fa09aa034bfcd4e1002eabe0 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 26 May 2024 02:20:23 +0000 Subject: [PATCH 1104/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 314 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 150 insertions(+), 166 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e85f05099d7..5d1bcf00e1e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.5", + "eslint-plugin-jsdoc": "^48.2.6", "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -80,11 +80,11 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.6.tgz", + "integrity": "sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA==", "dependencies": { - "@babel/highlight": "^7.24.2", + "@babel/highlight": "^7.24.6", "picocolors": "^1.0.0" }, "engines": { @@ -92,30 +92,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", - "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.6.tgz", + "integrity": "sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", - "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz", + "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.24.5", - "@babel/helpers": "^7.24.5", - "@babel/parser": "^7.24.5", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.5", - "@babel/types": "^7.24.5", + "@babel/code-frame": "^7.24.6", + "@babel/generator": "^7.24.6", + "@babel/helper-compilation-targets": "^7.24.6", + "@babel/helper-module-transforms": "^7.24.6", + "@babel/helpers": "^7.24.6", + "@babel/parser": "^7.24.6", + "@babel/template": "^7.24.6", + "@babel/traverse": "^7.24.6", + "@babel/types": "^7.24.6", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -140,12 +140,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", - "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.6.tgz", + "integrity": "sha512-S7m4eNa6YAPJRHmKsLHIDJhNAGNKoWNiWefz1MBbpnt8g9lvMDl1hir4P9bo/57bQEmuwEhnRU/AMWsD0G/Fbg==", "dev": true, "dependencies": { - "@babel/types": "^7.24.5", + "@babel/types": "^7.24.6", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -155,13 +155,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.6.tgz", + "integrity": "sha512-VZQ57UsDGlX/5fFA7GkVPplZhHsVc+vuErWgdOiysI9Ksnw0Pbbd6pnPiR/mmJyKHgyIW0c7KT32gmhiF+cirg==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", + "@babel/compat-data": "^7.24.6", + "@babel/helper-validator-option": "^7.24.6", "browserslist": "^4.22.2", "lru-cache": "^5.1.1", "semver": "^6.3.1" @@ -180,62 +180,62 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.6.tgz", + "integrity": "sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.6.tgz", + "integrity": "sha512-xpeLqeeRkbxhnYimfr2PC+iA0Q7ljX/d1eZ9/inYbmfG2jpl8Lu3DyXvpOAnrS5kxkfOWJjioIMQsaMBXFI05w==", "dev": true, "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" + "@babel/template": "^7.24.6", + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.6.tgz", + "integrity": "sha512-SF/EMrC3OD7dSta1bLJIlrsVxwtd0UpjRJqLno6125epQMJ/kyFmpTT4pbvPbdQHzCHg+biQ7Syo8lnDtbR+uA==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.6.tgz", + "integrity": "sha512-a26dmxFJBF62rRO9mmpgrfTLsAuyHk4e1hKTUkD/fcMfynt8gvEKwQPQDVxWhca8dHoDck+55DFt42zV0QMw5g==", "dev": true, "dependencies": { - "@babel/types": "^7.24.0" + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", - "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.6.tgz", + "integrity": "sha512-Y/YMPm83mV2HJTbX1Qh2sjgjqcacvOlhbzdCCsSlblOKjSYmQqEbO6rUniWQyRo9ncyfjT8hnUjlG06RXDEmcA==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.24.3", - "@babel/helper-simple-access": "^7.24.5", - "@babel/helper-split-export-declaration": "^7.24.5", - "@babel/helper-validator-identifier": "^7.24.5" + "@babel/helper-environment-visitor": "^7.24.6", + "@babel/helper-module-imports": "^7.24.6", + "@babel/helper-simple-access": "^7.24.6", + "@babel/helper-split-export-declaration": "^7.24.6", + "@babel/helper-validator-identifier": "^7.24.6" }, "engines": { "node": ">=6.9.0" @@ -245,84 +245,83 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz", - "integrity": "sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.6.tgz", + "integrity": "sha512-MZG/JcWfxybKwsA9N9PmtF2lOSFSEMVCpIRrbxccZFLJPrJciJdG/UhSh5W96GEteJI2ARqm5UAHxISwRDLSNg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", - "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.6.tgz", + "integrity": "sha512-nZzcMMD4ZhmB35MOOzQuiGO5RzL6tJbsT37Zx8M5L/i9KSrukGXWTjLe1knIbb/RmxoJE9GON9soq0c0VEMM5g==", "dev": true, "dependencies": { - "@babel/types": "^7.24.5" + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", - "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.6.tgz", + "integrity": "sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw==", "dev": true, "dependencies": { - "@babel/types": "^7.24.5" + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.6.tgz", + "integrity": "sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", - "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz", + "integrity": "sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.6.tgz", + "integrity": "sha512-Jktc8KkF3zIkePb48QO+IapbXlSapOW9S+ogZZkcO6bABgYAxtZcjZ/O005111YLf+j4M84uEgwYoidDkXbCkQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", - "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.6.tgz", + "integrity": "sha512-V2PI+NqnyFu1i0GyTd/O/cTpxzQCYioSkUIRmgo7gFEHKKCg5w46+r/A6WeUR1+P3TeQ49dspGPNd/E3n9AnnA==", "dev": true, "dependencies": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.5", - "@babel/types": "^7.24.5" + "@babel/template": "^7.24.6", + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", - "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.6.tgz", + "integrity": "sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ==", "dependencies": { - "@babel/helper-validator-identifier": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.6", "chalk": "^2.4.2", "js-tokens": "^4.0.0", "picocolors": "^1.0.0" @@ -383,9 +382,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", - "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.6.tgz", + "integrity": "sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==", "bin": { "parser": "bin/babel-parser.js" }, @@ -394,33 +393,33 @@ } }, "node_modules/@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.6.tgz", + "integrity": "sha512-3vgazJlLwNXi9jhrR1ef8qiB65L1RK90+lEQwv4OxveHnqC3BfmnHdgySwRLzf6akhlOYenT+b7AfWq+a//AHw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" + "@babel/code-frame": "^7.24.6", + "@babel/parser": "^7.24.6", + "@babel/types": "^7.24.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", - "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.24.5", - "@babel/parser": "^7.24.5", - "@babel/types": "^7.24.5", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.6.tgz", + "integrity": "sha512-OsNjaJwT9Zn8ozxcfoBc+RaHdj3gFmCmYoQLUII1o6ZrUwku0BMg80FoOTPx+Gi6XhcQxAYE4xyjPTo4SxEQqw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.6", + "@babel/generator": "^7.24.6", + "@babel/helper-environment-visitor": "^7.24.6", + "@babel/helper-function-name": "^7.24.6", + "@babel/helper-hoist-variables": "^7.24.6", + "@babel/helper-split-export-declaration": "^7.24.6", + "@babel/parser": "^7.24.6", + "@babel/types": "^7.24.6", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -429,13 +428,13 @@ } }, "node_modules/@babel/types": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", - "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.6.tgz", + "integrity": "sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.24.1", - "@babel/helper-validator-identifier": "^7.24.5", + "@babel/helper-string-parser": "^7.24.6", + "@babel/helper-validator-identifier": "^7.24.6", "to-fast-properties": "^2.0.0" }, "engines": { @@ -828,6 +827,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -875,6 +875,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -1578,6 +1579,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -2143,18 +2145,6 @@ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, - "node_modules/builtin-modules": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", - "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/bundle-name": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", @@ -3476,9 +3466,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.777", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.777.tgz", - "integrity": "sha512-n02NCwLJ3wexLfK/yQeqfywCblZqLcXphzmid5e8yVPdtEcida7li0A5WQKghHNG0FeOMCzeFOzEbtAh5riXFw==", + "version": "1.4.783", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.783.tgz", + "integrity": "sha512-bT0jEz/Xz1fahQpbZ1D7LgmPYZ3iHVY39NcWWro1+hA2IvjiPeaXtfSqrQ+nXjApMvQRE2ASt1itSLRrebHMRQ==", "dev": true }, "node_modules/emittery": { @@ -3688,9 +3678,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.5.tgz", - "integrity": "sha512-ZeTfKV474W1N9niWfawpwsXGu+ZoMXu4417eBROX31d7ZuOk8zyG66SO77DpJ2+A9Wa2scw/jRqBPnnQo7VbcQ==", + "version": "48.2.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.6.tgz", + "integrity": "sha512-GNk9jtpYmoEVeD/U6yYYmd6T8vSOoPs7CL8ZeX85iD8P3qifDdLQGze6+cw9boobDthmYnnxvIoHrhuSffj09g==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.43.0", @@ -3699,7 +3689,6 @@ "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", - "is-builtin-module": "^3.2.1", "semver": "^7.6.1", "spdx-expression-parse": "^4.0.0" }, @@ -4321,6 +4310,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -4353,6 +4343,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -4544,15 +4535,15 @@ } }, "node_modules/glob": { - "version": "10.3.16", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.16.tgz", - "integrity": "sha512-JDKXl1DiuuHJ6fVS2FXjownaavciiHNUU4mOvV/B793RLh05vZL1rcPnCSaOgv1hDT6RDlY7AB7ZUvFYAtPgAw==", + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", + "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", - "minimatch": "^9.0.1", - "minipass": "^7.0.4", - "path-scurry": "^1.11.0" + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" @@ -4943,6 +4934,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, "dependencies": { "once": "^1.3.0", @@ -4956,9 +4948,9 @@ "dev": true }, "node_modules/ini": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", - "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", + "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -5002,21 +4994,6 @@ "node": ">=8" } }, - "node_modules/is-builtin-module": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", - "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", - "dev": true, - "dependencies": { - "builtin-modules": "^3.3.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-core-module": { "version": "2.13.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", @@ -5261,6 +5238,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -5305,6 +5283,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -5938,9 +5917,9 @@ } }, "node_modules/minipass": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz", - "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "engines": { "node": ">=16 || 14 >=14.17" } @@ -6616,6 +6595,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -6675,6 +6655,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -7428,9 +7409,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.2.tgz", - "integrity": "sha512-+suCYpfJLAe4OXS6+PPXjW3urOS4IoP9waSiLuXfLgqZODKw/aWwASvzqE886wA0kQgGy0mIWyhd87VpqIy6Xg==", + "version": "4.18.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.3.tgz", + "integrity": "sha512-Q08/0IrpvM+NMY9PA2rti9Jb+JejTddwmwmVQGskAlhtcrw1wsRzoR6ode6mR+OAabNa75w/dxedSUY2mlphaQ==", "engines": { "node": ">=16" }, @@ -7473,9 +7454,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.2.tgz", - "integrity": "sha512-+suCYpfJLAe4OXS6+PPXjW3urOS4IoP9waSiLuXfLgqZODKw/aWwASvzqE886wA0kQgGy0mIWyhd87VpqIy6Xg==", + "version": "4.18.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.3.tgz", + "integrity": "sha512-Q08/0IrpvM+NMY9PA2rti9Jb+JejTddwmwmVQGskAlhtcrw1wsRzoR6ode6mR+OAabNa75w/dxedSUY2mlphaQ==", "engines": { "node": ">=16" }, @@ -7985,6 +7966,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -8017,6 +7999,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -8068,9 +8051,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", - "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==" + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", + "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==" }, "node_modules/sprintf-js": { "version": "1.1.3", @@ -8584,6 +8567,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 749c923ef4f..aad4ab2c941 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -154,7 +154,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.5", + "eslint-plugin-jsdoc": "^48.2.6", "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", From c6da92d44bebb3fa1c318cc4127e60b9fedbde70 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 19 May 2024 10:48:42 +0000 Subject: [PATCH 1105/1272] [ui5-project][INTERNAL] Bump sinon from 17.0.2 to 18.0.0 Bumps [sinon](https://github.com/sinonjs/sinon) from 17.0.2 to 18.0.0. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md) - [Commits](https://github.com/sinonjs/sinon/compare/v17.0.2...v18.0.0) --- updated-dependencies: - dependency-name: sinon dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 17 ++++++++--------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5d1bcf00e1e..e33a9018471 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -53,7 +53,7 @@ "jsdoc": "^4.0.3", "nyc": "^15.1.0", "open-cli": "^8.0.0", - "sinon": "^17.0.2", + "sinon": "^18.0.0", "tap-xunit": "^2.4.1" }, "engines": { @@ -6185,9 +6185,9 @@ } }, "node_modules/nise": { - "version": "5.1.9", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.9.tgz", - "integrity": "sha512-qOnoujW4SV6e40dYxJOb3uvuoPHtmLzIk4TFo+j0jPJoC+5Z9xja5qH5JZobEPsa8+YYphMrOSwnrshEhG2qww==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nise/-/nise-6.0.0.tgz", + "integrity": "sha512-K8ePqo9BFvN31HXwEtTNGzgrPpmvgciDsFz8aztFjt4LqKO/JeFD8tBOeuDiCMXrIl/m1YvfH8auSpxfaD09wg==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", @@ -7805,17 +7805,16 @@ } }, "node_modules/sinon": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.2.tgz", - "integrity": "sha512-uihLiaB9FhzesElPDFZA7hDcNABzsVHwr3YfmM9sBllVwab3l0ltGlRV1XhpNfIacNDLGD1QRZNLs5nU5+hTuA==", - "deprecated": "There", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-18.0.0.tgz", + "integrity": "sha512-+dXDXzD1sBO6HlmZDd7mXZCR/y5ECiEiGCBSGuFD/kZ0bDTofPYc6JaeGmPSF+1j1MejGUWkORbYOLDyvqCWpA==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1", "@sinonjs/fake-timers": "^11.2.2", "@sinonjs/samsam": "^8.0.0", "diff": "^5.2.0", - "nise": "^5.1.9", + "nise": "^6.0.0", "supports-color": "^7" }, "funding": { diff --git a/packages/project/package.json b/packages/project/package.json index aad4ab2c941..1665e7c6a06 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -164,7 +164,7 @@ "jsdoc": "^4.0.3", "nyc": "^15.1.0", "open-cli": "^8.0.0", - "sinon": "^17.0.2", + "sinon": "^18.0.0", "tap-xunit": "^2.4.1" } } From 3b267ad948b90bd70a9fed699f82593d15465243 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 2 Jun 2024 02:20:18 +0000 Subject: [PATCH 1106/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 62 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e33a9018471..c2defa830b2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "4.0.0-alpha", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.3.2", + "@npmcli/config": "^8.3.3", "@ui5/builder": "^3.4.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -43,7 +43,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.6", + "eslint-plugin-jsdoc": "^48.2.7", "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -442,9 +442,9 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.43.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.43.0.tgz", - "integrity": "sha512-Q1CnsQrytI3TlCB1IVWXWeqUIPGVEKGaE7IbVdt13Nq/3i0JESAkQQERrfiQkmlpijl+++qyqPgaS31Bvc1jRQ==", + "version": "0.43.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.43.1.tgz", + "integrity": "sha512-I238eDtOolvCuvtxrnqtlBaw0BwdQuYqK7eA6XIonicMdOOOb75mqdIzkGDUbS04+1Di007rgm9snFRNeVrOog==", "dev": true, "dependencies": { "@types/eslint": "^8.56.5", @@ -966,9 +966,9 @@ } }, "node_modules/@npmcli/config": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.3.2.tgz", - "integrity": "sha512-IMzf+fhRXibqh9mBwXK/QFIr97SAlZjfwsWPEz/2pST1cE9k9LcwznO7aDNXJoMrDjxPHZmb2bAAKASsa6EedA==", + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.3.3.tgz", + "integrity": "sha512-sIMKHiiYr91ALiHjhPq64F5P/SCaiSyDfpNmgYHtlIJtLY445+3+r3VoREzpdDrOwIqwQ6iEHinbTfaocL0UgA==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", "ci-info": "^4.0.0", @@ -1088,9 +1088,9 @@ } }, "node_modules/@npmcli/package-json": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.1.0.tgz", - "integrity": "sha512-1aL4TuVrLS9sf8quCLerU3H9J4vtCtgu8VauYozrmEyU57i/EdKleCnsQ7vpnABIH6c9mnTxcH5sFkO3BlV8wQ==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.1.1.tgz", + "integrity": "sha512-uTq5j/UqUzbOaOxVy+osfOhpqOiLfUZ0Ut33UbcyyAPJbZcJsf4Mrsyb8r58FoIFlofw0iOFsuCA/oDK14VDJQ==", "dependencies": { "@npmcli/git": "^5.0.0", "glob": "^10.2.2", @@ -1431,9 +1431,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.10.0.tgz", - "integrity": "sha512-7fNj+Ya35aNyhuqrA1E/VayQX9Elwr8NKZ4WueClR3KwJ7Xx9jcCdOrLW04h51de/+gNbyFMs+IDxh5xIwfbNg==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.11.0.tgz", + "integrity": "sha512-MPEsDRZTyCiXkD4vd3zywDCifi7tatc4K37KqTprCvaXptP7Xlpdw0NR2hRJTetG5TxbWDB79Ys4kLmHliEo/w==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -2268,9 +2268,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001621", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001621.tgz", - "integrity": "sha512-+NLXZiviFFKX0fk8Piwv3PfLPGtRqJeq2TiNoUff/qB5KJgwecJTvCXDpmlyP/eCI/GUEmp/h/y5j0yckiiZrA==", + "version": "1.0.30001626", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001626.tgz", + "integrity": "sha512-JRW7kAH8PFJzoPCJhLSHgDgKg5348hsQ68aqb+slnzuB5QFERv846oA/mRChmlLAOdEDeOkRn3ynb1gSFnjt3w==", "dev": true, "funding": [ { @@ -3008,9 +3008,9 @@ } }, "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", "dependencies": { "ms": "2.1.2" }, @@ -3466,9 +3466,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.783", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.783.tgz", - "integrity": "sha512-bT0jEz/Xz1fahQpbZ1D7LgmPYZ3iHVY39NcWWro1+hA2IvjiPeaXtfSqrQ+nXjApMvQRE2ASt1itSLRrebHMRQ==", + "version": "1.4.788", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.788.tgz", + "integrity": "sha512-ubp5+Ev/VV8KuRoWnfP2QF2Bg+O2ZFdb49DiiNbz2VmgkIqrnyYaqIOqj8A6K/3p1xV0QcU5hBQ1+BmB6ot1OA==", "dev": true }, "node_modules/emittery": { @@ -3678,18 +3678,18 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.6", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.6.tgz", - "integrity": "sha512-GNk9jtpYmoEVeD/U6yYYmd6T8vSOoPs7CL8ZeX85iD8P3qifDdLQGze6+cw9boobDthmYnnxvIoHrhuSffj09g==", + "version": "48.2.7", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.7.tgz", + "integrity": "sha512-fYj3roTnkFL9OFFTB129rico8lerC5G8Vp2ZW9SjO9RNWG0exVvI+i/Y8Bpm1ufjR0uvT38xtoab/U0Hp8Ybog==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.43.0", + "@es-joy/jsdoccomment": "~0.43.1", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", - "semver": "^7.6.1", + "semver": "^7.6.2", "spdx-expression-parse": "^4.0.0" }, "engines": { @@ -7704,9 +7704,9 @@ "optional": true }, "node_modules/sax": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", - "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" }, "node_modules/semver": { "version": "7.6.2", diff --git a/packages/project/package.json b/packages/project/package.json index 1665e7c6a06..a7c7858a7c8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.3.2", + "@npmcli/config": "^8.3.3", "@ui5/builder": "^3.4.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", @@ -154,7 +154,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.6", + "eslint-plugin-jsdoc": "^48.2.7", "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", From 44c5ae462a3ab2a422d43efe93100c89e1048115 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 7 Jun 2024 10:12:24 +0200 Subject: [PATCH 1107/1272] [ui5-project][BREAKING] Make '@ui5/builder' an optional peerDependency This decoupling allows the use of @ui5/project without having to install @ui5/builder with all its transitive dependencies in cases where no build functionality is required. An example for that is UI5 linter. BREAKING CHANGE: Consumers of the Node.js API that make use of the ProjectGraph#build method need to declare a dependency to '@ui5/builder' in their respective package.json. The package manager should ensure that the version fullfills the range specified in the package.json of '@ui5/project'. --- packages/project/lib/graph/ProjectGraph.js | 8 +- packages/project/package-lock.json | 129 ++++++++++++++++++--- packages/project/package.json | 9 +- 3 files changed, 128 insertions(+), 18 deletions(-) diff --git a/packages/project/lib/graph/ProjectGraph.js b/packages/project/lib/graph/ProjectGraph.js index 38ff3afff5d..ba6967154e6 100644 --- a/packages/project/lib/graph/ProjectGraph.js +++ b/packages/project/lib/graph/ProjectGraph.js @@ -513,7 +513,13 @@ class ProjectGraph { async _getTaskRepository() { if (!this._taskRepository) { - this._taskRepository = await import("@ui5/builder/internal/taskRepository"); + try { + this._taskRepository = await import("@ui5/builder/internal/taskRepository"); + } catch (err) { + throw new Error( + `Failed to load task repository. Missing dependency to '@ui5/builder'? ` + + `Error: ${err.message}`); + } } return this._taskRepository; } diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c2defa830b2..d92e12b3e85 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,6 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.3.3", - "@ui5/builder": "^3.4.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -59,12 +58,22 @@ "engines": { "node": "^20.11.0 || >=21.2.0", "npm": ">= 10" + }, + "peerDependencies": { + "@ui5/builder": "^3.4.1" + }, + "peerDependenciesMeta": { + "@ui5/builder": { + "optional": true + } } }, "node_modules/@adobe/css-tools": { "version": "4.3.3", "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.3.tgz", - "integrity": "sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==" + "integrity": "sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==", + "optional": true, + "peer": true }, "node_modules/@ampproject/remapping": { "version": "2.3.0", @@ -385,6 +394,7 @@ "version": "7.24.6", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.6.tgz", "integrity": "sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==", + "devOptional": true, "bin": { "parser": "bin/babel-parser.js" }, @@ -728,6 +738,7 @@ "version": "0.3.5", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "devOptional": true, "dependencies": { "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", @@ -741,6 +752,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "devOptional": true, "engines": { "node": ">=6.0.0" } @@ -749,6 +761,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "devOptional": true, "engines": { "node": ">=6.0.0" } @@ -757,6 +770,8 @@ "version": "0.3.6", "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "optional": true, + "peer": true, "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25" @@ -765,12 +780,14 @@ "node_modules/@jridgewell/sourcemap-codec": { "version": "1.4.15", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "devOptional": true }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.25", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "devOptional": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -780,6 +797,7 @@ "version": "0.2.8", "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.8.tgz", "integrity": "sha512-5e+SFVavj1ORKlKaKr2BmTOekmXbelU7dC0cDkQLqag7xfuTPuGMUFx7KWJuv4bYZrTsoL2Z18VVCOKYxzoHcg==", + "devOptional": true, "dependencies": { "lodash": "^4.17.21" }, @@ -1397,12 +1415,14 @@ "node_modules/@types/linkify-it": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", - "integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==" + "integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==", + "devOptional": true }, "node_modules/@types/markdown-it": { "version": "14.1.1", "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.1.tgz", "integrity": "sha512-4NpsnpYl2Gt1ljyBGrKMxFYAYvpqbnnkgP/i/g+NLpjEUa3obn1XJCur9YbEXKDAkaXqsR1LbDnGEJ0MmKFxfg==", + "devOptional": true, "dependencies": { "@types/linkify-it": "^5", "@types/mdurl": "^2" @@ -1411,7 +1431,8 @@ "node_modules/@types/mdurl": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz", - "integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==" + "integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==", + "devOptional": true }, "node_modules/@types/minimatch": { "version": "3.0.5", @@ -1447,6 +1468,8 @@ "version": "3.4.1", "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.4.1.tgz", "integrity": "sha512-WS8mpFBujLPawgjpAjjCyg5hYjTs6LQyvarazF/1xCgDpQ99rFilsDvsKVuhugk75CWAOBsGz0Yyqd+38ICO4A==", + "optional": true, + "peer": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15", "@ui5/fs": "^3.0.5", @@ -1676,6 +1699,7 @@ "version": "8.11.3", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "devOptional": true, "bin": { "acorn": "bin/acorn" }, @@ -1696,6 +1720,7 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "devOptional": true, "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } @@ -2076,7 +2101,8 @@ "node_modules/bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "devOptional": true }, "node_modules/blueimp-md5": { "version": "2.19.0", @@ -2087,7 +2113,9 @@ "node_modules/boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "optional": true, + "peer": true }, "node_modules/brace-expansion": { "version": "2.0.1", @@ -2143,7 +2171,9 @@ "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "optional": true, + "peer": true }, "node_modules/bundle-name": { "version": "4.1.0", @@ -2291,6 +2321,7 @@ "version": "0.9.0", "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.9.0.tgz", "integrity": "sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==", + "devOptional": true, "dependencies": { "lodash": "^4.17.15" }, @@ -2325,6 +2356,8 @@ "version": "1.0.0-rc.12", "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "optional": true, + "peer": true, "dependencies": { "cheerio-select": "^2.1.0", "dom-serializer": "^2.0.0", @@ -2345,6 +2378,8 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "optional": true, + "peer": true, "dependencies": { "boolbase": "^1.0.0", "css-select": "^5.1.0", @@ -2961,6 +2996,8 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "optional": true, + "peer": true, "dependencies": { "boolbase": "^1.0.0", "css-what": "^6.1.0", @@ -2976,6 +3013,8 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "optional": true, + "peer": true, "engines": { "node": ">= 6" }, @@ -3374,6 +3413,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "optional": true, + "peer": true, "dependencies": { "domelementtype": "^2.3.0", "domhandler": "^5.0.2", @@ -3392,12 +3433,16 @@ "type": "github", "url": "https://github.com/sponsors/fb55" } - ] + ], + "optional": true, + "peer": true }, "node_modules/domhandler": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "optional": true, + "peer": true, "dependencies": { "domelementtype": "^2.3.0" }, @@ -3412,6 +3457,8 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "optional": true, + "peer": true, "dependencies": { "dom-serializer": "^2.0.0", "domelementtype": "^2.3.0", @@ -3513,6 +3560,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "devOptional": true, "engines": { "node": ">=0.12" }, @@ -3572,6 +3620,8 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/escape-unicode/-/escape-unicode-0.2.0.tgz", "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==", + "optional": true, + "peer": true, "engines": { "node": ">=8" } @@ -3580,6 +3630,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/escope/-/escope-4.0.0.tgz", "integrity": "sha512-E36qlD/r6RJHVpPKArgMoMlNJzoRJFH8z/cAZlI9lbc45zB3+S7i9k6e/MNb+7bZQzNEa6r8WKN3BovpeIBwgA==", + "optional": true, + "peer": true, "dependencies": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" @@ -3767,6 +3819,7 @@ "version": "3.4.3", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "devOptional": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -3991,6 +4044,7 @@ "version": "9.6.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "devOptional": true, "dependencies": { "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", @@ -4047,6 +4101,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "devOptional": true, "dependencies": { "estraverse": "^5.2.0" }, @@ -4058,6 +4113,7 @@ "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "devOptional": true, "engines": { "node": ">=4.0" } @@ -4066,6 +4122,8 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "optional": true, + "peer": true, "engines": { "node": ">=4.0" } @@ -4754,6 +4812,8 @@ "url": "https://github.com/sponsors/fb55" } ], + "optional": true, + "peer": true, "dependencies": { "domelementtype": "^2.3.0", "domhandler": "^5.0.3", @@ -5427,6 +5487,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.2.tgz", "integrity": "sha512-6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA==", + "devOptional": true, "dependencies": { "xmlcreate": "^2.0.4" } @@ -5440,6 +5501,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.3.tgz", "integrity": "sha512-Nu7Sf35kXJ1MWDZIMAuATRQTg1iIPdzh7tqJ6jjvaU/GfDf+qi5UV8zJR3Mo+/pYFvm8mzay4+6O5EWigaQBQw==", + "devOptional": true, "dependencies": { "@babel/parser": "^7.20.15", "@jsdoc/salty": "^0.2.1", @@ -5477,6 +5539,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "devOptional": true, "engines": { "node": ">=8" } @@ -5557,6 +5620,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", + "devOptional": true, "dependencies": { "graceful-fs": "^4.1.9" } @@ -5565,6 +5629,8 @@ "version": "0.11.6", "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.6.tgz", "integrity": "sha512-sQmU+G2pJjFfzRI+XtXkk+T9G0s6UmWWUfOW0utPR46C9lfhNr4DH1lNJuImj64reXYi+vOwyNxPRkj0F3mofA==", + "optional": true, + "peer": true, "dependencies": { "@adobe/css-tools": "^4.0.2", "clone": "^2.1.2", @@ -5598,6 +5664,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", + "devOptional": true, "dependencies": { "uc.micro": "^2.0.0" } @@ -5642,7 +5709,8 @@ "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "devOptional": true }, "node_modules/lodash.debounce": { "version": "4.0.8", @@ -5742,6 +5810,7 @@ "version": "14.1.0", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", "integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==", + "devOptional": true, "dependencies": { "argparse": "^2.0.1", "entities": "^4.4.0", @@ -5758,6 +5827,7 @@ "version": "8.6.7", "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.7.tgz", "integrity": "sha512-FlCHFwNnutLgVTflOYHPW2pPcl2AACqVzExlkGQNsi4CJgqOHN7YTgDd4LuhgN1BFO3TS0vLAruV1Td6dwWPJA==", + "devOptional": true, "peerDependencies": { "@types/markdown-it": "*", "markdown-it": "*" @@ -5767,6 +5837,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", + "devOptional": true, "bin": { "marked": "bin/marked.js" }, @@ -5804,7 +5875,8 @@ "node_modules/mdurl": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", - "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==" + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", + "devOptional": true }, "node_modules/memoize": { "version": "10.0.0", @@ -5874,6 +5946,8 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "optional": true, + "peer": true, "bin": { "mime": "cli.js" }, @@ -6461,6 +6535,8 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "optional": true, + "peer": true, "dependencies": { "boolbase": "^1.0.0" }, @@ -7003,6 +7079,8 @@ "version": "7.1.2", "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "optional": true, + "peer": true, "dependencies": { "entities": "^4.4.0" }, @@ -7014,6 +7092,8 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "optional": true, + "peer": true, "dependencies": { "domhandler": "^5.0.2", "parse5": "^7.0.0" @@ -7258,6 +7338,8 @@ "version": "0.40.0", "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==", + "optional": true, + "peer": true, "engines": { "node": "*" } @@ -7346,6 +7428,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", + "devOptional": true, "engines": { "node": ">=6" } @@ -7555,6 +7638,7 @@ "version": "0.2.4", "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.4.tgz", "integrity": "sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw==", + "devOptional": true, "dependencies": { "lodash": "^4.17.21" } @@ -7899,6 +7983,7 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "devOptional": true, "engines": { "node": ">=0.10.0" } @@ -7916,6 +8001,8 @@ "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "optional": true, + "peer": true, "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -8228,6 +8315,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "devOptional": true, "engines": { "node": ">=8" }, @@ -8520,6 +8608,8 @@ "version": "5.31.0", "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.0.tgz", "integrity": "sha512-Q1JFAoUKE5IMfI4Z/lkE/E6+SwgzO+x4tq4v1AyBLRj8VSYvRO6A/rQrPg1yud4g0En9EKI1TvFRF2tQFcoUkg==", + "optional": true, + "peer": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", @@ -8536,7 +8626,9 @@ "node_modules/terser/node_modules/commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "optional": true, + "peer": true }, "node_modules/test-exclude": { "version": "6.0.0", @@ -8748,12 +8840,14 @@ "node_modules/uc.micro": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", - "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==" + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", + "devOptional": true }, "node_modules/underscore": { "version": "1.13.6", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", - "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" + "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==", + "devOptional": true }, "node_modules/unicorn-magic": { "version": "0.1.0", @@ -8953,7 +9047,9 @@ "node_modules/workerpool": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", - "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==" + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", + "optional": true, + "peer": true }, "node_modules/wrap-ansi": { "version": "8.1.0", @@ -9112,7 +9208,8 @@ "node_modules/xmlcreate": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz", - "integrity": "sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==" + "integrity": "sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==", + "devOptional": true }, "node_modules/xtend": { "version": "4.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index a7c7858a7c8..e9a2d94a7f9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,6 @@ }, "dependencies": { "@npmcli/config": "^8.3.3", - "@ui5/builder": "^3.4.1", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -144,6 +143,14 @@ "xml2js": "^0.6.2", "yesno": "^0.4.0" }, + "peerDependencies": { + "@ui5/builder": "^3.4.1" + }, + "peerDependenciesMeta": { + "@ui5/builder": { + "optional": true + } + }, "devDependencies": { "@istanbuljs/esm-loader-hook": "^0.2.0", "ava": "^6.1.3", From 62d7a75375cd8687adbaecd5afa6f2dddf1f4c39 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Fri, 7 Jun 2024 15:05:22 +0200 Subject: [PATCH 1108/1272] [ui5-project][INTERNAL] Enhance range of @ui5/builder peer dependency This is required for local development. Otherwise npm would error out since the local 4.x version does not satisfy the ^3 range. --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index e9a2d94a7f9..188ca5f92ac 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -144,7 +144,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^3.4.1" + "@ui5/builder": "^3.4.1 || 4.0.0-alpha" }, "peerDependenciesMeta": { "@ui5/builder": { From 92ecba845e3d746cf0e6f08db54deae2367c447f Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 9 Jun 2024 02:20:16 +0000 Subject: [PATCH 1109/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 756 +++++++---------------------- packages/project/package.json | 2 +- 2 files changed, 189 insertions(+), 569 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d92e12b3e85..de51666a96c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.7", + "eslint-plugin-jsdoc": "^48.2.9", "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -60,7 +60,7 @@ "npm": ">= 10" }, "peerDependencies": { - "@ui5/builder": "^3.4.1" + "@ui5/builder": "^3.4.1 || 4.0.0-alpha" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -68,13 +68,6 @@ } } }, - "node_modules/@adobe/css-tools": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.3.tgz", - "integrity": "sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==", - "optional": true, - "peer": true - }, "node_modules/@ampproject/remapping": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", @@ -89,11 +82,11 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.6.tgz", - "integrity": "sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dependencies": { - "@babel/highlight": "^7.24.6", + "@babel/highlight": "^7.24.7", "picocolors": "^1.0.0" }, "engines": { @@ -101,30 +94,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.6.tgz", - "integrity": "sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.7.tgz", + "integrity": "sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz", - "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.7.tgz", + "integrity": "sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.6", - "@babel/generator": "^7.24.6", - "@babel/helper-compilation-targets": "^7.24.6", - "@babel/helper-module-transforms": "^7.24.6", - "@babel/helpers": "^7.24.6", - "@babel/parser": "^7.24.6", - "@babel/template": "^7.24.6", - "@babel/traverse": "^7.24.6", - "@babel/types": "^7.24.6", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-compilation-targets": "^7.24.7", + "@babel/helper-module-transforms": "^7.24.7", + "@babel/helpers": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/template": "^7.24.7", + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -149,12 +142,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.6.tgz", - "integrity": "sha512-S7m4eNa6YAPJRHmKsLHIDJhNAGNKoWNiWefz1MBbpnt8g9lvMDl1hir4P9bo/57bQEmuwEhnRU/AMWsD0G/Fbg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", + "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", "dev": true, "dependencies": { - "@babel/types": "^7.24.6", + "@babel/types": "^7.24.7", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -164,13 +157,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.6.tgz", - "integrity": "sha512-VZQ57UsDGlX/5fFA7GkVPplZhHsVc+vuErWgdOiysI9Ksnw0Pbbd6pnPiR/mmJyKHgyIW0c7KT32gmhiF+cirg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz", + "integrity": "sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.24.6", - "@babel/helper-validator-option": "^7.24.6", + "@babel/compat-data": "^7.24.7", + "@babel/helper-validator-option": "^7.24.7", "browserslist": "^4.22.2", "lru-cache": "^5.1.1", "semver": "^6.3.1" @@ -189,62 +182,66 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.6.tgz", - "integrity": "sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", "dev": true, + "dependencies": { + "@babel/types": "^7.24.7" + }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.6.tgz", - "integrity": "sha512-xpeLqeeRkbxhnYimfr2PC+iA0Q7ljX/d1eZ9/inYbmfG2jpl8Lu3DyXvpOAnrS5kxkfOWJjioIMQsaMBXFI05w==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", + "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", "dev": true, "dependencies": { - "@babel/template": "^7.24.6", - "@babel/types": "^7.24.6" + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.6.tgz", - "integrity": "sha512-SF/EMrC3OD7dSta1bLJIlrsVxwtd0UpjRJqLno6125epQMJ/kyFmpTT4pbvPbdQHzCHg+biQ7Syo8lnDtbR+uA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", + "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", "dev": true, "dependencies": { - "@babel/types": "^7.24.6" + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.6.tgz", - "integrity": "sha512-a26dmxFJBF62rRO9mmpgrfTLsAuyHk4e1hKTUkD/fcMfynt8gvEKwQPQDVxWhca8dHoDck+55DFt42zV0QMw5g==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", + "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", "dev": true, "dependencies": { - "@babel/types": "^7.24.6" + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.6.tgz", - "integrity": "sha512-Y/YMPm83mV2HJTbX1Qh2sjgjqcacvOlhbzdCCsSlblOKjSYmQqEbO6rUniWQyRo9ncyfjT8hnUjlG06RXDEmcA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz", + "integrity": "sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.24.6", - "@babel/helper-module-imports": "^7.24.6", - "@babel/helper-simple-access": "^7.24.6", - "@babel/helper-split-export-declaration": "^7.24.6", - "@babel/helper-validator-identifier": "^7.24.6" + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-simple-access": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7" }, "engines": { "node": ">=6.9.0" @@ -254,83 +251,84 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.6.tgz", - "integrity": "sha512-MZG/JcWfxybKwsA9N9PmtF2lOSFSEMVCpIRrbxccZFLJPrJciJdG/UhSh5W96GEteJI2ARqm5UAHxISwRDLSNg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz", + "integrity": "sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.6.tgz", - "integrity": "sha512-nZzcMMD4ZhmB35MOOzQuiGO5RzL6tJbsT37Zx8M5L/i9KSrukGXWTjLe1knIbb/RmxoJE9GON9soq0c0VEMM5g==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", + "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", "dev": true, "dependencies": { - "@babel/types": "^7.24.6" + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.6.tgz", - "integrity": "sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", "dev": true, "dependencies": { - "@babel/types": "^7.24.6" + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.6.tgz", - "integrity": "sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", + "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz", - "integrity": "sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.6.tgz", - "integrity": "sha512-Jktc8KkF3zIkePb48QO+IapbXlSapOW9S+ogZZkcO6bABgYAxtZcjZ/O005111YLf+j4M84uEgwYoidDkXbCkQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz", + "integrity": "sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.6.tgz", - "integrity": "sha512-V2PI+NqnyFu1i0GyTd/O/cTpxzQCYioSkUIRmgo7gFEHKKCg5w46+r/A6WeUR1+P3TeQ49dspGPNd/E3n9AnnA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.7.tgz", + "integrity": "sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==", "dev": true, "dependencies": { - "@babel/template": "^7.24.6", - "@babel/types": "^7.24.6" + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.6.tgz", - "integrity": "sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "dependencies": { - "@babel/helper-validator-identifier": "^7.24.6", + "@babel/helper-validator-identifier": "^7.24.7", "chalk": "^2.4.2", "js-tokens": "^4.0.0", "picocolors": "^1.0.0" @@ -391,10 +389,10 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.6.tgz", - "integrity": "sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==", - "devOptional": true, + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", + "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "dev": true, "bin": { "parser": "bin/babel-parser.js" }, @@ -403,33 +401,33 @@ } }, "node_modules/@babel/template": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.6.tgz", - "integrity": "sha512-3vgazJlLwNXi9jhrR1ef8qiB65L1RK90+lEQwv4OxveHnqC3BfmnHdgySwRLzf6akhlOYenT+b7AfWq+a//AHw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", + "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.24.6", - "@babel/parser": "^7.24.6", - "@babel/types": "^7.24.6" + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.6.tgz", - "integrity": "sha512-OsNjaJwT9Zn8ozxcfoBc+RaHdj3gFmCmYoQLUII1o6ZrUwku0BMg80FoOTPx+Gi6XhcQxAYE4xyjPTo4SxEQqw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.24.6", - "@babel/generator": "^7.24.6", - "@babel/helper-environment-visitor": "^7.24.6", - "@babel/helper-function-name": "^7.24.6", - "@babel/helper-hoist-variables": "^7.24.6", - "@babel/helper-split-export-declaration": "^7.24.6", - "@babel/parser": "^7.24.6", - "@babel/types": "^7.24.6", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", + "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-function-name": "^7.24.7", + "@babel/helper-hoist-variables": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -438,13 +436,13 @@ } }, "node_modules/@babel/types": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.6.tgz", - "integrity": "sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", + "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.24.6", - "@babel/helper-validator-identifier": "^7.24.6", + "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", "to-fast-properties": "^2.0.0" }, "engines": { @@ -484,9 +482,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", - "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.1.tgz", + "integrity": "sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -738,7 +736,7 @@ "version": "0.3.5", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "devOptional": true, + "dev": true, "dependencies": { "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", @@ -752,7 +750,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "devOptional": true, + "dev": true, "engines": { "node": ">=6.0.0" } @@ -761,33 +759,22 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "devOptional": true, + "dev": true, "engines": { "node": ">=6.0.0" } }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", - "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", - "optional": true, - "peer": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25" - } - }, "node_modules/@jridgewell/sourcemap-codec": { "version": "1.4.15", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "devOptional": true + "dev": true }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.25", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "devOptional": true, + "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -797,7 +784,7 @@ "version": "0.2.8", "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.8.tgz", "integrity": "sha512-5e+SFVavj1ORKlKaKr2BmTOekmXbelU7dC0cDkQLqag7xfuTPuGMUFx7KWJuv4bYZrTsoL2Z18VVCOKYxzoHcg==", - "devOptional": true, + "dev": true, "dependencies": { "lodash": "^4.17.21" }, @@ -1106,9 +1093,9 @@ } }, "node_modules/@npmcli/package-json": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.1.1.tgz", - "integrity": "sha512-uTq5j/UqUzbOaOxVy+osfOhpqOiLfUZ0Ut33UbcyyAPJbZcJsf4Mrsyb8r58FoIFlofw0iOFsuCA/oDK14VDJQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.0.tgz", + "integrity": "sha512-qe/kiqqkW0AGtvBjL8TJKZk/eBBSpnJkUWvHdQ9jM2lKHXRYYJuyNpJPlJw3c8QjC2ow6NZYiLExhUaeJelbxQ==", "dependencies": { "@npmcli/git": "^5.0.0", "glob": "^10.2.2", @@ -1156,9 +1143,9 @@ } }, "node_modules/@npmcli/redact": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.0.tgz", - "integrity": "sha512-SEjCPAVHWYUIQR+Yn03kJmrJjZDtJLYpj300m3HV9OTRZNpC5YpbMsM3eTkECyT4aWj8lDr9WeY6TWefpubtYQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.1.tgz", + "integrity": "sha512-YgsR5jCQZhVmTJvjduTOIHph0L73pK8xwMVaDY0PatySqVM9AZj93jpoXYSJqfHFxFkN9dmqTw6OiqExsS3LPw==", "engines": { "node": "^16.14.0 || >=18.0.0" } @@ -1416,13 +1403,13 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", "integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==", - "devOptional": true + "dev": true }, "node_modules/@types/markdown-it": { "version": "14.1.1", "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.1.tgz", "integrity": "sha512-4NpsnpYl2Gt1ljyBGrKMxFYAYvpqbnnkgP/i/g+NLpjEUa3obn1XJCur9YbEXKDAkaXqsR1LbDnGEJ0MmKFxfg==", - "devOptional": true, + "dev": true, "dependencies": { "@types/linkify-it": "^5", "@types/mdurl": "^2" @@ -1432,7 +1419,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz", "integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==", - "devOptional": true + "dev": true }, "node_modules/@types/minimatch": { "version": "3.0.5", @@ -1452,9 +1439,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.11.0.tgz", - "integrity": "sha512-MPEsDRZTyCiXkD4vd3zywDCifi7tatc4K37KqTprCvaXptP7Xlpdw0NR2hRJTetG5TxbWDB79Ys4kLmHliEo/w==", + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.12.0.tgz", + "integrity": "sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -1464,35 +1451,6 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@ui5/builder": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@ui5/builder/-/builder-3.4.1.tgz", - "integrity": "sha512-WS8mpFBujLPawgjpAjjCyg5hYjTs6LQyvarazF/1xCgDpQ99rFilsDvsKVuhugk75CWAOBsGz0Yyqd+38ICO4A==", - "optional": true, - "peer": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15", - "@ui5/fs": "^3.0.5", - "@ui5/logger": "^3.0.0", - "cheerio": "1.0.0-rc.12", - "escape-unicode": "^0.2.0", - "escope": "^4.0.0", - "espree": "^9.6.1", - "graceful-fs": "^4.2.11", - "jsdoc": "^4.0.3", - "less-openui5": "^0.11.6", - "pretty-data": "^0.40.0", - "rimraf": "^5.0.6", - "semver": "^7.6.2", - "terser": "^5.31.0", - "workerpool": "^6.5.1", - "xml2js": "^0.6.2" - }, - "engines": { - "node": "^16.18.0 || >=18.12.0", - "npm": ">= 8" - } - }, "node_modules/@ui5/fs": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.5.tgz", @@ -1699,7 +1657,7 @@ "version": "8.11.3", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "devOptional": true, + "dev": true, "bin": { "acorn": "bin/acorn" }, @@ -1720,7 +1678,7 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "devOptional": true, + "dev": true, "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } @@ -2102,7 +2060,7 @@ "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "devOptional": true + "dev": true }, "node_modules/blueimp-md5": { "version": "2.19.0", @@ -2110,13 +2068,6 @@ "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", "dev": true }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "optional": true, - "peer": true - }, "node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -2137,9 +2088,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "version": "4.23.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.1.tgz", + "integrity": "sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==", "dev": true, "funding": [ { @@ -2156,10 +2107,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", + "caniuse-lite": "^1.0.30001629", + "electron-to-chromium": "^1.4.796", "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "update-browserslist-db": "^1.0.16" }, "bin": { "browserslist": "cli.js" @@ -2168,13 +2119,6 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "optional": true, - "peer": true - }, "node_modules/bundle-name": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", @@ -2298,9 +2242,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001626", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001626.tgz", - "integrity": "sha512-JRW7kAH8PFJzoPCJhLSHgDgKg5348hsQ68aqb+slnzuB5QFERv846oA/mRChmlLAOdEDeOkRn3ynb1gSFnjt3w==", + "version": "1.0.30001629", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001629.tgz", + "integrity": "sha512-c3dl911slnQhmxUIT4HhYzT7wnBK/XYpGnYLOj4nJBaRiw52Ibe7YxlDaAeRECvA786zCuExhxIUJ2K7nHMrBw==", "dev": true, "funding": [ { @@ -2321,7 +2265,7 @@ "version": "0.9.0", "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.9.0.tgz", "integrity": "sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==", - "devOptional": true, + "dev": true, "dependencies": { "lodash": "^4.17.15" }, @@ -2352,46 +2296,6 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", - "optional": true, - "peer": true, - "dependencies": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" - }, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/cheeriojs/cheerio?sponsor=1" - } - }, - "node_modules/cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "optional": true, - "peer": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, "node_modules/chokidar": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", @@ -2992,36 +2896,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "optional": true, - "peer": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "optional": true, - "peer": true, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, "node_modules/currently-unhandled": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", @@ -3409,65 +3283,6 @@ "node": ">=6.0.0" } }, - "node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "optional": true, - "peer": true, - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "optional": true, - "peer": true - }, - "node_modules/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "optional": true, - "peer": true, - "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", - "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", - "optional": true, - "peer": true, - "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, "node_modules/duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -3513,9 +3328,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.788", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.788.tgz", - "integrity": "sha512-ubp5+Ev/VV8KuRoWnfP2QF2Bg+O2ZFdb49DiiNbz2VmgkIqrnyYaqIOqj8A6K/3p1xV0QcU5hBQ1+BmB6ot1OA==", + "version": "1.4.796", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.796.tgz", + "integrity": "sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA==", "dev": true }, "node_modules/emittery": { @@ -3560,7 +3375,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "devOptional": true, + "dev": true, "engines": { "node": ">=0.12" }, @@ -3616,30 +3431,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/escape-unicode": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/escape-unicode/-/escape-unicode-0.2.0.tgz", - "integrity": "sha512-7jMQuKb8nm0h/9HYLfu4NCLFwoUsd5XO6OZ1z86PbKcMf8zDK1m7nFR0iA2CCShq4TSValaLIveE8T1UBxgALQ==", - "optional": true, - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/escope": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-4.0.0.tgz", - "integrity": "sha512-E36qlD/r6RJHVpPKArgMoMlNJzoRJFH8z/cAZlI9lbc45zB3+S7i9k6e/MNb+7bZQzNEa6r8WKN3BovpeIBwgA==", - "optional": true, - "peer": true, - "dependencies": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=4.0" - } - }, "node_modules/eslint": { "version": "8.57.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", @@ -3730,9 +3521,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.7", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.7.tgz", - "integrity": "sha512-fYj3roTnkFL9OFFTB129rico8lerC5G8Vp2ZW9SjO9RNWG0exVvI+i/Y8Bpm1ufjR0uvT38xtoab/U0Hp8Ybog==", + "version": "48.2.9", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.9.tgz", + "integrity": "sha512-ErpKyr2mEUEkcdZ4nwW/cvDjClvAcvJMEXkGGll0wf8sro8h6qeQ3qlZyp1vM1dRk8Ap6rMdke8FnP94QBIaVQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.43.1", @@ -3779,15 +3570,6 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/eslint-utils": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", @@ -3819,7 +3601,7 @@ "version": "3.4.3", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "devOptional": true, + "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -4044,7 +3826,7 @@ "version": "9.6.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "devOptional": true, + "dev": true, "dependencies": { "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", @@ -4088,20 +3870,11 @@ "node": ">=0.10" } }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "devOptional": true, + "dev": true, "dependencies": { "estraverse": "^5.2.0" }, @@ -4109,21 +3882,11 @@ "node": ">=4.0" } }, - "node_modules/esrecurse/node_modules/estraverse": { + "node_modules/estraverse": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "devOptional": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "optional": true, - "peer": true, + "dev": true, "engines": { "node": ">=4.0" } @@ -4801,26 +4564,6 @@ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, - "node_modules/htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "optional": true, - "peer": true, - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" - } - }, "node_modules/http-cache-semantics": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", @@ -5412,9 +5155,9 @@ } }, "node_modules/jackspeak": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.1.2.tgz", - "integrity": "sha512-kWmLKn2tRtfYMF/BakihVVRzBKOxz4gJMiL2Rj91WnAB5TPZumSH99R/Yf1qE1u4uRimvCSJfm6hnxohXeEXjQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", + "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -5487,7 +5230,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.2.tgz", "integrity": "sha512-6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA==", - "devOptional": true, + "dev": true, "dependencies": { "xmlcreate": "^2.0.4" } @@ -5501,7 +5244,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.3.tgz", "integrity": "sha512-Nu7Sf35kXJ1MWDZIMAuATRQTg1iIPdzh7tqJ6jjvaU/GfDf+qi5UV8zJR3Mo+/pYFvm8mzay4+6O5EWigaQBQw==", - "devOptional": true, + "dev": true, "dependencies": { "@babel/parser": "^7.20.15", "@jsdoc/salty": "^0.2.1", @@ -5539,7 +5282,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "devOptional": true, + "dev": true, "engines": { "node": ">=8" } @@ -5620,27 +5363,11 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", - "devOptional": true, + "dev": true, "dependencies": { "graceful-fs": "^4.1.9" } }, - "node_modules/less-openui5": { - "version": "0.11.6", - "resolved": "https://registry.npmjs.org/less-openui5/-/less-openui5-0.11.6.tgz", - "integrity": "sha512-sQmU+G2pJjFfzRI+XtXkk+T9G0s6UmWWUfOW0utPR46C9lfhNr4DH1lNJuImj64reXYi+vOwyNxPRkj0F3mofA==", - "optional": true, - "peer": true, - "dependencies": { - "@adobe/css-tools": "^4.0.2", - "clone": "^2.1.2", - "mime": "^1.6.0" - }, - "engines": { - "node": ">= 10", - "npm": ">= 5" - } - }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -5664,7 +5391,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", - "devOptional": true, + "dev": true, "dependencies": { "uc.micro": "^2.0.0" } @@ -5710,7 +5437,7 @@ "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "devOptional": true + "dev": true }, "node_modules/lodash.debounce": { "version": "4.0.8", @@ -5810,7 +5537,7 @@ "version": "14.1.0", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", "integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==", - "devOptional": true, + "dev": true, "dependencies": { "argparse": "^2.0.1", "entities": "^4.4.0", @@ -5827,7 +5554,7 @@ "version": "8.6.7", "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.7.tgz", "integrity": "sha512-FlCHFwNnutLgVTflOYHPW2pPcl2AACqVzExlkGQNsi4CJgqOHN7YTgDd4LuhgN1BFO3TS0vLAruV1Td6dwWPJA==", - "devOptional": true, + "dev": true, "peerDependencies": { "@types/markdown-it": "*", "markdown-it": "*" @@ -5837,7 +5564,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", - "devOptional": true, + "dev": true, "bin": { "marked": "bin/marked.js" }, @@ -5876,7 +5603,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", - "devOptional": true + "dev": true }, "node_modules/memoize": { "version": "10.0.0", @@ -5942,19 +5669,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "optional": true, - "peer": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/mimic-function": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", @@ -6531,19 +6245,6 @@ "set-blocking": "^2.0.0" } }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "optional": true, - "peer": true, - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, "node_modules/nyc": { "version": "15.1.0", "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", @@ -7075,33 +6776,6 @@ "node": ">=0.10.0" } }, - "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "optional": true, - "peer": true, - "dependencies": { - "entities": "^4.4.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", - "optional": true, - "peer": true, - "dependencies": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -7334,16 +7008,6 @@ "node": ">= 0.8.0" } }, - "node_modules/pretty-data": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/pretty-data/-/pretty-data-0.40.0.tgz", - "integrity": "sha512-YFLnEdDEDnkt/GEhet5CYZHCvALw6+Elyb/tp8kQG03ZSIuzeaDWpZYndCXwgqu4NAjh1PI534dhDS1mHarRnQ==", - "optional": true, - "peer": true, - "engines": { - "node": "*" - } - }, "node_modules/pretty-hrtime": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", @@ -7428,7 +7092,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", - "devOptional": true, + "dev": true, "engines": { "node": ">=6" } @@ -7492,9 +7156,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.18.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.3.tgz", - "integrity": "sha512-Q08/0IrpvM+NMY9PA2rti9Jb+JejTddwmwmVQGskAlhtcrw1wsRzoR6ode6mR+OAabNa75w/dxedSUY2mlphaQ==", + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", + "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", "engines": { "node": ">=16" }, @@ -7537,9 +7201,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.18.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.18.3.tgz", - "integrity": "sha512-Q08/0IrpvM+NMY9PA2rti9Jb+JejTddwmwmVQGskAlhtcrw1wsRzoR6ode6mR+OAabNa75w/dxedSUY2mlphaQ==", + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", + "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", "engines": { "node": ">=16" }, @@ -7638,7 +7302,7 @@ "version": "0.2.4", "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.4.tgz", "integrity": "sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw==", - "devOptional": true, + "dev": true, "dependencies": { "lodash": "^4.17.21" } @@ -7983,7 +7647,7 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "devOptional": true, + "dev": true, "engines": { "node": ">=0.10.0" } @@ -7997,17 +7661,6 @@ "node": ">=0.10.0" } }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "optional": true, - "peer": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, "node_modules/spawn-wrap": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", @@ -8315,7 +7968,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "devOptional": true, + "dev": true, "engines": { "node": ">=8" }, @@ -8604,32 +8257,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/terser": { - "version": "5.31.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.0.tgz", - "integrity": "sha512-Q1JFAoUKE5IMfI4Z/lkE/E6+SwgzO+x4tq4v1AyBLRj8VSYvRO6A/rQrPg1yud4g0En9EKI1TvFRF2tQFcoUkg==", - "optional": true, - "peer": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "optional": true, - "peer": true - }, "node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", @@ -8841,13 +8468,13 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", - "devOptional": true + "dev": true }, "node_modules/underscore": { "version": "1.13.6", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==", - "devOptional": true + "dev": true }, "node_modules/unicorn-magic": { "version": "0.1.0", @@ -9044,13 +8671,6 @@ "node": ">=0.10.0" } }, - "node_modules/workerpool": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", - "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", - "optional": true, - "peer": true - }, "node_modules/wrap-ansi": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", @@ -9209,7 +8829,7 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz", "integrity": "sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==", - "devOptional": true + "dev": true }, "node_modules/xtend": { "version": "4.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index 188ca5f92ac..4a3b65e351f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.7", + "eslint-plugin-jsdoc": "^48.2.9", "esmock": "^2.6.5", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", From 10d25750547cfb579b0df54f915fb517c1fe0049 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 17 Jun 2024 08:44:53 +0000 Subject: [PATCH 1110/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 154 +++++++++++++---------------- packages/project/package.json | 4 +- 2 files changed, 69 insertions(+), 89 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index de51666a96c..5285589f8a3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,8 +42,8 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.9", - "esmock": "^2.6.5", + "eslint-plugin-jsdoc": "^48.2.12", + "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", "istanbul-lib-report": "^3.0.1", @@ -575,6 +575,7 @@ "version": "0.11.14", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "deprecated": "Use @eslint/config-array instead", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^2.0.2", @@ -624,6 +625,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", "dev": true }, "node_modules/@isaacs/cliui": { @@ -1439,9 +1441,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "7.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.12.0.tgz", - "integrity": "sha512-o+0Te6eWp2ppKY3mLCU+YA9pVJxhUJE15FV7kxuD9jgwIAa+w/ycGJBMrYDTpVGUM/tgpa9SeMOugSabWFq7bg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.0.tgz", + "integrity": "sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -1590,39 +1592,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.27.tgz", - "integrity": "sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==", + "version": "3.4.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.29.tgz", + "integrity": "sha512-TFKiRkKKsRCKvg/jTSSKK7mYLJEQdUiUfykbG49rubC9SfDyvT2JrzTReopWlz2MxqeLyxh9UZhvxEIBgAhtrg==", "dev": true, "dependencies": { - "@babel/parser": "^7.24.4", - "@vue/shared": "3.4.27", + "@babel/parser": "^7.24.7", + "@vue/shared": "3.4.29", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.27.tgz", - "integrity": "sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==", + "version": "3.4.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.29.tgz", + "integrity": "sha512-A6+iZ2fKIEGnfPJejdB7b1FlJzgiD+Y/sxxKwJWg1EbJu6ZPgzaPQQ51ESGNv0CP6jm6Z7/pO6Ia8Ze6IKrX7w==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.27", - "@vue/shared": "3.4.27" + "@vue/compiler-core": "3.4.29", + "@vue/shared": "3.4.29" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.27.tgz", - "integrity": "sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==", + "version": "3.4.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.29.tgz", + "integrity": "sha512-zygDcEtn8ZimDlrEQyLUovoWgKQic6aEQqRXce2WXBvSeHbEbcAsXyCk9oG33ZkyWH4sl9D3tkYc1idoOkdqZQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.24.4", - "@vue/compiler-core": "3.4.27", - "@vue/compiler-dom": "3.4.27", - "@vue/compiler-ssr": "3.4.27", - "@vue/shared": "3.4.27", + "@babel/parser": "^7.24.7", + "@vue/compiler-core": "3.4.29", + "@vue/compiler-dom": "3.4.29", + "@vue/compiler-ssr": "3.4.29", + "@vue/shared": "3.4.29", "estree-walker": "^2.0.2", "magic-string": "^0.30.10", "postcss": "^8.4.38", @@ -1630,19 +1632,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.27.tgz", - "integrity": "sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==", + "version": "3.4.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.29.tgz", + "integrity": "sha512-rFbwCmxJ16tDp3N8XCx5xSQzjhidYjXllvEcqX/lopkoznlNPz3jyy0WGJCyhAaVQK677WWFt3YO/WUEkMMUFQ==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.27", - "@vue/shared": "3.4.27" + "@vue/compiler-dom": "3.4.29", + "@vue/shared": "3.4.29" } }, "node_modules/@vue/shared": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.27.tgz", - "integrity": "sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==", + "version": "3.4.29", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.29.tgz", + "integrity": "sha512-hQ2gAQcBO/CDpC82DCrinJNgOHI2v+FA7BDW4lMSPeBpQ7sRe2OLHWe5cph1s7D8DUQAwRt18dBDfJJ220APEA==", "dev": true }, "node_modules/abbrev": { @@ -1654,9 +1656,9 @@ } }, "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", + "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -1684,10 +1686,13 @@ } }, "node_modules/acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", "dev": true, + "dependencies": { + "acorn": "^8.11.0" + }, "engines": { "node": ">=0.4.0" } @@ -2242,9 +2247,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001629", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001629.tgz", - "integrity": "sha512-c3dl911slnQhmxUIT4HhYzT7wnBK/XYpGnYLOj4nJBaRiw52Ibe7YxlDaAeRECvA786zCuExhxIUJ2K7nHMrBw==", + "version": "1.0.30001636", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001636.tgz", + "integrity": "sha512-bMg2vmr8XBsbL6Lr0UHXy/21m84FTxDLWn2FSqMd5PrlbMxwJlQnC2YWYxVgp66PZE+BBNF2jYQUBKCo1FDeZg==", "dev": true, "funding": [ { @@ -3328,9 +3333,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.796", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.796.tgz", - "integrity": "sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA==", + "version": "1.4.803", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.803.tgz", + "integrity": "sha512-61H9mLzGOCLLVsnLiRzCbc63uldP0AniRYPV3hbGVtONA1pI7qSGILdbofR7A8TMbOypDocEAjH/e+9k1QIe3g==", "dev": true }, "node_modules/emittery": { @@ -3521,9 +3526,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.9", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.9.tgz", - "integrity": "sha512-ErpKyr2mEUEkcdZ4nwW/cvDjClvAcvJMEXkGGll0wf8sro8h6qeQ3qlZyp1vM1dRk8Ap6rMdke8FnP94QBIaVQ==", + "version": "48.2.12", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.12.tgz", + "integrity": "sha512-sO9sKkJx5ovWoRk9hV0YiNzXQ4Z6j27CqE/po2E3wddZVuy9wvKPSTiIhpxMTrP/qURvKayJIDB2+o9kyCW1Fw==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.43.1", @@ -3814,9 +3819,9 @@ } }, "node_modules/esmock": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.5.tgz", - "integrity": "sha512-tvFsbtSI9lCuvufbX+UIDn/MoBjTu6UDvQKR8ZmKWHrK3AkioKD2LuTkM75XSngRki3SsBb4uiO58EydQuFCGg==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.6.tgz", + "integrity": "sha512-Ay1IQ/qbZV1j8IqRY5o4GYNyX8Y6qDJVVYRZtQ0WFOqUPf26++qW/LyNaHrxz79QGB4F1xuDTCPRYA5XRNuqZg==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4183,9 +4188,9 @@ "dev": true }, "node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", + "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^4.0.1" @@ -5766,31 +5771,6 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, - "node_modules/minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "node_modules/minipass-json-stream/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-json-stream/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/minipass-pipeline": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", @@ -6215,15 +6195,15 @@ } }, "node_modules/npm-registry-fetch": { - "version": "17.0.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.0.1.tgz", - "integrity": "sha512-fLu9MTdZTlJAHUek/VLklE6EpIiP3VZpTiuN7OOMCt2Sd67NCpSEetMaxHHEZiZxllp8ZLsUpvbEszqTFEc+wA==", + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz", + "integrity": "sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==", "dependencies": { "@npmcli/redact": "^2.0.0", + "jsonparse": "^1.3.1", "make-fetch-happen": "^13.0.0", "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", - "minipass-json-stream": "^1.0.1", "minizlib": "^2.1.2", "npm-package-arg": "^11.0.0", "proc-log": "^4.0.0" @@ -7156,9 +7136,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.20.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.1.tgz", + "integrity": "sha512-R6wDsVsoS9xYOpy8vgeBlqpdOyzJ12HNfQhC/aAKWM3YoCV9TtunJzh/QpkMgeDhkoynDcw5f1y+qF9yc/HHyg==", "engines": { "node": ">=16" }, @@ -7201,9 +7181,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.20.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.1.tgz", + "integrity": "sha512-R6wDsVsoS9xYOpy8vgeBlqpdOyzJ12HNfQhC/aAKWM3YoCV9TtunJzh/QpkMgeDhkoynDcw5f1y+qF9yc/HHyg==", "engines": { "node": ">=16" }, diff --git a/packages/project/package.json b/packages/project/package.json index 4a3b65e351f..9df4a73b365 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,8 +161,8 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.9", - "esmock": "^2.6.5", + "eslint-plugin-jsdoc": "^48.2.12", + "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", "istanbul-lib-report": "^3.0.1", From ee4886e558e484554e44d1d4aaf3a2e9cdbbbd7a Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Fri, 21 Jun 2024 11:26:07 +0200 Subject: [PATCH 1111/1272] [ui5-project][FEATURE] Schema: Introduce specVersion 4.0 (#731) JIRA: CPOUI5FOUNDATION-835 --------- Co-authored-by: Merlin Beutlberger --- .../specifications/SpecificationVersion.js | 3 +- .../schema/specVersion/kind/extension.json | 2 +- .../kind/extension/project-shim.json | 4 +- .../kind/extension/server-middleware.json | 4 +- .../specVersion/kind/extension/task.json | 4 +- .../schema/specVersion/kind/project.json | 159 ++++++++++- .../specVersion/kind/project/application.json | 166 ++++++++---- .../specVersion/kind/project/library.json | 158 +++++++---- .../specVersion/kind/project/module.json | 4 +- .../kind/project/theme-library.json | 4 +- .../schema/specVersion/specVersion.json | 2 +- .../project/lib/validation/schema/ui5.json | 5 +- .../specifications/SpecificationVersion.js | 5 +- .../__helper__/builder-bundleOptions.js | 123 ++++++++- .../specVersion/kind/project/application.js | 249 +++++++++++++++++- .../specVersion/kind/project/library.js | 176 ++++++++++++- .../project/test/lib/validation/schema/ui5.js | 3 +- 17 files changed, 955 insertions(+), 116 deletions(-) diff --git a/packages/project/lib/specifications/SpecificationVersion.js b/packages/project/lib/specifications/SpecificationVersion.js index b8839d3bf14..c19163eb6df 100644 --- a/packages/project/lib/specifications/SpecificationVersion.js +++ b/packages/project/lib/specifications/SpecificationVersion.js @@ -4,7 +4,8 @@ const SPEC_VERSION_PATTERN = /^\d+\.\d+$/; const SUPPORTED_VERSIONS = [ "0.1", "1.0", "1.1", "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", - "3.0", "3.1", "3.2" + "3.0", "3.1", "3.2", + "4.0" ]; /** diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension.json b/packages/project/lib/validation/schema/specVersion/kind/extension.json index 39d65c800e9..ddc1360399a 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "kind", "type", "metadata"], "properties": { - "specVersion": { "enum": ["3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["4.0", "3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json b/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json index 17784465731..d7877e3af93 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/project-shim.json @@ -6,14 +6,14 @@ "required": ["specVersion", "kind", "type", "metadata", "shims"], "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1", "3.2"] } + "specVersion": { "enum": ["3.0", "3.1", "3.2", "4.0"] } } }, "then": { "additionalProperties": false, "properties": { "specVersion": { - "enum": ["3.0", "3.1", "3.2"] + "enum": ["3.0", "3.1", "3.2", "4.0"] }, "kind": { "enum": ["extension"] diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json b/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json index 980793eabcc..de4628ecb92 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/server-middleware.json @@ -7,13 +7,13 @@ "required": ["specVersion", "kind", "type", "metadata", "middleware"], "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1", "3.2"] } + "specVersion": { "enum": ["3.0", "3.1", "3.2", "4.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0", "3.1", "3.2"] }, + "specVersion": { "enum": ["3.0", "3.1", "3.2", "4.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension/task.json b/packages/project/lib/validation/schema/specVersion/kind/extension/task.json index d77439db989..4fb3496a2d4 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension/task.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension/task.json @@ -6,13 +6,13 @@ "required": ["specVersion", "kind", "type", "metadata", "task"], "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1", "3.2"] } + "specVersion": { "enum": ["3.0", "3.1", "3.2", "4.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0", "3.1", "3.2"] }, + "specVersion": { "enum": ["3.0", "3.1", "3.2", "4.0"] }, "kind": { "enum": ["extension"] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/project.json b/packages/project/lib/validation/schema/specVersion/kind/project.json index 48ae92186f0..0982cf5c1c8 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion", "type"], "properties": { - "specVersion": { "enum": ["3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["4.0", "3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" @@ -19,7 +19,6 @@ ] } }, - "if": { "properties": { "type": {"const": null} @@ -207,6 +206,22 @@ } } }, + "builder-bundles-4.0": { + "type": "array", + "additionalProperties": false, + "items": { + "type": "object", + "additionalProperties": false, + "properties": { + "bundleDefinition": { + "$ref": "#/definitions/builder-bundles-bundleDefinition-4.0" + }, + "bundleOptions": { + "$ref": "#/definitions/builder-bundles-bundleOptions-4.0" + } + } + } + }, "builder-bundles-bundleDefinition": { "type": "object", "additionalProperties": false, @@ -381,6 +396,120 @@ } } }, + "builder-bundles-bundleDefinition-4.0": { + "type": "object", + "additionalProperties": false, + "required": ["name"], + "properties": { + "name": { + "type": "string" + }, + "defaultFileTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "sections": { + "type": "array", + "if": { + "$comment": "Add async prop only if mode = 'require'", + "items": { + "type": "object", + "mode": { + "enum": ["require"] + } + } + }, + "then": { + "items": { + "type": "object", + "additionalProperties": false, + "required": ["mode", "filters"], + "properties": { + "name": { + "type": "string" + }, + "mode": { + "enum": ["raw", "preload", "require", "provided", "bundleInfo", "depCache"] + }, + "filters": { + "type": "array", + "items": { + "type": "string" + } + }, + "resolve": { + "type": "boolean", + "default": false + }, + "resolveConditional": { + "type": "boolean", + "default": false + }, + "renderer": { + "type": "boolean", + "default": false + }, + "sort": { + "type": "boolean", + "default": true + }, + "declareRawModules": { + "type": "boolean", + "default": false + }, + "async": { + "type": "boolean", + "default": true + } + } + } + }, + "else": { + "items": { + "type": "object", + "additionalProperties": false, + "required": ["mode", "filters"], + "properties": { + "name": { + "type": "string" + }, + "mode": { + "enum": ["raw", "preload", "require", "provided", "bundleInfo", "depCache"] + }, + "filters": { + "type": "array", + "items": { + "type": "string" + } + }, + "resolve": { + "type": "boolean", + "default": false + }, + "resolveConditional": { + "type": "boolean", + "default": false + }, + "renderer": { + "type": "boolean", + "default": false + }, + "sort": { + "type": "boolean", + "default": true + }, + "declareRawModules": { + "type": "boolean", + "default": false + } + } + } + } + } + } + }, "builder-bundles-bundleOptions": { "type": "object", "additionalProperties": false, @@ -437,6 +566,32 @@ } } }, + "builder-bundles-bundleOptions-4.0": { + "type": "object", + "additionalProperties": false, + "properties": { + "optimize": { + "type": "boolean", + "default": true + }, + "decorateBootstrapModule": { + "type": "boolean", + "default": true + }, + "addTryCatchRestartWrapper": { + "type": "boolean", + "default": false + }, + "numberOfParts": { + "type": "number", + "default": 1 + }, + "sourceMap": { + "type": "boolean", + "default": true + } + } + }, "builder-componentPreload": { "type": "object", "additionalProperties": false, diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/application.json b/packages/project/lib/validation/schema/specVersion/kind/project/application.json index 416d8479caf..46f05b9753b 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/application.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/application.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.2"] } + "specVersion": { "enum": ["4.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.2"] }, + "specVersion": { "enum": ["4.0"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-3.2" + "$ref": "#/definitions/builder-specVersion-4.0" }, "server": { "$ref": "../project.json#/definitions/server" @@ -39,18 +39,17 @@ "additionalProperties": true } } - }, + }, "else": { - "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1"] } + "specVersion": { "enum": ["3.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0", "3.1"] }, + "specVersion": { "enum": ["3.2"] }, "kind": { "enum": ["project", null] }, @@ -67,7 +66,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-3.0" + "$ref": "#/definitions/builder-specVersion-3.2" }, "server": { "$ref": "../project.json#/definitions/server" @@ -79,15 +78,16 @@ } }, "else": { + "if": { "properties": { - "specVersion": { "enum": ["2.6"] } + "specVersion": { "enum": ["3.0", "3.1"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.6"] }, + "specVersion": { "enum": ["3.0", "3.1"] }, "kind": { "enum": ["project", null] }, @@ -95,7 +95,7 @@ "enum": ["application"] }, "metadata": { - "$ref": "../project.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata-3.0" }, "framework": { "$ref": "../project.json#/definitions/framework" @@ -104,7 +104,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.6" + "$ref": "#/definitions/builder-specVersion-3.0" }, "server": { "$ref": "../project.json#/definitions/server" @@ -118,13 +118,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.5"] } + "specVersion": { "enum": ["2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5"] }, + "specVersion": { "enum": ["2.6"] }, "kind": { "enum": ["project", null] }, @@ -141,7 +141,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.5" + "$ref": "#/definitions/builder-specVersion-2.6" }, "server": { "$ref": "../project.json#/definitions/server" @@ -155,13 +155,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -178,7 +178,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.4" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -192,13 +192,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -215,7 +215,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -229,13 +229,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -252,7 +252,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -264,29 +264,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["application"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["application"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -296,7 +334,6 @@ } } }, - "definitions": { "resources": { @@ -533,6 +570,39 @@ "$ref": "../project.json#/definitions/builder-settings" } } + }, + "builder-specVersion-4.0": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "cachebuster": { + "type": "object", + "additionalProperties": false, + "properties": { + "signatureType": { + "enum": ["time", "hash"] + } + } + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-4.0" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "minification": { + "$ref": "../project.json#/definitions/builder-minification" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/library.json b/packages/project/lib/validation/schema/specVersion/kind/project/library.json index 84c71a0bdfb..8a039254010 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/library.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.2"] } + "specVersion": { "enum": ["4.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.2"] }, + "specVersion": { "enum": ["4.0"] }, "kind": { "enum": ["project", null] }, @@ -29,7 +29,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-3.2" + "$ref": "#/definitions/builder-specVersion-4.0" }, "server": { "$ref": "../project.json#/definitions/server" @@ -43,13 +43,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1"] } + "specVersion": { "enum": ["3.2"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0", "3.1"] }, + "specVersion": { "enum": ["3.2"] }, "kind": { "enum": ["project", null] }, @@ -66,7 +66,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-3.0" + "$ref": "#/definitions/builder-specVersion-3.2" }, "server": { "$ref": "../project.json#/definitions/server" @@ -80,13 +80,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.6"] } + "specVersion": { "enum": ["3.0", "3.1"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.6"] }, + "specVersion": { "enum": ["3.0", "3.1"] }, "kind": { "enum": ["project", null] }, @@ -94,7 +94,7 @@ "enum": ["library"] }, "metadata": { - "$ref": "../project.json#/definitions/metadata" + "$ref": "../project.json#/definitions/metadata-3.0" }, "framework": { "$ref": "../project.json#/definitions/framework" @@ -103,7 +103,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.6" + "$ref": "#/definitions/builder-specVersion-3.0" }, "server": { "$ref": "../project.json#/definitions/server" @@ -117,13 +117,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.5"] } + "specVersion": { "enum": ["2.6"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.5"] }, + "specVersion": { "enum": ["2.6"] }, "kind": { "enum": ["project", null] }, @@ -140,7 +140,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.5" + "$ref": "#/definitions/builder-specVersion-2.6" }, "server": { "$ref": "../project.json#/definitions/server" @@ -154,13 +154,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.4"] } + "specVersion": { "enum": ["2.5"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.4"] }, + "specVersion": { "enum": ["2.5"] }, "kind": { "enum": ["project", null] }, @@ -177,7 +177,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.4" + "$ref": "#/definitions/builder-specVersion-2.5" }, "server": { "$ref": "../project.json#/definitions/server" @@ -191,13 +191,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.3"] } + "specVersion": { "enum": ["2.4"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.3"] }, + "specVersion": { "enum": ["2.4"] }, "kind": { "enum": ["project", null] }, @@ -214,7 +214,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder-specVersion-2.3" + "$ref": "#/definitions/builder-specVersion-2.4" }, "server": { "$ref": "../project.json#/definitions/server" @@ -228,13 +228,13 @@ "else": { "if": { "properties": { - "specVersion": { "enum": ["2.1", "2.2"] } + "specVersion": { "enum": ["2.3"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["2.1", "2.2"] }, + "specVersion": { "enum": ["2.3"] }, "kind": { "enum": ["project", null] }, @@ -251,7 +251,7 @@ "$ref": "#/definitions/resources" }, "builder": { - "$ref": "#/definitions/builder" + "$ref": "#/definitions/builder-specVersion-2.3" }, "server": { "$ref": "../project.json#/definitions/server" @@ -263,29 +263,67 @@ } }, "else": { - "additionalProperties": false, - "properties": { - "specVersion": { "enum": ["2.0"] }, - "kind": { - "enum": ["project", null] - }, - "type": { - "enum": ["library"] - }, - "metadata": { - "$ref": "../project.json#/definitions/metadata" - }, - "framework": { - "$ref": "../project.json#/definitions/framework" - }, - "resources": { - "$ref": "#/definitions/resources" - }, - "builder": { - "$ref": "#/definitions/builder" - }, - "server": { - "$ref": "../project.json#/definitions/server" + "if": { + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] } + } + }, + "then": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.1", "2.2"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + }, + "customConfiguration": { + "type": "object", + "additionalProperties": true + } + } + }, + "else": { + "additionalProperties": false, + "properties": { + "specVersion": { "enum": ["2.0"] }, + "kind": { + "enum": ["project", null] + }, + "type": { + "enum": ["library"] + }, + "metadata": { + "$ref": "../project.json#/definitions/metadata" + }, + "framework": { + "$ref": "../project.json#/definitions/framework" + }, + "resources": { + "$ref": "#/definitions/resources" + }, + "builder": { + "$ref": "#/definitions/builder" + }, + "server": { + "$ref": "../project.json#/definitions/server" + } } } } @@ -520,6 +558,36 @@ "$ref": "../project.json#/definitions/builder-settings" } } + }, + "builder-specVersion-4.0": { + "type": "object", + "additionalProperties": false, + "properties": { + "resources": { + "$ref": "../project.json#/definitions/builder-resources" + }, + "jsdoc": { + "$ref": "#/definitions/builder-jsdoc" + }, + "bundles": { + "$ref": "../project.json#/definitions/builder-bundles-4.0" + }, + "componentPreload": { + "$ref": "../project.json#/definitions/builder-componentPreload-specVersion-2.3" + }, + "libraryPreload": { + "$ref": "../project.json#/definitions/builder-libraryPreload" + }, + "customTasks": { + "$ref": "../project.json#/definitions/customTasks" + }, + "minification": { + "$ref": "../project.json#/definitions/builder-minification" + }, + "settings": { + "$ref": "../project.json#/definitions/builder-settings" + } + } } } } diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/module.json b/packages/project/lib/validation/schema/specVersion/kind/project/module.json index d220cd9a6bc..1e38cfcdf0f 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/module.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/module.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.1", "3.2"] } + "specVersion": { "enum": ["3.1", "3.2", "4.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.1", "3.2"] }, + "specVersion": { "enum": ["3.1", "3.2", "4.0"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json b/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json index c4cba17466b..db0853b33a2 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project/theme-library.json @@ -6,13 +6,13 @@ "required": ["specVersion", "type", "metadata"], "if": { "properties": { - "specVersion": { "enum": ["3.0", "3.1", "3.2"] } + "specVersion": { "enum": ["3.0", "3.1", "3.2", "4.0"] } } }, "then": { "additionalProperties": false, "properties": { - "specVersion": { "enum": ["3.0", "3.1", "3.2"] }, + "specVersion": { "enum": ["3.0", "3.1", "3.2", "4.0"] }, "kind": { "enum": ["project", null] }, diff --git a/packages/project/lib/validation/schema/specVersion/specVersion.json b/packages/project/lib/validation/schema/specVersion/specVersion.json index 73035e20a87..1126cb0e8a7 100644 --- a/packages/project/lib/validation/schema/specVersion/specVersion.json +++ b/packages/project/lib/validation/schema/specVersion/specVersion.json @@ -5,7 +5,7 @@ "type": "object", "required": ["specVersion"], "properties": { - "specVersion": { "enum": ["3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, + "specVersion": { "enum": ["4.0", "3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] }, "kind": { "enum": ["project", "extension", null], "$comment": "Using null to allow not defining 'kind' which defaults to project" diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index a65e85b45f0..6948c735934 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -10,17 +10,18 @@ "properties": { "specVersion": { "enum": [ + "4.0", "3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"3.2\", \"3.1\", \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"4.0\", \"3.2\", \"3.1\", \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" } }, "if": { "properties": { - "specVersion": { "enum": ["3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } + "specVersion": { "enum": ["4.0", "3.2", "3.1", "3.0", "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0"] } } }, "then": { diff --git a/packages/project/test/lib/specifications/SpecificationVersion.js b/packages/project/test/lib/specifications/SpecificationVersion.js index c2015d10d9b..9a709f59c84 100644 --- a/packages/project/test/lib/specifications/SpecificationVersion.js +++ b/packages/project/test/lib/specifications/SpecificationVersion.js @@ -72,6 +72,7 @@ test("(instance) satisfies", (t) => { t.is(new SpecificationVersion("2.2").satisfies(">=2.2"), true); t.is(new SpecificationVersion("2.3").satisfies(">=2.2"), true); t.is(new SpecificationVersion("3.1").satisfies(">=2.2"), true); + t.is(new SpecificationVersion("4.0").satisfies(">=2.2"), true); // range: > 1.0 t.is(new SpecificationVersion("1.0").satisfies("> 1.0"), false); @@ -238,14 +239,14 @@ test("(static) getVersionsForRange", (t) => { // range: >=2.2 t.deepEqual(SpecificationVersion.getVersionsForRange(">=2.2"), [ "2.2", "2.3", "2.4", "2.5", "2.6", - "3.0", "3.1", "3.2", + "3.0", "3.1", "3.2", "4.0" ]); // range: > 1.0 t.deepEqual(SpecificationVersion.getVersionsForRange("> 1.0"), [ "1.1", "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", - "3.0", "3.1", "3.2", + "3.0", "3.1", "3.2", "4.0" ]); // range: 2.2 - 2.4 diff --git a/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js b/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js index b87e128131e..144590c1740 100644 --- a/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js +++ b/packages/project/test/lib/validation/schema/__helper__/builder-bundleOptions.js @@ -13,7 +13,128 @@ export default { */ defineTests: function(test, assertValidation, type) { // Version specific tests - SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) { + SpecificationVersion.getVersionsForRange(">=4.0").forEach(function(specVersion) { + test(`${type} (specVersion ${specVersion}): builder/bundles/bundleOptions`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": type, + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "bundles": [{ + "bundleOptions": { + "optimize": false, + "decorateBootstrapModule": false, + "addTryCatchRestartWrapper": true, + "numberOfParts": 8, + "sourceMap": false + } + }] + } + }); + }); + + test(`${type} (specVersion ${specVersion}): builder/bundles/bundleOptions properties removal`, + async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": type, + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "bundles": [{ + "bundleOptions": { + "usePredefineCalls": true + } + }] + } + }, [ + { + keyword: "additionalProperties", + dataPath: "/builder/bundles/0/bundleOptions", + params: { + additionalProperty: "usePredefineCalls", + }, + message: "should NOT have additional properties", + }, + ]); + }); + + test(`${type} invalid (specVersion ${specVersion}): builder/bundles/bundleOptions config`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": type, + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + "bundles": [{ + "bundleOptions": { + "optimize": "invalid value", + "decorateBootstrapModule": {"invalid": "value"}, + "addTryCatchRestartWrapper": ["invalid value"], + "numberOfParts": true, + "sourceMap": 55 + } + }] + } + }, [ + { + keyword: "type", + dataPath: "/builder/bundles/0/bundleOptions/optimize", + params: { + type: "boolean", + }, + message: "should be boolean" + }, + { + keyword: "type", + dataPath: + "/builder/bundles/0/bundleOptions/decorateBootstrapModule", + params: { + type: "boolean", + }, + message: "should be boolean" + }, + { + keyword: "type", + dataPath: + "/builder/bundles/0/bundleOptions/addTryCatchRestartWrapper", + params: { + type: "boolean", + }, + message: "should be boolean" + }, + { + keyword: "type", + dataPath: + "/builder/bundles/0/bundleOptions/numberOfParts", + params: { + type: "number", + }, + message: "should be number" + }, + { + keyword: "type", + dataPath: "/builder/bundles/0/bundleOptions/sourceMap", + params: { + type: "boolean", + }, + message: "should be boolean" + } + ]); + }); + }); + + SpecificationVersion.getVersionsForRange("3.0 - 3.2").forEach(function(specVersion) { test(`${type} (specVersion ${specVersion}): builder/bundles/bundleOptions`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index 16497d4ce2f..89c3e583efa 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -46,7 +46,254 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -SpecificationVersion.getVersionsForRange(">=2.0").forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=4.0").forEach(function(specVersion) { + test(`Valid configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "application", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "okay" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF-8", + "paths": { + "webapp": "/my/path" + } + } + }, + "builder": { + "resources": { + "excludes": [ + "/resources/some/project/name/test_results/**", + "/test-resources/**", + "!/test-resources/some/project/name/demo-app/**" + ] + }, + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "name": "my-raw-section", + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "resolveConditional": true, + "renderer": true, + "sort": true + }, + { + "mode": "provided", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": false, + "resolveConditional": false, + "renderer": false, + "sort": false, + "declareRawModules": true + } + ] + }, + "bundleOptions": { + "optimize": true, + "decorateBootstrapModule": true, + "addTryCatchRestartWrapper": true + } + }, + { + "bundleDefinition": { + "name": "app.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "name": "some-app-preload", + "mode": "preload", + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true, + "declareRawModules": false + }, + { + "mode": "require", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "async": false + } + ] + }, + "bundleOptions": { + "optimize": true, + "numberOfParts": 3 + } + } + ], + "componentPreload": { + "paths": [ + "some/glob/**/pattern/Component.js", + "some/other/glob/**/pattern/Component.js" + ], + "namespaces": [ + "some/namespace", + "some/other/namespace" + ] + }, + "cachebuster": { + "signatureType": "hash" + }, + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "configuration": { + "some-key": "some value" + } + }, + { + "name": "custom-task-2", + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } + }, + { + "name": "custom-task-2", + "beforeTask": "not-valid", + "configuration": false + } + ] + }, + "server": { + "settings": { + "httpPort": 1337, + "httpsPort": 1443 + }, + "customMiddleware": [ + { + "name": "myCustomMiddleware", + "mountPath": "/myapp", + "afterMiddleware": "compression", + "configuration": { + "debug": true + } + }, + { + "name": "myCustomMiddleware-2", + "beforeMiddleware": "myCustomMiddleware", + "configuration": { + "debug": true + } + } + ] + } + }); + }); + + test(`Invalid resources configuration (specVersion ${specVersion})`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "FOO", + "paths": { + "app": "webapp", + "webapp": { + "path": "invalid" + } + }, + "notAllowed": true + }, + "notAllowed": true + } + }, [ + { + dataPath: "/resources", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + } + }, + { + dataPath: "/resources/configuration", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + } + }, + { + dataPath: "/resources/configuration/propertiesFileSourceEncoding", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: [ + "UTF-8", + "ISO-8859-1" + ], + } + }, + { + dataPath: "/resources/configuration/paths", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "app", + } + }, + { + dataPath: "/resources/configuration/paths/webapp", + keyword: "type", + message: "should be string", + params: { + type: "string" + } + } + ]); + await assertValidation(t, { + "specVersion": specVersion, + "type": "application", + "metadata": { + "name": "com.sap.ui5.test" + }, + "resources": { + "configuration": { + "paths": "webapp" + } + } + }, [ + { + dataPath: "/resources/configuration/paths", + keyword: "type", + message: "should be object", + params: { + type: "object" + } + } + ]); + }); +}); + +SpecificationVersion.getVersionsForRange("2.0 - 3.2").forEach(function(specVersion) { test(`Valid configuration (specVersion ${specVersion})`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js index 8ca82bfdf71..8568f412d6d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js @@ -46,7 +46,181 @@ test.after.always((t) => { t.context.ajvCoverage.verify(thresholds); }); -SpecificationVersion.getVersionsForRange(">=2.0").forEach(function(specVersion) { +SpecificationVersion.getVersionsForRange(">=4.0").forEach(function(specVersion) { + test(`library (specVersion ${specVersion}): Valid configuration`, async (t) => { + await assertValidation(t, { + "specVersion": specVersion, + "kind": "project", + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "resources": { + "configuration": { + "propertiesFileSourceEncoding": "UTF-8", + "paths": { + "src": "src/main/uilib", + "test": "src/test/uilib" + } + } + }, + "builder": { + "resources": { + "excludes": [ + "/resources/some/project/name/test_results/**", + "!/test-resources/some/project/name/demo-app/**" + ] + }, + "bundles": [ + { + "bundleDefinition": { + "name": "sap-ui-custom.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "name": "my-raw-section", + "mode": "raw", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "resolveConditional": true, + "renderer": true, + "sort": true + }, + { + "mode": "provided", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": false, + "resolveConditional": false, + "renderer": false, + "sort": false, + "declareRawModules": true + } + ] + }, + "bundleOptions": { + "optimize": true, + "decorateBootstrapModule": true, + "addTryCatchRestartWrapper": true + } + }, + { + "bundleDefinition": { + "name": "app.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "name": "some-app-preload", + "mode": "preload", + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true, + "declareRawModules": false + }, + { + "mode": "require", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "async": false + } + ] + }, + "bundleOptions": { + "optimize": true, + "numberOfParts": 3 + } + } + ], + "componentPreload": { + "paths": [ + "some/glob/**/pattern/Component.js", + "some/other/glob/**/pattern/Component.js" + ], + "namespaces": [ + "some/namespace", + "some/other/namespace" + ] + }, + "jsdoc": { + "excludes": [ + "some/project/name/thirdparty/**" + ] + }, + "customTasks": [ + { + "name": "custom-task-1", + "beforeTask": "replaceCopyright", + "configuration": { + "some-key": "some value" + } + }, + { + "name": "custom-task-2", + "afterTask": "custom-task-1", + "configuration": { + "color": "blue" + } + } + ] + }, + "server": { + "settings": { + "httpPort": 1337, + "httpsPort": 1443 + }, + "customMiddleware": [ + { + "name": "myCustomMiddleware", + "mountPath": "/myapp", + "afterMiddleware": "compression", + "configuration": { + "debug": true + } + } + ] + } + }); + }); + + test(`library (specVersion ${specVersion}): Invalid builder configuration`, async (t) => { + const config = { + "specVersion": specVersion, + "type": "library", + "metadata": { + "name": "com.sap.ui5.test", + "copyright": "yes" + }, + "builder": { + // cachebuster is only supported for type application + "cachebuster": { + "signatureType": "time" + } + } + }; + await assertValidation(t, config, [{ + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "cachebuster" + } + }]); + }); +}); + +SpecificationVersion.getVersionsForRange("2.0 - 3.2").forEach(function(specVersion) { test(`library (specVersion ${specVersion}): Valid configuration`, async (t) => { await assertValidation(t, { "specVersion": specVersion, diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 4ac9192c87f..653e6e56177 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -102,7 +102,7 @@ test("Invalid specVersion", async (t) => { message: "Unsupported \"specVersion\"\n" + "Your UI5 CLI installation might be outdated.\n" + -"Supported specification versions: \"3.2\", \"3.1\", \"3.0\", \"2.6\", " + +"Supported specification versions: \"4.0\", \"3.2\", \"3.1\", \"3.0\", \"2.6\", " + "\"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\n" + "For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions", params: { @@ -113,6 +113,7 @@ test("Invalid specVersion", async (t) => { message: "should be equal to one of the allowed values", params: { allowedValues: [ + "4.0", "3.2", "3.1", "3.0", From acebee20102dba986461698047d28700c3911457 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 23 Jun 2024 02:20:14 +0000 Subject: [PATCH 1112/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 91 ++++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 51 insertions(+), 42 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5285589f8a3..7dd483a9fb1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.12", + "eslint-plugin-jsdoc": "^48.2.13", "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -1441,9 +1441,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.0.tgz", - "integrity": "sha512-QWuwm9wcGMAuTsxP+qz6LBBd3Uq8I5Nv8xb0mk54jmNoCyDspnMvVsOxI6IsMmway5d1S9Su2+sCKv1st2l6eA==", + "version": "7.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.1.tgz", + "integrity": "sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -1592,39 +1592,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.29.tgz", - "integrity": "sha512-TFKiRkKKsRCKvg/jTSSKK7mYLJEQdUiUfykbG49rubC9SfDyvT2JrzTReopWlz2MxqeLyxh9UZhvxEIBgAhtrg==", + "version": "3.4.30", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.30.tgz", + "integrity": "sha512-ZL8y4Xxdh8O6PSwfdZ1IpQ24PjTAieOz3jXb/MDTfDtANcKBMxg1KLm6OX2jofsaQGYfIVzd3BAG22i56/cF1w==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/shared": "3.4.29", + "@vue/shared": "3.4.30", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.29.tgz", - "integrity": "sha512-A6+iZ2fKIEGnfPJejdB7b1FlJzgiD+Y/sxxKwJWg1EbJu6ZPgzaPQQ51ESGNv0CP6jm6Z7/pO6Ia8Ze6IKrX7w==", + "version": "3.4.30", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.30.tgz", + "integrity": "sha512-+16Sd8lYr5j/owCbr9dowcNfrHd+pz+w2/b5Lt26Oz/kB90C9yNbxQ3bYOvt7rI2bxk0nqda39hVcwDFw85c2Q==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.29", - "@vue/shared": "3.4.29" + "@vue/compiler-core": "3.4.30", + "@vue/shared": "3.4.30" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.29.tgz", - "integrity": "sha512-zygDcEtn8ZimDlrEQyLUovoWgKQic6aEQqRXce2WXBvSeHbEbcAsXyCk9oG33ZkyWH4sl9D3tkYc1idoOkdqZQ==", + "version": "3.4.30", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.30.tgz", + "integrity": "sha512-8vElKklHn/UY8+FgUFlQrYAPbtiSB2zcgeRKW7HkpSRn/JjMRmZvuOtwDx036D1aqKNSTtXkWRfqx53Qb+HmMg==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/compiler-core": "3.4.29", - "@vue/compiler-dom": "3.4.29", - "@vue/compiler-ssr": "3.4.29", - "@vue/shared": "3.4.29", + "@vue/compiler-core": "3.4.30", + "@vue/compiler-dom": "3.4.30", + "@vue/compiler-ssr": "3.4.30", + "@vue/shared": "3.4.30", "estree-walker": "^2.0.2", "magic-string": "^0.30.10", "postcss": "^8.4.38", @@ -1632,19 +1632,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.29", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.29.tgz", - "integrity": "sha512-rFbwCmxJ16tDp3N8XCx5xSQzjhidYjXllvEcqX/lopkoznlNPz3jyy0WGJCyhAaVQK677WWFt3YO/WUEkMMUFQ==", + "version": "3.4.30", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.30.tgz", + "integrity": "sha512-ZJ56YZGXJDd6jky4mmM0rNaNP6kIbQu9LTKZDhcpddGe/3QIalB1WHHmZ6iZfFNyj5mSypTa4+qDJa5VIuxMSg==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.29", - "@vue/shared": "3.4.29" + "@vue/compiler-dom": "3.4.30", + "@vue/shared": "3.4.30" } }, "node_modules/@vue/shared": { - "version": "3.4.29", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.29.tgz", - "integrity": "sha512-hQ2gAQcBO/CDpC82DCrinJNgOHI2v+FA7BDW4lMSPeBpQ7sRe2OLHWe5cph1s7D8DUQAwRt18dBDfJJ220APEA==", + "version": "3.4.30", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.30.tgz", + "integrity": "sha512-CLg+f8RQCHQnKvuHY9adMsMaQOcqclh6Z5V9TaoMgy0ut0tz848joZ7/CYFFyF/yZ5i2yaw7Fn498C+CNZVHIg==", "dev": true }, "node_modules/abbrev": { @@ -3333,9 +3333,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.803", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.803.tgz", - "integrity": "sha512-61H9mLzGOCLLVsnLiRzCbc63uldP0AniRYPV3hbGVtONA1pI7qSGILdbofR7A8TMbOypDocEAjH/e+9k1QIe3g==", + "version": "1.4.810", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.810.tgz", + "integrity": "sha512-Kaxhu4T7SJGpRQx99tq216gCq2nMxJo+uuT6uzz9l8TVN2stL7M06MIIXAtr9jsrLs2Glflgf2vMQRepxawOdQ==", "dev": true }, "node_modules/emittery": { @@ -3526,9 +3526,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.12", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.12.tgz", - "integrity": "sha512-sO9sKkJx5ovWoRk9hV0YiNzXQ4Z6j27CqE/po2E3wddZVuy9wvKPSTiIhpxMTrP/qURvKayJIDB2+o9kyCW1Fw==", + "version": "48.2.13", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.13.tgz", + "integrity": "sha512-4MzMKN0uMIehmFUVzJxNmjc573HnTKLt7Qrg7QQyXC3JkHBweaVbHwgwG+T3boefD3NyLXRHNOYYPJqmslDvHA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.43.1", @@ -4361,14 +4361,15 @@ } }, "node_modules/glob": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", - "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" }, "bin": { @@ -4803,11 +4804,14 @@ } }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", + "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6660,6 +6664,11 @@ "node": ">=8" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==" + }, "node_modules/pacote": { "version": "18.0.6", "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 9df4a73b365..3a9c6bb01be 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.12", + "eslint-plugin-jsdoc": "^48.2.13", "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", From 548f066140bac2d7968ab3ef09ff35f4fe437baa Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 24 Jun 2024 07:44:44 +0000 Subject: [PATCH 1113/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 71 +++++++++++++++++++++++++++--- packages/project/package.json | 2 +- 2 files changed, 67 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7dd483a9fb1..1e6f308ba81 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.13", + "eslint-plugin-jsdoc": "^48.3.0", "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -1205,6 +1205,18 @@ "node": ">=14" } }, + "node_modules/@pkgr/core": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", + "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } + }, "node_modules/@rollup/pluginutils": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", @@ -3410,6 +3422,12 @@ "is-arrayish": "^0.2.1" } }, + "node_modules/es-module-lexer": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", + "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "dev": true + }, "node_modules/es6-error": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", @@ -3526,9 +3544,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.2.13", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.13.tgz", - "integrity": "sha512-4MzMKN0uMIehmFUVzJxNmjc573HnTKLt7Qrg7QQyXC3JkHBweaVbHwgwG+T3boefD3NyLXRHNOYYPJqmslDvHA==", + "version": "48.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.3.0.tgz", + "integrity": "sha512-lzQSh2gjPqrqYTL0774sLj/rJywP1UESxD43xBwAlehuI2H6mIKTwj6i4tdvVzmUMflx8yMzHzy4e4XWrKaNZQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.43.1", @@ -3537,8 +3555,10 @@ "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", + "parse-imports": "^2.1.0", "semver": "^7.6.2", - "spdx-expression-parse": "^4.0.0" + "spdx-expression-parse": "^4.0.0", + "synckit": "^0.9.0" }, "engines": { "node": ">=18" @@ -6720,6 +6740,19 @@ "node": ">=6" } }, + "node_modules/parse-imports": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/parse-imports/-/parse-imports-2.1.0.tgz", + "integrity": "sha512-JQWgmK2o4w8leUkZeZPatWdAny6vXGU/3siIUvMF6J2rDCud9aTt8h/px9oZJ6U3EcfhngBJ635uPFI0q0VAeA==", + "dev": true, + "dependencies": { + "es-module-lexer": "^1.5.3", + "slashes": "^3.0.12" + }, + "engines": { + "node": ">= 18" + } + }, "node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -7570,6 +7603,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/slashes": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/slashes/-/slashes-3.0.12.tgz", + "integrity": "sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==", + "dev": true + }, "node_modules/slice-ansi": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", @@ -8048,6 +8087,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/synckit": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.0.tgz", + "integrity": "sha512-7RnqIMq572L8PeEzKeBINYEJDDxpcH8JEgLwUqBd3TkofhFRbkq4QLR0u+36avGAhCRbk2nnmjcW9SE531hPDg==", + "dev": true, + "dependencies": { + "@pkgr/core": "^0.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } + }, "node_modules/tap-parser": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", @@ -8401,6 +8456,12 @@ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", "dev": true }, + "node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, "node_modules/tuf-js": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 3a9c6bb01be..b0cd6c40d88 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.2.13", + "eslint-plugin-jsdoc": "^48.3.0", "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", From 2dc9b2b6de5cbc8c8b9a9cb531550f09d785c900 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 21 Jun 2024 17:52:26 +0200 Subject: [PATCH 1114/1272] [ui5-project][INTERNAL] ES2023 Support JIRA: CPOUI5FOUNDATION-850 --- packages/project/.eslintrc.cjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.eslintrc.cjs b/packages/project/.eslintrc.cjs index 141b4f6bf56..ff7ac6fa829 100644 --- a/packages/project/.eslintrc.cjs +++ b/packages/project/.eslintrc.cjs @@ -4,7 +4,7 @@ module.exports = { }, "env": { "node": true, - "es2022": true + "es2023": true }, "extends": ["eslint:recommended", "plugin:ava/recommended", "google"], "plugins": [ From 015754cff7698e370cb4582ab90ccc4fde4cbc33 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 16 Jun 2024 10:32:59 +0000 Subject: [PATCH 1115/1272] [ui5-project][INTERNAL] Bump nyc from 15.1.0 to 17.0.0 Bumps [nyc](https://github.com/istanbuljs/nyc) from 15.1.0 to 17.0.0. - [Release notes](https://github.com/istanbuljs/nyc/releases) - [Changelog](https://github.com/istanbuljs/nyc/blob/main/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/nyc/compare/v15.1.0...nyc-v17.0.0) --- updated-dependencies: - dependency-name: nyc dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 36 +++++------------------------- packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 31 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1e6f308ba81..66f5085cbbb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -50,7 +50,7 @@ "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", "jsdoc": "^4.0.3", - "nyc": "^15.1.0", + "nyc": "^17.0.0", "open-cli": "^8.0.0", "sinon": "^18.0.0", "tap-xunit": "^2.4.1" @@ -6250,9 +6250,9 @@ } }, "node_modules/nyc": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", - "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-17.0.0.tgz", + "integrity": "sha512-ISp44nqNCaPugLLGGfknzQwSwt10SSS5IMoPR7GLoMAyS18Iw5js8U7ga2VF9lYuMZ42gOHr3UddZw4WZltxKg==", "dev": true, "dependencies": { "@istanbuljs/load-nyc-config": "^1.0.0", @@ -6267,7 +6267,7 @@ "glob": "^7.1.6", "istanbul-lib-coverage": "^3.0.0", "istanbul-lib-hook": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", + "istanbul-lib-instrument": "^6.0.2", "istanbul-lib-processinfo": "^2.0.2", "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^4.0.0", @@ -6287,7 +6287,7 @@ "nyc": "bin/nyc.js" }, "engines": { - "node": ">=8.9" + "node": ">=18" } }, "node_modules/nyc/node_modules/ansi-regex": { @@ -6393,21 +6393,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nyc/node_modules/istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", - "dev": true, - "dependencies": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/nyc/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -6448,15 +6433,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nyc/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/nyc/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index b0cd6c40d88..6e4882e387b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -169,7 +169,7 @@ "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", "jsdoc": "^4.0.3", - "nyc": "^15.1.0", + "nyc": "^17.0.0", "open-cli": "^8.0.0", "sinon": "^18.0.0", "tap-xunit": "^2.4.1" From bf015094a74da0b9b0d8feed1c5464d7e888e905 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 30 Jun 2024 02:20:37 +0000 Subject: [PATCH 1116/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 151 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 76 insertions(+), 77 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 66f5085cbbb..afc0b955305 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.3.0", + "eslint-plugin-jsdoc": "^48.5.0", "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", @@ -482,9 +482,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.1.tgz", - "integrity": "sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==", + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -953,9 +953,9 @@ } }, "node_modules/@npmcli/agent/node_modules/https-proxy-agent": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", - "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", "dependencies": { "agent-base": "^7.0.2", "debug": "4" @@ -965,9 +965,9 @@ } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", "engines": { "node": "14 || >=16.14" } @@ -1028,9 +1028,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", "engines": { "node": "14 || >=16.14" } @@ -1453,9 +1453,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "7.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.1.tgz", - "integrity": "sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw==", + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.14.1.tgz", + "integrity": "sha512-mL7zNEOQybo5R3AavY+Am7KLv8BorIv7HCYS5rKoNZKQD9tsfGUpO4KdAn3sSUvTiS4PQkr2+K0KJbxj8H9NDg==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -1604,39 +1604,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.30", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.30.tgz", - "integrity": "sha512-ZL8y4Xxdh8O6PSwfdZ1IpQ24PjTAieOz3jXb/MDTfDtANcKBMxg1KLm6OX2jofsaQGYfIVzd3BAG22i56/cF1w==", + "version": "3.4.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.31.tgz", + "integrity": "sha512-skOiodXWTV3DxfDhB4rOf3OGalpITLlgCeOwb+Y9GJpfQ8ErigdBUHomBzvG78JoVE8MJoQsb+qhZiHfKeNeEg==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/shared": "3.4.30", + "@vue/shared": "3.4.31", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.30", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.30.tgz", - "integrity": "sha512-+16Sd8lYr5j/owCbr9dowcNfrHd+pz+w2/b5Lt26Oz/kB90C9yNbxQ3bYOvt7rI2bxk0nqda39hVcwDFw85c2Q==", + "version": "3.4.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.31.tgz", + "integrity": "sha512-wK424WMXsG1IGMyDGyLqB+TbmEBFM78hIsOJ9QwUVLGrcSk0ak6zYty7Pj8ftm7nEtdU/DGQxAXp0/lM/2cEpQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.30", - "@vue/shared": "3.4.30" + "@vue/compiler-core": "3.4.31", + "@vue/shared": "3.4.31" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.30", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.30.tgz", - "integrity": "sha512-8vElKklHn/UY8+FgUFlQrYAPbtiSB2zcgeRKW7HkpSRn/JjMRmZvuOtwDx036D1aqKNSTtXkWRfqx53Qb+HmMg==", + "version": "3.4.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.31.tgz", + "integrity": "sha512-einJxqEw8IIJxzmnxmJBuK2usI+lJonl53foq+9etB2HAzlPjAS/wa7r0uUpXw5ByX3/0uswVSrjNb17vJm1kQ==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/compiler-core": "3.4.30", - "@vue/compiler-dom": "3.4.30", - "@vue/compiler-ssr": "3.4.30", - "@vue/shared": "3.4.30", + "@vue/compiler-core": "3.4.31", + "@vue/compiler-dom": "3.4.31", + "@vue/compiler-ssr": "3.4.31", + "@vue/shared": "3.4.31", "estree-walker": "^2.0.2", "magic-string": "^0.30.10", "postcss": "^8.4.38", @@ -1644,19 +1644,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.30", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.30.tgz", - "integrity": "sha512-ZJ56YZGXJDd6jky4mmM0rNaNP6kIbQu9LTKZDhcpddGe/3QIalB1WHHmZ6iZfFNyj5mSypTa4+qDJa5VIuxMSg==", + "version": "3.4.31", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.31.tgz", + "integrity": "sha512-RtefmITAje3fJ8FSg1gwgDhdKhZVntIVbwupdyZDSifZTRMiWxWehAOTCc8/KZDnBOcYQ4/9VWxsTbd3wT0hAA==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.30", - "@vue/shared": "3.4.30" + "@vue/compiler-dom": "3.4.31", + "@vue/shared": "3.4.31" } }, "node_modules/@vue/shared": { - "version": "3.4.30", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.30.tgz", - "integrity": "sha512-CLg+f8RQCHQnKvuHY9adMsMaQOcqclh6Z5V9TaoMgy0ut0tz848joZ7/CYFFyF/yZ5i2yaw7Fn498C+CNZVHIg==", + "version": "3.4.31", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.31.tgz", + "integrity": "sha512-Yp3wtJk//8cO4NItOPpi3QkLExAr/aLBGZMmTtW9WpdwBCJpRM6zj9WgWktXAl8IDIozwNMByT45JP3tO3ACWA==", "dev": true }, "node_modules/abbrev": { @@ -2174,9 +2174,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", "engines": { "node": "14 || >=16.14" } @@ -2238,9 +2238,9 @@ } }, "node_modules/callsites": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.1.0.tgz", - "integrity": "sha512-aBMbD1Xxay75ViYezwT40aQONfr+pSXTHwNKvIXhXD6+LY3F1dLIcceoC5OZKBVHbXcysz1hL9D2w0JJIMXpUw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.2.0.tgz", + "integrity": "sha512-kfzR4zzQtAE9PC7CzZsjl3aBNbXWuXiSeOCdLcPpBfGW8YuCqQHcRPFDbr/BPVmd3EEPVpuFzLyuT/cUhPr4OQ==", "dev": true, "engines": { "node": ">=12.20" @@ -2259,9 +2259,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001636", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001636.tgz", - "integrity": "sha512-bMg2vmr8XBsbL6Lr0UHXy/21m84FTxDLWn2FSqMd5PrlbMxwJlQnC2YWYxVgp66PZE+BBNF2jYQUBKCo1FDeZg==", + "version": "1.0.30001638", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001638.tgz", + "integrity": "sha512-5SuJUJ7cZnhPpeLHaH0c/HPAnAHZvS6ElWyHK9GSIbVOQABLzowiI2pjmpvZ1WEbkyz46iFd4UXlOHR5SqgfMQ==", "dev": true, "funding": [ { @@ -3345,9 +3345,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.810", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.810.tgz", - "integrity": "sha512-Kaxhu4T7SJGpRQx99tq216gCq2nMxJo+uuT6uzz9l8TVN2stL7M06MIIXAtr9jsrLs2Glflgf2vMQRepxawOdQ==", + "version": "1.4.815", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.815.tgz", + "integrity": "sha512-OvpTT2ItpOXJL7IGcYakRjHCt8L5GrrN/wHCQsRB4PQa1X9fe+X9oen245mIId7s14xvArCGSTIq644yPUKKLg==", "dev": true }, "node_modules/emittery": { @@ -3544,9 +3544,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.3.0.tgz", - "integrity": "sha512-lzQSh2gjPqrqYTL0774sLj/rJywP1UESxD43xBwAlehuI2H6mIKTwj6i4tdvVzmUMflx8yMzHzy4e4XWrKaNZQ==", + "version": "48.5.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.5.0.tgz", + "integrity": "sha512-ukXPNpGby3KjCveCizIS8t1EbuJEHYEu/tBg8GCbn/YbHcXwphyvYCdvRZ/oMRfTscGSSzfsWoZ+ZkAP0/6YMQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.43.1", @@ -4577,9 +4577,9 @@ } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", "engines": { "node": "14 || >=16.14" } @@ -5711,9 +5711,9 @@ } }, "node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -6127,12 +6127,11 @@ } }, "node_modules/normalize-package-data": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.1.tgz", - "integrity": "sha512-6rvCfeRW+OEZagAB4lMLSNuTNYZWLVtKccK79VSTf//yTY5VOCgcpH80O+bZK8Neps7pUnd5G+QlMg1yV/2iZQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", + "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==", "dependencies": { "hosted-git-info": "^7.0.0", - "is-core-module": "^2.8.1", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" }, @@ -6821,9 +6820,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", "engines": { "node": "14 || >=16.14" } @@ -6970,9 +6969,9 @@ } }, "node_modules/postcss": { - "version": "8.4.38", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", - "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", + "version": "8.4.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz", + "integrity": "sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==", "dev": true, "funding": [ { @@ -6990,7 +6989,7 @@ ], "dependencies": { "nanoid": "^3.3.7", - "picocolors": "^1.0.0", + "picocolors": "^1.0.1", "source-map-js": "^1.2.0" }, "engines": { @@ -7624,13 +7623,13 @@ } }, "node_modules/socks-proxy-agent": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.3.tgz", - "integrity": "sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", + "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", "dependencies": { "agent-base": "^7.1.1", "debug": "^4.3.4", - "socks": "^2.7.1" + "socks": "^2.8.3" }, "engines": { "node": ">= 14" diff --git a/packages/project/package.json b/packages/project/package.json index 6e4882e387b..34f1187abf5 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.3.0", + "eslint-plugin-jsdoc": "^48.5.0", "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.2", From 479f4ba03ac60306f93d204050746c96f719b9d9 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Tue, 2 Jul 2024 15:29:37 +0200 Subject: [PATCH 1117/1272] [ui5-project][FEATURE] Apply specVersion defaults from ui5.yaml.json schema (#733) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit JIRA: CPOUI5FOUNDATION-835 --------- Co-authored-by: Günter Klatt <57760635+KlattG@users.noreply.github.com> --- .../lib/build/definitions/application.js | 6 +- .../project/lib/build/definitions/library.js | 6 +- packages/project/lib/validation/validator.js | 75 ++++++++++++++++++- .../test/lib/build/definitions/application.js | 57 +++++++++----- .../test/lib/build/definitions/library.js | 57 +++++++++----- 5 files changed, 160 insertions(+), 41 deletions(-) diff --git a/packages/project/lib/build/definitions/application.js b/packages/project/lib/build/definitions/application.js index cb55a2a06a6..6b346ca9f76 100644 --- a/packages/project/lib/build/definitions/application.js +++ b/packages/project/lib/build/definitions/application.js @@ -1,4 +1,5 @@ import {enhancePatternWithExcludes} from "./_utils.js"; +import {enhanceBundlesWithDefaults} from "../../validation/validator.js"; /** * Get tasks and their configuration for a given application project @@ -84,7 +85,10 @@ export default function({project, taskUtil, getTask}) { requiresDependencies: true, taskFunction: async ({workspace, dependencies, taskUtil, options}) => { const generateBundleTask = await getTask("generateBundle"); - return bundles.reduce(function(sequence, bundle) { + // Async resolve default values for bundle definitions and options + const bundlesDefaults = await enhanceBundlesWithDefaults(bundles, taskUtil.getProject()); + + return bundlesDefaults.reduce(async function(sequence, bundle) { return sequence.then(function() { return generateBundleTask.task({ workspace, diff --git a/packages/project/lib/build/definitions/library.js b/packages/project/lib/build/definitions/library.js index 2e8808498a3..985db4e1dcb 100644 --- a/packages/project/lib/build/definitions/library.js +++ b/packages/project/lib/build/definitions/library.js @@ -1,4 +1,5 @@ import {enhancePatternWithExcludes} from "./_utils.js"; +import {enhanceBundlesWithDefaults} from "../../validation/validator.js"; /** * Get tasks and their configuration for a given application project @@ -119,7 +120,10 @@ export default function({project, taskUtil, getTask}) { requiresDependencies: true, taskFunction: async ({workspace, dependencies, taskUtil, options}) => { const generateBundleTask = await getTask("generateBundle"); - return bundles.reduce(function(sequence, bundle) { + // Async resolve default values for bundle definitions and options + const bundlesDefaults = await enhanceBundlesWithDefaults(bundles, taskUtil.getProject()); + + return bundlesDefaults.reduce(function(sequence, bundle) { return sequence.then(function() { return generateBundleTask.task({ workspace, diff --git a/packages/project/lib/validation/validator.js b/packages/project/lib/validation/validator.js index d994d41febc..233e792cb0b 100644 --- a/packages/project/lib/validation/validator.js +++ b/packages/project/lib/validation/validator.js @@ -18,7 +18,7 @@ export const SCHEMA_VARIANTS = { }; class Validator { - constructor({Ajv, ajvErrors, schemaName}) { + constructor({Ajv, ajvErrors, schemaName, ajvConfig}) { if (!schemaName || !SCHEMA_VARIANTS[schemaName]) { throw new Error( `"schemaName" is missing or incorrect. The available schemaName variants are ${Object.keys( @@ -29,11 +29,12 @@ class Validator { this._schemaName = SCHEMA_VARIANTS[schemaName]; - this.ajv = new Ajv({ + ajvConfig = Object.assign({ allErrors: true, jsonPointers: true, loadSchema: Validator.loadSchema - }); + }, ajvConfig); + this.ajv = new Ajv(ajvConfig); ajvErrors(this.ajv); } @@ -77,6 +78,7 @@ class Validator { } const validator = Object.create(null); +const defaultsValidator = Object.create(null); async function _validate(schemaName, options) { if (!validator[schemaName]) { @@ -91,6 +93,27 @@ async function _validate(schemaName, options) { await schemaValidator.validate(options); } +async function _validateAndSetDefaults(schemaName, options) { + if (!defaultsValidator[schemaName]) { + defaultsValidator[schemaName] = (async () => { + const {default: Ajv} = await import("ajv"); + const {default: ajvErrors} = await import("ajv-errors"); + return new Validator({Ajv, ajvErrors, ajvConfig: {useDefaults: true}, schemaName}); + })(); + } + + // When AJV is configured with useDefaults: true, it may add properties to the + // provided configuration that were not initially present. This behavior can + // lead to unexpected side effects and potential issues. To avoid these + // problems, we create a copy of the configuration. If we need the altered + // configuration later, we return this copied version. + const optionsCopy = structuredClone(options); + const schemaValidator = await defaultsValidator[schemaName]; + await schemaValidator.validate(optionsCopy); + + return optionsCopy; +} + /** * Validates the given ui5 configuration. * @@ -114,6 +137,52 @@ export async function validate(options) { await _validate("ui5", options); } +/** + * Validates the given ui5 configuration and returns default values if none are provided. + * + * @public + * @function + * @static + * @param {object} options + * @param {object} options.config The UI5 Configuration to validate + * @param {object} options.project Project information + * @param {string} options.project.id ID of the project + * @param {object} [options.yaml] YAML information + * @param {string} options.yaml.path Path of the YAML file + * @param {string} options.yaml.source Content of the YAML file + * @param {number} [options.yaml.documentIndex=0] Document index in case the YAML file contains multiple documents + * @throws {module:@ui5/project/validation/ValidationError} + * Rejects with a {@link @ui5/project/validation/ValidationError ValidationError} + * when the validation fails. + * @returns {Promise} Returns a Promise that resolves when the validation succeeds + */ +export async function getDefaults(options) { + return await _validateAndSetDefaults("ui5", options); +} + +/** + * Enhances bundleDefinition by adding missing properties with their respective default values. + * + * @param {object[]} bundles Bundles to be enhanced + * @param {module:@ui5/builder/processors/bundlers/moduleBundler~ModuleBundleDefinition} bundles[].bundleDefinition + * Module bundle definition + * @param {module:@ui5/builder/processors/bundlers/moduleBundler~ModuleBundleOptions} [bundles[].bundleOptions] + * Module bundle options + * @param {module:@ui5/project/specifications/Project} project The project to get metadata from + * @returns {Promise} The enhanced BundleDefinition & BundleOptions + */ +export async function enhanceBundlesWithDefaults(bundles, project) { + const config = { + specVersion: `${project.getSpecVersion()}`, + type: `${project.getType()}`, + metadata: {name: project.getName()}, + builder: {bundles} + }; + const result = await getDefaults({config, project: {id: project.getName()}}); + + return result.config.builder.bundles; +} + /** * Validates the given ui5-workspace configuration. * diff --git a/packages/project/test/lib/build/definitions/application.js b/packages/project/test/lib/build/definitions/application.js index d78f9313dfe..ec0a85d888c 100644 --- a/packages/project/test/lib/build/definitions/application.js +++ b/packages/project/test/lib/build/definitions/application.js @@ -31,13 +31,14 @@ function getMockProject() { } test.beforeEach((t) => { + t.context.project = getMockProject(); t.context.taskUtil = { + getProject: sinon.stub().returns(t.context.project), isRootProject: sinon.stub().returns(true), getBuildOption: sinon.stub(), getInterface: sinon.stub() }; - t.context.project = getMockProject(); t.context.getTask = sinon.stub(); }); @@ -198,12 +199,14 @@ test("Custom bundles", async (t) => { "project/b/sectionsA/", "!project/b/sectionsA/section2**", ] - }], - sort: true + }] }, bundleOptions: { optimize: true, - usePredefinedCalls: true + usePredefineCalls: true, + addTryCatchRestartWrapper: false, + decorateBootstrapModule: true, + numberOfParts: 1, } }, { bundleDefinition: { @@ -215,12 +218,14 @@ test("Custom bundles", async (t) => { "project/b/sectionsB/", "!project/b/sectionsB/section2**", ] - }], - sort: true + }] }, bundleOptions: { optimize: false, - usePredefinedCalls: true + usePredefineCalls: true, + addTryCatchRestartWrapper: false, + decorateBootstrapModule: true, + numberOfParts: 1, } }]; @@ -322,13 +327,20 @@ test("Custom bundles", async (t) => { filters: [ "project/b/sectionsA/", "!project/b/sectionsA/section2**", - ] - }], - sort: true + ], + declareRawModules: false, + renderer: false, + resolve: false, + resolveConditional: false, + sort: true, + }] }, bundleOptions: { optimize: true, - usePredefinedCalls: true + usePredefineCalls: true, + addTryCatchRestartWrapper: false, + decorateBootstrapModule: true, + numberOfParts: 1, } } }, "generateBundle task got called with correct arguments"); @@ -346,13 +358,20 @@ test("Custom bundles", async (t) => { filters: [ "project/b/sectionsB/", "!project/b/sectionsB/section2**", - ] - }], - sort: true + ], + declareRawModules: false, + renderer: false, + resolve: false, + resolveConditional: false, + sort: true, + }] }, bundleOptions: { optimize: false, - usePredefinedCalls: true + usePredefineCalls: true, + addTryCatchRestartWrapper: false, + decorateBootstrapModule: true, + numberOfParts: 1, } } }, "generateBundle task got called with correct arguments"); @@ -415,12 +434,14 @@ test("generateComponentPreload with custom paths, excludes and custom bundle", ( "project/b/sectionsA/", "!project/b/sectionsA/section2**", ] - }], - sort: true + }] }, bundleOptions: { optimize: true, - usePredefinedCalls: true + usePredefineCalls: true, + addTryCatchRestartWrapper: false, + decorateBootstrapModule: true, + numberOfParts: 1, } }]; diff --git a/packages/project/test/lib/build/definitions/library.js b/packages/project/test/lib/build/definitions/library.js index 510ecb548f8..1864aa500ac 100644 --- a/packages/project/test/lib/build/definitions/library.js +++ b/packages/project/test/lib/build/definitions/library.js @@ -34,13 +34,14 @@ function getMockProject() { } test.beforeEach((t) => { + t.context.project = getMockProject(); t.context.taskUtil = { + getProject: sinon.stub().returns(t.context.project), isRootProject: sinon.stub().returns(true), getBuildOption: sinon.stub(), getInterface: sinon.stub() }; - t.context.project = getMockProject(); t.context.getTask = sinon.stub(); }); @@ -277,12 +278,14 @@ test("Custom bundles", async (t) => { "project/b/sectionsA/", "!project/b/sectionsA/section2**", ] - }], - sort: true + }] }, bundleOptions: { optimize: true, - usePredefinedCalls: true + usePredefineCalls: true, + addTryCatchRestartWrapper: false, + decorateBootstrapModule: true, + numberOfParts: 1, } }, { bundleDefinition: { @@ -294,12 +297,14 @@ test("Custom bundles", async (t) => { "project/b/sectionsB/", "!project/b/sectionsB/section2**", ] - }], - sort: true + }] }, bundleOptions: { optimize: false, - usePredefinedCalls: true + usePredefineCalls: true, + addTryCatchRestartWrapper: false, + decorateBootstrapModule: true, + numberOfParts: 1, } }]; @@ -415,13 +420,20 @@ test("Custom bundles", async (t) => { filters: [ "project/b/sectionsA/", "!project/b/sectionsA/section2**", - ] - }], - sort: true + ], + declareRawModules: false, + renderer: false, + resolve: false, + resolveConditional: false, + sort: true, + }] }, bundleOptions: { optimize: true, - usePredefinedCalls: true + usePredefineCalls: true, + addTryCatchRestartWrapper: false, + decorateBootstrapModule: true, + numberOfParts: 1, } } }, "generateBundle task got called with correct arguments"); @@ -439,13 +451,20 @@ test("Custom bundles", async (t) => { filters: [ "project/b/sectionsB/", "!project/b/sectionsB/section2**", - ] - }], - sort: true + ], + declareRawModules: false, + renderer: false, + resolve: false, + resolveConditional: false, + sort: true, + }] }, bundleOptions: { optimize: false, - usePredefinedCalls: true + usePredefineCalls: true, + addTryCatchRestartWrapper: false, + decorateBootstrapModule: true, + numberOfParts: 1, } } }, "generateBundle task got called with correct arguments"); @@ -508,12 +527,14 @@ test("generateComponentPreload with custom paths, excludes and custom bundle", ( "project/b/sectionsA/", "!project/b/sectionsA/section2**", ] - }], - sort: true + }] }, bundleOptions: { optimize: true, - usePredefinedCalls: true + usePredefineCalls: true, + addTryCatchRestartWrapper: false, + decorateBootstrapModule: true, + numberOfParts: 1, } }]; From 84c1aba6b51eed03a1e4fb1c993bb8e498210990 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 7 Jul 2024 02:20:21 +0000 Subject: [PATCH 1118/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 160 ++++++++++++++--------------- packages/project/package.json | 8 +- 2 files changed, 84 insertions(+), 84 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index afc0b955305..2cdf42da6c7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -16,7 +16,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.3.0", "escape-string-regexp": "^5.0.0", - "globby": "^14.0.1", + "globby": "^14.0.2", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", @@ -27,7 +27,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^5.0.7", + "rimraf": "^5.0.8", "semver": "^7.6.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -42,10 +42,10 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.5.0", + "eslint-plugin-jsdoc": "^48.5.2", "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", - "istanbul-lib-instrument": "^6.0.2", + "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", @@ -965,11 +965,11 @@ } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", - "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.1.tgz", + "integrity": "sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==", "engines": { - "node": "14 || >=16.14" + "node": ">=18" } }, "node_modules/@npmcli/config": { @@ -1028,11 +1028,11 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", - "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.1.tgz", + "integrity": "sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==", "engines": { - "node": "14 || >=16.14" + "node": ">=18" } }, "node_modules/@npmcli/git/node_modules/which": { @@ -1453,9 +1453,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.14.1.tgz", - "integrity": "sha512-mL7zNEOQybo5R3AavY+Am7KLv8BorIv7HCYS5rKoNZKQD9tsfGUpO4KdAn3sSUvTiS4PQkr2+K0KJbxj8H9NDg==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.15.0.tgz", + "integrity": "sha512-aV1+B1+ySXbQH0pLK0rx66I3IkiZNidYobyfn0WFsdGhSXw+P3YOqeTq5GED458SfB24tg+ux3S+9g118hjlTw==", "dev": true, "engines": { "node": "^18.18.0 || >=20.0.0" @@ -1668,9 +1668,9 @@ } }, "node_modules/acorn": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", - "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", + "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -2174,11 +2174,11 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", - "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.1.tgz", + "integrity": "sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==", "engines": { - "node": "14 || >=16.14" + "node": ">=18" } }, "node_modules/cacache/node_modules/p-map": { @@ -2259,9 +2259,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001638", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001638.tgz", - "integrity": "sha512-5SuJUJ7cZnhPpeLHaH0c/HPAnAHZvS6ElWyHK9GSIbVOQABLzowiI2pjmpvZ1WEbkyz46iFd4UXlOHR5SqgfMQ==", + "version": "1.0.30001640", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001640.tgz", + "integrity": "sha512-lA4VMpW0PSUrFnkmVuEKBUovSWKhj7puyCg8StBChgu298N1AtuF1sKWEvfDuimSEDbhlb/KqPKC3fs1HbuQUA==", "dev": true, "funding": [ { @@ -2598,9 +2598,9 @@ "dev": true }, "node_modules/cli-truncate/node_modules/string-width": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.1.0.tgz", - "integrity": "sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "dev": true, "dependencies": { "emoji-regex": "^10.3.0", @@ -3345,9 +3345,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.815", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.815.tgz", - "integrity": "sha512-OvpTT2ItpOXJL7IGcYakRjHCt8L5GrrN/wHCQsRB4PQa1X9fe+X9oen245mIId7s14xvArCGSTIq644yPUKKLg==", + "version": "1.4.818", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.818.tgz", + "integrity": "sha512-eGvIk2V0dGImV9gWLq8fDfTTsCAeMDwZqEPMr+jMInxZdnp9Us8UpovYpRCf9NQ7VOFgrN2doNSgvISbsbNpxA==", "dev": true }, "node_modules/emittery": { @@ -3544,15 +3544,15 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.5.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.5.0.tgz", - "integrity": "sha512-ukXPNpGby3KjCveCizIS8t1EbuJEHYEu/tBg8GCbn/YbHcXwphyvYCdvRZ/oMRfTscGSSzfsWoZ+ZkAP0/6YMQ==", + "version": "48.5.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.5.2.tgz", + "integrity": "sha512-VXBJFviQz30rynlOEQ+dNWLmeopjoAgutUVrWOZwm6Ki4EVDm4XkyIqAV/Zhf7FcDr0AG0aGmRn5FxxCtAF0tA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.43.1", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", - "debug": "^4.3.4", + "debug": "^4.3.5", "escape-string-regexp": "^4.0.0", "esquery": "^1.5.0", "parse-imports": "^2.1.0", @@ -4381,9 +4381,9 @@ } }, "node_modules/glob": { - "version": "10.4.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", - "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.3.tgz", + "integrity": "sha512-Q38SGlYRpVtDBPSWEylRyctn7uDeTp4NQERTLiCT1FqA9JXPYWqAVmQU6qh4r/zMM5ehxTcbaO8EjhWnvEhmyg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", @@ -4396,7 +4396,7 @@ "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">=16 || 14 >=14.18" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -4471,9 +4471,9 @@ } }, "node_modules/globby": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.1.tgz", - "integrity": "sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==", + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.2.tgz", + "integrity": "sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==", "dependencies": { "@sindresorhus/merge-streams": "^2.1.0", "fast-glob": "^3.3.2", @@ -4577,11 +4577,11 @@ } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", - "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.1.tgz", + "integrity": "sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==", "engines": { - "node": "14 || >=16.14" + "node": ">=18" } }, "node_modules/html-escaper": { @@ -5024,9 +5024,9 @@ } }, "node_modules/istanbul-lib-instrument": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.2.tgz", - "integrity": "sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", "dev": true, "dependencies": { "@babel/core": "^7.23.9", @@ -5184,14 +5184,14 @@ } }, "node_modules/jackspeak": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", - "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.1.tgz", + "integrity": "sha512-U23pQPDnmYybVkYjObcuYMk43VRlMLLqLI+RdZy8s8WV8WsxO9SnqSroKaluuvcNOdCAlauKszDwd+umbot5Mg==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, "engines": { - "node": ">=14" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -6716,9 +6716,9 @@ } }, "node_modules/parse-imports": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/parse-imports/-/parse-imports-2.1.0.tgz", - "integrity": "sha512-JQWgmK2o4w8leUkZeZPatWdAny6vXGU/3siIUvMF6J2rDCud9aTt8h/px9oZJ6U3EcfhngBJ635uPFI0q0VAeA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/parse-imports/-/parse-imports-2.1.1.tgz", + "integrity": "sha512-TDT4HqzUiTMO1wJRwg/t/hYk8Wdp3iF/ToMIlAoVQfL1Xs/sTxq1dKWSMjMbQmIarfWKymOyly40+zmPHXMqCA==", "dev": true, "dependencies": { "es-module-lexer": "^1.5.3", @@ -6820,11 +6820,11 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", - "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.1.tgz", + "integrity": "sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==", "engines": { - "node": "14 || >=16.14" + "node": ">=18" } }, "node_modules/path-to-regexp": { @@ -6842,9 +6842,9 @@ } }, "node_modules/peek-readable": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz", - "integrity": "sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.1.1.tgz", + "integrity": "sha512-4hEOSH7KeEaZpMDF/xfm1W9fS5rT7Ett3BkXWHqAEzRLLwLaHkwOL+GvvpIEh9UrvX9BDhzfkvteslgraoH69w==", "dev": true, "engines": { "node": ">=14.16" @@ -7153,9 +7153,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.20.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.1.tgz", - "integrity": "sha512-R6wDsVsoS9xYOpy8vgeBlqpdOyzJ12HNfQhC/aAKWM3YoCV9TtunJzh/QpkMgeDhkoynDcw5f1y+qF9yc/HHyg==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "engines": { "node": ">=16" }, @@ -7198,9 +7198,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.20.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.1.tgz", - "integrity": "sha512-R6wDsVsoS9xYOpy8vgeBlqpdOyzJ12HNfQhC/aAKWM3YoCV9TtunJzh/QpkMgeDhkoynDcw5f1y+qF9yc/HHyg==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "engines": { "node": ">=16" }, @@ -7372,9 +7372,9 @@ } }, "node_modules/rimraf": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.7.tgz", - "integrity": "sha512-nV6YcJo5wbLW77m+8KjH8aB/7/rxQy9SZ0HY5shnwULfS+9nmTtVXAJET5NdZmCzA4fPI/Hm1wo/Po/4mopOdg==", + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.8.tgz", + "integrity": "sha512-XSh0V2/yNhDEi8HwdIefD8MLgs4LQXPag/nEJWs3YUc3Upn+UHa1GyIkEg9xSSNt7HnkO5FjTvmcRzgf+8UZuw==", "dependencies": { "glob": "^10.3.7" }, @@ -7382,7 +7382,7 @@ "rimraf": "dist/esm/bin.mjs" }, "engines": { - "node": ">=14.18" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -7980,13 +7980,13 @@ } }, "node_modules/strtok3": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0.tgz", - "integrity": "sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.1.0.tgz", + "integrity": "sha512-19dQEwG6Jd+VabjPRyBhymIF069vZiqWSZa2jJBoKJTsqGKnTxowGoQaLnz+yLARfDI041IUQekyPUMWElOgsQ==", "dev": true, "dependencies": { "@tokenizer/token": "^0.3.0", - "peek-readable": "^5.0.0" + "peek-readable": "^5.1.1" }, "engines": { "node": ">=14.16" @@ -8550,9 +8550,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", - "integrity": "sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", + "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", "dev": true, "funding": [ { diff --git a/packages/project/package.json b/packages/project/package.json index 34f1187abf5..4abf7d4696e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.3.0", "escape-string-regexp": "^5.0.0", - "globby": "^14.0.1", + "globby": "^14.0.2", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", @@ -138,7 +138,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^5.0.7", + "rimraf": "^5.0.8", "semver": "^7.6.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -161,10 +161,10 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.5.0", + "eslint-plugin-jsdoc": "^48.5.2", "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", - "istanbul-lib-instrument": "^6.0.2", + "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", From 89a9428af8bff422090b589083b25967eabac5db Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 8 Jul 2024 05:32:11 +0000 Subject: [PATCH 1119/1272] [ui5-project]Bump fsfe/reuse-action from 3 to 4 Bumps [fsfe/reuse-action](https://github.com/fsfe/reuse-action) from 3 to 4. - [Release notes](https://github.com/fsfe/reuse-action/releases) - [Commits](https://github.com/fsfe/reuse-action/compare/v3...v4) --- updated-dependencies: - dependency-name: fsfe/reuse-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/reuse-compliance.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index 0ea5d100a7a..18a8a8494cc 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -15,4 +15,4 @@ jobs: steps: - uses: actions/checkout@v4 - name: Execute REUSE Compliance Check - uses: fsfe/reuse-action@v3 + uses: fsfe/reuse-action@v4 From 524c9c2c000ee56a8b3cf03d845cd9efbe9dd47a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 1 Jul 2024 18:15:31 +0200 Subject: [PATCH 1120/1272] [ui5-project][INTERNAL] library: Replace buildtime timestamp in sap/ui/core/Core.js The framework intends to move the buildtime timestamp from Global.js to Core.js. With this change, UI5 Tooling will always scan both files for the placeholder and process it accordingly. JIRA: CPOUI5FRAMEWORK-647 --- packages/project/lib/build/definitions/library.js | 2 +- packages/project/test/lib/build/definitions/library.js | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/lib/build/definitions/library.js b/packages/project/lib/build/definitions/library.js index 985db4e1dcb..e2a866a7f4f 100644 --- a/packages/project/lib/build/definitions/library.js +++ b/packages/project/lib/build/definitions/library.js @@ -35,7 +35,7 @@ export default function({project, taskUtil, getTask}) { tasks.set("replaceBuildtime", { options: { - pattern: "/resources/sap/ui/Global.js" + pattern: "/resources/sap/ui/{Global,core/Core}.js" } }); diff --git a/packages/project/test/lib/build/definitions/library.js b/packages/project/test/lib/build/definitions/library.js index 1864aa500ac..901e24a3cd1 100644 --- a/packages/project/test/lib/build/definitions/library.js +++ b/packages/project/test/lib/build/definitions/library.js @@ -78,7 +78,7 @@ test("Standard build", async (t) => { }, replaceBuildtime: { options: { - pattern: "/resources/sap/ui/Global.js" + pattern: "/resources/sap/ui/{Global,core/Core}.js" } }, generateJsdoc: { @@ -214,7 +214,7 @@ test("Standard build with legacy spec version", (t) => { }, replaceBuildtime: { options: { - pattern: "/resources/sap/ui/Global.js" + pattern: "/resources/sap/ui/{Global,core/Core}.js" } }, generateJsdoc: { @@ -339,7 +339,7 @@ test("Custom bundles", async (t) => { }, replaceBuildtime: { options: { - pattern: "/resources/sap/ui/Global.js" + pattern: "/resources/sap/ui/{Global,core/Core}.js" } }, generateJsdoc: { @@ -682,7 +682,7 @@ test("Standard build: nulled taskFunction to skip tasks", (t) => { }, replaceBuildtime: { options: { - pattern: "/resources/sap/ui/Global.js" + pattern: "/resources/sap/ui/{Global,core/Core}.js" } }, generateJsdoc: { From 9b223f7419ab7206c89ef03bdd73e577f687ca46 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 10 Jul 2024 09:53:59 +0200 Subject: [PATCH 1121/1272] [ui5-project][INTERNAL] package.json: Allow npm >= v8 There is no actual need to increase the minimum npm version. Lockfile v3 is already supported --- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2cdf42da6c7..d9c0449ab31 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -57,7 +57,7 @@ }, "engines": { "node": "^20.11.0 || >=21.2.0", - "npm": ">= 10" + "npm": ">= 8" }, "peerDependencies": { "@ui5/builder": "^3.4.1 || 4.0.0-alpha" diff --git a/packages/project/package.json b/packages/project/package.json index 4abf7d4696e..eebc55821cb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -34,7 +34,7 @@ }, "engines": { "node": "^20.11.0 || >=21.2.0", - "npm": ">= 10" + "npm": ">= 8" }, "scripts": { "test": "npm run lint && npm run jsdoc-generate && npm run coverage && npm run depcheck", From c84f8ee817117cbe512aca4e83f97783b3a2ca00 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 11 Jul 2024 13:20:17 +0200 Subject: [PATCH 1122/1272] [ui5-project][INTERNAL] CHANGELOG.md: Add latest UI5 Tooling V3 releases JIRA: CPOUI5FOUNDATION-846 --- packages/project/CHANGELOG.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 6a486b22b7b..4412509004b 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.9.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.9.2...HEAD). + + +## [v3.9.2] - 2024-06-24 +### Dependency Updates +- Bump pacote from 17.0.7 to 18.0.6 [`9b6d580`](https://github.com/SAP/ui5-project/commit/9b6d58085bb74e4a2dfc1dccf528434db217e868) + + + +## [v3.9.1] - 2024-03-27 ## [v3.9.0] - 2023-12-12 @@ -493,6 +502,8 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v3.9.2]: https://github.com/SAP/ui5-project/compare/v3.9.1...v3.9.2 +[v3.9.1]: https://github.com/SAP/ui5-project/compare/v3.9.0...v3.9.1 [v3.9.0]: https://github.com/SAP/ui5-project/compare/v3.8.0...v3.9.0 [v3.8.0]: https://github.com/SAP/ui5-project/compare/v3.7.3...v3.8.0 [v3.7.3]: https://github.com/SAP/ui5-project/compare/v3.7.2...v3.7.3 From 39739735939d5cb9ff065f7f394fcd4069719e4f Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 12 Jul 2024 15:09:26 +0200 Subject: [PATCH 1123/1272] [ui5-project][FEATURE] manifest.json: Auto-fill supportedLocales (#683) JIRA: CPOUI5FOUNDATION-296 Depends on: - https://github.com/SAP/ui5-builder/pull/957 - https://github.com/SAP/ui5-server/pull/617 --- packages/project/lib/build/definitions/application.js | 2 ++ packages/project/lib/build/definitions/library.js | 2 ++ packages/project/test/lib/build/TaskRunner.js | 6 ++++++ packages/project/test/lib/build/definitions/application.js | 3 +++ packages/project/test/lib/build/definitions/library.js | 4 ++++ 5 files changed, 17 insertions(+) diff --git a/packages/project/lib/build/definitions/application.js b/packages/project/lib/build/definitions/application.js index 6b346ca9f76..c546ee9d6bf 100644 --- a/packages/project/lib/build/definitions/application.js +++ b/packages/project/lib/build/definitions/application.js @@ -47,6 +47,8 @@ export default function({project, taskUtil, getTask}) { } }); + tasks.set("enhanceManifest", {}); + tasks.set("generateFlexChangesBundle", {}); const bundles = project.getBundles(); diff --git a/packages/project/lib/build/definitions/library.js b/packages/project/lib/build/definitions/library.js index e2a866a7f4f..9b92177d1cd 100644 --- a/packages/project/lib/build/definitions/library.js +++ b/packages/project/lib/build/definitions/library.js @@ -89,6 +89,8 @@ export default function({project, taskUtil, getTask}) { tasks.set("generateLibraryManifest", {}); + tasks.set("enhanceManifest", {}); + const bundles = project.getBundles(); const existingBundleDefinitionNames = bundles.map(({bundleDefinition}) => bundleDefinition.name).filter(Boolean); diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index e27aeffa722..dcd294dbd53 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -214,6 +214,7 @@ test("_initTasks: Project of type 'application'", async (t) => { "replaceCopyright", "replaceVersion", "minify", + "enhanceManifest", "generateFlexChangesBundle", "generateComponentPreload", "generateStandaloneAppBundle", @@ -242,6 +243,7 @@ test("_initTasks: Project of type 'library'", async (t) => { "executeJsdocSdkTransformation", "minify", "generateLibraryManifest", + "enhanceManifest", "generateComponentPreload", "generateLibraryPreload", "generateBundle", @@ -271,6 +273,7 @@ test("_initTasks: Project of type 'library' (framework project)", async (t) => { "executeJsdocSdkTransformation", "minify", "generateLibraryManifest", + "enhanceManifest", "generateComponentPreload", "generateLibraryPreload", "generateBundle", @@ -354,6 +357,7 @@ test("_initTasks: Custom tasks", async (t) => { "replaceVersion", "minify", "myTask", + "enhanceManifest", "generateFlexChangesBundle", "generateComponentPreload", "generateStandaloneAppBundle", @@ -493,6 +497,7 @@ test("_initTasks: Multiple custom tasks with same name", async (t) => { "myTask--3", "myTask", "myTask--2", + "enhanceManifest", "generateFlexChangesBundle", "generateComponentPreload", "generateStandaloneAppBundle", @@ -1282,6 +1287,7 @@ test("Custom task attached to a disabled task", async (t) => { "replaceCopyright", "replaceVersion", "minify", + "enhanceManifest", "generateFlexChangesBundle", "generateComponentPreload", "myTask", diff --git a/packages/project/test/lib/build/definitions/application.js b/packages/project/test/lib/build/definitions/application.js index ec0a85d888c..742d398e988 100644 --- a/packages/project/test/lib/build/definitions/application.js +++ b/packages/project/test/lib/build/definitions/application.js @@ -72,6 +72,7 @@ test("Standard build", (t) => { ] } }, + enhanceManifest: {}, generateFlexChangesBundle: {}, generateComponentPreload: { options: { @@ -151,6 +152,7 @@ test("Standard build with legacy spec version", (t) => { ] } }, + enhanceManifest: {}, generateFlexChangesBundle: {}, generateComponentPreload: { options: { @@ -263,6 +265,7 @@ test("Custom bundles", async (t) => { ] } }, + enhanceManifest: {}, generateFlexChangesBundle: {}, generateComponentPreload: { options: { diff --git a/packages/project/test/lib/build/definitions/library.js b/packages/project/test/lib/build/definitions/library.js index 901e24a3cd1..121e8951442 100644 --- a/packages/project/test/lib/build/definitions/library.js +++ b/packages/project/test/lib/build/definitions/library.js @@ -100,6 +100,7 @@ test("Standard build", async (t) => { } }, generateLibraryManifest: {}, + enhanceManifest: {}, generateLibraryPreload: { options: { excludes: [], skipBundles: [] @@ -236,6 +237,7 @@ test("Standard build with legacy spec version", (t) => { } }, generateLibraryManifest: {}, + enhanceManifest: {}, generateLibraryPreload: { options: { excludes: [], skipBundles: [] @@ -361,6 +363,7 @@ test("Custom bundles", async (t) => { } }, generateLibraryManifest: {}, + enhanceManifest: {}, generateLibraryPreload: { options: { excludes: [], @@ -704,6 +707,7 @@ test("Standard build: nulled taskFunction to skip tasks", (t) => { } }, generateLibraryManifest: {}, + enhanceManifest: {}, generateLibraryPreload: { options: { excludes: [], skipBundles: [] From db7785431bf716fa67d53c3581879b0b015630b9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 14 Jul 2024 02:20:11 +0000 Subject: [PATCH 1124/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 475 +++++++++++------------------ packages/project/package.json | 6 +- 2 files changed, 188 insertions(+), 293 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d9c0449ab31..89de551c2fd 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "4.0.0-alpha", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.3.3", + "@npmcli/config": "^8.3.4", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -27,7 +27,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^5.0.8", + "rimraf": "^5.0.9", "semver": "^7.6.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -42,7 +42,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.5.2", + "eslint-plugin-jsdoc": "^48.7.0", "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", @@ -94,30 +94,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.7.tgz", - "integrity": "sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.8.tgz", + "integrity": "sha512-c4IM7OTg6k1Q+AJ153e2mc2QVTezTwnb4VzquwcyiEzGnW0Kedv4do/TrkU98qPeC5LNiMt/QXwIjzYXLBpyZg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.7.tgz", - "integrity": "sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.8.tgz", + "integrity": "sha512-6AWcmZC/MZCO0yKys4uhg5NlxL0ESF3K6IAaoQ+xSXvPyPyxNWRafP+GDbI88Oh68O7QkJgmEtedWPM9U0pZNg==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.24.7", - "@babel/helper-compilation-targets": "^7.24.7", - "@babel/helper-module-transforms": "^7.24.7", - "@babel/helpers": "^7.24.7", - "@babel/parser": "^7.24.7", + "@babel/generator": "^7.24.8", + "@babel/helper-compilation-targets": "^7.24.8", + "@babel/helper-module-transforms": "^7.24.8", + "@babel/helpers": "^7.24.8", + "@babel/parser": "^7.24.8", "@babel/template": "^7.24.7", - "@babel/traverse": "^7.24.7", - "@babel/types": "^7.24.7", + "@babel/traverse": "^7.24.8", + "@babel/types": "^7.24.8", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -142,12 +142,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", - "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.8.tgz", + "integrity": "sha512-47DG+6F5SzOi0uEvK4wMShmn5yY0mVjVJoWTphdY2B4Rx9wHgjK7Yhtr0ru6nE+sn0v38mzrWOlah0p/YlHHOQ==", "dev": true, "dependencies": { - "@babel/types": "^7.24.7", + "@babel/types": "^7.24.8", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -157,14 +157,14 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz", - "integrity": "sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.8.tgz", + "integrity": "sha512-oU+UoqCHdp+nWVDkpldqIQL/i/bvAv53tRqLG/s+cOXxe66zOYLU7ar/Xs3LdmBihrUMEUhwu6dMZwbNOYDwvw==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.24.7", - "@babel/helper-validator-option": "^7.24.7", - "browserslist": "^4.22.2", + "@babel/compat-data": "^7.24.8", + "@babel/helper-validator-option": "^7.24.8", + "browserslist": "^4.23.1", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -232,9 +232,9 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz", - "integrity": "sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.8.tgz", + "integrity": "sha512-m4vWKVqvkVAWLXfHCCfff2luJj86U+J0/x+0N3ArG/tP0Fq7zky2dYwMbtPmkc/oulkkbjdL3uWzuoBwQ8R00Q==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.24.7", @@ -251,9 +251,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz", - "integrity": "sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz", + "integrity": "sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==", "dev": true, "engines": { "node": ">=6.9.0" @@ -285,9 +285,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", - "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", + "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -302,22 +302,22 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz", - "integrity": "sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz", + "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.7.tgz", - "integrity": "sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.8.tgz", + "integrity": "sha512-gV2265Nkcz7weJJfvDoAEVzC1e2OTDpkGbEsebse8koXUJUXPsCMi7sRo/+SPMuMZ9MtUPnGwITTnQnU5YjyaQ==", "dev": true, "dependencies": { "@babel/template": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/types": "^7.24.8" }, "engines": { "node": ">=6.9.0" @@ -389,9 +389,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", - "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.8.tgz", + "integrity": "sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -415,19 +415,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", - "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.8.tgz", + "integrity": "sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.24.7", + "@babel/generator": "^7.24.8", "@babel/helper-environment-visitor": "^7.24.7", "@babel/helper-function-name": "^7.24.7", "@babel/helper-hoist-variables": "^7.24.7", "@babel/helper-split-export-declaration": "^7.24.7", - "@babel/parser": "^7.24.7", - "@babel/types": "^7.24.7", + "@babel/parser": "^7.24.8", + "@babel/types": "^7.24.8", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -436,12 +436,12 @@ } }, "node_modules/@babel/types": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", - "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.8.tgz", + "integrity": "sha512-SkSBEHwwJRU52QEVZBmMBnE5Ux2/6WU1grdYyOhpbCNxbmJrDuDCphBzKZSO3taf0zztp+qkWlymE5tVL5l0TA==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-string-parser": "^7.24.8", "@babel/helper-validator-identifier": "^7.24.7", "to-fast-properties": "^2.0.0" }, @@ -450,16 +450,13 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.43.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.43.1.tgz", - "integrity": "sha512-I238eDtOolvCuvtxrnqtlBaw0BwdQuYqK7eA6XIonicMdOOOb75mqdIzkGDUbS04+1Di007rgm9snFRNeVrOog==", + "version": "0.46.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.46.0.tgz", + "integrity": "sha512-C3Axuq1xd/9VqFZpW4YAzOx5O9q/LP46uIQy/iNDpHG3fmPa6TBtvfglMCs3RBiBxAIi0Go97r8+jvTt55XMyQ==", "dev": true, "dependencies": { - "@types/eslint": "^8.56.5", - "@types/estree": "^1.0.5", - "@typescript-eslint/types": "^7.2.0", "comment-parser": "1.4.1", - "esquery": "^1.5.0", + "esquery": "^1.6.0", "jsdoc-type-pratt-parser": "~4.0.0" }, "engines": { @@ -767,9 +764,9 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { @@ -965,24 +962,21 @@ } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.1.tgz", - "integrity": "sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==", - "engines": { - "node": ">=18" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/@npmcli/config": { - "version": "8.3.3", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.3.3.tgz", - "integrity": "sha512-sIMKHiiYr91ALiHjhPq64F5P/SCaiSyDfpNmgYHtlIJtLY445+3+r3VoREzpdDrOwIqwQ6iEHinbTfaocL0UgA==", + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.3.4.tgz", + "integrity": "sha512-01rtHedemDNhUXdicU7s+QYz/3JyV5Naj84cvdXGH4mgCdL+agmSYaLF4LUG4vMCLzhBO8YtS0gPpH1FGvbgAw==", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", + "@npmcli/package-json": "^5.1.1", "ci-info": "^4.0.0", "ini": "^4.1.2", "nopt": "^7.2.1", "proc-log": "^4.2.0", - "read-package-json-fast": "^3.0.2", "semver": "^7.3.5", "walk-up-path": "^3.0.1" }, @@ -1002,11 +996,12 @@ } }, "node_modules/@npmcli/git": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.7.tgz", - "integrity": "sha512-WaOVvto604d5IpdCRV2KjQu8PzkfE96d50CQGKgywXh2GxXmDeUO5EWcBC4V57uFyrNqx83+MewuJh3WTR3xPA==", + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz", + "integrity": "sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ==", "dependencies": { "@npmcli/promise-spawn": "^7.0.0", + "ini": "^4.1.3", "lru-cache": "^10.0.1", "npm-pick-manifest": "^9.0.0", "proc-log": "^4.0.0", @@ -1019,35 +1014,10 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/git/node_modules/isexe": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", - "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", - "engines": { - "node": ">=16" - } - }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.1.tgz", - "integrity": "sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==", - "engines": { - "node": ">=18" - } - }, - "node_modules/@npmcli/git/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^16.13.0 || >=18.0.0" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/@npmcli/installed-package-contents": { "version": "2.1.0", @@ -1122,28 +1092,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/promise-spawn/node_modules/isexe": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", - "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", - "engines": { - "node": ">=16" - } - }, - "node_modules/@npmcli/promise-spawn/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^16.13.0 || >=18.0.0" - } - }, "node_modules/@npmcli/redact": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.1.tgz", @@ -1168,28 +1116,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/run-script/node_modules/isexe": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", - "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", - "engines": { - "node": ">=16" - } - }, - "node_modules/@npmcli/run-script/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^16.13.0 || >=18.0.0" - } - }, "node_modules/@one-ini/wasm": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@one-ini/wasm/-/wasm-0.1.1.tgz", @@ -1391,28 +1317,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@types/eslint": { - "version": "8.56.10", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", - "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true - }, "node_modules/@types/linkify-it": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", @@ -1452,19 +1356,6 @@ "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", "dev": true }, - "node_modules/@typescript-eslint/types": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.15.0.tgz", - "integrity": "sha512-aV1+B1+ySXbQH0pLK0rx66I3IkiZNidYobyfn0WFsdGhSXw+P3YOqeTq5GED458SfB24tg+ux3S+9g118hjlTw==", - "dev": true, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, "node_modules/@ui5/fs": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.5.tgz", @@ -2105,9 +1996,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.1.tgz", - "integrity": "sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==", + "version": "4.23.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.2.tgz", + "integrity": "sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA==", "dev": true, "funding": [ { @@ -2124,10 +2015,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001629", - "electron-to-chromium": "^1.4.796", + "caniuse-lite": "^1.0.30001640", + "electron-to-chromium": "^1.4.820", "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.16" + "update-browserslist-db": "^1.1.0" }, "bin": { "browserslist": "cli.js" @@ -2152,9 +2043,9 @@ } }, "node_modules/cacache": { - "version": "18.0.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.3.tgz", - "integrity": "sha512-qXCd4rh6I07cnDqh8V48/94Tc/WSfj+o3Gn6NZ0aZovS255bUx8O13uKxRFd2eWG0xgsco7+YItQNPaa5E85hg==", + "version": "18.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", + "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", @@ -2174,12 +2065,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.1.tgz", - "integrity": "sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==", - "engines": { - "node": ">=18" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/cacache/node_modules/p-map": { "version": "4.0.0", @@ -2259,9 +2147,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001640", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001640.tgz", - "integrity": "sha512-lA4VMpW0PSUrFnkmVuEKBUovSWKhj7puyCg8StBChgu298N1AtuF1sKWEvfDuimSEDbhlb/KqPKC3fs1HbuQUA==", + "version": "1.0.30001642", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001642.tgz", + "integrity": "sha512-3XQ0DoRgLijXJErLSl+bLnJ+Et4KqV1PY6JJBGAFlsNsz31zeAIncyeZfLCabHK/jtSh+671RM9YMldxjUPZtA==", "dev": true, "funding": [ { @@ -2886,6 +2774,25 @@ "node": ">= 8" } }, + "node_modules/cross-spawn/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/crypto-random-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", @@ -3345,9 +3252,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.818", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.818.tgz", - "integrity": "sha512-eGvIk2V0dGImV9gWLq8fDfTTsCAeMDwZqEPMr+jMInxZdnp9Us8UpovYpRCf9NQ7VOFgrN2doNSgvISbsbNpxA==", + "version": "1.4.827", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.827.tgz", + "integrity": "sha512-VY+J0e4SFcNfQy19MEoMdaIcZLmDCprqvBtkii1WTCTQHpRvf5N8+3kTYCgL/PcntvwQvmMJWTuDPsq+IlhWKQ==", "dev": true }, "node_modules/emittery": { @@ -3544,18 +3451,18 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.5.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.5.2.tgz", - "integrity": "sha512-VXBJFviQz30rynlOEQ+dNWLmeopjoAgutUVrWOZwm6Ki4EVDm4XkyIqAV/Zhf7FcDr0AG0aGmRn5FxxCtAF0tA==", + "version": "48.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.7.0.tgz", + "integrity": "sha512-5oiVf7Y+ZxGYQTlLq81X72n+S+hjvS/u0upAdbpPEeaIZILK3MKN8lm/6QqKioBjm/qZ0B5XpMQUtc2fUkqXAg==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.43.1", + "@es-joy/jsdoccomment": "~0.46.0", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", "debug": "^4.3.5", "escape-string-regexp": "^4.0.0", - "esquery": "^1.5.0", - "parse-imports": "^2.1.0", + "esquery": "^1.6.0", + "parse-imports": "^2.1.1", "semver": "^7.6.2", "spdx-expression-parse": "^4.0.0", "synckit": "^0.9.0" @@ -3884,9 +3791,9 @@ "dev": true }, "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -4381,9 +4288,9 @@ } }, "node_modules/glob": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.3.tgz", - "integrity": "sha512-Q38SGlYRpVtDBPSWEylRyctn7uDeTp4NQERTLiCT1FqA9JXPYWqAVmQU6qh4r/zMM5ehxTcbaO8EjhWnvEhmyg==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", @@ -4395,9 +4302,6 @@ "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=18" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -4449,6 +4353,12 @@ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "dev": true }, + "node_modules/global-prefix/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, "node_modules/global-prefix/node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -4577,12 +4487,9 @@ } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.1.tgz", - "integrity": "sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==", - "engines": { - "node": ">=18" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/html-escaper": { "version": "2.0.2", @@ -4998,9 +4905,12 @@ "dev": true }, "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" + } }, "node_modules/istanbul-lib-coverage": { "version": "3.2.2", @@ -5184,15 +5094,12 @@ } }, "node_modules/jackspeak": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.1.tgz", - "integrity": "sha512-U23pQPDnmYybVkYjObcuYMk43VRlMLLqLI+RdZy8s8WV8WsxO9SnqSroKaluuvcNOdCAlauKszDwd+umbot5Mg==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, - "engines": { - "node": ">=18" - }, "funding": { "url": "https://github.com/sponsors/isaacs" }, @@ -6010,9 +5917,9 @@ } }, "node_modules/node-gyp": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.1.0.tgz", - "integrity": "sha512-B4J5M1cABxPc5PwfjhbV5hoy2DP9p8lFXASnEN6hugXOa61416tnTZ29x9sSwAd0o99XNIcpvDDy1swAExsVKA==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.2.0.tgz", + "integrity": "sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw==", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", @@ -6020,9 +5927,9 @@ "graceful-fs": "^4.2.6", "make-fetch-happen": "^13.0.0", "nopt": "^7.0.0", - "proc-log": "^3.0.0", + "proc-log": "^4.1.0", "semver": "^7.3.5", - "tar": "^6.1.2", + "tar": "^6.2.1", "which": "^4.0.0" }, "bin": { @@ -6043,36 +5950,6 @@ "node-gyp-build-test": "build-test.js" } }, - "node_modules/node-gyp/node_modules/isexe": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", - "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", - "engines": { - "node": ">=16" - } - }, - "node_modules/node-gyp/node_modules/proc-log": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", - "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/node-gyp/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^16.13.0 || >=18.0.0" - } - }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -6204,9 +6081,9 @@ } }, "node_modules/npm-pick-manifest": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.1.tgz", - "integrity": "sha512-Udm1f0l2nXb3wxDpKjfohwgdFUSV50UVwzEIpDXVsbDMXVIEF81a/i0UhuQbhrPMMmdiq3+YMFLFIRVLs3hxQw==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", + "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", @@ -6820,12 +6697,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.1.tgz", - "integrity": "sha512-9/8QXrtbGeMB6LxwQd4x1tIMnsmUxMvIH/qWGsccz6bt9Uln3S+sgAaqfQNhbGA8ufzs2fHuP/yqapGgP9Hh2g==", - "engines": { - "node": ">=18" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/path-to-regexp": { "version": "6.2.2", @@ -7372,9 +7246,9 @@ } }, "node_modules/rimraf": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.8.tgz", - "integrity": "sha512-XSh0V2/yNhDEi8HwdIefD8MLgs4LQXPag/nEJWs3YUc3Upn+UHa1GyIkEg9xSSNt7HnkO5FjTvmcRzgf+8UZuw==", + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.9.tgz", + "integrity": "sha512-3i7b8OcswU6CpU8Ej89quJD4O98id7TtVM5U4Mybh84zQXdrFmDLouWBEEaD/QfO3gDDfH+AGFCGsR7kngzQnA==", "dependencies": { "glob": "^10.3.7" }, @@ -7382,7 +7256,7 @@ "rimraf": "dist/esm/bin.mjs" }, "engines": { - "node": ">=18" + "node": "14 >=14.20 || 16 >=16.20 || >=18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -7725,6 +7599,12 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/spawn-wrap/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, "node_modules/spawn-wrap/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -7759,6 +7639,21 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, + "node_modules/spawn-wrap/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/spdx-correct": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", @@ -8659,17 +8554,17 @@ } }, "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dependencies": { - "isexe": "^2.0.0" + "isexe": "^3.1.1" }, "bin": { - "node-which": "bin/node-which" + "node-which": "bin/which.js" }, "engines": { - "node": ">= 8" + "node": "^16.13.0 || >=18.0.0" } }, "node_modules/which-module": { diff --git a/packages/project/package.json b/packages/project/package.json index eebc55821cb..a3ff7285fc2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.3.3", + "@npmcli/config": "^8.3.4", "@ui5/fs": "^3.0.5", "@ui5/logger": "^3.0.0", "ajv": "^6.12.6", @@ -138,7 +138,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^5.0.8", + "rimraf": "^5.0.9", "semver": "^7.6.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -161,7 +161,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.5.2", + "eslint-plugin-jsdoc": "^48.7.0", "esmock": "^2.6.6", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", From fcbe9c83705b6c32563c0dc2231b999e8c3316a0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Jul 2024 05:38:05 +0000 Subject: [PATCH 1125/1272] [ui5-project]Bump actions/setup-node from 4.0.2 to 4.0.3 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.2 to 4.0.3. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4.0.2...v4.0.3) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 6b291b266f5..1d312ccc2a6 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Node.js LTS 20.11.0 - uses: actions/setup-node@v4.0.2 + uses: actions/setup-node@v4.0.3 with: node-version: 20.11.0 From 2381ba6957de532e8cc7c8405a887726205d2ce9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 15 Jul 2024 06:21:05 +0000 Subject: [PATCH 1126/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 89de551c2fd..22865f856a5 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -6716,9 +6716,9 @@ } }, "node_modules/peek-readable": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.1.1.tgz", - "integrity": "sha512-4hEOSH7KeEaZpMDF/xfm1W9fS5rT7Ett3BkXWHqAEzRLLwLaHkwOL+GvvpIEh9UrvX9BDhzfkvteslgraoH69w==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.1.2.tgz", + "integrity": "sha512-RXwDkKgcwPyi1AJs7qcKk00Q7v9vZdy8HQNQrJ0QOCTshdebt14dfsGYeO33Uz6bvi3DFE24RSzqshxyx5qjUw==", "dev": true, "engines": { "node": ">=14.16" @@ -7958,9 +7958,9 @@ } }, "node_modules/synckit": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.0.tgz", - "integrity": "sha512-7RnqIMq572L8PeEzKeBINYEJDDxpcH8JEgLwUqBd3TkofhFRbkq4QLR0u+36avGAhCRbk2nnmjcW9SE531hPDg==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz", + "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==", "dev": true, "dependencies": { "@pkgr/core": "^0.1.0", From 828f25da0814102c32a69fe0e18c590bc50477bf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 14 Jul 2024 10:59:03 +0000 Subject: [PATCH 1127/1272] [ui5-project][DEPENDENCY] Bump rimraf from 5.0.9 to 6.0.1 Bumps [rimraf](https://github.com/isaacs/rimraf) from 5.0.9 to 6.0.1. - [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/rimraf/compare/v5.0.9...v6.0.1) --- updated-dependencies: - dependency-name: rimraf dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 89 ++++++++++++++++++++++++++++-- packages/project/package.json | 2 +- 2 files changed, 84 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 22865f856a5..09b85f44607 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -27,7 +27,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^5.0.9", + "rimraf": "^6.0.1", "semver": "^7.6.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -7246,17 +7246,94 @@ } }, "node_modules/rimraf": { - "version": "5.0.9", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.9.tgz", - "integrity": "sha512-3i7b8OcswU6CpU8Ej89quJD4O98id7TtVM5U4Mybh84zQXdrFmDLouWBEEaD/QfO3gDDfH+AGFCGsR7kngzQnA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.0.1.tgz", + "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", "dependencies": { - "glob": "^10.3.7" + "glob": "^11.0.0", + "package-json-from-dist": "^1.0.0" }, "bin": { "rimraf": "dist/esm/bin.mjs" }, "engines": { - "node": "14 >=14.20 || 16 >=16.20 || >=18" + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.0.tgz", + "integrity": "sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^4.0.1", + "minimatch": "^10.0.0", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/jackspeak": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.1.tgz", + "integrity": "sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/rimraf/node_modules/lru-cache": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.0.tgz", + "integrity": "sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA==", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", + "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" diff --git a/packages/project/package.json b/packages/project/package.json index a3ff7285fc2..60360bac3f9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -138,7 +138,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^5.0.9", + "rimraf": "^6.0.1", "semver": "^7.6.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" From 05face5bd454d9ae41a5de20ab19c1f8a169ce75 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 16 Jul 2024 14:19:58 +0200 Subject: [PATCH 1128/1272] [ui5-project][INTERNAL] .chglog/CHANGELOG.tpl.md: Add v3 releases Fix CHANGELOG.md generation for v3 releases in main branch JIRA: CPOUI5FOUNDATION-846 --- packages/project/.chglog/CHANGELOG.tpl.md | 199 ++++++++++++++++++++++ 1 file changed, 199 insertions(+) diff --git a/packages/project/.chglog/CHANGELOG.tpl.md b/packages/project/.chglog/CHANGELOG.tpl.md index 342cb4368df..f5aa7f80c1e 100755 --- a/packages/project/.chglog/CHANGELOG.tpl.md +++ b/packages/project/.chglog/CHANGELOG.tpl.md @@ -33,6 +33,205 @@ A list of unreleased changes can be found [here]({{ .Info.RepositoryURL }}/compa {{ end -}} {{ end -}} + +## [v3.9.2] - 2024-06-24 +### Dependency Updates +- Bump pacote from 17.0.7 to 18.0.6 [`9b6d580`](https://github.com/SAP/ui5-project/commit/9b6d58085bb74e4a2dfc1dccf528434db217e868) + + + +## [v3.9.1] - 2024-03-27 + + +## [v3.9.0] - 2023-12-12 +### Features +- **ProjectBuilder:** Add `outputStyle` option to request flat build output ([#624](https://github.com/SAP/ui5-project/issues/624)) [`79312fc`](https://github.com/SAP/ui5-project/commit/79312fcefea1ea97c1f3d403ac4470f890069809) +- **specVersion 3.2:** depCache bundling mode ([#673](https://github.com/SAP/ui5-project/issues/673)) [`68c5278`](https://github.com/SAP/ui5-project/commit/68c52782afbb617ddf110aca02d96f34a39ad5f7) + + + +## [v3.8.0] - 2023-11-20 +### Bug Fixes +- **application:** Improve error message for missing manifest.json [`016a846`](https://github.com/SAP/ui5-project/commit/016a84692aa1645f2e4267673d99495457c28458) + +### Features +- **TaskUtil:** Add 'force' flag to cleanup task callback ([#677](https://github.com/SAP/ui5-project/issues/677)) [`a0a21b7`](https://github.com/SAP/ui5-project/commit/a0a21b7ecd2805ff3d8d78ba9a453df64012556a) + + + +## [v3.7.3] - 2023-10-20 +### Bug Fixes +- ProjectBuilder now can be executed in parallel ([#669](https://github.com/SAP/ui5-project/issues/669)) [`f652461`](https://github.com/SAP/ui5-project/commit/f652461455a28718835cc66c7265f628be1e13b9) + + + +## [v3.7.2] - 2023-10-11 +### Dependency Updates +- Bump make-fetch-happen from 11.1.1 to 13.0.0 [`f2e264e`](https://github.com/SAP/ui5-project/commit/f2e264e87dfef1d5a132a1a0bf35043a789f8e84) +- Bump pacote from 15.2.0 to 17.0.4 [`f071399`](https://github.com/SAP/ui5-project/commit/f071399d994963b415c8ea35a629c465ae539f23) +- Bump [@npmcli](https://github.com/npmcli)/config from 6.4.0 to 8.0.0 [`c9f5218`](https://github.com/SAP/ui5-project/commit/c9f521815bab022bc8c0e8a3c27658266f01c655) + + + +## [v3.7.1] - 2023-10-02 +### Bug Fixes +- Allow usage of after/before task assignment for all standard tasks ([#628](https://github.com/SAP/ui5-project/issues/628)) [`1a272d2`](https://github.com/SAP/ui5-project/commit/1a272d2bd2700fa849ebb46bf9bd98806fa17fb2) + + + +## [v3.7.0] - 2023-09-06 +### Bug Fixes +- Ensure usage of provided UI5 data dir [`1e0503a`](https://github.com/SAP/ui5-project/commit/1e0503a32dae06202b62408558d5ef85bb49daf1) +- **NodePackageDependencies:** Implement validation for missing package.json attributes [`b070972`](https://github.com/SAP/ui5-project/commit/b0709725b373441fd62fe9e33cc0440b6df17401) +- **ProjectGraph:** Improve error message when adding duplicate projects or extensions [`2b4a49e`](https://github.com/SAP/ui5-project/commit/2b4a49e2b6dc4004bf078d259c1a8f54ccc0ae2c) +- **pacote:** Use npm cache within UI5 data dir [`f1e2178`](https://github.com/SAP/ui5-project/commit/f1e217803d0c455f61135084b00a7daf42fb9094) + +### Features +- **Resolvers:** Allow ranges / npm tags for version resolution [`2841004`](https://github.com/SAP/ui5-project/commit/28410044f9d4abd348dc3e0697048543eb7796d9) +- **Resolvers:** Use npm tags for determining 'latest' [`5cde95a`](https://github.com/SAP/ui5-project/commit/5cde95a04f2f040fffd0798822058f9692761cc4) + + + +## [v3.6.0] - 2023-08-22 +### Features +- Add specVersion 3.1 and builder resource excludes for modules ([#639](https://github.com/SAP/ui5-project/issues/639)) [`2ac053e`](https://github.com/SAP/ui5-project/commit/2ac053ef299bbaf02e73e12e2876f301d2b07d1b) +- **AbstractResolver:** Resolve version ranges specifying major version only [`1f8cfdf`](https://github.com/SAP/ui5-project/commit/1f8cfdf3c72745904fbdceab049ae5d2cbf86b06) + + + +## [v3.5.1] - 2023-08-18 +### Bug Fixes +- Resolve UI5 data directory relative to project ([#642](https://github.com/SAP/ui5-project/issues/642)) [`228b14c`](https://github.com/SAP/ui5-project/commit/228b14c63fbd736962c513fdd1656a7983f51bbc) + + + +## [v3.5.0] - 2023-08-09 +### Features +- Allow to configure location of UI5 home directory ([#635](https://github.com/SAP/ui5-project/issues/635)) [`8c86083`](https://github.com/SAP/ui5-project/commit/8c860839d94abdaedaf878614a9121a89b85f116) + + + +## [v3.4.2] - 2023-07-13 +### Bug Fixes +- **Application:** Fallback to manifest.appdescr_variant if manifest.json is not found ([#631](https://github.com/SAP/ui5-project/issues/631)) [`43c6b22`](https://github.com/SAP/ui5-project/commit/43c6b224cf7ecad39a060baf8c6922f919e6dd59) + +### Dependency Updates +- Bump read-pkg-up from 9.1.0 to 10.0.0 [`557cb36`](https://github.com/SAP/ui5-project/commit/557cb36790ba53aa43a15cf7211560461dabb9e5) + + + +## [v3.4.1] - 2023-07-03 +### Bug Fixes +- Migrate from libnpmconfig to [@npmcli](https://github.com/npmcli)/config ([#618](https://github.com/SAP/ui5-project/issues/618)) [`13d019b`](https://github.com/SAP/ui5-project/commit/13d019bb4d8eda05c0a1564c6a2b96fa4eb05ab1) + + + +## [v3.4.0] - 2023-06-21 +### Bug Fixes +- **maven/Registry:** Prevent socket timeouts when installing framework libraries [`3de767f`](https://github.com/SAP/ui5-project/commit/3de767fb7cc9278bf984ff88064a16e593db6db0) + +### Features +- **Sapui5MavenSnapshotResolver:** Use npm-dist.zip artifact for 1.116.0 and later ([#622](https://github.com/SAP/ui5-project/issues/622)) [`45dcee0`](https://github.com/SAP/ui5-project/commit/45dcee00f141b6632d5a1217affbd212f6faf1f4) + + + +## [v3.3.2] - 2023-06-06 +### Bug Fixes +- **ui5Framework:** Treat 'optional' dependencies of root project as non-optional [`f3318f0`](https://github.com/SAP/ui5-project/commit/f3318f0daff617e12ac97050e19d41a16ecbc748) +- **ui5Framework:** Choose correct resolver for snapshot framework version overrides [`ba860de`](https://github.com/SAP/ui5-project/commit/ba860de97bc1674fa8381706cc09bd68ee08df38) + +### Dependency Updates +- Bump xml2js from 0.5.0 to 0.6.0 [`aa7d853`](https://github.com/SAP/ui5-project/commit/aa7d853f4a719006a6aaf4e51cc5c12fd00d2aa1) + + + +## [v3.3.1] - 2023-05-23 +### Bug Fixes +- **Workspace:** Ignore empty npm workspace modules ([#614](https://github.com/SAP/ui5-project/issues/614)) [`66e82a3`](https://github.com/SAP/ui5-project/commit/66e82a37f8c559eb7219fad0329a4d77fd3a6481) +- **projectGraphBuilder:** Add module cache invalidation ([#612](https://github.com/SAP/ui5-project/issues/612)) [`65496ea`](https://github.com/SAP/ui5-project/commit/65496eabeaafc50348dfc276d19d135eb035b261) + + + +## [v3.3.0] - 2023-05-05 +### Bug Fixes +- Resolve properly package.json dependency aliases ([#608](https://github.com/SAP/ui5-project/issues/608)) [`f8753e5`](https://github.com/SAP/ui5-project/commit/f8753e53c6bc7f89bb19107073fb52db0a725cb9) + +### Features +- **Sapui5MavenSnapshotResolver:** Expose cacheMode parameter through all APIs ([#607](https://github.com/SAP/ui5-project/issues/607)) [`78eb482`](https://github.com/SAP/ui5-project/commit/78eb4825ecab9534426f517e764451f53d232fed) + + + +## [v3.2.2] - 2023-04-27 +### Bug Fixes +- **ui5Framework:** Respect npm proxy configuration to fetch libraries [`5e3da0c`](https://github.com/SAP/ui5-project/commit/5e3da0c552593ff521c8e27cdbb4aeb849f56aa4) + + + +## [v3.2.1] - 2023-04-21 +### Bug Fixes +- **Configuration:** Rename toJSON => toJson [`4dfbf28`](https://github.com/SAP/ui5-project/commit/4dfbf28a20d67ce8d482c9d8ca18331d7fa69629) + + + +## [v3.2.0] - 2023-04-21 +### Dependency Updates +- Bump rimraf from 4.4.1 to 5.0.0 ([#597](https://github.com/SAP/ui5-project/issues/597)) [`1da76bc`](https://github.com/SAP/ui5-project/commit/1da76bc21c218b154b1a6014808f8d3a4d101b69) + +### Features +- Add Configuration ([#575](https://github.com/SAP/ui5-project/issues/575)) [`fd37cef`](https://github.com/SAP/ui5-project/commit/fd37cefffdc22b4a4bbc3fcbde20581848d937fa) +- Enable snapshot consumption from Maven repository ([#570](https://github.com/SAP/ui5-project/issues/570)) [`ade2c49`](https://github.com/SAP/ui5-project/commit/ade2c49d66ebba229b62c6614c8bbdfed10bc6b0) + + + +## [v3.1.1] - 2023-04-12 +### Dependency Updates +- Bump xml2js from 0.4.23 to 0.5.0 [`d6d86c9`](https://github.com/SAP/ui5-project/commit/d6d86c93db5c4d288161aa11b72bb6537c4f4cf4) +- Bump read-pkg from 7.1.0 to 8.0.0 [`9800c06`](https://github.com/SAP/ui5-project/commit/9800c06004e44a4af8b86492b0f15cab465be0c0) + + + +## [v3.1.0] - 2023-03-31 +### Bug Fixes +- **Taskrunner:** pass new taskutil options to determineRequiredDependencies hook [`94bcd99`](https://github.com/SAP/ui5-project/commit/94bcd9931d6709170b78a92e7372bbd0de44ae03) +- **ui5Framework:** Prevent install of libraries within workspace ([#589](https://github.com/SAP/ui5-project/issues/589)) [`8ffc676`](https://github.com/SAP/ui5-project/commit/8ffc676434defd320c70b615960efc9182a29de9) + +### Features +- **Specification:** Add getId method [`7bdb47a`](https://github.com/SAP/ui5-project/commit/7bdb47a2925c0936ee33faf23f51f6c6ab396369) +- **Workspace:** Add getModules method [`1e2aa0e`](https://github.com/SAP/ui5-project/commit/1e2aa0e48bb2d895728f3d5f4cb74d55fbc8ec34) + + + +## [v3.0.4] - 2023-03-10 +### Bug Fixes +- Resolve properly absolute path for ui5HomeDir ([#588](https://github.com/SAP/ui5-project/issues/588)) [`9b414a7`](https://github.com/SAP/ui5-project/commit/9b414a77a1d86f6a3560231ae04db407e2f022c5) + + + +## [v3.0.3] - 2023-03-01 +### Bug Fixes +- **jsdoc:** enable generateVersionInfo task [`a58e5eb`](https://github.com/SAP/ui5-project/commit/a58e5eb0769a9ba63a0b0aa267675ef2f9c08769) + + + +## [v3.0.2] - 2023-02-17 +### Bug Fixes +- **ComponentProject#getWorkspace:** Apply builder resource excludes [`5257e59`](https://github.com/SAP/ui5-project/commit/5257e5977c4e92e2aca5b0ce4b2ed55688a66646) + + + +## [v3.0.1] - 2023-02-16 +### Bug Fixes +- Prevent socket timeouts when installing framework libraries [`a198356`](https://github.com/SAP/ui5-project/commit/a198356c9c5f39dd94fb8cf7542d9059ee628f3b) +- **Library:** Do not throw for missing .library file [`1163821`](https://github.com/SAP/ui5-project/commit/11638210994fd9511b2ab5ee3da40e3ccf294e58) +- **Project#getReader:** Do not apply builder resource excludes for style 'runtime' [`1cd94f7`](https://github.com/SAP/ui5-project/commit/1cd94f7f15ed07283e198238edb546517ee25691) +- **TaskUtil:** Provide framework configuration getters to custom tasks ([#580](https://github.com/SAP/ui5-project/issues/580)) [`6a40927`](https://github.com/SAP/ui5-project/commit/6a409278285252da59ea4d42fcf154814518661d) +- **graph:** Always resolve rootConfigPath to CWD [`ef3e569`](https://github.com/SAP/ui5-project/commit/ef3e56996111233aaa04410c95f11b1c3495a9b2) +- **projectGraphBuilder:** Apply extensions of the same module only once [`6d753a8`](https://github.com/SAP/ui5-project/commit/6d753a850f2a4ca34a50f64a404472bf0081054e) +- **ui5Framework:** Improve error handling for duplicate lib declaration [`fb1db6d`](https://github.com/SAP/ui5-project/commit/fb1db6d7cb74dee9c4754ffb62a2a970cb0e2fbe) + + + +## [v3.0.0] - 2023-02-09 ### Breaking Changes - Implement Project Graph, build execution [`161f462`](https://github.com/SAP/ui5-project/commit/161f462cf6a9955337fff512007125128c6c39dd) - Run 'generateThemeDesignerResources' only on framework libs [`e4bb108`](https://github.com/SAP/ui5-project/commit/e4bb1084df3e0ae906df27aba4a674d187ff8069) From 65f19e034335d16384673ecdd29e0333c9885490 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Wed, 17 Jul 2024 13:22:53 +0200 Subject: [PATCH 1129/1272] [ui5-project][INTERNAL] azure-pipelines.yml: add node v22 to test matrix --- packages/project/azure-pipelines.yml | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index bb1a437cfbc..39ac1fda20a 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -26,15 +26,24 @@ strategy: windows_node_lts_20: imageName: 'windows-2022' node_version: 20.x - linux_node_current: + linux_node_21: imageName: 'ubuntu-22.04' node_version: 21.x - mac_node_current: + mac_node_21: imageName: 'macos-13' node_version: 21.x - windows_node_current: + windows_node_21: imageName: 'windows-2022' node_version: 21.x + linux_node_22: + imageName: 'ubuntu-22.04' + node_version: 22.x + mac_node_22: + imageName: 'macos-13' + node_version: 22.x + windows_node_22: + imageName: 'windows-2022' + node_version: 22.x pool: vmImage: $(imageName) From 9b4ce8698290c364087988015eda2ec71b49240d Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Thu, 18 Jul 2024 11:58:01 +0200 Subject: [PATCH 1130/1272] [ui5-project][INTERNAL] Determine correctly mode=require sections and restrict the async flag (#751) JIRA: CPOUI5FOUNDATION-835 This change addresses the commnents in https://github.com/SAP/ui5-project/pull/731 --- .../schema/specVersion/kind/project.json | 29 ++- .../specVersion/kind/project/application.js | 165 +++++++++++------- .../specVersion/kind/project/library.js | 65 +++++-- 3 files changed, 173 insertions(+), 86 deletions(-) diff --git a/packages/project/lib/validation/schema/specVersion/kind/project.json b/packages/project/lib/validation/schema/specVersion/kind/project.json index 0982cf5c1c8..e8b3be79a90 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project.json @@ -412,17 +412,16 @@ }, "sections": { "type": "array", - "if": { - "$comment": "Add async prop only if mode = 'require'", - "items": { - "type": "object", - "mode": { - "enum": ["require"] - } - } - }, - "then": { - "items": { + "items": { + "if": { + "properties": { + "mode": { + "const": "require" + } + }, + "$comment": "Add async prop only if mode = 'require'" + }, + "then": { "type": "object", "additionalProperties": false, "required": ["mode", "filters"], @@ -431,7 +430,7 @@ "type": "string" }, "mode": { - "enum": ["raw", "preload", "require", "provided", "bundleInfo", "depCache"] + "enum": ["require"] }, "filters": { "type": "array", @@ -464,10 +463,8 @@ "default": true } } - } - }, - "else": { - "items": { + }, + "else": { "type": "object", "additionalProperties": false, "required": ["mode", "filters"], diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index 89c3e583efa..818b384a65d 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -205,70 +205,115 @@ SpecificationVersion.getVersionsForRange(">=4.0").forEach(function(specVersion) }); test(`Invalid resources configuration (specVersion ${specVersion})`, async (t) => { - await assertValidation(t, { - "specVersion": specVersion, - "type": "application", - "metadata": { - "name": "com.sap.ui5.test" - }, - "resources": { - "configuration": { - "propertiesFileSourceEncoding": "FOO", - "paths": { - "app": "webapp", - "webapp": { - "path": "invalid" - } + await assertValidation( + t, + { + specVersion: specVersion, + type: "application", + metadata: { + name: "com.sap.ui5.test", + }, + resources: { + configuration: { + propertiesFileSourceEncoding: "FOO", + paths: { + app: "webapp", + webapp: { + path: "invalid", + }, + }, + notAllowed: true, }, - "notAllowed": true + notAllowed: true, }, - "notAllowed": true - } - }, [ - { - dataPath: "/resources", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", - } - }, - { - dataPath: "/resources/configuration", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "notAllowed", - } - }, - { - dataPath: "/resources/configuration/propertiesFileSourceEncoding", - keyword: "enum", - message: "should be equal to one of the allowed values", - params: { - allowedValues: [ - "UTF-8", - "ISO-8859-1" + builder: { + // cachebuster is only supported for type application + cachebuster: { + signatureType: "time", + }, + bundles: [ + { + bundleDefinition: { + name: "app.js", + defaultFileTypes: [".js"], + sections: [ + { + name: "some-app-preload", + mode: "preload", + filters: ["some/app/Component.js"], + resolve: true, + sort: true, + declareRawModules: false, + async: false, + }, + { + mode: "require", + filters: ["ui5loader-autoconfig.js"], + resolve: true, + async: false, + }, + ], + }, + bundleOptions: { + optimize: true, + numberOfParts: 3, + }, + }, ], - } - }, - { - dataPath: "/resources/configuration/paths", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "app", - } + }, }, - { - dataPath: "/resources/configuration/paths/webapp", - keyword: "type", - message: "should be string", - params: { - type: "string" - } - } - ]); + [ + { + dataPath: "/resources", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: "/resources/configuration", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "notAllowed", + }, + }, + { + dataPath: + "/resources/configuration/propertiesFileSourceEncoding", + keyword: "enum", + message: "should be equal to one of the allowed values", + params: { + allowedValues: ["UTF-8", "ISO-8859-1"], + }, + }, + { + dataPath: "/resources/configuration/paths", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "app", + }, + }, + { + dataPath: "/resources/configuration/paths/webapp", + keyword: "type", + message: "should be string", + params: { + type: "string", + }, + }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "async", + }, + }, + ] + ); await assertValidation(t, { "specVersion": specVersion, "type": "application", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js index 8568f412d6d..b2bd47a3564 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js @@ -125,7 +125,7 @@ SpecificationVersion.getVersionsForRange(">=4.0").forEach(function(specVersion) ], "resolve": true, "sort": true, - "declareRawModules": false + "declareRawModules": false, }, { "mode": "require", @@ -206,17 +206,62 @@ SpecificationVersion.getVersionsForRange(">=4.0").forEach(function(specVersion) // cachebuster is only supported for type application "cachebuster": { "signatureType": "time" - } + }, + "bundles": [ + { + "bundleDefinition": { + "name": "app.js", + "defaultFileTypes": [ + ".js" + ], + "sections": [ + { + "name": "some-app-preload", + "mode": "preload", + "filters": [ + "some/app/Component.js" + ], + "resolve": true, + "sort": true, + "declareRawModules": false, + "async": false + }, + { + "mode": "require", + "filters": [ + "ui5loader-autoconfig.js" + ], + "resolve": true, + "async": false + } + ] + }, + "bundleOptions": { + "optimize": true, + "numberOfParts": 3 + } + } + ], } }; - await assertValidation(t, config, [{ - dataPath: "/builder", - keyword: "additionalProperties", - message: "should NOT have additional properties", - params: { - additionalProperty: "cachebuster" - } - }]); + await assertValidation(t, config, [ + { + dataPath: "/builder", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "cachebuster", + }, + }, + { + dataPath: "/builder/bundles/0/bundleDefinition/sections/0", + keyword: "additionalProperties", + message: "should NOT have additional properties", + params: { + additionalProperty: "async", + }, + }, + ]); }); }); From 397f31b4fe8e3d6f31d22bc144fa788518e45a04 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 21 Jul 2024 02:20:24 +0000 Subject: [PATCH 1131/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 162 ++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 84 insertions(+), 84 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 09b85f44607..c94b29c1e24 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -28,7 +28,7 @@ "read-pkg": "^9.0.1", "resolve": "^1.22.8", "rimraf": "^6.0.1", - "semver": "^7.6.2", + "semver": "^7.6.3", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, @@ -42,8 +42,8 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.7.0", - "esmock": "^2.6.6", + "eslint-plugin-jsdoc": "^48.8.3", + "esmock": "^2.6.7", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -94,30 +94,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.8.tgz", - "integrity": "sha512-c4IM7OTg6k1Q+AJ153e2mc2QVTezTwnb4VzquwcyiEzGnW0Kedv4do/TrkU98qPeC5LNiMt/QXwIjzYXLBpyZg==", + "version": "7.24.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.9.tgz", + "integrity": "sha512-e701mcfApCJqMMueQI0Fb68Amflj83+dvAvHawoBpAz+GDjCIyGHzNwnefjsWJ3xiYAqqiQFoWbspGYBdb2/ng==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.8.tgz", - "integrity": "sha512-6AWcmZC/MZCO0yKys4uhg5NlxL0ESF3K6IAaoQ+xSXvPyPyxNWRafP+GDbI88Oh68O7QkJgmEtedWPM9U0pZNg==", + "version": "7.24.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.9.tgz", + "integrity": "sha512-5e3FI4Q3M3Pbr21+5xJwCv6ZT6KmGkI0vw3Tozy5ODAQFTIWe37iT8Cr7Ice2Ntb+M3iSKCEWMB1MBgKrW3whg==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.24.8", + "@babel/generator": "^7.24.9", "@babel/helper-compilation-targets": "^7.24.8", - "@babel/helper-module-transforms": "^7.24.8", + "@babel/helper-module-transforms": "^7.24.9", "@babel/helpers": "^7.24.8", "@babel/parser": "^7.24.8", "@babel/template": "^7.24.7", "@babel/traverse": "^7.24.8", - "@babel/types": "^7.24.8", + "@babel/types": "^7.24.9", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -142,12 +142,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.8.tgz", - "integrity": "sha512-47DG+6F5SzOi0uEvK4wMShmn5yY0mVjVJoWTphdY2B4Rx9wHgjK7Yhtr0ru6nE+sn0v38mzrWOlah0p/YlHHOQ==", + "version": "7.24.10", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.10.tgz", + "integrity": "sha512-o9HBZL1G2129luEUlG1hB4N/nlYNWHnpwlND9eOMclRqqu1YDy2sSYVCFUZwl8I1Gxh+QSRrP2vD7EpUmFVXxg==", "dev": true, "dependencies": { - "@babel/types": "^7.24.8", + "@babel/types": "^7.24.9", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -232,9 +232,9 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.8.tgz", - "integrity": "sha512-m4vWKVqvkVAWLXfHCCfff2luJj86U+J0/x+0N3ArG/tP0Fq7zky2dYwMbtPmkc/oulkkbjdL3uWzuoBwQ8R00Q==", + "version": "7.24.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.9.tgz", + "integrity": "sha512-oYbh+rtFKj/HwBQkFlUzvcybzklmVdVV3UU+mN7n2t/q3yGHbuVdNxyFvSBO1tfvjyArpHNcWMAzsSPdyI46hw==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.24.7", @@ -436,9 +436,9 @@ } }, "node_modules/@babel/types": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.8.tgz", - "integrity": "sha512-SkSBEHwwJRU52QEVZBmMBnE5Ux2/6WU1grdYyOhpbCNxbmJrDuDCphBzKZSO3taf0zztp+qkWlymE5tVL5l0TA==", + "version": "7.24.9", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.9.tgz", + "integrity": "sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.24.8", @@ -1495,59 +1495,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.31.tgz", - "integrity": "sha512-skOiodXWTV3DxfDhB4rOf3OGalpITLlgCeOwb+Y9GJpfQ8ErigdBUHomBzvG78JoVE8MJoQsb+qhZiHfKeNeEg==", + "version": "3.4.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.33.tgz", + "integrity": "sha512-MoIREbkdPQlnGfSKDMgzTqzqx5nmEjIc0ydLVYlTACGBsfvOJ4tHSbZXKVF536n6fB+0eZaGEOqsGThPpdvF5A==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/shared": "3.4.31", + "@vue/shared": "3.4.33", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.31.tgz", - "integrity": "sha512-wK424WMXsG1IGMyDGyLqB+TbmEBFM78hIsOJ9QwUVLGrcSk0ak6zYty7Pj8ftm7nEtdU/DGQxAXp0/lM/2cEpQ==", + "version": "3.4.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.33.tgz", + "integrity": "sha512-GzB8fxEHKw0gGet5BKlpfXEqoBnzSVWwMnT+dc25wE7pFEfrU/QsvjZMP9rD4iVXHBBoemTct8mN0GJEI6ZX5A==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.31", - "@vue/shared": "3.4.31" + "@vue/compiler-core": "3.4.33", + "@vue/shared": "3.4.33" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.31.tgz", - "integrity": "sha512-einJxqEw8IIJxzmnxmJBuK2usI+lJonl53foq+9etB2HAzlPjAS/wa7r0uUpXw5ByX3/0uswVSrjNb17vJm1kQ==", + "version": "3.4.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.33.tgz", + "integrity": "sha512-7rk7Vbkn21xMwIUpHQR4hCVejwE6nvhBOiDgoBcR03qvGqRKA7dCBSsHZhwhYUsmjlbJ7OtD5UFIyhP6BY+c8A==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/compiler-core": "3.4.31", - "@vue/compiler-dom": "3.4.31", - "@vue/compiler-ssr": "3.4.31", - "@vue/shared": "3.4.31", + "@vue/compiler-core": "3.4.33", + "@vue/compiler-dom": "3.4.33", + "@vue/compiler-ssr": "3.4.33", + "@vue/shared": "3.4.33", "estree-walker": "^2.0.2", "magic-string": "^0.30.10", - "postcss": "^8.4.38", + "postcss": "^8.4.39", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.31.tgz", - "integrity": "sha512-RtefmITAje3fJ8FSg1gwgDhdKhZVntIVbwupdyZDSifZTRMiWxWehAOTCc8/KZDnBOcYQ4/9VWxsTbd3wT0hAA==", + "version": "3.4.33", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.33.tgz", + "integrity": "sha512-0WveC9Ai+eT/1b6LCV5IfsufBZ0HP7pSSTdDjcuW302tTEgoBw8rHVHKPbGUtzGReUFCRXbv6zQDDgucnV2WzQ==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.31", - "@vue/shared": "3.4.31" + "@vue/compiler-dom": "3.4.33", + "@vue/shared": "3.4.33" } }, "node_modules/@vue/shared": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.31.tgz", - "integrity": "sha512-Yp3wtJk//8cO4NItOPpi3QkLExAr/aLBGZMmTtW9WpdwBCJpRM6zj9WgWktXAl8IDIozwNMByT45JP3tO3ACWA==", + "version": "3.4.33", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.33.tgz", + "integrity": "sha512-aoRY0jQk3A/cuvdkodTrM4NMfxco8n55eG4H7ML/CRy7OryHfiqvug4xrCBBMbbN+dvXAetDDwZW9DXWWjBntA==", "dev": true }, "node_modules/abbrev": { @@ -3252,9 +3252,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.827", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.827.tgz", - "integrity": "sha512-VY+J0e4SFcNfQy19MEoMdaIcZLmDCprqvBtkii1WTCTQHpRvf5N8+3kTYCgL/PcntvwQvmMJWTuDPsq+IlhWKQ==", + "version": "1.4.832", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.832.tgz", + "integrity": "sha512-cTen3SB0H2SGU7x467NRe1eVcQgcuS6jckKfWJHia2eo0cHIGOqHoAxevIYZD4eRHcWjkvFzo93bi3vJ9W+1lA==", "dev": true }, "node_modules/emittery": { @@ -3451,9 +3451,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.7.0.tgz", - "integrity": "sha512-5oiVf7Y+ZxGYQTlLq81X72n+S+hjvS/u0upAdbpPEeaIZILK3MKN8lm/6QqKioBjm/qZ0B5XpMQUtc2fUkqXAg==", + "version": "48.8.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.8.3.tgz", + "integrity": "sha512-AtIvwwW9D17MRkM0Z0y3/xZYaa9mdAvJrkY6fU/HNUwGbmMtHVvK4qRM9CDixGVtfNrQitb8c6zQtdh6cTOvLg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.46.0", @@ -3463,9 +3463,9 @@ "escape-string-regexp": "^4.0.0", "esquery": "^1.6.0", "parse-imports": "^2.1.1", - "semver": "^7.6.2", + "semver": "^7.6.3", "spdx-expression-parse": "^4.0.0", - "synckit": "^0.9.0" + "synckit": "^0.9.1" }, "engines": { "node": ">=18" @@ -3746,9 +3746,9 @@ } }, "node_modules/esmock": { - "version": "2.6.6", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.6.tgz", - "integrity": "sha512-Ay1IQ/qbZV1j8IqRY5o4GYNyX8Y6qDJVVYRZtQ0WFOqUPf26++qW/LyNaHrxz79QGB4F1xuDTCPRYA5XRNuqZg==", + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.7.tgz", + "integrity": "sha512-4DmjZ0qQIG+NQV1njHvWrua/cZEuJq56A3pSELT2BjNuol1aads7BluofCbLErdO41Ic1XCd2UMepVLpjL64YQ==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4731,9 +4731,9 @@ } }, "node_modules/is-core-module": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", - "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.0.tgz", + "integrity": "sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==", "dependencies": { "hasown": "^2.0.2" }, @@ -5963,9 +5963,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "version": "2.0.17", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.17.tgz", + "integrity": "sha512-Ww6ZlOiEQfPfXM45v17oabk77Z7mg5bOt7AjDyzy7RjK9OrLrLC8dyZQoAPEOtFX9SaNf1Tdvr5gRJWdTJj7GA==", "dev": true }, "node_modules/node-stream-zip": { @@ -6716,9 +6716,9 @@ } }, "node_modules/peek-readable": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.1.2.tgz", - "integrity": "sha512-RXwDkKgcwPyi1AJs7qcKk00Q7v9vZdy8HQNQrJ0QOCTshdebt14dfsGYeO33Uz6bvi3DFE24RSzqshxyx5qjUw==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.1.3.tgz", + "integrity": "sha512-kCsc9HwH5RgVA3H3VqkWFyGQwsxUxLdiSX1d5nqAm7hnMFjNFX1VhBLmJoUY0hZNc8gmDNgBkLjfhiWPsziXWA==", "dev": true, "engines": { "node": ">=14.16" @@ -7027,9 +7027,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", - "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.22.1.tgz", + "integrity": "sha512-9tHNEa0Ov81YOopiVkcCJVz5TM6AEQ+CHHjFIktqPnE3NV0AHIkx+gh9tiCl58m/66wWxkOC9eltpa75J4lQPA==", "engines": { "node": ">=16" }, @@ -7072,9 +7072,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", - "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.22.1.tgz", + "integrity": "sha512-9tHNEa0Ov81YOopiVkcCJVz5TM6AEQ+CHHjFIktqPnE3NV0AHIkx+gh9tiCl58m/66wWxkOC9eltpa75J4lQPA==", "engines": { "node": ">=16" }, @@ -7405,9 +7405,9 @@ "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" }, "node_modules/semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "bin": { "semver": "bin/semver.js" }, @@ -7952,16 +7952,16 @@ } }, "node_modules/strtok3": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.1.0.tgz", - "integrity": "sha512-19dQEwG6Jd+VabjPRyBhymIF069vZiqWSZa2jJBoKJTsqGKnTxowGoQaLnz+yLARfDI041IUQekyPUMWElOgsQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.1.1.tgz", + "integrity": "sha512-mKX8HA/cdBqMKUr0MMZAFssCkIGoZeSCMXgnt79yKxNFguMLVFgRe6wB+fsL0NmoHDbeyZXczy7vEPSoo3rkzg==", "dev": true, "dependencies": { "@tokenizer/token": "^0.3.0", - "peek-readable": "^5.1.1" + "peek-readable": "^5.1.3" }, "engines": { - "node": ">=14.16" + "node": ">=16" }, "funding": { "type": "github", diff --git a/packages/project/package.json b/packages/project/package.json index 60360bac3f9..d239bb803ee 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -139,7 +139,7 @@ "read-pkg": "^9.0.1", "resolve": "^1.22.8", "rimraf": "^6.0.1", - "semver": "^7.6.2", + "semver": "^7.6.3", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, @@ -161,8 +161,8 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.7.0", - "esmock": "^2.6.6", + "eslint-plugin-jsdoc": "^48.8.3", + "esmock": "^2.6.7", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From 694daa0e4314074e07f3f337733b8470a6df229e Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 23 Jul 2024 14:23:06 +0200 Subject: [PATCH 1132/1272] [ui5-project][INTERNAL] .chglog/CHANGELOG.tpl.md: Add missing v3 releases (#755) JIRA: CPOUI5FOUNDATION-846 --- packages/project/.chglog/CHANGELOG.tpl.md | 26 +++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/packages/project/.chglog/CHANGELOG.tpl.md b/packages/project/.chglog/CHANGELOG.tpl.md index f5aa7f80c1e..71e25e25192 100755 --- a/packages/project/.chglog/CHANGELOG.tpl.md +++ b/packages/project/.chglog/CHANGELOG.tpl.md @@ -540,6 +540,32 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP {{ end -}} {{ end -}} {{ end -}} +[v3.9.2]: https://github.com/SAP/ui5-project/compare/v3.9.1...v3.9.2 +[v3.9.1]: https://github.com/SAP/ui5-project/compare/v3.9.0...v3.9.1 +[v3.9.0]: https://github.com/SAP/ui5-project/compare/v3.8.0...v3.9.0 +[v3.8.0]: https://github.com/SAP/ui5-project/compare/v3.7.3...v3.8.0 +[v3.7.3]: https://github.com/SAP/ui5-project/compare/v3.7.2...v3.7.3 +[v3.7.2]: https://github.com/SAP/ui5-project/compare/v3.7.1...v3.7.2 +[v3.7.1]: https://github.com/SAP/ui5-project/compare/v3.7.0...v3.7.1 +[v3.7.0]: https://github.com/SAP/ui5-project/compare/v3.6.0...v3.7.0 +[v3.6.0]: https://github.com/SAP/ui5-project/compare/v3.5.1...v3.6.0 +[v3.5.1]: https://github.com/SAP/ui5-project/compare/v3.5.0...v3.5.1 +[v3.5.0]: https://github.com/SAP/ui5-project/compare/v3.4.2...v3.5.0 +[v3.4.2]: https://github.com/SAP/ui5-project/compare/v3.4.1...v3.4.2 +[v3.4.1]: https://github.com/SAP/ui5-project/compare/v3.4.0...v3.4.1 +[v3.4.0]: https://github.com/SAP/ui5-project/compare/v3.3.2...v3.4.0 +[v3.3.2]: https://github.com/SAP/ui5-project/compare/v3.3.1...v3.3.2 +[v3.3.1]: https://github.com/SAP/ui5-project/compare/v3.3.0...v3.3.1 +[v3.3.0]: https://github.com/SAP/ui5-project/compare/v3.2.2...v3.3.0 +[v3.2.2]: https://github.com/SAP/ui5-project/compare/v3.2.1...v3.2.2 +[v3.2.1]: https://github.com/SAP/ui5-project/compare/v3.2.0...v3.2.1 +[v3.2.0]: https://github.com/SAP/ui5-project/compare/v3.1.1...v3.2.0 +[v3.1.1]: https://github.com/SAP/ui5-project/compare/v3.1.0...v3.1.1 +[v3.1.0]: https://github.com/SAP/ui5-project/compare/v3.0.4...v3.1.0 +[v3.0.4]: https://github.com/SAP/ui5-project/compare/v3.0.3...v3.0.4 +[v3.0.3]: https://github.com/SAP/ui5-project/compare/v3.0.2...v3.0.3 +[v3.0.2]: https://github.com/SAP/ui5-project/compare/v3.0.1...v3.0.2 +[v3.0.1]: https://github.com/SAP/ui5-project/compare/v3.0.0...v3.0.1 [v3.0.0]: https://github.com/SAP/ui5-project/compare/v2.6.0...v3.0.0 [v2.6.0]: https://github.com/SAP/ui5-project/compare/v2.5.0...v2.6.0 [v2.5.0]: https://github.com/SAP/ui5-project/compare/v2.4.0...v2.5.0 From 1076bfee912fd0d4d30d750a29eebf1389177c64 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 Jul 2024 15:42:59 +0200 Subject: [PATCH 1133/1272] [ui5-project][INTERNAL] Release notes: Fix generation of v4.0.0 release notes --- packages/project/.chglog/release-config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.chglog/release-config.yml b/packages/project/.chglog/release-config.yml index 14c3b27d514..3cc4e25eb8c 100755 --- a/packages/project/.chglog/release-config.yml +++ b/packages/project/.chglog/release-config.yml @@ -3,7 +3,7 @@ template: RELEASE.tpl.md info: repository_url: https://github.com/SAP/ui5-project options: - tag_filter_pattern: '^v[^0123]' # For release notes ignore versions below v4 to that we always compare the _last v4+_ tag with the current release + tag_filter_pattern: '^v[^012]' # For release notes ignore versions below v4 to that we always compare the _last v4+_ tag with the current release commits: filters: Type: From e1014afc5444266ba389990f15506db435dfaf9e Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 23 Jul 2024 15:15:07 +0200 Subject: [PATCH 1134/1272] [ui5-project][INTERNAL] azure: Run tests on node 22.1.0 --- packages/project/azure-pipelines.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 39ac1fda20a..4d658e04b4f 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -14,9 +14,9 @@ strategy: linux_node_lts_20_min_version: imageName: 'ubuntu-22.04' node_version: 20.11.0 - linux_node_21_min_version: + linux_node_22_min_version: imageName: 'ubuntu-22.04' - node_version: 21.2.0 + node_version: 22.1.0 linux_node_lts_20: imageName: 'ubuntu-22.04' node_version: 20.x From 8abcaeb5ed5ccdb955c730325ce01f9c40182d85 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Wed, 17 Jul 2024 14:03:11 +0200 Subject: [PATCH 1135/1272] [ui5-project][BREAKING] Drop node v21 support --- packages/project/azure-pipelines.yml | 9 --------- packages/project/package.json | 2 +- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 4d658e04b4f..63fefdcccdf 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -26,15 +26,6 @@ strategy: windows_node_lts_20: imageName: 'windows-2022' node_version: 20.x - linux_node_21: - imageName: 'ubuntu-22.04' - node_version: 21.x - mac_node_21: - imageName: 'macos-13' - node_version: 21.x - windows_node_21: - imageName: 'windows-2022' - node_version: 21.x linux_node_22: imageName: 'ubuntu-22.04' node_version: 22.x diff --git a/packages/project/package.json b/packages/project/package.json index d239bb803ee..7d5264e4863 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -33,7 +33,7 @@ "./package.json": "./package.json" }, "engines": { - "node": "^20.11.0 || >=21.2.0", + "node": "^20.11.0 || >=22.0.0", "npm": ">= 8" }, "scripts": { From 94e73c62f3126bd0351d1c470582f88bd75433f7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jul 2024 16:00:37 +0200 Subject: [PATCH 1136/1272] [ui5-project][INTERNAL] Bump @ui5/logger from 3.0.0 to 4.0.0 (#754) --- packages/project/package-lock.json | 102 ++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 58 insertions(+), 46 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c94b29c1e24..7a1e298775f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@npmcli/config": "^8.3.4", "@ui5/fs": "^3.0.5", - "@ui5/logger": "^3.0.0", + "@ui5/logger": "^4.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.3.0", @@ -1376,6 +1376,35 @@ "npm": ">= 8" } }, + "node_modules/@ui5/fs/node_modules/@ui5/logger": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0.tgz", + "integrity": "sha512-Np9pHhr+dnyL2gDFwIx6c6Xy0yhtpBIqUQM9An8uLX/wIcRjIjBSQ/r16o3YgS9roY59I/uj5ZEbIa1cdS3Dzg==", + "dependencies": { + "chalk": "^5.2.0", + "cli-progress": "^3.11.2", + "figures": "^5.0.0" + }, + "engines": { + "node": "^16.18.0 || >=18.12.0", + "npm": ">= 8" + } + }, + "node_modules/@ui5/fs/node_modules/figures": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", + "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", + "dependencies": { + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@ui5/fs/node_modules/globby": { "version": "13.2.2", "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", @@ -1394,6 +1423,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@ui5/fs/node_modules/is-unicode-supported": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@ui5/fs/node_modules/slash": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", @@ -1406,16 +1446,16 @@ } }, "node_modules/@ui5/logger": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0.tgz", - "integrity": "sha512-Np9pHhr+dnyL2gDFwIx6c6Xy0yhtpBIqUQM9An8uLX/wIcRjIjBSQ/r16o3YgS9roY59I/uj5ZEbIa1cdS3Dzg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-4.0.0.tgz", + "integrity": "sha512-HYXrzFALMTd4FnsmoopqOXoQg18q4Zw/9z8Hvq80n+qNt3lm4Ea9scDVOfgxHqyrWHtgtJ42J8mB5DCM43Ze+w==", "dependencies": { - "chalk": "^5.2.0", - "cli-progress": "^3.11.2", - "figures": "^5.0.0" + "chalk": "^5.3.0", + "cli-progress": "^3.12.0", + "figures": "^6.1.0" }, "engines": { - "node": "^16.18.0 || >=18.12.0", + "node": "^20.11.0 || >=21.2.0", "npm": ">= 8" } }, @@ -1870,33 +1910,6 @@ } } }, - "node_modules/ava/node_modules/figures": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz", - "integrity": "sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==", - "dev": true, - "dependencies": { - "is-unicode-supported": "^2.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ava/node_modules/is-unicode-supported": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.0.0.tgz", - "integrity": "sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", @@ -3907,15 +3920,14 @@ } }, "node_modules/figures": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", - "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz", + "integrity": "sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==", "dependencies": { - "escape-string-regexp": "^5.0.0", - "is-unicode-supported": "^1.2.0" + "is-unicode-supported": "^2.0.0" }, "engines": { - "node": ">=14" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -4864,11 +4876,11 @@ "dev": true }, "node_modules/is-unicode-supported": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", - "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.0.0.tgz", + "integrity": "sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==", "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" diff --git a/packages/project/package.json b/packages/project/package.json index 7d5264e4863..44b137e0605 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -122,7 +122,7 @@ "dependencies": { "@npmcli/config": "^8.3.4", "@ui5/fs": "^3.0.5", - "@ui5/logger": "^3.0.0", + "@ui5/logger": "^4.0.0", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.3.0", From c6622134681780e5ae29e7001a403c4e8f8fe414 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 23 Jul 2024 14:51:24 +0200 Subject: [PATCH 1137/1272] [ui5-project][INTERNAL] package.json: Set minimum ui5-builder peer dependency version to v4.0.0 --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index 44b137e0605..48d7c7231a3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -144,7 +144,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^3.4.1 || 4.0.0-alpha" + "@ui5/builder": "^3.4.1 || ^4.0.0" }, "peerDependenciesMeta": { "@ui5/builder": { From 948dab7dcebab76fdffa8ae6ce99f29917a3dbab Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 23 Jul 2024 14:07:39 +0000 Subject: [PATCH 1138/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 3.0.5 to 4.0.0 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v4.0.0/CHANGELOG.md --- packages/project/package-lock.json | 149 ++++++++--------------------- packages/project/package.json | 4 +- 2 files changed, 44 insertions(+), 109 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7a1e298775f..532fdda6f70 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,8 +10,8 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.3.4", - "@ui5/fs": "^3.0.5", - "@ui5/logger": "^4.0.0", + "@ui5/fs": "^4.0.0", + "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.3.0", @@ -56,11 +56,11 @@ "tap-xunit": "^2.4.1" }, "engines": { - "node": "^20.11.0 || >=21.2.0", + "node": "^20.11.0 || >=22.0.0", "npm": ">= 8" }, "peerDependencies": { - "@ui5/builder": "^3.4.1 || 4.0.0-alpha" + "@ui5/builder": "^3.4.1 || ^4.0.0" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -1357,105 +1357,50 @@ "dev": true }, "node_modules/@ui5/fs": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-3.0.5.tgz", - "integrity": "sha512-SpDoMvOGYeBR8xOTDb1cu0uxJNsC1FxrENsZiRMd6R2PfUAiR0fiWQHn4dVBspoLx+jFemAfLfTMv1DEn0m1qQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-4.0.0.tgz", + "integrity": "sha512-MKOcRpQ5v6L0Gz5rjJpXuHrrHuEgjM05akFRRakRUrFb4q/GfSci/aa7ivXSlLll9EkxHV5q3oH5WykXGYeigQ==", "dependencies": { - "@ui5/logger": "^3.0.0", + "@ui5/logger": "^4.0.0", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", - "globby": "^13.2.2", + "globby": "^14.0.2", "graceful-fs": "^4.2.11", - "micromatch": "^4.0.5", - "minimatch": "^9.0.3", + "micromatch": "^4.0.7", + "minimatch": "^10.0.1", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, "engines": { - "node": "^16.18.0 || >=18.12.0", + "node": "^20.11.0 || >=22.0.0", "npm": ">= 8" } }, - "node_modules/@ui5/fs/node_modules/@ui5/logger": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-3.0.0.tgz", - "integrity": "sha512-Np9pHhr+dnyL2gDFwIx6c6Xy0yhtpBIqUQM9An8uLX/wIcRjIjBSQ/r16o3YgS9roY59I/uj5ZEbIa1cdS3Dzg==", - "dependencies": { - "chalk": "^5.2.0", - "cli-progress": "^3.11.2", - "figures": "^5.0.0" - }, - "engines": { - "node": "^16.18.0 || >=18.12.0", - "npm": ">= 8" - } - }, - "node_modules/@ui5/fs/node_modules/figures": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", - "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", - "dependencies": { - "escape-string-regexp": "^5.0.0", - "is-unicode-supported": "^1.2.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ui5/fs/node_modules/globby": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", - "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "node_modules/@ui5/fs/node_modules/minimatch": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", + "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.3.0", - "ignore": "^5.2.4", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ui5/fs/node_modules/is-unicode-supported": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", - "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", - "engines": { - "node": ">=12" + "brace-expansion": "^2.0.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ui5/fs/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "engines": { - "node": ">=12" + "node": "20 || >=22" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/@ui5/logger": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-4.0.0.tgz", - "integrity": "sha512-HYXrzFALMTd4FnsmoopqOXoQg18q4Zw/9z8Hvq80n+qNt3lm4Ea9scDVOfgxHqyrWHtgtJ42J8mB5DCM43Ze+w==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-4.0.1.tgz", + "integrity": "sha512-M6ftnWiUXq3SVLLQ5XTBoJNdxzDvu71FoGh4iIR2kpaDCgpQ5DbHuBRhKAlrUB6EmIFzOxKepgYN95z09xbCbA==", "dependencies": { "chalk": "^5.3.0", "cli-progress": "^3.12.0", "figures": "^6.1.0" }, "engines": { - "node": "^20.11.0 || >=21.2.0", + "node": "^20.11.0 || >=22.0.0", "npm": ">= 8" } }, @@ -2160,9 +2105,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001642", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001642.tgz", - "integrity": "sha512-3XQ0DoRgLijXJErLSl+bLnJ+Et4KqV1PY6JJBGAFlsNsz31zeAIncyeZfLCabHK/jtSh+671RM9YMldxjUPZtA==", + "version": "1.0.30001643", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz", + "integrity": "sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg==", "dev": true, "funding": [ { @@ -3188,17 +3133,6 @@ "node": ">=0.3.1" } }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/docdash": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/docdash/-/docdash-2.0.2.tgz", @@ -3265,9 +3199,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.832", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.832.tgz", - "integrity": "sha512-cTen3SB0H2SGU7x467NRe1eVcQgcuS6jckKfWJHia2eo0cHIGOqHoAxevIYZD4eRHcWjkvFzo93bi3vJ9W+1lA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.0.tgz", + "integrity": "sha512-Vb3xHHYnLseK8vlMJQKJYXJ++t4u1/qJ3vykuVrVjvdiOEhYyT1AuP4x03G8EnPmYvYOhe9T+dADTmthjRQMkA==", "dev": true }, "node_modules/emittery": { @@ -5975,9 +5909,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.17", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.17.tgz", - "integrity": "sha512-Ww6ZlOiEQfPfXM45v17oabk77Z7mg5bOt7AjDyzy7RjK9OrLrLC8dyZQoAPEOtFX9SaNf1Tdvr5gRJWdTJj7GA==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", "dev": true }, "node_modules/node-stream-zip": { @@ -6068,9 +6002,9 @@ } }, "node_modules/npm-package-arg": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.2.tgz", - "integrity": "sha512-IGN0IAwmhDJwy13Wc8k+4PEbTPhpJnMtfR53ZbOyjkvmEcLS4nCwp6mvMWjS5sUjeiW3mpx6cHmuhKEu9XmcQw==", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.3.tgz", + "integrity": "sha512-sHGJy8sOC1YraBywpzQlIKBE4pBbGbiF95U6Auspzyem956E0+FtDtsx1ZxlOJkQCZ1AFXAY/yuvtFYrOxF+Bw==", "dependencies": { "hosted-git-info": "^7.0.0", "proc-log": "^4.0.0", @@ -6723,6 +6657,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, "engines": { "node": ">=8" } @@ -7039,9 +6974,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.22.1.tgz", - "integrity": "sha512-9tHNEa0Ov81YOopiVkcCJVz5TM6AEQ+CHHjFIktqPnE3NV0AHIkx+gh9tiCl58m/66wWxkOC9eltpa75J4lQPA==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.23.0.tgz", + "integrity": "sha512-ZiBujro2ohr5+Z/hZWHESLz3g08BBdrdLMieYFULJO+tWc437sn8kQsWLJoZErY8alNhxre9K4p3GURAG11n+w==", "engines": { "node": ">=16" }, @@ -7084,9 +7019,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.22.1.tgz", - "integrity": "sha512-9tHNEa0Ov81YOopiVkcCJVz5TM6AEQ+CHHjFIktqPnE3NV0AHIkx+gh9tiCl58m/66wWxkOC9eltpa75J4lQPA==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.23.0.tgz", + "integrity": "sha512-ZiBujro2ohr5+Z/hZWHESLz3g08BBdrdLMieYFULJO+tWc437sn8kQsWLJoZErY8alNhxre9K4p3GURAG11n+w==", "engines": { "node": ">=16" }, diff --git a/packages/project/package.json b/packages/project/package.json index 48d7c7231a3..4114877d36f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,8 +121,8 @@ }, "dependencies": { "@npmcli/config": "^8.3.4", - "@ui5/fs": "^3.0.5", - "@ui5/logger": "^4.0.0", + "@ui5/fs": "^4.0.0", + "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^5.3.0", From 1cb0fd4ba5ad361bb803af0d71dd0d282dfe456e Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 23 Jul 2024 14:17:46 +0000 Subject: [PATCH 1139/1272] [ui5-project]Release 4.0.0 --- packages/project/CHANGELOG.md | 45 +++++++++++++++++++++++++++++- packages/project/package-lock.json | 4 +-- packages/project/package.json | 2 +- 3 files changed, 47 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 4412509004b..8f5bbc359b7 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,49 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v3.9.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.0...HEAD). + + +## [v4.0.0] - 2024-07-23 +### Breaking Changes +- Drop node v21 support [`b017633`](https://github.com/SAP/ui5-project/commit/b01763338ceff80f9df459b246f12b06c77891d0) +- Make '[@ui5](https://github.com/ui5)/builder' an optional peerDependency [`cb2e99d`](https://github.com/SAP/ui5-project/commit/cb2e99dbc7804fed4d8e10a2e95063b6357e963d) +- Rename ui5HomeDir to ui5DataDir in APIs ([#707](https://github.com/SAP/ui5-project/issues/707)) [`5103c3e`](https://github.com/SAP/ui5-project/commit/5103c3ee63bc9c5b5fa6db136badec78e89ee28d) +- Set default workspaceName to "default" for API usage ([#706](https://github.com/SAP/ui5-project/issues/706)) [`a2d8f9d`](https://github.com/SAP/ui5-project/commit/a2d8f9d03154cfc330ccbeaf0c0aaa10032c2337) +- Require Node.js 20.11.x/>=21.2.0 and npm >=10 [`6a444a0`](https://github.com/SAP/ui5-project/commit/6a444a077166451ada16334ef62f1357e2c15bd7) + +### Dependency Updates +- Bump rimraf from 5.0.9 to 6.0.1 [`9c3c70f`](https://github.com/SAP/ui5-project/commit/9c3c70f71963ba24734f02380b0f468c505e6482) +- Bump pacote from 17.0.7 to 18.0.6 [`c6b17c4`](https://github.com/SAP/ui5-project/commit/c6b17c48a1021226b0a51826c889a549ae459983) +- Bump read-pkg-up from 10.1.0 to 11.0.0 [`83e93aa`](https://github.com/SAP/ui5-project/commit/83e93aab5c90dfb8133921eaf5785b06eb51b6cc) +- Bump read-pkg from 8.1.0 to 9.0.1 [`0279ac9`](https://github.com/SAP/ui5-project/commit/0279ac9dd248e7d2215c44ed5e3a7ebc19894de2) +- Bump globby from 13.2.2 to 14.0.1 [`eb9d6d8`](https://github.com/SAP/ui5-project/commit/eb9d6d8501123cd48b1e7b8375d2c9fb70ad7334) + +### Features +- Apply specVersion defaults from ui5.yaml.json schema ([#733](https://github.com/SAP/ui5-project/issues/733)) [`e3e8f85`](https://github.com/SAP/ui5-project/commit/e3e8f855506c23cc0bac3e57cbca0ab6779956de) +- **Schema:** Introduce specVersion 4.0 ([#731](https://github.com/SAP/ui5-project/issues/731)) [`c5a9fde`](https://github.com/SAP/ui5-project/commit/c5a9fde02b53b36af25f7691cadd79a434ddd0aa) +- **manifest.json:** Auto-fill supportedLocales ([#683](https://github.com/SAP/ui5-project/issues/683)) [`c905d4f`](https://github.com/SAP/ui5-project/commit/c905d4f7ee022a60596c6d867abf588275f8f1d2) + +### BREAKING CHANGE + +Consumers of the Node.js API that make use of the ProjectGraph#build + +Installers and Resolvers' argument `ui5HomeDir` is now renamed to +`ui5DataDir` + +JIRA: CPOUI5FOUNDATION-802 +Relates to: https://github.com/SAP/ui5-tooling/issues/701 + +Set default workspaceName to "default" for API usage +(https://github.com/SAP/ui5-project/pull/586) + +JIRA: CPOUI5FOUNDATION-802 +Relates to: https://github.com/SAP/ui5-tooling/issues/701 + +--------- + +Support for older Node.js and npm releases has been dropped. +Only Node.js 20.11.x and >=21.2.0 as well as npm v10 or higher are supported. ## [v3.9.2] - 2024-06-24 @@ -502,6 +544,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v4.0.0]: https://github.com/SAP/ui5-project/compare/v3.9.0...v4.0.0 [v3.9.2]: https://github.com/SAP/ui5-project/compare/v3.9.1...v3.9.2 [v3.9.1]: https://github.com/SAP/ui5-project/compare/v3.9.0...v3.9.1 [v3.9.0]: https://github.com/SAP/ui5-project/compare/v3.8.0...v3.9.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 532fdda6f70..46d81c3e76b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "4.0.0-alpha", + "version": "4.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "4.0.0-alpha", + "version": "4.0.0", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.3.4", diff --git a/packages/project/package.json b/packages/project/package.json index 4114877d36f..2b14e005655 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "4.0.0-alpha", + "version": "4.0.0", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 0fa8237f680cc1ace7b0a4b7de6701f7525840de Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 23 Jul 2024 18:45:30 +0200 Subject: [PATCH 1140/1272] [ui5-project][INTERNAL] Release notes: Ignore v3 tags when generating release notes --- packages/project/.chglog/release-config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.chglog/release-config.yml b/packages/project/.chglog/release-config.yml index 3cc4e25eb8c..14c3b27d514 100755 --- a/packages/project/.chglog/release-config.yml +++ b/packages/project/.chglog/release-config.yml @@ -3,7 +3,7 @@ template: RELEASE.tpl.md info: repository_url: https://github.com/SAP/ui5-project options: - tag_filter_pattern: '^v[^012]' # For release notes ignore versions below v4 to that we always compare the _last v4+_ tag with the current release + tag_filter_pattern: '^v[^0123]' # For release notes ignore versions below v4 to that we always compare the _last v4+_ tag with the current release commits: filters: Type: From c906ffe89efad76c0a9db9f632a9882c7e1d0556 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 23 Jul 2024 18:48:47 +0200 Subject: [PATCH 1141/1272] [ui5-project][INTERNAL] azure: Migrate to task 'PublishCodeCoverageResults' version 2 For further info, see https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/publish-code-coverage-results-v2?view=azure-pipelines --- packages/project/azure-pipelines.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 63fefdcccdf..605cbeff9f7 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -61,11 +61,10 @@ steps: testResultsFormat: 'JUnit' testResultsFiles: '$(System.DefaultWorkingDirectory)/test-results.xml' -- task: PublishCodeCoverageResults@1 +- task: PublishCodeCoverageResults@2 displayName: Publish Test Coverage Results condition: succeededOrFailed() inputs: - codeCoverageTool: 'cobertura' summaryFileLocation: '$(System.DefaultWorkingDirectory)/coverage/cobertura-coverage.xml' - script: npm run coverage From a11863d9d7bd7d3f7c32c75ed610cb5946b20967 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 28 Jul 2024 02:20:12 +0000 Subject: [PATCH 1142/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 207 +++++++++++------------------ 1 file changed, 77 insertions(+), 130 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 46d81c3e76b..9ce4eb71105 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -94,9 +94,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.24.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.9.tgz", - "integrity": "sha512-e701mcfApCJqMMueQI0Fb68Amflj83+dvAvHawoBpAz+GDjCIyGHzNwnefjsWJ3xiYAqqiQFoWbspGYBdb2/ng==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.0.tgz", + "integrity": "sha512-P4fwKI2mjEb3ZU5cnMJzvRsRKGBUcs8jvxIoRmr6ufAY9Xk2Bz7JubRTTivkw55c7WQJfTECeqYVa+HZ0FzREg==", "dev": true, "engines": { "node": ">=6.9.0" @@ -142,12 +142,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.10.tgz", - "integrity": "sha512-o9HBZL1G2129luEUlG1hB4N/nlYNWHnpwlND9eOMclRqqu1YDy2sSYVCFUZwl8I1Gxh+QSRrP2vD7EpUmFVXxg==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.0.tgz", + "integrity": "sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==", "dev": true, "dependencies": { - "@babel/types": "^7.24.9", + "@babel/types": "^7.25.0", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -181,43 +181,6 @@ "semver": "bin/semver.js" } }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", - "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", - "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", - "dev": true, - "dependencies": { - "@babel/template": "^7.24.7", - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", - "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-module-imports": { "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", @@ -232,16 +195,15 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.24.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.9.tgz", - "integrity": "sha512-oYbh+rtFKj/HwBQkFlUzvcybzklmVdVV3UU+mN7n2t/q3yGHbuVdNxyFvSBO1tfvjyArpHNcWMAzsSPdyI46hw==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.0.tgz", + "integrity": "sha512-bIkOa2ZJYn7FHnepzr5iX9Kmz8FjIz4UKzJ9zhX3dnYuVW0xul9RuR3skBfoLu+FPTQw90EHW9rJsSZhyLQ3fQ==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.24.7", "@babel/helper-module-imports": "^7.24.7", "@babel/helper-simple-access": "^7.24.7", - "@babel/helper-split-export-declaration": "^7.24.7", - "@babel/helper-validator-identifier": "^7.24.7" + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.0" }, "engines": { "node": ">=6.9.0" @@ -272,18 +234,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", - "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-string-parser": { "version": "7.24.8", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", @@ -311,13 +261,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.8.tgz", - "integrity": "sha512-gV2265Nkcz7weJJfvDoAEVzC1e2OTDpkGbEsebse8koXUJUXPsCMi7sRo/+SPMuMZ9MtUPnGwITTnQnU5YjyaQ==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.0.tgz", + "integrity": "sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==", "dev": true, "dependencies": { - "@babel/template": "^7.24.7", - "@babel/types": "^7.24.8" + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.0" }, "engines": { "node": ">=6.9.0" @@ -389,9 +339,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.8.tgz", - "integrity": "sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.0.tgz", + "integrity": "sha512-CzdIU9jdP0dg7HdyB+bHvDJGagUv+qtzZt5rYCWwW6tITNqV9odjp6Qu41gkG0ca5UfdDUWrKkiAnHHdGRnOrA==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -401,33 +351,30 @@ } }, "node_modules/@babel/template": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", - "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", + "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/parser": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.8.tgz", - "integrity": "sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.0.tgz", + "integrity": "sha512-ubALThHQy4GCf6mbb+5ZRNmLLCI7bJ3f8Q6LHBSRlSKSWj5a7dSUzJBLv3VuIhFrFPgjF4IzPF567YG/HSCdZA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.24.8", - "@babel/helper-environment-visitor": "^7.24.7", - "@babel/helper-function-name": "^7.24.7", - "@babel/helper-hoist-variables": "^7.24.7", - "@babel/helper-split-export-declaration": "^7.24.7", - "@babel/parser": "^7.24.8", - "@babel/types": "^7.24.8", + "@babel/generator": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.0", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -436,9 +383,9 @@ } }, "node_modules/@babel/types": { - "version": "7.24.9", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.9.tgz", - "integrity": "sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.0.tgz", + "integrity": "sha512-LcnxQSsd9aXOIgmmSpvZ/1yo46ra2ESYyqLcryaBZOghxy5qqOBjvCWP5JfkI8yl9rlxRgdLTTMCQQRcN2hdCg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.24.8", @@ -1324,9 +1271,9 @@ "dev": true }, "node_modules/@types/markdown-it": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.1.tgz", - "integrity": "sha512-4NpsnpYl2Gt1ljyBGrKMxFYAYvpqbnnkgP/i/g+NLpjEUa3obn1XJCur9YbEXKDAkaXqsR1LbDnGEJ0MmKFxfg==", + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.2.tgz", + "integrity": "sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==", "dev": true, "dependencies": { "@types/linkify-it": "^5", @@ -1480,39 +1427,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.33.tgz", - "integrity": "sha512-MoIREbkdPQlnGfSKDMgzTqzqx5nmEjIc0ydLVYlTACGBsfvOJ4tHSbZXKVF536n6fB+0eZaGEOqsGThPpdvF5A==", + "version": "3.4.34", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.34.tgz", + "integrity": "sha512-Z0izUf32+wAnQewjHu+pQf1yw00EGOmevl1kE+ljjjMe7oEfpQ+BI3/JNK7yMB4IrUsqLDmPecUrpj3mCP+yJQ==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/shared": "3.4.33", + "@vue/shared": "3.4.34", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.33.tgz", - "integrity": "sha512-GzB8fxEHKw0gGet5BKlpfXEqoBnzSVWwMnT+dc25wE7pFEfrU/QsvjZMP9rD4iVXHBBoemTct8mN0GJEI6ZX5A==", + "version": "3.4.34", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.34.tgz", + "integrity": "sha512-3PUOTS1h5cskdOJMExCu2TInXuM0j60DRPpSCJDqOCupCfUZCJoyQmKtRmA8EgDNZ5kcEE7vketamRZfrEuVDw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.33", - "@vue/shared": "3.4.33" + "@vue/compiler-core": "3.4.34", + "@vue/shared": "3.4.34" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.33.tgz", - "integrity": "sha512-7rk7Vbkn21xMwIUpHQR4hCVejwE6nvhBOiDgoBcR03qvGqRKA7dCBSsHZhwhYUsmjlbJ7OtD5UFIyhP6BY+c8A==", + "version": "3.4.34", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.34.tgz", + "integrity": "sha512-x6lm0UrM03jjDXTPZgD9Ad8bIVD1ifWNit2EaWQIZB5CULr46+FbLQ5RpK7AXtDHGjx9rmvC7QRCTjsiGkAwRw==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/compiler-core": "3.4.33", - "@vue/compiler-dom": "3.4.33", - "@vue/compiler-ssr": "3.4.33", - "@vue/shared": "3.4.33", + "@vue/compiler-core": "3.4.34", + "@vue/compiler-dom": "3.4.34", + "@vue/compiler-ssr": "3.4.34", + "@vue/shared": "3.4.34", "estree-walker": "^2.0.2", "magic-string": "^0.30.10", "postcss": "^8.4.39", @@ -1520,19 +1467,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.33", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.33.tgz", - "integrity": "sha512-0WveC9Ai+eT/1b6LCV5IfsufBZ0HP7pSSTdDjcuW302tTEgoBw8rHVHKPbGUtzGReUFCRXbv6zQDDgucnV2WzQ==", + "version": "3.4.34", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.34.tgz", + "integrity": "sha512-8TDBcLaTrFm5rnF+Qm4BlliaopJgqJ28Nsrc80qazynm5aJO+Emu7y0RWw34L8dNnTRdcVBpWzJxhGYzsoVu4g==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.33", - "@vue/shared": "3.4.33" + "@vue/compiler-dom": "3.4.34", + "@vue/shared": "3.4.34" } }, "node_modules/@vue/shared": { - "version": "3.4.33", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.33.tgz", - "integrity": "sha512-aoRY0jQk3A/cuvdkodTrM4NMfxco8n55eG4H7ML/CRy7OryHfiqvug4xrCBBMbbN+dvXAetDDwZW9DXWWjBntA==", + "version": "3.4.34", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.34.tgz", + "integrity": "sha512-x5LmiRLpRsd9KTjAB8MPKf0CDPMcuItjP0gbNqFCIgL1I8iYp4zglhj9w9FPCdIbHG2M91RVeIbArFfFTz9I3A==", "dev": true }, "node_modules/abbrev": { @@ -2803,9 +2750,9 @@ } }, "node_modules/debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", "dependencies": { "ms": "2.1.2" }, @@ -3199,9 +3146,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.0.tgz", - "integrity": "sha512-Vb3xHHYnLseK8vlMJQKJYXJ++t4u1/qJ3vykuVrVjvdiOEhYyT1AuP4x03G8EnPmYvYOhe9T+dADTmthjRQMkA==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.2.tgz", + "integrity": "sha512-kc4r3U3V3WLaaZqThjYz/Y6z8tJe+7K0bbjUVo3i+LWIypVdMx5nXCkwRe6SWbY6ILqLdc1rKcKmr3HoH7wjSQ==", "dev": true }, "node_modules/emittery": { @@ -6790,9 +6737,9 @@ } }, "node_modules/postcss": { - "version": "8.4.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz", - "integrity": "sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==", + "version": "8.4.40", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.40.tgz", + "integrity": "sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==", "dev": true, "funding": [ { @@ -6835,9 +6782,9 @@ } }, "node_modules/pretty-ms": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.0.0.tgz", - "integrity": "sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.1.0.tgz", + "integrity": "sha512-o1piW0n3tgKIKCwk2vpM/vOV13zjJzvP37Ioze54YlTHE06m4tjEbzg9WsKkvTuyYln2DHjo5pY4qrZGI0otpw==", "dev": true, "dependencies": { "parse-ms": "^4.0.0" @@ -8415,9 +8362,9 @@ "dev": true }, "node_modules/underscore": { - "version": "1.13.6", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", - "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==", + "version": "1.13.7", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.7.tgz", + "integrity": "sha512-GMXzWtsc57XAtguZgaQViUOzs0KTkk8ojr3/xAxXLITqf/3EMwxC0inyETfDFjH/Krbhuep0HNbbjI9i/q3F3g==", "dev": true }, "node_modules/unicorn-magic": { From dd2671a54a8a762b42f7c13296aa5eeb1b14f451 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 30 Jul 2024 05:23:43 +0000 Subject: [PATCH 1143/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 80 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9ce4eb71105..7aa0a6c2260 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.8.3", + "eslint-plugin-jsdoc": "^48.9.2", "esmock": "^2.6.7", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", @@ -94,30 +94,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.0.tgz", - "integrity": "sha512-P4fwKI2mjEb3ZU5cnMJzvRsRKGBUcs8jvxIoRmr6ufAY9Xk2Bz7JubRTTivkw55c7WQJfTECeqYVa+HZ0FzREg==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.2.tgz", + "integrity": "sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.9.tgz", - "integrity": "sha512-5e3FI4Q3M3Pbr21+5xJwCv6ZT6KmGkI0vw3Tozy5ODAQFTIWe37iT8Cr7Ice2Ntb+M3iSKCEWMB1MBgKrW3whg==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", + "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.24.9", - "@babel/helper-compilation-targets": "^7.24.8", - "@babel/helper-module-transforms": "^7.24.9", - "@babel/helpers": "^7.24.8", - "@babel/parser": "^7.24.8", - "@babel/template": "^7.24.7", - "@babel/traverse": "^7.24.8", - "@babel/types": "^7.24.9", + "@babel/generator": "^7.25.0", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-module-transforms": "^7.25.2", + "@babel/helpers": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.2", + "@babel/types": "^7.25.2", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -157,12 +157,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.8.tgz", - "integrity": "sha512-oU+UoqCHdp+nWVDkpldqIQL/i/bvAv53tRqLG/s+cOXxe66zOYLU7ar/Xs3LdmBihrUMEUhwu6dMZwbNOYDwvw==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz", + "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.24.8", + "@babel/compat-data": "^7.25.2", "@babel/helper-validator-option": "^7.24.8", "browserslist": "^4.23.1", "lru-cache": "^5.1.1", @@ -195,15 +195,15 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.0.tgz", - "integrity": "sha512-bIkOa2ZJYn7FHnepzr5iX9Kmz8FjIz4UKzJ9zhX3dnYuVW0xul9RuR3skBfoLu+FPTQw90EHW9rJsSZhyLQ3fQ==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz", + "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==", "dev": true, "dependencies": { "@babel/helper-module-imports": "^7.24.7", "@babel/helper-simple-access": "^7.24.7", "@babel/helper-validator-identifier": "^7.24.7", - "@babel/traverse": "^7.25.0" + "@babel/traverse": "^7.25.2" }, "engines": { "node": ">=6.9.0" @@ -365,16 +365,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.0.tgz", - "integrity": "sha512-ubALThHQy4GCf6mbb+5ZRNmLLCI7bJ3f8Q6LHBSRlSKSWj5a7dSUzJBLv3VuIhFrFPgjF4IzPF567YG/HSCdZA==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.2.tgz", + "integrity": "sha512-s4/r+a7xTnny2O6FcZzqgT6nE4/GHEdcqj4qAeglbUOh0TeglEfmNJFAd/OLoVtGd6ZhAO8GCVvCNUO5t/VJVQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", "@babel/generator": "^7.25.0", "@babel/parser": "^7.25.0", "@babel/template": "^7.25.0", - "@babel/types": "^7.25.0", + "@babel/types": "^7.25.2", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -383,9 +383,9 @@ } }, "node_modules/@babel/types": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.0.tgz", - "integrity": "sha512-LcnxQSsd9aXOIgmmSpvZ/1yo46ra2ESYyqLcryaBZOghxy5qqOBjvCWP5JfkI8yl9rlxRgdLTTMCQQRcN2hdCg==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz", + "integrity": "sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.24.8", @@ -3146,9 +3146,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.2.tgz", - "integrity": "sha512-kc4r3U3V3WLaaZqThjYz/Y6z8tJe+7K0bbjUVo3i+LWIypVdMx5nXCkwRe6SWbY6ILqLdc1rKcKmr3HoH7wjSQ==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.3.tgz", + "integrity": "sha512-QNdYSS5i8D9axWp/6XIezRObRHqaav/ur9z1VzCDUCH1XIFOr9WQk5xmgunhsTpjjgDy3oLxO/WMOVZlpUQrlA==", "dev": true }, "node_modules/emittery": { @@ -3345,9 +3345,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.8.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.8.3.tgz", - "integrity": "sha512-AtIvwwW9D17MRkM0Z0y3/xZYaa9mdAvJrkY6fU/HNUwGbmMtHVvK4qRM9CDixGVtfNrQitb8c6zQtdh6cTOvLg==", + "version": "48.9.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.9.2.tgz", + "integrity": "sha512-ydqg2lEY/WxhMXEb1ZAn+yRbc43DlKYdMP/nUreF5ODE1P9mgeff8atL16lYNNKOvYxNOzL85/5gFVeGylSioA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.46.0", @@ -5308,12 +5308,12 @@ } }, "node_modules/magic-string": { - "version": "0.30.10", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", - "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", + "version": "0.30.11", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", + "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", "dev": true, "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15" + "@jridgewell/sourcemap-codec": "^1.5.0" } }, "node_modules/make-dir": { diff --git a/packages/project/package.json b/packages/project/package.json index 2b14e005655..bb8e9a72102 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.8.3", + "eslint-plugin-jsdoc": "^48.9.2", "esmock": "^2.6.7", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", From 45db9b872ef2ba1968cf4c87b55fe27e3822e745 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 30 Jul 2024 08:50:40 +0200 Subject: [PATCH 1144/1272] [ui5-project][DEPENDENCY] Fix @ui5/builder peerDependency range The range for v3.x had to be included for technical reasons before the first v4 release but it was not intended to be defined that way. --- packages/project/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/package.json b/packages/project/package.json index bb8e9a72102..c4913c1f79f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -144,7 +144,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^3.4.1 || ^4.0.0" + "@ui5/builder": "^4.0.0" }, "peerDependenciesMeta": { "@ui5/builder": { From 8c5381dc009bdd60312350161bd31e184b336645 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 31 Jul 2024 07:41:42 +0000 Subject: [PATCH 1145/1272] [ui5-project]Release 4.0.1 --- packages/project/CHANGELOG.md | 9 ++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 8f5bbc359b7..8623628c629 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.0...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.1...HEAD). + + +## [v4.0.1] - 2024-07-30 +### Dependency Updates +- Fix [@ui5](https://github.com/ui5)/builder peerDependency range [`71a4d6e`](https://github.com/SAP/ui5-project/commit/71a4d6e7bbe10a7f5a735dcef2e9022a4ecbdb97) + ## [v4.0.0] - 2024-07-23 @@ -544,6 +550,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v4.0.1]: https://github.com/SAP/ui5-project/compare/v4.0.0...v4.0.1 [v4.0.0]: https://github.com/SAP/ui5-project/compare/v3.9.0...v4.0.0 [v3.9.2]: https://github.com/SAP/ui5-project/compare/v3.9.1...v3.9.2 [v3.9.1]: https://github.com/SAP/ui5-project/compare/v3.9.0...v3.9.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7aa0a6c2260..ec996093339 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "4.0.0", + "version": "4.0.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "4.0.0", + "version": "4.0.1", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.3.4", diff --git a/packages/project/package.json b/packages/project/package.json index c4913c1f79f..23f3fcee4a2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "4.0.0", + "version": "4.0.1", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 96dc0eea6449a69a7c6b44697dfb49195f83def2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 1 Aug 2024 08:42:09 +0000 Subject: [PATCH 1146/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 119 ++++++++++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 77 insertions(+), 44 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ec996093339..2b4f14736bf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.9.2", + "eslint-plugin-jsdoc": "^48.10.2", "esmock": "^2.6.7", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", @@ -60,7 +60,7 @@ "npm": ">= 8" }, "peerDependencies": { - "@ui5/builder": "^3.4.1 || ^4.0.0" + "@ui5/builder": "^4.0.0" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -339,10 +339,13 @@ } }, "node_modules/@babel/parser": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.0.tgz", - "integrity": "sha512-CzdIU9jdP0dg7HdyB+bHvDJGagUv+qtzZt5rYCWwW6tITNqV9odjp6Qu41gkG0ca5UfdDUWrKkiAnHHdGRnOrA==", + "version": "7.25.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.3.tgz", + "integrity": "sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==", "dev": true, + "dependencies": { + "@babel/types": "^7.25.2" + }, "bin": { "parser": "bin/babel-parser.js" }, @@ -365,14 +368,14 @@ } }, "node_modules/@babel/traverse": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.2.tgz", - "integrity": "sha512-s4/r+a7xTnny2O6FcZzqgT6nE4/GHEdcqj4qAeglbUOh0TeglEfmNJFAd/OLoVtGd6ZhAO8GCVvCNUO5t/VJVQ==", + "version": "7.25.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.3.tgz", + "integrity": "sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", "@babel/generator": "^7.25.0", - "@babel/parser": "^7.25.0", + "@babel/parser": "^7.25.3", "@babel/template": "^7.25.0", "@babel/types": "^7.25.2", "debug": "^4.3.1", @@ -1427,59 +1430,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.34", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.34.tgz", - "integrity": "sha512-Z0izUf32+wAnQewjHu+pQf1yw00EGOmevl1kE+ljjjMe7oEfpQ+BI3/JNK7yMB4IrUsqLDmPecUrpj3mCP+yJQ==", + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.35.tgz", + "integrity": "sha512-gKp0zGoLnMYtw4uS/SJRRO7rsVggLjvot3mcctlMXunYNsX+aRJDqqw/lV5/gHK91nvaAAlWFgdVl020AW1Prg==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/shared": "3.4.34", + "@vue/shared": "3.4.35", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.34", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.34.tgz", - "integrity": "sha512-3PUOTS1h5cskdOJMExCu2TInXuM0j60DRPpSCJDqOCupCfUZCJoyQmKtRmA8EgDNZ5kcEE7vketamRZfrEuVDw==", + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.35.tgz", + "integrity": "sha512-pWIZRL76/oE/VMhdv/ovZfmuooEni6JPG1BFe7oLk5DZRo/ImydXijoZl/4kh2406boRQ7lxTYzbZEEXEhj9NQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.34", - "@vue/shared": "3.4.34" + "@vue/compiler-core": "3.4.35", + "@vue/shared": "3.4.35" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.34", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.34.tgz", - "integrity": "sha512-x6lm0UrM03jjDXTPZgD9Ad8bIVD1ifWNit2EaWQIZB5CULr46+FbLQ5RpK7AXtDHGjx9rmvC7QRCTjsiGkAwRw==", + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.35.tgz", + "integrity": "sha512-xacnRS/h/FCsjsMfxBkzjoNxyxEyKyZfBch/P4vkLRvYJwe5ChXmZZrj8Dsed/752H2Q3JE8kYu9Uyha9J6PgA==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/compiler-core": "3.4.34", - "@vue/compiler-dom": "3.4.34", - "@vue/compiler-ssr": "3.4.34", - "@vue/shared": "3.4.34", + "@vue/compiler-core": "3.4.35", + "@vue/compiler-dom": "3.4.35", + "@vue/compiler-ssr": "3.4.35", + "@vue/shared": "3.4.35", "estree-walker": "^2.0.2", "magic-string": "^0.30.10", - "postcss": "^8.4.39", + "postcss": "^8.4.40", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.34", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.34.tgz", - "integrity": "sha512-8TDBcLaTrFm5rnF+Qm4BlliaopJgqJ28Nsrc80qazynm5aJO+Emu7y0RWw34L8dNnTRdcVBpWzJxhGYzsoVu4g==", + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.35.tgz", + "integrity": "sha512-7iynB+0KB1AAJKk/biENTV5cRGHRdbdaD7Mx3nWcm1W8bVD6QmnH3B4AHhQQ1qZHhqFwzEzMwiytXm3PX1e60A==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.34", - "@vue/shared": "3.4.34" + "@vue/compiler-dom": "3.4.35", + "@vue/shared": "3.4.35" } }, "node_modules/@vue/shared": { - "version": "3.4.34", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.34.tgz", - "integrity": "sha512-x5LmiRLpRsd9KTjAB8MPKf0CDPMcuItjP0gbNqFCIgL1I8iYp4zglhj9w9FPCdIbHG2M91RVeIbArFfFTz9I3A==", + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.35.tgz", + "integrity": "sha512-hvuhBYYDe+b1G8KHxsQ0diDqDMA8D9laxWZhNAjE83VZb5UDaXl9Xnz7cGdDSyiHM90qqI/CyGMcpBpiDy6VVQ==", "dev": true }, "node_modules/abbrev": { @@ -2052,9 +2055,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001643", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz", - "integrity": "sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg==", + "version": "1.0.30001646", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001646.tgz", + "integrity": "sha512-dRg00gudiBDDTmUhClSdv3hqRfpbOnU28IpI1T6PBTLWa+kOj0681C8uML3PifYfREuBrVjDGhL3adYpBT6spw==", "dev": true, "funding": [ { @@ -3146,9 +3149,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.3.tgz", - "integrity": "sha512-QNdYSS5i8D9axWp/6XIezRObRHqaav/ur9z1VzCDUCH1XIFOr9WQk5xmgunhsTpjjgDy3oLxO/WMOVZlpUQrlA==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.4.tgz", + "integrity": "sha512-orzA81VqLyIGUEA77YkVA1D+N+nNfl2isJVjjmOyrlxuooZ19ynb+dOlaDTqd/idKRS9lDCSBmtzM+kyCsMnkA==", "dev": true }, "node_modules/emittery": { @@ -3345,9 +3348,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.9.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.9.2.tgz", - "integrity": "sha512-ydqg2lEY/WxhMXEb1ZAn+yRbc43DlKYdMP/nUreF5ODE1P9mgeff8atL16lYNNKOvYxNOzL85/5gFVeGylSioA==", + "version": "48.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.10.2.tgz", + "integrity": "sha512-xTkf/MmEeVrTbezc6kDqCJmK9RcseIKo8X4oyoDCMvV4LY8dqrQi8kmfRrv9n0gNBkCclevaOh2Lkmu6Fs8SLg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.46.0", @@ -3355,6 +3358,7 @@ "comment-parser": "1.4.1", "debug": "^4.3.5", "escape-string-regexp": "^4.0.0", + "espree": "^10.1.0", "esquery": "^1.6.0", "parse-imports": "^2.1.1", "semver": "^7.6.3", @@ -3380,6 +3384,35 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/eslint-plugin-jsdoc/node_modules/eslint-visitor-keys": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", + "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/espree": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", + "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", + "dev": true, + "dependencies": { + "acorn": "^8.12.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.0.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, "node_modules/eslint-scope": { "version": "7.2.2", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 23f3fcee4a2..6ec70973040 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.9.2", + "eslint-plugin-jsdoc": "^48.10.2", "esmock": "^2.6.7", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", From eeb1a3e9ad155003a6167512587fd71d590bd421 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 1 Aug 2024 13:41:51 +0200 Subject: [PATCH 1147/1272] [ui5-project][FIX] decorateBootstrapModule should default to "false" The default value in the schema was not aligned with the actual default value in the code. Starting with v4, the default values are applied to the bundle config, which is why it now started to matter. --- .../lib/validation/schema/specVersion/kind/project.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/project/lib/validation/schema/specVersion/kind/project.json b/packages/project/lib/validation/schema/specVersion/kind/project.json index e8b3be79a90..7e4480b71e1 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project.json @@ -420,7 +420,7 @@ } }, "$comment": "Add async prop only if mode = 'require'" - }, + }, "then": { "type": "object", "additionalProperties": false, @@ -517,7 +517,7 @@ }, "decorateBootstrapModule": { "type": "boolean", - "default": true + "default": false }, "addTryCatchRestartWrapper": { "type": "boolean", @@ -543,7 +543,7 @@ }, "decorateBootstrapModule": { "type": "boolean", - "default": true + "default": false }, "addTryCatchRestartWrapper": { "type": "boolean", @@ -573,7 +573,7 @@ }, "decorateBootstrapModule": { "type": "boolean", - "default": true + "default": false }, "addTryCatchRestartWrapper": { "type": "boolean", From a448c017eeac421f3fd1b76c8cbaff99df5fb0ed Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 1 Aug 2024 13:42:52 +0000 Subject: [PATCH 1148/1272] [ui5-project]Release 4.0.2 --- packages/project/CHANGELOG.md | 11 +++++++++-- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 8623628c629..1102d9e907c 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,10 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.1...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.2...HEAD). + + +## [v4.0.2] - 2024-08-01 +### Bug Fixes +- decorateBootstrapModule should default to "false" [`b2a420a`](https://github.com/SAP/ui5-project/commit/b2a420a13e8ad025672ef616ff2e56e0371f5439) + -## [v4.0.1] - 2024-07-30 +## [v4.0.1] - 2024-07-31 ### Dependency Updates - Fix [@ui5](https://github.com/ui5)/builder peerDependency range [`71a4d6e`](https://github.com/SAP/ui5-project/commit/71a4d6e7bbe10a7f5a735dcef2e9022a4ecbdb97) @@ -550,6 +556,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v4.0.2]: https://github.com/SAP/ui5-project/compare/v4.0.1...v4.0.2 [v4.0.1]: https://github.com/SAP/ui5-project/compare/v4.0.0...v4.0.1 [v4.0.0]: https://github.com/SAP/ui5-project/compare/v3.9.0...v4.0.0 [v3.9.2]: https://github.com/SAP/ui5-project/compare/v3.9.1...v3.9.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2b4f14736bf..81ad181f93a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "4.0.1", + "version": "4.0.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "4.0.1", + "version": "4.0.2", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.3.4", diff --git a/packages/project/package.json b/packages/project/package.json index 6ec70973040..80e7248362c 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "4.0.1", + "version": "4.0.2", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From b9e549bc17c9a9c89ecf71d7fff4bb16d122eadf Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 4 Aug 2024 02:20:26 +0000 Subject: [PATCH 1149/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 26 +++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 81ad181f93a..f777640800a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.10.2", + "eslint-plugin-jsdoc": "^48.11.0", "esmock": "^2.6.7", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", @@ -1904,9 +1904,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.2.tgz", - "integrity": "sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", + "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==", "dev": true, "funding": [ { @@ -1923,9 +1923,9 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001640", - "electron-to-chromium": "^1.4.820", - "node-releases": "^2.0.14", + "caniuse-lite": "^1.0.30001646", + "electron-to-chromium": "^1.5.4", + "node-releases": "^2.0.18", "update-browserslist-db": "^1.1.0" }, "bin": { @@ -2055,9 +2055,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001646", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001646.tgz", - "integrity": "sha512-dRg00gudiBDDTmUhClSdv3hqRfpbOnU28IpI1T6PBTLWa+kOj0681C8uML3PifYfREuBrVjDGhL3adYpBT6spw==", + "version": "1.0.30001647", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001647.tgz", + "integrity": "sha512-n83xdNiyeNcHpzWY+1aFbqCK7LuLfBricc4+alSQL2Xb6OR3XpnQAmlDG+pQcdTfiHRuLcQ96VOfrPSGiNJYSg==", "dev": true, "funding": [ { @@ -3348,9 +3348,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.10.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.10.2.tgz", - "integrity": "sha512-xTkf/MmEeVrTbezc6kDqCJmK9RcseIKo8X4oyoDCMvV4LY8dqrQi8kmfRrv9n0gNBkCclevaOh2Lkmu6Fs8SLg==", + "version": "48.11.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.11.0.tgz", + "integrity": "sha512-d12JHJDPNo7IFwTOAItCeJY1hcqoIxE0lHA8infQByLilQ9xkqrRa6laWCnsuCrf+8rUnvxXY1XuTbibRBNylA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.46.0", diff --git a/packages/project/package.json b/packages/project/package.json index 80e7248362c..8325e439f05 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^14.0.0", - "eslint-plugin-jsdoc": "^48.10.2", + "eslint-plugin-jsdoc": "^48.11.0", "esmock": "^2.6.7", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", From 4c281959545872aa976fa8701f84e77a4bc1f1ff Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Aug 2024 09:53:25 +0200 Subject: [PATCH 1150/1272] [ui5-project][INTERNAL] Bump eslint from 8.57.0 to 9.8.0 (#761) Bumps [eslint](https://github.com/eslint/eslint) from 8.57.0 to 9.8.0. --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Max Reichmann --- packages/project/.eslintignore | 13 - packages/project/.eslintrc.cjs | 86 ---- packages/project/eslint.common.config.js | 99 +++++ packages/project/eslint.config.js | 9 + .../providers/NodePackageDependencies.js | 4 +- packages/project/package-lock.json | 407 ++++++++---------- packages/project/package.json | 6 +- 7 files changed, 301 insertions(+), 323 deletions(-) delete mode 100644 packages/project/.eslintignore delete mode 100644 packages/project/.eslintrc.cjs create mode 100644 packages/project/eslint.common.config.js create mode 100644 packages/project/eslint.config.js diff --git a/packages/project/.eslintignore b/packages/project/.eslintignore deleted file mode 100644 index 5c9eafbbec4..00000000000 --- a/packages/project/.eslintignore +++ /dev/null @@ -1,13 +0,0 @@ -# /node_modules/* and /bower_components/* ignored by default - -# Exclude coverage folder -coverage/ - -# Exclude test files -test/tmp/ -test/expected/ -test/fixtures/ - -# Exlucde JSDoc output -docs/ -jsdocs/ diff --git a/packages/project/.eslintrc.cjs b/packages/project/.eslintrc.cjs deleted file mode 100644 index ff7ac6fa829..00000000000 --- a/packages/project/.eslintrc.cjs +++ /dev/null @@ -1,86 +0,0 @@ -module.exports = { - "parserOptions": { - "sourceType": "module", - }, - "env": { - "node": true, - "es2023": true - }, - "extends": ["eslint:recommended", "plugin:ava/recommended", "google"], - "plugins": [ - "jsdoc", - "ava" - ], - "rules": { - "indent": [ - "error", - "tab" - ], - "linebreak-style": [ - "error", - "unix" - ], - "quotes": [ - "error", - "double", - {"allowTemplateLiterals": true} - ], - "semi": [ - "error", - "always" - ], - "no-negated-condition": "off", - "require-jsdoc": "off", - "no-mixed-requires": "off", - "max-len": [ - "error", - { - "code": 120, - "ignoreUrls": true, - "ignoreRegExpLiterals": true - } - ], - "no-implicit-coercion": [ - 2, - {"allow": ["!!"]} - ], - "comma-dangle": "off", - "no-tabs": "off", - "valid-jsdoc": 0, - // jsdoc/check-examples is temporarily set to "warn" as the rule causes issues in our CI - // See: https://github.com/gajus/eslint-plugin-jsdoc/issues/508 - // Starting with ESLint v8, it needs to be disabled as it currently can't be supported - // See: https://github.com/eslint/eslint/issues/14745 - "jsdoc/check-examples": 0, - "jsdoc/check-param-names": 2, - "jsdoc/check-tag-names": 2, - "jsdoc/check-types": 2, - "jsdoc/no-undefined-types": 0, - "jsdoc/require-description": 0, - "jsdoc/require-description-complete-sentence": 0, - "jsdoc/require-example": 0, - "jsdoc/require-hyphen-before-param-description": 0, - "jsdoc/require-param": 2, - "jsdoc/require-param-description": 0, - "jsdoc/require-param-name": 2, - "jsdoc/require-param-type": 2, - "jsdoc/require-returns": 0, - "jsdoc/require-returns-description": 0, - "jsdoc/require-returns-type": 2, - "jsdoc/tag-lines": [2, "any", {"startLines": 1}], - "jsdoc/valid-types": 0, - // ava/assertion-arguments reports concatenated strings in a assertion message as an issue - // See: https://github.com/avajs/eslint-plugin-ava/issues/332 - "ava/assertion-arguments": 0 - }, - "settings": { - "jsdoc": { - "mode": "jsdoc", - "tagNamePreference": { - "return": "returns", - "augments": "extends" - } - } - }, - "root": true -}; diff --git a/packages/project/eslint.common.config.js b/packages/project/eslint.common.config.js new file mode 100644 index 00000000000..07876d526f0 --- /dev/null +++ b/packages/project/eslint.common.config.js @@ -0,0 +1,99 @@ +import jsdoc from "eslint-plugin-jsdoc"; +import ava from "eslint-plugin-ava"; +import globals from "globals"; +import js from "@eslint/js"; +import google from "eslint-config-google"; + +export default [{ + ignores: [ // Common ignore patterns across all tooling repos + "**/coverage/", + "test/tmp/", + "test/expected/", + "test/fixtures/", + "**/docs/", + "**/jsdocs/", + ], +}, js.configs.recommended, google, ava.configs["flat/recommended"], { + name: "Common ESLint config used for all tooling repos", + + plugins: { + jsdoc, + }, + + languageOptions: { + globals: { + ...globals.node, + }, + + ecmaVersion: 2023, + sourceType: "module", + }, + + settings: { + jsdoc: { + mode: "jsdoc", + + tagNamePreference: { + return: "returns", + augments: "extends", + }, + }, + }, + + rules: { + "indent": ["error", "tab"], + "linebreak-style": ["error", "unix"], + + "quotes": ["error", "double", { + allowTemplateLiterals: true, + }], + + "semi": ["error", "always"], + "no-negated-condition": "off", + "require-jsdoc": "off", + "no-mixed-requires": "off", + + "max-len": ["error", { + code: 120, + ignoreUrls: true, + ignoreRegExpLiterals: true, + }], + + "no-implicit-coercion": [2, { + allow: ["!!"], + }], + + "comma-dangle": "off", + "no-tabs": "off", + "no-console": 2, // Disallow console.log() + "no-eval": 2, + // The following rule must be disabled as of ESLint 9. + // It's removed and causes issues when present + // https://eslint.org/docs/latest/rules/valid-jsdoc + "valid-jsdoc": 0, + "jsdoc/check-examples": 0, + "jsdoc/check-param-names": 2, + "jsdoc/check-tag-names": 2, + "jsdoc/check-types": 2, + "jsdoc/no-undefined-types": 0, + "jsdoc/require-description": 0, + "jsdoc/require-description-complete-sentence": 0, + "jsdoc/require-example": 0, + "jsdoc/require-hyphen-before-param-description": 0, + "jsdoc/require-param": 2, + "jsdoc/require-param-description": 0, + "jsdoc/require-param-name": 2, + "jsdoc/require-param-type": 2, + "jsdoc/require-returns": 0, + "jsdoc/require-returns-description": 0, + "jsdoc/require-returns-type": 2, + + "jsdoc/tag-lines": [2, "any", { + startLines: 1, + }], + + "jsdoc/valid-types": 0, + "ava/assertion-arguments": 0, + }, +} +]; diff --git a/packages/project/eslint.config.js b/packages/project/eslint.config.js new file mode 100644 index 00000000000..74539640b1d --- /dev/null +++ b/packages/project/eslint.config.js @@ -0,0 +1,9 @@ +import eslintCommonConfig from "./eslint.common.config.js"; + +export default [ + ...eslintCommonConfig, // Load common ESLint config + { + // Add project-specific ESLint config rules here + // in order to override common config + } +]; diff --git a/packages/project/lib/graph/providers/NodePackageDependencies.js b/packages/project/lib/graph/providers/NodePackageDependencies.js index 080863fd74c..8ee824236b3 100644 --- a/packages/project/lib/graph/providers/NodePackageDependencies.js +++ b/packages/project/lib/graph/providers/NodePackageDependencies.js @@ -159,7 +159,7 @@ class NodePackageDependencies { name: depName, optional: true }); - } catch (err) { + } catch { // Ignore error since it's a development dependency of a non-root module } })); @@ -172,7 +172,7 @@ class NodePackageDependencies { name: depName, optional: false }); - } catch (err) { + } catch { // Ignore error since it's an optional dependency } })); diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f777640800a..42283c82343 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -33,17 +33,21 @@ "yesno": "^0.4.0" }, "devDependencies": { + "@eslint/compat": "^1.1.1", + "@eslint/eslintrc": "^3.1.0", + "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.2.0", "ava": "^6.1.3", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.57.0", + "eslint": "^9.8.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-ava": "^14.0.0", + "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^48.11.0", "esmock": "^2.6.7", + "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -385,6 +389,15 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/types": { "version": "7.25.2", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz", @@ -437,16 +450,61 @@ "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, + "node_modules/@eslint/compat": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.1.1.tgz", + "integrity": "sha512-lpHyRyplhGPL5mGEh6M9O5nnKk0Gz4bFI+Zu6tKlPpDUN7XshWvH9C/px4UVm87IAANE0W81CEsNGbS1KlzXpA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.17.1.tgz", + "integrity": "sha512-BlYOpej8AQ8Ev9xVqroV7a02JK3SkBAaN9GfMMH9W6Ch8FlQlkjGw4Ir7+FgYwfirivAf4t+GtzuAxqfukmISA==", + "dev": true, + "dependencies": { + "@eslint/object-schema": "^2.1.4", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@eslint/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz", + "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", + "espree": "^10.0.1", + "globals": "^14.0.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", @@ -454,7 +512,7 @@ "strip-json-comments": "^3.1.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { "url": "https://opencollective.com/eslint" @@ -470,89 +528,75 @@ "concat-map": "0.0.1" } }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "node_modules/@eslint/eslintrc/node_modules/eslint-visitor-keys": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", + "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, "engines": { - "node": ">=8" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "node_modules/@eslint/eslintrc/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/@eslint/eslintrc/node_modules/espree": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", + "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "acorn": "^8.12.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.0.0" }, "engines": { - "node": "*" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@eslint/eslintrc/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", "dev": true, "engines": { - "node": ">=10" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@eslint/js": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", - "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.14", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", - "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", - "deprecated": "Use @eslint/config-array instead", + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^2.0.2", - "debug": "^4.3.1", - "minimatch": "^3.0.5" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=10.10.0" + "node": "*" } }, - "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/@eslint/js": { + "version": "9.8.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.8.0.tgz", + "integrity": "sha512-MfluB7EUfxXtv3i/++oh89uzAr4PDI4nn201hsp+qaXqsjAWzinlZEHEfPgAX4doIlKvPG/i0A9dpKxOLII8yA==", "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/@eslint/object-schema": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz", + "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==", "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, "engines": { - "node": "*" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, "node_modules/@humanwhocodes/module-importer": { @@ -568,12 +612,18 @@ "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", - "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", - "deprecated": "Use @eslint/object-schema instead", - "dev": true + "node_modules/@humanwhocodes/retry": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.0.tgz", + "integrity": "sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==", + "dev": true, + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } }, "node_modules/@isaacs/cliui": { "version": "8.0.2", @@ -1354,12 +1404,6 @@ "npm": ">= 8" } }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", - "dev": true - }, "node_modules/@vercel/nft": { "version": "0.26.5", "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.26.5.tgz", @@ -3092,18 +3136,6 @@ "@jsdoc/salty": "^0.2.1" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -3259,41 +3291,37 @@ } }, "node_modules/eslint": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", - "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "version": "9.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.8.0.tgz", + "integrity": "sha512-K8qnZ/QJzT2dLKdZJVX6W4XOwBzutMYmt0lqUS+JdXgd+HTYFlonFgkJ8s44d/zMPPCnOOk0kMWCApCPhiOy9A==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.0", - "@humanwhocodes/config-array": "^0.11.14", + "@eslint-community/regexpp": "^4.11.0", + "@eslint/config-array": "^0.17.1", + "@eslint/eslintrc": "^3.1.0", + "@eslint/js": "9.8.0", "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.3.0", "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", - "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", + "eslint-scope": "^8.0.2", + "eslint-visitor-keys": "^4.0.0", + "espree": "^10.1.0", + "esquery": "^1.5.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", + "file-entry-cache": "^8.0.0", "find-up": "^5.0.0", "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", "ignore": "^5.2.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", @@ -3307,10 +3335,10 @@ "eslint": "bin/eslint.js" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://eslint.org/donate" } }, "node_modules/eslint-config-google": { @@ -3326,9 +3354,9 @@ } }, "node_modules/eslint-plugin-ava": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-14.0.0.tgz", - "integrity": "sha512-XmKT6hppaipwwnLVwwvQliSU6AF1QMHiNoLD5JQfzhUhf0jY7CO0O624fQrE+Y/fTb9vbW8r77nKf7M/oHulxw==", + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-15.0.1.tgz", + "integrity": "sha512-eRX7mLFPvalGDWztJ4zm+anez2X6J/88r9CqLFfPAIMvFlGyJ+dUoFppoohgUQZLV09mIBNz5guP07zFJOLF8g==", "dev": true, "dependencies": { "enhance-visitors": "^1.0.0", @@ -3341,10 +3369,10 @@ "resolve-from": "^5.0.0" }, "engines": { - "node": ">=14.17 <15 || >=16.4" + "node": "^18.18 || >=20" }, "peerDependencies": { - "eslint": ">=8.26.0" + "eslint": ">=9" } }, "node_modules/eslint-plugin-jsdoc": { @@ -3414,16 +3442,16 @@ } }, "node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.0.2.tgz", + "integrity": "sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^5.2.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { "url": "https://opencollective.com/eslint" @@ -3548,6 +3576,35 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", + "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/espree": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", + "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", + "dev": true, + "dependencies": { + "acorn": "^8.12.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.0.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, "node_modules/eslint/node_modules/find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -3576,21 +3633,6 @@ "node": ">=10.13.0" } }, - "node_modules/eslint/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/eslint/node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -3660,18 +3702,6 @@ "node": ">=8" } }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/esmock": { "version": "2.6.7", "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.7.tgz", @@ -3848,15 +3878,15 @@ } }, "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", "dev": true, "dependencies": { - "flat-cache": "^3.0.4" + "flat-cache": "^4.0.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=16.0.0" } }, "node_modules/file-type": { @@ -3962,76 +3992,16 @@ } }, "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", "dev": true, "dependencies": { "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flat-cache/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/flat-cache/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "keyv": "^4.5.4" }, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/flat-cache/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/flat-cache/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=16" } }, "node_modules/flatted": { @@ -4298,12 +4268,15 @@ } }, "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "version": "15.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.9.0.tgz", + "integrity": "sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA==", "dev": true, "engines": { - "node": ">=4" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/globby": { @@ -4341,12 +4314,6 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 8325e439f05..b1a3fdb5e6f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -152,17 +152,19 @@ } }, "devDependencies": { + "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.2.0", "ava": "^6.1.3", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^8.57.0", + "eslint": "^9.8.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-ava": "^14.0.0", + "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^48.11.0", "esmock": "^2.6.7", + "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From 1458d6ad8f813cb5981c60374e125d4f16a3a1ec Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 11 Aug 2024 02:20:20 +0000 Subject: [PATCH 1151/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 293 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 129 insertions(+), 166 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 42283c82343..0b41ad10a2c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -33,8 +33,6 @@ "yesno": "^0.4.0" }, "devDependencies": { - "@eslint/compat": "^1.1.1", - "@eslint/eslintrc": "^3.1.0", "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.2.0", "ava": "^6.1.3", @@ -42,7 +40,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.8.0", + "eslint": "^9.9.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^48.11.0", @@ -441,6 +439,18 @@ "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, "node_modules/@eslint-community/regexpp": { "version": "4.11.0", "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", @@ -450,15 +460,6 @@ "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/@eslint/compat": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.1.1.tgz", - "integrity": "sha512-lpHyRyplhGPL5mGEh6M9O5nnKk0Gz4bFI+Zu6tKlPpDUN7XshWvH9C/px4UVm87IAANE0W81CEsNGbS1KlzXpA==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, "node_modules/@eslint/config-array": { "version": "0.17.1", "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.17.1.tgz", @@ -528,35 +529,6 @@ "concat-map": "0.0.1" } }, - "node_modules/@eslint/eslintrc/node_modules/eslint-visitor-keys": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", - "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/espree": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", - "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", - "dev": true, - "dependencies": { - "acorn": "^8.12.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.0.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, "node_modules/@eslint/eslintrc/node_modules/globals": { "version": "14.0.0", "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", @@ -582,9 +554,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.8.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.8.0.tgz", - "integrity": "sha512-MfluB7EUfxXtv3i/++oh89uzAr4PDI4nn201hsp+qaXqsjAWzinlZEHEfPgAX4doIlKvPG/i0A9dpKxOLII8yA==", + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.9.0.tgz", + "integrity": "sha512-hhetes6ZHP3BlXLxmd8K2SNgkhNSi+UcecbnwWKwpP7kyi/uC75DJ1lOOBO3xrC4jyojtGE3YxKZPHfk4yrgug==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1474,39 +1446,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.35.tgz", - "integrity": "sha512-gKp0zGoLnMYtw4uS/SJRRO7rsVggLjvot3mcctlMXunYNsX+aRJDqqw/lV5/gHK91nvaAAlWFgdVl020AW1Prg==", + "version": "3.4.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.37.tgz", + "integrity": "sha512-ZDDT/KiLKuCRXyzWecNzC5vTcubGz4LECAtfGPENpo0nrmqJHwuWtRLxk/Sb9RAKtR9iFflFycbkjkY+W/PZUQ==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/shared": "3.4.35", - "entities": "^4.5.0", + "@vue/shared": "3.4.37", + "entities": "^5.0.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.35.tgz", - "integrity": "sha512-pWIZRL76/oE/VMhdv/ovZfmuooEni6JPG1BFe7oLk5DZRo/ImydXijoZl/4kh2406boRQ7lxTYzbZEEXEhj9NQ==", + "version": "3.4.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.37.tgz", + "integrity": "sha512-rIiSmL3YrntvgYV84rekAtU/xfogMUJIclUMeIKEtVBFngOL3IeZHhsH3UaFEgB5iFGpj6IW+8YuM/2Up+vVag==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.35", - "@vue/shared": "3.4.35" + "@vue/compiler-core": "3.4.37", + "@vue/shared": "3.4.37" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.35.tgz", - "integrity": "sha512-xacnRS/h/FCsjsMfxBkzjoNxyxEyKyZfBch/P4vkLRvYJwe5ChXmZZrj8Dsed/752H2Q3JE8kYu9Uyha9J6PgA==", + "version": "3.4.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.37.tgz", + "integrity": "sha512-vCfetdas40Wk9aK/WWf8XcVESffsbNkBQwS5t13Y/PcfqKfIwJX2gF+82th6dOpnpbptNMlMjAny80li7TaCIg==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/compiler-core": "3.4.35", - "@vue/compiler-dom": "3.4.35", - "@vue/compiler-ssr": "3.4.35", - "@vue/shared": "3.4.35", + "@vue/compiler-core": "3.4.37", + "@vue/compiler-dom": "3.4.37", + "@vue/compiler-ssr": "3.4.37", + "@vue/shared": "3.4.37", "estree-walker": "^2.0.2", "magic-string": "^0.30.10", "postcss": "^8.4.40", @@ -1514,19 +1486,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.35.tgz", - "integrity": "sha512-7iynB+0KB1AAJKk/biENTV5cRGHRdbdaD7Mx3nWcm1W8bVD6QmnH3B4AHhQQ1qZHhqFwzEzMwiytXm3PX1e60A==", + "version": "3.4.37", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.37.tgz", + "integrity": "sha512-TyAgYBWrHlFrt4qpdACh8e9Ms6C/AZQ6A6xLJaWrCL8GCX5DxMzxyeFAEMfU/VFr4tylHm+a2NpfJpcd7+20XA==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.35", - "@vue/shared": "3.4.35" + "@vue/compiler-dom": "3.4.37", + "@vue/shared": "3.4.37" } }, "node_modules/@vue/shared": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.35.tgz", - "integrity": "sha512-hvuhBYYDe+b1G8KHxsQ0diDqDMA8D9laxWZhNAjE83VZb5UDaXl9Xnz7cGdDSyiHM90qqI/CyGMcpBpiDy6VVQ==", + "version": "3.4.37", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.37.tgz", + "integrity": "sha512-nIh8P2fc3DflG8+5Uw8PT/1i17ccFn0xxN/5oE9RfV5SVnd7G0XEFRwakrnNFE/jlS95fpGXDVG5zDETS26nmg==", "dev": true }, "node_modules/abbrev": { @@ -2099,9 +2071,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001647", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001647.tgz", - "integrity": "sha512-n83xdNiyeNcHpzWY+1aFbqCK7LuLfBricc4+alSQL2Xb6OR3XpnQAmlDG+pQcdTfiHRuLcQ96VOfrPSGiNJYSg==", + "version": "1.0.30001651", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz", + "integrity": "sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==", "dev": true, "funding": [ { @@ -3181,9 +3153,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.4.tgz", - "integrity": "sha512-orzA81VqLyIGUEA77YkVA1D+N+nNfl2isJVjjmOyrlxuooZ19ynb+dOlaDTqd/idKRS9lDCSBmtzM+kyCsMnkA==", + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.6.tgz", + "integrity": "sha512-jwXWsM5RPf6j9dPYzaorcBSUg6AiqocPEyMpkchkvntaH9HGfOOMZwxMJjDY/XEs3T5dM7uyH1VhRMkqUU9qVw==", "dev": true }, "node_modules/emittery": { @@ -3225,9 +3197,9 @@ } }, "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-5.0.0.tgz", + "integrity": "sha512-BeJFvFRJddxobhvEdm5GqHzRV/X+ACeuw0/BuuxsCh1EUZcAIz8+kYmBp/LrQuloy6K1f3a0M7+IhmZ7QnkISA==", "dev": true, "engines": { "node": ">=0.12" @@ -3291,16 +3263,16 @@ } }, "node_modules/eslint": { - "version": "9.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.8.0.tgz", - "integrity": "sha512-K8qnZ/QJzT2dLKdZJVX6W4XOwBzutMYmt0lqUS+JdXgd+HTYFlonFgkJ8s44d/zMPPCnOOk0kMWCApCPhiOy9A==", + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.9.0.tgz", + "integrity": "sha512-JfiKJrbx0506OEerjK2Y1QlldtBxkAlLxT5OEcRF8uaQ86noDe2k31Vw9rnSWv+MXZHj7OOUV/dA0AhdLFcyvA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.11.0", "@eslint/config-array": "^0.17.1", "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.8.0", + "@eslint/js": "9.9.0", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.3.0", "@nodelib/fs.walk": "^1.2.8", @@ -3339,6 +3311,14 @@ }, "funding": { "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } } }, "node_modules/eslint-config-google": { @@ -3375,6 +3355,35 @@ "eslint": ">=9" } }, + "node_modules/eslint-plugin-ava/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-ava/node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, "node_modules/eslint-plugin-jsdoc": { "version": "48.11.0", "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.11.0.tgz", @@ -3412,35 +3421,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-plugin-jsdoc/node_modules/eslint-visitor-keys": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", - "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-plugin-jsdoc/node_modules/espree": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", - "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", - "dev": true, - "dependencies": { - "acorn": "^8.12.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.0.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, "node_modules/eslint-scope": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.0.2.tgz", @@ -3485,12 +3465,12 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", + "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", "dev": true, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { "url": "https://opencollective.com/eslint" @@ -3576,35 +3556,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", - "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/espree": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", - "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", - "dev": true, - "dependencies": { - "acorn": "^8.12.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.0.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, "node_modules/eslint/node_modules/find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -3712,17 +3663,17 @@ } }, "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", + "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", "dev": true, "dependencies": { - "acorn": "^8.9.0", + "acorn": "^8.12.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" + "eslint-visitor-keys": "^4.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { "url": "https://opencollective.com/eslint" @@ -4011,9 +3962,9 @@ "dev": true }, "node_modules/foreground-child": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", - "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^4.0.1" @@ -5389,6 +5340,18 @@ "markdown-it": "*" } }, + "node_modules/markdown-it/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/marked": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", @@ -6610,9 +6573,9 @@ } }, "node_modules/peek-readable": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.1.3.tgz", - "integrity": "sha512-kCsc9HwH5RgVA3H3VqkWFyGQwsxUxLdiSX1d5nqAm7hnMFjNFX1VhBLmJoUY0hZNc8gmDNgBkLjfhiWPsziXWA==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.1.4.tgz", + "integrity": "sha512-E7mY2VmKqw9jYuXrSWGHFuPCW2SLQenzXLF3amGaY6lXXg4/b3gj5HVM7h8ZjCO/nZS9ICs0Cz285+32FvNd/A==", "dev": true, "engines": { "node": ">=14.16" @@ -6737,9 +6700,9 @@ } }, "node_modules/postcss": { - "version": "8.4.40", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.40.tgz", - "integrity": "sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==", + "version": "8.4.41", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz", + "integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==", "dev": true, "funding": [ { @@ -6921,9 +6884,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.23.0.tgz", - "integrity": "sha512-ZiBujro2ohr5+Z/hZWHESLz3g08BBdrdLMieYFULJO+tWc437sn8kQsWLJoZErY8alNhxre9K4p3GURAG11n+w==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.24.0.tgz", + "integrity": "sha512-spAaHzc6qre0TlZQQ2aA/nGMe+2Z/wyGk5Z+Ru2VUfdNwT6kWO6TjevOlpebsATEG1EIQ2sOiDszud3lO5mt/Q==", "engines": { "node": ">=16" }, @@ -6966,9 +6929,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.23.0.tgz", - "integrity": "sha512-ZiBujro2ohr5+Z/hZWHESLz3g08BBdrdLMieYFULJO+tWc437sn8kQsWLJoZErY8alNhxre9K4p3GURAG11n+w==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.24.0.tgz", + "integrity": "sha512-spAaHzc6qre0TlZQQ2aA/nGMe+2Z/wyGk5Z+Ru2VUfdNwT6kWO6TjevOlpebsATEG1EIQ2sOiDszud3lO5mt/Q==", "engines": { "node": ">=16" }, diff --git a/packages/project/package.json b/packages/project/package.json index b1a3fdb5e6f..dfb51f28c6f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -159,7 +159,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.8.0", + "eslint": "^9.9.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^48.11.0", From 6ee1d309d304593a57efd48961fa94228b795849 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Aug 2024 08:48:25 +0000 Subject: [PATCH 1152/1272] [ui5-project][INTERNAL] Bump eslint-plugin-jsdoc from 48.11.0 to 50.0.1 (#765) --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0b41ad10a2c..0a7057d14c1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^9.9.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^48.11.0", + "eslint-plugin-jsdoc": "^50.0.1", "esmock": "^2.6.7", "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", @@ -3385,9 +3385,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "48.11.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.11.0.tgz", - "integrity": "sha512-d12JHJDPNo7IFwTOAItCeJY1hcqoIxE0lHA8infQByLilQ9xkqrRa6laWCnsuCrf+8rUnvxXY1XuTbibRBNylA==", + "version": "50.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.0.1.tgz", + "integrity": "sha512-UayhAysIk1Du8InV27WMbV4AMSJSu60+bekmeuGK2OUy4QJSFPr1srYT6AInykGkmMdRuHfDX6Q0tJEr8BtDtg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.46.0", diff --git a/packages/project/package.json b/packages/project/package.json index dfb51f28c6f..9cba4970750 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -162,7 +162,7 @@ "eslint": "^9.9.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^48.11.0", + "eslint-plugin-jsdoc": "^50.0.1", "esmock": "^2.6.7", "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", From 296d5f41fd295f557c3a83cc61e4be258a6024a2 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 18 Aug 2024 02:20:10 +0000 Subject: [PATCH 1153/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 118 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 54 insertions(+), 66 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0a7057d14c1..ba1b4423fe7 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^9.9.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.0.1", + "eslint-plugin-jsdoc": "^50.2.2", "esmock": "^2.6.7", "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", @@ -411,14 +411,14 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.46.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.46.0.tgz", - "integrity": "sha512-C3Axuq1xd/9VqFZpW4YAzOx5O9q/LP46uIQy/iNDpHG3fmPa6TBtvfglMCs3RBiBxAIi0Go97r8+jvTt55XMyQ==", + "version": "0.48.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.48.0.tgz", + "integrity": "sha512-G6QUWIcC+KvSwXNsJyDTHvqUdNoAVJPPgkc3+Uk4WBKqZvoXhlvazOgm9aL0HwihJLQf0l+tOE2UFzXBqCqgDw==", "dev": true, "dependencies": { "comment-parser": "1.4.1", "esquery": "^1.6.0", - "jsdoc-type-pratt-parser": "~4.0.0" + "jsdoc-type-pratt-parser": "~4.1.0" }, "engines": { "node": ">=16" @@ -1446,39 +1446,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.37.tgz", - "integrity": "sha512-ZDDT/KiLKuCRXyzWecNzC5vTcubGz4LECAtfGPENpo0nrmqJHwuWtRLxk/Sb9RAKtR9iFflFycbkjkY+W/PZUQ==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.38.tgz", + "integrity": "sha512-8IQOTCWnLFqfHzOGm9+P8OPSEDukgg3Huc92qSG49if/xI2SAwLHQO2qaPQbjCWPBcQoO1WYfXfTACUrWV3c5A==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/shared": "3.4.37", - "entities": "^5.0.0", + "@vue/shared": "3.4.38", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.37.tgz", - "integrity": "sha512-rIiSmL3YrntvgYV84rekAtU/xfogMUJIclUMeIKEtVBFngOL3IeZHhsH3UaFEgB5iFGpj6IW+8YuM/2Up+vVag==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.38.tgz", + "integrity": "sha512-Osc/c7ABsHXTsETLgykcOwIxFktHfGSUDkb05V61rocEfsFDcjDLH/IHJSNJP+/Sv9KeN2Lx1V6McZzlSb9EhQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.37", - "@vue/shared": "3.4.37" + "@vue/compiler-core": "3.4.38", + "@vue/shared": "3.4.38" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.37.tgz", - "integrity": "sha512-vCfetdas40Wk9aK/WWf8XcVESffsbNkBQwS5t13Y/PcfqKfIwJX2gF+82th6dOpnpbptNMlMjAny80li7TaCIg==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.38.tgz", + "integrity": "sha512-s5QfZ+9PzPh3T5H4hsQDJtI8x7zdJaew/dCGgqZ2630XdzaZ3AD8xGZfBqpT8oaD/p2eedd+pL8tD5vvt5ZYJQ==", "dev": true, "dependencies": { "@babel/parser": "^7.24.7", - "@vue/compiler-core": "3.4.37", - "@vue/compiler-dom": "3.4.37", - "@vue/compiler-ssr": "3.4.37", - "@vue/shared": "3.4.37", + "@vue/compiler-core": "3.4.38", + "@vue/compiler-dom": "3.4.38", + "@vue/compiler-ssr": "3.4.38", + "@vue/shared": "3.4.38", "estree-walker": "^2.0.2", "magic-string": "^0.30.10", "postcss": "^8.4.40", @@ -1486,19 +1486,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.37", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.37.tgz", - "integrity": "sha512-TyAgYBWrHlFrt4qpdACh8e9Ms6C/AZQ6A6xLJaWrCL8GCX5DxMzxyeFAEMfU/VFr4tylHm+a2NpfJpcd7+20XA==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.38.tgz", + "integrity": "sha512-YXznKFQ8dxYpAz9zLuVvfcXhc31FSPFDcqr0kyujbOwNhlmaNvL2QfIy+RZeJgSn5Fk54CWoEUeW+NVBAogGaw==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.37", - "@vue/shared": "3.4.37" + "@vue/compiler-dom": "3.4.38", + "@vue/shared": "3.4.38" } }, "node_modules/@vue/shared": { - "version": "3.4.37", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.37.tgz", - "integrity": "sha512-nIh8P2fc3DflG8+5Uw8PT/1i17ccFn0xxN/5oE9RfV5SVnd7G0XEFRwakrnNFE/jlS95fpGXDVG5zDETS26nmg==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.38.tgz", + "integrity": "sha512-q0xCiLkuWWQLzVrecPb0RMsNWyxICOjPrcrwxTUEHb1fsnvni4dcuyG7RT/Ie7VPTvnjzIaWzRMUBsrqNj/hhw==", "dev": true }, "node_modules/abbrev": { @@ -3153,9 +3153,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.6", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.6.tgz", - "integrity": "sha512-jwXWsM5RPf6j9dPYzaorcBSUg6AiqocPEyMpkchkvntaH9HGfOOMZwxMJjDY/XEs3T5dM7uyH1VhRMkqUU9qVw==", + "version": "1.5.11", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.11.tgz", + "integrity": "sha512-R1CccCDYqndR25CaXFd6hp/u9RaaMcftMkphmvuepXr5b1vfLkRml6aWVeBhXJ7rbevHkKEMJtz8XqPf7ffmew==", "dev": true }, "node_modules/emittery": { @@ -3197,9 +3197,9 @@ } }, "node_modules/entities": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-5.0.0.tgz", - "integrity": "sha512-BeJFvFRJddxobhvEdm5GqHzRV/X+ACeuw0/BuuxsCh1EUZcAIz8+kYmBp/LrQuloy6K1f3a0M7+IhmZ7QnkISA==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, "engines": { "node": ">=0.12" @@ -3385,15 +3385,15 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.0.1.tgz", - "integrity": "sha512-UayhAysIk1Du8InV27WMbV4AMSJSu60+bekmeuGK2OUy4QJSFPr1srYT6AInykGkmMdRuHfDX6Q0tJEr8BtDtg==", + "version": "50.2.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.2.tgz", + "integrity": "sha512-i0ZMWA199DG7sjxlzXn5AeYZxpRfMJjDPUl7lL9eJJX8TPRoIaxJU4ys/joP5faM5AXE1eqW/dslCj3uj4Nqpg==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.46.0", + "@es-joy/jsdoccomment": "~0.48.0", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", - "debug": "^4.3.5", + "debug": "^4.3.6", "escape-string-regexp": "^4.0.0", "espree": "^10.1.0", "esquery": "^1.6.0", @@ -4415,9 +4415,9 @@ ] }, "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "engines": { "node": ">= 4" } @@ -5050,9 +5050,9 @@ } }, "node_modules/jsdoc-type-pratt-parser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", - "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.1.0.tgz", + "integrity": "sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==", "dev": true, "engines": { "node": ">=12.0.0" @@ -5340,18 +5340,6 @@ "markdown-it": "*" } }, - "node_modules/markdown-it/node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true, - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/marked": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", @@ -6884,9 +6872,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.24.0.tgz", - "integrity": "sha512-spAaHzc6qre0TlZQQ2aA/nGMe+2Z/wyGk5Z+Ru2VUfdNwT6kWO6TjevOlpebsATEG1EIQ2sOiDszud3lO5mt/Q==", + "version": "4.25.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.25.0.tgz", + "integrity": "sha512-bRkIGlXsnGBRBQRAY56UXBm//9qH4bmJfFvq83gSz41N282df+fjy8ofcEgc1sM8geNt5cl6mC2g9Fht1cs8Aw==", "engines": { "node": ">=16" }, @@ -6929,9 +6917,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.24.0.tgz", - "integrity": "sha512-spAaHzc6qre0TlZQQ2aA/nGMe+2Z/wyGk5Z+Ru2VUfdNwT6kWO6TjevOlpebsATEG1EIQ2sOiDszud3lO5mt/Q==", + "version": "4.25.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.25.0.tgz", + "integrity": "sha512-bRkIGlXsnGBRBQRAY56UXBm//9qH4bmJfFvq83gSz41N282df+fjy8ofcEgc1sM8geNt5cl6mC2g9Fht1cs8Aw==", "engines": { "node": ">=16" }, diff --git a/packages/project/package.json b/packages/project/package.json index 9cba4970750..8cc122920cd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -162,7 +162,7 @@ "eslint": "^9.9.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.0.1", + "eslint-plugin-jsdoc": "^50.2.2", "esmock": "^2.6.7", "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", From f5161c75aac8ebf81eb2c1c5f9d6712785be5e60 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 25 Aug 2024 02:20:09 +0000 Subject: [PATCH 1154/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 108 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 55 insertions(+), 55 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ba1b4423fe7..ec1c9c50687 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,7 +40,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.9.0", + "eslint": "^9.9.1", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.2.2", @@ -96,9 +96,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.2.tgz", - "integrity": "sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.4.tgz", + "integrity": "sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -144,12 +144,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.0.tgz", - "integrity": "sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==", + "version": "7.25.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.5.tgz", + "integrity": "sha512-abd43wyLfbWoxC6ahM8xTkqLpGB2iWBVyuKC9/srhFunCd1SDNrV1s72bBpK4hLj8KLzHBBcOblvLQZBNw9r3w==", "dev": true, "dependencies": { - "@babel/types": "^7.25.0", + "@babel/types": "^7.25.4", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -341,12 +341,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.25.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.3.tgz", - "integrity": "sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.4.tgz", + "integrity": "sha512-nq+eWrOgdtu3jG5Os4TQP3x3cLA8hR8TvJNjD8vnPa20WGycimcparWnLK4jJhElTK6SDyuJo1weMKO/5LpmLA==", "dev": true, "dependencies": { - "@babel/types": "^7.25.2" + "@babel/types": "^7.25.4" }, "bin": { "parser": "bin/babel-parser.js" @@ -370,16 +370,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.25.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.3.tgz", - "integrity": "sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.4.tgz", + "integrity": "sha512-VJ4XsrD+nOvlXyLzmLzUs/0qjFS4sK30te5yEFlvbbUNEgKaVb2BHZUpAL+ttLPQAHNrsI3zZisbfha5Cvr8vg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.25.0", - "@babel/parser": "^7.25.3", + "@babel/generator": "^7.25.4", + "@babel/parser": "^7.25.4", "@babel/template": "^7.25.0", - "@babel/types": "^7.25.2", + "@babel/types": "^7.25.4", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -397,9 +397,9 @@ } }, "node_modules/@babel/types": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz", - "integrity": "sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.4.tgz", + "integrity": "sha512-zQ1ijeeCXVEh+aNL0RlmkPkG8HUiDcU2pzQQFjtbntgAczRASFzj4H+6+bV+dy1ntKR14I/DypeuRG1uma98iQ==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.24.8", @@ -461,9 +461,9 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.17.1.tgz", - "integrity": "sha512-BlYOpej8AQ8Ev9xVqroV7a02JK3SkBAaN9GfMMH9W6Ch8FlQlkjGw4Ir7+FgYwfirivAf4t+GtzuAxqfukmISA==", + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.18.0.tgz", + "integrity": "sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==", "dev": true, "dependencies": { "@eslint/object-schema": "^2.1.4", @@ -554,9 +554,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.9.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.9.0.tgz", - "integrity": "sha512-hhetes6ZHP3BlXLxmd8K2SNgkhNSi+UcecbnwWKwpP7kyi/uC75DJ1lOOBO3xrC4jyojtGE3YxKZPHfk4yrgug==", + "version": "9.9.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.9.1.tgz", + "integrity": "sha512-xIDQRsfg5hNBqHz04H1R3scSVwmI+KUbqjsQKHKQ1DAUSaUjYPReZZmS/5PNiKu1fUvzDd6H7DEDKACSEhu+TQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1229,12 +1229,12 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "11.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", - "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", + "version": "11.3.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.3.1.tgz", + "integrity": "sha512-EVJO7nW5M/F5Tur0Rf2z/QoMo+1Ia963RiMtapiQrEWvY0iBUvADo8Beegwjpnle5BHkyHuoxSTW3jF43H1XRA==", "dev": true, "dependencies": { - "@sinonjs/commons": "^3.0.0" + "@sinonjs/commons": "^3.0.1" } }, "node_modules/@sinonjs/samsam": { @@ -1258,9 +1258,9 @@ } }, "node_modules/@sinonjs/text-encoding": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", - "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.3.tgz", + "integrity": "sha512-DE427ROAphMQzU4ENbliGYrBSYPXF+TtLg9S8vzeA+OF4ZKzoDdzfL8sxuMUGS/lgRhM6j1URSk9ghf7Xo1tyA==", "dev": true }, "node_modules/@tokenizer/token": { @@ -3153,9 +3153,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.11", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.11.tgz", - "integrity": "sha512-R1CccCDYqndR25CaXFd6hp/u9RaaMcftMkphmvuepXr5b1vfLkRml6aWVeBhXJ7rbevHkKEMJtz8XqPf7ffmew==", + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz", + "integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==", "dev": true }, "node_modules/emittery": { @@ -3263,16 +3263,16 @@ } }, "node_modules/eslint": { - "version": "9.9.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.9.0.tgz", - "integrity": "sha512-JfiKJrbx0506OEerjK2Y1QlldtBxkAlLxT5OEcRF8uaQ86noDe2k31Vw9rnSWv+MXZHj7OOUV/dA0AhdLFcyvA==", + "version": "9.9.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.9.1.tgz", + "integrity": "sha512-dHvhrbfr4xFQ9/dq+jcVneZMyRYLjggWjk6RVsIiHsP8Rz6yZ8LvZ//iU4TrZF+SXWG+JkNF2OyiZRvzgRDqMg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.11.0", - "@eslint/config-array": "^0.17.1", + "@eslint/config-array": "^0.18.0", "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.9.0", + "@eslint/js": "9.9.1", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.3.0", "@nodelib/fs.walk": "^1.2.8", @@ -4575,9 +4575,9 @@ } }, "node_modules/is-core-module": { - "version": "2.15.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.0.tgz", - "integrity": "sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "dependencies": { "hasown": "^2.0.2" }, @@ -5427,9 +5427,9 @@ "dev": true }, "node_modules/micromatch": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", - "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dependencies": { "braces": "^3.0.3", "picomatch": "^2.3.1" @@ -7610,9 +7610,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.18", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", - "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==" + "version": "3.0.20", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz", + "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==" }, "node_modules/sprintf-js": { "version": "1.1.3", @@ -8249,9 +8249,9 @@ "dev": true }, "node_modules/tslib": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", - "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", "dev": true }, "node_modules/tuf-js": { diff --git a/packages/project/package.json b/packages/project/package.json index 8cc122920cd..c9fa7b0b008 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -159,7 +159,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.9.0", + "eslint": "^9.9.1", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.2.2", From 0976d394677d9c9f6a3fe9da7a8ce5a02052d1ef Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Tue, 27 Aug 2024 08:35:56 +0000 Subject: [PATCH 1155/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 4.0.0 to 4.0.1 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v4.0.1/CHANGELOG.md --- packages/project/package-lock.json | 24 ++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ec1c9c50687..ecd3982870e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.3.4", - "@ui5/fs": "^4.0.0", + "@ui5/fs": "^4.0.1", "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", @@ -1329,16 +1329,16 @@ "dev": true }, "node_modules/@ui5/fs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-4.0.0.tgz", - "integrity": "sha512-MKOcRpQ5v6L0Gz5rjJpXuHrrHuEgjM05akFRRakRUrFb4q/GfSci/aa7ivXSlLll9EkxHV5q3oH5WykXGYeigQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-4.0.1.tgz", + "integrity": "sha512-vVphxHk0yywJ0eseBNQ2rd1JdUZSUUZ0CAjZ3ghttqD8hx8elJjc7UllpOduysDcdaH3+Km2oLw9yumz14+lgg==", "dependencies": { - "@ui5/logger": "^4.0.0", + "@ui5/logger": "^4.0.1", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", "globby": "^14.0.2", "graceful-fs": "^4.2.11", - "micromatch": "^4.0.7", + "micromatch": "^4.0.8", "minimatch": "^10.0.1", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" @@ -2071,9 +2071,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001651", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz", - "integrity": "sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==", + "version": "1.0.30001653", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001653.tgz", + "integrity": "sha512-XGWQVB8wFQ2+9NZwZ10GxTYC5hk0Fa+q8cSkr0tgvMhYhMHP/QC+WTgrePMDBWiWc/pV+1ik82Al20XOK25Gcw==", "dev": true, "funding": [ { @@ -2404,9 +2404,9 @@ } }, "node_modules/cli-truncate/node_modules/emoji-regex": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", - "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz", + "integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==", "dev": true }, "node_modules/cli-truncate/node_modules/string-width": { diff --git a/packages/project/package.json b/packages/project/package.json index c9fa7b0b008..9d16b020f02 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,7 +121,7 @@ }, "dependencies": { "@npmcli/config": "^8.3.4", - "@ui5/fs": "^4.0.0", + "@ui5/fs": "^4.0.1", "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", From 118b165d5b330bd344cf32ad226e86bdd354621e Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Tue, 27 Aug 2024 10:31:03 +0000 Subject: [PATCH 1156/1272] [ui5-project]Release 4.0.3 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 1102d9e907c..1ad72c7b767 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.2...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.3...HEAD). + + +## [v4.0.3] - 2024-08-27 ## [v4.0.2] - 2024-08-01 @@ -556,6 +559,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v4.0.3]: https://github.com/SAP/ui5-project/compare/v4.0.2...v4.0.3 [v4.0.2]: https://github.com/SAP/ui5-project/compare/v4.0.1...v4.0.2 [v4.0.1]: https://github.com/SAP/ui5-project/compare/v4.0.0...v4.0.1 [v4.0.0]: https://github.com/SAP/ui5-project/compare/v3.9.0...v4.0.0 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ecd3982870e..471e1412d87 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "4.0.2", + "version": "4.0.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "4.0.2", + "version": "4.0.3", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^8.3.4", diff --git a/packages/project/package.json b/packages/project/package.json index 9d16b020f02..3f71f2fc4d0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "4.0.2", + "version": "4.0.3", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From 1e5b53545e45dd490f74747dc0368db6eb4d3f86 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 1 Sep 2024 02:20:15 +0000 Subject: [PATCH 1157/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 78 +++++++++++++++--------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 471e1412d87..6db35ff7927 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -144,12 +144,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.25.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.5.tgz", - "integrity": "sha512-abd43wyLfbWoxC6ahM8xTkqLpGB2iWBVyuKC9/srhFunCd1SDNrV1s72bBpK4hLj8KLzHBBcOblvLQZBNw9r3w==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", + "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", "dev": true, "dependencies": { - "@babel/types": "^7.25.4", + "@babel/types": "^7.25.6", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -263,13 +263,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.0.tgz", - "integrity": "sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.6.tgz", + "integrity": "sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==", "dev": true, "dependencies": { "@babel/template": "^7.25.0", - "@babel/types": "^7.25.0" + "@babel/types": "^7.25.6" }, "engines": { "node": ">=6.9.0" @@ -341,12 +341,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.25.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.4.tgz", - "integrity": "sha512-nq+eWrOgdtu3jG5Os4TQP3x3cLA8hR8TvJNjD8vnPa20WGycimcparWnLK4jJhElTK6SDyuJo1weMKO/5LpmLA==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", + "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", "dev": true, "dependencies": { - "@babel/types": "^7.25.4" + "@babel/types": "^7.25.6" }, "bin": { "parser": "bin/babel-parser.js" @@ -370,16 +370,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.25.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.4.tgz", - "integrity": "sha512-VJ4XsrD+nOvlXyLzmLzUs/0qjFS4sK30te5yEFlvbbUNEgKaVb2BHZUpAL+ttLPQAHNrsI3zZisbfha5Cvr8vg==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz", + "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.25.4", - "@babel/parser": "^7.25.4", + "@babel/generator": "^7.25.6", + "@babel/parser": "^7.25.6", "@babel/template": "^7.25.0", - "@babel/types": "^7.25.4", + "@babel/types": "^7.25.6", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -397,9 +397,9 @@ } }, "node_modules/@babel/types": { - "version": "7.25.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.4.tgz", - "integrity": "sha512-zQ1ijeeCXVEh+aNL0RlmkPkG8HUiDcU2pzQQFjtbntgAczRASFzj4H+6+bV+dy1ntKR14I/DypeuRG1uma98iQ==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", + "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.24.8", @@ -2071,9 +2071,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001653", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001653.tgz", - "integrity": "sha512-XGWQVB8wFQ2+9NZwZ10GxTYC5hk0Fa+q8cSkr0tgvMhYhMHP/QC+WTgrePMDBWiWc/pV+1ik82Al20XOK25Gcw==", + "version": "1.0.30001655", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz", + "integrity": "sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==", "dev": true, "funding": [ { @@ -3243,9 +3243,9 @@ "dev": true }, "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, "engines": { "node": ">=6" @@ -5784,9 +5784,9 @@ } }, "node_modules/node-gyp-build": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.1.tgz", - "integrity": "sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==", + "version": "4.8.2", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.2.tgz", + "integrity": "sha512-IRUxE4BVsHWXkV/SFOut4qTlagw2aM8T5/vnTsmrHJvVoKueJHRc/JaFND7QDDc61kLYUJ6qlZM3sqTSyx2dTw==", "dev": true, "bin": { "node-gyp-build": "bin.js", @@ -6688,9 +6688,9 @@ } }, "node_modules/postcss": { - "version": "8.4.41", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz", - "integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==", + "version": "8.4.42", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.42.tgz", + "integrity": "sha512-hywKUQB9Ra4dR1mGhldy5Aj1X3MWDSIA1cEi+Uy0CjheLvP6Ual5RlwMCh8i/X121yEDLDIKBsrCQ8ba3FDMfQ==", "dev": true, "funding": [ { @@ -6872,9 +6872,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.25.0.tgz", - "integrity": "sha512-bRkIGlXsnGBRBQRAY56UXBm//9qH4bmJfFvq83gSz41N282df+fjy8ofcEgc1sM8geNt5cl6mC2g9Fht1cs8Aw==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.0.tgz", + "integrity": "sha512-OduNjVJsFbifKb57UqZ2EMP1i4u64Xwow3NYXUtBbD4vIwJdQd4+xl8YDou1dlm4DVrtwT/7Ky8z8WyCULVfxw==", "engines": { "node": ">=16" }, @@ -6917,9 +6917,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.25.0.tgz", - "integrity": "sha512-bRkIGlXsnGBRBQRAY56UXBm//9qH4bmJfFvq83gSz41N282df+fjy8ofcEgc1sM8geNt5cl6mC2g9Fht1cs8Aw==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.0.tgz", + "integrity": "sha512-OduNjVJsFbifKb57UqZ2EMP1i4u64Xwow3NYXUtBbD4vIwJdQd4+xl8YDou1dlm4DVrtwT/7Ky8z8WyCULVfxw==", "engines": { "node": ">=16" }, From a9c7cadf69a4c5b999be493d010722359ed0cbb1 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 8 Sep 2024 02:20:09 +0000 Subject: [PATCH 1158/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 138 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 73 insertions(+), 67 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6db35ff7927..d41fd2c01db 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,7 +40,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.9.1", + "eslint": "^9.10.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.2.2", @@ -554,9 +554,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.9.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.9.1.tgz", - "integrity": "sha512-xIDQRsfg5hNBqHz04H1R3scSVwmI+KUbqjsQKHKQ1DAUSaUjYPReZZmS/5PNiKu1fUvzDd6H7DEDKACSEhu+TQ==", + "version": "9.10.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.10.0.tgz", + "integrity": "sha512-fuXtbiP5GWIn8Fz+LWoOMVf/Jxm+aajZYkhi6CuEm4SxymFM+eUWzbO9qXT+L0iCkL5+KGYMCSGxo686H19S1g==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -571,6 +571,18 @@ "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, + "node_modules/@eslint/plugin-kit": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.1.0.tgz", + "integrity": "sha512-autAXT203ixhqei9xt+qkYOvY8l6LAFIdT2UXc/RPNeUVfqRF1BV94GTJyVPFKT8nFM6MyVJhjLj9E8JWvf5zQ==", + "dev": true, + "dependencies": { + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -1446,59 +1458,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.38", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.38.tgz", - "integrity": "sha512-8IQOTCWnLFqfHzOGm9+P8OPSEDukgg3Huc92qSG49if/xI2SAwLHQO2qaPQbjCWPBcQoO1WYfXfTACUrWV3c5A==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.3.tgz", + "integrity": "sha512-adAfy9boPkP233NTyvLbGEqVuIfK/R0ZsBsIOW4BZNfb4BRpRW41Do1u+ozJpsb+mdoy80O20IzAsHaihRb5qA==", "dev": true, "dependencies": { - "@babel/parser": "^7.24.7", - "@vue/shared": "3.4.38", + "@babel/parser": "^7.25.3", + "@vue/shared": "3.5.3", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.38", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.38.tgz", - "integrity": "sha512-Osc/c7ABsHXTsETLgykcOwIxFktHfGSUDkb05V61rocEfsFDcjDLH/IHJSNJP+/Sv9KeN2Lx1V6McZzlSb9EhQ==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.3.tgz", + "integrity": "sha512-wnzFArg9zpvk/811CDOZOadJRugf1Bgl/TQ3RfV4nKfSPok4hi0w10ziYUQR6LnnBAUlEXYLUfZ71Oj9ds/+QA==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.4.38", - "@vue/shared": "3.4.38" + "@vue/compiler-core": "3.5.3", + "@vue/shared": "3.5.3" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.38", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.38.tgz", - "integrity": "sha512-s5QfZ+9PzPh3T5H4hsQDJtI8x7zdJaew/dCGgqZ2630XdzaZ3AD8xGZfBqpT8oaD/p2eedd+pL8tD5vvt5ZYJQ==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.3.tgz", + "integrity": "sha512-P3uATLny2tfyvMB04OQFe7Sczteno7SLFxwrOA/dw01pBWQHB5HL15a8PosoNX2aG/EAMGqnXTu+1LnmzFhpTQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.24.7", - "@vue/compiler-core": "3.4.38", - "@vue/compiler-dom": "3.4.38", - "@vue/compiler-ssr": "3.4.38", - "@vue/shared": "3.4.38", + "@babel/parser": "^7.25.3", + "@vue/compiler-core": "3.5.3", + "@vue/compiler-dom": "3.5.3", + "@vue/compiler-ssr": "3.5.3", + "@vue/shared": "3.5.3", "estree-walker": "^2.0.2", - "magic-string": "^0.30.10", - "postcss": "^8.4.40", + "magic-string": "^0.30.11", + "postcss": "^8.4.44", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.38", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.38.tgz", - "integrity": "sha512-YXznKFQ8dxYpAz9zLuVvfcXhc31FSPFDcqr0kyujbOwNhlmaNvL2QfIy+RZeJgSn5Fk54CWoEUeW+NVBAogGaw==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.3.tgz", + "integrity": "sha512-F/5f+r2WzL/2YAPl7UlKcJWHrvoZN8XwEBLnT7S4BXwncH25iDOabhO2M2DWioyTguJAGavDOawejkFXj8EM1w==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.4.38", - "@vue/shared": "3.4.38" + "@vue/compiler-dom": "3.5.3", + "@vue/shared": "3.5.3" } }, "node_modules/@vue/shared": { - "version": "3.4.38", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.38.tgz", - "integrity": "sha512-q0xCiLkuWWQLzVrecPb0RMsNWyxICOjPrcrwxTUEHb1fsnvni4dcuyG7RT/Ie7VPTvnjzIaWzRMUBsrqNj/hhw==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.3.tgz", + "integrity": "sha512-Jp2v8nylKBT+PlOUjun2Wp/f++TfJVFjshLzNtJDdmFJabJa7noGMncqXRM1vXGX+Yo2V7WykQFNxusSim8SCA==", "dev": true }, "node_modules/abbrev": { @@ -2071,9 +2083,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001655", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz", - "integrity": "sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==", + "version": "1.0.30001658", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001658.tgz", + "integrity": "sha512-N2YVqWbJELVdrnsW5p+apoQyYt51aBMSsBZki1XZEfeBCexcM/sf4xiAHcXQBkuOwJBXtWF7aW1sYX6tKebPHw==", "dev": true, "funding": [ { @@ -2769,11 +2781,11 @@ } }, "node_modules/debug": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", - "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -2784,11 +2796,6 @@ } } }, - "node_modules/debug/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, "node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", @@ -3153,9 +3160,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz", - "integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==", + "version": "1.5.18", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.18.tgz", + "integrity": "sha512-1OfuVACu+zKlmjsNdcJuVQuVE61sZOLbNM4JAQ1Rvh6EOj0/EUKhMJjRH73InPlXSh8HIJk1cVZ8pyOV/FMdUQ==", "dev": true }, "node_modules/emittery": { @@ -3263,16 +3270,17 @@ } }, "node_modules/eslint": { - "version": "9.9.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.9.1.tgz", - "integrity": "sha512-dHvhrbfr4xFQ9/dq+jcVneZMyRYLjggWjk6RVsIiHsP8Rz6yZ8LvZ//iU4TrZF+SXWG+JkNF2OyiZRvzgRDqMg==", + "version": "9.10.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.10.0.tgz", + "integrity": "sha512-Y4D0IgtBZfOcOUAIQTSXBKoNGfY0REGqHJG6+Q81vNippW5YlKjHFj4soMxamKK1NXHUWuBZTLdU3Km+L/pcHw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.11.0", "@eslint/config-array": "^0.18.0", "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.9.1", + "@eslint/js": "9.10.0", + "@eslint/plugin-kit": "^0.1.0", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.3.0", "@nodelib/fs.walk": "^1.2.8", @@ -3295,7 +3303,6 @@ "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", @@ -5642,8 +5649,7 @@ "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/multimatch": { "version": "5.0.0", @@ -6561,9 +6567,9 @@ } }, "node_modules/peek-readable": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.1.4.tgz", - "integrity": "sha512-E7mY2VmKqw9jYuXrSWGHFuPCW2SLQenzXLF3amGaY6lXXg4/b3gj5HVM7h8ZjCO/nZS9ICs0Cz285+32FvNd/A==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.2.0.tgz", + "integrity": "sha512-U94a+eXHzct7vAd19GH3UQ2dH4Satbng0MyYTMaQatL0pvYYL5CTPR25HBhKtecl+4bfu1/i3vC6k0hydO5Vcw==", "dev": true, "engines": { "node": ">=14.16" @@ -6574,9 +6580,9 @@ } }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==" }, "node_modules/picomatch": { "version": "3.0.1", @@ -6688,9 +6694,9 @@ } }, "node_modules/postcss": { - "version": "8.4.42", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.42.tgz", - "integrity": "sha512-hywKUQB9Ra4dR1mGhldy5Aj1X3MWDSIA1cEi+Uy0CjheLvP6Ual5RlwMCh8i/X121yEDLDIKBsrCQ8ba3FDMfQ==", + "version": "8.4.45", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.45.tgz", + "integrity": "sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==", "dev": true, "funding": [ { @@ -7148,9 +7154,9 @@ } }, "node_modules/rimraf/node_modules/lru-cache": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.0.tgz", - "integrity": "sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.1.tgz", + "integrity": "sha512-CgeuL5uom6j/ZVrg7G/+1IXqRY8JXX4Hghfy5YE0EhoYQWvndP1kufu58cmZLNIDKnRhZrXfdS9urVWx98AipQ==", "engines": { "node": "20 || >=22" } diff --git a/packages/project/package.json b/packages/project/package.json index 3f71f2fc4d0..eb44b3428ca 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -159,7 +159,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.9.1", + "eslint": "^9.10.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.2.2", From 7efa72a5ec7f79ee61b5dfa41af88dc5a8be452a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Wed, 11 Sep 2024 11:57:20 +0000 Subject: [PATCH 1159/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 133 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 69 insertions(+), 66 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d41fd2c01db..479d0c32156 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -54,7 +54,7 @@ "jsdoc": "^4.0.3", "nyc": "^17.0.0", "open-cli": "^8.0.0", - "sinon": "^18.0.0", + "sinon": "^18.0.1", "tap-xunit": "^2.4.1" }, "engines": { @@ -1241,12 +1241,12 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "11.3.1", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.3.1.tgz", - "integrity": "sha512-EVJO7nW5M/F5Tur0Rf2z/QoMo+1Ia963RiMtapiQrEWvY0iBUvADo8Beegwjpnle5BHkyHuoxSTW3jF43H1XRA==", + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", + "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", "dev": true, "dependencies": { - "@sinonjs/commons": "^3.0.1" + "@sinonjs/commons": "^3.0.0" } }, "node_modules/@sinonjs/samsam": { @@ -1458,39 +1458,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.3.tgz", - "integrity": "sha512-adAfy9boPkP233NTyvLbGEqVuIfK/R0ZsBsIOW4BZNfb4BRpRW41Do1u+ozJpsb+mdoy80O20IzAsHaihRb5qA==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.4.tgz", + "integrity": "sha512-oNwn+BAt3n9dK9uAYvI+XGlutwuTq/wfj4xCBaZCqwwVIGtD7D6ViihEbyYZrDHIHTDE3Q6oL3/hqmAyFEy9DQ==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.3", + "@vue/shared": "3.5.4", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.3.tgz", - "integrity": "sha512-wnzFArg9zpvk/811CDOZOadJRugf1Bgl/TQ3RfV4nKfSPok4hi0w10ziYUQR6LnnBAUlEXYLUfZ71Oj9ds/+QA==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.4.tgz", + "integrity": "sha512-yP9RRs4BDLOLfldn6ah+AGCNovGjMbL9uHvhDHf5wan4dAHLnFGOkqtfE7PPe4HTXIqE7l/NILdYw53bo1C8jw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.3", - "@vue/shared": "3.5.3" + "@vue/compiler-core": "3.5.4", + "@vue/shared": "3.5.4" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.3.tgz", - "integrity": "sha512-P3uATLny2tfyvMB04OQFe7Sczteno7SLFxwrOA/dw01pBWQHB5HL15a8PosoNX2aG/EAMGqnXTu+1LnmzFhpTQ==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.4.tgz", + "integrity": "sha512-P+yiPhL+NYH7m0ZgCq7AQR2q7OIE+mpAEgtkqEeH9oHSdIRvUO+4X6MPvblJIWcoe4YC5a2Gdf/RsoyP8FFiPQ==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.3", - "@vue/compiler-dom": "3.5.3", - "@vue/compiler-ssr": "3.5.3", - "@vue/shared": "3.5.3", + "@vue/compiler-core": "3.5.4", + "@vue/compiler-dom": "3.5.4", + "@vue/compiler-ssr": "3.5.4", + "@vue/shared": "3.5.4", "estree-walker": "^2.0.2", "magic-string": "^0.30.11", "postcss": "^8.4.44", @@ -1498,19 +1498,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.3.tgz", - "integrity": "sha512-F/5f+r2WzL/2YAPl7UlKcJWHrvoZN8XwEBLnT7S4BXwncH25iDOabhO2M2DWioyTguJAGavDOawejkFXj8EM1w==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.4.tgz", + "integrity": "sha512-acESdTXsxPnYr2C4Blv0ggx5zIFMgOzZmYU2UgvIff9POdRGbRNBHRyzHAnizcItvpgerSKQbllUc9USp3V7eg==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.3", - "@vue/shared": "3.5.3" + "@vue/compiler-dom": "3.5.4", + "@vue/shared": "3.5.4" } }, "node_modules/@vue/shared": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.3.tgz", - "integrity": "sha512-Jp2v8nylKBT+PlOUjun2Wp/f++TfJVFjshLzNtJDdmFJabJa7noGMncqXRM1vXGX+Yo2V7WykQFNxusSim8SCA==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.4.tgz", + "integrity": "sha512-L2MCDD8l7yC62Te5UUyPVpmexhL9ipVnYRw9CsWfm/BGRL5FwDX4a25bcJ/OJSD3+Hx+k/a8LDKcG2AFdJV3BA==", "dev": true }, "node_modules/abbrev": { @@ -1552,9 +1552,9 @@ } }, "node_modules/acorn-walk": { - "version": "8.3.3", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", - "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", + "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", "dev": true, "dependencies": { "acorn": "^8.11.0" @@ -1619,9 +1619,9 @@ } }, "node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "engines": { "node": ">=12" }, @@ -2083,9 +2083,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001658", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001658.tgz", - "integrity": "sha512-N2YVqWbJELVdrnsW5p+apoQyYt51aBMSsBZki1XZEfeBCexcM/sf4xiAHcXQBkuOwJBXtWF7aW1sYX6tKebPHw==", + "version": "1.0.30001660", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001660.tgz", + "integrity": "sha512-GacvNTTuATm26qC74pt+ad1fW15mlQ/zuTzzY1ZoIzECTP8HURDfF43kNxPgf7H1jmelCBQTTbBNxdSXOA7Bqg==", "dev": true, "funding": [ { @@ -3160,9 +3160,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.18", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.18.tgz", - "integrity": "sha512-1OfuVACu+zKlmjsNdcJuVQuVE61sZOLbNM4JAQ1Rvh6EOj0/EUKhMJjRH73InPlXSh8HIJk1cVZ8pyOV/FMdUQ==", + "version": "1.5.19", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.19.tgz", + "integrity": "sha512-kpLJJi3zxTR1U828P+LIUDZ5ohixyo68/IcYOHLqnbTPr/wdgn4i1ECvmALN9E16JPA6cvCG5UG79gVwVdEK5w==", "dev": true }, "node_modules/emittery": { @@ -4715,9 +4715,9 @@ "dev": true }, "node_modules/is-unicode-supported": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.0.0.tgz", - "integrity": "sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz", + "integrity": "sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==", "engines": { "node": ">=18" }, @@ -5734,16 +5734,16 @@ } }, "node_modules/nise": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/nise/-/nise-6.0.0.tgz", - "integrity": "sha512-K8ePqo9BFvN31HXwEtTNGzgrPpmvgciDsFz8aztFjt4LqKO/JeFD8tBOeuDiCMXrIl/m1YvfH8auSpxfaD09wg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/nise/-/nise-6.0.1.tgz", + "integrity": "sha512-DAyWGPQEuJVlL2eqKw6gdZKT+E/jo/ZrjEUDAslJLluCz81nWy+KSYybNp3KFm887Yvp7hv12jSM82ld8BmLxg==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", "@sinonjs/fake-timers": "^11.2.2", "@sinonjs/text-encoding": "^0.7.2", "just-extend": "^6.2.0", - "path-to-regexp": "^6.2.1" + "path-to-regexp": "^8.1.0" } }, "node_modules/node-fetch": { @@ -6552,10 +6552,13 @@ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/path-to-regexp": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.2.tgz", - "integrity": "sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==", - "dev": true + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.1.0.tgz", + "integrity": "sha512-Bqn3vc8CMHty6zuD+tG23s6v2kwxslHEhTj4eYaVKGIEB+YX/2wd0/rgXLFD9G9id9KCtbVy/3ZgmvZjpa0UdQ==", + "dev": true, + "engines": { + "node": ">=16" + } }, "node_modules/path-type": { "version": "4.0.0", @@ -6878,9 +6881,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.26.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.0.tgz", - "integrity": "sha512-OduNjVJsFbifKb57UqZ2EMP1i4u64Xwow3NYXUtBbD4vIwJdQd4+xl8YDou1dlm4DVrtwT/7Ky8z8WyCULVfxw==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.1.tgz", + "integrity": "sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==", "engines": { "node": ">=16" }, @@ -6923,9 +6926,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.26.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.0.tgz", - "integrity": "sha512-OduNjVJsFbifKb57UqZ2EMP1i4u64Xwow3NYXUtBbD4vIwJdQd4+xl8YDou1dlm4DVrtwT/7Ky8z8WyCULVfxw==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.1.tgz", + "integrity": "sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==", "engines": { "node": ">=16" }, @@ -7352,13 +7355,13 @@ } }, "node_modules/sinon": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-18.0.0.tgz", - "integrity": "sha512-+dXDXzD1sBO6HlmZDd7mXZCR/y5ECiEiGCBSGuFD/kZ0bDTofPYc6JaeGmPSF+1j1MejGUWkORbYOLDyvqCWpA==", + "version": "18.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-18.0.1.tgz", + "integrity": "sha512-a2N2TDY1uGviajJ6r4D1CyRAkzE9NNVlYOV1wX5xQDuAk0ONgzgRl0EjCQuRCPxOwp13ghsMwt9Gdldujs39qw==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1", - "@sinonjs/fake-timers": "^11.2.2", + "@sinonjs/fake-timers": "11.2.2", "@sinonjs/samsam": "^8.0.0", "diff": "^5.2.0", "nise": "^6.0.0", @@ -7458,9 +7461,9 @@ } }, "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "dev": true, "engines": { "node": ">=0.10.0" diff --git a/packages/project/package.json b/packages/project/package.json index eb44b3428ca..669879cffae 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -173,7 +173,7 @@ "jsdoc": "^4.0.3", "nyc": "^17.0.0", "open-cli": "^8.0.0", - "sinon": "^18.0.0", + "sinon": "^18.0.1", "tap-xunit": "^2.4.1" } } From 70965497411a93acc1753d0132205270e8024ad7 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 12 Sep 2024 08:25:44 +0000 Subject: [PATCH 1160/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 479d0c32156..6eba205fdc8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -3160,9 +3160,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.19", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.19.tgz", - "integrity": "sha512-kpLJJi3zxTR1U828P+LIUDZ5ohixyo68/IcYOHLqnbTPr/wdgn4i1ECvmALN9E16JPA6cvCG5UG79gVwVdEK5w==", + "version": "1.5.20", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.20.tgz", + "integrity": "sha512-74mdl6Fs1HHzK9SUX4CKFxAtAe3nUns48y79TskHNAG6fGOlLfyKA4j855x+0b5u8rWJIrlaG9tcTPstMlwjIw==", "dev": true }, "node_modules/emittery": { From 82eb625ef0af67192b9ee740b2fbcfcc34af917e Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 15 Sep 2024 02:20:17 +0000 Subject: [PATCH 1161/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 121 ++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 66 insertions(+), 57 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6eba205fdc8..ec629bfa7c2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint": "^9.10.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.2.2", + "eslint-plugin-jsdoc": "^50.2.3", "esmock": "^2.6.7", "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", @@ -452,9 +452,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", - "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.1.tgz", + "integrity": "sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -1250,23 +1250,23 @@ } }, "node_modules/@sinonjs/samsam": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.0.tgz", - "integrity": "sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.2.tgz", + "integrity": "sha512-v46t/fwnhejRSFTGqbpn9u+LQ9xJDse10gNnPgAcxgdoCDMXj/G2asWAC/8Qs+BAZDicX+MNZouXT1A7c83kVw==", "dev": true, "dependencies": { - "@sinonjs/commons": "^2.0.0", + "@sinonjs/commons": "^3.0.1", "lodash.get": "^4.4.2", - "type-detect": "^4.0.8" + "type-detect": "^4.1.0" } }, - "node_modules/@sinonjs/samsam/node_modules/@sinonjs/commons": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", - "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "node_modules/@sinonjs/samsam/node_modules/type-detect": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", + "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", "dev": true, - "dependencies": { - "type-detect": "4.0.8" + "engines": { + "node": ">=4" } }, "node_modules/@sinonjs/text-encoding": { @@ -1458,39 +1458,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.4.tgz", - "integrity": "sha512-oNwn+BAt3n9dK9uAYvI+XGlutwuTq/wfj4xCBaZCqwwVIGtD7D6ViihEbyYZrDHIHTDE3Q6oL3/hqmAyFEy9DQ==", + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.5.tgz", + "integrity": "sha512-ZrxcY8JMoV+kgDrmRwlDufz0SjDZ7jfoNZiIBluAACMBmgr55o/jTbxnyrccH6VSJXnFaDI4Ik1UFCiq9r8i7w==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.4", + "@vue/shared": "3.5.5", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.4.tgz", - "integrity": "sha512-yP9RRs4BDLOLfldn6ah+AGCNovGjMbL9uHvhDHf5wan4dAHLnFGOkqtfE7PPe4HTXIqE7l/NILdYw53bo1C8jw==", + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.5.tgz", + "integrity": "sha512-HSvK5q1gmBbxRse3S0Wt34RcKuOyjDJKDDMuF3i7NC+QkDFrbAqw8NnrEm/z7zFDxWZa4/5eUwsBOMQzm1RHBA==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.4", - "@vue/shared": "3.5.4" + "@vue/compiler-core": "3.5.5", + "@vue/shared": "3.5.5" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.4.tgz", - "integrity": "sha512-P+yiPhL+NYH7m0ZgCq7AQR2q7OIE+mpAEgtkqEeH9oHSdIRvUO+4X6MPvblJIWcoe4YC5a2Gdf/RsoyP8FFiPQ==", + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.5.tgz", + "integrity": "sha512-MzBHDxwZhgQPHrwJ5tj92gdTYRCuPDSZr8PY3+JFv8cv2UD5/WayH5yo0kKCkKfrtJhc39jNSMityHrkMSbfnA==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.4", - "@vue/compiler-dom": "3.5.4", - "@vue/compiler-ssr": "3.5.4", - "@vue/shared": "3.5.4", + "@vue/compiler-core": "3.5.5", + "@vue/compiler-dom": "3.5.5", + "@vue/compiler-ssr": "3.5.5", + "@vue/shared": "3.5.5", "estree-walker": "^2.0.2", "magic-string": "^0.30.11", "postcss": "^8.4.44", @@ -1498,19 +1498,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.4.tgz", - "integrity": "sha512-acESdTXsxPnYr2C4Blv0ggx5zIFMgOzZmYU2UgvIff9POdRGbRNBHRyzHAnizcItvpgerSKQbllUc9USp3V7eg==", + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.5.tgz", + "integrity": "sha512-oFasHnpv/upubjJEmqiTKQYb4qS3ziJddf4UVWuFw6ebk/QTrTUc+AUoTJdo39x9g+AOQBzhOU0ICCRuUjvkmw==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.4", - "@vue/shared": "3.5.4" + "@vue/compiler-dom": "3.5.5", + "@vue/shared": "3.5.5" } }, "node_modules/@vue/shared": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.4.tgz", - "integrity": "sha512-L2MCDD8l7yC62Te5UUyPVpmexhL9ipVnYRw9CsWfm/BGRL5FwDX4a25bcJ/OJSD3+Hx+k/a8LDKcG2AFdJV3BA==", + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.5.tgz", + "integrity": "sha512-0KyMXyEgnmFAs6rNUL+6eUHtUCqCaNrVd+AW3MX3LyA0Yry5SA0Km03CDKiOua1x1WWnIr+W9+S0GMFoSDWERQ==", "dev": true }, "node_modules/abbrev": { @@ -3160,9 +3160,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.20", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.20.tgz", - "integrity": "sha512-74mdl6Fs1HHzK9SUX4CKFxAtAe3nUns48y79TskHNAG6fGOlLfyKA4j855x+0b5u8rWJIrlaG9tcTPstMlwjIw==", + "version": "1.5.23", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.23.tgz", + "integrity": "sha512-mBhODedOXg4v5QWwl21DjM5amzjmI1zw9EPrPK/5Wx7C8jt33bpZNrC7OhHUG3pxRtbLpr3W2dXT+Ph1SsfRZA==", "dev": true }, "node_modules/emittery": { @@ -3392,9 +3392,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.2.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.2.tgz", - "integrity": "sha512-i0ZMWA199DG7sjxlzXn5AeYZxpRfMJjDPUl7lL9eJJX8TPRoIaxJU4ys/joP5faM5AXE1eqW/dslCj3uj4Nqpg==", + "version": "50.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.3.tgz", + "integrity": "sha512-aNh/dz3wSkyo53y2KWDCrA8fDuXDMtMVflcbesd8AFPgcF8ugOv9mJxC7qKB95R96nzCB91iEwU7MMznh/7okQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.48.0", @@ -5734,18 +5734,27 @@ } }, "node_modules/nise": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/nise/-/nise-6.0.1.tgz", - "integrity": "sha512-DAyWGPQEuJVlL2eqKw6gdZKT+E/jo/ZrjEUDAslJLluCz81nWy+KSYybNp3KFm887Yvp7hv12jSM82ld8BmLxg==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/nise/-/nise-6.1.1.tgz", + "integrity": "sha512-aMSAzLVY7LyeM60gvBS423nBmIPP+Wy7St7hsb+8/fc1HmeoHJfLO8CKse4u3BtOZvQLJghYPI2i/1WZrEj5/g==", "dev": true, "dependencies": { - "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^11.2.2", - "@sinonjs/text-encoding": "^0.7.2", + "@sinonjs/commons": "^3.0.1", + "@sinonjs/fake-timers": "^13.0.1", + "@sinonjs/text-encoding": "^0.7.3", "just-extend": "^6.2.0", "path-to-regexp": "^8.1.0" } }, + "node_modules/nise/node_modules/@sinonjs/fake-timers": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.2.tgz", + "integrity": "sha512-4Bb+oqXZTSTZ1q27Izly9lv8B9dlV61CROxPiVtywwzv5SnytJqhvYe6FclHYuXml4cd1VHPo1zd5PmTeJozvA==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^3.0.1" + } + }, "node_modules/node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", @@ -6697,9 +6706,9 @@ } }, "node_modules/postcss": { - "version": "8.4.45", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.45.tgz", - "integrity": "sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==", + "version": "8.4.47", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", + "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", "dev": true, "funding": [ { @@ -6717,8 +6726,8 @@ ], "dependencies": { "nanoid": "^3.3.7", - "picocolors": "^1.0.1", - "source-map-js": "^1.2.0" + "picocolors": "^1.1.0", + "source-map-js": "^1.2.1" }, "engines": { "node": "^10 || ^12 || >=14" diff --git a/packages/project/package.json b/packages/project/package.json index 669879cffae..037f3b01311 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -162,7 +162,7 @@ "eslint": "^9.10.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.2.2", + "eslint-plugin-jsdoc": "^50.2.3", "esmock": "^2.6.7", "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", From 99e657cb93722f10d007df85ceca9bf0c27f1bf1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Sep 2024 11:54:26 +0000 Subject: [PATCH 1162/1272] [ui5-project][INTERNAL] Bump sinon from 18.0.1 to 19.0.2 (#767) --- packages/project/package-lock.json | 41 ++++++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 17 insertions(+), 26 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ec629bfa7c2..81b36e4a244 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -54,7 +54,7 @@ "jsdoc": "^4.0.3", "nyc": "^17.0.0", "open-cli": "^8.0.0", - "sinon": "^18.0.1", + "sinon": "^19.0.2", "tap-xunit": "^2.4.1" }, "engines": { @@ -1241,12 +1241,12 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "11.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", - "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.2.tgz", + "integrity": "sha512-4Bb+oqXZTSTZ1q27Izly9lv8B9dlV61CROxPiVtywwzv5SnytJqhvYe6FclHYuXml4cd1VHPo1zd5PmTeJozvA==", "dev": true, "dependencies": { - "@sinonjs/commons": "^3.0.0" + "@sinonjs/commons": "^3.0.1" } }, "node_modules/@sinonjs/samsam": { @@ -3098,9 +3098,9 @@ } }, "node_modules/diff": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", - "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-7.0.0.tgz", + "integrity": "sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==", "dev": true, "engines": { "node": ">=0.3.1" @@ -5746,15 +5746,6 @@ "path-to-regexp": "^8.1.0" } }, - "node_modules/nise/node_modules/@sinonjs/fake-timers": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.2.tgz", - "integrity": "sha512-4Bb+oqXZTSTZ1q27Izly9lv8B9dlV61CROxPiVtywwzv5SnytJqhvYe6FclHYuXml4cd1VHPo1zd5PmTeJozvA==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^3.0.1" - } - }, "node_modules/node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", @@ -7364,17 +7355,17 @@ } }, "node_modules/sinon": { - "version": "18.0.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-18.0.1.tgz", - "integrity": "sha512-a2N2TDY1uGviajJ6r4D1CyRAkzE9NNVlYOV1wX5xQDuAk0ONgzgRl0EjCQuRCPxOwp13ghsMwt9Gdldujs39qw==", + "version": "19.0.2", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.2.tgz", + "integrity": "sha512-euuToqM+PjO4UgXeLETsfQiuoyPXlqFezr6YZDFwHR3t4qaX0fZUe1MfPMznTL5f8BWrVS89KduLdMUsxFCO6g==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1", - "@sinonjs/fake-timers": "11.2.2", - "@sinonjs/samsam": "^8.0.0", - "diff": "^5.2.0", - "nise": "^6.0.0", - "supports-color": "^7" + "@sinonjs/fake-timers": "^13.0.2", + "@sinonjs/samsam": "^8.0.1", + "diff": "^7.0.0", + "nise": "^6.1.1", + "supports-color": "^7.2.0" }, "funding": { "type": "opencollective", diff --git a/packages/project/package.json b/packages/project/package.json index 037f3b01311..b4b7e455cf0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -173,7 +173,7 @@ "jsdoc": "^4.0.3", "nyc": "^17.0.0", "open-cli": "^8.0.0", - "sinon": "^18.0.1", + "sinon": "^19.0.2", "tap-xunit": "^2.4.1" } } From 12c475d074ec3a0a416b858434928d0e36050661 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 22 Sep 2024 02:20:14 +0000 Subject: [PATCH 1163/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 129 +++++++++++++---------------- packages/project/package.json | 6 +- 2 files changed, 61 insertions(+), 74 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 81b36e4a244..f09215e6eae 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,10 +40,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.10.0", + "eslint": "^9.11.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.2.3", + "eslint-plugin-jsdoc": "^50.2.4", "esmock": "^2.6.7", "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", @@ -52,7 +52,7 @@ "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", "jsdoc": "^4.0.3", - "nyc": "^17.0.0", + "nyc": "^17.1.0", "open-cli": "^8.0.0", "sinon": "^19.0.2", "tap-xunit": "^2.4.1" @@ -554,9 +554,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.10.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.10.0.tgz", - "integrity": "sha512-fuXtbiP5GWIn8Fz+LWoOMVf/Jxm+aajZYkhi6CuEm4SxymFM+eUWzbO9qXT+L0iCkL5+KGYMCSGxo686H19S1g==", + "version": "9.11.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.11.0.tgz", + "integrity": "sha512-LPkkenkDqyzTFauZLLAPhIb48fj6drrfMvRGSL9tS3AcZBSVTllemLSNyCvHNNL2t797S/6DJNSIwRwXgMO/eQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -572,9 +572,9 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.1.0.tgz", - "integrity": "sha512-autAXT203ixhqei9xt+qkYOvY8l6LAFIdT2UXc/RPNeUVfqRF1BV94GTJyVPFKT8nFM6MyVJhjLj9E8JWvf5zQ==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.0.tgz", + "integrity": "sha512-vH9PiIMMwvhCx31Af3HiGzsVNULDbyVkHXwlemn/B0TFj/00ho3y55efXrUZTfQipxoHC5u4xq6zblww1zm1Ig==", "dev": true, "dependencies": { "levn": "^0.4.1" @@ -1049,9 +1049,9 @@ } }, "node_modules/@npmcli/package-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.0.tgz", - "integrity": "sha512-qe/kiqqkW0AGtvBjL8TJKZk/eBBSpnJkUWvHdQ9jM2lKHXRYYJuyNpJPlJw3c8QjC2ow6NZYiLExhUaeJelbxQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.1.tgz", + "integrity": "sha512-f7zYC6kQautXHvNbLEWgD/uGu1+xCn9izgqBfgItWSx22U0ZDekxN08A1vM8cTxj/cRVe0Q94Ode+tdoYmIOOQ==", "dependencies": { "@npmcli/git": "^5.0.0", "glob": "^10.2.2", @@ -1458,59 +1458,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.5.tgz", - "integrity": "sha512-ZrxcY8JMoV+kgDrmRwlDufz0SjDZ7jfoNZiIBluAACMBmgr55o/jTbxnyrccH6VSJXnFaDI4Ik1UFCiq9r8i7w==", + "version": "3.5.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.7.tgz", + "integrity": "sha512-A0gay3lK71MddsSnGlBxRPOugIVdACze9L/rCo5X5srCyjQfZOfYtSFMJc3aOZCM+xN55EQpb4R97rYn/iEbSw==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.5", + "@vue/shared": "3.5.7", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.5.tgz", - "integrity": "sha512-HSvK5q1gmBbxRse3S0Wt34RcKuOyjDJKDDMuF3i7NC+QkDFrbAqw8NnrEm/z7zFDxWZa4/5eUwsBOMQzm1RHBA==", + "version": "3.5.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.7.tgz", + "integrity": "sha512-GYWl3+gO8/g0ZdYaJ18fYHdI/WVic2VuuUd1NsPp60DWXKy+XjdhFsDW7FbUto8siYYZcosBGn9yVBkjhq1M8Q==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.5", - "@vue/shared": "3.5.5" + "@vue/compiler-core": "3.5.7", + "@vue/shared": "3.5.7" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.5.tgz", - "integrity": "sha512-MzBHDxwZhgQPHrwJ5tj92gdTYRCuPDSZr8PY3+JFv8cv2UD5/WayH5yo0kKCkKfrtJhc39jNSMityHrkMSbfnA==", + "version": "3.5.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.7.tgz", + "integrity": "sha512-EjOJtCWJrC7HqoCEzOwpIYHm+JH7YmkxC1hG6VkqIukYRqj8KFUlTLK6hcT4nGgtVov2+ZfrdrRlcaqS78HnBA==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.5", - "@vue/compiler-dom": "3.5.5", - "@vue/compiler-ssr": "3.5.5", - "@vue/shared": "3.5.5", + "@vue/compiler-core": "3.5.7", + "@vue/compiler-dom": "3.5.7", + "@vue/compiler-ssr": "3.5.7", + "@vue/shared": "3.5.7", "estree-walker": "^2.0.2", "magic-string": "^0.30.11", - "postcss": "^8.4.44", + "postcss": "^8.4.47", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.5.tgz", - "integrity": "sha512-oFasHnpv/upubjJEmqiTKQYb4qS3ziJddf4UVWuFw6ebk/QTrTUc+AUoTJdo39x9g+AOQBzhOU0ICCRuUjvkmw==", + "version": "3.5.7", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.7.tgz", + "integrity": "sha512-oZx+jXP2k5arV/8Ly3TpQbfFyimMw2ANrRqvHJoKjPqtEzazxQGZjCLOfq8TnZ3wy2TOXdqfmVp4q7FyYeHV4g==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.5", - "@vue/shared": "3.5.5" + "@vue/compiler-dom": "3.5.7", + "@vue/shared": "3.5.7" } }, "node_modules/@vue/shared": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.5.tgz", - "integrity": "sha512-0KyMXyEgnmFAs6rNUL+6eUHtUCqCaNrVd+AW3MX3LyA0Yry5SA0Km03CDKiOua1x1WWnIr+W9+S0GMFoSDWERQ==", + "version": "3.5.7", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.7.tgz", + "integrity": "sha512-NBE1PBIvzIedxIc2RZiKXvGbJkrZ2/hLf3h8GlS4/sP9xcXEZMFWOazFkNd6aGeUCMaproe5MHVYB3/4AW9q9g==", "dev": true }, "node_modules/abbrev": { @@ -2083,9 +2083,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001660", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001660.tgz", - "integrity": "sha512-GacvNTTuATm26qC74pt+ad1fW15mlQ/zuTzzY1ZoIzECTP8HURDfF43kNxPgf7H1jmelCBQTTbBNxdSXOA7Bqg==", + "version": "1.0.30001662", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001662.tgz", + "integrity": "sha512-sgMUVwLmGseH8ZIrm1d51UbrhqMCH3jvS7gF/M6byuHOnKyLOBL7W8yz5V02OHwgLGA36o/AFhWzzh4uc5aqTA==", "dev": true, "funding": [ { @@ -3160,9 +3160,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.23", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.23.tgz", - "integrity": "sha512-mBhODedOXg4v5QWwl21DjM5amzjmI1zw9EPrPK/5Wx7C8jt33bpZNrC7OhHUG3pxRtbLpr3W2dXT+Ph1SsfRZA==", + "version": "1.5.27", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.27.tgz", + "integrity": "sha512-o37j1vZqCoEgBuWWXLHQgTN/KDKe7zwpiY5CPeq2RvUqOyJw9xnrULzZAEVQ5p4h+zjMk7hgtOoPdnLxr7m/jw==", "dev": true }, "node_modules/emittery": { @@ -3270,17 +3270,17 @@ } }, "node_modules/eslint": { - "version": "9.10.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.10.0.tgz", - "integrity": "sha512-Y4D0IgtBZfOcOUAIQTSXBKoNGfY0REGqHJG6+Q81vNippW5YlKjHFj4soMxamKK1NXHUWuBZTLdU3Km+L/pcHw==", + "version": "9.11.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.11.0.tgz", + "integrity": "sha512-yVS6XODx+tMFMDFcG4+Hlh+qG7RM6cCJXtQhCKLSsr3XkLvWggHjCqjfh0XsPPnt1c56oaT6PMgW9XWQQjdHXA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.11.0", "@eslint/config-array": "^0.18.0", "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.10.0", - "@eslint/plugin-kit": "^0.1.0", + "@eslint/js": "9.11.0", + "@eslint/plugin-kit": "^0.2.0", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.3.0", "@nodelib/fs.walk": "^1.2.8", @@ -3392,9 +3392,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.2.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.3.tgz", - "integrity": "sha512-aNh/dz3wSkyo53y2KWDCrA8fDuXDMtMVflcbesd8AFPgcF8ugOv9mJxC7qKB95R96nzCB91iEwU7MMznh/7okQ==", + "version": "50.2.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.4.tgz", + "integrity": "sha512-020jA+dXaXdb+TML3ZJBvpPmzwbNROjnYuTYi/g6A5QEmEjhptz4oPJDKkOGMIByNxsPpdTLzSU1HYVqebOX1w==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.48.0", @@ -5976,9 +5976,9 @@ } }, "node_modules/nyc": { - "version": "17.0.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-17.0.0.tgz", - "integrity": "sha512-ISp44nqNCaPugLLGGfknzQwSwt10SSS5IMoPR7GLoMAyS18Iw5js8U7ga2VF9lYuMZ42gOHr3UddZw4WZltxKg==", + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-17.1.0.tgz", + "integrity": "sha512-U42vQ4czpKa0QdI1hu950XuNhYqgoM+ZF1HT+VuUHL9hPfDPVvNQyltmMqdE9bUHMVa+8yNbc3QKTj8zQhlVxQ==", "dev": true, "dependencies": { "@istanbuljs/load-nyc-config": "^1.0.0", @@ -5988,7 +5988,7 @@ "decamelize": "^1.2.0", "find-cache-dir": "^3.2.0", "find-up": "^4.1.0", - "foreground-child": "^2.0.0", + "foreground-child": "^3.3.0", "get-package-type": "^0.1.0", "glob": "^7.1.6", "istanbul-lib-coverage": "^3.0.0", @@ -6085,19 +6085,6 @@ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "dev": true }, - "node_modules/nyc/node_modules/foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/nyc/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -6443,9 +6430,9 @@ } }, "node_modules/parse-imports": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/parse-imports/-/parse-imports-2.1.1.tgz", - "integrity": "sha512-TDT4HqzUiTMO1wJRwg/t/hYk8Wdp3iF/ToMIlAoVQfL1Xs/sTxq1dKWSMjMbQmIarfWKymOyly40+zmPHXMqCA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/parse-imports/-/parse-imports-2.2.1.tgz", + "integrity": "sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ==", "dev": true, "dependencies": { "es-module-lexer": "^1.5.3", diff --git a/packages/project/package.json b/packages/project/package.json index b4b7e455cf0..2b7b9d86aa0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -159,10 +159,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.10.0", + "eslint": "^9.11.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.2.3", + "eslint-plugin-jsdoc": "^50.2.4", "esmock": "^2.6.7", "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", @@ -171,7 +171,7 @@ "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", "jsdoc": "^4.0.3", - "nyc": "^17.0.0", + "nyc": "^17.1.0", "open-cli": "^8.0.0", "sinon": "^19.0.2", "tap-xunit": "^2.4.1" From 12f142d3badd1b180882c9d6955e7f6e98c301e9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Sep 2024 05:43:37 +0000 Subject: [PATCH 1164/1272] [ui5-project]Bump actions/setup-node from 4.0.3 to 4.0.4 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.3 to 4.0.4. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4.0.3...v4.0.4) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 1d312ccc2a6..232d4b858a8 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Node.js LTS 20.11.0 - uses: actions/setup-node@v4.0.3 + uses: actions/setup-node@v4.0.4 with: node-version: 20.11.0 From 7bc0d59cfb5e17a7475387bd8c7bb842cbd69b18 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Mon, 30 Sep 2024 07:24:19 +0000 Subject: [PATCH 1165/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 169 ++++++++++++++++------------- packages/project/package.json | 4 +- 2 files changed, 97 insertions(+), 76 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f09215e6eae..199c227a65f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,10 +40,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.11.0", + "eslint": "^9.11.1", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-jsdoc": "^50.3.0", "esmock": "^2.6.7", "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", @@ -496,6 +496,15 @@ "node": "*" } }, + "node_modules/@eslint/core": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.6.0.tgz", + "integrity": "sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@eslint/eslintrc": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz", @@ -554,9 +563,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.11.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.11.0.tgz", - "integrity": "sha512-LPkkenkDqyzTFauZLLAPhIb48fj6drrfMvRGSL9tS3AcZBSVTllemLSNyCvHNNL2t797S/6DJNSIwRwXgMO/eQ==", + "version": "9.11.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.11.1.tgz", + "integrity": "sha512-/qu+TWz8WwPWc7/HcIJKi+c+MOm46GdVaSlTTQcaqaL53+GsoA6MxWp5PtTx48qbSP7ylM1Kn7nhvkugfJvRSA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1301,6 +1310,18 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, "node_modules/@types/linkify-it": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", @@ -1458,39 +1479,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.7.tgz", - "integrity": "sha512-A0gay3lK71MddsSnGlBxRPOugIVdACze9L/rCo5X5srCyjQfZOfYtSFMJc3aOZCM+xN55EQpb4R97rYn/iEbSw==", + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.10.tgz", + "integrity": "sha512-iXWlk+Cg/ag7gLvY0SfVucU8Kh2CjysYZjhhP70w9qI4MvSox4frrP+vDGvtQuzIcgD8+sxM6lZvCtdxGunTAA==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.7", + "@vue/shared": "3.5.10", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.7.tgz", - "integrity": "sha512-GYWl3+gO8/g0ZdYaJ18fYHdI/WVic2VuuUd1NsPp60DWXKy+XjdhFsDW7FbUto8siYYZcosBGn9yVBkjhq1M8Q==", + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.10.tgz", + "integrity": "sha512-DyxHC6qPcktwYGKOIy3XqnHRrrXyWR2u91AjP+nLkADko380srsC2DC3s7Y1Rk6YfOlxOlvEQKa9XXmLI+W4ZA==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.7", - "@vue/shared": "3.5.7" + "@vue/compiler-core": "3.5.10", + "@vue/shared": "3.5.10" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.7.tgz", - "integrity": "sha512-EjOJtCWJrC7HqoCEzOwpIYHm+JH7YmkxC1hG6VkqIukYRqj8KFUlTLK6hcT4nGgtVov2+ZfrdrRlcaqS78HnBA==", + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.10.tgz", + "integrity": "sha512-to8E1BgpakV7224ZCm8gz1ZRSyjNCAWEplwFMWKlzCdP9DkMKhRRwt0WkCjY7jkzi/Vz3xgbpeig5Pnbly4Tow==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.7", - "@vue/compiler-dom": "3.5.7", - "@vue/compiler-ssr": "3.5.7", - "@vue/shared": "3.5.7", + "@vue/compiler-core": "3.5.10", + "@vue/compiler-dom": "3.5.10", + "@vue/compiler-ssr": "3.5.10", + "@vue/shared": "3.5.10", "estree-walker": "^2.0.2", "magic-string": "^0.30.11", "postcss": "^8.4.47", @@ -1498,19 +1519,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.7.tgz", - "integrity": "sha512-oZx+jXP2k5arV/8Ly3TpQbfFyimMw2ANrRqvHJoKjPqtEzazxQGZjCLOfq8TnZ3wy2TOXdqfmVp4q7FyYeHV4g==", + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.10.tgz", + "integrity": "sha512-hxP4Y3KImqdtyUKXDRSxKSRkSm1H9fCvhojEYrnaoWhE4w/y8vwWhnosJoPPe2AXm5sU7CSbYYAgkt2ZPhDz+A==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.7", - "@vue/shared": "3.5.7" + "@vue/compiler-dom": "3.5.10", + "@vue/shared": "3.5.10" } }, "node_modules/@vue/shared": { - "version": "3.5.7", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.7.tgz", - "integrity": "sha512-NBE1PBIvzIedxIc2RZiKXvGbJkrZ2/hLf3h8GlS4/sP9xcXEZMFWOazFkNd6aGeUCMaproe5MHVYB3/4AW9q9g==", + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.10.tgz", + "integrity": "sha512-VkkBhU97Ki+XJ0xvl4C9YJsIZ2uIlQ7HqPpZOS3m9VCvmROPaChZU6DexdMJqvz9tbgG+4EtFVrSuailUq5KGQ==", "dev": true }, "node_modules/abbrev": { @@ -1932,9 +1953,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", - "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", + "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", "dev": true, "funding": [ { @@ -1951,8 +1972,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001646", - "electron-to-chromium": "^1.5.4", + "caniuse-lite": "^1.0.30001663", + "electron-to-chromium": "^1.5.28", "node-releases": "^2.0.18", "update-browserslist-db": "^1.1.0" }, @@ -2083,9 +2104,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001662", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001662.tgz", - "integrity": "sha512-sgMUVwLmGseH8ZIrm1d51UbrhqMCH3jvS7gF/M6byuHOnKyLOBL7W8yz5V02OHwgLGA36o/AFhWzzh4uc5aqTA==", + "version": "1.0.30001664", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001664.tgz", + "integrity": "sha512-AmE7k4dXiNKQipgn7a2xg558IRqPN3jMQY/rOsbxDhrd0tyChwbITBfiwtnqz8bi2M5mIWbxAYBvk7W7QBUS2g==", "dev": true, "funding": [ { @@ -3160,9 +3181,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.27", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.27.tgz", - "integrity": "sha512-o37j1vZqCoEgBuWWXLHQgTN/KDKe7zwpiY5CPeq2RvUqOyJw9xnrULzZAEVQ5p4h+zjMk7hgtOoPdnLxr7m/jw==", + "version": "1.5.29", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.29.tgz", + "integrity": "sha512-PF8n2AlIhCKXQ+gTpiJi0VhcHDb69kYX4MtCiivctc2QD3XuNZ/XIOlbGzt7WAjjEev0TtaH6Cu3arZExm5DOw==", "dev": true }, "node_modules/emittery": { @@ -3270,20 +3291,23 @@ } }, "node_modules/eslint": { - "version": "9.11.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.11.0.tgz", - "integrity": "sha512-yVS6XODx+tMFMDFcG4+Hlh+qG7RM6cCJXtQhCKLSsr3XkLvWggHjCqjfh0XsPPnt1c56oaT6PMgW9XWQQjdHXA==", + "version": "9.11.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.11.1.tgz", + "integrity": "sha512-MobhYKIoAO1s1e4VUrgx1l1Sk2JBR/Gqjjgw8+mfgoLE2xwsHur4gdfTxyTgShrhvdVFTaJSgMiQBl1jv/AWxg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.11.0", "@eslint/config-array": "^0.18.0", + "@eslint/core": "^0.6.0", "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.11.0", + "@eslint/js": "9.11.1", "@eslint/plugin-kit": "^0.2.0", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.3.0", "@nodelib/fs.walk": "^1.2.8", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -3392,9 +3416,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.2.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.4.tgz", - "integrity": "sha512-020jA+dXaXdb+TML3ZJBvpPmzwbNROjnYuTYi/g6A5QEmEjhptz4oPJDKkOGMIByNxsPpdTLzSU1HYVqebOX1w==", + "version": "50.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.3.0.tgz", + "integrity": "sha512-P7qDB/RckdKETpBM4CtjHRQ5qXByPmFhRi86sN3E+J+tySchq+RSOGGhI2hDIefmmKFuTi/1ACjqsnDJDDDfzg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.48.0", @@ -3429,9 +3453,9 @@ } }, "node_modules/eslint-scope": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.0.2.tgz", - "integrity": "sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.1.0.tgz", + "integrity": "sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -3472,9 +3496,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", - "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz", + "integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3670,14 +3694,14 @@ } }, "node_modules/espree": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", - "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.2.0.tgz", + "integrity": "sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==", "dev": true, "dependencies": { "acorn": "^8.12.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.0.0" + "eslint-visitor-keys": "^4.1.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -6374,9 +6398,9 @@ } }, "node_modules/package-json-from-dist": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", - "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" }, "node_modules/pacote": { "version": "18.0.6", @@ -6539,9 +6563,9 @@ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/path-to-regexp": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.1.0.tgz", - "integrity": "sha512-Bqn3vc8CMHty6zuD+tG23s6v2kwxslHEhTj4eYaVKGIEB+YX/2wd0/rgXLFD9G9id9KCtbVy/3ZgmvZjpa0UdQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.2.0.tgz", + "integrity": "sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==", "dev": true, "engines": { "node": ">=16" @@ -7127,9 +7151,9 @@ } }, "node_modules/rimraf/node_modules/jackspeak": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.1.tgz", - "integrity": "sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.2.tgz", + "integrity": "sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -7138,9 +7162,6 @@ }, "funding": { "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" } }, "node_modules/rimraf/node_modules/lru-cache": { @@ -8363,9 +8384,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", - "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "dev": true, "funding": [ { @@ -8382,8 +8403,8 @@ } ], "dependencies": { - "escalade": "^3.1.2", - "picocolors": "^1.0.1" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { "update-browserslist-db": "cli.js" diff --git a/packages/project/package.json b/packages/project/package.json index 2b7b9d86aa0..0cb4fa17f5a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -159,10 +159,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.11.0", + "eslint": "^9.11.1", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-jsdoc": "^50.3.0", "esmock": "^2.6.7", "globals": "^15.9.0", "istanbul-lib-coverage": "^3.2.2", From 344d755de573d685122a65c899bd8aa735e928da Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Oct 2024 11:23:03 +0000 Subject: [PATCH 1166/1272] [ui5-project][DEPENDENCY] Bump make-fetch-happen from 13.0.1 to 14.0.0 (#771) --- packages/project/package-lock.json | 348 +++++++++++++++++++++++++++-- packages/project/package.json | 2 +- 2 files changed, 335 insertions(+), 15 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 199c227a65f..4a8bd1ece5b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -20,7 +20,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^13.0.1", + "make-fetch-happen": "^14.0.0", "node-stream-zip": "^1.15.0", "pacote": "^18.0.6", "pretty-hrtime": "^1.0.3", @@ -917,9 +917,9 @@ } }, "node_modules/@npmcli/agent": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", - "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-3.0.0.tgz", + "integrity": "sha512-S79NdEgDQd/NGCay6TCoVzXSj74skRZIKJcpJjC5lOq34SZzyI6MqtiiWoiVWoVrTcGjNeC4ipbh1VIHlpfF5Q==", "dependencies": { "agent-base": "^7.1.0", "http-proxy-agent": "^7.0.0", @@ -928,7 +928,7 @@ "socks-proxy-agent": "^8.0.3" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/agent/node_modules/agent-base": { @@ -1204,6 +1204,71 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/@sigstore/sign/node_modules/@npmcli/agent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", + "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@sigstore/sign/node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@sigstore/sign/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/@sigstore/tuf": { "version": "2.3.4", "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz", @@ -5323,25 +5388,85 @@ } }, "node_modules/make-fetch-happen": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", - "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.0.tgz", + "integrity": "sha512-/0z4kjybWroAwWuQJJgkA5yUKw/WGepJhjPdj6YW8+pn7lWs75zA9khVgvID/OMYAwRjq2MsLexKxttjIcfD4w==", "dependencies": { - "@npmcli/agent": "^2.0.0", + "@npmcli/agent": "^3.0.0", "cacache": "^18.0.0", "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", + "minipass-fetch": "^4.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", - "proc-log": "^4.2.0", + "proc-log": "^5.0.0", "promise-retry": "^2.0.1", - "ssri": "^10.0.0" + "ssri": "^12.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/make-fetch-happen/node_modules/minipass-fetch": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.0.tgz", + "integrity": "sha512-2v6aXUXwLP1Epd/gc32HAMIWoczx+fZwEPRHm/VwtrJzRGwR1qGZXEYV3Zp8ZjjbwaZhMrM6uHV4KVkk+XCc2w==", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^3.0.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/make-fetch-happen/node_modules/minizlib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz", + "integrity": "sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==", + "dependencies": { + "minipass": "^7.0.4", + "rimraf": "^5.0.5" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/make-fetch-happen/node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/make-fetch-happen/node_modules/rimraf": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", + "dependencies": { + "glob": "^10.3.7" + }, + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/make-fetch-happen/node_modules/ssri": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", + "integrity": "sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/markdown-it": { @@ -5824,6 +5949,71 @@ "node-gyp-build-test": "build-test.js" } }, + "node_modules/node-gyp/node_modules/@npmcli/agent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", + "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/node-gyp/node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/node-gyp/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/node-gyp/node_modules/make-fetch-happen": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -5986,6 +6176,71 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/npm-registry-fetch/node_modules/@npmcli/agent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", + "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/npm-registry-fetch/node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/npmlog": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", @@ -8284,6 +8539,71 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/tuf-js/node_modules/@npmcli/agent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", + "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/tuf-js/node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/tuf-js/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/tuf-js/node_modules/make-fetch-happen": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 0cb4fa17f5a..4d125adab6f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -131,7 +131,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^13.0.1", + "make-fetch-happen": "^14.0.0", "node-stream-zip": "^1.15.0", "pacote": "^18.0.6", "pretty-hrtime": "^1.0.3", From 4c83b95ac306c29f99d50b33982b21eed29cab1d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 1 Oct 2024 11:23:09 +0000 Subject: [PATCH 1167/1272] [ui5-project][DEPENDENCY] Bump pacote from 18.0.6 to 19.0.0 (#772) --- packages/project/package-lock.json | 706 ++++++++++++++++++++++++++--- packages/project/package.json | 2 +- 2 files changed, 645 insertions(+), 63 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 4a8bd1ece5b..aa50d4e0530 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -22,7 +22,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^14.0.0", "node-stream-zip": "^1.15.0", - "pacote": "^18.0.6", + "pacote": "^19.0.0", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", @@ -655,6 +655,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@istanbuljs/esm-loader-hook": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/@istanbuljs/esm-loader-hook/-/esm-loader-hook-0.2.0.tgz", @@ -1013,18 +1024,26 @@ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/@npmcli/installed-package-contents": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz", - "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-3.0.0.tgz", + "integrity": "sha512-fkxoPuFGvxyrH+OQzyTkX2LUEamrF4jZSmxjAtPPHHGO0dqsQ8tTKjnIS8SAnPHdk2I03BDtSMR5K/4loKg79Q==", "dependencies": { - "npm-bundled": "^3.0.0", - "npm-normalize-package-bin": "^3.0.0" + "npm-bundled": "^4.0.0", + "npm-normalize-package-bin": "^4.0.0" }, "bin": { "installed-package-contents": "bin/index.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/installed-package-contents/node_modules/npm-normalize-package-bin": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", + "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", + "engines": { + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/map-workspaces": { @@ -1050,11 +1069,11 @@ } }, "node_modules/@npmcli/node-gyp": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", - "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-4.0.0.tgz", + "integrity": "sha512-+t5DZ6mO/QFh78PByMq1fGSAub/agLJZDRfJRMeOSNCt8s9YVlTjmGpIPwPhvXTGUIJk+WszlT0rQa1W33yzNA==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/package-json": { @@ -1086,27 +1105,46 @@ } }, "node_modules/@npmcli/redact": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.1.tgz", - "integrity": "sha512-YgsR5jCQZhVmTJvjduTOIHph0L73pK8xwMVaDY0PatySqVM9AZj93jpoXYSJqfHFxFkN9dmqTw6OiqExsS3LPw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.0.0.tgz", + "integrity": "sha512-/1uFzjVcfzqrgCeGW7+SZ4hv0qLWmKXVzFahZGJ6QuJBj6Myt9s17+JL86i76NV9YSnJRcGXJYQbAU0rn1YTCQ==", "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/run-script": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-8.1.0.tgz", - "integrity": "sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-9.0.0.tgz", + "integrity": "sha512-5GgAfGebmUP3ktRhucOwH7Zatjhh3ANCDs9KunVPDU59QP5Gg7aSyLvKsrCGGx3GGHzjsfYIJxGQXihORiCfIg==", "dependencies": { - "@npmcli/node-gyp": "^3.0.0", + "@npmcli/node-gyp": "^4.0.0", "@npmcli/package-json": "^5.0.0", - "@npmcli/promise-spawn": "^7.0.0", + "@npmcli/promise-spawn": "^8.0.0", "node-gyp": "^10.0.0", - "proc-log": "^4.0.0", + "proc-log": "^5.0.0", "which": "^4.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/@npmcli/promise-spawn": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.0.tgz", + "integrity": "sha512-d+hsks580ts8k5ZYntlBX3ZtfECLvErB0OWJKRDC2aweZb3VybhvvkhIbveElgdg+aL7gMDtIuPJzheVLd2V+Q==", + "dependencies": { + "which": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "engines": { + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@one-ini/wasm": { @@ -4528,14 +4566,14 @@ } }, "node_modules/ignore-walk": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz", - "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-7.0.0.tgz", + "integrity": "sha512-T4gbf83A4NH95zvhVYZc+qWocBBGlpzUXLPGurJggw/WIOwicfXJChLDP/iBZnN5WqROSu5Bm3hhle4z8a8YGQ==", "dependencies": { "minimatch": "^9.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/import-fresh": { @@ -6090,14 +6128,22 @@ } }, "node_modules/npm-bundled": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz", - "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-4.0.0.tgz", + "integrity": "sha512-IxaQZDMsqfQ2Lz37VvyyEtKLe8FsRZuysmedy/N06TU1RyVppYKXrO4xIhR0F+7ubIBox6Q7nir6fQI3ej39iA==", "dependencies": { - "npm-normalize-package-bin": "^3.0.0" + "npm-normalize-package-bin": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/npm-bundled/node_modules/npm-normalize-package-bin": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", + "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", + "engines": { + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-install-checks": { @@ -6134,14 +6180,14 @@ } }, "node_modules/npm-packlist": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", - "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-9.0.0.tgz", + "integrity": "sha512-8qSayfmHJQTx3nJWYbbUmflpyarbLMBc6LCAjYsiGtXxDB68HaZpb8re6zeaLGxZzDuMdhsg70jryJe+RrItVQ==", "dependencies": { - "ignore-walk": "^6.0.4" + "ignore-walk": "^7.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-pick-manifest": { @@ -6159,21 +6205,109 @@ } }, "node_modules/npm-registry-fetch": { - "version": "17.1.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz", - "integrity": "sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-18.0.0.tgz", + "integrity": "sha512-PCLKGP4BPXpv8lufDynf7/Mea4h0/y9jHn9xYPQHlUm1/BR3BTfcCp9EMpXfDyHYomYDZM4Y00+y7NLhwFgyJg==", "dependencies": { - "@npmcli/redact": "^2.0.0", + "@npmcli/redact": "^3.0.0", "jsonparse": "^1.3.1", "make-fetch-happen": "^13.0.0", "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minizlib": "^2.1.2", - "npm-package-arg": "^11.0.0", - "proc-log": "^4.0.0" + "minipass-fetch": "^4.0.0", + "minizlib": "^3.0.1", + "npm-package-arg": "^12.0.0", + "proc-log": "^5.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/hosted-git-info": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", + "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.0.tgz", + "integrity": "sha512-2v6aXUXwLP1Epd/gc32HAMIWoczx+fZwEPRHm/VwtrJzRGwR1qGZXEYV3Zp8ZjjbwaZhMrM6uHV4KVkk+XCc2w==", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^3.0.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/npm-registry-fetch/node_modules/minizlib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz", + "integrity": "sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==", + "dependencies": { + "minipass": "^7.0.4", + "rimraf": "^5.0.5" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/npm-registry-fetch/node_modules/npm-package-arg": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.0.tgz", + "integrity": "sha512-ZTE0hbwSdTNL+Stx2zxSqdu2KZfNDcrtrLdIk7XGnQFYBWYDho/ORvXtn5XEePcL3tFpGjHCV3X3xrtDh7eZ+A==", + "dependencies": { + "hosted-git-info": "^8.0.0", + "proc-log": "^5.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^6.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/rimraf": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", + "dependencies": { + "glob": "^10.3.7" + }, + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm-registry-fetch/node_modules/validate-npm-package-name": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", + "integrity": "sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==", + "engines": { + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-registry-fetch/node_modules/@npmcli/agent": { @@ -6604,7 +6738,6 @@ "version": "7.0.2", "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.2.tgz", "integrity": "sha512-z4cYYMMdKHzw4O5UkWJImbZynVIo0lSGTXc7bzB1e/rrDqkgGUNysK/o4bTr+0+xKvvLoTyGqYC4Fgljy9qe1Q==", - "dev": true, "engines": { "node": ">=18" }, @@ -6658,35 +6791,484 @@ "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" }, "node_modules/pacote": { - "version": "18.0.6", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz", - "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==", - "dependencies": { - "@npmcli/git": "^5.0.0", - "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/package-json": "^5.1.0", - "@npmcli/promise-spawn": "^7.0.0", - "@npmcli/run-script": "^8.0.0", - "cacache": "^18.0.0", + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-19.0.0.tgz", + "integrity": "sha512-953pUJqILTeaRvKFcQ78unsNc3Nl4PyVHTTsAUmvSmJ0NXs0LTWKAl5tMF2CXPRXA16RdCMYI9EKlV4CCi2T5g==", + "dependencies": { + "@npmcli/git": "^6.0.0", + "@npmcli/installed-package-contents": "^3.0.0", + "@npmcli/package-json": "^6.0.0", + "@npmcli/promise-spawn": "^8.0.0", + "@npmcli/run-script": "^9.0.0", + "cacache": "^19.0.0", "fs-minipass": "^3.0.0", "minipass": "^7.0.2", - "npm-package-arg": "^11.0.0", - "npm-packlist": "^8.0.0", - "npm-pick-manifest": "^9.0.0", - "npm-registry-fetch": "^17.0.0", - "proc-log": "^4.0.0", + "npm-package-arg": "^12.0.0", + "npm-packlist": "^9.0.0", + "npm-pick-manifest": "^10.0.0", + "npm-registry-fetch": "^18.0.0", + "proc-log": "^5.0.0", "promise-retry": "^2.0.1", "sigstore": "^2.2.0", - "ssri": "^10.0.0", + "ssri": "^12.0.0", "tar": "^6.1.11" }, "bin": { "pacote": "bin/index.js" }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/fs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-4.0.0.tgz", + "integrity": "sha512-/xGlezI6xfGO9NwuJlnwz/K14qD1kCSAGtacBHnGzeAIuJGazcp45KP5NuyARXoKb7cwulAGWVsbeSxdG/cb0Q==", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/git": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-6.0.0.tgz", + "integrity": "sha512-ljc0tlFOFbM0bMSmiB33JWVMXNVltwPcadXoUbJGo/ROadmb/YuumUloZoQyMxaRa5xvZJwOQu8m0j1tGIbxLg==", + "dependencies": { + "@npmcli/promise-spawn": "^8.0.0", + "ini": "^5.0.0", + "lru-cache": "^10.0.1", + "npm-pick-manifest": "^9.0.0", + "proc-log": "^5.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/git/node_modules/hosted-git-info": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", + "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/git/node_modules/npm-package-arg": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.3.tgz", + "integrity": "sha512-sHGJy8sOC1YraBywpzQlIKBE4pBbGbiF95U6Auspzyem956E0+FtDtsx1ZxlOJkQCZ1AFXAY/yuvtFYrOxF+Bw==", + "dependencies": { + "hosted-git-info": "^7.0.0", + "proc-log": "^4.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, "engines": { "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/pacote/node_modules/@npmcli/git/node_modules/npm-package-arg/node_modules/proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/git/node_modules/npm-pick-manifest": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", + "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^11.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/git/node_modules/validate-npm-package-name": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", + "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/package-json": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.0.0.tgz", + "integrity": "sha512-6+SgO3DjUi0hTCP5ih+Z8xYq6ZIpUwp7A3CNDr5zGotXndqk97GBnvp3BeN0xDM/aGcHYWatJpHwse9xD8F9WA==", + "dependencies": { + "@npmcli/git": "^5.0.0", + "glob": "^10.2.2", + "hosted-git-info": "^8.0.0", + "json-parse-even-better-errors": "^4.0.0", + "normalize-package-data": "^7.0.0", + "proc-log": "^5.0.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/@npmcli/git": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz", + "integrity": "sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ==", + "dependencies": { + "@npmcli/promise-spawn": "^7.0.0", + "ini": "^4.1.3", + "lru-cache": "^10.0.1", + "npm-pick-manifest": "^9.0.0", + "proc-log": "^4.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^4.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/@npmcli/git/node_modules/proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/@npmcli/promise-spawn": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz", + "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==", + "dependencies": { + "which": "^4.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/ini": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", + "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/npm-package-arg": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.3.tgz", + "integrity": "sha512-sHGJy8sOC1YraBywpzQlIKBE4pBbGbiF95U6Auspzyem956E0+FtDtsx1ZxlOJkQCZ1AFXAY/yuvtFYrOxF+Bw==", + "dependencies": { + "hosted-git-info": "^7.0.0", + "proc-log": "^4.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/npm-package-arg/node_modules/hosted-git-info": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", + "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/npm-package-arg/node_modules/proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/npm-pick-manifest": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", + "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^11.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/validate-npm-package-name": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", + "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/pacote/node_modules/@npmcli/promise-spawn": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.0.tgz", + "integrity": "sha512-d+hsks580ts8k5ZYntlBX3ZtfECLvErB0OWJKRDC2aweZb3VybhvvkhIbveElgdg+aL7gMDtIuPJzheVLd2V+Q==", + "dependencies": { + "which": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/cacache": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/cacache/node_modules/tar": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/pacote/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "engines": { + "node": ">=18" + } + }, + "node_modules/pacote/node_modules/hosted-git-info": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", + "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/ini": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-5.0.0.tgz", + "integrity": "sha512-+N0ngpO3e7cRUWOJAS7qw0IZIVc6XPrW4MlFBdD066F2L4k1L6ker3hLqSq7iXxU5tgS4WGkIUElWn5vogAEnw==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/json-parse-even-better-errors": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-4.0.0.tgz", + "integrity": "sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/pacote/node_modules/minizlib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz", + "integrity": "sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==", + "dependencies": { + "minipass": "^7.0.4", + "rimraf": "^5.0.5" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/pacote/node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/pacote/node_modules/normalize-package-data": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-7.0.0.tgz", + "integrity": "sha512-k6U0gKRIuNCTkwHGZqblCfLfBRh+w1vI6tBo+IeJwq2M8FUiOqhX7GH+GArQGScA7azd1WfyRCvxoXDO3hQDIA==", + "dependencies": { + "hosted-git-info": "^8.0.0", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/npm-package-arg": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.0.tgz", + "integrity": "sha512-ZTE0hbwSdTNL+Stx2zxSqdu2KZfNDcrtrLdIk7XGnQFYBWYDho/ORvXtn5XEePcL3tFpGjHCV3X3xrtDh7eZ+A==", + "dependencies": { + "hosted-git-info": "^8.0.0", + "proc-log": "^5.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^6.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/npm-pick-manifest": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-10.0.0.tgz", + "integrity": "sha512-r4fFa4FqYY8xaM7fHecQ9Z2nE9hgNfJR+EmoKv0+chvzWkBcORX3r0FpTByP+CbOVJDladMXnPQGVN8PBLGuTQ==", + "dependencies": { + "npm-install-checks": "^7.1.0", + "npm-normalize-package-bin": "^4.0.0", + "npm-package-arg": "^12.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/npm-pick-manifest/node_modules/npm-install-checks": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.0.tgz", + "integrity": "sha512-bkTildVlofeMX7wiOaWk3PlW7YcBXAuEc7TWpOxwUgalG5ZvgT/ms+6OX9zt7iGLv4+VhKbRZhpOfgQJzk1YAw==", + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/npm-pick-manifest/node_modules/npm-normalize-package-bin": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", + "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/rimraf": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", + "dependencies": { + "glob": "^10.3.7" + }, + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/pacote/node_modules/ssri": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", + "integrity": "sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/unique-filename": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-4.0.0.tgz", + "integrity": "sha512-XSnEewXmQ+veP7xX2dS5Q4yZAvO40cBN2MWkJ7D/6sW4Dg6wYBNwM1Vrnz1FhH5AdeLIlUXRI9e28z1YZi71NQ==", + "dependencies": { + "unique-slug": "^5.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/unique-slug": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-5.0.0.tgz", + "integrity": "sha512-9OdaqO5kwqR+1kVgHAhsp5vPNU0hnxRa26rBFNfNgM7M6pNtgzeBn3s/xbyCQL3dcjzOatcef6UUHpB/6MaETg==", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/validate-npm-package-name": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", + "integrity": "sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "engines": { + "node": ">=18" + } + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 4d125adab6f..d37427042bc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -133,7 +133,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^14.0.0", "node-stream-zip": "^1.15.0", - "pacote": "^18.0.6", + "pacote": "^19.0.0", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", From 3f0da290c3ec8e3a1bc7507b5f8866051d124d14 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 6 Oct 2024 02:20:11 +0000 Subject: [PATCH 1168/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 1677 +++++++++++++++------------- packages/project/package.json | 8 +- 2 files changed, 905 insertions(+), 780 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index aa50d4e0530..b1c6c15b287 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -20,7 +20,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^14.0.0", + "make-fetch-happen": "^14.0.1", "node-stream-zip": "^1.15.0", "pacote": "^19.0.0", "pretty-hrtime": "^1.0.3", @@ -40,12 +40,12 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.11.1", + "eslint": "^9.12.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.3.0", + "eslint-plugin-jsdoc": "^50.3.1", "esmock": "^2.6.7", - "globals": "^15.9.0", + "globals": "^15.10.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -84,11 +84,11 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", - "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz", + "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==", "dependencies": { - "@babel/highlight": "^7.24.7", + "@babel/highlight": "^7.25.7", "picocolors": "^1.0.0" }, "engines": { @@ -96,30 +96,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.25.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.4.tgz", - "integrity": "sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.7.tgz", + "integrity": "sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", - "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.7.tgz", + "integrity": "sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.25.0", - "@babel/helper-compilation-targets": "^7.25.2", - "@babel/helper-module-transforms": "^7.25.2", - "@babel/helpers": "^7.25.0", - "@babel/parser": "^7.25.0", - "@babel/template": "^7.25.0", - "@babel/traverse": "^7.25.2", - "@babel/types": "^7.25.2", + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/helper-compilation-targets": "^7.25.7", + "@babel/helper-module-transforms": "^7.25.7", + "@babel/helpers": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/template": "^7.25.7", + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -144,29 +144,29 @@ } }, "node_modules/@babel/generator": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", - "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.7.tgz", + "integrity": "sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==", "dev": true, "dependencies": { - "@babel/types": "^7.25.6", + "@babel/types": "^7.25.7", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz", - "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz", + "integrity": "sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.25.2", - "@babel/helper-validator-option": "^7.24.8", - "browserslist": "^4.23.1", + "@babel/compat-data": "^7.25.7", + "@babel/helper-validator-option": "^7.25.7", + "browserslist": "^4.24.0", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -184,28 +184,28 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", - "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz", + "integrity": "sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==", "dev": true, "dependencies": { - "@babel/traverse": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz", - "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz", + "integrity": "sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.24.7", - "@babel/helper-simple-access": "^7.24.7", - "@babel/helper-validator-identifier": "^7.24.7", - "@babel/traverse": "^7.25.2" + "@babel/helper-module-imports": "^7.25.7", + "@babel/helper-simple-access": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "@babel/traverse": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -215,72 +215,72 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz", - "integrity": "sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz", + "integrity": "sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", - "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz", + "integrity": "sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==", "dev": true, "dependencies": { - "@babel/traverse": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", - "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz", + "integrity": "sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", - "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", + "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz", - "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz", + "integrity": "sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.6.tgz", - "integrity": "sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.7.tgz", + "integrity": "sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==", "dev": true, "dependencies": { - "@babel/template": "^7.25.0", - "@babel/types": "^7.25.6" + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", - "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", + "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", "dependencies": { - "@babel/helper-validator-identifier": "^7.24.7", + "@babel/helper-validator-identifier": "^7.25.7", "chalk": "^2.4.2", "js-tokens": "^4.0.0", "picocolors": "^1.0.0" @@ -341,12 +341,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", - "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.7.tgz", + "integrity": "sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==", "dev": true, "dependencies": { - "@babel/types": "^7.25.6" + "@babel/types": "^7.25.7" }, "bin": { "parser": "bin/babel-parser.js" @@ -356,30 +356,30 @@ } }, "node_modules/@babel/template": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", - "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.7.tgz", + "integrity": "sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.24.7", - "@babel/parser": "^7.25.0", - "@babel/types": "^7.25.0" + "@babel/code-frame": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz", - "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.7.tgz", + "integrity": "sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.25.6", - "@babel/parser": "^7.25.6", - "@babel/template": "^7.25.0", - "@babel/types": "^7.25.6", + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -397,13 +397,13 @@ } }, "node_modules/@babel/types": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", - "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.7.tgz", + "integrity": "sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.24.8", - "@babel/helper-validator-identifier": "^7.24.7", + "@babel/helper-string-parser": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", "to-fast-properties": "^2.0.0" }, "engines": { @@ -563,9 +563,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.11.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.11.1.tgz", - "integrity": "sha512-/qu+TWz8WwPWc7/HcIJKi+c+MOm46GdVaSlTTQcaqaL53+GsoA6MxWp5PtTx48qbSP7ylM1Kn7nhvkugfJvRSA==", + "version": "9.12.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.12.0.tgz", + "integrity": "sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -592,6 +592,28 @@ "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, + "node_modules/@humanfs/core": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.0.tgz", + "integrity": "sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==", + "dev": true, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.5", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.5.tgz", + "integrity": "sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==", + "dev": true, + "dependencies": { + "@humanfs/core": "^0.19.0", + "@humanwhocodes/retry": "^0.3.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -606,9 +628,9 @@ } }, "node_modules/@humanwhocodes/retry": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.0.tgz", - "integrity": "sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", "dev": true, "engines": { "node": ">=18.18" @@ -989,14 +1011,14 @@ } }, "node_modules/@npmcli/fs": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", - "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-4.0.0.tgz", + "integrity": "sha512-/xGlezI6xfGO9NwuJlnwz/K14qD1kCSAGtacBHnGzeAIuJGazcp45KP5NuyARXoKb7cwulAGWVsbeSxdG/cb0Q==", "dependencies": { "semver": "^7.3.5" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/git": { @@ -1113,27 +1135,155 @@ } }, "node_modules/@npmcli/run-script": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-9.0.0.tgz", - "integrity": "sha512-5GgAfGebmUP3ktRhucOwH7Zatjhh3ANCDs9KunVPDU59QP5Gg7aSyLvKsrCGGx3GGHzjsfYIJxGQXihORiCfIg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-9.0.1.tgz", + "integrity": "sha512-q9C0uHrb6B6cm3qXVM32UmpqTKuFGbtP23O2K5sLvPMz2hilKd0ptqGXSpuunOuOmPQb/aT5F/kCXFc1P2gO/A==", "dependencies": { "@npmcli/node-gyp": "^4.0.0", - "@npmcli/package-json": "^5.0.0", + "@npmcli/package-json": "^6.0.0", "@npmcli/promise-spawn": "^8.0.0", "node-gyp": "^10.0.0", "proc-log": "^5.0.0", - "which": "^4.0.0" + "which": "^5.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/@npmcli/git": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-6.0.1.tgz", + "integrity": "sha512-BBWMMxeQzalmKadyimwb2/VVQyJB01PH0HhVSNLHNBDZN/M/h/02P6f8fxedIiFhpMj11SO9Ep5tKTBE7zL2nw==", + "dependencies": { + "@npmcli/promise-spawn": "^8.0.0", + "ini": "^5.0.0", + "lru-cache": "^10.0.1", + "npm-pick-manifest": "^10.0.0", + "proc-log": "^5.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^5.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/@npmcli/package-json": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.0.1.tgz", + "integrity": "sha512-YW6PZ99sc1Q4DINEY2td5z9Z3rwbbsx7CyCnOc7UXUUdePXh5gPi1UeaoQVmKQMVbIU7aOwX2l1OG5ZfjgGi5g==", + "dependencies": { + "@npmcli/git": "^6.0.0", + "glob": "^10.2.2", + "hosted-git-info": "^8.0.0", + "json-parse-even-better-errors": "^4.0.0", + "normalize-package-data": "^7.0.0", + "proc-log": "^5.0.0", + "semver": "^7.5.3" }, "engines": { "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/run-script/node_modules/@npmcli/promise-spawn": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.1.tgz", + "integrity": "sha512-ZscqKtJqy7oj6MgXEJcHQ1om4utU0Q84QtC28UVuiO6ALSO9sDPanXdu6Wd1oYhItW8fx2u96zRFUE8BuPlAjA==", + "dependencies": { + "which": "^5.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/hosted-git-info": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.0.tgz", - "integrity": "sha512-d+hsks580ts8k5ZYntlBX3ZtfECLvErB0OWJKRDC2aweZb3VybhvvkhIbveElgdg+aL7gMDtIuPJzheVLd2V+Q==", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", + "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", "dependencies": { - "which": "^4.0.0" + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/ini": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-5.0.0.tgz", + "integrity": "sha512-+N0ngpO3e7cRUWOJAS7qw0IZIVc6XPrW4MlFBdD066F2L4k1L6ker3hLqSq7iXxU5tgS4WGkIUElWn5vogAEnw==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/json-parse-even-better-errors": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-4.0.0.tgz", + "integrity": "sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/@npmcli/run-script/node_modules/normalize-package-data": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-7.0.0.tgz", + "integrity": "sha512-k6U0gKRIuNCTkwHGZqblCfLfBRh+w1vI6tBo+IeJwq2M8FUiOqhX7GH+GArQGScA7azd1WfyRCvxoXDO3hQDIA==", + "dependencies": { + "hosted-git-info": "^8.0.0", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/npm-install-checks": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.0.tgz", + "integrity": "sha512-bkTildVlofeMX7wiOaWk3PlW7YcBXAuEc7TWpOxwUgalG5ZvgT/ms+6OX9zt7iGLv4+VhKbRZhpOfgQJzk1YAw==", + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/npm-normalize-package-bin": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", + "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/npm-package-arg": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.0.tgz", + "integrity": "sha512-ZTE0hbwSdTNL+Stx2zxSqdu2KZfNDcrtrLdIk7XGnQFYBWYDho/ORvXtn5XEePcL3tFpGjHCV3X3xrtDh7eZ+A==", + "dependencies": { + "hosted-git-info": "^8.0.0", + "proc-log": "^5.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^6.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/npm-pick-manifest": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-10.0.0.tgz", + "integrity": "sha512-r4fFa4FqYY8xaM7fHecQ9Z2nE9hgNfJR+EmoKv0+chvzWkBcORX3r0FpTByP+CbOVJDladMXnPQGVN8PBLGuTQ==", + "dependencies": { + "npm-install-checks": "^7.1.0", + "npm-normalize-package-bin": "^4.0.0", + "npm-package-arg": "^12.0.0", + "semver": "^7.3.5" }, "engines": { "node": "^18.17.0 || >=20.5.0" @@ -1147,6 +1297,28 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/@npmcli/run-script/node_modules/validate-npm-package-name": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", + "integrity": "sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/@one-ini/wasm": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@one-ini/wasm/-/wasm-0.1.1.tgz", @@ -1257,6 +1429,17 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/@sigstore/sign/node_modules/@npmcli/fs": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", + "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@sigstore/sign/node_modules/agent-base": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", @@ -1268,6 +1451,28 @@ "node": ">= 14" } }, + "node_modules/@sigstore/sign/node_modules/cacache": { + "version": "18.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", + "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/@sigstore/sign/node_modules/https-proxy-agent": { "version": "7.0.5", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", @@ -1307,55 +1512,146 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@sigstore/tuf": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz", - "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==", + "node_modules/@sigstore/sign/node_modules/minipass-fetch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", + "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", "dependencies": { - "@sigstore/protobuf-specs": "^0.3.2", - "tuf-js": "^2.2.1" + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "node_modules/@sigstore/verify": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz", - "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==", + "node_modules/@sigstore/sign/node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "dependencies": { - "@sigstore/bundle": "^2.3.2", - "@sigstore/core": "^1.1.0", - "@sigstore/protobuf-specs": "^0.3.2" + "minipass": "^3.0.0", + "yallist": "^4.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">= 8" } }, - "node_modules/@sindresorhus/merge-streams": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", - "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", + "node_modules/@sigstore/sign/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=18" + "node": ">=8" + } + }, + "node_modules/@sigstore/sign/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@sinonjs/commons": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", - "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", - "dev": true, + "node_modules/@sigstore/sign/node_modules/ssri": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", + "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", "dependencies": { - "type-detect": "4.0.8" + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@sinonjs/fake-timers": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.2.tgz", - "integrity": "sha512-4Bb+oqXZTSTZ1q27Izly9lv8B9dlV61CROxPiVtywwzv5SnytJqhvYe6FclHYuXml4cd1VHPo1zd5PmTeJozvA==", + "node_modules/@sigstore/sign/node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/@sigstore/tuf": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz", + "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==", + "dependencies": { + "@sigstore/protobuf-specs": "^0.3.2", + "tuf-js": "^2.2.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/verify": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz", + "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==", + "dependencies": { + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.1.0", + "@sigstore/protobuf-specs": "^0.3.2" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sindresorhus/merge-streams": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", + "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.2.tgz", + "integrity": "sha512-4Bb+oqXZTSTZ1q27Izly9lv8B9dlV61CROxPiVtywwzv5SnytJqhvYe6FclHYuXml4cd1VHPo1zd5PmTeJozvA==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1" @@ -1582,39 +1878,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.10.tgz", - "integrity": "sha512-iXWlk+Cg/ag7gLvY0SfVucU8Kh2CjysYZjhhP70w9qI4MvSox4frrP+vDGvtQuzIcgD8+sxM6lZvCtdxGunTAA==", + "version": "3.5.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.11.tgz", + "integrity": "sha512-PwAdxs7/9Hc3ieBO12tXzmTD+Ln4qhT/56S+8DvrrZ4kLDn4Z/AMUr8tXJD0axiJBS0RKIoNaR0yMuQB9v9Udg==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.10", + "@vue/shared": "3.5.11", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.10.tgz", - "integrity": "sha512-DyxHC6qPcktwYGKOIy3XqnHRrrXyWR2u91AjP+nLkADko380srsC2DC3s7Y1Rk6YfOlxOlvEQKa9XXmLI+W4ZA==", + "version": "3.5.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.11.tgz", + "integrity": "sha512-pyGf8zdbDDRkBrEzf8p7BQlMKNNF5Fk/Cf/fQ6PiUz9at4OaUfyXW0dGJTo2Vl1f5U9jSLCNf0EZJEogLXoeew==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.10", - "@vue/shared": "3.5.10" + "@vue/compiler-core": "3.5.11", + "@vue/shared": "3.5.11" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.10.tgz", - "integrity": "sha512-to8E1BgpakV7224ZCm8gz1ZRSyjNCAWEplwFMWKlzCdP9DkMKhRRwt0WkCjY7jkzi/Vz3xgbpeig5Pnbly4Tow==", + "version": "3.5.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.11.tgz", + "integrity": "sha512-gsbBtT4N9ANXXepprle+X9YLg2htQk1sqH/qGJ/EApl+dgpUBdTv3yP7YlR535uHZY3n6XaR0/bKo0BgwwDniw==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.10", - "@vue/compiler-dom": "3.5.10", - "@vue/compiler-ssr": "3.5.10", - "@vue/shared": "3.5.10", + "@vue/compiler-core": "3.5.11", + "@vue/compiler-dom": "3.5.11", + "@vue/compiler-ssr": "3.5.11", + "@vue/shared": "3.5.11", "estree-walker": "^2.0.2", "magic-string": "^0.30.11", "postcss": "^8.4.47", @@ -1622,19 +1918,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.10.tgz", - "integrity": "sha512-hxP4Y3KImqdtyUKXDRSxKSRkSm1H9fCvhojEYrnaoWhE4w/y8vwWhnosJoPPe2AXm5sU7CSbYYAgkt2ZPhDz+A==", + "version": "3.5.11", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.11.tgz", + "integrity": "sha512-P4+GPjOuC2aFTk1Z4WANvEhyOykcvEd5bIj2KVNGKGfM745LaXGr++5njpdBTzVz5pZifdlR1kpYSJJpIlSePA==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.10", - "@vue/shared": "3.5.10" + "@vue/compiler-dom": "3.5.11", + "@vue/shared": "3.5.11" } }, "node_modules/@vue/shared": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.10.tgz", - "integrity": "sha512-VkkBhU97Ki+XJ0xvl4C9YJsIZ2uIlQ7HqPpZOS3m9VCvmROPaChZU6DexdMJqvz9tbgG+4EtFVrSuailUq5KGQ==", + "version": "3.5.11", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.11.tgz", + "integrity": "sha512-W8GgysJVnFo81FthhzurdRAWP/byq3q2qIw70e0JWblzVhjgOMiC2GyovXrZTFQJnFVryYaKGP3Tc9vYzYm6PQ==", "dev": true }, "node_modules/abbrev": { @@ -2103,11 +2399,11 @@ } }, "node_modules/cacache": { - "version": "18.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", - "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", "dependencies": { - "@npmcli/fs": "^3.1.0", + "@npmcli/fs": "^4.0.0", "fs-minipass": "^3.0.0", "glob": "^10.2.2", "lru-cache": "^10.0.1", @@ -2115,13 +2411,21 @@ "minipass-collect": "^2.0.1", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/cacache/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "engines": { + "node": ">=18" } }, "node_modules/cacache/node_modules/lru-cache": { @@ -2129,18 +2433,42 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, - "node_modules/cacache/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" + "node_modules/cacache/node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/tar": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cacache/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "engines": { + "node": ">=18" } }, "node_modules/caching-transform": { @@ -2207,9 +2535,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001664", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001664.tgz", - "integrity": "sha512-AmE7k4dXiNKQipgn7a2xg558IRqPN3jMQY/rOsbxDhrd0tyChwbITBfiwtnqz8bi2M5mIWbxAYBvk7W7QBUS2g==", + "version": "1.0.30001667", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz", + "integrity": "sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==", "dev": true, "funding": [ { @@ -3284,9 +3612,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.29.tgz", - "integrity": "sha512-PF8n2AlIhCKXQ+gTpiJi0VhcHDb69kYX4MtCiivctc2QD3XuNZ/XIOlbGzt7WAjjEev0TtaH6Cu3arZExm5DOw==", + "version": "1.5.32", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.32.tgz", + "integrity": "sha512-M+7ph0VGBQqqpTT2YrabjNKSQ2fEl9PVx6AK3N558gDH9NO8O6XN9SXXFWRo9u9PbEg/bWq+tjXQr+eXmxubCw==", "dev": true }, "node_modules/emittery": { @@ -3394,9 +3722,9 @@ } }, "node_modules/eslint": { - "version": "9.11.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.11.1.tgz", - "integrity": "sha512-MobhYKIoAO1s1e4VUrgx1l1Sk2JBR/Gqjjgw8+mfgoLE2xwsHur4gdfTxyTgShrhvdVFTaJSgMiQBl1jv/AWxg==", + "version": "9.12.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.12.0.tgz", + "integrity": "sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3404,11 +3732,11 @@ "@eslint/config-array": "^0.18.0", "@eslint/core": "^0.6.0", "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.11.1", + "@eslint/js": "9.12.0", "@eslint/plugin-kit": "^0.2.0", + "@humanfs/node": "^0.16.5", "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.3.0", - "@nodelib/fs.walk": "^1.2.8", + "@humanwhocodes/retry": "^0.3.1", "@types/estree": "^1.0.6", "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", @@ -3416,9 +3744,9 @@ "cross-spawn": "^7.0.2", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.0.2", - "eslint-visitor-keys": "^4.0.0", - "espree": "^10.1.0", + "eslint-scope": "^8.1.0", + "eslint-visitor-keys": "^4.1.0", + "espree": "^10.2.0", "esquery": "^1.5.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -3428,13 +3756,11 @@ "ignore": "^5.2.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", "json-stable-stringify-without-jsonify": "^1.0.1", "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", "text-table": "^0.2.0" }, "bin": { @@ -3519,9 +3845,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.3.0.tgz", - "integrity": "sha512-P7qDB/RckdKETpBM4CtjHRQ5qXByPmFhRi86sN3E+J+tySchq+RSOGGhI2hDIefmmKFuTi/1ACjqsnDJDDDfzg==", + "version": "50.3.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.3.1.tgz", + "integrity": "sha512-SY9oUuTMr6aWoJggUS40LtMjsRzJPB5ZT7F432xZIHK3EfHF+8i48GbUBpwanrtlL9l1gILNTHK9o8gEhYLcKA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.48.0", @@ -3610,15 +3936,6 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/eslint/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -3775,18 +4092,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/esmock": { "version": "2.6.7", "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.7.tgz", @@ -4353,9 +4658,9 @@ } }, "node_modules/globals": { - "version": "15.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.9.0.tgz", - "integrity": "sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA==", + "version": "15.10.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.10.0.tgz", + "integrity": "sha512-tqFIbz83w4Y5TCbtgjZjApohbuh7K9BxGYFm7ifwDR240tvdb7P9x+/9VvUKlmkPoiknoJtanI8UOrqxS3a7lQ==", "dev": true, "engines": { "node": ">=18" @@ -4799,15 +5104,6 @@ "node": ">=0.12.0" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", @@ -5202,15 +5498,15 @@ } }, "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", "dev": true, "bin": { "jsesc": "bin/jsesc" }, "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/json-buffer": { @@ -5426,12 +5722,12 @@ } }, "node_modules/make-fetch-happen": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.0.tgz", - "integrity": "sha512-/0z4kjybWroAwWuQJJgkA5yUKw/WGepJhjPdj6YW8+pn7lWs75zA9khVgvID/OMYAwRjq2MsLexKxttjIcfD4w==", + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.1.tgz", + "integrity": "sha512-Z1ndm71UQdcK362F5Wg4IFRBZq4MGeCz+uor5iPROkSjEWEoc1Zn7OSKPvmg01S9XOI8mr+GlRr+W4ABz4ZgdA==", "dependencies": { "@npmcli/agent": "^3.0.0", - "cacache": "^18.0.0", + "cacache": "^19.0.1", "http-cache-semantics": "^4.1.1", "minipass": "^7.0.2", "minipass-fetch": "^4.0.0", @@ -5446,34 +5742,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/make-fetch-happen/node_modules/minipass-fetch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.0.tgz", - "integrity": "sha512-2v6aXUXwLP1Epd/gc32HAMIWoczx+fZwEPRHm/VwtrJzRGwR1qGZXEYV3Zp8ZjjbwaZhMrM6uHV4KVkk+XCc2w==", - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^3.0.1" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/make-fetch-happen/node_modules/minizlib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz", - "integrity": "sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==", - "dependencies": { - "minipass": "^7.0.4", - "rimraf": "^5.0.5" - }, - "engines": { - "node": ">= 18" - } - }, "node_modules/make-fetch-happen/node_modules/proc-log": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", @@ -5482,31 +5750,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/make-fetch-happen/node_modules/rimraf": { - "version": "5.0.10", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", - "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", - "dependencies": { - "glob": "^10.3.7" - }, - "bin": { - "rimraf": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/make-fetch-happen/node_modules/ssri": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", - "integrity": "sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==", - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/markdown-it": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", @@ -5698,16 +5941,16 @@ } }, "node_modules/minipass-fetch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", - "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.0.tgz", + "integrity": "sha512-2v6aXUXwLP1Epd/gc32HAMIWoczx+fZwEPRHm/VwtrJzRGwR1qGZXEYV3Zp8ZjjbwaZhMrM6uHV4KVkk+XCc2w==", "dependencies": { "minipass": "^7.0.3", "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" + "minizlib": "^3.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" }, "optionalDependencies": { "encoding": "^0.1.13" @@ -5795,33 +6038,31 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz", + "integrity": "sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==", "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" + "minipass": "^7.0.4", + "rimraf": "^5.0.5" }, "engines": { - "node": ">= 8" + "node": ">= 18" } }, - "node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/minizlib/node_modules/rimraf": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", "dependencies": { - "yallist": "^4.0.0" + "glob": "^10.3.7" }, - "engines": { - "node": ">=8" + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/minizlib/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -6002,8 +6243,19 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/node-gyp/node_modules/agent-base": { - "version": "7.1.1", + "node_modules/node-gyp/node_modules/@npmcli/fs": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", + "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/agent-base": { + "version": "7.1.1", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", "dependencies": { @@ -6013,6 +6265,28 @@ "node": ">= 14" } }, + "node_modules/node-gyp/node_modules/cacache": { + "version": "18.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", + "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/node-gyp/node_modules/https-proxy-agent": { "version": "7.0.5", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", @@ -6052,6 +6326,97 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/node-gyp/node_modules/minipass-fetch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", + "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/node-gyp/node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/node-gyp/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/node-gyp/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/node-gyp/node_modules/ssri": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", + "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -6205,13 +6570,13 @@ } }, "node_modules/npm-registry-fetch": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-18.0.0.tgz", - "integrity": "sha512-PCLKGP4BPXpv8lufDynf7/Mea4h0/y9jHn9xYPQHlUm1/BR3BTfcCp9EMpXfDyHYomYDZM4Y00+y7NLhwFgyJg==", + "version": "18.0.1", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-18.0.1.tgz", + "integrity": "sha512-5XKlWmVtfTTmnU6rKBjjQDMdnFOVAH9t7D4DG1ZcsIDwkGYBTUl0fMnbzsVSM0t/HZRpyE1VMLZv9O0Bvkj3UA==", "dependencies": { "@npmcli/redact": "^3.0.0", "jsonparse": "^1.3.1", - "make-fetch-happen": "^13.0.0", + "make-fetch-happen": "^14.0.0", "minipass": "^7.0.2", "minipass-fetch": "^4.0.0", "minizlib": "^3.0.1", @@ -6238,34 +6603,6 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, - "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.0.tgz", - "integrity": "sha512-2v6aXUXwLP1Epd/gc32HAMIWoczx+fZwEPRHm/VwtrJzRGwR1qGZXEYV3Zp8ZjjbwaZhMrM6uHV4KVkk+XCc2w==", - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^3.0.1" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/npm-registry-fetch/node_modules/minizlib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz", - "integrity": "sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==", - "dependencies": { - "minipass": "^7.0.4", - "rimraf": "^5.0.5" - }, - "engines": { - "node": ">= 18" - } - }, "node_modules/npm-registry-fetch/node_modules/npm-package-arg": { "version": "12.0.0", "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.0.tgz", @@ -6288,20 +6625,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/npm-registry-fetch/node_modules/rimraf": { - "version": "5.0.10", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", - "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", - "dependencies": { - "glob": "^10.3.7" - }, - "bin": { - "rimraf": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/npm-registry-fetch/node_modules/validate-npm-package-name": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", @@ -6310,71 +6633,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/npm-registry-fetch/node_modules/@npmcli/agent": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", - "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", - "dependencies": { - "agent-base": "^7.1.0", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.1", - "lru-cache": "^10.0.1", - "socks-proxy-agent": "^8.0.3" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/npm-registry-fetch/node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/npm-registry-fetch/node_modules/https-proxy-agent": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", - "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", - "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", - "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", - "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "proc-log": "^4.2.0", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, "node_modules/npmlog": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", @@ -6820,97 +7078,31 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/@npmcli/fs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-4.0.0.tgz", - "integrity": "sha512-/xGlezI6xfGO9NwuJlnwz/K14qD1kCSAGtacBHnGzeAIuJGazcp45KP5NuyARXoKb7cwulAGWVsbeSxdG/cb0Q==", - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/pacote/node_modules/@npmcli/git": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-6.0.0.tgz", - "integrity": "sha512-ljc0tlFOFbM0bMSmiB33JWVMXNVltwPcadXoUbJGo/ROadmb/YuumUloZoQyMxaRa5xvZJwOQu8m0j1tGIbxLg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-6.0.1.tgz", + "integrity": "sha512-BBWMMxeQzalmKadyimwb2/VVQyJB01PH0HhVSNLHNBDZN/M/h/02P6f8fxedIiFhpMj11SO9Ep5tKTBE7zL2nw==", "dependencies": { "@npmcli/promise-spawn": "^8.0.0", "ini": "^5.0.0", "lru-cache": "^10.0.1", - "npm-pick-manifest": "^9.0.0", + "npm-pick-manifest": "^10.0.0", "proc-log": "^5.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^4.0.0" + "which": "^5.0.0" }, "engines": { "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/@npmcli/git/node_modules/hosted-git-info": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", - "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/git/node_modules/npm-package-arg": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.3.tgz", - "integrity": "sha512-sHGJy8sOC1YraBywpzQlIKBE4pBbGbiF95U6Auspzyem956E0+FtDtsx1ZxlOJkQCZ1AFXAY/yuvtFYrOxF+Bw==", - "dependencies": { - "hosted-git-info": "^7.0.0", - "proc-log": "^4.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/git/node_modules/npm-package-arg/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/git/node_modules/npm-pick-manifest": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", - "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", - "dependencies": { - "npm-install-checks": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^11.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/git/node_modules/validate-npm-package-name": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", - "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/pacote/node_modules/@npmcli/package-json": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.0.0.tgz", - "integrity": "sha512-6+SgO3DjUi0hTCP5ih+Z8xYq6ZIpUwp7A3CNDr5zGotXndqk97GBnvp3BeN0xDM/aGcHYWatJpHwse9xD8F9WA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.0.1.tgz", + "integrity": "sha512-YW6PZ99sc1Q4DINEY2td5z9Z3rwbbsx7CyCnOc7UXUUdePXh5gPi1UeaoQVmKQMVbIU7aOwX2l1OG5ZfjgGi5g==", "dependencies": { - "@npmcli/git": "^5.0.0", + "@npmcli/git": "^6.0.0", "glob": "^10.2.2", "hosted-git-info": "^8.0.0", "json-parse-even-better-errors": "^4.0.0", @@ -6922,164 +7114,17 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/@npmcli/git": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz", - "integrity": "sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ==", - "dependencies": { - "@npmcli/promise-spawn": "^7.0.0", - "ini": "^4.1.3", - "lru-cache": "^10.0.1", - "npm-pick-manifest": "^9.0.0", - "proc-log": "^4.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^4.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/@npmcli/git/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/@npmcli/promise-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz", - "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==", - "dependencies": { - "which": "^4.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/ini": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", - "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/npm-package-arg": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.3.tgz", - "integrity": "sha512-sHGJy8sOC1YraBywpzQlIKBE4pBbGbiF95U6Auspzyem956E0+FtDtsx1ZxlOJkQCZ1AFXAY/yuvtFYrOxF+Bw==", - "dependencies": { - "hosted-git-info": "^7.0.0", - "proc-log": "^4.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/npm-package-arg/node_modules/hosted-git-info": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", - "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/npm-package-arg/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/npm-pick-manifest": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", - "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", - "dependencies": { - "npm-install-checks": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^11.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/package-json/node_modules/validate-npm-package-name": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", - "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/pacote/node_modules/@npmcli/promise-spawn": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.0.tgz", - "integrity": "sha512-d+hsks580ts8k5ZYntlBX3ZtfECLvErB0OWJKRDC2aweZb3VybhvvkhIbveElgdg+aL7gMDtIuPJzheVLd2V+Q==", - "dependencies": { - "which": "^4.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/cacache": { - "version": "19.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", - "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.1.tgz", + "integrity": "sha512-ZscqKtJqy7oj6MgXEJcHQ1om4utU0Q84QtC28UVuiO6ALSO9sDPanXdu6Wd1oYhItW8fx2u96zRFUE8BuPlAjA==", "dependencies": { - "@npmcli/fs": "^4.0.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^7.0.2", - "ssri": "^12.0.0", - "tar": "^7.4.3", - "unique-filename": "^4.0.0" + "which": "^5.0.0" }, "engines": { "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/cacache/node_modules/tar": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", - "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", - "dependencies": { - "@isaacs/fs-minipass": "^4.0.0", - "chownr": "^3.0.0", - "minipass": "^7.1.2", - "minizlib": "^3.0.1", - "mkdirp": "^3.0.1", - "yallist": "^5.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/pacote/node_modules/chownr": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", - "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", - "engines": { - "node": ">=18" - } - }, "node_modules/pacote/node_modules/hosted-git-info": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", @@ -7102,42 +7147,16 @@ "node_modules/pacote/node_modules/json-parse-even-better-errors": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-4.0.0.tgz", - "integrity": "sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/pacote/node_modules/minizlib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz", - "integrity": "sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==", - "dependencies": { - "minipass": "^7.0.4", - "rimraf": "^5.0.5" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/pacote/node_modules/mkdirp": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", - "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", - "bin": { - "mkdirp": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "integrity": "sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==", + "engines": { + "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/pacote/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "node_modules/pacote/node_modules/normalize-package-data": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-7.0.0.tgz", @@ -7151,6 +7170,25 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/pacote/node_modules/npm-install-checks": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.0.tgz", + "integrity": "sha512-bkTildVlofeMX7wiOaWk3PlW7YcBXAuEc7TWpOxwUgalG5ZvgT/ms+6OX9zt7iGLv4+VhKbRZhpOfgQJzk1YAw==", + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/pacote/node_modules/npm-normalize-package-bin": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", + "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/pacote/node_modules/npm-package-arg": { "version": "12.0.0", "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.0.tgz", @@ -7179,25 +7217,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/npm-pick-manifest/node_modules/npm-install-checks": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.0.tgz", - "integrity": "sha512-bkTildVlofeMX7wiOaWk3PlW7YcBXAuEc7TWpOxwUgalG5ZvgT/ms+6OX9zt7iGLv4+VhKbRZhpOfgQJzk1YAw==", - "dependencies": { - "semver": "^7.1.1" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/npm-pick-manifest/node_modules/npm-normalize-package-bin": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", - "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/pacote/node_modules/proc-log": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", @@ -7206,53 +7225,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/rimraf": { - "version": "5.0.10", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", - "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", - "dependencies": { - "glob": "^10.3.7" - }, - "bin": { - "rimraf": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/pacote/node_modules/ssri": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", - "integrity": "sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==", - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/unique-filename": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-4.0.0.tgz", - "integrity": "sha512-XSnEewXmQ+veP7xX2dS5Q4yZAvO40cBN2MWkJ7D/6sW4Dg6wYBNwM1Vrnz1FhH5AdeLIlUXRI9e28z1YZi71NQ==", - "dependencies": { - "unique-slug": "^5.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/unique-slug": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-5.0.0.tgz", - "integrity": "sha512-9OdaqO5kwqR+1kVgHAhsp5vPNU0hnxRa26rBFNfNgM7M6pNtgzeBn3s/xbyCQL3dcjzOatcef6UUHpB/6MaETg==", - "dependencies": { - "imurmurhash": "^0.1.4" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/pacote/node_modules/validate-npm-package-name": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", @@ -7261,12 +7233,18 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/yallist": { + "node_modules/pacote/node_modules/which": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", - "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, "engines": { - "node": ">=18" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/parent-module": { @@ -8474,14 +8452,14 @@ "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==" }, "node_modules/ssri": { - "version": "10.0.6", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", - "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", + "integrity": "sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==", "dependencies": { "minipass": "^7.0.3" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/stack-utils": { @@ -8891,6 +8869,29 @@ "node": ">=8" } }, + "node_modules/tar/node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/tar/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -9136,6 +9137,17 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/tuf-js/node_modules/@npmcli/fs": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", + "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/tuf-js/node_modules/agent-base": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", @@ -9147,6 +9159,28 @@ "node": ">= 14" } }, + "node_modules/tuf-js/node_modules/cacache": { + "version": "18.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", + "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/tuf-js/node_modules/https-proxy-agent": { "version": "7.0.5", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", @@ -9186,6 +9220,97 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/tuf-js/node_modules/minipass-fetch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", + "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/tuf-js/node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tuf-js/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tuf-js/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tuf-js/node_modules/ssri": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", + "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -9249,25 +9374,25 @@ } }, "node_modules/unique-filename": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", - "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-4.0.0.tgz", + "integrity": "sha512-XSnEewXmQ+veP7xX2dS5Q4yZAvO40cBN2MWkJ7D/6sW4Dg6wYBNwM1Vrnz1FhH5AdeLIlUXRI9e28z1YZi71NQ==", "dependencies": { - "unique-slug": "^4.0.0" + "unique-slug": "^5.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/unique-slug": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", - "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-5.0.0.tgz", + "integrity": "sha512-9OdaqO5kwqR+1kVgHAhsp5vPNU0hnxRa26rBFNfNgM7M6pNtgzeBn3s/xbyCQL3dcjzOatcef6UUHpB/6MaETg==", "dependencies": { "imurmurhash": "^0.1.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/unique-string": { diff --git a/packages/project/package.json b/packages/project/package.json index d37427042bc..927e835316a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -131,7 +131,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^14.0.0", + "make-fetch-happen": "^14.0.1", "node-stream-zip": "^1.15.0", "pacote": "^19.0.0", "pretty-hrtime": "^1.0.3", @@ -159,12 +159,12 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.11.1", + "eslint": "^9.12.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.3.0", + "eslint-plugin-jsdoc": "^50.3.1", "esmock": "^2.6.7", - "globals": "^15.9.0", + "globals": "^15.10.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From 7a8a80059cdf596378ef43f37c9b8dc6e3384322 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 7 Oct 2024 05:46:07 +0000 Subject: [PATCH 1169/1272] [ui5-project][DEPENDENCY] Bump @npmcli/config from 8.3.4 to 9.0.0 (#773) --- packages/project/package-lock.json | 599 +++++++++-------------------- packages/project/package.json | 2 +- 2 files changed, 173 insertions(+), 428 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b1c6c15b287..1e7b2850c80 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "4.0.3", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^8.3.4", + "@npmcli/config": "^9.0.0", "@ui5/fs": "^4.0.1", "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", @@ -993,21 +993,43 @@ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/@npmcli/config": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-8.3.4.tgz", - "integrity": "sha512-01rtHedemDNhUXdicU7s+QYz/3JyV5Naj84cvdXGH4mgCdL+agmSYaLF4LUG4vMCLzhBO8YtS0gPpH1FGvbgAw==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-9.0.0.tgz", + "integrity": "sha512-P5Vi16Y+c8E0prGIzX112ug7XxqfaPFUVW/oXAV+2VsxplKZEnJozqZ0xnK8V8w/SEsBf+TXhUihrEIAU4CA5Q==", "dependencies": { - "@npmcli/map-workspaces": "^3.0.2", - "@npmcli/package-json": "^5.1.1", + "@npmcli/map-workspaces": "^4.0.1", + "@npmcli/package-json": "^6.0.1", "ci-info": "^4.0.0", - "ini": "^4.1.2", - "nopt": "^7.2.1", - "proc-log": "^4.2.0", + "ini": "^5.0.0", + "nopt": "^8.0.0", + "proc-log": "^5.0.0", "semver": "^7.3.5", "walk-up-path": "^3.0.1" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/config/node_modules/nopt": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.0.0.tgz", + "integrity": "sha512-1L/fTJ4UmV/lUxT2Uf006pfZKTvAgCF+chz+0OgBHO8u2Z67pE7AaAUUj7CJy0lXqHmymUvGFt6NE9R3HER0yw==", + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/config/node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "engines": { + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/fs": { @@ -1022,22 +1044,22 @@ } }, "node_modules/@npmcli/git": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz", - "integrity": "sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-6.0.1.tgz", + "integrity": "sha512-BBWMMxeQzalmKadyimwb2/VVQyJB01PH0HhVSNLHNBDZN/M/h/02P6f8fxedIiFhpMj11SO9Ep5tKTBE7zL2nw==", "dependencies": { - "@npmcli/promise-spawn": "^7.0.0", - "ini": "^4.1.3", + "@npmcli/promise-spawn": "^8.0.0", + "ini": "^5.0.0", "lru-cache": "^10.0.1", - "npm-pick-manifest": "^9.0.0", - "proc-log": "^4.0.0", + "npm-pick-manifest": "^10.0.0", + "proc-log": "^5.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^4.0.0" + "which": "^5.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/git/node_modules/lru-cache": { @@ -1045,6 +1067,28 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, + "node_modules/@npmcli/git/node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/git/node_modules/which": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/@npmcli/installed-package-contents": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-3.0.0.tgz", @@ -1060,34 +1104,26 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/installed-package-contents/node_modules/npm-normalize-package-bin": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", - "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/@npmcli/map-workspaces": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz", - "integrity": "sha512-tkYs0OYnzQm6iIRdfy+LcLBjcKuQCeE5YLb8KnrIlutJfheNaPvPpgoFEyEFgbjzl5PLZ3IA/BWAwRU0eHuQDA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-4.0.1.tgz", + "integrity": "sha512-g5H8ljH7Z+4T1ASsfcL09gZl4YGw6M4GbjzPt6HgE+pCRSKC4nlNc4nY75zshi88eEHcdoh3Q8XgWFkGKoVOPw==", "dependencies": { - "@npmcli/name-from-folder": "^2.0.0", + "@npmcli/name-from-folder": "^3.0.0", + "@npmcli/package-json": "^6.0.0", "glob": "^10.2.2", - "minimatch": "^9.0.0", - "read-package-json-fast": "^3.0.0" + "minimatch": "^9.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/name-from-folder": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz", - "integrity": "sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-3.0.0.tgz", + "integrity": "sha512-61cDL8LUc9y80fXn+lir+iVt8IS0xHqEKwPu/5jCjxQTVoSCmkXvw4vbMrzAMtmghz3/AkiBjhHkDKUH+kf7kA==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@npmcli/node-gyp": { @@ -1099,77 +1135,6 @@ } }, "node_modules/@npmcli/package-json": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.1.tgz", - "integrity": "sha512-f7zYC6kQautXHvNbLEWgD/uGu1+xCn9izgqBfgItWSx22U0ZDekxN08A1vM8cTxj/cRVe0Q94Ode+tdoYmIOOQ==", - "dependencies": { - "@npmcli/git": "^5.0.0", - "glob": "^10.2.2", - "hosted-git-info": "^7.0.0", - "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^6.0.0", - "proc-log": "^4.0.0", - "semver": "^7.5.3" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/promise-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz", - "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==", - "dependencies": { - "which": "^4.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/redact": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.0.0.tgz", - "integrity": "sha512-/1uFzjVcfzqrgCeGW7+SZ4hv0qLWmKXVzFahZGJ6QuJBj6Myt9s17+JL86i76NV9YSnJRcGXJYQbAU0rn1YTCQ==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/run-script": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-9.0.1.tgz", - "integrity": "sha512-q9C0uHrb6B6cm3qXVM32UmpqTKuFGbtP23O2K5sLvPMz2hilKd0ptqGXSpuunOuOmPQb/aT5F/kCXFc1P2gO/A==", - "dependencies": { - "@npmcli/node-gyp": "^4.0.0", - "@npmcli/package-json": "^6.0.0", - "@npmcli/promise-spawn": "^8.0.0", - "node-gyp": "^10.0.0", - "proc-log": "^5.0.0", - "which": "^5.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/@npmcli/git": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-6.0.1.tgz", - "integrity": "sha512-BBWMMxeQzalmKadyimwb2/VVQyJB01PH0HhVSNLHNBDZN/M/h/02P6f8fxedIiFhpMj11SO9Ep5tKTBE7zL2nw==", - "dependencies": { - "@npmcli/promise-spawn": "^8.0.0", - "ini": "^5.0.0", - "lru-cache": "^10.0.1", - "npm-pick-manifest": "^10.0.0", - "proc-log": "^5.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^5.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/@npmcli/package-json": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.0.1.tgz", "integrity": "sha512-YW6PZ99sc1Q4DINEY2td5z9Z3rwbbsx7CyCnOc7UXUUdePXh5gPi1UeaoQVmKQMVbIU7aOwX2l1OG5ZfjgGi5g==", @@ -1186,18 +1151,7 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/run-script/node_modules/@npmcli/promise-spawn": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.1.tgz", - "integrity": "sha512-ZscqKtJqy7oj6MgXEJcHQ1om4utU0Q84QtC28UVuiO6ALSO9sDPanXdu6Wd1oYhItW8fx2u96zRFUE8BuPlAjA==", - "dependencies": { - "which": "^5.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/hosted-git-info": { + "node_modules/@npmcli/package-json/node_modules/hosted-git-info": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", @@ -1208,28 +1162,12 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/run-script/node_modules/ini": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-5.0.0.tgz", - "integrity": "sha512-+N0ngpO3e7cRUWOJAS7qw0IZIVc6XPrW4MlFBdD066F2L4k1L6ker3hLqSq7iXxU5tgS4WGkIUElWn5vogAEnw==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/json-parse-even-better-errors": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-4.0.0.tgz", - "integrity": "sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/lru-cache": { + "node_modules/@npmcli/package-json/node_modules/lru-cache": { "version": "10.4.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, - "node_modules/@npmcli/run-script/node_modules/normalize-package-data": { + "node_modules/@npmcli/package-json/node_modules/normalize-package-data": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-7.0.0.tgz", "integrity": "sha512-k6U0gKRIuNCTkwHGZqblCfLfBRh+w1vI6tBo+IeJwq2M8FUiOqhX7GH+GArQGScA7azd1WfyRCvxoXDO3hQDIA==", @@ -1242,48 +1180,58 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/run-script/node_modules/npm-install-checks": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.0.tgz", - "integrity": "sha512-bkTildVlofeMX7wiOaWk3PlW7YcBXAuEc7TWpOxwUgalG5ZvgT/ms+6OX9zt7iGLv4+VhKbRZhpOfgQJzk1YAw==", - "dependencies": { - "semver": "^7.1.1" - }, + "node_modules/@npmcli/package-json/node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", "engines": { "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/run-script/node_modules/npm-normalize-package-bin": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", - "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", + "node_modules/@npmcli/promise-spawn": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.1.tgz", + "integrity": "sha512-ZscqKtJqy7oj6MgXEJcHQ1om4utU0Q84QtC28UVuiO6ALSO9sDPanXdu6Wd1oYhItW8fx2u96zRFUE8BuPlAjA==", + "dependencies": { + "which": "^5.0.0" + }, "engines": { "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/run-script/node_modules/npm-package-arg": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.0.tgz", - "integrity": "sha512-ZTE0hbwSdTNL+Stx2zxSqdu2KZfNDcrtrLdIk7XGnQFYBWYDho/ORvXtn5XEePcL3tFpGjHCV3X3xrtDh7eZ+A==", + "node_modules/@npmcli/promise-spawn/node_modules/which": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", "dependencies": { - "hosted-git-info": "^8.0.0", - "proc-log": "^5.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^6.0.0" + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" }, "engines": { "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/run-script/node_modules/npm-pick-manifest": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-10.0.0.tgz", - "integrity": "sha512-r4fFa4FqYY8xaM7fHecQ9Z2nE9hgNfJR+EmoKv0+chvzWkBcORX3r0FpTByP+CbOVJDladMXnPQGVN8PBLGuTQ==", + "node_modules/@npmcli/redact": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.0.0.tgz", + "integrity": "sha512-/1uFzjVcfzqrgCeGW7+SZ4hv0qLWmKXVzFahZGJ6QuJBj6Myt9s17+JL86i76NV9YSnJRcGXJYQbAU0rn1YTCQ==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/run-script": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-9.0.1.tgz", + "integrity": "sha512-q9C0uHrb6B6cm3qXVM32UmpqTKuFGbtP23O2K5sLvPMz2hilKd0ptqGXSpuunOuOmPQb/aT5F/kCXFc1P2gO/A==", "dependencies": { - "npm-install-checks": "^7.1.0", - "npm-normalize-package-bin": "^4.0.0", - "npm-package-arg": "^12.0.0", - "semver": "^7.3.5" + "@npmcli/node-gyp": "^4.0.0", + "@npmcli/package-json": "^6.0.0", + "@npmcli/promise-spawn": "^8.0.0", + "node-gyp": "^10.0.0", + "proc-log": "^5.0.0", + "which": "^5.0.0" }, "engines": { "node": "^18.17.0 || >=20.5.0" @@ -1297,14 +1245,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/run-script/node_modules/validate-npm-package-name": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", - "integrity": "sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/@npmcli/run-script/node_modules/which": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", @@ -4967,11 +4907,11 @@ "dev": true }, "node_modules/ini": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", - "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-5.0.0.tgz", + "integrity": "sha512-+N0ngpO3e7cRUWOJAS7qw0IZIVc6XPrW4MlFBdD066F2L4k1L6ker3hLqSq7iXxU5tgS4WGkIUElWn5vogAEnw==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/ip-address": { @@ -5516,11 +5456,11 @@ "dev": true }, "node_modules/json-parse-even-better-errors": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", - "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-4.0.0.tgz", + "integrity": "sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/json-schema-traverse": { @@ -6503,45 +6443,61 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/npm-bundled/node_modules/npm-normalize-package-bin": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", - "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/npm-install-checks": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", - "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.0.tgz", + "integrity": "sha512-bkTildVlofeMX7wiOaWk3PlW7YcBXAuEc7TWpOxwUgalG5ZvgT/ms+6OX9zt7iGLv4+VhKbRZhpOfgQJzk1YAw==", "dependencies": { "semver": "^7.1.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-normalize-package-bin": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", - "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", + "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-package-arg": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.3.tgz", - "integrity": "sha512-sHGJy8sOC1YraBywpzQlIKBE4pBbGbiF95U6Auspzyem956E0+FtDtsx1ZxlOJkQCZ1AFXAY/yuvtFYrOxF+Bw==", + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.0.tgz", + "integrity": "sha512-ZTE0hbwSdTNL+Stx2zxSqdu2KZfNDcrtrLdIk7XGnQFYBWYDho/ORvXtn5XEePcL3tFpGjHCV3X3xrtDh7eZ+A==", "dependencies": { - "hosted-git-info": "^7.0.0", - "proc-log": "^4.0.0", + "hosted-git-info": "^8.0.0", + "proc-log": "^5.0.0", "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" + "validate-npm-package-name": "^6.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/npm-package-arg/node_modules/hosted-git-info": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", + "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/npm-package-arg/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/npm-package-arg/node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "engines": { + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-packlist": { @@ -6556,17 +6512,17 @@ } }, "node_modules/npm-pick-manifest": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", - "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-10.0.0.tgz", + "integrity": "sha512-r4fFa4FqYY8xaM7fHecQ9Z2nE9hgNfJR+EmoKv0+chvzWkBcORX3r0FpTByP+CbOVJDladMXnPQGVN8PBLGuTQ==", "dependencies": { - "npm-install-checks": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^11.0.0", + "npm-install-checks": "^7.1.0", + "npm-normalize-package-bin": "^4.0.0", + "npm-package-arg": "^12.0.0", "semver": "^7.3.5" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-registry-fetch": { @@ -6587,36 +6543,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/npm-registry-fetch/node_modules/hosted-git-info": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", - "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/npm-registry-fetch/node_modules/npm-package-arg": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.0.tgz", - "integrity": "sha512-ZTE0hbwSdTNL+Stx2zxSqdu2KZfNDcrtrLdIk7XGnQFYBWYDho/ORvXtn5XEePcL3tFpGjHCV3X3xrtDh7eZ+A==", - "dependencies": { - "hosted-git-info": "^8.0.0", - "proc-log": "^5.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^6.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/npm-registry-fetch/node_modules/proc-log": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", @@ -6625,14 +6551,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/npm-registry-fetch/node_modules/validate-npm-package-name": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", - "integrity": "sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/npmlog": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", @@ -7078,145 +6996,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/@npmcli/git": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-6.0.1.tgz", - "integrity": "sha512-BBWMMxeQzalmKadyimwb2/VVQyJB01PH0HhVSNLHNBDZN/M/h/02P6f8fxedIiFhpMj11SO9Ep5tKTBE7zL2nw==", - "dependencies": { - "@npmcli/promise-spawn": "^8.0.0", - "ini": "^5.0.0", - "lru-cache": "^10.0.1", - "npm-pick-manifest": "^10.0.0", - "proc-log": "^5.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^5.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/package-json": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.0.1.tgz", - "integrity": "sha512-YW6PZ99sc1Q4DINEY2td5z9Z3rwbbsx7CyCnOc7UXUUdePXh5gPi1UeaoQVmKQMVbIU7aOwX2l1OG5ZfjgGi5g==", - "dependencies": { - "@npmcli/git": "^6.0.0", - "glob": "^10.2.2", - "hosted-git-info": "^8.0.0", - "json-parse-even-better-errors": "^4.0.0", - "normalize-package-data": "^7.0.0", - "proc-log": "^5.0.0", - "semver": "^7.5.3" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/promise-spawn": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.1.tgz", - "integrity": "sha512-ZscqKtJqy7oj6MgXEJcHQ1om4utU0Q84QtC28UVuiO6ALSO9sDPanXdu6Wd1oYhItW8fx2u96zRFUE8BuPlAjA==", - "dependencies": { - "which": "^5.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/hosted-git-info": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", - "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/ini": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-5.0.0.tgz", - "integrity": "sha512-+N0ngpO3e7cRUWOJAS7qw0IZIVc6XPrW4MlFBdD066F2L4k1L6ker3hLqSq7iXxU5tgS4WGkIUElWn5vogAEnw==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/json-parse-even-better-errors": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-4.0.0.tgz", - "integrity": "sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/pacote/node_modules/normalize-package-data": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-7.0.0.tgz", - "integrity": "sha512-k6U0gKRIuNCTkwHGZqblCfLfBRh+w1vI6tBo+IeJwq2M8FUiOqhX7GH+GArQGScA7azd1WfyRCvxoXDO3hQDIA==", - "dependencies": { - "hosted-git-info": "^8.0.0", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/npm-install-checks": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.0.tgz", - "integrity": "sha512-bkTildVlofeMX7wiOaWk3PlW7YcBXAuEc7TWpOxwUgalG5ZvgT/ms+6OX9zt7iGLv4+VhKbRZhpOfgQJzk1YAw==", - "dependencies": { - "semver": "^7.1.1" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/npm-normalize-package-bin": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz", - "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/npm-package-arg": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.0.tgz", - "integrity": "sha512-ZTE0hbwSdTNL+Stx2zxSqdu2KZfNDcrtrLdIk7XGnQFYBWYDho/ORvXtn5XEePcL3tFpGjHCV3X3xrtDh7eZ+A==", - "dependencies": { - "hosted-git-info": "^8.0.0", - "proc-log": "^5.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^6.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/npm-pick-manifest": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-10.0.0.tgz", - "integrity": "sha512-r4fFa4FqYY8xaM7fHecQ9Z2nE9hgNfJR+EmoKv0+chvzWkBcORX3r0FpTByP+CbOVJDladMXnPQGVN8PBLGuTQ==", - "dependencies": { - "npm-install-checks": "^7.1.0", - "npm-normalize-package-bin": "^4.0.0", - "npm-package-arg": "^12.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/pacote/node_modules/proc-log": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", @@ -7225,28 +7004,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/validate-npm-package-name": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", - "integrity": "sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/which": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", - "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -7678,18 +7435,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-package-json-fast": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", - "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", - "dependencies": { - "json-parse-even-better-errors": "^3.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/read-package-up": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/read-package-up/-/read-package-up-11.0.0.tgz", @@ -9482,11 +9227,11 @@ } }, "node_modules/validate-npm-package-name": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", - "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", + "integrity": "sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/walk-up-path": { diff --git a/packages/project/package.json b/packages/project/package.json index 927e835316a..02a5c3b877b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^8.3.4", + "@npmcli/config": "^9.0.0", "@ui5/fs": "^4.0.1", "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", From af5137d724587f0987746c65e9134bb2bf602318 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 13 Oct 2024 02:20:14 +0000 Subject: [PATCH 1170/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 421 ++++++++++++----------------- packages/project/package.json | 4 +- 2 files changed, 178 insertions(+), 247 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 1e7b2850c80..6bf8b40cb26 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,9 +43,9 @@ "eslint": "^9.12.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.3.1", + "eslint-plugin-jsdoc": "^50.3.2", "esmock": "^2.6.7", - "globals": "^15.10.0", + "globals": "^15.11.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -96,18 +96,18 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.7.tgz", - "integrity": "sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.8.tgz", + "integrity": "sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.7.tgz", - "integrity": "sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.8.tgz", + "integrity": "sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -116,10 +116,10 @@ "@babel/helper-compilation-targets": "^7.25.7", "@babel/helper-module-transforms": "^7.25.7", "@babel/helpers": "^7.25.7", - "@babel/parser": "^7.25.7", + "@babel/parser": "^7.25.8", "@babel/template": "^7.25.7", "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.7", + "@babel/types": "^7.25.8", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -341,12 +341,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.7.tgz", - "integrity": "sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.8.tgz", + "integrity": "sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==", "dev": true, "dependencies": { - "@babel/types": "^7.25.7" + "@babel/types": "^7.25.8" }, "bin": { "parser": "bin/babel-parser.js" @@ -397,9 +397,9 @@ } }, "node_modules/@babel/types": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.7.tgz", - "integrity": "sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.8.tgz", + "integrity": "sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.25.7", @@ -1010,28 +1010,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/config/node_modules/nopt": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.0.0.tgz", - "integrity": "sha512-1L/fTJ4UmV/lUxT2Uf006pfZKTvAgCF+chz+0OgBHO8u2Z67pE7AaAUUj7CJy0lXqHmymUvGFt6NE9R3HER0yw==", - "dependencies": { - "abbrev": "^2.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/config/node_modules/proc-log": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", - "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/@npmcli/fs": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-4.0.0.tgz", @@ -1067,28 +1045,6 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, - "node_modules/@npmcli/git/node_modules/proc-log": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", - "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/git/node_modules/which": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", - "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/@npmcli/installed-package-contents": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-3.0.0.tgz", @@ -1151,43 +1107,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/package-json/node_modules/hosted-git-info": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", - "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/package-json/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/@npmcli/package-json/node_modules/normalize-package-data": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-7.0.0.tgz", - "integrity": "sha512-k6U0gKRIuNCTkwHGZqblCfLfBRh+w1vI6tBo+IeJwq2M8FUiOqhX7GH+GArQGScA7azd1WfyRCvxoXDO3hQDIA==", - "dependencies": { - "hosted-git-info": "^8.0.0", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/package-json/node_modules/proc-log": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", - "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/@npmcli/promise-spawn": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.1.tgz", @@ -1199,20 +1118,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/promise-spawn/node_modules/which": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", - "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/@npmcli/redact": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.0.0.tgz", @@ -1237,28 +1142,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/run-script/node_modules/proc-log": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", - "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/which": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", - "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/@one-ini/wasm": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@one-ini/wasm/-/wasm-0.1.1.tgz", @@ -1505,6 +1388,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@sigstore/sign/node_modules/proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@sigstore/sign/node_modules/ssri": { "version": "10.0.6", "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", @@ -1818,39 +1709,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.11.tgz", - "integrity": "sha512-PwAdxs7/9Hc3ieBO12tXzmTD+Ln4qhT/56S+8DvrrZ4kLDn4Z/AMUr8tXJD0axiJBS0RKIoNaR0yMuQB9v9Udg==", + "version": "3.5.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.12.tgz", + "integrity": "sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.11", + "@vue/shared": "3.5.12", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.11.tgz", - "integrity": "sha512-pyGf8zdbDDRkBrEzf8p7BQlMKNNF5Fk/Cf/fQ6PiUz9at4OaUfyXW0dGJTo2Vl1f5U9jSLCNf0EZJEogLXoeew==", + "version": "3.5.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.12.tgz", + "integrity": "sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.11", - "@vue/shared": "3.5.11" + "@vue/compiler-core": "3.5.12", + "@vue/shared": "3.5.12" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.11.tgz", - "integrity": "sha512-gsbBtT4N9ANXXepprle+X9YLg2htQk1sqH/qGJ/EApl+dgpUBdTv3yP7YlR535uHZY3n6XaR0/bKo0BgwwDniw==", + "version": "3.5.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.12.tgz", + "integrity": "sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.11", - "@vue/compiler-dom": "3.5.11", - "@vue/compiler-ssr": "3.5.11", - "@vue/shared": "3.5.11", + "@vue/compiler-core": "3.5.12", + "@vue/compiler-dom": "3.5.12", + "@vue/compiler-ssr": "3.5.12", + "@vue/shared": "3.5.12", "estree-walker": "^2.0.2", "magic-string": "^0.30.11", "postcss": "^8.4.47", @@ -1858,19 +1749,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.11", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.11.tgz", - "integrity": "sha512-P4+GPjOuC2aFTk1Z4WANvEhyOykcvEd5bIj2KVNGKGfM745LaXGr++5njpdBTzVz5pZifdlR1kpYSJJpIlSePA==", + "version": "3.5.12", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.12.tgz", + "integrity": "sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.11", - "@vue/shared": "3.5.11" + "@vue/compiler-dom": "3.5.12", + "@vue/shared": "3.5.12" } }, "node_modules/@vue/shared": { - "version": "3.5.11", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.11.tgz", - "integrity": "sha512-W8GgysJVnFo81FthhzurdRAWP/byq3q2qIw70e0JWblzVhjgOMiC2GyovXrZTFQJnFVryYaKGP3Tc9vYzYm6PQ==", + "version": "3.5.12", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", + "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", "dev": true }, "node_modules/abbrev": { @@ -2475,9 +2366,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001667", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz", - "integrity": "sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==", + "version": "1.0.30001668", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001668.tgz", + "integrity": "sha512-nWLrdxqCdblixUO+27JtGJJE/txpJlyUy5YN1u53wLZkP0emYCo5zgS6QYft7VUYR42LGgi/S5hdLZTrnyIddw==", "dev": true, "funding": [ { @@ -3552,9 +3443,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.32", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.32.tgz", - "integrity": "sha512-M+7ph0VGBQqqpTT2YrabjNKSQ2fEl9PVx6AK3N558gDH9NO8O6XN9SXXFWRo9u9PbEg/bWq+tjXQr+eXmxubCw==", + "version": "1.5.36", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.36.tgz", + "integrity": "sha512-HYTX8tKge/VNp6FGO+f/uVDmUkq+cEfcxYhKf15Akc4M5yxt5YmorwlAitKWjWhWQnKcDRBAQKXkhqqXMqcrjw==", "dev": true }, "node_modules/emittery": { @@ -3785,9 +3676,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.3.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.3.1.tgz", - "integrity": "sha512-SY9oUuTMr6aWoJggUS40LtMjsRzJPB5ZT7F432xZIHK3EfHF+8i48GbUBpwanrtlL9l1gILNTHK9o8gEhYLcKA==", + "version": "50.3.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.3.2.tgz", + "integrity": "sha512-TjgZocG53N3a84PdCFGqVMWLWwDitOUuKjlJftwTu/iTiD7N/Q2Q3eEy/Q4GfJqpM4rTJCkzUYWQfol6RZNDcA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.48.0", @@ -4598,9 +4489,9 @@ } }, "node_modules/globals": { - "version": "15.10.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.10.0.tgz", - "integrity": "sha512-tqFIbz83w4Y5TCbtgjZjApohbuh7K9BxGYFm7ifwDR240tvdb7P9x+/9VvUKlmkPoiknoJtanI8UOrqxS3a7lQ==", + "version": "15.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.11.0.tgz", + "integrity": "sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==", "dev": true, "engines": { "node": ">=18" @@ -4699,14 +4590,14 @@ } }, "node_modules/hosted-git-info": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", - "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", + "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", "dependencies": { "lru-cache": "^10.0.1" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/hosted-git-info/node_modules/lru-cache": { @@ -5342,6 +5233,21 @@ "node": ">=14" } }, + "node_modules/js-beautify/node_modules/nopt": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "dev": true, + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/js-cookie": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", @@ -5629,9 +5535,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.11", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", - "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", + "version": "0.30.12", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.12.tgz", + "integrity": "sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" @@ -5682,14 +5588,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/make-fetch-happen/node_modules/proc-log": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", - "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/markdown-it": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", @@ -6305,6 +6203,20 @@ "node": ">=8" } }, + "node_modules/node-gyp/node_modules/nopt": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/node-gyp/node_modules/p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -6319,6 +6231,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/node-gyp/node_modules/proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/node-gyp/node_modules/ssri": { "version": "10.0.6", "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", @@ -6352,6 +6272,20 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/node-gyp/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, "node_modules/node-gyp/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -6397,9 +6331,9 @@ } }, "node_modules/nopt": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", - "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.0.0.tgz", + "integrity": "sha512-1L/fTJ4UmV/lUxT2Uf006pfZKTvAgCF+chz+0OgBHO8u2Z67pE7AaAUUj7CJy0lXqHmymUvGFt6NE9R3HER0yw==", "dependencies": { "abbrev": "^2.0.0" }, @@ -6407,20 +6341,20 @@ "nopt": "bin/nopt.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/normalize-package-data": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", - "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-7.0.0.tgz", + "integrity": "sha512-k6U0gKRIuNCTkwHGZqblCfLfBRh+w1vI6tBo+IeJwq2M8FUiOqhX7GH+GArQGScA7azd1WfyRCvxoXDO3hQDIA==", "dependencies": { - "hosted-git-info": "^7.0.0", + "hosted-git-info": "^8.0.0", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/normalize-path": { @@ -6476,30 +6410,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/npm-package-arg/node_modules/hosted-git-info": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", - "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/npm-package-arg/node_modules/proc-log": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", - "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/npm-packlist": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-9.0.0.tgz", @@ -6543,14 +6453,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/npm-registry-fetch/node_modules/proc-log": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", - "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/npmlog": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", @@ -6996,14 +6898,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/proc-log": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", - "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -7340,11 +7234,11 @@ } }, "node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/process-nextick-args": { @@ -7480,6 +7374,35 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", + "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/read-pkg/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", + "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==", + "dependencies": { + "hosted-git-info": "^7.0.0", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/read-pkg/node_modules/parse-json": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.1.0.tgz", @@ -8457,9 +8380,9 @@ } }, "node_modules/synckit": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz", - "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==", + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz", + "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==", "dev": true, "dependencies": { "@pkgr/core": "^0.1.0", @@ -9018,6 +8941,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/tuf-js/node_modules/proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/tuf-js/node_modules/ssri": { "version": "10.0.6", "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", @@ -9265,9 +9196,9 @@ } }, "node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", "dependencies": { "isexe": "^3.1.1" }, @@ -9275,7 +9206,7 @@ "node-which": "bin/which.js" }, "engines": { - "node": "^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/which-module": { diff --git a/packages/project/package.json b/packages/project/package.json index 02a5c3b877b..abbca8a37bb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -162,9 +162,9 @@ "eslint": "^9.12.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.3.1", + "eslint-plugin-jsdoc": "^50.3.2", "esmock": "^2.6.7", - "globals": "^15.10.0", + "globals": "^15.11.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From 4eeff840378ebb514970e7279c448f2c4b63ce4d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Oct 2024 05:04:36 +0000 Subject: [PATCH 1171/1272] [ui5-project]Bump coverallsapp/github-action from 2.3.0 to 2.3.1 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.3.0 to 2.3.1. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v2.3.0...v2.3.1) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 232d4b858a8..a0dcf2adcc6 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v2.3.0 + uses: coverallsapp/github-action@v2.3.1 From 8c88bb94f77eced8dcbb09ad3665d7e9f769f003 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 20 Oct 2024 02:20:15 +0000 Subject: [PATCH 1172/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 636 ++++++----------------------- packages/project/package.json | 12 +- 2 files changed, 127 insertions(+), 521 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6bf8b40cb26..ac27b14b6ec 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -20,9 +20,9 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^14.0.1", + "make-fetch-happen": "^14.0.2", "node-stream-zip": "^1.15.0", - "pacote": "^19.0.0", + "pacote": "^19.0.1", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", @@ -40,18 +40,18 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.12.0", + "eslint": "^9.13.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.3.2", - "esmock": "^2.6.7", + "eslint-plugin-jsdoc": "^50.4.3", + "esmock": "^2.6.9", "globals": "^15.11.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", - "jsdoc": "^4.0.3", + "jsdoc": "^4.0.4", "nyc": "^17.1.0", "open-cli": "^8.0.0", "sinon": "^19.0.2", @@ -411,9 +411,9 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.48.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.48.0.tgz", - "integrity": "sha512-G6QUWIcC+KvSwXNsJyDTHvqUdNoAVJPPgkc3+Uk4WBKqZvoXhlvazOgm9aL0HwihJLQf0l+tOE2UFzXBqCqgDw==", + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.49.0.tgz", + "integrity": "sha512-xjZTSFgECpb9Ohuk5yMX5RhUEbfeQcuOp8IF60e+wyzWEF0M5xeSgqsfLtvPEX8BIyOX9saZqzuGPmZ8oWc+5Q==", "dev": true, "dependencies": { "comment-parser": "1.4.1", @@ -497,9 +497,9 @@ } }, "node_modules/@eslint/core": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.6.0.tgz", - "integrity": "sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.7.0.tgz", + "integrity": "sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -563,9 +563,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.12.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.12.0.tgz", - "integrity": "sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA==", + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.13.0.tgz", + "integrity": "sha512-IFLyoY4d72Z5y/6o/BazFBezupzI/taV8sGumxTAVw3lXG9A6md1Dc34T9s1FoD/an9pJH8RHbAxsaEbBed9lA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -581,9 +581,9 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.0.tgz", - "integrity": "sha512-vH9PiIMMwvhCx31Af3HiGzsVNULDbyVkHXwlemn/B0TFj/00ho3y55efXrUZTfQipxoHC5u4xq6zblww1zm1Ig==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.1.tgz", + "integrity": "sha512-HFZ4Mp26nbWk9d/BpvP0YNL6W4UoZF0VFcTw/aPPA8RpOxeFQgK+ClABGgAUXs9Y/RGX/l1vOmrqz1MQt9MNuw==", "dev": true, "dependencies": { "levn": "^0.4.1" @@ -1108,9 +1108,9 @@ } }, "node_modules/@npmcli/promise-spawn": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.1.tgz", - "integrity": "sha512-ZscqKtJqy7oj6MgXEJcHQ1om4utU0Q84QtC28UVuiO6ALSO9sDPanXdu6Wd1oYhItW8fx2u96zRFUE8BuPlAjA==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.2.tgz", + "integrity": "sha512-/bNJhjc+o6qL+Dwz/bqfTQClkEO5nTQ1ZEcdCkAQjhkZMHIh22LPG7fNh1enJP1NKWDqYiiABnjFCY7E0zHYtQ==", "dependencies": { "which": "^5.0.0" }, @@ -1195,22 +1195,22 @@ } }, "node_modules/@sigstore/bundle": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz", - "integrity": "sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-3.0.0.tgz", + "integrity": "sha512-XDUYX56iMPAn/cdgh/DTJxz5RWmqKV4pwvUAEKEWJl+HzKdCd/24wUa9JYNMlDSCb7SUHAdtksxYX779Nne/Zg==", "dependencies": { "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sigstore/core": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz", - "integrity": "sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-2.0.0.tgz", + "integrity": "sha512-nYxaSb/MtlSI+JWcwTHQxyNmWeWrUXJJ/G4liLrGG7+tS4vAz6LF3xRXqLH6wPIVUoZQel2Fs4ddLx4NCpiIYg==", "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sigstore/protobuf-specs": { @@ -1222,241 +1222,44 @@ } }, "node_modules/@sigstore/sign": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz", - "integrity": "sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-3.0.0.tgz", + "integrity": "sha512-UjhDMQOkyDoktpXoc5YPJpJK6IooF2gayAr5LvXI4EL7O0vd58okgfRcxuaH+YTdhvb5aa1Q9f+WJ0c2sVuYIw==", "dependencies": { - "@sigstore/bundle": "^2.3.2", - "@sigstore/core": "^1.0.0", + "@sigstore/bundle": "^3.0.0", + "@sigstore/core": "^2.0.0", "@sigstore/protobuf-specs": "^0.3.2", - "make-fetch-happen": "^13.0.1", - "proc-log": "^4.2.0", + "make-fetch-happen": "^14.0.1", + "proc-log": "^5.0.0", "promise-retry": "^2.0.1" }, "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/@npmcli/agent": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", - "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", - "dependencies": { - "agent-base": "^7.1.0", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.1", - "lru-cache": "^10.0.1", - "socks-proxy-agent": "^8.0.3" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/@npmcli/fs": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", - "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@sigstore/sign/node_modules/cacache": { - "version": "18.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", - "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/https-proxy-agent": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", - "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", - "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@sigstore/sign/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", - "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", - "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "proc-log": "^4.2.0", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/minipass-fetch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", - "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/@sigstore/sign/node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@sigstore/sign/node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@sigstore/sign/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@sigstore/sign/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/ssri": { - "version": "10.0.6", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", - "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/unique-filename": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", - "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", - "dependencies": { - "unique-slug": "^4.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/unique-slug": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", - "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", - "dependencies": { - "imurmurhash": "^0.1.4" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@sigstore/sign/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/@sigstore/tuf": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz", - "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-3.0.0.tgz", + "integrity": "sha512-9Xxy/8U5OFJu7s+OsHzI96IX/OzjF/zj0BSSaWhgJgTqtlBhQIV2xdrQI5qxLD7+CWWDepadnXAxzaZ3u9cvRw==", "dependencies": { "@sigstore/protobuf-specs": "^0.3.2", - "tuf-js": "^2.2.1" + "tuf-js": "^3.0.1" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sigstore/verify": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz", - "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-2.0.0.tgz", + "integrity": "sha512-Ggtq2GsJuxFNUvQzLoXqRwS4ceRfLAJnrIHUDrzAD0GgnOhwujJkKkxM/s5Bako07c3WtAs/sZo5PJq7VHjeDg==", "dependencies": { - "@sigstore/bundle": "^2.3.2", - "@sigstore/core": "^1.1.0", + "@sigstore/bundle": "^3.0.0", + "@sigstore/core": "^2.0.0", "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sindresorhus/merge-streams": { @@ -1480,9 +1283,9 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.2.tgz", - "integrity": "sha512-4Bb+oqXZTSTZ1q27Izly9lv8B9dlV61CROxPiVtywwzv5SnytJqhvYe6FclHYuXml4cd1VHPo1zd5PmTeJozvA==", + "version": "13.0.3", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.3.tgz", + "integrity": "sha512-golm/Sc4CqLV/ZalIP14Nre7zPgd8xG/S3nHULMTBHMX0llyTNhE1O6nrgbfvLX2o0y849CnLKdu8OE05Ztiiw==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1" @@ -1529,15 +1332,15 @@ } }, "node_modules/@tufjs/models": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz", - "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-3.0.1.tgz", + "integrity": "sha512-UUYHISyhCU3ZgN8yaear3cGATHb3SMuKHsQ/nVbHXcmnBf+LzQ/cQfhNG+rfaSHgqGKNEm2cOCLVLELStUQ1JA==", "dependencies": { "@tufjs/canonical-json": "2.0.0", - "minimatch": "^9.0.4" + "minimatch": "^9.0.5" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@types/estree": { @@ -1773,9 +1576,9 @@ } }, "node_modules/acorn": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", - "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz", + "integrity": "sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -2366,9 +2169,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001668", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001668.tgz", - "integrity": "sha512-nWLrdxqCdblixUO+27JtGJJE/txpJlyUy5YN1u53wLZkP0emYCo5zgS6QYft7VUYR42LGgi/S5hdLZTrnyIddw==", + "version": "1.0.30001669", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz", + "integrity": "sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==", "dev": true, "funding": [ { @@ -3443,9 +3246,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.36", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.36.tgz", - "integrity": "sha512-HYTX8tKge/VNp6FGO+f/uVDmUkq+cEfcxYhKf15Akc4M5yxt5YmorwlAitKWjWhWQnKcDRBAQKXkhqqXMqcrjw==", + "version": "1.5.41", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.41.tgz", + "integrity": "sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==", "dev": true }, "node_modules/emittery": { @@ -3553,17 +3356,17 @@ } }, "node_modules/eslint": { - "version": "9.12.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.12.0.tgz", - "integrity": "sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw==", + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.13.0.tgz", + "integrity": "sha512-EYZK6SX6zjFHST/HRytOdA/zE72Cq/bfw45LSyuwrdvcclb/gqV8RRQxywOBEWO2+WDpva6UZa4CcDeJKzUCFA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.11.0", "@eslint/config-array": "^0.18.0", - "@eslint/core": "^0.6.0", + "@eslint/core": "^0.7.0", "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.12.0", + "@eslint/js": "9.13.0", "@eslint/plugin-kit": "^0.2.0", "@humanfs/node": "^0.16.5", "@humanwhocodes/module-importer": "^1.0.1", @@ -3676,12 +3479,12 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.3.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.3.2.tgz", - "integrity": "sha512-TjgZocG53N3a84PdCFGqVMWLWwDitOUuKjlJftwTu/iTiD7N/Q2Q3eEy/Q4GfJqpM4rTJCkzUYWQfol6RZNDcA==", + "version": "50.4.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.4.3.tgz", + "integrity": "sha512-uWtwFxGRv6B8sU63HZM5dAGDhgsatb+LONwmILZJhdRALLOkCX2HFZhdL/Kw2ls8SQMAVEfK+LmnEfxInRN8HA==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.48.0", + "@es-joy/jsdoccomment": "~0.49.0", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", "debug": "^4.3.6", @@ -3924,9 +3727,9 @@ } }, "node_modules/esmock": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.7.tgz", - "integrity": "sha512-4DmjZ0qQIG+NQV1njHvWrua/cZEuJq56A3pSELT2BjNuol1aads7BluofCbLErdO41Ic1XCd2UMepVLpjL64YQ==", + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.9.tgz", + "integrity": "sha512-SJ5YnoWi8yuGghBrupScARmIcUh2A2a2gIfdVRtQ2MQpQo91wMWHx/fsN0ZDERLAUso1ea4Q/9CKCL88O5MEpg==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4372,9 +4175,9 @@ } }, "node_modules/get-east-asian-width": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz", - "integrity": "sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.3.0.tgz", + "integrity": "sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==", "dev": true, "engines": { "node": ">=18" @@ -5297,9 +5100,9 @@ "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==" }, "node_modules/jsdoc": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.3.tgz", - "integrity": "sha512-Nu7Sf35kXJ1MWDZIMAuATRQTg1iIPdzh7tqJ6jjvaU/GfDf+qi5UV8zJR3Mo+/pYFvm8mzay4+6O5EWigaQBQw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.4.tgz", + "integrity": "sha512-zeFezwyXeG4syyYHbvh1A967IAqq/67yXtXvuL5wnqCkFZe8I0vKfm+EO+YEvLguo6w9CDUbrAXVtJSHh2E8rw==", "dev": true, "dependencies": { "@babel/parser": "^7.20.15", @@ -5568,9 +5371,9 @@ } }, "node_modules/make-fetch-happen": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.1.tgz", - "integrity": "sha512-Z1ndm71UQdcK362F5Wg4IFRBZq4MGeCz+uor5iPROkSjEWEoc1Zn7OSKPvmg01S9XOI8mr+GlRr+W4ABz4ZgdA==", + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.2.tgz", + "integrity": "sha512-ByhSXJdWoBKRHKaqfmULjm4RwlL3EN9bZogHPDIuT9GHJIqHgh8FYkxpcCMsvaNTwl2VzFFYgzrGMlGsOEtGPQ==", "dependencies": { "@npmcli/agent": "^3.0.0", "cacache": "^19.0.1", @@ -5992,9 +5795,9 @@ "dev": true }, "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", "engines": { "node": ">= 0.6" } @@ -6436,9 +6239,9 @@ } }, "node_modules/npm-registry-fetch": { - "version": "18.0.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-18.0.1.tgz", - "integrity": "sha512-5XKlWmVtfTTmnU6rKBjjQDMdnFOVAH9t7D4DG1ZcsIDwkGYBTUl0fMnbzsVSM0t/HZRpyE1VMLZv9O0Bvkj3UA==", + "version": "18.0.2", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-18.0.2.tgz", + "integrity": "sha512-LeVMZBBVy+oQb5R6FDV9OlJCcWDU+al10oKpe+nsvcHnG24Z3uM3SvJYKfGJlfGjVU8v9liejCrUR/M5HO5NEQ==", "dependencies": { "@npmcli/redact": "^3.0.0", "jsonparse": "^1.3.1", @@ -6869,9 +6672,9 @@ "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" }, "node_modules/pacote": { - "version": "19.0.0", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-19.0.0.tgz", - "integrity": "sha512-953pUJqILTeaRvKFcQ78unsNc3Nl4PyVHTTsAUmvSmJ0NXs0LTWKAl5tMF2CXPRXA16RdCMYI9EKlV4CCi2T5g==", + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-19.0.1.tgz", + "integrity": "sha512-zIpxWAsr/BvhrkSruspG8aqCQUUrWtpwx0GjiRZQhEM/pZXrigA32ElN3vTcCPUDOFmHr6SFxwYrvVUs5NTEUg==", "dependencies": { "@npmcli/git": "^6.0.0", "@npmcli/installed-package-contents": "^3.0.0", @@ -6887,7 +6690,7 @@ "npm-registry-fetch": "^18.0.0", "proc-log": "^5.0.0", "promise-retry": "^2.0.1", - "sigstore": "^2.2.0", + "sigstore": "^3.0.0", "ssri": "^12.0.0", "tar": "^6.1.11" }, @@ -7047,9 +6850,9 @@ } }, "node_modules/peek-readable": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.2.0.tgz", - "integrity": "sha512-U94a+eXHzct7vAd19GH3UQ2dH4Satbng0MyYTMaQatL0pvYYL5CTPR25HBhKtecl+4bfu1/i3vC6k0hydO5Vcw==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.3.1.tgz", + "integrity": "sha512-GVlENSDW6KHaXcd9zkZltB7tCLosKB/4Hg0fqBJkAoBgYG2Tn1xtMgXtSUuMU9AK/gCm/tTdT8mgAeF4YNeeqw==", "dev": true, "engines": { "node": ">=14.16" @@ -7060,9 +6863,9 @@ } }, "node_modules/picocolors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", - "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "node_modules/picomatch": { "version": "3.0.1", @@ -7830,19 +7633,19 @@ } }, "node_modules/sigstore": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz", - "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-3.0.0.tgz", + "integrity": "sha512-PHMifhh3EN4loMcHCz6l3v/luzgT3za+9f8subGgeMNjbJjzH4Ij/YoX3Gvu+kaouJRIlVdTHHCREADYf+ZteA==", "dependencies": { - "@sigstore/bundle": "^2.3.2", - "@sigstore/core": "^1.0.0", + "@sigstore/bundle": "^3.0.0", + "@sigstore/core": "^2.0.0", "@sigstore/protobuf-specs": "^0.3.2", - "@sigstore/sign": "^2.3.2", - "@sigstore/tuf": "^2.3.4", - "@sigstore/verify": "^1.2.1" + "@sigstore/sign": "^3.0.0", + "@sigstore/tuf": "^3.0.0", + "@sigstore/verify": "^2.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/sinon": { @@ -8772,221 +8575,24 @@ "dev": true }, "node_modules/tslib": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", - "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", + "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==", "dev": true }, "node_modules/tuf-js": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz", - "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==", - "dependencies": { - "@tufjs/models": "2.0.1", - "debug": "^4.3.4", - "make-fetch-happen": "^13.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/@npmcli/agent": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", - "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", - "dependencies": { - "agent-base": "^7.1.0", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.1", - "lru-cache": "^10.0.1", - "socks-proxy-agent": "^8.0.3" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/@npmcli/fs": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", - "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/tuf-js/node_modules/cacache": { - "version": "18.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", - "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/https-proxy-agent": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", - "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", - "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/tuf-js/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/tuf-js/node_modules/make-fetch-happen": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", - "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", - "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "proc-log": "^4.2.0", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/minipass-fetch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", - "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/tuf-js/node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/tuf-js/node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/tuf-js/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/tuf-js/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/ssri": { - "version": "10.0.6", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", - "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/unique-filename": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", - "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", - "dependencies": { - "unique-slug": "^4.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/unique-slug": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", - "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-3.0.1.tgz", + "integrity": "sha512-+68OP1ZzSF84rTckf3FA95vJ1Zlx/uaXyiiKyPd1pA4rZNkpEvDAKmsu1xUSmbF/chCRYgZ6UZkDwC7PmzmAyA==", "dependencies": { - "imurmurhash": "^0.1.4" + "@tufjs/models": "3.0.1", + "debug": "^4.3.6", + "make-fetch-happen": "^14.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/tuf-js/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index abbca8a37bb..2362541a72f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -131,9 +131,9 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^14.0.1", + "make-fetch-happen": "^14.0.2", "node-stream-zip": "^1.15.0", - "pacote": "^19.0.0", + "pacote": "^19.0.1", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", @@ -159,18 +159,18 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.12.0", + "eslint": "^9.13.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.3.2", - "esmock": "^2.6.7", + "eslint-plugin-jsdoc": "^50.4.3", + "esmock": "^2.6.9", "globals": "^15.11.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", "js-beautify": "^1.15.1", - "jsdoc": "^4.0.3", + "jsdoc": "^4.0.4", "nyc": "^17.1.0", "open-cli": "^8.0.0", "sinon": "^19.0.2", From 2d9f4397b72223aee8243c6a66e7e6e3abe838d5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Oct 2024 05:54:17 +0000 Subject: [PATCH 1173/1272] [ui5-project]Bump coverallsapp/github-action from 2.3.1 to 2.3.3 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.3.1 to 2.3.3. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v2.3.1...v2.3.3) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index a0dcf2adcc6..fd53986f517 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v2.3.1 + uses: coverallsapp/github-action@v2.3.3 From 14e6aff803799a22c32e7fb47aa7e91d3bd1e511 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 27 Oct 2024 03:20:13 +0000 Subject: [PATCH 1174/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 324 +++++++++++------------------ packages/project/package.json | 2 +- 2 files changed, 126 insertions(+), 200 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ac27b14b6ec..ec4130eb3f1 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -20,7 +20,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^14.0.2", + "make-fetch-happen": "^14.0.3", "node-stream-zip": "^1.15.0", "pacote": "^19.0.1", "pretty-hrtime": "^1.0.3", @@ -84,11 +84,12 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz", - "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.0.tgz", + "integrity": "sha512-INCKxTtbXtcNbUZ3YXutwMpEleqttcswhAdee7dhuoVrD2cnuc3PqtERBtxkX5nziX9vnBL8WXmSGwv8CuPV6g==", "dependencies": { - "@babel/highlight": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", "picocolors": "^1.0.0" }, "engines": { @@ -96,30 +97,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.8.tgz", - "integrity": "sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.0.tgz", + "integrity": "sha512-qETICbZSLe7uXv9VE8T/RWOdIE5qqyTucOt4zLYMafj2MRO271VGgLd4RACJMeBO37UPWhXiKMBk7YlJ0fOzQA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.8.tgz", - "integrity": "sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz", + "integrity": "sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.25.7", - "@babel/generator": "^7.25.7", - "@babel/helper-compilation-targets": "^7.25.7", - "@babel/helper-module-transforms": "^7.25.7", - "@babel/helpers": "^7.25.7", - "@babel/parser": "^7.25.8", - "@babel/template": "^7.25.7", - "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.8", + "@babel/code-frame": "^7.26.0", + "@babel/generator": "^7.26.0", + "@babel/helper-compilation-targets": "^7.25.9", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.0", + "@babel/parser": "^7.26.0", + "@babel/template": "^7.25.9", + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.26.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -144,12 +145,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.7.tgz", - "integrity": "sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.0.tgz", + "integrity": "sha512-/AIkAmInnWwgEAJGQr9vY0c66Mj6kjkE2ZPB1PurTRaRAh3U+J45sAQMjQDJdh4WbR3l0x5xkimXBKyBXXAu2w==", "dev": true, "dependencies": { - "@babel/types": "^7.25.7", + "@babel/parser": "^7.26.0", + "@babel/types": "^7.26.0", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -159,13 +161,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz", - "integrity": "sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz", + "integrity": "sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.25.7", - "@babel/helper-validator-option": "^7.25.7", + "@babel/compat-data": "^7.25.9", + "@babel/helper-validator-option": "^7.25.9", "browserslist": "^4.24.0", "lru-cache": "^5.1.1", "semver": "^6.3.1" @@ -184,28 +186,27 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz", - "integrity": "sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", "dev": true, "dependencies": { - "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.7" + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz", - "integrity": "sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.25.7", - "@babel/helper-simple-access": "^7.25.7", - "@babel/helper-validator-identifier": "^7.25.7", - "@babel/traverse": "^7.25.7" + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -215,138 +216,60 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz", - "integrity": "sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz", - "integrity": "sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz", + "integrity": "sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==", "dev": true, - "dependencies": { - "@babel/traverse": "^7.25.7", - "@babel/types": "^7.25.7" - }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz", - "integrity": "sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", - "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz", - "integrity": "sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.7.tgz", - "integrity": "sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.0.tgz", + "integrity": "sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==", "dev": true, "dependencies": { - "@babel/template": "^7.25.7", - "@babel/types": "^7.25.7" + "@babel/template": "^7.25.9", + "@babel/types": "^7.26.0" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/highlight": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", - "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", - "dependencies": { - "@babel/helper-validator-identifier": "^7.25.7", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@babel/parser": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.8.tgz", - "integrity": "sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==", + "version": "7.26.1", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.1.tgz", + "integrity": "sha512-reoQYNiAJreZNsJzyrDNzFQ+IQ5JFiIzAHJg9bn94S3l+4++J7RsIhNMoB+lgP/9tpmiAQqspv+xfdxTSzREOw==", "dev": true, "dependencies": { - "@babel/types": "^7.25.8" + "@babel/types": "^7.26.0" }, "bin": { "parser": "bin/babel-parser.js" @@ -356,30 +279,30 @@ } }, "node_modules/@babel/template": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.7.tgz", - "integrity": "sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz", + "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.25.7", - "@babel/parser": "^7.25.7", - "@babel/types": "^7.25.7" + "@babel/code-frame": "^7.25.9", + "@babel/parser": "^7.25.9", + "@babel/types": "^7.25.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.7.tgz", - "integrity": "sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz", + "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.25.7", - "@babel/generator": "^7.25.7", - "@babel/parser": "^7.25.7", - "@babel/template": "^7.25.7", - "@babel/types": "^7.25.7", + "@babel/code-frame": "^7.25.9", + "@babel/generator": "^7.25.9", + "@babel/parser": "^7.25.9", + "@babel/template": "^7.25.9", + "@babel/types": "^7.25.9", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -397,14 +320,13 @@ } }, "node_modules/@babel/types": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.8.tgz", - "integrity": "sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz", + "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.25.7", - "@babel/helper-validator-identifier": "^7.25.7", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -425,16 +347,19 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", + "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", "dev": true, "dependencies": { - "eslint-visitor-keys": "^3.3.0" + "eslint-visitor-keys": "^3.4.3" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, + "funding": { + "url": "https://opencollective.com/eslint" + }, "peerDependencies": { "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } @@ -452,9 +377,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.1.tgz", - "integrity": "sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==", + "version": "4.11.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.2.tgz", + "integrity": "sha512-2WwyTYNVaMNUWPZTOJdkax9iqTdirrApgTbk+Qoq5EPX6myqZvG8QGFRgdKmkjKVG6/G/a565vpPauHk0+hpBA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -1283,9 +1208,9 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "13.0.3", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.3.tgz", - "integrity": "sha512-golm/Sc4CqLV/ZalIP14Nre7zPgd8xG/S3nHULMTBHMX0llyTNhE1O6nrgbfvLX2o0y849CnLKdu8OE05Ztiiw==", + "version": "13.0.4", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.4.tgz", + "integrity": "sha512-wpUq+QiKxrWk7U2pdvNSY9fNX62/k+7eEdlQMO0A3rU8tQ+vvzY/WzBhMz+GbQlATXZlXWYQqFWNFcn1SVvThA==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1" @@ -1986,9 +1911,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", - "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", "dev": true, "funding": [ { @@ -2005,10 +1930,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001663", - "electron-to-chromium": "^1.5.28", + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", "node-releases": "^2.0.18", - "update-browserslist-db": "^1.1.0" + "update-browserslist-db": "^1.1.1" }, "bin": { "browserslist": "cli.js" @@ -2169,9 +2094,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001669", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz", - "integrity": "sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==", + "version": "1.0.30001672", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001672.tgz", + "integrity": "sha512-XhW1vRo1ob6aeK2w3rTohwTPBLse/rvjq+s3RTSBwnlZqoFFjx9cHsShJjAIbLsLjyoacaTxpLZy9v3gg6zypw==", "dev": true, "funding": [ { @@ -2633,6 +2558,7 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "dependencies": { "color-name": "1.1.3" } @@ -2640,7 +2566,8 @@ "node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true }, "node_modules/color-support": { "version": "1.1.3", @@ -3246,9 +3173,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.41", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.41.tgz", - "integrity": "sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==", + "version": "1.5.47", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.47.tgz", + "integrity": "sha512-zS5Yer0MOYw4rtK2iq43cJagHZ8sXN0jDHDKzB+86gSBSAI4v07S97mcq+Gs2vclAxSh1j7vOAHxSVgduiiuVQ==", "dev": true }, "node_modules/emittery": { @@ -5371,9 +5298,9 @@ } }, "node_modules/make-fetch-happen": { - "version": "14.0.2", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.2.tgz", - "integrity": "sha512-ByhSXJdWoBKRHKaqfmULjm4RwlL3EN9bZogHPDIuT9GHJIqHgh8FYkxpcCMsvaNTwl2VzFFYgzrGMlGsOEtGPQ==", + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", "dependencies": { "@npmcli/agent": "^3.0.0", "cacache": "^19.0.1", @@ -5382,7 +5309,7 @@ "minipass-fetch": "^4.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", + "negotiator": "^1.0.0", "proc-log": "^5.0.0", "promise-retry": "^2.0.1", "ssri": "^12.0.0" @@ -5795,9 +5722,9 @@ "dev": true }, "node_modules/negotiator": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", - "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", "engines": { "node": ">= 0.6" } @@ -6006,6 +5933,14 @@ "node": ">=8" } }, + "node_modules/node-gyp/node_modules/negotiator": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/node-gyp/node_modules/nopt": { "version": "7.2.1", "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", @@ -8531,15 +8466,6 @@ "node": ">=4" } }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 2362541a72f..0add5ac2e41 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -131,7 +131,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^14.0.2", + "make-fetch-happen": "^14.0.3", "node-stream-zip": "^1.15.0", "pacote": "^19.0.1", "pretty-hrtime": "^1.0.3", From aaffae82594b08e94b0022dbc429cdea268cd89d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Oct 2024 05:16:43 +0000 Subject: [PATCH 1175/1272] [ui5-project]Bump actions/setup-node from 4.0.4 to 4.1.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.4 to 4.1.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4.0.4...v4.1.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index fd53986f517..051d1603b0f 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Node.js LTS 20.11.0 - uses: actions/setup-node@v4.0.4 + uses: actions/setup-node@v4.1.0 with: node-version: 20.11.0 From b306b32acec4868e40e9975106cd17afe6932b3a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 10:40:41 +0000 Subject: [PATCH 1176/1272] [ui5-project]Bump coverallsapp/github-action from 2.3.3 to 2.3.4 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.3.3 to 2.3.4. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v2.3.3...v2.3.4) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 051d1603b0f..2b296d0dd9e 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v2.3.3 + uses: coverallsapp/github-action@v2.3.4 From a505fd5dd2af1495ca9d677a1a2db95e3eecbdd5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 3 Nov 2024 03:20:22 +0000 Subject: [PATCH 1177/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 219 +++++++++++++++-------------- packages/project/package.json | 4 +- 2 files changed, 118 insertions(+), 105 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ec4130eb3f1..da0f6adede4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -35,12 +35,12 @@ "devDependencies": { "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^6.1.3", + "ava": "^6.2.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.13.0", + "eslint": "^9.14.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.4.3", @@ -84,9 +84,9 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.0.tgz", - "integrity": "sha512-INCKxTtbXtcNbUZ3YXutwMpEleqttcswhAdee7dhuoVrD2cnuc3PqtERBtxkX5nziX9vnBL8WXmSGwv8CuPV6g==", + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", "dependencies": { "@babel/helper-validator-identifier": "^7.25.9", "js-tokens": "^4.0.0", @@ -97,9 +97,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.0.tgz", - "integrity": "sha512-qETICbZSLe7uXv9VE8T/RWOdIE5qqyTucOt4zLYMafj2MRO271VGgLd4RACJMeBO37UPWhXiKMBk7YlJ0fOzQA==", + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.2.tgz", + "integrity": "sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==", "dev": true, "engines": { "node": ">=6.9.0" @@ -145,12 +145,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.0.tgz", - "integrity": "sha512-/AIkAmInnWwgEAJGQr9vY0c66Mj6kjkE2ZPB1PurTRaRAh3U+J45sAQMjQDJdh4WbR3l0x5xkimXBKyBXXAu2w==", + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.2.tgz", + "integrity": "sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==", "dev": true, "dependencies": { - "@babel/parser": "^7.26.0", + "@babel/parser": "^7.26.2", "@babel/types": "^7.26.0", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", @@ -264,9 +264,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.26.1", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.1.tgz", - "integrity": "sha512-reoQYNiAJreZNsJzyrDNzFQ+IQ5JFiIzAHJg9bn94S3l+4++J7RsIhNMoB+lgP/9tpmiAQqspv+xfdxTSzREOw==", + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz", + "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==", "dev": true, "dependencies": { "@babel/types": "^7.26.0" @@ -377,9 +377,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.11.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.2.tgz", - "integrity": "sha512-2WwyTYNVaMNUWPZTOJdkax9iqTdirrApgTbk+Qoq5EPX6myqZvG8QGFRgdKmkjKVG6/G/a565vpPauHk0+hpBA==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -488,9 +488,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.13.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.13.0.tgz", - "integrity": "sha512-IFLyoY4d72Z5y/6o/BazFBezupzI/taV8sGumxTAVw3lXG9A6md1Dc34T9s1FoD/an9pJH8RHbAxsaEbBed9lA==", + "version": "9.14.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.14.0.tgz", + "integrity": "sha512-pFoEtFWCPyDOl+C6Ift+wC7Ro89otjigCf5vcuWqWgqNSQbRrpjSvdeE6ofLz4dHmyxD5f7gIdGT4+p36L6Twg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -506,9 +506,9 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.1.tgz", - "integrity": "sha512-HFZ4Mp26nbWk9d/BpvP0YNL6W4UoZF0VFcTw/aPPA8RpOxeFQgK+ClABGgAUXs9Y/RGX/l1vOmrqz1MQt9MNuw==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.2.tgz", + "integrity": "sha512-CXtq5nR4Su+2I47WPOlWud98Y5Lv8Kyxp2ukhgFx/eW6Blm18VXJO5WuQylPugRo8nbluoi6GvvxBLqHcvqUUw==", "dev": true, "dependencies": { "levn": "^0.4.1" @@ -518,27 +518,40 @@ } }, "node_modules/@humanfs/core": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.0.tgz", - "integrity": "sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==", + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", "dev": true, "engines": { "node": ">=18.18.0" } }, "node_modules/@humanfs/node": { - "version": "0.16.5", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.5.tgz", - "integrity": "sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==", + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", "dev": true, "dependencies": { - "@humanfs/core": "^0.19.0", + "@humanfs/core": "^0.19.1", "@humanwhocodes/retry": "^0.3.0" }, "engines": { "node": ">=18.18.0" } }, + "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true, + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -553,9 +566,9 @@ } }, "node_modules/@humanwhocodes/retry": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", - "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.0.tgz", + "integrity": "sha512-xnRgu9DxZbkWak/te3fcytNyp8MTbuiZIaueg2rgEvBuN55n04nwLYLU9TX/VVlusc9L2ZNXi99nUFNkHXtr5g==", "dev": true, "engines": { "node": ">=18.18" @@ -1208,9 +1221,9 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "13.0.4", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.4.tgz", - "integrity": "sha512-wpUq+QiKxrWk7U2pdvNSY9fNX62/k+7eEdlQMO0A3rU8tQ+vvzY/WzBhMz+GbQlATXZlXWYQqFWNFcn1SVvThA==", + "version": "13.0.5", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", + "integrity": "sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1" @@ -1368,21 +1381,21 @@ } }, "node_modules/@vercel/nft": { - "version": "0.26.5", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.26.5.tgz", - "integrity": "sha512-NHxohEqad6Ra/r4lGknO52uc/GrWILXAMs1BB4401GTqww0fw1bAqzpG1XHuDO+dprg4GvsD9ZLLSsdo78p9hQ==", + "version": "0.27.5", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.5.tgz", + "integrity": "sha512-b2A7M+4yMHdWKY7xCC+kBEcnMrpaSE84CnuauTjhKKoCEeej0byJMAB8h/RBVnw/HdZOAFVcxR0Izr3LL24FwA==", "dev": true, "dependencies": { "@mapbox/node-pre-gyp": "^1.0.5", "@rollup/pluginutils": "^4.0.0", "acorn": "^8.6.0", - "acorn-import-attributes": "^1.9.2", + "acorn-import-attributes": "^1.9.5", "async-sema": "^3.1.1", "bindings": "^1.4.0", "estree-walker": "2.0.2", "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "micromatch": "^4.0.2", + "micromatch": "^4.0.8", "node-gyp-build": "^4.2.2", "resolve-from": "^5.0.0" }, @@ -1501,9 +1514,9 @@ } }, "node_modules/acorn": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz", - "integrity": "sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==", + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -1751,19 +1764,19 @@ "dev": true }, "node_modules/ava": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/ava/-/ava-6.1.3.tgz", - "integrity": "sha512-tkKbpF1pIiC+q09wNU9OfyTDYZa8yuWvU2up3+lFJ3lr1RmnYh2GBpPwzYUEB0wvTPIUysGjcZLNZr7STDviRA==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-6.2.0.tgz", + "integrity": "sha512-+GZk5PbyepjiO/68hzCZCUepQOQauKfNnI7sA4JukBTg97jD7E+tDKEA7OhGOGr6EorNNMM9+jqvgHVOTOzG4w==", "dev": true, "dependencies": { - "@vercel/nft": "^0.26.2", - "acorn": "^8.11.3", - "acorn-walk": "^8.3.2", + "@vercel/nft": "^0.27.5", + "acorn": "^8.13.0", + "acorn-walk": "^8.3.4", "ansi-styles": "^6.2.1", "arrgv": "^1.0.2", "arrify": "^3.0.0", - "callsites": "^4.1.0", - "cbor": "^9.0.1", + "callsites": "^4.2.0", + "cbor": "^9.0.2", "chalk": "^5.3.0", "chunkd": "^2.0.1", "ci-info": "^4.0.0", @@ -1773,10 +1786,10 @@ "common-path-prefix": "^3.0.0", "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", - "debug": "^4.3.4", - "emittery": "^1.0.1", - "figures": "^6.0.1", - "globby": "^14.0.0", + "debug": "^4.3.7", + "emittery": "^1.0.3", + "figures": "^6.1.0", + "globby": "^14.0.2", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", "is-plain-object": "^5.0.0", @@ -1784,24 +1797,24 @@ "matcher": "^5.0.0", "memoize": "^10.0.0", "ms": "^2.1.3", - "p-map": "^7.0.1", + "p-map": "^7.0.2", "package-config": "^5.0.0", - "picomatch": "^3.0.1", + "picomatch": "^4.0.2", "plur": "^5.1.0", - "pretty-ms": "^9.0.0", + "pretty-ms": "^9.1.0", "resolve-cwd": "^3.0.0", "stack-utils": "^2.0.6", "strip-ansi": "^7.1.0", "supertap": "^3.0.1", "temp-dir": "^3.0.0", - "write-file-atomic": "^5.0.1", + "write-file-atomic": "^6.0.0", "yargs": "^17.7.2" }, "bin": { "ava": "entrypoints/cli.mjs" }, "engines": { - "node": "^18.18 || ^20.8 || ^21 || ^22" + "node": "^18.18 || ^20.8 || ^22 || >=23" }, "peerDependencies": { "@ava/typescript": "*" @@ -2094,9 +2107,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001672", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001672.tgz", - "integrity": "sha512-XhW1vRo1ob6aeK2w3rTohwTPBLse/rvjq+s3RTSBwnlZqoFFjx9cHsShJjAIbLsLjyoacaTxpLZy9v3gg6zypw==", + "version": "1.0.30001677", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001677.tgz", + "integrity": "sha512-fmfjsOlJUpMWu+mAAtZZZHz7UEwsUxIIvu1TJfO1HqFQvB/B+ii0xr9B5HpbZY/mC4XZ8SvjHJqtAY6pDPQEog==", "dev": true, "funding": [ { @@ -3173,9 +3186,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.47", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.47.tgz", - "integrity": "sha512-zS5Yer0MOYw4rtK2iq43cJagHZ8sXN0jDHDKzB+86gSBSAI4v07S97mcq+Gs2vclAxSh1j7vOAHxSVgduiiuVQ==", + "version": "1.5.50", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.50.tgz", + "integrity": "sha512-eMVObiUQ2LdgeO1F/ySTXsvqvxb6ZH2zPGaMYsWzRDdOddUa77tdmI0ltg+L16UpbWdhPmuF3wIQYyQq65WfZw==", "dev": true }, "node_modules/emittery": { @@ -3283,21 +3296,21 @@ } }, "node_modules/eslint": { - "version": "9.13.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.13.0.tgz", - "integrity": "sha512-EYZK6SX6zjFHST/HRytOdA/zE72Cq/bfw45LSyuwrdvcclb/gqV8RRQxywOBEWO2+WDpva6UZa4CcDeJKzUCFA==", + "version": "9.14.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.14.0.tgz", + "integrity": "sha512-c2FHsVBr87lnUtjP4Yhvk4yEhKrQavGafRA/Se1ouse8PfbfC/Qh9Mxa00yWsZRlqeUB9raXip0aiiUZkgnr9g==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.11.0", + "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.18.0", "@eslint/core": "^0.7.0", "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.13.0", + "@eslint/js": "9.14.0", "@eslint/plugin-kit": "^0.2.0", - "@humanfs/node": "^0.16.5", + "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.3.1", + "@humanwhocodes/retry": "^0.4.0", "@types/estree": "^1.0.6", "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", @@ -3305,9 +3318,9 @@ "cross-spawn": "^7.0.2", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.1.0", - "eslint-visitor-keys": "^4.1.0", - "espree": "^10.2.0", + "eslint-scope": "^8.2.0", + "eslint-visitor-keys": "^4.2.0", + "espree": "^10.3.0", "esquery": "^1.5.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -3443,9 +3456,9 @@ } }, "node_modules/eslint-scope": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.1.0.tgz", - "integrity": "sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.2.0.tgz", + "integrity": "sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -3486,9 +3499,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz", - "integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3663,14 +3676,14 @@ } }, "node_modules/espree": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.2.0.tgz", - "integrity": "sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", + "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", "dev": true, "dependencies": { - "acorn": "^8.12.0", + "acorn": "^8.14.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.1.0" + "eslint-visitor-keys": "^4.2.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -6803,12 +6816,12 @@ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "node_modules/picomatch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", - "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/jonschlinkert" @@ -7386,9 +7399,9 @@ } }, "node_modules/rimraf/node_modules/lru-cache": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.1.tgz", - "integrity": "sha512-CgeuL5uom6j/ZVrg7G/+1IXqRY8JXX4Hghfy5YE0EhoYQWvndP1kufu58cmZLNIDKnRhZrXfdS9urVWx98AipQ==", + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.2.tgz", + "integrity": "sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==", "engines": { "node": "20 || >=22" } @@ -8501,9 +8514,9 @@ "dev": true }, "node_modules/tslib": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", - "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true }, "node_modules/tuf-js": { @@ -8875,16 +8888,16 @@ "dev": true }, "node_modules/write-file-atomic": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", - "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-6.0.0.tgz", + "integrity": "sha512-GmqrO8WJ1NuzJ2DrziEI2o57jKAVIQNf8a18W3nCYU3H7PNWqCCVTeH6/NQE93CIllIgQS98rrmVkYgTX9fFJQ==", "dev": true, "dependencies": { "imurmurhash": "^0.1.4", "signal-exit": "^4.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/xml2js": { diff --git a/packages/project/package.json b/packages/project/package.json index 0add5ac2e41..646e38ae48b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -154,12 +154,12 @@ "devDependencies": { "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.2.0", - "ava": "^6.1.3", + "ava": "^6.2.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.13.0", + "eslint": "^9.14.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.4.3", From 7683d5bcf0e7821574198c6e0caf3b65c3572dd9 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 10 Nov 2024 03:20:15 +0000 Subject: [PATCH 1178/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 40 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index da0f6adede4..0e366434b19 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -45,7 +45,7 @@ "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.4.3", "esmock": "^2.6.9", - "globals": "^15.11.0", + "globals": "^15.12.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -566,9 +566,9 @@ } }, "node_modules/@humanwhocodes/retry": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.0.tgz", - "integrity": "sha512-xnRgu9DxZbkWak/te3fcytNyp8MTbuiZIaueg2rgEvBuN55n04nwLYLU9TX/VVlusc9L2ZNXi99nUFNkHXtr5g==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz", + "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==", "dev": true, "engines": { "node": ">=18.18" @@ -1381,12 +1381,12 @@ } }, "node_modules/@vercel/nft": { - "version": "0.27.5", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.5.tgz", - "integrity": "sha512-b2A7M+4yMHdWKY7xCC+kBEcnMrpaSE84CnuauTjhKKoCEeej0byJMAB8h/RBVnw/HdZOAFVcxR0Izr3LL24FwA==", + "version": "0.27.6", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.6.tgz", + "integrity": "sha512-mwuyUxskdcV8dd7N7JnxBgvFEz1D9UOePI/WyLLzktv6HSCwgPNQGit/UJ2IykAWGlypKw4pBQjOKWvIbXITSg==", "dev": true, "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.5", + "@mapbox/node-pre-gyp": "^1.0.11", "@rollup/pluginutils": "^4.0.0", "acorn": "^8.6.0", "acorn-import-attributes": "^1.9.5", @@ -2107,9 +2107,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001677", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001677.tgz", - "integrity": "sha512-fmfjsOlJUpMWu+mAAtZZZHz7UEwsUxIIvu1TJfO1HqFQvB/B+ii0xr9B5HpbZY/mC4XZ8SvjHJqtAY6pDPQEog==", + "version": "1.0.30001679", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001679.tgz", + "integrity": "sha512-j2YqID/YwpLnKzCmBOS4tlZdWprXm3ZmQLBH9ZBXFOhoxLA46fwyBvx6toCBWBmnuwUY/qB3kEU6gFx8qgCroA==", "dev": true, "funding": [ { @@ -2724,9 +2724,9 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz", + "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -3186,9 +3186,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.50", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.50.tgz", - "integrity": "sha512-eMVObiUQ2LdgeO1F/ySTXsvqvxb6ZH2zPGaMYsWzRDdOddUa77tdmI0ltg+L16UpbWdhPmuF3wIQYyQq65WfZw==", + "version": "1.5.55", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.55.tgz", + "integrity": "sha512-6maZ2ASDOTBtjt9FhqYPRnbvKU5tjG0IN9SztUOWYw2AzNDNpKJYLJmlK0/En4Hs/aiWnB+JZ+gW19PIGszgKg==", "dev": true }, "node_modules/emittery": { @@ -4232,9 +4232,9 @@ } }, "node_modules/globals": { - "version": "15.11.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.11.0.tgz", - "integrity": "sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==", + "version": "15.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.12.0.tgz", + "integrity": "sha512-1+gLErljJFhbOVyaetcwJiJ4+eLe45S2E7P5UiZ9xGfeq3ATQf5DOv9G7MH3gGbKQLkzmNh2DxfZwLdw+j6oTQ==", "dev": true, "engines": { "node": ">=18" diff --git a/packages/project/package.json b/packages/project/package.json index 646e38ae48b..c8c568195cc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -164,7 +164,7 @@ "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.4.3", "esmock": "^2.6.9", - "globals": "^15.11.0", + "globals": "^15.12.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From 4461d87f6ed9022c427283750b7d279c736745d5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 17 Nov 2024 03:20:06 +0000 Subject: [PATCH 1179/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 175 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 86 insertions(+), 93 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0e366434b19..251f7997555 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -40,10 +40,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.14.0", + "eslint": "^9.15.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.4.3", + "eslint-plugin-jsdoc": "^50.5.0", "esmock": "^2.6.9", "globals": "^15.12.0", "istanbul-lib-coverage": "^3.2.2", @@ -386,9 +386,9 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.18.0.tgz", - "integrity": "sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.0.tgz", + "integrity": "sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==", "dev": true, "dependencies": { "@eslint/object-schema": "^2.1.4", @@ -422,18 +422,18 @@ } }, "node_modules/@eslint/core": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.7.0.tgz", - "integrity": "sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.0.tgz", + "integrity": "sha512-7ATR9F0e4W85D/0w7cU0SNj7qkAexMG+bAHEZOjo9akvGuhHE2m7umzWzfnpa0XAg5Kxc1BWmtPMV67jJ+9VUg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, "node_modules/@eslint/eslintrc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz", - "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz", + "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -488,9 +488,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.14.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.14.0.tgz", - "integrity": "sha512-pFoEtFWCPyDOl+C6Ift+wC7Ro89otjigCf5vcuWqWgqNSQbRrpjSvdeE6ofLz4dHmyxD5f7gIdGT4+p36L6Twg==", + "version": "9.15.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.15.0.tgz", + "integrity": "sha512-tMTqrY+EzbXmKJR5ToI8lxu7jaN5EdmrBFJpQk5JmSlyLsx6o4t27r883K5xsLuCYCpfKBCGswMSWXsM+jB7lg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -506,9 +506,9 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.2.tgz", - "integrity": "sha512-CXtq5nR4Su+2I47WPOlWud98Y5Lv8Kyxp2ukhgFx/eW6Blm18VXJO5WuQylPugRo8nbluoi6GvvxBLqHcvqUUw==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.3.tgz", + "integrity": "sha512-2b/g5hRmpbb1o4GnTZax9N9m0FXzz9OV42ZzI4rDDMDuHUqigAiQCEWChBWCY4ztAGVRjoWT19v0yMmc5/L5kA==", "dev": true, "dependencies": { "levn": "^0.4.1" @@ -1450,59 +1450,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.12.tgz", - "integrity": "sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz", + "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.12", + "@vue/shared": "3.5.13", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.12.tgz", - "integrity": "sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz", + "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/compiler-core": "3.5.13", + "@vue/shared": "3.5.13" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.12.tgz", - "integrity": "sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz", + "integrity": "sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==", "dev": true, "dependencies": { "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.12", - "@vue/compiler-dom": "3.5.12", - "@vue/compiler-ssr": "3.5.12", - "@vue/shared": "3.5.12", + "@vue/compiler-core": "3.5.13", + "@vue/compiler-dom": "3.5.13", + "@vue/compiler-ssr": "3.5.13", + "@vue/shared": "3.5.13", "estree-walker": "^2.0.2", "magic-string": "^0.30.11", - "postcss": "^8.4.47", + "postcss": "^8.4.48", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.12.tgz", - "integrity": "sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz", + "integrity": "sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/compiler-dom": "3.5.13", + "@vue/shared": "3.5.13" } }, "node_modules/@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz", + "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==", "dev": true }, "node_modules/abbrev": { @@ -2107,9 +2107,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001679", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001679.tgz", - "integrity": "sha512-j2YqID/YwpLnKzCmBOS4tlZdWprXm3ZmQLBH9ZBXFOhoxLA46fwyBvx6toCBWBmnuwUY/qB3kEU6gFx8qgCroA==", + "version": "1.0.30001680", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001680.tgz", + "integrity": "sha512-rPQy70G6AGUMnbwS1z6Xg+RkHYPAi18ihs47GH0jcxIG7wArmPgY3XbS2sRdBbxJljp3thdT8BIqv9ccCypiPA==", "dev": true, "funding": [ { @@ -2385,9 +2385,9 @@ "dev": true }, "node_modules/ci-info": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.0.0.tgz", - "integrity": "sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.1.0.tgz", + "integrity": "sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==", "funding": [ { "type": "github", @@ -3186,9 +3186,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.55", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.55.tgz", - "integrity": "sha512-6maZ2ASDOTBtjt9FhqYPRnbvKU5tjG0IN9SztUOWYw2AzNDNpKJYLJmlK0/En4Hs/aiWnB+JZ+gW19PIGszgKg==", + "version": "1.5.62", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.62.tgz", + "integrity": "sha512-t8c+zLmJHa9dJy96yBZRXGQYoiCEnHYgFwn1asvSPZSUdVxnB62A4RASd7k41ytG3ErFBA0TpHlKg9D9SQBmLg==", "dev": true }, "node_modules/emittery": { @@ -3296,26 +3296,26 @@ } }, "node_modules/eslint": { - "version": "9.14.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.14.0.tgz", - "integrity": "sha512-c2FHsVBr87lnUtjP4Yhvk4yEhKrQavGafRA/Se1ouse8PfbfC/Qh9Mxa00yWsZRlqeUB9raXip0aiiUZkgnr9g==", + "version": "9.15.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.15.0.tgz", + "integrity": "sha512-7CrWySmIibCgT1Os28lUU6upBshZ+GxybLOrmRzi08kS8MBuO8QA7pXEgYgY5W8vK3e74xv0lpjo9DbaGU9Rkw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.18.0", - "@eslint/core": "^0.7.0", - "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.14.0", - "@eslint/plugin-kit": "^0.2.0", + "@eslint/config-array": "^0.19.0", + "@eslint/core": "^0.9.0", + "@eslint/eslintrc": "^3.2.0", + "@eslint/js": "9.15.0", + "@eslint/plugin-kit": "^0.2.3", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.4.0", + "@humanwhocodes/retry": "^0.4.1", "@types/estree": "^1.0.6", "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", + "cross-spawn": "^7.0.5", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", "eslint-scope": "^8.2.0", @@ -3334,8 +3334,7 @@ "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "text-table": "^0.2.0" + "optionator": "^0.9.3" }, "bin": { "eslint": "bin/eslint.js" @@ -3419,9 +3418,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.4.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.4.3.tgz", - "integrity": "sha512-uWtwFxGRv6B8sU63HZM5dAGDhgsatb+LONwmILZJhdRALLOkCX2HFZhdL/Kw2ls8SQMAVEfK+LmnEfxInRN8HA==", + "version": "50.5.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.5.0.tgz", + "integrity": "sha512-xTkshfZrUbiSHXBwZ/9d5ulZ2OcHXxSvm/NPo494H/hadLRJwOq5PMV0EUpMqsb9V+kQo+9BAgi6Z7aJtdBp2A==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", @@ -5799,9 +5798,9 @@ } }, "node_modules/node-gyp-build": { - "version": "4.8.2", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.2.tgz", - "integrity": "sha512-IRUxE4BVsHWXkV/SFOut4qTlagw2aM8T5/vnTsmrHJvVoKueJHRc/JaFND7QDDc61kLYUJ6qlZM3sqTSyx2dTw==", + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.3.tgz", + "integrity": "sha512-EMS95CMJzdoSKoIiXo8pxKoL8DYxwIZXYlLmgPb8KUv794abpnLK6ynsCAWNliOjREKruYKdzbh76HHYUHX7nw==", "dev": true, "bin": { "node-gyp-build": "bin.js", @@ -6925,9 +6924,9 @@ } }, "node_modules/postcss": { - "version": "8.4.47", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", - "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "version": "8.4.49", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", + "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", "dev": true, "funding": [ { @@ -6945,7 +6944,7 @@ ], "dependencies": { "nanoid": "^3.3.7", - "picocolors": "^1.1.0", + "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, "engines": { @@ -6970,9 +6969,9 @@ } }, "node_modules/pretty-ms": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.1.0.tgz", - "integrity": "sha512-o1piW0n3tgKIKCwk2vpM/vOV13zjJzvP37Ioze54YlTHE06m4tjEbzg9WsKkvTuyYln2DHjo5pY4qrZGI0otpw==", + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.2.0.tgz", + "integrity": "sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg==", "dev": true, "dependencies": { "parse-ms": "^4.0.0" @@ -6999,9 +6998,9 @@ "dev": true }, "node_modules/process-on-spawn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", - "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.1.0.tgz", + "integrity": "sha512-JOnOPQ/8TZgjs1JIH/m9ni7FfimjNa/PRx7y/Wb5qdItsnhO0jE4AT7fC0HjC28DUQWDr50dwSYZLdRMlqDq3Q==", "dev": true, "dependencies": { "fromentries": "^1.2.0" @@ -7097,9 +7096,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.26.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.1.tgz", - "integrity": "sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==", + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.0.tgz", + "integrity": "sha512-3IMSWgP7C5KSQqmo1wjhKrwsvXAtF33jO3QY+Uy++ia7hqvgSK6iXbbg5PbDBc1P2ZbNEDgejOrN4YooXvhwCw==", "engines": { "node": ">=16" }, @@ -7171,9 +7170,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.26.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.1.tgz", - "integrity": "sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==", + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.0.tgz", + "integrity": "sha512-3IMSWgP7C5KSQqmo1wjhKrwsvXAtF33jO3QY+Uy++ia7hqvgSK6iXbbg5PbDBc1P2ZbNEDgejOrN4YooXvhwCw==", "engines": { "node": ">=16" }, @@ -8424,12 +8423,6 @@ "node": "*" } }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, "node_modules/through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index c8c568195cc..a25d4a1afdd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -159,10 +159,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.14.0", + "eslint": "^9.15.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.4.3", + "eslint-plugin-jsdoc": "^50.5.0", "esmock": "^2.6.9", "globals": "^15.12.0", "istanbul-lib-coverage": "^3.2.2", From 87262e102b1214e6db7e82b65cd2e96ac70b07c3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2024 05:29:17 +0000 Subject: [PATCH 1180/1272] [ui5-project]Bump fsfe/reuse-action from 4 to 5 Bumps [fsfe/reuse-action](https://github.com/fsfe/reuse-action) from 4 to 5. - [Release notes](https://github.com/fsfe/reuse-action/releases) - [Commits](https://github.com/fsfe/reuse-action/compare/v4...v5) --- updated-dependencies: - dependency-name: fsfe/reuse-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/reuse-compliance.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index 18a8a8494cc..a77eef3eac9 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -15,4 +15,4 @@ jobs: steps: - uses: actions/checkout@v4 - name: Execute REUSE Compliance Check - uses: fsfe/reuse-action@v4 + uses: fsfe/reuse-action@v5 From b5b732cf66f80bc5f06d10440f58abf29e081d7c Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 24 Nov 2024 03:20:11 +0000 Subject: [PATCH 1181/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 66 +++++++++++++++--------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 251f7997555..04f377ccf1b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -999,9 +999,9 @@ } }, "node_modules/@npmcli/map-workspaces": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-4.0.1.tgz", - "integrity": "sha512-g5H8ljH7Z+4T1ASsfcL09gZl4YGw6M4GbjzPt6HgE+pCRSKC4nlNc4nY75zshi88eEHcdoh3Q8XgWFkGKoVOPw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-4.0.2.tgz", + "integrity": "sha512-mnuMuibEbkaBTYj9HQ3dMe6L0ylYW+s/gfz7tBDMFY/la0w9Kf44P9aLn4/+/t3aTR3YUHKoT6XQL9rlicIe3Q==", "dependencies": { "@npmcli/name-from-folder": "^3.0.0", "@npmcli/package-json": "^6.0.0", @@ -2107,9 +2107,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001680", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001680.tgz", - "integrity": "sha512-rPQy70G6AGUMnbwS1z6Xg+RkHYPAi18ihs47GH0jcxIG7wArmPgY3XbS2sRdBbxJljp3thdT8BIqv9ccCypiPA==", + "version": "1.0.30001683", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001683.tgz", + "integrity": "sha512-iqmNnThZ0n70mNwvxpEC2nBJ037ZHZUoBI5Gorh1Mw6IlEAZujEoU1tXA628iZfzm7R9FvFzxbfdgml82a3k8Q==", "dev": true, "funding": [ { @@ -2724,9 +2724,9 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz", - "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -3186,9 +3186,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.62", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.62.tgz", - "integrity": "sha512-t8c+zLmJHa9dJy96yBZRXGQYoiCEnHYgFwn1asvSPZSUdVxnB62A4RASd7k41ytG3ErFBA0TpHlKg9D9SQBmLg==", + "version": "1.5.64", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.64.tgz", + "integrity": "sha512-IXEuxU+5ClW2IGEYFC2T7szbyVgehupCWQe5GNh+H065CD6U6IFN0s4KeAMFGNmQolRU4IV7zGBWSYMmZ8uuqQ==", "dev": true }, "node_modules/emittery": { @@ -3968,9 +3968,9 @@ } }, "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.2.tgz", + "integrity": "sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==", "dev": true }, "node_modules/foreground-child": { @@ -4332,9 +4332,9 @@ } }, "node_modules/hosted-git-info": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.0.tgz", - "integrity": "sha512-4nw3vOVR+vHUOT8+U4giwe2tcGv+R3pwwRidUe67DoMBTjhrfr6rZYJVVwdkBE+Um050SG+X9tf0Jo4fOpn01w==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.2.tgz", + "integrity": "sha512-sYKnA7eGln5ov8T8gnYlkSOxFJvywzEx9BueN6xo/GKO8PGiI6uK6xx+DIGe45T3bdVjLAQDQW1aicT8z8JwQg==", "dependencies": { "lru-cache": "^10.0.1" }, @@ -5277,9 +5277,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.12", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.12.tgz", - "integrity": "sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==", + "version": "0.30.13", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.13.tgz", + "integrity": "sha512-8rYBO+MsWkgjDSOvLomYnzhdwEG51olQ4zL5KXnNJWV5MNmrb4rTZdrtkhxjnD/QyZUqR/Z/XDsUs/4ej2nx0g==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" @@ -5798,9 +5798,9 @@ } }, "node_modules/node-gyp-build": { - "version": "4.8.3", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.3.tgz", - "integrity": "sha512-EMS95CMJzdoSKoIiXo8pxKoL8DYxwIZXYlLmgPb8KUv794abpnLK6ynsCAWNliOjREKruYKdzbh76HHYUHX7nw==", + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", + "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==", "dev": true, "bin": { "node-gyp-build": "bin.js", @@ -6128,9 +6128,9 @@ } }, "node_modules/npm-install-checks": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.0.tgz", - "integrity": "sha512-bkTildVlofeMX7wiOaWk3PlW7YcBXAuEc7TWpOxwUgalG5ZvgT/ms+6OX9zt7iGLv4+VhKbRZhpOfgQJzk1YAw==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.1.tgz", + "integrity": "sha512-u6DCwbow5ynAX5BdiHQ9qvexme4U3qHW3MWe5NqH+NeBm0LbiH6zvGjNNew1fY+AZZUtVHbOPF3j7mJxbUzpXg==", "dependencies": { "semver": "^7.1.1" }, @@ -7096,9 +7096,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.27.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.0.tgz", - "integrity": "sha512-3IMSWgP7C5KSQqmo1wjhKrwsvXAtF33jO3QY+Uy++ia7hqvgSK6iXbbg5PbDBc1P2ZbNEDgejOrN4YooXvhwCw==", + "version": "4.27.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.1.tgz", + "integrity": "sha512-3Ta7CyV6daqpwuGJMJKABaUChZZejpzysZkQg1//bLRg2wKQ4duwsg3MMIsHuElq58iDqizg4DBUmK8H8wExJg==", "engines": { "node": ">=16" }, @@ -7170,9 +7170,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.27.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.0.tgz", - "integrity": "sha512-3IMSWgP7C5KSQqmo1wjhKrwsvXAtF33jO3QY+Uy++ia7hqvgSK6iXbbg5PbDBc1P2ZbNEDgejOrN4YooXvhwCw==", + "version": "4.27.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.1.tgz", + "integrity": "sha512-3Ta7CyV6daqpwuGJMJKABaUChZZejpzysZkQg1//bLRg2wKQ4duwsg3MMIsHuElq58iDqizg4DBUmK8H8wExJg==", "engines": { "node": ">=16" }, From 8f2e719cbb604220219ea703e449cbec34e2c3de Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 13 Nov 2024 11:17:24 +0100 Subject: [PATCH 1182/1272] [ui5-project][DEPENDENCY] Switch from "rimraf" to native "fs.rm" (#780) --- packages/project/lib/build/ProjectBuilder.js | 4 +-- .../lib/ui5Framework/maven/Installer.js | 8 ++--- .../project/lib/ui5Framework/npm/Installer.js | 6 ++-- packages/project/lib/utils/fs.js | 5 ++++ packages/project/package-lock.json | 9 +++++- packages/project/package.json | 4 +-- .../test/lib/ui5framework/maven/Installer.js | 7 ++--- .../test/lib/ui5framework/npm/Installer.js | 30 ++++++++----------- 8 files changed, 40 insertions(+), 33 deletions(-) diff --git a/packages/project/lib/build/ProjectBuilder.js b/packages/project/lib/build/ProjectBuilder.js index fe39870d978..af1804b6af1 100644 --- a/packages/project/lib/build/ProjectBuilder.js +++ b/packages/project/lib/build/ProjectBuilder.js @@ -1,4 +1,4 @@ -import {rimraf} from "rimraf"; +import {rmrf} from "../utils/fs.js"; import * as resourceFactory from "@ui5/fs/resourceFactory"; import BuildLogger from "@ui5/logger/internal/loggers/Build"; import composeProjectList from "./helpers/composeProjectList.js"; @@ -233,7 +233,7 @@ class ProjectBuilder { if (cleanDest) { this.#log.info(`Cleaning target directory...`); - await rimraf(destPath); + await rmrf(destPath); } const startTime = process.hrtime(); try { diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js index 6a85b7ccb3e..08811dcb3de 100644 --- a/packages/project/lib/ui5Framework/maven/Installer.js +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -7,7 +7,7 @@ import {promisify} from "node:util"; import Registry from "./Registry.js"; import AbstractInstaller from "../AbstractInstaller.js"; import CacheMode from "./CacheMode.js"; -import {rimraf} from "rimraf"; +import {rmrf} from "../../utils/fs.js"; const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const writeFile = promisify(fs.writeFile); @@ -275,7 +275,7 @@ class Installer extends AbstractInstaller { if (pkgName) { const packageDir = this._getTargetDirForPackage(pkgName, revision); log.verbose(`Removing directory ${packageDir}...`); - await rimraf(packageDir); + await rmrf(packageDir); } } } @@ -326,7 +326,7 @@ class Installer extends AbstractInstaller { // Check whether staging dir already exists and remove it if (await this._pathExists(stagingDir)) { log.verbose(`Removing stale staging directory at ${stagingDir}...`); - await rimraf(stagingDir); + await rmrf(stagingDir); } await mkdirp(stagingDir); @@ -345,7 +345,7 @@ class Installer extends AbstractInstaller { // Check whether target dir already exists and remove it if (await this._pathExists(targetDir)) { log.verbose(`Removing existing target directory at ${targetDir}...`); - await rimraf(targetDir); + await rmrf(targetDir); } // Do not create target dir itself to prevent EPERM error in following rename operation diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index da3c7bf27a4..7a6564c1d41 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -4,7 +4,7 @@ import fs from "graceful-fs"; import {promisify} from "node:util"; import Registry from "./Registry.js"; import AbstractInstaller from "../AbstractInstaller.js"; -import {rimraf} from "rimraf"; +import {rmrf} from "../../utils/fs.js"; const stat = promisify(fs.stat); const readFile = promisify(fs.readFile); const rename = promisify(fs.rename); @@ -99,7 +99,7 @@ class Installer extends AbstractInstaller { // Check whether staging dir already exists and remove it if (await this._pathExists(stagingDir)) { log.verbose(`Removing existing staging directory at ${stagingDir}...`); - await rimraf(stagingDir); + await rmrf(stagingDir); } // Check whether target dir already exists and remove it. @@ -108,7 +108,7 @@ class Installer extends AbstractInstaller { // directory so that the rename operation won't have any no trouble. if (await this._pathExists(targetDir)) { log.verbose(`Removing existing target directory at ${targetDir}...`); - await rimraf(targetDir); + await rmrf(targetDir); } log.verbose(`Installing ${pkgName} in version ${version} to ${stagingDir}...`); diff --git a/packages/project/lib/utils/fs.js b/packages/project/lib/utils/fs.js index a7a930aa39b..a8852509b82 100644 --- a/packages/project/lib/utils/fs.js +++ b/packages/project/lib/utils/fs.js @@ -1,7 +1,12 @@ import fs from "graceful-fs"; import {promisify} from "node:util"; const mkdir = promisify(fs.mkdir); +const rm = promisify(fs.rm); export async function mkdirp(dirPath) { return mkdir(dirPath, {recursive: true}); } + +export async function rmrf(dirPath) { + return rm(dirPath, {recursive: true, force: true}); +} diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 04f377ccf1b..49640084659 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -27,7 +27,6 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^6.0.1", "semver": "^7.6.3", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -54,6 +53,7 @@ "jsdoc": "^4.0.4", "nyc": "^17.1.0", "open-cli": "^8.0.0", + "rimraf": "^6.0.1", "sinon": "^19.0.2", "tap-xunit": "^2.4.1" }, @@ -7347,6 +7347,8 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.0.1.tgz", "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", + "dev": true, + "license": "ISC", "dependencies": { "glob": "^11.0.0", "package-json-from-dist": "^1.0.0" @@ -7365,6 +7367,7 @@ "version": "11.0.0", "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.0.tgz", "integrity": "sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==", + "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^4.0.1", @@ -7387,6 +7390,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.2.tgz", "integrity": "sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==", + "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -7401,6 +7405,7 @@ "version": "11.0.2", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.2.tgz", "integrity": "sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==", + "dev": true, "engines": { "node": "20 || >=22" } @@ -7409,6 +7414,7 @@ "version": "10.0.1", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", + "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -7423,6 +7429,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "dev": true, "dependencies": { "lru-cache": "^11.0.0", "minipass": "^7.1.2" diff --git a/packages/project/package.json b/packages/project/package.json index a25d4a1afdd..440aa4bd0f6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -54,7 +54,7 @@ "version": "git-chglog --sort semver --next-tag v$npm_package_version -o CHANGELOG.md v4.0.0.. && git add CHANGELOG.md", "prepublishOnly": "git push --follow-tags", "release-note": "git-chglog --sort semver -c .chglog/release-config.yml v$npm_package_version", - "depcheck": "depcheck --ignores @ui5/project,docdash,@istanbuljs/esm-loader-hook" + "depcheck": "depcheck --ignores @ui5/project,docdash,@istanbuljs/esm-loader-hook,rimraf" }, "files": [ "CHANGELOG.md", @@ -138,7 +138,6 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.8", - "rimraf": "^6.0.1", "semver": "^7.6.3", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -173,6 +172,7 @@ "jsdoc": "^4.0.4", "nyc": "^17.1.0", "open-cli": "^8.0.0", + "rimraf": "^6.0.1", "sinon": "^19.0.2", "tap-xunit": "^2.4.1" } diff --git a/packages/project/test/lib/ui5framework/maven/Installer.js b/packages/project/test/lib/ui5framework/maven/Installer.js index 044f04cb5ad..86b00754cdb 100644 --- a/packages/project/test/lib/ui5framework/maven/Installer.js +++ b/packages/project/test/lib/ui5framework/maven/Installer.js @@ -3,11 +3,10 @@ import sinon from "sinon"; import esmock from "esmock"; import path from "node:path"; import fs from "graceful-fs"; -import {rimraf} from "rimraf"; test.beforeEach(async (t) => { t.context.mkdirpStub = sinon.stub().resolves(); - t.context.rimrafStub = sinon.stub().resolves(); + t.context.rmrfStub = sinon.stub().resolves(); t.context.readFileStub = sinon.stub(); t.context.writeFileStub = sinon.stub(); t.context.renameStub = sinon.stub().returns(); @@ -20,7 +19,6 @@ test.beforeEach(async (t) => { t.context.promisifyStub.withArgs(fs.rename).callsFake(() => t.context.renameStub); t.context.promisifyStub.withArgs(fs.rm).callsFake(() => t.context.rmStub); t.context.promisifyStub.withArgs(fs.stat).callsFake(() => t.context.statStub); - t.context.promisifyStub.withArgs(rimraf).callsFake(() => t.context.rimrafStub); t.context.lockStub = sinon.stub(); t.context.unlockStub = sinon.stub(); @@ -39,7 +37,8 @@ test.beforeEach(async (t) => { t.context.AbstractInstaller = await esmock.p("../../../../lib/ui5Framework/AbstractInstaller.js", { "../../../../lib/utils/fs.js": { - mkdirp: t.context.mkdirpStub + mkdirp: t.context.mkdirpStub, + rmrf: t.context.rmrfStub }, "lockfile": { lock: t.context.lockStub, diff --git a/packages/project/test/lib/ui5framework/npm/Installer.js b/packages/project/test/lib/ui5framework/npm/Installer.js index 1020e45cd0e..c06b36ae33d 100644 --- a/packages/project/test/lib/ui5framework/npm/Installer.js +++ b/packages/project/test/lib/ui5framework/npm/Installer.js @@ -7,7 +7,7 @@ const __dirname = import.meta.dirname; test.beforeEach(async (t) => { t.context.mkdirpStub = sinon.stub().resolves(); - t.context.rimrafStub = sinon.stub().resolves(); + t.context.rmrfStub = sinon.stub().resolves(); t.context.lockStub = sinon.stub(); t.context.unlockStub = sinon.stub(); @@ -16,10 +16,8 @@ test.beforeEach(async (t) => { t.context.AbstractResolver = await esmock.p("../../../../lib/ui5Framework/AbstractInstaller.js", { "../../../../lib/utils/fs.js": { - mkdirp: t.context.mkdirpStub - }, - "rimraf": { - rimraf: t.context.rimrafStub + mkdirp: t.context.mkdirpStub, + rmrf: t.context.rmrfStub }, "lockfile": { lock: t.context.lockStub, @@ -29,10 +27,8 @@ test.beforeEach(async (t) => { t.context.Installer = await esmock.p("../../../../lib/ui5Framework/npm/Installer.js", { "../../../../lib/ui5Framework/AbstractInstaller.js": t.context.AbstractResolver, "../../../../lib/utils/fs.js": { - mkdirp: t.context.mkdirpStub - }, - "rimraf": { - rimraf: t.context.rimrafStub + mkdirp: t.context.mkdirpStub, + rmrf: t.context.rmrfStub }, "graceful-fs": { rename: t.context.renameStub, @@ -512,7 +508,7 @@ test.serial("Installer: installPackage with new package", async (t) => { "_packageJsonExists should be called with the correct arguments"); t.is(pathExistsStub.getCall(1).args[0], targetDir, "_packageJsonExists should be called with the correct arguments"); - t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); + t.is(t.context.rmrfStub.callCount, 0, "rmrf should never be called"); t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); @@ -577,7 +573,7 @@ test.serial("Installer: installPackage with already installed package", async (t t.is(t.context.unlockStub.callCount, 0, "unlock should never be called"); t.is(getStagingDirForPackageStub.callCount, 0, "_getStagingDirForPackage should never be called"); t.is(pathExistsStub.callCount, 0, "_pathExists should never be called"); - t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); + t.is(t.context.rmrfStub.callCount, 0, "rmrf should never be called"); t.is(extractPackageStub.callCount, 0, "_extractPackage should never be called"); t.is(t.context.mkdirpStub.callCount, 0, "mkdirp should never be called"); t.is(t.context.renameStub.callCount, 0, "fs.rename should never be called"); @@ -633,7 +629,7 @@ test.serial("Installer: installPackage with install already in progress", async t.is(t.context.lockStub.callCount, 1, "lock should be called once"); t.is(t.context.unlockStub.callCount, 1, "unlock should be called once"); - t.is(t.context.rimrafStub.callCount, 0, "rimraf should never be called"); + t.is(t.context.rmrfStub.callCount, 0, "rmrf should never be called"); t.is(t.context.mkdirpStub.callCount, 1, "mkdirp should be called once"); t.is(t.context.mkdirpStub.getCall(0).args[0], path.join("/", "ui5Data", "framework", "locks"), @@ -709,11 +705,11 @@ test.serial("Installer: installPackage with new package and existing target and t.is(pathExistsStub.getCall(1).args[0], targetDir, "_packageJsonExists should be called with the correct arguments"); - t.is(t.context.rimrafStub.callCount, 2, "rimraf should be called twice"); - t.is(t.context.rimrafStub.getCall(0).args[0], "staging-dir-path", - "rimraf should be called with the correct arguments"); - t.is(t.context.rimrafStub.getCall(1).args[0], targetDir, - "rimraf should be called with the correct arguments"); + t.is(t.context.rmrfStub.callCount, 2, "rmrf should be called twice"); + t.is(t.context.rmrfStub.getCall(0).args[0], "staging-dir-path", + "rmrf should be called with the correct arguments"); + t.is(t.context.rmrfStub.getCall(1).args[0], targetDir, + "rmrf should be called with the correct arguments"); t.is(extractPackageStub.callCount, 1, "_extractPackage should be called once"); From 1044151ef6173219ff5d1d867c7f2055d7ed933a Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 29 Nov 2024 10:57:28 +0000 Subject: [PATCH 1183/1272] [ui5-project][INTERNAL] Bump @ui5/builder from to Changelog of this version: https://github.com/SAP/ui5-builder/blob/v/CHANGELOG.md --- packages/project/package-lock.json | 53 +++++++++++++++--------------- packages/project/package.json | 4 +-- 2 files changed, 28 insertions(+), 29 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 49640084659..72e0020e5fc 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^9.15.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.5.0", + "eslint-plugin-jsdoc": "^50.6.0", "esmock": "^2.6.9", "globals": "^15.12.0", "istanbul-lib-coverage": "^3.2.2", @@ -62,7 +62,7 @@ "npm": ">= 8" }, "peerDependencies": { - "@ui5/builder": "^4.0.0" + "@ui5/builder": "^4.0.4" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -1029,9 +1029,9 @@ } }, "node_modules/@npmcli/package-json": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.0.1.tgz", - "integrity": "sha512-YW6PZ99sc1Q4DINEY2td5z9Z3rwbbsx7CyCnOc7UXUUdePXh5gPi1UeaoQVmKQMVbIU7aOwX2l1OG5ZfjgGi5g==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.1.0.tgz", + "integrity": "sha512-t6G+6ZInT4X+tqj2i+wlLIeCKnKOTuz9/VFYDtj+TGTur5q7sp/OYrQA19LdBbWfXDOi0Y4jtedV6xtB8zQ9ug==", "dependencies": { "@npmcli/git": "^6.0.0", "glob": "^10.2.2", @@ -2107,9 +2107,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001683", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001683.tgz", - "integrity": "sha512-iqmNnThZ0n70mNwvxpEC2nBJ037ZHZUoBI5Gorh1Mw6IlEAZujEoU1tXA628iZfzm7R9FvFzxbfdgml82a3k8Q==", + "version": "1.0.30001684", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001684.tgz", + "integrity": "sha512-G1LRwLIQjBQoyq0ZJGqGIJUXzJ8irpbjHLpVRXDvBEScFJ9b17sgK6vlx0GAJFE21okD7zXl08rRRUfq6HdoEQ==", "dev": true, "funding": [ { @@ -3186,9 +3186,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.64", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.64.tgz", - "integrity": "sha512-IXEuxU+5ClW2IGEYFC2T7szbyVgehupCWQe5GNh+H065CD6U6IFN0s4KeAMFGNmQolRU4IV7zGBWSYMmZ8uuqQ==", + "version": "1.5.67", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.67.tgz", + "integrity": "sha512-nz88NNBsD7kQSAGGJyp8hS6xSPtWwqNogA0mjtc2nUYeEf3nURK9qpV18TuBdDmEDgVWotS8Wkzf+V52dSQ/LQ==", "dev": true }, "node_modules/emittery": { @@ -3418,9 +3418,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.5.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.5.0.tgz", - "integrity": "sha512-xTkshfZrUbiSHXBwZ/9d5ulZ2OcHXxSvm/NPo494H/hadLRJwOq5PMV0EUpMqsb9V+kQo+9BAgi6Z7aJtdBp2A==", + "version": "50.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.0.tgz", + "integrity": "sha512-tCNp4fR79Le3dYTPB0dKEv7yFyvGkUCa+Z3yuTrrNGGOxBlXo9Pn0PEgroOZikUQOGjxoGMVKNjrOHcYEdfszg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", @@ -5277,9 +5277,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.13", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.13.tgz", - "integrity": "sha512-8rYBO+MsWkgjDSOvLomYnzhdwEG51olQ4zL5KXnNJWV5MNmrb4rTZdrtkhxjnD/QyZUqR/Z/XDsUs/4ej2nx0g==", + "version": "0.30.14", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.14.tgz", + "integrity": "sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" @@ -5710,9 +5710,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", "dev": true, "funding": [ { @@ -7096,9 +7096,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.27.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.1.tgz", - "integrity": "sha512-3Ta7CyV6daqpwuGJMJKABaUChZZejpzysZkQg1//bLRg2wKQ4duwsg3MMIsHuElq58iDqizg4DBUmK8H8wExJg==", + "version": "4.29.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.29.0.tgz", + "integrity": "sha512-RPYt6dKyemXJe7I6oNstcH24myUGSReicxcHTvCLgzm4e0n8y05dGvcGB15/SoPRBmhlMthWQ9pvKyL81ko8nQ==", "engines": { "node": ">=16" }, @@ -7170,9 +7170,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.27.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.1.tgz", - "integrity": "sha512-3Ta7CyV6daqpwuGJMJKABaUChZZejpzysZkQg1//bLRg2wKQ4duwsg3MMIsHuElq58iDqizg4DBUmK8H8wExJg==", + "version": "4.29.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.29.0.tgz", + "integrity": "sha512-RPYt6dKyemXJe7I6oNstcH24myUGSReicxcHTvCLgzm4e0n8y05dGvcGB15/SoPRBmhlMthWQ9pvKyL81ko8nQ==", "engines": { "node": ">=16" }, @@ -7348,7 +7348,6 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.0.1.tgz", "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", "dev": true, - "license": "ISC", "dependencies": { "glob": "^11.0.0", "package-json-from-dist": "^1.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index 440aa4bd0f6..3efaf9fb7f7 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -143,7 +143,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^4.0.0" + "@ui5/builder": "^4.0.4" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -161,7 +161,7 @@ "eslint": "^9.15.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.5.0", + "eslint-plugin-jsdoc": "^50.6.0", "esmock": "^2.6.9", "globals": "^15.12.0", "istanbul-lib-coverage": "^3.2.2", From d927e4b28f7204efe9a5e51fff83805d138111e4 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 29 Nov 2024 11:04:38 +0000 Subject: [PATCH 1184/1272] [ui5-project]Release 4.0.4 --- packages/project/CHANGELOG.md | 12 +++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 1ad72c7b767..f5dab21ad35 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,16 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.3...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.4...HEAD). + + +## [v4.0.4] - 2024-11-29 +### Dependency Updates +- Switch from "rimraf" to native "fs.rm" ([#780](https://github.com/SAP/ui5-project/issues/780)) [`1998257`](https://github.com/SAP/ui5-project/commit/1998257295be7038dd4222f1b241848c1fd0a05f) +- Bump [@npmcli](https://github.com/npmcli)/config from 8.3.4 to 9.0.0 ([#773](https://github.com/SAP/ui5-project/issues/773)) [`ad38e17`](https://github.com/SAP/ui5-project/commit/ad38e1788c2b4b4407ea7250c04d74e4faf3a1d6) +- Bump pacote from 18.0.6 to 19.0.0 ([#772](https://github.com/SAP/ui5-project/issues/772)) [`df4bbfe`](https://github.com/SAP/ui5-project/commit/df4bbfef98923c48d43c742b13feefd640cc9529) +- Bump make-fetch-happen from 13.0.1 to 14.0.0 ([#771](https://github.com/SAP/ui5-project/issues/771)) [`d52255c`](https://github.com/SAP/ui5-project/commit/d52255c3c1ca50ee255cb28c9bbef24007b16d51) + ## [v4.0.3] - 2024-08-27 @@ -559,6 +568,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v4.0.4]: https://github.com/SAP/ui5-project/compare/v4.0.3...v4.0.4 [v4.0.3]: https://github.com/SAP/ui5-project/compare/v4.0.2...v4.0.3 [v4.0.2]: https://github.com/SAP/ui5-project/compare/v4.0.1...v4.0.2 [v4.0.1]: https://github.com/SAP/ui5-project/compare/v4.0.0...v4.0.1 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 72e0020e5fc..9cd1b64a94f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "4.0.3", + "version": "4.0.4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "4.0.3", + "version": "4.0.4", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^9.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 3efaf9fb7f7..4106071f79b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "4.0.3", + "version": "4.0.4", "description": "UI5 Tooling - Project ", "author": { "name": "SAP SE", From c38585e784cf9e78ed6f5ef652a73f0eb5ae7499 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 1 Dec 2024 03:20:14 +0000 Subject: [PATCH 1185/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 55 ++++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 27 insertions(+), 30 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9cd1b64a94f..afe6873fa15 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.15.0", + "eslint": "^9.16.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.0", @@ -488,9 +488,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.15.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.15.0.tgz", - "integrity": "sha512-tMTqrY+EzbXmKJR5ToI8lxu7jaN5EdmrBFJpQk5JmSlyLsx6o4t27r883K5xsLuCYCpfKBCGswMSWXsM+jB7lg==", + "version": "9.16.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz", + "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1108,28 +1108,25 @@ } }, "node_modules/@rollup/pluginutils": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", - "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz", + "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==", "dev": true, "dependencies": { - "estree-walker": "^2.0.1", - "picomatch": "^2.2.2" + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" }, "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/@rollup/pluginutils/node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" + "node": ">=14.0.0" }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, "node_modules/@sigstore/bundle": { @@ -1381,13 +1378,13 @@ } }, "node_modules/@vercel/nft": { - "version": "0.27.6", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.6.tgz", - "integrity": "sha512-mwuyUxskdcV8dd7N7JnxBgvFEz1D9UOePI/WyLLzktv6HSCwgPNQGit/UJ2IykAWGlypKw4pBQjOKWvIbXITSg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.7.tgz", + "integrity": "sha512-FG6H5YkP4bdw9Ll1qhmbxuE8KwW2E/g8fJpM183fWQLeVDGqzeywMIeJ9h2txdWZ03psgWMn6QymTxaDLmdwUg==", "dev": true, "dependencies": { "@mapbox/node-pre-gyp": "^1.0.11", - "@rollup/pluginutils": "^4.0.0", + "@rollup/pluginutils": "^5.1.3", "acorn": "^8.6.0", "acorn-import-attributes": "^1.9.5", "async-sema": "^3.1.1", @@ -3296,9 +3293,9 @@ } }, "node_modules/eslint": { - "version": "9.15.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.15.0.tgz", - "integrity": "sha512-7CrWySmIibCgT1Os28lUU6upBshZ+GxybLOrmRzi08kS8MBuO8QA7pXEgYgY5W8vK3e74xv0lpjo9DbaGU9Rkw==", + "version": "9.16.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz", + "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3306,7 +3303,7 @@ "@eslint/config-array": "^0.19.0", "@eslint/core": "^0.9.0", "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.15.0", + "@eslint/js": "9.16.0", "@eslint/plugin-kit": "^0.2.3", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 4106071f79b..8ed639afdf8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.15.0", + "eslint": "^9.16.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.0", From 7bab4fa8db7e1daf6d99a21345b891831d4b7aae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Dec 2024 07:44:15 +0000 Subject: [PATCH 1186/1272] [ui5-project][DEPENDENCY] Bump pacote from 19.0.1 to 21.0.0 (#782) --- packages/project/package-lock.json | 20 ++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index afe6873fa15..a1fc106b162 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -22,7 +22,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^14.0.3", "node-stream-zip": "^1.15.0", - "pacote": "^19.0.1", + "pacote": "^21.0.0", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", @@ -6158,14 +6158,14 @@ } }, "node_modules/npm-packlist": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-9.0.0.tgz", - "integrity": "sha512-8qSayfmHJQTx3nJWYbbUmflpyarbLMBc6LCAjYsiGtXxDB68HaZpb8re6zeaLGxZzDuMdhsg70jryJe+RrItVQ==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-10.0.0.tgz", + "integrity": "sha512-rht9U6nS8WOBDc53eipZNPo5qkAV4X2rhKE2Oj1DYUQ3DieXfj0mKkVmjnf3iuNdtMd8WfLdi2L6ASkD/8a+Kg==", "dependencies": { "ignore-walk": "^7.0.0" }, "engines": { - "node": "^18.17.0 || >=20.5.0" + "node": "^20.17.0 || >=22.9.0" } }, "node_modules/npm-pick-manifest": { @@ -6616,9 +6616,9 @@ "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" }, "node_modules/pacote": { - "version": "19.0.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-19.0.1.tgz", - "integrity": "sha512-zIpxWAsr/BvhrkSruspG8aqCQUUrWtpwx0GjiRZQhEM/pZXrigA32ElN3vTcCPUDOFmHr6SFxwYrvVUs5NTEUg==", + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-21.0.0.tgz", + "integrity": "sha512-lcqexq73AMv6QNLo7SOpz0JJoaGdS3rBFgF122NZVl1bApo2mfu+XzUBU/X/XsiJu+iUmKpekRayqQYAs+PhkA==", "dependencies": { "@npmcli/git": "^6.0.0", "@npmcli/installed-package-contents": "^3.0.0", @@ -6629,7 +6629,7 @@ "fs-minipass": "^3.0.0", "minipass": "^7.0.2", "npm-package-arg": "^12.0.0", - "npm-packlist": "^9.0.0", + "npm-packlist": "^10.0.0", "npm-pick-manifest": "^10.0.0", "npm-registry-fetch": "^18.0.0", "proc-log": "^5.0.0", @@ -6642,7 +6642,7 @@ "pacote": "bin/index.js" }, "engines": { - "node": "^18.17.0 || >=20.5.0" + "node": "^20.17.0 || >=22.9.0" } }, "node_modules/parent-module": { diff --git a/packages/project/package.json b/packages/project/package.json index 8ed639afdf8..6df5998a528 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -133,7 +133,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^14.0.3", "node-stream-zip": "^1.15.0", - "pacote": "^19.0.1", + "pacote": "^21.0.0", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", From 6dd74edc0d51e3e2c47052060bc3570f27b81e33 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Mon, 2 Dec 2024 12:41:11 +0200 Subject: [PATCH 1187/1272] [ui5-project]Revert "[DEPENDENCY] Bump pacote from 19.0.1 to 21.0.0" (#783) Reverts SAP/ui5-project#782 --- packages/project/package-lock.json | 20 ++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a1fc106b162..afe6873fa15 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -22,7 +22,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^14.0.3", "node-stream-zip": "^1.15.0", - "pacote": "^21.0.0", + "pacote": "^19.0.1", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", @@ -6158,14 +6158,14 @@ } }, "node_modules/npm-packlist": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-10.0.0.tgz", - "integrity": "sha512-rht9U6nS8WOBDc53eipZNPo5qkAV4X2rhKE2Oj1DYUQ3DieXfj0mKkVmjnf3iuNdtMd8WfLdi2L6ASkD/8a+Kg==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-9.0.0.tgz", + "integrity": "sha512-8qSayfmHJQTx3nJWYbbUmflpyarbLMBc6LCAjYsiGtXxDB68HaZpb8re6zeaLGxZzDuMdhsg70jryJe+RrItVQ==", "dependencies": { "ignore-walk": "^7.0.0" }, "engines": { - "node": "^20.17.0 || >=22.9.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-pick-manifest": { @@ -6616,9 +6616,9 @@ "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" }, "node_modules/pacote": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-21.0.0.tgz", - "integrity": "sha512-lcqexq73AMv6QNLo7SOpz0JJoaGdS3rBFgF122NZVl1bApo2mfu+XzUBU/X/XsiJu+iUmKpekRayqQYAs+PhkA==", + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-19.0.1.tgz", + "integrity": "sha512-zIpxWAsr/BvhrkSruspG8aqCQUUrWtpwx0GjiRZQhEM/pZXrigA32ElN3vTcCPUDOFmHr6SFxwYrvVUs5NTEUg==", "dependencies": { "@npmcli/git": "^6.0.0", "@npmcli/installed-package-contents": "^3.0.0", @@ -6629,7 +6629,7 @@ "fs-minipass": "^3.0.0", "minipass": "^7.0.2", "npm-package-arg": "^12.0.0", - "npm-packlist": "^10.0.0", + "npm-packlist": "^9.0.0", "npm-pick-manifest": "^10.0.0", "npm-registry-fetch": "^18.0.0", "proc-log": "^5.0.0", @@ -6642,7 +6642,7 @@ "pacote": "bin/index.js" }, "engines": { - "node": "^20.17.0 || >=22.9.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/parent-module": { diff --git a/packages/project/package.json b/packages/project/package.json index 6df5998a528..8ed639afdf8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -133,7 +133,7 @@ "lockfile": "^1.0.4", "make-fetch-happen": "^14.0.3", "node-stream-zip": "^1.15.0", - "pacote": "^21.0.0", + "pacote": "^19.0.1", "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", From 8f27857db08e8e874aae39b95ccdcf4209690b5a Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 8 Dec 2024 03:20:13 +0000 Subject: [PATCH 1188/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 426 ++++++++--------------------- packages/project/package.json | 2 +- 2 files changed, 121 insertions(+), 307 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index afe6873fa15..8b8a366e18c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -44,7 +44,7 @@ "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.0", "esmock": "^2.6.9", - "globals": "^15.12.0", + "globals": "^15.13.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -97,9 +97,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.2.tgz", - "integrity": "sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.3.tgz", + "integrity": "sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==", "dev": true, "engines": { "node": ">=6.9.0" @@ -145,13 +145,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.2.tgz", - "integrity": "sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.3.tgz", + "integrity": "sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.26.2", - "@babel/types": "^7.26.0", + "@babel/parser": "^7.26.3", + "@babel/types": "^7.26.3", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -264,12 +264,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz", - "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.3.tgz", + "integrity": "sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==", "dev": true, "dependencies": { - "@babel/types": "^7.26.0" + "@babel/types": "^7.26.3" }, "bin": { "parser": "bin/babel-parser.js" @@ -293,16 +293,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz", - "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==", + "version": "7.26.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.4.tgz", + "integrity": "sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.25.9", - "@babel/generator": "^7.25.9", - "@babel/parser": "^7.25.9", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.3", + "@babel/parser": "^7.26.3", "@babel/template": "^7.25.9", - "@babel/types": "^7.25.9", + "@babel/types": "^7.26.3", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -320,9 +320,9 @@ } }, "node_modules/@babel/types": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz", - "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.3.tgz", + "integrity": "sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.25.9", @@ -386,12 +386,12 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.0.tgz", - "integrity": "sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==", + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.1.tgz", + "integrity": "sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==", "dev": true, "dependencies": { - "@eslint/object-schema": "^2.1.4", + "@eslint/object-schema": "^2.1.5", "debug": "^4.3.1", "minimatch": "^3.1.2" }, @@ -422,10 +422,13 @@ } }, "node_modules/@eslint/core": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.0.tgz", - "integrity": "sha512-7ATR9F0e4W85D/0w7cU0SNj7qkAexMG+bAHEZOjo9akvGuhHE2m7umzWzfnpa0XAg5Kxc1BWmtPMV67jJ+9VUg==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.1.tgz", + "integrity": "sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==", "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.15" + }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } @@ -497,18 +500,18 @@ } }, "node_modules/@eslint/object-schema": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz", - "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.5.tgz", + "integrity": "sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.3.tgz", - "integrity": "sha512-2b/g5hRmpbb1o4GnTZax9N9m0FXzz9OV42ZzI4rDDMDuHUqigAiQCEWChBWCY4ztAGVRjoWT19v0yMmc5/L5kA==", + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.4.tgz", + "integrity": "sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg==", "dev": true, "dependencies": { "levn": "^0.4.1" @@ -903,9 +906,9 @@ } }, "node_modules/@npmcli/agent/node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.2.tgz", + "integrity": "sha512-JVzqkCNRT+VfqzzgPWDPnwvDheSAUdiMUn3NoLXpDJF5lRqeJqyC9iGsAxIOAW+mzIdq+uP1TvcX6bMtrH0agg==", "dependencies": { "debug": "^4.3.4" }, @@ -914,11 +917,11 @@ } }, "node_modules/@npmcli/agent/node_modules/https-proxy-agent": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", - "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "^7.1.2", "debug": "4" }, "engines": { @@ -1065,14 +1068,14 @@ } }, "node_modules/@npmcli/run-script": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-9.0.1.tgz", - "integrity": "sha512-q9C0uHrb6B6cm3qXVM32UmpqTKuFGbtP23O2K5sLvPMz2hilKd0ptqGXSpuunOuOmPQb/aT5F/kCXFc1P2gO/A==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-9.0.2.tgz", + "integrity": "sha512-cJXiUlycdizQwvqE1iaAb4VRUM3RX09/8q46zjvy+ct9GhfZRWd7jXYVc1tn/CfRlGPVkX/u4sstRlepsm7hfw==", "dependencies": { "@npmcli/node-gyp": "^4.0.0", "@npmcli/package-json": "^6.0.0", "@npmcli/promise-spawn": "^8.0.0", - "node-gyp": "^10.0.0", + "node-gyp": "^11.0.0", "proc-log": "^5.0.0", "which": "^5.0.0" }, @@ -1568,6 +1571,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, "dependencies": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -1580,6 +1584,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, "engines": { "node": ">=8" } @@ -2104,9 +2109,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001684", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001684.tgz", - "integrity": "sha512-G1LRwLIQjBQoyq0ZJGqGIJUXzJ8irpbjHLpVRXDvBEScFJ9b17sgK6vlx0GAJFE21okD7zXl08rRRUfq6HdoEQ==", + "version": "1.0.30001687", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001687.tgz", + "integrity": "sha512-0S/FDhf4ZiqrTUiQ39dKeUjYRjkv7lOZU1Dgif2rIqrTzX/1wV2hfKu9TOm1IHkdSijfLswxTFzl/cvir+SLSQ==", "dev": true, "funding": [ { @@ -2405,6 +2410,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, "engines": { "node": ">=6" } @@ -2804,9 +2810,9 @@ } }, "node_modules/debug": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", - "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dependencies": { "ms": "^2.1.3" }, @@ -3183,9 +3189,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.67", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.67.tgz", - "integrity": "sha512-nz88NNBsD7kQSAGGJyp8hS6xSPtWwqNogA0mjtc2nUYeEf3nURK9qpV18TuBdDmEDgVWotS8Wkzf+V52dSQ/LQ==", + "version": "1.5.71", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.71.tgz", + "integrity": "sha512-dB68l59BI75W1BUGVTAEJy45CEVuEGy9qPVVQ8pnHyHMn36PLPPoE1mjLH+lo9rKulO3HC2OhbACI/8tCqJBcA==", "dev": true }, "node_modules/emittery": { @@ -4228,9 +4234,9 @@ } }, "node_modules/globals": { - "version": "15.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.12.0.tgz", - "integrity": "sha512-1+gLErljJFhbOVyaetcwJiJ4+eLe45S2E7P5UiZ9xGfeq3ATQf5DOv9G7MH3gGbKQLkzmNh2DxfZwLdw+j6oTQ==", + "version": "15.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.13.0.tgz", + "integrity": "sha512-49TewVEz0UxZjr1WYYsWpPrhyC/B/pA8Bq0fUmet2n+eR7yn0IvNzNaoBwnK6mdkzcN+se7Ez9zUgULTz2QH4g==", "dev": true, "engines": { "node": ">=18" @@ -4368,9 +4374,9 @@ } }, "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.2.tgz", + "integrity": "sha512-JVzqkCNRT+VfqzzgPWDPnwvDheSAUdiMUn3NoLXpDJF5lRqeJqyC9iGsAxIOAW+mzIdq+uP1TvcX6bMtrH0agg==", "dependencies": { "debug": "^4.3.4" }, @@ -4661,11 +4667,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" - }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -5772,26 +5773,26 @@ } }, "node_modules/node-gyp": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.2.0.tgz", - "integrity": "sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.0.0.tgz", + "integrity": "sha512-zQS+9MTTeCMgY0F3cWPyJyRFAkVltQ1uXm+xXu/ES6KFgC6Czo1Seb9vQW2wNxSX2OrDTiqL0ojtkFxBQ0ypIw==", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", "glob": "^10.3.10", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^13.0.0", - "nopt": "^7.0.0", - "proc-log": "^4.1.0", + "make-fetch-happen": "^14.0.3", + "nopt": "^8.0.0", + "proc-log": "^5.0.0", "semver": "^7.3.5", - "tar": "^6.2.1", - "which": "^4.0.0" + "tar": "^7.4.3", + "which": "^5.0.0" }, "bin": { "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/node-gyp-build": { @@ -5805,239 +5806,52 @@ "node-gyp-build-test": "build-test.js" } }, - "node_modules/node-gyp/node_modules/@npmcli/agent": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", - "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", - "dependencies": { - "agent-base": "^7.1.0", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.1", - "lru-cache": "^10.0.1", - "socks-proxy-agent": "^8.0.3" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/node-gyp/node_modules/@npmcli/fs": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", - "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/node-gyp/node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/node-gyp/node_modules/cacache": { - "version": "18.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", - "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/node-gyp/node_modules/https-proxy-agent": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", - "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", - "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/node-gyp/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/node-gyp/node_modules/make-fetch-happen": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", - "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", - "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "proc-log": "^4.2.0", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/node-gyp/node_modules/minipass-fetch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", - "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/node-gyp/node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/node-gyp/node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/node-gyp/node_modules/negotiator": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", - "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", + "node_modules/node-gyp/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", "engines": { - "node": ">= 0.6" + "node": ">=18" } }, - "node_modules/node-gyp/node_modules/nopt": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", - "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", - "dependencies": { - "abbrev": "^2.0.0" - }, + "node_modules/node-gyp/node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/node-gyp/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dependencies": { - "aggregate-error": "^3.0.0" + "mkdirp": "dist/cjs/src/bin.js" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/node-gyp/node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/node-gyp/node_modules/ssri": { - "version": "10.0.6", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", - "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/node-gyp/node_modules/unique-filename": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", - "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", - "dependencies": { - "unique-slug": "^4.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/node-gyp/node_modules/unique-slug": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", - "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "node_modules/node-gyp/node_modules/tar": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", "dependencies": { - "imurmurhash": "^0.1.4" + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=18" } }, - "node_modules/node-gyp/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", - "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" - }, + "node_modules/node-gyp/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", "engines": { - "node": "^16.13.0 || >=18.0.0" + "node": ">=18" } }, - "node_modules/node-gyp/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -6560,9 +6374,9 @@ } }, "node_modules/p-map": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.2.tgz", - "integrity": "sha512-z4cYYMMdKHzw4O5UkWJImbZynVIo0lSGTXc7bzB1e/rrDqkgGUNysK/o4bTr+0+xKvvLoTyGqYC4Fgljy9qe1Q==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.3.tgz", + "integrity": "sha512-VkndIv2fIB99swvQoA65bm+fsmt6UNdGeIB0oxBs+WhAhdh08QA04JXpI7rbB9r08/nkbysKoya9rtDERYOYMA==", "engines": { "node": ">=18" }, @@ -7093,9 +6907,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.29.0.tgz", - "integrity": "sha512-RPYt6dKyemXJe7I6oNstcH24myUGSReicxcHTvCLgzm4e0n8y05dGvcGB15/SoPRBmhlMthWQ9pvKyL81ko8nQ==", + "version": "4.30.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.0.tgz", + "integrity": "sha512-G6zXWS1dLj6eagy6sVhOMQiLtJdxQBHIA9Z6HFUNLOlr6MFOgzV8wvmidtPONfPtEUv0uZsy77XJNzTAfwPDaA==", "engines": { "node": ">=16" }, @@ -7167,9 +6981,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.29.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.29.0.tgz", - "integrity": "sha512-RPYt6dKyemXJe7I6oNstcH24myUGSReicxcHTvCLgzm4e0n8y05dGvcGB15/SoPRBmhlMthWQ9pvKyL81ko8nQ==", + "version": "4.30.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.0.tgz", + "integrity": "sha512-G6zXWS1dLj6eagy6sVhOMQiLtJdxQBHIA9Z6HFUNLOlr6MFOgzV8wvmidtPONfPtEUv0uZsy77XJNzTAfwPDaA==", "engines": { "node": ">=16" }, @@ -7672,11 +7486,11 @@ } }, "node_modules/socks-proxy-agent": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", - "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", "dependencies": { - "agent-base": "^7.1.1", + "agent-base": "^7.1.2", "debug": "^4.3.4", "socks": "^2.8.3" }, @@ -7685,9 +7499,9 @@ } }, "node_modules/socks-proxy-agent/node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.2.tgz", + "integrity": "sha512-JVzqkCNRT+VfqzzgPWDPnwvDheSAUdiMUn3NoLXpDJF5lRqeJqyC9iGsAxIOAW+mzIdq+uP1TvcX6bMtrH0agg==", "dependencies": { "debug": "^4.3.4" }, diff --git a/packages/project/package.json b/packages/project/package.json index 8ed639afdf8..d3df5a49571 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -163,7 +163,7 @@ "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.0", "esmock": "^2.6.9", - "globals": "^15.12.0", + "globals": "^15.13.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From 78c026f8f28a531671fd28250974b7f289799f2b Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 10 Dec 2024 12:50:21 +0000 Subject: [PATCH 1189/1272] [ui5-project][INTERNAL] Bump @ui5/builder from to Changelog of this version: https://github.com/SAP/ui5-builder/blob/v/CHANGELOG.md --- packages/project/package-lock.json | 722 ++++++++++------------------- packages/project/package.json | 2 +- 2 files changed, 252 insertions(+), 472 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8b8a366e18c..6605a0a3c19 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -62,7 +62,7 @@ "npm": ">= 8" }, "peerDependencies": { - "@ui5/builder": "^4.0.4" + "@ui5/builder": "^4.0.5" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -759,103 +759,24 @@ } }, "node_modules/@mapbox/node-pre-gyp": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", - "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", + "version": "2.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-2.0.0-rc.0.tgz", + "integrity": "sha512-nhSMNprz3WmeRvd8iUs5JqkKr0Ncx46JtPxM3AhXes84XpSJfmIwKeWXRpsr53S7kqPkQfPhzrMFUxSNb23qSA==", "dev": true, "dependencies": { + "consola": "^3.2.3", "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", + "https-proxy-agent": "^7.0.5", "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" + "nopt": "^8.0.0", + "semver": "^7.5.3", + "tar": "^7.4.0" }, "bin": { "node-pre-gyp": "bin/node-pre-gyp" - } - }, - "node_modules/@mapbox/node-pre-gyp/node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/@mapbox/node-pre-gyp/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@mapbox/node-pre-gyp/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@mapbox/node-pre-gyp/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@mapbox/node-pre-gyp/node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" }, "engines": { - "node": ">=6" - } - }, - "node_modules/@mapbox/node-pre-gyp/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=18" } }, "node_modules/@nodelib/fs.scandir": { @@ -905,29 +826,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@npmcli/agent/node_modules/agent-base": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.2.tgz", - "integrity": "sha512-JVzqkCNRT+VfqzzgPWDPnwvDheSAUdiMUn3NoLXpDJF5lRqeJqyC9iGsAxIOAW+mzIdq+uP1TvcX6bMtrH0agg==", - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@npmcli/agent/node_modules/https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "dependencies": { - "agent-base": "^7.1.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, "node_modules/@npmcli/agent/node_modules/lru-cache": { "version": "10.4.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", @@ -1381,12 +1279,12 @@ } }, "node_modules/@vercel/nft": { - "version": "0.27.7", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.7.tgz", - "integrity": "sha512-FG6H5YkP4bdw9Ll1qhmbxuE8KwW2E/g8fJpM183fWQLeVDGqzeywMIeJ9h2txdWZ03psgWMn6QymTxaDLmdwUg==", + "version": "0.27.9", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.9.tgz", + "integrity": "sha512-pTs7OchHQmSYJPR0puVQCWw/NqzuvAtnAhBurz21lq4Y4KqWoMpYKqmikkETG5r1bHNCM/hQMZ5JiRr9mhOkyg==", "dev": true, "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.11", + "@mapbox/node-pre-gyp": "^2.0.0-rc.0", "@rollup/pluginutils": "^5.1.3", "acorn": "^8.6.0", "acorn-import-attributes": "^1.9.5", @@ -1395,8 +1293,8 @@ "estree-walker": "2.0.2", "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "micromatch": "^4.0.8", "node-gyp-build": "^4.2.2", + "picomatch": "^4.0.2", "resolve-from": "^5.0.0" }, "bin": { @@ -1556,15 +1454,11 @@ } }, "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" - }, + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", "engines": { - "node": ">= 6.0.0" + "node": ">= 14" } }, "node_modules/aggregate-error": { @@ -1671,12 +1565,6 @@ "node": ">=8" } }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, "node_modules/archy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", @@ -1692,20 +1580,6 @@ "node": ">=14" } }, - "node_modules/are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", - "deprecated": "This package is no longer supported.", - "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -1994,57 +1868,11 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/cacache/node_modules/chownr": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", - "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", - "engines": { - "node": ">=18" - } - }, "node_modules/cacache/node_modules/lru-cache": { "version": "10.4.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, - "node_modules/cacache/node_modules/mkdirp": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", - "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", - "bin": { - "mkdirp": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/cacache/node_modules/tar": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", - "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", - "dependencies": { - "@isaacs/fs-minipass": "^4.0.0", - "chownr": "^3.0.0", - "minipass": "^7.1.2", - "minizlib": "^3.0.1", - "mkdirp": "^3.0.1", - "yallist": "^5.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/cacache/node_modules/yallist": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", - "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", - "engines": { - "node": ">=18" - } - }, "node_modules/caching-transform": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", @@ -2060,6 +1888,30 @@ "node": ">=8" } }, + "node_modules/caching-transform/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caching-transform/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/caching-transform/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -2373,11 +2225,11 @@ } }, "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", "engines": { - "node": ">=10" + "node": ">=18" } }, "node_modules/chunkd": { @@ -2585,15 +2437,6 @@ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } - }, "node_modules/commander": { "version": "10.0.1", "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", @@ -2665,11 +2508,14 @@ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "dev": true }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true + "node_modules/consola": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", + "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "dev": true, + "engines": { + "node": "^14.18.0 || >=16.10.0" + } }, "node_modules/convert-source-map": { "version": "2.0.0", @@ -2895,12 +2741,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, "node_modules/depcheck": { "version": "1.4.7", "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.7.tgz", @@ -3189,9 +3029,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.71", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.71.tgz", - "integrity": "sha512-dB68l59BI75W1BUGVTAEJy45CEVuEGy9qPVVQ8pnHyHMn36PLPPoE1mjLH+lo9rKulO3HC2OhbACI/8tCqJBcA==", + "version": "1.5.72", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.72.tgz", + "integrity": "sha512-ZpSAUOZ2Izby7qnZluSrAlGgGQzucmFbN0n64dYzocYxnxV5ufurpj3VgEe4cUp7ir9LmeLxNYo8bVnlM8bQHw==", "dev": true }, "node_modules/emittery": { @@ -3906,6 +3746,21 @@ "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, + "node_modules/find-cache-dir/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/find-cache-dir/node_modules/pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", @@ -3918,6 +3773,15 @@ "node": ">=8" } }, + "node_modules/find-cache-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -4050,54 +3914,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "deprecated": "This package is no longer supported.", - "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/gauge/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/gauge/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -4289,12 +4105,6 @@ "node": ">=8" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, "node_modules/hasha": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", @@ -4373,28 +4183,16 @@ "node": ">= 14" } }, - "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.2.tgz", - "integrity": "sha512-JVzqkCNRT+VfqzzgPWDPnwvDheSAUdiMUn3NoLXpDJF5lRqeJqyC9iGsAxIOAW+mzIdq+uP1TvcX6bMtrH0agg==", - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dependencies": { - "agent-base": "6", + "agent-base": "^7.1.2", "debug": "4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/iconv-lite": { @@ -4896,21 +4694,6 @@ "node": ">=10" } }, - "node_modules/istanbul-lib-report/node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/istanbul-lib-source-maps": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", @@ -5275,38 +5058,29 @@ } }, "node_modules/magic-string": { - "version": "0.30.14", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.14.tgz", - "integrity": "sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==", + "version": "0.30.15", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.15.tgz", + "integrity": "sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" } }, "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, "dependencies": { - "semver": "^6.0.0" + "semver": "^7.5.3" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/make-fetch-happen": { "version": "14.0.3", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", @@ -5806,52 +5580,6 @@ "node-gyp-build-test": "build-test.js" } }, - "node_modules/node-gyp/node_modules/chownr": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", - "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", - "engines": { - "node": ">=18" - } - }, - "node_modules/node-gyp/node_modules/mkdirp": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", - "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", - "bin": { - "mkdirp": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/tar": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", - "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", - "dependencies": { - "@isaacs/fs-minipass": "^4.0.0", - "chownr": "^3.0.0", - "minipass": "^7.1.2", - "minizlib": "^3.0.1", - "mkdirp": "^3.0.1", - "yallist": "^5.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/node-gyp/node_modules/yallist": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", - "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", - "engines": { - "node": ">=18" - } - }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -5865,9 +5593,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", - "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", "dev": true }, "node_modules/node-stream-zip": { @@ -6014,19 +5742,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "deprecated": "This package is no longer supported.", - "dev": true, - "dependencies": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, "node_modules/nyc": { "version": "17.1.0", "resolved": "https://registry.npmjs.org/nyc/-/nyc-17.1.0.tgz", @@ -6158,6 +5873,21 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/nyc/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/nyc/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -6198,6 +5928,15 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/nyc/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/nyc/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -6271,15 +6010,6 @@ "node": ">=6" } }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -6459,6 +6189,88 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/pacote/node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/pacote/node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/pacote/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pacote/node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/pacote/node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/pacote/node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pacote/node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/pacote/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -7498,17 +7310,6 @@ "node": ">= 14" } }, - "node_modules/socks-proxy-agent/node_modules/agent-base": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.2.tgz", - "integrity": "sha512-JVzqkCNRT+VfqzzgPWDPnwvDheSAUdiMUn3NoLXpDJF5lRqeJqyC9iGsAxIOAW+mzIdq+uP1TvcX6bMtrH0agg==", - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -7594,6 +7395,21 @@ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, + "node_modules/spawn-wrap/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/spawn-wrap/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -7622,6 +7438,15 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/spawn-wrap/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/spawn-wrap/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -8059,79 +7884,43 @@ } }, "node_modules/tar": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", - "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" }, "engines": { - "node": ">=10" + "node": ">=18" } }, - "node_modules/tar/node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dependencies": { - "minipass": "^3.0.0" + "node_modules/tar/node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" }, "engines": { - "node": ">= 8" - } - }, - "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" + "node": ">=10" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/tar/node_modules/minipass": { + "node_modules/tar/node_modules/yallist": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/tar/node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/tar/node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" - }, + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", "engines": { - "node": ">=8" + "node": ">=18" } }, - "node_modules/tar/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/temp-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-3.0.0.tgz", @@ -8570,15 +8359,6 @@ "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", "dev": true }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, "node_modules/word-wrap": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index d3df5a49571..d2319c40c14 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -143,7 +143,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^4.0.4" + "@ui5/builder": "^4.0.5" }, "peerDependenciesMeta": { "@ui5/builder": { From 3ceda65960adb4aee231e20582f0d9fc52cc7bf5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 15 Dec 2024 03:20:26 +0000 Subject: [PATCH 1190/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 96 +++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 51 insertions(+), 51 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6605a0a3c19..26ebd8d87b0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -26,7 +26,7 @@ "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", - "resolve": "^1.22.8", + "resolve": "^1.22.9", "semver": "^7.6.3", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -39,10 +39,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.16.0", + "eslint": "^9.17.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.0", + "eslint-plugin-jsdoc": "^50.6.1", "esmock": "^2.6.9", "globals": "^15.13.0", "istanbul-lib-coverage": "^3.2.2", @@ -491,9 +491,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz", - "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==", + "version": "9.17.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.17.0.tgz", + "integrity": "sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -699,9 +699,9 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", "dev": true, "dependencies": { "@jridgewell/set-array": "^1.2.1", @@ -1800,9 +1800,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", - "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", + "version": "4.24.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.3.tgz", + "integrity": "sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==", "dev": true, "funding": [ { @@ -1819,9 +1819,9 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001669", - "electron-to-chromium": "^1.5.41", - "node-releases": "^2.0.18", + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", "update-browserslist-db": "^1.1.1" }, "bin": { @@ -1961,9 +1961,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001687", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001687.tgz", - "integrity": "sha512-0S/FDhf4ZiqrTUiQ39dKeUjYRjkv7lOZU1Dgif2rIqrTzX/1wV2hfKu9TOm1IHkdSijfLswxTFzl/cvir+SLSQ==", + "version": "1.0.30001688", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001688.tgz", + "integrity": "sha512-Nmqpru91cuABu/DTCXbM2NSRHzM2uVHfPnhJ/1zEAJx/ILBRVmz3pzH4N7DZqbdG0gWClsCC05Oj0mJ/1AWMbA==", "dev": true, "funding": [ { @@ -3029,9 +3029,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.72", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.72.tgz", - "integrity": "sha512-ZpSAUOZ2Izby7qnZluSrAlGgGQzucmFbN0n64dYzocYxnxV5ufurpj3VgEe4cUp7ir9LmeLxNYo8bVnlM8bQHw==", + "version": "1.5.73", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.73.tgz", + "integrity": "sha512-8wGNxG9tAG5KhGd3eeA0o6ixhiNdgr0DcHWm85XPCphwZgD1lIEoi6t3VERayWao7SF7AAZTw6oARGJeVjH8Kg==", "dev": true }, "node_modules/emittery": { @@ -3139,9 +3139,9 @@ } }, "node_modules/eslint": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz", - "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==", + "version": "9.17.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.17.0.tgz", + "integrity": "sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3149,7 +3149,7 @@ "@eslint/config-array": "^0.19.0", "@eslint/core": "^0.9.0", "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.16.0", + "@eslint/js": "9.17.0", "@eslint/plugin-kit": "^0.2.3", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -3158,7 +3158,7 @@ "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", "chalk": "^4.0.0", - "cross-spawn": "^7.0.5", + "cross-spawn": "^7.0.6", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", "eslint-scope": "^8.2.0", @@ -3261,9 +3261,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.0.tgz", - "integrity": "sha512-tCNp4fR79Le3dYTPB0dKEv7yFyvGkUCa+Z3yuTrrNGGOxBlXo9Pn0PEgroOZikUQOGjxoGMVKNjrOHcYEdfszg==", + "version": "50.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.1.tgz", + "integrity": "sha512-UWyaYi6iURdSfdVVqvfOs2vdCVz0J40O/z/HTsv2sFjdjmdlUI/qlKLOTmwbPQ2tAfQnE5F9vqx+B+poF71DBQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", @@ -4388,9 +4388,9 @@ } }, "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "version": "2.16.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.0.tgz", + "integrity": "sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==", "dependencies": { "hasown": "^2.0.2" }, @@ -4867,9 +4867,9 @@ } }, "node_modules/jsesc": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", - "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, "bin": { "jsesc": "bin/jsesc" @@ -5686,9 +5686,9 @@ } }, "node_modules/npm-package-arg": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.0.tgz", - "integrity": "sha512-ZTE0hbwSdTNL+Stx2zxSqdu2KZfNDcrtrLdIk7XGnQFYBWYDho/ORvXtn5XEePcL3tFpGjHCV3X3xrtDh7eZ+A==", + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.1.tgz", + "integrity": "sha512-aDxjFfPV3Liw0WOBWlyZLMBqtbgbg03rmGvHDJa2Ttv7tIz+1oB5qWec4psCDFZcZi9b5XdGkPdQiJxOPzvQRQ==", "dependencies": { "hosted-git-info": "^8.0.0", "proc-log": "^5.0.0", @@ -6719,9 +6719,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.30.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.0.tgz", - "integrity": "sha512-G6zXWS1dLj6eagy6sVhOMQiLtJdxQBHIA9Z6HFUNLOlr6MFOgzV8wvmidtPONfPtEUv0uZsy77XJNzTAfwPDaA==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.1.tgz", + "integrity": "sha512-ojFL7eDMX2NF0xMbDwPZJ8sb7ckqtlAi1GsmgsFXvErT9kFTk1r0DuQKvrCh73M6D4nngeHJmvogF9OluXs7Hw==", "engines": { "node": ">=16" }, @@ -6793,9 +6793,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.30.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.0.tgz", - "integrity": "sha512-G6zXWS1dLj6eagy6sVhOMQiLtJdxQBHIA9Z6HFUNLOlr6MFOgzV8wvmidtPONfPtEUv0uZsy77XJNzTAfwPDaA==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.1.tgz", + "integrity": "sha512-ojFL7eDMX2NF0xMbDwPZJ8sb7ckqtlAi1GsmgsFXvErT9kFTk1r0DuQKvrCh73M6D4nngeHJmvogF9OluXs7Hw==", "engines": { "node": ">=16" }, @@ -6900,11 +6900,11 @@ } }, "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "version": "1.22.9", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.9.tgz", + "integrity": "sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==", "dependencies": { - "is-core-module": "^2.13.0", + "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, diff --git a/packages/project/package.json b/packages/project/package.json index d2319c40c14..13f3104d87e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -137,7 +137,7 @@ "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", - "resolve": "^1.22.8", + "resolve": "^1.22.9", "semver": "^7.6.3", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -158,10 +158,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.16.0", + "eslint": "^9.17.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.0", + "eslint-plugin-jsdoc": "^50.6.1", "esmock": "^2.6.9", "globals": "^15.13.0", "istanbul-lib-coverage": "^3.2.2", From 8838d47dbe3bc1dbe3b4b5787e246d0c007a85fc Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 22 Dec 2024 03:20:09 +0000 Subject: [PATCH 1191/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 87 +++++++++++++++--------------- packages/project/package.json | 6 +-- 2 files changed, 48 insertions(+), 45 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 26ebd8d87b0..08d30f728d0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -14,7 +14,7 @@ "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.3.0", + "chalk": "^5.4.1", "escape-string-regexp": "^5.0.0", "globby": "^14.0.2", "graceful-fs": "^4.2.11", @@ -26,7 +26,7 @@ "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", - "resolve": "^1.22.9", + "resolve": "^1.22.10", "semver": "^7.6.3", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -44,7 +44,7 @@ "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.1", "esmock": "^2.6.9", - "globals": "^15.13.0", + "globals": "^15.14.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -747,9 +747,9 @@ } }, "node_modules/@jsdoc/salty": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.8.tgz", - "integrity": "sha512-5e+SFVavj1ORKlKaKr2BmTOekmXbelU7dC0cDkQLqag7xfuTPuGMUFx7KWJuv4bYZrTsoL2Z18VVCOKYxzoHcg==", + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.9.tgz", + "integrity": "sha512-yYxMVH7Dqw6nO0d5NIV8OQWnitU8k6vXH8NtgqAfIa/IUqRMxRv/NUJJ08VEKbAakwxlgBl5PJdrU0dMPStsnw==", "dev": true, "dependencies": { "lodash": "^4.17.21" @@ -1009,9 +1009,9 @@ } }, "node_modules/@rollup/pluginutils": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz", - "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", + "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", "dev": true, "dependencies": { "@types/estree": "^1.0.0", @@ -1279,9 +1279,9 @@ } }, "node_modules/@vercel/nft": { - "version": "0.27.9", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.9.tgz", - "integrity": "sha512-pTs7OchHQmSYJPR0puVQCWw/NqzuvAtnAhBurz21lq4Y4KqWoMpYKqmikkETG5r1bHNCM/hQMZ5JiRr9mhOkyg==", + "version": "0.27.10", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.10.tgz", + "integrity": "sha512-zbaF9Wp/NsZtKLE4uVmL3FyfFwlpDyuymQM1kPbeT0mVOHKDQQNjnnfslB3REg3oZprmNFJuh3pkHBk2qAaizg==", "dev": true, "dependencies": { "@mapbox/node-pre-gyp": "^2.0.0-rc.0", @@ -1961,9 +1961,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001688", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001688.tgz", - "integrity": "sha512-Nmqpru91cuABu/DTCXbM2NSRHzM2uVHfPnhJ/1zEAJx/ILBRVmz3pzH4N7DZqbdG0gWClsCC05Oj0mJ/1AWMbA==", + "version": "1.0.30001690", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001690.tgz", + "integrity": "sha512-5ExiE3qQN6oF8Clf8ifIDcMRCRE/dMGcETG/XGMD8/XiXm6HXQgQTh1yZYLXXpSOsEUlJm1Xr7kGULZTuGtP/w==", "dev": true, "funding": [ { @@ -2005,9 +2005,9 @@ } }, "node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", + "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -2509,9 +2509,9 @@ "dev": true }, "node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.3.0.tgz", + "integrity": "sha512-kxltocVQCwQNFvw40dlVRYeAkAvtYjMFZYNlOcsF5wExPpGwPxMwgx4IfDJvBRPtBpnQwItd5WkTaR0ZwT/TmQ==", "dev": true, "engines": { "node": "^14.18.0 || >=16.10.0" @@ -3029,9 +3029,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.73", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.73.tgz", - "integrity": "sha512-8wGNxG9tAG5KhGd3eeA0o6ixhiNdgr0DcHWm85XPCphwZgD1lIEoi6t3VERayWao7SF7AAZTw6oARGJeVjH8Kg==", + "version": "1.5.75", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.75.tgz", + "integrity": "sha512-Lf3++DumRE/QmweGjU+ZcKqQ+3bKkU/qjaKYhIJKEOhgIO9Xs6IiAQFkfFoj+RhgDk4LUeNsLo6plExHqSyu6Q==", "dev": true }, "node_modules/emittery": { @@ -4050,9 +4050,9 @@ } }, "node_modules/globals": { - "version": "15.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.13.0.tgz", - "integrity": "sha512-49TewVEz0UxZjr1WYYsWpPrhyC/B/pA8Bq0fUmet2n+eR7yn0IvNzNaoBwnK6mdkzcN+se7Ez9zUgULTz2QH4g==", + "version": "15.14.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.14.0.tgz", + "integrity": "sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==", "dev": true, "engines": { "node": ">=18" @@ -4388,9 +4388,9 @@ } }, "node_modules/is-core-module": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.0.tgz", - "integrity": "sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==", + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dependencies": { "hasown": "^2.0.2" }, @@ -5058,9 +5058,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.15", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.15.tgz", - "integrity": "sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==", + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" @@ -6719,9 +6719,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.30.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.1.tgz", - "integrity": "sha512-ojFL7eDMX2NF0xMbDwPZJ8sb7ckqtlAi1GsmgsFXvErT9kFTk1r0DuQKvrCh73M6D4nngeHJmvogF9OluXs7Hw==", + "version": "4.30.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.2.tgz", + "integrity": "sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==", "engines": { "node": ">=16" }, @@ -6793,9 +6793,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.30.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.1.tgz", - "integrity": "sha512-ojFL7eDMX2NF0xMbDwPZJ8sb7ckqtlAi1GsmgsFXvErT9kFTk1r0DuQKvrCh73M6D4nngeHJmvogF9OluXs7Hw==", + "version": "4.30.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.2.tgz", + "integrity": "sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==", "engines": { "node": ">=16" }, @@ -6900,9 +6900,9 @@ } }, "node_modules/resolve": { - "version": "1.22.9", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.9.tgz", - "integrity": "sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==", + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", "dependencies": { "is-core-module": "^2.16.0", "path-parse": "^1.0.7", @@ -6911,6 +6911,9 @@ "bin": { "resolve": "bin/resolve" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } diff --git a/packages/project/package.json b/packages/project/package.json index 13f3104d87e..0c25eb1b2e3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -125,7 +125,7 @@ "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.3.0", + "chalk": "^5.4.1", "escape-string-regexp": "^5.0.0", "globby": "^14.0.2", "graceful-fs": "^4.2.11", @@ -137,7 +137,7 @@ "pretty-hrtime": "^1.0.3", "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", - "resolve": "^1.22.9", + "resolve": "^1.22.10", "semver": "^7.6.3", "xml2js": "^0.6.2", "yesno": "^0.4.0" @@ -163,7 +163,7 @@ "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.1", "esmock": "^2.6.9", - "globals": "^15.13.0", + "globals": "^15.14.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From ed0af2f8b9cc215dbc317dfcc8b4fff4a7c38070 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Sun, 29 Dec 2024 03:20:11 +0000 Subject: [PATCH 1192/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 36 +++++++++++++++--------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 08d30f728d0..2f8c0d71ca3 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2509,9 +2509,9 @@ "dev": true }, "node_modules/consola": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.3.0.tgz", - "integrity": "sha512-kxltocVQCwQNFvw40dlVRYeAkAvtYjMFZYNlOcsF5wExPpGwPxMwgx4IfDJvBRPtBpnQwItd5WkTaR0ZwT/TmQ==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.3.3.tgz", + "integrity": "sha512-Qil5KwghMzlqd51UXM0b6fyaGHtOC22scxrwrz4A2882LyUMwQjnvaedN1HAeXzphspQ6CpHkzMAWxBTUruDLg==", "dev": true, "engines": { "node": "^14.18.0 || >=16.10.0" @@ -3029,9 +3029,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.75", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.75.tgz", - "integrity": "sha512-Lf3++DumRE/QmweGjU+ZcKqQ+3bKkU/qjaKYhIJKEOhgIO9Xs6IiAQFkfFoj+RhgDk4LUeNsLo6plExHqSyu6Q==", + "version": "1.5.76", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.76.tgz", + "integrity": "sha512-CjVQyG7n7Sr+eBXE86HIulnL5N8xZY1sgmOPGuq/F0Rr0FJq63lg0kEtOIDfZBk44FnDLf6FUJ+dsJcuiUDdDQ==", "dev": true }, "node_modules/emittery": { @@ -3107,9 +3107,9 @@ } }, "node_modules/es-module-lexer": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", - "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.6.0.tgz", + "integrity": "sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==", "dev": true }, "node_modules/es6-error": { @@ -3662,9 +3662,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.18.0.tgz", + "integrity": "sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==", "dependencies": { "reusify": "^1.0.4" } @@ -6719,9 +6719,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.30.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.2.tgz", - "integrity": "sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==", + "version": "4.31.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", + "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", "engines": { "node": ">=16" }, @@ -6793,9 +6793,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.30.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.30.2.tgz", - "integrity": "sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==", + "version": "4.31.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", + "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", "engines": { "node": ">=16" }, From 39c38e0841bf43d5a0c74f94413a11e79900f598 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 29 Dec 2024 10:37:15 +0000 Subject: [PATCH 1193/1272] [ui5-project][INTERNAL] Bump @istanbuljs/esm-loader-hook from 0.2.0 to 0.3.0 Bumps [@istanbuljs/esm-loader-hook](https://github.com/istanbuljs/esm-loader-hook) from 0.2.0 to 0.3.0. - [Release notes](https://github.com/istanbuljs/esm-loader-hook/releases) - [Changelog](https://github.com/istanbuljs/esm-loader-hook/blob/master/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/esm-loader-hook/commits/esm-loader-hook-v0.3.0) --- updated-dependencies: - dependency-name: "@istanbuljs/esm-loader-hook" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 206 ++++++++++++++++++++++++++++- packages/project/package.json | 2 +- 2 files changed, 203 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2f8c0d71ca3..07ac3c5a8a4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -33,7 +33,7 @@ }, "devDependencies": { "@eslint/js": "^9.8.0", - "@istanbuljs/esm-loader-hook": "^0.2.0", + "@istanbuljs/esm-loader-hook": "^0.3.0", "ava": "^6.2.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", @@ -160,6 +160,18 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-compilation-targets": { "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz", @@ -185,6 +197,49 @@ "semver": "bin/semver.js" } }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz", + "integrity": "sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/helper-replace-supers": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/traverse": "^7.25.9", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz", + "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-module-imports": { "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", @@ -215,6 +270,18 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz", + "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-plugin-utils": { "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz", @@ -224,6 +291,36 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz", + "integrity": "sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==", + "dev": true, + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz", + "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-string-parser": { "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", @@ -278,6 +375,105 @@ "node": ">=6.0.0" } }, + "node_modules/@babel/plugin-syntax-decorators": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.25.9.tgz", + "integrity": "sha512-ryzI0McXUPJnRCvMo4lumIKZUzhYUO/ScI+Mz4YVaTLt04DHNSjEUjKVvbzQjZFLuod/cYEc07mJWhzl6v4DPg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz", + "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz", + "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz", + "integrity": "sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.3.tgz", + "integrity": "sha512-6+5hpdr6mETwSKjmJUdYw0EIkATiQhnELWlE3kJFBwSg/BGIVwVaVbX+gOXBCdc7Ln1RXZxyWGecIXhUfnl7oA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-create-class-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/plugin-syntax-typescript": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.26.0.tgz", + "integrity": "sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-validator-option": "^7.25.9", + "@babel/plugin-syntax-jsx": "^7.25.9", + "@babel/plugin-transform-modules-commonjs": "^7.25.9", + "@babel/plugin-transform-typescript": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/template": { "version": "7.25.9", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz", @@ -630,12 +826,14 @@ } }, "node_modules/@istanbuljs/esm-loader-hook": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/esm-loader-hook/-/esm-loader-hook-0.2.0.tgz", - "integrity": "sha512-pw8o3zWCen4sgiNJq69Pcl1Og7Bx4WP3ho7py2FLqZ56Hnz812yN2WwdViCx9tn9U5EWtzF4aqHDRnD7vDs92g==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/esm-loader-hook/-/esm-loader-hook-0.3.0.tgz", + "integrity": "sha512-lEnYroBUYfNQuJDYrPvre8TSwPZnyIQv9qUT3gACvhr3igZr+BbrdyIcz4+2RnEXZzi12GqkUW600+QQPpIbVg==", "dev": true, "dependencies": { "@babel/core": "^7.8.7", + "@babel/plugin-syntax-decorators": "^7.25.9", + "@babel/preset-typescript": "^7.26.0", "@istanbuljs/load-nyc-config": "^1.1.0", "@istanbuljs/schema": "^0.1.3", "babel-plugin-istanbul": "^6.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 0c25eb1b2e3..a0bb72042e6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -152,7 +152,7 @@ }, "devDependencies": { "@eslint/js": "^9.8.0", - "@istanbuljs/esm-loader-hook": "^0.2.0", + "@istanbuljs/esm-loader-hook": "^0.3.0", "ava": "^6.2.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", From 1df9045dae500eb455d32c0bc37e4651b4959650 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 12 Jan 2025 03:20:16 +0000 Subject: [PATCH 1194/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 157 +++++++++++++++-------------- packages/project/package.json | 2 +- 2 files changed, 80 insertions(+), 79 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 07ac3c5a8a4..5e07cd651c8 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.17.0", + "eslint": "^9.18.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.1", @@ -97,9 +97,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.26.3", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.3.tgz", - "integrity": "sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.5.tgz", + "integrity": "sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==", "dev": true, "engines": { "node": ">=6.9.0" @@ -145,13 +145,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.26.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.3.tgz", - "integrity": "sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.5.tgz", + "integrity": "sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==", "dev": true, "dependencies": { - "@babel/parser": "^7.26.3", - "@babel/types": "^7.26.3", + "@babel/parser": "^7.26.5", + "@babel/types": "^7.26.5", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -173,12 +173,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz", - "integrity": "sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz", + "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.25.9", + "@babel/compat-data": "^7.26.5", "@babel/helper-validator-option": "^7.25.9", "browserslist": "^4.24.0", "lru-cache": "^5.1.1", @@ -283,23 +283,23 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz", - "integrity": "sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz", - "integrity": "sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.26.5.tgz", + "integrity": "sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==", "dev": true, "dependencies": { "@babel/helper-member-expression-to-functions": "^7.25.9", "@babel/helper-optimise-call-expression": "^7.25.9", - "@babel/traverse": "^7.25.9" + "@babel/traverse": "^7.26.5" }, "engines": { "node": ">=6.9.0" @@ -361,12 +361,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.26.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.3.tgz", - "integrity": "sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.5.tgz", + "integrity": "sha512-SRJ4jYmXRqV1/Xc+TIVG84WjHBXKlxO9sHQnA2Pf12QQEAp1LOh6kDzNHXcUnbH1QI0FDoPPVOt+vyUDucxpaw==", "dev": true, "dependencies": { - "@babel/types": "^7.26.3" + "@babel/types": "^7.26.5" }, "bin": { "parser": "bin/babel-parser.js" @@ -437,14 +437,14 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.26.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.3.tgz", - "integrity": "sha512-6+5hpdr6mETwSKjmJUdYw0EIkATiQhnELWlE3kJFBwSg/BGIVwVaVbX+gOXBCdc7Ln1RXZxyWGecIXhUfnl7oA==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.5.tgz", + "integrity": "sha512-GJhPO0y8SD5EYVCy2Zr+9dSZcEgaSmq5BLR0Oc25TOEhC+ba49vUAGZFjy8v79z9E1mdldq4x9d1xgh4L1d5dQ==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", "@babel/helper-create-class-features-plugin": "^7.25.9", - "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-plugin-utils": "^7.26.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", "@babel/plugin-syntax-typescript": "^7.25.9" }, @@ -489,16 +489,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.26.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.4.tgz", - "integrity": "sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.5.tgz", + "integrity": "sha512-rkOSPOw+AXbgtwUga3U4u8RpoK9FEFWBNAlTpcnkLFjL5CT+oyHNuUUC/xx6XefEJ16r38r8Bc/lfp6rYuHeJQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.26.3", - "@babel/parser": "^7.26.3", + "@babel/generator": "^7.26.5", + "@babel/parser": "^7.26.5", "@babel/template": "^7.25.9", - "@babel/types": "^7.26.3", + "@babel/types": "^7.26.5", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -516,9 +516,9 @@ } }, "node_modules/@babel/types": { - "version": "7.26.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.3.tgz", - "integrity": "sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.5.tgz", + "integrity": "sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.25.9", @@ -618,9 +618,9 @@ } }, "node_modules/@eslint/core": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.1.tgz", - "integrity": "sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.10.0.tgz", + "integrity": "sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.15" @@ -687,9 +687,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.17.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.17.0.tgz", - "integrity": "sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==", + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.18.0.tgz", + "integrity": "sha512-fK6L7rxcq6/z+AaQMtiFTkvbHkBLNlwyRxHpKawP0x3u9+NC6MQTnFW+AdpwC6gfHTW0051cokQgtTN2FqlxQA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -705,11 +705,12 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.4.tgz", - "integrity": "sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg==", + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.5.tgz", + "integrity": "sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==", "dev": true, "dependencies": { + "@eslint/core": "^0.10.0", "levn": "^0.4.1" }, "engines": { @@ -1998,9 +1999,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.3.tgz", - "integrity": "sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==", + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", "dev": true, "funding": [ { @@ -2159,9 +2160,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001690", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001690.tgz", - "integrity": "sha512-5ExiE3qQN6oF8Clf8ifIDcMRCRE/dMGcETG/XGMD8/XiXm6HXQgQTh1yZYLXXpSOsEUlJm1Xr7kGULZTuGtP/w==", + "version": "1.0.30001692", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001692.tgz", + "integrity": "sha512-A95VKan0kdtrsnMubMKxEKUKImOPSuCpYgxSQBo036P5YYgVIcOYJEgt/txJWqObiRQeISNCfef9nvlQ0vbV7A==", "dev": true, "funding": [ { @@ -3227,9 +3228,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.76", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.76.tgz", - "integrity": "sha512-CjVQyG7n7Sr+eBXE86HIulnL5N8xZY1sgmOPGuq/F0Rr0FJq63lg0kEtOIDfZBk44FnDLf6FUJ+dsJcuiUDdDQ==", + "version": "1.5.80", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.80.tgz", + "integrity": "sha512-LTrKpW0AqIuHwmlVNV+cjFYTnXtM9K37OGhpe0ZI10ScPSxqVSryZHIY3WnCS5NSYbBODRTZyhRMS2h5FAEqAw==", "dev": true }, "node_modules/emittery": { @@ -3337,18 +3338,18 @@ } }, "node_modules/eslint": { - "version": "9.17.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.17.0.tgz", - "integrity": "sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA==", + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.18.0.tgz", + "integrity": "sha512-+waTfRWQlSbpt3KWE+CjrPPYnbq9kfZIYUqapc0uBXyjTp8aYXZDsUH16m39Ryq3NjAVP4tjuF7KaukeqoCoaA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.19.0", - "@eslint/core": "^0.9.0", + "@eslint/core": "^0.10.0", "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.17.0", - "@eslint/plugin-kit": "^0.2.3", + "@eslint/js": "9.18.0", + "@eslint/plugin-kit": "^0.2.5", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.1", @@ -3834,15 +3835,15 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" @@ -6917,9 +6918,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.31.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", - "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.32.0.tgz", + "integrity": "sha512-rfgpoi08xagF3JSdtJlCwMq9DGNDE0IMh3Mkpc1wUypg9vPi786AiqeBBKcqvIkq42azsBM85N490fyZjeUftw==", "engines": { "node": ">=16" }, @@ -6991,9 +6992,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.31.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", - "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.32.0.tgz", + "integrity": "sha512-rfgpoi08xagF3JSdtJlCwMq9DGNDE0IMh3Mkpc1wUypg9vPi786AiqeBBKcqvIkq42azsBM85N490fyZjeUftw==", "engines": { "node": ">=16" }, @@ -7187,9 +7188,9 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.0.tgz", - "integrity": "sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.1.tgz", + "integrity": "sha512-zrQDm8XPnYEKawJScsnM0QzobJxlT/kHOOlRTio8IH/GrmxRE5fjllkzdaHclIuNjUQTJYH2xHNIGfdpJkDJUw==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", @@ -8432,9 +8433,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", - "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.2.tgz", + "integrity": "sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==", "dev": true, "funding": [ { @@ -8452,7 +8453,7 @@ ], "dependencies": { "escalade": "^3.2.0", - "picocolors": "^1.1.0" + "picocolors": "^1.1.1" }, "bin": { "update-browserslist-db": "cli.js" diff --git a/packages/project/package.json b/packages/project/package.json index a0bb72042e6..00cfc017b20 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.17.0", + "eslint": "^9.18.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.1", From 899ee6f1847203d07224e518d1e4e61f5fa51899 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 19 Jan 2025 03:20:17 +0000 Subject: [PATCH 1195/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 48 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5e07cd651c8..8405c5f0f17 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^9.18.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.1", + "eslint-plugin-jsdoc": "^50.6.2", "esmock": "^2.6.9", "globals": "^15.14.0", "istanbul-lib-coverage": "^3.2.2", @@ -1249,11 +1249,11 @@ } }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.2.tgz", - "integrity": "sha512-c6B0ehIWxMI8wiS/bj6rHMPqeFvngFV7cDU/MY+B16P9Z3Mp9k8L93eYZ7BYzSickzuqAQqAq0V956b3Ju6mLw==", + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.3.tgz", + "integrity": "sha512-RpacQhBlwpBWd7KEJsRKcBQalbV28fvkxwTOJIqhIuDysMMaJW47V4OqW30iJB9uRpqOSxxEAQFdr8tTattReQ==", "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sigstore/sign": { @@ -2160,9 +2160,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001692", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001692.tgz", - "integrity": "sha512-A95VKan0kdtrsnMubMKxEKUKImOPSuCpYgxSQBo036P5YYgVIcOYJEgt/txJWqObiRQeISNCfef9nvlQ0vbV7A==", + "version": "1.0.30001695", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001695.tgz", + "integrity": "sha512-vHyLade6wTgI2u1ec3WQBxv+2BrTERV28UXQu9LO6lZ9pYeMk34vjXFLOxo1A4UBA8XTL4njRQZdno/yYaSmWw==", "dev": true, "funding": [ { @@ -2708,9 +2708,9 @@ "dev": true }, "node_modules/consola": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.3.3.tgz", - "integrity": "sha512-Qil5KwghMzlqd51UXM0b6fyaGHtOC22scxrwrz4A2882LyUMwQjnvaedN1HAeXzphspQ6CpHkzMAWxBTUruDLg==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.4.0.tgz", + "integrity": "sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==", "dev": true, "engines": { "node": "^14.18.0 || >=16.10.0" @@ -3228,9 +3228,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.80", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.80.tgz", - "integrity": "sha512-LTrKpW0AqIuHwmlVNV+cjFYTnXtM9K37OGhpe0ZI10ScPSxqVSryZHIY3WnCS5NSYbBODRTZyhRMS2h5FAEqAw==", + "version": "1.5.83", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.83.tgz", + "integrity": "sha512-LcUDPqSt+V0QmI47XLzZrz5OqILSMGsPFkDYus22rIbgorSvBYEFqq854ltTmUdHkY92FSdAAvsh4jWEULMdfQ==", "dev": true }, "node_modules/emittery": { @@ -3460,9 +3460,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.1.tgz", - "integrity": "sha512-UWyaYi6iURdSfdVVqvfOs2vdCVz0J40O/z/HTsv2sFjdjmdlUI/qlKLOTmwbPQ2tAfQnE5F9vqx+B+poF71DBQ==", + "version": "50.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.2.tgz", + "integrity": "sha512-n7GNZ4czMAAbDg7DsDA7PvHo1IPIUwAXYmxTx6j/hTlXbt5V0x5q/kGkiJ7s4wA9SpB/yaiK8jF7CO237lOLew==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", @@ -6746,9 +6746,9 @@ } }, "node_modules/postcss": { - "version": "8.4.49", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", - "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.1.tgz", + "integrity": "sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==", "dev": true, "funding": [ { @@ -6765,7 +6765,7 @@ } ], "dependencies": { - "nanoid": "^3.3.7", + "nanoid": "^3.3.8", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, @@ -7704,9 +7704,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.20", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz", - "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==" + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", + "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==" }, "node_modules/sprintf-js": { "version": "1.1.3", diff --git a/packages/project/package.json b/packages/project/package.json index 00cfc017b20..db97e70f16b 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^9.18.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.1", + "eslint-plugin-jsdoc": "^50.6.2", "esmock": "^2.6.9", "globals": "^15.14.0", "istanbul-lib-coverage": "^3.2.2", From 66eeac055ff5961bc17671365aa701c79d22fc35 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 22 Jan 2025 18:00:03 +0000 Subject: [PATCH 1196/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 108 ++++++++++++++--------------- 1 file changed, 52 insertions(+), 56 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8405c5f0f17..7856d040a12 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1129,17 +1129,17 @@ } }, "node_modules/@npmcli/package-json": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.1.0.tgz", - "integrity": "sha512-t6G+6ZInT4X+tqj2i+wlLIeCKnKOTuz9/VFYDtj+TGTur5q7sp/OYrQA19LdBbWfXDOi0Y4jtedV6xtB8zQ9ug==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.1.1.tgz", + "integrity": "sha512-d5qimadRAUCO4A/Txw71VM7UrRZzV+NPclxz/dc+M6B2oYwjWTjqh8HA/sGQgs9VZuJ6I/P7XIAlJvgrl27ZOw==", "dependencies": { "@npmcli/git": "^6.0.0", "glob": "^10.2.2", "hosted-git-info": "^8.0.0", "json-parse-even-better-errors": "^4.0.0", - "normalize-package-data": "^7.0.0", "proc-log": "^5.0.0", - "semver": "^7.5.3" + "semver": "^7.5.3", + "validate-npm-package-license": "^3.0.4" }, "engines": { "node": "^18.17.0 || >=20.5.0" @@ -1603,11 +1603,11 @@ "dev": true }, "node_modules/abbrev": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", - "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-3.0.0.tgz", + "integrity": "sha512-+/kfrslGQ7TNV2ecmQwMJj/B65g5KVq1/L3SGVZ3tCYGqlzFuFCGBZJtMP99wH3NpEUyAjn0zPdPUg0D+DwrOA==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/acorn": { @@ -3228,9 +3228,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.83", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.83.tgz", - "integrity": "sha512-LcUDPqSt+V0QmI47XLzZrz5OqILSMGsPFkDYus22rIbgorSvBYEFqq854ltTmUdHkY92FSdAAvsh4jWEULMdfQ==", + "version": "1.5.84", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.84.tgz", + "integrity": "sha512-I+DQ8xgafao9Ha6y0qjHHvpZ9OfyA1qKlkHkjywxzniORU2awxyz7f/iVJcULmrF2yrM3nHQf+iDjJtbbexd/g==", "dev": true }, "node_modules/emittery": { @@ -4955,6 +4955,15 @@ "node": ">=14" } }, + "node_modules/js-beautify/node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/js-beautify/node_modules/nopt": { "version": "7.2.1", "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", @@ -5819,11 +5828,11 @@ } }, "node_modules/nopt": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.0.0.tgz", - "integrity": "sha512-1L/fTJ4UmV/lUxT2Uf006pfZKTvAgCF+chz+0OgBHO8u2Z67pE7AaAUUj7CJy0lXqHmymUvGFt6NE9R3HER0yw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.1.0.tgz", + "integrity": "sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A==", "dependencies": { - "abbrev": "^2.0.0" + "abbrev": "^3.0.0" }, "bin": { "nopt": "bin/nopt.js" @@ -5833,18 +5842,34 @@ } }, "node_modules/normalize-package-data": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-7.0.0.tgz", - "integrity": "sha512-k6U0gKRIuNCTkwHGZqblCfLfBRh+w1vI6tBo+IeJwq2M8FUiOqhX7GH+GArQGScA7azd1WfyRCvxoXDO3hQDIA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", + "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==", "dependencies": { - "hosted-git-info": "^8.0.0", + "hosted-git-info": "^7.0.0", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": "^18.17.0 || >=20.5.0" + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/normalize-package-data/node_modules/hosted-git-info": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", + "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/normalize-package-data/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -6918,9 +6943,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.32.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.32.0.tgz", - "integrity": "sha512-rfgpoi08xagF3JSdtJlCwMq9DGNDE0IMh3Mkpc1wUypg9vPi786AiqeBBKcqvIkq42azsBM85N490fyZjeUftw==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.33.0.tgz", + "integrity": "sha512-s6zVrxuyKbbAsSAD5ZPTB77q4YIdRctkTbJ2/Dqlinwz+8ooH2gd+YA7VA6Pa93KML9GockVvoxjZ2vHP+mu8g==", "engines": { "node": ">=16" }, @@ -6946,35 +6971,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", - "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/read-pkg/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", - "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==", - "dependencies": { - "hosted-git-info": "^7.0.0", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, "node_modules/read-pkg/node_modules/parse-json": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.1.0.tgz", @@ -6992,9 +6988,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.32.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.32.0.tgz", - "integrity": "sha512-rfgpoi08xagF3JSdtJlCwMq9DGNDE0IMh3Mkpc1wUypg9vPi786AiqeBBKcqvIkq42azsBM85N490fyZjeUftw==", + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.33.0.tgz", + "integrity": "sha512-s6zVrxuyKbbAsSAD5ZPTB77q4YIdRctkTbJ2/Dqlinwz+8ooH2gd+YA7VA6Pa93KML9GockVvoxjZ2vHP+mu8g==", "engines": { "node": ">=16" }, From 088f9e536cf1c24c0726aca2b46b97b1022f4ae6 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 26 Jan 2025 03:20:16 +0000 Subject: [PATCH 1197/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 103 +++++++++++++++-------------- packages/project/package.json | 6 +- 2 files changed, 55 insertions(+), 54 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7856d040a12..ca310a02c32 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,11 +39,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.18.0", + "eslint": "^9.19.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.2", - "esmock": "^2.6.9", + "eslint-plugin-jsdoc": "^50.6.3", + "esmock": "^2.7.0", "globals": "^15.14.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", @@ -106,21 +106,21 @@ } }, "node_modules/@babel/core": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz", - "integrity": "sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==", + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.7.tgz", + "integrity": "sha512-SRijHmF0PSPgLIBYlWnG0hyeJLwXE2CgpsXaMOrtt2yp9/86ALw6oUlj9KYuZ0JN07T4eBMVIW4li/9S1j2BGA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.26.0", - "@babel/generator": "^7.26.0", - "@babel/helper-compilation-targets": "^7.25.9", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.5", + "@babel/helper-compilation-targets": "^7.26.5", "@babel/helper-module-transforms": "^7.26.0", - "@babel/helpers": "^7.26.0", - "@babel/parser": "^7.26.0", + "@babel/helpers": "^7.26.7", + "@babel/parser": "^7.26.7", "@babel/template": "^7.25.9", - "@babel/traverse": "^7.25.9", - "@babel/types": "^7.26.0", + "@babel/traverse": "^7.26.7", + "@babel/types": "^7.26.7", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -348,25 +348,25 @@ } }, "node_modules/@babel/helpers": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.0.tgz", - "integrity": "sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==", + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.7.tgz", + "integrity": "sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A==", "dev": true, "dependencies": { "@babel/template": "^7.25.9", - "@babel/types": "^7.26.0" + "@babel/types": "^7.26.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.5.tgz", - "integrity": "sha512-SRJ4jYmXRqV1/Xc+TIVG84WjHBXKlxO9sHQnA2Pf12QQEAp1LOh6kDzNHXcUnbH1QI0FDoPPVOt+vyUDucxpaw==", + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.7.tgz", + "integrity": "sha512-kEvgGGgEjRUutvdVvZhbn/BxVt+5VSpwXz1j3WYXQbXDo8KzFOPNG2GQbdAiNq8g6wn1yKk7C/qrke03a84V+w==", "dev": true, "dependencies": { - "@babel/types": "^7.26.5" + "@babel/types": "^7.26.7" }, "bin": { "parser": "bin/babel-parser.js" @@ -437,9 +437,9 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.5.tgz", - "integrity": "sha512-GJhPO0y8SD5EYVCy2Zr+9dSZcEgaSmq5BLR0Oc25TOEhC+ba49vUAGZFjy8v79z9E1mdldq4x9d1xgh4L1d5dQ==", + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.7.tgz", + "integrity": "sha512-5cJurntg+AT+cgelGP9Bt788DKiAw9gIMSMU2NJrLAilnj0m8WZWUNZPSLOmadYsujHutpgElO+50foX+ib/Wg==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", @@ -489,16 +489,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.5.tgz", - "integrity": "sha512-rkOSPOw+AXbgtwUga3U4u8RpoK9FEFWBNAlTpcnkLFjL5CT+oyHNuUUC/xx6XefEJ16r38r8Bc/lfp6rYuHeJQ==", + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.7.tgz", + "integrity": "sha512-1x1sgeyRLC3r5fQOM0/xtQKsYjyxmFjaOrLJNtZ81inNjyJHGIolTULPiSc/2qe1/qfpFLisLQYFnnZl7QoedA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.26.2", "@babel/generator": "^7.26.5", - "@babel/parser": "^7.26.5", + "@babel/parser": "^7.26.7", "@babel/template": "^7.25.9", - "@babel/types": "^7.26.5", + "@babel/types": "^7.26.7", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -516,9 +516,9 @@ } }, "node_modules/@babel/types": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.5.tgz", - "integrity": "sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==", + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.7.tgz", + "integrity": "sha512-t8kDRGrKXyp6+tjUh7hw2RLyclsW4TRoRvRHtSyAX9Bb5ldlFh+90YAYY6awRXrlB4G5G2izNeGySpATlFzmOg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.25.9", @@ -687,9 +687,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.18.0.tgz", - "integrity": "sha512-fK6L7rxcq6/z+AaQMtiFTkvbHkBLNlwyRxHpKawP0x3u9+NC6MQTnFW+AdpwC6gfHTW0051cokQgtTN2FqlxQA==", + "version": "9.19.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.19.0.tgz", + "integrity": "sha512-rbq9/g38qjfqFLOVPvwjIvFFdNziEC5S65jmjPw5r6A//QH+W91akh9irMwjDN8zKUTak6W9EsAv4m/7Wnw0UQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -958,9 +958,9 @@ } }, "node_modules/@mapbox/node-pre-gyp": { - "version": "2.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-2.0.0-rc.0.tgz", - "integrity": "sha512-nhSMNprz3WmeRvd8iUs5JqkKr0Ncx46JtPxM3AhXes84XpSJfmIwKeWXRpsr53S7kqPkQfPhzrMFUxSNb23qSA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-2.0.0.tgz", + "integrity": "sha512-llMXd39jtP0HpQLVI37Bf1m2ADlEb35GYSh1SDSLsBhR+5iCxiNGlT31yqbNtVHygHAtMy6dWFERpU2JgufhPg==", "dev": true, "dependencies": { "consola": "^3.2.3", @@ -3228,9 +3228,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.84", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.84.tgz", - "integrity": "sha512-I+DQ8xgafao9Ha6y0qjHHvpZ9OfyA1qKlkHkjywxzniORU2awxyz7f/iVJcULmrF2yrM3nHQf+iDjJtbbexd/g==", + "version": "1.5.88", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.88.tgz", + "integrity": "sha512-K3C2qf1o+bGzbilTDCTBhTQcMS9KW60yTAaTeeXsfvQuTDDwlokLam/AdqlqcSy9u4UainDgsHV23ksXAOgamw==", "dev": true }, "node_modules/emittery": { @@ -3338,9 +3338,9 @@ } }, "node_modules/eslint": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.18.0.tgz", - "integrity": "sha512-+waTfRWQlSbpt3KWE+CjrPPYnbq9kfZIYUqapc0uBXyjTp8aYXZDsUH16m39Ryq3NjAVP4tjuF7KaukeqoCoaA==", + "version": "9.19.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.19.0.tgz", + "integrity": "sha512-ug92j0LepKlbbEv6hD911THhoRHmbdXt2gX+VDABAW/Ir7D3nqKdv5Pf5vtlyY6HQMTEP2skXY43ueqTCWssEA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3348,7 +3348,7 @@ "@eslint/config-array": "^0.19.0", "@eslint/core": "^0.10.0", "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.18.0", + "@eslint/js": "9.19.0", "@eslint/plugin-kit": "^0.2.5", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -3460,9 +3460,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.2.tgz", - "integrity": "sha512-n7GNZ4czMAAbDg7DsDA7PvHo1IPIUwAXYmxTx6j/hTlXbt5V0x5q/kGkiJ7s4wA9SpB/yaiK8jF7CO237lOLew==", + "version": "50.6.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.3.tgz", + "integrity": "sha512-NxbJyt1M5zffPcYZ8Nb53/8nnbIScmiLAMdoe0/FAszwb7lcSiX3iYBTsuF7RV84dZZJC8r3NghomrUXsmWvxQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", @@ -3708,9 +3708,9 @@ } }, "node_modules/esmock": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.6.9.tgz", - "integrity": "sha512-SJ5YnoWi8yuGghBrupScARmIcUh2A2a2gIfdVRtQ2MQpQo91wMWHx/fsN0ZDERLAUso1ea4Q/9CKCL88O5MEpg==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.7.0.tgz", + "integrity": "sha512-nYSvky0rP//13eYIGJ7b1dhsaBxtS370UoDWbILo1jHlO4hrCUkp/LD3e54QVhySxAGLsufxi5A4+wUAxPUIrg==", "dev": true, "engines": { "node": ">=14.16.0" @@ -5242,6 +5242,7 @@ "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "deprecated": "This package is deprecated. Use the optional chaining (?.) operator instead.", "dev": true }, "node_modules/lodash.merge": { diff --git a/packages/project/package.json b/packages/project/package.json index db97e70f16b..009c1866fe4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,11 +158,11 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.18.0", + "eslint": "^9.19.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.2", - "esmock": "^2.6.9", + "eslint-plugin-jsdoc": "^50.6.3", + "esmock": "^2.7.0", "globals": "^15.14.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", From 0c1ec38ccfa16792b937ac3b2fb4916fd14e8e9c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Jan 2025 05:18:28 +0000 Subject: [PATCH 1198/1272] [ui5-project]Bump actions/setup-node from 4.1.0 to 4.2.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.1.0 to 4.2.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4.1.0...v4.2.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 2b296d0dd9e..1f5d136a085 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Node.js LTS 20.11.0 - uses: actions/setup-node@v4.1.0 + uses: actions/setup-node@v4.2.0 with: node-version: 20.11.0 From 7150772b68b89869011f3a39c08fa99d508b6e67 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Jan 2025 08:58:26 +0000 Subject: [PATCH 1199/1272] [ui5-project]Bump coverallsapp/github-action from 2.3.4 to 2.3.6 Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.3.4 to 2.3.6. - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Commits](https://github.com/coverallsapp/github-action/compare/v2.3.4...v2.3.6) --- updated-dependencies: - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 1f5d136a085..f21756096bc 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -28,4 +28,4 @@ jobs: run: npm test - name: Send report to Coveralls - uses: coverallsapp/github-action@v2.3.4 + uses: coverallsapp/github-action@v2.3.6 From 08ce81918f63f61cc80f0846fa498db9d216b09a Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 28 Jan 2025 07:48:20 +0000 Subject: [PATCH 1200/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index ca310a02c32..3b3b7734911 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -3234,9 +3234,9 @@ "dev": true }, "node_modules/emittery": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.0.3.tgz", - "integrity": "sha512-tJdCJitoy2lrC2ldJcqN4vkqJ00lT+tOWNT1hBJjO/3FDMJa5TTIiYGCKGkn/WfCyOzUMObeohbVTj00fhiLiA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.1.0.tgz", + "integrity": "sha512-rsX7ktqARv/6UQDgMaLfIqUWAEzzbCQiVh7V9rhDXp6c37yoJcks12NVD+XPkgl4AEavmNhVfrhGoqYwIsMYYA==", "dev": true, "engines": { "node": ">=14.16" From 7e4a2dbfdc43e667631795f71588783f44024ce1 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 2 Feb 2025 03:20:07 +0000 Subject: [PATCH 1201/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 52 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 3b3b7734911..b79c11cdd2d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -27,7 +27,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.10", - "semver": "^7.6.3", + "semver": "^7.7.0", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, @@ -582,12 +582,12 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.1.tgz", - "integrity": "sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.2.tgz", + "integrity": "sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==", "dev": true, "dependencies": { - "@eslint/object-schema": "^2.1.5", + "@eslint/object-schema": "^2.1.6", "debug": "^4.3.1", "minimatch": "^3.1.2" }, @@ -696,9 +696,9 @@ } }, "node_modules/@eslint/object-schema": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.5.tgz", - "integrity": "sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==", + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1157,9 +1157,9 @@ } }, "node_modules/@npmcli/redact": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.0.0.tgz", - "integrity": "sha512-/1uFzjVcfzqrgCeGW7+SZ4hv0qLWmKXVzFahZGJ6QuJBj6Myt9s17+JL86i76NV9YSnJRcGXJYQbAU0rn1YTCQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.1.1.tgz", + "integrity": "sha512-3Hc2KGIkrvJWJqTbvueXzBeZlmvoOxc2jyX00yzr3+sNFquJg0N8hH4SAPLPVrkWIRQICVpVgjrss971awXVnA==", "engines": { "node": "^18.17.0 || >=20.5.0" } @@ -2160,9 +2160,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001695", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001695.tgz", - "integrity": "sha512-vHyLade6wTgI2u1ec3WQBxv+2BrTERV28UXQu9LO6lZ9pYeMk34vjXFLOxo1A4UBA8XTL4njRQZdno/yYaSmWw==", + "version": "1.0.30001696", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001696.tgz", + "integrity": "sha512-pDCPkvzfa39ehJtJ+OwGT/2yvT2SbjfHhiIW2LWOAcMQ7BzwxT/XuyUp4OTOd0XFWA6BKw0JalnBHgSi5DGJBQ==", "dev": true, "funding": [ { @@ -3228,9 +3228,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.88", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.88.tgz", - "integrity": "sha512-K3C2qf1o+bGzbilTDCTBhTQcMS9KW60yTAaTeeXsfvQuTDDwlokLam/AdqlqcSy9u4UainDgsHV23ksXAOgamw==", + "version": "1.5.90", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.90.tgz", + "integrity": "sha512-C3PN4aydfW91Natdyd449Kw+BzhLmof6tzy5W1pFC5SpQxVXT+oyiyOG9AgYYSN9OdA/ik3YkCrpwqI8ug5Tug==", "dev": true }, "node_modules/emittery": { @@ -3861,9 +3861,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.18.0.tgz", - "integrity": "sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==", + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.0.tgz", + "integrity": "sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==", "dependencies": { "reusify": "^1.0.4" } @@ -6645,9 +6645,9 @@ } }, "node_modules/peek-readable": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.3.1.tgz", - "integrity": "sha512-GVlENSDW6KHaXcd9zkZltB7tCLosKB/4Hg0fqBJkAoBgYG2Tn1xtMgXtSUuMU9AK/gCm/tTdT8mgAeF4YNeeqw==", + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.4.2.tgz", + "integrity": "sha512-peBp3qZyuS6cNIJ2akRNG1uo1WJ1d0wTxg/fxMdZ0BqCVhx242bSFHM9eNqflfJVS9SsgkzgT/1UgnsurBOTMg==", "dev": true, "engines": { "node": ">=14.16" @@ -7328,9 +7328,9 @@ "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" }, "node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.0.tgz", + "integrity": "sha512-DrfFnPzblFmNrIZzg5RzHegbiRWg7KMR7btwi2yjHwx06zsUbO5g613sVwEV7FTwmzJu+Io0lJe2GJ3LxqpvBQ==", "bin": { "semver": "bin/semver.js" }, diff --git a/packages/project/package.json b/packages/project/package.json index 009c1866fe4..d21638ce8ea 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -138,7 +138,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.10", - "semver": "^7.6.3", + "semver": "^7.7.0", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, From eefedd67cd1f82dab154ebb36c5599ee59812b16 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 9 Feb 2025 03:20:08 +0000 Subject: [PATCH 1202/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 469 ++++++++++++++++++++--------- packages/project/package.json | 8 +- 2 files changed, 328 insertions(+), 149 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index b79c11cdd2d..9d8bfb9624b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -16,7 +16,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.4.1", "escape-string-regexp": "^5.0.0", - "globby": "^14.0.2", + "globby": "^14.1.0", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", @@ -27,7 +27,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.10", - "semver": "^7.7.0", + "semver": "^7.7.1", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.19.0", + "eslint": "^9.20.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.3", @@ -49,7 +49,7 @@ "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", - "js-beautify": "^1.15.1", + "js-beautify": "^1.15.2", "jsdoc": "^4.0.4", "nyc": "^17.1.0", "open-cli": "^8.0.0", @@ -97,30 +97,31 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.5.tgz", - "integrity": "sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==", + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.26.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.7.tgz", - "integrity": "sha512-SRijHmF0PSPgLIBYlWnG0hyeJLwXE2CgpsXaMOrtt2yp9/86ALw6oUlj9KYuZ0JN07T4eBMVIW4li/9S1j2BGA==", + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.8.tgz", + "integrity": "sha512-l+lkXCHS6tQEc5oUpK28xBOZ6+HwaH7YwoYQbLFiYb4nS2/l1tKnZEtEWkD0GuiYdvArf9qBS0XlQGXzPMsNqQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.26.5", + "@babel/generator": "^7.26.8", "@babel/helper-compilation-targets": "^7.26.5", "@babel/helper-module-transforms": "^7.26.0", "@babel/helpers": "^7.26.7", - "@babel/parser": "^7.26.7", - "@babel/template": "^7.25.9", - "@babel/traverse": "^7.26.7", - "@babel/types": "^7.26.7", + "@babel/parser": "^7.26.8", + "@babel/template": "^7.26.8", + "@babel/traverse": "^7.26.8", + "@babel/types": "^7.26.8", + "@types/gensync": "^1.0.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -145,13 +146,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.5.tgz", - "integrity": "sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==", + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.8.tgz", + "integrity": "sha512-ef383X5++iZHWAXX0SXQR6ZyQhw/0KtTkrTz61WXRhFM6dhpHulO/RJz79L8S6ugZHJkOOkUrUdxgdF2YiPFnA==", "dev": true, "dependencies": { - "@babel/parser": "^7.26.5", - "@babel/types": "^7.26.5", + "@babel/parser": "^7.26.8", + "@babel/types": "^7.26.8", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -361,12 +362,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.26.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.7.tgz", - "integrity": "sha512-kEvgGGgEjRUutvdVvZhbn/BxVt+5VSpwXz1j3WYXQbXDo8KzFOPNG2GQbdAiNq8g6wn1yKk7C/qrke03a84V+w==", + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.8.tgz", + "integrity": "sha512-TZIQ25pkSoaKEYYaHbbxkfL36GNsQ6iFiBbeuzAkLnXayKR1yP1zFe+NxuZWWsUyvt8icPU9CCq0sgWGXR1GEw==", "dev": true, "dependencies": { - "@babel/types": "^7.26.7" + "@babel/types": "^7.26.8" }, "bin": { "parser": "bin/babel-parser.js" @@ -437,9 +438,9 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.26.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.7.tgz", - "integrity": "sha512-5cJurntg+AT+cgelGP9Bt788DKiAw9gIMSMU2NJrLAilnj0m8WZWUNZPSLOmadYsujHutpgElO+50foX+ib/Wg==", + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.8.tgz", + "integrity": "sha512-bME5J9AC8ChwA7aEPJ6zym3w7aObZULHhbNLU0bKUhKsAkylkzUdq+0kdymh9rzi8nlNFl2bmldFBCKNJBUpuw==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", @@ -475,30 +476,30 @@ } }, "node_modules/@babel/template": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz", - "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==", + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.8.tgz", + "integrity": "sha512-iNKaX3ZebKIsCvJ+0jd6embf+Aulaa3vNBqZ41kM7iTWjx5qzWKXGHiJUW3+nTpQ18SG11hdF8OAzKrpXkb96Q==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.25.9", - "@babel/parser": "^7.25.9", - "@babel/types": "^7.25.9" + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.26.8", + "@babel/types": "^7.26.8" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.26.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.7.tgz", - "integrity": "sha512-1x1sgeyRLC3r5fQOM0/xtQKsYjyxmFjaOrLJNtZ81inNjyJHGIolTULPiSc/2qe1/qfpFLisLQYFnnZl7QoedA==", + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.8.tgz", + "integrity": "sha512-nic9tRkjYH0oB2dzr/JoGIm+4Q6SuYeLEiIiZDwBscRMYFJ+tMAz98fuel9ZnbXViA2I0HVSSRRK8DW5fjXStA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.26.5", - "@babel/parser": "^7.26.7", - "@babel/template": "^7.25.9", - "@babel/types": "^7.26.7", + "@babel/generator": "^7.26.8", + "@babel/parser": "^7.26.8", + "@babel/template": "^7.26.8", + "@babel/types": "^7.26.8", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -516,9 +517,9 @@ } }, "node_modules/@babel/types": { - "version": "7.26.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.7.tgz", - "integrity": "sha512-t8kDRGrKXyp6+tjUh7hw2RLyclsW4TRoRvRHtSyAX9Bb5ldlFh+90YAYY6awRXrlB4G5G2izNeGySpATlFzmOg==", + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.8.tgz", + "integrity": "sha512-eUuWapzEGWFEpHFxgEaBG8e3n6S8L3MSu0oda755rOfabWPnh0Our1AozNFVUxGFIhbKgd1ksprsoDGMinTOTA==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.25.9", @@ -618,9 +619,9 @@ } }, "node_modules/@eslint/core": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.10.0.tgz", - "integrity": "sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==", + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.11.0.tgz", + "integrity": "sha512-DWUB2pksgNEb6Bz2fggIy1wh6fGgZP4Xyy/Mt0QZPiloKKXerbqq9D3SBQTlCRYOrcRPu4vuz+CGjwdfqxnoWA==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.15" @@ -687,9 +688,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.19.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.19.0.tgz", - "integrity": "sha512-rbq9/g38qjfqFLOVPvwjIvFFdNziEC5S65jmjPw5r6A//QH+W91akh9irMwjDN8zKUTak6W9EsAv4m/7Wnw0UQ==", + "version": "9.20.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.20.0.tgz", + "integrity": "sha512-iZA07H9io9Wn836aVTytRaNqh00Sad+EamwOVJT12GTLw1VGMFV/4JaME+JjLtr9fiGaoWgYnS54wrfWsSs4oQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -717,6 +718,18 @@ "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, + "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.10.0.tgz", + "integrity": "sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@humanfs/core": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", @@ -1230,11 +1243,11 @@ } }, "node_modules/@sigstore/bundle": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-3.0.0.tgz", - "integrity": "sha512-XDUYX56iMPAn/cdgh/DTJxz5RWmqKV4pwvUAEKEWJl+HzKdCd/24wUa9JYNMlDSCb7SUHAdtksxYX779Nne/Zg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-3.1.0.tgz", + "integrity": "sha512-Mm1E3/CmDDCz3nDhFKTuYdB47EdRFRQMOE/EAbiG1MJW77/w1b3P7Qx7JSrVJs8PfwOLOVcKQCHErIwCTyPbag==", "dependencies": { - "@sigstore/protobuf-specs": "^0.3.2" + "@sigstore/protobuf-specs": "^0.4.0" }, "engines": { "node": "^18.17.0 || >=20.5.0" @@ -1249,22 +1262,22 @@ } }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.3.tgz", - "integrity": "sha512-RpacQhBlwpBWd7KEJsRKcBQalbV28fvkxwTOJIqhIuDysMMaJW47V4OqW30iJB9uRpqOSxxEAQFdr8tTattReQ==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.4.0.tgz", + "integrity": "sha512-o09cLSIq9EKyRXwryWDOJagkml9XgQCoCSRjHOnHLnvsivaW7Qznzz6yjfV7PHJHhIvyp8OH7OX8w0Dc5bQK7A==", "engines": { "node": "^18.17.0 || >=20.5.0" } }, "node_modules/@sigstore/sign": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-3.0.0.tgz", - "integrity": "sha512-UjhDMQOkyDoktpXoc5YPJpJK6IooF2gayAr5LvXI4EL7O0vd58okgfRcxuaH+YTdhvb5aa1Q9f+WJ0c2sVuYIw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-3.1.0.tgz", + "integrity": "sha512-knzjmaOHOov1Ur7N/z4B1oPqZ0QX5geUfhrVaqVlu+hl0EAoL4o+l0MSULINcD5GCWe3Z0+YJO8ues6vFlW0Yw==", "dependencies": { - "@sigstore/bundle": "^3.0.0", + "@sigstore/bundle": "^3.1.0", "@sigstore/core": "^2.0.0", - "@sigstore/protobuf-specs": "^0.3.2", - "make-fetch-happen": "^14.0.1", + "@sigstore/protobuf-specs": "^0.4.0", + "make-fetch-happen": "^14.0.2", "proc-log": "^5.0.0", "promise-retry": "^2.0.1" }, @@ -1273,11 +1286,11 @@ } }, "node_modules/@sigstore/tuf": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-3.0.0.tgz", - "integrity": "sha512-9Xxy/8U5OFJu7s+OsHzI96IX/OzjF/zj0BSSaWhgJgTqtlBhQIV2xdrQI5qxLD7+CWWDepadnXAxzaZ3u9cvRw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-3.1.0.tgz", + "integrity": "sha512-suVMQEA+sKdOz5hwP9qNcEjX6B45R+hFFr4LAWzbRc5O+U2IInwvay/bpG5a4s+qR35P/JK/PiKiRGjfuLy1IA==", "dependencies": { - "@sigstore/protobuf-specs": "^0.3.2", + "@sigstore/protobuf-specs": "^0.4.0", "tuf-js": "^3.0.1" }, "engines": { @@ -1285,13 +1298,13 @@ } }, "node_modules/@sigstore/verify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-2.0.0.tgz", - "integrity": "sha512-Ggtq2GsJuxFNUvQzLoXqRwS4ceRfLAJnrIHUDrzAD0GgnOhwujJkKkxM/s5Bako07c3WtAs/sZo5PJq7VHjeDg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-2.1.0.tgz", + "integrity": "sha512-kAAM06ca4CzhvjIZdONAL9+MLppW3K48wOFy1TbuaWFW/OMfl8JuTgW0Bm02JB1WJGT/ET2eqav0KTEKmxqkIA==", "dependencies": { - "@sigstore/bundle": "^3.0.0", + "@sigstore/bundle": "^3.1.0", "@sigstore/core": "^2.0.0", - "@sigstore/protobuf-specs": "^0.3.2" + "@sigstore/protobuf-specs": "^0.4.0" }, "engines": { "node": "^18.17.0 || >=20.5.0" @@ -1384,6 +1397,12 @@ "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "dev": true }, + "node_modules/@types/gensync": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/gensync/-/gensync-1.0.4.tgz", + "integrity": "sha512-C3YYeRQWp2fmq9OryX+FoDy8nXS6scQ7dPptD8LnFDAUNcKWJjXQKDNJD3HVm+kOUsXhTOkpi69vI4EuAr95bA==", + "dev": true + }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", @@ -1610,6 +1629,18 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dev": true, + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, "node_modules/acorn": { "version": "8.14.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", @@ -1946,6 +1977,26 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/binary-extensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", @@ -2030,6 +2081,30 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "node_modules/bundle-name": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", @@ -2160,9 +2235,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001696", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001696.tgz", - "integrity": "sha512-pDCPkvzfa39ehJtJ+OwGT/2yvT2SbjfHhiIW2LWOAcMQ7BzwxT/XuyUp4OTOd0XFWA6BKw0JalnBHgSi5DGJBQ==", + "version": "1.0.30001699", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001699.tgz", + "integrity": "sha512-b+uH5BakXZ9Do9iK+CkDmctUSEqZl+SP056vc5usa0PL+ev5OHw003rZXcnjNDv3L8P5j6rwT6C0BPKSikW08w==", "dev": true, "funding": [ { @@ -3228,9 +3303,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.90", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.90.tgz", - "integrity": "sha512-C3PN4aydfW91Natdyd449Kw+BzhLmof6tzy5W1pFC5SpQxVXT+oyiyOG9AgYYSN9OdA/ik3YkCrpwqI8ug5Tug==", + "version": "1.5.96", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.96.tgz", + "integrity": "sha512-8AJUW6dh75Fm/ny8+kZKJzI1pgoE8bKLZlzDU2W1ENd+DXKJrx7I7l9hb8UWR4ojlnb5OlixMt00QWiYJoVw1w==", "dev": true }, "node_modules/emittery": { @@ -3338,17 +3413,17 @@ } }, "node_modules/eslint": { - "version": "9.19.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.19.0.tgz", - "integrity": "sha512-ug92j0LepKlbbEv6hD911THhoRHmbdXt2gX+VDABAW/Ir7D3nqKdv5Pf5vtlyY6HQMTEP2skXY43ueqTCWssEA==", + "version": "9.20.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.20.0.tgz", + "integrity": "sha512-aL4F8167Hg4IvsW89ejnpTwx+B/UQRzJPGgbIOl+4XqffWsahVVsLEWoZvnrVuwpWmnRd7XeXmQI1zlKcFDteA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.19.0", - "@eslint/core": "^0.10.0", + "@eslint/core": "^0.11.0", "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.19.0", + "@eslint/js": "9.20.0", "@eslint/plugin-kit": "^0.2.5", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -3800,6 +3875,24 @@ "node": ">=0.10.0" } }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, "node_modules/events-to-array": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", @@ -3819,9 +3912,9 @@ } }, "node_modules/exponential-backoff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", - "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==" + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz", + "integrity": "sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==" }, "node_modules/fast-deep-equal": { "version": "3.1.3", @@ -4261,16 +4354,16 @@ } }, "node_modules/globby": { - "version": "14.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.2.tgz", - "integrity": "sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==", + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-14.1.0.tgz", + "integrity": "sha512-0Ia46fDOaT7k4og1PDW4YbodWWr3scS2vAr2lTbsplOt2WkKp0vQbkI9wKis/T5LV/dqPjO3bpS/z6GTJB82LA==", "dependencies": { "@sindresorhus/merge-streams": "^2.1.0", - "fast-glob": "^3.3.2", - "ignore": "^5.2.4", - "path-type": "^5.0.0", + "fast-glob": "^3.3.3", + "ignore": "^7.0.3", + "path-type": "^6.0.0", "slash": "^5.1.0", - "unicorn-magic": "^0.1.0" + "unicorn-magic": "^0.3.0" }, "engines": { "node": ">=18" @@ -4279,12 +4372,20 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/globby/node_modules/ignore": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.3.tgz", + "integrity": "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==", + "engines": { + "node": ">= 4" + } + }, "node_modules/globby/node_modules/path-type": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz", - "integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-6.0.0.tgz", + "integrity": "sha512-Vj7sf++t5pBD637NSfkxpHSMfWaeig5+DKWLhcqIYx6mWQz5hdJTGDVMQiJcw1ZYkhs7AazKDGpRVji1LJCZUQ==", "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -4430,6 +4531,7 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, "engines": { "node": ">= 4" } @@ -4455,9 +4557,9 @@ } }, "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", "dev": true, "dependencies": { "parent-module": "^1.0.0", @@ -4935,16 +5037,16 @@ } }, "node_modules/js-beautify": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.1.tgz", - "integrity": "sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==", + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.2.tgz", + "integrity": "sha512-mcG6CHJxxih+EFAbd5NEBwrosIs6MoJmiNLFYN6kj5SeJMf7n29Ii/H4lt6zGTvmdB9AApuj5cs4zydjuLeqjw==", "dev": true, "dependencies": { "config-chain": "^1.1.13", "editorconfig": "^1.0.4", - "glob": "^10.3.3", + "glob": "^11.0.0", "js-cookie": "^3.0.5", - "nopt": "^7.2.0" + "nopt": "^8.0.0" }, "bin": { "css-beautify": "js/bin/css-beautify.js", @@ -4955,28 +5057,82 @@ "node": ">=14" } }, - "node_modules/js-beautify/node_modules/abbrev": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", - "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "node_modules/js-beautify/node_modules/glob": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.1.tgz", + "integrity": "sha512-zrQDm8XPnYEKawJScsnM0QzobJxlT/kHOOlRTio8IH/GrmxRE5fjllkzdaHclIuNjUQTJYH2xHNIGfdpJkDJUw==", "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^4.0.1", + "minimatch": "^10.0.0", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/js-beautify/node_modules/nopt": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", - "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "node_modules/js-beautify/node_modules/jackspeak": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.2.tgz", + "integrity": "sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==", "dev": true, "dependencies": { - "abbrev": "^2.0.0" + "@isaacs/cliui": "^8.0.2" }, - "bin": { - "nopt": "bin/nopt.js" + "engines": { + "node": "20 || >=22" }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/js-beautify/node_modules/lru-cache": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.2.tgz", + "integrity": "sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==", + "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "20 || >=22" + } + }, + "node_modules/js-beautify/node_modules/minimatch": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", + "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/js-beautify/node_modules/path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "dev": true, + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/js-cookie": { @@ -5911,9 +6067,9 @@ } }, "node_modules/npm-package-arg": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.1.tgz", - "integrity": "sha512-aDxjFfPV3Liw0WOBWlyZLMBqtbgbg03rmGvHDJa2Ttv7tIz+1oB5qWec4psCDFZcZi9b5XdGkPdQiJxOPzvQRQ==", + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-12.0.2.tgz", + "integrity": "sha512-f1NpFjNI9O4VbKMOlA5QoBq/vSQPORHcTZ2feJpFkTHJ9eQkdlmZEKSjcAhxTGInC7RlEyScT9ui67NaOsjFWA==", "dependencies": { "hosted-git-info": "^8.0.0", "proc-log": "^5.0.0", @@ -6839,6 +6995,15 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -6999,27 +7164,41 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg/node_modules/unicorn-magic": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", + "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", + "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" }, "engines": { - "node": ">= 6" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/readable-web-to-node-stream": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", - "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.3.tgz", + "integrity": "sha512-In3boYjBnbGVrLuuRu/Ath/H6h1jgk30nAsk/71tCare1dTVoe1oMBGRn5LGf0n3c1BcHwwAqpraxX4AUAP5KA==", "dev": true, "dependencies": { - "readable-stream": "^3.6.0" + "process": "^0.11.10", + "readable-stream": "^4.7.0" }, "engines": { "node": ">=8" @@ -7328,9 +7507,9 @@ "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" }, "node_modules/semver": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.0.tgz", - "integrity": "sha512-DrfFnPzblFmNrIZzg5RzHegbiRWg7KMR7btwi2yjHwx06zsUbO5g613sVwEV7FTwmzJu+Io0lJe2GJ3LxqpvBQ==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "bin": { "semver": "bin/semver.js" }, @@ -7408,16 +7587,16 @@ } }, "node_modules/sigstore": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-3.0.0.tgz", - "integrity": "sha512-PHMifhh3EN4loMcHCz6l3v/luzgT3za+9f8subGgeMNjbJjzH4Ij/YoX3Gvu+kaouJRIlVdTHHCREADYf+ZteA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-3.1.0.tgz", + "integrity": "sha512-ZpzWAFHIFqyFE56dXqgX/DkDRZdz+rRcjoIk/RQU4IX0wiCv1l8S7ZrXDHcCc+uaf+6o7w3h2l3g6GYG5TKN9Q==", "dependencies": { - "@sigstore/bundle": "^3.0.0", + "@sigstore/bundle": "^3.1.0", "@sigstore/core": "^2.0.0", - "@sigstore/protobuf-specs": "^0.3.2", - "@sigstore/sign": "^3.0.0", - "@sigstore/tuf": "^3.0.0", - "@sigstore/verify": "^2.0.0" + "@sigstore/protobuf-specs": "^0.4.0", + "@sigstore/sign": "^3.1.0", + "@sigstore/tuf": "^3.1.0", + "@sigstore/verify": "^2.1.0" }, "engines": { "node": "^18.17.0 || >=20.5.0" @@ -8382,9 +8561,9 @@ "dev": true }, "node_modules/unicorn-magic": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", - "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz", + "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==", "engines": { "node": ">=18" }, diff --git a/packages/project/package.json b/packages/project/package.json index d21638ce8ea..5474c109859 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -127,7 +127,7 @@ "ajv-errors": "^1.0.1", "chalk": "^5.4.1", "escape-string-regexp": "^5.0.0", - "globby": "^14.0.2", + "globby": "^14.1.0", "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", @@ -138,7 +138,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.10", - "semver": "^7.7.0", + "semver": "^7.7.1", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.19.0", + "eslint": "^9.20.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.3", @@ -168,7 +168,7 @@ "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", - "js-beautify": "^1.15.1", + "js-beautify": "^1.15.2", "jsdoc": "^4.0.4", "nyc": "^17.1.0", "open-cli": "^8.0.0", From 6b21ee2c08bff58da02f3131d90d96d7057bb749 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 16 Feb 2025 03:20:09 +0000 Subject: [PATCH 1203/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 246 ++++++++++------------------- packages/project/package.json | 6 +- 2 files changed, 83 insertions(+), 169 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9d8bfb9624b..f6ee2dff54c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,17 +39,17 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.20.0", + "eslint": "^9.20.1", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.3", "esmock": "^2.7.0", - "globals": "^15.14.0", + "globals": "^15.15.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", - "js-beautify": "^1.15.2", + "js-beautify": "^1.15.3", "jsdoc": "^4.0.4", "nyc": "^17.1.0", "open-cli": "^8.0.0", @@ -106,22 +106,21 @@ } }, "node_modules/@babel/core": { - "version": "7.26.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.8.tgz", - "integrity": "sha512-l+lkXCHS6tQEc5oUpK28xBOZ6+HwaH7YwoYQbLFiYb4nS2/l1tKnZEtEWkD0GuiYdvArf9qBS0XlQGXzPMsNqQ==", + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.9.tgz", + "integrity": "sha512-lWBYIrF7qK5+GjY5Uy+/hEgp8OJWOD/rpy74GplYRhEauvbHDeFB8t5hPOZxCZ0Oxf4Cc36tK51/l3ymJysrKw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.26.8", + "@babel/generator": "^7.26.9", "@babel/helper-compilation-targets": "^7.26.5", "@babel/helper-module-transforms": "^7.26.0", - "@babel/helpers": "^7.26.7", - "@babel/parser": "^7.26.8", - "@babel/template": "^7.26.8", - "@babel/traverse": "^7.26.8", - "@babel/types": "^7.26.8", - "@types/gensync": "^1.0.0", + "@babel/helpers": "^7.26.9", + "@babel/parser": "^7.26.9", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.9", + "@babel/types": "^7.26.9", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -146,13 +145,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.26.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.8.tgz", - "integrity": "sha512-ef383X5++iZHWAXX0SXQR6ZyQhw/0KtTkrTz61WXRhFM6dhpHulO/RJz79L8S6ugZHJkOOkUrUdxgdF2YiPFnA==", + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.9.tgz", + "integrity": "sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==", "dev": true, "dependencies": { - "@babel/parser": "^7.26.8", - "@babel/types": "^7.26.8", + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -199,17 +198,17 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz", - "integrity": "sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==", + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.26.9.tgz", + "integrity": "sha512-ubbUqCofvxPRurw5L8WTsCLSkQiVpov4Qx0WMA+jUN+nXBK8ADPlJO1grkFw5CWKC5+sZSOfuGMdX1aI1iT9Sg==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", "@babel/helper-member-expression-to-functions": "^7.25.9", "@babel/helper-optimise-call-expression": "^7.25.9", - "@babel/helper-replace-supers": "^7.25.9", + "@babel/helper-replace-supers": "^7.26.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", - "@babel/traverse": "^7.25.9", + "@babel/traverse": "^7.26.9", "semver": "^6.3.1" }, "engines": { @@ -349,25 +348,25 @@ } }, "node_modules/@babel/helpers": { - "version": "7.26.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.7.tgz", - "integrity": "sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A==", + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.9.tgz", + "integrity": "sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA==", "dev": true, "dependencies": { - "@babel/template": "^7.25.9", - "@babel/types": "^7.26.7" + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.26.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.8.tgz", - "integrity": "sha512-TZIQ25pkSoaKEYYaHbbxkfL36GNsQ6iFiBbeuzAkLnXayKR1yP1zFe+NxuZWWsUyvt8icPU9CCq0sgWGXR1GEw==", + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.9.tgz", + "integrity": "sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==", "dev": true, "dependencies": { - "@babel/types": "^7.26.8" + "@babel/types": "^7.26.9" }, "bin": { "parser": "bin/babel-parser.js" @@ -476,30 +475,30 @@ } }, "node_modules/@babel/template": { - "version": "7.26.8", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.8.tgz", - "integrity": "sha512-iNKaX3ZebKIsCvJ+0jd6embf+Aulaa3vNBqZ41kM7iTWjx5qzWKXGHiJUW3+nTpQ18SG11hdF8OAzKrpXkb96Q==", + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz", + "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.26.2", - "@babel/parser": "^7.26.8", - "@babel/types": "^7.26.8" + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.26.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.8.tgz", - "integrity": "sha512-nic9tRkjYH0oB2dzr/JoGIm+4Q6SuYeLEiIiZDwBscRMYFJ+tMAz98fuel9ZnbXViA2I0HVSSRRK8DW5fjXStA==", + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.9.tgz", + "integrity": "sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.26.8", - "@babel/parser": "^7.26.8", - "@babel/template": "^7.26.8", - "@babel/types": "^7.26.8", + "@babel/generator": "^7.26.9", + "@babel/parser": "^7.26.9", + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.9", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -517,9 +516,9 @@ } }, "node_modules/@babel/types": { - "version": "7.26.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.8.tgz", - "integrity": "sha512-eUuWapzEGWFEpHFxgEaBG8e3n6S8L3MSu0oda755rOfabWPnh0Our1AozNFVUxGFIhbKgd1ksprsoDGMinTOTA==", + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.9.tgz", + "integrity": "sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.25.9", @@ -1397,12 +1396,6 @@ "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "dev": true }, - "node_modules/@types/gensync": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@types/gensync/-/gensync-1.0.4.tgz", - "integrity": "sha512-C3YYeRQWp2fmq9OryX+FoDy8nXS6scQ7dPptD8LnFDAUNcKWJjXQKDNJD3HVm+kOUsXhTOkpi69vI4EuAr95bA==", - "dev": true - }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", @@ -3303,9 +3296,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.96", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.96.tgz", - "integrity": "sha512-8AJUW6dh75Fm/ny8+kZKJzI1pgoE8bKLZlzDU2W1ENd+DXKJrx7I7l9hb8UWR4ojlnb5OlixMt00QWiYJoVw1w==", + "version": "1.5.101", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.101.tgz", + "integrity": "sha512-L0ISiQrP/56Acgu4/i/kfPwWSgrzYZUnQrC0+QPFuhqlLP1Ir7qzPPDVS9BcKIyWTRU8+o6CC8dKw38tSWhYIA==", "dev": true }, "node_modules/emittery": { @@ -3413,9 +3406,9 @@ } }, "node_modules/eslint": { - "version": "9.20.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.20.0.tgz", - "integrity": "sha512-aL4F8167Hg4IvsW89ejnpTwx+B/UQRzJPGgbIOl+4XqffWsahVVsLEWoZvnrVuwpWmnRd7XeXmQI1zlKcFDteA==", + "version": "9.20.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.20.1.tgz", + "integrity": "sha512-m1mM33o6dBUjxl2qb6wv6nGNwCAsns1eKtaQ4l/NPHeTvhiUPbtdfMyktxN4B3fgHIgsYh1VT3V9txblpQHq+g==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -4342,9 +4335,9 @@ } }, "node_modules/globals": { - "version": "15.14.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.14.0.tgz", - "integrity": "sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==", + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", "dev": true, "engines": { "node": ">=18" @@ -5037,14 +5030,14 @@ } }, "node_modules/js-beautify": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.2.tgz", - "integrity": "sha512-mcG6CHJxxih+EFAbd5NEBwrosIs6MoJmiNLFYN6kj5SeJMf7n29Ii/H4lt6zGTvmdB9AApuj5cs4zydjuLeqjw==", + "version": "1.15.3", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.3.tgz", + "integrity": "sha512-rKKGuyTxGNlyN4EQKWzNndzXpi0bOl8Gl8YQAW1as/oMz0XhD6sHJO1hTvoBDOSzKuJb9WkwoAb34FfdkKMv2A==", "dev": true, "dependencies": { "config-chain": "^1.1.13", "editorconfig": "^1.0.4", - "glob": "^11.0.0", + "glob": "^10.4.2", "js-cookie": "^3.0.5", "nopt": "^8.0.0" }, @@ -5057,84 +5050,6 @@ "node": ">=14" } }, - "node_modules/js-beautify/node_modules/glob": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.1.tgz", - "integrity": "sha512-zrQDm8XPnYEKawJScsnM0QzobJxlT/kHOOlRTio8IH/GrmxRE5fjllkzdaHclIuNjUQTJYH2xHNIGfdpJkDJUw==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^4.0.1", - "minimatch": "^10.0.0", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^2.0.0" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/js-beautify/node_modules/jackspeak": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.2.tgz", - "integrity": "sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==", - "dev": true, - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/js-beautify/node_modules/lru-cache": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.2.tgz", - "integrity": "sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==", - "dev": true, - "engines": { - "node": "20 || >=22" - } - }, - "node_modules/js-beautify/node_modules/minimatch": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", - "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/js-beautify/node_modules/path-scurry": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", - "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", - "dev": true, - "dependencies": { - "lru-cache": "^11.0.0", - "minipass": "^7.1.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/js-cookie": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", @@ -5912,9 +5827,9 @@ } }, "node_modules/node-gyp": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.0.0.tgz", - "integrity": "sha512-zQS+9MTTeCMgY0F3cWPyJyRFAkVltQ1uXm+xXu/ES6KFgC6Czo1Seb9vQW2wNxSX2OrDTiqL0ojtkFxBQ0ypIw==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.1.0.tgz", + "integrity": "sha512-/+7TuHKnBpnMvUQnsYEb0JOozDZqarQbfNuSGLXIjhStMT0fbw7IdSqWgopOP5xhRZE+lsbIvAHcekddruPZgQ==", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", @@ -6928,9 +6843,9 @@ } }, "node_modules/postcss": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.1.tgz", - "integrity": "sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==", + "version": "8.5.2", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.2.tgz", + "integrity": "sha512-MjOadfU3Ys9KYoX0AdkBlFEF1Vx37uCCeN4ZHnmwm9FfpbsGWMZeBLMmmpY+6Ocqod7mkdZ0DT31OlbsFrLlkA==", "dev": true, "funding": [ { @@ -7109,9 +7024,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.33.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.33.0.tgz", - "integrity": "sha512-s6zVrxuyKbbAsSAD5ZPTB77q4YIdRctkTbJ2/Dqlinwz+8ooH2gd+YA7VA6Pa93KML9GockVvoxjZ2vHP+mu8g==", + "version": "4.34.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.34.1.tgz", + "integrity": "sha512-6kSc32kT0rbwxD6QL1CYe8IqdzN/J/ILMrNK+HMQCKH3insCDRY/3ITb0vcBss0a3t72fzh2YSzj8ko1HgwT3g==", "engines": { "node": ">=16" }, @@ -7154,9 +7069,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.33.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.33.0.tgz", - "integrity": "sha512-s6zVrxuyKbbAsSAD5ZPTB77q4YIdRctkTbJ2/Dqlinwz+8ooH2gd+YA7VA6Pa93KML9GockVvoxjZ2vHP+mu8g==", + "version": "4.34.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.34.1.tgz", + "integrity": "sha512-6kSc32kT0rbwxD6QL1CYe8IqdzN/J/ILMrNK+HMQCKH3insCDRY/3ITb0vcBss0a3t72fzh2YSzj8ko1HgwT3g==", "engines": { "node": ">=16" }, @@ -7192,12 +7107,11 @@ } }, "node_modules/readable-web-to-node-stream": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.3.tgz", - "integrity": "sha512-In3boYjBnbGVrLuuRu/Ath/H6h1jgk30nAsk/71tCare1dTVoe1oMBGRn5LGf0n3c1BcHwwAqpraxX4AUAP5KA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.4.tgz", + "integrity": "sha512-9nX56alTf5bwXQ3ZDipHJhusu9NTQJ/CVPtb/XHAJCXihZeitfJvIRS4GqQ/mfIoOE3IelHMrpayVrosdHBuLw==", "dev": true, "dependencies": { - "process": "^0.11.10", "readable-stream": "^4.7.0" }, "engines": { @@ -7387,9 +7301,9 @@ } }, "node_modules/rimraf/node_modules/jackspeak": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.2.tgz", - "integrity": "sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.3.tgz", + "integrity": "sha512-oSwM7q8PTHQWuZAlp995iPpPJ4Vkl7qT0ZRD+9duL9j2oBy6KcTfyxc8mEuHJYC+z/kbps80aJLkaNzTOrf/kw==", "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" @@ -7663,9 +7577,9 @@ } }, "node_modules/socks": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", - "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.4.tgz", + "integrity": "sha512-D3YaD0aRxR3mEcqnidIs7ReYJFVzWdd6fXJYUM8ixcQcJRGTka/b3saV0KflYhyVJXKhb947GndU35SxYNResQ==", "dependencies": { "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" diff --git a/packages/project/package.json b/packages/project/package.json index 5474c109859..6f87c8926cb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,17 +158,17 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.20.0", + "eslint": "^9.20.1", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.3", "esmock": "^2.7.0", - "globals": "^15.14.0", + "globals": "^15.15.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", - "js-beautify": "^1.15.2", + "js-beautify": "^1.15.3", "jsdoc": "^4.0.4", "nyc": "^17.1.0", "open-cli": "^8.0.0", From a7649efd82861dd3149e4f0a33096321438f3b81 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 23 Feb 2025 03:20:05 +0000 Subject: [PATCH 1204/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 126 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 55 insertions(+), 73 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f6ee2dff54c..f606f67df9d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.20.1", + "eslint": "^9.21.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.3", @@ -618,9 +618,9 @@ } }, "node_modules/@eslint/core": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.11.0.tgz", - "integrity": "sha512-DWUB2pksgNEb6Bz2fggIy1wh6fGgZP4Xyy/Mt0QZPiloKKXerbqq9D3SBQTlCRYOrcRPu4vuz+CGjwdfqxnoWA==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", + "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.15" @@ -630,9 +630,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz", - "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.0.tgz", + "integrity": "sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -687,9 +687,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.20.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.20.0.tgz", - "integrity": "sha512-iZA07H9io9Wn836aVTytRaNqh00Sad+EamwOVJT12GTLw1VGMFV/4JaME+JjLtr9fiGaoWgYnS54wrfWsSs4oQ==", + "version": "9.21.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.21.0.tgz", + "integrity": "sha512-BqStZ3HX8Yz6LvsF5ByXYrtigrV5AXADWLAGc7PH/1SxOb7/FIYYMszZZWiUou/GB9P2lXWk2SV4d+Z8h0nknw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -705,30 +705,18 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.5.tgz", - "integrity": "sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==", + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.7.tgz", + "integrity": "sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==", "dev": true, "dependencies": { - "@eslint/core": "^0.10.0", + "@eslint/core": "^0.12.0", "levn": "^0.4.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.10.0.tgz", - "integrity": "sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, "node_modules/@humanfs/core": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", @@ -778,9 +766,9 @@ } }, "node_modules/@humanwhocodes/retry": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz", - "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz", + "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==", "dev": true, "engines": { "node": ">=18.18" @@ -1072,16 +1060,15 @@ } }, "node_modules/@npmcli/git": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-6.0.1.tgz", - "integrity": "sha512-BBWMMxeQzalmKadyimwb2/VVQyJB01PH0HhVSNLHNBDZN/M/h/02P6f8fxedIiFhpMj11SO9Ep5tKTBE7zL2nw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-6.0.3.tgz", + "integrity": "sha512-GUYESQlxZRAdhs3UhbB6pVRNUELQOHXwK9ruDkwmCv2aZ5y0SApQzUJCg02p3A7Ue2J5hxvlk1YI53c00NmRyQ==", "dependencies": { "@npmcli/promise-spawn": "^8.0.0", "ini": "^5.0.0", "lru-cache": "^10.0.1", "npm-pick-manifest": "^10.0.0", "proc-log": "^5.0.0", - "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", "which": "^5.0.0" @@ -2228,9 +2215,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001699", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001699.tgz", - "integrity": "sha512-b+uH5BakXZ9Do9iK+CkDmctUSEqZl+SP056vc5usa0PL+ev5OHw003rZXcnjNDv3L8P5j6rwT6C0BPKSikW08w==", + "version": "1.0.30001700", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001700.tgz", + "integrity": "sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==", "dev": true, "funding": [ { @@ -3296,9 +3283,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.101", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.101.tgz", - "integrity": "sha512-L0ISiQrP/56Acgu4/i/kfPwWSgrzYZUnQrC0+QPFuhqlLP1Ir7qzPPDVS9BcKIyWTRU8+o6CC8dKw38tSWhYIA==", + "version": "1.5.103", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.103.tgz", + "integrity": "sha512-P6+XzIkfndgsrjROJWfSvVEgNHtPgbhVyTkwLjUM2HU/h7pZRORgaTlHqfAikqxKmdJMLW8fftrdGWbd/Ds0FA==", "dev": true }, "node_modules/emittery": { @@ -3406,21 +3393,21 @@ } }, "node_modules/eslint": { - "version": "9.20.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.20.1.tgz", - "integrity": "sha512-m1mM33o6dBUjxl2qb6wv6nGNwCAsns1eKtaQ4l/NPHeTvhiUPbtdfMyktxN4B3fgHIgsYh1VT3V9txblpQHq+g==", + "version": "9.21.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.21.0.tgz", + "integrity": "sha512-KjeihdFqTPhOMXTt7StsDxriV4n66ueuF/jfPNC3j/lduHwr/ijDwJMsF+wyMJethgiKi5wniIE243vi07d3pg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.19.0", - "@eslint/core": "^0.11.0", - "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.20.0", - "@eslint/plugin-kit": "^0.2.5", + "@eslint/config-array": "^0.19.2", + "@eslint/core": "^0.12.0", + "@eslint/eslintrc": "^3.3.0", + "@eslint/js": "9.21.0", + "@eslint/plugin-kit": "^0.2.7", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.4.1", + "@humanwhocodes/retry": "^0.4.2", "@types/estree": "^1.0.6", "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", @@ -4120,9 +4107,9 @@ } }, "node_modules/flatted": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.2.tgz", - "integrity": "sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", "dev": true }, "node_modules/foreground-child": { @@ -5455,12 +5442,12 @@ "dev": true }, "node_modules/memoize": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/memoize/-/memoize-10.0.0.tgz", - "integrity": "sha512-H6cBLgsi6vMWOcCpvVCdFFnl3kerEXbrYh9q+lY6VXvQSmM6CkmV08VOwT+WE2tzIEqRPFfAq3fm4v/UIW6mSA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/memoize/-/memoize-10.1.0.tgz", + "integrity": "sha512-MMbFhJzh4Jlg/poq1si90XRlTZRDHVqdlz2mPyGJ6kqMpyHUyVpDd5gpFAvVehW64+RA1eKE9Yt8aSLY7w2Kgg==", "dev": true, "dependencies": { - "mimic-function": "^5.0.0" + "mimic-function": "^5.0.1" }, "engines": { "node": ">=18" @@ -6843,9 +6830,9 @@ } }, "node_modules/postcss": { - "version": "8.5.2", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.2.tgz", - "integrity": "sha512-MjOadfU3Ys9KYoX0AdkBlFEF1Vx37uCCeN4ZHnmwm9FfpbsGWMZeBLMmmpY+6Ocqod7mkdZ0DT31OlbsFrLlkA==", + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", "dev": true, "funding": [ { @@ -6937,11 +6924,6 @@ "node": ">=8" } }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" - }, "node_modules/promise-retry": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", @@ -7024,9 +7006,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.34.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.34.1.tgz", - "integrity": "sha512-6kSc32kT0rbwxD6QL1CYe8IqdzN/J/ILMrNK+HMQCKH3insCDRY/3ITb0vcBss0a3t72fzh2YSzj8ko1HgwT3g==", + "version": "4.35.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.35.0.tgz", + "integrity": "sha512-2/AwEFQDFEy30iOLjrvHDIH7e4HEWH+f1Yl1bI5XMqzuoCUqwYCdxachgsgv0og/JdVZUhbfjcJAoHj5L1753A==", "engines": { "node": ">=16" }, @@ -7069,9 +7051,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.34.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.34.1.tgz", - "integrity": "sha512-6kSc32kT0rbwxD6QL1CYe8IqdzN/J/ILMrNK+HMQCKH3insCDRY/3ITb0vcBss0a3t72fzh2YSzj8ko1HgwT3g==", + "version": "4.35.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.35.0.tgz", + "integrity": "sha512-2/AwEFQDFEy30iOLjrvHDIH7e4HEWH+f1Yl1bI5XMqzuoCUqwYCdxachgsgv0og/JdVZUhbfjcJAoHj5L1753A==", "engines": { "node": ">=16" }, @@ -7301,9 +7283,9 @@ } }, "node_modules/rimraf/node_modules/jackspeak": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.3.tgz", - "integrity": "sha512-oSwM7q8PTHQWuZAlp995iPpPJ4Vkl7qT0ZRD+9duL9j2oBy6KcTfyxc8mEuHJYC+z/kbps80aJLkaNzTOrf/kw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.0.tgz", + "integrity": "sha512-9DDdhb5j6cpeitCbvLO7n7J4IxnbM6hoF6O1g4HQ5TfhvvKN8ywDM7668ZhMHRqVmxqhps/F6syWK2KcPxYlkw==", "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" diff --git a/packages/project/package.json b/packages/project/package.json index 6f87c8926cb..daa9fddb6e8 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.20.1", + "eslint": "^9.21.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.3", From bf549924bfaa083bfde1fc4cc93828ea6c44245f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Feb 2025 07:01:38 +0000 Subject: [PATCH 1205/1272] [ui5-project][INTERNAL] Bump globals from 15.15.0 to 16.0.0 (#791) --- packages/project/package-lock.json | 9 +++++---- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f606f67df9d..2c79ae25c49 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -44,7 +44,7 @@ "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.3", "esmock": "^2.7.0", - "globals": "^15.15.0", + "globals": "^16.0.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -4322,10 +4322,11 @@ } }, "node_modules/globals": { - "version": "15.15.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", - "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.0.0.tgz", + "integrity": "sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==", "dev": true, + "license": "MIT", "engines": { "node": ">=18" }, diff --git a/packages/project/package.json b/packages/project/package.json index daa9fddb6e8..fcdd1fd11de 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -163,7 +163,7 @@ "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.3", "esmock": "^2.7.0", - "globals": "^15.15.0", + "globals": "^16.0.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From 75978a9913f303b8cad080bc394f69f8aba333d5 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 2 Mar 2025 03:20:08 +0000 Subject: [PATCH 1206/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 97 ++++++++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 61 insertions(+), 38 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2c79ae25c49..5d08ee01d04 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -49,7 +49,7 @@ "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", - "js-beautify": "^1.15.3", + "js-beautify": "^1.15.4", "jsdoc": "^4.0.4", "nyc": "^17.1.0", "open-cli": "^8.0.0", @@ -2215,9 +2215,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001700", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001700.tgz", - "integrity": "sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==", + "version": "1.0.30001701", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001701.tgz", + "integrity": "sha512-faRs/AW3jA9nTwmJBSO1PQ6L/EOgsB5HMQQq4iCu5zhPgVVgO/pZRHlmatwijZKetFw8/Pr4q6dEN8sJuq8qTw==", "dev": true, "funding": [ { @@ -3283,9 +3283,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.103", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.103.tgz", - "integrity": "sha512-P6+XzIkfndgsrjROJWfSvVEgNHtPgbhVyTkwLjUM2HU/h7pZRORgaTlHqfAikqxKmdJMLW8fftrdGWbd/Ds0FA==", + "version": "1.5.109", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.109.tgz", + "integrity": "sha512-AidaH9JETVRr9DIPGfp1kAarm/W6hRJTPuCnkF+2MqhF4KaAgRIcBc8nvjk+YMXZhwfISof/7WG29eS4iGxQLQ==", "dev": true }, "node_modules/emittery": { @@ -3934,9 +3934,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.0.tgz", - "integrity": "sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", "dependencies": { "reusify": "^1.0.4" } @@ -4068,9 +4068,9 @@ } }, "node_modules/find-up-simple": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-up-simple/-/find-up-simple-1.0.0.tgz", - "integrity": "sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/find-up-simple/-/find-up-simple-1.0.1.tgz", + "integrity": "sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ==", "engines": { "node": ">=18" }, @@ -4113,11 +4113,11 @@ "dev": true }, "node_modules/foreground-child": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", - "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", "dependencies": { - "cross-spawn": "^7.0.0", + "cross-spawn": "^7.0.6", "signal-exit": "^4.0.1" }, "engines": { @@ -4326,7 +4326,6 @@ "resolved": "https://registry.npmjs.org/globals/-/globals-16.0.0.tgz", "integrity": "sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==", "dev": true, - "license": "MIT", "engines": { "node": ">=18" }, @@ -5018,16 +5017,16 @@ } }, "node_modules/js-beautify": { - "version": "1.15.3", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.3.tgz", - "integrity": "sha512-rKKGuyTxGNlyN4EQKWzNndzXpi0bOl8Gl8YQAW1as/oMz0XhD6sHJO1hTvoBDOSzKuJb9WkwoAb34FfdkKMv2A==", + "version": "1.15.4", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.4.tgz", + "integrity": "sha512-9/KXeZUKKJwqCXUdBxFJ3vPh467OCckSBmYDwSK/EtV090K+iMJ7zx2S3HLVDIWFQdqMIsZWbnaGiba18aWhaA==", "dev": true, "dependencies": { "config-chain": "^1.1.13", "editorconfig": "^1.0.4", "glob": "^10.4.2", "js-cookie": "^3.0.5", - "nopt": "^8.0.0" + "nopt": "^7.2.1" }, "bin": { "css-beautify": "js/bin/css-beautify.js", @@ -5038,6 +5037,30 @@ "node": ">=14" } }, + "node_modules/js-beautify/node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/js-beautify/node_modules/nopt": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "dev": true, + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/js-cookie": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", @@ -5561,9 +5584,9 @@ } }, "node_modules/minipass-fetch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.0.tgz", - "integrity": "sha512-2v6aXUXwLP1Epd/gc32HAMIWoczx+fZwEPRHm/VwtrJzRGwR1qGZXEYV3Zp8ZjjbwaZhMrM6uHV4KVkk+XCc2w==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.1.tgz", + "integrity": "sha512-j7U11C5HXigVuutxebFadoYBbd7VSdZWggSe64NVdvWNBqGAiXPL2QVCehjmw7lY1oF9gOllYbORh+hiNgfPgQ==", "dependencies": { "minipass": "^7.0.3", "minipass-sized": "^1.0.3", @@ -7007,9 +7030,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.35.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.35.0.tgz", - "integrity": "sha512-2/AwEFQDFEy30iOLjrvHDIH7e4HEWH+f1Yl1bI5XMqzuoCUqwYCdxachgsgv0og/JdVZUhbfjcJAoHj5L1753A==", + "version": "4.36.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.36.0.tgz", + "integrity": "sha512-3T/PUdKTCnkUmhQU6FFJEHsLwadsRegktX3TNHk+2JJB9HlA8gp1/VXblXVDI93kSnXF2rdPx0GMbHtJIV2LPg==", "engines": { "node": ">=16" }, @@ -7052,9 +7075,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.35.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.35.0.tgz", - "integrity": "sha512-2/AwEFQDFEy30iOLjrvHDIH7e4HEWH+f1Yl1bI5XMqzuoCUqwYCdxachgsgv0og/JdVZUhbfjcJAoHj5L1753A==", + "version": "4.36.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.36.0.tgz", + "integrity": "sha512-3T/PUdKTCnkUmhQU6FFJEHsLwadsRegktX3TNHk+2JJB9HlA8gp1/VXblXVDI93kSnXF2rdPx0GMbHtJIV2LPg==", "engines": { "node": ">=16" }, @@ -7233,9 +7256,9 @@ } }, "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", "engines": { "iojs": ">=1.0.0", "node": ">=0.10.0" @@ -8506,9 +8529,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.2.tgz", - "integrity": "sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", "dev": true, "funding": [ { diff --git a/packages/project/package.json b/packages/project/package.json index fcdd1fd11de..28b402b53e3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -168,7 +168,7 @@ "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.1.7", - "js-beautify": "^1.15.3", + "js-beautify": "^1.15.4", "jsdoc": "^4.0.4", "nyc": "^17.1.0", "open-cli": "^8.0.0", From fc2f8ce520dc3de0b9fddc77133daa1d3c48fbf4 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 9 Mar 2025 03:20:12 +0000 Subject: [PATCH 1207/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 76 +++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 44 insertions(+), 34 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5d08ee01d04..20fa301b84e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.21.0", + "eslint": "^9.22.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.3", @@ -617,6 +617,15 @@ "node": "*" } }, + "node_modules/@eslint/config-helpers": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.1.0.tgz", + "integrity": "sha512-kLrdPDJE1ckPo94kmPPf9Hfd0DU0Jw6oKYrhe+pwSC0iTUInmTa+w6fw8sGgcfkFJGNdWOUeOaDM4quW4a7OkA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@eslint/core": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", @@ -687,9 +696,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.21.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.21.0.tgz", - "integrity": "sha512-BqStZ3HX8Yz6LvsF5ByXYrtigrV5AXADWLAGc7PH/1SxOb7/FIYYMszZZWiUou/GB9P2lXWk2SV4d+Z8h0nknw==", + "version": "9.22.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.22.0.tgz", + "integrity": "sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1164,9 +1173,9 @@ } }, "node_modules/@npmcli/run-script": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-9.0.2.tgz", - "integrity": "sha512-cJXiUlycdizQwvqE1iaAb4VRUM3RX09/8q46zjvy+ct9GhfZRWd7jXYVc1tn/CfRlGPVkX/u4sstRlepsm7hfw==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-9.1.0.tgz", + "integrity": "sha512-aoNSbxtkePXUlbZB+anS1LqsJdctG5n3UVhfU47+CDdwMi6uNTBMF9gPcQRnqghQd2FGzcwwIFBruFMxjhBewg==", "dependencies": { "@npmcli/node-gyp": "^4.0.0", "@npmcli/package-json": "^6.0.0", @@ -1622,9 +1631,9 @@ } }, "node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -2215,9 +2224,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001701", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001701.tgz", - "integrity": "sha512-faRs/AW3jA9nTwmJBSO1PQ6L/EOgsB5HMQQq4iCu5zhPgVVgO/pZRHlmatwijZKetFw8/Pr4q6dEN8sJuq8qTw==", + "version": "1.0.30001702", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001702.tgz", + "integrity": "sha512-LoPe/D7zioC0REI5W73PeR1e1MLCipRGq/VkovJnd6Df+QVqT+vT33OXCp8QUd7kA7RZrHWxb1B36OQKI/0gOA==", "dev": true, "funding": [ { @@ -3283,9 +3292,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.109", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.109.tgz", - "integrity": "sha512-AidaH9JETVRr9DIPGfp1kAarm/W6hRJTPuCnkF+2MqhF4KaAgRIcBc8nvjk+YMXZhwfISof/7WG29eS4iGxQLQ==", + "version": "1.5.113", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.113.tgz", + "integrity": "sha512-wjT2O4hX+wdWPJ76gWSkMhcHAV2PTMX+QetUCPYEdCIe+cxmgzzSSiGRCKW8nuh4mwKZlpv0xvoW7OF2X+wmHg==", "dev": true }, "node_modules/emittery": { @@ -3393,17 +3402,18 @@ } }, "node_modules/eslint": { - "version": "9.21.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.21.0.tgz", - "integrity": "sha512-KjeihdFqTPhOMXTt7StsDxriV4n66ueuF/jfPNC3j/lduHwr/ijDwJMsF+wyMJethgiKi5wniIE243vi07d3pg==", + "version": "9.22.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.22.0.tgz", + "integrity": "sha512-9V/QURhsRN40xuHXWjV64yvrzMjcz7ZyNoF2jJFmy9j/SLk0u1OLSZgXi28MrXjymnjEGSR80WCdab3RGMDveQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.19.2", + "@eslint/config-helpers": "^0.1.0", "@eslint/core": "^0.12.0", "@eslint/eslintrc": "^3.3.0", - "@eslint/js": "9.21.0", + "@eslint/js": "9.22.0", "@eslint/plugin-kit": "^0.2.7", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -3415,7 +3425,7 @@ "cross-spawn": "^7.0.6", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.2.0", + "eslint-scope": "^8.3.0", "eslint-visitor-keys": "^4.2.0", "espree": "^10.3.0", "esquery": "^1.5.0", @@ -3552,9 +3562,9 @@ } }, "node_modules/eslint-scope": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.2.0.tgz", - "integrity": "sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", + "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -5773,9 +5783,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", - "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.9.tgz", + "integrity": "sha512-SppoicMGpZvbF1l3z4x7No3OlIjP7QJvC9XR7AhZr1kL133KHnKPztkKDc+Ir4aJ/1VhTySrtKhrsycmrMQfvg==", "dev": true, "funding": [ { @@ -7030,9 +7040,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.36.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.36.0.tgz", - "integrity": "sha512-3T/PUdKTCnkUmhQU6FFJEHsLwadsRegktX3TNHk+2JJB9HlA8gp1/VXblXVDI93kSnXF2rdPx0GMbHtJIV2LPg==", + "version": "4.37.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.37.0.tgz", + "integrity": "sha512-S/5/0kFftkq27FPNye0XM1e2NsnoD/3FS+pBmbjmmtLT6I+i344KoOf7pvXreaFsDamWeaJX55nczA1m5PsBDg==", "engines": { "node": ">=16" }, @@ -7075,9 +7085,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.36.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.36.0.tgz", - "integrity": "sha512-3T/PUdKTCnkUmhQU6FFJEHsLwadsRegktX3TNHk+2JJB9HlA8gp1/VXblXVDI93kSnXF2rdPx0GMbHtJIV2LPg==", + "version": "4.37.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.37.0.tgz", + "integrity": "sha512-S/5/0kFftkq27FPNye0XM1e2NsnoD/3FS+pBmbjmmtLT6I+i344KoOf7pvXreaFsDamWeaJX55nczA1m5PsBDg==", "engines": { "node": ">=16" }, diff --git a/packages/project/package.json b/packages/project/package.json index 28b402b53e3..8aa518c4f83 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.21.0", + "eslint": "^9.22.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.3", From ab473393934f4726d2675800479c346a202a0300 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 16 Mar 2025 03:20:17 +0000 Subject: [PATCH 1208/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 98 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 50 insertions(+), 50 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 20fa301b84e..2b894c5e2a0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^9.22.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.3", + "eslint-plugin-jsdoc": "^50.6.6", "esmock": "^2.7.0", "globals": "^16.0.0", "istanbul-lib-coverage": "^3.2.2", @@ -106,21 +106,21 @@ } }, "node_modules/@babel/core": { - "version": "7.26.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.9.tgz", - "integrity": "sha512-lWBYIrF7qK5+GjY5Uy+/hEgp8OJWOD/rpy74GplYRhEauvbHDeFB8t5hPOZxCZ0Oxf4Cc36tK51/l3ymJysrKw==", + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.10.tgz", + "integrity": "sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.26.9", + "@babel/generator": "^7.26.10", "@babel/helper-compilation-targets": "^7.26.5", "@babel/helper-module-transforms": "^7.26.0", - "@babel/helpers": "^7.26.9", - "@babel/parser": "^7.26.9", + "@babel/helpers": "^7.26.10", + "@babel/parser": "^7.26.10", "@babel/template": "^7.26.9", - "@babel/traverse": "^7.26.9", - "@babel/types": "^7.26.9", + "@babel/traverse": "^7.26.10", + "@babel/types": "^7.26.10", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -145,13 +145,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.26.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.9.tgz", - "integrity": "sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==", + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.10.tgz", + "integrity": "sha512-rRHT8siFIXQrAYOYqZQVsAr8vJ+cBNqcVAY6m5V8/4QqzaPl+zDBe6cLEPRDuNOUf3ww8RfJVlOyQMoSI+5Ang==", "dev": true, "dependencies": { - "@babel/parser": "^7.26.9", - "@babel/types": "^7.26.9", + "@babel/parser": "^7.26.10", + "@babel/types": "^7.26.10", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -348,25 +348,25 @@ } }, "node_modules/@babel/helpers": { - "version": "7.26.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.9.tgz", - "integrity": "sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA==", + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.10.tgz", + "integrity": "sha512-UPYc3SauzZ3JGgj87GgZ89JVdC5dj0AoetR5Bw6wj4niittNyFh6+eOGonYvJ1ao6B8lEa3Q3klS7ADZ53bc5g==", "dev": true, "dependencies": { "@babel/template": "^7.26.9", - "@babel/types": "^7.26.9" + "@babel/types": "^7.26.10" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.26.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.9.tgz", - "integrity": "sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==", + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.10.tgz", + "integrity": "sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA==", "dev": true, "dependencies": { - "@babel/types": "^7.26.9" + "@babel/types": "^7.26.10" }, "bin": { "parser": "bin/babel-parser.js" @@ -489,16 +489,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.26.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.9.tgz", - "integrity": "sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==", + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.10.tgz", + "integrity": "sha512-k8NuDrxr0WrPH5Aupqb2LCVURP/S0vBEn5mK6iH+GIYob66U5EtoZvcdudR2jQ4cmTwhEwW1DLB+Yyas9zjF6A==", "dev": true, "dependencies": { "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.26.9", - "@babel/parser": "^7.26.9", + "@babel/generator": "^7.26.10", + "@babel/parser": "^7.26.10", "@babel/template": "^7.26.9", - "@babel/types": "^7.26.9", + "@babel/types": "^7.26.10", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -516,9 +516,9 @@ } }, "node_modules/@babel/types": { - "version": "7.26.9", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.9.tgz", - "integrity": "sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==", + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.10.tgz", + "integrity": "sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.25.9", @@ -543,9 +543,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", - "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz", + "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==", "dev": true, "dependencies": { "eslint-visitor-keys": "^3.4.3" @@ -2224,9 +2224,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001702", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001702.tgz", - "integrity": "sha512-LoPe/D7zioC0REI5W73PeR1e1MLCipRGq/VkovJnd6Df+QVqT+vT33OXCp8QUd7kA7RZrHWxb1B36OQKI/0gOA==", + "version": "1.0.30001705", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001705.tgz", + "integrity": "sha512-S0uyMMiYvA7CxNgomYBwwwPUnWzFD83f3B1ce5jHUfHTH//QL6hHsreI8RVC5606R4ssqravelYO5TU6t8sEyg==", "dev": true, "funding": [ { @@ -2502,9 +2502,9 @@ "dev": true }, "node_modules/ci-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.1.0.tgz", - "integrity": "sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.2.0.tgz", + "integrity": "sha512-cYY9mypksY8NRqgDB1XD1RiJL338v/551niynFTGkZOO2LHuB2OmOYxDIe/ttN9AHwrqdum1360G3ald0W9kCg==", "funding": [ { "type": "github", @@ -3292,9 +3292,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.113", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.113.tgz", - "integrity": "sha512-wjT2O4hX+wdWPJ76gWSkMhcHAV2PTMX+QetUCPYEdCIe+cxmgzzSSiGRCKW8nuh4mwKZlpv0xvoW7OF2X+wmHg==", + "version": "1.5.119", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.119.tgz", + "integrity": "sha512-Ku4NMzUjz3e3Vweh7PhApPrZSS4fyiCIbcIrG9eKrriYVLmbMepETR/v6SU7xPm98QTqMSYiCwfO89QNjXLkbQ==", "dev": true }, "node_modules/emittery": { @@ -3525,9 +3525,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.3.tgz", - "integrity": "sha512-NxbJyt1M5zffPcYZ8Nb53/8nnbIScmiLAMdoe0/FAszwb7lcSiX3iYBTsuF7RV84dZZJC8r3NghomrUXsmWvxQ==", + "version": "50.6.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.6.tgz", + "integrity": "sha512-4jLo9NZqHfyNtiBxAU293eX1xi6oUIBcAxJJL/hHeeNhh26l4l/Apmu0x9SarvSQ/gWNOrnFci4DSPupN4//WA==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", @@ -5783,9 +5783,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.9.tgz", - "integrity": "sha512-SppoicMGpZvbF1l3z4x7No3OlIjP7QJvC9XR7AhZr1kL133KHnKPztkKDc+Ir4aJ/1VhTySrtKhrsycmrMQfvg==", + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.10.tgz", + "integrity": "sha512-vSJJTG+t/dIKAUhUDw/dLdZ9s//5OxcHqLaDWWrW4Cdq7o6tdLIczUkMXt2MBNmk6sJRZBZRXVixs7URY1CmIg==", "dev": true, "funding": [ { diff --git a/packages/project/package.json b/packages/project/package.json index 8aa518c4f83..f0afab4fa92 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^9.22.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.3", + "eslint-plugin-jsdoc": "^50.6.6", "esmock": "^2.7.0", "globals": "^16.0.0", "istanbul-lib-coverage": "^3.2.2", From 9c3953e85f3993efa507bb9d70c2582268ec8d57 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Mar 2025 05:00:57 +0000 Subject: [PATCH 1209/1272] [ui5-project]Bump actions/setup-node from 4.2.0 to 4.3.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.2.0 to 4.3.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4.2.0...v4.3.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index f21756096bc..1dbde5000ba 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Node.js LTS 20.11.0 - uses: actions/setup-node@v4.2.0 + uses: actions/setup-node@v4.3.0 with: node-version: 20.11.0 From eb6d02a8179ebb0f1817f67b140cf8db5eff0d80 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 23 Mar 2025 03:20:17 +0000 Subject: [PATCH 1210/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 98 +++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 52 insertions(+), 52 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2b894c5e2a0..2269f992859 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,10 +39,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.22.0", + "eslint": "^9.23.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.6", + "eslint-plugin-jsdoc": "^50.6.8", "esmock": "^2.7.0", "globals": "^16.0.0", "istanbul-lib-coverage": "^3.2.2", @@ -54,7 +54,7 @@ "nyc": "^17.1.0", "open-cli": "^8.0.0", "rimraf": "^6.0.1", - "sinon": "^19.0.2", + "sinon": "^19.0.4", "tap-xunit": "^2.4.1" }, "engines": { @@ -618,9 +618,9 @@ } }, "node_modules/@eslint/config-helpers": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.1.0.tgz", - "integrity": "sha512-kLrdPDJE1ckPo94kmPPf9Hfd0DU0Jw6oKYrhe+pwSC0iTUInmTa+w6fw8sGgcfkFJGNdWOUeOaDM4quW4a7OkA==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.0.tgz", + "integrity": "sha512-yJLLmLexii32mGrhW29qvU3QBVTu0GUmEf/J4XsBtVhp4JkIUFN/BjWqTF63yRvGApIDpZm5fa97LtYtINmfeQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -639,9 +639,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.0.tgz", - "integrity": "sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -696,9 +696,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.22.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.22.0.tgz", - "integrity": "sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==", + "version": "9.23.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.23.0.tgz", + "integrity": "sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1204,9 +1204,9 @@ } }, "node_modules/@pkgr/core": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", - "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.2.tgz", + "integrity": "sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ==", "dev": true, "engines": { "node": "^12.20.0 || ^14.18.0 || >=16.0.0" @@ -2224,9 +2224,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001705", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001705.tgz", - "integrity": "sha512-S0uyMMiYvA7CxNgomYBwwwPUnWzFD83f3B1ce5jHUfHTH//QL6hHsreI8RVC5606R4ssqravelYO5TU6t8sEyg==", + "version": "1.0.30001706", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001706.tgz", + "integrity": "sha512-3ZczoTApMAZwPKYWmwVbQMFpXBDds3/0VciVoUwPUbldlYyVLmRVuRs/PcUZtHpbLRpzzDvrvnFuREsGt6lUug==", "dev": true, "funding": [ { @@ -2772,9 +2772,9 @@ "dev": true }, "node_modules/consola": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.4.0.tgz", - "integrity": "sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.4.2.tgz", + "integrity": "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==", "dev": true, "engines": { "node": "^14.18.0 || >=16.10.0" @@ -3292,9 +3292,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.119", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.119.tgz", - "integrity": "sha512-Ku4NMzUjz3e3Vweh7PhApPrZSS4fyiCIbcIrG9eKrriYVLmbMepETR/v6SU7xPm98QTqMSYiCwfO89QNjXLkbQ==", + "version": "1.5.123", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.123.tgz", + "integrity": "sha512-refir3NlutEZqlKaBLK0tzlVLe5P2wDKS7UQt/3SpibizgsRAPOsqQC3ffw1nlv3ze5gjRQZYHoPymgVZkplFA==", "dev": true }, "node_modules/emittery": { @@ -3402,18 +3402,18 @@ } }, "node_modules/eslint": { - "version": "9.22.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.22.0.tgz", - "integrity": "sha512-9V/QURhsRN40xuHXWjV64yvrzMjcz7ZyNoF2jJFmy9j/SLk0u1OLSZgXi28MrXjymnjEGSR80WCdab3RGMDveQ==", + "version": "9.23.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.23.0.tgz", + "integrity": "sha512-jV7AbNoFPAY1EkFYpLq5bslU9NLNO8xnEeQXwErNibVryjk67wHVmddTBilc5srIttJDBrB0eMHKZBFbSIABCw==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.19.2", - "@eslint/config-helpers": "^0.1.0", + "@eslint/config-helpers": "^0.2.0", "@eslint/core": "^0.12.0", - "@eslint/eslintrc": "^3.3.0", - "@eslint/js": "9.22.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.23.0", "@eslint/plugin-kit": "^0.2.7", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -3525,9 +3525,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.6", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.6.tgz", - "integrity": "sha512-4jLo9NZqHfyNtiBxAU293eX1xi6oUIBcAxJJL/hHeeNhh26l4l/Apmu0x9SarvSQ/gWNOrnFci4DSPupN4//WA==", + "version": "50.6.8", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.8.tgz", + "integrity": "sha512-PPZVqhoXaalMQwDGzcQrJtPSPIPOYsSMtvkjYAdsIazOW20yhYtVX4+jLL+XznD4zYTXyZbPWPRKkNev4D4lyw==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", @@ -4604,9 +4604,9 @@ } }, "node_modules/index-to-position": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/index-to-position/-/index-to-position-0.1.2.tgz", - "integrity": "sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/index-to-position/-/index-to-position-1.0.0.tgz", + "integrity": "sha512-sCO7uaLVhRJ25vz1o8s9IFM3nVS4DkuQnyjMwiQPKvQuBYBDmb8H7zx8ki7nVh4HJQOdVWebyvLE0qt+clruxA==", "engines": { "node": ">=18" }, @@ -5783,9 +5783,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.10.tgz", - "integrity": "sha512-vSJJTG+t/dIKAUhUDw/dLdZ9s//5OxcHqLaDWWrW4Cdq7o6tdLIczUkMXt2MBNmk6sJRZBZRXVixs7URY1CmIg==", + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", "dev": true, "funding": [ { @@ -7069,13 +7069,13 @@ } }, "node_modules/read-pkg/node_modules/parse-json": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.1.0.tgz", - "integrity": "sha512-rum1bPifK5SSar35Z6EKZuYPJx85pkNaFrxBK3mwdfSJ1/WKbYrjoW/zTPSjRRamfmVX1ACBIdFAO0VRErW/EA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.2.0.tgz", + "integrity": "sha512-eONBZy4hm2AgxjNFd8a4nyDJnzUAH0g34xSQAwWEVGCjdZ4ZL7dKZBfq267GWP/JaS9zW62Xs2FeAdDvpHHJGQ==", "dependencies": { - "@babel/code-frame": "^7.22.13", - "index-to-position": "^0.1.2", - "type-fest": "^4.7.1" + "@babel/code-frame": "^7.26.2", + "index-to-position": "^1.0.0", + "type-fest": "^4.37.0" }, "engines": { "node": ">=18" @@ -7533,13 +7533,13 @@ } }, "node_modules/sinon": { - "version": "19.0.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.2.tgz", - "integrity": "sha512-euuToqM+PjO4UgXeLETsfQiuoyPXlqFezr6YZDFwHR3t4qaX0fZUe1MfPMznTL5f8BWrVS89KduLdMUsxFCO6g==", + "version": "19.0.4", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.4.tgz", + "integrity": "sha512-myidFob7fjmYHJb+CHNLtAYScxn3sngGq4t75L2rCGGpE/k4OQVkN3KE5FsN+XkO2+fcDZ65PGvq3KHrlLAm7g==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1", - "@sinonjs/fake-timers": "^13.0.2", + "@sinonjs/fake-timers": "^13.0.5", "@sinonjs/samsam": "^8.0.1", "diff": "^7.0.0", "nise": "^6.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index f0afab4fa92..386279967f3 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,10 +158,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.22.0", + "eslint": "^9.23.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.6", + "eslint-plugin-jsdoc": "^50.6.8", "esmock": "^2.7.0", "globals": "^16.0.0", "istanbul-lib-coverage": "^3.2.2", @@ -173,7 +173,7 @@ "nyc": "^17.1.0", "open-cli": "^8.0.0", "rimraf": "^6.0.1", - "sinon": "^19.0.2", + "sinon": "^19.0.4", "tap-xunit": "^2.4.1" } } From 6bb9b740fd68ebe60bca8b20b783d0a3df30b7e1 Mon Sep 17 00:00:00 2001 From: SAP Open Source Program Office Bot <81750448+sap-ospo-bot@users.noreply.github.com> Date: Tue, 25 Mar 2025 07:52:52 +0100 Subject: [PATCH 1211/1272] [ui5-project][INTERNAL] REUSE: Migration from dep5 to TOML file (#794) The PR is fixing and updating the Reuse compliance to match the recent Reuse API Specification - we remove the dep5 file and migrate to the toml file. For more details please read https://reuse.software/spec-3.3/. Co-authored-by: ajinkyapatil8190 --- packages/project/.reuse/dep5 | 29 ----------------------------- packages/project/REUSE.toml | 11 +++++++++++ 2 files changed, 11 insertions(+), 29 deletions(-) delete mode 100644 packages/project/.reuse/dep5 create mode 100644 packages/project/REUSE.toml diff --git a/packages/project/.reuse/dep5 b/packages/project/.reuse/dep5 deleted file mode 100644 index 8fb1071266f..00000000000 --- a/packages/project/.reuse/dep5 +++ /dev/null @@ -1,29 +0,0 @@ -Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: ui5-project -Upstream-Contact: SAP OpenUI5 -Source: https://github.com/SAP/ui5-project -Disclaimer: The code in this project may include calls to APIs (“API Calls”) of - SAP or third-party products or services developed outside of this project - (“External Products”). - “APIs” means application programming interfaces, as well as their respective - specifications and implementing code that allows software to communicate with - other software. - API Calls to External Products are not licensed under the open source license - that governs this project. The use of such API Calls and related External - Products are subject to applicable additional agreements with the relevant - provider of the External Products. In no event shall the open source license - that governs this project grant any rights in or to any External Products,or - alter, expand or supersede any terms of the applicable additional agreements. - If you have a valid license agreement with SAP for the use of a particular SAP - External Product, then you may make use of any API Calls included in this - project’s code for that SAP External Product, subject to the terms of such - license agreement. If you do not have a valid license agreement for the use of - a particular SAP External Product, then you may only make use of any API Calls - in this project for that SAP External Product for your internal, non-productive - and non-commercial test and evaluation of such API Calls. Nothing herein grants - you any rights to use or access any SAP External Product, or provide any third - parties the right to use of access any SAP External Product, through API Calls. - -Files: * -Copyright: 2018-2024 SAP SE or an SAP affiliate company and UI5 Tooling contributors -License: Apache-2.0 diff --git a/packages/project/REUSE.toml b/packages/project/REUSE.toml new file mode 100644 index 00000000000..5b6ceff6f9a --- /dev/null +++ b/packages/project/REUSE.toml @@ -0,0 +1,11 @@ +version = 1 +SPDX-PackageName = "ui5-project" +SPDX-PackageSupplier = "SAP OpenUI5 " +SPDX-PackageDownloadLocation = "https://github.com/SAP/ui5-project" +SPDX-PackageComment = "The code in this project may include calls to APIs (“API Calls”) of\n SAP or third-party products or services developed outside of this project\n (“External Products”).\n “APIs” means application programming interfaces, as well as their respective\n specifications and implementing code that allows software to communicate with\n other software.\n API Calls to External Products are not licensed under the open source license\n that governs this project. The use of such API Calls and related External\n Products are subject to applicable additional agreements with the relevant\n provider of the External Products. In no event shall the open source license\n that governs this project grant any rights in or to any External Products,or\n alter, expand or supersede any terms of the applicable additional agreements.\n If you have a valid license agreement with SAP for the use of a particular SAP\n External Product, then you may make use of any API Calls included in this\n project’s code for that SAP External Product, subject to the terms of such\n license agreement. If you do not have a valid license agreement for the use of\n a particular SAP External Product, then you may only make use of any API Calls\n in this project for that SAP External Product for your internal, non-productive\n and non-commercial test and evaluation of such API Calls. Nothing herein grants\n you any rights to use or access any SAP External Product, or provide any third\n parties the right to use of access any SAP External Product, through API Calls." + +[[annotations]] +path = "**" +precedence = "aggregate" +SPDX-FileCopyrightText = "2018-2024 SAP SE or an SAP affiliate company and UI5 Tooling contributors" +SPDX-License-Identifier = "Apache-2.0" From 2f9f92cb13ff469995cf7371e2f220ff9806a034 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 30 Mar 2025 02:20:11 +0000 Subject: [PATCH 1212/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 146 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 75 insertions(+), 75 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2269f992859..12f699b4ead 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^9.23.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.8", + "eslint-plugin-jsdoc": "^50.6.9", "esmock": "^2.7.0", "globals": "^16.0.0", "istanbul-lib-coverage": "^3.2.2", @@ -54,7 +54,7 @@ "nyc": "^17.1.0", "open-cli": "^8.0.0", "rimraf": "^6.0.1", - "sinon": "^19.0.4", + "sinon": "^19.0.5", "tap-xunit": "^2.4.1" }, "engines": { @@ -145,13 +145,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.26.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.10.tgz", - "integrity": "sha512-rRHT8siFIXQrAYOYqZQVsAr8vJ+cBNqcVAY6m5V8/4QqzaPl+zDBe6cLEPRDuNOUf3ww8RfJVlOyQMoSI+5Ang==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", + "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", "dev": true, "dependencies": { - "@babel/parser": "^7.26.10", - "@babel/types": "^7.26.10", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -173,12 +173,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz", - "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.0.tgz", + "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.26.5", + "@babel/compat-data": "^7.26.8", "@babel/helper-validator-option": "^7.25.9", "browserslist": "^4.24.0", "lru-cache": "^5.1.1", @@ -198,9 +198,9 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.26.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.26.9.tgz", - "integrity": "sha512-ubbUqCofvxPRurw5L8WTsCLSkQiVpov4Qx0WMA+jUN+nXBK8ADPlJO1grkFw5CWKC5+sZSOfuGMdX1aI1iT9Sg==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.0.tgz", + "integrity": "sha512-vSGCvMecvFCd/BdpGlhpXYNhhC4ccxyvQWpbGL4CWbvfEoLFWUZuSuf7s9Aw70flgQF+6vptvgK2IfOnKlRmBg==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", @@ -208,7 +208,7 @@ "@babel/helper-optimise-call-expression": "^7.25.9", "@babel/helper-replace-supers": "^7.26.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", - "@babel/traverse": "^7.26.9", + "@babel/traverse": "^7.27.0", "semver": "^6.3.1" }, "engines": { @@ -348,25 +348,25 @@ } }, "node_modules/@babel/helpers": { - "version": "7.26.10", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.10.tgz", - "integrity": "sha512-UPYc3SauzZ3JGgj87GgZ89JVdC5dj0AoetR5Bw6wj4niittNyFh6+eOGonYvJ1ao6B8lEa3Q3klS7ADZ53bc5g==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", + "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", "dev": true, "dependencies": { - "@babel/template": "^7.26.9", - "@babel/types": "^7.26.10" + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.26.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.10.tgz", - "integrity": "sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", + "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", "dev": true, "dependencies": { - "@babel/types": "^7.26.10" + "@babel/types": "^7.27.0" }, "bin": { "parser": "bin/babel-parser.js" @@ -437,13 +437,13 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.26.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.8.tgz", - "integrity": "sha512-bME5J9AC8ChwA7aEPJ6zym3w7aObZULHhbNLU0bKUhKsAkylkzUdq+0kdymh9rzi8nlNFl2bmldFBCKNJBUpuw==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.27.0.tgz", + "integrity": "sha512-fRGGjO2UEGPjvEcyAZXRXAS8AfdaQoq7HnxAbJoAoW10B9xOKesmmndJv+Sym2a+9FHWZ9KbyyLCe9s0Sn5jtg==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.25.9", - "@babel/helper-create-class-features-plugin": "^7.25.9", + "@babel/helper-create-class-features-plugin": "^7.27.0", "@babel/helper-plugin-utils": "^7.26.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", "@babel/plugin-syntax-typescript": "^7.25.9" @@ -456,16 +456,16 @@ } }, "node_modules/@babel/preset-typescript": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.26.0.tgz", - "integrity": "sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.27.0.tgz", + "integrity": "sha512-vxaPFfJtHhgeOVXRKuHpHPAOgymmy8V8I65T1q53R7GCZlefKeCaTyDs3zOPHTTbmquvNlQYC5klEvWsBAtrBQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-plugin-utils": "^7.26.5", "@babel/helper-validator-option": "^7.25.9", "@babel/plugin-syntax-jsx": "^7.25.9", - "@babel/plugin-transform-modules-commonjs": "^7.25.9", - "@babel/plugin-transform-typescript": "^7.25.9" + "@babel/plugin-transform-modules-commonjs": "^7.26.3", + "@babel/plugin-transform-typescript": "^7.27.0" }, "engines": { "node": ">=6.9.0" @@ -475,30 +475,30 @@ } }, "node_modules/@babel/template": { - "version": "7.26.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz", - "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.26.2", - "@babel/parser": "^7.26.9", - "@babel/types": "^7.26.9" + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.26.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.10.tgz", - "integrity": "sha512-k8NuDrxr0WrPH5Aupqb2LCVURP/S0vBEn5mK6iH+GIYob66U5EtoZvcdudR2jQ4cmTwhEwW1DLB+Yyas9zjF6A==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", + "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.26.10", - "@babel/parser": "^7.26.10", - "@babel/template": "^7.26.9", - "@babel/types": "^7.26.10", + "@babel/generator": "^7.27.0", + "@babel/parser": "^7.27.0", + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -516,9 +516,9 @@ } }, "node_modules/@babel/types": { - "version": "7.26.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.10.tgz", - "integrity": "sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", + "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.25.9", @@ -1387,9 +1387,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", "dev": true }, "node_modules/@types/json-schema": { @@ -2224,9 +2224,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001706", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001706.tgz", - "integrity": "sha512-3ZczoTApMAZwPKYWmwVbQMFpXBDds3/0VciVoUwPUbldlYyVLmRVuRs/PcUZtHpbLRpzzDvrvnFuREsGt6lUug==", + "version": "1.0.30001707", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001707.tgz", + "integrity": "sha512-3qtRjw/HQSMlDWf+X79N206fepf4SOOU6SQLMaq/0KkZLmSjPxAkBOQQ+FxbHKfHmYLZFfdWsO3KA90ceHPSnw==", "dev": true, "funding": [ { @@ -3292,9 +3292,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.123", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.123.tgz", - "integrity": "sha512-refir3NlutEZqlKaBLK0tzlVLe5P2wDKS7UQt/3SpibizgsRAPOsqQC3ffw1nlv3ze5gjRQZYHoPymgVZkplFA==", + "version": "1.5.128", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.128.tgz", + "integrity": "sha512-bo1A4HH/NS522Ws0QNFIzyPcyUUNV/yyy70Ho1xqfGYzPUme2F/xr4tlEOuM6/A538U1vDA7a4XfCd1CKRegKQ==", "dev": true }, "node_modules/emittery": { @@ -3525,9 +3525,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.8", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.8.tgz", - "integrity": "sha512-PPZVqhoXaalMQwDGzcQrJtPSPIPOYsSMtvkjYAdsIazOW20yhYtVX4+jLL+XznD4zYTXyZbPWPRKkNev4D4lyw==", + "version": "50.6.9", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.9.tgz", + "integrity": "sha512-7/nHu3FWD4QRG8tCVqcv+BfFtctUtEDWc29oeDXB4bwmDM2/r1ndl14AG/2DUntdqH7qmpvdemJKwb3R97/QEw==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", @@ -7040,9 +7040,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.37.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.37.0.tgz", - "integrity": "sha512-S/5/0kFftkq27FPNye0XM1e2NsnoD/3FS+pBmbjmmtLT6I+i344KoOf7pvXreaFsDamWeaJX55nczA1m5PsBDg==", + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.38.0.tgz", + "integrity": "sha512-2dBz5D5ycHIoliLYLi0Q2V7KRaDlH0uWIvmk7TYlAg5slqwiPv1ezJdZm1QEM0xgk29oYWMCbIG7E6gHpvChlg==", "engines": { "node": ">=16" }, @@ -7085,9 +7085,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.37.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.37.0.tgz", - "integrity": "sha512-S/5/0kFftkq27FPNye0XM1e2NsnoD/3FS+pBmbjmmtLT6I+i344KoOf7pvXreaFsDamWeaJX55nczA1m5PsBDg==", + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.38.0.tgz", + "integrity": "sha512-2dBz5D5ycHIoliLYLi0Q2V7KRaDlH0uWIvmk7TYlAg5slqwiPv1ezJdZm1QEM0xgk29oYWMCbIG7E6gHpvChlg==", "engines": { "node": ">=16" }, @@ -7332,9 +7332,9 @@ } }, "node_modules/rimraf/node_modules/lru-cache": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.2.tgz", - "integrity": "sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz", + "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", "dev": true, "engines": { "node": "20 || >=22" @@ -7533,9 +7533,9 @@ } }, "node_modules/sinon": { - "version": "19.0.4", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.4.tgz", - "integrity": "sha512-myidFob7fjmYHJb+CHNLtAYScxn3sngGq4t75L2rCGGpE/k4OQVkN3KE5FsN+XkO2+fcDZ65PGvq3KHrlLAm7g==", + "version": "19.0.5", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.5.tgz", + "integrity": "sha512-r15s9/s+ub/d4bxNXqIUmwp6imVSdTorIRaxoecYjqTVLZ8RuoXr/4EDGwIBo6Waxn7f2gnURX9zuhAfCwaF6Q==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 386279967f3..b488aa31ea1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^9.23.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.8", + "eslint-plugin-jsdoc": "^50.6.9", "esmock": "^2.7.0", "globals": "^16.0.0", "istanbul-lib-coverage": "^3.2.2", @@ -173,7 +173,7 @@ "nyc": "^17.1.0", "open-cli": "^8.0.0", "rimraf": "^6.0.1", - "sinon": "^19.0.4", + "sinon": "^19.0.5", "tap-xunit": "^2.4.1" } } From 0afb449a93ab7da2d782ca8adccf64f13ee1a752 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Mar 2025 10:53:31 +0000 Subject: [PATCH 1213/1272] [ui5-project][INTERNAL] Bump sinon from 19.0.5 to 20.0.0 Bumps [sinon](https://github.com/sinonjs/sinon) from 19.0.5 to 20.0.0. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md) - [Commits](https://github.com/sinonjs/sinon/compare/v19.0.5...v20.0.0) --- updated-dependencies: - dependency-name: sinon dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- packages/project/package-lock.json | 45 ++++-------------------------- packages/project/package.json | 2 +- 2 files changed, 7 insertions(+), 40 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 12f699b4ead..cebef3506e4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -54,7 +54,7 @@ "nyc": "^17.1.0", "open-cli": "^8.0.0", "rimraf": "^6.0.1", - "sinon": "^19.0.5", + "sinon": "^20.0.0", "tap-xunit": "^2.4.1" }, "engines": { @@ -1330,6 +1330,7 @@ "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", "integrity": "sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1" } @@ -1354,12 +1355,6 @@ "node": ">=4" } }, - "node_modules/@sinonjs/text-encoding": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.3.tgz", - "integrity": "sha512-DE427ROAphMQzU4ENbliGYrBSYPXF+TtLg9S8vzeA+OF4ZKzoDdzfL8sxuMUGS/lgRhM6j1URSk9ghf7Xo1tyA==", - "dev": true - }, "node_modules/@tokenizer/token": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", @@ -5223,12 +5218,6 @@ "node >= 0.2.0" ] }, - "node_modules/just-extend": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-6.2.0.tgz", - "integrity": "sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw==", - "dev": true - }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -5814,19 +5803,6 @@ "node": ">= 0.6" } }, - "node_modules/nise": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/nise/-/nise-6.1.1.tgz", - "integrity": "sha512-aMSAzLVY7LyeM60gvBS423nBmIPP+Wy7St7hsb+8/fc1HmeoHJfLO8CKse4u3BtOZvQLJghYPI2i/1WZrEj5/g==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^3.0.1", - "@sinonjs/fake-timers": "^13.0.1", - "@sinonjs/text-encoding": "^0.7.3", - "just-extend": "^6.2.0", - "path-to-regexp": "^8.1.0" - } - }, "node_modules/node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", @@ -6718,15 +6694,6 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, - "node_modules/path-to-regexp": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.2.0.tgz", - "integrity": "sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==", - "dev": true, - "engines": { - "node": ">=16" - } - }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", @@ -7533,16 +7500,16 @@ } }, "node_modules/sinon": { - "version": "19.0.5", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.5.tgz", - "integrity": "sha512-r15s9/s+ub/d4bxNXqIUmwp6imVSdTorIRaxoecYjqTVLZ8RuoXr/4EDGwIBo6Waxn7f2gnURX9zuhAfCwaF6Q==", + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-20.0.0.tgz", + "integrity": "sha512-+FXOAbdnj94AQIxH0w1v8gzNxkawVvNqE3jUzRLptR71Oykeu2RrQXXl/VQjKay+Qnh73fDt/oDfMo6xMeDQbQ==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1", "@sinonjs/fake-timers": "^13.0.5", "@sinonjs/samsam": "^8.0.1", "diff": "^7.0.0", - "nise": "^6.1.1", "supports-color": "^7.2.0" }, "funding": { diff --git a/packages/project/package.json b/packages/project/package.json index b488aa31ea1..5e441b069d0 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -173,7 +173,7 @@ "nyc": "^17.1.0", "open-cli": "^8.0.0", "rimraf": "^6.0.1", - "sinon": "^19.0.5", + "sinon": "^20.0.0", "tap-xunit": "^2.4.1" } } From 3fa69c360a0710eb763e7f50072af22a78e83a9a Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 6 Apr 2025 02:20:15 +0000 Subject: [PATCH 1214/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 136 +++++++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 80 insertions(+), 58 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index cebef3506e4..7200c24334f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.23.0", + "eslint": "^9.24.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.9", @@ -582,9 +582,9 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.2.tgz", - "integrity": "sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==", + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", + "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", "dev": true, "dependencies": { "@eslint/object-schema": "^2.1.6", @@ -618,9 +618,9 @@ } }, "node_modules/@eslint/config-helpers": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.0.tgz", - "integrity": "sha512-yJLLmLexii32mGrhW29qvU3QBVTu0GUmEf/J4XsBtVhp4JkIUFN/BjWqTF63yRvGApIDpZm5fa97LtYtINmfeQ==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.1.tgz", + "integrity": "sha512-RI17tsD2frtDu/3dmI7QRrD4bedNKPM08ziRYaC5AhkGrzIAJelm9kJU1TznK+apx6V+cqRz8tfpEeG3oIyjxw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -696,9 +696,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.23.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.23.0.tgz", - "integrity": "sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==", + "version": "9.24.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.24.0.tgz", + "integrity": "sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -714,18 +714,30 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.7.tgz", - "integrity": "sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==", + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.8.tgz", + "integrity": "sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==", "dev": true, "dependencies": { - "@eslint/core": "^0.12.0", + "@eslint/core": "^0.13.0", "levn": "^0.4.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, + "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", + "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@humanfs/core": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", @@ -1330,7 +1342,6 @@ "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", "integrity": "sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1" } @@ -2219,9 +2230,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001707", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001707.tgz", - "integrity": "sha512-3qtRjw/HQSMlDWf+X79N206fepf4SOOU6SQLMaq/0KkZLmSjPxAkBOQQ+FxbHKfHmYLZFfdWsO3KA90ceHPSnw==", + "version": "1.0.30001712", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001712.tgz", + "integrity": "sha512-MBqPpGYYdQ7/hfKiet9SCI+nmN5/hp4ZzveOJubl5DTAMa5oggjAuoi0Z4onBpKPFI2ePGnQuQIzF3VxDjDJig==", "dev": true, "funding": [ { @@ -3287,9 +3298,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.128", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.128.tgz", - "integrity": "sha512-bo1A4HH/NS522Ws0QNFIzyPcyUUNV/yyy70Ho1xqfGYzPUme2F/xr4tlEOuM6/A538U1vDA7a4XfCd1CKRegKQ==", + "version": "1.5.132", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.132.tgz", + "integrity": "sha512-QgX9EBvWGmvSRa74zqfnG7+Eno0Ak0vftBll0Pt2/z5b3bEGYL6OUXLgKPtvx73dn3dvwrlyVkjPKRRlhLYTEg==", "dev": true }, "node_modules/emittery": { @@ -3397,18 +3408,18 @@ } }, "node_modules/eslint": { - "version": "9.23.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.23.0.tgz", - "integrity": "sha512-jV7AbNoFPAY1EkFYpLq5bslU9NLNO8xnEeQXwErNibVryjk67wHVmddTBilc5srIttJDBrB0eMHKZBFbSIABCw==", + "version": "9.24.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.24.0.tgz", + "integrity": "sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.19.2", + "@eslint/config-array": "^0.20.0", "@eslint/config-helpers": "^0.2.0", "@eslint/core": "^0.12.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.23.0", + "@eslint/js": "9.24.0", "@eslint/plugin-kit": "^0.2.7", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -3946,6 +3957,19 @@ "reusify": "^1.0.4" } }, + "node_modules/fdir": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", + "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, "node_modules/figures": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz", @@ -5680,31 +5704,16 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/minizlib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz", - "integrity": "sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.2.tgz", + "integrity": "sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA==", "dependencies": { - "minipass": "^7.0.4", - "rimraf": "^5.0.5" + "minipass": "^7.1.2" }, "engines": { "node": ">= 18" } }, - "node_modules/minizlib/node_modules/rimraf": { - "version": "5.0.10", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", - "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", - "dependencies": { - "glob": "^10.3.7" - }, - "bin": { - "rimraf": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -5824,19 +5833,19 @@ } }, "node_modules/node-gyp": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.1.0.tgz", - "integrity": "sha512-/+7TuHKnBpnMvUQnsYEb0JOozDZqarQbfNuSGLXIjhStMT0fbw7IdSqWgopOP5xhRZE+lsbIvAHcekddruPZgQ==", + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.2.0.tgz", + "integrity": "sha512-T0S1zqskVUSxcsSTkAsLc7xCycrRYmtDHadDinzocrThjyQCn5kMlEBSj6H4qDbgsIOSLmmlRIeb0lZXj+UArA==", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", - "glob": "^10.3.10", "graceful-fs": "^4.2.6", "make-fetch-happen": "^14.0.3", "nopt": "^8.0.0", "proc-log": "^5.0.0", "semver": "^7.3.5", "tar": "^7.4.3", + "tinyglobby": "^0.2.12", "which": "^5.0.0" }, "bin": { @@ -6725,7 +6734,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", - "dev": true, "engines": { "node": ">=12" }, @@ -7007,9 +7015,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.38.0.tgz", - "integrity": "sha512-2dBz5D5ycHIoliLYLi0Q2V7KRaDlH0uWIvmk7TYlAg5slqwiPv1ezJdZm1QEM0xgk29oYWMCbIG7E6gHpvChlg==", + "version": "4.39.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.39.1.tgz", + "integrity": "sha512-uW9qzd66uyHYxwyVBYiwS4Oi0qZyUqwjU+Oevr6ZogYiXt99EOYtwvzMSLw1c3lYo2HzJsep/NB23iEVEgjG/w==", "engines": { "node": ">=16" }, @@ -7052,9 +7060,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.38.0.tgz", - "integrity": "sha512-2dBz5D5ycHIoliLYLi0Q2V7KRaDlH0uWIvmk7TYlAg5slqwiPv1ezJdZm1QEM0xgk29oYWMCbIG7E6gHpvChlg==", + "version": "4.39.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.39.1.tgz", + "integrity": "sha512-uW9qzd66uyHYxwyVBYiwS4Oi0qZyUqwjU+Oevr6ZogYiXt99EOYtwvzMSLw1c3lYo2HzJsep/NB23iEVEgjG/w==", "engines": { "node": ">=16" }, @@ -7504,7 +7512,6 @@ "resolved": "https://registry.npmjs.org/sinon/-/sinon-20.0.0.tgz", "integrity": "sha512-+FXOAbdnj94AQIxH0w1v8gzNxkawVvNqE3jUzRLptR71Oykeu2RrQXXl/VQjKay+Qnh73fDt/oDfMo6xMeDQbQ==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1", "@sinonjs/fake-timers": "^13.0.5", @@ -8353,6 +8360,21 @@ "node": ">=4" } }, + "node_modules/tinyglobby": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", + "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", + "dependencies": { + "fdir": "^6.4.3", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 5e441b069d0..9c739f8f7ed 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.23.0", + "eslint": "^9.24.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.9", From ae8a2fb0d1554a25bbd11daca0306d9ce7fd6fe9 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 10 Apr 2025 06:24:24 +0000 Subject: [PATCH 1215/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7200c24334f..28f617985bb 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2230,9 +2230,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001712", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001712.tgz", - "integrity": "sha512-MBqPpGYYdQ7/hfKiet9SCI+nmN5/hp4ZzveOJubl5DTAMa5oggjAuoi0Z4onBpKPFI2ePGnQuQIzF3VxDjDJig==", + "version": "1.0.30001713", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001713.tgz", + "integrity": "sha512-wCIWIg+A4Xr7NfhTuHdX+/FKh3+Op3LBbSp2N5Pfx6T/LhdQy3GTyoTg48BReaW/MyMNZAkTadsBtai3ldWK0Q==", "dev": true, "funding": [ { @@ -3298,9 +3298,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.132", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.132.tgz", - "integrity": "sha512-QgX9EBvWGmvSRa74zqfnG7+Eno0Ak0vftBll0Pt2/z5b3bEGYL6OUXLgKPtvx73dn3dvwrlyVkjPKRRlhLYTEg==", + "version": "1.5.135", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.135.tgz", + "integrity": "sha512-8gXUdEmvb+WCaYUhA0Svr08uSeRjM2w3x5uHOc1QbaEVzJXB8rgm5eptieXzyKoVEtinLvW6MtTcurA65PeS1Q==", "dev": true }, "node_modules/emittery": { @@ -4623,9 +4623,9 @@ } }, "node_modules/index-to-position": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/index-to-position/-/index-to-position-1.0.0.tgz", - "integrity": "sha512-sCO7uaLVhRJ25vz1o8s9IFM3nVS4DkuQnyjMwiQPKvQuBYBDmb8H7zx8ki7nVh4HJQOdVWebyvLE0qt+clruxA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/index-to-position/-/index-to-position-1.1.0.tgz", + "integrity": "sha512-XPdx9Dq4t9Qk1mTMbWONJqU7boCoumEH7fRET37HX5+khDUl3J2W6PdALxhILYlIYx2amlwYcRPp28p0tSiojg==", "engines": { "node": ">=18" }, @@ -7044,13 +7044,13 @@ } }, "node_modules/read-pkg/node_modules/parse-json": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.2.0.tgz", - "integrity": "sha512-eONBZy4hm2AgxjNFd8a4nyDJnzUAH0g34xSQAwWEVGCjdZ4ZL7dKZBfq267GWP/JaS9zW62Xs2FeAdDvpHHJGQ==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.3.0.tgz", + "integrity": "sha512-ybiGyvspI+fAoRQbIPRddCcSTV9/LsJbf0e/S85VLowVGzRmokfneg2kwVW/KU5rOXrPSbF1qAKPMgNTqqROQQ==", "dependencies": { "@babel/code-frame": "^7.26.2", - "index-to-position": "^1.0.0", - "type-fest": "^4.37.0" + "index-to-position": "^1.1.0", + "type-fest": "^4.39.1" }, "engines": { "node": ">=18" From 26778a1bf9d28b0ce370bb89098a96c6caa66712 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 13 Apr 2025 02:20:12 +0000 Subject: [PATCH 1216/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 28f617985bb..149d5caa4bf 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -543,9 +543,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz", - "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.0.tgz", + "integrity": "sha512-WhCn7Z7TauhBtmzhvKpoQs0Wwb/kBcy4CwpuI0/eEIr2Lx2auxmulAzLr91wVZJaz47iUZdkXOK7WlAfxGKCnA==", "dev": true, "dependencies": { "eslint-visitor-keys": "^3.4.3" @@ -1269,9 +1269,9 @@ } }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.4.0.tgz", - "integrity": "sha512-o09cLSIq9EKyRXwryWDOJagkml9XgQCoCSRjHOnHLnvsivaW7Qznzz6yjfV7PHJHhIvyp8OH7OX8w0Dc5bQK7A==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.4.1.tgz", + "integrity": "sha512-7MJXQhIm7dWF9zo7rRtMYh8d2gSnc3+JddeQOTIg6gUN7FjcuckZ9EwGq+ReeQtbbl3Tbf5YqRrWxA1DMfIn+w==", "engines": { "node": "^18.17.0 || >=20.5.0" } @@ -1617,9 +1617,9 @@ "dev": true }, "node_modules/abbrev": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-3.0.0.tgz", - "integrity": "sha512-+/kfrslGQ7TNV2ecmQwMJj/B65g5KVq1/L3SGVZ3tCYGqlzFuFCGBZJtMP99wH3NpEUyAjn0zPdPUg0D+DwrOA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-3.0.1.tgz", + "integrity": "sha512-AO2ac6pjRB3SJmGJo+v5/aK6Omggp6fsLrs6wN9bd35ulu4cCwaAU9+7ZhXjeqHVkaHThLuzH0nZr0YpCDhygg==", "engines": { "node": "^18.17.0 || >=20.5.0" } @@ -3298,9 +3298,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.135", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.135.tgz", - "integrity": "sha512-8gXUdEmvb+WCaYUhA0Svr08uSeRjM2w3x5uHOc1QbaEVzJXB8rgm5eptieXzyKoVEtinLvW6MtTcurA65PeS1Q==", + "version": "1.5.136", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.136.tgz", + "integrity": "sha512-kL4+wUTD7RSA5FHx5YwWtjDnEEkIIikFgWHR4P6fqjw1PPLlqYkxeOb++wAauAssat0YClCy8Y3C5SxgSkjibQ==", "dev": true }, "node_modules/emittery": { From fda96cf6c01c0502d688dbf0a4d42e1b13153a84 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 20 Apr 2025 02:20:14 +0000 Subject: [PATCH 1217/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 96 +++++++++++++----------------- packages/project/package.json | 2 +- 2 files changed, 43 insertions(+), 55 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 149d5caa4bf..029df025d62 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.24.0", + "eslint": "^9.25.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.9", @@ -543,9 +543,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.0.tgz", - "integrity": "sha512-WhCn7Z7TauhBtmzhvKpoQs0Wwb/kBcy4CwpuI0/eEIr2Lx2auxmulAzLr91wVZJaz47iUZdkXOK7WlAfxGKCnA==", + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.1.tgz", + "integrity": "sha512-KTsJMmobmbrFLe3LDh0PC2FXpcSYJt/MLjlkh/9LEnmKYLSYmT/0EW9JWANjeoemiuZrmogti0tW5Ch+qNUYDw==", "dev": true, "dependencies": { "eslint-visitor-keys": "^3.4.3" @@ -627,9 +627,9 @@ } }, "node_modules/@eslint/core": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", - "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==", + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", + "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.15" @@ -696,9 +696,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.24.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.24.0.tgz", - "integrity": "sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==", + "version": "9.25.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.25.0.tgz", + "integrity": "sha512-iWhsUS8Wgxz9AXNfvfOPFSW4VfMXdVhp1hjkZVhXCrpgh/aLcc45rX6MPu+tIVUWDw0HfNwth7O28M1xDxNf9w==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -726,18 +726,6 @@ "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", - "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, "node_modules/@humanfs/core": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", @@ -2230,9 +2218,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001713", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001713.tgz", - "integrity": "sha512-wCIWIg+A4Xr7NfhTuHdX+/FKh3+Op3LBbSp2N5Pfx6T/LhdQy3GTyoTg48BReaW/MyMNZAkTadsBtai3ldWK0Q==", + "version": "1.0.30001715", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001715.tgz", + "integrity": "sha512-7ptkFGMm2OAOgvZpwgA4yjQ5SQbrNVGdRjzH0pBdy1Fasvcr+KAeECmbCAECzTuDuoX0FCY8KzUxjf9+9kfZEw==", "dev": true, "funding": [ { @@ -3298,9 +3286,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.136", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.136.tgz", - "integrity": "sha512-kL4+wUTD7RSA5FHx5YwWtjDnEEkIIikFgWHR4P6fqjw1PPLlqYkxeOb++wAauAssat0YClCy8Y3C5SxgSkjibQ==", + "version": "1.5.139", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.139.tgz", + "integrity": "sha512-GGnRYOTdN5LYpwbIr0rwP/ZHOQSvAF6TG0LSzp28uCBb9JiXHJGmaaKw29qjNJc5bGnnp6kXJqRnGMQoELwi5w==", "dev": true }, "node_modules/emittery": { @@ -3408,19 +3396,19 @@ } }, "node_modules/eslint": { - "version": "9.24.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.24.0.tgz", - "integrity": "sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==", + "version": "9.25.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.25.0.tgz", + "integrity": "sha512-MsBdObhM4cEwkzCiraDv7A6txFXEqtNXOb877TsSp2FCkBNl8JfVQrmiuDqC1IkejT6JLPzYBXx/xAiYhyzgGA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.20.0", - "@eslint/config-helpers": "^0.2.0", - "@eslint/core": "^0.12.0", + "@eslint/config-helpers": "^0.2.1", + "@eslint/core": "^0.13.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.24.0", - "@eslint/plugin-kit": "^0.2.7", + "@eslint/js": "9.25.0", + "@eslint/plugin-kit": "^0.2.8", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.2", @@ -3958,9 +3946,9 @@ } }, "node_modules/fdir": { - "version": "6.4.3", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", - "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", + "version": "6.4.4", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.4.tgz", + "integrity": "sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==", "peerDependencies": { "picomatch": "^3 || ^4" }, @@ -4454,9 +4442,9 @@ } }, "node_modules/hosted-git-info": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.0.2.tgz", - "integrity": "sha512-sYKnA7eGln5ov8T8gnYlkSOxFJvywzEx9BueN6xo/GKO8PGiI6uK6xx+DIGe45T3bdVjLAQDQW1aicT8z8JwQg==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-8.1.0.tgz", + "integrity": "sha512-Rw/B2DNQaPBICNXEm8balFz9a6WpZrkCGpcWFpy7nCj+NyhSdqXipmfvtmWt9xGfp0wZnBxB+iVpLmQMYt47Tw==", "dependencies": { "lru-cache": "^10.0.1" }, @@ -6322,9 +6310,9 @@ } }, "node_modules/open": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-10.1.0.tgz", - "integrity": "sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==", + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/open/-/open-10.1.1.tgz", + "integrity": "sha512-zy1wx4+P3PfhXSEPJNtZmJXfhkkIaxU1VauWIrDZw1O7uJRDRJtKr9n3Ic4NgbA16KyOxOXO2ng9gYwCdXuSXA==", "dev": true, "dependencies": { "default-browser": "^5.2.1", @@ -7015,9 +7003,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.39.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.39.1.tgz", - "integrity": "sha512-uW9qzd66uyHYxwyVBYiwS4Oi0qZyUqwjU+Oevr6ZogYiXt99EOYtwvzMSLw1c3lYo2HzJsep/NB23iEVEgjG/w==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.0.tgz", + "integrity": "sha512-ABHZ2/tS2JkvH1PEjxFDTUWC8dB5OsIGZP4IFLhR293GqT5Y5qB1WwL2kMPYhQW9DVgVD8Hd7I8gjwPIf5GFkw==", "engines": { "node": ">=16" }, @@ -7060,9 +7048,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.39.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.39.1.tgz", - "integrity": "sha512-uW9qzd66uyHYxwyVBYiwS4Oi0qZyUqwjU+Oevr6ZogYiXt99EOYtwvzMSLw1c3lYo2HzJsep/NB23iEVEgjG/w==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.0.tgz", + "integrity": "sha512-ABHZ2/tS2JkvH1PEjxFDTUWC8dB5OsIGZP4IFLhR293GqT5Y5qB1WwL2kMPYhQW9DVgVD8Hd7I8gjwPIf5GFkw==", "engines": { "node": ">=16" }, @@ -8361,11 +8349,11 @@ } }, "node_modules/tinyglobby": { - "version": "0.2.12", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", - "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.13.tgz", + "integrity": "sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==", "dependencies": { - "fdir": "^6.4.3", + "fdir": "^6.4.4", "picomatch": "^4.0.2" }, "engines": { diff --git a/packages/project/package.json b/packages/project/package.json index 9c739f8f7ed..eb8f34b06ec 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.24.0", + "eslint": "^9.25.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.9", From e90c2616dad5f92b82b429189a29ea690bbbbfad Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 23 Apr 2025 11:29:47 +0200 Subject: [PATCH 1218/1272] [ui5-project][INTERNAL] CI: Use ubuntu-24.04 --- packages/project/.github/workflows/github-ci.yml | 2 +- packages/project/azure-pipelines.yml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 1dbde5000ba..62cb0e865b2 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -11,7 +11,7 @@ on: jobs: test: name: General checks, tests and coverage reporting - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index 605cbeff9f7..bb5f97c591b 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -12,13 +12,13 @@ variables: strategy: matrix: linux_node_lts_20_min_version: - imageName: 'ubuntu-22.04' + imageName: 'ubuntu-24.04' node_version: 20.11.0 linux_node_22_min_version: - imageName: 'ubuntu-22.04' + imageName: 'ubuntu-24.04' node_version: 22.1.0 linux_node_lts_20: - imageName: 'ubuntu-22.04' + imageName: 'ubuntu-24.04' node_version: 20.x mac_node_lts_20: imageName: 'macos-13' @@ -27,7 +27,7 @@ strategy: imageName: 'windows-2022' node_version: 20.x linux_node_22: - imageName: 'ubuntu-22.04' + imageName: 'ubuntu-24.04' node_version: 22.x mac_node_22: imageName: 'macos-13' From 442b9fffae30b0cd04dc1a33a3ad588885afce7f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 22 Apr 2025 11:40:39 +0200 Subject: [PATCH 1219/1272] [ui5-project][INTERNAL] Update copyright year to 2025 JIRA: CPOUI5FOUNDATION-1045 --- packages/project/LICENSE.txt | 2 +- packages/project/REUSE.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/LICENSE.txt b/packages/project/LICENSE.txt index f53be831425..210caa298f4 100644 --- a/packages/project/LICENSE.txt +++ b/packages/project/LICENSE.txt @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2018-2024 SAP SE or an SAP affiliate company and UI5 Tooling contributors + Copyright 2025 SAP SE or an SAP affiliate company and UI5 Tooling contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/packages/project/REUSE.toml b/packages/project/REUSE.toml index 5b6ceff6f9a..76e07209596 100644 --- a/packages/project/REUSE.toml +++ b/packages/project/REUSE.toml @@ -7,5 +7,5 @@ SPDX-PackageComment = "The code in this project may include calls to APIs (“AP [[annotations]] path = "**" precedence = "aggregate" -SPDX-FileCopyrightText = "2018-2024 SAP SE or an SAP affiliate company and UI5 Tooling contributors" +SPDX-FileCopyrightText = "2025 SAP SE or an SAP affiliate company and UI5 Tooling contributors" SPDX-License-Identifier = "Apache-2.0" From 6bbcbd18f4f826169ccb7585fa3f2195eba7245e Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 22 Apr 2025 11:40:39 +0200 Subject: [PATCH 1220/1272] [ui5-project][INTERNAL] Fix LICENSE.txt appendix --- packages/project/LICENSE.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/LICENSE.txt b/packages/project/LICENSE.txt index 210caa298f4..261eeb9e9f8 100644 --- a/packages/project/LICENSE.txt +++ b/packages/project/LICENSE.txt @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2025 SAP SE or an SAP affiliate company and UI5 Tooling contributors + Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. From a69b6bfbef932494187681631f049df56e78cc57 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 27 Apr 2025 02:20:12 +0000 Subject: [PATCH 1221/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 153 ++++++++++------------------- packages/project/package.json | 4 +- 2 files changed, 56 insertions(+), 101 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 029df025d62..5ee6849e0e4 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,10 +39,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.25.0", + "eslint": "^9.25.1", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.9", + "eslint-plugin-jsdoc": "^50.6.11", "esmock": "^2.7.0", "globals": "^16.0.0", "istanbul-lib-coverage": "^3.2.2", @@ -696,9 +696,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.25.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.25.0.tgz", - "integrity": "sha512-iWhsUS8Wgxz9AXNfvfOPFSW4VfMXdVhp1hjkZVhXCrpgh/aLcc45rX6MPu+tIVUWDw0HfNwth7O28M1xDxNf9w==", + "version": "9.25.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.25.1.tgz", + "integrity": "sha512-dEIwmjntEx8u3Uvv+kr3PDeeArL8Hw07H9kyYxCjnM9pBjfEhk6uLXSchxxzgiwtRhhzVzqmUSDFBOi1TuZ7qg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1165,9 +1165,9 @@ } }, "node_modules/@npmcli/redact": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.1.1.tgz", - "integrity": "sha512-3Hc2KGIkrvJWJqTbvueXzBeZlmvoOxc2jyX00yzr3+sNFquJg0N8hH4SAPLPVrkWIRQICVpVgjrss971awXVnA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.2.0.tgz", + "integrity": "sha512-NyJXHoZwJE0iUsCDTclXf1bWHJTsshtnp5xUN6F2vY+OLJv6d2cNc4Do6fKNkmPToB0GzoffxRh405ibTwG+Og==", "engines": { "node": "^18.17.0 || >=20.5.0" } @@ -1203,18 +1203,6 @@ "node": ">=14" } }, - "node_modules/@pkgr/core": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.2.tgz", - "integrity": "sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" - } - }, "node_modules/@rollup/pluginutils": { "version": "5.1.4", "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", @@ -1281,11 +1269,11 @@ } }, "node_modules/@sigstore/tuf": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-3.1.0.tgz", - "integrity": "sha512-suVMQEA+sKdOz5hwP9qNcEjX6B45R+hFFr4LAWzbRc5O+U2IInwvay/bpG5a4s+qR35P/JK/PiKiRGjfuLy1IA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-3.1.1.tgz", + "integrity": "sha512-eFFvlcBIoGwVkkwmTi/vEQFSva3xs5Ot3WmBcjgjVdiaoelBLQaQ/ZBfhlG0MnG0cmTYScPpk7eDdGDWUcFUmg==", "dependencies": { - "@sigstore/protobuf-specs": "^0.4.0", + "@sigstore/protobuf-specs": "^0.4.1", "tuf-js": "^3.0.1" }, "engines": { @@ -1293,13 +1281,13 @@ } }, "node_modules/@sigstore/verify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-2.1.0.tgz", - "integrity": "sha512-kAAM06ca4CzhvjIZdONAL9+MLppW3K48wOFy1TbuaWFW/OMfl8JuTgW0Bm02JB1WJGT/ET2eqav0KTEKmxqkIA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-2.1.1.tgz", + "integrity": "sha512-hVJD77oT67aowHxwT4+M6PGOp+E2LtLdTK3+FC0lBO9T7sYwItDMXZ7Z07IDCvR1M717a4axbIWckrW67KMP/w==", "dependencies": { "@sigstore/bundle": "^3.1.0", "@sigstore/core": "^2.0.0", - "@sigstore/protobuf-specs": "^0.4.0" + "@sigstore/protobuf-specs": "^0.4.1" }, "engines": { "node": "^18.17.0 || >=20.5.0" @@ -3215,9 +3203,9 @@ } }, "node_modules/detect-libc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", - "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", "dev": true, "engines": { "node": ">=8" @@ -3286,9 +3274,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.139", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.139.tgz", - "integrity": "sha512-GGnRYOTdN5LYpwbIr0rwP/ZHOQSvAF6TG0LSzp28uCBb9JiXHJGmaaKw29qjNJc5bGnnp6kXJqRnGMQoELwi5w==", + "version": "1.5.143", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.143.tgz", + "integrity": "sha512-QqklJMOFBMqe46k8iIOwA9l2hz57V2OKMmP5eSWcUvwx+mASAsbU+wkF1pHjn9ZVSBPrsYWr4/W/95y5SwYg2g==", "dev": true }, "node_modules/emittery": { @@ -3363,12 +3351,6 @@ "is-arrayish": "^0.2.1" } }, - "node_modules/es-module-lexer": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.6.0.tgz", - "integrity": "sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==", - "dev": true - }, "node_modules/es6-error": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", @@ -3396,9 +3378,9 @@ } }, "node_modules/eslint": { - "version": "9.25.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.25.0.tgz", - "integrity": "sha512-MsBdObhM4cEwkzCiraDv7A6txFXEqtNXOb877TsSp2FCkBNl8JfVQrmiuDqC1IkejT6JLPzYBXx/xAiYhyzgGA==", + "version": "9.25.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.25.1.tgz", + "integrity": "sha512-E6Mtz9oGQWDCpV12319d59n4tx9zOTXSTmc8BLVxBx+G/0RdM5MvEEJLU9c0+aleoePYYgVTOsRblx433qmhWQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3407,7 +3389,7 @@ "@eslint/config-helpers": "^0.2.1", "@eslint/core": "^0.13.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.25.0", + "@eslint/js": "9.25.1", "@eslint/plugin-kit": "^0.2.8", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -3519,9 +3501,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.9", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.9.tgz", - "integrity": "sha512-7/nHu3FWD4QRG8tCVqcv+BfFtctUtEDWc29oeDXB4bwmDM2/r1ndl14AG/2DUntdqH7qmpvdemJKwb3R97/QEw==", + "version": "50.6.11", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.11.tgz", + "integrity": "sha512-k4+MnBCGR8cuIB5MZ++FGd4gbXxjob2rX1Nq0q3nWFF4xSGZENTgTLZSjb+u9B8SAnP6lpGV2FJrBjllV3pVSg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", @@ -3531,10 +3513,9 @@ "escape-string-regexp": "^4.0.0", "espree": "^10.1.0", "esquery": "^1.6.0", - "parse-imports": "^2.1.1", + "parse-imports-exports": "^0.2.4", "semver": "^7.6.3", - "spdx-expression-parse": "^4.0.0", - "synckit": "^0.9.1" + "spdx-expression-parse": "^4.0.0" }, "engines": { "node": ">=18" @@ -4370,9 +4351,9 @@ } }, "node_modules/globby/node_modules/ignore": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.3.tgz", - "integrity": "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", + "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", "engines": { "node": ">= 4" } @@ -6582,17 +6563,13 @@ "node": ">=6" } }, - "node_modules/parse-imports": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/parse-imports/-/parse-imports-2.2.1.tgz", - "integrity": "sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ==", + "node_modules/parse-imports-exports": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/parse-imports-exports/-/parse-imports-exports-0.2.4.tgz", + "integrity": "sha512-4s6vd6dx1AotCx/RCI2m7t7GCh5bDRUtGNvRfHSP2wbBQdMi67pPe7mtzmgwcaQ8VKK/6IB7Glfyu3qdZJPybQ==", "dev": true, "dependencies": { - "es-module-lexer": "^1.5.3", - "slashes": "^3.0.12" - }, - "engines": { - "node": ">= 18" + "parse-statements": "1.0.11" } }, "node_modules/parse-json": { @@ -6640,6 +6617,12 @@ "node": ">=0.10.0" } }, + "node_modules/parse-statements": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/parse-statements/-/parse-statements-1.0.11.tgz", + "integrity": "sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==", + "dev": true + }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -7003,9 +6986,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.40.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.0.tgz", - "integrity": "sha512-ABHZ2/tS2JkvH1PEjxFDTUWC8dB5OsIGZP4IFLhR293GqT5Y5qB1WwL2kMPYhQW9DVgVD8Hd7I8gjwPIf5GFkw==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.1.tgz", + "integrity": "sha512-9YvLNnORDpI+vghLU/Nf+zSv0kL47KbVJ1o3sKgoTefl6i+zebxbiDQWoe/oWWqPhIgQdRZRT1KA9sCPL810SA==", "engines": { "node": ">=16" }, @@ -7048,9 +7031,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.40.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.0.tgz", - "integrity": "sha512-ABHZ2/tS2JkvH1PEjxFDTUWC8dB5OsIGZP4IFLhR293GqT5Y5qB1WwL2kMPYhQW9DVgVD8Hd7I8gjwPIf5GFkw==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.1.tgz", + "integrity": "sha512-9YvLNnORDpI+vghLU/Nf+zSv0kL47KbVJ1o3sKgoTefl6i+zebxbiDQWoe/oWWqPhIgQdRZRT1KA9sCPL810SA==", "engines": { "node": ">=16" }, @@ -7257,9 +7240,9 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.1.tgz", - "integrity": "sha512-zrQDm8XPnYEKawJScsnM0QzobJxlT/kHOOlRTio8IH/GrmxRE5fjllkzdaHclIuNjUQTJYH2xHNIGfdpJkDJUw==", + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.2.tgz", + "integrity": "sha512-YT7U7Vye+t5fZ/QMkBFrTJ7ZQxInIUjwyAjVj84CYXqgBdv30MFUPGnBR6sQaVq6Is15wYJUsnzTuWaGRBhBAQ==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", @@ -7523,12 +7506,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/slashes": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/slashes/-/slashes-3.0.12.tgz", - "integrity": "sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==", - "dev": true - }, "node_modules/slice-ansi": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", @@ -8041,22 +8018,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/synckit": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz", - "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==", - "dev": true, - "dependencies": { - "@pkgr/core": "^0.1.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" - } - }, "node_modules/tap-parser": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-1.2.2.tgz", @@ -8397,12 +8358,6 @@ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", "dev": true }, - "node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, "node_modules/tuf-js": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-3.0.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index eb8f34b06ec..ebce6cc12dd 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,10 +158,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.25.0", + "eslint": "^9.25.1", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.9", + "eslint-plugin-jsdoc": "^50.6.11", "esmock": "^2.7.0", "globals": "^16.0.0", "istanbul-lib-coverage": "^3.2.2", From e4e7c4654331cb0ffd930a3d53b1a136a58a7d30 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Tue, 29 Apr 2025 07:59:46 +0000 Subject: [PATCH 1222/1272] [ui5-project][INTERNAL] Bump @ui5/builder from to Changelog of this version: https://github.com/SAP/ui5-builder/blob/v/CHANGELOG.md --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5ee6849e0e4..044b0d9e9c9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -62,7 +62,7 @@ "npm": ">= 8" }, "peerDependencies": { - "@ui5/builder": "^4.0.5" + "@ui5/builder": "^4.0.6" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -3274,9 +3274,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.143", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.143.tgz", - "integrity": "sha512-QqklJMOFBMqe46k8iIOwA9l2hz57V2OKMmP5eSWcUvwx+mASAsbU+wkF1pHjn9ZVSBPrsYWr4/W/95y5SwYg2g==", + "version": "1.5.144", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.144.tgz", + "integrity": "sha512-eJIaMRKeAzxfBSxtjYnoIAw/tdD6VIH6tHBZepZnAbE3Gyqqs5mGN87DvcldPUbVkIljTK8pY0CMcUljP64lfQ==", "dev": true }, "node_modules/emittery": { diff --git a/packages/project/package.json b/packages/project/package.json index ebce6cc12dd..bd62ffb39d6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -143,7 +143,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^4.0.5" + "@ui5/builder": "^4.0.6" }, "peerDependenciesMeta": { "@ui5/builder": { From 9c3878f1f01f45853625e0e392cad7570e6adfbb Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 4 May 2025 02:20:12 +0000 Subject: [PATCH 1223/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 1249 ++++++++++++++++++++++------ packages/project/package.json | 4 +- 2 files changed, 1000 insertions(+), 253 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 044b0d9e9c9..8cb34eb5e93 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -34,12 +34,12 @@ "devDependencies": { "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.3.0", - "ava": "^6.2.0", + "ava": "^6.3.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.25.1", + "eslint": "^9.26.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.11", @@ -84,43 +84,43 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", - "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "dependencies": { - "@babel/helper-validator-identifier": "^7.25.9", + "@babel/helper-validator-identifier": "^7.27.1", "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" + "picocolors": "^1.1.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.26.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", - "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.1.tgz", + "integrity": "sha512-Q+E+rd/yBzNQhXkG+zQnF58e4zoZfBedaxwzPmicKsiK3nt8iJYrSrDbjwFFDGC4f+rPafqRaPH6TsDoSvMf7A==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.26.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.10.tgz", - "integrity": "sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.1.tgz", + "integrity": "sha512-IaaGWsQqfsQWVLqMn9OB92MNN7zukfVA4s7KKAI0KfrrDsZ0yhi5uV4baBuLuN7n3vsZpwP8asPPcVwApxvjBQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.26.10", - "@babel/helper-compilation-targets": "^7.26.5", - "@babel/helper-module-transforms": "^7.26.0", - "@babel/helpers": "^7.26.10", - "@babel/parser": "^7.26.10", - "@babel/template": "^7.26.9", - "@babel/traverse": "^7.26.10", - "@babel/types": "^7.26.10", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.1", + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helpers": "^7.27.1", + "@babel/parser": "^7.27.1", + "@babel/template": "^7.27.1", + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -145,13 +145,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", - "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.1.tgz", + "integrity": "sha512-UnJfnIpc/+JO0/+KRVQNGU+y5taA5vCbwN8+azkX6beii/ZF+enZJSOKo11ZSzGJjlNfJHfQtmQT8H+9TXPG2w==", "dev": true, "dependencies": { - "@babel/parser": "^7.27.0", - "@babel/types": "^7.27.0", + "@babel/parser": "^7.27.1", + "@babel/types": "^7.27.1", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -161,25 +161,25 @@ } }, "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", - "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.1.tgz", + "integrity": "sha512-WnuuDILl9oOBbKnb4L+DyODx7iC47XfzmNCpTttFsSp6hTG7XZxu60+4IO+2/hPfcGOoKbFiwoI/+zwARbNQow==", "dev": true, "dependencies": { - "@babel/types": "^7.25.9" + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.0.tgz", - "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.1.tgz", + "integrity": "sha512-2YaDd/Rd9E598B5+WIc8wJPmWETiiJXFYVE60oX8FDohv7rAUU3CQj+A1MgeEmcsk2+dQuEjIe/GDvig0SqL4g==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.26.8", - "@babel/helper-validator-option": "^7.25.9", + "@babel/compat-data": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", "browserslist": "^4.24.0", "lru-cache": "^5.1.1", "semver": "^6.3.1" @@ -198,17 +198,17 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.0.tgz", - "integrity": "sha512-vSGCvMecvFCd/BdpGlhpXYNhhC4ccxyvQWpbGL4CWbvfEoLFWUZuSuf7s9Aw70flgQF+6vptvgK2IfOnKlRmBg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.1.tgz", + "integrity": "sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.25.9", - "@babel/helper-member-expression-to-functions": "^7.25.9", - "@babel/helper-optimise-call-expression": "^7.25.9", - "@babel/helper-replace-supers": "^7.26.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", - "@babel/traverse": "^7.27.0", + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/traverse": "^7.27.1", "semver": "^6.3.1" }, "engines": { @@ -228,40 +228,40 @@ } }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz", - "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz", + "integrity": "sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==", "dev": true, "dependencies": { - "@babel/traverse": "^7.25.9", - "@babel/types": "^7.25.9" + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", - "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", "dev": true, "dependencies": { - "@babel/traverse": "^7.25.9", - "@babel/types": "^7.25.9" + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", - "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.1.tgz", + "integrity": "sha512-9yHn519/8KvTU5BjTVEEeIM3w9/2yXNKoD82JifINImhpKkARMJKPP59kLo+BafpdN5zgNeIcS4jsGDmd3l58g==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.25.9", - "@babel/helper-validator-identifier": "^7.25.9", - "@babel/traverse": "^7.25.9" + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -271,35 +271,35 @@ } }, "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz", - "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz", + "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==", "dev": true, "dependencies": { - "@babel/types": "^7.25.9" + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", - "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.26.5.tgz", - "integrity": "sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz", + "integrity": "sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==", "dev": true, "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.25.9", - "@babel/helper-optimise-call-expression": "^7.25.9", - "@babel/traverse": "^7.26.5" + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/traverse": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -309,64 +309,64 @@ } }, "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz", - "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz", + "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==", "dev": true, "dependencies": { - "@babel/traverse": "^7.25.9", - "@babel/types": "^7.25.9" + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", - "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", - "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", - "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", - "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.1.tgz", + "integrity": "sha512-FCvFTm0sWV8Fxhpp2McP5/W53GPllQ9QeQ7SiqGWjMf/LVG07lFa5+pgK05IRhVwtvafT22KF+ZSnM9I545CvQ==", "dev": true, "dependencies": { - "@babel/template": "^7.27.0", - "@babel/types": "^7.27.0" + "@babel/template": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", - "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.1.tgz", + "integrity": "sha512-I0dZ3ZpCrJ1c04OqlNsQcKiZlsrXf/kkE4FXzID9rIOYICsAbA8mMDzhW/luRNAHdCNt7os/u8wenklZDlUVUQ==", "dev": true, "dependencies": { - "@babel/types": "^7.27.0" + "@babel/types": "^7.27.1" }, "bin": { "parser": "bin/babel-parser.js" @@ -376,12 +376,12 @@ } }, "node_modules/@babel/plugin-syntax-decorators": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.25.9.tgz", - "integrity": "sha512-ryzI0McXUPJnRCvMo4lumIKZUzhYUO/ScI+Mz4YVaTLt04DHNSjEUjKVvbzQjZFLuod/cYEc07mJWhzl6v4DPg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.27.1.tgz", + "integrity": "sha512-YMq8Z87Lhl8EGkmb0MwYkt36QnxC+fzCgrl66ereamPlYToRpIk5nUjKUY3QKLWq8mwUB1BgbeXcTJhZOCDg5A==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.25.9" + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -391,12 +391,12 @@ } }, "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz", - "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz", + "integrity": "sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.25.9" + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -406,12 +406,12 @@ } }, "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz", - "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz", + "integrity": "sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.25.9" + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -421,13 +421,13 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.26.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz", - "integrity": "sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz", + "integrity": "sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.26.0", - "@babel/helper-plugin-utils": "^7.25.9" + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -437,16 +437,16 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.27.0.tgz", - "integrity": "sha512-fRGGjO2UEGPjvEcyAZXRXAS8AfdaQoq7HnxAbJoAoW10B9xOKesmmndJv+Sym2a+9FHWZ9KbyyLCe9s0Sn5jtg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.27.1.tgz", + "integrity": "sha512-Q5sT5+O4QUebHdbwKedFBEwRLb02zJ7r4A5Gg2hUoLuU3FjdMcyqcywqUrLCaDsFCxzokf7u9kuy7qz51YUuAg==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.25.9", - "@babel/helper-create-class-features-plugin": "^7.27.0", - "@babel/helper-plugin-utils": "^7.26.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", - "@babel/plugin-syntax-typescript": "^7.25.9" + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/plugin-syntax-typescript": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -456,16 +456,16 @@ } }, "node_modules/@babel/preset-typescript": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.27.0.tgz", - "integrity": "sha512-vxaPFfJtHhgeOVXRKuHpHPAOgymmy8V8I65T1q53R7GCZlefKeCaTyDs3zOPHTTbmquvNlQYC5klEvWsBAtrBQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.27.1.tgz", + "integrity": "sha512-l7WfQfX0WK4M0v2RudjuQK4u99BS6yLHYEmdtVPP7lKV013zr9DygFuWNlnbvQ9LR+LS0Egz/XAvGx5U9MX0fQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.26.5", - "@babel/helper-validator-option": "^7.25.9", - "@babel/plugin-syntax-jsx": "^7.25.9", - "@babel/plugin-transform-modules-commonjs": "^7.26.3", - "@babel/plugin-transform-typescript": "^7.27.0" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-syntax-jsx": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.27.1", + "@babel/plugin-transform-typescript": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -475,30 +475,30 @@ } }, "node_modules/@babel/template": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", - "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.1.tgz", + "integrity": "sha512-Fyo3ghWMqkHHpHQCoBs2VnYjR4iWFFjguTDEqA5WgZDOrFesVjMhMM2FSqTKSoUSDO1VQtavj8NFpdRBEvJTtg==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.26.2", - "@babel/parser": "^7.27.0", - "@babel/types": "^7.27.0" + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", - "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.1.tgz", + "integrity": "sha512-ZCYtZciz1IWJB4U61UPu4KEaqyfj+r5T1Q5mqPo+IBpcG9kHv30Z0aD8LXPgC1trYa6rK0orRyAhqUgk4MjmEg==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.27.0", - "@babel/parser": "^7.27.0", - "@babel/template": "^7.27.0", - "@babel/types": "^7.27.0", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.1", + "@babel/parser": "^7.27.1", + "@babel/template": "^7.27.1", + "@babel/types": "^7.27.1", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -516,13 +516,13 @@ } }, "node_modules/@babel/types": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", - "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.1.tgz", + "integrity": "sha512-+EzkxvLNfiUeKMgy/3luqfsCWFRXLb7U6wNQTk60tovuckwB15B191tJWvpp4HjiQWdJkCxO3Wbvc6jlk3Xb2Q==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.25.9", - "@babel/helper-validator-identifier": "^7.25.9" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -543,9 +543,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.1.tgz", - "integrity": "sha512-KTsJMmobmbrFLe3LDh0PC2FXpcSYJt/MLjlkh/9LEnmKYLSYmT/0EW9JWANjeoemiuZrmogti0tW5Ch+qNUYDw==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", + "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", "dev": true, "dependencies": { "eslint-visitor-keys": "^3.4.3" @@ -618,9 +618,9 @@ } }, "node_modules/@eslint/config-helpers": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.1.tgz", - "integrity": "sha512-RI17tsD2frtDu/3dmI7QRrD4bedNKPM08ziRYaC5AhkGrzIAJelm9kJU1TznK+apx6V+cqRz8tfpEeG3oIyjxw==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.2.tgz", + "integrity": "sha512-+GPzk8PlG0sPpzdU5ZvIRMPidzAnZDl/s9L+y13iodqvb8leL53bTannOrQ/Im7UkpsmFU5Ily5U60LWixnmLg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -696,9 +696,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.25.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.25.1.tgz", - "integrity": "sha512-dEIwmjntEx8u3Uvv+kr3PDeeArL8Hw07H9kyYxCjnM9pBjfEhk6uLXSchxxzgiwtRhhzVzqmUSDFBOi1TuZ7qg==", + "version": "9.26.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.26.0.tgz", + "integrity": "sha512-I9XlJawFdSMvWjDt6wksMCrgns5ggLNfFwFvnShsleWruvXM514Qxk8V246efTw+eo9JABvVz+u3q2RiAowKxQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -987,6 +987,27 @@ "node": ">=18" } }, + "node_modules/@modelcontextprotocol/sdk": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.11.0.tgz", + "integrity": "sha512-k/1pb70eD638anoi0e8wUGAlbMJXyvdV4p62Ko+EZ7eBe1xMx8Uhak1R5DgfoofsK5IBBnRwsYGTaLZl+6/+RQ==", + "dev": true, + "dependencies": { + "content-type": "^1.0.5", + "cors": "^2.8.5", + "cross-spawn": "^7.0.3", + "eventsource": "^3.0.2", + "express": "^5.0.1", + "express-rate-limit": "^7.5.0", + "pkce-challenge": "^5.0.0", + "raw-body": "^3.0.0", + "zod": "^3.23.8", + "zod-to-json-schema": "^3.24.1" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1165,9 +1186,9 @@ } }, "node_modules/@npmcli/redact": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.2.0.tgz", - "integrity": "sha512-NyJXHoZwJE0iUsCDTclXf1bWHJTsshtnp5xUN6F2vY+OLJv6d2cNc4Do6fKNkmPToB0GzoffxRh405ibTwG+Og==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.2.1.tgz", + "integrity": "sha512-VW+1SW5CkP1aSegFQx7/AawdzM6b4UP6R3QET192ON4IAP6iK++IG6Ztg+bkoeGN8lh/prOzT+ZkNgWQrAXLNQ==", "engines": { "node": "^18.17.0 || >=20.5.0" } @@ -1468,19 +1489,19 @@ } }, "node_modules/@vercel/nft": { - "version": "0.27.10", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.27.10.tgz", - "integrity": "sha512-zbaF9Wp/NsZtKLE4uVmL3FyfFwlpDyuymQM1kPbeT0mVOHKDQQNjnnfslB3REg3oZprmNFJuh3pkHBk2qAaizg==", + "version": "0.29.2", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.29.2.tgz", + "integrity": "sha512-A/Si4mrTkQqJ6EXJKv5EYCDQ3NL6nJXxG8VGXePsaiQigsomHYQC9xSpX8qGk7AEZk4b1ssbYIqJ0ISQQ7bfcA==", "dev": true, "dependencies": { - "@mapbox/node-pre-gyp": "^2.0.0-rc.0", + "@mapbox/node-pre-gyp": "^2.0.0", "@rollup/pluginutils": "^5.1.3", "acorn": "^8.6.0", "acorn-import-attributes": "^1.9.5", "async-sema": "^3.1.1", "bindings": "^1.4.0", "estree-walker": "2.0.2", - "glob": "^7.1.3", + "glob": "^10.4.5", "graceful-fs": "^4.2.9", "node-gyp-build": "^4.2.2", "picomatch": "^4.0.2", @@ -1490,50 +1511,7 @@ "nft": "out/cli.js" }, "engines": { - "node": ">=16" - } - }, - "node_modules/@vercel/nft/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@vercel/nft/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@vercel/nft/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" + "node": ">=18" } }, "node_modules/@vue/compiler-core": { @@ -1612,6 +1590,19 @@ "node": ">=6.5" } }, + "node_modules/accepts": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz", + "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==", + "dev": true, + "dependencies": { + "mime-types": "^3.0.0", + "negotiator": "^1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/acorn": { "version": "8.14.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", @@ -1841,44 +1832,44 @@ "dev": true }, "node_modules/ava": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-6.2.0.tgz", - "integrity": "sha512-+GZk5PbyepjiO/68hzCZCUepQOQauKfNnI7sA4JukBTg97jD7E+tDKEA7OhGOGr6EorNNMM9+jqvgHVOTOzG4w==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-6.3.0.tgz", + "integrity": "sha512-64K+xNmlgMo1D94evJlkBWmJ6CGrO6oEctGEjA3PIl5GrwZyMXM5OEycZWnKGduE1YdqMvYDl29SgnNk7kyx+A==", "dev": true, "dependencies": { - "@vercel/nft": "^0.27.5", - "acorn": "^8.13.0", + "@vercel/nft": "^0.29.2", + "acorn": "^8.14.1", "acorn-walk": "^8.3.4", "ansi-styles": "^6.2.1", "arrgv": "^1.0.2", "arrify": "^3.0.0", "callsites": "^4.2.0", - "cbor": "^9.0.2", - "chalk": "^5.3.0", + "cbor": "^10.0.3", + "chalk": "^5.4.1", "chunkd": "^2.0.1", - "ci-info": "^4.0.0", + "ci-info": "^4.2.0", "ci-parallel-vars": "^1.0.1", "cli-truncate": "^4.0.0", "code-excerpt": "^4.0.0", "common-path-prefix": "^3.0.0", "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", - "debug": "^4.3.7", - "emittery": "^1.0.3", + "debug": "^4.4.0", + "emittery": "^1.1.0", "figures": "^6.1.0", - "globby": "^14.0.2", + "globby": "^14.1.0", "ignore-by-default": "^2.1.0", "indent-string": "^5.0.0", "is-plain-object": "^5.0.0", "is-promise": "^4.0.0", "matcher": "^5.0.0", - "memoize": "^10.0.0", + "memoize": "^10.1.0", "ms": "^2.1.3", - "p-map": "^7.0.2", + "p-map": "^7.0.3", "package-config": "^5.0.0", "picomatch": "^4.0.2", "plur": "^5.1.0", - "pretty-ms": "^9.1.0", + "pretty-ms": "^9.2.0", "resolve-cwd": "^3.0.0", "stack-utils": "^2.0.6", "strip-ansi": "^7.1.0", @@ -2001,6 +1992,26 @@ "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", "dev": true }, + "node_modules/body-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.2.0.tgz", + "integrity": "sha512-02qvAaxv8tp7fBa/mw1ga98OGm+eCbqzJOKoRt70sLmfEEi+jyBYVTDGfCL/k06/4EMk/z01gCe7HoCH/f2LTg==", + "dev": true, + "dependencies": { + "bytes": "^3.1.2", + "content-type": "^1.0.5", + "debug": "^4.4.0", + "http-errors": "^2.0.0", + "iconv-lite": "^0.6.3", + "on-finished": "^2.4.1", + "qs": "^6.14.0", + "raw-body": "^3.0.0", + "type-is": "^2.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -2021,9 +2032,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", - "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "version": "4.24.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.5.tgz", + "integrity": "sha512-FDToo4Wo82hIdgc1CQ+NQD0hEhmpPjrZ3hiUgwgOG6IuTdlpr8jdjyG24P6cNP1yJpTLzS5OcGgSw0xmDU1/Tw==", "dev": true, "funding": [ { @@ -2040,10 +2051,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001688", - "electron-to-chromium": "^1.5.73", + "caniuse-lite": "^1.0.30001716", + "electron-to-chromium": "^1.5.149", "node-releases": "^2.0.19", - "update-browserslist-db": "^1.1.1" + "update-browserslist-db": "^1.1.3" }, "bin": { "browserslist": "cli.js" @@ -2091,6 +2102,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/cacache": { "version": "19.0.1", "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", @@ -2175,6 +2195,35 @@ "typedarray-to-buffer": "^3.1.5" } }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/callsite": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", @@ -2206,9 +2255,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001715", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001715.tgz", - "integrity": "sha512-7ptkFGMm2OAOgvZpwgA4yjQ5SQbrNVGdRjzH0pBdy1Fasvcr+KAeECmbCAECzTuDuoX0FCY8KzUxjf9+9kfZEw==", + "version": "1.0.30001716", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001716.tgz", + "integrity": "sha512-49/c1+x3Kwz7ZIWt+4DvK3aMJy9oYXXG6/97JKsnjdCk/6n9vVyWL8NAwVt95Lwt9eigI10Hl782kDfZUUlRXw==", "dev": true, "funding": [ { @@ -2238,15 +2287,15 @@ } }, "node_modules/cbor": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-9.0.2.tgz", - "integrity": "sha512-JPypkxsB10s9QOWwa6zwPzqE1Md3vqpPc+cai4sAecuCsRyAtAl/pMyhPlMbT/xtPnm2dznJZYRLui57qiRhaQ==", + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-10.0.3.tgz", + "integrity": "sha512-72Jnj81xMsqepqdcSdf2+fflz/UDsThOHy5hj2MW5F5xzHL8Oa0KQ6I6V9CwVUPxg5pf+W9xp6W2KilaRXWWtw==", "dev": true, "dependencies": { - "nofilter": "^3.1.0" + "nofilter": "^3.0.2" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/chalk": { @@ -2762,6 +2811,27 @@ "node": "^14.18.0 || >=16.10.0" } }, + "node_modules/content-disposition": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.0.0.tgz", + "integrity": "sha512-Au9nRL8VNUut/XSzbQA38+M78dzP4D+eqg3gfJHMIHHYa3bg067xj1KxMUWj+VULbiZMowKngFFbKczUrNJ1mg==", + "dev": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -2777,12 +2847,43 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, + "node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz", + "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==", + "dev": true, + "engines": { + "node": ">=6.6.0" + } + }, "node_modules/core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/cosmiconfig": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", @@ -3187,6 +3288,15 @@ "node": ">=10" } }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/deps-regex": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.2.0.tgz", @@ -3229,6 +3339,20 @@ "@jsdoc/salty": "^0.2.1" } }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -3273,10 +3397,16 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, "node_modules/electron-to-chromium": { - "version": "1.5.144", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.144.tgz", - "integrity": "sha512-eJIaMRKeAzxfBSxtjYnoIAw/tdD6VIH6tHBZepZnAbE3Gyqqs5mGN87DvcldPUbVkIljTK8pY0CMcUljP64lfQ==", + "version": "1.5.149", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.149.tgz", + "integrity": "sha512-UyiO82eb9dVOx8YO3ajDf9jz2kKyt98DEITRdeLPstOEuTlLzDA4Gyq5K9he71TQziU5jUVu2OAu5N48HmQiyQ==", "dev": true }, "node_modules/emittery": { @@ -3296,6 +3426,15 @@ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/encoding": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", @@ -3351,6 +3490,36 @@ "is-arrayish": "^0.2.1" } }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es6-error": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", @@ -3366,6 +3535,12 @@ "node": ">=6" } }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, "node_modules/escape-string-regexp": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", @@ -3378,9 +3553,9 @@ } }, "node_modules/eslint": { - "version": "9.25.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.25.1.tgz", - "integrity": "sha512-E6Mtz9oGQWDCpV12319d59n4tx9zOTXSTmc8BLVxBx+G/0RdM5MvEEJLU9c0+aleoePYYgVTOsRblx433qmhWQ==", + "version": "9.26.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.26.0.tgz", + "integrity": "sha512-Hx0MOjPh6uK9oq9nVsATZKE/Wlbai7KFjfCuw9UHaguDW3x+HF0O5nIi3ud39TWgrTjTO5nHxmL3R1eANinWHQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3389,11 +3564,12 @@ "@eslint/config-helpers": "^0.2.1", "@eslint/core": "^0.13.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.25.1", + "@eslint/js": "9.26.0", "@eslint/plugin-kit": "^0.2.8", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.2", + "@modelcontextprotocol/sdk": "^1.8.0", "@types/estree": "^1.0.6", "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", @@ -3417,7 +3593,8 @@ "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.3" + "optionator": "^0.9.3", + "zod": "^3.24.2" }, "bin": { "eslint": "bin/eslint.js" @@ -3840,6 +4017,15 @@ "node": ">=0.10.0" } }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/event-target-shim": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", @@ -3864,6 +4050,27 @@ "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, + "node_modules/eventsource": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.6.tgz", + "integrity": "sha512-l19WpE2m9hSuyP06+FbuUUf1G+R0SFLrtQfbRb9PRr+oimOfxQhgGCbVaXg5IvZyyTThJsxh6L/srkMiCeBPDA==", + "dev": true, + "dependencies": { + "eventsource-parser": "^3.0.1" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/eventsource-parser": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.1.tgz", + "integrity": "sha512-VARTJ9CYeuQYb0pZEPbzi740OWFgpHe7AYJ2WFZVnUDUQp5Dk2yJUgF36YsZ81cOyxT0QxmXD2EQpapAouzWVA==", + "dev": true, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", @@ -3881,6 +4088,63 @@ "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz", "integrity": "sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==" }, + "node_modules/express": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/express/-/express-5.1.0.tgz", + "integrity": "sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA==", + "dev": true, + "dependencies": { + "accepts": "^2.0.0", + "body-parser": "^2.2.0", + "content-disposition": "^1.0.0", + "content-type": "^1.0.5", + "cookie": "^0.7.1", + "cookie-signature": "^1.2.1", + "debug": "^4.4.0", + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "etag": "^1.8.1", + "finalhandler": "^2.1.0", + "fresh": "^2.0.0", + "http-errors": "^2.0.0", + "merge-descriptors": "^2.0.0", + "mime-types": "^3.0.0", + "on-finished": "^2.4.1", + "once": "^1.4.0", + "parseurl": "^1.3.3", + "proxy-addr": "^2.0.7", + "qs": "^6.14.0", + "range-parser": "^1.2.1", + "router": "^2.2.0", + "send": "^1.1.0", + "serve-static": "^2.2.0", + "statuses": "^2.0.1", + "type-is": "^2.0.1", + "vary": "^1.1.2" + }, + "engines": { + "node": ">= 18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/express-rate-limit": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-7.5.0.tgz", + "integrity": "sha512-eB5zbQh5h+VenMPM3fh+nw1YExi5nMr6HUCR62ELSP11huvxm/Uir1H1QEyTkk5QX6A58pX6NmaTMceKZ0Eodg==", + "dev": true, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/express-rate-limit" + }, + "peerDependencies": { + "express": "^4.11 || 5 || ^5.0.0-beta.1" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -3999,6 +4263,23 @@ "node": ">=8" } }, + "node_modules/finalhandler": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.0.tgz", + "integrity": "sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q==", + "dev": true, + "dependencies": { + "debug": "^4.4.0", + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "on-finished": "^2.4.1", + "parseurl": "^1.3.3", + "statuses": "^2.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/find-cache-dir": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", @@ -4125,6 +4406,24 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz", + "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/fromentries": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", @@ -4214,6 +4513,30 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", @@ -4223,6 +4546,19 @@ "node": ">=8.0.0" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-stdin": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", @@ -4369,6 +4705,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", @@ -4383,6 +4731,18 @@ "node": ">=8" } }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/hasha": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", @@ -4449,6 +4809,22 @@ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/http-proxy-agent": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", @@ -4477,7 +4853,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "optional": true, + "devOptional": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -4639,6 +5015,15 @@ "node": ">= 12" } }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/irregular-plurals": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.5.0.tgz", @@ -5439,6 +5824,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/md5-hex": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.1.tgz", @@ -5457,6 +5851,15 @@ "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", "dev": true }, + "node_modules/media-typer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz", + "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/memoize": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/memoize/-/memoize-10.1.0.tgz", @@ -5484,6 +5887,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/merge-descriptors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz", + "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -5521,6 +5936,27 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.1.tgz", + "integrity": "sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA==", + "dev": true, + "dependencies": { + "mime-db": "^1.54.0" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/mimic-function": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", @@ -6281,6 +6717,39 @@ "node": ">=6" } }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -6291,9 +6760,9 @@ } }, "node_modules/open": { - "version": "10.1.1", - "resolved": "https://registry.npmjs.org/open/-/open-10.1.1.tgz", - "integrity": "sha512-zy1wx4+P3PfhXSEPJNtZmJXfhkkIaxU1VauWIrDZw1O7uJRDRJtKr9n3Ic4NgbA16KyOxOXO2ng9gYwCdXuSXA==", + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/open/-/open-10.1.2.tgz", + "integrity": "sha512-cxN6aIDPz6rm8hbebcP7vrQNhvRcveZoJU72Y7vskh4oIm+BZwBECnx5nTmrlres1Qapvx27Qo1Auukpf8PKXw==", "dev": true, "dependencies": { "default-browser": "^5.2.1", @@ -6623,6 +7092,15 @@ "integrity": "sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==", "dev": true }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -6674,6 +7152,15 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, + "node_modules/path-to-regexp": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.2.0.tgz", + "integrity": "sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==", + "dev": true, + "engines": { + "node": ">=16" + } + }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", @@ -6712,6 +7199,15 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pkce-challenge": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.0.tgz", + "integrity": "sha512-ueGLflrrnvwB3xuo/uGob5pd5FN7l0MsLf0Z87o/UQmRtwjvfylfc9MurIxRAWywCYTgrvpXBcqjV4OfCYGCIQ==", + "dev": true, + "engines": { + "node": ">=16.20.0" + } + }, "node_modules/pkg-dir": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", @@ -6922,6 +7418,19 @@ "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", "dev": true }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/punycode": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", @@ -6939,6 +7448,21 @@ "node": ">=6" } }, + "node_modules/qs": { + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", + "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", + "dev": true, + "dependencies": { + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -6969,6 +7493,30 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.0.tgz", + "integrity": "sha512-RmkhL8CAyCRPXCE28MMH0z2PNWQBNk2Q09ZdxM9IOOXwxwZbN+qbWaatPkdkWIKL2ZVDImrN/pK5HTRz2PcS4g==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.6.3", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/read-package-up": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/read-package-up/-/read-package-up-11.0.0.tgz", @@ -7317,6 +7865,22 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/router": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz", + "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==", + "dev": true, + "dependencies": { + "debug": "^4.4.0", + "depd": "^2.0.0", + "is-promise": "^4.0.0", + "parseurl": "^1.3.3", + "path-to-regexp": "^8.0.0" + }, + "engines": { + "node": ">= 18" + } + }, "node_modules/run-applescript": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz", @@ -7375,7 +7939,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "optional": true + "devOptional": true }, "node_modules/sax": { "version": "1.4.1", @@ -7399,6 +7963,28 @@ "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", "dev": true }, + "node_modules/send": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/send/-/send-1.2.0.tgz", + "integrity": "sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==", + "dev": true, + "dependencies": { + "debug": "^4.3.5", + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "etag": "^1.8.1", + "fresh": "^2.0.0", + "http-errors": "^2.0.0", + "mime-types": "^3.0.1", + "ms": "^2.1.3", + "on-finished": "^2.4.1", + "range-parser": "^1.2.1", + "statuses": "^2.0.1" + }, + "engines": { + "node": ">= 18" + } + }, "node_modules/serialize-error": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", @@ -7426,12 +8012,33 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/serve-static": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.0.tgz", + "integrity": "sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ==", + "dev": true, + "dependencies": { + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "parseurl": "^1.3.3", + "send": "^1.2.0" + }, + "engines": { + "node": ">= 18" + } + }, "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "dev": true }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -7451,6 +8058,78 @@ "node": ">=8" } }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/signal-exit": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", @@ -7790,6 +8469,15 @@ "node": ">=8" } }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -8335,6 +9023,15 @@ "node": ">=8.0" } }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, "node_modules/token-types": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.1.tgz", @@ -8401,6 +9098,20 @@ "node": ">=8" } }, + "node_modules/type-is": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.0.1.tgz", + "integrity": "sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==", + "dev": true, + "dependencies": { + "content-type": "^1.0.5", + "media-typer": "^1.1.0", + "mime-types": "^3.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -8470,6 +9181,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/update-browserslist-db": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", @@ -8549,6 +9269,15 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/walk-up-path": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz", @@ -8844,6 +9573,24 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } + }, + "node_modules/zod": { + "version": "3.24.3", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.3.tgz", + "integrity": "sha512-HhY1oqzWCQWuUqvBFnsyrtZRhyPeR7SUGv+C4+MsisMuVfSPx8HpwWqH8tRahSlt6M3PiFAcoeFhZAqIXTxoSg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/zod-to-json-schema": { + "version": "3.24.5", + "resolved": "https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.24.5.tgz", + "integrity": "sha512-/AuWwMP+YqiPbsJx5D6TfgRTc4kTLjsh5SOcd4bLsfUg2RcEXrFMJl1DGgdHy2aCfsIA/cr/1JM0xcB2GZji8g==", + "dev": true, + "peerDependencies": { + "zod": "^3.24.1" + } } } } diff --git a/packages/project/package.json b/packages/project/package.json index bd62ffb39d6..06bf8541fe6 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -153,12 +153,12 @@ "devDependencies": { "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.3.0", - "ava": "^6.2.0", + "ava": "^6.3.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.25.1", + "eslint": "^9.26.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.11", From c8b011c80b07edbb7f20ac19aec53b2569b185be Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 11 May 2025 02:20:15 +0000 Subject: [PATCH 1224/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 104 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 54 insertions(+), 54 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 8cb34eb5e93..a41895aaf5c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,9 +42,9 @@ "eslint": "^9.26.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.11", + "eslint-plugin-jsdoc": "^50.6.14", "esmock": "^2.7.0", - "globals": "^16.0.0", + "globals": "^16.1.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -97,9 +97,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.1.tgz", - "integrity": "sha512-Q+E+rd/yBzNQhXkG+zQnF58e4zoZfBedaxwzPmicKsiK3nt8iJYrSrDbjwFFDGC4f+rPafqRaPH6TsDoSvMf7A==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.2.tgz", + "integrity": "sha512-TUtMJYRPyUb/9aU8f3K0mjmjf6M9N5Woshn2CS6nqJSeJtTtQcpLUXjGt9vbF8ZGff0El99sWkLgzwW3VXnxZQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -173,12 +173,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.1.tgz", - "integrity": "sha512-2YaDd/Rd9E598B5+WIc8wJPmWETiiJXFYVE60oX8FDohv7rAUU3CQj+A1MgeEmcsk2+dQuEjIe/GDvig0SqL4g==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.27.1", + "@babel/compat-data": "^7.27.2", "@babel/helper-validator-option": "^7.27.1", "browserslist": "^4.24.0", "lru-cache": "^5.1.1", @@ -361,9 +361,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.1.tgz", - "integrity": "sha512-I0dZ3ZpCrJ1c04OqlNsQcKiZlsrXf/kkE4FXzID9rIOYICsAbA8mMDzhW/luRNAHdCNt7os/u8wenklZDlUVUQ==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.2.tgz", + "integrity": "sha512-QYLs8299NA7WM/bZAdp+CviYYkVoYXlDW2rzliy3chxd1PQjej7JORuMJDJXJUb9g0TT+B99EwaVLKmX+sPXWw==", "dev": true, "dependencies": { "@babel/types": "^7.27.1" @@ -475,13 +475,13 @@ } }, "node_modules/@babel/template": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.1.tgz", - "integrity": "sha512-Fyo3ghWMqkHHpHQCoBs2VnYjR4iWFFjguTDEqA5WgZDOrFesVjMhMM2FSqTKSoUSDO1VQtavj8NFpdRBEvJTtg==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.27.1", - "@babel/parser": "^7.27.1", + "@babel/parser": "^7.27.2", "@babel/types": "^7.27.1" }, "engines": { @@ -775,9 +775,9 @@ } }, "node_modules/@humanwhocodes/retry": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz", - "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", "dev": true, "engines": { "node": ">=18.18" @@ -988,9 +988,9 @@ } }, "node_modules/@modelcontextprotocol/sdk": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.11.0.tgz", - "integrity": "sha512-k/1pb70eD638anoi0e8wUGAlbMJXyvdV4p62Ko+EZ7eBe1xMx8Uhak1R5DgfoofsK5IBBnRwsYGTaLZl+6/+RQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.11.1.tgz", + "integrity": "sha512-9LfmxKTb1v+vUS1/emSk1f5ePmTLkb9Le9AxOB5T0XM59EUumwcS45z05h7aiZx3GI0Bl7mjb3FMEglYj+acuQ==", "dev": true, "dependencies": { "content-type": "^1.0.5", @@ -1186,9 +1186,9 @@ } }, "node_modules/@npmcli/redact": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.2.1.tgz", - "integrity": "sha512-VW+1SW5CkP1aSegFQx7/AawdzM6b4UP6R3QET192ON4IAP6iK++IG6Ztg+bkoeGN8lh/prOzT+ZkNgWQrAXLNQ==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.2.2.tgz", + "integrity": "sha512-7VmYAmk4csGv08QzrDKScdzn11jHPFGyqJW39FyPgPuAp3zIaUmuCo1yxw9aGs+NEJuTGQ9Gwqpt93vtJubucg==", "engines": { "node": "^18.17.0 || >=20.5.0" } @@ -2255,9 +2255,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001716", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001716.tgz", - "integrity": "sha512-49/c1+x3Kwz7ZIWt+4DvK3aMJy9oYXXG6/97JKsnjdCk/6n9vVyWL8NAwVt95Lwt9eigI10Hl782kDfZUUlRXw==", + "version": "1.0.30001717", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001717.tgz", + "integrity": "sha512-auPpttCq6BDEG8ZAuHJIplGw6GODhjw+/11e7IjpnYCxZcW/ONgPs0KVBJ0d1bY3e2+7PRe5RCLyP+PfwVgkYw==", "dev": true, "funding": [ { @@ -3404,9 +3404,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.5.149", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.149.tgz", - "integrity": "sha512-UyiO82eb9dVOx8YO3ajDf9jz2kKyt98DEITRdeLPstOEuTlLzDA4Gyq5K9he71TQziU5jUVu2OAu5N48HmQiyQ==", + "version": "1.5.151", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.151.tgz", + "integrity": "sha512-Rl6uugut2l9sLojjS4H4SAr3A4IgACMLgpuEMPYCVcKydzfyPrn5absNRju38IhQOf/NwjJY8OGWjlteqYeBCA==", "dev": true }, "node_modules/emittery": { @@ -3678,9 +3678,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.11", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.11.tgz", - "integrity": "sha512-k4+MnBCGR8cuIB5MZ++FGd4gbXxjob2rX1Nq0q3nWFF4xSGZENTgTLZSjb+u9B8SAnP6lpGV2FJrBjllV3pVSg==", + "version": "50.6.14", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.14.tgz", + "integrity": "sha512-JUudvooQbUx3iB8n/MzXMOV/VtaXq7xL4CeXhYryinr8osck7nV6fE2/xUXTiH3epPXcvq6TE3HQfGQuRHErTQ==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", @@ -4051,9 +4051,9 @@ "dev": true }, "node_modules/eventsource": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.6.tgz", - "integrity": "sha512-l19WpE2m9hSuyP06+FbuUUf1G+R0SFLrtQfbRb9PRr+oimOfxQhgGCbVaXg5IvZyyTThJsxh6L/srkMiCeBPDA==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz", + "integrity": "sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==", "dev": true, "dependencies": { "eventsource-parser": "^3.0.1" @@ -4656,9 +4656,9 @@ } }, "node_modules/globals": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-16.0.0.tgz", - "integrity": "sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==", + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.1.0.tgz", + "integrity": "sha512-aibexHNbb/jiUSObBgpHLj+sIuUmJnYcgXBlrfsiDZ9rt4aF2TFRbyLgZ2iFQuVZ1K5Mx3FVkbKRSgKrbK3K2g==", "dev": true, "engines": { "node": ">=18" @@ -4805,9 +4805,9 @@ "dev": true }, "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==" }, "node_modules/http-errors": { "version": "2.0.0", @@ -7534,9 +7534,9 @@ } }, "node_modules/read-package-up/node_modules/type-fest": { - "version": "4.40.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.1.tgz", - "integrity": "sha512-9YvLNnORDpI+vghLU/Nf+zSv0kL47KbVJ1o3sKgoTefl6i+zebxbiDQWoe/oWWqPhIgQdRZRT1KA9sCPL810SA==", + "version": "4.41.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", + "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", "engines": { "node": ">=16" }, @@ -7579,9 +7579,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.40.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.1.tgz", - "integrity": "sha512-9YvLNnORDpI+vghLU/Nf+zSv0kL47KbVJ1o3sKgoTefl6i+zebxbiDQWoe/oWWqPhIgQdRZRT1KA9sCPL810SA==", + "version": "4.41.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", + "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", "engines": { "node": ">=16" }, @@ -9575,9 +9575,9 @@ } }, "node_modules/zod": { - "version": "3.24.3", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.3.tgz", - "integrity": "sha512-HhY1oqzWCQWuUqvBFnsyrtZRhyPeR7SUGv+C4+MsisMuVfSPx8HpwWqH8tRahSlt6M3PiFAcoeFhZAqIXTxoSg==", + "version": "3.24.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.4.tgz", + "integrity": "sha512-OdqJE9UDRPwWsrHjLN2F8bPxvwJBK22EHLWtanu0LSYr5YqzsaaW3RMgmjwr8Rypg5k+meEJdSPXJZXE/yqOMg==", "dev": true, "funding": { "url": "https://github.com/sponsors/colinhacks" diff --git a/packages/project/package.json b/packages/project/package.json index 06bf8541fe6..73198fc145a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,9 +161,9 @@ "eslint": "^9.26.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.11", + "eslint-plugin-jsdoc": "^50.6.14", "esmock": "^2.7.0", - "globals": "^16.0.0", + "globals": "^16.1.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From 4d036ae11108f10954f3fd93c691fcdba90df909 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 May 2025 13:04:13 +0000 Subject: [PATCH 1225/1272] [ui5-project]Bump actions/setup-node from 4.3.0 to 4.4.0 Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.3.0 to 4.4.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4.3.0...v4.4.0) --- updated-dependencies: - dependency-name: actions/setup-node dependency-version: 4.4.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 62cb0e865b2..430f8710e70 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Node.js LTS 20.11.0 - uses: actions/setup-node@v4.3.0 + uses: actions/setup-node@v4.4.0 with: node-version: 20.11.0 From fea3e40d92a29fbde8beb187db6969b5086fa046 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Mon, 12 May 2025 15:06:33 +0200 Subject: [PATCH 1226/1272] [ui5-project]ci: Use least privilege principle for permissions Declares only the required permissions per workflow. --- packages/project/.github/workflows/github-ci.yml | 3 +++ packages/project/.github/workflows/reuse-compliance.yml | 3 +++ 2 files changed, 6 insertions(+) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 430f8710e70..ee9d2fcefc1 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -8,6 +8,9 @@ on: branches: - main +# No permissions are required for this workflow +permissions: {} + jobs: test: name: General checks, tests and coverage reporting diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index a77eef3eac9..191f39cadab 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -8,6 +8,9 @@ on: branches: - main +# No permissions are required for this workflow +permissions: {} + jobs: compliance-check: name: Compliance Check From 2690153819c4ad968b6d090ecec79c267b81ac86 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 18 May 2025 02:20:10 +0000 Subject: [PATCH 1227/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 975 ++++------------------------- packages/project/package.json | 6 +- 2 files changed, 110 insertions(+), 871 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index a41895aaf5c..0c36d80fba0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -27,7 +27,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.10", - "semver": "^7.7.1", + "semver": "^7.7.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, @@ -39,10 +39,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.26.0", + "eslint": "^9.27.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.14", + "eslint-plugin-jsdoc": "^50.6.17", "esmock": "^2.7.0", "globals": "^16.1.0", "istanbul-lib-coverage": "^3.2.2", @@ -529,17 +529,20 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.49.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.49.0.tgz", - "integrity": "sha512-xjZTSFgECpb9Ohuk5yMX5RhUEbfeQcuOp8IF60e+wyzWEF0M5xeSgqsfLtvPEX8BIyOX9saZqzuGPmZ8oWc+5Q==", + "version": "0.50.1", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.50.1.tgz", + "integrity": "sha512-fas3qe1hw38JJgU/0m5sDpcrbZGysBeZcMwW5Ws9brYxY64MJyWLXRZCj18keTycT1LFTrFXdSNMS+GRVaU6Hw==", "dev": true, "dependencies": { + "@types/eslint": "^9.6.1", + "@types/estree": "^1.0.6", + "@typescript-eslint/types": "^8.11.0", "comment-parser": "1.4.1", "esquery": "^1.6.0", "jsdoc-type-pratt-parser": "~4.1.0" }, "engines": { - "node": ">=16" + "node": ">=18" } }, "node_modules/@eslint-community/eslint-utils": { @@ -627,9 +630,9 @@ } }, "node_modules/@eslint/core": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", - "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.14.0.tgz", + "integrity": "sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.15" @@ -696,12 +699,15 @@ } }, "node_modules/@eslint/js": { - "version": "9.26.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.26.0.tgz", - "integrity": "sha512-I9XlJawFdSMvWjDt6wksMCrgns5ggLNfFwFvnShsleWruvXM514Qxk8V246efTw+eo9JABvVz+u3q2RiAowKxQ==", + "version": "9.27.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.27.0.tgz", + "integrity": "sha512-G5JD9Tu5HJEu4z2Uo4aHY2sLV64B7CDMXxFzqzjl3NKd6RVzSXNoE80jk7Y0lJkTTkjiIhBAqmlYwjuBY3tvpA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" } }, "node_modules/@eslint/object-schema": { @@ -714,12 +720,12 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.8.tgz", - "integrity": "sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.1.tgz", + "integrity": "sha512-0J+zgWxHN+xXONWIyPWKFMgVuJoZuGiIFu8yxk7RJjxkzpGmyja5wRFqZIVtjDVOQpV+Rw0iOAjYPE2eQyjr0w==", "dev": true, "dependencies": { - "@eslint/core": "^0.13.0", + "@eslint/core": "^0.14.0", "levn": "^0.4.1" }, "engines": { @@ -987,27 +993,6 @@ "node": ">=18" } }, - "node_modules/@modelcontextprotocol/sdk": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.11.1.tgz", - "integrity": "sha512-9LfmxKTb1v+vUS1/emSk1f5ePmTLkb9Le9AxOB5T0XM59EUumwcS45z05h7aiZx3GI0Bl7mjb3FMEglYj+acuQ==", - "dev": true, - "dependencies": { - "content-type": "^1.0.5", - "cors": "^2.8.5", - "cross-spawn": "^7.0.3", - "eventsource": "^3.0.2", - "express": "^5.0.1", - "express-rate-limit": "^7.5.0", - "pkce-challenge": "^5.0.0", - "raw-body": "^3.0.0", - "zod": "^3.23.8", - "zod-to-json-schema": "^3.24.1" - }, - "engines": { - "node": ">=18" - } - }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1266,9 +1251,9 @@ } }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.4.1.tgz", - "integrity": "sha512-7MJXQhIm7dWF9zo7rRtMYh8d2gSnc3+JddeQOTIg6gUN7FjcuckZ9EwGq+ReeQtbbl3Tbf5YqRrWxA1DMfIn+w==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.4.2.tgz", + "integrity": "sha512-F2ye+n1INNhqT0MW+LfUEvTUPc/nS70vICJcxorKl7/gV9CO39+EDCw+qHNKEqvsDWk++yGVKCbzK1qLPvmC8g==", "engines": { "node": "^18.17.0 || >=20.5.0" } @@ -1389,6 +1374,16 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, "node_modules/@types/estree": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", @@ -1440,6 +1435,19 @@ "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", "dev": true }, + "node_modules/@typescript-eslint/types": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz", + "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, "node_modules/@ui5/fs": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-4.0.1.tgz", @@ -1489,9 +1497,9 @@ } }, "node_modules/@vercel/nft": { - "version": "0.29.2", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.29.2.tgz", - "integrity": "sha512-A/Si4mrTkQqJ6EXJKv5EYCDQ3NL6nJXxG8VGXePsaiQigsomHYQC9xSpX8qGk7AEZk4b1ssbYIqJ0ISQQ7bfcA==", + "version": "0.29.3", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.29.3.tgz", + "integrity": "sha512-aVV0E6vJpuvImiMwU1/5QKkw2N96BRFE7mBYGS7FhXUoS6V7SarQ+8tuj33o7ofECz8JtHpmQ9JW+oVzOoB7MA==", "dev": true, "dependencies": { "@mapbox/node-pre-gyp": "^2.0.0", @@ -1515,59 +1523,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz", - "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==", + "version": "3.5.14", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.14.tgz", + "integrity": "sha512-k7qMHMbKvoCXIxPhquKQVw3Twid3Kg4s7+oYURxLGRd56LiuHJVrvFKI4fm2AM3c8apqODPfVJGoh8nePbXMRA==", "dev": true, "dependencies": { - "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.13", + "@babel/parser": "^7.27.2", + "@vue/shared": "3.5.14", "entities": "^4.5.0", "estree-walker": "^2.0.2", - "source-map-js": "^1.2.0" + "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz", - "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==", + "version": "3.5.14", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.14.tgz", + "integrity": "sha512-1aOCSqxGOea5I80U2hQJvXYpPm/aXo95xL/m/mMhgyPUsKe9jhjwWpziNAw7tYRnbz1I61rd9Mld4W9KmmRoug==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.13", - "@vue/shared": "3.5.13" + "@vue/compiler-core": "3.5.14", + "@vue/shared": "3.5.14" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz", - "integrity": "sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==", + "version": "3.5.14", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.14.tgz", + "integrity": "sha512-9T6m/9mMr81Lj58JpzsiSIjBgv2LiVoWjIVa7kuXHICUi8LiDSIotMpPRXYJsXKqyARrzjT24NAwttrMnMaCXA==", "dev": true, "dependencies": { - "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.13", - "@vue/compiler-dom": "3.5.13", - "@vue/compiler-ssr": "3.5.13", - "@vue/shared": "3.5.13", + "@babel/parser": "^7.27.2", + "@vue/compiler-core": "3.5.14", + "@vue/compiler-dom": "3.5.14", + "@vue/compiler-ssr": "3.5.14", + "@vue/shared": "3.5.14", "estree-walker": "^2.0.2", - "magic-string": "^0.30.11", - "postcss": "^8.4.48", - "source-map-js": "^1.2.0" + "magic-string": "^0.30.17", + "postcss": "^8.5.3", + "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz", - "integrity": "sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==", + "version": "3.5.14", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.14.tgz", + "integrity": "sha512-Y0G7PcBxr1yllnHuS/NxNCSPWnRGH4Ogrp0tsLA5QemDZuJLs99YjAKQ7KqkHE0vCg4QTKlQzXLKCMF7WPSl7Q==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.13", - "@vue/shared": "3.5.13" + "@vue/compiler-dom": "3.5.14", + "@vue/shared": "3.5.14" } }, "node_modules/@vue/shared": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz", - "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==", + "version": "3.5.14", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.14.tgz", + "integrity": "sha512-oXTwNxVfc9EtP1zzXAlSlgARLXNC84frFYkS0HHz0h3E4WZSP9sywqjqzGCP9Y34M8ipNmd380pVgmMuwELDyQ==", "dev": true }, "node_modules/abbrev": { @@ -1590,19 +1598,6 @@ "node": ">=6.5" } }, - "node_modules/accepts": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz", - "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==", - "dev": true, - "dependencies": { - "mime-types": "^3.0.0", - "negotiator": "^1.0.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/acorn": { "version": "8.14.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", @@ -1992,26 +1987,6 @@ "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", "dev": true }, - "node_modules/body-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.2.0.tgz", - "integrity": "sha512-02qvAaxv8tp7fBa/mw1ga98OGm+eCbqzJOKoRt70sLmfEEi+jyBYVTDGfCL/k06/4EMk/z01gCe7HoCH/f2LTg==", - "dev": true, - "dependencies": { - "bytes": "^3.1.2", - "content-type": "^1.0.5", - "debug": "^4.4.0", - "http-errors": "^2.0.0", - "iconv-lite": "^0.6.3", - "on-finished": "^2.4.1", - "qs": "^6.14.0", - "raw-body": "^3.0.0", - "type-is": "^2.0.0" - }, - "engines": { - "node": ">=18" - } - }, "node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -2102,15 +2077,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/cacache": { "version": "19.0.1", "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", @@ -2195,35 +2161,6 @@ "typedarray-to-buffer": "^3.1.5" } }, - "node_modules/call-bind-apply-helpers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", - "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/call-bound": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "dev": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "get-intrinsic": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/callsite": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", @@ -2255,9 +2192,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001717", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001717.tgz", - "integrity": "sha512-auPpttCq6BDEG8ZAuHJIplGw6GODhjw+/11e7IjpnYCxZcW/ONgPs0KVBJ0d1bY3e2+7PRe5RCLyP+PfwVgkYw==", + "version": "1.0.30001718", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz", + "integrity": "sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw==", "dev": true, "funding": [ { @@ -2811,27 +2748,6 @@ "node": "^14.18.0 || >=16.10.0" } }, - "node_modules/content-disposition": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.0.0.tgz", - "integrity": "sha512-Au9nRL8VNUut/XSzbQA38+M78dzP4D+eqg3gfJHMIHHYa3bg067xj1KxMUWj+VULbiZMowKngFFbKczUrNJ1mg==", - "dev": true, - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -2847,43 +2763,12 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/cookie": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", - "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz", - "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==", - "dev": true, - "engines": { - "node": ">=6.6.0" - } - }, "node_modules/core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, - "node_modules/cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, - "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/cosmiconfig": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", @@ -3002,9 +2887,9 @@ } }, "node_modules/debug": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", - "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", "dependencies": { "ms": "^2.1.3" }, @@ -3288,15 +3173,6 @@ "node": ">=10" } }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/deps-regex": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.2.0.tgz", @@ -3339,20 +3215,6 @@ "@jsdoc/salty": "^0.2.1" } }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "dev": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -3397,16 +3259,10 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, "node_modules/electron-to-chromium": { - "version": "1.5.151", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.151.tgz", - "integrity": "sha512-Rl6uugut2l9sLojjS4H4SAr3A4IgACMLgpuEMPYCVcKydzfyPrn5absNRju38IhQOf/NwjJY8OGWjlteqYeBCA==", + "version": "1.5.155", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.155.tgz", + "integrity": "sha512-ps5KcGGmwL8VaeJlvlDlu4fORQpv3+GIcF5I3f9tUKUlJ/wsysh6HU8P5L1XWRYeXfA0oJd4PyM8ds8zTFf6Ng==", "dev": true }, "node_modules/emittery": { @@ -3426,15 +3282,6 @@ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, - "node_modules/encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/encoding": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", @@ -3490,36 +3337,6 @@ "is-arrayish": "^0.2.1" } }, - "node_modules/es-define-property": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-object-atoms": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", - "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/es6-error": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", @@ -3535,12 +3352,6 @@ "node": ">=6" } }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, "node_modules/escape-string-regexp": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", @@ -3553,23 +3364,22 @@ } }, "node_modules/eslint": { - "version": "9.26.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.26.0.tgz", - "integrity": "sha512-Hx0MOjPh6uK9oq9nVsATZKE/Wlbai7KFjfCuw9UHaguDW3x+HF0O5nIi3ud39TWgrTjTO5nHxmL3R1eANinWHQ==", + "version": "9.27.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.27.0.tgz", + "integrity": "sha512-ixRawFQuMB9DZ7fjU3iGGganFDp3+45bPOdaRurcFHSXO1e/sYwUX/FtQZpLZJR6SjMoJH8hR2pPEAfDyCoU2Q==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.20.0", "@eslint/config-helpers": "^0.2.1", - "@eslint/core": "^0.13.0", + "@eslint/core": "^0.14.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.26.0", - "@eslint/plugin-kit": "^0.2.8", + "@eslint/js": "9.27.0", + "@eslint/plugin-kit": "^0.3.1", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.2", - "@modelcontextprotocol/sdk": "^1.8.0", "@types/estree": "^1.0.6", "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", @@ -3593,8 +3403,7 @@ "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "zod": "^3.24.2" + "optionator": "^0.9.3" }, "bin": { "eslint": "bin/eslint.js" @@ -3678,12 +3487,12 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.14", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.14.tgz", - "integrity": "sha512-JUudvooQbUx3iB8n/MzXMOV/VtaXq7xL4CeXhYryinr8osck7nV6fE2/xUXTiH3epPXcvq6TE3HQfGQuRHErTQ==", + "version": "50.6.17", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.17.tgz", + "integrity": "sha512-hq+VQylhd12l8qjexyriDsejZhqiP33WgMTy2AmaGZ9+MrMWVqPECsM87GPxgHfQn0zw+YTuhqjUfk1f+q67aQ==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.49.0", + "@es-joy/jsdoccomment": "~0.50.1", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", "debug": "^4.3.6", @@ -4017,15 +3826,6 @@ "node": ">=0.10.0" } }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/event-target-shim": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", @@ -4050,27 +3850,6 @@ "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", "dev": true }, - "node_modules/eventsource": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz", - "integrity": "sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==", - "dev": true, - "dependencies": { - "eventsource-parser": "^3.0.1" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/eventsource-parser": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.1.tgz", - "integrity": "sha512-VARTJ9CYeuQYb0pZEPbzi740OWFgpHe7AYJ2WFZVnUDUQp5Dk2yJUgF36YsZ81cOyxT0QxmXD2EQpapAouzWVA==", - "dev": true, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", @@ -4088,63 +3867,6 @@ "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz", "integrity": "sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==" }, - "node_modules/express": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/express/-/express-5.1.0.tgz", - "integrity": "sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA==", - "dev": true, - "dependencies": { - "accepts": "^2.0.0", - "body-parser": "^2.2.0", - "content-disposition": "^1.0.0", - "content-type": "^1.0.5", - "cookie": "^0.7.1", - "cookie-signature": "^1.2.1", - "debug": "^4.4.0", - "encodeurl": "^2.0.0", - "escape-html": "^1.0.3", - "etag": "^1.8.1", - "finalhandler": "^2.1.0", - "fresh": "^2.0.0", - "http-errors": "^2.0.0", - "merge-descriptors": "^2.0.0", - "mime-types": "^3.0.0", - "on-finished": "^2.4.1", - "once": "^1.4.0", - "parseurl": "^1.3.3", - "proxy-addr": "^2.0.7", - "qs": "^6.14.0", - "range-parser": "^1.2.1", - "router": "^2.2.0", - "send": "^1.1.0", - "serve-static": "^2.2.0", - "statuses": "^2.0.1", - "type-is": "^2.0.1", - "vary": "^1.1.2" - }, - "engines": { - "node": ">= 18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" - } - }, - "node_modules/express-rate-limit": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-7.5.0.tgz", - "integrity": "sha512-eB5zbQh5h+VenMPM3fh+nw1YExi5nMr6HUCR62ELSP11huvxm/Uir1H1QEyTkk5QX6A58pX6NmaTMceKZ0Eodg==", - "dev": true, - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://github.com/sponsors/express-rate-limit" - }, - "peerDependencies": { - "express": "^4.11 || 5 || ^5.0.0-beta.1" - } - }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -4263,23 +3985,6 @@ "node": ">=8" } }, - "node_modules/finalhandler": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.0.tgz", - "integrity": "sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q==", - "dev": true, - "dependencies": { - "debug": "^4.4.0", - "encodeurl": "^2.0.0", - "escape-html": "^1.0.3", - "on-finished": "^2.4.1", - "parseurl": "^1.3.3", - "statuses": "^2.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/find-cache-dir": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", @@ -4406,24 +4111,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz", - "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/fromentries": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", @@ -4513,30 +4200,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/get-intrinsic": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", - "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", - "dev": true, - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "function-bind": "^1.1.2", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "math-intrinsics": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", @@ -4546,19 +4209,6 @@ "node": ">=8.0.0" } }, - "node_modules/get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "dev": true, - "dependencies": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/get-stdin": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", @@ -4705,18 +4355,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", @@ -4731,18 +4369,6 @@ "node": ">=8" } }, - "node_modules/has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/hasha": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", @@ -4809,22 +4435,6 @@ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==" }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/http-proxy-agent": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", @@ -4853,7 +4463,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "devOptional": true, + "optional": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -5015,15 +4625,6 @@ "node": ">= 12" } }, - "node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/irregular-plurals": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.5.0.tgz", @@ -5824,15 +5425,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/md5-hex": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.1.tgz", @@ -5851,15 +5443,6 @@ "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", "dev": true }, - "node_modules/media-typer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz", - "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/memoize": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/memoize/-/memoize-10.1.0.tgz", @@ -5887,18 +5470,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/merge-descriptors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz", - "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -5936,27 +5507,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/mime-db": { - "version": "1.54.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", - "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.1.tgz", - "integrity": "sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA==", - "dev": true, - "dependencies": { - "mime-db": "^1.54.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/mimic-function": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", @@ -6717,39 +6267,6 @@ "node": ">=6" } }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", - "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -7092,15 +6609,6 @@ "integrity": "sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==", "dev": true }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -7152,15 +6660,6 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, - "node_modules/path-to-regexp": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.2.0.tgz", - "integrity": "sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==", - "dev": true, - "engines": { - "node": ">=16" - } - }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", @@ -7199,15 +6698,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/pkce-challenge": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.0.tgz", - "integrity": "sha512-ueGLflrrnvwB3xuo/uGob5pd5FN7l0MsLf0Z87o/UQmRtwjvfylfc9MurIxRAWywCYTgrvpXBcqjV4OfCYGCIQ==", - "dev": true, - "engines": { - "node": ">=16.20.0" - } - }, "node_modules/pkg-dir": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", @@ -7418,19 +6908,6 @@ "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", "dev": true }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/punycode": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", @@ -7448,21 +6925,6 @@ "node": ">=6" } }, - "node_modules/qs": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", - "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", - "dev": true, - "dependencies": { - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -7493,30 +6955,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.0.tgz", - "integrity": "sha512-RmkhL8CAyCRPXCE28MMH0z2PNWQBNk2Q09ZdxM9IOOXwxwZbN+qbWaatPkdkWIKL2ZVDImrN/pK5HTRz2PcS4g==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.6.3", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/read-package-up": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/read-package-up/-/read-package-up-11.0.0.tgz", @@ -7865,22 +7303,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/router": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz", - "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==", - "dev": true, - "dependencies": { - "debug": "^4.4.0", - "depd": "^2.0.0", - "is-promise": "^4.0.0", - "parseurl": "^1.3.3", - "path-to-regexp": "^8.0.0" - }, - "engines": { - "node": ">= 18" - } - }, "node_modules/run-applescript": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz", @@ -7939,7 +7361,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "devOptional": true + "optional": true }, "node_modules/sax": { "version": "1.4.1", @@ -7947,9 +7369,9 @@ "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" }, "node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "bin": { "semver": "bin/semver.js" }, @@ -7963,28 +7385,6 @@ "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", "dev": true }, - "node_modules/send": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/send/-/send-1.2.0.tgz", - "integrity": "sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==", - "dev": true, - "dependencies": { - "debug": "^4.3.5", - "encodeurl": "^2.0.0", - "escape-html": "^1.0.3", - "etag": "^1.8.1", - "fresh": "^2.0.0", - "http-errors": "^2.0.0", - "mime-types": "^3.0.1", - "ms": "^2.1.3", - "on-finished": "^2.4.1", - "range-parser": "^1.2.1", - "statuses": "^2.0.1" - }, - "engines": { - "node": ">= 18" - } - }, "node_modules/serialize-error": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", @@ -8012,33 +7412,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/serve-static": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.0.tgz", - "integrity": "sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ==", - "dev": true, - "dependencies": { - "encodeurl": "^2.0.0", - "escape-html": "^1.0.3", - "parseurl": "^1.3.3", - "send": "^1.2.0" - }, - "engines": { - "node": ">= 18" - } - }, "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "dev": true }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -8058,78 +7437,6 @@ "node": ">=8" } }, - "node_modules/side-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3", - "side-channel-list": "^1.0.0", - "side-channel-map": "^1.0.1", - "side-channel-weakmap": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-weakmap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "dev": true, - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3", - "side-channel-map": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/signal-exit": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", @@ -8469,15 +7776,6 @@ "node": ">=8" } }, - "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -9023,15 +8321,6 @@ "node": ">=8.0" } }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, "node_modules/token-types": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.1.tgz", @@ -9098,20 +8387,6 @@ "node": ">=8" } }, - "node_modules/type-is": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.0.1.tgz", - "integrity": "sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==", - "dev": true, - "dependencies": { - "content-type": "^1.0.5", - "media-typer": "^1.1.0", - "mime-types": "^3.0.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -9181,15 +8456,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/update-browserslist-db": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", @@ -9269,15 +8535,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/walk-up-path": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz", @@ -9573,24 +8830,6 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } - }, - "node_modules/zod": { - "version": "3.24.4", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.4.tgz", - "integrity": "sha512-OdqJE9UDRPwWsrHjLN2F8bPxvwJBK22EHLWtanu0LSYr5YqzsaaW3RMgmjwr8Rypg5k+meEJdSPXJZXE/yqOMg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - }, - "node_modules/zod-to-json-schema": { - "version": "3.24.5", - "resolved": "https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.24.5.tgz", - "integrity": "sha512-/AuWwMP+YqiPbsJx5D6TfgRTc4kTLjsh5SOcd4bLsfUg2RcEXrFMJl1DGgdHy2aCfsIA/cr/1JM0xcB2GZji8g==", - "dev": true, - "peerDependencies": { - "zod": "^3.24.1" - } } } } diff --git a/packages/project/package.json b/packages/project/package.json index 73198fc145a..435bd6cc331 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -138,7 +138,7 @@ "read-package-up": "^11.0.0", "read-pkg": "^9.0.1", "resolve": "^1.22.10", - "semver": "^7.7.1", + "semver": "^7.7.2", "xml2js": "^0.6.2", "yesno": "^0.4.0" }, @@ -158,10 +158,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.26.0", + "eslint": "^9.27.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.14", + "eslint-plugin-jsdoc": "^50.6.17", "esmock": "^2.7.0", "globals": "^16.1.0", "istanbul-lib-coverage": "^3.2.2", From 5f2328d399363197d0a8583deeb6135fd6910233 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 19 May 2025 08:30:35 +0000 Subject: [PATCH 1228/1272] [ui5-project][INTERNAL] Bump @ui5/builder from to Changelog of this version: https://github.com/SAP/ui5-builder/blob/v/CHANGELOG.md --- packages/project/package-lock.json | 2 +- packages/project/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0c36d80fba0..d742d14cee0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -62,7 +62,7 @@ "npm": ">= 8" }, "peerDependencies": { - "@ui5/builder": "^4.0.6" + "@ui5/builder": "^4.0.7" }, "peerDependenciesMeta": { "@ui5/builder": { diff --git a/packages/project/package.json b/packages/project/package.json index 435bd6cc331..78f9707fabc 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -143,7 +143,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^4.0.6" + "@ui5/builder": "^4.0.7" }, "peerDependenciesMeta": { "@ui5/builder": { From f0da5fce80b591037d729f5008afd0c5f8a24ea9 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 25 May 2025 02:20:08 +0000 Subject: [PATCH 1229/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 35 ++++++++++-------------------- 1 file changed, 12 insertions(+), 23 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d742d14cee0..edd560bba67 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -529,12 +529,11 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.50.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.50.1.tgz", - "integrity": "sha512-fas3qe1hw38JJgU/0m5sDpcrbZGysBeZcMwW5Ws9brYxY64MJyWLXRZCj18keTycT1LFTrFXdSNMS+GRVaU6Hw==", + "version": "0.50.2", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.50.2.tgz", + "integrity": "sha512-YAdE/IJSpwbOTiaURNCKECdAwqrJuFiZhylmesBcIRawtYKnBR2wxPhoIewMg+Yu+QuYvHfJNReWpoxGBKOChA==", "dev": true, "dependencies": { - "@types/eslint": "^9.6.1", "@types/estree": "^1.0.6", "@typescript-eslint/types": "^8.11.0", "comment-parser": "1.4.1", @@ -1143,9 +1142,9 @@ } }, "node_modules/@npmcli/package-json": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.1.1.tgz", - "integrity": "sha512-d5qimadRAUCO4A/Txw71VM7UrRZzV+NPclxz/dc+M6B2oYwjWTjqh8HA/sGQgs9VZuJ6I/P7XIAlJvgrl27ZOw==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-6.2.0.tgz", + "integrity": "sha512-rCNLSB/JzNvot0SEyXqWZ7tX2B5dD2a1br2Dp0vSYVo5jh8Z0EZ7lS9TsZ1UtziddB1UfNUaMCc538/HztnJGA==", "dependencies": { "@npmcli/git": "^6.0.0", "glob": "^10.2.2", @@ -1374,16 +1373,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@types/eslint": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", - "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, "node_modules/@types/estree": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", @@ -3260,9 +3249,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.155", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.155.tgz", - "integrity": "sha512-ps5KcGGmwL8VaeJlvlDlu4fORQpv3+GIcF5I3f9tUKUlJ/wsysh6HU8P5L1XWRYeXfA0oJd4PyM8ds8zTFf6Ng==", + "version": "1.5.157", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.157.tgz", + "integrity": "sha512-/0ybgsQd1muo8QlnuTpKwtl0oX5YMlUGbm8xyqgDU00motRkKFFbUJySAQBWcY79rVqNLWIWa87BGVGClwAB2w==", "dev": true }, "node_modules/emittery": { @@ -7249,9 +7238,9 @@ } }, "node_modules/rimraf/node_modules/jackspeak": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.0.tgz", - "integrity": "sha512-9DDdhb5j6cpeitCbvLO7n7J4IxnbM6hoF6O1g4HQ5TfhvvKN8ywDM7668ZhMHRqVmxqhps/F6syWK2KcPxYlkw==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.1.tgz", + "integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==", "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" From c4d9375d7f2dc1f27b9d27e30a386dfcd739adf5 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 1 Jun 2025 02:20:19 +0000 Subject: [PATCH 1230/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 224 ++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 114 insertions(+), 114 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index edd560bba67..41c2104bda6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,12 +39,12 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.27.0", + "eslint": "^9.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.17", "esmock": "^2.7.0", - "globals": "^16.1.0", + "globals": "^16.2.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -97,30 +97,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.27.2", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.2.tgz", - "integrity": "sha512-TUtMJYRPyUb/9aU8f3K0mjmjf6M9N5Woshn2CS6nqJSeJtTtQcpLUXjGt9vbF8ZGff0El99sWkLgzwW3VXnxZQ==", + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.3.tgz", + "integrity": "sha512-V42wFfx1ymFte+ecf6iXghnnP8kWTO+ZLXIyZq+1LAXHHvTZdVxicn4yiVYdYMGaCO3tmqub11AorKkv+iodqw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.1.tgz", - "integrity": "sha512-IaaGWsQqfsQWVLqMn9OB92MNN7zukfVA4s7KKAI0KfrrDsZ0yhi5uV4baBuLuN7n3vsZpwP8asPPcVwApxvjBQ==", + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.4.tgz", + "integrity": "sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.27.1", - "@babel/helper-compilation-targets": "^7.27.1", - "@babel/helper-module-transforms": "^7.27.1", - "@babel/helpers": "^7.27.1", - "@babel/parser": "^7.27.1", - "@babel/template": "^7.27.1", - "@babel/traverse": "^7.27.1", - "@babel/types": "^7.27.1", + "@babel/generator": "^7.27.3", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-module-transforms": "^7.27.3", + "@babel/helpers": "^7.27.4", + "@babel/parser": "^7.27.4", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.27.4", + "@babel/types": "^7.27.3", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -145,13 +145,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.1.tgz", - "integrity": "sha512-UnJfnIpc/+JO0/+KRVQNGU+y5taA5vCbwN8+azkX6beii/ZF+enZJSOKo11ZSzGJjlNfJHfQtmQT8H+9TXPG2w==", + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.3.tgz", + "integrity": "sha512-xnlJYj5zepml8NXtjkG0WquFUv8RskFqyFcVgTBp5k+NaA/8uw/K+OSVf8AMGw5e9HKP2ETd5xpK5MLZQD6b4Q==", "dev": true, "dependencies": { - "@babel/parser": "^7.27.1", - "@babel/types": "^7.27.1", + "@babel/parser": "^7.27.3", + "@babel/types": "^7.27.3", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -161,12 +161,12 @@ } }, "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.1.tgz", - "integrity": "sha512-WnuuDILl9oOBbKnb4L+DyODx7iC47XfzmNCpTttFsSp6hTG7XZxu60+4IO+2/hPfcGOoKbFiwoI/+zwARbNQow==", + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", "dev": true, "dependencies": { - "@babel/types": "^7.27.1" + "@babel/types": "^7.27.3" }, "engines": { "node": ">=6.9.0" @@ -254,14 +254,14 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.1.tgz", - "integrity": "sha512-9yHn519/8KvTU5BjTVEEeIM3w9/2yXNKoD82JifINImhpKkARMJKPP59kLo+BafpdN5zgNeIcS4jsGDmd3l58g==", + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz", + "integrity": "sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==", "dev": true, "dependencies": { "@babel/helper-module-imports": "^7.27.1", "@babel/helper-validator-identifier": "^7.27.1", - "@babel/traverse": "^7.27.1" + "@babel/traverse": "^7.27.3" }, "engines": { "node": ">=6.9.0" @@ -348,25 +348,25 @@ } }, "node_modules/@babel/helpers": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.1.tgz", - "integrity": "sha512-FCvFTm0sWV8Fxhpp2McP5/W53GPllQ9QeQ7SiqGWjMf/LVG07lFa5+pgK05IRhVwtvafT22KF+ZSnM9I545CvQ==", + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.4.tgz", + "integrity": "sha512-Y+bO6U+I7ZKaM5G5rDUZiYfUvQPUibYmAFe7EnKdnKBbVXDZxvp+MWOH5gYciY0EPk4EScsuFMQBbEfpdRKSCQ==", "dev": true, "dependencies": { - "@babel/template": "^7.27.1", - "@babel/types": "^7.27.1" + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.3" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.27.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.2.tgz", - "integrity": "sha512-QYLs8299NA7WM/bZAdp+CviYYkVoYXlDW2rzliy3chxd1PQjej7JORuMJDJXJUb9g0TT+B99EwaVLKmX+sPXWw==", + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.4.tgz", + "integrity": "sha512-BRmLHGwpUqLFR2jzx9orBuX/ABDkj2jLKOXrHDTN2aOKL+jFDDKaRNo9nyYsIl9h/UE/7lMKdDjKQQyxKKDZ7g==", "dev": true, "dependencies": { - "@babel/types": "^7.27.1" + "@babel/types": "^7.27.3" }, "bin": { "parser": "bin/babel-parser.js" @@ -489,16 +489,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.1.tgz", - "integrity": "sha512-ZCYtZciz1IWJB4U61UPu4KEaqyfj+r5T1Q5mqPo+IBpcG9kHv30Z0aD8LXPgC1trYa6rK0orRyAhqUgk4MjmEg==", + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.4.tgz", + "integrity": "sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.27.1", - "@babel/parser": "^7.27.1", - "@babel/template": "^7.27.1", - "@babel/types": "^7.27.1", + "@babel/generator": "^7.27.3", + "@babel/parser": "^7.27.4", + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.3", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -516,9 +516,9 @@ } }, "node_modules/@babel/types": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.1.tgz", - "integrity": "sha512-+EzkxvLNfiUeKMgy/3luqfsCWFRXLb7U6wNQTk60tovuckwB15B191tJWvpp4HjiQWdJkCxO3Wbvc6jlk3Xb2Q==", + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.3.tgz", + "integrity": "sha512-Y1GkI4ktrtvmawoSq+4FCVHNryea6uR+qUQy0AGxLSsjCX0nVmkYQMBLHDkXZuo5hGx7eYdnIaslsdBFm7zbUw==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.27.1", @@ -698,9 +698,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.27.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.27.0.tgz", - "integrity": "sha512-G5JD9Tu5HJEu4z2Uo4aHY2sLV64B7CDMXxFzqzjl3NKd6RVzSXNoE80jk7Y0lJkTTkjiIhBAqmlYwjuBY3tvpA==", + "version": "9.28.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.28.0.tgz", + "integrity": "sha512-fnqSjGWd/CoIp4EXIxWVK/sHA6DOHN4+8Ix2cX5ycOY7LG0UY8nHCU5pIp2eaE1Mc7Qd8kHspYNzYXT2ojPLzg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1425,9 +1425,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz", - "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==", + "version": "8.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.33.0.tgz", + "integrity": "sha512-DKuXOKpM5IDT1FA2g9x9x1Ug81YuKrzf4mYX8FAVSNu5Wo/LELHWQyM1pQaDkI42bX15PWl0vNPt1uGiIFUOpg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1486,9 +1486,9 @@ } }, "node_modules/@vercel/nft": { - "version": "0.29.3", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.29.3.tgz", - "integrity": "sha512-aVV0E6vJpuvImiMwU1/5QKkw2N96BRFE7mBYGS7FhXUoS6V7SarQ+8tuj33o7ofECz8JtHpmQ9JW+oVzOoB7MA==", + "version": "0.29.4", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.29.4.tgz", + "integrity": "sha512-6lLqMNX3TuycBPABycx7A9F1bHQR7kiQln6abjFbPrf5C/05qHM9M5E4PeTE59c7z8g6vHnx1Ioihb2AQl7BTA==", "dev": true, "dependencies": { "@mapbox/node-pre-gyp": "^2.0.0", @@ -1512,39 +1512,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.14.tgz", - "integrity": "sha512-k7qMHMbKvoCXIxPhquKQVw3Twid3Kg4s7+oYURxLGRd56LiuHJVrvFKI4fm2AM3c8apqODPfVJGoh8nePbXMRA==", + "version": "3.5.16", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.16.tgz", + "integrity": "sha512-AOQS2eaQOaaZQoL1u+2rCJIKDruNXVBZSiUD3chnUrsoX5ZTQMaCvXlWNIfxBJuU15r1o7+mpo5223KVtIhAgQ==", "dev": true, "dependencies": { "@babel/parser": "^7.27.2", - "@vue/shared": "3.5.14", + "@vue/shared": "3.5.16", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.14.tgz", - "integrity": "sha512-1aOCSqxGOea5I80U2hQJvXYpPm/aXo95xL/m/mMhgyPUsKe9jhjwWpziNAw7tYRnbz1I61rd9Mld4W9KmmRoug==", + "version": "3.5.16", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.16.tgz", + "integrity": "sha512-SSJIhBr/teipXiXjmWOVWLnxjNGo65Oj/8wTEQz0nqwQeP75jWZ0n4sF24Zxoht1cuJoWopwj0J0exYwCJ0dCQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.14", - "@vue/shared": "3.5.14" + "@vue/compiler-core": "3.5.16", + "@vue/shared": "3.5.16" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.14.tgz", - "integrity": "sha512-9T6m/9mMr81Lj58JpzsiSIjBgv2LiVoWjIVa7kuXHICUi8LiDSIotMpPRXYJsXKqyARrzjT24NAwttrMnMaCXA==", + "version": "3.5.16", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.16.tgz", + "integrity": "sha512-rQR6VSFNpiinDy/DVUE0vHoIDUF++6p910cgcZoaAUm3POxgNOOdS/xgoll3rNdKYTYPnnbARDCZOyZ+QSe6Pw==", "dev": true, "dependencies": { "@babel/parser": "^7.27.2", - "@vue/compiler-core": "3.5.14", - "@vue/compiler-dom": "3.5.14", - "@vue/compiler-ssr": "3.5.14", - "@vue/shared": "3.5.14", + "@vue/compiler-core": "3.5.16", + "@vue/compiler-dom": "3.5.16", + "@vue/compiler-ssr": "3.5.16", + "@vue/shared": "3.5.16", "estree-walker": "^2.0.2", "magic-string": "^0.30.17", "postcss": "^8.5.3", @@ -1552,19 +1552,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.14.tgz", - "integrity": "sha512-Y0G7PcBxr1yllnHuS/NxNCSPWnRGH4Ogrp0tsLA5QemDZuJLs99YjAKQ7KqkHE0vCg4QTKlQzXLKCMF7WPSl7Q==", + "version": "3.5.16", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.16.tgz", + "integrity": "sha512-d2V7kfxbdsjrDSGlJE7my1ZzCXViEcqN6w14DOsDrUCHEA6vbnVCpRFfrc4ryCP/lCKzX2eS1YtnLE/BuC9f/A==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.14", - "@vue/shared": "3.5.14" + "@vue/compiler-dom": "3.5.16", + "@vue/shared": "3.5.16" } }, "node_modules/@vue/shared": { - "version": "3.5.14", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.14.tgz", - "integrity": "sha512-oXTwNxVfc9EtP1zzXAlSlgARLXNC84frFYkS0HHz0h3E4WZSP9sywqjqzGCP9Y34M8ipNmd380pVgmMuwELDyQ==", + "version": "3.5.16", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.16.tgz", + "integrity": "sha512-c/0fWy3Jw6Z8L9FmTyYfkpM5zklnqqa9+a6dz3DvONRKW2NEbh46BP0FHuLFSWi2TnQEtp91Z6zOWNrU6QiyPg==", "dev": true }, "node_modules/abbrev": { @@ -1996,9 +1996,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.5.tgz", - "integrity": "sha512-FDToo4Wo82hIdgc1CQ+NQD0hEhmpPjrZ3hiUgwgOG6IuTdlpr8jdjyG24P6cNP1yJpTLzS5OcGgSw0xmDU1/Tw==", + "version": "4.25.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.0.tgz", + "integrity": "sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==", "dev": true, "funding": [ { @@ -2015,8 +2015,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001716", - "electron-to-chromium": "^1.5.149", + "caniuse-lite": "^1.0.30001718", + "electron-to-chromium": "^1.5.160", "node-releases": "^2.0.19", "update-browserslist-db": "^1.1.3" }, @@ -2181,9 +2181,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001718", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz", - "integrity": "sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw==", + "version": "1.0.30001720", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001720.tgz", + "integrity": "sha512-Ec/2yV2nNPwb4DnTANEV99ZWwm3ZWfdlfkQbWSDDt+PsXEVYwlhPH8tdMaPunYTKKmz7AnHi2oNEi1GcmKCD8g==", "dev": true, "funding": [ { @@ -3249,9 +3249,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.157", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.157.tgz", - "integrity": "sha512-/0ybgsQd1muo8QlnuTpKwtl0oX5YMlUGbm8xyqgDU00motRkKFFbUJySAQBWcY79rVqNLWIWa87BGVGClwAB2w==", + "version": "1.5.161", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.161.tgz", + "integrity": "sha512-hwtetwfKNZo/UlwHIVBlKZVdy7o8bIZxxKs0Mv/ROPiQQQmDgdm5a+KvKtBsxM8ZjFzTaCeLoodZ8jiBE3o9rA==", "dev": true }, "node_modules/emittery": { @@ -3353,9 +3353,9 @@ } }, "node_modules/eslint": { - "version": "9.27.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.27.0.tgz", - "integrity": "sha512-ixRawFQuMB9DZ7fjU3iGGganFDp3+45bPOdaRurcFHSXO1e/sYwUX/FtQZpLZJR6SjMoJH8hR2pPEAfDyCoU2Q==", + "version": "9.28.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.28.0.tgz", + "integrity": "sha512-ocgh41VhRlf9+fVpe7QKzwLj9c92fDiqOj8Y3Sd4/ZmVA4Btx4PlUYPq4pp9JDyupkf1upbEXecxL2mwNV7jPQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3364,7 +3364,7 @@ "@eslint/config-helpers": "^0.2.1", "@eslint/core": "^0.14.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.27.0", + "@eslint/js": "9.28.0", "@eslint/plugin-kit": "^0.3.1", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -3902,9 +3902,9 @@ } }, "node_modules/fdir": { - "version": "6.4.4", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.4.tgz", - "integrity": "sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==", + "version": "6.4.5", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.5.tgz", + "integrity": "sha512-4BG7puHpVsIYxZUbiUE3RqGloLaSSwzYie5jvasC4LWuBWzZawynvYouhjbQKw2JuIGYdm0DzIxl8iVidKlUEw==", "peerDependencies": { "picomatch": "^3 || ^4" }, @@ -4295,9 +4295,9 @@ } }, "node_modules/globals": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-16.1.0.tgz", - "integrity": "sha512-aibexHNbb/jiUSObBgpHLj+sIuUmJnYcgXBlrfsiDZ9rt4aF2TFRbyLgZ2iFQuVZ1K5Mx3FVkbKRSgKrbK3K2g==", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.2.0.tgz", + "integrity": "sha512-O+7l9tPdHCU320IigZZPj5zmRCFG9xHmx9cU8FqU2Rp+JN714seHV+2S9+JslCpY4gJwU2vOGox0wzgae/MCEg==", "dev": true, "engines": { "node": ">=18" @@ -4326,9 +4326,9 @@ } }, "node_modules/globby/node_modules/ignore": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", - "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", "engines": { "node": ">= 4" } @@ -6785,9 +6785,9 @@ } }, "node_modules/postcss": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", - "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", + "version": "8.5.4", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.4.tgz", + "integrity": "sha512-QSa9EBe+uwlGTFmHsPKokv3B/oEMQZxfqW0QqNCyhpa6mB1afzulwn8hihglqAb2pOw+BJgNlmXQ8la2VeHB7w==", "dev": true, "funding": [ { @@ -6804,7 +6804,7 @@ } ], "dependencies": { - "nanoid": "^3.3.8", + "nanoid": "^3.3.11", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, @@ -8285,9 +8285,9 @@ } }, "node_modules/tinyglobby": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.13.tgz", - "integrity": "sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==", + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz", + "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==", "dependencies": { "fdir": "^6.4.4", "picomatch": "^4.0.2" diff --git a/packages/project/package.json b/packages/project/package.json index 78f9707fabc..70901b2315e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,12 +158,12 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.27.0", + "eslint": "^9.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.6.17", "esmock": "^2.7.0", - "globals": "^16.1.0", + "globals": "^16.2.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From 1b41050e7607aab3d00951aefab83abbf7dc196f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Mon, 2 Jun 2025 05:40:33 +0000 Subject: [PATCH 1231/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 41c2104bda6..348f83edb08 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^9.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.17", + "eslint-plugin-jsdoc": "^50.7.1", "esmock": "^2.7.0", "globals": "^16.2.0", "istanbul-lib-coverage": "^3.2.2", @@ -3476,20 +3476,20 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.17", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.17.tgz", - "integrity": "sha512-hq+VQylhd12l8qjexyriDsejZhqiP33WgMTy2AmaGZ9+MrMWVqPECsM87GPxgHfQn0zw+YTuhqjUfk1f+q67aQ==", + "version": "50.7.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.7.1.tgz", + "integrity": "sha512-XBnVA5g2kUVokTNUiE1McEPse5n9/mNUmuJcx52psT6zBs2eVcXSmQBvjfa7NZdfLVSy3u1pEDDUxoxpwy89WA==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.50.1", + "@es-joy/jsdoccomment": "~0.50.2", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", - "debug": "^4.3.6", + "debug": "^4.4.1", "escape-string-regexp": "^4.0.0", - "espree": "^10.1.0", + "espree": "^10.3.0", "esquery": "^1.6.0", "parse-imports-exports": "^0.2.4", - "semver": "^7.6.3", + "semver": "^7.7.2", "spdx-expression-parse": "^4.0.0" }, "engines": { diff --git a/packages/project/package.json b/packages/project/package.json index 70901b2315e..ae281ce910d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^9.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.6.17", + "eslint-plugin-jsdoc": "^50.7.1", "esmock": "^2.7.0", "globals": "^16.2.0", "istanbul-lib-coverage": "^3.2.2", From 2ad100d8d9dbc68d634deb42ac287992dc5fad20 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 8 Jun 2025 02:20:13 +0000 Subject: [PATCH 1232/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 78 +++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 40 insertions(+), 40 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 348f83edb08..f99790b18c6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -34,7 +34,7 @@ "devDependencies": { "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.3.0", - "ava": "^6.3.0", + "ava": "^6.4.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", @@ -97,9 +97,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.3.tgz", - "integrity": "sha512-V42wFfx1ymFte+ecf6iXghnnP8kWTO+ZLXIyZq+1LAXHHvTZdVxicn4yiVYdYMGaCO3tmqub11AorKkv+iodqw==", + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.5.tgz", + "integrity": "sha512-KiRAp/VoJaWkkte84TvUd9qjdbZAdiqyvMxrGl1N6vzFogKmaLgoM3L1kgtLicp2HP5fBJS8JrZKLVIZGVJAVg==", "dev": true, "engines": { "node": ">=6.9.0" @@ -145,12 +145,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.3.tgz", - "integrity": "sha512-xnlJYj5zepml8NXtjkG0WquFUv8RskFqyFcVgTBp5k+NaA/8uw/K+OSVf8AMGw5e9HKP2ETd5xpK5MLZQD6b4Q==", + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.5.tgz", + "integrity": "sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==", "dev": true, "dependencies": { - "@babel/parser": "^7.27.3", + "@babel/parser": "^7.27.5", "@babel/types": "^7.27.3", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", @@ -348,22 +348,22 @@ } }, "node_modules/@babel/helpers": { - "version": "7.27.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.4.tgz", - "integrity": "sha512-Y+bO6U+I7ZKaM5G5rDUZiYfUvQPUibYmAFe7EnKdnKBbVXDZxvp+MWOH5gYciY0EPk4EScsuFMQBbEfpdRKSCQ==", + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.6.tgz", + "integrity": "sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==", "dev": true, "dependencies": { "@babel/template": "^7.27.2", - "@babel/types": "^7.27.3" + "@babel/types": "^7.27.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.27.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.4.tgz", - "integrity": "sha512-BRmLHGwpUqLFR2jzx9orBuX/ABDkj2jLKOXrHDTN2aOKL+jFDDKaRNo9nyYsIl9h/UE/7lMKdDjKQQyxKKDZ7g==", + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.5.tgz", + "integrity": "sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==", "dev": true, "dependencies": { "@babel/types": "^7.27.3" @@ -516,9 +516,9 @@ } }, "node_modules/@babel/types": { - "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.3.tgz", - "integrity": "sha512-Y1GkI4ktrtvmawoSq+4FCVHNryea6uR+qUQy0AGxLSsjCX0nVmkYQMBLHDkXZuo5hGx7eYdnIaslsdBFm7zbUw==", + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.6.tgz", + "integrity": "sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.27.1", @@ -1374,9 +1374,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", - "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", "dev": true }, "node_modules/@types/json-schema": { @@ -1425,9 +1425,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.33.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.33.0.tgz", - "integrity": "sha512-DKuXOKpM5IDT1FA2g9x9x1Ug81YuKrzf4mYX8FAVSNu5Wo/LELHWQyM1pQaDkI42bX15PWl0vNPt1uGiIFUOpg==", + "version": "8.33.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.33.1.tgz", + "integrity": "sha512-xid1WfizGhy/TKMTwhtVOgalHwPtV8T32MS9MaH50Cwvz6x6YqRIPdD2WvW0XaqOzTV9p5xdLY0h/ZusU5Lokg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1816,12 +1816,12 @@ "dev": true }, "node_modules/ava": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-6.3.0.tgz", - "integrity": "sha512-64K+xNmlgMo1D94evJlkBWmJ6CGrO6oEctGEjA3PIl5GrwZyMXM5OEycZWnKGduE1YdqMvYDl29SgnNk7kyx+A==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/ava/-/ava-6.4.0.tgz", + "integrity": "sha512-aeFapuBZtaGwVMlFFf074SZJ0bPcdmAdJdsvhHMp+XaOnC2DgeMzopb7yyYAhulNGRJQfUK/SIBYo2PoX7+gtw==", "dev": true, "dependencies": { - "@vercel/nft": "^0.29.2", + "@vercel/nft": "^0.29.4", "acorn": "^8.14.1", "acorn-walk": "^8.3.4", "ansi-styles": "^6.2.1", @@ -1838,7 +1838,7 @@ "common-path-prefix": "^3.0.0", "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", - "debug": "^4.4.0", + "debug": "^4.4.1", "emittery": "^1.1.0", "figures": "^6.1.0", "globby": "^14.1.0", @@ -1866,7 +1866,7 @@ "ava": "entrypoints/cli.mjs" }, "engines": { - "node": "^18.18 || ^20.8 || ^22 || >=23" + "node": "^18.18 || ^20.8 || ^22 || ^23 || >=24" }, "peerDependencies": { "@ava/typescript": "*" @@ -2181,9 +2181,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001720", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001720.tgz", - "integrity": "sha512-Ec/2yV2nNPwb4DnTANEV99ZWwm3ZWfdlfkQbWSDDt+PsXEVYwlhPH8tdMaPunYTKKmz7AnHi2oNEi1GcmKCD8g==", + "version": "1.0.30001721", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001721.tgz", + "integrity": "sha512-cOuvmUVtKrtEaoKiO0rSc29jcjwMwX5tOHDy4MgVFEWiUXj4uBMJkwI8MDySkgXidpMiHUcviogAvFi4pA2hDQ==", "dev": true, "funding": [ { @@ -3249,9 +3249,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.161", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.161.tgz", - "integrity": "sha512-hwtetwfKNZo/UlwHIVBlKZVdy7o8bIZxxKs0Mv/ROPiQQQmDgdm5a+KvKtBsxM8ZjFzTaCeLoodZ8jiBE3o9rA==", + "version": "1.5.165", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.165.tgz", + "integrity": "sha512-naiMx1Z6Nb2TxPU6fiFrUrDTjyPMLdTtaOd2oLmG8zVSg2hCWGkhPyxwk+qRmZ1ytwVqUv0u7ZcDA5+ALhaUtw==", "dev": true }, "node_modules/emittery": { @@ -8517,9 +8517,9 @@ } }, "node_modules/validate-npm-package-name": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.0.tgz", - "integrity": "sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.1.tgz", + "integrity": "sha512-OaI//3H0J7ZkR1OqlhGA8cA+Cbk/2xFOQpJOt5+s27/ta9eZwpeervh4Mxh4w0im/kdgktowaqVNR7QOrUd7Yg==", "engines": { "node": "^18.17.0 || >=20.5.0" } diff --git a/packages/project/package.json b/packages/project/package.json index ae281ce910d..5bbe6f0cb1d 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -153,7 +153,7 @@ "devDependencies": { "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.3.0", - "ava": "^6.3.0", + "ava": "^6.4.0", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", From 4e16c65c3bbd50cb6451858e36ab2ae5dce42294 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Thu, 12 Jun 2025 05:32:18 +0000 Subject: [PATCH 1233/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 220 ++++++++++++++++++----------- packages/project/package.json | 2 +- 2 files changed, 137 insertions(+), 85 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f99790b18c6..31d52515e5f 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^9.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.7.1", + "eslint-plugin-jsdoc": "^50.8.0", "esmock": "^2.7.0", "globals": "^16.2.0", "istanbul-lib-coverage": "^3.2.2", @@ -584,9 +584,9 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", - "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", + "version": "0.20.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.1.tgz", + "integrity": "sha512-OL0RJzC/CBzli0DrrR31qzj6d6i6Mm3HByuhflhl4LOBiWxN+3i6/t/ZQQNii4tjksXi8r2CRW1wMpWA2ULUEw==", "dev": true, "dependencies": { "@eslint/object-schema": "^2.1.6", @@ -598,9 +598,9 @@ } }, "node_modules/@eslint/config-array/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -620,9 +620,9 @@ } }, "node_modules/@eslint/config-helpers": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.2.tgz", - "integrity": "sha512-+GPzk8PlG0sPpzdU5ZvIRMPidzAnZDl/s9L+y13iodqvb8leL53bTannOrQ/Im7UkpsmFU5Ily5U60LWixnmLg==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.3.tgz", + "integrity": "sha512-u180qk2Um1le4yf0ruXH3PYFeEZeYC3p/4wCTKrr2U1CmGdzGi3KtY0nuPDH48UJxlKCC5RDzbcbh4X0XlqgHg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -664,9 +664,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -719,18 +719,30 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.1.tgz", - "integrity": "sha512-0J+zgWxHN+xXONWIyPWKFMgVuJoZuGiIFu8yxk7RJjxkzpGmyja5wRFqZIVtjDVOQpV+Rw0iOAjYPE2eQyjr0w==", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.2.tgz", + "integrity": "sha512-4SaFZCNfJqvk/kenHpI8xvN42DMaoycy4PzKc5otHxRswww1kAt82OlBuwRVLofCACCTZEcla2Ydxv8scMXaTg==", "dev": true, "dependencies": { - "@eslint/core": "^0.14.0", + "@eslint/core": "^0.15.0", "levn": "^0.4.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, + "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.0.tgz", + "integrity": "sha512-b7ePw78tEWWkpgZCDYkbqDOP8dmM6qe+AOC6iuJqlq1R/0ahMAeH3qynpnqKFGkMltrp44ohV4ubGyvLX28tzw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@humanfs/core": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", @@ -1250,9 +1262,9 @@ } }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.4.2.tgz", - "integrity": "sha512-F2ye+n1INNhqT0MW+LfUEvTUPc/nS70vICJcxorKl7/gV9CO39+EDCw+qHNKEqvsDWk++yGVKCbzK1qLPvmC8g==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.4.3.tgz", + "integrity": "sha512-fk2zjD9117RL9BjqEwF7fwv7Q/P9yGsMV4MUJZ/DocaQJ6+3pKr+syBq1owU5Q5qGw5CUbXzm+4yJ2JVRDQeSA==", "engines": { "node": "^18.17.0 || >=20.5.0" } @@ -1425,9 +1437,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.33.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.33.1.tgz", - "integrity": "sha512-xid1WfizGhy/TKMTwhtVOgalHwPtV8T32MS9MaH50Cwvz6x6YqRIPdD2WvW0XaqOzTV9p5xdLY0h/ZusU5Lokg==", + "version": "8.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.0.tgz", + "integrity": "sha512-9V24k/paICYPniajHfJ4cuAWETnt7Ssy+R0Rbcqo5sSFr3QEZ/8TSoUi9XeXVBGXCaLtwTOKSLGcInCAvyZeMA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1457,12 +1469,31 @@ "npm": ">= 8" } }, + "node_modules/@ui5/fs/node_modules/balanced-match": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-3.0.1.tgz", + "integrity": "sha512-vjtV3hiLqYDNRoiAv0zC4QaGAMPomEoq83PRmYIofPswwZurCeWR5LByXm7SyoL0Zh5+2z0+HC7jG8gSZJUh0w==", + "engines": { + "node": ">= 16" + } + }, + "node_modules/@ui5/fs/node_modules/brace-expansion": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-4.0.1.tgz", + "integrity": "sha512-YClrbvTCXGe70pU2JiEiPLYXO9gQkyxYeKpJIQHVS/gOs6EWMQP2RYBwjFLNT322Ji8TOC3IMPfsYCedNpzKfA==", + "dependencies": { + "balanced-match": "^3.0.0" + }, + "engines": { + "node": ">= 18" + } + }, "node_modules/@ui5/fs/node_modules/minimatch": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", - "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.2.tgz", + "integrity": "sha512-+9TJCIYXgZ2Dm5LxVCFsa8jOm+evMwXHFI0JM1XROmkfkpz8/iLLDh+TwSmyIBrs6C6Xu9294/fq8cBA+P6AqA==", "dependencies": { - "brace-expansion": "^2.0.1" + "brace-expansion": "^4.0.1" }, "engines": { "node": "20 || >=22" @@ -1588,9 +1619,9 @@ } }, "node_modules/acorn": { - "version": "8.14.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", - "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -1977,9 +2008,9 @@ "dev": true }, "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dependencies": { "balanced-match": "^1.0.0" } @@ -2181,9 +2212,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001721", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001721.tgz", - "integrity": "sha512-cOuvmUVtKrtEaoKiO0rSc29jcjwMwX5tOHDy4MgVFEWiUXj4uBMJkwI8MDySkgXidpMiHUcviogAvFi4pA2hDQ==", + "version": "1.0.30001722", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001722.tgz", + "integrity": "sha512-DCQHBBZtiK6JVkAGw7drvAMK0Q0POD/xZvEmDp6baiMMP6QXXk9HpD6mNYBZWhOPG6LvIDb82ITqtWjhDckHCA==", "dev": true, "funding": [ { @@ -3249,9 +3280,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.165", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.165.tgz", - "integrity": "sha512-naiMx1Z6Nb2TxPU6fiFrUrDTjyPMLdTtaOd2oLmG8zVSg2hCWGkhPyxwk+qRmZ1ytwVqUv0u7ZcDA5+ALhaUtw==", + "version": "1.5.166", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.166.tgz", + "integrity": "sha512-QPWqHL0BglzPYyJJ1zSSmwFFL6MFXhbACOCcsCdUMCkzPdS9/OIBVxg516X/Ado2qwAq8k0nJJ7phQPCqiaFAw==", "dev": true }, "node_modules/emittery": { @@ -3476,9 +3507,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.7.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.7.1.tgz", - "integrity": "sha512-XBnVA5g2kUVokTNUiE1McEPse5n9/mNUmuJcx52psT6zBs2eVcXSmQBvjfa7NZdfLVSy3u1pEDDUxoxpwy89WA==", + "version": "50.8.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.8.0.tgz", + "integrity": "sha512-UyGb5755LMFWPrZTEqqvTJ3urLz1iqj+bYOHFNag+sw3NvaMWP9K2z+uIn37XfNALmQLQyrBlJ5mkiVPL7ADEg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.50.2", @@ -3512,9 +3543,9 @@ } }, "node_modules/eslint-scope": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", - "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -3555,9 +3586,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", - "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3582,9 +3613,9 @@ } }, "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -3732,14 +3763,14 @@ } }, "node_modules/espree": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", - "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", "dev": true, "dependencies": { - "acorn": "^8.14.0", + "acorn": "^8.15.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.2.0" + "eslint-visitor-keys": "^4.2.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3902,9 +3933,9 @@ } }, "node_modules/fdir": { - "version": "6.4.5", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.5.tgz", - "integrity": "sha512-4BG7puHpVsIYxZUbiUE3RqGloLaSSwzYie5jvasC4LWuBWzZawynvYouhjbQKw2JuIGYdm0DzIxl8iVidKlUEw==", + "version": "6.4.6", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz", + "integrity": "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==", "peerDependencies": { "picomatch": "^3 || ^4" }, @@ -4864,9 +4895,9 @@ } }, "node_modules/istanbul-lib-processinfo/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -5703,9 +5734,9 @@ } }, "node_modules/multimatch/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -6054,9 +6085,9 @@ } }, "node_modules/nyc/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -6785,9 +6816,9 @@ } }, "node_modules/postcss": { - "version": "8.5.4", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.4.tgz", - "integrity": "sha512-QSa9EBe+uwlGTFmHsPKokv3B/oEMQZxfqW0QqNCyhpa6mB1afzulwn8hihglqAb2pOw+BJgNlmXQ8la2VeHB7w==", + "version": "8.5.5", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.5.tgz", + "integrity": "sha512-d/jtm+rdNT8tpXuHY5MMtcbJFBkhXE6593XVR9UoGCH8jSFGci7jGvMGH5RYd5PBJW+00NZQt6gf7CbagJCrhg==", "dev": true, "funding": [ { @@ -7214,6 +7245,27 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/balanced-match": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-3.0.1.tgz", + "integrity": "sha512-vjtV3hiLqYDNRoiAv0zC4QaGAMPomEoq83PRmYIofPswwZurCeWR5LByXm7SyoL0Zh5+2z0+HC7jG8gSZJUh0w==", + "dev": true, + "engines": { + "node": ">= 16" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-4.0.1.tgz", + "integrity": "sha512-YClrbvTCXGe70pU2JiEiPLYXO9gQkyxYeKpJIQHVS/gOs6EWMQP2RYBwjFLNT322Ji8TOC3IMPfsYCedNpzKfA==", + "dev": true, + "dependencies": { + "balanced-match": "^3.0.0" + }, + "engines": { + "node": ">= 18" + } + }, "node_modules/rimraf/node_modules/glob": { "version": "11.0.2", "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.2.tgz", @@ -7262,12 +7314,12 @@ } }, "node_modules/rimraf/node_modules/minimatch": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", - "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.2.tgz", + "integrity": "sha512-+9TJCIYXgZ2Dm5LxVCFsa8jOm+evMwXHFI0JM1XROmkfkpz8/iLLDh+TwSmyIBrs6C6Xu9294/fq8cBA+P6AqA==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "brace-expansion": "^4.0.1" }, "engines": { "node": "20 || >=22" @@ -7507,9 +7559,9 @@ } }, "node_modules/socks": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.4.tgz", - "integrity": "sha512-D3YaD0aRxR3mEcqnidIs7ReYJFVzWdd6fXJYUM8ixcQcJRGTka/b3saV0KflYhyVJXKhb947GndU35SxYNResQ==", + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.5.tgz", + "integrity": "sha512-iF+tNDQla22geJdTyJB1wM/qrX9DMRwWrciEPwWLPRWAUEM8sQiyxgckLxWT1f7+9VabJS0jTGGr4QgBuvi6Ww==", "dependencies": { "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" @@ -7568,9 +7620,9 @@ } }, "node_modules/spawn-wrap/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -8193,9 +8245,9 @@ } }, "node_modules/test-exclude/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 5bbe6f0cb1d..907e69b6eb2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^9.28.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.7.1", + "eslint-plugin-jsdoc": "^50.8.0", "esmock": "^2.7.0", "globals": "^16.2.0", "istanbul-lib-coverage": "^3.2.2", From 8d51b5f2e29f3101baa11723e652df25f9a0f368 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 15 Jun 2025 02:20:05 +0000 Subject: [PATCH 1234/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 123 ++++++++++++----------------- packages/project/package.json | 2 +- 2 files changed, 52 insertions(+), 73 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 31d52515e5f..c81da414c4c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.28.0", + "eslint": "^9.29.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.8.0", @@ -698,9 +698,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.28.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.28.0.tgz", - "integrity": "sha512-fnqSjGWd/CoIp4EXIxWVK/sHA6DOHN4+8Ix2cX5ycOY7LG0UY8nHCU5pIp2eaE1Mc7Qd8kHspYNzYXT2ojPLzg==", + "version": "9.29.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.29.0.tgz", + "integrity": "sha512-3PIF4cBw/y+1u2EazflInpV+lYsSG0aByVIQzAgb1m1MhHFSbqTyNqtBKHgWf/9Ykud+DhILS9EGkmekVhbKoQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -804,6 +804,25 @@ "url": "https://github.com/sponsors/nzakas" } }, + "node_modules/@isaacs/balanced-match": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", + "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/brace-expansion": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz", + "integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==", + "dependencies": { + "@isaacs/balanced-match": "^4.0.1" + }, + "engines": { + "node": "20 || >=22" + } + }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -1469,31 +1488,12 @@ "npm": ">= 8" } }, - "node_modules/@ui5/fs/node_modules/balanced-match": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-3.0.1.tgz", - "integrity": "sha512-vjtV3hiLqYDNRoiAv0zC4QaGAMPomEoq83PRmYIofPswwZurCeWR5LByXm7SyoL0Zh5+2z0+HC7jG8gSZJUh0w==", - "engines": { - "node": ">= 16" - } - }, - "node_modules/@ui5/fs/node_modules/brace-expansion": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-4.0.1.tgz", - "integrity": "sha512-YClrbvTCXGe70pU2JiEiPLYXO9gQkyxYeKpJIQHVS/gOs6EWMQP2RYBwjFLNT322Ji8TOC3IMPfsYCedNpzKfA==", - "dependencies": { - "balanced-match": "^3.0.0" - }, - "engines": { - "node": ">= 18" - } - }, "node_modules/@ui5/fs/node_modules/minimatch": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.2.tgz", - "integrity": "sha512-+9TJCIYXgZ2Dm5LxVCFsa8jOm+evMwXHFI0JM1XROmkfkpz8/iLLDh+TwSmyIBrs6C6Xu9294/fq8cBA+P6AqA==", + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", + "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", "dependencies": { - "brace-expansion": "^4.0.1" + "@isaacs/brace-expansion": "^5.0.0" }, "engines": { "node": "20 || >=22" @@ -2212,9 +2212,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001722", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001722.tgz", - "integrity": "sha512-DCQHBBZtiK6JVkAGw7drvAMK0Q0POD/xZvEmDp6baiMMP6QXXk9HpD6mNYBZWhOPG6LvIDb82ITqtWjhDckHCA==", + "version": "1.0.30001723", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001723.tgz", + "integrity": "sha512-1R/elMjtehrFejxwmexeXAtae5UO9iSyFn6G/I806CYC/BLyyBk1EPhrKBkWhy6wM6Xnm47dSJQec+tLJ39WHw==", "dev": true, "funding": [ { @@ -3280,9 +3280,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.166", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.166.tgz", - "integrity": "sha512-QPWqHL0BglzPYyJJ1zSSmwFFL6MFXhbACOCcsCdUMCkzPdS9/OIBVxg516X/Ado2qwAq8k0nJJ7phQPCqiaFAw==", + "version": "1.5.167", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.167.tgz", + "integrity": "sha512-LxcRvnYO5ez2bMOFpbuuVuAI5QNeY1ncVytE/KXaL6ZNfzX1yPlAO0nSOyIHx2fVAuUprMqPs/TdVhUFZy7SIQ==", "dev": true }, "node_modules/emittery": { @@ -3384,18 +3384,18 @@ } }, "node_modules/eslint": { - "version": "9.28.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.28.0.tgz", - "integrity": "sha512-ocgh41VhRlf9+fVpe7QKzwLj9c92fDiqOj8Y3Sd4/ZmVA4Btx4PlUYPq4pp9JDyupkf1upbEXecxL2mwNV7jPQ==", + "version": "9.29.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.29.0.tgz", + "integrity": "sha512-GsGizj2Y1rCWDu6XoEekL3RLilp0voSePurjZIkxL3wlm5o5EC9VpgaP7lrCvjnkuLvzFBQWB3vWB3K5KQTveQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.20.0", + "@eslint/config-array": "^0.20.1", "@eslint/config-helpers": "^0.2.1", "@eslint/core": "^0.14.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.28.0", + "@eslint/js": "9.29.0", "@eslint/plugin-kit": "^0.3.1", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -3407,9 +3407,9 @@ "cross-spawn": "^7.0.6", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.3.0", - "eslint-visitor-keys": "^4.2.0", - "espree": "^10.3.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", "esquery": "^1.5.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -7245,36 +7245,15 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rimraf/node_modules/balanced-match": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-3.0.1.tgz", - "integrity": "sha512-vjtV3hiLqYDNRoiAv0zC4QaGAMPomEoq83PRmYIofPswwZurCeWR5LByXm7SyoL0Zh5+2z0+HC7jG8gSZJUh0w==", - "dev": true, - "engines": { - "node": ">= 16" - } - }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-4.0.1.tgz", - "integrity": "sha512-YClrbvTCXGe70pU2JiEiPLYXO9gQkyxYeKpJIQHVS/gOs6EWMQP2RYBwjFLNT322Ji8TOC3IMPfsYCedNpzKfA==", - "dev": true, - "dependencies": { - "balanced-match": "^3.0.0" - }, - "engines": { - "node": ">= 18" - } - }, "node_modules/rimraf/node_modules/glob": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.2.tgz", - "integrity": "sha512-YT7U7Vye+t5fZ/QMkBFrTJ7ZQxInIUjwyAjVj84CYXqgBdv30MFUPGnBR6sQaVq6Is15wYJUsnzTuWaGRBhBAQ==", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz", + "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", "dev": true, "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^4.0.1", - "minimatch": "^10.0.0", + "foreground-child": "^3.3.1", + "jackspeak": "^4.1.1", + "minimatch": "^10.0.3", "minipass": "^7.1.2", "package-json-from-dist": "^1.0.0", "path-scurry": "^2.0.0" @@ -7314,12 +7293,12 @@ } }, "node_modules/rimraf/node_modules/minimatch": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.2.tgz", - "integrity": "sha512-+9TJCIYXgZ2Dm5LxVCFsa8jOm+evMwXHFI0JM1XROmkfkpz8/iLLDh+TwSmyIBrs6C6Xu9294/fq8cBA+P6AqA==", + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", + "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", "dev": true, "dependencies": { - "brace-expansion": "^4.0.1" + "@isaacs/brace-expansion": "^5.0.0" }, "engines": { "node": "20 || >=22" diff --git a/packages/project/package.json b/packages/project/package.json index 907e69b6eb2..31be39af49e 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.28.0", + "eslint": "^9.29.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.8.0", From a9de510f410a76fc3f80f4c08aeb036078bed1d1 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 17 Jun 2025 12:05:50 +0000 Subject: [PATCH 1235/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c81da414c4c..731a99b3445 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1456,9 +1456,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.0.tgz", - "integrity": "sha512-9V24k/paICYPniajHfJ4cuAWETnt7Ssy+R0Rbcqo5sSFr3QEZ/8TSoUi9XeXVBGXCaLtwTOKSLGcInCAvyZeMA==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.1.tgz", + "integrity": "sha512-rjLVbmE7HR18kDsjNIZQHxmv9RZwlgzavryL5Lnj2ujIRTeXlKtILHgRNmQ3j4daw7zd+mQgy+uyt6Zo6I0IGA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3280,9 +3280,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.167", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.167.tgz", - "integrity": "sha512-LxcRvnYO5ez2bMOFpbuuVuAI5QNeY1ncVytE/KXaL6ZNfzX1yPlAO0nSOyIHx2fVAuUprMqPs/TdVhUFZy7SIQ==", + "version": "1.5.169", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.169.tgz", + "integrity": "sha512-q7SQx6mkLy0GTJK9K9OiWeaBMV4XQtBSdf6MJUzDB/H/5tFXfIiX38Lci1Kl6SsgiEhz1SQI1ejEOU5asWEhwQ==", "dev": true }, "node_modules/emittery": { @@ -6816,9 +6816,9 @@ } }, "node_modules/postcss": { - "version": "8.5.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.5.tgz", - "integrity": "sha512-d/jtm+rdNT8tpXuHY5MMtcbJFBkhXE6593XVR9UoGCH8jSFGci7jGvMGH5RYd5PBJW+00NZQt6gf7CbagJCrhg==", + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", "dev": true, "funding": [ { From c3ed0470c9b4d35c7198eb374ac1ee449be94307 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Jun 2025 12:37:24 +0000 Subject: [PATCH 1236/1272] [ui5-project][INTERNAL] Bump sinon from 20.0.0 to 21.0.0 (#806) --- packages/project/package-lock.json | 9 +++++---- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 731a99b3445..6a2ebb9bf02 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -54,7 +54,7 @@ "nyc": "^17.1.0", "open-cli": "^8.0.0", "rimraf": "^6.0.1", - "sinon": "^20.0.0", + "sinon": "^21.0.0", "tap-xunit": "^2.4.1" }, "engines": { @@ -7485,10 +7485,11 @@ } }, "node_modules/sinon": { - "version": "20.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-20.0.0.tgz", - "integrity": "sha512-+FXOAbdnj94AQIxH0w1v8gzNxkawVvNqE3jUzRLptR71Oykeu2RrQXXl/VQjKay+Qnh73fDt/oDfMo6xMeDQbQ==", + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-21.0.0.tgz", + "integrity": "sha512-TOgRcwFPbfGtpqvZw+hyqJDvqfapr1qUlOizROIk4bBLjlsjlB00Pg6wMFXNtJRpu+eCZuVOaLatG7M8105kAw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1", "@sinonjs/fake-timers": "^13.0.5", diff --git a/packages/project/package.json b/packages/project/package.json index 31be39af49e..46609868d70 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -173,7 +173,7 @@ "nyc": "^17.1.0", "open-cli": "^8.0.0", "rimraf": "^6.0.1", - "sinon": "^20.0.0", + "sinon": "^21.0.0", "tap-xunit": "^2.4.1" } } From 905184dd4e16a5ecdbbb6c0b18c0f256d38b4aeb Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 22 Jun 2025 02:20:10 +0000 Subject: [PATCH 1237/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 79 +++++++++++++++--------------- 1 file changed, 39 insertions(+), 40 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6a2ebb9bf02..7d58f523148 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1240,9 +1240,9 @@ } }, "node_modules/@rollup/pluginutils": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", - "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.2.0.tgz", + "integrity": "sha512-qWJ2ZTbmumwiLFomfzTyt5Kng4hwPi9rwCYN4SHb6eaRU1KNO4ccxINHr/VhH4GgPlt1XfSTLX2LBTme8ne4Zw==", "dev": true, "dependencies": { "@types/estree": "^1.0.0", @@ -1543,59 +1543,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.16", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.16.tgz", - "integrity": "sha512-AOQS2eaQOaaZQoL1u+2rCJIKDruNXVBZSiUD3chnUrsoX5ZTQMaCvXlWNIfxBJuU15r1o7+mpo5223KVtIhAgQ==", + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.17.tgz", + "integrity": "sha512-Xe+AittLbAyV0pabcN7cP7/BenRBNcteM4aSDCtRvGw0d9OL+HG1u/XHLY/kt1q4fyMeZYXyIYrsHuPSiDPosA==", "dev": true, "dependencies": { - "@babel/parser": "^7.27.2", - "@vue/shared": "3.5.16", + "@babel/parser": "^7.27.5", + "@vue/shared": "3.5.17", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.16", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.16.tgz", - "integrity": "sha512-SSJIhBr/teipXiXjmWOVWLnxjNGo65Oj/8wTEQz0nqwQeP75jWZ0n4sF24Zxoht1cuJoWopwj0J0exYwCJ0dCQ==", + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.17.tgz", + "integrity": "sha512-+2UgfLKoaNLhgfhV5Ihnk6wB4ljyW1/7wUIog2puUqajiC29Lp5R/IKDdkebh9jTbTogTbsgB+OY9cEWzG95JQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.16", - "@vue/shared": "3.5.16" + "@vue/compiler-core": "3.5.17", + "@vue/shared": "3.5.17" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.16", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.16.tgz", - "integrity": "sha512-rQR6VSFNpiinDy/DVUE0vHoIDUF++6p910cgcZoaAUm3POxgNOOdS/xgoll3rNdKYTYPnnbARDCZOyZ+QSe6Pw==", + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.17.tgz", + "integrity": "sha512-rQQxbRJMgTqwRugtjw0cnyQv9cP4/4BxWfTdRBkqsTfLOHWykLzbOc3C4GGzAmdMDxhzU/1Ija5bTjMVrddqww==", "dev": true, "dependencies": { - "@babel/parser": "^7.27.2", - "@vue/compiler-core": "3.5.16", - "@vue/compiler-dom": "3.5.16", - "@vue/compiler-ssr": "3.5.16", - "@vue/shared": "3.5.16", + "@babel/parser": "^7.27.5", + "@vue/compiler-core": "3.5.17", + "@vue/compiler-dom": "3.5.17", + "@vue/compiler-ssr": "3.5.17", + "@vue/shared": "3.5.17", "estree-walker": "^2.0.2", "magic-string": "^0.30.17", - "postcss": "^8.5.3", + "postcss": "^8.5.6", "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.16", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.16.tgz", - "integrity": "sha512-d2V7kfxbdsjrDSGlJE7my1ZzCXViEcqN6w14DOsDrUCHEA6vbnVCpRFfrc4ryCP/lCKzX2eS1YtnLE/BuC9f/A==", + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.17.tgz", + "integrity": "sha512-hkDbA0Q20ZzGgpj5uZjb9rBzQtIHLS78mMilwrlpWk2Ep37DYntUz0PonQ6kr113vfOEdM+zTBuJDaceNIW0tQ==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.16", - "@vue/shared": "3.5.16" + "@vue/compiler-dom": "3.5.17", + "@vue/shared": "3.5.17" } }, "node_modules/@vue/shared": { - "version": "3.5.16", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.16.tgz", - "integrity": "sha512-c/0fWy3Jw6Z8L9FmTyYfkpM5zklnqqa9+a6dz3DvONRKW2NEbh46BP0FHuLFSWi2TnQEtp91Z6zOWNrU6QiyPg==", + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.17.tgz", + "integrity": "sha512-CabR+UN630VnsJO/jHWYBC1YVXyMq94KKp6iF5MQgZJs5I8cmjw6oVMO1oDbtBkENSHSSn/UadWlW/OAgdmKrg==", "dev": true }, "node_modules/abbrev": { @@ -2212,9 +2212,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001723", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001723.tgz", - "integrity": "sha512-1R/elMjtehrFejxwmexeXAtae5UO9iSyFn6G/I806CYC/BLyyBk1EPhrKBkWhy6wM6Xnm47dSJQec+tLJ39WHw==", + "version": "1.0.30001724", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001724.tgz", + "integrity": "sha512-WqJo7p0TbHDOythNTqYujmaJTvtYRZrjpP8TCvH6Vb9CYJerJNKamKzIWOM4BkQatWj9H2lYulpdAQNBe7QhNA==", "dev": true, "funding": [ { @@ -3280,15 +3280,15 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.169", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.169.tgz", - "integrity": "sha512-q7SQx6mkLy0GTJK9K9OiWeaBMV4XQtBSdf6MJUzDB/H/5tFXfIiX38Lci1Kl6SsgiEhz1SQI1ejEOU5asWEhwQ==", + "version": "1.5.171", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.171.tgz", + "integrity": "sha512-scWpzXEJEMrGJa4Y6m/tVotb0WuvNmasv3wWVzUAeCgKU0ToFOhUW6Z+xWnRQANMYGxN4ngJXIThgBJOqzVPCQ==", "dev": true }, "node_modules/emittery": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.1.0.tgz", - "integrity": "sha512-rsX7ktqARv/6UQDgMaLfIqUWAEzzbCQiVh7V9rhDXp6c37yoJcks12NVD+XPkgl4AEavmNhVfrhGoqYwIsMYYA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-1.2.0.tgz", + "integrity": "sha512-KxdRyyFcS85pH3dnU8Y5yFUm2YJdaHwcBZWrfG8o89ZY9a13/f9itbN+YG3ELbBo9Pg5zvIozstmuV8bX13q6g==", "dev": true, "engines": { "node": ">=14.16" @@ -7489,7 +7489,6 @@ "resolved": "https://registry.npmjs.org/sinon/-/sinon-21.0.0.tgz", "integrity": "sha512-TOgRcwFPbfGtpqvZw+hyqJDvqfapr1qUlOizROIk4bBLjlsjlB00Pg6wMFXNtJRpu+eCZuVOaLatG7M8105kAw==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1", "@sinonjs/fake-timers": "^13.0.5", From 48ddd213d70f1a353abd745d5bdeeb6af8954dde Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 29 Jun 2025 02:20:09 +0000 Subject: [PATCH 1238/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 122 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 62 insertions(+), 62 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7d58f523148..12ede196e3c 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.29.0", + "eslint": "^9.30.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.8.0", @@ -97,30 +97,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.27.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.5.tgz", - "integrity": "sha512-KiRAp/VoJaWkkte84TvUd9qjdbZAdiqyvMxrGl1N6vzFogKmaLgoM3L1kgtLicp2HP5fBJS8JrZKLVIZGVJAVg==", + "version": "7.27.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.7.tgz", + "integrity": "sha512-xgu/ySj2mTiUFmdE9yCMfBxLp4DHd5DwmbbD05YAuICfodYT3VvRxbrh81LGQ/8UpSdtMdfKMn3KouYDX59DGQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.27.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.4.tgz", - "integrity": "sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==", + "version": "7.27.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.7.tgz", + "integrity": "sha512-BU2f9tlKQ5CAthiMIgpzAh4eDTLWo1mqi9jqE2OxMG0E/OM199VJt2q8BztTxpnSW0i1ymdwLXRJnYzvDM5r2w==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.27.3", + "@babel/generator": "^7.27.5", "@babel/helper-compilation-targets": "^7.27.2", "@babel/helper-module-transforms": "^7.27.3", - "@babel/helpers": "^7.27.4", - "@babel/parser": "^7.27.4", + "@babel/helpers": "^7.27.6", + "@babel/parser": "^7.27.7", "@babel/template": "^7.27.2", - "@babel/traverse": "^7.27.4", - "@babel/types": "^7.27.3", + "@babel/traverse": "^7.27.7", + "@babel/types": "^7.27.7", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -361,12 +361,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.27.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.5.tgz", - "integrity": "sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==", + "version": "7.27.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.7.tgz", + "integrity": "sha512-qnzXzDXdr/po3bOTbTIQZ7+TxNKxpkN5IifVLXS+r7qwynkZfPyjZfE7hCXbo7IoO9TNcSyibgONsf2HauUd3Q==", "dev": true, "dependencies": { - "@babel/types": "^7.27.3" + "@babel/types": "^7.27.7" }, "bin": { "parser": "bin/babel-parser.js" @@ -489,16 +489,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.27.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.4.tgz", - "integrity": "sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==", + "version": "7.27.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.7.tgz", + "integrity": "sha512-X6ZlfR/O/s5EQ/SnUSLzr+6kGnkg8HXGMzpgsMsrJVcfDtH1vIp6ctCN4eZ1LS5c0+te5Cb6Y514fASjMRJ1nw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.27.3", - "@babel/parser": "^7.27.4", + "@babel/generator": "^7.27.5", + "@babel/parser": "^7.27.7", "@babel/template": "^7.27.2", - "@babel/types": "^7.27.3", + "@babel/types": "^7.27.7", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -516,9 +516,9 @@ } }, "node_modules/@babel/types": { - "version": "7.27.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.6.tgz", - "integrity": "sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==", + "version": "7.27.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.7.tgz", + "integrity": "sha512-8OLQgDScAOHXnAz2cV+RfzzNMipuLVBz2biuAJFMV9bfkNf393je3VM8CLkjQodW5+iWsSJdSgSWT6rsZoXHPw==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.27.1", @@ -584,9 +584,9 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.20.1", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.1.tgz", - "integrity": "sha512-OL0RJzC/CBzli0DrrR31qzj6d6i6Mm3HByuhflhl4LOBiWxN+3i6/t/ZQQNii4tjksXi8r2CRW1wMpWA2ULUEw==", + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.0.tgz", + "integrity": "sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ==", "dev": true, "dependencies": { "@eslint/object-schema": "^2.1.6", @@ -620,9 +620,9 @@ } }, "node_modules/@eslint/config-helpers": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.3.tgz", - "integrity": "sha512-u180qk2Um1le4yf0ruXH3PYFeEZeYC3p/4wCTKrr2U1CmGdzGi3KtY0nuPDH48UJxlKCC5RDzbcbh4X0XlqgHg==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.3.0.tgz", + "integrity": "sha512-ViuymvFmcJi04qdZeDc2whTHryouGcDlaxPqarTD0ZE10ISpxGUVZGZDx4w01upyIynL3iu6IXH2bS1NhclQMw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -698,9 +698,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.29.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.29.0.tgz", - "integrity": "sha512-3PIF4cBw/y+1u2EazflInpV+lYsSG0aByVIQzAgb1m1MhHFSbqTyNqtBKHgWf/9Ykud+DhILS9EGkmekVhbKoQ==", + "version": "9.30.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.30.0.tgz", + "integrity": "sha512-Wzw3wQwPvc9sHM+NjakWTcPx11mbZyiYHuwWa/QfZ7cIRX7WK54PSk7bdyXDaoaopUcMatv1zaQvOAAO8hCdww==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -719,12 +719,12 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.2.tgz", - "integrity": "sha512-4SaFZCNfJqvk/kenHpI8xvN42DMaoycy4PzKc5otHxRswww1kAt82OlBuwRVLofCACCTZEcla2Ydxv8scMXaTg==", + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.3.tgz", + "integrity": "sha512-1+WqvgNMhmlAambTvT3KPtCl/Ibr68VldY2XY40SL1CE0ZXiakFR/cbTspaF5HsnpDMvcYYoJHfl4980NBjGag==", "dev": true, "dependencies": { - "@eslint/core": "^0.15.0", + "@eslint/core": "^0.15.1", "levn": "^0.4.1" }, "engines": { @@ -732,9 +732,9 @@ } }, "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.0.tgz", - "integrity": "sha512-b7ePw78tEWWkpgZCDYkbqDOP8dmM6qe+AOC6iuJqlq1R/0ahMAeH3qynpnqKFGkMltrp44ohV4ubGyvLX28tzw==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.1.tgz", + "integrity": "sha512-bkOp+iumZCCbt1K1CmWf0R9pM5yKpDv+ZXtvSyQpudrI9kuFLp+bM2WOPXImuD/ceQuaa8f5pj93Y7zyECIGNA==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.15" @@ -1456,9 +1456,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.1.tgz", - "integrity": "sha512-rjLVbmE7HR18kDsjNIZQHxmv9RZwlgzavryL5Lnj2ujIRTeXlKtILHgRNmQ3j4daw7zd+mQgy+uyt6Zo6I0IGA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.0.tgz", + "integrity": "sha512-0mYH3emanku0vHw2aRLNGqe7EXh9WHEhi7kZzscrMDf6IIRUQ5Jk4wp1QrledE/36KtdZrVfKnE32eZCf/vaVQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2027,9 +2027,9 @@ } }, "node_modules/browserslist": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.0.tgz", - "integrity": "sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==", + "version": "4.25.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.1.tgz", + "integrity": "sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==", "dev": true, "funding": [ { @@ -2046,8 +2046,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001718", - "electron-to-chromium": "^1.5.160", + "caniuse-lite": "^1.0.30001726", + "electron-to-chromium": "^1.5.173", "node-releases": "^2.0.19", "update-browserslist-db": "^1.1.3" }, @@ -2212,9 +2212,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001724", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001724.tgz", - "integrity": "sha512-WqJo7p0TbHDOythNTqYujmaJTvtYRZrjpP8TCvH6Vb9CYJerJNKamKzIWOM4BkQatWj9H2lYulpdAQNBe7QhNA==", + "version": "1.0.30001726", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001726.tgz", + "integrity": "sha512-VQAUIUzBiZ/UnlM28fSp2CRF3ivUn1BWEvxMcVTNwpw91Py1pGbPIyIKtd+tzct9C3ouceCVdGAXxZOpZAsgdw==", "dev": true, "funding": [ { @@ -3280,9 +3280,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.171", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.171.tgz", - "integrity": "sha512-scWpzXEJEMrGJa4Y6m/tVotb0WuvNmasv3wWVzUAeCgKU0ToFOhUW6Z+xWnRQANMYGxN4ngJXIThgBJOqzVPCQ==", + "version": "1.5.177", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.177.tgz", + "integrity": "sha512-7EH2G59nLsEMj97fpDuvVcYi6lwTcM1xuWw3PssD8xzboAW7zj7iB3COEEEATUfjLHrs5uKBLQT03V/8URx06g==", "dev": true }, "node_modules/emittery": { @@ -3384,18 +3384,18 @@ } }, "node_modules/eslint": { - "version": "9.29.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.29.0.tgz", - "integrity": "sha512-GsGizj2Y1rCWDu6XoEekL3RLilp0voSePurjZIkxL3wlm5o5EC9VpgaP7lrCvjnkuLvzFBQWB3vWB3K5KQTveQ==", + "version": "9.30.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.30.0.tgz", + "integrity": "sha512-iN/SiPxmQu6EVkf+m1qpBxzUhE12YqFLOSySuOyVLJLEF9nzTf+h/1AJYc1JWzCnktggeNrjvQGLngDzXirU6g==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.20.1", - "@eslint/config-helpers": "^0.2.1", + "@eslint/config-array": "^0.21.0", + "@eslint/config-helpers": "^0.3.0", "@eslint/core": "^0.14.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.29.0", + "@eslint/js": "9.30.0", "@eslint/plugin-kit": "^0.3.1", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 46609868d70..626ab5e5637 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.29.0", + "eslint": "^9.30.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.8.0", From 13ad16b5a30aea875b23d37f6f92b464c04744b7 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 6 Jul 2025 02:20:11 +0000 Subject: [PATCH 1239/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 185 ++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 89 insertions(+), 102 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 12ede196e3c..9a8fbef4f90 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,12 +39,12 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.30.0", + "eslint": "^9.30.1", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.8.0", - "esmock": "^2.7.0", - "globals": "^16.2.0", + "esmock": "^2.7.1", + "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -97,30 +97,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.27.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.7.tgz", - "integrity": "sha512-xgu/ySj2mTiUFmdE9yCMfBxLp4DHd5DwmbbD05YAuICfodYT3VvRxbrh81LGQ/8UpSdtMdfKMn3KouYDX59DGQ==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.0.tgz", + "integrity": "sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.27.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.7.tgz", - "integrity": "sha512-BU2f9tlKQ5CAthiMIgpzAh4eDTLWo1mqi9jqE2OxMG0E/OM199VJt2q8BztTxpnSW0i1ymdwLXRJnYzvDM5r2w==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz", + "integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.27.5", + "@babel/generator": "^7.28.0", "@babel/helper-compilation-targets": "^7.27.2", "@babel/helper-module-transforms": "^7.27.3", "@babel/helpers": "^7.27.6", - "@babel/parser": "^7.27.7", + "@babel/parser": "^7.28.0", "@babel/template": "^7.27.2", - "@babel/traverse": "^7.27.7", - "@babel/types": "^7.27.7", + "@babel/traverse": "^7.28.0", + "@babel/types": "^7.28.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -145,15 +145,15 @@ } }, "node_modules/@babel/generator": { - "version": "7.27.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.5.tgz", - "integrity": "sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.0.tgz", + "integrity": "sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg==", "dev": true, "dependencies": { - "@babel/parser": "^7.27.5", - "@babel/types": "^7.27.3", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", + "@babel/parser": "^7.28.0", + "@babel/types": "^7.28.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", "jsesc": "^3.0.2" }, "engines": { @@ -227,6 +227,15 @@ "semver": "bin/semver.js" } }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-member-expression-to-functions": { "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz", @@ -361,12 +370,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.27.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.7.tgz", - "integrity": "sha512-qnzXzDXdr/po3bOTbTIQZ7+TxNKxpkN5IifVLXS+r7qwynkZfPyjZfE7hCXbo7IoO9TNcSyibgONsf2HauUd3Q==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.0.tgz", + "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==", "dev": true, "dependencies": { - "@babel/types": "^7.27.7" + "@babel/types": "^7.28.0" }, "bin": { "parser": "bin/babel-parser.js" @@ -437,12 +446,12 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.27.1.tgz", - "integrity": "sha512-Q5sT5+O4QUebHdbwKedFBEwRLb02zJ7r4A5Gg2hUoLuU3FjdMcyqcywqUrLCaDsFCxzokf7u9kuy7qz51YUuAg==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.28.0.tgz", + "integrity": "sha512-4AEiDEBPIZvLQaWlc9liCavE0xRM0dNca41WtBeM3jgFptfUOSG9z0uteLhq6+3rq+WB6jIvUwKDTpXEHPJ2Vg==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-annotate-as-pure": "^7.27.3", "@babel/helper-create-class-features-plugin": "^7.27.1", "@babel/helper-plugin-utils": "^7.27.1", "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", @@ -489,36 +498,27 @@ } }, "node_modules/@babel/traverse": { - "version": "7.27.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.7.tgz", - "integrity": "sha512-X6ZlfR/O/s5EQ/SnUSLzr+6kGnkg8HXGMzpgsMsrJVcfDtH1vIp6ctCN4eZ1LS5c0+te5Cb6Y514fASjMRJ1nw==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.0.tgz", + "integrity": "sha512-mGe7UK5wWyh0bKRfupsUchrQGqvDbZDbKJw+kcRGSmdHVYrv+ltd0pnpDTVpiTqnaBru9iEvA8pz8W46v0Amwg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.27.5", - "@babel/parser": "^7.27.7", + "@babel/generator": "^7.28.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.0", "@babel/template": "^7.27.2", - "@babel/types": "^7.27.7", - "debug": "^4.3.1", - "globals": "^11.1.0" + "@babel/types": "^7.28.0", + "debug": "^4.3.1" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/@babel/types": { - "version": "7.27.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.7.tgz", - "integrity": "sha512-8OLQgDScAOHXnAz2cV+RfzzNMipuLVBz2biuAJFMV9bfkNf393je3VM8CLkjQodW5+iWsSJdSgSWT6rsZoXHPw==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.0.tgz", + "integrity": "sha512-jYnje+JyZG5YThjHiF28oT4SIZLnYOcSBb6+SDaFIyzDVSkXQmQQYclJ2R+YxcdmK0AX6x1E5OQNtuh3jHDrUg==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.27.1", @@ -698,9 +698,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.30.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.30.0.tgz", - "integrity": "sha512-Wzw3wQwPvc9sHM+NjakWTcPx11mbZyiYHuwWa/QfZ7cIRX7WK54PSk7bdyXDaoaopUcMatv1zaQvOAAO8hCdww==", + "version": "9.30.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.30.1.tgz", + "integrity": "sha512-zXhuECFlyep42KZUhWjfvsmXGX39W8K8LFb8AWXM9gSV9dQB+MrJGLKvW6Zw0Ggnbpw0VHTtrhFXYe3Gym18jg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -943,17 +943,13 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", - "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "version": "0.3.12", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz", + "integrity": "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/sourcemap-codec": "^1.5.0", "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" } }, "node_modules/@jridgewell/resolve-uri": { @@ -965,25 +961,16 @@ "node": ">=6.0.0" } }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz", + "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "version": "0.3.29", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz", + "integrity": "sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -1456,9 +1443,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.0.tgz", - "integrity": "sha512-0mYH3emanku0vHw2aRLNGqe7EXh9WHEhi7kZzscrMDf6IIRUQ5Jk4wp1QrledE/36KtdZrVfKnE32eZCf/vaVQ==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.1.tgz", + "integrity": "sha512-q/O04vVnKHfrrhNAscndAn1tuQhIkwqnaW+eu5waD5IPts2eX1dgJxgqcPx5BX109/qAz7IG6VrEPTOYKCNfRQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2244,15 +2231,15 @@ } }, "node_modules/cbor": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-10.0.3.tgz", - "integrity": "sha512-72Jnj81xMsqepqdcSdf2+fflz/UDsThOHy5hj2MW5F5xzHL8Oa0KQ6I6V9CwVUPxg5pf+W9xp6W2KilaRXWWtw==", + "version": "10.0.9", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-10.0.9.tgz", + "integrity": "sha512-KEWYehb/vJkRmigctVQLsz73Us2RNnITo/wOwQV5AtZpLGH1r2PPlsNHdsX460YuHZCyhLklbYzAOuJfOeg34Q==", "dev": true, "dependencies": { "nofilter": "^3.0.2" }, "engines": { - "node": ">=18" + "node": ">=20" } }, "node_modules/chalk": { @@ -3280,9 +3267,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.177", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.177.tgz", - "integrity": "sha512-7EH2G59nLsEMj97fpDuvVcYi6lwTcM1xuWw3PssD8xzboAW7zj7iB3COEEEATUfjLHrs5uKBLQT03V/8URx06g==", + "version": "1.5.179", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.179.tgz", + "integrity": "sha512-UWKi/EbBopgfFsc5k61wFpV7WrnnSlSzW/e2XcBmS6qKYTivZlLtoll5/rdqRTxGglGHkmkW0j0pFNJG10EUIQ==", "dev": true }, "node_modules/emittery": { @@ -3384,9 +3371,9 @@ } }, "node_modules/eslint": { - "version": "9.30.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.30.0.tgz", - "integrity": "sha512-iN/SiPxmQu6EVkf+m1qpBxzUhE12YqFLOSySuOyVLJLEF9nzTf+h/1AJYc1JWzCnktggeNrjvQGLngDzXirU6g==", + "version": "9.30.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.30.1.tgz", + "integrity": "sha512-zmxXPNMOXmwm9E0yQLi5uqXHs7uq2UIiqEKo3Gq+3fwo1XrJ+hijAZImyF7hclW3E6oHz43Yk3RP8at6OTKflQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3395,7 +3382,7 @@ "@eslint/config-helpers": "^0.3.0", "@eslint/core": "^0.14.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.30.0", + "@eslint/js": "9.30.1", "@eslint/plugin-kit": "^0.3.1", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -3754,9 +3741,9 @@ } }, "node_modules/esmock": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.7.0.tgz", - "integrity": "sha512-nYSvky0rP//13eYIGJ7b1dhsaBxtS370UoDWbILo1jHlO4hrCUkp/LD3e54QVhySxAGLsufxi5A4+wUAxPUIrg==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.7.1.tgz", + "integrity": "sha512-YgtZ6TSwRbdqFLkJwxVCYkt0rzKpjHb0tbDqSjWvbkm8Uy5Tm5W6ixICb3FVRkAd1uQlLOXiIn7OPY4F4f18cw==", "dev": true, "engines": { "node": ">=14.16.0" @@ -4326,9 +4313,9 @@ } }, "node_modules/globals": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-16.2.0.tgz", - "integrity": "sha512-O+7l9tPdHCU320IigZZPj5zmRCFG9xHmx9cU8FqU2Rp+JN714seHV+2S9+JslCpY4gJwU2vOGox0wzgae/MCEg==", + "version": "16.3.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.3.0.tgz", + "integrity": "sha512-bqWEnJ1Nt3neqx2q5SFfGS8r/ahumIakg3HcwtNlrVlwXIeNumWn/c7Pn/wKzGhf6SaW6H6uWXLqC30STCMchQ==", "dev": true, "engines": { "node": ">=18" @@ -8365,13 +8352,13 @@ "dev": true }, "node_modules/tuf-js": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-3.0.1.tgz", - "integrity": "sha512-+68OP1ZzSF84rTckf3FA95vJ1Zlx/uaXyiiKyPd1pA4rZNkpEvDAKmsu1xUSmbF/chCRYgZ6UZkDwC7PmzmAyA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-3.1.0.tgz", + "integrity": "sha512-3T3T04WzowbwV2FDiGXBbr81t64g1MUGGJRgT4x5o97N+8ArdhVCAF9IxFrxuSJmM3E5Asn7nKHkao0ibcZXAg==", "dependencies": { "@tufjs/models": "3.0.1", - "debug": "^4.3.6", - "make-fetch-happen": "^14.0.1" + "debug": "^4.4.1", + "make-fetch-happen": "^14.0.3" }, "engines": { "node": "^18.17.0 || >=20.5.0" diff --git a/packages/project/package.json b/packages/project/package.json index 626ab5e5637..bbbc76b7399 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,12 +158,12 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.30.0", + "eslint": "^9.30.1", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.8.0", - "esmock": "^2.7.0", - "globals": "^16.2.0", + "esmock": "^2.7.1", + "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From 0fba0f87150817999fb08108b3021bc158cdd382 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 13 Jul 2025 02:20:10 +0000 Subject: [PATCH 1240/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 94 +++++++++++++----------------- packages/project/package.json | 4 +- 2 files changed, 43 insertions(+), 55 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 9a8fbef4f90..6d3d38757ba 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -34,12 +34,12 @@ "devDependencies": { "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.3.0", - "ava": "^6.4.0", + "ava": "^6.4.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.30.1", + "eslint": "^9.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.8.0", @@ -516,9 +516,9 @@ } }, "node_modules/@babel/types": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.0.tgz", - "integrity": "sha512-jYnje+JyZG5YThjHiF28oT4SIZLnYOcSBb6+SDaFIyzDVSkXQmQQYclJ2R+YxcdmK0AX6x1E5OQNtuh3jHDrUg==", + "version": "7.28.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.1.tgz", + "integrity": "sha512-x0LvFTekgSX+83TI28Y9wYPUfzrnl2aT5+5QLnO6v7mSJYtEEevuDRN0F0uSHRk1G1IWZC43o00Y0xDDrpBGPQ==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.27.1", @@ -629,9 +629,9 @@ } }, "node_modules/@eslint/core": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.14.0.tgz", - "integrity": "sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.1.tgz", + "integrity": "sha512-bkOp+iumZCCbt1K1CmWf0R9pM5yKpDv+ZXtvSyQpudrI9kuFLp+bM2WOPXImuD/ceQuaa8f5pj93Y7zyECIGNA==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.15" @@ -698,9 +698,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.30.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.30.1.tgz", - "integrity": "sha512-zXhuECFlyep42KZUhWjfvsmXGX39W8K8LFb8AWXM9gSV9dQB+MrJGLKvW6Zw0Ggnbpw0VHTtrhFXYe3Gym18jg==", + "version": "9.31.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.31.0.tgz", + "integrity": "sha512-LOm5OVt7D4qiKCqoiPbA7LWmI+tbw1VbTUowBcUMgQSuM6poJufkFkYDcQpo5KfgD39TnNySV26QjOh7VFpSyw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -731,18 +731,6 @@ "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.1.tgz", - "integrity": "sha512-bkOp+iumZCCbt1K1CmWf0R9pM5yKpDv+ZXtvSyQpudrI9kuFLp+bM2WOPXImuD/ceQuaa8f5pj93Y7zyECIGNA==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, "node_modules/@humanfs/core": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", @@ -1443,9 +1431,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.1.tgz", - "integrity": "sha512-q/O04vVnKHfrrhNAscndAn1tuQhIkwqnaW+eu5waD5IPts2eX1dgJxgqcPx5BX109/qAz7IG6VrEPTOYKCNfRQ==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", + "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1648,9 +1636,9 @@ } }, "node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "engines": { "node": ">= 14" } @@ -1834,22 +1822,22 @@ "dev": true }, "node_modules/ava": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/ava/-/ava-6.4.0.tgz", - "integrity": "sha512-aeFapuBZtaGwVMlFFf074SZJ0bPcdmAdJdsvhHMp+XaOnC2DgeMzopb7yyYAhulNGRJQfUK/SIBYo2PoX7+gtw==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/ava/-/ava-6.4.1.tgz", + "integrity": "sha512-vxmPbi1gZx9zhAjHBgw81w/iEDKcrokeRk/fqDTyA2DQygZ0o+dUGRHFOtX8RA5N0heGJTTsIk7+xYxitDb61Q==", "dev": true, "dependencies": { "@vercel/nft": "^0.29.4", - "acorn": "^8.14.1", + "acorn": "^8.15.0", "acorn-walk": "^8.3.4", "ansi-styles": "^6.2.1", "arrgv": "^1.0.2", "arrify": "^3.0.0", "callsites": "^4.2.0", - "cbor": "^10.0.3", + "cbor": "^10.0.9", "chalk": "^5.4.1", "chunkd": "^2.0.1", - "ci-info": "^4.2.0", + "ci-info": "^4.3.0", "ci-parallel-vars": "^1.0.1", "cli-truncate": "^4.0.0", "code-excerpt": "^4.0.0", @@ -1857,7 +1845,7 @@ "concordance": "^5.0.4", "currently-unhandled": "^0.4.1", "debug": "^4.4.1", - "emittery": "^1.1.0", + "emittery": "^1.2.0", "figures": "^6.1.0", "globby": "^14.1.0", "ignore-by-default": "^2.1.0", @@ -2199,9 +2187,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001726", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001726.tgz", - "integrity": "sha512-VQAUIUzBiZ/UnlM28fSp2CRF3ivUn1BWEvxMcVTNwpw91Py1pGbPIyIKtd+tzct9C3ouceCVdGAXxZOpZAsgdw==", + "version": "1.0.30001727", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001727.tgz", + "integrity": "sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==", "dev": true, "funding": [ { @@ -2477,9 +2465,9 @@ "dev": true }, "node_modules/ci-info": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.2.0.tgz", - "integrity": "sha512-cYY9mypksY8NRqgDB1XD1RiJL338v/551niynFTGkZOO2LHuB2OmOYxDIe/ttN9AHwrqdum1360G3ald0W9kCg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.3.0.tgz", + "integrity": "sha512-l+2bNRMiQgcfILUi33labAZYIWlH1kWDp+ecNo5iisRKrbm0xcRyCww71/YU0Fkw0mAFpz9bJayXPjey6vkmaQ==", "funding": [ { "type": "github", @@ -3267,9 +3255,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.179", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.179.tgz", - "integrity": "sha512-UWKi/EbBopgfFsc5k61wFpV7WrnnSlSzW/e2XcBmS6qKYTivZlLtoll5/rdqRTxGglGHkmkW0j0pFNJG10EUIQ==", + "version": "1.5.182", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.182.tgz", + "integrity": "sha512-Lv65Btwv9W4J9pyODI6EWpdnhfvrve/us5h1WspW8B2Fb0366REPtY3hX7ounk1CkV/TBjWCEvCBBbYbmV0qCA==", "dev": true }, "node_modules/emittery": { @@ -3371,18 +3359,18 @@ } }, "node_modules/eslint": { - "version": "9.30.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.30.1.tgz", - "integrity": "sha512-zmxXPNMOXmwm9E0yQLi5uqXHs7uq2UIiqEKo3Gq+3fwo1XrJ+hijAZImyF7hclW3E6oHz43Yk3RP8at6OTKflQ==", + "version": "9.31.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.31.0.tgz", + "integrity": "sha512-QldCVh/ztyKJJZLr4jXNUByx3gR+TDYZCRXEktiZoUR3PGy4qCmSbkxcIle8GEwGpb5JBZazlaJ/CxLidXdEbQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.21.0", "@eslint/config-helpers": "^0.3.0", - "@eslint/core": "^0.14.0", + "@eslint/core": "^0.15.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.30.1", + "@eslint/js": "9.31.0", "@eslint/plugin-kit": "^0.3.1", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -7525,9 +7513,9 @@ } }, "node_modules/socks": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.5.tgz", - "integrity": "sha512-iF+tNDQla22geJdTyJB1wM/qrX9DMRwWrciEPwWLPRWAUEM8sQiyxgckLxWT1f7+9VabJS0jTGGr4QgBuvi6Ww==", + "version": "2.8.6", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.6.tgz", + "integrity": "sha512-pe4Y2yzru68lXCb38aAqRf5gvN8YdjP1lok5o0J7BOHljkyCGKVz7H3vpVIXKD27rj2giOJ7DwVyk/GWrPHDWA==", "dependencies": { "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" diff --git a/packages/project/package.json b/packages/project/package.json index bbbc76b7399..5480175cc55 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -153,12 +153,12 @@ "devDependencies": { "@eslint/js": "^9.8.0", "@istanbuljs/esm-loader-hook": "^0.3.0", - "ava": "^6.4.0", + "ava": "^6.4.1", "chokidar-cli": "^3.0.0", "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.30.1", + "eslint": "^9.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", "eslint-plugin-jsdoc": "^50.8.0", From 6e657ab6c05aba31a516a58c0695c62b6b9fc5b9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 09:41:27 +0000 Subject: [PATCH 1241/1272] [ui5-project][INTERNAL] Bump eslint-plugin-jsdoc from 50.8.0 to 51.3.4 (#811) --- packages/project/package-lock.json | 31 +++++++++++++++++------------- packages/project/package.json | 2 +- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6d3d38757ba..afa5b28e910 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^9.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.8.0", + "eslint-plugin-jsdoc": "^51.3.4", "esmock": "^2.7.1", "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", @@ -529,19 +529,20 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.50.2", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.50.2.tgz", - "integrity": "sha512-YAdE/IJSpwbOTiaURNCKECdAwqrJuFiZhylmesBcIRawtYKnBR2wxPhoIewMg+Yu+QuYvHfJNReWpoxGBKOChA==", + "version": "0.52.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.52.0.tgz", + "integrity": "sha512-BXuN7BII+8AyNtn57euU2Yxo9yA/KUDNzrpXyi3pfqKmBhhysR6ZWOebFh3vyPoqA3/j1SOvGgucElMGwlXing==", "dev": true, + "license": "MIT", "dependencies": { - "@types/estree": "^1.0.6", - "@typescript-eslint/types": "^8.11.0", + "@types/estree": "^1.0.8", + "@typescript-eslint/types": "^8.34.1", "comment-parser": "1.4.1", "esquery": "^1.6.0", "jsdoc-type-pratt-parser": "~4.1.0" }, "engines": { - "node": ">=18" + "node": ">=20.11.0" } }, "node_modules/@eslint-community/eslint-utils": { @@ -1435,6 +1436,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", "dev": true, + "license": "MIT", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -2677,6 +2679,7 @@ "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 12.0.0" } @@ -3482,24 +3485,25 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.8.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.8.0.tgz", - "integrity": "sha512-UyGb5755LMFWPrZTEqqvTJ3urLz1iqj+bYOHFNag+sw3NvaMWP9K2z+uIn37XfNALmQLQyrBlJ5mkiVPL7ADEg==", + "version": "51.3.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-51.3.4.tgz", + "integrity": "sha512-maz6qa95+sAjMr9m5oRyfejc+mnyQWsWSe9oyv9371bh4/T0kWOMryJNO4h8rEd97wo/9lbzwi3OOX4rDhnAzg==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { - "@es-joy/jsdoccomment": "~0.50.2", + "@es-joy/jsdoccomment": "~0.52.0", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", "debug": "^4.4.1", "escape-string-regexp": "^4.0.0", - "espree": "^10.3.0", + "espree": "^10.4.0", "esquery": "^1.6.0", "parse-imports-exports": "^0.2.4", "semver": "^7.7.2", "spdx-expression-parse": "^4.0.0" }, "engines": { - "node": ">=18" + "node": ">=20.11.0" }, "peerDependencies": { "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" @@ -5122,6 +5126,7 @@ "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.1.0.tgz", "integrity": "sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==", "dev": true, + "license": "MIT", "engines": { "node": ">=12.0.0" } diff --git a/packages/project/package.json b/packages/project/package.json index 5480175cc55..abbd3ee03e4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^9.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^50.8.0", + "eslint-plugin-jsdoc": "^51.3.4", "esmock": "^2.7.1", "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", From 9ed56c394111d7326f8aea1d3b4981ffe2ff25d5 Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 15 Jul 2025 08:59:07 +0000 Subject: [PATCH 1242/1272] [ui5-project][INTERNAL] Bump @ui5/builder from to Changelog of this version: https://github.com/SAP/ui5-builder/blob/v/CHANGELOG.md --- packages/project/package-lock.json | 42 ++++++++++++++++++------------ packages/project/package.json | 2 +- 2 files changed, 27 insertions(+), 17 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index afa5b28e910..5b1da702b6e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -62,7 +62,7 @@ "npm": ">= 8" }, "peerDependencies": { - "@ui5/builder": "^4.0.7" + "@ui5/builder": "^4.0.8" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -533,7 +533,6 @@ "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.52.0.tgz", "integrity": "sha512-BXuN7BII+8AyNtn57euU2Yxo9yA/KUDNzrpXyi3pfqKmBhhysR6ZWOebFh3vyPoqA3/j1SOvGgucElMGwlXing==", "dev": true, - "license": "MIT", "dependencies": { "@types/estree": "^1.0.8", "@typescript-eslint/types": "^8.34.1", @@ -1432,11 +1431,10 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", - "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.37.0.tgz", + "integrity": "sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==", "dev": true, - "license": "MIT", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -2679,7 +2677,6 @@ "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 12.0.0" } @@ -3258,9 +3255,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.182", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.182.tgz", - "integrity": "sha512-Lv65Btwv9W4J9pyODI6EWpdnhfvrve/us5h1WspW8B2Fb0366REPtY3hX7ounk1CkV/TBjWCEvCBBbYbmV0qCA==", + "version": "1.5.183", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.183.tgz", + "integrity": "sha512-vCrDBYjQCAEefWGjlK3EpoSKfKbT10pR4XXPdn65q7snuNOZnthoVpBfZPykmDapOKfoD+MMIPG8ZjKyyc9oHA==", "dev": true }, "node_modules/emittery": { @@ -3489,7 +3486,6 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-51.3.4.tgz", "integrity": "sha512-maz6qa95+sAjMr9m5oRyfejc+mnyQWsWSe9oyv9371bh4/T0kWOMryJNO4h8rEd97wo/9lbzwi3OOX4rDhnAzg==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { "@es-joy/jsdoccomment": "~0.52.0", "are-docs-informative": "^0.0.2", @@ -5126,7 +5122,6 @@ "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.1.0.tgz", "integrity": "sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==", "dev": true, - "license": "MIT", "engines": { "node": ">=12.0.0" } @@ -6277,15 +6272,15 @@ } }, "node_modules/open": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/open/-/open-10.1.2.tgz", - "integrity": "sha512-cxN6aIDPz6rm8hbebcP7vrQNhvRcveZoJU72Y7vskh4oIm+BZwBECnx5nTmrlres1Qapvx27Qo1Auukpf8PKXw==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/open/-/open-10.2.0.tgz", + "integrity": "sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA==", "dev": true, "dependencies": { "default-browser": "^5.2.1", "define-lazy-prop": "^3.0.0", "is-inside-container": "^1.0.0", - "is-wsl": "^3.1.0" + "wsl-utils": "^0.1.0" }, "engines": { "node": ">=18" @@ -8716,6 +8711,21 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/wsl-utils": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/wsl-utils/-/wsl-utils-0.1.0.tgz", + "integrity": "sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw==", + "dev": true, + "dependencies": { + "is-wsl": "^3.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/xml2js": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index abbd3ee03e4..69055ca10bb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -143,7 +143,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^4.0.7" + "@ui5/builder": "^4.0.8" }, "peerDependenciesMeta": { "@ui5/builder": { From 59bb4362d0b5bfda33d380cf394bd16b073a2fde Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 18 Jul 2025 07:38:07 +0000 Subject: [PATCH 1243/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 20 ++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5b1da702b6e..0f66ac58e53 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^9.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^51.3.4", + "eslint-plugin-jsdoc": "^51.4.1", "esmock": "^2.7.1", "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", @@ -3255,9 +3255,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.183", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.183.tgz", - "integrity": "sha512-vCrDBYjQCAEefWGjlK3EpoSKfKbT10pR4XXPdn65q7snuNOZnthoVpBfZPykmDapOKfoD+MMIPG8ZjKyyc9oHA==", + "version": "1.5.187", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.187.tgz", + "integrity": "sha512-cl5Jc9I0KGUoOoSbxvTywTa40uspGJt/BDBoDLoxJRSBpWh4FFXBsjNRHfQrONsV/OoEjDfHUmZQa2d6Ze4YgA==", "dev": true }, "node_modules/emittery": { @@ -3482,9 +3482,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "51.3.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-51.3.4.tgz", - "integrity": "sha512-maz6qa95+sAjMr9m5oRyfejc+mnyQWsWSe9oyv9371bh4/T0kWOMryJNO4h8rEd97wo/9lbzwi3OOX4rDhnAzg==", + "version": "51.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-51.4.1.tgz", + "integrity": "sha512-y4CA9OkachG8v5nAtrwvcvjIbdcKgSyS6U//IfQr4FZFFyeBFwZFf/tfSsMr46mWDJgidZjBTqoCRlXywfFBMg==", "dev": true, "dependencies": { "@es-joy/jsdoccomment": "~0.52.0", @@ -6683,9 +6683,9 @@ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "node_modules/picomatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", - "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "engines": { "node": ">=12" }, diff --git a/packages/project/package.json b/packages/project/package.json index 69055ca10bb..bb2023877f2 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^9.31.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.0.1", - "eslint-plugin-jsdoc": "^51.3.4", + "eslint-plugin-jsdoc": "^51.4.1", "esmock": "^2.7.1", "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", From 0069b884f05aeadc5fe863dad504e7a030211419 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 20 Jul 2025 02:20:07 +0000 Subject: [PATCH 1244/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 8 ++++---- packages/project/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 0f66ac58e53..6773d7e908b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -41,7 +41,7 @@ "docdash": "^2.0.2", "eslint": "^9.31.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-ava": "^15.0.1", + "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^51.4.1", "esmock": "^2.7.1", "globals": "^16.3.0", @@ -3431,9 +3431,9 @@ } }, "node_modules/eslint-plugin-ava": { - "version": "15.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-15.0.1.tgz", - "integrity": "sha512-eRX7mLFPvalGDWztJ4zm+anez2X6J/88r9CqLFfPAIMvFlGyJ+dUoFppoohgUQZLV09mIBNz5guP07zFJOLF8g==", + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-ava/-/eslint-plugin-ava-15.1.0.tgz", + "integrity": "sha512-+6Zxk1uYW3mf7lxCLWIQsFYgn3hfuCMbsKc0MtqfloOz1F6fiV5/PaWEaLgkL1egrSQmnyR7vOFP1wSPJbVUbw==", "dev": true, "dependencies": { "enhance-visitors": "^1.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index bb2023877f2..32e070c4400 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -160,7 +160,7 @@ "docdash": "^2.0.2", "eslint": "^9.31.0", "eslint-config-google": "^0.14.0", - "eslint-plugin-ava": "^15.0.1", + "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^51.4.1", "esmock": "^2.7.1", "globals": "^16.3.0", From 2b91f11d30be0ead83de48bd7f1b55cc5754016b Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 27 Jul 2025 02:20:11 +0000 Subject: [PATCH 1245/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 122 ++++++++++++++--------------- packages/project/package.json | 2 +- 2 files changed, 58 insertions(+), 66 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 6773d7e908b..c1ea6bf0f9e 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.31.0", + "eslint": "^9.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^51.4.1", @@ -357,13 +357,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.27.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.6.tgz", - "integrity": "sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==", + "version": "7.28.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.2.tgz", + "integrity": "sha512-/V9771t+EgXz62aCcyofnQhGM8DQACbRhvzKFsXKC9QM+5MadF8ZmIm0crDMaz3+o0h0zXfJnd4EhbYbxsrcFw==", "dev": true, "dependencies": { "@babel/template": "^7.27.2", - "@babel/types": "^7.27.6" + "@babel/types": "^7.28.2" }, "engines": { "node": ">=6.9.0" @@ -516,9 +516,9 @@ } }, "node_modules/@babel/types": { - "version": "7.28.1", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.1.tgz", - "integrity": "sha512-x0LvFTekgSX+83TI28Y9wYPUfzrnl2aT5+5QLnO6v7mSJYtEEevuDRN0F0uSHRk1G1IWZC43o00Y0xDDrpBGPQ==", + "version": "7.28.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.2.tgz", + "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.27.1", @@ -698,9 +698,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.31.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.31.0.tgz", - "integrity": "sha512-LOm5OVt7D4qiKCqoiPbA7LWmI+tbw1VbTUowBcUMgQSuM6poJufkFkYDcQpo5KfgD39TnNySV26QjOh7VFpSyw==", + "version": "9.32.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.32.0.tgz", + "integrity": "sha512-BBpRFZK3eX6uMLKz8WxFOBIFFcGFJ/g8XuwjTHCqHROSIsopI+ddn/d5Cfh36+7+e5edVS8dbSHnBNhrLEX0zg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -719,9 +719,9 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.3.tgz", - "integrity": "sha512-1+WqvgNMhmlAambTvT3KPtCl/Ibr68VldY2XY40SL1CE0ZXiakFR/cbTspaF5HsnpDMvcYYoJHfl4980NBjGag==", + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.4.tgz", + "integrity": "sha512-Ul5l+lHEcw3L5+k8POx6r74mxEYKG5kOb6Xpy2gCRW6zweT6TEhAf8vhxGgjhqrd/VO/Dirhsb+1hNpD1ue9hw==", "dev": true, "dependencies": { "@eslint/core": "^0.15.1", @@ -1334,13 +1334,12 @@ } }, "node_modules/@sinonjs/samsam": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.2.tgz", - "integrity": "sha512-v46t/fwnhejRSFTGqbpn9u+LQ9xJDse10gNnPgAcxgdoCDMXj/G2asWAC/8Qs+BAZDicX+MNZouXT1A7c83kVw==", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.3.tgz", + "integrity": "sha512-hw6HbX+GyVZzmaYNh82Ecj1vdGZrqVIn/keDTg63IgAwiQPO+xCz99uG6Woqgb4tM0mUiFENKZ4cqd7IX94AXQ==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1", - "lodash.get": "^4.4.2", "type-detect": "^4.1.0" } }, @@ -1431,9 +1430,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.37.0.tgz", - "integrity": "sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", + "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1518,39 +1517,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.17", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.17.tgz", - "integrity": "sha512-Xe+AittLbAyV0pabcN7cP7/BenRBNcteM4aSDCtRvGw0d9OL+HG1u/XHLY/kt1q4fyMeZYXyIYrsHuPSiDPosA==", + "version": "3.5.18", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.18.tgz", + "integrity": "sha512-3slwjQrrV1TO8MoXgy3aynDQ7lslj5UqDxuHnrzHtpON5CBinhWjJETciPngpin/T3OuW3tXUf86tEurusnztw==", "dev": true, "dependencies": { - "@babel/parser": "^7.27.5", - "@vue/shared": "3.5.17", + "@babel/parser": "^7.28.0", + "@vue/shared": "3.5.18", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.17", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.17.tgz", - "integrity": "sha512-+2UgfLKoaNLhgfhV5Ihnk6wB4ljyW1/7wUIog2puUqajiC29Lp5R/IKDdkebh9jTbTogTbsgB+OY9cEWzG95JQ==", + "version": "3.5.18", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.18.tgz", + "integrity": "sha512-RMbU6NTU70++B1JyVJbNbeFkK+A+Q7y9XKE2EM4NLGm2WFR8x9MbAtWxPPLdm0wUkuZv9trpwfSlL6tjdIa1+A==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.17", - "@vue/shared": "3.5.17" + "@vue/compiler-core": "3.5.18", + "@vue/shared": "3.5.18" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.17", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.17.tgz", - "integrity": "sha512-rQQxbRJMgTqwRugtjw0cnyQv9cP4/4BxWfTdRBkqsTfLOHWykLzbOc3C4GGzAmdMDxhzU/1Ija5bTjMVrddqww==", + "version": "3.5.18", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.18.tgz", + "integrity": "sha512-5aBjvGqsWs+MoxswZPoTB9nSDb3dhd1x30xrrltKujlCxo48j8HGDNj3QPhF4VIS0VQDUrA1xUfp2hEa+FNyXA==", "dev": true, "dependencies": { - "@babel/parser": "^7.27.5", - "@vue/compiler-core": "3.5.17", - "@vue/compiler-dom": "3.5.17", - "@vue/compiler-ssr": "3.5.17", - "@vue/shared": "3.5.17", + "@babel/parser": "^7.28.0", + "@vue/compiler-core": "3.5.18", + "@vue/compiler-dom": "3.5.18", + "@vue/compiler-ssr": "3.5.18", + "@vue/shared": "3.5.18", "estree-walker": "^2.0.2", "magic-string": "^0.30.17", "postcss": "^8.5.6", @@ -1558,19 +1557,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.17", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.17.tgz", - "integrity": "sha512-hkDbA0Q20ZzGgpj5uZjb9rBzQtIHLS78mMilwrlpWk2Ep37DYntUz0PonQ6kr113vfOEdM+zTBuJDaceNIW0tQ==", + "version": "3.5.18", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.18.tgz", + "integrity": "sha512-xM16Ak7rSWHkM3m22NlmcdIM+K4BMyFARAfV9hYFl+SFuRzrZ3uGMNW05kA5pmeMa0X9X963Kgou7ufdbpOP9g==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.17", - "@vue/shared": "3.5.17" + "@vue/compiler-dom": "3.5.18", + "@vue/shared": "3.5.18" } }, "node_modules/@vue/shared": { - "version": "3.5.17", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.17.tgz", - "integrity": "sha512-CabR+UN630VnsJO/jHWYBC1YVXyMq94KKp6iF5MQgZJs5I8cmjw6oVMO1oDbtBkENSHSSn/UadWlW/OAgdmKrg==", + "version": "3.5.18", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.18.tgz", + "integrity": "sha512-cZy8Dq+uuIXbxCZpuLd2GJdeSO/lIzIspC2WtkqIpje5QyFbvLaI5wZtdUjLHjGZrlVX6GilejatWwVYYRc8tA==", "dev": true }, "node_modules/abbrev": { @@ -3255,9 +3254,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.187", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.187.tgz", - "integrity": "sha512-cl5Jc9I0KGUoOoSbxvTywTa40uspGJt/BDBoDLoxJRSBpWh4FFXBsjNRHfQrONsV/OoEjDfHUmZQa2d6Ze4YgA==", + "version": "1.5.191", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.191.tgz", + "integrity": "sha512-xcwe9ELcuxYLUFqZZxL19Z6HVKcvNkIwhbHUz7L3us6u12yR+7uY89dSl570f/IqNthx8dAw3tojG7i4Ni4tDA==", "dev": true }, "node_modules/emittery": { @@ -3359,9 +3358,9 @@ } }, "node_modules/eslint": { - "version": "9.31.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.31.0.tgz", - "integrity": "sha512-QldCVh/ztyKJJZLr4jXNUByx3gR+TDYZCRXEktiZoUR3PGy4qCmSbkxcIle8GEwGpb5JBZazlaJ/CxLidXdEbQ==", + "version": "9.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.32.0.tgz", + "integrity": "sha512-LSehfdpgMeWcTZkWZVIJl+tkZ2nuSkyyB9C27MZqFWXuph7DvaowgcTvKqxvpLW1JZIk8PN7hFY3Rj9LQ7m7lg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3370,8 +3369,8 @@ "@eslint/config-helpers": "^0.3.0", "@eslint/core": "^0.15.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.31.0", - "@eslint/plugin-kit": "^0.3.1", + "@eslint/js": "9.32.0", + "@eslint/plugin-kit": "^0.3.4", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.2", @@ -5293,13 +5292,6 @@ "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", "dev": true }, - "node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", - "deprecated": "This package is deprecated. Use the optional chaining (?.) operator instead.", - "dev": true - }, "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", @@ -8523,9 +8515,9 @@ } }, "node_modules/validate-npm-package-name": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.1.tgz", - "integrity": "sha512-OaI//3H0J7ZkR1OqlhGA8cA+Cbk/2xFOQpJOt5+s27/ta9eZwpeervh4Mxh4w0im/kdgktowaqVNR7QOrUd7Yg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-6.0.2.tgz", + "integrity": "sha512-IUoow1YUtvoBBC06dXs8bR8B9vuA3aJfmQNKMoaPG/OFsPmoQvw8xh+6Ye25Gx9DQhoEom3Pcu9MKHerm/NpUQ==", "engines": { "node": "^18.17.0 || >=20.5.0" } diff --git a/packages/project/package.json b/packages/project/package.json index 32e070c4400..e99b312f3bb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.31.0", + "eslint": "^9.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^51.4.1", From 41187f254d7d3b2032c63b5113baeb3fb9ac2b46 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Tue, 29 Jul 2025 11:29:56 +0000 Subject: [PATCH 1246/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c1ea6bf0f9e..64582c36b09 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -2186,9 +2186,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001727", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001727.tgz", - "integrity": "sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==", + "version": "1.0.30001731", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001731.tgz", + "integrity": "sha512-lDdp2/wrOmTRWuoB5DpfNkC0rJDU8DqRa6nYL6HK6sytw70QMopt/NIc/9SM7ylItlBWfACXk0tEn37UWM/+mg==", "dev": true, "funding": [ { @@ -3254,9 +3254,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.191", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.191.tgz", - "integrity": "sha512-xcwe9ELcuxYLUFqZZxL19Z6HVKcvNkIwhbHUz7L3us6u12yR+7uY89dSl570f/IqNthx8dAw3tojG7i4Ni4tDA==", + "version": "1.5.192", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.192.tgz", + "integrity": "sha512-rP8Ez0w7UNw/9j5eSXCe10o1g/8B1P5SM90PCCMVkIRQn2R0LEHWz4Eh9RnxkniuDe1W0cTSOB3MLlkTGDcuCg==", "dev": true }, "node_modules/emittery": { From bdd6ae9bca09543c48d755c8d50137a8bbb7b725 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Jul 2025 06:35:54 +0000 Subject: [PATCH 1247/1272] [ui5-project][DEPENDENCY] Bump make-fetch-happen from 14.0.3 to 15.0.0 (#812) --- packages/project/package-lock.json | 202 ++++++++++++++++++++++++++++- packages/project/package.json | 2 +- 2 files changed, 197 insertions(+), 7 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 64582c36b09..e08807ccf9d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -20,7 +20,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^14.0.3", + "make-fetch-happen": "^15.0.0", "node-stream-zip": "^1.15.0", "pacote": "^19.0.1", "pretty-hrtime": "^1.0.3", @@ -1279,6 +1279,28 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", + "license": "ISC", + "dependencies": { + "@npmcli/agent": "^3.0.0", + "cacache": "^19.0.1", + "http-cache-semantics": "^4.1.1", + "minipass": "^7.0.2", + "minipass-fetch": "^4.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^1.0.0", + "proc-log": "^5.0.0", + "promise-retry": "^2.0.1", + "ssri": "^12.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/@sigstore/tuf": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-3.1.1.tgz", @@ -5338,12 +5360,13 @@ } }, "node_modules/make-fetch-happen": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", - "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-15.0.0.tgz", + "integrity": "sha512-zEnf7RnAK4aMG7RszSdSwPc11A15LpCmfATA64YKMOIEGnwgpC2rzHdzKNXpyM3jfI75UVq8YN41jJacmwFsRA==", + "license": "ISC", "dependencies": { "@npmcli/agent": "^3.0.0", - "cacache": "^19.0.1", + "cacache": "^20.0.0", "http-cache-semantics": "^4.1.1", "minipass": "^7.0.2", "minipass-fetch": "^4.0.0", @@ -5355,7 +5378,108 @@ "ssri": "^12.0.0" }, "engines": { - "node": "^18.17.0 || >=20.5.0" + "node": "^20.17.0 || >=22.9.0" + } + }, + "node_modules/make-fetch-happen/node_modules/cacache": { + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-20.0.0.tgz", + "integrity": "sha512-2Js2sNgHK36Fdu3ItpQqJjwUXAURb0uyo9i83Tr2wUQINU4tPl4AtQYh6mCqwVFV5W8+Vgcna+bSTQeyPLG/sQ==", + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^11.0.3", + "lru-cache": "^11.1.0", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, + "engines": { + "node": "^20.17.0 || >=22.9.0" + } + }, + "node_modules/make-fetch-happen/node_modules/glob": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz", + "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", + "license": "ISC", + "dependencies": { + "foreground-child": "^3.3.1", + "jackspeak": "^4.1.1", + "minimatch": "^10.0.3", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/make-fetch-happen/node_modules/jackspeak": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.1.tgz", + "integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==", + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz", + "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", + "license": "ISC", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/make-fetch-happen/node_modules/minimatch": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", + "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", + "license": "ISC", + "dependencies": { + "@isaacs/brace-expansion": "^5.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/make-fetch-happen/node_modules/path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/markdown-it": { @@ -5808,6 +5932,28 @@ "node-gyp-build-test": "build-test.js" } }, + "node_modules/node-gyp/node_modules/make-fetch-happen": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", + "license": "ISC", + "dependencies": { + "@npmcli/agent": "^3.0.0", + "cacache": "^19.0.1", + "http-cache-semantics": "^4.1.1", + "minipass": "^7.0.2", + "minipass-fetch": "^4.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^1.0.0", + "proc-log": "^5.0.0", + "promise-retry": "^2.0.1", + "ssri": "^12.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -5986,6 +6132,28 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", + "license": "ISC", + "dependencies": { + "@npmcli/agent": "^3.0.0", + "cacache": "^19.0.1", + "http-cache-semantics": "^4.1.1", + "minipass": "^7.0.2", + "minipass-fetch": "^4.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^1.0.0", + "proc-log": "^5.0.0", + "promise-retry": "^2.0.1", + "ssri": "^12.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/nyc": { "version": "17.1.0", "resolved": "https://registry.npmjs.org/nyc/-/nyc-17.1.0.tgz", @@ -8344,6 +8512,28 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/tuf-js/node_modules/make-fetch-happen": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", + "license": "ISC", + "dependencies": { + "@npmcli/agent": "^3.0.0", + "cacache": "^19.0.1", + "http-cache-semantics": "^4.1.1", + "minipass": "^7.0.2", + "minipass-fetch": "^4.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^1.0.0", + "proc-log": "^5.0.0", + "promise-retry": "^2.0.1", + "ssri": "^12.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index e99b312f3bb..774906fab18 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -131,7 +131,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^14.0.3", + "make-fetch-happen": "^15.0.0", "node-stream-zip": "^1.15.0", "pacote": "^19.0.1", "pretty-hrtime": "^1.0.3", From 2773c13b12b64615fa7ca2edb6e1d5caccf3b11f Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 30 Jul 2025 06:37:42 +0000 Subject: [PATCH 1248/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 409 +++++++++++++++++++---------- 1 file changed, 272 insertions(+), 137 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e08807ccf9d..7bdc2d14d3b 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1279,11 +1279,37 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/@sigstore/sign/node_modules/cacache": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@sigstore/sign/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { "version": "14.0.3", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", - "license": "ISC", "dependencies": { "@npmcli/agent": "^3.0.0", "cacache": "^19.0.1", @@ -2094,14 +2120,14 @@ } }, "node_modules/cacache": { - "version": "19.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", - "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-20.0.0.tgz", + "integrity": "sha512-2Js2sNgHK36Fdu3ItpQqJjwUXAURb0uyo9i83Tr2wUQINU4tPl4AtQYh6mCqwVFV5W8+Vgcna+bSTQeyPLG/sQ==", "dependencies": { "@npmcli/fs": "^4.0.0", "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", + "glob": "^11.0.3", + "lru-cache": "^11.1.0", "minipass": "^7.0.3", "minipass-collect": "^2.0.1", "minipass-flush": "^1.0.5", @@ -2112,13 +2138,81 @@ "unique-filename": "^4.0.0" }, "engines": { - "node": "^18.17.0 || >=20.5.0" + "node": "^20.17.0 || >=22.9.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz", + "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", + "dependencies": { + "foreground-child": "^3.3.1", + "jackspeak": "^4.1.1", + "minimatch": "^10.0.3", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/jackspeak": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.1.tgz", + "integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz", + "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", + "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", + "dependencies": { + "@isaacs/brace-expansion": "^5.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, "node_modules/caching-transform": { "version": "4.0.0", @@ -5363,7 +5457,6 @@ "version": "15.0.0", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-15.0.0.tgz", "integrity": "sha512-zEnf7RnAK4aMG7RszSdSwPc11A15LpCmfATA64YKMOIEGnwgpC2rzHdzKNXpyM3jfI75UVq8YN41jJacmwFsRA==", - "license": "ISC", "dependencies": { "@npmcli/agent": "^3.0.0", "cacache": "^20.0.0", @@ -5381,107 +5474,6 @@ "node": "^20.17.0 || >=22.9.0" } }, - "node_modules/make-fetch-happen/node_modules/cacache": { - "version": "20.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-20.0.0.tgz", - "integrity": "sha512-2Js2sNgHK36Fdu3ItpQqJjwUXAURb0uyo9i83Tr2wUQINU4tPl4AtQYh6mCqwVFV5W8+Vgcna+bSTQeyPLG/sQ==", - "license": "ISC", - "dependencies": { - "@npmcli/fs": "^4.0.0", - "fs-minipass": "^3.0.0", - "glob": "^11.0.3", - "lru-cache": "^11.1.0", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^7.0.2", - "ssri": "^12.0.0", - "tar": "^7.4.3", - "unique-filename": "^4.0.0" - }, - "engines": { - "node": "^20.17.0 || >=22.9.0" - } - }, - "node_modules/make-fetch-happen/node_modules/glob": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz", - "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", - "license": "ISC", - "dependencies": { - "foreground-child": "^3.3.1", - "jackspeak": "^4.1.1", - "minimatch": "^10.0.3", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^2.0.0" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/make-fetch-happen/node_modules/jackspeak": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.1.tgz", - "integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==", - "license": "BlueOak-1.0.0", - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz", - "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", - "license": "ISC", - "engines": { - "node": "20 || >=22" - } - }, - "node_modules/make-fetch-happen/node_modules/minimatch": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", - "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", - "license": "ISC", - "dependencies": { - "@isaacs/brace-expansion": "^5.0.0" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/make-fetch-happen/node_modules/path-scurry": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", - "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", - "license": "BlueOak-1.0.0", - "dependencies": { - "lru-cache": "^11.0.0", - "minipass": "^7.1.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/markdown-it": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", @@ -5899,9 +5891,9 @@ } }, "node_modules/node-gyp": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.2.0.tgz", - "integrity": "sha512-T0S1zqskVUSxcsSTkAsLc7xCycrRYmtDHadDinzocrThjyQCn5kMlEBSj6H4qDbgsIOSLmmlRIeb0lZXj+UArA==", + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.3.0.tgz", + "integrity": "sha512-9J0+C+2nt3WFuui/mC46z2XCZ21/cKlFDuywULmseD/LlmnOrSeEAE4c/1jw6aybXLmpZnQY3/LmOJfgyHIcng==", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", @@ -5932,11 +5924,37 @@ "node-gyp-build-test": "build-test.js" } }, + "node_modules/node-gyp/node_modules/cacache": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/node-gyp/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "node_modules/node-gyp/node_modules/make-fetch-happen": { "version": "14.0.3", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", - "license": "ISC", "dependencies": { "@npmcli/agent": "^3.0.0", "cacache": "^19.0.1", @@ -6132,11 +6150,37 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/npm-registry-fetch/node_modules/cacache": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { "version": "14.0.3", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", - "license": "ISC", "dependencies": { "@npmcli/agent": "^3.0.0", "cacache": "^19.0.1", @@ -6601,37 +6645,71 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "node_modules/pacote/node_modules/cacache": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, "engines": { - "node": ">=10" + "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" + "node_modules/pacote/node_modules/cacache/node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" }, "engines": { - "node": ">= 8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/pacote/node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/pacote/node_modules/cacache/node_modules/tar": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", "dependencies": { - "yallist": "^4.0.0" + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" }, "engines": { - "node": ">=8" + "node": ">=18" } }, + "node_modules/pacote/node_modules/cacache/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "engines": { + "node": ">=18" + } + }, + "node_modules/pacote/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "node_modules/pacote/node_modules/tar": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", @@ -6648,6 +6726,14 @@ "node": ">=10" } }, + "node_modules/pacote/node_modules/tar/node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, "node_modules/pacote/node_modules/tar/node_modules/fs-minipass": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", @@ -6678,6 +6764,29 @@ "node": ">=8" } }, + "node_modules/pacote/node_modules/tar/node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/pacote/node_modules/tar/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/pacote/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -8512,11 +8621,37 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/tuf-js/node_modules/cacache": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/tuf-js/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "node_modules/tuf-js/node_modules/make-fetch-happen": { "version": "14.0.3", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", - "license": "ISC", "dependencies": { "@npmcli/agent": "^3.0.0", "cacache": "^19.0.1", From 468aa9825bd8abfc394a6265a505a4d91c2280a3 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Wed, 30 Jul 2025 12:29:15 +0300 Subject: [PATCH 1249/1272] [ui5-project]Revert "[DEPENDENCY] Bump make-fetch-happen from 14.0.3 to 15.0.0" (#814) --- packages/project/package-lock.json | 355 ++--------------------------- packages/project/package.json | 2 +- 2 files changed, 16 insertions(+), 341 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7bdc2d14d3b..7f6022bee68 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -20,7 +20,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^15.0.0", + "make-fetch-happen": "^14.0.3", "node-stream-zip": "^1.15.0", "pacote": "^19.0.1", "pretty-hrtime": "^1.0.3", @@ -1279,54 +1279,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@sigstore/sign/node_modules/cacache": { - "version": "19.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", - "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", - "dependencies": { - "@npmcli/fs": "^4.0.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^7.0.2", - "ssri": "^12.0.0", - "tar": "^7.4.3", - "unique-filename": "^4.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/@sigstore/sign/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", - "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", - "dependencies": { - "@npmcli/agent": "^3.0.0", - "cacache": "^19.0.1", - "http-cache-semantics": "^4.1.1", - "minipass": "^7.0.2", - "minipass-fetch": "^4.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^1.0.0", - "proc-log": "^5.0.0", - "promise-retry": "^2.0.1", - "ssri": "^12.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/@sigstore/tuf": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-3.1.1.tgz", @@ -2120,14 +2072,14 @@ } }, "node_modules/cacache": { - "version": "20.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-20.0.0.tgz", - "integrity": "sha512-2Js2sNgHK36Fdu3ItpQqJjwUXAURb0uyo9i83Tr2wUQINU4tPl4AtQYh6mCqwVFV5W8+Vgcna+bSTQeyPLG/sQ==", + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", "dependencies": { "@npmcli/fs": "^4.0.0", "fs-minipass": "^3.0.0", - "glob": "^11.0.3", - "lru-cache": "^11.1.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", "minipass": "^7.0.3", "minipass-collect": "^2.0.1", "minipass-flush": "^1.0.5", @@ -2138,81 +2090,13 @@ "unique-filename": "^4.0.0" }, "engines": { - "node": "^20.17.0 || >=22.9.0" - } - }, - "node_modules/cacache/node_modules/glob": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz", - "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", - "dependencies": { - "foreground-child": "^3.3.1", - "jackspeak": "^4.1.1", - "minimatch": "^10.0.3", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^2.0.0" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/cacache/node_modules/jackspeak": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.1.tgz", - "integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==", - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz", - "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", - "engines": { - "node": "20 || >=22" - } - }, - "node_modules/cacache/node_modules/minimatch": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", - "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", - "dependencies": { - "@isaacs/brace-expansion": "^5.0.0" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/cacache/node_modules/path-scurry": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", - "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", - "dependencies": { - "lru-cache": "^11.0.0", - "minipass": "^7.1.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/caching-transform": { "version": "4.0.0", @@ -5454,12 +5338,12 @@ } }, "node_modules/make-fetch-happen": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-15.0.0.tgz", - "integrity": "sha512-zEnf7RnAK4aMG7RszSdSwPc11A15LpCmfATA64YKMOIEGnwgpC2rzHdzKNXpyM3jfI75UVq8YN41jJacmwFsRA==", + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", "dependencies": { "@npmcli/agent": "^3.0.0", - "cacache": "^20.0.0", + "cacache": "^19.0.1", "http-cache-semantics": "^4.1.1", "minipass": "^7.0.2", "minipass-fetch": "^4.0.0", @@ -5471,7 +5355,7 @@ "ssri": "^12.0.0" }, "engines": { - "node": "^20.17.0 || >=22.9.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/markdown-it": { @@ -5924,54 +5808,6 @@ "node-gyp-build-test": "build-test.js" } }, - "node_modules/node-gyp/node_modules/cacache": { - "version": "19.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", - "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", - "dependencies": { - "@npmcli/fs": "^4.0.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^7.0.2", - "ssri": "^12.0.0", - "tar": "^7.4.3", - "unique-filename": "^4.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/node-gyp/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/node-gyp/node_modules/make-fetch-happen": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", - "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", - "dependencies": { - "@npmcli/agent": "^3.0.0", - "cacache": "^19.0.1", - "http-cache-semantics": "^4.1.1", - "minipass": "^7.0.2", - "minipass-fetch": "^4.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^1.0.0", - "proc-log": "^5.0.0", - "promise-retry": "^2.0.1", - "ssri": "^12.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/node-preload": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", @@ -6150,54 +5986,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/npm-registry-fetch/node_modules/cacache": { - "version": "19.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", - "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", - "dependencies": { - "@npmcli/fs": "^4.0.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^7.0.2", - "ssri": "^12.0.0", - "tar": "^7.4.3", - "unique-filename": "^4.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", - "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", - "dependencies": { - "@npmcli/agent": "^3.0.0", - "cacache": "^19.0.1", - "http-cache-semantics": "^4.1.1", - "minipass": "^7.0.2", - "minipass-fetch": "^4.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^1.0.0", - "proc-log": "^5.0.0", - "promise-retry": "^2.0.1", - "ssri": "^12.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/nyc": { "version": "17.1.0", "resolved": "https://registry.npmjs.org/nyc/-/nyc-17.1.0.tgz", @@ -6645,71 +6433,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/pacote/node_modules/cacache": { - "version": "19.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", - "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", - "dependencies": { - "@npmcli/fs": "^4.0.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^7.0.2", - "ssri": "^12.0.0", - "tar": "^7.4.3", - "unique-filename": "^4.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/pacote/node_modules/cacache/node_modules/mkdirp": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", - "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", - "bin": { - "mkdirp": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/pacote/node_modules/cacache/node_modules/tar": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", - "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", - "dependencies": { - "@isaacs/fs-minipass": "^4.0.0", - "chownr": "^3.0.0", - "minipass": "^7.1.2", - "minizlib": "^3.0.1", - "mkdirp": "^3.0.1", - "yallist": "^5.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/pacote/node_modules/cacache/node_modules/yallist": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", - "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", - "engines": { - "node": ">=18" - } - }, - "node_modules/pacote/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, "node_modules/pacote/node_modules/tar": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", @@ -8621,54 +8344,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/tuf-js/node_modules/cacache": { - "version": "19.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", - "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", - "dependencies": { - "@npmcli/fs": "^4.0.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^7.0.2", - "ssri": "^12.0.0", - "tar": "^7.4.3", - "unique-filename": "^4.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "node_modules/tuf-js/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "node_modules/tuf-js/node_modules/make-fetch-happen": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", - "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", - "dependencies": { - "@npmcli/agent": "^3.0.0", - "cacache": "^19.0.1", - "http-cache-semantics": "^4.1.1", - "minipass": "^7.0.2", - "minipass-fetch": "^4.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^1.0.0", - "proc-log": "^5.0.0", - "promise-retry": "^2.0.1", - "ssri": "^12.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 774906fab18..e99b312f3bb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -131,7 +131,7 @@ "graceful-fs": "^4.2.11", "js-yaml": "^4.1.0", "lockfile": "^1.0.4", - "make-fetch-happen": "^15.0.0", + "make-fetch-happen": "^14.0.3", "node-stream-zip": "^1.15.0", "pacote": "^19.0.1", "pretty-hrtime": "^1.0.3", From 02c3b35bffd2cb12dddb30fc0d3135fb8c1bf7c6 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 3 Aug 2025 02:20:15 +0000 Subject: [PATCH 1250/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 68 +++++++++++++++--------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7f6022bee68..2e92d5c1921 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -3254,9 +3254,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.192", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.192.tgz", - "integrity": "sha512-rP8Ez0w7UNw/9j5eSXCe10o1g/8B1P5SM90PCCMVkIRQn2R0LEHWz4Eh9RnxkniuDe1W0cTSOB3MLlkTGDcuCg==", + "version": "1.5.194", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.194.tgz", + "integrity": "sha512-SdnWJwSUot04UR51I2oPD8kuP2VI37/CADR1OHsFOUzZIvfWJBO6q11k5P/uKNyTT3cdOsnyjkrZ+DDShqYqJA==", "dev": true }, "node_modules/emittery": { @@ -6433,6 +6433,37 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/pacote/node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/pacote/node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/pacote/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/pacote/node_modules/tar": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", @@ -6449,14 +6480,6 @@ "node": ">=10" } }, - "node_modules/pacote/node_modules/tar/node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "engines": { - "node": ">=10" - } - }, "node_modules/pacote/node_modules/tar/node_modules/fs-minipass": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", @@ -6487,29 +6510,6 @@ "node": ">=8" } }, - "node_modules/pacote/node_modules/tar/node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/pacote/node_modules/tar/node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/pacote/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", From cc15a97a6358955b2fa653040c23dfec5335f849 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Aug 2025 07:57:59 +0000 Subject: [PATCH 1251/1272] [ui5-project][INTERNAL] Bump eslint-plugin-jsdoc from 51.4.1 to 52.0.2 (#815) --- packages/project/package-lock.json | 9 +++++---- packages/project/package.json | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2e92d5c1921..d27b90e8806 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -42,7 +42,7 @@ "eslint": "^9.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", - "eslint-plugin-jsdoc": "^51.4.1", + "eslint-plugin-jsdoc": "^52.0.2", "esmock": "^2.7.1", "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", @@ -3481,10 +3481,11 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "51.4.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-51.4.1.tgz", - "integrity": "sha512-y4CA9OkachG8v5nAtrwvcvjIbdcKgSyS6U//IfQr4FZFFyeBFwZFf/tfSsMr46mWDJgidZjBTqoCRlXywfFBMg==", + "version": "52.0.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-52.0.2.tgz", + "integrity": "sha512-fYrnc7OpRifxxKjH78Y9/D/EouQDYD3G++bpR1Y+A+fy+CMzKZAdGIiHTIxCd2U10hb2y1NxN5TJt9aupq1vmw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@es-joy/jsdoccomment": "~0.52.0", "are-docs-informative": "^0.0.2", diff --git a/packages/project/package.json b/packages/project/package.json index e99b312f3bb..02aeaa90791 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -161,7 +161,7 @@ "eslint": "^9.32.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", - "eslint-plugin-jsdoc": "^51.4.1", + "eslint-plugin-jsdoc": "^52.0.2", "esmock": "^2.7.1", "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", From d77ca52aba8320f535ebcae84b66fb2661a2c38c Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 10 Aug 2025 02:20:21 +0000 Subject: [PATCH 1252/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 99 +++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 52 insertions(+), 53 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d27b90e8806..f13768df27d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -14,7 +14,7 @@ "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.4.1", + "chalk": "^5.5.0", "escape-string-regexp": "^5.0.0", "globby": "^14.1.0", "graceful-fs": "^4.2.11", @@ -39,10 +39,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.32.0", + "eslint": "^9.33.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", - "eslint-plugin-jsdoc": "^52.0.2", + "eslint-plugin-jsdoc": "^52.0.4", "esmock": "^2.7.1", "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", @@ -620,18 +620,18 @@ } }, "node_modules/@eslint/config-helpers": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.3.0.tgz", - "integrity": "sha512-ViuymvFmcJi04qdZeDc2whTHryouGcDlaxPqarTD0ZE10ISpxGUVZGZDx4w01upyIynL3iu6IXH2bS1NhclQMw==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.3.1.tgz", + "integrity": "sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, "node_modules/@eslint/core": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.1.tgz", - "integrity": "sha512-bkOp+iumZCCbt1K1CmWf0R9pM5yKpDv+ZXtvSyQpudrI9kuFLp+bM2WOPXImuD/ceQuaa8f5pj93Y7zyECIGNA==", + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.2.tgz", + "integrity": "sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.15" @@ -698,9 +698,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.32.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.32.0.tgz", - "integrity": "sha512-BBpRFZK3eX6uMLKz8WxFOBIFFcGFJ/g8XuwjTHCqHROSIsopI+ddn/d5Cfh36+7+e5edVS8dbSHnBNhrLEX0zg==", + "version": "9.33.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.33.0.tgz", + "integrity": "sha512-5K1/mKhWaMfreBGJTwval43JJmkip0RmM+3+IuqupeSKNC/Th2Kc7ucaq5ovTSra/OOKB9c58CGSz3QMVbWt0A==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -719,12 +719,12 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.4.tgz", - "integrity": "sha512-Ul5l+lHEcw3L5+k8POx6r74mxEYKG5kOb6Xpy2gCRW6zweT6TEhAf8vhxGgjhqrd/VO/Dirhsb+1hNpD1ue9hw==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.5.tgz", + "integrity": "sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==", "dev": true, "dependencies": { - "@eslint/core": "^0.15.1", + "@eslint/core": "^0.15.2", "levn": "^0.4.1" }, "engines": { @@ -1430,9 +1430,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", - "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", + "version": "8.39.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.39.0.tgz", + "integrity": "sha512-ArDdaOllnCj3yn/lzKn9s0pBQYmmyme/v1HbGIGB0GB/knFI3fWMHloC+oYTJW46tVbYnGKTMDK4ah1sC2v0Kg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2001,9 +2001,9 @@ } }, "node_modules/browserslist": { - "version": "4.25.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.1.tgz", - "integrity": "sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==", + "version": "4.25.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.2.tgz", + "integrity": "sha512-0si2SJK3ooGzIawRu61ZdPCO1IncZwS8IzuX73sPZsXW6EQ/w/DAfPyKI8l1ETTCr2MnvqWitmlCUxgdul45jA==", "dev": true, "funding": [ { @@ -2020,8 +2020,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001726", - "electron-to-chromium": "^1.5.173", + "caniuse-lite": "^1.0.30001733", + "electron-to-chromium": "^1.5.199", "node-releases": "^2.0.19", "update-browserslist-db": "^1.1.3" }, @@ -2186,9 +2186,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001731", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001731.tgz", - "integrity": "sha512-lDdp2/wrOmTRWuoB5DpfNkC0rJDU8DqRa6nYL6HK6sytw70QMopt/NIc/9SM7ylItlBWfACXk0tEn37UWM/+mg==", + "version": "1.0.30001733", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001733.tgz", + "integrity": "sha512-e4QKw/O2Kavj2VQTKZWrwzkt3IxOmIlU6ajRb6LP64LHpBo1J67k2Hi4Vu/TgJWsNtynurfS0uK3MaUTCPfu5Q==", "dev": true, "funding": [ { @@ -2218,9 +2218,9 @@ } }, "node_modules/cbor": { - "version": "10.0.9", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-10.0.9.tgz", - "integrity": "sha512-KEWYehb/vJkRmigctVQLsz73Us2RNnITo/wOwQV5AtZpLGH1r2PPlsNHdsX460YuHZCyhLklbYzAOuJfOeg34Q==", + "version": "10.0.10", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-10.0.10.tgz", + "integrity": "sha512-EirvzAg0G4okCsdTfTjLWHU+tToQ2V2ptO3577Vyy2GOTeVJad99uCIuDqdK7ppFRRcEuigyJY6TJ59wv5JpSg==", "dev": true, "dependencies": { "nofilter": "^3.0.2" @@ -2230,9 +2230,9 @@ } }, "node_modules/chalk": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", - "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.5.0.tgz", + "integrity": "sha512-1tm8DTaJhPBG3bIkVeZt1iZM9GfSX2lzOeDVZH9R9ffRHpmHvxZ/QhgQH/aDTkswQVt+YHdXAdS/In/30OjCbg==", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -3254,9 +3254,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.194", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.194.tgz", - "integrity": "sha512-SdnWJwSUot04UR51I2oPD8kuP2VI37/CADR1OHsFOUzZIvfWJBO6q11k5P/uKNyTT3cdOsnyjkrZ+DDShqYqJA==", + "version": "1.5.199", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.199.tgz", + "integrity": "sha512-3gl0S7zQd88kCAZRO/DnxtBKuhMO4h0EaQIN3YgZfV6+pW+5+bf2AdQeHNESCoaQqo/gjGVYEf2YM4O5HJQqpQ==", "dev": true }, "node_modules/emittery": { @@ -3358,19 +3358,19 @@ } }, "node_modules/eslint": { - "version": "9.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.32.0.tgz", - "integrity": "sha512-LSehfdpgMeWcTZkWZVIJl+tkZ2nuSkyyB9C27MZqFWXuph7DvaowgcTvKqxvpLW1JZIk8PN7hFY3Rj9LQ7m7lg==", + "version": "9.33.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.33.0.tgz", + "integrity": "sha512-TS9bTNIryDzStCpJN93aC5VRSW3uTx9sClUn4B87pwiCaJh220otoI0X8mJKr+VcPtniMdN8GKjlwgWGUv5ZKA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.21.0", - "@eslint/config-helpers": "^0.3.0", - "@eslint/core": "^0.15.0", + "@eslint/config-helpers": "^0.3.1", + "@eslint/core": "^0.15.2", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.32.0", - "@eslint/plugin-kit": "^0.3.4", + "@eslint/js": "9.33.0", + "@eslint/plugin-kit": "^0.3.5", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.2", @@ -3481,11 +3481,10 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "52.0.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-52.0.2.tgz", - "integrity": "sha512-fYrnc7OpRifxxKjH78Y9/D/EouQDYD3G++bpR1Y+A+fy+CMzKZAdGIiHTIxCd2U10hb2y1NxN5TJt9aupq1vmw==", + "version": "52.0.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-52.0.4.tgz", + "integrity": "sha512-be5OzGlLExvcK13Il3noU7/v7WmAQGenTmCaBKf1pwVtPOb6X+PGFVnJad0QhMj4KKf45XjE4hbsBxv25q1fTg==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { "@es-joy/jsdoccomment": "~0.52.0", "are-docs-informative": "^0.0.2", @@ -7723,9 +7722,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.21", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", - "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==" + "version": "3.0.22", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.22.tgz", + "integrity": "sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ==" }, "node_modules/sprintf-js": { "version": "1.1.3", diff --git a/packages/project/package.json b/packages/project/package.json index 02aeaa90791..5c6b8e72b69 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -125,7 +125,7 @@ "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.4.1", + "chalk": "^5.5.0", "escape-string-regexp": "^5.0.0", "globby": "^14.1.0", "graceful-fs": "^4.2.11", @@ -158,10 +158,10 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.32.0", + "eslint": "^9.33.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", - "eslint-plugin-jsdoc": "^52.0.2", + "eslint-plugin-jsdoc": "^52.0.4", "esmock": "^2.7.1", "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", From 8c99134d0730a1e61d292dd2df5d9355396a17fb Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Tue, 12 Aug 2025 09:43:07 +0000 Subject: [PATCH 1253/1272] [ui5-project][INTERNAL] Bump @ui5/builder from ^4.0.8 to ^4.0.9 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v^4.0.9/CHANGELOG.md --- packages/project/package-lock.json | 92 ++++++++++-------------------- packages/project/package.json | 2 +- 2 files changed, 31 insertions(+), 63 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index f13768df27d..60366b9b4c2 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -62,7 +62,7 @@ "npm": ">= 8" }, "peerDependencies": { - "@ui5/builder": "^4.0.8" + "@ui5/builder": "^4.0.9" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -915,12 +915,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", @@ -931,9 +925,9 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.12", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz", - "integrity": "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==", + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0", @@ -950,15 +944,15 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz", - "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==", + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.29", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz", - "integrity": "sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==", + "version": "0.3.30", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz", + "integrity": "sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -1430,9 +1424,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.39.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.39.0.tgz", - "integrity": "sha512-ArDdaOllnCj3yn/lzKn9s0pBQYmmyme/v1HbGIGB0GB/knFI3fWMHloC+oYTJW46tVbYnGKTMDK4ah1sC2v0Kg==", + "version": "8.39.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.39.1.tgz", + "integrity": "sha512-7sPDKQQp+S11laqTrhHqeAbsCfMkwJMrV7oTDvtDds4mEofJYir414bYKUEb8YPUm9QL3U+8f6L6YExSoAGdQw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2186,9 +2180,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001733", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001733.tgz", - "integrity": "sha512-e4QKw/O2Kavj2VQTKZWrwzkt3IxOmIlU6ajRb6LP64LHpBo1J67k2Hi4Vu/TgJWsNtynurfS0uK3MaUTCPfu5Q==", + "version": "1.0.30001734", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001734.tgz", + "integrity": "sha512-uhE1Ye5vgqju6OI71HTQqcBCZrvHugk0MjLak7Q+HfoBgoq5Bi+5YnwjP4fjDgrtYr/l8MVRBvzz9dPD4KyK0A==", "dev": true, "funding": [ { @@ -3105,12 +3099,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/depcheck/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, "node_modules/depcheck/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -3254,9 +3242,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.199", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.199.tgz", - "integrity": "sha512-3gl0S7zQd88kCAZRO/DnxtBKuhMO4h0EaQIN3YgZfV6+pW+5+bf2AdQeHNESCoaQqo/gjGVYEf2YM4O5HJQqpQ==", + "version": "1.5.200", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.200.tgz", + "integrity": "sha512-rFCxROw7aOe4uPTfIAx+rXv9cEcGx+buAF4npnhtTqCJk5KDFRnh3+KYj7rdVh6lsFt5/aPs+Irj9rZ33WMA7w==", "dev": true }, "node_modules/emittery": { @@ -4608,13 +4596,9 @@ } }, "node_modules/ip-address": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", - "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", - "dependencies": { - "jsbn": "1.1.0", - "sprintf-js": "^1.1.3" - }, + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.0.1.tgz", + "integrity": "sha512-NWv9YLW4PoW2B7xtzaS3NCot75m6nK7Icdv0o3lfMceJVRfSoQwqD4wEH5rLwoKJwUiZ/rfpiVBhnaF0FK4HoA==", "engines": { "node": ">= 12" } @@ -5082,11 +5066,6 @@ "xmlcreate": "^2.0.4" } }, - "node_modules/jsbn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", - "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==" - }, "node_modules/jsdoc": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.4.tgz", @@ -7505,11 +7484,11 @@ } }, "node_modules/socks": { - "version": "2.8.6", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.6.tgz", - "integrity": "sha512-pe4Y2yzru68lXCb38aAqRf5gvN8YdjP1lok5o0J7BOHljkyCGKVz7H3vpVIXKD27rj2giOJ7DwVyk/GWrPHDWA==", + "version": "2.8.7", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.7.tgz", + "integrity": "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==", "dependencies": { - "ip-address": "^9.0.5", + "ip-address": "^10.0.1", "smart-buffer": "^4.2.0" }, "engines": { @@ -7727,9 +7706,10 @@ "integrity": "sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ==" }, "node_modules/sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true }, "node_modules/ssri": { "version": "12.0.0", @@ -7962,12 +7942,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/supertap/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -8053,12 +8027,6 @@ "dev": true, "optional": true }, - "node_modules/tap-parser/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, "node_modules/tap-parser/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", diff --git a/packages/project/package.json b/packages/project/package.json index 5c6b8e72b69..79d4943aafb 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -143,7 +143,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^4.0.8" + "@ui5/builder": "^4.0.9" }, "peerDependenciesMeta": { "@ui5/builder": { From db1e2ff55f8f541d2373e88e24ceda85762a7128 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 17 Aug 2025 02:20:15 +0000 Subject: [PATCH 1254/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 93 +++++++++++++++--------------- 1 file changed, 48 insertions(+), 45 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 60366b9b4c2..5351e9bb529 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -106,21 +106,21 @@ } }, "node_modules/@babel/core": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz", - "integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.3.tgz", + "integrity": "sha512-yDBHV9kQNcr2/sUr9jghVyz9C3Y5G2zUM2H2lo+9mKv4sFgbA8s8Z9t8D1jiTkGoO/NoIfKMyKWr4s6CN23ZwQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.28.0", + "@babel/generator": "^7.28.3", "@babel/helper-compilation-targets": "^7.27.2", - "@babel/helper-module-transforms": "^7.27.3", - "@babel/helpers": "^7.27.6", - "@babel/parser": "^7.28.0", + "@babel/helper-module-transforms": "^7.28.3", + "@babel/helpers": "^7.28.3", + "@babel/parser": "^7.28.3", "@babel/template": "^7.27.2", - "@babel/traverse": "^7.28.0", - "@babel/types": "^7.28.0", + "@babel/traverse": "^7.28.3", + "@babel/types": "^7.28.2", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -145,13 +145,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.0.tgz", - "integrity": "sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.3.tgz", + "integrity": "sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw==", "dev": true, "dependencies": { - "@babel/parser": "^7.28.0", - "@babel/types": "^7.28.0", + "@babel/parser": "^7.28.3", + "@babel/types": "^7.28.2", "@jridgewell/gen-mapping": "^0.3.12", "@jridgewell/trace-mapping": "^0.3.28", "jsesc": "^3.0.2" @@ -198,17 +198,17 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.1.tgz", - "integrity": "sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.28.3.tgz", + "integrity": "sha512-V9f6ZFIYSLNEbuGA/92uOvYsGCJNsuA8ESZ4ldc09bWk/j8H8TKiPw8Mk1eG6olpnO0ALHJmYfZvF4MEE4gajg==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-annotate-as-pure": "^7.27.3", "@babel/helper-member-expression-to-functions": "^7.27.1", "@babel/helper-optimise-call-expression": "^7.27.1", "@babel/helper-replace-supers": "^7.27.1", "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", - "@babel/traverse": "^7.27.1", + "@babel/traverse": "^7.28.3", "semver": "^6.3.1" }, "engines": { @@ -263,14 +263,14 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz", - "integrity": "sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.3.tgz", + "integrity": "sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==", "dev": true, "dependencies": { "@babel/helper-module-imports": "^7.27.1", "@babel/helper-validator-identifier": "^7.27.1", - "@babel/traverse": "^7.27.3" + "@babel/traverse": "^7.28.3" }, "engines": { "node": ">=6.9.0" @@ -357,9 +357,9 @@ } }, "node_modules/@babel/helpers": { - "version": "7.28.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.2.tgz", - "integrity": "sha512-/V9771t+EgXz62aCcyofnQhGM8DQACbRhvzKFsXKC9QM+5MadF8ZmIm0crDMaz3+o0h0zXfJnd4EhbYbxsrcFw==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.3.tgz", + "integrity": "sha512-PTNtvUQihsAsDHMOP5pfobP8C6CM4JWXmP8DrEIt46c3r2bf87Ua1zoqevsMo9g+tWDwgWrFP5EIxuBx5RudAw==", "dev": true, "dependencies": { "@babel/template": "^7.27.2", @@ -370,12 +370,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.0.tgz", - "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.3.tgz", + "integrity": "sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==", "dev": true, "dependencies": { - "@babel/types": "^7.28.0" + "@babel/types": "^7.28.2" }, "bin": { "parser": "bin/babel-parser.js" @@ -498,17 +498,17 @@ } }, "node_modules/@babel/traverse": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.0.tgz", - "integrity": "sha512-mGe7UK5wWyh0bKRfupsUchrQGqvDbZDbKJw+kcRGSmdHVYrv+ltd0pnpDTVpiTqnaBru9iEvA8pz8W46v0Amwg==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.3.tgz", + "integrity": "sha512-7w4kZYHneL3A6NP2nxzHvT3HCZ7puDZZjFMqDpBPECub79sTtSO5CGXDkKrTQq8ksAwfD/XI2MRFX23njdDaIQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.28.0", + "@babel/generator": "^7.28.3", "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.28.0", + "@babel/parser": "^7.28.3", "@babel/template": "^7.27.2", - "@babel/types": "^7.28.0", + "@babel/types": "^7.28.2", "debug": "^4.3.1" }, "engines": { @@ -2180,9 +2180,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001734", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001734.tgz", - "integrity": "sha512-uhE1Ye5vgqju6OI71HTQqcBCZrvHugk0MjLak7Q+HfoBgoq5Bi+5YnwjP4fjDgrtYr/l8MVRBvzz9dPD4KyK0A==", + "version": "1.0.30001735", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001735.tgz", + "integrity": "sha512-EV/laoX7Wq2J9TQlyIXRxTJqIw4sxfXS4OYgudGxBYRuTv0q7AM6yMEpU/Vo1I94thg9U6EZ2NfZx9GJq83u7w==", "dev": true, "funding": [ { @@ -3242,9 +3242,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.200", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.200.tgz", - "integrity": "sha512-rFCxROw7aOe4uPTfIAx+rXv9cEcGx+buAF4npnhtTqCJk5KDFRnh3+KYj7rdVh6lsFt5/aPs+Irj9rZ33WMA7w==", + "version": "1.5.203", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.203.tgz", + "integrity": "sha512-uz4i0vLhfm6dLZWbz/iH88KNDV+ivj5+2SA+utpgjKaj9Q0iDLuwk6Idhe9BTxciHudyx6IvTvijhkPvFGUQ0g==", "dev": true }, "node_modules/emittery": { @@ -3895,9 +3895,12 @@ } }, "node_modules/fdir": { - "version": "6.4.6", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz", - "integrity": "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "engines": { + "node": ">=12.0.0" + }, "peerDependencies": { "picomatch": "^3 || ^4" }, From 1b3a4daafe584b9601a5d3acecc5e5d4790e993b Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 24 Aug 2025 02:20:17 +0000 Subject: [PATCH 1255/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 132 ++++++++++++++--------------- packages/project/package.json | 6 +- 2 files changed, 69 insertions(+), 69 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5351e9bb529..5de3ded3f4a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -14,7 +14,7 @@ "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.5.0", + "chalk": "^5.6.0", "escape-string-regexp": "^5.0.0", "globby": "^14.1.0", "graceful-fs": "^4.2.11", @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.33.0", + "eslint": "^9.34.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", @@ -48,7 +48,7 @@ "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", - "istanbul-reports": "^3.1.7", + "istanbul-reports": "^3.2.0", "js-beautify": "^1.15.4", "jsdoc": "^4.0.4", "nyc": "^17.1.0", @@ -698,9 +698,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.33.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.33.0.tgz", - "integrity": "sha512-5K1/mKhWaMfreBGJTwval43JJmkip0RmM+3+IuqupeSKNC/Th2Kc7ucaq5ovTSra/OOKB9c58CGSz3QMVbWt0A==", + "version": "9.34.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.34.0.tgz", + "integrity": "sha512-EoyvqQnBNsV1CWaEJ559rxXL4c8V92gxirbawSmVUOWXlsRxxQXl6LmCpdUblgxgSkDIqKnhzba2SjRTI/A5Rw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1424,9 +1424,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.39.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.39.1.tgz", - "integrity": "sha512-7sPDKQQp+S11laqTrhHqeAbsCfMkwJMrV7oTDvtDds4mEofJYir414bYKUEb8YPUm9QL3U+8f6L6YExSoAGdQw==", + "version": "8.40.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.40.0.tgz", + "integrity": "sha512-ETdbFlgbAmXHyFPwqUIYrfc12ArvpBhEVgGAxVYSwli26dn8Ko+lIo4Su9vI9ykTZdJn+vJprs/0eZU0YMAEQg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1511,39 +1511,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.18", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.18.tgz", - "integrity": "sha512-3slwjQrrV1TO8MoXgy3aynDQ7lslj5UqDxuHnrzHtpON5CBinhWjJETciPngpin/T3OuW3tXUf86tEurusnztw==", + "version": "3.5.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.19.tgz", + "integrity": "sha512-/afpyvlkrSNYbPo94Qu8GtIOWS+g5TRdOvs6XZNw6pWQQmj5pBgSZvEPOIZlqWq0YvoUhDDQaQ2TnzuJdOV4hA==", "dev": true, "dependencies": { - "@babel/parser": "^7.28.0", - "@vue/shared": "3.5.18", + "@babel/parser": "^7.28.3", + "@vue/shared": "3.5.19", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.18", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.18.tgz", - "integrity": "sha512-RMbU6NTU70++B1JyVJbNbeFkK+A+Q7y9XKE2EM4NLGm2WFR8x9MbAtWxPPLdm0wUkuZv9trpwfSlL6tjdIa1+A==", + "version": "3.5.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.19.tgz", + "integrity": "sha512-Drs6rPHQZx/pN9S6ml3Z3K/TWCIRPvzG2B/o5kFK9X0MNHt8/E+38tiRfojufrYBfA6FQUFB2qBBRXlcSXWtOA==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.18", - "@vue/shared": "3.5.18" + "@vue/compiler-core": "3.5.19", + "@vue/shared": "3.5.19" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.18", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.18.tgz", - "integrity": "sha512-5aBjvGqsWs+MoxswZPoTB9nSDb3dhd1x30xrrltKujlCxo48j8HGDNj3QPhF4VIS0VQDUrA1xUfp2hEa+FNyXA==", + "version": "3.5.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.19.tgz", + "integrity": "sha512-YWCm1CYaJ+2RvNmhCwI7t3I3nU+hOrWGWMsn+Z/kmm1jy5iinnVtlmkiZwbLlbV1SRizX7vHsc0/bG5dj0zRTg==", "dev": true, "dependencies": { - "@babel/parser": "^7.28.0", - "@vue/compiler-core": "3.5.18", - "@vue/compiler-dom": "3.5.18", - "@vue/compiler-ssr": "3.5.18", - "@vue/shared": "3.5.18", + "@babel/parser": "^7.28.3", + "@vue/compiler-core": "3.5.19", + "@vue/compiler-dom": "3.5.19", + "@vue/compiler-ssr": "3.5.19", + "@vue/shared": "3.5.19", "estree-walker": "^2.0.2", "magic-string": "^0.30.17", "postcss": "^8.5.6", @@ -1551,19 +1551,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.18", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.18.tgz", - "integrity": "sha512-xM16Ak7rSWHkM3m22NlmcdIM+K4BMyFARAfV9hYFl+SFuRzrZ3uGMNW05kA5pmeMa0X9X963Kgou7ufdbpOP9g==", + "version": "3.5.19", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.19.tgz", + "integrity": "sha512-/wx0VZtkWOPdiQLWPeQeqpHWR/LuNC7bHfSX7OayBTtUy8wur6vT6EQIX6Et86aED6J+y8tTw43qo2uoqGg5sw==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.18", - "@vue/shared": "3.5.18" + "@vue/compiler-dom": "3.5.19", + "@vue/shared": "3.5.19" } }, "node_modules/@vue/shared": { - "version": "3.5.18", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.18.tgz", - "integrity": "sha512-cZy8Dq+uuIXbxCZpuLd2GJdeSO/lIzIspC2WtkqIpje5QyFbvLaI5wZtdUjLHjGZrlVX6GilejatWwVYYRc8tA==", + "version": "3.5.19", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.19.tgz", + "integrity": "sha512-IhXCOn08wgKrLQxRFKKlSacWg4Goi1BolrdEeLYn6tgHjJNXVrWJ5nzoxZqNwl5p88aLlQ8LOaoMa3AYvaKJ/Q==", "dev": true }, "node_modules/abbrev": { @@ -1682,9 +1682,9 @@ } }, "node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.0.tgz", + "integrity": "sha512-TKY5pyBkHyADOPYlRT9Lx6F544mPl0vS5Ew7BJ45hA08Q+t3GjbueLliBWN3sMICk6+y7HdyxSzC4bWS8baBdg==", "engines": { "node": ">=12" }, @@ -1995,9 +1995,9 @@ } }, "node_modules/browserslist": { - "version": "4.25.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.2.tgz", - "integrity": "sha512-0si2SJK3ooGzIawRu61ZdPCO1IncZwS8IzuX73sPZsXW6EQ/w/DAfPyKI8l1ETTCr2MnvqWitmlCUxgdul45jA==", + "version": "4.25.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.3.tgz", + "integrity": "sha512-cDGv1kkDI4/0e5yON9yM5G/0A5u8sf5TnmdX5C9qHzI9PPu++sQ9zjm1k9NiOrf3riY4OkK0zSGqfvJyJsgCBQ==", "dev": true, "funding": [ { @@ -2014,8 +2014,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001733", - "electron-to-chromium": "^1.5.199", + "caniuse-lite": "^1.0.30001735", + "electron-to-chromium": "^1.5.204", "node-releases": "^2.0.19", "update-browserslist-db": "^1.1.3" }, @@ -2180,9 +2180,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001735", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001735.tgz", - "integrity": "sha512-EV/laoX7Wq2J9TQlyIXRxTJqIw4sxfXS4OYgudGxBYRuTv0q7AM6yMEpU/Vo1I94thg9U6EZ2NfZx9GJq83u7w==", + "version": "1.0.30001737", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001737.tgz", + "integrity": "sha512-BiloLiXtQNrY5UyF0+1nSJLXUENuhka2pzy2Fx5pGxqavdrxSCW4U6Pn/PoG3Efspi2frRbHpBV2XsrPE6EDlw==", "dev": true, "funding": [ { @@ -2224,9 +2224,9 @@ } }, "node_modules/chalk": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.5.0.tgz", - "integrity": "sha512-1tm8DTaJhPBG3bIkVeZt1iZM9GfSX2lzOeDVZH9R9ffRHpmHvxZ/QhgQH/aDTkswQVt+YHdXAdS/In/30OjCbg==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.0.tgz", + "integrity": "sha512-46QrSQFyVSEyYAgQ22hQ+zDa60YHA4fBstHmtSApj1Y5vKtG27fWowW03jCk5KcbXEWPZUIR894aARCA/G1kfQ==", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -3242,9 +3242,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.203", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.203.tgz", - "integrity": "sha512-uz4i0vLhfm6dLZWbz/iH88KNDV+ivj5+2SA+utpgjKaj9Q0iDLuwk6Idhe9BTxciHudyx6IvTvijhkPvFGUQ0g==", + "version": "1.5.208", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.208.tgz", + "integrity": "sha512-ozZyibehoe7tOhNaf16lKmljVf+3npZcJIEbJRVftVsmAg5TeA1mGS9dVCZzOwr2xT7xK15V0p7+GZqSPgkuPg==", "dev": true }, "node_modules/emittery": { @@ -3346,9 +3346,9 @@ } }, "node_modules/eslint": { - "version": "9.33.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.33.0.tgz", - "integrity": "sha512-TS9bTNIryDzStCpJN93aC5VRSW3uTx9sClUn4B87pwiCaJh220otoI0X8mJKr+VcPtniMdN8GKjlwgWGUv5ZKA==", + "version": "9.34.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.34.0.tgz", + "integrity": "sha512-RNCHRX5EwdrESy3Jc9o8ie8Bog+PeYvvSR8sDGoZxNFTvZ4dlxUB3WzQ3bQMztFrSRODGrLLj8g6OFuGY/aiQg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -3357,7 +3357,7 @@ "@eslint/config-helpers": "^0.3.1", "@eslint/core": "^0.15.2", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.33.0", + "@eslint/js": "9.34.0", "@eslint/plugin-kit": "^0.3.5", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -4955,9 +4955,9 @@ } }, "node_modules/istanbul-reports": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", - "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz", + "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==", "dev": true, "dependencies": { "html-escaper": "^2.0.0", @@ -5296,12 +5296,12 @@ } }, "node_modules/magic-string": { - "version": "0.30.17", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", - "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "version": "0.30.18", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.18.tgz", + "integrity": "sha512-yi8swmWbO17qHhwIBNeeZxTceJMeBvWJaId6dyvTSOwTipqeHhMhOrz6513r1sOKnpvQ7zkhlG8tPrpilwTxHQ==", "dev": true, "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0" + "@jridgewell/sourcemap-codec": "^1.5.5" } }, "node_modules/make-dir": { @@ -5757,9 +5757,9 @@ } }, "node_modules/node-gyp": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.3.0.tgz", - "integrity": "sha512-9J0+C+2nt3WFuui/mC46z2XCZ21/cKlFDuywULmseD/LlmnOrSeEAE4c/1jw6aybXLmpZnQY3/LmOJfgyHIcng==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.4.1.tgz", + "integrity": "sha512-GiVxQ1e4TdZSSVmFDYUn6uUsrEUP68pa8C/xBzCfL/FcLHa4reWrxxTP7tRGhNdviYrNsL5kRolBL5LNYEutCw==", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", diff --git a/packages/project/package.json b/packages/project/package.json index 79d4943aafb..811b92069f9 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -125,7 +125,7 @@ "@ui5/logger": "^4.0.1", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.5.0", + "chalk": "^5.6.0", "escape-string-regexp": "^5.0.0", "globby": "^14.1.0", "graceful-fs": "^4.2.11", @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.33.0", + "eslint": "^9.34.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", @@ -167,7 +167,7 @@ "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", - "istanbul-reports": "^3.1.7", + "istanbul-reports": "^3.2.0", "js-beautify": "^1.15.4", "jsdoc": "^4.0.4", "nyc": "^17.1.0", From 9cfbe1897b6233da3e132268db96bc368f46cdc7 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 31 Aug 2025 02:20:10 +0000 Subject: [PATCH 1256/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 112 ++++++++++++++--------------- 1 file changed, 56 insertions(+), 56 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5de3ded3f4a..5993aecaa27 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1159,9 +1159,9 @@ } }, "node_modules/@npmcli/promise-spawn": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.2.tgz", - "integrity": "sha512-/bNJhjc+o6qL+Dwz/bqfTQClkEO5nTQ1ZEcdCkAQjhkZMHIh22LPG7fNh1enJP1NKWDqYiiABnjFCY7E0zHYtQ==", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-8.0.3.tgz", + "integrity": "sha512-Yb00SWaL4F8w+K8YGhQ55+xE4RUNdMHV43WZGsiTM92gS+lC0mGsn7I4hLug7pbao035S6bj3Y3w0cUNGLfmkg==", "dependencies": { "which": "^5.0.0" }, @@ -1424,9 +1424,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.40.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.40.0.tgz", - "integrity": "sha512-ETdbFlgbAmXHyFPwqUIYrfc12ArvpBhEVgGAxVYSwli26dn8Ko+lIo4Su9vI9ykTZdJn+vJprs/0eZU0YMAEQg==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.41.0.tgz", + "integrity": "sha512-9EwxsWdVqh42afLbHP90n2VdHaWU/oWgbH2P0CfcNfdKL7CuKpwMQGjwev56vWu9cSKU7FWSu6r9zck6CVfnag==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1511,39 +1511,39 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.19.tgz", - "integrity": "sha512-/afpyvlkrSNYbPo94Qu8GtIOWS+g5TRdOvs6XZNw6pWQQmj5pBgSZvEPOIZlqWq0YvoUhDDQaQ2TnzuJdOV4hA==", + "version": "3.5.20", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.20.tgz", + "integrity": "sha512-8TWXUyiqFd3GmP4JTX9hbiTFRwYHgVL/vr3cqhr4YQ258+9FADwvj7golk2sWNGHR67QgmCZ8gz80nQcMokhwg==", "dev": true, "dependencies": { "@babel/parser": "^7.28.3", - "@vue/shared": "3.5.19", + "@vue/shared": "3.5.20", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.19.tgz", - "integrity": "sha512-Drs6rPHQZx/pN9S6ml3Z3K/TWCIRPvzG2B/o5kFK9X0MNHt8/E+38tiRfojufrYBfA6FQUFB2qBBRXlcSXWtOA==", + "version": "3.5.20", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.20.tgz", + "integrity": "sha512-whB44M59XKjqUEYOMPYU0ijUV0G+4fdrHVKDe32abNdX/kJe1NUEMqsi4cwzXa9kyM9w5S8WqFsrfo1ogtBZGQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.19", - "@vue/shared": "3.5.19" + "@vue/compiler-core": "3.5.20", + "@vue/shared": "3.5.20" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.19.tgz", - "integrity": "sha512-YWCm1CYaJ+2RvNmhCwI7t3I3nU+hOrWGWMsn+Z/kmm1jy5iinnVtlmkiZwbLlbV1SRizX7vHsc0/bG5dj0zRTg==", + "version": "3.5.20", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.20.tgz", + "integrity": "sha512-SFcxapQc0/feWiSBfkGsa1v4DOrnMAQSYuvDMpEaxbpH5dKbnEM5KobSNSgU+1MbHCl+9ftm7oQWxvwDB6iBfw==", "dev": true, "dependencies": { "@babel/parser": "^7.28.3", - "@vue/compiler-core": "3.5.19", - "@vue/compiler-dom": "3.5.19", - "@vue/compiler-ssr": "3.5.19", - "@vue/shared": "3.5.19", + "@vue/compiler-core": "3.5.20", + "@vue/compiler-dom": "3.5.20", + "@vue/compiler-ssr": "3.5.20", + "@vue/shared": "3.5.20", "estree-walker": "^2.0.2", "magic-string": "^0.30.17", "postcss": "^8.5.6", @@ -1551,19 +1551,19 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.19", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.19.tgz", - "integrity": "sha512-/wx0VZtkWOPdiQLWPeQeqpHWR/LuNC7bHfSX7OayBTtUy8wur6vT6EQIX6Et86aED6J+y8tTw43qo2uoqGg5sw==", + "version": "3.5.20", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.20.tgz", + "integrity": "sha512-RSl5XAMc5YFUXpDQi+UQDdVjH9FnEpLDHIALg5J0ITHxkEzJ8uQLlo7CIbjPYqmZtt6w0TsIPbo1izYXwDG7JA==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.19", - "@vue/shared": "3.5.19" + "@vue/compiler-dom": "3.5.20", + "@vue/shared": "3.5.20" } }, "node_modules/@vue/shared": { - "version": "3.5.19", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.19.tgz", - "integrity": "sha512-IhXCOn08wgKrLQxRFKKlSacWg4Goi1BolrdEeLYn6tgHjJNXVrWJ5nzoxZqNwl5p88aLlQ8LOaoMa3AYvaKJ/Q==", + "version": "3.5.20", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.20.tgz", + "integrity": "sha512-SoRGP596KU/ig6TfgkCMbXkr4YJ91n/QSdMuqeP5r3hVIYA3CPHUBCc7Skak0EAKV+5lL4KyIh61VA/pK1CIAA==", "dev": true }, "node_modules/abbrev": { @@ -1995,9 +1995,9 @@ } }, "node_modules/browserslist": { - "version": "4.25.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.3.tgz", - "integrity": "sha512-cDGv1kkDI4/0e5yON9yM5G/0A5u8sf5TnmdX5C9qHzI9PPu++sQ9zjm1k9NiOrf3riY4OkK0zSGqfvJyJsgCBQ==", + "version": "4.25.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.4.tgz", + "integrity": "sha512-4jYpcjabC606xJ3kw2QwGEZKX0Aw7sgQdZCvIK9dhVSPh76BKo+C+btT1RRofH7B+8iNpEbgGNVWiLki5q93yg==", "dev": true, "funding": [ { @@ -2014,8 +2014,8 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001735", - "electron-to-chromium": "^1.5.204", + "caniuse-lite": "^1.0.30001737", + "electron-to-chromium": "^1.5.211", "node-releases": "^2.0.19", "update-browserslist-db": "^1.1.3" }, @@ -2180,9 +2180,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001737", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001737.tgz", - "integrity": "sha512-BiloLiXtQNrY5UyF0+1nSJLXUENuhka2pzy2Fx5pGxqavdrxSCW4U6Pn/PoG3Efspi2frRbHpBV2XsrPE6EDlw==", + "version": "1.0.30001739", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001739.tgz", + "integrity": "sha512-y+j60d6ulelrNSwpPyrHdl+9mJnQzHBr08xm48Qno0nSk4h3Qojh+ziv2qE6rXf4k3tadF4o1J/1tAbVm1NtnA==", "dev": true, "funding": [ { @@ -2212,9 +2212,9 @@ } }, "node_modules/cbor": { - "version": "10.0.10", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-10.0.10.tgz", - "integrity": "sha512-EirvzAg0G4okCsdTfTjLWHU+tToQ2V2ptO3577Vyy2GOTeVJad99uCIuDqdK7ppFRRcEuigyJY6TJ59wv5JpSg==", + "version": "10.0.11", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-10.0.11.tgz", + "integrity": "sha512-vIwORDd/WyB8Nc23o2zNN5RrtFGlR6Fca61TtjkUXueI3Jf2DOZDl1zsshvBntZ3wZHBM9ztjnkXSmzQDaq3WA==", "dev": true, "dependencies": { "nofilter": "^3.0.2" @@ -2514,9 +2514,9 @@ } }, "node_modules/cli-truncate/node_modules/emoji-regex": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz", - "integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==", + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.5.0.tgz", + "integrity": "sha512-lb49vf1Xzfx080OKA0o6l8DQQpV+6Vg95zyCJX9VB/BqKYlhG7N4wgROUUHRA+ZPUefLnteQOad7z1kT2bV7bg==", "dev": true }, "node_modules/cli-truncate/node_modules/string-width": { @@ -3242,9 +3242,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.208", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.208.tgz", - "integrity": "sha512-ozZyibehoe7tOhNaf16lKmljVf+3npZcJIEbJRVftVsmAg5TeA1mGS9dVCZzOwr2xT7xK15V0p7+GZqSPgkuPg==", + "version": "1.5.211", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.211.tgz", + "integrity": "sha512-IGBvimJkotaLzFnwIVgW9/UD/AOJ2tByUmeOrtqBfACSbAw5b1G0XpvdaieKyc7ULmbwXVx+4e4Be8pOPBrYkw==", "dev": true }, "node_modules/emittery": { @@ -4174,9 +4174,9 @@ } }, "node_modules/get-east-asian-width": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.3.0.tgz", - "integrity": "sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.3.1.tgz", + "integrity": "sha512-R1QfovbPsKmosqTnPoRFiJ7CF9MLRgb53ChvMZm+r4p76/+8yKDy17qLL2PKInORy2RkZZekuK0efYgmzTkXyQ==", "dev": true, "engines": { "node": ">=18" @@ -5757,9 +5757,9 @@ } }, "node_modules/node-gyp": { - "version": "11.4.1", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.4.1.tgz", - "integrity": "sha512-GiVxQ1e4TdZSSVmFDYUn6uUsrEUP68pa8C/xBzCfL/FcLHa4reWrxxTP7tRGhNdviYrNsL5kRolBL5LNYEutCw==", + "version": "11.4.2", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.4.2.tgz", + "integrity": "sha512-3gD+6zsrLQH7DyYOUIutaauuXrcyxeTPyQuZQCQoNPZMHMMS5m4y0xclNpvYzoK3VNzuyxT6eF4mkIL4WSZ1eQ==", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", @@ -5893,9 +5893,9 @@ } }, "node_modules/npm-install-checks": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.1.tgz", - "integrity": "sha512-u6DCwbow5ynAX5BdiHQ9qvexme4U3qHW3MWe5NqH+NeBm0LbiH6zvGjNNew1fY+AZZUtVHbOPF3j7mJxbUzpXg==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-7.1.2.tgz", + "integrity": "sha512-z9HJBCYw9Zr8BqXcllKIs5nI+QggAImbBdHphOzVYrz2CB4iQ6FzWyKmlqDZua+51nAu7FcemlbTc9VgQN5XDQ==", "dependencies": { "semver": "^7.1.1" }, From 68dbdf87a8fd85c9121e1da02758c742c56b51ef Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Wed, 3 Sep 2025 07:45:36 +0000 Subject: [PATCH 1257/1272] [ui5-project][INTERNAL] Bump @ui5/builder from ^4.0.9 to ^4.0.10 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v^4.0.10/CHANGELOG.md --- packages/project/package-lock.json | 78 +++++++++++++++--------------- packages/project/package.json | 4 +- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5993aecaa27..7bf66fdad45 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", - "esmock": "^2.7.1", + "esmock": "^2.7.2", "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", @@ -62,7 +62,7 @@ "npm": ">= 8" }, "peerDependencies": { - "@ui5/builder": "^4.0.9" + "@ui5/builder": "^4.0.10" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -545,9 +545,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", - "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.8.0.tgz", + "integrity": "sha512-MJQFqrZgcW0UNYLGOuQpey/oTN59vyWwplvCGZztn1cKz9agZPPYpJB7h2OMmuu7VLqkvEjN8feFZJmxNF9D+Q==", "dev": true, "dependencies": { "eslint-visitor-keys": "^3.4.3" @@ -1424,9 +1424,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.41.0.tgz", - "integrity": "sha512-9EwxsWdVqh42afLbHP90n2VdHaWU/oWgbH2P0CfcNfdKL7CuKpwMQGjwev56vWu9cSKU7FWSu6r9zck6CVfnag==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz", + "integrity": "sha512-LdtAWMiFmbRLNP7JNeY0SqEtJvGMYSzfiWBSmx+VSZ1CH+1zyl8Mmw1TT39OrtsRvIYShjJWzTDMPWZJCpwBlw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1511,59 +1511,59 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.5.20", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.20.tgz", - "integrity": "sha512-8TWXUyiqFd3GmP4JTX9hbiTFRwYHgVL/vr3cqhr4YQ258+9FADwvj7golk2sWNGHR67QgmCZ8gz80nQcMokhwg==", + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.21.tgz", + "integrity": "sha512-8i+LZ0vf6ZgII5Z9XmUvrCyEzocvWT+TeR2VBUVlzIH6Tyv57E20mPZ1bCS+tbejgUgmjrEh7q/0F0bibskAmw==", "dev": true, "dependencies": { "@babel/parser": "^7.28.3", - "@vue/shared": "3.5.20", + "@vue/shared": "3.5.21", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.20", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.20.tgz", - "integrity": "sha512-whB44M59XKjqUEYOMPYU0ijUV0G+4fdrHVKDe32abNdX/kJe1NUEMqsi4cwzXa9kyM9w5S8WqFsrfo1ogtBZGQ==", + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.21.tgz", + "integrity": "sha512-jNtbu/u97wiyEBJlJ9kmdw7tAr5Vy0Aj5CgQmo+6pxWNQhXZDPsRr1UWPN4v3Zf82s2H3kF51IbzZ4jMWAgPlQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.5.20", - "@vue/shared": "3.5.20" + "@vue/compiler-core": "3.5.21", + "@vue/shared": "3.5.21" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.20", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.20.tgz", - "integrity": "sha512-SFcxapQc0/feWiSBfkGsa1v4DOrnMAQSYuvDMpEaxbpH5dKbnEM5KobSNSgU+1MbHCl+9ftm7oQWxvwDB6iBfw==", + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.21.tgz", + "integrity": "sha512-SXlyk6I5eUGBd2v8Ie7tF6ADHE9kCR6mBEuPyH1nUZ0h6Xx6nZI29i12sJKQmzbDyr2tUHMhhTt51Z6blbkTTQ==", "dev": true, "dependencies": { "@babel/parser": "^7.28.3", - "@vue/compiler-core": "3.5.20", - "@vue/compiler-dom": "3.5.20", - "@vue/compiler-ssr": "3.5.20", - "@vue/shared": "3.5.20", + "@vue/compiler-core": "3.5.21", + "@vue/compiler-dom": "3.5.21", + "@vue/compiler-ssr": "3.5.21", + "@vue/shared": "3.5.21", "estree-walker": "^2.0.2", - "magic-string": "^0.30.17", + "magic-string": "^0.30.18", "postcss": "^8.5.6", "source-map-js": "^1.2.1" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.20", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.20.tgz", - "integrity": "sha512-RSl5XAMc5YFUXpDQi+UQDdVjH9FnEpLDHIALg5J0ITHxkEzJ8uQLlo7CIbjPYqmZtt6w0TsIPbo1izYXwDG7JA==", + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.21.tgz", + "integrity": "sha512-vKQ5olH5edFZdf5ZrlEgSO1j1DMA4u23TVK5XR1uMhvwnYvVdDF0nHXJUblL/GvzlShQbjhZZ2uvYmDlAbgo9w==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.5.20", - "@vue/shared": "3.5.20" + "@vue/compiler-dom": "3.5.21", + "@vue/shared": "3.5.21" } }, "node_modules/@vue/shared": { - "version": "3.5.20", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.20.tgz", - "integrity": "sha512-SoRGP596KU/ig6TfgkCMbXkr4YJ91n/QSdMuqeP5r3hVIYA3CPHUBCc7Skak0EAKV+5lL4KyIh61VA/pK1CIAA==", + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.21.tgz", + "integrity": "sha512-+2k1EQpnYuVuu3N7atWyG3/xoFWIVJZq4Mz8XNOdScFI0etES75fbny/oU4lKWk/577P1zmg0ioYvpGEDZ3DLw==", "dev": true }, "node_modules/abbrev": { @@ -3242,9 +3242,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.211", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.211.tgz", - "integrity": "sha512-IGBvimJkotaLzFnwIVgW9/UD/AOJ2tByUmeOrtqBfACSbAw5b1G0XpvdaieKyc7ULmbwXVx+4e4Be8pOPBrYkw==", + "version": "1.5.213", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.213.tgz", + "integrity": "sha512-xr9eRzSLNa4neDO0xVFrkXu3vyIzG4Ay08dApecw42Z1NbmCt+keEpXdvlYGVe0wtvY5dhW0Ay0lY0IOfsCg0Q==", "dev": true }, "node_modules/emittery": { @@ -3716,9 +3716,9 @@ } }, "node_modules/esmock": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.7.1.tgz", - "integrity": "sha512-YgtZ6TSwRbdqFLkJwxVCYkt0rzKpjHb0tbDqSjWvbkm8Uy5Tm5W6ixICb3FVRkAd1uQlLOXiIn7OPY4F4f18cw==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.7.2.tgz", + "integrity": "sha512-/ilhkWbW4FXgQpRbS0LZpKG1AFkiFZkmapP/868Lqa4hSKgKVtMilFXlQrIMssLzyvpeDVg2Q9L3VInnqYoTAg==", "dev": true, "engines": { "node": ">=14.16.0" diff --git a/packages/project/package.json b/packages/project/package.json index 811b92069f9..910f13fe41f 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -143,7 +143,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^4.0.9" + "@ui5/builder": "^4.0.10" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -162,7 +162,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", - "esmock": "^2.7.1", + "esmock": "^2.7.2", "globals": "^16.3.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", From 78233b15f123091e5565a4c8f6d34035411f0056 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 7 Sep 2025 02:20:13 +0000 Subject: [PATCH 1258/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 156 +++++++++++++---------------- packages/project/package.json | 2 +- 2 files changed, 71 insertions(+), 87 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 7bf66fdad45..e1fcd865594 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.34.0", + "eslint": "^9.35.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", @@ -70,19 +70,6 @@ } } }, - "node_modules/@ampproject/remapping": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", - "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/code-frame": { "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", @@ -97,30 +84,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.0.tgz", - "integrity": "sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==", + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.4.tgz", + "integrity": "sha512-YsmSKC29MJwf0gF8Rjjrg5LQCmyh+j/nD8/eP7f+BeoQTKYqs9RoWbjGOdy0+1Ekr68RJZMUOPVQaQisnIo4Rw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.28.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.3.tgz", - "integrity": "sha512-yDBHV9kQNcr2/sUr9jghVyz9C3Y5G2zUM2H2lo+9mKv4sFgbA8s8Z9t8D1jiTkGoO/NoIfKMyKWr4s6CN23ZwQ==", + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.4.tgz", + "integrity": "sha512-2BCOP7TN8M+gVDj7/ht3hsaO/B/n5oDbiAyyvnRlNOs+u1o+JWNYTQrmpuNp1/Wq2gcFrI01JAW+paEKDMx/CA==", "dev": true, "dependencies": { - "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.27.1", "@babel/generator": "^7.28.3", "@babel/helper-compilation-targets": "^7.27.2", "@babel/helper-module-transforms": "^7.28.3", - "@babel/helpers": "^7.28.3", - "@babel/parser": "^7.28.3", + "@babel/helpers": "^7.28.4", + "@babel/parser": "^7.28.4", "@babel/template": "^7.27.2", - "@babel/traverse": "^7.28.3", - "@babel/types": "^7.28.2", + "@babel/traverse": "^7.28.4", + "@babel/types": "^7.28.4", + "@jridgewell/remapping": "^2.3.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -357,25 +344,25 @@ } }, "node_modules/@babel/helpers": { - "version": "7.28.3", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.3.tgz", - "integrity": "sha512-PTNtvUQihsAsDHMOP5pfobP8C6CM4JWXmP8DrEIt46c3r2bf87Ua1zoqevsMo9g+tWDwgWrFP5EIxuBx5RudAw==", + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.4.tgz", + "integrity": "sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==", "dev": true, "dependencies": { "@babel/template": "^7.27.2", - "@babel/types": "^7.28.2" + "@babel/types": "^7.28.4" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.28.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.3.tgz", - "integrity": "sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==", + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.4.tgz", + "integrity": "sha512-yZbBqeM6TkpP9du/I2pUZnJsRMGGvOuIrhjzC1AwHwW+6he4mni6Bp/m8ijn0iOuZuPI2BfkCoSRunpyjnrQKg==", "dev": true, "dependencies": { - "@babel/types": "^7.28.2" + "@babel/types": "^7.28.4" }, "bin": { "parser": "bin/babel-parser.js" @@ -498,17 +485,17 @@ } }, "node_modules/@babel/traverse": { - "version": "7.28.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.3.tgz", - "integrity": "sha512-7w4kZYHneL3A6NP2nxzHvT3HCZ7puDZZjFMqDpBPECub79sTtSO5CGXDkKrTQq8ksAwfD/XI2MRFX23njdDaIQ==", + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.4.tgz", + "integrity": "sha512-YEzuboP2qvQavAcjgQNVgsvHIDv6ZpwXvcvjmyySP2DIMuByS/6ioU5G9pYrWHM6T2YDfc7xga9iNzYOs12CFQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.27.1", "@babel/generator": "^7.28.3", "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.28.3", + "@babel/parser": "^7.28.4", "@babel/template": "^7.27.2", - "@babel/types": "^7.28.2", + "@babel/types": "^7.28.4", "debug": "^4.3.1" }, "engines": { @@ -516,9 +503,9 @@ } }, "node_modules/@babel/types": { - "version": "7.28.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.2.tgz", - "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==", + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.4.tgz", + "integrity": "sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.27.1", @@ -698,9 +685,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.34.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.34.0.tgz", - "integrity": "sha512-EoyvqQnBNsV1CWaEJ559rxXL4c8V92gxirbawSmVUOWXlsRxxQXl6LmCpdUblgxgSkDIqKnhzba2SjRTI/A5Rw==", + "version": "9.35.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.35.0.tgz", + "integrity": "sha512-30iXE9whjlILfWobBkNerJo+TXYsgVM5ERQwMcMKCHckHflCmf7wXDAHlARoWnh0s1U72WqlbeyE7iAcCzuCPw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -741,31 +728,18 @@ } }, "node_modules/@humanfs/node": { - "version": "0.16.6", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", - "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", "dev": true, "dependencies": { "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.3.0" + "@humanwhocodes/retry": "^0.4.0" }, "engines": { "node": ">=18.18.0" } }, - "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", - "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", - "dev": true, - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -934,6 +908,16 @@ "@jridgewell/trace-mapping": "^0.3.24" } }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, "node_modules/@jridgewell/resolve-uri": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", @@ -1209,9 +1193,9 @@ } }, "node_modules/@rollup/pluginutils": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.2.0.tgz", - "integrity": "sha512-qWJ2ZTbmumwiLFomfzTyt5Kng4hwPi9rwCYN4SHb6eaRU1KNO4ccxINHr/VhH4GgPlt1XfSTLX2LBTme8ne4Zw==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.3.0.tgz", + "integrity": "sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==", "dev": true, "dependencies": { "@types/estree": "^1.0.0", @@ -2180,9 +2164,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001739", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001739.tgz", - "integrity": "sha512-y+j60d6ulelrNSwpPyrHdl+9mJnQzHBr08xm48Qno0nSk4h3Qojh+ziv2qE6rXf4k3tadF4o1J/1tAbVm1NtnA==", + "version": "1.0.30001741", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001741.tgz", + "integrity": "sha512-QGUGitqsc8ARjLdgAfxETDhRbJ0REsP6O3I96TAth/mVjh2cYzN2u+3AzPP3aVSm2FehEItaJw1xd+IGBXWeSw==", "dev": true, "funding": [ { @@ -3242,9 +3226,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.213", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.213.tgz", - "integrity": "sha512-xr9eRzSLNa4neDO0xVFrkXu3vyIzG4Ay08dApecw42Z1NbmCt+keEpXdvlYGVe0wtvY5dhW0Ay0lY0IOfsCg0Q==", + "version": "1.5.214", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.214.tgz", + "integrity": "sha512-TpvUNdha+X3ybfU78NoQatKvQEm1oq3lf2QbnmCEdw+Bd9RuIAY+hJTvq1avzHM0f7EJfnH3vbCnbzKzisc/9Q==", "dev": true }, "node_modules/emittery": { @@ -3346,18 +3330,18 @@ } }, "node_modules/eslint": { - "version": "9.34.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.34.0.tgz", - "integrity": "sha512-RNCHRX5EwdrESy3Jc9o8ie8Bog+PeYvvSR8sDGoZxNFTvZ4dlxUB3WzQ3bQMztFrSRODGrLLj8g6OFuGY/aiQg==", + "version": "9.35.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.35.0.tgz", + "integrity": "sha512-QePbBFMJFjgmlE+cXAlbHZbHpdFVS2E/6vzCy7aKlebddvl1vadiC4JFV5u/wqTkNUwEV8WrQi257jf5f06hrg==", "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.21.0", "@eslint/config-helpers": "^0.3.1", "@eslint/core": "^0.15.2", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.34.0", + "@eslint/js": "9.35.0", "@eslint/plugin-kit": "^0.3.5", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -5803,9 +5787,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", - "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.20.tgz", + "integrity": "sha512-7gK6zSXEH6neM212JgfYFXe+GmZQM+fia5SsusuBIUgnPheLFBmIPhtFoAQRj8/7wASYQnbDlHPVwY0BefoFgA==", "dev": true }, "node_modules/node-stream-zip": { @@ -7233,9 +7217,9 @@ } }, "node_modules/rimraf/node_modules/lru-cache": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz", - "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.1.tgz", + "integrity": "sha512-r8LA6i4LP4EeWOhqBaZZjDWwehd1xUJPCJd9Sv300H0ZmcUER4+JPh7bqqZeqs1o5pgtgvXm+d9UGrB5zZGDiQ==", "dev": true, "engines": { "node": "20 || >=22" @@ -8254,12 +8238,12 @@ } }, "node_modules/tinyglobby": { - "version": "0.2.14", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz", - "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==", + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", "dependencies": { - "fdir": "^6.4.4", - "picomatch": "^4.0.2" + "fdir": "^6.5.0", + "picomatch": "^4.0.3" }, "engines": { "node": ">=12.0.0" diff --git a/packages/project/package.json b/packages/project/package.json index 910f13fe41f..30da27780a4 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.34.0", + "eslint": "^9.35.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", From 34f430e228723fb674c8a1f74c1d13d63ed9d474 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 11 Sep 2025 13:53:39 +0200 Subject: [PATCH 1259/1272] [ui5-project][FIX] Rename project to UI5 CLI JIRA: CPOUI5FOUNDATION-1098 --- packages/project/.github/ISSUE_TEMPLATE.md | 4 ++-- .../project/.github/ISSUE_TEMPLATE/config.yml | 6 +++--- .../project/.github/PULL_REQUEST_TEMPLATE.md | 8 ++++---- packages/project/CONTRIBUTING.md | 4 ++-- packages/project/README.md | 14 +++++++------- packages/project/REUSE.toml | 2 +- packages/project/docs/BuildExtensibility.md | 2 +- packages/project/docs/Configuration.md | 4 ++-- packages/project/jsdoc.json | 12 ++++++------ packages/project/lib/build/TaskRunner.js | 4 ++-- packages/project/lib/build/helpers/TaskUtil.js | 10 +++++----- packages/project/lib/config/Configuration.js | 4 ++-- packages/project/lib/graph/Workspace.js | 2 +- packages/project/lib/graph/graph.js | 2 +- .../project/lib/graph/projectGraphBuilder.js | 6 +++--- packages/project/lib/specifications/Project.js | 2 +- .../project/lib/specifications/Specification.js | 2 +- .../lib/specifications/SpecificationVersion.js | 2 +- .../lib/specifications/types/Application.js | 2 +- .../project/lib/ui5Framework/AbstractResolver.js | 4 ++-- .../ui5Framework/Sapui5MavenSnapshotResolver.js | 6 +++--- .../project/lib/ui5Framework/maven/Installer.js | 2 +- .../project/lib/ui5Framework/npm/Installer.js | 2 +- .../schema/specVersion/kind/extension.json | 2 +- .../schema/specVersion/kind/project.json | 4 ++-- .../lib/validation/schema/ui5-workspace.json | 10 +++++----- packages/project/lib/validation/schema/ui5.json | 6 +++--- packages/project/package.json | 2 +- .../test/fixtures/collection.b/sub-empty/.keep | 2 +- packages/project/test/lib/build/TaskRunner.js | 4 ++-- .../project/test/lib/build/helpers/TaskUtil.js | 6 +++--- .../project/test/lib/config/Configuration.js | 4 ++-- .../test/lib/graph/projectGraphBuilder.js | 4 ++-- .../test/lib/specifications/Specification.js | 4 ++-- .../lib/specifications/SpecificationVersion.js | 2 +- .../test/lib/specifications/types/Application.js | 2 +- .../test/lib/ui5framework/AbstractResolver.js | 4 ++-- .../ui5framework/Openui5Resolver.integration.js | 2 +- .../ui5framework/Sapui5MavenSnapshotResolver.js | 2 +- .../ui5framework/Sapui5Resolver.integration.js | 2 +- .../test/lib/validation/ValidationError.js | 4 ++-- .../validation/schema/__helper__/extension.js | 2 +- .../lib/validation/schema/__helper__/project.js | 2 +- .../specVersion/kind/extension/project-shim.js | 6 +++--- .../kind/extension/server-middleware.js | 6 +++--- .../schema/specVersion/kind/extension/task.js | 6 +++--- .../specVersion/kind/project/application.js | 6 +++--- .../schema/specVersion/kind/project/library.js | 6 +++--- .../schema/specVersion/kind/project/module.js | 6 +++--- .../specVersion/kind/project/theme-library.js | 6 +++--- .../test/lib/validation/schema/ui5-workspace.js | 16 ++++++++-------- .../project/test/lib/validation/schema/ui5.js | 2 +- 52 files changed, 118 insertions(+), 118 deletions(-) diff --git a/packages/project/.github/ISSUE_TEMPLATE.md b/packages/project/.github/ISSUE_TEMPLATE.md index d0c440ed229..6ddeb2221a8 100644 --- a/packages/project/.github/ISSUE_TEMPLATE.md +++ b/packages/project/.github/ISSUE_TEMPLATE.md @@ -1,3 +1,3 @@ -## 🚨 Issues Have Been Transferred to UI5 Tooling Repository +## 🚨 Issues Have Been Transferred to UI5 CLI Repository -Please create new issues in the UI5 Tooling repository: https://github.com/SAP/ui5-tooling/issues/new/choose +Please create new issues in the UI5 CLI repository: https://github.com/UI5/cli/issues/new/choose diff --git a/packages/project/.github/ISSUE_TEMPLATE/config.yml b/packages/project/.github/ISSUE_TEMPLATE/config.yml index afeecf17b89..34df09809c9 100644 --- a/packages/project/.github/ISSUE_TEMPLATE/config.yml +++ b/packages/project/.github/ISSUE_TEMPLATE/config.yml @@ -1,5 +1,5 @@ blank_issues_enabled: false contact_links: - - name: Report UI5 Tooling Issues or Request a Feature - url: https://github.com/SAP/ui5-tooling/issues/new/choose - about: Please create new issues in the UI5 Tooling repository + - name: Report UI5 CLI Issues or Request a Feature + url: https://github.com/UI5/cli/issues/new/choose + about: Please create new issues in the UI5 CLI repository diff --git a/packages/project/.github/PULL_REQUEST_TEMPLATE.md b/packages/project/.github/PULL_REQUEST_TEMPLATE.md index 98c8c204384..2f043b5c5cc 100644 --- a/packages/project/.github/PULL_REQUEST_TEMPLATE.md +++ b/packages/project/.github/PULL_REQUEST_TEMPLATE.md @@ -3,7 +3,7 @@ To get it merged faster, kindly review the checklist below: ## Pull Request Checklist -- [ ] Reviewed the [Contributing Guidelines](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md#-contributing-code) - + Especially the [How to Contribute](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md#how-to-contribute) section -- [ ] [No merge commits](https://github.com/SAP/ui5-tooling/blob/main/docs/Guidelines.md#no-merge-commits) -- [ ] [Correct commit message style](https://github.com/SAP/ui5-tooling/blob/main/docs/Guidelines.md#commit-message-style) +- [ ] Reviewed the [Contributing Guidelines](https://github.com/UI5/cli/blob/main/CONTRIBUTING.md#-contributing-code) + + Especially the [How to Contribute](https://github.com/UI5/cli/blob/main/CONTRIBUTING.md#how-to-contribute) section +- [ ] [No merge commits](https://github.com/UI5/cli/blob/main/docs/Guidelines.md#no-merge-commits) +- [ ] [Correct commit message style](https://github.com/UI5/cli/blob/main/docs/Guidelines.md#commit-message-style) diff --git a/packages/project/CONTRIBUTING.md b/packages/project/CONTRIBUTING.md index 603b729b22d..2ddb6276ed5 100644 --- a/packages/project/CONTRIBUTING.md +++ b/packages/project/CONTRIBUTING.md @@ -1,3 +1,3 @@ -# Contributing to the UI5 Tooling +# Contributing to the UI5 CLI -See CONTRIBUTING.md in the [SAP/ui5-tooling](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md) repository. +See CONTRIBUTING.md in the [UI5/cli](https://github.com/UI5/cli/blob/main/CONTRIBUTING.md) repository. diff --git a/packages/project/README.md b/packages/project/README.md index 2cece46ec9c..0e2ebdc21a8 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -1,8 +1,8 @@ -![UI5 icon](https://raw.githubusercontent.com/SAP/ui5-tooling/main/docs/images/UI5_logo_wide.png) +![UI5 icon](https://raw.githubusercontent.com/UI5/cli/main/docs/images/UI5_logo_wide.png) # ui5-project > Modules for building a projects dependency tree, including UI5 specific configuration. -> Part of the [UI5 Tooling](https://github.com/SAP/ui5-tooling) +> Part of the [UI5 CLI](https://github.com/UI5/cli) [![REUSE status](https://api.reuse.software/badge/github.com/SAP/ui5-project)](https://api.reuse.software/info/github.com/SAP/ui5-project) [![Build Status](https://dev.azure.com/sap/opensource/_apis/build/status/SAP.ui5-project?branchName=main)](https://dev.azure.com/sap/opensource/_build/latest?definitionId=35&branchName=main) @@ -10,17 +10,17 @@ [![Coverage Status](https://coveralls.io/repos/github/SAP/ui5-project/badge.svg)](https://coveralls.io/github/SAP/ui5-project) ## Documentation -UI5 Project documentation can be found here: [sap.github.io/ui5-tooling](https://sap.github.io/ui5-tooling/v4/pages/Project/) +UI5 Project documentation can be found here: [ui5.github.io/cli](https://ui5.github.io/cli/v4/pages/Project/) -The UI5 Project API Reference can be found here: [`@ui5/project`](https://sap.github.io/ui5-tooling/v4/api/) +The UI5 Project API Reference can be found here: [`@ui5/project`](https://ui5.github.io/cli/v4/api/) ## Contributing -Please check our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md). +Please check our [Contribution Guidelines](https://github.com/UI5/cli/blob/main/CONTRIBUTING.md). ## Support -Please follow our [Contribution Guidelines](https://github.com/SAP/ui5-tooling/blob/main/CONTRIBUTING.md#report-an-issue) on how to report an issue. +Please follow our [Contribution Guidelines](https://github.com/UI5/cli/blob/main/CONTRIBUTING.md#report-an-issue) on how to report an issue. -Please report issues in the main [UI5 Tooling](https://github.com/SAP/ui5-tooling) repository. +Please report issues in the main [UI5 CLI](https://github.com/UI5/cli) repository. ## Release History See [CHANGELOG.md](CHANGELOG.md). diff --git a/packages/project/REUSE.toml b/packages/project/REUSE.toml index 76e07209596..16764782f8b 100644 --- a/packages/project/REUSE.toml +++ b/packages/project/REUSE.toml @@ -7,5 +7,5 @@ SPDX-PackageComment = "The code in this project may include calls to APIs (“AP [[annotations]] path = "**" precedence = "aggregate" -SPDX-FileCopyrightText = "2025 SAP SE or an SAP affiliate company and UI5 Tooling contributors" +SPDX-FileCopyrightText = "2025 SAP SE or an SAP affiliate company and UI5 CLI contributors" SPDX-License-Identifier = "Apache-2.0" diff --git a/packages/project/docs/BuildExtensibility.md b/packages/project/docs/BuildExtensibility.md index 185d4a80448..eaff71e7cf6 100644 --- a/packages/project/docs/BuildExtensibility.md +++ b/packages/project/docs/BuildExtensibility.md @@ -1,2 +1,2 @@ # UI5 Build Extensibility -This documentation moved to a new place: [sap.github.io/ui5-tooling/pages/extensibility/CustomTasks/](https://sap.github.io/ui5-tooling/pages/extensibility/CustomTasks/) +This documentation moved to a new place: [ui5.github.io/cli/pages/extensibility/CustomTasks/](https://ui5.github.io/cli/pages/extensibility/CustomTasks/) diff --git a/packages/project/docs/Configuration.md b/packages/project/docs/Configuration.md index 4f48f5dca6f..bfc79050496 100644 --- a/packages/project/docs/Configuration.md +++ b/packages/project/docs/Configuration.md @@ -1,4 +1,4 @@ # Configuration -This documentation moved to a new place: [sap.github.io/ui5-tooling/pages/Configuration/](https://sap.github.io/ui5-tooling/pages/Configuration/). +This documentation moved to a new place: [ui5.github.io/cli/pages/Configuration/](https://ui5.github.io/cli/pages/Configuration/). -The **Specification Version Documentation** can be found here: [sap.github.io/ui5-tooling/pages/Configuration/#specification-versions](https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions) +The **Specification Version Documentation** can be found here: [ui5.github.io/cli/pages/Configuration/#specification-versions](https://ui5.github.io/cli/pages/Configuration/#specification-versions) diff --git a/packages/project/jsdoc.json b/packages/project/jsdoc.json index 560fa484695..7fc7a4c6dd0 100644 --- a/packages/project/jsdoc.json +++ b/packages/project/jsdoc.json @@ -25,11 +25,11 @@ } }, "openGraph": { - "title": "UI5 Tooling - API Reference", + "title": "UI5 CLI - API Reference", "type": "website", - "image": "https://sap.github.io/ui5-tooling/v4/images/UI5_logo_wide.png", - "site_name": "UI5 Tooling - API Reference", - "url": "https://sap.github.io/ui5-tooling/" + "image": "https://ui5.github.io/cli/v4/images/UI5_logo_wide.png", + "site_name": "UI5 CLI - API Reference", + "url": "https://ui5.github.io/cli/" }, "docdash": { "sectionOrder": [ @@ -43,8 +43,8 @@ "Interfaces" ], "meta": { - "title": "UI5 Tooling - API Reference - UI5 Project", - "description": "UI5 Tooling - API Reference - UI5 Project", + "title": "UI5 CLI - API Reference - UI5 Project", + "description": "UI5 CLI - API Reference - UI5 Project", "keyword": "openui5 sapui5 ui5 build development tool api reference" }, "search": true, diff --git a/packages/project/lib/build/TaskRunner.js b/packages/project/lib/build/TaskRunner.js index c4782c6f79a..70e7bf32ae4 100644 --- a/packages/project/lib/build/TaskRunner.js +++ b/packages/project/lib/build/TaskRunner.js @@ -361,8 +361,8 @@ class TaskRunner { throw new Error( `Standard task ${refTaskName}, referenced by custom task ${newTaskName} ` + `in project ${project.getName()}, ` + - `has been removed in this version of UI5 Tooling and can't be referenced anymore. ` + - `Please see the migration guide at https://sap.github.io/ui5-tooling/updates/migrate-v3/`); + `has been removed in this version of UI5 CLI and can't be referenced anymore. ` + + `Please see the migration guide at https://ui5.github.io/cli/updates/migrate-v3/`); } throw new Error(`Could not find task ${refTaskName}, referenced by custom task ${newTaskName}, ` + `to be scheduled for project ${project.getName()}`); diff --git a/packages/project/lib/build/helpers/TaskUtil.js b/packages/project/lib/build/helpers/TaskUtil.js index 5bd20493113..661dc04ae07 100644 --- a/packages/project/lib/build/helpers/TaskUtil.js +++ b/packages/project/lib/build/helpers/TaskUtil.js @@ -23,8 +23,8 @@ import { */ class TaskUtil { /** - * Standard Build Tags. See UI5 Tooling - * [RFC 0008]{@link https://github.com/SAP/ui5-tooling/blob/main/rfcs/0008-resource-tagging-during-build.md} + * Standard Build Tags. See UI5 CLI + * [RFC 0008]{@link https://github.com/UI5/cli/blob/main/rfcs/0008-resource-tagging-during-build.md} * for details. * * @public @@ -87,7 +87,7 @@ class TaskUtil { setTag(resource, tag, value) { if (typeof resource === "string") { throw new Error("Deprecated parameter: " + - "Since UI5 Tooling 3.0, #setTag requires a resource instance. Strings are no longer accepted"); + "Since UI5 CLI 3.0, #setTag requires a resource instance. Strings are no longer accepted"); } const collection = this._projectBuildContext.getResourceTagCollection(resource, tag); @@ -110,7 +110,7 @@ class TaskUtil { getTag(resource, tag) { if (typeof resource === "string") { throw new Error("Deprecated parameter: " + - "Since UI5 Tooling 3.0, #getTag requires a resource instance. Strings are no longer accepted"); + "Since UI5 CLI 3.0, #getTag requires a resource instance. Strings are no longer accepted"); } const collection = this._projectBuildContext.getResourceTagCollection(resource, tag); return collection.getTag(resource, tag); @@ -131,7 +131,7 @@ class TaskUtil { clearTag(resource, tag) { if (typeof resource === "string") { throw new Error("Deprecated parameter: " + - "Since UI5 Tooling 3.0, #clearTag requires a resource instance. Strings are no longer accepted"); + "Since UI5 CLI 3.0, #clearTag requires a resource instance. Strings are no longer accepted"); } const collection = this._projectBuildContext.getResourceTagCollection(resource, tag); return collection.clearTag(resource, tag); diff --git a/packages/project/lib/config/Configuration.js b/packages/project/lib/config/Configuration.js index 91ea4a3d4d3..c6961d3b4ce 100644 --- a/packages/project/lib/config/Configuration.js +++ b/packages/project/lib/config/Configuration.js @@ -98,7 +98,7 @@ class Configuration { config = {}; } else { throw new Error( - `Failed to read UI5 Tooling configuration from ${filePath}: ${err.message}`, { + `Failed to read UI5 CLI configuration from ${filePath}: ${err.message}`, { cause: err }); } @@ -127,7 +127,7 @@ class Configuration { return writeFile(filePath, JSON.stringify(config.toJson())); } catch (err) { throw new Error( - `Failed to write UI5 Tooling configuration to ${filePath}: ${err.message}`, { + `Failed to write UI5 CLI configuration to ${filePath}: ${err.message}`, { cause: err }); } diff --git a/packages/project/lib/graph/Workspace.js b/packages/project/lib/graph/Workspace.js index 2babd54a783..770d52b1f75 100644 --- a/packages/project/lib/graph/Workspace.js +++ b/packages/project/lib/graph/Workspace.js @@ -12,7 +12,7 @@ const log = getLogger("graph:Workspace"); /** * Workspace configuration. For details, refer to the - * [UI5 Workspaces documentation]{@link https://sap.github.io/ui5-tooling/v4/pages/Workspace/#configuration} + * [UI5 Workspaces documentation]{@link https://ui5.github.io/cli/v4/pages/Workspace/#configuration} * * @public * @typedef {object} @ui5/project/graph/Workspace~Configuration diff --git a/packages/project/lib/graph/graph.js b/packages/project/lib/graph/graph.js index 1f77bbb5833..0885265447f 100644 --- a/packages/project/lib/graph/graph.js +++ b/packages/project/lib/graph/graph.js @@ -85,7 +85,7 @@ export async function graphFromPackageDependencies({ * [@ui5/project/graph/providers/DependencyTree~TreeNode]{@link @ui5/project/graph/providers/DependencyTree~TreeNode}. * * Documentation: - * [Static Dependency Definition]{@link https://sap.github.io/ui5-tooling/stable/pages/Overview/#static-dependency-definition} + * [Static Dependency Definition]{@link https://ui5.github.io/cli/stable/pages/Overview/#static-dependency-definition} * * @public * @static diff --git a/packages/project/lib/graph/projectGraphBuilder.js b/packages/project/lib/graph/projectGraphBuilder.js index 069c1f2b104..1376d3d224f 100644 --- a/packages/project/lib/graph/projectGraphBuilder.js +++ b/packages/project/lib/graph/projectGraphBuilder.js @@ -28,13 +28,13 @@ function validateNode(node) { if (node.specVersion) { throw new Error( `Provided node with ID ${node.id} contains a top-level 'specVersion' property. ` + - `With UI5 Tooling 3.0, project configuration needs to be provided in a dedicated ` + + `With UI5 CLI 3.0, project configuration needs to be provided in a dedicated ` + `'configuration' object`); } if (node.metadata) { throw new Error( `Provided node with ID ${node.id} contains a top-level 'metadata' property. ` + - `With UI5 Tooling 3.0, project configuration needs to be provided in a dedicated ` + + `With UI5 CLI 3.0, project configuration needs to be provided in a dedicated ` + `'configuration' object`); } } @@ -171,7 +171,7 @@ async function projectGraphBuilder(nodeProvider, workspace) { // Invalidate cache if the cached module is visited through another parent project and did not // resolve to a project or extension(s) before. // The module being visited now might be a different version containing for example - // UI5 Tooling configuration, or one of the parent projects could have defined a + // UI5 CLI configuration, or one of the parent projects could have defined a // relevant configuration shim meanwhile log.silly( `Cached module ${node.id} did not resolve to any projects or extensions. ` + diff --git a/packages/project/lib/specifications/Project.js b/packages/project/lib/specifications/Project.js index 2ce1fc8c40b..17177b08536 100644 --- a/packages/project/lib/specifications/Project.js +++ b/packages/project/lib/specifications/Project.js @@ -110,7 +110,7 @@ class Project extends Specification { /** * Framework dependency entry of the project configuration. - * Also see [Framework Configuration: Dependencies]{@link https://sap.github.io/ui5-tooling/stable/pages/Configuration/#dependencies} + * Also see [Framework Configuration: Dependencies]{@link https://ui5.github.io/cli/stable/pages/Configuration/#dependencies} * * @public * @typedef {object} @ui5/project/specifications/Project~FrameworkDependency diff --git a/packages/project/lib/specifications/Specification.js b/packages/project/lib/specifications/Specification.js index 5c2af41428f..71553e73af7 100644 --- a/packages/project/lib/specifications/Specification.js +++ b/packages/project/lib/specifications/Specification.js @@ -127,7 +127,7 @@ class Specification { throw new Error( `${config.kind} ${config.metadata.name} defines unsupported Specification Version ` + `${originalSpecVersion}. Please manually upgrade to 3.0 or higher. ` + - `For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions - ` + + `For details see https://ui5.github.io/cli/pages/Configuration/#specification-versions - ` + `An attempted migration to a supported specification version failed, ` + `likely due to unrecognized configuration. Check verbose log for details.`); } diff --git a/packages/project/lib/specifications/SpecificationVersion.js b/packages/project/lib/specifications/SpecificationVersion.js index c19163eb6df..6448f1638ad 100644 --- a/packages/project/lib/specifications/SpecificationVersion.js +++ b/packages/project/lib/specifications/SpecificationVersion.js @@ -284,7 +284,7 @@ class SpecificationVersion { function getUnsupportedSpecVersionMessage(specVersion) { return `Unsupported Specification Version ${specVersion} defined. Your UI5 CLI installation might be outdated. ` + - `For details, see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`; + `For details, see https://ui5.github.io/cli/pages/Configuration/#specification-versions`; } function getSemverCompatibleVersion(specVersion) { diff --git a/packages/project/lib/specifications/types/Application.js b/packages/project/lib/specifications/types/Application.js index 23b97b46903..1dc17b4bc1c 100644 --- a/packages/project/lib/specifications/types/Application.js +++ b/packages/project/lib/specifications/types/Application.js @@ -147,7 +147,7 @@ class Application extends ComponentProject { `Could not find required manifest.json for project ` + `${this.getName()}: ${manifestJsonError.message}\n\n` + `If you are about to start a new project, please refer to:\n` + - `https://sap.github.io/ui5-tooling/v4/pages/GettingStarted/#starting-a-new-project`, { + `https://ui5.github.io/cli/v4/pages/GettingStarted/#starting-a-new-project`, { cause: manifestJsonError }); } diff --git a/packages/project/lib/ui5Framework/AbstractResolver.js b/packages/project/lib/ui5Framework/AbstractResolver.js index 8cccbd3e496..6cb532d98a6 100644 --- a/packages/project/lib/ui5Framework/AbstractResolver.js +++ b/packages/project/lib/ui5Framework/AbstractResolver.js @@ -230,11 +230,11 @@ class AbstractResolver { if (semver.valid(spec)) { if (this.name === "Sapui5Resolver" && semver.lt(spec, "1.76.0")) { throw new Error(`Could not resolve framework version ${version}. ` + - `Note that SAPUI5 framework libraries can only be consumed by the UI5 Tooling ` + + `Note that SAPUI5 framework libraries can only be consumed by the UI5 CLI ` + `starting with SAPUI5 v1.76.0`); } else if (this.name === "Openui5Resolver" && semver.lt(spec, "1.52.5")) { throw new Error(`Could not resolve framework version ${version}. ` + - `Note that OpenUI5 framework libraries can only be consumed by the UI5 Tooling ` + + `Note that OpenUI5 framework libraries can only be consumed by the UI5 CLI ` + `starting with OpenUI5 v1.52.5`); } } diff --git a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js index 7b694cc7a6f..7002bddbd27 100644 --- a/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/lib/ui5Framework/Sapui5MavenSnapshotResolver.js @@ -174,7 +174,7 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { /** * Read the Maven repository snapshot endpoint URL from the central - * UI5 Tooling configuration, with a fallback to central Maven configuration (is existing) + * UI5 CLI configuration, with a fallback to central Maven configuration (is existing) * * @returns {Promise} The resolved snapshotEndpointUrl */ @@ -183,12 +183,12 @@ class Sapui5MavenSnapshotResolver extends AbstractResolver { const config = await Configuration.fromFile(); let url = config.getMavenSnapshotEndpointUrl(); if (url) { - log.verbose(`Using UI5 Tooling configuration for mavenSnapshotEndpointUrl: ${url}`); + log.verbose(`Using UI5 CLI configuration for mavenSnapshotEndpointUrl: ${url}`); } else { log.verbose(`No mavenSnapshotEndpointUrl configuration found`); url = await Sapui5MavenSnapshotResolver._resolveSnapshotEndpointUrlFromMaven(); if (url) { - log.verbose(`Updating UI5 Tooling configuration with new mavenSnapshotEndpointUrl: ${url}`); + log.verbose(`Updating UI5 CLI configuration with new mavenSnapshotEndpointUrl: ${url}`); const configJson = config.toJson(); configJson.mavenSnapshotEndpointUrl = url; await Configuration.toFile(new Configuration(configJson)); diff --git a/packages/project/lib/ui5Framework/maven/Installer.js b/packages/project/lib/ui5Framework/maven/Installer.js index 08811dcb3de..4dd6d1bc8cd 100644 --- a/packages/project/lib/ui5Framework/maven/Installer.js +++ b/packages/project/lib/ui5Framework/maven/Installer.js @@ -349,7 +349,7 @@ class Installer extends AbstractInstaller { } // Do not create target dir itself to prevent EPERM error in following rename operation - // (https://github.com/SAP/ui5-tooling/issues/487) + // (https://github.com/UI5/cli/issues/487) await mkdirp(path.dirname(targetDir)); log.verbose(`Promoting staging directory from ${stagingDir} to ${targetDir}...`); await rename(stagingDir, targetDir); diff --git a/packages/project/lib/ui5Framework/npm/Installer.js b/packages/project/lib/ui5Framework/npm/Installer.js index 7a6564c1d41..40d1dae9814 100644 --- a/packages/project/lib/ui5Framework/npm/Installer.js +++ b/packages/project/lib/ui5Framework/npm/Installer.js @@ -115,7 +115,7 @@ class Installer extends AbstractInstaller { await this.getRegistry().extractPackage(pkgName, version, stagingDir); // Do not create target dir itself to prevent EPERM error in following rename operation - // (https://github.com/SAP/ui5-tooling/issues/487) + // (https://github.com/UI5/cli/issues/487) await mkdirp(path.dirname(targetDir)); log.verbose(`Promoting staging directory from ${stagingDir} to ${targetDir}...`); await rename(stagingDir, targetDir); diff --git a/packages/project/lib/validation/schema/specVersion/kind/extension.json b/packages/project/lib/validation/schema/specVersion/kind/extension.json index ddc1360399a..274d67748a2 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/extension.json +++ b/packages/project/lib/validation/schema/specVersion/kind/extension.json @@ -83,7 +83,7 @@ "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", "title": "Extension Name", "description": "Unique identifier for the extension, for example: ui5-task-fearless-rock", - "errorMessage": "Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name" + "errorMessage": "Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name" }, "copyright": { "type": "string" diff --git a/packages/project/lib/validation/schema/specVersion/kind/project.json b/packages/project/lib/validation/schema/specVersion/kind/project.json index 7e4480b71e1..d1167eba986 100644 --- a/packages/project/lib/validation/schema/specVersion/kind/project.json +++ b/packages/project/lib/validation/schema/specVersion/kind/project.json @@ -105,7 +105,7 @@ "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", "title": "Project Name", "description": "Unique identifier for the project, for example: organization.product.project", - "errorMessage": "Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name" + "errorMessage": "Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name" }, "copyright": { "type": "string" @@ -128,7 +128,7 @@ "enum": ["UTF-8", "ISO-8859-1"], "default": "UTF-8", "title": "Encoding of *.properties files", - "description": "By default, the UI5 Tooling expects *.properties files to be UTF-8 encoded." + "description": "By default, the UI5 CLI expects *.properties files to be UTF-8 encoded." }, "builder-resources": { "type": "object", diff --git a/packages/project/lib/validation/schema/ui5-workspace.json b/packages/project/lib/validation/schema/ui5-workspace.json index 79f7719e0b9..41bd129edd0 100644 --- a/packages/project/lib/validation/schema/ui5-workspace.json +++ b/packages/project/lib/validation/schema/ui5-workspace.json @@ -2,15 +2,15 @@ "$schema": "http://json-schema.org/draft-07/schema", "$id": "http://ui5.sap/schema/ui5-workspace.json", "title": "ui5-workspace.yaml", - "description": "Schema for UI5 Tooling Workspace Configuration File (ui5-workspace.yaml)", - "$comment": "See https://sap.github.io/ui5-tooling/", + "description": "Schema for UI5 CLI Workspace Configuration File (ui5-workspace.yaml)", + "$comment": "See https://ui5.github.io/cli/", "type": "object", "required": ["specVersion", "metadata", "dependencyManagement"], "properties": { "additionalProperties": false, "specVersion": { "enum": ["workspace/1.0"], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"workspace/1.0\"\nFor details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"workspace/1.0\"\nFor details, see: https://ui5.github.io/cli/stable/pages/Workspace/#workspace-specification-versions" }, "metadata": { "$ref": "#/definitions/metadata" @@ -31,8 +31,8 @@ "maxLength": 80, "pattern": "^(?:@[0-9a-z-_.]+\\/)?[a-z][0-9a-z-_.]*$", "title": "Workspace Name", - "description": "Identifier for the workspace configuration. Workspaces named 'default' will be used automatically by UI5 Tooling", - "errorMessage": "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name" + "description": "Identifier for the workspace configuration. Workspaces named 'default' will be used automatically by UI5 CLI", + "errorMessage": "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Workspace/#name" } } }, diff --git a/packages/project/lib/validation/schema/ui5.json b/packages/project/lib/validation/schema/ui5.json index 6948c735934..0511c7fdd2a 100644 --- a/packages/project/lib/validation/schema/ui5.json +++ b/packages/project/lib/validation/schema/ui5.json @@ -2,8 +2,8 @@ "$schema": "http://json-schema.org/draft-07/schema", "$id": "http://ui5.sap/schema/ui5.json", "title": "ui5.yaml", - "description": "Schema for UI5 Tooling Configuration File (ui5.yaml)", - "$comment": "See https://sap.github.io/ui5-tooling/", + "description": "Schema for UI5 CLI Configuration File (ui5.yaml)", + "$comment": "See https://ui5.github.io/cli/", "type": "object", "required": ["specVersion"], @@ -15,7 +15,7 @@ "2.6", "2.5", "2.4", "2.3", "2.2", "2.1", "2.0", "1.1", "1.0", "0.1" ], - "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"4.0\", \"3.2\", \"3.1\", \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "errorMessage": "Unsupported \"specVersion\"\nYour UI5 CLI installation might be outdated.\nSupported specification versions: \"4.0\", \"3.2\", \"3.1\", \"3.0\", \"2.6\", \"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\nFor details, see: https://ui5.github.io/cli/pages/Configuration/#specification-versions" } }, diff --git a/packages/project/package.json b/packages/project/package.json index 30da27780a4..34dd07d03ec 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,7 +1,7 @@ { "name": "@ui5/project", "version": "4.0.4", - "description": "UI5 Tooling - Project ", + "description": "UI5 CLI - Project ", "author": { "name": "SAP SE", "email": "openui5@sap.com", diff --git a/packages/project/test/fixtures/collection.b/sub-empty/.keep b/packages/project/test/fixtures/collection.b/sub-empty/.keep index 6f5514d1dd5..a550add6add 100644 --- a/packages/project/test/fixtures/collection.b/sub-empty/.keep +++ b/packages/project/test/fixtures/collection.b/sub-empty/.keep @@ -1,2 +1,2 @@ This file is a stand-in for an empty project directory. -This directory, even though matching the npm workspace configuration pattern, should be ignored by UI5 Tooling. +This directory, even though matching the npm workspace configuration pattern, should be ignored by UI5 CLI. diff --git a/packages/project/test/lib/build/TaskRunner.js b/packages/project/test/lib/build/TaskRunner.js index dcd294dbd53..73c9e187648 100644 --- a/packages/project/test/lib/build/TaskRunner.js +++ b/packages/project/test/lib/build/TaskRunner.js @@ -579,8 +579,8 @@ test("_initTasks: Custom tasks with removed beforeTask", async (t) => { }); t.is(err.message, `Standard task removedTask, referenced by custom task myTask in project project.b, ` + - `has been removed in this version of UI5 Tooling and can't be referenced anymore. ` + - `Please see the migration guide at https://sap.github.io/ui5-tooling/updates/migrate-v3/`, + `has been removed in this version of UI5 CLI and can't be referenced anymore. ` + + `Please see the migration guide at https://ui5.github.io/cli/updates/migrate-v3/`, "Threw with expected error message"); }); diff --git a/packages/project/test/lib/build/helpers/TaskUtil.js b/packages/project/test/lib/build/helpers/TaskUtil.js index fbab8795846..694cb84ed43 100644 --- a/packages/project/test/lib/build/helpers/TaskUtil.js +++ b/packages/project/test/lib/build/helpers/TaskUtil.js @@ -97,7 +97,7 @@ test("setTag with resource path is not supported anymore", (t) => { taskUtil.setTag("my resource", "my tag", "my value"); }); t.is(err.message, - "Deprecated parameter: Since UI5 Tooling 3.0, #setTag " + + "Deprecated parameter: Since UI5 CLI 3.0, #setTag " + "requires a resource instance. Strings are no longer accepted", "Threw with expected error message"); }); @@ -111,7 +111,7 @@ test("getTag with resource path is not supported anymore", (t) => { taskUtil.getTag("my resource", "my tag", "my value"); }); t.is(err.message, - "Deprecated parameter: Since UI5 Tooling 3.0, #getTag " + + "Deprecated parameter: Since UI5 CLI 3.0, #getTag " + "requires a resource instance. Strings are no longer accepted", "Threw with expected error message"); }); @@ -125,7 +125,7 @@ test("clearTag with resource path is not supported anymore", (t) => { taskUtil.clearTag("my resource", "my tag", "my value"); }); t.is(err.message, - "Deprecated parameter: Since UI5 Tooling 3.0, #clearTag " + + "Deprecated parameter: Since UI5 CLI 3.0, #clearTag " + "requires a resource instance. Strings are no longer accepted", "Threw with expected error message"); }); diff --git a/packages/project/test/lib/config/Configuration.js b/packages/project/test/lib/config/Configuration.js index 430721f95ee..7acbadba201 100644 --- a/packages/project/test/lib/config/Configuration.js +++ b/packages/project/test/lib/config/Configuration.js @@ -140,7 +140,7 @@ test.serial("fromFile: throws", async (t) => { promisifyStub.callsFake(() => responseStub); await t.throwsAsync(fromFile(), { - message: `Failed to read UI5 Tooling configuration from ~/.ui5rc: Error` + message: `Failed to read UI5 CLI configuration from ~/.ui5rc: Error` }); }); @@ -169,6 +169,6 @@ test.serial("toFile: throws", async (t) => { promisifyStub.callsFake(() => responseStub); await t.throwsAsync(toFile(new Configuration({})), { - message: "Failed to write UI5 Tooling configuration to ~/.ui5rc: Error" + message: "Failed to write UI5 CLI configuration to ~/.ui5rc: Error" }); }); diff --git a/packages/project/test/lib/graph/projectGraphBuilder.js b/packages/project/test/lib/graph/projectGraphBuilder.js index 044a0237f0e..d6bfdd392a0 100644 --- a/packages/project/test/lib/graph/projectGraphBuilder.js +++ b/packages/project/test/lib/graph/projectGraphBuilder.js @@ -218,7 +218,7 @@ test("Legacy node with specVersion attribute as root", async (t) => { const err = await t.throwsAsync(projectGraphBuilder(t.context.provider)); t.is(err.message, - "Provided node with ID id1 contains a top-level 'specVersion' property. With UI5 Tooling 3.0, " + + "Provided node with ID id1 contains a top-level 'specVersion' property. With UI5 CLI 3.0, " + "project configuration needs to be provided in a dedicated 'configuration' object", "Threw with expected error message"); }); @@ -235,7 +235,7 @@ test("Legacy node with metadata attribute in dependencies", async (t) => { const err = await t.throwsAsync(projectGraphBuilder(t.context.provider)); t.is(err.message, - "Provided node with ID id2 contains a top-level 'metadata' property. With UI5 Tooling 3.0, " + + "Provided node with ID id2 contains a top-level 'metadata' property. With UI5 CLI 3.0, " + "project configuration needs to be provided in a dedicated 'configuration' object", "Threw with expected error message"); }); diff --git a/packages/project/test/lib/specifications/Specification.js b/packages/project/test/lib/specifications/Specification.js index b9de15a09ae..ab449809182 100644 --- a/packages/project/test/lib/specifications/Specification.js +++ b/packages/project/test/lib/specifications/Specification.js @@ -193,7 +193,7 @@ test("Migrate legacy project unexpected configuration", async (t) => { t.is(err.message, "project application.a defines unsupported Specification Version 1.0. Please manually upgrade to 3.0 or " + - "higher. For details see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions - " + + "higher. For details see https://ui5.github.io/cli/pages/Configuration/#specification-versions - " + "An attempted migration to a supported specification version failed, likely due to unrecognized " + "configuration. Check verbose log for details.", "Threw with expected error message"); @@ -366,7 +366,7 @@ test("Invalid specVersion", async (t) => { await t.throwsAsync(Specification.create(t.context.basicProjectInput), { message: "Unsupported Specification Version 0.5 defined. Your UI5 CLI installation might be outdated. " + - "For details, see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions" + "For details, see https://ui5.github.io/cli/pages/Configuration/#specification-versions" }, "Threw with expected error message"); }); diff --git a/packages/project/test/lib/specifications/SpecificationVersion.js b/packages/project/test/lib/specifications/SpecificationVersion.js index 9a709f59c84..45d90a39fe1 100644 --- a/packages/project/test/lib/specifications/SpecificationVersion.js +++ b/packages/project/test/lib/specifications/SpecificationVersion.js @@ -5,7 +5,7 @@ import {__localFunctions__} from "../../../lib/specifications/SpecificationVersi const unsupportedSpecVersionText = (specVersion) => `Unsupported Specification Version ${specVersion} defined. Your UI5 CLI installation might be outdated. ` + - `For details, see https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`; + `For details, see https://ui5.github.io/cli/pages/Configuration/#specification-versions`; test.beforeEach((t) => { t.context.sinon = sinonGlobal.createSandbox(); diff --git a/packages/project/test/lib/specifications/types/Application.js b/packages/project/test/lib/specifications/types/Application.js index 304cf476685..0a53ae309b0 100644 --- a/packages/project/test/lib/specifications/types/Application.js +++ b/packages/project/test/lib/specifications/types/Application.js @@ -528,7 +528,7 @@ test("_getNamespace: Correct error message if fallback to manifest.appdescr_vari "No such stable or directory: manifest.json" + "\n\n" + "If you are about to start a new project, please refer to:\n" + - "https://sap.github.io/ui5-tooling/v4/pages/GettingStarted/#starting-a-new-project", + "https://ui5.github.io/cli/v4/pages/GettingStarted/#starting-a-new-project", "Rejected with correct error message"); t.is(_getManifestStub.callCount, 2, "_getManifest called exactly twice"); diff --git a/packages/project/test/lib/ui5framework/AbstractResolver.js b/packages/project/test/lib/ui5framework/AbstractResolver.js index 011c4e391a0..7156df0a545 100644 --- a/packages/project/test/lib/ui5framework/AbstractResolver.js +++ b/packages/project/test/lib/ui5framework/AbstractResolver.js @@ -1106,7 +1106,7 @@ test.serial( t.is(error.message, `Could not resolve framework version 1.50.0. Note that OpenUI5 framework libraries can only be ` + - `consumed by the UI5 Tooling starting with OpenUI5 v1.52.5`); + `consumed by the UI5 CLI starting with OpenUI5 v1.52.5`); }); test.serial( @@ -1126,7 +1126,7 @@ test.serial( t.is(error.message, `Could not resolve framework version 1.75.0. Note that SAPUI5 framework libraries can only be ` + - `consumed by the UI5 Tooling starting with SAPUI5 v1.76.0`); + `consumed by the UI5 CLI starting with SAPUI5 v1.76.0`); }); test.serial( diff --git a/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js b/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js index 7dde9906201..e8049f0a412 100644 --- a/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js +++ b/packages/project/test/lib/ui5framework/Openui5Resolver.integration.js @@ -177,7 +177,7 @@ test.serial("resolveVersion", async (t) => { }); await t.throwsAsync(Openui5Resolver.resolveVersion("1.0.0", options), { message: `Could not resolve framework version 1.0.0. ` + - `Note that OpenUI5 framework libraries can only be consumed by the UI5 Tooling ` + + `Note that OpenUI5 framework libraries can only be consumed by the UI5 CLI ` + `starting with OpenUI5 v1.52.5` }); await t.throwsAsync(Openui5Resolver.resolveVersion("^999", options), { diff --git a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js index 26cb6dfbb56..ed9a4de6cd9 100644 --- a/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js +++ b/packages/project/test/lib/ui5framework/Sapui5MavenSnapshotResolver.js @@ -462,7 +462,7 @@ test.serial("_resolveSnapshotEndpointUrl: From configuration", async (t) => { const endpoint = await resolveSnapshotEndpointUrl(); - t.is(endpoint, "config-url", "Returned URL extracted from UI5 Tooling configuration"); + t.is(endpoint, "config-url", "Returned URL extracted from UI5 CLI configuration"); t.is(configFromFile.callCount, 1, "Configuration has been read once"); t.is(configToFile.callCount, 0, "Configuration has not been written"); t.is(fromMavenStub.callCount, 0, "Maven configuration has not been requested"); diff --git a/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js b/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js index 67e52db7ac2..3b04805ad42 100644 --- a/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js +++ b/packages/project/test/lib/ui5framework/Sapui5Resolver.integration.js @@ -177,7 +177,7 @@ test.serial("resolveVersion", async (t) => { }); await t.throwsAsync(Sapui5Resolver.resolveVersion("1.0.0", options), { message: `Could not resolve framework version 1.0.0. ` + - `Note that SAPUI5 framework libraries can only be consumed by the UI5 Tooling ` + + `Note that SAPUI5 framework libraries can only be consumed by the UI5 CLI ` + `starting with SAPUI5 v1.76.0` }); await t.throwsAsync(Sapui5Resolver.resolveVersion("^999", options), { diff --git a/packages/project/test/lib/validation/ValidationError.js b/packages/project/test/lib/validation/ValidationError.js index 6524ca51cad..dd32292ef8f 100644 --- a/packages/project/test/lib/validation/ValidationError.js +++ b/packages/project/test/lib/validation/ValidationError.js @@ -860,7 +860,7 @@ test.serial("ValidationError.formatMessage: keyword=errorMessage", (t) => { `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "2.0", "1.1", "1.0", "0.1" -For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`, +For details, see: https://ui5.github.io/cli/pages/Configuration/#specification-versions`, params: { errors: [ { @@ -886,7 +886,7 @@ For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specifi `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "2.0", "1.1", "1.0", "0.1" -For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions`; +For details, see: https://ui5.github.io/cli/pages/Configuration/#specification-versions`; const errorMessage = ValidationError.formatMessage(error, {}); t.is(errorMessage, expectedErrorMessage); diff --git a/packages/project/test/lib/validation/schema/__helper__/extension.js b/packages/project/test/lib/validation/schema/__helper__/extension.js index 516bc889c33..c36624a0f8a 100644 --- a/packages/project/test/lib/validation/schema/__helper__/extension.js +++ b/packages/project/test/lib/validation/schema/__helper__/extension.js @@ -105,7 +105,7 @@ export default { }, { dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/__helper__/project.js b/packages/project/test/lib/validation/schema/__helper__/project.js index baddd13c6a9..cbac64534f7 100644 --- a/packages/project/test/lib/validation/schema/__helper__/project.js +++ b/packages/project/test/lib/validation/schema/__helper__/project.js @@ -294,7 +294,7 @@ export default { { dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js index dfad329fede..286f3b0bddd 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/project-shim.js @@ -141,7 +141,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -164,7 +164,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -187,7 +187,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js index 39b5efe6f6c..ceb1e6dc3c5 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/server-middleware.js @@ -61,7 +61,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -86,7 +86,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -111,7 +111,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js index f2a6a101703..e8ad322537e 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/extension/task.js @@ -61,7 +61,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -86,7 +86,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -111,7 +111,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid extension name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js index 818b384a65d..db7a75b6826 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/application.js @@ -1029,7 +1029,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -1050,7 +1050,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -1071,7 +1071,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js index b2bd47a3564..b51e43bcb96 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/library.js @@ -1001,7 +1001,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -1022,7 +1022,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -1043,7 +1043,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js index e49b4769c06..2899c22a040 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/module.js @@ -361,7 +361,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -382,7 +382,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -403,7 +403,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js index eff5bdbf047..19bc8a09467 100644 --- a/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js +++ b/packages/project/test/lib/validation/schema/specVersion/kind/project/theme-library.js @@ -359,7 +359,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -380,7 +380,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", @@ -401,7 +401,7 @@ SpecificationVersion.getVersionsForRange(">=3.0").forEach(function(specVersion) }, [{ dataPath: "/metadata/name", keyword: "errorMessage", - message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Configuration/#name`, + message: `Not a valid project name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Configuration/#name`, params: { errors: [{ dataPath: "/metadata/name", diff --git a/packages/project/test/lib/validation/schema/ui5-workspace.js b/packages/project/test/lib/validation/schema/ui5-workspace.js index 1467d639ed8..3bc5877542e 100644 --- a/packages/project/test/lib/validation/schema/ui5-workspace.js +++ b/packages/project/test/lib/validation/schema/ui5-workspace.js @@ -62,7 +62,7 @@ test("Empty config", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "workspace/1.0" -For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, +For details, see: https://ui5.github.io/cli/stable/pages/Workspace/#workspace-specification-versions`, params: { errors: [ { @@ -163,7 +163,7 @@ test("Invalid metadata.name: Illegal characters", async (t) => { { dataPath: "/metadata/name", keyword: "errorMessage", - message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Workspace/#name", params: { errors: [ { @@ -201,7 +201,7 @@ test("Invalid metadata.name: Too short", async (t) => { { dataPath: "/metadata/name", keyword: "errorMessage", - message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Workspace/#name", params: { errors: [ { @@ -240,7 +240,7 @@ test("Invalid metadata.name: Too long", async (t) => { { dataPath: "/metadata/name", keyword: "errorMessage", - message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Workspace/#name", params: { errors: [ { @@ -279,7 +279,7 @@ test("Invalid fields", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "workspace/1.0" -For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, +For details, see: https://ui5.github.io/cli/stable/pages/Workspace/#workspace-specification-versions`, params: { errors: [ { @@ -297,7 +297,7 @@ For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#work { dataPath: "/metadata/name", keyword: "errorMessage", - message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Workspace/#name", params: { errors: [ { @@ -348,7 +348,7 @@ test("Invalid types", async (t) => { message: `Unsupported "specVersion" Your UI5 CLI installation might be outdated. Supported specification versions: "workspace/1.0" -For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#workspace-specification-versions`, +For details, see: https://ui5.github.io/cli/stable/pages/Workspace/#workspace-specification-versions`, params: { errors: [ { @@ -366,7 +366,7 @@ For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#work { dataPath: "/metadata/name", keyword: "errorMessage", - message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://sap.github.io/ui5-tooling/stable/pages/Workspace/#name", + message: "Not a valid workspace name. It must consist of lowercase alphanumeric characters, dash, underscore, and period only. Additionally, it may contain an npm-style package scope. For details, see: https://ui5.github.io/cli/stable/pages/Workspace/#name", params: { errors: [ { diff --git a/packages/project/test/lib/validation/schema/ui5.js b/packages/project/test/lib/validation/schema/ui5.js index 653e6e56177..7cdf1df7423 100644 --- a/packages/project/test/lib/validation/schema/ui5.js +++ b/packages/project/test/lib/validation/schema/ui5.js @@ -104,7 +104,7 @@ test("Invalid specVersion", async (t) => { "Your UI5 CLI installation might be outdated.\n" + "Supported specification versions: \"4.0\", \"3.2\", \"3.1\", \"3.0\", \"2.6\", " + "\"2.5\", \"2.4\", \"2.3\", \"2.2\", \"2.1\", \"2.0\", \"1.1\", \"1.0\", \"0.1\"\n" + -"For details, see: https://sap.github.io/ui5-tooling/pages/Configuration/#specification-versions", +"For details, see: https://ui5.github.io/cli/pages/Configuration/#specification-versions", params: { errors: [ { From e73c9e1aee9bbf20ceb94b7b972159017224e084 Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 11 Sep 2025 14:08:08 +0000 Subject: [PATCH 1260/1272] [ui5-project][INTERNAL] Bump @ui5/builder from ^4.0.10 to ^4.0.11 Changelog of this version: https://github.com/SAP/ui5-builder/blob/v^4.0.11/CHANGELOG.md --- packages/project/package-lock.json | 100 ++++++++++++++--------------- packages/project/package.json | 10 +-- 2 files changed, 55 insertions(+), 55 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index e1fcd865594..2e82206ce80 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -10,11 +10,11 @@ "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^9.0.0", - "@ui5/fs": "^4.0.1", - "@ui5/logger": "^4.0.1", + "@ui5/fs": "^4.0.2", + "@ui5/logger": "^4.0.2", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.6.0", + "chalk": "^5.6.2", "escape-string-regexp": "^5.0.0", "globby": "^14.1.0", "graceful-fs": "^4.2.11", @@ -44,7 +44,7 @@ "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", "esmock": "^2.7.2", - "globals": "^16.3.0", + "globals": "^16.4.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", @@ -62,7 +62,7 @@ "npm": ">= 8" }, "peerDependencies": { - "@ui5/builder": "^4.0.10" + "@ui5/builder": "^4.0.11" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -532,9 +532,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.8.0.tgz", - "integrity": "sha512-MJQFqrZgcW0UNYLGOuQpey/oTN59vyWwplvCGZztn1cKz9agZPPYpJB7h2OMmuu7VLqkvEjN8feFZJmxNF9D+Q==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz", + "integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==", "dev": true, "dependencies": { "eslint-visitor-keys": "^3.4.3" @@ -934,9 +934,9 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.30", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz", - "integrity": "sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==", + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -1408,9 +1408,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz", - "integrity": "sha512-LdtAWMiFmbRLNP7JNeY0SqEtJvGMYSzfiWBSmx+VSZ1CH+1zyl8Mmw1TT39OrtsRvIYShjJWzTDMPWZJCpwBlw==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.43.0.tgz", + "integrity": "sha512-vQ2FZaxJpydjSZJKiSW/LJsabFFvV7KgLC5DiLhkBcykhQj8iK9BOaDmQt74nnKdLvceM5xmhaTF+pLekrxEkw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1421,17 +1421,17 @@ } }, "node_modules/@ui5/fs": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-4.0.1.tgz", - "integrity": "sha512-vVphxHk0yywJ0eseBNQ2rd1JdUZSUUZ0CAjZ3ghttqD8hx8elJjc7UllpOduysDcdaH3+Km2oLw9yumz14+lgg==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@ui5/fs/-/fs-4.0.2.tgz", + "integrity": "sha512-0R7eb9xEMswvkN2wIiyYJtQY83evQJ7LQhTnRf5Ms0o2R29twGLP4XewqH+IoGWyT3T4SuDNTWmUU2UaTRY4zg==", "dependencies": { "@ui5/logger": "^4.0.1", "clone": "^2.1.2", "escape-string-regexp": "^5.0.0", - "globby": "^14.0.2", + "globby": "^14.1.0", "graceful-fs": "^4.2.11", "micromatch": "^4.0.8", - "minimatch": "^10.0.1", + "minimatch": "^10.0.3", "pretty-hrtime": "^1.0.3", "random-int": "^3.0.0" }, @@ -1455,11 +1455,11 @@ } }, "node_modules/@ui5/logger": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-4.0.1.tgz", - "integrity": "sha512-M6ftnWiUXq3SVLLQ5XTBoJNdxzDvu71FoGh4iIR2kpaDCgpQ5DbHuBRhKAlrUB6EmIFzOxKepgYN95z09xbCbA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@ui5/logger/-/logger-4.0.2.tgz", + "integrity": "sha512-uscDCQyHFeenh4r2RbYuffTMn6IQdcNC1tXrQ4BF+apAFjmDGP11IHdAwVCKwxgyPrIC17HT2gub3ZugGM8kpQ==", "dependencies": { - "chalk": "^5.3.0", + "chalk": "^5.6.0", "cli-progress": "^3.12.0", "figures": "^6.1.0" }, @@ -1666,9 +1666,9 @@ } }, "node_modules/ansi-regex": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.0.tgz", - "integrity": "sha512-TKY5pyBkHyADOPYlRT9Lx6F544mPl0vS5Ew7BJ45hA08Q+t3GjbueLliBWN3sMICk6+y7HdyxSzC4bWS8baBdg==", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", "engines": { "node": ">=12" }, @@ -1677,9 +1677,9 @@ } }, "node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", "engines": { "node": ">=12" }, @@ -2208,9 +2208,9 @@ } }, "node_modules/chalk": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.0.tgz", - "integrity": "sha512-46QrSQFyVSEyYAgQ22hQ+zDa60YHA4fBstHmtSApj1Y5vKtG27fWowW03jCk5KcbXEWPZUIR894aARCA/G1kfQ==", + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz", + "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -3226,9 +3226,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.214", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.214.tgz", - "integrity": "sha512-TpvUNdha+X3ybfU78NoQatKvQEm1oq3lf2QbnmCEdw+Bd9RuIAY+hJTvq1avzHM0f7EJfnH3vbCnbzKzisc/9Q==", + "version": "1.5.217", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.217.tgz", + "integrity": "sha512-Pludfu5iBxp9XzNl0qq2G87hdD17ZV7h5T4n6rQXDi3nCyloBV3jreE9+8GC6g4X/5yxqVgXEURpcLtM0WS4jA==", "dev": true }, "node_modules/emittery": { @@ -4158,9 +4158,9 @@ } }, "node_modules/get-east-asian-width": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.3.1.tgz", - "integrity": "sha512-R1QfovbPsKmosqTnPoRFiJ7CF9MLRgb53ChvMZm+r4p76/+8yKDy17qLL2PKInORy2RkZZekuK0efYgmzTkXyQ==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.4.0.tgz", + "integrity": "sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==", "dev": true, "engines": { "node": ">=18" @@ -4275,9 +4275,9 @@ } }, "node_modules/globals": { - "version": "16.3.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-16.3.0.tgz", - "integrity": "sha512-bqWEnJ1Nt3neqx2q5SFfGS8r/ahumIakg3HcwtNlrVlwXIeNumWn/c7Pn/wKzGhf6SaW6H6uWXLqC30STCMchQ==", + "version": "16.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.4.0.tgz", + "integrity": "sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==", "dev": true, "engines": { "node": ">=18" @@ -5280,9 +5280,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.18", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.18.tgz", - "integrity": "sha512-yi8swmWbO17qHhwIBNeeZxTceJMeBvWJaId6dyvTSOwTipqeHhMhOrz6513r1sOKnpvQ7zkhlG8tPrpilwTxHQ==", + "version": "0.30.19", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.19.tgz", + "integrity": "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5" @@ -7257,9 +7257,9 @@ } }, "node_modules/run-applescript": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz", - "integrity": "sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.1.0.tgz", + "integrity": "sha512-DPe5pVFaAsinSaV6QjQ6gdiedWDcRCbUuiQfQa2wmWV7+xC9bGulGI8+TdRmoFkAPaBXk8CrAbnlY2ISniJ47Q==", "dev": true, "engines": { "node": ">=18" @@ -7821,9 +7821,9 @@ } }, "node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", "dependencies": { "ansi-regex": "^6.0.1" }, diff --git a/packages/project/package.json b/packages/project/package.json index 34dd07d03ec..8e8b7714a8a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -121,11 +121,11 @@ }, "dependencies": { "@npmcli/config": "^9.0.0", - "@ui5/fs": "^4.0.1", - "@ui5/logger": "^4.0.1", + "@ui5/fs": "^4.0.2", + "@ui5/logger": "^4.0.2", "ajv": "^6.12.6", "ajv-errors": "^1.0.1", - "chalk": "^5.6.0", + "chalk": "^5.6.2", "escape-string-regexp": "^5.0.0", "globby": "^14.1.0", "graceful-fs": "^4.2.11", @@ -143,7 +143,7 @@ "yesno": "^0.4.0" }, "peerDependencies": { - "@ui5/builder": "^4.0.10" + "@ui5/builder": "^4.0.11" }, "peerDependenciesMeta": { "@ui5/builder": { @@ -163,7 +163,7 @@ "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", "esmock": "^2.7.2", - "globals": "^16.3.0", + "globals": "^16.4.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", "istanbul-lib-report": "^3.0.1", From cbc5dd50275fdb5fa18554684fcdeb08fdafbf3c Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Thu, 11 Sep 2025 14:20:53 +0000 Subject: [PATCH 1261/1272] [ui5-project]Release 4.0.5 --- packages/project/CHANGELOG.md | 13 ++++++++++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index f5dab21ad35..87030044b1d 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,17 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.4...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.5...HEAD). + + +## [v4.0.5] - 2025-09-11 +### Bug Fixes +- Rename project to UI5 CLI [`425ed2f`](https://github.com/SAP/ui5-project/commit/425ed2fdc7686cd6b631d2f01790ff91c970c604) + +### Dependency Updates +- Bump make-fetch-happen from 14.0.3 to 15.0.0 ([#812](https://github.com/SAP/ui5-project/issues/812)) [`442f20b`](https://github.com/SAP/ui5-project/commit/442f20b3c282016ade7b689a780de82c0c793dbd) +- Bump pacote from 19.0.1 to 21.0.0 ([#782](https://github.com/SAP/ui5-project/issues/782)) [`ffd87e5`](https://github.com/SAP/ui5-project/commit/ffd87e5b4aceba9b71231c15b4e5df8077fac1f4) + ## [v4.0.4] - 2024-11-29 @@ -568,6 +578,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v4.0.5]: https://github.com/SAP/ui5-project/compare/v4.0.4...v4.0.5 [v4.0.4]: https://github.com/SAP/ui5-project/compare/v4.0.3...v4.0.4 [v4.0.3]: https://github.com/SAP/ui5-project/compare/v4.0.2...v4.0.3 [v4.0.2]: https://github.com/SAP/ui5-project/compare/v4.0.1...v4.0.2 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 2e82206ce80..d0d2f23280d 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "4.0.4", + "version": "4.0.5", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "4.0.4", + "version": "4.0.5", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^9.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index 8e8b7714a8a..e814d10ecf1 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "4.0.4", + "version": "4.0.5", "description": "UI5 CLI - Project ", "author": { "name": "SAP SE", From cb16c2412176ff5d4be063364d3cfd3201e36229 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Fri, 12 Sep 2025 14:54:54 +0300 Subject: [PATCH 1262/1272] [ui5-project][INTERNAL] Prevent requesting test packages from npm (#822) - Do not request packages that are part of the test fixtures from npm, but redirect them to void endpoint. - Add scoping to the projects, so that they are requested only from `@ui5` npm org that we can control. --- .../@ui5-internal/application.cycle.a/.npmrc | 3 + .../application.cycle.a/package.json | 4 +- .../application.cycle.a/ui5.yaml | 0 .../application.cycle.a/webapp/index.html | 0 .../application.cycle.a/webapp/manifest.json | 0 .../application.cycle.a/webapp/test.js | 0 .../@ui5-internal/application.cycle.b/.npmrc | 3 + .../application.cycle.b/package.json | 6 +- .../application.cycle.b/ui5.yaml | 0 .../application.cycle.b/webapp/index.html | 0 .../application.cycle.b/webapp/manifest.json | 0 .../application.cycle.b/webapp/test.js | 0 .../@ui5-internal/application.cycle.c/.npmrc | 3 + .../application.cycle.c/package.json | 6 +- .../application.cycle.c/ui5.yaml | 0 .../application.cycle.c/webapp/index.html | 0 .../application.cycle.c/webapp/manifest.json | 0 .../application.cycle.c/webapp/test.js | 0 .../@ui5-internal/application.cycle.d/.npmrc | 3 + .../application.cycle.d/package.json | 10 ++-- .../application.cycle.d/ui5.yaml | 0 .../application.cycle.d/webapp/index.html | 0 .../application.cycle.d/webapp/manifest.json | 0 .../application.cycle.d/webapp/test.js | 0 .../@ui5-internal/application.cycle.e/.npmrc | 3 + .../application.cycle.e/package.json | 6 +- .../application.cycle.e/ui5.yaml | 0 .../application.cycle.e/webapp/index.html | 0 .../application.cycle.e/webapp/manifest.json | 0 .../application.cycle.e/webapp/test.js | 0 .../@ui5-internal/application.cycle.f/.npmrc | 3 + .../application.cycle.f/package.json | 6 +- .../application.cycle.f/ui5.yaml | 0 .../application.cycle.f/webapp/index.html | 0 .../application.cycle.f/webapp/manifest.json | 0 .../application.cycle.f/webapp/test.js | 0 .../@ui5-internal/component.cycle.a/.npmrc | 3 + .../component.cycle.a/package.json | 15 +++++ .../src/component/cycle/a/.library | 0 .../src/component/cycle/a/some.js | 0 .../test/component/cycle/a/Test.html | 0 .../component.cycle.a/ui5.yaml | 0 .../@ui5-internal/library.cycle.a/.npmrc | 3 + .../library.cycle.a/package.json | 4 +- .../library.cycle.a/src/cycle/a/.library | 0 .../library.cycle.a/src/cycle/a/some.js | 0 .../library.cycle.a/test/cycle/a/Test.html | 0 .../library.cycle.a/ui5.yaml | 0 .../@ui5-internal/library.cycle.b/.npmrc | 3 + .../library.cycle.b/package.json | 4 +- .../library.cycle.b/src/cycle/b/.library | 0 .../library.cycle.b/src/cycle/b/some.js | 0 .../library.cycle.b/test/cycle/b/Test.html | 0 .../library.cycle.b/ui5.yaml | 0 .../@ui5-internal/library.cycle.c/.npmrc | 3 + .../@ui5-internal/library.cycle.d/.npmrc | 3 + .../library.cycle.d/package.json | 6 +- .../library.cycle.d/src/cycle/d/.library | 0 .../library.cycle.d/src/cycle/d/some.js | 0 .../library.cycle.d/test/cycle/d/Test.html | 0 .../@ui5-internal}/library.cycle.d/ui5.yaml | 0 .../library.cycle.c/package.json | 4 +- .../library.cycle.c/src/cycle/c/.library | 0 .../library.cycle.c/src/cycle/c/some.js | 0 .../library.cycle.c/test/cycle/c/Test.html | 0 .../library.cycle.c/ui5.yaml | 0 .../@ui5-internal/library.cycle.d/.npmrc | 3 + .../library.cycle.d/package.json | 6 +- .../library.cycle.d/src/cycle/d/.library | 0 .../library.cycle.d/src/cycle/d/some.js | 0 .../library.cycle.d/test/cycle/d/Test.html | 0 .../library.cycle.d/ui5.yaml | 0 .../@ui5-internal/library.cycle.e/.npmrc | 3 + .../library.cycle.e/package.json | 4 +- .../library.cycle.e/src/cycle/e/.library | 0 .../library.cycle.e/src/cycle/e/some.js | 0 .../library.cycle.e/test/cycle/e/Test.html | 0 .../library.cycle.e/ui5.yaml | 0 .../@ui5-internal/module.a/.npmrc | 3 + .../module.a}/package.json | 4 +- .../@ui5-internal/module.b/.npmrc | 3 + .../{ => @ui5-internal}/module.b/package.json | 4 +- .../@ui5-internal/module.c/.npmrc | 3 + .../{ => @ui5-internal}/module.c/package.json | 4 +- .../{ => @ui5-internal}/module.c/ui5.yaml | 0 .../@ui5-internal/module.d/.npmrc | 3 + .../{ => @ui5-internal}/module.d/package.json | 4 +- .../{ => @ui5-internal}/module.d/ui5.yaml | 0 .../@ui5-internal/module.e/.npmrc | 3 + .../{ => @ui5-internal}/module.e/package.json | 4 +- .../{ => @ui5-internal}/module.e/ui5.yaml | 0 .../@ui5-internal/module.f/.npmrc | 3 + .../module.f}/package.json | 4 +- .../{ => @ui5-internal}/module.f/ui5.yaml | 0 .../@ui5-internal/module.g/.npmrc | 1 + .../{ => @ui5-internal}/module.g/package.json | 4 +- .../{ => @ui5-internal}/module.g/ui5.yaml | 0 .../@ui5-internal/module.h/.npmrc | 3 + .../{ => @ui5-internal}/module.h/package.json | 6 +- .../{ => @ui5-internal}/module.h/ui5.yaml | 0 .../@ui5-internal/module.i/.npmrc | 3 + .../{ => @ui5-internal}/module.i/package.json | 4 +- .../{ => @ui5-internal}/module.i/ui5.yaml | 0 .../@ui5-internal/module.j/.npmrc | 3 + .../{ => @ui5-internal}/module.j/package.json | 4 +- .../{ => @ui5-internal}/module.j/ui5.yaml | 0 .../@ui5-internal/module.k/.npmrc | 3 + .../{ => @ui5-internal}/module.k/package.json | 8 +-- .../{ => @ui5-internal}/module.k/ui5.yaml | 0 .../@ui5-internal/module.l/.npmrc | 3 + .../{ => @ui5-internal}/module.l/package.json | 4 +- .../{ => @ui5-internal}/module.l/ui5.yaml | 0 .../@ui5-internal/module.m/.npmrc | 3 + .../{ => @ui5-internal}/module.m/package.json | 4 +- .../{ => @ui5-internal}/module.m/ui5.yaml | 0 .../component.cycle.a/package.json | 15 ----- .../project/test/lib/graph/graphFromObject.js | 56 +++++++++---------- .../NodePackageDependencies.integration.js | 10 ++-- 118 files changed, 186 insertions(+), 110 deletions(-) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.a/package.json (67%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.a/ui5.yaml (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.a/webapp/index.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.a/webapp/manifest.json (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.a/webapp/test.js (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.b/package.json (66%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.b/ui5.yaml (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.b/webapp/index.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.b/webapp/manifest.json (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.b/webapp/test.js (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.c/package.json (78%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.c/ui5.yaml (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.c/webapp/index.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.c/webapp/manifest.json (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.c/webapp/test.js (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.d/package.json (70%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.d/ui5.yaml (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.d/webapp/index.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.d/webapp/manifest.json (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.d/webapp/test.js (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.e/package.json (70%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.e/ui5.yaml (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.e/webapp/index.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.e/webapp/manifest.json (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.e/webapp/test.js (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.f/package.json (67%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.f/ui5.yaml (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.f/webapp/index.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.f/webapp/manifest.json (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/application.cycle.f/webapp/test.js (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/.npmrc create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/package.json rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/component.cycle.a/src/component/cycle/a/.library (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/component.cycle.a/src/component/cycle/a/some.js (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/component.cycle.a/test/component/cycle/a/Test.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/component.cycle.a/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.a/package.json (65%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.a/src/cycle/a/.library (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.a/src/cycle/a/some.js (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.a/test/cycle/a/Test.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.a/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.b/package.json (65%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.b/src/cycle/b/.library (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.b/src/cycle/b/some.js (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.b/test/cycle/b/Test.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.b/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/.npmrc create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{library.cycle.c/node_modules => @ui5-internal/library.cycle.c/node_modules/@ui5-internal}/library.cycle.d/package.json (66%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{library.cycle.c/node_modules => @ui5-internal/library.cycle.c/node_modules/@ui5-internal}/library.cycle.d/src/cycle/d/.library (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{library.cycle.c/node_modules => @ui5-internal/library.cycle.c/node_modules/@ui5-internal}/library.cycle.d/src/cycle/d/some.js (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{library.cycle.c/node_modules => @ui5-internal/library.cycle.c/node_modules/@ui5-internal}/library.cycle.d/test/cycle/d/Test.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{library.cycle.c/node_modules => @ui5-internal/library.cycle.c/node_modules/@ui5-internal}/library.cycle.d/ui5.yaml (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.c/package.json (74%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.c/src/cycle/c/.library (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.c/src/cycle/c/some.js (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.c/test/cycle/c/Test.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.c/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.d/package.json (66%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.d/src/cycle/d/.library (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.d/src/cycle/d/some.js (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.d/test/cycle/d/Test.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.d/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.e/package.json (74%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.e/src/cycle/e/.library (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.e/src/cycle/e/some.js (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.e/test/cycle/e/Test.html (100%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/library.cycle.e/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.a/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{module.f => @ui5-internal/module.a}/package.json (75%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.b/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.b/package.json (74%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.c/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.c/package.json (75%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.c/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.d/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.d/package.json (73%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.d/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.e/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.e/package.json (73%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.e/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.f/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{module.a => @ui5-internal/module.f}/package.json (75%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.f/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.g/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.g/package.json (75%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.g/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.h/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.h/package.json (68%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.h/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.i/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.i/package.json (76%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.i/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.j/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.j/package.json (75%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.j/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.k/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.k/package.json (61%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.k/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.l/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.l/package.json (74%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.l/ui5.yaml (100%) create mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.m/.npmrc rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.m/package.json (73%) rename packages/project/test/fixtures/cyclic-deps/node_modules/{ => @ui5-internal}/module.m/ui5.yaml (100%) delete mode 100644 packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/package.json diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/package.json similarity index 67% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/package.json index 05ce5b9a95f..5077e3ac9f1 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/package.json @@ -1,10 +1,10 @@ { - "name": "application.cycle.a", + "name": "@ui5-internal/application.cycle.a", "version": "1.0.0", "description": "Simple SAPUI5 based application - Test for cyclic UI5 dependencies", "main": "index.html", "dependencies": { - "component.cycle.a": "file:../component.cycle.a" + "@ui5-internal/component.cycle.a": "file:../component.cycle.a" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/webapp/index.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/index.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/webapp/index.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/webapp/manifest.json similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/manifest.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/webapp/manifest.json diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/webapp/test.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.a/webapp/test.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.a/webapp/test.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/package.json similarity index 66% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/package.json index 691d79e5632..68458d55e78 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/package.json @@ -1,11 +1,11 @@ { - "name": "application.cycle.b", + "name": "@ui5-internal/application.cycle.b", "version": "1.0.0", "description": "Simple SAPUI5 based application - Test for cyclic npm (non-UI5) dependencies - Cycle on second level via dev dependency", "main": "index.html", "dependencies": { - "module.d": "file:../module.d", - "module.e": "file:../module.e" + "@ui5-internal/module.d": "file:../module.d", + "@ui5-internal/module.e": "file:../module.e" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/webapp/index.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/index.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/webapp/index.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/webapp/manifest.json similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/manifest.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/webapp/manifest.json diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/webapp/test.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.b/webapp/test.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.b/webapp/test.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/package.json similarity index 78% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/package.json index be7d0f8d266..f7ca7ac8d93 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/package.json @@ -1,13 +1,13 @@ { - "name": "application.cycle.c", + "name": "@ui5-internal/application.cycle.c", "version": "1.0.0", "description": "Simple SAPUI5 based application - Test for cyclic npm (non-UI5) dependencies - Cycle on third level", "_ui5_test_comment": "This scenario can't be tested using file: URLs as npm can't create cyclic symlinks.", "_ui5_test_comment2": "However publishing to and installing from a registry works.", "main": "index.html", "dependencies": { - "module.f": "^1.0.0", - "module.g": "^1.0.0" + "@ui5-internal/module.f": "^1.0.0", + "@ui5-internal/module.g": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/webapp/index.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/index.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/webapp/index.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/webapp/manifest.json similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/manifest.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/webapp/manifest.json diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/webapp/test.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.c/webapp/test.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.c/webapp/test.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/package.json similarity index 70% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/package.json index 73f5fa60145..cf2ff767d66 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/package.json @@ -1,15 +1,15 @@ { - "name": "application.cycle.d", + "name": "@ui5-internal/application.cycle.d", "version": "1.0.0", "description": "Simple SAPUI5 based application - Test for cyclic npm (non-UI5) dependencies - Heavily influenced by npm package 'es6-map'", "_ui5_test_comment": "This scenario can't be tested using file: URLs as npm can't create cyclic symlinks.", "_ui5_test_comment2": "However publishing to and installing from a registry works.", "main": "index.html", "dependencies": { - "module.h": "^1.0.0", - "module.i": "^1.0.0", - "module.j": "^1.0.0", - "module.k": "^1.0.0" + "@ui5-internal/module.h": "^1.0.0", + "@ui5-internal/module.i": "^1.0.0", + "@ui5-internal/module.j": "^1.0.0", + "@ui5-internal/module.k": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/webapp/index.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/index.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/webapp/index.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/webapp/manifest.json similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/manifest.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/webapp/manifest.json diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/webapp/test.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.d/webapp/test.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.d/webapp/test.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/package.json similarity index 70% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/package.json index c7cd88032b1..b2b7bc31eef 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/package.json @@ -1,11 +1,11 @@ { - "name": "application.cycle.e", + "name": "@ui5-internal/application.cycle.e", "version": "1.0.0", "description": "Simple SAPUI5 based application - Test for cyclic npm (non-UI5) dependencies - Indirect cycle via devDependency (pending dev)", "main": "index.html", "dependencies": { - "module.l": "^1.0.0", - "module.m": "^1.0.0" + "@ui5-internal/module.l": "^1.0.0", + "@ui5-internal/module.m": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/webapp/index.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/index.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/webapp/index.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/webapp/manifest.json similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/manifest.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/webapp/manifest.json diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/webapp/test.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.e/webapp/test.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.e/webapp/test.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/package.json similarity index 67% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/package.json index d7ac8e06125..f48e64bb3ed 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/package.json @@ -1,11 +1,11 @@ { - "name": "application.cycle.f", + "name": "@ui5-internal/application.cycle.f", "version": "1.0.0", "description": "Simple SAPUI5 based application - Test for cyclic npm UI5 dependencies - Cycle via projectPreprocessor deduplication", "main": "index.html", "dependencies": { - "library.cycle.c": "^1.0.0", - "library.cycle.d": "^1.0.0" + "@ui5-internal/library.cycle.c": "^1.0.0", + "@ui5-internal/library.cycle.d": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/index.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/webapp/index.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/index.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/webapp/index.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/manifest.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/webapp/manifest.json similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/manifest.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/webapp/manifest.json diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/test.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/webapp/test.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/application.cycle.f/webapp/test.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/application.cycle.f/webapp/test.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/package.json new file mode 100644 index 00000000000..1a930a22dac --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/package.json @@ -0,0 +1,15 @@ +{ + "name": "@ui5-internal/component.cycle.a", + "version": "1.0.0", + "description": "Simple SAPUI5 based library - Test for cyclic dependencies", + "dependencies": { + "@ui5-internal/library.cycle.a": "file:../library.cycle.a", + "@ui5-internal/library.cycle.b": "file:../library.cycle.b" + }, + "devDependencies": { + "@ui5-internal/application.cycle.a": "file:../application.cycle.a" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + } +} diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/src/component/cycle/a/.library similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/.library rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/src/component/cycle/a/.library diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/src/component/cycle/a/some.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/src/component/cycle/a/some.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/src/component/cycle/a/some.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/test/component/cycle/a/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/test/component/cycle/a/Test.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/test/component/cycle/a/Test.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/test/component/cycle/a/Test.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/component.cycle.a/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/package.json similarity index 65% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/package.json index 075a4ecc697..2b6d08c4f2b 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/package.json @@ -1,9 +1,9 @@ { - "name": "library.cycle.a", + "name": "@ui5-internal/library.cycle.a", "version": "1.0.0", "description": "Simple SAPUI5 based library - Test for cyclic dependencies", "devDependencies": { - "component.cycle.a": "file:../component.cycle.a" + "@ui5-internal/component.cycle.a": "file:../component.cycle.a" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/src/cycle/a/.library similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/.library rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/src/cycle/a/.library diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/src/cycle/a/some.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/src/cycle/a/some.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/src/cycle/a/some.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/test/cycle/a/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/test/cycle/a/Test.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/test/cycle/a/Test.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/test/cycle/a/Test.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.a/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.a/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/package.json similarity index 65% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/package.json index 5c96c965895..303a3ad4cbc 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/package.json @@ -1,9 +1,9 @@ { - "name": "library.cycle.b", + "name": "@ui5-internal/library.cycle.b", "version": "1.0.0", "description": "Simple SAPUI5 based library - Test for cyclic dependencies", "devDependencies": { - "component.cycle.a": "file:../component.cycle.a" + "@ui5-internal/component.cycle.a": "file:../component.cycle.a" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/src/cycle/b/.library similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/.library rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/src/cycle/b/.library diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/src/cycle/b/some.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/src/cycle/b/some.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/src/cycle/b/some.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/test/cycle/b/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/test/cycle/b/Test.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/test/cycle/b/Test.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/test/cycle/b/Test.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.b/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.b/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/package.json similarity index 66% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/package.json index a122713c406..32a39279058 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/package.json @@ -1,10 +1,10 @@ { - "name": "library.cycle.d", + "name": "@ui5-internal/library.cycle.d", "version": "0.9.0", "description": "Simple SAPUI5 based library - Test for cyclic npm UI5 dependencies - Cycle via projectPreprocessor deduplication", "dependencies": { - "library.cycle.c": "^1.0.0", - "library.cycle.e": "^1.0.0" + "@ui5-internal/library.cycle.c": "^1.0.0", + "@ui5-internal/library.cycle.e": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/src/cycle/d/.library similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/.library rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/src/cycle/d/.library diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/src/cycle/d/some.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/src/cycle/d/some.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/src/cycle/d/some.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/test/cycle/d/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/test/cycle/d/Test.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/test/cycle/d/Test.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/test/cycle/d/Test.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/node_modules/library.cycle.d/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/node_modules/@ui5-internal/library.cycle.d/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/package.json similarity index 74% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/package.json index 26fcdc68031..491f90eaf79 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/package.json @@ -1,9 +1,9 @@ { - "name": "library.cycle.c", + "name": "@ui5-internal/library.cycle.c", "version": "1.0.0", "description": "Simple SAPUI5 based library - Test for cyclic npm UI5 dependencies - Cycle via projectPreprocessor deduplication", "dependencies": { - "library.cycle.d": "^1.0.0" + "@ui5-internal/library.cycle.d": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/src/cycle/c/.library similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/.library rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/src/cycle/c/.library diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/src/cycle/c/some.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/src/cycle/c/some.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/src/cycle/c/some.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/test/cycle/c/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/test/cycle/c/Test.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/test/cycle/c/Test.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/test/cycle/c/Test.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.c/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.c/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/package.json similarity index 66% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/package.json index 8ed04a0846d..b0b7a230c40 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/package.json @@ -1,10 +1,10 @@ { - "name": "library.cycle.d", + "name": "@ui5-internal/library.cycle.d", "version": "1.0.0", "description": "Simple SAPUI5 based library - Test for cyclic npm UI5 dependencies - Cycle via projectPreprocessor deduplication", "dependencies": { - "library.cycle.c": "^1.0.0", - "library.cycle.e": "^1.0.0" + "@ui5-internal/library.cycle.c": "^1.0.0", + "@ui5-internal/library.cycle.e": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/src/cycle/d/.library similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/.library rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/src/cycle/d/.library diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/src/cycle/d/some.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/src/cycle/d/some.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/src/cycle/d/some.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/test/cycle/d/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/test/cycle/d/Test.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/test/cycle/d/Test.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/test/cycle/d/Test.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.d/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.d/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/package.json similarity index 74% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/package.json index 78d17046540..9d5562b40ed 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/package.json @@ -1,9 +1,9 @@ { - "name": "library.cycle.e", + "name": "@ui5-internal/library.cycle.e", "version": "1.0.0", "description": "Simple SAPUI5 based library - Test for cyclic npm UI5 dependencies - Cycle via projectPreprocessor deduplication", "dependencies": { - "library.cycle.c": "^1.0.0" + "@ui5-internal/library.cycle.c": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/.library b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/src/cycle/e/.library similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/.library rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/src/cycle/e/.library diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/some.js b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/src/cycle/e/some.js similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/src/cycle/e/some.js rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/src/cycle/e/some.js diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/test/cycle/e/Test.html b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/test/cycle/e/Test.html similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/test/cycle/e/Test.html rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/test/cycle/e/Test.html diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/library.cycle.e/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/library.cycle.e/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.a/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.a/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.a/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.f/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.a/package.json similarity index 75% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.f/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.a/package.json index 29ff93f8b41..5b7d5e167ac 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.f/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.a/package.json @@ -1,9 +1,9 @@ { - "name": "module.f", + "name": "@ui5-internal/module.a", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - cycle via module.c", "dependencies": { - "module.a": "^1.0.0" + "@ui5-internal/module.b": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.b/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.b/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.b/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.b/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.b/package.json similarity index 74% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.b/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.b/package.json index d81d5b4d068..ab0bc9b7d03 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.b/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.b/package.json @@ -1,9 +1,9 @@ { - "name": "module.b", + "name": "@ui5-internal/module.b", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies", "dependencies": { - "module.c": "^1.0.0" + "@ui5-internal/module.c": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.c/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.c/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.c/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.c/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.c/package.json similarity index 75% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.c/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.c/package.json index d186194e607..630afc451bc 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.c/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.c/package.json @@ -1,9 +1,9 @@ { - "name": "module.c", + "name": "@ui5-internal/module.c", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies- cycle via module.a", "dependencies": { - "module.a": "^1.0.0" + "@ui5-internal/module.a": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.c/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.c/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.c/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.c/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.d/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.d/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.d/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.d/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.d/package.json similarity index 73% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.d/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.d/package.json index f591d59bf92..35546680df3 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.d/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.d/package.json @@ -1,9 +1,9 @@ { - "name": "module.d", + "name": "@ui5-internal/module.d", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - cycle with module.e", "dependencies": { - "module.e": "file:../module.e" + "@ui5-internal/module.e": "file:../module.e" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.d/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.d/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.d/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.d/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.e/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.e/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.e/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.e/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.e/package.json similarity index 73% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.e/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.e/package.json index f72159ade34..72763a7dcad 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.e/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.e/package.json @@ -1,9 +1,9 @@ { - "name": "module.e", + "name": "@ui5-internal/module.e", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - cycle with module.d", "devDependencies": { - "module.d": "file:../module.d" + "@ui5-internal/module.d": "file:../module.d" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.e/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.e/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.e/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.e/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.f/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.f/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.f/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.a/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.f/package.json similarity index 75% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.a/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.f/package.json index 8c1b6acefc2..dc4677fa6b1 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.a/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.f/package.json @@ -1,9 +1,9 @@ { - "name": "module.a", + "name": "@ui5-internal/module.f", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - cycle via module.c", "dependencies": { - "module.b": "^1.0.0" + "@ui5-internal/module.a": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.f/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.f/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.f/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.f/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.g/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.g/.npmrc new file mode 100644 index 00000000000..32165d31db9 --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.g/.npmrc @@ -0,0 +1 @@ +registry=http://127.0.0.1:99999/ \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.g/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.g/package.json similarity index 75% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.g/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.g/package.json index 92ba49c9454..71d0fd3468e 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.g/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.g/package.json @@ -1,9 +1,9 @@ { - "name": "module.g", + "name": "@ui5-internal/module.g", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - cycle via module.c", "dependencies": { - "module.a": "^1.0.0" + "@ui5-internal/module.a": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.g/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.g/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.g/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.g/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.h/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.h/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.h/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.h/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.h/package.json similarity index 68% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.h/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.h/package.json index b6dcdd5bf53..82ab89eae2e 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.h/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.h/package.json @@ -1,10 +1,10 @@ { - "name": "module.h", + "name": "@ui5-internal/module.h", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - Like npm package 'es6-symbol'", "dependencies": { - "module.i": "^1.0.0", - "module.j": "^1.0.0" + "@ui5-internal/module.i": "^1.0.0", + "@ui5-internal/module.j": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.h/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.h/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.h/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.h/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.i/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.i/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.i/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.i/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.i/package.json similarity index 76% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.i/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.i/package.json index 32314cef4ab..62588d1f5f9 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.i/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.i/package.json @@ -1,9 +1,9 @@ { - "name": "module.i", + "name": "@ui5-internal/module.i", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - Like npm package 'es5-ext'", "dependencies": { - "module.k": "^1.0.0" + "@ui5-internal/module.k": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.i/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.i/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.i/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.i/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.j/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.j/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.j/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.j/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.j/package.json similarity index 75% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.j/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.j/package.json index cc198c5133d..cbf6388cb19 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.j/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.j/package.json @@ -1,9 +1,9 @@ { - "name": "module.j", + "name": "@ui5-internal/module.j", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - Like npm package 'd'", "dependencies": { - "module.i": "^1.0.0" + "@ui5-internal/module.i": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.j/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.j/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.j/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.j/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.k/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.k/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.k/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.k/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.k/package.json similarity index 61% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.k/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.k/package.json index c9c1702cd33..e930465f54c 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.k/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.k/package.json @@ -1,11 +1,11 @@ { - "name": "module.k", + "name": "@ui5-internal/module.k", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies - Like npm package 'es6-iterator'", "dependencies": { - "module.h": "^1.0.0", - "module.i": "^1.0.0", - "module.j": "^1.0.0" + "@ui5-internal/module.h": "^1.0.0", + "@ui5-internal/module.i": "^1.0.0", + "@ui5-internal/module.j": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.k/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.k/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.k/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.k/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.l/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.l/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.l/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.l/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.l/package.json similarity index 74% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.l/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.l/package.json index 333ca8a2c38..29c6723878c 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.l/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.l/package.json @@ -1,9 +1,9 @@ { - "name": "module.l", + "name": "@ui5-internal/module.l", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies", "devDependencies": { - "module.m": "^1.0.0" + "@ui5-internal/module.m": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.l/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.l/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.l/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.l/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.m/.npmrc b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.m/.npmrc new file mode 100644 index 00000000000..79a2e805cae --- /dev/null +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.m/.npmrc @@ -0,0 +1,3 @@ +registry=http://127.0.0.1:99999/ +ignore-scripts=true +offline=true \ No newline at end of file diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.m/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.m/package.json similarity index 73% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.m/package.json rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.m/package.json index 62ae38050ab..017b5e13cf0 100644 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/module.m/package.json +++ b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.m/package.json @@ -1,9 +1,9 @@ { - "name": "module.m", + "name": "@ui5-internal/module.m", "version": "1.0.0", "description": "Simple npm module - Test for cyclic npm (non-UI5) dependencies", "dependencies": { - "module.l": "^1.0.0" + "@ui5-internal/module.l": "^1.0.0" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/module.m/ui5.yaml b/packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.m/ui5.yaml similarity index 100% rename from packages/project/test/fixtures/cyclic-deps/node_modules/module.m/ui5.yaml rename to packages/project/test/fixtures/cyclic-deps/node_modules/@ui5-internal/module.m/ui5.yaml diff --git a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/package.json b/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/package.json deleted file mode 100644 index 5aa7c632aa8..00000000000 --- a/packages/project/test/fixtures/cyclic-deps/node_modules/component.cycle.a/package.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "name": "component.cycle.a", - "version": "1.0.0", - "description": "Simple SAPUI5 based library - Test for cyclic dependencies", - "dependencies": { - "library.cycle.a": "file:../library.cycle.a", - "library.cycle.b": "file:../library.cycle.b" - }, - "devDependencies": { - "application.cycle.a": "file:../application.cycle.a" - }, - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - } -} diff --git a/packages/project/test/lib/graph/graphFromObject.js b/packages/project/test/lib/graph/graphFromObject.js index eac20795e19..e331fdb4033 100644 --- a/packages/project/test/lib/graph/graphFromObject.js +++ b/packages/project/test/lib/graph/graphFromObject.js @@ -686,47 +686,47 @@ function getApplicationATree() { const applicationCycleATreeIncDeduped = { - id: "application.cycle.a", + id: "@ui5-internal/application.cycle.a", version: "1.0.0", - path: path.join(cycleDepsBasePath, "application.cycle.a"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "application.cycle.a"), dependencies: [ { - id: "component.cycle.a", + id: "@ui5-internal/component.cycle.a", version: "1.0.0", - path: path.join(cycleDepsBasePath, "component.cycle.a"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "component.cycle.a"), dependencies: [ { - id: "library.cycle.a", + id: "@ui5-internal/library.cycle.a", version: "1.0.0", - path: path.join(cycleDepsBasePath, "library.cycle.a"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "library.cycle.a"), dependencies: [ { - id: "component.cycle.a", + id: "@ui5-internal/component.cycle.a", version: "1.0.0", - path: path.join(cycleDepsBasePath, "component.cycle.a"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "component.cycle.a"), dependencies: [], deduped: true } ] }, { - id: "library.cycle.b", + id: "@ui5-internal/library.cycle.b", version: "1.0.0", - path: path.join(cycleDepsBasePath, "library.cycle.b"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "library.cycle.b"), dependencies: [ { - id: "component.cycle.a", + id: "@ui5-internal/component.cycle.a", version: "1.0.0", - path: path.join(cycleDepsBasePath, "component.cycle.a"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "component.cycle.a"), dependencies: [], deduped: true } ] }, { - id: "application.cycle.a", + id: "@ui5-internal/application.cycle.a", version: "1.0.0", - path: path.join(cycleDepsBasePath, "application.cycle.a"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "application.cycle.a"), dependencies: [], deduped: true } @@ -736,24 +736,24 @@ const applicationCycleATreeIncDeduped = { }; const applicationCycleBTreeIncDeduped = { - id: "application.cycle.b", + id: "@ui5-internal/application.cycle.b", version: "1.0.0", - path: path.join(cycleDepsBasePath, "application.cycle.b"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "application.cycle.b"), dependencies: [ { - id: "module.d", + id: "@ui5-internal/module.d", version: "1.0.0", - path: path.join(cycleDepsBasePath, "module.d"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "module.d"), dependencies: [ { - id: "module.e", + id: "@ui5-internal/module.e", version: "1.0.0", - path: path.join(cycleDepsBasePath, "module.e"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "module.e"), dependencies: [ { - id: "module.d", + id: "@ui5-internal/module.d", version: "1.0.0", - path: path.join(cycleDepsBasePath, "module.d"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "module.d"), dependencies: [], deduped: true } @@ -762,19 +762,19 @@ const applicationCycleBTreeIncDeduped = { ] }, { - id: "module.e", + id: "@ui5-internal/module.e", version: "1.0.0", - path: path.join(cycleDepsBasePath, "module.e"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "module.e"), dependencies: [ { - id: "module.d", + id: "@ui5-internal/module.d", version: "1.0.0", - path: path.join(cycleDepsBasePath, "module.d"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "module.d"), dependencies: [ { - id: "module.e", + id: "@ui5-internal/module.e", version: "1.0.0", - path: path.join(cycleDepsBasePath, "module.e"), + path: path.join(cycleDepsBasePath, "@ui5-internal", "module.e"), dependencies: [], deduped: true } diff --git a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js index 402fb36e59c..104b6c70402 100644 --- a/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js +++ b/packages/project/test/lib/graph/providers/NodePackageDependencies.integration.js @@ -187,7 +187,7 @@ test("AppG: project with npm 'optionalDependencies' should not fail if optional }); test("AppCycleA: cyclic dev deps", async (t) => { - const applicationCycleAPath = path.join(cycleDepsBasePath, "application.cycle.a"); + const applicationCycleAPath = path.join(cycleDepsBasePath, "@ui5-internal/application.cycle.a"); const npmProvider = new NodePackageDependenciesProvider({ cwd: applicationCycleAPath @@ -201,7 +201,7 @@ test("AppCycleA: cyclic dev deps", async (t) => { }); test("AppCycleB: cyclic npm deps - Cycle via devDependency on second level", async (t) => { - const applicationCycleBPath = path.join(cycleDepsBasePath, "application.cycle.b"); + const applicationCycleBPath = path.join(cycleDepsBasePath, "@ui5-internal/application.cycle.b"); const npmProvider = new NodePackageDependenciesProvider({ cwd: applicationCycleBPath }); @@ -213,7 +213,7 @@ test("AppCycleB: cyclic npm deps - Cycle via devDependency on second level", asy }); test("AppCycleC: cyclic npm deps - Cycle on third level (one indirection)", async (t) => { - const applicationCycleCPath = path.join(cycleDepsBasePath, "application.cycle.c"); + const applicationCycleCPath = path.join(cycleDepsBasePath, "@ui5-internal/application.cycle.c"); const npmProvider = new NodePackageDependenciesProvider({ cwd: applicationCycleCPath }); @@ -230,7 +230,7 @@ test("AppCycleC: cyclic npm deps - Cycle on third level (one indirection)", asyn }); test("AppCycleD: cyclic npm deps - Cycles everywhere", async (t) => { - const applicationCycleDPath = path.join(cycleDepsBasePath, "application.cycle.d"); + const applicationCycleDPath = path.join(cycleDepsBasePath, "@ui5-internal/application.cycle.d"); const npmProvider = new NodePackageDependenciesProvider({ cwd: applicationCycleDPath }); @@ -241,7 +241,7 @@ test("AppCycleD: cyclic npm deps - Cycles everywhere", async (t) => { }); test("AppCycleE: cyclic npm deps - Cycle via devDependency", async (t) => { - const applicationCycleEPath = path.join(cycleDepsBasePath, "application.cycle.e"); + const applicationCycleEPath = path.join(cycleDepsBasePath, "@ui5-internal/application.cycle.e"); const npmProvider = new NodePackageDependenciesProvider({ cwd: applicationCycleEPath }); From 750e6f6bca997240bf6b71619c675219077488bd Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Fri, 12 Sep 2025 13:26:04 +0000 Subject: [PATCH 1263/1272] [ui5-project]Release 4.0.6 --- packages/project/CHANGELOG.md | 6 +++++- packages/project/package-lock.json | 4 ++-- packages/project/package.json | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/project/CHANGELOG.md b/packages/project/CHANGELOG.md index 87030044b1d..7207b3adc42 100644 --- a/packages/project/CHANGELOG.md +++ b/packages/project/CHANGELOG.md @@ -2,7 +2,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.5...HEAD). +A list of unreleased changes can be found [here](https://github.com/SAP/ui5-project/compare/v4.0.6...HEAD). + + +## [v4.0.6] - 2025-09-12 ## [v4.0.5] - 2025-09-11 @@ -578,6 +581,7 @@ Renamed parameter "translator" of functions generateDependencyTree and generateP ## v0.0.1 - 2018-06-06 ### Bug Fixes - **npm t8r:** Fix collection fallback with missing package.json [`578466f`](https://github.com/SAP/ui5-project/commit/578466fdedf871091874c93d1a9305859e34e3ed) +[v4.0.6]: https://github.com/SAP/ui5-project/compare/v4.0.5...v4.0.6 [v4.0.5]: https://github.com/SAP/ui5-project/compare/v4.0.4...v4.0.5 [v4.0.4]: https://github.com/SAP/ui5-project/compare/v4.0.3...v4.0.4 [v4.0.3]: https://github.com/SAP/ui5-project/compare/v4.0.2...v4.0.3 diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index d0d2f23280d..cada2504b01 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ui5/project", - "version": "4.0.5", + "version": "4.0.6", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ui5/project", - "version": "4.0.5", + "version": "4.0.6", "license": "Apache-2.0", "dependencies": { "@npmcli/config": "^9.0.0", diff --git a/packages/project/package.json b/packages/project/package.json index e814d10ecf1..e0ce825f10a 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -1,6 +1,6 @@ { "name": "@ui5/project", - "version": "4.0.5", + "version": "4.0.6", "description": "UI5 CLI - Project ", "author": { "name": "SAP SE", From b06f452b0e98e6cc7fcef84f15d6083ce7cd43cd Mon Sep 17 00:00:00 2001 From: Florian Vogt Date: Fri, 12 Sep 2025 13:44:16 +0000 Subject: [PATCH 1264/1272] [ui5-project][INTERNAL] Bump @ui5/fs from 4.0.2 to 4.0.2 Changelog of this version: https://github.com/SAP/ui5-fs/blob/v4.0.2/CHANGELOG.md --- packages/project/package-lock.json | 20 ++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index cada2504b01..c6e580f74f9 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -43,7 +43,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", - "esmock": "^2.7.2", + "esmock": "^2.7.3", "globals": "^16.4.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", @@ -3226,9 +3226,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.217", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.217.tgz", - "integrity": "sha512-Pludfu5iBxp9XzNl0qq2G87hdD17ZV7h5T4n6rQXDi3nCyloBV3jreE9+8GC6g4X/5yxqVgXEURpcLtM0WS4jA==", + "version": "1.5.218", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.218.tgz", + "integrity": "sha512-uwwdN0TUHs8u6iRgN8vKeWZMRll4gBkz+QMqdS7DDe49uiK68/UX92lFb61oiFPrpYZNeZIqa4bA7O6Aiasnzg==", "dev": true }, "node_modules/emittery": { @@ -3700,9 +3700,9 @@ } }, "node_modules/esmock": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.7.2.tgz", - "integrity": "sha512-/ilhkWbW4FXgQpRbS0LZpKG1AFkiFZkmapP/868Lqa4hSKgKVtMilFXlQrIMssLzyvpeDVg2Q9L3VInnqYoTAg==", + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esmock/-/esmock-2.7.3.tgz", + "integrity": "sha512-/M/YZOjgyLaVoY6K83pwCsGE1AJQnj4S4GyXLYgi/Y79KL8EeW6WU7Rmjc89UO7jv6ec8+j34rKeWOfiLeEu0A==", "dev": true, "engines": { "node": ">=14.16.0" @@ -5787,9 +5787,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.20.tgz", - "integrity": "sha512-7gK6zSXEH6neM212JgfYFXe+GmZQM+fia5SsusuBIUgnPheLFBmIPhtFoAQRj8/7wASYQnbDlHPVwY0BefoFgA==", + "version": "2.0.21", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.21.tgz", + "integrity": "sha512-5b0pgg78U3hwXkCM8Z9b2FJdPZlr9Psr9V2gQPESdGHqbntyFJKFW4r5TeWGFzafGY3hzs1JC62VEQMbl1JFkw==", "dev": true }, "node_modules/node-stream-zip": { diff --git a/packages/project/package.json b/packages/project/package.json index e0ce825f10a..29b90d52d07 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -162,7 +162,7 @@ "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", - "esmock": "^2.7.2", + "esmock": "^2.7.3", "globals": "^16.4.0", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-instrument": "^6.0.3", From 769cfe501e219204d7d2b6e31ea9ce5d61f13489 Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 14 Sep 2025 02:20:15 +0000 Subject: [PATCH 1265/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index c6e580f74f9..5c446e90547 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1926,6 +1926,15 @@ } ] }, + "node_modules/baseline-browser-mapping": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.3.tgz", + "integrity": "sha512-mcE+Wr2CAhHNWxXN/DdTI+n4gsPc5QpXpWnyCQWiQYIYZX+ZMJ8juXZgjRa/0/YPJo/NSsgW15/YgmI4nbysYw==", + "dev": true, + "bin": { + "baseline-browser-mapping": "dist/cli.js" + } + }, "node_modules/binary-extensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", @@ -1979,9 +1988,9 @@ } }, "node_modules/browserslist": { - "version": "4.25.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.4.tgz", - "integrity": "sha512-4jYpcjabC606xJ3kw2QwGEZKX0Aw7sgQdZCvIK9dhVSPh76BKo+C+btT1RRofH7B+8iNpEbgGNVWiLki5q93yg==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.26.0.tgz", + "integrity": "sha512-P9go2WrP9FiPwLv3zqRD/Uoxo0RSHjzFCiQz7d4vbmwNqQFo9T9WCeP/Qn5EbcKQY6DBbkxEXNcpJOmncNrb7A==", "dev": true, "funding": [ { @@ -1998,9 +2007,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001737", - "electron-to-chromium": "^1.5.211", - "node-releases": "^2.0.19", + "baseline-browser-mapping": "^2.8.2", + "caniuse-lite": "^1.0.30001741", + "electron-to-chromium": "^1.5.218", + "node-releases": "^2.0.21", "update-browserslist-db": "^1.1.3" }, "bin": { @@ -2859,9 +2869,9 @@ } }, "node_modules/debug": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", - "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", "dependencies": { "ms": "^2.1.3" }, From b3c95a1003382dcd0166d156d5a1850f7f5468e6 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Fri, 19 Sep 2025 16:26:55 +0300 Subject: [PATCH 1266/1272] [ui5-project][INTERNAL] Branch rename to v4 (#827) JIRA: CPOUI5FOUNDATION-975 --- packages/project/.github/workflows/dependabot-auto-merge.yml | 2 +- packages/project/.github/workflows/github-ci.yml | 4 ++-- packages/project/.github/workflows/reuse-compliance.yml | 4 ++-- packages/project/README.md | 2 +- packages/project/azure-pipelines.yml | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/project/.github/workflows/dependabot-auto-merge.yml b/packages/project/.github/workflows/dependabot-auto-merge.yml index 700e76edc2d..43d92c94fd6 100644 --- a/packages/project/.github/workflows/dependabot-auto-merge.yml +++ b/packages/project/.github/workflows/dependabot-auto-merge.yml @@ -2,7 +2,7 @@ name: Dependabot auto-merge on: pull_request: branches: - - main + - v4 permissions: contents: write diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index ee9d2fcefc1..ace9ddfa6aa 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -3,10 +3,10 @@ name: GitHub CI on: push: branches: - - main + - v4 pull_request: branches: - - main + - v4 # No permissions are required for this workflow permissions: {} diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index 191f39cadab..3dbdbb22ff9 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -3,10 +3,10 @@ name: REUSE on: push: branches: - - main + - v4 pull_request: branches: - - main + - v4 # No permissions are required for this workflow permissions: {} diff --git a/packages/project/README.md b/packages/project/README.md index 0e2ebdc21a8..6f37c30b9b0 100644 --- a/packages/project/README.md +++ b/packages/project/README.md @@ -5,7 +5,7 @@ > Part of the [UI5 CLI](https://github.com/UI5/cli) [![REUSE status](https://api.reuse.software/badge/github.com/SAP/ui5-project)](https://api.reuse.software/info/github.com/SAP/ui5-project) -[![Build Status](https://dev.azure.com/sap/opensource/_apis/build/status/SAP.ui5-project?branchName=main)](https://dev.azure.com/sap/opensource/_build/latest?definitionId=35&branchName=main) +[![Build Status](https://dev.azure.com/sap/opensource/_apis/build/status/SAP.ui5-project?branchName=v4)](https://dev.azure.com/sap/opensource/_build/latest?definitionId=35&branchName=v4) [![npm Package Version](https://badge.fury.io/js/%40ui5%2Fproject.svg)](https://www.npmjs.com/package/@ui5/project) [![Coverage Status](https://coveralls.io/repos/github/SAP/ui5-project/badge.svg)](https://coveralls.io/github/SAP/ui5-project) diff --git a/packages/project/azure-pipelines.yml b/packages/project/azure-pipelines.yml index bb5f97c591b..acbe7250177 100644 --- a/packages/project/azure-pipelines.yml +++ b/packages/project/azure-pipelines.yml @@ -4,7 +4,7 @@ # https://docs.microsoft.com/azure/devops/pipelines/languages/javascript trigger: -- main +- v4 variables: CI: true From 0ea1ce66e8b1abe75199f4a583908f4a2dbc7f1b Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Fri, 19 Sep 2025 13:39:00 +0000 Subject: [PATCH 1267/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 56 +++++++++++++++--------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5c446e90547..01abd73b1e0 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -1408,9 +1408,9 @@ "dev": true }, "node_modules/@typescript-eslint/types": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.43.0.tgz", - "integrity": "sha512-vQ2FZaxJpydjSZJKiSW/LJsabFFvV7KgLC5DiLhkBcykhQj8iK9BOaDmQt74nnKdLvceM5xmhaTF+pLekrxEkw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.44.0.tgz", + "integrity": "sha512-ZSl2efn44VsYM0MfDQe68RKzBz75NPgLQXuGypmym6QVOWL5kegTZuZ02xRAT9T+onqvM6T8CdQk0OwYMB6ZvA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1927,9 +1927,9 @@ ] }, "node_modules/baseline-browser-mapping": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.3.tgz", - "integrity": "sha512-mcE+Wr2CAhHNWxXN/DdTI+n4gsPc5QpXpWnyCQWiQYIYZX+ZMJ8juXZgjRa/0/YPJo/NSsgW15/YgmI4nbysYw==", + "version": "2.8.6", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.6.tgz", + "integrity": "sha512-wrH5NNqren/QMtKUEEJf7z86YjfqW/2uw3IL3/xpqZUC95SSVIFXYQeeGjL6FT/X68IROu6RMehZQS5foy2BXw==", "dev": true, "bin": { "baseline-browser-mapping": "dist/cli.js" @@ -1988,9 +1988,9 @@ } }, "node_modules/browserslist": { - "version": "4.26.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.26.0.tgz", - "integrity": "sha512-P9go2WrP9FiPwLv3zqRD/Uoxo0RSHjzFCiQz7d4vbmwNqQFo9T9WCeP/Qn5EbcKQY6DBbkxEXNcpJOmncNrb7A==", + "version": "4.26.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.26.2.tgz", + "integrity": "sha512-ECFzp6uFOSB+dcZ5BK/IBaGWssbSYBHvuMeMt3MMFyhI0Z8SqGgEkBLARgpRH3hutIgPVsALcMwbDrJqPxQ65A==", "dev": true, "funding": [ { @@ -2007,7 +2007,7 @@ } ], "dependencies": { - "baseline-browser-mapping": "^2.8.2", + "baseline-browser-mapping": "^2.8.3", "caniuse-lite": "^1.0.30001741", "electron-to-chromium": "^1.5.218", "node-releases": "^2.0.21", @@ -2174,9 +2174,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001741", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001741.tgz", - "integrity": "sha512-QGUGitqsc8ARjLdgAfxETDhRbJ0REsP6O3I96TAth/mVjh2cYzN2u+3AzPP3aVSm2FehEItaJw1xd+IGBXWeSw==", + "version": "1.0.30001743", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001743.tgz", + "integrity": "sha512-e6Ojr7RV14Un7dz6ASD0aZDmQPT/A+eZU+nuTNfjqmRrmkmQlnTNWH0SKmqagx9PeW87UVqapSurtAXifmtdmw==", "dev": true, "funding": [ { @@ -3165,9 +3165,9 @@ } }, "node_modules/detect-libc": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", - "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.0.tgz", + "integrity": "sha512-vEtk+OcP7VBRtQZ1EJ3bdgzSfBjgnEalLTp5zjJrS+2Z1w2KZly4SBdac/WDU3hhsNAZ9E8SC96ME4Ey8MZ7cg==", "dev": true, "engines": { "node": ">=8" @@ -3236,9 +3236,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.218", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.218.tgz", - "integrity": "sha512-uwwdN0TUHs8u6iRgN8vKeWZMRll4gBkz+QMqdS7DDe49uiK68/UX92lFb61oiFPrpYZNeZIqa4bA7O6Aiasnzg==", + "version": "1.5.222", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.222.tgz", + "integrity": "sha512-gA7psSwSwQRE60CEoLz6JBCQPIxNeuzB2nL8vE03GK/OHxlvykbLyeiumQy1iH5C2f3YbRAZpGCMT12a/9ih9w==", "dev": true }, "node_modules/emittery": { @@ -3305,9 +3305,9 @@ "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" }, "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", + "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==", "dev": true, "dependencies": { "is-arrayish": "^0.2.1" @@ -6804,9 +6804,9 @@ } }, "node_modules/pretty-ms": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.2.0.tgz", - "integrity": "sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.3.0.tgz", + "integrity": "sha512-gjVS5hOP+M3wMm5nmNOucbIrqudzs9v/57bWRHQWLYklXqoXKrVfYW2W9+glfGsqtPgpiz5WwyEEB+ksXIx3gQ==", "dev": true, "dependencies": { "parse-ms": "^4.0.0" @@ -6908,9 +6908,9 @@ ] }, "node_modules/random-int": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/random-int/-/random-int-3.0.0.tgz", - "integrity": "sha512-QvewnOwigesW2WFyTHiQzR6XUUcSQO/BqmfgRz5N5GpGrKQnTf7ebMz8UtuwaET8IfO1n0wLx8/fHsI8E0Jpow==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/random-int/-/random-int-3.1.0.tgz", + "integrity": "sha512-h8CRz8cpvzj0hC/iH/1Gapgcl2TQ6xtnCpyOI5WvWfXf/yrDx2DOU+tD9rX23j36IF11xg1KqB9W11Z18JPMdw==", "engines": { "node": ">=12" }, From b7ebd8a5e9ac63757f9be1aabe597fb8d3d298aa Mon Sep 17 00:00:00 2001 From: Matthias Osswald Date: Sun, 21 Sep 2025 02:20:10 +0000 Subject: [PATCH 1268/1272] [ui5-project]In-range update of npm dependencies --- packages/project/package-lock.json | 16 ++++++++-------- packages/project/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 01abd73b1e0..5b38ac8800a 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -39,7 +39,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.35.0", + "eslint": "^9.36.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", @@ -685,9 +685,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.35.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.35.0.tgz", - "integrity": "sha512-30iXE9whjlILfWobBkNerJo+TXYsgVM5ERQwMcMKCHckHflCmf7wXDAHlARoWnh0s1U72WqlbeyE7iAcCzuCPw==", + "version": "9.36.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.36.0.tgz", + "integrity": "sha512-uhCbYtYynH30iZErszX78U+nR3pJU3RHGQ57NXy5QupD4SBVwDeU8TNBy+MjMngc1UyIW9noKqsRqfjQTBU2dw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3340,9 +3340,9 @@ } }, "node_modules/eslint": { - "version": "9.35.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.35.0.tgz", - "integrity": "sha512-QePbBFMJFjgmlE+cXAlbHZbHpdFVS2E/6vzCy7aKlebddvl1vadiC4JFV5u/wqTkNUwEV8WrQi257jf5f06hrg==", + "version": "9.36.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.36.0.tgz", + "integrity": "sha512-hB4FIzXovouYzwzECDcUkJ4OcfOEkXTv2zRY6B9bkwjx/cprAq0uvm1nl7zvQ0/TsUk0zQiN4uPfJpB9m+rPMQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", @@ -3351,7 +3351,7 @@ "@eslint/config-helpers": "^0.3.1", "@eslint/core": "^0.15.2", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.35.0", + "@eslint/js": "9.36.0", "@eslint/plugin-kit": "^0.3.5", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 29b90d52d07..0fe371b71fa 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -158,7 +158,7 @@ "cross-env": "^7.0.3", "depcheck": "^1.4.7", "docdash": "^2.0.2", - "eslint": "^9.35.0", + "eslint": "^9.36.0", "eslint-config-google": "^0.14.0", "eslint-plugin-ava": "^15.1.0", "eslint-plugin-jsdoc": "^52.0.4", From 4427fb7a6883fa6fa80794a789dac507dcf40eff Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Sep 2025 15:18:08 +0200 Subject: [PATCH 1269/1272] [ui5-project]Bump actions/setup-node from 4.4.0 to 5.0.0 (#820) --- packages/project/.github/workflows/github-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index ace9ddfa6aa..230960732ae 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -20,7 +20,7 @@ jobs: - uses: actions/checkout@v4 - name: Use Node.js LTS 20.11.0 - uses: actions/setup-node@v4.4.0 + uses: actions/setup-node@v5.0.0 with: node-version: 20.11.0 From 63a249356afb7273b4c1fa59fc2b830ce62de676 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Sep 2025 15:18:46 +0200 Subject: [PATCH 1270/1272] [ui5-project]Bump actions/checkout from 4 to 5 (#817) --- packages/project/.github/workflows/github-ci.yml | 2 +- packages/project/.github/workflows/reuse-compliance.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/project/.github/workflows/github-ci.yml b/packages/project/.github/workflows/github-ci.yml index 230960732ae..f649c335d83 100644 --- a/packages/project/.github/workflows/github-ci.yml +++ b/packages/project/.github/workflows/github-ci.yml @@ -17,7 +17,7 @@ jobs: runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Use Node.js LTS 20.11.0 uses: actions/setup-node@v5.0.0 diff --git a/packages/project/.github/workflows/reuse-compliance.yml b/packages/project/.github/workflows/reuse-compliance.yml index 3dbdbb22ff9..ee696a44f1b 100644 --- a/packages/project/.github/workflows/reuse-compliance.yml +++ b/packages/project/.github/workflows/reuse-compliance.yml @@ -16,6 +16,6 @@ jobs: name: Compliance Check runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Execute REUSE Compliance Check uses: fsfe/reuse-action@v5 From 84fa58facfb61679287a8ec3c52282cb19abb44a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Sep 2025 15:33:38 +0200 Subject: [PATCH 1271/1272] [ui5-project][DEPENDENCY] Bump @npmcli/config from 9.0.0 to 10.4.0 (#818) --- packages/project/package-lock.json | 25 +++++++++++++++---------- packages/project/package.json | 2 +- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/packages/project/package-lock.json b/packages/project/package-lock.json index 5b38ac8800a..413fb26d7a6 100644 --- a/packages/project/package-lock.json +++ b/packages/project/package-lock.json @@ -9,7 +9,7 @@ "version": "4.0.6", "license": "Apache-2.0", "dependencies": { - "@npmcli/config": "^9.0.0", + "@npmcli/config": "^10.4.0", "@ui5/fs": "^4.0.2", "@ui5/logger": "^4.0.2", "ajv": "^6.12.6", @@ -1029,21 +1029,22 @@ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/@npmcli/config": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-9.0.0.tgz", - "integrity": "sha512-P5Vi16Y+c8E0prGIzX112ug7XxqfaPFUVW/oXAV+2VsxplKZEnJozqZ0xnK8V8w/SEsBf+TXhUihrEIAU4CA5Q==", + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/@npmcli/config/-/config-10.4.0.tgz", + "integrity": "sha512-0l6f/q/qfB726SWOGIEooh7u6aB1SOgRxGLu7DeJ6Z9Vvq1gG1s3x+Mq+qv9wt0Q0t53mVHIEBokfJZpeaWDyA==", + "license": "ISC", "dependencies": { "@npmcli/map-workspaces": "^4.0.1", "@npmcli/package-json": "^6.0.1", "ci-info": "^4.0.0", "ini": "^5.0.0", - "nopt": "^8.0.0", + "nopt": "^8.1.0", "proc-log": "^5.0.0", "semver": "^7.3.5", - "walk-up-path": "^3.0.1" + "walk-up-path": "^4.0.0" }, "engines": { - "node": "^18.17.0 || >=20.5.0" + "node": "^20.17.0 || >=22.9.0" } }, "node_modules/@npmcli/fs": { @@ -8488,9 +8489,13 @@ } }, "node_modules/walk-up-path": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz", - "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-4.0.0.tgz", + "integrity": "sha512-3hu+tD8YzSLGuFYtPRb48vdhKMi0KQV5sn+uWr8+7dMEq/2G/dtLrdDinkLjqq5TIbIBjYJ4Ax/n3YiaW7QM8A==", + "license": "ISC", + "engines": { + "node": "20 || >=22" + } }, "node_modules/webidl-conversions": { "version": "3.0.1", diff --git a/packages/project/package.json b/packages/project/package.json index 0fe371b71fa..b72d0d254ce 100644 --- a/packages/project/package.json +++ b/packages/project/package.json @@ -120,7 +120,7 @@ "url": "git@github.com:SAP/ui5-project.git" }, "dependencies": { - "@npmcli/config": "^9.0.0", + "@npmcli/config": "^10.4.0", "@ui5/fs": "^4.0.2", "@ui5/logger": "^4.0.2", "ajv": "^6.12.6", From 768bd4fbc9b0af72d57a58444cc5f4ce626344d1 Mon Sep 17 00:00:00 2001 From: d3xter666 Date: Wed, 24 Sep 2025 16:30:10 +0300 Subject: [PATCH 1272/1272] refactor: Disable ESLint packages checks for now --- eslint.common.config.js | 1 + 1 file changed, 1 insertion(+) diff --git a/eslint.common.config.js b/eslint.common.config.js index 7484e443eb8..6be4e9ee442 100644 --- a/eslint.common.config.js +++ b/eslint.common.config.js @@ -12,6 +12,7 @@ export default [{ "test/fixtures/", "**/docs/", "**/jsdocs/", + "packages/" ], }, js.configs.recommended, google, ava.configs["flat/recommended"], { name: "Common ESLint config used for all UI5 CLI repos",